[Kamailio-Users] tcp_blocking_connect related errors and Kamailio using 100% CPU

Pascal Maugeri pascal.maugeri at gmail.com
Fri May 29 10:41:00 CEST 2009


On Thu, May 28, 2009 at 12:59 PM, Iñaki Baz Castillo <ibc at aliax.net> wrote:

> 2009/5/28 Pascal Maugeri <pascal.maugeri at gmail.com>:
> > FYI, I've changed the configuration to:
> >
> > tcp_children=8
> > tcp_send_timeout=3
> > tcp_connect_timeout=5
> >
> > and it looks we get less often the problem described here (
> tcp_connect/send
> > time out error).
>
> This is a good workaround, but the problem is that it replies on the
> clients behaviour and it shouldn't occur (a server cannot get
> "blocked" due to clients problems). I hope TCP handling will be
> improved in SIP-Router.
>

Indeed the very same problem occured after a while :-(
It looks my new configuration only "delayed" it.

The symptoms are:

-  errors in log file:

May 27 14:20:11 server2-operations /usr/local/sbin/kamailio[26227]:
WARNING:core:send2child: no free tcp receiver, connection passed to the
leastbusy one (1)
May 27 14:20:13 server2-operations /usr/local/sbin/kamailio[26221]:
ERROR:core:tcp_blocking_connect: timeout 10 s elapsed from 10 s
May 27 14:20:13 server2-operations /usr/local/sbin/kamailio[26221]:
ERROR:core:tcpconn_connect: tcp_blocking_connect failed
May 27 14:20:13 server2-operations /usr/local/sbin/kamailio[26221]:
ERROR:core:tcp_send: connect failed
May 27 14:20:13 server2-operations /usr/local/sbin/kamailio[26221]:
ERROR:sl:msg_send: tcp_send failed

- in top <http://unixhelp.ed.ac.uk/CGI/man-cgi?top> kamailio process have
high values in the %CPU column such as 50% or 99% !?

- when all kamailio processes have reached this top values, it is impossible
to connect a new client untill we reset kamailio :-/

I will try the parameter

modparam("registrar", "tcp_persistent_flag", 7)

from the registrar module.

-pascal





>
>
> > I confirm that the problem was triggered by the fact that our client is
> > using TCP only and that the tcp connections were unavailable after some
> > presence test (many NOTIFY messages sent to TCP).
> >
> > I'm curious to know how many children do you use in a typical
> configuration
> > ? 4, 8, more? Of course it depends on the traffic expected but let me
> know
> > that this is parameter you always increase in a production environment.
>
> Theorically you can add so many TCP listeners as you desire (depending
> on your CPU's and memory). But if your environment makes high usage of
> TCP then increase it as much as possible.
>
>
>
> --
> Iñaki Baz Castillo
> <ibc at aliax.net>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kamailio.org/pipermail/users/attachments/20090529/bfffb744/attachment.htm 


More information about the Users mailing list