RAID Controller Bypass via Direct Memory Access Data Path
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional RAID storage techniques face inefficiencies due to hardware RAID controllers becoming bottlenecks during write operations and significant CPU resources being devoted to software RAID implementations, limiting resources for other requests.
Innovation Solution
Implementing a direct memory access (DMA) data path for RAID storage, where the RAID controller uses DMA to read data from host memory and compute parity information, then instructs storage devices to directly read and write data from host memory, thereby bypassing the RAID controller in the data path.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a hardware RAID controller is used to implement RAID algorithm, then data redundancy and storage performance are improved, but the RAID controller becomes a bottleneck during write operations
Solution Approach 1:
The patent extracts the data transfer function from the RAID controller by enabling storage devices to directly access host memory via DMA channels. This removes the bottleneck of data copying through the RAID controller while maintaining its parity computation and redundancy management functions.
Solution Approach 2:
The patent introduces host memory as an intermediary between the host and storage devices. Storage devices read/write data directly from host memory using DMA, bypassing the RAID controller for data transfer while the controller maintains oversight for RAID operations.
2Device complexity
If the host CPU implements RAID algorithm using software, then hardware resources are saved, but significant computational resources of the CPU are devoted to RAID tasks
Solution Approach 1:
The patent enables storage devices to autonomously perform data transfer operations by directly accessing host memory through DMA. This self-service capability eliminates the need for CPU intervention in data transfer, freeing computational resources while maintaining software-based RAID flexibility.
3Reliability
If the RAID controller reads and processes data through its internal path, then data integrity and RAID algorithm implementation are ensured, but processing speed is reduced due to the controller bottleneck
Solution Approach 1:
The patent segments the RAID controller's functions into two parts: data transfer operations are handled directly by storage devices via DMA, while the controller focuses on parity computation and RAID management. This segmentation allows parallel execution of data transfer and processing tasks.
Solution Approach 2:
The patent adds a new dimension to the data path by introducing direct DMA access between storage devices and host memory. This creates a parallel data transfer channel that operates independently of the traditional controller-mediated path, increasing overall system throughput.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Direct memory access data path for RAID storage is disclosed, including: receiving, at a Redundant Array of Independent Disks (RAID) controller, a request to write data to be distributed among a plurality of storage devices; computing parity information based at least in part on the data associated with the request; causing the parity information to be stored on a first subset of the plurality of storage devices; and causing the data associated with the request to be stored on a second subset of the plurality of storage devices, wherein the plurality of storage devices is configured to obtain the data associated with the request directly from a memory that is remote to the RAID controller, and wherein the data associated with the request does not pass through the RAID controller.