node.jssocketssocket.iosmppkannel

Which of the following SMPP architectures produces higher performance?


I am currently implementing an SMS application which requires that I connect to a telecom operator's SMPP server. I have decided to use Kannel running on Ubuntu as my SMPP client. I need to relay the messages from my SMPP client to my application server. When a message is received from the operator's SMPP server, Kannel forwards the said SMS message by performing an HTTP GET request on some configurable URL.

Which of the following attached alternatives would be more efficient?

Alternative A Alternative B


Solution

  • You spend time on three occasions:

    1. prepare data on the machine with SMPP client
    2. send data
    3. decode data on the machine with Node

    The rest depends on your machines' configuration and network connection quality.

    Sending data via WebSockets is generally faster due to a significant reduction in overhead (especially for SMS-messages, which are numerous but small). You will, however, spend extra time on converting Kannel GET to a WebSocket request.

    There is no sane way to theoretically predict which alternative will work better, so you will have to try both in order to decide.