Realizing the Power of Real-Time Network Processing with NVIDIA DOCA GPUNetIO

NVIDIA DOCA GPUNetIO: Real-Time Network Processing with GPUs
NVIDIA DOCA GPUNetIO is a library included in the NVIDIA DOCA software framework that allows for real-time processing of network traffic using GPUs. With the high degree of parallelism offered by GPUs, the DOCA GPUNetIO library enables CUDA kernels to send and receive packets directly from the GPU memory, without the need for CPU cores or memory.
Key features of the DOCA GPUNetIO library include:
- GPUDirect Async Kernel-Initiated Network (GDAKIN): This allows for communications over Ethernet, where the GPU (CUDA kernel) can directly interact with the network card to send or receive packets in GPU memory (GPUDirect RDMA) without CPU intervention.
DOCA GPUNetIO has been used in real-world applications, such as the NVIDIA Aerial SDK, where it eliminates the need for CPU involvement in sending and receiving packets. Its flexibility and high performance make it ideal for real-time network traffic analysis.
For example, the NVIDIA Morpheus team has integrated the DOCA framework to implement a high-speed, low-latency GPU packet acquisition source stage for network monitoring. This stage feeds real-time packets to an AI pipeline responsible for analyzing packet contents. The DOCA GPUNetIO library allows for the efficient reception, filtering, and analysis of packets in GPU memory, improving performance and reducing latency.
In another application, the DOCA GPUNetIO library is used in radar signal processing. The library enables the ingestion of downconverted I/Q samples from a simulated range-only radar system at line rates of up to 100 Gbps. By performing signal processing on the GPU, the received RF samples can be converted into object detections in real time. Common signal processing algorithms, such as MTI filtering, can be applied to eliminate background clutter and improve radar detection accuracy.