Cardinality-Based Data Flow Congestion Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing congestion control approaches in data centers are inadequate, particularly at scale, as they fail to react appropriately to the number of flows facing congestion, leading to increased latency and inefficiency.
Innovation Solution
A congestion controller that measures cardinality by counting the number of flows targeting specific resources, such as switch queues or GPU processing circuitry, to implement forward-looking congestion control actions, including filtering small flows and using probabilistic estimators like HyperLogLog to reduce memory usage and improve performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If existing congestion control approaches are used that do not measure flow cardinality, then the system is simpler to implement, but latency increases and congestion control effectiveness deteriorates
Solution Approach 1:
The congestion controller performs preliminary measurement of flow cardinality before congestion fully develops. By counting the number of flows targeting specific resources in advance and using this information proactively, the system can prevent congestion rather than merely reacting to it, thereby reducing latency without requiring complex real-time intervention mechanisms.
Solution Approach 2:
The system implements feedback by continuously measuring flow cardinality and using this information to adjust congestion control actions. The controller monitors the number of flows targeting resources and feeds this cardinality information back into the control decision-making process, enabling dynamic adjustment of congestion control parameters based on actual flow conditions.
2Measurement precision
If all flows are counted to determine congestion, then measurement precision improves, but processing overhead and complexity increase
Solution Approach 1:
The patent extracts only the essential information needed for congestion control by counting flows at aggregate levels rather than tracking every individual flow in detail. The congestion controller measures the cardinality of flows targeting specific resources without needing to examine or process each flow's complete information, thereby achieving sufficient measurement precision with reduced complexity.
Solution Approach 2:
The system applies partial action by counting flows selectively based on their targeting of specific resources rather than uniformly processing all flows. This partial measurement approach provides sufficient information for effective congestion control without the excessive overhead of complete flow analysis, achieving an optimal balance between precision and complexity.
Data Source
AI summary
Devices, methods, and systems are provided. In one example, a method is described to include measuring a cardinality of actual data flows at a flow-processing resource, determining that the cardinality of the actual data flows triggers a congestion control action, and, in response to determining that the cardinality of the actual data flows triggers the congestion control action, implementing the congestion control action with respect to the flow-processing resource.


