Multi-Host NIC RDMA Key Allocation Offloading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current RDMA technologies require significant CPU processing resources for storage services, leading to inefficiencies and resource wastage, as they often necessitate multiple memory allocations and unnecessary operations when accessing remote storage devices.
Innovation Solution
Implementing multi-host network interface controllers (NICs) with onboard processors that allocate a single key per address, allowing the main processor and the NIC processor to generate instructions based on this key, thereby offloading storage operations and optimizing data transfer between client devices and remote storage devices over a network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional RDMA technologies are used for storage operations, then remote memory access functionality is provided, but significant CPU processing resources are consumed and multiple memory allocations are required
Solution Approach 1:
The patent extracts storage service processing from the main CPU and relocates it to the NIC's onboard processor. The NIC processor independently handles storage operations including key allocation, memory management, and data transfer, eliminating the need for CPU intervention in these operations. This extraction resolves the contradiction by maintaining storage functionality while removing the CPU resource burden.
Solution Approach 2:
The NIC is designed to be self-sufficient in handling storage operations. The onboard processor autonomously performs key allocation, memory allocation, and data transfer operations without requiring CPU assistance. The NIC manages its own resources and operations, enabling storage services to run independently on the network interface card itself, thereby improving productivity while reducing CPU energy consumption.
2Productivity
If traditional RDMA technologies are used for storage operations, then remote memory access is enabled, but multiple memory allocations and unnecessary operations occur
Solution Approach 1:
The patent implements a segmented key system where different key types (host keys, NIC processor keys, storage device keys) are allocated for different stages of data transfer. This segmentation allows each component to operate independently with its own key, eliminating the need for multiple memory allocations and intermediate operations. Data flows directly from source to destination through properly segmented key-based access, reducing operational complexity while maintaining high productivity.
3Productivity
If SmartNICs with onboard processors are implemented, then CPU operations are offloaded, but system complexity increases
Solution Approach 1:
The NIC onboard processor is designed to perform multiple functions: it handles key allocation, memory management, data transfer coordination, and storage operation processing. This multi-functionality consolidates what would otherwise require separate components, reducing overall system complexity while maintaining the productivity benefits of CPU offloading. The universal processor on the NIC handles all storage-related tasks, making the added complexity worthwhile through functional integration.
Data Source
AI summary
A system and method for improved remote direct memory access (RDMA) for multi-host network interface controllers (NIC), the method including: allocating a first key to a first host, the first key corresponding to a first address of a memory device of the first host; and allocating the first key to a second host, wherein the second host is an RDMA NIC (rNIC) configured to offload at least a portion of storage operations from the first host.


