[Spce-user] rtpengine usage in serial forking

John Nash john.nash778 at gmail.com
Fri Jan 23 03:54:06 EST 2015


OK I get  it now. There is one more scenario I am confused about. If
rtpengine_answer()  is called in case of session progress and 200 OK, In my
setup I receive two session progress messages (one from some IVR and
another from gateway) and a 200 OK.

I received ports from engine as 1111 for first session progress, 2222 from
second  session progress and 2222 for 200 OK. I was hoping to get same
port  for both session progress as call-id, from tag and to tag are all
same.
Below is log

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Got valid command from 127.0.0.1:33547: offer - { "sdp": "v=0#015#012o=-
3631009831 3631009831 IN IP4 192.168.1.3#015#012s=pjmedia#015#012t=0
0#015#012a=X-nat:0#015#012m=audio 20006 RTP/AVP 18 96#015#012c=IN IP4
192.168.1.3#015#012a=sendrecv#015#012a=rtpmap:18 G729/8000#015#012a=fmtp:18
annexb=no#015#012a=rtpmap:96 telephone-event/8000#015#012a=fmtp:96
0-15#015#012",
"ICE": "remove", "flags": [ "trust-address" ], "replace": [ "origin",
"session-connection" ], "transport-protocol": "RTP/AVP",
"call-id": "4e8e93113865474f8ca8e05ff24d7455", "via-branch":
"z9hG4bKPjdf770807f3964b44a8d1369df2c4412c",
"received-from": [ "IP4", "192.168.0.2" ], "from-tag":
"50686ed6b54042b2808b44759f9b6b15", "command": "offer" }

Jan 23 08:20:44 localhost rtpengine[7748]:
[4e8e93113865474f8ca8e05ff24d7455] Creating new call
Jan 23 08:20:44 localhost rtpengine[7748]:
[4e8e93113865474f8ca8e05ff24d7455] Returning to SIP proxy:
d3:sdp257:v=0#015#012o=- 3631009831 3631009831 IN IP4
1.1.1.1#015#012s=pjmedia#015#012t=0 0#015#012a=X-nat:0#015#012m=audio 39424
RTP/AVP 18 96#015#012c=IN IP4 1.1.1.1#015#012a=rtpmap:18
G729/8000#015#012a=fmtp:18 annexb=no#015#012a=rtpmap:96
telephone-event/8000#015#012a=fmtp:96
0-15#015#012a=sendrecv#015#012a=rtcp:39425#015#0126:result2:oke

Got valid command from 127.0.0.1:52311: answer -
{ "sdp": "v=0#015#012o=FreeSWITCH 1421976862 1421976863 IN IP4
192.168.112.5#015#012s=FreeSWITCH#015#012c=IN IP4 192.168.112.5#015#012t=0
0#015#012m=audio 24382 RTP/AVP 18 96#015#012a=rtpmap:18
G729/8000#015#012a=fmtp:18 annexb=no#015#012a=rtpmap:96
telephone-event/8000#015#012a=fmtp:96
0-16#015#012a=ptime:20#015#012a=rtcp:24383 IN IP4 192.168.112.5#015#012",
"ICE": "remove", "flags": [ "asymmetric", "trust-address" ], "replace": [
"origin", "session-connection" ], "transport-protocol": "RTP/AVP",
"call-id": "4e8e93113865474f8ca8e05ff24d7455", "via-branch":
"z9hG4bKb116.3816ce54.0",
"received-from": [ "IP4", "192.168.112.5" ], "from-tag":
"50686ed6b54042b2808b44759f9b6b15", "to-tag": "Sy1g30te66FFc", "command":
"answer" }

Returning to SIP proxy: d3:sdp270:v=0#015#012o=FreeSWITCH 1421976862
1421976863 IN IP4 1.1.1.1#015#012s=FreeSWITCH#015#012c=IN IP4
1.1.1.1#015#012t=0 0#015#012
m=audio 39432 RTP/AVP 18 96#015#012a=rtpmap:18 G729/8000#015#012a=fmtp:18
annexb=no#015#012a=rtpmap:96 telephone-event/8000#015#012a=fmtp:96
0-16#015#012a=ptime:20#015#012a=sendrecv#015#012a=rtcp:39433#015#0126:result2:oke


Jan 23 08:20:48 localhost rtpengine[7748]:
[4e8e93113865474f8ca8e05ff24d7455 port 39432] Confirmed peer address as
103.242.60.183:20006
Jan 23 08:20:48 localhost rtpengine[7748]:
[4e8e93113865474f8ca8e05ff24d7455 port 39432] No support for kernel packet
forwarding available
Jan 23 08:20:48 localhost rtpengine[7748]:
[4e8e93113865474f8ca8e05ff24d7455 port 39424] No support for kernel packet
forwarding available

Got valid command from 127.0.0.1:40973: answer - { "sdp":
"v=0#015#012o=Gateway_UAC 1052726242 253619918 IN IP4
61.236.47.17#015#012s=SIP Media Capabilities#015#012c=IN IP4
61.246.46.83#015#012t=0 0#015#012m=audio 39700 RTP/AVP
18#015#012a=rtpmap:18 G729/8000#015#012a=fmtp:18
annexb=no#015#012a=maxptime:20#015#012",
"ICE": "remove", "flags": [ "asymmetric", "trust-address" ], "replace": [
"origin", "session-connection" ], "transport-protocol": "RTP/AVP",
"call-id": "4e8e93113865474f8ca8e05ff24d7455", "via-branch":
"z9hG4bKb116.3816ce54.0",
"received-from": [ "IP4", "192.168.112.5" ], "from-tag":
"50686ed6b54042b2808b44759f9b6b15", "to-tag": "Sy1g30te66FFc", "command":
"answer" }


Returning to SIP proxy: d3:sdp230:v=0#015#012o=Gateway_UAC 1052726242
253619918 IN IP4 1.1.1.1#015#012s=SIP Media Capabilities#015#012
c=IN IP4 1.1.1.1#015#012t=0 0#015#012
m=audio 39440 RTP/AVP 18#015#012a=rtpmap:18 G729/8000#015#012a=fmtp:18
annexb=no#015#012a=maxptime:20#015#012a=sendrecv#015#012a=rtcp:39441#015#0126:result2:oke
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------






On Wed, Jan 21, 2015 at 7:47 PM, Richard Fuchs <rfuchs at sipwise.com> wrote:

> On 01/21/15 09:13, John Nash wrote:
> > Yes I can see that even if call-id is same but to tag is different
> > rtpengine allocating new port But my issue is end UA receives two
> > different ports in two session progress message (One for each forked
> > destination). My complete flow is...
> > UA Sends Invite to openser
> > Openser does rtpengine_offer and forwards to Media Server (IVR) (Port
> > 1111 as example sent to Media Server)
> > Media Server sends Session Progress to openser and openser does
> > rtpengine_answer
> > Openser sends Session Progress back to UA (Port 2222)
> > At openser media servers sends failure message (After IVR is played) and
> > openser sends Invite again to Other destination a gateway (Port 1111sent
> > again to gateway too!!)
> > When gateway sends session progress and openser does rtpengine_answer
> > again it allocates a different port !! 3333 and finally UA receives
> > another port in second session progess.
> >
> > I understand that To tag is different in second session progress from
> > gateway but something seems to be wrong.
> >
> > Expected behavior is UA should always receive single port (In both
> > session progress) and two Invites (Each to different destinations should
> > have different port) isnt it?
>
> Not at all. Remove rtpengine from the scenario and think about who gets
> to see which ports. Both invites would contain the same port, but the
> replies would contain different ports (in fact different addresses). So
> the result is exactly the same.
>
> cheers
> _______________________________________________
> Spce-user mailing list
> Spce-user at lists.sipwise.com
> https://lists.sipwise.com/listinfo/spce-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sipwise.com/pipermail/spce-user_lists.sipwise.com/attachments/20150123/59deffec/attachment-0001.html>


More information about the Spce-user mailing list