Runtime adaptable search processor
First Claim
1. A runtime adaptable search processor operating on information content and having a plurality of hardware configurations, comprising:
- a. a control processor and scheduler to control and schedule said information content for processing;
b. an adaptation controller to configure said runtime adaptable search processor configurations at runtime;
c. at least one configuration memory to store at least said plurality of hardware configurations;
d. at least one runtime adaptable NFA search engine for performing search on said information content using at least one NFA;
e. at least one runtime adaptable DFA search engine for performing search on said information content using at least one DFA; and
f. a combination of any of the foregoing.
5 Assignments
0 Petitions
Accused Products
Abstract
A runtime adaptable search processor is disclosed. The search processor provides high speed content search capability to meet the performance need of network line rates growing to 1 Gbps, 10 Gbps and higher. he search processor provides a unique combination of NFA and DFA based search engines that can process incoming data in parallel to perform the search against the specific rules programmed in the search engines. The processor architecture also provides capabilities to transport and process Internet Protocol (IP) packets from Layer 2 through transport protocol layer and may also provide packet inspection through Layer 7. Further, a runtime adaptable processor is coupled to the protocol processing hardware and may be dynamically adapted to perform hardware tasks as per the needs of the network traffic being sent or received and/or the policies programmed or services or applications being supported. A set of engines may perform pass-through packet classification, policy processing and/or security processing enabling packet streaming through the architecture at nearly the full line rate. A high performance content search and rules processing security processor is disclosed which may be used for application layer and network layer security. scheduler schedules packets to packet processors for processing. An internal memory or local session database cache stores a session information database for a certain number of active sessions. The session information that is not in the internal memory is stored and retrieved to/from an additional memory. An application running on an initiator or target can in certain instantiations register a region of memory, which is made available to its peer(s) for access directly without substantial host intervention through RDMA data transfer. A security system is also disclosed that enables a new way of implementing security capabilities inside enterprise networks in a distributed manner using a protocol processing hardware with appropriate security features.
648 Citations
20 Claims
-
1. A runtime adaptable search processor operating on information content and having a plurality of hardware configurations, comprising:
-
a. a control processor and scheduler to control and schedule said information content for processing;
b. an adaptation controller to configure said runtime adaptable search processor configurations at runtime;
c. at least one configuration memory to store at least said plurality of hardware configurations;
d. at least one runtime adaptable NFA search engine for performing search on said information content using at least one NFA;
e. at least one runtime adaptable DFA search engine for performing search on said information content using at least one DFA; and
f. a combination of any of the foregoing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 18, 20)
-
-
12. A runtime adaptable finite state automaton architecture having a plurality of states, comprising:
-
a. at least one interconnect between any two of said plurality of states;
b. a state dependent vector (SDV) for each of said plurality of states that is used to enable or disable of said at least one interconnect between said two states and other states of said plurality of states;
c. a current state vector (CSV) for each of said plurality of states representing the current state of some of said plurality of states which the state of said plurality of states depends on for its next state evaluation;
d. at least one symbol associated with each of said plurality of state to control the transition into or out of said each of said plurality of states;
e. at least one symbol detection logic for receiving symbols, detecting the value of said symbols and generating a received symbol vector (RSV);
f. at least one application state memory to hold an application context that uses said finite state automaton;
g. a state transition logic for each of said plurality of states that uses at least said state dependent vector, said current state vector, and said received symbol vector to generate the next state for each of said plurality of states; and
h. a combination of any of the foregoing. - View Dependent Claims (13)
-
- 14. A system for operating on network packets or on local content, said system capable of being coupled to a network, said system comprising a runtime adaptable search processor to process content embedded within said network packets or within said local content.
Specification