]> git.proxmox.com Git - mirror_ovs.git/blame - utilities/ovs-controller.8.in
learning-switch: Introduce struct for configuration.
[mirror_ovs.git] / utilities / ovs-controller.8.in
CommitLineData
611e9a35
BP
1.\" -*- nroff -*-
2.de IQ
3. br
4. ns
5. IP "\\$1"
6..
064af421
BP
7.TH ovs\-controller 8 "March 2009" "Open vSwitch" "Open vSwitch Manual"
8.ds PN ovs\-controller
a9b4a41a 9.
064af421
BP
10.SH NAME
11ovs\-controller \- simple OpenFlow controller reference implementation
a9b4a41a 12.
064af421
BP
13.SH SYNOPSIS
14.B ovs\-controller
15[\fIoptions\fR] \fImethod\fR \fB[\fImethod\fR]\&...
a9b4a41a 16.
064af421
BP
17.SH DESCRIPTION
18\fBovs\-controller\fR manages any number of remote switches over OpenFlow
19protocol, causing them to function as L2 MAC-learning switches or hub.
a9b4a41a 20.PP
064af421
BP
21\fBovs\-controller\fR controls one or more OpenFlow switches, specified as
22one or more of the following OpenFlow connection methods:
a9b4a41a 23.
84ee7bcf
BP
24.RS
25.so lib/vconn-passive.man
26.so lib/vconn-active.man
27.RE
a9b4a41a 28.
064af421 29.SH OPTIONS
611e9a35
BP
30.IP "\fB\-n\fR"
31.IQ "\fB\-\-noflow\fR"
064af421
BP
32By default, \fBovs\-controller\fR sets up a flow in each OpenFlow switch
33whenever it receives a packet whose destination is known due through
34MAC learning. This option disables flow setup, so that every packet
35in the network passes through the controller.
a9b4a41a 36.IP
064af421
BP
37This option is most useful for debugging. It reduces switching
38performance, so it should not be used in production.
a9b4a41a 39.
064af421 40.TP
4e312e69 41\fB\-\-max\-idle=\fIsecs\fR|\fBpermanent\fR
064af421
BP
42Sets \fIsecs\fR as the number of seconds that a flow set up by the
43controller will remain in the switch's flow table without any matching
44packets being seen. If \fBpermanent\fR is specified, which is not
45recommended, flows will never expire. The default is 60 seconds.
a9b4a41a 46.IP
064af421
BP
47This option affects only flows set up by the OpenFlow controller. In
48some configurations, the switch can set up some flows
49on its own. To set the idle time for those flows, pass
4e312e69 50\fB\-\-max\-idle\fR to \fBovs\-openflowd\fR (on the switch).
a9b4a41a 51.IP
4e312e69 52This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
064af421 53(because the controller does not set up flows in that case).
a9b4a41a 54.
611e9a35
BP
55.IP "\fB\-H\fR"
56.IQ "\fB\-\-hub\fR"
064af421
BP
57By default, the controller acts as an L2 MAC-learning switch. This
58option changes its behavior to that of a hub that floods packets on
59all but the incoming port.
a9b4a41a 60.IP
4e312e69 61If \fB\-H\fR (or \fB\-\-hub\fR) and \fB\-n\fR (or \fB\-\-noflow\fR) are used
064af421
BP
62together, then the cumulative effect is that every packet passes
63through the controller and every packet is flooded.
a9b4a41a 64.IP
064af421
BP
65This option is most useful for debugging. It reduces switching
66performance, so it should not be used in production.
9af9e2e8 67.
611e9a35
BP
68.IP "\fB\-w\fR"
69.IQ "\fB\-\-wildcard\fR"
9af9e2e8
JT
70By default, \fBovs\-controller\fR sets up exact-match flows. This
71option allows it to set up wildcarded flows, which may reduce
72flow-setup latency by causing less traffic to be sent up to the
73controller.
74.IP
4e312e69 75This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
9af9e2e8
JT
76(because the controller does not set up flows in that case).
77.
611e9a35
BP
78.IP "\fB\-N\fR"
79.IQ "\fB\-\-normal\fR"
9af9e2e8
JT
80By default, \fBovs\-controller\fR directs packets to a particular port
81or floods them. This option causes it to direct non-flooded packets
82to the OpenFlow \fBOFPP_NORMAL\fR port. This allows the switch itself
83to make decisions about packet destinations. Support for
84\fBOFPP_NORMAL\fR is optional in OpenFlow, so this option may not well
85with some non-Open vSwitch switches.
86.
4e312e69 87.IP "\fB\-\-mute\fR"
7778bd15
BP
88Prevents ovs\-controller from replying to any OpenFlow messages sent
89to it by switches.
90.IP
91This option is only for debugging the Open vSwitch implementation of
92``fail open'' mode. It must not be used in production.
a9b4a41a 93.
611e9a35
BP
94.IP "\fB\-q \fIid\fR"
95.IQ "\fB\-\-queue=\fIid\fR"
96By default, \fBovs\-controller\fR uses the default OpenFlow queue for
97sending packets and setting up flows. Use one of these options,
98supplying \fIid\fR as an OpenFlow queue ID as a decimal number, to
99instead use that specific queue.
100.IP
101This option may be useful for debugging quality of service setups.
102.
882c2399
JP
103.IP "\fB\-\-with\-flows \fIfile\fR"
104When a switch connects, push the flow entries as described in
105\fIfile\fR. Each line in \fIfile\fR is a flow entry in the format
106described for the \fBadd\-flows\fR command in the \fBFlow Syntax\fR
107section of the \fBovs\-ofctl\fR(8) man page.
09913dfd
BP
108.IP
109Use this option more than once to add flows from multiple files.
882c2399 110.
ac300505 111.SS "Public Key Infrastructure Options"
84ee7bcf
BP
112.so lib/ssl.man
113.so lib/ssl-peer-ca-cert.man
064af421
BP
114.so lib/daemon.man
115.so lib/vlog.man
b66bdf30 116.so lib/unixctl.man
064af421 117.so lib/common.man
a9b4a41a 118.
064af421 119.SH EXAMPLES
a9b4a41a 120.PP
c6278d20
BP
121To bind locally to port 6633 (the default) and wait for incoming
122connections from OpenFlow switches:
123.IP
124\fB% ovs\-controller ptcp:\fR
125.SH "BUGS"
126.PP
127Configuring a Citrix XenServer to connect to a particular controller
128only points the remote OVSDB management connection to that controller.
129It does not also configure OpenFlow connections, because the manager
130is expected to do that over the management protocol.
131\fBovs\-controller\fR is not an Open vSwitch manager and does not know
132how to do that.
133.PP
134As a stopgap workaround, \fBovs\-vsctl\fR can wait for an OVSDB
135connection and set the controller, e.g.:
136.IP
137\fB% ovs\-vsctl \-t0 \-\-db=pssl: \-\-certificate=cert.pem
138\-\-ca\-cert=none \-\-private\-key=privkey.pem
139\-\-peer\-ca\-cert=cacert.pem set\-controller ssl:\fIip\fR
064af421 140.SH "SEE ALSO"
a9b4a41a 141.
8cd4882f 142.BR ovs\-openflowd (8),
064af421 143.BR ovs\-appctl (8),
882c2399 144.BR ovs\-ofctl (8),
064af421 145.BR ovs\-dpctl (8)