[OpenSIPS-Users] packet forwarding when two mediaproxy 2.0s are back-to-back
Juha Heinanen
jh at tutpro.com
Fri Sep 5 08:18:45 CEST 2008
i did some tests today with two back-to-back mediaproxies and, indeed, if
both of them are mediaproxy 2.0, then deadlock happens, i.e., after
receiving rtp packets from nated UAs, both of them are waiting rtp
packets from each other and don't forward any packets out to each other
even when they both public ip addresses. if i change one of the
mediaproxies to version 1.9, the problem disappears.
below is log at one of the two mediaproxies if it would reveal
something. so the question is, has something changed from 1.9 to 2.0
regarding this:
Please note however that if one party is not behind
NAT the proxy server is able to send packets to it even before it receives a
packet from it, since the IP/port is already known. Because of this, our
mediaproxy server is able to work even when chained with another mediaproxy
server. There will be no blocking of the media streams because both mediaproxy
servers are passive and wait forever for a packet from each other. Instead our
mediaproxy server will only be passive and wait for a packet if the party it
talks with is behind NAT making it possible to chain as many mediaproxy
servers without blocking.
if back-to-back mediaproxies are not supported anymore, a new module
(mediaproxy_old) needs to be included that can control mediaproxy
version 1.9.
i'll cc to ruud and dan in case they are not subscribing to this list.
-- juha
Sep 5 08:54:12 lohi media-dispatcher[3367]: [OpenSERControlProtocol,7,] Issuing "update" command to relay at 127.0.0.1
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] Received new SDP offer
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] mediaproxy.mediacontrol.StreamListenerProtocol starting on 50036
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] mediaproxy.mediacontrol.StreamListenerProtocol starting on 50037
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] mediaproxy.mediacontrol.StreamListenerProtocol starting on 50038
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] mediaproxy.mediacontrol.StreamListenerProtocol starting on 50039
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] Added new stream: (audio) 192.168.0.7:8034 (RTP: Unknown, RTCP: Unknown) <-> 192.99.102.4:50036 <-> 192.99.102.4:50038 <-> Unknown (RTP: Unknown, RTCP: Unknown)
Sep 5 08:54:12 lohi media-relay[3381]: [RelayClientProtocol,client] created new session ifnhmfcgodiaxbt at localhost: +35864275274 at tutpro.com (epnjv) --> +35865551100 at enumin.wirlab.net
Sep 5 08:54:14 lohi media-dispatcher[3367]: [OpenSERControlProtocol,2,] Issuing "update" command to relay at 127.0.0.1
Sep 5 08:54:14 lohi media-relay[3381]: [RelayClientProtocol,client] updating existing session ifnhmfcgodiaxbt at localhost: +35864275274 at tutpro.com (epnjv) --> +35865551100 at enumin.wirlab.net
Sep 5 08:54:14 lohi media-relay[3381]: [RelayClientProtocol,client] Received updated SDP answer
Sep 5 08:54:14 lohi media-relay[3381]: [RelayClientProtocol,client] Got initial answer from callee for stream: (audio) 192.168.0.7:8034 (RTP: Unknown, RTCP: Unknown) <-> 192.99.102.4:50036 <-> 192.99.102.4:50038 <-> 192.98.81.151:50200 (RTP: Unknown, RTCP: Unknown)
Sep 5 08:54:14 lohi media-relay[3381]: [mediaproxy.mediacontrol.StreamListenerProtocol (UDP)] Got traffic information for stream: (audio) 192.168.0.7:8034 (RTP: Unknown, RTCP: 192.99.102.3:8035) <-> 192.99.102.4:50036 <-> 192.99.102.4:50038 <-> 192.98.81.151:50200 (RTP: Unknown, RTCP: Unknown)
Sep 5 08:54:14 lohi media-relay[3381]: [mediaproxy.mediacontrol.StreamListenerProtocol (UDP)] Got traffic information for stream: (audio) 192.168.0.7:8034 (RTP: 192.99.102.3:8034, RTCP: 192.99.102.3:8035) <-> 192.99.102.4:50036 <-> 192.99.102.4:50038 <-> 192.98.81.151:50200 (RTP: Unknown, RTCP: Unknown)
Sep 5 08:54:17 lohi media-dispatcher[3367]: [OpenSERControlProtocol,6,] Issuing "remove" command to relay at 127.0.0.1
Sep 5 08:54:17 lohi media-relay[3381]: [RelayClientProtocol,client]
removing session ifnhmfcgodiaxbt at localhost: +35864275274 at tutpro.com
(epnjv) --> +35865551100 at enumin.wirlab.net
More information about the Users
mailing list