Storage Enclosure Processor Failover via Expander Coupling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a server cluster network, the failure of a storage enclosure processor can disrupt communication and operation, as nodes can no longer directly communicate to monitor and manage storage resources, compromising the cluster's availability and manageability.
Innovation Solution
Each storage enclosure processor is coupled to each expander, allowing it to receive and process commands, with the operational processor handling interrupts and commands from the failed processor, and determining which processor to handle requests based on load balancing and operational status through direct communication links.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If a storage enclosure processor is coupled to an expander in a direct point-to-point configuration, then communication speed and simplicity are improved, but system reliability deteriorates because the failure of the processor disrupts communication and operation
Solution Approach 1:
The patent merges multiple processors into a collaborative team where processors work together to handle commands and interrupts. When one processor fails, another processor can take over its responsibilities, ensuring continuous operation. This is achieved through shared access to expanders and coordinated interrupt handling among processors in the storage enclosure.
Solution Approach 2:
The system implements dynamic processor assignment where processors can assume different roles based on operational needs and failure conditions. The processor assignment is not fixed but can change dynamically - if a processor fails, the system dynamically reassigns its responsibilities to another processor, maintaining system reliability while preserving communication efficiency.
2Reliability
If multiple storage enclosure processors are used for load balancing and failover, then system reliability and availability are improved, but device complexity increases due to additional processors and communication protocols
Solution Approach 1:
Each storage enclosure processor is designed with multi-functionality to handle various roles - it can process commands from expanders, handle interrupts, perform load balancing, and provide failover capabilities. This universal design reduces the need for specialized components and simplifies the overall system architecture while maintaining high reliability and availability.
Solution Approach 2:
The processor system implements self-service through automatic failover and load balancing mechanisms. When a processor fails, the system automatically detects the failure and redistributes workloads without requiring external intervention. This self-managing capability reduces operational complexity while ensuring continuous system availability.
3Ease of operation
If direct communication links between nodes are used for operational monitoring, then manageability is improved, but system vulnerability increases because failure of the communication link compromises cluster operation
Solution Approach 1:
Storage enclosure processors act as intermediaries between expanders and the rest of the cluster network. They receive and process commands from expanders locally, then communicate with other nodes as needed. This intermediary role allows operational monitoring to continue even if direct node-to-node communication links fail, as the processor can relay information through alternative paths.
Solution Approach 2:
The system segments communication functions by separating expander communication from node communication. Processors handle expander commands locally without requiring direct node links, while still enabling operational monitoring through processed information. This segmentation isolates communication failures to specific segments rather than compromising the entire cluster.
Data Source
AI summary
A system and method for receiving and responding to issued commands in a storage enclosure is disclosed in which each storage enclosure processor of the storage enclosure is coupled to each expander of the storage enclosure. Each storage enclosure processor receives each interrupt and command issued by another expander of the storage enclosure. In the event of a failure of one of the storage enclosure processors, any interrupts or commands issued by the expander associated with the failed storage enclosure processor will be handled by the operational storage enclosure processor. In this configuration, the storage enclosure processor can also arbitrate or determine the storage enclosure processor that will handle each interrupt and any associated command.


