Documentation
¶
Index ¶
- Constants
- Variables
- func FullDatabaseModel() (model.ClientDBModel, error)
- func Schema() ovsdb.DatabaseSchema
- type AutoAttach
- type Bridge
- type BridgeFailMode
- type BridgeProtocols
- type CTTimeoutPolicy
- type CTTimeoutPolicyTimeouts
- type CTZone
- type Controller
- type ControllerConnectionMode
- type ControllerRole
- type ControllerType
- type Datapath
- type FlowSampleCollectorSet
- type FlowTable
- type FlowTableOverflowPolicy
- type IPFIX
- type Interface
- type InterfaceAdminState
- type InterfaceCFMRemoteOpstate
- type InterfaceDuplex
- type InterfaceLinkState
- type Manager
- type ManagerConnectionMode
- type Mirror
- type NetFlow
- type OpenvSwitch
- type Port
- type PortBondMode
- type PortLACP
- type PortVLANMode
- type QoS
- type Queue
- type SFlow
- type SSL
Constants ¶
const AutoAttachTable = "AutoAttach"
const BridgeTable = "Bridge"
const CTTimeoutPolicyTable = "CT_Timeout_Policy"
const CTZoneTable = "CT_Zone"
const ControllerTable = "Controller"
const DatapathTable = "Datapath"
const FlowSampleCollectorSetTable = "Flow_Sample_Collector_Set"
const FlowTableTable = "Flow_Table"
const IPFIXTable = "IPFIX"
const InterfaceTable = "Interface"
const ManagerTable = "Manager"
const MirrorTable = "Mirror"
const NetFlowTable = "NetFlow"
const OpenvSwitchTable = "Open_vSwitch"
const PortTable = "Port"
const QoSTable = "QoS"
const QueueTable = "Queue"
const SFlowTable = "sFlow"
const SSLTable = "SSL"
Variables ¶
var ( BridgeFailModeSecure BridgeFailMode = "secure" BridgeFailModeStandalone BridgeFailMode = "standalone" BridgeProtocolsOpenflow10 BridgeProtocols = "OpenFlow10" BridgeProtocolsOpenflow11 BridgeProtocols = "OpenFlow11" BridgeProtocolsOpenflow12 BridgeProtocols = "OpenFlow12" BridgeProtocolsOpenflow13 BridgeProtocols = "OpenFlow13" BridgeProtocolsOpenflow14 BridgeProtocols = "OpenFlow14" BridgeProtocolsOpenflow15 BridgeProtocols = "OpenFlow15" )
var ( ControllerConnectionModeInBand ControllerConnectionMode = "in-band" ControllerConnectionModeOutOfBand ControllerConnectionMode = "out-of-band" ControllerRoleMaster ControllerRole = "master" ControllerRoleOther ControllerRole = "other" ControllerRoleSlave ControllerRole = "slave" ControllerTypePrimary ControllerType = "primary" ControllerTypeService ControllerType = "service" )
var ( InterfaceAdminStateDown InterfaceAdminState = "down" InterfaceAdminStateUp InterfaceAdminState = "up" InterfaceCFMRemoteOpstateDown InterfaceCFMRemoteOpstate = "down" InterfaceCFMRemoteOpstateUp InterfaceCFMRemoteOpstate = "up" InterfaceDuplexFull InterfaceDuplex = "full" InterfaceDuplexHalf InterfaceDuplex = "half" InterfaceLinkStateDown InterfaceLinkState = "down" InterfaceLinkStateUp InterfaceLinkState = "up" )
var ( PortBondModeActiveBackup PortBondMode = "active-backup" PortBondModeBalanceSLB PortBondMode = "balance-slb" PortBondModeBalanceTCP PortBondMode = "balance-tcp" PortLACPActive PortLACP = "active" PortLACPOff PortLACP = "off" PortLACPPassive PortLACP = "passive" PortVLANModeAccess PortVLANMode = "access" PortVLANModeDot1qTunnel PortVLANMode = "dot1q-tunnel" PortVLANModeNativeTagged PortVLANMode = "native-tagged" PortVLANModeNativeUntagged PortVLANMode = "native-untagged" PortVLANModeTrunk PortVLANMode = "trunk" )
Functions ¶
func FullDatabaseModel ¶
func FullDatabaseModel() (model.ClientDBModel, error)
FullDatabaseModel returns the DatabaseModel object to be used in libovsdb
func Schema ¶
func Schema() ovsdb.DatabaseSchema
Types ¶
type AutoAttach ¶
type AutoAttach struct {
UUID string `ovsdb:"_uuid"`
Mappings map[int]int `ovsdb:"mappings"`
SystemDescription string `ovsdb:"system_description"`
SystemName string `ovsdb:"system_name"`
}
AutoAttach defines an object in AutoAttach table
type Bridge ¶
type Bridge struct {
UUID string `ovsdb:"_uuid"`
AutoAttach *string `ovsdb:"auto_attach"`
Controller []string `ovsdb:"controller"`
DatapathID *string `ovsdb:"datapath_id"`
DatapathType string `ovsdb:"datapath_type"`
DatapathVersion string `ovsdb:"datapath_version"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
FailMode *BridgeFailMode `ovsdb:"fail_mode"`
FloodVLANs []int `ovsdb:"flood_vlans"`
FlowTables map[int]string `ovsdb:"flow_tables"`
IPFIX *string `ovsdb:"ipfix"`
McastSnoopingEnable bool `ovsdb:"mcast_snooping_enable"`
Mirrors []string `ovsdb:"mirrors"`
Name string `ovsdb:"name"`
Netflow *string `ovsdb:"netflow"`
OtherConfig map[string]string `ovsdb:"other_config"`
Ports []string `ovsdb:"ports"`
Protocols []BridgeProtocols `ovsdb:"protocols"`
RSTPEnable bool `ovsdb:"rstp_enable"`
RSTPStatus map[string]string `ovsdb:"rstp_status"`
Sflow *string `ovsdb:"sflow"`
Status map[string]string `ovsdb:"status"`
STPEnable bool `ovsdb:"stp_enable"`
}
Bridge defines an object in Bridge table
type BridgeFailMode ¶
type BridgeFailMode = string
type BridgeProtocols ¶
type BridgeProtocols = string
type CTTimeoutPolicy ¶
type CTTimeoutPolicy struct {
UUID string `ovsdb:"_uuid"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Timeouts map[string]int `ovsdb:"timeouts"`
}
CTTimeoutPolicy defines an object in CT_Timeout_Policy table
type CTTimeoutPolicyTimeouts ¶
type CTTimeoutPolicyTimeouts = string
var ( CTTimeoutPolicyTimeoutsICMPFirst CTTimeoutPolicyTimeouts = "icmp_first" CTTimeoutPolicyTimeoutsICMPReply CTTimeoutPolicyTimeouts = "icmp_reply" CTTimeoutPolicyTimeoutsTCPClose CTTimeoutPolicyTimeouts = "tcp_close" CTTimeoutPolicyTimeoutsTCPCloseWait CTTimeoutPolicyTimeouts = "tcp_close_wait" CTTimeoutPolicyTimeoutsTCPEstablished CTTimeoutPolicyTimeouts = "tcp_established" CTTimeoutPolicyTimeoutsTCPFinWait CTTimeoutPolicyTimeouts = "tcp_fin_wait" CTTimeoutPolicyTimeoutsTCPLastAck CTTimeoutPolicyTimeouts = "tcp_last_ack" CTTimeoutPolicyTimeoutsTCPRetransmit CTTimeoutPolicyTimeouts = "tcp_retransmit" CTTimeoutPolicyTimeoutsTCPSynRecv CTTimeoutPolicyTimeouts = "tcp_syn_recv" CTTimeoutPolicyTimeoutsTCPSynSent CTTimeoutPolicyTimeouts = "tcp_syn_sent" CTTimeoutPolicyTimeoutsTCPSynSent2 CTTimeoutPolicyTimeouts = "tcp_syn_sent2" CTTimeoutPolicyTimeoutsTCPTimeWait CTTimeoutPolicyTimeouts = "tcp_time_wait" CTTimeoutPolicyTimeoutsTCPUnack CTTimeoutPolicyTimeouts = "tcp_unack" CTTimeoutPolicyTimeoutsUDPFirst CTTimeoutPolicyTimeouts = "udp_first" CTTimeoutPolicyTimeoutsUDPMultiple CTTimeoutPolicyTimeouts = "udp_multiple" CTTimeoutPolicyTimeoutsUDPSingle CTTimeoutPolicyTimeouts = "udp_single" )
type CTZone ¶
type CTZone struct {
UUID string `ovsdb:"_uuid"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Limit *int `ovsdb:"limit"`
TimeoutPolicy *string `ovsdb:"timeout_policy"`
}
CTZone defines an object in CT_Zone table
type Controller ¶
type Controller struct {
UUID string `ovsdb:"_uuid"`
ConnectionMode *ControllerConnectionMode `ovsdb:"connection_mode"`
ControllerBurstLimit *int `ovsdb:"controller_burst_limit"`
ControllerQueueSize *int `ovsdb:"controller_queue_size"`
ControllerRateLimit *int `ovsdb:"controller_rate_limit"`
EnableAsyncMessages *bool `ovsdb:"enable_async_messages"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
InactivityProbe *int `ovsdb:"inactivity_probe"`
IsConnected bool `ovsdb:"is_connected"`
LocalGateway *string `ovsdb:"local_gateway"`
LocalIP *string `ovsdb:"local_ip"`
LocalNetmask *string `ovsdb:"local_netmask"`
MaxBackoff *int `ovsdb:"max_backoff"`
OtherConfig map[string]string `ovsdb:"other_config"`
Role *ControllerRole `ovsdb:"role"`
Status map[string]string `ovsdb:"status"`
Target string `ovsdb:"target"`
Type *ControllerType `ovsdb:"type"`
}
Controller defines an object in Controller table
type ControllerConnectionMode ¶
type ControllerConnectionMode = string
type ControllerRole ¶
type ControllerRole = string
type ControllerType ¶
type ControllerType = string
type Datapath ¶
type Datapath struct {
UUID string `ovsdb:"_uuid"`
Capabilities map[string]string `ovsdb:"capabilities"`
CTZoneDefaultLimit *int `ovsdb:"ct_zone_default_limit"`
CTZones map[int]string `ovsdb:"ct_zones"`
DatapathVersion string `ovsdb:"datapath_version"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
}
Datapath defines an object in Datapath table
type FlowSampleCollectorSet ¶
type FlowSampleCollectorSet struct {
UUID string `ovsdb:"_uuid"`
Bridge string `ovsdb:"bridge"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
ID int `ovsdb:"id"`
IPFIX *string `ovsdb:"ipfix"`
}
FlowSampleCollectorSet defines an object in Flow_Sample_Collector_Set table
type FlowTable ¶
type FlowTable struct {
UUID string `ovsdb:"_uuid"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
FlowLimit *int `ovsdb:"flow_limit"`
Groups []string `ovsdb:"groups"`
Name *string `ovsdb:"name"`
OverflowPolicy *FlowTableOverflowPolicy `ovsdb:"overflow_policy"`
Prefixes []string `ovsdb:"prefixes"`
}
FlowTable defines an object in Flow_Table table
type FlowTableOverflowPolicy ¶
type FlowTableOverflowPolicy = string
var ( FlowTableOverflowPolicyEvict FlowTableOverflowPolicy = "evict" FlowTableOverflowPolicyRefuse FlowTableOverflowPolicy = "refuse" )
type IPFIX ¶
type IPFIX struct {
UUID string `ovsdb:"_uuid"`
CacheActiveTimeout *int `ovsdb:"cache_active_timeout"`
CacheMaxFlows *int `ovsdb:"cache_max_flows"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
ObsDomainID *int `ovsdb:"obs_domain_id"`
ObsPointID *int `ovsdb:"obs_point_id"`
OtherConfig map[string]string `ovsdb:"other_config"`
Sampling *int `ovsdb:"sampling"`
StatsInterval *int `ovsdb:"stats_interval"`
Targets []string `ovsdb:"targets"`
TemplateInterval *int `ovsdb:"template_interval"`
}
IPFIX defines an object in IPFIX table
type Interface ¶
type Interface struct {
UUID string `ovsdb:"_uuid"`
AdminState *InterfaceAdminState `ovsdb:"admin_state"`
BFD map[string]string `ovsdb:"bfd"`
BFDStatus map[string]string `ovsdb:"bfd_status"`
CFMFault *bool `ovsdb:"cfm_fault"`
CFMFaultStatus []string `ovsdb:"cfm_fault_status"`
CFMFlapCount *int `ovsdb:"cfm_flap_count"`
CFMHealth *int `ovsdb:"cfm_health"`
CFMMpid *int `ovsdb:"cfm_mpid"`
CFMRemoteMpids []int `ovsdb:"cfm_remote_mpids"`
CFMRemoteOpstate *InterfaceCFMRemoteOpstate `ovsdb:"cfm_remote_opstate"`
Duplex *InterfaceDuplex `ovsdb:"duplex"`
Error *string `ovsdb:"error"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Ifindex *int `ovsdb:"ifindex"`
IngressPolicingBurst int `ovsdb:"ingress_policing_burst"`
IngressPolicingKpktsBurst int `ovsdb:"ingress_policing_kpkts_burst"`
IngressPolicingKpktsRate int `ovsdb:"ingress_policing_kpkts_rate"`
IngressPolicingRate int `ovsdb:"ingress_policing_rate"`
LACPCurrent *bool `ovsdb:"lacp_current"`
LinkResets *int `ovsdb:"link_resets"`
LinkSpeed *int `ovsdb:"link_speed"`
LinkState *InterfaceLinkState `ovsdb:"link_state"`
LLDP map[string]string `ovsdb:"lldp"`
MAC *string `ovsdb:"mac"`
MACInUse *string `ovsdb:"mac_in_use"`
MTU *int `ovsdb:"mtu"`
MTURequest *int `ovsdb:"mtu_request"`
Name string `ovsdb:"name"`
Ofport *int `ovsdb:"ofport"`
OfportRequest *int `ovsdb:"ofport_request"`
Options map[string]string `ovsdb:"options"`
OtherConfig map[string]string `ovsdb:"other_config"`
Statistics map[string]int `ovsdb:"statistics"`
Status map[string]string `ovsdb:"status"`
Type string `ovsdb:"type"`
}
Interface defines an object in Interface table
type InterfaceAdminState ¶
type InterfaceAdminState = string
type InterfaceCFMRemoteOpstate ¶
type InterfaceCFMRemoteOpstate = string
type InterfaceDuplex ¶
type InterfaceDuplex = string
type InterfaceLinkState ¶
type InterfaceLinkState = string
type Manager ¶
type Manager struct {
UUID string `ovsdb:"_uuid"`
ConnectionMode *ManagerConnectionMode `ovsdb:"connection_mode"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
InactivityProbe *int `ovsdb:"inactivity_probe"`
IsConnected bool `ovsdb:"is_connected"`
MaxBackoff *int `ovsdb:"max_backoff"`
OtherConfig map[string]string `ovsdb:"other_config"`
Status map[string]string `ovsdb:"status"`
Target string `ovsdb:"target"`
}
Manager defines an object in Manager table
type ManagerConnectionMode ¶
type ManagerConnectionMode = string
var ( ManagerConnectionModeInBand ManagerConnectionMode = "in-band" ManagerConnectionModeOutOfBand ManagerConnectionMode = "out-of-band" )
type Mirror ¶
type Mirror struct {
UUID string `ovsdb:"_uuid"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Name string `ovsdb:"name"`
OutputPort *string `ovsdb:"output_port"`
OutputVLAN *int `ovsdb:"output_vlan"`
SelectAll bool `ovsdb:"select_all"`
SelectDstPort []string `ovsdb:"select_dst_port"`
SelectSrcPort []string `ovsdb:"select_src_port"`
SelectVLAN []int `ovsdb:"select_vlan"`
Snaplen *int `ovsdb:"snaplen"`
Statistics map[string]int `ovsdb:"statistics"`
}
Mirror defines an object in Mirror table
type NetFlow ¶
type NetFlow struct {
UUID string `ovsdb:"_uuid"`
ActiveTimeout int `ovsdb:"active_timeout"`
AddIDToInterface bool `ovsdb:"add_id_to_interface"`
EngineID *int `ovsdb:"engine_id"`
EngineType *int `ovsdb:"engine_type"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Targets []string `ovsdb:"targets"`
}
NetFlow defines an object in NetFlow table
type OpenvSwitch ¶
type OpenvSwitch struct {
UUID string `ovsdb:"_uuid"`
Bridges []string `ovsdb:"bridges"`
CurCfg int `ovsdb:"cur_cfg"`
DatapathTypes []string `ovsdb:"datapath_types"`
Datapaths map[string]string `ovsdb:"datapaths"`
DbVersion *string `ovsdb:"db_version"`
DocaInitialized bool `ovsdb:"doca_initialized"`
DocaVersion *string `ovsdb:"doca_version"`
DpdkInitialized bool `ovsdb:"dpdk_initialized"`
DpdkVersion *string `ovsdb:"dpdk_version"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
IfaceTypes []string `ovsdb:"iface_types"`
ManagerOptions []string `ovsdb:"manager_options"`
NextCfg int `ovsdb:"next_cfg"`
OtherConfig map[string]string `ovsdb:"other_config"`
OVSVersion *string `ovsdb:"ovs_version"`
SSL *string `ovsdb:"ssl"`
Statistics map[string]string `ovsdb:"statistics"`
SystemType *string `ovsdb:"system_type"`
SystemVersion *string `ovsdb:"system_version"`
}
OpenvSwitch defines an object in Open_vSwitch table
type Port ¶
type Port struct {
UUID string `ovsdb:"_uuid"`
BondActiveSlave *string `ovsdb:"bond_active_slave"`
BondDowndelay int `ovsdb:"bond_downdelay"`
BondFakeIface bool `ovsdb:"bond_fake_iface"`
BondMode *PortBondMode `ovsdb:"bond_mode"`
BondUpdelay int `ovsdb:"bond_updelay"`
CVLANs []int `ovsdb:"cvlans"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
FakeBridge bool `ovsdb:"fake_bridge"`
Interfaces []string `ovsdb:"interfaces"`
LACP *PortLACP `ovsdb:"lacp"`
MAC *string `ovsdb:"mac"`
Name string `ovsdb:"name"`
OtherConfig map[string]string `ovsdb:"other_config"`
Protected bool `ovsdb:"protected"`
QOS *string `ovsdb:"qos"`
RSTPStatistics map[string]int `ovsdb:"rstp_statistics"`
RSTPStatus map[string]string `ovsdb:"rstp_status"`
Statistics map[string]int `ovsdb:"statistics"`
Status map[string]string `ovsdb:"status"`
Tag *int `ovsdb:"tag"`
Trunks []int `ovsdb:"trunks"`
VLANMode *PortVLANMode `ovsdb:"vlan_mode"`
}
Port defines an object in Port table
type PortBondMode ¶
type PortBondMode = string
type PortVLANMode ¶
type PortVLANMode = string
type QoS ¶
type QoS struct {
UUID string `ovsdb:"_uuid"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
OtherConfig map[string]string `ovsdb:"other_config"`
Queues map[int]string `ovsdb:"queues"`
Type string `ovsdb:"type"`
}
QoS defines an object in QoS table
type Queue ¶
type Queue struct {
UUID string `ovsdb:"_uuid"`
DSCP *int `ovsdb:"dscp"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
OtherConfig map[string]string `ovsdb:"other_config"`
}
Queue defines an object in Queue table
type SFlow ¶
type SFlow struct {
UUID string `ovsdb:"_uuid"`
Agent *string `ovsdb:"agent"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
Header *int `ovsdb:"header"`
Polling *int `ovsdb:"polling"`
Sampling *int `ovsdb:"sampling"`
Targets []string `ovsdb:"targets"`
}
SFlow defines an object in sFlow table
type SSL ¶
type SSL struct {
UUID string `ovsdb:"_uuid"`
BootstrapCaCert bool `ovsdb:"bootstrap_ca_cert"`
CaCert string `ovsdb:"ca_cert"`
Certificate string `ovsdb:"certificate"`
ExternalIDs map[string]string `ovsdb:"external_ids"`
PrivateKey string `ovsdb:"private_key"`
}
SSL defines an object in SSL table