blob: 06addfac254687fc9b0420642b70b717fb3c609d [file] [log] [blame]
--- net/quic/core/congestion_control/bbr_sender.cc
+++ net/quic/core/congestion_control/bbr_sender.cc
@@ -205,8 +205,8 @@
min_rtt_expired = UpdateBandwidthAndMinRtt(event_time, acked_packets);
UpdateRecoveryState(last_acked_packet, !lost_packets.empty(),
is_round_start);
- if (FLAGS_quic_reloadable_flag_quic_bbr_ack_spacing) {
- QUIC_FLAG_COUNT(gfe2_reloadable_flag_quic_bbr_ack_spacing);
+ if (FLAGS_quic_reloadable_flag_quic_bbr_ack_spacing2) {
+ QUIC_FLAG_COUNT_N(gfe2_reloadable_flag_quic_bbr_ack_spacing2, 1, 2);
UpdateAckSpacing(event_time, last_acked_packet, acked_packets);
}
}
@@ -482,9 +482,7 @@
return;
}
// Ignore acks of only one packet to filter out delayed acks.
- if (FLAGS_quic_reloadable_flag_quic_bbr_ack_spacing2 &&
- acked_packets.size() == 1) {
- QUIC_FLAG_COUNT(gfe2_reloadable_flag_quic_bbr_ack_spacing2);
+ if (acked_packets.size() == 1) {
return;
}
QuicTime largest_newly_acked_sent_time =
@@ -544,8 +542,9 @@
if (rtt_variance_weight_ > 0.f && !BandwidthEstimate().IsZero()) {
target_window += rtt_variance_weight_ * rtt_stats_->mean_deviation() *
BandwidthEstimate();
- } else if (FLAGS_quic_reloadable_flag_quic_bbr_ack_spacing &&
- !BandwidthEstimate().IsZero()) {
+ } else if (FLAGS_quic_reloadable_flag_quic_bbr_ack_spacing2 &&
+ is_at_full_bandwidth_) {
+ QUIC_FLAG_COUNT_N(gfe2_reloadable_flag_quic_bbr_ack_spacing2, 2, 2);
// Add CWND for inter-ack spacing once STARTUP has been exited.
target_window += max_ack_spacing_.GetBest() * BandwidthEstimate();
}