(57)【特許請求の範囲】
【請求項１】
ネットワークを流通するデータの転送制御に用いられるレコードごとに、当該レコードの条件に合致したデータ量の履歴に基づいて、前記データ量の変動の大きさを評価する第１の評価部と、
前記レコードごとに、当該レコードの条件に基づいて、当該レコードの空間の大きさを評価する第２の評価部と、
前記第１の評価部による評価結果と、前記第２の評価部による評価結果とに基づいて、前記レコードごとに、一定期間内に所定量以上のデータ量に係るデータが当該レコードの条件に合致する可能性を示す指標値を計算する計算部と、
を有する評価装置。
【請求項２】
前記第１の評価部は、前記データ量の履歴に関して標準偏差を算出し、前記履歴を構成する各データ量と、前記標準偏差との比較に基づいて、前記変動の大きさを評価する、
ことを特徴とする請求項１記載の評価装置。
【請求項３】
前記第１の評価部は、前記データ量の履歴に関して標準偏差と平均値とを算出し、前記標準偏差を前記平均値で除した値に基づいて、前記変動の大きさを評価する、
ことを特徴とする請求項１記載の評価装置。
【請求項４】
前記第２の評価部は、前記条件を構成する項目のうち、値が指定されていない項目の数に基づいて、前記空間の大きさを評価する、
ことを特徴とする請求項１乃至３いずれか一項記載の評価装置。
【請求項５】
前記第２の評価部は、前記条件のうち、値が特定されていない部分のビット数に基づいて、前記空間の大きさを評価する、
ことを特徴とする請求項１乃至３いずれか一項記載の評価装置。
【請求項６】
コンピュータが、
ネットワークを流通するデータの転送制御に用いられるレコードごとに、当該レコードの条件に合致したデータ量の履歴に基づいて、前記データ量の変動の大きさを評価する第１の評価手順と、
前記レコードごとに、当該レコードの条件に基づいて、当該レコードの空間の大きさを評価する第２の評価手順と、
前記第１の評価手順における評価結果と、前記第２の評価手順における評価結果とに基づいて、前記レコードごとに、一定期間内に所定量以上のデータ量に係るデータが当該レコードの条件に合致する可能性を示す指標値を計算する計算手順と、
を実行することを特徴とする評価方法。
【請求項７】
コンピュータに、
ネットワークを流通するデータの転送制御に用いられるレコードごとに、当該レコードの条件に合致したデータ量の履歴に基づいて、前記データ量の変動の大きさを評価する第１の評価手順と、
前記レコードごとに、当該レコードの条件に基づいて、当該レコードの空間の大きさを評価する第２の評価手順と、
前記第１の評価手順における評価結果と、前記第２の評価手順における評価結果とに基づいて、前記レコードごとに、一定期間内に所定量以上のデータ量に係るデータが当該レコードの条件に合致する可能性を示す指標値を計算する計算手順と、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価装置、評価方法、及びプログラムに関する。
【背景技術】
【０００２】
新しいトラヒック制御技術として、近年、ＯｐｅｎＦｌｏｗに代表されるＳＤＮ（Software Defined Network）技術への注目が高まっている。ＳＤＮ技術の登場により、従来のネットワーキング技術では困難であったマイクロフロー単位の経路制御が技術的に可能となった。また、ＮｅｔＦｌｏｗ等のフロー計測技術の普及も進んでおり、マイクロフロー単位の詳細なトラヒック情報（フローデータ）を把握することが容易となっている。
【０００３】
ＯｐｅｎＦｌｏｗでは、ＯｐｅｎＦｌｏｗスイッチ上のフローエントリを用いてフローの制御が行われる。フローエントリはフロー識別フィールドとアクションフィールドとを含む。フロー識別フィールドは、発着ＩＰアドレス、発着ポート番号、プロトコル番号等、フロー（例えば、パケット）に対する条件を示す。アクションフィールドは、特定ポートへの出力や、フローのドロップ等、条件に合致したフロー（例えば、パケット）の処理方法を示す。
【０００４】
条件にワイルドカードを含むフローエントリでは、単一のエントリで複数のフローを制御することができる。ワイルドカードを含むフローエントリを用いることで、少数のフローエントリで大量のフローを制御できる。
【０００５】
一方で、インターネットでは突発的に大量のフロー（スパイクフロー）が発生することがある。スパイクフローが特定のリンクに集中した場合、当該リンクにおいて輻輳が生じ、結果としてネットワーク全体のパフォーマンスが低下する可能性がある。
【０００６】
スパイクフローに対しては、トラヒックシェーピング、迂回制御といった個別制御を実施することで、ネットワーク全体のパフォーマンスの低下を防ぐことができる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】A. Lakhina, M. Crovella, and C. Diot. Diagnosing Network-Wide Traffic Anomalies. In ACM SIGCOMM,Portland, August 2004.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
スパイクフローの要因が特定出来る場合には、スパイクフローの発着アドレス、発着ポート番号に基づいて、上記個別制御を実施すればよいが、アプリケーションやネットワーク端末の多様化によって、これらの要因を特定することがますます困難となっている。
【０００９】
本発明は、上記の点に鑑みてなされたものであって、突発的に大量のフローが発生する可能性を評価可能とすることを目的とする。
【課題を解決するための手段】
【００１０】
そこで上記課題を解決するため、評価装置は、ネットワークを流通するデータの転送制御に用いられるレコードごとに、当該レコードの条件に合致したデータ量の履歴に基づいて、前記データ量の変動の大きさを評価する第１の評価部と、前記レコードごとに、当該レコードの条件に基づいて、当該レコードの空間の大きさを評価する第２の評価部と、前記第１の評価部による評価結果と、前記第２の評価部による評価結果とに基づいて、前記レコードごとに、一定期間内に所定量以上のデータ量に係るデータが当該レコードの条件に合致する可能性を示す指標値を計算する計算部と、を有する。
【発明の効果】
【００１１】
突発的に大量のフローが発生する可能性を評価可能とすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態におけるネットワーク構成例を示す図である。
【図２】本発明の実施の形態におけるフロー評価装置のハードウェア構成例を示す図である。
【図３】本発明の実施の形態におけるフロー評価装置の機能構成例を示す図である。
【図４】フロー評価装置が実行する処理手順の一例を説明するためのフローチャートである。
【図５】フローエントリ情報記憶部の構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるネットワーク構成例を示す図である。図１には、４つのエッジノード４０、３つの転送装置３０、１つの制御装置２０、及び１つのフロー評価装置１０が示されている。
【００１４】
各エッジノード４０は、パケットのトラヒックを発生させる装置である。すなわち、各エッジノード４０は、パケットの発信元又は宛先に相当する。各エッジノード４０は、いずれかの転送装置３０にネットワークを介して接続される。
【００１５】
各転送装置３０は、ＳＤＮ（Software Defined Network）／ＯｐｅｎＦｌｏｗに対応したスイッチ（ＯｐｅｎＦｌｏｗスイッチ）である。各転送装置３０は、いずれかのエッジノード４０又は他の転送装置３０にネットワークを介して接続される。各転送装置３０は、フローエントリの集合であるフローテーブルに従って、エッジノード４０間のパケットのフローを制御する。フローエントリは、ネットワークを流通するデータの転送制御に用いられる情報であり、フロー識別子、アクション、及びフローカウンタ等を含む。フロー識別子は、フロー（例えば、パケット）に対する条件を示す。アクションは、当該フローエントリの条件に合致したフロー（例えば、パケット等のデータ）の処理方法を示す。フローカウンタは、統計情報であり、例えば、当該フローエントリの条件に合致して転送されたパケット数およびバイト数を示す。なお、本実施の形態において、斯かるパケット数又はバイト数を、「トラヒック量」という。
【００１６】
制御装置２０は、ＳＤＮ／ＯｐｅｎＦｌｏｗに対応したコントローラ（ＯｐｅｎＦｌｏｗコントローラ）である。制御装置２０は、各転送装置３０に対してフローテーブルを設定する。制御装置２０は、また、定期的に各転送装置３０にアクセスし、各転送装置３０における各フローエントリのフロー識別子及びフローカウンタ値を取得する。なお、制御装置２０と各転送装置３０との接続形態は、所定のものに限定されない。
【００１７】
フロー評価装置１０は、各転送装置３０のフローテーブルの各フローエントリのフロー識別子とフローカウンタ値とを制御装置２０から取得し、取得されたフロー識別子及びフローカウンタ値に基づいてスパイク指数を計算するコンピュータである。スパイク指数とは、突発的に大量のフロー（以下、「スパイクフロー」という。）がマッチする（フローエントリの条件に合致する）可能性を示す指標値である。換言すれば、スパイク指数は、一定期間内に所定量以上のフローがマッチする可能性を示す指標値である。事前に各フローエントリのスパイク指数が評価されることで、スパイク指数の高いフローエントリに対して個別制御を実施し、ネットワーク全体のパフォーマンス低下を防ぐことができる。フロー評価装置１０は、ネットワークを介して制御装置２０に接続される。
【００１８】
図２は、本発明の実施の形態におけるフロー評価装置のハードウェア構成例を示す図である。図２のフロー評価装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１９】
フロー評価装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２０】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってフロー評価装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２１】
図３は、本発明の実施の形態におけるフロー評価装置の機能構成例を示す図である。図３において、フロー評価装置１０は、フローエントリ情報取得部１１、既知リスク評価部１２、未知リスク評価部１３、スパイク指数計算部１４、スパイク推定部１５、及び出力部１６等を有する。これら各部は、フロー評価装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。フロー評価装置１０は、また、フローエントリ情報記憶部１７を利用する。フローエントリ情報記憶部１７は、補助記憶装置１０２、又はフロー評価装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２２】
フローエントリ情報取得部１１は、各転送装置３０の各フローエントリのフロー識別子及びフローカウンタ値を、制御装置２０から取得する。取得されたフロー識別子及びフローカウンタ値は、フローエントリごとに、フローエントリ情報記憶部１７に記憶される。
【００２３】
既知リスク評価部１２は、フローエントリごとに、当該フローエントリの条件に合致したデータ量（トラヒック量）の履歴に基づいて、データ量（トラヒック量）の変動の大きさを評価する。より詳しくは、既知リスク評価部１２は、各フローエントリの過去の時系列のトラヒック量（フローカウンタ値）が示す、過去のトラヒックの変動パターンに基づいて、過去に観測済みのスパイクフローが再度発生するリスク（以下、「既知リスク」という。）を、フローエントリごとに評価する。評価結果は、所定の評価値に指標化される。
【００２４】
未知リスク評価部１３は、フローエントリごとに、当該フローエントリの条件に基づいて、当該フローエントリの空間の大きさを評価する。より詳しくは、各フローエントリのフロー識別子が示すフロー空間に基づいて、将来に未知のスパイクフローが発生するリスク（以下、「未知リスク」という。）を評価する。評価結果は、所定の評価値に指標化される。なお、フロー空間の詳細については後述される。
【００２５】
スパイク指数計算部１４は、既知リスク評価部１２による評価結果と、未知リスク評価部１３による評価結果とに基づいて、フローエントリごとに、スパイク指数を計算する。すなわち、スパイク指数計算部１４は、将来においてスパイクフローを、（１）過去に発生したことのある既知のスパイクフローと、（２）１度も発生したことのない未知のスパイクフローとの２つのパターンに分類し、（１）及び（２）のそれぞれのリスクを併せてスパイク指数を計算する。
【００２６】
スパイク推定部１５は、スパイク指数計算部１４によってフローエントリごとに計算されたスパイク指数に基づいて、将来的にスパイクフローにマッチする可能性の高いフローエントリを推定する。
【００２７】
出力部１６は、スパイク推定部１５による推定結果を出力する。出力形態は所定のものに限定されない。例えば、液晶ディスプレイ等の表示装置への表示であってもよいし、プリンタへの出力であってもよい。又は、例えば、電子メール等によって、ネットワークを介して送信されてもよい。
【００２８】
以下、フロー評価装置１０が実行する処理手順について説明する。図４は、フロー評価装置が実行する処理手順の一例を説明するためのフローチャートである。
【００２９】
ステップＳ１０１において、フローエントリ情報取得部１１は、制御装置２０によって各転送装置３０から収集されている、各転送装置３０のフローテーブルの各フローエントリのフロー識別子及びフローカウンタ値等を含む情報（以下、「フローエントリ情報」という。）を取得する。取得されたフローエントリ情報は、フローエントリ情報記憶部１７に記憶される。
【００３０】
図５は、フローエントリ情報記憶部の構成例を示す図である。図５には、フローエントリ情報記憶部１７において、フローエントリごとに記憶されているフローエントリ情報テーブルのうちの一つが示されている。すなわち、フローエントリ情報記憶部１７には、各転送装置３０のフローエントリごとに、フローエントリ情報テーブルが記憶されている。
【００３１】
フローエントリ情報テーブルの各レコードは、時刻、発信元ＩＰアドレス、宛先ＩＰアドレス、発信元ポート番号、宛先ポート番号、プロトコル番号、及びフローカウンタ値等の項目を有する。時刻は、制御装置２０によって、当該レコードに係るフローエントリ情報が転送装置３０から取得された時刻を示す。したがって、フローエントリ情報テーブルには、制御装置２０による、各転送装置３０からのフローエントリ情報の収集時期ごとに、レコードが記憶される。
【００３２】
発信元ＩＰアドレスからプロトコル番号までは、フロー識別子を構成する項目である。フローカウンタ値は、当該レコードの時刻における、フローカウンタ値である。
【００３３】
なお、ここでは、ステップＳ１０１が、制御装置２０によるフローエントリ情報の収集の周期と同じ周期で実行されることとする。したがって、ステップＳ１０１では、各転送装置３０に対応する各フローエントリ情報テーブルに、１つのレコードが追加される。
【００３４】
続いて、既知リスク評価部１２は、フローエントリ情報記憶部１７を参照して既知リスクを評価する（Ｓ１０２）。既知リスク評価部１２は、既知リスクを、過去のトラヒック量の変動の中でスパイクフローが発生した回数（割合）、又は過去のトラヒック量の変動の変動係数に基づいて評価する。前者は、５σ−法で評価される。後者は、ＣＶ（Coefficient of variation）法で評価される。
【００３５】
５σ−法では、トラヒック量の標準偏差が閾値として用いられる。具体的には、過去の或る期間のトラヒック量の標準偏差σを計算し、当該或る期間に含まれる各時刻について、標準偏差σと当該時刻におけるトラヒック量との比較に基づいて、当該或る期間におけるトラヒック量の変動の大きさが評価される。例えば、当該或る期間に含まれる時刻のうち、トラヒック量が５σ値以上である時刻の回数が、既知リスクの評価値として用いられる。なお、閾値としての５σは一例に過ぎない。３σであってもよいし、σに基づく他の値であってもよい。
【００３６】
なお、標準偏差σは、以下の式（１）によって算出可能である。
【００３７】
【数１】
0005862811.tif 000002
ここで、ｙｉ（ｔｎ）は、フローエントリｉの時刻ｔｎにおけるトラヒック量である。時刻ｔｎにおけるトラヒック量とは、時刻ｔｎのフローカウンタ値から時刻ｔｎ−１のフローカウンタ値を減じた値である。なお、ｎは、各時刻の時系列の順番を示す。また、Ｎの値は、例えば、評価期間に含まれる時刻の数（フローエントリ情報テーブルのレコード数）である。評価期間は、例えば、予め設定されてもよい。本実施の形態では、Ｎの値は、２０であるとする。
【００３８】
５σ−法において、既知リスク評価部１２は、各フローエントリ情報テーブルについて（すなわち、各フローエントリについて）、直近の２０個分（最後から２０個分）のレコードについて、標準偏差σを算出する。既知リスク評価部１２は、当該２０個のレコードの中で、フローカウンタ値が５σ以上であるレコードの数（すなわち、時刻の数）をカウントする。当該レコードの数のカウント結果が、直近の評価期間における、５σ−法による既知リスクの評価値である。なお、ステップＳ１０１以降が、一定期間ごとに繰り返される過程において、評価期間の長さは、毎回同じである。したがって、各評価期間において、フローカウンタ値が５σ以上である時刻の数は、実質的に、各評価期間において、フローカウンタ値が５σ以上である時刻の割合を示す。なお、仮に、評価期間が一定でない場合には、各評価期間において、フローカウンタ値が５σ以上である時刻の数を、当該評価期間における時刻の数によって除した値が、５σ−法による既知リスクの評価値とされてもよい。
【００３９】
一方、ＣＶ法は、トラヒック変動パターンの変動係数ＣＶが、評価値として用いられる。変動係数ＣＶは、例えば、以下の式（２）よって算出される。
【００４０】
【数２】
0005862811.tif 000003
ここで、各変数の意味は、式（１）と同じである。すなわち、変動係数ＣＶは、標準偏差σを、平均値（算出平均）によって除することにより得られる値である。
【００４１】
ＣＶ法において、既知リスク評価部１２は、各フローエントリ情報テーブルについて（すなわち、各フローエントリについて）、直近の２０個分のレコードについて、変動係数ＣＶを計算する。
【００４２】
なお、ステップＳ１０２では、５σ−法及びＣＶ法のいずれが使用されてもよい。また、例えば、標準偏差σが、既知リスクの評価値とされてもよい。トラヒックの変動パターンを評価することが可能な値であれば、その他の評価値が用いられてもよい。
【００４３】
続いて、未知リスク評価部１３は、各フローエントリのフロー識別子のフロー空間の大きさに基づいて、未知リスクをフローエントリごとに評価する（Ｓ１０３）。具体的には、フロー空間の大きさが、未知リスクの評価値とされる。フロー空間の大きさの評価方法としては、例えば、Ｄｉｍｅｎｓｉｏｎ法又はＢｉｔ法が用いられる。
【００４４】
Ｄｉｍｅｎｓｉｏｎ法では、フロー識別子における未指定次元数が、フロー空間の大きさの評価値（すなわち、未知リスクの評価値）とされる。未指定次元とは、フロー識別子の中で、値が指定されていない次元（項目）をいう。例えば、フロー識別子が、発信元ＩＰアドレス、宛先ＩＰアドレス、発信元ポート番号、宛先ポート番号、及びプロトコル番号の５次元で構成される場合に、宛先ＩＰアドレスとプロトコル番号のみに値が指定されているフロー識別子の未指定次元数は、３となる。したがって、この場合、未知リスクの評価値は、３となる。
【００４５】
Ｄｉｍｅｎｓｉｏｎ法において、未知リスク評価部１３は、各フローエントリ情報テーブルについて（すなわち、各フローエントリについて）、例えば、最新のレコード（すなわち、ステップＳ１０１において取得されたフローエントリ情報が記録されたレコード）の発信元ＩＰアドレス、宛先ＩＰアドレス、発信元ポート番号、宛先ポート番号、及びプロトコル番号のうち、値が指定されていない項目（次元）の数をカウントする。このカウント結果が、未指定次元数であり、Ｄｉｍｅｎｓｉｏｎ法による未知リスクの評価値である。
【００４６】
一方、Ｂｉｔ法では、フロー識別子の未指定ビット数が、フロー空間の大きさの評価値（すなわち、未知リスクの評価値）とされる。未指定ビットとは、フロー識別子の中で、ワイルドカードやネットワークマスクが適用されたビット数とをいう。すなわち、未指定ビットとは、フロー識別子の中で値が特定されていない部分のビット数である。例えば、フロー識別子が、発信元ＩＰアドレス（３２ビット）＋宛先ＩＰアドレス（３２ビット）＋発信元ポート番号（１６ビット）＋宛先ポート番号（１６ビット）＋プロトコル番号（８ビット）の計１０４ビットで表現される場合、宛先ＩＰアドレスと宛先ポート番号のみに値（ワイルドカードを含まない値）が指定されており、他の項目には値が指定されていないか、ワイルドカードが指定されている場合には、未指定ビット数は、５６ビットとなる。また、各項目の値の一部にワイルドカードが指定される場合も有る。この場合、当該一部のビット数が、未指定ビット数に加算される。
【００４７】
Ｂｉｔ法において、未知リスク評価部１３は、例えば、各フローエントリ情報テーブルについて（すなわち、各フローエントリについて）、最新のレコードの発信元ＩＰアドレス、宛先ＩＰアドレス、発信元ポート番号、宛先ポート番号、及びプロトコル番号のうち、ワイルドカード等に置き換えられている部分、又は値が指定されていない部分のビット数をカウントする。このカウント結果が、未指定ビット数であり、Ｂｉｔ法による未知リスクの評価値である。
【００４８】
なお、Ｄｉｍｅｎｓｉｏｎ法及びＢｉｔ法のいずれが使用されてもよい。また、Ｄｉｍｅｎｓｉｏｎ法においては、未指定次元数の割合が、Ｂｉｔ法においては、未指定ビット数の割合が、それぞれ未知リスクの評価値とされてもよい。本実施の形態においては、基本的に、フロー識別子の次元数及び総ビット数は固定であるため、未指定次元数及び未指定ビット数は、実質的に、未指定次元数の割合又は未指定ビット数の割合に相当する。
【００４９】
続いて、スパイク指数計算部１４は、以下の式（３）に基づいて、各フローエントリのスパイク指数ＳＩを計算する（Ｓ１０４）。
【００５０】
ＳＩｉ＝αＥ（Ｙｉ）＋βＵ（ｆｉ）  ・・・（３）
ここで、各変数の意味は、以下の通りである。
【００５１】
ＳＩｉ：フローエントリｉのスパイク指数
Ｙｉ＝（ｙｉ（ｔ１），ｙｉ（ｔ２），・・・，ｙｉ（ｔＮ））Ｔ：フローエントリｉのトラヒック量（フローカウンタ値）
ｙｉ（ｔ）：フローエントリｉの時刻ｔにおけるトラヒック量（フローカウンタ値）
ｆｉ：フローエントリｉのフロー識別子のフロー空間
α：既知リスクに対する重み係数
β：未知リスクに対する重み係数
Ｅ（Ｙｉ）：既知リスクの評価値
Ｕ（ｆｉ）：未知リスクの評価値
すなわち、スパイク指数計算部１４は、フローエントリごとに、当該フローエントリに関してステップＳ１０２において得られた既知リスクの評価値を式（３）のＥ（Ｙｉ）に代入し、当該フローエントリに関してステップＳ１０３において得られた未知リスクの評価値を式（３）のＵ（ｆｉ）に代入して、当該フローエントリのスパイク指数を算出する。なお、重み係数α及びβは、既知リスク及び未知リスクの評価方法に応じて選択されてもよい。例えば、既知リスクについて、５σ−法に対するαの値と、ＣＶ法に対するαの値とが予め設定されており、いずれの評価方法が用いられたのかに応じて、αの値が選択されてもよい。同様に、未知リスクについて、Ｄｉｍｅｎｓｉｏｎ法に対するβの値と、Ｂｉｔ法に対するβの値とが予め設定されており、いずれの評価方法が用いられたのかに応じて、βの値が選択されてもよい。そうすることにより、既知リスクの評価方法の相違によるスパイク指数の変動、及び未知リスクの評価方法の相違によるスパイク指数の変動を小さくすることができ。スパイク指数に対する閾値を、一定にすることができる。
【００５２】
続いて、スパイク推定部１５は、ステップＳ１０５において各転送装置３０のフローエントリごとに算出されたスパイク指数を評価して、各フローエントリの中で、将来的にスパイクフローにマッチする可能性の高い（スパイクフローの要因となる可能性が高い）フローエントリを推定する（Ｓ１０６）。例えば、各フローエントリのスパイク指数が、閾値と比較されることにより、将来的にスパイクフローにマッチする可能性の高いフローエントリが推定されてもよい。すなわち、スパイク指数が閾値以上であるフローエントリが、将来的にスパイクフローにマッチする可能性の高いフローエントリであると推定されてもよい。この場合、閾値は、既知リスクの評価方法と未知リスクの評価方法との組み合わせごとに設定されていてもよい。本実施の形態では、既知リスクの評価方法として２通りが有り、未知リスクの評価方法として２通りが有るため、２×２＝４通りの閾値が設定されてもよい。但し、係数α及びβによって、各評価方法の相違によるスパイク変数の変動が抑制される場合には、閾値は一つであってもよい。
【００５３】
続いて、出力部１６は、ステップＳ１０５におけるスパイク推定部１５による推定結果を出力する（Ｓ１０６）。例えば、スパイクフローにマッチする可能性が閾値以上であるフローエントリの識別情報が出力されてもよい。又は、出力部１６は、ステップＳ１０４において計算された、各フローエントリのスパイク指数を出力してもよい。
【００５４】
続いて、ステップＳ１０１以降が繰り返される。なお、フロー評価装置１０は、各フローエントリのスパイク指数に基づいて、各転送装置３０のフローテーブルを試作してもよい。この場合、各転送装置３０からフローデータ（トラヒック情報）が収集され、フロー評価装置１０に蓄積されるようにしてもよい。フローデータは、ＮｅｔＦｌｏｗ等の技術を用いて収集されてもよい。フローデータには、フローヘッダ情報(5-tuple)、時刻、バイト数が含まれている。このフローデータを、各時刻で収集して過去のフローデータをデータベース化しておく。フロー評価装置１０は、新たに試作されたフローテーブルを構成する各フローエントリについて、過去のフローデータのデータベースの情報とフローエントリのフロー空間情報とを使ってスパイク指数を計算し、試作されたフローテーブルに関して、スパイクフローが発生するリスクを評価してもよい。フローテーブルの試作が繰り返しながら（試行錯誤しながら）、特定のフローエントリにスパイクフローが集中しないようにフローテーブルが生成されてもよいし、又は特定のフローエントリにスパイクフローが集まるように仕向けて、個別制御しやすいようにフローテーブルが生成されてもよい。
【００５５】
なお、上記では、リアルタイムにスパイク指数が計算される例を示したが、例えば、バッチ的にスパイク指数の計算が行われてもよい。この場合、フローエントリ情報記憶部１７にフローエントリごとに記憶されている各フローエントリ情報テーブルについて、或る時刻のレコードが処理対象とされステップＳ１０１以降が実行される。その後、次の時刻のレコードに処理対象がずらされながら、ステップＳ１０１以降が繰り返されてもよい。この際、ステップＳ１０２では、そのときに処理対象のレコードに関して直近の２０個のレコードに基づいて、既知リスクの評価値が算出される。
【００５６】
上述したように、本実施の形態によれば、既知リスク及び未知リスクに基づいて、スパイク指数が計算される。したがって、既知のスパイクフローのみならず、未知のスパイクフローのリスクも考慮して、突発的に大量のフローが発生する可能性を評価可能とするこができる。また、スパイク指数は、フローエントリごとに算出される。したがって、例えば、ネットワーク管理者は、スパイク指数の高いフローエントリにマッチするトラヒックに対しては、トラヒックシェーピングや迂回制御を予め実施しておくことで、スパイクフローが発生した場合のネットワークの輻輳の影響を低減することができる。
【００５７】
なお、本実施の形態において、既知リスク評価部１２は、第１の評価部の一例である。未知リスク評価部１３は、第２の評価部の一例である。スパイク指数計算部１４は、計算部の一例である。フローエントリは、ネットワークを流通するデータの転送制御に用いられるレコードの一例である。すなわち、本実施の形態は、ＯｐｅｎＦｌｏｗ以外のプロトコルに対応した転送装置において利用される、データの転送を制御するためのレコードに関して適用されてもよい。
【００５８】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５９】
１０          フロー評価装置
１１          フローエントリ情報取得部
１２          既知リスク評価部
１３          未知リスク評価部
１４          スパイク指数計算部
１５          スパイク推定部
１６          出力部
１７          フローエントリ情報記憶部
２０          制御装置
３０          転送装置
４０          エッジノード
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【要約】
【課題】突発的に大量のフローが発生する可能性を評価可能とすること。
【解決手段】評価装置は、ネットワークを流通するデータの転送制御に用いられるレコードごとに、当該レコードの条件に合致したデータ量の履歴に基づいて、前記データ量の変動の大きさを評価する第１の評価部と、前記レコードごとに、当該レコードの条件に基づいて、当該レコードの空間の大きさを評価する第２の評価部と、前記第１の評価部による評価結果と、前記第２の評価部による評価結果とに基づいて、前記レコードごとに、一定期間内に所定量以上のデータ量に係るデータが当該レコードの条件に合致する可能性を示す指標値を計算する計算部と、を有する。
【選択図】図３【図１】
0005862811.tif 000004
【図２】
0005862811.tif 000005
【図３】
0005862811.tif 000006
【図４】
0005862811.tif 000007
【図５】
0005862811.tif 000008