f4a38882160772c0cac93984e65be5c30c9d055f
[sliver-openvswitch.git] / utilities / ovs-controller.8.in
1 .TH ovs\-controller 8 "March 2009" "Open vSwitch" "Open vSwitch Manual"
2 .ds PN ovs\-controller
3
4 .SH NAME
5 ovs\-controller \- simple OpenFlow controller reference implementation
6
7 .SH SYNOPSIS
8 .B ovs\-controller
9 [\fIoptions\fR] \fImethod\fR \fB[\fImethod\fR]\&...
10
11 .SH DESCRIPTION
12 \fBovs\-controller\fR manages any number of remote switches over OpenFlow
13 protocol, causing them to function as L2 MAC-learning switches or hub.
14
15 \fBovs\-controller\fR controls one or more OpenFlow switches, specified as
16 one or more of the following OpenFlow connection methods:
17
18 .RS
19 .so lib/vconn-passive.man
20 .so lib/vconn-active.man
21 .RE
22
23 .SH OPTIONS
24 .IP "\fB-n\fR, \fB--noflow\fR"
25 By default, \fBovs\-controller\fR sets up a flow in each OpenFlow switch
26 whenever it receives a packet whose destination is known due through
27 MAC learning.  This option disables flow setup, so that every packet
28 in the network passes through the controller.
29
30 This option is most useful for debugging.  It reduces switching
31 performance, so it should not be used in production.
32
33 .TP
34 \fB--max-idle=\fIsecs\fR|\fBpermanent\fR
35 Sets \fIsecs\fR as the number of seconds that a flow set up by the
36 controller will remain in the switch's flow table without any matching
37 packets being seen.  If \fBpermanent\fR is specified, which is not
38 recommended, flows will never expire.  The default is 60 seconds.
39
40 This option affects only flows set up by the OpenFlow controller.  In
41 some configurations, the switch can set up some flows
42 on its own.  To set the idle time for those flows, pass
43 \fB--max-idle\fR to \fBovs\-openflowd\fR (on the switch).
44
45 This option has no effect when \fB-n\fR (or \fB--noflow\fR) is in use
46 (because the controller does not set up flows in that case).
47
48 .IP "\fB-H\fR, \fB--hub\fR"
49 By default, the controller acts as an L2 MAC-learning switch.  This
50 option changes its behavior to that of a hub that floods packets on
51 all but the incoming port.
52
53 If \fB-H\fR (or \fB--hub\fR) and \fB-n\fR (or \fB--noflow\fR) are used
54 together, then the cumulative effect is that every packet passes
55 through the controller and every packet is flooded.
56
57 This option is most useful for debugging.  It reduces switching
58 performance, so it should not be used in production.
59 .
60 .IP "\fB-w\fR, \fB--wildcard\fR"
61 By default, \fBovs\-controller\fR sets up exact-match flows.  This
62 option allows it to set up wildcarded flows, which may reduce
63 flow-setup latency by causing less traffic to be sent up to the
64 controller.
65 .IP
66 This option has no effect when \fB-n\fR (or \fB--noflow\fR) is in use
67 (because the controller does not set up flows in that case).
68 .
69 .IP "\fB-N\fR, \fB--normal\fR"
70 By default, \fBovs\-controller\fR directs packets to a particular port
71 or floods them.  This option causes it to direct non-flooded packets
72 to the OpenFlow \fBOFPP_NORMAL\fR port.  This allows the switch itself
73 to make decisions about packet destinations.  Support for
74 \fBOFPP_NORMAL\fR is optional in OpenFlow, so this option may not well
75 with some non-Open vSwitch switches.
76 .
77 .IP "\fB--mute\fR"
78 Prevents ovs\-controller from replying to any OpenFlow messages sent
79 to it by switches.
80 .IP
81 This option is only for debugging the Open vSwitch implementation of
82 ``fail open'' mode.  It must not be used in production.
83
84 .so lib/ssl.man
85 .so lib/ssl-peer-ca-cert.man
86 .so lib/daemon.man
87 .so lib/vlog.man
88 .so lib/common.man
89
90 .SH EXAMPLES
91
92 .TP
93 To bind locally to port 6633 (the default) and wait for incoming connections from OpenFlow switches:
94
95 .B % ovs\-controller ptcp:
96
97 .SH "SEE ALSO"
98
99 .BR ovs\-openflowd (8),
100 .BR ovs\-appctl (8),
101 .BR ovs\-dpctl (8)