Index: net/quic/quic_connection.cc |
diff --git a/net/quic/quic_connection.cc b/net/quic/quic_connection.cc |
index 75640a3fd9dd6a3658b6d6b4d3928a9883c32fb3..af10c61c320a73a53c2559bdafad6db7de81dbd2 100644 |
--- a/net/quic/quic_connection.cc |
+++ b/net/quic/quic_connection.cc |
@@ -188,23 +188,6 @@ class MtuDiscoveryAlarm : public QuicAlarm::Delegate { |
DISALLOW_COPY_AND_ASSIGN(MtuDiscoveryAlarm); |
}; |
-// This alarm may be scheduled when an FEC protected packet is sent out. |
-class FecAlarm : public QuicAlarm::Delegate { |
- public: |
- explicit FecAlarm(QuicPacketGenerator* packet_generator) |
- : packet_generator_(packet_generator) {} |
- |
- QuicTime OnAlarm() override { |
- packet_generator_->OnFecTimeout(); |
- return QuicTime::Zero(); |
- } |
- |
- private: |
- QuicPacketGenerator* packet_generator_; |
- |
- DISALLOW_COPY_AND_ASSIGN(FecAlarm); |
-}; |
- |
// Listens for acks of MTU discovery packets and raises the maximum packet size |
// of the connection if the probe succeeds. |
class MtuDiscoveryAckListener : public QuicAckListenerInterface { |
@@ -304,8 +287,6 @@ QuicConnection::QuicConnection(QuicConnectionId connection_id, |
random_generator_, |
helper->GetBufferAllocator(), |
this), |
- fec_alarm_(helper->CreateAlarm(arena_.New<FecAlarm>(&packet_generator_), |
- &arena_)), |
idle_network_timeout_(QuicTime::Delta::Infinite()), |
handshake_timeout_(QuicTime::Delta::Infinite()), |
time_of_last_received_packet_(clock_->ApproximateNow()), |
@@ -397,16 +378,6 @@ void QuicConnection::SetFromConfig(const QuicConfig& config) { |
} |
max_undecryptable_packets_ = config.max_undecryptable_packets(); |
- if (config.HasClientSentConnectionOption(kFSPA, perspective_)) { |
- packet_generator_.set_fec_send_policy(FecSendPolicy::FEC_ALARM_TRIGGER); |
- } |
- if (config.HasClientSentConnectionOption(kFRTT, perspective_)) { |
- // TODO(rtenneti): Delete this code after the 0.25 RTT FEC experiment. |
- const float kFecTimeoutRttMultiplier = 0.25; |
- packet_generator_.set_rtt_multiplier_for_fec_timeout( |
- kFecTimeoutRttMultiplier); |
- } |
- |
if (config.HasClientSentConnectionOption(kMTUH, perspective_)) { |
SetMtuDiscoveryTarget(kMtuDiscoveryTargetPacketSizeHigh); |
} |
@@ -476,17 +447,6 @@ void QuicConnection::OnError(QuicFramer* framer) { |
SendConnectionCloseWithDetails(framer->error(), framer->detailed_error()); |
} |
-void QuicConnection::MaybeSetFecAlarm(QuicPacketNumber packet_number) { |
- if (fec_alarm_->IsSet()) { |
- return; |
- } |
- QuicTime::Delta timeout = packet_generator_.GetFecTimeout(packet_number); |
- if (!timeout.IsInfinite()) { |
- fec_alarm_->Update(clock_->ApproximateNow().Add(timeout), |
- QuicTime::Delta::FromMilliseconds(1)); |
- } |
-} |
- |
void QuicConnection::OnPacket() { |
last_packet_decrypted_ = false; |
last_packet_revived_ = false; |
@@ -1182,7 +1142,6 @@ QuicConsumedData QuicConnection::SendStreamData( |
QuicIOVector iov, |
QuicStreamOffset offset, |
bool fin, |
- FecProtection fec_protection, |
QuicAckListenerInterface* listener) { |
if (!fin && iov.total_length == 0) { |
QUIC_BUG << "Attempt to send empty stream frame"; |
@@ -1204,8 +1163,7 @@ QuicConsumedData QuicConnection::SendStreamData( |
// processing left that may cause received_info_ to change. |
ScopedRetransmissionScheduler alarm_delayer(this); |
ScopedPacketBundler ack_bundler(this, BUNDLE_PENDING_ACK); |
- return packet_generator_.ConsumeData(id, iov, offset, fin, fec_protection, |
- listener); |
+ return packet_generator_.ConsumeData(id, iov, offset, fin, listener); |
} |
void QuicConnection::SendRstStream(QuicStreamId id, |
@@ -1519,7 +1477,6 @@ void QuicConnection::WritePendingRetransmissions() { |
} |
// Re-packetize the frames with a new packet number for retransmission. |
- // Retransmitted data packets do not use FEC, even when it's enabled. |
// Retransmitted packets use the same packet number length as the |
// original. |
// Flush the packet generator before making a new packet. |
@@ -1690,7 +1647,6 @@ bool QuicConnection::WritePacket(SerializedPacket* packet) { |
} |
} |
SetPingAlarm(); |
- MaybeSetFecAlarm(packet_number); |
MaybeSetMtuAlarm(); |
DVLOG(1) << ENDPOINT << "time we began writing last sent packet: " |
<< packet_send_time.ToDebuggingValue(); |
@@ -1778,10 +1734,6 @@ void QuicConnection::OnSerializedPacket(SerializedPacket* serialized_packet) { |
CloseConnection(QUIC_ENCRYPTION_FAILURE, ConnectionCloseSource::FROM_SELF); |
return; |
} |
- if (serialized_packet->is_fec_packet && fec_alarm_->IsSet()) { |
- // If an FEC packet is serialized with the FEC alarm set, cancel the alarm. |
- fec_alarm_->Cancel(); |
- } |
SendOrQueuePacket(serialized_packet); |
} |
@@ -1792,17 +1744,7 @@ void QuicConnection::OnUnrecoverableError(QuicErrorCode error, |
CloseConnection(error, source); |
} |
-void QuicConnection::OnResetFecGroup() { |
- if (!fec_alarm_->IsSet()) { |
- return; |
- } |
- // If an FEC Group is closed with the FEC alarm set, cancel the alarm. |
- fec_alarm_->Cancel(); |
-} |
- |
void QuicConnection::OnCongestionWindowChange() { |
- packet_generator_.OnCongestionWindowChange( |
- sent_packet_manager_.EstimateMaxPacketsInFlight(max_packet_length())); |
visitor_->OnCongestionWindowChange(clock_->ApproximateNow()); |
} |
@@ -1813,9 +1755,9 @@ void QuicConnection::OnRttChange() { |
rtt = QuicTime::Delta::FromMicroseconds( |
sent_packet_manager_.GetRttStats()->initial_rtt_us()); |
} |
+ |
if (debug_visitor_) |
debug_visitor_->OnRttChanged(rtt); |
- packet_generator_.OnRttChange(rtt); |
} |
void QuicConnection::OnPathDegrading() { |
@@ -2115,7 +2057,6 @@ void QuicConnection::CloseConnection(QuicErrorCode error, |
// connection is closed. |
ack_alarm_->Cancel(); |
ping_alarm_->Cancel(); |
- fec_alarm_->Cancel(); |
resume_writes_alarm_->Cancel(); |
retransmission_alarm_->Cancel(); |
send_alarm_->Cancel(); |