[Devel] Structure of "487" and "200 Ok" reponses to CANCEL request without provisional response from second hop proxy

Tavis P tavis.lists at galaxytelecom.net
Wed Sep 21 19:49:00 CEST 2005


ngrep trace attached

I'm running the CVS HEAD version of OpenSER, checked out last week

Again i'm not certain that this is the problem, however it was the only 
issue i could find

Thanks!
Tavis


Daniel-Constantin Mierla wrote:

> Hello,
>
> coud you post the network grep for such situation? Be aware that 487 
> is for initial INVITE while the 200 is for CANCEL. Also, in this case, 
> the UA has to ACK the 487, not the 200.
>
> An the snippet you posted from RFC states that the reply for initial 
> INVITE and the reply for the CANCEL should have the same To tag. Are 
> you experiencing something else (I am not able to do a test right now, 
> so, if you can post some network traces, would really help to get you 
> a faster respose).
>
> To make it a bit clear, 487 is the response for the original request.
>
> Cheers,
> Daniel
>
> On 09/15/05 23:27, reticent wrote:
>
>> Recently a feature was added to OpenSER where it would work around 
>> most UACs lack of implementing section 9.1 of RFC3261 (which states 
>> "If no provisional response has been received, the CANCEL request 
>> MUST NOT be sent;) in that it would wait for the second hop entity to 
>> repond to the INVITE request before generating a CANCEL request and 
>> sending it on.
>>
>> I'm working with a Cisco 7960 sw-ver7.5 and i'm experiencing some 
>> issues regarding the "487" and "200 ok" response to the CANCEL 
>> message sent before SER receives a provisional response from the 
>> second hop routing entity.
>> SER sends the 487 and than the 200 ok but the cisco 7960 does not 
>> acknowlege the 200 ok with an ACK.
>> Reading RFC3261 i found the section that describes the behaviour of 
>> the UAS (SER) in this situation and the recommended behaviour isn't 
>> followed by SER, which is (Section 9.2): "Regardless of the method of 
>> the original request, as long as the CANCEL matched an existing 
>> transaction, the UAS answers the CANCEL request itself with a 200 
>> (OK) response. This response is constructed following the procedures 
>> described in Section 8.2.6 noting that the To tag of the response to 
>> the CANCEL and the To tag in the response to the original request 
>> SHOULD be the same. The response to CANCEL is passed to the server 
>> transaction for transmission."
>>
>> In the response (487 and 200 ok) SER generates and adds a "tag=" 
>> argument to the "To:" header function where the response to the 
>> original request did not have that tag.
>>
>> Now i don't know if this is an issue(as, in the spec, it is a SHOULD, 
>> not a MUST), but i am having a problem with the interaction and came 
>> across this in the specification so i thought i would mention it here.
>>
>>
>> tavis
>>
>> _______________________________________________
>> Devel mailing list
>> Devel at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/devel
>>
>
>

-------------- next part --------------
#
U 2005/09/21 17:39:04.311092 CISCO_7960G:5060 -> OPENSER_PROXY:15061
INVITE sip:6046946333 at OPENSER_PROXY SIP/2.0.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK6f5f85cf.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
Max-Forwards: 70.
CSeq: 101 INVITE.
User-Agent: Cisco-CP7960G/7.5.
Contact: <sip:200110005333 at 192.168.99.240:5060>.
Expires: 180.
Accept: application/sdp.
Allow: ACK,BYE,CANCEL,INVITE,NOTIFY,OPTIONS,REFER,REGISTER,UPDATE.
Supported: replaces.
Content-Length: 259.
Content-Type: application/sdp.
Content-Disposition: session;handling=optional.
.
v=0.
o=Cisco-SIPUA 19523 0 IN IP4 192.168.99.240.
s=SIP Call.
t=0 0.
m=audio 20214 RTP/AVP 18 0 8 101.
c=IN IP4 192.168.99.240.
a=rtpmap:18 G729/8000.
a=rtpmap:0 PCMU/8000.
a=rtpmap:8 PCMA/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.

#
U 2005/09/21 17:39:04.312048 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 407 Proxy Authentication Required.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK6f5f85cf;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=688bd636d693eb2ab143ccbaf0db2c7a.1ba1.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 101 INVITE.
Proxy-Authenticate: Digest realm="REALM", nonce="43319be43102b29c922e8cdf5e5c7571b8dc8e4f", qop="auth".
Content-Length: 0.
.

#
U 2005/09/21 17:39:04.448981 CISCO_7960G:5060 -> OPENSER_PROXY:15061
ACK sip:6046946333 at OPENSER_PROXY SIP/2.0.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK6f5f85cf.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=688bd636d693eb2ab143ccbaf0db2c7a.1ba1.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 101 ACK.
Content-Length: 0.
.

#
U 2005/09/21 17:39:04.503595 CISCO_7960G:5060 -> OPENSER_PROXY:15061
INVITE sip:6046946333 at OPENSER_PROXY SIP/2.0.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
Max-Forwards: 70.
CSeq: 102 INVITE.
User-Agent: Cisco-CP7960G/7.5.
Contact: <sip:200110005333 at 192.168.99.240:5060>.
Proxy-Authorization: Digest username="200110005333",realm="REALM",uri="sip:6046946333 at OPENSER_PROXY",response="d27eef4bb17d1331c422bf0fde7795ea",nonce="43319be43102b29c922e8cdf5e5c7571b8dc8e4f",cnonce="004226c8",qop=auth,nc=00000001,algorithm=md5.
Expires: 180.
Content-Length: 259.
Content-Type: application/sdp.
Content-Disposition: session;handling=optional.
.
v=0.
o=Cisco-SIPUA 19523 0 IN IP4 192.168.99.240.
s=SIP Call.
t=0 0.
m=audio 20214 RTP/AVP 18 0 8 101.
c=IN IP4 192.168.99.240.
a=rtpmap:18 G729/8000.
a=rtpmap:0 PCMU/8000.
a=rtpmap:8 PCMA/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.

#
U 2005/09/21 17:39:04.542205 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 100 trying -- your call is important to us.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:05.072915 CISCO_7960G:5060 -> OPENSER_PROXY:15061
CANCEL sip:6046946333 at OPENSER_PROXY SIP/2.0.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
Max-Forwards: 70.
CSeq: 102 CANCEL.
User-Agent: Cisco-CP7960G/7.5.
Content-Length: 0.
Proxy-Authorization: Digest username="200110005333",realm="REALM",uri="sip:6046946333 at OPENSER_PROXY",response="3cd189668fa7abeddbca8e095b814ba5",nonce="43319be43102b29c922e8cdf5e5c7571b8dc8e4f",cnonce="4b1d9cab",qop=auth,nc=00000002,algorithm=md5.
.

#
U 2005/09/21 17:39:05.087157 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:05.087486 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 200 ok -- no more pending branches.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 CANCEL.
Content-Length: 0.
.

#
U 2005/09/21 17:39:05.333532 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:07.337396 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:11.347149 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:15.355907 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:19.363655 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:23.372400 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:27.380151 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:31.387904 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

##
U 2005/09/21 17:39:35.397666 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:39.405407 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:43.414173 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.

#
U 2005/09/21 17:39:47.422910 OPENSER_PROXY:15061 -> CISCO_7960G:5060
SIP/2.0 487 Request Terminated.
Via: SIP/2.0/UDP 192.168.99.240:5060;branch=z9hG4bK18c9da3d;rport=5060;received=CISCO_7960G.
From: "200110005333" <sip:200110005333 at OPENSER_PROXY>;tag=00055e7cd6f3000a26d9cb28-5233e4dc.
To: <sip:6046946333 at OPENSER_PROXY>;tag=b54f4643ca25bcc9aa0b46a4d2d34c01-1176.
Call-ID: 00055e7c-d6f30008-58153022-29e9cb0a at 192.168.99.240.
CSeq: 102 INVITE.
Content-Length: 0.
.


More information about the Devel mailing list