Top of Rack Switch Routing via Software Cache Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large data center environments, Top of Rack (ToR) switches face challenges in efficiently routing packets due to the impracticality of storing address information for every host device in their routing table databases, leading to processing limitations and communication delays.

Innovation Solution

The solution involves storing address information in software caches and writing it to routing table databases only for host devices involved in active data communications, optimizing packet routing by maintaining any-to-any reachability while reducing unnecessary network bandwidth usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ToR switches store address information for every host device in routing table databases, then any-to-any reachability is achieved, but processing limitations and memory constraints are exceeded

Engineering Contradiction:
Improveany-to-any reachabilityVSAvoidrouting table database size
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the routing table database into two parts: a compressed routing table that stores only aggregate network information (network addresses and next-hop switches) and a separate cache that stores detailed address information only for active host devices. This segmentation allows the system to maintain any-to-any reachability while dramatically reducing the memory requirements and processing complexity of the routing table database.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by maintaining complete routing information only for host devices that are currently active (sending or receiving packets). For inactive host devices, the system uses aggregate network routing information without storing individual address entries. This partial maintenance of detailed routing information reduces memory usage while ensuring that routing capabilities are always available for active communications.

Inventive Principle:
Principle #16Partial or excessive action

2Productivity

If ToR switches maintain complete routing tables for all host devices, then optimal packet routing is achieved, but processing time and memory usage increase

Engineering Contradiction:
Improvepacket routing efficiencyVSAvoidrouting table lookup time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-computing and storing aggregate network routing information in the compressed routing table before any packet transmission occurs. When a packet needs to be routed, the switch first looks up the destination network in the compressed table to determine the next-hop switch, then checks the cache for specific host address information if needed. This preliminary preparation of routing information eliminates the need for time-consuming real-time computations during packet forwarding.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the essential routing information needed for most packets (aggregate network-to-next-hop mappings) from the complete routing table and stores it in the compressed routing table. Detailed individual host address information is extracted and stored separately in the cache only when needed for active host devices. This extraction strategy reduces the size of the main routing table and speeds up lookup operations.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If ToR switches store detailed address information for all host devices, then accurate packet forwarding is achieved, but network bandwidth is wasted on maintaining routing tables

Engineering Contradiction:
Improvepacket forwarding accuracyVSAvoidbandwidth used for routing table maintenance
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent changes the parameter of routing information storage from storing complete detailed address information for all host devices to storing compressed aggregate network information combined with selective detailed information for active hosts. This parameter change transforms the routing table from a comprehensive but resource-intensive structure to a streamlined structure that maintains forwarding accuracy while minimizing bandwidth consumption for maintenance.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces dynamics by making the routing table structure adaptive: the compressed routing table contains static aggregate network information that rarely changes, while the cache dynamically stores detailed address information only for currently active host devices. This dynamic approach ensures that detailed routing information is maintained only when necessary for accurate packet forwarding, reducing the bandwidth required for maintaining routing tables compared to static complete routing tables.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2907279B1Ensuring any-to-any reachability with opportunistic layer 3 forwarding in massive scale data center environments
Publication Date: 2017.04.19 CISCO TECHNOLOGY INC
  • EP2907279B1 patent drawingFigure 1
  • EP2907279B1 patent drawingFigure 2
  • EP2907279B1 patent drawingFigure 3

AI summary

Techniques are provided for updating routing tables of switch devices. At a first switch device of a first rack unit in a network, information is received about addresses of host devices in the network. The addresses are stored in a software cache. A packet is received from a first host device assigned to a first subnet and housed in the first rack unit. The packet is destined for a second host device assigned to a second subnet and housed in a second rack unit in the network. The packet is forwarded using the subnet entry and it may remain sub-optimal during a period before which an entry can be installed form a software cache. The software cache is evaluated to determine the address of the second host device. The packet is then forwarded optimally. This will ensure any-to-any communications in the network initially sub-optimally and subsequently optimally.