Cardinality-Based Data Flow Congestion Control

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

VSEngineering 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

Engineering Contradiction:
ImprovelatencyVSAvoidcongestion control mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If all flows are counted to determine congestion, then measurement precision improves, but processing overhead and complexity increase

Engineering Contradiction:
Improvecongestion measurement accuracyVSAvoidflow counting complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

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.

Inventive Principle:
Principle #2Taking out (Extraction)

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11838209B2Cardinality-based traffic control
Publication Date: 2023.12.05 MELLANOX TECHNOLOGIES LTD(IL)
  • US11838209B2 patent drawing
  • US11838209B2 patent drawing
  • US11838209B2 patent drawing

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.