RNIC Layout Templates for SSD Data Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage technologies, particularly those using solid state drives (SSDs), face limitations in performance due to reliance on CPUs for command processing, which can hinder virtualization functionality and data transfer efficiency, especially when using interface technologies like SATA, SAS, and Fibre Channel.

Innovation Solution

Implementing a remote direct memory access (RDMA) enabled network interface card (RNIC) that allows direct data transfer between the RNIC and SSDs, using layout templates and intent records to manage data distribution across SSDs, while maintaining CPU control over virtualization functions like address translation and fault recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CPUs are used for command processing in SSDs, then virtualization functionality is maintained, but data transfer efficiency and performance are hindered

Engineering Contradiction:
Improvevirtualization functionalityVSAvoiddata transfer efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments command processing into two parts: virtualization functions (address translation, fault recovery) remain under CPU control, while data transfer operations are handled directly by the RNIC through RDMA. This segmentation allows the CPU to focus on complex virtualization tasks while the RNIC handles high-speed data movement, resolving the contradiction between maintaining virtualization functionality and achieving high data transfer efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The RNIC acts as an intermediary between the host and SSDs, enabling direct data transfer without CPU intervention. The RNIC uses RDMA technology to bypass the CPU for data transfer operations, while the CPU continues to manage virtualization functions. This intermediary approach allows simultaneous optimization of both virtualization support and data transfer performance

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If direct data transfer between RNIC and SSDs is implemented, then data transfer performance is enhanced, but CPU control over virtualization functions is reduced

Engineering Contradiction:
Improvedata transfer performanceVSAvoidCPU control over virtualization
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The system segments control responsibilities between the RNIC and CPU: the RNIC handles data transfer automation through RDMA, while the CPU maintains control over virtualization functions such as address translation and fault recovery. This segmentation ensures that direct data transfer performance is enhanced without sacrificing CPU control over critical virtualization operations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The RNIC performs self-service for data transfer operations by using RDMA to directly move data between the host and SSDs without requiring CPU intervention for each transfer. This self-service capability enhances data transfer performance while the CPU continues to manage virtualization functions, maintaining the appropriate balance of automation and control

Inventive Principle:
Principle #25Self-service

3Productivity

If layout templates and intent records are used to manage data distribution, then data placement optimization is achieved, but system complexity increases

Engineering Contradiction:
Improvedata placement optimizationVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Layout templates and intent records are prepared in advance to define data distribution patterns across SSDs. By pre-configuring these templates, the system optimizes data placement without requiring complex real-time decision-making during data transfer operations. The RNIC uses these pre-prepared templates to automatically determine where data should be placed, achieving optimization while keeping system complexity manageable

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses layout templates that define specific parameters for data distribution (such as which SSDs store which data portions). By changing these template parameters, the system can optimize data placement for different scenarios without fundamentally changing the underlying storage architecture. This parameter-based approach allows flexible optimization while maintaining system simplicity

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10877922B2Flushes based on intent log entry states
Publication Date: 2020.12.29 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10877922B2 patent drawing
  • US10877922B2 patent drawing
  • US10877922B2 patent drawing

AI summary

Examples disclosed herein relate to a storage appliance using an optimistic allocation of storage space. In an example system, a number of storage drives are coupled to a storage controller and an RNIC (remote direct memory access (RDMA) network interface card (NIC)) through a storage network. The RNIC includes a layout template selector and a number of templates. The layout template selector selects a template based, at least in part, on a logical block address (LBA) received from a host. The template identifies each of a plurality of storage drives in the plurality of storage drives associated with portions of data represented by the LBA. A slave drive in the number of storage drives includes a state indicator that indicates the status of a transaction. A master drive in the number of storage drives also includes the state indicator to indicate the status of the transaction.