| 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 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 // If true, fix Cubic\'s use of kBetaLastMax for n-connection emulation. | 113 // If true, fix Cubic\'s use of kBetaLastMax for n-connection emulation. |
| 114 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_fix_beta_last_max, false) | 114 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_fix_beta_last_max, false) |
| 115 | 115 |
| 116 // If greater than zero, mean RTT variation is multiplied by the specified | 116 // If greater than zero, mean RTT variation is multiplied by the specified |
| 117 // factor and added to the congestion window limit. | 117 // factor and added to the congestion window limit. |
| 118 QUIC_FLAG(double, FLAGS_quic_bbr_rtt_variation_weight, 0.0f) | 118 QUIC_FLAG(double, FLAGS_quic_bbr_rtt_variation_weight, 0.0f) |
| 119 | 119 |
| 120 // Congestion window gain for QUIC BBR during PROBE_BW phase. | 120 // Congestion window gain for QUIC BBR during PROBE_BW phase. |
| 121 QUIC_FLAG(double, FLAGS_quic_bbr_cwnd_gain, 2.0f) | 121 QUIC_FLAG(double, FLAGS_quic_bbr_cwnd_gain, 2.0f) |
| 122 | 122 |
| 123 // If true, bidi streaming is always enabled in QUIC. | |
| 124 QUIC_FLAG(bool, | |
| 125 FLAGS_quic_reloadable_flag_quic_always_enable_bidi_streaming, | |
| 126 true) | |
| 127 | |
| 128 // If true, allows the 1RTT and 2RTT connection options to reduce the time | 123 // If true, allows the 1RTT and 2RTT connection options to reduce the time |
| 129 // in BBR STARTUP to 1 or 2 RTTs with no bandwidth increase from 3. | 124 // in BBR STARTUP to 1 or 2 RTTs with no bandwidth increase from 3. |
| 130 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_allow_2_rtt_bbr_startup, true) | 125 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_allow_2_rtt_bbr_startup, true) |
| 131 | 126 |
| 132 // If true, do not send or process stop waiting frames in QUIC if the NSTP | 127 // If true, do not send or process stop waiting frames in QUIC if the NSTP |
| 133 // connection option is provided. | 128 // connection option is provided. |
| 134 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_no_stop_waiting_frames, false) | 129 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_no_stop_waiting_frames, false) |
| 135 | 130 |
| 136 // Allows one self address change. | 131 // Allows one self address change. |
| 137 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_allow_one_address_change, false) | 132 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_allow_one_address_change, false) |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 // If true, on server side, 8-byte connection ID in public header is read and | 174 // If true, on server side, 8-byte connection ID in public header is read and |
| 180 // written in big endian. | 175 // written in big endian. |
| 181 QUIC_FLAG(bool, | 176 QUIC_FLAG(bool, |
| 182 FLAGS_quic_restart_flag_quic_big_endian_connection_id_server, | 177 FLAGS_quic_restart_flag_quic_big_endian_connection_id_server, |
| 183 false) | 178 false) |
| 184 | 179 |
| 185 // Simplify QUIC\'s adaptive time loss detection to measure the necessary | 180 // Simplify QUIC\'s adaptive time loss detection to measure the necessary |
| 186 // reordering window for every spurious retransmit. | 181 // reordering window for every spurious retransmit. |
| 187 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_fix_adaptive_time_loss, false) | 182 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_fix_adaptive_time_loss, false) |
| 188 | 183 |
| 189 // Base CWND on SRTT instead of min_rtt for QUIC BBR. | |
| 190 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_base_cwnd_on_srtt, false) | |
| 191 | |
| 192 // If true, enable random padding of size [1, 256] when response body is | 184 // If true, enable random padding of size [1, 256] when response body is |
| 193 // compressed for QUIC version >= 38. | 185 // compressed for QUIC version >= 38. |
| 194 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_enable_random_padding, false) | 186 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_enable_random_padding, false) |
| 195 | 187 |
| 196 // Use conservation in PROBE_BW ouside of super-unity gain and immediately | 188 // Use conservation in PROBE_BW ouside of super-unity gain and immediately |
| 197 // preceeding cycle. | 189 // preceeding cycle. |
| 198 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_extra_conservation, false) | 190 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_extra_conservation, false) |
| 199 | 191 |
| 200 // Increase BBR's inflight limit if recent ack rate is low. | 192 // Increase BBR's inflight limit if recent ack rate is low. |
| 201 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_slow_recent_delivery, false) | 193 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_slow_recent_delivery, false) |
| (...skipping 11 matching lines...) Expand all Loading... |
| 213 false) | 205 false) |
| 214 | 206 |
| 215 // Fix the algorithm used by packet conservation. | 207 // Fix the algorithm used by packet conservation. |
| 216 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_fix_conservation, false) | 208 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_fix_conservation, false) |
| 217 | 209 |
| 218 // If enabled, use refactored stream creation methods. | 210 // If enabled, use refactored stream creation methods. |
| 219 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_refactor_stream_creation, false) | 211 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_refactor_stream_creation, false) |
| 220 | 212 |
| 221 // A second take on fixing QUIC BBR packet conservation. | 213 // A second take on fixing QUIC BBR packet conservation. |
| 222 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_fix_conservation2, false) | 214 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_bbr_fix_conservation2, false) |
| 215 |
| 216 // If true, GFEs generate and validate source address token using the actual |
| 217 // client IP for proxied session. |
| 218 QUIC_FLAG(bool, |
| 219 FLAGS_quic_reloadable_flag_quic_use_client_address_for_stk_in_proxy, |
| 220 false) |
| 221 |
| 222 // If true, export a varz mapping QUIC non 0-rtt handshake with corresponding |
| 223 // frontend service. |
| 224 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_account_handshake, false) |
| 225 |
| 226 // Allows the 3RTO QUIC connection option to close a QUIC connection after |
| 227 // 3RTOs if there are no open streams. |
| 228 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_enable_3rtos, false) |
| 229 |
| 230 // If true, enable experiment for testing PCC congestion-control. |
| 231 QUIC_FLAG(bool, FLAGS_quic_reloadable_flag_quic_enable_pcc, false) |
| 232 |
| 233 // If true, enable QUIC v40. |
| 234 QUIC_FLAG(bool, FLAGS_quic_enable_version_40, false) |
| OLD | NEW |