Deprecate 3 members of NetworkParams that were used for cwnd bootstrapping:
- quic_fix_bbr_cwnd_in_bandwidth_resumption
- quic_bbr_fix_pacing_rate
- quic_bbr_donot_inject_bandwidth

In GFE, these members are always true.  In uStreamer, there was an effort to evaluate their effects via experiments, but the bugs referenced by the TODOs have all been closed.

PiperOrigin-RevId: 355008247
Change-Id: Ia810f7f6eb6037529b69c3b55343ea622366b6a8
diff --git a/quic/core/congestion_control/bbr_sender.cc b/quic/core/congestion_control/bbr_sender.cc
index 53a1300..940fe26 100644
--- a/quic/core/congestion_control/bbr_sender.cc
+++ b/quic/core/congestion_control/bbr_sender.cc
@@ -284,22 +284,17 @@
   const QuicBandwidth& bandwidth = params.bandwidth;
   const QuicTime::Delta& rtt = params.rtt;
 
-  if (!params.quic_bbr_donot_inject_bandwidth && !bandwidth.IsZero()) {
-    max_bandwidth_.Update(bandwidth, round_trip_count_);
-  }
   if (!rtt.IsZero() && (min_rtt_ > rtt || min_rtt_.IsZero())) {
     min_rtt_ = rtt;
   }
 
-  if (params.quic_fix_bbr_cwnd_in_bandwidth_resumption && mode_ == STARTUP) {
+  if (mode_ == STARTUP) {
     if (bandwidth.IsZero()) {
       // Ignore bad bandwidth samples.
       return;
     }
 
-    auto cwnd_bootstrapping_rtt = params.quic_bbr_donot_inject_bandwidth
-                                      ? GetMinRtt()
-                                      : rtt_stats_->SmoothedOrInitialRtt();
+    auto cwnd_bootstrapping_rtt = GetMinRtt();
     if (params.max_initial_congestion_window > 0) {
       max_congestion_window_with_network_parameters_adjusted_ =
           params.max_initial_congestion_window * kDefaultTCPMSS;
@@ -330,13 +325,12 @@
       set_high_cwnd_gain(kDerivedHighCWNDGain);
     }
     congestion_window_ = new_cwnd;
-    if (params.quic_bbr_fix_pacing_rate) {
-      // Pace at the rate of new_cwnd / RTT.
-      QuicBandwidth new_pacing_rate =
-          QuicBandwidth::FromBytesAndTimeDelta(congestion_window_, GetMinRtt());
-      pacing_rate_ = std::max(pacing_rate_, new_pacing_rate);
-      detect_overshooting_ = true;
-    }
+
+    // Pace at the rate of new_cwnd / RTT.
+    QuicBandwidth new_pacing_rate =
+        QuicBandwidth::FromBytesAndTimeDelta(congestion_window_, GetMinRtt());
+    pacing_rate_ = std::max(pacing_rate_, new_pacing_rate);
+    detect_overshooting_ = true;
   }
 }
 
@@ -525,7 +519,7 @@
     min_rtt_ = sample_min_rtt;
     min_rtt_timestamp_ = now;
   }
-  DCHECK(!min_rtt_.IsZero());
+  QUICHE_DCHECK(!min_rtt_.IsZero());
 
   return min_rtt_expired;
 }
@@ -592,7 +586,7 @@
   rounds_without_bandwidth_gain_++;
   if ((rounds_without_bandwidth_gain_ >= num_startup_rtts_) ||
       ShouldExitStartupDueToLoss(last_packet_send_state)) {
-    DCHECK(has_non_app_limited_sample_);
+    QUICHE_DCHECK(has_non_app_limited_sample_);
     is_at_full_bandwidth_ = true;
   }
 }
@@ -611,7 +605,7 @@
 }
 
 void BbrSender::OnExitStartup(QuicTime now) {
-  DCHECK_EQ(mode_, STARTUP);
+  QUICHE_DCHECK_EQ(mode_, STARTUP);
   if (stats_) {
     stats_->slowstart_duration.Stop(now);
   }
diff --git a/quic/core/congestion_control/send_algorithm_interface.h b/quic/core/congestion_control/send_algorithm_interface.h
index a038754..2fa1217 100644
--- a/quic/core/congestion_control/send_algorithm_interface.h
+++ b/quic/core/congestion_control/send_algorithm_interface.h
@@ -47,25 +47,13 @@
       return bandwidth == other.bandwidth && rtt == other.rtt &&
              max_initial_congestion_window ==
                  other.max_initial_congestion_window &&
-             allow_cwnd_to_decrease == other.allow_cwnd_to_decrease &&
-             quic_fix_bbr_cwnd_in_bandwidth_resumption ==
-                 other.quic_fix_bbr_cwnd_in_bandwidth_resumption &&
-             quic_bbr_fix_pacing_rate == other.quic_bbr_fix_pacing_rate &&
-             quic_bbr_donot_inject_bandwidth ==
-                 other.quic_bbr_donot_inject_bandwidth;
+             allow_cwnd_to_decrease == other.allow_cwnd_to_decrease;
     }
 
     QuicBandwidth bandwidth;
     QuicTime::Delta rtt;
     int max_initial_congestion_window = 0;
     bool allow_cwnd_to_decrease;
-    // Code changes that are controlled by flags.
-    // TODO(b/131899599): Remove after impact of fix is measured.
-    bool quic_fix_bbr_cwnd_in_bandwidth_resumption = true;
-    // TODO(b/143540157): Remove after impact of fix is measured.
-    bool quic_bbr_fix_pacing_rate = true;
-    // TODO(b/72089315, b/143891040): Remove after impact of fix is measured.
-    bool quic_bbr_donot_inject_bandwidth = true;
   };
 
   static SendAlgorithmInterface* Create(