Search apparatus and method
AssigneeHuawei Technologies Co., Ltd.
InventorsJun Gong, Shuying Liu, Jing Hu
Life of this patent
Estimating the term…
Abstract
This application provides a search apparatus, including a global dispatcher, a global arbiter, and N search engines. The N search engines can access a first search table. The global dispatcher is configured to: determine that a first search keyword is corresponding to the first search table and dispatch the first search keyword to the N search engines. Each search engine is configured to: search, according to a first search algorithm, one subtable to determine whether an entry that matches the first search keyword exists; and output a search result to the global arbiter. The global arbiter is configured to arbitrate the search result output by each search engine, to obtain a search result corresponding to the first search table.
Claims41
An apparatus, comprising:
- a chip, configured to implement a first search engine and a second search engine;
- wherein the first search engine is configured to:
- receive a first search request associated with packet forwarding;
- in response to receiving the first search request, search a first subtable using a first algorithm, wherein the first subtable is a portion of a first search table, wherein the first search table is associated with the first algorithm, and wherein the first subtable is searchable by the first search engine and the first subtable is not searchable by the second search engine;
- and
- output a result of searching the first subtable;
- and
- wherein the second search engine is configured to:
- receive a second search request associated with packet forwarding;
- in response to receiving the second search request, search a second subtable using a second algorithm, wherein the second subtable is a portion of a second search table, wherein the second search table is associated with the second algorithm, wherein the second subtable is searchable by the second search engine and the second subtable is not searchable by the first search engine, and wherein the first algorithm is different from the second algorithm;
- and
- output a result of searching the second subtable;
- and
- wherein the chip is an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
A method, comprising:
- receiving, by a first search engine implemented by a chip, a first search request associated with packet forwarding;
- and
- in response to receiving the first search request, searching, by the first search engine, a first subtable using a first algorithm, wherein the first subtable is a portion of a first search table, wherein the first search table is associated with the first algorithm, and wherein the first subtable is searchable by the first search engine and the first subtable is not searchable by a second search engine implemented by the chip;
- outputting, by the first search engine, a result of searching the first subtable;
- receiving, by the second search engine, a second search request associated with packet forwarding;
- in response to receiving the second search request, searching, by the second search engine, a second subtable using a second algorithm, wherein the second subtable is a portion of a second search table, wherein the second search table is associated with the second algorithm, wherein the second subtable is searchable by the second search engine and the second subtable is not searchable by the first search engine, and wherein the first algorithm is different from the second algorithm;
- and
- outputting, by the second search engine, a result of searching the second subtable.
A chip, comprising:
- a first search engine;
- and
- a second search engine;
- wherein the first search engine is configured to:
- receive a first search request associated with packet forwarding;
- in response to receiving the first search request, search a first subtable using a first algorithm, wherein the first subtable is a portion of a first search table, wherein the first search table is associated with the first algorithm, and wherein the first subtable is searchable by the first search engine and the first subtable is not searchable by the second search engine;
- and
- output a result of searching the first subtable;
- and
- wherein the second search engine is configured to:
- receive a second search request associated with packet forwarding;
- in response to receiving the second search request, search a second subtable using a second algorithm, wherein the second subtable is a portion of a second search table, wherein the second search table is associated with the second algorithm, wherein the second subtable is searchable by the second search engine and the second subtable is not searchable by the first search engine, and wherein the first algorithm is different from the second algorithm;
- and
- wherein the chip is an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA);
- and
- output a result of searching the second subtable.
Dependencies are inferred from the claim text.