Hi,
I've attached the signalling trace of this call.
The ACK does have a Route set, but we think this is correct according to
§17.1.1.3 of RFC3261.
" If the INVITE request whose response is being acknowledged had Route
header fields, those header fields MUST appear in the ACK. This is to
ensure that the ACK can be routed properly through any downstream
stateless proxies. "
A failure response to an INVITE does not have a Contact header and a
reINVITE does not Record-Route, so the ACK needs to be constructed in
the same way as the INVITE w.r.t. request URI and Route set.
When the ACK for the 407 arrives, can kamailio detect that the
transaction is in the 'Completed' state and drop it [1]?
Hugh
[1] RFC 6026 §8.6 which updates RFC3261 §17.2.1
On 12/07/2013 16:22, Daniel-Constantin Mierla wrote:
Hello,
iirc, ACKs for negative replies should be hop-by-hop, without any
route set. Maybe you can paste a ngrep with invite/407/ack to see
exactly what is there.
On the other hand, t_check_trans() for ack returns true if there is an
active invite transaction associated with it, because ack itself does
not create transaction, being a request that doesn't take a reply.
Cheers,
Daniel
On 7/12/13 5:11 PM, Hugh Waite wrote:
Hello,
I have a question on the use of t_check_trans for in-dialog requests.
If an in-dialog INVITE is challenged by kamailio (sending a 407
response), the ACK should be absorbed. However, the t_check_trans
function does not terminate the script. In our config, this means the
ACK gets sent to the client due to the route-set.
Should t_check_trans recognise that this transaction was rejected
locally, even though there is an onward route-set?
Hugh
--
Hugh Waite
Principal Design Engineer
Crocodile RCS Ltd.
-- INVITE ->
<- 407 --
-- ACK ->
-- INVITE ->
<- 200 --
-- ACK ->
--reINVITE->
<- 407 --
-- ACK -> ACK (forwarded onward to a GRUU destination)
--reINVITE->
<- 200 --
-- ACK ->
-- BYE ->
<- 200 --
INVITE sip:[email protected] SIP/2.0
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bK0604.d848dcd6.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK7682252
Max-Forwards: 16
To: <sip:[email protected]>
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7e
CSeq: 1822 INVITE
Call-Info: <xmpp:[email protected]> ;purpose=impp
Contact:
<sip:[email protected];gr=urn:uuid:67f9ccdb-33c0-4e02-b90b-51bd97167a0f;ob>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATE
Content-Type: application/sdpSupported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 2044
SIP/2.0 407 Proxy Authentication RequiredVia: SIP/2.0/TCP
10.244.155.159:5080;branch=z9hG4bK0604.d848dcd6.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK7682252
To:
<sip:[email protected]>;tag=8ab1eb0246bb313f703b656487ebc696.ca77
From: "Unit Tester #1"
<sip:[email protected]>;tag=607jqg3rfbCall-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1822 INVITE
Proxy-Authenticate: Digest realm="crocodilertc.net",
nonce="UeAAk1Hf/2dJwku6QyX07P8PbqgUemWEJf6hC4A="
Server: Crocodile RTC Network v0.1
Content-Length: 0
ACK sip:[email protected] SIP/2.0Via: SIP/2.0/TCP
10.244.155.159:5080;branch=z9hG4bK0604.d848dcd6.0
Max-Forwards: 16
To:
<sip:[email protected]>;tag=8ab1eb0246bb313f703b656487ebc696.ca77
From: "Unit Tester #1"
<sip:[email protected]>;tag=607jqg3rfbCall-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1822 ACK
Content-Length: 0
INVITE sip:[email protected] SIP/2.0
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bK1604.9e74acd5.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5792651
Max-Forwards: 16To: <sip:[email protected]>
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7ebCSeq: 1823 INVITE
Proxy-Authorization: Digest algorithm=MD5, username="test_account",
realm="crocodilertc.net", nonce="UeAAk1Hf/2dJwku6QyX07P8PbqgUemWEJf6hC4A=",
uri="sip:[email protected]",
response="898cecf3c396fcbcff36311599b00402"
Call-Info: <xmpp:[email protected]> ;purpose=impp
Contact:
<sip:[email protected];gr=urn:uuid:67f9ccdb-33c0-4e02-b90b-51bd97167a0f;ob>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATE
Content-Type: application/sdp
Supported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 2044
SIP/2.0 100 TryingVia: SIP/2.0/TCP
10.244.155.159:5080;branch=z9hG4bK1604.9e74acd5.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5792651To:
<sip:[email protected]>
From: "Unit Tester #1"
<sip:[email protected]>;tag=607jqg3rfbCall-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1823 INVITE
Server: Crocodile RTC Network v0.1
Content-Length: 0
SIP/2.0 180 Ringing
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bK1604.9e74acd5.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5792651
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1823 INVITE
Contact:
<sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b>;audio;video;text;data;+croc.sdkversion="<1>"
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 0
SIP/2.0 200 OK
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Record-Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Record-Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bK1604.9e74acd5.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5792651To:
<sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1823 INVITE
Contact:
<sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATE
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Type: application/sdp
Content-Length: 1484
ACK
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKcydzigwkX
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK908182
Max-Forwards: 16To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7ebCSeq: 1823 ACKSupported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 0
INVITE
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKe504.37b598a.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK808989
Max-Forwards: 16
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1"
<sip:[email protected]>;tag=607jqg3rfbCall-ID:
rthucd1f6ebvvj4lh7ebCSeq: 1824 INVITE
Contact:
<sip:[email protected];gr=urn:uuid:67f9ccdb-33c0-4e02-b90b-51bd97167a0f;ob>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATE
Content-Type: application/sdp
Supported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 2044
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKe504.37b598a.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK808989
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7ebCSeq: 1824 INVITE
Proxy-Authenticate: Digest realm="crocodilertc.net",
nonce="UeAAnVHf/3Ed4WOT63129yhS++UHeIQwJf6jDYA="
Server: Crocodile RTC Network v0.1
Content-Length: 0
ACK
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKe504.37b598a.0
Max-Forwards: 16
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1824 ACK
Content-Length: 0
ACK sip:[email protected];transport=ws SIP/2.0
Route:
<sip:[email protected]:5080;transport=tcp;lr;ob>
Via: SIP/2.0/TCP
registrar-int.crocodilertc.net:5060;branch=z9hG4bKe504.88707ed18ee87a52179374b5628e6b92.0;i=41
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKe504.37b598a.0
Max-Forwards: 15
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1824 ACK
Content-Length: 0
INVITE
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKf504.3fd7b413.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK6449637
Max-Forwards: 16To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1825 INVITE
Proxy-Authorization: Digest algorithm=MD5, username="test_account",
realm="crocodilertc.net", nonce="UeAAnVHf/3Ed4WOT63129yhS++UHeIQwJf6jDYA=",
uri="sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b",
response="81982018f74134f6545bdc169e360bda"
Contact:
<sip:[email protected];gr=urn:uuid:67f9ccdb-33c0-4e02-b90b-51bd97167a0f;ob>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATE
Content-Type: application/sdp
Supported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 2044
SIP/2.0 100 Trying
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKf504.3fd7b413.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK6449637
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1825 INVITE
Server: Crocodile RTC Network v0.1
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKf504.3fd7b413.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK6449637
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1825 INVITE
Contact:
<sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b>;audio;video;text;data;+croc.sdkversion="<1>"
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE,MESSAGE,UPDATEContent-Type: application/sdp
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Type: application/sdp
Content-Length: 1484
ACK
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKcydzigwkX
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK3640077
Max-Forwards: 16
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1825 ACK
Supported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 0
BYE
sip:[email protected];gr=urn:uuid:64d2b8e8-33db-4f49-a885-f2239671426b
SIP/2.0
Route: <sip:registrar-int.crocodilertc.net;transport=tcp;lr=on>
Route:
<sip:[email protected]:5080;transport=tcp;r2=on;lr=on>
Route:
<sip:[email protected]:443;transport=ws;r2=on;lr=on>
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKc504.249e0a47.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5061044
Max-Forwards: 16
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7ebCSeq: 1826 BYESupported: path, outbound, gruu
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/TCP 10.244.155.159:5080;branch=z9hG4bKc504.249e0a47.0
Via: SIP/2.0/WSS
3k2popdrtjv3.invalid;rport=57366;received=x.x.x.x;branch=z9hG4bK5061044
To: <sip:[email protected]>;tag=o5ans6hai1
From: "Unit Tester #1" <sip:[email protected]>;tag=607jqg3rfb
Call-ID: rthucd1f6ebvvj4lh7eb
CSeq: 1826 BYE
User-Agent: Crocodile SDK v<%= pkg.version %>; JsSIP 0.3.0-crocodile-1-devel;
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.116 Safari/537.36
Content-Length: 0
_______________________________________________
sr-dev mailing list
[email protected]
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev