(57)【要約】【課題】トラフィックに関する統計情報の取得に関する設定を自動的に行う。【解決手段】ネットワーク中継機器３０は、内蔵する統計情報生成部４０でパケットをサンプリングしつつ、統計情報を生成して管理端末に統計情報パケットを送信する。設定値算出部４２は、トラフィック量やポーリングインターバル時間を設定した後、ＣＰＵ３４の使用率を所定の値以下とすることを基準としてサンプリングレートを自動的に設定する。このときサンプリングレートの算出は、予め用意された設定値テーブル６０を用いて行うことができる。ＣＰＵ３４の使用率が所定の値以下に抑えられるため、統計情報の生成以外の処理が大きく阻害されることはない。【選択図】図２
2011239218.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数の電子機器間で送受信される複数のパケットを前記ネットワーク内で中継するネットワーク中継機器であって、
複数のパケットを中継する過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得するパケット取得手段と、
前記パケット取得手段により取得された任意のパケットに基づき、前記ネットワーク内のトラフィックに関する統計情報を生成する統計情報生成手段と、
前記統計情報生成手段により生成された前記統計情報を所定の管理端末に対して送信する統計情報送信手段と、
前記統計情報生成手段による前記統計情報の生成に要する負荷を所定水準に設定することを基準として、前記サンプリングレートを設定するサンプリングレート設定手段と
を備えたネットワーク中継機器。
【請求項２】
請求項１に記載のネットワーク中継機器において、
少なくとも前記統計情報生成手段として前記統計情報を生成する処理を実行する中央処理装置を含み、
前記サンプリングレート設定手段は、
前記処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準として、前記サンプリングレートを設定することを特徴とするネットワーク中継機器。
【請求項３】
請求項１又は２に記載のネットワーク中継機器において、
前記統計情報生成手段による前記統計情報の生成に要した実際の負荷を取得する負荷取得手段をさらに備え、
前記サンプリングレート設定手段は、
前記負荷取得手段により取得された実際の負荷が所定水準を超える場合、設定済みの前記サンプリングレートを低下させることを特徴とするネットワーク中継機器。
【請求項４】
請求項１から３のいずれかに記載のネットワーク中継機器において、
前記サンプリングレート設定手段は、
単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合を前記サンプリングレートとして設定するとともに、前記サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることを特徴とするネットワーク中継機器。
【請求項５】
複数の電子機器間で送受信される複数のパケットを中継するネットワーク中継機器を有したネットワークと、
前記ネットワークを管理対象として前記ネットワーク外に配置された管理端末と、
前記ネットワーク中継機器により複数のパケットが中継される過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得するパケット取得手段と、
前記パケット取得手段により取得された任意のパケットに基づき、前記ネットワーク内のトラフィックに関する統計情報を生成する統計情報生成手段と、
前記統計情報生成手段により生成された前記統計情報を前記管理端末に対して送信する統計情報送信手段と、
前記統計情報生成手段による前記統計情報の生成に要する負荷を所定水準に設定することを基準として、前記サンプリングレートを設定するサンプリングレート設定手段と、
前記管理端末に送信された前記統計情報を収集して前記ネットワーク内のトラフィックに関する統計情報を取得する統計情報取得手段と
を備えた統計情報取得システム。
【請求項６】
請求項５に記載の統計情報取得システムにおいて、
前記ネットワーク中継機器は、
少なくとも前記統計情報生成手段として前記統計情報を生成する処理を実行する中央処理装置を含み、
前記サンプリングレート設定手段は、
前記処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準として、前記サンプリングレートを設定することを特徴とする統計情報取得システム。
【請求項７】
請求項５又は６に記載の統計情報取得システムにおいて、
前記統計情報生成手段による前記統計情報の生成に要した実際の負荷を取得する負荷取得手段をさらに備え、
前記サンプリングレート設定手段は、
前記負荷取得手段により取得された実際の負荷が所定水準を超える場合、設定済みの前記サンプリングレートを低下させることを特徴とする統計情報取得システム。
【請求項８】
請求項５から７のいずれかに記載の統計情報取得システムにおいて、
前記サンプリングレート設定手段は、
単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合を前記サンプリングレートとして設定するとともに、前記サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることを特徴とする統計情報取得システム。
【請求項９】
ネットワークを介して複数の電子機器間で送受信される複数のパケットがネットワーク中継機器により中継される過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得するパケット取得工程と、
前記パケット取得工程で取得された任意のパケットに基づき、前記ネットワーク内のトラフィックに関する統計情報を生成する統計情報生成工程と、
前記統計情報生成工程で生成された前記統計情報を所定の管理端末に対して送信する統計情報送信工程と、
前記パケット取得工程に先立ち、前記統計情報生成工程での前記統計情報の生成に要する負荷を所定水準に設定することを基準として、前記サンプリングレートを設定するサンプリングレート設定工程と、
前記管理端末に送信された前記統計情報を収集して前記ネットワーク内のトラフィックに関する統計情報を取得する統計情報取得工程と
を有する統計情報取得方法。
【請求項１０】
請求項９に記載の統計情報取得方法において、
前記サンプリングレート設定工程では、
前記ネットワーク中継機器が少なくとも前記統計情報生成手段として前記統計情報を生成する処理を実行する中央処理装置を含む場合、前記処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準として、前記サンプリングレートを設定することを特徴とする統計情報取得方法。
【請求項１１】
請求項９又は１０に記載の統計情報取得方法において、
前記統計情報生成工程での前記統計情報の生成に要した実際の負荷を取得する負荷取得工程をさらに有し、
前記サンプリングレート設定工程では、
前記負荷取得工程で取得された実際の負荷が所定水準を超える場合、設定済みの値を低下させて前記サンプリングレートを再設定することを特徴とする統計情報取得方法。
【請求項１２】
請求項９から１１のいずれかに記載の統計情報取得方法において、
前記サンプリングレート設定工程では、
単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合を前記サンプリングレートとして設定するとともに、前記サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることを特徴とする統計情報取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上のトラフィックに関する統計情報を取得する用途に適したネットワーク中継機器、統計情報取得システム及び統計情報取得方法に関する。
【背景技術】
【０００２】
従来、ネットワーク機器からトラフィックに関する統計情報を収集し、計測サーバ等でネットワークの性能を評価する計測システムの先行技術が知られている（例えば、特許文献１参照。）。統計情報を用いた評価手法とは、ネットワークを流通する全てのパケットを取得するのではなく、適度な割合でサンプリングしたパケットを用いてフローサンプルを生成し、そこから統計的にトラフィックの動向を調査する手法である。
【０００３】
一般にｓＦｌｏｗ（登録商標）等の統計手法で用いる統計情報には、サンプリングごとに生成されるフローサンプルと、ポーリングインターバルごとに生成されるカウンタサンプルが存在する。このうちフローサンプルには、ネットワークを流通するパケットのヘッダ部分だけを取り出した統計情報が含まれており、カウンタサンプルには、ネットワーク中継機器等で監視対象なるポートの統計情報が格納されている。これらフローサンプルやカウンタサンプルは、コレクタと呼ばれる計測サーバ等の監視装置に送信され、そこで統計情報として利用される。
【０００４】
上記の先行技術は、例えばネットワーク中継機器のように、ネットワーク内のトラフィックが集中する箇所では比較的高いサンプリングの割合で統計情報を収集しつつ、得られた統計情報からネットワークトラフィックの異常状態を判断すると、同じ種類のネットワーク機器に対するサンプリングの割合を小さくすることとしている。このため先行技術によれば、サンプリングの割合をある程度は高く設定して統計情報の精度を維持しつつ、異常発生時も高い割合でサンプリングを続けることによるトラフィック量の増大を抑えることで、ネットワークの負荷を軽減することができると考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２８６６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の先行技術は、基本的に異常状態を判断しなければ、常に同一のサンプリングレートを設定して統計情報を取得するものである。しかし、たとえ異常状態でなくとも、ネットワークのトラフィック（パケットの流通量）が一時的に増加した場合、それまでと同一のサンプリングレートを維持することが統計情報の取得にとって最適な設定であるとは限らない。
【０００７】
その一方で統計情報の取得に関する設定には、サンプリングレートの他にも監視対象となるポート数やパケットの入出力方向の別、さらにはカウンタサンプルを生成するポーリングインターバル時間といった多くのパラメータが存在し、これら全てを考慮した上で適切なサンプリングレートの値を一意に設定することは極めて困難である。
【０００８】
そこで本発明は、トラフィックに関する統計情報の取得に関する設定を自動的に行うことができる技術の提供を課題とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明は以下の解決手段を採用する。
本発明は、ネットワークを介して複数の電子機器間で送受信される複数のパケットをネットワーク内で中継するネットワーク中継機器である。特に本発明のネットワーク中継機器は、複数のパケットを中継する過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得するパケット取得手段と、パケット取得手段により取得された任意のパケットに基づき、ネットワーク内のトラフィックに関する統計情報を生成する統計情報生成手段と、統計情報生成手段により生成された統計情報を所定の管理端末に対して送信する統計情報送信手段と、統計情報生成手段による統計情報の生成に要する負荷を所定水準に設定することを基準として、サンプリングレートを設定するサンプリングレート設定手段とを備える。
【００１０】
上記のように統計情報を生成する機能は、ネットワークを管理する上で有用なものであり、この機能をネットワーク中継機器が内蔵することで、管理対象のネットワークから必要な統計情報を取得することができる。その一方で、ネットワーク中継機器には本来の中継動作を問題なく実行することが求められることから、統計情報を生成する際の負荷が本来の中継動作の妨げとなるべきではない。そこで本発明は、「統計情報の生成に要する負荷を所定水準に設定する」という明確な基準に則って最適なサンプリングレートを自動的に設定することとしている。このとき、「所定水準」を本来の中継動作を圧迫しない負荷の水準として予め定めておけば、統計情報の生成に要する負荷が中継動作を妨げることなく、最適な設定を用いてネットワーク中継機器により統計情報を生成することができる。
【００１１】
本発明のネットワーク中継機器は、少なくとも統計情報生成手段として統計情報を生成する処理を実行する中央処理装置（ＣＰＵ）を含むことが好ましい。この場合、上記のサンプリングレート設定手段は、その処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準としてサンプリングレートを設定することができる。
【００１２】
上記の態様であれば、「中央処理装置の使用率」という実用上の値を基準として適切なサンプリングレートを設定することができる。したがって、例えばネットワーク中継機器が本来の中継動作に必要とする中央処理装置の使用率から逆算し、予め統計情報の生成処理に割くことができる使用率の範囲内で「所定の値以下」を定めておけば、ネットワーク中継機器として最適なサンプリングレートを自動的に設定することができる。
【００１３】
また本発明のネットワーク中継機器は、統計情報生成手段による統計情報の生成に要した実際の負荷を取得する負荷取得手段をさらに備えてもよい。この場合、サンプリングレート設定手段は、負荷取得手段により取得された実際の負荷が所定水準を超える場合、設定済みのサンプリングレートを低下させることが好ましい。
【００１４】
上記の態様であれば、一度は最適に設定したサンプリングレートで統計情報を生成していても、その他の要因によって負荷が高くなった場合、それに合わせて最適なサンプリングレートに設定し直すことができる。これにより、トラフィック量の増大等による影響を考慮した上で最適な設定を自動的に行うことができる。
【００１５】
またサンプリングレート設定手段は、単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合をサンプリングレートとして設定するとともに、サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることが好ましい。
【００１６】
例えば、単位時間内に中継される全パケット数「Ｎ」に対し、同じ単位時間内に取得されるパケット数を「１」とすると、設定されるサンプリングレートは「１／Ｎ」となる。このときサンプリングレートとして「２のべき乗の逆数」又は「２のべき乗−１の逆数」（「Ｎ」の値が「２のべき乗」又は「２のべき乗−１」）を用いれば、コンピュータハードウェアを用いてサンプリングレート設定手段を実現することが容易となるため、より実用性に優れたものとなる。
【００１７】
本発明は、統計情報取得システムとして構成することができる。すなわち本発明のシステムは、複数の電子機器間で送受信される複数のパケットを中継するネットワーク中継機器を有したネットワークと、このネットワークを管理対象としてネットワーク外に配置された管理端末と、ネットワーク中継機器により複数のパケットが中継される過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得するパケット取得手段と、パケット取得手段により取得された任意のパケットに基づき、ネットワーク内のトラフィックに関する統計情報を生成する統計情報生成手段と、統計情報生成手段により生成された統計情報を管理端末に対して送信する統計情報送信手段と、統計情報生成手段による統計情報の生成に要する負荷を所定水準に設定することを基準として、サンプリングレートを設定するサンプリングレート設定手段と、管理端末に送信された統計情報を収集してネットワーク内のトラフィックに関する統計情報を取得する統計情報取得手段とを備えたものとなる。
【００１８】
本発明の統計情報取得システムによれば、管理対象となるネットワーク内のネットワーク中継機器で統計情報を生成し、これを管理端末で収集することにより、ネットワークの管理に資することができる。また、統計情報を生成する機能がネットワーク中継機器に内蔵されていても、その分の負荷がパケットの中継動作を妨げることないため、システム内で最適なサンプリングレートを自動的に設定しつつ、管理端末で必要な統計情報を取得することができる。
【００１９】
システムが有するネットワーク中継機器は、少なくとも統計情報生成手段として統計情報を生成する処理を実行する中央処理装置（ＣＰＵ）を含むものであってもよい。この場合、サンプリングレート設定手段は、処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準としてサンプリングレートを設定する。
【００２０】
上記の態様であれば、ネットワーク中継機器内での「中央処理装置の使用率」という実用上の値を基準として適切なサンプリングレートを設定することができる。したがって、例えばネットワーク中継機器が本来の中継動作に必要とする中央処理装置の使用率から逆算し、予め統計情報の生成処理に割くことができる使用率の範囲内で「所定の値以下」を定めておけば、システム全体として最適なサンプリングレートを自動的に設定することができる。
【００２１】
また本発明の統計情報取得システムは、統計情報生成手段による統計情報の生成に要した実際の負荷を取得する負荷取得手段をさらに備えてもよい。この場合、サンプリングレート設定手段は、負荷取得手段により取得された実際の負荷が所定水準を超える場合、設定済みのサンプリングレートを低下させることが好ましい。
【００２２】
上記の態様であれば、一度はシステムとして最適に設定したサンプリングレートでネットワーク中継機器が統計情報を生成していても、その他の要因によって負荷が高くなった場合、それに合わせて最適なサンプリングレートに設定し直すことができる。これにより、トラフィック量の増大等による影響を考慮した上で最適な設定を自動的に行うことができる。
【００２３】
本発明の統計情報取得システムにおけるサンプリングレート設定手段は、単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合をサンプリングレートとして設定するとともに、サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることができる。
【００２４】
この場合も同様に、例えば単位時間内に中継される全パケット数「Ｎ」に対し、同じ単位時間内に取得されるパケット数を「１」とすると、設定されるサンプリングレートは「１／Ｎ」となる。このときサンプリングレートとして「２のべき乗の逆数」又は「２のべき乗−１の逆数」（「Ｎ」の値が「２のべき乗」又は「２のべき乗−１」）を用いれば、システムにおいてコンピュータハードウェアを用いてサンプリングレート設定手段を実現することが容易となり、より実用性に優れたものとなる。
【００２５】
また本発明は、統計情報取得方法を提供する。本発明の統計情報取得方法は、以下の工程を有する。
（１）パケット取得工程
この工程では、ネットワークを介して複数の電子機器間で送受信される複数のパケットがネットワーク中継機器により中継される過程で、予め設定されたサンプリングレートに基づき複数のパケットの中から任意のパケットを取得する。
（２）統計情報生成工程
この工程では、上記（１）のパケット取得工程で取得された任意のパケットに基づき、ネットワーク内のトラフィックに関する統計情報を生成する。
（３）統計情報送信工程
この工程では、上記（２）の統計情報生成工程で生成された統計情報を所定の管理端末に対して送信する。
（４）サンプリングレート設定工程
この工程は、上記（１）のパケット取得工程に先立って実行される。すなわちこの工程は、上記（３）の統計情報生成工程での統計情報の生成に要する負荷を所定水準に設定することを基準として、サンプリングレートを設定するものである。
（５）統計情報取得工程
この工程では、管理端末に送信された統計情報を収集してネットワーク内のトラフィックに関する統計情報を取得する。
【００２６】
以上の工程（１）〜（５）を実行することにより、上述した統計情報取得システムとしての利点を得ることができる。
【００２７】
また上記（４）のサンプリングレート設定工程では、ネットワーク中継機器が少なくとも統計情報生成手段として統計情報を生成する処理を実行する中央処理装置（ＣＰＵ）を含む構成である場合、その処理の実行に伴う中央処理装置の使用率を所定の値以下にすることを基準としてサンプリングレートを設定することができる。
【００２８】
これにより、パケット取得工程の実行に先立ち、ネットワーク中継機器内での「中央処理装置の使用率」という実用上の値を基準として適切なサンプリングレートを設定することができる。したがって、例えばネットワーク中継機器が本来の中継動作に必要とする中央処理装置の使用率から逆算し、予め統計情報の生成処理に割くことができる使用率の範囲内で「所定の値以下」を定めておけば、統計情報取得方法の使用に際して最適なサンプリングレートを自動的に設定することができる。
【００２９】
統計情報取得方法は、さらに以下の工程を有していてもよい。
（６）負荷取得工程
この工程は、上記（５）の統計情報生成工程での統計情報の生成に要した実際の負荷を取得するものである。
この場合、上記（４）のサンプリングレート設定工程では、上記（６）の負荷取得工程で取得された実際の負荷が所定水準を超える場合、設定済みの値を低下させてサンプリングレートを再設定することができる。
【００３０】
上記の態様であれば、一度は統計情報取得方法において最適に設定したサンプリングレートでネットワーク中継機器が統計情報を生成していても、その他の要因によって負荷が高くなった場合、それに合わせて最適なサンプリングレートに設定し直すことができる。これにより、トラフィック量の増大等による影響を考慮した上で最適な設定を自動的に行うことができる。
【００３１】
また上記（４）のサンプリングレート設定工程では、単位時間内に中継される全パケット数のうち、同じ単位時間内に取得されるパケット数の割合をサンプリングレートとして設定するとともに、サンプリングレートとして２のべき乗の逆数を用いるか、もしくは２のべき乗から１を減じた値の逆数を用いることができる。
【００３２】
統計情報取得方法においても同様に、例えば単位時間内に中継される全パケット数「Ｎ」に対し、同じ単位時間内に取得されるパケット数を「１」とすると、設定されるサンプリングレートは「１／Ｎ」となる。このときサンプリングレートとして「２のべき乗の逆数」又は「２のべき乗−１の逆数」（「Ｎ」の値が「２のべき乗」又は「２のべき乗−１」）を用いれば、統計情報取得方法においてコンピュータハードウェアを用いてサンプリングレート設定手段を実現することが容易となり、より実用性に優れたものとなる。
【発明の効果】
【００３３】
本発明のネットワーク中継機器、統計情報取得システム及び統計情報取得方法は、統計情報の生成や取得に関して最適な設定を自動的に行いつつ、ネットワークの管理に資することができる。また、ネットワーク上のトラフィックに変動があっても、これに追従して最適な設定を自動的に再度行うことができる。したがって、外的な要因で最適な設定がずれた場合にも柔軟に対応し、ネットワーク中継機器での中継動作の安定性を維持することができる。
【図面の簡単な説明】
【００３４】
【図１】統計情報取得システムの構成を概略的に示す図である。
【図２】ネットワーク中継機器のハードウェア構成を概略的に示したブロック図である。
【図３】統計情報生成部の機能的な構成を示すブロック図である。
【図４】サンプリングレートの設定手順を示すフローチャートである。
【図５】サンプリングレートの設定処理の手順例を示したフローチャートである。
【図６】設定値テーブルの構成例を示す図である。
【図７】ＣＰＵの設計時（出荷時）に作成されたスペックデータの一例を示す特性図である。
【図８】統計情報生成部起動コントロールの手順例を示すフローチャートである。
【発明を実施するための形態】
【００３５】
以下、本発明の実施形態について図面を参照しながら説明する。なお本実施形態は、（１）ネットワーク内に配置されるネットワーク中継機器としての形態、（２）ネットワークのトラフィックに関する統計情報を取得する統計情報取得システムとしての形態、（３）統計情報取得システムを用いて実行される統計情報取得方法としての形態を含むものとする。
【００３６】
〔統計情報取得システムの概要〕
図１は、上記の形態（２）として挙げられる統計情報取得システムの構成を概略的に示す図である。この統計情報取得システムは、例えば管理端末１０を用いて管理対象となるネットワーク２０，２６等のトラフィックに関する統計情報を取得する用途に適している。なお、図１には管理対象として２つのネットワーク２０，２６が示されているが、この他にも管理対象となるネットワークが存在してもよい。
【００３７】
管理対象である１つのネットワーク２０には、例えば複数台のユーザ端末２２やウェブサーバ２４が接続されている他、図示しないメールサーバやＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）サーバ等が接続されている。このようなネットワーク２０は、例えば広域ネットワークとしての使用を想定した通信インフラである。
【００３８】
広域用のネットワーク２０内には、例えば複数台のネットワーク中継機器３０が設置されている。これら複数台のネットワーク中継機器３０は、ネットワークケーブル（図中参照符号なし）を介して接続され、ネットワーク２０内に物理的なトポロジを構成している。ネットワーク２０を介して複数のユーザ端末２２間、あるいはユーザ端末２２とウェブサーバ２４間で送受信されるパケット（フレーム）は、その過程でいずれかのネットワーク中継機器３０により中継される。なお、図１に示されているネットワーク中継機器３０はその一部であり、全てを網羅したものではない。また、ネットワーク中継機器３０の外形（外観）は図示のものに限られず、その他の形態もあり得る。例えば、物理的ではなく、論理的にソフトウェアエミュレーションによる仮想的なネットワーク中継機器の場合もあり得る。
【００３９】
管理端末１０は、例えばサーバとしての機能を有したコンピュータ機器であり、この管理端末１０は、例えば管理用ネットワーク１２に接続されている。管理端末１０には、管理用アプリケーションの１つである統計情報コレクタ（例えばｓＦｌｏｗコレクタ：ただし「ｓＦｌｏｗ」は登録商標）が実装されており、統計情報コレクタは、管理用ネットワーク１２を通じて管理対象のネットワーク２０，２６等から統計情報を取得（収集）する。
【００４０】
一方、管理対象のネットワーク２０を構成するネットワーク中継機器３０には、統計情報の取得に関する機能（以下、「統計情報取得エージェント」と称する。）が実装されている。統計情報取得エージェント（例えばｓＦｌｏｗエージェット：同じく「ｓＦｌｏｗ」は登録商標）は、ネットワーク中継機器３０のリソースを用いてパケットをサンプリングし、統計情報を生成して管理端末１０に統計情報を送信する。
【００４１】
上記の統計情報コレクタ及び統計情報取得エージェントは、ネットワーク管理用プロトコルの１つであるＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）に準拠している。管理端末１０は、ＳＮＭＰを用いて各ネットワーク中継機器３０の統計情報取得エージェントと通信を行い、それぞれから統計情報を収集する。また管理端末１０には、管理用のデータベースであるＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）１４が接続（又は内蔵）されており、このＭＩＢ１４には、統計情報の取得に関する管理情報が記録されている。管理端末１０は、ＭＩＢ１４にアクセスして管理情報を読み出し、管理対象となるネットワーク２０の状態を確認することができる。なお、ＳＮＭＰやＭＩＢ１４を用いた管理手法は公知であるため、ここではその詳細な説明を省略する。
【００４２】
〔ネットワーク中継機器の構成〕
図２は、ネットワーク中継機器３０のハードウェア構成を概略的に示したブロック図である。ネットワーク中継機器３０は、例えば複数のポート３０ａ，３０ｂを有する他、内蔵の電子機器としてスイッチＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）３２やＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）３４、フラッシュメモリ３６、主記憶メモリ３８を有している。また、この他にネットワーク中継機器３０は統計情報生成部４０を有しており、この統計情報生成部４０は、上記の統計情報取得エージェントとして機能する。
【００４３】
複数あるポート３０ａ，３０ｂのうち、いくつか（この例では４つ）のポート３０ａはネットワークケーブル（図２には示していない）を介して他のネットワーク中継機器３０（ポート３０ａ）と接続されている。これらポート３０ａは、例えば主にユーザパケットの入力又は出力に使用されている。ユーザパケットは、例えばネットワーク２０を介して送受信される、後述するポート３０ｂでの管理用パケットや統計情報パケット以外のパケットである。なお、ネットワーク中継機器３０には図示以外のポートが設けられていてもよい。
【００４４】
また１つのポート３０ｂは、図示しないネットワークケーブルを介して上記の管理用ネットワーク１２に接続されることで、管理用ポートとして確保されている。このポート３０ｂは、例えば主に管理用パケットの入力や統計情報パケットの出力に使用されている。管理用パケットは、ＳＮＭＰを用いて管理端末１０から送信されてくるパケットであり、この管理用パケットには統計情報の取得に関する設定情報が含まれている。また統計情報パケットは、ネットワーク中継機器３０から管理端末１０に向けて送信されるパケットであり、この統計情報パケットには、上記の統計情報取得エージェントで生成された統計情報が含まれている。
【００４５】
スイッチＬＳＩ３２は、複数のポート３０ａ間でのユーザパケットの入出力を制御する。これにより、ユーザパケットはネットワーク２０内で順に中継され、宛先となるユーザ端末２２やウェブサーバ２４に到達する。またＣＰＵ３４は、スイッチＬＳＩ３２による中継動作を制御する他、統計情報生成部４０による統計情報の生成処理に必要なシステムリソースを提供する。フラッシュメモリ３６は、例えばＥＥＰＲＯＭ等の不揮発記憶媒体である。フラッシュメモリ３６には各種のプログラムモジュールが格納されており、ＣＰＵ３４はこれらプログラムモジュールの実行を通して、上述した中継動作の制御や統計情報の生成処理を行う。また主記憶メモリ３８は、例えば書き換え可能なＲＡＭである。主記憶メモリ３８は、ＣＰＵ３４が動作中にバッファメモリとして利用可能な一時記憶領域を提供する。
【００４６】
統計情報生成部４０は、上記のように統計情報取得エージェントとしての機能を実現する要素である。統計情報生成部４０は、スイッチＬＳＩ３２を通じてパケット（キャプチャパケット）を取得したり、上記の統計情報パケットを生成してポート３０ｂから送出したりする機能を果たす要素である。また統計情報生成部４０には設定値算出部４２が内蔵されており、この設定値算出部４２は、統計情報パケットを生成する際のサンプリングレートを設定する機能を果たす。この例では、ネットワーク中継機器３０内にある１つの独立した機能要素として統計情報生成部４０を示しているが、統計情報生成部４０の機能はフラッシュメモリ３６やスイッチＬＳＩ３２に分散して組み込むことができる。以下、統計情報生成部４０の機能的な構成についてより具体的に説明する。
【００４７】
〔統計情報生成部の構成〕
図３は、統計情報生成部４０の機能的な構成を示すブロック図である。統計情報生成部４０は、上記の設定値算出部４２を有する他、例えばリンクアップ検出部４４、パケット取得部４６、サンプリング部４８、カウンタ５０、タイマ５２、ＣＰＵ使用率取得部５４、フローサンプル生成部５６及びカウンタサンプル生成部５８を有している。また設定値算出部４２には、参照用として設定値テーブル６０が付属する。
【００４８】
上記のリンクアップ検出部４４は、ネットワーク中継機器３０において実際にリンクアップしているポート３０ａを検出し、そのポート番号を特定する部分である。またパケット取得部４６は、統計情報パケットを生成するためのパケットを取得する部分であり、サンプリング部４８は、スイッチＬＳＩ３２にサンプリング動作を実行させる部分である。カウンタ５０は、各ポート３０ａで中継されたパケットの数をカウントする部分である。
【００４９】
なお、図３中に２点鎖線の枠で囲まれた各要素（リンクアップ検出部４４、パケット取得部４６、サンプリング部４８及びカウンタ５０）は、いずれもスイッチＬＳＩ３２のリソースを用いて実現することができる。この場合、これら要素はスイッチＬＳＩ３２に内蔵された形態となる。
【００５０】
設定値算出部４２は、サンプリング部４８によりサンプリング動作を行う頻度、つまりサンプリングレートを設定する部分であり、具体的には、単位時間あたりに中継される全パケット数に対して、その中からサンプリングするパケットの割合（１／Ｎ）を設定値として算出する。また設定値テーブル６０には、設定値の算出に際して参照される情報が予め記憶されている。タイマ５２は、経過時間を計測する一般的な機能要素であり、ＣＰＵ使用率取得部５４は、ＣＰＵ３４の使用率（処理負荷の度合）を取得する一般的な機能要素である。またフローサンプル生成部５６は、サンプリング動作ごとに統計情報（フローサンプル）を生成する部分であり、カウンタサンプル生成部５８は、ポーリングインターバルごとに別の統計情報（カウンタサンプル）を生成する部分である。
【００５１】
図３中に１点鎖線の枠で囲まれた各要素（設定値算出部４２、設定値テーブル６０、タイマ５２、ＣＰＵ使用率取得部５４、フローサンプル生成部５６及びカウンタサンプル生成部５８）は、いずれもフラッシュメモリ３６のリソースを用いて実現することができる。この場合、これら要素はフラッシュメモリ３６に内蔵された形態となる。
【００５２】
〔サンプリングレート設定値の算出〕
図４は、サンプリングレートの設定手順を示すフローチャートである。統計情報生成部４０は、例えばネットワーク中継機器３０の起動時に以下の設定手順を通じて設定値を算出し、サンプリングレートを設定することができる。以下、各手順について説明する。
【００５３】
ステップＳ１０：統計情報生成部４０は、上記のリンクアップ検出部４４によりリンクアップしているポート（複数のポート３０ａの中のいずれか）を検出する。ここで検出されたポートは、別途指定された監視対象ポートであった場合、監視対象ポートとして設定される。
【００５４】
ステップＳ１２：次に統計情報生成部４０は、監視対象ポートについてＩｎｇｒｅｓｓ（入力方向）又はＥｇｒｅｓｓ（出力方向）のいずれを監視対象とするか、もしくは、両方向をともに監視対象とするかを、別途指定された指示に基づき、決定する。
【００５５】
ステップＳ１４：統計情報生成部４０は、上記のカウンタ５０にて現在（現時点まで）のカウンタ値を取得する。
ステップＳ１６：続いて統計情報生成部４０は、上記のタイマ５２により時間を計測し、単位時間（例えば数秒）が経過するまで待機し（Ｎｏ）、単位時間が経過すると（Ｙｅｓ）、次のステップＳ１８に進む。
【００５６】
ステップＳ１８：統計情報生成部４０は、カウンタ５０にて単位時間経過後のカウンタ値を取得する。
ステップＳ２０：そして統計情報生成部４０は、ステップＳ１４で取得したカウンタ値とステップＳ１８で後から取得したカウンタ値との差を単位時間で除し、トラフィック量を算出する。例えば、先のカウンタ値が「１０パケット」であり、単位時間経過後のカウンタ値が「１００パケット」であれば、「（１００−１０）／単位時間」がトラフィック量（パケット数／時間）となる。
【００５７】
ステップＳ２２：次に統計情報生成部４０は、ポーリングインターバル時間を設定する。ポーリングインターバル時間は、例えば監視対象のポート数に１秒を掛けた時間とすることができる。例えば、設定した監視対象のポート数が「Ｐｎ個」であれば、「Ｐｎ×１秒」がポーリングインターバル時間となる。
【００５８】
ステップＳ２４：そして統計情報生成部４０は、サンプリングレートの設定処理を実行する。具体的には、上記の設定値算出部４２を起動させ、サンプリングレートの設定値を算出する。
【００５９】
なお、本実施形態では、監視対象ポート及び方向が別途指示されると記述したが、例えば、リンクアップだけで自動的に統計情報生成部４０にサンプリングレートの設定値を決定させてもよい。
【００６０】
図５は、サンプリングレートの設定処理の手順例を示したフローチャートである。設定値算出部４２は、以下の手順を通じてサンプリングレートの設定値を算出することができる。
【００６１】
ステップＳ３０：設定値算出部４２は、設定値の算出に必要な各種パラメータを設定する。具体的には、監視対象となるポート数、入出力方向の別、ポーリングインターバル時間等である。
【００６２】
ステップＳ３２，Ｓ３４：設定値算出部４２は上記の設定値テーブル６０を参照し、ＣＰＵ３４の使用率が所定の値以下となるサンプリングレートを算出する。例えば、設定値算出部４２は仮の候補値として定めたサンプリングレートを用いてトライ・アンド・エラーを行い、設定値テーブル６０上でＣＰＵ３４の使用率が所定の値（例えば数％）以下に収束しなければ（Ｎｏ）、候補値を変更してＣＰＵ３４の使用率を確認する。
【００６３】
ステップＳ３６：ＣＰＵ３４の使用率が所定の値以下に収束すると（ステップＳ３４：Ｙｅｓ）、設定値算出部４２はそのときの値をサンプリングレートの設定値として決定し、算出結果を保存する。
【００６４】
〔設定値テーブル〕
図６は、設定値テーブル６０の構成例を示す図である。設定値テーブル６０は、例えばＣＰＵ３４の設計時にスペックデータとして作成されている。設定値テーブル６０は、例えばサンプリングレート、監視対象ポート数、及びポーリングインターバル時間を各種のパラメータとし、各パラメータとＣＰＵ使用率との既知の関係から適切なサンプリングレートを算出するためのものである。このような設定値テーブル６０を用いたサンプリングレートの算出は、例えば以下の手法で行われる。
【００６５】
（１）仮にサンプリングレートの候補値を決定しておく。
（２）決定したサンプリングレートの候補値を固定とし、他のパラメータを用いてＣＰＵ使用率を確認する。
（３）ＣＰＵ使用率が所定の値を超えていれば、サンプリングレートの候補値を変更する。
（４）候補値の変更に伴い、ＣＰＵ使用率が所定の値以下に収束するときのサンプリングレートを設定値として決定する。
【００６６】
図７は、ＣＰＵ３４の設計時（出荷時）に作成されたスペックデータの一例を示す特性図である。例えば、トラフィック量及びサンプリングレートをいずれも固定値として考えた場合、統計情報の生成に要するＣＰＵ３４の使用率は、監視対象のポート数の関数として表される。したがって、あるネットワーク中継機器３０について、監視対象とするポート数がＰｎであるとすると、これに対応するＣＰＵ使用率は、設計時のスペックからＸ（％）となる。このときのＸ（％）が上記の所定の値以下であれば、固定値（候補値）として考えたサンプリングレートを実際の設定値として採用することができる。これに対し、Ｘ（％）が上記の所定の値以下とならない場合、サンプリングレートの固定値を変更してＣＰＵ使用率が所定の値以下に収束する値を算出する。
【００６７】
本発明の発明者は、（１）サンプリングレートが大きいほど、（２）監視対象のポート数が多いほど、（３）ポーリングインターバルが小さいほど、いずれもＣＰＵ使用率を押し上げるという特性に着目し、これらの条件からＣＰＵ使用率を一定値に抑えるサンプリングレートを算出可能であることを見出した。具体的には、以下の関係式からサンプリングレートを算出することが可能である。
ＣＰＵ使用率＝（係数Ａ）×（ポート数）×（トラフィック量）×（サンプリングレート）＋（定数Ｂ）
なお上式において、係数ＡはＣＰＵ３４が高性能であるほど小さい。また定数Ｂは、トラフィック量を「０」とした場合の定常的な値とする。これにより、上式に所望のＣＰＵ使用率（所定の値）を当てはめれば、その他のパラメータを固定として最適なサンプリングレートを算出可能であることがわかる。
【００６８】
なお本実施形態では、統計情報生成部４０をハードウェアで構成しているため、サンプリングレートの具体的な値は「１／２のべき乗（＝１／２ｎ）」、あるいは「１／２のべき乗−１（＝１／（２ｎ−１））」で設定することが望ましい。
【００６９】
〔統計情報取得方法〕
以上より、本実施形態で採用する統計情報取得方法は、次の工程を通じて実行することができる。
【００７０】
〔１〕サンプリングレート設定工程
例えば、ネットワーク中継機器３０の起動時に統計情報生成部４０で図４，図５の手順を実行し、ＣＰＵ３４の使用率が所定の値以下となるサンプリングレートを設定する。「所定の値」は、ＣＰＵ３４の定常的な処理の実行に支障とならない使用率とすることができる。
〔２〕パケット取得工程
設定されたサンプリングレートに基づき、ネットワーク中継機器３０によりパケットが中継される過程で複数のパケットの中から任意のパケットを取得する。
〔３〕統計情報生成工程
設定したサンプリングレート（設定値）に基づき、ネットワーク中継機器３０の統計情報生成部４０（フローサンプル生成部５６）で統計情報を生成する。
〔４〕統計情報送信工程
生成した統計情報をネットワーク中継機器３０から統計情報パケットとして管理端末１０に送信する。
〔５〕統計情報取得工程
統計情報取得システムの管理端末１０は、統計情報コレクタの機能を用いて統計情報パケットを取得（収集）する。統計情報コレクタは、複数のネットワーク中継機器３０から取得した統計情報パケットを解析し、管理対象となるネットワーク２０のトラフィックを評価することができる。
【００７１】
また、以下の工程を適宜追加してもよい。
〔６〕負荷取得工程
ＣＰＵ使用率取得部５４によりＣＰＵ３４の使用率を監視する。その結果、使用率が所定の値を超えた場合、〔１〕の工程で設定したサンプリングレートを低下させる。
【００７２】
また本実施形態については、以下の好ましい変形例を適用することができる。
〔変形例１〕
ＣＰＵ使用率取得部５４によりＣＰＵ３４の使用率を定期的に監視し、使用率が所定の値を超えている場合、設定済みのサンプリングレート（設定値）を低下させる。これにより、一度は最適に設定したサンプリングレートで統計情報の生成を行っていても、何らかの要因（例えば単位時間あたりのトラフィック量の増加）によってＣＰＵ３４の使用率が増加した場合、改めて使用率を所定の値以下に抑えることができる。
【００７３】
〔変形例２〕
変形例２は、本実施形態で管理対象のネットワーク２０にＶＬＡＮの設定があることを想定したものである。例えば、ネットワーク２０についてのＶＬＡＮ設定テーブルを参照し、使用されているＶＬＡＮが複数ある場合、使用中のＶＬＡＮの数だけ統計情報生成部４０を作動させることができる。
【００７４】
〔変形例３〕
変形例３は、本実施形態において設定値算出部４２を常時動作させるものである。上記のように適切なサンプリングレートは、ネットワーク中継機器３０の起動時に取得したトラフィック量を用いて設定することができるが、変形例３では常時、設定値算出部４２を動作させ、トラフィック量のリアルタイムな変動に追従してサンプリングレートを動的に算出する。
【００７５】
図８は、統計情報生成部起動コントロールの手順例を示すフローチャートである。この手順は、例えばネットワーク中継機器３０の起動時にＣＰＵ３４により実行することができる。以下、手順例に沿って説明する。
【００７６】
ステップＳ５０：ＣＰＵ３４は、常時サンプリングレートの算出を行う初期設定がされているか否かを確認する。初期設定の確認は、例えばフラッシュメモリ３６に設定された初期設定フラグの値を用いて行うか、もしくは、物理的な接点を切り替えるスイッチの状態に基づいて行うことができる。
【００７７】
ステップＳ５２：常時算出する初期設定がされている場合（ステップＳ５０：Ｙｅｓ）、ＣＰＵ３４は設定値算出部４２の動作を「常駐」に設定する。
ステップＳ５４：そして、ＣＰＵ３４は常駐時に適用される動作条件を設定する。例えば、設定値算出部４２がサンプリングレートの算出を行うインターバル（割り込み周期）の条件を設定する。この場合、設定値算出部４２は設定された動作条件でサンプリングレートを算出する。これにより、トラフィック量が一時的に変動した場合、その変動に追従して最適なサンプリングレートをリアルタイムに設定することができる。
【００７８】
ステップＳ５６：特に常時算出する初期設定がされていなければ（ステップＳ５０：Ｎｏ）、ＣＰＵ３４は設定値算出部４２の動作を起動時に設定する。
【００７９】
上述した実施形態（変形例１〜３を含む）によれば、ＣＰＵ３４の使用率を所定の値以下とすることを基準として最適なサンプリングレートを自動的に算出し、その設定を行うことができる。これにより、統計情報の生成に伴うＣＰＵ３４の負荷が極端に増大することを抑え、そのシステムリソースを適切に利用することができる。
【００８０】
また、一度設定したサンプリングレートを再設定したり、トラフィック量の変動に追従して動的に設定したりすることができるため、外的な要因による最適値のずれに対しても柔軟に対応することができる。
【００８１】
本発明は上述した一実施形態に制約されることなく、種々に変形して実施することができる。例えば、設定値算出部４２はＣＰＵ３４の使用率を所定の値以下とするサンプリングレートを算出しているが、使用率を一定値に収束するようにサンプリングレートを算出する態様であってもよい。また、上限値と下限値を設定し、使用率を所定の範囲内で最適なサンプリングレートを算出する態様であってもよい。この場合、ＣＰＵ３４の使用率が下限値を下回ると、設定値算出部４２はサンプリングレートを増加させるように動作する。
【符号の説明】
【００８２】
１０    管理端末
１２    管理用ネットワーク
２０    ネットワーク
２２    ユーザ端末
２４    ウェブサーバ
３０    ネットワーク中継機器
３０ａ，３０ｂ  ポート
３２    スイッチＬＳＩ
３４    ＣＰＵ
３６    フラッシュメモリ
３８    主記憶メモリ
４０    統計情報生成部（統計情報生成手段）
４２    設定値算出部（サンプリングレート設定手段）
４６    パケット取得部（パケット取得手段）
５４    ＣＰＵ使用率取得部（負荷取得手段）
５６    フローサンプル生成部（統計情報送信手段）
５８    カウンタサンプル生成部
６０    設定値テーブル（サンプリングレート設定手段）
【図１】
2011239218.tif 000003
【図２】
2011239218.tif 000004
【図３】
2011239218.tif 000005
【図４】
2011239218.tif 000006
【図５】
2011239218.tif 000007
【図６】
2011239218.tif 000008
【図７】
2011239218.tif 000009
【図８】
2011239218.tif 000010