Git Product home page Git Product logo

Comments (30)

Jaykah avatar Jaykah commented on July 22, 2024

We are having the exact same problem, but only on outgoing calls from a websocket. RTPEngine latest with OpenSSL 1.0.1j

from rtpengine.

szcom avatar szcom commented on July 22, 2024

Here is the same. Posting log where no audio was heard for 18 seconds past 200 OK

2014-11-17 10:08:00.884873500 INFO: Generating new DTLS certificate
2014-11-17 10:08:00.901986500 INFO: Startup complete, version 3.3.0.0+0~mr3.7.0.0 git-master-19e0281
2014-11-17 10:08:08.759969500 INFO: Got valid command from 10.2.48.106:38329: offer - { "sdp": "v=0
2014-11-17 10:08:08.759972500 o=- 481373464185453675 2 IN IP4 127.0.0.1
2014-11-17 10:08:08.759973500 s=-
2014-11-17 10:08:08.759974500 t=0 0
2014-11-17 10:08:08.759975500 a=group:BUNDLE audio
2014-11-17 10:08:08.759976500 a=msid-semantic:WMS Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:08.759978500 m=audio 1 RTP/SAVPF 111 103 104 0 8 106 105 13 126
2014-11-17 10:08:08.759979500 c=IN IP4 1.1.1.1
2014-11-17 10:08:08.759980500 a=rtcp:1 IN IP4 0.0.0.0
2014-11-17 10:08:08.759998500 a=ice-ufrag:xb4t2/Yn7Z69J6JE
2014-11-17 10:08:08.759999500 a=ice-pwd:l9e5Z+jsuqdeO9xzLqCuFLf0
2014-11-17 10:08:08.760001500 a=ice-options:google-ice
2014-11-17 10:08:08.760002500 a=fingerprint:sha-256 D0:2B:42:41:AE:A1:34:5D:07:B3:D2:A5:C2:E4:54:75:F9:F0:02:9E:47:4E:69:46:6F:F0:04:19:45:39:8 ...
2014-11-17 10:08:08.760003500 INFO: ... 3:E2
2014-11-17 10:08:08.760004500 a=setup:actpass
2014-11-17 10:08:08.760005500 a=mid:audio
2014-11-17 10:08:08.760007500 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
2014-11-17 10:08:08.760013500 a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
2014-11-17 10:08:08.760014500 a=sendrecv
2014-11-17 10:08:08.760015500 a=rtcp-mux
2014-11-17 10:08:08.760016500 a=rtpmap:111 opus/48000/2
2014-11-17 10:08:08.760017500 a=fmtp:111 minptime=10
2014-11-17 10:08:08.760018500 a=rtpmap:103 ISAC/16000
2014-11-17 10:08:08.760019500 a=rtpmap:104 ISAC/32000
2014-11-17 10:08:08.760021500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:08.760022500 a=rtpmap:8 PCMA/8000
2014-11-17 10:08:08.760027500 a=rtpmap:106 CN/32000
2014-11-17 10:08:08.760028500 a=rtpmap:105 CN/16000
2014-11-17 10:08:08.760029500 a=rtpmap:13 CN/8000
2014-11-17 10:08:08.760030500 a=rtpmap:126 telephone-event/8000
2014-11-17 10:08:08.760032500 a=maxptime:60
2014-11-17 10:08:08.760033500 a=ssrc:1249297668 cname:ypA69qQfK6bnqt+1
2014-11-17 10:08:08.760034500 a=ssrc:12 ...
2014-11-17 10:08:08.760046500 INFO: ... 49297668 msid:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf 47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:08.760048500 a=ssrc:1249297668 mslabel:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:08.760049500 a=ssrc:1249297668 label:47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:08.760051500 ", "ICE": "remove", "direction": [ "internal", "external" ], "replace": [ "session-connection" ], "transport-protocol": "RTP/AVP", "call-id": "[email protected]", "received-from": [ "IP4", "10.2.20.86" ], "from-tag": "6565", "command": "offer" }
2014-11-17 10:08:08.760132500 NOTICE: [[email protected]] Creating new call
2014-11-17 10:08:08.760243500 DEBUG: [[email protected]] Opened ports 30000..30001 for media relay
2014-11-17 10:08:08.760303500 DEBUG: [[email protected]] Opened ports 30010..30011 for media relay
2014-11-17 10:08:08.760934500 INFO: [[email protected]] Returning to SIP proxy: d3:sdp761:v=0
2014-11-17 10:08:08.760936500 o=- 481373464185453675 2 IN IP4 127.0.0.1
2014-11-17 10:08:08.760938500 s=-
2014-11-17 10:08:08.760939500 t=0 0
2014-11-17 10:08:08.760940500 a=msid-semantic:WMS Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:08.760941500 m=audio 30000 RTP/AVP 111 103 104 0 8 106 105 13 126
2014-11-17 10:08:08.760943500 c=IN IP4 46.51.202.63
2014-11-17 10:08:08.760944500 a=rtpmap:111 opus/48000/2
2014-11-17 10:08:08.760958500 a=fmtp:111 minptime=10
2014-11-17 10:08:08.760959500 a=rtpmap:103 ISAC/16000
2014-11-17 10:08:08.760960500 a=rtpmap:104 ISAC/32000
2014-11-17 10:08:08.760961500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:08.760962500 a=rtpmap:8 PCMA/8000
2014-11-17 10:08:08.760963500 a=rtpmap:106 CN/32000
2014-11-17 10:08:08.760964500 a=rtpmap:105 CN/16000
2014-11-17 10:08:08.760965500 a=rtpmap:13 CN/8000
2014-11-17 10:08:08.760966500 a=rtpmap:126 telephone-event/8000
2014-11-17 10:08:08.760968500 a=maxptime:60
2014-11-17 10:08:08.760973500 a=ssrc:12 ...
2014-11-17 10:08:08.760974500 INFO: [[email protected]] ... 49297668 cname:ypA69qQfK6bnqt+1
2014-11-17 10:08:08.760976500 a=ssrc:1249297668 msid:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf 47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:08.760978500 a=ssrc:1249297668 mslabel:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:08.760979500 a=ssrc:1249297668 label:47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:08.760981500 a=sendrecv
2014-11-17 10:08:08.761001500 a=rtcp:30001
2014-11-17 10:08:08.761002500 a=rtcp-mux
2014-11-17 10:08:08.761003500 6:result2:oke
2014-11-17 10:08:09.615078500 INFO: Got valid command from 10.2.48.106:57309: answer - { "sdp": "v=0
2014-11-17 10:08:09.615081500 o=- 1164011049 1164011050 IN IP4 213.230.178.8
2014-11-17 10:08:09.615082500 s=SBC call
2014-11-17 10:08:09.615083500 c=IN IP4 213.230.178.8
2014-11-17 10:08:09.615084500 t=0 0
2014-11-17 10:08:09.615085500 m=audio 44740 RTP/AVP 0
2014-11-17 10:08:09.615086500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.615087500 a=ptime:20
2014-11-17 10:08:09.615088500 ", "ICE": "force", "direction": [ "external", "internal" ], "transport-protocol": "RTP/SAVPF", "call-id": "[email protected]", "received-from": [ "IP4", "10.2.18.109" ], "from-tag": "6565", "to-tag": "sbc0506knrharct-CC-1000", "command": "answer" }
2014-11-17 10:08:09.615445500 INFO: [[email protected]] Returning to SIP proxy: d3:sdp503:v=0
2014-11-17 10:08:09.615446500 o=- 1164011049 1164011050 IN IP4 213.230.178.8
2014-11-17 10:08:09.615448500 s=SBC call
2014-11-17 10:08:09.615449500 c=IN IP4 46.51.202.63
2014-11-17 10:08:09.615450500 t=0 0
2014-11-17 10:08:09.615451500 a=ice-lite
2014-11-17 10:08:09.615452500 m=audio 30010 RTP/SAVPF 0
2014-11-17 10:08:09.615453500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.615454500 a=ptime:20
2014-11-17 10:08:09.615455500 a=sendrecv
2014-11-17 10:08:09.615462500 a=rtcp:30011
2014-11-17 10:08:09.615463500 a=setup:active
2014-11-17 10:08:09.615464500 a=fingerprint:sha-1 95:1D:C2:45:11:44:E6:BC:1F:12:22:4E:5D:3D:43:68:29:B7:77:12
2014-11-17 10:08:09.615466500 a=ice-ufrag:Mm17w8q2
2014-11-17 10:08:09.615467500 a=ice-pwd:zCBJTKYrh397TKrG1jYI3nPPKQVe
2014-11-17 10:08:09.615468500 a=candidate:9hAz6JRQDkNhSkIM 1 UDP 2130706431 46.51.202.63 30010 typ host
2014-11-17 10:08:09.615469500 a=candidate:9hAz6JRQDkNhSkIM 2 UDP 213 ...
2014-11-17 10:08:09.615470500 INFO: [[email protected]] ... 0706430 46.51.202.63 30011 typ host
2014-11-17 10:08:09.615477500 6:result2:oke
2014-11-17 10:08:09.622529500 INFO: Got valid command from 10.2.48.106:53821: offer - { "sdp": "v=0
2014-11-17 10:08:09.622531500 o=- 481373464185453675 2 IN IP4 127.0.0.1
2014-11-17 10:08:09.622532500 s=-
2014-11-17 10:08:09.622533500 t=0 0
2014-11-17 10:08:09.622534500 a=group:BUNDLE audio
2014-11-17 10:08:09.622536500 a=msid-semantic:WMS Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:09.622537500 m=audio 1 RTP/SAVPF 111 103 104 0 8 106 105 13 126
2014-11-17 10:08:09.622538500 c=IN IP4 1.1.1.1
2014-11-17 10:08:09.622539500 a=rtcp:1 IN IP4 0.0.0.0
2014-11-17 10:08:09.622551500 a=ice-ufrag:xb4t2/Yn7Z69J6JE
2014-11-17 10:08:09.622552500 a=ice-pwd:l9e5Z+jsuqdeO9xzLqCuFLf0
2014-11-17 10:08:09.622554500 a=ice-options:google-ice
2014-11-17 10:08:09.622555500 a=fingerprint:sha-256 D0:2B:42:41:AE:A1:34:5D:07:B3:D2:A5:C2:E4:54:75:F9:F0:02:9E:47:4E:69:46:6F:F0:04:19:45:39:8 ...
2014-11-17 10:08:09.622556500 INFO: ... 3:E2
2014-11-17 10:08:09.622557500 a=setup:actpass
2014-11-17 10:08:09.622559500 a=mid:audio
2014-11-17 10:08:09.622560500 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
2014-11-17 10:08:09.622565500 a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
2014-11-17 10:08:09.622567500 a=sendrecv
2014-11-17 10:08:09.622568500 a=rtcp-mux
2014-11-17 10:08:09.622569500 a=rtpmap:111 opus/48000/2
2014-11-17 10:08:09.622570500 a=fmtp:111 minptime=10
2014-11-17 10:08:09.622571500 a=rtpmap:103 ISAC/16000
2014-11-17 10:08:09.622572500 a=rtpmap:104 ISAC/32000
2014-11-17 10:08:09.622573500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.622574500 a=rtpmap:8 PCMA/8000
2014-11-17 10:08:09.622580500 a=rtpmap:106 CN/32000
2014-11-17 10:08:09.622581500 a=rtpmap:105 CN/16000
2014-11-17 10:08:09.622582500 a=rtpmap:13 CN/8000
2014-11-17 10:08:09.622583500 a=rtpmap:126 telephone-event/8000
2014-11-17 10:08:09.622584500 a=maxptime:60
2014-11-17 10:08:09.622585500 a=ssrc:1249297668 cname:ypA69qQfK6bnqt+1
2014-11-17 10:08:09.622586500 a=ssrc:12 ...
2014-11-17 10:08:09.622621500 INFO: ... 49297668 msid:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf 47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:09.622623500 a=ssrc:1249297668 mslabel:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:09.622624500 a=ssrc:1249297668 label:47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:09.622625500 a=candidate:554946639 1 udp 2122260223 172.16.10.18 49829 typ host generation 0
2014-11-17 10:08:09.622627500 a=candidate:554946639 2 udp 2122260223 172.16.10.18 49829 typ host generation 0
2014-11-17 10:08:09.622633500 a=candidate:3538251714 1 udp 2122194687 10.168.92.194 64015 typ host generation 0
2014-11-17 10:08:09.622634500 a=candidate:3538251714 2 udp 2122194687 ...
2014-11-17 10:08:09.622636500 INFO: ... 10.168.92.194 64015 typ host generation 0
2014-11-17 10:08:09.622637500 a=candidate:1871719615 1 tcp 1518280447 172.16.10.18 0 typ host tcptype active generation 0
2014-11-17 10:08:09.622639500 a=candidate:1871719615 2 tcp 1518280447 172.16.10.18 0 typ host tcptype active generation 0
2014-11-17 10:08:09.622644500 a=candidate:2623968050 1 tcp 1518214911 10.168.92.194 0 typ host tcptype active generation 0
2014-11-17 10:08:09.622646500 a=candidate:2623968050 2 tcp 1518214911 10.168.92.194 0 typ host tcptype active generation 0
2014-11-17 10:08:09.622648500 a=candidate:3221924268 1 udp 8265471 54.93.189.21 53978 typ relay raddr 134.47.109. ...
2014-11-17 10:08:09.622658500 INFO: ... 182 rport 54662 generation 0
2014-11-17 10:08:09.622659500 a=candidate:3221924268 2 udp 8265471 54.93.189.21 53978 typ relay raddr 134.47.109.182 rport 54662 generation 0
2014-11-17 10:08:09.622661500 ", "ICE": "remove", "direction": [ "internal", "external" ], "replace": [ "session-connection" ], "transport-protocol": "RTP/AVP", "call-id": "[email protected]", "received-from": [ "IP4", "10.2.20.86" ], "from-tag": "6565", "to-tag": "sbc0506knrharct-CC-1000", "command": "offer" }
2014-11-17 10:08:09.622668500 INFO: [[email protected]] Returning to SIP proxy: d3:sdp761:v=0
2014-11-17 10:08:09.622670500 o=- 481373464185453675 2 IN IP4 127.0.0.1
2014-11-17 10:08:09.622676500 s=-
2014-11-17 10:08:09.622677500 t=0 0
2014-11-17 10:08:09.622678500 a=msid-semantic:WMS Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:09.622680500 m=audio 30000 RTP/AVP 111 103 104 0 8 106 105 13 126
2014-11-17 10:08:09.622682500 c=IN IP4 46.51.202.63
2014-11-17 10:08:09.622683500 a=rtpmap:111 opus/48000/2
2014-11-17 10:08:09.622685500 a=fmtp:111 minptime=10
2014-11-17 10:08:09.622686500 a=rtpmap:103 ISAC/16000
2014-11-17 10:08:09.622687500 a=rtpmap:104 ISAC/32000
2014-11-17 10:08:09.622696500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.622697500 a=rtpmap:8 PCMA/8000
2014-11-17 10:08:09.622698500 a=rtpmap:106 CN/32000
2014-11-17 10:08:09.622699500 a=rtpmap:105 CN/16000
2014-11-17 10:08:09.622700500 a=rtpmap:13 CN/8000
2014-11-17 10:08:09.622701500 a=rtpmap:126 telephone-event/8000
2014-11-17 10:08:09.622703500 a=maxptime:60
2014-11-17 10:08:09.622704500 a=ssrc:12 ...
2014-11-17 10:08:09.622715500 INFO: [[email protected]] ... 49297668 cname:ypA69qQfK6bnqt+1
2014-11-17 10:08:09.622716500 a=ssrc:1249297668 msid:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf 47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:09.622718500 a=ssrc:1249297668 mslabel:Fw0U6s3IrLNNvJfDvzZcbkD4EaeX5sBwPXYf
2014-11-17 10:08:09.622719500 a=ssrc:1249297668 label:47a2dda9-4fed-4a9c-be62-34042dc1f386
2014-11-17 10:08:09.622721500 a=sendrecv
2014-11-17 10:08:09.622722500 a=rtcp:30001
2014-11-17 10:08:09.622727500 a=rtcp-mux
2014-11-17 10:08:09.622729500 6:result2:oke
2014-11-17 10:08:09.628220500 ERR: [[email protected] port 30000] SRTP output wanted, but no crypto suite was negotiated
2014-11-17 10:08:09.896155500 INFO: Got valid command from 10.2.48.106:38329: answer - { "sdp": "v=0
2014-11-17 10:08:09.896158500 o=- 1164011049 1164011051 IN IP4 213.230.178.8
2014-11-17 10:08:09.896159500 s=SBC call
2014-11-17 10:08:09.896160500 c=IN IP4 213.230.178.8
2014-11-17 10:08:09.896161500 t=0 0
2014-11-17 10:08:09.896162500 m=audio 44740 RTP/AVP 0
2014-11-17 10:08:09.896163500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.896165500 a=ptime:20
2014-11-17 10:08:09.896166500 ", "ICE": "force", "direction": [ "external", "internal" ], "transport-protocol": "RTP/SAVPF", "call-id": "[email protected]", "received-from": [ "IP4", "10.2.18.109" ], "from-tag": "6565", "to-tag": "sbc0506knrharct-CC-1000", "command": "answer" }
2014-11-17 10:08:09.896305500 INFO: [[email protected]] Returning to SIP proxy: d3:sdp503:v=0
2014-11-17 10:08:09.896306500 o=- 1164011049 1164011051 IN IP4 213.230.178.8
2014-11-17 10:08:09.896308500 s=SBC call
2014-11-17 10:08:09.896309500 c=IN IP4 46.51.202.63
2014-11-17 10:08:09.896310500 t=0 0
2014-11-17 10:08:09.896311500 a=ice-lite
2014-11-17 10:08:09.896312500 m=audio 30010 RTP/SAVPF 0
2014-11-17 10:08:09.896314500 a=rtpmap:0 PCMU/8000
2014-11-17 10:08:09.896315500 a=ptime:20
2014-11-17 10:08:09.896316500 a=sendrecv
2014-11-17 10:08:09.896326500 a=rtcp:30011
2014-11-17 10:08:09.896328500 a=setup:active
2014-11-17 10:08:09.896330500 a=fingerprint:sha-1 95:1D:C2:45:11:44:E6:BC:1F:12:22:4E:5D:3D:43:68:29:B7:77:12
2014-11-17 10:08:09.896331500 a=ice-ufrag:Mm17w8q2
2014-11-17 10:08:09.896333500 a=ice-pwd:zCBJTKYrh397TKrG1jYI3nPPKQVe
2014-11-17 10:08:09.896335500 a=candidate:9hAz6JRQDkNhSkIM 1 UDP 2130706431 46.51.202.63 30010 typ host
2014-11-17 10:08:09.896336500 a=candidate:9hAz6JRQDkNhSkIM 2 UDP 213 ...
2014-11-17 10:08:09.896338500 INFO: [[email protected]] ... 0706430 46.51.202.63 30011 typ host
2014-11-17 10:08:09.896345500 6:result2:oke
2014-11-17 10:08:13.008169500 INFO: [[email protected] port 30000] Confirmed peer address as 213.230.178.8:44740
2014-11-17 10:08:13.313273500 ERR: [[email protected] port 30001] SRTCP output wanted, but no crypto suite was negotiated
2014-11-17 10:08:13.313275500 INFO: [[email protected] port 30001] Confirmed peer address as 213.230.178.8:44741
2014-11-17 10:08:24.008253500 ERR: [[email protected] port 30000] SRTP output wanted, but no crypto suite was negotiated
2014-11-17 10:08:25.154235500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:25.154312500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:25.803208500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:25.803234500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:25.803237500 INFO: [[email protected] port 30010] Confirmed peer address as 54.93.189.21:53978
2014-11-17 10:08:25.803334500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:25.803353500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:25.803365500 INFO: [[email protected] port 30011] Confirmed peer address as 54.93.189.21:53978
2014-11-17 10:08:26.745947500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:26.745970500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:26.745982500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:26.746017500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:27.773020500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:27.773043500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:28.348028500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:28.348063500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:28.700732500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:28.700804500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:28.700866500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:28.700885500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:29.611154500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:29.611233500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:29.611301500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:29.611357500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:30.637088500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:30.637127500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:30.642678500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:30.642698500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:31.581838500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:31.581898500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:31.581962500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:31.582015500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:32.495065500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:32.495090500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:32.495178500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:32.495196500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:32.513450500 ERR: [[email protected] port 30001] SRTCP output wanted, but no crypto suite was negotiated
2014-11-17 10:08:33.600783500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:33.600804500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:33.601141500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:33.601161500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:34.424342500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:34.424368500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:34.424462500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:34.424481500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:35.451285500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:35.451347500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:35.458506500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:35.458529500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:36.483200500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:36.483224500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:36.483236500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:36.483269500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:37.313124500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:37.313147500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:37.362874500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:37.362907500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:38.311840500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:38.311864500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:38.312002500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:38.312021500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:39.008402500 ERR: [[email protected] port 30000] SRTP output wanted, but no crypto suite was negotiated
2014-11-17 10:08:39.589784500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:39.589840500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:39.589905500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:39.589969500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:40.372713500 INFO: [[email protected] port 30010] DTLS: Peer certificate accepted
2014-11-17 10:08:40.373997500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:40.374029500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:40.374062500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:40.374101500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:40.558430500 DEBUG: [[email protected] port 30010] DTLS handshake successful
2014-11-17 10:08:40.558488500 INFO: [[email protected] port 30010] DTLS-SRTP successfully negotiated
2014-11-17 10:08:40.744904500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:40.744927500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:40.745049500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:40.745066500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:41.138299500 INFO: [[email protected] port 30011] DTLS: Peer certificate accepted
2014-11-17 10:08:41.188537500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:41.188632500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:41.188709500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:41.188734500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:41.295728500 DEBUG: [[email protected] port 30011] DTLS handshake successful
2014-11-17 10:08:41.295783500 INFO: [[email protected] port 30011] DTLS-SRTP successfully negotiated
2014-11-17 10:08:41.674190500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:41.674212500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:41.674447500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:41.674467500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:42.133281500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:42.133332500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:42.133374500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:42.133464500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:42.607795500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:42.607822500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:42.607985500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:42.608005500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:43.103919500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:43.103944500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:43.104075500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:43.104131500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:43.588922500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:43.588941500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:43.589182500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:43.589210500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:44.072876500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:44.072957500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:44.073050500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:44.073071500 INFO: [[email protected] port 30011] STUN: using this candidate
2014-11-17 10:08:44.557615500 INFO: [[email protected] port 30010] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:44.557649500 INFO: [[email protected] port 30010] STUN: using this candidate
2014-11-17 10:08:44.577052500 INFO: [[email protected] port 30011] Successful STUN binding request from 54.93.189.21:53978
2014-11-17 10:08:44.577075500 INFO: [[email protected] port 30011] STUN: using this candidate

from rtpengine.

szcom avatar szcom commented on July 22, 2024

After tcpdumping on rtpengine there are two bad news:

  1. In my setup only media path to rtpengine is via STURN. Browser checks STURN possibility at last and RTP packets appear late on rtpengine. Rtpengine keeps sending DTLS client hello to source address of SIP given by kamailio and not mentioned in candidates list. Until it gets STUN bind request relayed over STURN server.
  2. Rtpengine when acting as DTLS client (that is webrtc to SIP call) does retry but interval window grows as power of 2: retry after 1,2,4,8,16,32, etc seconds.

Combination of 1&2 amounts to the total delay.

To remedy 1, I will try to set m/c line with TURN candidates in reINVITE not relying on rtpengine being able to handle dtls for 'bundled' streams.

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

In all cases I've seen so far, this is caused by the clients (browsers) not responding to the DTLS hello packets right away as they should, but rather ignoring them for several seconds. You should be able to see this clearly in Wireshark or the such.

I don't think that there's anything rtpengine can do about this, but let me know if you have a suggestion.

from rtpengine.

caruizdiaz avatar caruizdiaz commented on July 22, 2024

Hi Richard,

what about emitting an event when the negotiation is done and the audio is ready to flow? Since we don't have control over what the browser does, we can at least make the user more "comfortable" indicating him when he can start talking.

I'm thinking that maybe rtpengine (the service) can notify the commander (rtpengine, the Kamailio module) about what's going on so we can take actions based on the results.

Thanks!

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

Right now there's no feedback mechanism at all, so this isn't something trivial to implement. Feedback to the controlling service could be a nice feature to have in the future, but requires serious thought to design and implement properly.

from rtpengine.

caruizdiaz avatar caruizdiaz commented on July 22, 2024

I will try to allocate some time to study the codebase and come up with a solution proposal. I believe this could be a serious issue in production, since the delay can really affect the overall sensation of stability that the service offers.

Thank you for your suggestions Richard :)

from rtpengine.

szcom avatar szcom commented on July 22, 2024

what about trying to setup DTLS on regular short intervals instead of exponentially growing interval window?

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

OpenSSL handles that part. I don't know of any way to influence this behaviour.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

My guess is that rtpengine taking DTLS-'passive' role may improve the situation. It will leave SSL client role to the browser and in what I have seen with calls going in another direction this works fast.
If you ask me ICE-lite and "DTLS - active role" do not make sense in the same box while ICE-lite and DTLS-passive are on the same side of the fence/NAT.
Something to think about.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

can try to verify it by changing a=setup:actpass to a=setup:active in the SDP offer.

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

Good point about ICE-lite. Perhaps a solution would be to delay DTLS startup until an ICE "use candidate" packet has been received. Or even better, aim for a full ICE implementation. Even though I'm not certain whether either of these would actually fix the problem, as I'm pretty sure I've seen browsers ignoring the DTLS hello even after they've completed ICE. Also, the RFC suggests that DTLS should be allowed to do its handshake while ICE is still doing connectivity checks.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

Things definitely improved by forcing rtpengine into DTLS passive(server) role. No noticeable delay when browser was on UDP opened network. I will check UDP blocked case scenario later.

I did replaced a=setup:actpass in the offer to a=setup:active.

from rtpengine.

Jaykah avatar Jaykah commented on July 22, 2024

@szcom Hi Sergey, did you change that by modifying /daemon/sdp.c? I'd be happy to help testing this to speed up the process of getting it into master.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

@Jaykah Hi Jaykah, no i modified SDP before it went to kamailio and then to rtpengine. Looks like it is call.c to patch to prefer 'passive' role when possible:

    if (MEDIA_ISSET(media, DTLS) && !PS_ISSET(ps, FALLBACK_RTCP)) {
        active = (PS_ISSET(ps, FILLED) && MEDIA_ISSET(media, SETUP_ACTIVE));
        dtls_connection_init(ps, active, call->dtls_cert);

from rtpengine.

Jaykah avatar Jaykah commented on July 22, 2024

@szcom I have tried changing that, but it did not help. However, changing

    else {
        /* if we can be active, we will, otherwise we'll be passive */
        if (MEDIA_ISSET(this, SETUP_ACTIVE))
            MEDIA_CLEAR(this, SETUP_PASSIVE);
    }

to

    else {
        /* if we can be active, we will, otherwise we'll be passive */
        if (MEDIA_ISSET(this, SETUP_PASSIVE))
            MEDIA_CLEAR(this, SETUP_ACTIVE);
    }

has made a difference (or so it seems). I am unfamiliar with C, so that was my best guess.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

I see clear improvements for all of my test scenarios where browser being on different type of nets and calling to SIP world.
@Jaykah here is the patch to prefer DTLS-passive mode when remote can be either passive or active( offered a=setup:actpass)

diff --git a/daemon/call.c b/daemon/call.c
index 548f98c..d1297ef 100644
--- a/daemon/call.c
+++ b/daemon/call.c
@@ -1738,6 +1738,13 @@ static int __init_stream(struct packet_stream *ps) {

                if (MEDIA_ISSET(media, DTLS) && !PS_ISSET(ps, FALLBACK_RTCP)) {
                        active = (PS_ISSET(ps, FILLED) && MEDIA_ISSET(media, SETUP_ACTIVE));
+                       if (PS_ISSET(ps, FILLED) && MEDIA_ISSET(media, SETUP_ACTIVE)
+                                       && MEDIA_ISSET(media, SETUP_PASSIVE))
+                       {
+                               ilog(LOG_DEBUG, "prefer DTLS passive role when remote is actpass");
+                               active = 0;
+                       }
+
                        dtls_connection_init(ps, active, call->dtls_cert);

                        if (!PS_ISSET(ps, FINGERPRINT_VERIFIED) && media->fingerprint.hash_func
@@ -1884,7 +1891,10 @@ static void __generate_crypto(const struct sdp_ng_flags *flags, struct call_medi
                MEDIA_SET(this, SETUP_ACTIVE);
        }
        else {
-               /* if we can be active, we will, otherwise we'll be passive */
+               /* if remote is actpass - stay passive  */
+               if (MEDIA_ISSET(this, SETUP_ACTIVE) && MEDIA_ISSET(this, SETUP_PASSIVE))
+                       MEDIA_CLEAR(this, SETUP_ACTIVE);
+               /* if we can be dactive, we will, otherwise we'll be passive */
                if (MEDIA_ISSET(this, SETUP_ACTIVE))
                        MEDIA_CLEAR(this, SETUP_PASSIVE);
        }

from rtpengine.

Jaykah avatar Jaykah commented on July 22, 2024

WFM, can we push it to master?

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

I'll convert it into an option, as I don't think it's right to unconditionally prefer passive in all cases. Furthermore, a proper fix would be preferable to a workaround like this, such as a full ICE implementation.

from rtpengine.

caruizdiaz avatar caruizdiaz commented on July 22, 2024

That would do the trick :). Thank you Richard.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

@rfuchs Richard, It prefers passive only when other end signals actpass. And I think the option(really needed?) should be 'on' by default until full ICE implemented or we get this issue repopened.
I also have a doubts about logic how rtpengine selects its own DTLS role with
active = (PS_ISSET(ps, FILLED) && MEDIA_ISSET(media, SETUP_ACTIVE));
This means rtpengine's role == what comes in a=setup: from remote. While it should be an opposite of the remote's role. It worked so far since browser typically offers actpass in a=setup and either choice is possible for rtpengine. When this is cleaned the workaround patch can be less verbose I guess.

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

The active/passive flags are from rtpengine's POV, so this is correct.

        /* active and passive are also from our POV */
        tmp = other_media->media_flags;
        bf_copy(&other_media->media_flags, MEDIA_FLAG_SETUP_PASSIVE,
                &sp->sp_flags, SP_FLAG_SETUP_ACTIVE);
        bf_copy(&other_media->media_flags, MEDIA_FLAG_SETUP_ACTIVE,
                &sp->sp_flags, SP_FLAG_SETUP_PASSIVE);

from rtpengine.

szcom avatar szcom commented on July 22, 2024

@rfuchs Richard how can I make kamailio/rtpproxy-ng to signal DTLS=passive when doing rtpproxy_offer("ie-spc")?

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

You're gonna have to switch to the newer rtpengine module with extended options, or leave it hard coded as you have.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

Sorry, but I did not understand. I am running kamailio+rtpproxy-ng on host A and rtpengine on host B. My understanding that host A should send offer to host B, and this offer must have DTLS=passive. But then rtpproxy-ng does not have a flag that would map to DTLS=passive(according to this http://kamailio.org/docs/modules/4.2.x/modules/rtpproxy-ng.html)

I can update rtpengine from master but I am puzzled how to generate DTLS=passive on host A and send it over to host B.

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

Newer Kamailio has obsoleted rtpproxy-ng in favour of rtpengine which supports extended (spelled out) options. There you can simply add DTLS=passive to the list.

http://kamailio.org/docs/modules/4.3.x/modules/rtpengine.html#rtpengine.f.rtpengine_offer

from rtpengine.

rfuchs avatar rfuchs commented on July 22, 2024

I've added a command line switch --dtls-passive to make this easier for legacy users.

from rtpengine.

szcom avatar szcom commented on July 22, 2024

Thank you!

from rtpengine.

caruizdiaz avatar caruizdiaz commented on July 22, 2024

Both FF and Chrome were updated between yesterday and today, and with DTLS passive negotiation sometimes I get no audio in my WEBRTC calls browser to browser.

Switching back to the previous configuration seems to fix the problem.

from rtpengine.

caruizdiaz avatar caruizdiaz commented on July 22, 2024

It happens in all browser to browser calls subjected to the update. It does not happen with browser to softphone.

from rtpengine.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.