[SR-Users] rtpengine and serial forking with multiple network interfaces

Alex Balashov abalashov at evaristesys.com
Thu Dec 10 12:01:00 CET 2015


Hi,

It is not very clear to me how to handle serial forking scenarios with 
rtpengine where there are multiple RTP listeners attached to multiple 
network interfaces.

That is to say, given:

    rtpengine ... -i net1/xxx.xxx.xxx.xxx -i net2/yyy.yyy.yyy.yyy

1. I attempt to reach SIP gateway 1 via net1, calling rtpengine_manage() 
in the process:

    rtpengine_manage("replace-origin replace-session-connection 
ICE=remove direction=$avp(rtp_src) direction=$avp(rtp_dest)");

2. The call to gateway 1 fails, and I roll over to gateway 2, reached 
via net2, with dispatcher.

I have some logic that checks how $rd has changed and sets 
$avp(rtp_dest) accordingly in the dispatcher failure_route[].

3. In that failure_route[], I call:

    rtpengine_manage("replace-origin replace-session-connection 
ICE=remove direction=$avp(rtp_src) direction=$avp(rtp_dest)");

4. When looking at the SDP for the INVITE on branch #2 going out to 
gateway 2, it does not appear to utilise media endpoint yyy.yyy.yyy.yyy, 
but rather continues to represent itself outwardly as xxx.xxx.xxx.xxx, 
even to gateway #2.

I can't figure out what I'm doing wrong here, and the 'rtpengine' 
documentation only has one mention of serial forking, in the context of 
the discussion of the 'via-branch' parameter. As far as I can tell, this 
is not relevant to my use-case; I am not concerned about deleting the 
whole call from rtpengine, but rather about updating the SDP offer 
consonantly with serial forking to gateway #2.

Any help would be deeply appreciated!

Thanks,

-- Alex

-- 
Alex Balashov | Principal | Evariste Systems LLC
303 Perimeter Center North, Suite 300
Atlanta, GA 30346
United States

Tel: +1-800-250-5920 (toll-free) / +1-678-954-0671 (direct)
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/



More information about the sr-users mailing list