flowmessageenriched

package
v0.0.0-...-a0e8117 Latest Latest
Warning

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

Go to latest
Published: May 20, 2019 License: GPL-3.0 Imports: 3 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FlowMessage_DirectionType_name = map[int32]string{
	0: "Unknown",
	1: "Incoming",
	2: "Outgoing",
}
View Source
var FlowMessage_DirectionType_value = map[string]int32{
	"Unknown":  0,
	"Incoming": 1,
	"Outgoing": 2,
}
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,
}
View Source
var FlowMessage_NormalizedType_name = map[int32]string{
	0: "No",
	1: "Yes",
}
View Source
var FlowMessage_NormalizedType_value = map[string]int32{
	"No":  0,
	"Yes": 1,
}

Functions

This section is empty.

Types

type FlowMessage

type FlowMessage struct {
	Type         FlowMessage_FlowType `protobuf:"varint,1,opt,name=Type,proto3,enum=flowmessageenriched.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
	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=flowmessageenriched.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 Flow
	TimeFlowStart        uint64                     `protobuf:"varint,40,opt,name=TimeFlowStart,proto3" json:"TimeFlowStart,omitempty"`
	TimeFlowEnd          uint64                     `protobuf:"varint,41,opt,name=TimeFlowEnd,proto3" json:"TimeFlowEnd,omitempty"`
	Direction            FlowMessage_DirectionType  `protobuf:"varint,90,opt,name=Direction,proto3,enum=flowmessageenriched.FlowMessage_DirectionType" json:"Direction,omitempty"`
	Cid                  uint32                     `protobuf:"varint,91,opt,name=Cid,proto3" json:"Cid,omitempty"`
	Normalized           FlowMessage_NormalizedType `` /* 127-byte string literal not displayed */
	SrcIfName            string                     `protobuf:"bytes,93,opt,name=SrcIfName,proto3" json:"SrcIfName,omitempty"`
	SrcIfDesc            string                     `protobuf:"bytes,94,opt,name=SrcIfDesc,proto3" json:"SrcIfDesc,omitempty"`
	SrcIfSpeed           uint32                     `protobuf:"varint,95,opt,name=SrcIfSpeed,proto3" json:"SrcIfSpeed,omitempty"`
	DstIfName            string                     `protobuf:"bytes,96,opt,name=DstIfName,proto3" json:"DstIfName,omitempty"`
	DstIfDesc            string                     `protobuf:"bytes,97,opt,name=DstIfDesc,proto3" json:"DstIfDesc,omitempty"`
	DstIfSpeed           uint32                     `protobuf:"varint,98,opt,name=DstIfSpeed,proto3" json:"DstIfSpeed,omitempty"`
	Peer                 string                     `protobuf:"bytes,99,opt,name=Peer,proto3" json:"Peer,omitempty"`
	RemoteCountry        string                     `protobuf:"bytes,100,opt,name=RemoteCountry,proto3" json:"RemoteCountry,omitempty"`
	ProtoName            string                     `protobuf:"bytes,101,opt,name=ProtoName,proto3" json:"ProtoName,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
	XXX_unrecognized     []byte                     `json:"-"`
	XXX_sizecache        int32                      `json:"-"`
}

Flow Message needs to stay compatible to goflow's default protobuf -> never edit record id's, only ever append

func (*FlowMessage) Descriptor

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

func (*FlowMessage) GetBytes

func (m *FlowMessage) GetBytes() uint64

func (*FlowMessage) GetCid

func (m *FlowMessage) GetCid() uint32

func (*FlowMessage) GetDirection

func (m *FlowMessage) GetDirection() FlowMessage_DirectionType

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

func (m *FlowMessage) GetDstIfDesc() string

func (*FlowMessage) GetDstIfName

func (m *FlowMessage) GetDstIfName() string

func (*FlowMessage) GetDstIfSpeed

func (m *FlowMessage) GetDstIfSpeed() 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) GetNormalized

func (m *FlowMessage) GetNormalized() FlowMessage_NormalizedType

func (*FlowMessage) GetPackets

func (m *FlowMessage) GetPackets() uint64

func (*FlowMessage) GetPeer

func (m *FlowMessage) GetPeer() string

func (*FlowMessage) GetProto

func (m *FlowMessage) GetProto() uint32

func (*FlowMessage) GetProtoName

func (m *FlowMessage) GetProtoName() string

func (*FlowMessage) GetRemoteCountry

func (m *FlowMessage) GetRemoteCountry() string

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

func (m *FlowMessage) GetSrcIfDesc() string

func (*FlowMessage) GetSrcIfName

func (m *FlowMessage) GetSrcIfName() string

func (*FlowMessage) GetSrcIfSpeed

func (m *FlowMessage) GetSrcIfSpeed() 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_DirectionType

type FlowMessage_DirectionType int32

Extensions beyond goflow's default protobuf, starting at id 90

const (
	FlowMessage_Unknown  FlowMessage_DirectionType = 0
	FlowMessage_Incoming FlowMessage_DirectionType = 1
	FlowMessage_Outgoing FlowMessage_DirectionType = 2
)

func (FlowMessage_DirectionType) EnumDescriptor

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

func (FlowMessage_DirectionType) String

func (x FlowMessage_DirectionType) String() string

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

type FlowMessage_NormalizedType

type FlowMessage_NormalizedType int32
const (
	FlowMessage_No  FlowMessage_NormalizedType = 0
	FlowMessage_Yes FlowMessage_NormalizedType = 1
)

func (FlowMessage_NormalizedType) EnumDescriptor

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

func (FlowMessage_NormalizedType) String

Jump to

Keyboard shortcuts

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