Hi,

Thanks to everyone who responded, especially Dale for the detailed info

My proxy is authoritative for the domain, and there are no Route headers in the 
BYE request when it arrives at the proxy

So you are saying the proxy has stored the Contact URI to set the remote 
target, and will send the BYE to the remote target

I was just unclear about a stateless proxy, and wasn't sure if it also 
maintained remote target, route set etc. as I can only find info in the RFC 
relating to UAC and UAC not proxy core

Regards

-----Original Message-----
From: Dale R. Worley <wor...@ariadne.com> 
Sent: 22 March 2020 21:53
To: Jason Harrison <jason.harri...@conn3ct.com>
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] Proxy handling of in dialogue request

Jason Harrison <jason.harri...@conn3ct.com> writes:
> I ask as I have a proxy server that does not route a BYE request and I 
> am trying to understand why

The answer to that is that if you post the message sequence (as seen by the 
proxy), we may be able to help you.  But the devil is in the details, there's 
little general advice we can give you.

One exception is that if you can see re-INVITEs successfully passing between 
the UAs, usually when a call is put on-hold.  In that case, you can compare the 
(successful) re-INVITES to the (unsuccessful) BYE.

> I know that a UA uses the remote target and route set to build the 
> Route headers and request URI. What I cannot find detail on is how a 
> stateful proxy will determine where to route the request.
>
> Does the proxy have a remote target and route set like a UA, or does 
> it simply use the request URI.

The *dialog* has a route set and remote target.  When the UAC (sender) of a 
particular request within the dialog sends a request, it loads those into the 
message.  When a proxy receives the message, it looks at the top-most Route 
header (if that exists) or the request-URI and uses that to decide what to do.

One case is if it doesn't have any particular information about the domain in 
question, in which case, it sends the message onward based on the domain part 
of that URI.

Another case is if the domain in question is its own domain name, so it 
remmoves that Route header and uses the next Route header (or
request-URI) to forward the message.

The other case is if it is "authoritative" for the domain, which usually means 
that it is the registrar-proxy (i.e. switch) for URIs in that domain.  In that 
case, it removes URI and replaces it with the contact URI of the UA for the 
original URI.

All of these cases end with the message being sent onward based on the 
domain-part of the URI.  See RFC 3263 for all the gory details of that.

Dale
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to