OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ | 5 #ifndef IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ |
6 #define IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ | 6 #define IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 Optional<bool> quic_always_require_handshake_confirmation; | 148 Optional<bool> quic_always_require_handshake_confirmation; |
149 Optional<bool> quic_disable_connection_pooling; | 149 Optional<bool> quic_disable_connection_pooling; |
150 Optional<float> quic_load_server_info_timeout_srtt_multiplier; | 150 Optional<float> quic_load_server_info_timeout_srtt_multiplier; |
151 Optional<bool> quic_enable_connection_racing; | 151 Optional<bool> quic_enable_connection_racing; |
152 Optional<bool> quic_enable_non_blocking_io; | 152 Optional<bool> quic_enable_non_blocking_io; |
153 Optional<bool> quic_disable_disk_cache; | 153 Optional<bool> quic_disable_disk_cache; |
154 Optional<bool> quic_prefer_aes; | 154 Optional<bool> quic_prefer_aes; |
155 Optional<int> quic_max_number_of_lossy_connections; | 155 Optional<int> quic_max_number_of_lossy_connections; |
156 Optional<float> quic_packet_loss_threshold; | 156 Optional<float> quic_packet_loss_threshold; |
157 Optional<int> quic_socket_receive_buffer_size; | 157 Optional<int> quic_socket_receive_buffer_size; |
| 158 Optional<bool> quic_delay_tcp_race; |
158 Optional<size_t> quic_max_packet_length; | 159 Optional<size_t> quic_max_packet_length; |
159 net::QuicTagVector quic_connection_options; | 160 net::QuicTagVector quic_connection_options; |
160 Optional<std::string> quic_user_agent_id; | 161 Optional<std::string> quic_user_agent_id; |
161 Optional<net::QuicVersionVector> quic_supported_versions; | 162 Optional<net::QuicVersionVector> quic_supported_versions; |
162 Optional<bool> quic_close_sessions_on_ip_change; | 163 Optional<bool> quic_close_sessions_on_ip_change; |
163 }; | 164 }; |
164 | 165 |
165 // |net_log| must either outlive the IOSChromeIOThread or be NULL. | 166 // |net_log| must either outlive the IOSChromeIOThread or be NULL. |
166 IOSChromeIOThread(PrefService* local_state, net_log::ChromeNetLog* net_log); | 167 IOSChromeIOThread(PrefService* local_state, net_log::ChromeNetLog* net_log); |
167 | 168 |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 // closed and is considered as a lossy connection. Returns 0 if the default | 312 // closed and is considered as a lossy connection. Returns 0 if the default |
312 // value should be used. | 313 // value should be used. |
313 static float GetQuicPacketLossThreshold( | 314 static float GetQuicPacketLossThreshold( |
314 const VariationParameters& quic_trial_params); | 315 const VariationParameters& quic_trial_params); |
315 | 316 |
316 // Returns the size of the QUIC receive buffer to use, or 0 if | 317 // Returns the size of the QUIC receive buffer to use, or 0 if |
317 // the default should be used. | 318 // the default should be used. |
318 static int GetQuicSocketReceiveBufferSize( | 319 static int GetQuicSocketReceiveBufferSize( |
319 const VariationParameters& quic_trial_params); | 320 const VariationParameters& quic_trial_params); |
320 | 321 |
| 322 // Returns true if QUIC should delay TCP connection when QUIC works. |
| 323 static bool ShouldQuicDelayTcpRace( |
| 324 const VariationParameters& quic_trial_params); |
| 325 |
321 // Returns true if QUIC should close sessions when any of the client's | 326 // Returns true if QUIC should close sessions when any of the client's |
322 // IP addresses change. | 327 // IP addresses change. |
323 static bool ShouldQuicCloseSessionsOnIpChange( | 328 static bool ShouldQuicCloseSessionsOnIpChange( |
324 const VariationParameters& quic_trial_params); | 329 const VariationParameters& quic_trial_params); |
325 | 330 |
326 // Returns the maximum length for QUIC packets, based on any flags in the | 331 // Returns the maximum length for QUIC packets, based on any flags in the |
327 // field trial. Returns 0 if there is an error parsing any of the options, | 332 // field trial. Returns 0 if there is an error parsing any of the options, |
328 // or if the default value should be used. | 333 // or if the default value should be used. |
329 static size_t GetQuicMaxPacketLength( | 334 static size_t GetQuicMaxPacketLength( |
330 const VariationParameters& quic_trial_params); | 335 const VariationParameters& quic_trial_params); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
379 system_url_request_context_getter_; | 384 system_url_request_context_getter_; |
380 | 385 |
381 const base::TimeTicks creation_time_; | 386 const base::TimeTicks creation_time_; |
382 | 387 |
383 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_; | 388 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_; |
384 | 389 |
385 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread); | 390 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread); |
386 }; | 391 }; |
387 | 392 |
388 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ | 393 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ |
OLD | NEW |