value. May not be all-zero.
</column>
+ <column name="other_config" key="dp-desc">
+ Human readable description of datapath. It it a maximum 256
+ byte-long free-form string to describe the datapath for
+ debugging purposes, e.g. <code>switch3 in room 3120</code>.
+ </column>
+
<column name="other_config" key="disable-in-band"
type='{"type": "boolean"}'>
If set to <code>true</code>, disable in-band control on the bridge
QoS configured, or if the port does not have a queue with the specified
ID, the default queue is used instead.
</column>
+
+ <column name="protocols">
+ List of OpenFlow protocols that may be used when negotiating a
+ connection with a controller. A default value of
+ <code>OpenFlow10</code> will be used if this column is empty.
+ </column>
</group>
<group title="Spanning Tree Configuration">
transmit packets.
</p>
</column>
+
+ <column name="other_config" key="mac-table-size"
+ type='{"type": "integer", "minInteger": 1}'>
+ <p>
+ The maximum number of MAC addresses to learn. The default is
+ currently 2048. The value, if specified, is forced into a reasonable
+ range, currently 10 to 1,000,000.
+ </p>
+ </column>
</group>
<group title="Bridge Status">
information such as destination MAC address, IP address, and TCP
port.
</dd>
-
- <dt><code>stable</code></dt>
- <dd>
- <p>Deprecated and slated for removal in February 2013.</p>
- <p>Attempts to always assign a given flow to the same slave
- consistently. In an effort to maintain stability, no load
- balancing is done. Uses a similar hashing strategy to
- <code>balance-tcp</code>, always taking into account L3 and L4
- fields even if LACP negotiations are unsuccessful. </p>
- <p>Slave selection decisions are made based on <ref table="Interface"
- column="other_config" key="bond-stable-id"/> if set. Otherwise,
- OpenFlow port number is used. Decisions are consistent across all
- <code>ovs-vswitchd</code> instances with equivalent
- <ref table="Interface" column="other_config" key="bond-stable-id"/>
- values.</p>
- </dd>
</dl>
<p>These columns apply only to bonded ports. Their values are
on a host.
</column>
+ <column name="mac_in_use">
+ The MAC address in use by this interface.
+ </column>
+
<column name="mac">
<p>Ethernet address to set for this interface. If unset then the
default MAC address is used:</p>
port number for the OpenFlow ``local port''). If the interface
cannot be added then Open vSwitch sets this column
to -1.</p>
+ <p>When <ref column="ofport_request"/> is not set, Open vSwitch picks
+ an appropriate value for this column and then tries to keep the value
+ constant across restarts.</p>
+ </column>
+
+ <column name="ofport_request">
+ <p>Requested OpenFlow port number for this interface. The port
+ number must be between 1 and 65279, inclusive. Some datapaths
+ cannot satisfy all requests for particular port numbers. When
+ this column is empty or the request cannot be fulfilled, the
+ system will choose a free port. The <ref column="ofport"/>
+ column reports the assigned OpenFlow port number.</p>
+ <p>The port number must be requested in the same transaction
+ that creates the port.</p>
</column>
</group>
<dt><code>gre</code></dt>
<dd>
An Ethernet over RFC 2890 Generic Routing Encapsulation over IPv4
- tunnel. See <ref group="Tunnel Options"/> for information on
- configuring GRE tunnels.
+ tunnel.
</dd>
<dt><code>ipsec_gre</code></dt>
Same as IPSEC_GRE except 64 bit key.
</dd>
- <dt><code>capwap</code></dt>
+ <dt><code>vxlan</code></dt>
+ <dd>
+ <p>
+ An Ethernet tunnel over the experimental, UDP-based VXLAN
+ protocol described at
+ <code>http://tools.ietf.org/html/draft-mahalingam-dutt-dcops-vxlan-03</code>.
+ VXLAN is currently supported only with the Linux kernel datapath
+ with kernel version 2.6.26 or later.
+ </p>
+ <p>
+ As an experimental protocol, VXLAN has no officially assigned UDP
+ port. Open vSwitch currently uses UDP destination port 8472.
+ The source port used for VXLAN traffic varies on a per-flow basis
+ and is in the ephemeral port range.
+ </p>
+ </dd>
+
+ <dt><code>lisp</code></dt>
<dd>
- An Ethernet tunnel over the UDP transport portion of CAPWAP (RFC
- 5415). This allows interoperability with certain switches that do
- not support GRE. Only the tunneling component of the protocol is
- implemented. UDP ports 58881 and 58882 are used as the source and
- destination ports respectively. CAPWAP is currently supported only
+ A layer 3 tunnel over the experimental, UDP-based Locator/ID
+ Separation Protocol (RFC 6830). LISP is currently supported only
with the Linux kernel datapath with kernel version 2.6.26 or later.
</dd>
<p>
These options apply to interfaces with <ref column="type"/> of
<code>gre</code>, <code>ipsec_gre</code>, <code>gre64</code>,
- <code>ipsec_gre64</code>, and <code>capwap</code>.
+ <code>ipsec_gre64</code>, <code>vxlan</code>, and <code>lisp</code>.
</p>
<p>
</p>
<column name="options" key="remote_ip">
- <p>
- Required. The tunnel endpoint. Unicast and multicast endpoints are
- both supported.
- </p>
-
- <p>
- When a multicast endpoint is specified, a routing table lookup occurs
- only when the tunnel is created. Following a routing change, delete
- and then re-create the tunnel to force a new routing table lookup.
- </p>
+ Required. The tunnel endpoint. Only unicast endpoints are supported.
</column>
<column name="options" key="local_ip">
Optional. The destination IP that received packets must match.
- Default is to match all addresses. Must be omitted when <ref
- column="options" key="remote_ip"/> is a multicast address.
+ Default is to match all addresses.
</column>
<column name="options" key="in_key">
key="in_key"/> at all.
</li>
<li>
- A positive 32-bit (for GRE) or 64-bit (for CAPWAP) number. The
- tunnel receives only packets with the specified key.
+ A positive 24-bit (for VXLAN and LISP), 32-bit (for GRE) or 64-bit
+ (for GRE64) number. The tunnel receives only packets with the
+ specified key.
</li>
<li>
The word <code>flow</code>. The tunnel accepts packets with any
key="out_key"/> at all.
</li>
<li>
- A positive 32-bit (for GRE) or 64-bit (for CAPWAP) number. Packets
- sent through the tunnel will have the specified key.
+ A positive 24-bit (for VXLAN and LISP), 32-bit (for GRE) or 64-bit
+ (for GRE64) number. Packets sent through the tunnel will have the
+ specified key.
</li>
<li>
The word <code>flow</code>. Packets sent through the tunnel will
system default, typically 64). Default is the system default TTL.
</column>
- <column name="options" key="df_inherit" type='{"type": "boolean"}'>
- Optional. If enabled, the Don't Fragment bit will be copied from the
- inner IP headers (those of the encapsulated traffic) to the outer
- (tunnel) headers. Default is disabled; set to <code>true</code> to
- enable.
- </column>
-
<column name="options" key="df_default"
type='{"type": "boolean"}'>
- Optional. If enabled, the Don't Fragment bit will be set by default on
- tunnel headers if the <code>df_inherit</code> option is not set, or if
- the encapsulated packet is not IP. Default is enabled; set to
- <code>false</code> to disable.
- </column>
-
- <column name="options" key="pmtud" type='{"type": "boolean"}'>
- Optional. Enable tunnel path MTU discovery. If enabled ``ICMP
- Destination Unreachable - Fragmentation Needed'' messages will be
- generated for IPv4 packets with the DF bit set and IPv6 packets above
- the minimum MTU if the packet size exceeds the path MTU minus the size
- of the tunnel headers. Note that this option causes behavior that is
- typically reserved for routers and therefore is not entirely in
- compliance with the IEEE 802.1D specification for bridges. Default is
- disabled; set to <code>true</code> to enable.
+ Optional. If enabled, the Don't Fragment bit will be set on tunnel
+ outer headers to allow path MTU discovery. Default is enabled; set
+ to <code>false</code> to disable.
</column>
- <group title="Tunnel Options: gre only">
- <p>
- Only <code>gre</code> interfaces support these options.
- </p>
-
- <column name="options" key="header_cache" type='{"type": "boolean"}'>
- Enable caching of tunnel headers and the output path. This can lead
- to a significant performance increase without changing behavior. In
- general it should not be necessary to adjust this setting. However,
- the caching can bypass certain components of the IP stack (such as
- <code>iptables</code>) and it may be useful to disable it if these
- features are required or as a debugging measure. Default is enabled,
- set to <code>false</code> to disable.
- </column>
- </group>
-
<group title="Tunnel Options: gre and ipsec_gre only">
<p>
Only <code>gre</code> and <code>ipsec_gre</code> interfaces support
<column name="status" key="source_ip">
The source IP address used for an IPv4 tunnel end-point, such as
- <code>gre</code> or <code>capwap</code>.
+ <code>gre</code>.
</column>
<column name="status" key="tunnel_egress_iface">
- Egress interface for tunnels. Currently only relevant for GRE and
- CAPWAP tunnels. On Linux systems, this column will show the name of
- the interface which is responsible for routing traffic destined for the
- configured <ref column="options" key="remote_ip"/>. This could be an
- internal interface such as a bridge port.
+ Egress interface for tunnels. Currently only relevant for GRE tunnels
+ On Linux systems, this column will show the name of the interface
+ which is responsible for routing traffic destined for the configured
+ <ref column="options" key="remote_ip"/>. This could be an internal
+ interface such as a bridge port.
</column>
<column name="status" key="tunnel_egress_iface_carrier"
</group>
<group title="Bonding Configuration">
- <column name="other_config" key="bond-stable-id"
- type='{"type": "integer", "minInteger": 1}'>
- Used in <code>stable</code> bond mode to make slave
- selection decisions. Allocating <ref column="other_config"
- key="bond-stable-id"/> values consistently across interfaces
- participating in a bond will guarantee consistent slave selection
- decisions across <code>ovs-vswitchd</code> instances when using
- <code>stable</code> bonding mode.
- </column>
-
<column name="other_config" key="lacp-port-id"
type='{"type": "integer", "minInteger": 1, "maxInteger": 65535}'>
The LACP port ID of this <ref table="Interface"/>. Port IDs are
two different hypervisors. That is, <code>active</code> means that
this <ref column="external_ids" key="iface-id"/> is the active
instance within a single hypervisor, not in a broader scope.
+ There is one exception: some hypervisors support ``migration'' from a
+ given hypervisor to itself (most often for test purposes). During
+ such a ``migration,'' two instances of a single <ref
+ column="external_ids" key="iface-id"/> might both be briefly marked
+ <code>active</code> on a single hypervisor.
</p>
</column>