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