Domenico,

Thanks for the patch. Just clarifying, this patch is for the behavior you specified in the August 3 post? If I'm correct, All I need to do to reproduce is send an INVITE using TCP, on receipt of 183, close the socket.

-j

On 11/13/2012 10:53 PM, Domenico Chierico wrote:
Just to simplify tests here is the patch

On Tue, Nov 13, 2012 at 3:14 PM, Domenico Chierico
<domenico.chier...@sip2ser.it> wrote:
Hi
We have 1 sipxecs 4.4 with 50 users installed on kvm based virtual machine.
We had the proxy that ran over 290% of cpu with an average cpu load
close to 95%. Applying the review #22, the stuff start goes better and
we are now close to 40% of cpu load.

Some of this load come from the known SUBSCRIBE issue, but some others
come from a strange behaviour of the tcp part of the sip stack that we
found:

- linphone client increases the load on sipXproxy, with his own
strange keepalive method ("Jak" msg to the proxy) and switching the
transport from tcp to udp.

- Some other evidences come from my personal tests as I notify on 3 of
August on dev-ml.

Now I'm testing a solution that seems to work, but I wish to know your
opinion. I've change the order of "if" statements into SipClient::run
and I moved the branch about POLLERR and POLLHUP as first.

On Fri, Aug 3, 2012 at 11:43 AM, Domenico Chierico
<domenico.chier...@sip2ser.it> wrote:
I'm just playing around with go(lang), and this days I was starting
with sip stack implementation, just when messages starts float around
I'd realize that I've written a DOS for proxy ..
I just send INVITE to the proxy than reads for 100 and 180 and so I
close the socket, at this point I got this into the logs forever:

"2012-08-03T09:31:03.817653Z":43810:SIP:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"SipClient[SipClientTcp-30]::run
resPoll= 1 revents: fd[0]= 0 fd[1]= 1d"
"2012-08-03T09:31:03.817668Z":43811:KERNEL:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"OsSocket::isReadyToWrite
poll returned 1 in socket: 21 0x7f5eec002070"
"2012-08-03T09:31:03.817683Z":43812:SIP:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"SipClient[SipClientTcp-30]::run
resPoll= 1 revents: fd[0]= 0 fd[1]= 1d"
"2012-08-03T09:31:03.817698Z":43813:KERNEL:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"OsSocket::isReadyToWrite
poll returned 1 in socket: 21 0x7f5eec002070"
"2012-08-03T09:31:03.817714Z":43814:SIP:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"SipClient[SipClientTcp-30]::run
resPoll= 1 revents: fd[0]= 0 fd[1]= 1d"
"2012-08-03T09:31:03.817728Z":43815:KERNEL:DEBUG:testpbx.labsip2ser.net:SipClientTcp-30:22CEF700:SipXProxy:"OsSocket::isReadyToWrite
poll returned 1 in socket: 21 0x7f5eec002070"

I hope this helps..

bye
Domenico Chierico


_______________________________________________
sipx-users mailing list
sipx-us...@list.sipfoundry.org
List Archive: http://list.sipfoundry.org/archive/sipx-users/

_______________________________________________
sipx-dev mailing list
sipx-dev@list.sipfoundry.org
List Archive: http://list.sipfoundry.org/archive/sipx-dev/

Reply via email to