What network protocols are used to connect to the SWIFT network? - swift-mt

I understand that SWIFT messages over the SWIFT network are used to exchange financial information between financial institutions.
What network protocols do banking applications use to connect to and send the messages on the SWIFT network?
Is it SWIFT Message over SOAP&HTTPS over TCP/IP? Is it SWIFT Messages in a file over SFTP over TCP/IP?

The messages themselves are just text, and can flow over various transports.
The SWIFT network itself is IP based (formerly X.25). However, most applications interact via some intermediary, e.g. SIL, that lets you talk MQ, files, or whatever.

Related

can you provide information about websocket

I am doing research on websocket in the world of IoT, but the scope of information I have is quite small. I like the suggestion, if you can share information about the website, if you can, thank you.
I read several papers about IoT, including the application of websocket in the queuing system, there is also a comparative analysis of the performance of Xbee and Websocket.
WebSocket is a communications protocol which facilitates a full-duplex communication channel over a single TCP connection. WebSocket WebSocket communication presents a suitable protocol for the IoT environments. Since it offers a lightweight communication between server and client also bundles of data can be transmitted continually between multiple devices. For this we need to have a server that needs WebSocket library installed and also a WebSocket Client and web browser installed on the client or the device that supports WebSocket.
There are both the advantages and caveats of using WebSockets and IoT.
Please refer the below links for more information:
1) https://www.hcltech.com/blogs/unleashing-power-html5-websocket-internet-things-iot
2) https://medium.com/#krishna.thokala2010/websocket-fever-for-iot-f662498ff1d2
3) https://webofthings.org/tag/websockets/
4) https://readwrite.com/2017/10/31/websockets-iot-two-dont-go-together/
Hope this information helps. Please comment if you need more assistance on specific details.

What software/hardware is needed to receive (and respond to) SMS from multiple machines?

What software/hardware do the SMS centers use to make the following possible:
An SMS is received to a number. The SMS is routed to one of X machines (Mac/PC). An operator responds to the sender.
It seems that a GSM modem is needed? However, I have trouble understanding the architecture.
Is there any plug-and-play solution? Are there any specific frameworks/languages/tools for building such a system? How do you route incoming messages to machines? How do you queue outgoing text messages?
For getting SMS there are at least 2 types of numbers exist: real (simcards) and virtual (VLN).
Real numbers:
-simcards you need to own and to insert into devices called gsm-gateways or gsm-modems, gsm-modem pools etc. These devices are like collection of many mobile phones, they will collect and/or keep/forward all incoming SMS (to some DB, to server/script etc.)
-to make lot of users manage SMS you need some tool. Most common - webserver with appropriate GUI software. Webserver collects all SMS into DB (by downloading them from gsm-gateways via protocols like SMPP or HTTP, or by geting as HTTP Requests from devices). Via some WEB-GUI you can make messages available to your operators for replying.
Virtual numbers (VLN) (provided by most SMS operators):
-no need for hardware. Just contract operator for numbers, then connect via HTTP API or some protocol like SMPP for collecting inbound SMS on these numbers, or get them on your server as HTTP Requests from operator's server.
-WEB-GUI the same as for real numbers
So basically the flow is:
for Real numbers: SMS Origination from phone -> GSM-operator (Vodaf... etc) -> SIM-Card (Vodaf...) in GSM-gateway -> GSM-Gateway API -> Your Web-GUI
for Virtual numbers: SMS Origination from phone -> GSM-operator (Vodaf... etc) -> SMS Service provider (Clicat... etc.) API -> Your Web-GUI
There are some software titles free and paid available for each task.
Any organisation with a large amount of traffic will most likely use a connection to an opertors SMSC (SMS Message Centre in an operators network) via an IP interface and the SMPP protocol.
The SMPP protocol is an open standard designed to bridge the IP web world to the CCITT No.7 messaging world in the telcos, and allow web services be built to send an receive SMS's.
There are also providers who provide aggregation services for SMS - some are independent and some are 'preferred partners' of an operator (e.g. http://developer.att.com/technical-library/app-certification-policies/working-with-aggregators)

Does PubNub use WebSockets and/or XMPP under the hood?

Couldn't find a clear answer to either:
WebSockets: There is support for WebSockets (http://www.pubnub.com/websockets/) and socket.io, however do the other SDKs use web sockets?
XMPP: Does PubNub use it as a communication protocol?
PubNub WebSockets and/or XMPP
Update 2019 🌟 PubNub is planning to add additional protocols. MQTT is supported today mqtt.pubnub.com, additionally we will be adding WebSockets and SEE and connectionless push with UDP.
At PubNub we use many protocols in our Client SDKs starting with an always-on forever lived TCP Socket. Our TTL policy on TCP Sockets is unlimited. We provide the best protocol and we roll in updates under the covers so developers don't have to sweat the details of how messages are delivered.
The PubNub Data Stream Network believes in a protocol independent open mobile web; meaning that we will use the best protocol to get connectivity through any environment. Protocols, like WebSockets, can get tripped up by cell tower switching, double NAT environments, and even some anti-virus software or proxy boarder authorities.
PubNub provides client libraries specifically so we can auto-switch the protocol and remove socket-level complexities making it easy for developers to build apps that can communicate in realtime.
PubNub has deployed a variety of protocols over time, like WebSockets, MQTT, COMET, BOSH, long polling and others. We are exploring currently prototyping future designs using SPDY, HTTP 2.0, and others. The bottom line is that PubNub will work in every network environment, and has very low network bandwidth overhead, as well as low battery drain on mobile devices compared to connection based push implementations.

How to build an bulk sms sender or voip server?

I want to know how can I build my own Sms service provider?
In another say; What is needed to have a system to inject sms messages to the mobile network systems freely or is it possible at all?
with VoIP server we can do voice and video and text messaging through internet; but what about from internet to the land line or mobile network?
How Skype, smartvoip, etc. do this?
Please give me a direction that I could go through.
You need some sort of interface to the Mobile network to make this work. Your choices include:
build a system with a GSM/UMTS card or phone which you control to send SMS messages into the network. This will need a valid SIM and contract (and the small print may say that you are not allowed to use it to provide an IP to SMS service to others). If you google 'Asterix SMS Gateway' you can find several open source examples. You could also look at http://www.kannel.org/overview.shtml, although I am not sure how actively this is being maintained these days.
Build a front end for your SMS service and use an existing back end SMS service in whatever your target market is - i.e. connect directly to your local operators SMSC, most likely using SMPP protocol. This assumes the operator provides this service in your target network/market.
Use an SMS aggregator service such as MBlox or Clickatell

Can one say an architecture using websocket technology is based on client-server model?

Can one say an architecture using websocket technology is based on client-server model?
By definition The client–server model is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients.
However using the websocket technology, two endpoints can both act as providers of a resource or service and also service requesters.
Say for example in a situation where the two endpoints are: a user device with a gps sensor and a computer machine, both connected in the network using websocket. And the computer machine is sending requests to obtain the current position of the user device (here the user device is acting as a resource provider and the computer machine as a requester). Later on the user device uses the websocket connection to request all its positions on the last 5 days to the computer machine (now the user device is acting as the requester and the computer machine as the resource provider).
If both devices can act as resource provider and requester, are they complying with the client-server model definition or not?
No it's not breaking anything. End Points are not devices they are connections between devices.
ie if we were asking each other questions and answering them
There would two connections between two 'devices' giving four endpoints. You to me and me to you. No conflict.
TCP is full duplex capable, and particularly WebSockets are full duplex. As #Tony Hopkinson pointed out, there is no conflict at all. This means, you can write and read at the same time.
WebSockets are push technology, more suited for events; while usual request-response models are pull technology.
You can have both client-server or peer to peer architectures with push approach, but pull is the normal choice for pull architectures.
Peer-to-peer Architecture: A peer-to-peer network is designed
around the notion of equal peer nodes simultaneously functioning as
both "clients" and "servers" to the other nodes on the network. This
model of network arrangement differs from the client–server model
where communication is usually to and from a central server. A typical
example of a file transfer that uses the client-server model is the
File Transfer Protocol (FTP) service in which the client and server
programs are distinct: the clients initiate the transfer, and the
servers satisfy these requests.
You can also provide a mix of peer-to-peer and client-server. For example, you can do requests via WebSocket, and at the same time, the server could send updates on its own initiative. I don't understand what you mean with "breaking the model". WebSocket is just a communication channel. In your app both models can coexists and use the same communication channel.

Resources