RDMA Network Congestion Source Identification via Header Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Ethernet-compatible networks using RDMA over Converged Ethernet (RoCE) v2, identifying and addressing the source queue-pair (QP) causing congestion is complex due to large lookup tables, leading to increased reaction time and reduced network performance.

Innovation Solution

Incorporating the source QP identifier directly into congestion notification packets (CNP) using the UDP or TCP source port field, allowing the endpoint transmitter to immediately rate-control the congested flow without additional lookups, thereby reducing reaction time and enhancing network performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If large lookup tables are used to identify the source queue-pair causing congestion, then the network can track multiple flows, but the reaction time to congestion increases and network performance decreases

Engineering Contradiction:
Improvecongestion source identification accuracyVSAvoidreaction time to congestion
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent extracts the source queue-pair identifier directly from the congestion notification packet header, removing the need to perform complex lookups in large tables. By taking out only the essential identification information needed for rate control and eliminating the lookup process, the system achieves fast congestion response without sacrificing identification accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the congestion notification packet into distinct fields, with the source queue-pair identifier placed in a dedicated header field. This segmentation allows the identifier to be independently accessed and processed without requiring the network device to parse or search through the entire packet or consult large lookup tables, thereby reducing reaction time while maintaining precise source identification.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If complex table lookups are performed to determine the source queue-pair, then accurate congestion identification is achieved, but device complexity increases

Engineering Contradiction:
Improvecongestion source identification accuracyVSAvoidlookup table complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the source queue-pair identifier as a standalone field in the packet header, eliminating the need for complex lookup tables and associated processing logic. This extraction simplifies the network device architecture by removing large data structures and complex search algorithms, while still enabling accurate identification of the congestion source through direct field access.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses the existing UDP or TCP source port field in the congestion notification packet to carry the source queue-pair identifier. By copying/reusing an already-present field for a dual purpose (transport identification and congestion source identification), the patent avoids adding complex new structures or lookup mechanisms, thereby reducing device complexity while maintaining identification accuracy.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3694165B1Managing congestion in a network
Publication Date: 2023.12.27 INTEL CORP
  • EP3694165B1 patent drawingFigure 1
  • EP3694165B1 patent drawingFigure 2A
  • EP3694165B1 patent drawingFigure 2B

AI summary

Examples described herein include configuration of a transmitting network device to identify a source queue-pair identifier in at least some of the packets that are transmitted to an endpoint destination. A network device that receives packets and experiences congestion can determine if a congestion causing packet includes a source queue-pair identifier. If the congestion causing packet includes a source queue-pair identifier, the network device can form and transmit a congestion notification message with a copy of the source queue-pair identifier to the transmitting network device. The transmitting network device can access a context for the congestion causing packet using the source queue-pair identifier without having to perform a lookup to identify the context.