Source Routing via MPLS Header Stack for Stateless Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing routing systems in networks are cumbersome due to the need for switches to maintain state information and use complex algorithms, leading to increased costs and reduced performance.

Innovation Solution

A system and method for source routing that uses a stack of Multiprotocol Label Switching headers, where each switch removes the top header to determine the output port, eliminating the need for state information and simplifying routing decisions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If switches maintain state information about network topology and use complex routing algorithms, then routing decisions can be made dynamically, but device complexity and cost increase

Engineering Contradiction:
Improverouting decision capabilityVSAvoidswitch complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The source switch performs the routing decision in advance by constructing a label stack that encodes the complete path to the destination. Each label in the stack represents a routing segment, so that downstream switches only need to execute simple label popping and forwarding operations without maintaining topology state or making complex routing decisions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The routing intelligence and state information are extracted from the switches and concentrated at the source switch. The label stack carries the routing information externally, allowing intermediate switches to operate statelessly with simple label matching logic, thereby reducing their complexity while preserving end-to-end routing capability.

Inventive Principle:
Principle #2Taking out (Extraction)

2Measurement precision

If switches maintain state information and use complex routing algorithms, then accurate routing decisions can be made, but processing performance decreases

Engineering Contradiction:
Improverouting accuracyVSAvoidswitch processing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The complex routing computation is performed preliminarily at the source switch before packets are injected into the network. The resulting label stack provides precise routing instructions that guide packets through the network, allowing intermediate switches to execute high-speed label matching and popping operations without complex processing.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If switches maintain state information about network topology, then dynamic routing adjustments can be made, but cost increases

Engineering Contradiction:
Improvedynamic routing capabilityVSAvoidswitch cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The state information and routing intelligence are extracted from individual switches and consolidated at the source switch. This allows intermediate switches to be manufactured as simpler, stateless devices with lower cost, while the source switch bears the complexity of maintaining topology information and making routing decisions.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10205664B2System and method for routing
Publication Date: 2019.02.12 ROCKLEY PHOTONICS LTD
  • US10205664B2 patent drawing
  • US10205664B2 patent drawing
  • US10205664B2 patent drawing

AI summary

A system and method for routing. A packet includes a stack of one or more headers, such as a stack of Multiprotocol Label Switching headers, that determines the path that the packet will take, through a sequence of switches, from its source to its destination. Each header in the stack contains an output port identifier that identifies an output port of a corresponding switch in the path. Each switch, upon receiving the packet, removes the first header to form a shortened packet, and routes the shortened packet to the output port identified by the output port identifier.