2010-07-15 17:08:17 -07:00
|
|
|
.\" -*- nroff -*-
|
|
|
|
.de IQ
|
|
|
|
. br
|
|
|
|
. ns
|
|
|
|
. IP "\\$1"
|
|
|
|
..
|
2009-07-08 13:19:16 -07:00
|
|
|
.TH ovs\-controller 8 "March 2009" "Open vSwitch" "Open vSwitch Manual"
|
|
|
|
.ds PN ovs\-controller
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH NAME
|
|
|
|
ovs\-controller \- simple OpenFlow controller reference implementation
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH SYNOPSIS
|
|
|
|
.B ovs\-controller
|
|
|
|
[\fIoptions\fR] \fImethod\fR \fB[\fImethod\fR]\&...
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH DESCRIPTION
|
|
|
|
\fBovs\-controller\fR manages any number of remote switches over OpenFlow
|
|
|
|
protocol, causing them to function as L2 MAC-learning switches or hub.
|
2010-02-24 13:42:43 -08:00
|
|
|
.PP
|
2009-07-08 13:19:16 -07:00
|
|
|
\fBovs\-controller\fR controls one or more OpenFlow switches, specified as
|
|
|
|
one or more of the following OpenFlow connection methods:
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-12-21 13:10:55 -08:00
|
|
|
.RS
|
|
|
|
.so lib/vconn-passive.man
|
|
|
|
.so lib/vconn-active.man
|
|
|
|
.RE
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH OPTIONS
|
2010-07-15 17:08:17 -07:00
|
|
|
.IP "\fB\-n\fR"
|
|
|
|
.IQ "\fB\-\-noflow\fR"
|
2009-07-08 13:19:16 -07:00
|
|
|
By default, \fBovs\-controller\fR sets up a flow in each OpenFlow switch
|
|
|
|
whenever it receives a packet whose destination is known due through
|
|
|
|
MAC learning. This option disables flow setup, so that every packet
|
|
|
|
in the network passes through the controller.
|
2010-02-24 13:42:43 -08:00
|
|
|
.IP
|
2009-07-08 13:19:16 -07:00
|
|
|
This option is most useful for debugging. It reduces switching
|
|
|
|
performance, so it should not be used in production.
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.TP
|
2010-06-29 14:29:40 -07:00
|
|
|
\fB\-\-max\-idle=\fIsecs\fR|\fBpermanent\fR
|
2009-07-08 13:19:16 -07:00
|
|
|
Sets \fIsecs\fR as the number of seconds that a flow set up by the
|
|
|
|
controller will remain in the switch's flow table without any matching
|
|
|
|
packets being seen. If \fBpermanent\fR is specified, which is not
|
|
|
|
recommended, flows will never expire. The default is 60 seconds.
|
2010-02-24 13:42:43 -08:00
|
|
|
.IP
|
2009-07-08 13:19:16 -07:00
|
|
|
This option affects only flows set up by the OpenFlow controller. In
|
|
|
|
some configurations, the switch can set up some flows
|
|
|
|
on its own. To set the idle time for those flows, pass
|
2010-06-29 14:29:40 -07:00
|
|
|
\fB\-\-max\-idle\fR to \fBovs\-openflowd\fR (on the switch).
|
2010-02-24 13:42:43 -08:00
|
|
|
.IP
|
2010-06-29 14:29:40 -07:00
|
|
|
This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
|
2009-07-08 13:19:16 -07:00
|
|
|
(because the controller does not set up flows in that case).
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2010-07-15 17:08:17 -07:00
|
|
|
.IP "\fB\-H\fR"
|
|
|
|
.IQ "\fB\-\-hub\fR"
|
2009-07-08 13:19:16 -07:00
|
|
|
By default, the controller acts as an L2 MAC-learning switch. This
|
|
|
|
option changes its behavior to that of a hub that floods packets on
|
|
|
|
all but the incoming port.
|
2010-02-24 13:42:43 -08:00
|
|
|
.IP
|
2010-06-29 14:29:40 -07:00
|
|
|
If \fB\-H\fR (or \fB\-\-hub\fR) and \fB\-n\fR (or \fB\-\-noflow\fR) are used
|
2009-07-08 13:19:16 -07:00
|
|
|
together, then the cumulative effect is that every packet passes
|
|
|
|
through the controller and every packet is flooded.
|
2010-02-24 13:42:43 -08:00
|
|
|
.IP
|
2009-07-08 13:19:16 -07:00
|
|
|
This option is most useful for debugging. It reduces switching
|
|
|
|
performance, so it should not be used in production.
|
2009-11-19 12:48:32 -08:00
|
|
|
.
|
2010-07-15 17:08:17 -07:00
|
|
|
.IP "\fB\-w\fR"
|
|
|
|
.IQ "\fB\-\-wildcard\fR"
|
2009-11-19 12:48:32 -08:00
|
|
|
By default, \fBovs\-controller\fR sets up exact-match flows. This
|
|
|
|
option allows it to set up wildcarded flows, which may reduce
|
|
|
|
flow-setup latency by causing less traffic to be sent up to the
|
|
|
|
controller.
|
|
|
|
.IP
|
2010-06-29 14:29:40 -07:00
|
|
|
This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
|
2009-11-19 12:48:32 -08:00
|
|
|
(because the controller does not set up flows in that case).
|
|
|
|
.
|
2010-07-15 17:08:17 -07:00
|
|
|
.IP "\fB\-N\fR"
|
|
|
|
.IQ "\fB\-\-normal\fR"
|
2009-11-19 12:48:32 -08:00
|
|
|
By default, \fBovs\-controller\fR directs packets to a particular port
|
|
|
|
or floods them. This option causes it to direct non-flooded packets
|
|
|
|
to the OpenFlow \fBOFPP_NORMAL\fR port. This allows the switch itself
|
|
|
|
to make decisions about packet destinations. Support for
|
|
|
|
\fBOFPP_NORMAL\fR is optional in OpenFlow, so this option may not well
|
|
|
|
with some non-Open vSwitch switches.
|
|
|
|
.
|
2010-06-29 14:29:40 -07:00
|
|
|
.IP "\fB\-\-mute\fR"
|
2009-09-16 15:12:19 -07:00
|
|
|
Prevents ovs\-controller from replying to any OpenFlow messages sent
|
|
|
|
to it by switches.
|
|
|
|
.IP
|
|
|
|
This option is only for debugging the Open vSwitch implementation of
|
|
|
|
``fail open'' mode. It must not be used in production.
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2010-07-15 17:08:17 -07:00
|
|
|
.IP "\fB\-q \fIid\fR"
|
|
|
|
.IQ "\fB\-\-queue=\fIid\fR"
|
|
|
|
By default, \fBovs\-controller\fR uses the default OpenFlow queue for
|
|
|
|
sending packets and setting up flows. Use one of these options,
|
|
|
|
supplying \fIid\fR as an OpenFlow queue ID as a decimal number, to
|
|
|
|
instead use that specific queue.
|
|
|
|
.IP
|
|
|
|
This option may be useful for debugging quality of service setups.
|
|
|
|
.
|
2010-07-28 15:18:25 -07:00
|
|
|
.IP "\fB\-\-with\-flows \fIfile\fR"
|
|
|
|
When a switch connects, push the flow entries as described in
|
|
|
|
\fIfile\fR. Each line in \fIfile\fR is a flow entry in the format
|
|
|
|
described for the \fBadd\-flows\fR command in the \fBFlow Syntax\fR
|
|
|
|
section of the \fBovs\-ofctl\fR(8) man page.
|
2010-09-23 14:08:13 -07:00
|
|
|
.IP
|
|
|
|
Use this option more than once to add flows from multiple files.
|
2010-07-28 15:18:25 -07:00
|
|
|
.
|
2010-03-18 16:59:04 -07:00
|
|
|
.SS "Public Key Infrastructure Options"
|
2009-12-21 13:10:55 -08:00
|
|
|
.so lib/ssl.man
|
|
|
|
.so lib/ssl-peer-ca-cert.man
|
2009-07-08 13:19:16 -07:00
|
|
|
.so lib/daemon.man
|
|
|
|
.so lib/vlog.man
|
2010-03-23 11:24:38 -07:00
|
|
|
.so lib/unixctl.man
|
2009-07-08 13:19:16 -07:00
|
|
|
.so lib/common.man
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH EXAMPLES
|
2010-02-24 13:42:43 -08:00
|
|
|
.PP
|
2010-03-24 10:42:17 -07:00
|
|
|
To bind locally to port 6633 (the default) and wait for incoming
|
|
|
|
connections from OpenFlow switches:
|
|
|
|
.IP
|
|
|
|
\fB% ovs\-controller ptcp:\fR
|
|
|
|
.SH "BUGS"
|
|
|
|
.PP
|
|
|
|
Configuring a Citrix XenServer to connect to a particular controller
|
|
|
|
only points the remote OVSDB management connection to that controller.
|
|
|
|
It does not also configure OpenFlow connections, because the manager
|
|
|
|
is expected to do that over the management protocol.
|
|
|
|
\fBovs\-controller\fR is not an Open vSwitch manager and does not know
|
|
|
|
how to do that.
|
|
|
|
.PP
|
|
|
|
As a stopgap workaround, \fBovs\-vsctl\fR can wait for an OVSDB
|
|
|
|
connection and set the controller, e.g.:
|
|
|
|
.IP
|
|
|
|
\fB% ovs\-vsctl \-t0 \-\-db=pssl: \-\-certificate=cert.pem
|
|
|
|
\-\-ca\-cert=none \-\-private\-key=privkey.pem
|
|
|
|
\-\-peer\-ca\-cert=cacert.pem set\-controller ssl:\fIip\fR
|
2009-07-08 13:19:16 -07:00
|
|
|
.SH "SEE ALSO"
|
2010-02-24 13:42:43 -08:00
|
|
|
.
|
2009-07-08 10:30:42 -07:00
|
|
|
.BR ovs\-openflowd (8),
|
2009-07-08 13:19:16 -07:00
|
|
|
.BR ovs\-appctl (8),
|
2010-07-28 15:18:25 -07:00
|
|
|
.BR ovs\-ofctl (8),
|
2009-07-08 13:19:16 -07:00
|
|
|
.BR ovs\-dpctl (8)
|