"TCP re-registration fails in keepAliveFunction - PJSIP_EBUSY"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Thomas
Did you find an answer to this? It seems we are struggling with something similiar.

Best regards,
Even Andr?

On 24. nov. 2010, at 13.22, Thomas Martin wrote:

> Hello Everybody,
> 
> when my iOS4 App (iPhone4, iOS4.1, PJSIP 1.8.5) is put in background, everthing (e.g. KeepAlive re-regstrations) works as expected (or hoped, rather :-)) for about two hours. Then, all of the sudden, the re-registration fails. This happens, without the device even being touched... Attached is the relevant part of the debugger log.
> It seems, as if the keepAliveFunction() kicks-in with it's re-registration disturbing the process of UDP socket replacement. - My implementation of "KeepAlive while in backgound" is copied from the pjsua-reference-implementation. 
> 
> It would be very nice, if someone could shed some light on this. - And, how can this situation be avoided?
> 
> Thanks in advance!
> 
> -Thomas
> 
> 05:15:28.957     ioq_select  Attempting to replace UDP socket 16
> 05:15:28.957     ioq_select  UDP has been replaced successfully!
> 05:15:28.957     ioq_select  Attempting to replace UDP socket 17
> 05:15:28.957     ioq_select  UDP has been replaced successfully!
> 05:15:28.957     ioq_select  Attempting to replace UDP socket 8
> 05:15:28.963     ioq_select  UDP has been replaced successfully!
> 05:15:37.158   tcpc0x868014  TCP client transport created
> 05:15:37.161   tcpc0x868014  TCP transport 192.168.1.102:50312 is connecting to 87.230.73.56:5060...
> 05:15:37.162   pjsua_core.c  TX 599 bytes Request msg REGISTER/cseq=15699 (tdta0x84ac00) to tcp 87.230.73.56:5060:
> REGISTER sip:sip.finotel.com;transport=tcp SIP/2.0
> Via: SIP/2.0/TCP 192.168.1.102:50312;rport;branch=z9hG4bKPjlvyPHfXBGzgkdHr.XJ.gR9b-s9s8vStO
> Route: <sip:sip.finotel.com;transport=tcp;lr>
> Max-Forwards: 70
> From: <sip:1234567890@xxxxxxxxxxxxxxx>;tag=VSVH1a93g6a0F3U0mxbHZQ-CZMHnSwph
> To: <sip:1234567890 at sip.finotel.com>
> Call-ID: MnwrxqSE1aQrm.7clhFkCgJkTBM4Xcv7
> CSeq: 15699 REGISTER
> User-Agent: SIP01
> Contact: <sip:1234567890 at 82.113.104.242:25238;transport=tcp>
> Expires: 300
> Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
> Content-Length:  0
> 
> 
> --end msg--
> 05:15:37.179   tcpc0x865214  TCP transport destroyed with reason 70016: End of file (PJ_EEOF)
> 05:15:45.966     ioq_select  Attempting to replace UDP socket 10
> 05:15:45.966     ioq_select  UDP has been replaced successfully!
> 05:15:45.966     ioq_select  Attempting to replace UDP socket 11
> 05:15:45.966     ioq_select  UDP has been replaced successfully!
> 05:15:45.966     ioq_select  Attempting to replace UDP socket 12
> 05:15:45.967     ioq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 13
> 05:15:45.967     ioq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 14
> 05:15:45.967     ioq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 15
> 05:15:45.967     ioq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 16
> 05:15:45.967     ioq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 17
> 05:15:45.967     i2010-11-24 05:15:45.972 SIP01[1173:307] 
> 
> keepAliveFunction --- BEFORE re-registration :  timeout = 600	acct.expires = 0
> 
> oq_select  UDP has been replaced successfully!
> 05:15:45.967     ioq_select  Attempting to replace UDP socket 8
> 05:15:45.973      sip_reg.c  Unable to send request, regc has another transaction pending
> 05:15:45.976     ioq_select  UDP has been replaced successfully!
> 05:15:45.987   tcpc0x868014  TCP connect() error: Connection refused [code=120061]
> 05:15:45.987    tsx0x885464  Failed to send Request msg REGISTER/cseq=15699 (tdta0x84ac00)! err=120061 (Connection refused)
> 05:15:45.987    pjsua_acc.c  Unable to create/send REGISTER: Object is busy (PJSIP_EBUSY) [status=171001]
> 05:15:45.987    pjsua_acc.c  SIP registration failed, status=503 (Connection refused)
> 
> SIPStack::__registrationStateChanged(SIPAccountID 2)
> Status = Service Unavailable --- Expires in -1 seconds
> 05:15:45.988    pjsua_acc.c  Account id 2 deleted
> 05:15:45.988   tcpc0x868014  TCP transport destroyed with reason 120061: Connection refused
> 2010-11-24 05:15:45.988 SIP01[1173:307] 
> 
> keepAliveFunction --- AFTER re-registration :  timeout = 600	acct.expires = 0
> 
> 05:25:46.074     ioq_select  Attempting to replace UDP socket 10
> 05:25:46.074     ioq_select  UDP has been replaced successfully!
> 05:25:46.074     ioq_select  Attempting to replace UDP socket 11
> 05:25:46.074     ioq_select  UDP has been replaced successfully!
> 05:25:46.074     ioq_select  Attempting to replace UDP socket 12
> 05:25:46.074     ioq_select  UDP has been replaced successfully!
> 05:25:46.074     ioq_select  Attempting to replace UDP socket 13
> 05:25:46.074     ioq_select  UDP has been replaced successfully!
> 05:25:46.074     ioq_select  Attempting to replace UDP socket 14
> 
> 
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
> 
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
> 






[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux