Drive Assisted Storage Controller Peer-to-Peer Data Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional RAID storage systems face performance saturation issues with SSDs, requiring additional hardware and increasing costs due to the storage controller's limited bandwidth and inefficient data transfer processes.
Innovation Solution
The implementation of a drive assist storage system that allows peer-to-peer communications between storage devices, moving the storage controller out of the data path to enable direct data transfer and reduce the number of interrupts processed, thereby scaling bandwidth with the number of SSDs and improving IOP performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If storage controller manages data transfer between host and storage devices, then data access is controlled and managed, but IOP performance saturates with only 8-16 SSDs and additional hardware is required
Solution Approach 1:
The patent extracts the storage controller from the data path, allowing SSDs to communicate directly with each other via peer-to-peer commands. The controller is removed from the critical data transfer path while remaining available for management functions, eliminating it as a performance bottleneck.
Solution Approach 2:
The patent introduces a peer-to-peer command mechanism as an intermediary that enables direct communication between SSDs. This mediator allows data to bypass the storage controller during transfer operations, achieving high-speed data movement while maintaining controller oversight for management tasks.
2Ease of operation
If storage controller processes all data transfers, then centralized control is maintained, but bandwidth is limited and additional controllers increase system cost
Solution Approach 1:
The patent segments data transfer operations from management operations. Data transfers are handled directly between SSDs through peer-to-peer commands, while the storage controller retains responsibility for management functions. This segmentation allows bandwidth to scale with the number of SSDs without requiring additional controllers.
3Ease of operation
If data traverses storage controller for each transfer, then centralized data flow is maintained, but transfer efficiency decreases and processing load increases
Solution Approach 1:
The patent extracts data transfer operations from the storage controller's processing path. By implementing peer-to-peer commands between SSDs, data transfers no longer require the controller to mediate each byte movement, dramatically improving transfer efficiency while the controller maintains oversight of the data flow topology.
4Productivity
If additional storage controllers are added to handle more SSDs, then IOP performance is maintained, but system cost increases
Solution Approach 1:
The patent segments the functionality between storage controllers and SSDs themselves. By enabling SSDs to perform peer-to-peer data transfers independently, the system eliminates the need for additional controllers to handle increased SSD counts. The controller focuses on management functions while SSDs handle data movement, allowing linear scaling without proportional increases in controller hardware.
Data Source
AI summary
A drive assisted storage controller system includes a first storage device that is coupled to a bus that includes a data path and a control path. The first storage device receives via the control path from a storage controller, a first peer-to-peer write command that identifies a host memory address included in a memory system, a first storage location provided in the first storage device, and a second storage location provided in a second storage device coupled to the bus. The first storage device retrieves, via the data path from the host memory address, first write data such that the first write data is not provided through the storage controller. The first storage device provides, via the control path to the second storage device, a second peer-to-peer write command that includes the second storage location. The second peer-to-peer write command causes the second storage device to retrieve the first write data from the first storage device via the data path.


