< Previous by Date Date Index Next by Date >
  Thread Index  

[reSIProcate] Assert in TransactionState.cxx


Hi!

 

We’re experiencing some problems with resiprocate-1.2. The scenario is described below:

 

Our implementation sends an INVITE which is answered with 100 Trying. After this we receive a 200 ok to another INVITE sent to another destination. We respond to this by calling createDialogAsUAC() and then makeAck(). This works fine in most cases (99%) but sometimes the ACK gets the same tid as the first INVITE. This results in an incorrect state and we get an assert at line 253 in TransactionState.cxx. Any ideas on what might be wrong?

 

Please find the logs attached. Thanks!

 

/kj

 

Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.096 | SIP | RESIP | 
3082664160 | SipStack.cxx:289 | SEND: SipReq:  INVITE +46123@xxxxxxxxxxxxx 
tid=944a0c368423240e cseq=INVITE contact=+46123456789@xxxxxxxxxxx:5060 / 1 
from(tu)
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.104 | SIP | 
RESIP:TRANSACTION | 3043498928 | TimerQueue.cxx:85 | Adding timer: Timer B 
tid=944a0c368423240e ms=32000
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.105 | SIP | 
RESIP:TRANSPORT | 3043498928 | TransportSelector.cxx:887 | Transmitting to [ V4 
192.168.0.21:5060 TCP target domain=unspecified received on: Transport: [ V4 
192.168.0.3:5060 TCP target domain=unspecified connectionId=0 deviceName=eth1 ] 
on 192.168.0.3 connectionId=0 deviceName= ] tlsDomain= via [ V4 
192.168.0.3:5060 TCP target domain=unspecified connectionId=0 deviceName=eth1 ] 
 INVITE sip:+46123@xxxxxxxxxxxxx;user=phone SIP/2.0^M Via: SIP/2.0/TCP 
192.168.0.3:5060;branch=z9hG4bK-d8754z-944a0c368423240e-1---d8754z-;rport^M 
Max-Forwards: 70^M Contact: <sip:+46123456789@xxxxxxxxxxx:5060;transport=tcp>^M 
To: "0123"<sip:+46123@xxxxxxxxxxxxx;user=phone>^M From: 
"0123456789"<sip:+46123456789@xxxxxxxx;user=phone>;tag=2ccdc87b^M Call-ID: 
YTdhMDllZDg5ZDk0YWU5NDQyNTRmZmY1ZDVkYjc2ZTA.^M CSeq: 1 INVITE^M 
Session-Expires: 7000;refresher=uac^M Min-SE: 7000^M Allow: INVITE, ACK, BYE, 
CANCEL^M Content-Type: application/sdp^M Supported: timer^M User-Agent: B2B
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.105 | SIP | 
RESIP:TRANSPORT | 3043498928 | TcpConnection.cxx:83 | Writing INVITE 
sip:+46123@xxxxxxxxxxxxx;user=phone SIP/2.0^M Via: SIP/2.0/TCP 
192.168.0.3:5060;branch=z9hG4bK-d8754z-944a0c368423240e-1---d8754z-;rport^M 
Max-Forwards: 70^M Contact: <sip:+46123456789@xxxxxxxxxxx:5060;transport=tcp>^M 
To: "0123"<sip:+46123@xxxxxxxxxxxxx;user=phone>^M From: 
"0123456789"<sip:+46123456789@xxxxxxxx;user=phone>;tag=2ccdc87b^M Call-ID: 
YTdhMDllZDg5ZDk0YWU5NDQyNTRmZmY1ZDVkYjc2ZTA.^M CSeq: 1 INVITE^M 
Session-Expires: 7000;refresher=uac^M Min-SE: 7000^M Allow: INVITE, ACK, BYE, 
CANCEL^M Content-Type: application/sdp^M Supported: timer^M User-Agent: 
B2BUA-BETA^M Content-Length: 144^M Remote-Party-ID: 
"0123456789"<sip:+46123456789@xxxxxxxx>;privacy=off^M X-Ecan: On^M ^M v=0^M 
o=Broadcom 9458 3007949 IN IP4 192.168.0.80^M s=MGCP call^M c=IN IP4 
192.168.0.80^M t=0 0^M m=audio 13456 RTP/AVP 8 0^M a=ptime:20^M a=sendrecv^M
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.112 | SIP | 
RESIP:TRANSPORT | 3043498928 | ConnectionBase.cxx:276 | ##Connection: 
CONN_BASE: 0xaeb56058 [ V4 192.168.0.21:5060 TCP target domain=unspecified 
received on: Transport: [ V4 192.168.0.3:5060 TCP target domain=unspecified 
connectionId=0 deviceName=eth1 ] on 196.192.168.3 connectionId=16 deviceName= ] 
received: SIP/2.0 100 Trying^M Via: SIP/2.0/TCP 
196.192.168.3:5060;branch=z9hG4bK-d8754z-944a0c368423240e-1---d8754z-;received=196.192.168.3;rport=34823^M
 To: "0123"<sip:+46123@xxxxxxxxxxxxx;user=phone>^M From: 
"0123456789"<sip:+46123456789@xxxxxxxx;user=phone>;tag=2ccdc87b^M Call-ID: 
YTdhMDllZDg5ZDk0YWU5NDQyNTRmZmY1ZDVkYjc2ZTA.^M CSeq: 1 INVITE^M Server: 
SIP-proxy at p1.sip2.dummy.com^M Content-Length: 0^M ^M
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.112 | SIP | 
RESIP:TRANSACTION | 3043498928 | TransactionState.cxx:1838 | Send to default 
TU:   SIP/2.0 100 Trying^M Via: SIP/2.0/TCP 
196.192.168.3:5060;branch=z9hG4bK-d8754z-944a0c368423240e-1---d8754z-;received=196.192.168.3;rport=34823^M
 To: "0123"<sip:+46123@xxxxxxxxxxxxx;user=phone>^M From: 
"0123456789"<sip:+46123456789@xxxxxxxx;user=phone>;tag=2ccdc87b^M Call-ID: 
YTdhMDllZDg5ZDk0YWU5NDQyNTRmZmY1ZDVkYjc2ZTA.^M CSeq: 1 INVITE^M Server: 
SIP-proxy at p1.sip2.dummy.com^M Content-Length: 0^M ^M
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.112 | SIP | RESIP | 
3043498928 | SipStack.cxx:462 | RECV: SipResp: 100 tid=944a0c368423240e 
cseq=INVITE / 1 from(wire)
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.497 | SIP | 
RESIP:TRANSPORT | 3043498928 | ConnectionBase.cxx:276 | ##Connection: 
CONN_BASE: 0xaebf1108 [ V4 192.168.0.67:5060 TCP target domain=unspecified 
received on: Transport: [ V4 192.168.0.3:5060 TCP target domain=unspecified 
connectionId=0 deviceName=eth1 ] on 192.168.0.3 connectionId=23 deviceName= ] 
received: SIP/2.0 200 OK^M Via: SIP/2.0/TCP 
192.168.0.3:5060;branch=z9hG4bK-d8754z-10200159b47c3a24-1---d8754z-;received=192.168.0.3;rport=37888^M
 Record-Route: <sip:sip.dummy.com;lr>^M Record-Route: <sip:sip2.dummy.com;lr>^M 
Contact: <sip:9876@xxxxxxxxxxxxxxxxxxxxxxx>^M To: 
"09876"<sip:+469876@xxxxxxxxxxxxx;user=phone>;tag=4b3a3165^M From: 
"Anonymous"<sip:anonymous@xxxxxxxx>;tag=12562009^M Call-ID: 
NWNhZmNkYzgxZDlhNjIwMDQ4MTU0OTE4OWY2MzFlYjc.^M CSeq: 1 INVITE^M 
Session-Expires: 7000;refresher=uac^M Min-SE: 7000^M Allow: INVITE, ACK, BYE, 
CANCEL^M Content-Type: application/sdp^M Supported: timer^M Content-Length: 
116^M X-Ecan: On^M ^M v=0^M o=- 172
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.497 | SIP | 
RESIP:TRANSACTION | 3043498928 | TransactionState.cxx:1838 | Send to default 
TU:   SIP/2.0 200 OK^M Via: SIP/2.0/TCP 
192.168.0.3:5060;branch=z9hG4bK-d8754z-10200159b47c3a24-1---d8754z-;received=192.168.0.3;rport=37888^M
 Record-Route: <sip:sip.dummy.com;lr>^M Record-Route: <sip:sip2.dummy.com;lr>^M 
Contact: <sip:9876@xxxxxxxxxxxxxxxxxxxxxxx>^M To: 
"09876"<sip:+469876@xxxxxxxxxxxxx;user=phone>;tag=4b3a3165^M From: 
"Anonymous"<sip:anonymous@xxxxxxxx>;tag=12562009^M Call-ID: 
NWNhZmNkYzgxZDlhNjIwMDQ4MTU0OTE4OWY2MzFlYjc.^M CSeq: 1 INVITE^M 
Session-Expires: 7000;refresher=uac^M Min-SE: 7000^M Allow: INVITE, ACK, BYE, 
CANCEL^M Content-Type: application/sdp^M Supported: timer^M Content-Length: 
116^M X-Ecan: On^M ^M v=0^M o=- 1725178829 0 IN IP4 192.168.0.61^M s=-^M c=IN 
IP4 192.168.0.61^M t=0 0^M m=audio 5290 RTP/AVP 8^M a=ptime:20^M
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.498 | SIP | 
RESIP:TRANSACTION | 3043498928 | TimerQueue.cxx:85 | Adding timer: Timer 
StaleClient tid=10200159b47c3a24 ms=32000
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.498 | SIP | RESIP | 
3043498928 | SipStack.cxx:462 | RECV: SipResp: 200 tid=10200159b47c3a24 
cseq=INVITE contact=9876@xxxxxxxxxxxxxxxxxxxxxxx / 1 from(wire)
Jun 20 14:51:39 c1-sipp b2bua: DEBUG | 20080620-145139.500 | SIP | RESIP | 
3082664160 | SipStack.cxx:289 | SEND: SipReq:  ACK 9876@xxxxxxxxxxxxxxxxxxxxxxx 
tid=944a0c368423240e cseq=ACK contact=0000@xxxxxxxxxxxxx:5060 / 1 from(tu)