1. A method of processing a packet comprising: receiving a lookup request including a packet header of a packet and an associated group identifier (GID); generating at least one key based on data of the packet header; comparing the GID against a global definition table to determine at least one table identifier (TID); determining, based on the TID, a subset of processing clusters that are capable of operating rule matching for the packet; selecting one of the processing clusters of the subset based on availability; and forwarding at least one key request to the selected processing cluster, the key request including the at least one key and the at least one TID to initiate rule matching using the key.