OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 5 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <list> | 9 #include <list> |
10 #include <map> | 10 #include <map> |
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 QuicBandwidth BandwidthEstimate() const; | 166 QuicBandwidth BandwidthEstimate() const; |
167 | 167 |
168 // Returns true if the current bandwidth estimate is reliable. | 168 // Returns true if the current bandwidth estimate is reliable. |
169 bool HasReliableBandwidthEstimate() const; | 169 bool HasReliableBandwidthEstimate() const; |
170 | 170 |
171 // Returns the size of the current congestion window in bytes. Note, this is | 171 // Returns the size of the current congestion window in bytes. Note, this is |
172 // not the *available* window. Some send algorithms may not use a congestion | 172 // not the *available* window. Some send algorithms may not use a congestion |
173 // window and will return 0. | 173 // window and will return 0. |
174 QuicByteCount GetCongestionWindow() const; | 174 QuicByteCount GetCongestionWindow() const; |
175 | 175 |
| 176 // Returns the size of the slow start congestion window in bytes, |
| 177 // aka ssthresh. Some send algorithms do not define a slow start |
| 178 // threshold and will return 0. |
| 179 QuicByteCount GetSlowStartThreshold() const; |
| 180 |
176 // Enables pacing if it has not already been enabled, and if | 181 // Enables pacing if it has not already been enabled, and if |
177 // FLAGS_enable_quic_pacing is set. | 182 // FLAGS_enable_quic_pacing is set. |
178 void MaybeEnablePacing(); | 183 void MaybeEnablePacing(); |
179 | 184 |
180 bool using_pacing() const { return using_pacing_; } | 185 bool using_pacing() const { return using_pacing_; } |
181 | 186 |
182 void set_debug_delegate(DebugDelegate* debug_delegate) { | 187 void set_debug_delegate(DebugDelegate* debug_delegate) { |
183 debug_delegate_ = debug_delegate; | 188 debug_delegate_ = debug_delegate; |
184 } | 189 } |
185 | 190 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
319 // Sets of packets acked and lost as a result of the last congestion event. | 324 // Sets of packets acked and lost as a result of the last congestion event. |
320 SendAlgorithmInterface::CongestionMap packets_acked_; | 325 SendAlgorithmInterface::CongestionMap packets_acked_; |
321 SendAlgorithmInterface::CongestionMap packets_lost_; | 326 SendAlgorithmInterface::CongestionMap packets_lost_; |
322 | 327 |
323 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 328 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
324 }; | 329 }; |
325 | 330 |
326 } // namespace net | 331 } // namespace net |
327 | 332 |
328 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 333 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
OLD | NEW |