X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=vswitchd%2Fvswitch.xml;h=5aec270ad8e3b2721327d5067b85b40e4365e49f;hb=6dc5374435cc25bc4051b27bd52635e609a8872a;hp=4b42ec738d3609999631fa2bb30800f3f1144416;hpb=cc86b1f84b1e2fe1b322a23a2b3b88c0375f2fa1;p=sliver-openvswitch.git diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index 4b42ec738..5aec270ad 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -123,48 +123,45 @@
-- A number of flows as a nonnegative integer. This sets number of - flows at which eviction from the datapath flow table will be - triggered. If there are a large number of flows then increasing this - value to around the number of flows present can result in reduced CPU - usage and packet loss. + The maximum + number of flows allowed in the datapath flow table. Internally OVS + will choose a flow limit which will likely be lower than this number, + based on real time network conditions.
- The default is 2500. Values below 100 will be rounded up to 100. + The default is 200000.
- Specifies userspace behaviour for handling flow misses. This takes - precedence over flow-eviction-threshold. + Specifies the number of threads for software datapaths to use for + handling new flows. The default the number of online CPU cores minus + the number of revalidators.
-
auto
with-facets
without-facets
system
bridges and some
+ netdev
bridges), then the total number of threads is
+ n-handler-threads
times the number of software
+ datapaths.
Specifies the number of threads for software datapaths to use for
- handling new flows. The default is two less than the number of
- online CPU cores (but at least 1).
+ revalidating flows in the datapath. Typically, there is a direct
+ correlation between the number of revalidator threads, and the number
+ of flows allowed in the datapath. The default is the number of cpu
+ cores divided by four plus one. If n-handler-threads
is
+ set, the default changes to the number of cpu cores minus the number
+ of handler threads.
This configuration is per datapath. If you have more than one @@ -568,9 +565,22 @@
OpenFlow10
will be used if this column is empty.
+ + List of OpenFlow protocols that may be used when negotiating + a connection with a controller. OpenFlow 1.0, 1.1, 1.2, and + 1.3 are enabled by default if this column is empty. +
+ +
+ The current implementation of OpenFlow 1.4 support is not safe:
+ ovs-vswitchd
will abort when certain unimplemented
+ features are tested. Thus, for now it is suitable only for
+ experimental use. For this reason, OpenFlow 1.4 is supported only
+ if, in addition to specifying OpenFlow14
in this field,
+ ovs-vswitchd
is invoked with the
+ --enable-of14
option. (When support becomes safe, this
+ option will be removed.)
+
The following modes require the upstream switch to support 802.3ad with
- successful LACP negotiation:
+ successful LACP negotiation. If LACP negotiation fails and
+ other-config:lacp-fallback-ab is true, then active-backup
+ mode is used:
off
if unset.
+ disabled, unless other-config:lacp-fallback-ab is set to true.
+ Defaults to off
if unset.
+ Determines the behavior of openvswitch bond in LACP mode. If
+ the partner switch does not support LACP, setting this option
+ to true
allows openvswitch to fallback to
+ active-backup. If the option is set to false
, the
+ bond will be disabled. In both the cases, once the partner switch
+ is configured to LACP mode, the bond will use LACP.
+
OpenFlow port number for this interface. Unlike most columns, this - column's value should be set only by Open vSwitch itself. Other - clients should set this column to an empty set (the default) when - creating an .
-Open vSwitch populates this column when the port number becomes - known. If the interface is successfully added, - will be set to a number between 1 and 65535 - (generally either in the range 1 to 65279, inclusive, or 65534, the - port number for the OpenFlow ``local port''). If the interface - cannot be added then Open vSwitch sets this column - to -1.
-When is not set, Open vSwitch picks - an appropriate value for this column and then tries to keep the value - constant across restarts.
-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 - column reports the assigned OpenFlow port number.
-The port number must be requested in the same transaction - that creates the port.
-+ When a client adds a new interface, Open vSwitch chooses an OpenFlow + port number for the new port. If the client that adds the port fills + in , then Open vSwitch tries to use its + value as the OpenFlow port number. Otherwise, or if the requested + port number is already in use or cannot be used for another reason, + Open vSwitch automatically assigns a free port number. Regardless of + how the port number was obtained, Open vSwitch then reports in the port number actually assigned. +
+ ++ Open vSwitch limits the port numbers that it automatically assigns to + the range 1 through 32,767, inclusive. Controllers therefore have + free use of ports 32,768 and up. +
+ ++ OpenFlow port number for this interface. Open vSwitch sets this + column's value, so other clients should treat it as read-only. +
+
+ The OpenFlow ``local'' port (OFPP_LOCAL
) is 65,534.
+ The other valid port numbers are in the range 1 to 65,279,
+ inclusive. Value -1 indicates an error adding the interface.
+
+ Requested OpenFlow port number for this interface. +
+ ++ A client should ideally set this column's value in the same + database transaction that it uses to create the interface. Open + vSwitch version 2.1 and later will honor a later request for a + specific port number, althuogh it might confuse some controllers: + OpenFlow does not have a way to announce a port number change, so + Open vSwitch represents it over OpenFlow as a port deletion + followed immediately by a port addition. +
+ ++ If is set or changed to some other + port's automatically assigned port number, Open vSwitch chooses a + new port number for the latter port. +
+lisp
+ A layer 3 tunnel over the experimental, UDP-based Locator/ID + Separation Protocol (RFC 6830). +
++ Only IPv4 and IPv6 packets are supported by the protocol, and + they are sent and received without an Ethernet header. Traffic + to/from LISP ports is expected to be configured explicitly, and + the ports are not intended to participate in learning based + switching. As such, they are always excluded from packet + flooding. +
patch
- BFD, defined in RFC 5880 and RFC 5881, allows point to point - detection of connectivity failures by occasional transmission of - BFD control messages. It is implemented in Open vSwitch to serve - as a more popular and standards compliant alternative to CFM. -
- -- BFD operates by regularly transmitting BFD control messages at a - rate negotiated independently in each direction. Each endpoint - specifies the rate at which it expects to receive control messages, - and the rate at which it's willing to transmit them. Open vSwitch - uses a detection multiplier of three, meaning that an endpoint - which fails to receive BFD control messages for a period of three - times the expected reception rate, will signal a connectivity - fault. In the case of a unidirectional connectivity issue, the - system not receiving BFD control messages will signal the problem - to its peer in the messages it transmits. -
- -- The Open vSwitch implementation of BFD aims to comply faithfully - with the requirements put forth in RFC 5880. Currently, the only - known omission is ``Demand Mode'', which we hope to include in - future. Open vSwitch does not implement the optional - Authentication or ``Echo Mode'' features. -
- -true
BFD is enabled on this
- , otherwise it's disabled. Defaults to
- false
.
- 1000
.
- 100
.
- decay_min_rx
is used to set the min_rx
,
- when there is no obvious incoming data traffic at the interface.
- It cannot be set less than the min_rx
. The decay feature
- is disabled by setting the decay_min_rx
to 0. And the
- feature is reset everytime itself or min_rx
is
- reconfigured.
- forwarding_if_rx
is true the interface will be
- considered capable of packet I/O as long as there is packet
- received at interface. This is important in that when link becomes
- temporarily conjested, consecutive BFD control packets can be lost.
- And the forwarding_if_rx
can prevent link failover by
- detecting non-control packets received at interface.
- cpath_down
to
- true
which may cause the remote BFD session not to
- forward traffic to this . Defaults to
- false
.
- in_key
of zero. Defaults to
- false
.
- 00:23:20:00:00:01
is used.
- UP
.
- + BFD, defined in RFC 5880 and RFC 5881, allows point-to-point + detection of connectivity failures by occasional transmission of + BFD control messages. Open vSwitch implements BFD to serve + as a more popular and standards compliant alternative to CFM. +
-UP
, and the remote system isn't signaling a
- problem such as concatenated path down.
- + BFD operates by regularly transmitting BFD control messages at a rate + negotiated independently in each direction. Each endpoint specifies + the rate at which it expects to receive control messages, and the rate + at which it is willing to transmit them. Open vSwitch uses a detection + multiplier of three, meaning that an endpoint signals a connectivity + fault if three consecutive BFD control messages fail to arrive. In the + case of a unidirectional connectivity issue, the system not receiving + BFD control messages signals the problem to its peer in the messages it + transmits. +
-+ The Open vSwitch implementation of BFD aims to comply faithfully + with RFC 5880 requirements. Open vSwitch does not implement the + optional Authentication or ``Echo Mode'' features. +
-+ A controller sets up key-value pairs in the + column to enable and configure BFD. +
+ +1000
.
+ 100
.
+ 00:23:20:00:00:01
.
+ 169.254.1.0
.
+ 169.254.1.1
.
+ + The switch sets key-value pairs in the + column to report the status of BFD on this interface. When BFD is + not enabled, with , the switch clears + all key-value pairs from . +
+ +UP
.
+ UP
, and the remote
+ system isn't signaling a problem such as concatenated path down.
+ + A Maintenance Point ID (MPID) uniquely identifies each endpoint + within a Maintenance Association. The MPID is used to identify this + endpoint to other Maintenance Points in the MA. Each end of a link + being monitored should have a different MPID. Must be configured to + enable CFM on this . +
++ According to the 802.1ag specification, MPIDs can only range between + [1, 8191]. However, extended mode (see ) supports eight byte MPIDs. +
+cfm_interval
configuration parameter by breaking wire
- compatibility with 802.1ag compliant implementations. Defaults to
- false
.
+ compatibility with 802.1ag compliant implementations. And extended
+ mode allows eight byte MPIDs. Defaults to false
.
+ This string set specifies which fields should be used for + address prefix tracking. Prefix tracking allows the + classifier to skip rules with longer than necessary prefixes, + resulting in better wildcarding for datapath flows. +
++ Prefix tracking may be beneficial when a flow table contains + matches on IP address fields with different prefix lengths. + For example, when a flow table contains IP address matches on + both full addresses and proper prefixes, the full address + matches will typically cause the datapath flow to un-wildcard + the whole address field (depending on flow entry priorities). + In this case each packet with a different address gets handed + to the userspace for flow processing and generates its own + datapath flow. With prefix tracking enabled for the address + field in question packets with addresses matching shorter + prefixes would generate datapath flows where the irrelevant + address bits are wildcarded, allowing the same datapath flow + to handle all the packets within the prefix in question. In + this case many userspace upcalls can be avoided and the + overall performance can be better. +
++ This is a performance optimization only, so packets will + receive the same treatment with or without prefix tracking. +
+
+ The supported fields are: tun_id
,
+ tun_src
, tun_dst
,
+ nw_src
, nw_dst
(or aliases
+ ip_src
and ip_dst
),
+ ipv6_src
, and ipv6_dst
. (Using this
+ feature for tun_id
would only make sense if the
+ tunnel IDs have prefix structure similar to IP addresses.)
+
+ For example, prefixes=ip_dst,ip_src
instructs the
+ flow classifier to track the IP destination and source
+ addresses used by the rules in this specific flow table. To
+ set the prefix fields, the flow table record needs to exist:
+
ovs-vsctl set Bridge br0 flow_tables:0=@N1 -- --id=@N1 create Flow_Table name=table0
ovs-vsctl set Flow_Table table0 prefixes=ip_dst,ip_src
+ There is a maximum number of fields that can be enabled for any + one flow table. Currently this limit is 3. +
+Common
+ Columns
at the beginning of this document.
+
+