flowprotob

package
v3.4.5 Latest Latest
Warning

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

Go to latest
Published: Aug 29, 2022 License: BSD-3-Clause Imports: 3 Imported by: 11

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",
}
View Source
var FlowMessage_FlowType_value = map[string]int32{
	"FLOWUNKNOWN": 0,
	"SFLOW_5":     1,
	"NETFLOW_V5":  2,
	"NETFLOW_V9":  3,
	"IPFIX":       4,
}

Functions

This section is empty.

Types

type FlowMessage

type FlowMessage struct {
	Type          FlowMessage_FlowType `protobuf:"varint,1,opt,name=Type,proto3,enum=flowprotob.FlowMessage_FlowType" json:"Type,omitempty"`
	TimeReceived  uint64               `protobuf:"varint,2,opt,name=TimeReceived,proto3" json:"TimeReceived,omitempty"`
	SequenceNum   uint32               `protobuf:"varint,4,opt,name=SequenceNum,proto3" json:"SequenceNum,omitempty"`
	SamplingRate  uint64               `protobuf:"varint,3,opt,name=SamplingRate,proto3" json:"SamplingRate,omitempty"`
	FlowDirection uint32               `protobuf:"varint,42,opt,name=FlowDirection,proto3" json:"FlowDirection,omitempty"`
	// Sampler information
	SamplerAddress []byte `protobuf:"bytes,11,opt,name=SamplerAddress,proto3" json:"SamplerAddress,omitempty"`
	// Found inside packet
	TimeFlowStart uint64 `protobuf:"varint,38,opt,name=TimeFlowStart,proto3" json:"TimeFlowStart,omitempty"`
	TimeFlowEnd   uint64 `protobuf:"varint,5,opt,name=TimeFlowEnd,proto3" json:"TimeFlowEnd,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=SrcAddr,proto3" json:"SrcAddr,omitempty"`
	DstAddr []byte `protobuf:"bytes,7,opt,name=DstAddr,proto3" json:"DstAddr,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=SrcPort,proto3" json:"SrcPort,omitempty"`
	DstPort uint32 `protobuf:"varint,22,opt,name=DstPort,proto3" json:"DstPort,omitempty"`
	// Interfaces
	InIf  uint32 `protobuf:"varint,18,opt,name=InIf,proto3" json:"InIf,omitempty"`
	OutIf uint32 `protobuf:"varint,19,opt,name=OutIf,proto3" json:"OutIf,omitempty"`
	// Ethernet information
	SrcMac uint64 `protobuf:"varint,27,opt,name=SrcMac,proto3" json:"SrcMac,omitempty"`
	DstMac uint64 `protobuf:"varint,28,opt,name=DstMac,proto3" json:"DstMac,omitempty"`
	// Vlan
	SrcVlan uint32 `protobuf:"varint,33,opt,name=SrcVlan,proto3" json:"SrcVlan,omitempty"`
	DstVlan uint32 `protobuf:"varint,34,opt,name=DstVlan,proto3" json:"DstVlan,omitempty"`
	// 802.1q VLAN in sampled packet
	VlanId uint32 `protobuf:"varint,29,opt,name=VlanId,proto3" json:"VlanId,omitempty"`
	// VRF
	IngressVrfID uint32 `protobuf:"varint,39,opt,name=IngressVrfID,proto3" json:"IngressVrfID,omitempty"`
	EgressVrfID  uint32 `protobuf:"varint,40,opt,name=EgressVrfID,proto3" json:"EgressVrfID,omitempty"`
	// IP and TCP special flags
	IPTos            uint32 `protobuf:"varint,23,opt,name=IPTos,proto3" json:"IPTos,omitempty"`
	ForwardingStatus uint32 `protobuf:"varint,24,opt,name=ForwardingStatus,proto3" json:"ForwardingStatus,omitempty"`
	IPTTL            uint32 `protobuf:"varint,25,opt,name=IPTTL,proto3" json:"IPTTL,omitempty"`
	TCPFlags         uint32 `protobuf:"varint,26,opt,name=TCPFlags,proto3" json:"TCPFlags,omitempty"`
	IcmpType         uint32 `protobuf:"varint,31,opt,name=IcmpType,proto3" json:"IcmpType,omitempty"`
	IcmpCode         uint32 `protobuf:"varint,32,opt,name=IcmpCode,proto3" json:"IcmpCode,omitempty"`
	IPv6FlowLabel    uint32 `protobuf:"varint,37,opt,name=IPv6FlowLabel,proto3" json:"IPv6FlowLabel,omitempty"`
	// Fragments (IPv4/IPv6)
	FragmentId      uint32 `protobuf:"varint,35,opt,name=FragmentId,proto3" json:"FragmentId,omitempty"`
	FragmentOffset  uint32 `protobuf:"varint,36,opt,name=FragmentOffset,proto3" json:"FragmentOffset,omitempty"`
	BiFlowDirection uint32 `protobuf:"varint,41,opt,name=BiFlowDirection,proto3" json:"BiFlowDirection,omitempty"`
	// Autonomous system information
	SrcAS     uint32 `protobuf:"varint,14,opt,name=SrcAS,proto3" json:"SrcAS,omitempty"`
	DstAS     uint32 `protobuf:"varint,15,opt,name=DstAS,proto3" json:"DstAS,omitempty"`
	NextHop   []byte `protobuf:"bytes,12,opt,name=NextHop,proto3" json:"NextHop,omitempty"`
	NextHopAS uint32 `protobuf:"varint,13,opt,name=NextHopAS,proto3" json:"NextHopAS,omitempty"`
	// Prefix size
	SrcNet uint32 `protobuf:"varint,16,opt,name=SrcNet,proto3" json:"SrcNet,omitempty"`
	DstNet uint32 `protobuf:"varint,17,opt,name=DstNet,proto3" json:"DstNet,omitempty"`
	// IP encapsulation information
	HasEncap            bool   `protobuf:"varint,43,opt,name=HasEncap,proto3" json:"HasEncap,omitempty"`
	SrcAddrEncap        []byte `protobuf:"bytes,44,opt,name=SrcAddrEncap,proto3" json:"SrcAddrEncap,omitempty"`
	DstAddrEncap        []byte `protobuf:"bytes,45,opt,name=DstAddrEncap,proto3" json:"DstAddrEncap,omitempty"`
	ProtoEncap          uint32 `protobuf:"varint,46,opt,name=ProtoEncap,proto3" json:"ProtoEncap,omitempty"`
	EtypeEncap          uint32 `protobuf:"varint,47,opt,name=EtypeEncap,proto3" json:"EtypeEncap,omitempty"`
	IPTosEncap          uint32 `protobuf:"varint,48,opt,name=IPTosEncap,proto3" json:"IPTosEncap,omitempty"`
	IPTTLEncap          uint32 `protobuf:"varint,49,opt,name=IPTTLEncap,proto3" json:"IPTTLEncap,omitempty"`
	IPv6FlowLabelEncap  uint32 `protobuf:"varint,50,opt,name=IPv6FlowLabelEncap,proto3" json:"IPv6FlowLabelEncap,omitempty"`
	FragmentIdEncap     uint32 `protobuf:"varint,51,opt,name=FragmentIdEncap,proto3" json:"FragmentIdEncap,omitempty"`
	FragmentOffsetEncap uint32 `protobuf:"varint,52,opt,name=FragmentOffsetEncap,proto3" json:"FragmentOffsetEncap,omitempty"`
	// MPLS information
	HasMPLS       bool   `protobuf:"varint,53,opt,name=HasMPLS,proto3" json:"HasMPLS,omitempty"`
	MPLSCount     uint32 `protobuf:"varint,54,opt,name=MPLSCount,proto3" json:"MPLSCount,omitempty"`
	MPLS1TTL      uint32 `protobuf:"varint,55,opt,name=MPLS1TTL,proto3" json:"MPLS1TTL,omitempty"`
	MPLS1Label    uint32 `protobuf:"varint,56,opt,name=MPLS1Label,proto3" json:"MPLS1Label,omitempty"`
	MPLS2TTL      uint32 `protobuf:"varint,57,opt,name=MPLS2TTL,proto3" json:"MPLS2TTL,omitempty"`
	MPLS2Label    uint32 `protobuf:"varint,58,opt,name=MPLS2Label,proto3" json:"MPLS2Label,omitempty"`
	MPLS3TTL      uint32 `protobuf:"varint,59,opt,name=MPLS3TTL,proto3" json:"MPLS3TTL,omitempty"`
	MPLS3Label    uint32 `protobuf:"varint,60,opt,name=MPLS3Label,proto3" json:"MPLS3Label,omitempty"`
	MPLSLastTTL   uint32 `protobuf:"varint,61,opt,name=MPLSLastTTL,proto3" json:"MPLSLastTTL,omitempty"`
	MPLSLastLabel uint32 `protobuf:"varint,62,opt,name=MPLSLastLabel,proto3" json:"MPLSLastLabel,omitempty"`
	// PPP information
	HasPPP               bool     `protobuf:"varint,63,opt,name=HasPPP,proto3" json:"HasPPP,omitempty"`
	PPPAddressControl    uint32   `protobuf:"varint,64,opt,name=PPPAddressControl,proto3" json:"PPPAddressControl,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*FlowMessage) Descriptor

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

func (*FlowMessage) GetBiFlowDirection

func (m *FlowMessage) GetBiFlowDirection() uint32

func (*FlowMessage) GetBytes

func (m *FlowMessage) GetBytes() uint64

func (*FlowMessage) GetDstAS

func (m *FlowMessage) GetDstAS() uint32

func (*FlowMessage) GetDstAddr

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

func (*FlowMessage) GetDstAddrEncap

func (m *FlowMessage) GetDstAddrEncap() []byte

func (*FlowMessage) GetDstMac

func (m *FlowMessage) GetDstMac() uint64

func (*FlowMessage) GetDstNet

func (m *FlowMessage) GetDstNet() uint32

func (*FlowMessage) GetDstPort

func (m *FlowMessage) GetDstPort() uint32

func (*FlowMessage) GetDstVlan

func (m *FlowMessage) GetDstVlan() uint32

func (*FlowMessage) GetEgressVrfID

func (m *FlowMessage) GetEgressVrfID() uint32

func (*FlowMessage) GetEtype

func (m *FlowMessage) GetEtype() uint32

func (*FlowMessage) GetEtypeEncap

func (m *FlowMessage) GetEtypeEncap() uint32

func (*FlowMessage) GetFlowDirection

func (m *FlowMessage) GetFlowDirection() uint32

func (*FlowMessage) GetForwardingStatus

func (m *FlowMessage) GetForwardingStatus() uint32

func (*FlowMessage) GetFragmentId

func (m *FlowMessage) GetFragmentId() uint32

func (*FlowMessage) GetFragmentIdEncap

func (m *FlowMessage) GetFragmentIdEncap() uint32

func (*FlowMessage) GetFragmentOffset

func (m *FlowMessage) GetFragmentOffset() uint32

func (*FlowMessage) GetFragmentOffsetEncap

func (m *FlowMessage) GetFragmentOffsetEncap() uint32

func (*FlowMessage) GetHasEncap

func (m *FlowMessage) GetHasEncap() bool

func (*FlowMessage) GetHasMPLS

func (m *FlowMessage) GetHasMPLS() bool

func (*FlowMessage) GetHasPPP added in v3.4.0

func (m *FlowMessage) GetHasPPP() bool

func (*FlowMessage) GetIPTTL

func (m *FlowMessage) GetIPTTL() uint32

func (*FlowMessage) GetIPTTLEncap

func (m *FlowMessage) GetIPTTLEncap() uint32

func (*FlowMessage) GetIPTos

func (m *FlowMessage) GetIPTos() uint32

func (*FlowMessage) GetIPTosEncap

func (m *FlowMessage) GetIPTosEncap() uint32

func (*FlowMessage) GetIPv6FlowLabel

func (m *FlowMessage) GetIPv6FlowLabel() uint32

func (*FlowMessage) GetIPv6FlowLabelEncap

func (m *FlowMessage) GetIPv6FlowLabelEncap() uint32

func (*FlowMessage) GetIcmpCode

func (m *FlowMessage) GetIcmpCode() uint32

func (*FlowMessage) GetIcmpType

func (m *FlowMessage) GetIcmpType() uint32

func (*FlowMessage) GetInIf

func (m *FlowMessage) GetInIf() uint32

func (*FlowMessage) GetIngressVrfID

func (m *FlowMessage) GetIngressVrfID() uint32

func (*FlowMessage) GetMPLS1Label

func (m *FlowMessage) GetMPLS1Label() uint32

func (*FlowMessage) GetMPLS1TTL

func (m *FlowMessage) GetMPLS1TTL() uint32

func (*FlowMessage) GetMPLS2Label

func (m *FlowMessage) GetMPLS2Label() uint32

func (*FlowMessage) GetMPLS2TTL

func (m *FlowMessage) GetMPLS2TTL() uint32

func (*FlowMessage) GetMPLS3Label

func (m *FlowMessage) GetMPLS3Label() uint32

func (*FlowMessage) GetMPLS3TTL

func (m *FlowMessage) GetMPLS3TTL() uint32

func (*FlowMessage) GetMPLSCount

func (m *FlowMessage) GetMPLSCount() uint32

func (*FlowMessage) GetMPLSLastLabel

func (m *FlowMessage) GetMPLSLastLabel() uint32

func (*FlowMessage) GetMPLSLastTTL

func (m *FlowMessage) GetMPLSLastTTL() uint32

func (*FlowMessage) GetNextHop

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

func (*FlowMessage) GetNextHopAS

func (m *FlowMessage) GetNextHopAS() uint32

func (*FlowMessage) GetOutIf

func (m *FlowMessage) GetOutIf() uint32

func (*FlowMessage) GetPPPAddressControl added in v3.4.0

func (m *FlowMessage) GetPPPAddressControl() uint32

func (*FlowMessage) GetPackets

func (m *FlowMessage) GetPackets() uint64

func (*FlowMessage) GetProto

func (m *FlowMessage) GetProto() uint32

func (*FlowMessage) GetProtoEncap

func (m *FlowMessage) GetProtoEncap() uint32

func (*FlowMessage) GetSamplerAddress

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

func (*FlowMessage) GetSamplingRate

func (m *FlowMessage) GetSamplingRate() uint64

func (*FlowMessage) GetSequenceNum

func (m *FlowMessage) GetSequenceNum() uint32

func (*FlowMessage) GetSrcAS

func (m *FlowMessage) GetSrcAS() uint32

func (*FlowMessage) GetSrcAddr

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

func (*FlowMessage) GetSrcAddrEncap

func (m *FlowMessage) GetSrcAddrEncap() []byte

func (*FlowMessage) GetSrcMac

func (m *FlowMessage) GetSrcMac() uint64

func (*FlowMessage) GetSrcNet

func (m *FlowMessage) GetSrcNet() uint32

func (*FlowMessage) GetSrcPort

func (m *FlowMessage) GetSrcPort() uint32

func (*FlowMessage) GetSrcVlan

func (m *FlowMessage) GetSrcVlan() uint32

func (*FlowMessage) GetTCPFlags

func (m *FlowMessage) GetTCPFlags() uint32

func (*FlowMessage) GetTimeFlowEnd

func (m *FlowMessage) GetTimeFlowEnd() uint64

func (*FlowMessage) GetTimeFlowStart

func (m *FlowMessage) GetTimeFlowStart() uint64

func (*FlowMessage) GetTimeReceived

func (m *FlowMessage) GetTimeReceived() uint64

func (*FlowMessage) GetType

func (m *FlowMessage) GetType() FlowMessage_FlowType

func (*FlowMessage) GetVlanId

func (m *FlowMessage) GetVlanId() uint32

func (*FlowMessage) ProtoMessage

func (*FlowMessage) ProtoMessage()

func (*FlowMessage) Reset

func (m *FlowMessage) Reset()

func (*FlowMessage) String

func (m *FlowMessage) String() string

func (*FlowMessage) XXX_DiscardUnknown

func (m *FlowMessage) XXX_DiscardUnknown()

func (*FlowMessage) XXX_Marshal

func (m *FlowMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FlowMessage) XXX_Merge

func (m *FlowMessage) XXX_Merge(src proto.Message)

func (*FlowMessage) XXX_Size

func (m *FlowMessage) XXX_Size() int

func (*FlowMessage) XXX_Unmarshal

func (m *FlowMessage) XXX_Unmarshal(b []byte) error

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) EnumDescriptor

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

func (FlowMessage_FlowType) String

func (x FlowMessage_FlowType) String() string

Jump to

Keyboard shortcuts

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