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

Unified Diff: net/http/http_network_session.cc

Issue 1025573002: QUIC - disable QUIC if packet loss rate is bad for a connection. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Disable quic when there is high packet loss rate 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 side-by-side diff with in-line comments
Download patch
Index: net/http/http_network_session.cc
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
index 80856419841cc3bf320648bb8b7367deb666dcb4..7eb45bc716284bf53395d9fa188f84e3784631db 100644
--- a/net/http/http_network_session.cc
+++ b/net/http/http_network_session.cc
@@ -92,6 +92,8 @@ HttpNetworkSession::Params::Params()
quic_enable_connection_racing(false),
quic_enable_non_blocking_io(false),
quic_disable_disk_cache(false),
+ quic_max_number_of_lossy_connections(0),
+ quic_packet_loss_threshold(1000.0f),
Ryan Hamilton 2015/03/23 02:31:05 Is this value a percent or a fraction?
ramant (doing other things) 2015/03/24 03:07:22 Defined it as fraction.
quic_socket_receive_buffer_size(kDefaultSocketReceiveBuffer),
quic_clock(NULL),
quic_random(NULL),
@@ -139,6 +141,8 @@ HttpNetworkSession::HttpNetworkSession(const Params& params)
params.quic_enable_connection_racing,
params.quic_enable_non_blocking_io,
params.quic_disable_disk_cache,
+ params.quic_max_number_of_lossy_connections,
+ params.quic_packet_loss_threshold,
params.quic_socket_receive_buffer_size,
params.quic_connection_options),
spdy_session_pool_(params.host_resolver,
@@ -258,6 +262,8 @@ base::Value* HttpNetworkSession::QuicInfoToValue() const {
base::DictionaryValue* dict = new base::DictionaryValue();
dict->Set("sessions", quic_stream_factory_.QuicStreamFactoryInfoToValue());
dict->SetBoolean("quic_enabled", params_.enable_quic);
+ dict->SetBoolean("quic_disabled_due_to_packet_loss",
+ quic_stream_factory_.quic_is_disabled());
Ryan Hamilton 2015/03/23 02:31:06 I think we need to track this per-port (or perhaps
ramant (doing other things) 2015/03/24 03:07:22 Tracked it by port.
dict->SetBoolean("quic_enabled_for_proxies", params_.enable_quic_for_proxies);
dict->SetBoolean("enable_quic_port_selection",
params_.enable_quic_port_selection);

Powered by Google App Engine
This is Rietveld 408576698