OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 #include "components/network_session_configurator/network_session_configurator.h
" | 5 #include "components/network_session_configurator/network_session_configurator.h
" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <unordered_set> | 8 #include <unordered_set> |
9 | 9 |
10 #include "base/metrics/field_trial.h" | 10 #include "base/metrics/field_trial.h" |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 } | 108 } |
109 | 109 |
110 bool ShouldMarkQuicBrokenWhenNetworkBlackholes( | 110 bool ShouldMarkQuicBrokenWhenNetworkBlackholes( |
111 const VariationParameters& quic_trial_params) { | 111 const VariationParameters& quic_trial_params) { |
112 return base::LowerCaseEqualsASCII( | 112 return base::LowerCaseEqualsASCII( |
113 GetVariationParam(quic_trial_params, | 113 GetVariationParam(quic_trial_params, |
114 "mark_quic_broken_when_network_blackholes"), | 114 "mark_quic_broken_when_network_blackholes"), |
115 "true"); | 115 "true"); |
116 } | 116 } |
117 | 117 |
| 118 bool ShouldRetryWithoutAltSvcOnQuicErrors( |
| 119 const VariationParameters& quic_trial_params) { |
| 120 return base::LowerCaseEqualsASCII( |
| 121 GetVariationParam(quic_trial_params, |
| 122 "retry_without_alt_svc_on_quic_errors"), |
| 123 "true"); |
| 124 } |
| 125 |
118 bool ShouldQuicDisableConnectionPooling( | 126 bool ShouldQuicDisableConnectionPooling( |
119 const VariationParameters& quic_trial_params) { | 127 const VariationParameters& quic_trial_params) { |
120 return base::LowerCaseEqualsASCII( | 128 return base::LowerCaseEqualsASCII( |
121 GetVariationParam(quic_trial_params, "disable_connection_pooling"), | 129 GetVariationParam(quic_trial_params, "disable_connection_pooling"), |
122 "true"); | 130 "true"); |
123 } | 131 } |
124 | 132 |
125 bool ShouldQuicEnableAlternativeServicesForDifferentHost( | 133 bool ShouldQuicEnableAlternativeServicesForDifferentHost( |
126 const VariationParameters& quic_trial_params) { | 134 const VariationParameters& quic_trial_params) { |
127 return !base::LowerCaseEqualsASCII( | 135 return !base::LowerCaseEqualsASCII( |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
328 const VariationParameters& quic_trial_params, | 336 const VariationParameters& quic_trial_params, |
329 bool is_quic_force_disabled, | 337 bool is_quic_force_disabled, |
330 bool is_quic_force_enabled, | 338 bool is_quic_force_enabled, |
331 const std::string& quic_user_agent_id, | 339 const std::string& quic_user_agent_id, |
332 net::HttpNetworkSession::Params* params) { | 340 net::HttpNetworkSession::Params* params) { |
333 params->enable_quic = ShouldEnableQuic( | 341 params->enable_quic = ShouldEnableQuic( |
334 quic_trial_group, quic_trial_params, is_quic_force_disabled, | 342 quic_trial_group, quic_trial_params, is_quic_force_disabled, |
335 is_quic_force_enabled); | 343 is_quic_force_enabled); |
336 params->mark_quic_broken_when_network_blackholes = | 344 params->mark_quic_broken_when_network_blackholes = |
337 ShouldMarkQuicBrokenWhenNetworkBlackholes(quic_trial_params); | 345 ShouldMarkQuicBrokenWhenNetworkBlackholes(quic_trial_params); |
338 | 346 params->retry_without_alt_svc_on_quic_errors = |
| 347 ShouldRetryWithoutAltSvcOnQuicErrors(quic_trial_params); |
339 params->enable_quic_alternative_service_with_different_host = | 348 params->enable_quic_alternative_service_with_different_host = |
340 ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params); | 349 ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params); |
341 | 350 |
342 if (params->enable_quic) { | 351 if (params->enable_quic) { |
343 params->quic_always_require_handshake_confirmation = | 352 params->quic_always_require_handshake_confirmation = |
344 ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params); | 353 ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params); |
345 params->quic_disable_connection_pooling = | 354 params->quic_disable_connection_pooling = |
346 ShouldQuicDisableConnectionPooling(quic_trial_params); | 355 ShouldQuicDisableConnectionPooling(quic_trial_params); |
347 int receive_buffer_size = GetQuicSocketReceiveBufferSize(quic_trial_params); | 356 int receive_buffer_size = GetQuicSocketReceiveBufferSize(quic_trial_params); |
348 if (receive_buffer_size != 0) { | 357 if (receive_buffer_size != 0) { |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
469 ConfigureTCPFastOpenParams(tfo_trial_group, params); | 478 ConfigureTCPFastOpenParams(tfo_trial_group, params); |
470 | 479 |
471 std::map<std::string, std::string> proxy_preconnects_trial_params; | 480 std::map<std::string, std::string> proxy_preconnects_trial_params; |
472 variations::GetVariationParams("NetProxyPreconnects", | 481 variations::GetVariationParams("NetProxyPreconnects", |
473 &proxy_preconnects_trial_params); | 482 &proxy_preconnects_trial_params); |
474 ConfigureOptimizePreconnectsToProxiesParams(proxy_preconnects_trial_params, | 483 ConfigureOptimizePreconnectsToProxiesParams(proxy_preconnects_trial_params, |
475 params); | 484 params); |
476 } | 485 } |
477 | 486 |
478 } // namespace network_session_configurator | 487 } // namespace network_session_configurator |
OLD | NEW |