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

Issue 2999073002: Tweaked version of BBR for WebRTC. (Closed)

Created:
3 years, 4 months ago by gnish1
Modified:
3 years, 4 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, zhuangzesen_agora.io, stefan-webrtc, mflodman
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

Final version of BBR, with tweaks made for WebRTC, major changes: 1) Entering PROBE_RTT when necessary. 2) Congestion window gain of 0.65 instead of constant 4 packets. 3) {1.1, 0.9} pair instead of {1.25, 0.75} 4) Recovery mode. 5) No reaction to losses due to Recovery mode's implementation. 6) Supports encoder. 7) A new test compiling most of the simulation tests. 8) Bucket for high gain phase, disabled by default. 9) Pacer specific to BBR. BUG=webrtc:7713 Review-Url: https://codereview.webrtc.org/2999073002 Cr-Commit-Position: refs/heads/master@{#19418} Committed: https://chromium.googlesource.com/external/webrtc/+/a36165c77b81e48201fb907df0eb49fa81f13295

Patch Set 1 #

Patch Set 2 : Rebase. #

Total comments: 1

Patch Set 3 : Fixed compilation errors. #

Total comments: 42

Patch Set 4 : Fixed unittests. #

Patch Set 5 : Updated according to comments. #

Total comments: 18

Patch Set 6 : Updated according to comments. #

Total comments: 16

Patch Set 7 : Updated according to comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+545 lines, -131 lines) Patch
M webrtc/modules/bitrate_controller/include/bitrate_controller.h View 1 2 3 4 5 6 2 chunks +11 lines, -3 lines 0 comments Download
M webrtc/modules/pacing/BUILD.gn View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/modules/pacing/paced_sender.h View 1 2 4 chunks +4 lines, -5 lines 0 comments Download
M webrtc/modules/pacing/paced_sender.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
A webrtc/modules/pacing/pacer.h View 1 2 1 chunk +37 lines, -0 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/BUILD.gn View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc View 1 2 3 4 5 2 chunks +60 lines, -0 lines 0 comments Download
A webrtc/modules/remote_bitrate_estimator/test/bbr_paced_sender.h View 1 2 3 4 5 1 chunk +92 lines, -0 lines 0 comments Download
A webrtc/modules/remote_bitrate_estimator/test/bbr_paced_sender.cc View 1 2 3 4 1 chunk +140 lines, -0 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/bwe.cc View 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/bwe_test_framework.cc View 2 chunks +3 lines, -3 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/bbr.h View 4 chunks +6 lines, -5 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/bbr.cc View 1 2 3 4 5 6 16 chunks +96 lines, -41 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/congestion_window.h View 1 2 3 4 1 chunk +0 lines, -4 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/congestion_window.cc View 1 2 3 4 4 chunks +3 lines, -7 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/congestion_window_unittest.cc View 1 2 3 2 chunks +5 lines, -26 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/min_rtt_filter.h View 1 2 3 4 5 3 chunks +26 lines, -9 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/estimators/min_rtt_filter_unittest.cc View 1 2 3 1 chunk +6 lines, -10 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/packet.h View 1 chunk +3 lines, -3 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/packet_sender.h View 2 chunks +12 lines, -2 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/packet_sender.cc View 1 2 3 4 5 6 5 chunks +26 lines, -6 lines 0 comments Download
M webrtc/modules/remote_bitrate_estimator/test/plot_dynamics.py View 3 chunks +9 lines, -4 lines 0 comments Download

Messages

Total messages: 45 (30 generated)
gnish1
Could be very ugly but 2 days left.
3 years, 4 months ago (2017-08-16 15:35:13 UTC) #3
terelius
Could you fix the style issues in pacer.h please. https://codereview.webrtc.org/2999073002/diff/20001/webrtc/modules/bitrate_controller/include/bitrate_controller.h File webrtc/modules/bitrate_controller/include/bitrate_controller.h (left): https://codereview.webrtc.org/2999073002/diff/20001/webrtc/modules/bitrate_controller/include/bitrate_controller.h#oldcode64 webrtc/modules/bitrate_controller/include/bitrate_controller.h:64: ...
3 years, 4 months ago (2017-08-17 09:33:29 UTC) #8
terelius
stefan, could you review the bitrate controller changes?
3 years, 4 months ago (2017-08-17 09:35:10 UTC) #9
philipel
https://codereview.webrtc.org/2999073002/diff/40001/webrtc/modules/pacing/bbr_paced_sender.cc File webrtc/modules/pacing/bbr_paced_sender.cc (right): https://codereview.webrtc.org/2999073002/diff/40001/webrtc/modules/pacing/bbr_paced_sender.cc#newcode23 webrtc/modules/pacing/bbr_paced_sender.cc:23: struct Packet { I think you should move this ...
3 years, 4 months ago (2017-08-17 12:52:27 UTC) #18
gnish1
https://codereview.webrtc.org/2999073002/diff/40001/webrtc/modules/pacing/bbr_paced_sender.cc File webrtc/modules/pacing/bbr_paced_sender.cc (right): https://codereview.webrtc.org/2999073002/diff/40001/webrtc/modules/pacing/bbr_paced_sender.cc#newcode23 webrtc/modules/pacing/bbr_paced_sender.cc:23: struct Packet { On 2017/08/17 12:52:26, philipel wrote: > ...
3 years, 4 months ago (2017-08-17 15:37:49 UTC) #21
philipel
lg, just a few more comments https://codereview.webrtc.org/2999073002/diff/80001/webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc File webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc (right): https://codereview.webrtc.org/2999073002/diff/80001/webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc#newcode178 webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc:178: // reference instead. ...
3 years, 4 months ago (2017-08-18 11:22:15 UTC) #22
gnish1
https://codereview.webrtc.org/2999073002/diff/80001/webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc File webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc (right): https://codereview.webrtc.org/2999073002/diff/80001/webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc#newcode178 webrtc/modules/remote_bitrate_estimator/bwe_simulations.cc:178: // reference instead. On 2017/08/18 11:22:14, philipel wrote: > ...
3 years, 4 months ago (2017-08-18 11:48:43 UTC) #23
philipel
lgtm
3 years, 4 months ago (2017-08-18 11:54:02 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2999073002/100001
3 years, 4 months ago (2017-08-18 13:31:58 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: presubmit on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/20366)
3 years, 4 months ago (2017-08-18 13:38:38 UTC) #32
terelius
https://codereview.webrtc.org/2999073002/diff/100001/webrtc/modules/bitrate_controller/include/bitrate_controller.h File webrtc/modules/bitrate_controller/include/bitrate_controller.h (left): https://codereview.webrtc.org/2999073002/diff/100001/webrtc/modules/bitrate_controller/include/bitrate_controller.h#oldcode44 webrtc/modules/bitrate_controller/include/bitrate_controller.h:44: public RtcpBandwidthObserver { Add back https://codereview.webrtc.org/2999073002/diff/100001/webrtc/modules/bitrate_controller/include/bitrate_controller.h#oldcode64 webrtc/modules/bitrate_controller/include/bitrate_controller.h:64: // Creates ...
3 years, 4 months ago (2017-08-18 14:34:04 UTC) #33
gnish1
https://codereview.webrtc.org/2999073002/diff/100001/webrtc/modules/bitrate_controller/include/bitrate_controller.h File webrtc/modules/bitrate_controller/include/bitrate_controller.h (left): https://codereview.webrtc.org/2999073002/diff/100001/webrtc/modules/bitrate_controller/include/bitrate_controller.h#oldcode44 webrtc/modules/bitrate_controller/include/bitrate_controller.h:44: public RtcpBandwidthObserver { On 2017/08/18 14:34:03, terelius wrote: > ...
3 years, 4 months ago (2017-08-18 14:53:50 UTC) #36
terelius
lgtm
3 years, 4 months ago (2017-08-18 15:00:03 UTC) #37
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2999073002/120001
3 years, 4 months ago (2017-08-20 15:41:14 UTC) #42
commit-bot: I haz the power
3 years, 4 months ago (2017-08-20 16:20:18 UTC) #45
Message was sent while issue was closed.
Committed patchset #7 (id:120001) as
https://chromium.googlesource.com/external/webrtc/+/a36165c77b81e48201fb907df...

Powered by Google App Engine
This is Rietveld 408576698