Subject: [Sip] Question about Cseq for CANCEL request

From: "Rosa Maria Martinez Perallon" <[email-masked]>
Date: Fri, 7 Mar 2008 13:41:26 +0100

Hello,

I have a question about the Cseq number in a CANCEL request. Let's
imagine the next situation where we have an offer/answer model and,
after 2 rounds, the UAC wants to cancel the negotiation and the first
INVITE request.

|   INVITE Cseq=1 INVITE		     |
|--------------------------------------->|
|  1xx-rel Cseq=1 INVITE	           |
|<---------------------------------------|
|  PRACK Cseq=2 PRACK   		     |
|--------------------------------------->|
| 2xx PRACK Cseq=2 PRACK		     |
|<---------------------------------------|
|   CANCEL Cseq???	                 |
|--------------------------------------->|

....

What should the Cseq be?? 1 or 2?
The Cseq is usually increased in each request, but the CANCEL method is
not supposed to increase this number since it is cancelling a previous
transaction. However, if this number is not increased, the CANCEL method
will cancel the PRACK request which makes no sense. But can a dialog go
back to a previous number of Cseq?

Thanks in advance,
Rosa Martinez
_______________________________________________
Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: Thomas Froment <[email-masked]>
Date: Fri, 07 Mar 2008 14:00:45 +0100

Hi Rosa,
it is a classical question of sip-implementors mailing list,
answer is that CANCEL CSeq should stay the same as the INVITE. The same 
question arise with the ACK:
in that case, the correct sequence is:

 --> INVITE CSeq 1
<-- 180 CSeq 1
--> PRACK CSeq 2
<-- 200 CSeq 2  PRACK
<-- 200 CSeq 1 INVITE
--> ACK CSeq 1
 ... media ...  

--> BYE CSeq 3
<-- 200 CSeq 3  BYE

look for instance at 
http://threebit.net/mail-archive/sip-implementors/msg00165.html for more 
details,
+
Thomas