flowpb

package
v2.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 21, 2024 License: BSD-3-Clause Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	FlowMessage_FlowType_name = map[int32]string{
		0: "FLOWUNKNOWN",
		1: "SFLOW_5",
		2: "NETFLOW_V5",
		3: "NETFLOW_V9",
		4: "IPFIX",
	}
	FlowMessage_FlowType_value = map[string]int32{
		"FLOWUNKNOWN": 0,
		"SFLOW_5":     1,
		"NETFLOW_V5":  2,
		"NETFLOW_V9":  3,
		"IPFIX":       4,
	}
)

Enum value maps for FlowMessage_FlowType.

View Source
var (
	FlowMessage_LayerStack_name = map[int32]string{
		0:  "Ethernet",
		1:  "IPv4",
		2:  "IPv6",
		3:  "TCP",
		4:  "UDP",
		5:  "MPLS",
		6:  "Dot1Q",
		7:  "ICMP",
		8:  "ICMPv6",
		9:  "GRE",
		10: "IPv6HeaderRouting",
		11: "IPv6HeaderFragment",
		12: "Geneve",
		13: "Teredo",
		99: "Custom",
	}
	FlowMessage_LayerStack_value = map[string]int32{
		"Ethernet":           0,
		"IPv4":               1,
		"IPv6":               2,
		"TCP":                3,
		"UDP":                4,
		"MPLS":               5,
		"Dot1Q":              6,
		"ICMP":               7,
		"ICMPv6":             8,
		"GRE":                9,
		"IPv6HeaderRouting":  10,
		"IPv6HeaderFragment": 11,
		"Geneve":             12,
		"Teredo":             13,
		"Custom":             99,
	}
)

Enum value maps for FlowMessage_LayerStack.

View Source
var File_pb_flow_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type FlowMessage

type FlowMessage struct {
	Type           FlowMessage_FlowType `protobuf:"varint,1,opt,name=type,proto3,enum=flowpb.FlowMessage_FlowType" json:"type,omitempty"`
	TimeReceivedNs uint64               `protobuf:"varint,110,opt,name=time_received_ns,json=timeReceivedNs,proto3" json:"time_received_ns,omitempty"`
	SequenceNum    uint32               `protobuf:"varint,4,opt,name=sequence_num,json=sequenceNum,proto3" json:"sequence_num,omitempty"`
	SamplingRate   uint64               `protobuf:"varint,3,opt,name=sampling_rate,json=samplingRate,proto3" json:"sampling_rate,omitempty"`
	// Sampler information
	SamplerAddress []byte `protobuf:"bytes,11,opt,name=sampler_address,json=samplerAddress,proto3" json:"sampler_address,omitempty"`
	// Found inside packet
	TimeFlowStartNs uint64 `protobuf:"varint,111,opt,name=time_flow_start_ns,json=timeFlowStartNs,proto3" json:"time_flow_start_ns,omitempty"`
	TimeFlowEndNs   uint64 `protobuf:"varint,112,opt,name=time_flow_end_ns,json=timeFlowEndNs,proto3" json:"time_flow_end_ns,omitempty"`
	// Size of the sampled packet
	Bytes   uint64 `protobuf:"varint,9,opt,name=bytes,proto3" json:"bytes,omitempty"`
	Packets uint64 `protobuf:"varint,10,opt,name=packets,proto3" json:"packets,omitempty"`
	// Source/destination addresses
	SrcAddr []byte `protobuf:"bytes,6,opt,name=src_addr,json=srcAddr,proto3" json:"src_addr,omitempty"`
	DstAddr []byte `protobuf:"bytes,7,opt,name=dst_addr,json=dstAddr,proto3" json:"dst_addr,omitempty"`
	// Layer 3 protocol (IPv4/IPv6/ARP/MPLS...)
	Etype uint32 `protobuf:"varint,30,opt,name=etype,proto3" json:"etype,omitempty"`
	// Layer 4 protocol
	Proto uint32 `protobuf:"varint,20,opt,name=proto,proto3" json:"proto,omitempty"`
	// Ports for UDP and TCP
	SrcPort uint32 `protobuf:"varint,21,opt,name=src_port,json=srcPort,proto3" json:"src_port,omitempty"`
	DstPort uint32 `protobuf:"varint,22,opt,name=dst_port,json=dstPort,proto3" json:"dst_port,omitempty"`
	// Interfaces
	InIf  uint32 `protobuf:"varint,18,opt,name=in_if,json=inIf,proto3" json:"in_if,omitempty"`
	OutIf uint32 `protobuf:"varint,19,opt,name=out_if,json=outIf,proto3" json:"out_if,omitempty"`
	// Ethernet information
	SrcMac uint64 `protobuf:"varint,27,opt,name=src_mac,json=srcMac,proto3" json:"src_mac,omitempty"`
	DstMac uint64 `protobuf:"varint,28,opt,name=dst_mac,json=dstMac,proto3" json:"dst_mac,omitempty"`
	// Vlan
	SrcVlan uint32 `protobuf:"varint,33,opt,name=src_vlan,json=srcVlan,proto3" json:"src_vlan,omitempty"`
	DstVlan uint32 `protobuf:"varint,34,opt,name=dst_vlan,json=dstVlan,proto3" json:"dst_vlan,omitempty"`
	// 802.1q VLAN in sampled packet
	VlanId uint32 `protobuf:"varint,29,opt,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"`
	// IP and TCP special flags
	IpTos            uint32 `protobuf:"varint,23,opt,name=ip_tos,json=ipTos,proto3" json:"ip_tos,omitempty"`
	ForwardingStatus uint32 `protobuf:"varint,24,opt,name=forwarding_status,json=forwardingStatus,proto3" json:"forwarding_status,omitempty"`
	IpTtl            uint32 `protobuf:"varint,25,opt,name=ip_ttl,json=ipTtl,proto3" json:"ip_ttl,omitempty"`
	IpFlags          uint32 `protobuf:"varint,38,opt,name=ip_flags,json=ipFlags,proto3" json:"ip_flags,omitempty"`
	TcpFlags         uint32 `protobuf:"varint,26,opt,name=tcp_flags,json=tcpFlags,proto3" json:"tcp_flags,omitempty"`
	IcmpType         uint32 `protobuf:"varint,31,opt,name=icmp_type,json=icmpType,proto3" json:"icmp_type,omitempty"`
	IcmpCode         uint32 `protobuf:"varint,32,opt,name=icmp_code,json=icmpCode,proto3" json:"icmp_code,omitempty"`
	Ipv6FlowLabel    uint32 `protobuf:"varint,37,opt,name=ipv6_flow_label,json=ipv6FlowLabel,proto3" json:"ipv6_flow_label,omitempty"`
	// Fragments (IPv4/IPv6)
	FragmentId     uint32 `protobuf:"varint,35,opt,name=fragment_id,json=fragmentId,proto3" json:"fragment_id,omitempty"`
	FragmentOffset uint32 `protobuf:"varint,36,opt,name=fragment_offset,json=fragmentOffset,proto3" json:"fragment_offset,omitempty"`
	// Autonomous system information
	SrcAs     uint32 `protobuf:"varint,14,opt,name=src_as,json=srcAs,proto3" json:"src_as,omitempty"`
	DstAs     uint32 `protobuf:"varint,15,opt,name=dst_as,json=dstAs,proto3" json:"dst_as,omitempty"`
	NextHop   []byte `protobuf:"bytes,12,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"`
	NextHopAs uint32 `protobuf:"varint,13,opt,name=next_hop_as,json=nextHopAs,proto3" json:"next_hop_as,omitempty"`
	// Prefix size
	SrcNet uint32 `protobuf:"varint,16,opt,name=src_net,json=srcNet,proto3" json:"src_net,omitempty"`
	DstNet uint32 `protobuf:"varint,17,opt,name=dst_net,json=dstNet,proto3" json:"dst_net,omitempty"`
	// BGP information
	BgpNextHop     []byte   `protobuf:"bytes,100,opt,name=bgp_next_hop,json=bgpNextHop,proto3" json:"bgp_next_hop,omitempty"`
	BgpCommunities []uint32 `protobuf:"varint,101,rep,packed,name=bgp_communities,json=bgpCommunities,proto3" json:"bgp_communities,omitempty"`
	AsPath         []uint32 `protobuf:"varint,102,rep,packed,name=as_path,json=asPath,proto3" json:"as_path,omitempty"`
	// MPLS information
	MplsTtl                    []uint32                 `protobuf:"varint,80,rep,packed,name=mpls_ttl,json=mplsTtl,proto3" json:"mpls_ttl,omitempty"`
	MplsLabel                  []uint32                 `protobuf:"varint,81,rep,packed,name=mpls_label,json=mplsLabel,proto3" json:"mpls_label,omitempty"`
	MplsIp                     [][]byte                 `protobuf:"bytes,82,rep,name=mpls_ip,json=mplsIp,proto3" json:"mpls_ip,omitempty"`
	ObservationDomainId        uint32                   `protobuf:"varint,70,opt,name=observation_domain_id,json=observationDomainId,proto3" json:"observation_domain_id,omitempty"`
	ObservationPointId         uint32                   `protobuf:"varint,71,opt,name=observation_point_id,json=observationPointId,proto3" json:"observation_point_id,omitempty"`
	LayerStack                 []FlowMessage_LayerStack `` /* 136-byte string literal not displayed */
	LayerSize                  []uint32                 `protobuf:"varint,104,rep,packed,name=layer_size,json=layerSize,proto3" json:"layer_size,omitempty"`
	Ipv6RoutingHeaderAddresses [][]byte                 `` // SRv6
	/* 145-byte string literal not displayed */
	Ipv6RoutingHeaderSegLeft uint32 `` // SRv6
	/* 142-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*FlowMessage) Descriptor deprecated

func (*FlowMessage) Descriptor() ([]byte, []int)

Deprecated: Use FlowMessage.ProtoReflect.Descriptor instead.

func (*FlowMessage) GetAsPath

func (x *FlowMessage) GetAsPath() []uint32

func (*FlowMessage) GetBgpCommunities

func (x *FlowMessage) GetBgpCommunities() []uint32

func (*FlowMessage) GetBgpNextHop

func (x *FlowMessage) GetBgpNextHop() []byte

func (*FlowMessage) GetBytes

func (x *FlowMessage) GetBytes() uint64

func (*FlowMessage) GetDstAddr

func (x *FlowMessage) GetDstAddr() []byte

func (*FlowMessage) GetDstAs

func (x *FlowMessage) GetDstAs() uint32

func (*FlowMessage) GetDstMac

func (x *FlowMessage) GetDstMac() uint64

func (*FlowMessage) GetDstNet

func (x *FlowMessage) GetDstNet() uint32

func (*FlowMessage) GetDstPort

func (x *FlowMessage) GetDstPort() uint32

func (*FlowMessage) GetDstVlan

func (x *FlowMessage) GetDstVlan() uint32

func (*FlowMessage) GetEtype

func (x *FlowMessage) GetEtype() uint32

func (*FlowMessage) GetForwardingStatus

func (x *FlowMessage) GetForwardingStatus() uint32

func (*FlowMessage) GetFragmentId

func (x *FlowMessage) GetFragmentId() uint32

func (*FlowMessage) GetFragmentOffset

func (x *FlowMessage) GetFragmentOffset() uint32

func (*FlowMessage) GetIcmpCode

func (x *FlowMessage) GetIcmpCode() uint32

func (*FlowMessage) GetIcmpType

func (x *FlowMessage) GetIcmpType() uint32

func (*FlowMessage) GetInIf

func (x *FlowMessage) GetInIf() uint32

func (*FlowMessage) GetIpFlags added in v2.1.0

func (x *FlowMessage) GetIpFlags() uint32

func (*FlowMessage) GetIpTos

func (x *FlowMessage) GetIpTos() uint32

func (*FlowMessage) GetIpTtl

func (x *FlowMessage) GetIpTtl() uint32

func (*FlowMessage) GetIpv6FlowLabel

func (x *FlowMessage) GetIpv6FlowLabel() uint32

func (*FlowMessage) GetIpv6RoutingHeaderAddresses added in v2.2.0

func (x *FlowMessage) GetIpv6RoutingHeaderAddresses() [][]byte

func (*FlowMessage) GetIpv6RoutingHeaderSegLeft added in v2.2.0

func (x *FlowMessage) GetIpv6RoutingHeaderSegLeft() uint32

func (*FlowMessage) GetLayerSize added in v2.2.0

func (x *FlowMessage) GetLayerSize() []uint32

func (*FlowMessage) GetLayerStack added in v2.2.0

func (x *FlowMessage) GetLayerStack() []FlowMessage_LayerStack

func (*FlowMessage) GetMplsIp

func (x *FlowMessage) GetMplsIp() [][]byte

func (*FlowMessage) GetMplsLabel

func (x *FlowMessage) GetMplsLabel() []uint32

func (*FlowMessage) GetMplsTtl

func (x *FlowMessage) GetMplsTtl() []uint32

func (*FlowMessage) GetNextHop

func (x *FlowMessage) GetNextHop() []byte

func (*FlowMessage) GetNextHopAs

func (x *FlowMessage) GetNextHopAs() uint32

func (*FlowMessage) GetObservationDomainId

func (x *FlowMessage) GetObservationDomainId() uint32

func (*FlowMessage) GetObservationPointId

func (x *FlowMessage) GetObservationPointId() uint32

func (*FlowMessage) GetOutIf

func (x *FlowMessage) GetOutIf() uint32

func (*FlowMessage) GetPackets

func (x *FlowMessage) GetPackets() uint64

func (*FlowMessage) GetProto

func (x *FlowMessage) GetProto() uint32

func (*FlowMessage) GetSamplerAddress

func (x *FlowMessage) GetSamplerAddress() []byte

func (*FlowMessage) GetSamplingRate

func (x *FlowMessage) GetSamplingRate() uint64

func (*FlowMessage) GetSequenceNum

func (x *FlowMessage) GetSequenceNum() uint32

func (*FlowMessage) GetSrcAddr

func (x *FlowMessage) GetSrcAddr() []byte

func (*FlowMessage) GetSrcAs

func (x *FlowMessage) GetSrcAs() uint32

func (*FlowMessage) GetSrcMac

func (x *FlowMessage) GetSrcMac() uint64

func (*FlowMessage) GetSrcNet

func (x *FlowMessage) GetSrcNet() uint32

func (*FlowMessage) GetSrcPort

func (x *FlowMessage) GetSrcPort() uint32

func (*FlowMessage) GetSrcVlan

func (x *FlowMessage) GetSrcVlan() uint32

func (*FlowMessage) GetTcpFlags

func (x *FlowMessage) GetTcpFlags() uint32

func (*FlowMessage) GetTimeFlowEndNs

func (x *FlowMessage) GetTimeFlowEndNs() uint64

func (*FlowMessage) GetTimeFlowStartNs

func (x *FlowMessage) GetTimeFlowStartNs() uint64

func (*FlowMessage) GetTimeReceivedNs

func (x *FlowMessage) GetTimeReceivedNs() uint64

func (*FlowMessage) GetType

func (x *FlowMessage) GetType() FlowMessage_FlowType

func (*FlowMessage) GetVlanId

func (x *FlowMessage) GetVlanId() uint32

func (*FlowMessage) ProtoMessage

func (*FlowMessage) ProtoMessage()

func (*FlowMessage) ProtoReflect

func (x *FlowMessage) ProtoReflect() protoreflect.Message

func (*FlowMessage) Reset

func (x *FlowMessage) Reset()

func (*FlowMessage) String

func (x *FlowMessage) String() string

type FlowMessage_FlowType

type FlowMessage_FlowType int32
const (
	FlowMessage_FLOWUNKNOWN FlowMessage_FlowType = 0
	FlowMessage_SFLOW_5     FlowMessage_FlowType = 1
	FlowMessage_NETFLOW_V5  FlowMessage_FlowType = 2
	FlowMessage_NETFLOW_V9  FlowMessage_FlowType = 3
	FlowMessage_IPFIX       FlowMessage_FlowType = 4
)

func (FlowMessage_FlowType) Descriptor

func (FlowMessage_FlowType) Enum

func (FlowMessage_FlowType) EnumDescriptor deprecated

func (FlowMessage_FlowType) EnumDescriptor() ([]byte, []int)

Deprecated: Use FlowMessage_FlowType.Descriptor instead.

func (FlowMessage_FlowType) Number

func (FlowMessage_FlowType) String

func (x FlowMessage_FlowType) String() string

func (FlowMessage_FlowType) Type

type FlowMessage_LayerStack added in v2.2.0

type FlowMessage_LayerStack int32

Encapsulation

const (
	FlowMessage_Ethernet           FlowMessage_LayerStack = 0
	FlowMessage_IPv4               FlowMessage_LayerStack = 1
	FlowMessage_IPv6               FlowMessage_LayerStack = 2
	FlowMessage_TCP                FlowMessage_LayerStack = 3
	FlowMessage_UDP                FlowMessage_LayerStack = 4
	FlowMessage_MPLS               FlowMessage_LayerStack = 5
	FlowMessage_Dot1Q              FlowMessage_LayerStack = 6
	FlowMessage_ICMP               FlowMessage_LayerStack = 7
	FlowMessage_ICMPv6             FlowMessage_LayerStack = 8
	FlowMessage_GRE                FlowMessage_LayerStack = 9
	FlowMessage_IPv6HeaderRouting  FlowMessage_LayerStack = 10
	FlowMessage_IPv6HeaderFragment FlowMessage_LayerStack = 11
	FlowMessage_Geneve             FlowMessage_LayerStack = 12
	FlowMessage_Teredo             FlowMessage_LayerStack = 13
	FlowMessage_Custom             FlowMessage_LayerStack = 99 // todo: add nsh
)

func (FlowMessage_LayerStack) Descriptor added in v2.2.0

func (FlowMessage_LayerStack) Enum added in v2.2.0

func (FlowMessage_LayerStack) EnumDescriptor deprecated added in v2.2.0

func (FlowMessage_LayerStack) EnumDescriptor() ([]byte, []int)

Deprecated: Use FlowMessage_LayerStack.Descriptor instead.

func (FlowMessage_LayerStack) Number added in v2.2.0

func (FlowMessage_LayerStack) String added in v2.2.0

func (x FlowMessage_LayerStack) String() string

func (FlowMessage_LayerStack) Type added in v2.2.0

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL