Credit-Based Flow Control for Ethernet Buffer Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Ethernet's reactive stop-and-go flow control mechanism, PAUSE, is inadequate for ensuring no frame drops due to increasing bandwidth-delay product (BDP) at higher line rates, leading to buffer size requirements and unwanted frame drops, especially with increasing line rates and delayed processing of PAUSE frames.

Innovation Solution

Implementing a credit-based flow control mechanism that proactively reserves buffer space through credit exchange between ports, using credit grant and request packets to ensure guaranteed buffer space and prevent frame drops, independent of BDP.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If reactive PAUSE mechanism is used for flow control, then frame drops can be prevented when buffer backlog exceeds threshold, but buffer size must be increased to account for bandwidth-delay product, leading to larger buffer requirements

Engineering Contradiction:
Improveframe drop preventionVSAvoidbuffer size
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The patent applies preliminary action by proactively reserving buffer space through credit exchange before data transmission begins. The receiver sends credit grant packets indicating pre-allocated buffer space, allowing the sender to know in advance how much data can be transmitted without risking buffer overflow. This eliminates the need for large buffers to accommodate bandwidth-delay product variations.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If high line rates are implemented to increase throughput, then data transmission speed improves, but bandwidth-delay product increases, causing reactive PAUSE mechanism to fail and frame drops to occur

Engineering Contradiction:
Improvedata transmission speedVSAvoidframe drop prevention
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

By exchanging credit information before data transmission, the system proactively establishes flow control parameters that account for high line rates and corresponding bandwidth-delay products. The receiver reserves appropriate buffer space in advance and communicates this to the sender, ensuring reliable frame delivery even at high speeds without relying on reactive PAUSE mechanisms.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If buffer size is increased to prevent frame drops in reactive flow control, then frame drop prevention improves, but resource utilization decreases due to idle buffer space

Engineering Contradiction:
Improveframe drop preventionVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements feedback through credit grant packets that dynamically communicate available buffer space from receiver to sender. The receiver provides continuous feedback about its buffer status, allowing the sender to adapt its transmission rate accordingly. This ensures buffers are filled efficiently without overflow while minimizing idle buffer space, optimizing both reliability and resource utilization.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9571410B2Credit-based link level flow control and credit exchange using DCBX
Publication Date: 2017.02.14 KYNDRYL INC
  • US9571410B2 patent drawing
  • US9571410B2 patent drawing
  • US9571410B2 patent drawing

AI summary

In one embodiment, a system includes a network having one or more devices interconnected therebetween, the network including a first device having a first port and logic integrated with and/or executable by a first processor, the logic being adapted to exchange credit exchange (CE) capabilities between the first port and a second port of a second device in the network, receive a credit grant packet from the second port, the credit grant packet indicating credits granted to the first port, and send one or more packets of data from the first port to the second port, the one or more packets corresponding with the granted credits. Other systems and methods for providing credit-based flow control are described according to more embodiments.