(57)【要約】      （修正有）【課題】定常性を有するトラフィックについて、予測値をより高い精度で算出する。【解決手段】情報処理システムは、通信装置と、通信装置を管理する管理装置とを有する。管理装置は、通信装置から、通信装置のポートにおける通信量の情報を複数の時点について取得する取得部と、取得部が取得した、複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出する第１算出部１２１と、第１算出部が算出した複数の自己相関係数に基づき、複数の重みを算出する第２算出部１２２と、第２算出部が算出した複数の重みと、複数の時点についての通信量の情報とに基づき、複数の時点における通信量の加重平均を算出する第３算出部１２３とを有する。【選択図】図４
2016127390.tif 000002
【特許請求の範囲】
【請求項１】
通信装置と、
前記通信装置を管理する管理装置と、
を有し、
前記管理装置は、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得する取得部と、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出する第１算出部と、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出する第２算出部と、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出する第３算出部と、
を有する情報処理システム。
【請求項２】
前記第２算出部は、
前記複数の自己相関係数の各々について、当該自己相関係数の絶対値が所定の閾値以上であるか判断し、当該自己相関係数の絶対値が所定の閾値以上である場合、当該自己相関係数の絶対値を重みに設定し、当該自己相関係数の絶対値が第１の値未満である場合、重みを第２の値に設定する
請求項１記載の情報処理システム。
【請求項３】
前記第３算出部は、
前記第２算出部が算出した前記複数の重みのいずれも前記第２の値である場合、前記複数の重みの各々を１に設定して前記加重平均を算出する
請求項２記載の情報処理システム。
【請求項４】
前記複数の時点の数をｍとし、
ｎをｎ＜ｍを満たす自然数とし、
ラグを表す自然数をｋとし、
時点ｎにおける通信量をｖnとし、
時点ｎにおける重みをｗnとし、
前記複数の時点についての通信量の平均値をａｖｇとすると、
前記第３算出部は、
前記第１算出部が算出した自己相関係数が０より大きい場合、ｗn-k＊ｖkを算出し、前記第１算出部が算出した自己相関係数が０より小さい場合、ｗn-k＊（２＊ａｖｇ−ｖk）を算出することにより、前記複数の時点における通信量の加重平均を算出する
請求項１記載の情報処理システム。
【請求項５】
前記第１算出部は、
前記複数の時点についての通信量の情報から階差データ列を生成し、生成された当該階差データ列に基づき、複数の自己相関係数を算出する
請求項１記載の情報処理システム。
【請求項６】
前記第３算出部が算出した前記加重平均に基づき、前記通信装置が実行する仮想オブジェクトのマイグレーションを行う制御部
をさらに有する請求項１記載の情報処理システム。
【請求項７】
通信装置を管理する管理装置の制御プログラムにおいて、
前記管理装置に、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得させ、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出させ、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出させ、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出させる、
管理装置の制御プログラム。
【請求項８】
通信装置と、前記通信装置を管理する管理装置とを有する情報処理システムにおいて、
前記管理装置が、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得し、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出し、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出し、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出する、
処理を実行する、情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理システムの制御方法、及び管理装置の制御プログラムに関する。
【背景技術】
【０００２】
データセンタ内部等に構築された情報処理システムにおいては、複数の仮想オブジェクト（例えば、仮想マシンや仮想ルータ等）が複数の物理マシン上で実行される。そのため、特定の物理マシンに仮想オブジェクトが集中的に配置されると、物理マシンをつなぐネットワークのトラフィックが特定の経路に集中し、所望のスループットを得られなくなる場合がある。但し、ネットワークのトラフィックの予測値を求めることができれば、求めた予測値に応じて仮想オブジェクトのマイグレーション等を行うことで、トラフィックの偏りを解消することができる。
【０００３】
ネットワークのトラフィックは基本的には時々刻々と変動するが、一定の周期で一定の変動を繰り返すような場合がある。時系列解析においては、変動の性質が時点に依存せず一定であるようなデータを、定常性（Stationarity）を有するデータと呼ぶ。より具体的には、（１）期待値Ｅ［ｖt］が時点によらず（すなわち、任意の時間ｔに関して）一定であるという条件、及び、（２）自己共分散Ｃ（ｖt，ｖt+k）が時間差ｋのみに依存するという条件、の両方を満たすデータが定常性を有するデータである。
【０００４】
図１に、定常性を有するトラフィックの一例を示す。図１には、時点ｔ1からｔ12までの間におけるトラフィック（単位はＭｂｐｓ（Mega bit per second））の時系列データが示されている。図１の例では、トラフィックは１００Ｍｂｐｓになった後に３００Ｍｂｐｓになり、３００Ｍｂｐｓになった後に１００Ｍｂｐｓになるという変化を繰り返している。
【０００５】
ここで、予測値の算出に単純移動平均（Simple Moving Average）を利用することを考える。時点ｔ12において、時点ｔ8乃至ｔ12におけるトラフィックの単純平均を時点ｔ13のトラフィックの予測値として算出すると、トラフィックの予測値は２２０Ｍｂｐｓになる。また、仮に時点ｔ13におけるトラフィックが１００Ｍｂｐｓであるとし、時点ｔ13において、時点ｔ9乃至ｔ13におけるトラフィックの単純平均を時点ｔ14のトラフィックの予測値として算出すると、トラフィックの予測値は１８０Ｍｂｐｓになる。時刻ｔ15以降の予測値も同様に単純移動平均で予測値を算出すると、トラフィックの予測値は１８０Ｍｂｐｓ或いは２２０Ｍｂｐｓになり、実際のトラフィックの変動を正確に予測することができない。
【０００６】
定常性を有するトラフィックの予測に、単純移動平均以外の手法（例えば、加重平均（Weighted Average））を利用する技術も存在する。しかし、加重平均を利用する場合、何らかの方法で重みを適切に設定しなければ、予測値を高い精度で算出することはできない。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−３１１７２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従って、本発明の目的は、１つの側面では、定常性を有するトラフィックについて、予測値をより高い精度で算出するための技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明に係る情報処理システムは、通信装置と、通信装置を管理する管理装置とを有する。そして、上で述べた管理装置は、通信装置から、通信装置のポートにおける通信量の情報を複数の時点について取得する取得部と、取得部が取得した、複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出する第１算出部と、第１算出部が算出した複数の自己相関係数に基づき、複数の重みを算出する第２算出部と、第２算出部が算出した複数の重みと、複数の時点についての通信量の情報とに基づき、複数の時点における通信量の加重平均を算出する第３算出部とを有する。
【発明の効果】
【００１０】
１つの側面では、定常性を有するトラフィックについて、予測値をより高い精度で算出できるようになる。
【図面の簡単な説明】
【００１１】
【図１】図１は、定常性を有するトラフィックの一例を示す図である。
【図２】図２は、本実施の形態におけるシステム概要を示す図である。
【図３】図３は、監視の対象を示す図である。
【図４】図４は、第１の実施の形態における管理サーバの機能ブロック図である。
【図５】図５は、トラフィックデータ格納部に格納されるデータの一例を示す図である。
【図６】図６は、第１の実施の形態における管理サーバが実行する処理の処理フローを示す図である。
【図７】図７は、自己相関係数の算出について説明するための図である。
【図８】図８は、自己相関係数格納部に格納されるデータの一例を示す図である。
【図９】図９は、重み格納部に格納されるデータの一例を示す図である。
【図１０】図１０は、第１の実施の形態における管理サーバが実行する処理の処理フローを示す図である。
【図１１】図１１は、自己相関係数が負である場合に実行する処理について説明するための図である。
【図１２】図１２は、予測値格納部に格納されるデータの一例を示す図である。
【図１３】図１３は、予測値に基づきトラフィックを制御する処理の処理フローである。
【図１４】図１４は、第２の実施の形態における管理サーバの機能ブロック図である。
【図１５】図１５は、第２の実施の形態における管理サーバが実行する処理の処理フローを示す図である。
【図１６】図１６は、第２の実施の形態における管理サーバが実行する処理の処理フローを示す図である。
【図１７】図１７は、予測値と実際のトラフィックとの誤差について説明するための図である。
【図１８】図１８は、予測値と実際のトラフィックとの誤差について説明するための図である。
【図１９】図１９は、予測値と実際のトラフィックとの誤差について説明するための図である。
【図２０】図２０は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１２】
以下で説明する実施の形態においては、予測値の算出に加重移動平均（Weighted Moving Average）を利用し、且つ、加重移動平均の重みの算出に自己相関係数を利用することで、予測値をより正確に算出できるようにする。
【００１３】
［実施の形態１］
図２に、第１の実施の形態におけるシステムの概要を示す。本実施の形態における主要な処理を実行する管理サーバ１は、管理用のＬＡＮ（Local Area Network）である管理ＬＡＮ７に接続される。
【００１４】
物理スイッチ３１は管理ＬＡＮ７に接続され、物理スイッチ３１はポート３１Ａ及び３１Ｂを有する。物理スイッチ３２はポート３２Ａ及び３２Ｂを有し、ポート３２Ａとポート３１Ａとを接続するリンクによって物理スイッチ３２と物理スイッチ３１とが接続される。
【００１５】
物理スイッチ３３はポート３３Ａ及び３３Ｂを有し、ポート３３Ａとポート３１Ｂとを接続するリンクによって物理スイッチ３３と物理スイッチ３１とが接続される。
【００１６】
物理サーバ５１はポート５１Ａを有し、ＶＭ（Virtual Machine）５１１と、ＶＳＷ（Virtual SWitch）５１２と、ＶＲ（Virtual Router）５１３とを実行する。物理サーバ５１は、ポート５１Ａとポート３２Ｂとを接続するリンクによって物理スイッチ３２に接続される。ＶＭ５１１はポート（例えば仮想ポート）５１１Ａを有し、ＶＳＷ５１２はポート（例えば仮想ポート）５１２Ａ乃至５１２Ｃを有し、ＶＲ５１３はポート（例えば仮想ポート）５１３Ａ及び５１３Ｂを有する。
【００１７】
物理サーバ５２はポート５２Ａを有し、ＶＭ５２１と、ＶＳＷ５２２と、ＶＲ５２３とを実行する。物理サーバ５２は、ポート５２Ａとポート３３Ｂとを接続するリンクによって物理スイッチ３３に接続される。ＶＭ５２１はポート（例えば仮想ポート）５２１Ａを有し、ＶＳＷ５２２はポート（例えば仮想ポート）５２２Ａ乃至５２２Ｃを有し、ＶＲ５２３はポート（例えば仮想ポート）５２３Ａ及び５２３Ｂを有する。
【００１８】
なお、図２においては管理サーバ１及び物理スイッチ３１のみが管理ＬＡＮ７に接続されているが、管理サーバ１及び物理スイッチ３１以外の物理スイッチ及び物理サーバが管理ＬＡＮ７に接続されてもよい。また、図２に示したシステムにおいては中継装置として物理スイッチを利用するが、中継装置として物理ルータを利用するシステムであってもよい。
【００１９】
本実施の形態においては、ＶＭ５１１のポート５１１Ａ及びＶＭ５２１のポート５２１Ａ以外のポートにおけるトラフィックが管理サーバ１により監視される。具体的には、図３に示すように、管理サーバ１は、ポート３１Ａ及び３１Ｂと、ポート３２Ａ及び３２Ｂと、ポート３３Ａ及び３３Ｂと、ポート５１Ａと、ポート５１２Ａ乃至５１２Ｃと、ポート５１３Ａ及び５１３Ｂと、ポート５２Ａと、ポート５２２Ａ乃至５２２Ｃと、ポート５２３Ａ及び５２３Ｂとを監視する。
【００２０】
図４に、第１の実施の形態における管理サーバ１の機能ブロック図を示す。管理サーバ１は、収集部１０と、トラフィックデータ格納部１１と、算出部１２と、自己相関係数格納部１３と、重み格納部１４と、予測値格納部１６と、制御部１７とを有する。算出部１２は、第１算出部１２１と、第２算出部１２２と、第３算出部１２３とを有する。
【００２１】
収集部１０は、監視の対象であるポートから、定期的に（例えば１０秒毎に）トラフィックデータを収集し、トラフィックデータ格納部１１に格納する。算出部１２における第１算出部１２１は、トラフィックデータ格納部１１に格納されたトラフィックデータを用いて自己相関係数を算出し、自己相関係数を自己相関係数格納部１３に格納する。算出部１２における第２算出部１２２は、自己相関係数格納部１３に格納された自己相関係数に基づき加重平均の重みを算出し、重み格納部１４に格納する。算出部１２における第３算出部１２３は、トラフィックデータ格納部１１に格納されたトラフィックデータ、自己相関係数格納部１３に格納された自己相関係数、及び重み格納部１４に格納された重みに基づきトラフィックの予測値を算出し、予測値格納部１６に格納する。制御部１７は、予測値格納部１６に格納された予測値に基づき、仮想オブジェクトのマイグレーションを制御する。
【００２２】
図５に、トラフィックデータ格納部１１に格納されるデータの一例を示す。図５の例では、各時点についてトラフィックの値が格納される。本実施の形態においては、トラフィックデータ格納部１１には、監視の対象であるポート毎に、各時点についてのトラフィックの値が格納される。
【００２３】
次に、図６乃至図１３を用いて、管理サーバ１の動作について説明する。説明を簡単にするため、ここでは、特定の１ポートについて予測値を算出する場合の動作について説明する。
【００２４】
まず、管理サーバ１における第１算出部１２１は、トラフィックデータ格納部１１から、特定のポートについてトラフィックデータ列｛ｖ1，．．．，ｖm-1，ｖm｝を取得する（図６：ステップＳ１）。ここで、ｍはトラフィックデータ列の長さを表す変数であり、ｖmは最新のトラフィック値である。ｍの値は、管理者により予め設定される。ｍの値を大きくすれば、より長い期間について平均を算出することができる。
【００２５】
第１算出部１２１は、ラグを表す変数であるｋをｋ＝１に設定し（ステップＳ３）、ｋ≦ｎが成立するか判断する（ステップＳ５）。ここで、ｎはラグｋの最大値を表す変数であり、管理者により、ｎ＜ｍとなるように予め設定される。
【００２６】
ｋ≦ｎが成立する場合（ステップＳ５：Ｙｅｓルート）、第１算出部１２１は、トラフィックデータ列｛ｖ1，．．．，ｖm｝について、自己相関係数ｐ（ｋ）を算出し（ステップＳ７）、自己相関係数格納部１３に格納する。ラグがｋである場合、トラフィックデータ列｛ｖ1，．．．，ｖm-k｝及びトラフィックデータ列｛ｖk+1，．．．，ｖm｝から、以下の式により自己相関係数ｐ（ｋ）が算出される。
【００２７】
【数１】
2016127390.tif 000003
【００２８】
ここで、ａｖｇ（ｖ）はトラフィックデータ列｛ｖ1，．．．，ｖm｝の平均値を表し、上で述べたように、ｋはラグを表す。算出されるｐ（ｋ）は、−１≦ｐ（ｋ）≦１を満たす。
【００２９】
図７に示す例を用いて、自己相関係数の算出について具体的に説明する。図７の例においては、ｍ＝５であり、ｋ＝２であるとする。この場合、トラフィックデータ列｛ｖ1，ｖ2，ｖ3｝及びトラフィックデータ列｛ｖ3，ｖ4，ｖ5｝からｐ（２）が算出される。なお、ｋ＝３である場合には、トラフィックデータ列｛ｖ1，ｖ2｝及びトラフィックデータ列｛ｖ4，ｖ5｝からｐ（３）が算出される。
【００３０】
図８に、自己相関係数格納部１３に格納されるデータの一例を示す。図８の例では、ｋの値毎に自己相関係数ｐ（ｋ）が格納される。本実施の形態においては、自己相関係数格納部１３には、監視の対象である各ポートについて、ｋの値毎にｐ（ｋ）の値が格納される。
【００３１】
図６の説明に戻り、第２算出部１２２は、｜ｐ（ｋ）｜≧ＣＳが成立するか判断する（ステップＳ９）。ＣＳは、自己相関計数についての閾値であり、例えば０．６である。｜ｐ（ｋ）｜≧ＣＳが成立する場合（ステップＳ９：Ｙｅｓルート）、第２算出部１２２は、重みｗkをｗk＝｜ｐ（ｋ）｜に設定し（ステップＳ１１）、重みｗkを重み格納部１４に格納する。｜ｐ（ｋ）｜≧ＣＳが成立しない場合（ステップＳ９：Ｎｏルート）、第２算出部１２２は、重みｗkをｗk＝０に設定し（ステップＳ１３）、重みｗkを重み格納部１４に格納する。
【００３２】
図９に、重み格納部１４に格納されるデータの一例を示す。図９の例では、ｋの値毎に重みｗkが格納される。本実施の形態においては、重み格納部１４には、監視の対象である各ポートについて、ｋの値毎にｗkの値が格納される。
【００３３】
そして、第２算出部１２２は、ラグｋを１インクリメントする（ステップＳ１５）。そしてステップＳ５の処理に戻る。
【００３４】
一方、ｋ≦ｎが成立しない場合（ステップＳ５：Ｎｏルート）、処理は端子Ａを介して図１０のステップＳ１７に移行する。
【００３５】
図１０の説明に移行し、第３算出部１２３は、全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立するか判断する（ステップＳ１７）。全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立する場合（ステップＳ１７：Ｙｅｓルート）、第３算出部１２３は、予測値ｖをｖ＝（ｖ1＋．．．＋ｖm）／ｍによって算出し（ステップＳ１９）、予測値格納部１６に格納する。すなわち、単純平均によって予測値ｖを算出する。そして処理を終了する。
【００３６】
一方、全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立するわけではない場合（ステップＳ１７：Ｎｏルート）、第３算出部１２３は、予測値ｖをｖ＝０に設定する（ステップＳ２１）。
【００３７】
第３算出部１２３は、ラグを表す変数ｋをｋ＝１に設定し（ステップＳ２３）、ｋ≦ｎが成立するか判断する（ステップＳ２５）。ｋ≦ｎが成立する場合（ステップＳ２５：Ｙｅｓルート）、第３算出部１２３は、ｐ（ｋ）＞０が成立するか判断する（ステップＳ２９）。
【００３８】
ｐ（ｋ）＞０が成立する場合（ステップＳ２９：Ｙｅｓルート）、第３算出部１２３は、予測値ｖをｖ＝ｖ＋ｗn-k＊ｖkに設定する（ステップＳ３１）。そしてステップＳ３７の処理に移行する。
【００３９】
ｐ（ｋ）＞０が成立しない場合（ステップＳ２９：Ｎｏルート）、第３算出部１２３は、ｐ（ｋ）＜０が成立するか判断する（ステップＳ３３）。ｐ（ｋ）＜０が成立する場合（ステップＳ３３：Ｙｅｓルート）、第３算出部１２３は、予測値ｖをｖ＝ｖ＋ｗn-k＊（２＊ａｖｇ（ｖ）−ｖk）に設定する（ステップＳ３５）。そしてステップＳ３７の処理に移行する。図１１を用いて、ステップＳ３５の処理について説明する。図１１に示すように、２＊ａｖｇ（ｖ）−ｖkはａｖｇ（ｖ）より（ｖk−ａｖｇ（ｋ））小さい値であり、ｖkはａｖｇ（ｖ）より（ｖk−ａｖｇ（ｋ））大きい値である。このようにすれば、自己相関係数が負である場合にはより小さな値がｖに加算されるようになり、自己相関係数が正である場合にはより大きな値がｖに加算されるようになる。
【００４０】
一方、ｐ（ｋ）＜０が成立しない場合（ステップＳ３３：Ｎｏルート）、第３算出部１２３は、ｋを１インクリメントする（ステップＳ３７）。そしてステップＳ２５の処理に戻る。
【００４１】
そして、ｋ≦ｎが成立しないと判断された場合（ステップＳ２５：Ｎｏルート）、第３算出部１２３は、予測値ｖをｖ＝ｖ／（ｗ1＋．．．＋ｗn）に設定し（ステップＳ２７）、予測値ｖを予測値格納部１６に格納する。本処理は正規化に相当する。そして処理を終了する。
【００４２】
図１２に、予測値格納部１６に格納されるデータの一例を示す。図１２の例では、各ポートについて、或る時点における予測値が格納される。本実施の形態においては、トラフィックデータ格納部１１に新たな時点のトラフィックデータが格納される度に算出部１２が処理を実行し、予測値格納部１６に格納された予測値を更新する。
【００４３】
以上のように自己相関係数を算出すれば、自己相関係数は、トラフィックデータ列とトラフィックデータ列を時間シフトしたデータ列との類似の度合いを表す。そして、自己相関係数に基づき加重平均の重みを算出するので、元のトラフィックデータ列との類似度が高いデータ列の影響を強く受けるようにすることができる。これにより、定常性を有するトラフィックについて、予測値をより高い精度で算出できるようになる。特に、自己相関係数の絶対値が閾値ＣＳより小さい場合にはその自己相関係数に対応するトラフィックを予測値の算出に利用しないので、予測値の精度が低下することを抑制できるようになる。
【００４４】
例えば図１の例において、ｍ＝５、ｎ＝２、ＣＳ＝０．６として、時点ｔ6におけるトラフィックを予測することを考える。この場合、トラフィックデータ列は｛１００，３００，１００，３００，１００｝であり、ｐ（１）＝−０．８、ｐ（２）＝０．６となり、ｗ（１）＝０．８、ｗ（２）＝０．６となる。すると、予測値ｖは、ｖ＝（ｗ1＊ｖ5＋ｗ2＊ｖ4）／（ｗ1＋ｗ2）＝（０．８＊（２＊１８０−１００）＋０．６＊３００）／（０．８＋０．６）≒２７７となる。よって、単純平均を利用する場合よりも予測値の精度が向上する。
【００４５】
次に、図１３を用いて、予測値に基づきトラフィックを制御する処理について説明する。本処理は、例えば、予測値格納部１６に格納された予測値が更新される度に実行される。
【００４６】
まず、制御部１７は、予測値格納部１６から、各ポートについての予測値を読み出す（図１３：ステップＳ４１）。そして、制御部１７は、ステップＳ４１において読み出された予測値に応じて、仮想オブジェクトのマイグレーションを実行する（ステップＳ４３）。そして処理を終了する。
【００４７】
例えば、或るポート（ポートＡとする）におけるトラフィックが他のポートにおけるトラフィックより極端に多い場合、ポートＡを有する装置内の仮想オブジェクトを他の装置に移動することで、ポートＡにおけるトラフィックを減らす。なお、場合によっては、仮想オブジェクトのマイグレーションが行われない場合もある。
【００４８】
［実施の形態２］
第２の実施の形態においては、階差データ列を用いて算出した自己相関係数に基づき加重平均の重みを決定する方法について説明する。
【００４９】
図１４に、第２の実施の形態における管理サーバ１の機能ブロック図を示す。管理サーバ１は、収集部１０と、トラフィックデータ格納部１１と、算出部１２と、自己相関係数格納部１３と、重み格納部１４と、階差データ列格納部１５と、予測値格納部１６と、制御部１７とを有する。算出部１２は、第１算出部１２１と、第２算出部１２２と、第３算出部１２３とを有する。第２の実施の形態における管理サーバ１は、第１の実施の形態の管理サーバ１とは階差データ列格納部１５を有するという点で異なる。
【００５０】
次に、図１５乃至図１９を用いて、管理サーバ１の動作について説明する。説明を簡単にするため、ここでは、特定の１ポートについて予測値を算出する場合の動作について説明する。
【００５１】
まず、管理サーバ１における第１算出部１２１は、トラフィックデータ格納部１１から、特定のポートについてトラフィックデータ列｛ｖ1，．．．，ｖm-1，ｖm｝を取得する（図１５：ステップＳ５１）。ここで、ｍはトラフィックデータ列の長さを表す変数であり、ｖmは最新のトラフィック値である。ｍの値は、管理者により予め設定される。
【００５２】
第１算出部１２１は、ステップＳ５１において取得したトラフィックデータ列から、階差データ列｛ｄ1，．．．，ｄm-1｝を生成する（ステップＳ５３）。なお、或るデータ列｛ｘ1，．．．，ｘm｝についての階差データ列は、｛（ｘ2−ｘ1），．．．，（ｘm−ｘm-1）｝である。
【００５３】
第１算出部１２１は、ラグを表す変数であるｋをｋ＝１に設定し（ステップＳ５５）、ｋ≦ｎが成立するか判断する（ステップＳ５７）。ここで、ｎはラグｋの最大値を表す変数であり、管理者により、ｎ＜ｍとなるように予め設定される。
【００５４】
ｋ≦ｎが成立する場合（ステップＳ５７：Ｙｅｓルート）、第１算出部１２１は、階差データ列｛ｄ1，．．．，ｄm-1｝について、自己相関係数ｐ（ｋ）を算出し（ステップＳ５９）、自己相関係数格納部１３に格納する。
【００５５】
第２算出部１２２は、｜ｐ（ｋ）｜≧ＣＳが成立するか判断する（ステップＳ６１）。ＣＳは、自己相関計数についての閾値である。｜ｐ（ｋ）｜≧ＣＳが成立する場合（ステップＳ６１：Ｙｅｓルート）、第２算出部１２２は、重みｗkをｗk＝｜ｐ（ｋ）｜に設定し（ステップＳ６３）、重みｗkを重み格納部１４に格納する。｜ｐ（ｋ）｜≧ＣＳが成立しない場合（ステップＳ６１：Ｎｏルート）、第２算出部１２２は、重みｗkをｗk＝０に設定し（ステップＳ６５）、重みｗkを重み格納部１４に格納する。
【００５６】
そして、第２算出部１２２は、ラグｋを１インクリメントする（ステップＳ６７）。そしてステップＳ５７の処理に戻る。
【００５７】
一方、ｋ≦ｎが成立しない場合（ステップＳ５７：Ｎｏルート）、処理は端子Ｂを介して図１６のステップＳ６９に移行する。
【００５８】
図１６の説明に移行し、第３算出部１２３は、全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立するか判断する（図１６：ステップＳ６９）。全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立する場合（ステップＳ６９：Ｙｅｓルート）、第３算出部１２３は、予測値ｖとｖmとの差を表すΔｖをΔｖ＝（ｄ1＋．．．＋ｄm-1）／（ｍ−１）によって算出し（ステップＳ７１）、予測値ｖ＝ｖm＋Δｖを予測値格納部１６に格納する。すなわち、単純平均によってΔｖを算出する。そして処理を終了する。
【００５９】
一方、全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立するわけではない場合（ステップＳ６９：Ｎｏルート）、第３算出部１２３は、ΔｖをΔｖ＝０に設定する（ステップＳ７３）。
【００６０】
第３算出部１２３は、ラグを表す変数ｋをｋ＝１に設定し（ステップＳ７５）、ｋ≦ｎが成立するか判断する（ステップＳ７７）。ｋ≦ｎが成立する場合（ステップＳ７７：Ｙｅｓルート）、第３算出部１２３は、ｐ（ｋ）＞０が成立するか判断する（ステップＳ８１）。
【００６１】
ｐ（ｋ）＞０が成立する場合（ステップＳ８１：Ｙｅｓルート）、第３算出部１２３は、ΔｖをΔｖ＝Δｖ＋ｗn-k＊ｄkに設定する（ステップＳ８３）。そしてステップＳ８９の処理に移行する。
【００６２】
ｐ（ｋ）＞０が成立しない場合（ステップＳ８１：Ｎｏルート）、第３算出部１２３は、ｐ（ｋ）＜０が成立するか判断する（ステップＳ８５）。ｐ（ｋ）＜０が成立する場合（ステップＳ８５：Ｙｅｓルート）、第３算出部１２３は、ΔｖをΔｖ＝Δｖ＋ｗn-k＊（２＊ａｖｇ（ｄ）−ｄk）に設定する（ステップＳ８７）。そしてステップＳ８９の処理に移行する。ここで、ａｖｇ（ｄ）は階差データ列｛ｄ1，．．．，ｄm-1｝の平均値を表す。
【００６３】
一方、ｐ（ｋ）＜０が成立しない場合（ステップＳ８５：Ｎｏルート）、第３算出部１２３は、ｋを１インクリメントする（ステップＳ８９）。そしてステップＳ７７の処理に戻る。
【００６４】
そして、ｋ≦ｎが成立しないと判断された場合（ステップＳ７７：Ｎｏルート）、第３算出部１２３は、ΔｖをΔｖ＝Δｖ／（ｗ1＋．．．＋ｗn）に設定し（ステップＳ７９）、予測値ｖ＝ｖm＋Δｖを予測値格納部１６に格納する。本処理は正規化に相当する。そして処理を終了する。
【００６５】
たとえトラフィックデータ列が定常性を有しないとしても、階差データ列が定常性を有する場合がある。従って、階差データ列の定常性を利用することで、予測値を高精度で算出できるようになる。
【００６６】
例えば図１の例において、ｍ＝５、ｎ＝２、ＣＳ＝０．６として、時点ｔ6におけるトラフィックを予測することを考える。この場合、階差データ列は｛２００，−２００，２００，−２００｝であり、ｐ（１）＝−０．８、ｐ（２）＝０．５となり、ｗ1＝０．８、ｗ2＝０となる。すると、予測値ｖは、ｖ＝ｖ5＋（ｗ1＊ｄ4＋ｗ2＊ｄ3）／（ｗ1＋ｗ2）＝１００＋（０．８＊（２＊０−（−２００））＋０＊２００）／（０．８）＝３００となる。よって、単純平均を利用する場合よりも予測値の精度が向上する。
【００６７】
図１７乃至図１９を用いて、第２の実施の形態に基づき算出した予測値と実際のトラフィックとの誤差について説明する。
【００６８】
図１７に、トラフィックの変動の第１の例を示す。図１７において、実線はトラフィックの実績値を表し、一点鎖線は単純平均に基づく予測値を表し、破線は第２の実施の形態に基づく予測値（ｍ＝１２，ｎ＝５，ＣＳ＝０．６とする）を表す。
【００６９】
実際のトラフィックは、１００Ｍｂｐｓになった後に３００Ｍｂｐｓになり、３００Ｍｂｐｓになった後に１００Ｍｂｐｓになるという変化を繰り返している。単純平均に基づく予測値は１００Ｍｂｐｓと２００Ｍｂｐｓとの間の値になり、時間の経過とともに２００Ｍｂｐｓに収束する。第２の実施の形態に基づく予測値については、時点ｔ5までは予測誤差が比較的大きいものの、時点ｔ6以降は予測誤差が比較的小さくなる。
【００７０】
図１８に、トラフィックの変動の第２の例を示す。図１８において、実線はトラフィックの実績値を表し、一点鎖線は単純平均に基づく予測値を表し、破線は第２の実施の形態に基づく予測値（ｍ＝１２，ｎ＝５，ＣＳ＝０．６とする）を表す。
【００７１】
実際のトラフィックは、１００Ｍｂｐｓになった後に２００Ｍｂｐｓになり、２００Ｍｂｐｓになった後に３００Ｍｂｐｓになり、３００Ｍｂｐｓになった後に２００Ｍｂｐｓになり、２００Ｍｂｐｓになった後に１００Ｍｂｐｓになるという変化を繰り返している。単純平均に基づく予測値は１００Ｍｂｐｓと２００Ｍｂｐｓとの間の値になり、時間の経過とともに２００Ｍｂｐｓに収束する。第２の実施の形態に基づく予測値については、時点ｔ7までは予測誤差が比較的大きく、時点ｔ4においては予測誤差が２００Ｍｂｐｓに達する。しかしながら、時点ｔ8以降は予測誤差が比較的小さくなる。
【００７２】
図１９に、トラフィックの変動の第３の例を示す。図１９において、実線はトラフィックの実績値を表し、一点鎖線は単純平均に基づく予測値を表し、破線は第２の実施の形態に基づく予測値（ｍ＝１２，ｎ＝５，ＣＳ＝０．６とする）を表す。
【００７３】
実際のトラフィックは、３００Ｍｂｐｓになった後に０Ｍｂｐｓになり、０Ｍｂｐｓの状態が１インターバル続き、その後に３００Ｍｂｐｓに戻るという変化を繰り返している。単純平均に基づく予測値は、時点ｔ4までは徐々に減少し、時点ｔ4以降は１００Ｍｂｐｓと１５０Ｍｂｐｓとの間の値になり、時間の経過とともに１００Ｍｂｐｓに収束する。第２の実施の形態に基づく予測値については、時点ｔ7までは予測誤差が比較的大きく、時点ｔ2、時点ｔ4、時点ｔ5、及び時点ｔ7においては予測誤差が３００Ｍｂｐｓに達する。しかしながら、時点ｔ8以降は予測誤差が無くなる。
【００７４】
このように、第２の実施の形態に予測値によれば、定常性を有するトラフィックについての予測値の精度を、時間の経過とともに高めることができるようになる。
【００７５】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した管理サーバ１の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
【００７６】
また、上で説明したデータ保持構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００７７】
なお、上ではトラフィックデータ列を利用する処理（図６及び図１０）と階差データ列を利用する処理（図１５及び図１６）とを別々に説明したが、前者の処理と後者の処理とを連動して実行してもよい。例えば、ステップＳ１７において全てのｋ（ｋ＝１，２，．．．，ｎ）についてｗk＝０が成立すると判断された場合に、後者の処理を実行してもよい。
【００７８】
なお、上で述べた管理サーバ１、物理サーバ５１及び物理サーバ５２は、コンピュータ装置であって、図２０に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００７９】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【００８０】
本実施の形態の第１の態様に係る情報処理システムは、（Ａ）通信装置と、（Ｂ）通信装置を管理する管理装置とを有する。そして、上で述べた管理装置は、（ｂ１）通信装置から、通信装置のポートにおける通信量の情報を複数の時点について取得する取得部と、（ｂ２）取得部が取得した、複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出する第１算出部と、（ｂ３）第１算出部が算出した複数の自己相関係数に基づき、複数の重みを算出する第２算出部と、（ｂ４）第２算出部が算出した複数の重みと、複数の時点についての通信量の情報とに基づき、複数の時点における通信量の加重平均を算出する第３算出部とを有する。
【００８１】
定常性が有る通信量について自己相関係数を算出した場合、特定のラグについては自己相関係数が大きくなると考えられる。そこで、上で述べたようにすれば、例えば自己相関係数が大きい場合に重みを大きくできるので、予測値の精度を高められるようになる。
【００８２】
また、上で述べた第２算出部は、（ｂ３−１）複数の自己相関係数の各々について、当該自己相関係数の絶対値が所定の閾値以上であるか判断し、当該自己相関係数の絶対値が所定の閾値以上である場合、当該自己相関係数の絶対値を重みに設定し、当該自己相関係数の絶対値が第１の値未満である場合、重みを第２の値に設定してもよい。このようにすれば、予測値の算出に寄与すると考えられる通信量と、予測値の算出に寄与しないと考えられる通信量との扱いを変えることができるようになる。
【００８３】
また、上で述べた第３算出部は、（ｂ４−１）第２算出部が算出した複数の重みのいずれも第２の値である場合、複数の重みの各々を１に設定して加重平均を算出してもよい。このようにすれば、定常性を有しない通信量については、単純平均と同じ値を算出できるようになる。
【００８４】
また、複数の時点の数をｍとし、ｎをｎ＜ｍを満たす自然数とし、時点ｎにおける通信量をｖnとし、時点nにおける重みをｗnとし、複数の時点についての通信量の平均値をａｖｇとすると、上で述べた第３算出部は、（ｂ４−２）第１算出部が算出した自己相関係数が０より大きい場合、ｗn-k＊ｖkを算出し、第１算出部が算出した自己相関係数が０より小さい場合、ｗn-k＊（２＊ａｖｇ−ｖk）を算出することにより、複数の時点における通信量の加重平均を算出してもよい。このようにすれば、加重平均が適切に算出されるようになる。
【００８５】
また、上で述べた第１算出部は、（ｂ２−１）複数の時点についての通信量の情報から階差データ列を生成し、生成された当該階差データ列に基づき、複数の自己相関係数を算出してもよい。複数の時点についての通信量が定常性を有しない場合であっても、階差データ列であれば定常性を有する場合がある。従って、上で述べたようにすれば、階差データ列の定常性を利用して高精度な予測値を算出できるようになる。
【００８６】
また、上記管理装置は、（ｂ５）第３算出部が算出した加重平均に基づき、通信装置が実行する仮想オブジェクトのマイグレーションを行う制御部をさらに有してもよい。このようにすれば、通信量に偏りが生じることを抑制できるようになる。
【００８７】
また、上で述べた第２の値が０であってもよい。これにより、予測値の算出に寄与しないと考えられる通信量を完全に無視できるようになる。
【００８８】
本実施の形態の第２の態様に係る、情報処理システムの制御方法は、通信装置と通信装置を管理する管理装置とを有する情報処理システムにおいて、管理装置が、（Ｃ）通信装置から、通信装置のポートにおける通信量の情報を複数の時点について取得し、（Ｄ）取得部が取得した、複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出し、（Ｅ）第１算出部が算出した複数の自己相関係数に基づき、複数の重みを算出し、（Ｆ）第２算出部が算出した複数の重みと、複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出する処理を含む。
【００８９】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００９０】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００９１】
（付記１）
通信装置と、
前記通信装置を管理する管理装置と、
を有し、
前記管理装置は、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得する取得部と、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出する第１算出部と、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出する第２算出部と、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出する第３算出部と、
を有する情報処理システム。
【００９２】
（付記２）
前記第２算出部は、
前記複数の自己相関係数の各々について、当該自己相関係数の絶対値が所定の閾値以上であるか判断し、当該自己相関係数の絶対値が所定の閾値以上である場合、当該自己相関係数の絶対値を重みに設定し、当該自己相関係数の絶対値が第１の値未満である場合、重みを第２の値に設定する
付記１記載の情報処理システム。
【００９３】
（付記３）
前記第３算出部は、
前記第２算出部が算出した前記複数の重みのいずれも前記第２の値である場合、前記複数の重みの各々を１に設定して前記加重平均を算出する
付記２記載の情報処理システム。
【００９４】
（付記４）
前記複数の時点の数をｍとし、
ｎをｎ＜ｍを満たす自然数とし、
ラグを表す自然数をｋとし、
時点ｎにおける通信量をｖnとし、
時点ｎにおける重みをｗnとし、
前記複数の時点についての通信量の平均値をａｖｇとすると、
前記第３算出部は、
前記第１算出部が算出した自己相関係数が０より大きい場合、ｗn-k＊ｖkを算出し、前記第１算出部が算出した自己相関係数が０より小さい場合、ｗn-k＊（２＊ａｖｇ−ｖk）を算出することにより、前記複数の時点における通信量の加重平均を算出する
付記１記載の情報処理システム。
【００９５】
（付記５）
前記第１算出部は、
前記複数の時点についての通信量の情報から階差データ列を生成し、生成された当該階差データ列に基づき、複数の自己相関係数を算出する
付記１記載の情報処理システム。
【００９６】
（付記６）
前記第３算出部が算出した前記加重平均に基づき、前記通信装置が実行する仮想オブジェクトのマイグレーションを行う制御部
をさらに有する付記１記載の情報処理システム。
【００９７】
（付記７）
前記第２の値が０である
付記２記載の情報処理システム。
【００９８】
（付記８）
通信装置を管理する管理装置の制御プログラムにおいて、
前記管理装置に、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得させ、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出させ、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出させ、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出させる、
管理装置の制御プログラム。
【００９９】
（付記９）
通信装置と、前記通信装置を管理する管理装置とを有する情報処理システムにおいて、
前記管理装置が、
前記通信装置から、前記通信装置のポートにおける通信量の情報を複数の時点について取得し、
前記取得部が取得した、前記複数の時点についての通信量の情報に基づき、複数の自己相関係数を算出し、
前記第１算出部が算出した前記複数の自己相関係数に基づき、複数の重みを算出し、
前記第２算出部が算出した前記複数の重みと、前記複数の時点についての通信量の情報とに基づき、前記複数の時点における通信量の加重平均を算出する、
処理を実行する、情報処理システムの制御方法。
【符号の説明】
【０１００】
１  管理サーバ    ３１，３２，３３  物理スイッチ
５１，５２  物理サーバ    ７  管理ＬＡＮ
５１１，５２１  ＶＭ    ５１２，５２２  ＶＳＷ
５１３，５２３  ＶＲ
３１Ａ，３１Ｂ，３２Ａ，３２Ｂ，３３Ａ，３３Ｂ，５１Ａ，５１１Ａ，５１２Ａ，５１２Ｂ，５１２Ｃ，５１３Ａ，５１３Ｂ，５２Ａ，５２１Ａ，５２２Ａ，５２２Ｂ，５２２Ｃ，５２３Ａ，５２３Ｂ  ポート
１０  収集部    １１  トラフィックデータ格納部
１２  算出部    １２１  第１算出部
１２２  第２算出部    １２３  第３算出部
１３  自己相関係数格納部    １４  重み格納部
１５  階差データ列格納部    １６  予測値格納部
１７  制御部
【図１】
2016127390.tif 000004
【図２】
2016127390.tif 000005
【図３】
2016127390.tif 000006
【図４】
2016127390.tif 000007
【図５】
2016127390.tif 000008
【図６】
2016127390.tif 000009
【図７】
2016127390.tif 000010
【図８】
2016127390.tif 000011
【図９】
2016127390.tif 000012
【図１０】
2016127390.tif 000013
【図１１】
2016127390.tif 000014
【図１２】
2016127390.tif 000015
【図１３】
2016127390.tif 000016
【図１４】
2016127390.tif 000017
【図１５】
2016127390.tif 000018
【図１６】
2016127390.tif 000019
【図１７】
2016127390.tif 000020
【図１８】
2016127390.tif 000021
【図１９】
2016127390.tif 000022
【図２０】
2016127390.tif 000023