Storage Device Loading Control via Queue Depth Monitoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage networks face challenges in managing device loading across diverse host platforms and storage devices, leading to inefficiencies and potential crashes due to varying responses to busy messages, which is time-consuming and costly for vendors to resolve.
Innovation Solution
Implementing a computer process that identifies storage devices, host port Logical Unit Numbers (LUNs), and queue depths to determine actual loading, ensuring it does not exceed the maximum service queue depth, thereby optimizing device loading and preventing crashes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If storage networks support a wide variety of different host platforms and storage devices from different vendors, then adaptability is improved, but device complexity increases and reliability deteriorates due to varying responses to BUSY messages
Solution Approach 1:
The patent introduces an intermediary mechanism that translates and standardizes communication between diverse host platforms and storage devices. This intermediary layer handles the variation in BUSY message responses from different hosts, converting them into a unified protocol that the storage device can reliably process, thereby maintaining system stability while supporting hardware diversity
Solution Approach 2:
The storage device is designed with universal compatibility features that enable it to work with multiple host platforms and storage devices from different vendors. The device incorporates standardized interfaces and protocols that allow it to function reliably across heterogeneous environments without requiring vendor-specific configurations
2Adaptability or versatility
If storage device vendors work with each host platform vendor to reach agreement upon standards, then adaptability is improved, but loss of time and manufacturing cost increase
Solution Approach 1:
The patent implements preliminary action by pre-configuring the storage device with standardized protocols and interfaces during manufacturing. This allows the device to be immediately compatible with multiple host platforms without requiring time-consuming vendor negotiations or custom development for each platform
Solution Approach 2:
The storage device incorporates parameter changes that allow it to adapt to different host platforms through software configuration rather than hardware modifications. This enables the device to maintain compatibility across platforms while avoiding the time and cost of physical redesign for each vendor
3Productivity
If queue depth for each host port LUN is increased to handle more IO jobs, then productivity is improved, but device loading exceeds maximum capacity causing crashes
Solution Approach 1:
The patent implements feedback mechanisms that continuously monitor the actual loading on storage devices and compare it against maximum capacity thresholds. When queue depth approaches dangerous levels, the system receives feedback signals and dynamically adjusts IO job acceptance or prioritization to prevent overload and crashes while maintaining high productivity
Solution Approach 2:
The storage device employs dynamic queue management that adjusts queue depth limits based on real-time device loading conditions. Rather than using fixed queue depths, the system dynamically modifies acceptable queue depths to optimize productivity while preventing the device from exceeding its maximum processing capacity and becoming unstable
Data Source
AI summary
Systems and methods for implementing device loading in storage networks are disclosed. In an exemplary implementation a computer program product encodes a computer program for executing on a computer system a computer process. The computer process comprises identifying a plurality of storage devices to be configured in a storage network, identifying a number of host port LUNs configured on each of the storage devices, and identifying a number of host port connections to the storage devices. For each host port connection, the computer process determines actual loading for each of the storage devices based at least in part on the queue depth for each of the host port LUNs.


