New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 593890 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Apr 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome
Pri: 2
Type: Bug



Sign in to add a comment

ICE state disconnected in apprtc calls

Project Member Reported by srnarayanan@chromium.org, Mar 10 2016

Issue description

Version: M50 Dev 50.0.2661.18 in Win, dev build 50.0.2661.20 / 7978.10.0 dev in CrOS
OS: Win 10, CrOS Kip

What steps will reproduce the problem?
(1) Establish a 2 way apprtc call between Win 10 and device Kip
(2) Stay in the call for a while

What is the expected output? What do you see instead?
Expected:
The call should be connected successfully, with no audio/video freeze and ICE state breakage

Actual:
1. Repeated ICE connection drops (disconnected -> failed -> connected) happened from both ends
2. Intermittent Audio/video freezes

Logs and webrtc-internals-dump from both machines here - https://drive.google.com/corp/drive/u/0/folders/0BzGe6sHDtMDKR1hKU2p0T0FlUWs


Please use labels and text to provide additional information.
1. I do not see ICE connection drops in Hangouts
 
ICE state disconnected message.png
956 KB View Download
Owner: andresp@chromium.org
Status: Assigned (was: Untriaged)
The note "I do not see ICE connection drops in Hangouts" leads me to believe that this may be some sort of issue with the TURN server used by apprtc. andresp@, can you take a look? 

Comment 2 by andresp@webrtc.org, Mar 11 2016

Had no time to look in detail but those dumps seem quite useless. They have like 2 and 16 seconds of data :/

Comment 3 by andresp@webrtc.org, Mar 11 2016

Also can I get testrtc runs from those two machines on the same networks they were when this test was run? TestRTC uses the same turn server in isolation so it would be a good way to gather data.


How long is step 2 (wait for a while?), seconds? minutes?
Cc: andresp@chromium.org
Owner: srnarayanan@chromium.org
Back to srnarayanan@ to answer the questions/requests in #3.
Please find attached testrtc logs from both Win 10 and CrOS Pit.
Win 10 was running in GoogleGuest and CrOS in Webrtclatencylab 

After we could finally establish the apprtc call, it lasted for about a min or so before the audio/video froze
CrOS - testrtc-2016-03-11T22-43-44.665Z.log
21.5 KB View Download
Win 10 - testrtc-2016-03-11T22-39-31.818Z.log
18.7 KB View Download
Components: Blink>WebRTC>Network
Cc: -andresp@chromium.org
Owner: andresp@chromium.org
Thanks for the quick response, srnarayanan@!
Interestingly, I saw the ICE failed error while attempting a 2-way apprtc call over GIN-2g-poor
(GIN-3g and GIN-2g seemed okay so far)
Since GIN-2G-poor has low bandwidth and lots of packet loss it's no surprise this can happen, not sure we can except it to work on GIN-2G-poor.

Comment 10 by andresp@webrtc.org, Mar 14 2016

There is a few interesting things on the logs from the Win10 machine.

First it failed the "Udp enabled" which if it is indeed true, then no wonder the connection has issues.

Second the "Data throutput" test didn't finish, it should have taken less than <10 seconds to finish, but the test logs only show the test starting and never finishing. :/ I wonder why that was.

Comment 11 by andresp@webrtc.org, Mar 14 2016

Is that win10 machine expected to not be able to connect to the turn server via udp?

Could you run just these 3 tests:
 https://test.webrtc.org/?test_filter=Udp%20enabled,Data%20throughput,%20Tcp%20enabled

If you get same results:
 - UDP fail, TCP success, Data throughput: hang

Ask jansson to debug the hang in data throughput hanging. He knows those tests very well.
Cc: andresp@chromium.org
Owner: srnarayanan@chromium.org
Re-ran the tests on Win 10 running on webRTClatencylab test network, and I get the same results as before
- UDP fails, TCP success, Data throughput hangs

jansson@ - mind taking a look when you get a chance? thanks! 

Attached testrtc logs from Win 10 m/c
testrtc-2016-03-14T19-41-50.948Z.log
18.4 KB View Download
Cc: srnarayanan@chromium.org
Owner: jansson@chromium.org
Thanks Srividya.

Chris, very weird that udp gets blocked and very weird that data throughput hangs. I run it enforcing a tcp server [1] and it should succeed.

I am a bit clueless on what is going on. I guess you might be able to find out having access to the machine and network. I would try silly things like "ping lens.l.google.com", see if the Windows laptop works from another wifi connection, look on firewall settings :|



1 - https://test.webrtc.org/?test_filter=Data%20throughput&turnURI=turn%3A74.125.22.127%3A19305%3Ftransport%3Dtcp&turnUsername=1458028097%3AAAewBviZ&turnCredential=eSdloHPOqi12HLBp81v8A1rzA8g%3D
Jansson,

Can I mark this EngTriaged, or do you need something from us?
pthatcher@ Yeah that's fine, I will reroute if it's something weird in the WebRTC network stack.
Labels: WebrtcTriaged
Sorry I've not had a change to take a look at this yet, will try this week.
While in KIR i found that network traversal provides a config that is not suitable for tcp only clients since webrtc is interpreting:
 "turn:IP:port" as "turn:IP:port?transport=udp" :/

Short team we need to fix the network traversal config though this will increase the number of allocations clients do. :/

So my guess is the the windows machine in question cannot reach the turn server via udp.
Labels: OS-Linux
jansson@ - srcv@ and I encountered a few ICE drops now, and this time its not Win-CrOS 

My Linux m/c has a wired network connection, and b/w Linux and CrOS, we experienced a bunch of ICE disconnected states in 2 way AppRTC calls.
srcv@ was running "webrtclatencylab5g" network in her CrOS device



We need a wireshark trace in order to determine what these ice drops could be.

Since srcv@ is using wifi it could be it, it could be that the turn server or something between is having issues or that the wrong turn servers was provided (different geographic region but I see this as very unlikely after andresp@ fixing that issue).
Status: Fixed (was: Assigned)
We have switched network traversal to return a tcp turn server candidate.
So this should be fixed for the windows machine it was original opened for.
But still you should find out if that machine has UDP blocked on purpose or it is a misconfiguration.

Please open a new issue for that webrtclatencylab5g thing. Run testrtc from both the machines and explain the type of traffic blocking you are doing on your test if any.

Comment 23 by srcv@chromium.org, May 10 2016

Filed https://bugs.chromium.org/p/chromium/issues/detail?id=610764 for ICE connection drops during apprtc calls with test network
Status: Verified (was: Fixed)
bulk verify (M50 clean up)

Sign in to add a comment