RDMA Failover Virtual Layer for Non-Disruptive Connection Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RDMA connections in computer systems are disrupted by errors, leading to downtime and unsynchronized data, especially in cluster storage environments where high availability is crucial.

Innovation Solution

A failover virtual layer is introduced that creates virtual and physical queue structures, allowing for non-disruptive failover by masking errors from upper subsystems, enabling continuous data transfer and synchronization between nodes without reestablishing connections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error handling follows traditional RDMA protocols, then errors are detected and handled, but the RDMA connection is disrupted and requires reestablishment

Engineering Contradiction:
Improveerror handlingVSAvoidconnection uptime
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The patent introduces a virtualization layer as an intermediary between the upper subsystem and the physical RDMA queue structures. This virtual layer abstracts the error handling process, allowing errors to be managed at the virtualization level without propagating disruptions to the upper subsystem. The virtual queue structures act as a buffer that decouples the error-prone physical layer from the connection-critical upper layer, enabling error recovery while maintaining connection continuity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the RDMA connection management into multiple independent virtual queue structures that can be individually managed. When an error occurs in one physical queue, only the affected virtual queue is impacted, while other virtual queues continue to operate. This segmentation allows selective failure isolation and enables the system to maintain operational connections even when some queue structures experience errors.

Inventive Principle:
Principle #1Segmentation

2Reliability

If queue structures are recreated after errors, then new connections are established, but application operations are disrupted

Engineering Contradiction:
Improveerror recoveryVSAvoidapplication operation continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent creates virtual queue structures that are logical copies or abstractions of the physical queue structures. These virtual queues can be rapidly recreated or switched without affecting the upper subsystem, as the virtualization layer absorbs the recreation process. When physical queues fail, the system can switch to alternative virtual queue configurations or recreate virtual queues without interrupting application operations, thereby maintaining productivity during error recovery.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent establishes multiple virtual queue structures in advance before errors occur. These pre-configured virtual queues are ready to be activated immediately when errors are detected, eliminating the need for time-consuming connection reestablishment. The preliminary setup of virtual queue structures enables rapid failover and maintains application operation continuity during error recovery scenarios.

Inventive Principle:
Principle #10Preliminary action

3Loss of information

If errors are communicated to upper subsystem, then error status is known, but requests must be stopped until new QS is created

Engineering Contradiction:
Improveerror status awarenessVSAvoidrequest interruption time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The virtualization layer serves as an intermediary that filters and manages error status communication to the upper subsystem. Instead of directly communicating raw errors that would force request cessation, the virtual layer translates errors into manageable status information and handles recovery transparently. This allows the upper subsystem to remain aware of error conditions through controlled status reporting while continuing to post requests without interruption, as the virtual layer manages the actual error recovery process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9537710B2Non-disruptive failover of RDMA connection
Publication Date: 2017.01.03 NETAPP INC
  • US9537710B2 patent drawing
  • US9537710B2 patent drawing
  • US9537710B2 patent drawing

AI summary

A novel RDMA connection failover technique that minimizes disruption to upper subsystem modules (executed on a computer node), which create requests for data transfer. A new failover virtual layer performs failover of an RDMA connection in error so that the upper subsystem that created a request does not have knowledge of an error (which is recoverable in software and hardware), or of a failure on the RDMA connection due to the error. Since the upper subsystem does not have knowledge of a failure on the RDMA connection or of a performed failover of the RDMA connection, the upper subsystem continues providing requests to the failover virtual layer without interruption, thereby minimizing downtime of the data transfer activity.