[SR-Users] Should I ignore Route header in ACK?

Yuriy Gorlichenko ovoshlook at gmail.com
Mon Jul 2 08:31:02 CEST 2018


Sorry for noize from my side
I just cant fully understand dependency:

I understand that actually route header shoud not be ingnored because it is
shows way for the in-dialog packet
That is fine.

Just regarding behaivor of the FreeSwitch and other UACs

For now I have a next picture

When my provider sends me 200 - it contains as Record-Route: 1.1.1.1:5060
which contains last interface i sent INVITE to
Also it contains Contact: 1.1.1.1:5061

So when UAC receives this call without my proxy between provider and UAC it
sends ACK to Contact URI (Ignoring Route header that actually also exists
in the Contact field) sent at the 200 according rfc3261 -12.1.2 (that I
shared above)

But when it sends via my proxy:

UAC receives ACK with 2 Route headers (that is right) and sends it to the
topmost Route (myProxy) then my proxy as normal proxy resends it to the
provider using second Route (that topmost for now after myProxy removes
itself from Route set)

But here provider says me - you should use Contact field to reach target
even from myProxy.

So in this case - At the behaivor of UAC -> Provider  it looks matched
12.1.2 but I still cant understand why in this case it ignores Route header
at the ACK that actually exists



2018-07-02 9:02 GMT+03:00 Alex Balashov <abalashov at evaristesys.com>:

> On Mon, Jul 02, 2018 at 09:00:02AM +0300, Yuriy Gorlichenko wrote:
>
> > yep I understand that.
> > I just see that in fact ACK soudl ignore Route header if it... Single?
>
> What? No.
>
> There are two kinds of ACKs: hop-by-hop ACKs, which acknowledge negative
> final replies on every branch, and end-to-end ACKs, which are handled
> according to the rules for in-dialog requests. An ACK for a 2xx reply to
> an INVITE is going to be an in-dialog request, and under no
> circumstances should any Route headers be ignored unless they refer to
> the very proxy through which they are traversing. In that case, they
> should be stripped off before continuing with the next-hop Route. This
> is the standard loose-routing procedure labouriously articulated in the
> RFC, and implemented by loose_route().
>
> --
> Alex Balashov | Principal | Evariste Systems LLC
>
> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20180702/0eeabe16/attachment.html>


More information about the sr-users mailing list