NVMe Relay Controller for Indirect Host–Storage Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The NVMe-oF standard lacks the capability to control indirect communication between a host and a storage device via a node, limiting the flexibility and efficiency of data processing and transmission.
Innovation Solution
Implementing a controller with a connection unit, memory, virtual register table, and calculation processor to manage and process data using NVMe transport protocol, enabling indirect communication and calculation processing through a network of nodes, and utilizing a relay table to manage TCP/IP headers for efficient data transmission.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If direct communication between host and storage device is used, then communication simplicity is maintained, but communication flexibility and control capability deteriorate
Solution Approach 1:
The patent introduces a relay node as an intermediary component between the host and storage device. This relay node receives capsules from the host, performs calculation processing on the data, and forwards the processed capsules to the storage device. This intermediary structure enables indirect communication while maintaining protocol simplicity, as each node still uses standard NVMe transport protocol communication, but gains enhanced flexibility through the relay node's processing capabilities.
2Productivity
If indirect communication via relay node is implemented, then data processing capability is enhanced, but protocol control capability deteriorates
Solution Approach 1:
The relay node performs calculation processing autonomously without requiring host intervention. When the relay node receives a capsule, it automatically executes the calculation processing based on the command type and data in the capsule, then stores results in its memory and forwards the processed capsule to the storage device. This self-service mechanism enhances data processing speed while maintaining protocol control simplicity, as the relay node independently handles processing without complex host-side protocol modifications.
3Productivity
If calculation processing is performed at the relay node, then processing efficiency is improved, but memory resource requirements worsen
Solution Approach 1:
The relay node performs calculation processing only on the data portion of received capsules, not on the entire capsule structure including command headers and metadata. This partial action approach processes only the necessary data fields while maintaining the capsule protocol structure, thereby improving processing efficiency without requiring excessive memory resources for storing and manipulating entire capsule structures.
Data Source
AI summary
According to one embodiment, a controller includes a connection unit configured to receive first data and I/O command, and transmit second data, which is a result of calculation processing of the first data, and I/O command, a virtual register table configured to store a virtual register number that accompanies the first data and is identified based on the calculation processing, in association with a virtual address of third data and a data size of the third data, a calculation processor configured to execute the calculation processing by referring to the virtual register table, and a relay table configured to store pairs of source information and destination information.


