A network device for processing data on a data network including a
plurality of ports, configured to receive data packets and to send out
processed data packets, a modification engine configured to parse,
evaluate and modify the data packets to produce the processed data
packets and a series of search engine pipeline stages configured to
perform lookup searches through a plurality of search engines. The series
of search engine pipeline stages perform search requests in sequential
processing steps and any stage of the series of search engine pipeline
stages may submit a particular search request to the plurality of search
engines and receive search results particular to a particular data packet
at a respective processing step.