説明

高速ネットワークのトラフィック分析

本発明は、複数のリンクによって互いに接続される複数の分析回路を有する通信リンク上で、トラフィックを分析するシステムを提示する。各々の分析回路は、上記通信リンクのデータ伝送速度よりも低速のデータ伝送速度を有し、パケットについて異なるレベルで、各々が分析を実施するのに適している。第1の分析回路によって第1レベルの分析で分析されたパケットから取り出された情報は、第2の分析回路で実施される第2レベルの分析に転送され、第2の分析回路で実施される更なる分析は、第1の分析回路で実施された分析によって決まる。本発明のシステム及び付随する方法は、高速で高負荷のトラフィックフローを評価する計算機ネットワークのために、効率的、実用的、および改良されたトラフィックフロー分析を可能にし、さらに先端技術のために、改良されたプロトコル分析を可能にする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、計算機ネットワークに関するもので、特に高速接続リンク上でのトラフィックフロー分析に関する。
【背景技術】
【0002】
トラフィックフローを調査することは、多大な処理時間および監視と分類のために多大なパワーを費やすことになる。また、トラフィックデータの量および伝送速度の両方が、特にインターネットのトラフィックデータにおいて、猛烈に増加し続けている。トラフィックフロー分析のためのシステムは、しばしば種々の障害に遭遇する。この障害は、トラフィックフローのパッセージ・レベルにおいて、意味の明確性、信頼性、および有用性のある分類およびネットワーク・トラフィックの処理を得るために必要な、種々のタイプの厳しい処理のために発生する。
【0003】
通信ネットワーク上を往復するトラフィックの分類は、各々のトラフィックフローに適用できる形態に基づいて、分類方法を決定することが可能である。すなわち、データパケットを適切に処理する前に、トラフィックフローの分類は、ネットワーク・コンポーネントに、データパケットの種々の特性およびデータパケット内に含まれる情報にしたがって、データパケットを分類させることを可能にする。従って、適切で効果あるデータ処理は、パケットの信頼できる分類方法によって殆んど決まる。パケットが分類された後、ネットワーク・コンポーネントは、このパケットを適切に取扱いおよび処理する方法を決定することができる。
【0004】
例えば、ファイアウォール内において、セキュリティ・システムの設定は、一般に、特定の伝送を阻止するために、プロトコル特性の認識を頼りにしている。また、サービスの品質を管理する装置において、このような装置は、種々のシナリオを記載した複雑な規則に応じてデータに優先順位を配分する。上記シナリオと接続間で搬送されるデータパケットとの間での対応は、これらの接続を分類するための技術を使用する。
【0005】
説明を元に戻すと、ネットワークの制御および管理を実施することは、上記ネットワーク上でデジタルのデータストリームを生成する、種々の送信器と受信器との間での接続を分類することが要求される。このことは、強力で信頼性のある分類方法が要求され、したがってトラフィック分析が要求されることになる。
【0006】
さらに、パケットの分析および分類は、しばしばプロトコル属性を構築する複雑なタスク、すなわち、プロトコルによって伝達される、データおよびパラメータ名称の意味上のストリームで使用されるプロトコル名称の指名順番を決定するタスクを含むことになる。異なるプロトコルを識別するために、グラフベースまたは知識ベースを構築することは、非常に厳しいタスクである。何故なら、パケット通信ネットワーク内で使用される新規プロトコルの数は増加しており、同様にプロトコル修正の数および新規の従属リンクの数も増加しているからである。
【0007】
一般的に、データパケットの観測タスクは、ネットワークのノード、たとえば、接続が通過する箇所で、通過用データパケットを生成する代理サーバのようなノードに割り当てられる。従って、現存するトラフィックフローの分析は、一般的に図1に示すような計算機ネットワークシステム内で実施される。種々の計算機間の高速トラフィック(例えば、パケットまたはデータグラム)を分析するためのトラフィック分析システムは、通信リンク200を使用して、第2のネットワーク110に接続する第1のネットワーク100を含む。通信リンク200は、分析器300によって分析され、この分析器300は、第1のネットワーク100と第2のネットワーク110との間の両方向または片方向に流れるトラフィックを測定し分析する。第1のネットワーク100と第2のネットワーク110との間のトラフィックは、ビジネス用ネットワークでは通常1Gbpsであるが、しかしオペレータ用ネットワークの中核においては数十Gbpsと同等の高速にすることができる。
【0008】
上記で説明したように、負荷の重いネットワークにおいて、正確で緻密な方法で、すべてのトラフィックを連続して分析することは、手に負えない仕事である。分析器300での測定および分析の能力は、同時に流れるフローの数N(例えば、トラフィックフロー・サイズ)および各フローのスループットの数T(例えば、トラフィックフロー速度)によって決定される。Nは、指定されたアプリケーションのコンテクスト(context)を管理するのに必要なメモリ容量に直接影響し、一方で、Tは、パケットに顕著な損失が無くて、分析を実施するのに必要な処理能力に直接影響を与える。Tは、経過時間内で処理できるパケット量を規定することになり、結果として各々のパケットに割り当てできる処理の総数を規定することになる。
【発明の開示】
【発明が解決しようとする課題】
【0009】
既知のシステムにおいて、処理の総数は、フローNの増加と共に比例して増加する。そして、各々のパケットがフローの状態に貢献でき、かつ各々のパケットがサイズNに関係するデータ構造で負担できる範囲である限り、増加する。所定の物的インフラストラクチャは、固有の性能と固有の配置数とに関連して動作状況を示すのは明らかであり、Dを減少させることでNを増加させるか、またはNを減少させることでDを増加させるかのいずれかで、一定状況を作り出すことを可能にする。換言すれば、N×Dは、ほぼ一定である。
【0010】
しかしながら、現存する計算機ネットワークの実態と発展は、NおよびT共に比例して同時に増加しつつある。すなわち、ネットワーク・トラフィックのサイズと速度は、もはや反比例するのではなく、NおよびTともに増加している。これに加えて、監視および分析に委ねられるトラフィックフローは、大規模で複雑になっている。
【課題を解決するための手段】
【0011】
従って、高速で負荷の重いトラフィックフローを評価する計算機に対して、効率的、実用的、および改良されたトラフィックフロー分析を実施するように、さらに、たとえばVoIP(Voice over IP)アプリケーションのような新興技術のために改良されたプロトコル分析を実施するように、新規の方法とシステムとを発展させることが、要求されている。
【0012】
従って、本発明の1つの目的は、複数のリンクによって互いに接続されている複数の分析回路を有する通信リンク上で、トラフィック分析を実施するためのトラフィック分析システムを提示することであり、上記分析回路の各々は、上記通信リンクのデータ伝送速度よりも低速のデータ伝送速度を有し、上記分析回路は、パケットを分析するのに、各々が異なるレベルで実施するのに適する。第1の分析回路によって第1レベルの分析で分析されたパケットから取り出された情報は、第2の分析回路で実施される第2レベルの分析に転送され、第2の分析回路で実施される更なる分析は、第1の分析回路で実施された分析によって決まる。
【0013】
また、下記特徴の1つ以上を含めることができる。
【0014】
本発明の1つの態様において、各々が異なるレベルの分析を実施するのに適した前記第1および第2の分析回路は、前記第1および第2の分析回路によって実施される分析によって提供される状態情報を受け取るための共通メモリを含む。
【0015】
別の実施態様において、各々が異なるレベルの分析を実施するのに適した前記第1および第2の分析回路は、各々が下位レベルおよび上位レベルの分析回路を備え、下位レベルの分析回路は、明示的レベルの分析を実施するのに適し、一方で上位レベルの分析回路は、黙示的なレベルの分析を実施するのに適している。
【0016】
さらに別の実施態様において、前記明示的レベルの分析は、パケットのヘッダーが、パケット・シグネチャーを明確にするのに有効な情報を充分に特定するためのプロトコルを、認識するのに適している。
【0017】
さらに、本発明は、また、種々のネットワークに接続する通信リンク上でパケット分析を実施することにより、ネットワーク・トラフィックフローを調査する方法を提示する。上記調査方法は、各々が、異なる層において異なるレベルの分析を実施するのに適した、分析回路を有するトラフィック分析システム内で、分析の連続レベルを設定する。また、上記分析回路は、リンクによって互いに接続され、このリンクは、上記通信リンクのデータ伝送速度よりも低速のデータ伝送速度を有する。また、上記調査方法は、上記分析回路によって分析されたパケットを転送するが、第1の分析回路によって第1レベルの分析で分析されたパケットから取り出された情報を、第2の分析回路で実施される第2レベルの分析に転送するという具合に転送し、そして、上記調査方法は、後続の第2の分析回路で実施される分析のために、第1レベルの分析回路で実施された分析結果を使用する。
【0018】
本発明の他の特徴は、さらに従属クレームの中に列挙してある。
【発明を実施するための最良の形態】
【0019】
改善されたシステムおよび方法の上記態様と異なる態様とが、以下の説明等から明解になるであろう。
【0020】
図2に関連して、トラフィック分析システム10は、階層的分析器310を含み、この階層的分析器は、図1のトラフィック分析システムの分析器300を置き換えるものである。
【0021】
階層的分析器310は、第1のネットワーク100’と第2のネットワーク110’との間の通信リンク200’を介して通過するトラフィックフローのために、分析用の連続層を規定する。結果として、階層的分析器310は、トラフィックフロー上の第1レベルの分析を実施し、第2レベルの分析は、分析器320a−320nによって実施され、第3レベルの分析は、分析器330i−330jによって実施される。トラフィック分析システム10は、通信リンク200’上のパケットのフローサイズと速度によって決まるトラフィックを、的確に分析し分類するのに必要なレベル数に等しいレベル数の分析器を有することができる。
【0022】
階層的分析器310および分析器320a−320nは、リンク202a−202nによって接続され、通信リンク200’を介して通過するパケットの数は、リンク202a−202nを介して通過するパケットの数よりも大きい。
【0023】
例えば、第1レベルの分析において、階層的分析器310は、第1レベルの分類を実施し、すなわちパケットのタイプのヘッダー識別などに従って、パケットを分類する第1の処理を実施する。また、階層的分析器310は、パターン認識技術またはパタンマッチングのような明確なタイプのプロトコル分析を実施することもできる。
【0024】
上記のような明確なプロトコルには、イーサネット(登録商標)用プロトコルがあり、ここでは、イーサネット(登録商標)用パケットのヘッダーは、プロトコルスタック内で後続するプロトコルが、たとえば、可能な限りバージョンと共に、LLCプロトコルまたはIPプロトコルのいずれかを規定する。同様に、IPプロトコルに基づくパケットのヘッダーは、プロトコルスタック内で後続するプロトコルは、TCP、UDP、またはICMPプロトコルのいずれかを規定する。第1レベルの分析は、プロトコル分析の明確なタイプに付随させることができるが、このことに限定する必要はない。
【0025】
低位レベルで実施される第1レベルの分析が、階層的分析器310で一旦実施されると、第2レベルの分析、すなわち分析器320a−320nは、第1レベルの階層的分析器310によって実施された先行の分類に従い、さらにパケットは調査することができる。換言すれば、分析器320a−320nは、高位レベルにおいて黙示的なタイプの分析を実施することになり、この高位レベルは、黙示的なプロトコルの存在を意味し、認識させるものである。プロトコルが、プロトコルスタック内で当該プロトコルに先行するプロトコルのヘッダーによって規定される方法では容易に認識できないとき、このプロトコルは、黙示的と言われる。ポイントキャスト(Pointcast)または、カザー(Kazaa)のようなアプリケーションレベルのプロトコルの多くが、このケースに該当する。このプロトコルを接続のプロトコルスタック内で使用することは、これらの接続用コンテクストによって決まり、この接続用コンテクストは、一般的に事前交渉によって確定される。この事前交渉は、接続部周辺で往復するパケットのフローに沿って、実時間でスキャン処理すると同時にコンパイル処理することのために、困難なことである。例えば、HTTP、Telnet,FTPプロトコルのような特定の既知のプロトコルは、明示的および黙示的なプロトコルの境界に位置する。これらのプロトコルは、TCPプロトコルのヘッダー内に表された予約ポート番号が送信先を表示している場合、明示的とみなすことができる。このときに表示される送信先が、送信されてくるプロトコルを、規定の方法で特定することを可能にする。たとえば、番号80は、HTTPプロトコルに対応し、番号23は、Telnetプロトコルに対応し、番号21は、FTPプロトコルに対応する。例えば、クライアント・ステーションは、TCPのもとでポート番号80を使用し、動的ポート番号をピア接続に割り当てることで、サーバステーションと共にHTTP問い合せ接続を確立させることになる。このピア接続は、サーバステーションがクライアント・ステーションに応答することを可能にする。サーバステーションの応答をクライアント・ステーションに伝達するためのピア接続でのHTTPプロトコルの明示的性質は、問い合せ接続のコンテクストに関連した、ポート番号の動的割り当てを介して、減少することになる。また、クライアント・ステーションが、サーバステーションと事前交渉すること、ポート番号を、HTTP問い合せ接続のために、番号80から識別すること、を阻止するものは何も無い。この場合、HTTPプロトコルは、明示的よりも一層黙示的である。上記条件は、他のプロトコルにとっても真実として維持されており、同種の技術は、この難局に対処することが可能である。
【0026】
この後、第2レベルの分析は、第1レベルの分析によって提供される知識などを充実させる。引き続いて、第3のレベルの分析器330i−330jのような、さらなるレベルが付加されることにより、分析器330i−330jは、先行する第2レベルの分析で実施された分析を使用し、自身のさらなる分析で先行レベルの知識などを充実させる。
【0027】
さらに、第1レベルの分析の別の例として、第1レベルの階層的分析器310によって実施される第1レベルの分析が考えられる。このとき、IPソース、IP送信先アドレス、トランスポート・コード、ソースポートと送信先ポートにおいてハッシュ・キーで計算をすること、アプリケーション・ポートを使用して分類を行う第2レベルの分析のためにパケットを分析器320a−320nに転送すること、および、トラフィックフローの意味上の認識に付随する第3レベルの分類を実施するタスクを分析器330i−330jに依頼することで、上記分析が実施される。例えば、トラフィックフローの意味上の認識は、トラフィックからの重要なパケット要素を得るために、プロトコル図およびプロトコルに付随するモジュラー自己特定メカニズムを使用することを含むことができる。このことは、国際公開番号WO2004/017595号パンフレットに記載されている。
【0028】
また、図2に関連して、トラフィック分析システム10のすべての分析器は、共通メモリ400を共有することができ、この共通のメモリは、実施した分析に関する状態情報を格納する。例えば、上述したシナリオにおいて、分析器320a−320nおよび分析器330i−330jにとって、共通メモリ400を共有することは必要なことである。実際、分析器310、320a−320n、および330i−330j、およびすべての分析器にとって、異なる後続レベルのために、共通メモリ400を共有することは必要なことである。一例は、分析タスクの分割は、各々のセンサからの資源情報を統計的に使用することを当てにするときである。
【0029】
ここで、図3に関連して、別のトラフィック分析システム20が表示されており、階層的レベルの分析が、独立した処理ユニットを使用して実施される。この実施は、PC計算機のようないくつかのCPUを組み合わせること、または並行処理アーキテクチャたとえばネットワーク用プロセッサを使用すること、または一層広範囲に、分析用連続層の構造化および関連データ共有化を可能にする、いずれかの他のタイプのメカニズムを使用することで、実施される。
【0030】
図3は、通信リンク200''上の双方向のデータトラフィックを示し、この双方向のデータトラフィックは、基本プロセッサ510a−510xを集積したネットワーク・プロセッサ500を介して通過していく。このネットワーク・プロセッサ500は、高性能の通信バス900を経由して、メモリ600、ストレージ・モジュール700、および従来型マイクロプロセッサ800に接続される。
【0031】
図3にさらに示すように、階層的分析のために双方向のデータトラフィックを分析するとき、通信リンク200''は、入力端部205で到着パケット1000を受け取る。この到着パケット1000は、ステップ(210)で、基本プロセッサ510a−510xの1つによって、第1に分析される。そして、この到着パケット1000は、ステップ(220)で、メモリ600に複写される。例えば、必要であれば、この到着パケット1000は、ステップ(230)で、出力端部215において通信リンク200''へと再現される。これは、受動的な分析が、監視目的のために実施されるケースであって、ファイアウォール・アプリケーションのような他のアプリケーションと同時実施のケースではない。並行して、同様なステップが、他のパケットのために実施される。そして、メモリ600に格納されたパケット1000は、ステップ(240)で、従来型マイクロプロセッサ800によって処理される。このステップは、パケットを分析する処理であり、ステップ(250)で、上記マイクロプロセッサは、ストレージ・モジュール700に状態情報を書き込む。分析のこの部分は、すべてのパケットを含むのではなく、パケットの一部だけを含む。加えて、到着パケット1000のすべてを分析することは、複写処理や再生処理とは、並行かつ独立して実施することができ、同様に従来型マイクロプロセッサ800を使用するパケットの処理とも並行かつ独立して実施することができる。
【0032】
一例として、従来型マイクロプロセッサ800は、異なるプロトコルの分析に付随する分析、および異なるプロトコルのコンテクスト内のパケットの分析を実施することができる。例えば、異なるプロトコルのコンテクスト内のパケットの分析とは、黙示的プロトコル対明示的プロトコルの分析であり、パケットを早急に特定し、使用プロトコルの指定順序を向上させた形でネットワーク接続を分類するような、有効なトラフィックフロー上の意味ある情報を取り出すために実施される。
【図面の簡単な説明】
【0033】
【図1】典型的なトラフィック分析システムの概略図である。
【図2】本発明による第1の実施態様の概略図である。
【図3】本発明による別の実施態様の概略図である。

【特許請求の範囲】
【請求項1】
通信リンク(200')上のパケットのトラフィック分析を実施するためのトラフィック分析システム(10)であって、
複数のリンク(202a−202n)によって、互いに接続している複数の分析回路(310;320a−320n;330i−330j)であって、各々の回路が、前記通信リンクのデータ伝送速度よりも低速のデータ伝送速度を有する分析回路を備え、
ここで、前記複数の分析回路は、前記通信リンクに沿って往復するパケットについて、各々が異なるレベルの分析を実施するのに適し、第1の分析回路によって第1レベルの分析で分析されたパケットから取り出された情報は、第2の分析回路で実施される第2レベルの分析に転送され、前記第2の分析回路で実施される更なる分析は、前記第1の分析回路で実施された分析によって決まる、トラフィック分析システム。
【請求項2】
前記第1および第2の分析回路は、各々が異なるレベルの分析を実施するのに適しており、前記第1および第2の分析回路によって実施される前記分析によって提供される状態情報を受け取るための共通メモリ(400)を備える請求項1に記載のシステム。
【請求項3】
前記第1および第2の分析回路は、各々が異なるレベルの分析を実施するのに適しており、各々が下位レベルおよび上位レベルの分析回路を備え、前記下位レベルの分析回路は、明示的なレベルの分析を実施するのに適し、一方で、前記上位レベルの分析回路は、黙示的なレベルの分析を実施するのに適している請求項1または2に記載のいずれかのシステム。
【請求項4】
前記明示的なレベルの分析は、前記パケットのヘッダーが、パケット・シグネチャーを明確にするのに有効な情報を充分に特定するためのプロトコルを、認識するのに適している請求項3に記載のシステム。
【請求項5】
複数のネットワークに接続する通信リンク(200')上のパケット分析を実施することによって、ネットワーク・トラフィックフローを調査する方法であって、
各々が異なる層において異なるレベルの分析を実施するのに適した、複数の分析回路を備えるトラフィック分析システム(10)内に、分析の連続レベルを設定することであって、複数の分析回路(310;320a−320n;330i−330j)は、複数のリンク(202a−202n)によって、互いに接続され、各々の回路が、前記通信リンクのデータ伝送速度よりも低速のデータ伝送速度を有する分析回路を備える、分析の連続レベル設定と、
前記複数の分析回路によって分析されたパケットを転送することであって、第1の分析回路によって第1レベルの分析で分析されたパケットから取り出された情報が、第2の分析回路で実施される第2レベルの分析に転送されるという具合に転送される、パケット転送と、
前記第2の分析回路で実施される分析のために、前記第1の分析回路で実施された分析を使用すること、を備えるネットワーク・トラフィックフローの調査方法。
【請求項6】
分析の連続レベルでの設定は、パケットのソース・アドレスまたはシグネチャーをハッシュ・コーディングにより前記パケットを分類することで、前記第1レベルの分析回路によって実施される第1レベルの分析を規定すること、および、前記第2レベルの分析内の前記第2の分析回路に、前記分類したパケットを転送することを備える請求項5に記載の方法。
【請求項7】
前記第1および第2のレベルの分析によって実施された前記分析に基づき、前記トラフィックフローの意味上の認識を提供することを備える請求項5または6に記載の方法。
【請求項8】
複数のネットワークに接続する通信リンク(200'')上のトラフィック分析を実施するために、ネットワーク・トラフィックフローを調査する方法であって、請求項1から5のいずれか一項に記載のシステム内に、さらに、基本プロセッサ(510a−510x)を一体化させたネットワーク・プロセッサ(500)、メモリ(600)、および、通信バス900を経由して接続されるストレージ・モジュール(700)を備え、ここで、
前記通信リンクの入力端部(205)に到着した入力パケット(1000)を、前記基本プロセッサ(510a−510x)の少なくとも1つで、分析(210)するステップと、
前記パケットを前記メモリに複写(220)するステップと、
前記パケットを分析するためのプロセッサを使用して、前記メモリに格納された前記パケットを処理(240)し、前記ストレージ・モジュールに状態情報を書き込み(250)するステップと、
並行に、かつ複写、再現、および処理のステップとは無関係に、入力される前記入力パケットの全てのために、前記分析を実施するステップと、を備えるネットワーク・トラフィックフローの調査方法。
【請求項9】
前記ネットワーク・マイクロプロセッサは、並行処理アーキテクチャを備える請求項8に記載の方法。
【請求項10】
前記パケットを前記通信リンクの出力リンク(215)に再現(230)することを、さらに備える請求項8または請求項9に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公表番号】特表2008−541587(P2008−541587A)
【公表日】平成20年11月20日(2008.11.20)
【国際特許分類】
【出願番号】特願2008−510522(P2008−510522)
【出願日】平成18年5月12日(2006.5.12)
【国際出願番号】PCT/EP2006/005329
【国際公開番号】WO2006/120040
【国際公開日】平成18年11月16日(2006.11.16)
【出願人】(505039723)
【Fターム(参考)】