Subject: [Sip] 482 handling by proxies

From: Christer Holmberg <[email-masked]>
Date: Tue, 30 Oct 2001 07:55:37 +0200

Hi,

This is related to the thread about handling of duplicated requests, but
this issue is related to the proxies.

Assume that a proxy, P1, forks an INVITE. The UAS receives the INVITE,
and decides to process that. After that it receives the same INVITE, via
another route, so it returns 482. 

Then, P1 receives that 482. However, it may take time until the UAS
sends a final response for the first INVITE. It may not even send a
provisional response, but there may also be 18xs, PRACKs, COMETs, INFOs,
and who knows what. Is P1 required to be able to handle all this, and
not send the 482 back to the UAC?

Regards,

Christer Holmberg
Ericsson Finland

_______________________________________________
Sip mailing list  http://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: Christer Holmberg <[email-masked]>
Date: Tue, 30 Oct 2001 16:18:44 +0200

Hi Bob,

>Yes. The proxy is suppose to collect the non-2xx final responses, and >when it has heard from all the branches and all of them are non-2xx final
>responses, it sends one non-2xx final response upstream to the UAC. If it
>had received any 2xx final response(s), which it would send upstream
>immediately, it does not send any non-2xx upstream.

Yes. I was just worried about cases where it actually may take a
relatively long time before the 200 final response is sent, due to other
call setup actions (PRACK, INFO etc), because I guess the proxy won't
wait "forever" for the final response until it takes some actions (of
course, in a real-life situation the call setup probably won't be that
long) for the pending legs.

Regards,

Christer Holmberg
Ericsson Finland

---

From: "Bob Penfield" <[email-masked]>
Date: Tue, 30 Oct 2001 09:04:10 -0500

see inline
----- Original Message -----
From: "Christer Holmberg" <[email-masked]>
To: <[email-masked]>
Sent: Tuesday, October 30, 2001 12:55 AM
Subject: [Sip] 482 handling by proxies

> not send the 482 back to the UAC?

Yes. The proxy is suppose to collect the non-2xx final responses, and when
it has heard from all the branches and all of them are non-2xx final
responses, it sends one non-2xx final response upstream to the UAC. If it
had received any 2xx final response(s), which it would send upstream
immediately, it does not send any non-2xx upstream.

---

From: Gonzalo Camarillo <[email-masked]>
Date: Tue, 30 Oct 2001 18:28:48 +0200

Christer,

> long) for the pending legs.

The proxy has ACKed already the 482 response. The only thing it does is
to store it in a buffer as one of the non-2xx final responses received
so far. This way it will be able to choose the "best" one to send back.

I do not know why you are raising this now, because this has been
standard SIP behavior since the beginning.

Regards,

Gonzalo

---

From: Christer Holmberg <[email-masked]>
Date: Wed, 31 Oct 2001 07:42:48 +0200

Hi,

>standard SIP behavior since the beginning.

I just wanted to clarify the specific case where it takes a long time
before the final response is received for a specific leg, because the
use of call pre-setup transactions etc has NOT been standard SIP
behavious since the beginning...

Regards,

Christer Holmberg
Ericsson Finland

---

From: Christer Holmberg <[email-masked]>
Date: Wed, 31 Oct 2001 08:26:13 +0200

Hi,

Just one more clarification related to this:

The proxy forks an INVITE. Then it receives 482 for one leg, and waits
for the final responses also from the other legs.

My question is: even if the proxy waits for the final responses, it
still DOES forward PROVISIONAL responses to the UAC, right?

Regards,

Christer Holmberg
Ericsson Finland

---

From: Christer Holmberg <[email-masked]>
Date: Wed, 31 Oct 2001 12:37:22 +0200

Hi,

I found the answer to this one in the new bis (page 83), so case is
closed :)

Regards,

Christer Holmberg
Ericsson Finland

---

From: Gonzalo Camarillo <[email-masked]>
Date: Wed, 31 Oct 2001 17:32:17 +0200

Hello,

> behavious since the beginning...

You are confusing terms. What you are saying does not have anything to
do with what we are discussing. It does not matter if you send thousands
of messages (PRACKs, COMETs, you name it...) before the call is set up,
because even if you do not send any message (a simple INVITE-final
response-ACK), the final response MAY take a long time to arrive... it
could eventually take even longer than in the other scenario if the user
chooses not to pick up inmediately...

Therefore, we are discussing an scenario that has been there since the
beginning of SIP. No new discussions really needed. Let's close this
thread.

Regards,

Gonzalo

---

From: Gonzalo Camarillo <[email-masked]>
Date: Wed, 31 Oct 2001 17:36:31 +0200

Hi,

> still DOES forward PROVISIONAL responses to the UAC, right?

What makes you think that the proxy stops forwarding provisional
responses?... why would a proxy stop forwarding them?

The answer is: "yes, it does forward them". But as I said already three
times in this thread, this is not new SIP behavior at all. Questions
related to this are probably best discussed in the SIP implementors
list.

Regards,

Gonzalo

---

From: Christer Holmberg <[email-masked]>
Date: Wed, 31 Oct 2001 19:19:00 +0200

Hi,

>related to this are probably best discussed in the SIP implementors

I DID send a mail to the list, saying that I did find the text in the
bis where this was said, and that the case was closed...

Regards,

Christer Holmberg
Ericsson Finland