(57)【要約】【課題】パケットフロー統計値の取得処理を負荷分散させると共に、異なり数を正確に集計する。【解決手段】パケットフロー統計値取得システムは、パケットフローを特徴付ける複数の特徴アイテムのうち、１以上の特徴アイテムの値に基づきパケットフロー統計を得る複数統計収集装置（第１及び第２の統計収集装置グループにそれぞれ少なくとも１つ属する）と、第１及び第２の統計収集装置グループに属する統計収集装置にそれぞれ接続され、第１のキーアイテムの値に応じて第１の統計収集装置グループのいずれか１つに、受信したパケットのうち少なくとも複数の特徴アイテムの値を送信すると共に、第１のキーアイテムとは異なる第２のキーアイテムの値に応じて第２の統計収集装置グループのいずれか１つに、受信したパケットのうち少なくとも複数の特徴アイテムの値を送信する負荷分散装置と、を備える。【選択図】図１
2011049794.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して送受信されるパケットに基づき、パケットフローに関する統計値であるパケットフロー統計値を得るためのパケットフロー統計値取得システムであって、
前記パケットのヘッダに含まれている前記パケットフローを特徴付ける複数のアイテムである複数の特徴アイテムのうち、１つ以上の特徴アイテムの値に基づき前記パケットフロー統計値を得る複数の統計収集装置であって、
少なくとも１つの前記統計収集装置は、第１の統計収集装置グループに属し、
前記第１の統計収集グループに属する前記統計収集装置とは異なる少なくとも１つの前記統計収集装置は、第２の統計収集装置グループに属する、複数の統計収集装置と、
前記第１及び第２の統計収集装置グループに属する前記統計収集装置にそれぞれ接続され、前記ネットワークから前記パケットを受信する負荷分散装置であって、
前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせである第１のキーアイテムの値に応じて前記第１の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信すると共に、
前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせであり前記第１のキーアイテムとは異なる第２のキーアイテムの値に応じて前記第２の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信する負荷分散装置と、
を備える、パケットフロー統計値収集システム。
【請求項２】
請求項１に記載のパケットフロー統計値取得システムにおいて、さらに、
前記第１及び第２の統計収集装置グループに属する前記統計収集装置にそれぞれ接続された統計集約装置を備え、
前記第１及び第２の統計収集装置グループに属する前記統計収集装置は、それぞれ前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を前記統計集約装置に送信し、
前記統計集約装置は、前記複数の特徴アイテムのうち、前記第１及び第２のキーアイテムとは異なる１つ以上の前記特徴アイテムの値に基づき前記パケットフロー統計を得る、パケットフロー統計値取得システム。
【請求項３】
請求項２に記載のパケットフロー統計値取得システムにおいて、
前記統計集約装置は、前記パケットフロー統計値を出力する統計情報出力部を有し、
前記第１及び第２の統計収集装置グループに属する前記統計収集装置は、それぞれ得られた前記パケットフロー統計値を前記統計集約装置に送信し、
前記統計情報出力部は、
前記第１及び第２のキーアイテムのうち前記第１のキーアイテムのみを含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第１の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力し、
前記第１及び第２のキーアイテムのうち前記第２のキーアイテムのみを含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第２の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力し、
前記第１のキーアイテムと前記第２のキーアイテムとのいずれも含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第１の統計収集装置グループ及び前記第２の統計収集装置グループのいずれか一方の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力する、パケットフロー統計値取得システム。
【請求項４】
請求項１ないし請求項３のいずれかに記載のパケットフロー統計値取得システムにおいて、
前記特徴アイテムは、送信元ＩＰアドレスと、宛先ＩＰアドレスと、上位プロトコル種別と、送信元ポート番号と、宛先ポート番号とのうち、少なくとも２つを含む、パケットフロー統計値取得システム。
【請求項５】
請求項４に記載のパケットフロー統計値取得システムにおいて、
前記第１のキーアイテムは、送信元ＩＰアドレスであり、
前記第２のキーアイテムは、宛先ＩＰアドレスである、パケットフロー統計値取得システム。
【請求項６】
ネットワークを介して送受信されるパケットに基づき、パケットフローに関する統計値であるパケットフロー統計値を得るためのパケットフロー統計値取得方法であって、
（ａ）前記パケットのヘッダに含まれている前記パケットフローを特徴付ける複数のアイテムである複数の特徴アイテムのうち、１つ以上の特徴アイテムの値に基づき前記パケットフロー統計値を得る複数の統計収集装置であって、少なくとも１つの前記統計収集装置は、第１の統計収集装置グループに属し、前記第１の統計収集グループに属する前記統計収集装置とは異なる少なくとも１つの前記統計収集装置は、第２の統計収集装置グループに属する、複数の統計収集装置を用意する工程と、
（ｂ）前記ネットワークを介して前記パケットを取得する工程と、
（ｃ）前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせである第１のキーアイテムの値に応じて前記第１の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信すると共に、前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせであり前記第１のキーアイテムとは異なる第２のキーアイテムの値に応じて前記第２の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信する工程と、
を備える、パケットフロー統計値取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して送受信されるパケットに基づきパケットフローに関する統計値を取得する技術に関する。
【背景技術】
【０００２】
ＡＤＳＬ（Asymmetric Digital Subscriber Line）や、ＦＴＴＨ（Fiber To The Home）技術の発達により、ネットワークのブロードバンド化が進み、通信データ量が増加している。これに伴い、通信事業者やＩＳＰ（Internet Services Provider）において、通信品質の向上やアプリケーションの最適化等を目的として、実際に送受信されるパケットに基づき、パケットの送信元及び宛先，ＴＣＰ／ＵＤＰポート番号，上位プロトコル種別等により分類されるパケット群（以下、「パケットフロー」と呼ぶ）に関する統計値（以下、「パケットフロー統計値」と呼ぶ）の取得が求められている。そこで、パケットのヘッダに記述されているパケットフローを特徴付けるアイテム（送信元ＩＰアドレスや、宛先ＩＰアドレスや、上記プロトコル種別や、送信元ＴＣＰ／ＵＤＰポート番号や、宛先ＴＣＰ／ＵＤＰポート番号等）に基づき、これらアイテムの組み合わせが同一のパケットの数をカウントすることで、パケットフロー毎の通信量を集計する技術が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−５４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記パケットフロー毎の通信量を集計する技術では、高速データ通信においてパケットフロー統計値（例えば、パケットフロー毎の通信量）を取得する処理を実行する場合、パケットをバッファするメモリへのアクセス速度がボトルネックとなり、パケットフロー統計値を正確に取得することが困難となっていた。そこで、パケットフロー統計値の取得処理の負荷を分散させるために、複数の統計収集装置に対して、ロードバランサを用いてパケットフロー単位で処理を分散させる方法が考えられる。
【０００５】
しかしながら、このような負荷分散方法では、所定のアイテムについての異なり数（一部のアイテムの値が一致するパケットの種類数）を正確に取得することが困難になるという問題があった。具体的には、例えば、「送信元ＩＰアドレス」が同一であり「宛先ＩＰアドレス」が互いに異なるパケットの種類数（異なり数）を集計しようとする場合、送信元ＩＰアドレスが同一であるパケットは各統計収集装置に分散されて集計されている可能性がある。したがって、全ての統計収集装置からパケットフロー毎のパケット数を集め、これらのパケット数の中から、条件に合致するパケット数を抽出して集計しなければならず、正確な異なり数を取得できないおそれがあった。
【０００６】
また、或る期間における異なり数を正確に集計しようとすると、各統計収集装置からパケットフロー統計値（パケットフロー毎のパケット数）を出力するタイミングを合わせなければならないため、高い頻度で発生するパケットフローのパケットを集計する統計収集装置においては、出力タイミングまでの間に多数のパケットフロー統計値を記憶しておかねばならず、パケットフロー統計値を記憶するための記憶容量が不足するという問題があった。
【０００７】
本発明は、パケットフロー統計値の取得処理を負荷分散させると共に、異なり数を正確に集計することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００９】
［適用例１］ネットワークを介して送受信されるパケットに基づき、パケットフローに関する統計値であるパケットフロー統計値を得るためのパケットフロー統計値取得システムであって、前記パケットのヘッダに含まれている前記パケットフローを特徴付ける複数のアイテムである複数の特徴アイテムのうち、１つ以上の特徴アイテムの値に基づき前記パケットフロー統計値を得る複数の統計収集装置であって、少なくとも１つの前記統計収集装置は、第１の統計収集装置グループに属し、前記第１の統計収集グループに属する前記統計収集装置とは異なる少なくとも１つの前記統計収集装置は、第２の統計収集装置グループに属する、複数の統計収集装置と、前記第１及び第２の統計収集装置グループに属する前記統計収集装置にそれぞれ接続され、前記ネットワークから前記パケットを受信する負荷分散装置であって、前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせである第１のキーアイテムの値に応じて前記第１の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信すると共に、前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせであり前記第１のキーアイテムとは異なる第２のキーアイテムの値に応じて前記第２の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信する負荷分散装置と、を備える、パケットフロー統計値収集システム。
【００１０】
適用例１のパケットフロー統計値取得システムでは、第１のキーアイテムの値に応じて第１の統計収集装置グループのいずれか１つの統計収集装置に少なくとも複数の特徴アイテムの値を送信すると共に、第２のキーアイテムの値に応じて第２の統計収集装置グループのいずれか１つの統計収集装置に少なくとも複数の特徴アイテムの値を送信するので、第１のキーアイテムの値に基づくパケットフロー統計値の取得と、第２のキーアイテムの値に基づくパケットフロー統計値の取得とを負荷分散できる。また、第１のキーアイテムが同一の値であるパケットについては、第１の統計収集装置グループのいずれか１つの統計収集装置に送信されるので、複数の統計収集装置で取得されたパケットフロー統計値を集約する必要がない。同様に、第２のキーアイテムが同一の値であるパケットについては、第２の統計収集装置グループのいずれか１つの統計収集装置に送信されるので、複数の統計収集装置で取得されたパケットフロー統計値を集約する必要がない。したがって、第１のキーアイテムが同一のパケットについてのパケット数等のパケットフロー統計値や、異なり数を正確に取得することができると共に、各統計収集装置において、他の統計収集装置においてパケットフロー統計値が取得されるまで、パケットフロー統計値や受信したパケットを記憶しておく必要がないので、パケットフロー統計値や受信したパケットを記憶するための記憶容量が不足することを抑制できる。
【００１１】
［適用例２］適用例１に記載のパケットフロー統計値取得システムにおいて、さらに、前記第１及び第２の統計収集装置グループに属する前記統計収集装置にそれぞれ接続された統計集約装置を備え、前記第１及び第２の統計収集装置グループに属する前記統計収集装置は、それぞれ前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を前記統計集約装置に送信し、前記統計集約装置は、前記複数の特徴アイテムのうち、前記第１及び第２のキーアイテムとは異なる１つ以上の前記特徴アイテムの値に基づき前記パケットフロー統計を得る、パケットフロー統計値取得システム。
【００１２】
このような構成により、第１のキーアイテム及び第２のキーアイテムとは異なる１つ以上の特徴アイテムの値についても、パケットフロー統計値を取得することができる。
【００１３】
［適用例３］適用例２に記載のパケットフロー統計値取得システムにおいて、前記統計集約装置は、前記パケットフロー統計値を出力する統計情報出力部を有し、前記第１及び第２の統計収集装置グループに属する前記統計収集装置は、それぞれ得られた前記パケットフロー統計値を前記統計集約装置に送信し、前記統計情報出力部は、前記第１及び第２のキーアイテムのうち前記第１のキーアイテムのみを含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第１の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力し、前記第１及び第２のキーアイテムのうち前記第２のキーアイテムのみを含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第２の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力し、前記第１のキーアイテムと前記第２のキーアイテムとのいずれも含む１つ以上の前記特徴アイテムに基づき得られた前記パケットフロー統計値については、前記第１の統計収集装置グループ及び前記第２の統計収集装置グループのいずれか一方の統計収集装置グループに属する前記統計収集装置から受信した前記パケットフロー統計値を出力する、パケットフロー統計値取得システム。
【００１４】
このような構成により、第１及び第２のキーアイテムのうち第１のキーアイテムのみを含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値については、第１の統計収集装置グループに属する統計収集装置から受信したパケットフロー統計値を出力するので、第１及び第２のキーアイテムのうち第１のキーアイテムのみを含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値として、正確な値を出力することができる。これは、第１のキーアイテムのみを含む１つ以上の特徴アイテムに基づくパケットフロー統計値は、第１の統計収集装置グループに属する統計収集装置においてのみ正確に取得できるからである。また、第１及び第２のキーアイテムのうち第２のキーアイテムのみを含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値については、第２の統計収集装置グループに属する統計収集装置から受信したパケットフロー統計値を出力するので、第１及び第２のキーアイテムのうち第２のキーアイテムのみを含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値として、正確な値を出力することができる。これは、第２のキーアイテムのみを含む１つ以上の特徴アイテムに基づくパケットフロー統計値は、第２の統計収集装置グループに属する統計収集装置においてのみ正確に取得できるからである。また、第１のキーアイテムと第２のキーアイテムとのいずれも含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値については、第１の統計収集装置グループ及び第２の統計収集装置グループのいずれか一方の統計収集装置グループに属する統計収集装置から受信したパケットフロー統計値を出力するので、第１のキーアイテムと第２のキーアイテムとのいずれも含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値として、正確な値を出力することができる。これは、第１のキーアイテムと第２のキーアイテムとのいずれも含む１つ以上の特徴アイテムに基づき得られたパケットフロー統計値は、第１の統計収集装置グループと第２の統計収集装置グループとで同じ値を重複して取得できるため、いずれか一方からのパケットフロー統計値を出力することで、重複したパケットフロー統計値の出力を抑制できるからである。
【００１５】
［適用例４］適用例１ないし適用例３のいずれかに記載のパケットフロー統計値取得システムにおいて、前記特徴アイテムは、送信元ＩＰアドレスと、宛先ＩＰアドレスと、上位プロトコル種別と、送信元ポート番号と、宛先ポート番号とのうち、少なくとも２つを含む、パケットフロー統計値取得システム。
【００１６】
このような構成により、送信元ＩＰアドレスと、宛先ＩＰアドレスと、上位プロトコル種別と、送信元ポート番号と、宛先ポート番号とのうち、いずれか２つをキーアイテムとして設定することができる。
【００１７】
［適用例５］適用例４に記載のパケットフロー統計値取得システムにおいて、前記第１のキーアイテムは、送信元ＩＰアドレスであり、前記第２のキーアイテムは、宛先ＩＰアドレスである、パケットフロー統計値取得システム。
【００１８】
このような構成により、送信元ＩＰアドレスに基づくパケットフロー統計値、及び宛先ＩＰアドレスに基づくパケットフロー統計値の取得処理の負荷を分散させることができると共に、送信元ＩＰアドレスが同一のパケットについての異なり数、及び宛先ＩＰアドレスが同一のパケットについての異なり数を正確に集計（取得）することができる。
【００１９】
［適用例６］ネットワークを介して送受信されるパケットに基づき、パケットフローに関する統計値であるパケットフロー統計値を得るためのパケットフロー統計値取得方法であって、（ａ）前記パケットのヘッダに含まれている前記パケットフローを特徴付ける複数のアイテムである複数の特徴アイテムのうち、１つ以上の特徴アイテムの値に基づき前記パケットフロー統計値を得る複数の統計収集装置であって、少なくとも１つの前記統計収集装置は、第１の統計収集装置グループに属し、前記第１の統計収集グループに属する前記統計収集装置とは異なる少なくとも１つの前記統計収集装置は、第２の統計収集装置グループに属する、複数の統計収集装置を用意する工程と、（ｂ）前記ネットワークを介して前記パケットを取得する工程と、（ｃ）前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせである第１のキーアイテムの値に応じて前記第１の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信すると共に、前記複数の特徴アイテムのいずれか１つ又は複数の前記特徴アイテムの組み合わせであり前記第１のキーアイテムとは異なる第２のキーアイテムの値に応じて前記第２の統計収集装置グループのいずれか１つの前記統計収集装置に、前記受信したパケットのうち少なくとも前記複数の特徴アイテムの値を送信する工程と、を備える、パケットフロー統計値取得方法。
【００２０】
適用例６のパケットフロー統計値取得方法では、第１のキーアイテムの値に応じて第１の統計収集装置グループのいずれか１つの統計収集装置に少なくとも複数の特徴アイテムの値を送信すると共に、第２のキーアイテムの値に応じて第２の統計収集装置グループのいずれか１つの統計収集装置に少なくとも複数の特徴アイテムの値を送信するので、第１のキーアイテムの値に基づくパケットフロー統計値の取得と、第２のキーアイテムの値に基づくパケットフロー統計値の取得とを負荷分散できる。また、第１のキーアイテムが同一の値であるパケットについては、第１の統計収集装置グループのいずれか１つの統計収集装置に送信されるので、複数の統計収集装置で取得されたパケットフロー統計値を集約する必要がない。同様に、第２のキーアイテムが同一の値であるパケットについては、第２の統計収集装置グループのいずれか１つの統計収集装置に送信されるので、複数の統計収集装置で取得されたパケットフロー統計値を集約する必要がない。したがって、第１のキーアイテム又は第２のキーアイテムが同一のパケットについてのパケット数等のパケットフロー統計値や、異なり数を正確に取得することができると共に、各統計収集装置において、他の統計収集装置においてパケットフロー統計値が取得されるまで、パケットフロー統計値や受信したパケットを記憶しておく必要がないので、パケットフロー統計値や受信したパケットを記憶するための記憶容量が不足することを抑制できる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施例としてのパケットフロー統計値取得システムの概略構成を示す説明図である。
【図２】図１に示す負荷分散装置２０の機能ブロック図である。
【図３】図２に示す負荷分散出力先テーブル２３４の設定内容を示す説明図である。
【図４】図１に示す第１，２統計収集装置３１，３２の機能ブロック図である。
【図５】第１統計収集装置３１が備えるＳＩＰテーブルの内容を示す説明図である。
【図６】第１統計収集装置３１が備えるＳＩＰ−ＤＩＰテーブルの内容を示す説明図である。
【図７】第１統計収集装置３１が備えるＤＰＴテーブルの内容を示す説明図である。
【図８】図１に示す第３，４統計収集装置３３，３４の機能ブロック図である。
【図９】第３統計収集装置３３が備えるＤＩＰテーブルの内容を示す説明図である。
【図１０】図１に示す統計集約装置４０の機能ブロック図である。
【図１１】制御情報蓄積バッファ４１３に格納される制御情報を示す説明図である。
【図１２】４つの統計収集装置３１〜３４において実行されるフローテーブル生成処理の手順を示すフローチャートである。
【図１３】ネットワークシステム１００において送受信されたパケットを模式的に示す説明図である。
【図１４】図１３に示す各パケットが送受信された後の各統計収集装置３１〜３４におけるフローテーブルの設定内容を示す説明図である。
【図１５】異なり数カウント非対象フローテーブルについてのフローテーブル更新処理の手順を示すフローチャートである。
【図１６】異なり数カウント対象フローテーブルについてのフローテーブル更新処理の手順を示すフローチャートである。
【図１７】各フローテーブルの更新処理を実行した結果の一例を示す説明図である。
【図１８】統計集約装置４０において実行される統計情報出力処理の手順を示すフローチャートである。
【図１９】図１８に示すフローデータ集約処理（Ｓ４４５）の詳細手順を示すフローチャートである。
【図２０】図１０に示すフローデータ集約テーブル４２１ａの設定内容を示す説明図である。
【図２１】第２の実施例におけるパケットフロー統計値取得システムの概略構成を示す説明図である。
【図２２】図２１に示すフロー一次集約装置６０の機能ブロック図である。
【図２３】図２２に示す一次集約テーブル６３ａの設定内容を示す説明図である。
【図２４】第３の実施例におけるパケットフロー統計値取得システムの概略構成を示す説明図である。
【図２５】制御情報生成部４１４が実行する負荷分散出力先テーブル生成処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００２２】
Ａ．第１の実施例：
Ａ１．システム構成：
図１は、本発明の一実施例としてのパケットフロー統計値取得システムの概略構成を示す説明図である。パケットフロー統計値取得システム１０は、ネットワークシステム１００に接続され、ネットワークシステム１００において送受信されるパケットに基づき、ネットワークシステム１００内のパケットフローに関する統計値（以下、「パケットフロー統計値」と呼ぶ）を取得する。本実施例において、「パケットフロー」とは、各パケットのヘッダに記載されたアイテムにより分類されるパケット群を意味する。「ヘッダに記載されたパケットフローを分類するためのアイテム」とは、本実施例では、送信元ＩＰアドレスと、宛先ＩＰアドレスと、送信元ＴＣＰポート番号（以下、単に「送信元ポート番号」と呼ぶ）と、宛先ポート番号と、上記プロトコル種別とを意味する。
【００２３】
パケットフロー統計値取得システム１０は、負荷分散装置２０と、４つの統計収集装置（第１〜４統計収集装置）３１〜３４と、統計集約装置４０と、管理用端末５０とを備えている。
【００２４】
負荷分散装置２０は、ネットワークシステム１００及び４つの統計収集装置３１〜３４にそれぞれ接続されており、ネットワークシステム１００からパケットを取得し、取得したパケットのアイテムの値に応じて、４つの統計収集装置３１〜３４のうち、後述のキーアイテムの数に相当する台数（本実施例では２台）の統計収集装置に取得したパケットを転送する。
【００２５】
４つの統計収集装置３１〜３４は、それぞれ負荷分散装置２０及び統計集約装置４０に接続されており、負荷分散装置２０から受信したパケットに基づき、所定のパケットフロー統計値を取得して統計集約装置４０に送信する。各統計収集装置３１〜３４において取得されるパケットフロー統計値の詳細は後述する。図１の例では、各統計収集装置３１〜３４には、予め各統計収集装置を識別する識別子（装置ＩＤ）が設定されている。具体的には、第１統計収集装置３１には、装置ＩＤ「Ａ」が設定されている。同様に、第２統計収集装置３２には装置ＩＤ「Ｂ」が、第３統計収集装置３３には装置ＩＤ「Ｃ」が、第４統計収集装置３４には装置ＩＤ「Ｄ」が、それぞれ設定されている。なお、これら装置ＩＤ「Ａ」〜「Ｄ」に代えて、各統計収集装置３１〜３４のＭＡＣ（Media Access Control）アドレスをＩＤとして設定することもできる。
【００２６】
統計集約装置４０は、４つの統計収集装置３１〜３４と、負荷分散装置２０と、管理用端末５０とに接続されている。統計集約装置４０は、４つの統計収集装置３１〜３４から得られたパケットフロー統計値を集約して統計情報として出力する。統計情報の出力先としては、例えば、パケットフロー統計値をグラフや表にして表示する統計管理用端末（図示省略）や、統計情報を蓄積するストレージ装置（図示省略）などを採用することができる。また、統計集約装置４０は、負荷分散装置２０及び４つの統計収集装置３１〜３４を制御する。
【００２７】
管理用端末５０は、システム管理者が、パケットフロー統計値を取得及び集約を行うために必要なパラメータ（以下、「制御情報」と呼ぶ）を、統計集約装置４０に設定するために用いられる端末である。なお、統計集約装置４０に設定される制御情報の詳細は後述する。
【００２８】
ネットワークシステム１００の概略構成について説明する。図１の左側に示すように、ネットワークシステム１００は、相互に接続された３つのルータ９１〜９３と、２台のサーバ（第１，２サーバ）９７，９８と、３台の端末（第１〜３端末）９４〜９６とを備えている。第１サーバ９７は、ルータ９２に接続されている。第２サーバ９８は、ルータ９３に接続されている。３台の端末９４〜９６は、ルータ９１に接続されている。なお、前述のパケットフロー統計値取得システム１０の負荷分散装置２０は、ルータ９１に接続されている。ルータ９１は、いわゆるミラーリング機能を有しており、他のルータ９２，９３や各端末９４〜９６に転送するパケットをコピーして、負荷分散装置２０に送信する。なお、各パケットをコピーして負荷分散装置２０に送信する技術として、ミラーリングに代えて、ＲＦＣ（Request For Comment）３１７６で規定されているｓＦｌｏｗを採用することもできる。
【００２９】
ネットワークシステム１００では、各端末９４〜９６は、各サーバ９７，９８との間において、それぞれレイヤ３（ＯＳＩ参照モデルにおける第３層（ネットワーク層））の通信を行うことができる。本実施例では、レイヤ３のプロトコルとしてＩＰ（Internet Protocol）を採用するが、ＩＰに代えて、ＩＰＸ（Internetwork Packet eXchange）等の他のプロトコルを採用することもできる。また、本実施例では、レイヤ４（ＯＳＩ参照モデルにおける第４層（トランスポート層））のプロトコルとしてＴＣＰ（Transmission Control Protocol）を採用するが、ＴＣＰに代えて、ＵＤＰ（User Datagram Protocol）等の他のプロトコルを採用することもできる。
【００３０】
３台の端末９４〜９６及び２台のサーバ９７，９８には、それぞれ予めＩＰアドレスが設定されている。具体的には、第１端末９４にはＩＰアドレス「Ｘ１」が設定されている。同様に、第２端末９５にはＩＰアドレス「Ｘ２」が、第３端末にはＩＰアドレス「Ｘ３」が、第１サーバ９７にはＩＰアドレス「Ｙ１」が、第２サーバ９８にはＩＰアドレス「Ｙ２」が、それぞれ予め設定されている。なお、各ルータ９１〜９３のポートにもそれぞれＩＰアドレスが予め設定されているが、図１では記載を省略している。また、上述した各ＩＰアドレスは、説明の便宜上、模式的に表わしているが、実際には、ＩＰｖ４又はＩＰｖ６の規定に従ったＩＰアドレスが、それぞれ設定されている。
【００３１】
図２は、図１に示す負荷分散装置２０の機能ブロック図である。負荷分散装置２０は、４つの出力ポートＯＰ１〜ＯＰ４と、制御部２１と、パケット受信部２２と、検索部２３と、パケット送信部２４とを備えている。各機能部２１〜２４は、図示しないメモリ内のプログラムを図示しないマイクロプロセッサが実行することにより実現される。或いは、ＡＩＳＣ（Application Specific Integrated Circuit）により各機能部２１〜２４を構成することもできる。
【００３２】
第１出力ポートＯＰ１は、第１統計収集装置３１に接続されている。同様に、第２出力ポートＯＰ２は第２統計収集装置３２に、第３出力ポートＯＰ３は第３統計収集装置３３に、第４出力ポートＯＰ４は第４統計収集装置３４に、それぞれ接続されている。これら４つの出力ポートＯＰ１〜ＯＰ４は、それぞれ接続されている統計収集装置３１〜３４に対してパケットを出力（送信）するためのポート（物理的なインタフェース）である。
【００３３】
制御部２１は、パケット受信部２２，検索部２３，パケット送信部２４，及び統計集約装置４０に接続され、統計集約装置４０からの制御情報に基づき、各機能部２２〜２４を制御する。
【００３４】
パケット受信部２２は、アイテム抽出部２２１とパケット転送部２２２とを備えている。アイテム抽出部２２１は、ルータ９１から出力されたパケットを受信して、ヘッダに記述されている各アイテム（送信元ＩＰアドレス（ＳＩＰ），宛先ＩＰアドレス（ＤＩＰ），送信元ポート番号（ＳＰＴ），宛先ポート番号（ＤＰＴ），上位プロトコル種別（ＰＴＲ））の値を抽出して、検索部２３に送信すると共に、受信したパケットをパケット転送部２２２に送信する。パケット転送部２２２は、アイテム抽出部２２１から受信したパケットを図示しないバッファに蓄積すると共に、検索部２３から通知された出力先に対して、バッファに蓄積されたパケットを送信する。後述するように、検索部２３からは２つの出力先が通知されるので、パケット転送部２２２は、バッファに蓄積されたパケットを２つの出力先にコピーして送信する。
【００３５】
検索部２３は、キーアイテム抽出部２３１と、ハッシュ演算部２３２と、出力先決定部２３３とを備え、パケット受信部２２により受信したパケットの出力先の出力ポートを決定する。
【００３６】
キーアイテム抽出部２３１は、アイテム抽出部２２１から受信した各アイテムの値のうち、キーアイテムの値を抽出してハッシュ演算部２３２に渡す。キーアイテムとは、４つの統計収集装置３１〜３４のうち、パケットの転送先の統計収集装置を決定するために用いられるアイテムであり、予めシステム管理者によって定められる。なお、本実施例では、後述するように、キーアイテムとして「ＳＩＰ」と「ＤＩＰ」とが予め定められている。
【００３７】
ハッシュ演算部２３２は、キーアイテム抽出部２３１から受信したキーアイテムの値を、所定のハッシュ関数に代入してハッシュ値を求め、得られたハッシュ値を出力先決定部２３３に送信する。本実施例では、ハッシュ関数として、任意の範囲の整数値（例えば、１〜２５４）のいずれかを得ることができる任意の関数を採用することができる。
【００３８】
出力先決定部２３３は、負荷分散出力先テーブル２３４を備え、ハッシュ演算部２３２から受信したハッシュ値に基づき、負荷分散出力先テーブル２３４を参照してパケットの出力先を決定し、決定した出力先の情報をパケット受信部２２のパケット転送部２２２に通知する。
【００３９】
図３は、図２に示す負荷分散出力先テーブル２３４の設定内容を示す説明図である。負荷分散出力先テーブル２３４は、キーアイテムとグループＩＤと出力ポートとを互いに対応付けている。キーアイテムフィールドは、キーアイテムを示す。グループＩＤフィールドは、４つの統計収集装置３１〜３４のうち、パケットの分散先となる１つ以上の統計収集装置からなる統計収集装置群の識別子を示す。出力ポートフィールドは、４つの出力ポートＯＰ１〜ＯＰ４のうち、パケットを転送する際に用いる出力ポートを示す。
【００４０】
図３の例では、２つのキーアイテム（ＳＩＰ，ＤＩＰ）に対応した２つのエントリ（第１，２エントリ）が負荷分散出力先テーブル２３４に設定されている。第１エントリでは、キーアイテム「ＳＩＰ」，グループＩＤ「ＧＩＤ１」，出力ポート「第１出力ポートＯＰ１（０），第２出力ポートＯＰ２（１）」が設定されている。グループＩＤ「ＧＩＤ１」とは、２台の統計収集装置３１，３２からなる統計収集装置群の識別子である。出力ポート「第１出力ポートＯＰ１（０）」とは、ハッシュ値を２で除算した余りの値が「０」である場合に、第１出力ポートＯＰ１を出力ポートとして選択することを意味する。出力ポート「第２出力ポートＯＰ２（１）」とは、ハッシュ値を２で除算した余りの値が「１」である場合に、第２出力ポートＯＰ２を出力ポートとして選択することを意味する。
【００４１】
負荷分散出力先テーブル２３４の第２エントリでは、キーアイテム「ＤＩＰ」，グループＩＤ「ＧＩＤ２」，出力ポート「第３出力ポートＯＰ３（０），第４出力ポートＯＰ４（１）」が設定されている。グループＩＤ「ＧＩＤ２」とは、２台の統計収集装置３３，３４からなる統計収集装置群の識別子である。出力ポート「第３出力ポートＯＰ３（０）」とは、ハッシュ値を２で除算した余りの値が「０」である場合に、第３出力ポートＯＰ３を出力ポートとして選択することを意味する。出力ポート「第４出力ポートＯＰ４（１）」とは、ハッシュ値を２で除算した余りの値が「１」である場合に、第４出力ポートＯＰ４を出力ポートとして選択することを意味する。
【００４２】
このような負荷分散出力先テーブル２３４を用いた出力先の具体的な決定方法は、以下の通りである。すなわち、出力先決定部２３３は、ハッシュ演算部２３２から受信したハッシュ値を２で除算して得られた余りの値に基づき、負荷分散出力先テーブル２３４の出力ポートフィールドを参照して出力ポートを決定する。例えば、ハッシュ値を２で除算した余りが「０」であれば、出力先決定部２３３は、第１出力ポートＯＰ１及び第３出力ポートＯＰ３を出力先として決定する。ハッシュ値を、２で除算して得られた余りは「０」か「１」となる。したがって、各グループＩＤと対応付けられた２つの出力ポートのうち、いずれかの出力ポートがパケットの出力先（転送先）として決定されるので、パケットは、合計２つの出力ポートに出力される。なお、出力先決定部２３３がハッシュ値を除算する際の値「２」は、各グループに属する統計収集装置の台数を意味する。したがって、ハッシュ値を２で割ることにより得られる余りは、「０」又は「１」の２通りとなるので、各グループにおいて、出力先の統計収集装置（出力ポート）が２つに分散される。
【００４３】
図２に示すパケット送信部２４は、４つの送信部２４１〜２４４を備えている。第１送信部２４１は、パケット受信部２２及び第１出力ポートＯＰ１に接続されており、パケット転送部２２２から出力されるパケットを、第１出力ポートＯＰ１を介して第１統計収集装置３１に送信する。第２送信部２４２は、パケット受信部２２及び第２出力ポートＯＰ２に接続されており、パケット転送部２２２から出力されるパケットを、第２出力ポートＯＰ２を介して第２統計収集装置３２に送信する。第３送信部２４３は、パケット受信部２２及び第３出力ポートＯＰ３に接続されており、パケット転送部２２２から出力されるパケットを、第３出力ポートＯＰ３を介して第３統計収集装置３３に送信する。第４層深部２４４は、パケット受信部２２及び第４出力ポートＯＰ４に接続されており、パケット転送部２２２から出力されるパケットを、第４出力ポートＯＰ４を介して第４統計収集装置３４に送信する。
【００４４】
図４は、図１に示す第１，２統計収集装置３１，３２の機能ブロック図である。２つの統計収集装置３１，３２は、互いに同じ構成を有しており、それぞれ、制御部３１１と、パケット受信部３１２と、組み合わせ生成部３１４と、フローテーブル制御部３１５と、メモリ３２０と、フローデータ出力部３１６とを備えている。各機能部３１１〜３１６は、図示しないメモリ内のプログラムを図示しないマイクロプロセッサが実行することにより実現される。或いは、ＡＩＳＣ（Application Specific Integrated Circuit）により各機能部２１〜２４を構成することもできる。
【００４５】
制御部３１１は、組み合わせ生成部３１４，フローテーブル制御部３１５，及び統計集約装置４０に接続され、統計集約装置４０からの制御情報に基づき、各機能部３１４，３１５を制御する。
【００４６】
パケット受信部３１２は、パケットパケット受信バッファ３ａを備え、負荷分散装置２０（第１出力ポートＯＰ１又は第３出力ポートＯＰ３）から送信されたパケットを受信してパケット受信バッファ３ａに格納する。
【００４７】
組み合わせ生成部３１４は、各アイテムのうち、制御部３１１から指定された集約アイテムの値（値の組み合わせ）を抽出してフローテーブル制御部３１５に渡す。集約アイテムとは、パケットフロー統計値を取得する際の基礎となるアイテムであり、予めシステム管理者によって定められる。本実施例では、第１，２統計収集装置に対し、集約アイテムとして「ＳＩＰ」と「ＳＩＰ−ＤＩＰ」と「ＤＰＴ」とが予め定められている。
【００４８】
フローテーブル制御部３１５は、メモリ３２０内に格納されているフローテーブル（後述）の生成及び更新を行うと共に、所定の条件に合致した場合に、各フローテーブルのエントリに設定されている値を、メモリ３２０から読み出してフローデータ出力部３１６に渡す。
【００４９】
メモリ３２０は、フローテーブル格納部３３０を備えており、フローテーブル格納部３３０にフローテーブルを格納する。図４の例では、フローテーブル格納部３３０には、３つのフローテーブル（ＳＩＰテーブル３３１，ＳＩＰ−ＤＩＰテーブル３３２，ＤＰＴテーブル３３３）が格納されている。
【００５０】
図５は、第１統計収集装置３１が備えるＳＩＰテーブルの内容を示す説明図である。図５では、第２統計収集装置３２が備えるＳＩＰテーブルと区別するために、第１統計収集装置３１が備えるＳＩＰテーブルに対して符号「３３１ａ」を付している。
【００５１】
ＳＩＰテーブル３３１ａは、集約アイテム「ＳＩＰ」と、統計情報とを対応付けている。集約アイテムフィールドは、集約アイテム「ＳＩＰ」の値を示す。統計情報フィールドは、パケット数フィールドと、バイト数フィールドと、開始時刻フィールドと、最終更新時刻フィールドと、異なり数フィールドと、その他フィールドとを備えている。パケット数フィールドは、集約アイテムフィールドの値と同一の値が設定されたパケットの数を示す。バイト数フィールドは、集約アイテムフィールドの値と同一の値が設定されたパケットにより送信されたデータ量を示す。開始時刻フィールドは、エントリを生成した時刻を示す。最終更新時刻は、エントリを最後に更新した時刻を示す。異なり数フィールドは、集約アイテムフィールドの値と同一の値が設定されたパケットであって、所定のアイテムの値が異なるパケットの種類数を示す。図５の例では、異なり数フィールドは、ＳＩＰの値が同一であって、ＤＩＰの値が異なるパケットの種類数を示す。その他フィールドは、パケット数，バイト数，開始時刻，最終更新時刻，及び異なり数とは異なる、他の統計値をカウントした値を示す。具体的には、例えば、ＴＣＰフラグのうちＳＹＮフラグが立っているパケットの数や、ＤＩＰの値ごとのパケット数の平均値，分散，中央値などを採用することができる。
【００５２】
図５の例では、エントリ番号「Ｅｓ１＿１」のエントリがＳＩＰテーブル３３１ａに記録されている。このエントリ（Ｅｓ１＿１）では、集約アイテム「Ｘ１」，パケット数「１０」，バイト数「ｂ１１」，開始時刻「ｔ１１」，最終更新時刻「ｔ１２」，異なり数「２」，その他「Ｎ１１」が設定されている。なお、各フィールドの値のうち、集約アイテムフィールド，パケット数フィールド及び異なり数フィールドを除く他のフィールドの値については、模式的な値を表している。
【００５３】
図６は、第１統計収集装置３１が備えるＳＩＰ−ＤＩＰテーブルの内容を示す説明図である。図６では、第２統計収集装置３２が備えるＳＩＰ−ＤＩＰテーブルと区別するために、第１統計収集装置３１が備えるＳＩＰ−ＤＩＰテーブルに対して符号「３３２ａ」を付している。
【００５４】
ＳＩＰ−ＤＩＰテーブル３３２ａは、集約アイテム「ＳＩＰ−ＤＩＰ」（すなわち、ＳＩＰとＤＩＰとの組み合わせ）と、統計情報とを対応付けている。集約アイテムフィールドは、ＳＩＰフィールドと、ＤＩＰフィールドとを備えている。ＳＩＰフィールドは、集約アイテム「ＳＩＰ−ＤＩＰ」のうち、ＳＩＰの値を示す。ＤＩＰフィールドは、集約アイテム「ＳＩＰ−ＤＩＰ」のうち、ＤＩＰの値を示す。なお、統計情報フィールドは、異なり数フィールドを備えていない点を除き、図５に示すＳＩＰテーブル３３１ａと同じであるので、説明を省略する。
【００５５】
図６の例では、エントリ番号「Ｅｓｄ１＿１」及び「Ｅｓｄ１＿２」の２つのエントリがＳＩＰ−ＤＩＰテーブル３３２ａに記録されている。エントリ（Ｅｓｄ１＿１）では、集約アイテム「Ｘ１，Ｙ１」，パケット数「６」，バイト数「ｂ２１」，開始時刻「ｔ２１」，最終更新時刻「ｔ２２」，その他「Ｎ２３」が設定されている。また、エントリ（Ｅｓｄ１＿２）では、集約アイテム「Ｘ１，Ｙ２」，パケット数「４」，バイト数「ｂ２２」，開始時刻「ｔ２２」，最終更新時刻「ｔ２４」，その他「Ｎ２４」が設定されている。なお、これらエントリの各フィールドの値のうち、集約アイテムフィールド及びパケット数フィールドを除く他のフィールドの値については、模式的な値を表している。
【００５６】
図７は、第１統計収集装置３１が備えるＤＰＴテーブルの内容を示す説明図である。図７では、第２統計収集装置３２が備えるＤＰＴテーブルと区別するために、第１統計収集装置３１が備えるＤＰＴテーブルに対して符号「３３３ａ」を付している。
【００５７】
ＤＰＴテーブル３３３ａは、集約アイテム「ＤＰＴ」と、統計情報とを対応付けている。集約アイテムフィールドは、集約アイテム「ＤＰＴ」の値を示す。なお、統計情報フィールドは、図５に示すＳＩＰテーブル３３１ａと同じであるので、説明を省略する。
【００５８】
図７の例では、エントリ番号「Ｅｄｐ１＿１」及び「Ｅｄｐ１＿２」の２つのエントリがＤＰＴテーブル３３３ａに記録されている。エントリ（Ｅｄｐ１＿１）では、集約アイテム「Ｐ１」，パケット数「６」，バイト数「ｂ３１」，開始時刻「ｔ３１」，最終更新時刻「ｔ３３」，その他「Ｎ３３」が設定されている。また、エントリ（Ｅｄｐ１＿２）では、集約アイテム「Ｐ２」，パケット数「４」，バイト数「ｂ３２」，開始時刻「ｔ３２」，最終更新時刻「ｔ３４」，その他「Ｎ３４」が設定されている。なお、これらエントリの各フィールドの値のうち、集約アイテムフィールド及びパケット数フィールドを除く他のフィールドの値については、模式的な値を表している。
【００５９】
図８は、図１に示す第３，４統計収集装置３３，３４の機能ブロック図である。２つの統計収集装置３３，３４は、互いに同じ構成を有している。ここで、２つの統計収集装置３３，３４は、ＳＩＰテーブル３３１に代えて、ＤＩＰテーブル３３３がフローテーブル格納部３３０に格納されている点を除き、図４に示す２つの統計収集装置３１，３２と同じ構成を有する。
【００６０】
図９は、第３統計収集装置３３が備えるＤＩＰテーブルの内容を示す説明図である。なお、図９では、第４統計収集装置３４が備えるＤＩＰテーブルと区別するために、第３統計収集装置３３が備えるＤＩＰテーブルに対して符号「３３４ｃ」を付している。
【００６１】
ＤＩＰテーブル３３４ｃは、集約アイテム「ＤＩＰ」と、統計情報とを対応付けている。集約アイテムフィールドは、集約アイテム「ＤＩＰ」の値を示す。統計情報フィールドは、異なり数フィールドが、ＤＩＰの値が同一であって、ＳＩＰの値が異なるパケット種類数を示す点を除き、図５に示すＳＩＰテーブル３３１ａと同じであるので、説明を省略する。
【００６２】
図９の例では、エントリ番号「Ｅｄ３＿１」のエントリがＤＩＰテーブル３３４ｃに記録されている。このエントリ（Ｅｄ３＿１）では、集約アイテム「Ｙ１」，パケット数「７」，バイト数「ｂ４１」，開始時刻「ｔ４１」，最終更新時刻「ｔ４２」，異なり数「２」，その他「Ｎ４１」が設定されている。なお、各フィールドの値のうち、集約アイテムフィールド，パケット数フィールド及び異なり数フィールドを除く他のフィールドの値については、模式的な値を表している。
【００６３】
図１０は、図１に示す統計集約装置４０の機能ブロック図である。統計集約装置４０は、システム制御部４１と、統計情報集約部４２とを備えている。
【００６４】
システム制御部４１は、パケットフロー統計値取得システム１０全体を制御するための機能部であり、統計収集装置制御部４１１と、負荷分散装置制御部４１２と、制御情報蓄積バッファ４１３と、制御情報生成部４１４と、制御部４１５とを備えている。
【００６５】
統計収集装置制御部４１１は、４つの統計収集装置３１〜３４にそれぞれ接続されており、各統計収集装置３１〜３４に対して制御情報を送信する。負荷分散装置制御部４１２は、負荷分散装置２０に接続されており、負荷分散装置２０に対して制御情報を送信する。
【００６６】
制御情報蓄積バッファ４１３は、各種の制御情報を格納する機能部である。制御情報生成部４１４は、制御部４１５と接続されており、制御部４１５を介して、管理用端末５０から出力される情報や、負荷分散装置２０及び４つの統計収集装置３１〜３４から出力される情報を入力する。また、制御情報生成部４１４は、入力された情報に基づき各種の制御情報を生成して、制御情報蓄積バッファ４１３に格納する。
【００６７】
図１１は、制御情報蓄積バッファ４１３に格納される制御情報を示す説明図である。図１１に示すように、制御情報蓄積バッファ４１３は、キーアイテム格納部４ａと、集約アイテム格納部４ｂと、異なり数カウント対象アイテム格納部４ｃと、異なり数基準アイテム格納部４ｄと、接続テーブル格納部４ｅと、負荷分散出力先テーブル格納部４ｆとを備えている。本実施例では、これら各格納部４ａ〜４ｆに格納される情報が制御情報に相当する。
【００６８】
キーアイテム格納部４ａは、キーアイテム種別を格納する。集約アイテム格納部４ｂは、集約アイテム種別を格納する。異なり数カウント対象アイテム格納部４ｃは、異なり数カウント対象アイテム種別を格納する。異なり数カウント対象アイテム（以下、単に「対象アイテム」とも呼ぶ）とは、或るアイテムの値が同一のパケットについて異なり数をカウントする場合における、この或るアイテムを示す。この異なり数カウントアイテムは、集約アイテムの中から選択される。異なり数基準アイテム格納部４ｄは、異なり数基準アイテムを格納する。異なり数基準アイテム（以下、単に「基準アイテム」とも呼ぶ）とは、対象アイテムの値が同一であって或るアイテムの値の異なるパケットの種類数を異なり数としてカウントする場合における、この或るアイテムを示す。したがって、例えば、ＤＩＰの値が異なるパケットの種類数を異なり数としてカウントする場合には、アイテム「ＤＩＰ」が異なり数基準アイテムに相当する。接続テーブル格納部４ｅは、接続テーブルを格納する。接続テーブルとは、負荷分散装置２０の各出力ポートＯＰ１〜ＯＰ４がいずれの統計収集装置３１〜３４に接続されているかを示すテーブルである。負荷分散出力先テーブル格納部４ｆは、負荷分散出力先テーブルを格納する。
【００６９】
本実施例では、これらの各格納部４ａ〜４ｆに格納される情報は、システム管理者により管理用端末５０を介して設定される。具体的には、図１１の例では、キーアイテムとして「ＳＩＰ，ＤＩＰ」が設定されている。また、集約アイテムとして「ＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴ」が、異なり数カウント対象アイテムとして「ＳＩＰ，ＤＩＰ」が、それぞれ設定されている。また、異なり数基準アイテムとして、対象アイテム「ＳＩＰ」に対して「ＤＩＰ」が、対象アイテム「ＤＩＰ」に対して「ＳＩＰ」が、それぞれ設定されている。接続テーブルとして、第１出力ポートＯＰ１に対して装置ＩＤ＝Ａ（第１統計収集装置３１）が対応付けられ、第２出力ポートＯＰ２に対して装置ＩＤ＝Ｂ（第２統計収集装置３２）が対応付けられ、第３出力ポートＯＰ３に対して装置ＩＤ＝Ｃ（第３統計収集装置３３）が対応付けられ、第４出力ポートＯＰ４に対して装置ＩＤ＝Ｄ（第４統計収集装置３４）が対応付けられて設定されている。負荷分散出力先テーブルとして、図３に示す負荷分散出力先テーブル２３４と同一の内容が設定されている。なお、負荷分散装置制御部４１２は、統計集約装置４０起動した直後及び負荷分散出力先テーブルが更新された直後に、負荷分散出力先テーブル格納部４ｆに格納されている負荷分散出力先テーブルを負荷分散装置２０に送信する。負荷分散装置２０の制御部２１は、受信した負荷分散出力先テーブルを出力先決定部２３３に渡す。
【００７０】
図１０に示す統計情報集約部４２は、メモリ４２１と、フローデータ集約部４２２と、集約アイテムチェック部４２３と、統計情報出力部４２４と、を備えている。メモリ４２１は、フローデータ集約テーブル４２１ａを格納している。フローデータ集約テーブル４２１ａの詳細については後述する。フローデータ集約部４２２は、各統計収集装置３１〜３４から受信したフローデータの一部について、フローデータ集約テーブル４２１ａを更新することにより集約を行う。フローデータとは、フローテーブルの各フィールドの値からなるデータを意味する。集約アイテムチェック部４２３は、各統計収集装置３１〜３４から受信したフローデータのうち、集約アイテムの値に応じて、フローデータをフローデータ集約部４２２又は統計情報出力部４２４に転送する。統計情報出力部４２４は、集約アイテムチェック部４２３及びフローデータ集約部４２２から受信したフローテーブルを、統計情報として出力する。
【００７１】
Ａ２．フローテーブル生成処理：
図１２は、４つの統計収集装置３１〜３４において実行されるフローテーブル生成処理の手順を示すフローチャートである。各統計収集装置３１〜３４では、起動時において、フローテーブル生成処理を実行し、図４〜９に示すフローテーブルを生成する。一例として、第１統計収集装置３１において実行されるフローテーブル生成処理について説明する。
【００７２】
図４に示す第１統計収集装置３１の制御部３１１は、統計集約装置４０から集約アイテムを取得すると共に、統計集約装置４０から負荷分散出力先テーブル及び接続テーブルを取得して、これらテーブルに基づき第１統計収集装置３１に対応付けられたキーアイテムを取得する（ステップＳ１０５）。図１１に示すように、集約アイテム格納部４ｂには集約アイテム「ＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴ」が格納されているので、制御部３１１は、これらキーアイテム「ＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴ」を取得する。図１１に示すように、接続テーブルでは、第１統計収集装置３１（装置ＩＤ＝Ａ）に対し、第１出力ポートＯＰ１が対応付けられており、負荷分散出力先テーブルでは、第１出力ポートＯＰ１は、キーアイテム「ＳＩＰ」に対応付けられている。したがって、制御部３１１は、統計収集装置３１に対応付けられたキーアイテムとして「ＳＩＰ」を取得する。
【００７３】
次に、制御部３１１は、第１統計収集装置３１に対応付けられたキーアイテムを含む集約アイテムのフローテーブルを生成する（ステップＳ１１０）。第１統計収集装置３１に対応付けられたキーアイテムは「ＳＩＰ」であり、集約アイテムは「ＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴ」であるので、制御部３１１は、図４に示すＳＩＰテーブル３３１及びＳＩＰ−ＤＩＰテーブル３３２を生成する。
【００７４】
次に、制御部３１１は、いずれのキーアイテムも含まない集約アイテムのフローテーブルを生成する（ステップＳ１１５）。キーアイテムは、「ＳＩＰ，ＤＩＰ」であるので、制御部３１１は、これらキーアイテムを含まない集約アイテム「ＤＰＴ」のフローテーブル（図４に示すＤＰＴテーブル３３３）を生成する。
【００７５】
なお、第２統計収集装置３２においても同様にして、図４に示す各フローテーブル３３１〜３３３が生成される。また、第３，４統計収集装置３３，３４では、対応付けられたキーアイテムが「ＤＩＰ」であるので、ステップＳ１１０において、図８に示すＤＩＰテーブル３３４及びＳＩＰ−ＤＩＰテーブル３３２が生成される。なお、第３，４統計収集装置３３，３４では、ステップＳ１１５において、第１，２統計収集装置３１，３２と同様に、ＤＰＴテーブル３３３が生成される。
【００７６】
Ａ３．フローテーブルの更新：
ネットワークシステム１００内においてパケットの送受信が行われると、いずれかの統計収集装置３１〜３４において、フローテーブルが更新されることとなる。以下、フローテーブルの更新処理の一例を説明する。
【００７７】
図１３は、ネットワークシステム１００において送受信されたパケットを模式的に示す説明図である。なお、図１３では、３台のルータ９１〜９３により構成されるネットワークを模式的にネットワーク１０１と表わしている。
【００７８】
図１３に示すように、第１端末９４から第１サーバ９７に対して、ＤＰＴの値が「Ｐ１」であるパケットが既に６つ送信されている。また、第１端末９４から第２サーバ９８に対して、ＤＰＴの値が「Ｐ２」であるパケットが既に４つ送信されている。また、第２端末９５から第１サーバ９７に対して、ＤＰＴの値が「Ｐ１」であるパケットが既に１つ送信されている。また、第２端末９５から第２サーバ９８に対して、ＤＰＴの値が「Ｐ２」であるパケットが既に１つ送信されている。
【００７９】
図１４は、図１３に示す各パケットが送受信された後の、各統計収集装置３１〜３４におけるフローテーブルの設定内容を示す説明図である。図１４において、各統計収集装置３１〜３４の右側には、それぞれの統計収集装置に格納されているフローテーブルを記載している。具体的には、第１統計収集装置３１の右側には、ＳＩＰテーブル３３１ａ，ＳＩＰ−ＤＩＰテーブル３３２ａ及びＤＰＴテーブル３３３ａを記載している。なお、これら３つのテーブル３３１ａ，３３２ａ，３３３ａは、図５〜図６の各テーブルを模式的に表わしたものである。第２統計収集装置３２の右側には、ＳＩＰテーブル３３１ｂ，ＳＩＰ−ＤＩＰテーブル３３２ｂ及びＤＰＴテーブル３３３ｂを記載している。第３統計収集装置３３の右側には、ＤＩＰテーブル３３４ｃ，ＳＩＰ−ＤＩＰテーブル３３２ｃ及びＤＰＴテーブル３３３ｃを記載している。第４統計収集装置３４の右側には、ＤＩＰテーブル３３４ｄ，ＳＩＰ−ＤＩＰテーブル３３２ｄ及びＤＰＴテーブル３３３ｄを記載している。
【００８０】
図１４のＳＩＰテーブル３３１ａ，３３１ｂ及びＤＩＰテーブル３３４ｃ，３３４ｄには、図示の便宜上、集約アイテムフィールド，パケット数フィールド（Ｎｐ）及び異なり数フィールド（Ｎｄ）のみを記載している。また、図１４に示すその他のフローテーブルには、図示の便宜上、集約アイテムフィールド及びパケット数フィールド（Ｎｐ）のみを記載している。
【００８１】
図１４の左側に示すように、ＳＩＰの値により、パケットは、２つの統計収集装置３１，３２のいずれかに分散される。図１４の例では、ＳＩＰの値が「Ｘ１」及び「Ｘ３」のパケットは、第１統計収集装置３１に転送される。ＳＩＰの値が「Ｘ２」のパケットは、第２統計収集装置３２に転送される。また、ＤＩＰの値により、パケットは、２つの統計収集装置３３，３４のいずれかに分散される。図１４の例では、ＤＩＰの値が「Ｙ１」のパケットは、第３統計収集装置３３に転送される。ＤＩＰの値が「Ｙ２」のパケットは、第４統計収集装置３４に転送される。
【００８２】
第１統計収集装置３１のＳＩＰテーブル３３１ａには、エントリ（Ｅｓ１＿１）が設定されている。このエントリ（Ｅｓ１＿１）では、ＳＩＰ「Ｘ１」が設定され、また、パケット数（Ｎｐ）「１０」が設定されている。これは、図１３に示すように、第１端末９４が送信元となるパケットは、合計１０パケットであるからである。また、このエントリ（Ｅｓ１＿１）では、異なり数（Ｎｄ）「２」が設定されている。図１１に示すように、ＳＩＰテーブルの異なり数基準アイテムはＤＩＰである。したがって、図１３に示すように、第１端末９４からのパケットの宛先は第１サーバ９７及び第２サーバ９８の２つであるので、異なり数として「２」が設定されている。
【００８３】
第１統計収集装置３１のＳＩＰ−ＤＩＰテーブル３３２ａのエントリ（Ｅｓｄ１＿１）では、ＳＩＰ「Ｘ１」，ＤＩＰ「Ｙ１」，パケット数「６」が設定されている。これは、図１３に示すように、第１端末９４（ＩＰアドレス＝Ｘ１）から第１サーバ（ＩＰアドレス＝Ｙ１）へのパケット数が６であるからである。なお、ＳＩＰ−ＤＩＰテーブル３３２ａの各エントリ（Ｅｓｄ１＿１，Ｅｓｄ１＿２）では、ＳＩＰの値はいずれも「Ｘ１」である。これは、第１統計収集装置３１には、キーアイテム「ＳＩＰ」の値が「Ｘ１」，「Ｘ３」のパケットのみが転送され、かつ、図１３の状態では、第１端末９４のみがパケットを送信しているため、ＳＩＰの値が「Ｘ１」のエントリのみが記録されるからである。
【００８４】
第１統計収集装置３１のＤＰＴテーブル３３３ａのエントリ（Ｅｄｐ１＿１）では、ＤＰＴ「Ｐ１」，パケット数「６」が設定されている。これは、図１３に示すように、第１端末９４を送信元とするパケットのうち、ＤＰＴの値が「Ｐ１」であるパケットは、第１サーバ９７に送信した６パケットであるからである。
【００８５】
なお、第２統計収集装置３２における各テーブル３３１ｂ，３３２ｂ，３３３ｂの各エントリも、図１３の状態に基づき、第１統計収集装置３１における各テーブル３３１ａ，３３２ａ，３３３ａと同様に設定されている。
【００８６】
第３統計収集装置３３のＤＩＰテーブル３３４ｃのエントリ（Ｅｄ３＿１）では、ＤＩＰ「Ｙ１」，パケット数「７」，異なり数「２」が設定されている。これは、図１３に示すように、第１サーバ９７が宛先となるパケットは、合計７パケットであるからである。また、このエントリ（Ｅｄ３＿１）では、異なり数（Ｎｄ）「２」が設定されている。図１１に示すように、ＤＩＰテーブルの異なり数基準アイテムはＳＩＰである。したがって、図１３に示すように、第１サーバ９７を宛先とするパケットの送信元は第１端末９４及び第２端末９５の２つであるので、異なり数として「２」が設定されている。
【００８７】
第３統計収集装置３３のＳＩＰ−ＤＩＰテーブル３３２ｃのエントリ（Ｅｓｄ３＿１）では、ＳＩＰ「Ｘ１」，ＤＩＰ「Ｙ１」，パケット数「６」が設定されている。これらの値は、前述の第１統計収集装置のＳＩＰ−ＤＩＰテーブル３３２ａのエントリ（Ｅｓｄ１＿１）に設定されている値と同一である。なお、ＳＩＰ−ＤＩＰテーブル３３２ｃの各エントリ（Ｅｓｄ３＿１，Ｅｓｄ３＿２）では、ＤＩＰの値はいずれも「Ｙ１」である。これは、第３統計収集装置３３には、キーアイテム「ＤＩＰ」の値が「Ｙ１」のパケットのみが転送され、かつ、図１３の状態では、宛先が第１端末９４とするパケットの送受信が行われているからである。
【００８８】
第３統計収集装置３３のＤＰＴテーブル３３３ｃのエントリ（Ｅｄｐ３＿１）では、ＤＰＴ「Ｐ１」，パケット数「７」が設定されている。これは、図１３に示すように、第１サーバ９７を宛先とするパケットのうち、ＤＰＴの値が「Ｐ１」であるパケットは、第１端末９４からの６パケットと、第２端末９５からの１パケットとの合計７パケットであるからである。
【００８９】
なお、第４統計収集装置３４における各テーブル３３４ｄ，３３２ｄ，３３３ｄの各エントリも、図１３の状態に基づき、第３統計収集装置３３における各テーブル３３４ｃ，３３２ｃ，３３３ｃと同様に設定されている。
【００９０】
図１４に示すように、ＧＩＤの値がＧＩＤ１のグループ（以下、「第１グループ」と呼ぶ）のＳＩＰ−ＤＩＰテーブルの各エントリは、ＧＩＤがＧＩＤ２のグループ（以下、「第２グループ」と呼ぶ）のいずれかのエントリと一致している。例えば、第１グループのエントリ（Ｅｓｄ１＿１）は、第２グループのエントリ（Ｅｓｄ３＿１）と一致している。これは、同じパケットを、第１グループのいずれかの統計収集装置と、第２グループのいずれかの統計収集装置とに、並行して転送しているため、ＳＩＰの値及びＤＩＰの値の組み合わせが同一となるエントリが、第１，２グループにそれぞれ生成されるからである。
【００９１】
また、第１グループにおけるＤＰＴが同一のパケット数の合計値は、第２グループにおけるＤＰＴが同一のパケット数の合計値と一致している。例えば、第１グループにおけるＤＰＴの値が「Ｐ１」のパケット数は、エントリ（Ｅｄｐ１＿１）の「６」と、エントリ（Ｅｄｐ２＿１）の「１」とを足し合わせた「７」となる。一方、第２グループにおけるＤＰＴの値が「Ｐ１」のパケット数は、エントリ（Ｅｄｐ３＿１）の「７」となる。これも、同じパケットを、第１グループのいずれかの統計収集装置と、第２グループのいずれかの統計収集装置とに、並行して転送していることに起因している。
【００９２】
図１３に示すパケット送受信状態および図１４に示す各フローテーブルの設定状態において、フローテーブル更新処理が実行されて各フローテーブルが更新される様子を、図１５〜１７を用いて説明する。
【００９３】
図１５は、異なり数カウント非対象フローテーブルについてのフローテーブル更新処理の手順を示すフローチャートである。図１６は、異なり数カウント対象フローテーブルについてのフローテーブル更新処理の手順を示すフローチャートである。図１７は、各フローテーブルの更新処理を実行した結果の一例を示す説明図である。図１７の例では、図１７の左側に示すように、第３端末９６から第１サーバ９７にＤＰＴの値がＰ１であるパケットが１つ送信された場合における、各統計収集装置３１〜３４の各フローテーブルの状態を示している。この場合、パケットの送信元が第３端末９６（ＳＩＰ＝Ｘ１）であり、パケットの宛先が第１サーバ９７（ＤＩＰ＝Ｙ１）であるので、第１統計収集装置３１及び第３統計収集装置３３にそれぞれパケットが転送される。
【００９４】
図１２に示すフローテーブル生成処理が実行された後、各統計収集装置３１〜３４では、図１５，１６に示すフローテーブル更新処理が、この順序で実行される。まず、図１５に示す異なり数カウント非対象フローテーブルについてのフローテーブル更新処理について説明する。異なり数カウント非対象フローテーブルとは、異なり数カウント対象アイテムを除く他のアイテムを集約アイテムとするフローテーブルを意味する。すなわち、本実施例では、「ＳＩＰ−ＤＩＰ」及び「ＤＰＴ」を集約アイテムとするフローテーブル（図１４に示すＳＩＰ−ＤＩＰテーブル３３２ａ〜３３２ｄ及びＤＰＴ３３３ａ〜３３３ｄ）を意味する。
【００９５】
図１５に示すように、各統計収集装置３１〜３４において、フローテーブル制御部３１５は、組み合わせ生成部３１４から集約アイテムの値（値の組み合わせ）を受信するまで待機し（ステップＳ２０５）、集約アイテムの値を受信すると、受信した集約アイテムの値が、異なり数カウント非対象フローテーブルの既存エントリに存在するか否かを判定する（ステップＳ２１０）。
【００９６】
図１７に示すように、第３端末９６から第１サーバ９７にＤＰＴ「Ｐ１」のパケットが１つ送信された場合、組み合わせ生成部３１４から受信する集約アイテムの値にはＤＰＴ「Ｐ１」が含まれる。フローテーブル制御部３１５は、ＤＰＴテーブル３３３ａにおいて、ＤＰＴの値が「Ｐ１」のエントリを検索する。この場合、フローテーブル制御部３１５は、エントリ（Ｅｄｐ１＿１）を発見することとなる。
【００９７】
フローテーブル制御部３１５は、受信した集約アイテムの値が、異なり数カウント非対象フローテーブルの既存エントリに存在すると判定すると、見つかったエントリにおいてパケット数を１つ増加させると共に、フローテーブルの他のフィールドの値を更新する（ステップＳ２１５）。
【００９８】
前述のように、フローテーブル制御部３１５は、エントリ（Ｅｄｐ１＿１）を発見すると、図１７に示すように、エントリ（Ｅｄｐ１＿１）のパケット数（Ｎｐ）を１つ増加させ「７」とする。また、フローテーブル制御部３１５は、図７に示すエントリ（Ｅｄｐ１＿１）のバイト数フィールドを増加させ、最終更新時刻フィールド及びその他フィールドの値をそれぞれ更新させる。
【００９９】
前述のステップＳ２１０において、受信した集約アイテムの値が、異なり数カウント非対象フローテーブルの既存エントリに存在しないと判定すると、フローテーブル制御部３１５は、受信した集約アイテムの値を、集約アイテムフィールドに設定した新たなエントリを異なり数カウント非対象フローテーブルに追加する（ステップＳ２２０）。
【０１００】
例えば、仮に、第３端末９６から第１サーバ９７に送信されたパケットのＤＰＴの値が「Ｐ３」である場合には、図１４に示すＤＰＴテーブル３３３ａには該当するエントリがないので、フローテーブル制御部３１５は、ＤＰＴの値を「Ｐ３」に設定した新たなエントリを追加する。
【０１０１】
なお、図１７に示すように、第３統計収集装置３３においても同様にして、ＤＰＴテーブル３３３ｃのエントリ（Ｅｄｐ３＿１）が更新される。以上は、異なり数カウント非対象フローテーブルとしてＤＰＴテーブルを一例として説明したが、次に、ＳＩＰ−ＤＩＰテーブルについて説明する。
【０１０２】
第１統計収集装置３１のフローテーブル制御部３１５は、ステップＳ２１０において、ＳＩＰ「Ｘ３」，ＤＩＰ「Ｙ１」の組み合わせがＳＩＰ−ＤＩＰテーブル３３２ａに存在しないと判断するので（図１４参照）、ステップＳ２２０を実行し、図１７に示すように、ＳＩＰ−ＤＩＰテーブル３３２ａにエントリ（Ｅｓｄ１＿３）を追加する。同様に、第３統計収集装置３３のフローテーブル制御部３１５は、ステップＳ２１０において、ＳＩＰ「Ｘ３」，ＤＩＰ「Ｙ１」の組み合わせがＳＩＰ−ＤＩＰテーブル３３２ｃに存在しないと判断するので（図１４参照）、ステップＳ２２０を実行し、図１７に示すように、ＳＩＰ−ＤＩＰテーブル３３２ｃにエントリ（Ｅｓｄ３＿３）を追加する。
【０１０３】
上述した異なり数カウント非対象フローテーブルについてのフローテーブル更新処理を実行した後、各統計収集装置３１〜３４のフローテーブル制御部３１５は、図１６に示す異なり数カウント対象フローテーブルについてのフローテーブル更新処理を実行する。
【０１０４】
図１６に示すように、各統計収集装置３１〜３４において、フローテーブル制御部３１５は、組み合わせ生成部３１４から集約アイテムの値（値の組み合わせ）を受信するまで待機する（ステップＳ３０５）。フローテーブル制御部３１５は、集約アイテムの値を受信すると、対象アイテム及び基準アイテムを集約アイテムとするフローテーブル（以下、「異なり数参照テーブル」と呼ぶ）において、エントリが追加されたか否かを判定する（ステップＳ３１０）。
【０１０５】
第１統計収集装置３１において、対象アイテムは「ＳＩＰ」である。フローテーブル制御部３１５は、以下のようにして自己に割り当てられた対象アイテムを取得する。各統計収集装置３１〜３４のフローテーブル制御部３１５は、負荷分散装置制御部４１２に格納されている負荷分散出力先テーブル，接続テーブル及び異なり数カウント対象アイテムを、制御部３１１を介して取得する。フローテーブル制御部３１５は、これらテーブル等を参照して第１統計収集装置３１に割り当てられている対象アイテムを取得する。具体的には、フローテーブル制御部３１５は、接続テーブルを参照して、第１統計収集装置３１（装置ＩＤ＝Ａ）の接続先の出力ポートが第１出力ポートＯＰ１であることを取得し、この第１出力ポートＯＰ１に対応付けられているキーアイテムは、ＳＩＰであることを、負荷分散出力先テーブルから取得する。この取得したキーアイテムが、異なり数カウント対象アイテム格納部４ｃに格納されているいずれかの対象アイテムに一致するかを判定し、一致したアイテム（この場合ＳＩＰ）を、第１統計収集装置３１に割り当てられた対象アイテムであると判断する。また、フローテーブル制御部３１５は、対象アイテム「ＳＩＰ」に対応する基準アイテム「ＤＩＰ」を、制御部３１１を介して負荷分散装置制御部４１２の数基準アイテム格納部４ｄから取得する。したがって、第１統計収集装置３１のフローテーブル制御部３１５は、異なり数参照テーブル「ＳＩＰ−ＤＩＰテーブル３３２ａ」において、エントリが追加されたか否かを判定する。
【０１０６】
前述の図１５に示すフローテーブル更新処理の結果、図１７に示すように、ＳＩＰ−ＤＩＰテーブル３３２ａでは、エントリ（Ｅｓｄ１＿３）が追加されている。したがって、第１統計収集装置３１のフローテーブル制御部３１５は、ステップＳ３１０において、異なり数参照テーブルにエントリが追加されたと判定する。同様に、ＳＩＰ−ＤＩＰテーブル３３２ｃでは、エントリ（Ｅｓｄ３＿３）が追加されている。したがって、第３統計収集装置３３のフローテーブル制御部３１５は、ステップＳ３１０において、異なり数参照テーブルにエントリが追加されたと判定する。
【０１０７】
フローテーブル制御部３１５は、ステップＳ３１０において、異なり数参照テーブルにおいてエントリが追加されたと判定すると、この追加されたエントリの対象アイテムの値を集約アイテムとする異なり数カウント対象フローテーブルのエントリがあるか否かを判定する（ステップＳ３２０）。フローテーブル制御部３１５は、ステップＳ３２０において、エントリがないと判定すると、異なり数参照テーブルの追加エントリの対象アイテムの値を集約アイテムの値とする新たなエントリを、異なり数カウント対象フローテーブルに追加する（ステップＳ３２５）。
【０１０８】
図１７に示すように、第１統計収集装置３１のＳＩＰ−ＤＩＰテーブル３３２ａに追加されたエントリ（Ｅｓｄ１＿３）において、対象アイテム（ＳＩＰ）の値は「Ｘ３」である。このＳＩＰ「Ｘ３」を集約アイテムとする異なり数カウント対象フローテーブル（ＳＩＰテーブル３３１ａ）のエントリは、図１４に示すように存在しない。したがって、第１統計収集装置３１のフローテーブル制御部３１５は、図１７に示すように、このＳＩＰ「Ｘ３」を集約アイテムの値とするエントリ（Ｅｓ１＿２）を、ＳＩＰテーブル３３１ａに追加する。
【０１０９】
前述のステップＳ３２０において、エントリがあると判定すると、フローテーブル制御部３１５は、見つかったエントリにおいて、パケット数及び異なり数を１つ増加させると共に、他のフィールドの値を更新する（ステップＳ３３０）。
【０１１０】
図１７に示すように、第３統計収集装置３３のＳＩＰ−ＤＩＰテーブル３３２ｃに追加されたエントリ（Ｅｓｄ３＿３）において、対象アイテム（ＤＩＰ）の値は「Ｙ１」である。このＤＩＰ「Ｙ１」を集約アイテムとする異なり数カウント対象フローテーブル（ＤＩＰテーブル３３４ｃ）のエントリは、エントリ（Ｅｄ３＿１）として存在する。したがって、第１統計収集装置３１のフローテーブル制御部３１５は、図１７に示すように、ＤＩＰテーブル３３４ｃのエントリ（Ｅｄ３＿１）のパケット数（Ｎｐ）を１つ増加させて「８」にすると共に、異なり数（Ｎｄ）を１つ増加させて「３」にする。なお、フローテーブル制御部３１５は、ＤＩＰテーブル３３４ｃにおける最終更新時刻フィールドや及びその他フィールドの値も更新する。
【０１１１】
前述のステップＳ３１０において、異なり数参照テーブルにおいてエントリが追加されていないと判定すると、フローテーブル制御部３１５は、異なり数カウント対象テーブルの既存エントリのパケット数を１つ増加させると共に、他のフィールドの値を更新する（ステップＳ３１５）。
【０１１２】
例えば、仮に、図１３に示す状態から、第１端末９４から第１サーバ９７にＤＰＴ「Ｐ１」のパケットが１つ送信された場合に、第１統計収集装置３１のフローテーブル制御部３１５は、ＳＩＰテーブル３３１ａのエントリ（Ｅｓ１＿１）のパケット数（Ｎｐ）を、１０から１１に増加させる。
【０１１３】
各統計収集装置３１〜３４のフローテーブル制御部３１５は、上述したフローテーブル更新処理を実行すると共に、異なり数カウント対象フローテーブルの各エントリのパケット数が所定の値となった場合に、フローデータを、フローデータ出力部３１６のフローデータ出力バッファ３１７に蓄積すると共に、該当するエントリを削除する。また、異なり数カウント非対象フローテーブルについては、各統計収集装置３１〜３４のフローテーブル制御部３１５は、所定の期間ごとに、全てのエントリのフローデータをフローデータ出力バッファ３１７に蓄積すると共に、全てのエントリを削除する。なお、各統計収集装置３１〜３４において、異なり数カウント非対象フローテーブルについて全てのエントリのフローデータをフローデータ出力バッファ３１７に蓄積する時刻は、互いに一致するように予め設定されている。各統計収集装置３１〜３４のフローデータ出力部３１６は、フローデータ出力バッファ３１７に蓄積されたフローデータを、統計集約装置４０に送信する。
【０１１４】
Ａ４．統計情報出力処理：
図１８は、統計集約装置４０において実行される統計情報出力処理の手順を示すフローチャートである。統計集約装置４０では、起動後に統計情報出力処理が実行される。
【０１１５】
図１０に示す統計集約装置４０の集約アイテムチェック部４２３は、いずれかの統計収集装置３１〜３４からフローデータを受信するまで待機しており（ステップＳ４０５）、フローデータを受信すると、フローデータから集約アイテムを抽出し（ステップＳ４１０）、抽出した集約アイテムにキーアイテムが含まれているか否かを判定する（ステップＳ４１５）。
【０１１６】
例えば、統計収集装置３１から、図１７に示すＳＩＰテーブル３３１ａまたはＳＩＰ−ＤＩＰテーブル３３２ａに含まれるいずれかのエントリに対応するフローデータを受信した場合、集約アイテムチェック部４２３は、第１統計収集装置３１に割り付けられたキーアイテム「ＳＩＰ」が、フローデータの集約アイテムに含まれていると判定する。なお、集約アイテムチェック部４２３は、各統計収集装置３１〜３４に割り当てられているキーアイテムを、制御情報蓄積バッファ４１３に格納されている負荷分散出力先テーブルから導き出すことができる。
【０１１７】
前述のステップＳ４１５において、集約アイテムにキーアイテムが含まれていると判定すると、集約アイテムチェック部４２３は、抽出した集約アイテムにすべてのキーアイテムが含まれているか否かを判定する（ステップＳ４２０）。
【０１１８】
例えば、第１統計収集装置３１から、図１７に示すＳＩＰテーブル３３１ａのいずれかのエントリに対応するフローデータを受信した場合、集約アイテムチェック部４２３は、すべてのキーアイテム「ＳＩＰ，ＤＩＰ」を集約アイテムに含んでいないと判定する。一方、第１統計収集装置３１から、図１７に示すＳＩＰ−ＤＩＰテーブル３３２ａのいずれかのエントリに対応するフローデータを受信した場合、集約アイテムチェック部４２３は、すべてのキーアイテム「ＳＩＰ，ＤＩＰ」を集約アイテムに含んでいると判定する。
【０１１９】
前述のステップＳ４２０において、抽出した集約アイテムに全てのキーアイテムが含まれていない（すなわち、一部のキーアイテムが含まれている）と判定すると、集約アイテムチェック部４２３は、受信したフローデータを、統計情報出力部４２４を介して、統計情報として出力する（ステップＳ４２５）。一方、ステップＳ４２０において、抽出した集約アイテムに全てのキーアイテムが含まれていると判定すると、集約アイテムチェック部４２３は、受信したフローデータが第１グループのいずれかの統計収集装置から受信したフローデータであるか否かを判定する（ステップＳ４３０）。
【０１２０】
受信したフローデータが第１グループのいずれかの統計収集装置から受信したフローデータである場合には、集約アイテムチェック部４２３は、前述のステップＳ４２５を実行し、受信したフローデータをそのまま統計情報として出力する。一方、受信したフローデータが第２グループのいずれかの統計収集装置から受信したフローデータである場合には、集約アイテムチェック部４２３は、受信したフローデータを廃棄する（ステップＳ４３５）。
【０１２１】
このように、ステップＳ４２０〜ステップＳ４３５の各処理を実行しているのは、以下の理由による。一部のキーアイテムのみを集約アイテムに含むフローデータ（エントリ）は、すべてのグループ（第１，２グループ）において、唯一となっている。具体的には、図１７におけるＳＩＰテーブル３３１ａ，３３１ｂの各エントリ、及びＤＩＰテーブル３３４ｃ，３３４ｄの各エントリは、互いに異なっており重複がない。したがって、各エントリに対応するフローデータは集約する必要がなく、そのまま統計情報として出力することができる。一方、すべてのキーアイテムを集約アイテムに含むフローデータ（エントリ）は、第１，２グループで互いに重複している。具体的には、第１グループ（第１統計収集装置３１）のＳＩＰ−ＤＩＰテーブル３３２ａのエントリ（Ｅｓｄ１＿２）は、第２グループ（第４統計収集装置３４）のＳＩＰ−ＤＩＰテーブル３３２ｄのエントリ（Ｅｓｄ４＿１）と重複している。したがって、両方のグループから受信するフローデータを統計情報として出力すると、重複した統計情報を出力することとなる。したがって、いずれか一方のグループ（実施例では、第１グループ）から受信したフローデータのみ、統計情報として出力するようにしている。
【０１２２】
前述のステップＳ４１５において、集約アイテムにキーアイテムが含まれていないと判定すると、集約アイテムチェック部４２３は、受信したフローデータをフローデータ集約部４２２に送信する（ステップＳ４４０）。フローデータ集約部４２２は、受信したフローデータに基づき、フローデータ集約処理を実行する（ステップＳ４４５）。
【０１２３】
図１９は、図１８に示すフローデータ集約処理（Ｓ４４５）の詳細手順を示すフローチャートである。フローデータ集約処理が開始されると、フローデータ集約部４２２は、受信したフローデータが第１グループのいずれかの統計収集装置から受信したフローデータであるか否かを判定する（ステップＳ５１０）。受信したフローデータが第２グループのいずれかの統計収集装置から受信したフローデータである場合には、フローデータ集約部４２２は、受信したフローデータを廃棄する（ステップＳ５５０）。
【０１２４】
このように、受信したフローデータが第２グループのいずれかの統計収集装置から受信したフローデータである場合に、フローデータを廃棄しているのは、以下の理由による。キーアイテムを含まない集約アイテムについては、図１７に示すＤＰＴテーブルのように、第１グループと、第２グループとで重複して記録される。これは、同一のパケットが第１グループのいずれかの統計収集装置と、第２グループのいずれかの統計収集装置とに並行ｋして送信されるからである。具体的には、例えば、第１グループの第２統計収集装置３２のＤＰＴテーブル３３３ｂのエントリ（Ｅｄｐ２＿１）は、第２グループの第３統計収集装置３３のＤＰＴテーブル３３３ｃのエントリ（Ｅｄｐ３＿１）に含まれている。したがって、両方のグループ（第１，２グループ）からのフローデータを集約すると、誤った統計情報を得ることとなる。したがって、いずれか一方のグループ（実施例では、第１グループ）から受信したフローデータのみ、集約するようにしている。
【０１２５】
受信したフローデータが第１グループのいずれかの統計収集装置から受信したフローデータである場合には、フローデータ集約部４２２は、受信したフローデータの集約アイテムの値を抽出する（ステップＳ５１５）。フローデータ集約部４２２は、抽出した集約アイテムの値が一致するエントリが、フローデータ集約テーブル４２１ａに既に存在するか否かを判定する（ステップＳ５２０）。
【０１２６】
図２０は、図１０に示すフローデータ集約テーブル４２１ａの設定内容を示す説明図である。フローデータ集約テーブル４２１ａは、装置ＩＤと、集約アイテムと、統計情報とを互いに対応付けている。装置ＩＤフィールドは、フローデータを送信した統計収集装置の装置ＩＤを示す。集約アイテムフィールド及び統計情報フィールドについては、例えば、図６に示すＳＩＰ−ＤＩＰテーブルの集約アイテムフィールド及び統計情報フィールドと同じであるので、説明を省略する。
【０１２７】
図２０の例では、図１７に示す第１統計収集装置３１のＤＰＴテーブル３３３ａの２つのエントリ（Ｅｄｐ１＿１，Ｅｄｐ１＿２）に対応するフローデータがフローデータ集約部４２２に送信され、これらのフローデータに基づき、２つのエントリ（Ｅｄｐ１，Ｅｄｐ２）が、フローデータ集約テーブル４２１ａに生成されている。
【０１２８】
図２０の例では、エントリ（Ｅｄｐ１）において、装置ＩＤ「Ａ」，集約アイテム（ＤＰＴ）「Ｐ１」，パケット数「７」，バイト数「ｂ３１」，開始時刻「ｔ３１」，最終更新時刻「ｔ３２」及びその他「Ｎ３３」が設定されている。このエントリ（Ｅｄｐ１）は、図１７に示す第１統計収集装置３１のＤＰＴテーブル３３３ａのエントリ（Ｅｄｐ１＿１）に基づき追加されたエントリである。また、エントリ（Ｅｄｐ２）において、装置ＩＤ「Ａ」，集約アイテム「Ｐ２」，パケット数「４」，バイト数「ｂ３２」，開始時刻「ｔ３２」，最終更新時刻「ｔ３４」及びその他「Ｎ３４」が設定されている。このエントリ（Ｅｄｐ２）は、図１７に示す第１統計収集装置３１のＤＰＴテーブル３３３ａのエントリ（Ｅｄｐ１＿２）に基づき追加されたエントリである。なお、これら２つのエントリ（Ｅｄｐ１，Ｅｄｐ２）の各フィールドの値のうち、集約アイテムフィールド及びパケット数フィールドを除く他のフィールドの値については、模式的な値を表している。
【０１２９】
例えば、フローデータ集約テーブル４２１ａが図２０に示す状態において、図１７に示す第２統計収集装置３２のエントリ（Ｅｄｐ２＿１）に対応するフローデータを受信した場合、フローデータ集約部４２２は、集約アイテムの値が「Ｐ１」であるエントリとして、エントリ（Ｅｄｐ１）が既にあると判定する。
【０１３０】
前述のステップＳ５２０において、集約アイテムが一致するエントリが既にあると判定すると、フローデータ集約部４２２は、フローデータを集約して既存エントリを更新する（ステップＳ５３０）。
【０１３１】
前述のように、図１７に示す第２統計収集装置３２のエントリ（Ｅｄｐ２＿１）に対応するフローデータを受信した場合、フローデータ集約部４２２は、図２０に示すエントリ（Ｅｄｐ１）のパケット数を「１」増加させる。また、バイト数フィールドを増加させると共に、最終更新時刻フィールド及びその他フィールドの値をそれぞれ更新する。
【０１３２】
前述のステップＳ５２０において、集約アイテムが一致するエントリがないと判定すると、フローデータ集約部４２２は、新たなエントリをフローデータ集約テーブル４２１ａに追加する（ステップＳ５２５）。
【０１３３】
前述のステップＳ５２５，Ｓ５３０を実行すると、フローデータ集約部４２２は、第１グループに属する全ての統計収集装置からフローデータを受信したか否かを判定する（ステップＳ５３５）。いずれの統計収集装置が第１グループに属する統計収集装置であるかは、負荷分散装置制御部４１２に格納されている負荷分散出力先テーブル及び接続テーブルを参照することで得ることができる。
【０１３４】
図２０に示すように第１統計収集装置３１（装置ＩＤ＝Ａ）からのみフローテーブルを受信している場合には、フローデータ集約部４２２は、第１グループ（ＧＩＤ＝ＧＩＤ１）の全ての統計収集装置からフローデータを受信していないと判定する。
【０１３５】
ステップＳ５３５において、第１グループの全ての統計収集装置からフローデータを受信していないと判定すると、フローデータ集約部４２２は、第１グループのいずれかの統計収集装置からフローデータを受信してから、所定期間だけ経過したか否かを判定する（ステップＳ５４０）。この判定は、例えば、フローデータ集約テーブル４２１ａの各エントリにおける最終更新時刻フィールドの値に基づき実行できる。
【０１３６】
前述のステップＳ５４０において、未だ所定期間だけ経過していないと判定した場合、図１８に示すステップＳ４０５に戻る。すなわち、第１グループ内のフローデータを未送信の統計収集装置からフローデータを受信するのを待って、上述したステップＳ５１０〜Ｓ５３０の処理を実行する。前述のステップＳ５４０における所定期間は、予め実験等により求めて設定しておくことができる。
【０１３７】
前述のステップＳ５４０において所定期間経過したと判定した場合、或いは、前述のステップＳ５３５において第１グループに属する全ての統計収集装置からフローデータを受信したと判定した場合には、フローデータ集約部４２２は、フローデータ集約テーブル４２１ａの各エントリを集約して、得られた集約データを、統計情報として、統計情報出力部４２４を介して出力する（ステップＳ５４５）。
【０１３８】
例えば、フローデータ集約テーブル４２１ａが図２０に示す状態において、さらに、図１７に示す第２統計収集装置３２からＤＰＴテーブル３３３ｂの各エントリに対応するフローデータを受信した場合に、フローデータ集約部４２２は、ＤＰＴの値が「Ｐ１」のＤＰＴテーブル３３３ａのエントリ（Ｅｄｐ１＿１）と、ＤＰＴテーブル３３３ｂのエントリ（Ｅｄｐ２＿１）とを集約する。また、フローデータ集約部４２２は、ＤＰＴの値が「Ｐ２」のＤＰＴテーブル３３３ａのエントリ（Ｅｄｐ１＿２）と、ＤＰＴテーブル３３３ｂのエントリ（Ｅｄｐ２＿２）とを集約する。
【０１３９】
ここで、「集約」とは、パケット数及びバイト数については合算し、開始時刻についてはより過去の時刻を採用し、最終更新時刻はより最近の時刻を採用し、その他フィールドの値については、例えば、中央値については、改めて算出し直すことを意味する。
【０１４０】
所定期間経過した場合にフローデータ集約テーブル４２１ａの各エントリを集約するのは、フローデータを送信しない統計収集装置において、キーアイテムを含まない集約アイテムについてフローテーブルにエントリが存在しないために、フローデータが送られてこない可能性が高いからである。
【０１４１】
以上説明した第１の実施例のパケットフロー統計値取得システム１０では、キーアイテムごとに、複数の統計収集装置からなるグループを設定し、パケットに含まれるキーアイテムの値に応じて、各グループにおけるパケットの転送先を決定している。したがって、パケットフロー統計値を取得する処理（フローデータを取得する処理及び統計情報出力処理）を負荷分散させることができる。また、キーアイテムを集約アイテムとするフローテーブルの各エントリは、各統計収集装置間において重複しないので、複数の統計収集装置からフローテーブルの各エントリを取得して集約することなく、キーアイテムの値が同一であるパケットのパケット数や、異なり数を正確に取得することができる。それゆえ、例えば、他の統計収集装置からのフローデータを待つことなく正確な統計情報を出力することができるので、統計集約装置４０におけるメモリ４２１の容量や、各統計収集装置３１〜３４におけるフローデータ出力バッファ３１７の容量が不足することを抑制できる。
【０１４２】
また、統計集約装置４０においては、キーアイテムを含む集約アイテムのフローデータについては、集約せずに統計情報として出力することができるので、統計集約装置４０における集約処理の負荷を軽減することができる。
【０１４３】
Ｂ．第２の実施例：
図２１は、第２の実施例におけるパケットフロー統計値取得システムの概略構成を示す説明図である。第２の実施例におけるパケットフロー統計値取得システム１０ａは、フロー一次集約装置６０を備えている点において、図１に示すパケットフロー統計値取得システム１０と異なり、他の構成は第１の実施例と同じである。
【０１４４】
パケットフロー統計値取得システム１０ａでは、ルータ９１と、負荷分散装置２０との間にフロー一次集約装置６０が配置されている。このフロー一次集約装置６０は、ルータ９１から受信したパケットを、５つのアイテム（ＳＩＰ，ＤＩＰ，上位プロトコル，ＳＰＴ，ＤＰＴ）に基づき集約する。
【０１４５】
図２２は、図２１に示すフロー一次集約装置６０の機能ブロック図である。フロー一次集約装置６０は、メモリ６３と、パケット取得部６１と、一次集約テーブル制御部６２と、統計出力部６４とを備えている。メモリ６３は、一次集約テーブル６３ａを備えている。
パケット取得部６１は、パケット取得バッファ６１ａを備え、ルータ９１から出力されたパケットを受信してパケット取得バッファ６１ａにバッファすると共に、パケット取得バッファ６１ａに蓄積されたパケットを一次集約テーブル制御部６２に出力する。
【０１４６】
一次集約テーブル制御部６２は、パケット取得部６１，メモリ６３，及び統計出力部６４と接続されており、パケット取得部６１からパケットを受信して、受信したパケットに基づき一次集約テーブル６３ａを更新する。また、一次集約テーブル６３ａの内容（エントリ）を、一次集約データとして統計出力部６４に出力し、出力した内容（エントリ）を一次集約テーブル６３ａから削除する。なお、一次集約データを出力する方法は、例えば、一定期間毎に一次集約テーブル６３ａの全てのエントリを出力する方法や、パケット数が所定値に達したエントリのみを随時出力する方法を採用することもできる。
【０１４７】
図２３は、図２２に示す一次集約テーブル６３ａの設定内容を示す説明図である。図２３に示すように、一次集約テーブル６３ａは、アイテムセットと、統計情報とを対応付けている。アイテムセットは、各パケットフローを識別するためのアイテム群であり、ＳＩＰ，ＤＩＰ，上記プロトコル，ＳＰＴ，ＤＰＴの各フィールドを有する。統計情報の各フィールドは、異なり数フィールドを備えていない点を除き、図５に示すＳＩＰテーブル３３１ａと同じであるので、説明を省略する。
【０１４８】
一次集約テーブル制御部６２は、受信したパケットのうち、５つのアイテム（ＳＩＰ，ＤＩＰ，上記プロトコル，ＳＰＴ，ＤＰＴ）の各値を抽出して、アイテムセットの全ての値が同一のパケットを同一のエントリに集約する。図２３の例では、例えば、エントリ（Ｅｐ１）として、ＳＩＰ「Ｘ１」，ＤＩＰ「Ｙ１」，上記プロトコル「ＴＣＰ」，ＳＰＴ「Ｐ１１」，ＤＰＴ「Ｐ１」が設定されている。これらアイテムセットの各値が一致するパケットについての統計情報として、パケット数「１２」，バイト数「ｂ８１」，開始時刻「ｔ８１」，最終更新時刻「ｔ８３」，その他「Ｎ８１」がそれぞれ設定されている。仮に、ＳＩＰ「Ｘ１」，ＤＩＰ「Ｙ１」，上記プロトコル「ＴＣＰ」，ＳＰＴ「Ｐ１１」，ＤＰＴ「Ｐ１」であるパケットを新たに１つ受信した場合に、一次集約テーブル制御部６２は、エントリ（Ｅｐ１）のパケット数フィールドの値を１つ増加させると共に、バイト数フィールドの値を増加させ、最終更新時刻フィールド及びその他フィールドの値を更新する。
【０１４９】
統計出力部６４は、出力バッファ６４ａを備えており、一次集約テーブル制御部６２から受信した一次集約データを出力バッファ６４ａに蓄積すると共に、出力バッファ６４ａに蓄積された一次集約データを、負荷分散装置２０に出力する。
【０１５０】
したがって、図２に示す負荷分散装置２０では、第１の実施例とは異なり、アイテム抽出部２２１は一次集約データを受信し、パケット転送部２２２は一次集約データを、指定された出力先に出力する。また、各統計収集装置３１〜３４では、一次集約データを受信し、一次集約データを受信するたびに、図１５及び図１６に示すフローテーブル更新処理を実行する。
【０１５１】
以上の構成を有する第２の実施例のパケットフロー統計値取得システム１０ａも、第１の実施例のパケットフロー統計値取得システム１０と同様な効果を有する。加えて、負荷分散装置２０の上流側にフロー一次集約装置６０を設けて、５つのアイテムが一致するパットを集約しているので、負荷分散装置２０において出力先を決定する頻度や、各統計収集装置３１〜３４において、フローテーブル更新処理を実行する頻度を低減させることができ、負荷分散装置２０及び各統計収集装置３１〜３４の処理負荷を低減させることができる。
【０１５２】
Ｃ．第３の実施例：
図２４は、第３の実施例におけるパケットフロー統計値取得システムの概略構成を示す説明図である。第３の実施例におけるパケットフロー統計値取得システム１０ｂは、負荷分散装置を２台（負荷分散装置２０ａ，２０ｂ）備えている点と、フロー一次集約装置を２台（フロー一次集約装置６０ａ，６０ｂ）備えている点と、フロー単位負荷分散装置７０を備えている点とにおいて、図２１，２２に示すパケットフロー統計値取得システム１０ａと異なり、他の構成は第２の実施例と同じである。
【０１５３】
第３の実施例では、複数のフロー一次集約装置を設けて、これらに一次集約の処理負荷を分散させる。
【０１５４】
２台の負荷分散装置２０ａ，２０ｂは、いずれも第１の実施例の負荷分散装置２０と同じ構成を有しており、それぞれ各統計収集装置３１〜３２に接続されている。また、負荷分散装置２０ａはフロー一次集約装置６０ａに、負荷分散装置２０ｂはフロー一次集約装置６０ｂに、それぞれ接続されている。２台のフロー一次集約装置６０ａ，６０ｂは、第２の実施例のフロー一次集約装置６０と同じ構成を有している。
【０１５５】
フロー単位負荷分散装置７０は、ルータ９１及び２台のフロー一次集約装置６０ａ，６０ｂに接続されている。フロー単位負荷分散装置７０は、以下の５つの点を除き、負荷分散装置２０と同様な構成を有している。すなわち、図２に示すパケット送信部２４が有する送信部及び出力ポートの数がいずれも２つである点と、一方の出力ポートにフロー一次集約装置６０ａが接続され、他方の出力ポートにフロー一次集約装置６０ｂが接続されている点と、キーアイテム抽出部が、５つのアイテム（ＳＩＰ，ＤＩＰ，上記プロトコル，ＳＰＴ，ＤＰＴ）を抽出する点と、ハッシュ演算部２３２が、これら５つのアイテムの値に基づきハッシュ値を算出する点と、負荷分散出力先テーブル２３４には、ハッシュ値から導き出される値（０，１）に応じて、２つの出力ポートのいずれかが割り当てられている点とが、フロー単位負荷分散装置７０と負荷分散装置２０との相違点となる。
【０１５６】
このような構成を有する第３の実施例のパケットフロー統計値取得システム１０ｂは、第２の実施例のパケットフロー統計値取得システム１０ａと同様な効果を有する。加えて、フロー単位負荷分散装置７０は、ルータよりパケットを受信すると、５つのアイテム（アイテムセット）の値に応じて、２台のフロー一次集約装置６０ａ，６０ｂのいずれかにパケットを転送する。それゆえ、各フロー一次集約装置６０ａ，６０ｂにおける一次集約の処理負荷が軽減され、高速データ通信においても、パケットフロー統計値（統計情報）を正確に取得することができる。
【０１５７】
Ｄ．変形例：
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１５８】
Ｄ１．変形例１：
各実施例では、負荷分散出力先テーブルは、システム管理者が手動設定していたが、これに代えて、図１０に示す制御情報生成部４１４が自動生成する構成とすることもできる。図２５は、制御情報生成部４１４が実行する負荷分散出力先テーブル生成処理の手順の一例を示すフローチャートである。統計集約装置４０が起動された場合、或いは、負荷分散装置制御部４１２が有するいずれかの制御情報が更新された場合に、負荷分散出力先テーブル更新処理が開始される。
【０１５９】
制御情報生成部４１４は、設定されているキーアイテム、及び統計収集装置の装置数を取得する（ステップＳ６０５）。制御情報生成部４１４は、図１１に示すキーアイテム格納部４ａを参照してキーアイテムを取得することができる。また、接続テーブル格納部４ｅに格納されている接続テーブルを参照して統計収集装置の装置数を取得することができる。
【０１６０】
制御情報生成部４１４は、取得した各キーアイテムに対して、統計収集装置を割り当てる（ステップＳ６１０）。具体的には、例えば、制御情報生成部４１４は、取得した装置数をキーアイテム数で除算し、得られた値に相当する数の統計収集装置を、各キーアイテムに割り当てる。このとき、先頭のキーアイテム（図１１の例では、「ＳＩＰ」）から順番に、装置ＩＤの順序（図１１の例では、Ａ，Ｂ，・・・の順序）で統計収集装置を割り当てる。なお、装置数をキーアイテム数で除算した結果余りが得られた場合には、この余りの数の統計集約装置を先頭のキーアイテムに加算して割り当てることもできる。
【０１６１】
制御情報生成部４１４は、各キーアイテムにグループＩＤを割り当てる（ステップＳ６２０）。具体的には、例えば、制御情報生成部４１４は、先頭のキーアイテム（図１１の例では、「ＳＩＰ」）から順番に、グループＩＤ（ＧＩＤ１，ＧＩＤ２，ＧＩＤ３，・・・）を順次割り当てる。
【０１６２】
制御情報生成部４１４は、各グループの各統計収集装置に対して、ハッシュ値を除算して得られる余り値を割り当てる（ステップＳ６２５）。出力先決定部２３３がハッシュ値を除算する値は、各グループ（キーアイテム）に割り当てられる統計収集装置の台数であるので、かかる除算により得られる余り値は、「０〜統計収集装置の台数−１」となる。そこで、制御情報生成部４１４は、これらの余り値を、各グループに割り当てられた統計収集装置に、装置ＩＤの順に（第１グループであれば、装置ＩＤがＡ，Ｂの順序で）割り当てる。
【０１６３】
以上の処理の結果、図３，１１に示す負荷分散出力先テーブルが生成されることとなる。このような構成により、システム管理者が初期設定する際の手間を軽減させることができる。また、例えば、初期設定の後にキーアイテムが追加された場合には、自動的に負荷分散出力先テーブルが更新されるので、継続して正確なパケットフロー統計値（統計情報）を取得することが出来る。
【０１６４】
Ｄ２．変形例２：
各実施例では、図１９に示すフローデータ集約処理において、第１グループの全ての統計収集装置からフローデータを受信しない場合に、所定期間だけ待ち合わせしていたが（ステップＳ５４０）、本発明はこれに限定されるものではない。例えば、第１のグループの全ての統計収集装置からフローデータを受信しない場合に（ステップＳ５３５：ＮＯ）、フローデータ集約部４２２は、制御部４１５及び統計収集装置制御部４１１を介して、第１グループの他の統計収集装置に対して、フローデータの送信リクエストを送信することもできる。第１グループの各統計収集装置において、制御部３１１は、フローデータの送信リクエストを受信すると、フローデータ出力部３１６を制御して、フローデータ出力バッファ３１７に蓄積されているフローデータを送信する。また、制御部３１１は、フローデータ出力バッファ３１７にフローデータが蓄積されていない場合には、フローデータがない旨の通知を、制御部３１１を介して統計集約装置４０に送信する。このような構成により、所定期間の待ち合わせをすることなく集約データを得ることができ、或る期間における統計情報として正確な値を取得することができる。
【０１６５】
Ｄ３．変形例３：
各実施例では、集約アイテムとしてＳＩＰ−ＤＩＰがシステム管理者により設定されていたため、各統計収集装置３１〜３４では、異なり数参照テーブルであるＳＩＰ−ＤＩＰテーブルが生成されていたが、本発明は、これに限定されるものではない。例えば、集約アイテムとしてＳＩＰ−ＤＩＰが設定されていない場合であっても、以下のようにして、異なり数参照テーブルであるＳＩＰ−ＤＩＰテーブルを生成させることもできる。具体的には、各統計収集装置３１〜３４の制御部３１１は、起動直後に、図１１に示す負荷分散出力先テーブル格納部４ｆに格納されている負荷分散出力先テーブルを参照して、自己の統計収集装置に割り当てられているキーアイテムを取得する。次に、制御部３１１は、異なり数基準アイテム格納部４ｄから、対象アイテムと基準アイテムを読み出し、自己の統計収集装置に割り当てられている対象アイテムと、当該対象アイテムに対応付けられている基準アイテムとを取得し、これらアイテムを集約アイテムとするフローテーブルを生成する。このようにすることで、例えば、第１統計収集装置３１においては、キーアイテム「ＳＩＰ」が割り当てられているので、このキーアイテム「ＳＩＰ」と、ＳＩＰに対応付けられている基準アイテム「ＤＩＰ」とを集約アイテムとするＳＩＰ−ＤＩＰテーブルが生成される。このような構成により、システム管理者が集約アイテムとして異なり数参照テーブルの集約アイテムを設定しない場合であっても、キーアイテムを集約アイテムとするフローテーブルにおいて、異なり数を正確にカウントすることができる。
【０１６６】
Ｄ４．変形例４：
各実施例では、異なり数をカウントするために、異なり数参照テーブルを生成していたが、本発明はこれに限定されるものではない。例えば、図６に示すＳＩＰ−ＤＩＰテーブル３３２ａのように、ＳＩＰ−ＤＩＰの値が同一のパケットについて集約せずとも、受信した各パケットのＳＩＰの値及びＤＩＰの値の組み合わせを、順次記録しておくテーブルを用いて異なり数をカウントすることもできる。このような構成においても、フローデータを出力する際に、かかるテーブルを参照して異なり数を取得することができる。
【０１６７】
Ｄ５．変形例５：
各実施例では、キーアイテムはシステム管理者が手動設定していたが、これに代えて、システム管理者により設定された集約アイテムにおいて、用いられている頻度の高いアイテムをキーアイテムとして自動的に決定することもできる。具体的には、例えば、各実施例では、システム管理者により設定された集約アイテムはＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴであり、これらにおいて、「ＳＩＰ」及び「ＤＩＰ」は、いずれも２回用いられているのに対し、ＤＰＴは１回のみ用いられている。したがって、この場合、アイテム「ＳＩＰ」及び「ＤＩＰ」をキーアイテムとして決定することができ、上述した各実施例と同じアイテムをキーアイテムとして決定することができる。
【０１６８】
Ｄ６．変形例６：
各実施例では、図１８に示す統計情報出力処理のステップＳ４３５、及び図１９に示すフローデータ集約処理のステップＳ５５０において、第１グループの統計収集装置からのフローデータでない場合には、受信したフローデータを廃棄していたが、本発明はこれに限定されるものではない。これらステップＳ４３５及びステップＳ５５０において、第２グループの統計収集装置からのフローデータでない場合に受信したフローデータを廃棄する構成とすることもできる。すなわち、一般には、いずれかのグループの統計収集装置からのフローデータのみを用いて統計情報を出力し、他のグループの統計収集装置からのフローデータを廃棄する構成を採用することができる。
【０１６９】
また、本発明は、上記ステップＳ４３５，Ｓ５５０のように、統計収集装置からのフローデータを廃棄する構成に限定されるものではない。例えば、第２グループの各統計収集装置において、集約アイテムに全てのキーアイテムが含まれているフローデータ、及び集約アイテムにいずれのキーアイテムも含まれていないフローデータは、統計集約装置４０に送信しない構成とすることもできる。このような構成により、各統計収集装置３１〜３４から統計集約装置４０へのトラヒックを軽減できると共に、各統計収集装置３１におけるフローデータを送信するための処理や、統計集約装置４０における統計情報出力処理の負荷を軽減できる。
【０１７０】
なお、集約アイテムのうち、キーアイテムを含まない集約アイテムについて異なり数をカウントする設定である場合には、図１９に示すステップＳ５１０，Ｓ５５０を省略することもできる。例えば、上記各実施例において、集約アイテム「ＤＰＴ」を対象アイテムとし、上位プロトコルを基準アイテムとして異なり数をカウントする設定であれば、集約アイテムが「ＤＰＴ」のフローデータについてもステップＳ５１５以下の処理を行い、集約データを生成して統計情報として出力することもできる。このような構成とすることにより、キーアイテムを含まない集約アイテムについて異なり数を正確に取得することができる。
【０１７１】
Ｄ７．変形例７：
各実施例では、キーアイテムは、「ＳＩＰ」及び「ＤＩＰ」であったが、これに代えて、「ＤＰＴ」や「上位プロトコル」など、他のアイテムとすることもできる。また、複数のアイテムの組み合わせをキーアイテムとすることもできる。例えば、「ＳＩＰ−ＤＩＰ」や、「ＳＩＰ−ＤＰＴ」等をキーアイテムとすることもできる。同様に、基準アイテムについても、「ＳＩＰ」及び「ＤＩＰ」に代えて、他の任意のアイテム又は複数のアイテムの組み合わせを採用することもできる。また、集約アイテムについても、「ＳＩＰ，ＤＩＰ，ＳＩＰ−ＤＩＰ，ＤＰＴ」に代えて、他の任意のアイテム又は複数のアイテムの組み合わせを採用することもできる。
【０１７２】
Ｄ８．変形例８：
各実施例では、集約アイテムとして、キーアイテムを含まないアイテム（ＤＰＴ）が設定されていたが、集約アイテムとして、キーアイテムを含むアイテムのみを設定され得る構成であれば、統計集約装置４０における統計情報集約部４２を省略することもできる。この場合、各統計収集装置３１〜３４は、フローデータをそのまま統計情報として出力することができる。
【０１７３】
Ｄ９．変形例９：
各実施例では、第１グループは、第１統計収集装置３１及び第２統計収集装置３２で構成され、第２グループは、第３統計収集装置３３及び第４統計収集装置３４で構成されていたが、本発明はこれに限定されるものではない。例えば、第１グループを、第１統計収集装置３１及び第３統計収集装置３３で構成し、第２グループを、第２統計収集装置３２及び第４統計収集装置３４構成することもできる。また、両グループに属する統計収集装置の数は、同じであったが、異ならせることもできる。例えば、第１グループを３つの統計収集装置３１〜３３で構成し、第２グループを第４統計収集装置３４のみで構成することもできる。なお、統計収集装置の台数も３台に限らず任意の台数とすることもできる。
【０１７４】
Ｄ１０．変形例１０：
第２，３の実施例では、一次集約テーブル制御部６２は、５つのアイテム（ＳＩＰ，ＤＩＰ，上記プロトコル，ＳＰＴ，ＤＰＴ）の各値に基づき、パケットを集約していたが、これら５つのアイテムに加えて、パケットのヘッダに記載されている他の任意のアイテムに基づきパケットを集約することもできる。例えば、これら５つのアイテムに加えて、ＶＬＡＮ（Virtual LAN）の識別子や、ＴＴＬ（Time To Live）の値や、サービスタイプの値等に基づき、パケットを集約することもできる。
【０１７５】
Ｄ１１．変形例１１：
第１の実施例では、負荷分散装置２０から各統計収集装置３１〜３４に送信するデータは、パケットであったが、パケットに代えて、ヘッダ内の各アイテムの値のみを送信することもできる。このような構成により、負荷分散装置２０と各統計収集装置３１〜３４との間のトラヒックを低減させることができる。
【０１７６】
Ｄ１２．変形例１２：
各実施例では、パケットを集約するためにメモリ内にフローテーブルを生成／更新していたが、フローテーブルを用いずにパケットを集約することもできる。例えば、各フローテーブルの各フィールドに対応するレジスタを予め用意しておき、パケットを受信するたびに、該当するレジスタをカウントアップする構成とすることもできる。
【０１７７】
Ｄ１３．変形例１３：
各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。例えば、負荷分散装置２０の検索部２３の機能の一部をハードウェア回路で構成することもできる。
【符号の説明】
【０１７８】
３ａ…パケット受信バッファ、４ａ…キーアイテム格納部、４ｂ…集約アイテム格納部、４ｃ…数カウント対象アイテム格納部、４ｄ…数基準アイテム格納部、４ｅ…接続テーブル格納部、４ｆ…負荷分散出力先テーブル格納部、１０，１０ａ，１０ｂ…パケットフロー統計値取得システム、２０，２０ａ，２０ｂ…負荷分散装置、２１…制御部、２２…パケット受信部、２３…検索部、２４…パケット送信部、３１…第１統計収集装置、３２…第２統計収集装置、３３…第３統計収集装置、３４…第４統計収集装置、４０…統計集約装置、４１…システム制御部、４２…統計情報集約部、５０…管理用端末、６０，６０ａ，６０ｂ…フロー一次集約装置、６１…パケット取得部、６１ａ…パケット取得バッファ、６２…一次集約テーブル制御部、６３…メモリ、６３ａ…一次集約テーブル、６４…統計出力部、６４ａ…出力バッファ、７０…フロー単位負荷分散装置、９１〜９３…ルータ、９４…第１端末、９５…第２端末、９６…第３端末、９７…第１サーバ、９８…第２サーバ、１００…ネットワークシステム、１０１…ネットワーク、２２１…アイテム抽出部、２２２…パケット転送部、２３１…キーアイテム抽出部、２３２…ハッシュ演算部、２３３…出力先決定部、２３４…負荷分散出力先テーブル、２４１…第１送信部、２４２…第２送信部、２４３…第３送信部、２４４…第４送信部、３１１…制御部、３１２…パケット受信部、３１４…組み合わせ生成部、３１５…フローテーブル制御部、３１６…フローデータ出力部、３１７…フローデータ出力バッファ、３２０…メモリ、３３０…フローテーブル格納部、３３１，３３１ａ，３３１ｂ…ＳＩＰテーブル、３３２，３３２ａ〜３３２ｄ…ＳＩＰ−ＤＩＰテーブル、３３３，３３３ａ〜３３３ｄ…ＤＰＴテーブル、３３４，３３４ｃ，３３４ｄ…ＤＩＰテーブル、４１１…統計収集装置制御部、４１２…負荷分散装置制御部、４１３…制御情報蓄積バッファ、４１４…制御情報生成部、４１５…制御部、４２１…メモリ、４２１ａ…フローデータ集約テーブル、４２２…フローデータ集約部、４２３…集約アイテムチェック部、４２４…統計情報出力部、ＯＰ１…第１出力ポート、ＯＰ２…第２出力ポート、ＯＰ３…第３出力ポート、ＯＰ４…第４出力ポート
【図１】
2011049794.tif 000003
【図２】
2011049794.tif 000004
【図３】
2011049794.tif 000005
【図４】
2011049794.tif 000006
【図５】
2011049794.tif 000007
【図６】
2011049794.tif 000008
【図７】
2011049794.tif 000009
【図８】
2011049794.tif 000010
【図９】
2011049794.tif 000011
【図１０】
2011049794.tif 000012
【図１１】
2011049794.tif 000013
【図１２】
2011049794.tif 000014
【図１３】
2011049794.tif 000015
【図１４】
2011049794.tif 000016
【図１５】
2011049794.tif 000017
【図１６】
2011049794.tif 000018
【図１７】
2011049794.tif 000019
【図１８】
2011049794.tif 000020
【図１９】
2011049794.tif 000021
【図２０】
2011049794.tif 000022
【図２１】
2011049794.tif 000023
【図２２】
2011049794.tif 000024
【図２３】
2011049794.tif 000025
【図２４】
2011049794.tif 000026
【図２５】
2011049794.tif 000027