| Index: net/quic/congestion_control/tcp_cubic_sender.h
|
| diff --git a/net/quic/congestion_control/tcp_cubic_sender.h b/net/quic/congestion_control/tcp_cubic_sender.h
|
| index ed0428a59c7f244dd96bca7d05d775a2f5f954f0..ae05ee25f9e6b1915177f2bfca176bee8349e447 100644
|
| --- a/net/quic/congestion_control/tcp_cubic_sender.h
|
| +++ b/net/quic/congestion_control/tcp_cubic_sender.h
|
| @@ -13,6 +13,7 @@
|
| #include "net/base/net_export.h"
|
| #include "net/quic/congestion_control/cubic.h"
|
| #include "net/quic/congestion_control/hybrid_slow_start.h"
|
| +#include "net/quic/congestion_control/prr_sender.h"
|
| #include "net/quic/congestion_control/send_algorithm_interface.h"
|
| #include "net/quic/quic_bandwidth.h"
|
| #include "net/quic/quic_connection_stats.h"
|
| @@ -33,16 +34,13 @@ class NET_EXPORT_PRIVATE TcpCubicSender : public SendAlgorithmInterface {
|
| TcpCubicSender(const QuicClock* clock,
|
| const RttStats* rtt_stats,
|
| bool reno,
|
| - QuicTcpCongestionWindow max_tcp_congestion_window,
|
| + QuicPacketCount max_tcp_congestion_window,
|
| QuicConnectionStats* stats);
|
| ~TcpCubicSender() override;
|
|
|
| // Start implementation of SendAlgorithmInterface.
|
| void SetFromConfig(const QuicConfig& config, bool is_server) override;
|
| void SetNumEmulatedConnections(int num_connections) override;
|
| - void OnIncomingQuicCongestionFeedbackFrame(
|
| - const QuicCongestionFeedbackFrame& feedback,
|
| - QuicTime feedback_receive_time) override;
|
| void OnCongestionEvent(bool rtt_updated,
|
| QuicByteCount bytes_in_flight,
|
| const CongestionVector& acked_packets,
|
| @@ -79,18 +77,13 @@ class NET_EXPORT_PRIVATE TcpCubicSender : public SendAlgorithmInterface {
|
| void OnPacketLost(QuicPacketSequenceNumber largest_loss,
|
| QuicByteCount bytes_in_flight);
|
|
|
| - QuicByteCount SendWindow() const;
|
| void MaybeIncreaseCwnd(QuicPacketSequenceNumber acked_sequence_number,
|
| QuicByteCount bytes_in_flight);
|
| bool IsCwndLimited(QuicByteCount bytes_in_flight) const;
|
| - // Methods for isolating PRR from the rest of TCP Cubic.
|
| - void PrrOnPacketLost(QuicByteCount bytes_in_flight);
|
| - void PrrOnPacketAcked(QuicByteCount acked_bytes);
|
| - QuicTime::Delta PrrTimeUntilSend(QuicByteCount bytes_in_flight) const;
|
| -
|
|
|
| HybridSlowStart hybrid_slow_start_;
|
| Cubic cubic_;
|
| + PrrSender prr_;
|
| const RttStats* rtt_stats_;
|
| QuicConnectionStats* stats_;
|
|
|
| @@ -98,21 +91,10 @@ class NET_EXPORT_PRIVATE TcpCubicSender : public SendAlgorithmInterface {
|
| const bool reno_;
|
|
|
| // Number of connections to simulate.
|
| - int num_connections_;
|
| + uint32 num_connections_;
|
|
|
| // ACK counter for the Reno implementation.
|
| - int64 congestion_window_count_;
|
| -
|
| - // Receiver side advertised window.
|
| - QuicByteCount receive_window_;
|
| -
|
| - // Bytes sent and acked since the last loss event. Used for PRR.
|
| - QuicByteCount prr_out_;
|
| - QuicByteCount prr_delivered_;
|
| - size_t ack_count_since_loss_;
|
| -
|
| - // The congestion window before the last loss event.
|
| - QuicByteCount bytes_in_flight_before_loss_;
|
| + uint64 congestion_window_count_;
|
|
|
| // Track the largest packet that has been sent.
|
| QuicPacketSequenceNumber largest_sent_sequence_number_;
|
| @@ -124,23 +106,23 @@ class NET_EXPORT_PRIVATE TcpCubicSender : public SendAlgorithmInterface {
|
| QuicPacketSequenceNumber largest_sent_at_last_cutback_;
|
|
|
| // Congestion window in packets.
|
| - QuicTcpCongestionWindow congestion_window_;
|
| + QuicPacketCount congestion_window_;
|
|
|
| // Congestion window before the last loss event or RTO.
|
| QuicByteCount previous_congestion_window_;
|
|
|
| // Slow start congestion window in packets, aka ssthresh.
|
| - QuicTcpCongestionWindow slowstart_threshold_;
|
| + QuicPacketCount slowstart_threshold_;
|
|
|
| // Slow start threshold before the last loss event or RTO.
|
| - QuicTcpCongestionWindow previous_slowstart_threshold_;
|
| + QuicPacketCount previous_slowstart_threshold_;
|
|
|
| // Whether the last loss event caused us to exit slowstart.
|
| // Used for stats collection of slowstart_packets_lost
|
| bool last_cutback_exited_slowstart_;
|
|
|
| // Maximum number of outstanding packets for tcp.
|
| - QuicTcpCongestionWindow max_tcp_congestion_window_;
|
| + QuicPacketCount max_tcp_congestion_window_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(TcpCubicSender);
|
| };
|
|
|