section 9.1 of rfc 3261says -
"The following procedures are used to construct a
CANCEL request. The
Request-URI, Call-ID, To, the numeric part of CSeq, and
From header
fields in the CANCEL request MUST be identical to those
in the
request being cancelled, including tags. A CANCEL
constructed by a
client MUST have only a single Via header field value
matching the
top Via value in the request being cancelled. Using the
same values
for these header fields allows the CANCEL to be matched
with the
request it cancels (Section 9.2 indicates how such
matching occurs).
However, the method part of the CSeq header field MUST
have a value
of CANCEL. This allows it to be identified and processed
as a
transaction in its own right (See Section 17)."
truename <xian-liang yeah.net> wrote:
Hi all:
There is a question confused me.
In a session lanched by INVITE request, before replied a
final status response, we can cancel this by a CANCEL
request followed.
Callidˇ˘FromTagˇ˘ToTag and Request-Url are enough to
separate which INVITE request that the CANCEL request
cancel.
Why copy the number part of Cseq headfield?
What is that surppose to?
Here comes a example inferred by rfc3665:
----------------------------Callflow
Start-------------------------------------------------------
-
Alice Proxy 1
| |
| INVITE |
|--------------->|
| 100 |
|<---------------|
| 180 |
|<---------------|
| CANCEL |
|--------------->|
----------------------------Callflow
End---------------------------------------------------------
---
----------------------------INVITE Message
Start----------------------------------------------
INVITE sip:bob biloxi.example.com SIP/2.0
Via: SIP/2.0/UDP
client.atlanta.example.com:5060;branch=z9hG4bK74bf9
Max-Forwards: 70
Route:
From: Alice ;tag=9fxced76sl
To: Bob
Call-ID: 2xTb9vxSit55XU7p8 atlanta.example.com
CSeq: 1 INVITE
Contact:
Proxy-Authorization: Digest username="alice",
realm="atlanta.example.com",
nonce="ze7k1ee88df84f1cec431ae6cbe5a359",
opaque="",
uri="sip:bob biloxi.example.com",
response="b00b416324679d7e243f55708d44be7b"
Content-Type: application/sdp
Content-Length: 151
v=0
o=alice 2890844526 2890844526 IN IP4
client.atlanta.example.com
s=-
c=IN IP4 192.0.2.101
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
----------------------------INVITE Message
End----------------------------------------------------
----------------------------CANCEL Message
Start-------------------------------------------------
CANCEL sip:bob biloxi.example.com SIP/2.0
Via: SIP/2.0/UDP
client.atlanta.example.com:5060;branch=z9hG4bK74bf9
Max-Forwards: 70
From: Alice ;tag=9fxced76sl
To: Bob
Route:
Call-ID: 2xTb9vxSit55XU7p8 atlanta.example.com
CSeq: 1 CANCEL
Content-Length: 0
----------------------------CANCEL Message
End--------------------------------------------------
_______________________________________________
Sip-implementors mailing list
Sip-implementors cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinf
o/sip-implementors
_______________________________________________
Sip-implementors mailing list
Sip-implementors cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinf
o/sip-implementors
|