Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(133)

Issue 1164713004: Store network quality samples so we can compute percentiles. (Closed)

Created:
5 years, 6 months ago by tbansal1
Modified:
5 years, 6 months ago
Reviewers:
bengr, mmenke
CC:
chromium-reviews, cbentzel+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Store network quality samples so we can compute percentiles. This CL stores the the samples from organic traffic (along with the timestamp) in a deque. These would be used in a later CL to compute the network quality at different percentile values (e.g., 10, 50, 90). It is ensured that RTT sample is stored only if this is the first time the response is read for the given URL request. Also, renamed GetEstimate() -> GetPeakEstimate(). This is in preparation for next CL that will introduce API GetEstimate(int percentile). BUG=472681 Committed: https://crrev.com/6f840fc5d6482ef18945e501f729f8eb1c954f84 Cr-Commit-Position: refs/heads/master@{#334317}

Patch Set 1 #

Total comments: 10

Patch Set 2 : Added RingBuffer class #

Total comments: 24

Patch Set 3 : Addressed mmenke comments #

Total comments: 12

Patch Set 4 : Addressed comments #

Total comments: 10

Patch Set 5 : Added tests, changed kbps to int32_t, removed confidence #

Total comments: 10

Patch Set 6 : Addressed comments. #

Total comments: 12

Patch Set 7 : Addressed bengr comments #

Total comments: 30

Patch Set 8 : rebased, addressed comments #

Patch Set 9 : Using embedded server (instead of spawned) #

Total comments: 17

Patch Set 10 : Addressed comments #

Patch Set 11 : Removed parenthesis #

Patch Set 12 : Added test #

Total comments: 10

Patch Set 13 : Addressed comments #

Patch Set 14 : Changes to make the tests work on Windows #

Unified diffs Side-by-side diffs Delta from patch set Stats (+335 lines, -133 lines) Patch
M components/data_reduction_proxy/core/browser/data_reduction_proxy_config.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc View 1 2 3 4 5 6 7 8 4 chunks +13 lines, -10 lines 0 comments Download
M components/data_reduction_proxy/core/browser/data_reduction_proxy_config_unittest.cc View 1 2 3 4 5 6 7 2 chunks +5 lines, -4 lines 0 comments Download
M net/base/network_quality.h View 1 2 3 4 5 6 1 chunk +27 lines, -33 lines 0 comments Download
A net/base/network_quality.cc View 1 2 3 4 1 chunk +21 lines, -0 lines 0 comments Download
M net/base/network_quality_estimator.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 4 chunks +73 lines, -12 lines 0 comments Download
M net/base/network_quality_estimator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 6 chunks +105 lines, -35 lines 0 comments Download
M net/base/network_quality_estimator_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 4 chunks +85 lines, -32 lines 0 comments Download
M net/net.gypi View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
M net/url_request/url_request_job.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M net/url_request/url_request_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -5 lines 0 comments Download

Messages

Total messages: 51 (14 generated)
tbansal1
ptal. thanks.
5 years, 6 months ago (2015-06-01 20:56:07 UTC) #2
bengr
https://codereview.chromium.org/1164713004/diff/1/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/1/net/base/network_quality.h#newcode18 net/base/network_quality.h:18: double rtt_confidence, Define what is meant by each of ...
5 years, 6 months ago (2015-06-01 22:55:43 UTC) #3
tbansal1
ptal. thanks. https://codereview.chromium.org/1164713004/diff/1/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/1/net/base/network_quality.h#newcode18 net/base/network_quality.h:18: double rtt_confidence, On 2015/06/01 22:55:42, bengr wrote: ...
5 years, 6 months ago (2015-06-02 18:33:02 UTC) #7
tbansal1
ptal. thanks.
5 years, 6 months ago (2015-06-02 18:36:41 UTC) #9
mmenke
Not tests? https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality.h#newcode44 net/base/network_quality.h:44: DCHECK_LE(throughput_kbps_confidence, 1 + kDelta); Need base/logging.h (Which ...
5 years, 6 months ago (2015-06-03 18:31:40 UTC) #10
tbansal1
thanks for the comments. ptal. On 2015/06/03 18:31:40, mmenke wrote: > Not tests? This CL ...
5 years, 6 months ago (2015-06-05 01:36:55 UTC) #12
tbansal1
ptal. https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality.h#newcode44 net/base/network_quality.h:44: DCHECK_LE(throughput_kbps_confidence, 1 + kDelta); On 2015/06/03 18:31:39, mmenke ...
5 years, 6 months ago (2015-06-05 01:50:08 UTC) #13
bengr
https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality_estimator.h File net/base/network_quality_estimator.h (right): https://codereview.chromium.org/1164713004/diff/80001/net/base/network_quality_estimator.h#newcode73 net/base/network_quality_estimator.h:73: class RingBuffer { On 2015/06/05 01:50:08, tbansal1 wrote: > ...
5 years, 6 months ago (2015-06-05 20:44:13 UTC) #14
tbansal1
thanks for the comments. ptal. https://codereview.chromium.org/1164713004/diff/120001/net/base/network_quality.cc File net/base/network_quality.cc (right): https://codereview.chromium.org/1164713004/diff/120001/net/base/network_quality.cc#newcode39 net/base/network_quality.cc:39: base::TimeDelta NetworkQuality::GetRtt() const { ...
5 years, 6 months ago (2015-06-05 23:45:57 UTC) #15
mmenke
https://codereview.chromium.org/1164713004/diff/160001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/160001/net/base/network_quality.h#newcode52 net/base/network_quality.h:52: const double confidence_; Actually, can we just get rid ...
5 years, 6 months ago (2015-06-08 16:07:04 UTC) #17
mmenke
On 2015/06/08 16:07:04, mmenke wrote: > https://codereview.chromium.org/1164713004/diff/160001/net/base/network_quality.h > File net/base/network_quality.h (right): > > https://codereview.chromium.org/1164713004/diff/160001/net/base/network_quality.h#newcode52 > ...
5 years, 6 months ago (2015-06-08 16:07:26 UTC) #18
mmenke
This seems reasonable, but it really does seem to me like there should be some ...
5 years, 6 months ago (2015-06-08 17:30:17 UTC) #19
tbansal1
Addressed comments, added tests, changed kbps to int32_t, changed downlink to downstream. PTAL. Thanks for ...
5 years, 6 months ago (2015-06-08 20:27:52 UTC) #20
bengr
https://codereview.chromium.org/1164713004/diff/180001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/180001/net/base/network_quality.h#newcode27 net/base/network_quality.h:27: // Returns the round trip time observed for the ...
5 years, 6 months ago (2015-06-09 20:46:33 UTC) #21
tbansal1
ptal. thanks. https://codereview.chromium.org/1164713004/diff/180001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/180001/net/base/network_quality.h#newcode27 net/base/network_quality.h:27: // Returns the round trip time observed ...
5 years, 6 months ago (2015-06-10 01:00:05 UTC) #22
bengr
lgtm with nits https://codereview.chromium.org/1164713004/diff/200001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/200001/net/base/network_quality.h#newcode29 net/base/network_quality.h:29: // Returns the estimate of the ...
5 years, 6 months ago (2015-06-11 00:14:56 UTC) #23
bengr
On 2015/06/11 00:14:56, bengr wrote: > lgtm with nits > > https://codereview.chromium.org/1164713004/diff/200001/net/base/network_quality.h > File net/base/network_quality.h ...
5 years, 6 months ago (2015-06-11 00:20:51 UTC) #24
tbansal1
ptal. thanks. https://codereview.chromium.org/1164713004/diff/200001/net/base/network_quality.h File net/base/network_quality.h (right): https://codereview.chromium.org/1164713004/diff/200001/net/base/network_quality.h#newcode29 net/base/network_quality.h:29: // Returns the estimate of the downstream ...
5 years, 6 months ago (2015-06-11 01:43:00 UTC) #26
mmenke
https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc#newcode63 net/base/network_quality_estimator.cc:63: DCHECK_GE(request_duration, base::TimeDelta()); If this is 0, we're in trouble, ...
5 years, 6 months ago (2015-06-11 15:11:02 UTC) #27
tbansal1
ptal. Had to rebase. @mmenke: Please look at net/* thanks. https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc#newcode63 ...
5 years, 6 months ago (2015-06-11 19:27:50 UTC) #29
mmenke
Quick responses. https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc#newcode69 net/base/network_quality_estimator.cc:69: fastest_rtt_since_last_connection_change_ = request_duration; On 2015/06/11 19:27:50, tbansal1 ...
5 years, 6 months ago (2015-06-11 19:51:18 UTC) #30
tbansal1
thanks for the comments. ptal. https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/240001/net/base/network_quality_estimator.cc#newcode69 net/base/network_quality_estimator.cc:69: fastest_rtt_since_last_connection_change_ = request_duration; On ...
5 years, 6 months ago (2015-06-11 21:16:29 UTC) #31
mmenke
Want to do another pass on the tests, and see if we can make the ...
5 years, 6 months ago (2015-06-11 21:30:46 UTC) #32
tbansal1
Not sure how I can make it prettier. Suggestions welcome. Thanks for taking time to ...
5 years, 6 months ago (2015-06-11 21:37:57 UTC) #33
mmenke
https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode18 net/base/network_quality_estimator.cc:18: // Maximum number of observations to hold in the ...
5 years, 6 months ago (2015-06-12 17:34:42 UTC) #34
mmenke
https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode87 net/base/network_quality_estimator.cc:87: kbps_observations_.AddObservation(Observation(kbps, now)); Also, I wonder about repeatedly adding observations ...
5 years, 6 months ago (2015-06-12 18:08:18 UTC) #35
tbansal1
ptal. thanks. https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode18 net/base/network_quality_estimator.cc:18: // Maximum number of observations to hold ...
5 years, 6 months ago (2015-06-12 19:14:46 UTC) #36
mmenke
https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode83 net/base/network_quality_estimator.cc:83: if (kbps > 0) { On 2015/06/12 19:14:46, tbansal1 ...
5 years, 6 months ago (2015-06-12 19:36:07 UTC) #37
tbansal1
ptal. https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode83 net/base/network_quality_estimator.cc:83: if (kbps > 0) { On 2015/06/12 19:36:06, ...
5 years, 6 months ago (2015-06-12 19:56:26 UTC) #38
mmenke
LGTM https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/300001/net/base/network_quality_estimator.cc#newcode83 net/base/network_quality_estimator.cc:83: if (kbps > 0) { On 2015/06/12 19:56:26, ...
5 years, 6 months ago (2015-06-12 20:31:42 UTC) #39
tbansal1
thanks, submitting now. https://codereview.chromium.org/1164713004/diff/360001/net/base/network_quality_estimator.cc File net/base/network_quality_estimator.cc (right): https://codereview.chromium.org/1164713004/diff/360001/net/base/network_quality_estimator.cc#newcode78 net/base/network_quality_estimator.cc:78: double kbpsF = (cumulative_prefilter_bytes_read * 8.0) ...
5 years, 6 months ago (2015-06-12 21:27:54 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1164713004/380001
5 years, 6 months ago (2015-06-12 21:31:37 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_compile_dbg_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/48727)
5 years, 6 months ago (2015-06-12 22:37:26 UTC) #45
tbansal1
@mmenke: Seems like the linker on Windows does not like the inner classes. http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/48727/steps/compile%20%28with%20patch%29/logs/stdio I ...
5 years, 6 months ago (2015-06-12 23:32:22 UTC) #46
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1164713004/400001
5 years, 6 months ago (2015-06-12 23:50:41 UTC) #49
commit-bot: I haz the power
Committed patchset #14 (id:400001)
5 years, 6 months ago (2015-06-13 03:30:43 UTC) #50
commit-bot: I haz the power
5 years, 6 months ago (2015-06-13 03:31:26 UTC) #51
Message was sent while issue was closed.
Patchset 14 (id:??) landed as
https://crrev.com/6f840fc5d6482ef18945e501f729f8eb1c954f84
Cr-Commit-Position: refs/heads/master@{#334317}

Powered by Google App Engine
This is Rietveld 408576698