]>
Commit | Line | Data |
---|---|---|
7d9809ef BP |
1 | .\" -*- nroff -*- |
2 | .de IQ | |
3 | . br | |
4 | . ns | |
5 | . IP "\\$1" | |
6 | .. | |
f30f26be | 7 | .TH ovs\-vswitchd 8 "June 2009" "Open vSwitch" "Open vSwitch Manual" |
812560d7 | 8 | .\" This program's name: |
064af421 | 9 | .ds PN ovs\-vswitchd |
812560d7 BP |
10 | .\" SSL peer program's name: |
11 | .ds SN ovs\-controller | |
064af421 BP |
12 | . |
13 | .SH NAME | |
f30f26be | 14 | ovs\-vswitchd \- Open vSwitch daemon |
064af421 BP |
15 | . |
16 | .SH SYNOPSIS | |
80df177a | 17 | \fBovs\-vswitchd \fR[\fIdatabase\fR] |
064af421 BP |
18 | . |
19 | .SH DESCRIPTION | |
299a244b | 20 | A daemon that manages and controls any number of Open vSwitch switches |
f30f26be | 21 | on the local machine. |
064af421 | 22 | .PP |
80df177a BP |
23 | The \fIdatabase\fR argument specifies how \fBovs\-vswitchd\fR connects |
24 | to \fBovsdb\-server\fR. The default is \fBunix:@RUNDIR@/db.sock\fR. | |
25 | The following forms are accepted: | |
6f61c75b | 26 | .so ovsdb/remote-active.man |
c9f3f37a | 27 | .so ovsdb/remote-passive.man |
064af421 | 28 | .PP |
76343538 BP |
29 | \fBovs\-vswitchd\fR retrieves its configuration from \fIdatabase\fR at |
30 | startup. It sets up Open vSwitch datapaths and then operates | |
31 | switching across each bridge described in its configuration files. As | |
32 | the database changes, \fBovs\-vswitchd\fR automatically updates its | |
33 | configuration to match. | |
34 | .PP | |
35 | Upon receipt of a SIGHUP signal, \fBovs\-vswitchd\fR reopens its log | |
36 | file, if one was specified on the command line. | |
064af421 | 37 | .PP |
299a244b | 38 | \fBovs\-vswitchd\fR switches may be configured with any of the following |
f30f26be | 39 | features: |
064af421 BP |
40 | . |
41 | .IP \(bu | |
42 | L2 switching with MAC learning. | |
43 | . | |
44 | .IP \(bu | |
45 | NIC bonding with automatic fail-over and source MAC-based TX load | |
46 | balancing ("SLB"). | |
47 | . | |
48 | .IP \(bu | |
49 | 802.1Q VLAN support. | |
50 | . | |
51 | .IP \(bu | |
52 | Port mirroring, with optional VLAN tagging. | |
53 | . | |
54 | .IP \(bu | |
55 | NetFlow v5 flow logging. | |
56 | . | |
57 | .IP \(bu | |
d1ae8299 | 58 | sFlow(R) monitoring. |
72b06300 BP |
59 | . |
60 | .IP \(bu | |
064af421 BP |
61 | Connectivity to an external OpenFlow controller, such as NOX. |
62 | . | |
63 | .PP | |
64 | Only a single instance of \fBovs\-vswitchd\fR is intended to run at a time. | |
f30f26be | 65 | A single \fBovs\-vswitchd\fR can manage any number of switch instances, up |
064af421 BP |
66 | to the maximum number of supported Open vSwitch datapaths. |
67 | .PP | |
f30f26be | 68 | \fBovs\-vswitchd\fR does all the necessary management of Open vSwitch datapaths |
064af421 BP |
69 | itself. Thus, external tools, such \fBovs\-dpctl\fR(8), are not needed for |
70 | managing datapaths in conjunction with \fBovs\-vswitchd\fR, and their use | |
71 | to modify datapaths when \fBovs\-vswitchd\fR is running can interfere with | |
72 | its operation. (\fBovs\-dpctl\fR may still be useful for diagnostics.) | |
73 | .PP | |
74 | An Open vSwitch datapath kernel module must be loaded for \fBovs\-vswitchd\fR | |
5fca1acd | 75 | to be useful. Please refer to the \fBINSTALL.Linux\fR file included in the |
064af421 BP |
76 | Open vSwitch distribution for instructions on how to build and load |
77 | the Open vSwitch kernel module. | |
78 | .PP | |
79 | .SH OPTIONS | |
4e312e69 | 80 | .IP "\fB\-\-mlockall\fR" |
86a06318 BP |
81 | Causes \fBovs\-vswitchd\fR to call the \fBmlockall()\fR function, to |
82 | attempt to lock all of its process memory into physical RAM, | |
83 | preventing the kernel from paging any of its memory to disk. This | |
84 | helps to avoid networking interruptions due to system memory pressure. | |
85 | .IP | |
86 | Some systems do not support \fBmlockall()\fR at all, and other systems | |
87 | only allow privileged users, such as the superuser, to use it. | |
88 | \fBovs\-vswitchd\fR emits a log message if \fBmlockall()\fR is | |
89 | unavailable or unsuccessful. | |
90 | . | |
a7ff9bd7 BP |
91 | .ds DD \ |
92 | \fBovs\-vswitchd\fR detaches only after it has connected to the \ | |
93 | database, retrieved the initial configuration, and set up that \ | |
94 | configuration. | |
064af421 | 95 | .so lib/daemon.man |
ac300505 | 96 | .SS "Public Key Infrastructure Options" |
6f61c75b BP |
97 | .so lib/ssl.man |
98 | .so lib/ssl-bootstrap.man | |
064af421 BP |
99 | .so lib/vlog.man |
100 | .so lib/common.man | |
101 | .so lib/leak-checker.man | |
102 | . | |
b16fdafe BP |
103 | .SH "RUNTIME MANAGEMENT COMMANDS" |
104 | \fBovs\-appctl\fR(8) can send commands to a running | |
105 | \fBovs\-vswitchd\fR process. The currently supported commands are | |
106 | described below. The command descriptions assume an understanding of | |
76343538 | 107 | how to configure Open vSwitch. |
9e15c889 BP |
108 | .SS "GENERAL COMMANDS" |
109 | .IP "\fBexit\fR" | |
110 | Causes \fBovs\-vswitchd\fR to gracefully terminate. | |
e8fe3026 EJ |
111 | .IP "\fBqos/show\fR \fIinterface\fR" |
112 | Queries the kernel for Quality of Service configuration and statistics | |
113 | associated with the given \fIinterface\fR. | |
ae75dae3 | 114 | .IP "\fBcfm/show\fR [\fIinterface\fR]" |
20c8e971 | 115 | Displays detailed information about Connectivity Fault Management |
ae75dae3 JP |
116 | configured on \fIinterface\fR. If \fIinterface\fR is not specified, |
117 | then displays detailed information about all interfaces with CFM | |
118 | enabled. | |
d7243b93 EJ |
119 | .IP "\fBcfm/set-fault\fR [\fIinterface\fR] \fIstatus\fR" |
120 | Force the fault status of the CFM module on \fIinterface\fR (or all | |
121 | interfaces if none is given) to be \fIstatus\fR. \fIstatus\fR can be | |
122 | "true", "false", or "normal" which reverts to the standard behavior. | |
fe4a02e4 EJ |
123 | .IP "\fBstp/tcn\fR [\fIbridge\fR]" |
124 | Forces a topology change event on \fIbridge\fR if it's running STP. This | |
125 | may cause it to send Topology Change Notifications to its peers and flush | |
126 | its MAC table.. If no \fIbridge\fR is given, forces a topology change | |
127 | event on all bridges. | |
b16fdafe BP |
128 | .SS "BRIDGE COMMANDS" |
129 | These commands manage bridges. | |
96e466a3 EJ |
130 | .IP "\fBfdb/flush\fR [\fIbridge\fR]" |
131 | Flushes \fIbridge\fR MAC address learning table, or all learning tables | |
132 | if no \fIbridge\fR is given. | |
b16fdafe BP |
133 | .IP "\fBfdb/show\fR \fIbridge\fR" |
134 | Lists each MAC address/VLAN pair learned by the specified \fIbridge\fR, | |
135 | along with the port on which it was learned and the age of the entry, | |
136 | in seconds. | |
fa05809b BP |
137 | .IP "\fBbridge/reconnect\fR [\fIbridge\fR]" |
138 | Makes \fIbridge\fR drop all of its OpenFlow controller connections and | |
139 | reconnect. If \fIbridge\fR is not specified, then all bridges drop | |
140 | their controller connections and reconnect. | |
141 | .IP | |
142 | This command might be useful for debugging OpenFlow controller issues. | |
cdd35cff | 143 | . |
4e312e69 | 144 | .IP "\fBbridge/dump\-flows\fR \fIbridge\fR" |
cdd35cff | 145 | Lists all flows in \fIbridge\fR, including those normally hidden to |
4e312e69 | 146 | commands such as \fBovs\-ofctl dump\-flows\fR. Flows set up by mechanisms |
cdd35cff JP |
147 | such as in-band control and fail-open are hidden from the controller |
148 | since it is not allowed to modify or override them. | |
b16fdafe BP |
149 | .SS "BOND COMMANDS" |
150 | These commands manage bonded ports on an Open vSwitch's bridges. To | |
151 | understand some of these commands, it is important to understand a | |
be02e7c3 EJ |
152 | detail of the bonding implementation called ``source load balancing'' |
153 | (SLB). Instead of directly assigning Ethernet source addresses to | |
154 | slaves, the bonding implementation computes a function that maps an | |
155 | 48-bit Ethernet source addresses into an 8-bit value (a ``MAC hash'' | |
156 | value). All of the Ethernet addresses that map to a single 8-bit | |
157 | value are then assigned to a single slave. | |
b16fdafe BP |
158 | .IP "\fBbond/list\fR" |
159 | Lists all of the bonds, and their slaves, on each bridge. | |
064af421 | 160 | . |
c33a8a25 EJ |
161 | .IP "\fBbond/show\fR [\fIport\fR]" |
162 | Lists all of the bond-specific information (updelay, downdelay, time | |
163 | until the next rebalance) about the given bonded \fIport\fR, or all | |
164 | bonded ports if no \fIport\fR is given. Also lists information about | |
165 | each slave: whether it is enabled or disabled, the time to completion | |
166 | of an updelay or downdelay if one is in progress, whether it is the | |
167 | active slave, the hashes assigned to the slave. Any LACP information | |
168 | related to this bond may be found using the \fBlacp/show\fR command. | |
169 | . | |
b16fdafe | 170 | .IP "\fBbond/migrate\fR \fIport\fR \fIhash\fR \fIslave\fR" |
be02e7c3 EJ |
171 | Only valid for SLB bonds. Assigns a given MAC hash to a new slave. |
172 | \fIport\fR specifies the bond port, \fIhash\fR the MAC hash to be | |
173 | migrated (as a decimal number between 0 and 255), and \fIslave\fR the | |
174 | new slave to be assigned. | |
b16fdafe BP |
175 | .IP |
176 | The reassignment is not permanent: rebalancing or fail-over will | |
177 | cause the MAC hash to be shifted to a new slave in the usual | |
178 | manner. | |
179 | .IP | |
180 | A MAC hash cannot be migrated to a disabled slave. | |
4e312e69 | 181 | .IP "\fBbond/set\-active\-slave\fR \fIport\fR \fIslave\fR" |
b16fdafe BP |
182 | Sets \fIslave\fR as the active slave on \fIport\fR. \fIslave\fR must |
183 | currently be enabled. | |
184 | .IP | |
185 | The setting is not permanent: a new active slave will be selected | |
186 | if \fIslave\fR becomes disabled. | |
4e312e69 BP |
187 | .IP "\fBbond/enable\-slave\fR \fIport\fR \fIslave\fR" |
188 | .IQ "\fBbond/disable\-slave\fR \fIport\fR \fIslave\fR" | |
b16fdafe BP |
189 | Enables (or disables) \fIslave\fR on the given bond \fIport\fR, skipping any |
190 | updelay (or downdelay). | |
191 | .IP | |
192 | This setting is not permanent: it persists only until the carrier | |
193 | status of \fIslave\fR changes. | |
672d18b2 | 194 | .IP "\fBbond/hash\fR \fImac\fR [\fIvlan\fR] [\fIbasis\fR]" |
e58de0e3 | 195 | Returns the hash value which would be used for \fImac\fR with \fIvlan\fR |
672d18b2 | 196 | and \fIbasis\fR if specified. |
064af421 | 197 | . |
5dab8ece | 198 | .IP "\fBlacp/show\fR [\fIport\fR]" |
6aa74308 EJ |
199 | Lists all of the LACP related information about the given \fIport\fR: |
200 | active or passive, aggregation key, system id, and system priority. Also | |
201 | lists information about each slave: whether it is enabled or disabled, | |
202 | whether it is attached or detached, port id and priority, actor | |
5dab8ece JP |
203 | information, and partner information. If \fIport\fR is not specified, |
204 | then displays detailed information about all interfaces with CFM | |
205 | enabled. | |
6aa74308 | 206 | . |
27022416 | 207 | .so ofproto/ofproto-dpif-unixctl.man |
7aa697dd | 208 | .so ofproto/ofproto-unixctl.man |
b16fdafe | 209 | .so lib/vlog-unixctl.man |
149ff68a | 210 | .so lib/memory-unixctl.man |
cc01d0bb | 211 | .so lib/stress-unixctl.man |
7a7708a0 BP |
212 | . |
213 | .SH "LIMITS" | |
214 | . | |
215 | .PP | |
216 | We believe these limits to be accurate as of this writing. These | |
217 | limits assume the use of the Linux kernel datapath. | |
218 | . | |
219 | .IP \(bu | |
220 | Approximately 256 bridges given the allowance of 5,000 file | |
221 | descriptors that \fBovs\-ctl\fR(8) configures. (\fBovs\-vswitchd\fR | |
222 | requires 17 file descriptors per datapath.) | |
223 | . | |
224 | .IP \(bu | |
225 | 65,280 ports per bridge. Performance will degrade beyond 1,024 ports | |
226 | per bridge due to fixed hash table sizing. | |
227 | . | |
228 | .IP \(bu | |
229 | 2,048 MAC learning entries per bridge. | |
230 | . | |
231 | .IP \(bu | |
232 | Kernel flows are limited only by memory available to the kernel. | |
233 | Performance will degrade beyond 1,048,576 kernel flows per bridge with | |
234 | a 32-bit kernel, beyond 262,144 with a 64-bit kernel. | |
235 | (\fBovs\-vswitchd\fR should never install anywhere near that many | |
236 | flows.) | |
237 | . | |
238 | .IP \(bu | |
239 | OpenFlow flows are limited only by available memory. Performance is | |
240 | linear in the number of unique wildcard patterns. That is, an | |
241 | OpenFlow table that contains many flows that all match on the same | |
242 | fields in the same way has a constant-time lookup, but a table that | |
243 | contains many flows that match on different fields requires lookup | |
244 | time linear in the number of flows. | |
245 | . | |
246 | .IP \(bu | |
247 | 255 ports per bridge participating in 802.1D Spanning Tree Protocol. | |
248 | . | |
249 | .IP \(bu | |
250 | 32 mirrors per bridge. | |
251 | . | |
252 | .IP \(bu | |
253 | 15 bytes for the name of a port. (This is a Linux kernel limitation.) | |
254 | . | |
064af421 BP |
255 | .SH "SEE ALSO" |
256 | .BR ovs\-appctl (8), | |
064af421 | 257 | .BR ovs\-brcompatd (8), |
76343538 | 258 | .BR ovsdb\-server (1), |
5fca1acd | 259 | \fBINSTALL.Linux\fR in the Open vSwitch distribution. |