well now I'm running this patch on our production system from friday, and
everything seems to be solved. The load on CPU is under 4% and till now no
side effects are been revealed.

Thanks
Domenico Chierico

On Wed, Nov 14, 2012 at 10:09 AM, Domenico Chierico <
[email protected]> wrote:

>
> On Wed, Nov 14, 2012 at 3:26 AM, Joegen Baclor <[email protected]> wrote:
>
>>  Domenico,
>>
>> Can I reproduce this then by using sipp over TCP transport and kill both
>> sipp-uac and sipp-uas by sending SIGKILL  (This will put the sockets in an
>> unknown state)?
>>
>> I don't know .. maybe yes
>
>
>>  Although I agree in the design philosophy you have proposed, to patch
>> sipXtackLib, we need to adhere to an acceptance test and this is the thing
>> I need to provide before the GIT gatekeeper allows this to be committed.
>>
>> that's right .. let me know about
>
>>  Joegen
>>
>>
>> On 11/14/2012 12:47 AM, Domenico Chierico wrote:
>>
>> I'm speaking of self protect .. a server can't be undermined by a poorly
>> written client.
>>
>>  the situation here is a server with 50 users that sends to me allarms
>> every 5 minutes 'cause proxy is at 300% of cpu usage.
>>
>> On Tue, Nov 13, 2012 at 5:40 PM, Tony Graziano <
>> [email protected]> wrote:
>>
>>> does it make sense for us to try to build the proxy up to fix UA's that
>>> might be considered a little more than misguided in the way they handle
>>> transactions? I don't disagree with the concept of trying to fix it, I just
>>> wonder if we head down a path of no-return by having to deal with poorly
>>> written ua's...
>>>
>>>
>>> On Tue, Nov 13, 2012 at 10:48 AM, Domenico Chierico <
>>> [email protected]> wrote:
>>>
>>>> Hi Joegen
>>>>
>>>> In more genereical way I've found that we have a problem with
>>>> uncorrectly closed socket from UA, this can be seen with an unfinished
>>>> sip stack that ends prematurely and with some softphone that crash or
>>>> (like linphone) allow to change the transport protocol on fly.
>>>>
>>>> Using many different softphone make our server behave as I described,
>>>> with this patch seems that things go better.
>>>>
>>>> I'm still testing so this aren't final results, what I really like to
>>>> know is your opinion about the validity of the approach, basically I
>>>> think that check if socket is broken before read or write on it seems
>>>> to be more safe way of manage.
>>>> Do you agree ?
>>>>
>>>>
>>>> On Tue, Nov 13, 2012 at 4:09 PM, Joegen Baclor <[email protected]>
>>>> wrote:
>>>> > 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
>>>> > <[email protected]> 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
>>>> > <[email protected]> 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
>>>> > [email protected]
>>>> > List Archive: http://list.sipfoundry.org/archive/sipx-users/
>>>> >
>>>> >
>>>> _______________________________________________
>>>> sipx-users mailing list
>>>> [email protected]
>>>> List Archive: http://list.sipfoundry.org/archive/sipx-users/
>>>>
>>>
>>>
>>>
>>>   --
>>> ~~~~~~~~~~~~~~~~~~
>>> Tony Graziano, Manager
>>> Telephone: 434.984.8430
>>> sip: [email protected]
>>> Fax: 434.465.6833
>>> ~~~~~~~~~~~~~~~~~~
>>> Linked-In Profile:
>>> http://www.linkedin.com/pub/tony-graziano/14/4a6/7a4
>>> Ask about our Internet Fax services!
>>> ~~~~~~~~~~~~~~~~~~
>>>
>>>  Using or developing for sipXecs from SIPFoundry? Ask me about
>>> sipX-CoLab 2013!
>>>  <http://sipxcolab2013.eventbrite.com/?discount=tony2013>
>>>
>>>
>>> LAN/Telephony/Security and Control Systems Helpdesk:
>>> Telephone: 434.984.8426
>>> sip: [email protected]
>>>
>>>  Helpdesk Customers: http://myhelp.myitdepartment.net
>>> Blog: http://blog.myitdepartment.net
>>>
>>> _______________________________________________
>>> sipx-users mailing list
>>> [email protected]
>>> List Archive: http://list.sipfoundry.org/archive/sipx-users/
>>>
>>
>>
>>
>> _______________________________________________
>> sipx-users mailing [email protected]
>> List Archive: http://list.sipfoundry.org/archive/sipx-users/
>>
>>
>>
>
_______________________________________________
sipx-users mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipx-users/

Reply via email to