Path Manager Bandwidth Allocation for Storage Fabric

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvequality of serviceVSAvoidbandwidth utilization
Core Design Contradiction:
ReliabilityVSProductivity

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improvesystem performanceVSAvoidtransaction latency
Core Design Contradiction:
ProductivityVSLoss of time

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.

Inventive Principle:
Principle #15Dynamics

3Reliability

If the path manager actively monitors and adjusts queue pair postings, then bandwidth starvation is prevented, but system complexity increases

Engineering Contradiction:
Improvebandwidth allocationVSAvoidcontrol mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9952776B1Automatic non-disruptive congestion control of a fabric in a data storage system
Publication Date: 2018.04.24 EMC IP HLDG CO LLC
  • US9952776B1 patent drawing
  • US9952776B1 patent drawing
  • US9952776B1 patent drawing

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.