]> git.proxmox.com Git - mirror_ovs.git/blame - utilities/ovs-controller.8.in
FAQ: Fix version number for 2.0.
[mirror_ovs.git] / utilities / ovs-controller.8.in
CommitLineData
611e9a35
BP
1.\" -*- nroff -*-
2.de IQ
3. br
4. ns
5. IP "\\$1"
6..
d2cb6c95 7.TH ovs\-controller 8 "@VERSION@" "Open vSwitch" "Open vSwitch Manual"
064af421 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
4e312e69 47This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
064af421 48(because the controller does not set up flows in that case).
a9b4a41a 49.
611e9a35
BP
50.IP "\fB\-H\fR"
51.IQ "\fB\-\-hub\fR"
064af421
BP
52By default, the controller acts as an L2 MAC-learning switch. This
53option changes its behavior to that of a hub that floods packets on
54all but the incoming port.
a9b4a41a 55.IP
4e312e69 56If \fB\-H\fR (or \fB\-\-hub\fR) and \fB\-n\fR (or \fB\-\-noflow\fR) are used
064af421
BP
57together, then the cumulative effect is that every packet passes
58through the controller and every packet is flooded.
a9b4a41a 59.IP
064af421
BP
60This option is most useful for debugging. It reduces switching
61performance, so it should not be used in production.
9af9e2e8 62.
7286b1e1
BP
63.IP "\fB\-w\fR[\fIwildcard_mask\fR]"
64.IQ "\fB\-\-wildcards\fR[\fB=\fIwildcard_mask\fR]\fR"
9af9e2e8
JT
65By default, \fBovs\-controller\fR sets up exact-match flows. This
66option allows it to set up wildcarded flows, which may reduce
7286b1e1 67flow setup latency by causing less traffic to be sent up to the
9af9e2e8
JT
68controller.
69.IP
7286b1e1
BP
70The optional \fIwildcard_mask\fR is an OpenFlow wildcard bitmask in
71hexadecimal that specifies the fields to wildcard. If no
72\fIwildcard_mask\fR is specified, the default value 0x2820F0 is used
73which specifies L2-only switching and wildcards L3 and L4 fields.
74Another interesting value is 0x2000EC, which specifies L3-only
75switching and wildcards L2 and L4 fields.
76.IP
4e312e69 77This option has no effect when \fB\-n\fR (or \fB\-\-noflow\fR) is in use
9af9e2e8
JT
78(because the controller does not set up flows in that case).
79.
611e9a35
BP
80.IP "\fB\-N\fR"
81.IQ "\fB\-\-normal\fR"
9af9e2e8
JT
82By default, \fBovs\-controller\fR directs packets to a particular port
83or floods them. This option causes it to direct non-flooded packets
84to the OpenFlow \fBOFPP_NORMAL\fR port. This allows the switch itself
85to make decisions about packet destinations. Support for
86\fBOFPP_NORMAL\fR is optional in OpenFlow, so this option may not well
87with some non-Open vSwitch switches.
88.
4e312e69 89.IP "\fB\-\-mute\fR"
7778bd15
BP
90Prevents ovs\-controller from replying to any OpenFlow messages sent
91to it by switches.
92.IP
93This option is only for debugging the Open vSwitch implementation of
94``fail open'' mode. It must not be used in production.
a9b4a41a 95.
611e9a35
BP
96.IP "\fB\-q \fIid\fR"
97.IQ "\fB\-\-queue=\fIid\fR"
98By default, \fBovs\-controller\fR uses the default OpenFlow queue for
99sending packets and setting up flows. Use one of these options,
100supplying \fIid\fR as an OpenFlow queue ID as a decimal number, to
101instead use that specific queue.
102.IP
d4cdc6b4
BP
103This option is incompatible with \fB\-N\fR or \fB\-\-normal\fR and
104with \fB\-H\fR or \fB\-\-hub\fR. If more than one is specified then
105this option takes precedence.
106.IP
107This option may be useful for testing or debugging quality of service
108setups.
109.
110.IP "\fB\-Q \fIport-name\fB:\fIqueue-id\fR"
111.IP "\fB\-\-port\-queue \fIport-name\fB:\fIqueue-id\fR"
112Configures packets received on the port named \fIport-name\fR
113(e.g. \fBeth0\fR) to be output on OpenFlow queue ID \fIqueue-id\fR
114(specified as a decimal number). For the specified port, this option
115overrides the default specified on \fB\-q\fR or \fB\-\-queue\fR.
116.IP
117This option may be specified any number of times with different
5d943800 118\fIport-name\fR arguments.
d4cdc6b4
BP
119.IP
120This option is incompatible with \fB\-N\fR or \fB\-\-normal\fR and
121with \fB\-H\fR or \fB\-\-hub\fR. If more than one is specified then
122this option takes precedence.
123.IP
124This option may be useful for testing or debugging quality of service
125setups.
611e9a35 126.
882c2399
JP
127.IP "\fB\-\-with\-flows \fIfile\fR"
128When a switch connects, push the flow entries as described in
129\fIfile\fR. Each line in \fIfile\fR is a flow entry in the format
130described for the \fBadd\-flows\fR command in the \fBFlow Syntax\fR
131section of the \fBovs\-ofctl\fR(8) man page.
09913dfd
BP
132.IP
133Use this option more than once to add flows from multiple files.
882c2399 134.
ac300505 135.SS "Public Key Infrastructure Options"
84ee7bcf
BP
136.so lib/ssl.man
137.so lib/ssl-peer-ca-cert.man
58f870d0 138.ds DD
064af421
BP
139.so lib/daemon.man
140.so lib/vlog.man
b66bdf30 141.so lib/unixctl.man
064af421 142.so lib/common.man
be721d87 143.so so lib/ofp-version.man
a9b4a41a 144.
064af421 145.SH EXAMPLES
a9b4a41a 146.PP
c6278d20
BP
147To bind locally to port 6633 (the default) and wait for incoming
148connections from OpenFlow switches:
149.IP
150\fB% ovs\-controller ptcp:\fR
151.SH "BUGS"
152.PP
153Configuring a Citrix XenServer to connect to a particular controller
154only points the remote OVSDB management connection to that controller.
155It does not also configure OpenFlow connections, because the manager
156is expected to do that over the management protocol.
157\fBovs\-controller\fR is not an Open vSwitch manager and does not know
158how to do that.
159.PP
160As a stopgap workaround, \fBovs\-vsctl\fR can wait for an OVSDB
161connection and set the controller, e.g.:
162.IP
163\fB% ovs\-vsctl \-t0 \-\-db=pssl: \-\-certificate=cert.pem
164\-\-ca\-cert=none \-\-private\-key=privkey.pem
165\-\-peer\-ca\-cert=cacert.pem set\-controller ssl:\fIip\fR
064af421 166.SH "SEE ALSO"
a9b4a41a 167.
064af421 168.BR ovs\-appctl (8),
882c2399 169.BR ovs\-ofctl (8),
064af421 170.BR ovs\-dpctl (8)