Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(704)

Side by Side Diff: components/network_session_configurator/network_session_configurator.cc

Issue 2789093003: Mark QUIC broken when the network blackholes after the handshake (Closed)
Patch Set: Rename mark_quic_broken_when_network_suspected to mark_quic_broken_when_network_blackholes Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 if (is_quic_force_enabled) 100 if (is_quic_force_enabled)
101 return true; 101 return true;
102 102
103 return quic_trial_group.starts_with(kQuicFieldTrialEnabledGroupName) || 103 return quic_trial_group.starts_with(kQuicFieldTrialEnabledGroupName) ||
104 quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName) || 104 quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName) ||
105 base::LowerCaseEqualsASCII( 105 base::LowerCaseEqualsASCII(
106 GetVariationParam(quic_trial_params, "enable_quic"), 106 GetVariationParam(quic_trial_params, "enable_quic"),
107 "true"); 107 "true");
108 } 108 }
109 109
110 bool ShouldMarkQuicBrokenWhenNetworkBlackholes(
111 const VariationParameters& quic_trial_params) {
112 return base::LowerCaseEqualsASCII(
113 GetVariationParam(quic_trial_params,
114 "mark_quic_broken_when_network_blackholes"),
115 "true");
116 }
117
110 bool ShouldQuicDisableConnectionPooling( 118 bool ShouldQuicDisableConnectionPooling(
111 const VariationParameters& quic_trial_params) { 119 const VariationParameters& quic_trial_params) {
112 return base::LowerCaseEqualsASCII( 120 return base::LowerCaseEqualsASCII(
113 GetVariationParam(quic_trial_params, "disable_connection_pooling"), 121 GetVariationParam(quic_trial_params, "disable_connection_pooling"),
114 "true"); 122 "true");
115 } 123 }
116 124
117 bool ShouldQuicEnableAlternativeServicesForDifferentHost( 125 bool ShouldQuicEnableAlternativeServicesForDifferentHost(
118 const VariationParameters& quic_trial_params) { 126 const VariationParameters& quic_trial_params) {
119 return !base::LowerCaseEqualsASCII( 127 return !base::LowerCaseEqualsASCII(
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 326
319 void ConfigureQuicParams(base::StringPiece quic_trial_group, 327 void ConfigureQuicParams(base::StringPiece quic_trial_group,
320 const VariationParameters& quic_trial_params, 328 const VariationParameters& quic_trial_params,
321 bool is_quic_force_disabled, 329 bool is_quic_force_disabled,
322 bool is_quic_force_enabled, 330 bool is_quic_force_enabled,
323 const std::string& quic_user_agent_id, 331 const std::string& quic_user_agent_id,
324 net::HttpNetworkSession::Params* params) { 332 net::HttpNetworkSession::Params* params) {
325 params->enable_quic = ShouldEnableQuic( 333 params->enable_quic = ShouldEnableQuic(
326 quic_trial_group, quic_trial_params, is_quic_force_disabled, 334 quic_trial_group, quic_trial_params, is_quic_force_disabled,
327 is_quic_force_enabled); 335 is_quic_force_enabled);
336 params->mark_quic_broken_when_network_blackholes =
337 ShouldMarkQuicBrokenWhenNetworkBlackholes(quic_trial_params);
328 338
329 params->enable_quic_alternative_service_with_different_host = 339 params->enable_quic_alternative_service_with_different_host =
330 ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params); 340 ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params);
331 341
332 if (params->enable_quic) { 342 if (params->enable_quic) {
333 params->quic_always_require_handshake_confirmation = 343 params->quic_always_require_handshake_confirmation =
334 ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params); 344 ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params);
335 params->quic_disable_connection_pooling = 345 params->quic_disable_connection_pooling =
336 ShouldQuicDisableConnectionPooling(quic_trial_params); 346 ShouldQuicDisableConnectionPooling(quic_trial_params);
337 int receive_buffer_size = GetQuicSocketReceiveBufferSize(quic_trial_params); 347 int receive_buffer_size = GetQuicSocketReceiveBufferSize(quic_trial_params);
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 ConfigureTCPFastOpenParams(tfo_trial_group, params); 469 ConfigureTCPFastOpenParams(tfo_trial_group, params);
460 470
461 std::map<std::string, std::string> proxy_preconnects_trial_params; 471 std::map<std::string, std::string> proxy_preconnects_trial_params;
462 variations::GetVariationParams("NetProxyPreconnects", 472 variations::GetVariationParams("NetProxyPreconnects",
463 &proxy_preconnects_trial_params); 473 &proxy_preconnects_trial_params);
464 ConfigureOptimizePreconnectsToProxiesParams(proxy_preconnects_trial_params, 474 ConfigureOptimizePreconnectsToProxiesParams(proxy_preconnects_trial_params,
465 params); 475 params);
466 } 476 }
467 477
468 } // namespace network_session_configurator 478 } // namespace network_session_configurator
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698