Closed
Bug 1185197
Opened 9 years ago
Closed 9 years ago
ice.tcp is breaking ICE if multi-process (e10s) is on
Categories
(Core :: WebRTC: Networking, defect, P1)
Tracking
()
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
e10s | + | --- |
firefox39 | --- | unaffected |
firefox40 | --- | unaffected |
firefox41 | --- | wontfix |
firefox42 | --- | verified |
backlog | webrtc/webaudio+ |
People
(Reporter: ajay6ft, Assigned: drno)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
8.68 KB,
text/html
|
Details |
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.134 Safari/537.36 Steps to reproduce: Enabled media.peerconnection.ice.tcp in 41.0a2 (2015-07-17) (Firefox Developer Edition). Peer connection is not generating any candidates. Actual results: Failed to parse Remote TCP candidates, No candidates are generated Expected results: Firefox should generate both UDP & TCP candidates, Ice check should complete with either UDP or TCP. By default UDP should be high priority, if UDP is not reachable then only it should fallback to TCP
OS: Unspecified → All
Product: Firefox → Core
Hardware: Unspecified → All
Assignee | ||
Updated•9 years ago
|
Assignee: nobody → drno
Component: Untriaged → WebRTC: Networking
Updated•9 years ago
|
Status: UNCONFIRMED → NEW
backlog: --- → webRTC+
Rank: 15
Ever confirmed: true
Priority: -- → P1
Assignee | ||
Comment 1•9 years ago
|
||
I failed to reproduce the problem with 41 and 42 on my Mac. Today I also tried 41 on Linux like in this report with the provided test URL, but it just works fine for me. The error message in the attached log "Error parsing attribute: candidate:2 1 tcp 1019216383 192.168.1.93 0 typ host tcptype active" just indicates that parsing failed, because of the 0 port number in that candidate. This candidate is suppose to use port 9 instead of zero. But as we would ignore a candidate with port 9 the end result is the same in this case. So this is not the root cause of the problem. From looking at the provided log file it looks like gathering never started or failed. AjayG could you please re-run the test with the ICE debug logs turned on? You need to set the environment variables like described here: https://wiki.mozilla.org/Media/WebRTC/Logging#ICE.2FSTUN.2FTURN Please set the R_LOG_LEVEL to 9 to capture everything. Note: you need to capture stdout into a file, as that is the information I'm looking for.
Flags: needinfo?(ajay6ft)
@Nils, still issue is reproducing for me in FF-41.0a2 (2015-07-21) on CentOS-6.6 . Startup command in bash: R_LOG_DESTINATION=stderr R_LOG_LEVEL=4 R_LOG_VERBOSE=1 ./firefox -profilemanager -no-remote Please check below Logs: (ice/WARNING) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): No STUN servers specified (ice/NOTICE) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): No TURN servers specified (ice/WARNING) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): Error parsing attribute: candidate:2 1 tcp 1019216383 192.168.1.93 0 typ host tcptype active (ice/WARNING) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): peer (PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html):default) specified bogus candidate (ice/WARNING) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): Error parsing attribute: candidate:5 1 tcp 1019216383 202.65.134.117 0 typ host tcptype active (ice/WARNING) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): peer (PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html):default) specified bogus candidate (ice/NOTICE) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): peer (PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html):default) no streams with non-empty check lists (ice/NOTICE) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): peer (PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html):default) no streams with pre-answer requests (ice/NOTICE) ICE(PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html)): peer (PC:1437495313663606 (id=2147483653 url=https://mydomain.com/screenshare/screensharingtest.html):default) no checks to start Please find full webrtc-internals at https://www.dropbox.com/s/ketcf81r3d9w6zo/aboutWebrtc2.html?dl=0
Flags: needinfo?(ajay6ft)
Assignee | ||
Comment 3•9 years ago
|
||
I tried reproducing this now in a VM with CentOS-6.6, but no luck. I'm guessing this must be something in your setup/environment. Unfortunately the log you provide still gives no clues of what could be going wrong here. Could I ask you to re-run it like this: R_LOG_DESTINATION=stderr R_LOG_LEVEL=9 R_LOG_VERBOSE=1 ./firefox -profilemanager -no-remote 2>&1 | tee ice.log Basically this runs with the highest ICE logging level we have. Unfortunately the logging goes to stdout/stderr and does not show up on the about:webrtc page. So that's why the command above redirect that into the 'tee' command which writes it into the file 'ice.log'. Feel free to name the file differently. You can also use '>' instead of the 'tee' command if you prefer that. The file is probably going to be big. Feel free to compress it. And you can send it to me via email if you prefer the privacy, or attach it here (putting it into Dropbox like you did before works as well).
Flags: needinfo?(ajay6ft)
@Nils, Now i started the Firefox with below command, R_LOG_DESTINATION=stderr R_LOG_LEVEL=9 R_LOG_VERBOSE=1 ./firefox -profilemanager -no-remote 2>&1 | tee ice.log Attached ice.log at https://www.dropbox.com/s/0zofibq7vedn2y3/ice.log?dl=0 Attached new webrtc-internals at https://www.dropbox.com/s/x3kxx7eie8qwyj1/aboutWebrtc3.html?dl=0
Flags: needinfo?(ajay6ft)
Assignee | ||
Comment 5•9 years ago
|
||
Thank you that log file finally gave me the needed clue. I think I'm able to reproduce your problem now. Did you by any chance enabled the "Enable multi-process Firefox Developer Edition" (that is an option on the "General" tab of your Preferences)? If so, please turn it off for ICE TCP testing. That should hopefully "fix it" for now.
Comment 6•9 years ago
|
||
Are we gathering UDP candidates, though?
Assignee | ||
Comment 7•9 years ago
|
||
(In reply to Byron Campen [:bwc] from comment #6) > Are we gathering UDP candidates, though? Yes we do. And that raises the interesting question: should we fail gathering in case one socket or interface did not worked/failed? I'm leaning towards: we should ignore all failures during gathering as long as we gather at least one candidate.
Comment 8•9 years ago
|
||
The logging in comment 4 seems to indicate that we gathered a UDP candidate, but that for some reason it was never used?
(In reply to Nils Ohlmeier [:drno] from comment #5) > Thank you that log file finally gave me the needed clue. I think I'm able to > reproduce your problem now. Did you by any chance enabled the "Enable > multi-process Firefox Developer Edition" (that is an option on the "General" > tab of your Preferences)? > If so, please turn it off for ICE TCP testing. That should hopefully "fix > it" for now. @Nils, if i disabled multi-process mode it is working fine So issue is not with the Platform, now i was able to reproduce on windows as well :)
Assignee | ||
Comment 10•9 years ago
|
||
Thanks for the feedback. Most likely we will fix this shortly via bug 1187472.
Summary: media.peerconnection.ice.tcp is breaking ICE functionality → ice.tcp is breaking ICE if multi-process (e10s) is on
Updated•9 years ago
|
tracking-e10s:
--- → +
Assignee | ||
Comment 11•9 years ago
|
||
Just manually verified in 42.0a1 (2015-08-03) that the problem is successfully fixed via bug 1187472. As this problem is only exposed by the user actively changing a pref, and e10s is only available in Nightly and DevEdition, I'm calling this fixed (although it is technically only fixed in 42).
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox39:
--- → unaffected
status-firefox40:
--- → unaffected
status-firefox41:
--- → wontfix
status-firefox42:
--- → verified
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•