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

Issue 829117 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 0
Type: Bug

Blocking:
issue 821570



Sign in to add a comment

[CRD iOS] Regression of p2p-failure

Project Member Reported by yuweih@chromium.org, Apr 4 2018

Issue description

We have noticed the reliability metric is dropped by ~30% on the new app, and we had got lots of reports of p2p-failure. People claim they used to able to connect to the host but that no longer works after they updated.
 
Blocking: 821570
Project Member

Comment 2 by bugdroid1@chromium.org, Apr 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/254ce1becd1721b163a8014cc9a9e5b6893a57b6

commit 254ce1becd1721b163a8014cc9a9e5b6893a57b6
Author: Yuwei Huang <yuweih@chromium.org>
Date: Thu Apr 05 03:53:47 2018

Disable PORTALLOCATOR_DISABLE_COSTLY_NETWORKS

The PORTALLOCATOR_DISABLE_COSTLY_NETWORKS flag isn't reliable on mobile
network and may remove networks that shouldn't be removed. Given that we
never had this flag set on the old app and we hadn't got any complain so
far, we may just disable this flag for now.

Bug:  829117 
Change-Id: Ic33cc19998ce259c60227e020e1ca1264e4c7fab
Reviewed-on: https://chromium-review.googlesource.com/996613
Commit-Queue: Yuwei Huang <yuweih@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548316}
[modify] https://crrev.com/254ce1becd1721b163a8014cc9a9e5b6893a57b6/remoting/protocol/port_allocator.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Apr 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/35c7be21063d0e4955159b7f87f1ecfbb1df1c91

commit 35c7be21063d0e4955159b7f87f1ecfbb1df1c91
Author: Yuwei Huang <yuweih@chromium.org>
Date: Thu Apr 05 18:17:37 2018

Fix connection failure with IPv6-only NAT64 network

After the 1% rollout of the new app, we have seen a ~30% drop in the
reliability metrics. More than half of the failure are p2p-failure. We
are also getting lots of users reporting that the app used to work on
the old app but it no longer works.

Turns out many mobile ISPs have already switched into an IPv6-only
network (with NAT64 gateway), and they are not able to connect because
we hardcode IPv4 addresses in stanza and other places. We didn't had the
logic to handle this before so I'm not sure why many people with
IPv6-only network also claim that it used to work on the old app. Maybe
Apple had removed an IPv4 compatibility layer?

This CL fixes this issue by adding IPv6 translation logic when dealing
with IPv4 literals.

Change-Id: I1a25fad4c2f7c804a66f0e04b3569b5aa5d49b5c
Bug:  829117 
Reviewed-on: https://chromium-review.googlesource.com/994587
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Yuwei Huang <yuweih@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548487}
[modify] https://crrev.com/35c7be21063d0e4955159b7f87f1ecfbb1df1c91/remoting/protocol/BUILD.gn
[modify] https://crrev.com/35c7be21063d0e4955159b7f87f1ecfbb1df1c91/remoting/protocol/ice_transport.cc
[add] https://crrev.com/35c7be21063d0e4955159b7f87f1ecfbb1df1c91/remoting/protocol/native_ip_synthesizer.cc
[add] https://crrev.com/35c7be21063d0e4955159b7f87f1ecfbb1df1c91/remoting/protocol/native_ip_synthesizer.h
[modify] https://crrev.com/35c7be21063d0e4955159b7f87f1ecfbb1df1c91/remoting/protocol/port_allocator.cc

Cc: cmasso@google.com
We had found a regression of connection success rate of the Chrome Remote Desktop app during our 2% rollout (which has been paused) so we are requesting a merge to M66 to get an emergent fix for our app as soon as possible.

Note that this is not related to the Chrome browser for iOS.

Rationale:
  People using specific mobile carriers (e.g. T-Mobile) are not able to connect to their hosts. Our connection success rate dropped by ~25%.

Risk:
  This change has no impact on the Chrome for iOS browser, as it is only for the Chrome Remote Desktop for iOS app.

Testing:
  Verified on ToT build of Chrome Remote Desktop (67.0.3390.0) that I am able to make connections under T-Mobile network.
Labels: Merge-Request-66
Project Member

Comment 6 by sheriffbot@chromium.org, Apr 5 2018

Labels: -Merge-Request-66 Merge-Review-66 Hotlist-Merge-Review
This bug requires manual review: Less than 8 days to go before AppStore submit on M66
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), josafat@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 7 by cmasso@google.com, Apr 5 2018

Labels: -Hotlist-Merge-Review -Merge-Review-66 Merge-Approved-66
Project Member

Comment 8 by bugdroid1@chromium.org, Apr 5 2018

Labels: -merge-approved-66 merge-merged-3359
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/99eefbdaea026d6dabbeea2a520365296be6df40

commit 99eefbdaea026d6dabbeea2a520365296be6df40
Author: Yuwei Huang <yuweih@chromium.org>
Date: Thu Apr 05 19:45:09 2018

Disable PORTALLOCATOR_DISABLE_COSTLY_NETWORKS

The PORTALLOCATOR_DISABLE_COSTLY_NETWORKS flag isn't reliable on mobile
network and may remove networks that shouldn't be removed. Given that we
never had this flag set on the old app and we hadn't got any complain so
far, we may just disable this flag for now.

Bug:  829117 
Change-Id: Ic33cc19998ce259c60227e020e1ca1264e4c7fab
Reviewed-on: https://chromium-review.googlesource.com/996613
Commit-Queue: Yuwei Huang <yuweih@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#548316}(cherry picked from commit 254ce1becd1721b163a8014cc9a9e5b6893a57b6)
Reviewed-on: https://chromium-review.googlesource.com/998654
Reviewed-by: Yuwei Huang <yuweih@chromium.org>
Cr-Commit-Position: refs/branch-heads/3359@{#593}
Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276}
[modify] https://crrev.com/99eefbdaea026d6dabbeea2a520365296be6df40/remoting/protocol/port_allocator.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Apr 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9de86e9e32ccb2a0453fcbc88ec273459611e03a

commit 9de86e9e32ccb2a0453fcbc88ec273459611e03a
Author: Yuwei Huang <yuweih@chromium.org>
Date: Thu Apr 05 19:46:27 2018

Fix connection failure with IPv6-only NAT64 network

After the 1% rollout of the new app, we have seen a ~30% drop in the
reliability metrics. More than half of the failure are p2p-failure. We
are also getting lots of users reporting that the app used to work on
the old app but it no longer works.

Turns out many mobile ISPs have already switched into an IPv6-only
network (with NAT64 gateway), and they are not able to connect because
we hardcode IPv4 addresses in stanza and other places. We didn't had the
logic to handle this before so I'm not sure why many people with
IPv6-only network also claim that it used to work on the old app. Maybe
Apple had removed an IPv4 compatibility layer?

This CL fixes this issue by adding IPv6 translation logic when dealing
with IPv4 literals.

Change-Id: I1a25fad4c2f7c804a66f0e04b3569b5aa5d49b5c
Bug:  829117 
Reviewed-on: https://chromium-review.googlesource.com/994587
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Yuwei Huang <yuweih@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#548487}(cherry picked from commit 35c7be21063d0e4955159b7f87f1ecfbb1df1c91)
Reviewed-on: https://chromium-review.googlesource.com/998080
Reviewed-by: Yuwei Huang <yuweih@chromium.org>
Cr-Commit-Position: refs/branch-heads/3359@{#594}
Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276}
[modify] https://crrev.com/9de86e9e32ccb2a0453fcbc88ec273459611e03a/remoting/protocol/BUILD.gn
[modify] https://crrev.com/9de86e9e32ccb2a0453fcbc88ec273459611e03a/remoting/protocol/ice_transport.cc
[add] https://crrev.com/9de86e9e32ccb2a0453fcbc88ec273459611e03a/remoting/protocol/native_ip_synthesizer.cc
[add] https://crrev.com/9de86e9e32ccb2a0453fcbc88ec273459611e03a/remoting/protocol/native_ip_synthesizer.h
[modify] https://crrev.com/9de86e9e32ccb2a0453fcbc88ec273459611e03a/remoting/protocol/port_allocator.cc

Status: Fixed (was: Assigned)
Cc: yuweih@chromium.org
 Issue 806993  has been merged into this issue.

Sign in to add a comment