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

Issue 707770 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

Chrome-Proxy headers being sent on non-Flywheel requests

Project Member Reported by mdw@chromium.org, Apr 3 2017

Issue description

Chrome Version: 59.0.3056.4
OS: Android N2G47N

What steps will reproduce the problem?
(1) Enable Data Saver in Settings.
(2) Visit a page while Data Saver is bypassed - e.g., http://aws1.mdw.la/fw

In this case, I am getting a BLOCK response from Flywheel when visiting this page.
However, the request headers for the bypassed request include

chrome-proxy-accept-transform: lite-page;if-heavy
chrome-proxy-ect: 4G

These headers should only be sent on requests going to the Flywheel proxy.

 
Cc: mdw@chromium.org
I filed a bug (b/36860275) on the server for leaking these headers in the general case of actually using data saver for the request. For your specific repro, was the page served over data saver or was it served direct (buddy.jpg vs grumpycat.jpg).

I'd be interested if there is strange redirect/cache behavior going on. I could not repro this while data saver was bypassed. (no Chrome-Proxy-* headers were present).


Comment 2 by bengr@chromium.org, Apr 3 2017

Owner: dougarnett@chromium.org
I had recently added DCHECKs to capture this: https://cs.chromium.org/chromium/src/components/data_reduction_proxy/core/browser/data_reduction_proxy_network_delegate.cc?q=f:data_reduction_proxy+f:network+package:%5Echromium$&dr&l=121

Obviously, those DCHECKs won't trigger in release builds.

ECT header used the same code path as CPAT, so it is hardly a surprise that the bug (if there is one) would affect both headers.
FWIW, I could not repro this with the test URLs in https://cs.chromium.org/chromium/src/tools/chrome_proxy/webdriver/bypass.py.

May be we should also run our integration tests against debug build of Chrome. That will make sure that we are not triggering any DCHECKs in the DRP code.
Re#1: Redirect restarts the network transaction, and that should cause the headers to be regenerated. I verified that this does not repro for redirect cases (e.g., navigate to http://nytimes.com  which redirects to HTTPS).

Comment 6 by mdw@google.com, Apr 4 2017

The page was served direct, and the request headers did not include a Via header, no X-Forwarded-For, etc.
I've gotten direct page several times now (with grumpycat) but haven't seen a repro of the headers issue. 

Btw, one reproducible way I get the direct main page is to first nav to http://check.googlezip.net/block/ and then nav to aws1.mdw.la/fw
(... but this path has not shown the ECT header for me).
Matt, please report if you get this to happen again. Seems to be a subtle issue (of course because we don't yet see it).

It looks like the server is no longer leaking proxy headers so it may be more obvious now when this issue occurs.

Comment 9 by bengr@chromium.org, Apr 30 2017

Status: WontFix (was: Assigned)
Feel free to re-open if the problem reappears.

Sign in to add a comment