On 19.07.17 09:09, Juha Heinanen wrote:
Juha Heinanen writes:
If Request-URI hostpart is a domain name with
more than one SRV record,
it appears that each SRV destination creates its own Kamailio branch.
If branch route is set before t_relay(), it is executed only on the
first SRV destination. If the first SRV destination fails, Kamailio
tries automatically the second one, but any branch flags set in the
branch route are lost.
Is the above the intended behavior in general? It seems a
bit weird
that K does automatic serial forking to SRV destinations without
executing the branch route set before t_relay() for each of them.
AFAIK, this was the implementation from the first time of DNS SRV serial
forking.
Btw, is the branch index changed, or is reusing the same branch (is the
branch param in Via chaging for each leg sent out)?
Anyhow, changing the current behaviour would require c coding in tm.
Probably not that much.
Due to poor implementation of DNS SRV in the past and problems with
propagation, I tried to avoid it as much as possible. But I have several
deployments where it works fine, so all should be ok with it, however I
didn't need any customization for related branches.
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda --
www.linkedin.com/in/miconda
Kamailio Advanced Training -
www.asipto.com
Kamailio World Conference -
www.kamailioworld.com