Load-Balanced Adaptive Routing Switch for Interconnect Congestion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-performance computing systems face challenges in achieving low latency and high throughput due to congestion in interconnection networks, as endpoint adaptive routing is slow to react to congestion, leading to instability and inefficient bandwidth utilization.

Innovation Solution

Implementing load-balanced fine-grained adaptive routing at switches, which uses a dynamic port table to distribute packets across multiple output ports based on available bandwidth, allowing immediate diversion of traffic around congestion and preventing port bursting, thereby stabilizing network performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If adaptive routing is implemented at endpoints, then implementation complexity is reduced, but reaction speed to congestion deteriorates

Engineering Contradiction:
Improverouting implementation complexityVSAvoidcongestion reaction speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent introduces switches as intermediary devices that implement adaptive routing logic, acting as mediators between endpoints and the network core. These switches monitor congestion conditions and dynamically adjust packet routing decisions, eliminating the need for complex endpoint routing while achieving fast congestion response through centralized switch-based control

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If traffic is concentrated on minimal paths, then routing simplicity is improved, but bandwidth utilization deteriorates

Engineering Contradiction:
Improverouting algorithm simplicityVSAvoidbandwidth utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic path selection where switches can adaptively choose between minimal and non-minimal paths based on real-time congestion conditions. The routing behavior transitions from static to dynamic, allowing the network to utilize non-minimal paths when congestion is detected, thereby maximizing bandwidth utilization while maintaining routing simplicity through automated adaptation

Inventive Principle:
Principle #15Dynamics

3Reliability

If load is dispersed over the interconnect, then congestion is reduced, but routing complexity increases

Engineering Contradiction:
Improvenetwork stabilityVSAvoidrouting control complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service routing where switches autonomously monitor their own congestion conditions and make independent routing decisions without centralized control. Each switch services itself by detecting local congestion and dynamically selecting alternative paths, achieving load dispersion and network stability while avoiding the complexity of centralized routing management

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP4109852B1Load-balanced fine-grained adaptive routing in high-performance system interconnect
Publication Date: 2024.10.16 CORNELIS NETWORKS INC
  • EP4109852B1 patent drawingFigure 1A
  • EP4109852B1 patent drawingFigure 1B
  • EP4109852B1 patent drawingFigure 1C

AI summary

A switch is provided for load-balanced fine-grained adaptive routing in a high-performance interconnection network. The switch includes a plurality of egress ports to transmit packets, and one or more ingress ports to receive packets. The switch also includes a network capacity circuit for obtaining network capacity for transmitting packets via the plurality of egress ports. The switch also includes a port sequence generation circuit configured to generate a port sequence that defines a pseudo-randomly interleaved sequence of a plurality of path options via the plurality of egress ports, based on the network capacity. The switch also includes a routing circuit for routing one or more packets, received from the one or more ingress ports, towards a destination, based on the port sequence.