OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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_INTERFACE_H_ | 5 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_INTERFACE_H_ |
6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_INTERFACE_H_ | 6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_INTERFACE_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "net/quic/core/quic_protocol.h" | 9 #include "net/quic/core/quic_protocol.h" |
10 #include "net/quic/core/quic_sustained_bandwidth_recorder.h" | 10 #include "net/quic/core/quic_sustained_bandwidth_recorder.h" |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 QuicByteCount max_packet_length) const = 0; | 145 QuicByteCount max_packet_length) const = 0; |
146 | 146 |
147 // Returns the size of the current congestion window size on the default path | 147 // Returns the size of the current congestion window size on the default path |
148 // in bytes. | 148 // in bytes. |
149 virtual QuicByteCount GetCongestionWindowInBytes() const = 0; | 149 virtual QuicByteCount GetCongestionWindowInBytes() const = 0; |
150 | 150 |
151 // Returns the size of the slow start congestion window in number of 1460 byte | 151 // Returns the size of the slow start congestion window in number of 1460 byte |
152 // TCP segments on the default path. | 152 // TCP segments on the default path. |
153 virtual QuicPacketCount GetSlowStartThresholdInTcpMss() const = 0; | 153 virtual QuicPacketCount GetSlowStartThresholdInTcpMss() const = 0; |
154 | 154 |
| 155 // Returns debugging information about the current state of the |
| 156 // congestion controller. |
| 157 virtual std::string GetDebugState() const = 0; |
| 158 |
155 // No longer retransmit data for |stream_id| on all paths. | 159 // No longer retransmit data for |stream_id| on all paths. |
156 virtual void CancelRetransmissionsForStream(QuicStreamId stream_id) = 0; | 160 virtual void CancelRetransmissionsForStream(QuicStreamId stream_id) = 0; |
157 | 161 |
158 // Called when peer address changes and the connection migrates on |path_id|. | 162 // Called when peer address changes and the connection migrates on |path_id|. |
159 // TODO(fayang): Name of this method is confusing in multipath world because | 163 // TODO(fayang): Name of this method is confusing in multipath world because |
160 // this migration is path level. Need to rename this as OnPeerMigration. | 164 // this migration is path level. Need to rename this as OnPeerMigration. |
161 virtual void OnConnectionMigration(QuicPathId path_id, | 165 virtual void OnConnectionMigration(QuicPathId path_id, |
162 PeerAddressChangeType type) = 0; | 166 PeerAddressChangeType type) = 0; |
163 | 167 |
164 virtual bool IsHandshakeConfirmed() const = 0; | 168 virtual bool IsHandshakeConfirmed() const = 0; |
(...skipping 14 matching lines...) Expand all Loading... |
179 | 183 |
180 // These two methods return the consecutive RTO or TLP count of the default | 184 // These two methods return the consecutive RTO or TLP count of the default |
181 // path. | 185 // path. |
182 virtual size_t GetConsecutiveRtoCount() const = 0; | 186 virtual size_t GetConsecutiveRtoCount() const = 0; |
183 virtual size_t GetConsecutiveTlpCount() const = 0; | 187 virtual size_t GetConsecutiveTlpCount() const = 0; |
184 }; | 188 }; |
185 | 189 |
186 } // namespace net | 190 } // namespace net |
187 | 191 |
188 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_INTERFACE_H_ | 192 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_INTERFACE_H_ |
OLD | NEW |