X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=utilities%2Fovs-ofctl.8.in;h=75047748371decec4ce30d96c573002aaee6ea27;hb=c6eab56db47739d73675ff181a03eb1923303284;hp=7ffad2b6b5e31a7227638209c0356af778251ed5;hpb=96fc46e8fdafd6467906e11e0fb493e2b78f2fb5;p=sliver-openvswitch.git diff --git a/utilities/ovs-ofctl.8.in b/utilities/ovs-ofctl.8.in index 7ffad2b6b..750477483 100644 --- a/utilities/ovs-ofctl.8.in +++ b/utilities/ovs-ofctl.8.in @@ -337,6 +337,49 @@ as a decimal number between 0 and 255, inclusive. .IP When \fBdl_type\fR and \fBnw_proto\fR take other values, the values of these settings are ignored (see \fBFlow Syntax\fR above). +.IP \fBtun_id=\fItunnel-id\fR[\fB/\fImask\fR] +Matches tunnel identifier \fItunnel-id\fR. Only packets that arrive +over a tunnel that carries a key (e.g. GRE with the RFC 2890 key +extension) will have a nonzero tunnel ID. If \fImask\fR is omitted, +\fItunnel-id\fR is the exact tunnel ID to match; \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_id\fR requires use of one of two Nicira extensions to OpenFlow: +.RS +.IP "NXM (Nicira Extended Match)" +This extension fully supports \fBtun_id\fR. +.IP "Tunnel ID from Cookie" +This extension supports \fBtun_id\fR with three caveats: the top 32 bits +of the \fBcookie\fR (see below) are used for \fItunnel-id\fR and thus +unavailable for other use, specifying \fBtun_id\fR on +\fBdump\-flows\fR or \fBdump\-aggregate\fR has no effect, and +\fImask\fR is not supported. +.RE +.IP +When \fBtun_id\fR is specified, \fBovs\-ofctl\fR will automatically +attempt to negotiate use of one of these extensions. It will use the +``tunnel ID from cookie'' extension if neither caveat applies and NXM +otherwise. If the switch does not support the needed extension, then +\fBovs\-ofctl\fR will report a fatal error. +.IP "\fBreg\fIidx\fB=\fIvalue\fR[\fB/\fImask\fR]" +Matches \fIvalue\fR either exactly or with optional \fImask\fR in +register number \fIidx\fR. The valid range of \fIidx\fR depends on +the switch. \fIvalue\fR and \fImask\fR are 32-bit integers, by +default in decimal (use a \fB0x\fR prefix to specify hexadecimal). +Arbitrary \fImask\fR values are allowed: a 1-bit in \fImask\fR +indicates that the corresponding bit in \fIvalue\fR must match +exactly, and a 0-bit wildcards that bit. +.IP +When a packet enters an OpenFlow switch, all of the registers are set +to 0. Only explicit Nicira extension actions change register values. +.IP +Register matches require support for the NXM (Nicira Extended Match) +extension to OpenFlow. When a register match is specified, +\fBovs\-ofctl\fR will automatically attempt to negotiate use of this +extension. If the switch does not support NXM, then \fBovs\-ofctl\fR +will report a fatal error. . .PP The following shorthand notations are also available: @@ -457,8 +500,13 @@ addition to any other actions in this flow entry. Recursive \fBresubmit\fR actions are ignored. . .IP \fBset_tunnel\fB:\fIid\fR -If outputting to a port that encapsulates the packet in a tunnel and supports -an identifier (such as GRE), sets the identifier to \fBid\fR. +.IQ \fBset_tunnel64\fB:\fIid\fR +If outputting to a port that encapsulates the packet in a tunnel and +supports an identifier (such as GRE), sets the identifier to \fBid\fR. +If the \fBset_tunnel\fR form is used and \fIid\fR fits in 32 bits, +then this uses an action extension that is supported by Open vSwitch +1.0 and later. Otherwise, if \fIid\fR is a 64-bit value, it requires +Open vSwitch 1.1 or later. . .IP \fBdrop_spoofed_arp\fR Stops processing further actions, if the packet being processed is an @@ -483,6 +531,44 @@ actions were applied. Does nothing at all. Any number of bytes represented as hex digits \fIhh\fR may be included. Pairs of hex digits may be separated by periods for readability. +. +.IP "\fBmove:\fIsrc\fB[\fIstart\fB..\fIend\fB]->\fIdst\fB[\fIstart\fB..\fIend\fB]\fR" +Copies the named bits from field \fIsrc\fR to field \fIdst\fR. +\fIsrc\fR and \fIdst\fR must be NXM field names as defined in +\fBnicira\-ext.h\fR, e.g. \fBNXM_OF_UDP_SRC\fR or \fBNXM_NX_REG0\fR. +Each \fIstart\fR and \fIend\fR pair, which are inclusive, must specify +the same number of bits and must fit within its respective field. +Shorthands for \fB[\fIstart\fB..\fIend\fB]\fR exist: use +\fB[\fIbit\fB]\fR to specify a single bit or \fB[]\fR to specify an +entire field. +.IP +Examples: \fBmove:NXM_NX_REG0[0..5]\->NXM_NX_REG1[26..31]\fR copies the +six bits numbered 0 through 5, inclusive, in register 0 into bits 26 +through 31, inclusive; +\fBmove:NXM_NX_REG0[0..15]->NXM_OF_VLAN_TCI[]\fR copies the least +significant 16 bits of register 0 into the VLAN TCI field. +. +.IP "\fBload:\fIvalue\fB\->\fIdst\fB[\fIstart\fB..\fIend\fB]" +Writes \fIvalue\fR to bits \fIstart\fR through \fIend\fR, inclusive, +in field \fBdst\fR. +.IP +Example: \fBload:55\->NXM_NX_REG2[0..5]\fR loads value 55 (bit pattern +\fB110111\fR) into bits 0 through 5, inclusive, in register 2. +. +.IP "\fBmultipath(\fIfields\fB, \fIbasis\fB, \fIalgorithm\fB, \fIn_links\fB, \fIarg\fB, \fIdst\fB[\fIstart\fB..\fIend\fB])\fR" +Hashes \fIfields\fR using \fIbasis\fR as a universal hash parameter, +then the applies multipath link selection \fIalgorithm\fR (with +parameter \fIarg\fR) to choose one of \fIn_links\fR output links +numbered 0 through \fIn_links\fR minus 1, and stores the link into +\fIdst\fB[\fIstart\fB..\fIend\fB]\fR, which must be an NXM register as +described above. +.IP +Currently, \fIfields\fR must be either \fBeth_src\fR or +\fBsymmetric_l4\fR and \fIalgorithm\fR must be one of \fBmodulo_n\fR, +\fBhash_threshold\fR, \fBhrw\fR, and \fBiter_hash\fR. Only +the \fBiter_hash\fR algorithm uses \fIarg\fR. +.IP +Refer to \fBnicira\-ext.h\fR for more details. .RE . .IP @@ -583,6 +669,43 @@ described in \fBFlow Syntax\fR, above. \fB\-\-strict\fR Uses strict matching when running flow modification commands. . +.IP "\fB\-F \fIformat\fR" +.IQ "\fB\-\-flow\-format=\fIformat\fR" +\fBovs\-ofctl\fR supports the following flow formats, in order of +increasing capability: +.RS +.IP "\fBopenflow10\fR" +This is the standard OpenFlow 1.0 flow format. It should be supported +by all OpenFlow switches. +. +.IP "\fBtun_id_from_cookie\fR" +This Nicira extension to OpenFlow adds minimal and limited support for +\fBtun_id\fR, but it does not support any other Nicira flow +extensions. (This flow format is deprecated.) +. +.IP "\fBnxm\fR (Nicira Extended Match)" +This Nicira extension to OpenFlow is flexible and extensible. It +supports all of the Nicira flow extensions, such as \fBtun_id\fR and +registers. +.RE +.IP +Usually, \fBovs\-ofctl\fR picks the correct format automatically. For +commands that modify the flow table, \fBovs\-ofctl\fR by default uses +the most widely supported flow format that supports the flows being +added. For commands that query the flow table, \fBovs\-ofctl\fR by +default queries and uses the most advanced format supported by the +switch. +.IP +This option, where \fIformat\fR is one of the formats listed in the +above table, overrides \fBovs\-ofctl\fR's default choice of flow +format. If a command cannot work as requested using the requested +flow format, \fBovs\-ofctl\fR will report a fatal error. +. +.IP "\fB\-m\fR" +.IQ "\fB\-\-more\fR" +Increases the verbosity of OpenFlow messages printed and logged by +\fBovs\-ofctl\fR commands. Specify this option more than once to +increase verbosity further. .SS "Public Key Infrastructure Options" .so lib/ssl.man .so lib/vlog.man