1// copied from https://github.com/google/quic-trace/
2// Only changed the package name.
3
4// Code generated by protoc-gen-go. DO NOT EDIT.
5// versions:
6// 	protoc-gen-go v1.23.0
7// 	protoc        v3.11.4
8// source: quic-trace.proto
9
10package pb
11
12import (
13	proto "github.com/golang/protobuf/proto"
14	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
15	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
16	reflect "reflect"
17	sync "sync"
18)
19
20const (
21	// Verify that this generated code is sufficiently up-to-date.
22	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
23	// Verify that runtime/protoimpl is sufficiently up-to-date.
24	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
25)
26
27// This is a compile-time assertion that a sufficiently up-to-date version
28// of the legacy proto package is being used.
29const _ = proto.ProtoPackageIsVersion4
30
31type FrameType int32
32
33const (
34	FrameType_UNKNOWN_FRAME    FrameType = 0
35	FrameType_STREAM           FrameType = 1
36	FrameType_ACK              FrameType = 2
37	FrameType_RESET_STREAM     FrameType = 3
38	FrameType_CONNECTION_CLOSE FrameType = 4
39	FrameType_MAX_DATA         FrameType = 5
40	FrameType_MAX_STREAM_DATA  FrameType = 6
41	FrameType_PING             FrameType = 7
42	FrameType_BLOCKED          FrameType = 8
43	FrameType_STREAM_BLOCKED   FrameType = 9
44	FrameType_PADDING          FrameType = 10
45	FrameType_CRYPTO           FrameType = 11
46)
47
48// Enum value maps for FrameType.
49var (
50	FrameType_name = map[int32]string{
51		0:  "UNKNOWN_FRAME",
52		1:  "STREAM",
53		2:  "ACK",
54		3:  "RESET_STREAM",
55		4:  "CONNECTION_CLOSE",
56		5:  "MAX_DATA",
57		6:  "MAX_STREAM_DATA",
58		7:  "PING",
59		8:  "BLOCKED",
60		9:  "STREAM_BLOCKED",
61		10: "PADDING",
62		11: "CRYPTO",
63	}
64	FrameType_value = map[string]int32{
65		"UNKNOWN_FRAME":    0,
66		"STREAM":           1,
67		"ACK":              2,
68		"RESET_STREAM":     3,
69		"CONNECTION_CLOSE": 4,
70		"MAX_DATA":         5,
71		"MAX_STREAM_DATA":  6,
72		"PING":             7,
73		"BLOCKED":          8,
74		"STREAM_BLOCKED":   9,
75		"PADDING":          10,
76		"CRYPTO":           11,
77	}
78)
79
80func (x FrameType) Enum() *FrameType {
81	p := new(FrameType)
82	*p = x
83	return p
84}
85
86func (x FrameType) String() string {
87	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
88}
89
90func (FrameType) Descriptor() protoreflect.EnumDescriptor {
91	return file_quic_trace_proto_enumTypes[0].Descriptor()
92}
93
94func (FrameType) Type() protoreflect.EnumType {
95	return &file_quic_trace_proto_enumTypes[0]
96}
97
98func (x FrameType) Number() protoreflect.EnumNumber {
99	return protoreflect.EnumNumber(x)
100}
101
102// Deprecated: Do not use.
103func (x *FrameType) UnmarshalJSON(b []byte) error {
104	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
105	if err != nil {
106		return err
107	}
108	*x = FrameType(num)
109	return nil
110}
111
112// Deprecated: Use FrameType.Descriptor instead.
113func (FrameType) EnumDescriptor() ([]byte, []int) {
114	return file_quic_trace_proto_rawDescGZIP(), []int{0}
115}
116
117// Metadata for CONNECTION_CLOSE frames.
118// Close_type will indicate whether the close is a Google QUIC close,
119// IETF QUIC Transport CONNECTION CLOSE, or IETF QUIC Application
120// Connection Close, frame.
121type CloseType int32
122
123const (
124	CloseType_GOOGLE_QUIC_CONNECTION_CLOSE           CloseType = 0
125	CloseType_IETF_QUIC_TRANSPORT_CONNECTION_CLOSE   CloseType = 1
126	CloseType_IETF_QUIC_APPLICATION_CONNECTION_CLOSE CloseType = 2
127)
128
129// Enum value maps for CloseType.
130var (
131	CloseType_name = map[int32]string{
132		0: "GOOGLE_QUIC_CONNECTION_CLOSE",
133		1: "IETF_QUIC_TRANSPORT_CONNECTION_CLOSE",
134		2: "IETF_QUIC_APPLICATION_CONNECTION_CLOSE",
135	}
136	CloseType_value = map[string]int32{
137		"GOOGLE_QUIC_CONNECTION_CLOSE":           0,
138		"IETF_QUIC_TRANSPORT_CONNECTION_CLOSE":   1,
139		"IETF_QUIC_APPLICATION_CONNECTION_CLOSE": 2,
140	}
141)
142
143func (x CloseType) Enum() *CloseType {
144	p := new(CloseType)
145	*p = x
146	return p
147}
148
149func (x CloseType) String() string {
150	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
151}
152
153func (CloseType) Descriptor() protoreflect.EnumDescriptor {
154	return file_quic_trace_proto_enumTypes[1].Descriptor()
155}
156
157func (CloseType) Type() protoreflect.EnumType {
158	return &file_quic_trace_proto_enumTypes[1]
159}
160
161func (x CloseType) Number() protoreflect.EnumNumber {
162	return protoreflect.EnumNumber(x)
163}
164
165// Deprecated: Do not use.
166func (x *CloseType) UnmarshalJSON(b []byte) error {
167	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
168	if err != nil {
169		return err
170	}
171	*x = CloseType(num)
172	return nil
173}
174
175// Deprecated: Use CloseType.Descriptor instead.
176func (CloseType) EnumDescriptor() ([]byte, []int) {
177	return file_quic_trace_proto_rawDescGZIP(), []int{1}
178}
179
180type EncryptionLevel int32
181
182const (
183	EncryptionLevel_ENCRYPTION_UNKNOWN   EncryptionLevel = 0
184	EncryptionLevel_ENCRYPTION_INITIAL   EncryptionLevel = 1
185	EncryptionLevel_ENCRYPTION_0RTT      EncryptionLevel = 2
186	EncryptionLevel_ENCRYPTION_1RTT      EncryptionLevel = 3
187	EncryptionLevel_ENCRYPTION_HANDSHAKE EncryptionLevel = 4
188)
189
190// Enum value maps for EncryptionLevel.
191var (
192	EncryptionLevel_name = map[int32]string{
193		0: "ENCRYPTION_UNKNOWN",
194		1: "ENCRYPTION_INITIAL",
195		2: "ENCRYPTION_0RTT",
196		3: "ENCRYPTION_1RTT",
197		4: "ENCRYPTION_HANDSHAKE",
198	}
199	EncryptionLevel_value = map[string]int32{
200		"ENCRYPTION_UNKNOWN":   0,
201		"ENCRYPTION_INITIAL":   1,
202		"ENCRYPTION_0RTT":      2,
203		"ENCRYPTION_1RTT":      3,
204		"ENCRYPTION_HANDSHAKE": 4,
205	}
206)
207
208func (x EncryptionLevel) Enum() *EncryptionLevel {
209	p := new(EncryptionLevel)
210	*p = x
211	return p
212}
213
214func (x EncryptionLevel) String() string {
215	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
216}
217
218func (EncryptionLevel) Descriptor() protoreflect.EnumDescriptor {
219	return file_quic_trace_proto_enumTypes[2].Descriptor()
220}
221
222func (EncryptionLevel) Type() protoreflect.EnumType {
223	return &file_quic_trace_proto_enumTypes[2]
224}
225
226func (x EncryptionLevel) Number() protoreflect.EnumNumber {
227	return protoreflect.EnumNumber(x)
228}
229
230// Deprecated: Do not use.
231func (x *EncryptionLevel) UnmarshalJSON(b []byte) error {
232	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
233	if err != nil {
234		return err
235	}
236	*x = EncryptionLevel(num)
237	return nil
238}
239
240// Deprecated: Use EncryptionLevel.Descriptor instead.
241func (EncryptionLevel) EnumDescriptor() ([]byte, []int) {
242	return file_quic_trace_proto_rawDescGZIP(), []int{2}
243}
244
245type EventType int32
246
247const (
248	EventType_UNKNOWN_EVENT   EventType = 0
249	EventType_PACKET_SENT     EventType = 1
250	EventType_PACKET_RECEIVED EventType = 2
251	EventType_PACKET_LOST     EventType = 3
252	// An APPLICATION_LIMITED event occurs when the sender is capable of sending
253	// more data and tries to send it, but discovers that it does not have any
254	// outstanding data to send.  Such events are important to some congestion
255	// control algorithms (for example, BBR) since they are trying to measure the
256	// largest achievable throughput, but it is impossible to measure it when the
257	// application does not send anything.
258	EventType_APPLICATION_LIMITED EventType = 4
259	// Record when external information about expected network conditions
260	// (available bandwidth, RTT, congestion window, etc) is supplied to the
261	// sender.
262	EventType_EXTERNAL_PARAMETERS EventType = 5
263)
264
265// Enum value maps for EventType.
266var (
267	EventType_name = map[int32]string{
268		0: "UNKNOWN_EVENT",
269		1: "PACKET_SENT",
270		2: "PACKET_RECEIVED",
271		3: "PACKET_LOST",
272		4: "APPLICATION_LIMITED",
273		5: "EXTERNAL_PARAMETERS",
274	}
275	EventType_value = map[string]int32{
276		"UNKNOWN_EVENT":       0,
277		"PACKET_SENT":         1,
278		"PACKET_RECEIVED":     2,
279		"PACKET_LOST":         3,
280		"APPLICATION_LIMITED": 4,
281		"EXTERNAL_PARAMETERS": 5,
282	}
283)
284
285func (x EventType) Enum() *EventType {
286	p := new(EventType)
287	*p = x
288	return p
289}
290
291func (x EventType) String() string {
292	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
293}
294
295func (EventType) Descriptor() protoreflect.EnumDescriptor {
296	return file_quic_trace_proto_enumTypes[3].Descriptor()
297}
298
299func (EventType) Type() protoreflect.EnumType {
300	return &file_quic_trace_proto_enumTypes[3]
301}
302
303func (x EventType) Number() protoreflect.EnumNumber {
304	return protoreflect.EnumNumber(x)
305}
306
307// Deprecated: Do not use.
308func (x *EventType) UnmarshalJSON(b []byte) error {
309	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
310	if err != nil {
311		return err
312	}
313	*x = EventType(num)
314	return nil
315}
316
317// Deprecated: Use EventType.Descriptor instead.
318func (EventType) EnumDescriptor() ([]byte, []int) {
319	return file_quic_trace_proto_rawDescGZIP(), []int{3}
320}
321
322type TransmissionReason int32
323
324const (
325	// Indicates that there was not any particular special reason the packet was
326	// sent.
327	TransmissionReason_NORMAL_TRANSMISSION TransmissionReason = 0
328	// Indicates that the packet sent is a tail loss probe, cf.
329	// https://tools.ietf.org/html/draft-ietf-quic-recovery-14#section-4.3.2
330	TransmissionReason_TAIL_LOSS_PROBE TransmissionReason = 1
331	// Indicates that the packet is sent due to retransmission timeout, cf
332	// https://tools.ietf.org/html/draft-ietf-quic-recovery-14#section-4.3.3
333	TransmissionReason_RTO_TRANSMISSION TransmissionReason = 2
334	// Indicates that the packet is sent in order to probe whether there is extra
335	// bandwidth available in cases where the sender needs an estimate of
336	// available bandwidth, but the application does not provide enough data for
337	// such estimate to become naturally available.  This is usually only used in
338	// real-time protocols.
339	TransmissionReason_PROBING_TRANSMISSION TransmissionReason = 3
340)
341
342// Enum value maps for TransmissionReason.
343var (
344	TransmissionReason_name = map[int32]string{
345		0: "NORMAL_TRANSMISSION",
346		1: "TAIL_LOSS_PROBE",
347		2: "RTO_TRANSMISSION",
348		3: "PROBING_TRANSMISSION",
349	}
350	TransmissionReason_value = map[string]int32{
351		"NORMAL_TRANSMISSION":  0,
352		"TAIL_LOSS_PROBE":      1,
353		"RTO_TRANSMISSION":     2,
354		"PROBING_TRANSMISSION": 3,
355	}
356)
357
358func (x TransmissionReason) Enum() *TransmissionReason {
359	p := new(TransmissionReason)
360	*p = x
361	return p
362}
363
364func (x TransmissionReason) String() string {
365	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
366}
367
368func (TransmissionReason) Descriptor() protoreflect.EnumDescriptor {
369	return file_quic_trace_proto_enumTypes[4].Descriptor()
370}
371
372func (TransmissionReason) Type() protoreflect.EnumType {
373	return &file_quic_trace_proto_enumTypes[4]
374}
375
376func (x TransmissionReason) Number() protoreflect.EnumNumber {
377	return protoreflect.EnumNumber(x)
378}
379
380// Deprecated: Do not use.
381func (x *TransmissionReason) UnmarshalJSON(b []byte) error {
382	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
383	if err != nil {
384		return err
385	}
386	*x = TransmissionReason(num)
387	return nil
388}
389
390// Deprecated: Use TransmissionReason.Descriptor instead.
391func (TransmissionReason) EnumDescriptor() ([]byte, []int) {
392	return file_quic_trace_proto_rawDescGZIP(), []int{4}
393}
394
395// Metadata for STREAM frames.
396type StreamFrameInfo struct {
397	state         protoimpl.MessageState
398	sizeCache     protoimpl.SizeCache
399	unknownFields protoimpl.UnknownFields
400
401	StreamId *uint64 `protobuf:"varint,1,opt,name=stream_id,json=streamId" json:"stream_id,omitempty"`
402	Fin      *bool   `protobuf:"varint,2,opt,name=fin" json:"fin,omitempty"`
403	Length   *uint64 `protobuf:"varint,3,opt,name=length" json:"length,omitempty"`
404	Offset   *uint64 `protobuf:"varint,4,opt,name=offset" json:"offset,omitempty"`
405}
406
407func (x *StreamFrameInfo) Reset() {
408	*x = StreamFrameInfo{}
409	if protoimpl.UnsafeEnabled {
410		mi := &file_quic_trace_proto_msgTypes[0]
411		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
412		ms.StoreMessageInfo(mi)
413	}
414}
415
416func (x *StreamFrameInfo) String() string {
417	return protoimpl.X.MessageStringOf(x)
418}
419
420func (*StreamFrameInfo) ProtoMessage() {}
421
422func (x *StreamFrameInfo) ProtoReflect() protoreflect.Message {
423	mi := &file_quic_trace_proto_msgTypes[0]
424	if protoimpl.UnsafeEnabled && x != nil {
425		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
426		if ms.LoadMessageInfo() == nil {
427			ms.StoreMessageInfo(mi)
428		}
429		return ms
430	}
431	return mi.MessageOf(x)
432}
433
434// Deprecated: Use StreamFrameInfo.ProtoReflect.Descriptor instead.
435func (*StreamFrameInfo) Descriptor() ([]byte, []int) {
436	return file_quic_trace_proto_rawDescGZIP(), []int{0}
437}
438
439func (x *StreamFrameInfo) GetStreamId() uint64 {
440	if x != nil && x.StreamId != nil {
441		return *x.StreamId
442	}
443	return 0
444}
445
446func (x *StreamFrameInfo) GetFin() bool {
447	if x != nil && x.Fin != nil {
448		return *x.Fin
449	}
450	return false
451}
452
453func (x *StreamFrameInfo) GetLength() uint64 {
454	if x != nil && x.Length != nil {
455		return *x.Length
456	}
457	return 0
458}
459
460func (x *StreamFrameInfo) GetOffset() uint64 {
461	if x != nil && x.Offset != nil {
462		return *x.Offset
463	}
464	return 0
465}
466
467// Metadata for CRYPTO frames.
468type CryptoFrameInfo struct {
469	state         protoimpl.MessageState
470	sizeCache     protoimpl.SizeCache
471	unknownFields protoimpl.UnknownFields
472
473	Length *uint64 `protobuf:"varint,1,opt,name=length" json:"length,omitempty"`
474	Offset *uint64 `protobuf:"varint,2,opt,name=offset" json:"offset,omitempty"`
475}
476
477func (x *CryptoFrameInfo) Reset() {
478	*x = CryptoFrameInfo{}
479	if protoimpl.UnsafeEnabled {
480		mi := &file_quic_trace_proto_msgTypes[1]
481		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
482		ms.StoreMessageInfo(mi)
483	}
484}
485
486func (x *CryptoFrameInfo) String() string {
487	return protoimpl.X.MessageStringOf(x)
488}
489
490func (*CryptoFrameInfo) ProtoMessage() {}
491
492func (x *CryptoFrameInfo) ProtoReflect() protoreflect.Message {
493	mi := &file_quic_trace_proto_msgTypes[1]
494	if protoimpl.UnsafeEnabled && x != nil {
495		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
496		if ms.LoadMessageInfo() == nil {
497			ms.StoreMessageInfo(mi)
498		}
499		return ms
500	}
501	return mi.MessageOf(x)
502}
503
504// Deprecated: Use CryptoFrameInfo.ProtoReflect.Descriptor instead.
505func (*CryptoFrameInfo) Descriptor() ([]byte, []int) {
506	return file_quic_trace_proto_rawDescGZIP(), []int{1}
507}
508
509func (x *CryptoFrameInfo) GetLength() uint64 {
510	if x != nil && x.Length != nil {
511		return *x.Length
512	}
513	return 0
514}
515
516func (x *CryptoFrameInfo) GetOffset() uint64 {
517	if x != nil && x.Offset != nil {
518		return *x.Offset
519	}
520	return 0
521}
522
523// The intervals are closed, i.e. the interval represented here is
524// [first_packet, last_packet].
525type AckBlock struct {
526	state         protoimpl.MessageState
527	sizeCache     protoimpl.SizeCache
528	unknownFields protoimpl.UnknownFields
529
530	FirstPacket *uint64 `protobuf:"varint,1,opt,name=first_packet,json=firstPacket" json:"first_packet,omitempty"`
531	LastPacket  *uint64 `protobuf:"varint,2,opt,name=last_packet,json=lastPacket" json:"last_packet,omitempty"`
532}
533
534func (x *AckBlock) Reset() {
535	*x = AckBlock{}
536	if protoimpl.UnsafeEnabled {
537		mi := &file_quic_trace_proto_msgTypes[2]
538		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
539		ms.StoreMessageInfo(mi)
540	}
541}
542
543func (x *AckBlock) String() string {
544	return protoimpl.X.MessageStringOf(x)
545}
546
547func (*AckBlock) ProtoMessage() {}
548
549func (x *AckBlock) ProtoReflect() protoreflect.Message {
550	mi := &file_quic_trace_proto_msgTypes[2]
551	if protoimpl.UnsafeEnabled && x != nil {
552		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
553		if ms.LoadMessageInfo() == nil {
554			ms.StoreMessageInfo(mi)
555		}
556		return ms
557	}
558	return mi.MessageOf(x)
559}
560
561// Deprecated: Use AckBlock.ProtoReflect.Descriptor instead.
562func (*AckBlock) Descriptor() ([]byte, []int) {
563	return file_quic_trace_proto_rawDescGZIP(), []int{2}
564}
565
566func (x *AckBlock) GetFirstPacket() uint64 {
567	if x != nil && x.FirstPacket != nil {
568		return *x.FirstPacket
569	}
570	return 0
571}
572
573func (x *AckBlock) GetLastPacket() uint64 {
574	if x != nil && x.LastPacket != nil {
575		return *x.LastPacket
576	}
577	return 0
578}
579
580// Metadata for ACK frames.
581type AckInfo struct {
582	state         protoimpl.MessageState
583	sizeCache     protoimpl.SizeCache
584	unknownFields protoimpl.UnknownFields
585
586	AckedPackets []*AckBlock `protobuf:"bytes,1,rep,name=acked_packets,json=ackedPackets" json:"acked_packets,omitempty"`
587	AckDelayUs   *uint64     `protobuf:"varint,2,opt,name=ack_delay_us,json=ackDelayUs" json:"ack_delay_us,omitempty"`
588}
589
590func (x *AckInfo) Reset() {
591	*x = AckInfo{}
592	if protoimpl.UnsafeEnabled {
593		mi := &file_quic_trace_proto_msgTypes[3]
594		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
595		ms.StoreMessageInfo(mi)
596	}
597}
598
599func (x *AckInfo) String() string {
600	return protoimpl.X.MessageStringOf(x)
601}
602
603func (*AckInfo) ProtoMessage() {}
604
605func (x *AckInfo) ProtoReflect() protoreflect.Message {
606	mi := &file_quic_trace_proto_msgTypes[3]
607	if protoimpl.UnsafeEnabled && x != nil {
608		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
609		if ms.LoadMessageInfo() == nil {
610			ms.StoreMessageInfo(mi)
611		}
612		return ms
613	}
614	return mi.MessageOf(x)
615}
616
617// Deprecated: Use AckInfo.ProtoReflect.Descriptor instead.
618func (*AckInfo) Descriptor() ([]byte, []int) {
619	return file_quic_trace_proto_rawDescGZIP(), []int{3}
620}
621
622func (x *AckInfo) GetAckedPackets() []*AckBlock {
623	if x != nil {
624		return x.AckedPackets
625	}
626	return nil
627}
628
629func (x *AckInfo) GetAckDelayUs() uint64 {
630	if x != nil && x.AckDelayUs != nil {
631		return *x.AckDelayUs
632	}
633	return 0
634}
635
636// Metadata for RST_STREAM frames.
637type ResetStreamInfo struct {
638	state         protoimpl.MessageState
639	sizeCache     protoimpl.SizeCache
640	unknownFields protoimpl.UnknownFields
641
642	StreamId             *uint64 `protobuf:"varint,1,opt,name=stream_id,json=streamId" json:"stream_id,omitempty"`
643	ApplicationErrorCode *uint32 `protobuf:"varint,2,opt,name=application_error_code,json=applicationErrorCode" json:"application_error_code,omitempty"`
644	FinalOffset          *uint64 `protobuf:"varint,3,opt,name=final_offset,json=finalOffset" json:"final_offset,omitempty"`
645}
646
647func (x *ResetStreamInfo) Reset() {
648	*x = ResetStreamInfo{}
649	if protoimpl.UnsafeEnabled {
650		mi := &file_quic_trace_proto_msgTypes[4]
651		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
652		ms.StoreMessageInfo(mi)
653	}
654}
655
656func (x *ResetStreamInfo) String() string {
657	return protoimpl.X.MessageStringOf(x)
658}
659
660func (*ResetStreamInfo) ProtoMessage() {}
661
662func (x *ResetStreamInfo) ProtoReflect() protoreflect.Message {
663	mi := &file_quic_trace_proto_msgTypes[4]
664	if protoimpl.UnsafeEnabled && x != nil {
665		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
666		if ms.LoadMessageInfo() == nil {
667			ms.StoreMessageInfo(mi)
668		}
669		return ms
670	}
671	return mi.MessageOf(x)
672}
673
674// Deprecated: Use ResetStreamInfo.ProtoReflect.Descriptor instead.
675func (*ResetStreamInfo) Descriptor() ([]byte, []int) {
676	return file_quic_trace_proto_rawDescGZIP(), []int{4}
677}
678
679func (x *ResetStreamInfo) GetStreamId() uint64 {
680	if x != nil && x.StreamId != nil {
681		return *x.StreamId
682	}
683	return 0
684}
685
686func (x *ResetStreamInfo) GetApplicationErrorCode() uint32 {
687	if x != nil && x.ApplicationErrorCode != nil {
688		return *x.ApplicationErrorCode
689	}
690	return 0
691}
692
693func (x *ResetStreamInfo) GetFinalOffset() uint64 {
694	if x != nil && x.FinalOffset != nil {
695		return *x.FinalOffset
696	}
697	return 0
698}
699
700// Metadata for CONNECTION_CLOSE/APPLICATION_CLOSE frames.
701type CloseInfo struct {
702	state         protoimpl.MessageState
703	sizeCache     protoimpl.SizeCache
704	unknownFields protoimpl.UnknownFields
705
706	ErrorCode               *uint32    `protobuf:"varint,1,opt,name=error_code,json=errorCode" json:"error_code,omitempty"`
707	ReasonPhrase            *string    `protobuf:"bytes,2,opt,name=reason_phrase,json=reasonPhrase" json:"reason_phrase,omitempty"`
708	CloseType               *CloseType `protobuf:"varint,3,opt,name=close_type,json=closeType,enum=pb.CloseType" json:"close_type,omitempty"`
709	TransportCloseFrameType *uint64    `protobuf:"varint,4,opt,name=transport_close_frame_type,json=transportCloseFrameType" json:"transport_close_frame_type,omitempty"`
710}
711
712func (x *CloseInfo) Reset() {
713	*x = CloseInfo{}
714	if protoimpl.UnsafeEnabled {
715		mi := &file_quic_trace_proto_msgTypes[5]
716		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
717		ms.StoreMessageInfo(mi)
718	}
719}
720
721func (x *CloseInfo) String() string {
722	return protoimpl.X.MessageStringOf(x)
723}
724
725func (*CloseInfo) ProtoMessage() {}
726
727func (x *CloseInfo) ProtoReflect() protoreflect.Message {
728	mi := &file_quic_trace_proto_msgTypes[5]
729	if protoimpl.UnsafeEnabled && x != nil {
730		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
731		if ms.LoadMessageInfo() == nil {
732			ms.StoreMessageInfo(mi)
733		}
734		return ms
735	}
736	return mi.MessageOf(x)
737}
738
739// Deprecated: Use CloseInfo.ProtoReflect.Descriptor instead.
740func (*CloseInfo) Descriptor() ([]byte, []int) {
741	return file_quic_trace_proto_rawDescGZIP(), []int{5}
742}
743
744func (x *CloseInfo) GetErrorCode() uint32 {
745	if x != nil && x.ErrorCode != nil {
746		return *x.ErrorCode
747	}
748	return 0
749}
750
751func (x *CloseInfo) GetReasonPhrase() string {
752	if x != nil && x.ReasonPhrase != nil {
753		return *x.ReasonPhrase
754	}
755	return ""
756}
757
758func (x *CloseInfo) GetCloseType() CloseType {
759	if x != nil && x.CloseType != nil {
760		return *x.CloseType
761	}
762	return CloseType_GOOGLE_QUIC_CONNECTION_CLOSE
763}
764
765func (x *CloseInfo) GetTransportCloseFrameType() uint64 {
766	if x != nil && x.TransportCloseFrameType != nil {
767		return *x.TransportCloseFrameType
768	}
769	return 0
770}
771
772// Metadata for MAX_DATA/MAX_STREAM_DATA frames.
773type FlowControlInfo struct {
774	state         protoimpl.MessageState
775	sizeCache     protoimpl.SizeCache
776	unknownFields protoimpl.UnknownFields
777
778	MaxData  *uint64 `protobuf:"varint,1,opt,name=max_data,json=maxData" json:"max_data,omitempty"`
779	StreamId *uint64 `protobuf:"varint,2,opt,name=stream_id,json=streamId" json:"stream_id,omitempty"`
780}
781
782func (x *FlowControlInfo) Reset() {
783	*x = FlowControlInfo{}
784	if protoimpl.UnsafeEnabled {
785		mi := &file_quic_trace_proto_msgTypes[6]
786		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
787		ms.StoreMessageInfo(mi)
788	}
789}
790
791func (x *FlowControlInfo) String() string {
792	return protoimpl.X.MessageStringOf(x)
793}
794
795func (*FlowControlInfo) ProtoMessage() {}
796
797func (x *FlowControlInfo) ProtoReflect() protoreflect.Message {
798	mi := &file_quic_trace_proto_msgTypes[6]
799	if protoimpl.UnsafeEnabled && x != nil {
800		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
801		if ms.LoadMessageInfo() == nil {
802			ms.StoreMessageInfo(mi)
803		}
804		return ms
805	}
806	return mi.MessageOf(x)
807}
808
809// Deprecated: Use FlowControlInfo.ProtoReflect.Descriptor instead.
810func (*FlowControlInfo) Descriptor() ([]byte, []int) {
811	return file_quic_trace_proto_rawDescGZIP(), []int{6}
812}
813
814func (x *FlowControlInfo) GetMaxData() uint64 {
815	if x != nil && x.MaxData != nil {
816		return *x.MaxData
817	}
818	return 0
819}
820
821func (x *FlowControlInfo) GetStreamId() uint64 {
822	if x != nil && x.StreamId != nil {
823		return *x.StreamId
824	}
825	return 0
826}
827
828// A message representing a frame, either sent or received.
829type Frame struct {
830	state         protoimpl.MessageState
831	sizeCache     protoimpl.SizeCache
832	unknownFields protoimpl.UnknownFields
833
834	FrameType       *FrameType       `protobuf:"varint,1,opt,name=frame_type,json=frameType,enum=pb.FrameType" json:"frame_type,omitempty"`
835	StreamFrameInfo *StreamFrameInfo `protobuf:"bytes,2,opt,name=stream_frame_info,json=streamFrameInfo" json:"stream_frame_info,omitempty"`
836	AckInfo         *AckInfo         `protobuf:"bytes,3,opt,name=ack_info,json=ackInfo" json:"ack_info,omitempty"`
837	ResetStreamInfo *ResetStreamInfo `protobuf:"bytes,4,opt,name=reset_stream_info,json=resetStreamInfo" json:"reset_stream_info,omitempty"`
838	CloseInfo       *CloseInfo       `protobuf:"bytes,5,opt,name=close_info,json=closeInfo" json:"close_info,omitempty"`
839	FlowControlInfo *FlowControlInfo `protobuf:"bytes,6,opt,name=flow_control_info,json=flowControlInfo" json:"flow_control_info,omitempty"`
840	CryptoFrameInfo *CryptoFrameInfo `protobuf:"bytes,7,opt,name=crypto_frame_info,json=cryptoFrameInfo" json:"crypto_frame_info,omitempty"`
841}
842
843func (x *Frame) Reset() {
844	*x = Frame{}
845	if protoimpl.UnsafeEnabled {
846		mi := &file_quic_trace_proto_msgTypes[7]
847		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
848		ms.StoreMessageInfo(mi)
849	}
850}
851
852func (x *Frame) String() string {
853	return protoimpl.X.MessageStringOf(x)
854}
855
856func (*Frame) ProtoMessage() {}
857
858func (x *Frame) ProtoReflect() protoreflect.Message {
859	mi := &file_quic_trace_proto_msgTypes[7]
860	if protoimpl.UnsafeEnabled && x != nil {
861		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
862		if ms.LoadMessageInfo() == nil {
863			ms.StoreMessageInfo(mi)
864		}
865		return ms
866	}
867	return mi.MessageOf(x)
868}
869
870// Deprecated: Use Frame.ProtoReflect.Descriptor instead.
871func (*Frame) Descriptor() ([]byte, []int) {
872	return file_quic_trace_proto_rawDescGZIP(), []int{7}
873}
874
875func (x *Frame) GetFrameType() FrameType {
876	if x != nil && x.FrameType != nil {
877		return *x.FrameType
878	}
879	return FrameType_UNKNOWN_FRAME
880}
881
882func (x *Frame) GetStreamFrameInfo() *StreamFrameInfo {
883	if x != nil {
884		return x.StreamFrameInfo
885	}
886	return nil
887}
888
889func (x *Frame) GetAckInfo() *AckInfo {
890	if x != nil {
891		return x.AckInfo
892	}
893	return nil
894}
895
896func (x *Frame) GetResetStreamInfo() *ResetStreamInfo {
897	if x != nil {
898		return x.ResetStreamInfo
899	}
900	return nil
901}
902
903func (x *Frame) GetCloseInfo() *CloseInfo {
904	if x != nil {
905		return x.CloseInfo
906	}
907	return nil
908}
909
910func (x *Frame) GetFlowControlInfo() *FlowControlInfo {
911	if x != nil {
912		return x.FlowControlInfo
913	}
914	return nil
915}
916
917func (x *Frame) GetCryptoFrameInfo() *CryptoFrameInfo {
918	if x != nil {
919		return x.CryptoFrameInfo
920	}
921	return nil
922}
923
924// Metadata that represents transport stack's understanding of the current state
925// of the transport channel.
926type TransportState struct {
927	state         protoimpl.MessageState
928	sizeCache     protoimpl.SizeCache
929	unknownFields protoimpl.UnknownFields
930
931	MinRttUs *uint64 `protobuf:"varint,1,opt,name=min_rtt_us,json=minRttUs" json:"min_rtt_us,omitempty"`
932	// Smoothed RTT, usually computed using EWMA.
933	SmoothedRttUs *uint64 `protobuf:"varint,2,opt,name=smoothed_rtt_us,json=smoothedRttUs" json:"smoothed_rtt_us,omitempty"`
934	// The latest RTT measureent available.
935	LastRttUs     *uint64 `protobuf:"varint,3,opt,name=last_rtt_us,json=lastRttUs" json:"last_rtt_us,omitempty"`
936	InFlightBytes *uint64 `protobuf:"varint,4,opt,name=in_flight_bytes,json=inFlightBytes" json:"in_flight_bytes,omitempty"`
937	CwndBytes     *uint64 `protobuf:"varint,5,opt,name=cwnd_bytes,json=cwndBytes" json:"cwnd_bytes,omitempty"`
938	// Pacing rate, in bits per second.
939	PacingRateBps *uint64 `protobuf:"varint,6,opt,name=pacing_rate_bps,json=pacingRateBps" json:"pacing_rate_bps,omitempty"`
940	// Any arbitrary information about congestion control state that is not
941	// representable via parameters above.
942	CongestionControlState *string `protobuf:"bytes,7,opt,name=congestion_control_state,json=congestionControlState" json:"congestion_control_state,omitempty"`
943}
944
945func (x *TransportState) Reset() {
946	*x = TransportState{}
947	if protoimpl.UnsafeEnabled {
948		mi := &file_quic_trace_proto_msgTypes[8]
949		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
950		ms.StoreMessageInfo(mi)
951	}
952}
953
954func (x *TransportState) String() string {
955	return protoimpl.X.MessageStringOf(x)
956}
957
958func (*TransportState) ProtoMessage() {}
959
960func (x *TransportState) ProtoReflect() protoreflect.Message {
961	mi := &file_quic_trace_proto_msgTypes[8]
962	if protoimpl.UnsafeEnabled && x != nil {
963		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
964		if ms.LoadMessageInfo() == nil {
965			ms.StoreMessageInfo(mi)
966		}
967		return ms
968	}
969	return mi.MessageOf(x)
970}
971
972// Deprecated: Use TransportState.ProtoReflect.Descriptor instead.
973func (*TransportState) Descriptor() ([]byte, []int) {
974	return file_quic_trace_proto_rawDescGZIP(), []int{8}
975}
976
977func (x *TransportState) GetMinRttUs() uint64 {
978	if x != nil && x.MinRttUs != nil {
979		return *x.MinRttUs
980	}
981	return 0
982}
983
984func (x *TransportState) GetSmoothedRttUs() uint64 {
985	if x != nil && x.SmoothedRttUs != nil {
986		return *x.SmoothedRttUs
987	}
988	return 0
989}
990
991func (x *TransportState) GetLastRttUs() uint64 {
992	if x != nil && x.LastRttUs != nil {
993		return *x.LastRttUs
994	}
995	return 0
996}
997
998func (x *TransportState) GetInFlightBytes() uint64 {
999	if x != nil && x.InFlightBytes != nil {
1000		return *x.InFlightBytes
1001	}
1002	return 0
1003}
1004
1005func (x *TransportState) GetCwndBytes() uint64 {
1006	if x != nil && x.CwndBytes != nil {
1007		return *x.CwndBytes
1008	}
1009	return 0
1010}
1011
1012func (x *TransportState) GetPacingRateBps() uint64 {
1013	if x != nil && x.PacingRateBps != nil {
1014		return *x.PacingRateBps
1015	}
1016	return 0
1017}
1018
1019func (x *TransportState) GetCongestionControlState() string {
1020	if x != nil && x.CongestionControlState != nil {
1021		return *x.CongestionControlState
1022	}
1023	return ""
1024}
1025
1026// Documents external network parameters supplied to the sender.  Typically not
1027// all of those would be supplied (e.g. if bandwidth and RTT are supplied, you
1028// can infer the suggested CWND), but there are no restrictions on which fields
1029// may or may not be set.
1030type ExternalNetworkParameters struct {
1031	state         protoimpl.MessageState
1032	sizeCache     protoimpl.SizeCache
1033	unknownFields protoimpl.UnknownFields
1034
1035	BandwidthBps *uint64 `protobuf:"varint,1,opt,name=bandwidth_bps,json=bandwidthBps" json:"bandwidth_bps,omitempty"` // in bits per second
1036	RttUs        *uint64 `protobuf:"varint,2,opt,name=rtt_us,json=rttUs" json:"rtt_us,omitempty"`
1037	CwndBytes    *uint64 `protobuf:"varint,3,opt,name=cwnd_bytes,json=cwndBytes" json:"cwnd_bytes,omitempty"`
1038}
1039
1040func (x *ExternalNetworkParameters) Reset() {
1041	*x = ExternalNetworkParameters{}
1042	if protoimpl.UnsafeEnabled {
1043		mi := &file_quic_trace_proto_msgTypes[9]
1044		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1045		ms.StoreMessageInfo(mi)
1046	}
1047}
1048
1049func (x *ExternalNetworkParameters) String() string {
1050	return protoimpl.X.MessageStringOf(x)
1051}
1052
1053func (*ExternalNetworkParameters) ProtoMessage() {}
1054
1055func (x *ExternalNetworkParameters) ProtoReflect() protoreflect.Message {
1056	mi := &file_quic_trace_proto_msgTypes[9]
1057	if protoimpl.UnsafeEnabled && x != nil {
1058		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1059		if ms.LoadMessageInfo() == nil {
1060			ms.StoreMessageInfo(mi)
1061		}
1062		return ms
1063	}
1064	return mi.MessageOf(x)
1065}
1066
1067// Deprecated: Use ExternalNetworkParameters.ProtoReflect.Descriptor instead.
1068func (*ExternalNetworkParameters) Descriptor() ([]byte, []int) {
1069	return file_quic_trace_proto_rawDescGZIP(), []int{9}
1070}
1071
1072func (x *ExternalNetworkParameters) GetBandwidthBps() uint64 {
1073	if x != nil && x.BandwidthBps != nil {
1074		return *x.BandwidthBps
1075	}
1076	return 0
1077}
1078
1079func (x *ExternalNetworkParameters) GetRttUs() uint64 {
1080	if x != nil && x.RttUs != nil {
1081		return *x.RttUs
1082	}
1083	return 0
1084}
1085
1086func (x *ExternalNetworkParameters) GetCwndBytes() uint64 {
1087	if x != nil && x.CwndBytes != nil {
1088		return *x.CwndBytes
1089	}
1090	return 0
1091}
1092
1093// An event that has occurred over duration of the connection.
1094type Event struct {
1095	state         protoimpl.MessageState
1096	sizeCache     protoimpl.SizeCache
1097	unknownFields protoimpl.UnknownFields
1098
1099	TimeUs          *uint64          `protobuf:"varint,1,opt,name=time_us,json=timeUs" json:"time_us,omitempty"`
1100	EventType       *EventType       `protobuf:"varint,2,opt,name=event_type,json=eventType,enum=pb.EventType" json:"event_type,omitempty"`
1101	PacketNumber    *uint64          `protobuf:"varint,3,opt,name=packet_number,json=packetNumber" json:"packet_number,omitempty"`
1102	Frames          []*Frame         `protobuf:"bytes,4,rep,name=frames" json:"frames,omitempty"`
1103	PacketSize      *uint64          `protobuf:"varint,5,opt,name=packet_size,json=packetSize" json:"packet_size,omitempty"`
1104	EncryptionLevel *EncryptionLevel `protobuf:"varint,6,opt,name=encryption_level,json=encryptionLevel,enum=pb.EncryptionLevel" json:"encryption_level,omitempty"`
1105	// State of the transport stack after the event has happened.
1106	TransportState *TransportState `protobuf:"bytes,7,opt,name=transport_state,json=transportState" json:"transport_state,omitempty"`
1107	// For event_type = EXTERNAL_PARAMETERS, record parameters specified.
1108	ExternalNetworkParameters *ExternalNetworkParameters `protobuf:"bytes,8,opt,name=external_network_parameters,json=externalNetworkParameters" json:"external_network_parameters,omitempty"`
1109	// For sent packets, indicate if there is a special reason for why the packet
1110	// in question was transmitted.
1111	TransmissionReason *TransmissionReason `protobuf:"varint,9,opt,name=transmission_reason,json=transmissionReason,enum=pb.TransmissionReason,def=0" json:"transmission_reason,omitempty"`
1112}
1113
1114// Default values for Event fields.
1115const (
1116	Default_Event_TransmissionReason = TransmissionReason_NORMAL_TRANSMISSION
1117)
1118
1119func (x *Event) Reset() {
1120	*x = Event{}
1121	if protoimpl.UnsafeEnabled {
1122		mi := &file_quic_trace_proto_msgTypes[10]
1123		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1124		ms.StoreMessageInfo(mi)
1125	}
1126}
1127
1128func (x *Event) String() string {
1129	return protoimpl.X.MessageStringOf(x)
1130}
1131
1132func (*Event) ProtoMessage() {}
1133
1134func (x *Event) ProtoReflect() protoreflect.Message {
1135	mi := &file_quic_trace_proto_msgTypes[10]
1136	if protoimpl.UnsafeEnabled && x != nil {
1137		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1138		if ms.LoadMessageInfo() == nil {
1139			ms.StoreMessageInfo(mi)
1140		}
1141		return ms
1142	}
1143	return mi.MessageOf(x)
1144}
1145
1146// Deprecated: Use Event.ProtoReflect.Descriptor instead.
1147func (*Event) Descriptor() ([]byte, []int) {
1148	return file_quic_trace_proto_rawDescGZIP(), []int{10}
1149}
1150
1151func (x *Event) GetTimeUs() uint64 {
1152	if x != nil && x.TimeUs != nil {
1153		return *x.TimeUs
1154	}
1155	return 0
1156}
1157
1158func (x *Event) GetEventType() EventType {
1159	if x != nil && x.EventType != nil {
1160		return *x.EventType
1161	}
1162	return EventType_UNKNOWN_EVENT
1163}
1164
1165func (x *Event) GetPacketNumber() uint64 {
1166	if x != nil && x.PacketNumber != nil {
1167		return *x.PacketNumber
1168	}
1169	return 0
1170}
1171
1172func (x *Event) GetFrames() []*Frame {
1173	if x != nil {
1174		return x.Frames
1175	}
1176	return nil
1177}
1178
1179func (x *Event) GetPacketSize() uint64 {
1180	if x != nil && x.PacketSize != nil {
1181		return *x.PacketSize
1182	}
1183	return 0
1184}
1185
1186func (x *Event) GetEncryptionLevel() EncryptionLevel {
1187	if x != nil && x.EncryptionLevel != nil {
1188		return *x.EncryptionLevel
1189	}
1190	return EncryptionLevel_ENCRYPTION_UNKNOWN
1191}
1192
1193func (x *Event) GetTransportState() *TransportState {
1194	if x != nil {
1195		return x.TransportState
1196	}
1197	return nil
1198}
1199
1200func (x *Event) GetExternalNetworkParameters() *ExternalNetworkParameters {
1201	if x != nil {
1202		return x.ExternalNetworkParameters
1203	}
1204	return nil
1205}
1206
1207func (x *Event) GetTransmissionReason() TransmissionReason {
1208	if x != nil && x.TransmissionReason != nil {
1209		return *x.TransmissionReason
1210	}
1211	return Default_Event_TransmissionReason
1212}
1213
1214type Trace struct {
1215	state         protoimpl.MessageState
1216	sizeCache     protoimpl.SizeCache
1217	unknownFields protoimpl.UnknownFields
1218
1219	// QUIC version tag, as represented on wire.  Should be always 4 bytes long.
1220	ProtocolVersion []byte `protobuf:"bytes,1,opt,name=protocol_version,json=protocolVersion" json:"protocol_version,omitempty"`
1221	// Source and destination connection ID.  If multiple connection IDs are used,
1222	// record the first one used with short-form header.
1223	SourceConnectionId      []byte   `protobuf:"bytes,2,opt,name=source_connection_id,json=sourceConnectionId" json:"source_connection_id,omitempty"`
1224	DestinationConnectionId []byte   `protobuf:"bytes,3,opt,name=destination_connection_id,json=destinationConnectionId" json:"destination_connection_id,omitempty"`
1225	Events                  []*Event `protobuf:"bytes,4,rep,name=events" json:"events,omitempty"`
1226}
1227
1228func (x *Trace) Reset() {
1229	*x = Trace{}
1230	if protoimpl.UnsafeEnabled {
1231		mi := &file_quic_trace_proto_msgTypes[11]
1232		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1233		ms.StoreMessageInfo(mi)
1234	}
1235}
1236
1237func (x *Trace) String() string {
1238	return protoimpl.X.MessageStringOf(x)
1239}
1240
1241func (*Trace) ProtoMessage() {}
1242
1243func (x *Trace) ProtoReflect() protoreflect.Message {
1244	mi := &file_quic_trace_proto_msgTypes[11]
1245	if protoimpl.UnsafeEnabled && x != nil {
1246		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1247		if ms.LoadMessageInfo() == nil {
1248			ms.StoreMessageInfo(mi)
1249		}
1250		return ms
1251	}
1252	return mi.MessageOf(x)
1253}
1254
1255// Deprecated: Use Trace.ProtoReflect.Descriptor instead.
1256func (*Trace) Descriptor() ([]byte, []int) {
1257	return file_quic_trace_proto_rawDescGZIP(), []int{11}
1258}
1259
1260func (x *Trace) GetProtocolVersion() []byte {
1261	if x != nil {
1262		return x.ProtocolVersion
1263	}
1264	return nil
1265}
1266
1267func (x *Trace) GetSourceConnectionId() []byte {
1268	if x != nil {
1269		return x.SourceConnectionId
1270	}
1271	return nil
1272}
1273
1274func (x *Trace) GetDestinationConnectionId() []byte {
1275	if x != nil {
1276		return x.DestinationConnectionId
1277	}
1278	return nil
1279}
1280
1281func (x *Trace) GetEvents() []*Event {
1282	if x != nil {
1283		return x.Events
1284	}
1285	return nil
1286}
1287
1288var File_quic_trace_proto protoreflect.FileDescriptor
1289
1290var file_quic_trace_proto_rawDesc = []byte{
1291	0x0a, 0x10, 0x71, 0x75, 0x69, 0x63, 0x2d, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
1292	0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0x70, 0x0a, 0x0f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
1293	0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x72,
1294	0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x74,
1295	0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x69, 0x6e, 0x18, 0x02, 0x20,
1296	0x01, 0x28, 0x08, 0x52, 0x03, 0x66, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67,
1297	0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68,
1298	0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
1299	0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x41, 0x0a, 0x0f, 0x43, 0x72, 0x79, 0x70,
1300	0x74, 0x6f, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x6c,
1301	0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6c, 0x65, 0x6e,
1302	0x67, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20,
1303	0x01, 0x28, 0x04, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x4e, 0x0a, 0x08, 0x41,
1304	0x63, 0x6b, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74,
1305	0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x66,
1306	0x69, 0x72, 0x73, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61,
1307	0x73, 0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
1308	0x0a, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x5e, 0x0a, 0x07, 0x41,
1309	0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x0a, 0x0d, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f,
1310	0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
1311	0x70, 0x62, 0x2e, 0x41, 0x63, 0x6b, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x0c, 0x61, 0x63, 0x6b,
1312	0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x63, 0x6b,
1313	0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
1314	0x0a, 0x61, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x55, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x0f,
1315	0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12,
1316	0x1b, 0x0a, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
1317	0x28, 0x04, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16,
1318	0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72, 0x6f,
1319	0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x61, 0x70,
1320	0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f,
1321	0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x73,
1322	0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4f,
1323	0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xba, 0x01, 0x0a, 0x09, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x49,
1324	0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64,
1325	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f,
1326	0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x70, 0x68, 0x72,
1327	0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x61, 0x73, 0x6f,
1328	0x6e, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x0a, 0x63, 0x6c, 0x6f, 0x73, 0x65,
1329	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x70, 0x62,
1330	0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x73,
1331	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f,
1332	0x72, 0x74, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74,
1333	0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x74, 0x72, 0x61, 0x6e, 0x73,
1334	0x70, 0x6f, 0x72, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x79,
1335	0x70, 0x65, 0x22, 0x49, 0x0a, 0x0f, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
1336	0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x61, 0x74,
1337	0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x44, 0x61, 0x74, 0x61,
1338	0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
1339	0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x8f, 0x03,
1340	0x0a, 0x05, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65,
1341	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x70, 0x62,
1342	0x2e, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d,
1343	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x0a, 0x11, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f,
1344	0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
1345	0x32, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x46, 0x72, 0x61, 0x6d,
1346	0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x46, 0x72, 0x61,
1347	0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, 0x08, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e,
1348	0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63,
1349	0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f,
1350	0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69,
1351	0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x52,
1352	0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f,
1353	0x72, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12,
1354	0x2c, 0x0a, 0x0a, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20,
1355	0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x49, 0x6e,
1356	0x66, 0x6f, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f, 0x0a,
1357	0x11, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x69, 0x6e,
1358	0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x6c,
1359	0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x66,
1360	0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f,
1361	0x0a, 0x11, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69,
1362	0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x43,
1363	0x72, 0x79, 0x70, 0x74, 0x6f, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f,
1364	0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22,
1365	0x9f, 0x02, 0x0a, 0x0e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61,
1366	0x74, 0x65, 0x12, 0x1c, 0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x74, 0x74, 0x5f, 0x75, 0x73,
1367	0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x52, 0x74, 0x74, 0x55, 0x73,
1368	0x12, 0x26, 0x0a, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x5f, 0x72, 0x74, 0x74,
1369	0x5f, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x73, 0x6d, 0x6f, 0x6f, 0x74,
1370	0x68, 0x65, 0x64, 0x52, 0x74, 0x74, 0x55, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74,
1371	0x5f, 0x72, 0x74, 0x74, 0x5f, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6c,
1372	0x61, 0x73, 0x74, 0x52, 0x74, 0x74, 0x55, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x6e, 0x5f, 0x66,
1373	0x6c, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
1374	0x04, 0x52, 0x0d, 0x69, 0x6e, 0x46, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73,
1375	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x77, 0x6e, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05,
1376	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x77, 0x6e, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12,
1377	0x26, 0x0a, 0x0f, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62,
1378	0x70, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67,
1379	0x52, 0x61, 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x63, 0x6f, 0x6e, 0x67, 0x65,
1380	0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x73, 0x74,
1381	0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x63, 0x6f, 0x6e, 0x67, 0x65,
1382	0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74,
1383	0x65, 0x22, 0x76, 0x0a, 0x19, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x65, 0x74,
1384	0x77, 0x6f, 0x72, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x23,
1385	0x0a, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x62, 0x70, 0x73, 0x18,
1386	0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68,
1387	0x42, 0x70, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x74, 0x74, 0x5f, 0x75, 0x73, 0x18, 0x02, 0x20,
1388	0x01, 0x28, 0x04, 0x52, 0x05, 0x72, 0x74, 0x74, 0x55, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x77,
1389	0x6e, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
1390	0x63, 0x77, 0x6e, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xf1, 0x03, 0x0a, 0x05, 0x45, 0x76,
1391	0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x75, 0x73, 0x18, 0x01,
1392	0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x69, 0x6d, 0x65, 0x55, 0x73, 0x12, 0x2c, 0x0a, 0x0a,
1393	0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
1394	0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52,
1395	0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61,
1396	0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
1397	0x04, 0x52, 0x0c, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
1398	0x21, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
1399	0x09, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d,
1400	0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a,
1401	0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53,
1402	0x69, 0x7a, 0x65, 0x12, 0x3e, 0x0a, 0x10, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,
1403	0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e,
1404	0x70, 0x62, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76,
1405	0x65, 0x6c, 0x52, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65,
1406	0x76, 0x65, 0x6c, 0x12, 0x3b, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74,
1407	0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70,
1408	0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65,
1409	0x52, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65,
1410	0x12, 0x5d, 0x0a, 0x1b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74,
1411	0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18,
1412	0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72,
1413	0x6e, 0x61, 0x6c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
1414	0x74, 0x65, 0x72, 0x73, 0x52, 0x19, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x65,
1415	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12,
1416	0x5c, 0x0a, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
1417	0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70,
1418	0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65,
1419	0x61, 0x73, 0x6f, 0x6e, 0x3a, 0x13, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x54, 0x52, 0x41,
1420	0x4e, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x52, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73,
1421	0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0xc3, 0x01,
1422	0x0a, 0x05, 0x54, 0x72, 0x61, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1423	0x63, 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
1424	0x0c, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69,
1425	0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
1426	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
1427	0x52, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
1428	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x19, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
1429	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
1430	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x17, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
1431	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64,
1432	0x12, 0x21, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
1433	0x32, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65,
1434	0x6e, 0x74, 0x73, 0x2a, 0xc2, 0x01, 0x0a, 0x09, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x79, 0x70,
1435	0x65, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x52, 0x41,
1436	0x4d, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x01,
1437	0x12, 0x07, 0x0a, 0x03, 0x41, 0x43, 0x4b, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x45, 0x53,
1438	0x45, 0x54, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x43,
1439	0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10,
1440	0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x10, 0x05, 0x12,
1441	0x13, 0x0a, 0x0f, 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x44, 0x41,
1442	0x54, 0x41, 0x10, 0x06, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x0b,
1443	0x0a, 0x07, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x53,
1444	0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x09, 0x12,
1445	0x0b, 0x0a, 0x07, 0x50, 0x41, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06,
1446	0x43, 0x52, 0x59, 0x50, 0x54, 0x4f, 0x10, 0x0b, 0x2a, 0x83, 0x01, 0x0a, 0x09, 0x43, 0x6c, 0x6f,
1447	0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45,
1448	0x5f, 0x51, 0x55, 0x49, 0x43, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
1449	0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x49, 0x45, 0x54, 0x46,
1450	0x5f, 0x51, 0x55, 0x49, 0x43, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f,
1451	0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45,
1452	0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x49, 0x45, 0x54, 0x46, 0x5f, 0x51, 0x55, 0x49, 0x43, 0x5f,
1453	0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x4e,
1454	0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0x02, 0x2a, 0x85,
1455	0x01, 0x0a, 0x0f, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76,
1456	0x65, 0x6c, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e,
1457	0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x4e,
1458	0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c,
1459	0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e,
1460	0x5f, 0x30, 0x52, 0x54, 0x54, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x43, 0x52, 0x59,
1461	0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x31, 0x52, 0x54, 0x54, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14,
1462	0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x48, 0x41, 0x4e, 0x44, 0x53,
1463	0x48, 0x41, 0x4b, 0x45, 0x10, 0x04, 0x2a, 0x87, 0x01, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74,
1464	0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f,
1465	0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x41, 0x43, 0x4b, 0x45,
1466	0x54, 0x5f, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x41, 0x43, 0x4b,
1467	0x45, 0x54, 0x5f, 0x52, 0x45, 0x43, 0x45, 0x49, 0x56, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0f, 0x0a,
1468	0x0b, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x4c, 0x4f, 0x53, 0x54, 0x10, 0x03, 0x12, 0x17,
1469	0x0a, 0x13, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x49,
1470	0x4d, 0x49, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x58, 0x54, 0x45, 0x52,
1471	0x4e, 0x41, 0x4c, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x53, 0x10, 0x05,
1472	0x2a, 0x72, 0x0a, 0x12, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
1473	0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c,
1474	0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x00, 0x12,
1475	0x13, 0x0a, 0x0f, 0x54, 0x41, 0x49, 0x4c, 0x5f, 0x4c, 0x4f, 0x53, 0x53, 0x5f, 0x50, 0x52, 0x4f,
1476	0x42, 0x45, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x54, 0x4f, 0x5f, 0x54, 0x52, 0x41, 0x4e,
1477	0x53, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52,
1478	0x4f, 0x42, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x49,
1479	0x4f, 0x4e, 0x10, 0x03, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
1480}
1481
1482var (
1483	file_quic_trace_proto_rawDescOnce sync.Once
1484	file_quic_trace_proto_rawDescData = file_quic_trace_proto_rawDesc
1485)
1486
1487func file_quic_trace_proto_rawDescGZIP() []byte {
1488	file_quic_trace_proto_rawDescOnce.Do(func() {
1489		file_quic_trace_proto_rawDescData = protoimpl.X.CompressGZIP(file_quic_trace_proto_rawDescData)
1490	})
1491	return file_quic_trace_proto_rawDescData
1492}
1493
1494var file_quic_trace_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
1495var file_quic_trace_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
1496var file_quic_trace_proto_goTypes = []interface{}{
1497	(FrameType)(0),                    // 0: pb.FrameType
1498	(CloseType)(0),                    // 1: pb.CloseType
1499	(EncryptionLevel)(0),              // 2: pb.EncryptionLevel
1500	(EventType)(0),                    // 3: pb.EventType
1501	(TransmissionReason)(0),           // 4: pb.TransmissionReason
1502	(*StreamFrameInfo)(nil),           // 5: pb.StreamFrameInfo
1503	(*CryptoFrameInfo)(nil),           // 6: pb.CryptoFrameInfo
1504	(*AckBlock)(nil),                  // 7: pb.AckBlock
1505	(*AckInfo)(nil),                   // 8: pb.AckInfo
1506	(*ResetStreamInfo)(nil),           // 9: pb.ResetStreamInfo
1507	(*CloseInfo)(nil),                 // 10: pb.CloseInfo
1508	(*FlowControlInfo)(nil),           // 11: pb.FlowControlInfo
1509	(*Frame)(nil),                     // 12: pb.Frame
1510	(*TransportState)(nil),            // 13: pb.TransportState
1511	(*ExternalNetworkParameters)(nil), // 14: pb.ExternalNetworkParameters
1512	(*Event)(nil),                     // 15: pb.Event
1513	(*Trace)(nil),                     // 16: pb.Trace
1514}
1515var file_quic_trace_proto_depIdxs = []int32{
1516	7,  // 0: pb.AckInfo.acked_packets:type_name -> pb.AckBlock
1517	1,  // 1: pb.CloseInfo.close_type:type_name -> pb.CloseType
1518	0,  // 2: pb.Frame.frame_type:type_name -> pb.FrameType
1519	5,  // 3: pb.Frame.stream_frame_info:type_name -> pb.StreamFrameInfo
1520	8,  // 4: pb.Frame.ack_info:type_name -> pb.AckInfo
1521	9,  // 5: pb.Frame.reset_stream_info:type_name -> pb.ResetStreamInfo
1522	10, // 6: pb.Frame.close_info:type_name -> pb.CloseInfo
1523	11, // 7: pb.Frame.flow_control_info:type_name -> pb.FlowControlInfo
1524	6,  // 8: pb.Frame.crypto_frame_info:type_name -> pb.CryptoFrameInfo
1525	3,  // 9: pb.Event.event_type:type_name -> pb.EventType
1526	12, // 10: pb.Event.frames:type_name -> pb.Frame
1527	2,  // 11: pb.Event.encryption_level:type_name -> pb.EncryptionLevel
1528	13, // 12: pb.Event.transport_state:type_name -> pb.TransportState
1529	14, // 13: pb.Event.external_network_parameters:type_name -> pb.ExternalNetworkParameters
1530	4,  // 14: pb.Event.transmission_reason:type_name -> pb.TransmissionReason
1531	15, // 15: pb.Trace.events:type_name -> pb.Event
1532	16, // [16:16] is the sub-list for method output_type
1533	16, // [16:16] is the sub-list for method input_type
1534	16, // [16:16] is the sub-list for extension type_name
1535	16, // [16:16] is the sub-list for extension extendee
1536	0,  // [0:16] is the sub-list for field type_name
1537}
1538
1539func init() { file_quic_trace_proto_init() }
1540func file_quic_trace_proto_init() {
1541	if File_quic_trace_proto != nil {
1542		return
1543	}
1544	if !protoimpl.UnsafeEnabled {
1545		file_quic_trace_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1546			switch v := v.(*StreamFrameInfo); i {
1547			case 0:
1548				return &v.state
1549			case 1:
1550				return &v.sizeCache
1551			case 2:
1552				return &v.unknownFields
1553			default:
1554				return nil
1555			}
1556		}
1557		file_quic_trace_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1558			switch v := v.(*CryptoFrameInfo); i {
1559			case 0:
1560				return &v.state
1561			case 1:
1562				return &v.sizeCache
1563			case 2:
1564				return &v.unknownFields
1565			default:
1566				return nil
1567			}
1568		}
1569		file_quic_trace_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1570			switch v := v.(*AckBlock); i {
1571			case 0:
1572				return &v.state
1573			case 1:
1574				return &v.sizeCache
1575			case 2:
1576				return &v.unknownFields
1577			default:
1578				return nil
1579			}
1580		}
1581		file_quic_trace_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1582			switch v := v.(*AckInfo); i {
1583			case 0:
1584				return &v.state
1585			case 1:
1586				return &v.sizeCache
1587			case 2:
1588				return &v.unknownFields
1589			default:
1590				return nil
1591			}
1592		}
1593		file_quic_trace_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1594			switch v := v.(*ResetStreamInfo); i {
1595			case 0:
1596				return &v.state
1597			case 1:
1598				return &v.sizeCache
1599			case 2:
1600				return &v.unknownFields
1601			default:
1602				return nil
1603			}
1604		}
1605		file_quic_trace_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1606			switch v := v.(*CloseInfo); i {
1607			case 0:
1608				return &v.state
1609			case 1:
1610				return &v.sizeCache
1611			case 2:
1612				return &v.unknownFields
1613			default:
1614				return nil
1615			}
1616		}
1617		file_quic_trace_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1618			switch v := v.(*FlowControlInfo); i {
1619			case 0:
1620				return &v.state
1621			case 1:
1622				return &v.sizeCache
1623			case 2:
1624				return &v.unknownFields
1625			default:
1626				return nil
1627			}
1628		}
1629		file_quic_trace_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1630			switch v := v.(*Frame); i {
1631			case 0:
1632				return &v.state
1633			case 1:
1634				return &v.sizeCache
1635			case 2:
1636				return &v.unknownFields
1637			default:
1638				return nil
1639			}
1640		}
1641		file_quic_trace_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1642			switch v := v.(*TransportState); i {
1643			case 0:
1644				return &v.state
1645			case 1:
1646				return &v.sizeCache
1647			case 2:
1648				return &v.unknownFields
1649			default:
1650				return nil
1651			}
1652		}
1653		file_quic_trace_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1654			switch v := v.(*ExternalNetworkParameters); i {
1655			case 0:
1656				return &v.state
1657			case 1:
1658				return &v.sizeCache
1659			case 2:
1660				return &v.unknownFields
1661			default:
1662				return nil
1663			}
1664		}
1665		file_quic_trace_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
1666			switch v := v.(*Event); i {
1667			case 0:
1668				return &v.state
1669			case 1:
1670				return &v.sizeCache
1671			case 2:
1672				return &v.unknownFields
1673			default:
1674				return nil
1675			}
1676		}
1677		file_quic_trace_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
1678			switch v := v.(*Trace); i {
1679			case 0:
1680				return &v.state
1681			case 1:
1682				return &v.sizeCache
1683			case 2:
1684				return &v.unknownFields
1685			default:
1686				return nil
1687			}
1688		}
1689	}
1690	type x struct{}
1691	out := protoimpl.TypeBuilder{
1692		File: protoimpl.DescBuilder{
1693			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1694			RawDescriptor: file_quic_trace_proto_rawDesc,
1695			NumEnums:      5,
1696			NumMessages:   12,
1697			NumExtensions: 0,
1698			NumServices:   0,
1699		},
1700		GoTypes:           file_quic_trace_proto_goTypes,
1701		DependencyIndexes: file_quic_trace_proto_depIdxs,
1702		EnumInfos:         file_quic_trace_proto_enumTypes,
1703		MessageInfos:      file_quic_trace_proto_msgTypes,
1704	}.Build()
1705	File_quic_trace_proto = out.File
1706	file_quic_trace_proto_rawDesc = nil
1707	file_quic_trace_proto_goTypes = nil
1708	file_quic_trace_proto_depIdxs = nil
1709}
1710