[reSIProcate] Missing non-INVITE request before BYE

Dmitry Semyonov dsemyonov at dins.ru
Tue May 3 07:12:29 CDT 2005


Hello.

In case when remote UA sends BYE just after INFO not waiting for 
termination of INFO transaction, reSIProcate misses the INFO 
sometimes. The log is attached.

"Terminating a Session with a BYE Request" / "UAS Behavior" (15.1.2 
section of SIP RFC) states:

  The UAS MUST still respond to any pending requests received for 
  that dialog.  It is RECOMMENDED that a 487 (Request Terminated) 
  response be generated to those pending requests."

Therefore, although remote UAs must not use overlapping transactions, 
reSIProcate in turn must not miss them.

-- 
...Bye..Dmitry.
-------------- next part --------------
DEBUG | 20050429-193535.779 | SipMgr | RESIP:TRANSPORT | 2216 | Transport.cxx:209 | incoming from: [ V4 1.2.3.4:5070 UDP received on: Transport: [ V4 0.0.0.0:5070 UDP connectionId=0 ] connectionId=0 ]

STACK | 20050429-193535.779 | SipMgr | RESIP:TRANSPORT | 2216 | Transport.cxx:210 | 

INFO sip:5.6.7.8:5070 SIP/2.0


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK4313


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 5 INFO


Max-Forwards: 5


[...]



STACK | 20050429-193535.779 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:155 | Found matching transaction for SipReq:  INFO 5.6.7.8:5070 tid=4313 cseq=INFO / 5 from(wire) -> tid=4313 [ ServerNonInvite/Completed unreliable target=[ V4 1.2.3.4:5070 UDP received on: Transport: [ V4 0.0.0.0:5070 UDP connectionId=0 ] connectionId=0 ]]

STACK | 20050429-193535.779 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:781 | TransactionState::processServerNonInvite: SipReq:  INFO 5.6.7.8:5070 tid=4313 cseq=INFO / 5 from(wire)

STACK | 20050429-193535.779 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:1472 | tid=4313 sending to : [ V4 1.2.3.4:5070 UDP received on: Transport: [ V4 0.0.0.0:5070 UDP connectionId=0 ] connectionId=0 ]

DEBUG | 20050429-193535.779 | SipMgr | RESIP:TRANSPORT | 2216 | Transport.cxx:160 | Adding message to tx buffer to: [ V4 1.2.3.4:5070 UDP received on: Transport: [ V4 0.0.0.0:5070 UDP connectionId=0 ] connectionId=0 ]

DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSPORT | 2216 | Transport.cxx:209 | incoming from: [ V4 1.2.3.4:5070 UDP received on: Transport: [ V4 0.0.0.0:5070 UDP connectionId=0 ] connectionId=0 ]

STACK | 20050429-193535.795 | SipMgr | RESIP:TRANSPORT | 2216 | Transport.cxx:210 | 

BYE sip:5.6.7.8:5070 SIP/2.0


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Max-Forwards: 5


Content-Length: 0







STACK | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:190 | No matching transaction for SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionUser.cxx:56 | Checking if SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire) is for me

DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionUser.cxx:61 | Checking rule...

DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | MessageFilterRule.cxx:42 | Matching rule for BYE sip:5.6.7.8:5070 SIP/2.0


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Max-Forwards: 5


Content-Length: 0







DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionUser.cxx:64 | Match!

STACK | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:45 | Creating new TransactionState: tid=11840 [ ServerNonInvite/Trying reliable target=[ V4 0.0.0.0:0 UNKNOWN_TRANSPORT connectionId=0 ]]

DEBUG | 20050429-193535.795 | SipMgr | RESIP:TRANSACTION | 2216 | TransactionState.cxx:1535 | Send to TU: TU: DialogUsageManager size=0 BYE sip:5.6.7.8:5070 SIP/2.0


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Max-Forwards: 5


Content-Length: 0







INFO | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:820 | Got: SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1205 | DialogUsageManager::processRequest: SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1486 | Looking for dialogSet: 5443cf4db969a868 at U0U.-081eec19 in map:

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1487 | [1645876e3c206309 at U0U.-c6763536 -> 0ED1C840, 5443cf4db969a868 at U0U.-081eec19 -> 099F2EF8, 791d2071fa54af39 at U0U.-8e121008 -> 09A1B8B8, a2190f60f612f80d at U0U.-99000154 -> 09ABA668, af3c9b1acd04db3d at U0U.-845e7402 -> 09A0B608]

INFO | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1259 | Handling in-dialog request: SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogId.cxx:50 | DialogId::DialogId: 5443cf4db969a868 at U0U.-081eec19-13597

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogSet.cxx:669 | findDialog: 5443cf4db969a868 at U0U.-081eec19-13597 in [5443cf4db969a868 at U0U.-081eec19-13597 -> 0ECFAEC0]

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogSet.cxx:365 | Found matching dialog mClientSubscriptions(0), mServerSubscriptions(0) for 

BYE sip:5.6.7.8:5070 SIP/2.0


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Max-Forwards: 5


Content-Length: 0







DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | Dialog.cxx:289 | Dialog::dispatch: SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

INFO | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | InviteSession.cxx:1050 | Received SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire)

DEBUG | 20050429-193535.795 | SipMgr | RESIP | 2216 | Helper.cxx:282 | Helper::makeResponse(SipReq:  BYE 5.6.7.8:5070 tid=11840 cseq=BYE / 6 from(wire) code=200 reason=

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | Dialog.cxx:914 | Dialog::makeResponse: SIP/2.0 200 OK


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Contact: <sip:5.6.7.8:5070>


Content-Length: 0







DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1486 | Looking for dialogSet: 5443cf4db969a868 at U0U.-081eec19 in map:

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:1487 | [1645876e3c206309 at U0U.-c6763536 -> 0ED1C840, 5443cf4db969a868 at U0U.-081eec19 -> 099F2EF8, 791d2071fa54af39 at U0U.-8e121008 -> 09A1B8B8, a2190f60f612f80d at U0U.-99000154 -> 09ABA668, af3c9b1acd04db3d at U0U.-845e7402 -> 09A0B608]

DEBUG | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | DialogUsageManager.cxx:605 | SEND: SIP/2.0 200 OK


To: <sip:SE>;tag=081eec19


From: <sip:1.2.3.4:5070>;tag=13597


Via: SIP/2.0/UDP 1.2.3.4:5070;branch=z9hG4bK11840


Call-ID: 5443cf4db969a868 at U0U.


CSeq: 6 BYE


Contact: <sip:5.6.7.8:5070>


Content-Length: 0







DEBUG | 20050429-193535.795 | SipMgr | RESIP | 2216 | SipStack.cxx:269 | SEND: SipResp: 200 tid=11840 cseq=BYE contact=5.6.7.8:5070 / 6 from(tu)

INFO | 20050429-193535.795 | SipMgr | RESIP:DUM | 2216 | InviteSession.cxx:1435 | Transition InviteSession::Connected -> InviteSession::Terminated



More information about the resiprocate-devel mailing list