flowprotob

package
v2.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: May 1, 2019 License: BSD-3-Clause Imports: 3 Imported by: 60

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FlowMessage_FlowType_name = map[int32]string{
	0:  "FLOWUNKNOWN",
	9:  "NFV9",
	10: "IPFIX",
	5:  "SFLOW",
}
View Source
var FlowMessage_FlowType_value = map[string]int32{
	"FLOWUNKNOWN": 0,
	"NFV9":        9,
	"IPFIX":       10,
	"SFLOW":       5,
}
View Source
var FlowMessage_IPType_name = map[int32]string{
	0: "IPUNKNOWN",
	4: "IPv4",
	6: "IPv6",
}
View Source
var FlowMessage_IPType_value = map[string]int32{
	"IPUNKNOWN": 0,
	"IPv4":      4,
	"IPv6":      6,
}

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"`
	TimeRecvd    uint64               `protobuf:"varint,2,opt,name=TimeRecvd,proto3" json:"TimeRecvd,omitempty"`
	SamplingRate uint64               `protobuf:"varint,3,opt,name=SamplingRate,proto3" json:"SamplingRate,omitempty"`
	SequenceNum  uint32               `protobuf:"varint,4,opt,name=SequenceNum,proto3" json:"SequenceNum,omitempty"`
	// Found inside packet (To be deprecated in favor of TimeFlowEnd)
	TimeFlow uint64 `protobuf:"varint,5,opt,name=TimeFlow,proto3" json:"TimeFlow,omitempty"`
	// Source/destination addresses
	SrcIP     []byte             `protobuf:"bytes,6,opt,name=SrcIP,proto3" json:"SrcIP,omitempty"`
	DstIP     []byte             `protobuf:"bytes,7,opt,name=DstIP,proto3" json:"DstIP,omitempty"`
	IPversion FlowMessage_IPType `protobuf:"varint,8,opt,name=IPversion,proto3,enum=flowprotob.FlowMessage_IPType" json:"IPversion,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"`
	// Routing information
	RouterAddr []byte `protobuf:"bytes,11,opt,name=RouterAddr,proto3" json:"RouterAddr,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"`
	// 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"`
	// 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"`
	// Interfaces
	SrcIf uint32 `protobuf:"varint,18,opt,name=SrcIf,proto3" json:"SrcIf,omitempty"`
	DstIf uint32 `protobuf:"varint,19,opt,name=DstIf,proto3" json:"DstIf,omitempty"`
	// Layer 4 protocol
	Proto uint32 `protobuf:"varint,20,opt,name=Proto,proto3" json:"Proto,omitempty"`
	// Port 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"`
	// 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"`
	// 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"`
	// 802.1q VLAN in sampled packet
	VlanId uint32 `protobuf:"varint,29,opt,name=VlanId,proto3" json:"VlanId,omitempty"`
	// Layer 3 protocol (IPv4/IPv6/ARP/...)
	Etype    uint32 `protobuf:"varint,30,opt,name=Etype,proto3" json:"Etype,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"`
	// 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"`
	// 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"`
	IPv6FlowLabel  uint32 `protobuf:"varint,37,opt,name=IPv6FlowLabel,proto3" json:"IPv6FlowLabel,omitempty"`
	// VRF
	IngressVrfId uint32 `protobuf:"varint,38,opt,name=IngressVrfId,proto3" json:"IngressVrfId,omitempty"`
	EgressVrfId  uint32 `protobuf:"varint,39,opt,name=EgressVrfId,proto3" json:"EgressVrfId,omitempty"`
	// time information, found inside packets
	TimeFlowStart        uint64   `protobuf:"varint,40,opt,name=TimeFlowStart,proto3" json:"TimeFlowStart,omitempty"`
	TimeFlowEnd          uint64   `protobuf:"varint,41,opt,name=TimeFlowEnd,proto3" json:"TimeFlowEnd,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*FlowMessage) Descriptor

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

func (*FlowMessage) GetBytes

func (m *FlowMessage) GetBytes() uint64

func (*FlowMessage) GetDstAS

func (m *FlowMessage) GetDstAS() uint32

func (*FlowMessage) GetDstIP

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

func (*FlowMessage) GetDstIf

func (m *FlowMessage) GetDstIf() uint32

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

func (m *FlowMessage) GetForwardingStatus() uint32

func (*FlowMessage) GetFragmentId

func (m *FlowMessage) GetFragmentId() uint32

func (*FlowMessage) GetFragmentOffset

func (m *FlowMessage) GetFragmentOffset() uint32

func (*FlowMessage) GetIPTTL

func (m *FlowMessage) GetIPTTL() uint32

func (*FlowMessage) GetIPTos

func (m *FlowMessage) GetIPTos() uint32

func (*FlowMessage) GetIPv6FlowLabel

func (m *FlowMessage) GetIPv6FlowLabel() uint32

func (*FlowMessage) GetIPversion

func (m *FlowMessage) GetIPversion() FlowMessage_IPType

func (*FlowMessage) GetIcmpCode

func (m *FlowMessage) GetIcmpCode() uint32

func (*FlowMessage) GetIcmpType

func (m *FlowMessage) GetIcmpType() uint32

func (*FlowMessage) GetIngressVrfId

func (m *FlowMessage) GetIngressVrfId() uint32

func (*FlowMessage) GetNextHop

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

func (*FlowMessage) GetNextHopAS

func (m *FlowMessage) GetNextHopAS() uint32

func (*FlowMessage) GetPackets

func (m *FlowMessage) GetPackets() uint64

func (*FlowMessage) GetProto

func (m *FlowMessage) GetProto() uint32

func (*FlowMessage) GetRouterAddr

func (m *FlowMessage) GetRouterAddr() []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) GetSrcIP

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

func (*FlowMessage) GetSrcIf

func (m *FlowMessage) GetSrcIf() uint32

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

func (m *FlowMessage) GetTimeFlow() uint64

func (*FlowMessage) GetTimeFlowEnd

func (m *FlowMessage) GetTimeFlowEnd() uint64

func (*FlowMessage) GetTimeFlowStart

func (m *FlowMessage) GetTimeFlowStart() uint64

func (*FlowMessage) GetTimeRecvd

func (m *FlowMessage) GetTimeRecvd() 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_NFV9        FlowMessage_FlowType = 9
	FlowMessage_IPFIX       FlowMessage_FlowType = 10
	FlowMessage_SFLOW       FlowMessage_FlowType = 5
)

func (FlowMessage_FlowType) EnumDescriptor

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

func (FlowMessage_FlowType) String

func (x FlowMessage_FlowType) String() string

type FlowMessage_IPType

type FlowMessage_IPType int32

To be deprecated

const (
	FlowMessage_IPUNKNOWN FlowMessage_IPType = 0
	FlowMessage_IPv4      FlowMessage_IPType = 4
	FlowMessage_IPv6      FlowMessage_IPType = 6
)

func (FlowMessage_IPType) EnumDescriptor

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

func (FlowMessage_IPType) String

func (x FlowMessage_IPType) String() string

Jump to

Keyboard shortcuts

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