Patent ID: 9455996
Filing Date: 2016-09-27
CPC Classification: G06F,H04L

Claim Text:
1. A method for performing multi-string matching in a network system including at least one of a microprocessor, a field programmable gate array, or an application specific integrated circuit, method comprising: a) placing transitions, each transition being from a source state to a destination state and associated with an input character, of an automaton into a hash table data structure stored on a non-transitory storage device to generate a perfect hash table, by: b) receiving by the network system, input character information; c) concatenating by the network system, the input character information with a current state of the automaton to generate concatenated information defining a lookup key; d) hashing by the network system, the concatenated information to generate an index to the perfect hash table; e) reading an entry of the perfect hash table using the index; f) comparing the lookup key with information in a first part of the entry of the perfect hash table read; and g) responsive to a determination that the lookup key matches the information in the first part of the entry of the perfect hash table, using information in a second part of the entry to (1) update the current state of the automaton, and (2) find any matched rules.