Subject: [SIP] ACK Processing in stateless proxies

From: "Sharath Rajasekar" <[email-masked]>
Date: Wed, 3 Jan 2001 17:20:39 -0800

We consider a case of two UAs, A and B, along with two 
proxies P1 and P2. Both proxies are "stateless" and record
route. 

--1)
	A       P1       P2       B
      |        |        |        |        
      |--INV-->|--INV-->|--INV-->|
      |        |        |        |
      |<-100---|<-100---|<-100---|
      |        |        |        |
      |        |        |<-404---|
      |        |        |--ACK-->|
      |        |        |        |
	|	   |<-404---|        |
      |        |--ACK-->|        |
      |        |        |        |
      |<-404---|        |        |
	|--ACK-->|        |        |
      |        |        |        |

Would the two stateless proxies P1 and P2 propagate
ACKs as shown above or would they do so as shown below ?

--2)
	A       P1       P2       B
      |        |        |        |        
      |--INV-->|--INV-->|--INV-->|
      |        |        |        |
      |<-100---|<-100---|<-100---|
      |        |        |        |
      |<-404---|<-404---|<-404---|
      |        |        |        |
      |--ACK-->|--ACK-->|--ACK-->|
      |        |        |        |

(A)
The bis draft in section 12.3 Proxy Server mentions 
that "A stateless proxy forwards every request it receives 
downstream, and every response it receives upstream". Note 
there is no MUST, SHOULD or MAY.

(B)
"Stateful" proxies as the draft implies on the other hand
would have to process any response with status code < 300 
and status code equal to 401 or 484 as 2) [end-to-end] and 
the remaining responses as 1) [hop-by-hop].

How SHOULD, MUST or MAY "stateless" proxies process ACKs ?

Thanks
Sharath

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

---

From: Jonathan Rosenberg <[email-masked]>
Date: Thu, 4 Jan 2001 01:41:36 -0500

> -----Original Message-----
> From: Sharath Rajasekar [mailto:[email-masked]]
> Sent: Wednesday, January 03, 2001 8:21 PM
> To: Jonathan Rosenberg
> Cc: IETF SIP (E-mail)
> Subject: ACK Processing in stateless proxies
> 
> 
> 

This flow is not correct. The stateless proxies would not generate an ACK.
THey would forward the response upstream.

>       |--INV-->|--INV-->|--INV-->|

This second flow is correct.

> there is no MUST, SHOULD or MAY.

Statements of that type are MUST. This is something we are aiming to be more
explicit about in the upcoming bis drafts.

> the remaining responses as 1) [hop-by-hop].

No. A stateful proxy would "process" any final response except a 200 class
response. This means it will generate an ACK for anything but a 200 class
response. 

> How SHOULD, MUST or MAY "stateless" proxies process ACKs ?

If your proxy is processing an ACK, its not stateless by definition.

-Jonathan R.

---
Jonathan D. Rosenberg                       72 Eagle Rock Ave.
Chief Scientist                             First Floor
dynamicsoft                                 East Hanover, NJ 07936
[email-masked]                     FAX:   (973) 952-5050
http://www.cs.columbia.edu/~jdrosen         PHONE: (973) 952-5000
http://www.dynamicsoft.com