gfe-relnote: Deprecate gfe2_reloadable_flag_quic_use_uber_loss_algorithm.
PiperOrigin-RevId: 254269046
Change-Id: I316ec464a2dc849d62e733c6428e5387e26db3e8
diff --git a/quic/core/congestion_control/general_loss_algorithm.cc b/quic/core/congestion_control/general_loss_algorithm.cc
index cf4bc35..d42896c 100644
--- a/quic/core/congestion_control/general_loss_algorithm.cc
+++ b/quic/core/congestion_control/general_loss_algorithm.cc
@@ -107,14 +107,12 @@
}
// Clear least_in_flight_.
least_in_flight_.Clear();
- DCHECK(!unacked_packets.use_uber_loss_algorithm() ||
- packet_number_space_ ==
- unacked_packets.GetPacketNumberSpace(largest_newly_acked));
+ DCHECK_EQ(packet_number_space_,
+ unacked_packets.GetPacketNumberSpace(largest_newly_acked));
for (; it != unacked_packets.end() && packet_number <= largest_newly_acked;
++it, ++packet_number) {
- if (unacked_packets.use_uber_loss_algorithm() &&
- unacked_packets.GetPacketNumberSpace(it->encryption_level) !=
- packet_number_space_) {
+ if (unacked_packets.GetPacketNumberSpace(it->encryption_level) !=
+ packet_number_space_) {
// Skip packets of different packet number space.
continue;
}
@@ -146,16 +144,11 @@
// there are retransmittable packets in flight.
// This also implements a timer-protected variant of FACK.
QuicPacketNumber largest_sent_retransmittable_packet;
- if (unacked_packets.use_uber_loss_algorithm()) {
- // Use largest_sent_retransmittable_packet of corresponding packet number
- // space for timer based loss detection.
- largest_sent_retransmittable_packet =
- unacked_packets.GetLargestSentRetransmittableOfPacketNumberSpace(
- packet_number_space_);
- } else {
- largest_sent_retransmittable_packet =
- unacked_packets.largest_sent_retransmittable_packet();
- }
+ // Use largest_sent_retransmittable_packet of corresponding packet number
+ // space for timer based loss detection.
+ largest_sent_retransmittable_packet =
+ unacked_packets.GetLargestSentRetransmittableOfPacketNumberSpace(
+ packet_number_space_);
if (largest_sent_retransmittable_packet <= largest_newly_acked ||
loss_type_ == kTime || loss_type_ == kAdaptiveTime) {
QuicTime when_lost = it->sent_time + loss_delay;
diff --git a/quic/core/congestion_control/general_loss_algorithm.h b/quic/core/congestion_control/general_loss_algorithm.h
index 319203a..1dd5b2a 100644
--- a/quic/core/congestion_control/general_loss_algorithm.h
+++ b/quic/core/congestion_control/general_loss_algorithm.h
@@ -75,7 +75,6 @@
// The least in flight packet. Loss detection should start from this. Please
// note, least_in_flight_ could be largest packet ever sent + 1.
QuicPacketNumber least_in_flight_;
- // This is only used when quic_use_uber_loss_algorithm is true.
PacketNumberSpace packet_number_space_;
};
diff --git a/quic/core/congestion_control/general_loss_algorithm_test.cc b/quic/core/congestion_control/general_loss_algorithm_test.cc
index a249679..f2ebbb2 100644
--- a/quic/core/congestion_control/general_loss_algorithm_test.cc
+++ b/quic/core/congestion_control/general_loss_algorithm_test.cc
@@ -27,9 +27,7 @@
rtt_stats_.UpdateRtt(QuicTime::Delta::FromMilliseconds(100),
QuicTime::Delta::Zero(), clock_.Now());
EXPECT_LT(0, rtt_stats_.smoothed_rtt().ToMicroseconds());
- if (unacked_packets_.use_uber_loss_algorithm()) {
- loss_algorithm_.SetPacketNumberSpace(HANDSHAKE_DATA);
- }
+ loss_algorithm_.SetPacketNumberSpace(HANDSHAKE_DATA);
}
~GeneralLossAlgorithmTest() override {}
@@ -57,15 +55,8 @@
void VerifyLosses(uint64_t largest_newly_acked,
const AckedPacketVector& packets_acked,
const std::vector<uint64_t>& losses_expected) {
- if (unacked_packets_.use_uber_loss_algorithm()) {
- unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
- APPLICATION_DATA, QuicPacketNumber(largest_newly_acked));
- } else if (!unacked_packets_.largest_acked().IsInitialized() ||
- QuicPacketNumber(largest_newly_acked) >
- unacked_packets_.largest_acked()) {
- unacked_packets_.IncreaseLargestAcked(
- QuicPacketNumber(largest_newly_acked));
- }
+ unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
+ APPLICATION_DATA, QuicPacketNumber(largest_newly_acked));
LostPacketVector lost_packets;
loss_algorithm_.DetectLosses(unacked_packets_, clock_.Now(), rtt_stats_,
QuicPacketNumber(largest_newly_acked),
@@ -215,12 +206,8 @@
clock_.AdvanceTime(rtt_stats_.smoothed_rtt());
// Early retransmit when the final packet gets acked and the first is nacked.
- if (unacked_packets_.use_uber_loss_algorithm()) {
- unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
- APPLICATION_DATA, QuicPacketNumber(2));
- } else {
- unacked_packets_.IncreaseLargestAcked(QuicPacketNumber(2));
- }
+ unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
+ APPLICATION_DATA, QuicPacketNumber(2));
unacked_packets_.RemoveFromInFlight(QuicPacketNumber(2));
packets_acked.push_back(AckedPacket(
QuicPacketNumber(2), kMaxOutgoingPacketSize, QuicTime::Zero()));
@@ -238,12 +225,8 @@
clock_.AdvanceTime(rtt_stats_.smoothed_rtt());
// Early retransmit when the final packet gets acked and the first is nacked.
- if (unacked_packets_.use_uber_loss_algorithm()) {
- unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
- APPLICATION_DATA, QuicPacketNumber(2));
- } else {
- unacked_packets_.IncreaseLargestAcked(QuicPacketNumber(2));
- }
+ unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
+ APPLICATION_DATA, QuicPacketNumber(2));
unacked_packets_.RemoveFromInFlight(QuicPacketNumber(2));
packets_acked.push_back(AckedPacket(
QuicPacketNumber(2), kMaxOutgoingPacketSize, QuicTime::Zero()));
@@ -270,12 +253,8 @@
AckedPacketVector packets_acked;
// Wait another RTT and ack 2.
clock_.AdvanceTime(rtt_stats_.smoothed_rtt());
- if (unacked_packets_.use_uber_loss_algorithm()) {
- unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
- APPLICATION_DATA, QuicPacketNumber(2));
- } else {
- unacked_packets_.IncreaseLargestAcked(QuicPacketNumber(2));
- }
+ unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
+ APPLICATION_DATA, QuicPacketNumber(2));
unacked_packets_.RemoveFromInFlight(QuicPacketNumber(2));
packets_acked.push_back(AckedPacket(
QuicPacketNumber(2), kMaxOutgoingPacketSize, QuicTime::Zero()));
diff --git a/quic/core/congestion_control/uber_loss_algorithm.cc b/quic/core/congestion_control/uber_loss_algorithm.cc
index 8db151b..e0dff98 100644
--- a/quic/core/congestion_control/uber_loss_algorithm.cc
+++ b/quic/core/congestion_control/uber_loss_algorithm.cc
@@ -37,7 +37,6 @@
QuicPacketNumber /*largest_newly_acked*/,
const AckedPacketVector& packets_acked,
LostPacketVector* packets_lost) {
- DCHECK(unacked_packets.use_uber_loss_algorithm());
for (int8_t i = INITIAL_DATA; i < NUM_PACKET_NUMBER_SPACES; ++i) {
const QuicPacketNumber largest_acked =
unacked_packets.GetLargestAckedOfPacketNumberSpace(
@@ -76,7 +75,6 @@
QuicTime time,
const RttStats& rtt_stats,
QuicPacketNumber spurious_retransmission) {
- DCHECK(unacked_packets.use_uber_loss_algorithm());
general_loss_algorithms_[unacked_packets.GetPacketNumberSpace(
spurious_retransmission)]
.SpuriousRetransmitDetected(unacked_packets, time, rtt_stats,
diff --git a/quic/core/congestion_control/uber_loss_algorithm_test.cc b/quic/core/congestion_control/uber_loss_algorithm_test.cc
index 307d791..0c79ac5 100644
--- a/quic/core/congestion_control/uber_loss_algorithm_test.cc
+++ b/quic/core/congestion_control/uber_loss_algorithm_test.cc
@@ -21,7 +21,6 @@
class UberLossAlgorithmTest : public QuicTest {
protected:
UberLossAlgorithmTest() {
- SetQuicReloadableFlag(quic_use_uber_loss_algorithm, true);
unacked_packets_ =
QuicMakeUnique<QuicUnackedPacketMap>(Perspective::IS_CLIENT);
rtt_stats_.UpdateRtt(QuicTime::Delta::FromMilliseconds(100),
diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index c99befb..fd1e5e8 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -817,10 +817,8 @@
if (level == ENCRYPTION_FORWARD_SECURE &&
perspective_ == Perspective::IS_SERVER) {
sent_packet_manager_.SetHandshakeConfirmed();
- if (sent_packet_manager_.unacked_packets().use_uber_loss_algorithm()) {
- // This may have changed the retransmission timer, so re-arm it.
- SetRetransmissionAlarm();
- }
+ // This may have changed the retransmission timer, so re-arm it.
+ SetRetransmissionAlarm();
}
}
@@ -2443,10 +2441,8 @@
void QuicConnection::OnHandshakeComplete() {
sent_packet_manager_.SetHandshakeConfirmed();
- if (sent_packet_manager_.unacked_packets().use_uber_loss_algorithm()) {
- // This may have changed the retransmission timer, so re-arm it.
- SetRetransmissionAlarm();
- }
+ // This may have changed the retransmission timer, so re-arm it.
+ SetRetransmissionAlarm();
// The client should immediately ack the SHLO to confirm the handshake is
// complete with the server.
if (perspective_ == Perspective::IS_CLIENT && ack_frame_updated()) {
@@ -3649,10 +3645,7 @@
}
void QuicConnection::MaybeEnableMultiplePacketNumberSpacesSupport() {
- const bool enable_multiple_packet_number_spaces =
- version().handshake_protocol == PROTOCOL_TLS1_3 &&
- sent_packet_manager_.use_uber_loss_algorithm();
- if (!enable_multiple_packet_number_spaces) {
+ if (version().handshake_protocol != PROTOCOL_TLS1_3) {
return;
}
QUIC_DVLOG(1) << ENDPOINT << "connection " << connection_id()
diff --git a/quic/core/quic_sent_packet_manager.cc b/quic/core/quic_sent_packet_manager.cc
index d92ee66..71fbdf6 100644
--- a/quic/core/quic_sent_packet_manager.cc
+++ b/quic/core/quic_sent_packet_manager.cc
@@ -92,7 +92,6 @@
network_change_visitor_(nullptr),
initial_congestion_window_(kInitialCongestionWindow),
loss_algorithm_(GetInitialLossAlgorithm()),
- general_loss_algorithm_(loss_type),
uber_loss_algorithm_(loss_type),
consecutive_rto_count_(0),
consecutive_tlp_count_(0),
@@ -131,10 +130,7 @@
}
LossDetectionInterface* QuicSentPacketManager::GetInitialLossAlgorithm() {
- if (unacked_packets_.use_uber_loss_algorithm()) {
- return &uber_loss_algorithm_;
- }
- return &general_loss_algorithm_;
+ return &uber_loss_algorithm_;
}
QuicSentPacketManager::~QuicSentPacketManager() {}
@@ -227,25 +223,13 @@
}
// Configure loss detection.
if (config.HasClientRequestedIndependentOption(kTIME, perspective)) {
- if (unacked_packets_.use_uber_loss_algorithm()) {
- uber_loss_algorithm_.SetLossDetectionType(kTime);
- } else {
- general_loss_algorithm_.SetLossDetectionType(kTime);
- }
+ uber_loss_algorithm_.SetLossDetectionType(kTime);
}
if (config.HasClientRequestedIndependentOption(kATIM, perspective)) {
- if (unacked_packets_.use_uber_loss_algorithm()) {
- uber_loss_algorithm_.SetLossDetectionType(kAdaptiveTime);
- } else {
- general_loss_algorithm_.SetLossDetectionType(kAdaptiveTime);
- }
+ uber_loss_algorithm_.SetLossDetectionType(kAdaptiveTime);
}
if (config.HasClientRequestedIndependentOption(kLFAK, perspective)) {
- if (unacked_packets_.use_uber_loss_algorithm()) {
- uber_loss_algorithm_.SetLossDetectionType(kLazyFack);
- } else {
- general_loss_algorithm_.SetLossDetectionType(kLazyFack);
- }
+ uber_loss_algorithm_.SetLossDetectionType(kLazyFack);
}
if (config.HasClientSentConnectionOption(kCONH, perspective)) {
conservative_handshake_retransmits_ = true;
@@ -293,9 +277,7 @@
void QuicSentPacketManager::SetHandshakeConfirmed() {
handshake_confirmed_ = true;
- if (unacked_packets_.use_uber_loss_algorithm()) {
- NeuterHandshakePackets();
- }
+ NeuterHandshakePackets();
}
void QuicSentPacketManager::PostProcessNewlyAckedPackets(
@@ -434,7 +416,6 @@
}
void QuicSentPacketManager::NeuterHandshakePackets() {
- DCHECK(unacked_packets_.use_uber_loss_algorithm());
QuicPacketNumber packet_number = unacked_packets_.GetLeastUnacked();
for (QuicUnackedPacketMap::const_iterator it = unacked_packets_.begin();
it != unacked_packets_.end(); ++it, ++packet_number) {
@@ -1227,9 +1208,7 @@
<< QuicUtils::EncryptionLevelToString(ack_decrypted_level)
<< " ack for packet " << acked_packet.packet_number;
const PacketNumberSpace packet_number_space =
- unacked_packets_.use_uber_loss_algorithm()
- ? unacked_packets_.GetPacketNumberSpace(info->encryption_level)
- : NUM_PACKET_NUMBER_SPACES;
+ unacked_packets_.GetPacketNumberSpace(info->encryption_level);
if (supports_multiple_packet_number_spaces() &&
QuicUtils::GetPacketNumberSpace(ack_decrypted_level) !=
packet_number_space) {
@@ -1249,10 +1228,8 @@
// Unackable packets are skipped earlier.
largest_newly_acked_ = acked_packet.packet_number;
}
- if (unacked_packets_.use_uber_loss_algorithm()) {
- unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
- packet_number_space, acked_packet.packet_number);
- }
+ unacked_packets_.MaybeUpdateLargestAckedOfPacketNumberSpace(
+ packet_number_space, acked_packet.packet_number);
MarkPacketHandled(acked_packet.packet_number, info,
last_ack_frame_.ack_delay_time,
acked_packet.receive_timestamp);
diff --git a/quic/core/quic_sent_packet_manager.h b/quic/core/quic_sent_packet_manager.h
index 8d230a2..d6f5400 100644
--- a/quic/core/quic_sent_packet_manager.h
+++ b/quic/core/quic_sent_packet_manager.h
@@ -144,8 +144,7 @@
// Removes the retransmittable frames from all unencrypted packets to ensure
// they don't get retransmitted.
- // TODO(fayang): Consider remove this function when deprecating
- // quic_use_uber_loss_algorithm.
+ // TODO(fayang): Consider replace this function with NeuterHandshakePackets.
void NeuterUnencryptedPackets();
// Returns true if there are pending retransmissions.
@@ -381,10 +380,6 @@
return unacked_packets_.supports_multiple_packet_number_spaces();
}
- bool use_uber_loss_algorithm() const {
- return unacked_packets_.use_uber_loss_algorithm();
- }
-
bool ignore_tlpr_if_no_pending_stream_data() const {
return ignore_tlpr_if_no_pending_stream_data_;
}
@@ -518,9 +513,8 @@
// Called when handshake is confirmed to remove the retransmittable frames
// from all packets of HANDSHAKE_DATA packet number space to ensure they don't
// get retransmitted and will eventually be removed from unacked packets map.
- // Only used when quic_use_uber_loss_algorithm is true. Please note, this only
- // applies to QUIC Crypto and needs to be changed when switches to IETF QUIC
- // with QUIC TLS.
+ // Please note, this only applies to QUIC Crypto and needs to be changed when
+ // switches to IETF QUIC with QUIC TLS.
void NeuterHandshakePackets();
// Newly serialized retransmittable packets are added to this map, which
@@ -547,9 +541,6 @@
std::unique_ptr<SendAlgorithmInterface> send_algorithm_;
// Not owned. Always points to |general_loss_algorithm_| outside of tests.
LossDetectionInterface* loss_algorithm_;
- // TODO(fayang): Remove general_loss_algorithm_ when deprecating
- // quic_use_uber_loss_algorithm.
- GeneralLossAlgorithm general_loss_algorithm_;
UberLossAlgorithm uber_loss_algorithm_;
// Tracks the first RTO packet. If any packet before that packet gets acked,
diff --git a/quic/core/quic_sent_packet_manager_test.cc b/quic/core/quic_sent_packet_manager_test.cc
index 2fbd85f..5d65c15 100644
--- a/quic/core/quic_sent_packet_manager_test.cc
+++ b/quic/core/quic_sent_packet_manager_test.cc
@@ -2666,9 +2666,6 @@
}
TEST_P(QuicSentPacketManagerTest, MultiplePacketNumberSpaces) {
- if (!GetQuicReloadableFlag(quic_use_uber_loss_algorithm)) {
- return;
- }
manager_.EnableMultiplePacketNumberSpacesSupport();
EXPECT_FALSE(
manager_.GetLargestSentPacket(ENCRYPTION_INITIAL).IsInitialized());
@@ -2776,9 +2773,6 @@
}
TEST_P(QuicSentPacketManagerTest, PacketsGetAckedInWrongPacketNumberSpace) {
- if (!GetQuicReloadableFlag(quic_use_uber_loss_algorithm)) {
- return;
- }
manager_.EnableMultiplePacketNumberSpacesSupport();
// Send packet 1.
SendDataPacket(1, ENCRYPTION_INITIAL);
@@ -2795,9 +2789,6 @@
}
TEST_P(QuicSentPacketManagerTest, PacketsGetAckedInWrongPacketNumberSpace2) {
- if (!GetQuicReloadableFlag(quic_use_uber_loss_algorithm)) {
- return;
- }
manager_.EnableMultiplePacketNumberSpacesSupport();
// Send packet 1.
SendDataPacket(1, ENCRYPTION_INITIAL);
@@ -2815,9 +2806,6 @@
TEST_P(QuicSentPacketManagerTest,
ToleratePacketsGetAckedInWrongPacketNumberSpace) {
- if (!GetQuicReloadableFlag(quic_use_uber_loss_algorithm)) {
- return;
- }
manager_.EnableMultiplePacketNumberSpacesSupport();
// Send packet 1.
SendDataPacket(1, ENCRYPTION_INITIAL);
diff --git a/quic/core/quic_unacked_packet_map.cc b/quic/core/quic_unacked_packet_map.cc
index 513eb36..2923ae1 100644
--- a/quic/core/quic_unacked_packet_map.cc
+++ b/quic/core/quic_unacked_packet_map.cc
@@ -32,13 +32,7 @@
last_crypto_packet_sent_time_(QuicTime::Zero()),
session_notifier_(nullptr),
session_decides_what_to_write_(false),
- use_uber_loss_algorithm_(
- GetQuicReloadableFlag(quic_use_uber_loss_algorithm)),
- supports_multiple_packet_number_spaces_(false) {
- if (use_uber_loss_algorithm_) {
- QUIC_RELOADABLE_FLAG_COUNT(quic_use_uber_loss_algorithm);
- }
-}
+ supports_multiple_packet_number_spaces_(false) {}
QuicUnackedPacketMap::~QuicUnackedPacketMap() {
for (QuicTransmissionInfo& transmission_info : unacked_packets_) {
@@ -83,12 +77,8 @@
if (set_in_flight) {
bytes_in_flight_ += bytes_sent;
info.in_flight = true;
- if (use_uber_loss_algorithm_) {
- largest_sent_retransmittable_packets_[GetPacketNumberSpace(
- info.encryption_level)] = packet_number;
- } else {
- largest_sent_retransmittable_packet_ = packet_number;
- }
+ largest_sent_retransmittable_packets_[GetPacketNumberSpace(
+ info.encryption_level)] = packet_number;
}
unacked_packets_.push_back(info);
// Swap the retransmittable frames to avoid allocations.
@@ -231,7 +221,6 @@
void QuicUnackedPacketMap::MaybeUpdateLargestAckedOfPacketNumberSpace(
PacketNumberSpace packet_number_space,
QuicPacketNumber packet_number) {
- DCHECK(use_uber_loss_algorithm_);
largest_acked_packets_[packet_number_space].UpdateMax(packet_number);
}
@@ -501,14 +490,12 @@
PacketNumberSpace QuicUnackedPacketMap::GetPacketNumberSpace(
QuicPacketNumber packet_number) const {
- DCHECK(use_uber_loss_algorithm_);
return GetPacketNumberSpace(
GetTransmissionInfo(packet_number).encryption_level);
}
PacketNumberSpace QuicUnackedPacketMap::GetPacketNumberSpace(
EncryptionLevel encryption_level) const {
- DCHECK(use_uber_loss_algorithm_);
if (supports_multiple_packet_number_spaces_) {
return QuicUtils::GetPacketNumberSpace(encryption_level);
}
@@ -522,7 +509,6 @@
QuicPacketNumber QuicUnackedPacketMap::GetLargestAckedOfPacketNumberSpace(
PacketNumberSpace packet_number_space) const {
- DCHECK(use_uber_loss_algorithm_);
if (packet_number_space >= NUM_PACKET_NUMBER_SPACES) {
QUIC_BUG << "Invalid packet number space: " << packet_number_space;
return QuicPacketNumber();
@@ -533,7 +519,6 @@
QuicPacketNumber
QuicUnackedPacketMap::GetLargestSentRetransmittableOfPacketNumberSpace(
PacketNumberSpace packet_number_space) const {
- DCHECK(use_uber_loss_algorithm_);
if (packet_number_space >= NUM_PACKET_NUMBER_SPACES) {
QUIC_BUG << "Invalid packet number space: " << packet_number_space;
return QuicPacketNumber();
diff --git a/quic/core/quic_unacked_packet_map.h b/quic/core/quic_unacked_packet_map.h
index f9f718e..64d1da8 100644
--- a/quic/core/quic_unacked_packet_map.h
+++ b/quic/core/quic_unacked_packet_map.h
@@ -91,12 +91,6 @@
// Returns the largest packet number that has been sent.
QuicPacketNumber largest_sent_packet() const { return largest_sent_packet_; }
- // Returns the largest retransmittable packet number that has been sent.
- QuicPacketNumber largest_sent_retransmittable_packet() const {
- DCHECK(!use_uber_loss_algorithm_);
- return largest_sent_retransmittable_packet_;
- }
-
QuicPacketNumber largest_sent_largest_acked() const {
return largest_sent_largest_acked_;
}
@@ -227,8 +221,6 @@
return session_decides_what_to_write_;
}
- bool use_uber_loss_algorithm() const { return use_uber_loss_algorithm_; }
-
Perspective perspective() const { return perspective_; }
bool supports_multiple_packet_number_spaces() const {
@@ -269,12 +261,8 @@
QuicPacketNumber largest_sent_packet_;
// Only used when supports_multiple_packet_number_spaces_ is true.
QuicPacketNumber largest_sent_packets_[NUM_PACKET_NUMBER_SPACES];
- // The largest sent packet we expect to receive an ack for.
- // TODO(fayang): Remove largest_sent_retransmittable_packet_ when deprecating
- // quic_use_uber_loss_algorithm.
- QuicPacketNumber largest_sent_retransmittable_packet_;
// The largest sent packet we expect to receive an ack for per packet number
- // space. Only used if use_uber_loss_algorithm_ is true.
+ // space.
QuicPacketNumber
largest_sent_retransmittable_packets_[NUM_PACKET_NUMBER_SPACES];
// The largest sent largest_acked in an ACK frame.
@@ -282,7 +270,6 @@
// The largest received largest_acked from an ACK frame.
QuicPacketNumber largest_acked_;
// The largest received largest_acked from ACK frame per packet number space.
- // Only used if use_uber_loss_algorithm_ is true.
QuicPacketNumber largest_acked_packets_[NUM_PACKET_NUMBER_SPACES];
// Newly serialized retransmittable packets are added to this map, which
@@ -314,9 +301,6 @@
// If true, let session decides what to write.
bool session_decides_what_to_write_;
- // Latched value of quic_use_uber_loss_algorithm.
- const bool use_uber_loss_algorithm_;
-
// If true, supports multiple packet number spaces.
bool supports_multiple_packet_number_spaces_;
};
diff --git a/quic/core/quic_unacked_packet_map_test.cc b/quic/core/quic_unacked_packet_map_test.cc
index ff26542..fdec7a6 100644
--- a/quic/core/quic_unacked_packet_map_test.cc
+++ b/quic/core/quic_unacked_packet_map_test.cc
@@ -675,9 +675,6 @@
}
TEST_P(QuicUnackedPacketMapTest, LargestSentPacketMultiplePacketNumberSpaces) {
- if (!GetQuicReloadableFlag(quic_use_uber_loss_algorithm)) {
- return;
- }
unacked_packets_.EnableMultiplePacketNumberSpacesSupport();
EXPECT_FALSE(unacked_packets_
.GetLargestSentPacketOfPacketNumberSpace(ENCRYPTION_INITIAL)
diff --git a/quic/core/quic_versions.cc b/quic/core/quic_versions.cc
index 906bdab..349b373 100644
--- a/quic/core/quic_versions.cc
+++ b/quic/core/quic_versions.cc
@@ -430,7 +430,6 @@
// Enable necessary flags.
SetQuicFlag(FLAGS_quic_supports_tls_handshake, true);
SetQuicFlag(FLAGS_quic_headers_stream_id_in_v99, 60);
- SetQuicReloadableFlag(quic_use_uber_loss_algorithm, true);
SetQuicReloadableFlag(quic_eliminate_static_stream_map_3, true);
SetQuicReloadableFlag(quic_tolerate_reneging, true);
SetQuicReloadableFlag(quic_simplify_stop_waiting, true);