Smart NIC Offloads NVMe-oF Hashing to Reduce CPU Load

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed block storage systems face performance overhead and security risks due to the need for consistent hashing techniques, which increase access latency and require significant runtime and operational costs, especially in untrusted client devices and limited resource locations like smart NICs, and lack scalability in cloud environments.

Innovation Solution

Implementing a consistent hashing mechanism for NVMe-oF to enable client devices to determine the location of logical block device segments, allowing direct I/O requests to storage nodes, reducing the need for additional gateways and improving isolation, while using a modified NVMe-oF initiator to offload hashing and hint processing, thereby reducing CPU utilization and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If consistent hashing techniques are used to determine segment locations, then access latency is reduced, but runtime and operational costs increase significantly

Engineering Contradiction:
Improveaccess latencyVSAvoidruntime and operational costs
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent pre-computes and stores location hints for logical block address ranges in a hint table before I/O operations occur. When an I/O request arrives, the system performs a simple table lookup instead of executing complex consistent hashing algorithms in real-time. This preliminary action transfers the computational burden from runtime to setup time, reducing operational costs while maintaining fast access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses simple, lightweight location hint entries in the hint table that contain only essential routing information (storage node identifiers and logical block address ranges). These minimalistic hint structures replace complex hashing computations, providing sufficient functionality at a fraction of the runtime cost while being easily updated and replaced as needed.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Reliability

If dedicated gateways are deployed to enable storage access, then security and isolation are improved, but system efficiency decreases due to additional network hops

Engineering Contradiction:
Improvesecurity and isolationVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the essential storage client functionality (consistent hashing and location determination) from the host system and embeds it directly into the smart NIC. This extraction eliminates the need for dedicated gateway software on host systems while maintaining security through hardware-based isolation. The smart NIC becomes a self-sufficient storage interface that directly accesses storage clusters without requiring intermediate gateway hops.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The smart NIC is designed to perform multiple functions: it acts as a network interface, executes storage client operations (consistent hashing, location hint processing), and provides direct access to storage clusters. This multi-functionality consolidates what previously required separate gateway components, reducing network hops while maintaining the security and isolation benefits of dedicated storage access.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Use of energy by moving object

If storage client functionality is embedded in smart NIC, then CPU utilization is reduced, but processing complexity in NIC increases

Engineering Contradiction:
ImproveCPU utilizationVSAvoidprocessing complexity in NIC
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The patent segments the storage access functionality into distinct components within the smart NIC: a hint table for location information, a processing pipeline for I/O requests, and integrated circuits for consistent hashing and hint matching. This segmentation allows each component to be optimized independently and enables parallel processing of multiple I/O requests, reducing the overall processing burden on the host CPU while distributing complexity across specialized NIC components.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces software-based storage client operations with hardware-implemented processing pipelines and integrated circuits within the smart NIC. The consistent hashing algorithm and hint matching logic are implemented in dedicated hardware logic rather than software, enabling parallel processing and eliminating the need for host CPU involvement in storage location determination. This mechanical substitution dramatically reduces CPU utilization while the hardware complexity is contained within the NIC.

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

Data Source

PatentEP3771180B1Offload of storage node scale-out management to a smart network interface controller
Publication Date: 2023.08.30 INTEL CORP
  • EP3771180B1 patent drawingFigure 1
  • EP3771180B1 patent drawingFigure 2
  • EP3771180B1 patent drawingFigure 3

AI summary

Examples described herein relate to a network interface that includes an initiator device to determine a storage node associated with an access command based on an association between an address in the command and a storage node. The network interface can include a redirector to update the association based on messages from one or more remote storage nodes. The association can be based on a look-up table associating a namespace identifier with prefix string and object size. In some examples, the access command is compatible with NVMe over Fabrics. The initiator device can determine a remote direct memory access (RDMA) queue-pair (QP) lookup for use to perform the access command.