Storage Fabric Traffic Control for Priority Fan-In Congestion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems with multiple processing nodes experience increased likelihood of starvation of lower-priority operations due to fan-in congestion, where higher-priority operations exacerbate execution delays, leading to timeouts and inefficiencies.

Innovation Solution

Implement techniques to identify and manage sustained high rates of high-priority operations by maintaining counts and calculating exponential moving averages (EMAs) for each process, taking corrective actions when thresholds are exceeded to prevent starvation of lower-priority operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If higher-priority operations are given precedence in execution, then system responsiveness and throughput for critical operations are improved, but lower-priority operations experience execution delays and starvation

Engineering Contradiction:
Improvethroughput for high-priority operationsVSAvoidexecution guarantee for low-priority operations
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system monitors the rate of high-priority operations from each process and compares it against thresholds. When a process exceeds the threshold for sustained periods, feedback is used to adjust its priority level, preventing it from monopolizing system resources and causing starvation of lower-priority operations.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Process priorities are made dynamic rather than static. The system automatically adjusts process priority levels based on real-time monitoring of operation rates, allowing processes that are generating excessive high-priority operations to have their priorities reduced, while other processes can maintain or increase their priorities as needed.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If rate limiting is applied to high-priority operations to prevent starvation, then fairness among processes is improved, but system responsiveness to critical operations deteriorates

Engineering Contradiction:
Improvefairness of operation executionVSAvoidresponsiveness to high-priority operations
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

Rate limiting is applied partially rather than universally. Only processes that exceed the configured threshold for sustained periods are subject to priority reduction, while other processes continue to execute high-priority operations without restriction. This ensures fairness is improved only where needed, without compromising overall system responsiveness.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If monitoring and corrective actions are implemented for each process, then starvation prevention is improved, but system complexity increases

Engineering Contradiction:
Improvestarvation prevention capabilityVSAvoidtraffic management system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The traffic management system implements universal monitoring and control mechanisms that apply to all processes in a unified manner. The same threshold-based monitoring, EMA calculation, and priority adjustment logic is used for every process, simplifying the overall system architecture compared to implementing process-specific complex control algorithms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12474952B2Traffic management on an internal fabric of a storage system
Publication Date: 2025.11.18 DELL PROD LP
  • US12474952B2 patent drawing
  • US12474952B2 patent drawing
  • US12474952B2 patent drawing

AI summary

For each source process running on a source node, a rate of high-priority operations initiated by the first process during the period that require accessing a target node can be calculated. An average rate (e.g., an exponential moving average (EMA)) of high-priority operations initiated by the first process over a larger period of time that require accessing the target node can be calculated. Similarly, a rate of high-priority operations initiated by any process executing on a processing node during the period that require accessing the target node can be calculated, and an average rate (e.g., an EMA) of high-priority operations initiated by any such process over the larger period of time that require accessing the target node can be calculated. If one or more of the rates for the period or the average rates reach or exceed respective thresholds, corrective actions can be taken.