Remove WebRTC-Bwe-AlrLimitedBackoff field trial.

This trial has been unused for some time, time to clean it up.

Bug: webrtc:10144
Change-Id: I2b1bd9ff0335efdc07f47a361878915f1be383a7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267410
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37421}
This commit is contained in:
Erik Språng 2022-07-02 00:07:08 +02:00 committed by WebRTC LUCI CQ
parent 591b63d78d
commit f82e8fa911
3 changed files with 5 additions and 33 deletions

View File

@ -59,8 +59,7 @@ DelayBasedBwe::Result::Result()
: updated(false),
probe(false),
target_bitrate(DataRate::Zero()),
recovered_from_overuse(false),
backoff_in_alr(false) {}
recovered_from_overuse(false) {}
DelayBasedBwe::DelayBasedBwe(const FieldTrialsView* key_value_config,
RtcEventLog* event_log,
@ -80,15 +79,10 @@ DelayBasedBwe::DelayBasedBwe(const FieldTrialsView* key_value_config,
uma_recorded_(false),
rate_control_(key_value_config, /*send_side=*/true),
prev_bitrate_(DataRate::Zero()),
has_once_detected_overuse_(false),
prev_state_(BandwidthUsage::kBwNormal),
alr_limited_backoff_enabled_(absl::StartsWith(
key_value_config->Lookup("WebRTC-Bwe-AlrLimitedBackoff"),
"Enabled")) {
prev_state_(BandwidthUsage::kBwNormal) {
RTC_LOG(LS_INFO)
<< "Initialized DelayBasedBwe with separate audio overuse detection"
<< separate_audio_.Parser()->Encode() << " and alr limited backoff "
<< (alr_limited_backoff_enabled_ ? "enabled" : "disabled");
<< separate_audio_.Parser()->Encode();
}
DelayBasedBwe::~DelayBasedBwe() {}
@ -217,14 +211,8 @@ DelayBasedBwe::Result DelayBasedBwe::MaybeUpdateEstimate(
// Currently overusing the bandwidth.
if (active_delay_detector_->State() == BandwidthUsage::kBwOverusing) {
if (has_once_detected_overuse_ && in_alr && alr_limited_backoff_enabled_) {
if (rate_control_.TimeToReduceFurther(at_time, prev_bitrate_)) {
result.updated =
UpdateEstimate(at_time, prev_bitrate_, &result.target_bitrate);
result.backoff_in_alr = true;
}
} else if (acked_bitrate &&
rate_control_.TimeToReduceFurther(at_time, *acked_bitrate)) {
if (acked_bitrate &&
rate_control_.TimeToReduceFurther(at_time, *acked_bitrate)) {
result.updated =
UpdateEstimate(at_time, acked_bitrate, &result.target_bitrate);
} else if (!acked_bitrate && rate_control_.ValidEstimate() &&
@ -238,7 +226,6 @@ DelayBasedBwe::Result DelayBasedBwe::MaybeUpdateEstimate(
result.probe = false;
result.target_bitrate = rate_control_.LatestEstimate();
}
has_once_detected_overuse_ = true;
} else {
if (probe_bitrate) {
result.probe = true;
@ -315,8 +302,4 @@ TimeDelta DelayBasedBwe::GetExpectedBwePeriod() const {
return rate_control_.GetExpectedBandwidthPeriod();
}
void DelayBasedBwe::SetAlrLimitedBackoffExperiment(bool enabled) {
alr_limited_backoff_enabled_ = enabled;
}
} // namespace webrtc

View File

@ -55,7 +55,6 @@ class DelayBasedBwe {
bool probe;
DataRate target_bitrate = DataRate::Zero();
bool recovered_from_overuse;
bool backoff_in_alr;
BandwidthUsage delay_detector_state;
};
@ -80,7 +79,6 @@ class DelayBasedBwe {
void SetStartBitrate(DataRate start_bitrate);
void SetMinBitrate(DataRate min_bitrate);
TimeDelta GetExpectedBwePeriod() const;
void SetAlrLimitedBackoffExperiment(bool enabled);
DataRate TriggerOveruse(Timestamp at_time,
absl::optional<DataRate> link_capacity);
DataRate last_estimate() const { return prev_bitrate_; }
@ -126,9 +124,7 @@ class DelayBasedBwe {
bool uma_recorded_;
AimdRateControl rate_control_;
DataRate prev_bitrate_;
bool has_once_detected_overuse_;
BandwidthUsage prev_state_;
bool alr_limited_backoff_enabled_;
};
} // namespace webrtc

View File

@ -540,7 +540,6 @@ NetworkControlUpdate GoogCcNetworkController::OnTransportPacketsFeedback(
NetworkControlUpdate update;
bool recovered_from_overuse = false;
bool backoff_in_alr = false;
DelayBasedBwe::Result result;
result = delay_based_bwe_->IncomingPacketFeedbackVector(
@ -562,18 +561,12 @@ NetworkControlUpdate GoogCcNetworkController::OnTransportPacketsFeedback(
bandwidth_estimation_->UpdateLossBasedEstimator(report,
result.delay_detector_state);
recovered_from_overuse = result.recovered_from_overuse;
backoff_in_alr = result.backoff_in_alr;
if (recovered_from_overuse) {
probe_controller_->SetAlrStartTimeMs(alr_start_time);
auto probes = probe_controller_->RequestProbe(report.feedback_time.ms());
update.probe_cluster_configs.insert(update.probe_cluster_configs.end(),
probes.begin(), probes.end());
} else if (backoff_in_alr) {
// If we just backed off during ALR, request a new probe.
auto probes = probe_controller_->RequestProbe(report.feedback_time.ms());
update.probe_cluster_configs.insert(update.probe_cluster_configs.end(),
probes.begin(), probes.end());
}
// No valid RTT could be because send-side BWE isn't used, in which case