Network Adapter Incast Congestion Forecasting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Incast congestion occurs in communication networks when multiple nodes send data concurrently to a common destination, leading to buffer congestion, performance degradation, and increased latency, which existing methods such as end-to-end congestion control and centralized scheduling fail to address effectively.

Innovation Solution

A network adapter with circuitry that forecasts inbound bandwidth based on outbound message requests and schedules transmissions to remote nodes, breaking large messages into smaller ones and managing response credits to prevent incast congestion without requiring centralized control or slow-reacting end-to-end methods.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple nodes send data concurrently to a common destination, then data transfer throughput increases, but buffer congestion occurs and performance degrades

Engineering Contradiction:
Improvedata transfer throughputVSAvoidbuffer congestion
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The network adapter forecasts the bandwidth of inbound response traffic before transmitting outbound messages by evaluating the volume of response traffic expected within an imminent time-window. This preliminary action allows the system to prevent incast congestion before it occurs by controlling the rate of outgoing data requests in advance, rather than reacting after congestion has formed.

Inventive Principle:
Principle #10Preliminary action

2Speed

If the rate of outgoing data requests is increased, then data transfer speed improves, but incast congestion is triggered

Engineering Contradiction:
Improvedata transfer speedVSAvoidnetwork performance stability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The network adapter uses feedback from forecasted bandwidth information to dynamically control the transmission rate of outbound messages. By continuously evaluating expected response traffic volume and adjusting the rate of outgoing data requests accordingly, the system maintains optimal transfer speed while preventing congestion, ensuring both speed and reliability.

Inventive Principle:
Principle #23Feedback

3Reliability

If end-to-end congestion control methods are used, then congestion handling is provided, but reaction time is slow and effectiveness is reduced

Engineering Contradiction:
Improvecongestion handlingVSAvoidreaction time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of waiting for congestion to occur and then reacting with end-to-end control mechanisms, the network adapter performs preliminary forecasting of response traffic bandwidth and proactively controls the transmission rate before congestion occurs. This eliminates the time delay inherent in reactive end-to-end methods.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If centralized scheduling is implemented, then traffic control is improved, but system complexity increases

Engineering Contradiction:
Improvetraffic controlVSAvoidscheduling system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The network adapter performs self-service by autonomously forecasting bandwidth and controlling its own outbound message transmission rate without requiring centralized scheduling control. This distributed approach maintains effective traffic control while avoiding the complexity of centralized scheduling systems.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11102129B2Adjusting rate of outgoing data requests for avoiding incast congestion
Publication Date: 2021.08.24 MELLANOX TECHNOLOGIES LTD(IL)
  • US11102129B2 patent drawing
  • US11102129B2 patent drawing
  • US11102129B2 patent drawing

AI summary

A network adapter includes circuitry and one or more ports. The ports connect to a communication network including multiple network elements. The circuitry accesses outbound messages that are pending to be sent over the communication network to multiple remote nodes via the ports. At least some of the outbound messages request the remote nodes to send respective amounts of data back to the network adapter. Based on the amounts of data requested by the outbound messages, the circuitry forecasts a bandwidth of inbound response traffic, which is expected to traverse a selected network element in response to the outbound messages toward the network adapter, determines a schedule for transmitting the outbound messages to the remote nodes so that the forecasted bandwidth meets a bandwidth supported by the selected network element, and transmits the outbound messages to the remote nodes in accordance with the determined schedule.