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

Reply via email to