Subject: Re: [SIP] Proxy Routing Logic

From: "Keith Robinson" <[email-masked]>
Date: Mon, 18 Dec 2000 11:01:19 +0000

For the first case, couldn't this be the result of a roaming UA using source
routing to get the
initial INVITE to its home domain proxy to do the actual routing (perhaps the
user has
originating call features registered that they wish to use); in which case I
would expect the
behaviour in 2 to take place.

Regards,

K. Robinson.

Billy Biggs <[email-masked]> on 15/12/2000 20:26:49

                                                              

 To:      SIP List <[email-masked]>                  
                                                              
 cc:      (bcc: Keith Robinson/MAIN/MC1)                      

 Subject: [SIP] Proxy Routing Logic                           

  If a proxy at proxy.com receives a request with a Request-URI of:

             sip:[email-masked];maddr=proxy.com

  Should the proxy:

  1. Return a 404.
  2. Proxy the message to [email-masked], ditching the maddr
     parameter.

  Now say there is a populated Route header.  Should the proxy:

  1. Replace the Request-URI with the first Route and proxy.
  2. Return a 404.
  3. Proxy the message to [email-masked], ditching the maddr
     parameter (and not popping the Route).

  I think it should do 1 for each case.  Thoughts?

--
Billy Biggs, 3Com               Email: [email-masked]
http://www.div8.net/billy/      Phone: [email-masked]

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

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

---

From: "Fairlie-Cuninghame, Robert" <[email-masked]>
Date: Wed, 20 Dec 2000 15:51:55 -0800

> 
> Billy wrote:
> >
> > Fairlie-Cuninghame, Robert ([email-masked]):
> > 
> > > [Of course there will be always be different routing behaviour
> > > depending on whether the request has a Route or not. If a 
> Route exists
> > > it would be followed. If the Route doesn't exist you want 
> to recreate
> > > the original routing action (for subsequent requests). 
> This needs to
> > > be accomplished by either storing route state local or 
> embedding the
> > > imformation in the Record-Route.]
> > 
> >   Right, but this decision should only occur after you've 
> decided if the
> > request is for you.  It's very important that proxies don't 
> just assume
> > the request is meant for them if it happens to appear on 
> one of their
> > listening sockets.  I just wanted to bring up the issue to raise
> > awareness.
> 
> Maybe I'm not following properly, since I'm jumping in mid-stream,
> as it were, but if I get a request, I'm going to do my best to
> honour it.  Maybe I won't know anything about the domain in the
> Request-URI, but I'll SRV and A, and hopefully everything will
> still be okay.
> 
> I would see this as highly desirable behaviour.

Billy's right on this one. The proxy would do everything to honour the
request URI if it does not refer to it's own proxy address. If the proxy can
determine that the request-uri is consistent with a previously generated
Record-Route then it uses the next Route header or reproduces the previous
routing action.
 
> >   No.  An outbound proxy receives all outgoing requests, 
> regardless of
> > the request-URI (even if it has an maddr).  Otherwise, 
> firewall proxies
> > wouldn't work.
> 
> We discussed the definition of an "outbound proxy" a while ago,
> and while I don't think there was unanimousity (schyeah), I
> think the general feeling was that an outbound proxy is only
> used for the initial request; if it wants to stay in the loop,
> it Record-Route s.  Or am I just imagining things again?
> 
Yeah that's what I thought Jo - an outbound proxy keeps itself in the path
using R-R (if required). This is not only more flexible but also fits nicely
within the SIP framework. 

Robert.

---

From: "Fairlie-Cuninghame, Robert" <[email-masked]>
Date: Wed, 27 Dec 2000 17:23:23 -0800

Jonathan Rosenberg wrote:
> 
> A few solutions are possible:
> 
> 1. If you send a request to a URI that contains an maddr, and 
> you end up
> sending it to the address in that maddr, strip the maddr out 
> before sending
> the request. 
> 2. THe proxy should never had inserted this RR in the first 
> place, since
> using it directly will cause a loop. Rather, something like Robert's
> suggestion would be used:
> sip:outbound.proxy.com;uri=[email-masked].
> 
Although I (and Henning) were suggesting that the Request-URI be base64
encoded; otherwise it becomes brittle. If the Request-URI is simply quoted
when included then any escaped reserved characters in the Request-URI
content will introduce ambiguity with the escaped reserved characters in the
Request-URI string.

Regards,

Robert.