(57)【特許請求の範囲】
【請求項１】
監視対象と第1の経路を介して通信する通信部と，
前記監視対象を監視する監視タイミングに至ると，前記監視対象と前記通信部により通信し前記監視対象の状態情報を取得する処理部とを有し，
前記処理部は，前記第1の経路の使用状況を検出し，前記使用状況に基づき，次の前記監視タイミングでの前記通信において遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，変更した前記第2の経路を介して前記監視対象と前記通信部により通信する
ことを特徴とする管理装置。
【請求項２】
請求項1において，
前記使用状況は，前記第1の経路と，前記監視対象との第1の前記通信の遅延を発生させる第2の通信の経路との間に，一致する第3の経路が含まれている
ことを特徴とする管理装置。
【請求項３】
請求項2において，
前記第2の経路は，前記第2の通信の経路と一部一致しない経路，または，前記第2の通信の経路と一致する経路が前記第3の経路よりも短い経路である
ことを特徴とする管理装置。
【請求項４】
請求項3において，
前記処理部は，前記判定において，前記次の監視タイミングで前記第2の通信が継続している場合，前記遅延が発生すると判定する
ことを特徴とする管理装置。
【請求項５】
請求項2において，
さらに，データを転送する複数の転送装置の各々の接続関係を示す結線情報を記憶する記憶部を有し，
前記通信部は，前記複数の転送装置を有するネットワークに接続し，前記ネットワークにおける前記第1の経路を介して前記監視対象と通信し，
前記処理部は，前記記憶部から前記結線情報を取得し，さらに，前記複数の転送装置の各々から，前記第2の通信に対応するデータの送信先を示す通信情報を取得し，取得した前記結線情報と前記通信情報とに基づき，前記第2の通信の経路を特定する
ことを特徴とする管理装置。
【請求項６】
請求項1において，
さらに，複数の監視対象の各々に対応して定められた，所定期間において正常動作が要求される時間を示すサービスレベルを記憶する記憶部を有し，
前記処理部は，複数の監視対象について，次の前記監視タイミングでの前記通信において前記遅延が発生すると判定すると，前記複数の監視対象の各々に対応して定められた前記サービスレベルに基づき，前記複数の監視対象の各々の監視通信の経路の変更順番を決定し，決定した前記変更順序に従って，前記複数の監視対象の各々の前記第1の経路をそれぞれ前記第2の経路に変更する
ことを特徴とする管理装置。
【請求項７】
情報処理を実行する監視対象と，
前記監視対象を監視する監視タイミングに至ると，前記監視対象と第1の経路を介して監視対象と通信し前記監視対象の状態情報を取得する管理装置とを有し，
前記管理装置は，前記第1の経路の使用状況を検出し，前記使用状況に基づき，次の前記監視タイミングでの前記通信において遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，変更した前記第2の経路を介して前記監視対象と通信する
ことを特徴とする情報処理システム。
【請求項８】
コンピュータに，
監視対象を監視する監視タイミングに至ると，前記監視対象と第1の経路を介して通信し前記監視対象の状態情報を取得し，
前記第1の経路の使用状況を検出し，
次の前記監視タイミングでの前記通信において，前記使用状況により遅延が発生するか判定し，
前記遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，
変更した前記第2の経路を介して前記監視対象と通信する
処理を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，管理装置，情報処理システム，プログラムに関する。
【背景技術】
【０００２】
複数の通信装置(例えば，スイッチ)を有するネットワークと，このネットワークに接続する情報処理装置(例えば，サーバ)とを有する情報処理システムにおいて，情報処理装置や，情報処理装置上にて動作する仮想計算機が情報処理サービスを提供する。
【０００３】
かかるシステムにおいて，管理装置が，情報処理装置や仮想計算機(以下，仮想マシンと適宜記す)を管理する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2008-271050号公報
【特許文献２】特開2008-217302号公報
【特許文献３】特開2003-67351号公報
【特許文献４】特開2011-81579号公報
【特許文献５】特開2011-70549号公報
【特許文献６】特開2003-124976号公報
【特許文献７】特開2013-150134号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
管理装置は，所定の監視タイミングに至ると，監視対象(例えば，仮想マシン(VM：Virtual Machine))と通信し，監視対象から監視対象の状態を示す状態情報を取得する。状態情報は，例えば，監視対象が正常動作していること，監視対象に異常が発生し正常に動作していないことなどの情報を有する。
【０００６】
以下，管理装置が監視対象とする通信を監視通信と適宜記す。そして，監視通信により使用されるネットワーク経路を監視経路と適宜記す。なお，ネットワーク経路は，通信経路とも呼ばれる。
【０００７】
前記した情報処理システムにおけるネットワーク経路において突発的(一時的とも呼ぶ)に多量のデータの通信が実行された場合を想定する。この多量のデータ通信の一例として，仮想マシンのマイグレーションがある。
【０００８】
このように多量のデータの通信が実行されているネットワーク経路と監視経路との間に一致する経路(換言すれば，重複する経路)がある場合，この多量のデータの通信により，監視通信の通信遅延が発生することがある。
【０００９】
監視通信の通信遅延が生じると，管理装置は，所定の監視タイミングから遅延して監視対象の状態情報を取得する。かかる遅延により，管理装置は，リアルタイムに監視対象の状態情報を取得できなくなる。そのため，監視対象に異常が発生した場合，情報処理システムの管理者は，この異常に対して迅速に対応することが困難になる。
【００１０】
本実施の形態の一つの側面は，監視対象の状態監視の遅滞を抑制することを目的とする。
【課題を解決するための手段】
【００１１】
本実施の形態の第１の側面は，監視対象と第1の経路を介して通信する通信部と，
前記監視対象を監視する監視タイミングに至ると，前記監視対象と前記通信部により通信し前記監視対象の状態情報を取得する処理部とを有し，前記処理部は，前記第1の経路の使用状況を検出し，前記使用状況に基づき，次の前記監視タイミングでの前記通信において遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，変更した前記第2の経路を介して前記監視対象と前記通信部により通信することを特徴とする管理装置である。
【発明の効果】
【００１２】
第1の側面によれば，監視対象の状態監視の遅滞を抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】図1は，本実施の形態における情報処理システムの構成図である。
【図２】図2は，図1のスイッチが実行する通信パケットのスイッチングを説明する図である。
【図３】図3は，図1の管理装置M1のハードウェア構成図である。
【図４】図4は，図1のスイッチのハードウェア構成図である。
【図５】図5は，図1の管理装置M1のソフトウェア構成図である。
【図６】図6は，図1のスイッチSWのソフトウェア構成図である。
【図７】図7は，図3，図5のストレージ102の遅延通信経路記憶領域R1に記憶されているマイグレーション経路テーブルT1を示す図である。
【図８】図8は，図3，図5のストレージ102の監視経路記憶領域R2に記憶されている監視経路テーブルT2を示す図である。
【図９】図9は，図3，図5のストレージ102の転送経路記憶領域R3に記憶されている転送経路テーブルT3を示す図である。
【図１０】図10は，図3，図5のストレージ102の管理サーバ情報記憶領域R4に記憶されている管理サーバ情報テーブルT4を示す図である。
【図１１】図11は，図3，図5のストレージ102の監視タイミング情報記憶領域R5に記憶されている監視タイミングテーブルT5を示す図である。
【図１２】図12は，図3，図5のストレージ102の監視履歴情報記憶領域R6に記憶されている監視履歴テーブルT6を示す図である。
【図１３】図13は，図3，図5のストレージ102のサービスレベル記憶領域R7に記憶されているサービスレベルテーブルT7を示す図である。
【図１４】図14は，図3，図5のストレージ102の管理スイッチ情報記憶領域R8に記憶されているスイッチテーブルT8を示す図である。
【図１５】図15は，図3，図5のストレージ102の実行履歴記憶領域R9に記憶されているマイグレーション実行履歴テーブルT9を示す図である。
【図１６】図16は，図4，図6のストレージ302の遅延検知用情報記憶領域R11に記憶されている遅延検知用情報テーブルT11を示す図である。
【図１７】図17は，図1のスイッチの処理を説明するフロー図である。
【図１８】図18は，図1の管理装置M1が実行する監視経路の変更処理を説明する第1のフロー図である。
【図１９】図19は，図1の管理装置M1が実行する監視経路の変更処理を説明する第2のフロー図である。
【図２０】図20は，図1の管理装置M1が実行する監視経路の変更処理を説明する第3のフロー図である。
【図２１】図21は，第1のスイッチSW1における変更されたパケット転送経路テーブルを示す図である。
【図２２】図22は，変更された図9の転送経路テーブルT3を示す図である。
【図２３】図23は，図3，図5のストレージ102の遅延通信経路記憶領域R1に記憶されているバックアップ経路テーブルT1aを示す図である。
【図２４】図24は，図3，図5のストレージ102の実行履歴記憶領域R9に記憶されているバックアップ実行履歴テーブルT9aを示す図である。
【図２５】図25は，図4，図6のストレージ302の遅延検知用情報記憶領域R11に記憶されている遅延検知用情報テーブルT11aを示す図である。
【発明を実施するための形態】
【００１４】
<第1の実施の形態>
[情報処理システム]
図1は，本実施の形態における情報処理システムの構成図である。以下の説明において，同一の構成については同じ符号を付す。そして，同じ符号が付された構成については，一度した説明を適宜省略する。
【００１５】
情報処理システムSYSは，例えば，事業者の顧客(例えば，企業，学校，個人)にクラウドサービス(IaaS:Infrastructure as a Service)を提供する大規模データセンターである。
【００１６】
事業者は，情報処理システムSYSを介して，各顧客に，例えば，物理サーバ上で動作する仮想マシンを提供する。以下，前記した顧客をテナントと適宜記す。
【００１７】
図1の例では，事業者は，例えば，テナントAに第1の仮想マシンVM1を提供し(点線矢印"テナントA用"参照)，テナントXに第nの仮想マシンVMnを提供する(実線矢印"テナントX用"参照)。なお，小文字のnは，2以上の整数である。
【００１８】
図1において，各ブロック間を結ぶ実線は，各ブロック間におけるネットワーク接続を模式的に示している。このネットワーク接続は，たとえば，LAN(Local Area Network)であり，このLANでは例えばイーサネット(Ethernet)（登録商標）が使用されている。このネットワーク接続は，ネットワーク経路とも呼ばれる。
【００１９】
情報処理システムSYSは，管理装置M1と，第1のスイッチSW1〜第8のスイッチSW8とを有するネットワークと，第1のホストサーバSVR1〜第3のホストサーバSVR3とを有する。管理装置M1は，監視タイミングに至ると，情報処理を実行する監視対象から状態情報を取得する通信を行う。なお，監視対象は，第1のホストサーバSVR1〜第3のホストサーバSVR3や，第1の仮想マシンVM1〜第nの仮想マシンVMnである。
【００２０】
第1のスイッチSW1〜第8のスイッチSW8は，データを転送する転送装置とも呼ばれ，例えば，レイヤ3スイッチであり，OSI(Open Systems Interconnection)参照モデルにおけるネットワーク層でのデータの転送を実行する。
【００２１】
第1のスイッチSW1〜第8のスイッチSW8は，複数のポートを有し，各ポートが他のスイッチのポートとネットワーク接続している。
【００２２】
例えば，第1のスイッチSW1は，4つ以上のポートを有する。第1のスイッチSW1は，第1のポートを介して管理装置M1とネットワーク接続(ネットワークN1参照)し，第2のポートを介して第2のスイッチSW2とネットワーク接続する(ネットワークN2参照)。さらに，第1のスイッチSW1は，第3のポートを介して第3のスイッチSW3とネットワーク接続し(ネットワークN3参照)，第4のポートを介して第4のスイッチSW4とネットワーク接続する(ネットワークN4参照)。
【００２３】
第1のホストサーバSVR1〜第3のホストサーバSVR3は，物理サーバであり，ハードウェア資源を仮想化し複数の仮想マシンを起動し動作させる。第1のホストサーバSVR1は，例えば，第1の仮想マシンVM1〜第nの仮想マシンVMnを動作させる。そして，第2のホストサーバSVR2は，例えば，第mの仮想マシンVMmを動作させる。小文字のmは，2以上の整数である。なお，仮想マシンは，ホストサーバに対するゲストである。
【００２４】
情報処理システムSYSは，この仮想マシンを各テナントに提供する。図1における，管理装置，スイッチ，ホストサーバ，仮想マシンの数は，例示である。
【００２５】
なお，情報処理システムSYSのネットワークでは，例えば，コンピュータネットワーク(例えば，イーサネット(Ethernet))と，ストレージネットワーク(例えば，FC-SAN(Fibre Channel Storage Area Network))とが統合されている。
【００２６】
(通信パケットのスイッチング)
図2は，図1のスイッチが実行する通信パケットのスイッチングを説明する図である。通信パケットは，TCP(Transmission Control Protocol)/IP(Internet Protocol)プロトコルに適合したパケットである。通信パケットは，例えば，送信先IPアドレスと，送信元IPアドレスと，送信先ポート番号と，送信元ポート番号と，その他，各種データを含む。例えば，図1の第1のスイッチSW1が，図2のパケット転送テーブルTを記憶している。
【００２７】
図2のパケット転送テーブルTは，送信ポート欄と，送信先IPアドレス欄とを有する。送信先IPアドレス欄は，送信先IPアドレスを記憶する。送信ポート欄は，受信した通信パケットを送出する送信ポートの識別子(ID：Identifier)を記憶する。
【００２８】
パケット転送テーブルTは，1行に，送信先IPアドレスと，この送信先IPアドレスを含む通信パケットを送出するポートのIDとを対応付けて記憶する。第1のスイッチSW1は，図1で説明したように第1〜第4のポートを有し，第1〜第4のポートは，それぞれ送信ポートID"1"〜"4"で特定される。なお，以下の図の説明において，"-"(ハイフン)は，データが記憶されていないことを示す。
【００２９】
第1のスイッチSW1は，送信先IPアドレス"192.168.1.5"を含む通信パケットを例えば第2のスイッチSW2から受信する。ここで，IPアドレス"192.168.1.5"は，管理装置M1に設定されているIPアドレスである。なお，この通信パケットのデータ部は，第1の仮想マシンVM1の状態を示す情報を含む。
【００３０】
第1のスイッチSW1は，通信パケットを受信すると，パケット転送テーブルTにおいて，受信した通信パケットに含まれる送信先IPアドレス"192.168.1.5"が記憶されている行と同一行の送信ポートID(ID1)を特定する。そして，第1のスイッチSW1は，受信した通信パケットを，送信ポートID1で特定される第1のポートに送出する。すなわち，第1のスイッチSW1は，受信した通信パケットを，第1のポートに接続する管理装置M1に送信する。
【００３１】
また，第1のスイッチSW1は，送信先IPアドレス"192.168.1.10"を含む通信パケットを例えば管理装置M1から受信する。ここで，IPアドレス"192.168.1.10"は，第1のホストサーバSVR1に設定されているIPアドレスである。なお，この通信パケットのデータ部は，第1のホストサーバSVR1や第1の仮想マシンVM1の状態を通知するように第1のホストサーバSVR1に指示する指示コマンドを含む。
【００３２】
第1のスイッチSW1は，通信パケットを受信すると，パケット転送テーブルTにおいて，受信した通信パケットに含まれる送信先IPアドレス"192.168.1.10"が記憶されている行と同一行の送信ポートID2(ID2)を特定する。そして，第1のスイッチSW1は，受信した通信パケットを，送信ポートID2で特定される第2のポートに送出する。すなわち，第1のスイッチSW1は，受信した通信パケットを，第2のポートに接続する第2のスイッチSW2に送信する。
【００３３】
第2のスイッチSW2〜第8のスイッチSW8は，それぞれ図2で示した形式のパケット転送テーブルを自装置に記憶する。そして，第2のスイッチSW2〜第8のスイッチSW8は，図2で説明したように，パケット転送テーブルに基づき，受信した通信パケットを転送する。
【００３４】
(多量のデータ通信)
図1で説明した，情報処理システムSYSの通信において，監視通信の通信遅延が突発的に発生することがある。この通信遅延の発生の原因は，例えば，情報処理システムSYSにおける局所的なネットワーク経路において突発的に多量のデータの通信が実行されることである。この多量のデータ通信の一例として，仮想マシンのマイグレーションがある。
【００３５】
このマイグレーション用の通信は，第1の情報処理装置が動作させている仮想マシンを第1の情報処理装置から第1の情報処理装置と異なる第2の情報処理装置に移動して第2の情報処理装置で動作させるために実行されるマイグレーションに関する通信である。ここで，第1の情報処理装置は，例えば，第1のホストサーバSVR1であり，第2の情報処理装置は，例えば，第3のホストサーバSVR3である。そして，仮想マシンは，第nの仮想マシンVMnである。
【００３６】
以下，仮想マシンのマイグレーションが実行される場合において，このマイグレーションに関連するデータが転送される経路をマイグレーション経路と適宜記す。
【００３７】
第nの仮想マシンVMnのマイグレーションにおいて，第1のホストサーバSVR1と第3のホストサーバSVR3との間のマイグレーション経路は，例えば以下の経路であるとする。すなわち，このマイグレーション経路は，第1のホストサーバSVR1と第5のスイッチSW5との間のネットワークN5，第5のスイッチSW5と第2のスイッチSW2との間のネットワークN6である。さらに，このマイグレーション経路は，第2のスイッチSW2と第8のスイッチSW8との間のネットワークN7，第8のスイッチSW8と第3のホストサーバSVR3との間のネットワークN8である。
【００３８】
前記したマイグレーションの実行においては，マイグレーション対象の仮想マシンに関連する多量のデータが，マイグレーション経路(ネットワークN5〜N8)において転送される。この転送の結果，マイグレーション経路の通信帯域が圧迫されて，他のデータ通信において通信遅延が発生する。
【００３９】
(監視通信)
通信遅延が発生する他のデータ通信の一例は，管理装置M1が実行する監視通信である。管理装置M1は，監視対象の状態を監視するため，この監視対象と監視通信を行う。監視対象は，例えば，第1のホストサーバSVR1上で動作する第1の仮想マシンVM1〜第nの仮想マシンVMnである。管理装置M1は，監視対象と監視通信を行い監視対象の状態情報を取得する。そして，管理装置M1は，取得した状態情報を参照して監視対象を監視し，監視結果を情報処理システムSYSの管理者に通知する。この監視結果は，監視対象が正常動作していること，異常状態であることなどを示す監視結果である。
【００４０】
管理装置M1が，第1の仮想マシンVM1〜第nの仮想マシンVMnに対して実行する監視通信の監視経路(管理経路，ポーリング経路とも呼ぶ)は，例えば以下の経路である。すなわち，この監視経路は，管理装置M1と第1のスイッチSW1との間のネットワークN1，第1のスイッチSW1と第2のスイッチSW2との間のネットワークN2，第2のスイッチSW2と第5のスイッチSW5との間のネットワークN6である。さらに，この監視経路は，第5のスイッチSW5と第1のホストサーバSVR1との間のネットワークN5である。
【００４１】
(通信遅延)
例示したマイグレーション経路(ネットワークN5，N6，N7，N8)と，例示した監視経路(ネットワークN1，N2，N5，N6)とは，一部の経路(ネットワークN5，N6)が一致(重複とも呼ぶ)する。この一致する経路では，第nの仮想マシンVMnのマイグレーション用の通信と，第1の仮想マシンVM1〜第nの仮想マシンVMnの監視通信とが同時に実行される。
【００４２】
第nの仮想マシンVMnのマイグレーション用の通信におけるデータ通信量は多いので，このマイグレーション用の通信がこの一致する経路の通信帯域を圧迫する。そのため，第1の仮想マシンVM1〜第nの仮想マシンVMnの監視通信の通信遅延が発生する。
【００４３】
監視通信の通信遅延が生じると，管理装置は，所定の監視タイミングから遅延して監視対象の状態情報を取得する。そのため，第1の仮想マシンVM1〜第nの仮想マシンVMnに何らかの異常が発生した場合，所定の監視タイミングにおける管理装置M1による異常の検知が遅れる。その結果，監視対象に異常が発生した場合，情報処理システムSYSの管理者は，この異常に対して迅速に対応することが困難になる。すなわち，情報処理システムSYSの管理者は，監視対象の状態を高精度に監視することが困難になる。
【００４４】
(サービスレベル)
さて，情報処理システムSYSの事業者は，各テナントに情報処理サービスを提供する場合，各テナントに対してサービスレベルを保証する。このサービスレベル(サービス保証レベルとも呼ばれる)は，例えば，所定の期間に対して仮想マシンが正常に動作する時間の割合で定められる。
【００４５】
例えば，所定の期間を365日(秒にすると，31,536,000秒(365×24×60×60秒))とする。そして，事業者が，テナントに保証するサービスレベルを99.99%とする。
【００４６】
サービスレベルが99.99%の場合，事業者は，前記所定の期間"365日"で，このテナントに提供する仮想マシンを31,536,000×0.9999秒(すなわち31,532,846.4秒)，正常に動作させることが要求される。サービスレベルが高くなるほど，すなわち，サービスレベルが100％に近づくほど，仮想マシンの監視精度を高めて仮想マシンの異常を迅速に検知し，異常に迅速に対応することが好ましい。
【００４７】
しかし，前記したように，監視対象の監視通信に遅延が生じると，監視対象に異常が発生した場合，情報処理システムの管理者は，この異常に対して迅速に対応することが困難になる。その結果，事業者は，テナントに保証したサービスレベルを維持することが困難になる。
【００４８】
そこで，前記したサービスレベルを保証するため，管理装置M1は，仮想マシンの監視通信に遅延が生じないように監視経路の変更を行う。監視経路の変更については，図5で説明する。
【００４９】
［ハードウェア構成］
図3は，図1の管理装置M1のハードウェア構成図である。管理装置M1は，サーバなどの情報処理装置である。なお，管理装置は，監視装置とも呼ばれる。
【００５０】
管理装置M1は，バスBに接続された，CPU(処理部)101と，ストレージ装置(記憶部)102と，RAM103と，外部記憶媒体読み取り装置104と，通信装置(通信部)105と，入力インターフェイス装置106と，表示インターフェイス装置107とを有する。なお，CPUは"Central Processing Unit"の略語，RAMは"Random Access Memory"の略語である。以下，CPU(処理部)101をCPU101，ストレージ装置(記憶部)102をストレージ102，通信装置(通信部)105を通信装置105と適宜記す。
【００５１】
CPU101は，管理装置M1の全体を制御する中央演算処理装置である。ストレージ102は，例えばハードディスクドライブ(HDD：Hard Disk Drive)や，ソリッドステートドライブ(SSD:Solid State Drive)などの大容量記憶装置である。ストレージ102は，各種情報を記憶する記憶領域R1〜R9を有する。なお，記憶領域R1〜R9の詳細については，図7〜図15で説明する。さらに，ストレージ102は，監視対象の管理を制御する管理ソフトSF1の実行ファイル(プログラム)を記憶する。
【００５２】
RAM103は，CPU101が実行する処理や，管理ソフトSF1が実行する各ステップにおいて生成(算出)されたデータなどを一時的に記憶する。RAM103は，例えばDRAM(Dynamic Random Access Memory)などの半導体メモリである。
【００５３】
CPU101は，管理装置M1の起動時に，ストレージ102から管理ソフトSF1の実行ファイルを読み出し，RAM103に展開する。なお，この実行ファイルを外部記憶媒体MDに記憶してもよい。
【００５４】
外部記憶媒体読み取り装置104は，管理装置M1と，外部記憶媒体MDとを接続するためのインターフェイスとして機能する装置である。外部記憶媒体読み取り装置104は，例えば，カードスロットや，USB(Universal Serial Bus)のポートである。
【００５５】
外部記憶媒体MDは，USBメモリなどの可搬型の不揮発性メモリである。なお，外部記憶媒体読み取り装置104を介して，記憶媒体に記憶されたデータを読み取る記憶媒体読み取り装置(図示しない)と接続する構成としても良い。この記憶媒体(記録媒体とも呼ばれる)は，例えば，CD-ROM(Compact Disc Read Only Memory)，DVD(Digital Versatile Disc)などの可搬型記憶媒体である。
【００５６】
通信装置105は，例えば1以上のポートを有するNIC(Network Interface Card)である。通信装置105は，ネットワークN1に対するインターフェイス機能を提供する。
【００５７】
通信装置105は，監視対象と第1の経路を介して通信する。第1の経路は，例えば，監視経路であり，図1の例では，ネットワークN1，N2，N6，N5で示される経路である。すなわち，通信装置105は，複数のスイッチを有するネットワークに接続し，このネットワークにおける監視経路を介して監視対象と通信する。
【００５８】
入力インターフェイス装置106は，例えばUSBポートを有し，入力装置INに対するインターフェイス機能を提供する。入力装置INは，例えば，キーボード，マウスなどの各種情報を入力する装置である。表示インターフェイス装置107は，例えばグラフィックボードを有し，表示装置DSPに対するインターフェイス機能を提供する。表示装置DSPは，例えば液晶ディスクプレイ，有機EL(Organic Electroluminescence)などの各種情報を表示する装置である。
【００５９】
図4は，図1のスイッチのハードウェア構成図である。スイッチSWは，例えば図1の第1のスイッチSW1である。スイッチSWは，バスBに接続された，CPU(処理部)301と，ストレージ装置(記憶部)302と，RAM303と，外部記憶媒体読み取り装置304と，通信装置305とを有する。以下，CPU(処理部)301をCPU301，ストレージ装置(記憶部)302をストレージ302と適宜記す。
【００６０】
CPU301は，スイッチSWの全体を制御する中央演算処理装置である。ストレージ302は，例えばハードディスクドライブや，ソリッドステートドライブなどの大容量記憶装置である。
【００６１】
ストレージ302は，各種情報を記憶する記憶領域R11，R12を有する。記憶領域R11の詳細については，図16で説明する。転送経路情報記憶領域R12は，スイッチSWが通信パケットのスイッチングを行う際に参照するパケット転送テーブルT(図2参照)を記憶する領域である。図2のパケット転送テーブルTが，転送経路情報記憶領域R12に記憶されている状態をストレージ302における":T"で模式的に示している。
【００６２】
ストレージ302は，スイッチングを制御するスイッチングソフトSF2の実行ファイル(プログラム)を記憶する。
【００６３】
RAM303は，CPU301が実行する処理や，スイッチングソフトSF2が実行する各ステップにおいて生成されたデータなどを一時的に記憶する。RAM303は，例えばDRAMなどの半導体メモリである。
【００６４】
CPU301は，スイッチSWの起動時に，ストレージ302からスイッチングソフトSF2の実行ファイルを読み出し，RAM303に展開する。なお，この実行ファイルを外部記憶媒体MDに記憶してもよい。
【００６５】
外部記憶媒体読み取り装置304は，スイッチSWと，外部記憶媒体MDとを接続するためのインターフェイスとして機能する装置である。外部記憶媒体読み取り装置304は，例えば，カードスロットや，USBのポートである。
【００６６】
通信装置305は，例えばNICを有し，ネットワークN1などに対するインターフェイス機能を提供する。通信装置305は，複数のポートを有し，複数のポートの各々は，他のスイッチSWのポートにそれぞれ接続している。
【００６７】
図4のスイッチSWが，図1の第1のスイッチSW1の場合，通信装置305は，第1のポートP1〜第4のポートP4を有する。第1のポートP1はネットワークN1に接続し，第2のポートP2はネットワークN2に接続する。第3のポートP3はネットワークN3に接続し，第4のポートP4はネットワークN4に接続する。なお，図4で説明したポート数(4つ)は，例示である。
【００６８】
図1で説明した第2のスイッチSW2〜第8のスイッチSW8の構成は，図4のスイッチSWの構成と同様であり，ネットワークを介して他のスイッチや，ホストサーバと接続する。
【００６９】
［ソフトウェア構成］
図5は，図1の管理装置M1のソフトウェア構成図である。なお，説明の便宜のため，ハードウェアであるストレージ102を一点鎖線で模式的に示している。
【００７０】
管理ソフトSF1は，管理モジュール11と，遅延通信経路特定モジュール12と，監視経路特定モジュール13と，遅延通信仮想マシン特定モジュール14と，仮想マシン特定モジュール15とを有する。さらに，管理ソフトSF1は，終息時間特定モジュール16と，監視経路変更判定モジュール17と，変更順序特定モジュール18と，変更用監視経路特定モジュール19と，転送経路更新モジュール20とを有する。
【００７１】
管理モジュール11は，ホストサーバ，仮想マシンの管理処理を実行する。管理モジュール11は，監視対象を監視する監視タイミングに至ると，監視対象と通信装置105により通信し監視対象の状態情報を取得する。そして，管理モジュール11は，取得した状態情報を参照して監視対象を監視し，監視結果を情報処理システムSYSの管理者に表示装置DSPを介して通知する。
【００７２】
遅延通信経路特定モジュール12は，監視経路の通信遅延を発生させる通信(例えば，マイグレーション用の通信)の経路を特定する。
【００７３】
監視経路特定モジュール13は，通信遅滞を発生させる通信の通信元サーバの監視経路や監視対象の監視経路を特定する。
【００７４】
遅延通信仮想マシン特定モジュール14は，監視経路の通信遅延を発生させる通信に関連する仮想マシンを特定する。
【００７５】
仮想マシン特定モジュール15は，監視経路の通信遅延を発生させる通信により監視通信が遅延する仮想マシンを特定する。終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信の予測終息時間(終了時間とも呼ぶ)を特定する。
【００７６】
監視経路変更判定モジュール17は，第1の経路(例えば，現在の監視経路)の使用状況を検出し，使用状況に基づき，状態情報を取得する次の監視タイミングでの監視通信において遅延が発生するか判定する。換言すれば，監視経路変更判定モジュール17は，使用状況に基づき，状態情報を取得する次の監視タイミングでの監視通信に影響が生じるか判定する。
【００７７】
この使用状況は，監視対象の監視経路と，監視対象との第1の通信(例えば，監視通信)の遅延を発生させる第2の通信(例えば，マイグレーション用の通信)の経路との間に，一致する第3の経路が含まれている状況である。
【００７８】
監視経路変更判定モジュール17は，管理装置M1と監視対象との間に設けられたスイッチから通知された，第2の通信が実行されたことを示す情報に基づき，第2の通信を検知する。この情報については，図17で説明する。
【００７９】
図1の場合，監視経路は，例えば，ネットワークN1，N2，N6，N5で示される経路である。そして，第2の通信の経路は，ネットワークN5，N6，N7，N8で示される経路である。この2つの経路の間に，一致する第3の経路，例えば，ネットワークN5，N6で示される経路が含まれる。従って，図1の例の場合，監視経路変更判定モジュール17は，第1の経路の使用状況を，この2つの経路の間に，一致する第3の経路が含まれている状況にあることを検出する。
【００８０】
そして，監視経路変更判定モジュール17は，前記した判定において，次の監視タイミングで第2の通信が継続している場合，監視通信の遅延が発生すると判定する。
【００８１】
変更順序特定モジュール18は，複数の変更対象仮想マシンがある場合，複数の変更対象仮想マシンの各々のサービスレベルに基づき，監視経路の変更順番を決定する。
【００８２】
変更用監視経路特定モジュール19は，監視対象の第1の監視経路と異なる第2の監視経路を特定する。第2の監視経路は，監視通信における通信遅延を抑制できる経路である。
【００８３】
具体的には，第2の監視経路は，第2の通信(例えば，マイグレーション用の通信)の経路と一部が一致しない経路，または，第2の通信の経路と一致する経路が第3の経路よりも短い経路である。図1の場合，第2の経路は，管理装置M1と第1のスイッチSW1と第3のスイッチSW3と第6のスイッチSW6と第1のホストサーバSVR1との間のネットワーク経路である。
【００８４】
状態情報を取得する次の監視タイミングでの監視通信において遅延が発生すると判定されると，転送経路更新モジュール20は，以下の処理を実行する。すなわち，転送経路更新モジュール20は，監視対象の第1の監視経路(現在の監視経路)を第1の監視経路と異なる第2の監視経路に変更するように，各スイッチに依頼する。以後，管理モジュール11は，この監視対象の監視タイミングに至ると，変更後の第2の監視経路を介して監視対象と通信装置105により通信し監視対象の状態情報を取得する。
【００８５】
以上説明したように，管理装置M1は，マイグレーション用の通信の経路と監視対象の監視経路との間に一致する部分が含まないように，または，一致する部分が変更前よりも短くなるように，この監視対象の監視経路を変更する。なお，この監視対象は，前記したように，マイグレーション用の通信の実行により監視通信が遅延する監視対象である。
【００８６】
この監視経路の変更により，マイグレーション用の通信の経路と監視経路との間に一致する部分が含まれなくなる，または，一致する部分が変更前よりも短くなるので，監視対象との監視通信において，通信遅延が発生することを抑制できる。その結果，監視対象の状態情報の取得における遅滞を抑制できる。換言すれば，監視通信における状態情報の取得に際する遅延の影響を抑制できる。
【００８７】
さらに，管理装置M1は，次の監視タイミングでの監視対象の監視通信において遅延が発生すると判定した場合に，この監視対象の監視経路を変更する。そのため，マイグレーション用の通信の経路と監視対象の監視経路との間に一致している経路があるからといって，この監視経路を変更するものではない。すなわち，監視経路の使用状況を予測して，監視経路を変更するか否かを適切に判断できる。その結果，情報処理システムSYSを構成する各スイッチに，不必要な転送経路の変更処理を実行させなくてよいので，各スイッチの処理負荷を削減できる。
【００８８】
図6は，図1のスイッチSWのソフトウェア構成図である。なお，説明の便宜のため，ハードウェアであるストレージ302を一点鎖線で模式的に示している。
【００８９】
スイッチングソフトSF2は，管理モジュール31と，遅延通信検知モジュール32と，通信モジュール33とを有する。
【００９０】
管理モジュール31は，スイッチの管理処理を実行し，さらに，通信パケットのスイッチング処理を実行する。遅延通信検知モジュール32は，監視通信の監視遅延の原因となる多量のデータの通信を検出する。通信モジュール33は，管理装置M1との通信処理を実行する。
【００９１】
(全マイグレーション経路)
図7は，図3，図5のストレージ102の遅延通信経路記憶領域R1に記憶されているマイグレーション経路テーブルT1を示す図である。遅延通信経路記憶領域R1は，マイグレーション経路テーブルT1を記憶する領域である。マイグレーション経路テーブルT1が遅延通信経路記憶領域R1に記憶されている状態を図3，図5のストレージ102における":T1"で模式的に示している。
【００９２】
マイグレーション経路テーブルT1は，可能性のある全てのマイグレーション経路を記憶するテーブルである。
【００９３】
マイグレーション経路テーブルT1は，マイグレーション元ホストサーバ欄と，マイグレーション元IPアドレス欄とを有する。さらに，マイグレーション経路テーブルT1は，マイグレーション先ホストサーバ欄と，マイグレーション先IPアドレス欄と，マイグレーション経路欄とを有する。
【００９４】
マイグレーション元ホストサーバ欄は，マイグレーション元のホストサーバ(以下，元ホストサーバSRCと適宜記す)のIDを記憶する。マイグレーション元IPアドレス欄は，元ホストサーバSRCに設定されているIPアドレスを記憶する。マイグレーション先ホストサーバ欄は，マイグレーション先のホストサーバ(以下，先ホストサーバDSTと適宜記す)のIDを記憶する。マイグレーション先IPアドレス欄は，先ホストサーバDSTに設定されているIPアドレスを記憶する。なお，元ホストサーバSRC，先ホストサーバDSTのIDは，図1の各ホストサーバの符号(SVR1〜SVR3)に該当する。
【００９５】
マイグレーション経路欄は，元ホストサーバSRCと先ホストサーバDSTとの間のマイグレーション経路を記憶する。
【００９６】
マイグレーション経路テーブルT1は，1行に，元ホストサーバSRCのIDおよびIPアドレス，先ホストサーバDSTのIDおよびIPアドレス，元ホストサーバSRCと先ホストサーバDSTとの間のマイグレーション経路とを対応付けて記憶する。
【００９７】
例えば，マイグレーション経路テーブルT1は，第1のホストサーバSVR1のID"SVR1"およびIPアドレス"192.168.1.10"と，第2のホストサーバSVR2のID"SVR2"およびIPアドレス"192.168.1.11"と，第1のホストサーバSVR1と第2のホストサーバSVR2との間のマイグレーション経路とを対応付けて記憶する。第1のホストサーバSVR1と第2のホストサーバSVR2との間のマイグレーション経路は，例えば，"［SVR1-PRT2］=>[SW6-PRT1]=>[SW6-PRT2]=>［SVR2-PRT1］"（経路1）
で示される。
【００９８】
[SVRx-PRTy]の"SVRx"は，元ホストサーバSRC，先ホストサーバDSTのID(図1の各ホストサーバの符号)を示す。小文字の"x"は，1以上の整数を示す。また，[SVRx-PRTy]の"PRTy"は，SVRxで識別されるホストサーバのポートを識別するポートIDを示す。小文字の"y"は，1以上の整数を示す。
【００９９】
[SWz-PRTy]の"SWz"は，スイッチのID(図1の各スイッチの符号)を示す。小文字の"z"は，1以上の整数を示す。また，[SWz -PRTy]の"PRTy"は，SWzで識別されるスイッチのポートを識別するポートIDを示す。
【０１００】
"=>"は，ネットワーク経路，換言すれば通信(上がり，下りを含む)を模式的に示す。以下の説明において，PRTyで識別されるポートIDに対応するポートをポートyと適宜記す。
【０１０１】
(経路1)は，第1のホストサーバSVR1のポート2と第6のスイッチSW6のポート1と第6のスイッチSW6のポート2と第2のホストサーバSVR2のポート1とのネットワーク経路を示す。そして，(経路1)は，このネットワーク経路を介して，第1のホストサーバSVR1と第2のホストサーバSVR2との間で通信パケットが送受信されることを示す。
【０１０２】
マイグレーション経路欄は，図1の情報処理システムSYSにおいて，元ホストサーバSRCと先ホストサーバDSTとの間における全てのネットワーク経路，すなわち全てのマイグレーション経路を記憶する。
【０１０３】
次に，第1のホストサーバSVR1と第3のホストサーバSVR3との間のマイグレーション経路は，例えば，
"［SVR1-PRT1］=>[SW5-PRT1]=>[SW5-PRT2]=>［SW2-PRT1］=>［SW2-PRT2］=>［SW8-PRT1］=>［SW8-PRT2］=>［SVR3-PRT1］"（経路2）
で示される。
【０１０４】
(経路2)は，第1のホストサーバSVR1のポート1と第5のスイッチSW5のポート1と第5のスイッチSW5のポート2と第2のスイッチSW2のポート1とのネットワーク経路を示す。さらに，(経路2)は，第2のスイッチSW2のポート1と第2のスイッチSW2のポート2と第8のスイッチSW8のポート1と第8のスイッチSW8のポート2と第3のホストサーバSVR3のポート1とのネットワーク経路を示す。そして，(経路2)は，このネットワーク経路を介して，第1のホストサーバSVR1と第3のホストサーバSVR3との間で通信パケットが送受信されることを示す。
【０１０５】
他にも，第1のホストサーバSVR1と第3のホストサーバSVR3との間のマイグレーション経路は，例えば，
"［SVR1-PRT1］=>[SW5-PRT1]=>[SW5-PRT3]=>［SW4-PRT1］=>［SW4-PRT2］=>［SVR8-PRT3］=>［SVR8-PRT2］=>［SVR3-PRT1］"（経路3）
で示される。
【０１０６】
(全監視経路)
図8は，図3，図5のストレージ102の監視経路記憶領域R2に記憶されている監視経路テーブルT2を示す図である。監視経路記憶領域R2は，監視経路テーブルT2を記憶する領域である。監視経路テーブルT2が監視経路記憶領域R2に記憶されている状態を図3，図5のストレージ102における":T2"で模式的に示している。監視経路テーブルT2は，可能性のある全ての監視経路を記憶するテーブルである。
【０１０７】
監視経路テーブルT2は，監視対象欄と，監視対象IPアドレス欄と，監視経路欄とを有する。監視対象欄は，管理装置M1が監視対象とするホストサーバや，仮想マシンのIDを記憶する。監視対象IPアドレス欄は，管理装置M1が監視対象とするホストサーバや，仮想マシンに設定されているIPアドレスを記憶する。なお，仮想マシンのIDは，図1の第1の仮想マシンVM1〜第nの仮想マシンVMnのIDに該当する。
【０１０８】
監視経路欄は，管理装置M1と監視対象との間の監視経路を記憶する。
【０１０９】
監視経路テーブルT2は，1行に，監視対象のID，監視対象とするホストサーバや，仮想マシンに設定されているIPアドレス，管理装置M1と監視対象との間の監視経路とを対応付けて記憶する。
【０１１０】
例えば，監視経路テーブルT2は，第1のホストサーバSVR1のID"SVR1"と，第1のホストサーバSVR1に設定されているIPアドレス"192.168.1.10"と，管理装置M1と第1のホストサーバSVR1との間の監視経路とを対応付けて記憶する。
【０１１１】
管理装置M1と第1のホストサーバSVR1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT2］=>［SW2-PRT3］=>［SW2-PRT1］=>[SW5-PRT2]=> [SW5-PRT1]=>［SVR1-PRT1］" （経路4）
で示される。[M1]の"M1"は，管理装置M1のIDを示し，図1の管理装置M1の符号に対応する。
【０１１２】
(経路4)は，管理装置M1のポートと第1のスイッチSW1のポート1と第1のスイッチSW1のポート2と第2のスイッチSW2のポート3と第2のスイッチSW2のポート1とのネットワーク経路を示す。さらに，(経路4)は，第2のスイッチSW2のポート1と第5のスイッチSW5のポート2と第5のスイッチSW5のポート1と第1のホストサーバSVR1のポート1とのネットワーク経路を示す。そして，(経路4)は，このネットワーク経路を介して，管理装置M1と第1のホストサーバSVR1との間で通信パケットが送受信されることを示す。
【０１１３】
他にも，管理装置M1と第1のホストサーバSVR1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT3］=>［SW3-PRT1］=>［SW3-PRT2］=>[SW6-PRT3]=> [SW6-PRT1]=>［SVR1-PRT2］"（経路5）
で示される。
【０１１４】
他にも，管理装置M1と第1のホストサーバSVR1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT4］=>［SW4-PRT4］=>［SW4-PRT3］=>[SW6-PRT4]=> [SW6-PRT1]=>［SVR1-PRT2］"（経路6）
で示される。
【０１１５】
なお，他にも，管理装置M1と第1のホストサーバSVR1との間の監視経路があるが，その説明を省略する。
【０１１６】
また，例えば，監視経路テーブルT2は，第1の仮想マシンVM1のID"VM1"と，第1の仮想マシンVM1に設定されているIPアドレス"192.168.1.13"と，管理装置M1と第1の仮想マシンVM1との間の監視経路とを対応付けて記憶する。
【０１１７】
管理装置M1と第1の仮想マシンVM1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT2］=>［SW2-PRT3］=>［SW2-PRT1］=>[SW5-PRT2]=> [SW5-PRT1]=>［VM1-PRT1］"（経路7）
で示される。[VMn]の"VMn"は，第nの仮想マシンVMnのIDを示す。
【０１１８】
他にも，管理装置M1と第1の仮想マシンVM1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT3］=>［SW3-PRT1］=>［SW3-PRT2］=>[SW6-PRT3]=> [SW6-PRT1]=>［VM1-PRT2］"（経路8）
で示される。なお，第1の仮想マシンVM1のポート2は，第1の仮想マシンVM1を実行している第1のホストサーバSVR1のポート2と同じである。
【０１１９】
他にも，管理装置M1と第1の仮想マシンVM1との間の監視経路は，例えば，
"［M1］=>［SW1-PRT1］=>［SW1-PRT4］=>［SW4-PRT4］=>［SW4-PRT3］=>[SW6-PRT4]=> [SW6-PRT1]=>［VM1-PRT2］"（経路9）で示される。なお，他にも，管理装置M1と第1のホストサーバSVR1との間の監視経路があるが，その説明を省略する。
【０１２０】
(全マイグレーション経路，全監視経路)
管理装置M1の管理モジュール11は，起動時や，起動後に定期的に，情報処理システムSYSを構成する各スイッチ(SW1〜SW8)から各スイッチが記憶する結線情報を取得し，ストレージ102に記憶する。
【０１２１】
この結線情報は，スイッチと他の装置(例えば，スイッチ，管理装置M1，ホストサーバ)との接続関係を示す情報である。例えば，図1の第1のスイッチSW1は，ポート1を介して管理装置M1に接続し，ポート2を介して第2のスイッチSW2のポート3に接続している。さらに，第1のスイッチSW1は，ポート3を介して第3のスイッチSW3のポート1に接続し，ポート4を介して第4のスイッチSW4のポート4に接続している。第1のスイッチSW1は，この管理装置M1，第2のスイッチSW2，第3のスイッチSW3，第4のスイッチSW4との接続関係を示す結線情報を記憶する。
【０１２２】
そして，管理モジュール11は，取得した結線情報に基づき，情報処理システムSYS全体のネットワークトポロジ情報を生成し，ストレージ102に記憶している。
【０１２３】
管理モジュール11は，情報処理システムSYS全体のネットワークトポロジ情報を参照することにより，図7で説明した，元ホストサーバSRCと先ホストサーバDSTとの間において想定されるマイグレーション経路を計算する。そして，管理モジュール11は，計算結果を示すマイグレーション経路テーブルT1を作成し，図3，図5のストレージ102に記憶する。
【０１２４】
同じく，管理モジュール11は，情報処理システムSYS全体のネットワークトポロジ情報を参照することにより，図8で説明した，管理装置M1と，監視対象のホストサーバ，仮想マシンとの間において想定される監視経路を計算する。そして，管理モジュール11は，計算結果を示す監視経路テーブルT2を作成し，図3，図5のストレージ102に記憶する。
【０１２５】
(パケット転送テーブル)
図9は，図3，図5のストレージ102の転送経路記憶領域R3に記憶されている転送経路テーブルT3を示す図である。転送経路記憶領域R3は，転送経路テーブルT3を記憶する領域である。転送経路テーブルT3が転送経路記憶領域R3に記憶されている状態を図3，図5のストレージ102における":T3"で模式的に示している。
【０１２６】
転送経路テーブルT3は，情報処理システムSYSのネットワークにおいて実際に転送されている通信パケットの経路を記憶するテーブルである。換言すれば，転送経路テーブルT3は，実際に実行されるマイグレーション経路や実際に実行される監視経路を記憶するテーブルである。
【０１２７】
転送経路テーブルT3は，スイッチ欄と，受信ポート欄と，送信先IPアドレス欄と，送信ポート欄とを有する。
【０１２８】
スイッチ欄は，スイッチのIDを記憶する。スイッチのIDは，図1の各スイッチの符号(第1のスイッチSW1〜第8のスイッチSW8)に該当する。受信ポート欄は，通信パケットを受信するポート(以下，受信ポートと適宜記す)のIDを記憶する。送信先IPアドレス欄は，送信先IPアドレスを記憶する。送信ポート欄は，受信した通信パケットを送出する送信ポートのIDを記憶する。
【０１２９】
転送経路テーブルT3は，1行に，スイッチのIDと，スイッチの受信ポートのIDと，このIDの受信ポートを介して受信した通信パケットに含まれる送信先IPアドレスと，この通信パケットを送出する送信ポートのIDとを対応付けて記憶する。
【０１３０】
転送経路テーブルT3によれば，第5のスイッチSW5は，符号LN21に示すように，"192.168.1.12"を含む通信パケット(以下，通信パケットMGRTと記す)をポート1(受信ポート1)を介して受信し，ポート2(送信ポート2)に送出する。なお，IPアドレス"192.168.1.12"は，第3のホストサーバSVR3に設定されたIPアドレスである。
【０１３１】
第2のスイッチSW2は，符号LN22に示すように，通信パケットMGRTをポート1(受信ポート1)を介して受信し，ポート2(送信ポート2)に送出する。
【０１３２】
第8のスイッチSW8は，符号LN23に示すように，通信パケットMGRTをポート1(受信ポート1)を介して受信し，ポート2(送信ポート2)に送出する。第8のスイッチSW8の送信ポート2に送出された通信パケットMGRTは，第3のホストサーバSVR3に到達する。
【０１３３】
管理装置M1の遅延通信経路特定モジュール12は，図9に基づき，実際のマイグレーション経路を特定する。そして，管理装置M1の監視経路特定モジュール13は，図9に基づき，実際の監視経路を特定する。
【０１３４】
管理装置M1の管理モジュール11は，スイッチが記憶するパケット転送テーブル(図2参照)をスイッチから取得する。図2のパケット転送テーブルは，第2の通信(例えば，マイグレーション用の通信)に対応するデータの送信先を示す通信情報の一例である。
【０１３５】
管理モジュール11は，ネットワークトポロジ情報(図7,図8参照)と，各スイッチが記憶するパケット転送テーブル(図2参照)とに基づき，転送経路テーブルT3を作成する。
【０１３６】
転送経路テーブルT3の作成法を説明する。例えば，第2のスイッチSW2は，送信先IPアドレス"192.168.1.12"を含む通信パケットをポート1(受信ポート1)を介して受信し，ポート2(送信ポート2)に送出することを示す情報を含むパケット転送テーブルを記憶している。
【０１３７】
そして，ネットワークトポロジ情報は，第2のスイッチSW2がポート1を介して第5のスイッチSW5のポート2に接続し，第2のスイッチSW2がポート2を介して第8のスイッチSW8のポート1に接続していることを示す結線情報を含む。
【０１３８】
管理モジュール11は，このパケット転送テーブル，ネットワークトポロジ情報に基づき，第2のスイッチSW2が通信パケットMGRTをポート1を介して受信し，ポート2(送信ポート2)に送出することを示す情報を転送経路テーブルT3に記憶する(行LN22参照)。
【０１３９】
以上説明したように，管理装置M1の管理モジュール11は，ネットワークトポロジ情報と，各スイッチが記憶するパケット転送テーブルとに基づき，通信パケットが実際に転送されるネットワーク経路を計算し，計算結果を転送経路テーブルT3に記憶する。
【０１４０】
そして，遅延通信経路特定モジュール12は，転送経路テーブルT3に基づき，監視経路の通信遅延を発生させる通信の経路を特定する。
【０１４１】
(管理中のサーバの情報)
図10は，図3，図5のストレージ102の管理サーバ情報記憶領域R4に記憶されている管理サーバ情報テーブルT4を示す図である。管理サーバ情報記憶領域R4は，管理サーバ情報テーブルT4を記憶する領域である。管理サーバ情報テーブルT4が管理サーバ情報記憶領域R4に記憶されている状態を図3，図5のストレージ102における":T4"で模式的に示している。
【０１４２】
管理サーバ情報テーブルT4は，管理装置M1の管理対象のサーバに関する情報を記憶するテーブルである。なお，監視対象は，管理対象に含まれる。
【０１４３】
管理サーバ情報テーブルT4は，管理対象欄と，種別欄と，IPアドレス欄と，MACアドレス欄と，動作VMホスト欄と，イメージサイズ欄とを有する。なお，"MAC"は，"Media Access Control address"の略語である。
【０１４４】
管理対象欄は，管理装置M1が管理しているホストサーバや，仮想マシンのIDを記憶する。種別欄は，管理対象が物理マシンか，仮想マシンかを識別するID，すなわち管理対象の種別を記憶する。管理対象が物理マシンの場合，ID"VMHost"が記憶される。管理対象が仮想マシンの場合，ID"VMGuest"が記憶される。
【０１４５】
IPアドレス欄は，管理対象に設定されているIPアドレスを記憶する。MACアドレス欄は，管理対象に設定されているMACアドレスを記憶する。動作VMホスト欄は，管理対象が仮想マシンの場合，この仮想マシンを動作させている物理マシン(ホストサーバ)のIDを記憶する。イメージサイズ欄は，管理対象が仮想マシンの場合，この仮想マシンのイメージサイズ(単位は，GB(ギガバイト))を記憶する。
【０１４６】
管理サーバ情報テーブルT4は，1行に，管理対象のIDと，管理対象の種別と，管理対象に設定されているIPアドレスと，管理対象に設定されているMACアドレスとを対応付けて記憶する。さらに，管理サーバ情報テーブルT4は，管理対象が仮想マシンの場合，前記した1行に，管理対象の仮想マシンを動作させているホストサーバのIDと，管理対象の仮想マシンのイメージサイズとを対応付けて記憶する。
【０１４７】
管理装置M1は，管理サーバ情報テーブルT4を参照すれば，例えば，第1の仮想マシンVM1の種別が，仮想マシンであり(VMGuest)，第1の仮想マシンVM1に設定されているIPアドレスは"192.168.1.13"であり，第1の仮想マシンVM1に設定されているMACアドレスは"60:1B:32:F2:FE:43"であることが解析できる。さらに，管理装置M1は，管理サーバ情報テーブルT4を参照すれば，第1の仮想マシンVM1を動作させているホストサーバが第1のホストサーバSVR1であり，第1の仮想マシンVM1のイメージサイズが30GBであることが解析できる。
【０１４８】
管理モジュール11は，情報処理システムSYSに設けられた構成管理データベース(図示しない)を利用してホストサーバについての管理サーバ情報テーブルT4を作成する。構成管理データベースは，CMDB(Configuration Management Database)とも呼ばれる。構成管理データベースは，ホストサーバの情報(IPアドレス，MACアドレスなど)，ホストサーバが実行する仮想マシンの情報(IPアドレス，MACアドレス，イメージサイズなど)を記憶するデータベースである。
【０１４９】
そして，管理モジュール11は，例えば，ホストサーバに，動作中の仮想マシンのID，IPアドレス，MACアドレス，イメージサイズを定期的に問い合わせる。このホストサーバは，この仮想マシンを管理するソフトウェア(ハイパバイザとも呼ぶ)を実行している。このホストサーバのハイパバイザは，動作中の仮想マシンのID，IPアドレス，MACアドレス，イメージサイズを管理している。
【０１５０】
このホストサーバのハイパバイザは，管理装置M1の管理モジュール11からの問い合わせを受け付けると，自装置に記憶されている，動作中の仮想マシンのID，IPアドレス，MACアドレス，イメージサイズを管理装置M1に送信する。
【０１５１】
なお，情報処理システムSYSの管理者が，管理サーバ情報テーブルT4を作成してもよい。
【０１５２】
(監視間隔)
図11は，図3，図5のストレージ102の監視タイミング情報記憶領域R5に記憶されている監視タイミングテーブルT5を示す図である。監視タイミング情報記憶領域R5は，監視タイミングテーブルT5を記憶する領域である。監視タイミングテーブルT5が監視タイミング情報記憶領域R5に記憶されている状態を図3，図5のストレージ102における":T5"で模式的に示している。
【０１５３】
監視タイミングテーブルT5は，監視対象の仮想マシンを監視する間隔を記憶するテーブルである。
【０１５４】
監視タイミングテーブルT5は，監視対象欄と，監視間隔欄とを有する。監視対象欄は，監視対象の仮想マシンのIDを記憶する。監視間隔欄は，監視対象の仮想マシンを動作させているホストサーバから仮想マシンの状態情報を取得する監視タイミングの間隔を記憶する。
【０１５５】
監視タイミングテーブルT5は，1行に，監視対象のIDと，この監視対象の監視間隔とを対応付けて記憶する。監視タイミングテーブルT5によれば，例えば，第1の仮想マシンVM1の監視間隔は5分，すなわち，管理装置M1は，5分間隔で第1の仮想マシンVM1の監視を実行する。
【０１５６】
例えば，情報処理システムSYSの管理者は，監視タイミングテーブルT5を作成し，図3，図5のストレージ102の監視タイミング情報記憶領域R5に記憶する。
【０１５７】
(監視履歴)
図12は，図3，図5のストレージ102の監視履歴情報記憶領域R6に記憶されている監視履歴テーブルT6を示す図である。監視履歴情報記憶領域R6は，監視履歴テーブルT6を記憶する領域である。監視履歴テーブルT6が監視履歴情報記憶領域R6に記憶されている状態を図3，図5のストレージ102における":T6"で模式的に示している。
【０１５８】
監視履歴テーブルT6は，管理装置M1が仮想マシンの監視を実行した時間(最近の時間)を記憶するテーブルである。
【０１５９】
監視履歴テーブルT6は，監視対象欄と，実行時間欄とを有する。監視対象欄は，監視対象の仮想マシンのIDを記憶する。実行時間欄は，管理装置M1の管理モジュール11が仮想マシンの監視を実行した時間を記憶する。なお，この時間は，年月日日時でもよい。
【０１６０】
監視履歴テーブルT6は，1行に，監視対象(仮想マシン)のIDと，管理装置M1の管理モジュール11がこの仮想マシンの監視を実行した時間とを対応付けて記憶する。
【０１６１】
管理装置M1の管理モジュール11は，監視対象の仮想マシンの監視を実行すると，この仮想マシンのIDと，監視を実行した時間とを対応付けて監視履歴テーブルT6に記憶する。
【０１６２】
(サービスレベル)
図13は，図3，図5のストレージ102のサービスレベル記憶領域R7に記憶されているサービスレベルテーブルT7を示す図である。サービスレベル記憶領域R7は，サービスレベルテーブルT7を記憶する領域である。サービスレベルテーブルT7がサービスレベル記憶領域R7に記憶されている状態を図3，図5のストレージ102における":T7"で模式的に示している。
【０１６３】
サービスレベルテーブルT7は，情報処理システムSYSの事業者が各テナントに対して保証するサービスレベルを記憶する。詳しくは，サービスレベルテーブルT7は，複数の監視対象の各々に対応して定められた，所定期間(例えば，1年間)において正常動作が要求される時間を示すサービスレベルを記憶する。図13の例では，サービスレベルテーブルT7は，所定期間において正常動作が要求される時間のこの所定期間に対する割合で示されるサービスレベルを記憶する。
【０１６４】
サービスレベルテーブルT7は，テナント名欄と，監視対象欄と，サービスレベル欄とを有する。テナント名欄は，テナント名を記憶する。監視対象欄は，テナントに提供する仮想マシンのIDを記憶する。この仮想マシンは，監視対象の仮想マシンである。サービスレベル欄は，情報処理システムSYSの事業者が各テナントに対して保証するサービスレベルを記憶する。
【０１６５】
サービスレベルテーブルT7は，1行に，テナント名と，監視対象(仮想マシン)のIDと，このテナントに対して保証されているサービスレベルとを対応付けて記憶する。
【０１６６】
情報処理システムSYSの管理者は，各テナントに対して保証されるサービスレベルを図3，図5のストレージ102に記憶する。管理装置M1は，テナントに提供するための仮想マシンがホストサーバにより起動されると，このテナントのID(例えば，テナント名)と，起動された仮想マシンのIDと，このテナントのサービスレベルとを対応付けてサービスレベルテーブルT7に記憶する。すなわち，サービスレベルテーブルT7は，テナントに提供する仮想マシンに保証するサービスレベル(換言すれば，仮想マシンに対応して定められたサービスレベル)を記憶するテーブルである。
【０１６７】
(管理中のスイッチの情報)
図14は，図3，図5のストレージ102の管理スイッチ情報記憶領域R8に記憶されているスイッチテーブルT8を示す図である。管理スイッチ情報記憶領域R8は，スイッチテーブルT8を記憶する領域である。スイッチテーブルT8が管理スイッチ情報記憶領域R8に記憶されている状態を図3，図5のストレージ102における":T8"で模式的に示している。
【０１６８】
スイッチテーブルT8は，管理装置M1が管理するスイッチに関する情報を記憶するテーブルである。スイッチテーブルT8は，例えば，監視通信の通信遅延を発生させる通信に関する通信帯域情報を記憶している。
【０１６９】
スイッチテーブルT8は，スイッチ欄と，IPアドレス欄と，MACアドレス欄と，ポート欄と，帯域欄と，ステータス欄とを有する。
【０１７０】
スイッチ欄は，管理装置M1が管理しているスイッチのIDを記憶する。IPアドレス欄は，スイッチに設定されているIPアドレスを記憶する。MACアドレス欄は，スイッチに設定されているMACアドレスを記憶する。ポート欄は，スイッチのポートのIDを記憶する。帯域欄は，このポートの帯域(単位は，Gbps)を記憶する。ステータス欄は，このポートのステータスを記憶する。
【０１７１】
スイッチテーブルT8は，1行に，スイッチのIDと，スイッチに設定されているIPアドレスと，スイッチに設定されているMACアドレスとを対応付けて記憶する。さらに，スイッチテーブルT8は，このスイッチに対応して複数の行の各々に，このスイッチのポートのIDと，このポートの帯域と，このポートのステータスとを対応付けて記憶する。
【０１７２】
管理装置M1は，スイッチテーブルT8を参照すれば，例えば，第1のスイッチSW1に設定されているIPアドレスは"192.168.1.100"であり，第1のスイッチSW1に設定されているMACアドレスは"00:1E:68:85:F8:DD "であることが解析できる。さらに，管理装置M1は，スイッチテーブルT8を参照すれば，第1のスイッチSW1のポート1〜ポート4の帯域が10Gbpsであり，ポート1，2のステータスが"正常，ポート3，4のステータスが"帯域不足"であることが解析できる。
【０１７３】
管理装置M1は，管理対象のスイッチのID，このスイッチに設定されているIPアドレス，MACアドレスとを対応付けてスイッチテーブルT8に記憶する。そして，管理装置M1は，スイッチに，このスイッチのポートの帯域およびステータスを定期的に問い合わせる。管理装置M1は，スイッチから取得した，このスイッチのポートの帯域およびステータスを，このスイッチのIDと対応付けてスイッチテーブルT8に記憶する。
【０１７４】
(マイグレーション実行履歴)
図15は，図3，図5のストレージ102の実行履歴記憶領域R9に記憶されているマイグレーション実行履歴テーブルT9を示す図である。実行履歴記憶領域R9は，マイグレーション実行履歴テーブルT9を記憶する領域である。マイグレーション実行履歴テーブルT9が実行履歴記憶領域R9に記憶されている状態を図3，図5のストレージ102における":T9"で模式的に示している。
【０１７５】
マイグレーション実行履歴テーブルT9は，例えばマイグレーション用の通信に対応する過去の複数の通信の各々について，通信開始から通信終了までの通信時間と，過去の複数の通信の各々において送信されるデータのデータ量が記憶されたテーブルである。換言すれば，マイグレーション実行履歴テーブルT9は，仮想マシンのマイグレーションが開始されてから終了するまでに実際に費やした時間(以下，実終息時間と適宜記す)と，この仮想マシンのイメージとを記憶するテーブルである。
【０１７６】
マイグレーション実行履歴テーブルT9は，仮想マシン欄と，イメージサイズ欄と，実終息時間欄とを有する。仮想マシン欄は，マイグレーションが実行された仮想マシンのIDを記憶する。イメージサイズ欄は，この仮想マシンのイメージサイズを記憶する。実終息時間欄は，この仮想マシンのマイグレーションの実終息時間を記憶する。
【０１７７】
マイグレーション実行履歴テーブルT9は，1行に，仮想マシンのIDと，仮想マシンのイメージサイズと，仮想マシンのマイグレーションの実終息時間とを対応付けて記憶する。
【０１７８】
管理装置M1の管理モジュール11は，例えば，仮想マシンを動作させているホストサーバに仮想マシンのイメージサイズとこの仮想マシンのマイグレーションの実終息時間とを定期的に問い合わせる。このホストサーバのハイパバイザは，仮想マシンのイメージサイズを管理し，仮想マシンのマイグレーションの実行を制御し，マイグレーションの実終息時間を記憶している。
【０１７９】
このホストサーバのハイパバイザは，管理装置M1の管理モジュール11からの問い合わせを受け付けると，自装置に記憶されている，仮想マシンのID，仮想マシンのイメージサイズ，仮想マシンの実終息時間を管理装置M1に送信する。
【０１８０】
なお，ホストサーバのハイパバイザは，仮想マシンのマイグレーションが終了したタイミングで，仮想マシンのID，仮想マシンのイメージサイズ，仮想マシンの実終息時間を管理装置M1に送信してもよい。
【０１８１】
管理装置M1の管理モジュール11は，仮想マシンのIDと，仮想マシンのイメージサイズと，仮想マシンの実終息時間とを受信すると，このIDと，このイメージサイズと，この実終息時間とを対応付けてマイグレーション実行履歴テーブルT9に記憶する。
【０１８２】
(遅延検知用情報テーブル)
次に，スイッチSWが記憶する遅延検知用情報テーブル(TCP/IPポートテーブルとも呼ぶ)について説明する。図16は，図4，図6のストレージ302の遅延検知用情報記憶領域R11に記憶されている遅延検知用情報テーブルT11を示す図である。遅延検知用情報記憶領域R11は，遅延検知用情報テーブルT11を記憶する領域である。遅延検知用情報テーブルT11が遅延検知用情報記憶領域R11に記憶されている状態を図4，図6のストレージ302における":T11"で模式的に示している。
【０１８３】
図16は，監視通信の通信遅延を生じさせる通信，例えば，マイグレーションの通信を検知する際にスイッチにより参照されるテーブルである。
【０１８４】
遅延検知用情報テーブルT11は，ポート名欄と，プロトコル欄と，通信の種別欄とを有する。ポート名欄は，いわゆるポート番号を記憶する。プロトコル欄は，このポート番号を送信元ポート番号または送信先ポート番号として含む通信パケットの通信処理に適用される通信プロトコルを記憶する。この通信プロトコルは，TCPまたはUDP(User Datagram Protocol)である。種別欄は，ポート番号に対応するサービスを記憶する欄である。
【０１８５】
遅延検知用情報テーブルT11は，1行に，ポート名(例えば，902)と，プロトコル(例えば，TCPまたはUDP)と，種別(例えば，マイグレーション)とを対応付けて記憶する。
【０１８６】
情報処理システムSYSの管理者は，各スイッチのストレージ302の遅延検知用情報記憶領域R11に遅延検知用情報テーブルT11を予め記憶する。
【０１８７】
[スイッチの処理]
図16，図17を参照して，スイッチの処理を説明する。図17は，図1のスイッチの処理を説明するフロー図である。なお，以下のフロー図の説明において，Ss(小文字sは1以上の整数)は，ステップSsを意味し，このステップという文字を適宜省略する。
【０１８８】
図17の説明の前に，第nの仮想マシンVMnが第1のホストサーバSVR1から第3のホストサーバSVR3に移動するマイグレーションが開始されているとする。
【０１８９】
S1：スイッチSWの遅延通信検知モジュール32は，管理モジュール31が通信パケットを受信し，通信パケットを他のスイッチに転送したか判定する。管理モジュール31が通信パケットを転送した場合(S1/YES)，S2に移る。管理モジュール31が通信パケットを転送しない場合(S1/NO)，S1に戻る。
【０１９０】
S2：スイッチSWの遅延通信検知モジュール32は，転送する通信パケットを監視し，監視経路の通信遅延を発生させる通信が行われているか判定する。具体的には，遅延通信検知モジュール32は，転送した通信パケットの送信先ポート番号と図16の遅延検知用情報テーブルT11のポート名欄に記憶されているポート番号とが一致するか判定する。図16の例では，遅延通信検知モジュール32は，転送した通信パケットの送信先ポート番号とポート番号"902"とが一致するか判定する。
【０１９１】
遅延通信検知モジュール32は，両ポート番号が一致する場合，監視通信の通信遅延を発生させる通信が行われていると判定する(S2/YES)。監視通信の通信遅延を発生させる通信が行われている場合(S2/YES)，S3に移る。監視通信の通信遅延を発生させる通信が行われていない場合(S2/NO)，S2に戻る。
【０１９２】
S3：スイッチSWの通信モジュール33は，監視通信の通信遅延を発生させる通信の通信先，通信元を特定する情報を含むアラートを管理装置M1に通知する。
【０１９３】
この情報は，監視通信の通信遅延を発生させる通信が実行されたことを示す情報であり，監視通信の通信遅延を発生させる通信の通信パケットに含まれる送信先IPアドレス，送信元IPアドレスである。この情報は，図16の例では，送信先ポート番号"902"を含む通信パケットに含まれる送信先IPアドレス，送信元IPアドレスである。
【０１９４】
なお，スイッチSWは，他のスイッチにこのアラートをブロードキャスト送信してもよい。他のスイッチは，このアラートを受信すると，このアラートに含まれる送信先ポート番号，送信先IPアドレス，送信元IPアドレスを含む通信パケットを受信しても，管理装置M1にアラートを通知しない。そのため，複数のスイッチから同じ内容のアラートが管理装置M1に通知されるのを防止できる。
【０１９５】
[監視経路の変更]
図18〜図22を参照して，管理装置M1が実行する監視経路の変更処理を説明する。図18〜図20は，図1の管理装置M1が実行する監視経路の変更処理を説明する第1〜第3のフロー図である。
【０１９６】
図21は，第1のスイッチSW1における変更されたパケット転送経路テーブルを示す図である。図22は，変更された図9の転送経路テーブルT3を示す図である。
【０１９７】
なお，管理装置M1の管理モジュール11は，所定の監視タイミングで，図10の管理サーバ情報テーブルT4に含まれる監視対象の仮想マシンにアクセスして，監視対象の仮想マシンの状態を取得する。そして，管理モジュール11は，監視履歴テーブルT6の監視対象欄に監視対象の仮想マシンのIDを記憶し，実行時間欄に監視時間(例えば，状態を取得した時間)を記憶する。
【０１９８】
また，管理モジュール11は，スイッチから送信されたアラートを受信すると，受信したアラートを遅延通信経路特定モジュール12，監視経路特定モジュール13に出力する。
【０１９９】
(図18のステップS11)
S11：遅延通信経路特定モジュール12は，アラートを受信すると，監視通信の通信遅滞を発生させる通信の経路の候補を特定する。例えば，監視通信の通信遅滞を発生させる通信は，図1で説明したマイグレーション用の通信である。このマイグレーション用の通信は，第1のホストサーバSVR1と第3のホストサーバSVR3との間の通信である。このマイグレーションにおいて，通信遅滞を発生させる通信の経路の候補は，第1のホストサーバSVR1と第3のホストサーバSVR3との間における全てのネットワーク経路である。
【０２００】
具体的には，遅延通信経路特定モジュール12は，図7のマイグレーション経路テーブルT1の全行の中から，以下の行を特定する。この特定される行は，マイグレーション元IPアドレス欄に，アラートに含まれる送信元IPアドレスが記憶され，さらに，マイグレーション先IPアドレス欄に，アラートに含まれる送信先IPアドレスが記憶されている行である。
【０２０１】
アラートに含まれる送信元IPアドレスが"192.168.1.10"，このアラートに含まれる送信先IPアドレスが"192.168.1.12"の場合，遅延通信経路特定モジュール12は，行LN1を特定する。
【０２０２】
遅延通信経路特定モジュール12は，マイグレーション経路テーブルT1において，特定した行とマイグレーション経路欄の列とが交わるセルに記憶されたマイグレーション経路を抽出する。前記の例では，遅延通信経路特定モジュール12は，マイグレーション経路である，(経路2)，(経路3)…(以下，省略)を抽出する。
【０２０３】
(図18のステップS12)
S12：遅延通信経路特定モジュール12は，監視通信の通信遅延を発生させる通信の経路を特定する。具体的には，遅延通信経路特定モジュール12は，実際に実行されているマイグレーションの経路を特定する。遅延通信経路特定モジュール12は，アラートに含まれる送信先IPアドレスと，S11で抽出したマイグレーション経路と，図9の転送経路テーブルT3とに基づき，実際に実行されているマイグレーション経路を特定する。
【０２０４】
前記の例では，アラートに含まれる送信先IPアドレスは"192.168.1.12"である。遅延通信経路特定モジュール12は，図9の転送経路テーブルT3における送信先IPアドレス欄において，送信先IPアドレス"192.168.1.12"を含む全行(LN21〜LN22)を特定する。遅延通信経路特定モジュール12は，特定した行に含まれるスイッチのID(SW5，SW2，SW8)を特定する。
【０２０５】
遅延通信経路特定モジュール12は，S11で抽出したマイグレーション経路，(経路2)，(経路3)…(以下，省略)の中から，特定したIDにより識別されるスイッチを全て経由する経路を特定する。換言すれば，遅延通信経路特定モジュール12は，S11で抽出したマイグレーション経路の中から，特定した全IDを含むマイグレーション経路を特定する。
【０２０６】
前記の例では，"［SVR1-PRT1］=>[SW5-PRT1]=>[SW5-PRT2]=>［SW2-PRT1］=>［SW2-PRT2］=>［SW8-PRT1］=>［SW8-PRT2］=>［SVR3-PRT1］"(経路2)は，特定したスイッチの全ID(SW5，SW2，SW8)を含む。従って，遅延通信経路特定モジュール12は，(経路2)を特定する。
【０２０７】
そして，遅延通信経路特定モジュール12は，特定した経路(経路2)におけるポート間の接続関係が，特定した行(LN21〜LN22)における受信ポートと送信ポートとの関係を全て満たすか判定する。
【０２０８】
行LN21によれば，"192.168.1.12"を含む通信パケット(通信パケットMGRT)は受信ポート1を介して第5のスイッチSW5において受信され，送信ポート2に送出される。この受信ポートと送信ポートとの関係は，(経路2)の"[SW5-PRT1]=>[SW5-PRT2]=>"を満たす。
【０２０９】
行LN22によれば，通信パケットMGRTは受信ポート1を介して第2のスイッチSW2において受信され，送信ポート2に送出される。この受信ポートと送信ポートとの関係は，(経路2)の"[SW2-PRT1]=>[SW2-PRT2]=>"を満たす。
【０２１０】
行LN23によれば，通信パケットMGRTは受信ポート1を介して第8のスイッチSW8において受信され，送信ポート2に送出される。この受信ポートと送信ポートとの関係は，(経路2)の"[SW8-PRT1]=>[SW8-PRT2]=>"を満たす。
【０２１１】
以上より，遅延通信経路特定モジュール12は，特定した経路(経路2)におけるポート間の接続関係が，特定した行(LN21〜LN22)における受信ポートと送信ポートとの関係を全て満たすと判定する。そして，遅延通信経路特定モジュール12は，この特定した経路(経路2)を実際に実行されているマイグレーション経路として特定する。
【０２１２】
(図18のステップS13)
S13：監視経路特定モジュール13は，アラートを受信すると，通信遅滞を発生させる通信の通信元サーバ(元ホストサーバSRC)の監視経路の候補を特定する。前記の例では，元ホストサーバSRCは，第1のホストサーバSVR1である。そして，この監視経路の候補は，管理装置M1と第1のホストサーバSVR1との間における全てのネットワーク経路である。
【０２１３】
具体的には，監視経路特定モジュール13は，図8の監視経路テーブルT2の全行の中から，以下の行を特定する。この特定される行は，監視対象IPアドレス欄に，アラートに含まれる送信元IPアドレスが記憶されている行である。
【０２１４】
アラートに含まれる送信元IPアドレスが"192.168.1.10"の場合，監視経路特定モジュール13は，行LN41を特定する。
【０２１５】
監視経路特定モジュール13は，監視経路テーブルT2において，特定した行と監視経路欄の列とが交わるセルに記憶された監視経路を抽出する。前記の例では，遅延通信経路特定モジュール12は，監視経路である，(経路4)〜(経路6)…(以下，省略)を抽出する。
【０２１６】
(図18のステップS14)
S14：監視経路特定モジュール13は，監視通信の通信遅延を発生させる通信の通信元ホストサーバ(元ホストサーバSRC)に対して実際に実行されている監視の経路を特定する。監視経路特定モジュール13は，アラートに含まれる送信元IPアドレスと，S13で抽出した監視経路と，図9の転送経路テーブルT3とに基づき，この実際に実行されている監視経路を特定する。
【０２１７】
前記の例では，アラートに含まれる送信元IPアドレスは"192.168.1.10"である。監視経路特定モジュール13は，図9の転送経路テーブルT3における送信先IPアドレス欄において，送信元IPアドレス"192.168.1.10"を含む全行(LN24〜LN26)を特定する。監視経路特定モジュール13は，特定した行に含まれるスイッチのID(SW1，SW2，SW5)を特定する。
【０２１８】
監視経路特定モジュール13は，S13で抽出した監視経路，(経路4)〜(経路6)…(以下，省略)の中から，特定したIDにより識別されるスイッチを全て経由する経路を特定する。換言すれば，監視経路特定モジュール13は，S13で抽出した監視経路の中から，特定した全IDを含む監視経路を特定する。
【０２１９】
前記の例では，"［M1］=>［SW1-PRT1］=>［SW1-PRT2］=>［SW2-PRT3］=>［SW2-PRT1］=>[SW5-PRT2]=> [SW5-PRT1]=>［SVR1-PRT1］"（経路4）は，特定したスイッチの全ID(SW1，SW2，SW5)を含む。従って，監視経路特定モジュール13は，(経路4)を特定する。
【０２２０】
そして，監視経路特定モジュール13は，特定した経路(経路4)におけるポート間の接続関係が，特定した行(LN24〜LN26)における受信ポートと送信ポートとの関係を全て満たすか判定する。
【０２２１】
行LN24によれば，"192.168.1.10"を含む通信パケット(以下，通信パケットWT1と記す)は受信ポート1を介して第1のスイッチSW1において受信され，送信ポート2に送出される。この受信ポートと送信ポートとの関係は，(経路4)の"[SW1-PRT1]=>[SW1-PRT2]=>"を満たす。
【０２２２】
行LN25によれば，通信パケットWT1は受信ポート3を介して第2のスイッチSW2において受信され，送信ポート1に送出される。この受信ポートと送信ポートとの関係は，(経路4)の"[SW2-PRT3]=>[SW2-PRT1]=>"を満たす。
【０２２３】
行LN26によれば，通信パケットWT1は受信ポート2を介して第5のスイッチSW5において受信され，送信ポート1に送出される。この受信ポートと送信ポートとの関係は，(経路4)の"[SW5-PRT2]=> [SW5-PRT1]"を満たす。
【０２２４】
以上より，監視経路特定モジュール13は，特定した経路(経路4)におけるポート間の接続関係が，特定した行(LN24〜LN26)における受信ポートと送信ポートとの関係を全て満たすと判定する。そして，監視経路特定モジュール13は，この特定した経路(経路4)を，元ホストサーバSRCに対して実際に実行されている監視経路として特定する。
【０２２５】
(図18のステップS15)
S15：監視経路変更判定モジュール17は，S12で特定した監視通信の通信遅延を発生させる通信の経路と，S14で特定した監視経路とを比較して，経路の一部が一致しているか判定する。一部が一致している場合(S15/YES)，S16に移る。一部が一致していない場合(S15/NO)，S17に移る。
【０２２６】
前記の例では，S12で特定したマイグレーション経路(経路2)と，S14で特定した監視経路(経路4)とは，経路の一部である，第2のスイッチSW2のポート1と第5のスイッチSW5のポート2との間の経路(図1のN6参照)と，第5のスイッチSW5のポート1と第1のホストサーバSVR1のポート1との間の経路(図1のN5参照)とが一致している。
【０２２７】
(図18のステップS16)
S16：変更用監視経路特定モジュール19は，S12で特定した監視通信の通信遅延を発生させる通信の経路と，この通信遅滞を発生させる通信の通信元サーバの監視経路とにおいて，経路の一部が一致しない，通信元サーバの監視経路を特定する。
【０２２８】
そして，転送経路更新モジュール20は，スイッチにパケット転送経路の変更を依頼する。通信元サーバは，元ホストサーバSRCである。
【０２２９】
前記の例では，変更用監視経路特定モジュール19は，S13で抽出した監視経路，(経路4)〜(経路6)…(以下，省略)の中から，S12で特定したマイグレーション経路と経路の一部が一致しない経路を特定する。
【０２３０】
この一致しない経路は，例えば，(経路5)である。(経路5)は，"［M1］=>［SW1-PRT1］=>［SW1-PRT3］=>［SW3-PRT1］=>［SW3-PRT2］=>[SW6-PRT3]=> [SW6-PRT1]=>［SVR1-PRT2］"である。
【０２３１】
転送経路更新モジュール20は，S16で特定された監視経路を構成するスイッチに，パケット転送経路の変更を依頼する。
【０２３２】
前記の例では，転送経路更新モジュール20は，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1のホストサーバSVR1の通信パケットを第1のホストサーバSVR1に送信するように第1のスイッチSW1に依頼する。送信先が管理装置M1の通信パケットは，管理装置M1に設定されたIPアドレス"192.168.1.5"を送信先IPアドレスとして含む通信パケットである。また，送信先が第1のホストサーバSVR1の通信パケットは，第1のホストサーバSVR1に設定されたIPアドレス"192.168.1.10"を送信先IPアドレスとして含む通信パケットである。
【０２３３】
第1のスイッチSW1の管理モジュール31は，この依頼を受け付けると，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1のホストサーバSVR1の通信パケットを第1のホストサーバSVR1に送信するように，自装置に記憶されているパケット転送テーブル(図2参照)を更新する。
【０２３４】
例えば，第1のスイッチSW1の管理モジュール31は，図2のパケット転送テーブルTを図21のパケット転送テーブルTaに変更する。この変更は，図2のパケット転送テーブルTにおいて，送信ポート欄におけるポート番号2の行と，送信先IPアドレス欄の列とが交わるセルからIPアドレス"192.168.1.10"を削除する変更である。
【０２３５】
さらに，この変更は，図2のパケット転送テーブルTにおいて，送信ポート欄におけるポート番号3の行と，送信先IPアドレス欄の列とが交わるセルに，IPアドレス"192.168.1.10"を追加した変更である。なお，図2，図21における，IPアドレス"192.168.1.13"については後記する。
【０２３６】
第1のスイッチSW1の管理モジュール31は，この変更後のパケット転送テーブルTaを参照して，通信パケットの転送を行う。
【０２３７】
前記の例では，転送経路更新モジュール20は，さらに，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1のホストサーバSVR1の通信パケットを第1のホストサーバSVR1に送信するように第3のスイッチSW3，第6のスイッチSW6に依頼する。
【０２３８】
第3のスイッチSW3は，送信先が管理装置M1の通信パケットを第1のスイッチSW1に送信し，送信先が第1のホストサーバSVR1の通信パケットを第6のスイッチSW6に送信するように，自装置のパケット転送テーブルを更新する。
【０２３９】
さらに，第6のスイッチSW6は，送信先が管理装置M1の通信パケットを第3のスイッチSW3に送信し，送信先が第1のホストサーバSVR1の通信パケットを第1のホストサーバSVR1に送信するように，自装置のパケット転送テーブルを更新する。なお，第3のスイッチSW3，第6のスイッチSW6における更新の詳細については，第1のスイッチSW1を例示して図21を用いて説明したので，その説明を省略する。
【０２４０】
そして，転送経路更新モジュール20は，送信先が管理装置M1の通信パケットを，ポート番号2のポート(ポート2)を介して，第6のスイッチSW6に送信するように第1のホストサーバSVR1に依頼する。
【０２４１】
第1のホストサーバSVR1は，この依頼を受け付けると，送信先が管理装置M1の通信パケットを，ポート番号2のポート2を介して，第6のスイッチSW6に送信する。
【０２４２】
さらに，管理装置M1の管理モジュール11は，変更後の監視経路(実際の監視経路)を，図9の転送経路テーブルT3に反映し，図21の転送経路テーブルT3aとする。
【０２４３】
前記の例では，変更後の経路は(経路5)である。管理モジュール11は，転送経路テーブルT3aの行LN24において，第1のスイッチSW1の送信ポートを"2"(図9の行LN24参照)から"3"に変更する。そして，管理モジュール11は，転送経路テーブルT3aの行LN25において，SW2(図9の行LN25参照)を第3のスイッチSW3に変更する。管理モジュール11は，転送経路テーブルT3aの行LN25において，第3のスイッチSW3の受信ポートを"3"(図9の行LN25参照)から"1"に変更し，第3のスイッチSW3の送信ポートを"1"から"2"に変更する。
【０２４４】
そして，管理モジュール11は，転送経路テーブルT3aの行LN26において，第5のスイッチSW5(図9の行LN26参照)を第6のスイッチSW6に変更する。管理モジュール11は，転送経路テーブルT3aの行LN26において，第6のスイッチSW6の受信ポートを"2"(図9の行LN26参照)から"3"に変更する。
【０２４５】
管理モジュール11は，行LN27，LN28，LN29についても，行L26，L25，L24で説明したように，スイッチ欄におけるスイッチのIDや，受信ポート欄におけるポート番号，送信ポート欄におけるポート番号を適宜変更する。
【０２４６】
S16の処理により，マイグレーション経路と監視経路との間において一致する経路がなくなるので，マイグレーション通信による監視通信の通信遅延が解消される。その結果，管理装置M1は，第1のホストサーバSVR1との通信における遅延の発生を抑制できる。
【０２４７】
(図18のステップS17)
S17：遅延通信仮想マシン特定モジュール14は，監視経路の通信遅延を発生させる通信に関連する仮想マシンのIPアドレスを取得する。管理装置M1は，次の監視タイミングにおいて，監視経路の通信遅延を発生させる通信が継続しているか判定するために，監視経路の通信遅延を発生させる通信に関連する仮想マシンのIPアドレスを取得する。
【０２４８】
監視経路の通信遅延を発生させる通信に関連する仮想マシンは，マイグレーション中の仮想マシンである。遅延通信仮想マシン特定モジュール14は，例えば，元ホストサーバSRC(例えば第1のホストサーバSVR1)からマイグレーション中の仮想マシンのIPアドレスを取得する。
【０２４９】
第1のホストサーバSVR1のハイパバイザは，例えば，仮想マシンが正常，異常，マイグレーション中であるかを常時監視し，さらに，この仮想マシンに設定されているIPアドレスなど各種情報を管理する。
【０２５０】
遅延通信仮想マシン特定モジュール14は，第1のホストサーバSVR1のハイパバイザに，マイグレーション中の仮想マシンのIPアドレスを通知するように指示する。ハイパバイザは，この指示に応答して，マイグレーション中の仮想マシンのIPアドレスを遅延通信仮想マシン特定モジュール14に通知する。
【０２５１】
(図19のステップS21)
S21：監視経路特定モジュール13は，監視対象の仮想マシンに対して実際に実行されている監視の経路を特定する。監視対象の仮想マシンに対して実際に実行されている監視の経路を仮想マシンの実監視経路と適宜記す。
【０２５２】
監視経路特定モジュール13は，図10の管理サーバ情報テーブルT4における種別欄の"VMGuest"が記憶されている行と，IPアドレス欄の列とが交わるセルに記憶されているIPアドレスを取得する。そして，監視経路特定モジュール13は，S13，S14で説明したように，仮想マシンの実監視経路を計算する。
【０２５３】
例えば，監視経路特定モジュール13は，IPアドレス"192.168.1.13"を取得する。IPアドレス"192.168.1.13"は，第1の仮想マシンVM1に設定されているIPアドレスである。
【０２５４】
監視経路特定モジュール13は，取得したIPアドレスが設定されている仮想マシンの監視経路の候補を特定する。取得したIPアドレスが設定されている仮想マシンを候補仮想マシンと適宜記す。この監視経路の候補は，管理装置M1と候補仮想マシンとの間における全てのネットワーク経路である。
【０２５５】
具体的には，監視経路特定モジュール13は，図8の監視経路テーブルT2の全行の中から，以下の行を特定する。この特定される行は，監視対象IPアドレス欄に，候補仮想マシンに設定されているIPアドレスが記憶されている行である。
【０２５６】
候補仮想マシン(例えば，第1の仮想マシンVM1)に設定されているIPアドレスが"192.168.1.13"の場合， 監視経路特定モジュール13は，行LN42を特定する。
【０２５７】
監視経路特定モジュール13は，監視経路テーブルT2において，特定した行と監視経路欄の列とが交わるセルに記憶された監視経路を抽出する。前記の例では，遅延通信経路特定モジュール12は，監視経路である，(経路7)〜(経路9)…(以下，省略)を抽出する。
【０２５８】
次いで，監視経路特定モジュール13は，候補仮想マシンに設定されているIPアドレスと，抽出した監視経路と，図9の転送経路テーブルT3とに基づき，候補仮想マシンの実監視経路を特定する。
【０２５９】
前記の例では，候補仮想マシンである第1の仮想マシンVM1に設定されているIPアドレスは，"192.168.1.13"である。監視経路特定モジュール13は，図9の転送経路テーブルT3における送信先IPアドレス欄において，IPアドレス"192.168.1.13"を含む全行(LN30〜LN32)を特定する。監視経路特定モジュール13は，特定した行に含まれるスイッチのID(SW1，SW2，SW5)を特定する。
【０２６０】
監視経路特定モジュール13は，抽出した監視経路，(経路7)〜(経路9)…(以下，省略)の中から，特定したIDにより識別されるスイッチを全て経由する経路を特定する。換言すれば，監視経路特定モジュール13は，抽出した監視経路の中から，特定した全IDを含む監視経路を特定する。
【０２６１】
前記の例では，"［M1］=>［SW1-PRT1］=>［SW1-PRT2］=>［SW2-PRT3］=>［SW2-PRT1］=>[SW5-PRT2]=> [SW5-PRT1]=>［VM1-PRT1］"（経路7）は，特定したスイッチの全ID(SW1，SW2，SW5)を含む。従って，監視経路特定モジュール13は，(経路7)を特定する。
【０２６２】
そして，監視経路特定モジュール13は，特定した経路(経路7)におけるポート間の接続関係が，特定した行(LN30〜LN32)における受信ポートと送信ポートとの関係を全て満たすか判定する。
【０２６３】
行LN30によれば，"192.168.1.13"を含む通信パケット(以下，通信パケットWT2と記す)は受信ポート1を介して第1のスイッチSW1において受信され，送信ポート2に送出される。この受信ポートと送信ポートとの関係は，(経路7)の"[SW1-PRT1]=>[SW1-PRT2]=>"を満たす。
【０２６４】
行LN31によれば，通信パケットWT2は受信ポート3を介して第2のスイッチSW2において受信され，送信ポート1に送出される。この受信ポートと送信ポートとの関係は，(経路7)の"[SW2-PRT3]=>[SW2-PRT1]=>"を満たす。
【０２６５】
行LN32によれば，通信パケットWT2は受信ポート2を介して第5のスイッチSW5において受信され，送信ポート1に送出される。この受信ポートと送信ポートとの関係は，(経路7)の"[SW5-PRT2]=> [SW5-PRT1]"を満たす。
【０２６６】
以上より，監視経路特定モジュール13は，特定した経路(経路7)におけるポート間の接続関係が，特定した行(LN30〜LN32)における受信ポートと送信ポートとの関係を全て満たすと判定する。そして，監視経路特定モジュール13は，この特定した経路(経路7)を候補仮想マシンの実監視経路として特定する。
【０２６７】
(図19のステップS22)
S22：仮想マシン特定モジュール15は，図18のS12で特定した監視通信の通信遅延を発生させる通信の経路(例えば，マイグレーション経路)と，S21で特定した仮想マシンの実監視経路とを比較して，経路の一部が一致しているか判定する。
【０２６８】
前記の例では，S12で特定したマイグレーション経路(経路2)と，S21で特定した実監視経路(経路7)とは，経路の一部である，第2のスイッチSW2のポート1と第5のスイッチSW5のポート2との間の経路(図1のN6参照)と，第5のスイッチSW5のポート1と第1のホストサーバSVR1のポート1との間の経路(図1のN5参照)とが一致している。
【０２６９】
(図19のステップS23)
S23：仮想マシン特定モジュール15は，監視対象の全仮想マシン(候補仮想マシン)について，S22の処理が終了したか判定する。すなわち，仮想マシン特定モジュール15は，候補仮想マシンが複数の場合，S22，S23の処理により，S12で特定した通信遅延を発生させる通信の経路と，複数の候補仮想マシンの各々の実監視経路とをそれぞれ比較する。そして，仮想マシン特定モジュール15は，両経路の一部または全部が一致している監視経路により監視されている候補仮想マシンを特定する。以下，特定された候補仮想マシンを特定仮想マシンと適宜記す。
【０２７０】
監視対象の全仮想マシンについてS22の処理が終了した場合(S23/YES)，S24に移る。監視対象の全仮想マシンについてS22の処理が終了しない場合(S23/NO)，S22に戻る。
【０２７１】
(図19のステップS24)
S24：終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信(例えば，マイグレーション通信)の予測終息時間を特定する。S24の詳細な説明については，図20で説明する。
【０２７２】
(図19のステップS25)
S25：監視経路変更判定モジュール17は，通信遅延を発生させる通信の予測終息時間と，特定仮想マシンの次回の監視タイミングの時間(以下，特定仮想マシンの次回監視時間と適宜記す)とを比較する。
【０２７３】
具体的には，監視経路変更判定モジュール17は，図11の監視タイミングテーブルT5と，図12の監視履歴テーブルT6とに基づき，特定仮想マシンの次回監視時間を計算する。例えば，特定仮想マシンを第1の仮想マシンVM1，第2の仮想マシンVM2，第3の仮想マシンVM3とする。第1の仮想マシンVM1，第2の仮想マシンVM2，第3の仮想マシンVM3の監視間隔は，図11の監視タイミングテーブルT5によれば,それぞれ5分，10分，5分である。
【０２７４】
図12の監視履歴テーブルT6によれば，管理装置M1が第1の仮想マシンVM1，第2の仮想マシンVM2，第3の仮想マシンVM3の監視を実行した時間(最近の時間)は，それぞれ"14:31:22"，"14:41:22"，"14:33:20"である。従って，管理装置M1は，第1の仮想マシンVM1，第2の仮想マシンVM2，第3の仮想マシンVM3の次回監視時間を，それぞれ"14:36:22"("14:31:22"+"0:5:0")，"14:51:22"("14:41:22"+"0:10:0")，"14:38:20"("14:33:20"+"0:5:0")として計算する。
【０２７５】
(図19のステップS26)
S26：監視経路変更判定モジュール17は，特定仮想マシンの次回監視時間で，通信遅延を発生させる通信が既に終了しているか判定する。換言すれば，監視経路変更判定モジュール17は，通信遅延を発生させる通信が終了後に，特定仮想マシンの監視通信が実行されるか判定する。
【０２７６】
特定仮想マシンの次回監視時間で，通信遅延を発生させる通信が既に終了している第1の場合(S26/YES)，S27に移る。
【０２７７】
具体的には，監視経路変更判定モジュール17は，通信遅延を発生させる通信の予測終息時間よりも特定仮想マシンの次回監視時間が時間的に後か判定する。通信遅延を発生させる通信の予測終息時間よりも特定仮想マシンの次回監視時間が時間的に後の場合は，第1の場合である。
【０２７８】
(図19のステップS27)
S27：監視経路変更判定モジュール17は，特定仮想マシンの監視経路を変更しないと決定(以下，第1の決定と適宜記す)する。第1の場合(S26/YES)は，特定仮想マシンの次回監視時間において，監視通信の通信遅延を発生させる通信(例えば，マイグレーション)が終了しているので，特定仮想マシンの監視通信に遅延が発生しない。そこで，監視経路変更判定モジュール17は，第1の決定をする。
【０２７９】
一方，監視経路変更判定モジュール17は，特定仮想マシンの次回監視時間で，通信遅延を発生させる通信が既に終了していない第2の場合(S26/NO)，S28に移る。通信遅延を発生させる通信の予測終息時間よりも特定仮想マシンの次回監視時間が時間的に前の場合は，第2の場合である。
【０２８０】
(図19のステップS28)
S28：監視経路変更判定モジュール17は，特定仮想マシンの監視経路を変更すると決定(以下，第2の決定と適宜記す)する。第2の場合(S26/NO)は，特定仮想マシンの次回監視時間において，監視通信の通信遅延を発生させる通信(例えば，マイグレーション)が継続しているので，特定仮想マシンの監視通信に遅延が発生する可能性がある。そこで，監視経路変更判定モジュール17は，第2の決定をする。
【０２８１】
前記の例では，第1の仮想マシンVM1〜第3の仮想マシンVM3の次回監視時間は，それぞれ"14:36:22"，"14:51:22"，"14:38:20"である。ここで，S24で特定された通信遅延を発生させる通信の予測終息時間を"14:40:00"とする。
【０２８２】
この例では，監視通信の通信遅延を発生させる通信の予測終息時間"14:40:00"よりも第1の仮想マシンVM1の次回監視時間"14:36:22"の時点は，時間的に前である(S26/NO)。従って，監視経路変更判定モジュール17は，第1の仮想マシンVM1の監視経路を変更すると決定する(S28)。
【０２８３】
監視通信の通信遅延を発生させる通信の予測終息時間"14:40:00"よりも第2の仮想マシンVM2の次回監視時間"14:51:22"の時点は時間的に後である(S26/YES)。従って，監視経路変更判定モジュール17は，第2の仮想マシンVM2の監視経路を変更しないと決定する(S27)。
【０２８４】
監視通信の通信遅延を発生させる通信の予測終息時間"14:40:00"よりも第3の仮想マシンVM3の次回監視時間"14:38:20"の時点は時間的に前である(S26/NO)。従って，監視経路変更判定モジュール17は，第3の仮想マシンVM3の監視経路を変更すると決定する(S28)。
【０２８５】
(図19のステップS29)
S29：監視経路変更判定モジュール17は，全特定仮想マシンについて比較が終了したか判定する。全特定仮想マシンについて比較が終了した場合(S29/YES)，S30に移る。全特定仮想マシンについて比較が終了しない場合(S29/NO)，S25に戻る。
【０２８６】
具体的には，監視経路変更判定モジュール17は，全特定仮想マシンについてS25〜S28の処理が終了したか判定する。
【０２８７】
すなわち，監視経路変更判定モジュール17は，S26の処理により，特定仮想マシンが複数の場合，監視通信の通信遅延を発生させる通信の予測終息時間と，複数の特定仮想マシンの各々の次回監視時間とを比較する(S25)。そして，監視経路変更判定モジュール17は，複数の特定仮想マシンの各々の次回監視時間で，通信遅延を発生させる通信が既に終了しているか判定し(S26)，複数の特定仮想マシンの各々について，監視経路を変更するかを決定する(S27，S28)。
【０２８８】
以下の説明で，監視経路を変更すると決定された特定仮想マシンを，変更対象仮想マシンと適宜記す。前記の例では，変更対象仮想マシンは，第1の仮想マシンVM1，第3の仮想マシンVM3である。
【０２８９】
(図19のステップS30)
S30：変更順序特定モジュール18は，複数の変更対象仮想マシンがある場合，複数の変更対象仮想マシンの各々のサービスレベルに基づき，監視経路の変更順番を決定する。
【０２９０】
詳しくは，変更順序特定モジュール18は，複数の監視対象の各々に対応して定められたサービスレベルが高い順に従って，複数の監視対象の各々の監視通信の経路の変更順番を決定する。
【０２９１】
具体的には，変更順序特定モジュール18は，図13のサービスレベルテーブルT7に基づき，複数の変更対象仮想マシンの各々のサービスレベルを特定する。そして，変更順序特定モジュール18は，サービスレベルが高くなるほど，変更対象仮想マシンの実監視経路の変更順番が高くなるように変更順番を決定する。
【０２９２】
前記の例では，図13のサービスレベルテーブルT7によれば，第1の仮想マシンVM1，第3の仮想マシンVM3のサービスレベルは，それぞれ，99.999%，99.9999%である。すなわち，第3の仮想マシンVM3のサービスレベル(99.9999%)は，第1の仮想マシンVM1のサービスレベル(99.999%)よりも高い。従って，変更順序特定モジュール18は，第3の仮想マシンVM3の実監視経路を1番目に変更し，第1の仮想マシンVM1の実監視経路を2番目に変更すると決定する。
【０２９３】
(図19のステップS31)
S31：変更用監視経路特定モジュール19は，S12で特定した監視通信の通信遅延を発生させる通信の経路と，変更対象仮想マシンの実監視経路とにおいて，経路の一部が一致しない，変更対象仮想マシンの実監視経路を特定する。
【０２９４】
ただし，変更用監視経路特定モジュール19は，経路の一部が一致しない変更対象仮想マシンの実監視経路が複数ある場合，その複数の監視経路の中から，最速の監視経路を特定する。そして，変更用監視経路特定モジュール19は，スイッチにパケット転送経路の変更を依頼する。
【０２９５】
具体的には，変更用監視経路特定モジュール19は，図8の監視経路テーブルT2の全行の中から，以下の行を特定する。この特定される行は，監視対象IPアドレス欄に，変更対象仮想マシンに設定されているIPアドレスが記憶されている行である。
【０２９６】
変更対象仮想マシン(例えば，第1の仮想マシンVM1)に設定されているIPアドレスが"192.168.1.13"の場合，変更用監視経路特定モジュール19は，行LN42を特定する。
【０２９７】
変更用監視経路特定モジュール19は，監視経路テーブルT2において，特定した行と監視経路欄の列とが交わるセルに記憶された監視経路を抽出する。前記の例では，変更用監視経路特定モジュール19は，監視経路である，(経路7)〜(経路9)…(以下，省略)を抽出する。そして，変更用監視経路特定モジュール19は，図18のS12で特定したマイグレーション経路(経路2)と，抽出した監視経路とを比較して，両経路の一部が一致しない監視経路を特定する。
【０２９８】
(経路8)，(経路9)は，マイグレーション経路(経路2)の一部と一致しない。従って，変更用監視経路特定モジュール19は，(経路8)，(経路9)を，変更用の監視経路として特定する。
【０２９９】
次いで，変更用監視経路特定モジュール19は，図14に基づき，特定した変更用の監視経路の中から，最速の監視経路を1つ特定する。なお，図14において，第5のスイッチSW5，第6のスイッチSW6における全ポートの帯域は"10Gbps"，この全ポートのステータスは"正常"である。
【０３００】
変更用監視経路特定モジュール19は，この最速の監視経路を，変更用の監視経路を構成するスイッチ(以下，構成スイッチと記す)を基準に特定する。構成スイッチは，その数が少なく(ポップ数が少ない)，この構成スイッチのポートの帯域が大きい方が，監視経路のパケット転送時間が速くなる。さらに，変更用の監視経路における構成スイッチ間を接続するポートのポートステータスが"帯域不足"よりも"正常"の方が，監視経路のパケット転送時間が速くなる。
【０３０１】
(経路8)は，"［M1］=>［SW1-PRT1］=>［SW1-PRT3］=>［SW3-PRT1］=>［SW3-PRT2］=>[SW6-PRT3]=> [SW6-PRT1]=>［VM1-PRT2］"である。
【０３０２】
(経路8)における構成スイッチ(SW1，SW3，SW6)の数は3である。図14によれば，この構成スイッチ(SW1，SW3，SW6)のポートの帯域は，10Gbpsである。そして，図14によれば，第1のスイッチSW1のポート1，第1のスイッチSW1のポート3，第3のスイッチSW3のポート1，第3のスイッチSW3のポート2，第6のスイッチSW6のポート3，第6のスイッチSW6のポート1のポートステータスは，正常である。
【０３０３】
(経路9)は，"［M1］=>［SW1-PRT1］=>［SW1-PRT4］=>［SW4-PRT4］=>［SW4-PRT3］=>[SW6-PRT4]=> [SW6-PRT1]=>［VM1-PRT2］"である。
【０３０４】
(経路9)における構成スイッチ(SW1，SW4，SW6)の数は3である。図14によれば，この構成スイッチ(SW1，SW4，SW6)のポートの帯域は，10Gbpsである。しかし，図14によれば，第1のスイッチSW1のポート4，第4のスイッチSW4のポート3，第4のスイッチSW4のポート4は，"帯域不足"である。
【０３０５】
以上より，(経路8)と(経路9)とでは，構成スイッチの数と，構成スイッチのポートの帯域は同じだが，(経路9)における構成スイッチでは，"帯域不足"のポートがある。
【０３０６】
従って，(経路8)におけるパケットの転送時間の方が，(経路9)におけるパケットの転送時間よりも速い。すなわち，監視経路(経路8)が最速の監視経路である。
【０３０７】
変更用監視経路特定モジュール19は，第1の仮想マシンVM1について最速の監視経路(経路8)を特定する。そして，変更用監視経路特定モジュール19は，第3の仮想マシンVM3についても，第1の仮想マシンVM1と同様にして最速の監視経路(経路8)を特定する。
【０３０８】
以上説明したように，変更用監視経路特定モジュール19は，S12で特定したマイグレーション経路と，各変更対象仮想マシンの実監視経路とにおいて，経路の一部が一致しない，各変更対象仮想マシンの実監視経路を特定する。
【０３０９】
(図19のステップS32)
S32：転送経路更新モジュール20は，スイッチに，パケット転送経路の変更を依頼する。
【０３１０】
具体的には，転送経路更新モジュール20は，S30で決定された決定した変更順序に従って，複数の変更対象仮想マシンの各々の実監視経路をそれぞれ他の監視経路に変更するすように，スイッチに依頼する。
【０３１１】
S30で説明した例では，第3の仮想マシンVM3の実監視経路を1番目に変更し，第1の仮想マシンVM1の実監視経路を2番目に変更すると決定された。そこで，転送経路更新モジュール20は，1番目に，第3の仮想マシンVM3の実監視経路を他の監視経路に変更するように各スイッチに依頼する。転送経路更新モジュール20は，2番目に，第1の仮想マシンVM1の実監視経路を他の監視経路に変更するように各スイッチに依頼する。
【０３１２】
以下，第1の仮想マシンVM1の実監視経路を他の監視経路に変更するように各スイッチに依頼する場合を例示して説明する。
【０３１３】
転送経路更新モジュール20は，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1の仮想マシンVM1の通信パケットを第1の仮想マシンVM1に送信するように第1のスイッチSW1に依頼する。送信先が管理装置M1の通信パケットは，管理装置M1に設定されたIPアドレス"192.168.1.5"を送信先IPアドレスとして含む通信パケットである。また，送信先が第1の仮想マシンVM1の通信パケットは，第1の仮想マシンVM1に設定されたIPアドレス"192.168.1.13"を送信先IPアドレスとして含む通信パケットである。
【０３１４】
第1のスイッチSW1の管理モジュール31は，この依頼を受け付けると，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1の仮想マシンVM1の通信パケットを第1の仮想マシンVM1に送信するように，自装置に記憶されているパケット転送テーブル(図2参照)を更新する。
【０３１５】
例えば，第1のスイッチSW1の管理モジュール31は，図2のパケット転送テーブルTを図21のパケット転送テーブルTaに変更する。この変更は，図2のパケット転送テーブルTにおいて，送信ポート欄におけるポート番号2の行と，送信先IPアドレス欄の列とが交わるセルからIPアドレス"192.168.1.13"を削除する変更である。
【０３１６】
さらに，この変更は，図2のパケット転送テーブルTにおいて，送信ポート欄におけるポート番号3の行と，送信先IPアドレス欄の列とが交わるセルに，IPアドレス"192.168.1.13"を追加した変更である。
【０３１７】
第1のスイッチSW1の管理モジュール31は，この変更後のパケット転送テーブルTaを参照して，通信パケットの転送を行う。
【０３１８】
前記の例では，転送経路更新モジュール20は，さらに，送信先が管理装置M1の通信パケットを管理装置M1に送信し，送信先が第1の仮想マシンVM1の通信パケットを第1の仮想マシンVM1に送信するように第3のスイッチSW3，第6のスイッチSW6に依頼する。
【０３１９】
第3のスイッチSW3は，送信先が管理装置M1の通信パケットを第1のスイッチSW1に送信し，送信先が第1の仮想マシンVM1の通信パケットを第6のスイッチSW6に送信するように，自装置のパケット転送テーブルを更新する。
【０３２０】
さらに，第6のスイッチSW6は，送信先が管理装置M1の通信パケットを第3のスイッチSW3に送信し，送信先が第1の仮想マシンVM1の通信パケットを第1の仮想マシンVM1に送信するように，自装置のパケット転送テーブルを更新する。なお，第3のスイッチSW3，第6のスイッチSW6における更新の詳細については，第1のスイッチSW1を例示して図21を用いて説明したので，その説明を省略する。
【０３２１】
そして，転送経路更新モジュール20は，送信先が管理装置M1の通信パケットを，ポート番号2のポート(ポート2)を介して，第6のスイッチSW6に送信するように第1の仮想マシンVM1に依頼する。
【０３２２】
第1の仮想マシンVM1は，この依頼を受け付けると，送信先が管理装置M1の通信パケットを，ポート番号2のポート2を介して，第6のスイッチSW6に送信する。
【０３２３】
さらに，管理装置M1の管理モジュール11は，変更後の監視経路(実際の監視経路)を，図9の転送経路テーブルT3に反映する。
【０３２４】
前記の例では，変更後の経路は(経路8)である。管理モジュール11は，図22に示すように，転送経路テーブルT3aの行LN30において，第1のスイッチSW1の送信ポートを"2"(図9の行LN30参照)から"3"に変更する。
【０３２５】
そして，管理モジュール11は，転送経路テーブルT3aの行LN31において，SW2(図9の行LN31参照)を第3のスイッチSW3に変更する。管理モジュール11は，転送経路テーブルT3aの行LN31において，第3のスイッチSW3の受信ポートを"3"から"1"に変更し，第3のスイッチSW3の送信ポートを"1"から"2"に変更する。
【０３２６】
そして，管理モジュール11は，転送経路テーブルT3aの行LN32において，第5のスイッチSW5(図9の行LN32参照)を第6のスイッチSW6に変更する。管理モジュール11は，転送経路テーブルT3aの行LN32において，第6のスイッチSW6の受信ポートを"2"から"3"に変更する。
【０３２７】
なお，第3の仮想マシンVM3の実監視経路を他の監視経路に変更するように各スイッチに依頼する場合については，第1の仮想マシンVM1の実監視経路を他の監視経路に変更するように各スイッチに依頼する場合と同様なので，その説明を省略する。
【０３２８】
以上説明したように，サービスレベルに応じて監視対象の監視経路の変更順序を決定している。そのため，複数の監視対象の監視経路を変更する場合，サービスレベルが高い監視対象の監視経路を優先して他の監視経路に変更できる。その結果，サービスレベルが高い監視対象ほど監視通信の遅延の発生が抑制され，サービスレベルを維持することができる。
【０３２９】
(予測終息時間の特定)
次に，図20を参照し，監視通信の通信遅延を発生させる通信の予測終息時間を特定する処理(図19のS24)を説明する。
【０３３０】
(図20のステップS241)
S241：終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信に関連する仮想マシンのデータ情報を取得する。監視通信の通信遅延を発生させる通信に関連する仮想マシンのデータ情報は，例えば，マイグレーション中の仮想マシンのイメージサイズである。
【０３３１】
具体的には，終息時間特定モジュール16は，図10の管理サーバ情報テーブルT4において，図18のS17で取得されたマイグレーション中の第nの仮想マシンVMnに設定されているIPアドレスを含む行と，イメージサイズ欄の列とが交わるセルに記憶されたイメージサイズを抽出する。マイグレーション中の仮想マシンが，前記した第nの仮想マシンVMnの場合，第nの仮想マシンVMnのイメージサイズは30GBである。
【０３３２】
(図20のステップS242)
S242：終息時間特定モジュール16は，情報処理システムSYSにおいて過去に監視通信の通信遅延を発生させる通信が実行されていないか判定する。
【０３３３】
具体的には，終息時間特定モジュール16は，情報処理システムSYSにおいて過去に一度もマイグレーションが実行されていないか判定する。情報処理システムSYSにおいて過去に監視通信の通信遅延を発生させる通信が実行されている場合(S242/NO)，S243に移る。情報処理システムSYSにおいて過去に一度も監視通信の通信遅延を発生させる通信が実行されていない場合(S242/YES)，S244に移る。
【０３３４】
例えば，終息時間特定モジュール16は，図15のマイグレーション実行履歴テーブルT9に1つもエントリが記憶されていないか判定する。図15の場合，3つのエントリが記憶されている。従って，終息時間特定モジュール16は，S242でNOと判定する。なお，この3つのエントリは，仮想マシンVM11，VM12，VM13についてのイメージサイズ，実終息時間である。
【０３３５】
(図20のステップS243)
S243：終息時間特定モジュール16は，通信履歴に基づき，監視通信の通信遅延を発生させる通信の予測終息時間を特定(算出)する。具体的には，終息時間特定モジュール16は，監視通信の通信遅延を発生させる過去の通信の各々の通信時間，および，このデータ量を図15のマイグレーション実行履歴テーブルT9から取得する。終息時間特定モジュール16は，取得した過去の前記通信の各々の通信時間およびデータ量に基づき，監視通信の通信遅延を発生させる通信の終了時間を特定する。
【０３３６】
例えば，終息時間特定モジュール16は，図15のマイグレーション実行履歴テーブルT9における，全仮想マシンのイメージサイズおよび終息時間を取得する。
【０３３７】
そして，終息時間特定モジュール16は，取得した仮想マシンのイメージサイズおよび終息時間に基づき作成した1次関数(y=ax+b)を利用して終息時間を特定する。この1次関数において，xがイメージサイズ(単位はGB)を示し，y軸が終息時間(単位は分)を示す。また，この1次関数において，a,bは定数である。
【０３３８】
図15のマイグレーション実行履歴テーブルT9の場合，仮想マシンVM11，VM13について，イメージサイズが30GBで終息時間が10分，仮想マシンVM12について，イメージサイズが60GBで終息時間が20分である。従って，終息時間特定モジュール16は，取得した仮想マシンのイメージサイズおよび終息時間に基づき，一次関数
y=(1/3)x…(式1)
を算出する。
【０３３９】
終息時間特定モジュール16は，マイグレーション中の仮想マシンのイメージサイズを，作成した一次関数に代入し，仮想マシンのマイグレーションが完了するまでに要する時間(以下，必要時間と適宜記す)を予測する。マイグレーション中の仮想マシンが第nの仮想マシンVMnの場合，図10の管理サーバ情報テーブルT4によれば，第nの仮想マシンVMnのイメージサイズは30GBである。従って，(式1)のxに"30"を代入してy(終息時間，すなわち必要時間)として10分を算出する。
【０３４０】
終息時間特定モジュール16は，図17で説明した，監視装置からのマイグレーション中の仮想マシンに対するアラームを受信した時間と，一次関数を用いて算出した必要時間とを加算した時間を，マイグレーション中の仮想マシンの予測終息時間として特定する。このアラームを受信した時間は，監視経路の通信遅延を発生させる通信が開始された時間に対応している。前記の例では，このアラームを受信した時間は，第nの仮想マシンVMnのマイグレーションが開始された時間に対応している。
【０３４１】
例えば，監視装置からのマイグレーション中の第nの仮想マシンVMnに対するアラームを受信した時間を"14:30:00"とする。マイグレーション中の第nの仮想マシンVMnの必要時間は10分である。以上より，終息時間特定モジュール16は，マイグレーション中の第nの仮想マシンVMnの予測終息時間として"14:40:00"("14:30:00"+10分)を特定する。
【０３４２】
このように通信履歴に基づき，監視通信の通信遅延を発生させる通信の予測終息時間を特定することで，正確な予測終息時間を特定することができる。
【０３４３】
(図20のステップS244)
S244：終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信に関連する仮想マシンのデータ情報と，監視通信の通信遅延を発生させる通信の帯域とに基づき，監視通信の通信遅延を発生させる通信の予測終息時間を特定する。
【０３４４】
具体的には，終息時間特定モジュール16は，図14のスイッチテーブルT8に基づき，実際に実行されているマイグレーション経路の帯域を取得する。そして，終息時間特定モジュール16は，マイグレーション中の仮想マシンのイメージサイズ(単位はGB)を，取得した帯域(単位はGbps)で除算して，仮想マシンのマイグレーションの必要時間を算出する。
【０３４５】
図18のS12で説明した例の場合，実際に実行されているマイグレーション経路は，(経路2)である。なお，(経路2)は，"［SVR1-PRT1］=>[SW5-PRT1]=>[SW5-PRT2]=>［SW2-PRT1］=>［SW2-PRT2］=>［SW8-PRT1］=>［SW8-PRT2］=>［SVR3-PRT1］"である。
【０３４６】
そして，この(経路2)の帯域は，(経路2)を構成するスイッチである，第5のスイッチSW5，第2のスイッチSW2，第8のスイッチSW8の帯域である。この帯域は，10Gbpsである。そして，マイグレーション中の仮想マシンのイメージサイズは30×8Gb(ギガビット)である。従って，終息時間特定モジュール16は，30×8(Gb)/10(Gbps)を計算して，仮想マシンのマイグレーションの必要時間を24秒と予測する。
【０３４７】
終息時間特定モジュール16は，図17で説明した，監視装置からのマイグレーション中の仮想マシンに対するアラームを受信した時間と，予測した必要時間とを加算した時間を，マイグレーション中の仮想マシンの予測終息時間として特定する。この予測終息時間の特定については，S243で説明したので省略する。
【０３４８】
S244の監視通信の通信遅延を発生させる通信の予測終息時間の特定手法によれば，通信履歴がない場合であっても，予測終息時間を特定することができる。
S243，S244の終了後，図19のS25に移る。
【０３４９】
以上説明した，本実施の形態によれば，マイグレーション用の通信の経路と監視対象の監視経路との間に一致する部分が含まないように，または，一致する部分が変更前よりも短くなるように，この監視対象の監視経路を変更する。
【０３５０】
この監視経路の変更により，マイグレーション用の通信の経路と監視経路との間に一致する部分が含まれなくなる，または，一致する部分が変更前よりも短くなるので，監視対象との監視通信において，通信遅延が発生することを抑制できる。
【０３５１】
<第2の実施の形態>
第1の実施の形態では，監視通信の通信遅延を生じさせる通信の一例として，マイグレーション用の通信を説明した。監視通信の通信遅延を生じさせる通信の他の例として，情報処理装置(例えば，ホストサーバ)が動作させている仮想マシンに関するデータを他の装置に記憶するバックアップに関する通信がある。仮想マシンに関するデータは，例えば，仮想マシンのイメージである。また，他の装置は，例えば，管理装置M1である。
【０３５２】
(全バックアップ経路)
図23は，図3，図5のストレージ102の遅延通信経路記憶領域R1に記憶されているバックアップ経路テーブルT1aを示す図である。遅延通信経路記憶領域R1は，バックアップ経路テーブルT1aを記憶する領域である。バックアップ経路テーブルT1aが遅延通信経路記憶領域R1に記憶されている状態を図3，図5のストレージ102における":T1"で模式的に示している。
【０３５３】
バックアップ経路テーブルT1aは，可能性のある全てのバックアップ経路を記憶するテーブルである。
【０３５４】
バックアップ経路テーブルT1aは，定期バックアップ対象欄と，定期バックアップ対象IPアドレス欄と，バックアップ経路欄とを有する。定期バックアップ対象欄は，バックアップの対象となる仮想マシンのIDを記憶する。なお，バックアップの対象は，ホストサーバでもよい。
【０３５５】
定期バックアップ対象IPアドレス欄は，バックアップ対象のホストサーバや，仮想マシンに設定されているIPアドレスを記憶する。バックアップ経路欄は，管理装置M1とバックアップ対象との間のバックアップ経路を記憶する。
【０３５６】
バックアップ経路テーブルT1aは，1行に，バックアップ対象のID，バックアップ対象とするホストサーバや，仮想マシンに設定されているIPアドレス，管理装置M1とバックアップ対象との間のバックアップ経路とを対応付けて記憶する。
【０３５７】
例えば，管理装置M1と第1の仮想マシンVM1との間のバックアップ経路は，例えば，
"［SVR1-PRT1］=>［SW5-PRT1］=>［SW5-PRT2］=>［SW2-PRT1］=>［SW2-PRT3］=>[SW1-PRT2]=> [SW1-PRT1]=>［M1］"（経路10）
で示される。
【０３５８】
他にも，管理装置M1と第1のホストサーバSVR1との間のバックアップ経路は，図23のバックアップ経路テーブルT1aに示した，(経路11)，(経路12)など様々な経路があるが，その説明を省略する。
【０３５９】
(バックアップ実行履歴)
図24は，図3，図5のストレージ102の実行履歴記憶領域R9に記憶されているバックアップ実行履歴テーブルT9aを示す図である。実行履歴記憶領域R9は，バックアップ実行履歴テーブルT9aを記憶する領域である。バックアップ実行履歴テーブルT9aが実行履歴記憶領域R9に記憶されている状態を図3，図5のストレージ102における":T9"で模式的に示している。
【０３６０】
バックアップ実行履歴テーブルT9aは，仮想マシンのバックアップが開始されてから終了するまでに実際に費やした時間(以下，実終息時間と適宜記す)を記憶するテーブルである。
【０３６１】
バックアップ実行履歴テーブルT9aは，仮想マシン欄と，イメージサイズ欄と，実終息時間欄とを有する。仮想マシン欄は，バックアップが実行された仮想マシンのIDを記憶する。イメージサイズ欄は，この仮想マシンのイメージサイズを記憶する。実終息時間欄は，この仮想マシンのバックアップの実終息時間を記憶する。
【０３６２】
バックアップ実行履歴テーブルT9aは，1行に，仮想マシンのIDと，仮想マシンのイメージサイズと，仮想マシンのバックアップの実終息時間とを対応付けて記憶する。
【０３６３】
管理装置M1の管理モジュール11は，例えば，仮想マシンを動作させているホストサーバに仮想マシンのイメージサイズとこの仮想マシンのバックアップの実終息時間とを定期的に問い合わせる。このホストサーバのハイパバイザは，仮想マシンのイメージサイズを記憶し，仮想マシンのバックアップの実行を制御し，バックアップの実終息時間を記憶している。
【０３６４】
このホストサーバのハイパバイザは，管理装置M1の管理モジュール11からの問い合わせを受け付けると，自装置に記憶されている，仮想マシンのID，仮想マシンのイメージサイズ，仮想マシンの実終息時間を管理装置M1に送信する。
【０３６５】
なお，ホストサーバのハイパバイザは，仮想マシンのバックアップが終了したタイミングで，仮想マシンのID，仮想マシンのイメージサイズ，仮想マシンの実終息時間を管理装置M1に送信してもよい。
【０３６６】
管理装置M1の管理モジュール11は，仮想マシンのIDと，仮想マシンのイメージサイズと，仮想マシンの実終息時間とを受信すると，このIDと，このイメージサイズと，この実終息時間とを対応付けてバックアップ実行履歴テーブルT9aに記憶する。
【０３６７】
(遅延検知用情報テーブル)
次に，スイッチSWが記憶する遅延検知用情報テーブルについて説明する。図25は，図4，図6のストレージ302の遅延検知用情報記憶領域R11に記憶されている遅延検知用情報テーブルT11aを示す図である。遅延検知用情報記憶領域R11は，遅延検知用情報テーブルT11aを記憶する領域である。遅延検知用情報テーブルT11aが遅延検知用情報記憶領域R11に記憶されている状態を図4，図6のストレージ302における":T11"で模式的に示している。
【０３６８】
遅延検知用情報テーブルT11aは，監視通信の通信遅延を生じさせる通信，例えば，バックアップの通信を検知する際にスイッチにより参照されるテーブルである。遅延検知用情報テーブルT11aの構成は，図16の遅延検知用情報テーブルT11の構成と同様である。
【０３６９】
ポート名欄は，仮想マシンのイメージのバックアップ時に使用されるポート番号である"4972"，"4973"を記憶する。なお，ポート名欄に記憶されている"902"は，図16で説明したマイグレーションの際に使用されるポート番号である。
【０３７０】
そして，ポート番号"4972"，"4973"を含む行とプロトコル欄の列とが交わるセルに"UDP"が記憶されている。さらに，ポート番号"4972"，"4973"を含む行と種別欄の列とが交わるセルに"バックアップ"が記憶されている。
【０３７１】
(スイッチの処理)
スイッチの遅延通信検知モジュール32は，管理モジュール31が通信パケットを転送した場合(図17のS1/YES)，転送した通信パケットの送信先ポート番号と遅延検知用情報テーブルT11aのポート名欄に記憶されているポート番号(例えば，4972)とが一致するか判定する(図17のS2)。遅延通信検知モジュール32は，両ポート番号が一致する場合，監視通信の監視通信の通信遅延を発生させる通信が行われている判定する(S2/YES)。
【０３７２】
スイッチSWの通信モジュール33は，S2でYESと判定された場合，監視通信の通信遅延を発生させる通信の通信先，通信元を特定する情報とこの通信の種別とを含むアラートを管理装置M1に通知する(図17のS3)。監視通信の通信遅延を発生させる通信は，例えば，バックアップ用の通信である。
【０３７３】
この情報は，監視通信の通信遅延を発生させる通信の通信パケットに含まれる送信先IPアドレス，送信元IPアドレスである。この情報は，図25の例では，送信先ポート番号"4972"を含む通信パケットに含まれる送信先IPアドレス，送信元IPアドレスである。そして，この通信の種別は，バックアップである。
【０３７４】
(管理装置の処理)
管理装置M1の遅延通信経路特定モジュール12は，アラートを受信すると，通信遅滞を発生させる通信の経路の候補を特定する(図18のS11)。例えば，通信遅滞を発生させる通信は，図23で説明したバックアップ用の通信である。このバックアップにおいて，通信遅滞を発生させる通信の経路の候補は，第1のホストサーバSVR1と管理装置M1との間における全てのネットワーク経路である。
【０３７５】
具体的には，遅延通信経路特定モジュール12は，図23のバックアップ経路テーブルT1aの全行の中から，以下の行を特定する。この特定される行は，定期バックアップ対象IPアドレス欄に，アラートに含まれる送信元IPアドレスが記憶されている行である。アラートに含まれる送信元IPアドレスが"192.168.1.10"の場合，遅延通信経路特定モジュール12は，行LN51を特定する。
【０３７６】
遅延通信経路特定モジュール12は，バックアップ経路テーブルT1aにおいて，特定した行とバックアップ路欄の列とが交わるセルに記憶されたバックアップ経路を抽出する。前記の例では，遅延通信経路特定モジュール12は，バックアップ経路である，(経路10)，(経路11)…(以下，省略)を抽出する。
【０３７７】
遅延通信経路特定モジュール12は，監視通信の通信遅延を発生させる通信の経路を特定する(図18のS12)。具体的には，遅延通信経路特定モジュール12は，アラートに含まれる送信先IPアドレス，送信元IPアドレスと，S11で抽出したバックアップ経路と，図9の転送経路テーブルT3とに基づき，実際に実行されているバックアップ経路を特定する。なお，実際に実行されているバックアップ経路の特定については，第1の実施の形態で説明した，実際に実行されているマイグレーション経路の特定と同様なのでその説明を省略する。
【０３７８】
例えば，遅延通信経路特定モジュール12は，(経路10)を実際に実行されているバックアップの経路として特定する。
【０３７９】
監視経路特定モジュール13は，アラートを受信すると，通信遅滞を発生させる通信の通信元サーバ(以下，元ホストサーバBCKと適宜記す)の監視経路の候補を特定する(図18のS13)。前記の例では，元ホストサーバBCKは，第1のホストサーバSVR1である。そして，この監視経路の候補は，管理装置M1と第1のホストサーバSVR1との間における全てのネットワーク経路である。
【０３８０】
以後,管理装置M1は，図18のS14〜S16の処理を順次実行する。なお，S14〜S16の処理については，第1の実施の形態で詳細に説明したので，その説明を省略する。
【０３８１】
遅延通信仮想マシン特定モジュール14は，監視経路の通信遅延を発生させる通信に関連する仮想マシンのIPアドレスを取得する(図18のS17)。監視経路の通信遅延を発生させる通信に関連する仮想マシンは，バックアップ中の仮想マシンである。バックアップ中の仮想マシンは，例えば第nの仮想マシンVMnである。
【０３８２】
遅延通信仮想マシン特定モジュール14は，元ホストサーバBCK(例えば第1のホストサーバSVR1)からバックアップ中の仮想マシンのIPアドレスを取得する。
【０３８３】
遅延通信仮想マシン特定モジュール14は，第1のホストサーバSVR1のハイパバイザに，バックアップ中の仮想マシンのIPアドレスを通知するように指示する。ハイパバイザは，この指示に応答して，バックアップ中の仮想マシンのIPアドレスを遅延通信仮想マシン特定モジュール14に通知する。
【０３８４】
管理装置M1は，以後，第1の実施の形態で説明した図19のS21以下の処理を順次実行する。図19のS21以下の処理が順次実行されると，終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信(例えば，バックアップ通信)の予測終息時間を特定する(図19のS24)。
【０３８５】
終息時間特定モジュール16は，監視通信の通信遅延を発生させる通信に関連する仮想マシンのデータ情報を取得する(図20のS241)。監視通信の通信遅延を発生させる通信に関連する仮想マシンのデータ情報は，例えば，マイグレーション中の仮想マシンのイメージサイズである。終息時間特定モジュール16は，図20のS241で説明したように，第nの仮想マシンVMnのイメージサイズである30Gを取得する。
【０３８６】
終息時間特定モジュール16は，情報処理システムSYSにおいて過去に監視通信の通信遅延を発生させる通信が実行されていないか判定する(図20のS242)。
【０３８７】
過去に監視通信の通信遅延を発生させる通信が実行されている場合(S242/NO)，終息時間特定モジュール16は，通信履歴に基づき，監視通信の通信遅延を発生させる通信の予測終息時間を特定する(図20のS243)。
【０３８８】
具体的には，終息時間特定モジュール16は，図24のバックアップ実行履歴テーブルT9aにおける，全仮想マシンのイメージサイズおよび終息時間を取得する。
【０３８９】
そして，終息時間特定モジュール16は，取得した仮想マシンのイメージサイズおよび終息時間に基づき作成した1次関数(y=ax+b)を利用して終息時間を特定する。この1次関数において，xがイメージサイズ(単位はGB)を示し，y軸が終息時間(単位は分)を示す。また，この1次関数において，a,bは定数である。
【０３９０】
図24のバックアップ実行履歴テーブルT9aの場合，仮想マシンVM21，VM23について，イメージサイズが30GBで終息時間が20分，仮想マシンVM22について，イメージサイズが60GBで終息時間が40分である。従って，終息時間特定モジュール16は，取得した仮想マシンのイメージサイズおよび終息時間に基づき，一次関数
y=(2/3)x…(式2)
を算出する。
【０３９１】
終息時間特定モジュール16は，バックアップ中の仮想マシンのイメージサイズを，作成した一次関数に代入し，仮想マシンのバックアップが完了するまでに要する時間(以下，必要時間と適宜記す)を予測する。バックアップ中の仮想マシンが第nの仮想マシンVMnの場合，図10の管理サーバ情報テーブルT4によれば，第nの仮想マシンVMnのイメージサイズは30GBである。従って，(式1)のxに"30"を代入してy(終息時間，すなわち必要時間)として20分を算出する。
【０３９２】
終息時間特定モジュール16は，図17で説明した，監視装置からのバックアップ中の仮想マシンに対するアラームを受信した時間と，一次関数を用いて算出した必要時間とを加算した時間を，バックアップ中の仮想マシンの予測終息時間として特定する。
【０３９３】
例えば，監視装置からのバックアップ中の第nの仮想マシンVMnに対するアラームを受信した時間を"14:30:00"とする。バックアップ中の第nの仮想マシンVMnの必要時間は20分である。終息時間特定モジュール16は，バックアップ中の第nの仮想マシンVMnの予測終息時間として"14:50:00"("14:30:00"+20分)を特定する。
【０３９４】
なお，過去に監視通信の通信遅延を発生させる通信が実行されていない場合(図20のS242/YES)，終息時間特定モジュール16は，図20のS244の処理を実行する。
【０３９５】
具体的には，終息時間特定モジュール16は，図14のスイッチテーブルT8に基づき，実際に実行されているバックアップ経路を取得する。そして，終息時間特定モジュール16は，バックアップ中の仮想マシンのイメージサイズ(単位はGB)を取得した帯域(単位はGbps)で除算して，仮想マシンのバックアップの必要時間を算出する。なお，必要時間の算出処理については，第1の実施の形態で説明したので，その説明を省略する。
【０３９６】
そして，終息時間特定モジュール16は，図17で説明した，監視装置からのバックアップ中の仮想マシンに対するアラームを受信した時間と，予測した必要時間とを加算した時間を，バックアップ中の仮想マシンの予測終息時間として特定する。
【０３９７】
以上説明したように，以上説明した管理装置によれば，監視通信の通信遅延を生じさせる様々な通信に対して，監視経路の変更を実行できる。
【０３９８】
［変形例］
管理装置M1は，スイッチSWからアラートを受信したタイミングで，マイグレーション経路テーブルT1や監視経路テーブルT2を動的に作成してストレージ102に記憶してもよい。
【０３９９】
監視通信の通信遅延を生じさせる通信の他の例としては，例えばFTP(File Transfer Protocol)用の通信や，SFTP(SSH File Transfer Protocol)用の通信など様々な通信がある。本実施の形態の管理装置は，これら監視通信の通信遅延を生じさせる様々な通信に対して，監視経路の変更を実行してもよい。
【０４００】
以上の実施の形態をまとめると，次の付記のとおりである。
【０４０１】
（付記１）
監視対象と第1の経路を介して通信する通信部と，
前記監視対象を監視する監視タイミングに至ると，前記監視対象と前記通信部により通信し前記監視対象の状態情報を取得する処理部とを有し，
前記処理部は，前記第1の経路の使用状況を検出し，前記使用状況に基づき，次の前記監視タイミングでの前記通信において遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，変更した前記第2の経路を介して前記監視対象と前記通信部により通信する
ことを特徴とする管理装置。
【０４０２】
（付記２）
付記1において，
前記使用状況は，前記第1の経路と，前記監視対象との第1の前記通信の遅延を発生させる第2の通信の経路との間に，一致する第3の経路が含まれている
ことを特徴とする管理装置。
【０４０３】
（付記３）
付記2において，
前記第2の経路は，前記第2の通信の経路と一部一致しない経路，または，前記第2の通信の経路と一致する経路が前記第3の経路よりも短い経路である
ことを特徴とする管理装置。
【０４０４】
（付記４）
付記3において，
前記処理部は，前記判定において，前記次の監視タイミングで前記第2の通信が継続している場合，前記遅延が発生すると判定する
ことを特徴とする管理装置。
【０４０５】
（付記５）
付記3において，
前記管理装置と前記監視対象との通信の経路を記憶する記憶部を有し，
前記処理部は，前記記憶部の前記経路の中から，前記第2の経路を決定する
ことを特徴とする管理装置。
【０４０６】
（付記６）
付記2において，
前記処理部は，前記管理装置と前記監視対象との間に設けられたデータを転送する転送装置から通知された前記第2の通信が実行されたことを示す情報に基づき，前記第2の通信を検知する
ことを特徴とする管理装置。
【０４０７】
（付記７）
付記2において，
さらに，データを転送する複数の転送装置の各々の接続関係を示す結線情報を記憶する記憶部を有し，
前記通信部は，前記複数の転送装置を有するネットワークに接続し，前記ネットワークにおける前記第1の経路を介して前記監視対象と通信し，
前記処理部は，前記記憶部から前記結線情報を取得し，さらに，前記複数の転送装置の各々から，前記第2の通信に対応するデータの送信先を示す通信情報を取得し，取得した前記結線情報と前記通信情報とに基づき，前記第2の通信の経路を特定する
ことを特徴とする管理装置。
【０４０８】
（付記８）
付記2において，
さらに，前記第2の通信に対応する過去の複数の通信の各々について，通信開始から通信終了までの通信時間と，前記過去の複数の通信の各々において送信されるデータのデータ量とが記憶された記憶部を有し，
前記処理部は，前記記憶部に記憶された前記過去の通信の各々の前記通信時間と前記データ量とに基づき，前記第2の通信の終了時間を特定し，前記終了時間よりも前記次の監視タイミングの時点が時間的に前の場合に，前記第2の通信が継続していると判定する
ことを特徴とする管理装置。
【０４０９】
（付記９）
付記2において，
前記第2の通信において送信されるデータのデータ量と前記第2の通信の経路に関する通信帯域情報が記憶された記憶部を有し，
前記処理部は，前記記憶部に記憶された前記データ量と前記帯域情報とに基づき，前記第2の通信の終了時間を特定し，前記終了時間よりも前記次の監視タイミングの時点が時間的に前の場合に，前記第2の通信が継続していると判定する
ことを特徴とする管理装置。
【０４１０】
（付記１０）
付記2において，
前記第2の通信は，第1の情報処理装置が動作させている仮想計算機を前記第1の情報処理装置から前記第1の情報処理装置と異なる第2の情報処理装置に移動して前記第2の情報処理装置で動作させるために実行されるマイグレーションに関する通信である
ことを特徴とする管理装置。
【０４１１】
（付記１１）
付記2において，
前記第2の通信は，情報処理装置が動作させている仮想計算機に関するデータを他の装置に記憶するバックアップに関する通信である
ことを特徴とする管理装置。
【０４１２】
（付記１２）
付記1において，
さらに，複数の監視対象の各々に対応して定められた，所定期間において正常動作が要求される時間を示すサービスレベルを記憶する記憶部を有し，
前記処理部は，複数の監視対象について，次の前記監視タイミングでの前記通信において前記遅延が発生すると判定すると，前記複数の監視対象の各々に対応して定められた前記サービスレベルに基づき，前記複数の監視対象の各々の監視通信の経路の変更順番を決定し，決定した前記変更順序に従って，前記複数の監視対象の各々の前記第1の経路をそれぞれ前記第2の経路に変更する
ことを特徴とする管理装置。
【０４１３】
（付記１３）
付記12において，
前記処理部は，前記複数の監視対象の各々に対応して定められた前記サービスレベルが高い順に従って，前記複数の監視対象の各々の監視通信の経路の変更順番を決定する
ことを特徴とする管理装置。
【０４１４】
（付記１４）
情報処理を実行する監視対象と，
前記監視対象を監視する監視タイミングに至ると，前記監視対象と第1の経路を介して監視対象と通信し前記監視対象の状態情報を取得する管理装置とを有し，
前記管理装置は，前記第1の経路の使用状況を検出し，前記使用状況に基づき，次の前記監視タイミングでの前記通信において遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，変更した前記第2の経路を介して前記監視対象と通信する
ことを特徴とする情報処理システム。
【０４１５】
（付記１５）
付記14において，
前記使用状況は，前記第1の経路と，前記監視対象との第1の前記通信の遅延を発生させる第2の通信の経路との間に，一致する第3の経路が含まれている
ことを特徴とする情報処理システム。
【０４１６】
（付記１６）
付記15において，
さらに，前記管理装置と前記監視対象との間に設けられたデータを転送する転送装置を有し，
前記管理装置は，前記転送装置から通知された前記第2の通信が実行されたことを示す情報に基づき，前記第2の通信を検知する
ことを特徴とする情報処理システム。
【０４１７】
（付記１７）
コンピュータに，
監視対象を監視する監視タイミングに至ると，前記監視対象と第1の経路を介して通信し前記監視対象の状態情報を取得し，
前記第1の経路の使用状況を検出し，
次の前記監視タイミングでの前記通信において，前記使用状況により遅延が発生するか判定し，
前記遅延が発生すると判定すると，前記第1の経路を前記第1の経路と異なる第2の経路に変更し，
変更した前記第2の経路を介して前記監視対象と通信する
処理を実行させることを特徴とするプログラム。
【符号の説明】
【０４１８】
SYS…情報処理システム，M1…管理装置，SW1〜SW8…第1のスイッチ〜第8のスイッチ，SVR1〜SVR3…第1のホストサーバ〜第3のホストサーバ，VM1〜VMn…第1の仮想マシン〜第nの仮想マシン，101…CPU(処理部)，102…ストレージ装置(記憶部)，103…RAM，104…外部記憶媒体読み取り装置，105…通信装置(通信部)，106…入力インターフェイス装置，107…表示インターフェイス装置，301…CPU(処理部)，302…ストレージ装置(記憶部)，303…RAM，304…外部記憶媒体読み取り装置，305…通信装置，SF1…管理ソフト，11…管理モジュール，12…遅延通信経路特定モジュール，13…監視経路特定モジュール，14…遅延通信仮想マシン特定モジュール，15…仮想マシン特定モジュール，16…終息時間特定モジュール，17…監視経路変更判定モジュール，18…変更順序特定モジュール，19…変更用監視経路特定モジュール，20…転送経路更新モジュール，SF2…スイッチングソフトSF，31…管理モジュール，32…遅延通信検知モジュール，33…通信モジュール。
【図１】
0006318910.tif 000002
【図２】
0006318910.tif 000003
【図３】
0006318910.tif 000004
【図４】
0006318910.tif 000005
【図５】
0006318910.tif 000006
【図６】
0006318910.tif 000007
【図７】
0006318910.tif 000008
【図８】
0006318910.tif 000009
【図９】
0006318910.tif 000010
【図１０】
0006318910.tif 000011
【図１１】
0006318910.tif 000012
【図１２】
0006318910.tif 000013
【図１３】
0006318910.tif 000014
【図１４】
0006318910.tif 000015
【図１５】
0006318910.tif 000016
【図１６】
0006318910.tif 000017
【図１７】
0006318910.tif 000018
【図１８】
0006318910.tif 000019
【図１９】
0006318910.tif 000020
【図２０】
0006318910.tif 000021
【図２１】
0006318910.tif 000022
【図２２】
0006318910.tif 000023
【図２３】
0006318910.tif 000024
【図２４】
0006318910.tif 000025
【図２５】
0006318910.tif 000026