Parallel NFA Pattern Matching for Network Attack Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network attack detection techniques using pattern matching are inefficient due to sequential processing of network traffic, which hampers the accuracy and speed of identifying security threats in enterprise computer networks.

Innovation Solution

The use of non-deterministic finite automata (NFA) representations to evaluate symbol streams in parallel, allowing for concurrent evaluation of multiple states and symbols, thereby enhancing the detection of network attacks and security threats by utilizing a hardware-based pattern matching module with node vectors and threads to identify patterns defined by regular expressions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If conventional sequential pattern matching is used to detect network attacks, then the detection accuracy can be maintained, but the processing speed and efficiency are insufficient

Engineering Contradiction:
Improveprocessing speedVSAvoiddetection efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent divides the pattern matching process into multiple independent threads, each responsible for evaluating specific nodes in the NFA representation. This segmentation allows parallel processing of different portions of the symbol stream, significantly improving processing speed while maintaining detection accuracy through coordinated thread execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential single-threaded processing to multi-dimensional parallel processing by utilizing multiple hardware threads simultaneously evaluating different NFA nodes. This dimensional shift from time-sequential to space-parallel execution resolves the contradiction between speed and productivity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If multiple patterns are used to detect different types of attacks, then the accuracy and robustness of attack detection are improved, but the complexity of the detection system increases

Engineering Contradiction:
Improvedetection accuracyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal hardware-based pattern matching module that can simultaneously evaluate multiple regular expression patterns through parallel thread execution. Each thread handles specific patterns while sharing common NFA evaluation infrastructure, achieving multi-pattern detection capability without proportionally increasing system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent merges multiple pattern evaluation functions into a single unified hardware module that processes multiple patterns concurrently. By combining pattern matching, NFA evaluation, and thread coordination into one integrated system, the patent reduces overall system complexity while maintaining high detection accuracy across multiple attack types.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If parallel evaluation of NFA states is implemented, then the processing speed and detection efficiency are improved, but the memory usage and resource consumption increase

Engineering Contradiction:
Improvedetection efficiencyVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements local quality optimization by having each thread maintain only the NFA node state information necessary for its specific evaluation task. Rather than duplicating entire NFA representations across all threads, each thread stores localized state data, reducing overall memory consumption while enabling parallel processing for high detection efficiency.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9021582B2Parallelized pattern matching using non-deterministic finite automata
Publication Date: 2015.04.28 JUNIPER NETWORKS INC
  • US9021582B2 patent drawing
  • US9021582B2 patent drawing
  • US9021582B2 patent drawing

AI summary

This disclosure describes techniques of determining whether a symbol stream includes a pattern defined by a regular expression. As described herein, the regular expression may be represented using a non-deterministic finite automaton (NFA). A plurality of states in the NFA may be evaluated in parallel. These states may be associated with a plurality of symbol positions in a symbol stream. Evaluating a plurality of states and symbols in parallel may allow for faster determinations of whether the symbol stream includes the pattern defined by the regular expression.