(57)【要約】【課題】ホスト等の任意のキー毎の統計値情報（サマリ）を記録管理することを目的とする。【解決手段】パケット計測部１０１が、到来するパケットデータを計測する。統計記録部１０２が、監視対象となるキーに関してサマリをサマリテーブル１０７上に計数・記録する。統計出力部１０３が、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす第１の場合、周期が到来する毎の第２の場合、サマリテーブル１０７に登録されたキーの数が設定可能な閾値を超える毎の第３の場合のいずれかまたはこれらの二つまたは三つを組み合わせた場合に、サマリテーブル１０７上の一部のキーもしくはすべてのキーに関するサマリを外部に出力する。統計集約部１１１が、統計出力部１０３が出力したデータを読み込み、データの集約を行う。【選択図】図１
2007221612.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワーク上を転送されるパケットデータについて、指定された項目であるキーに関する統計的データであるサマリの集約を行うトラヒック情報集約システムであって、
到来するパケットデータを計測するパケット計測部と、
監視対象となるキーに関してサマリをサマリテーブル上に計数・記録する統計記録部と、
統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす第１の場合、周期が到来する毎の第２の場合、サマリテーブルに登録されたキーの数が設定可能な閾値を超える毎の第３の場合のいずれかまたはこれらの二つもしくは三つを組み合わせた場合に、サマリテーブル上の一部のキーもしくはすべてのキーに関するサマリを外部に出力する統計出力部と、
前記統計出力部が出力したデータを読み込み、前記データの集約を行う統計集約部と、
を含むことを特徴とするトラヒック情報集約システム。
【請求項２】
請求項１に記載のトラヒック情報集約システムであって、
前記パケット計測部は、パケットをサンプルしサンプルしたパケットのキーのみ計測を行うサンプリング、更新可能なリストもしくはルールを用意しリストもしくはルールにマッチしたキーのみを選択的に計測するフィルタリング、予め定めた条件を満たすキーのみを確率的にサンプル計測するキーサンプリングのいずれかまたはこれらの二つもしくは三つを組み合わせた処理を行い、またはこれらの処理を行わず、到来するパケットデータを計測することが可能であること、を特徴とするトラヒック情報集約システム。
【請求項３】
請求項１に記載のトラヒック情報集約システムであって、
前記パケット計測部および前記統計記録部は、キーとして、任意の項目が指定可能であること、を特徴とするトラヒック情報集約システム。
【請求項４】
請求項１に記載のトラヒック情報集約システムであって、
前記統計記録部は、キー毎に記録するサマリとして、任意の項目が指定可能であること、を特徴とするトラヒック情報集約システム。
【請求項５】
請求項４に記載のトラヒック情報集約システムであって、
前記統計記録部は、キー毎に観測した異なり数そのものをキー毎に記録することによって直接的に異なり数を計数する第１の手段に加え、ハッシュ関数を用いて確率的に異なり数を計数する第２の手段を有すること、を特徴とするトラヒック情報集約システム。
【請求項６】
請求項５に記載のトラヒック情報集約システムであって、
前記第２の手段は、キー毎に予め定めた長さまたは任意に調節可能な長さのビットマップを用意し、計測の対象となる項目に対してハッシュ関数を適用し、得られたハッシュ値を用いて異なり数を確率的な情報でビットマップ上に記録すること、を特徴とするトラヒック情報集約システム。
【請求項７】
請求項１に記載のトラヒック情報集約システムであって、
前記統計出力部は、
前記第１の場合は、最終到着時刻と現在時刻との差が予め定めた閾値を越えた第４の場合、または、累積値もしくは異なり数のいずれかが、予め定めた閾値を超えた第５の場合に、該当するキーのサマリ情報をサマリテーブルから外部に出力するとともに該サマリ情報をサマリテーブルから削除し、
前記第２の場合または前記第３の場合は、サマリテーブルに存在するすべてのキーについてのサマリを一度に出力するとともにサマリテーブルをすべてクリアするか、あるいは予め定めた数のキーをランダムに選択し、該当するキーのサマリのみ出力し、該サマリのみをサマリテーブルからクリアし、
前記第４の場合、前記第５の場合、前記第２の場合、前記第３の場合のそれぞれによるサマリの出力はすべてを同時に適用することも、任意の組み合わせのみを適用することも可能であること、
を特徴とするトラヒック情報集約システム。
【請求項８】
請求項１に記載のトラヒック情報集約システムであって、
前記統計集約部は、前記統計出力部から出力されたサマリを管理し、前記管理したサマリを参照して同一のキーに関するサマリを集約する機能を有し、異なり数については、あるキーＸに関するｎ個（ｎは２以上の整数）のビットマップ情報ｂ（Ｘ１）、ｂ（Ｘ２）、ｂ（Ｘ３）、…、ｂ（Ｘｎ）の論理和ｂ（Ｘ１∪Ｘ２∪…∪Ｘｎ）のビットマップを用いてキーＸに関する異なり数を推定するとともに、前記集約したトラヒックサマリを保存しておくこと、を特徴とするトラヒック情報集約システム。
【請求項９】
請求項１に記載のトラヒック情報集約システムであって、
前記統計集約部は、任意のキーの集合に対し、任意の時間周期での集約が可能であること、を特徴とするトラヒック情報集約システム。
【請求項１０】
コンピュータネットワーク上を転送されるパケットデータについて、指定された項目であるキーに関する統計的データであるサマリの集約を行うトラヒック情報集約方法であって、
パケット計測部が、到来するパケットデータを計測するステップと、
統計記録部が、監視対象となるキーに関してサマリをサマリテーブル上に計数・記録するステップと、
統計出力部が、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす第１の場合、周期が到来する毎の第２の場合、サマリテーブルに登録されたキーの数が設定可能な閾値を超える毎の第３の場合のいずれかまたはこれらの二つもしくは三つを組み合わせた場合に、サマリテーブル上の一部のキーもしくはすべてのキーに関するサマリを外部に出力するステップと、
統計集約部が、前記統計出力部が出力したデータを読み込み、前記データの集約を行うステップと、
を含むことを特徴とするトラヒック情報集約方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインターネット等のコンピュータネットワーク上を転送されるトラヒックデータの分析技術に関する。
【背景技術】
【０００２】
ネットワーク上のトラヒックを監視することは、ネットワーク資源の適切な設計や、異常なトラヒックの検出・制御を実現する上で、欠かせない技術である。このためには比較的粒度の細かいトラヒック監視技術が必要となる。
【０００３】
従来、非特許文献１に代表されるように、同一の特徴を持つ一連のパケット群を「フロー」として定義し、フローを単位としてトラヒックを監視する技術が広く実用に供してきた。ＩＰ（Internet Protocol）ネットワークにおけるフローは、一般に、発ＩＰアドレス、着ＩＰアドレス、発ポート番号、着ポート番号、プロトコル種別の５つの組合せによって定義されている。場合によっては、上記の５つに入力インタフェース、出力インタフェースを加える場合もある。
【０００４】
フロー毎に記録・管理する統計値としては、フロー開始時刻、フロー完了時刻、累積パケット数、累積バイト数、ＴＣＰフラグ情報、発ＡＳ番号、着ＡＳ番号、等である。
【０００５】
【非特許文献１】K. Thompson and G. Miller and R. Wilder, Wide area internet traffic patterns and characteristics, IEEE Network vol.11, no.6, pp.10-23, 1997.
【非特許文献２】森達哉、川原亮一、上山憲昭、石橋圭介、阿部威郎、“通信パターン分析に基づくワーム感染ホスト検出方法”、電子情報通信学会技術研究報告、ＣＱ２００５−６７、ＰＰ．１−６、(２００５−１１)
【非特許文献３】Whang, K., Vander-Zanden, B., and Taylor, H., “A Linear-Time Probabilistic Counting Algorithm for Database Applications,” ACM Trans. on Database Systems, Vol.15, No.2, pp.208−229, June 1990.
【非特許文献４】Marianne Durand and Philippe Flajolet., “Loglog Counting of Large Cardinalities”, In the “Engineering and Applications Track” of  the 11th Annual European Symposium on Algorithms (ESA03). Proceedings published by Springer, Lecture Notes in Computer Science, vol 2832, pp.605-617. This documents is dated September 2003.
【発明の開示】
【発明が解決しようとする課題】
【０００６】
より詳細なトラヒック監視を実現する上で、先行技術では以下の点に不足がある。
・フローの定義が固定的であるため、任意のキー（例えば発ホスト）毎の統計値を管理することができない。
・記録する統計値は、主に属性値やカウンタ値であり、例えば発ホスト毎の異なる宛先ホストの数や、異なる着ポート番号の数といった、「異なり数」を記録することはできない。
【０００７】
従来のフロー以外の単位として、たとえばホスト毎の統計値を分析することにより、ワームに感染したホストの挙動や、特定サーバに対する攻撃などの状況を把握することが可能となる。さらに、異なり数の情報はこれらの異常トラヒックの挙動を特徴つける上で非常に役に立つ。例えば、ワームに感染したホストは脆弱性のあるポート番号でサービスを提供しているホストを探索することを目的とした、多数のランダムなアドレスに対して少量のパケットによる通信（ネットワークスキャン）を行うといった特徴を有することから、あるホストが多数の着アドレスに向けて少数パケットを通信しているような状況を把握できれば、そのホストはワームに感染している疑いが強い（非特許文献２参照）。このように、フロー以外の単位で、異なり数を含むトラヒックサマリを管理することは、異常トラヒックの検出・制御を実現する上で重要な役割を果たす。
【０００８】
上述の目的を達成するため、本発明で提案した手法では任意に定めることの可能なキー毎にトラヒックサマリを管理するとともに、キー毎のサマリがある基準を満たした場合、もしくは調節可能な周期が到来する毎にサマリをメモリ上から外部に出力する。このような方式をとることにより、同時に管理するキーの数を調節することが可能であるため、メモリ使用量を節約することができる。さらに、異なり数のカウントにハッシュ関数とビットマップを用いるLinear Counting等の確率的な手法を採用することにより、あるキーに対する複数のサマリから異なり数の情報を集約することが可能となる。
【０００９】
本発明の目的は、上記の課題を鑑みてなされたもので、ホスト等の任意のキー毎の統計値情報（サマリ）を記録管理することを目的とする。また、特に着アドレス数などの異なり数を管理する上ではメモリ量の適切な管理が必要となるため、適切なメモリ管理を実現することも課題である。
【課題を解決するための手段】
【００１０】
本明細書において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【００１１】
第１の発明は、コンピュータネットワーク上を転送されるパケットデータについて、指定された項目であるキーに関する統計的データであるサマリの集約を行うトラヒック情報集約システムであって、到来するパケットデータを計測するパケット計測部と、監視対象となるキーに関してサマリをサマリテーブル上に計数・記録する統計記録部と、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす第１の場合、周期が到来する毎の第２の場合、サマリテーブルに登録されたキーの数が設定可能な閾値を超える毎の第３の場合のいずれかまたはこれらの二つもしくは三つを組み合わせた場合に、サマリテーブル上の一部のキーもしくはすべてのキーに関するサマリを外部に出力する統計出力部と、前記統計出力部が出力したデータを読み込み、前記データの集約を行う統計集約部と、を含むことを特徴とする。
【００１２】
第２の発明は、前記第１の発明において、前記パケット計測部は、パケットをサンプルしサンプルしたパケットのキーのみ計測を行うサンプリング、更新可能なリストもしくはルールを用意しリストもしくはルールにマッチしたキーのみを選択的に計測するフィルタリング、予め定めた条件を満たすキーのみを確率的にサンプル計測するキーサンプリングのいずれかまたはこれらの二つもしくは三つを組み合わせた処理を行い、またはこれらの処理を行わず、到来するパケットデータを計測することが可能であること、を特徴とする。
【００１３】
第３の発明は、前記第１の発明において、前記パケット計測部および前記統計記録部は、キーとして、任意の項目が指定可能であること、を特徴とする。
【００１４】
第４の発明は、前記第１の発明において、前記統計記録部は、キー毎に記録するサマリとして、任意の項目が指定可能であること、を特徴とする。
【００１５】
第５の発明は、前記第４の発明において、前記統計記録部は、キー毎に観測した異なり数そのものをキー毎に記録することによって直接的に異なり数を計数する第１の手段に加え、ハッシュ関数を用いて確率的に異なり数を計数する第２の手段を有すること、を特徴とする。
【００１６】
第６の発明は、前記第５の発明において、前記第２の手段は、キー毎に予め定めた長さまたは任意に調節可能な長さのビットマップを用意し、計測の対象となる項目に対してハッシュ関数を適用し、得られたハッシュ値を用いて異なり数を確率的な情報でビットマップ上に記録すること、を特徴とする。
【００１７】
第７の発明は、前記第１の発明において、前記統計出力部は、前記第１の場合は、最終到着時刻と現在時刻との差が予め定めた閾値を越えた第４の場合、または、累積値もしくは異なり数のいずれかが、予め定めた閾値を超えた第５の場合に、該当するキーのサマリ情報をサマリテーブルから外部に出力するとともに該サマリ情報をサマリテーブルから削除し、前記第２の場合または前記第３の場合は、サマリテーブルに存在するすべてのキーについてのサマリを一度に出力するとともにサマリテーブルをすべてクリアするか、あるいは予め定めた数のキーをランダムに選択し、該当するキーのサマリのみ出力し、該サマリのみをサマリテーブルからクリアし、前記第４の場合、前記第５の場合、前記第２の場合、前記第３の場合のそれぞれによるサマリの出力はすべてを同時に適用することも、任意の組み合わせのみを適用することも可能であること、を特徴とする。
【００１８】
第８の発明は、前記第１の発明において、前記統計集約部は、前記統計出力部から出力されたサマリを管理し、前記管理したサマリを参照して同一のキーに関するサマリを集約する機能を有し、異なり数については、あるキーＸに関するｎ個（ｎは２以上の整数）のビットマップ情報ｂ（Ｘ１）、ｂ（Ｘ２）、ｂ（Ｘ３）、…、ｂ（Ｘｎ）の論理和ｂ（Ｘ１∪Ｘ２∪…∪Ｘｎ）のビットマップを用いてキーＸに関する異なり数を推定するとともに、前記集約したトラヒックサマリを保存しておくこと、を特徴とする。
【００１９】
第９の発明は、前記第１の発明において、前記統計集約部は、任意のキーの集合に対し、任意の時間周期での集約が可能であること、を特徴とする。
【００２０】
第１０の発明は、コンピュータネットワーク上を転送されるパケットデータについて、指定された項目であるキーに関する統計的データであるサマリの集約を行うトラヒック情報集約方法であって、パケット計測部が、到来するパケットデータを計測するステップと、統計記録部が、監視対象となるキーに関してサマリをサマリテーブル上に計数・記録するステップと、統計出力部が、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす第１の場合、周期が到来する毎の第２の場合、サマリテーブルに登録されたキーの数が設定可能な閾値を超える毎の第３の場合のいずれかまたはこれらの二つもしくは三つを組み合わせた場合に、サマリテーブル上の一部のキーもしくはすべてのキーに関するサマリを外部に出力するステップと、統計集約部が、前記統計出力部が出力したデータを読み込み、前記データの集約を行うステップと、を含むことを特徴とする。
【発明の効果】
【００２１】
本発明によれば、トラヒックを監視し、ホストなどの任意のキーに対して様々な統計サマリを記録・管理・集約し、かつそれらを実現する上で必要となる適切なメモリ管理を提供することが出来る。
【発明を実施するための最良の形態】
【００２２】
以下、図面を用いて本発明の実施例を説明する。
図１は本発明の基本構成の一実施例を示す図である。本実施例のシステムは、インターネット等のコンピュータネットワーク上を転送されるパケットデータについて、指定された項目（キーと呼ぶ）に関する、累積パケット数や、異なるあて先ホスト数等各種の統計的データ（サマリと呼ぶ）を記録、出力、ならびに出力サマリを集約するトラヒック情報集約システムである。図１において、１００はトラヒックサマリ計測装置であり、１１０はトラヒックサマリ集約装置である。図１では統計集約部をトラヒックサマリ集約装置１１０として、トラヒックサマリ計測装置１００とは個別に実装した例を示しているが、両者を同一の装置に実装する実施形態も考えられる。また図２は図１で示したトラヒックサマリ計測装置１００とトラヒックサマリ集約装置１１０をネットワーク２００上に配置した例を示している。複数のトラヒックサマリ計測装置１００−１〜１００−３の情報を統一的にトラヒックサマリ集約装置１１０で取得することが可能である。
【００２３】
図１において、トラヒックサマリ計測装置１００は、到来するパケットデータを計測するパケット計測部１０１と、監視対象となるキーに関してサマリをサマリテーブル１０７上に計数・記録する統計記録部１０２と、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす場合（第１の場合）、あるいは調節可能な周期が到来する毎（第２の場合）か、あるいはサマリテーブル１０７に登録されたキーの数が設定可能な閾値を超える毎（第３の場合）に、サマリテーブル１０７上の一部のキーもしくはすべてのキーに関するサマリを外部に出力する統計出力部１０３と、時刻を管理する時刻管理部１０４と、メモリ１０５と、を備える。メモリ１０５には、フィルタリストその他のパラメタ１０６およびサマリテーブル１０７が記憶される。ここで、フィルタリストはパケット計測部１０１がフィルタリングを実施する際に必要なデータ（フィルタの対象となる条件のリスト）である。その他パラメタは、パケットをサンプリングをする際に例えば  １／１，０００の割合でサンプルするといったサンプリングレートのパラメタとか、ある条件を満たすキーのみを確率的にサンプリングする場合のその条件等である。トラヒックサマリ集約装置１１０は、統計出力部１０３の出力データを読み込み、入力情報を集約する統計集約部１１１と、メモリ１１２と、を備える。
【００２４】
図１のパケット計測部１０１は、ネットワーク内の単数もしくは複数のリンク上および／またはネットワーク内部のノード内で転送もしくはミラーされるパケットデータ、および／または前記パケットデータに対して別途設置された計測装置等によってサンプリングもしくはフィルタリングを実施した後に付加情報を追加した等のパケットデータもしくは複数パケットデータを含むデータを取得する。パケット計測部１０１は、調節可能なサンプリングレートによってランダム、周期的、もしくはその他の方法によってパケットの一部もしくは全てをサンプルしサンプルしたパケットのキーのみ計測を行うサンプリング、更新可能なリストもしくはルールを用意しリストもしくはルールにマッチしたキーのみを選択的に計測するフィルタリング、または予め定めた条件を満たすキーのみを確率的にサンプル計測するキーサンプリングが可能である。また、サンプリング、フィルタリング、キーサンプリングの任意の組み合わせによって併用することも可能であり、到来するパケットに対して適用する順番は変更可能である。パケット計測部１０１は、取得したデータに対して適切なサンプリングもしくはフィルタリングを施した後、統計記録部に転送する。（具体的には、ルータの複数インタフェースを通過するパケット、あるいはルータやスイッチからポートミラーリングした、もしくはリンクにタップを接続することによって取得したパケット、あるいはsflowのようなサンプリング・フィルタリングしたパケットデータの出力を想定している。）
パケット計測部１０１は、キーとして、発アドレスや、着アドレス等のパケットに記載されたデータ、あるいはアドレスとルーティングテーブル等の外部データとを比較することで得られるＡＳ番号等、任意の項目が指定可能である。
【００２５】
以下、キーとして発ＩＰアドレス、監視する統計値として、時刻情報、パケット数、および異なる着ＩＰアドレス総数の場合について説明するが、本発明の適用範囲はこの限りではない。また、異なり数の記録、推定にあたっては非特許文献３に記載のLinear Countingを用いる場合について説明するが、他のハッシュ関数とビットマップを用いることを特徴とした異なり数推定手法（非特許文献４に記載のLoglog Countingなど）を使用することも可能である。あるいは、異なり数推定手法を用いずに、異なる項目をすべて記録することによって直接的に異なり数を計数する手法も可能である。なお、「異なり数」とは、例えば発ホスト毎の異なる宛先ホストの数や、異なる着ポート番号の数といった数であり、一般的には、ある集合に含まれる要素の内、互いに異なる要素の数である。英語ではcardinality（= number of distinct elements）である。
【００２６】
図１の統計記録部１０２では、パケット計測部１０１より転送されたデータを読み込み、キー毎に時刻情報、パケット数、および着ＩＰアドレス数を管理するビットマップをサマリテーブル１０７上に管理し、データが転送される毎に情報を更新する。キーがサマリテーブル１０７に存在しない場合は、そのキーをサマリテーブル１０７に登録する。あるキーの最初のパケットが到着した際に時刻管理部１０４から現在時刻を取得し、初期到着時刻として記録すると同時に最終到着時刻も同じ値を記録する。同様にパケット数をカウントアップし（初期値は０）、着ＩＰアドレスに対して任意に選択が可能なハッシュ関数を適用し、０〜Ｌ−１の値を得る。ハッシュ関数をビットマップ上でその値に対応するビットに１を立てる。以降、そのキーのパケットが到来する度に初期到着時刻以外の項目について同様に更新を行う。サマリテーブル１０７の具体例を図３に示す。図３において、１列目は発ホストであり（この具体例では、発ホストがキーである）、２列目は初期到着時刻であり、３列目は最終到着時刻であり、４列目はパケット数であり、５列目は着アドレス数カウントビットマップであり、６列目は５列目の着アドレス数カウントビットマップのビット“１”の数である。キー毎に管理するビットマップ長は１６である例を示している（図３の５列目参照）。Linear Countingにおける異なり数推定は以下の通りである。ビットマップ上で１となっているビットの数をｍとする（図３の６列目参照）。このとき、異なり数の推定値ｆ(ｍ)は、
ｆ(ｍ)＝−Ｌ＊ｌｏｇ((Ｌ−ｍ)／Ｌ)・・・（１）
と与えられる。すなわち、ｍ＝７であった場合、推定される異なり数は
ｆ(７)＝−１６＊ｌｏｇ((１６−７)／１６)＝９．２１
である。
【００２７】
統計記録部１０２は、キーとして発アドレスや、着アドレス等のパケットに記載されたデータ、あるいはアドレスとルーティングテーブル等の外部データとを比較することで得られるＡＳ番号等、任意の項目が指定可能である。また、統計記録部１０２は、キー毎に記録するサマリとして、調節可能な計測期間における、初期到着時刻、最終到着時刻などの「時刻情報」や、累積パケット数、累積バイト数、といった「累積値」、ならびに異なる着アドレス総数、異なる発ポート番号の総数といった「異なり数」、などを任意に指定可能である。そして、統計記録部１０２は、異なり数の計数に関しては、キー毎に観測した異なり数そのものをキー毎に記録することによって直接的に異なり数を計数する第１の手段（図示していない）に加え、Linear CountingやLoglog Countingやそれらの組み合わせのハッシュ関数とビットマップを利用する手法によって、異なり数を確率的に計数・推定する第２の手段（図示していない）を備えることができる。この第２の手段（図示していない）においては、キー毎に予め定めた長さまたは任意に調節可能な長さのビットマップを用意し、計測の対象となる項目（例えば着アドレス）に対してハッシュ関数を適用し、得られたハッシュ値よりLinear CountingあるいはLoglog Counting等の手法を適用することによって異なり数を確率的な情報でビットマップ上に記録する。
【００２８】
図１の統計出力部１０３では、統計値を更新したキーに対して記録したサマリが予め定めた基準を満たす場合（前記第１の場合）、例えばあるキーに関するビットマップにおける１の数がある閾値（例えば１５）に到達したらサマリテーブル１０７上のそのキーに関する情報（すなわち、キー、初期到着時刻、最終到着時刻、パケット数、ビットマップ）を統計集約部１１１に出力するとともに、該当するデータをサマリテーブル１０７から削除する。この手順を図４のフローチャートに示す。図４において、あるキーＸのパケットが到着すると（ステップ４０１）、キーＸのエントリーのビットマップを更新する（ステップ４０２）。上記エントリーのうち、ビット１の数が閾値を越えるビットマップが少なくとも１つ存在するかどうかを判断する（ステップ４０３）。存在する場合（ステップ４０３でＹｅｓの場合）は、キーＸを出力し、サマリテーブル１０７から該当するデータを削除する。存在しない場合（ステップ４０３でＮｏの場合）は終了する。
【００２９】
また、統計出力部１０３では、調節可能な周期（例えば１分）が到来する毎（前記第２の場合）にサマリテーブル１０７のデータを外部に出力する。ここでは、１分毎にサマリテーブル１０７上に登録されたすべてのデータを出力する方法を例として取りあげる。計測開始から１分が経過する毎に統計出力部はサマリテーブル１０７上のすべてのデータ（トラヒックサマリ）を統計集約部１１１に出力し、サマリテーブル１０７をクリアする。
【００３０】
また、統計出力部１０３では、サマリテーブル１０７に登録されたキーの数が設定可能な閾値を超える毎（前記第３の場合）にも、サマリテーブル１０７のデータを統計集約部１１１に出力し、サマリテーブル１０７をクリアする。
【００３１】
統計出力部１０３は、第１の場合、第２の場合、第３の場合の全ての場合について、データを出力し、サマリテーブル１０７から該当データを削除するか、クリアしてもよいし、これらの場合のうち一つまたは二つの場合について、データを出力し、サマリテーブル１０７から該当データを削除するか、クリアしてもよい。
【００３２】
また、統計出力部１０３は、第１の場合は、「最終到着時刻」と「現在時刻」との差が予め定めた閾値を越えた場合（第４の場合）、もしくはその他の「累積値」ないしは推定した「異なり数」のいずれかが、予め定めた閾値を超えた場合（第５の場合）、該当するキーのサマリ情報をサマリテーブル１０７から外部に出力すると同時にメモリから削除することができる。同様に第２の場合あるいは第３の場合は、サマリテーブル１０７に存在するすべてのキーについてのサマリを一度に出力するとともにサマリテーブル１０７をすべてクリアするか、あるいは予め定めた数のキーをランダムに選択し、該当するキーのサマリのみ出力し、該サマリのみをサマリテーブル１０７からクリアしてもよい。さらに第４の場合、第５の場合、第２の場合、第３の場合のそれぞれによるサマリの出力はすべてを同時に適用してもよいし、任意の組み合わせのみを適用してもよい。
【００３３】
前記統計出力部１０３が出力したトラヒックサマリは統計集約部１１１によって収集し、メモリ１１２上で管理される。統計集約部１１１は調節可能な周期毎（例えば１分）に収集したデータを集約する。その収集したデータの例を図５に示す。図に示すように、複数のサマリを持つキーが存在する。そのような複数サマリを持つキーの情報を以下のように集約する。ここでは図中に網掛けで示した発ホスト１９２．１６８．２３．１１を例にして説明する。まず初期到着時刻は一番古いものを、最終到着時刻は一番新しい時刻をそれぞれ採用する。すなわち、初期到着時刻は０であり、最終到着時刻は１３８となる。パケット数などの累積値はそれぞれを加算する。すなわち、１３１＋１２９＋３２＝２９２となる。最後に異なる着アドレス数は、複数のビットマップの情報を用いる。ここでは分割数が３の場合をとりあげるが、一般に任意の分割数に対して適用可能である。分割した３つのサマリに対応する着アドレスの集合をそれぞれＡ、Ｂ、Ｃとする。求めるべき異なり数は、これらの集合の和集合のサイズ｜Ａ∪Ｂ∪Ｃ｜である。サマリＸのビットマップをｂ_Ｘとする。またビットマップＸにおいてビットに１が立っている数をｖ(Ｘ)とする。このとき｜Ａ∪Ｂ∪Ｃ｜は（１）式を用い、次式によって推定することができる。
｜Ａ∪Ｂ∪Ｃ｜≒ｆ(ｖ(ｂ_Ａ∨ｂ_Ｂ∨ｂ_Ｃ))
ただし、∨はビットマップの論理和を示す演算子である。また、ｆ(  )は、式（１）に関して述べたように、異なり数の推定値である。
【００３４】
和集合のサイズを求める場合に、以下のように集合に関する包除原理を適用し、ビットマップの論理積の演算によって求めることも可能である。
｜Ａ∪Ｂ∪Ｃ｜＝｜Ａ｜＋｜Ｂ｜＋｜Ｃ｜
−｜Ａ∩Ｂ｜−｜Ａ∩Ｃ｜−｜Ｂ∩Ｃ｜
＋｜Ａ∩Ｂ∩Ｃ｜
≒ｆ(ｖ(ｂ_Ａ))＋ｆ(ｖ(ｂ_Ｂ))＋ｆ(ｖ(ｂ_Ｃ))
−ｆ(ｖ_Ａ∧ｂ_Ｂ))−ｆ(ｖ(ｂ_Ａ∧ｂ_Ｃ))−ｆ((ｂ_Ｂ∧ｂ_Ｃ))
＋ｆ(ｖ(ｂ_Ａ∧ｂ_Ｂ∧ｂ_Ｃ))
ここに∧はビットマップの論理積をあらわす演算子である。
【００３５】
以上で示したような分割したサマリの集約は連続した時間で計測した複数のサマリのみならず、異なる時間帯で計測した複数のサマリ、あるいは異なる場所で観測した同一のキーに対する複数サマリ、あるいはキーの集合（例えばあるネットワークプレフィックスに属するホストの集合など）に対しても適用することができる。
【００３６】
データ集約後は重複していたサマリを単一のサマリに収めることができる。これらの集約後のサマリは更に定期的に２次的な記録媒体に蓄積してもよいし、メモリ上にすべてを保持しておくか、あるいはある項目が上位Ｎ番目までのサマリなど、一部のサマリのみをメモリ上に記憶しておくなど、任意の処理を行うことが可能である。
【００３７】
すなわち、統計集約部１１１は、統計出力部１０３から出力されたすべてのサマリを記録・管理し、任意に調節が可能な周期が到来する毎に、前記管理したサマリを参照して同一のキーに関するサマリを集約する機能を有する。特に異なり数については、あるキーＸに関する複数（一般にｎ個）のビットマップ情報ｂ(Ｘ１)、ｂ(Ｘ２)、ｂ(Ｘ３)、…、ｂ(Ｘｎ)の論理和ｂ(Ｘ１∪Ｘ２∪…∪Ｘｎ)のビットマップを用いてキーＸに関する異なり数を推定するとともに、前記集約したトラヒックサマリを保存しておくことができる。また前記集約は周期が到来する毎に実施してもよいし、統計出力部１０３から出力されるごとに実施しても構わない。
【００３８】
また、統計集約部１１１では、上記の集約以外に、任意のキーの集合に対し、任意の時間周期での集約するようにしてもよい。
【００３９】
以上説明した装置はコンピュータとプログラムによって構成できる。また、そのプログラムの一部または全部の代わりにハードウェアを用いて構成してもよい。また、以上に説明したように各部が処理を行うことにより、トラヒックサマリ集約方法が実行される。
【００４０】
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【図面の簡単な説明】
【００４１】
【図１】本発明のトラヒック情報集約システムの実施例を示すブロック図である。
【図２】ネットワーク上に配置する実施例を示すブロック図である。
【図３】サマリテーブルの具体例を示す図である。
【図４】ビット１の数によるサマリの出力を示すフローチャート図である。
【図５】統計集約部が受信するトラヒックサマリの例を示す図である。
【符号の説明】
【００４２】
１００…トラヒックサマリ計測装置、１０１…パケット計測部、１０２…統計記録部、１０３…統計出力部、１０４…時刻管理部、１０５…メモリ、１０６…フィルタリストその他のパラメタ、１０７…サマリテーブル、１１０…トラヒックサマリ集約装置、１１１…統計集約部、１１２…メモリ、２００…ネットワーク
【図１】
2007221612.tif 000003
【図２】
2007221612.tif 000004
【図３】
2007221612.tif 000005
【図４】
2007221612.tif 000006
【図５】
2007221612.tif 000007