Efficient ipv4/ipv6 best matching prefix method and apparatus
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a data-structure to store a search database and provides techniques to build this datastructure given a list of prefixes (P) and to search this database efficiently for a best matching prefix for an address D. The data-structure can be stored in standard memory (14), where values are stored associated with memory address locations. The data structure includes representations of addressable linked tables (FIG. 3b). The representations are related to a binary search trie (FIG. 1) and each linked table (T) has at least one entry. Entries in a table span more than one level of the binary search trie. The spanning feature relates to compression of a binary search trie into a finite number of levels (and hence tables). The finite number is less than the number of levels in the binary search trie. Hence the search algorithm is restricted to a finite, and predetermined number of search accesses to the tables to obtain a best-match result.
276 Citations
58 Claims
-
1-28. -28. (canceled)
-
29. A memory for use in a search algorithm for addresses in a telecommunications system comprising:
a data structure stored in said memory, said data structure comprising representations of addressable linked tables, said representations being related to a search trie, each linked table comprising at least one entry, each entry comprising skip information, no-match result information and one of next table information and a match result. - View Dependent Claims (30, 31, 32, 33, 34)
-
35. A data structure for use in a search algorithm for addresses in a telecommunications system comprising:
representations of addressable linked tables, said representations being related to a search trie, each linked table comprising at least one entry, each entry comprising skip information, no-match result information and one of next table information and a match result. - View Dependent Claims (36, 37, 38, 39)
-
40. A network element of a telecommunications network, comprising:
-
memory means storing representations of addressable linked tables, said representations being related to a search trie, each linked table comprising at least one entry, each entry comprising skip information, no-match result information and one of next table information and a match result; and
a memory controller for accessing said table entries. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
-
51. A method for determining an address in a telecommunications network, comprising:
-
storing representations of addressable linked tables in a memory, said representations being related to a search trie, each linked table comprising at least one entry, each entry comprising skip information, no-match result information and one of next table information and a match result;
accessing said linked tables in accordance with the search trie; and
outputting one of a match result and the last encountered valid no-match result. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58)
-
Specification