Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Side by Side Diff: net/quic/crypto/crypto_protocol.h

Issue 1877703002: Landing Recent QUIC changes until 4/8/2016 17:17 UTC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: git sync Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/net.gypi ('k') | net/quic/crypto/proof_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_CRYPTO_CRYPTO_PROTOCOL_H_ 5 #ifndef NET_QUIC_CRYPTO_CRYPTO_PROTOCOL_H_
6 #define NET_QUIC_CRYPTO_CRYPTO_PROTOCOL_H_ 6 #define NET_QUIC_CRYPTO_CRYPTO_PROTOCOL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 const QuicTag kAESG = TAG('A', 'E', 'S', 'G'); // AES128 + GCM-12 49 const QuicTag kAESG = TAG('A', 'E', 'S', 'G'); // AES128 + GCM-12
50 const QuicTag kCC20 = TAG('C', 'C', '2', '0'); // ChaCha20 + Poly1305 RFC7539 50 const QuicTag kCC20 = TAG('C', 'C', '2', '0'); // ChaCha20 + Poly1305 RFC7539
51 51
52 // Socket receive buffer 52 // Socket receive buffer
53 const QuicTag kSRBF = TAG('S', 'R', 'B', 'F'); // Socket receive buffer 53 const QuicTag kSRBF = TAG('S', 'R', 'B', 'F'); // Socket receive buffer
54 54
55 // Congestion control feedback types 55 // Congestion control feedback types
56 const QuicTag kQBIC = TAG('Q', 'B', 'I', 'C'); // TCP cubic 56 const QuicTag kQBIC = TAG('Q', 'B', 'I', 'C'); // TCP cubic
57 57
58 // Connection options (COPT) values 58 // Connection options (COPT) values
59 const QuicTag kAFCW = TAG('A', 'F', 'C', 'W'); // Auto-tune flow control
60 // receive windows.
61 const QuicTag kIFW5 = TAG('I', 'F', 'W', '5'); // Set initial size
62 // of stream flow control
63 // receive window to
64 // 32KB. (2^5 KB).
65 const QuicTag kIFW6 = TAG('I', 'F', 'W', '6'); // Set initial size
66 // of stream flow control
67 // receive window to
68 // 64KB. (2^6 KB).
69 const QuicTag kIFW7 = TAG('I', 'F', 'W', '7'); // Set initial size
70 // of stream flow control
71 // receive window to
72 // 128KB. (2^7 KB).
73 const QuicTag kTBBR = TAG('T', 'B', 'B', 'R'); // Reduced Buffer Bloat TCP 59 const QuicTag kTBBR = TAG('T', 'B', 'B', 'R'); // Reduced Buffer Bloat TCP
74 const QuicTag kRENO = TAG('R', 'E', 'N', 'O'); // Reno Congestion Control 60 const QuicTag kRENO = TAG('R', 'E', 'N', 'O'); // Reno Congestion Control
75 const QuicTag kBYTE = TAG('B', 'Y', 'T', 'E'); // TCP cubic or reno in bytes 61 const QuicTag kBYTE = TAG('B', 'Y', 'T', 'E'); // TCP cubic or reno in bytes
76 const QuicTag kIW03 = TAG('I', 'W', '0', '3'); // Force ICWND to 3 62 const QuicTag kIW03 = TAG('I', 'W', '0', '3'); // Force ICWND to 3
77 const QuicTag kIW10 = TAG('I', 'W', '1', '0'); // Force ICWND to 10 63 const QuicTag kIW10 = TAG('I', 'W', '1', '0'); // Force ICWND to 10
78 const QuicTag kIW20 = TAG('I', 'W', '2', '0'); // Force ICWND to 20 64 const QuicTag kIW20 = TAG('I', 'W', '2', '0'); // Force ICWND to 20
79 const QuicTag kIW50 = TAG('I', 'W', '5', '0'); // Force ICWND to 50 65 const QuicTag kIW50 = TAG('I', 'W', '5', '0'); // Force ICWND to 50
80 const QuicTag k1CON = TAG('1', 'C', 'O', 'N'); // Emulate a single connection 66 const QuicTag k1CON = TAG('1', 'C', 'O', 'N'); // Emulate a single connection
81 const QuicTag kNTLP = TAG('N', 'T', 'L', 'P'); // No tail loss probe 67 const QuicTag kNTLP = TAG('N', 'T', 'L', 'P'); // No tail loss probe
82 const QuicTag kNCON = TAG('N', 'C', 'O', 'N'); // N Connection Congestion Ctrl 68 const QuicTag kNCON = TAG('N', 'C', 'O', 'N'); // N Connection Congestion Ctrl
83 const QuicTag kNRTO = TAG('N', 'R', 'T', 'O'); // CWND reduction on loss 69 const QuicTag kNRTO = TAG('N', 'R', 'T', 'O'); // CWND reduction on loss
84 const QuicTag kTIME = TAG('T', 'I', 'M', 'E'); // Time based loss detection 70 const QuicTag kTIME = TAG('T', 'I', 'M', 'E'); // Time based loss detection
85 const QuicTag kMIN1 = TAG('M', 'I', 'N', '1'); // Min CWND of 1 packet 71 const QuicTag kMIN1 = TAG('M', 'I', 'N', '1'); // Min CWND of 1 packet
86 const QuicTag kMIN4 = TAG('M', 'I', 'N', '4'); // Min CWND of 4 packets, 72 const QuicTag kMIN4 = TAG('M', 'I', 'N', '4'); // Min CWND of 4 packets,
87 // with a min rate of 1 BDP. 73 // with a min rate of 1 BDP.
88 const QuicTag kTLPR = TAG('T', 'L', 'P', 'R'); // Tail loss probe delay of 74 const QuicTag kTLPR = TAG('T', 'L', 'P', 'R'); // Tail loss probe delay of
89 // 0.5RTT. 75 // 0.5RTT.
90 const QuicTag kACKD = TAG('A', 'C', 'K', 'D'); // Ack decimation style acking. 76 const QuicTag kACKD = TAG('A', 'C', 'K', 'D'); // Ack decimation style acking.
91 const QuicTag kAKD2 = TAG('A', 'K', 'D', '2'); // Ack decimation tolerating 77 const QuicTag kAKD2 = TAG('A', 'K', 'D', '2'); // Ack decimation tolerating
92 // out of order packets. 78 // out of order packets.
93 const QuicTag kSSLR = TAG('S', 'S', 'L', 'R'); // Slow Start Large Reduction. 79 const QuicTag kSSLR = TAG('S', 'S', 'L', 'R'); // Slow Start Large Reduction.
94 const QuicTag k5RTO = TAG('5', 'R', 'T', 'O'); // Close connection on 5 RTOs 80 const QuicTag k5RTO = TAG('5', 'R', 'T', 'O'); // Close connection on 5 RTOs
95 const QuicTag kCTIM = TAG('C', 'T', 'I', 'M'); // Client timestamp in seconds 81 const QuicTag kCTIM = TAG('C', 'T', 'I', 'M'); // Client timestamp in seconds
96 // since UNIX epoch. 82 // since UNIX epoch.
83 const QuicTag kDHDT = TAG('D', 'H', 'D', 'T'); // Disable HPACK dynamic table.
97 84
98 // Optional support of truncated Connection IDs. If sent by a peer, the value 85 // Optional support of truncated Connection IDs. If sent by a peer, the value
99 // is the minimum number of bytes allowed for the connection ID sent to the 86 // is the minimum number of bytes allowed for the connection ID sent to the
100 // peer. 87 // peer.
101 const QuicTag kTCID = TAG('T', 'C', 'I', 'D'); // Connection ID truncation. 88 const QuicTag kTCID = TAG('T', 'C', 'I', 'D'); // Connection ID truncation.
102 89
103 // Multipath option. 90 // Multipath option.
104 const QuicTag kMPTH = TAG('M', 'P', 'T', 'H'); // Enable multipath. 91 const QuicTag kMPTH = TAG('M', 'P', 'T', 'H'); // Enable multipath.
105 92
106 const QuicTag kNCMR = TAG('N', 'C', 'M', 'R'); // Do not attempt connection 93 const QuicTag kNCMR = TAG('N', 'C', 'M', 'R'); // Do not attempt connection
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 const QuicTag kCIDK = TAG('C', 'I', 'D', 'K'); // ChannelID key 156 const QuicTag kCIDK = TAG('C', 'I', 'D', 'K'); // ChannelID key
170 const QuicTag kCIDS = TAG('C', 'I', 'D', 'S'); // ChannelID signature 157 const QuicTag kCIDS = TAG('C', 'I', 'D', 'S'); // ChannelID signature
171 158
172 // Public reset tags 159 // Public reset tags
173 const QuicTag kRNON = TAG('R', 'N', 'O', 'N'); // Public reset nonce proof 160 const QuicTag kRNON = TAG('R', 'N', 'O', 'N'); // Public reset nonce proof
174 const QuicTag kRSEQ = TAG('R', 'S', 'E', 'Q'); // Rejected packet number 161 const QuicTag kRSEQ = TAG('R', 'S', 'E', 'Q'); // Rejected packet number
175 162
176 // Universal tags 163 // Universal tags
177 const QuicTag kPAD = TAG('P', 'A', 'D', '\0'); // Padding 164 const QuicTag kPAD = TAG('P', 'A', 'D', '\0'); // Padding
178 165
166 // Server push tags
167 const QuicTag kSPSH = TAG('S', 'P', 'S', 'H'); // Support server push.
168
179 // Sent by clients with the fix to crbug/566156 169 // Sent by clients with the fix to crbug/566156
180 const QuicTag kFIXD = TAG('F', 'I', 'X', 'D'); // Client hello 170 const QuicTag kFIXD = TAG('F', 'I', 'X', 'D'); // Client hello
181 // clang-format on 171 // clang-format on
182 172
183 // These tags have a special form so that they appear either at the beginning 173 // These tags have a special form so that they appear either at the beginning
184 // or the end of a handshake message. Since handshake messages are sorted by 174 // or the end of a handshake message. Since handshake messages are sorted by
185 // tag value, the tags with 0 at the end will sort first and those with 255 at 175 // tag value, the tags with 0 at the end will sort first and those with 255 at
186 // the end will sort last. 176 // the end will sort last.
187 // 177 //
188 // The certificate chain should have a tag that will cause it to be sorted at 178 // The certificate chain should have a tag that will cause it to be sorted at
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 // amplification factor of any mirror DoS attack. 214 // amplification factor of any mirror DoS attack.
225 // 215 //
226 // A client may pad an inchoate client hello to a size larger than 216 // A client may pad an inchoate client hello to a size larger than
227 // kClientHelloMinimumSize to make it more likely to receive a complete 217 // kClientHelloMinimumSize to make it more likely to receive a complete
228 // rejection message. 218 // rejection message.
229 const size_t kClientHelloMinimumSize = 1024; 219 const size_t kClientHelloMinimumSize = 1024;
230 220
231 } // namespace net 221 } // namespace net
232 222
233 #endif // NET_QUIC_CRYPTO_CRYPTO_PROTOCOL_H_ 223 #endif // NET_QUIC_CRYPTO_CRYPTO_PROTOCOL_H_
OLDNEW
« no previous file with comments | « net/net.gypi ('k') | net/quic/crypto/proof_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698