Index: net/quic/congestion_control/tcp_cubic_sender_bytes.cc |
diff --git a/net/quic/congestion_control/tcp_cubic_sender_bytes.cc b/net/quic/congestion_control/tcp_cubic_sender_bytes.cc |
index 398048782718d63d3193d67b515ba5f7717428d1..863def3b366bd2b7bbf3576ef47e94fe1914c74c 100644 |
--- a/net/quic/congestion_control/tcp_cubic_sender_bytes.cc |
+++ b/net/quic/congestion_control/tcp_cubic_sender_bytes.cc |
@@ -81,16 +81,18 @@ void TcpCubicSenderBytes::ExitSlowstart() { |
} |
void TcpCubicSenderBytes::OnPacketLost(QuicPacketNumber packet_number, |
+ QuicByteCount lost_bytes, |
QuicByteCount bytes_in_flight) { |
// TCP NewReno (RFC6582) says that once a loss occurs, any losses in packets |
// already sent should be treated as a single loss event, since it's expected. |
if (packet_number <= largest_sent_at_last_cutback_) { |
if (last_cutback_exited_slowstart_) { |
++stats_->slowstart_packets_lost; |
+ stats_->slowstart_bytes_lost += lost_bytes; |
if (slow_start_large_reduction_) { |
- // Reduce congestion window by 1 MSS for every loss. |
+ // Reduce congestion window by lost_bytes for every loss. |
congestion_window_ = |
- max(congestion_window_ - kDefaultTCPMSS, min_congestion_window_); |
+ max(congestion_window_ - lost_bytes, min_congestion_window_); |
slowstart_threshold_ = congestion_window_; |
} |
} |