SMPP benchmarking

We offer utilities for performing SMPP benchmarks, emgload and emgsink. As the names suggest there is one utility for generating traffic, emgload, and one utility for consuming traffic, emgsink. The "emg" part of the name comes from our Enterprise Messaging Gateway (EMG) product which is a high-performance, carrier-grade, SMS gateway and protocol converter.

In addition to supporting the SMPP protocol, emgload/emgsink utilities also support CIMD2, SMPP, UCP and SMTP. It can be used to test performance of, for example, SMSCs and mail servers. Since the utilities are light-weight they can generate a very high load. On a Linux server with 3.0 GHz Xeon processors it is possible to reach around 25000 messages per second using SMPP.

While being light-weight emgload/emgsink are still multi-threaded and can handle multiple simulatenous connections.

Performing a simple benchmark

We can use emgload and emgsink together to perform a simple benchmark by letting emgload connect directly to emgsink.

In order to get help on command-line options:

emgload --help

Randomizing senders and recipients

In order to have a more realistic distribution of sender and recipient addresses (msisdns) it is possible to randomize part of the sender and recipient addresses.

emgload --protocol smpp --port 10000 --threads 2 \
  --senders 4670:7 --recipients 4670:7

In the above example the sender and recipient addresses will begin with "4670" and then 7 random digits will be added.

SMPP details

emgload currently uses operation bind_transmitter for logging in and operation submit_sm for sending messages. if you have other requirements please contact us at support@infoflexconnect.se for a discussion.

Download

To use, download file below, uncompress with "gzip -d", rename to "emgload" or "emgsink" respectively. Ensure execute permission is enabled, "chmod 111 emgsink", and run.

Download EMGLOAD 2.1

emgload 2.1.45066, Linux (x86, 64-bit), 372 kB

emgsink 2.1.45066, Linux (x86, 64-bit), 342 kB

Linux versions are built on CentOS 5 (64-bit) with glibc 2.5. It runs on CentOS 5/6/7 and compatible distributions.

Download EMGLOAD 2.0

emgload 2.0.34916, Linux (x86, 32-bit), 129 kB
emgload 2.0.34916, Linux (x86, 64-bit), 145 kB
emgload 2.0.34916, Solaris 10 (Sparc), 90 kB

emgsink 2.0.34916, Linux (x86, 32-bit), 120 kB
emgsink 2.0.34916, Linux (x86, 64-bit), 135 kB
emgsink 2.0.34916, Solaris 10 (Sparc), 90 kB

Linux versions are built on RedHat EL 4 (32-bit) with glibc 2.3.4 and RedHat EL 5 (64-bit) with glibc 2.5.

License

It is possible (and free) to use emgload and emgsink without a license. However, max throughput is then limited to 10 mps (messages per second). If you have EMG 5, 6 or 7 installed emgload will pick up the max throughput from the EMG license file.

Contact

For questions about our utilities or other products, or for technical assistance, you can contact us at support@infoflexconnect.se.

For more information about our commercial offerings, please visit http://www.nordicmessaging.se.

© 2007-2017 Infoflex Connect AB, Sweden, info@infoflexconnect.se