JP5701316B2 - 適応型コンテンツ・インスペクション - Google Patents

適応型コンテンツ・インスペクション Download PDF

Info

Publication number
JP5701316B2
JP5701316B2 JP2012544613A JP2012544613A JP5701316B2 JP 5701316 B2 JP5701316 B2 JP 5701316B2 JP 2012544613 A JP2012544613 A JP 2012544613A JP 2012544613 A JP2012544613 A JP 2012544613A JP 5701316 B2 JP5701316 B2 JP 5701316B2
Authority
JP
Japan
Prior art keywords
content inspection
inspection processor
data
input data
processor
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.)
Active
Application number
JP2012544613A
Other languages
English (en)
Other versions
JP2013513895A (ja
Inventor
ディー. ドラゴッシュ,ポール
ディー. ドラゴッシュ,ポール
ビー. ノイズ,ハロルド
ビー. ノイズ,ハロルド
Original Assignee
マイクロン テクノロジー, インク.
マイクロン テクノロジー, インク.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by マイクロン テクノロジー, インク., マイクロン テクノロジー, インク. filed Critical マイクロン テクノロジー, インク.
Publication of JP2013513895A publication Critical patent/JP2013513895A/ja
Application granted granted Critical
Publication of JP5701316B2 publication Critical patent/JP5701316B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明の態様は、一般に、コンテンツ・インスペクション(検査、認識、特定)・プロセッサに関し、より詳細には、そのようなプロセッサのプログラミング及び動作に関する。
コンピューティングの分野では、コンテンツ・インスペクション・タスクが益々難しくなっている。例えば、パターン認識、コンテンツ・インスペクション・タスクのサブセットは、より大きなデータ量及びユーザが識別したいパターンの数のために、実装することがより難しくなる場合がある。例えば、スパムまたはマルウェアは、例えば、特定のフレーズまたはコードの一部等のデータストリーム内のパターン等のコンテンツを検索することによって頻繁に検出される。新しいパターンが新しい変種を検索するために実装され得るので、パターンの数はスパム及びマルウェアの多様性によって増加する。データストリームでこれらの各パターンを検索することは、コンピューティングにおけるボトルネックを形成し得る。多くの場合、データストリームが受信されると、各パターンが1度に1つずつ検索される。システムがデータストリームの次の部分を検索できるようになるまでの遅延は、パターンの数によって増加する。従って、コンテンツ・インスペクションは、データの受信を遅くする場合がある。
更に、多くのパターン認識、検索、または他のコンテンツ・インスペクション・タスクでは、コンテンツ・インスペクション・プロセスは、固定のまたは定義された検索条件セットを用いて(例えば、に応じて、に対して、に関して等)実行される。コンテンツ・インスペクション・プロセスを実行するデバイスは、入力データ及び/またはリザルトデータにおける変化に合わせた調整をしない。
図1は、本発明の実施形態に従う、コンテンツ・インスペクション・プロセッサを有する装置の実施形態のブロック図である。 図2は、本発明の実施形態に従う、ホストコントローラ及びコンテンツ・インスペクション・プロセッサの動作を説明するためのブロック図である。 図3は、本発明の実施形態に従う、コンテンツ・インスペクション・プロセッサの動的適応プロセスのフローチャート図である。 図4は、本発明の実施形態に従って、適応可能プログラミングを有するコンテンツ・インスペクション・プロセッサを示す図である。 図5は、本発明の実施形態に従って、コンテンツ・インスペクション・プロセッサの適応可能プログラミングの第2のレベルを示す図である。 図6は、本発明の実施形態に従う、統合フィードバックを有するコンテンツ・インスペクション・プロセッサを示す図である。 図7は、本発明の他の実施形態に従う、リザルト・プロセシングを含む統合フィードバックを有するコンテンツ・インスペクション・プロセッサを示す図である。 図8は、本発明の実施形態に従う、統合フィードバックを含むコンテンツ・インスペクション・プロセッサの動的適応プロセスを示す図である。
図1は、参照符号10によって一般に示される、デバイスまたはシステム等の電子装置の実施形態を示すブロック図である。装置10は、例えば、コンピュータ、ページャ、携帯電話機、電子手帳、携帯オーディオプレーヤー、ネットワークデバイス(例えば、ルータ、ファイアウォール、スイッチ、または、それらの任意の組み合わせ)、制御回路、カメラ等の様々な種類のうちの任意のものであってよい。装置10は、装置10内の機能及び要求の処理を制御するために、マイクロプロセッサ等の装置プロセッサ12を含んでもよい。更に、プロセッサ12は、装置の制御を共有する複数のプロセッサを含んでもよい。プロセッサ12は、汎用プロセッサ、または、装置10の機能及び要求のための専用に設計されたプロセッサであってもよい。
装置10は、更に、コンテンツ・インスペクション・プロセッサ14を含んでもよい。コンテンツ・インスペクション・プロセッサ14は、検索条件を用いてデータを検査するために構成された1つまたは複数のプロセッサであってもよい。例えば、コンテンツ・インスペクション・プロセッサ14は、コンテンツ・インスペクション・プロセッサ14に提供されたデータセットまたはデータストリーム内のパターンと一致する検索条件を用いることが可能であってもよい。コンテンツ・インスペクション・プロセッサ14は、1つまたは複数のバスを介してコンテンツ・インスペクション・プロセッサ14と通信するホストコントローラ16等のプロセシング・ロジックに結合されるか、またはプロセシング・ロジックによって制御されてもよい。ホストコントローラ16は、動作中にコンテンツ・インスペクション・プロセッサ14によって用いられる検索条件または任意の他のパラメータによって、コンテンツ・インスペクション・プロセッサ14をプログラムしてもよい。コンテンツ・インスペクション・プロセッサ14は、装置10の一次または二次機能を提供してもよい。一実施形態では、コンテンツ・インスペクション・プロセッサ14は、米国特許出願第12/350,132号に記載されているようなパターン認識プロセッサであってもよい。
装置10は通常、電源18を含む。例えば、装置10がポータブル・システムである場合、電源18は、恒久的なバッテリー、交換可能なバッテリー、及び/または、充電式バッテリーを好都合に含んでもよい。電源18はまた、例えば、装置10が壁付きコンセントに接続され得るように、ACアダプタを含んでもよい。電源18はまた、例えば、装置10が自動車のタバコ用ライターに接続され得るように、DCアダプタを含んでもよい。
様々な他のデバイスは、装置10が実行する機能に応じて、プロセッサ12に結合されてもよい。例えば、入力デバイス20は、プロセッサ12に結合されてもよい。入力デバイス20は、例えば、ボタン、スイッチ、キーボード、ライトペン、スタイラス、マウス、及び/または、音声認識システム等を含んでもよい。ディスプレイ22はまた、プロセッサ12に結合されてもよい。ディスプレイ22は、例えば、液晶ディスプレイ(LCD)、ブラウン管(CRT)、発光ダイオード(LED)、及び/または、任意の他の好適なディスプレイを含んでもよい。
そのうえ更に、無線周波(RF)サブシステム/ベースバンド・プロセッサ24はまた、プロセッサ12に結合されてもよい。RFサブシステム/ベースバンド・プロセッサ24は、RF受信機及びRF送信機(図示せず)に結合されるアンテナを含んでもよい。通信ポート26はまた、プロセッサ12に結合されてもよい。通信ポート26は、例えば、モデム、プリンタ、コンピュータ等の1つまたは複数の周辺機器に結合されるように、または、ローカルエリアネットワーク、リモートエリアネットワーク、イントラネット、またはインターネット等のネットワークに結合されるように適応させてもよい。
一般に、メモリは、様々なプログラムの実行を記憶するとともに容易にするために、プロセッサ12に結合される。例えば、プロセッサ12は、メモリコントローラ32を介してシステムメモリ30に結合されてもよい。システムメモリ30は、ダイナミック・ランダム・アクセス・メモリ(DRAM)、及び/または、スタティック・ランダム・アクセス・メモリ(SRAM)等の揮発性メモリを含んでもよい。システムメモリ30はまた、揮発性メモリと合わせて用いるために、読み出し専用メモリ(ROM)、様々なアーキテクチャ(例えば、NANDメモリ、NORメモリ等)のフラッシュメモリ等の不揮発性メモリを含んでもよい。加えて、装置10は、磁気記憶装置等のハードドライブ34を含んでもよい。
図2は、本発明の実施形態に従うホストコントローラ16及びコンテンツ・インスペクション・プロセッサ14の動作を示す図である。図2に示すように、ホストコントローラ16は、プログラムバス36及び入力バス38を介して、コンテンツ・インスペクション・プロセッサ14と通信してもよい。入力バス38は、コンテンツ・インスペクション・プロセッサ14によって検査される入力データを転送する。いくつかの実施形態では、入力データは、固定データセット(「静的データ」と呼ばれる)またはストリーミングデータ(「動的データ」と呼ばれる)として転送されてもよい。入力データは、装置10に結合されるデータベース、センサー、ネットワーク等の任意のソースから受信されてもよい。例えば、入力データは、通信ポート26を介して装置10と通信する他のデバイスまたはシステムから受信されてもよい。
プログラムバス36は、ホストコントローラ16からコンテンツ・インスペクション・プロセッサ14にプログラミングデータを転送する。このプログラムデータは、インスペクション・プロセス中に用いられる動作パラメータによって、コンテンツ・インスペクション・プロセッサ14をプログラムするために使用される。例えば、一実施形態では、プログラミングデータは、入力バス38を介して受信される入力データと一致する、コンテンツ・インスペクション・プロセッサ14によって用いられる検索条件(例えば、パターンまたは他の注目条件)を含んでもよい。検索条件は、任意の長さ及び複雑さの1つまたは複数のパターンを含んでもよい。
コンテンツ・インスペクション・プロセッサ14の出力は、リザルトバス40を介して転送されてもよい。リザルトバス40は、コンテンツ・インスペクション・プロセッサ14による入力データの処理のリザルトデータ(例えば、検索結果)をホストコントローラ16に提供してもよい。例えば、いくつかの実施形態では、リザルトバス40を介して提供されるリザルトデータは、一致を示してもよく、「一致しない」ことを示してもよく、また、一致した特定の検索条件、及び/または、一致した入力データ内の位置を含んでもよい。いくつかの実施形態では、コンテンツ・インスペクション・プロセッサ14は、リザルトバス40を介して出力を転送することによって任意の特定のリザルトデータをホストコントローラ16に知らせてもよい。
いくつかの実施形態では、入力バス38、プログラムバス36、及びリザルトバス40は、物理的に別々なバスであってもよく、または、入力バス38、プログラムバス36、及びリザルトバス40の任意の組み合わせが、単一のバスインターフェース上に物理的に実装されてもよい。例えば、このような実施形態では、単一のバスインターフェースは、コンテンツ・インスペクション・プロセッサ14に提供されるかまたはコンテンツ・インスペクション・プロセッサ14から受信される異なる種類のデータを転送するために、任意の好適な技術を介して、多重化されてもよく、または制御されてもよい。
図3は、本発明の実施形態に従う、コンテンツ・インスペクション・プロセッサ14のための動的適応プロセス44を示す図である。最初に、ブロック46に示すように、コンテンツ・インスペクション・プロセッサ14は、入力バス38等を介して、入力データ(例えば、データセットまたはデータストリーム)を受信してもよい。コンテンツ・インスペクション・プロセッサ14は、コンテンツ・インスペクション・プロセッサ14に提供される入力データに関して情報を識別してもよい(ブロック48)。このような情報は、データの識別特性、データのフォーマット、データのプロトコル、及び/または、任意の他の種類の識別情報を含んでもよい。入力データに関して情報を識別した後、その情報は、収集されてもよく、分析されてもよく、コンテンツ・インスペクション・プロセッサの検索条件及び/または他の動作パラメータに適応するように用いられてもよい(ブロック50)。例えば、ホストコントローラ16または他のプロセシング・ロジックは、入力データの識別特性に基づいて、検索条件を収集してもよく、分析してもよく、及び/または、適応させてもよい。コンテンツ・インスペクション・プロセッサ14は、その後、適応させた検索条件によってプログラムされてもよい(ブロック52)。最後に、コンテンツ・インスペクション・プロセッサ14は、適応させた検索条件を用いて入力データを検査してもよい(ブロック54)。以下に記載するように、このプロセス44は、追加識別情報が検索条件の更なる適応を可能にするために入力データで検出され得るように、反復性であってもよい(矢印56によって示す)。
図4〜図6は、コンテンツ・インスペクション・プロセッサの実行時に入力データに適応する機能を与える、コンテンツ・インスペクション・プロセッサの動的適応プログラミングのための異なる技術を示す図である。コンテンツ・インスペクション・プロセッサの実施形態は、図4〜図6において以下に記載される技術のうちの任意の1つまたは組み合わせを含んでもよい。
図4は、本発明の実施形態に従って、適応型プログラミング(例えば、検索条件)を有するコンテンツ・インスペクション・プロセッサ14を示す図である。図4に示すように、コンテンツ・インスペクション・プロセッサ14は、識別情報に基づいて入力データに関して検索条件を動的に適応させる機能を含んでもよい。
例えば、図4は、コンテンツ・インスペクション・プロセッサ14が多数の可能な種類の入力データ60(例えば、データセットまたはデータストリーム)を受信し得る実施形態を示す図である。各種類の入力データ60は、(図4において、アイデンティティ1,2,3等と示された)異なる識別情報を有してもよい。例えば、入力データ60Aはアイデンティティ1を有してもよく、入力データ60Bはアイデンティティ2を有してもよく、入力データ60Cはアイデンティティ3を有してもよい等である。一実施形態では、例えば、コンテンツ・インスペクション・プロセッサ14は、自然言語翻訳を実行してもよい。着信入力データ60は、コンテンツ・インスペクション・プロセッサによる翻訳のための任意の可能な自然言語を含んでもよい。このような実施形態では、アイデンティティ1がフランス語であり、アイデンティティ2がスペイン語であり、アイデンティティ3が英語であり、アイデンティティ4がロシア語であり、アイデンティティ5がポーランド語であり、アイデンティティ6が標準中国語(北京語)であり、アイデンティティ7が日本語である等のように、アイデンティティは異なる自然言語であってもよい。
コンテンツ・インスペクション・プロセッサ14は、検索条件を用いて入力データの所定の特性を一致させること等によって、入力データに関して情報を識別するための検索条件をプログラムされてもよい。更に、コンテンツ・インスペクション・プロセッサ14は、コンテンツ・インスペクション・プロセッサ14の機能(例えば、自然言語翻訳、ネットワークファイアウォール等)に基づいて検索条件によってプログラムされてもよい。従って、自然言語翻訳を提供する実施形態では、コンテンツ・インスペクション・プロセッサ14は、着信入力データ60の自然言語を識別するためにプログラムされてもよい。このような実施形態では、コンテンツ・インスペクション・プロセッサ14は、各種類の入力データ60(例えば、可能な各自然言語等)のための全検索条件を記憶するのに十分なメモリを有していなくてもよい。入力データ60が識別された後、アイデンティティは、リザルトバス40を介してホストコントローラ16に提供されてもよい。ホストコントローラ16は、その後、入力データ60のアイデンティティに基づいて検索条件を適応させて、その具体的に識別された種類の入力データに適応させた検索条件によってコンテンツ・インスペクション・プロセッサ14をプログラムしてもよい。例えば、入力データが英語と識別される場合、検索条件は、注目パターンに英語で一致するように適応されてもよい。
更に、任意の次元数の適応性が、コンテンツ・インスペクション・プロセッサ14によって提供されてもよい。例えば、図5は、入力データのアイデンティティに基づく更なる次元の適応性を示す図である。入力データに関して情報を識別した後(入力データ60Aを「アイデンティティ1」と識別する等)、コンテンツ・インスペクション・プロセッサ14は、入力データ60Aに関して更なる情報(例えば、サブアイデンティティ)を識別するために、適応させた検索条件によってプログラムされてもよい。図5に示すように、入力データ60Aは、例えば、「サブアイデンティティ1」、「サブアイデンティティ2」、「サブアイデンティティ3」等の更に識別可能情報62を有してもよい。例えば、特定の自然言語を識別する(例えば、入力データ60Aを「英語」と識別する等の)実施形態では、言語を識別した後、コンテンツ・インスペクション・プロセッサ14は、その後、識別された言語の地域の方言、アクセント、または他のサブアイデンティティを識別してもよい。一度、コンテンツ・インスペクション・プロセッサ14がこのサブアイデンティティを識別すると、このサブアイデンティティは、リザルトバス40を介してホストコントローラ14に提供されてもよい。ホストコントローラ16は、その後、検索条件を更に適応させることができ、かつ、その更に適応させた検索条件によって、コンテンツ・インスペクション・プロセッサ14をプログラムすることができる。このプロセスは、入力データのサブアイデンティティの任意の所期の次元で繰り返してもよい。好都合なことに、上記の検索条件の連続的な適応は、コンテンツ・インスペクション・プロセッサが高いレベルの精度のインスペクション・プロセスを達成することを可能にする。
他の実施形態では、入力データの識別は、ネットワークのセキュリティを強化するために使用されてもよい。例えば、コンテンツ・インスペクション・プロセッサ14は、攻撃ウィルス、ワーム、または他のマルウェアのシグネチャに近接して共通に発見されたコードフラグメントに対応する入力データ内のコードフラグメントを識別してもよい。このようなコードフラグメントが識別された後、ホストコントローラ16は、このようなコードフラグメントに関連付けられていることが知られている攻撃シグネチャと一致するように検索条件を適応させてもよい。これらの適応させた検索条件は、コンテンツ・インスペクション・プロセッサ14が、それらのコードフラグメントに関連付けられたそれぞれの攻撃シグネチャを検索することをより良く可能にし、インスペクション・プロセスの精度を上げることができるように、コンテンツ・インスペクション・プロセッサ14に提供されてもよい。
他の実施形態では、入力データ内で検索された識別情報は、例えば、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、DNSリクエスト等のネットワークプロトコルであってもよい。プロトコルを識別し、かつ、このアイデンティティをホストコントローラ16に提供することによって、ホストコントローラ16は、それに応じて、特定のプロトコルに検索条件を適応させてもよく、コンテンツ・インスペクション・プロセッサをプログラムしてもよい。他の実施形態では、検索された識別情報(例えば、アイデンティティ)は、入力データの識別情報が符号化または復号化プロセスを調整するためにエンコーダまたはデコーダにフィードバックされる、入力データの符号化/復号化情報であってもよい。例えば、ビデオまたは他のメディアエンコーダは、コンテンツ・インスペクション・プロセッサ14を用いて、符号化プロセスの出力を検査してもよく、また、エンコーダが符号化プロセスを動的に適応させることを可能にするために、エンコーダにフィードバックを提供してもよい。更に他の実施形態では、識別情報は、任意のデジタル的に符号化された情報であってもよい。
他の実施形態では、コンテンツ・インスペクション・プロセッサ14は、入力データに基づいてコンテンツ・インスペクション・プロセッサ14に動的適応性を提供するためにフィードバック機構を含んでもよい。図6は、本発明の実施形態に従う、統合型フィードバックを有するコンテンツ・インスペクション・プロセッサ14を示す図である。図6に示すように、コンテンツ・インスペクション・プロセッサ14からのリザルトデータは、フィードバックループ66を作りながら、リザルトバス40を介してプログラムバス36に転送されてもよい。このフィードバックループ66は、コンテンツ・インスペクション・プロセッサ14が、インスペクション・プロセスの結果に基づいて(例えば、コンテンツ・インスペクション・プロセッサ14にプログラムされた検索条件と一致するかまたは一致しない入力データに基づいて)、入力データに動的に適応することができるようにしてもよい。
他の実施形態では、フィードバックループは、追加のポスト・リザルト・プロセシング(結果後処理、post−results processing)を含んでもよい。図7は、本発明の他の実施形態に従う、リザルト・プロセシング(結果処理、results processing)を含む統合型フィードバックを有するコンテンツ・インスペクション・プロセッサ14を示す図である。図7に示すように、コンテンツ・インスペクション・プロセッサ14からのリザルトバス40は、リザルト・プロセシング・ロジック68に結合されてもよい。コンテンツ・インスペクション・プロセッサ14からのリザルトデータ出力は、プログラムバス36に提供される前に、リザルト・プロセシング・ロジック68によって処理されてもよい。リザルト・プロセシング・ロジック68は、例えば、結果についての検査、ローカルストレージから新しい検索条件を取得するためのルックアップ動作等を実行するための追加のコンテンツ・インスペクション・プロセッサ等、任意の好適なハードウェア及び/またはソフトウェアロジックを含んでもよい。
図8は、本発明の実施形態に従う、統合型フィードバックを含むコンテンツ・インスペクション・プロセッサの動的適応プロセス70を示す図である。最初に、コンテンツ・インスペクション・プロセッサ14は、入力バス38を介して受信されたデータセットまたはデータストリーム等の入力データを受信する(ブロック72)。入力データは、コンテンツ・インスペクション・プロセッサ14にプログラムされた検索条件を用いて検査されてもよい(ブロック74)。いくつかの実施形態では、上で説明したように、この検索条件が、入力データに関して情報を識別するために用いられてもよい。いくつかの実施形態では、インスペクション・プロセスのリザルトデータは、リザルト・プロセシング・ロジック68に提供されてもよい(ブロック76)。リザルトデータは、リザルト・プロセシング・ロジック68によって処理されてもよい(ブロック78)。処理されたリザルトデータは、プログラムバス36等を介して、コンテンツ・インスペクション・プロセッサ14にフィードバックされてもよい(ブロック80)。矢印82によって示すように、プロセス70は、コンテンツ・インスペクション・プロセッサ14に連続的なフィードバックを提供し続けてもよい。他の実施形態では、上でも説明したように、リザルトデータは、リザルトデータをプログラムバス36に与えること等によって、処理することなく(矢印84によって示すように)コンテンツ・インスペクション・プロセッサ14に直接提供されてもよい。

Claims (15)

  1. 入力データを検査し、前記入力データに対応するリザルトデータを出力するように構成されたコンテンツ・インスペクション・プロセッサと、
    前記コンテンツ・インスペクション・プロセッサに一つ以上のバスを介して接続され、
    前記一つ以上のバスを介して前記コンテンツ・インスペクション・プロセッサに前記入力データを転送し、
    前記一つ以上のバスを介して前記コンテンツ・インスペクション・プロセッサから前記リザルトデータを受信し、
    前記リザルトデータに少なくとも部分的に基づいてプログラムデータを決定し、前記プログラムデータを用いて前記コンテンツ・インスペクション・プロセッサをプログラムするプロセシング・ロジックと、
    を含むことを特徴とする装置。
  2. 前記一つ以上のバスは、前記コンテンツ・インスペクション・プロセッサ及び前記プロセシング・ロジックに結合されるとともに前記リザルトデータを転送するように構成されるリザルトバスを含む、ことを特徴とする請求項1に記載の装置。
  3. 前記一つ以上のバスは、前記プロセシング・ロジック及び前記コンテンツ・インスペクション・プロセッサに結合され、前記プロセシング・ロジックから前記コンテンツ・インスペクション・プロセッサに前記入力データを提供するように構成されている、ことを特徴とする請求項1に記載の装置。
  4. 前記一つ以上のバスは、前記プロセシング・ロジックから前記コンテンツ・インスペクション・プロセッサに前記プログラムデータを転送するように構成されるプログラムバスを更に含む、ことを特徴とする請求項1に記載の装置。
  5. 前記コンテンツ・インスペクション・プロセッサは、前記入力データに関して識別情報を決定するためのデータを検査する、ことを特徴とする請求項1に記載の装置。
  6. 前記識別情報は、自然言語、データフォーマット、プロトコル、またはコードフラグメントに対応する、ことを特徴とする請求項5に記載の装置。
  7. 前記リザルトデータは、前記識別情報を含む、ことを特徴とする請求項5に記載の装置。
  8. 前記プロセシング・ロジックは、前記識別情報に基づいて、前記コンテンツ・インスペクション・プロセッサをプログラムする、ことを特徴とする請求項5に記載の装置。
  9. 前記コンテンツ・インスペクション・プロセッサは、前記入力データに関して第1の識別情報と第2の識別情報を識別するように構成される、ことを特徴とする請求項1に記載の装置。
  10. 前記プログラムデータは、検索条件を含む、ことを特徴とする請求項1に記載の装置。
  11. プロセシング・ロジックから入力データを受信することと、
    コンテンツ・インスペクション・プロセッサを用いて前記入力データを検査することと、
    前記コンテンツ・インスペクション・プロセッサから前記プロセシング・ロジックに前記入力データに対応するリザルトデータを出力することと、
    前記プロセシング・ロジックからプログラムデータを受信することと、とを含み、
    前記プログラムデータは、前記リザルトデータに少なくとも部分的に基づいており、前記コンテンツ・インスペクション・プロセッサをプログラムするために使用される、方法。
  12. 前記リザルトデータをフィードバックとして前記プロセシング・ロジックへ出力する前に前記リザルトデータを処理することを含む、請求項11に記載の方法。
  13. 前記リザルトデータを処理することは、第2のコンテンツ・インスペクション・プロセッサを用いて前記リザルトデータを検査することを含む、ことを特徴とする請求項12に記載の方法。
  14. 前記入力データを検査することは、検索条件を用いて前記入力データを検査することを含み、前記プログラムデータを受信することは、新しい検索条件を受信することを含む、ことを特徴とする請求項11に記載の方法。
  15. 前記入力データを検査することは、前記入力データに関して情報を識別することを含む、ことを特徴とする請求項11に記載の方法。
JP2012544613A 2009-12-15 2010-12-07 適応型コンテンツ・インスペクション Active JP5701316B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/638,767 US8489534B2 (en) 2009-12-15 2009-12-15 Adaptive content inspection
US12/638,767 2009-12-15
PCT/US2010/059311 WO2011081800A1 (en) 2009-12-15 2010-12-07 Adaptive content inspection

Publications (2)

Publication Number Publication Date
JP2013513895A JP2013513895A (ja) 2013-04-22
JP5701316B2 true JP5701316B2 (ja) 2015-04-15

Family

ID=43770635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012544613A Active JP5701316B2 (ja) 2009-12-15 2010-12-07 適応型コンテンツ・インスペクション

Country Status (7)

Country Link
US (4) US8489534B2 (ja)
EP (1) EP2514163B1 (ja)
JP (1) JP5701316B2 (ja)
KR (1) KR101724778B1 (ja)
CN (1) CN102714660B (ja)
TW (1) TWI433520B (ja)
WO (1) WO2011081800A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100138575A1 (en) 2008-12-01 2010-06-03 Micron Technology, Inc. Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices
US20100174887A1 (en) 2009-01-07 2010-07-08 Micron Technology Inc. Buses for Pattern-Recognition Processors
US8489534B2 (en) * 2009-12-15 2013-07-16 Paul D. Dlugosch Adaptive content inspection
US9323994B2 (en) 2009-12-15 2016-04-26 Micron Technology, Inc. Multi-level hierarchical routing matrices for pattern-recognition processors
US8766666B2 (en) 2010-06-10 2014-07-01 Micron Technology, Inc. Programmable device, hierarchical parallel machines, and methods for providing state information
US8601013B2 (en) 2010-06-10 2013-12-03 Micron Technology, Inc. Analyzing data using a hierarchical structure
EP2668577B1 (en) 2011-01-25 2019-08-14 Micron Technology, INC. Unrolling quantifications to control in-degree and/or out degree of automaton
US8843911B2 (en) 2011-01-25 2014-09-23 Micron Technology, Inc. Utilizing special purpose elements to implement a FSM
US8726253B2 (en) 2011-01-25 2014-05-13 Micron Technology, Inc. Method and apparatus for compiling regular expressions
JP5763784B2 (ja) 2011-01-25 2015-08-12 マイクロン テクノロジー, インク. 要素利用のための状態のグループ化
US9443156B2 (en) 2011-12-15 2016-09-13 Micron Technology, Inc. Methods and systems for data analysis in a state machine
US8593175B2 (en) 2011-12-15 2013-11-26 Micron Technology, Inc. Boolean logic in a state machine lattice
US8680888B2 (en) 2011-12-15 2014-03-25 Micron Technologies, Inc. Methods and systems for routing in a state machine
US8648621B2 (en) * 2011-12-15 2014-02-11 Micron Technology, Inc. Counter operation in a state machine lattice
US8782624B2 (en) 2011-12-15 2014-07-15 Micron Technology, Inc. Methods and systems for detection in a state machine
US20130275709A1 (en) 2012-04-12 2013-10-17 Micron Technology, Inc. Methods for reading data from a storage buffer including delaying activation of a column select
US20130283143A1 (en) * 2012-04-24 2013-10-24 Eric David Petajan System for Annotating Media Content for Automatic Content Understanding
US9367745B2 (en) 2012-04-24 2016-06-14 Liveclips Llc System for annotating media content for automatic content understanding
US9235798B2 (en) 2012-07-18 2016-01-12 Micron Technology, Inc. Methods and systems for handling data received by a state machine engine
US9389841B2 (en) 2012-07-18 2016-07-12 Micron Technology, Inc. Methods and systems for using state vector data in a state machine engine
US9304968B2 (en) 2012-07-18 2016-04-05 Micron Technology, Inc. Methods and devices for programming a state machine engine
US9524248B2 (en) 2012-07-18 2016-12-20 Micron Technology, Inc. Memory management for a hierarchical memory system
US9075428B2 (en) 2012-08-31 2015-07-07 Micron Technology, Inc. Results generation for state machine engines
US9501131B2 (en) 2012-08-31 2016-11-22 Micron Technology, Inc. Methods and systems for power management in a pattern recognition processing system
US9448965B2 (en) 2013-03-15 2016-09-20 Micron Technology, Inc. Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine
US9703574B2 (en) 2013-03-15 2017-07-11 Micron Technology, Inc. Overflow detection and correction in state machine engines
WO2016109570A1 (en) 2014-12-30 2016-07-07 Micron Technology, Inc Systems and devices for accessing a state machine
US11366675B2 (en) 2014-12-30 2022-06-21 Micron Technology, Inc. Systems and devices for accessing a state machine
WO2016109571A1 (en) 2014-12-30 2016-07-07 Micron Technology, Inc Devices for time division multiplexing of state machine engine signals
US10846103B2 (en) 2015-10-06 2020-11-24 Micron Technology, Inc. Methods and systems for representing processing resources
US10691964B2 (en) 2015-10-06 2020-06-23 Micron Technology, Inc. Methods and systems for event reporting
US10977309B2 (en) 2015-10-06 2021-04-13 Micron Technology, Inc. Methods and systems for creating networks
US10028145B2 (en) 2016-04-15 2018-07-17 Microsoft Technology Licensing, Llc Blocking undesirable communications in voice over internet protocol systems
US10146555B2 (en) 2016-07-21 2018-12-04 Micron Technology, Inc. Adaptive routing to avoid non-repairable memory and logic defects on automata processor
US10268602B2 (en) 2016-09-29 2019-04-23 Micron Technology, Inc. System and method for individual addressing
US10019311B2 (en) 2016-09-29 2018-07-10 Micron Technology, Inc. Validation of a symbol response memory
US10929764B2 (en) 2016-10-20 2021-02-23 Micron Technology, Inc. Boolean satisfiability
US10592450B2 (en) 2016-10-20 2020-03-17 Micron Technology, Inc. Custom compute cores in integrated circuit devices

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04167069A (ja) * 1990-10-31 1992-06-15 Oki Electric Ind Co Ltd 辞書分割型音声翻訳機
US5331227A (en) * 1992-05-15 1994-07-19 Micron Semiconductor, Inc. Programmable logic device macrocell with an exclusive feedback line and an exclusive external input line
US5300830A (en) * 1992-05-15 1994-04-05 Micron Semiconductor, Inc. Programmable logic device macrocell with an exclusive feedback and exclusive external input lines for registered and combinatorial modes using a dedicated product term for control
JP4010589B2 (ja) * 1997-02-18 2007-11-21 株式会社東芝 文書検索システムおよび同システムに適用される検索文書提示方法
CA2287689C (en) 1998-12-03 2003-09-30 P. Krishnan Adaptive re-ordering of data packet filter rules
US6880087B1 (en) * 1999-10-08 2005-04-12 Cisco Technology, Inc. Binary state machine system and method for REGEX processing of a data stream in an intrusion detection system
US6240003B1 (en) * 2000-05-01 2001-05-29 Micron Technology, Inc. DRAM content addressable memory using part of the content as an address
WO2002086717A1 (en) * 2001-04-16 2002-10-31 Xaxon R & D Corporation Computer virus check device and method
TWI263920B (en) 2002-06-12 2006-10-11 Chunghwa Telecom Co Ltd Right protection method for remote registration and local authentication
JP4145582B2 (ja) * 2002-06-28 2008-09-03 Kddi株式会社 コンピュータウィルス検査装置およびメールゲートウェイシステム
JP4309102B2 (ja) * 2002-07-16 2009-08-05 Necネクサソリューションズ株式会社 不正コマンド・データ検知方式、不正コマンド・データ検知方法および不正コマンド・データ検知プログラム
US20040044907A1 (en) * 2002-08-30 2004-03-04 Hung-Ming Sun Method of self-adjusting sensitivity for filtering documents
US7146643B2 (en) * 2002-10-29 2006-12-05 Lockheed Martin Corporation Intrusion detection accelerator
US7089352B2 (en) * 2002-12-23 2006-08-08 Micron Technology, Inc. CAM modified to be used for statistic calculation in network switches and routers
US6944710B2 (en) * 2002-12-30 2005-09-13 Micron Technology, Inc. Multiple category CAM
US10110632B2 (en) * 2003-03-31 2018-10-23 Intel Corporation Methods and systems for managing security policies
US7685254B2 (en) * 2003-06-10 2010-03-23 Pandya Ashish A Runtime adaptable search processor
US6906938B2 (en) * 2003-08-15 2005-06-14 Micron Technology, Inc. CAM memory architecture and a method of forming and operating a device according to a CAM memory architecture
JP4201263B2 (ja) * 2003-10-27 2008-12-24 日本電信電話株式会社 侵入検知システムおよび記録媒体
US7392229B2 (en) * 2005-02-12 2008-06-24 Curtis L. Harris General purpose set theoretic processor
MX2007013025A (es) * 2005-04-18 2008-01-11 Univ Columbia Sistemas y metodos para detectar e inhibir ataques mediante el uso de colmenas.
JP2006350749A (ja) * 2005-06-17 2006-12-28 Ricoh Co Ltd 文書フィルタリング装置、文書フィルタリング方法、プログラムおよび記録媒体
FR2891075B1 (fr) * 2005-09-21 2008-04-04 St Microelectronics Sa Circuit de memoire pour automate de reconnaissance de caracteres de type aho-corasick et procede de memorisation de donnees dans un tel circuit
JP4774307B2 (ja) * 2006-02-06 2011-09-14 アラクサラネットワークス株式会社 不正アクセス監視装置及びパケット中継装置
US7512634B2 (en) * 2006-06-05 2009-03-31 Tarari, Inc. Systems and methods for processing regular expressions
EP2018013A1 (en) 2007-07-17 2009-01-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and telecommunications apparatus for protecting VoIP services against attacks
US20090064337A1 (en) * 2007-09-05 2009-03-05 Shih-Wei Chien Method and apparatus for preventing web page attacks
US8125908B2 (en) * 2007-12-04 2012-02-28 Extrahop Networks, Inc. Adaptive network traffic classification using historical context
JP4488074B2 (ja) * 2008-02-13 2010-06-23 日本電気株式会社 パターン検出装置、パターン検出システム、パターン検出プログラム、およびパターン検出方法
EP2112803B1 (en) * 2008-04-22 2013-12-18 Alcatel Lucent Attack protection for a packet-based network
US20100057695A1 (en) * 2008-08-28 2010-03-04 Microsoft Corporation Post-processing search results on a client computer
US8209521B2 (en) 2008-10-18 2012-06-26 Micron Technology, Inc. Methods of indirect register access including automatic modification of a directly accessible address register
US8938590B2 (en) 2008-10-18 2015-01-20 Micron Technology, Inc. Indirect register access method and system
US8850571B2 (en) * 2008-11-03 2014-09-30 Fireeye, Inc. Systems and methods for detecting malicious network content
US7970964B2 (en) 2008-11-05 2011-06-28 Micron Technology, Inc. Methods and systems to accomplish variable width data input
US9639493B2 (en) 2008-11-05 2017-05-02 Micron Technology, Inc. Pattern-recognition processor with results buffer
US7917684B2 (en) * 2008-11-05 2011-03-29 Micron Technology, Inc. Bus translator
US8402188B2 (en) * 2008-11-10 2013-03-19 Micron Technology, Inc. Methods and systems for devices with a self-selecting bus decoder
GB2465378A (en) * 2008-11-14 2010-05-19 Want2Bthere Ltd Image based search system and method
US10007486B2 (en) 2008-12-01 2018-06-26 Micron Technology, Inc. Systems and methods to enable identification of different data sets
US9164945B2 (en) 2008-12-01 2015-10-20 Micron Technology, Inc. Devices, systems, and methods to synchronize parallel processing of a single data stream
US9348784B2 (en) 2008-12-01 2016-05-24 Micron Technology, Inc. Systems and methods for managing endian mode of a device
US20100138575A1 (en) 2008-12-01 2010-06-03 Micron Technology, Inc. Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices
US8140780B2 (en) 2008-12-31 2012-03-20 Micron Technology, Inc. Systems, methods, and devices for configuring a device
US8214672B2 (en) 2009-01-07 2012-07-03 Micron Technology, Inc. Method and systems for power consumption management of a pattern-recognition processor
US20100174887A1 (en) 2009-01-07 2010-07-08 Micron Technology Inc. Buses for Pattern-Recognition Processors
US8281395B2 (en) 2009-01-07 2012-10-02 Micron Technology, Inc. Pattern-recognition processor with matching-data reporting module
US8843523B2 (en) 2009-01-12 2014-09-23 Micron Technology, Inc. Devices, systems, and methods for communicating pattern matching results of a parallel pattern search engine
US9836555B2 (en) 2009-06-26 2017-12-05 Micron Technology, Inc. Methods and devices for saving and/or restoring a state of a pattern-recognition processor
US8489534B2 (en) * 2009-12-15 2013-07-16 Paul D. Dlugosch Adaptive content inspection
US8648621B2 (en) * 2011-12-15 2014-02-11 Micron Technology, Inc. Counter operation in a state machine lattice
US8782624B2 (en) * 2011-12-15 2014-07-15 Micron Technology, Inc. Methods and systems for detection in a state machine
US9443156B2 (en) * 2011-12-15 2016-09-13 Micron Technology, Inc. Methods and systems for data analysis in a state machine
US8593175B2 (en) * 2011-12-15 2013-11-26 Micron Technology, Inc. Boolean logic in a state machine lattice
US9448965B2 (en) * 2013-03-15 2016-09-20 Micron Technology, Inc. Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine
US10019311B2 (en) * 2016-09-29 2018-07-10 Micron Technology, Inc. Validation of a symbol response memory

Also Published As

Publication number Publication date
US8489534B2 (en) 2013-07-16
TWI433520B (zh) 2014-04-01
US20170278002A1 (en) 2017-09-28
US20190180191A1 (en) 2019-06-13
WO2011081800A1 (en) 2011-07-07
US20110145182A1 (en) 2011-06-16
US10235627B2 (en) 2019-03-19
US20130290235A1 (en) 2013-10-31
CN102714660B (zh) 2015-06-03
EP2514163B1 (en) 2020-09-02
US9684867B2 (en) 2017-06-20
KR20120093441A (ko) 2012-08-22
EP2514163A1 (en) 2012-10-24
KR101724778B1 (ko) 2017-04-07
TW201145940A (en) 2011-12-16
CN102714660A (zh) 2012-10-03
JP2013513895A (ja) 2013-04-22

Similar Documents

Publication Publication Date Title
JP5701316B2 (ja) 適応型コンテンツ・インスペクション
US10038706B2 (en) Systems, devices, and methods for separating malware and background events
CN111433736B (zh) 机器控制系统以及机器控制方法
US11176141B2 (en) Preserving emotion of user input
CN111817960B (zh) 流控设备的报文转发方法及装置
US20150244737A1 (en) Detecting malicious advertisements using source code analysis
JP2006119625A (ja) 音声認識における動詞誤りの回復
CN107844992A (zh) 评论信息处理方法、装置、终端设备及存储介质
CN109600681B (zh) 字幕显示方法、装置、终端及存储介质
US9544360B2 (en) Server-based system, method, and computer program product for scanning data on a client using only a subset of the data
CN113761527A (zh) 一种反弹shell进程检测方法、装置、设备及存储介质
CN114298039A (zh) 敏感词识别方法、装置、电子设备及存储介质
US20240095289A1 (en) Data enrichment systems and methods for abbreviated domain name classification
CN109960752B (zh) 应用程序内的查询方法、装置、计算机设备和存储介质
JP2010045774A (ja) マルチキャスト向けコンテンツの効率的な配信に関するパケットのタグ付け
CN108173716B (zh) 一种识别网络设备厂商的方法和计算设备
WO2016101737A1 (zh) 搜索查询方法和装置
US9639611B2 (en) System and method for providing suitable web addresses to a user device
CN115277076B (zh) 侧信道攻击防御方法及系统、存储介质和电子设备
JP2005352536A (ja) 代替ファイル取得方法、システム、プログラム及び記録媒体
CN112800948A (zh) 一种基于图像识别的分步式验证方法、装置和电子设备
JP2005284914A (ja) 文字列表示システム及び特定文字列抽出システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130904

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140422

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140722

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140722

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140815

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141226

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20141226

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: 20150127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150217

R150 Certificate of patent or registration of utility model

Ref document number: 5701316

Country of ref document: JP

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