Path Manager Bandwidth Allocation for Storage Fabric
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Scalable data storage systems face challenges in managing bandwidth distribution among prioritized point-to-point links, leading to potential starvation issues that can impact overall system performance and user concurrency.
Innovation Solution
A data storage system with a path manager that monitors and adjusts bandwidth utilization across prioritized point-to-point links, dynamically reducing postings to higher priority links when lower priority links are starved of bandwidth, and restoring when the issue is remediated, using a queue pair pool with varying quality of service levels for different types of transactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If higher priority links are allocated more bandwidth, then quality of service for critical transactions is improved, but lower priority links become starved of bandwidth
Solution Approach 1:
The system dynamically adjusts the priority of queue pairs based on current bandwidth conditions. When a lower priority link is detected to be starved, the path manager dynamically reduces postings to higher priority queue pairs, allowing the lower priority link to receive necessary bandwidth. This dynamic reconfiguration resolves the contradiction by making priority levels adaptable rather than fixed.
Solution Approach 2:
The path manager implements a feedback mechanism that continuously monitors bandwidth utilization across all queue pairs. When starvation is detected on a lower priority link, the system provides feedback by reducing postings to higher priority queue pairs. This closed-loop control ensures that quality of service is maintained while preventing bandwidth starvation, resolving the technical contradiction.
2Productivity
If bandwidth is allocated to ensure fair distribution among all links, then system-wide performance is improved, but critical transactions may experience increased latency
Solution Approach 1:
The system dynamically adjusts priority assignments based on real-time conditions rather than using static priority levels. When critical transactions are detected, higher priority queue pairs receive increased bandwidth allocation. When lower priority links show signs of starvation, the system dynamically shifts bandwidth to prevent system-wide performance degradation. This dynamic approach resolves the contradiction between fair distribution and critical transaction performance.
3Reliability
If the path manager actively monitors and adjusts queue pair postings, then bandwidth starvation is prevented, but system complexity increases
Solution Approach 1:
The path manager implements a self-regulating mechanism where queue pairs automatically adjust their own postings based on monitored conditions. When bandwidth starvation is detected, the system autonomously reduces postings to higher priority queue pairs without requiring external intervention. This self-service approach prevents bandwidth starvation while minimizing the complexity of external control mechanisms.
Data Source
AI summary
Storage node blades in a data storage system utilize queue pairs associated with point-to-point links to perform RDMA transactions with memory components associated with other storage node blades. Higher quality of service queue pairs are used for system message transactions and lower quality of service queue pairs are used for remote direct memory access data. Postings to a relatively higher priority queue pair are reduced when a corresponding relatively lower priority queue pair between the same pair of storage nodes via the same switch is starved of bandwidth. Postings to the relatively higher priority queue pair are increased when bandwidth starvation is remediated.


