blink-dev i2i: https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/tbansal/blink-dev/TS9zT_u2M4k/cuxQfRjGCQAJ Add 3 new client hints: "rtt", "downlink", "effective-connection-type". The client hints should expose the same information as the corresponding JavaScript NetInfo API.
blink-dev i2i: https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/tbansal/blink-dev/TS9zT_u2M4k/cuxQfRjGCQAJ Add 3 new client hints: "rtt", "downlink", "ect". The client hints should expose the same information as the corresponding JavaScript NetInfo API.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6db43b59571b8c38ce7dba4586801c0369361c27 commit 6db43b59571b8c38ce7dba4586801c0369361c27 Author: Tarun Bansal <tbansal@chromium.org> Date: Fri Mar 30 17:31:40 2018 Move some of the NetInfo API methods to NetworkStateNotifier. Move some of the methods from modules/netinfo/NetworkInformation.h to platform/network/NetworkStateNotifier.h. These methods would be called in FrameFetchContext.h when attaching network quality client hints to the requests. This CL introduces no functional change. Change-Id: Ib2772665b656da5d2280183c6d80e5cdce34a3fc Bug: 826950 Reviewed-on: https://chromium-review.googlesource.com/982823 Reviewed-by: Josh Karlin <jkarlin@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Tarun Bansal <tbansal@chromium.org> Cr-Commit-Position: refs/heads/master@{#547200} [modify] https://crrev.com/6db43b59571b8c38ce7dba4586801c0369361c27/third_party/WebKit/Source/modules/netinfo/NetworkInformation.cpp [modify] https://crrev.com/6db43b59571b8c38ce7dba4586801c0369361c27/third_party/WebKit/Source/modules/netinfo/NetworkInformation.h [modify] https://crrev.com/6db43b59571b8c38ce7dba4586801c0369361c27/third_party/WebKit/Source/platform/network/NetworkStateNotifier.cpp [modify] https://crrev.com/6db43b59571b8c38ce7dba4586801c0369361c27/third_party/WebKit/Source/platform/network/NetworkStateNotifier.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f9cf989a177a50b431af10f6963ce02f251e2592 commit f9cf989a177a50b431af10f6963ce02f251e2592 Author: Tarun Bansal <tbansal@chromium.org> Date: Fri Apr 06 04:38:01 2018 Refactor of client hints * Refactor of the browser test code to make it easier to add new client hints without repetitve code * Move the effective connection type names to a common folder so they can also be accessed from chrome/browser. This is necessary since we need to add ECT client hint in the next CL on navigation requests in chrome/browser. This CL does not make any functional changes. Bug: 826950 Change-Id: I7c854fae84738b8d0edece6c6ffd27abcc43bfbc Reviewed-on: https://chromium-review.googlesource.com/996925 Commit-Queue: Tarun Bansal <tbansal@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Cr-Commit-Position: refs/heads/master@{#548670} [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/chrome/browser/client_hints/client_hints.cc [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/chrome/browser/client_hints/client_hints_browsertest.cc [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/content/renderer/effective_connection_type_helper.cc [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/third_party/WebKit/Source/platform/network/NetworkStateNotifier.cpp [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/third_party/WebKit/common/client_hints/client_hints.cc [modify] https://crrev.com/f9cf989a177a50b431af10f6963ce02f251e2592/third_party/WebKit/public/common/client_hints/client_hints.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5 commit 7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5 Author: Tarun Bansal <tbansal@chromium.org> Date: Fri Apr 06 22:37:47 2018 Add three network quality client hints Three network quality client hints are being added: rtt, downlink, ect. All three of them are currently runtime disabled. Currently, when adding network quality client hints to the navigation requests, no noise is added to the RTT and downlink network quality client hints. The next CL will add logic of adding host specific noise to RTT and downlink network quality hints in c/b/client_hints/client_hints.cc. Change-Id: Ic87a98118a4c99df4e46853a3d4d2dcb8f2ed211 Bug: 826950 Reviewed-on: https://chromium-review.googlesource.com/991089 Commit-Queue: Tarun Bansal <tbansal@chromium.org> Reviewed-by: Ryan Sturm <ryansturm@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Cr-Commit-Position: refs/heads/master@{#548951} [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/chrome/browser/client_hints/client_hints.cc [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/chrome/browser/client_hints/client_hints_browsertest.cc [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/chrome/test/data/client_hints/accept_ch_with_lifetime.html.mock-http-headers [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/chrome/test/data/client_hints/accept_ch_without_lifetime.html.mock-http-headers [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/chrome/test/data/client_hints/accept_ch_without_lifetime_img_localhost.html.mock-http-headers [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/core/loader/FrameFetchContext.cpp [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/core/loader/FrameFetchContextTest.cpp [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/core/loader/private/FrameClientHintsPreferencesContext.cpp [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/platform/loader/fetch/ClientHintsPreferences.cpp [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/platform/loader/fetch/ClientHintsPreferencesTest.cpp [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/platform/network/NetworkStateNotifier.h [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/Source/platform/runtime_enabled_features.json5 [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/common/client_hints/client_hints.cc [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/public/platform/web_client_hints_types.mojom [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/third_party/WebKit/public/platform/web_feature.mojom [modify] https://crrev.com/7f3fe8cc08dcee50fe0fb993718c6fd11a78b5f5/tools/metrics/histograms/enums.xml
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8 commit 509a8dddbd7301c3bb7ed2d36394b6b64dc694a8 Author: Tarun Bansal <tbansal@chromium.org> Date: Tue Apr 10 17:19:16 2018 Add random noise to client hints Host specific random noise is added to the client hints. Change-Id: Ic08ac42095e9f484f91f1d8123b79b749eb3fe13 Bug: 826950 Reviewed-on: https://chromium-review.googlesource.com/1002232 Commit-Queue: Tarun Bansal <tbansal@chromium.org> Reviewed-by: Ryan Sturm <ryansturm@chromium.org> Cr-Commit-Position: refs/heads/master@{#549571} [modify] https://crrev.com/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8/chrome/browser/client_hints/client_hints.cc [modify] https://crrev.com/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8/chrome/browser/client_hints/client_hints.h [modify] https://crrev.com/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8/chrome/browser/client_hints/client_hints_browsertest.cc [add] https://crrev.com/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8/chrome/browser/client_hints/client_hints_unittest.cc [modify] https://crrev.com/509a8dddbd7301c3bb7ed2d36394b6b64dc694a8/chrome/test/BUILD.gn
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4198cf93f0d244c1dc9cf16c61b25b453471f22f commit 4198cf93f0d244c1dc9cf16c61b25b453471f22f Author: Tarun Bansal <tbansal@chromium.org> Date: Wed Jul 11 06:35:23 2018 Enable netinfo client hints header blink-dev approval thread: https://groups.google.com/a/chromium.org/d/msg/blink-dev/G_rkd0yo2AM/WaVhRALcAQAJ Bug: 826950 Change-Id: If511883b7428f30136642302862b51f14ffe4894 Reviewed-on: https://chromium-review.googlesource.com/1132612 Reviewed-by: Yoav Weiss <yoav@yoav.ws> Commit-Queue: Tarun Bansal <tbansal@chromium.org> Cr-Commit-Position: refs/heads/master@{#574091} [modify] https://crrev.com/4198cf93f0d244c1dc9cf16c61b25b453471f22f/chrome/browser/client_hints/client_hints_browsertest.cc [modify] https://crrev.com/4198cf93f0d244c1dc9cf16c61b25b453471f22f/third_party/blink/renderer/platform/runtime_enabled_features.json5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/57a35779a1ebd39ea8214585e99ebbfa9363be4e commit 57a35779a1ebd39ea8214585e99ebbfa9363be4e Author: Tarun Bansal <tbansal@chromium.org> Date: Tue Oct 16 15:38:53 2018 Enable client hints header by default These have been in stable since M-69. Change-Id: Iedd7df0ef4941ba85423c79610ec22c10d567357 Bug: 826950 Reviewed-on: https://chromium-review.googlesource.com/c/1203316 Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Tarun Bansal <tbansal@chromium.org> Cr-Commit-Position: refs/heads/master@{#599996} [modify] https://crrev.com/57a35779a1ebd39ea8214585e99ebbfa9363be4e/third_party/blink/renderer/platform/loader/fetch/client_hints_preferences.cc [modify] https://crrev.com/57a35779a1ebd39ea8214585e99ebbfa9363be4e/third_party/blink/renderer/platform/runtime_enabled_features.json5
Comment 1 by bugdroid1@chromium.org
, Mar 30 2018