Deprecate gfe2_restart_flag_quic_receive_ecn3.
PiperOrigin-RevId: 604725307
diff --git a/quiche/quic/core/http/end_to_end_test.cc b/quiche/quic/core/http/end_to_end_test.cc
index 3eaddf2..e354a7f 100644
--- a/quiche/quic/core/http/end_to_end_test.cc
+++ b/quiche/quic/core/http/end_to_end_test.cc
@@ -7263,8 +7263,7 @@
EXPECT_EQ(ecn->ce, 0);
EXPECT_TRUE(client_connection->set_ecn_codepoint(ECN_ECT0));
client_->SendSynchronousRequest("/foo");
- if (!GetQuicRestartFlag(quic_receive_ecn3) ||
- !VersionHasIetfQuicFrames(version_.transport_version)) {
+ if (!VersionHasIetfQuicFrames(version_.transport_version)) {
EXPECT_EQ(ecn->ect0, 0);
} else {
EXPECT_GT(ecn->ect0, 0);
@@ -7288,8 +7287,7 @@
EXPECT_EQ(ecn->ce, 0);
EXPECT_TRUE(client_connection->set_ecn_codepoint(ECN_ECT1));
client_->SendSynchronousRequest("/foo");
- if (!GetQuicRestartFlag(quic_receive_ecn3) ||
- !VersionHasIetfQuicFrames(version_.transport_version)) {
+ if (!VersionHasIetfQuicFrames(version_.transport_version)) {
EXPECT_EQ(ecn->ect1, 0);
} else {
EXPECT_GT(ecn->ect1, 0);
@@ -7313,8 +7311,7 @@
EXPECT_EQ(ecn->ce, 0);
EXPECT_TRUE(client_connection->set_ecn_codepoint(ECN_CE));
client_->SendSynchronousRequest("/foo");
- if (!GetQuicRestartFlag(quic_receive_ecn3) ||
- !VersionHasIetfQuicFrames(version_.transport_version)) {
+ if (!VersionHasIetfQuicFrames(version_.transport_version)) {
EXPECT_EQ(ecn->ce, 0);
} else {
EXPECT_GT(ecn->ce, 0);
@@ -7342,8 +7339,7 @@
server_thread_->Pause();
EXPECT_EQ(ecn->ect0, 0);
EXPECT_EQ(ecn->ce, 0);
- if (!GetQuicRestartFlag(quic_receive_ecn3) ||
- !VersionHasIetfQuicFrames(version_.transport_version)) {
+ if (!VersionHasIetfQuicFrames(version_.transport_version)) {
EXPECT_EQ(ecn->ect1, 0);
} else {
EXPECT_GT(ecn->ect1, 0);
diff --git a/quiche/quic/core/quic_connection_test.cc b/quiche/quic/core/quic_connection_test.cc
index b767764..ac61c60 100644
--- a/quiche/quic/core/quic_connection_test.cc
+++ b/quiche/quic/core/quic_connection_test.cc
@@ -16929,23 +16929,17 @@
QuicConnectionPeer::SendPing(&connection_);
}
QuicConnectionStats stats = connection_.GetStats();
- if (GetQuicRestartFlag(quic_receive_ecn3)) {
- ASSERT_TRUE(ack_frame.ecn_counters.has_value());
- EXPECT_EQ(ack_frame.ecn_counters->ect0, 1);
- EXPECT_EQ(stats.num_ack_frames_sent_with_ecn,
- connection_.version().HasIetfQuicFrames() ? 1 : 0);
- } else {
- EXPECT_FALSE(ack_frame.ecn_counters.has_value());
- EXPECT_EQ(stats.num_ack_frames_sent_with_ecn, 0);
- }
+ ASSERT_TRUE(ack_frame.ecn_counters.has_value());
+ EXPECT_EQ(ack_frame.ecn_counters->ect0, 1);
+ EXPECT_EQ(stats.num_ack_frames_sent_with_ecn,
+ connection_.version().HasIetfQuicFrames() ? 1 : 0);
EXPECT_EQ(stats.num_ecn_marks_received.ect0, 1);
EXPECT_EQ(stats.num_ecn_marks_received.ect1, 0);
EXPECT_EQ(stats.num_ecn_marks_received.ce, 0);
}
TEST_P(QuicConnectionTest, EcnMarksCoalescedPacket) {
- if (!connection_.version().CanSendCoalescedPackets() ||
- !GetQuicRestartFlag(quic_receive_ecn3)) {
+ if (!connection_.version().CanSendCoalescedPackets()) {
return;
}
QuicCryptoFrame crypto_frame1{ENCRYPTION_HANDSHAKE, 0, "foo"};
@@ -16997,21 +16991,15 @@
EXPECT_TRUE(ack_frame.ecn_counters.has_value());
EXPECT_EQ(ack_frame.ecn_counters->ect0, 1);
}
- if (GetQuicRestartFlag(quic_receive_ecn3)) {
- EXPECT_EQ(stats.num_ecn_marks_received.ect0, 2);
- EXPECT_EQ(stats.num_ack_frames_sent_with_ecn,
- connection_.version().HasIetfQuicFrames() ? 2 : 0);
- } else {
- EXPECT_EQ(stats.num_ecn_marks_received.ect0, 0);
- EXPECT_EQ(stats.num_ack_frames_sent_with_ecn, 0);
- }
+ EXPECT_EQ(stats.num_ecn_marks_received.ect0, 2);
+ EXPECT_EQ(stats.num_ack_frames_sent_with_ecn,
+ connection_.version().HasIetfQuicFrames() ? 2 : 0);
EXPECT_EQ(stats.num_ecn_marks_received.ect1, 0);
EXPECT_EQ(stats.num_ecn_marks_received.ce, 0);
}
TEST_P(QuicConnectionTest, EcnMarksUndecryptableCoalescedPacket) {
- if (!connection_.version().CanSendCoalescedPackets() ||
- !GetQuicRestartFlag(quic_receive_ecn3)) {
+ if (!connection_.version().CanSendCoalescedPackets()) {
return;
}
// SetFromConfig is always called after construction from InitializeSession.
@@ -17126,11 +17114,9 @@
EXPECT_EQ(ack_frame.ecn_counters->ect0,
connection_.SupportsMultiplePacketNumberSpaces() ? 1 : 2);
QuicConnectionStats stats = connection_.GetStats();
- EXPECT_EQ(stats.num_ecn_marks_received.ect0,
- GetQuicRestartFlag(quic_receive_ecn3) ? 2 : 0);
+ EXPECT_EQ(stats.num_ecn_marks_received.ect0, 2);
EXPECT_EQ(stats.num_ecn_marks_received.ect1, 0);
- EXPECT_EQ(stats.num_ecn_marks_received.ce,
- GetQuicRestartFlag(quic_receive_ecn3) ? 1 : 0);
+ EXPECT_EQ(stats.num_ecn_marks_received.ce, 1);
}
TEST_P(QuicConnectionTest, ReceivedPacketInfoDefaults) {
diff --git a/quiche/quic/core/quic_flags_list.h b/quiche/quic/core/quic_flags_list.h
index f222234..299da03 100644
--- a/quiche/quic/core/quic_flags_list.h
+++ b/quiche/quic/core/quic_flags_list.h
@@ -107,8 +107,6 @@
QUIC_FLAG(quic_reloadable_flag_quic_clone_ecn, true)
// When true, defaults to BBR congestion control instead of Cubic.
QUIC_FLAG(quic_reloadable_flag_quic_default_to_bbr, false)
-// When true, report received ECN markings to the peer. Replaces quic_receive_ecn2 to use correct codepoints.
-QUIC_FLAG(quic_restart_flag_quic_receive_ecn3, true)
// When true, support RFC9369.
QUIC_FLAG(quic_reloadable_flag_quic_enable_version_rfcv2, false)
// 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.
diff --git a/quiche/quic/core/quic_packet_reader.cc b/quiche/quic/core/quic_packet_reader.cc
index 1436ab5..86062fd 100644
--- a/quiche/quic/core/quic_packet_reader.cc
+++ b/quiche/quic/core/quic_packet_reader.cc
@@ -53,11 +53,8 @@
{QuicUdpPacketInfoBit::DROPPED_PACKETS,
QuicUdpPacketInfoBit::PEER_ADDRESS, QuicUdpPacketInfoBit::V4_SELF_IP,
QuicUdpPacketInfoBit::V6_SELF_IP, QuicUdpPacketInfoBit::RECV_TIMESTAMP,
- QuicUdpPacketInfoBit::TTL, QuicUdpPacketInfoBit::GOOGLE_PACKET_HEADER});
- if (GetQuicRestartFlag(quic_receive_ecn3)) {
- QUIC_RESTART_FLAG_COUNT_N(quic_receive_ecn3, 2, 2);
- info_bits.Set(QuicUdpPacketInfoBit::ECN);
- }
+ QuicUdpPacketInfoBit::TTL, QuicUdpPacketInfoBit::GOOGLE_PACKET_HEADER,
+ QuicUdpPacketInfoBit::ECN});
size_t packets_read =
socket_api_.ReadMultiplePackets(fd, info_bits, &read_results_);
for (size_t i = 0; i < packets_read; ++i) {
diff --git a/quiche/quic/core/quic_received_packet_manager.cc b/quiche/quic/core/quic_received_packet_manager.cc
index 46cc259..6cef3e4 100644
--- a/quiche/quic/core/quic_received_packet_manager.cc
+++ b/quiche/quic/core/quic_received_packet_manager.cc
@@ -124,8 +124,7 @@
}
}
- if (GetQuicRestartFlag(quic_receive_ecn3) && ecn != ECN_NOT_ECT) {
- QUIC_RESTART_FLAG_COUNT_N(quic_receive_ecn3, 1, 2);
+ if (ecn != ECN_NOT_ECT) {
if (!ack_frame_.ecn_counters.has_value()) {
ack_frame_.ecn_counters = QuicEcnCounts();
}
diff --git a/quiche/quic/core/quic_received_packet_manager_test.cc b/quiche/quic/core/quic_received_packet_manager_test.cc
index c09c219..f79323a 100644
--- a/quiche/quic/core/quic_received_packet_manager_test.cc
+++ b/quiche/quic/core/quic_received_packet_manager_test.cc
@@ -703,14 +703,10 @@
RecordPacketReceipt(5, QuicTime::Zero(), ECN_ECT1);
RecordPacketReceipt(6, QuicTime::Zero(), ECN_CE);
QuicFrame ack = received_manager_.GetUpdatedAckFrame(QuicTime::Zero());
- if (GetQuicRestartFlag(quic_receive_ecn3)) {
- EXPECT_TRUE(ack.ack_frame->ecn_counters.has_value());
- EXPECT_EQ(ack.ack_frame->ecn_counters->ect0, 1);
- EXPECT_EQ(ack.ack_frame->ecn_counters->ect1, 1);
- EXPECT_EQ(ack.ack_frame->ecn_counters->ce, 1);
- } else {
- EXPECT_FALSE(ack.ack_frame->ecn_counters.has_value());
- }
+ EXPECT_TRUE(ack.ack_frame->ecn_counters.has_value());
+ EXPECT_EQ(ack.ack_frame->ecn_counters->ect0, 1);
+ EXPECT_EQ(ack.ack_frame->ecn_counters->ect1, 1);
+ EXPECT_EQ(ack.ack_frame->ecn_counters->ce, 1);
}
} // namespace