OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_PROTOCOL_H_ | 5 #ifndef NET_QUIC_QUIC_PROTOCOL_H_ |
6 #define NET_QUIC_QUIC_PROTOCOL_H_ | 6 #define NET_QUIC_QUIC_PROTOCOL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 #include <limits> | 10 #include <limits> |
(...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
860 // Time elapsed since largest_observed was received until this Ack frame was | 860 // Time elapsed since largest_observed was received until this Ack frame was |
861 // sent. | 861 // sent. |
862 QuicTime::Delta delta_time_largest_observed; | 862 QuicTime::Delta delta_time_largest_observed; |
863 | 863 |
864 // Vector of <packet_number, time> for when packets arrived. | 864 // Vector of <packet_number, time> for when packets arrived. |
865 PacketTimeVector received_packet_times; | 865 PacketTimeVector received_packet_times; |
866 | 866 |
867 // The set of packets which we're expecting and have not received. | 867 // The set of packets which we're expecting and have not received. |
868 PacketNumberQueue missing_packets; | 868 PacketNumberQueue missing_packets; |
869 | 869 |
870 // Packets which have been revived via FEC. | 870 // Packet most recently revived via FEC, 0 if no packet was revived by FEC. |
871 // All of these must also be in missing_packets. | 871 // If non-zero, must be present in missing_packets. |
872 PacketNumberSet revived_packets; | 872 QuicPacketNumber latest_revived_packet; |
873 }; | 873 }; |
874 | 874 |
875 // True if the packet number is greater than largest_observed or is listed | 875 // True if the packet number is greater than largest_observed or is listed |
876 // as missing. | 876 // as missing. |
877 // Always returns false for packet numbers less than least_unacked. | 877 // Always returns false for packet numbers less than least_unacked. |
878 bool NET_EXPORT_PRIVATE IsAwaitingPacket(const QuicAckFrame& ack_frame, | 878 bool NET_EXPORT_PRIVATE IsAwaitingPacket(const QuicAckFrame& ack_frame, |
879 QuicPacketNumber packet_number); | 879 QuicPacketNumber packet_number); |
880 | 880 |
881 // Defines for all types of congestion control algorithms that can be used in | 881 // Defines for all types of congestion control algorithms that can be used in |
882 // QUIC. Note that this is separate from the congestion feedback type - | 882 // QUIC. Note that this is separate from the congestion feedback type - |
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1239 : iov(iov), iov_count(iov_count), total_length(total_length) {} | 1239 : iov(iov), iov_count(iov_count), total_length(total_length) {} |
1240 | 1240 |
1241 const struct iovec* iov; | 1241 const struct iovec* iov; |
1242 const int iov_count; | 1242 const int iov_count; |
1243 const size_t total_length; | 1243 const size_t total_length; |
1244 }; | 1244 }; |
1245 | 1245 |
1246 } // namespace net | 1246 } // namespace net |
1247 | 1247 |
1248 #endif // NET_QUIC_QUIC_PROTOCOL_H_ | 1248 #endif // NET_QUIC_QUIC_PROTOCOL_H_ |
OLD | NEW |