Documentation ¶
Index ¶
- Variables
- type CaptureRecordUnion
- func (*CaptureRecordUnion) Descriptor() ([]byte, []int)
- func (m *CaptureRecordUnion) GetBgpUpdateRecord() *bgp.BGPUpdate
- func (m *CaptureRecordUnion) GetCaptureSpec() *common.CaptureSpec
- func (m *CaptureRecordUnion) GetDnsRecord() *DNSRecord
- func (m *CaptureRecordUnion) GetFlowRecord() *FlowRecord
- func (m *CaptureRecordUnion) GetProbeRecord() *proddle.Probe
- func (m *CaptureRecordUnion) GetProbeResultRecord() *proddle.ProbeResult
- func (m *CaptureRecordUnion) GetRecordType() CaptureRecordUnion_RecordType
- func (m *CaptureRecordUnion) GetTimestampSeconds() int64
- func (*CaptureRecordUnion) ProtoMessage()
- func (m *CaptureRecordUnion) Reset()
- func (m *CaptureRecordUnion) String() string
- func (m *CaptureRecordUnion) XXX_DiscardUnknown()
- func (m *CaptureRecordUnion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *CaptureRecordUnion) XXX_Merge(src proto.Message)
- func (m *CaptureRecordUnion) XXX_Size() int
- func (m *CaptureRecordUnion) XXX_Unmarshal(b []byte) error
- type CaptureRecordUnion_RecordType
- type DNSRecord
- func (*DNSRecord) Descriptor() ([]byte, []int)
- func (m *DNSRecord) GetCname() []string
- func (m *DNSRecord) GetDnsServer() *common.IPAddressWrapper
- func (m *DNSRecord) GetDnssec() bool
- func (m *DNSRecord) GetIps() []*common.IPAddressWrapper
- func (m *DNSRecord) GetQuery() string
- func (m *DNSRecord) GetRequestingHost() *common.IPAddressWrapper
- func (*DNSRecord) ProtoMessage()
- func (m *DNSRecord) Reset()
- func (m *DNSRecord) String() string
- func (m *DNSRecord) XXX_DiscardUnknown()
- func (m *DNSRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *DNSRecord) XXX_Merge(src proto.Message)
- func (m *DNSRecord) XXX_Size() int
- func (m *DNSRecord) XXX_Unmarshal(b []byte) error
- type FlowRecord
- func (*FlowRecord) Descriptor() ([]byte, []int)
- func (m *FlowRecord) GetBucketDurationUs() int64
- func (m *FlowRecord) GetCaptureSpecId() int32
- func (m *FlowRecord) GetDestination() *IPFlow
- func (m *FlowRecord) GetDurationUs() int64
- func (m *FlowRecord) GetL2Proto() FlowRecord_L2Proto
- func (m *FlowRecord) GetL3Proto() int32
- func (m *FlowRecord) GetL4Proto() int32
- func (m *FlowRecord) GetNumberOfAggregatedFlows() int64
- func (m *FlowRecord) GetSource() *IPFlow
- func (m *FlowRecord) GetTimestampNs() uint32
- func (m *FlowRecord) GetTimestampSeconds() int64
- func (*FlowRecord) ProtoMessage()
- func (m *FlowRecord) Reset()
- func (m *FlowRecord) String() string
- func (m *FlowRecord) XXX_DiscardUnknown()
- func (m *FlowRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *FlowRecord) XXX_Merge(src proto.Message)
- func (m *FlowRecord) XXX_Size() int
- func (m *FlowRecord) XXX_Unmarshal(b []byte) error
- type FlowRecord_L2Proto
- type IPFlow
- func (*IPFlow) Descriptor() ([]byte, []int)
- func (m *IPFlow) GetAddress() *common.IPAddressWrapper
- func (m *IPFlow) GetApplicationBytes() int64
- func (m *IPFlow) GetBytes() int64
- func (m *IPFlow) GetCode() int32
- func (m *IPFlow) GetDestinationMac() [][]byte
- func (m *IPFlow) GetGreKey() uint32
- func (m *IPFlow) GetId() int32
- func (m *IPFlow) GetInnerAddress() *common.IPAddressWrapper
- func (m *IPFlow) GetInnerPort() *common.IPAddressWrapper
- func (m *IPFlow) GetInnerProtocol() *common.IPAddressWrapper
- func (m *IPFlow) GetLoss() float32
- func (m *IPFlow) GetMask() *common.IPAddressWrapper
- func (m *IPFlow) GetPacketDecor() []*PacketData
- func (m *IPFlow) GetPackets() int64
- func (m *IPFlow) GetPhysicalPortNumber() []int32
- func (m *IPFlow) GetPort() int32
- func (m *IPFlow) GetRetransmissions() int64
- func (m *IPFlow) GetSourceMac() [][]byte
- func (m *IPFlow) GetTos() int32
- func (m *IPFlow) GetTtl() int32
- func (m *IPFlow) GetType() int32
- func (m *IPFlow) GetVlanId() int32
- func (*IPFlow) ProtoMessage()
- func (m *IPFlow) Reset()
- func (m *IPFlow) String() string
- func (m *IPFlow) XXX_DiscardUnknown()
- func (m *IPFlow) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *IPFlow) XXX_Merge(src proto.Message)
- func (m *IPFlow) XXX_Size() int
- func (m *IPFlow) XXX_Unmarshal(b []byte) error
- type PacketData
- func (*PacketData) Descriptor() ([]byte, []int)
- func (m *PacketData) GetAck() uint32
- func (m *PacketData) GetFin() bool
- func (m *PacketData) GetIpId() uint32
- func (m *PacketData) GetIsFragment() bool
- func (m *PacketData) GetNanosSinceFlowStart() uint64
- func (m *PacketData) GetOptionsL3() bool
- func (m *PacketData) GetOptionsL4() bool
- func (m *PacketData) GetPacketSize() uint32
- func (m *PacketData) GetReset_() bool
- func (m *PacketData) GetSequence() uint32
- func (m *PacketData) GetSyn() bool
- func (m *PacketData) GetWindowSize() int32
- func (*PacketData) ProtoMessage()
- func (m *PacketData) Reset()
- func (m *PacketData) String() string
- func (m *PacketData) XXX_DiscardUnknown()
- func (m *PacketData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *PacketData) XXX_Merge(src proto.Message)
- func (m *PacketData) XXX_Size() int
- func (m *PacketData) XXX_Unmarshal(b []byte) error
Constants ¶
This section is empty.
Variables ¶
View Source
var CaptureRecordUnion_RecordType_name = map[int32]string{
0: "CAPTURE_SPEC",
1: "FLOW_RECORD",
2: "BGP_UPDATE_RECORD",
3: "DNS_RECORD",
4: "PROBE_RECORD",
5: "PROBE_RESULT_RECORD",
}
View Source
var CaptureRecordUnion_RecordType_value = map[string]int32{
"CAPTURE_SPEC": 0,
"FLOW_RECORD": 1,
"BGP_UPDATE_RECORD": 2,
"DNS_RECORD": 3,
"PROBE_RECORD": 4,
"PROBE_RESULT_RECORD": 5,
}
View Source
var FlowRecord_L2Proto_name = map[int32]string{
0: "L2_NONE",
1: "L2_ETHERNET",
}
View Source
var FlowRecord_L2Proto_value = map[string]int32{
"L2_NONE": 0,
"L2_ETHERNET": 1,
}
Functions ¶
This section is empty.
Types ¶
type CaptureRecordUnion ¶
type CaptureRecordUnion struct { // Rough timestamp for indexing or filtering of data. May be // augmented internally. In UTC since epoch. TimestampSeconds int64 `protobuf:"varint,1,opt,name=timestamp_seconds,json=timestampSeconds,proto3" json:"timestamp_seconds,omitempty"` RecordType CaptureRecordUnion_RecordType `` /* 136-byte string literal not displayed */ CaptureSpec *common.CaptureSpec `protobuf:"bytes,3,opt,name=capture_spec,json=captureSpec,proto3" json:"capture_spec,omitempty"` FlowRecord *FlowRecord `protobuf:"bytes,4,opt,name=flow_record,json=flowRecord,proto3" json:"flow_record,omitempty"` BgpUpdateRecord *bgp.BGPUpdate `protobuf:"bytes,5,opt,name=bgp_update_record,json=bgpUpdateRecord,proto3" json:"bgp_update_record,omitempty"` DnsRecord *DNSRecord `protobuf:"bytes,6,opt,name=dns_record,json=dnsRecord,proto3" json:"dns_record,omitempty"` ProbeRecord *proddle.Probe `protobuf:"bytes,7,opt,name=probe_record,json=probeRecord,proto3" json:"probe_record,omitempty"` ProbeResultRecord *proddle.ProbeResult `protobuf:"bytes,8,opt,name=probe_result_record,json=probeResultRecord,proto3" json:"probe_result_record,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Should contain either a capture_spec or a record. This gives us the ability to parse consecutive records flexibly. The record contains only one of the fields, namely the one identified by record_type. A capture spec is a meta-record meant to describe the file at hand.
func (*CaptureRecordUnion) Descriptor ¶
func (*CaptureRecordUnion) Descriptor() ([]byte, []int)
func (*CaptureRecordUnion) GetBgpUpdateRecord ¶
func (m *CaptureRecordUnion) GetBgpUpdateRecord() *bgp.BGPUpdate
func (*CaptureRecordUnion) GetCaptureSpec ¶
func (m *CaptureRecordUnion) GetCaptureSpec() *common.CaptureSpec
func (*CaptureRecordUnion) GetDnsRecord ¶
func (m *CaptureRecordUnion) GetDnsRecord() *DNSRecord
func (*CaptureRecordUnion) GetFlowRecord ¶
func (m *CaptureRecordUnion) GetFlowRecord() *FlowRecord
func (*CaptureRecordUnion) GetProbeRecord ¶
func (m *CaptureRecordUnion) GetProbeRecord() *proddle.Probe
func (*CaptureRecordUnion) GetProbeResultRecord ¶
func (m *CaptureRecordUnion) GetProbeResultRecord() *proddle.ProbeResult
func (*CaptureRecordUnion) GetRecordType ¶
func (m *CaptureRecordUnion) GetRecordType() CaptureRecordUnion_RecordType
func (*CaptureRecordUnion) GetTimestampSeconds ¶
func (m *CaptureRecordUnion) GetTimestampSeconds() int64
func (*CaptureRecordUnion) ProtoMessage ¶
func (*CaptureRecordUnion) ProtoMessage()
func (*CaptureRecordUnion) Reset ¶
func (m *CaptureRecordUnion) Reset()
func (*CaptureRecordUnion) String ¶
func (m *CaptureRecordUnion) String() string
func (*CaptureRecordUnion) XXX_DiscardUnknown ¶ added in v0.1.2
func (m *CaptureRecordUnion) XXX_DiscardUnknown()
func (*CaptureRecordUnion) XXX_Marshal ¶ added in v0.1.2
func (m *CaptureRecordUnion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*CaptureRecordUnion) XXX_Merge ¶ added in v0.1.2
func (dst *CaptureRecordUnion) XXX_Merge(src proto.Message)
func (*CaptureRecordUnion) XXX_Size ¶ added in v0.1.2
func (m *CaptureRecordUnion) XXX_Size() int
func (*CaptureRecordUnion) XXX_Unmarshal ¶ added in v0.1.2
func (m *CaptureRecordUnion) XXX_Unmarshal(b []byte) error
type CaptureRecordUnion_RecordType ¶
type CaptureRecordUnion_RecordType int32
const ( CaptureRecordUnion_CAPTURE_SPEC CaptureRecordUnion_RecordType = 0 CaptureRecordUnion_FLOW_RECORD CaptureRecordUnion_RecordType = 1 CaptureRecordUnion_BGP_UPDATE_RECORD CaptureRecordUnion_RecordType = 2 CaptureRecordUnion_DNS_RECORD CaptureRecordUnion_RecordType = 3 CaptureRecordUnion_PROBE_RECORD CaptureRecordUnion_RecordType = 4 CaptureRecordUnion_PROBE_RESULT_RECORD CaptureRecordUnion_RecordType = 5 )
func (CaptureRecordUnion_RecordType) EnumDescriptor ¶
func (CaptureRecordUnion_RecordType) EnumDescriptor() ([]byte, []int)
func (CaptureRecordUnion_RecordType) String ¶
func (x CaptureRecordUnion_RecordType) String() string
type DNSRecord ¶
type DNSRecord struct { RequestingHost *common.IPAddressWrapper `protobuf:"bytes,1,opt,name=requesting_host,json=requestingHost,proto3" json:"requesting_host,omitempty"` DnsServer *common.IPAddressWrapper `protobuf:"bytes,2,opt,name=dns_server,json=dnsServer,proto3" json:"dns_server,omitempty"` // The replies Ips []*common.IPAddressWrapper `protobuf:"bytes,3,rep,name=ips,proto3" json:"ips,omitempty"` Cname []string `protobuf:"bytes,4,rep,name=cname,proto3" json:"cname,omitempty"` // The original question Query string `protobuf:"bytes,5,opt,name=query,proto3" json:"query,omitempty"` // Is the reply in DNSSec form Dnssec bool `protobuf:"varint,6,opt,name=dnssec,proto3" json:"dnssec,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DNSRecord) Descriptor ¶
func (*DNSRecord) GetDnsServer ¶
func (m *DNSRecord) GetDnsServer() *common.IPAddressWrapper
func (*DNSRecord) GetIps ¶
func (m *DNSRecord) GetIps() []*common.IPAddressWrapper
func (*DNSRecord) GetRequestingHost ¶
func (m *DNSRecord) GetRequestingHost() *common.IPAddressWrapper
func (*DNSRecord) ProtoMessage ¶
func (*DNSRecord) ProtoMessage()
func (*DNSRecord) XXX_DiscardUnknown ¶ added in v0.1.2
func (m *DNSRecord) XXX_DiscardUnknown()
func (*DNSRecord) XXX_Marshal ¶ added in v0.1.2
func (*DNSRecord) XXX_Unmarshal ¶ added in v0.1.2
type FlowRecord ¶
type FlowRecord struct { // which capture was responsible for this record. CaptureSpecId int32 `protobuf:"varint,1,opt,name=capture_spec_id,json=captureSpecId,proto3" json:"capture_spec_id,omitempty"` // seconds since epoch : deprecated use top-level instead TimestampSeconds int64 `protobuf:"varint,2,opt,name=timestamp_seconds,json=timestampSeconds,proto3" json:"timestamp_seconds,omitempty"` // really required TimestampNs uint32 `protobuf:"varint,3,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` // if duration is not set then the flow-record is incomplete, i.e., // the flow was started but hasn't terminated. If the record is // an aggregate count of many individual records then we set // bucket_duration_us instead of this value. // The field is also unset if this is a single packet. DurationUs int64 `protobuf:"varint,4,opt,name=duration_us,json=durationUs,proto3" json:"duration_us,omitempty"` L2Proto FlowRecord_L2Proto `protobuf:"varint,5,opt,name=l2_proto,json=l2Proto,proto3,enum=netbrane.FlowRecord_L2Proto" json:"l2_proto,omitempty"` // L3 protocol is recorded as ETHERTYPE L3Proto int32 `protobuf:"varint,6,opt,name=l3_proto,json=l3Proto,proto3" json:"l3_proto,omitempty"` L4Proto int32 `protobuf:"varint,7,opt,name=l4_proto,json=l4Proto,proto3" json:"l4_proto,omitempty"` Source *IPFlow `protobuf:"bytes,8,opt,name=source,proto3" json:"source,omitempty"` Destination *IPFlow `protobuf:"bytes,9,opt,name=destination,proto3" json:"destination,omitempty"` // The number of individual flow records that have // been rolled up into this entry. NumberOfAggregatedFlows int64 `` /* 136-byte string literal not displayed */ // If we roll up many individual flows into one single bucket // then we need to state the duration of our bucket. BucketDurationUs int64 `protobuf:"varint,11,opt,name=bucket_duration_us,json=bucketDurationUs,proto3" json:"bucket_duration_us,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*FlowRecord) Descriptor ¶
func (*FlowRecord) Descriptor() ([]byte, []int)
func (*FlowRecord) GetBucketDurationUs ¶
func (m *FlowRecord) GetBucketDurationUs() int64
func (*FlowRecord) GetCaptureSpecId ¶
func (m *FlowRecord) GetCaptureSpecId() int32
func (*FlowRecord) GetDestination ¶
func (m *FlowRecord) GetDestination() *IPFlow
func (*FlowRecord) GetDurationUs ¶
func (m *FlowRecord) GetDurationUs() int64
func (*FlowRecord) GetL2Proto ¶
func (m *FlowRecord) GetL2Proto() FlowRecord_L2Proto
func (*FlowRecord) GetL3Proto ¶
func (m *FlowRecord) GetL3Proto() int32
func (*FlowRecord) GetL4Proto ¶
func (m *FlowRecord) GetL4Proto() int32
func (*FlowRecord) GetNumberOfAggregatedFlows ¶
func (m *FlowRecord) GetNumberOfAggregatedFlows() int64
func (*FlowRecord) GetSource ¶
func (m *FlowRecord) GetSource() *IPFlow
func (*FlowRecord) GetTimestampNs ¶
func (m *FlowRecord) GetTimestampNs() uint32
func (*FlowRecord) GetTimestampSeconds ¶
func (m *FlowRecord) GetTimestampSeconds() int64
func (*FlowRecord) ProtoMessage ¶
func (*FlowRecord) ProtoMessage()
func (*FlowRecord) Reset ¶
func (m *FlowRecord) Reset()
func (*FlowRecord) String ¶
func (m *FlowRecord) String() string
func (*FlowRecord) XXX_DiscardUnknown ¶ added in v0.1.2
func (m *FlowRecord) XXX_DiscardUnknown()
func (*FlowRecord) XXX_Marshal ¶ added in v0.1.2
func (m *FlowRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*FlowRecord) XXX_Merge ¶ added in v0.1.2
func (dst *FlowRecord) XXX_Merge(src proto.Message)
func (*FlowRecord) XXX_Size ¶ added in v0.1.2
func (m *FlowRecord) XXX_Size() int
func (*FlowRecord) XXX_Unmarshal ¶ added in v0.1.2
func (m *FlowRecord) XXX_Unmarshal(b []byte) error
type FlowRecord_L2Proto ¶
type FlowRecord_L2Proto int32
const ( FlowRecord_L2_NONE FlowRecord_L2Proto = 0 FlowRecord_L2_ETHERNET FlowRecord_L2Proto = 1 )
func (FlowRecord_L2Proto) EnumDescriptor ¶
func (FlowRecord_L2Proto) EnumDescriptor() ([]byte, []int)
func (FlowRecord_L2Proto) String ¶
func (x FlowRecord_L2Proto) String() string
type IPFlow ¶
type IPFlow struct { // really required Address *common.IPAddressWrapper `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` // we may aggregate flows for an entire subnet if we // get too fine-grained with individual flow records. Mask *common.IPAddressWrapper `protobuf:"bytes,2,opt,name=mask,proto3" json:"mask,omitempty"` Port int32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"` Tos int32 `protobuf:"varint,4,opt,name=tos,proto3" json:"tos,omitempty"` Ttl int32 `protobuf:"varint,5,opt,name=ttl,proto3" json:"ttl,omitempty"` Bytes int64 `protobuf:"varint,6,opt,name=bytes,proto3" json:"bytes,omitempty"` // Some sniffers may be able to parse the number of acutal payload bytes ApplicationBytes int64 `protobuf:"varint,7,opt,name=application_bytes,json=applicationBytes,proto3" json:"application_bytes,omitempty"` Packets int64 `protobuf:"varint,8,opt,name=packets,proto3" json:"packets,omitempty"` Loss float32 `protobuf:"fixed32,9,opt,name=loss,proto3" json:"loss,omitempty"` // ---------- ICMP ---------- Type int32 `protobuf:"varint,10,opt,name=type,proto3" json:"type,omitempty"` Code int32 `protobuf:"varint,11,opt,name=code,proto3" json:"code,omitempty"` Id int32 `protobuf:"varint,12,opt,name=id,proto3" json:"id,omitempty"` Retransmissions int64 `protobuf:"varint,13,opt,name=retransmissions,proto3" json:"retransmissions,omitempty"` // The vlan_id of the packet, empty if no vlan header. VlanId int32 `protobuf:"varint,14,opt,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"` // The L2 source addresses on which we observed this flow SourceMac [][]byte `protobuf:"bytes,15,rep,name=source_mac,json=sourceMac,proto3" json:"source_mac,omitempty"` // The L2 destination addresses that were affixed to this flow DestinationMac [][]byte `protobuf:"bytes,16,rep,name=destination_mac,json=destinationMac,proto3" json:"destination_mac,omitempty"` // The physical port id(s) on which we received/sent this flow. PhysicalPortNumber []int32 `` /* 126-byte string literal not displayed */ // If the intercepted packet is a gre packet, place the key here. GreKey uint32 `protobuf:"varint,18,opt,name=gre_key,json=greKey,proto3" json:"gre_key,omitempty"` // If we are looking at a tunneled protocol store the inner flow information // here. Note, this is typically the really interesting address. InnerAddress *common.IPAddressWrapper `protobuf:"bytes,19,opt,name=inner_address,json=innerAddress,proto3" json:"inner_address,omitempty"` InnerPort *common.IPAddressWrapper `protobuf:"bytes,20,opt,name=inner_port,json=innerPort,proto3" json:"inner_port,omitempty"` // as in IPPROTO_* InnerProtocol *common.IPAddressWrapper `protobuf:"bytes,21,opt,name=inner_protocol,json=innerProtocol,proto3" json:"inner_protocol,omitempty"` // We may get richer flow information, e.g., decorated with pcap info. // We store additional information on a per-packet basis in the // sequence of pcap_decoration(s) below // Timestamps in these are relative to the timestamp of the record. // Decoration is most meaningful if the flow describes something // like a single connection. But this is not a requirement. If we // get netflow records we don't get the pcap information. PacketDecor []*PacketData `protobuf:"bytes,22,rep,name=packet_decor,json=packetDecor,proto3" json:"packet_decor,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Flow originates at address
func (*IPFlow) Descriptor ¶
func (*IPFlow) GetAddress ¶
func (m *IPFlow) GetAddress() *common.IPAddressWrapper
func (*IPFlow) GetApplicationBytes ¶
func (*IPFlow) GetDestinationMac ¶
func (*IPFlow) GetInnerAddress ¶
func (m *IPFlow) GetInnerAddress() *common.IPAddressWrapper
func (*IPFlow) GetInnerPort ¶
func (m *IPFlow) GetInnerPort() *common.IPAddressWrapper
func (*IPFlow) GetInnerProtocol ¶
func (m *IPFlow) GetInnerProtocol() *common.IPAddressWrapper
func (*IPFlow) GetMask ¶
func (m *IPFlow) GetMask() *common.IPAddressWrapper
func (*IPFlow) GetPacketDecor ¶
func (m *IPFlow) GetPacketDecor() []*PacketData
func (*IPFlow) GetPackets ¶
func (*IPFlow) GetPhysicalPortNumber ¶
func (*IPFlow) GetRetransmissions ¶
func (*IPFlow) GetSourceMac ¶
func (*IPFlow) ProtoMessage ¶
func (*IPFlow) ProtoMessage()
func (*IPFlow) XXX_DiscardUnknown ¶ added in v0.1.2
func (m *IPFlow) XXX_DiscardUnknown()
func (*IPFlow) XXX_Marshal ¶ added in v0.1.2
func (*IPFlow) XXX_Unmarshal ¶ added in v0.1.2
type PacketData ¶
type PacketData struct { NanosSinceFlowStart uint64 `protobuf:"varint,1,opt,name=nanos_since_flow_start,json=nanosSinceFlowStart,proto3" json:"nanos_since_flow_start,omitempty"` PacketSize uint32 `protobuf:"varint,2,opt,name=packet_size,json=packetSize,proto3" json:"packet_size,omitempty"` // IP per packet see RFC 791 IpId uint32 `protobuf:"varint,3,opt,name=ip_id,json=ipId,proto3" json:"ip_id,omitempty"` // either more fragments after this or offset != 0 IsFragment bool `protobuf:"varint,4,opt,name=is_fragment,json=isFragment,proto3" json:"is_fragment,omitempty"` // TCP related follows RFC 793 // This is the window advertisement // in bytes. WindowSize int32 `protobuf:"varint,5,opt,name=window_size,json=windowSize,proto3" json:"window_size,omitempty"` Sequence uint32 `protobuf:"varint,6,opt,name=sequence,proto3" json:"sequence,omitempty"` Ack uint32 `protobuf:"varint,7,opt,name=ack,proto3" json:"ack,omitempty"` Syn bool `protobuf:"varint,8,opt,name=syn,proto3" json:"syn,omitempty"` Fin bool `protobuf:"varint,9,opt,name=fin,proto3" json:"fin,omitempty"` Reset_ bool `protobuf:"varint,10,opt,name=reset,proto3" json:"reset,omitempty"` // Do we need more understanding of options ip and otherwise OptionsL3 bool `protobuf:"varint,11,opt,name=options_l3,json=optionsL3,proto3" json:"options_l3,omitempty"` OptionsL4 bool `protobuf:"varint,12,opt,name=options_l4,json=optionsL4,proto3" json:"options_l4,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
We don't always capture packet data. If we do, this is the format
func (*PacketData) Descriptor ¶
func (*PacketData) Descriptor() ([]byte, []int)
func (*PacketData) GetAck ¶
func (m *PacketData) GetAck() uint32
func (*PacketData) GetFin ¶
func (m *PacketData) GetFin() bool
func (*PacketData) GetIpId ¶
func (m *PacketData) GetIpId() uint32
func (*PacketData) GetIsFragment ¶
func (m *PacketData) GetIsFragment() bool
func (*PacketData) GetNanosSinceFlowStart ¶
func (m *PacketData) GetNanosSinceFlowStart() uint64
func (*PacketData) GetOptionsL3 ¶
func (m *PacketData) GetOptionsL3() bool
func (*PacketData) GetOptionsL4 ¶
func (m *PacketData) GetOptionsL4() bool
func (*PacketData) GetPacketSize ¶
func (m *PacketData) GetPacketSize() uint32
func (*PacketData) GetReset_ ¶
func (m *PacketData) GetReset_() bool
func (*PacketData) GetSequence ¶
func (m *PacketData) GetSequence() uint32
func (*PacketData) GetSyn ¶
func (m *PacketData) GetSyn() bool
func (*PacketData) GetWindowSize ¶
func (m *PacketData) GetWindowSize() int32
func (*PacketData) ProtoMessage ¶
func (*PacketData) ProtoMessage()
func (*PacketData) Reset ¶
func (m *PacketData) Reset()
func (*PacketData) String ¶
func (m *PacketData) String() string
func (*PacketData) XXX_DiscardUnknown ¶ added in v0.1.2
func (m *PacketData) XXX_DiscardUnknown()
func (*PacketData) XXX_Marshal ¶ added in v0.1.2
func (m *PacketData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PacketData) XXX_Merge ¶ added in v0.1.2
func (dst *PacketData) XXX_Merge(src proto.Message)
func (*PacketData) XXX_Size ¶ added in v0.1.2
func (m *PacketData) XXX_Size() int
func (*PacketData) XXX_Unmarshal ¶ added in v0.1.2
func (m *PacketData) XXX_Unmarshal(b []byte) error
Click to show internal directories.
Click to hide internal directories.