Documentation ¶
Index ¶
- type AFPacketHandle
- type FlowProbe
- type FlowProbeBundle
- type FlowProbeInterface
- type GoPacketProbe
- type GoPacketProbesHandler
- type OvsSFlowProbe
- type OvsSFlowProbesHandler
- func (o *OvsSFlowProbesHandler) RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error
- func (o *OvsSFlowProbesHandler) RegisterProbeOnBridge(bridgeUUID string, tid string, ft *flow.Table, bpfFilter string) error
- func (o *OvsSFlowProbesHandler) Start()
- func (o *OvsSFlowProbesHandler) Stop()
- func (o *OvsSFlowProbesHandler) UnregisterProbe(n *graph.Node) error
- func (o *OvsSFlowProbesHandler) UnregisterSFlowProbeFromBridge(bridgeUUID string) error
- type PcapSocketProbe
- type PcapSocketProbeHandler
- type SFlowProbesHandler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AFPacketHandle ¶
type AFPacketHandle struct {
// contains filtered or unexported fields
}
AFPacketHandle describes a AF network kernel packets
func NewAFPacketHandle ¶
func NewAFPacketHandle(ifName string, snaplen int32) (*AFPacketHandle, error)
NewAFPacketHandle creates a new network AF packet probe
func (*AFPacketHandle) ReadPacketData ¶
func (h *AFPacketHandle) ReadPacketData() ([]byte, gopacket.CaptureInfo, error)
ReadPacketData reads one packet
type FlowProbe ¶
type FlowProbe struct {
// contains filtered or unexported fields
}
FlowProbe link the pool of client and probes
func (*FlowProbe) AsyncFlowPipeline ¶
AsyncFlowPipeline run the flow pipeline
func (*FlowProbe) RegisterProbe ¶
RegisterProbe a probe
type FlowProbeBundle ¶
type FlowProbeBundle struct { probe.ProbeBundle Graph *graph.Graph FlowTableAllocator *flow.TableAllocator }
FlowProbeBundle describes a flow probes bundle
func NewFlowProbeBundleFromConfig ¶
func NewFlowProbeBundleFromConfig(tb *probe.ProbeBundle, g *graph.Graph, fta *flow.TableAllocator, fcpool *analyzer.FlowClientPool) *FlowProbeBundle
NewFlowProbeBundleFromConfig creates a new flow probes bundle from configuration valid flow probes are : pcapsocket, ovsflow, gopacket, sflow
func (*FlowProbeBundle) UnregisterAllProbes ¶
func (fpb *FlowProbeBundle) UnregisterAllProbes()
UnregisterAllProbes unregisters all registered probes
type FlowProbeInterface ¶
type FlowProbeInterface interface { probe.Probe RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error UnregisterProbe(n *graph.Node) error }
FlowProbeInterface defines flow probe mechanism
type GoPacketProbe ¶
type GoPacketProbe struct { NodeTID string // contains filtered or unexported fields }
GoPacketProbe describes a new probe that store packets from gopacket pcap library in a flowtable
type GoPacketProbesHandler ¶
type GoPacketProbesHandler struct {
// contains filtered or unexported fields
}
GoPacketProbesHandler describes a flow probe handle in the graph
func NewGoPacketProbesHandler ¶
func NewGoPacketProbesHandler(g *graph.Graph) (*GoPacketProbesHandler, error)
NewGoPacketProbesHandler creates a new gopacket probe in the graph
func (*GoPacketProbesHandler) RegisterProbe ¶
func (p *GoPacketProbesHandler) RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error
RegisterProbe registers a gopacket probe
func (*GoPacketProbesHandler) UnregisterProbe ¶
func (p *GoPacketProbesHandler) UnregisterProbe(n *graph.Node) error
UnregisterProbe unregisters gopacket probe
type OvsSFlowProbe ¶
type OvsSFlowProbe struct { ID string Interface string Target string HeaderSize uint32 Sampling uint32 Polling uint32 NodeTID string }
OvsSFlowProbe describes a SFlow probe from OVS switch
type OvsSFlowProbesHandler ¶
type OvsSFlowProbesHandler struct { FlowProbe Graph *graph.Graph // contains filtered or unexported fields }
OvsSFlowProbesHandler describes a flow probe in running in the graph
func NewOvsSFlowProbesHandler ¶
func NewOvsSFlowProbesHandler(tb *probe.ProbeBundle, g *graph.Graph) (*OvsSFlowProbesHandler, error)
NewOvsSFlowProbesHandler creates a new OVS SFlow porbes
func (*OvsSFlowProbesHandler) RegisterProbe ¶
func (o *OvsSFlowProbesHandler) RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error
RegisterProbe registers a probe on a graph node
func (*OvsSFlowProbesHandler) RegisterProbeOnBridge ¶
func (o *OvsSFlowProbesHandler) RegisterProbeOnBridge(bridgeUUID string, tid string, ft *flow.Table, bpfFilter string) error
RegisterProbeOnBridge registers a new probe on the OVS bridge
func (*OvsSFlowProbesHandler) UnregisterProbe ¶
func (o *OvsSFlowProbesHandler) UnregisterProbe(n *graph.Node) error
UnregisterProbe at the graph node
func (*OvsSFlowProbesHandler) UnregisterSFlowProbeFromBridge ¶
func (o *OvsSFlowProbesHandler) UnregisterSFlowProbeFromBridge(bridgeUUID string) error
UnregisterSFlowProbeFromBridge unregisters a flow probe from the bridge selected by UUID
type PcapSocketProbe ¶
type PcapSocketProbe struct {
// contains filtered or unexported fields
}
PcapSocketProbe describes a TCP packet listener that inject packets in a flowtable
type PcapSocketProbeHandler ¶
type PcapSocketProbeHandler struct {
// contains filtered or unexported fields
}
PcapSocketProbeHandler describes a Pcap socket probe in the graph
func NewPcapSocketProbeHandler ¶
func NewPcapSocketProbeHandler(g *graph.Graph) (*PcapSocketProbeHandler, error)
NewPcapSocketProbeHandler creates a new pcap socket probe
func (*PcapSocketProbeHandler) RegisterProbe ¶
func (p *PcapSocketProbeHandler) RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error
RegisterProbe registers a new probe in the graph
func (*PcapSocketProbeHandler) UnregisterProbe ¶
func (p *PcapSocketProbeHandler) UnregisterProbe(n *graph.Node) error
UnregisterProbe a probe
type SFlowProbesHandler ¶
type SFlowProbesHandler struct { FlowProbe Graph *graph.Graph // contains filtered or unexported fields }
SFlowProbesHandler describes a SFlow probe in the graph
func NewSFlowProbesHandler ¶
func NewSFlowProbesHandler(g *graph.Graph) (*SFlowProbesHandler, error)
NewSFlowProbesHandler creates a new SFlow probe in the graph
func (*SFlowProbesHandler) RegisterProbe ¶
func (d *SFlowProbesHandler) RegisterProbe(n *graph.Node, capture *api.Capture, ft *flow.Table) error
RegisterProbe registers a probe in the graph
func (*SFlowProbesHandler) UnregisterProbe ¶
func (d *SFlowProbesHandler) UnregisterProbe(n *graph.Node) error
UnregisterProbe unregisters a probe from the graph