[Serdev] TCP problems

Andrei Pelinescu-Onciul andrei at iptel.org
Mon Jan 15 16:41:11 UTC 2007


On Jan 12, 2007 at 15:46, Katty Xiong <cyyxiong at yahoo.com> wrote:
> 
> Hi Andrei,
> 
> When doing stress test (800CPS), I see several errors
> in SER:
> 
> 16(7297) msg_send: ERROR: tcp_send failed
> 16(7297) ERROR: tcp_blocking_connect: SO_ERROR (146)
> Connection refused
> 16(7297) ERROR: tcpconn_connect: tcp_blocking_connect
> failed
> 16(7297) ERROR: tcp_send: connet failed
> 
> The error consistently happens in one process, though
> I have 8 TCP child proesses. Is there a workaround for
> this error? 

No, appart from seeing why the remote side refuses the connection and
why the send failed in the first place (looks like the remote side has
some problems).
This might appear in only one process if the sends happen as a result
 of packets being received on only one connection (e.g. forward). An
 active tcp connection is handled by one ser process (the process can
 change only if the connection is inactive for some time, by default 5
 s).



> 
> Also you asked if I use one tcp connetion last time. I
> assume the connection you mean is between UAC and SER.
> Is that right?

Yes.

> I notice SER and UAS always has one
> connection whether we have one or 2 SIPp instance for
> UAC. Is this tunable?

No, ser would always try to use an already existing connection (as
recommended by the rfc) => only one connection will be used for the same
UAS (there is an exception, if there is no connection open and two
connection request come simultaneously, 2 different connections might be
 temporarily opened, but only one of them will survive).


Andrei


More information about the Serdev mailing list