схема базы данных Open_vSwitch (Open_vSwitch database schema)
Bridge TABLE
Configuration for a bridge within an Open_vSwitch
.
A Bridge
record represents an Ethernet switch with one or more
``ports,'' which are the Port
records pointed to by the Bridge
's
ports
column.
Summary:
Core Features:
name
immutable string (must be unique
within table)
ports
set of Port
s
mirrors
set of Mirror
s
netflow
optional NetFlow
sflow
optional sFlow
ipfix
optional IPFIX
flood_vlans
set of up to 4,096 integers, in
range 0 to 4,095
auto_attach
optional AutoAttach
OpenFlow Configuration:
controller
set of Controller
s
flow_tables
map of integer-Flow_Table
pairs,
key in range 0 to 254
fail_mode
optional string, either secure
or
standalone
datapath_id
optional string
datapath_version
string
other_config : datapath-id
optional string
other_config : dp-desc
optional string
other_config : dp-sn
optional string
other_config : disable-in-band
optional string, either true
or
false
other_config : in-band-queue
optional string, containing an
integer, in range 0 to
4,294,967,295
other_config : controller-queue-size
optional string, containing an
integer, in range 1 to 512
protocols
set of strings, one of OpenFlow10
,
OpenFlow11
, OpenFlow12
, OpenFlow13
,
OpenFlow14
, or OpenFlow15
Spanning Tree Configuration:
STP Configuration:
stp_enable
boolean
other_config : stp-system-id
optional string
other_config : stp-priority
optional string, containing an
integer, in range 0 to 65,535
other_config : stp-hello-time
optional string, containing an
integer, in range 1 to 10
other_config : stp-max-age
optional string, containing an
integer, in range 6 to 40
other_config : stp-forward-delay
optional string, containing an
integer, in range 4 to 30
other_config : mcast-snooping-aging-time
optional string, containing an
integer, at least 1
other_config : mcast-snooping-table-size
optional string, containing an
integer, at least 1
other_config : mcast-snooping-disable-flood-unregistered
optional string, either true
or
false
STP Status:
status : stp_bridge_id
optional string
status : stp_designated_root
optional string
status : stp_root_path_cost
optional string
Rapid Spanning Tree:
RSTP Configuration:
rstp_enable
boolean
other_config : rstp-address
optional string
other_config : rstp-priority
optional string, containing an
integer, in range 0 to 61,440
other_config : rstp-ageing-time
optional string, containing an
integer, in range 10 to 1,000,000
other_config : rstp-force-protocol-version
optional string, containing an
integer
other_config : rstp-max-age
optional string, containing an
integer, in range 6 to 40
other_config : rstp-forward-delay
optional string, containing an
integer, in range 4 to 30
other_config : rstp-transmit-hold-count
optional string, containing an
integer, in range 1 to 10
RSTP Status:
rstp_status : rstp_bridge_id
optional string
rstp_status : rstp_root_id
optional string
rstp_status : rstp_root_path_cost
optional string, containing an
integer, at least 0
rstp_status : rstp_designated_id
optional string
rstp_status : rstp_designated_port_id
optional string
rstp_status : rstp_bridge_port_id
optional string
Multicast Snooping Configuration:
mcast_snooping_enable
boolean
Other Features:
datapath_type
string
external_ids : bridge-id
optional string
external_ids : xs-network-uuids
optional string
other_config : hwaddr
optional string
other_config : forward-bpdu
optional string, either true
or
false
other_config : mac-aging-time
optional string, containing an
integer, at least 1
other_config : mac-table-size
optional string, containing an
integer, at least 1
Common Columns:
other_config
map of string-string pairs
external_ids
map of string-string pairs
Details:
Core Features:
name
: immutable string (must be unique within table)
Bridge identifier. Must be unique among the names of
ports, interfaces, and bridges on a host.
The name must be alphanumeric and must not contain forward
or backward slashes. The name of a bridge is also the name
of an Interface
(and a Port
) within the bridge, so the
restrictions on the name
column in the Interface
table,
particularly on length, also apply to bridge names. Refer
to the documentation for Interface
names for details.
ports
: set of Port
s
Ports included in the bridge.
mirrors
: set of Mirror
s
Port mirroring configuration.
netflow
: optional NetFlow
NetFlow configuration.
sflow
: optional sFlow
sFlow(R) configuration.
ipfix
: optional IPFIX
IPFIX configuration.
flood_vlans
: set of up to 4,096 integers, in range 0 to 4,095
VLAN IDs of VLANs on which MAC address learning should be
disabled, so that packets are flooded instead of being
sent to specific ports that are believed to contain
packets' destination MACs. This should ordinarily be used
to disable MAC learning on VLANs used for mirroring (RSPAN
VLANs). It may also be useful for debugging.
SLB bonding (see the bond_mode
column in the Port
table)
is incompatible with flood_vlans
. Consider using another
bonding mode or a different type of mirror instead.
auto_attach
: optional AutoAttach
Auto Attach configuration.
OpenFlow Configuration:
controller
: set of Controller
s
OpenFlow controller set. If unset, then no OpenFlow
controllers will be used.
If there are primary controllers, removing all of them
clears the OpenFlow flow tables, group table, and meter
table. If there are no primary controllers, adding one
also clears these tables. Other changes to the set of
controllers, such as adding or removing a service
controller, adding another primary controller to
supplement an existing primary controller, or removing
only one of two primary controllers, have no effect on
these tables.
flow_tables
: map of integer-Flow_Table
pairs, key in range 0 to
254
Configuration for OpenFlow tables. Each pair maps from an
OpenFlow table ID to configuration for that table.
fail_mode
: optional string, either secure
or standalone
When a controller is configured, it is, ordinarily,
responsible for setting up all flows on the switch. Thus,
if the connection to the controller fails, no new network
connections can be set up. If the connection to the
controller stays down long enough, no packets can pass
through the switch at all. This setting determines the
switch's response to such a situation. It may be set to
one of the following:
standalone
If no message is received from the controller for
three times the inactivity probe interval (see
inactivity_probe
), then Open vSwitch will take over
responsibility for setting up flows. In this mode,
Open vSwitch causes the bridge to act like an
ordinary MAC-learning switch. Open vSwitch will
continue to retry connecting to the controller in
the background and, when the connection succeeds,
it will discontinue its standalone behavior.
secure
Open vSwitch will not set up flows on its own when
the controller connection fails or when no
controllers are defined. The bridge will continue
to retry connecting to any defined controllers
forever.
The default is standalone
if the value is unset, but
future versions of Open vSwitch may change the default.
The standalone
mode can create forwarding loops on a
bridge that has more than one uplink port unless STP is
enabled. To avoid loops on such a bridge, configure secure
mode or enable STP (see stp_enable
).
The fail_mode
setting applies only to primary controllers.
When more than one primary controller is configured,
fail_mode
is considered only when none of the configured
controllers can be contacted.
Changing fail_mode
when no primary controllers are
configured clears the OpenFlow flow tables, group table,
and meter table.
datapath_id
: optional string
Reports the OpenFlow datapath ID in use. Exactly 16 hex
digits. (Setting this column has no useful effect. Set
other-config:datapath-id
instead.)
datapath_version
: string
Reports the datapath version. This column is maintained
for backwards compatibility. The preferred locatation is
the datapath_id
column of the Datapath
table. The full
documentation for this column is there.
other_config : datapath-id
: optional string
Overrides the default OpenFlow datapath ID, setting it to
the specified value specified in hex. The value must
either have a 0x
prefix or be exactly 16 hex digits long.
May not be all-zero.
other_config : dp-desc
: optional string
Human readable description of datapath. It is a maximum
256 byte-long free-form string to describe the datapath
for debugging purposes, e.g. switch3 in room 3120
. The
value is returned by the switch as a part of reply to
OFPMP_DESC request (ofp_desc). The OpenFlow specification
(e.g. 1.3.5) describes the ofp_desc structure to contaion
"NULL terminated ASCII strings". For the compatibility
reasons no more than 255 ASCII characters should be used.
other_config : dp-sn
: optional string
Serial number. It is a maximum 32 byte-long free-form
string to provide an additional switch identification. The
value is returned by the switch as a part of reply to
OFPMP_DESC request (ofp_desc). Same as mentioned in the
description of other-config:dp-desc
, the string should be
no more than 31 ASCII characters for the compatibility.
other_config : disable-in-band
: optional string, either true
or
false
If set to true
, disable in-band control on the bridge
regardless of controller and manager settings.
other_config : in-band-queue
: optional string, containing an
integer, in range 0 to 4,294,967,295
A queue ID as a nonnegative integer. This sets the
OpenFlow queue ID that will be used by flows set up by in-
band control on this bridge. If unset, or if the port used
by an in-band control flow does not have QoS configured,
or if the port does not have a queue with the specified
ID, the default queue is used instead.
other_config : controller-queue-size
: optional string, containing
an integer, in range 1 to 512
This sets the maximum size of the queue of packets that
need to be sent to the OpenFlow management controller. The
value must be less than 512. If not specified the queue
size is limited to 100 packets by default. Note:
increasing the queue size might have a negative impact on
latency.
protocols
: set of strings, one of OpenFlow10
, OpenFlow11
,
OpenFlow12
, OpenFlow13
, OpenFlow14
, or OpenFlow15
List of OpenFlow protocols that may be used when
negotiating a connection with a controller. OpenFlow 1.0,
1.1, 1.2, 1.3, 1.4, and 1.5 are enabled by default if this
column is empty.
Spanning Tree Configuration:
The IEEE 802.1D Spanning Tree Protocol (STP) is a network
protocol that ensures loop-free topologies. It allows redundant
links to be included in the network to provide automatic backup
paths if the active links fails.
These settings configure the slower-to-converge but still widely
supported version of Spanning Tree Protocol, sometimes known as
802.1D-1998. Open vSwitch also supports the newer Rapid Spanning
Tree Protocol (RSTP), documented later in the section titled
Rapid Spanning Tree Configuration
.
STP Configuration:
stp_enable
: boolean
Enable spanning tree on the bridge. By default, STP is
disabled on bridges. Bond, internal, and mirror ports are
not supported and will not participate in the spanning
tree.
STP and RSTP are mutually exclusive. If both are enabled,
RSTP will be used.
other_config : stp-system-id
: optional string
The bridge's STP identifier (the lower 48 bits of the
bridge-id) in the form xx:xx:xx:xx:xx:xx. By default, the
identifier is the MAC address of the bridge.
other_config : stp-priority
: optional string, containing an
integer, in range 0 to 65,535
The bridge's relative priority value for determining the
root bridge (the upper 16 bits of the bridge-id). A bridge
with the lowest bridge-id is elected the root. By default,
the priority is 0x8000.
other_config : stp-hello-time
: optional string, containing an
integer, in range 1 to 10
The interval between transmissions of hello messages by
designated ports, in seconds. By default the hello
interval is 2 seconds.
other_config : stp-max-age
: optional string, containing an
integer, in range 6 to 40
The maximum age of the information transmitted by the
bridge when it is the root bridge, in seconds. By default,
the maximum age is 20 seconds.
other_config : stp-forward-delay
: optional string, containing an
integer, in range 4 to 30
The delay to wait between transitioning root and
designated ports to forwarding
, in seconds. By default,
the forwarding delay is 15 seconds.
other_config : mcast-snooping-aging-time
: optional string,
containing an integer, at least 1
The maximum number of seconds to retain a multicast
snooping entry for which no packets have been seen. The
default is currently 300 seconds (5 minutes). The value,
if specified, is forced into a reasonable range, currently
15 to 3600 seconds.
other_config : mcast-snooping-table-size
: optional string,
containing an integer, at least 1
The maximum number of multicast snooping addresses to
learn. The default is currently 2048. The value, if
specified, is forced into a reasonable range, currently 10
to 1,000,000.
other_config : mcast-snooping-disable-flood-unregistered
:
optional string, either true
or false
If set to false
, unregistered multicast packets are
forwarded to all ports. If set to true
, unregistered
multicast packets are forwarded to ports connected to
multicast routers.
STP Status:
These key-value pairs report the status of 802.1D-1998. They are
present only if STP is enabled (via the stp_enable
column).
status : stp_bridge_id
: optional string
The bridge ID used in spanning tree advertisements, in the
form xxxx.yyyyyyyyyyyy where the xs are the STP priority,
the ys are the STP system ID, and each x and y is a hex
digit.
status : stp_designated_root
: optional string
The designated root for this spanning tree, in the same
form as status:stp_bridge_id
. If this bridge is the root,
this will have the same value as status:stp_bridge_id
,
otherwise it will differ.
status : stp_root_path_cost
: optional string
The path cost of reaching the designated bridge. A lower
number is better. The value is 0 if this bridge is the
root, otherwise it is higher.
Rapid Spanning Tree:
Rapid Spanning Tree Protocol (RSTP), like STP, is a network
protocol that ensures loop-free topologies. RSTP superseded STP
with the publication of 802.1D-2004. Compared to STP, RSTP
converges more quickly and recovers more quickly from failures.
RSTP Configuration:
rstp_enable
: boolean
Enable Rapid Spanning Tree on the bridge. By default, RSTP
is disabled on bridges. Bond, internal, and mirror ports
are not supported and will not participate in the spanning
tree.
STP and RSTP are mutually exclusive. If both are enabled,
RSTP will be used.
other_config : rstp-address
: optional string
The bridge's RSTP address (the lower 48 bits of the
bridge-id) in the form xx:xx:xx:xx:xx:xx. By default, the
address is the MAC address of the bridge.
other_config : rstp-priority
: optional string, containing an
integer, in range 0 to 61,440
The bridge's relative priority value for determining the
root bridge (the upper 16 bits of the bridge-id). A bridge
with the lowest bridge-id is elected the root. By default,
the priority is 0x8000 (32768). This value needs to be a
multiple of 4096, otherwise it's rounded to the nearest
inferior one.
other_config : rstp-ageing-time
: optional string, containing an
integer, in range 10 to 1,000,000
The Ageing Time parameter for the Bridge. The default
value is 300 seconds.
other_config : rstp-force-protocol-version
: optional string,
containing an integer
The Force Protocol Version parameter for the Bridge. This
can take the value 0 (STP Compatibility mode) or 2 (the
default, normal operation).
other_config : rstp-max-age
: optional string, containing an
integer, in range 6 to 40
The maximum age of the information transmitted by the
Bridge when it is the Root Bridge. The default value is
20.
other_config : rstp-forward-delay
: optional string, containing an
integer, in range 4 to 30
The delay used by STP Bridges to transition Root and
Designated Ports to Forwarding. The default value is 15.
other_config : rstp-transmit-hold-count
: optional string,
containing an integer, in range 1 to 10
The Transmit Hold Count used by the Port Transmit state
machine to limit transmission rate. The default value is
6.
RSTP Status:
These key-value pairs report the status of 802.1D-2004. They are
present only if RSTP is enabled (via the rstp_enable
column).
rstp_status : rstp_bridge_id
: optional string
The bridge ID used in rapid spanning tree advertisements,
in the form x.yyy.zzzzzzzzzzzz where x is the RSTP
priority, the ys are a locally assigned system ID
extension, the zs are the STP system ID, and each x, y, or
z is a hex digit.
rstp_status : rstp_root_id
: optional string
The root of this spanning tree, in the same form as
rstp_status:rstp_bridge_id
. If this bridge is the root,
this will have the same value as
rstp_status:rstp_bridge_id
, otherwise it will differ.
rstp_status : rstp_root_path_cost
: optional string, containing an
integer, at least 0
The path cost of reaching the root. A lower number is
better. The value is 0 if this bridge is the root,
otherwise it is higher.
rstp_status : rstp_designated_id
: optional string
The RSTP designated ID, in the same form as
rstp_status:rstp_bridge_id
.
rstp_status : rstp_designated_port_id
: optional string
The RSTP designated port ID, as a 4-digit hex number.
rstp_status : rstp_bridge_port_id
: optional string
The RSTP bridge port ID, as a 4-digit hex number.
Multicast Snooping Configuration:
Multicast snooping (RFC 4541) monitors the Internet Group
Management Protocol (IGMP) and Multicast Listener Discovery
traffic between hosts and multicast routers. The switch uses what
IGMP and MLD snooping learns to forward multicast traffic only to
interfaces that are connected to interested receivers. Currently
it supports IGMPv1, IGMPv2, IGMPv3, MLDv1 and MLDv2 protocols.
mcast_snooping_enable
: boolean
Enable multicast snooping on the bridge. For now, the
default is disabled.
Other Features:
datapath_type
: string
Name of datapath provider. The kernel datapath has type
system
. The userspace datapath has type netdev
. A manager
may refer to the datapath_types
column of the Open_vSwitch
table for a list of the types accepted by this Open
vSwitch instance.
external_ids : bridge-id
: optional string
A unique identifier of the bridge. On Citrix XenServer
this will commonly be the same as external_ids:xs-network-
uuids
.
external_ids : xs-network-uuids
: optional string
Semicolon-delimited set of universally unique
identifier(s) for the network with which this bridge is
associated on a Citrix XenServer host. The network
identifiers are RFC 4122 UUIDs as displayed by, e.g., xe
network-list
.
other_config : hwaddr
: optional string
An Ethernet address in the form xx:xx:xx:xx:xx:xx to set
the hardware address of the local port and influence the
datapath ID.
other_config : forward-bpdu
: optional string, either true
or
false
Controls forwarding of BPDUs and other network control
frames when NORMAL action is invoked. When this option is
false
or unset, frames with reserved Ethernet addresses
(see table below) will not be forwarded. When this option
is true
, such frames will not be treated specially.
The above general rule has the following exceptions:
• If STP is enabled on the bridge (see the stp_enable
column in the Bridge
table), the bridge processes
all received STP packets and never passes them to
OpenFlow or forwards them. This is true even if STP
is disabled on an individual port.
• If LLDP is enabled on an interface (see the lldp
column in the Interface
table), the interface
processes received LLDP packets and never passes
them to OpenFlow or forwards them.
Set this option to true
if the Open vSwitch bridge
connects different Ethernet networks and is not configured
to participate in STP.
This option affects packets with the following destination
MAC addresses:
01:80:c2:00:00:00
IEEE 802.1D Spanning Tree Protocol (STP).
01:80:c2:00:00:01
IEEE Pause frame.
01:80:c2:00:00:0
x
Other reserved protocols.
00:e0:2b:00:00:00
Extreme Discovery Protocol (EDP).
00:e0:2b:00:00:04
and 00:e0:2b:00:00:06
Ethernet Automatic Protection Switching (EAPS).
01:00:0c:cc:cc:cc
Cisco Discovery Protocol (CDP), VLAN Trunking
Protocol (VTP), Dynamic Trunking Protocol (DTP),
Port Aggregation Protocol (PAgP), and others.
01:00:0c:cc:cc:cd
Cisco Shared Spanning Tree Protocol PVSTP+.
01:00:0c:cd:cd:cd
Cisco STP Uplink Fast.
01:00:0c:00:00:00
Cisco Inter Switch Link.
01:00:0c:cc:cc:c
x
Cisco CFM.
other_config : mac-aging-time
: optional string, containing an
integer, at least 1
The maximum number of seconds to retain a MAC learning
entry for which no packets have been seen. The default is
currently 300 seconds (5 minutes). The value, if
specified, is forced into a reasonable range, currently 15
to 3600 seconds.
A short MAC aging time allows a network to more quickly
detect that a host is no longer connected to a switch
port. However, it also makes it more likely that packets
will be flooded unnecessarily, when they are addressed to
a connected host that rarely transmits packets. To reduce
the incidence of unnecessary flooding, use a MAC aging
time longer than the maximum interval at which a host will
ordinarily transmit packets.
other_config : mac-table-size
: optional string, containing an
integer, at least 1
The maximum number of MAC addresses to learn. The default
is currently 8192. The value, if specified, is forced into
a reasonable range, currently 10 to 1,000,000.
Common Columns:
The overall purpose of these columns is described under Common
Columns
at the beginning of this document.
other_config
: map of string-string pairs
external_ids
: map of string-string pairs