Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(928)

Side by Side Diff: net/quic/congestion_control/pacing_sender.h

Issue 734063004: Update from https://crrev.com/304418 (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // A send algorithm which adds pacing on top of an another send algorithm. 5 // A send algorithm which adds pacing on top of an another send algorithm.
6 // It uses the underlying sender's bandwidth estimate to determine the 6 // It uses the underlying sender's bandwidth estimate to determine the
7 // pacing rate to be used. It also takes into consideration the expected 7 // pacing rate to be used. It also takes into consideration the expected
8 // resolution of the underlying alarm mechanism to ensure that alarms are 8 // resolution of the underlying alarm mechanism to ensure that alarms are
9 // not set too aggressively, and to smooth out variations. 9 // not set too aggressively, and to smooth out variations.
10 10
(...skipping 17 matching lines...) Expand all
28 // Create a PacingSender to wrap the specified sender. |alarm_granularity| 28 // Create a PacingSender to wrap the specified sender. |alarm_granularity|
29 // indicates to the pacer to send that far into the future, since it should 29 // indicates to the pacer to send that far into the future, since it should
30 // not expect a callback before that time delta. |initial_packet_burst| is 30 // not expect a callback before that time delta. |initial_packet_burst| is
31 // the number of packets sent without pacing after quiescence. 31 // the number of packets sent without pacing after quiescence.
32 PacingSender(SendAlgorithmInterface* sender, 32 PacingSender(SendAlgorithmInterface* sender,
33 QuicTime::Delta alarm_granularity, 33 QuicTime::Delta alarm_granularity,
34 uint32 initial_packet_burst); 34 uint32 initial_packet_burst);
35 ~PacingSender() override; 35 ~PacingSender() override;
36 36
37 // SendAlgorithmInterface methods. 37 // SendAlgorithmInterface methods.
38 void SetFromConfig(const QuicConfig& config, bool is_server) override; 38 void SetFromConfig(const QuicConfig& config,
39 bool is_server,
40 bool using_pacing) override;
39 void SetNumEmulatedConnections(int num_connections) override; 41 void SetNumEmulatedConnections(int num_connections) override;
40 void OnCongestionEvent(bool rtt_updated, 42 void OnCongestionEvent(bool rtt_updated,
41 QuicByteCount bytes_in_flight, 43 QuicByteCount bytes_in_flight,
42 const CongestionVector& acked_packets, 44 const CongestionVector& acked_packets,
43 const CongestionVector& lost_packets) override; 45 const CongestionVector& lost_packets) override;
44 bool OnPacketSent(QuicTime sent_time, 46 bool OnPacketSent(QuicTime sent_time,
45 QuicByteCount bytes_in_flight, 47 QuicByteCount bytes_in_flight,
46 QuicPacketSequenceNumber sequence_number, 48 QuicPacketSequenceNumber sequence_number,
47 QuicByteCount bytes, 49 QuicByteCount bytes,
48 HasRetransmittableData is_retransmittable) override; 50 HasRetransmittableData is_retransmittable) override;
(...skipping 22 matching lines...) Expand all
71 QuicTime last_delayed_packet_sent_time_; 73 QuicTime last_delayed_packet_sent_time_;
72 QuicTime next_packet_send_time_; // When can the next packet be sent. 74 QuicTime next_packet_send_time_; // When can the next packet be sent.
73 mutable bool was_last_send_delayed_; // True when the last send was delayed. 75 mutable bool was_last_send_delayed_; // True when the last send was delayed.
74 76
75 DISALLOW_COPY_AND_ASSIGN(PacingSender); 77 DISALLOW_COPY_AND_ASSIGN(PacingSender);
76 }; 78 };
77 79
78 } // namespace net 80 } // namespace net
79 81
80 #endif // NET_QUIC_CONGESTION_CONTROL_PACING_SENDER_H_ 82 #endif // NET_QUIC_CONGESTION_CONTROL_PACING_SENDER_H_
OLDNEW
« no previous file with comments | « net/quic/congestion_control/leaky_bucket_test.cc ('k') | net/quic/congestion_control/pacing_sender.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698