1 '\" te
2 .\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH FLOWADM 1M "Feb 14, 2009"
7 .SH NAME
8 flowadm \- administer bandwidth resource control and priority for protocols,
9 services, containers, and virtual machines
10 .SH SYNOPSIS
11 .LP
12 .nf
13 \fBflowadm show-flow\fR [\fB-pP\fR] [\fB-S\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-l\fR \fIlink\fR]
14 [\fB-o\fR \fIfield\fR[,...]] [\fIflow\fR]
15 .fi
16
17 .LP
18 .nf
19 \fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR \fB-a\fR \fIattr\fR=\fIvalue\fR[,...]
20 \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
21 \fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] {\fB-l\fR \fIlink\fR | \fIflow\fR}
22 .fi
23
24 .LP
25 .nf
26 \fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
27 \fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIprop\fR[,...]] \fIflow\fR
28 \fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-o\fR \fIfield\fR[,...]]
29 [\fB-p\fR \fIprop\fR[,...]] [\fIflow\fR]
30 .fi
31
32 .LP
33 .nf
34 \fBflowadm show-usage\fR [\fB-a\fR] [\fB-d\fR | {\fB-p\fR \fIplotfile\fR \fB-F\fR \fIformat\fR}] [\fB-s\fR \fItime\fR]
35 [\fB-e\fR \fItime\fR] \fB-f\fR \fIfilename\fR [\fIflow\fR]
36 .fi
37
38 .SH DESCRIPTION
39 .sp
40 .LP
41 The \fBflowadm\fR command is used to create, modify, remove, and show
60 .LP
61 Inbound and outbound packet are matched to flows in a very fast and scalable
62 way, so that limits can be enforced with minimal performance impact.
63 .sp
64 .LP
65 The \fBflowadm\fR command can be used to identify a flow without imposing any
66 bandwidth resource control. This would result in the traffic type getting its
67 own resources and queues so that it is isolated from rest of the networking
68 traffic for more observable and deterministic behavior.
69 .sp
70 .LP
71 \fBflowadm\fR is implemented as a set of subcommands with corresponding
72 options. Options are described in the context of each subcommand.
73 .SH SUB-COMMANDS
74 .sp
75 .LP
76 The following subcommands are supported:
77 .sp
78 .ne 2
79 .na
80 \fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
81 [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fIflow\fR]\fR
82 .ad
83 .sp .6
84 .RS 4n
85 Show flow configuration information (the default) or statistics, either for all
86 flows, all flows on a link, or for the specified \fIflow\fR.
87 .sp
88 .ne 2
89 .na
90 \fB\fB-o\fR \fIfield\fR[,...]\fR
91 .ad
92 .sp .6
93 .RS 4n
94 A case-insensitive, comma-separated list of output fields to display. The field
95 name must be one of the fields listed below, or a special value \fBall\fR, to
96 display all fields. For each flow found, the following fields can be displayed:
97 .sp
98 .ne 2
99 .na
100 \fB\fBflow\fR\fR
101 .ad
206 \fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
207 .ad
208 .sp .6
209 .RS 4n
210 Used with the \fB-s\fR option to specify an interval, in seconds, at which
211 statistics should be displayed. If this option is not specified, statistics are
212 displayed once.
213 .RE
214
215 .sp
216 .ne 2
217 .na
218 \fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
219 .ad
220 .sp .6
221 .RS 4n
222 Display information for all flows on the named link or information for the
223 named flow.
224 .RE
225
226 .RE
227
228 .sp
229 .ne 2
230 .na
231 \fB\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
232 \fIlink\fR \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR
233 \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
234 .ad
235 .sp .6
236 .RS 4n
237 Adds a flow to the system. The flow is identified by its flow attributes and
238 properties.
239 .sp
240 As part of identifying a particular flow, its bandwidth resource can be limited
241 and its relative priority to other traffic can be specified. If no bandwidth
242 limit or priority is specified, the traffic still gets its unique layer 2, 3,
243 and 4 queues and processing threads, including NIC hardware resources (when
244 supported), so that the selected traffic can be separated from others and can
245 flow with minimal impact from other traffic.
246 .sp
247 .ne 2
248 .na
249 \fB\fB-t\fR, \fB--temporary\fR\fR
250 .ad
251 .sp .6
252 .RS 4n
253 The changes are temporary and will not persist across reboots. Persistence is
254 the default.
255 .RE
256
257 .sp
258 .ne 2
259 .na
260 \fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
261 .ad
262 .sp .6
263 .RS 4n
264 Specifies an alternate root directory where \fBflowadm\fR should apply
265 persistent creation.
266 .RE
267
268 .sp
269 .ne 2
270 .na
271 \fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
272 .ad
273 .sp .6
274 .RS 4n
275 Specify the link to which the flow will be added.
276 .RE
277
278 .sp
279 .ne 2
280 .na
281 \fB\fB-a\fR \fIattr\fR=\fIvalue\fR[,...], \fB--attr\fR=\fIvalue\fR\fR
282 .ad
283 .sp .6
284 .RS 4n
285 A comma-separated list of attributes to be set to the specified values.
286 .RE
287
288 .sp
289 .ne 2
290 .na
291 \fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
292 .ad
293 .sp .6
294 .RS 4n
295 A comma-separated list of properties to be set to the specified values.
296 .RE
297
298 .RE
299
300 .sp
301 .ne 2
302 .na
303 \fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
304 {\fIlink\fR | \fIflow\fR}\fR
305 .ad
306 .sp .6
307 .RS 4n
308 Remove an existing flow identified by its link or name.
309 .sp
310 .ne 2
311 .na
312 \fB\fB-t\fR, \fB--temporary\fR\fR
313 .ad
314 .sp .6
315 .RS 4n
316 The changes are temporary and will not persist across reboots. Persistence is
317 the default.
318 .RE
319
320 .sp
321 .ne 2
322 .na
323 \fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
324 .ad
325 .sp .6
326 .RS 4n
327 Specifies an alternate root directory where \fBflowadm\fR should apply
328 persistent removal.
329 .RE
330
331 .sp
332 .ne 2
333 .na
334 \fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
335 .ad
336 .sp .6
337 .RS 4n
338 If a link is specified, remove all flows from that link. If a single flow is
339 specified, remove only that flow.
340 .RE
341
342 .RE
343
344 .sp
345 .ne 2
346 .na
347 \fB\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
348 \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
349 .ad
350 .sp .6
|
1 '\" te
2 .\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
3 .\" Copyright (c) 2011, Joyent, Inc. All Rights Reserved
4 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
5 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
6 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
7 .TH FLOWADM 1M "Feb 14, 2009"
8 .SH NAME
9 flowadm \- administer bandwidth resource control and priority for protocols,
10 services, containers, and virtual machines
11 .SH SYNOPSIS
12 .LP
13 .nf
14 \fBflowadm show-flow\fR [\fB-pP\fR] [\fB-S\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-l\fR \fIlink\fR]
15 [\fB-o\fR \fIfield\fR[,...]] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]
16 .fi
17
18 .LP
19 .nf
20 \fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR
21 \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
22 \fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] {\fB-l\fR \fIlink\fR | \fIflow\fR}
23 .fi
24
25 .LP
26 .nf
27 \fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
28 \fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIprop\fR[,...]] \fIflow\fR
29 \fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-o\fR \fIfield\fR[,...]]
30 [\fB-p\fR \fIprop\fR[,...]] [\fIflow\fR]
31 .fi
32
33 .LP
34 .nf
35 \fBflowadm show-usage\fR [\fB-a\fR] [\fB-d\fR | {\fB-p\fR \fIplotfile\fR \fB-F\fR \fIformat\fR}] [\fB-s\fR \fItime\fR]
36 [\fB-e\fR \fItime\fR] \fB-f\fR \fIfilename\fR [\fIflow\fR]
37 .fi
38
39 .SH DESCRIPTION
40 .sp
41 .LP
42 The \fBflowadm\fR command is used to create, modify, remove, and show
61 .LP
62 Inbound and outbound packet are matched to flows in a very fast and scalable
63 way, so that limits can be enforced with minimal performance impact.
64 .sp
65 .LP
66 The \fBflowadm\fR command can be used to identify a flow without imposing any
67 bandwidth resource control. This would result in the traffic type getting its
68 own resources and queues so that it is isolated from rest of the networking
69 traffic for more observable and deterministic behavior.
70 .sp
71 .LP
72 \fBflowadm\fR is implemented as a set of subcommands with corresponding
73 options. Options are described in the context of each subcommand.
74 .SH SUB-COMMANDS
75 .sp
76 .LP
77 The following subcommands are supported:
78 .sp
79 .ne 2
80 .na
81 \fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]\fR
82 .ad
83 .sp .6
84 .RS 4n
85 Show flow configuration information (the default) or statistics, either for all
86 flows, all flows on a link, or for the specified \fIflow\fR.
87 .sp
88 .ne 2
89 .na
90 \fB\fB-o\fR \fIfield\fR[,...]\fR
91 .ad
92 .sp .6
93 .RS 4n
94 A case-insensitive, comma-separated list of output fields to display. The field
95 name must be one of the fields listed below, or a special value \fBall\fR, to
96 display all fields. For each flow found, the following fields can be displayed:
97 .sp
98 .ne 2
99 .na
100 \fB\fBflow\fR\fR
101 .ad
206 \fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
207 .ad
208 .sp .6
209 .RS 4n
210 Used with the \fB-s\fR option to specify an interval, in seconds, at which
211 statistics should be displayed. If this option is not specified, statistics are
212 displayed once.
213 .RE
214
215 .sp
216 .ne 2
217 .na
218 \fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
219 .ad
220 .sp .6
221 .RS 4n
222 Display information for all flows on the named link or information for the
223 named flow.
224 .RE
225
226 .sp
227 .ne 2
228 .na
229 \fB\fB-z\fR \fIzonename\fR
230 .ad
231 .sp .6
232 .RS 4n
233 Operate on a link that has been delegated to the specified zone.
234 .RE
235
236 .RE
237
238 .sp
239 .ne 2
240 .na
241 \fB\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
242 .ad
243 .sp .6
244 .RS 4n
245 Adds a flow to the system. The flow is identified by its flow attributes and
246 properties.
247 .sp
248 As part of identifying a particular flow, its bandwidth resource can be limited
249 and its relative priority to other traffic can be specified. If no bandwidth
250 limit or priority is specified, the traffic still gets its unique layer 2, 3,
251 and 4 queues and processing threads, including NIC hardware resources (when
252 supported), so that the selected traffic can be separated from others and can
253 flow with minimal impact from other traffic.
254 .sp
255 .ne 2
256 .na
257 \fB\fB-t\fR, \fB--temporary\fR\fR
258 .ad
259 .sp .6
260 .RS 4n
261 The changes are temporary and will not persist across reboots. Persistence is
262 the default.
263 .RE
264
265 .sp
266 .ne 2
267 .na
268 \fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
269 .ad
270 .sp .6
271 .RS 4n
272 Specifies an alternate root directory where \fBflowadm\fR should apply
273 persistent creation.
274 .RE
275
276 .sp
277 .ne 2
278 .na
279 \fB\fB-z\fR \fIzonename\fR
280 .ad
281 .sp .6
282 .RS 4n
283 Operate on a link that has been delegated to the specified zone.
284 .RE
285
286 .sp
287 .ne 2
288 .na
289 \fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
290 .ad
291 .sp .6
292 .RS 4n
293 Specify the link to which the flow will be added.
294 .RE
295
296 .sp
297 .ne 2
298 .na
299 \fB\fB-a\fR \fIattr\fR=\fIvalue\fR[,...], \fB--attr\fR=\fIvalue\fR\fR
300 .ad
301 .sp .6
302 .RS 4n
303 A comma-separated list of attributes to be set to the specified values.
304 .RE
305
306 .sp
307 .ne 2
308 .na
309 \fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
310 .ad
311 .sp .6
312 .RS 4n
313 A comma-separated list of properties to be set to the specified values.
314 .RE
315
316 .RE
317
318 .sp
319 .ne 2
320 .na
321 \fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR {\fIlink\fR | \fIflow\fR}\fR
322 .ad
323 .sp .6
324 .RS 4n
325 Remove an existing flow identified by its link or name.
326 .sp
327 .ne 2
328 .na
329 \fB\fB-t\fR, \fB--temporary\fR\fR
330 .ad
331 .sp .6
332 .RS 4n
333 The changes are temporary and will not persist across reboots. Persistence is
334 the default.
335 .RE
336
337 .sp
338 .ne 2
339 .na
340 \fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
341 .ad
342 .sp .6
343 .RS 4n
344 Specifies an alternate root directory where \fBflowadm\fR should apply
345 persistent removal.
346 .RE
347
348 .sp
349 .ne 2
350 .na
351 \fB\fB-z\fR \fIzonename\fR
352 .ad
353 .sp .6
354 .RS 4n
355 Operate on a link that has been delegated to the specified zone.
356 .RE
357
358 .sp
359 .ne 2
360 .na
361 \fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
362 .ad
363 .sp .6
364 .RS 4n
365 If a link is specified, remove all flows from that link. If a single flow is
366 specified, remove only that flow.
367 .RE
368
369 .RE
370
371 .sp
372 .ne 2
373 .na
374 \fB\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
375 \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
376 .ad
377 .sp .6
|