Thanks, Paul for the detailed response, it more or less matches my own
understanding. Do you think for the sake of implementation it can be
compressed down to something like that:

- if you are making SIP RESPONSE to an incoming request use "Server",
otherwise if generating new REQUEST use "User-Agent"?

Are there any situations where a locally generated response to a
transaction that comes from the outside world might need to use
"User-Agent"? My understanding is no, since I don't know any scenarios
where UAS issues a request, or UAC generates a response.

-Max

On Tue, Apr 28, 2020 at 10:35 AM Paul Kyzivat <pkyzi...@alum.mit.edu> wrote:

> On 4/28/20 1:08 PM, Maxim Sobolev wrote:
> > Hi,
> >
> > I've noticed that in the last few years few implementations have gained
> > popularity who use User-Agent in both requests and responses. Instead of
> > User-Agent in requests and Server in responses which I always believed
> > (perhaps incorrectly) to be the right way of doing it. The argument there
> > is that "oh, our implementation is an endpont/B2BUA, not an UAS".  The
> > question hence is it my reading of RFC wrong or theirs? Thanks!
>
>  From 3261:
>
>     The Server header field contains information about the software used
>     by the UAS to handle the request.
>     ...
>     The User-Agent header field contains information about the UAC
>     originating the request.
>
> And note that UAC and UAS are *roles*. If you initiating (not
> forwarding) a SIP request then you are, at that moment, acting as a UAC.
> And if you are initiating (not forwarding) a SIP response then you are
> acting as a UAS. In practice it is really hard (probably impossible) to
> find anything that is purely a UAC or UAS.
>
> So the usage you are seeing is *wrong*.
>
> This gets hazy with B2BUAs. Note that they have no official standing in
> 3261. As far as 3261 is concerned  something that thinks of itself as a
> B2BUA is just two sip devices lashed together. When the B2BUA receives a
> request on one side it is acting as a UAS and when it sends it out the
> other side it is acting as a UAC. In principle that should be governing
> its use of User-Agent and Server on each side. But often they try to act
> as a Proxy. (Except when doing something that a Proxy isn't permitted to
> do.) I think they hand wave around this by claiming that they are
> sometimes acting as Proxies and other times are acting as UAs and so
> pick whichever suits them when arguing that they are compliant.
>
>         Thanks,
>         Paul
> _______________________________________________
> Sip-implementors mailing list
> Sip-implementors@lists.cs.columbia.edu
> https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
>


-- 
Maksym Sobolyev
Sippy Software, Inc.
Internet Telephony (VoIP) Experts
Tel (Canada): +1-778-783-0474
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to