Patent ID: 8462786

Claim:
A method for constructing a packet classifier for a computer network system, comprising: receiving a set of rules for packet classification, where a rule sets forth values for fields in a data packet and a decision for data packets having matching field values; representing the set of rules as a directed graph; partitioning the graph into at least a top partition and a bottom partition, the top partition having a single sub-graph with a vertex of the graph and the bottom partition having a plurality of sub-graphs; generating a lookup table from the sub-graph in the top partition; generating a lookup table for each sub-graph in the bottom partition; assigning each table associated with the bottom partition a unique identifier; linking the lookup table from the top partition with the lookup tables in the bottom partition using the assigned table identifiers; and instantiating the lookup table from the top partition on a first content-addressable memory device and the lookup tables from the bottom partition on a second content-addressable memory device.