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 <limits> | 9 #include <limits> |
10 #include <list> | 10 #include <list> |
(...skipping 30 matching lines...) Expand all Loading... |
41 typedef uint8 QuicPacketEntropyHash; | 41 typedef uint8 QuicPacketEntropyHash; |
42 typedef uint32 QuicHeaderId; | 42 typedef uint32 QuicHeaderId; |
43 // QuicTag is the type of a tag in the wire protocol. | 43 // QuicTag is the type of a tag in the wire protocol. |
44 typedef uint32 QuicTag; | 44 typedef uint32 QuicTag; |
45 typedef std::vector<QuicTag> QuicTagVector; | 45 typedef std::vector<QuicTag> QuicTagVector; |
46 typedef std::map<QuicTag, std::string> QuicTagValueMap; | 46 typedef std::map<QuicTag, std::string> QuicTagValueMap; |
47 // TODO(rtenneti): Didn't use SpdyPriority because SpdyPriority is uint8 and | 47 // TODO(rtenneti): Didn't use SpdyPriority because SpdyPriority is uint8 and |
48 // QuicPriority is uint32. Use SpdyPriority when we change the QUIC_VERSION. | 48 // QuicPriority is uint32. Use SpdyPriority when we change the QUIC_VERSION. |
49 typedef uint32 QuicPriority; | 49 typedef uint32 QuicPriority; |
50 | 50 |
51 // TODO(rch): Consider Quic specific names for these constants. | |
52 // Default and initial maximum size in bytes of a QUIC packet. | 51 // Default and initial maximum size in bytes of a QUIC packet. |
53 const QuicByteCount kDefaultMaxPacketSize = 1350; | 52 const QuicByteCount kDefaultMaxPacketSize = 1350; |
| 53 // Default initial maximum size in bytes of a QUIC packet for servers. |
| 54 const QuicByteCount kDefaultServerMaxPacketSize = 1000; |
54 // The maximum packet size of any QUIC packet, based on ethernet's max size, | 55 // The maximum packet size of any QUIC packet, based on ethernet's max size, |
55 // minus the IP and UDP headers. IPv6 has a 40 byte header, UPD adds an | 56 // minus the IP and UDP headers. IPv6 has a 40 byte header, UPD adds an |
56 // additional 8 bytes. This is a total overhead of 48 bytes. Ethernet's | 57 // additional 8 bytes. This is a total overhead of 48 bytes. Ethernet's |
57 // max packet size is 1500 bytes, 1500 - 48 = 1452. | 58 // max packet size is 1500 bytes, 1500 - 48 = 1452. |
58 const QuicByteCount kMaxPacketSize = 1452; | 59 const QuicByteCount kMaxPacketSize = 1452; |
59 // Default maximum packet size used in Linux TCP implementations. | 60 // Default maximum packet size used in Linux TCP implementations. |
60 const QuicByteCount kDefaultTCPMSS = 1460; | 61 const QuicByteCount kDefaultTCPMSS = 1460; |
61 | 62 |
62 // We match SPDY's use of 32 when secure (since we'd compete with SPDY). | 63 // We match SPDY's use of 32 when secure (since we'd compete with SPDY). |
63 const QuicPacketCount kInitialCongestionWindowSecure = 32; | 64 const QuicPacketCount kInitialCongestionWindowSecure = 32; |
(...skipping 976 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1040 bool in_flight; | 1041 bool in_flight; |
1041 // True if the packet can never be acked, so it can be removed. | 1042 // True if the packet can never be acked, so it can be removed. |
1042 bool is_unackable; | 1043 bool is_unackable; |
1043 // True if the packet is an FEC packet. | 1044 // True if the packet is an FEC packet. |
1044 bool is_fec_packet; | 1045 bool is_fec_packet; |
1045 }; | 1046 }; |
1046 | 1047 |
1047 } // namespace net | 1048 } // namespace net |
1048 | 1049 |
1049 #endif // NET_QUIC_QUIC_PROTOCOL_H_ | 1050 #endif // NET_QUIC_QUIC_PROTOCOL_H_ |
OLD | NEW |