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

Side by Side Diff: chrome/browser/io_thread.cc

Issue 938003003: Add a new enable_nonblocking_io field trial param for QUIC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: working Created 5 years, 9 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 (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 #include "chrome/browser/io_thread.h" 5 #include "chrome/browser/io_thread.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/base64.h" 9 #include "base/base64.h"
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 1014 matching lines...) Expand 10 before | Expand all | Expand 10 after
1025 globals.quic_disable_connection_pooling.CopyToIfSet( 1025 globals.quic_disable_connection_pooling.CopyToIfSet(
1026 &params->quic_disable_connection_pooling); 1026 &params->quic_disable_connection_pooling);
1027 globals.quic_load_server_info_timeout_ms.CopyToIfSet( 1027 globals.quic_load_server_info_timeout_ms.CopyToIfSet(
1028 &params->quic_load_server_info_timeout_ms); 1028 &params->quic_load_server_info_timeout_ms);
1029 globals.quic_load_server_info_timeout_srtt_multiplier.CopyToIfSet( 1029 globals.quic_load_server_info_timeout_srtt_multiplier.CopyToIfSet(
1030 &params->quic_load_server_info_timeout_srtt_multiplier); 1030 &params->quic_load_server_info_timeout_srtt_multiplier);
1031 globals.quic_enable_truncated_connection_ids.CopyToIfSet( 1031 globals.quic_enable_truncated_connection_ids.CopyToIfSet(
1032 &params->quic_enable_truncated_connection_ids); 1032 &params->quic_enable_truncated_connection_ids);
1033 globals.quic_enable_connection_racing.CopyToIfSet( 1033 globals.quic_enable_connection_racing.CopyToIfSet(
1034 &params->quic_enable_connection_racing); 1034 &params->quic_enable_connection_racing);
1035 globals.quic_enable_nonblocking_io.CopyToIfSet(
1036 &params->quic_enable_nonblocking_io);
1035 globals.quic_disable_disk_cache.CopyToIfSet( 1037 globals.quic_disable_disk_cache.CopyToIfSet(
1036 &params->quic_disable_disk_cache); 1038 &params->quic_disable_disk_cache);
1037 globals.enable_quic_port_selection.CopyToIfSet( 1039 globals.enable_quic_port_selection.CopyToIfSet(
1038 &params->enable_quic_port_selection); 1040 &params->enable_quic_port_selection);
1039 globals.quic_max_packet_length.CopyToIfSet(&params->quic_max_packet_length); 1041 globals.quic_max_packet_length.CopyToIfSet(&params->quic_max_packet_length);
1040 globals.quic_user_agent_id.CopyToIfSet(&params->quic_user_agent_id); 1042 globals.quic_user_agent_id.CopyToIfSet(&params->quic_user_agent_id);
1041 globals.quic_supported_versions.CopyToIfSet( 1043 globals.quic_supported_versions.CopyToIfSet(
1042 &params->quic_supported_versions); 1044 &params->quic_supported_versions);
1043 params->quic_connection_options = globals.quic_connection_options; 1045 params->quic_connection_options = globals.quic_connection_options;
1044 1046
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
1161 float load_server_info_timeout_srtt_multiplier = 1163 float load_server_info_timeout_srtt_multiplier =
1162 GetQuicLoadServerInfoTimeoutSrttMultiplier(quic_trial_params); 1164 GetQuicLoadServerInfoTimeoutSrttMultiplier(quic_trial_params);
1163 if (load_server_info_timeout_srtt_multiplier != 0) { 1165 if (load_server_info_timeout_srtt_multiplier != 0) {
1164 globals->quic_load_server_info_timeout_srtt_multiplier.set( 1166 globals->quic_load_server_info_timeout_srtt_multiplier.set(
1165 load_server_info_timeout_srtt_multiplier); 1167 load_server_info_timeout_srtt_multiplier);
1166 } 1168 }
1167 globals->quic_enable_truncated_connection_ids.set( 1169 globals->quic_enable_truncated_connection_ids.set(
1168 ShouldQuicEnableTruncatedConnectionIds(quic_trial_params)); 1170 ShouldQuicEnableTruncatedConnectionIds(quic_trial_params));
1169 globals->quic_enable_connection_racing.set( 1171 globals->quic_enable_connection_racing.set(
1170 ShouldQuicEnableConnectionRacing(quic_trial_params)); 1172 ShouldQuicEnableConnectionRacing(quic_trial_params));
1173 globals->quic_enable_nonblocking_io.set(
1174 ShouldQuicEnableNonblockingIO(quic_trial_params));
1171 globals->quic_disable_disk_cache.set( 1175 globals->quic_disable_disk_cache.set(
1172 ShouldQuicDisableDiskCache(quic_trial_params)); 1176 ShouldQuicDisableDiskCache(quic_trial_params));
1173 globals->enable_quic_port_selection.set( 1177 globals->enable_quic_port_selection.set(
1174 ShouldEnableQuicPortSelection(command_line)); 1178 ShouldEnableQuicPortSelection(command_line));
1175 globals->quic_connection_options = 1179 globals->quic_connection_options =
1176 GetQuicConnectionOptions(command_line, quic_trial_params); 1180 GetQuicConnectionOptions(command_line, quic_trial_params);
1177 if (ShouldEnableQuicPacing(command_line, quic_trial_params)) { 1181 if (ShouldEnableQuicPacing(command_line, quic_trial_params)) {
1178 globals->quic_connection_options.push_back(net::kPACE); 1182 globals->quic_connection_options.push_back(net::kPACE);
1179 } 1183 }
1180 } 1184 }
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
1368 1372
1369 // static 1373 // static
1370 bool IOThread::ShouldQuicEnableConnectionRacing( 1374 bool IOThread::ShouldQuicEnableConnectionRacing(
1371 const VariationParameters& quic_trial_params) { 1375 const VariationParameters& quic_trial_params) {
1372 return LowerCaseEqualsASCII( 1376 return LowerCaseEqualsASCII(
1373 GetVariationParam(quic_trial_params, "enable_connection_racing"), 1377 GetVariationParam(quic_trial_params, "enable_connection_racing"),
1374 "true"); 1378 "true");
1375 } 1379 }
1376 1380
1377 // static 1381 // static
1382 bool IOThread::ShouldQuicEnableNonblockingIO(
1383 const VariationParameters& quic_trial_params) {
1384 return LowerCaseEqualsASCII(
1385 GetVariationParam(quic_trial_params, "enable_nonblocking_io"),
1386 "true");
1387 }
1388
1389 // static
1378 bool IOThread::ShouldQuicDisableDiskCache( 1390 bool IOThread::ShouldQuicDisableDiskCache(
1379 const VariationParameters& quic_trial_params) { 1391 const VariationParameters& quic_trial_params) {
1380 return LowerCaseEqualsASCII( 1392 return LowerCaseEqualsASCII(
1381 GetVariationParam(quic_trial_params, "disable_disk_cache"), "true"); 1393 GetVariationParam(quic_trial_params, "disable_disk_cache"), "true");
1382 } 1394 }
1383 1395
1384 // static 1396 // static
1385 size_t IOThread::GetQuicMaxPacketLength( 1397 size_t IOThread::GetQuicMaxPacketLength(
1386 const base::CommandLine& command_line, 1398 const base::CommandLine& command_line,
1387 const VariationParameters& quic_trial_params) { 1399 const VariationParameters& quic_trial_params) {
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1421 net::QuicVersionVector supported_versions = net::QuicSupportedVersions(); 1433 net::QuicVersionVector supported_versions = net::QuicSupportedVersions();
1422 for (size_t i = 0; i < supported_versions.size(); ++i) { 1434 for (size_t i = 0; i < supported_versions.size(); ++i) {
1423 net::QuicVersion version = supported_versions[i]; 1435 net::QuicVersion version = supported_versions[i];
1424 if (net::QuicVersionToString(version) == quic_version) { 1436 if (net::QuicVersionToString(version) == quic_version) {
1425 return version; 1437 return version;
1426 } 1438 }
1427 } 1439 }
1428 1440
1429 return net::QUIC_VERSION_UNSUPPORTED; 1441 return net::QUIC_VERSION_UNSUPPORTED;
1430 } 1442 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698