Method and apparatus for high-speed parsing of network messages
First Claim
1. A method for searching network messages for pre-defined regular expressions, the method comprising the steps of:
- storing a plurality of pre-defined regular expressions in entries of a content-addressable memory (CAM);
inputting a network message or selected portion thereof to the CAM for comparison with all of the regular expressions stored therein, the comparison with all CAM entries being done at the same time;
returning an output from the CAM; and
identifying, in response to the output, an action to be applied to the given network message or portion thereof that corresponds to a CAM entry matching the inputted network message or selected portion thereof.
0 Assignments
0 Petitions
Accused Products
Abstract
A method for searching network messages for pre-defined regular expressions is disclosed. A plurality of pre-defined regular expressions are stored in a content-addressable memory (CAM). A network message or selected portion thereof is inputted to the CAM for comparison with all of the regular expressions stored therein, the comparison with all CAM entries being done at the same time. An output is returned from the CAM. In response to the output from the CAM, identifying an action to be applied to the given network message or portion thereof that corresponds to a CAM entry matching the inputted network message or selected portion thereof.
-
Citations
38 Claims
-
1. A method for searching network messages for pre-defined regular expressions, the method comprising the steps of:
-
storing a plurality of pre-defined regular expressions in entries of a content-addressable memory (CAM); inputting a network message or selected portion thereof to the CAM for comparison with all of the regular expressions stored therein, the comparison with all CAM entries being done at the same time; returning an output from the CAM; and identifying, in response to the output, an action to be applied to the given network message or portion thereof that corresponds to a CAM entry matching the inputted network message or selected portion thereof. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A pattern matching engine apparatus for use in searching network messages for pre-defined regular expressions, comprising:
-
a content-addressable memory (CAM) having a plurality of entries containing the pre-defined regular expressions; a decoder circuit configured to control an input to the CAM, the input including a given network message or selected portion thereof for comparison with the regular expressions contained within the CAM; and an output from the CAM, that identifies an action to be applied to the given network message or portion thereof, and the CAM configured such that each network message or portion thereof input to the CAM is compared against all CAM entries at the same time, allowing high-speed pattern matching of network messages. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A pattern matching engine apparatus for use in searching network messages for pre-defined regular expressions, comprising:
-
means for storing a plurality of pre-defined regular expressions in entries of a content-addressable memory (CAM); means for inputting a network message or selected portion thereof to the CAM for comparison with all of the regular expressions stored therein, the comparison with all CAM entries being done at the same time; means for returning an output from the CAM; and means for identifying, in response to the output, an action to be applied to the given network message or portion thereof that corresponds to a CAM entry matching the inputted network message or selected portion thereof. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A computer readable media, comprising:
-
said computer readable media containing instructions for execution on a processor for the practice of a method for searching network messages for pre-defined regular expressions, the method having the steps of, storing a plurality of pre-defined regular expressions in entries of a content-addressable memory (CAM); inputting a network message or selected portion thereof to the CAM for comparison with all of the regular expressions stored therein, the comparison with all CAM entries being done at the same time; returning an output from the CAM; and identifying, in response to the output, an action to be applied to the given network message or portion thereof that corresponds to a CAM entry matching the inputted network message or selected portion thereof.
-
Specification