From ccd10484985ee04d3b7b3f868dcb9310fe1ec688 Mon Sep 17 00:00:00 2001 From: Sebastian Jansson Date: Tue, 22 May 2018 12:23:51 +0200 Subject: [PATCH] Apply constraints on pacing rate in BBR controller. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This avoid sending more padding than required for the current target constraints. Bug: webrt:8415 Change-Id: I3a668990f026414ab78f8406248cde18b81123cc Reviewed-on: https://webrtc-review.googlesource.com/77763 Commit-Queue: Sebastian Jansson Reviewed-by: Björn Terelius Cr-Commit-Position: refs/heads/master@{#23364} --- .../congestion_controller/bbr/bbr_network_controller.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/congestion_controller/bbr/bbr_network_controller.cc b/modules/congestion_controller/bbr/bbr_network_controller.cc index bfb35cfbf4..63c8e4cd53 100644 --- a/modules/congestion_controller/bbr/bbr_network_controller.cc +++ b/modules/congestion_controller/bbr/bbr_network_controller.cc @@ -208,10 +208,14 @@ NetworkControlUpdate BbrNetworkController::CreateRateUpdate(Timestamp at_time) { target_rate = std::min(target_rate, pacing_rate); if (constraints_) { - if (constraints_->max_data_rate) + if (constraints_->max_data_rate) { target_rate = std::min(target_rate, *constraints_->max_data_rate); - if (constraints_->min_data_rate) + pacing_rate = std::min(pacing_rate, *constraints_->max_data_rate); + } + if (constraints_->min_data_rate) { target_rate = std::max(target_rate, *constraints_->min_data_rate); + pacing_rate = std::max(pacing_rate, *constraints_->min_data_rate); + } } NetworkControlUpdate update;