treewide: Fix doubled "the".
[cascardo/ovs.git] / utilities / ovs-ofctl.8.in
index 5129459..4181d82 100644 (file)
@@ -421,14 +421,25 @@ buckets of the group are removed.
 .
 .SS "OpenFlow Switch Geneve Option Table Commands"
 .
-In order to work with Geneve options, it is necessary to maintain a mapping
-table between an option (defined by <class, type, length>) and an NXM field
-that can be operated on for the purposes of matches, actions, etc. This
-mapping must be explicitly specified by the user through the following
-commands. The format for \fIoptions\fR is given in \fBOption Syntax\fR below.
+Open vSwitch maintains a mapping table between Geneve options (defined
+by <class, type, length>) and an NXM field \fBtun_metadata\fIn\fR,
+where \fIn\fR ranges from 0 to 63, that can be operated on for the
+purposes of matches, actions, etc. This mapping must be explicitly
+specified by the user through the following commands.
 
-Note that a given mapping should not be changed while it is in active use by
-a flow. The result of doing so is undefined.
+A Geneve option mapping is specified with the syntax
+\fB{class=\fIclass\fB,type=\fItype\fB,len=\fIlength\fB}->tun_metadata\fIn\fR.
+When an option mapping exists for a given \fBtun_metadata\fIn\fR,
+matching on the defined field becomes possible, e.g.:
+
+.RS
+ovs-ofctl add-geneve-map br0 "{class=0xffff,type=0,len=4}->tun_metadata0"
+.PP
+ovs-ofctl add-flow br0 tun_metadata0=1234,actions=controller
+.RE
+
+A mapping should not be changed while it is in active
+use by a flow. The result of doing so is undefined.
 
 Currently, the Geneve mapping table is shared between all OpenFlow
 switches in a given instance of Open vSwitch. This restriction will
@@ -437,29 +448,19 @@ be lifted in the future to allow for easier management.
 These commands are Nicira extensions to OpenFlow and require Open vSwitch
 2.5 or later.
 
-.IP "\fBadd\-geneve\-map \fIswitch options\fR"
-Add each option entry to \fIswitch\fR's tables. Duplicate fields are
+.IP "\fBadd\-geneve\-map \fIswitch option\fR[\fB,\fIoption\fR]..."
+Add each \fIoption\fR to \fIswitch\fR's tables. Duplicate fields are
 rejected.
 .
-.IP "\fBdel\-geneve\-map \fIswitch \fR[\fIoptions\fR]"
-Delete each option entry in \fIswitch\fR's tables based on its field index.
-Fields that aren't already mapped will be ignored. If no options are
-specified then the entire table will be cleared.
+.IP "\fBdel\-geneve\-map \fIswitch \fR[\fIoption\fR[\fB,\fIoption\fR]]..."
+Delete each \fIoption\fR from \fIswitch\fR's table, or all Geneve option
+mapping if no \fIoption\fR is specified.
+Fields that aren't mapped are ignored.
 .
 .IP "\fBdump\-geneve\-map \fIswitch\fR"
 Show the currently mapped fields in the switch's option table as well
 as switch capabilities.
 .
-.IP "\fBOption Syntax\fR"
-\fB{class=\fIclass\fB,type=\fItype\fB,len=\fIlength\fB}->tun_metadata\fIn\fR
-
-An option can be specified in this form (repeating as necessary and
-separated by commas). For example, the follow is used to map a new option:
-
-.RS
-add-geneve-map br0 "{class=0xffff,type=0,len=4}->tun_metadata0"
-.RE
-.
 .SS "OpenFlow Switch Monitoring Commands"
 .
 .IP "\fBsnoop \fIswitch\fR"
@@ -1149,6 +1150,26 @@ if \fImask\fR is specified, then a 1-bit in \fImask\fR indicates that the
 corresponding bit in \fItunnel-id\fR must match exactly, and a 0-bit
 wildcards that bit.
 .
+.IP \fBtun_flags=\fIflags\fR
+Matches flags indicating various aspects of the tunnel encapsulation. Currently,
+there is only one flag defined:
+.IP
+\fBoam\fR: The tunnel protocol indicated that this is an OAM control packet.
+.IP
+Flags can be prefixed by \fB+\fR or \fB-\fR to indicate that the flag should
+be matched as either present or not present, respectively. In addition, flags
+can be specified without a prefix and separated by \fB|\fR to indicate an exact
+match.
+.IP
+Note that it is possible for newer version of Open vSwitch to introduce
+additional flags with varying meaning. It is therefore not recommended to use
+an exact match on this field since the behavior of these new flags is unknown
+and should be ignored.
+.IP
+For non-tunneled packets, the value is 0.
+.IP
+This field was introduced in Open vSwitch 2.5.
+.
 .IP \fBtun_src=\fIip\fR[\fB/\fInetmask\fR]
 .IQ \fBtun_dst=\fIip\fR[\fB/\fInetmask\fR]
 Matches tunnel IPv4 source (or destination) address \fIip\fR. Only packets
@@ -1392,7 +1413,7 @@ as necessary to match the value specified.  Valid values are between 0
 Strips the VLAN tag from a packet if it is present.
 .
 .IP \fBpush_vlan\fR:\fIethertype\fR
-Push a new VLAN tag onto the packet.  Ethertype is used as the the Ethertype
+Push a new VLAN tag onto the packet.  Ethertype is used as the Ethertype
 for the tag. Only ethertype 0x8100 should be used. (0x88a8 which the spec
 allows isn't supported at the moment.)
 A priority of zero and the tag of zero are used for the new tag.