Storage Controller Frontend Interface Queue Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage apparatuses, when a processor of a controller stops, there is no mechanism to automatically redirect and process I/O requests from host apparatuses without requiring complex control units or disconnecting I/O communication, leading to temporary system downtime.
Innovation Solution
A storage apparatus with dual controllers, each equipped with frontend interfaces and processors, includes address translation units and queues that allow seamless data transfer and request handling, enabling the other controller to take over I/O requests even if one processor stops, by switching the enqueueing destination queue and using address translation units to maintain continuous operation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a processor of a controller stops, then system reliability is improved through failover capability, but I/O communication is disconnected requiring complex control units or manual reconnection
Solution Approach 1:
The patent introduces a local router as an intermediary device that automatically switches I/O communication paths when a processor stops. The local router receives I/O requests from the frontend interface and automatically redirects them to the other controller's processor through address translation, eliminating the need for manual reconnection while maintaining communication continuity during failover.
Solution Approach 2:
The system performs preliminary actions by pre-configuring the local router with address translation tables and queue mappings before failure occurs. When a processor stops, the local router already has the necessary information to immediately redirect I/O requests to the surviving processor without requiring complex real-time control decisions or manual intervention.
2Ease of operation
If a local router is used to automatically switch I/O communication, then I/O continuity is maintained, but device complexity increases due to complicated control requirements
Solution Approach 1:
The local router is designed to operate autonomously using pre-configured address translation tables and queue mappings. It automatically translates addresses and redirects I/O requests without requiring complex real-time control logic or external intervention, thereby maintaining I/O continuity while minimizing control complexity through self-service operation.
3Reliability
If address translation is implemented between processors, then data transfer is enabled, but device complexity increases with multiple address translation units
Solution Approach 1:
The local router's address translation unit is designed to perform multiple functions: it translates addresses from the first processor to the first frontend interface, translates addresses from the second processor to the first frontend interface, and manages queue mappings. This multi-functional approach enables comprehensive data transfer capability while reducing the total number of separate translation units needed.
Data Source
AI summary
A frontend interface of a controller according to the present invention includes a plurality of corresponding queueing interfaces for each processor of the controller, and an enqueueing destination of a host I/O command can be switched in response to an instruction from a processor. When a controller OS restarts, the controller waits for completion of a host I/O and executes controller blocking and restarting during setup. Therefore, to determine whether or not this process is possible, the processor gives an instruction to switch a queue and waits until a switch source queue is empty.


