1. A search engine for comparing a data set against at least one database, comprising: a plurality of content addressable memory (CAM) modules suitable for pre-storing the databases, wherein each said CAM module has a module input suitable for accepting a datum, a module output suitable for providing a result, and a cascade bus suitable for interconnection with other said CAM modules; a data dispatch unit to receive the data set into the search engine at a data input and process the data set into data and communicate said data to said module inputs of said CAM modules; a result dispatch unit to receive said results from said module outputs of said CAM modules and process said results into said comparison results and communicate said comparison results out of the search engine at a result output; and an instruction unit to receive a search instruction into the search engine at an instruction input and configure at least one of said data dispatch unit and said result dispatch unit in response to said search instruction.