SIPp is a free, open-source tool for testing Session Initiation Protocol (SIP) communication systems. It was created to simulate thousands of simultaneous incoming and outgoing SIP calls, allowing users to stress test and measure the performance of their SIP infrastructure.
SIPp is a highly flexible tool, and its scripting language supports various SIP message types and parameters, allowing you to test the behavior of your SIP infrastructure in detail. It also supports SIP over Transport Layer Security (TLS) and Secure Real-time Transport Protocol (SRTP) for secure communication.
I have been using SIPp for a while and last week when I was testing a SIP trunk to operator NG911 SBC, I needed to install it on an AWS EC2 instance. Installation is easy, just need to compile and install cmake manually because cmake version on the online repo is old and SIPp doesn’t like that.
So you need to follow these steps:
|
|
Then you can run the ./sipp or link it to /usr/sbin
** You can compile sipp with ssl and sctp too:
|
|
The link that you need to check based on time:
Cmake download page: https://cmake.org/download/ Latest stable SIPp version: https://github.com/SIPp/sipp/releases/tag/v3.6.1
Now, you need to create your scenario. So, I created a ng911option.xml file with this xml:
|
|
And run this scenario with this command:
|
|
Then SIPp starts to send SIP OPTIONS every 30 seconds to the target IP (100.125.250.232) from the EC2 interface (10.16.10.40).
Fortunately, I got the 200(OK) which means the connection and IP/port/protocol are set correctly and we have time enough to start the actual server later :)