Changes and New Features
The default operating system for BF-Bundle (BFB) will change from Ubuntu 22.04 to Ubuntu 24.04 in the DOCA 3.2 release, scheduled for October 2025.
Quantum X800: DOCA now supports the NVIDIA Quantum X800 InfiniBand network platform.
DOCA STA library: New DOCA library for Storage Target (STA).
DOCA Argus Service: New service for securing AI workloads with no host dependency.
DOCA Platform Framework (DPF): Trusted host use case is now generally available.
DOCA Installer Tool: New tool for installing multiple Bluefield DPUs concurrently.
DOCA Perftest Tool: New RDMA benchmarking tool for AI compute clusters, now generally available.
DOCA Telemetry Utils: Display and generate available counters/IDs.
Congestion Control: Added Long Haul and auto-slot-selection (RTT).
OVS-DOCA: Added remote port mirroring, VF tunnel offload, and performance optimizations.
DOCA HBN Service: Increased EVPN scale (16K VTEPs), BFD, ECMP enhancements.
DOCA Management Service (DMS): Supports container deployment, multi-device support, and file read/write (log/config).
DOCA FireFly Service: Added support for 2-port presentation and monitoring.
DOCA Rivermax performance optimizations.
dpa-resource-mgmt-tool: New tool for centralizing DPA-resource usage for all (NVIDIA and customer) DPA applications.
CUDA 12.8: The CUDA stack included with DOCA has been updated to version 12.8 .
NV-HWS Library: New hardware steering module now included in DOCA packages.
DOCA GPUNetIO: The package has been streamlined and no longer depends on DPDK.
virtio-fs in DOCA-Host: Added the virtio-fs driver to DOCA-Host packages.
SPCX-CC: The congestion control package has been renamed from NVNCC to SPCX-CC.
NVQual: Added support for PCIe Gen6.0 (CX8).
NVCert: NVLink support was added for systems using the GB200 and ConnectX-7 hardware
Public GitHub with DOCA Samples: DOCA Reference Applications and sample code are now available via the NVIDIA DOCA GitHub repository, in addition to DOCA local repository on the host/device (opt/...).
BlueField-3 Non-Interrupting Upgrade: Host PCIe
is now available (beta).
BlueField ATX Power: The DPU shutdown on ATX disconnection at runtime has been removed to allow for uninterrupted operation and maintenance. However, running the DPU without re-connecting ATX power is not supported and may result in out-of-spec power levels, performance degradation, or hardware damage.
NVIDIA BlueField-3 networking platforms must use DOCA-Host as the host driver. MLNX_OFED does not support BlueField-3 devices.
Trust Lockdown Health Syndrome: Added a new health syndrome for trust lockdown and expose the CRR bit in the health buffer. When the CRR bit is set, it indicates that the syndrome requires a cold reset for recovery.
A Single PTP Device per Hardware Clock: PHC is typically shared across multiple functions. Currently, the driver creates a separate PTP device for each network interface sharing the same PHC, resulting in redundancy and added complexity. To address this, a single PTP device is now created to represent the shared PHC when operating in real-time mode.
Log IB State Transitions: Enhanced visibility into IB device state transitions by adding log messages to the kernel log (dmesg). Each time an IB device changes state, a corresponding message will be logged. For example: "mlx5_0: Port: 1 Link DOWN".
Optional-counters Binding Support and New Packets/bytes Counters: Previously, optional counters were available only on a per-link basis. This release introduces the ability to bind optional counters to a specific counter object, enabling users to track optional counters across a specific QP group. Support is provided for both automatic and manual binding modes. In both cases, the optional counters that are bound to the QP are those currently configured on the link at the time of binding. Additionally, four new optional counters that track RDMA ingress and egress traffic are introduced:
rdma_tx_bytes; rdma_tx_packets; rdma_rx_bytes; rdma_rx_packets
. This functionality is exposed to users via the iproute2 package, which must be updated to support this feature.User CAPability (UCAP) API: The User CAPability (UCAP) API introduces a mechanism for creating user contexts with specific firmware privileges. It offers fine-grained control over firmware features by exposing each capability as a character device with root-level read-write access. Root processes can grant users these privileges by allowing access to the corresponding character devices. When a user context is created using a UCAP file descriptor, it inherits the associated privileges. For mlx5, two UCAP character devices are provided, and any user context opened with at least one of them is treated as privileged. To guarantee the execution of privileged commands, non-privileged commands are restricted when a privileged user is active on the device.
PCIe Switch fwreset: Added support for a new synchronized flow, including a tool and driver, to perform a fwreset on setups with a PCIe switch configuration.
PTP: Unified PTP is now supported across different VFs on the same PF.
MADs: Added support for new MADs: PortRecoveryPolicyConfig and PortRecoveryPolicyCounters. During the PHY recovery process, the firmware core will indicate the port_logical_state as Active.
Multi-host MPFS LAG: In multi-host DPU mode, all ports are assigned to host0, while only port 0 is assigned to the other hosts. A global LAG is supported to manage all hosts.
Data-Path Accelerator (DPA): The DPA hardware version is now exposed as a new capability, labeled "dpa_platform_version."
Programmable Congestion Control (PCC) - RTT, DSCP: Enables users to manually set the DSCP in the IP header of the RTT response using mlxconfig. Additionally, the PPCC register now supports querying the count of processed RTT request packets per port.
Dynamic Long Cables: Added the ability to set cable length as a parameter in the PFCC access register. The cable length is used in the calculation of RX lossless buffer parameters, including size, Xoff, and Xon thresholds.
Block SMP Traffic: Added a new NV config (SM_DISABLE, default 0) which, when enabled, blocks SMP traffic that does not originate from the SM.
No new features, bug fixes only
The following table details the API changes that were introduced in this version of DOCA:
Library | Change Description |
DOCA Common | Added doca_dev.h
doca_uar.h doca_umem.h |
DOCA DevEmu | Added doca_devemu_pci_type.h
doca_devemu_pci.h
|
DOCA DPA | Added doca_dpa.h
|
DOCA DPDK Bridge | Added doca_dpdk.h
|
DOCA Ethernet | Added doca_eth_rxq_cpu_data_path.h
doca_eth_rxq
doca_eth_txq_gpu_data_path.h
|
DOCA PCC | Added doca_pcc_np_dev.h
doca_pcc_dev.h
doca_pcc.h
doca_pcc_dev_ztr_rttcc_algo.h
Removed doca_pcc.h
doca_pcc_dev_data_structures.h
|
DOCA RDMA | A dded doca_rdma.h
Changed doca_rdma.h
|
To view API changes for previous DOCA versions, refer to the release notes for those versions.