diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-08-28 15:28:34 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-08-28 13:54:51 +0000 |
commit | 2a19c63448c84c1805fb1a585c3651318bb86ca7 (patch) | |
tree | eb17888e8531aa6ee5e85721bd553b832a7e5156 /chromium/components/network_session_configurator | |
parent | b014812705fc80bff0a5c120dfcef88f349816dc (diff) | |
download | qtwebengine-chromium-2a19c63448c84c1805fb1a585c3651318bb86ca7.tar.gz |
BASELINE: Update Chromium to 69.0.3497.70
Change-Id: I2b7b56e4e7a8b26656930def0d4575dc32b900a0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/components/network_session_configurator')
3 files changed, 85 insertions, 55 deletions
diff --git a/chromium/components/network_session_configurator/browser/network_session_configurator.cc b/chromium/components/network_session_configurator/browser/network_session_configurator.cc index d9f2a3d0d7d..39fd430aafb 100644 --- a/chromium/components/network_session_configurator/browser/network_session_configurator.cc +++ b/chromium/components/network_session_configurator/browser/network_session_configurator.cc @@ -39,9 +39,7 @@ const char kQuicFieldTrialName[] = "QUIC"; const char kQuicFieldTrialEnabledGroupName[] = "Enabled"; const char kQuicFieldTrialHttpsEnabledGroupName[] = "HttpsEnabled"; -// Field trial for HTTP/2. const char kHttp2FieldTrialName[] = "HTTP2"; -const char kHttp2FieldTrialDisablePrefix[] = "Disable"; // Gets the value of the specified command line switch, as an integer. If unable // to convert it to an int (It's not an int, or the switch is not present) @@ -121,7 +119,7 @@ void ConfigureHttp2Params(const base::CommandLine& command_line, base::StringPiece http2_trial_group, const VariationParameters& http2_trial_params, net::HttpNetworkSession::Params* params) { - if (http2_trial_group.starts_with(kHttp2FieldTrialDisablePrefix)) { + if (GetVariationParam(http2_trial_params, "http2_enabled") == "false") { params->enable_http2 = false; return; } @@ -168,23 +166,23 @@ bool ShouldSupportIetfFormatQuicAltSvc( "true"); } -net::QuicTagVector GetQuicConnectionOptions( +quic::QuicTagVector GetQuicConnectionOptions( const VariationParameters& quic_trial_params) { VariationParameters::const_iterator it = quic_trial_params.find("connection_options"); if (it == quic_trial_params.end()) { - return net::QuicTagVector(); + return quic::QuicTagVector(); } return net::ParseQuicConnectionOptions(it->second); } -net::QuicTagVector GetQuicClientConnectionOptions( +quic::QuicTagVector GetQuicClientConnectionOptions( const VariationParameters& quic_trial_params) { VariationParameters::const_iterator it = quic_trial_params.find("client_connection_options"); if (it == quic_trial_params.end()) { - return net::QuicTagVector(); + return quic::QuicTagVector(); } return net::ParseQuicConnectionOptions(it->second); @@ -197,6 +195,13 @@ bool ShouldQuicCloseSessionsOnIpChange( "true"); } +bool ShouldQuicGoAwaySessionsOnIpChange( + const VariationParameters& quic_trial_params) { + return base::LowerCaseEqualsASCII( + GetVariationParam(quic_trial_params, "goaway_sessions_on_ip_change"), + "true"); +} + int GetQuicIdleConnectionTimeoutSeconds( const VariationParameters& quic_trial_params) { int value; @@ -327,7 +332,7 @@ size_t GetQuicMaxPacketLength(const VariationParameters& quic_trial_params) { return 0; } -net::QuicTransportVersionVector GetQuicVersions( +quic::QuicTransportVersionVector GetQuicVersions( const VariationParameters& quic_trial_params) { return network_session_configurator::ParseQuicVersions( GetVariationParam(quic_trial_params, "quic_version")); @@ -368,6 +373,8 @@ void ConfigureQuicParams(base::StringPiece quic_trial_group, GetQuicClientConnectionOptions(quic_trial_params); params->quic_close_sessions_on_ip_change = ShouldQuicCloseSessionsOnIpChange(quic_trial_params); + params->quic_goaway_sessions_on_ip_change = + ShouldQuicGoAwaySessionsOnIpChange(quic_trial_params); int idle_connection_timeout_seconds = GetQuicIdleConnectionTimeoutSeconds(quic_trial_params); if (idle_connection_timeout_seconds != 0) { @@ -377,7 +384,7 @@ void ConfigureQuicParams(base::StringPiece quic_trial_group, int reduced_ping_timeout_seconds = GetQuicReducedPingTimeoutSeconds(quic_trial_params); if (reduced_ping_timeout_seconds > 0 && - reduced_ping_timeout_seconds < net::kPingTimeoutSecs) { + reduced_ping_timeout_seconds < quic::kPingTimeoutSecs) { params->quic_reduced_ping_timeout_seconds = reduced_ping_timeout_seconds; } int max_time_before_crypto_handshake_seconds = @@ -427,7 +434,7 @@ void ConfigureQuicParams(base::StringPiece quic_trial_group, params->quic_user_agent_id = quic_user_agent_id; - net::QuicTransportVersionVector supported_versions = + quic::QuicTransportVersionVector supported_versions = GetQuicVersions(quic_trial_params); if (!supported_versions.empty()) params->quic_supported_versions = supported_versions; @@ -437,17 +444,17 @@ void ConfigureQuicParams(base::StringPiece quic_trial_group, namespace network_session_configurator { -net::QuicTransportVersionVector ParseQuicVersions( +quic::QuicTransportVersionVector ParseQuicVersions( const std::string& quic_versions) { - net::QuicTransportVersionVector supported_versions; - net::QuicTransportVersionVector all_supported_versions = - net::AllSupportedTransportVersions(); + quic::QuicTransportVersionVector supported_versions; + quic::QuicTransportVersionVector all_supported_versions = + quic::AllSupportedTransportVersions(); for (const base::StringPiece& version : base::SplitStringPiece( quic_versions, ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL)) { auto it = all_supported_versions.begin(); while (it != all_supported_versions.end()) { - if (net::QuicVersionToString(*it) == version) { + if (quic::QuicVersionToString(*it) == version) { supported_versions.push_back(*it); // Remove the supported version to deduplicate versions extracted from // |quic_versions|. @@ -509,7 +516,7 @@ void ParseCommandLineAndFieldTrials(const base::CommandLine& command_line, } if (command_line.HasSwitch(switches::kQuicVersion)) { - net::QuicTransportVersionVector supported_versions = + quic::QuicTransportVersionVector supported_versions = network_session_configurator::ParseQuicVersions( command_line.GetSwitchValueASCII(switches::kQuicVersion)); if (!supported_versions.empty()) diff --git a/chromium/components/network_session_configurator/browser/network_session_configurator.h b/chromium/components/network_session_configurator/browser/network_session_configurator.h index a3e624c26b9..4b501fbee52 100644 --- a/chromium/components/network_session_configurator/browser/network_session_configurator.h +++ b/chromium/components/network_session_configurator/browser/network_session_configurator.h @@ -20,7 +20,7 @@ namespace network_session_configurator { // trials and command line. // Parse serialized QUIC versions string. -net::QuicTransportVersionVector ParseQuicVersions( +quic::QuicTransportVersionVector ParseQuicVersions( const std::string& quic_versions); // Configure |params| based on field trials and command line, diff --git a/chromium/components/network_session_configurator/browser/network_session_configurator_unittest.cc b/chromium/components/network_session_configurator/browser/network_session_configurator_unittest.cc index 7e14acff63c..6235f7d927a 100644 --- a/chromium/components/network_session_configurator/browser/network_session_configurator_unittest.cc +++ b/chromium/components/network_session_configurator/browser/network_session_configurator_unittest.cc @@ -71,11 +71,23 @@ TEST_F(NetworkSessionConfiguratorTest, Defaults) { EXPECT_EQ(0u, params_.origins_to_force_quic_on.size()); } -TEST_F(NetworkSessionConfiguratorTest, Http2FieldTrialHttp2Disable) { +TEST_F(NetworkSessionConfiguratorTest, Http2FieldTrialGroupNameDoesNotMatter) { base::FieldTrialList::CreateFieldTrial("HTTP2", "Disable"); ParseFieldTrials(); + EXPECT_TRUE(params_.enable_http2); +} + +TEST_F(NetworkSessionConfiguratorTest, Http2FieldTrialDisable) { + std::map<std::string, std::string> field_trial_params; + field_trial_params["http2_enabled"] = "false"; + variations::AssociateVariationParams("HTTP2", "Experiment", + field_trial_params); + base::FieldTrialList::CreateFieldTrial("HTTP2", "Experiment"); + + ParseFieldTrials(); + EXPECT_FALSE(params_.enable_http2); } @@ -89,21 +101,20 @@ TEST_F(NetworkSessionConfiguratorTest, EnableQuicFromFieldTrialGroup) { EXPECT_TRUE(params_.retry_without_alt_svc_on_quic_errors); EXPECT_FALSE(params_.support_ietf_format_quic_altsvc); EXPECT_EQ(1350u, params_.quic_max_packet_length); - EXPECT_EQ(net::QuicTagVector(), params_.quic_connection_options); - EXPECT_EQ(net::QuicTagVector(), params_.quic_client_connection_options); + EXPECT_EQ(quic::QuicTagVector(), params_.quic_connection_options); + EXPECT_EQ(quic::QuicTagVector(), params_.quic_client_connection_options); EXPECT_FALSE(params_.enable_server_push_cancellation); EXPECT_FALSE(params_.quic_close_sessions_on_ip_change); + EXPECT_FALSE(params_.quic_goaway_sessions_on_ip_change); EXPECT_EQ(net::kIdleConnectionTimeoutSeconds, params_.quic_idle_connection_timeout_seconds); - EXPECT_EQ(net::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); - EXPECT_EQ(net::kMaxTimeForCryptoHandshakeSecs, + EXPECT_EQ(quic::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); + EXPECT_EQ(quic::kMaxTimeForCryptoHandshakeSecs, params_.quic_max_time_before_crypto_handshake_seconds); - EXPECT_EQ(net::kInitialIdleTimeoutSecs, + EXPECT_EQ(quic::kInitialIdleTimeoutSecs, params_.quic_max_idle_time_before_crypto_handshake_seconds); EXPECT_FALSE(params_.quic_race_cert_verification); EXPECT_FALSE(params_.quic_estimate_initial_rtt); - EXPECT_FALSE(params_.quic_migrate_sessions_on_network_change); - EXPECT_FALSE(params_.quic_migrate_sessions_early); EXPECT_FALSE(params_.quic_migrate_sessions_on_network_change_v2); EXPECT_FALSE(params_.quic_migrate_sessions_early_v2); EXPECT_FALSE(params_.quic_allow_server_migration); @@ -182,6 +193,18 @@ TEST_F(NetworkSessionConfiguratorTest, } TEST_F(NetworkSessionConfiguratorTest, + QuicGoAwaySessionsOnIpChangeFromFieldTrialParams) { + std::map<std::string, std::string> field_trial_params; + field_trial_params["goaway_sessions_on_ip_change"] = "true"; + variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); + base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); + + ParseFieldTrials(); + + EXPECT_TRUE(params_.quic_goaway_sessions_on_ip_change); +} + +TEST_F(NetworkSessionConfiguratorTest, QuicIdleConnectionTimeoutSecondsFieldTrialParams) { std::map<std::string, std::string> field_trial_params; field_trial_params["idle_connection_timeout_seconds"] = "300"; @@ -200,7 +223,7 @@ TEST_F(NetworkSessionConfiguratorTest, variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); ParseFieldTrials(); - EXPECT_EQ(net::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); + EXPECT_EQ(quic::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); } TEST_F(NetworkSessionConfiguratorTest, @@ -210,7 +233,7 @@ TEST_F(NetworkSessionConfiguratorTest, variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); ParseFieldTrials(); - EXPECT_EQ(net::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); + EXPECT_EQ(quic::kPingTimeoutSecs, params_.quic_reduced_ping_timeout_seconds); } TEST_F(NetworkSessionConfiguratorTest, @@ -240,7 +263,7 @@ TEST_F(NetworkSessionConfiguratorTest, variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); ParseFieldTrials(); - EXPECT_EQ(net::kMaxTimeForCryptoHandshakeSecs, + EXPECT_EQ(quic::kMaxTimeForCryptoHandshakeSecs, params_.quic_max_time_before_crypto_handshake_seconds); } @@ -261,7 +284,7 @@ TEST_F(NetworkSessionConfiguratorTest, variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); ParseFieldTrials(); - EXPECT_EQ(net::kInitialIdleTimeoutSecs, + EXPECT_EQ(quic::kInitialIdleTimeoutSecs, params_.quic_max_idle_time_before_crypto_handshake_seconds); } @@ -375,14 +398,14 @@ TEST_F(NetworkSessionConfiguratorTest, PacketLengthFromFieldTrialParams) { TEST_F(NetworkSessionConfiguratorTest, QuicVersionFromFieldTrialParams) { std::map<std::string, std::string> field_trial_params; field_trial_params["quic_version"] = - net::QuicVersionToString(net::AllSupportedTransportVersions().back()); + quic::QuicVersionToString(quic::AllSupportedTransportVersions().back()); variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); base::FieldTrialList::CreateFieldTrial("QUIC", "Enabled"); ParseFieldTrials(); - net::QuicTransportVersionVector supported_versions; - supported_versions.push_back(net::AllSupportedTransportVersions().back()); + quic::QuicTransportVersionVector supported_versions; + supported_versions.push_back(quic::AllSupportedTransportVersions().back()); EXPECT_EQ(supported_versions, params_.quic_supported_versions); } @@ -390,9 +413,9 @@ TEST_F(NetworkSessionConfiguratorTest, MultipleQuicVersionFromFieldTrialParams) { std::map<std::string, std::string> field_trial_params; std::string quic_versions = - net::QuicVersionToString(net::AllSupportedTransportVersions().front()) + + quic::QuicVersionToString(quic::AllSupportedTransportVersions().front()) + "," + - net::QuicVersionToString(net::AllSupportedTransportVersions().back()); + quic::QuicVersionToString(quic::AllSupportedTransportVersions().back()); field_trial_params["quic_version"] = quic_versions; variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); @@ -400,18 +423,18 @@ TEST_F(NetworkSessionConfiguratorTest, ParseFieldTrials(); - net::QuicTransportVersionVector supported_versions; - supported_versions.push_back(net::AllSupportedTransportVersions().front()); - supported_versions.push_back(net::AllSupportedTransportVersions().back()); + quic::QuicTransportVersionVector supported_versions; + supported_versions.push_back(quic::AllSupportedTransportVersions().front()); + supported_versions.push_back(quic::AllSupportedTransportVersions().back()); EXPECT_EQ(supported_versions, params_.quic_supported_versions); } TEST_F(NetworkSessionConfiguratorTest, SameQuicVersionsFromFieldTrialParams) { std::map<std::string, std::string> field_trial_params; std::string quic_versions = - net::QuicVersionToString(net::AllSupportedTransportVersions().front()) + + quic::QuicVersionToString(quic::AllSupportedTransportVersions().front()) + "," + - net::QuicVersionToString(net::AllSupportedTransportVersions().front()); + quic::QuicVersionToString(quic::AllSupportedTransportVersions().front()); field_trial_params["quic_version"] = quic_versions; variations::AssociateVariationParams("QUIC", "Enabled", field_trial_params); @@ -419,8 +442,8 @@ TEST_F(NetworkSessionConfiguratorTest, SameQuicVersionsFromFieldTrialParams) { ParseFieldTrials(); - net::QuicTransportVersionVector supported_versions; - supported_versions.push_back(net::AllSupportedTransportVersions().front()); + quic::QuicTransportVersionVector supported_versions; + supported_versions.push_back(quic::AllSupportedTransportVersions().front()); EXPECT_EQ(supported_versions, params_.quic_supported_versions); } @@ -433,10 +456,10 @@ TEST_F(NetworkSessionConfiguratorTest, ParseFieldTrials(); - net::QuicTagVector options; - options.push_back(net::kTIME); - options.push_back(net::kTBBR); - options.push_back(net::kREJ); + quic::QuicTagVector options; + options.push_back(quic::kTIME); + options.push_back(quic::kTBBR); + options.push_back(quic::kREJ); EXPECT_EQ(options, params_.quic_connection_options); } @@ -449,9 +472,9 @@ TEST_F(NetworkSessionConfiguratorTest, ParseFieldTrials(); - net::QuicTagVector options; - options.push_back(net::kTBBR); - options.push_back(net::k1RTT); + quic::QuicTagVector options; + options.push_back(quic::kTBBR); + options.push_back(quic::k1RTT); EXPECT_EQ(options, params_.quic_client_connection_options); } @@ -558,10 +581,10 @@ TEST_F(NetworkSessionConfiguratorTest, QuicConnectionOptions) { "TIMER,TBBR,REJ"); ParseCommandLineAndFieldTrials(command_line); - net::QuicTagVector expected_options; - expected_options.push_back(net::kTIME); - expected_options.push_back(net::kTBBR); - expected_options.push_back(net::kREJ); + quic::QuicTagVector expected_options; + expected_options.push_back(quic::kTIME); + expected_options.push_back(quic::kTBBR); + expected_options.push_back(quic::kREJ); EXPECT_EQ(expected_options, params_.quic_connection_options); } @@ -574,13 +597,13 @@ TEST_F(NetworkSessionConfiguratorTest, QuicMaxPacketLength) { } TEST_F(NetworkSessionConfiguratorTest, QuicVersion) { - net::QuicTransportVersionVector supported_versions = - net::AllSupportedTransportVersions(); + quic::QuicTransportVersionVector supported_versions = + quic::AllSupportedTransportVersions(); for (const auto& version : supported_versions) { base::CommandLine command_line(base::CommandLine::NO_PROGRAM); command_line.AppendSwitch(switches::kEnableQuic); command_line.AppendSwitchASCII(switches::kQuicVersion, - net::QuicVersionToString(version)); + quic::QuicVersionToString(version)); ParseCommandLineAndFieldTrials(command_line); ASSERT_EQ(1u, params_.quic_supported_versions.size()); EXPECT_EQ(version, params_.quic_supported_versions[0]); |