Edge ICE improper Transaction Id usage

Issue #14544363 • Assigned to Frank L.

Details

Author
Paul G.
Created
Nov 6, 2017
Privacy
This issue is public.
Reports
Reported by 1 person

Sign in to watch or report this issue.

Steps to reproduce

Edge’s ICE Agent is using transaction id’s incorrectly. The same transaction id is being used for duplicate requests which consist of different content. As shown below from the server log, the same id is used for two similar, but distinct binding requests:

2017-11-06 09:43:38,897 [NioProcessor-19] INFO  org.ice4j.ice.Component - Add remote candidate for media-0.RTP: 10.0.0.13:62326/udp/host
2017-11-06 09:43:38,900 [NioProcessor-19] INFO  org.ice4j.ice.Component - Add remote candidate for media-0.RTP: 10.0.0.13:62326/udp/host

2017-11-06 09:43:38,916 [Stun4J Message Processor] DEBUG org.ice4j.message.Message - decode - offset: 0 length: 112
0001005C2112A442F9C463F2B125E2CD57CE585E00060013366D683772316275393673656C6B3A68492F6200002400046EFFFEFF80290008000000006B56DC228054000131000000807000040000000300080014E9BFB618A25B5CBD88A33826E52BFFC79F4A332880280004BAA0F7E7

2017-11-06 09:43:38,935 [NioProcessor-19] INFO  org.ice4j.ice.Agent - Start ICE connectivity establishment. Local ufrag 6mh7r1bu96selk
2017-11-06 09:43:38,945 [NioProcessor-19] INFO  org.ice4j.ice.Agent - Init checklist for stream media-0

2017-11-06 09:43:38,946 [Stun4J Message Processor] DEBUG org.ice4j.message.Message - decode - offset: 0 length: 112
0001005C2112A442F9C463F2B125E2CD57CE585E00060014366D683772316275393673656C6B3A68492F6200002400046EFFFEFF80290008000000006B56DC22805400043100000080700004000000030008001496388CE4A8B73211AADE1C025A33392D1AFCF2A580280004488BA4CA

2017-11-06 09:43:38,983 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - Received a message on 10.0.0.13:49152/udp of type: BINDING-REQUEST
2017-11-06 09:43:38,950 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - Received a message on 10.0.0.13:49152/udp of type: BINDING-REQUEST
2017-11-06 09:43:38,990 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - parsing request
2017-11-06 09:43:38,981 [NioProcessor-19] TRACE org.ice4j.ice.IceMediaStream - Checklist initialized.
2017-11-06 09:43:38,985 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - parsing request
2017-11-06 09:43:38,992 [Stun4J Message Processor] DEBUG org.ice4j.stack.StunStack - Username length: 20 data length: 20
2017-11-06 09:43:38,998 [Stun4J Message Processor] WARN  org.ice4j.stack.StunStack - Event server transaction id: 0xF9C463F2B125E2CD57CE585E rfc3489: false
2017-11-06 09:43:39,000 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - existing transaction not found
2017-11-06 09:43:38,992 [Stun4J Message Processor] DEBUG org.ice4j.stack.StunStack - Username length: 19 data length: 19
2017-11-06 09:43:39,028 [Stun4J Message Processor] DEBUG org.ice4j.BaseStunMessageEvent - getTransactionID: null rfc3489: null
2017-11-06 09:43:38,992 [NioProcessor-19] INFO  org.ice4j.ice.Agent - ICE state changed from Waiting to Running. Local ufrag 6mh7r1bu96selk
2017-11-06 09:43:39,031 [Stun4J Message Processor] WARN  org.ice4j.stack.StunStack - Event server transaction id: 0xF9C463F2B125E2CD57CE585E rfc3489: false
2017-11-06 09:43:39,035 [Stun4J Message Processor] WARN  org.ice4j.stack.StunStack - Stored server transaction id: 0xF9C463F2B125E2CD57CE585E rfc3489: false
2017-11-06 09:43:39,036 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - found an existing transaction
2017-11-06 09:43:39,037 [Stun4J Message Processor] TRACE org.ice4j.stack.StunStack - Response retransmitted
2017-11-06 09:43:39,010 [Stun4J Message Processor] DEBUG org.ice4j.stack.StunStack - validateMessageIntegrity username: 6mh7r1bu96selk:hI/b

If the errant request was not sent, the process would most likely not fail or cause additional processing where its not required. In the block above, the correct binding request is the second one with a username length of 19.

Lastly, here is the browser console for further information.

HTML1300: Navigation occurred.
subscribe
Current window: localhost/webrtcexamples/test/subscribe
Browser: {
  "browser": "edge",
  "version": 15063
}
testbed-config.js (5,5)
Selected ICE servers: [
  {
    "urls": "stun:stun2.l.google.com:19302"
  }
]
testbed-config.js (117,5)
2017-11-06T17:44:53.493Z - [red5pro-sdk] debug: (Red5ProSubscriber) [orderupdate]: rtc,rtmp,hls
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.495Z - [red5pro-sdk] debug: (Red5ProSubscriber) [init]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.497Z - [red5pro-sdk] debug: (RTCSubscriber) [disconnect]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.574Z - [red5pro-sdk] info: (R5ProSubscriptionSocket) [websocketopen]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.609Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "data": {
    "type": "status",
    "code": "NetConnection.Connect.Success"
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.611Z - [red5pro-sdk] debug: (Red5ProSubscriber) [init:success]: subscriber found RTC
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.621Z - [red5pro-sdk] debug: (R5ProPlaybackView) [attachsubscriber]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.622Z - [red5pro-sdk] debug: (RTCSubscriber) [requestavailability]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.624Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "isAvailable": "aaa"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.630Z - [red5pro-sdk] debug: (RTCSourceHandler) [addsource]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.632Z - [red5pro-sdk] debug: (PlaybackControls) [decorate]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.634Z - [red5pro-sdk] debug: (ControlSlider::volume) [init]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.638Z - [red5pro-sdk] debug: (ControlSlider::volume::seek) [init]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.643Z - [red5pro-sdk] debug: (PlaybackControls) [setState]: Playback.IDLE
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.653Z - [red5pro-sdk] debug: (PlaybackControls) [setAsVOD]: false
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.674Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "isAvailable": true,
  "streamName": "aaa"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.675Z - [red5pro-sdk] debug: (RTCSubscriber) [onstreamavailable]: {
  "isAvailable": true,
  "streamName": "aaa"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.676Z - [red5pro-sdk] debug: (RTCSubscriber) [connect]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.677Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [teardown]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.678Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peerconnection:setup]: {
  "iceServers": [
    {
      "urls": "stun:stun2.l.google.com:19302"
    }
  ],
  "iceCandidatePoolSize": 2,
  "bundlePolicy": "max-bundle"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:53.683Z - [red5pro-sdk] debug: (RTCSubscriber) [requestoffer]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Offer.Start.
index.js (62,7)
2017-11-06T17:44:53.687Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "requestOffer": "aaa",
  "requestId": "subscriber-961b"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.279Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "requestId": "subscriber-961b",
  "data": {
    "type": "status",
    "message": "Stream is registered"
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.280Z - [red5pro-sdk] debug: (RTCSubscriber) [subscriberstatus] - {
  "type": "status",
  "message": "Stream is registered"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.282Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "data": {
    "sdp": {
      "type": "offer",
      "sdp": "v=0\no=red5pro_aaa_subscriber-961b 8517991218495 1 IN IP4 0.0.0.0\ns=-\nt=0 0\na=msid-semantic:WMS 66ca68b91d63711e\na=group:BUNDLE audio video\na=ice-options:trickle\nm=audio 9 UDP/TLS/RTP/SAVPF 111\nc=IN IP4 0.0.0.0\na=rtpmap:111 opus/48000/2\na=ice-ufrag:7ovfa1bu96uoh4\na=ice-pwd:4134k042vo4lt0rvp61p4ondnj\na=fingerprint:sha-256 62:C8:0C:B0:21:7A:37:D5:37:6D:35:8A:85:90:67:FE:CF:93:FC:33:B0:82:24:71:92:D2:FE:46:96:2E:5D:5A\na=setup:actpass\na=mid:audio\na=sendonly\na=rtcp-mux\na=rtcp-rsize\na=fmtp:111 minptime=10;useinbandfec=1;maxplaybackrate=48000;stereo=1\na=msid:66ca68b91d63711e a1df5658-eb0a-4b1b-a8d4-c52dae9e3954\na=ssrc:1029468307 cname:aaa\na=ssrc:1029468307 msid:66ca68b91d63711e a1df5658-eb0a-4b1b-a8d4-c52dae9e3954\na=candidate:candidate:2 1 udp 1694498815 71.222.31.11 49153 typ srflx raddr 10.0.0.13 rport 49153\na=candidate:candidate:1 1 udp 2130706431 10.0.0.13 49153 typ host\na=end-of-candidates\nm=video 9 UDP/TLS/RTP/SAVPF 126\nc=IN IP4 0.0.0.0\na=rtpmap:126 H264/90000\na=ice-ufrag:7ovfa1bu96uoh4\na=ice-pwd:4134k042vo4lt0rvp61p4ondnj\na=fingerprint:sha-256 62:C8:0C:B0:21:7A:37:D5:37:6D:35:8A:85:90:67:FE:CF:93:FC:33:B0:82:24:71:92:D2:FE:46:96:2E:5D:5A\na=setup:actpass\na=mid:video\na=sendonly\na=rtcp-mux\na=rtcp-rsize\na=fmtp:126 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\na=rtcp-fb:126 goog-remb\na=rtcp-fb:126 ccm tmmbr\na=msid:66ca68b91d63711e a23b9c1a-ae71-4db8-af42-c8fc3d6a1d4f\na=ssrc:3301432860 cname:aaa\na=ssrc:3301432860 msid:66ca68b91d63711e a23b9c1a-ae71-4db8-af42-c8fc3d6a1d4f\n"
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.285Z - [red5pro-sdk] debug: (RTCSubscriber) [onsdpoffer]: {
  "sdp": {
    "type": "offer",
    "sdp": "v=0\no=red5pro_aaa_subscriber-961b 8517991218495 1 IN IP4 0.0.0.0\ns=-\nt=0 0\na=msid-semantic:WMS 66ca68b91d63711e\na=group:BUNDLE audio video\na=ice-options:trickle\nm=audio 9 UDP/TLS/RTP/SAVPF 111\nc=IN IP4 0.0.0.0\na=rtpmap:111 opus/48000/2\na=ice-ufrag:7ovfa1bu96uoh4\na=ice-pwd:4134k042vo4lt0rvp61p4ondnj\na=fingerprint:sha-256 62:C8:0C:B0:21:7A:37:D5:37:6D:35:8A:85:90:67:FE:CF:93:FC:33:B0:82:24:71:92:D2:FE:46:96:2E:5D:5A\na=setup:actpass\na=mid:audio\na=sendonly\na=rtcp-mux\na=rtcp-rsize\na=fmtp:111 minptime=10;useinbandfec=1;maxplaybackrate=48000;stereo=1\na=msid:66ca68b91d63711e a1df5658-eb0a-4b1b-a8d4-c52dae9e3954\na=ssrc:1029468307 cname:aaa\na=ssrc:1029468307 msid:66ca68b91d63711e a1df5658-eb0a-4b1b-a8d4-c52dae9e3954\na=candidate:candidate:2 1 udp 1694498815 71.222.31.11 49153 typ srflx raddr 10.0.0.13 rport 49153\na=candidate:candidate:1 1 udp 2130706431 10.0.0.13 49153 typ host\na=end-of-candidates\nm=video 9 UDP/TLS/RTP/SAVPF 126\nc=IN IP4 0.0.0.0\na=rtpmap:126 H264/90000\na=ice-ufrag:7ovfa1bu96uoh4\na=ice-pwd:4134k042vo4lt0rvp61p4ondnj\na=fingerprint:sha-256 62:C8:0C:B0:21:7A:37:D5:37:6D:35:8A:85:90:67:FE:CF:93:FC:33:B0:82:24:71:92:D2:FE:46:96:2E:5D:5A\na=setup:actpass\na=mid:video\na=sendonly\na=rtcp-mux\na=rtcp-rsize\na=fmtp:126 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\na=rtcp-fb:126 goog-remb\na=rtcp-fb:126 ccm tmmbr\na=msid:66ca68b91d63711e a23b9c1a-ae71-4db8-af42-c8fc3d6a1d4f\na=ssrc:3301432860 cname:aaa\na=ssrc:3301432860 msid:66ca68b91d63711e a23b9c1a-ae71-4db8-af42-c8fc3d6a1d4f\n"
  }
}
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Offer.End.
index.js (62,7)
2017-11-06T17:44:54.288Z - [red5pro-sdk] debug: (RTCSubscriber) [requestanswer]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.289Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [createanswer]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.334Z - [red5pro-sdk] debug: (RTCSubscriber) [onsdpsuccess]: undefined
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.336Z - [red5pro-sdk] debug: (RTCSubscriber) [onsdpsuccess]: undefined
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.337Z - [red5pro-sdk] debug: (RTCSubscriber) [onanswercreated]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.338Z - [red5pro-sdk] debug: (RTCSubscriber) [> sendanswer]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.339Z - [red5pro-sdk] debug: (RTCSubscriber) [sendanswer]: streamname(aaa), subscriptionid(subscriber-961b)
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Answer.Start.
index.js (62,7)
[SubscriberStatus] WebRTC.Answer.Start: {
  "type": "answer",
  "sdp": "v=0\r\no=thisisadapterortc 38325745037483605 0 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 minptime=10;useinbandfec=1;maxplaybackrate=48000;stereo=1\r\na=rtcp-mux\r\na=ice-ufrag:Vc7Q\r\na=ice-pwd:EGdGwPgHhFg7d83psP4XkBtT\r\na=setup:active\r\na=fingerprint:sha-256 1B:88:D2:1B:BC:C1:09:F2:80:A8:7F:F3:8B:CE:7C:F4:C5:A1:5D:FA:DF:FE:35:7A:DC:D1:FF:0B:60:6D:91:29\r\na=mid:audio\r\nb=AS:50\r\na=recvonly\r\na=ssrc:2002 cname:s42cj54nm0\r\na=rtcp-rsize\r\nm=video 9 UDP/TLS/RTP/SAVPF 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=rtpmap:126 H264/90000\r\na=fmtp:126 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtcp-fb:126 goog-remb\r\na=rtcp-mux\r\na=ice-ufrag:Vc7Q\r\na=ice-pwd:EGdGwPgHhFg7d83psP4XkBtT\r\na=setup:active\r\na=fingerprint:sha-256 1B:88:D2:1B:BC:C1:09:F2:80:A8:7F:F3:8B:CE:7C:F4:C5:A1:5D:FA:DF:FE:35:7A:DC:D1:FF:0B:60:6D:91:29\r\na=mid:video\r\nb=AS:256\r\na=recvonly\r\na=ssrc:4004 cname:s42cj54nm0\r\na=rtcp-rsize\r\n"
}
subscription-status.js (46,11)
2017-11-06T17:44:54.342Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "handleAnswer": "aaa",
  "requestId": "subscriber-961b",
  "data": {
    "sdp": {
      "type": "answer",
      "sdp": "v=0\r\no=thisisadapterortc 38325745037483605 0 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 minptime=10;useinbandfec=1;maxplaybackrate=48000;stereo=1\r\na=rtcp-mux\r\na=ice-ufrag:Vc7Q\r\na=ice-pwd:EGdGwPgHhFg7d83psP4XkBtT\r\na=setup:active\r\na=fingerprint:sha-256 1B:88:D2:1B:BC:C1:09:F2:80:A8:7F:F3:8B:CE:7C:F4:C5:A1:5D:FA:DF:FE:35:7A:DC:D1:FF:0B:60:6D:91:29\r\na=mid:audio\r\nb=AS:50\r\na=recvonly\r\na=ssrc:2002 cname:s42cj54nm0\r\na=rtcp-rsize\r\nm=video 9 UDP/TLS/RTP/SAVPF 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=rtpmap:126 H264/90000\r\na=fmtp:126 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtcp-fb:126 goog-remb\r\na=rtcp-mux\r\na=ice-ufrag:Vc7Q\r\na=ice-pwd:EGdGwPgHhFg7d83psP4XkBtT\r\na=setup:active\r\na=fingerprint:sha-256 1B:88:D2:1B:BC:C1:09:F2:80:A8:7F:F3:8B:CE:7C:F4:C5:A1:5D:FA:DF:FE:35:7A:DC:D1:FF:0B:60:6D:91:29\r\na=mid:video\r\nb=AS:256\r\na=recvonly\r\na=ssrc:4004 cname:s42cj54nm0\r\na=rtcp-rsize\r\n"
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.347Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) Peer Add Stream: [object MediaStream]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Answer.End.
index.js (62,7)
2017-11-06T17:44:54.350Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) Peer Add Stream: [object MediaStream]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.352Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) Peer Add Stream: [object MediaStream]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.418Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicegatheringstatechange] - State: gathering
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.419Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicecandidate] - Peer Candidate: [object Object]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.420Z - [red5pro-sdk] debug: (RTCSubscriber) [onicecandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.End.
index.js (62,7)
2017-11-06T17:44:54.423Z - [red5pro-sdk] debug: (RTCSubscriber) [sendcandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.Start.
index.js (62,7)
[SubscriberStatus] WebRTC.Candidate.Start: {
  "sdpMid": "audio",
  "sdpMLineIndex": 0,
  "candidate": "candidate:1 1 UDP 2130706431 10.0.0.13 52354 typ host"
}
subscription-status.js (54,11)
2017-11-06T17:44:54.426Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "handleCandidate": "aaa",
  "requestId": "subscriber-961b",
  "data": {
    "candidate": {
      "sdpMid": "audio",
      "sdpMLineIndex": 0,
      "candidate": "candidate:1 1 UDP 2130706431 10.0.0.13 52354 typ host"
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.428Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicecandidate] - Peer Candidate: [object Object]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.429Z - [red5pro-sdk] debug: (RTCSubscriber) [onicecandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.End.
index.js (62,7)
2017-11-06T17:44:54.432Z - [red5pro-sdk] debug: (RTCSubscriber) [sendcandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.Start.
index.js (62,7)
[SubscriberStatus] WebRTC.Candidate.Start: {
  "sdpMid": "audio",
  "sdpMLineIndex": 0,
  "candidate": "candidate:2 1 UDP 33553919 2001:0:9d38:953c:f:30e4:b821:e0f4 53652 typ host"
}
subscription-status.js (54,11)
2017-11-06T17:44:54.435Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "handleCandidate": "aaa",
  "requestId": "subscriber-961b",
  "data": {
    "candidate": {
      "sdpMid": "audio",
      "sdpMLineIndex": 0,
      "candidate": "candidate:2 1 UDP 33553919 2001:0:9d38:953c:f:30e4:b821:e0f4 53652 typ host"
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.436Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicecandidate] - Peer Candidate: [object Object]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.437Z - [red5pro-sdk] debug: (RTCSubscriber) [onicecandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.End.
index.js (62,7)
2017-11-06T17:44:54.439Z - [red5pro-sdk] debug: (RTCSubscriber) [sendcandidate]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.Candidate.Start.
index.js (62,7)
[SubscriberStatus] WebRTC.Candidate.Start: {
  "sdpMid": "audio",
  "sdpMLineIndex": 0,
  "candidate": "candidate:3 1 TCP 1684798463 10.0.0.13 52354 typ srflx raddr 10.0.0.13 rport 52354 tcptype active"
}
subscription-status.js (54,11)
2017-11-06T17:44:54.442Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "handleCandidate": "aaa",
  "requestId": "subscriber-961b",
  "data": {
    "candidate": {
      "sdpMid": "audio",
      "sdpMLineIndex": 0,
      "candidate": "candidate:3 1 TCP 1684798463 10.0.0.13 52354 typ srflx raddr 10.0.0.13 rport 52354 tcptype active"
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.444Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicecandidate] - Peer Candidate: undefined
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.444Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.onicegatheringstatechange] - State: complete
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.445Z - [red5pro-sdk] debug: ([icecandidategathering:end]) undefined
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.446Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "handleCandidate": "aaa",
  "data": {
    "candidate": {
      "type": "candidate",
      "candidate": ""
    }
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.447Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.oniceconnectionstatechange] - State: connecting
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.450Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "data": {
    "type": "status",
    "code": "NetConnection.ICE.TrickleCompleted"
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.451Z - [red5pro-sdk] debug: (RTCSubscriber) [onsocketicecandidateend]
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] WebRTC.IceTrickle.Complete.
index.js (62,7)
2017-11-06T17:44:54.454Z - [red5pro-sdk] debug: (RTCSubscriber) [sendsubscribe]
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:54.455Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-post]: {
  "subscribe": "aaa",
  "requestId": "subscriber-961b"
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:57.816Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "data": {
    "type": "status",
    "message": "aaa starting"
  }
}
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:57.817Z - [red5pro-sdk] debug: (RTCSubscriber) [subscriberstatus] - {
  "type": "status",
  "message": "aaa starting"
}
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] Subscribe.Start.
index.js (62,7)
2017-11-06T17:44:57.819Z - [red5pro-sdk] debug: (RTCSourceHandler) [videoelement:action] play
red5pro-sdk.min.js (9,88781)
[Red5ProSubsriber] Subscribe Complete.
index.js (70,5)
2017-11-06T17:44:57.822Z - [red5pro-sdk] debug: (RTCSourceHandler) [videoelement:event] play
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:57.823Z - [red5pro-sdk] debug: (PlaybackControls) [setState]: Playback.PLAYING
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] Subscribe.Playback.Change.
index.js (62,7)
2017-11-06T17:44:57.826Z - [red5pro-sdk] debug: (RTCSourceHandler) [videoelement:event] waiting
red5pro-sdk.min.js (9,88781)
2017-11-06T17:44:57.851Z - [red5pro-sdk] debug: (R5ProSubscriptionSocket) [websocket-response]: {
  "data": {
    "creationdate": "2017-11-06T17:42:56.209Z",
    "startdate": "2017-11-06T17:42:56.286Z",
    "method": "onMetaData"
  },
  "type": "metadata",
  "method": "onMetaData"
}
red5pro-sdk.min.js (9,88781)
[Red5ProSubscriber] Subscribe.Metadata.
index.js (62,7)
2017-11-06T17:44:57.853Z - [red5pro-sdk] debug: (R5ProSubscriptionPeer) [peer.oniceconnectionstatechange] - State: connected
red5pro-sdk.min.js (9,88781)

The fix in a nutshell is to send unique transaction ids per request and the larger fix is not to send the bogus binding request with a “badly padded” username in the first place.

Attachments

0 attachments

    Comments and activity

    • Microsoft Edge Team

      Changed Assigned To to “Steven K.”

    • Hi Paul,

      I am not sure if Edge officially supports ICE.  There is a feature request for “trickle” ICE on the uservoice feature request website.  I think a basic ICE support feature request should be added there as well.  Perhaps you can add it?

      https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer?query=ice

      I will forward this information to the team to give visibility and to see about ICE support.

      Thank you for reporting the issue,

      Steve

    • Microsoft Edge Team

      Changed Assigned To to “Scott L.”

    • Not sure I understand what you mean by not being sure about Edge’s support for ICE; Is there not a movement to support WebRTC 1.0? ICE/STUN is a major part of that and if the Edge team needs more information or a test site to hit, let me know.

    • Microsoft Edge Team

      Changed Assigned To to “Venkat K.”

      Changed Assigned To from “Venkat K.” to “Frank L.”

    You need to sign in to your Microsoft account to add a comment.

    Sign in