RDMA Work Request Processing for High Throughput Traffic Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional RDMA implementations face inefficiencies due to context-switching between user space and kernel space, which limits traffic generation and throughput performance during stress testing of data centers.

Innovation Solution

The method involves an RDMA node utilizing both user space and kernel space, where an application in the user space posts an RDMA work request with a data element indicating multiple RDMA requests to be generated by software in the kernel space, thereby reducing context-switching and improving processor utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional RDMA implementations use context-switching between user space and kernel space, then software-based RDMA test solutions can be implemented, but traffic generation rate and throughput performance are limited

Engineering Contradiction:
Improvesoftware-based test capabilityVSAvoidtraffic generation rate
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent extracts the RDMA request generation functionality from the user space application and places it directly in the kernel space driver. This allows the driver to generate multiple RDMA requests autonomously without requiring continuous context-switching to user space, thereby maintaining software-based test capability while significantly improving traffic generation rate.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a work queue mechanism where user space applications pre-post multiple RDMA work requests into the kernel space driver. The driver then processes these pre-prepared requests autonomously, eliminating the need for frequent context-switches and enabling high-rate traffic generation while maintaining ease of software-based operation.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If software executing in kernel space generates multiple RDMA requests autonomously, then context-switching overhead is reduced, but system complexity increases

Engineering Contradiction:
Improvecontext-switching overheadVSAvoidkernel space functionality
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the RDMA request processing into distinct components: user space applications responsible for high-level test logic and request posting, and kernel space drivers responsible for autonomous request generation and network transmission. This segmentation reduces context-switching overhead while organizing the increased system complexity into manageable, well-defined functional blocks.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12242413B2Methods, systems and computer readable media for improving remote direct memory access performance
Publication Date: 2025.03.04 KEYSIGHT TECHNOLOGIES INC
  • US12242413B2 patent drawing
  • US12242413B2 patent drawing
  • US12242413B2 patent drawing

AI summary

The subject matter described herein includes methods, systems, and computer readable media for improving remote direct memory access (RDMA) performance. A method for improving RDMA performance occurs at an RDMA node utilizing a user space and a kernel space for executing software. The method includes posting, by an application executing in the user space, an RDMA work request including a data element indicating a plurality of RDMA requests associated with the RDMA work request to be generated by software executing in the kernel space; and generating and sending, by the software executing in the kernel space, the plurality of RDMA requests to or via a system under test (SUT).