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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 const size_t kDefaultInitialWindow = 10; | 63 const size_t kDefaultInitialWindow = 10; |
64 const uint32 kMaxInitialWindow = 100; | 64 const uint32 kMaxInitialWindow = 100; |
65 | 65 |
66 // Default size of initial flow control window, for both stream and session. | 66 // Default size of initial flow control window, for both stream and session. |
67 const uint32 kDefaultFlowControlSendWindow = 16 * 1024; // 16 KB | 67 const uint32 kDefaultFlowControlSendWindow = 16 * 1024; // 16 KB |
68 | 68 |
69 // Maximum size of the congestion window, in packets, for TCP congestion control | 69 // Maximum size of the congestion window, in packets, for TCP congestion control |
70 // algorithms. | 70 // algorithms. |
71 const size_t kMaxTcpCongestionWindow = 200; | 71 const size_t kMaxTcpCongestionWindow = 200; |
72 | 72 |
73 // Size of the socket receive buffer in bytes. | 73 // Default size of the socket receive buffer in bytes. |
74 const QuicByteCount kDefaultSocketReceiveBuffer = 256 * 1024; | 74 const QuicByteCount kDefaultSocketReceiveBuffer = 256 * 1024; |
| 75 // Minimum size of the socket receive buffer in bytes. |
| 76 // Smaller values are ignored. |
| 77 const QuicByteCount kMinSocketReceiveBuffer = 16 * 1024; |
75 | 78 |
76 // Don't allow a client to suggest an RTT longer than 15 seconds. | 79 // Don't allow a client to suggest an RTT longer than 15 seconds. |
77 const uint32 kMaxInitialRoundTripTimeUs = 15 * kNumMicrosPerSecond; | 80 const uint32 kMaxInitialRoundTripTimeUs = 15 * kNumMicrosPerSecond; |
78 | 81 |
79 // Maximum number of open streams per connection. | 82 // Maximum number of open streams per connection. |
80 const size_t kDefaultMaxStreamsPerConnection = 100; | 83 const size_t kDefaultMaxStreamsPerConnection = 100; |
81 | 84 |
82 // Number of bytes reserved for public flags in the packet header. | 85 // Number of bytes reserved for public flags in the packet header. |
83 const size_t kPublicFlagsSize = 1; | 86 const size_t kPublicFlagsSize = 1; |
84 // Number of bytes reserved for version number in the packet header. | 87 // Number of bytes reserved for version number in the packet header. |
(...skipping 999 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1084 SequenceNumberList* all_transmissions; | 1087 SequenceNumberList* all_transmissions; |
1085 // In flight packets have not been abandoned or lost. | 1088 // In flight packets have not been abandoned or lost. |
1086 bool in_flight; | 1089 bool in_flight; |
1087 // True if the packet can never be acked, so it can be removed. | 1090 // True if the packet can never be acked, so it can be removed. |
1088 bool is_unackable; | 1091 bool is_unackable; |
1089 }; | 1092 }; |
1090 | 1093 |
1091 } // namespace net | 1094 } // namespace net |
1092 | 1095 |
1093 #endif // NET_QUIC_QUIC_PROTOCOL_H_ | 1096 #endif // NET_QUIC_QUIC_PROTOCOL_H_ |
OLD | NEW |