Subject: [Sip] One question

From: "Hwan Dong" <[email-masked]>
Date: Wed, 26 Feb 2003 12:47:14 -0800

Hello,

I got a question for the timer B in rfc3261 in the following scenarion:

UAC
---INVITE---->
<--1xx-----
---CANCEL---->
<--200(CAN)-----
...(no 487)...

in section 9.1, it says:

"  Note that both the transaction corresponding to the original request
   and the CANCEL transaction will complete independently.  However, a
   UAC canceling a request cannot rely on receiving a 487 (Request
   Terminated) response for the original request, as an RFC 2543-
   compliant UAS will not generate such a response.  If there is no
   final response for the original request in 64*T1 seconds (T1 is
   defined in Section 17.1.1.1), the client SHOULD then consider the
   original transaction cancelled and SHOULD destroy the client
   transaction handling the original request."

Does this mean there is some timer(timer B?) running for the proceeding
INVITE client transaction? Otherwise, how do we know how long to wait for
487?

But in section 17.1.1.2: when INVITE client transaction enters PROCEEDING
stage, the timer B is not running anymore.

Could someone clarify this scenario? Thanks,

--Hwan

_______________________________________________
Sip mailing list  https://www1.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: Eiji Tomimura <[email-masked]>
Date: Thu, 27 Feb 2003 17:32:53 +0900

Dear all,

I would like to clarify when we use PRACK and Record-Route header for 18x
response.

Consider the following scenario. The UAC receives 18x response with
Record-Route header, and route set and remote target are updated based on
section 12.1.2 of RFC3261:

UAC           Proxy
----INVITE---->
<--- 18x  ----- w/ Record-Route header
---- PRACK ---> 

---
Question 1)

When the UAC construct PRACK, it MUST follow the procedure described in
section 12.2.1.1 of RFC3261, and Request-URI should be changed to the remote
target, and also Route header should be included.

Is that correct?

---
Question 2)

In case the UAC try to cancel the call:

UAC           Proxy
----INVITE---->
<--- 18x  ----- w/ Record-Route header
---- PRACK ---> 
<--- 200 OK----

----CANCEL----> 
<--- 200 OK----

<--- 487 ------
---- ACK ----->

When the UAC construct CANCEL, as described in section 9.1 of RFC3261, it
MUST use the same Request-URI as in the original INVITE. It means that the
UAC MUST NOT use route set and remote target information received already in
Record-Route header.

Is that correct? 

---

Question 3) 

In the scenario described in Question 2), the UAC finally sends ACK after
receiving 487 response.

When the UAC construct ACK, as described in section 17.1.1.3 of RFC3261, it
MUST use the same Request-URI as in the original INVITE. It means that the
UAC MUST NOT use route set and remote target information received already in
Record-Route header.

Is that correct? 

---

Thank you very much for your assistance.

Regards,
- Eiji Tomimura

-- 
Eiji Tomimura 
Senior Engineer 
Systems Technology Dept., Information Technology R&D Laboratories
Sumitomo Electric Industries, Ltd.
Phone: +81-6-6466-5632  Fax: +81-6-6462-4586  Email: [email-masked]

---

From: Takuya Sawada <[email-masked]>
Date: Fri, 28 Feb 2003 21:32:58 +0900

Hello,

I think you are correct, as described in RFCs.

- CANCEL and ACK for non-2xx are related to (INVITE) TRANSACTION.
- PRACK is related to (early) DIALOG (established by INVITE).
That is why they are different.

Note that ACK for 2xx is constructed as PRACK except that it
uses routing information from 2xx not from reliable 18x.

Regards,
Takuya Sawada

> <--- 18x  ----- w/ Record-Route header

--------
Takuya Sawada
KDDI Corporation (KDDI)
KDDI Bldg. 2-3-2 Nishishinjuku Shinjuku-ku, 
Tokyo 163-8003, Japan
Tel: +81-3-3347-7406
Fax: +81-3-3347-7418
[email-masked]