(57)【特許請求の範囲】
【請求項１】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットからコピーされたミラーパケットを送信する複数のミラーポートから構成されるミラーポートグループを指定するミラーポートグループ指定部と、
前記ミラーパケット毎に、前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部とを備え、
前記ミラーポート選択部は、受信パケットまたは送信パケットの到着順序に基づくラウンドロビンのアルゴリズムによって、ミラーポートを選択し、
前記ミラーポート選択部で選択されたミラーポートから前記ミラーパケットを送信することを特徴とするパケット中継装置。
【請求項２】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットからコピーされたミラーパケットを送信する複数のミラーポートから構成されるミラーポートグループを指定するミラーポートグループ指定部と、
前記ミラーパケット毎に、前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部とを備え、
前記ミラーポート選択部は、前記ミラーポートグループを構成する複数のミラーポート毎に送信されたミラ−パケットのビットレートを監視し、前記ビットレートが予め定められたビットレートに達しないミラーポートを選択し、
前記ミラーポート選択部で選択されたミラーポートから前記ミラーパケットを送信することを特徴とするパケット中継装置。
【請求項３】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットからコピーされたミラーパケットを送信する複数のミラーポートから構成されるミラーポートグループを指定するミラーポートグループ指定部と、
前記ミラーパケット毎に、前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部とを備え、
前記ミラーポート選択部は、前記ミラーポートグループを構成する複数のミラーポート毎に送信されたミラ−パケットのパケットレートを監視し、前記パケットレートが予め定められたパケットレートに達しないミラーポートを選択し、
前記ミラーポート選択部で選択されたミラーポートから前記ミラーパケットを送信することを特徴とするパケット中継装置。
【請求項４】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットのヘッダ情報および／または統計情報をデータとして備える統計パケットを送信する複数のアナライザポートから構成されるアナライザポートグループを指定するアナライザポートグループ指定部と、
前記統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部とを備え、
前記アナライザポート選択部は、受信パケットまたは送信パケットの到着順序に基づくラウンドロビンのアルゴリズムによって、アナライザポートを選択し、
前記アナライザポート選択部で選択されたアナライザポートから前記統計パケットを送信することを特徴とするパケット中継装置。
【請求項５】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットのヘッダ情報および／または統計情報をデータとして備える統計パケットを送信する複数のアナライザポートから構成されるアナライザポートグループを指定するアナライザポートグループ指定部と、
前記統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部とを備え、
前記アナライザポート選択部は、前記アナライザポートグループを構成する複数のアナライザポート毎に送信された統計パケットのビットレートを監視し、前記ビットレートが予め定められたビットレートに達しないアナライザポートを選択し、
前記アナライザポート選択部で選択されたアナライザポートから前記統計パケットを送信することを特徴とするパケット中継装置。
【請求項６】
複数の入力回線と複数の出力回線とに接続され、前記入力回線の一つから受信したパケットをヘッダ情報によって特定される前記出力回線の一つから送信するパケット中継装置において、
入力フローまたは出力フロー毎に、受信パケットまたは送信パケットのヘッダ情報および／または統計情報をデータとして備える統計パケットを送信する複数のアナライザポートから構成されるアナライザポートグループを指定するアナライザポートグループ指定部と、
前記統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部とを備え、
前記アナライザポート選択部は、前記アナライザポートグループを構成する複数のアナライザポート毎に送信された統計パケットのパケットレートを監視し、前記統計パケットのパケットレートが予め定められたパケットレートに達しないアナライザポートを選択し、
前記アナライザポート選択部で選択されたアナライザポートから前記統計パケットを送信することを特徴とするパケット中継装置。
【請求項７】
請求項１ないし請求項３のいずれか一つに記載のパケット中継装置の前記ミラーポートグループに属する複数のミラーポートに、ミラーパケットを解析するアナライザを接続することを特徴とするトラフィックモニタシステム。
【請求項８】
請求項４ないし請求項６のいずれか一つに記載のパケット中継装置の前記アナライザポートグループに属する複数のアナライザポートに、統計パケットを解析するアナライザを接続することを特徴とするトラフィックモニタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットヘッダから収集した統計情報またはパケットからコピーされたミラーパケットを、通信状態を解析するためのアナライザに送信するパケット中継装置およびトラフィックモニタシステムに関する。
【背景技術】
【０００２】
インターネットでは、従来のベストエフォート型データ通信だけでなく、音声・動画や基幹業務のトランザクションデータなどの通信品質保証が必要なデータも通信されるようになった。また、ＡＤＳＬ（Asymmetric  Digital Subscriber Line）、ＦＴＴＨ（Fiber To The Home）等によるアクセス回線のブロードバンド化に伴い、通信されるデータ量も増大している。そして、社会基盤としてのインターネットの重要性が高まるにつれ、インターネット上の通信サービスの品質低下・停止をもたらずＤｏＳ（Denial of Service）攻撃やＰ２Ｐ（peer to peer）トラフィックによるネットワークの帯域占有などが大きな社会問題となっている。
【０００３】
このような背景から、キャリア、ＩＳＰ（Internet Service Provider）などの通信サービス事業者は、ネットワーク上での通信状態を把握するために、通信データ量やパケットのヘッダ情報をはじめとする統計情報の収集や、通信中のパケットからコピーされたミラーリングパケットを解析用のアナライザに送信するミラーリングなどのトラフィックモニタ機能を必要としている。
【０００４】
ネットワーク上での通信状態を把握する目的としては、例えば、通信品質保証サービス提供時の品質保証状況の確認がある。また、限られたネットワーク資源でデータ量の増大に対応するため、ネットワーク資源を有効に活用するトラフィック・エンジニアリングに反映するトラフィック情報の収集がある。また、ＤｏＳ攻撃の検出・分析、Ｐ２Ｐトラフィックによるネットワークの帯域占有の検出・分析がある。さらに、顧客の需要を予測してネットワーク資源を計画的に準備しておき、帯域や通信サービスへのユーザ要求に対して迅速にネットワーク資源を提供するプロビジョニングや、課金などがある。
【０００５】
これらを実現するため、キャリア、ＩＳＰで用いられるルータ・スイッチ等のパケット中継装置には、非特許文献１に記載されたｓＦｌｏｗ、非特許文献２に記載されたＮｅｔＦｌｏｗ等の統計機能や、非特許文献３に記載されたパケットを複製して解析するためのポートミラーリング機能が備わっている。
【０００６】
いずれのトラフィックモニタ機能を用いる場合でも、パケット中継装置の回線の一つには通信状態を解析するためのアナライザが接続される。パケット中継装置では、パケットヘッダから収集した統計情報をデータとして含む統計パケットまたはパケットから複製したミラーパケットを、トラフィック解析用のアナライザに送信して、トラフィックの解析や監視を行う。
【０００７】
ｓＦｌｏｗの場合には、パケット中継装置において、入力パケットの一部をパケット中継装置の運用管理者が設定したサンプリングレートでサンプリングし、サンプリング対象とされたパケットのヘッダ情報とインタフェース毎の統計情報を収集し、このヘッダ情報と統計情報とをデータとして備えるｓＦｌｏｗ統計パケットを生成し、生成されたｓＦｌｏｗ統計パケットをアナライザへ送信する。
【０００８】
ＮｅｔＦｌｏｗの場合には、パケット中継装置において、入力パケットの送信元端末や宛先端末、アプリケーション、品質レベルなどにより分類されるフロー毎のパケットのヘッダ情報とフロー毎の統計情報を収集し、このヘッダ情報と統計情報とをデータとして備えるＮｅｔＦｌｏｗ統計パケットを生成し、生成されたＮｅｔＦｌｏｗ統計パケットをアナライザへ送信する。
【０００９】
以下、ミラーパケットの複製元パケットまたはｓＦｌｏｗ、ＮｅｔＦｌｏｗの統計収集対象パケットが流れる監視対象となる回線または論理的なインタフェースをモニタポートと呼ぶ。ｓＦｌｏｗ統計パケットまたはＮｅｔＦｌｏｗ統計パケットを送信する出力回線をアナライザポートと呼ぶ。また、ミラーパケットを送信する出力回線をミラーポートと呼ぶ。
【００１０】
非特許文献４は、日本のインターネットトラフィックが指数関数的に延びていることを示している。非特許文献５のアブストラクトには、ＤｏＳ攻撃には、大きく分けてｌｏｇｉｃ攻撃とｆｌｏｏｄｉｎｇ攻撃があることが、解説されている。非特許文献６には、負荷分散技術であるマルチパスによるロードバランスを記載している。非特許文献７は、帯域監視アルゴリズムとしてのリーキーバケット（漏れのあるバケツ）アルゴリズムが記載されている。
【００１１】
特許文献１は、サンプルパケットをコレクタ装置（本明細書におけるアナライザ）に転送する通信統計処理装置が記載されている。特許文献２も、サンプルしたパケットを分析装置（本明細書におけるアナライザ）に転送するパケット通信装置を開示している。特許文献３には、ＣＡＭ（Content Addressable Memory）と呼ばれる、データを入力すると入力データに一致するエントリの含まれるアドレスを出力する高速な検索専用のデバイスを用いたフロー検出装置の開示がある。
【００１２】
まず、従来のパケット中継装置でミラーリングする場合のシステム構成を図１および図２を参照して説明する。ここで、図１および図２はミラーリングシステムのハードウェアブロック図である。図１において、パケット中継装置（Ｓ０）１０１は、入力回線１０２からパケットＰ０、Ｐ１、Ｐ２、Ｐ３を受信し、出力回線１０３からこのパケットＰ０、Ｐ１、Ｐ２、Ｐ３を送信する。
【００１３】
入力回線１０２から受信したパケットをミラーリングする場合、ミラーリングシステムは、入力回線１０２をモニタポートとして設定し、ミラーポート１１０を接続する。ミラーリングシステムは、ミラーポート１１０にはミラーパケットを解析するためのアナライザ（Ａ０）１２０を接続する。パケット中継装置（Ｓ０）１０１は、モニタポート１０２から受信したパケットＰ０、Ｐ１、Ｐ２、Ｐ３をコピーしたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を生成し、このミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３をミラーポート１１０から送信する。ミラーポート１１０から送信されたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３は、ミラーポート１１０に接続されたアナライザ１２０に入力される。アナライザ１２０は、パケットのヘッダ情報や帯域情報が解析される。
【００１４】
図２を参照して、従来のパケット中継装置で、ミラーポートを複数に拡張する場合のシステム構成を説明する。図２において、パケット中継装置（Ｓ０）１０１は、図１のミラーポート１１０に加え、ミラーポート１１１、ミラーポート１１２、ミラーポート１１３を接続する。ミラーリングシステムは、ミラーポート１１０にはミラーパケットを解析するためのアナライザ（Ａ０）１２０を接続し、ミラーポート１１１にはアナライザ（Ａ１）１２１を接続し、ミラーポート１１２にはアナライザ（Ａ２）１２２を接続し、ミラーポート１１３にはアナライザ（Ａ３）１２３を接続する。
【００１５】
パケット中継装置（Ｓ０）１０１は、ミラーポートのポート数分のミラーパケットを生成し、ミラーポート１１０からミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を送信し、ミラーポート１１１からもミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を送信し、ミラーポート１１２からもミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を送信し、ミラーポート１１３からもミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を送信する。
【００１６】
ミラーポート１１０から送信されたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３は、ミラーポート１１０に接続されたアナライザ１２０に入力され、アナライザ１２０でパケットのヘッダ情報や帯域情報が解析される。同様に、ミラーポート１１１から送信されたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３は、ミラーポート１１１に接続されたアナライザ１２１に入力される。ミラーポート１１２から送信されたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３は、ミラーポート１１２に接続されたアナライザ１２２に入力される。ミラーポート１１３から送信されたミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３は、ミラーポート１１３に接続されたアナライザ１２３に入力される。アナライザ１２１〜１２３は、パケットのヘッダ情報や帯域情報が解析される。
【００１７】
次に、従来のパケット中継装置で統計情報を収集する場合のシステム構成を図３を参照して説明する。ここで、図３は統計情報収集システムのハードウェアブロック図である。図３において、従来のパケット中継装置（Ｓ０）１７０１は、入力回線１７０２からパケットＰ０、Ｐ１、Ｐ２、Ｐ３を受信し、出力回線１７０３からこのパケットＰ０、Ｐ１、Ｐ２、Ｐ３を送信する。入力回線１７０２から受信したパケットの統計情報を解析するため、統計情報収集システムは、アナライザポート１７１０に統計情報の集計・編集・表示をするためのアナライザ（Ａ０）１２０が接続されている。パケット中継装置（Ｓ０）１０１では、モニタポート１７０２から受信したパケットＰ０、Ｐ１、Ｐ２、Ｐ３のヘッダ情報と統計情報を含む統計パケットＳ０、Ｓ１、Ｓ２、Ｓ３を生成し、この統計パケットＳ０、Ｓ１、Ｓ２、Ｓ３をアナライザポート１７１０から送信する。アナライザポート１７１０から送信された統計パケットＳ０、Ｓ１、Ｓ２、Ｓ３は、アナライザポート１７１０に接続されたアナライザ１７２０に入力し、アナライザ１７２０でパケットのヘッダ情報と統計情報が解析される。
【００１８】
ただし、アナライザの解析性能には限界があり、図３ではＳ０のみが解析可能で、後続のＳ１、Ｓ２、Ｓ３は解析対象から採りこぼされてしまう（×印）。この場合、パケット中継装置（Ｓ０）１７０１が備えるサンプリング機能を用いることで、入力回線１７０２から受信した全パケットＰ０、Ｐ１、Ｐ２、Ｐ３のうち一部のパケットをサンプルとした統計パケットのみをアナライザポート１７１０から送信することができる。図３の場合であれば、Ｐ０をサンプルとする統計パケットＳ０のみをアナライザポート１７１０から送信することにより、アナライザ１７２０に対する統計パケットの負荷をアナライザ１７２０の性能限界以内に抑え、統計パケットの採りこぼしを防ぐことができる。しかし、入力回線１７０２から受信した全パケットＰ０、Ｐ１、Ｐ２、Ｐ３のうち一部のパケットの統計情報しか収集できないので、統計の精度は低下してしまう。
【００１９】
また、特定の送信元ＩＰアドレス、宛先ＩＰアドレス、Ｌ４プロトコル、送信元ポート、宛先ポートをもつパケットから構成されるフローのみを統計情報の収集対象とすることで、アナライザに対する統計パケットの負荷を抑えることもできる。図３の場合、Ｐ０、Ｐ１、Ｐ２、Ｐ３が互いに異なるフローに属するパケットであるものとしよう。ここで、統計情報収集システムは、Ｐ０が属するフローのみを統計情報の採集対象としても、アナライザ１７２０に対する統計パケットの負荷をアナライザ１７２０の性能限界以内に抑え、統計パケットの採りこぼしを防ぐことができる。しかし、入力回線１７０２から受信した全フローに属するパケットＰ０、Ｐ１、Ｐ２、Ｐ３のうち一部のフローに属するパケットの統計情報しか収集できないので、フロー全体の統計情報を得ることはできず、統計情報の採集対象外のフローが異常な挙動を示しても、これを検出して解析することはできない。
【００２０】
ビットレートの帯域監視アルゴリズムを図４を参照して説明する。ここで、図４はビットレートの帯域監視アルゴリズムを説明するフローチャートである。また、帯域監視アルゴリズムとして、リーキーバケットアルゴリズムを説明する。
【００２１】
リーキーバケットアルゴリズムは、ある深さを持った孔の空いた漏れバケツのモデルで、バケツに水が入っている間は監視帯域（孔の大きさ）で水は漏れ続け、パケット入力時にはこのパケットのバイト長分の水が注ぎ込まれる。パケットの到着揺らぎを許容するためにバケツに深さを持ち、バケツが溢れないうちは入力パケットは順守、溢れると違反と判定される。詳細には、図４のフローチャートに従う。
【００２２】
図４において、フローは、パケット中継装置にパケットが入力されることにより、開始される。ここで、ＴＮＯＷ：現時刻、ＴＬＳＴ：前回のパケット入力時刻、Ｒ：監視帯域（ビットレート／パケットレート）、ＣＮＴ：バケツ水量、ＴＨＲ：バケツ閾値、ＬＥＮ：パケットのフレーム長である。パケット中継装置は、前回パケット入力時刻からの経過時間ΔＴを計算する（Ｓ１４０１）。パケット中継装置は、ΔＴの間にバケツからもれた水量（ΔＤＥＣ＝ΔＴ×Ｒ）を計算する（Ｓ１４０２）。パケット中継装置は、現在バケツに水が残っているか判定する（Ｓ１４０３）。ＹＥＳのとき、パケット中継装置は、現在のバケツ水量（ＮＯＷＣＮＴ）を計算し（Ｓ１４０４）、ＮＯＷＣＮＴが、バケツ閾値を超過しているか判定する（Ｓ１４０６）。
【００２３】
ステップ１４０３でＮＯのとき、パケット中継装置は、ＮＯＷＣＮＴ＝０として（Ｓ１４０５）、ステップ１４０６に遷移する。ステップ１４０６でＹＥＳのとき、帯域順守なので、パケット中継装置は、入力パケットのフレーム長相当の水をバケツに追加して（Ｓ１４０８）、バケツ内水量を更新する（Ｓ１４１１）。ステップ１４０６でＮＯのとき、帯域違反なので、パケット中継装置は、入力パケットを廃棄して、追加後を意味するＣＮＴ２にＮＯＷＣＮＴをセットして（Ｓ１４１０）、ステップ１４１１に遷移する。ステップ１４１１でバケツ内水量を更新したあと、パケット中継装置は、ＴＬＳＴを更新して（Ｓ１４１２）、終了する。
【００２４】
【特許文献１】特開２００６−００５４０２号公報
【特許文献２】特開２００７−１８４７９９号公報
【特許文献３】特開２００３−３０４２７８号公報
【非特許文献１】RFC3176 “InMon Corporation's sFlow: A Method for Monitoring Traffic in Switched and Routed Networks"
【非特許文献２】RFC3954 “Cisco Systems NetFlow Services Export Version 9"
【非特許文献３】ＡＸ７８００Ｓ、ＡＸ５４００Ｓソフトウェアマニュアル解説書Ｖｏｌ．２  １２．ポートミラーリング、[online]、アラクサラネットワークス、[平成２０年３月４日検索]、インターネット＜URL：http://www.alaxala.com/jp/support/manual/AX7800S/HTML/10_6/APGUIDE2/0179.HTM＞
【非特許文献４】総務省、”我が国のインターネットにおけるトラヒック総量の把握”、[online]、平成１９年８月２２日、総務省総合通信基盤局電子通信事業部データ通信課、[平成２０年３月４日検索]、インターネット＜URL：http://www.soumu.go.jp/s-news/2007/pdf/070822_2_bt1.pdf＞
【非特許文献５】Ryo Kaizaki, et al. "Detection of Denial of Service attacks using AGURI", ICT2002, June 2002.
【非特許文献６】ＡＸ７８００Ｒソフトウェアマニュアル解説書Ｖｏｌ．１  ７．７ロードバランス、[online]、アラクサラネットワークス、[平成２０年３月４日検索]、インターネット＜URL：http://www.alaxala.com/jp/support/manual/AX7800R/HTML/10_6/APGUIDE/0093.HTM＞
【非特許文献７】The ATM Forum Technical Committee Traffic Management Specification Version 4.1 Normative Annex B: Traffic Contract Related Algorithms and Procedures
【発明の開示】
【発明が解決しようとする課題】
【００２５】
インターネットトラフィックの関数的な増加により、パケット中継装置が収容しなければならないトラフィック量は増大しつつあり、パケット中継装置の収容回線は今後とも高速化すると見込まれる。このトラフィック量の増加率に関しては、半年〜１年で２倍程度というギルダーの法則が経験則として知られているのに対し、アナライザの性能はトラフィック量の増加はＣＰＵ性能の向上に依存するため、ムーアの法則という経験則に従うとすれば１年半程度で倍という程度である。実際、ネットワークのバックボーンでは１０Ｇｂｐｓ、４０Ｇｂｐｓの高速回線が用いられ、さらに１００Ｇｂｐｓの高速回線も実用化の検討が進められているのに対し、アナライザの性能は１Ｇｂｐｓ程度に留まっている。このように、アナライザの性能向上は回線の高速化に追いつかないと見込まれ、この性能差は今後ますます拡大すると考えられる。すると、従来のトラフィックモニタ機能では、以下のような課題が生じることとなる。
【００２６】
ｓＦｌｏｗの場合には、サンプリングレートをアナライザの性能に合わせて設定することで、解析対象となるトラフィック量がアナライザの解析能力を超えてしまうことを回避している。しかし、ネットワークのトラフィック量の増加に対しアナライザの性能向上が追いつかない場合、解析対象となるトラフィック量がアナライザの解析能力を超えてしまうことを回避するにはサンプリングレートを低く変更せざるを得ない。従って、ネットワークのトラフィック量に対して解析対象とできるトラフィック量の比率が低下するので、解析の統計精度が低下してしまう課題がある。
【００２７】
ＮｅｔＦｌｏｗの場合には、フロー毎の統計情報を収集しアナライザへ送信するが、収集できるフロー数には装置毎に制限があるほか、アナライザの性能でフロー数が制限される場合もある。従って、ネットワークのトラフィック量が増大してフロー数が増加すると、ネットワークを流れるフロー数に対して解析対象とできるフロー数の比率が低下してしまう課題がある。例えば、フロー毎の通信品質を確認するには、フロー毎のパケットの全数調査が必要となるのでｓＦｌｏｗよりもＮｅｔＦｌｏｗが適しているが、全フローのうちで通信品質を確認できるフロー数がアナライザの性能によって制限されてしまうという課題がある。
【００２８】
ポートミラーリングの場合には、モニタポートが高速回線である場合、アナライザの解析能力を超える分のミラーパケットは解析することができないという課題がある。
【００２９】
例えば、ポートミラーリングでＤｏＳ攻撃の解析を行う場合で説明する。ＤｏＳ攻撃には、大きく分けてｌｏｇｉｃ攻撃とｆｌｏｏｄｉｎｇ攻撃がある。ｌｏｇｉｃ攻撃とは、システムのセキュリティホールを利用してサーバが提供する通信サービスの品質低下、停止を引き起こす攻撃の総称であり、これまでに知られている例として、Ｌａｎｄ（送信元と宛先のＩＰアドレスが同一であるＳＹＮパケットによる攻撃）、Ｔｉｎｙ  Ｆｒａｇｍｅｎｔ（ＴＣＰヘッダをフラグメントさせ、第一フラグメントパケットがＴＣＰフラグを含まないようにすることでフィルタを通過させてしまう攻撃）などが知られている。ｆｌｏｏｄｉｎｇ攻撃とは、攻撃者がサーバに大量のパケットを送付することによって正当なクライアントがサーバに接続しにくい状態としたり、サーバの計算資源を占有することによって通信サービスを提供不能としたりする攻撃の総称である。例としては、ＳＹＮ  ｆｌｏｏｄｉｎｇ（ＳＹＮパケットを大量に送付することで、攻撃対象サーバのメモリ資源を枯渇させる攻撃）、Ｓｍｕｒｆ（送信元ＩＰアドレスを攻撃対象サーバに詐称し、宛先ＩＰアドレスをブロードキャストとしたｐｉｎｇ（ICMP echo request）パケットを送信することで、攻撃対象サーバに大量のICMP echo replyが送りつけられる攻撃）などが知られている。
【００３０】
ｆｌｏｏｄｉｎｇ攻撃の場合、大量の攻撃パケットが流れるので、攻撃パケットからコピーされたミラーパケットの一部がアナライザの解析能力不足によって解析できなかったとしても、全体の傾向を把握して解析することは可能である。しかしｌｏｇｉｃ攻撃の場合、攻撃パケットは１個でも攻撃として成立するので、当該パケットのミラーパケットがアナライザの解析能力不足によって解析できなければ、ｌｏｇｉｃ攻撃の解析は困難となる。
【００３１】
同様に、Ｐ２Ｐによる流出ファイルやウイルスの拡散を調査する場合、流出ファイルやウイルスを含むパケットの一部がアナライザの解析能力不足によって解析できなかったとしても、流出ファイルやウイルスが拡散していく様子を統計的に把握することは可能である。しかし、最初にファイルを流出させたパケットやウイルスを仕掛けたパケットのような流出・拡散元パケットを特定して解析するには、パケットのミラーパケットが解析対象から漏れないことが必要である。アナライザの解析能力不足によって当該パケットのミラーパケットが解析対象から漏れてしまうと、流出・拡散元パケットを特定して解析することは困難となる。
【課題を解決するための手段】
【００３２】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することができる。
【００３３】
［適用例１］
適用例１のパケット中継装置は、複数の入力回線と出力回線に接続され、各入力回線から受信したパケットをヘッダ情報によって特定されるいずれかの出力回線から送信するパケット中継装置において、入力回線、出力回線、または受信パケットのヘッダ情報によって識別される入力フローもしくは送信パケットのヘッダ情報によって識別される出力フロー毎に、受信パケットまたは送信パケットからコピーされたミラーパケットを送信する複数のミラーポートから構成されるミラーポートグループを指定するミラーポートグループ指定部と、ミラーパケット毎に前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部を備え、ミラーポート選択部で選択されたミラーポートからミラーパケットを送信する。
【００３４】
適用例１のパケット中継装置を用いると、モニタポートが高速回線となった場合でも、複数のミラーポートにアナライザを接続してミラーパケットの負荷を分散することで、アナライザ単体の解析能力を超える分のミラーパケットは解析することができないというポートミラーの課題を解決できる。
【００３５】
［適用例２］
適用例２のパケット中継装置は、複数の入力回線と出力回線に接続され、各入力回線から受信したパケットをヘッダ情報によって特定されるいずれかの出力回線から送信するパケット中継装置において、入力回線、出力回線、論理的な入力インタフェース、論理的な出力インタフェースまたは受信パケットのヘッダ情報の一部または全部の値によって識別される入力フローまたは送信パケットのヘッダ情報の一部または全部の値によって識別される出力フロー毎に、受信パケットまたは送信パケットのヘッダ情報および／または統計情報をデータとして備える統計パケットを生成して、統計パケットを送信する複数のアナライザポートから構成されるアナライザポートグループを指定するアナライザポートグループ指定部と、統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部を備え、アナライザポート選択部で選択されたアナライザポートから統計パケットを送信する。
【００３６】
適用例２のパケット中継装置を用いると、モニタポートが高速回線となった場合でも、複数のアナライザポートにアナライザを接続して統計パケットの負荷を分散することで、アナライザ単体の解析能力を超える分の統計パケットは解析することができないというｓＦｌｏｗとＮｅｔＦｌｏｗの課題を解決できる。
【００３７】
ｓＦｌｏｗの場合には、先述の通り、解析対象となるトラフィック量がアナライザの解析能力を超えてしまうことを回避するにはサンプリングレートを低く変更せざるを得ず、ネットワークのトラフィック量に対して解析対象とできるトラフィック量の比率が低下する。この結果、解析の統計精度が低下してしまう課題がある。ここで、適用例２のパケット中継装置を用いると、統計パケットの負荷が複数のアナライザに分散されるので、サンプリングレートを低く変更せずともアナライザポートとアナライザ台数を増やせば、アナライザ単体の解析能力を超過してしまうことを回避できる。従って、解析の統計精度が低下してしまう課題を解決できる。
【００３８】
ＮｅｔＦｌｏｗの場合には、先述の通り、アナライザの性能でフロー数が制限される場合には、ネットワークのトラフィック量が増大してフロー数が増加すると、ネットワークを流れるフロー数に対して解析対象とできるフロー数の比率が低下してしまう課題がある。ここで、適用例２のパケット中継装置を用いると、フロー毎の統計パケットの負荷を複数のアナライザで分散して統計の収集・解析ができるので、アナライザポートとアナライザ台数を増やせば、解析対象とするフロー数の比率を低下させずに済む。
【００３９】
特許文献１では、サンプルパケットを「コレクタ装置」（本実施例における「アナライザ」相当）に転送する点が本発明と同様であるが、本発明の適用例１の特徴である「ミラーパケット毎に前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部」に相当する処理部に関する記載は無く、特許文献１の対象外となっている点が本発明と相違している。同様に、本発明の適用例２の特徴である「統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部」に相当する処理部に関する記載は無く、特許文献１の対象外となっている点が本発明と相違している。
【００４０】
次に、特許文献１の請求項１の条件「パケットフローを識別するためのフロー識別条件を定義した複数のフローエントリからなるフローテーブル」「フロー識別条件と対応して、統計対象とすべきパケットを限定するための統計制御情報を定義した少なくとも１つの統計制御エントリを含む統計制御テーブルを有し、」と本発明の請求項５の条件「受信パケットのヘッダ情報の一部または全部の値、または送信パケットのヘッダ情報の一部または全部の値を入力値、ミラーポートを識別する値を出力値とする関数に基づいた演算によりミラーポートを選択する」または請求項１０の条件「受信パケットのヘッダ情報の一部または全部の値、または送信パケットのヘッダ情報の一部または全部の値を入力値、アナライザポートを識別する値を出力値とする関数に基づいた演算によりアナライザポートを選択する」との相違について説明する。なお、特許文献１のフロー識別条件とは、本発明の「受信パケットまたは送信パケットのヘッダ情報の一部または全部の値」として指定する条件と同様の概念と考えられる。
【００４１】
特許文献１と本発明の構成上の相違として、特許文献１では、「フロー識別条件」から「統計対象とすべきパケットを限定」するのに対し、本発明の請求項５または請求項１０の条件では「フロー識別条件」から「ミラーポート」または「アナライザポート」を選択する点が異なっている。また効果の相違としては、特許文献１では統計対象とすべきパケットを限定するが、本発明ではモニタポートの負荷が高くなった場合でもモニタポートから受信または送信した全てのパケットのミラーリングが可能である、またはモニタポートから受信または送信した全てのパケットの統計を収集できる点が異なっている。本発明において「フロー識別条件」から「ミラーポート」または「アナライザポート」を選択する際の具体的な構成例は、実施例４と実施例８で説明する。
【００４２】
また、特許文献１の第１０図のように、フロー識別条件を定義した複数のフローエントリからなるフローテーブルによってフローを設定する方式では、フロー数が増加するとフローテーブルの容量がネックとなって収集できるフロー数に制限が生じてしまう。これに対し、本発明の請求項５または請求項１０のようにフロー識別条件となるヘッダ情報の値を関数に入力してミラーポートまたはアナライザポートを演算する方式の場合、関数を表現する一つの組み合わせ論理を所持すればよい。従って、追加のフローテーブルを必要としないので、収集できるフロー数が追加されたフローテーブルによって制限されないという効果をもつ点が異なる。
【００４３】
次に、特許文献２との相違について、説明する。特許文献２でも、サンプルしたパケットを分析装置（アナライザ相当）に転送する点は本発明と同様であるが、本発明の適用例１の特徴である「ミラーパケット毎に前記ミラーポートグループ指定部で指定された複数のミラーポートのうちいずれか一つのミラーポートを選択するミラーポート選択部」に相当する処理部に関する記載は無く、特許文献２の対象外となっている点が本発明と相違している。同様に、適用例２の特徴である「統計パケット毎に前記アナライザポートグループ指定部で指定された複数のアナライザポートのうちいずれか一つのアナライザポートを選択するアナライザポート選択部」に相当する処理部に関する記載は無く、特許文献２の対象外となっている点が本発明と相違している。
【００４４】
次に、特許文献２の請求項１の条件「ストリーム開始パケット内の情報に従ってパケットコピーを行う条件を生成する手段と、前記サンプリング対象ストリームの条件に適合するパケットをコピーして前記複数のネットワークインタフェースのいずれかから出力する」と本発明の請求項５の条件「受信パケットまたは送信パケットのヘッダ情報の一部または全部の値を入力値、ミラーポートを識別する値を出力値とする関数に基づいた演算によりミラーポートを選択する」または請求項１０の条件「受信パケットまたは送信パケットのヘッダ情報の一部または全部の値を入力値、アナライザポートを識別する値を出力値とする関数に基づいた演算によりアナライザポートを選択する」との相違について説明する。特許文献２では、「パケット内の情報」が「フロー識別条件」に相当すると考えられる。
【００４５】
特許文献２と本発明の構成上の相違として、特許文献２では、「フロー識別条件」をサンプリング対象ストリームの条件とサンプリング確率を指定するための手段とするのに対し、本発明の請求項５または請求項１０の条件では「ミラーポート」または「アナライザポート」を選択する手段とする点が異なっている。また効果の相違として、特許文献２では統計収集のためにサンプリングを実施することが前提となっており、モニタポートの負荷が高くなった場合には統計パケットの負荷がアナライザの性能を超過しないように、サンプリング対象ストリームの条件をさらに厳しく制限するか、またはサンプリング確率を低くする必要がある。そのため、モニタポートの負荷が高くなると、統計を収集できるパケットの割合は減少してしまう。これに対し、本発明ではサンプリングを前提としておらず、モニタポートの負荷が高くなった場合には複数のアナライザを複数のアナライザポートに接続して分散的に統計収集することにより、モニタポートから受信または送信した全てのパケットの統計を収集できる点が異なっている。
【発明の効果】
【００４６】
本発明によれば、ネットワーク上での通信状態を確実に把握するパケット中継装置およびトラフィックモニタシステムを提供できる。
【発明を実施するための最良の形態】
【００４７】
以下、本発明の実施の形態について、実施例を用い図面を参照しながら説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
【実施例１】
【００４８】
実施例１について、図５ないし図１２を参照して、説明する。ここで、図５はミラーリングシステム（トラフィックモニタシステム）のハードウェアブロック図である。図６はパケット中継装置のブロック図である。図７はパケット受信回路から送信されるヘッダ情報を説明する図である。図８はミラー判定部の機能ブロック図である。図９はミラーポートテーブルの構成を説明する図である。図１０はミラーリング判定結果の構成を説明する図である。図１１はミラーポート選択部の機能ブロック図である。図１２はカウンタテーブルの構成を説明する図である。  図５において、パケット中継装置（Ｓ１）３０１は、図２のようにミラーポートのポート数分のミラーパケットを生成するのではなく、ミラーパケットは１パケットずつ生成する。また、パケット中継装置（Ｓ１）３０１は、図２のように全てのミラーパケットＣ０、Ｃ１、Ｃ２、Ｃ３を全てのミラーポート１１０〜１１３から送信するのではなく、ミラーパケット毎に送信するミラーポートを一つ選択する。パケット中継装置（Ｓ１）３０１は、ミラーパケットＣ０をミラーポート１１０から送信し、ミラーポート１１０に接続されたアナライザ１２０に入力し、アナライザ１２０でパケットのヘッダ情報や帯域情報が解析される。同様に、ミラーパケットＣ１は、ミラーポート１１１から送信され、ミラーポート１１１に接続されたアナライザ１２１に入力し、アナライザ１２１でパケットのヘッダ情報や帯域情報が解析される。ミラーパケットＣ２は、ミラーポート１１２から送信され、ミラーポート１１２に接続されたアナライザ１２２に入力し、アナライザ１２２でパケットのヘッダ情報や帯域情報が解析される。ミラーパケットＣ３は、ミラーポート１１３から送信され、ミラーポート１１３に接続されたアナライザ１２３に入力し、アナライザ１２３でパケットのヘッダ情報や帯域情報が解析される。
【００４９】
このようにミラーパケットを複数のアナライザに分散するように送信することで、全てのミラーパケットをミラーリング対象としたまま、アナライザへの負荷を下げることができる。
【００５０】
なお、負荷分散の従来技術としてマルチパスによるロードバランス（非特許文献６）が知られている。マルチパスと本実施例は、以下の相違点がある。まず、マルチパスは通常の通信パケットの負荷分散を対象とするのに対し、本実施例は、ミラーパケットの負荷分散を対象とする点が異なる。次に、マルチパスでは通信パケットを負荷分散するので、同一フロー、即ち同一のＩＰアドレス、ポート番号をもつパケットの間で順序逆転が生じないようにする必要がある。従って、同一フローは同一の出力回線から送信しなければならないという制限が生じる。これに対し本実施例では、ミラーパケットの負荷分散を対象とするのでこの順序逆転を防止するための制限は不要となり、同一フローであっても異なるミラーポートから送信することも可能である点が異なる。ただしこの場合、フロー毎にミラーパケットを解析するには、複数のアナライザに分散的に蓄積された同一フローのミラーパケットの情報を、後で集約してから解析する必要がある。
【００５１】
次に、パケット中継装置３０１の構成を図６を参照して、説明する。なお、パケット中継装置３０１の構成は、パケットをルーティング転送するルータまたはパケットをスイッチング転送するスイッチに適用できる。
【００５２】
図６において、パケット中継装置３０１は、パケットが入力する入力回線１０２と、パケットの受信処理を行うパケット受信回路４１０と、パケットに関する受信側での判定処理を行うパケット検索部４２０と、パケットを出力回線番号に基づきスイッチングするパケット中継処理手段４３０と、パケットに関する送信側での判定処理を行うパケット検索部４４０と、スイッチングされたパケットが蓄積される送信バッファ４５０からパケットを読み出してパケットの送信処理を行うパケット送信回路４６０と、パケットを出力する出力回線１０３と、ミラーパケットを出力するミラーポート１１０とを備える。パケット受信回路４１０では、入力回線番号６０１とパケットのフレーム長ＬＥＮ６０２を判定し、パケット受信回路４１０から送信されるヘッダ情報６００（図７を参照して後述する）に付加する。
【００５３】
パケット検索部４２０は、出力回線番号を判定するための経路検索部４２２と、ミラーリングに関わる判定を行うミラー判定部４２１とを備える。パケット検索部４２０で経路検索とミラー判定を行うため、パケット検索部４２０には、パケット受信回路４１０からヘッダ情報と入力回線情報が送信される。なお、出力回線毎にミラーリングを行う際は、送信側のパケット検索部４４０に備わるミラー判定部（図示の簡便のため省略）にてミラーリングに関わる判定を行うこともできる。
【００５４】
経路検索部４２２で得られた出力回線番号と、ミラー判定部４２１で得られたミラーリング指示、ミラーポート番号のミラーリング判定結果は、パケット検索部４２０における検索結果情報としてパケット受信回路４１０に送信される。パケット受信回路４１０に送信された検索結果情報は、パケット本体の情報と合わせてパケット中継処理手段４３０を経由してパケット送信回路４６０に送信される。パケット送信回路４６０において、コピー元のパケット本体は出力回線１０３に接続された送信バッファ４５０−１に蓄積され、出力回線１０３から送信される。
【００５５】
ミラーリング判定結果としてミラーリング指示がされたパケットに対しては、パケット送信回路４６０においてパケットのコピーが生成される。生成されたパケットのコピーは、ミラーパケットとしてミラーポート１１０に接続された送信バッファ４５０−２に蓄積され、ミラーポート１１０から送信される。
【００５６】
パケット検索部４２０に対するユーザ設定を可能とするため、パケット中継装置３０１には管理端末４８０が接続されており、管理端末４８０からの設定情報は一時的にレジスタ４７０に蓄積される。レジスタ４７０から読み出された情報に従って、後で示される各種のテーブル制御部がテーブル設定を行う。
【００５７】
図７を参照して、パケット受信回路から送信されるヘッダ情報を説明する。図７において、ヘッダ情報６００は、入力回線番号６０１と、ＬＥＮ６０２と、Ｌ２（layer 2）ヘッダ６１０と、Ｌ３（layer 3）ヘッダ６２０と、Ｌ４（layer 4）ヘッダ６３０とから構成される。さらに、Ｌ２ヘッダ６１０は、宛先ＭＡＣアドレス６１１と、送信元ＭＡＣアドレス６１２と、イーサタイプ６１３と、ＶＬＡＮタグ６１４とから構成される。Ｌ３ヘッダ６２０は、ここではＩＰｖ４について説明し、ＩＰバァージョン６２１と、ＴＯＳ（Type of Service）６２２と、Ｌ４プロトコル６２３と、送信元ＩＰアドレス６２４と、宛先ＩＰアドレス６２５とから構成される。Ｌ４ヘッダ６３０は、送信元ポート６３１と、宛先ポート６３２とから構成される。
【００５８】
ヘッダ情報６００は、パケット中継装置３０１が受信したパケットヘッダ情報と、パケットヘッダには含まれない情報とから構成される。前者は、Ｌ２ヘッダ部６１０と、Ｌ３ヘッダ部（ＩＰｖ４時）６２０と、Ｌ４ヘッダ部６３０である。後者は、パケット受信回路４１０で判定された入力回線番号６０１と、パケットのフレーム長ＬＥＮ６０２である。
【００５９】
次に、パケット中継装置が備えるミラー判定部の構成について、図８を参照して、説明する。図８において、ミラー判定部４２１は、ヘッダ情報抽出部５０４と、モニタポート番号抽出部５００と、ミラーポートテーブル制御部５０１と、ミラーポートテーブル５０２と、ミラーポート選択部５０３とから構成される。ヘッダ情報抽出部５０４は、パケット受信回路４１０から送信されたヘッダ情報のうち、ミラーリングの判定に必要となるヘッダ情報を抽出する。ヘッダ情報抽出部５０４は、抽出したヘッダ情報をモニタポート抽出部５００とミラーポート選択部５０３に送信する。
【００６０】
さらにモニタポート番号抽出部５００は、ヘッダ情報から、入力回線番号６０１を抽出し、ミラーポートテーブル制御部５０１に送信する。ミラーポートテーブル制御部５０１は、レジスタ４７０から読み出された情報に従ってミラーポートテーブル５０２への設定を行う。ミラーポートテーブル制御部５０１は、入力回線番号６０１に基づいてミラーポートテーブル５０２を読み出すリードアドレスを生成し、ミラーポートテーブル５０２を読み出す。
【００６１】
ここで、図８の説明を中断して、ミラーポートテーブルを説明する。図９において、ミラーポート５０２は、モニタポート毎に定義された複数のミラーポートエントリ５０２−ｉ（ｉ＝０、１…ｎ）によって構成される。ミラーポートエントリ５０２−ｉには、モニタポート毎のミラーリングの要否を示すミラーリングＥＮ（enable）と、モニタポート毎のミラーポートグループに属する複数のミラーポート番号が設定されている。例えば、モニタポート０に対し定義されたミラーポートエントリ５０２−０では、モニタポート０でのミラーリングの要否を示すミラーリングＥＮ０と、ミラーポート０−０、ミラーポート０−１、ミラーポート０−２、ミラーポート０−３という４つのミラーポートが定義されている。
【００６２】
図８に戻って、ミラーポートテーブル制御部５０１は、ミラーポートテーブル５０２から読み出したミラーポートエントリ５０２−ｉの情報をミラーポート選択部５０３へ送信する。ミラーポート選択部５０３は、テーブル制御部５０１から送信されたミラーポートエントリ５０２−ｉに設定されているミラーリングＥＮがミラーリングを指示している場合には、複数のミラーポートから、ミラーパケットを送信する一つのミラーポートを動的に選択する。ミラーポートの選択方法については、追って説明する。ミラーポート選択部５０３は、ミラーポートを選択すると、ミラーリングＥＮによるミラーリング指示をミラーリング判定結果に反映する。
【００６３】
再び、図８の説明を中断して、ミラーリング判定結果を説明する。図１０において、ミラーリング判定結果７００は、ミラーリング指示フラグ７０１と、ミラーポート番号７０２とから構成される。ミラーリング指示フラグ７０１は、’１’のときにミラーリングを指示、’０’のときにミラーリングを指示しない。ミラーポート番号７０２は、ミラーリング指示フラグ７０１が、’１’のとき、ミラーポート番号を記載し、ミラーリング指示フラグ７０１が’０’のとき、無効である。
【００６４】
図８に戻って、ミラーポート選択部５０３は、選択された一つのミラーポート番号をミラーリング判定結果７００のミラーポート番号７０２としてパケット受信回路４１０に送信する。テーブル制御部５０１から送信されたミラーポートエントリ５０２−ｉに設定されているミラーリングＥＮがミラーリングを指示していない場合には、ミラーリング判定結果７００のミラーリング指示フラグを’０’としてパケット受信回路４１０に送信する。
【００６５】
ミラーポート選択部の構成を、図１１を参照して説明する。図１１において、実施例１では、ミラーポートの選択をパケットの到着順序に基づいたラウンドロビンのアルゴリズムに基づいて判定する。ミラーポート選択部５０３は、ミラーポート選択回路９０１と、カウンタテーブル制御部９０２と、カンタテーブル９０３で構成される。ミラー判定部４２１に、パケットが到着すると、まずモニタポート番号抽出部５００で抽出された入力回線番号６０１と、ミラーポートテーブル制御５０１で得られたミラーポートエントリ５０２−ｉの情報がミラーポート選択回路９０１に送信される。ミラーポート選択回路９０１は、このうち入力回線番号６０１をカウンタテーブル制御部９０２に送信する。カウンタテーブル制御部９０２は、レジスタ４７０から読み出された情報に従ってカウンタテーブル９０３への設定を行う。
【００６６】
ミラーポートエントリ５０２−ｉのミラーリングＥＮがミラーリングを指示していない場合には、ミラーリング判定結果７００のミラーリング指示フラグ７０１を’０’としてパケット受信回路４１０に送信する。このとき、ミラーポート番号７０２は無効となる。ミラーポートエントリ５０２−ｉのミラーリングＥＮがミラーリングを指示している場合には、カウンタテーブル制御部９０２では、入力回線番号６０１に基づいてカウンタテーブル９０３を読み出すリードアドレスを生成し、カウンタテーブル９０３を読み出す。
【００６７】
ここで、カウンタテーブルを図１２を参照して、説明する。図１２において、カンタテーブル９０３は、モニタポート毎のカウンタ９０３−ｉ（ｉ＝０〜ｎ）によって構成されている。カウンタの値は、ミラーポートエントリ５０２−ｉに定義された同一ミラーポートグループに属する複数のミラーポートの各々を一意に表現できる情報量をもつ必要がある。具体的には、ミラーポートエントリ５０２−ｉではミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３という４つのミラーポートが定義されているので、カウンタはミラーポートｉ−０に対応する’０’、ミラーポートｉ−１に対応する’１’、ミラーポートｉ−２に対応する’２’、ミラーポートｉ−３に対応する’３’をとる必要がある。そのため、カウンタは最低でも２ビットの情報量をもつ必要がある。
【００６８】
図１１に戻って、カウンタテーブル制御部９０２は、読み出されたカウンタ９０３−ｉをミラーポート選択回路９０１へ送信すると共に、読み出されたカウンタ９０３−ｉの値に１加算して、加算後のカウンタ９０３−ｉの値をカウンタテーブル９０３に書き込む。なお、読み出されたカウンタ９０３−ｉの値が最大値の’３’である場合には、’０’をカウンタ９０３−ｉの値としてカウンタテーブル９０３に書き込む。ミラーポート選択回路９０１は、カウンタテーブル制御部９０２から送信されたカウンタ９０３−ｉの値に応じたミラーポートを選択して、選択されたミラーポート番号をミラーリング判定結果７００のミラーポート番号７０２とし、ミラーリング指示フラグを’１’としてパケット受信回路４１０に送信する。
【００６９】
本実施例に拠れば、ミラーパケットを複数のアナライザに分散するように送信することで、全てのミラーパケットをミラーリング対象としたまま、アナライザへの負荷を下げることができる。
【実施例２】
【００７０】
実施例２を図１３ないし図１５を参照して説明する。ここで、図１３はミラーポート選択部の機能ブロック図である。図１４は帯域監視部の機能ブロック図である。図１５は帯域監視テーブルを説明する図である。
【００７１】
実施例２のパケット中継装置のブロック図は図６に示す通りであり、実施例１と同様である。図１３を参照して、実施例２でミラーポート選択部の構成を説明する。図１３において、実施例２では、同一ミラーポートグループに属する複数のミラーポート毎に送信されたミラ−パケットのビットレートを監視して、ミラーポート毎に送信されたミラ−パケットのビットレートがミラーポート毎に予め定められた最大ビットレートに達しないミラーポートを選択する。ここで、最大ビットレートは、アナライザの最大性能以下とする。
【００７２】
図１３において、ミラーポート選択部５０３Ａは、ミラーポート選択回路９０１と、帯域監視部１１０１とから、構成される。図８のミラー判定部４２１に、パケットが到着すると、まずモニタポート番号抽出部５００で抽出された入力回線番号６０１と、ミラーポートテーブル制御５０１で得られたミラーポートエントリ５０２−ｉの情報がミラーポート選択回路９０１に送信される。
【００７３】
ミラーポート選択回路９０１は、ミラーポートエントリ５０２−ｉのミラーリングＥＮがミラーリングを指示していないとき、ミラーリング判定結果７００のミラーリング指示フラグを’０’としてパケット受信回路４１０に送信する。このとき、ミラーポート番号７０２は無効となる。
【００７４】
ミラーポート選択回路９０１は、ミラーポートエントリ５０２−ｉのミラーリングＥＮがミラーリングを指示しているとき、ミラーポートエントリ５０２−ｉに定義された同一ミラーポートグループに属する複数のミラーポートを構成するミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３という４つのミラーポート番号を帯域監視部１１０１に送信する。帯域監視部１１０１は、ミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３各々において送信されたミラ−パケットのビットレートを監視して、ミラーポート毎に送信されたミラ−パケットのビットレートがミラーポート毎に予め定められた最大ビットレートに達しないミラーポートを選択する。
【００７５】
ミラーポート毎に送信されたミラ−パケットのビットレートがミラーポート毎に予め定められた最大ビットレートに達しないミラーポートが複数ある場合には、そのうち最も小さなミラーポート番号をもつミラーポートを選択するものとする。他にも、ミラーポート毎に送信されたミラ−パケットのビットレートが最も小さいミラーポートを選択することもできる。
【００７６】
図４の帯域監視アルゴリズムを実装した帯域監視部の構成について、図１４を参照して説明する。図１４において、帯域監視部１１０１は、現在水量判定部１２１０と、監視結果判定部１２２０と、帯域監視テーブル１２０２と、帯域監視テーブル制御部１２０１とから構成される。現在水量判定部１２１０は、さらにＣＮＴ保持部１２１１と、ＴＬＳＴ保持部１２１２と、Ｒ保持部１２１３と、タイマー１２１４と、現在水量演算回路１２１５とから構成される。また、監視結果判定部１２２０は、ＴＨＲ保持部１２２１と、ＬＥＮ保持部１２２２と、ＮＯＷＣＮＴ保持部１２２３と、監視結果判定回路１２２４と、ＣＮＴ２保持部１２２５と、ＴＬＳＴ保持部１２２６とから構成される。
【００７７】
帯域監視テーブル制御部１２０１は、帯域監視テーブル１２０２を制御する。ここで、図１５を参照して、帯域監視テーブルを説明する。図１５において、帯域監視テーブル１２０２は、ミラーポート毎の最大ビットレートＲｊ（ｊ＝０〜ｍ）と、バケツ閾値ＴＨＲｊと、バケツ水量ＣＮＴｊと、前回のパケット入力時刻ＴＬＳＴｊとが設定された複数の帯域監視エントリ１２０２−ｊ（ｊ＝０〜ｍ）から構成される。
【００７８】
なお、モニタポートから受信する全てのパケットをミラーリング対象とする場合には、ミラーポート毎の最大ビットレートＲ０〜Ｒｍの和はモニタポートの回線帯域以上とする。
【００７９】
図１４に戻って、パケットが到着すると、帯域監視テーブル制御部１２０１では、ミラーポート選択回路９０１から送信されたミラーポートｉ−０に基づいて帯域監視テーブル１２０２を読み出すリードアドレスを生成し、帯域監視テーブル１２０２を読み出す。同様に、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３に対しても、これらのポート番号に基づいて帯域監視テーブル１２０２を読み出すリードアドレスを生成し、帯域監視テーブル１２０２を読み出す。以下、ミラーポートｉ−０に対する帯域監視の処理を例に説明するが、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３に対しても同様の処理を実施する。４つのミラーポートに対する監視帯域結果に基づいてミラーポートを選択する処理は、４つのポートに対する帯域監視がなされた後にミラーポート選択回路９０１において実施される。帯域監視テーブル制御部１２０１では、レジスタ４７０から読み出された情報に従って帯域監視テーブル１２０２への設定を行うことができる。
【００８０】
帯域監視テーブル１２０２から読み出された帯域監視エントリ１２０２−ｊのＲｊは現在水量判定部１２１０のＲ保持部１２１３に、ＴＬＳＴｊはＴＬＳＴ保持部１２１２に、ＣＮＴｊはＣＮＴ保持部１２１１に蓄積される。これらの値と、現在時刻を示すタイマー１２１４の値に基づいて、図４のフローチャートにおける１４０１〜１４０５の演算、判定がなされ、その結果得られたＮＯＷＣＮＴが監視結果判定部１２２０のＮＯＷＣＮＴ保持部１２２３に蓄積される。次に、ミラー判定部４２１のヘッダ情報抽出部５０４から送信されるＬＥＮ６０２をＬＥＮ保持部１２２２に蓄積し、帯域監視テーブル１２０２から読み出された帯域監視エントリ１２０２−ｊのＴＨＲｊをＴＨＲ保持部１２２１に蓄積し、これらの値から図４のフローチャートにおける１４０６の帯域監視結果の判定が、監視結果判定回路１２２４においてなされる。帯域監視結果が帯域順守であったミラーポート番号はミラーポート選択回路９０１に送信される。
【００８１】
帯域監視結果が帯域順守であったミラーポート番号が一つであった場合には、当該ミラーポート番号をミラーリング判定結果７００のミラーポート番号７０２としてパケット受信回路４１０に送信する。帯域監視結果が帯域順守であったミラーポート番号が複数ある場合には、そのうち最小のミラーポート番号をミラーリング判定結果７００のミラーポート番号７０２としてパケット受信回路４１０に送信する。ミラーリング判定結果７００のミラーポート番号７０２に指定したミラーポート番号をミラーポート選択回路９０１から帯域監視部１１０１に送信し、当該ミラーポートの帯域監視エントリに対し図４のフローチャートにおける１４０８〜１４１２の演算を監視結果判定回路１２２４にて実施し、演算後のＣＮＴ２をＣＮＴ２保持部１２２５に、演算後のＴＬＳＴをＴＬＳＴ保持部１２２６に蓄積する。ＣＮＴ２保持部１２２５に蓄積されたＣＮＴ２とＴＬＳＴ保持部１２２６に蓄積されたＴＬＳＴは、帯域監視テーブル制御部１２０１に送信され、各々帯域監視テーブル１２０２の帯域監視エントリ１２０２−ｊのＣＮＴ、ＴＬＳＴのフィールド値として更新される。
【実施例３】
【００８２】
実施例３では、同一ミラーポートグループに属する複数のミラーポート毎に送信されたミラ−パケットのパケットレートを監視して、ミラーポート毎に送信されたミラ−パケットのパケットレートがミラーポート毎に予め定められた最大パケットレートに達しないミラーポートを選択する。
【００８３】
実施例３のパケット中継装置の構成は、図６に示す通りであり、実施例１と同様である。また、ミラーポート選択部の構成も、実施例２の図１３と同様である。
実施例３において、実施例２と異なる点は、次の通りである。（１）最大パケットレートは、アナライザの最大性能以下とする。（２）帯域監視部１１０１は、ミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３各々において送信されたミラ−パケットのパケットレートを監視して、ミラーポート毎に送信されたミラ−パケットのパケットレートがミラーポート毎に予め定められた最大パケットレートに達しないミラーポートを選択する。
【００８４】
パケットレートの帯域監視アルゴリズムのフローチャートは、実施例２においてパケットのフレーム長によらず固定的にＬＥＮ＝１とするケースに相当する。
図４の帯域監視アルゴリズムを実装した帯域監視部１１０１の構成も、実施例２の図１４と同様である。但し、帯域監視部１１０１は、ミラーポート毎の最大パケットレートＲｊ（ｊ＝０〜ｍ）とバケツ閾値ＴＨＲｊが設定された図１５に示す複数の帯域監視エントリ１２０２−ｊ（ｊ＝０〜ｍ）から構成される帯域監視テーブル１２０２を備える。なお、モニタポートから受信する全てのパケットをミラーリング対象とする場合には、ミラーポート毎の最大パケットレートＲ０〜Ｒｍの和はモニタポートの回線帯域以上とする。また、図１４において、ミラー判定部４２１のヘッダ情報抽出部５０４から送信されるＬＥＮ６０２は無視し、ＬＥＮ＝１という固定値をＬＥＮ保持部１２２２に蓄積する。
【実施例４】
【００８５】
実施例４では、ミラーポート選択部において、受信パケットまたは送信パケットのヘッダ情報の一部または全部の値を入力値、ミラーポートを識別する値を出力値とするＨＡＳＨ関数に基づいた演算によりミラーポートを選択する。これにより、同一フローに属するミラーパケットが複数のミラーポートに分散することがなくなり、フロー毎に一意のミラーポートに送信することが可能となる。実施例４によれば、同一フローに属するミラーパケットが複数のミラーポートに分散することがなくなり、フロー毎に一意のミラーポートに送信することができる。
【００８６】
実施例４のパケット中継装置の構成は、図６に示す通りであり、実施例１と同様である。また、ミラーポート選択部の構成を図１６を参照して説明する。ここで、図１６はミラーポート選択部の機能ブロック図である。図１６において、ミラーポート選択部５０３Ｂのミラーポート選択回路９０１は、同一ミラーポートグループに属する複数のミラーポートを構成するミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３の情報をミラーポートテーブル制御部５０１から受信する。また、ミラーポート選択回路９０１は、フローを識別するのに必要となるヘッダ情報を、ヘッダ情報抽出部５０４から受信する。ここでは、フローを識別する条件となるヘッダ情報は、宛先ＭＡＣアドレス６１１、送信元ＭＡＣアドレス６１２、送信元ＩＰアドレス６２４、宛先ＩＰアドレス６２５、送信元ポート６３１、宛先ポート６３２とする。これらのヘッダ情報について、ミラーポート選択回路９０１は、ＨＡＳＨ関数演算部１５０１に送信する。
【００８７】
ＨＡＳＨ関数演算部の構成について図１７を参照して説明する。ここで、図１７はＨＡＳＨ関数演算部の機能ブロック図である。図１７において、ＨＡＳＨ関数演算部１５０１は、宛先ＭＡＣアドレス保持部１６０２と、送信元ＭＡＣアドレス保持部１６０３と、送信元ＩＰアドレス保持部１６０４と、宛先ＩＰアドレス保持部１６０５と、送信元ポート保持部１６０６と、宛先ポート保持部１６０７と、ＨＡＳＨ関数演算部１６０１とから構成される。
【００８８】
ＨＡＳＨ関数演算部１５０１は、ミラーポート選択回路９０１からＨＡＳＨ関数演算部１５０１に送信されたヘッダ情報のうち、宛先ＭＡＣアドレス６１１を宛先ＭＡＣアドレス保持部１６０２に保持する。ＨＡＳＨ関数演算部１５０１は、送信元ＭＡＣアドレス６１２を送信元ＭＡＣアドレス保持部１６０３に保持する。ＨＡＳＨ関数演算部１５０１は、送信元ＩＰアドレス６２４を送信元ＩＰアドレス保持部１６０４に保持する。ＨＡＳＨ関数演算部１５０１は、宛先ＩＰアドレス６２５を宛先ＩＰアドレス保持部１６０５に保持する。ＨＡＳＨ関数演算部１５０１は、送信元ポート６３１を送信元ポート保持部１６０６に保持する。ＨＡＳＨ関数演算部１５０１は、宛先ポート６３２を宛先ポート保持部１６０７に保持する。
【００８９】
各保持部１６０２〜１６０７に一時保持されたヘッダ情報は、ＨＡＳＨ関数演算回路１６０１においてＨＡＳＨ演算にかけられＨＡＳＨ値が出力される。ＨＡＳＨ関数演算部１５０１は、このＨＡＳＨ値に基づいて、ミラーポート選択回路９０１においてミラーパケットを送信する一つのミラーポートが選択する。ＨＡＳＨ値は、ミラーポートエントリ５０２−ｉに定義された同一ミラーポートグループに属する複数のミラーポートの各々を一意に表現できる情報量をもつ必要がある。すなわち、ミラーポートエントリ５０２−ｉではミラーポートｉ−０、ミラーポートｉ−１、ミラーポートｉ−２、ミラーポートｉ−３という４つのミラーポートが定義されているので、ＨＡＳＨ値はミラーポートｉ−０に対応する’０’、ミラーポートｉ−１に対応する’１’、ミラーポートｉ−２に対応する’２’、ミラーポートｉ−３に対応する’３’をとる必要がある。そのため、ＨＡＳＨ値は最低でも２ビットの情報量をもつ必要がある。
【００９０】
ＨＡＳＨ関数演算回路１６０１におけるＨＡＳＨ演算は、次のようなビット操作によって得られる。各保持部１６０２〜１６０７に一時保持されたヘッダ情報をそれぞれ８ビットの情報に分割し、ヘッダ情報毎に分割後の８ビットを全て加算する。加算後のビット値を、次は異なるヘッダ情報同士で加算し、下位２ビットを抽出することで、ＨＡＳＨ値が得られる。得られたＨＡＳＨ値は、ミラーポート選択回路９０１へ送信され、このＨＡＳＨ値に基づいてミラーパケットを送信する一つのミラーポートが選択される。
【実施例５】
【００９１】
次に、パケット中継装置で統計情報を収集するシステム（トラフィックモニタシステム）について、実施例５を用い図１８ないし図２５を参照して説明する。ここで、図１８は統計情報収集システムのハードウェアブロック図である。図１９はパケット中継装置の機能ブロック図である。図２０は統計パケット判定結果を説明する図である。図２１はフロー統計収集部の機能ブロック図である。図２２はＣＡＭを説明する図である。図２３はフロー統計テーブルを説明する図である。図２４はアナライザポートレジスタを説明する図である。図２５はアナライザポート選択部の機能ブロック図である。
【００９２】
図１８において、統計情報収集システムは、パケット中継装置（Ｓ１）１８０１と、パケット中継装置（Ｓ１）１８０１に接続された４台のアナライザ１７２０〜１７２３とから構成される。パケット中継装置（Ｓ１）１８０１は、統計パケットＣ０をアナライザポート１７１０から送信し、アナライザポート１７１０に接続されたアナライザ１７２０に入力される。アナライザ１７２０は、パケットのヘッダ情報や統計情報を解析する。統計パケットＣ１は、アナライザポート１７１１から送信され、アナライザポート１７１１に接続されたアナライザ１７２１に入力される。アナライザ１７２１は、パケットのヘッダ情報や統計情報が解析する。統計パケットＣ２は、アナライザポート１７１２から送信され、アナライザポート１７１２に接続されたアナライザ１７２２に入力される。アナライザ１７２２は、パケットのヘッダ情報や統計情報を解析する。統計パケットＣ３は、アナライザポート１７１３から送信され、アナライザポート１７１３に接続されたアナライザ１７２３に入力される。アナライザ１７２３は、パケットのヘッダ情報やヘッダ情報を解析する。
【００９３】
このように統計パケットを複数のアナライザに分散するように送信すると、単体のアナライザに対する統計パケットの負荷はアナライザの解析性能の限界以内に抑えたまま、入力回線１７０２から受信した全フローに属する全パケットＰ０、Ｐ１、Ｐ２、Ｐ３を統計情報の収集対象とすることができる。逆に、入力回線から受信した全パケット数に対するフローサンプルの対象とするパケット数の比率であるサンプリングレートを低下させず、統計の精度は維持したまま、より高速な入力回線をモニタポートとすることができる。あるいは、より多数のフローを収容する高速な入力回線をモニタポートとして、より多数のフローの統計情報を複数のアナライザで分散的に収集することができる。なお、実施例５とマルチパスとの差は、実施例１で説明したとおりである。
【００９４】
次に、パケット中継装置の構成について、図１９を参照して説明する。なお、図１９のパケット中継装置の構成は、パケットをルーティング転送するルータまたはパケットをスイッチング転送するスイッチに適用できる。
【００９５】
図１９において、パケット中継装置１８０１は、パケットが入力する入力回線１７０２と、パケットの受信処理を行うパケット受信回路４１０と、パケットに関する受信側での判定処理を行うパケット検索部１９１０と、パケットを出力回線番号に基づきスイッチングするパケット中継処理手段４３０と、パケットに関する送信側での判定処理を行うパケット検索部１９２０と、スイッチングされたパケットが蓄積される送信バッファ４５０からパケットを読み出してパケットの送信処理を行うパケット送信回路４６０と、パケットを出力する出力回線１７０３と、統計パケットを出力するアナライザポート１７１０とを備える。パケット受信回路４１０では、入力回線番号６０１とパケットのフレーム長ＬＥＮ６０２を判定し、図７に示すパケット受信回路４１０から送信されるヘッダ情報６００に付加する。パケット検索部１９１０は、出力回線番号を判定するための経路検索部４２２と、フロー統計を収集するフロー統計収集部１９１１と、管理端末４８０を接続されたレジスタ４７０とを備える。パケット検索部１９１０で経路検索とフロー統計の収集を行うため、パケット検索部１９１０は、経路検索部４２２とフロー統計収集部１９１１とを備え、パケット受信回路４１０からヘッダ情報と入力回線情報を受信する。なお、出力回線毎にフロー情報を収集する際は、送信側のパケット検索部１９２０に備わるフロー統計収集部にてフロー統計に関わる判定を行うこともできる。
【００９６】
図２０において、統計パケット判定結果２４００は、統計パケット生成指示フラグ２４０１とアナライザポート番号２４０２とから構成される。
図１９に戻って、パケット検索部１９１０は、経路検索部４２２で得られた出力回線番号と、フロー統計収集部１９１１で得られた統計パケット生成指示フラグ２４０１と、統計パケットを送信するアナライザポート番号２４０２から構成される統計パケット判定結果２４００を、検索結果情報としてパケット受信回路４１０に送信する。パケット受信回路４１０に送信された検索結果情報は、パケット本体の情報と合わせてパケット中継処理手段４３０を経由してパケット送信回路４６０に送信される。
【００９７】
パケット送信回路４６０において、パケット本体は出力回線１７０３に接続された送信バッファ４５０−１に蓄積され、出力回線１７０３から送信される。統計パケット生成の指示がされたパケットに対しては、パケット送信回路４６０においてヘッダ情報と統計情報とを含む統計パケットが生成される。生成された統計パケットは、アナライザポート１７１０に接続された送信バッファ４５０−２に蓄積され、アナライザポート１７１０から送信される。
【００９８】
パケット検索部１８１０に対するユーザ設定を可能とするため、パケット中継装置１８０１には管理端末４８０が接続されており、管理端末４８０からの設定情報は一時的にレジスタ４７０に保持される。レジスタ４７０から読み出された情報に従って、後で示される各種のテーブル制御部がテーブル設定を行う。
【００９９】
次に、パケット中継装置が備えるフロー統計収集部の構成について、図２１を参照して説明する。図２１において、フロー統計収集部１９１１は、ヘッダ情報抽出部２００１と、ＣＡＭ制御部２００２と、フロー統計演算部２００４と、フロー統計テーブル制御部２００５と、アナライザポートレジスタ２００８と、アナライザポートレジスタ制御部２００７と、アナライザポート選択部２００９から構成される。また、ＣＡＭ制御部２００２には、ＣＡＭ２００３が接続される。さらに、フロー統計テーブル制御部２００５は、フロー統計テーブル２００６を参照し、更新する。
【０１００】
ヘッダ情報抽出部２００１は、パケット受信回路４１０から送信されたヘッダ情報のうち、フロー統計の種集に必要となる情報を抽出する。パケット受信回路４１０から送信されるヘッダ情報６００は、実施例１と同様である。ここでは、フロー統計を収集する際にフローを識別する条件を送信元ＩＰアドレス、宛先ＩＰアドレス、Ｌ４プロトコル、送信元ポート番号、宛先ポート番号とする。ヘッダ情報抽出部２００１は、これらのフロー識別に必要となるヘッダ情報を抽出して、ＣＡＭ制御部２００２へ送信する。ＣＡＭは、データを入力すると入力データに一致するエントリの含まれるアドレスを出力する。
【０１０１】
図２２において、ＣＡＭ２００３は、送信元ＩＰアドレスの値と、宛先ＩＰアドレスの値と、Ｌ４プロトコルの値と、送信元ポートの値と、宛先ポートの値の組で指定される、フローを識別する条件となる複数のフローエントリ２００３−ｉ（ｉ＝０〜ｎ）で構成されている。
【０１０２】
図２１に戻って、ＣＡＭ制御部２００２は、レジスタ４７０から読み出された情報に従ってＣＡＭ２００３への設定を行う。ＣＡＭ制御部２００２がフロー識別に必要となるヘッダ情報をＣＡＭ２００３へ送信すると、ＣＡＭ２００３は、このヘッダ情報に一致するフローエントリ２００３−ｉを判定し、このフローエントリ２００３−ｉのアドレスをＣＡＭ制御部２００２へ送信する。なお、ヘッダ情報に一致するフローエントリが存在しない場合は、フロー統計の収集は行われず、アナライザポートからアナライザへの統計パケットの送信もなされない。
【０１０３】
ヘッダ情報に一致するフローエントリ２００３−ｉのアドレスを受信したＣＡＭ制御部２００２は、このアドレスをフロー統計テーブル制御部２００５へ送信する。フロー統計テーブル制御部２００５は、レジスタ４７０から読み出された情報に従ってフロー統計テーブル２００６への設定を行う。アドレスを受信したフロー統計テーブル制御部２００５は、このアドレスに基づいてフロー統計テーブル２００６を読み出す。
【０１０４】
図２３において、フロー統計テーブル２００６は、フローエントリ２００３−ｉに対応したフロー統計エントリ２００６−ｉから構成されており、フロー統計エントリ２００６−ｉはフロー毎の受信したパケット数と受信したＢｙｔｅ数（送信側のパケット検索部１８２０のフロー統計エントリにおいては、フロー毎の送信したパケット数と送信したＢｙｔｅ数）の統計情報を保持している。
【０１０５】
図２１に戻って、フロー統計テーブル２００６から読み出されたパケット数とＢｙｔｅ数の統計情報を、フロー統計テーブル制御部２００５は、フロー統計演算部２００４へ送信する。
【０１０６】
フロー統計演算部２００４は、受信した統計情報について、パケット数に１を加算し、Ｂｙｔｅ数に当該パケットのフレーム長であるＬＥＮ６０２を加算する。フロー統計演算部２００４は、演算後のパケット数とＢｙｔｅ数の統計情報をフロー統計テーブル制御部２００５へ送信する。
【０１０７】
フロー統計テーブル制御部２００５は、受信した演算後のパケット数とＢｙｔｅ数の統計情報を、フローエントリ２００３−ｉのアドレスに基づいてフロー統計テーブル２００６へ書き込む。
【０１０８】
次に、アナライザポートレジスタ制御部２００７は、アナライザポートレジスタ２００８を読み出す。アナライザポートレジスタ制御部２００７では、レジスタ４７０から読み出された情報に従ってアナライザポートレジスタ２００８への設定を行う。
【０１０９】
図２４において、アナライザポートレジスタ２００８は、同一のアナライザポートグループに含まれる複数のアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３のポート番号が設定されている。
【０１１０】
図２１に戻って、アナライザポートレジスタ制御部２００７は、アナライザポートグループのアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３の情報をアナライザポート選択部２００９へ送信する。アナライザポート選択部２００９では、アナライザポートグループのうち一つのアナライザポートを選択して、選択されたアナライザポートを統計パケット判定結果２４００のアナライザポート番号２４０２として、統計パケット判定結果２４００をパケット受信回路４１０へ送信する。
【０１１１】
アナライザポート選択部の構成についえ、図２５を参照して説明する。図２５において、アナライザポート選択部２００９は、アナライザポート選択回路２５０１と、カウンタ制御部２５０２と、カウンタ２５０３とから構成される。ここで、アナライザポート選択部２００９は、アナライザポートの選択をパケットの到着順序に基づいたラウンドロビンのアルゴリズムに基づいて判定する。
【０１１２】
アナライザポートレジスタ制御部２００７は、アナライザポートグループのアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３の情報をアナライザポート選択部２００９へ送信する。アナライザポート選択回路２５０１は、アナライザポートグループの情報を受信すると、パケット到着を示す信号をカウンタ制御部２５０２へ送信する。
【０１１３】
カウンタ制御部２５０２は、レジスタ４７０から読み出された情報に従ってカウンタ２５０３への設定を行う。カウンタ制御部２５０２がパケット到着の信号を受信すると、カウンタテーブル制御部２５０２は、カウンタ２５０３を読み出す。カウンタ２５０３の値は、アナライザポートレジスタ２００８に定義されたアナライザポートグループに属する複数のアナライザポートの各々を一意に表現できる情報量をもつ必要がある。図２４に示されたアナライザポートレジスタ２００８ではアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３という４つのアナライポートが定義されているので、カウンタはアナライザポート０に対応する’０’、アナライポート１に対応する’１’、アナライザポート２に対応する’２’、アナライザポート３に対応する’３’をとる必要がある。そのため、カウンタは最低でも２ビットの情報量をもつ必要がある。
【０１１４】
カウンタテーブル制御部２５０２は、読み出されたカウンタ２５０３の値をアナライザポート選択回路２５０１へ送信すると共に、読み出されたカウンタ２５０３の値に１加算して、加算後の値をカウンタ２５０３に書き込む。なお、読み出されたカウンタ２５０３の値が最大値の’３’である場合には、’０’をカウンタ２５０３の値として書き込む。
【０１１５】
アナライザポート選択回路２５０１は、カウンタテーブル制御部２５０２から送信されたカウンタ２５０３の値に応じたアナライザポートを選択して、選択されたアナライザポート番号を統計パケット判定結果２４００のアナライザポート番号２４０２とし、統計パケット生成指示フラグ２４０１を’１’としてパケット受信回路４１０に送信する。
【０１１６】
本実施例に拠れば、統計パケットを複数のアナライザに分散するように送信することで、アナライザへの負荷を下げることができる。
【実施例６】
【０１１７】
実施例６について、図２６ないし図２８を参照して説明する。ここで、図２６はアナライザポート選択部の機能ブロック図である。図２７は帯域監視部２６０１の機能ブロック図である。図２８は帯域監視テーブルを説明する図である。
【０１１８】
実施例６のパケット中継装置の構成は、図１９に示す通りであり、実施例５と同様である。実施例６でアナライザポート選択部の構成に付いて、図２６を参照して説明する。図２６において、アナライザポート選択部２００９Ａは、アナライザポート選択回路２５０１と、帯域監視部２６０１とから構成される。
【０１１９】
実施例６では、同一アナライザポートグループに属する複数のアナライザポート毎に送信された統計パケットのビットレートを監視して、アナライザポート毎に送信された統計パケットのビットレートがアナライザポート毎に予め定められた最大ビットレートに達しないアナライザポートを選択する。最大ビットレートは、アナライザの最大性能以下とする。
【０１２０】
アナライザポートレジスタ制御部２００７はアナライザポートグループのアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３の情報をアナライザポート選択部２００９Ａへ送信する。アナライザポート選択部２００９Ａは、アナライザポートグループの情報を受信すると、受信したアナライザポートグループに属する複数のアナライザポートを構成するアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３という４つのアナライザポート番号を帯域監視部２６０１に送信する。
【０１２１】
帯域監視部２６０１は、アナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３各々において送信された統計パケットのビットレートを監視して、アナライザポート毎に送信された統計パケットのビットレートがアナライザポート毎に予め定められた最大ビットレートに達しないアナライザポートを選択する。アナライザポート毎に送信された統計パケットのビットレートがアナライザポート毎に予め定められた最大ビットレートに達しないアナライザポートが複数ある場合には、そのうち最も小さなアナライザポート番号をもつアナライザポートを選択するものとする。
【０１２２】
ビットレートの帯域監視アルゴリズムのフローチャートは図４と同様である。
図４の帯域監視アルゴリズムを実装した帯域監視部の構成について、図２７に示す。また、図２７に記載された帯域監視テーブルの構成について、図２８に示す。なお、図２７と図１４との対比、および図２８と図１５との対比から明らかなように、図２７は図１４と参照番号が異なるのみの違いなので、説明は省略する。また、図２８も図１５と参照番号が異なるのみの違いなので、説明は省略する。
【実施例７】
【０１２３】
実施例７では、同一アナライザポートグループに属する複数のアナライザポート毎に送信された統計パケットのパケットレートを監視して、アナライザポート毎に送信された統計パケットのパケットレートがアナライザポート毎に予め定められた最大パケットレートに達しないアナライザポートを選択する。
【０１２４】
実施例７のパケット中継装置の構成は、図１９に示す通りであり、実施例５と同様である。実施例７でアナライザポート選択部の構成は、実施例６の図２６と同様である。
実施例７において、実施例６と異なる点は、次の通りである。（１）最大パケットレートは、アナライザの最大性能以下とする。（２）帯域監視部２６０１は、アナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３各々において送信された統計パケットのパケットレートを監視して、アナライザポート毎に送信された統計パケットのパケットレートがアナライザポート毎に予め定められた最大パケットレートに達しないアナライザポートを選択する。
【０１２５】
パケットレートの帯域監視アルゴリズムのフローチャートは、図４においてパケットのフレーム長によらず固定的にＬＥＮ＝１とするケースに相当する。
図４の帯域監視アルゴリズムを実装した帯域監視部２６０１の構成も、実施例６の図２７と同様である。ただし、帯域監視部２６０１は、アナライザポート毎の最大パケットレートＲｊ（ｊ＝０〜ｍ）とバケツ閾値ＴＨＲｊが設定された図２８に示す複数の帯域監視エントリ２７０２−ｊ（ｊ＝０〜ｍ）から構成される帯域監視テーブル２７０２が備える。なお、モニタポートから受信する全てのパケットを統計パケット生成対象とする場合には、アナライザポート毎の最大パケットレートＲ０〜Ｒｍの和はモニタポートの回線帯域以上とする。また、図２７において、フロー統計収集部１９１１のヘッダ情報抽出部２００１から送信されるＬＥＮ６０２は無視し、ＬＥＮ＝１という固定値をＬＥＮ保持部２７２２に蓄積する。
【実施例８】
【０１２６】
実施例８について、図２９および図３０を参照して、説明する。ここで、図２９はアナライザポート選択部の機能ブロック図である。図３０はＨＡＳＨ関数演算部の機能ブロック図である。また、実施例８のパケット中継装置の構成は、図１９および図２１に示す通りであり、実施例５と同様である。
【０１２７】
実施例８では、アナライザポート選択部において、受信パケットまたは送信パケットのヘッダ情報の一部または全部の値を入力値、アナライザポートを識別する値を出力値とするＨＡＳＨ関数に基づいた演算によりアナライザポートを選択する。これにより、同一フローに属する統計パケットが複数のアナライザポートに分散することがなくなり、フロー毎に一意のアナライザポートに送信する。実施例８によれば、同一フローに属する統計パケットが複数のアナライザポートに分散することがなくなり、フロー毎に一意のアナライザポートに送信するので、後で集約してから解析する必要はなくなる。
【０１２８】
アナライザポート選択部の構成について、図２９を参照して説明する。図２９において、アナライザポート選択部２００９Ｂは、アナライザポート選択回路２５０１とＨＡＳＨ関数演算部２９０１とから構成される。アナライザポート選択回路２５０１には、同一アナライザポートグループに属する複数のアナライザポートを構成するアナライザポート０、アナライザポート１、アナライザポート２、アナライザポート３の情報がアナライザポートレジスタ制御部２００７から送信される。また、アナライザポート選択回路２５０１には、フローを識別するのに必要となるヘッダ情報について、ヘッダ情報抽出部２００１から送信される。ここでは、フローを識別する条件となるヘッダ情報は、宛先ＭＡＣアドレス６１１、送信元ＭＡＣアドレス６１２、送信元ＩＰアドレス６２４、宛先ＩＰアドレス６２５、送信元ポート６３１、宛先ポート６３２とする。これらのヘッダ情報６００について、アナライザポート選択回路２５０１は、ＨＡＳＨ関数演算部２９０１に送信する。
【０１２９】
ＨＡＳＨ関数演算部の構成を図３０に示す。図３０の構成は、参照番号を除いて、図１７と同一なので、説明は省略する。ＨＡＳＨ関数演算部３００１は、得られたＨＡＳＨ値をアナライザポート選択回路２５０１へ送信する。アナライザポート選択回路２５０１は、このＨＡＳＨ値に基づいて統計パケットを送信する一つのアナライザポートを選択する。
【０１３０】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成をとることができる。
【図面の簡単な説明】
【０１３１】
【図１】ミラーリングシステムのハードウェアブロック図である。
【図２】ミラーリングシステムのハードウェアブロック図である。
【図３】統計情報収集システムのハードウェアブロック図である。
【図４】ビットレートの帯域監視アルゴリズムを説明するフローチャートである。
【図５】ミラーリングシステムのハードウェアブロック図である。
【図６】パケット中継装置のブロック図である。
【図７】パケット受信回路から送信されるヘッダ情報を説明する図である。
【図８】ミラー判定部の機能ブロック図である。
【図９】ミラーポートテーブルの構成を説明する図である。
【図１０】ミラーリング判定結果の構成を説明する図である。
【図１１】ミラーポート選択部の機能ブロック図である。
【図１２】カウンタテーブルの構成を説明する図である。
【図１３】ミラーポート選択部の機能ブロック図である。
【図１４】帯域監視部の機能ブロック図である。
【図１５】帯域監視テーブルを説明する図である。
【図１６】ミラーポート選択部の機能ブロック図である。
【図１７】ＨＡＳＨ関数演算部の機能ブロック図である。
【図１８】本発明を備えるパケット中継装置で統計情報を収集する場合のシステム構成
【図１９】パケット中継装置の機能ブロック図である。
【図２０】統計パケット判定結果を説明する図である。
【図２１】フロー統計収集部の機能ブロック図である。
【図２２】ＣＡＭを説明する図である。
【図２３】フロー統計テーブルを説明する図である。
【図２４】アナライザポートレジスタを説明する図である。
【図２５】アナライザポート選択部の機能ブロック図である。
【図２６】アナライザポート選択部の機能ブロック図である。
【図２７】帯域監視部２６０１の機能ブロック図である。
【図２８】帯域監視テーブルを説明する図である。
【図２９】アナライザポート選択部の機能ブロック図である。
【図３０】ＨＡＳＨ関数演算部の機能ブロック図である。
【符号の説明】
【０１３２】
１０１…パケット中継装置（Ｓ０）、１０２…入力回線、１０３…出力回線、１１０…ミラーポート、１１１…のミラーポート、１１２…ミラーポート、１１３…ミラーポート、１２０…アナライザ（Ａ０）、１２１…アナライザ（Ａ１）、１２２…アナライザ（Ａ２）、１２３…アナライザ（Ａ３）、３０１…パケット中継装置（Ｓ１）、４１０…パケット受信回路、４２０…パケット検索部、４２１…ミラー判定部、４２２…経路検索部、４３０…パケット中継処理手段、４４０…パケット検索部、４５０…送信バッファ、４６０…パケット送信回路、４７０…レジスタ、４８０…管理端末、５００…モニタポート番号抽出部、５０１…ミラーポートテーブル制御部、５０２…ミラーポートテーブル、５０２−ｉ…ミラーポートエントリ、５０３…ミラーポート選択部、５０４…ヘッダ情報抽出部、６００…ヘッダ情報、６０１…入力回線番号、６０２…パケットのフレーム長、６１０…Ｌ２ヘッダ部、６１１…宛先ＭＡＣアドレス、６１２…送信元ＭＡＣアドレス、６１３…イーサタイプ、６１４…ＶＬＡＮタグ、６２０…Ｌ３ヘッダ部（ＩＰｖ４時）、６２１…ＩＰバージョン、６２２…ＴＯＳ（Type of Service）、６２３…Ｌ４プロトコル、６２４…送信元ＩＰアドレス、６２５…宛先ＩＰアドレス、６３０…Ｌ４ヘッダ部、６３１…送信元ポート番号、６３２…宛先ポート番号、７００…ミラーリング判定結果、７０１…ミラーリング指示フラグ、７０２…ミラーポート番号、９０１…ミラーポート選択回路、９０２…カウンタテーブル制御部、９０３…カウンタテーブル、９０３−ｉ…モニタポート毎のカウンタ、１１０１…帯域監視部、１２０１…帯域監視テーブル制御部、１２０２…帯域監視テーブル、１２０２−ｊ…帯域監視エントリ、１２１０…現在水量判定部、１２１１…ＣＮＴ保持部、１２１２…ＴＬＳＴ保持部、１２１３…Ｒ保持部、１２１４…タイマー、１２１５…現在水量演算回路、１２２０…監視結果判定部、１２２１…ＴＨＲ保持部、１２２２…ＬＥＮ保持部、１２２３…ＮＯＷＣＮＴ蓄手段、１２２４…監視結果判定回路、１２２５…ＣＮＴ２保持部、１２２６…ＴＬＳＴ保持部、１５０１…ＨＡＳＨ関数演算部、１６０１…ＨＡＳＨ関数演算回路、１６０２…宛先ＭＡＣアドレス保持部、１６０３…送信元ＭＡＣアドレス保持部、１６０４…送信元ＩＰアドレス保持部、１６０５…宛先ＩＰアドレス保持部、１６０６…送信元ポート保持部、１６０７…宛先ポート保持部、１７０１…パケット中継装置（Ｓ０）、１７０２…入力回線、１７０３…出力回線、１７１０…アナライザポート、１７１１…アナライザポート、１７１２…アナライザポート、１７１３…アナライザポート、１７２０…アナライザ（Ａ０）、１７２１…アナライザ（Ａ１）、１７２２…アナライザ（Ａ２）、１７２３…アナライザ（Ａ３）、１８０１…パケット中継装置（Ｓ１）、１９１０…パケット検索部、１９１１…フロー統計収集部、１９２０…パケット検索部、２００１…ヘッダ情報抽出部、２００２…ＣＡＭ制御部、２００３…ＣＡＭ、２００３−ｉ…フローエントリ、２００４…フロー統計演算部、２００５…フロー統計テーブル制御部、２００６…フロー統計テーブル、２００６−ｉ…フロー統計エントリ、２００７…アナライザポートレジスタ制御部、２００８…アナライザポートレジスタ  、２００９…アナライザポート選択部、２４００…統計パケット判定結果、２４０１…統計パケット生成指示フラグ、２４０２…アナライザポート番号、２５０１…アナライザポート選択回路、２５０２…カウンタ制御部、２５０３…カウンタ、２６０１…帯域監視部、２７０１…帯域監視テーブル制御部、２７０２…帯域監視テーブル、２７０２−ｊ…帯域監視エントリ、２７１０…現在水量判定部、２７１１…ＣＮＴ保持部、２７１２…ＴＬＳＴ保持部、２７１３…Ｒ保持部、２７１４…タイマー、２７１５…現在水量演算回路、２７２０…監視結果判定部、２７２１…ＴＨＲ保持部、２７２２…ＬＥＮ保持部、２７２３…ＮＯＷＣＮＴ蓄手段、２７２４…監視結果判定回路、２７２５…ＣＮＴ２保持部、２７２６…ＴＬＳＴ保持部、２９０１…ＨＡＳＨ関数演算部、３００１…ＨＡＳＨ関数演算回路、３００２…宛先ＭＡＣアドレス保持部、３００３…送信元ＭＡＣアドレス保持部、３００４…送信元ＩＰアドレス保持部、３００５…宛先ＩＰアドレス保持部、３００６…送信元ポート保持部、３００７…宛先ポート保持部。
【図１】
0004988632.tif 000002
【図２】
0004988632.tif 000003
【図３】
0004988632.tif 000004
【図４】
0004988632.tif 000005
【図５】
0004988632.tif 000006
【図６】
0004988632.tif 000007
【図７】
0004988632.tif 000008
【図８】
0004988632.tif 000009
【図９】
0004988632.tif 000010
【図１０】
0004988632.tif 000011
【図１１】
0004988632.tif 000012
【図１２】
0004988632.tif 000013
【図１３】
0004988632.tif 000014
【図１４】
0004988632.tif 000015
【図１５】
0004988632.tif 000016
【図１６】
0004988632.tif 000017
【図１７】
0004988632.tif 000018
【図１８】
0004988632.tif 000019
【図１９】
0004988632.tif 000020
【図２０】
0004988632.tif 000021
【図２１】
0004988632.tif 000022
【図２２】
0004988632.tif 000023
【図２３】
0004988632.tif 000024
【図２４】
0004988632.tif 000025
【図２５】
0004988632.tif 000026
【図２６】
0004988632.tif 000027
【図２７】
0004988632.tif 000028
【図２８】
0004988632.tif 000029
【図２９】
0004988632.tif 000030
【図３０】
0004988632.tif 000031