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

Daniel-Constantin Mierla daniel at voice-system.ro
Sun Sep 25 16:17:02 CEST 2005


Hello,

as you can see, the To tag in the reply of cancel is the same as for 
reply of invite (is what RFC requires):

#
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.


There should be something else that the CISCO_7960G does not like. Do you have access to the CISCO box, could you get some debug messages there? Is there a NAT between cisco and openser?

Cheers,
Daniel




On 09/21/05 20:49, Tavis P wrote:

> 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
>>>
>>
>>
>
>------------------------------------------------------------------------
>
>#
>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.
>.
>  
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Devel mailing list
>Devel at openser.org
>http://openser.org/cgi-bin/mailman/listinfo/devel
>  
>



More information about the Devel mailing list