Showing posts with label sip. Show all posts
Showing posts with label sip. Show all posts

Friday, February 20, 2015

SIP Servlets proxy performance vs Kamailio


So how do SIP Servlets based proxies compare to each other and how do they compare to Kamailio ?

I had a project recently in which I needed to verify how different (free) SIP Proxies compare to each other performance wise, and was a little bit surprised to find out that there is very little information out there on the Internet. I decided to test out a few..

What I tested was three different SIP Servlets implementations and Kamailio.

My test setup...

The machine on which I run the tests was a Ubuntu 12 running on a Parallels (Mac) virtual machine with 2 i5 2.60HGHz cores and 3GB of RAM.

SIP Proxies:
  • Mobicents SIP Servlets ver. 3.0.564
  • Sailfin ver. 1.5 (9.1.1)
  • Cipango ver. 2.0.0
  • Kamailio ver. 4.2.2
The tests were run with SIPP client against a SIPP server.

The SIP Servlets code I used was very straight forward (taken from Cipango's load test app):
...
   Proxy proxy = req.getProxy();
   proxy.setRecordRoute(true);
   proxy.setSupervised(true);
   proxy.proxyTo(req.getRequestURI());
...

Kamailio configuration was taken from the example that comes with the distribution. The only difference was that I have disabled accounting.

Testing was done with SIPP as UAC and UAS. The scenario was:
INVITE >
100 <
180 <
200 < 
BYE > 
200 <

Results...

Sailfin



Mobicents



Cipango



Kamailio


This is what htop shows with 2500 CPS SIP traffic on Kamailio.


Amongst the SIP Servlets in my setup the worst performance was with Sailfin, the best with Cipango. Mobicents was somewhere in the middle.

And as expected Kamailio outperformed SIP Servlets as a Proxy. I could probably get higher results with Kamailio with assigning more shared memory for the server (it run with 512 MB).


Saturday, April 3, 2010

largest sip service in Poland ..is 4 years old

Gadu-Gadu's VoIP offering just recently had its 4th birthday...

It all started on 14th February 2006 when Gadu-Gadu launched its own Internet telephony service under Gadu naGłos brand. Now it's quite safe to say that Gadu-Gadu has the largest SIP based VoIP implementation in Poland. We started working for GG at the end of 2005 - it took us a few months to develop the service before kicking off in February 2006. Since then the service grew dynamically size and functional wise - receiving calls from pstn in the im client, calls between GG users, free calls to pstn daily, voicemail, integration with mvno network, and more ... :)

In 2007 Gadu-Gadu was the first carrier in Poland to launch ringback tones for pstn calls answered in the im client. Gadu-Gadu was also the first carrier to launch HD voice calling for all calls between Gdau-Gadu im users based in iSAC GIPS codec. In 2009 video calling was also launched.

The current statistics behing the service are quite impressive

- 1,5 milion active users (where active = at least 1 call in 3 months)
- more than half of the active user base also uses video calls
- 3 milion calls monthly
- 20 thousand established calls per hour during peak
- 0,5 mln voicemail boxes

Sunday, October 18, 2009

SIP applications ...in PHP

With basic SIP knowledge and a few lines of code any PHP developer can develop SIP applications. PHP-SIP is a PHP implementation of a SIP UA that allows to implement things like click-to-call, message waiting indications or SIMPLE based instant messages.

On Level 7 Systems' blog they show how to implement click-to-call functionality
triggered from a web page - in a relatively simple PHP script.


$api = new PhpSIP();

$api->setDebug(true);

$api->addHeader('Subject: click2call');
$api->setMethod('INVITE');
$api->setFrom('sip:c2c@'.$api->getSrcIp());
$api->setUri($from);

$res = $api->send();

if ($res == 200)
{
$api->setMethod('REFER');
$api->addHeader('Refer-to: '.$to);
$api->addHeader('Referred-By: sip:c2c@'.$api->getSrcIp());
$api->send();

$api->setMethod('BYE');
$api->send();

$api->listen('NOTIFY');
$api->reply(481,'Call Leg/Transaction Does Not Exist');
}



Check it out the full application here:
Click to Call with PHP-SIP