Programmable Switch Fabric for Scale-Out Router Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Scale-out routers face high latency due to loose integration between hardware and software, leading to increased overhead and vendor lock-in issues, making it costly to add capacity and maintain performance comparable to scale-up routers.
Innovation Solution
A programmable and low-latency switch fabric for scale-out routers using a database with path and usage tables, where each row includes source and destination identifiers, and network interface line cards retrieve paths and congestion data to determine optimal routing paths, with data packets including tags and path status/queuing parameters to manage traffic efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If scale-out routers use off-the-shelf hardware and commodity software with loose integration, then cost-effectiveness and scalability are improved, but latency increases substantially
Solution Approach 1:
The router is divided into independent line cards that can be added or removed individually, allowing scalable capacity expansion without replacing the entire device. Each line card contains its own processing units and memory, enabling modular growth while maintaining low latency through localized operations.
Solution Approach 2:
A centralized controller acts as an intermediary to manage routing decisions and coordinate data flow between line cards. This mediator distributes routing information and congestion data to line cards, enabling them to make local routing decisions without full software involvement, thus reducing latency while maintaining scalability.
2Ease of manufacture
If scale-out routers use loose integration between hardware and software, then ease of manufacture and cost-effectiveness are improved, but overhead increases and performance deteriorates
Solution Approach 1:
The line cards are designed with universal interfaces and standardized protocols that allow them to function in multiple roles (input line card, output line card, or intermediate switches). This multi-functionality reduces the need for specialized hardware components, simplifying manufacturing while maintaining performance through shared resources.
Solution Approach 2:
The system dynamically adjusts routing parameters such as path selection, congestion levels, and queue depths based on real-time network conditions. By changing these parameters rather than relying on fixed hardware configurations, the system reduces overhead and improves performance while maintaining the flexibility of off-the-shelf hardware.
3Quantity of substance
If additional routers are added to increase capacity in scale-up architecture, then capacity is improved, but vendor lock-in effect increases and costs increase
Solution Approach 1:
The router capacity is segmented into independent line cards with standardized interfaces, allowing customers to add only the necessary number of line cards to achieve desired capacity. This modular approach enables capacity expansion without requiring complete router replacements or being locked into vendor-specific configurations.
Solution Approach 2:
The system uses identical, standardized line card designs that can be manufactured by different vendors using the same specifications. This standardization allows customers to mix and match line cards from different suppliers, reducing vendor lock-in while maintaining consistent performance and management.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A router device comprises a memory storage storing a database with network path information and a plurality of network interface line cards. The plurality of network interface line cards receive data through a network interface of a first line card addressed to a second line card; determine a path through at least one switch from the first line card to the second line card based on the network path information stored in the database; and forward the data, the address of the second line card, and the path information to the second line card from the first line card through the at least one switch.