Subject: [SIP] CANCEL - responses sequence issue

From: "Piotr S. Kossowski" <[email-masked]>
Date: Mon, 16 Oct 2000 21:07:54 +0200

Hi,

 From rfc2543bis-02:

" (...)
If the server has not issued a final response for the original request, 
it immediately sends a 487 (Request Terminated) for the original request.
The UAC confirms receipt of any final response for the original request
as normal with an ACK request. CANCEL request itself is answered with a 
200 (OK) response in either case. "

Vijay Gurbani presented in mail "CANCEL/200 OK/BYE" following sequences:

1.

  UAC
    INVITE------->
    <----------- 100 Trying
    <----------- 180 Ringing
    CANCEL ------>
    <----------- 487 Request Terminated
    ACK---------->
    <------------ 200 OK (CSeq: xxx CANCEL)

2.

   UAC
     INVITE------->
     <----------- 100 Trying
     <----------- 180 Ringing
     CANCEL-----> <------ 200 OK (CSeq: xxx INVITE)
     ACK --------->
     BYE --------->
     <------------- 200 OK (CSeq: xxx BYE)

My question is about correctness of next sequences:

3.

  UAC
    INVITE----->
    <----------- 100, 18x..
    CANCEL----->
    <----------- 487 (CSeq: xxx INVITE)
    <----------- 200 (CSeq: xxx CANCEL)
    ACK--------> (for 487 response)

Is it allowed to send 200 response just after sending 487, before
getting ACK for 487 response ?

If yes, what about:

4.
  UAC
    INVITE----->
    <----------- 100 , 18x..
    CANCEL----->
    <----------- 200 (CSeq: xxx CANCEL)
    <----------- 487 (CSeq: xxx INVITE)
    ACK--------> (for 487 response)

Piotr Kossowski

_______________________________________________
SIP mailing list
[email-masked]
http://lists.bell-labs.com/mailman/listinfo/sip

---

From: "Vijay K. Gurbani" <[email-masked]>
Date: Mon, 16 Oct 2000 14:28:44 -0500

"Piotr S. Kossowski" wrote:
> 
> Hi,
> 
>  From rfc2543bis-02:
> 
> " (...)
> If the server has not issued a final response for the original 
> request, it immediately sends a 487 (Request Terminated) for the 
> original request.  The UAC confirms receipt of any final response for 
> the original request as normal with an ACK request. CANCEL request 
> itself is answered with a 200 (OK) response in either case. "
> 
 
Piotr:

I would presume so.  In either case 3 or 4, the INVITE and CANCEL are
distinct transactions; the 200 terminates the CANCEL and the 487
terminates the INVITE (which is ACK'ed). 

- vijay
-- 
Vijay K. Gurbani  [email-masked] [email-masked] [email-masked]
Internet Software Group/Intelligent Network and Messaging Systems
Lucent Technologies/Bell Labs Innovations, 263 Shuman Blvd, Rm 1A-413
Naperville, Illinois 60566  Voice: +1 630 224 0216 Fax: +1 630 713 0184