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

Side by Side Diff: net/quic/quic_stream_factory.cc

Issue 1502453003: QUIC - Disable Preconnect when QUIC can be spoken to a server with 0RTT (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test name Created 5 years 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
« no previous file with comments | « net/quic/quic_stream_factory.h ('k') | net/quic/quic_stream_factory_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "net/quic/quic_stream_factory.h" 5 #include "net/quic/quic_stream_factory.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 9
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 } 678 }
679 679
680 void QuicStreamFactory::set_require_confirmation(bool require_confirmation) { 680 void QuicStreamFactory::set_require_confirmation(bool require_confirmation) {
681 require_confirmation_ = require_confirmation; 681 require_confirmation_ = require_confirmation;
682 if (!(local_address_ == IPEndPoint())) { 682 if (!(local_address_ == IPEndPoint())) {
683 http_server_properties_->SetSupportsQuic(!require_confirmation, 683 http_server_properties_->SetSupportsQuic(!require_confirmation,
684 local_address_.address()); 684 local_address_.address());
685 } 685 }
686 } 686 }
687 687
688 bool QuicStreamFactory::ZeroRTTEnabledFor(const QuicServerId& quic_server_id) {
689 return !(require_confirmation_ || CryptoConfigCacheIsEmpty(quic_server_id));
690 }
691
688 base::TimeDelta QuicStreamFactory::GetTimeDelayForWaitingJob( 692 base::TimeDelta QuicStreamFactory::GetTimeDelayForWaitingJob(
689 const QuicServerId& server_id) { 693 const QuicServerId& server_id) {
690 if (!delay_tcp_race_ || require_confirmation_) 694 if (!delay_tcp_race_ || require_confirmation_)
691 return base::TimeDelta(); 695 return base::TimeDelta();
692 int64 srtt = 1.5 * GetServerNetworkStatsSmoothedRttInMicroseconds(server_id); 696 int64 srtt = 1.5 * GetServerNetworkStatsSmoothedRttInMicroseconds(server_id);
693 // Picked 300ms based on mean time from 697 // Picked 300ms based on mean time from
694 // Net.QuicSession.HostResolution.HandshakeConfirmedTime histogram. 698 // Net.QuicSession.HostResolution.HandshakeConfirmedTime histogram.
695 const int kDefaultRTT = 300 * kNumMicrosPerMilli; 699 const int kDefaultRTT = 300 * kNumMicrosPerMilli;
696 if (!srtt) 700 if (!srtt)
697 srtt = kDefaultRTT; 701 srtt = kDefaultRTT;
(...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after
1453 // Since the session was active, there's no longer an 1457 // Since the session was active, there's no longer an
1454 // HttpStreamFactoryImpl::Job running which can mark it broken, unless the TCP 1458 // HttpStreamFactoryImpl::Job running which can mark it broken, unless the TCP
1455 // job also fails. So to avoid not using QUIC when we otherwise could, we mark 1459 // job also fails. So to avoid not using QUIC when we otherwise could, we mark
1456 // it as recently broken, which means that 0-RTT will be disabled but we'll 1460 // it as recently broken, which means that 0-RTT will be disabled but we'll
1457 // still race. 1461 // still race.
1458 http_server_properties_->MarkAlternativeServiceRecentlyBroken( 1462 http_server_properties_->MarkAlternativeServiceRecentlyBroken(
1459 alternative_service); 1463 alternative_service);
1460 } 1464 }
1461 1465
1462 } // namespace net 1466 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_stream_factory.h ('k') | net/quic/quic_stream_factory_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698