Distributed Switching Fabric for High-Capacity Data Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional data switches face limitations in port capacity and bandwidth due to centralized switching engines, leading to increased costs and complexity in handling high traffic demands, especially in large data centers, where multiple switches are required to manage traffic efficiently.
Innovation Solution
A novel distributed switching architecture with multiple interconnecting switching nodes and a switching protocol that allows data packets to be selectively passed through multiple parallel paths, enabling high-capacity data switching by distributing the switching load and providing redundancy, queuing, and packet duplication capabilities, while allowing for expansion to accommodate a near-indefinite number of ports.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a centralized switching engine is used, then the switching architecture is simple, but the port capacity and bandwidth are limited
Solution Approach 1:
The patent divides the centralized switching engine into multiple distributed switching nodes, each capable of independent packet forwarding. This segmentation allows the system to handle significantly more ports (thousands to millions) while maintaining manageable complexity through modular design. Each node processes a portion of the total traffic, eliminating the bottleneck of centralized switching.
2Productivity
If multiple data switches are used to handle high traffic demands, then the port capacity increases, but the device complexity and interconnection requirements increase
Solution Approach 1:
The patent merges multiple switching functions into a single distributed switching system where numerous switching nodes cooperate as one unified fabric. This eliminates the need for complex interconnections between multiple separate switches, as all nodes share a common packet forwarding plane. The system provides high port capacity without requiring multiple discrete switch units.
3Device complexity
If a shared bus architecture is used, then the device complexity is low, but the packet transfer rate is limited
Solution Approach 1:
The patent segments the single shared bus into multiple parallel switching paths distributed across numerous nodes. Each node can simultaneously forward packets independently, transforming the single-bus bottleneck into a massively parallel fabric. This enables packet transfer rates to scale with the number of nodes while maintaining architectural simplicity through standardized node designs.
4Speed
If the switching node is physically close to the shared bus implementation, then the access speed is fast, but the size and scope of the data switch are limited
Solution Approach 1:
The patent transitions from a two-dimensional shared bus topology to a multi-dimensional distributed mesh fabric. Switching nodes are distributed across multiple spatial and logical dimensions, allowing packets to traverse through intermediate nodes to reach distant destinations. This dimensional expansion enables the switch to scale to millions of ports while maintaining fast effective access times through parallel path selection.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A data switch for a packet data switch includes switching nodes connected to each other in an interconnecting matrix, providing a multiplicity of data paths between an incoming data or telecom port and an outgoing data or telecom port of the data switch. The interconnecting switching nodes can achieve high capacity data switching by providing a partial switching solution at each node, distributing the switching load. A switching protocol for interconnecting switching nodes allows data packets to be selectively passed from any incoming port on an interconnecting switch node to any interconnecting switching node or outgoing port connected to it. In at least one example, the switching protocol has mechanisms in it to provide for the duplicating of the contents of the data packet and pass them to multiple interconnecting switching nodes or outgoing ports.