Legal claims defining the scope of protection, as filed with the USPTO.
1. A network device for processing data on a data network, the network device comprising: a plurality of ports configured to receive data packets and to send out processed data packets; a modification engine, in communication with the plurality of ports, configured to parse, evaluate and modify the data packets to produce the processed data packets; a series of search engine pipeline stages, in communication with the modification engine, configured to perform lookup searches through a plurality of search engines; and the plurality of search engines; wherein the series of search engine pipeline stages is configured to perform search requests in sequential processing steps and each stage of the series of search engine pipeline stages is configured to submit a particular search request to the plurality of search engines and receive search results particular to a particular data packet of said processed data packets from the plurality of search engines at a respective processing operation, and wherein each of said plurality of search engines is configured to provide the search results to one or more of the plurality of search engine pipeline stages.
2. The network device according to claim 1 , wherein each stage of the series of search engine pipeline stages is configured to perform its respective process during a predetermined number of clock cycles of the network device.
3. The network device according to claim 1 , wherein the series of search engine pipeline stages are in communication with the plurality of search engines through a time division multiplex request/result ring.
4. The network device according to claim 1 , wherein the plurality of search engines are configured to perform searches on external tables stored on memory external to the network device.
5. The network device according to claim 1 , wherein the plurality of search engines are configured to receive concurrent search requests from multiple stages of the series of search engine pipeline stages.
6. The network device according to claim 1 , wherein the plurality of search engines comprise at least one of an algorithm-based search engine and a content-addressable memory based search engine.
7. The network device according to claim 1 , wherein each search engine pipeline stage is configured to determine a type of search to be performed and search engines to be employed based on the particular search request.
8. A method for processing data in a network device, the method comprising the operations of: receiving data packets at a plurality of ports of a network device; processing the received data packets to thereby parse, evaluate and modify the received data packets to produce processed data packets; performing lookup searches of tables through a series of search engine pipeline stages; and forwarding the processed data packets to an egress port of the plurality of ports; wherein each stage of the series of search engine pipeline stages submits a particular search request to a plurality of search engines and receives search results particular to a particular data packet of said processed data packets from the plurality of search engines at a respective processing operation; and wherein each of said plurality of search engines provides the search results to one or more of the plurality of search engine pipeline stages.
9. The method according to claim 8 , wherein the operation of performing lookup searches is performed such that each stage performs its respective process during a predetermined number of clock cycles of the network device.
10. The method according to claim 8 , wherein the step of performing lookup searches of tables comprises sending and receiving search requests and search results through a time division multiplex request/result ring in communication with the plurality of search engines.
11. The method according to claim 8 , wherein the operation of performing lookup searches of tables comprises performing searches on external tables stored on memory external to the network device.
12. The method according to claim 8 , wherein the operation of performing lookup searches of tables comprises forwarding concurrent search requests from multiple stages of the series of search engine pipeline stages.
13. The method according to claim 8 , wherein the operation of performing lookup searches of tables comprises performing searches using search engines comprising at least one of an algorithm-based search engine and a content-addressable memory based search engine.
14. The method according to claim 8 , wherein the operation of performing lookup searches of tables comprises determining a type of search to be performed and search engines to be employed based on the particular search request.
15. A network device for processing data, comprising: port means for receiving data packets and forwarding processed data packets; processing means for processing the received data packets to thereby parse, evaluate and modify the received data packets to produce processed data packets; and lookup search means for performing lookup searches of tables, through a series of search engine pipeline stages; and wherein the lookup search means is configured to allow each stage of the series of search engine pipeline stages to submit a particular search request to at least one of a plurality of search engines and to receive search results particular to a particular data packet of said processed data packets from the plurality of search engines, and wherein each of said plurality of search engines is configured to provide the search results to one or more of the plurality of search engine pipeline stages.
16. The network device according to claim 15 , wherein the lookup search means is configured to ensure that each stage of the series of pipeline stages performs its respective process during a predetermined number of clock cycles of the network device.
17. The network device according to claim 15 , wherein the lookup search means is configured to perform searches on external tables stored on memory external to the network device.
18. The network device according to claim 15 , wherein the plurality of search engines are configured to receive concurrent search requests from the lookup search means.
19. The network device according to claim 15 , wherein the lookup search means is configured to perform searches using search engines comprising at least one of an algorithm-based search engine and a content-addressable memory based search engine.
20. The network device according to claim 15 , wherein the lookup search means is configured to determine a type of search to be performed and search engines to be employed based on the particular search request.
Unknown
October 20, 2009
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.