omitted, all key-value pairs are printed.
.
.TP
-\fBdump-tables \fIswitch\fR
+\fBdump\-tables \fIswitch\fR
Prints to the console statistics for each of the flow tables used by
\fIswitch\fR.
.
.TP
-\fBdump-ports \fIswitch\fR [\fInetdev\fR]
+\fBdump\-ports \fIswitch\fR [\fInetdev\fR]
Prints to the console statistics for network devices associated with
\fIswitch\fR. If \fInetdev\fR is specified, only the statistics
associated with that device will be printed. \fInetdev\fR can be an
OpenFlow assigned port number or device name, e.g. \fBeth0\fR.
.
.TP
-\fBmod-port \fIswitch\fR \fInetdev\fR \fIaction\fR
+\fBmod\-port \fIswitch\fR \fInetdev\fR \fIaction\fR
Modify characteristics of an interface monitored by \fIswitch\fR.
\fInetdev\fR can be referred to by its OpenFlow assigned port number or
the device name, e.g. \fBeth0\fR. The \fIaction\fR may be any one of the
.RE
.
.TP
-\fBdump-flows \fIswitch \fR[\fIflows\fR]
+\fBdump\-flows \fIswitch \fR[\fIflows\fR]
Prints to the console all flow entries in \fIswitch\fR's
tables that match \fIflows\fR. If \fIflows\fR is omitted, all flows
in the switch are retrieved. See \fBFlow Syntax\fR, below, for the
\fBTable Entry Output\fR.
.
.TP
-\fBdump-aggregate \fIswitch \fR[\fIflows\fR]
+\fBdump\-aggregate \fIswitch \fR[\fIflows\fR]
Prints to the console aggregate statistics for flows in
\fIswitch\fR's tables that match \fIflows\fR. If \fIflows\fR is omitted,
the statistics are aggregated across all flows in the switch's flow
The output format is descrbed in \fBTable Entry Output\fR.
.
.TP
-\fBadd-flow \fIswitch flow\fR
+\fBadd\-flow \fIswitch flow\fR
Add the flow entry as described by \fIflow\fR to the \fIswitch\fR's
tables. The flow entry is in the format described in \fBFlow Syntax\fR,
below.
.
.TP
-\fBadd-flows \fIswitch file\fR
+\fBadd\-flows \fIswitch file\fR
Add flow entries as described in \fIfile\fR to \fIswitch\fR's
tables. Each line in \fIfile\fR is a flow entry in the format
described in \fBFlow Syntax\fR, below.
.
.TP
-\fBmod-flows \fIswitch flow\fR
+\fBmod\-flows \fIswitch flow\fR
Modify the actions in entries from the \fIswitch\fR's tables
-that match \fIflow\fR. When invoked with the \fB--strict\fR option,
+that match \fIflow\fR. When invoked with the \fB\-\-strict\fR option,
wildcards are not treated as active for matching purposes. See
\fBFlow Syntax\fR, below, for the syntax of \fIflows\fR.
.
.TP
-\fBdel-flows \fIswitch \fR[\fIflow\fR]
+\fBdel\-flows \fIswitch \fR[\fIflow\fR]
Deletes entries from the \fIswitch\fR's tables that match
-\fIflow\fR. When invoked with the \fB--strict\fR option, wildcards are
+\fIflow\fR. When invoked with the \fB\-\-strict\fR option, wildcards are
not treated as active for matching purposes. If \fIflow\fR is
-omitted and the \fB--strict\fR option is not used, all flows in the
+omitted and the \fB\-\-strict\fR option is not used, all flows in the
switch's tables are removed. See \fBFlow Syntax\fR, below, for the
syntax of \fIflows\fR.
.
.IQ "\fBmonitor \fIswitch\fR [\fImiss-len\fR]"
Connects to \fIswitch\fR and prints to the console all OpenFlow
messages received. Usually, \fIswitch\fR should specify a connection
-named on \fBovs\-openflowd\fR(8)'s \fB-l\fR or \fB--listen\fR command line
+named on \fBovs\-openflowd\fR(8)'s \fB\-l\fR or \fB\-\-listen\fR command line
option.
.IP
If \fImiss-len\fR is provided, \fBovs\-ofctl\fR sends an OpenFlow ``set
.TP
\fBprobe \fItarget\fR
Sends a single OpenFlow echo-request message to \fItarget\fR and waits
-for the response. With the \fB-t\fR or \fB--timeout\fR option, this
+for the response. With the \fB\-t\fR or \fB\-\-timeout\fR option, this
command can test whether an OpenFlow switch or controller is up and
running.
.
Same as \fBdl_type=0x0806\fR.
.
.PP
-The \fBadd-flow\fR and \fBadd-flows\fR commands require an additional
+The \fBadd\-flow\fR and \fBadd\-flows\fR commands require an additional
field, which must be the final field specified:
.
.IP \fBactions=\fR[\fItarget\fR][\fB,\fItarget\fR...]\fR
.IP \fBoutput\fR:\fIport\fR
Outputs the packet on the port specified by \fIport\fR.
.
+.IP \fBenqueue\fR:\fIport\fB:\fIqueue\fR
+Enqueues the packet on the specified \fIqueue\fR within port
+\fIport\fR. The number of supported queues depends on the switch;
+some OpenFlow implementations do not support queuing at all.
+.
.IP \fBnormal\fR
Subjects the packet to the device's normal L2/L3 processing. (This
action is not implemented by all OpenFlow switches.)
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.
.
+.IP \fBdrop_spoofed_arp\fR
+Stops processing further actions, if the packet being processed is an
+Ethernet+IPv4 ARP packet for which the source Ethernet address inside
+the ARP packet differs from the source Ethernet address in the
+Ethernet header.
+.
+This is useful because OpenFlow does not provide a way to match on the
+Ethernet addresses inside ARP packets, so there is no other way to
+drop spoofed ARPs other than sending every ARP packet to a controller.
.RE
.
.IP
flows.
.
.PP
-The \fBadd-flow\fR, \fBadd-flows\fR, and \fBdel-flows\fR commands
+The \fBadd\-flow\fR, \fBadd\-flows\fR, and \fBdel\-flows\fR commands
support an additional optional field:
.
.IP \fBpriority=\fIvalue\fR
the flow's priority will default to 32768.
.
.PP
-The \fBadd-flow\fR and \fBadd-flows\fR commands support additional
+The \fBadd\-flow\fR and \fBadd\-flows\fR commands support additional
optional fields:
.
.TP
\fBidle_timeout=\fIseconds\fR
Causes the flow to expire after the given number of seconds of
-inactivity. A value of 0 prevents a flow from expiring due to
-inactivity. The default is 60 seconds.
+inactivity. A value of 0 (the default) prevents a flow from expiring due to
+inactivity.
.
.IP \fBhard_timeout=\fIseconds\fR
Causes the flow to expire after the given number of seconds,
hard expiration deadline.
.
.PP
-The \fBdump-flows\fR, \fBdump-aggregate\fR, \fBdel-flow\fR
-and \fBdel-flows\fR commands support one additional optional field:
+The \fBdump\-flows\fR, \fBdump\-aggregate\fR, \fBdel\-flow\fR
+and \fBdel\-flows\fR commands support one additional optional field:
.
.TP
\fBout_port=\fIport\fR
If set, a matching flow must include an output action to \fIport\fR.
.
.PP
-The \fBdump-flows\fR and \fBdump-aggregate\fR commands support an
+The \fBdump\-flows\fR and \fBdump\-aggregate\fR commands support an
additional optional field:
.
.IP \fBtable=\fInumber\fR
If specified, limits the flows about which statistics are gathered to
those in the table with the given \fInumber\fR. Tables are numbered
-as shown by the \fBdump-tables\fR command.
+as shown by the \fBdump\-tables\fR command.
.
If this field is not specified, or if \fInumber\fR is given as
\fB255\fR, statistics are gathered about flows from all tables.
.
.SS "Table Entry Output"
.
-The \fBdump-tables\fR and \fBdump-aggregate\fR commands print information
+The \fBdump\-tables\fR and \fBdump\-aggregate\fR commands print information
about the entries in a datapath's tables. Each line of output is a
unique flow entry, which begins with some common information:
.
.IP \fBtable_id\fR
The table that contains the flow. When a packet arrives, the switch
begins searching for an entry at the lowest numbered table. Tables are
-numbered as shown by the \fBdump-tables\fR command.
+numbered as shown by the \fBdump\-tables\fR command.
.
.IP \fBpriority\fR
The priority of the entry in relation to other entries within the same
.
.SH OPTIONS
.TP
-\fB--strict\fR
+\fB\-\-strict\fR
Uses strict matching when running flow modification commands.
.
.SS "Public Key Infrastructure Options"
The following examples assume that an OpenFlow switch on the local
host has been configured to listen for management connections on a
Unix domain socket named \fB@RUNDIR@/openflow.sock\fR, e.g. by
-specifying \fB--listen=punix:@RUNDIR@/openflow.sock\fR on the
+specifying \fB\-\-listen=punix:@RUNDIR@/openflow.sock\fR on the
\fBovs\-openflowd\fR(8) command line.
.
.TP
-\fBovs\-ofctl dump-tables unix:@RUNDIR@/openflow.sock\fR
+\fBovs\-ofctl dump\-tables unix:@RUNDIR@/openflow.sock\fR
Prints out the switch's table stats. (This is more interesting after
some traffic has passed through.)
.
.TP
-\fBovs\-ofctl dump-flows unix:@RUNDIR@/openflow.sock\fR
+\fBovs\-ofctl dump\-flows unix:@RUNDIR@/openflow.sock\fR
Prints the flow entries in the switch.
.
.SH "SEE ALSO"