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 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 // Returns the smallest sequence number of a sent packet which has not been | 123 // Returns the smallest sequence number of a sent packet which has not been |
124 // acked by the peer. Excludes any packets which have been retransmitted | 124 // acked by the peer. Excludes any packets which have been retransmitted |
125 // with a new sequence number. If all packets have been acked, returns the | 125 // with a new sequence number. If all packets have been acked, returns the |
126 // sequence number of the next packet that will be sent. | 126 // sequence number of the next packet that will be sent. |
127 QuicPacketSequenceNumber GetLeastUnackedSentPacket() const; | 127 QuicPacketSequenceNumber GetLeastUnackedSentPacket() const; |
128 | 128 |
129 // Returns the set of sequence numbers of all unacked packets. | 129 // Returns the set of sequence numbers of all unacked packets. |
130 // Test only. | 130 // Test only. |
131 SequenceNumberSet GetUnackedPackets() const; | 131 SequenceNumberSet GetUnackedPackets() const; |
132 | 132 |
133 // Returns true if |sequence_number| is a previous transmission of packet. | |
134 bool IsPreviousTransmission(QuicPacketSequenceNumber sequence_number) const; | |
135 | |
136 // Called when a congestion feedback frame is received from peer. | 133 // Called when a congestion feedback frame is received from peer. |
137 virtual void OnIncomingQuicCongestionFeedbackFrame( | 134 virtual void OnIncomingQuicCongestionFeedbackFrame( |
138 const QuicCongestionFeedbackFrame& frame, | 135 const QuicCongestionFeedbackFrame& frame, |
139 const QuicTime& feedback_receive_time); | 136 const QuicTime& feedback_receive_time); |
140 | 137 |
141 // Called when we have sent bytes to the peer. This informs the manager both | 138 // Called when we have sent bytes to the peer. This informs the manager both |
142 // the number of bytes sent and if they were retransmitted. Returns true if | 139 // the number of bytes sent and if they were retransmitted. Returns true if |
143 // the sender should reset the retransmission timer. | 140 // the sender should reset the retransmission timer. |
144 virtual bool OnPacketSent(QuicPacketSequenceNumber sequence_number, | 141 virtual bool OnPacketSent(QuicPacketSequenceNumber sequence_number, |
145 QuicTime sent_time, | 142 QuicTime sent_time, |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
340 // Maximum number of tail loss probes to send before firing an RTO. | 337 // Maximum number of tail loss probes to send before firing an RTO. |
341 size_t max_tail_loss_probes_; | 338 size_t max_tail_loss_probes_; |
342 bool using_pacing_; | 339 bool using_pacing_; |
343 | 340 |
344 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 341 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
345 }; | 342 }; |
346 | 343 |
347 } // namespace net | 344 } // namespace net |
348 | 345 |
349 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 346 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
OLD | NEW |