Deprecate gfe2_reloabable_flag_quic_can_send_ack_frequency.
PiperOrigin-RevId: 778626011
diff --git a/quiche/common/quiche_feature_flags_list.h b/quiche/common/quiche_feature_flags_list.h
index 9d27ee1..eb4aecc 100755
--- a/quiche/common/quiche_feature_flags_list.h
+++ b/quiche/common/quiche_feature_flags_list.h
@@ -18,7 +18,6 @@
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_probe_two_rounds, true, true, "When true, the BB2U copt causes BBR2 to wait two rounds with out draining the queue before exiting PROBE_UP and BB2S has the same effect in STARTUP.")
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_simplify_inflight_hi, true, true, "When true, the BBHI copt causes QUIC BBRv2 to use a simpler algorithm for raising inflight_hi in PROBE_UP.")
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_block_until_settings_received_copt, true, true, "If enabled and a BSUS connection is received, blocks server connections until SETTINGS frame is received.")
-QUICHE_FLAG(bool, quiche_reloadable_flag_quic_can_send_ack_frequency, false, false, "If true, ack frequency frame can be sent from server to client.")
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_conservative_bursts, false, false, "If true, set burst token to 2 in cwnd bootstrapping experiment.")
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_conservative_cwnd_and_pacing_gains, false, false, "If true, uses conservative cwnd gain and pacing gain when cwnd gets bootstrapped.")
QUICHE_FLAG(bool, quiche_reloadable_flag_quic_default_enable_5rto_blackhole_detection2, true, true, "If true, default-enable 5RTO blachole detection.")
diff --git a/quiche/quic/core/quic_connection.cc b/quiche/quic/core/quic_connection.cc
index 38f2996..7b40eda 100644
--- a/quiche/quic/core/quic_connection.cc
+++ b/quiche/quic/core/quic_connection.cc
@@ -3259,7 +3259,6 @@
FirstSendingPacketNumber() + kMinReceivedBeforeAckDecimation;
if (should_bundle_ack_frequency) {
- QUIC_RELOADABLE_FLAG_COUNT_N(quic_can_send_ack_frequency, 3, 3);
ack_frequency_sent_ = true;
auto frame = sent_packet_manager_.GetUpdatedAckFrequencyFrame();
visitor_->SendAckFrequency(frame);
@@ -4099,7 +4098,6 @@
}
if (send_ack_frequency_on_handshake_completion_ &&
sent_packet_manager_.CanSendAckFrequency()) {
- QUIC_RELOADABLE_FLAG_COUNT_N(quic_can_send_ack_frequency, 2, 3);
auto ack_frequency_frame =
sent_packet_manager_.GetUpdatedAckFrequencyFrame();
// This AckFrequencyFrame is meant to only update the max_ack_delay. All
diff --git a/quiche/quic/core/quic_connection_test.cc b/quiche/quic/core/quic_connection_test.cc
index 74060c0..87e13dd 100644
--- a/quiche/quic/core/quic_connection_test.cc
+++ b/quiche/quic/core/quic_connection_test.cc
@@ -13267,11 +13267,13 @@
TestConnectionCloseQuicErrorCode(QUIC_AEAD_LIMIT_REACHED);
}
+// TODO(b/389762349): Re-enable these tests when sending AckFrequency is
+// restored.
+#if 0
TEST_P(QuicConnectionTest, SendAckFrequencyFrame) {
if (!version().HasIetfQuicFrames()) {
return;
}
- SetQuicReloadableFlag(quic_can_send_ack_frequency, true);
set_perspective(Perspective::IS_SERVER);
EXPECT_CALL(*send_algorithm_, OnCongestionEvent(_, _, _, _, _, _, _))
.Times(AnyNumber());
@@ -13314,7 +13316,6 @@
if (!version().HasIetfQuicFrames()) {
return;
}
- SetQuicReloadableFlag(quic_can_send_ack_frequency, true);
set_perspective(Perspective::IS_SERVER);
EXPECT_CALL(*send_algorithm_, OnCongestionEvent(_, _, _, _, _, _, _))
.Times(AnyNumber());
@@ -13346,6 +13347,7 @@
EXPECT_EQ(captured_frame.requested_max_ack_delay,
QuicTime::Delta::FromMilliseconds(GetDefaultDelayedAckTimeMs()));
}
+#endif
TEST_P(QuicConnectionTest, FastRecoveryOfLostServerHello) {
if (!connection_.SupportsMultiplePacketNumberSpaces()) {
@@ -14322,12 +14324,14 @@
EXPECT_FALSE(connection_.connected());
}
-// Regresstion test for b/175685916
+// TODO(b/389762349): Re-enable these tests when sending AckFrequency is
+// restored.
+#if 0
+// Regression test for b/175685916
TEST_P(QuicConnectionTest, TryToFlushAckWithAckQueued) {
if (!version().HasIetfQuicFrames()) {
return;
}
- SetQuicReloadableFlag(quic_can_send_ack_frequency, true);
set_perspective(Perspective::IS_SERVER);
QuicConfig config;
@@ -14349,6 +14353,7 @@
&SimpleSessionNotifier::WriteOrBufferAckFrequency));
QuicConnectionPeer::SendPing(&connection_);
}
+#endif
TEST_P(QuicConnectionTest, PathChallengeBeforePeerIpAddressChangeAtServer) {
set_perspective(Perspective::IS_SERVER);
diff --git a/quiche/quic/core/quic_sent_packet_manager.cc b/quiche/quic/core/quic_sent_packet_manager.cc
index 2c60d23..62e879c 100644
--- a/quiche/quic/core/quic_sent_packet_manager.cc
+++ b/quiche/quic/core/quic_sent_packet_manager.cc
@@ -131,16 +131,10 @@
peer_max_ack_delay_ =
QuicTime::Delta::FromMilliseconds(config.ReceivedMaxAckDelayMs());
}
- if (GetQuicReloadableFlag(quic_can_send_ack_frequency) &&
- perspective == Perspective::IS_SERVER) {
- if (config.HasReceivedMinAckDelayDraft10Ms()) {
- peer_min_ack_delay_ = QuicTime::Delta::FromMilliseconds(
- config.ReceivedMinAckDelayDraft10Ms());
- }
- if (config.HasClientSentConnectionOption(kAFF1, perspective)) {
- use_smoothed_rtt_in_ack_delay_ = true;
- }
- }
+ // TODO(b/389762349): set peer_min_ack_delay_ if
+ // config.HasReceivedMinAckDelayDraft10Ms(). Set
+ // use_smoothed_rtt_in_ack_delay_ based on
+ // config.HasClientSentConnectionOption(kAFF1, perspective).
if (config.HasClientSentConnectionOption(kMAD0, perspective)) {
ignore_ack_delay_ = true;
}
@@ -675,7 +669,6 @@
return frame;
}
- QUIC_RELOADABLE_FLAG_COUNT_N(quic_can_send_ack_frequency, 1, 3);
frame.ack_eliciting_threshold = kMaxRetransmittablePacketsBeforeAck;
auto rtt = use_smoothed_rtt_in_ack_delay_ ? rtt_stats_.SmoothedOrInitialRtt()
: rtt_stats_.MinOrInitialRtt();
diff --git a/quiche/quic/core/quic_sent_packet_manager_test.cc b/quiche/quic/core/quic_sent_packet_manager_test.cc
index d7c051b..925c41b 100644
--- a/quiche/quic/core/quic_sent_packet_manager_test.cc
+++ b/quiche/quic/core/quic_sent_packet_manager_test.cc
@@ -3120,6 +3120,9 @@
EXPECT_EQ(message_frame->message_length, 0);
}
+// TODO(b/389762349): Re-enable these tests when sending AckFrequency is
+// restored.
+#if 0
TEST_F(QuicSentPacketManagerTest, BuildAckFrequencyFrame) {
SetQuicReloadableFlag(quic_can_send_ack_frequency, true);
EXPECT_CALL(*send_algorithm_, SetFromConfig(_, _));
@@ -3146,6 +3149,7 @@
QuicTime::Delta::FromMilliseconds(1u)));
EXPECT_EQ(frame.ack_eliciting_threshold, 10u);
}
+#endif
TEST_F(QuicSentPacketManagerTest, SmoothedRttIgnoreAckDelay) {
QuicConfig config;
@@ -3259,6 +3263,9 @@
EXPECT_EQ(kTestRTT, manager_.GetRttStats()->latest_rtt());
}
+// TODO(b/389762349): Re-enable these tests when sending AckFrequency is
+// restored.
+#if 0
TEST_F(QuicSentPacketManagerTest, BuildAckFrequencyFrameWithSRTT) {
SetQuicReloadableFlag(quic_can_send_ack_frequency, true);
EXPECT_CALL(*send_algorithm_, SetFromConfig(_, _));
@@ -3287,6 +3294,7 @@
std::max(rtt_stats->SmoothedOrInitialRtt() * 0.25,
QuicTime::Delta::FromMilliseconds(1u)));
}
+#endif
TEST_F(QuicSentPacketManagerTest, SetInitialRtt) {
// Upper bounds.