Load Testing With SIPp

Home » Asterisk Users » Load Testing With SIPp
Asterisk Users 3 Comments

Hello,

I’m running load testing sessions. My System Under Test is an asterisk 13 with 16GB, configured with maxfiles set to 400 000. This system is supposed do produce simple SIP trunking services without transcoding.

The box sending call to my System Under Test is anabled with SIPp. I’m banging on a 700 concurrent calls/50 CAPS limit I would like to improve, if possible.

Tests are done with both signaling and media like this:

SIPp <---> SUT (asterisk 13) <---> Asterisk box echoing media

I checked bandwidth first and got 930 Mb/s on each leg (from SIPp to SUT or SUT to echoing box) using iperf3 TCP testing though my target relies on UDP

My questions are:

1. Have you ever noticed a better scalability using UDP or TCP ?

2. Where do Retransmission I’m observing on SIPp console most probably come from ? Network issues ? My SIPp not beeing correctly tuned ? Lack of resources somewhere ?

3. Recommandations ? Suggestions ?

Best

3 thoughts on - Load Testing With SIPp

  • I do network management for a living.

    In your description, I see nothing to describe the network other than an observed 930Mb/s.

    What is the network configuration;  What NIC(s), switches etc.

    Treating these as effectively “unlimited” is a certain recipe for banging into unexpected limits.

    Different NICs and switchs can and do provide differing levels of performance.

  • All mentioned boxes are VMWare VMs probably configured with default drivers and settings. Unfortunately, I don’t know which network equipements are used when those boxes communicate with each other. So yes, maybe I banged into an unexpected limit because of this ignorance.

    Anyway, from my testing, I was mostly surprised by 2 things:

    1- I consistently hit a 200 calls when I let run an Asterisk instance on the SIPp (calls passing locally from SIPp to a first Asterisk instance before hitting SUT): I thought that communications inside a given VM was
    “unlimited and cheap” and I was apparently wrong, Disabling Asterisk in my first VM allowed me to hit a 500 limit at the price of loosing Asterisk flexibility to log RTCP stats, select exotic codec and so on.

    2- Increasing asterisk.conf’s maxfiles value (from 10000 to 40000, for instance), allowed me to get more than 695 successfull call out of 700 but I could succeed to get, even once, 700 successfull calls, even when I tried with my current 400000 maxfiles limit.

    2018-03-06 23:35 GMT+01:00 Bruce Ferrell :

  • What you’ve banged into is called “over subscription”.  NOTHING is unlimited and “cheap”  There Ain’t No Such Thing As A Free Lunch.

    Virtualization works best when the guest VMs aren’t 100% duty cycle… When one guest is idle, another can use the resources of the host.  When the guest VMs all present a significant load in any area, the host WILL bog down and so will all of the guest systems.

    You might be better of not running this as a virtual app.

    See the above… While you tweaked maxfiles on the guest, the host came came into play.