JP2014042290A - ネットワークにおけるトラフィックを監視する方法および装置 - Google Patents
ネットワークにおけるトラフィックを監視する方法および装置 Download PDFInfo
- Publication number
- JP2014042290A JP2014042290A JP2013206575A JP2013206575A JP2014042290A JP 2014042290 A JP2014042290 A JP 2014042290A JP 2013206575 A JP2013206575 A JP 2013206575A JP 2013206575 A JP2013206575 A JP 2013206575A JP 2014042290 A JP2014042290 A JP 2014042290A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- flow
- protocol
- state
- search
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/205—Quality of Service based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5009—Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0847—Transmission error
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Traffic Control Systems (AREA)
Abstract
【解決手段】方法は、パケット捕捉装置からパケットを受信する段階と、パケットに関して1つ又はそれ以上の分解/抽出作業を実行し、パケットの選択された部分の関数より成る分解レコードを作成する段階より成る。この方法は更に、以前に遭遇した会話フローに関するゼロ又はそれ以上のフロー・エントリより成るフロー・エントリ・データベースを探索する段階より成る。パケットが既存のフローのものである場合は、パケットを発見された既存のフローに属するものとして分類し、およびパケットが新たなフローのものである場合は、新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含むフロー・エントリ・データベース内に、新たなフローのための新規フロー・エントリを格納する。
【選択図】図3
Description
本発明は、コンピュータ・ネットワークに関し、特に、データ・ネットワーク内で通信されるパケットのリアル・タイムにおける明確化に関し、プロトコルおよびアプリケーション・プログラムに従う分類を包含する。
本願は、本発明の譲受人であるAPPTITUDE,Inc.に譲渡された1999年6月30日に出願された“METHOD AND APPARATUS FOR MONITORING TRAFFIC IN A NETWORK”と題する発明者Dietz等による米国仮特許出願番号60/141,903に関連する。
本件特許書類の明細書の部分は著作物的保護を受けるものを包含する。著作権者は、特許商標庁の特許ファイル又は記録において行われるような特許書類または特許明細書に関する他人による複写再生について異議を唱えないが、他の場合については著作権に関するいかなる権利をも留保するものとする。
ネットワーク活動監視に関する必要性が従来から切望されている。しかしながら、この要請は、最近普及しているインターネットおよび他のインターネットによって特に切望されるようになっている――「インターネット」は複数の相互接続されたネットワークであり、より大きな単独のネットワークを形成するものである。ネットワーク上で1つ又はそれ以上のサーバからサービスを受けるクライアントの集合として使用されるネットワークの成長とともに、それらサービスの利用を監視(モニタ)することおよびそれらを評価することが可能であることが一層重要である。例えばどのサービス(すなわちアプリケーション・プログラム)が利用されているか、誰がそれらを使用しているか、どの程度の頻度でアクセスされているかおよびどの程度の期間であるかのような客観的情報は、これらのネットワークの保守および継続的動作において非常に重要である。特に、リアル・タイムでネットワーク利用に関する報告を作成するために、選択されたユーザが遠隔的にネットワークにアクセスすることが可能であることが重要である。同様に、リアル・タイムのネットワーク監視の要請も存在し、これは、選択されたユーザに対して、ネットワークまたはサイトに生じた問題を報知する警告を提供することができるものである。
分離したフローを導出する他のプロトコルは、遠隔手順呼出(RPC: Remote Procedure Call);かつてネットワークOLEと呼ばれていた分散要素オブジェクト・モデル(DCOM: Distributed Component Object Model)(ワシントン州レッドモンドのマイクロソフト・コーポレーション);および共通オブジェクト要求ブローカ構造(CORBA: Common Object Request Broker Architecture)を含む。RPCはサン・マイクロシステムズ(カリフォルニア州パロアルト)によるプログラム・インターフェースであり、あるプログラムが遠隔下装置内の他のプログラムを利用することを許容する。CORBAに対するマイクロソフトのものであるDCOMは、遠隔的な呼出し手順を定め、それ自身がソフトウエア・モジュールに包含されるオブジェクトが、ネットワークを通じて遠隔的に実行されることを許容する。配信されるオブジェクト間で通信するオブジェクト管理グループからの規格であるCORBAは、ネットワーク内での存否によらず、異なるプラットフォームで走る異なるプログラミング言語で記述されたプログラム(オブジェクト)を実行する方法を提供する。
様々な実施例において、本発明は以下の目的および利点の1つ又はそれ以上を達成し得るネットワーク・モニタを提供する。
・クライアントおよびサーバ間で交換されたパケットの各々を適切に分析し、会話フローの各々の現在の状態に適切な情報を維持すること。
本発明は、詳細な好適実施例を参照することによって一層理解されるであろうが、特定の実施例に本発明を限定すべきではなく、それら実施例は説明目的のためにのみ供されている。各実施例は、添付図面と共に説明される。
本明細書は、ハードウエア図および信号名を含む記述を包含する。多くの場合においてそれらの名称は充分に説明的であるが、しかしながらそうでない場合は、本願の動作および実践を理解するためには信号名は必ずしも必要でない。
図1は、全体的な参照番号100で参照される本発明によるシステム例を表現する。システム100は、様々なコンピュータ間でパケット(例えばIPデータグラム(datagram))を通信するコンピュータ・ネットワーク102を有し、例えばクライアント104−107およびサーバ110,112の間で行われる。このネットワークは概略的に示され、いくつかのネットワークノードを雲として表現し、その雲の内側にリンクが示される。モニタ108は、本発明の一形態に従って、両方向にその接続点121を通過するパケットを調査し、各パケットが関連するアプリケーション・プログラムが何であるかを明確にすることが可能である。モニタ108は、サーバ110のネットワーク・インターフェース116とネットワークとの間のパケット(すなわちデータグラム)を調査する。また、モニタは、ネットワーク内の他の場所に配置されることも可能であり、例えば、ネットワーク102およびクライアント104のインターフェース118の間の接続点123、またはネットワーク102内のどこかの接続点125で概念的に示されるような他の場所が可能である。ネットワーク上の位置123におけるネットワーク・パケット捕捉装置は図示されておらず、これは、ネットワーク上の物理情報をモニタ108への入力用パケットに変換するものである。このようなパケット捕捉装置は一般的なものである。
図3は、コンピュータのハードウエア及び/又はソフトウェアで実装されることが可能な、本発明の実施例におけるネットワーク・パケット・モニタ300を示す。このシステム300は、図1のモニタ108と同様である。調査されるパケット302は、例えば、ネットワーク102(図1)内の場所121におけるパケット捕捉装置からのもので、そのパケットは、例えばその性質を判別する試みにおいて評価される。その性質とは、例えばそのパケットを生成したサーバ・アプリケーションが何であるかを含む複数階層モデルにおけるプロトコル情報全てである。
図4は、コンパイル・プロセスを含む初期化システム400の概略図を示す。これは初期化の一部であり、パターン構造および抽出作業データベース308と、状態命令データベース328を生成する。このような初期化はオフラインでまたは中央位置から行われ得る。
パケット分解および抽出動作を生成することは、3次元構造(ある実施例)又はPRDに対する総ての探索テーブルを構築および結びつける(リンクする)点に留意すべきである。
システム内でデータが流れる個々のハードウエア要素が夫々図10および図11に関連して説明される。以下、図3の本願実施例の特定のハードウエアを説明するが、図3のフローは、1つ又はそれ以上の汎用プロセッサ上を走るソフトウエアでも実行可能であり、あるいは部分的にハードウエアで実現されることも可能であることは当業者に明らかであろう。ソフトウエアで実行可能な本願の実施例は図14に示される。ハードウエア例(図10および図11)は1秒当たり100万パケットに及ぶ場合でも動作可能であるが、図14のソフトウエア・システムは、より遅いネットワークに適している。当業者にとって、プロセッサが高速化されるにつれて更なるシステムがソフトウエアで実現可能であることは明らかであろう。
署名を形成するために使用したパケットの選択された部分総てが抽出されると、分解出力バッファ・メモリ1010にハッシュがロードされる。更なる分析のために必要とされるパケットからの任意の付加的なペイロードも包含される。分解出力メモリ1010は、分析インターフェース制御1011により分析サブシステムとのインターフェース機能を行う。ひとたびパケットの情報の全てが分解出力バッファ・メモリ1010内にあると、データ準備完了信号1025が分析インターフェース制御によってアサートされる。分析準備完了信号1027がアサートされると、分解サブシステム1000からのデータは、1013を通じて分析サブシステムに移動させられる。
図15は、ネットワーク・モニタ300がネットワーク102内でどのようにしてトラフィックを分析するために使用されるかの例を示す。パケット捕捉装置1502は、ネットワーク102上の接続点121から総てのパケットを捕捉し、両方向における地点121を通過する全パケットがモニタ300に供給される。モニタ300は、フロー署名を判別する分解サブシステム301と、各パケットのフロー署名を分析する分析サブシステム303とを有する。メモリ324を利用して、モニタ300で判別および更新されたフローのデータベースを格納する。例えば汎用コンピュータのような任意のプロセッサであり得るホスト・コンピュータ1504は、メモリ324内のフローを分析するために使用される。従来と同様に、ホスト・コンピュータ1504は、ホスト・メモリ1506として示される例えばRAMのようなメモリを有する。更に、ホストはディスクを含むことも可能である。ある応用例では、システムがRMONプローブとして動作可能であり、ホスト・コンピュータは、ネットワーク102に接続されるネットワーク・インターフェース・カード1510に結合される。
モニタ300は、特に分析器303は、パケット交換に関して状態分析を実行することが可能であり、これは一般に「サーバ通知(server announcement)」形式の交換として言及される。サーバ通知は、複数のクライアントから同時にアクセスされることの可能な複数のアプリケーションに関し、サーバ間における通信を容易にするために使用されるプロセスである。多くのアプリケーションは、サーバ通知プロセスを、単独ポート又はソケットを多くのアプリケーションおよびサービスに多重化する手段として使用する。この種の交換に関し、メッセージがブロードキャスト又はマルチキャストの手法でネットワーク上で伝送され、サーバおよびアプリケーションを通知し、ネットワーク内の総ての局(station)がこれらのメッセージを受信およびデコードしうる。そのメッセージは、特定のサーバに関する特定のアプリケーションを通信するために適切な接続点を、局が導出することを可能にする。サーバ通知の手法を利用して、特定のアプリケーションは、IPプロトコル・スイートにおけるようなTCP又はUDPソケット又はポートの形のサービス・チャネルの利用、またはノベル(Novell)IPXプロトコル・スイートにおけるようなSAPの利用を通信する。
サーバ通知プロトコルの個別的な方法には様々なものがある。しかし、根底にある基本は同様なものである。典型的なサーバ通知メッセージが、ネットワークにおいて1つ又はそれ以上のクライアントに送出される。この形式の通知メッセージは、特定の内容を有し、本願の他の実施例ではシステム内のフロー・エントリのデータベース内でサルベージおよび維持される。通知は1つ又はそれ以上の局(station)に送られるので、そのサーバとの将来的なパケット交換に関わるクライアントは、通知された情報が知られていることを想定し、本願のモニタもある側面では同様のことを想定する。
番号‘ポート’がもはやプログラム‘プログラム’に関連しなくなるまで、今後ポート番号‘ポート’が利用されるたびに、パケットがアプリケーション・プログラム‘プログラム’に関連付けられるのが好ましい。フロー・エントリおよび署名を形成することによってネットワーク・モニタ300は、交換を思い出すための機構を有し、ポート番号‘ポート’を利用する将来のパケットが、ネットワーク・モニタによってアプリケーション・プログラム‘プログラム’と関連付けられるようにする。
サンRPC拘束探索要求および返答に加えて、たとえば‘プログラム’である特定のプログラムが、例えば番号‘ポート’の特定のポート番号に関連付けられうる他の方法も存在する。1つは、アプリケーション・サービスとポート番号との間の特定の関連付けのブロードキャスト通知によるものであり、サンRPCポート・マッパ通知と呼ばれる。他のものは、たとえば同一のサーバ2であるサーバが、RPCポート・マッパ返答を用いて、ポートマッパ割当を要求する例えばクライアント1であるクライアントに対して返信する場合のものである。たとえばクライアント2である他のクライアントは、この要求をひょんなことから見ることがあり、そして、その特定のサーバ2に対してポート番号‘ポート’がアプリケーション・サービス‘プログラム’に関連付けられることを知る。ネットワーク・モニタ300は、ポート番号‘ポート’を利用するサーバ2に対する任意のパケットを、アプリケーション・プログラム‘プログラム’と関連付けることが可能であることが好ましい。
・プロセス909:‘プログラム’,‘バージョン’および‘プロトコル’(TCPまたはUDP)の抽出。サンRPCを示すところの111であるTCPまたはUDPポート(プロセス909)の抽出。
この交換の結果として形成されるフロー署名およびフロー状態について説明する。パケット・モニタ300がクライアントからのリクエスト・パケット206を見出すと、パターンおよび抽出作業データベース308に従って、第1フロー署名210が分解サブシステム301内で形成される。この署名210は、あて先およびソース・アドレス240,241を含む。本発明の側面の1つは、会話の方向がどうであれ、特定の順序でフロー・キーが一貫して形成されることである。これを達成するためにいくつかの機構が使用される。特定の実施例では、数値的に高いアドレスの前に常に数値的に低いアドレスが配置される。そのような最小から最大への順序を利用して、探索動作に対して署名およびハッシュの最良の分散が得られる。したがってこの場合、「S1」<「C1」を仮定しているので、順序はアドレス「S1」にクライアント・アドレス「C1」が続くというものである。署名を形成するために使われる次のフィールドは、パケット206のフィールド216から抽出したプロトコル・フィールド242であり、従ってプロトコル「p1」である。署名のために使用される次のフィールドはフィールド243であり、これは、パケット206の斜交線を付けたパターンのフィールド218からのあて先ソース・ポート番号を含む。このパターンは、パケットのペイロードにおいて認識され、パケット又はパケットのシーケンスがフローとしてどのように存在するかを導出する。実際には、これらはTCPポート番号またはTCPポート番号の組み合わせであり得る。サンRPCの例の場合、斜交線の部分は、p1に対するUDSのポート番号群を表現し、このフローを認識するために使用される(例えばポート111)。ポート111は、これがサンRPCであることを示す。サンRPC拘束探索のようないくつかのアプリケーションは、分解レベルで直接的に判別可能である(「既知」)。この場合、署名、キー1は、「a1」(サンPRC拘束探索)で記される既知のアプリケーションを指し、状態プロセッサがより複雑な認識作業に進むべきところの次の状態が、状態「stD」と記され、フロー・エントリのフィールド245に位置される。
サンPRC拘束探索返答が捕捉されると、再びフロー署名が分解装置によって形成される。このフロー署名はキー1に一致する。したがって、署名が分解サブシステム301から分析サブシステム303に入ると、完全なフロー・エントリが得られ、そのフロー・エントリは状態「stD」を示す。状態プロセッサ命令データベース326における状態「stD」に関する動作が、状態プロセッサに対して、図2のキー2(212)として示されるような新たなフロー署名を形成および格納するよう命令する。状態プロセッサによって形成されたこのフロー署名は、あて先およびソース・アドレス250,251を含み、これらのアドレスはサーバに対する「S1」の後に(数値的に高いアドレスの)クライアント「C1」が続いたものである。プロトコル・フィールド252は、返答パケットから取得された例えば「p2」のような使用されるプロトコルを定める。フィールド253は、やはり返答パケットから取得される認識パターンを含む。この場合、アプリケーションはサンRPCであり、フィールド254はこのアプリケーション「a2」を示す。次の状態フィールド255は、例えば状態「st1」であるような、状態プロセッサがより複雑な認識作業に進むべきところの次の状態を定める。この特定の実施例ではこれが最終状態である。こうして、キー2は、アプリケーション「a2」に何らかの形で関連したパケットを認識するために使用されうる。そのような2つのパケット208,209が、各方向に付き1つ示されている。これらは、当初の拘束探索要求において要求された特定のアプリケーション・サービスを利用し、署名、キー2が各々の場合において形成されるので各々は認識される。
状態プロセッサ1108は、アプリケーションによって分類するために、新規のおよび既存のフローの両者を分析する。開発者によって定められた規則に基づいて、状態から状態へ進行することによってこれを行う。規則は、検査と、それに続く、検査が真である場合に進むべき次の状態である。検査が真である、又は実行する状態がなくなるまで、状態プロセッサ1108は各規則を経て進行する。状態プロセッサ1108は、分解サブシステム1000によって認識された最終プロトコルを、ジャンプ・テーブル(ジャンプ・ベクトル)内へのオフセットとして使うことによってプロセスを開始する。ジャンプ・テーブルはそのプロトコルに対して使用する命令に我々を案内する。多くの命令は、一体化フロー・キー・バッファ1103又は存在するならばフロー・エントリにおける何かを検査する。状態プロセッサ1108は、検査を実行するためのビットの検査、比較の実行、加算又は減算を行う必要があることがある。
状態プロセッサALU1907は、状態プロセッサ命令を実装するために必要な算術機能、論理機能およびストリング比較機能のすべてを含む。SPALU1907の主要なブロックは:AレジスタおよびBレジスタ、命令デコードおよび状態マシン、参照ストリング・メモリ、探索エンジン1930、出力データ・レジスタおよび出力制御レジスタである。
以下、状態プロセッサ1108で利用可能ないくつかの命令を説明する。典型的には状態プロセッサにアセンブラは与えられない点に留意すべきである。なぜなら、典型的にはエンジニアはこのプロセッサ用のコードを書く必要がないからである。コンパイラが、コードを書き込み、それをプロトコル・リスト(PDLファイル)で定められたプロトコルに基づいて状態プロセッサ命令データベースにロードする。
移動命令セットは、異なる大きさのワードをソースからあて先へ移動することを取り扱う特殊な移動命令を含む。移動命令のセットは、ワード・サイズが常に合致することを保障するように開発され、32ビットおよび16ビット移動命令を含む。
比較命令は、ALU1907が比較動作を実行し、一致したストリング情報による合致信号を返すように命令する。比較動作は、最初のキャラクタがUFKB内の既知の位置にある目標データと、参照ストリング・メモリ内の既知の参照ストリングとを比較する。この命令の実行に先立って、SPUFKBアドレス発生器1911は、目標キャラクタを指すアドレスをロードされる。ALU参照メモリ内のある位置(ロケーション)が、比較用の参照キャラクタのリストを保持する。
この命令は、10進値を表現するアスキー・コード・ストリングの位置を引き渡す。その結果は、2進の等価な値である。これは1サイクルで実行される。
この命令は、16進値を表現するアスキー・コード・ストリングの位置を引き渡す。その結果は、2進の等価な値である。これは1サイクルで実行される。
[イン・ファインド](In_Find)
[継続イン・ファインド](In_Find_Continue)
これらの命令は、探索エンジン1930の更なる説明において説明される。
モニタ300の1つの特徴は、パケットの一つ一つ総てをリアル・タイムで分析する能力である。ネットワーク・トラフィックは非常に高速に動きうる。状態プロセッサ1107の仕事(タスク)の1つは、1つ又はそれ以上の既知のデータ・ストリングを探索することである。このような探索は、UFKBレコードに対して、例えばレコードのペイロードの部分において実行される。探索は、レコードの既知の部分におけるものであり得るし、またはUFKBレコードのペイロード部分のどこかというようなレコードの未知の部分におけるものでもあり得る。さらに、探索は極めて高速に行われることを要することがありうる。
イン・ファインド命令は、ALU探索エンジンに情報を提供し、探索動作を実行し、一致したストリング情報と、ストリングが見出されたターゲット内の位置に従って一致信号を返す。
イン・ファインド(In_Find)[参照ストリング・アレイ・アドレス],[UFKBバイト・オフセット],[範囲]
・ジャンプ_ベクトル[15:0]−参照ストリング・アレイに格納されたベクトルであり、参照ストリングが見出された場合に状態プロセッサがどの命令に(例えばサブルーチンへ)ジャンプするかを示す。
In_Load_FKAG, payload address
In_Find, 0050(16), 5, 60(16)
範囲は、100−5+1=96=60(16)となる。
In_Find [Reference String Address], 2, 19(16)
2A(16)−12(16)=19(16)となる点に留意すべきである。
この命令は、イン・ファインド命令に続き、最後のストリングが見出されたその位置から始まる探索(Find)動作を実行するようALU探索エンジン1930に告げ、一致ストリング情報および目標ストリングが見出された位置に従って一致信号を返す。この命令の目的は、新規の参照ストリングに対して、先の探索が終了した場所から始まる探索を支援することである。したがって、探索エンジンはその以前の探索が終了した位置を覚えているのでオフセットは供給されない。
継続インファインド(In_Find_Continue)[参照ストリング・アレイ・アドレス],[0],[範囲]
この事例の命令フォーマットは、次のようにすることができる:
In_Load_FKAG, payload address
In_Find, 0050(16), 5, 60(16)
・・・
In_Find_Continue, 0080(16), 5, 30(16)
範囲は、100−5+1=96=60(16)となる。
(a)ALUストリング参照メモリ2003であって、そこに参照ストリングが格納される。
探索が成功した場合は、ソース(UFKB)アドレス・ポインタは調整される必要がある。探索が成功した場合は、一致信号2111がアクティブになり、参照ストリングの第1バイトの位置が、位置バス2113上に置かれる。SE_SM状態マシン2107は、クロック・サイクル毎にいくつかの仕事を実行する。状態マシン2107には3つの状態がある:リセット、アイドルおよびプロセスである。アイドル状態では、状態マシン2107は、SE_ロード・モジュール2015からの信号を待ち受け、プロセス状態に切り替わる。プロセス状態における第1クロック・サイクルの間に、一致が発生すると、その位置がバイト・オフセット2115に対して検査される。バイト・オフセットがその位置よりも大きい場合は、それは無視され、すなわち「発見」はアサートされない。同様に、それが検査すべき最終ワードである場合は、終了オフセット・バイトがその位置に関して検査され、その位置が範囲2117で検査される最終バイトより大きい場合は、「発見」は無視される。そうでない場合は、一致が探索エンジン・コア2105によって見出されると、発見信号がアサートされ、その位置がラッチされ、SE_INCモジュール2023に転送される。
図11を再び参照する。キャッシュ・サブシステム1115は、探索更新エンジン(LUE)1107と、状態プロセッサ(SP)1108と、フロー挿入/削除エンジン(FIDE)1110に接続されている。キャッシュ1115は、メモリ1123に格納されたフロー・エントリ・データベースのフロー・エントリ群を維持し、これは一体化メモリ・コントローラ1119を通じてメモリ1123に接続される。本発明の一実施例によれば、キャッシュ内のこれらのエントリは次にアクセスそうなものである。
(1)LRUダーティ・ライト・バック。ダーティである場合に、キャッシュは最も長く未使用であるキャッシュ・メモリ・エントリを書き戻し、キャッシュ・ミスに関する取得用のスペースが常に存在するようにする。
キャッシュ・メモリから、および探索/更新エンジン(LUE)1107、状態プロセッサ(SP)またはフロー挿入/削除エンジン(FIDE)からキャッシュ・メモリへのデータ探索および更新は、キャッシュ・メモリ・ページ2603の他の入力および出力ポートを使用する。入力選択マルチプレクサ2605のバンクおよび1組の出力選択マルチプレクサ2607は、選択信号群2619を利用して入力および出力エンジンを夫々選択する。
異なる階層に存在し得る異なるプロトコルは、リンクされたノードの1つまたはそれ以上のツリーのノードとして考えることができる。パケット形式はツリーのルート(ベース・レベルと呼ばれる)である。各プロトコルは、次の階層の何らかの他のプロトコルの親ノードであるかまたは端末ノードであるかの何れかである。親ノードは、プロトコルを、より高位の階層レベルに位置し得る他のプロトコル(子プロトコル)にリンクする。このように、プロトコルはゼロ個以上の子をもちうる。
1.タイプ識別子[1:M]。これは、特定のレベルにおけるプロトコルの形式を識別する識別子である。例えば、01はイーサーネット・フレームを示す。64はIPを、16はIEEE形式イーサーネット・パケットを示す、などである。パケット分解装置が取り扱うことの可能なプロトコル数に依存して、Mを大きな数とすることが可能であり;更なるプロトコルを分析する能力がモニタ300に付加されたりして、Mを時間と共に変化させることも可能である。3D構造が2D構造の集合として考えられる場合には、タイプIDは特定の2D構造に対する指標である。
(1,2,1) (1,2,2)
(1,3,1) (1,3,2)
(1,4,1) (1,4,2)
探索の各段階において、分析プロセス304はパケットおよび3Dデータ構造を調査し、一致の存否を調べる(ノード・コードを調べることによって)。たとえばノード・コードを利用して、有効なデータ見出されなかった場合は、そのサイズがインクリメントされ(最大で4)、その後オフセットもインクリメントされる。
エントリが値(例えば子プロトコルIDについての値)または長さ(子プロトコルを判別するための更なる分析を示す)であるこの機能は、イーサーネット・パケットに対してだけ使用されるが、将来的には他のパケットにも最終的には応用され得る。したがって、PDLファイルでマクロの形式のこの機能は、そのような将来的なパケットがデコードされることを可能にする。
上述したように、3Dデータ構造は非常に大きく、要素がまばらに散在する。例えば、各ロケーションに32バイト格納されているとすると、長さはM*64*512*32バイトになり、これはMメガバイトである。もしM=10000ならば、これは約10ギガバイトになる。データベース308を格納するための分解サブシステムに10Gバイトのメモリを含めることは現実的ではない。したがって、好適実施例では、データを格納する圧縮された形式が使用される。圧縮は、コンパイル・プロセス310の最適化要素によって実行されることが好ましい。
コンパイル・プロセス310を詳細に説明する。このプロセス310は、分解パターンおよび抽出データベース308を生成することを含み、このデータベースがパケットを分解するためおよび識別する情報を抽出するために必要な情報を分解サブシステム301に提供する。プロセス310は、状態プロセス命令データベース326を生成することも含み、これは状態プロセス動作328で実行される必要がある状態プロセスを提供する。
ここに含まれるものは、ページ記述言語(PDL)に関する参照ガイド(「ガイド」)であり、本発明の一形態において、これは分解および分析サブシステムで使用されるデータベースの自動生成を可能にし、新規のおよび修正されたプロトコルおよびアプリケーションを包含する能力をモニタに与える。
本件特許書類の明細書の部分は著作物的保護を受けるものを包含する。著作権者(かつてテクニカリ・エリート,インク.(Technically Elite, Inc.)であったカリフォルニア州のアプティチュード,インク.(Apptitude, Inc.))は、特許商標庁の特許ファイル又は記録において行われるような特許書類または特許明細書に関する他人による複写再生について異議を唱えないが、他の場合については著作権に関するいかなる権利をも留保するものとする。
1. はじめに
本発明に関するプロトコル定義言語(PDL)は、ネットワーク・プロトコルおよびプロトコル・ヘッダ内の全フィールドを記述するために使用される特定目的の言語である。
PDLは、非手続的な(non-procedural)第4世代言語(4GL)である。これは、行う方法(how)を記述することなしに、行う必要のあることを記述することを意味する。どのように行うか(how)の詳細はコンパイラおよびコンパイル・プロトコル・レイアウト(CPL)最適化ユーティリティに隠されている。
本ガイドを通じて以下の規約が使用される。
メータフローPDLはデコードし、フロー・セットはステートメントの空でない(non-empty)シーケンスである。メータフローPDLで利用可能なステートメントまたは定義の基本形式が4つ存在する:
フィールド,
グループ,
プロトコルおよび
フロー
である。
フィールド定義は、パケット中のビットまたはバイトの特定のストリングを定めるために使用される。フィールド定義は以下のフォーマットを有する:
Name FIELD
SYNTAX Type [{Enum}]
DISPLAY-HINT “FormatString”
LENGTH “Expression”
FLAGS FieldFlags
ENCAP FieldName [, FieldName2]
LOOKUP LookupType [Filename]
ENCODING EncodingType
DEFAULT “value”
DESCRIPTION “Description”
フィールド〔FIELD〕およびシンタックス〔SYNTAX〕・ラインのみが要求される。他のラインの総ては属性ラインであり、フィールドに関する特殊な性質を定める。属性ラインは選択的であり、順序を問わず出現し得る。以下、属性ラインの各々を更に説明する:
2.1.1 シンタックス形式〔SYNTAX Type〕[{Enums}]
この属性は形式(Type)を定め、その形式が、INT,バイトストリング,ビットストリングまたはSNMPシーケンス形式である場合は、そのフィールドに関して列挙された値である。目下定義されている形式は以下のとおりである:
この属性は、フィールドの値がどのようにして表示されるかを特定するためのものである。現在使用可能なフォーマットは、以下のとおりである:
この属性はフィールドの長さを決定するための表現を定める。表現は算術的であり、参照されるフィールド名に$を付加することによって、パケット中の他のフィールドの値に言及することが可能である。例えば、tcpHeaderLenが現在のパケットに関して定められた他のフィールドである場合に、“($tcpHeaderLen*4)-20”は、有効な表現である。
この属性はフィールドに関するいくつかの特殊なフラグを定める。現在使用可能なフィールドフラグは、以下のとおりである:
この属性は、1つのパケットが他のものの中にどのようにして包含されるかを定める。フィールド名のフィールドの値によって、どのパケットであるかが決定される。フィールド名を利用しても何らのパケットも発見されなかった場合は、フィールド名2が試行される。
この属性は、特定のフィールド値に対する名称を探索する方法を定める。現在使用可能な探索形式は、以下のとおりである:
この属性は、フィールドがどのようにしてエンコードされるかを定める。現在のところ唯一使用可能なエンコード形式は、ASN.1によって定められる基本エンコード規則(BER: Basic Encode Rules)である。
この属性は、このプロトコルのサンプル・パケットを生成する場合に、そのフィールドに対して使用されるデフォルト値を定める。
この属性は、フィールドの記述を定める。これは情報提供の目的のためにのみ使用される。
グループ定義は、いくつかの関連するフィールドを共に結びつけるために使用される。グループ定義は以下のフォーマットを有する:
Name GROUP
LENGTH “Expression”
OPTIONAL “Condition”
SUMMARIZE “Condition”:“FormatString”[
“Condition”:“FormatString”...]
DESCRIPTION “Description”
::= { Name=FieldOrGroup [,
Name=FieldOrGroup...]}
グループ〔GROUP〕および::=ラインのみが要求される。他の総てのラインは属性ラインであり、グループに関する特殊な性質を定める。属性ラインは選択的であり、順序を問わず出現し得る。以下、各属性ラインを更に説明する:
2.2.1 長さ“表現”〔LENGTH “Expression”〕
この属性はグループの長さを決定するための表現を定める。表現は算術的であり、参照されるフィールド名に$を付加することによって、パケット中の他のフィールドの値に言及することが可能である。例えば、tcpHeaderLenが現在のパケットに関して定められた他のフィールドである場合に、“($tcpHeaderLen*4)-20”は、有効な表現である。
この属性は、グループの存否を判定するための条件を定める。有効な条件は、以降の条件部分で定められる。
この属性は、詳細モードにおいて、グループがどのようにして表示されるかを定める。異なるフォーマット(フォーマットストリング)が、各条件に関して特定され得る。有効な条件は、以降の条件部分で定められる。$を有するフィールド名で処理を進めることによってフォーマットストリング内において任意のフィールド値が参照され得る。フィールド名に加えて、いくつかの他の特殊な$キーワードが存在する:
この属性は、グループ内でのフィールドおよびサブグループの順序を定める。
プロトコル定義は、そのプロトコル・ヘッダにおけるフィールドおよびグループの順序を定めるために使用される。プロトコル定義は以下のフォーマットを有する:
Name PROTOCOL
SUMMARIZE “Condition”:“FormatString”[
“Condition”;“FormatString”...]
DESCRIPTION “Description”
REFERENCE “Reference”
::={Name=FieldOrGroup [,
Name=FieldOrGroup...]}
プロトコル〔PROTOCOL〕および::=ラインのみが要求される。他の総てのラインは属性ラインであり、プロトコルに関する特殊な性質を定める。属性ラインは選択的であり、順序を問わず出現し得る。以下、各属性ラインを更に説明する:
2.3.1 要約“条件”:“フォーマットストリング”[“条件”:“フォーマットストリング”]〔SUMMARIZE “Condition”:“FormatString”[“Condition”:“FormatString”...]〕
この属性は、要約モードにおいて、プロトコルがどのようにして表示されるかを定める。異なるフォーマット(フォーマットストリング)が、各条件に関して特定され得る。有効な条件は、以降の条件部分で定められる。$を有するフィールド名で処理を進めることによってフォーマットストリング内において任意のフィールド値が参照され得る。フィールド名に加えて、いくつかの他の特殊な$キーワードが存在する:
この属性はプロトコルの記述を定める。これは情報提供目的のためにのみ使用される。
2.3.3 参照“参照”〔REFERENCE “Reference”〕
この属性はプロトコルフォーマットを決定するために使われる参照素材を定義する。これは情報提供目的のためにのみ使用される。
この属性は、プロトコル内でのフィールドおよびグループの順序を定める。
フロー定義は、アドレス、プロトコル形式およびポート番号が、パケット中のどこにあるかを記述することによって、ネットワーク・フローを定めるために使用される。フロー定義は以下のフォーマットを有する:
Name FLOW
HEADER {Option [, Option...]}
DLC-LAYER {Option [, Option...]}
NET-LAYER {Option [, Option...]}
CONNECTION {Option [, Option...]}
PAYLOAD {Option [, Option...]}
CHILDREN {Option [, Option...]}
STATE-BASED
STATES “Definitions”
フロー〔FLOW〕・ラインのみが要求される。他の総てのラインは属性ラインであり、フローに関する特殊な性質を定める。属性ラインは選択的であり、順序を問わず出現し得る。しかし、少なくとも1つの属性ラインが存在することを要する。以下、各属性ラインを更に説明する:
2.4.1 ヘッダ{オプション,[,オプション]}〔HEADER {Option [, Option...]}〕
この属性は、プロトコル・ヘッダの長さを記述するために使用される。現在使用可能なオプションは、以下のとおりである:
プロトコルがデータ・リンク階層プロトコルである場合、この属性がそれを記述する。現在使用可能なオプションは、以下のとおりである:
プロトコルがネットワーク階層プロトコルである場合に、この属性がそれを記述する。現在使用可能なオプションは、以下のとおりである:
プロトコルが接続指向の(connection-oriented)プロトコルである場合に、この属性は、接続がどのようにして確立されおよび消滅させられるかを記述する。現在使用可能なオプションは、以下のとおりである:
この属性は、分析における後の使用のために格納されるこの種のパケットからのペイロードがいくらであるかを記述する。現在使用可能なオプションは、以下のとおりである:
この属性は、子プロトコルがどのようにして決定されるかを記述する。現在使用可能なオプションは、以下のとおりである:
この属性は、プロトコルの子フローが状態を利用してどのように決定されるかを記述する。これらの状態がどのようにして定められるかについては、以下の状態定義の部分を参照されたい。
条件は、オプション〔OPTIONAL〕および要約〔SUMMARIZE〕の属性と共に使用され、以下の要素より成ることが可能である:
ネットワーク上を走る多くのアプリケーションは、複数の状態の利用を通じて、トラフィックを分類する複雑な方法を利用する。ネットワークから導出されたトラフィックから学習した状態を管理および維持するために状態定義が使用される。
StateName: Operand Parameters [Operand Parameters...]
特定のフローの様々な状態が、以下のオペランドを利用して記述される:
2.6.1 チェック接続(CHECKCONNECT),オペランド
接続に関する検査。接続されるとオペランドを実行する。
現在のパケットを利用して、その状態へ向かう。
次のパケットを利用して、その状態へ向かう。
他の総てのオペランドが失敗した場合に、そのオペランドを実行する。
子プロトコルにジャンプし、その子において(存在すれば)状態ベース処理を実行する。
特定されたパケット数だけ待機する。特定された数のパケットが受信されると、オペランド1が実行される。パケットは受信されたが、特定されたパケット数に満たない場合は、オペランド2が実行される。
パケット内でストリングを探索し、発見されるとオペランドを実行する。
パケット内で定数に関する検査を行い、発見されるとオペランドを実行する。
パケットからIPアドレスを抽出し、オペランドを実行する。
パケットからポート番号を抽出し、オペランドを実行する。
再方向付けされたフローを作成し、オペランドを実行する。
以下、PDL規則ファイルのいくつかの具体例を示す。
以下、イーサーネットに関するPDLの具体例を示す。
各フローのフロー・エントリは、そのフローに関する1組の統計的測定値を含み、そのフローにおける全パケット数、到着時間、および最後の到着からの時間差を含む。
この次の部分は、本発明の一形態に従ってサービス品質(QOS)メトリックに関して適用される共通構造を定める。また、QOSを支援するために本願実施例で判定され得る「元来の」(又は「基本の」)メトリックの組を定義する。ベース・メトリックは、状態プロセッサの一部として又はモニタ300に接続されたプロセッサによって判定され、QOSメトリックはホスト・コンピュータ1504によって基本メトリックから判定される。このような分担の理由は、完全なQOSメトリックは計算が複雑であり、その計算には、平方根や、リアル・タイムで利用可能なより多くの演算資源を要する他の関数を包含するためである。基本の関数は、リアル・タイムで計算することが容易であるよう選択され、それらに基づいて完全なQOSメトリックが決定され得る。本発明の範疇において関数の他の分担を行うことも可能である。
データのグループを表現する最も簡易な手段は、サブレンジ(部分的範囲)における周波数分布によるものである。好適実施例では、そのサブレンジ(subrange)を形成する場合においていくつかの規則がある。第1に、その範囲を知る必要がある。第2に、サブレンジの大きさが判定される必要がある。サブレンジの大きさは固定されているのが好ましいが、他の実施例においてサブレンジの大きさを可変にすることも可能である。
・ΣX Σ(ΣX)
・Σ(X2) Σ(Σ(X2))
・Xmax MAX(Xmax)
・Xmin MAX(Xmin)
上記5つの値に加えて、好適実施例のデータ構造には「トレンド(trend)」インジケータが含まれる。これは、列挙タイプによって提供される。その理由は、トレンド情報を生成する好適な方法は、その区間に対する最初の第1の値を、その区間に対する最後の値から減算することによって行われるためである。その結果生じる数の符号のみが、例えば、トレンドの指標を判別するための内容を有する。
1つ又はそれ以上の以下の様々なデータ要素が、メトリックの様々な実現化において包含される。
[CSトラフィック]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、測定されるトラフィック量に関する情報を含む。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、測定されるトラフィック量に関する情報を含む。
[CSジッタ]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定されるジッタ(例えば、パケット間ギャップ)に関する情報を含む。特に、CSジッタは、クライアントからサーバへのデータ・メッセージに関するジッタを測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定されるジッタ(例えば、パケット間ギャップ)に関する情報を含む。特に、SCジッタは、クライアントからサーバへのデータ・メッセージに関するジッタを測定する。
[CS交換応答タイム開始-開始]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、CS交換応答タイム開始-開始は、クライアントからサーバへのデータ・メッセージの開始と、サーバからクライアントへの後続応答データ・メッセージの開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、CS交換応答タイム終了-開始は、クライアントからサーバへのデータ・メッセージの終了と、サーバからクライアントへの後続応答データ・メッセージの開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、CS交換応答タイム終了-開始は、クライアントからサーバへのデータ・メッセージの開始と、サーバからクライアントへの後続応答データ・メッセージの終了との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、SC交換応答タイム開始-開始は、サーバからクライアントへのデータ・メッセージの開始と、クライアントからサーバへの後続応答データ・メッセージの開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、SC交換応答タイム終了-開始は、サーバからクライアントへのデータ・メッセージの終了と、クライアントからサーバへの後続応答データ・メッセージの開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、データ・パケットに関して測定された転送段階の応答時間に関する情報を含む。具体的には、SC交換応答タイム終了-開始は、サーバからクライアントへのデータ・メッセージの開始と、サーバからクライアントへの後続応答データ・メッセージの終了との間の応答時間を測定する。
[CS処理応答タイム開始-開始]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、CS処理応答タイム開始-開始は、クライアントからサーバへのアプリケーション処理の開始と、サーバからクライアントへの後続処理応答の開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、CSアプリケーション応答タイム終了-開始は、クライアントからサーバへのアプリケーション処理の終了と、サーバからクライアントへの後続処理応答の開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、CSアプリケーション応答タイム開始-終了は、クライアントからサーバへのアプリケーション処理の開始と、サーバからクライアントへの後続処理応答の終了との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、SC処理応答タイム開始-開始は、サーバからクライアントへのアプリケーション処理の開始と、クライアントからサーバへの後続処理応答の開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、SCアプリケーション処理応答タイム終了-開始は、サーバからクライアントへのアプリケーション処理の終了と、クライアントからサーバへの後続処理応答の開始との間の応答時間を測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、アプリケーション処理に関して測定されたアプリケーション段階の応答時間に関する情報を含む。具体的には、SCアプリケーション処理応答タイム開始-終了は、サーバからクライアントへのアプリケーション処理の開始と、クライアントからサーバへの後続処理応答の終了との間の応答時間を測定する。
[接続確立]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続確立に関する情報を含む。具体的には、「接続確立」はクライアントからサーバに設定された接続数を測定する。この情報は本質的には以下のものを含む:
・良好に確立された転送接続数。
−「自然に終了した数」
−「タイムアウトにより終了した数」
接続の設定時間は、第1転送段階,接続確立要求(すなわち、SYN,CR−TPDU等)およびその接続で交換された第1データ・パケットの間の時間差として定められる。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続で自然に終了したものに関する情報を含む。具体的には、「接続自然終了」は、接続数および接続時間合計の両者において自然に終了した接続を測定する。この情報は本質的には以下のものを含む:
・自然に終了した転送接続数。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続で自然に終了してないもの(例えば、タイムアウト)に関する情報を含む。具体的には、「接続タイムアウト終了」は、接続数および接続時間合計の両者において、以前設定されたおよびタイムアウトになった接続を測定する。この情報は本質的には以下のものを含む:
・タイムアウトになった転送接続数。
[CS接続再送信]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続の健全性(health)に関する情報を含む。具体的には、「CS接続再送信」は、確立される接続のライフタイムにおける実際の事象の数を測定し、その事象は、クライアントからサーバへのデータ・ベアリング(data-bearing)PDU(パケット)転送が再送信された事象である。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続の健全性(health)に関する情報を含む。具体的には、「SC接続再送信」は、確立される接続のライフタイムにおける実際の事象の数を測定し、その事象は、サーバからクライアントへのデータ・ベアリング(data-bearing)PDU(パケット)転送が再送信された事象である。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続の健全性(health)に関する情報を含む。具体的には、「CS接続不良」は、確立される接続のライフタイムにおける実際の事象の数を測定し、その事象は、クライアントからサーバへのデータ・ベアリング(data-bearing)PDU(パケット)転送が、シーケンス順序外れとして検出されたものである。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続の健全性(health)に関する情報を含む。具体的には、「SC接続不良」は、確立される接続のライフタイムにおける実際の事象の数を測定し、その事象は、クライアントからサーバへのデータ・ベアリング(data-bearing)PDU(パケット)転送が、シーケンス順序外れとして検出されたものである。
[CS接続ウインドウ]
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「CS接続ウインドウ」は、確立された接続ライフタイムにおける転送段階の認証数、およびクライアントからサーバへのそれらの相対的な大きさを測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「SC接続ウインドウ」は、確立された接続ライフタイムにおける転送段階の認証数、およびサーバからクライアントへのそれらの相対的な大きさを測定する。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「CS接続ウインドウ」は、確立された接続ライフタイムにおけるクライアントからサーバへの転送段階の認証の数を測定し、そのライフタイムではデータを有効に認証するが、
・上側のウインドウ端を増加させることに失敗し、または
・上側のウインドウ端を減少させる。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「SC接続ウインドウ」は、確立された接続ライフタイムにおけるサーバからクライアントへの転送段階の認証の数を測定し、そのライフタイムではデータを有効に認証するが、
・上側のウインドウ端を増加させることに失敗し、または
・上側のウインドウ端を減少させる。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「CS接続ウインドウ」は、確立された接続ライフタイムにおけるクライアントからサーバへの転送段階の認証の数を測定し、そのライフタイムでは認証/シーケンス・ウインドウを完全に閉じている。
[定義]
このメトリックは、所与のアプリケーションに関する特定のクライアント-サーバ対又は特定のサーバとそのクライアント総ての何れかに対して、転送段階の接続のウインドウ(window)に関する情報を含む。具体的には、「SC接続ウインドウ」は、確立された接続ライフタイムにおけるサーバからクライアントへの転送段階の認証の数を測定し、そのライフタイムでは認証/シーケンス・ウインドウを完全に閉じている。
[請求項1] コンピュータ・ネットワークにおける接続点を介して通過するパケットをリアル・タイムで検査するパケット・モニタであって、前記パケットは、前記接続点に結合されたパケット捕捉装置を介して前記パケット・モニタに提供され、前記パケット・モニタは:
(a) 前記パケット捕捉装置からのパケットを受け入れるように形成されたパケット・バッファ・メモリ;
(b) パケット内で使用される少なくとも1つのプロトコルを前記パケット中のデータからどのように判定するかを記述する情報を含む分解/抽出作業のデータベースを格納するよう形成される分解/抽出作業メモリ;
(c) 前記パケット・バッファおよび前記パケット/抽出作業メモリに結合される分解サブシステムであって、前記分解サブシステムは、前記バッファによって受け入れられた前記パケットを検査し、前記受け入れられたパケットの選択された部分を抽出し、前記受け入れられたパケットが会話フローの一部であることを識別するのに充分な前記選択された部分の関数を有するよう形成されるところの分解サブシステム;
(d) 前記モニタが遭遇した会話フローに関する複数のフロー・エントリを含むフロー・エントリ・データベースを格納するメモリ;
(e) 前記分解サブ・システムおよび前記フロー・エントリ・データベースに結合され、前記受け入れられたパケットの前記選択された部分の少なくとも一部を使用して、前記受け入れられたパケットの会話フロー・シーケンスに関するエントリが前記フロー・エントリ・データベース内に存在するか否かを判別するよう形成される探索エンジン;
(f) パケットの特定の会話フロー・シーケンスに起因する特定のパターン遷移の進行が、前記特定の会話フロー・シーケンスが特定のアプリケーション・プログラムの作業に関連付けられることを示し、その進行中にゼロ又はそれ以上の所定の状態作業を実行する各々の状態に遭遇するように、所定の状態遷移パターン群および状態作業を格納するよう形成された状態パターン/作業メモリ;
(g) 前記状態パターン/作業メモリおよび前記探索エンジンに結合されるプロトコル/状態識別機構であって、プロトコル/状態識別エンジンは、前記パケットの前記会話フローの前記プロトコルおよび状態を判別するよう形成されるプロトコル/状態識別機構;および
(h) 前記フロー・エントリ・データベース,前記プロトコル/状態識別エンジン,および前記状態パターン/作業メモリに結合される状態プロセッサであって、前記状態プロセッサは、前記パケットの前記フローの前記プロトコルおよび状態に関する前記状態パターン/作業メモリ内で特定された任意の状態作業を実行するよう形成された状態プロセッサ;
を有し、前記状態作業の実行は、前記パケットの前記会話フロー・シーケンスにどのアプリケーション・プログラムが関連するかを識別するプロセスを進め、前記状態プロセッサが前記フロー・エントリを更新する場合には前記受け入れられたパケットに対して実行する状態作業がなくなるまで、又は前記分析の結果が通知される場合には前記フローの分析がそれ以上要求されないことを示す最終状態に到達するまで、前記状態プロセッサが一連の状態または状態作業を通じて処理を行うことを特徴とするパケット・モニタ。
[請求項2] 前記フロー・エントリが前記フローの前記状態を含み、前記探索エンジンが前記受け入れられた前記フローに対するフロー・エントリを発見した場合に、前記プロトコル/状態識別機構が、前記フロー・エントリから前記パケットの前記状態を判定することを特徴とする請求項1記載のパケット・モニタ。
[請求項3] 前記分解サブシステムが前記選択された部分からハッシュを作成する機構を含み、前記ハッシュは前記フロー・エントリ・データベースを探索するために前記探索エンジンによって使用され、前記ハッシュは前記フロー・エントリ・データベース内に前記フロー・エントリが広まるように設計されることを特徴とする請求項1記載のパケット・モニタ。
[請求項4] 更に、前記分解/抽出作業メモリに結合されるコンパイラ・プロセッサを有する請求項1記載のパケット・モニタであって、前記コンパイラ・プロセッサはコンパイル・プロセスを実行するよう形成され、そのコンパイル・プロセスは:
前記モニタが遭遇するパケットで使用され得る前記プロトコルを記述する高レベル・プロトコル記述言語の命令を受信し、および
該プロトコル記述言語命令を、前記分解/抽出作業メモリ内に初期化される複数の分解/抽出作業に翻訳する
ことを特徴とする請求項1記載のパケット・モニタ。
[請求項5] 前記プロトコル記述言語命令が、1つ又はそれ以上のアプリケーションプログラム群と、アプリケーション・プログラムに関連する特定の会話フロー・シーケンスに起因して生じる前記状態遷移パターン/作業との間の対応関係を記述し、前記コンパイラ・プロセッサが前記状態パターン/作業メモリにも結合され、前記コンパイル・プロセスが、更に、前記プロトコル記述言語命令を、前記状態パターン/作業メモリ内に初期化される複数の状態パターン又は状態作業に翻訳することを特徴とする請求項4記載のパケット・モニタ。
[請求項6] 更に:
前記フロー・エントリ・データベースから、アクセスされやすいフロー・エントリ群への高速アクセスを提供するために、前記探索エンジンおよび前記フロー・エントリ・データベースにおよびそれらの間に結合されたキャッシュ・メモリを有することを特徴とする請求項1記載のパケット・モニタ。
[請求項7] 前記キャッシュが、少なくとも最近最も少なく使用したキャッシュ・メモリに関連するものとして機能することを特徴とする請求項6記載のパケット・モニタ。
[請求項8] 前記キャッシュが、少なくとも最近最も少なく使用したキャッシュ・メモリに関連するものとして機能し、スタックとして形成されたアドレス可能なメモリ内容を有することを特徴とする請求項7記載のパケット・モニタ。
[請求項9] フローに関する1つ又はそれ以上の統計的測定値が各フロー・エントリに含まれ、前記パケット・モニタが、更に:
前記受け入れられたフロー・エントリ内の前記統計的測定値を更新する計算機を有することを特徴とする請求項1記載のパケット・モニタ。
[請求項10] フローの前記アプリケーション・プログラムが決定される場合に、前記アプリケーションおよび前記統計的測定値から決定されたものに関連する1つ又はそれ以上のネットワーク利用メトリックが、ネットワーク・パフォーマンスを監視するユーザに提供されることを特徴とする請求項9記載のパケット・モニタ。
[請求項11] コンピュータ・ネットワーク上の接続点を介して通過するパケットを検査する方法であって、各パケットは1つ又はそれ以上のプロトコルに従うものであり、当該方法は:
(a) パケット捕捉装置からパケットを受信する段階;
(b) 前記パケットに関して1つ又はそれ以上の分解/抽出作業を実行し、前記パケットの選択された部分の関数より成る分解レコードを作成する段階;
(c) 以前に遭遇した会話フローに関するゼロ又はそれ以上のフロー・エントリより成るフロー・エントリ・データベースを探索する段階であって、該探索は、前記選択されたパケット部分の少なくとも一部を利用し、前記パケットが既存のフローのものであるか否かを判定するところの段階;
(d) 前記パケットが既存のフローのものである場合は、前記パケットを発見された既存のフローに属するものとして分類する段階;および
(e) 前記パケットが新たなフローのものである場合は、新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含む前記フロー・エントリ・データベース内に、前記新たなフローのための新規フロー・エントリを格納する段階;
より成り、前記分解/抽出作業が、前記パケットが従う1つ又はそれ以上のプロトコルに依存することを特徴とする方法。
[請求項12] 前記接続点を介して通過する各パケットが、リアル・タイムで検査されることを特徴とする請求項11記載の方法。
[請求項13] 前記パケットを発見された既存のフローに属するものとして分類する段階が、既存のフロー・エントリのフロー・エントリを更新する段階より成ることを特徴とする請求項11記載の方法。
[請求項14] 前記の更新が、既存のフロー・エントリのフロー・エントリに含まれた1つまたはそれ以上の統計的測定値を格納することを特徴とする請求項13記載の方法。
[請求項15] 前記1つまたはそれ以上の統計的測定値が、前記フローに関する全パケット数,時間,および最終に入力された時点から現時点までの時間差より成る群から選択された測定値を含むことを特徴とする請求項14記載の方法。
[請求項16] 前記パケットの選択された部分の前記関数が、前記選択された部分を含み将来のパケットを識別し得るところの署名を作成し、前記探索作業は前記署名を使用し、前記新規のまたは更新されたフロー・エントリに含まれる識別情報が、将来のパケットを識別するための署名であることを特徴とする請求項11記載の方法。
[請求項17] 前記パケットの前記プロトコルの少なくとも1つがソースおよびあて先アドレスを使用し、前記パケットの前記選択された部分が前記ソースおよびあて先アドレスを含むことを特徴とする請求項11記載の方法。
[請求項18] 同一フローのパケットに関する前記選択された部分の前記関数が、前記パケットの方向とは独立したものであることを特徴とする請求項17記載の方法。
[請求項19] 前記ソースおよびあて先アドレスが、選択された部分の前記関数において前記アドレスの数値的な値の順序によって決定される順序で並べられることを特徴とする請求項18記載の方法。
[請求項20] 選択された部分の前記関数において、数値的に低いアドレスが数値的に高いアドレスの前に並べられることを特徴とする請求項19記載の方法。
[請求項21] 前記フロー・エントリ・データベースの探索が、選択されたパケット部分のハッシュを利用することを特徴とする請求項11記載の方法。
[請求項22] 前記分解/抽出作業が、分解/抽出作業のデータベースによるものであり、前記データベースは、前記パケットで使用されたプロトコルを示す前記パケット内のデータからの抽出作業に依存して、1つ又はそれ以上のプロトコル群をどのように判定するかを示す情報を含むことを特徴とする請求項11記載の方法。
[請求項23] 段階(d)が、前記パケットが既存のフローのものである場合に、前記フローの最後に遭遇した状態を求め、前記フローの最後に遭遇した状態から始まる前記フローの前記状態に関して特定された状態作業を実行し;および前記段階(e)が、前記パケットが新たなフローのものである場合は、前記新たなフローの初期状態に関して要求される状態作業を実行することを特徴とする請求項11記載の方法。
[請求項24] フローに関して各々受信したパケットの状態処理が、前記フローの前記アプリケーション・プログラムの識別を進行させることを特徴とする請求項23記載の方法。
[請求項25] 前記状態作業が、前記フロー・エントリを更新することを含み、前記フロー・エントリを利用して識別される将来のパケットに関する識別情報を格納することを含むことを特徴とする請求項23記載の方法。
[請求項26] フローに関して各々受信したパケットの状態処理が、前記フローの前記アプリケーション・プログラムの識別を進行させることを特徴とする請求項25記載の方法。
[請求項27] 前記状態作業が、1つ又はそれ以上の参照ストリングの存在に関する前記分解レコードを探索することを特徴とする請求項25記載の方法。
[請求項28] 状態作業に依存してプロトコルのデータベースを利用してプログラム可能な状態プロセッサによって、前記状態作業が実行されることを特徴とする請求項25記載の方法。
[請求項29] コンピュータ・ネットワーク上の接続点を介して通過するパケットを検査するパケット・モニタであって、各パケットは1つ又はそれ以上のプロトコルに従い、当該パケット・モニタは:
(a) 前記接続点に結合され、前記接続点を介して通過するパケットを受信するよう形成されたパケット捕捉装置;
(b) 前記パケット捕捉装置からのパケットを受け入れるように結合および形成された入力バッファ・メモリ;
(c) 前記入力バッファ・メモリに結合されおよびスライサを有する分解サブシステムであって、前記分解サブシステムは、前記受け入れられたパケットの選択された部分を抽出し、前記選択された部分を含む分解レコードを出力するよう形成される分解サブシステム;
(d) 以前遭遇した会話フローに関するゼロまたはそれ以上のフロー・エントリを含むデータベースを格納するメモリ;
(e) 前記分解サブシステムの出力およびフロー・エントリ・メモリに結合され、特定のパケットの分解レコードが前記分解サブシステムにより出力されるところの特定のパケットがフロー・エントリに一致するか否かを探索するように形成される探索エンジンであって、前記の探索は、選択されたパケット部分を利用して、前記パケットが既存のフローのものであるか否かを判定するところの探索エンジン;および
(f) 前記フロー・エントリ・メモリおよび前記探索エンジンに結合され、前記フロー・エントリ・データベース内でフロー・エントリを作成するよう形成されるフロー挿入エンジンであって、前記フロー・エントリが、新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含むフロー挿入エンジン;
を有し、前記探索エンジンが、前記パケットが既存のフローのものである場合は、前記パケットを発見された既存のフローに属するものとして分類し、前記パケットが新たなフローのものである場合は、前記フロー挿入エンジンが、前記新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含む前記フロー・エントリ・データベース内に前記新たなフローのための新規フロー・エントリを格納し、
前記分解サブシステムの動作は、前記パケットが従う1つ又はそれ以上のプロトコルに依存することを特徴とするパケット・モニタ。
[請求項30] 接続点を介して通過する各パケットが、前記パケット・バッファによってアクセスされ、前記モニタによってリアル・タイムで検査されることを特徴とする請求項29記載のモニタ。
[請求項31] 前記探索エンジンが、前記の探索が成功した場合に既存のフローの前記フロー・エントリを更新することを特徴とする請求項29記載のモニタ。
[請求項32] 更に、前記選択された部分からハッシュを作成する機構を含み、前記ハッシュは前記探索エンジンに対する特定のパケットの前記入力に含まれ、前記ハッシュは前記フロー・データベースを探索するために前記探索エンジンによって使用されることを特徴とする請求項29記載のモニタ。
[請求項33] 更に、分解/抽出作業のデータベースを含むメモリを有し、分解/抽出作業データベースは前記分解サブシステムに結合され、前記分解/抽出作業は、前記分解/抽出作業データベースから探索された1つ又はそれ以上の分解/抽出作業によるものであることを特徴とする請求項29記載のモニタ。
[請求項34] 分解/抽出作業の前記データベースが、前記パケットで使用されるプロトコルを指示するパケット内のデータからの抽出作業に依存して、1つ又はそれ以上のプロトコル群をどのように判定するかを記述する情報を含むことを特徴とする請求項33記載のモニタ。
[請求項35] 更に、前記分解サブシステムの前記出力ならびに前記探索エンジンおよび前記フロー挿入エンジンに結合されるフロー・キー・バッファ(UFKB)を含み、分解モニタの出力は前記UFKBを通じて前記探索エンジンに結合され、前記フロー挿入エンジンが前記UFKBを通じて前記探索エンジンに結合されることを特徴とする請求項29記載のモニタ。
[請求項36] 更に、前記探索エンジンおよび前記フロー・エントリ・データベース・メモリに結合され、前記パケットが既存のパケットからのものである場合に、前記フローの最後に遭遇した状態から始まるフローの状態に関して特定される状態作業を実行し、前記パケットが既存のパケットからのものである場合に、新たなフローの初期状態に要求される状態作業を実行するよう形成される状態プロセッサを有することを特徴とする請求項29記載のモニタ。
[請求項37] 前記状態プロセッサが実行するよう形成されるところの1組の可能な状態作業が、パケット部分内の1つ又はそれ以上のパターンを探索することを含むことを特徴とする請求項29記載のモニタ。
[請求項38] 前記状態プロセッサがプログラム可能であり、前記モニタが前記状態プロセッサに結合された状態パターン/作業メモリを更に含み、前記状態メモリは、状態パターン/作業に依存してプロトコルのデータベースを格納するよう形成されることを特徴とする請求項36記載のモニタ。
[請求項39] 前記UFKBおよび前記フロー・エントリ・データベース・メモリに結合され、前記パケットが既存のパケットからのものである場合に、前記フローの最後に遭遇した状態から始まるフローの状態に関して特定される状態作業を実行し、前記パケットが既存のパケットからのものである場合に、新たなフローの初期状態に要求される状態作業を実行するよう形成される状態プロセッサを有することを特徴とする請求項35記載のモニタ。
[請求項40] 前記状態作業が、前記フロー・エントリを更新することを含み、前記フロー・エントリを利用して識別される将来のパケットに関する識別情報を格納することを含むことを特徴とする請求項36記載のモニタ。
[請求項41] 更に、前記分解/抽出作業メモリに結合されるコンパイラ・プロセッサを有し、前記コンパイラ・プロセッサはコンパイル・プロセスを実行するよう形成され、そのコンパイル・プロセスは:
前記モニタが遭遇するパケットで使用され得る前記プロトコルおよびその任意の子プロトコルを記述する高レベル・プロトコル記述言語の命令を受信し、および
該プロトコル記述言語命令を、前記分解/抽出作業メモリ内に初期化される複数の分解/抽出作業に翻訳する
ことを特徴とする請求項29記載のパケット・モニタ。
[請求項42] 更に、前記分解/抽出作業メモリに結合されるコンパイラ・プロセッサを有し、前記コンパイラ・プロセッサはコンパイル・プロセスを実行するよう形成され、そのコンパイル・プロセスは:
1つ又はそれ以上のアプリケーションプログラム群と、アプリケーション・プログラムに関連する特定の会話フロー・シーケンスに起因して生じる前記状態遷移パターン/作業との間の対応関係を記述する高レベル・プロトコル記述言語の命令を受信し、および
該プロトコル記述言語命令を、前記分解/抽出作業メモリ内に初期化される複数の状態パターンおよび状態作業に翻訳する
ことを特徴とする請求項38記載のパケット・モニタ。
[請求項43] 前記フロー・エントリ・データベースから、アクセスされやすいフロー・エントリ群への高速アクセスを提供するために、前記探索エンジンおよび前記フロー・エントリ・データベース・メモリにおよびそれらの間に結合されたキャッシュサブシステムを有することを特徴とする請求項29記載のパケット・モニタ。
[請求項44] 前記キャッシュ・サブシステムが、1つ又はそれ以上のアドレス可能なメモリ・セル(CAM)の内容を示す連合キャッシュ・サブシステムであることを特徴とする請求項43記載のパケット・モニタ。
[請求項45] 前記キャッシュ・サブシステムが、最少使用キャッシュ・メモリであり、キャッシュが、最近最も少なく使用されたキャッシュ・エントリを更新する機会を失うことを特徴とする請求項44記載のパケット・モニタ。
[請求項46] 各フロー・エントリが前記フローに関する1つ又はそれ以上の統計的測定値含み、前記モニタが、更に、前記受け入れられたパケットの前記フロー・エントリにおける少なくとも1つの統計定期測定値を更新する計算機を有することを特徴とする請求項29記載のパケット・モニタ。
[請求項47] 前記1つまたはそれ以上の統計的測定値が、前記フローに関する全パケット数,時間,および最後に入力された時点から現時点までの時間差より成る群から選択された測定値を含むことを特徴とする請求項46記載のパケット・モニタ。
[請求項48] 前記フローのフロー・エントリにおける1つ又はそれ以上の前記統計的測定値から、前記フローに関する1つ又はそれ以上のネットワーク利用メトリックを判定するよう形成された統計プロセッサを更に有することを特徴とする請求項46記載のパケット・モニタ。
[請求項49] フロー・エントリ・データベースが複数のビンに組織化され、各々がN個のフロー・エントリを有し、前記ビンは、前記選択されたパケット部分に基づいて分解サブシステムによって作成されたハッシュ・データ値を介してアクセスされ、Nが1つ又はそれ以上であることを特徴とする請求項29記載のモニタ。
[請求項50] 前記ハッシュ・データ値は、複数のフロー・エントリを前記フロー・エントリ・データベース内に広めるために使用され、フロー・エントリの高速探索および浅いバケットことを可能にすることを特徴とする請求項49記載のモニタ。
[請求項51] 前記状態プロセッサが新しいおよび既存のフローの両者を分析し、それらをアプリケーションにより分類し、1組の所定の規則に基づいて状態ごとに進行することを特徴とする請求項36記載のモニタ。
[請求項52] 前記探索エンジンが、前記分解サブシステムから分解レコードが到着すると直ちに処理を開始することを特徴とする請求項29記載のモニタ。
[請求項53] 前記探索エンジンが、フロー・キーが前記状態プロセッサに送られるべきか否かを検査するフロー状態エントリを提供し、前記フローに対してプロトコル識別子を出力することを特徴とする請求項36記載のモニタ。
[請求項54] コンピュータ・ネットワーク上の接続点を介して通過するパケットを検査する方法であって、当該方法は:
(a) パケット捕捉装置からパケットを受信する段階;
(b) 分解/抽出作業のデータベースに従って、前記パケットに関して1つ又はそれ以上の分解/抽出作業を実行し、前記パケットの選択された部分の関数より成る分解レコードを作成する段階であって、分解/抽出作業のデータベースは、前記パケットで使用されるプロトコルを示すパケット内のデータからの抽出作業に依存して、1つ又はそれ以上のプロトコルをどのように判定するかについての情報を含むところの段階;
(c) 以前に遭遇した会話フローに関するゼロ又はそれ以上のフロー・エントリより成るフロー・エントリ・データベースを探索する段階であって、該探索は、前記選択されたパケット部分の少なくとも一部を利用し、前記パケットが既存のフローのものであるか否かを判定するところの段階;
(d) 前記パケットが既存のフローのものである場合に、前記フローの最後に遭遇した状態を求め、前記フローの最後に遭遇した状態から始まる前記フローの前記状態に関して特定された状態作業を実行し;および
(e) 前記パケットが新たなフローのものである場合は、前記新たなフローの初期状態に関して要求される状態作業を実行し、新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含む前記フロー・エントリ・データベース内に、前記新たなフローのための新規フロー・エントリを格納する段階;
より成ることを特徴とする方法。
[請求項55] 前記状態の少なくとも1つに関して特定された状態作業の1つが、前記フロー・エントリを更新することを含み、前記フロー・エントリを利用して識別される将来のパケットに関する情報を識別することを含むことを特徴とする請求項54記載の方法。
[請求項56] 前記状態の少なくとも1つに関して特定された状態作業の1つが、少なくとも1つの参照ストリングに関して前記パケットの内容を探索することを特徴とする請求項54記載の方法。
[請求項57] 前記状態の少なくとも1つに関して特定された状態作業の1つが、前記フローに関して識別される将来のパケットに関する新規フロー・エントリを作成することを含み、前記新規フロー・エントリが、前記フローに関して識別される将来のパケットに関する識別情報を含むことを特徴とする請求項55記載の方法。
[請求項58] 更に、前記選択されたパケット部分から署名を形成する段階より成り、前記探索作業は前記署名を使用し、前記新規のまたは更新されたフロー・エントリに含まれる識別情報が、将来のパケットを識別するための署名であることを特徴とする請求項54記載の方法。
[請求項59] 前記状態作業が、状態作業に依存するプロトコルのデータベースによるものであることを特徴とする請求項54記載の方法。
[請求項60] コンピュータ・ネットワーク上の接続点を介して通過するパケットに関するプロトコル特有作業を実行する方法であって、当該方法は:
(a) 前記パケットを受信する段階;
(b) 階層モデルに従う複数のプロトコルに関する1組のプロトコル記述を受信する段階であって、特定の階層レベルにおける特定のプロトコルに関するプロトコル記述は:
(i) 前記特定のプロトコルのゼロ又はそれ以上の子プロトコルであって、前記パケットは、前記特定のプロトコルの特定の子プロトコルに対して、前記特定の子プロトコルに関連する前記パケットにおける1つ又はそれ以上の場所における情報を含むところの子プロトコル,
(ii) 前記特定のプロトコルの子プロトコルに関連する情報が格納される前記パケット内の1つ又はそれ以上の場所,および
(iii) 前記特定の階層レベルにおける特定のプロトコルに関して、前記パケットに対して実行されるゼロ又はそれ以上のプロトコル特有作業
を有するところの段階;および
(c) 前記パケットの基本プロトコルおよび前記パケットで使用される前記プロトコルの子に基づく前記1組のプロトコル記述によって特定される前記パケットに対して前記プロトコル特有作業を実行する段階;
より成ることを特徴とする方法。
[請求項61] プロトコル特有作業を実行する段階(c)が、前記子の任意の子に関して繰り返し行われることを特徴とする請求項60記載の方法。
[請求項62] 当該方法がパケットの内容に従って様々なプロトコルに適合するように、段階(c)で実行されるプロトコル特有作業が前記パケットの内容に依存することを特徴とする請求項60記載の方法。
[請求項63] 更に:
メモリ内にデータベースを格納する段階より成り、前記データベースは、前記1組のプロトコル記述から生成され、可能なプロトコルに関する情報を含むデータ構造を有し、任意のプロトコルに対して子プロトコル関連情報を探索するように組織化され、前記データ構造の内容は1つ又はそれ以上の1組の指標によって指示され、前記データベース・エントリは有効性の指示を含む指標値の特定の組によって指示され、
前記子プロトコル関連情報は子認識パターンを含み、
前記プロトコル特有作業を実行する段階(c)が、ベース階層から始まる特定のプロトコル階層レベルにおいて、前記子フィールドに関する前記特定のプロトコルにおける前記パケットを探索し、該探索は、有効なエントリが見出されるまで前記データ構造を指示することを含み、および
これにより前記データ構造が、前記指標の組を利用して高速探索されるように形成されることを特徴とする請求項60記載の方法。
[請求項64] 前記プロトコル記述が、プロトコル記述言語で提供され、前記方法が更に:
前記データベースを作成するためにPDL記述をコンパイルする段階;
より成ることを特徴とする請求項63記載の方法。
[請求項65] 前記データ構造が1組のアレイより成り、各アレイは、各プロトコルに対して少なくとも1つのアレイの第1指標によって識別され、各アレイは更に、子プロトコル関連情報が格納される前記パケット内の場所である第2指標によって指示され、前記データ構造における有効なエントリの探索が、前記パケット内の前記場所を提供し、識別されたプロトコルに関する子認識パターンを見出すことを特徴とする請求項63記載の方法。
[請求項66] 各アレイが更に、子プロトコル関連情報が格納される前記パケット内の領域の大きさである第3指標によって指示され、前記データ構造における有効なエントリの探索が、前記パケットにおける前記場所および前記領域の大きさを提供し、前記子認識パターンを見出すことを特徴とする請求項65記載の方法。
[請求項67] 前記データ構造における有効エントリの散在性を利用した圧縮手法に従って前記データ構造が圧縮されることを特徴とする請求項66記載の方法。
[請求項68] 前記圧縮手法が、競合する共通エントリを有しない2つ又はそれ以上のアレイを結合させることを特徴とする請求項67記載の方法。
[請求項69] 前記データ構造が1組のテーブルを有し、各テーブルは、各プロトコルに対して少なくとも1つのテーブルの第1指標によって識別され、各テーブルは更に、前記子認識パターンである第2指標によって指示され、前記データ構造は更に、各プロトコルに対して、子プロトコル関連情報が格納される前記パケット内の場所を提供するテーブルを含み、前記データ構造における有効なエントリの探索が、前記パケット内の前記場所を提供し、識別されたプロトコルに関する子認識パターンを見出すことを特徴とする請求項63記載の方法。
[請求項70] テーブルの前記組における有効エントリの散在性を利用した圧縮手法に従って前記データ構造が圧縮されることを特徴とする請求項69記載の方法。
[請求項71] 前記圧縮手法が、競合する共通エントリを有しない2つ又はそれ以上のテーブルを結合させることを特徴とする請求項70記載の方法。
[請求項72] 前記プロトコル特有作業が、前記パケットに関する1つ又はそれ以上の分解および抽出作業を含み、前記パケットの選択された部分を抽出し、会話フローに属するものとして前記パケットを識別するために前記選択された部分の関数を形成することを特徴とする請求項60記載の方法。
[請求項73] 前記プロトコル記述が、プロトコル記述言語で提供されることを特徴とする請求項60記載の方法。
[請求項74] 更に:
データベースを作成し、前記データベースをメモリ内に格納するためにPDL記述をコンパイルする段階より成り、前記データベースは、前記1組のプロトコル記述から生成され、可能なプロトコルに関する情報を含むデータ構造を有し、任意のプロトコルに対して子プロトコル関連情報を探索するように組織化され、前記データ構造の内容は1つ又はそれ以上の1組の指標によって指示され、前記データベース・エントリは有効性の指示を含む指標値の特定の組によって指示され、
前記子プロトコル関連情報は子認識パターンを含み、
前記プロトコル特有作業を実行する段階が、ベース階層から始まる特定のプロトコル階層レベルにおいて、前記子フィールドに関する前記特定のプロトコルにおける前記パケットを探索し、該探索は、有効なエントリが見出されるまで前記データ構造を指示することを含み、および
これにより前記データ構造が、前記指標の組を利用して高速探索されるように形成されることを特徴とする請求項73記載の方法。
[請求項75] 更に:
以前に遭遇した会話フローに関するゼロ又はそれ以上のフロー・エントリより成るフロー・エントリ・データベースを探索する段階であって、該探索は、前記選択されたパケット部分の少なくとも一部を利用し、前記パケットが既存のフローのものであるか否かを判定するところの段階;
前記パケットが既存のフローのものである場合は、前記パケットを発見された既存のフローに属するものとして分類する段階;および
前記パケットが新たなフローのものである場合は、新規フロー・エントリを利用して識別される将来のパケットに関する識別情報を含む前記フロー・エントリ・データベース内に、前記新たなフローのための新規フロー・エントリを格納する段階;
より成り、前記分解および抽出作業が、ゼロ又はそれ以上のパケット・ヘッダに依存することを特徴とする請求項72記載の方法。
[請求項76] 前記プロトコル特有作業が、更に、前記パケットの前記フローの前記状態の関数である1つ又はそれ以上の状態処理作業を含むことを特徴とする請求項72記載の方法。
[請求項77] 前記プロトコル特有作業が、前記パケットの前記フローの前記状態の関数である1つ又はそれ以上の状態処理作業を含むことを特徴とする請求項60記載の方法。
[請求項78] コンピュータ・ネットワーク上の接続点を介して通過するパケットのフローを分析する方法であって、当該方法は:
(a) パケット捕捉装置からパケットを受信する段階;
(b) 以前に遭遇した会話フローに関するゼロ又はそれ以上のフロー・エントリより成るフロー・エントリ・データベースを探索する段階であって、該探索は、受信したパケットが既存のフローのものであるか否かを判定するところの段階;
(d) 前記パケットが既存のフローのものである場合は、前記フロー・エントリに維持される1つ又はそれ以上の統計的測定値を格納することを含めて、前記既存のフローの前記フロー・エントリを更新する段階;および
(e) 前記パケットが新たなフローのものである場合は、前記フロー・エントリに維持される1つ又はそれ以上の統計的測定値を格納する前記フロー・エントリ・データベース内に、前記新たなフローのための新規フロー・エントリを格納する段階;
より成り、前記接続点を介して通過する全パケットが前記パケット捕捉装置によって受信されることを特徴とする方法。
[請求項79] 更に:
前記パケットから識別部分を抽出する段階より成り、
前記探索が、前記識別部分の関数を利用することを特徴とする請求項78記載の方法。
[請求項80] 各段階が、前記接続点を介して通過する各パケットに対して、リアル・タイムで実行されることを特徴とする請求項78記載の方法。
[請求項81] 前記1つまたはそれ以上の統計的測定値が、前記フローに関する全パケット数,時間,および最後に入力された時点から現時点までの時間差より成る群から選択された測定値を含むことを特徴とする請求項78記載の方法。
[請求項82] 更に、前記フロー・エントリの1つ又はそれ以上の前記統計的測定値から、フロー・エントリの前記フローに関連する1つ又はそれ以上のメトリックを報告する段階より成ることを特徴とする請求項78記載の方法。
[請求項83] 前記メトリックが1つ又はそれ以上のサービス品質(QOS)メトリックを含むことを特徴とする請求項84記載の方法。
[請求項84] 前記の報告が時々行われ、前記1つ又はそれ以上のメトリックが、最終報告時点からの時間間隔に関連する基本メトリックであることを特徴とする請求項82記載の方法。
[請求項85] 更に、前記基本メトリックから1つ又はそれ以上のサービス品質(QOS)メトリックを計算する段階より成ることを特徴とする請求項84記載の方法。
[請求項86] 隣接する時間間隔に関するメトリックが結合され、結合された間隔に対するメトリックを判定し得るように、前記1つ又はそれ以上のメトリックが尺度変更可能であるように選択されることを特徴とする請求項84記載の方法。
[請求項87] 段階(d)が、前記パケットが既存のフローのものである場合に、前記フローの最後に遭遇した状態を求め、前記フローの最後に遭遇した状態から始まる前記フローの前記状態に関して特定された状態作業を実行し;および前記段階(e)が、前記パケットが新たなフローのものである場合は、前記新たなフローの初期状態に関して要求される状態作業を実行することを特徴とする請求項78記載の方法。
[請求項88] 更に、前記フロー・エントリの1つ又はそれ以上の前記統計的測定値から、フロー・エントリの前記フローに関連する1つ又はそれ以上のメトリックを報告する段階より成ることを特徴とする請求項87記載の方法。
[請求項89] 前記の報告が時々行われ、前記1つ又はそれ以上のメトリックが、最終報告時点からの時間間隔に関連する基本メトリックであることを特徴とする請求項88記載の方法。
[請求項90] 前記の報告が、前記フローの前記状態に関する前記状態作業の一部であることを特徴とする請求項89記載の方法。
[請求項91] 前記状態作業が、前記フロー・エントリを更新することを含み、前記フロー・エントリを利用して識別される将来のパケットに関する識別情報を格納することを特徴とする請求項87記載の方法。
[請求項92] 更に、更なるパケットを受信する段階より成り、フローに関する各受信したパケットの状態処理が、前記フローの前記アプリケーション・プログラムの識別を進行させることを特徴とする請求項91記載の方法。
[請求項93] 前記フローの状態に関連する1つ又はそれ以上のメトリックが、前記フローの状態に関して特定された状態作業の一部として判定されることを特徴とする請求項92記載の方法。
[請求項94] コンピュータ・ネットワーク上の接続点を介して通過するパケットを検査するパケット・モニタであって、各パケットは1つ又はそれ以上のプロトコルに従い、当該パケット・モニタは:
(a) 前記接続点に結合され、前記接続点を介して通過するパケットを受信するように結合されるパケット捕捉装置;
(b) 受信したパケットが所属する以前遭遇した会話フローに関する1つ又はそれ以上のフロー・エントリより成るデータベースを格納するメモリ;
(c) 前記パケット捕捉装置に結合され、受信したパケットが前記フロー・エントリ・データベース内のフロー・エントリに属するか否かを探索し、前記パケットが既存のフローのものである場合は、前記フロー・エントリに維持される1つ又はそれ以上の統計的測定値を格納することを含めて、前記既存のフローの前記フロー・エントリを更新し、および前記パケットが新たなフローのものである場合は、前記フロー・エントリに維持される1つ又はそれ以上の統計的測定値を格納する前記フロー・エントリ・データベース内に、前記新たなフローのための新規フロー・エントリを格納するように形成される分析サブシステム;
を有することを特徴とするパケット・モニタ。
[請求項95] 更に:
パケット捕捉装置および分析サブシステムに結合され、受信したパケットから識別情報を抽出するよう形成される分解サブシステム;
を有し、各フロー・エントリは前記フロー・エントリに含まれる識別情報によって識別され、キャッシュの探索は、抽出した識別情報の関数を使用することを特徴とする請求項94記載のパケット・モニタ。
[請求項96] 前記1つまたはそれ以上の統計的測定値が、前記フローに関する全パケット数,時間,および最後に入力された時点から現時点までの時間差より成る群から選択された測定値を含むことを特徴とする請求項96記載のパケット・モニタ。
[請求項97] 前記フローのフロー・エントリにおける1つ又はそれ以上の前記統計的測定値から、前記フローに関する1つ又はそれ以上のメトリックを判定するよう形成された統計プロセッサを更に有することを特徴とする請求項94記載のパケット・モニタ。
[請求項98] 前記統計プロセッサが、前記1つ又はそれ以上のメトリックを時々判定および報告することを特徴とする請求項97記載のパケット・モニタ。
[請求項99] コンピュータ・ネットワーク上の接続点を介して通過するパケットを検査するパケット・モニタであって、各パケットは1つ又はそれ以上のプロトコルに従い、当該パケット・モニタは:
(a) 前記接続点に結合され、前記接続点を介して通過するパケットを受信するよう形成されるパケット捕捉装置;
(b) 受信したパケットが所属する以前遭遇した会話フローに関する1つ又はそれ以上のフロー・エントリより成るデータベースを格納するメモリ;
(c) 前記フロー・エントリ・データベース・メモリに結合され、前記フロー・エントリ・データベースから、フロー・エントリの高速アクセスを提供するキャッシュ・サブシステム;および
(d) 前記パケット捕捉装置および前記キャッシュ・サブシステムに結合され、受信したパケットが前記フロー・エントリ・データベース内のフロー・エントリに属するか否かを探索するよう形成され、前記の探索は前記キャッシュ・サブシステム内で行われるところの探索エンジン;
を有することを特徴とするパケット・モニタ。
[請求項100] 更に:
パケット捕捉装置および探索エンジンに結合される分解サブシステムであって、前記捕捉装置が前記分解サブシステムを介して前記探索エンジンに結合され、前記分解サブシステムは受信したパケットから識別情報を抽出するよう形成される分解サブシステム;
を有し、各フロー・エントリは前記フロー・エントリに含まれる識別情報によって識別され、キャッシュの探索は、抽出した識別情報の関数を使用することを特徴とする請求項99記載のパケット・モニタ。
[請求項101] 前記キャッシュ・サブシステムが、1つ又はそれ以上の内容アドレス可能なメモリ・セル(CAM)を含む連合キャッシュ・メモリであることを特徴とする請求項100記載のパケット・モニタ。
[請求項102] 前記キャッシュ・サブシステムが:
(i) 前記フロー・エントリ・データベース・メモリに結合された1組のキャッシュ・メモリ要素であって、各キャッシュ・メモリ要素はフロー・エントリを入力するための入力ポートを含み、前記フロー・エントリ・データベースのフロー・エントリを格納するよう形成される1組のキャッシュ・メモリ要素;
(ii) 上部CAMから下部CAMへの接続の順序に従って接続された1組の内容アドレス可能なメモリ・セル(CAM)であって、各CAMが、前記キャッシュ・メモリ要素の1つに対するアドレスおよびポインタを含み、および各CAMが:
入力を有する一致回路であって、前記入力がCAMセル内のアドレスと同一である場合にCAMが一致出力をアサートし、アサートされた一致出力はヒットを示すところの一致回路,
アドレスおよびポインタを受け入れるように形成されたCAM入力,および
CAMアドレス出力およびCAMポインタ出力
を含むところの1組の内容アドレス可能なメモリ・セル;
(iii) 前記CAMの組に結合されるCAMコントローラ;および
(iv) 前記CAMコントローラ,前記キャッシュ・メモリの組および前記フロー・エントリ・メモリに結合されたメモリ・コントローラ
を含み、前記CAMセルの一致回路入力が前記探索エンジンに結合され、前記一致回路入力への入力が、前記入力に等しいアドレスを含む任意のCAMセルにおいて一致出力を生じさせ、および
前記CAMコントローラが、特定のCAMが指示するキャッシュ・メモリ要素が時間と共に変化するように形成されることを特徴とする請求項100記載のパケット・モニタ。
[請求項103] 前記下部CAMが最近最も少なく利用したキャッシュ・メモリ要素を指示するように、前記CAMコントローラが形成されることを特徴とする請求項102記載のパケット・モニタ。
[請求項104] 前記上部CAMから始まる各CAMのアドレスおよびポインタ出力が、次のCAMのアドレスおよびポインタ入力に結合され、次のCAMの最後は下部CAMであり、キャッシュ・ヒットが起こった場合に、そのヒットを引き起こしたCAMのアドレスおよびポインタの内容はスタックの上部CAMに配置され、アサートされた一致出力を引き出したCAMより上側のCAMのアドレスおよびポインタの内容はシフト・ダウンされるように、下部CAMによって指示される最近最も少なく使用したキャッシュ・メモリ要素および上部CAMによって指示される最近最も多く使用したキャッシュ・メモリ要素を利用した利用の最新性に基づいてCAMが順序付けられるように、前記CAMコントローラが形成されることを特徴とする請求項103記載のパケット・モニタ。
[請求項105] 外部メモリの1つ又はそれ以上の要素を探索するキャッシュ・システムであって:
(a) 前記外部メモリに結合された1組のキャッシュ・メモリ要素であって、各キャッシュ・メモリ要素は前記外部メモリの要素を入力するための入力ポートを含み、前記外部メモリの要素の入力を格納するよう形成される1組のキャッシュ・メモリ要素;
(b) 上部CAMから下部CAMへの接続の順序に従って接続された1組の内容アドレス可能なメモリ・セル(CAM)であって、各CAMが、前記キャッシュ・メモリ要素の1つに対するアドレスおよびポインタを含み、および各CAMが:
(i) 入力を有する一致回路であって、前記入力がCAMセル内のアドレスと同一である場合にCAMが一致出力をアサートし、アサートされた一致出力はヒットを示すところの一致回路,
(ii) アドレスおよびポインタを受け入れるように形成されたCAM入力,および
(iii) CAMアドレス出力およびCAMポインタ出力
を含むところの1組の内容アドレス可能なメモリ・セル;
(c) 前記CAMの組に結合されるCAMコントローラ;および
(d) 前記CAMコントローラ,前記キャッシュ・メモリの組および前記外部メモリに結合されたメモリ・コントローラ
を含み、前記一致回路入力への入力が、前記入力に等しいアドレスを含む任意のCAMセルにおいて一致出力を生じさせるように、前記CAMセルの一致回路入力が結合され、および
前記CAMコントローラが、特定のCAMが指示するキャッシュ・メモリ要素が時間と共に変化するように形成されることを特徴とするキャッシュ・システム。
[請求項106] 前記下部CAMが最近最も少なく利用したキャッシュ・メモリ要素を指示するように、前記CAMコントローラが形成され、前記CAMコントローラは、最近最も少なく利用したキャッシュ・メモリ要素が、処理される第1メモリ要素であるような最少利用置換手法を実現するよう形成されることを特徴とする請求項105記載のキャッシュ・システム。
[請求項107] 前記上部CAMから始まる各CAMのアドレスおよびポインタ出力が、次のCAMのアドレスおよびポインタ入力に結合され、次のCAMの最後は下部CAMであり、キャッシュ・ヒットが起こった場合に、そのヒットを引き起こしたCAMのアドレスおよびポインタの内容はスタックの上部CAMに配置され、アサートされた一致出力を引き出したCAMより上側のCAMのアドレスおよびポインタの内容はシフト・ダウンされるように、下部CAMによって指示される最近最も少なく使用したキャッシュ・メモリ要素および上部CAMによって指示される最近最も多く使用したキャッシュ・メモリ要素を利用した利用の最新性に基づいてCAMが順序付けられるように、前記CAMコントローラが形成されることを特徴とする請求項106記載のキャッシュ・システム。
[請求項108] 最初に処理されるキャッシュ・メモリ・エントリである最近最も少なく利用したエントリを利用して、キャッシュ・メモリ要素の置換が、利用の最新性とは逆の順序に従って行われることを特徴とする請求項107記載のキャッシュ・システム。
[請求項109] 各メモリ要素がメモリのページであることを特徴とする請求項105記載のキャッシュ・システム。
[請求項110] 各キャッシュ・メモリ要素が、それがダーティであるか否かの指標と共に提供され、前記CAMコントローラは、前記のダーティな内容を前記外部メモリにバック・アップすることによって、ダーティ・キャッシュ・メモリ要素をクリーニングするように形成されることを特徴とする請求項105記載のキャッシュ・システム。
[請求項111] LRU置換手法に従ってキャッシュ内容が置換される必要が生じるまで、キャッシュ・メモリ要素の内容がクリーニング後も維持されることを特徴とする請求項110記載のキャッシュ・システム。
[請求項112] 各キャッシュ・メモリ要素が、それがダーティであるか否かの指標と共に提供され、前記CAMコントローラは、前記のダーティな内容を前記外部メモリにバック・アップすることによって、ダーティ・キャッシュ・メモリ要素をクリーニングするように形成されることを特徴とする請求項106記載のキャッシュ・システム。
[請求項113] 前記CAMコントローラが、前記キャッシュ・メモリ要素の内容を置換するのに先立って、ダーティ・キャッシュ・メモリ要素をクリーニングするよう形成されることを特徴とする請求項112記載のキャッシュ・システム。
[請求項114] 前記CAMコントローラが、前記キャッシュ・メモリ要素の内容を置換するのに先立って、ダーティ・キャッシュ・メモリ要素をクリーニングするよう形成されることを特徴とする請求項113記載のキャッシュ・システム。
[請求項115] 各キャッシュ・メモリ要素が、それがダーティであるか否かの指標と共に提供され、前記CAMコントローラは、前記のダーティな内容を前記外部メモリにバック・アップすることによって、利用の最新性とは逆の順序で、ダーティ・キャッシュ・メモリ要素をクリーニングするように形成されることを特徴とする請求項107記載のキャッシュ・システム。
[請求項116] 利用の最新性とは逆の順序のクリーニングが、前記キャッシュ・コントローラがアイドルのときはいつでも自動的に行われることを特徴とする請求項115記載のキャッシュ・システム。
[請求項117] 外部メモリの1つ又はそれ以上の要素を探索するキャッシュ・システムであって:
(a) 前記外部メモリに結合された1組のキャッシュ・メモリ要素であって、各キャッシュ・メモリ要素は前記外部メモリの要素を入力するための入力ポートを含み、前記外部メモリの要素の入力を格納するよう形成される1組のキャッシュ・メモリ要素;および
(b) キャッシュ・メモリ要素の1つに対するアドレスおよびポインタを含む1組の内容アドレス可能なメモリ・セル(CAM)であって、前記入力がCAMセル内のアドレスと同一である場合にCAMが一致出力をアサートする入力を有する一致回路を含むところの1組の内容アドレス可能なメモリ・セル;
を有し、特定のCAMが指示するキャッシュ・メモリ要素が時間と共に変化することを特徴とするキャッシュ・システム。
[請求項118] CAMが上部から下部への順序で結合され、下部CAMが最近最も少なく利用したキャッシュ・メモリ要素を指示することを特徴とする請求項117記載のキャッシュ・システム。
[請求項119] コンピュータ・ネットワーク上の接続点を介して通過する総てのパケットを検査するパケット・モニタであって、当該パケット・モニタは:
(a) 前記接続点に結合され、前記接続点を介して通過するパケットを受信するよう形成されるパケット捕捉装置;および
(b) 受信したパケットが所属する以前遭遇した会話フローに関する1つ又はそれ以上のフロー・エントリより成るデータベースを格納するメモリ;
(c) 前記パケット捕捉装置に結合され、受信したパケットが前記フロー・エントリ・データベースに属するか否かを探索するように、および前記パケットがフロー・エントリに属する場合に前記受信したパケットに対して前記フローの状態を判定するように形成される探索エンジン;
(d) 前記探索エンジンに結合され、前記受信したパケットが前記フロー・エントリ・データベース内のフローに属しない場合に、フローの状態を判定する状態判定機構;および
(e) 前記探索エンジンおよび前記状態判定機構に結合され、前記パケットが既存のパケットからのものである場合に、前記フローの最後に遭遇した状態から始まるフローの状態に関して特定される状態作業を実行し、前記パケットが既存のパケットからのものである場合に、新たなフローの初期状態に要求される状態作業を実行するよう形成される状態プロセッサ;
を有することを特徴とするパケット・モニタ。
[請求項120] 状態プロセッサが実行するよう形成される1組の可能な状態作業が、パケット部分における1つ又はそれ以上のパターンを探索することを含む特徴とする請求項119記載のモニタ。
[請求項121] 前記モニタが、前記接続点を通過する総てのパケットをリアル・タイムで処理することを特徴とする請求項120記載のモニタ。
[請求項122] 前記状態プロセッサがプログラム可能であり、前記モニタが更に前記状態プロセッサに結合した状態パターン/作業メモリを含み、前記状態作業メモリが状態パターン/作業のデータベースを格納することを特徴とする請求項120記載のモニタ。
[請求項123] 前記パケット捕捉装置,前記状態プロセッサおよび前記探索エンジンに結合されるバッファを更に有し、前記バッファは前記受信したパケットの少なくとも選択された部分を受け入れるよう形成されることを特徴とする請求項119記載のモニタ。
[請求項124] 前記状態プロセッサが、バッファ内容の中でNRユニットの参照ストリングを探索するよう形成された探索装置を含み、当該探索装置が:
(i) 第1参照ストリングの前記NRユニットを受信するよう形成された第1参照ストリング・レジスタ;
(ii) 直列に結合され、前記バッファに結合された1つ又はそれ以上のターゲット・データ・レジスタであって、前記ターゲット・データ・レジスタは前記バッファからその内容を受信するよう形成される1つ又はそれ以上のターゲット・データ・レジスタ;および
(iii) 第1の複数の比較器群であって、ある比較器群は前記ターゲット・データ・レジスタ内の各々の開始点に対応し、特定の開始位置からの比較器群が、前記第1参照レジスタの各ユニットと前記特定の開始位置から始まる前記ターゲット・データ・レジスタのNRユニットとに結合され、前記第1参照レジスタ内容と、前記特定の開始位置から始まる前記ターゲット・データ・レジスタのNR個の隣接するユニットの対応する内容とを比較するところの第1の複数の比較器群;
を有し、各比較器群が、その対応する異なる開始位置から始まる前記ターゲット・データの中で前記第1参照ストリングの一致の有無を示し,
これにより、前記第1の複数の比較器群が、任意の開始位置で始まる前記ターゲット・データ・レジスタ内に前記第1参照ストリングが含まれているか否かを並列に示すことを特徴とする請求項123記載のモニタ。
[請求項125] コンピュータ・ネットワーク上の接続点を介して通過するパケットの内容を処理するよう形成されたプロセッサであって、当該プロセッサは:
(a) 前記接続点を介して通過する各パケットの前記内容の少なくとも一部を受信するバッファ;
(b) 前記状態プロセッサに対する命令群の内の1つ又はそれ以上の命令を含むメモリ;
(c) 前記バッファに結合される算術論理装置(ALU);
(d) 前記ALUおよび前記命令メモリに結合され命令をデコードする制御ブロック;および
(e) 前記命令メモリおよび前記ALUに結合され、前記メモリ内の処理を行う次の状態プロセッサ命令を示すプログラム・カウンタ;
を有し、前記ALUは、パケットの内容の中で参照ストリングを探索する1つ又はそれ以上の比較器より成る探索装置を含むことを特徴とするプロセッサ。
[請求項126] 前記状態プロセッサが、前記接続点を介して通過する全パケットの内容をリアル・タイムで処理することを特徴とする請求項125記載のプロセッサ。
[請求項127] 前記命令群が、前記ALU内の前記探索装置に対して、前記パケットの範疇で未知の位置から始まるパケット中の特定の参照ストリングを探索することを求める命令を含むことを特徴とする請求項125記載のプロセッサ。
[請求項128] 前記探索装置が、パケットの内容中の任意の参照ストリングを探索し、前記命令群が、前記ALU内の前記探索装置に対して、前記パケットの範疇で未知の位置から始まるパケット中の特定の参照ストリングを探索することを求める命令を含むことを特徴とする請求項125記載のプロセッサ。
[請求項129] 前記ターゲット・データ内の任意の開始位置から始まるターゲット・データ中のNRユニットの参照ストリングを探索するよう形成された探索装置であって、当該探索装置は:
(a) 第1参照ストリングの前記NRユニットを受信するよう形成された第1参照レジスタ;
(b) 直列に結合され前記ターゲット・データを受信する1つ又はそれ以上のターゲット・データ・レジスタ;および
(c) 第1の複数の比較器群であって、ある比較器群は前記開始点の各々に対応し、特定の開始位置からの比較器群が、前記第1参照レジスタの各ユニットと前記特定の開始位置から始まる前記ターゲット・データ・レジスタのNRユニットとに結合され、前記第1参照レジスタ内容と、前記特定の開始位置から始まる前記ターゲット・データ・レジスタのNR個の隣接するユニットの対応する内容とを比較するところの第1の複数の比較器群;
を有し、各比較器群が、その対応する異なる開始位置から始まる前記ターゲット・データの中で前記第1参照ストリングの一致の有無を示し,
これにより、前記第1の複数の比較器群が、任意の開始位置で始まる前記ターゲット・データ・レジスタ内に前記第1参照ストリングが含まれているか否かを並列に示すことを特徴とする探索装置。
[請求項130] 1組の可能な開始位置が、Nstart個の位置を含み、前記1つ又はそれ以上のターゲット・データ・レジスタが直列に結合され前記ターゲット・データの少なくともNR+Nstart−1個のユニットを受信し、前記第1の複数の比較器群が、Nstart個の比較器群、Nstart個の開始位置の各々に関する1つの比較器群を含むことを特徴とする請求項129記載の探索装置。
[請求項131] 前記ターゲット・データ・レジスタの各々は、データのNstart個のユニットを保持することを特徴とする請求項130記載の探索装置。
[請求項132] 前記ターゲット・データのNstartユニットが前記ターゲット・データ・レジスタ内に1クロック・サイクルでクロック入力され、前記第1の複数の比較器群が、前記第1参照ストリングが、Nstart個の開始位置の何れかにおいて開始するターゲット領域中のものであるか否かを1クロック・サイクルで示すことを特徴とする請求項131記載の探索装置。
[請求項133] 更に、オフセットNoffsetを特定するための機構を有し、第1の動作クロック・サイクルにおいて、前記第1の複数の比較器群が、前記第1参照ストリングが、第1Noffset開始位置の後に始まる前記第1データの任意のNstart−Noffset開始位置で始まるターゲット・データ領域中のものであるか否かを、前記第1クロック・サイクルで示すように第1のNoffset開始位置が無視され、以後のクロック・サイクルにおいて総てのNstart開始位置が処理され,
1つ又はそれ以上のクロック・サイクルにおいて、前記探索装置が、第1のNoffsetユニット以外の任意の場所で始まるターゲット・データ中に前記第1参照ストリングがあるか否かを示すことを特徴とする請求項132記載の探索装置。
[請求項134] 各比較器群が、NR個の隣接する比較器を有し、各比較器は参照ユニット入力,ターゲット・ユニット入力および一致を示す出力を有し、前記参照およびターゲット・データ入力が一致し先行する比較器の出力が一致を示す場合に比較器の出力がアサートされるように、各比較器は先行する比較器の出力に結合されることを特徴とする請求項129記載の探索装置。
[請求項135] 更に:
(d) 1つ又はそれ以上の更なる参照ストリングのNRユニットを受信する1つ又はそれ以上の更なる参照レジスタ;および
(e) 1つ又はそれ以上の更なる複数の比較器群であって、対応する複数の開始位置の各々について1つの比較器群があり、更なる複数のうちの特定の比較器群の各々が、対応する更なる参照レジスタの各ユニットと前記特定の比較器群の開始位置から始まる前記データ・レジスタのNRユニットとに結合され、対応する更なる参照レジスタ内容と、前記特定の比較器群の開始位置から始まる前記ターゲット・データ・レジスタのNR個ユニットとを比較するところの1つ又はそれ以上の更なる複数の比較器群;
を有し、前記探索装置が、任意の開始位置から始まる前記ターゲット・データ・レジスタの内容において、NRユニットの前記第1又は更なる参照ストリングを探索することを特徴とする請求項129記載の探索装置。
[請求項136] 各比較器群が、NR個の隣接する比較器を有し、各比較器は参照ユニット入力,ターゲット・データ・ユニット入力および一致を示す出力を有し、前記参照およびターゲット・データ入力が一致し先行する比較器の出力が一致を示す場合に比較器の出力がアサートされるように、各比較器は先行する比較器の出力に結合されることを特徴とする請求項135記載の探索装置。
[請求項137] 各比較器群が、NR個の隣接する比較器を有し、各比較器は参照ユニット入力,ターゲット・データ・ユニット入力,イネーブル入力および一致を示す出力を有し、前記参照およびターゲット・データ入力が一致しイネーブル入力がアサートされる場合に比較器の出力がアサートされ、
特定の開始位置に関する特定の比較器群に対して、隣接する比較器の参照入力が前記参照レジスタの隣接するユニットに結合され、隣接する比較器のターゲット・データ入力が、特定の開始位置から始まるターゲット・データ・レジスタの隣接するユニットに結合され、第1の比較器群がイネーブルされ、各比較器のイネーブル入力が先行する比較器の出力に結合され、参照ストリングのNRユニットおよび前記ターゲット・データのNRユニットが合致する場合に、最後の比較器の出力がアサートされることを特徴とする請求項129記載の探索装置。
[請求項138] 1ユニットが1バイトであることを特徴とする請求項129記載の探索装置。
[請求項139] 前記比較器群の最終比較出力が、前記ターゲット・データ中に前記参照ストリングの一致が生じたか否かおよびその場所を示す出力を有する優先選択器に結合されることを特徴とする請求項137記載の探索装置。
[請求項140] NRが16バイトであることを特徴とする請求項138記載の探索装置。
[請求項141] NRが16バイトであり、データ・レジスタの各々がNstartバイトであり、前記探索装置が前記第1データ・レジスタ内の何れかから開始して一致を示すことを特徴とする請求項130記載の探索装置。
[請求項142] ターゲット・データストリーム内のNRユニットの参照ストリングを探索するよう形成された探索装置であって、当該探索装置は:
(a) 入力のNR個の対、および前記入力のNR個の対の各対の一致を示す出力を有する第1のNRユニットの比較器;
(b) 前記参照ストリングの値を示し行列の第1軸を定めるNR個の接続部であって、さらにNR個の接続部は、前記第1の軸に垂直な行列の第2の軸を定める前記ターゲット・データの値を示し、ターゲット・データ接続部は、前記ターゲット・データの第1の開始位置から始まり、終了位置で終了するところのNR個の接続部;
を有し、前記ターゲット・データのNR個の接続部が、NR個の参照ストリングの接続部と比較されるように、第1の比較器が前記行列の対角線に沿って方向付けられることを特徴とする探索装置。
[請求項143] 更に:
1つ又はそれ以上の並列に隣接する付加的な接続部であって、前記行列において前記ターゲット・データ接続部に隣接し、前記終了位置から開始するところの接続部;および
前記付加的なターゲット・データ接続部の各々に対して及びそれらに対応する付加的なNRユニットの比較器であって、各付加的な比較器は前記第1比較器に並列しており、前記行列において前記付加的なターゲット接続部に向かってシフトされるところの付加的なNRユニットの比較器;
を有し、各付加的な比較器が、前記参照ストリングを、異なる開始点から始まる前記ターゲット・データのNRユニット連続値の異なる組と比較することを特徴とする請求項142記載の探索装置。
[請求項144] 更に:
1つ又はそれ以上のNRユニットの更なる比較器群;および
NRユニットの更なる比較器群に対応する更なる比較器群であって、前記更なる接続部が1つ又はそれ以上の行列を定め、前記第1軸に沿う更なる接続部の各々が、前記第1軸に沿う更なる参照ストリングに対応する1つ又はそれ以上の値を示し、NR個の接続部が前記第2軸に沿う前記ターゲット・データの値を含むところの更なる比較器群;
を有し、付加的な比較器群の各々が、前記参照ストリングの対応するものと、異なる開始位置から開始するターゲット・データのNR個の隣接する値の異なる組を比較することを特徴とする請求項143記載の探索装置。
[態様1]コンピュータネットワーク上の接続点を通過するパケットを検査する方法であって、各パケットは1つ又は複数のプロトコルに従うものであり、当該方法は:
パケット捕捉装置からパケットを受信する段階;
前記パケットに関して少なくとも1つの分解作業及び/又は少なくとも1つの抽出作業を実行し、前記パケットの選択された部分の関数を有する分解レコードを作成する段階であって、前記分解及び/又は抽出作業の少なくとも1つは前記パケットが従う前記プロトコルの1つまたは複数に依存する段階;
以前に遭遇したゼロ個以上の会話フローのフローエントリを有するフローエントリデータベースを探索する段階であって、該探索は、前記選択されたパケット部分の少なくとも一部を利用し、前記パケットが既存のフローのものであるか否かを判定する段階;
前記パケットが既存のフローのものであった場合、前記パケットを発見された既存のフローに属するものとして分類し、前記フローの状態を判別し、該フローの状態について指定されたゼロ個以上の状態作業を実行する段階;および
前記パケットが新たなフローのものであった場合、前記フローエントリデータベース内に、前記新たなフローのための新規フローエントリであって、将来のパケットが該新規フローエントリに関するものであると識別されるための識別情報を含む新規フローエントリを記憶する段階;
を有する方法。
[態様2]
前記少なくとも1つの分解及び/又は抽出作業を実行する段階が、前記パケットにおいてあるプロトコルが使用されていることを示す前記パケット中のデータから1以上のプロトコルに依存する一群の抽出作業をどのように決定するかについての情報を含む分解及び抽出作業のデータベースに従って行われ、
新規フローエントリを記憶する前記段階は、前記パケットが新たなフローのものであった場合、前記新たなフローの初期状態に関して要求されるゼロ個以上の分析を実行する態様1記載の方法。
[態様3]前記状態の少なくとも1つに関して指定された状態作業の1つが、前記フローエントリを更新することを含み、前記フローエントリは、将来のパケットが前記フローエントリ関するものであると識別されるための識別情報を含む態様2記載の方法。
[態様4]前記状態の少なくとも1つに関して指定された状態作業の1つが、少なくとも1つの参照ストリングがあるかどうか前記パケットの内容を探索することを含む、態様2記載の方法。
[態様5]前記状態の少なくとも1つに関して指定された状態作業の1つが、将来のパケットがそのフローのものであると識別されるための新規フローエントリを作成することを含み、前記新規フローエントリは、将来のパケットが前記フローエントリに関するものであると識別されるための識別情報を含む、態様3記載の方法。
[態様6]前記選択されたパケット部分から署名を形成する段階を更に有し、前記探索作業は前記署名を使用し、前記新規の又は更新されたフローエントリに含まれる識別情報が、将来のパケットを識別するための署名である態様2記載の方法。
[態様7]前記状態作業が、プロトコルに依存する状態作業のデータベースによるものである態様2記載の方法。
[態様8]前記接続点を通過する各パケットが、リアルタイムで検査される態様1記載の方法。
[態様9]前記パケットを発見された既存のフローに属するものとして分類する段階が、前記既存のフローのフローエントリを更新する段階を有する態様1記載の方法。
[態様10]前記の更新が、前記既存のフローのフローエントリに含まれた1つまたは複数の統計的指標を格納することを含む、態様9記載の方法。
[態様11]前記1つまたは複数の統計的指標が、前記フローに関するパケット総数,時間,および最後に入力された時点から現時点までの時間差を含む群から選択された指標を含む態様10記載の方法。
[態様12]前記パケットの選択された部分の前記関数が、前記選択された部分を含み且つ将来のパケットを識別可能である署名を作成し、前記探索作業は前記署名を使用し、前記新規のまたは更新されたフローエントリに含まれる識別情報が、将来のパケットを識別するための署名である態様1記載の方法。
[態様13]前記パケットの前記プロトコルの少なくとも1つがソースおよびあて先アドレスを使用し、前記パケットの前記選択された部分が前記ソースおよびあて先アドレスを含む態様1記載の方法。
[態様14]同一フローの複数のパケットについての前記選択された部分の前記関数が、前記パケットの方向とは独立したものである態様13記載の方法。
[態様15]前記パケットの選択された部分の関数が該選択されたパケット部分を含む署名を形成し、前記ソースおよびあて先アドレスが、選択された部分の前記関数において前記アドレスの数値的な値の順序で決定される順序で並べられる態様14記載の方法。
[態様16]選択された部分の前記関数によって形成された署名の中で、数値的に低いアドレスが数値的に高いアドレスの前に並べられる態様15記載の方法。
[態様17]前記フローエントリデータベースの探索が、選択されたパケット部分のハッシュを利用する態様1記載の方法。
[態様18]少なくとも1つの前記分解及び/又は抽出作業が、分解及び/又は抽出作業のデータベースによるものであり、前記データベースは、前記パケットで使用されたプロトコルを示す前記パケット内のデータから、1つ又は複数のプロトコルに依存した一群の抽出作業をどのように決定するかを示す情報を含む態様1記載の方法。
[態様19]パケットを分類する前記段階が、前記パケットが既存のフローのものであった場合、前記フローの最後に遭遇した状態を求め、前記フローの最後に遭遇した状態から始めて前記フローの前記状態に関して特定された状態作業を実行し;および新規フローエントリを記憶する前記段階が、前記パケットが新たなフローのものであった場合、前記新たなフローの初期状態に要求されるゼロ個以上の状態作業を実行することを含む態様1記載の方法。
[態様20]
特定の会話フロー・シーケンスが特定のアプリケーションプログラムの動作に関連付けられており、あるフローについての受信したパケット各々の状態処理は、どのアプリケーションプログラムが該フローに関連付けられているかの識別を先に進める態様19記載の方法。
[態様21]前記状態作業が、前記フローエントリを更新することを含み、将来のパケットが前記フローエントリに関するものであると識別されるための識別情報を格納することを含む態様19記載の方法。
[態様22]あるフローについての受信したパケット各々の状態処理が、前記フローのアプリケーションプログラムを識別することを先に進める態様21記載の方法。
[態様23]前記状態作業が、1つ又は複数の参照ストリングが存在するかどうかに関して前記分解レコードを探索する態様19記載の方法。
[態様24]前記状態作業が、プロトコルに依存する状態作業のデータベースに従って、プログラム可能な状態プロセッサにより実行される態様19記載の方法。
[態様25]前記パケットを分類する段階は、前記パケットが既存のフローのものであった場合、前記既存のフローのフローエントリを更新することを含み、該更新は前記フローエントリにおいて維持される1つ又は複数の統計的測定値を格納することを含み、新規フローエントリを記憶する前記段階は、前記パケットが新たなフローのものであった場合、前記新規フローエントリに1つ又は複数の統計的測定値を格納することを含み、前記接続点を通過する全パケットが前記パケット捕捉装置によって受信される態様1記載の方法。
[態様26]前記パケットから識別部分を抽出する段階を更に含み、前記探索が、前記識別部分の関数を利用する態様25記載の方法。
[態様27]各段階が、前記接続点を通過する各パケットに対して、リアルタイムで実行される態様25記載の方法。
[態様28]前記1つまたは複数の統計的指標が、前記フローに関するパケット総数,時間,および最後に入力された時点から現時点までの時間差を含む群から選択された指標を含む態様25記載の方法。
[態様29]あるフローエントリのフローに関連する1つ又は複数のメトリックを、前記フローエントリの前記統計的指標の1つ又は複数から報告する段階を更に有する態様25記載の方法。
[態様30]前記メトリックが1つ又は複数のサービス品質メトリックを含む態様29記載の方法。
[態様31]前記の報告が時々行われ、前記1つ又は複数のメトリックが、最終報告時点からの時間間隔に関連する基本メトリックである態様29記載の方法。
[態様32]前記基本メトリックから1つ又は複数のサービス品質メトリックを計算する段階を更に有する態様31記載の方法。
[態様33]連続する複数の時間間隔からのメトリックが結合されて結合された間隔に対するメトリック各々を決定しうるように、前記1つ又は複数のメトリックがスケーラブルであるように選択される態様31記載の方法。
[態様34]会話フローが初期状態を含む状態を有し、フローのフローエントリは、該フローの状態について状態作業を一切含まないか又は該フローの状態について実行すべき1以上の状態作業を含み、前記パケットを分類する前記段階は、前記パケットが既存のフローのものであった場合、前記フローの最後に遭遇した状態を求め、前記フローの最後に遭遇した状態から始めて前記フローの前記状態について指定されたゼロ個以上の状態作業を実行することを含み;新規フローエントリを記憶する前記段階は、前記パケットが新たなフローのものであった場合、前記新たなフローの初期状態に要求されるゼロ個以上の状態作業を実行することを含む、態様25記載の方法。
[態様35]あるフローエントリのフローに関連する1つ又は複数のメトリックを、前記フローエントリの前記統計的指標の1つ又は複数から報告する段階を更に有する態様34記載の方法。
[態様36]前記の報告が時々行われ、前記1つ又は複数のメトリックが、最終報告時点からの時間間隔に関連する基本メトリックである態様35記載の方法。
[態様37]前記の報告が、前記フローの前記状態についての前記状態作業の一部である態様36記載の方法。
[態様38]前記状態作業が、前記フローエントリを更新することを含み、将来のパケットが前記フローエントリのものであると識別されるための識別情報を格納することを含む態様34記載の方法。
[態様39]更なるパケットを受信する段階を更に有し、あるフローについての受信したパケット各々の状態処理が、前記フローのアプリケーションプログラムを識別することを先に進める態様38記載の方法。
[態様40]前記フローの状態に関連する1つ又は複数のメトリックが、前記フローの状態について指定された状態作業の一部として判定される態様39記載の方法。
[態様41]コンピュータネットワーク上の接続点を通過するパケットを検査するパケットモニタであって、各パケットは1つ又は複数のプロトコルに従い、当該パケットモニタは:
前記接続点に結合され、前記接続点を通過するパケットを受信するよう構成されたパケット捕捉装置であって、パケットを受け入れるように結合および構成された入力バッファメモリを含むパケットモニタ;
前記入力バッファメモリに結合されおよびスライサを有する分解サブシステムであって、前記分解サブシステムは、受け入れられた前記パケットの選択された部分を抽出し、前記選択された部分を含む分解レコードを出力するよう構成され、前記分解サブシステムの動作は前記パケットの従う1以上のプロトコルに依存する分解サブシステム;
ゼロ個以上の以前遭遇した会話フローのフローエントリを含むデータベースを格納するメモリであって、各フローエントリは、該フローエントリに含まれている識別情報によって確認され、会話フローは1以上の状態を有するメモリ;
前記分解サブシステムの出力および前記メモリに結合され、前記分解サブシステムから出力される分解レコードに対応する特定のパケットに対して、フローエントリデータベース中に一致するフローエントリがあるか否かを探索するように構成された探索エンジンであって、前記探索は、選択されたパケット部分の少なくとも一部を利用して、前記パケットが既存のフローのものであるか否かを判定する探索エンジン;および
前記メモリおよび前記探索エンジンに結合され、前記フローエントリデータベース内でフローエントリを作成するよう構成されたフロー挿入エンジンであって、前記フローエントリは、将来のパケットが新規フローエントリのものであると識別されるための識別情報を含むフロー挿入エンジン;および
前記フローの状態について指定されたゼロ個以上の状態作業を実行するよう構成された状態プロセッサ;
を有し、前記探索エンジンは、前記パケットが既存のフローのものであった場合、前記パケットを発見された既存のフローに属するものとして分類し、前記フロー挿入エンジンは、前記パケットが新たなフローのものであった場合、該新たなフローの新規フローエントリを前記フローエントリデータベースに格納し、前記新規フローエントリは、将来のパケットが該新規フローエントリのものであると識別されるための識別情報を含む、
パケットモニタ。
[態様42]パケットにおいて使用される前記プロトコルの少なくとも1つを前記パケット中のデータからどのように判定するかを記述する情報を含む抽出作業および分解作業のデータベースを格納する分解及び抽出作業メモリ;
一群の所定の状態遷移パターン及び状態作業を格納する状態パターン及び作業メモリであって、特定の会話フロー・シーケンスのパケットが特定の遷移パターンをたどることは、該特定の会話フロー・シーケンスが特定のアプリケーションプログラムの動作に関連付けられていることを示し、前記パターンをたどることのうちで各状態を訪れることは、1以上の所定の状態作業がある場合に、該状態についての所定の1以上の状態作業を実行することを含む、状態パターン及び作業メモリ;
前記状態パターン又は作業メモリに及び前記探索エンジンに結合され、前記パケットの前記会話フローのプロトコル及び状態を判別するよう構成されたプロトコル及び状態識別手段;
を有し、前記状態プロセッサは、前記フローエントリデータベースに、前記プロトコル及び状態識別手段に、並びに前記状態パターン及び作業メモリに結合され、前記状態プロセッサは、パケットのフローのプロトコル及び状態に関して前記状態パターン及び作業メモリで指定されているゼロ個以上の状態動作を実行するよう構成され、
前記分解サブシステムは前記パターン及び抽出作業メモリにも結合され、前記状態プロセッサは、パケットの会話フロー・シーケンスにどのアプリケーションプログラムが関連付けられているかを識別するプロセスを先に進める状態動作を実行し、前記状態プロセッサは、受け入れたパケットについて実行する状態作業が一切なくなるまで、一連の状態及び状態作業を通じて動作を進め、フローエントリを更新する、或いは前記状態プロセッサは、フローのそれ以上の分析が不要であることを示す最終状態に至るまで、一連の状態及び状態作業を通じて動作を進め、分析結果を通知する
態様41記載のパケットモニタ。
[態様43]前記フローエントリが前記フローの前記状態を含み、前記プロトコル及び状態識別手段は、前記探索エンジンが、受け入れられたパケットのフローのフローエントリを発見した場合に、前記フローエントリから前記パケットの前記状態を判定する態様42記載のパケットモニタ。
[態様44]前記分解サブシステムが前記選択された部分からハッシュを作成する手段を含み、前記探索エンジンは前記ハッシュを利用して前記フローエントリデータベースを探索するよう構成されており、前記ハッシュは前記フローエントリデータベース内に前記フローエントリを分散するように設計される態様42記載のパケットモニタ。
[態様45]前記分解及び抽出作業メモリに結合されたコンパイラプロセッサを更に有し、前記コンパイラプロセッサはコンパイルプロセスを実行するよう形成され、前記コンパイルプロセスは:
前記モニタが遭遇するパケットにおいて使用されうる前記プロトコルを記述する高レベルのプロトコル記述言語の命令を受信すること、および該プロトコル記述言語命令を複数の分解又は抽出作業、或いは、分解及び抽出作業両方に翻訳することを含み、それらの分解及び/又は抽出作業が前記分解及び抽出作業メモリ中に初期化される、態様42記載のパケットモニタ。
[態様46]前記プロトコル記述言語命令が、1つ又は複数のアプリケーションプログラム群と、アプリケーションプログラムに関連する特定の会話フロー・シーケンスの結果として生じる前記状態遷移パターン及び作業との間の対応関係をも記述し、前記コンパイラプロセッサは前記状態パターン及び作業メモリにも結合され且つコンパイルプロセスを実行して前記プロトコル記述言語命令を、前記状態パターン及び作業メモリ内に初期化される複数の状態パターン及び状態作業に翻訳する態様45記載のパケットモニタ。
[態様47]更に:
前記フローエントリデータベースの中でアクセスされやすいフローエントリ群への高速アクセスを提供するために、前記探索エンジンと前記フローエントリデータベースの間でそれらに結合されたキャッシュメモリを更に有する態様42記載のパケットモニタ。
[態様48]前記キャッシュが、完全連想式の、最長未使用時間に基づくキャッシュメモリとして機能するよう構成されている、態様47記載のパケットモニタ。
[態様49]前記キャッシュが、完全連想式の、最長未使用時間に基づくキャッシュメモリとして機能するよう構成されており、スタックとして構成された内容アドレス可能なメモリを有する態様48記載のパケットモニタ。
[態様50]前記フロー挿入エンジンが、各フローエントリ中にフローに関する1つ又は複数の統計的指標を格納するよう構成され、当該パケットモニタは、受け入れたパケットのフローエントリ中の前記統計的指標を更新する計算機を更に有する態様42記載のパケットモニタ。
[態様51]フローの前記アプリケーションプログラムが決定される場合に、前記アプリケーションに関連するおよび前記統計的指標から決定された1つ又は複数のネットワーク利用メトリックが、ネットワークパフォーマンスを監視するユーザに提供される態様50記載のパケットモニタ。
[態様52]前記入力バッファメモリは、前記接続点を通過する各パケットを受け入れるよう構成され、前記分解サブシステムは各パケットをリアルタイムで検査するよう構成される、態様41記載のパケットモニタ。
[態様53]前記探索エンジンは、探索が成功した場合に既存のフローの前記フローエントリを更新するよう構成されている、態様41記載のパケットモニタ。
[態様54]前記分解サブシステムは、前記選択された部分からハッシュを作成し且つ前記探索エンジンに対する特定のパケットについての入力に前記ハッシュを含めるよう構成され、前記探索エンジンは、前記ハッシュを用いて前記フローエントリデータベースを探索するよう構成されている、態様41記載のパケットモニタ。
[態様55]分解作業及び抽出作業のデータベースを含むメモリを更に有し、前記分解及び抽出データベースメモリは前記分解サブシステムに結合され、前記分解サブシステムは、分解及び抽出データベースから探索された1以上の作業に従って、前記分解作業及び/又は抽出作業を実行するよう構成されている、態様41記載のパケットモニタ。
[態様56]分解及び抽出作業の前記データベースが、前記パケットにおいて使用されるプロトコルを指示する前記パケット内のデータから、1つ以上のプロトコル依存性の抽出作業の群をどのように決定するかを記述する情報を含んでいる、態様55記載のパケットモニタ。
[態様57]前記分解サブシステムの前記出力に、前記探索エンジンにおよび前記フロー挿入エンジンに結合されたフローキーバッファを更に含み、前記分解サブシステムの前記出力は前記フローキーバッファを介して前記探索エンジンに結合され、前記フロー挿入エンジンは前記フローキーバッファを介して前記探索エンジンに結合される態様41記載のパケットモニタ。
[態様58]前記状態プロセッサは、前記探索エンジンおよび前記フローエントリデータベースメモリに結合され、前記パケットが既存のフローからのものであった場合、前記フローの最後に遭遇した状態から始めてフローの状態について指定されたゼロ個以上の状態作業を実行し、前記パケットが既存のフローからのものであった場合、新たなフローの初期状態に要求されるゼロ個以上の状態作業を実行するよう構成される、態様41記載のパケットモニタ。
[態様59]前記状態プロセッサが実行するよう構成されている状態作業が、パケット部分内の1つ以上のパターンを探索することを含む態様58記載のパケットモニタ。
[態様60]前記状態プロセッサはプログラム可能であり、前記分解サブシステムは前記状態プロセッサに結合された状態パターン及び作業メモリを更に含み、前記状態パターン及び作業メモリは、プロトコル依存性の状態パターン及び作業のデータベースを格納する態様58記載のパケットモニタ。
[態様61]前記フローキーバッファにおよび前記フローエントリデータベースメモリに結合された状態プロセッサを更に含み、該状態プロセッサは、前記パケットが既存のフローからのものであった場合、前記フローの最後に遭遇した状態から始めてフローの状態について指定されるゼロ個以上の状態作業を実行し、前記パケットが既存のフローからのものであった場合、新たなフローの初期状態に要求されるゼロ個以上の状態作業を実行するよう構成される、態様57記載のパケットモニタ。
[態様62]前記状態作業が、前記フローエントリを更新することを含み、前記フローエントリが、将来のパケットが前記フローエントリのものであると識別されるための識別情報を含む、態様58記載のパケットモニタ。
[態様63]前記分解及び抽出作業メモリに結合されたコンパイラプロセッサを更に有し、前記コンパイラプロセッサはコンパイルプロセスを実行するよう構成され、該コンパイルプロセスは:
前記モニタが遭遇するパケットにおいて使用されうる前記プロトコルおよびそのゼロ個以上の子プロトコルを記述する高レベルのプロトコル記述言語の命令を受信し、および
該プロトコル記述言語命令を、前記分解及び抽出作業メモリ中に初期化される複数の分解又は抽出作業或いは複数の分解及び抽出作業の双方に翻訳することを含む、態様41記載のパケットモニタ。
[態様64]前記分解及び抽出作業メモリに結合されたコンパイラプロセッサを更に有し、前記コンパイラプロセッサはコンパイルプロセスを実行するよう構成され、該コンパイルプロセスは:
1つ以上のアプリケーションプログラムの群と、アプリケーションプログラムに関連する特定の会話フロー・シーケンスの結果として生じる前記状態遷移パターン及び作業との間の対応関係を記述する高レベルのプロトコル記述言語の命令を受信し、および
該プロトコル記述言語命令を、前記状態パターン及び作業メモリ中に初期化される複数の状態パターンおよび状態作業に翻訳することを含む、態様60記載のパケットモニタ。
[態様65]前記フローエントリデータベースから、アクセスされやすいフローエントリ群への高速アクセスを行うよう構成された、前記探索エンジンおよび前記フローエントリデータベースメモリの間でそれらに結合されたキャッシュサブシステムを更に有する態様41記載のパケットモニタ。
[態様66]前記キャッシュサブシステムが、1つ以上の内容アドレス可能なメモリセルを含む連想式キャッシュサブシステムである態様65記載のパケットモニタ。
[態様67]前記キャッシュサブシステムが、最長未使用時間に基づくキャッシュメモリであり、キャッシュミスが、最も長く未使用であるキャッシュエントリを更新する態様66記載のパケットモニタ。
[態様68]前記フロー挿入エンジンが、前記フローに関する1つ以上の統計的指標と共に各フローエントリを格納し、前記分解サブシステムは、受け入れたパケットの前記フローエントリ中の統計的指標の少なくとも1つを更新する計算機を更に有する態様41記載のパケットモニタ。
[態様69]前記1つ以上の統計的指標が、前記フローに関するパケット総数,時間,および最後に入力された時点から現時点までの時間差を含む群から選択された指標を含む態様68記載のパケットモニタ。
[態様70]フローエントリにおける前記統計的指標の1つまたは複数から、前記フローに関する1つ以上のネットワーク利用メトリックを判定するよう構成された統計プロセッサを更に有する態様68記載のパケットモニタ。
[態様71]前記フローエントリデータベースが複数のビンに組織化され、複数のビン各々が1つ以上のフローエントリを有し、前記分解サブシステムは、前記選択されたパケット部分に基づいてハッシュデータ値を作成するよう構成され、前記探索エンジンは、作成されたハッシュデータ値を介して前記ビンにアクセスするよう構成されている、態様41記載のパケットモニタ。
[態様72]前記分解サブシステムは、比較的浅いバケットが作成され、前記探索エンジンによる探索が比較的高速に行われるよう、複数のフローエントリを前記フローエントリデータベースにわたって分散させるような仕方でハッシュデータ値を作成するよう構成されている、態様71記載のパケットモニタ。
[態様73]前記状態プロセッサが新しいフローおよび既存のフローの両者をアプリケーションにより分類するために分析するよう構成され、1組の所定の規則に基づいて状態から状態に進む態様58記載のパケットモニタ。
[態様74]前記探索エンジンが、前記分解サブシステムから分解レコードが到着すると直ちに処理を開始するよう構成されている、態様41記載のパケットモニタ。
[態様75]前記探索エンジンは、フロー状態エントリを検査してフローキーが前記状態プロセッサに送られるべきか否かを確認するよう構成されており、前記フローについてのプロトコル識別子を出力するよう構成されている、態様58記載のパケットモニタ。
[態様76]前記探索エンジンは、前記パケットが既存のフローのものであった場合、該フローエントリで維持されている1以上の統計的指標を格納するよう構成されており、前記フロー挿入エンジンは、前記パケットが新たなフローのものであった場合、前記フローエントリで維持されている1つ以上の統計的指標を格納するよう構成されている、態様41記載のパケットモニタ。
[態様77]前記分解サブシステムは、受信したパケットから識別情報を抽出するよう構成されており、前記探索エンジンは抽出された識別情報の関数を用いて探索を行うよう構成されている、態様76記載のパケットモニタ。
[態様78]前記1つ以上の統計的指標が、前記フローに関するパケット総数,時間,および最後に入力された時点から現時点までの時間差を含む群から選択された指標を含む態様76記載のパケットモニタ。
[態様79]フローに関する1つ以上のメトリックを、前記フローのフローエントリにおける前記統計的指標の一つ又は複数から決定する統計プロセッサを更に有する態様76記載のパケットモニタ。
[態様80]前記統計プロセッサが、前記1つ以上のメトリックを時々決定および報告するよう構成されている、態様79記載のパケットモニタ。
[態様81]前記データベースを格納する前記メモリに及び前記探索エンジンに結合されたキャッシュサブシステムを更に有し、前記キャッシュサブシステムは前記フローエントリデータベースのフローエントリに高速にアクセスするよう構成されている態様41記載のパケットモニタ。
[態様82]前記探索エンジンは前記分解サブシステムを介して前記パケット捕捉装置に結合され、前記分解サブシステムは受信したパケットから識別情報を抽出するよう構成され、各フローエントリは前記フローエントリに含まれる識別情報によって識別され、前記探索エンジンは、抽出した識別情報の関数を使用して前記キャッシュサブシステムを探索するよう構成されている、態様81記載のパケットモニタ。
[態様83]前記キャッシュサブシステムが、1つ以上の内容アドレス可能なメモリセルを含む連想式キャッシュサブシステムである態様82記載のパケットモニタ。
[態様84]前記キャッシュサブシステムが:
フローエントリデータベースメモリに結合された1組のキャッシュメモリ要素であって、各キャッシュメモリ要素はフローエントリを入力するための入力ポートを含み、前記フローエントリデータベースのフローエントリを格納するよう構成されている、1組のキャッシュメモリ要素;
内容アドレス可能なメモリセルと呼ばれ、最上部の内容アドレス可能なメモリセルから最下部の内容アドレス可能なメモリセルへの接続の順序に従って接続された1組の内容アドレス可能なメモリセルであって、内容アドレス可能なメモリセル各々は、前記キャッシュメモリ要素の1つに対するアドレスおよびポインタを含み且つ内容アドレス可能なメモリセル各々は:
入力を有する一致回路であって、前記入力がその内容アドレス可能なメモリセル内のアドレスと同一であった場合に、その内容アドレス可能なメモリセルが一致出力をアサートし、アサートされた一致出力はヒットを示す一致回路、
アドレスおよびポインタを受け入れるよう構成された内容アドレス可能なメモリセル入力、および
内容アドレス可能なメモリセルのアドレス出力および内容アドレス可能なメモリセルのポインタ出力
を含む1組の内容アドレス可能なメモリセル;
前記内容アドレス可能なメモリセルの組に結合される内容アドレス可能なメモリセル・コントローラ;および
前記内容アドレス可能なメモリセル・コントローラに、前記キャッシュメモリの組におよび前記フローエントリメモリに結合されたメモリコントローラ;
を含み、前記内容アドレス可能なメモリセルの一致回路入力が前記探索エンジンに結合され、前記一致回路入力への入力が、前記入力に等しいアドレスを含むゼロ個以上の内容アドレス可能なメモリセルにおいて一致出力を生じさせ、
前記内容アドレス可能なメモリセル・コントローラは、特定の内容アドレス可能なメモリセルが指示するキャッシュメモリ要素が時間と共に変化するように構成される態様82記載のパケットモニタ。
[態様85]前記最下部の内容アドレス可能なメモリセルが最も長く未使用であるキャッシュメモリ要素を指すように、前記内容アドレス可能なメモリセル・コントローラが構成される態様84記載のパケットモニタ。
[態様86]前記最上部の内容アドレス可能なメモリセルから始まる内容アドレス可能なメモリセル各々のアドレスおよびポインタ出力が、次の内容アドレス可能なメモリセルのアドレスおよびポインタ入力に結合され、最後の次の内容アドレス可能なメモリセルは最下部の内容アドレス可能なメモリセルであり、キャッシュヒットが起こった場合に、ヒットを引き起こした内容アドレス可能なメモリセルのアドレスおよびポインタ内容がスタックの最上部の内容アドレス可能なメモリセルに入れられ、アサートされた一致出力を生成した内容アドレス可能なメモリセルより上の内容アドレス可能なメモリセルのアドレスおよびポインタ内容は下にシフトされ、最も長く未使用であるキャッシュメモリ要素が最下部の内容アドレス可能なメモリセルによって指示され最も最近使用したキャッシュメモリ要素が最上部の内容アドレス可能なメモリセルによって指示されるよう利用の最近さに従って内容アドレス可能なメモリセルが順序付けられるように、前記アドレス可能なコンテンツメモリセルコントローラが構成される態様85記載のパケットモニタ。
[態様87]前記探索エンジンに結合され、前記探索エンジンによる探索の結果が前記受信したパケットがあるフローエントリに属するというものである場合にフローの状態を判定し、前記受信したパケットが前記フローエントリデータベース内のフローに属していなかった場合に初期状態を設定するよう構成された状態判定手段を更に有し;
前記状態プロセッサは、前記探索エンジンにおよび前記状態判定手段に結合され、前記パケットが既存のフローからのものであった場合に、前記フローの最後に遭遇した状態から始めて前記フローの状態について指定されたゼロ個以上の状態作業を実行し、前記パケットが既存のフローからのものであった場合に、新たなフローの初期状態に要求されるゼロ個以上の状態作業を実行する態様41記載のパケットモニタ。
[態様88]前記状態プロセッサが実行するよう構成されている1組の可能な状態作業が、パケット部分における1つ以上のパターンを探索することを含む態様87記載のパケットモニタ。
[態様89]前記分解サブシステムが、前記接続点を通過する総てのパケットをリアルタイムで処理する態様88記載のパケットモニタ。
[態様90]前記状態プロセッサがプログラム可能であり、前記分解サブシステムが前記状態プロセッサに結合された状態パターン及び作業メモリを更に含み、前記状態作業メモリが状態パターン及び作業のデータベースを格納する態様87記載のパケットモニタ。
[態様91]前記パケット捕捉装置,前記状態プロセッサおよび前記探索エンジンに結合されるバッファを更に有し、前記バッファは前記受信したパケットの少なくとも選択された部分を受け入れるよう構成されている、態様87記載のパケットモニタ。
[態様92]前記状態プロセッサが、バッファ内容の中にNR個のユニットからなる参照ストリングを探索するよう構成された探索装置を含み、当該探索装置は:
第1参照ストリングの前記NR個のユニットを受信するよう構成された第1参照ストリングレジスタ;
直列に結合され且つ前記バッファに結合された1つ以上のターゲットデータレジスタであって、前記ターゲットデータレジスタは前記バッファから内容を受信するよう構成されている1つ以上のターゲットデータレジスタ;および
第1の複数の比較器群であって、前記ターゲットデータレジスタ内の1組の開始位置の各々に一つの比較器群が対応し、特定の開始位置の比較器群が、前記第1参照レジスタの各ユニットと前記特定の開始位置から始まる前記ターゲットデータレジスタのNR個のユニットとに結合され、前記第1参照レジスタ内容と、前記特定の開始位置から始まる前記ターゲットデータレジスタのNR個の連続するユニットの対応する内容とを比較する第1の複数の比較器群;
を有し、各比較器群は、対応する異なる開始位置から始まる前記ターゲットデータの中での前記第1参照ストリングの一致の有無を示し、前記第1の複数の比較器群は、前記開始位置のうち任意のもので始まる前記ターゲットデータレジスタに前記第1参照ストリングが含まれているか否かを並列的に示す態様91記載のパケットモニタ。
[態様93]コンピュータネットワーク上の接続点を通過するパケットに対してプロトコル固有の作業を実行する方法であって、当該方法は:
前記パケットを受信する段階;
階層モデルに従う複数のプロトコルに関する1組のプロトコル記述を受信する段階であって、特定の階層レベルにおける特定のプロトコルに関するプロトコル記述は:
前記特定のプロトコルの少なくとも1つの子プロトコルが存在する場合に、該特定のプロトコルのその1つ以上の子プロトコルを含み、前記パケットは、前記特定のプロトコルのゼロ個以上の特定の子プロトコルについて、前記特定の子プロトコルに関連する前記パケット中の1つ以上の場所に情報を含み、
前記プロトコル記述は、前記特定のプロトコルのゼロ個以上の子プロトコルに関連する情報が格納される前記パケット内の1つ以上の場所を含み,および
前記プロトコル記述は、少なくとも1つのプロトコル固有の実行すべき作業が存在する場合に、前記特定の階層レベルにおける特定のプロトコルに関して、前記パケットに対して実行されるべき1つ以上のプロトコル固有の作業を含むところの段階;および
前記パケットの基本プロトコルおよび前記パケットで使用される前記プロトコルの子に基づく前記1組のプロトコル記述によって特定される前記パケットに対する前記プロトコル固有の作業を実行する段階;
を有する方法。
[態様94]プロトコル固有の作業を実行する段階が、前記子に対するゼロ個以上の子に関して繰り返し実行される態様93記載の方法。
[態様95]当該方法がパケットの内容に従って様々なプロトコルに適応するように、プロトコル固有の作業を実行する段階で実行されるプロトコル固有の作業が前記パケットの内容に依存する態様93記載の方法。
[態様96]メモリ内にデータベースを格納する段階を更に有し、前記データベースは、前記1組のプロトコル記述から生成され、可能なプロトコルに関する情報を含むデータ構造を有し、任意のプロトコルに対して子プロトコル関連情報を探索するために組織され、前記データ構造の内容は1つ以上のインデックスの組によって指示され、前記データベースエントリは有効性の指示を含むインデックス値の特定の組によって指示され、
前記子プロトコル関連情報は子認識パターンを含み、前記プロトコル特有作業を実行する段階は、基本階層から始まる任意の特定のプロトコル階層レベルにおいて、前記子フィールドに関する前記特定のプロトコルにおける前記パケットを探索し、該探索は、有効なエントリが見出されるまで前記データ構造を指示することを含み、前記データ構造は前記インデックスの組を使った高速検索用に構成されている、態様93記載の方法。
[態様97]前記プロトコル記述がプロトコル記述言語で用意され、前記方法が、前記データベースを作成するためにプロトコル記述言語の記述をコンパイルする段階を更に有する態様96記載の方法。
[態様98]前記データ構造が、各プロトコルに対して少なくとも1つのアレイの1組のアレイを有し、各アレイは第1インデックスによって識別され、各アレイは、子プロトコル関連情報が格納される前記パケット内の場所である第2インデックスによって更に指示され、前記データ構造における有効なエントリを見出すことが、識別されたプロトコルに関する子認識パターンを見出すために前記パケット内の前記場所を与える、態様96記載の方法。
[態様99]各アレイは子プロトコル関連情報が格納される前記パケット内の領域の大きさである第3インデックスによって更に指示され、前記データ構造における有効なエントリを見出すことは、前記子認識パターンを見出すために前記パケットにおける前記場所および前記領域の大きさを与えることを特徴とする態様98記載の方法。
[態様100]前記データ構造における有効エントリのまばらさ(sparseness)を利用した圧縮手法に従って前記データ構造が圧縮される態様99記載の方法。
[態様101]前記圧縮手法が、競合する共通エントリを有しない2つ以上のアレイを結合する態様100記載の方法。
[態様102]前記データ構造が各プロトコルに対して少なくとも1つのテーブルの1組のテーブルを有し、各テーブルは、第1インデックスによって識別され、各テーブルは更に、前記子認識パターンである第2インデックスによって指示され、前記データ構造は、各プロトコルに対して、子プロトコル関連情報が格納される前記パケット内の場所を与えるテーブルを更に含み、前記データ構造における有効なエントリを見出すことが、識別されたプロトコルに関する子認識パターンを見出すために前記パケット内の前記場所を与える態様96記載の方法。
[態様103]テーブルの前記組における有効エントリのまばらさを利用した圧縮手法に従って前記データ構造が圧縮される態様102記載の方法。
[態様104]前記圧縮手法が、競合する共通エントリを有しない2つ以上のテーブルを結合する態様103記載の方法。
[態様105]前記プロトコル固有の作業が、前記パケットの選択された部分を抽出し、会話フローに属するものとして前記パケットを識別するために前記選択された部分の関数を形成するための前記パケットに対する1つ以上の分解および抽出作業を含む、態様93記載の方法。
[態様106]前記プロトコル記述が、プロトコル記述言語で用意される態様93記載の方法。
[態様107]プロトコル記述言語の記述をコンパイルしてデータベースを作成し、前記データベースをメモリ内に格納する段階を更に有し、前記データベースは、前記1組のプロトコル記述から生成され、可能なプロトコルに関する情報を含むデータ構造を有し、任意のプロトコルに対して子プロトコル関連情報を探索するように組織され、前記データ構造の内容は1つ以上のインデックスの組によって指示され、前記データベースエントリは有効性の指示を含むインデックス値の特定の組によって指示され、
前記子プロトコル関連情報は子認識パターンを含み、
前記プロトコル固有の作業を実行する段階は、基本階層から始まる任意の特定のプロトコル階層レベルにおいて、前記子フィールドに関する前記特定のプロトコルにおける前記パケットを探索し、該探索は、有効なエントリが見出されるまで前記データ構造を指示することを含み、前記データ構造は、前記インデックスの組を利用して高速探索されるよう構成される、態様106記載の方法。
[態様108]以前に遭遇した会話フローに関する少なくとも1つフローエントリをフローエントリデータベースが含む場合に、ゼロ個以上のフローエントリを、以前に遭遇した会話フロー各々について少なくとも1つのフローエントリで含むフローエントリデータベースを探索する段階であって、該探索は、前記選択されたパケット部分の少なくとも一部を利用し、前記パケットが既存のフローエントリに一致するか否かを判定する段階;
前記パケットが既存のフローのものであった場合、前記パケットを発見された既存のフローに属するものとして分類する段階;および
前記パケットが新たなフローのものであった場合、前記新たなフローのための新規フローエントリであって、将来のパケットが該新規フローエントリのものであると識別されるための識別情報を含む新規フローエントリを、フローエントリデータベースに格納する段階;
を有し、前記分解および抽出作業が、少なくとも1つのパケットヘッダの内容に依存しない、或いはゼロ個以上のパケットヘッダの内容に依存する態様105記載の方法。
[態様109]前記プロトコル固有の作業が、更に、前記パケットの前記フローの前記状態の関数である1つ以上の状態処理作業を含む態様105記載の方法。
[態様110]前記プロトコル固有の作業が、前記パケットの前記フローの前記状態の関数である1つ以上の状態処理作業を含む態様93記載の方法。
[態様111]コンピュータネットワーク上の接続点を通過するパケットの内容を処理するプロセッサであって:
前記接続点を通過する各パケットの前記内容の少なくとも一部を受信するバッファ;
状態プロセッサに対する命令群のうちの1つ以上の命令を含むメモリ;
前記バッファに結合された算術論理装置;
前記算術論理装置に及び前記命令メモリに結合され、命令をデコードする制御ブロック;及び
前記命令メモリに及び前記算術論理装置に結合され、前記メモリ内の処理すべき次の状態プロセッサ命令を示すプログラムカウンタ;
を有し、前記算術論理装置は、パケットの内容の中で参照ストリングを探索する1つ以上の比較器を有する探索装置を含むプロセッサ。
[態様112]前記状態プロセッサが、前記接続点を通過する全パケットの内容をリアルタイムで処理するよう構成されている、態様111記載のプロセッサ。
[態様113]前記命令群が、前記算術論理装置の前記探索装置を呼び出し、前記パケットの或る範囲内における未知の位置から始まる前記パケット中の特定の参照ストリングを探索させる命令を含む態様111記載のプロセッサ。
[態様114]前記探索装置が、パケットの内容中で、一群の参照ストリングのうちの任意のものを探索するよう構成され、前記命令群が、前記探索装置を呼び出し、前記パケットの或る範囲内における未知の位置から始まる、前記パケット中の、特定の一群の参照ストリングのうちの任意のものを探索させる命令を含む態様111記載のプロセッサ。
[態様115]ターゲットデータ内の一群の開始位置のうちの任意のものから始まる前記ターゲットデータ中のNR個のユニットからなる参照ストリングを探索する探索装置であって:
第1参照ストリングの前記NR個のユニットを受信するよう構成された第1参照レジスタ;
直列に結合され前記ターゲットデータを受信する1つ以上のターゲットデータレジスタ;および
第1の複数の比較器群であって、前記開始点の各々に一つの比較器群が対応し、特定の開始位置からの比較器群は、前記第1参照レジスタの各ユニットと前記特定の開始位置から始まる前記ターゲットデータレジスタのNR個のユニットとに結合され、前記第1参照レジスタ内容と、前記特定の開始位置から始まる前記ターゲットデータレジスタのNR個の連続するユニットの対応する内容とを比較する第1の複数の比較器群;
を有し、各比較器群は対応する異なる開始位置から始まる前記ターゲットデータの中で前記第1参照ストリングの一致の有無を示すよう動作し,前記第1の複数の比較器群は、前記開始位置のうちの任意のもので始まる前記ターゲットデータレジスタ内に前記第1参照ストリングが含まれているか否かを並列に示すよう動作する、
探索装置。
[態様116]1組の可能な開始位置が、Nstart個の位置を含み、前記1つ以上のターゲットデータレジスタが前記ターゲットデータの少なくともNR+Nstart−1個のユニットを受信するよう直列に結合され、前記第1の複数の比較器群が、Nstart個の開始位置各々について1つの比較器群でNstart個の比較器群を含む態様115記載の探索装置。
[態様117]前記ターゲットデータレジスタの各々は、データのNstart個のユニットを保持する態様116記載の探索装置。
[態様118]前記ターゲットデータのNstart個のユニットが前記ターゲットデータレジスタ内に1クロックサイクルでクロック入力されるように前記ターゲットデータレジスタが動作し、前記第1の複数の比較器群は、前記第1参照ストリングが、Nstart個の開始位置の何れかにおいて開始するターゲット領域中にあるか否かを1クロックサイクルで示すよう動作する、態様117記載の探索装置。
[態様119]オフセットNoffsetを特定するための手段を更に有し、第1の動作クロックサイクルの間は前記第1のNoffset個の開始位置が無視され、前記第1の複数の比較器群は、前記第1参照ストリングが、最初のNoffset個の開始位置の後に始まる前記第1データレジスタのNstart−Noffset個のの開始位置のいずれかで始まるターゲット領域中にあるか否かを、前記第1クロックサイクルで示し、以後のクロックサイクルにおいて総てのNstart個のの開始位置が処理され、1つ以上のクロックサイクルにおいて、前記探索装置が、最初のNoffset個のユニット以外の任意の場所で始まるターゲットデータ中に前記第1参照ストリングがあるか否かを示すよう動作する、態様118記載の探索装置。
[態様120]各比較器群がNR個の隣接する比較器を有し、各比較器は参照ユニット入力、ターゲットユニット入力および一致を示す出力を有し、前記参照およびターゲットデータ入力が一致し且つ先行する比較器の出力が一致を示す場合に比較器の出力がアサートされるように、各比較器は先行する比較器の出力に結合される態様115記載の探索装置。
[態様121]1つ以上の更なる参照ストリングのNR個のユニットを受信する1つ以上の更なる参照レジスタ;および
1つ以上の更なる複数の比較器群であって、対応する複数の開始位置のそれぞれについて一つの比較器群があり、前記更なる複数のうちの各特定の比較器群が、対応する更なる参照レジスタの各ユニットと前記特定の比較器群の開始位置から始まる前記データレジスタのNR個のユニットとに結合され、対応する更なる参照レジスタ内容と、前記特定の比較器群の開始位置から始まる前記ターゲットデータレジスタのNR個ユニットとを比較する1つ以上の更なる複数の比較器群;
を更に有し、前記探索装置が、前記開始位置のうち任意のものから始まる前記ターゲットデータレジスタの内容中において、NR個のユニットの前記第1又は更なる参照ストリングのうちの任意のものを探索するよう動作する、態様115記載の探索装置。
[態様122]各比較器群がNR個の隣接する比較器を有し、各比較器は参照ユニット入力、ターゲットデータユニット入力および一致を示す出力を有し、前記参照およびターゲットデータ入力が一致し先行する比較器の出力が一致を示す場合に比較器の出力がアサートされるように、各比較器は先行する比較器の出力に結合される態様121記載の探索装置。
[態様123]各比較器群はNR個の隣接する比較器を有し、各比較器は参照ユニット入力、ターゲットデータユニット入力、イネーブル入力および一致を示す出力を有し、前記参照およびターゲットデータ入力が一致し前記イネーブル入力がアサートされる場合に比較器の出力がアサートされ、
特定の開始位置に関する特定の比較器群に対して、隣接する比較器の参照入力が前記参照レジスタの隣接するユニットに結合され、隣接する比較器のターゲットデータ入力が、特定の開始位置から始まるターゲットデータレジスタの隣接するユニットに結合され、その比較器群の第1の比較器がイネーブルされ、各比較器のイネーブル入力が先行する比較器の出力に結合され、参照ストリングのNR個のユニットおよび前記ターゲットデータのNR個のユニットが合致する場合に、最後の比較器の出力がアサートされる態様115記載の探索装置。
[態様124]1ユニットが1バイトである態様115記載の探索装置。
[態様125]前記複数の比較器群の最後の比較器出力が、前記ターゲットデータ中に前記参照ストリングの一致が生じたか否かおよびその場所を示す出力を有する優先選択器に結合される態様123記載の探索装置。
[態様126]NRが16バイトである態様124記載の探索装置。
[態様127]NRが16バイトであり、データレジスタの各々がNstartバイトであり、前記探索装置が前記第1データレジスタ内の任意の場所から始まる一致を示すよう動作する態様116記載の探索装置。
[態様128]ターゲットデータストリーム内でNR個のユニットからなる参照ストリングを探索するよう構成された探索装置であって:
入力のNR個の対と、前記入力のNR個の対の各対の一致を示す出力とを有する第1のNRユニット比較器;
前記参照ストリングの値を示し行列の第1の軸を定めるNR個の接続部と、前記ターゲットデータの値を示し前記第1の軸に垂直な行列の第2の軸を定める、前記ターゲットデータの第1の開始位置から始まり終了位置で終了するNR個の接続部;
を有し、前記ターゲットデータのNR個の接続部が、前記NR個の参照ストリングの接続部と比較されるように、前記第1の比較器が前記行列の対角線に沿って並べられる、
探索装置。
[態様129]前記行列における前記ターゲットデータ接続部に平行に且つ隣接して、且つ前記終了位置から始まる1つ以上の付加的な接続部;および
前記付加的な接続部の各々について及びそれらに対応する付加的なNRユニット比較器であって、各付加的な比較器は前記第1比較器に平行であり且つ前記行列の中で前記付加的な接続部に向けてシフトされる付加的なNRユニット比較器;
を有し、各付加的な比較器が、前記参照ストリングを、異なる開始点から始まる前記ターゲットデータのNR個のユニットの連続する値の異なる組と比較する態様128記載の探索装置。
[態様130]1つ以上の更なるNRユニット比較器群;および
前記更なるNRユニット比較器群に対応する更なる接続部群であって、前記更なる接続部が1つ以上の付加的な行列を定め、前記第1軸に沿う更なる接続部群の各々が、前記第1の軸に沿う1つ以上の対応する更なる参照ストリングの値を示し、NR個の接続部が前記第2の軸に沿う前記ターゲットデータの値を示す、更なる接続部群;
を有し、付加的な比較器群の各々が、前記参照ストリングのうち対応するものと、異なる開始位置から始まる前記ターゲットデータのNR個の隣接する値の異なる組を比較する態様129記載の探索装置。
[態様131]外部メモリの1つ以上の要素を探索するキャッシュシステムであって:
前記外部メモリに結合された1組のキャッシュメモリ要素であって、各キャッシュメモリ要素は前記外部メモリの要素を入力するための入力ポートを含み、前記外部メモリの要素の入力を格納する1組のキャッシュメモリ要素;
上部のアドレス可能なコンテンツメモリセルから下部のアドレス可能なコンテンツメモリセルへの接続の順序に従って接続された1組のアドレス可能なコンテンツメモリセルであって、アドレス可能なコンテンツメモリセル各々が、前記キャッシュメモリ要素の1つに対するアドレスおよびポインタを含み、アドレス可能なコンテンツメモリセル各々は:
入力を有する一致回路であって、前記入力がアドレス可能なコンテンツメモリセルのアドレスと同一である場合にアドレス可能なコンテンツメモリセルが一致出力をアサートし、アサートされた一致出力はヒットを示す一致回路,
アドレスおよびポインタを受け入れるアドレス可能なコンテンツメモリセル,および
アドレス可能なコンテンツメモリセルのアドレス出力およびアドレス可能なコンテンツメモリセルのポインタ出力
を含む1組のアドレス可能なコンテンツメモリセル;
前記アドレス可能なコンテンツメモリセルの組に結合されたアドレス可能なコンテンツメモリセルコントローラ;および
前記アドレス可能なコンテンツメモリセルコントローラ,前記キャッシュメモリの組および前記外部メモリに結合されたメモリコントローラ
を含み、前記一致回路入力への入力が、前記入力に等しいアドレスを含む任意のアドレス可能なコンテンツメモリセルで一致出力を生じさせるように、前記アドレス可能なコンテンツメモリセルの一致回路入力が結合され、および
前記アドレス可能なコンテンツメモリセルコントローラが、特定のCAMが指示するキャッシュメモリ要素が時間と共に変化するキャッシュシステム。
[態様132]前記下部のアドレス可能なコンテンツメモリセルが最も長く未使用であるキャッシュメモリ要素を指示するように、前記CAMコントローラが形成され、前記アドレス可能なコンテンツメモリセルコントローラは、最も長く未使用であるキャッシュメモリ要素が、処理される第1メモリ要素であるようにアドレス可能なコンテンツメモリセルコントローラが形成される態様131記載のキャッシュシステム。
[態様133]前記上部のアドレス可能なコンテンツメモリセルから始まるアドレス可能なコンテンツメモリセル各々のアドレスおよびポインタ出力が、次のアドレス可能なコンテンツメモリセルのアドレスおよびポインタ入力に結合され、次のアドレス可能なコンテンツメモリセルの内の最後が下部のアドレス可能なコンテンツメモリセルであり、キャッシュヒットが起こった場合に、ヒットを引き起こしたCAMのアドレスおよびポインタの内容はスタックの上部のアドレス可能なコンテンツメモリセルに配置され、アサートされた一致出力を引き出したアドレス可能なコンテンツメモリセルより上側のCAMのアドレスおよびポインタの内容はシフトダウンされ、下部のアドレス可能なコンテンツメモリセルよって指示される最も長く未使用であるキャッシュメモリ要素と共におよび上部のアドレス可能なコンテンツメモリセルによって指示される最も長く未使用であるキャッシュメモリ要素と共に、最近の利用度に従ってアドレス可能なコンテンツメモリセルが順序付けられる態様132記載のキャッシュシステム。
[態様134]最初に処理されるキャッシュメモリエントリである最も長く未使用であるエントリと共に、キャッシュメモリ要素の置換が、利用の最新性とは逆の順序に従って行われるように、アドレス可能なコンテンツメモリセルコントローラが形成される態様133記載のキャッシュシステム。
[態様135]各メモリ要素がメモリのページである態様131記載のキャッシュシステム。
[態様136]各キャッシュメモリ要素は、それがダーティであるか否かの指標と共に用意され、前記アドレス可能なコンテンツメモリセルコントローラは、前記のダーティな内容を前記外部メモリにバックアップすることによって、ダーティキャッシュメモリ要素をクリーニングする特徴とする態様131記載のキャッシュシステム。
[態様137]最も長く未使用であることを指針にする置換法に従って、キャッシュ内容が置換される必要が生じるまで、キャッシュメモリ要素の内容がクリーニング後も維持される態様136記載のキャッシュシステム。
[態様138]各キャッシュメモリ要素は、それがダーティであるか否かの指標と共に用意され、前記アドレス可能なコンテンツメモリセルコントローラは、前記のダーティな内容を前記外部メモリにバックアップすることによって、ダーティキャッシュメモリ要素をクリーニングする特徴とする態様132記載のキャッシュシステム。
[態様139]前記アドレス可能なコンテンツメモリセルコントローラが、前記キャッシュメモリ要素の内容を置換するのに先立って、ダーティキャッシュメモリ要素をクリーニングする態様138記載のキャッシュシステム。
[態様140]前記アドレス可能なコンテンツメモリセルコントローラが、前記キャッシュメモリ要素の内容を置換するのに先立って、ダーティキャッシュメモリ要素をクリーニングする態様119記載のキャッシュシステム。
[態様141]各キャッシュメモリ要素は、それがダーティであるか否かの指標と共に用意され、前記アドレス可能なコンテンツメモリセルコントローラは、前記のダーティな内容を前記外部メモリにバックアップすることによって、利用の最新性とは逆の順序で、ダーティキャッシュメモリ要素をクリーニングする態様133記載のキャッシュシステム。
[態様142]前記アドレス可能なコンテンツメモリセルコントローラがアイドルのときはいつでも、アドレス可能なコンテンツメモリセルコントローラは、利用の最新性とは逆の順序で自動的にクリーニングを進める態様141記載のキャッシュシステム。
[態様143]外部メモリの1つ以上の要素を探索するキャッシュシステムであって:
前記外部メモリに結合された1組のキャッシュメモリ要素であって、各キャッシュメモリ要素は前記外部メモリの要素を入力するための入力ポートを含み、外部メモリ要素に入力を格納する1組のキャッシュメモリ要素;および
キャッシュメモリ要素の1つに対するアドレスおよびポインタを含む1組のアドレス可能なコンテンツメモリセルであって、前記入力がアドレス可能なコンテンツメモリセルのアドレスと同一である場合にアドレス可能なコンテンツメモリセルが一致出力をアサートする入力を有する一致回路を含む1組の内容アドレス可能なメモリセル;
を有し、特定のアドレス可能なコンテンツメモリセルの指示するキャッシュメモリ要素が時間と共に変化するキャッシュシステム。
[態様144]アドレス可能なコンテンツメモリセルが上部から下部への順序で結合され、下部のアドレス可能なコンテンツメモリセルは最も長く未使用であるキャッシュメモリ要素を指示する態様143記載のキャッシュシステム。
Claims (1)
- コンピュータネットワーク上の接続点を通過するパケットの内容を処理するプロセッサであって:
前記接続点を通過する各パケットの前記内容の少なくとも一部を受信するバッファ;
状態プロセッサに対する命令群のうちの1つ以上の命令を含むメモリ;
前記バッファに結合された算術論理装置;
前記算術論理装置に及び前記命令メモリに結合され、命令をデコードする制御ブロック;及び
前記命令メモリに及び前記算術論理装置に結合され、前記メモリ内の処理すべき次の状態プロセッサ命令を示すプログラムカウンタ;
を有し、前記算術論理装置は、パケットの内容の中で参照ストリングを探索する1つ以上の比較器を有する探索装置を含むプロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14190399P | 1999-06-30 | 1999-06-30 | |
US60/141,903 | 1999-06-30 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010177158A Division JP5517821B2 (ja) | 1999-06-30 | 2010-08-06 | ネットワークにおけるトラフィックを監視する方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014042290A true JP2014042290A (ja) | 2014-03-06 |
JP5850896B2 JP5850896B2 (ja) | 2016-02-03 |
Family
ID=22497736
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001507214A Pending JP2003524317A (ja) | 1999-06-30 | 2000-06-30 | ネットワークにおけるトラフィックを監視する方法および装置 |
JP2010177158A Expired - Lifetime JP5517821B2 (ja) | 1999-06-30 | 2010-08-06 | ネットワークにおけるトラフィックを監視する方法および装置 |
JP2010177157A Expired - Lifetime JP5238769B2 (ja) | 1999-06-30 | 2010-08-06 | ネットワークにおけるトラフィックを監視する方法および装置 |
JP2013206575A Expired - Lifetime JP5850896B2 (ja) | 1999-06-30 | 2013-10-01 | ネットワークにおけるトラフィックを監視する方法および装置 |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001507214A Pending JP2003524317A (ja) | 1999-06-30 | 2000-06-30 | ネットワークにおけるトラフィックを監視する方法および装置 |
JP2010177158A Expired - Lifetime JP5517821B2 (ja) | 1999-06-30 | 2010-08-06 | ネットワークにおけるトラフィックを監視する方法および装置 |
JP2010177157A Expired - Lifetime JP5238769B2 (ja) | 1999-06-30 | 2010-08-06 | ネットワークにおけるトラフィックを監視する方法および装置 |
Country Status (8)
Country | Link |
---|---|
US (3) | US6651099B1 (ja) |
EP (4) | EP1788489A1 (ja) |
JP (4) | JP2003524317A (ja) |
CN (6) | CN1293502C (ja) |
AT (2) | ATE495500T1 (ja) |
AU (1) | AU775495B2 (ja) |
DE (2) | DE60045552D1 (ja) |
WO (1) | WO2001001272A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10623338B2 (en) | 2017-11-14 | 2020-04-14 | Fujitsu Limited | Information processing device, information processing method and non-transitory computer-readable storage medium |
Families Citing this family (601)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6560611B1 (en) * | 1998-10-13 | 2003-05-06 | Netarx, Inc. | Method, apparatus, and article of manufacture for a network monitoring system |
BR9915633A (pt) | 1998-11-24 | 2001-11-13 | Niksun Inc | Aparelho e método para coleta e análise de dadosde comunicações |
US6952409B2 (en) * | 1999-05-17 | 2005-10-04 | Jolitz Lynne G | Accelerator system and method |
US6771646B1 (en) | 1999-06-30 | 2004-08-03 | Hi/Fn, Inc. | Associative cache structure for lookups and updates of flow records in a network monitor |
DE60045552D1 (de) * | 1999-06-30 | 2011-03-03 | Apptitude Inc | Verfahren und gerät um den netzwerkverkehr zu überwachen |
US6789116B1 (en) * | 1999-06-30 | 2004-09-07 | Hi/Fn, Inc. | State processor for pattern matching in a network monitor device |
US6839751B1 (en) * | 1999-06-30 | 2005-01-04 | Hi/Fn, Inc. | Re-using information from data transactions for maintaining statistics in network monitoring |
US6493698B1 (en) * | 1999-07-26 | 2002-12-10 | Intel Corporation | String search scheme in a distributed architecture |
US6970475B1 (en) * | 1999-08-17 | 2005-11-29 | At&T Corporation | System and method for handling flows in a network |
JP3593100B2 (ja) * | 1999-09-07 | 2004-11-24 | ノキア コーポレイション | 傍受したデータの順序付けされた送出 |
US7263558B1 (en) | 1999-09-15 | 2007-08-28 | Narus, Inc. | Method and apparatus for providing additional information in response to an application server request |
SE521463C2 (sv) * | 1999-09-20 | 2003-11-04 | Ericsson Telefon Ab L M | Klassificerare i ett IP nätverk med medel för att avgöra huruvida ett transmitterat flöde är ett realtidsflöde eller inte |
US6882642B1 (en) * | 1999-10-14 | 2005-04-19 | Nokia, Inc. | Method and apparatus for input rate regulation associated with a packet processing pipeline |
US6629163B1 (en) | 1999-12-29 | 2003-09-30 | Implicit Networks, Inc. | Method and system for demultiplexing a first sequence of packet components to identify specific components wherein subsequent components are processed without re-identifying components |
US6779120B1 (en) | 2000-01-07 | 2004-08-17 | Securify, Inc. | Declarative language for specifying a security policy |
US8074256B2 (en) * | 2000-01-07 | 2011-12-06 | Mcafee, Inc. | Pdstudio design system and method |
US6922417B2 (en) * | 2000-01-28 | 2005-07-26 | Compuware Corporation | Method and system to calculate network latency, and to display the same field of the invention |
US6977936B1 (en) * | 2000-04-14 | 2005-12-20 | Agilent Technologies, Inc. | Service detail records for layered communications protocols |
JP4164986B2 (ja) * | 2000-04-21 | 2008-10-15 | 沖電気工業株式会社 | データ転送方法、ノード装置及び通信ネットワークシステム |
US7188188B1 (en) * | 2000-05-12 | 2007-03-06 | Webtv Networks, Inc. | Methods and computer program products for providing network quality of service for World Wide Web applications |
EP1297440B1 (en) | 2000-05-12 | 2008-08-27 | Niksun, Inc. | Security camera for a network |
US7075926B2 (en) * | 2000-05-24 | 2006-07-11 | Alcatel Internetworking, Inc. (Pe) | Programmable packet processor with flow resolution logic |
US6925085B1 (en) * | 2000-06-07 | 2005-08-02 | Advanced Micro Devices, Inc. | Packet classification using hash key signatures generated from interrupted hash function |
JP2001352363A (ja) * | 2000-06-09 | 2001-12-21 | Ando Electric Co Ltd | プロトコルアナライザ、そのプロトコル翻訳方法および記憶媒体 |
US7917647B2 (en) * | 2000-06-16 | 2011-03-29 | Mcafee, Inc. | Method and apparatus for rate limiting |
US20020093527A1 (en) * | 2000-06-16 | 2002-07-18 | Sherlock Kieran G. | User interface for a security policy system and method |
EP1168712B1 (de) * | 2000-06-19 | 2006-09-13 | Tektronix Berlin GmbH & Co. KG | Dekodiervorrichtung für die Analyse von Kommunikationsprotokollen |
AU2001280818A1 (en) * | 2000-07-25 | 2002-02-05 | Peribit Networks, Inc. | Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data |
FR2812491B1 (fr) * | 2000-07-25 | 2003-01-10 | France Telecom | Dispositif de controle d'acces entre des reseaux atm |
US6856651B2 (en) * | 2000-07-25 | 2005-02-15 | Peribit Networks, Inc. | System and method for incremental and continuous data compression |
US7120931B1 (en) * | 2000-08-31 | 2006-10-10 | Cisco Technology, Inc. | System and method for generating filters based on analyzed flow data |
US8250357B2 (en) | 2000-09-13 | 2012-08-21 | Fortinet, Inc. | Tunnel interface for securing traffic over a network |
US20020069309A1 (en) * | 2000-09-25 | 2002-06-06 | Edward Balassanian | Method and system for data metering |
EP1320960B1 (en) * | 2000-09-28 | 2013-11-06 | Symantec Corporation | System and method for analyzing protocol streams for a security-related event |
US6944162B1 (en) * | 2000-10-03 | 2005-09-13 | Alcatel | Tuple-based lookup scheme for packet switching node |
ATE459154T1 (de) * | 2000-10-17 | 2010-03-15 | Avaya Technology Corp | Verfahren und vorrichtung zur optimierung der leistung und des kosten in einem internetzwerk |
US8023421B2 (en) | 2002-07-25 | 2011-09-20 | Avaya Inc. | Method and apparatus for the assessment and optimization of network traffic |
US7349994B2 (en) | 2000-10-17 | 2008-03-25 | Avaya Technology Corp. | Method and apparatus for coordinating routing parameters via a back-channel communication medium |
US7720959B2 (en) | 2000-10-17 | 2010-05-18 | Avaya Inc. | Method and apparatus for characterizing the quality of a network path |
GB2368228B (en) * | 2000-10-18 | 2003-07-23 | 3Com Corp | Network unit with address cache for frequently occuring network conversations |
US7562134B1 (en) * | 2000-10-25 | 2009-07-14 | At&T Intellectual Property I, L.P. | Network traffic analyzer |
US7054930B1 (en) | 2000-10-26 | 2006-05-30 | Cisco Technology, Inc. | System and method for propagating filters |
US7970886B1 (en) * | 2000-11-02 | 2011-06-28 | Arbor Networks, Inc. | Detecting and preventing undesirable network traffic from being sourced out of a network domain |
EP1204248A1 (en) * | 2000-11-06 | 2002-05-08 | Agilent Technologies, Inc. (a Delaware corporation) | Monitoring traffic in telecommunications networks |
US20020131604A1 (en) * | 2000-11-08 | 2002-09-19 | Amine Gilbert A. | System and method for measuring and enhancing the quality of voice communication over packet-based networks |
JP3377994B2 (ja) * | 2000-11-14 | 2003-02-17 | 三菱電機株式会社 | データ配信管理装置およびデータ配信管理方法 |
US7970689B2 (en) * | 2000-11-17 | 2011-06-28 | Scale Semiconductor Flg, L.L.C. | Single-period auctions network decentralized trading system and method |
US7184984B2 (en) * | 2000-11-17 | 2007-02-27 | Valaquenta Intellectual Properties Limited | Global electronic trading system |
US20050131802A1 (en) * | 2000-11-17 | 2005-06-16 | Arman Glodjo | Method and system for network-decentralized trading with optimal proximity measures |
US20020103925A1 (en) * | 2000-12-06 | 2002-08-01 | Sheth Siddharth C. | Generic programmable internet protocol classification technique for a broadband engine |
US8762581B2 (en) * | 2000-12-22 | 2014-06-24 | Avaya Inc. | Multi-thread packet processor |
US7016897B2 (en) * | 2000-12-29 | 2006-03-21 | International Business Machines Corporation | Authentication referral search for LDAP |
US7280540B2 (en) * | 2001-01-09 | 2007-10-09 | Stonesoft Oy | Processing of data packets within a network element cluster |
EP1356653B1 (en) * | 2001-01-24 | 2011-07-20 | Broadcom Corporation | Method for processing multiple security policies applied to a data packet structure |
US7193968B1 (en) * | 2001-02-08 | 2007-03-20 | Cisco Technology, Inc. | Sample netflow for network traffic data collection |
DE10108856C2 (de) * | 2001-02-15 | 2003-04-24 | Siemens Ag | Verfahren und Anordnung zur Prüfung der Übertragungsqualität einer Sprachübertragung |
US6963921B1 (en) * | 2001-02-16 | 2005-11-08 | 3Com Corporation | Method and apparatus for hardware assisted TCP packet re-assembly |
US8219620B2 (en) | 2001-02-20 | 2012-07-10 | Mcafee, Inc. | Unwanted e-mail filtering system including voting feedback |
US7228342B2 (en) * | 2001-02-20 | 2007-06-05 | Sony Computer Entertainment America Inc. | System for utilizing an incentive point system based on disc and user identification |
US8478824B2 (en) * | 2002-02-05 | 2013-07-02 | Portauthority Technologies Inc. | Apparatus and method for controlling unauthorized dissemination of electronic mail |
US7681032B2 (en) | 2001-03-12 | 2010-03-16 | Portauthority Technologies Inc. | System and method for monitoring unauthorized transport of digital content |
US6952766B2 (en) * | 2001-03-15 | 2005-10-04 | International Business Machines Corporation | Automated node restart in clustered computer system |
US7191250B1 (en) * | 2001-03-19 | 2007-03-13 | Palmsource, Inc. | Communication protocol for wireless data exchange via a packet transport based system |
US6918051B2 (en) * | 2001-04-06 | 2005-07-12 | International Business Machines Corporation | Node shutdown in clustered computer system |
US20020156885A1 (en) * | 2001-04-23 | 2002-10-24 | Thakkar Bina Kunal | Protocol emulator |
US20020157041A1 (en) * | 2001-04-23 | 2002-10-24 | Bennett David Charles | Protocol parser-code generator |
US6961766B2 (en) * | 2001-04-24 | 2005-11-01 | Oracle International Corp. | Method for extracting personalization information from web activity |
US7068666B2 (en) * | 2001-04-27 | 2006-06-27 | The Boeing Company | Method and system for virtual addressing in a communications network |
US7634557B2 (en) * | 2001-04-30 | 2009-12-15 | Netwitness Corporation | Apparatus and method for network analysis |
US20100027430A1 (en) * | 2001-04-30 | 2010-02-04 | Netwitness Corporation | Apparatus and Method for Network Analysis |
US20020165956A1 (en) * | 2001-05-07 | 2002-11-07 | Peter Phaal | Traffic driven scheduling of active tests |
US20020169869A1 (en) * | 2001-05-08 | 2002-11-14 | Shugart Technology, Inc. | SAN monitor incorporating a GPS receiver |
US8004971B1 (en) | 2001-05-24 | 2011-08-23 | F5 Networks, Inc. | Method and system for scaling network traffic managers using connection keys |
US7102996B1 (en) | 2001-05-24 | 2006-09-05 | F5 Networks, Inc. | Method and system for scaling network traffic managers |
GB2376096B (en) | 2001-05-30 | 2005-06-29 | Ibm | Identification of the source of a client/server flow |
US20020188732A1 (en) * | 2001-06-06 | 2002-12-12 | Buckman Charles R. | System and method for allocating bandwidth across a network |
US20020194363A1 (en) * | 2001-06-14 | 2002-12-19 | Cypress Semiconductor Corp. | Programmable protocol processing engine for network packet devices |
US7076547B1 (en) * | 2001-06-21 | 2006-07-11 | Amdocs (Israel) Ltd. | System and method for network performance and server application performance monitoring and for deriving exhaustive performance metrics |
JP2003006063A (ja) * | 2001-06-22 | 2003-01-10 | Nec Corp | 通信監視システムおよび監視サーバ |
US7181547B1 (en) | 2001-06-28 | 2007-02-20 | Fortinet, Inc. | Identifying nodes in a ring network |
US7095715B2 (en) | 2001-07-02 | 2006-08-22 | 3Com Corporation | System and method for processing network packet flows |
US7308501B2 (en) * | 2001-07-12 | 2007-12-11 | International Business Machines Corporation | Method and apparatus for policy-based packet classification using hashing algorithm |
US6751627B2 (en) * | 2001-07-23 | 2004-06-15 | Networks Associates Technology, Inc. | Method and apparatus to facilitate accessing data in network management protocol tables |
US7165100B2 (en) * | 2001-07-24 | 2007-01-16 | At&T Corp. | Method and apparatus for packet analysis in a network |
US6826639B2 (en) * | 2001-07-27 | 2004-11-30 | Computer Access Technology Corporation | Hierarchical display of multilevel protocol for communication data |
US20030023739A1 (en) * | 2001-07-28 | 2003-01-30 | Lan Ngoc Vu | System and method for multi-tier multi-casting over the Internet |
US7506046B2 (en) * | 2001-07-31 | 2009-03-17 | Hewlett-Packard Development Company, L.P. | Network usage analysis system and method for updating statistical models |
US6925582B2 (en) * | 2001-08-01 | 2005-08-02 | International Business Machines Corporation | Forwarding of diagnostic messages in a group |
US7243163B1 (en) | 2001-08-07 | 2007-07-10 | Good Technology, Inc. | System and method for full wireless synchronization of a data processing apparatus with a messaging system |
US7962622B2 (en) | 2001-08-07 | 2011-06-14 | Motorola Mobility, Inc. | System and method for providing provisioning and upgrade services for a wireless device |
US7743119B2 (en) * | 2001-08-07 | 2010-06-22 | Motorola, Inc. | System and method for mapping identification codes |
US20030033519A1 (en) * | 2001-08-13 | 2003-02-13 | Tippingpoint Technologies,Inc. | System and method for programming network nodes |
US7089304B2 (en) * | 2001-08-30 | 2006-08-08 | Microsoft Corporation | Metered Internet usage |
US7765313B2 (en) * | 2001-10-09 | 2010-07-27 | Alcatel Lucent | Hierarchical protocol classification engine |
US7401326B1 (en) * | 2001-10-24 | 2008-07-15 | Finisar Corporation | Compiling protocol analysis code using protocol database |
US6931574B1 (en) * | 2001-10-24 | 2005-08-16 | Finisar Corporation | Systems and methods for interpreting communications packets |
US20030083847A1 (en) * | 2001-10-31 | 2003-05-01 | Schertz Richard L. | User interface for presenting data for an intrusion protection system |
DE10154812B4 (de) * | 2001-11-08 | 2010-04-15 | Qimonda Ag | Schaltung zum Einstellen einer Signallaufzeit eines Signals auf einer Signalleitung |
US20030093576A1 (en) * | 2001-11-13 | 2003-05-15 | International Business Machines Corporation | Method and system for message management |
US7111062B2 (en) * | 2001-12-06 | 2006-09-19 | International Business Machines Corporation | Apparatus and method of generating an XML document to represent network protocol packet exchanges |
US7769876B2 (en) * | 2001-12-06 | 2010-08-03 | International Business Machines Corporation | Apparatus and method of using XML documents to perform network protocol simulation |
WO2003056763A1 (en) * | 2001-12-21 | 2003-07-10 | Chip Engines | Reconfigurable data packet header processor |
US7433947B1 (en) | 2002-01-04 | 2008-10-07 | Network General Technology | System and method for determining real-time application verb response times |
US7245623B1 (en) | 2002-01-08 | 2007-07-17 | Cisco Technology, Inc. | System and method using hierarchical parallel banks of associative memories |
US7421515B2 (en) * | 2002-01-17 | 2008-09-02 | Hewlett-Packard Development Company, L.P. | Method and system for communications network |
KR100438430B1 (ko) * | 2002-01-24 | 2004-07-03 | 삼성전자주식회사 | 이동통신시스템에서 트래픽 플로우 탬플릿 재정렬 장치 및방법 |
US7225343B1 (en) * | 2002-01-25 | 2007-05-29 | The Trustees Of Columbia University In The City Of New York | System and methods for adaptive model generation for detecting intrusions in computer systems |
WO2003067799A2 (en) * | 2002-02-04 | 2003-08-14 | Intel Corporation | System and method for packet storage and retrieval |
US8209756B1 (en) | 2002-02-08 | 2012-06-26 | Juniper Networks, Inc. | Compound attack detection in a computer network |
US7225188B1 (en) * | 2002-02-13 | 2007-05-29 | Cisco Technology, Inc. | System and method for performing regular expression matching with high parallelism |
US7424744B1 (en) * | 2002-03-05 | 2008-09-09 | Mcafee, Inc. | Signature based network intrusion detection system and method |
US6961770B1 (en) * | 2002-03-12 | 2005-11-01 | Cisco Technology, Inc. | Intelligent network based application recognition |
US7185365B2 (en) * | 2002-03-27 | 2007-02-27 | Intel Corporation | Security enabled network access control |
US20030185220A1 (en) * | 2002-03-27 | 2003-10-02 | Moshe Valenci | Dynamically loading parsing capabilities |
US7185336B2 (en) * | 2002-04-03 | 2007-02-27 | Hewlett-Packard Development Company, L.P. | System and method for selecting and installing a device driver |
US7447799B2 (en) | 2002-04-24 | 2008-11-04 | Good Technology, Inc. | System and method for automatically updating a wireless device |
US7599293B1 (en) | 2002-04-25 | 2009-10-06 | Lawrence Michael Bain | System and method for network traffic and I/O transaction monitoring of a high speed communications network |
US7254632B2 (en) * | 2002-04-26 | 2007-08-07 | P-Cube Ltd. | Apparatus and method for pattern matching in text based protocol |
US7359962B2 (en) * | 2002-04-30 | 2008-04-15 | 3Com Corporation | Network security system integration |
US20030212900A1 (en) * | 2002-05-13 | 2003-11-13 | Hsin-Yuo Liu | Packet classifying network services |
US7376125B1 (en) | 2002-06-04 | 2008-05-20 | Fortinet, Inc. | Service processing switch |
US20030229710A1 (en) * | 2002-06-11 | 2003-12-11 | Netrake Corporation | Method for matching complex patterns in IP data streams |
US9813514B2 (en) | 2002-06-12 | 2017-11-07 | Good Technology Holdings Limited | Information repository system including a wireless device and related method |
US7877435B2 (en) * | 2002-06-20 | 2011-01-25 | International Business Machines Corporation | Method and system for transaction pipeline decomposition |
KR100497357B1 (ko) * | 2002-06-26 | 2005-06-23 | 삼성전자주식회사 | 인터넷 프로토콜 기반 네트워크 환경에 있어서 헤더 압축및 패킷 다중화 장치와 그 방법 |
US7277963B2 (en) * | 2002-06-26 | 2007-10-02 | Sandvine Incorporated | TCP proxy providing application layer modifications |
US7243154B2 (en) * | 2002-06-27 | 2007-07-10 | Intel Corporation | Dynamically adaptable communications processor architecture and associated methods |
US8516034B1 (en) * | 2002-07-08 | 2013-08-20 | Good Technology Software, Inc | System and method for modifying application behavior based on network bandwidth |
US8260906B1 (en) * | 2002-07-26 | 2012-09-04 | Mcafee, Inc. | System and method for heuristic determination of network protocols |
US7206861B1 (en) * | 2002-07-29 | 2007-04-17 | Juniper Networks, Inc. | Network traffic distribution across parallel paths |
FR2842970B1 (fr) | 2002-07-29 | 2005-03-18 | Qosmos | Procede de reconnaissance et d'analyse de protocoles dans des reseaux de donnees |
US7017186B2 (en) * | 2002-07-30 | 2006-03-21 | Steelcloud, Inc. | Intrusion detection system using self-organizing clusters |
US7143615B2 (en) * | 2002-07-31 | 2006-12-05 | Sun Microsystems, Inc. | Method, system, and program for discovering components within a network |
US8015303B2 (en) | 2002-08-02 | 2011-09-06 | Astute Networks Inc. | High data rate stateful protocol processing |
US7137564B2 (en) * | 2002-08-09 | 2006-11-21 | Carry Computer Eng. Co., Ltd | Communication protocol for multi-functional mini-memory card suitable for small form memory interface and usb interfaces |
US7228348B1 (en) | 2002-08-13 | 2007-06-05 | Finisar Corporation | System and method for triggering communications data capture |
US7562156B2 (en) * | 2002-08-16 | 2009-07-14 | Symantec Operating Corporation | System and method for decoding communications between nodes of a cluster server |
US20040039940A1 (en) * | 2002-08-23 | 2004-02-26 | Koninklijke Philips Electronics N.V. | Hardware-based packet filtering accelerator |
US7467406B2 (en) * | 2002-08-23 | 2008-12-16 | Nxp B.V. | Embedded data set processing |
US9479464B1 (en) * | 2002-08-27 | 2016-10-25 | Hewlett Packard Enterprise Development Lp | Computer system and network interface with hardware based packet filtering and classification |
US7359994B1 (en) * | 2002-08-28 | 2008-04-15 | Advanced Micro Devices, Inc. | Split-transaction bus decoder |
US7254115B1 (en) | 2002-08-28 | 2007-08-07 | Advanced Micro Devices, Inc. | Split-transaction bus intelligent logic analysis tool |
CN100574312C (zh) | 2002-09-06 | 2009-12-23 | 因芬奈昂技术股份有限公司 | 分析数据分组的分析器 |
US8266271B2 (en) * | 2002-09-10 | 2012-09-11 | Jds Uniphase Corporation | Propagation of signals between devices for triggering capture of network data |
US7072800B1 (en) * | 2002-09-26 | 2006-07-04 | Computer Associates Think, Inc. | Application response monitor |
US7216164B1 (en) * | 2002-10-09 | 2007-05-08 | Cisco Technology, Inc. | Methods and apparatus for determining the performance of a server |
JP2004133763A (ja) * | 2002-10-11 | 2004-04-30 | Fujitsu Ltd | 履歴管理装置及びコンピュータプログラム |
US7596621B1 (en) | 2002-10-17 | 2009-09-29 | Astute Networks, Inc. | System and method for managing shared state using multiple programmed processors |
US8151278B1 (en) | 2002-10-17 | 2012-04-03 | Astute Networks, Inc. | System and method for timer management in a stateful protocol processing system |
US7814218B1 (en) * | 2002-10-17 | 2010-10-12 | Astute Networks, Inc. | Multi-protocol and multi-format stateful processing |
US7802001B1 (en) | 2002-10-18 | 2010-09-21 | Astute Networks, Inc. | System and method for flow control within a stateful protocol processing system |
AU2002952274A0 (en) * | 2002-10-24 | 2002-11-07 | Ideadata Pty Ltd | A computing device and method for recording data exchanged between electronic devices |
US20040088425A1 (en) * | 2002-10-31 | 2004-05-06 | Comverse, Ltd. | Application level gateway based on universal parser |
US7454499B2 (en) * | 2002-11-07 | 2008-11-18 | Tippingpoint Technologies, Inc. | Active network defense system and method |
US7277386B1 (en) | 2002-11-12 | 2007-10-02 | Juniper Networks, Inc. | Distribution of label switched packets |
CN100438411C (zh) * | 2002-11-14 | 2008-11-26 | 华为技术有限公司 | Ip设备的网络流量统计方法 |
FR2847404B1 (fr) * | 2002-11-15 | 2005-03-11 | Thales Sa | Procede d'analyse recursive et statistique de communications reseaux |
US7266120B2 (en) | 2002-11-18 | 2007-09-04 | Fortinet, Inc. | System and method for hardware accelerated packet multicast in a virtual routing system |
KR100523486B1 (ko) * | 2002-12-13 | 2005-10-24 | 한국전자통신연구원 | 트래픽 측정 시스템 및 그의 트래픽 분석 방법 |
US7468979B2 (en) * | 2002-12-20 | 2008-12-23 | Force10 Networks, Inc. | Layer-1 packet filtering |
US7415596B2 (en) * | 2003-01-24 | 2008-08-19 | Gigafin Networks, Inc. | Parser table/production rule table configuration using CAM and SRAM |
WO2004075048A1 (ja) * | 2003-02-18 | 2004-09-02 | Access Co., Ltd. | ネイティブコンパイル方法、ネイティブコンパイル前処理方法、コンピュータプログラム、およびサーバ |
US20060253850A1 (en) * | 2003-04-30 | 2006-11-09 | Giorgio Bruno | Method, system and computer program program product for evaluating download performance of web pages |
US7484096B1 (en) * | 2003-05-28 | 2009-01-27 | Microsoft Corporation | Data validation using signatures and sampling |
US7457791B1 (en) * | 2003-05-30 | 2008-11-25 | Microsoft Corporation | Using invariants to validate applications states |
US7093149B2 (en) * | 2003-06-09 | 2006-08-15 | Intel Corporation | Tiered secondary memory architecture to reduce power consumption in a portable computer system |
US7827248B2 (en) * | 2003-06-13 | 2010-11-02 | Randy Oyadomari | Discovery and self-organization of topology in multi-chassis systems |
US7382777B2 (en) * | 2003-06-17 | 2008-06-03 | International Business Machines Corporation | Method for implementing actions based on packet classification and lookup results |
US20050022017A1 (en) | 2003-06-24 | 2005-01-27 | Maufer Thomas A. | Data structures and state tracking for network protocol processing |
US8190722B2 (en) * | 2003-06-30 | 2012-05-29 | Randy Oyadomari | Synchronization of timestamps to compensate for communication latency between devices |
CN100358296C (zh) * | 2003-07-21 | 2007-12-26 | 华为技术有限公司 | 基于流量的通信性能测试方法 |
US7343604B2 (en) * | 2003-07-25 | 2008-03-11 | International Business Machines Corporation | Methods and apparatus for creation of parsing rules |
US7720095B2 (en) | 2003-08-27 | 2010-05-18 | Fortinet, Inc. | Heterogeneous media packet bridging |
US7346059B1 (en) * | 2003-09-08 | 2008-03-18 | Cisco Technology, Inc. | Header range check hash circuit |
US20050060403A1 (en) * | 2003-09-11 | 2005-03-17 | Bernstein David R. | Time-based correlation of non-translative network segments |
US20050078606A1 (en) * | 2003-09-11 | 2005-04-14 | Bernstein David R. | Pattern-based correlation of non-translative network segments |
US7539760B1 (en) | 2003-09-12 | 2009-05-26 | Astute Networks, Inc. | System and method for facilitating failover of stateful connections |
US20050065915A1 (en) * | 2003-09-23 | 2005-03-24 | Allen Wayne J. | Method and system to add protocol support for network traffic tools |
US9614772B1 (en) * | 2003-10-20 | 2017-04-04 | F5 Networks, Inc. | System and method for directing network traffic in tunneling applications |
US7954151B1 (en) * | 2003-10-28 | 2011-05-31 | Emc Corporation | Partial document content matching using sectional analysis |
US8255514B2 (en) | 2003-11-04 | 2012-08-28 | Covenant Eyes, Inc. | Internet use monitoring system and method |
US7617241B2 (en) * | 2003-11-07 | 2009-11-10 | Rmi Corporation | Method and apparatus for enhanced hashing |
US7787471B2 (en) * | 2003-11-10 | 2010-08-31 | Broadcom Corporation | Field processor for a network device |
US7639714B2 (en) * | 2003-11-12 | 2009-12-29 | The Trustees Of Columbia University In The City Of New York | Apparatus method and medium for detecting payload anomaly using n-gram distribution of normal data |
US7903555B2 (en) * | 2003-12-17 | 2011-03-08 | Intel Corporation | Packet tracing |
US7788368B1 (en) * | 2003-12-23 | 2010-08-31 | Juniper Networks, Inc. | Multicast content usage data collection and accounting |
US20050149890A1 (en) * | 2003-12-29 | 2005-07-07 | Tsai Vicki W. | Programming reconfigurable packetized networks |
US7716314B1 (en) | 2003-12-30 | 2010-05-11 | Dinochip, Inc. | Traffic management in digital signal processor |
US7382778B2 (en) * | 2004-01-05 | 2008-06-03 | Tropos Networks, Inc. | Link layer emulation |
ES2525527T3 (es) * | 2004-01-07 | 2014-12-26 | Intellinx Ltd. | Aparato y procedimiento para controlar y auditar la actividad de un entorno heredado |
US7606894B2 (en) * | 2004-01-27 | 2009-10-20 | Ricoh Company, Ltd. | Method and system for determining the type of status information to extract from networked devices in a multi-protocol remote monitoring system |
US20050171937A1 (en) * | 2004-02-02 | 2005-08-04 | Hughes Martin W. | Memory efficient hashing algorithm |
CN102082731B (zh) * | 2004-02-24 | 2016-02-17 | 苹果公司 | 在网络中提供特殊应用的方法和设备 |
US9584522B2 (en) * | 2004-02-26 | 2017-02-28 | Vmware, Inc. | Monitoring network traffic by using event log information |
US8214875B2 (en) * | 2004-02-26 | 2012-07-03 | Vmware, Inc. | Network security policy enforcement using application session information and object attributes |
US8024779B2 (en) * | 2004-02-26 | 2011-09-20 | Packetmotion, Inc. | Verifying user authentication |
US8166554B2 (en) | 2004-02-26 | 2012-04-24 | Vmware, Inc. | Secure enterprise network |
US7941827B2 (en) * | 2004-02-26 | 2011-05-10 | Packetmotion, Inc. | Monitoring network traffic by using a monitor device |
US7424698B2 (en) * | 2004-02-27 | 2008-09-09 | Intel Corporation | Allocation of combined or separate data and control planes |
US7881319B2 (en) * | 2004-02-27 | 2011-02-01 | Actix Limited | Data storage and processing systems |
US8051483B2 (en) | 2004-03-12 | 2011-11-01 | Fortinet, Inc. | Systems and methods for updating content detection devices and systems |
US20050210096A1 (en) * | 2004-03-17 | 2005-09-22 | Bishop Thomas P | Method and system for agentless discovery of application infrastructure resources |
US7266088B1 (en) | 2004-03-24 | 2007-09-04 | The United States Of America As Represented By The National Security Agency | Method of monitoring and formatting computer network data |
WO2005093576A1 (en) * | 2004-03-28 | 2005-10-06 | Robert Iakobashvili | Visualization of packet network performance, analysis and optimization for design |
US20050229139A1 (en) * | 2004-03-30 | 2005-10-13 | Intel Corporation | Block-based processing in a packet-based reconfigurable architecture |
US20050223110A1 (en) * | 2004-03-30 | 2005-10-06 | Intel Corporation | Heterogeneous building block scalability |
US7966658B2 (en) * | 2004-04-08 | 2011-06-21 | The Regents Of The University Of California | Detecting public network attacks using signatures and fast content analysis |
US7519719B2 (en) * | 2004-04-15 | 2009-04-14 | Agilent Technologies, Inc. | Automatic creation of protocol dependent control path for instrument application |
US7260674B2 (en) * | 2004-05-25 | 2007-08-21 | Intel Corporation | Programmable parallel lookup memory |
WO2005119450A2 (en) * | 2004-05-28 | 2005-12-15 | Intoto, Inc. | Intelligent database selection for intrusion detection & prevention systems |
US7565445B2 (en) | 2004-06-18 | 2009-07-21 | Fortinet, Inc. | Systems and methods for categorizing network traffic content |
US7352697B1 (en) | 2004-06-23 | 2008-04-01 | Dinochip, Inc. | Network processing using fractional time stamp values |
US20060004902A1 (en) * | 2004-06-30 | 2006-01-05 | Siva Simanapalli | Reconfigurable circuit with programmable split adder |
US10003509B2 (en) * | 2004-07-14 | 2018-06-19 | Riverbed Technology, Inc. | Packet tracing |
JP2006033315A (ja) * | 2004-07-15 | 2006-02-02 | Evolium Sas | ネットワーク監視システム |
US20060020594A1 (en) * | 2004-07-21 | 2006-01-26 | Microsoft Corporation | Hierarchical drift detection of data sets |
US7925729B2 (en) * | 2004-12-07 | 2011-04-12 | Cisco Technology, Inc. | Network management |
US20090094671A1 (en) * | 2004-08-13 | 2009-04-09 | Sipera Systems, Inc. | System, Method and Apparatus for Providing Security in an IP-Based End User Device |
US8707419B2 (en) * | 2006-06-29 | 2014-04-22 | Avaya Inc. | System, method and apparatus for protecting a network or device against high volume attacks |
US8582567B2 (en) * | 2005-08-09 | 2013-11-12 | Avaya Inc. | System and method for providing network level and nodal level vulnerability protection in VoIP networks |
US9531873B2 (en) * | 2004-08-13 | 2016-12-27 | Avaya Inc. | System, method and apparatus for classifying communications in a communications system |
US7933985B2 (en) | 2004-08-13 | 2011-04-26 | Sipera Systems, Inc. | System and method for detecting and preventing denial of service attacks in a communications system |
US8185947B2 (en) | 2006-07-12 | 2012-05-22 | Avaya Inc. | System, method and apparatus for securely exchanging security keys and monitoring links in a IP communications network |
US8331234B1 (en) | 2004-09-08 | 2012-12-11 | Q1 Labs Inc. | Network data flow collection and processing |
GB0420549D0 (en) * | 2004-09-15 | 2004-10-20 | Nokia Corp | A method and entity for monitoring traffic |
US20070266370A1 (en) * | 2004-09-16 | 2007-11-15 | Myers Glenford J | Data Plane Technology Including Packet Processing for Network Processors |
JP4598462B2 (ja) * | 2004-09-16 | 2010-12-15 | 富士通株式会社 | L2−vpnサービスを提供するプロバイダ網、及びエッジルータ |
US7761705B2 (en) * | 2004-09-17 | 2010-07-20 | At&T Intellectual Property I, L.P. | Detection of encrypted packet streams |
US20060064748A1 (en) * | 2004-09-17 | 2006-03-23 | Aaron Jeffrey A | Detection of encrypted packet streams using process variation and/or multiple processes |
US8332938B2 (en) * | 2004-09-17 | 2012-12-11 | At&T Intellectual Property I, L.P. | Detection of encrypted packet streams using a timer |
US7730519B2 (en) * | 2004-09-17 | 2010-06-01 | At&T Intellectual Property I, L.P. | Detection of encrypted packet streams using feedback probing |
US7451309B2 (en) | 2004-09-17 | 2008-11-11 | At&T Intellectual Property L.P. | Signature specification for encrypted packet streams |
US10248917B1 (en) | 2004-10-14 | 2019-04-02 | Capital One Services, Llc | System and method for developing and utilizing a contactability profile |
US7552212B2 (en) * | 2004-10-22 | 2009-06-23 | International Business Machines Corporation | Intelligent performance monitoring based on user transactions |
US20060129634A1 (en) * | 2004-11-18 | 2006-06-15 | Microsoft Corporation | Multiplexing and de-multiplexing graphics streams |
WO2006101549A2 (en) | 2004-12-03 | 2006-09-28 | Whitecell Software, Inc. | Secure system for allowing the execution of authorized computer program code |
US8675485B2 (en) | 2004-12-14 | 2014-03-18 | Aspen Networks, Inc. | Reliable ISP access cloud state detection method and apparatus |
WO2006066315A1 (en) * | 2004-12-20 | 2006-06-29 | Webtraf Research Pty Ltd | Communications network monitoring system, method & apparatus |
US20060149841A1 (en) * | 2004-12-20 | 2006-07-06 | Alcatel | Application session management for flow-based statistics |
US7810151B1 (en) | 2005-01-27 | 2010-10-05 | Juniper Networks, Inc. | Automated change detection within a network environment |
US7809826B1 (en) | 2005-01-27 | 2010-10-05 | Juniper Networks, Inc. | Remote aggregation of network traffic profiling data |
US7937755B1 (en) * | 2005-01-27 | 2011-05-03 | Juniper Networks, Inc. | Identification of network policy violations |
US7769851B1 (en) | 2005-01-27 | 2010-08-03 | Juniper Networks, Inc. | Application-layer monitoring and profiling network traffic |
US7797411B1 (en) | 2005-02-02 | 2010-09-14 | Juniper Networks, Inc. | Detection and prevention of encapsulated network attacks using an intermediate device |
US7440407B2 (en) * | 2005-02-07 | 2008-10-21 | At&T Corp. | Method and apparatus for centralized monitoring and analysis of virtual private networks |
US20060187919A1 (en) * | 2005-02-18 | 2006-08-24 | Broadcom Corporation | Two stage parser for a network |
US7873046B1 (en) * | 2005-02-24 | 2011-01-18 | Symantec Corporation | Detecting anomalous network activity through transformation of terrain |
US7359919B2 (en) * | 2005-03-08 | 2008-04-15 | Microsoft Corporation | Reliable request-response messaging over a request-response transport |
US8072978B2 (en) * | 2005-03-09 | 2011-12-06 | Alcatel Lucent | Method for facilitating application server functionality and access node comprising same |
US7779340B2 (en) * | 2005-03-17 | 2010-08-17 | Jds Uniphase Corporation | Interpolated timestamps in high-speed data capture and analysis |
US20060215694A1 (en) * | 2005-03-22 | 2006-09-28 | Mediatek Incorporation | Contention-free burst method for media access control over networks |
BRPI0607738A2 (pt) | 2005-03-30 | 2009-10-06 | Welch Allyn Inc | comunicação de informação entre vários elementos de rede |
US7573833B2 (en) | 2005-04-21 | 2009-08-11 | Cisco Technology, Inc. | Network presence status from network activity |
US20060253908A1 (en) * | 2005-05-03 | 2006-11-09 | Tzu-Jian Yang | Stateful stack inspection anti-virus and anti-intrusion firewall system |
US8107822B2 (en) * | 2005-05-20 | 2012-01-31 | Finisar Corporation | Protocols for out-of-band communication |
US7899057B2 (en) | 2006-04-28 | 2011-03-01 | Jds Uniphase Corporation | Systems for ordering network packets |
US7543054B1 (en) * | 2005-05-20 | 2009-06-02 | Network General Technology | Minimalist data collection for high-speed network data monitoring based on protocol trees |
US20060262788A1 (en) * | 2005-05-23 | 2006-11-23 | Broadcom Corporation | Dynamic payload header suppression extensions for IPV6 |
US8098657B2 (en) * | 2005-05-31 | 2012-01-17 | Broadcom Corporation | System and method for providing data commonality in a programmable transport demultiplexer engine |
GB2427096A (en) * | 2005-06-01 | 2006-12-13 | Agilent Technologies Inc | An apparatus and method for Data Extraction. |
WO2006130840A2 (en) * | 2005-06-02 | 2006-12-07 | Georgia Tech Research Corporation | System and method for data streaming |
CN1319332C (zh) * | 2005-06-10 | 2007-05-30 | 重庆邮电学院 | 基于Linux内核的高速网络流量测量器及流量测量方法 |
US20060288096A1 (en) * | 2005-06-17 | 2006-12-21 | Wai Yim | Integrated monitoring for network and local internet protocol traffic |
US8438281B2 (en) * | 2005-07-06 | 2013-05-07 | Cisco Technology, Inc. | Techniques for accounting for multiple transactions in a transport control protocol (TCP) payload |
US7804787B2 (en) * | 2005-07-08 | 2010-09-28 | Fluke Corporation | Methods and apparatus for analyzing and management of application traffic on networks |
GB2428497A (en) * | 2005-07-18 | 2007-01-31 | Agilent Technologies Inc | Data Packet Decoding |
US20070027984A1 (en) * | 2005-07-29 | 2007-02-01 | Jorgensen Steven G | Monitoring of network packets |
US8392684B2 (en) | 2005-08-12 | 2013-03-05 | Silver Peak Systems, Inc. | Data encryption in a network memory architecture for providing data based on local accessibility |
US8533308B1 (en) | 2005-08-12 | 2013-09-10 | F5 Networks, Inc. | Network traffic management through protocol-configurable transaction processing |
US8370583B2 (en) * | 2005-08-12 | 2013-02-05 | Silver Peak Systems, Inc. | Network memory architecture for providing data based on local accessibility |
US8171238B1 (en) | 2007-07-05 | 2012-05-01 | Silver Peak Systems, Inc. | Identification of data stored in memory |
US8095774B1 (en) | 2007-07-05 | 2012-01-10 | Silver Peak Systems, Inc. | Pre-fetching data into a memory |
US20070043569A1 (en) * | 2005-08-19 | 2007-02-22 | Intervoice Limited Partnership | System and method for inheritance of advertised functionality in a user interactive system |
US8683334B2 (en) * | 2005-08-19 | 2014-03-25 | Intervoice Limited Partnership | System and method for sharing access to service provider controls and subscriber profile data across multiple applications in a user interactive system |
US7797636B2 (en) * | 2005-08-19 | 2010-09-14 | Joseph Carter | System and method for administering pluggable user interactive system applications |
US20070047438A1 (en) * | 2005-08-20 | 2007-03-01 | Malloy Patrick J | Identifying a transaction of interest within a network |
JP4089719B2 (ja) | 2005-09-09 | 2008-05-28 | 沖電気工業株式会社 | 異常検出システム,異常管理装置,異常管理方法,プローブおよびそのプログラム |
WO2007028226A1 (en) * | 2005-09-09 | 2007-03-15 | Ibm Canada Limited - Ibm Canada Limitee | Method and system for state machine translation |
DE112005003689T5 (de) * | 2005-09-28 | 2008-06-26 | Intel Corporation, Santa Clara | Updating-Eingaben, die von einem Netzwerkprozessor gespeichert werden |
US8489562B1 (en) * | 2007-11-30 | 2013-07-16 | Silver Peak Systems, Inc. | Deferred data storage |
US8811431B2 (en) * | 2008-11-20 | 2014-08-19 | Silver Peak Systems, Inc. | Systems and methods for compressing packet data |
US8929402B1 (en) | 2005-09-29 | 2015-01-06 | Silver Peak Systems, Inc. | Systems and methods for compressing packet data by predicting subsequent data |
US7665015B2 (en) * | 2005-11-14 | 2010-02-16 | Sun Microsystems, Inc. | Hardware unit for parsing an XML document |
US7716577B2 (en) * | 2005-11-14 | 2010-05-11 | Oracle America, Inc. | Method and apparatus for hardware XML acceleration |
US7665016B2 (en) * | 2005-11-14 | 2010-02-16 | Sun Microsystems, Inc. | Method and apparatus for virtualized XML parsing |
US7596745B2 (en) * | 2005-11-14 | 2009-09-29 | Sun Microsystems, Inc. | Programmable hardware finite state machine for facilitating tokenization of an XML document |
US7869411B2 (en) * | 2005-11-21 | 2011-01-11 | Broadcom Corporation | Compact packet operation device and method |
US7954108B2 (en) * | 2005-11-21 | 2011-05-31 | Prismtech Corporation | Method and apparatus for accelerating generic inter-ORB protocol for a CORBA ORB |
US8661102B1 (en) * | 2005-11-28 | 2014-02-25 | Mcafee, Inc. | System, method and computer program product for detecting patterns among information from a distributed honey pot system |
CN100424638C (zh) * | 2005-12-27 | 2008-10-08 | 英业达股份有限公司 | 在64位系统中利用32位主程序拦截64位信息的方法 |
US9794272B2 (en) * | 2006-01-03 | 2017-10-17 | Alcatel Lucent | Method and apparatus for monitoring malicious traffic in communication networks |
US8797870B2 (en) * | 2006-01-05 | 2014-08-05 | Cisco Technology, Inc. | Method and system for calculation of QOV metrics |
US20070171827A1 (en) * | 2006-01-24 | 2007-07-26 | Scott Mark E | Network flow analysis method and system |
US8565088B1 (en) | 2006-02-01 | 2013-10-22 | F5 Networks, Inc. | Selectively enabling packet concatenation based on a transaction boundary |
US8601160B1 (en) | 2006-02-09 | 2013-12-03 | Mcafee, Inc. | System, method and computer program product for gathering information relating to electronic content utilizing a DNS server |
US8607145B2 (en) | 2006-02-14 | 2013-12-10 | Jds Uniphase Corporation | Show OOB and speed negotiation data graphically in a network diagnostic component |
US8125906B2 (en) | 2006-03-03 | 2012-02-28 | Kiranmai Vedanabhatla | Capture RCDT and SNTT SAS speed negotiation decodes in a network diagnostic component |
US8769152B2 (en) | 2006-02-14 | 2014-07-01 | Jds Uniphase Corporation | Align/notify compression scheme in a network diagnostic component |
EP1989826A4 (en) * | 2006-02-14 | 2010-09-15 | Finisar Corp | DIAGNOSTIC FUNCTIONS IN AN ONLINE DEVICE |
US8576731B2 (en) | 2006-02-14 | 2013-11-05 | Jds Uniphase Corporation | Random data compression scheme in a network diagnostic component |
US7580974B2 (en) * | 2006-02-16 | 2009-08-25 | Fortinet, Inc. | Systems and methods for content type classification |
US7620392B1 (en) | 2006-02-27 | 2009-11-17 | Good Technology, Inc. | Method and system for distributing and updating software in wireless devices |
WO2007099245A2 (fr) | 2006-02-28 | 2007-09-07 | France Telecom | Procede de collecte de descriptions de flux portant sur des flux relatifs a au moins un reseau client rattache a un reseau d'interconnexion |
US8009673B2 (en) * | 2006-03-13 | 2011-08-30 | Freescale Semiconductor, Inc. | Method and device for processing frames |
US7697537B2 (en) * | 2006-03-21 | 2010-04-13 | Broadcom Corporation | System and method for using generic comparators with firmware interface to assist video/audio decoders in achieving frame sync |
US8006306B2 (en) * | 2006-03-21 | 2011-08-23 | Riverbed Technology, Inc. | Exploit-based worm propagation mitigation |
US8578479B2 (en) * | 2006-03-21 | 2013-11-05 | Riverbed Technology, Inc. | Worm propagation mitigation |
US8024421B2 (en) | 2006-03-30 | 2011-09-20 | Welch Allyn, Inc. | Device data sheets and data dictionaries for a dynamic medical object information base |
US8635330B2 (en) * | 2006-04-24 | 2014-01-21 | Vmware, Inc. | Method and system for learning web applications |
GB2438455A (en) * | 2006-05-23 | 2007-11-28 | Agilent Technologies Inc | Generation of data packet decoding instructions |
US8300529B2 (en) | 2006-06-14 | 2012-10-30 | Alcatel Lucent | Service-centric communication network monitoring |
US8289965B2 (en) | 2006-10-19 | 2012-10-16 | Embarq Holdings Company, Llc | System and method for establishing a communications session with an end-user based on the state of a network connection |
US8717911B2 (en) | 2006-06-30 | 2014-05-06 | Centurylink Intellectual Property Llc | System and method for collecting network performance information |
US9094257B2 (en) | 2006-06-30 | 2015-07-28 | Centurylink Intellectual Property Llc | System and method for selecting a content delivery network |
US8184549B2 (en) | 2006-06-30 | 2012-05-22 | Embarq Holdings Company, LLP | System and method for selecting network egress |
US8488447B2 (en) | 2006-06-30 | 2013-07-16 | Centurylink Intellectual Property Llc | System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance |
US8213333B2 (en) * | 2006-07-12 | 2012-07-03 | Chip Greel | Identifying and resolving problems in wireless device configurations |
WO2008008863A2 (en) | 2006-07-12 | 2008-01-17 | Sipera Systems, Inc. | System, method and apparatus for troubleshooting an ip network |
GB2443005A (en) * | 2006-07-19 | 2008-04-23 | Chronicle Solutions | Analysing network traffic by decoding a wide variety of protocols (or object types) of each packet |
US8885632B2 (en) | 2006-08-02 | 2014-11-11 | Silver Peak Systems, Inc. | Communications scheduler |
US8755381B2 (en) | 2006-08-02 | 2014-06-17 | Silver Peak Systems, Inc. | Data matching using flow based packet data storage |
US7630385B2 (en) * | 2006-08-04 | 2009-12-08 | Oyadomari Randy I | Multiple domains in a multi-chassis system |
US8549405B2 (en) | 2006-08-22 | 2013-10-01 | Centurylink Intellectual Property Llc | System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally |
US7843831B2 (en) | 2006-08-22 | 2010-11-30 | Embarq Holdings Company Llc | System and method for routing data on a packet network |
US8199653B2 (en) | 2006-08-22 | 2012-06-12 | Embarq Holdings Company, Llc | System and method for communicating network performance information over a packet network |
US8743703B2 (en) | 2006-08-22 | 2014-06-03 | Centurylink Intellectual Property Llc | System and method for tracking application resource usage |
US8576722B2 (en) | 2006-08-22 | 2013-11-05 | Centurylink Intellectual Property Llc | System and method for modifying connectivity fault management packets |
US8064391B2 (en) | 2006-08-22 | 2011-11-22 | Embarq Holdings Company, Llc | System and method for monitoring and optimizing network performance to a wireless device |
US8224255B2 (en) | 2006-08-22 | 2012-07-17 | Embarq Holdings Company, Llc | System and method for managing radio frequency windows |
US8537695B2 (en) | 2006-08-22 | 2013-09-17 | Centurylink Intellectual Property Llc | System and method for establishing a call being received by a trunk on a packet network |
US8238253B2 (en) | 2006-08-22 | 2012-08-07 | Embarq Holdings Company, Llc | System and method for monitoring interlayer devices and optimizing network performance |
US8307065B2 (en) | 2006-08-22 | 2012-11-06 | Centurylink Intellectual Property Llc | System and method for remotely controlling network operators |
US8130793B2 (en) | 2006-08-22 | 2012-03-06 | Embarq Holdings Company, Llc | System and method for enabling reciprocal billing for different types of communications over a packet network |
US8407765B2 (en) | 2006-08-22 | 2013-03-26 | Centurylink Intellectual Property Llc | System and method for restricting access to network performance information tables |
US8144587B2 (en) | 2006-08-22 | 2012-03-27 | Embarq Holdings Company, Llc | System and method for load balancing network resources using a connection admission control engine |
US8619600B2 (en) | 2006-08-22 | 2013-12-31 | Centurylink Intellectual Property Llc | System and method for establishing calls over a call path having best path metrics |
US8750158B2 (en) | 2006-08-22 | 2014-06-10 | Centurylink Intellectual Property Llc | System and method for differentiated billing |
US7684332B2 (en) | 2006-08-22 | 2010-03-23 | Embarq Holdings Company, Llc | System and method for adjusting the window size of a TCP packet through network elements |
US8228791B2 (en) | 2006-08-22 | 2012-07-24 | Embarq Holdings Company, Llc | System and method for routing communications between packet networks based on intercarrier agreements |
US8274905B2 (en) | 2006-08-22 | 2012-09-25 | Embarq Holdings Company, Llc | System and method for displaying a graph representative of network performance over a time period |
US8223655B2 (en) | 2006-08-22 | 2012-07-17 | Embarq Holdings Company, Llc | System and method for provisioning resources of a packet network based on collected network performance information |
US8189468B2 (en) | 2006-10-25 | 2012-05-29 | Embarq Holdings, Company, LLC | System and method for regulating messages between networks |
US8531954B2 (en) | 2006-08-22 | 2013-09-10 | Centurylink Intellectual Property Llc | System and method for handling reservation requests with a connection admission control engine |
US8015294B2 (en) | 2006-08-22 | 2011-09-06 | Embarq Holdings Company, LP | Pin-hole firewall for communicating data packets on a packet network |
US9479341B2 (en) | 2006-08-22 | 2016-10-25 | Centurylink Intellectual Property Llc | System and method for initiating diagnostics on a packet network node |
US8102770B2 (en) * | 2006-08-22 | 2012-01-24 | Embarq Holdings Company, LP | System and method for monitoring and optimizing network performance with vector performance tables and engines |
US8763007B1 (en) * | 2006-08-29 | 2014-06-24 | At&T Intellectual Property Ii, L.P. | Open application interface for complex systems |
US7710892B2 (en) * | 2006-09-08 | 2010-05-04 | Dominic Coupal | Smart match search method for captured data frames |
US7764695B2 (en) * | 2006-09-25 | 2010-07-27 | Oyadomari Randy I | Arm and rollback in a multi-chassis system |
US8218539B2 (en) * | 2006-10-18 | 2012-07-10 | Broadcom Corporation | Flexible packet field processor |
WO2008052291A2 (en) * | 2006-11-03 | 2008-05-08 | Intelliguard I.T. Pty Ltd | System and process for detecting anomalous network traffic |
US7583674B2 (en) * | 2006-11-20 | 2009-09-01 | Alcatel Lucent | Switch and method for supporting internet protocol (IP) network tunnels |
WO2008061483A1 (fr) * | 2006-11-24 | 2008-05-29 | Hangzhou H3C Technologies Co., Ltd. | Procédé et appareil d'identification de contenu de données |
US7672336B2 (en) * | 2006-12-01 | 2010-03-02 | Sonus Networks, Inc. | Filtering and policing for defending against denial of service attacks on a network |
JP2011503912A (ja) * | 2006-12-01 | 2011-01-27 | ソーナス ネットワークス, インコーポレイテッド | ネットワークのサービス妨害攻撃に対する防御のための情報選別及び監視制限 |
US7804774B2 (en) * | 2006-12-01 | 2010-09-28 | Sonus Networks, Inc. | Scalable filtering and policing mechanism for protecting user traffic in a network |
US7940657B2 (en) | 2006-12-01 | 2011-05-10 | Sonus Networks, Inc. | Identifying attackers on a network |
EP1931083B1 (de) | 2006-12-06 | 2012-02-01 | Tektronix International Sales GmbH | System umfassend eine Dekodiervorrichtung und eine Protokollbeschreibungssprache sowie Verfahren zum Analysieren von Kommunikationsprotokollen mit einer generischen Dekodiervorrichtung. |
JP4764810B2 (ja) * | 2006-12-14 | 2011-09-07 | 富士通株式会社 | 異常トラヒック監視装置、エントリ管理装置およびネットワークシステム |
WO2008075224A1 (en) * | 2006-12-19 | 2008-06-26 | International Business Machines Corporation | Apparatus and method for analysing a network flow |
US8526821B2 (en) | 2006-12-29 | 2013-09-03 | Finisar Corporation | Transceivers for testing networks and adapting to device changes |
US9497205B1 (en) * | 2008-05-19 | 2016-11-15 | Emc Corporation | Global commonality and network logging |
ES2341742B8 (es) * | 2007-01-25 | 2011-12-29 | Universitat Politècnica De Catalunya | Deteccion y medida en tiempo real de flujos de elementos frecuentes en grandes poblaciones, escalable y sintonizable. |
US9106606B1 (en) | 2007-02-05 | 2015-08-11 | F5 Networks, Inc. | Method, intermediate device and computer program code for maintaining persistency |
US20080196104A1 (en) * | 2007-02-09 | 2008-08-14 | George Tuvell | Off-line mms malware scanning system and method |
CN101247247B (zh) * | 2007-02-15 | 2012-06-27 | 华为技术有限公司 | 一种利用呈现信息传播广告的方法、系统和服务器 |
EP1968235A1 (en) * | 2007-03-05 | 2008-09-10 | Psytechnics Ltd | Method of data analysis in a packet switched network |
US7984140B2 (en) * | 2007-03-14 | 2011-07-19 | Cisco Technology, Inc. | Network response time measurements in an asymmetric routing environment |
US7842214B2 (en) * | 2007-03-28 | 2010-11-30 | 3M Innovative Properties Company | Process for forming microporous membranes |
US7990867B1 (en) | 2007-05-03 | 2011-08-02 | Xilinx, Inc. | Pipeline for processing network packets |
US7784014B1 (en) | 2007-05-03 | 2010-08-24 | Xilinx, Inc. | Generation of a specification of a network packet processor |
US7788402B1 (en) | 2007-05-03 | 2010-08-31 | Xilinx, Inc. | Circuit for modification of a network packet by insertion or removal of a data segment |
US7792117B1 (en) | 2007-05-03 | 2010-09-07 | Xilinx, Inc. | Method for simulating a processor of network packets |
US8284772B1 (en) | 2007-05-03 | 2012-10-09 | Xilinx, Inc. | Method for scheduling a network packet processor |
US7724684B2 (en) * | 2007-05-24 | 2010-05-25 | Modelware, Inc. | System and method for designing and implementing packet processing products |
US7636908B1 (en) | 2007-06-14 | 2009-12-22 | Xilinx, Inc. | Generation of a specification of a network packet processor |
US7669166B1 (en) | 2007-06-14 | 2010-02-23 | Xilinx, Inc. | Generation of a specification of a processor of network packets |
US7817657B1 (en) | 2007-06-14 | 2010-10-19 | Xilinx, Inc. | Circuit for processing network packets |
US8144702B1 (en) * | 2007-06-14 | 2012-03-27 | Xilinx, Inc. | Generation of a pipeline for processing a type of network packets |
US8700743B2 (en) * | 2007-07-13 | 2014-04-15 | Pure Networks Llc | Network configuration device |
US9491077B2 (en) * | 2007-07-13 | 2016-11-08 | Cisco Technology, Inc. | Network metric reporting system |
US9026639B2 (en) * | 2007-07-13 | 2015-05-05 | Pure Networks Llc | Home network optimizing system |
EP2028821B1 (en) | 2007-07-23 | 2015-08-12 | Verint Systems Inc. | Dedicated network interface |
US9455896B2 (en) | 2007-07-23 | 2016-09-27 | Verint Americas Inc. | Dedicated network interface |
US20090034423A1 (en) * | 2007-07-30 | 2009-02-05 | Anthony Terrance Coon | Automated detection of TCP anomalies |
EP2179542A4 (en) * | 2007-08-02 | 2010-11-17 | Tekelec Us | METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR COLLECTING DATA FROM A NETWORK TRAFFIC CROSSING HIGH-SPEED INTERNET PROTOCOL (IP) COMMUNICATION LINKS |
WO2009016618A2 (en) * | 2007-08-02 | 2009-02-05 | Celtro Ltd. | Method and system for identifying udp communications |
US7966295B2 (en) * | 2007-10-10 | 2011-06-21 | Teefonaktiebolaget L M Ericsson (Publ) | System and method of mirroring a database to a plurality of subscribers |
US20090106156A1 (en) * | 2007-10-23 | 2009-04-23 | Alcatel Lucent | Network-based DRM enforcement |
US8427966B2 (en) * | 2007-10-26 | 2013-04-23 | Jds Uniphase Corporation | Programmable passive probe |
CN101179810B (zh) * | 2007-11-14 | 2012-05-23 | 中国移动通信集团福建有限公司 | 基于corba接口快速写入的hlr派单装置 |
US8307115B1 (en) | 2007-11-30 | 2012-11-06 | Silver Peak Systems, Inc. | Network memory mirroring |
US8165074B2 (en) | 2007-12-03 | 2012-04-24 | Motorola Mobility, Inc. | Techniques for handling service flows in wireless communication systems |
US9516128B2 (en) | 2007-12-13 | 2016-12-06 | International Business Machines Corporation | Generic remote connection to a command line interface application |
US20090154363A1 (en) | 2007-12-18 | 2009-06-18 | Josh Stephens | Method of resolving network address to host names in network flows for network device |
FR2925807B1 (fr) * | 2007-12-20 | 2010-02-19 | Inst Nat Rech Inf Automat | Moniteur de systeme de communication par messages ameliore |
US9197746B2 (en) | 2008-02-05 | 2015-11-24 | Avaya Inc. | System, method and apparatus for authenticating calls |
US8442052B1 (en) | 2008-02-20 | 2013-05-14 | Silver Peak Systems, Inc. | Forward packet recovery |
US8068425B2 (en) | 2008-04-09 | 2011-11-29 | Embarq Holdings Company, Llc | System and method for using network performance information to determine improved measures of path states |
US8132089B1 (en) | 2008-05-02 | 2012-03-06 | Verint Americas, Inc. | Error checking at the re-sequencing stage |
CN101286903B (zh) * | 2008-05-06 | 2010-09-15 | 北京锐安科技有限公司 | 一种网络审计领域提高会话完整性的方法 |
CN101577704A (zh) * | 2008-05-08 | 2009-11-11 | 北京东华合创数码科技股份有限公司 | 一种网络应用层协议识别方法和系统 |
US8856926B2 (en) * | 2008-06-27 | 2014-10-07 | Juniper Networks, Inc. | Dynamic policy provisioning within network security devices |
US9717021B2 (en) | 2008-07-03 | 2017-07-25 | Silver Peak Systems, Inc. | Virtual network overlay |
US8743683B1 (en) | 2008-07-03 | 2014-06-03 | Silver Peak Systems, Inc. | Quality of service using multiple flows |
US10164861B2 (en) | 2015-12-28 | 2018-12-25 | Silver Peak Systems, Inc. | Dynamic monitoring and visualization for network health characteristics |
US10805840B2 (en) | 2008-07-03 | 2020-10-13 | Silver Peak Systems, Inc. | Data transmission via a virtual wide area network overlay |
CN101312580B (zh) * | 2008-07-11 | 2011-12-28 | 深圳国人通信有限公司 | 一种直放站监控中心和直放站监控方法 |
US20100017486A1 (en) * | 2008-07-16 | 2010-01-21 | Fujitsu Limited | System analyzing program, system analyzing apparatus, and system analyzing method |
US8326977B2 (en) * | 2008-07-16 | 2012-12-04 | Fujitsu Limited | Recording medium storing system analyzing program, system analyzing apparatus, and system analyzing method |
WO2010013098A1 (en) * | 2008-08-01 | 2010-02-04 | Alcatel Lucent | Data path debugging |
US8726382B2 (en) * | 2008-08-20 | 2014-05-13 | The Boeing Company | Methods and systems for automated detection and tracking of network attacks |
US8813220B2 (en) * | 2008-08-20 | 2014-08-19 | The Boeing Company | Methods and systems for internet protocol (IP) packet header collection and storage |
US8762515B2 (en) * | 2008-08-20 | 2014-06-24 | The Boeing Company | Methods and systems for collection, tracking, and display of near real time multicast data |
US8169434B2 (en) * | 2008-09-29 | 2012-05-01 | Microsoft Corporation | Octree construction on graphics processing units |
US8103764B2 (en) * | 2008-10-14 | 2012-01-24 | CacheIQ, Inc. | Method and apparatus for matching trigger pattern |
WO2010060480A1 (en) * | 2008-11-26 | 2010-06-03 | Telecom Italia S.P.A. | Application data flow management in an ip network |
US7954010B2 (en) * | 2008-12-12 | 2011-05-31 | At&T Intellectual Property I, L.P. | Methods and apparatus to detect an error condition in a communication network |
EP2371095A4 (en) * | 2008-12-23 | 2012-06-13 | Ericsson Telefon Ab L M | METHOD AND ARRANGEMENT FOR IDENTIFYING TRAFFIC FLOW IN A COMMUNICATION NETWORK |
US8218553B2 (en) * | 2009-02-25 | 2012-07-10 | Juniper Networks, Inc. | Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering |
US9473555B2 (en) | 2012-12-31 | 2016-10-18 | The Nielsen Company (Us), Llc | Apparatus, system and methods for portable device tracking using temporary privileged access |
US8259585B1 (en) | 2009-04-17 | 2012-09-04 | Juniper Networks, Inc. | Dynamic link load balancing |
EP2262172A1 (en) * | 2009-06-10 | 2010-12-15 | Alcatel Lucent | Method and scout agent for building a source database |
US8788652B2 (en) * | 2009-07-27 | 2014-07-22 | Ixia | Real world network testing combining lower layer network tests, application layer tests and interdependent interactions |
US9565207B1 (en) | 2009-09-04 | 2017-02-07 | Amazon Technologies, Inc. | Firmware updates from an external channel |
US10177934B1 (en) | 2009-09-04 | 2019-01-08 | Amazon Technologies, Inc. | Firmware updates inaccessible to guests |
US8214653B1 (en) | 2009-09-04 | 2012-07-03 | Amazon Technologies, Inc. | Secured firmware updates |
US8887144B1 (en) | 2009-09-04 | 2014-11-11 | Amazon Technologies, Inc. | Firmware updates during limited time period |
US8971538B1 (en) | 2009-09-08 | 2015-03-03 | Amazon Technologies, Inc. | Firmware validation from an external channel |
US8102881B1 (en) | 2009-09-08 | 2012-01-24 | Amazon Technologies, Inc. | Streamlined guest networking in a virtualized environment |
US8601170B1 (en) | 2009-09-08 | 2013-12-03 | Amazon Technologies, Inc. | Managing firmware update attempts |
US8155146B1 (en) * | 2009-09-09 | 2012-04-10 | Amazon Technologies, Inc. | Stateless packet segmentation and processing |
US8959611B1 (en) | 2009-09-09 | 2015-02-17 | Amazon Technologies, Inc. | Secure packet management for bare metal access |
US8640220B1 (en) | 2009-09-09 | 2014-01-28 | Amazon Technologies, Inc. | Co-operative secure packet management |
US8300641B1 (en) | 2009-09-09 | 2012-10-30 | Amazon Technologies, Inc. | Leveraging physical network interface functionality for packet processing |
US8381264B1 (en) | 2009-09-10 | 2013-02-19 | Amazon Technologies, Inc. | Managing hardware reboot and reset in shared environments |
US20110106937A1 (en) * | 2009-10-29 | 2011-05-05 | Fluke Corporation | Mixed-mode analysis |
BR112012010045A2 (pt) * | 2009-10-29 | 2016-05-24 | Telefonica Sa | método de monitoramento de tráfego de rede por meio de metadados descritivos. |
KR101292887B1 (ko) * | 2009-12-21 | 2013-08-02 | 한국전자통신연구원 | 패킷 동일성 검사를 이용한 라우터의 패킷 스트림 모니터링 장치 및 방법 |
US8307052B2 (en) | 2009-12-29 | 2012-11-06 | International Business Machines Corporation | Method and system for communication sessions |
US8291058B2 (en) * | 2010-02-19 | 2012-10-16 | Intrusion, Inc. | High speed network data extractor |
IT1398339B1 (it) * | 2010-03-09 | 2013-02-22 | Dainotti | Metodo e sistema per la classificazione di flussi di traffico in una rete di comunicazione dati che utilizza firme basate sul contenuto del traffico |
US8724515B2 (en) | 2010-03-26 | 2014-05-13 | Cisco Technology, Inc. | Configuring a secure network |
US8649297B2 (en) * | 2010-03-26 | 2014-02-11 | Cisco Technology, Inc. | System and method for simplifying secure network setup |
EP2372962B1 (en) * | 2010-03-31 | 2017-08-16 | Alcatel Lucent | Method and system for reducing energy consumption in packet processing linecards |
CN101814977B (zh) * | 2010-04-22 | 2012-11-21 | 北京邮电大学 | 利用数据流头部特征的tcp流量在线识别方法及装置 |
JP5447171B2 (ja) * | 2010-05-14 | 2014-03-19 | 株式会社日立製作所 | セッション制御装置、当該セッション制御装置に適用されるソフトウェア、セッション制御方法、およびネットワークシステム |
WO2011143817A1 (zh) * | 2010-05-19 | 2011-11-24 | 阿尔卡特朗讯 | 应用协议识别方法及装置 |
WO2011149558A2 (en) | 2010-05-28 | 2011-12-01 | Abelow Daniel H | Reality alternate |
CN101834763B (zh) * | 2010-06-25 | 2011-11-09 | 山东大学 | 高速网络环境下多类型大流并行测量方法 |
DE102010030811A1 (de) * | 2010-07-01 | 2012-01-05 | Endress + Hauser Flowtec Ag | Automatisierte Adaption an verschiedene Industrial Ethernet Protokolle |
US8848746B2 (en) * | 2010-06-30 | 2014-09-30 | Vitesse Semiconductor Corporation | Packet protocol processing with precision timing protocol support |
US8724473B2 (en) | 2010-07-16 | 2014-05-13 | Ixia | Locating signatures in packets |
US8358653B1 (en) * | 2010-08-17 | 2013-01-22 | Xilinx, Inc. | Generating a pipeline of a packet processor from a parsing tree |
US8385340B1 (en) * | 2010-08-17 | 2013-02-26 | Xilinx, Inc. | Pipeline of a packet processor programmed to concurrently perform operations |
US8428087B1 (en) | 2010-09-17 | 2013-04-23 | Amazon Technologies, Inc. | Framework for stateless packet tunneling |
EP2633396A4 (en) * | 2010-10-27 | 2016-05-25 | Hewlett Packard Development Co | PATTERN DETECTION |
CN102468987B (zh) * | 2010-11-08 | 2015-01-14 | 清华大学 | 网络流特征向量提取方法 |
CN101984638B (zh) * | 2010-11-10 | 2013-05-15 | 河海大学常州校区 | 用于处理跨IPv4和IPv6网络的存储代理系统及方法 |
US20120124430A1 (en) * | 2010-11-17 | 2012-05-17 | Cisco Technology, Inc. | Mechanism to Prevent Escaped Associations in Multi-Association RPC Based Protocols |
US8730826B2 (en) * | 2010-11-17 | 2014-05-20 | Ixia | Testing fragment reassembly |
CN102006204B (zh) * | 2010-12-09 | 2013-11-06 | 高新兴科技集团股份有限公司 | 一种对实时监控数据流的分布式解析系统 |
US8619782B2 (en) | 2010-12-14 | 2013-12-31 | International Business Machines Corporation | Bidirectional packet flow transformation |
US20120147892A1 (en) | 2010-12-14 | 2012-06-14 | International Business Machines Corporation | Analysis of network packets using a generated hash code |
US8768748B2 (en) * | 2010-12-17 | 2014-07-01 | Verizon Patent And Licensing Inc. | Resource manager |
US9049034B2 (en) * | 2010-12-20 | 2015-06-02 | Hewlett-Packard Development Company, L.P. | Multicast flow monitoring |
US8635180B2 (en) * | 2011-02-06 | 2014-01-21 | International Business Machines Corporation | Multiple hash scheme for use in a pattern matching accelerator |
US9292329B2 (en) * | 2011-02-10 | 2016-03-22 | Microsoft Technology Licensing, Llc | Virtual switch interceptor |
US8462780B2 (en) | 2011-03-30 | 2013-06-11 | Amazon Technologies, Inc. | Offload device-based stateless packet processing |
US8976676B2 (en) * | 2011-04-01 | 2015-03-10 | Voapps, Inc. | Adaptive signaling for network performance measurement, access, and control |
US10033612B2 (en) | 2011-04-01 | 2018-07-24 | Voapps, Inc. | Adaptive signaling for network performance measurement, access, and control |
EP2560338B1 (en) * | 2011-06-13 | 2016-01-13 | Huawei Technologies Co., Ltd. | Method and apparatus for protocol parsing |
US8943236B1 (en) * | 2011-06-21 | 2015-01-27 | Netlogic Microsystems, Inc. | Packet scheduling using a programmable weighted fair queuing scheduler that employs deficit round robin |
US8654643B2 (en) | 2011-07-27 | 2014-02-18 | Ixia | Wide field indexing for packet tracking |
KR101871411B1 (ko) * | 2011-07-28 | 2018-06-26 | 텔레콤 이탈리아 소시에떼 퍼 아찌오니 | 통신 네트워크의 노드에서의 데이터 트래픽에 대한 측정을 수행하는 방법, 통신 네트워크용 노드 및 관리 서버, 및 상기 방법을 구현하기 위한 프로그램을 저장하는 기록매체 |
US8593958B2 (en) * | 2011-09-14 | 2013-11-26 | Telefonaktiebologet L M Ericsson (Publ) | Network-wide flow monitoring in split architecture networks |
US9130991B2 (en) | 2011-10-14 | 2015-09-08 | Silver Peak Systems, Inc. | Processing data packets in performance enhancing proxy (PEP) environment |
US9626224B2 (en) | 2011-11-03 | 2017-04-18 | Silver Peak Systems, Inc. | Optimizing available computing resources within a virtual environment |
EP2592784B1 (en) | 2011-11-14 | 2013-09-18 | Alcatel Lucent | Apparatus, method and computer program for routing data packets |
US10009144B2 (en) * | 2011-12-15 | 2018-06-26 | Qualcomm Incorporated | Systems and methods for pre-FEC metrics and reception reports |
CN104025026B (zh) * | 2011-12-29 | 2019-07-26 | 英特尔公司 | 访问用于配置空间的配置和状态寄存器 |
US9141506B2 (en) * | 2012-02-15 | 2015-09-22 | Jds Uniphase Corporation | Method and system for network monitoring using signature packets |
US9608893B2 (en) * | 2012-02-27 | 2017-03-28 | The Boeing Company | Methods and systems for parsing data objects |
CN102647414B (zh) * | 2012-03-30 | 2014-12-24 | 华为技术有限公司 | 协议解析方法、设备及系统 |
US9356844B2 (en) | 2012-05-03 | 2016-05-31 | Intel Corporation | Efficient application recognition in network traffic |
US9923798B1 (en) | 2012-06-28 | 2018-03-20 | Juniper Networks, Inc. | Dynamic load balancing of network traffic on a multi-path label switched path using resource reservation protocol with traffic engineering |
US9009401B2 (en) * | 2012-07-27 | 2015-04-14 | International Business Machines Corporation | Multi-updatable least recently used mechanism |
US9143449B2 (en) * | 2012-07-31 | 2015-09-22 | Cisco Technology, Inc. | Methods and apparatuses for improving database search performance |
EP2915287B1 (en) * | 2012-10-30 | 2018-12-05 | Viavi Solutions Inc. | Method and system for identifying matching packets |
US9723091B1 (en) * | 2012-11-09 | 2017-08-01 | Noble Systems Corporation | Variable length protocol using serialized payload with compression support |
US9117502B2 (en) | 2013-02-06 | 2015-08-25 | Fixnetix Ltd. | System and method for memory management of unique alpha-numeric order identifiers subjected to hashing and truncation for mapping to limited memory space |
US9887911B2 (en) | 2013-02-28 | 2018-02-06 | Xaptum, Inc. | Systems, methods, and devices for adaptive communication in a data communication network |
KR20140110157A (ko) * | 2013-03-04 | 2014-09-17 | 삼성전자주식회사 | 시퀀스 데이터에서의 패턴 검색 방법 및 장치 |
US9432278B2 (en) * | 2013-03-07 | 2016-08-30 | Microsoft Technology Licensing, Llc | Simulation of interactions between network endpoints |
US9584393B2 (en) * | 2013-03-15 | 2017-02-28 | Extreme Networks, Inc. | Device and related method for dynamic traffic mirroring policy |
US9813447B2 (en) * | 2013-03-15 | 2017-11-07 | Extreme Networks, Inc. | Device and related method for establishing network policy based on applications |
US9172627B2 (en) | 2013-03-15 | 2015-10-27 | Extreme Networks, Inc. | Device and related method for dynamic traffic mirroring |
US9256636B2 (en) | 2013-03-15 | 2016-02-09 | Extreme Networks, Inc. | Device and related method for application identification |
US9130826B2 (en) * | 2013-03-15 | 2015-09-08 | Enterasys Networks, Inc. | System and related method for network monitoring and control based on applications |
US9230213B2 (en) | 2013-03-15 | 2016-01-05 | Extreme Networks, Inc. | Device and related method for scoring applications running on a network |
CN104077282B (zh) * | 2013-03-25 | 2018-02-06 | 华为技术有限公司 | 处理数据的方法和装置 |
US9270593B2 (en) * | 2013-05-09 | 2016-02-23 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Prediction based methods for fast routing of IP flows using communication/network processors |
US9672503B2 (en) | 2013-05-21 | 2017-06-06 | Amazon Technologies, Inc. | Bandwidth metering in large-scale networks |
CN111116567B (zh) * | 2013-09-09 | 2023-10-10 | 中国科学院上海有机化学研究所 | 扎那米韦和拉那米韦的中间体及其合成方法 |
CN105794172B (zh) * | 2013-10-17 | 2019-02-15 | 马维尔国际贸易有限公司 | 网络设备和用于在网络设备中处理报文的方法 |
US9602338B2 (en) * | 2013-12-20 | 2017-03-21 | Nec Corporation | System and method for network packet event characterization and analysis |
US9350677B2 (en) * | 2014-01-16 | 2016-05-24 | International Business Machines Corporation | Controller based network resource management |
CN104954271B (zh) * | 2014-03-26 | 2018-11-30 | 国际商业机器公司 | Sdn网络中的数据包处理方法和装置 |
US9853876B1 (en) * | 2014-06-13 | 2017-12-26 | Narus, Inc. | Mobile application identification in network traffic via a search engine approach |
US9948496B1 (en) | 2014-07-30 | 2018-04-17 | Silver Peak Systems, Inc. | Determining a transit appliance for data traffic to a software service |
US9875344B1 (en) | 2014-09-05 | 2018-01-23 | Silver Peak Systems, Inc. | Dynamic monitoring and authorization of an optimization device |
US10146468B2 (en) * | 2014-09-20 | 2018-12-04 | Netronome Systems, Inc. | Addressless merge command with data item identifier |
TWI531187B (zh) * | 2014-11-24 | 2016-04-21 | 財團法人工業技術研究院 | 晶片上網路之時序功率估算裝置與方法 |
US9608879B2 (en) * | 2014-12-02 | 2017-03-28 | At&T Intellectual Property I, L.P. | Methods and apparatus to collect call packets in a communications network |
CN105827474A (zh) * | 2015-01-09 | 2016-08-03 | 丹纳赫(上海)工业仪器技术研发有限公司 | 网络监控方法、过滤数据包的方法及装置 |
US10162842B2 (en) * | 2015-01-09 | 2018-12-25 | Intel Corporation | Data partition and transformation methods and apparatuses |
US9525697B2 (en) | 2015-04-02 | 2016-12-20 | Varmour Networks, Inc. | Delivering security functions to distributed networks |
US9928259B2 (en) * | 2015-04-21 | 2018-03-27 | International Business Machines Corporation | Deleted database record reuse |
US11762989B2 (en) | 2015-06-05 | 2023-09-19 | Bottomline Technologies Inc. | Securing electronic data by automatically destroying misdirected transmissions |
US9483317B1 (en) | 2015-08-17 | 2016-11-01 | Varmour Networks, Inc. | Using multiple central processing unit cores for packet forwarding in virtualized networks |
US9614861B2 (en) | 2015-08-26 | 2017-04-04 | Microsoft Technology Licensing, Llc | Monitoring the life cycle of a computer network connection |
US20170163664A1 (en) | 2015-12-04 | 2017-06-08 | Bottomline Technologies (De) Inc. | Method to secure protected content on a mobile device |
CN105515899B (zh) * | 2015-12-04 | 2018-12-28 | 中国科学院信息工程研究所 | 一种网络模拟路由器Netflow数据生成系统及方法 |
US10284460B1 (en) | 2015-12-28 | 2019-05-07 | Amazon Technologies, Inc. | Network packet tracing |
WO2017137076A1 (en) * | 2016-02-10 | 2017-08-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for transport protocol selection and setup of a connection between a client and a server |
EP3863234B1 (en) | 2016-03-25 | 2023-12-13 | Voapps, Inc. | Adaptive signaling for network performance measurement, access, and control |
US10437829B2 (en) | 2016-05-09 | 2019-10-08 | Level 3 Communications, Llc | Monitoring network traffic to determine similar content |
US11163955B2 (en) | 2016-06-03 | 2021-11-02 | Bottomline Technologies, Inc. | Identifying non-exactly matching text |
US10432484B2 (en) | 2016-06-13 | 2019-10-01 | Silver Peak Systems, Inc. | Aggregating select network traffic statistics |
US10547412B2 (en) | 2016-06-30 | 2020-01-28 | Cisco Technology, Inc. | System and method to measure and score application health via correctable errors |
CN106302387A (zh) * | 2016-07-14 | 2017-01-04 | 淮南师范学院 | 一种计算机网络安全的管理系统 |
US9967056B1 (en) | 2016-08-19 | 2018-05-08 | Silver Peak Systems, Inc. | Forward packet recovery with constrained overhead |
US10038622B2 (en) * | 2016-09-29 | 2018-07-31 | Nicira, Inc. | Inline processing of learn actions in a virtual switch |
CN106487599B (zh) * | 2016-11-30 | 2020-02-04 | 上海斐讯数据通信技术有限公司 | 云接入控制器运行状态分布式监控的方法和系统 |
EP3337099A1 (en) | 2016-12-13 | 2018-06-20 | Napatech A/S | A system and a method for handling data |
CN106713357A (zh) * | 2017-01-24 | 2017-05-24 | 南京仁谷系统集成有限公司 | 一种通用的网络协议解析方法 |
US10257082B2 (en) | 2017-02-06 | 2019-04-09 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows |
US10771394B2 (en) | 2017-02-06 | 2020-09-08 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows on a first packet from DNS data |
US11044202B2 (en) | 2017-02-06 | 2021-06-22 | Silver Peak Systems, Inc. | Multi-level learning for predicting and classifying traffic flows from first packet data |
US10892978B2 (en) | 2017-02-06 | 2021-01-12 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows from first packet data |
CN110383777B (zh) | 2017-03-28 | 2022-04-08 | 马维尔亚洲私人有限公司 | 端口扩展器设备的灵活处理器 |
US10230621B2 (en) | 2017-05-09 | 2019-03-12 | Juniper Networks, Inc. | Varying a per-hop-bandwidth constraint in multi-path label switched paths |
CN107566098B (zh) * | 2017-07-24 | 2019-10-18 | 清华大学 | 软件定义网络应用测试序列的生成方法与生成系统 |
US10678506B2 (en) * | 2017-08-01 | 2020-06-09 | Arm Limited | Matching consecutive values in a data processing apparatus |
US11212210B2 (en) | 2017-09-21 | 2021-12-28 | Silver Peak Systems, Inc. | Selective route exporting using source type |
US11057352B2 (en) | 2018-02-28 | 2021-07-06 | Xaptum, Inc. | Communication system and method for machine data routing |
US10637721B2 (en) | 2018-03-12 | 2020-04-28 | Silver Peak Systems, Inc. | Detecting path break conditions while minimizing network overhead |
CN108681490B (zh) * | 2018-03-15 | 2020-04-28 | 阿里巴巴集团控股有限公司 | 针对rpc信息的向量处理方法、装置以及设备 |
US10965653B2 (en) | 2018-03-28 | 2021-03-30 | Xaptum, Inc. | Scalable and secure message brokering approach in a communication system |
US10805439B2 (en) | 2018-04-30 | 2020-10-13 | Xaptum, Inc. | Communicating data messages utilizing a proprietary network |
CN110598412B (zh) * | 2018-06-12 | 2021-12-14 | 杨力祥 | 将权力信息隔离并依托它进行权力检查的方法及计算装置 |
FR3083659B1 (fr) * | 2018-07-06 | 2020-08-28 | Qosmos Tech | Identification de protocole d'un flux de donnees |
US11294874B2 (en) * | 2018-07-25 | 2022-04-05 | Ab Initio Technology Llc | Structured record retrieval |
US10678676B2 (en) * | 2018-08-08 | 2020-06-09 | Servicenow, Inc. | Playback of captured network transactions in a simulation environment |
US10924593B2 (en) | 2018-08-31 | 2021-02-16 | Xaptum, Inc. | Virtualization with distributed adaptive message brokering |
US11108675B2 (en) | 2018-10-31 | 2021-08-31 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for testing effects of simulated frame preemption and deterministic fragmentation of preemptable frames in a frame-preemption-capable network |
JP7348797B2 (ja) * | 2018-11-09 | 2023-09-21 | 日本放送協会 | パケットフロー監視装置 |
US10938877B2 (en) | 2018-11-30 | 2021-03-02 | Xaptum, Inc. | Optimizing data transmission parameters of a proprietary network |
IT201800010791A1 (it) * | 2018-12-04 | 2020-06-04 | Telecom Italia Spa | Misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto |
US11343358B2 (en) | 2019-01-29 | 2022-05-24 | Marvell Israel (M.I.S.L) Ltd. | Flexible header alteration in network devices |
US10912053B2 (en) | 2019-01-31 | 2021-02-02 | Xaptum, Inc. | Enforcing geographic restrictions for multitenant overlay networks |
CA3131297A1 (en) | 2019-03-11 | 2020-09-17 | Citrix Systems, Inc. | User experience oriented path selection |
US11005729B2 (en) * | 2019-03-14 | 2021-05-11 | Juniper Networks, Inc. | Satisfying service level agreement metrics for unknown applications |
US11416713B1 (en) | 2019-03-18 | 2022-08-16 | Bottomline Technologies, Inc. | Distributed predictive analytics data set |
US11032071B2 (en) * | 2019-03-29 | 2021-06-08 | Microsoft Technology Licensing, Llc | Secure and verifiable data access logging system |
US11042555B1 (en) | 2019-06-28 | 2021-06-22 | Bottomline Technologies, Inc. | Two step algorithm for non-exact matching of large datasets |
US11269841B1 (en) | 2019-10-17 | 2022-03-08 | Bottomline Technologies, Inc. | Method and apparatus for non-exact matching of addresses |
US11593136B2 (en) | 2019-11-21 | 2023-02-28 | Pensando Systems, Inc. | Resource fairness enforcement in shared IO interfaces |
US11973669B1 (en) | 2019-12-10 | 2024-04-30 | Cisco Technology, Inc. | Statistical packet and byte counters |
US12058231B2 (en) | 2019-12-13 | 2024-08-06 | Marvell Israel (M.I.S.L) Ltd. | Hybrid fixed/programmable header parser for network devices |
US11398969B2 (en) | 2020-01-22 | 2022-07-26 | Cisco Technology, Inc. | Network conversation testing of flow level operations |
CN113472688B (zh) * | 2020-03-30 | 2023-10-20 | 瑞昱半导体股份有限公司 | 应用在网络装置中的电路及网络装置的操作方法 |
CN113746654B (zh) * | 2020-05-29 | 2024-01-12 | 中国移动通信集团河北有限公司 | 一种IPv6地址管理和流量分析的方法和装置 |
US11233715B1 (en) | 2020-07-14 | 2022-01-25 | Juniper Networks, Inc. | Dynamic prediction and management of application service level agreements |
CN112052046A (zh) * | 2020-07-24 | 2020-12-08 | 乐歌人体工学科技股份有限公司 | 一种针对升降装置的电机控制参数修改的方法 |
US11449870B2 (en) | 2020-08-05 | 2022-09-20 | Bottomline Technologies Ltd. | Fraud detection rule optimization |
US11677668B1 (en) * | 2020-08-31 | 2023-06-13 | National Technology & Engineering Solutions Of Sandia, Llc | Transparent application-layer/os deeper packet inspector |
TWI765428B (zh) * | 2020-11-24 | 2022-05-21 | 啟碁科技股份有限公司 | 基於應用程式類別的服務品質調整方法及其系統 |
CN112492580B (zh) * | 2020-11-25 | 2023-08-18 | 北京小米移动软件有限公司 | 信息处理方法及装置、通信设备及存储介质 |
CN112637223B (zh) * | 2020-12-26 | 2023-03-24 | 曙光网络科技有限公司 | 应用协议识别方法、装置、计算机设备和存储介质 |
US11743270B2 (en) | 2021-04-16 | 2023-08-29 | Visa International Service Association | Method, system, and computer program product for protocol parsing for network security |
EP4113951B1 (en) * | 2021-06-29 | 2025-01-01 | Renesas Electronics Corporation | Frame data processing |
US11694276B1 (en) | 2021-08-27 | 2023-07-04 | Bottomline Technologies, Inc. | Process for automatically matching datasets |
US11544798B1 (en) | 2021-08-27 | 2023-01-03 | Bottomline Technologies, Inc. | Interactive animated user interface of a step-wise visual path of circles across a line for invoice management |
FR3126830A1 (fr) * | 2021-09-07 | 2023-03-10 | Nano Corp | Procede et système d’analyse de flux de données |
CN114124758B (zh) * | 2021-10-28 | 2023-06-06 | 珠海大横琴科技发展有限公司 | 一种流量监控的方法和装置 |
CN114115003B (zh) * | 2021-11-12 | 2023-08-22 | 浙江银盾云科技有限公司 | 远程启停控制平台 |
US12088619B2 (en) * | 2021-11-19 | 2024-09-10 | Paypal, Inc. | Identity-based risk evaluation techniques |
US12015532B2 (en) * | 2021-11-19 | 2024-06-18 | Paypal, Inc. | Component-based risk evaluation techniques using processing flow signatures |
CN114125941B (zh) * | 2021-11-19 | 2023-08-29 | 深圳市欧瑞博科技股份有限公司 | 数据分包方法、装置、电子设备及存储介质 |
CN113904950B (zh) * | 2021-12-06 | 2022-02-22 | 广东睿江云计算股份有限公司 | 基于流的网络监测方法、装置、计算机设备及存储介质 |
US12034557B2 (en) | 2021-12-17 | 2024-07-09 | Bank Of America Corporation | Systems for capturing messaging volume and utilization metrics within a multicast messaging service |
CN114338436B (zh) * | 2021-12-28 | 2024-08-16 | 深信服科技股份有限公司 | 一种网络流量文件的识别方法、装置、电子设备和介质 |
US12007911B2 (en) | 2022-03-10 | 2024-06-11 | Samsung Electronics Co., Ltd | System and method for efficiently obtaining information stored in an address space |
CN114666681B (zh) * | 2022-03-21 | 2024-05-10 | 厦门大学 | 一种有状态的带内网络遥测方法及系统 |
US12212585B2 (en) | 2022-04-01 | 2025-01-28 | Vectra Ai, Inc. | Method, product, and system for analyzing a computer network to identify attack paths using a software representation that embodies network configuration and policy data for security management |
US12219070B2 (en) | 2022-04-01 | 2025-02-04 | Vectra Ai, Inc. | Method, product, and system for generating detection signatures based on attack paths in a computer network identified using a software representation that embodies network configuration and policy data for security management using detection signature templates |
US12107943B2 (en) * | 2022-06-30 | 2024-10-01 | Mellanox Technologies, Ltd. | Parsing using null header node |
WO2024158105A1 (ko) * | 2023-01-27 | 2024-08-02 | 주식회사 페어리 | 패킷 분석 기반 사용자 단말에서 실행되는 서비스의 속성 판단방법과 이를 수행하는 사용자 단말 및 컴퓨터프로그램 |
KR102565724B1 (ko) * | 2023-04-06 | 2023-08-14 | 주식회사 페어리 | 패킷 분석 기반 사용자 단말에서 실행되는 서비스의 속성 판단방법과 이를 수행하는 사용자 단말 및 컴퓨터프로그램 |
EP4414874A1 (en) * | 2023-02-10 | 2024-08-14 | Vectra AI, Inc. | Method, product, and system for network security management using a reasoning and inference engine |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5648965A (en) * | 1995-07-07 | 1997-07-15 | Sun Microsystems, Inc. | Method and apparatus for dynamic distributed packet tracing and analysis |
JP2004342132A (ja) * | 1998-04-03 | 2004-12-02 | Applied Microcircuits Corp | コンピュータプロセッサを含む装置、複数の所定のグループのタスクを実行するステップを含む方法、ネットワークデータを処理するステップを含む方法、複数のソフトウェアタスクを実行するための方法およびコンピュータプロセッサを含むネットワーク装置 |
Family Cites Families (113)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3949369A (en) | 1974-01-23 | 1976-04-06 | Data General Corporation | Memory access technique |
US4458310A (en) | 1981-10-02 | 1984-07-03 | At&T Bell Laboratories | Cache memory using a lowest priority replacement circuit |
US4559618A (en) | 1982-09-13 | 1985-12-17 | Data General Corp. | Content-addressable memory module with associative clear |
US4736320A (en) | 1985-10-08 | 1988-04-05 | Foxboro Company | Computer language structure for process control applications, and translator therefor |
US5247693A (en) | 1985-10-08 | 1993-09-21 | The Foxboro Company | Computer language structure for process control applications and method of translating same into program code to operate the computer |
US4785398A (en) * | 1985-12-19 | 1988-11-15 | Honeywell Bull Inc. | Virtual cache system using page level number generating CAM to access other memories for processing requests relating to a page |
JPH0769868B2 (ja) | 1986-09-25 | 1995-07-31 | 松下電器産業株式会社 | 高速アドレス変換装置 |
JPS648745A (en) | 1987-07-01 | 1989-01-12 | Canon Kk | Communication medium supervising system |
US5101402A (en) | 1988-05-24 | 1992-03-31 | Digital Equipment Corporation | Apparatus and method for realtime monitoring of network sessions in a local area network |
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 |
US4972453A (en) | 1989-02-28 | 1990-11-20 | At&T Bell Laboratories | Autonomous expert system for directly maintaining remote telephone switching systems |
US5249292A (en) | 1989-03-31 | 1993-09-28 | Chiappa J Noel | Data packet switch using a primary processing unit to designate one of a plurality of data stream control circuits to selectively handle the header processing of incoming packets in one data packet stream |
JPH06162083A (ja) * | 1992-11-17 | 1994-06-10 | Hitachi Ltd | 文字列検索装置 |
US5247517A (en) | 1989-10-20 | 1993-09-21 | Novell, Inc. | Method and apparatus for analyzing networks |
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 |
JP2865831B2 (ja) * | 1990-08-31 | 1999-03-08 | 株式会社日立製作所 | 並列ストリング・サーチ装置 |
DE69020899T2 (de) | 1990-09-28 | 1995-12-07 | Hewlett Packard Co | Netzüberwachungssystem und -vorrichtung. |
US5249282A (en) * | 1990-11-21 | 1993-09-28 | Benchmarq Microelectronics, Inc. | Integrated cache memory system with primary and secondary cache memories |
US6115393A (en) | 1991-04-12 | 2000-09-05 | Concord Communications, Inc. | Network monitoring |
JPH05327712A (ja) * | 1991-08-09 | 1993-12-10 | Nec Corp | 端末アダプタ |
US5805808A (en) | 1991-12-27 | 1998-09-08 | Digital Equipment Corporation | Real time parser for data packets in a communications network |
US5351243A (en) | 1991-12-27 | 1994-09-27 | Digital Equipment Corporation | Monitor for packets on a communications network |
JP2772604B2 (ja) | 1992-10-27 | 1998-07-02 | シャープ株式会社 | データ処理システム |
US5826017A (en) | 1992-02-10 | 1998-10-20 | Lucent Technologies | Apparatus and method for communicating data between elements of a distributed system using a general protocol |
GB9205551D0 (en) | 1992-03-13 | 1992-04-29 | Inmos Ltd | Cache memory |
JP2775549B2 (ja) | 1992-05-08 | 1998-07-16 | 三菱電機株式会社 | 連想メモリセルおよび連想メモリ回路 |
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 |
US5742760A (en) | 1992-05-12 | 1998-04-21 | Compaq Computer Corporation | Network packet switch using shared memory for repeating and bridging packets at media rate |
US5819028A (en) | 1992-06-10 | 1998-10-06 | Bay Networks, Inc. | Method and apparatus for determining the health of a network |
WO1993026111A1 (en) * | 1992-06-17 | 1993-12-23 | Hewlett Packard Company | Network monitoring method and apparatus |
WO1994003856A1 (en) | 1992-08-07 | 1994-02-17 | Massachusetts Institute Of Technology | Column-associative cache |
JPH0696124A (ja) * | 1992-09-11 | 1994-04-08 | Sumitomo Metal Ind Ltd | 情報検索装置 |
GB2271250B (en) | 1992-10-01 | 1996-07-10 | Digital Equipment Int | Message network monitoring |
DE69324204T2 (de) * | 1992-10-22 | 1999-12-23 | Cabletron Systems, Inc. | Aufsuchen von Adressen bei Paketübertragung mittels Hashing und eines inhaltsadressierten Speichers |
US5375070A (en) | 1993-03-01 | 1994-12-20 | International Business Machines Corporation | Information collection architecture and method for a data communications network |
US5365514A (en) | 1993-03-01 | 1994-11-15 | International Business Machines Corporation | Event driven interface for a system for monitoring and controlling a data communications network |
US5493689A (en) | 1993-03-01 | 1996-02-20 | International Business Machines Corporation | System for configuring an event driven interface including control blocks defining good loop locations in a memory which represent detection of a characteristic pattern |
EP0689748B1 (en) | 1993-03-20 | 1998-09-16 | International Business Machines Corporation | Method and apparatus for extracting connection information from protocol headers |
US5414650A (en) | 1993-03-24 | 1995-05-09 | Compression Research Group, Inc. | Parsing information onto packets using context-insensitive parsing rules based on packet characteristics |
GB2276961B (en) | 1993-03-30 | 1997-03-26 | Int Computers Ltd | Set-associative memory |
US5862335A (en) | 1993-04-01 | 1999-01-19 | Intel Corp. | Method and apparatus for monitoring file transfers and logical connections in a computer network |
US5394394A (en) | 1993-06-24 | 1995-02-28 | Bolt Beranek And Newman Inc. | Message header classifier |
US5369605A (en) * | 1993-07-07 | 1994-11-29 | Dell Usa, L.P. | Incremental search content addressable memory for increased data compression efficiency |
KR100186929B1 (ko) | 1993-07-28 | 1999-05-15 | 마크 마이클 | 다중네트워크 어드레스를 구비한 네트워크 스테이션 |
US5586288A (en) * | 1993-09-22 | 1996-12-17 | Hilevel Technology, Inc. | Memory interface chip with rapid search capability |
US5634009A (en) | 1993-10-01 | 1997-05-27 | 3Com Corporation | Network data collection method and apparatus |
US5586266A (en) | 1993-10-15 | 1996-12-17 | International Business Machines Corporation | System and method for adaptive, active monitoring of a serial data stream having a characteristic pattern |
US5606668A (en) | 1993-12-15 | 1997-02-25 | Checkpoint Software Technologies Ltd. | System for securing inbound and outbound data packet flow in a computer network |
US5835726A (en) | 1993-12-15 | 1998-11-10 | Check Point Software Technologies Ltd. | System for securing the flow of and selectively modifying packets in a computer network |
GB9326476D0 (en) | 1993-12-24 | 1994-02-23 | Newbridge Networks Corp | Network |
US5500855A (en) | 1994-01-26 | 1996-03-19 | International Business Machines Corporation | Realtime event classification for a data communications network |
US5555244A (en) * | 1994-05-19 | 1996-09-10 | Integrated Network Corporation | Scalable multimedia network |
JP3024901B2 (ja) * | 1994-05-24 | 2000-03-27 | 三菱電機株式会社 | 多重化ネットワーク制御装置 |
US5903754A (en) | 1994-06-21 | 1999-05-11 | Microsoft Corporation | Dynamic layered protocol stack |
US5666514A (en) | 1994-07-01 | 1997-09-09 | Board Of Trustees Of The Leland Stanford Junior University | Cache memory containing extra status bits to indicate memory regions where logging of data should occur |
US5845331A (en) | 1994-09-28 | 1998-12-01 | Massachusetts Institute Of Technology | Memory system including guarded pointers |
US5717916A (en) * | 1994-09-30 | 1998-02-10 | Vlsi Technology, Inc. | Method for providing an improved fully associative cache memory having a finite state machine and linked list structure |
GB2295299B (en) | 1994-11-16 | 1999-04-28 | Network Services Inc Enterpris | Enterprise network management method and apparatus |
US5608662A (en) | 1995-01-12 | 1997-03-04 | Television Computer, Inc. | Packet filter engine |
US5680585A (en) * | 1995-03-31 | 1997-10-21 | Bay Networks, Inc. | Method and apparatus for defining data packet formats |
GB2301717B (en) | 1995-06-02 | 1999-08-11 | Dsc Communications | Network controller for monitoring the status of a network |
US5651002A (en) | 1995-07-12 | 1997-07-22 | 3Com Corporation | Internetworking device with enhanced packet header translation and memory |
US5825774A (en) | 1995-07-12 | 1998-10-20 | 3Com Corporation | Packet characterization using code vectors |
US5878420A (en) | 1995-08-31 | 1999-03-02 | Compuware Corporation | Network monitoring and management system |
US5568471A (en) | 1995-09-06 | 1996-10-22 | International Business Machines Corporation | System and method for a workstation monitoring and control of multiple networks having different protocols |
US5764638A (en) | 1995-09-14 | 1998-06-09 | Level One Communications, Inc. | Method and apparatus for filtering and forwarding messages in a computer network using a last source address |
US5623600A (en) * | 1995-09-26 | 1997-04-22 | Trend Micro, Incorporated | Virus detection and removal apparatus for computer networks |
JP3426428B2 (ja) | 1995-10-27 | 2003-07-14 | 富士通株式会社 | トランザクションのトレース装置 |
US5703877A (en) | 1995-11-22 | 1997-12-30 | General Instrument Corporation Of Delaware | Acquisition and error recovery of audio data carried in a packetized data stream |
US5809415A (en) * | 1995-12-11 | 1998-09-15 | Unwired Planet, Inc. | Method and architecture for an interactive two-way data communication network |
CN1178595A (zh) * | 1995-12-14 | 1998-04-08 | 摩托罗拉公司 | 用来存储和显示文本的设备和方法 |
US5793954A (en) * | 1995-12-20 | 1998-08-11 | Nb Networks | System and method for general purpose network analysis |
US5761424A (en) | 1995-12-29 | 1998-06-02 | Symbios, Inc. | Method and apparatus for programmable filtration and generation of information in packetized communication systems |
US5732213A (en) | 1996-03-22 | 1998-03-24 | Ericsson Inc. | System and method of testing open systems interconnection (OSI) layers in telecommunication networks |
US5787253A (en) * | 1996-05-28 | 1998-07-28 | The Ag Group | Apparatus and method of analyzing internet activity |
US6243667B1 (en) * | 1996-05-28 | 2001-06-05 | Cisco Systems, Inc. | Network flow switching and flow data export |
US5799154A (en) | 1996-06-27 | 1998-08-25 | Mci Communications Corporation | System and method for the remote monitoring of wireless packet data networks |
US5749087A (en) | 1996-07-30 | 1998-05-05 | International Business Machines Corporation | Method and apparatus for maintaining n-way associative directories utilizing a content addressable memory |
US5850388A (en) | 1996-08-02 | 1998-12-15 | Wandel & Goltermann Technologies, Inc. | Protocol analyzer for monitoring digital transmission networks |
US5802054A (en) | 1996-08-15 | 1998-09-01 | 3Com Corporation | Atomic network switch with integrated circuit switch nodes |
US5838919A (en) | 1996-09-10 | 1998-11-17 | Ganymede Software, Inc. | Methods, systems and computer program products for endpoint pair based communications network performance testing |
DE19636788A1 (de) * | 1996-09-11 | 1998-03-12 | Philips Patentverwaltung | Filmabtaster mit Daten-Interface |
US5781924A (en) * | 1996-09-30 | 1998-07-14 | Sun Microsystems, Inc. | Computer caching methods and apparatus |
US5721827A (en) * | 1996-10-02 | 1998-02-24 | James Logan | System for electrically distributing personalized information |
US5841895A (en) | 1996-10-25 | 1998-11-24 | Pricewaterhousecoopers, Llp | Method for learning local syntactic relationships for use in example-based information-extraction-pattern learning |
US5850386A (en) | 1996-11-01 | 1998-12-15 | Wandel & Goltermann Technologies, Inc. | Protocol analyzer for monitoring digital transmission networks |
US6453345B2 (en) | 1996-11-06 | 2002-09-17 | Datadirect Networks, Inc. | Network security and surveillance system |
US5812529A (en) | 1996-11-12 | 1998-09-22 | Lanquest Group | Method and apparatus for network assessment |
US6791947B2 (en) * | 1996-12-16 | 2004-09-14 | Juniper Networks | In-line packet processing |
JP3566478B2 (ja) * | 1996-12-27 | 2004-09-15 | キヤノン株式会社 | 文書セキュリティ管理システム、文書セキュリティ管理方法および文書検索装置 |
US6014380A (en) * | 1997-06-30 | 2000-01-11 | Sun Microsystems, Inc. | Mechanism for packet field replacement in a multi-layer distributed network element |
US6118760A (en) * | 1997-06-30 | 2000-09-12 | Sun Microsystems, Inc. | Management of entries in a network element forwarding memory |
JPH1145057A (ja) * | 1997-07-28 | 1999-02-16 | Shizuki Denki Seisakusho:Kk | 電子伝言板システム |
IL121898A0 (en) | 1997-10-07 | 1998-03-10 | Cidon Israel | A method and apparatus for active testing and fault allocation of communication networks |
US6424624B1 (en) | 1997-10-16 | 2002-07-23 | Cisco Technology, Inc. | Method and system for implementing congestion detection and flow control in high speed digital network |
JPH11163855A (ja) * | 1997-11-27 | 1999-06-18 | Nec Corp | ネットワーク監視システム |
US6330226B1 (en) | 1998-01-27 | 2001-12-11 | Nortel Networks Limited | TCP admission control |
US6279113B1 (en) | 1998-03-16 | 2001-08-21 | Internet Tools, Inc. | Dynamic signature inspection-based network intrusion detection |
US6466985B1 (en) * | 1998-04-10 | 2002-10-15 | At&T Corp. | Method and apparatus for providing quality of service using the internet protocol |
US6097699A (en) | 1998-06-05 | 2000-08-01 | Gte Laboratories Incorporated | Method and system for monitoring broadband quality of services |
US6381306B1 (en) | 1998-06-08 | 2002-04-30 | Inet Technologies, Inc. | System and method for monitoring service quality in a communications network |
US6452915B1 (en) * | 1998-07-10 | 2002-09-17 | Malibu Networks, Inc. | IP-flow classification in a wireless point to multi-point (PTMP) transmission system |
US6363056B1 (en) | 1998-07-15 | 2002-03-26 | International Business Machines Corporation | Low overhead continuous monitoring of network performance |
US6570875B1 (en) * | 1998-10-13 | 2003-05-27 | Intel Corporation | Automatic filtering and creation of virtual LANs among a plurality of switch ports |
US6282570B1 (en) | 1998-12-07 | 2001-08-28 | International Business Machines Corporation | Monitoring a large parallel database through dynamic grouping and sequential sampling |
US6453360B1 (en) * | 1999-03-01 | 2002-09-17 | Sun Microsystems, Inc. | High performance network interface |
US6483804B1 (en) * | 1999-03-01 | 2002-11-19 | Sun Microsystems, Inc. | Method and apparatus for dynamic packet batching with a high performance network interface |
US6625657B1 (en) | 1999-03-25 | 2003-09-23 | Nortel Networks Limited | System for requesting missing network accounting records if there is a break in sequence numbers while the records are transmitting from a source device |
US6510509B1 (en) * | 1999-03-29 | 2003-01-21 | Pmc-Sierra Us, Inc. | Method and apparatus for high-speed network rule processing |
US6519568B1 (en) * | 1999-06-15 | 2003-02-11 | Schlumberger Technology Corporation | System and method for electronic data delivery |
DE60045552D1 (de) | 1999-06-30 | 2011-03-03 | Apptitude Inc | Verfahren und gerät um den netzwerkverkehr zu überwachen |
US6516337B1 (en) * | 1999-10-14 | 2003-02-04 | Arcessa, Inc. | Sending to a central indexing site meta data or signatures from objects on a computer network |
JP2003044510A (ja) | 2001-07-26 | 2003-02-14 | Matsushita Electric Ind Co Ltd | ゲートウェイ装置 |
-
2000
- 2000-06-30 DE DE60045552T patent/DE60045552D1/de not_active Expired - Lifetime
- 2000-06-30 EP EP07004755A patent/EP1788489A1/en not_active Withdrawn
- 2000-06-30 US US09/608,237 patent/US6651099B1/en not_active Expired - Lifetime
- 2000-06-30 EP EP07004754A patent/EP1791063A1/en not_active Withdrawn
- 2000-06-30 CN CNB2004100435245A patent/CN1293502C/zh not_active Expired - Lifetime
- 2000-06-30 CN CNB008136750A patent/CN1258723C/zh not_active Expired - Lifetime
- 2000-06-30 DE DE60045529T patent/DE60045529D1/de not_active Expired - Lifetime
- 2000-06-30 US US09/609,179 patent/US6665725B1/en not_active Expired - Lifetime
- 2000-06-30 EP EP00947012A patent/EP1196856B1/en not_active Expired - Lifetime
- 2000-06-30 WO PCT/US2000/018330 patent/WO2001001272A2/en active Application Filing
- 2000-06-30 JP JP2001507214A patent/JP2003524317A/ja active Pending
- 2000-06-30 CN CNB2004100435438A patent/CN100384180C/zh not_active Expired - Lifetime
- 2000-06-30 CN CNB2004100435423A patent/CN1312892C/zh not_active Expired - Lifetime
- 2000-06-30 AT AT07004756T patent/ATE495500T1/de not_active IP Right Cessation
- 2000-06-30 CN CNB2004100456133A patent/CN100405784C/zh not_active Expired - Lifetime
- 2000-06-30 AU AU60685/00A patent/AU775495B2/en not_active Expired
- 2000-06-30 EP EP07004756A patent/EP1788490B1/en not_active Expired - Lifetime
- 2000-06-30 CN CNB200410043525XA patent/CN1293478C/zh not_active Expired - Lifetime
- 2000-06-30 AT AT00947012T patent/ATE496341T1/de not_active IP Right Cessation
-
2003
- 2003-10-14 US US10/684,776 patent/US6954789B2/en not_active Expired - Lifetime
-
2010
- 2010-08-06 JP JP2010177158A patent/JP5517821B2/ja not_active Expired - Lifetime
- 2010-08-06 JP JP2010177157A patent/JP5238769B2/ja not_active Expired - Lifetime
-
2013
- 2013-10-01 JP JP2013206575A patent/JP5850896B2/ja not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5648965A (en) * | 1995-07-07 | 1997-07-15 | Sun Microsystems, Inc. | Method and apparatus for dynamic distributed packet tracing and analysis |
JP2004342132A (ja) * | 1998-04-03 | 2004-12-02 | Applied Microcircuits Corp | コンピュータプロセッサを含む装置、複数の所定のグループのタスクを実行するステップを含む方法、ネットワークデータを処理するステップを含む方法、複数のソフトウェアタスクを実行するための方法およびコンピュータプロセッサを含むネットワーク装置 |
Non-Patent Citations (3)
Title |
---|
CSNJ200910071028; 光井理雄: 'Excel Macro-Virus用Vaccineの試作' 情報処理学会第56回(平成10年前期)全国大会 5D-4 , 19980317, p1-56-1-57, 情報処理学会 * |
JPN6012034810; 光井理雄: 'Excel Macro-Virus用Vaccineの試作' 情報処理学会第56回(平成10年前期)全国大会 5D-4 , 19980317, p1-56-1-57, 情報処理学会 * |
JPN6014045366; 馬場志朗,他4名: '高性能シングルチップマイクロコンピュータH8シリーズ' 日立評論 , 198812, 日立製作所 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10623338B2 (en) | 2017-11-14 | 2020-04-14 | Fujitsu Limited | Information processing device, information processing method and non-transitory computer-readable storage medium |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5850896B2 (ja) | ネットワークにおけるトラフィックを監視する方法および装置 | |
US6771646B1 (en) | Associative cache structure for lookups and updates of flow records in a network monitor | |
US7299282B2 (en) | State processor for pattern matching in a network monitor device | |
US6839751B1 (en) | Re-using information from data transactions for maintaining statistics in network monitoring | |
US7383244B2 (en) | Longest prefix match (LPM) algorithm implementation for a network processor | |
US6675163B1 (en) | Full match (FM) search algorithm implementation for a network processor | |
JPH11127198A (ja) | パケット網の使用に関する情報を収集する方法及び装置 | |
AU2004201912B2 (en) | A packet processor | |
KR100608541B1 (ko) | 샘플링과 시그너쳐 검색 기능을 구비한 인터넷 프로토콜패킷 수집 장치 및 그 방법 | |
Chen | Designing Compact Data Structures for Network Measurement and Control | |
Zhao | Pigasus: Efficient Handling of Input-Dependent Streaming on FPGAs | |
Schuehler | TCP Processor: Design, Implementation, Operation, and Usage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141017 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141028 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150123 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150707 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151005 |
|
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: 20151104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151201 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5850896 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 |
|
EXPY | Cancellation because of completion of term |