Virtual Channel Routing via Segmented Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High Performance Computing (HPC) networks face increased storage and computational complexity due to the need for numerous per-VC routing tables, and existing topologies either lack VC remapping capabilities or are limited to specific designs, making them inefficient for adaptive routing algorithms.

Innovation Solution

The implementation of a method that uses a routing engine to determine output ports and Virtual Channel (VC) actions based on destination network devices, with a Virtual Channel Action Table (VCAT) to define valid output VCs, allowing per-VC routing while reducing storage requirements by separating route computation from VC transition functionality into two tables per input port.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If per-VC routing tables are used for each virtual channel, then routing flexibility and VC remapping capabilities are improved, but storage requirements and device complexity increase significantly

Engineering Contradiction:
Improverouting flexibilityVSAvoidstorage requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the routing functionality by separating the routing table (containing destination information and output port mappings) from the VC action table (containing VC remapping rules and virtual channel mappings). This allows each table to be optimized independently, reducing the need for redundant per-VC routing tables while maintaining full routing flexibility and VC remapping capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a universal routing architecture where a single routing table serves all virtual channels, and a separate VC action table provides the remapping functionality. This multi-functional design eliminates the need for multiple specialized per-VC routing tables, significantly reducing storage requirements while maintaining adaptability across different VC configurations and routing algorithms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If per-VC routing tables are implemented for each input port, then VC remapping and adaptive routing are enabled, but the number of routing tables and computational complexity increase

Engineering Contradiction:
ImproveVC remapping capabilityVSAvoidnumber of routing tables
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the routing system into two distinct components: a routing table that handles destination-based forwarding decisions, and a VC action table that handles virtual channel remapping. This segmentation eliminates the need for multiple per-VC routing tables at each input port, reducing the number of tables from potentially hundreds to just two, while preserving full VC remapping capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The VC action table acts as an intermediary between the routing table and the actual VC forwarding logic. It receives routing decisions and translates them into appropriate VC actions, enabling adaptive routing and remapping without requiring separate per-VC routing tables. This intermediary layer decouples the routing logic from the VC management logic, reducing overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10491545B2Virtual channel routing
Publication Date: 2019.11.26 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10491545B2 patent drawing
  • US10491545B2 patent drawing
  • US10491545B2 patent drawing

AI summary

Examples relate to virtual channel routing in networks considering VC actions to be performed by the packets while routed through the network. A packet is received at an input port of a network device of a network and an output port and a VC action is determined from a routing table associated to the input port based on a packet's destination network device. A VC mask is determined from a Virtual Channel Action Table (VCAT), associated to the routing table, based on a packet's ingress VC and the VC action. A particular VC among the set of VCs defined in the VC mask is selected and the packet is routed to the destination network device using the output port and the particular VC.