NVMe Storage Management via RDMA Direct Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed storage systems, the performance of NVMe storage devices is not fully utilized due to the need for CPU processing of access requests, which hampers write performance.

Innovation Solution

A method and apparatus that involve a management server establishing a mapping relationship between storage node identifiers and memory addresses of NVMe storage devices, allowing clients to directly access NVMe storage devices without involving the CPU, by obtaining and sending queue messages and query responses to facilitate RDMA write requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the CPU processes access requests to maintain system control and address translation, then system reliability is maintained, but write performance deteriorates due to CPU bottleneck

Engineering Contradiction:
Improvewrite performanceVSAvoidCPU processing overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the address translation and access request processing functions from the CPU by implementing a dedicated mapping mechanism between host virtual addresses and storage device physical addresses. This allows write operations to proceed without CPU intervention, directly improving write performance while maintaining system reliability through the specialized address translation path.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a mapping table and address translation mechanism as an intermediary between the host system and NVMe storage device. This intermediary handles address conversion and access request routing, freeing the CPU from these routine operations and enabling faster write performance while maintaining system control.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If the CPU parses access requests and converts addresses to maintain proper data access, then address translation accuracy is maintained, but processing time increases due to CPU involvement

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidaccess request processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements preliminary address mapping by pre-establishing the relationship between host virtual addresses and storage device physical addresses in a mapping table. This preliminary action allows subsequent write operations to use the pre-computed mappings directly, maintaining address translation accuracy while significantly reducing the time required for each access request.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3985949B1Method and apparatus for managing storage device in storage system
Publication Date: 2024.07.31 HUAWEI TECH CO LTD
  • EP3985949B1 patent drawingFigure 1
  • EP3985949B1 patent drawingFigure 2~4
  • EP3985949B1 patent drawingFigure 5~7

AI summary

This solution discloses a method for managing a storage device in a storage system. A client may send, based on an obtained start address that is of a queue of an NVMe storage device and to which an access request points and an obtained logical address that is of the NVMe storage device and to which the access request points, a remote direct memory access command to a storage node in which the NVMe storage device is located. Therefore, performance of the NVMe storage device is brought into full play, and write performance of the storage system is improved.