Programmable Intelligent Search Memory for High-Speed Content Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies face performance limitations in processing regular expressions at high network line rates, particularly in content search applications, due to the large number of states required for finite state automata (FSAs) and the inefficiencies in evaluating regular expressions on modern microprocessors, leading to suboptimal performance below 100 Mbps for applications needing 1 Gbps to 10 Gbps rates.
Innovation Solution
The Programmable Intelligent Search Memory (PRISM) technology supports a large number of regular expressions on a single chip, enabling the creation of extensible FSAs, efficient interval representation of regular expressions, and simultaneous search of patterns, including signature patterns, to achieve high-speed content search from 1 Gbps to over 100 Gbps using a compiler that converts regular expressions into efficient data structures for PRISM-based search engines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If regular expressions are evaluated on modern microprocessors, then implementation flexibility is maintained, but processing speed deteriorates to below 100 Mbps
Solution Approach 1:
The patent segments the large finite state automaton into multiple smaller FSAs, each handling a subset of regular expression patterns. This segmentation reduces the state space of individual FSAs, enabling faster processing on specialized hardware while maintaining the ability to match complex patterns through coordinated operation of multiple segmented FSAs.
Solution Approach 2:
The patent introduces a specialized content search memory device as an intermediary between the microprocessor and the data stream. This intermediary hardware accelerates the pattern matching process by implementing FSAs in dedicated logic, offloading the computationally intensive regular expression evaluation from the general-purpose microprocessor while maintaining programmatic control through loading different FSA configurations.
2Adaptability or versatility
If the number of FSA states is increased to support more regular expressions, then pattern matching capability is improved, but processing speed deteriorates
Solution Approach 1:
The patent divides the comprehensive pattern matching task across multiple smaller FSA instances, each with a limited state space. This allows the system to support a large total number of regular expressions by combining multiple specialized FSAs, while each individual FSA maintains fast processing speed due to its reduced state complexity.
Solution Approach 2:
The patent transitions from a single-dimension approach (one large FSA) to a multi-dimensional architecture where multiple smaller FSAs operate in parallel or sequence. This dimensional change allows the system to achieve both high versatility (supporting many patterns) and high speed (through parallel evaluation of smaller state machines) simultaneously.
3Productivity
If traditional processors are used for content search, then implementation simplicity is maintained, but performance deteriorates to suboptimal speeds
Solution Approach 1:
The patent introduces a specialized content search memory device as an intermediary between the microprocessor and the data stream. This intermediary hardware accelerates the pattern matching process by implementing FSAs in dedicated logic, offloading the computationally intensive regular expression evaluation from the general-purpose microprocessor while maintaining programmatic control through loading different FSA configurations.
Solution Approach 2:
The patent replaces the software-based regular expression evaluation mechanism (mechanical system of instruction execution) with a hardware-based FSA implementation in content search memory. This substitution achieves significant performance acceleration by utilizing dedicated logic circuits instead of sequential processor instructions, while the programmable nature of the FSA loading maintains flexibility.
Data Source
AI summary
Memory architecture provides capabilities for high performance content search. The architecture creates an innovative memory that can be programmed with content search rules which are used by the memory to evaluate presented content for matching with the programmed rules. When the content being searched matches any of the rules programmed in the Programmable Intelligent Search Memory (PRISM) action(s) associated with the matched rule(s) are taken. Content search rules comprise of regular expressions which are converted to finite state automata (FSA) and then programmed in PRISM for evaluating content with the search rules. PRISM architecture comprises of a plurality of programmable PRISM Memory clusters (PMC) which comprise of a plurality of programmable PRISM Search Engines (PSE). Groups of PMCs can be programmed with the same rules and used in parallel to apply these rules to multiple data streams simultaneously to achieve increased performance. PMC groups provide 10 Gbps performance with 10 PMC groups enabling 100 Gbps content search and security performance.


