diff options
author | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-17 22:18:03 +0000 |
---|---|---|
committer | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-17 22:18:03 +0000 |
commit | cce4cf72c69d2a8e347af4263fd691e21631ab2f (patch) | |
tree | c6e8f6a875fc34046072fa71ee0a199e9bcb75f6 /net/quic | |
parent | 54bccee689127f1c88afba973e12a45f14842435 (diff) | |
download | chromium_src-cce4cf72c69d2a8e347af4263fd691e21631ab2f.zip chromium_src-cce4cf72c69d2a8e347af4263fd691e21631ab2f.tar.gz chromium_src-cce4cf72c69d2a8e347af4263fd691e21631ab2f.tar.bz2 |
Re-enable Zero-RTT and increase the QUIC socket send buffer
Review URL: https://chromiumcodereview.appspot.com/23455053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223714 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/quic')
-rw-r--r-- | net/quic/quic_stream_factory.cc | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc index e5319fb..9b18931 100644 --- a/net/quic/quic_stream_factory.cc +++ b/net/quic/quic_stream_factory.cc @@ -307,8 +307,7 @@ int QuicStreamFactory::Create(const HostPortProxyPair& host_port_proxy_pair, void QuicStreamFactory::OnJobComplete(Job* job, int rv) { if (rv == OK) { - // TODO(rch): Uncomment this once we trust 0-RTT - // require_confirmation_ = false; + require_confirmation_ = false; // Create all the streams, but do not notify them yet. for (RequestSet::iterator it = job_requests_map_[job].begin(); @@ -437,18 +436,10 @@ QuicClientSession* QuicStreamFactory::CreateSession( // revisit this setting and test for its impact. const int32 kSocketBufferSize(kMaxPacketSize * 100); // Support 100 packets. socket->SetReceiveBufferSize(kSocketBufferSize); - // TODO(jar): What should the UDP send buffer be set to? If the send buffer - // is too large, then we might(?) wastefully queue packets in the OS, when - // we'd rather construct packets just in time. We do however expect that the - // calculated send rate (paced, or ack clocked), will be well below the egress - // rate of the local machine, so that *shouldn't* be a problem. - // If the buffer setting is too small, then we will starve our outgoing link - // on a fast connection, because we won't respond fast enough to the many - // async callbacks to get data from us. On the other hand, until we have real - // pacing support (beyond ack-clocked pacing), we get a bit of adhoc-pacing by - // requiring the application to refill this OS buffer (ensuring that we don't - // blast a pile of packets at the kernel's max egress rate). - // socket->SetSendBufferSize(????); + // Set a buffer large enough to contain the initial CWND's worth of packet + // to work around the problem with CHLO packets being sent out with the + // wrong encryption level, when the send buffer is full. + socket->SetSendBufferSize(kMaxPacketSize * 20); // Support 20 packets. QuicConnectionHelper* helper = new QuicConnectionHelper( base::MessageLoop::current()->message_loop_proxy().get(), |