mirror of
				https://git.proxmox.com/git/mirror_iproute2
				synced 2025-11-04 02:11:27 +00:00 
			
		
		
		
	Signed-off-by: Petr Machata <me@pmachata.org> Signed-off-by: David Ahern <dsahern@gmail.com>
		
			
				
	
	
		
			195 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			195 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.TH DCB-ETS 8 "19 October 2020" "iproute2" "Linux"
 | 
						|
.SH NAME
 | 
						|
dcb-ets \- show / manipulate ETS (Enhanced Transmission Selection) settings of
 | 
						|
the DCB (Data Center Bridging) subsystem
 | 
						|
.SH SYNOPSIS
 | 
						|
.sp
 | 
						|
.ad l
 | 
						|
.in +8
 | 
						|
 | 
						|
.ti -8
 | 
						|
.B dcb
 | 
						|
.RI "[ " OPTIONS " ] "
 | 
						|
.B ets
 | 
						|
.RI "{ " COMMAND " | " help " }"
 | 
						|
.sp
 | 
						|
 | 
						|
.ti -8
 | 
						|
.B dcb ets show dev
 | 
						|
.RI DEV
 | 
						|
.RB "[ " willing " ]"
 | 
						|
.RB "[ " ets-cap " ]"
 | 
						|
.RB "[ " cbs " ]"
 | 
						|
.RB "[ " tc-tsa " ]"
 | 
						|
.RB "[ " reco-tc-tsa " ]"
 | 
						|
.RB "[ " pg-bw " ]"
 | 
						|
.RB "[ " tc-bw " ]"
 | 
						|
.RB "[ " reco-tc-bw " ]"
 | 
						|
.RB "[ " prio-tc " ]"
 | 
						|
.RB "[ " reco-prio-tc " ]"
 | 
						|
 | 
						|
.ti -8
 | 
						|
.B dcb ets set dev
 | 
						|
.RI DEV
 | 
						|
.RB "[ " willing " { " on " | " off " } ]"
 | 
						|
.RB "[ { " tc-tsa " | " reco-tc-tsa " } " \fITSA-MAP\fB " ]"
 | 
						|
.RB "[ { " pg-bw " | " tc-bw " | " reco-tc-bw " } " \fIBW-MAP\fB " ]"
 | 
						|
.RB "[ { " prio-tc " | " reco-prio-tc " } " \fIPRIO-MAP\fB " ]"
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR TSA-MAP " := [ " TSA-MAP " ] " TSA-MAPPING
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR TSA-MAPPING " := { " TC " | " \fBall " }" \fB: "{ " \fBstrict\fR " | "
 | 
						|
.IR \fBcbs\fR " | " \fBets\fR " | " \fBvendor\fR " }"
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR BW-MAP " := [ " BW-MAP " ] " BW-MAPPING
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR BW-MAPPING " := { " TC " | " \fBall " }" \fB:\fIINTEGER\fR
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR PRIO-MAP " := [ " PRIO-MAP " ] " PRIO-MAPPING
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR PRIO-MAPPING " := { " PRIO " | " \fBall " }" \fB:\fITC\fR
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR TC " := { " \fB0\fR " .. " \fB7\fR " }"
 | 
						|
 | 
						|
.ti -8
 | 
						|
.IR PRIO " := { " \fB0\fR " .. " \fB7\fR " }"
 | 
						|
 | 
						|
.SH DESCRIPTION
 | 
						|
 | 
						|
.B dcb ets
 | 
						|
is used to configure Enhanced Transmission Selection attributes through Linux
 | 
						|
DCB (Data Center Bridging) interface. ETS permits configuration of mapping of
 | 
						|
priorities to traffic classes, traffic selection algorithm to use per traffic
 | 
						|
class, bandwidth allocation, etc.
 | 
						|
 | 
						|
Two DCB TLVs are related to the ETS feature: a configuration and recommendation
 | 
						|
values. Recommendation values are named with a prefix
 | 
						|
.B reco-,
 | 
						|
while the configuration ones have plain names.
 | 
						|
 | 
						|
.SH PARAMETERS
 | 
						|
 | 
						|
For read-write parameters, the following describes only the write direction,
 | 
						|
i.e. as used with the \fBset\fR command. For the \fBshow\fR command, the
 | 
						|
parameter name is to be used as a simple keyword without further arguments. This
 | 
						|
instructs the tool to show the value of a given parameter. When no parameters
 | 
						|
are given, the tool shows the complete ETS configuration.
 | 
						|
 | 
						|
.TP
 | 
						|
.B ets-cap
 | 
						|
A read-only property that shows the number of supported ETS traffic classes.
 | 
						|
 | 
						|
.TP
 | 
						|
.B cbs
 | 
						|
A read-only property that is enabled if the driver and the hardware support the
 | 
						|
CBS Transmission Selection Algorithm.
 | 
						|
 | 
						|
.TP
 | 
						|
.B willing \fR{ \fBon\fR | \fBoff\fR }
 | 
						|
Whether local host should accept configuration from peer TLVs.
 | 
						|
 | 
						|
.TP
 | 
						|
.B prio-tc \fIPRIO-MAP
 | 
						|
.TQ
 | 
						|
.B reco-prio-tc \fIPRIO-MAP
 | 
						|
\fIPRIO-MAP\fR uses the array parameter syntax, see
 | 
						|
.BR dcb (8)
 | 
						|
for details. Keys are priorities, values are traffic classes. For each priority
 | 
						|
sets a TC where traffic with that priority is directed to.
 | 
						|
 | 
						|
.TP
 | 
						|
.B tc-tsa \fITSA-MAP
 | 
						|
.TQ
 | 
						|
.B reco-tc-tsa \fITSA-MAP
 | 
						|
\fITSA-MAP\fR uses the array parameter syntax, see
 | 
						|
.BR dcb (8)
 | 
						|
for details. Keys are TCs, values are Transmission Selection Algorithm (TSA)
 | 
						|
keywords described below. For each TC sets an algorithm used for deciding how
 | 
						|
traffic queued up at this TC is scheduled for transmission. Supported TSAs are:
 | 
						|
 | 
						|
.B strict
 | 
						|
- for strict priority, where traffic in higher-numbered TCs always takes
 | 
						|
precedence over traffic in lower-numbered TCs.
 | 
						|
.br
 | 
						|
.B ets
 | 
						|
- for Enhanced Traffic Selection, where available bandwidth is distributed among
 | 
						|
the ETS-enabled TCs according to the weights set by
 | 
						|
.B tc-bw
 | 
						|
and
 | 
						|
.B reco-tc-bw\fR,
 | 
						|
respectively.
 | 
						|
.br
 | 
						|
.B cbs
 | 
						|
- for Credit Based Shaper, where traffic is scheduled in a strict manner up to
 | 
						|
the limit set by a shaper.
 | 
						|
.br
 | 
						|
.B vendor
 | 
						|
- for vendor-specific traffic selection algorithm.
 | 
						|
 | 
						|
.TP
 | 
						|
.B tc-bw \fIBW-MAP
 | 
						|
.TQ
 | 
						|
.B reco-tc-bw \fIBW-MAP
 | 
						|
\fIBW-MAP\fR uses the array parameter syntax, see
 | 
						|
.BR dcb (8)
 | 
						|
for details. Keys are TCs, values are integers representing percent of available
 | 
						|
bandwidth given to the traffic class in question. The value should be 0 for TCs
 | 
						|
whose TSA is not \fBets\fR, and the sum of all values shall be 100. As an
 | 
						|
exception to the standard wording, a configuration with no \fBets\fR TCs is
 | 
						|
permitted to sum up to 0 instead.
 | 
						|
.br
 | 
						|
 | 
						|
.TP
 | 
						|
.B pg-bw \fIBW-MAP
 | 
						|
The precise meaning of \fBpg-bw\fR is not standardized, but the assumption seems
 | 
						|
to be that the same scheduling process as on the transmit side is applicable on
 | 
						|
receive side as well, and configures receive bandwidth allocation for \fBets\fR
 | 
						|
ingress traffic classes (priority groups).
 | 
						|
 | 
						|
.SH EXAMPLE & USAGE
 | 
						|
 | 
						|
Configure ETS priomap in a one-to-one fashion:
 | 
						|
 | 
						|
.P
 | 
						|
# dcb ets set dev eth0 prio-tc 0:0 1:1 2:2 3:3 4:4 5:5 6:6 7:7
 | 
						|
 | 
						|
Set TSA and transmit bandwidth configuration:
 | 
						|
 | 
						|
.P
 | 
						|
# dcb ets set dev eth0 tc-tsa all:strict 0:ets 1:ets 2:ets \\
 | 
						|
.br
 | 
						|
                       tc-bw all:0 0:33 1:33 2:34
 | 
						|
 | 
						|
Show what was set:
 | 
						|
 | 
						|
.P
 | 
						|
# dcb ets show dev eth0 prio-tc tc-tsa tc-bw
 | 
						|
.br
 | 
						|
prio-tc 0:0 1:1 2:2 3:3 4:4 5:5 6:6 7:7
 | 
						|
.br
 | 
						|
tc-tsa 0:ets 1:ets 2:ets 3:strict 4:strict 5:strict 6:strict 7:strict
 | 
						|
.br
 | 
						|
tc-bw 0:33 1:33 2:34 3:0 4:0 5:0 6:0 7:0
 | 
						|
 | 
						|
.SH EXIT STATUS
 | 
						|
Exit status is 0 if command was successful or a positive integer upon failure.
 | 
						|
 | 
						|
.SH SEE ALSO
 | 
						|
.BR dcb (8)
 | 
						|
 | 
						|
.SH REPORTING BUGS
 | 
						|
Report any bugs to the Network Developers mailing list
 | 
						|
.B <netdev@vger.kernel.org>
 | 
						|
where the development and maintenance is primarily done.
 | 
						|
You do not have to be subscribed to the list to send a message there.
 | 
						|
 | 
						|
.SH AUTHOR
 | 
						|
Petr Machata <me@pmachata.org>
 |