Network Switch Forwarding Table Segmentation for Scalability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network switches face challenges in scalability and processing delays as the number of ports increases, leading to higher complexity and costs, and existing architectures are not efficiently scalable to handle large numbers of ports without significant delays.
Innovation Solution
Implementing per-queue, circular egress buffers with large-scale memory units that are dynamically allocated and deallocated based on packet traffic, using relatively inexpensive DRAM memory external to the integrated circuit, and optimizing memory allocation and deallocation techniques to reduce processing delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the number of ports on a switch is increased to accommodate more paths and traffic, then the switch can handle more network connections, but the complexity and cost of the switch increase
Solution Approach 1:
The patent segments the forwarding table into multiple partitions or subsets, allowing the switch to handle large numbers of ports by dividing the lookup task into smaller, more manageable segments. This segmentation reduces the complexity of processing each packet while maintaining support for a large number of ports.
Solution Approach 2:
The patent introduces a hierarchical or multi-dimensional structure to the forwarding table organization, moving from a flat single-table structure to a multi-level partitioned structure. This dimensional change allows efficient scaling to large numbers of ports without proportionally increasing processing complexity.
2Adaptability or versatility
If the number of ports on a switch is increased to accommodate more paths and traffic, then the switch can handle more network connections, but processing delays within the switch increase
Solution Approach 1:
By partitioning the forwarding table into multiple smaller tables or segments, the patent enables parallel or pipelined processing of packet lookups. This segmentation reduces the time required to search through forwarding information, thereby decreasing processing delays even as the total number of ports increases.
Solution Approach 2:
The patent performs preliminary organization and partitioning of forwarding table data in advance, so that when packets arrive, the lookup process can proceed more efficiently through pre-structured segments rather than searching through an unorganized large table, reducing processing delays.
3Adaptability or versatility
If existing switch architectures are scaled to a large number of ports, then more ports can be supported, but significant costs and processing delays are incurred
Solution Approach 1:
The patent employs segmentation of the forwarding table into multiple partitions that can be independently managed and processed. This approach enables scalable architecture where the switch can support a large number of ports by simply adding or configuring additional table partitions without fundamentally changing the core architecture, thereby controlling complexity while improving scalability.
Solution Approach 2:
The patent implements dynamic characteristics in the forwarding table structure, allowing the partitioning and organization of forwarding information to adapt based on traffic patterns and port configurations. This dynamic approach enables the architecture to scale efficiently to large numbers of ports without requiring static, overly complex designs.
Data Source
AI summary
A memory system has a plurality of memory stages in which each stage stores a respective portion of a data table. A request for reading an entry of the table is processed serially by the memory stages, and each stage narrows the range of table entries possibly storing the requested data. Based on the results of the previous stages, the final stage is able to quickly determine whether the requested data is stored in the data table and, if so, to retrieve the requested data from such table.


