Content-based information retrieval architecture
First Claim
1. A content-based information retrieval architecture comprising:
- a hashing module that receives an input value and generates a plurality of hashed values from the input value;
a first table storing a plurality of encoded values, each hashed value generated from the input value corresponding to a location in the table of an encoded value;
a second table storing a plurality of lookup values; and
a third table storing a plurality of associated input values in a lookup set, each such input value associated with a lookup value in the second table,where the first table is constructed so that the encoded values, obtained from the hashed values generated from an input value, encode an output value such that the output value cannot be recovered from any single encoded value and such that the output value selects a lookup value in the second table and an associated input value in the third table, thereby identifying the input value as being in the lookup set if the input value is same as the associated input value in the third table.
2 Assignments
0 Petitions
Accused Products
Abstract
A content-based information retrieval architecture is herein disclosed that can achieve correct and predictable high speed lookups while taking advantage of inexpensive conventional memory components. A content-based information retrieval architecture is herein disclosed that can achieve high speed lookups with a constant query time while taking advantage of inexpensive conventional memory components. In accordance with an embodiment of the invention, the architecture comprise a hashing module, a first table of encoded values, a second table of lookup values, and a third table of associated input values. The input value is hashed a number of times to generate a plurality of hashed values, the hashed values corresponding to locations of encoded values in the first table. The encoded values obtained from an input value encode an output value such that the output value cannot be recovered from any single encoded value.
96 Citations
42 Claims
-
1. A content-based information retrieval architecture comprising:
-
a hashing module that receives an input value and generates a plurality of hashed values from the input value; a first table storing a plurality of encoded values, each hashed value generated from the input value corresponding to a location in the table of an encoded value; a second table storing a plurality of lookup values; and a third table storing a plurality of associated input values in a lookup set, each such input value associated with a lookup value in the second table, where the first table is constructed so that the encoded values, obtained from the hashed values generated from an input value, encode an output value such that the output value cannot be recovered from any single encoded value and such that the output value selects a lookup value in the second table and an associated input value in the third table, thereby identifying the input value as being in the lookup set if the input value is same as the associated input value in the third table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A network router comprising at least one filter to perform a lookup on information in a packet header, the further thither comprising:
-
a hashing module that receives the information in the packet header and generates a plurality of hashed values from the information in the packet header; and a first table storing a plurality of encoded values, each hashed value generated from the information in the packet header corresponding to a location in the first table of an encoded value, the table constructed so that the encoded values obtained from the information in the packet header encode an output value such that the output value cannot be recovered from any single encoded value and such that the output value is used to select forwarding information for the packet header. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A content-based information retrieval architecture comprising:
-
a hashing module that receives an input value and generates a plurality of hashed values from the input value; a table storing a plurality of encoded values, each hashed value generated from the input value corresponding to a location in the table of an encoded value, the table segmented into a plurality of banks, each bank associated with one of the plurality of hash values generated by the hashing module, and the table constructed so that the encoded values obtained from the input value encode an output value such that the output value cannot be recovered from any single encoded value. - View Dependent Claims (34, 35)
-
-
36. A content-based information retrieval architecture comprising:
-
a hashing unit that receives an input value and generates a plurality of hashed values from the input value; a memory unit that stores a table of encoded values, each hashed value generated from the input value corresponding to a location in the table of an encoded value; and a logic unit that recovers an output value from the encoded values, where the encoded values obtained from the input value encode the output value such that the output value cannot be recovered from any single encoded value, and where the hashing unit and the memory unit and the logic unit are pipelined into different stages. - View Dependent Claims (37)
-
-
38. A content-based information retrieval architecture comprising:
-
a filtering module that receives an input value and forwards the input value only if the input value is not a member of a filtered set of input values; a hashing module that receives the forwarded input value and generates a plurality of hashed values from the forwarded input value; and a table storing a plurality of encoded values, each hashed value generated from the forwarded input value corresponding to a location in the table of an encoded value, the table constructed so that the encoded values obtained from the forwarded input value encode an output value such that the output value cannot be recovered from any single encoded value. - View Dependent Claims (39, 40, 41, 42)
-
Specification