Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / net / quic / proto / cached_network_parameters.proto
blob2a3f3e5a5954a29bfbcca8765cf8b8fce6ec68cd
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 syntax = "proto2";
7 option optimize_for = LITE_RUNTIME;
9 package net;
11 // CachedNetworkParameters contains data that can be used to choose appropriate
12 // connection parameters (initial RTT, initial CWND, etc.) in new connections.
13 // Next id: 8
14 message CachedNetworkParameters {
15   // Describes the state of the connection during which the supplied network
16   // parameters were calculated.
17   enum PreviousConnectionState {
18     SLOW_START = 0;
19     CONGESTION_AVOIDANCE = 1;
20   }
22   // serving_region is used to decide whether or not the bandwidth estimate and
23   // min RTT are reasonable and if they should be used.
24   // For example a group of geographically close servers may share the same
25   // serving_region string if they are expected to have similar network
26   // performance.
27   optional string serving_region = 1;
28   // The server can supply a bandwidth estimate (in bytes/s) which it may re-use
29   // on receipt of a source-address token with this field set.
30   optional int32 bandwidth_estimate_bytes_per_second = 2;
31   // The maximum bandwidth seen to the client, not necessarily the latest.
32   optional int32 max_bandwidth_estimate_bytes_per_second = 5;
33   // Timestamp (seconds since UNIX epoch) that indicates when the max bandwidth
34   // was seen by the server.
35   optional int64 max_bandwidth_timestamp_seconds = 6;
36   // The min RTT seen on a previous connection can be used by the server to
37   // inform initial connection parameters for new connections.
38   optional int32 min_rtt_ms = 3;
39   // Encodes the PreviousConnectionState enum.
40   optional int32 previous_connection_state = 4;
41   // UNIX timestamp when this bandwidth estimate was created.
42   optional int64 timestamp = 7;