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. 4 5syntax = "proto2"; 6 7option optimize_for = LITE_RUNTIME; 8 9import "quiche/quic/core/proto/cached_network_parameters.proto"; 10 11package quic; 12 13// A SourceAddressToken is serialised, encrypted and sent to clients so that 14// they can prove ownership of an IP address. 15message SourceAddressToken { 16 // ip contains either 4 (IPv4) or 16 (IPv6) bytes of IP address in network 17 // byte order. 18 required bytes ip = 1; 19 // timestamp contains a UNIX timestamp value of the time when the token was 20 // created. 21 required int64 timestamp = 2; 22 // The server can provide estimated network parameters to be used for 23 // initial parameter selection in future connections. 24 optional CachedNetworkParameters cached_network_parameters = 3; 25}; 26 27// SourceAddressTokens are simply lists of SourceAddressToken messages. 28message SourceAddressTokens { 29 // This field has id 4 to avoid ambiguity between the serialized form of 30 // SourceAddressToken vs SourceAddressTokens. 31 repeated SourceAddressToken tokens = 4; 32}; 33