RAID Controller Failover via Inter-Controller State Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current RAID systems do not provide adequate protection against failures of the RAID controller, which can lead to data unavailability and system downtime, despite offering protection against storage device failures.

Innovation Solution

Implementing a redundant array of independent disks system with inter-controller communication, where controllers are designed for active/active operation, using a high-speed symmetric inter-controller communication protocol that allows direct remote writes, and mapping memory devices to enable seamless failover in case of controller failure, thereby avoiding intermediate buffers and ensuring continuous data availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single RAID controller is used to manage storage devices, then the system structure is simple and cost-effective, but the system lacks fault tolerance against controller failures leading to data unavailability

Engineering Contradiction:
Improvefault tolerance against controller failureVSAvoidcontroller architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system divides the controller functionality into multiple independent RAID controllers (first controller and second controller), each capable of independently managing the storage array. This segmentation allows the system to tolerate controller failures while maintaining data availability, as each controller can operate independently or take over for the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each controller maintains its own local memory device with controller state information specific to that controller. This local quality ensures that each controller has the necessary state information to take over operations, providing fault tolerance while keeping each controller's complexity manageable.

Inventive Principle:
Principle #3Local quality

2Reliability

If controller state information is stored only in local memory, then memory access is fast and simple, but failover capability is lost when the primary controller fails

Engineering Contradiction:
Improvefailover capabilityVSAvoidcontroller failover time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by maintaining controller state information in both local memory devices and remotely in the other controller's memory. This preliminary duplication of state information ensures that when a controller fails, the surviving controller already possesses the necessary state information to immediately take over operations without waiting for state reconstruction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism where each controller can access and store state information in the other controller's memory device. This intermediary approach allows rapid failover by providing an intermediate storage location for critical state information, reducing the time required to recover from controller failures.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If controllers operate independently without inter-controller communication, then system operation is simple, but automatic failover cannot be detected or executed

Engineering Contradiction:
Improveautomatic failover detection and executionVSAvoidinter-controller communication infrastructure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where controllers continuously monitor each other's operational status through inter-controller communication. This feedback allows the system to detect controller failures automatically and trigger appropriate failover actions, ensuring high availability while maintaining relatively simple controller logic through standardized monitoring protocols.

Inventive Principle:
Principle #23Feedback

4Reliability

If remote memory access is implemented for failover, then controller state can be recovered, but access delays and command drops may occur

Engineering Contradiction:
Improvecontroller state recoveryVSAvoidremote memory access delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by maintaining up-to-date copies of controller state information in both local and remote memory devices before failures occur. This preliminary synchronization ensures that when failover is needed, the surviving controller already has the necessary state information locally available, eliminating the need for time-consuming remote memory access during the failover process itself.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8880800B2Redundant array of independent disks system with inter-controller communication and method of operation thereof
Publication Date: 2014.11.04 PROMISE TECHNOLOGY
  • US8880800B2 patent drawing
  • US8880800B2 patent drawing
  • US8880800B2 patent drawing

AI summary

A method of operation of a redundant array of independent disks system includes: instantiating a first controller having a first local map and a first remote map; instantiating a second controller having a second local map and a second remote map mapped to the first local map; mapping a first memory device to the first local map by the first controller; coupling a storage device to the second controller and the first controller; and switching control of the storage device to the first controller, when a failure of the second controller is detected, by the first controller reading the first memory device.