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 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
149 Optional<bool> quic_always_require_handshake_confirmation; | 149 Optional<bool> quic_always_require_handshake_confirmation; |
150 Optional<bool> quic_disable_connection_pooling; | 150 Optional<bool> quic_disable_connection_pooling; |
151 Optional<float> quic_load_server_info_timeout_srtt_multiplier; | 151 Optional<float> quic_load_server_info_timeout_srtt_multiplier; |
152 Optional<bool> quic_enable_connection_racing; | 152 Optional<bool> quic_enable_connection_racing; |
153 Optional<bool> quic_enable_non_blocking_io; | 153 Optional<bool> quic_enable_non_blocking_io; |
154 Optional<bool> quic_disable_disk_cache; | 154 Optional<bool> quic_disable_disk_cache; |
155 Optional<bool> quic_prefer_aes; | 155 Optional<bool> quic_prefer_aes; |
156 Optional<int> quic_max_number_of_lossy_connections; | 156 Optional<int> quic_max_number_of_lossy_connections; |
157 Optional<float> quic_packet_loss_threshold; | 157 Optional<float> quic_packet_loss_threshold; |
158 Optional<int> quic_socket_receive_buffer_size; | 158 Optional<int> quic_socket_receive_buffer_size; |
| 159 Optional<bool> quic_delay_tcp_race; |
159 Optional<size_t> quic_max_packet_length; | 160 Optional<size_t> quic_max_packet_length; |
160 net::QuicTagVector quic_connection_options; | 161 net::QuicTagVector quic_connection_options; |
161 Optional<std::string> quic_user_agent_id; | 162 Optional<std::string> quic_user_agent_id; |
162 Optional<net::QuicVersionVector> quic_supported_versions; | 163 Optional<net::QuicVersionVector> quic_supported_versions; |
163 Optional<bool> quic_close_sessions_on_ip_change; | 164 Optional<bool> quic_close_sessions_on_ip_change; |
164 }; | 165 }; |
165 | 166 |
166 // |net_log| must either outlive the IOSChromeIOThread or be NULL. | 167 // |net_log| must either outlive the IOSChromeIOThread or be NULL. |
167 IOSChromeIOThread(PrefService* local_state, net_log::ChromeNetLog* net_log); | 168 IOSChromeIOThread(PrefService* local_state, net_log::ChromeNetLog* net_log); |
168 | 169 |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
320 // closed and is considered as a lossy connection. Returns 0 if the default | 321 // closed and is considered as a lossy connection. Returns 0 if the default |
321 // value should be used. | 322 // value should be used. |
322 static float GetQuicPacketLossThreshold( | 323 static float GetQuicPacketLossThreshold( |
323 const VariationParameters& quic_trial_params); | 324 const VariationParameters& quic_trial_params); |
324 | 325 |
325 // Returns the size of the QUIC receive buffer to use, or 0 if | 326 // Returns the size of the QUIC receive buffer to use, or 0 if |
326 // the default should be used. | 327 // the default should be used. |
327 static int GetQuicSocketReceiveBufferSize( | 328 static int GetQuicSocketReceiveBufferSize( |
328 const VariationParameters& quic_trial_params); | 329 const VariationParameters& quic_trial_params); |
329 | 330 |
| 331 // Returns true if QUIC should delay TCP connection when QUIC works. |
| 332 static bool ShouldQuicDelayTcpRace( |
| 333 const VariationParameters& quic_trial_params); |
| 334 |
330 // Returns true if QUIC should close sessions when any of the client's | 335 // Returns true if QUIC should close sessions when any of the client's |
331 // IP addresses change. | 336 // IP addresses change. |
332 static bool ShouldQuicCloseSessionsOnIpChange( | 337 static bool ShouldQuicCloseSessionsOnIpChange( |
333 const VariationParameters& quic_trial_params); | 338 const VariationParameters& quic_trial_params); |
334 | 339 |
335 // Returns the maximum length for QUIC packets, based on any flags in the | 340 // Returns the maximum length for QUIC packets, based on any flags in the |
336 // field trial. Returns 0 if there is an error parsing any of the options, | 341 // field trial. Returns 0 if there is an error parsing any of the options, |
337 // or if the default value should be used. | 342 // or if the default value should be used. |
338 static size_t GetQuicMaxPacketLength( | 343 static size_t GetQuicMaxPacketLength( |
339 const VariationParameters& quic_trial_params); | 344 const VariationParameters& quic_trial_params); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
388 system_url_request_context_getter_; | 393 system_url_request_context_getter_; |
389 | 394 |
390 const base::TimeTicks creation_time_; | 395 const base::TimeTicks creation_time_; |
391 | 396 |
392 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_; | 397 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_; |
393 | 398 |
394 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread); | 399 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread); |
395 }; | 400 }; |
396 | 401 |
397 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ | 402 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ |
OLD | NEW |