Hi list,
I use Kamailio 3.2.2 as TLS<=>TCP gateway this is working well, but if I create some traffic by SIPP then Kamailio response time increase with every new call, seems to be that Kamailio process call by call. I made a test with 30caps then after ~200calls Kamailio need ~3s to response an initial INVITE from the PBX. This delay seems to be increased with each call.
test scenario:
SIPP UAC---TCP---PABX---TLS---Kamailio---TCP---SIPP UAS
1.1.1.1 = PABX 2.2.2.2 = SIPP UAS 5.5.5.5 = Kamailio
if ($si == "1.1.1.1") # from PABX { xlog("L_INFO","FROM PABX: $rm, $ci\n"); t_on_reply("1"); force_send_socket(tcp:5.5.5.5:5060); rewritehostport("2.2.2.2:5070"); t_relay_to_tcp("2.2.2.2","5070"); exit; };
I got all the calls in a single TLS connection from the PBAX so increasing of TCP childs doesn't help. I also already tried to adjust some TCP buffers and played with TCP_ASYNC.
With UDP / TCP it's better, is really the TLS/openssl is the bottleneck or the way I relay the request?
The test machine has only 512MB RAM and is a single core cpu (2,8GHZ), but 30caps isn't much?
Any suggestions?
many thanks, Andreas
Hello,
On 3/23/12 2:55 PM, Andreas Heise wrote:
Hi list,
I use Kamailio 3.2.2 as TLS<=>TCP gateway this is working well, but if I create some traffic by SIPP then Kamailio response time increase with every new call, seems to be that Kamailio process call by call. I made a test with 30caps then after ~200calls Kamailio need ~3s to response an initial INVITE from the PBX.
you mean time to send '100 trying' or time till relaying to the network again?
You can add some xlog messages (one first in the route block) to see if reading is fast enough, then benchmark module helps to identify if your config has some time consuming actions.
Once you identify the time consuming component, we can think of solutions. Having single cpu does not help much in making it more parallel in the config via t_suspend()/t_continue(). SSL needs cpu and memory to encrypt/decrypt.
Cheers, Daniel
This delay seems to be increased with each call.
test scenario:
SIPP UAC---TCP---PABX---TLS---Kamailio---TCP---SIPP UAS
1.1.1.1 = PABX 2.2.2.2 = SIPP UAS 5.5.5.5 = Kamailio
if ($si == "1.1.1.1") # from PABX { xlog("L_INFO","FROM PABX: $rm, $ci\n"); t_on_reply("1"); force_send_socket(tcp:5.5.5.5:5060 http://5.5.5.5:5060); rewritehostport("2.2.2.2:5070 http://2.2.2.2:5070"); t_relay_to_tcp("2.2.2.2","5070"); exit; };
I got all the calls in a single TLS connection from the PBAX so increasing of TCP childs doesn't help. I also already tried to adjust some TCP buffers and played with TCP_ASYNC.
With UDP / TCP it's better, is really the TLS/openssl is the bottleneck or the way I relay the request?
The test machine has only 512MB RAM and is a single core cpu (2,8GHZ), but 30caps isn't much?
Any suggestions?
many thanks, Andreas
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hi Daniel,
I already tried benchmark module, but in the meantime I've fixed the problem. It wasn't a good idea to run a performance test with debug=7 (set from a previous test), now with debug=1 Kamailio flying speed is as excepted also on this low performance test machine ;-)
thanks for your time, Andreas
2012/3/24 Daniel-Constantin Mierla miconda@gmail.com
Hello,
On 3/23/12 2:55 PM, Andreas Heise wrote:
Hi list,
I use Kamailio 3.2.2 as TLS<=>TCP gateway this is working well, but if I create some traffic by SIPP then Kamailio response time increase with every new call, seems to be that Kamailio process call by call. I made a test with 30caps then after ~200calls Kamailio need ~3s to response an initial INVITE from the PBX.
you mean time to send '100 trying' or time till relaying to the network again?
You can add some xlog messages (one first in the route block) to see if reading is fast enough, then benchmark module helps to identify if your config has some time consuming actions.
Once you identify the time consuming component, we can think of solutions. Having single cpu does not help much in making it more parallel in the config via t_suspend()/t_continue(). SSL needs cpu and memory to encrypt/decrypt.
Cheers, Daniel
This delay seems to be increased with each call.
test scenario:
SIPP UAC---TCP---PABX---TLS---Kamailio---TCP---SIPP UAS
1.1.1.1 = PABX 2.2.2.2 = SIPP UAS 5.5.5.5 = Kamailio
if ($si == "1.1.1.1") # from PABX { xlog("L_INFO","FROM PABX: $rm, $ci\n"); t_on_reply("1"); force_send_socket(tcp:5.5.5.5:5060); rewritehostport("2.2.2.2:5070"); t_relay_to_tcp("2.2.2.2","5070"); exit; };
I got all the calls in a single TLS connection from the PBAX so increasing of TCP childs doesn't help. I also already tried to adjust some TCP buffers and played with TCP_ASYNC.
With UDP / TCP it's better, is really the TLS/openssl is the bottleneck or the way I relay the request?
The test machine has only 512MB RAM and is a single core cpu (2,8GHZ), but 30caps isn't much?
Any suggestions?
many thanks, Andreas
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-users@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla Kamailio Advanced Training, April 23-26, 2012, Berlin, Germanyhttp://www.asipto.com/index.php/kamailio-advanced-training/