Changes and New Features

Component

Feature/Change

Description

mlx5

Tunnel Rules Offload

[ConnectX-6 Dx and above] Added support for offloading tunnel rules when the source interface is OpenvSwitch bridge (internal port).

Dynamically Assign MSI-X Vectors Count

[ConnectX-5, ConnectX-6, ConnectX-6 Dx and above] The number of MSI-X vectors is PCI property visible through lspci, that field is read-only and configured by the device.

The static assignment of an amount of MSI-X vectors does not allow utilize the newly created VF because it is not known to the device the future load and configuration where that VF will be used.

The VFs are created on the hypervisor and forwarded to the VMs that have different properties (for example number of CPUs).

To overcome the inefficiency in the spread of such MSI-X vectors, we allow the kernel to instruct the device with the needed number of such vectors, before VF is initialized and bounded to the driver.

ethtool Extended Link State in mlx5e

[ConnectX-4 and above] Added ethtool Extended Link State to mlx5e. ethtool can be used to get more information to help the user troubleshoot the state. For example, if there is no link due to a missing cable ($ ethtool eth1 ... Link detected: no (No cable)). Besides the general extended state, drivers can pass additional information about the link state using the sub-state field (for example: $ ethtool eth1 ... Link detected: no (Autoneg, No partner detected)). The extended state is available only for some cases of no link; in other cases, ethtool will print only "Link detected: no", as before.

Reading DSFP Module Information

[ConnectX-4 and above] Added support for reading DSFP module information.

The change included adding new options to ethtool netlink EEPROM module read API, to read specific page and bank.

Bridge Offloads with VLAN Support

[ConnectX-6 Dx and above] Added support for bridge offloads with VLAN support that works on top of mlx5 representors in switchdev mode.

Application Device Queues (ADQ)

[ConnectX-4 and above] Added driver-level support for Application Device Queues. It allows partition defining over the RX/TX queues into groups and isolates traffic of different applications. This mainly improves predictability and tail latency.

Hairpin Support in Switch Mode

[ConnectX-5 and above] Added support for receiving tunneled traffic from the uplink port, after which it can be decapsulated and sent them back to the uplink port, possibly encapsulated with new tunnel information.

RoCEv2 Flow Label and UDP Source Port Definition

[ConnectX-4 and above] This feature provides flow label and UDP source port definition in RoCE v2. Those fields are used to create entropy for network routes (ECMP), load balancers and 802.3ad link aggregation switching that are not aware of RoCE headers..

MPLS-Over-UDP Hardware Offload Support

[ConnectX-5 and above] Added support for encap/decap hardware offload of IPv4 traffic over MPLS-over-UDP. This can be used in networks with MPLS routers to achieve more efficient routing.

IPsec Crypto Offload

[ConnectX-6 Lx and above] Added support for IPsec crypto offload. IPsec offload is a set of features aimed at reducing the CPU overhead of using IPsec. It targets the heavy crypto (encryption/decryption) operation, offloading them to the hardware. Connectx6-Lx is the first ASIC to support IPsec crypto offload and handles all encryption, decryption, and authentication, leaving the rest (replay, encapsulation, and decapsulation) to the software IPsec implementation. This approach benefits from increased flexibility in software, at the cost of some performance overhead.

TLS RX Hardware Offload

[ConnectX-6 Dx and above] Added GA-level support for hardware offload decryption of TLS traffic over crypto-enabled ConnectX-6 Dx NICs and above.

mlx5

General Driver Update

Driver base Upstream Kernel v5.14

mlx4

General Driver Update

Driver base Upstream Kernel v5.14

libpcap

Support Sniffing Offloaded (RDMA) Traffic with tcpdump

Added support in libpcap to sniff user-space traffic (RoCE and raw Ethernet) using tcpdump.

rdma-core

Supported Version

Updated to version rdma-core-32.0-4.el8

mstflint

Supported Version

Updated to version mstflint-4.15.0-1.el8

VMA

Supported Version

Updated to version libvma-9.2.2-2.el8

UCX

Supported Version

Updated to version ucx-1.9.0-1.el8

© Copyright 2023, NVIDIA. Last updated on May 23, 2023.