10. A non-transitory computer readable medium having instructions stored thereon for configuring a packet filter to screen data packets that, when executed by a rule manager processor, direct the rule manager processor to: receive a set of packet filtering rules, wherein each rule includes one or more terms connected by a logical operator; generate a set of rule types responsive to the received set of rules, wherein each rule type corresponds to a set of data packet fields such that each of the rules in the set of rules belongs to at least one rule type of the set of rule types; select for each rule a respective rule type of the set of rules which best matches the rule, and then based on the matching rule type, determine which terms of the selected rule are to be handled by lookup stages and which terms of the rule are to be handled by further tests; and update entries in a data structure stored in memory in accordance with the lookup stages and the further tests of the selected rules, wherein the data structure comprises a hash table that is accessible by a packet filter that generates one or more first lookup keys to screen a received data packet, wherein at least one entry in the array of pointers is a four byte pointer field that includes a pointer to a memory location of a linked list, wherein linked list includes one or more records which each include (a) a corresponding hash key for verification that a received packet matches the record, and (b) further handling instructions, wherein at least some of the records in the data structure indicate a second one or more lookup keys to be used in one or more respective further accesses to the data structure by the packet filter.
10. A non-transitory computer readable medium having instructions stored thereon for configuring a packet filter to screen data packets that, when executed by a rule manager processor, direct the rule manager processor to: receive a set of packet filtering rules, wherein each rule includes one or more terms connected by a logical operator; generate a set of rule types responsive to the received set of rules, wherein each rule type corresponds to a set of data packet fields such that each of the rules in the set of rules belongs to at least one rule type of the set of rule types; select for each rule a respective rule type of the set of rules which best matches the rule, and then based on the matching rule type, determine which terms of the selected rule are to be handled by lookup stages and which terms of the rule are to be handled by further tests; and update entries in a data structure stored in memory in accordance with the lookup stages and the further tests of the selected rules, wherein the data structure comprises a hash table that is accessible by a packet filter that generates one or more first lookup keys to screen a received data packet, wherein at least one entry in the array of pointers is a four byte pointer field that includes a pointer to a memory location of a linked list, wherein linked list includes one or more records which each include (a) a corresponding hash key for verification that a received packet matches the record, and (b) further handling instructions, wherein at least some of the records in the data structure indicate a second one or more lookup keys to be used in one or more respective further accesses to the data structure by the packet filter. 14. The non-transitory computer readable medium of claim 10 , wherein the data structure further comprises a TRIE.