---
name: "lldptool-ets"
section: "8"
platform: "linux"
package: "lldpad"
version: "1.1.1-1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/lldptool-ets"
---

# lldptool-ets(8)

Show / manipulate ETS TLV configuration

## NAME

ETS-{CFG\|REC} - Show / manipulate ETS TLV configuration

## SYNOPSIS

**lldptool -t -i ethx -V ETS-CFG** \<-c CONFIG\_ARG ...\>

*CONFIG\_ARG* := {  **enableTx** \| **willing** \| **tsa** \| **up2tc** \| **numtcs** \| **tcbw** }

**lldptool -T -i ethx -V ETS-CFG** CONFIG\_ARG=value ...

*CONFIG\_ARG* :=

**enableTx** = **{yes\|no}** \|

**willing** = **{yes\|no}** \|

**tsa** = **tc:{ets\|strict\|vendor},...** \|

**up2tc** = **priority:tc,...** \|

**tcbw** = **bw1,bw2,...**

**lldptool -t -i ethx -V ETS-REC** \<-c CONFIG\_ARG ...\>

**lldptool -T -i ethx -V ETS-REC** CONFIG\_ARG=value ...

*CONFIG\_ARG* :=

**enableTx** = **{yes\|no}** \|

**tsa** = **tc:{ets\|strict\|vendor},...** \|

**up2tc** = **priority:tc,...** \|

**tcbw** = **bw1,bw2,...**

## DESCRIPTION

The Enhanced Transmission Selection (ETS) feature has a recommendation TLV and a configuration TLV configured with ETS-REC and ETS-CFG respectively.

## ARGUMENTS

- **enableTx**

  Enables the ETS TLV to be transmitted

- **willing**

  Sets the ETS-CFG willing bit

- **tsa**

  Transmission selection algorithm, sets a comma separated list of traffic classes to the corresponding selection algorithm. Valid algorithms include "ets", "strict" and "vendor".

- **up2tc**

  Comma separated list mapping user priorities to traffic classes.

- **tcbw**

  Comma separated list of bandwidths for each traffic class the first value being assigned to traffic class 0 and the second to traffic class 1 and so on. Undefined bandwidths are presumed to be 0.

- **numtcs**

  Displays the number of ETS supported traffic classes.

## Theory of Operations

IEEE 802.1Qaz is enabled by default on hardware that supports this mode indicated by support for the DCBNL interface. Kernel config option CONFIG\_DCB. The ETS-CFG TLV is advertised by default with the attributes indicated by querying the hardware for its current configuration. A valid configuration is to map all priorities to a single traffic class and use the link strict selection algorithm. This is equivalent to being in a non-DCB enabled mode.

To support legacy DCBX (CIN or CEE) the ETS-CFG and ETS-REC TLVs are disabled if a legacy DCBX TLV is received and no valid IEEE DCBX TLVs are received. The hardware DCBX mode will also be set to the legacy mode and IEEE mode is disabled. This allows switches to be configured and end nodes will then be configured accordingly without any configuration  required on the end node.  See *[lldpad(8)](/lldpad/8.md)* for more information about the operation of the DCBX selection mechanism.

Mapping applications and protocols to traffic classes is required for ETS to be useful. User space programs can encode the priority of an application with the SO\_PRIORITY option. The net\_prio cgroup can be used to assign application traffic to specific priorities.  See the kernel documentation and *cgdcbxd(8)* for net\_prio cgroup information.

## EXAMPLE & USAGE

- **Configure willing bit for interface *eth2***

  **lldptool -T -i eth2 -V ETS-CFG willing=yes**

- Configure traffic classes for ETS and strict priority on *eth2*

  **lldptool -T -i eth2 -V ETS-CFG tsa=0:ets,1:ets,2:ets,3:ets,4:strict,5:strict**

- Configure 1:1 mapping from priority to traffic classes on *eth2*

  **lldptool -T -i eth2 -V ETS-CFG up2tc=0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7**

- Display local configured ETS-CFG parameters for tcbw

  **lldptool -t -i eth2 -V ETS-CFG -c tcbw**

- Display last transmitted ETS-CFG TLV

  **lldptool -t -i eth2 -V ETS-CFG**

- Configure ETS-CFG and ETS-REC for default DCB on *eth2*

  **lldptool -T -i eth2 -V ETS-CFG tsa=0:ets,1:ets,2:ets,3:ets,4:ets,5:ets,6:ets,7:ets up2tc=0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7 tcbw=12,12,12,12,13,13,13,13**

  **lldptool -T -i eth2 -V ETS-REC tsa=0:ets,1:ets,2:ets,3:ets,4:ets,5:ets,6:ets,7:ets up2tc=0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7 tcbw=12,12,12,12,13,13,13,13**

## SOURCE

- o

  IEEE 802.1Qaz (http://www.ieee802.org/1/pages/dcbridges.html)

## NOTES

Support for tc-mqprio was added in 2.6.38 on older kernels other mechanisms may need to be used to map applications to traffic classes.

## SEE ALSO

[**lldptool**(8)](/lldptool/8.md), [**lldptool-app**(8)](/lldptool-app/8.md), [**lldpad**(8)](/lldpad/8.md), [**tc-mqprio**(8)](/tc-mqprio/8.md),

## AUTHOR

John Fastabend
