Routing table lookup implemented using M-trie having nodes duplicated in multiple memory banks
First Claim
1. A system comprising:
- a plurality of memory banks, said plurality of memory banks collectively recording at least one M-trie responsive to header information in a set of packets; and
means for dynamically reallocating said nodes within said plurality of banks;
wherein at least one node of said M-trie is recorded in at least two of said banks.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention provides a method and system for rapid access to one or more M-tries for responding to header information. The M-tries are stored in a plurality of memory banks, which are accessed in parallel to provide relatively greater access throughput. Parts of the M-tries that are (or are expected to be) frequently referenced are stored in multiple banks of the memory, to provide concurrent simultaneous access for those parts of the M-tries for parallel lookup of multiple routes. Regions of the multiple banks of the memory can be dynamically reallocated to provide improved access through-put to those multiple banks. The invention can be applied to routing decisions in response to destination addresses, to combinations of destination and source addresses (either for unicast or multicast routing), to access control decisions, to quality of service decisions, to accounting, and to other administrative processing in response to header information.
298 Citations
34 Claims
-
1. A system comprising:
-
a plurality of memory banks, said plurality of memory banks collectively recording at least one M-trie responsive to header information in a set of packets; and
means for dynamically reallocating said nodes within said plurality of banks;
wherein at least one node of said M-trie is recorded in at least two of said banks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method comprising the step of:
-
recording, in a plurality of memory banks, at least one M-trie responsive to header information in a set of packets; and
dynamically reallocating said nodes within said plurality of banks;
wherein at least one node of said M-trie is recorded in at least two of said banks. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
Specification