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 ( BridgeFailModeStandalone BridgeFailMode = "standalone" BridgeFailModeSecure BridgeFailMode = "secure" 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" ControllerRoleOther ControllerRole = "other" ControllerRoleMaster ControllerRole = "master" ControllerRoleSlave ControllerRole = "slave" ControllerTypePrimary ControllerType = "primary" ControllerTypeService ControllerType = "service" )
var ( InterfaceAdminStateUp InterfaceAdminState = "up" InterfaceAdminStateDown InterfaceAdminState = "down" InterfaceCFMRemoteOpstateUp InterfaceCFMRemoteOpstate = "up" InterfaceCFMRemoteOpstateDown InterfaceCFMRemoteOpstate = "down" InterfaceDuplexHalf InterfaceDuplex = "half" InterfaceDuplexFull InterfaceDuplex = "full" InterfaceLinkStateUp InterfaceLinkState = "up" InterfaceLinkStateDown InterfaceLinkState = "down" )
var ( PortBondModeBalanceTCP PortBondMode = "balance-tcp" PortBondModeBalanceSLB PortBondMode = "balance-slb" PortBondModeActiveBackup PortBondMode = "active-backup" PortLACPActive PortLACP = "active" PortLACPPassive PortLACP = "passive" PortLACPOff PortLACP = "off" PortVLANModeTrunk PortVLANMode = "trunk" PortVLANModeAccess PortVLANMode = "access" PortVLANModeNativeTagged PortVLANMode = "native-tagged" PortVLANModeNativeUntagged PortVLANMode = "native-untagged" PortVLANModeDot1qTunnel PortVLANMode = "dot1q-tunnel" )
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 ( CTTimeoutPolicyTimeoutsTCPSynSent CTTimeoutPolicyTimeouts = "tcp_syn_sent" CTTimeoutPolicyTimeoutsTCPSynRecv CTTimeoutPolicyTimeouts = "tcp_syn_recv" CTTimeoutPolicyTimeoutsTCPEstablished CTTimeoutPolicyTimeouts = "tcp_established" CTTimeoutPolicyTimeoutsTCPFinWait CTTimeoutPolicyTimeouts = "tcp_fin_wait" CTTimeoutPolicyTimeoutsTCPCloseWait CTTimeoutPolicyTimeouts = "tcp_close_wait" CTTimeoutPolicyTimeoutsTCPLastAck CTTimeoutPolicyTimeouts = "tcp_last_ack" CTTimeoutPolicyTimeoutsTCPTimeWait CTTimeoutPolicyTimeouts = "tcp_time_wait" CTTimeoutPolicyTimeoutsTCPClose CTTimeoutPolicyTimeouts = "tcp_close" CTTimeoutPolicyTimeoutsTCPSynSent2 CTTimeoutPolicyTimeouts = "tcp_syn_sent2" CTTimeoutPolicyTimeoutsTCPRetransmit CTTimeoutPolicyTimeouts = "tcp_retransmit" CTTimeoutPolicyTimeoutsTCPUnack CTTimeoutPolicyTimeouts = "tcp_unack" CTTimeoutPolicyTimeoutsUDPFirst CTTimeoutPolicyTimeouts = "udp_first" CTTimeoutPolicyTimeoutsUDPSingle CTTimeoutPolicyTimeouts = "udp_single" CTTimeoutPolicyTimeoutsUDPMultiple CTTimeoutPolicyTimeouts = "udp_multiple" CTTimeoutPolicyTimeoutsICMPFirst CTTimeoutPolicyTimeouts = "icmp_first" CTTimeoutPolicyTimeoutsICMPReply CTTimeoutPolicyTimeouts = "icmp_reply" )
type CTZone ¶
type CTZone struct { UUID string `ovsdb:"_uuid"` ExternalIDs map[string]string `ovsdb:"external_ids"` 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"` 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 ( FlowTableOverflowPolicyRefuse FlowTableOverflowPolicy = "refuse" FlowTableOverflowPolicyEvict FlowTableOverflowPolicy = "evict" )
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"` Targets []string `ovsdb:"targets"` }
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"` 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"` 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