ACCELERATED PATTERN MATCHING USING PATTERN FUNCTIONS
First Claim
1. A computer-implemented method, comprising:
- generating one or more first pattern results, the first pattern results indicating that one or more first patterns of a first set of patterns were determined to exist in a data item based on regular expression matching the one or more first patterns against the data item;
generating one or more second pattern results, the one or more second pattern results indicating that one or more second patterns of a second set of patterns were determined to exist in the data item based on processing the data item by applying one or more pattern functions to the data item;
merging the first pattern results and the second pattern results to create third pattern results;
performing an action relative to the data item based at least in part on the third pattern results.
4 Assignments
0 Petitions
Accused Products
Abstract
System, methods, and apparatuses enable a network security system to more efficiently perform pattern matching against data items. For example, the disclosed approaches may be used to improve the way in which a deep packet inspection (DPI) microservice performs pattern matching against data items (e.g., network traffic, files, email messages, etc.) in order to detect various types of network security threats (e.g., network intrusion attempts, viruses, spam, and other potential network security issues). A DPI microservice generally refers to an executable component of a network security system that monitors and performs actions relative to input data items for purposes related to computer network security.
-
Citations
30 Claims
-
1. A computer-implemented method, comprising:
-
generating one or more first pattern results, the first pattern results indicating that one or more first patterns of a first set of patterns were determined to exist in a data item based on regular expression matching the one or more first patterns against the data item; generating one or more second pattern results, the one or more second pattern results indicating that one or more second patterns of a second set of patterns were determined to exist in the data item based on processing the data item by applying one or more pattern functions to the data item; merging the first pattern results and the second pattern results to create third pattern results; performing an action relative to the data item based at least in part on the third pattern results. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. One or more non-transitory computer-readable storage media storing instructions which, when executed by one or more hardware processors, cause performance of:
-
generating one or more first pattern results, the first pattern results indicating that one or more first patterns of a first set of patterns were determined to exist in a data item based on regular expression matching the one or more first patterns against the data item; generating one or more second pattern results, the one or more second pattern results indicating that one or more second patterns of a second set of patterns were determined to exist in the data item based on processing the data item by applying one or more pattern functions to the data item; merging the first pattern results and the second pattern results to create third pattern results; performing an action relative to the data item based at least in part on the third pattern results - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. An apparatus, comprising:
-
one or more hardware processors; memory coupled to the one or more hardware processors, the memory storing instructions which, when executed by the one or more hardware processors, causes the apparatus to; generate one or more first pattern results, the first pattern results indicating that one or more first patterns of a first set of patterns were determined to exist in a data item based on regular expression matching the one or more first patterns against the data item; generate one or more second pattern results, the one or more second pattern results indicating that one or more second patterns of a second set of patterns were determined to exist in the data item based on processing the data item by applying one or more pattern functions to the data item; merge the first pattern results and the second pattern results to create third pattern results; perform an action relative to the data item based at least in part on the third pattern results. - View Dependent Claims (26, 27, 28, 29, 30)
-
Specification