DCB-DCBX(8)

๐Ÿ’… DCB-DCBX โ€” show / manipulate port DCBX (Data Center Bridging eXchange)

okay bestie, sit down, we're talking DCBX today and honestly? it's giving โœจnetwork magicโœจ. this is the dcb-dcbx page from the Linux dcb family, and i'm gonna walk you through it like we're texting at 2am. ๐Ÿฆ‹


๐ŸŒธ NAME ๐ŸŒธ

dcb-dcbx โ€” show / manipulate port DCBX (Data Center Bridging eXchange)


๐ŸŽ€ SYNOPSIS ๐ŸŽ€

dcb [ OPTIONS ] dcbx { COMMAND | help }

dcb dcbx show dev DEV

dcb dcbx set dev DEV [ host ] [ lld-managed ] [ cee ] [ ieee ] [ static ]

โœจ DESCRIPTION โœจ

so Data Center Bridging eXchange (DCBX) is a protocol that DCB devices use to exchange configuration info with the peers they're directly connected to. like, gossiping but make it infrastructure. ๐Ÿ’ฌ

the Linux DCBX object is literally just a 1-byte bitfield of flags. that's it. one lil byte. and those flags say two things:

  • whether DCBX is implemented in the device or in the host
  • which version of the protocol should be used

and dcb dcbx is your key to the per-port Linux DCBX object. ๐Ÿ”‘

there are two principal modes of operation:

  • host mode โ€” the DCBX protocol is implemented by the host LLDP agent, and the DCB interfaces are used to propagate the negotiated parameters to capable devices.
  • lld-managed mode โ€” the configuration is handled by the device, and the DCB interfaces are used for inspection of negotiated parameters, and can also be used to set initial parameters.

both valid, both iconic, depends on your vibe. ๐Ÿ’…


๐Ÿ‘‘ PARAMETERS ๐Ÿ‘‘

when you use dcb dcbx set, the keywords below turn on their corresponding configuration. the keywords you don't mention on the command line are considered disabled. when you use show, every enabled feature shows up as its own keyword. slay.

  • host
  • lld-managed โ€” the device is in the host mode of operation, and respectively, the lld-managed mode of operation, as described above. in principle these two keywords are mutually exclusive, but dcb dcbx allows setting both and lets the driver handle it as appropriate. (yes, both. it's fine. the driver's got it. ๐Ÿ™ˆ)
  • cee
  • ieee โ€” the device supports CEE (Converged Enhanced Ethernet) and, respectively, the IEEE version of the DCB specification. typically only one of these will be set, but dcb dcbx does not mandate this. live your truth.
  • static โ€” indicates the engine supports static configuration. no actual negotiation is performed โ€” negotiated parameters are always the initial configuration.

๐Ÿ“ EXAMPLE & USAGE ๐Ÿ“

put the DCB engine into the "host" mode of operation, and use IEEE-standardized DCB interfaces:

# dcb dcbx set dev eth0 host ieee

show what was set:

# dcb dcbx show dev eth0
host ieee

look at her go. ๐Ÿ˜ญ๐Ÿ’–


โญ EXIT STATUS โญ

exit status is 0 if the command was successful, or a positive integer upon failure. no in-between, we don't do ambiguity here.


๐Ÿซถ SEE ALSO ๐Ÿซถ


๐Ÿ’€ REPORTING BUGS ๐Ÿ’€

found a bug? report it to the Network Developers mailing list <netdev@vger.kernel.org> โ€” that's where the development and maintenance is primarily done. and good news bestie: you do not have to be subscribed to the list to send a message there. just send it. periodt. ๐Ÿ“จ


๐ŸŒˆ AUTHOR ๐ŸŒˆ

Petr Machata <me@pmachata.org>


and that's the whole page, no cap. this one shipped as part of iproute2, dated 13 December 2020 โ€” go forth and configure your DCBX flags, you absolute icon. ๐Ÿ’…โœจ๐ŸŽ€

๐Ÿ“ฆ where this page comes from