gfe-relnote: Allow GFE to perform initial cwnd up and down experiment. Protected by --gfe2_reloadable_flag_quic_gfe_selected_initial_cwnd_experiments.

The minimum cwnd is 10, and the default enabled up and down experiment is 25%.

PiperOrigin-RevId: 248124804
Change-Id: Ie21685f8e35946eaa499dab935b154b928af7318
diff --git a/quic/core/quic_sent_packet_manager.cc b/quic/core/quic_sent_packet_manager.cc
index 061ebac..202a8d8 100644
--- a/quic/core/quic_sent_packet_manager.cc
+++ b/quic/core/quic_sent_packet_manager.cc
@@ -264,11 +264,13 @@
           : cached_network_params.bandwidth_estimate_bytes_per_second());
   QuicTime::Delta rtt =
       QuicTime::Delta::FromMilliseconds(cached_network_params.min_rtt_ms());
-  AdjustNetworkParameters(bandwidth, rtt);
+  AdjustNetworkParameters(bandwidth, rtt, /*allow_cwnd_to_decrease=*/false);
 }
 
-void QuicSentPacketManager::AdjustNetworkParameters(QuicBandwidth bandwidth,
-                                                    QuicTime::Delta rtt) {
+void QuicSentPacketManager::AdjustNetworkParameters(
+    QuicBandwidth bandwidth,
+    QuicTime::Delta rtt,
+    bool allow_cwnd_to_decrease) {
   if (!rtt.IsZero()) {
     SetInitialRtt(rtt);
   }
@@ -277,7 +279,8 @@
     QUIC_RELOADABLE_FLAG_COUNT(quic_conservative_bursts);
     pacing_sender_.SetBurstTokens(kConservativeUnpacedBurst);
   }
-  send_algorithm_->AdjustNetworkParameters(bandwidth, rtt);
+  send_algorithm_->AdjustNetworkParameters(bandwidth, rtt,
+                                           allow_cwnd_to_decrease);
   if (debug_delegate_ != nullptr) {
     debug_delegate_->OnAdjustNetworkParameters(
         bandwidth, rtt.IsZero() ? rtt_stats_.SmoothedOrInitialRtt() : rtt,