]> git.proxmox.com Git - mirror_ovs.git/blame - utilities/ovs-controller.8.in
ovs-ofctl: Fix del-flows command parsing bugs.
[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
d4cdc6b4
BP
101This option is incompatible with \fB\-N\fR or \fB\-\-normal\fR and
102with \fB\-H\fR or \fB\-\-hub\fR. If more than one is specified then
103this option takes precedence.
104.IP
105This option may be useful for testing or debugging quality of service
106setups.
107.
108.IP "\fB\-Q \fIport-name\fB:\fIqueue-id\fR"
109.IP "\fB\-\-port\-queue \fIport-name\fB:\fIqueue-id\fR"
110Configures packets received on the port named \fIport-name\fR
111(e.g. \fBeth0\fR) to be output on OpenFlow queue ID \fIqueue-id\fR
112(specified as a decimal number). For the specified port, this option
113overrides the default specified on \fB\-q\fR or \fB\-\-queue\fR.
114.IP
115This option may be specified any number of times with different
116\Iport-name\fR arguments.
117.IP
118This option is incompatible with \fB\-N\fR or \fB\-\-normal\fR and
119with \fB\-H\fR or \fB\-\-hub\fR. If more than one is specified then
120this option takes precedence.
121.IP
122This option may be useful for testing or debugging quality of service
123setups.
611e9a35 124.
882c2399
JP
125.IP "\fB\-\-with\-flows \fIfile\fR"
126When a switch connects, push the flow entries as described in
127\fIfile\fR. Each line in \fIfile\fR is a flow entry in the format
128described for the \fBadd\-flows\fR command in the \fBFlow Syntax\fR
129section of the \fBovs\-ofctl\fR(8) man page.
09913dfd
BP
130.IP
131Use this option more than once to add flows from multiple files.
882c2399 132.
ac300505 133.SS "Public Key Infrastructure Options"
84ee7bcf
BP
134.so lib/ssl.man
135.so lib/ssl-peer-ca-cert.man
064af421
BP
136.so lib/daemon.man
137.so lib/vlog.man
b66bdf30 138.so lib/unixctl.man
064af421 139.so lib/common.man
a9b4a41a 140.
064af421 141.SH EXAMPLES
a9b4a41a 142.PP
c6278d20
BP
143To bind locally to port 6633 (the default) and wait for incoming
144connections from OpenFlow switches:
145.IP
146\fB% ovs\-controller ptcp:\fR
147.SH "BUGS"
148.PP
149Configuring a Citrix XenServer to connect to a particular controller
150only points the remote OVSDB management connection to that controller.
151It does not also configure OpenFlow connections, because the manager
152is expected to do that over the management protocol.
153\fBovs\-controller\fR is not an Open vSwitch manager and does not know
154how to do that.
155.PP
156As a stopgap workaround, \fBovs\-vsctl\fR can wait for an OVSDB
157connection and set the controller, e.g.:
158.IP
159\fB% ovs\-vsctl \-t0 \-\-db=pssl: \-\-certificate=cert.pem
160\-\-ca\-cert=none \-\-private\-key=privkey.pem
161\-\-peer\-ca\-cert=cacert.pem set\-controller ssl:\fIip\fR
064af421 162.SH "SEE ALSO"
a9b4a41a 163.
8cd4882f 164.BR ovs\-openflowd (8),
064af421 165.BR ovs\-appctl (8),
882c2399 166.BR ovs\-ofctl (8),
064af421 167.BR ovs\-dpctl (8)