Network I/O Device Cache Buffering for Storage Data Staging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing network data capacities and lower access latencies in newer storage technologies, such as solid state drives, make the use of system memory for routing data between network and storage subsystems less efficient, leading to performance degradation due to overhead and latencies.

Innovation Solution

Implementing a network I/O device with circuitry capable of executing modules to manage data movement between network and storage subsystems using buffers in a cache, allowing for efficient data staging and control information exchange without relying on system memory, and integrating network and storage subsystems to facilitate direct data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If system memory is used to route data between network and storage subsystems, then data movement capability is provided, but throughput performance degrades due to overhead and latencies

Engineering Contradiction:
Improvethroughput performanceVSAvoidlatencies
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts the data staging function from system memory and relocates it to buffers within the cache of the network I/O device. This removes the bottleneck of system memory access from the critical data path between network and storage subsystems, eliminating the overhead and latencies associated with system memory routing while maintaining the necessary data buffering capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces buffers in the cache of the network I/O device as an intermediary structure between the network subsystem and storage subsystem. These buffers serve as a local staging area that eliminates the need for system memory involvement in data routing, thereby reducing latency and overhead while enabling direct data movement between subsystems.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If system memory is used for data routing between subsystems, then data transfer capability is enabled, but overhead increases reducing efficiency

Engineering Contradiction:
Improvesystem efficiencyVSAvoidoverhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the data staging function with the cache memory of the network I/O device. By combining the buffering capability directly into the network I/O device's cache structure, the system eliminates the separate system memory routing step, reducing overhead and simplifying the data path while maintaining full data transfer capability between network and storage subsystems.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10353631B2Techniques for moving data between a network input/output device and a storage device
Publication Date: 2019.07.16 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US10353631B2 patent drawing
  • US10353631B2 patent drawing
  • US10353631B2 patent drawing

AI summary

Examples are disclosed for moving data between a network input/output (I/O) device and a storage subsystem and/or storage device. In some examples, a network I/O device coupled to a host device may receive a data frame including a request to access a storage subsystem or storage device. The storage subsystem and/or storage device may be located with the network I/O device or separately coupled to the host device through a storage controller. One or more buffers maintained in a cache for processor circuitry may be used to exchange control information or stage data associated with the data frame to avoid or eliminate use of system memory to move data to or from the storage subsystem and/or storage device. Other examples are described and claimed.