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

Side by Side Diff: net/http/http_network_session.h

Issue 1327923002: Migrates QUIC sessions to a new network when old network is (about to be) disconnected. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@home
Patch Set: More tests added and some fixes. Created 4 years, 11 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 #ifndef NET_HTTP_HTTP_NETWORK_SESSION_H_ 5 #ifndef NET_HTTP_HTTP_NETWORK_SESSION_H_
6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_ 6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 int quic_threshold_public_resets_post_handshake; 171 int quic_threshold_public_resets_post_handshake;
172 int quic_threshold_timeouts_streams_open; 172 int quic_threshold_timeouts_streams_open;
173 // Set of QUIC tags to send in the handshake's connection options. 173 // Set of QUIC tags to send in the handshake's connection options.
174 QuicTagVector quic_connection_options; 174 QuicTagVector quic_connection_options;
175 // If true, all QUIC sessions are closed when any local IP address changes. 175 // If true, all QUIC sessions are closed when any local IP address changes.
176 bool quic_close_sessions_on_ip_change; 176 bool quic_close_sessions_on_ip_change;
177 // Specifes QUIC idle connection state lifetime. 177 // Specifes QUIC idle connection state lifetime.
178 int quic_idle_connection_timeout_seconds; 178 int quic_idle_connection_timeout_seconds;
179 // If true, disable preconnections if QUIC can do 0RTT. 179 // If true, disable preconnections if QUIC can do 0RTT.
180 bool quic_disable_preconnect_if_0rtt; 180 bool quic_disable_preconnect_if_0rtt;
181 // If true, active QUIC sessions may be migrated onto new IPs when network
182 // changes.
183 bool quic_migrate_sessions_on_network_change;
181 ProxyDelegate* proxy_delegate; 184 ProxyDelegate* proxy_delegate;
182 }; 185 };
183 186
184 enum SocketPoolType { 187 enum SocketPoolType {
185 NORMAL_SOCKET_POOL, 188 NORMAL_SOCKET_POOL,
186 WEBSOCKET_SOCKET_POOL, 189 WEBSOCKET_SOCKET_POOL,
187 NUM_SOCKET_POOL_TYPES 190 NUM_SOCKET_POOL_TYPES
188 }; 191 };
189 192
190 explicit HttpNetworkSession(const Params& params); 193 explicit HttpNetworkSession(const Params& params);
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 293
291 NextProtoVector next_protos_; 294 NextProtoVector next_protos_;
292 bool enabled_protocols_[NUM_VALID_ALTERNATE_PROTOCOLS]; 295 bool enabled_protocols_[NUM_VALID_ALTERNATE_PROTOCOLS];
293 296
294 Params params_; 297 Params params_;
295 }; 298 };
296 299
297 } // namespace net 300 } // namespace net
298 301
299 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ 302 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698