RDMA Data Replication Between Storage Servers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data replication methods between storage servers lack clear confirmation of successful data replication, leading to potential data loss and increased overhead due to the complexity of RAID schemes and the need for enhanced network access protocols.

Innovation Solution

Implementing RDMA (Remote Direct Memory Access) command messages and completion messages between client devices and storage servers, utilizing NVMe controllers and network I/O devices to ensure data is correctly replicated and acknowledged across multiple storage servers, thereby minimizing latency and overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional RAID schemes and network access protocols are used for data replication between storage servers, then data reliability can be maintained, but system overhead and complexity increase significantly

Engineering Contradiction:
Improvedata reliabilityVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent replaces traditional network I/O software processing with hardware-based RDMA (Remote Direct Memory Access) technology. This substitution eliminates the need for complex network protocols and software intervention in data replication operations, directly reducing system overhead while maintaining data reliability through hardware-level error handling and completion signaling.

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

Solution Approach 2:

The storage servers perform self-service data replication using RDMA commands that enable direct memory access between servers without host CPU involvement. The completion messages provide automatic confirmation of successful replication, allowing the system to self-verify data integrity without additional overhead from traditional protocols.

Inventive Principle:
Principle #25Self-service

2Productivity

If data replication is performed without clear confirmation mechanisms, then replication speed may be improved, but data loss risk increases

Engineering Contradiction:
Improvereplication speedVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism through RDMA completion messages that are sent back to the initiating storage server to confirm successful data replication. This feedback loop provides clear confirmation of replication status without significantly impacting speed, as the completion signaling is handled at the hardware level rather than requiring slow software-based acknowledgments.

Inventive Principle:
Principle #23Feedback

3Reliability

If complex network protocols are used for storage server communication, then data transfer reliability can be ensured, but latency increases

Engineering Contradiction:
Improvedata transfer reliabilityVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent substitutes complex network protocols with RDMA hardware operations that perform data transfer and reliability checking at the network interface card level. This substitution eliminates multiple software processing layers and protocol handshakes, reducing latency while maintaining transfer reliability through hardware-level error detection and completion signaling.

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

Data Source

PatentUS9986028B2Techniques to replicate data between storage servers
Publication Date: 2018.05.29 INTEL CORP
  • US9986028B2 patent drawing
  • US9986028B2 patent drawing
  • US9986028B2 patent drawing

AI summary

Examples are disclosed for replicating data between storage servers. In some examples, a network input/output (I/O) device coupled to either a client device or to a storage server may exchange remote direct memory access (RDMA) commands or RDMA completion commands associated with replicating data received from the client device. The data may be replicated to a plurality of storage servers interconnect to each other and/or the client device via respective network communication links. Other examples are described and claimed.