Virtual Hash Table Virtualization for Multi-Packet Processor MAC Capacity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multi-packet processor networking systems face challenges in scaling hardware MAC table capacity due to varying sizes of hardware hash tables, leading to installation inconsistencies and inefficient use of table capacity, particularly when adding or removing packet processors.
Innovation Solution
Implementing virtual hash tables that mimic the structure of hardware hash tables but with a uniform size larger than the smallest hardware table, allowing for selective installation and uninstallation of entries based on rules, optimizing hardware table utilization and managing disparate table sizes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If hardware hash tables are made larger to increase MAC table capacity, then more MAC addresses can be stored, but the system complexity increases due to varying table sizes across packet processors
Solution Approach 1:
The patent creates virtual copies of hardware hash tables in software. Each packet processor has a virtual hash table that mirrors its hardware table structure, allowing the system to present a uniform view to applications while the actual hardware tables can vary in size. This copying approach resolves the contradiction by decoupling the logical table size (uniform virtual tables) from the physical table size (variable hardware tables).
Solution Approach 2:
The virtual hash table acts as an intermediary layer between applications and hardware hash tables. It mediates all insert, search, and delete operations, translating uniform virtual table operations into appropriate hardware table operations. This intermediary resolves the contradiction by absorbing the complexity of handling varying hardware table sizes while presenting a simplified uniform interface to applications.
2Ease of operation
If hardware hash tables have uniform sizes, then management is simplified, but hardware capacity utilization becomes inefficient when packet processors have different capabilities
Solution Approach 1:
The patent applies local quality by allowing each packet processor's hardware hash table to have a size optimized for its specific capabilities and workload. The virtual hash table then selectively maps entries to appropriate hardware tables based on local conditions such as table size, load, and packet processor capabilities. This resolves the contradiction by enabling local optimization of hardware usage while maintaining global uniformity in the virtual interface.
Solution Approach 2:
The virtual hash table dynamically adjusts which hardware hash table entries to install or uninstall based on current system conditions, packet processor capabilities, and traffic patterns. This dynamic behavior allows the system to optimize hardware capacity utilization in real-time while maintaining uniform virtual table semantics, resolving the contradiction between static uniform sizing and dynamic hardware optimization.
3Stability of the object's composition
If MAC addresses are installed to all hardware hash tables, then consistency is maintained, but CPU load increases due to propagation overhead
Solution Approach 1:
The patent implements partial action by selectively installing MAC address entries to only those hardware hash tables that need them, rather than propagating to all tables unconditionally. The virtual hash table determines which hardware tables require specific entries based on packet processor capabilities and current load, reducing unnecessary propagation operations while maintaining consistency where needed. This resolves the contradiction by eliminating excessive propagation overhead while preserving necessary consistency.
Data Source
AI summary
Techniques for virtualizing hardware hash tables in a networking system are provided. In one embodiment, the networking system can maintain a plurality of virtual hash tables corresponding to a plurality of hardware hash tables in the networking system. For each hardware hash table and its corresponding virtual hash table, the networking system can intercept operations directed to the hardware hash table and apply the intercepted operations to the virtual hash table. The networking system can then selectively install and/or uninstall virtual hash table entries to/from the hardware hash table in view of the operations.


