Add new certificateProvider extension API.
[chromium-blink-merge.git] / chrome / browser / net / probe_message.proto
blob6338634b6a1b8ebe270163a4abb37373d13736ee
1 // Copyright 2013 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 // This protocol buffer defines the message format between the probe clients
6 // and the probe servers.
8 syntax = "proto2";
10 package chrome_browser_net;
12 // Chrome requires this.
13 option optimize_for = LITE_RUNTIME;
15 // Next available id: 10.
16 message ProbePacket {
17   enum Type {
18     UNKNOWN = 0;
19     HELLO_REQUEST = 1;
20     HELLO_REPLY = 2;
21     PROBE_REQUEST = 3;
22     PROBE_REPLY = 4;
23   }
25   message Header {
26     required uint32 version = 1;
27     optional uint32 checksum = 2;
28     optional Type type = 3;
29   }
31   message Token {
32     required uint64 timestamp_micros = 1;
33     required bytes hash = 2;  // 16-byte MD5 hash value for authorization.
34   }
36   optional Header header = 1;
37   optional Token token = 2;              // For authorization.
38   // For differentiating different batches of packets.
39   optional uint32 group_id = 3;
40   optional uint32 packet_index = 4;      // Packet index in each batch.
41   optional uint32 probe_size_bytes = 5;  // Specify the probe packet size.
42   // Time duration between sending two consecutive packets.
43   optional uint32 pacing_interval_micros = 6;
44   // Total number of probe packets to send from the server.
45   optional uint32 number_probe_packets = 7;
46   optional int64 server_processing_micros = 9;
47   optional bytes padding = 8;