Storage Controller Path Testing via Pseudo I/O Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network attached storage (NAS) systems cannot effectively test all paths, particularly redundant paths and internal bus operations, during continuity checks, which limits the reliability and performance of storage systems.
Innovation Solution
A controller with an address generator, access monitor, and access decoder is used to set and test multiple paths between information processing apparatuses and storage mediums, employing a secondary address to initiate test accesses and check for errors without host intervention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If continuity checks are performed using existing methods, then basic path connectivity is verified, but redundant paths and internal bus operations cannot be tested
Solution Approach 1:
The storage apparatus performs self-diagnosis by generating test I/O requests internally through the address generator and pseudo I/O issuer, eliminating the need for external host intervention. The system monitors its own paths and interfaces using the path monitor and continuity checker, enabling autonomous reliability verification without increasing operational complexity for users.
Solution Approach 2:
The system performs continuity checks during idle periods before actual host operations begin. The path monitor detects when no host I/O requests are pending and initiates test I/O requests through the address generator to verify path connectivity in advance, ensuring reliability before production workloads affect the system.
2Reliability
If host I/O requests are used for testing, then path connectivity can be verified, but host performance is degraded
Solution Approach 1:
The controller introduces a dedicated continuity check unit as an intermediary component that handles all testing operations separately from host I/O processing. This unit generates pseudo I/O requests independently and monitors path connectivity without interfering with host performance, as the host never directly issues or receives these test requests.
Solution Approach 2:
The path monitor continuously monitors for idle periods and schedules continuity checks during these times before host operations begin. By performing tests preliminarily during idle windows, the system verifies path connectivity without competing with host I/O for resources, thus maintaining host performance while ensuring reliability.
3Reliability
If multiple paths are tested simultaneously, then comprehensive coverage is achieved, but system overhead increases
Solution Approach 1:
The continuity check unit performs path testing periodically during detected idle periods rather than continuously or simultaneously for all paths. The path monitor identifies when no host I/O requests are pending and triggers sequential continuity checks, distributing the testing load over time to minimize system overhead while achieving comprehensive path coverage through repeated periodic verification.
Data Source
AI summary
A controller includes an address generator that sets a plurality of different paths, each connecting an information processing apparatus connected to a storage apparatus via a network, first and second storage mediums, and the controller, and generates a second address that is different from a first address used for a communication with the information processing apparatus via the network; an access monitor that determines that no access has been issued for a certain time duration from the information processing apparatus to the first or second storage medium; an access issuing unit that issues a test access to the first and second storage mediums on one of the paths, using the second address; and an access decoder that converts the test access to an access including the first address, receives a result of the access including the first address from the first or second storage mediums, and checks for an error.


