Extending RDMA Semantics for Local Storage Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computer systems face excessive processor overhead when inter-application communication requires processing thousands or millions of inputs and outputs, necessitating a more efficient method for read and write requests to local data stores.
Innovation Solution
Extending remote direct memory access (RDMA) semantics to enable local storage access, allowing out-of-order processing and completions, and providing a management interface to initialize a local persistent data store, which maps RDMA verbs and alters ordering semantics for efficient data access without processor involvement.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If processor involvement is used for each read and write request, then data access reliability is ensured, but processor overhead increases excessively
Solution Approach 1:
The patent extracts the processor involvement from the data access path by implementing RDMA semantics that allow direct memory access between storage devices and applications. The processor is taken out of the critical data access path, eliminating excessive overhead while maintaining reliability through the RDMA protocol stack and completion queues that track access operations without requiring continuous processor intervention.
Solution Approach 2:
The patent introduces an intermediary layer (the RDMA semantics and storage device interface) that mediates between applications and the storage subsystem. This intermediary handles read and write requests directly at the memory level, providing reliable data access while shielding applications from processor overhead. The completion queue mechanism acts as an intermediary feedback system that ensures reliability without requiring processor involvement for each access.
2Speed
If RDMA semantics are extended to local storage, then data transfer speed increases, but processing order may be disrupted
Solution Approach 1:
The patent applies dynamics by allowing flexible processing orders in the RDMA semantics while maintaining logical consistency. The system dynamically adjusts to out-of-order completions by using sequence numbers and completion tracking mechanisms that can handle non-sequential processing. This dynamic approach enables faster parallel data transfers while ensuring that application logic remains stable through proper synchronization primitives and completion notifications that preserve logical ordering where required.
3Productivity
If out-of-order processing is allowed, then system throughput increases, but data consistency may be compromised
Solution Approach 1:
The patent implements feedback mechanisms through completion queues and status tracking that provide information about the state of data access operations. This feedback system allows the system to maintain data consistency even with out-of-order processing by tracking which operations have completed and ensuring proper synchronization. The feedback enables throughput optimization while preserving data consistency through controlled access patterns and completion-based synchronization.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments described herein are directed to extending remote direct memory access (RDMA) semantics to enable implementation in a local storage system and to providing a management interface for initializing a local data store. A computer system extends RDMA semantics to provide local storage access using RDMA, where extending the RDMA semantics includes the following: mapping RDMA verbs of an RDMA verbs interface to a local data store and altering RDMA ordering semantics to allow out-of-order processing and/or out-of-order completions. The computer system also accesses various portions of the local data store using the extended RDMA semantics.