Network Memory Congestion Control Through Packet Flow Throttling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern network devices experience memory-access congestion due to concurrent processing tasks exceeding the shared memory's access capability, leading to poor Quality-of-Service and potential packet dropping.

Innovation Solution

A memory-network congestion controller identifies and alleviates memory-access congestion by reducing the communication rate of packet flows, either by sending fake Explicit Congestion Notifications to remote devices or modifying packet dropping policies, and prioritizing or throttling lower-priority flows.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple processing tasks concurrently access shared memory to handle packet flows, then processing capability and network throughput are improved, but memory-access congestion occurs when access exceeds memory capability

Engineering Contradiction:
Improveprocessing capabilityVSAvoidmemory-access reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The congestion controller implements a feedback mechanism by monitoring memory-access patterns and packet flow rates, then dynamically adjusting packet transmission rates based on detected congestion levels. When memory-access congestion is detected, the controller reduces packet flow rates to alleviate congestion, creating a closed-loop control system that adapts to real-time memory conditions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts packet flow transmission rates based on real-time memory congestion conditions. Instead of using fixed transmission rates, the congestion controller continuously modifies packet flow characteristics (such as rate limiting or packet dropping) to adapt to varying memory access capabilities, transforming a static system into a dynamic one that responds to changing conditions.

Inventive Principle:
Principle #15Dynamics

2Reliability

If memory bandwidth is increased to handle concurrent processing tasks, then memory-access congestion is reduced, but device cost and complexity increase

Engineering Contradiction:
Improvememory-access reliabilityVSAvoidmemory bandwidth design
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of increasing memory bandwidth hardware resources, the system changes operational parameters by dynamically adjusting packet flow transmission rates. The congestion controller modifies traffic characteristics (rate, timing, volume) to match memory access capabilities, achieving reliable memory access through parameter optimization rather than hardware scaling.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The congestion controller acts as an intermediary layer between packet flows and shared memory access. It mediates the interaction by monitoring memory conditions and adjusting packet flow rates accordingly, preventing direct congestion at the memory interface without requiring increased memory bandwidth capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If packet flow rate is reduced to alleviate memory-access congestion, then memory reliability is improved, but network throughput decreases

Engineering Contradiction:
Improvememory-access reliabilityVSAvoidnetwork throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The congestion controller applies partial rate reduction only to specific packet flows that are causing or contributing to memory-access congestion, rather than uniformly reducing all traffic. By selectively throttling problematic flows while allowing others to maintain higher rates, the system achieves sufficient memory relief without excessive overall throughput reduction.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20260067220A1Alleviating Memory-Access Congestion in Network Devices
Publication Date: 2026.03.05 MELLANOX TECHNOLOGIES LTD(IL)
  • US20260067220A1 patent drawing
  • US20260067220A1 patent drawing
  • US20260067220A1 patent drawing

AI summary

A network device includes one or more ports, processing circuitry, and a memory-network congestion controller. The ports are to connect to a network. The processing circuitry is to run a plurality of processing tasks that access a shared memory, one or more of the processing tasks including communicating one or more packet flows over the network. The memory-network congestion controller is to (i) identify a memory-access congestion, which is caused by one or more of the processing tasks attempting to access the shared memory in a manner that exceeds an access capability of the shared memory, and (ii) in response to identifying the memory-access congestion, alleviate the memory-access congestion by causing a reduction in a communication rate of at least one outgoing packet flow, among the one or more packet flows, that is sent from the network device to a selected destination.