JP4555088B2 - データ内のパターンの高速文脈サーチ及び特徴付けを実行するためのプログラム可能な規則処理装置 - Google Patents
データ内のパターンの高速文脈サーチ及び特徴付けを実行するためのプログラム可能な規則処理装置 Download PDFInfo
- Publication number
- JP4555088B2 JP4555088B2 JP2004569774A JP2004569774A JP4555088B2 JP 4555088 B2 JP4555088 B2 JP 4555088B2 JP 2004569774 A JP2004569774 A JP 2004569774A JP 2004569774 A JP2004569774 A JP 2004569774A JP 4555088 B2 JP4555088 B2 JP 4555088B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- pattern
- match
- array
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Logic Circuits (AREA)
- Television Systems (AREA)
- Circuits Of Receivers In General (AREA)
- Image Analysis (AREA)
Description
規則処理アーキテクチャを、コンテンツ・ペイロードに対する規則の並列かつ再帰的順序付けを考慮した、コンテンツの解析用規則プロセッサでの使用に関して説明する。このアーキテクチャは、複数の高速コンテンツ・ベースの状態遷移を行う能力に結びつけられた並列パターン照合能力を提供する。
Claims (18)
- 文脈サーチを実行するための規則プロセッサであって、
コンテンツを示す複数の入力ペイロードを格納する複数のサーチ・レジスタと、
前記複数のサーチ・レジスタに連結され、指定された1つ又は複数のパターンを、前記サーチ・レジスタのコンテンツを検索するための検索パターンとして提供して前記コンテンツのパターンと照合させ、双方のパターンが一致する場合は一致ラインに一致信号を出力するサーチ命令の実行により前記サーチ・レジスタの前記コンテンツに対して1つ又は複数の文脈サーチを実行するサーチ実行エンジンと
を含み、
前記サーチ実行エンジンが、
前記複数のサーチ・レジスタに連結されており、前記複数のサーチ・レジスタのコンテンツが複製され、サーチ対象として記憶されるサーチ・アレイと、
前記サーチ・アレイに連結されたソータと
を含み、
前記サーチ・レジスタはM行×1バイトのデータを保持し、前記サーチ・アレイはM行×所定バイト数のデータの保持が可能であって前記データのサーチ結果の出力が可能なM個の前記一致ラインを有し、
前記ソータは、前記サーチ・レジスタのサーチ範囲の開始点と終了点により指定された開始終了範囲、および前記サーチ・アレイからの前記一致ラインの信号に基づいて前記サーチ・アレイのサーチ結果を処理することを特徴とする規則プロセッサ。 - 各サーチ命令が、前記複数のサーチ・レジスタと前記サーチ実行エンジンとに提供された請求項1に記載の規則プロセッサ。
- 前記1つ又は複数のサーチ命令の少なくとも1つが、前記複数のサーチ・レジスタ内の前記コンテンツに対してサーチされるべきパターンと、前記コンテンツに対してマスクされるべきパターンを示す0又はそれ以上のサーチ命令のためのパラメータとを指定する請求項1に記載の規則プロセッサ。
- 1つのパラメータが、前記パターンの部分集合を前記サーチ・レジスタ内の前記コンテンツに対してサーチできるようにするために、マスクされるべき前記パターンの部分を指定する請求項3に記載の規則プロセッサ。
- 前記マスクされるべきパターンの前記部分が、前記パターン内の特定バイトをマスク・オフするようにマスク・ベクトルによって指定される請求項4に記載の規則プロセッサ。
- 前記サーチ実行エンジンが、前記サーチ・レジスタ内の前記コンテンツのサーチに成功したことを示す少なくとも1つの結果出力を生成する請求項1に記載の規則プロセッサ。
- 前記少なくとも1つの結果出力が、前記命令の少なくとも1つで指定されたパターンと、前記複数のサーチ・レジスタ内の前記コンテンツとの間で一致が生じた、前記複数のサーチ・レジスタ内の場所の指示を含む請求項6に記載の規則プロセッサ。
- 少なくとも1つのサーチ命令が、前記サーチを制御するために使用するパラメータを示す前記サーチの開始終了範囲又は前記サーチを制御するために前記パラメータを記憶するメモリ内へのポインタを指定する、フィールドを含む請求項1に記載の規則プロセッサ。
- 前記サーチ・レジスタ内のデータに適用されるべき1つ又は複数のサーチ命令を記憶するためのメモリをさらに含む請求項1に記載の規則プロセッサ。
- 前記サーチ命令が、前記サーチ・レジスタ内の前記コンテンツで任意のパターンに対するサーチを前記サーチ実行エンジンに実行させる請求項1に記載の規則プロセッサ。
- 1つ又は複数のサーチ命令を前記サーチ実行エンジンに実行させるための命令シーケンサをさらに含む請求項1に記載の規則プロセッサ。
- 前記M個の一致ラインのそれぞれが、前記サーチ・アレイに記憶された一群のデータに関連付けられており、前記1つ又は複数のサーチ命令の1つによって指定された前記検索パターンが、前記サーチ・アレイに記憶された、それに関連付けられた一群のデータと一致するか否かを示す請求項1に記載の規則プロセッサ。
- 前記ソータは、前記一致ラインの1つ又は複数が一致するか否かを示す第1の出力と、前記サーチ実行エンジンが、1つ又は複数のサーチ命令によって指定された前記検索パターンに呼応して、前記1つ又は複数の文脈サーチを実行した結果を示す第2の出力とを有する請求項1に記載の規則プロセッサ。
- 前記ソータが、
前記パターンと、前記サーチ・アレイの最上位側と末尾側のうち一方の側に関して前記サーチ・アレイに記憶されたデータとの間の一致の第1の発生に対応した前記M個の一致ラインに対応する、前記サーチ・アレイ内の場所を示すための、優先順位エンコーダをさらに含む請求項1に記載の規則プロセッサ。 - 前記ソータが、
前記パターンと、前記サーチ・アレイの最上位側に関して前記サーチ・アレイに記憶されたデータとの間の一致の第1の発生に対応した前記M個の一致ラインに対応する、前記サーチ・アレイ内の場所を示すための昇順優先順位エンコーダと、
前記サーチ・アレイの末尾側に関して前記サーチ・アレイに記憶されたデータと前記パターンとの間の一致の第1の発生に対応した前記M個の一致ラインに対応する、前記サーチ・アレイ内の場所を示すための降順優先順位エンコーダと、
前記M個の一致ラインの範囲における一致数を特定するためのカウンタと、
前記昇順優先順位エンコーダ、前記降順優先順位エンコーダ、前記カウンタに連結されており、第1の出力を有し、前記昇順優先順位エンコーダ、前記降順優先順位エンコーダ、前記カウンタのいずれか1つの出力を前記ソータの前記第1の出力として選択するよう動作可能なセレクタと
をさらに含む請求項1に記載の規則プロセッサ。 - 一組のサーチ・レジスタにコンテンツをロードするステップと、
前記サーチ・レジスタでサーチされるべきサーチ命令によって示されたパターンを提示するステップと、
前記パターンと前記サーチ・レジスタに記憶された前記コンテンツとの間でパターン照合を実行するステップと、
前記パターン照合を実行し、双方のパターンが一致する場合は一致ラインに一致信号を出力するステップと
を含み、
コードを一連のサーチ命令に変換するステップと、
パターン照合が前記複数のサーチ命令のそれぞれに対して実行されるように、前記一連のサーチ命令を連続した周期で実行するステップと
をさらに含み、
前記サーチ・レジスタはM行×1バイトのデータを保持し、複数の前記サーチ・レジスタのコンテンツが複製され、サーチ対象として記憶されるサーチ・アレイはM行×所定バイト数のデータの保持が可能であって前記データのサーチ結果の出力が可能なM個の前記一致ラインを有し、
前記サーチ・レジスタのサーチ範囲の開始点と終了点により指定された開始終了範囲、および前記サーチ・アレイからの前記一致ラインの信号に基づいて前記サーチ・アレイのサーチ結果を処理するステップを含むことを特徴とする処理。 - 前記サーチ・アレイの数行に関連付けられた複数の一致ラインを生成するステップであって、前記複数の一致ラインの一致ラインが、前記パターンと前記一致ラインに関連付けられた1行との間で一致が生じたか否かを示すステップと、
前記サーチ命令が指定する情報に応じて、少なくとも一組の前記一致ラインに対して前記1つ又は複数のオペレーションを実行するステップと、
前記一致ラインの1つ又は複数が、前記パターンと前記1つ又は複数のオペレーションを実行した結果と一致するか否かに関する指示を出力するステップと
をさらに含む請求項16に記載の処理。 - 1行に対するデータが、シフトされた形式で隣接行に記憶されるように、データを記憶し、複製し、インタリーブするために、前記サーチ・レジスタをローディングするステップが実行される請求項16に記載の処理。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40683402P | 2002-08-28 | 2002-08-28 | |
US10/650,363 US7451143B2 (en) | 2002-08-28 | 2003-08-27 | Programmable rule processing apparatus for conducting high speed contextual searches and characterizations of patterns in data |
PCT/US2003/027518 WO2004021170A2 (en) | 2002-08-28 | 2003-08-28 | Programmable rule processing apparatus for conducting high speed contextual searches & characterzations of patterns in data |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005537592A JP2005537592A (ja) | 2005-12-08 |
JP2005537592A5 JP2005537592A5 (ja) | 2006-10-19 |
JP4555088B2 true JP4555088B2 (ja) | 2010-09-29 |
Family
ID=31997681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004569774A Expired - Fee Related JP4555088B2 (ja) | 2002-08-28 | 2003-08-28 | データ内のパターンの高速文脈サーチ及び特徴付けを実行するためのプログラム可能な規則処理装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7451143B2 (ja) |
EP (1) | EP1535197B1 (ja) |
JP (1) | JP4555088B2 (ja) |
KR (1) | KR101012623B1 (ja) |
AT (1) | ATE384299T1 (ja) |
AU (1) | AU2003272259A1 (ja) |
DE (1) | DE60318722T2 (ja) |
WO (1) | WO2004021170A2 (ja) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
US7409685B2 (en) | 2002-04-12 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Initialization and update of software and/or firmware in electronic devices |
US6986110B1 (en) * | 2003-01-02 | 2006-01-10 | Hewlett-Packard Development Company, L.P. | Automated method and system for backtracing of instruction parameters from specified instruction in test cases |
US7548848B1 (en) | 2003-01-08 | 2009-06-16 | Xambala, Inc. | Method and apparatus for semantic processing engine |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
US7643826B2 (en) * | 2004-01-07 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Mobile care engine system |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US20060198174A1 (en) * | 2005-02-21 | 2006-09-07 | Yuji Sato | Contents Providing System, Output Control Device, and Output Control Program |
US7710988B1 (en) | 2005-03-11 | 2010-05-04 | Xambala Corporation | Method and system for non-deterministic finite automaton filtering |
US20060215291A1 (en) * | 2005-03-24 | 2006-09-28 | Jaquette Glen A | Data string searching |
JP4581962B2 (ja) * | 2005-10-27 | 2010-11-17 | 株式会社日立製作所 | 情報検索システムとインデクス管理方法およびプログラム |
WO2007146710A2 (en) | 2006-06-08 | 2007-12-21 | Hewlett-Packard Development Company, L.P. | Device management in a network |
US8752044B2 (en) | 2006-07-27 | 2014-06-10 | Qualcomm Incorporated | User experience and dependency management in a mobile device |
TW200821913A (en) * | 2006-11-15 | 2008-05-16 | Univ Nat Chiao Tung | String matching system by using bloom filter to achieve sub-linear computation time and method thereof |
US7743231B2 (en) * | 2007-02-27 | 2010-06-22 | International Business Machines Corporation | Fast sparse list walker |
US7861157B1 (en) * | 2007-03-26 | 2010-12-28 | Lsi Corporation | System and method of processing streaming XML data |
US20090254694A1 (en) * | 2008-04-02 | 2009-10-08 | Zikbit Ltd. | Memory device with integrated parallel processing |
US9305238B2 (en) | 2008-08-29 | 2016-04-05 | Oracle International Corporation | Framework for supporting regular expression-based pattern matching in data streams |
KR101276796B1 (ko) * | 2008-12-03 | 2013-07-30 | 한국전자통신연구원 | 패턴 매칭 장치 및 방법 |
US8145859B2 (en) * | 2009-03-02 | 2012-03-27 | Oracle International Corporation | Method and system for spilling from a queue to a persistent store |
US8321450B2 (en) | 2009-07-21 | 2012-11-27 | Oracle International Corporation | Standardized database connectivity support for an event processing server in an embedded context |
US8387076B2 (en) | 2009-07-21 | 2013-02-26 | Oracle International Corporation | Standardized database connectivity support for an event processing server |
US8527458B2 (en) | 2009-08-03 | 2013-09-03 | Oracle International Corporation | Logging framework for a data stream processing server |
US8386466B2 (en) | 2009-08-03 | 2013-02-26 | Oracle International Corporation | Log visualization tool for a data stream processing server |
US8959106B2 (en) | 2009-12-28 | 2015-02-17 | Oracle International Corporation | Class loading using java data cartridges |
US9305057B2 (en) | 2009-12-28 | 2016-04-05 | Oracle International Corporation | Extensible indexing framework using data cartridges |
US9430494B2 (en) | 2009-12-28 | 2016-08-30 | Oracle International Corporation | Spatial data cartridge for event processing systems |
JP5728932B2 (ja) * | 2010-02-09 | 2015-06-03 | 日産自動車株式会社 | 車両の警報音発生装置 |
US8713049B2 (en) | 2010-09-17 | 2014-04-29 | Oracle International Corporation | Support for a parameterized query/view in complex event processing |
US9189280B2 (en) | 2010-11-18 | 2015-11-17 | Oracle International Corporation | Tracking large numbers of moving objects in an event processing system |
US9002859B1 (en) | 2010-12-17 | 2015-04-07 | Moonshadow Mobile, Inc. | Systems and methods for high-speed searching and filtering of large datasets |
EP2663939A4 (en) | 2011-01-10 | 2016-12-07 | Roy W Ward | SYSTEMS AND METHODS FOR HIGH SPEED SEARCHING AND FILTERING OF LARGE DATA SETS |
US8639870B2 (en) | 2011-01-14 | 2014-01-28 | Oracle International Corporation | String searching within peripheral storage devices |
US8990416B2 (en) | 2011-05-06 | 2015-03-24 | Oracle International Corporation | Support for a new insert stream (ISTREAM) operation in complex event processing (CEP) |
US9329975B2 (en) | 2011-07-07 | 2016-05-03 | Oracle International Corporation | Continuous query language (CQL) debugger in complex event processing (CEP) |
US9171054B1 (en) | 2012-01-04 | 2015-10-27 | Moonshadow Mobile, Inc. | Systems and methods for high-speed searching and filtering of large datasets |
US8990204B1 (en) | 2012-01-17 | 2015-03-24 | Roy W. Ward | Processing and storage of spatial data |
US9805095B2 (en) | 2012-09-28 | 2017-10-31 | Oracle International Corporation | State initialization for continuous queries over archived views |
US9563663B2 (en) | 2012-09-28 | 2017-02-07 | Oracle International Corporation | Fast path evaluation of Boolean predicates |
US10956422B2 (en) | 2012-12-05 | 2021-03-23 | Oracle International Corporation | Integrating event processing with map-reduce |
US9098587B2 (en) | 2013-01-15 | 2015-08-04 | Oracle International Corporation | Variable duration non-event pattern matching |
US10298444B2 (en) | 2013-01-15 | 2019-05-21 | Oracle International Corporation | Variable duration windows on continuous data streams |
US9047249B2 (en) | 2013-02-19 | 2015-06-02 | Oracle International Corporation | Handling faults in a continuous event processing (CEP) system |
US9390135B2 (en) | 2013-02-19 | 2016-07-12 | Oracle International Corporation | Executing continuous event processing (CEP) queries in parallel |
US9418113B2 (en) | 2013-05-30 | 2016-08-16 | Oracle International Corporation | Value based windows on relations in continuous data streams |
CN104252469B (zh) | 2013-06-27 | 2017-10-20 | 国际商业机器公司 | 用于模式匹配的方法、设备和电路 |
US9934279B2 (en) | 2013-12-05 | 2018-04-03 | Oracle International Corporation | Pattern matching across multiple input data streams |
US9244978B2 (en) | 2014-06-11 | 2016-01-26 | Oracle International Corporation | Custom partitioning of a data stream |
US9712645B2 (en) | 2014-06-26 | 2017-07-18 | Oracle International Corporation | Embedded event processing |
US9886486B2 (en) | 2014-09-24 | 2018-02-06 | Oracle International Corporation | Enriching events with dynamically typed big data for event processing |
US10120907B2 (en) | 2014-09-24 | 2018-11-06 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
WO2017018901A1 (en) | 2015-07-24 | 2017-02-02 | Oracle International Corporation | Visually exploring and analyzing event streams |
US10282486B2 (en) * | 2015-09-08 | 2019-05-07 | Micron Technology, Inc. | Methods and apparatuses for searching data stored in a memory array using a replicated data pattern |
WO2017135838A1 (en) | 2016-02-01 | 2017-08-10 | Oracle International Corporation | Level of detail control for geostreaming |
WO2017135837A1 (en) | 2016-02-01 | 2017-08-10 | Oracle International Corporation | Pattern based automated test data generation |
US10521411B2 (en) | 2016-08-10 | 2019-12-31 | Moonshadow Mobile, Inc. | Systems, methods, and data structures for high-speed searching or filtering of large datasets |
US10282436B2 (en) * | 2017-01-04 | 2019-05-07 | Samsung Electronics Co., Ltd. | Memory apparatus for in-place regular expression search |
US11379281B2 (en) * | 2020-11-18 | 2022-07-05 | Akamai Technologies, Inc. | Detection and optimization of content in the payloads of API messages |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4550436A (en) * | 1983-07-26 | 1985-10-29 | At&T Bell Laboratories | Parallel text matching methods and apparatus |
US4760523A (en) | 1984-06-29 | 1988-07-26 | Trw Inc. | Fast search processor |
JPS6244829A (ja) * | 1985-08-22 | 1987-02-26 | Matsushita Graphic Commun Syst Inc | パタ−ン抽出方法 |
US5051947A (en) * | 1985-12-10 | 1991-09-24 | Trw Inc. | High-speed single-pass textual search processor for locating exact and inexact matches of a search pattern in a textual stream |
US5060143A (en) * | 1988-08-10 | 1991-10-22 | Bell Communications Research, Inc. | System for string searching including parallel comparison of candidate data block-by-block |
US4965472A (en) | 1988-08-11 | 1990-10-23 | Cypress Semiconductor Corp. | Programmable high speed state machine with sequencing capabilities |
US5050075A (en) * | 1988-10-04 | 1991-09-17 | Bell Communications Research, Inc. | High performance VLSI data filter |
US5452451A (en) | 1989-06-15 | 1995-09-19 | Hitachi, Ltd. | System for plural-string search with a parallel collation of a first partition of each string followed by finite automata matching of second partitions |
US5101376A (en) | 1989-07-31 | 1992-03-31 | Hitachi, Ltd. | Integrated microprocessor with associative memory device |
US5163016A (en) | 1990-03-06 | 1992-11-10 | At&T Bell Laboratories | Analytical development and verification of control-intensive systems |
JPH0535570A (ja) * | 1990-05-16 | 1993-02-12 | Internatl Business Mach Corp <Ibm> | コピーされたデータ・オブジエクトの文脈探索の方法 |
US5497488A (en) * | 1990-06-12 | 1996-03-05 | Hitachi, Ltd. | System for parallel string search with a function-directed parallel collation of a first partition of each string followed by matching of second partitions |
DE69131272T2 (de) * | 1990-11-13 | 1999-12-09 | International Business Machines Corp., Armonk | Paralleles Assoziativprozessor-System |
JP2842712B2 (ja) | 1990-11-30 | 1999-01-06 | 大同ほくさん株式会社 | めつき方法 |
JPH04315259A (ja) * | 1991-04-12 | 1992-11-06 | Nippon Telegr & Teleph Corp <Ntt> | 文字列照合処理方式 |
US5511213A (en) | 1992-05-08 | 1996-04-23 | Correa; Nelson | Associative memory processor architecture for the efficient execution of parsing algorithms for natural language processing and pattern recognition |
JPH06202849A (ja) * | 1992-12-28 | 1994-07-22 | Toshiba Corp | 情報処理装置 |
EP0638187B1 (en) | 1993-02-23 | 2001-07-25 | Xerox Corporation | Categorizing strings in character recognition |
US5586288A (en) * | 1993-09-22 | 1996-12-17 | Hilevel Technology, Inc. | Memory interface chip with rapid search capability |
US5623680A (en) | 1993-12-28 | 1997-04-22 | Lucent Technologies Inc. | Finite state machine for process control |
US5649149A (en) | 1994-08-01 | 1997-07-15 | Cypress Semiconductor Corporation | Integrated content addressable memory array with processing logical and a host computer interface |
US6070252A (en) | 1994-09-30 | 2000-05-30 | Intel Corporation | Method and apparatus for interactive built-in-self-testing with user-programmable test patterns |
US5905902A (en) | 1995-09-28 | 1999-05-18 | Intel Corporation | Programmable state machine employing a cache-like arrangement |
US5949251A (en) | 1997-08-01 | 1999-09-07 | Vlsi Technology, Inc. | Register-based programmable post-silicon system to patch and dynamically modify the behavior of synchronous state machines |
US6073098A (en) | 1997-11-21 | 2000-06-06 | At&T Corporation | Method and apparatus for generating deterministic approximate weighted finite-state automata |
US5974525A (en) | 1997-12-05 | 1999-10-26 | Intel Corporation | System for allowing multiple instructions to use the same logical registers by remapping them to separate physical segment registers when the first is being utilized |
US6253112B1 (en) | 1998-09-17 | 2001-06-26 | Lucent Technologies Inc. | Method of and apparatus for constructing a complex control system and the complex control system created thereby |
US6380924B1 (en) | 1998-10-22 | 2002-04-30 | Young Yee | Mouse/keyboard capture recorder (MCR) apparatus and methodology |
US6327508B1 (en) | 1998-12-10 | 2001-12-04 | Advanced Micro Devices, Inc. | Programmable state machine |
US6269189B1 (en) * | 1998-12-29 | 2001-07-31 | Xerox Corporation | Finding selected character strings in text and providing information relating to the selected character strings |
US6212625B1 (en) | 1999-05-25 | 2001-04-03 | Advanced Micro Devices, Inc. | General purpose dynamically programmable state engine for executing finite state machines |
JP3700574B2 (ja) * | 1999-11-19 | 2005-09-28 | 日本電信電話株式会社 | 検索成功信号先読み式出力データ選択装置 |
JP4558879B2 (ja) | 2000-02-15 | 2010-10-06 | 富士通株式会社 | テーブルを用いたデータ処理装置および処理システム |
US20020194223A1 (en) * | 2000-10-16 | 2002-12-19 | Text Analysis International, Inc. | Computer programming language, system and method for building text analyzers |
US6708168B2 (en) | 2000-12-29 | 2004-03-16 | Nortel Networks Limited | Method and apparatus for searching a data stream for character patterns |
US7181386B2 (en) | 2001-11-15 | 2007-02-20 | At&T Corp. | Systems and methods for generating weighted finite-state automata representing grammars |
US20030125931A1 (en) * | 2001-12-07 | 2003-07-03 | Shannon Roy Campbell | Method for matching strings |
US6700809B1 (en) | 2002-02-01 | 2004-03-02 | Netlogic Microsystems, Inc. | Entry relocation in a content addressable memory device |
US6952694B2 (en) | 2002-06-13 | 2005-10-04 | Intel Corporation | Full regular expression search of network traffic |
US7119577B2 (en) | 2002-08-28 | 2006-10-10 | Cisco Systems, Inc. | Method and apparatus for efficient implementation and evaluation of state machines and programmable finite state automata |
US7464254B2 (en) | 2003-01-09 | 2008-12-09 | Cisco Technology, Inc. | Programmable processor apparatus integrating dedicated search registers and dedicated state machine registers with associated execution hardware to support rapid application of rulesets to data |
US7085918B2 (en) | 2003-01-09 | 2006-08-01 | Cisco Systems, Inc. | Methods and apparatuses for evaluation of regular expressions of arbitrary size |
-
2003
- 2003-08-27 US US10/650,363 patent/US7451143B2/en not_active Expired - Fee Related
- 2003-08-28 EP EP03754433A patent/EP1535197B1/en not_active Expired - Lifetime
- 2003-08-28 AU AU2003272259A patent/AU2003272259A1/en not_active Abandoned
- 2003-08-28 AT AT03754433T patent/ATE384299T1/de not_active IP Right Cessation
- 2003-08-28 KR KR1020057003602A patent/KR101012623B1/ko active IP Right Grant
- 2003-08-28 DE DE60318722T patent/DE60318722T2/de not_active Expired - Fee Related
- 2003-08-28 WO PCT/US2003/027518 patent/WO2004021170A2/en active IP Right Grant
- 2003-08-28 JP JP2004569774A patent/JP4555088B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7451143B2 (en) | 2008-11-11 |
WO2004021170A2 (en) | 2004-03-11 |
KR20050050099A (ko) | 2005-05-27 |
DE60318722D1 (de) | 2008-03-06 |
JP2005537592A (ja) | 2005-12-08 |
KR101012623B1 (ko) | 2011-02-09 |
AU2003272259A1 (en) | 2004-03-19 |
EP1535197B1 (en) | 2008-01-16 |
DE60318722T2 (de) | 2009-01-15 |
AU2003272259A8 (en) | 2004-03-19 |
EP1535197A2 (en) | 2005-06-01 |
ATE384299T1 (de) | 2008-02-15 |
US20040059725A1 (en) | 2004-03-25 |
WO2004021170A3 (en) | 2004-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4555088B2 (ja) | データ内のパターンの高速文脈サーチ及び特徴付けを実行するためのプログラム可能な規則処理装置 | |
US7464254B2 (en) | Programmable processor apparatus integrating dedicated search registers and dedicated state machine registers with associated execution hardware to support rapid application of rulesets to data | |
US7119577B2 (en) | Method and apparatus for efficient implementation and evaluation of state machines and programmable finite state automata | |
JP5265378B2 (ja) | 高性能正規表現パターンマッチングのための方法および装置 | |
US7146643B2 (en) | Intrusion detection accelerator | |
US8589405B1 (en) | Token stitcher for a content search system having pipelined engines | |
US20060212426A1 (en) | Efficient CAM-based techniques to perform string searches in packet payloads | |
US20080189784A1 (en) | Method and Apparatus for Deep Packet Inspection | |
CN1641685A (zh) | 并行模式检测引擎集成电路、相关方法及数据处理系统 | |
US20070061884A1 (en) | Intrusion detection accelerator | |
JP2005524149A (ja) | コンテンツ・サーチ・エンジン | |
JP4203023B2 (ja) | 再構成可能なセマンティックプロセッサ | |
US5592635A (en) | Technique for accelerating instruction decoding of instruction sets with variable length opcodes in a pipeline microprocessor | |
Hilgurt | A Survey on Hardware Solutions for Signature-Based Security Systems. | |
WO2010047683A1 (en) | Fast signature scan | |
US8700593B1 (en) | Content search system having pipelined engines and a token stitcher | |
Soewito et al. | Self-addressable memory-based FSM: a scalable intrusion detection engine | |
JPH0380366A (ja) | ストリングサーチ方法およびそのための装置 | |
CN1723454A (zh) | 用于执行高速上下文检索和数据模式特征描述的可编程规则处理设备 | |
CN113360726B (zh) | 并行正则表达式匹配器 | |
JP2007274051A (ja) | バイト列探索器及び探索方法 | |
US20020053003A1 (en) | System and method for implementing behavioral operations | |
WO2008036501A2 (en) | Regular expression searching of packet contents using dedicated search circuits |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060828 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060828 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090616 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100323 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100604 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100706 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100715 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130723 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4555088 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |