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_HTTP_HTTP_NETWORK_SESSION_H_ | 5 #ifndef NET_HTTP_HTTP_NETWORK_SESSION_H_ |
6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_ | 6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 float quic_load_server_info_timeout_srtt_multiplier; | 118 float quic_load_server_info_timeout_srtt_multiplier; |
119 // Causes QUIC to race reading the server config from disk with | 119 // Causes QUIC to race reading the server config from disk with |
120 // sending an inchoate CHLO. | 120 // sending an inchoate CHLO. |
121 bool quic_enable_connection_racing; | 121 bool quic_enable_connection_racing; |
122 // Use non-blocking IO for UDP sockets. | 122 // Use non-blocking IO for UDP sockets. |
123 bool quic_enable_non_blocking_io; | 123 bool quic_enable_non_blocking_io; |
124 // Disables using the disk cache to store QUIC server configs. | 124 // Disables using the disk cache to store QUIC server configs. |
125 bool quic_disable_disk_cache; | 125 bool quic_disable_disk_cache; |
126 // Prefer AES-GCM to ChaCha20 even if no hardware support is present. | 126 // Prefer AES-GCM to ChaCha20 even if no hardware support is present. |
127 bool quic_prefer_aes; | 127 bool quic_prefer_aes; |
128 // Specifies the maximum number of connections with high packet loss in | |
129 // a row after which QUIC will be disabled. | |
130 int quic_max_number_of_lossy_connections; | |
131 // Specifies packet loss rate in fraction after which a connection is | |
132 // closed and is considered as a lossy connection. | |
133 float quic_packet_loss_threshold; | |
134 // Size in bytes of the QUIC DUP socket receive buffer. | 128 // Size in bytes of the QUIC DUP socket receive buffer. |
135 int quic_socket_receive_buffer_size; | 129 int quic_socket_receive_buffer_size; |
136 // Delay starting a TCP connection when QUIC believes it can speak | 130 // Delay starting a TCP connection when QUIC believes it can speak |
137 // 0-RTT to a server. | 131 // 0-RTT to a server. |
138 bool quic_delay_tcp_race; | 132 bool quic_delay_tcp_race; |
139 // Maximum number of server configs that are to be stored in | 133 // Maximum number of server configs that are to be stored in |
140 // HttpServerProperties, instead of the disk cache. | 134 // HttpServerProperties, instead of the disk cache. |
141 size_t quic_max_server_configs_stored_in_properties; | 135 size_t quic_max_server_configs_stored_in_properties; |
142 // If not empty, QUIC will be used for all connections to the set of | 136 // If not empty, QUIC will be used for all connections to the set of |
143 // origins in |origins_to_force_quic_on|. | 137 // origins in |origins_to_force_quic_on|. |
144 std::set<HostPortPair> origins_to_force_quic_on; | 138 std::set<HostPortPair> origins_to_force_quic_on; |
145 // Source of time for QUIC connections. Will be owned by QuicStreamFactory. | 139 // Source of time for QUIC connections. Will be owned by QuicStreamFactory. |
146 QuicClock* quic_clock; | 140 QuicClock* quic_clock; |
147 // Source of entropy for QUIC connections. | 141 // Source of entropy for QUIC connections. |
148 QuicRandom* quic_random; | 142 QuicRandom* quic_random; |
149 // Limit on the size of QUIC packets. | 143 // Limit on the size of QUIC packets. |
150 size_t quic_max_packet_length; | 144 size_t quic_max_packet_length; |
151 // User agent description to send in the QUIC handshake. | 145 // User agent description to send in the QUIC handshake. |
152 std::string quic_user_agent_id; | 146 std::string quic_user_agent_id; |
153 bool enable_user_alternate_protocol_ports; | 147 bool enable_user_alternate_protocol_ports; |
154 // Optional factory to use for creating QuicCryptoClientStreams. | 148 // Optional factory to use for creating QuicCryptoClientStreams. |
155 QuicCryptoClientStreamFactory* quic_crypto_client_stream_factory; | 149 QuicCryptoClientStreamFactory* quic_crypto_client_stream_factory; |
156 // Versions of QUIC which may be used. | 150 // Versions of QUIC which may be used. |
157 QuicVersionVector quic_supported_versions; | 151 QuicVersionVector quic_supported_versions; |
158 int quic_max_recent_disabled_reasons; | |
159 int quic_threshold_public_resets_post_handshake; | |
160 int quic_threshold_timeouts_streams_open; | |
161 // Set of QUIC tags to send in the handshake's connection options. | 152 // Set of QUIC tags to send in the handshake's connection options. |
162 QuicTagVector quic_connection_options; | 153 QuicTagVector quic_connection_options; |
163 // If true, all QUIC sessions are closed when any local IP address changes. | 154 // If true, all QUIC sessions are closed when any local IP address changes. |
164 bool quic_close_sessions_on_ip_change; | 155 bool quic_close_sessions_on_ip_change; |
165 // Specifies QUIC idle connection state lifetime. | 156 // Specifies QUIC idle connection state lifetime. |
166 int quic_idle_connection_timeout_seconds; | 157 int quic_idle_connection_timeout_seconds; |
167 // Specifies the reduced ping timeout subsequent connections should use when | 158 // Specifies the reduced ping timeout subsequent connections should use when |
168 // a connection was timed out with open streams. | 159 // a connection was timed out with open streams. |
169 int quic_reduced_ping_timeout_seconds; | 160 int quic_reduced_ping_timeout_seconds; |
170 // Specifies the maximum time duration that QUIC packet reader can perform | 161 // Specifies the maximum time duration that QUIC packet reader can perform |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 bool enabled_protocols_[NUM_VALID_ALTERNATE_PROTOCOLS]; | 305 bool enabled_protocols_[NUM_VALID_ALTERNATE_PROTOCOLS]; |
315 | 306 |
316 Params params_; | 307 Params params_; |
317 | 308 |
318 std::unique_ptr<base::MemoryPressureListener> memory_pressure_listener_; | 309 std::unique_ptr<base::MemoryPressureListener> memory_pressure_listener_; |
319 }; | 310 }; |
320 | 311 |
321 } // namespace net | 312 } // namespace net |
322 | 313 |
323 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ | 314 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ |
OLD | NEW |