OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 // This file intentionally does not have header guards, it's included | 5 // This file intentionally does not have header guards, it's included |
6 // inside a macro to generate values. | 6 // inside a macro to generate values. |
7 | 7 |
8 // This file contains the list of QUIC protocol flags. | 8 // This file contains the list of QUIC protocol flags. |
9 | 9 |
10 // If true, QUIC BBR congestion control may be enabled via Finch and/or via QUIC | 10 // If true, QUIC BBR congestion control may be enabled via Finch and/or via QUIC |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 // If true, QUIC connections can do bandwidth resumption with an initial window | 46 // If true, QUIC connections can do bandwidth resumption with an initial window |
47 // of < 10 packets. | 47 // of < 10 packets. |
48 QUIC_FLAG(bool, FLAGS_quic_no_lower_bw_resumption_limit, true) | 48 QUIC_FLAG(bool, FLAGS_quic_no_lower_bw_resumption_limit, true) |
49 | 49 |
50 // If true, QUIC public reset packets will have the \"pre-v33\" public header | 50 // If true, QUIC public reset packets will have the \"pre-v33\" public header |
51 // flags. | 51 // flags. |
52 QUIC_FLAG(bool, FLAGS_quic_use_old_public_reset_packets, true) | 52 QUIC_FLAG(bool, FLAGS_quic_use_old_public_reset_packets, true) |
53 | 53 |
54 // If true, QUIC will use cheap stateless rejects without creating a full | 54 // If true, QUIC will use cheap stateless rejects without creating a full |
55 // connection. | 55 // connection. |
56 QUIC_FLAG(bool, FLAGS_quic_use_cheap_stateless_rejects, false) | 56 QUIC_FLAG(bool, FLAGS_quic_use_cheap_stateless_rejects, true) |
57 | 57 |
58 // If true, QUIC respect HTTP2 SETTINGS frame rather than always close the | 58 // If true, QUIC respect HTTP2 SETTINGS frame rather than always close the |
59 // connection. | 59 // connection. |
60 QUIC_FLAG(bool, FLAGS_quic_respect_http2_settings_frame, true) | 60 QUIC_FLAG(bool, FLAGS_quic_respect_http2_settings_frame, true) |
61 | 61 |
62 // If true, enables QUIC_VERSION_35. | 62 // If true, enables QUIC_VERSION_35. |
63 QUIC_FLAG(bool, FLAGS_quic_enable_version_35, true) | 63 QUIC_FLAG(bool, FLAGS_quic_enable_version_35, true) |
64 | 64 |
65 // If true, re-enables QUIC_VERSION_36. | 65 // If true, re-enables QUIC_VERSION_36. |
66 QUIC_FLAG(bool, FLAGS_quic_enable_version_36_v2, true) | 66 QUIC_FLAG(bool, FLAGS_quic_enable_version_36_v2, true) |
(...skipping 12 matching lines...) Expand all Loading... |
79 QUIC_FLAG(bool, FLAGS_quic_disable_pre_32, true) | 79 QUIC_FLAG(bool, FLAGS_quic_disable_pre_32, true) |
80 | 80 |
81 // If true, QUIC will enforce the MTU limit for connections that may require a | 81 // If true, QUIC will enforce the MTU limit for connections that may require a |
82 // small MTU. | 82 // small MTU. |
83 QUIC_FLAG(bool, FLAGS_quic_enforce_mtu_limit, false) | 83 QUIC_FLAG(bool, FLAGS_quic_enforce_mtu_limit, false) |
84 | 84 |
85 // Disable MTU probing if MTU probe causes ERR_MSG_TOO_BIG instead of aborting | 85 // Disable MTU probing if MTU probe causes ERR_MSG_TOO_BIG instead of aborting |
86 // the connection. | 86 // the connection. |
87 QUIC_FLAG(bool, FLAGS_graceful_emsgsize_on_mtu_probe, true) | 87 QUIC_FLAG(bool, FLAGS_graceful_emsgsize_on_mtu_probe, true) |
88 | 88 |
89 // If true, set a QUIC connection's last_sent_for_timeout_ to the send time of | |
90 // the first packet sent after receiving a packet, even if the sent packet is | |
91 // a retransmission | |
92 QUIC_FLAG(bool, FLAGS_quic_better_last_send_for_timeout, true) | |
93 | |
94 // If true, send an explicit TTL in QUIC REJ messages to mitigate client clock | |
95 // skew. | |
96 QUIC_FLAG(bool, FLAGS_quic_send_scfg_ttl, true) | |
97 | |
98 // If true, only open limited number of quic sessions per epoll event. Leave the | 89 // If true, only open limited number of quic sessions per epoll event. Leave the |
99 // rest to next event. This flag can be turned on only if | 90 // rest to next event. This flag can be turned on only if |
100 // --quic_buffer_packet_till_chlo is true. | 91 // --quic_buffer_packet_till_chlo is true. |
101 QUIC_FLAG(bool, FLAGS_quic_limit_num_new_sessions_per_epoll_loop, true) | 92 QUIC_FLAG(bool, FLAGS_quic_limit_num_new_sessions_per_epoll_loop, true) |
102 | 93 |
103 // If true, lazy allocate and early release memeory used in | 94 // If true, lazy allocate and early release memeory used in |
104 // QuicStreamSequencerBuffer to buffer incoming data. | 95 // QuicStreamSequencerBuffer to buffer incoming data. |
105 QUIC_FLAG(bool, FLAGS_quic_reduce_sequencer_buffer_memory_life_time, true) | 96 QUIC_FLAG(bool, FLAGS_quic_reduce_sequencer_buffer_memory_life_time, true) |
106 | 97 |
107 // If true, allow server address change if it is because of mapped ipv4 address. | 98 // If true, allow server address change if it is because of mapped ipv4 address. |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 // Engage early retransmit anytime the largest acked is greater than | 134 // Engage early retransmit anytime the largest acked is greater than |
144 // or equal to the largest retransmittable packet. | 135 // or equal to the largest retransmittable packet. |
145 QUIC_FLAG(bool, FLAGS_quic_largest_sent_retransmittable, true) | 136 QUIC_FLAG(bool, FLAGS_quic_largest_sent_retransmittable, true) |
146 | 137 |
147 // If true, close connection when sequencer buffer enter into unexpected state. | 138 // If true, close connection when sequencer buffer enter into unexpected state. |
148 QUIC_FLAG(bool, FLAGS_quic_stream_sequencer_buffer_debug, true) | 139 QUIC_FLAG(bool, FLAGS_quic_stream_sequencer_buffer_debug, true) |
149 | 140 |
150 // If true, release QuicCryptoStream\'s read buffer when stream are less | 141 // If true, release QuicCryptoStream\'s read buffer when stream are less |
151 // frequently used. | 142 // frequently used. |
152 QUIC_FLAG(bool, FLAGS_quic_release_crypto_stream_buffer, false) | 143 QUIC_FLAG(bool, FLAGS_quic_release_crypto_stream_buffer, false) |
| 144 |
| 145 // Use a more conservative backoff of 2x instead of 1.5x for handshake |
| 146 // retransmissions, as well as a larger minimum. |
| 147 QUIC_FLAG(bool, FLAGS_quic_conservative_handshake_retransmits, true) |
| 148 |
| 149 // If true, buffer packets while parsing public headers instead of parsing down |
| 150 // if CHLO is already buffered. |
| 151 QUIC_FLAG(bool, FLAGS_quic_buffer_packets_after_chlo, false) |
| 152 |
| 153 // Previously QUIC didn't register a packet as received until it was fully |
| 154 // processed, but now that flow control is implemented, it can be received once |
| 155 // decrypted. |
| 156 QUIC_FLAG(bool, FLAGS_quic_receive_packet_once_decrypted, false) |
OLD | NEW |