[asterisk-bugs] [Asterisk 0015802]: chan_sip will not retransmit an ACK

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Sep 3 10:05:46 CDT 2009


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=15802 
====================================================================== 
Reported By:                nmav
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   15802
Category:                   Channels/chan_sip/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.4.26.1 
Regression:                 No 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2009-08-31 10:10 CDT
Last Modified:              2009-09-03 10:05 CDT
====================================================================== 
Summary:                    chan_sip will not retransmit an ACK
Description: 
In commit 204243 it was added a check on whether to retransmit an ACK or
not. In my case this breaks retransmission in the following scenario:
-> INVITE
<- 100 Trying
<- 180 Ringing
<- 200 OK SDP
[ACK is lost]
<- 200 OK SDP
<- 200 OK SDP


====================================================================== 

---------------------------------------------------------------------- 
 (0110135) nmav (reporter) - 2009-09-03 10:05
 https://issues.asterisk.org/view.php?id=15802#c110135 
---------------------------------------------------------------------- 
Here is a capture of a conversation that terminates...

Reliably Transmitting (NAT) to 192.168.240.34:5060:
INVITE sip:2104500001 at 192.168.240.34 SIP/2.0
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>
Contact: <sip:nmav1 at 172.16.1.105>
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Max-Forwards: 70
Date: Thu, 03 Sep 2009 15:02:18 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1920 1920 IN IP4 172.16.1.105
s=-
c=IN IP4 172.16.1.105
t=0 0
m=audio 15182 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv

---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 100 trying -- your call is important to us
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
Server: Sip EXpress router (0.9.6 (i386/linux))
Content-Length: 0
Warning: 392 192.168.240.34:5060 "Noisy feedback tells: pid=22332
req_src_ip=172.16.1.105 req_src_port=5060
in_uri=sip:2104500001 at 192.168.240.34 out_uri=sip:2104500001 at 172.16.1.117
via_cnt==1"

<------------->
--- (9 headers 0 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Length: 0

<------------->
--- (12 headers 0 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

Found RTP audio format 18
Found RTP audio format 101
Peer audio RTP is at port 172.16.1.117:15362
Found audio description format G729 for ID 18
Found audio description format telephone-event for ID 101
Capabilities: us - 0x100 (g729), peer - audio=0x100 (g729)/video=0x0
(nothing), combined - (g729)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event), peer - 0x1
(telephone-event), combined - 0x1 (telephone-event)
Peer audio RTP is at port 172.16.1.117:15362
list_route: hop: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
set_destination: Parsing <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on> for
address/port to send to
set_destination: set destination to 192.168.240.34, port 5060
Transmitting (NAT) to 192.168.240.34:5060:
ACK sip:2104500001 at 172.16.1.117 SIP/2.0
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK053d8313;rport
Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Contact: <sip:nmav1 at 172.16.1.105>
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 ACK
User-Agent: Gennet Oxygen
Max-Forwards: 70
Content-Length: 0


---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->

--- (13 headers 12 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

oxygen*CLI> 
<--- SIP read from 192.168.240.34:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.16.1.105:5060;branch=z9hG4bK68e6563f;rport=5060
Record-Route: <sip:192.168.240.34;ftag=as1f6eb1bc;lr=on>
From: "2104000001" <sip:nmav1 at 192.168.240.34>;tag=as1f6eb1bc
To: <sip:2104500001 at 192.168.240.34>;tag=as65e71d5d
Call-ID: 2ce79cb63488e59d5acedcf424f18dbd at 192.168.240.34
CSeq: 102 INVITE
User-Agent: Gennet Oxygen
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces
Contact: <sip:2104500001 at 172.16.1.117>
Content-Type: application/sdp
Content-Length: 234

v=0
o=root 1468 1468 IN IP4 172.16.1.117
s=-
c=IN IP4 172.16.1.117
t=0 0
m=audio 15362 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:40
a=sendrecv
<------------->
--- (13 headers 12 lines) ---

[here the peer - asterisk also - hangs the line up] 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-09-03 10:05 nmav           Note Added: 0110135                          
======================================================================




More information about the asterisk-bugs mailing list