Dynamic Port Allocation in Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In large-scale computer systems with a storage area network (SAN), the existing methods for balancing load across ports in a storage system are inefficient, leading to performance deterioration when multiple host computers change their connection paths simultaneously, and there is a lack of accurate load balancing between ports.
Innovation Solution
A system that monitors load differences across multiple ports in a storage system, identifies high-load ports, disconnects host computers from these ports, and redirects them to low-load ports, using a management computer to manage the reconnection process and balance the load dynamically.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If host computers change connection paths using existing methods, then load balancing between ports is improved, but system complexity and administrative workload increase due to manual monitoring and path changes
Solution Approach 1:
The storage system automatically monitors port load conditions and performs path changes without external intervention. The controller executes the load balancing process autonomously by detecting port utilization levels and redirecting host computer connections from high-load ports to low-load ports, eliminating the need for manual administrative operations.
Solution Approach 2:
The system continuously monitors the load conditions of multiple ports and uses this feedback information to dynamically adjust connection paths. The controller detects when a port exceeds a predetermined threshold and responds by redirecting connections, creating a closed-loop control system that automatically maintains load balance.
2Adaptability or versatility
If multiple host computers simultaneously change connection paths, then load distribution is improved, but access performance deteriorates due to simultaneous path changes
Solution Approach 1:
The load balancing operation is performed periodically or sequentially rather than simultaneously for all host computers. The controller monitors port loads and executes path changes in a controlled sequence, preventing multiple simultaneous connection transitions that would degrade performance while still achieving overall load distribution.
Solution Approach 2:
The system monitors port load conditions in advance and prepares path change operations before they are needed. By detecting high load conditions early and executing redirects proactively, the system avoids sudden simultaneous changes that would impact performance, smoothing the transition process.
3Ease of operation
If manual port allocation is used, then administrative control is improved, but administrative workload increases significantly
Solution Approach 1:
The storage system performs automatic port allocation and load balancing without requiring administrative intervention. The controller autonomously monitors port utilization, identifies imbalances, and executes connection redirects, completely eliminating the manual administrative workload associated with port management while maintaining optimal system performance.
4Speed
If host computers monitor and change paths independently, then responsiveness to load changes is improved, but system stability decreases due to simultaneous changes
Solution Approach 1:
The storage system controller acts as an intermediary that centralizes the decision-making process for path changes. Instead of allowing distributed independent decisions by host computers, the controller receives load information, determines optimal paths, and directs connection changes, ensuring coordinated action that maintains system stability while achieving responsiveness.
Data Source
AI summary
Either a controller in a storage system, or a management computer monitors a bandwidth used in each I/O port in the storage system, and a bandwidth used by each host computer connected to each I/O port, and redirects a host computer using a bandwidth close to a difference in bandwidth used in the I/O ports, from the I/O port where a maximum bandwidth is used to the I/O port where a minimum bandwidth is used.


