Peripheral Device Error Isolation and Recovery in Storage Servers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional network storage systems face challenges in surviving input/output (I/O) errors, as they often require complete redundancy of core components, which is expensive, and struggle to distinguish between recoverable and non-recoverable errors, leading to unnecessary system failures.
Innovation Solution
The system detects errors in peripheral devices, isolates them to prevent further interrupts, migrates operations to a backup device, and executes error recovery and reinitialization routines to reset the failed device, allowing the storage server to continue operating without complete system transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If complete redundancy of storage server components is implemented, then system reliability is improved, but cost increases prohibitively
Solution Approach 1:
The system segments error handling by isolating peripheral devices at the device level rather than requiring system-wide redundancy. Each peripheral device has its own error recovery mechanism that operates independently, allowing selective redundancy only where needed rather than duplicating entire server components.
Solution Approach 2:
The system recovers from peripheral device failures by isolating the failed device and migrating its operations to a backup device, then reinitializing the failed device. This allows the system to discard the failed peripheral's operations temporarily and recover them later without requiring permanent redundancy of all components.
2Reliability
If complete failover to cluster partner is implemented for all errors, then system reliability is improved, but loss of time increases
Solution Approach 1:
The system applies partial failover by migrating only the operations of the failed peripheral device to the backup device rather than failing over the entire storage server. This selective approach reduces the scope of the failover operation and minimizes the time required to restore service.
Solution Approach 2:
The system performs preliminary isolation of the failed peripheral device to contain the error and prevent further interrupts before migrating operations. This preliminary action stabilizes the system state and enables faster, more reliable failover to the backup device.
3Reliability
If peripheral device isolation is implemented, then error containment is improved, but device complexity increases
Solution Approach 1:
The system implements self-service error handling where the peripheral device driver provides recovery and reinitialization routines that automatically execute when errors are detected. This automated self-service mechanism contains errors effectively while minimizing the complexity of manual error handling procedures.
4Ease of repair
If device reinitialization is attempted for all errors, then ease of repair is improved, but loss of time increases
Solution Approach 1:
The system uses feedback from error detection to determine whether reinitialization is appropriate. The error handling mechanism provides feedback about the nature of the error, and based on this feedback, decides whether to attempt reinitialization or proceed directly to failover, optimizing both ease of repair and time loss.
Data Source
AI summary
Error handling and recovery, implemented in a storage server, detects an error in a peripheral device of the storage server. If the error is recoverable, the system contains the error by isolating the peripheral device to prevent the generation of additional interrupt signals and migrates operations of the peripheral device to a back-up peripheral device. The system initiates error recovery by calling a recovery routine and a reinitialization routine, both provided by a device driver for the peripheral device. After device recovery is complete, the system migrates operations of the back-up peripheral device back to the peripheral device.


