RDMA Access for Non-Volatile Solid-State Memory in Network Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network storage systems face bottlenecks in accessing flash memory due to serial command interfaces, which hinder low latency and high throughput, especially for write operations, and result in wearout issues over time.

Innovation Solution

Implementing remote direct memory access (RDMA) controlled by the storage server to access non-volatile solid-state memory, allowing compound RDMA commands that combine multiple client-initiated operations into single parallel or sequential reads/writes, and using a log structured write out-of-place data layout engine to manage flash memory, avoiding the need for erasure and reducing wear.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If flash memory is accessed through a serial command interface, then the interface simplicity is maintained, but the throughput and latency performance deteriorate

Engineering Contradiction:
Improveinterface simplicityVSAvoidthroughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent replaces the traditional serial command interface mechanism with RDMA (Remote Direct Memory Access) technology, which allows direct memory access between storage devices and host without going through the flash memory controller's serial interface. This substitution eliminates the bottleneck of sequential command processing and enables parallel data transfers, significantly improving throughput while maintaining operational simplicity through automated memory mapping.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent transitions from one-dimensional sequential command processing to multi-dimensional parallel memory access by implementing RDMA with scatter-gather operations. This allows simultaneous reads and writes to different memory locations, effectively adding temporal and spatial dimensions to the access pattern, thereby resolving the throughput limitation of serial interfaces.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If flash memory is accessed through a serial command interface, then the interface complexity is low, but the latency increases

Engineering Contradiction:
Improveinterface complexityVSAvoidlatency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent substitutes the serial command interface with RDMA technology that enables direct memory access. This replacement eliminates the sequential command execution model and allows parallel memory operations, dramatically reducing latency. The complexity is managed through software-level memory mapping and scatter-gather list mechanisms that automatically manage the RDMA operations.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent implements preliminary memory registration and mapping before actual data access. By pre-establishing memory regions and scatter-gather lists, the system prepares access paths in advance, eliminating the need for sequential command processing during data transfer and significantly reducing access latency.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If flash memory is written to frequently, then data storage capability is improved, but the wearout increases

Engineering Contradiction:
Improvedata storage capabilityVSAvoidwearout
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the flash memory access into separate read and write operations through RDMA scatter-gather mechanisms. By enabling independent parallel reads and writes to different memory regions, the system reduces the impact of write operations on wear while maintaining high data storage capability. The segmentation allows wear-leveling strategies to be implemented more effectively.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a log-structured append approach where data is written to new locations rather than overwriting existing data. This discard-and-recover strategy moves modified data to new blocks, avoiding repeated erase-write cycles on the same physical blocks, thereby reducing wear while maintaining continuous data storage capability.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS8775718B2Use of RDMA to access non-volatile solid-state memory in a network storage system
Publication Date: 2014.07.08 NETAPP INC
  • US8775718B2 patent drawing
  • US8775718B2 patent drawing
  • US8775718B2 patent drawing

AI summary

A network storage controller uses a non-volatile solid-state memory (NVSSM) subsystem which includes raw flash memory as stable storage for data, and uses remote direct memory access (RDMA) to access the NVSSM subsystem, including to access the flash memory. Storage of data in the NVSSM subsystem is controlled by an external storage operating system in the storage controller. The storage operating system uses scatter-gather lists to specify the RDMA read and write operations. Multiple client-initiated reads or writes can be combined in the storage controller into a single RDMA read or write, respectively, which can then be decomposed and executed as multiple reads or writes, respectively, in the NVSSM subsystem. Memory accesses generated by a single RDMA read or write may be directed to different memory devices in the NVSSM subsystem, which may include different forms of non-volatile solid-state memory.