Method and apparatus for logically expanding the length of a search key
First Claim
Patent Images
1. A method comprising:
- searching data stored in a computer readable media for a first initial search result using at least a first portion of a first key; and
if the first initial search result is a route index corresponding to the first key, then returning the route index; and
if the first initial search result is a subtree index for an iterative search, then performing an iterative search of the data stored in the computer readable media, the iterative search comprising;
searching the data for an iterative search result using a subsequent key comprising the subtree index found in a preceding search and at least a next portion of the first key; and
if the iterative search result is a route index corresponding to the first key, then returning the route index; and
if the iterative search result is a subtree index for a next search, then performing the iterative search again.
4 Assignments
0 Petitions
Accused Products
Abstract
A lookup table provides a longest prefix match for a search key longer than a lookup table'"'"'s mapper key. The lookup table performs a multi-level search in one or more mappers for the result value based on a portion of the search key provided as the mapper key. The lookup table is searched in multiple passes with successive portions of the search key until the result value is found.
-
Citations
31 Claims
-
1. A method comprising:
-
searching data stored in a computer readable media for a first initial search result using at least a first portion of a first key; and if the first initial search result is a route index corresponding to the first key, then returning the route index; and if the first initial search result is a subtree index for an iterative search, then performing an iterative search of the data stored in the computer readable media, the iterative search comprising;
searching the data for an iterative search result using a subsequent key comprising the subtree index found in a preceding search and at least a next portion of the first key; and
if the iterative search result is a route index corresponding to the first key, then returning the route index; and
if the iterative search result is a subtree index for a next search, then performing the iterative search again. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus comprising:
-
a memory storing data; a forwarding engine configured to search the data for a first initial search result using at least a first portion of a first key, wherein the forwarding engine is configured to return a route index if the first initial search result is a route index corresponding to the first key, and wherein the forwarding engine is configured to perform an iterative search if the first initial search result is a subtree index, wherein the iterative search comprises;
searching the data for an iterative search result based on a subsequent key comprising the subtree index found in a preceding search and at least a next portion of the first key; and
if the iterative search result is a route index corresponding to the first key, then returning the route index; and
if the iterative search result is a subtree index, then performing the iterative search again. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus comprising:
means for storing data;
means for searching the data for a first initial search result using at least a first portion of a first key, wherein said means is configured to return a route index if the first initial search result is a route index corresponding to the first key, and wherein said means is configured to perform an iterative search if the first initial search result is a subtree index, wherein the iterative search comprises;
searching the data for an iterative search result based on a subsequent key comprising the subtree index found in a preceding search and at least a next portion of the first key; and
if the iterative search result is a route index corresponding to the first key, then returning the route index; and
if the iterative search result is a subtree index, then performing the iterative search again.- View Dependent Claims (21, 22, 23, 24, 25)
-
26. A method comprising:
-
searching data stored in a computer readable media for an iterative search result using a subtree index found in a preceding search of the computer readable media and at least a next portion of a first key; and if the iterative search result is a route index corresponding to the first key, then returning the route index; and if the iterative search result is a subtree index for a next search, then performing said searching data for an iterative search result again. - View Dependent Claims (27, 28, 29, 30, 31)
-
Specification