(57)【要約】  クライアント端末の位置座標情報から導いた最近接位置仮想マシン稼動サーバ上に仮想マシンを移行（マイグレーション）し、回線遅延の影響が少ない仮想マシン稼動サーバに接続する。具体的には、ネットワーク上の位置最適化サーバは、クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理し、該クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの該仮想マシンの移行を指示する。このとき、位置最適化サーバは、該仮想マシンが稼動している移行元（現在）の仮想マシン稼動サーバと、移行先の仮想マシン稼動サーバの両方に、該仮想マシンの移行に関する指示を行う。
2012132808.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末と、
前記クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバと、
前記クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの前記仮想マシンの移行を指示する位置最適化サーバと
を含む
仮想マシン管理システム。
【請求項２】
請求項１に記載の仮想マシン管理システムであって、
前記クライアント端末は、
自身の位置座標情報を取得し、該位置座標情報を基に、前記位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせる手段と、
前記位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信する手段と、
前記一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、前記特定された仮想マシン稼動サーバへの前記仮想マシンの移行を、前記位置最適化サーバに要求する手段と
を具備する
仮想マシン管理システム。
【請求項３】
請求項２に記載の仮想マシン管理システムであって、
前記位置最適化サーバは、
前記クライアント端末から移行先の仮想マシン稼動サーバの問い合わせを受けた際、前記仮想マシン稼動サーバの管理情報を参照し、前記クライアント端末に関する位置座標情報を基に、移行先候補の有無を確認する手段と、
移行先候補があれば、該移行先候補の情報を前記一覧情報とする手段と、
移行先候補がなければ、前記クライアント端末に関する位置座標情報を基に、移行先候補を算出し、前記算出された移行先候補の情報を前記一覧情報とする手段と、
前記一覧情報を基に特定された移行先の仮想マシン稼動サーバへの前記仮想マシンの移行を指示する手段と、
前記特定された仮想マシン稼動サーバから前記仮想マシンの移行完了通知を受信する手段と、
前記仮想マシンの移行完了通知に応じて、前記仮想マシン稼動サーバの管理情報を更新する手段と、
前記仮想マシンの移行完了通知を前記クライアント端末に送信する手段と
を具備する
仮想マシン管理システム。
【請求項４】
請求項３に記載の仮想マシン管理システムであって、
前記位置最適化サーバは、
前記クライアント端末の移動前に、前記クライアント端末の移動先の位置座標情報を予め取得する手段と、
前記移動先の位置座標情報に応じた仮想マシン稼動サーバへの前記仮想マシンの移行を指示する手段と
を更に具備する
仮想マシン管理システム。
【請求項５】
請求項１乃至４のいずれか一項に記載の仮想マシン管理システムであって、
前記クライアント端末及び位置最適化サーバのうち少なくとも一方は、前記移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行い、前記回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、前記特定された仮想マシン稼動サーバへの前記仮想マシンの移行命令を発行する
仮想マシン管理システム。
【請求項６】
請求項１乃至５のいずれか一項に記載の仮想マシン管理システムであって、
前記仮想マシン稼動サーバは、オープンフロー（ＯｐｅｎＦｌｏｗ）におけるコントローラであり、
前記仮想マシンは、前記コントローラ上にテナント単位で構築された仮想的なネットワークであるＶＴＮ（Ｖｉｒｔｕａｌ  Ｔｅｎａｎｔ  Ｎｅｔｗｏｒｋ）に関するサービスを提供する
仮想マシン管理システム。
【請求項７】
クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理する手段と、
前記クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの前記仮想マシンの移行を指示する手段と
を具備する
位置最適化サーバ。
【請求項８】
自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせる手段と、
前記位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信する手段と、
前記一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、前記特定された仮想マシン稼動サーバへの前記仮想マシンの移行を、前記位置最適化サーバに要求する手段と
を具備する
クライアント端末。
【請求項９】
計算機により実施される仮想マシン管理方法であって、
クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理することと、
前記クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの前記仮想マシンの移行を指示することと
を含む
仮想マシン管理方法。
【請求項１０】
自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせるステップと、
前記位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信するステップと、
前記一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、前記特定された仮想マシン稼動サーバへの前記仮想マシンの移行を、前記位置最適化サーバに要求するステップと
を計算機に実行させるためのプログラムを格納した
記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン管理システムに関し、特にシンクライアントシステムにおける仮想マシン管理システムに関する。
【背景技術】
【０００２】
近年、企業等の情報システムにおいて、社員等が使用するコンピュータ（クライアント）には表示や入力等の最低限の機能しか持たせず、サーバ側でアプリケーションソフトウェアやファイル等の資源を一元管理する「シンクライアント」（ｔｈｉｎ  ｃｌｉｅｎｔ）というシステムが普及している。シンクライアントシステムでは、社員等が使用するコンピュータ（クライアント）を「シンクライアント端末」と呼ぶ。【０００３】
従来のシンクライアントシステムの１つである画面転送型シンクライアントシステムでは、サーバは、多数のシンクライアント端末にデスクトップ環境（ＯＳ、アプリケーションソフトウェア、及びファイル等）を提供するため、仮想マシン（ＶＭ：Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）により、シンクライアント端末のデスクトップ環境を実現している。すなわち、該デスクトップ環境は、仮想デスクトップ環境である。個々のシンクライアント端末は、自身に対応する仮想マシンにアクセスすることで、自身に対応するデスクトップ環境を利用できる。【０００４】
しかし、あるサーバ上で稼動（稼働）している仮想マシンを利用しているシンクライアント端末が、現在の設置場所から別の設置場所に移動した場合に、シンクライアント端末からサーバへの接続距離が比較的長距離となり、安定した回線品質を保つことができないことがある。この場合、快適なデスクトップ環境を提供できない。【０００５】
また、従来のシンクライアントシステムでは、サーバ間で、仮想マシンをマイグレーション（ｍｉｇｒａｔｉｏｎ：プログラムやデータの移行・変換）することも可能である。例えば、仮想マシンのライブ・マイグレーション（無停止移行）に関する技術が知られている。しかし、従来のシンクライアントシステムでの仮想マシンのマイグレーションでは、シンクライアント端末とサーバとの間の接続距離等は考慮されていない。【０００６】
＜特許文献１＞
なお、関連する技術として、特許文献１（特開平１０−２４７１７７号号公報）に、従来のサーバ環境移動方法及びサーバネットワークシステムの一例が記載されている。【０００７】
このサーバネットワークシステムは、通信ネットワークと、端末上で動作するターミナルと、ＤＴＦ管理サーバと、グループ管理サーバと、コンテンツサーバとを含む。【０００８】
上記のような構成を有するネットワークシステムでは、移動先端末のターミナルから入力されたユーザを一意に識別する識別子を基にネットワーク上でユーザを認証する。ライセンスを得ているアプリケーションのリストとアクセスが許されているワークファイルの論理構成をネットワーク上で検索する。検索結果のアプリケーションやワークファイルが現在保管されているコンテンツサーバを検索する。移動先の端末の識別子を基にして、これらのアプリケーションやワークファイルを起動するために適切なコンテンツサーバをネットワーク上で検索する。これらのアプリケーションやワークファイルを検索されたコンテンツサーバに移動する。ユーザの移動先の端末に表示することにより、デスクトップの構築を行う。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１０−２４７１７７号号公報
【非特許文献】
【００１０】
【非特許文献１】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ，  Ｖｅｒｓｉｏｎ  １．０．０”，［ｏｎｌｉｎｅ］，Ｄｅｃｅｍｂｅｒ  ３１，２００９，インターネット（ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｏｐｅｎｆｌｏｗｓｗｉｔｃｈ．ｏｒｇ／ｄｏｃｕｍｅｎｔｓ／ｏｐｅｎｆｌｏｗ−ｓｐｅｃ−ｖ１．０．０．ｐｄｆ）
【発明の概要】
【００１１】
従来のシンクライアントシステムの１つである画面転送型シンクライアントシステムでは、シンクライアント端末からサーバへの接続距離が比較的長距離で安定した回線品質を保つことができない場合に、快適なデスクトップ環境を提供できない。
【００１２】
本発明の目的は、上記の課題を解決するため、ネットワーク上の管理装置が、クライアント端末とサーバとの接続距離を基に、仮想マシンのマイグレーション先を決定し管理する仮想マシン管理システムを提供することである。
【００１３】
本発明に係る仮想マシン管理システムは、クライアント端末と、該クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバと、該クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの該仮想マシンの移行を指示する位置最適化サーバとを含む。
【００１４】
本発明に係る位置最適化サーバは、クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理する装置と、該クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの該仮想マシンの移行を指示する装置とを具備する。
【００１５】
本発明に係るクライアント端末は、自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせる装置と、該位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信する装置と、該一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、該特定された仮想マシン稼動サーバへの該仮想マシンの移行を、該位置最適化サーバに要求する装置とを具備する。
【００１６】
仮想マシン管理方法は、計算機により実施される仮想マシン管理方法であって、クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理することと、該クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの該仮想マシンの移行を指示することとを含む。
【００１７】
本発明に係るプログラムは、自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせるステップと、該位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信するステップと、該一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、該特定された仮想マシン稼動サーバへの該仮想マシンの移行を、該位置最適化サーバに要求するステップとを計算機に実行させるためのプログラムである。なお、本発明に係るプログラムは、記憶装置や記憶媒体に格納することが可能である。
【００１８】
クライアント端末の位置座標情報から導いた最近接位置仮想マシン稼動サーバ上に仮想マシンを移行（マイグレーション）するため、回線遅延の影響が少ない仮想マシン稼動サーバに接続できる。
【図面の簡単な説明】
【００１９】
【図１Ａ】本発明の第１実施形態に係る仮想マシン管理システムの構成例を示す図である。
【図１Ｂ】シンクライアント端末の詳細について説明するための図である。
【図１Ｃ】仮想マシン稼動サーバの詳細について説明するための図である。
【図１Ｄ】位置最適化サーバ（ＬＯサーバ）の詳細について説明するための図である。
【図２】サーバテーブルの構成例の詳細について説明するための図である。
【図３】接続先候補サーバテーブルの構成例の詳細について説明するための図である。
【図４】本発明の第１実施形態の実施例について説明するための第１の図である。
【図５】本発明の第１実施形態の実施例について説明するための第２の図である。
【図６】本発明の第１実施形態の実施例について説明するための第３の図である。
【図７】本発明の第１実施形態の実施例について説明するための第４の図である。
【図８】本発明の第１実施形態の実施例について説明するための第５の図である。
【図９Ａ】仮想マシン管理システムの動作の前半を示すシーケンス図である。
【図９Ｂ】仮想マシン管理システムの動作の中盤を示すシーケンス図である。
【図９Ｃ】仮想マシン管理システムの動作の後半を示すシーケンス図である。
【図１０】本発明の第１実施形態の応用例における動作を示すシーケンス図である。
【図１１Ａ】本発明の第２実施形態に係る仮想マシン管理システムの構成例を示す図である。
【図１１Ｂ】シンクライアント端末の詳細について説明するための図である。
【図１１Ｃ】位置最適化サーバ（ＬＯサーバ）の詳細について説明するための図である。
【図１１Ｄ】コントローラの詳細について説明するための図である。
【図１２】本発明の第２実施形態の実施例について説明するための図である。
【発明を実施するための形態】
【００２０】
＜第１実施形態＞
以下に、本発明の第１実施形態について添付図面を参照して説明する。
【００２１】
［システム構成］
図１Ａを参照して、本発明の第１実施形態に係る仮想マシン管理システムの構成例について説明する。
【００２２】
本発明の第１実施形態に係る仮想マシン管理システムは、シンクライアント端末１０と、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ：ｎは任意）と、位置最適化サーバ（ＬＯサーバ：Ｌｏｃａｔｉｏｎ  Ｏｐｔｉｍｉｚａｔｉｏｎ  Ｓｅｒｖｅｒ）３０を含む。
【００２３】
シンクライアント端末１０は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）のいずれかで稼動する仮想マシン（ＶＭ：Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）にアクセスする端末装置である。シンクライアント端末１０は、運搬可能な端末装置（可搬型機器）であり、設置場所が変更される場合がある。
【００２４】
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）は、データセンタに設置され、シンクライアント端末１０に対してデスクトップ環境（ＯＳ、アプリケーションソフトウェア、及びファイル等）等のＷｅｂサービスを提供する仮想マシンを動作させるサーバ装置である。
【００２５】
位置最適化サーバ（ＬＯサーバ）３０は、仮想マシンの移行先として環境が良好と思われる仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報を収集し、該仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を保持するサーバ装置である。
【００２６】
シンクライアント端末１０、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）、及び位置最適化サーバ（ＬＯサーバ）３０は、ネットワークを介して接続されている。シンクライアント端末１０、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）、及び位置最適化サーバ（ＬＯサーバ）３０の各々は、物理ネットワーク上に存在する物理ノードである。
【００２７】
［シンクライアント端末の構成］
図１Ｂを参照して、シンクライアント端末１０の構成例について説明する。
【００２８】
シンクライアント端末１０は、制御部１１と、記憶部１２と、通信部１３を備える。
【００２９】
制御部１１は、シンクライアント端末１０の内部構成全体の制御を行う。
【００３０】
記憶部１２は、プログラムや各種情報を保持する。
【００３１】
通信部１３は、ネットワークを介して、外部との通信を行う。
【００３２】
［シンクライアント端末の制御部の詳細］
続いて、シンクライアント端末１０の制御部１１の詳細について説明する。
【００３３】
制御部１１は、エージェント（ａｇｅｎｔ）１１１を導入している。
【００３４】
エージェント１１１は、シンクライアント端末１０上で動作するアプリケーションソフトウェアである。エージェント１１１は、シンクライアント端末１０上に常駐している。
【００３５】
制御部１１は、エージェント１１１を実行することで、位置座標認識部１１１１と、回線品質監視部１１１２と、移行指示部１１１３としての機能を実現する。すなわち、制御部１１は、エージェント１１１に従い、位置座標認識部１１１１、回線品質監視部１１１２、及び移行指示部１１１３として機能する。
【００３６】
なお、エージェント１１１は、ソフトウェアに限らず、専用デバイスでも良い。この場合、専用デバイスとしてのエージェント１１１は、位置座標認識部１１１１と、回線品質監視部１１１２と、移行指示部１１１３を備える。
【００３７】
位置座標認識部１１１１は、シンクライアント端末１０の物理的な位置座標を特定できるデバイスを用いて、特定した位置座標を数値化する。物理的な位置座標を特定できるデバイスの例として、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）受信機等が考えられる。また、位置座標認識部１１１１は、通常の通信用デバイスを用いて、ルータや基地局等の中継装置の識別情報（又は所在地）から当該中継装置の物理的な位置座標を特定し、この中継装置の物理的な位置座標を基に、シンクライアント端末１０の物理的な位置座標を算出しても良い。この場合、中継装置の識別情報（又は所在地）と位置座標とを対応付けたテーブルを用意しても良い。また、位置座標認識部１１１１は、最寄りの中継装置の物理的な位置座標を、シンクライアント端末１０の物理的な位置座標としても良い。
【００３８】
回線品質監視部１１１２は、回線品質（回線遅延、帯域）の測定・統計を行う。例えば、回線品質監視部１１１２は、通信部１３を介して、「ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）  ｐｉｎｇ」（ＩＣＭＰパケットのｐｉｎｇコマンド）のようなコマンドを送信し、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）までの回線遅延を測定する。また、回線品質監視部１１１２は、通信部１３を流れる通信パケットの量を統計することで、通信帯域を測定する。
【００３９】
移行指示部１１１３は、通信部１３を介して、位置最適化サーバ（ＬＯサーバ）３０に移行先仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）へのマイグレーション（ｍｉｇｒａｔｉｏｎ：プログラムやデータの移行・変換）命令を発行する。
【００４０】
［シンクライアント端末の記憶部の詳細］
続いて、シンクライアント端末１０の記憶部１２の詳細について説明する。
【００４１】
記憶部１２は、エージェントプログラム１２１と、一覧情報１２２を保持する。
【００４２】
エージェントプログラム１２１は、エージェント１１１の実行プログラムである。制御部１１は、記憶部１２からエージェントプログラム１２１を読み出して実行することで、エージェント１１１を起動させる。
【００４３】
一覧情報１２２は、位置最適化サーバ（ＬＯサーバ）３０との間でやりとりされた移行元と移行先の仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に関する情報である。ここでは、一覧情報１２２は、現在接続している仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報、並びに通信部１３を介した位置最適化サーバ（ＬＯサーバ）３０との通信で得た移行先候補（接続先候補）の一覧情報を示す。
【００４４】
［仮想マシン稼動サーバの構成］
図１Ｃを参照して、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の各々の構成例について説明する。
【００４５】
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の各々は、制御部２１と、記憶部２２と、通信部２３を備える。
【００４６】
制御部２１は、該仮想マシン稼動サーバ２０の内部構成全体の制御を行う。
【００４７】
記憶部２２は、プログラムや各種情報を保持する。
【００４８】
通信部２３は、ネットワークを介して、外部との通信を行う。
【００４９】
［仮想マシン稼動サーバの制御部の詳細］
続いて、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１の詳細について説明する。
【００５０】
制御部２１は、回線品質監視応答部２１１と、仮想マシン環境部２１２を備える。
【００５１】
回線品質監視応答部２１１は、エージェント１１１の回線品質監視部１１１２からの回線品質確認要求に対して応答する。ここでは、回線品質監視応答部２１１は、エージェント１１１の回線品質監視部１１１２から回線品質監視用パケットを受信し、応答のパケットを返信する。
【００５２】
上記の回線品質監視部１１１２が「ＩＣＭＰ  ｐｉｎｇ」を送信する場合、回線品質監視応答部２１１は、「ＩＣＭＰ  ｐｉｎｇ」の応答機能に相当する。
【００５３】
仮想マシン環境部２１２は、ゲストＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）２１２１（２１２１−ｊ、ｊ＝１〜ｍ：ｍは任意）と、仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）と、仮想マシン管理部２１２３を含む。
【００５４】
ゲストＯＳ２１２１（２１２１−ｊ、ｊ＝１〜ｍ）は、シンクライアント端末１０のデスクトップ環境におけるＯＳである。
【００５５】
仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）は、１台につき、ゲストＯＳ２１２１を１つ起動し、動作させる。これにより、仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）の各々は、シンクライアント端末１０に対してデスクトップ環境を提供する。
【００５６】
仮想マシン管理部２１２３は、仮想マシン２１２２を管理する。例えば、仮想マシン管理部２１２３は、仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）の生成・実行・マイグレーション（ｍｉｇｒａｔｉｏｎ：プログラムやデータの移行・変換）・破棄を管理する。仮想マシン管理部２１２３は、仮想マシンマイグレーション命令がある場合、通信部２３を介して、別の仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に仮想マシン２１２２をマイグレーションさせることができる。仮想マシン管理部２１２３の例として、ハイパーバイザー（ｈｙｐｅｒｖｉｓｏｒ）等の仮想マシンモニタ（ＶＭＭ：Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ  Ｍｏｎｉｔｏｒ）等が考えられる。
【００５７】
［仮想マシン稼動サーバの記憶部の詳細］
続いて、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の記憶部２２の詳細について説明する。
【００５８】
記憶部２２は、従来のシンクライアントシステムを実現するために必要なプログラムや各種情報を保持する。例えば、記憶部２２は、シンクライアント端末１０（エージェント１１１）の認証に関する情報、ＶＭｗａｒｅ（登録商標）等の仮想マシンソフトウェア、仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）のテンプレート（雛型）及び設定情報、その他仮想マシンの生成や運用に必要な情報等を保持する。
【００５９】
［位置最適化サーバ（ＬＯサーバ）の構成］
図１Ｄを参照して、位置最適化サーバ（ＬＯサーバ）３０の構成例について説明する。
【００６０】
位置最適化サーバ（ＬＯサーバ）３０は、制御部３１と、ＤＢ（データベース）３２と、通信部３３を備える。
【００６１】
制御部３１は、位置最適化サーバ（ＬＯサーバ）３０の内部構成全体の制御を行う。
【００６２】
ＤＢ３２は、プログラムや各種情報を保持する。なお、ＤＢ３２は、位置最適化サーバ（ＬＯサーバ）３０の内部に存在している必要はなく、位置最適化サーバ（ＬＯサーバ）３０から独立したサーバ装置でも良い。
【００６３】
通信部３３は、ネットワークを介して、外部との通信を行う。
【００６４】
［位置最適化サーバ（ＬＯサーバ）の制御部の詳細］
続いて、位置最適化サーバ（ＬＯサーバ）３０の制御部３１の詳細について説明する。
【００６５】
制御部３１は、ＬＯ機能部３１１を備える。
【００６６】
ＬＯ機能部３１１は、位置最適化サーバ（ＬＯサーバ）３０上で動作するサーバソフトウェアにより実現される。該サーバソフトウェアは、位置最適化サーバ（ＬＯサーバ）３０上に常駐している。該サーバソフトウェアは、エージェントやデーモン（ｄａｅｍｏｎ）でも良い。なお、ＬＯ機能部３１１は、専用デバイスでも良い。
【００６７】
［ＬＯ機能部の詳細］
続いて、ＬＯ機能部３１１の詳細について説明する。
【００６８】
ＬＯ機能部３１１は、近接サーバ計算部３１１１と、移行指示部３１１２と、ＤＢ管理部３１１３を備える。
【００６９】
近接サーバ計算部３１１１は、指定されたアルゴリズムを用いて距離計算を行う。ここでは、近接サーバ計算部３１１１は、エージェント１１１が送信してきた位置座標情報と、ＤＢ３２に格納されているサーバテーブル３２１の位置座標情報とを基に、距離を演算する。これにより、近接サーバ計算部３１１１は、エージェント１１１が導入されたシンクライアント端末１０と、サーバテーブル３２１に登録された各仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）との物理的な距離を計算することができる。計算方法として、例えば最も単純に２点間座標の直距離計算を行う方法や、２点間の緯度・経度から地表面距離の計算を行う方法等が考えられるが、実際にはこれらの方法に限定されず、任意のアルゴリズムを使用できる。
【００７０】
移行指示部３１１２は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に仮想マシンのマイグレーションを指示する。ここでは、移行指示部３１１２は、通信部１３を介して仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）にマイグレーション命令を発行する。
【００７１】
ＤＢ管理部３１１３は、ＤＢ３２の管理を行う。ここでは、ＤＢ管理部３１１３は、制御部３１からの指示に従い、ＤＢ３２に格納されているサーバテーブル３２１、接続先候補サーバテーブル３２２への情報の登録・更新・削除を行う。
【００７２】
［位置最適化サーバ（ＬＯサーバ）のＤＢの詳細］
続いて、位置最適化サーバ（ＬＯサーバ）３０のＤＢ３２の詳細について説明する。
【００７３】
ＤＢ３２は、サーバテーブル３２１と、接続先候補サーバテーブル３２２を含む。
【００７４】
サーバテーブル３２１は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）のネットワーク情報、位置座標情報を一元管理するテーブルである。サーバテーブル３２１は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報（サーバＩＤ、ＦＱＤＮ、ＩＰアドレス）と対応する位置座標情報の組を保持する。
【００７５】
接続先候補サーバテーブル３２２は、位置座標情報と接続先サーバの候補の一覧情報で構成されるテーブルである。接続先候補サーバテーブル３２２は、ある位置座標とその座標から接続候補となる仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報を組として保持する。
【００７６】
［サーバテーブルの詳細］
図２を参照して、サーバテーブル３２１の詳細について説明する。
【００７７】
この例では、サーバテーブル３２１は、「サーバＩＤ」欄と、「サーバ情報」欄と、「位置座標情報」欄を含む。
【００７８】
「サーバＩＤ」欄は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の識別子であるサーバＩＤを格納するための領域（フィールド）である。「サーバ情報」欄は、ＦＱＤＮやＩＰアドレスといったサーバのネットワーク情報を格納するための領域である。「位置座標情報」欄は、サーバの緯度、経度といった位置座標情報を格納するための領域である。
【００７９】
ＤＢ管理部３１１３は、本発明のシステム稼動時から予め（事前に）、利用可能な仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報を、サーバテーブル３２１に登録している。
【００８０】
また、ＤＢ管理部３１１３は、サーバテーブル３２１に登録されている仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の情報に変更があった場合は、変更があった情報を更新、削除する。
【００８１】
［接続先候補サーバテーブルの詳細］
図３に、接続先候補サーバテーブル３２２の一例を示す。
【００８２】
この例では、接続先候補サーバテーブル３２２は、「位置座標情報」欄と、「ＰＲＩ（Ｐｒｉｍａｒｙ）サーバ」欄と、「ＳＥＣ（Ｓｅｃｏｎｄａｒｙ）サーバ」欄等を含む。
【００８３】
「位置座標情報」欄は、シンクライアント端末１０（エージェント１１１）から通知された位置座標情報を格納するための領域である。「ＰＲＩサーバ」欄及び「ＳＥＣサーバ」欄は、接続先サーバの候補の一覧情報を格納するための領域である。ここでは、「ＰＲＩサーバ」欄は、接続先サーバの第１候補の情報を格納するための領域である。「ＳＥＣサーバ」欄は、接続先サーバの第２候補の情報を格納するための領域である。
【００８４】
近接サーバ計算部３１１１は、エージェント１１１に従った位置座標認識部１１１１から近接サーバ一覧の問い合わせがあった際に、エージェント１１１が導入されたシンクライアント端末１０と、サーバテーブル３２１に登録された各仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）との物理的な距離を計算する。
【００８５】
ＤＢ管理部３１１３は、近接サーバ計算部３１１１の計算結果から、一番近いサーバを「ＰＲＩサーバ」（第１候補）、二番目に近いサーバを「ＳＥＣサーバ」（第２候補）、・・・、というように、導かれる距離の近い順に、接続先候補サーバテーブル３２２に登録する。
【００８６】
また、ＤＢ管理部３１１３は、エージェント１１１に従った回線品質監視部１１１２の回線品質監視によりマイグレーションが指示された際に、接続先候補サーバテーブル３２２のデータの更新を行う。
【００８７】
［接続先候補サーバテーブルのデータ更新方法］
接続先候補サーバテーブル３２２のデータの更新の方法として、以下のような方法が考えられる。
【００８８】
例えば、エージェント１１１の移行指示部１１１３から、最も回線品質の高い仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）であるサーバＡにマイグレーション指示がある場合、サーバＡを単純に接続先候補サーバテーブル３２２のＰＲＩサーバに移動させ、サーバＡの優先順位を一番高くする。なお、実際には、この方法に限定されず、任意のアルゴリズムを使用できる。
【００８９】
［ハードウェアの例示］
以下に、本発明に係る仮想マシン管理システムを実現するための具体的なハードウェアの例について説明する。
【００９０】
シンクライアント端末１０、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）、及び位置最適化サーバ（ＬＯサーバ）３０の例として、ＰＣ（パソコン）、アプライアンス（ａｐｐｌｉａｎｃｅ）、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。
【００９１】
他にも、シンクライアント端末１０の例として、携帯電話機、スマートフォン、スマートブック、カーナビ（カーナビゲーションシステム）、携帯型ゲーム機、家庭用ゲーム機、携帯型音楽プレーヤー、ハンディターミナル、ガジェット（電子機器）、双方向テレビ、デジタルチューナー、デジタルレコーダー、情報家電（ｉｎｆｏｒｍａｔｉｏｎ  ｈｏｍｅ  ａｐｐｌｉａｎｃｅ）、ＯＡ（Ｏｆｆｉｃｅ  Ａｕｔｏｍａｔｉｏｎ）機器、店頭端末・高機能コピー機等も考えられる。シンクライアント端末１０は、車両や船舶、航空機等の移動体に搭載されていても良い。
【００９２】
また、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）及び位置最適化サーバ（ＬＯサーバ）３０の例として、ネットワークスイッチ（ｎｅｔｗｏｒｋ  ｓｗｉｔｃｈ）、ルータ（ｒｏｕｔｅｒ）、プロキシ（ｐｒｏｘｙ）、ゲートウェイ（ｇａｔｅｗａｙ）、基地局、アクセスポイント等の中継装置や、ファイアウォール、ロードバランサ、帯域制御装置、セキュリティ監視制御装置通信等の中間装置（ミドルボックス）等も考えられる。
【００９３】
制御部１１、制御部２１、及び制御部３１の例として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ネットワークプロセッサ（ＮＰ：Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｏｒ）、マイクロプロセッサ（ｍｉｃｒｏｐｒｏｃｅｓｓｏｒ）、マイクロコントローラ（ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ）、或いは、専用の機能を有する半導体集積回路（ＬＳＩ：Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等が考えられる。
【００９４】
なお、制御部１１、制御部２１、及び制御部３１の各々の内部構成は、モジュール（ｍｏｄｕｌｅ）、コンポーネント（ｃｏｍｐｏｎｅｎｔ）、或いは専用デバイス、又はこれらの起動（呼出）プログラムでも良い。
【００９５】
記憶部１２、記憶部２２、及びＤＢ３２の例として、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ等の半導体記憶装置、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の補助記憶装置、又は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のリムーバブルディスクや、ＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等の記憶媒体（メディア）等が考えられる。また、バッファ（ｂｕｆｆｅｒ）やレジスタ（ｒｅｇｉｓｔｅｒ）等でも良い。
【００９６】
なお、ＤＢ３２は、周辺機器（外付けＨＤＤ等）や外部のサーバ装置（Ｗｅｂサーバやファイルサーバ等）に設置された記憶装置、或いは、ＤＡＳ（Ｄｉｒｅｃｔ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）、ＦＣ−ＳＡＮ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  −  Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）、ＩＰ−ＳＡＮ（ＩＰ  −  Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等を用いたストレージ装置でも良い。
【００９７】
通信部１３、通信部２３、及び通信部３３の例として、ネットワーク通信に対応した基板（マザーボード、Ｉ／Ｏボード）やチップ等の半導体集積回路、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等のネットワークアダプタや同様の拡張カード、アンテナ等の通信装置、接続口（コネクタ）等の通信ポート等が考えられる。
【００９８】
また、ネットワークの例として、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、無線ＬＡＮ（Ｗｉｒｅｌｅｓｓ  ＬＡＮ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、バックボーン（Ｂａｃｋｂｏｎｅ）、ケーブルテレビ（ＣＡＴＶ）回線、固定電話網、携帯電話網、ＷｉＭＡＸ（ＩＥＥＥ  ８０２．１６ａ）、３Ｇ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ）、専用線（ｌｅａｓｅ  ｌｉｎｅ）、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、シリアル通信回線、データバス等が考えられる。
【００９９】
但し、実際には、これらの例に限定されない。
【０１００】
［実施例］
図４〜図８を参照して、本発明の実施例について説明する。
【０１０１】
ここでは、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の例として、仮想マシン稼動サーバ２０−１と、仮想マシン稼動サーバ２０−２を示す。仮想マシン稼動サーバ２０−１は、データセンタ１に設置されている。仮想マシン稼動サーバ２０−２は、データセンタ２に設置されている。データセンタ１とデータセンタ２とは、異なる場所に存在する。シンクライアント端末１０は、最初、サイト１（第１設置場所）に設置されているものとする。
【０１０２】
（１）ステップＳ１０１
図４に示すように、シンクライアント端末１０は、ユーザの操作に応じて、データセンタ１（デフォルト設定）にある仮想マシン稼動サーバ２０−１の仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）に対してリモート画面転送接続を行う（図４のステップＳ１０１）。
【０１０３】
（２）ステップＳ１０２
その後、図５に示すように、シンクライアント端末１０は、例えばユーザの出張等により、遠隔地に物理的に場所を移動する（図５のステップＳ１０２）。ここでは、シンクライアント端末１０は、サイト１（第１設置場所）からサイト２（第２設置場所）に移動する。サイト１とサイト２とは、異なる場所に存在する。
【０１０４】
（３）ステップＳ１０３
シンクライアント端末１０は、物理的に場所を移動すると、エージェント１１１に従って、当該場所の位置座標を取得する（図５のステップＳ１０３）。すなわち、シンクライアント端末１０は、場所の移動後に、移動先の場所において、現在位置の位置座標を取得する。
【０１０５】
（４）ステップＳ１０４
シンクライアント端末１０は、エージェント１１１に従って、仮想マシンの移行先として環境が良好と思われる近接の（物理的に距離が近い）仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を位置最適化サーバ（ＬＯサーバ）３０に問い合わせる（図５のステップＳ１０４）。
【０１０６】
（５）ステップＳ１０５
位置最適化サーバ（ＬＯサーバ）３０は、その問い合わせに対する応答として、該仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報をシンクライアント端末１０に返信する（図５のステップＳ１０５）。
【０１０７】
（６）ステップＳ１０６
図６に示すように、シンクライアント端末１０は、エージェント１１１に従って、位置最適化サーバ（ＬＯサーバ）３０に対して仮想マシンの移行命令を発行する（図６のステップＳ１０６）。このとき、シンクライアント端末１０は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を参照して、最適な仮想マシン稼動サーバを特定し、位置最適化サーバ（ＬＯサーバ）３０に対して、特定した仮想マシン稼動サーバへの仮想マシンの移行命令を発行する。
【０１０８】
（７）ステップＳ１０７
位置最適化サーバ（ＬＯサーバ）３０は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に対して仮想マシンの移行命令を発行する（図６のステップＳ１０７）。
【０１０９】
（８）ステップＳ１０８
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）は、仮想マシンのマイグレーション（ｍｉｇｒａｔｉｏｎ：プログラムやデータの移行・変換）を実行する（図６のステップＳ１０８）。
【０１１０】
（９）ステップＳ１０９
図７に示すように、シンクライアント端末１０は、マイグレーション先の仮想マシンに対して画面転送接続を行う（図７のステップＳ１０９）。
【０１１１】
（１０）ステップＳ１１０
図８に示すように、シンクライアント端末１０は、エージェント１１１に従って、回線品質監視を行い、回線品質が悪く快適なデスクトップ環境が提供できない場合には、別の移行先候補があるか検索し、別の移行先候補がある場合、その候補に対して回線品質確認を行う（図８のステップＳ１１０）。
【０１１２】
例えば、シンクライアント端末１０は、別の移行先候補として候補Ａを検出した場合、その候補Ａに対する品質確認の結果、候補Ａとの回線品質が良好である場合、位置最適化サーバ（ＬＯサーバ）３０に指示して、候補Ａ上に仮想マシンの移行を行う。
【０１１３】
これにより、シンクライアント端末１０から低遅延・高品質の回線を経由する仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）上で仮想マシンを実行することができ、快適なデスクトップ環境が提供できる。
【０１１４】
［仮想マシン管理処理］
次に、図９Ａ、図９Ｂ、及び図９Ｃのシーケンス図を参照して、本実施形態に係る仮想マシン管理システムの動作（仮想マシン管理処理）について説明する。
【０１１５】
（１）ステップＳ２０１
ユーザは、シンクライアント端末１０からデータセンタ１（デフォルト設定）の仮想マシンに対してリモート画面転送接続を行う。その後、例えば、ユーザの出張等で、シンクライアント端末１０が遠隔地に物理的に場所移動する。シンクライアント端末１０の制御部１１は、エージェント１１１に従って、シンクライアント端末１０が物理的に場所を移動すると、位置座標認識部１１１１として機能し、位置座標情報を取得する。
【０１１６】
（２）ステップＳ２０２
シンクライアント端末１０の制御部１１は、通信部１３を介して、仮想マシンの移行先として環境が良好と思われる近接の（物理的に距離が近い）仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を位置最適化サーバ（ＬＯサーバ）３０に問い合わせる。その際、制御部１１は、シンクライアント端末１０の位置座標情報を位置最適化サーバ（ＬＯサーバ）３０に通知する。
【０１１７】
（３）ステップＳ２０３
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、通信部３３を介して、シンクライアント端末１０（エージェント１１１）から通知された位置座標情報を受信し、該位置座標情報をキーとするデータが接続先候補サーバテーブル３２２に存在するかどうかを調査する。
【０１１８】
（４）ステップＳ２０４
データが存在する場合、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、既にその座標から接続したシンクライアント端末１０（エージェント１１１）が存在すると判断し、その移行先候補のデータをシンクライアント端末１０（エージェント１１１）への応答とする。移行先候補のデータは、移行先候補の一覧情報でも良い。
【０１１９】
（５）ステップＳ２０５
データが存在しない場合、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、近接サーバ計算部３１１１として機能し、通知された位置座標情報とサーバテーブル３２１のデータを基に、各仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）との距離計算を行う。制御部３１は、演算結果として移行先候補のデータを作成し、ＤＢ管理部３１１３として機能し、その移行先候補のデータをＤＢ３２に登録し、その移行先候補のデータをシンクライアント端末１０（エージェント１１１）への応答とする。
【０１２０】
（６）ステップＳ２０６
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、シンクライアント端末１０（エージェント１１１）への応答として、通信部３３を介して、移行先候補のデータをシンクライアント端末１０（エージェント１１１）に通知する。
【０１２１】
（７）ステップＳ２０７
シンクライアント端末１０の制御部１１は、通知された移行先候補のデータを基に、移行先候補の一覧情報（一覧情報１２２）を記憶部１２に格納する。制御部１１は、移行先候補がある場合、次の処理（ステップＳ２０８）に進み、移行先候補がない場合、現状のリモート画面転送接続を維持する。
【０１２２】
（８）ステップＳ２０８
シンクライアント端末１０の制御部１１は、移行指示部１１１３として機能し、位置最適化サーバ（ＬＯサーバ）３０に対して仮想マシンの移行命令を発行する。
【０１２３】
（９）ステップＳ２０９
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、移行指示部３１１２として機能し、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に対して仮想マシンの移行命令を発行する。
【０１２４】
（１０）ステップＳ２１０
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、仮想マシン管理部２１２３として機能し、位置最適化サーバ（ＬＯサーバ）３０からの仮想マシンの移行命令に応じて、仮想マシンのマイグレーションを実行する。
【０１２５】
（１１）ステップＳ２１１
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、位置最適化サーバ（ＬＯサーバ）３０に対して仮想マシンの移行完了を通知する。
【０１２６】
（１２）ステップＳ２１２
位置最適化サーバ（ＬＯサーバ）３０は、シンクライアント端末１０（エージェント１１１）に対して仮想マシンの移行完了を通知する。
【０１２７】
（１３）ステップＳ２１３
マイグレーションによりタイムアウト等で画面転送接続が切断された場合、ユーザは、シンクライアント端末１０からマイグレーション先の仮想マシンに対して画面転送接続を行う。シンクライアント端末１０の制御部１１は、回線品質監視部１１１２として機能し、応答として、通信部１３を介して、回線品質監視用パケットを仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に送信し、回線品質確認を行う。
【０１２８】
（１４）ステップＳ２１４
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、回線品質監視応答部２１１として機能し、通信部２３を介して、シンクライアント端末１０からの回線品質監視用パケットに対して応答する。
【０１２９】
（１５）ステップＳ２１５
シンクライアント端末１０の制御部１１は、回線品質監視部１１１２として機能し、通信部１３を介して、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の回線品質監視応答部２１１からの応答を受信すると、回線品質（回線遅延・回線帯域）の測定・統計を行う。回線品質が予め指定された閾値よりも低下し、快適なデスクトップ環境が提供できない場合には、次の処理（ステップＳ２１７）を実行する。
【０１３０】
（１６）ステップＳ２１６
シンクライアント端末１０の制御部１１は、記憶部１２の一覧情報１２２に別の移行先候補として候補Ａがある場合、回線品質監視部１１１２として機能し、通信部１３を介して、その候補Ａに対して回線品質監視用パケットを送信し、回線品質確認を行う。なお、候補Ａも、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の１つである。
【０１３１】
（１７）ステップＳ２１７
その候補Ａの制御部２１は、回線品質監視応答部２１１として機能し、通信部２３を介して、シンクライアント端末１０からの回線品質監視用パケットに対して応答する。
【０１３２】
（１８）ステップＳ２１８
シンクライアント端末１０の制御部１１は、回線品質監視部１１１２として機能し、通信部１３を介して、その候補Ａの回線品質監視応答部２１１からの応答を受信すると、回線品質（回線遅延・回線帯域）の測定・統計を行う。回線品質確認の結果、その候補Ａとの回線品質が良い場合は、次の処理（ステップＳ２１９）へ進む。その候補Ａとの回線品質が悪い場合は、記憶部１２の一覧情報１２２の更に別の移行先候補に対して繰り返し品質確認を行い、最も品質が良い接続先を探す。
【０１３３】
（１９）ステップＳ２１９
シンクライアント端末１０の制御部１１は、移行指示部１１１３として機能し、位置最適化サーバ（ＬＯサーバ）３０に対して、その候補Ａ上に仮想マシンの移行命令を発行する。
【０１３４】
（２０）ステップＳ２２０
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、移行指示部３１１２として機能し、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に対して、その候補Ａ上に仮想マシンの移行命令を発行する。
【０１３５】
（２１）ステップＳ２２１
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、仮想マシン管理部２１２３として機能し、候補Ａへの仮想マシンのマイグレーションを実行する。
【０１３６】
（２２）ステップＳ２２２
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、位置最適化サーバ（ＬＯサーバ）３０に対して仮想マシンの移行完了を通知する。
【０１３７】
（２３）ステップＳ２２３
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、ＤＢ管理部３１１３として機能し、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）からの仮想マシン移行完了通知を基に、接続先候補テーブル３２２の移行先候補の順序を更新する。
【０１３８】
（２４）ステップＳ２２４
位置最適化サーバ（ＬＯサーバ）３０は、シンクライアント端末１０（エージェント１１１）に対して仮想マシンの移行完了を通知する。
【０１３９】
その後、マイグレーションによりタイムアウト等で画面転送接続が切断された場合、ユーザは、シンクライアント端末１０からマイグレーション先の仮想マシンに対して画面転送接続を行う。
【０１４０】
［補足］
なお、実際には、ステップＳ２０７及びステップＳ２０８の動作は、シンクライアント端末１０の制御部１１の代わりに、位置最適化サーバ（ＬＯサーバ）３０の制御部３１が行っても良い。すなわち、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、ステップＳ２０２での接続先サーバの問い合わせから、ステップＳ２１２の仮想マシン移行完了通知まで、一連の動作として行うことも可能である。この場合、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、シンクライアント端末１０の位置座標情報を基に、移行先の仮想マシン稼動サーバを特定する。
【０１４１】
また、ステップＳ２１３、ステップＳ２１５及びステップＳ２１６、ステップＳ２１８及びステップＳ２１９の動作についても、シンクライアント端末１０の制御部１１の代わりに、位置最適化サーバ（ＬＯサーバ）３０の制御部３１が行っても良い。この場合、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、シンクライアント端末１０と仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の双方に対して、回線品質確認を行っても良い。
【０１４２】
［応用例］
図１０を参照して、本発明の応用例について説明する。
【０１４３】
本実施形態の実施例の説明では、シンクライアント端末１０の移動後に位置座標情報を得る手順で記載しているが、例えば「出張」のように移動先が判明している場合は、移動前に下記の手順を行うことで移動前に事前にマイグレーションを完了しておくことも可能である。
【０１４４】
（１）ステップＳ３０１
シンクライアント端末１０の制御部１１は、エージェント１１１に従って、仮想マシンの移行先として、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を、通信部１３を介して位置最適化サーバ（ＬＯサーバ）３０に問い合わせる。このとき、シンクライアント端末１０の制御部１１は、範囲（出張先の地域等）をある程度絞り込んで、その範囲内にある仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を問い合わせても良い。或いは、シンクライアント端末１０の制御部１１は、位置最適化サーバ（ＬＯサーバ）３０に、出張先の位置座標情報を通知して、この位置座標の近くにある仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を問い合わせても良い。
【０１４５】
（２）ステップＳ３０２
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、問い合わせに対する応答して、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の一覧情報を、シンクライアント端末１０（エージェント１１１）に送信する。
【０１４６】
（３）ステップＳ３０３
ユーザは、一覧情報を参照し、出張先に近い（デスクトップ接続環境が良好と思われる）サーバを選択する。このとき、シンクライアント端末１０は、エージェント１１１に従って、ユーザの出張先に関する情報と一覧情報を基に、ユーザの出張先に近いサーバを自動的に選択しても良い。これにより、シンクライアント端末１０の制御部１１は、出張先に近い（デスクトップ接続環境が良好と思われる）サーバを特定する。
【０１４７】
（４）ステップＳ３０４
シンクライアント端末１０の制御部１１は、エージェント１１１に従って、位置最適化サーバ（ＬＯサーバ）３０に対して、出張先に近い（デスクトップ接続環境が良好と思われる）サーバにマイグレーションを行うように指示する。出張先に近い（デスクトップ接続環境が良好と思われる）サーバは、ユーザが選択したサーバでも、シンクライアント端末１０（エージェント１１１）が児童選択したサーバでも良い。このとき、シンクライアント端末１０の制御部１１は、位置最適化サーバ（ＬＯサーバ）３０に対して、マイグレーションを行う日時（例えば出張先への到着予定時間の直前）を指定して、指定した日時にマイグレーションを行うように指示しても良い。
【０１４８】
（５）ステップＳ３０５
位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）に、出張先に近い（デスクトップ接続環境が良好と思われる）サーバにマイグレーションを行うように指示する。このとき、位置最適化サーバ（ＬＯサーバ）３０の制御部３１は、シンクライアント端末１０から指定された日時に、出張先に近い（デスクトップ接続環境が良好と思われる）サーバにマイグレーションを行うように指示しても良い。
【０１４９】
（６）ステップＳ３０６
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、仮想マシン管理部２１２３として機能し、位置最適化サーバ（ＬＯサーバ）３０からの仮想マシンの移行命令に応じて、仮想マシンのマイグレーションを実行する。
【０１５０】
（７）ステップＳ３０７
仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）の制御部２１は、位置最適化サーバ（ＬＯサーバ）３０に対して仮想マシンの移行完了を通知する。
【０１５１】
（８）ステップＳ３０８
位置最適化サーバ（ＬＯサーバ）３０は、シンクライアント端末１０（エージェント１１１）に対して仮想マシンの移行完了を通知する。
【０１５２】
以降の手順は、図９Ｂに示すステップＳ２１３以降の手順と同様である。
【０１５３】
上記の手順を行った場合、移動前にマイグレーションを完了できるため、移動先での画面転送接続を快適に行うことができる。
【０１５４】
［本実施形態の効果］
本実施形態では、クライアント端末の位置座標情報から導いた最近接位置仮想マシン稼動サーバ上に仮想マシンをマイグレーションするというように構成されているため、回線遅延の影響が少ない仮想マシン稼動サーバに接続できる。
【０１５５】
また、本実施形態では、更に、回線品質監視によって、より良好な環境の仮想マシン稼動サーバ上に仮想マシンをマイグレーションするというように構成されているため、回線品質が悪化した場合もデスクトップ環境を維持できる。
【０１５６】
＜第２実施形態＞
以下に、本発明の第２実施形態について説明する。
本発明は、仮想マシン稼動サーバに限らず、ＶＴＮ（Ｖｉｒｔｕａｌ  Ｔｅｎａｎｔ  Ｎｅｔｗｏｒｋ）にも応用可能と考えられる。
【０１５７】
ＶＴＮは、例えばオープンフロー（ＯｐｅｎＦｌｏｗ）におけるＯＦＣ（ＯｐｅｎＦｌｏｗ  Ｃｏｎｔｒｏｌｌｅｒ）等のコントローラ上にテナント単位で構築された仮想的なネットワークである。
【０１５８】
オープンフローの詳細については、非特許文献１に記載されている。
【０１５９】
コントローラ上に構築したＶＴＮを物理ネットワークにマッピングすることにより、物理ネットワークでのユーザトラフィック伝送が可能となる。
【０１６０】
［システム構成］
図１１Ａを参照して、本発明の第２実施形態に係る仮想マシン管理システムの構成例について説明する。
【０１６１】
本発明の第２実施形態に係る仮想マシン管理システムは、シンクライアント端末１０と、位置最適化サーバ（ＬＯサーバ）３０と、コントローラ４０（４０−ｋ、ｋ＝１〜ｘ：ｘは任意）を含む。
【０１６２】
図１１Ｂ、図１１Ｃに示すように、シンクライアント端末１０、及び位置最適化サーバ（ＬＯサーバ）３０については、基本的に、第１実施形態と同様である。
【０１６３】
シンクライアント端末１０、位置最適化サーバ（ＬＯサーバ）３０、及びコントローラ４０（４０−ｋ、ｋ＝１〜ｘ）は、ネットワークを介して接続されている。シンクライアント端末１０、位置最適化サーバ（ＬＯサーバ）３０、及びコントローラ４０（４０−ｋ、ｋ＝１〜ｘ）の各々は、物理ネットワーク上に存在する物理ノードである。
【０１６４】
図示しないが、コントローラ４０（４０−ｋ、ｋ＝１〜ｘ）の各々は、管理対象であるＯＦＳ（ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ）等のスイッチとセキュアチャネル（Ｓｅｃｕｒｅ  Ｃｈａｎｎｅｌ）で接続されている。スイッチは、物理ネットワークを形成する。なお、スイッチは、物理マシン上で稼動する仮想マシンにより実現された仮想スイッチでも良い。
【０１６５】
コントローラ４０（４０−ｋ、ｋ＝１〜ｘ）の各々は、ＶＴＮを基に、スイッチのフローテーブルを操作し、スイッチの挙動を制御する。コントローラ４０（４０−ｋ、ｋ＝１〜ｘ）の例として、ＰＣ等の計算機を想定している。
【０１６６】
フローテーブルとは、所定のマッチ条件（ルール）に適合するパケット（通信データ）に対して行うべき所定の動作（アクション）を定義したフローエントリ（Ｆｌｏｗ  ｅｎｔｒｙ）が登録されたテーブルである。
【０１６７】
フローエントリのルールに適合するパケット群（パケット系列）をフロー（Ｆｌｏｗ）と呼ぶ。
【０１６８】
フローエントリのルールは、パケットの各プロトコル階層のヘッダ領域に含まれる宛先アドレス（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）、送信元アドレス（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）、宛先ポート（Ｄｅｓｔｉｎａｔｉｏｎ  Ｐｏｒｔ）、送信元ポート（Ｓｏｕｒｃｅ  Ｐｏｒｔ）のいずれか又は全てを用いた様々な組み合わせにより定義され、区別可能である。なお、上記のアドレスには、ＭＡＣアドレス（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ａｄｄｒｅｓｓ）やＩＰアドレス（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓ）を含むものとする。また、上記に加えて、入口ポート（Ｉｎｇｒｅｓｓ  Ｐｏｒｔ）の情報も、フローエントリのルールとして使用可能である。また、フローエントリのルールとして、フローを示すパケットのヘッダ領域の値の一部（又は全部）を、正規表現やワイルドカード「＊」等で表現したものを設定することもできる。
【０１６９】
フローエントリのアクションは、「特定のポートに出力する」、「廃棄する」、「ヘッダを書き換える」といった動作である。
【０１７０】
スイッチは、フローエントリのルールに適合するパケット（フロー）に対して、フローエントリのアクションを実行する。
【０１７１】
［コントローラの構成］
図１１Ｄを参照して、コントローラ４０（４０−ｉ、ｉ＝１〜ｎ）の構成例について説明する。
【０１７２】
コントローラ４０（４０−ｉ、ｉ＝１〜ｎ）の各々は、制御部４１と、記憶部４２と、通信部４３を備える。
【０１７３】
制御部４１は、該コントローラ４０の内部構成全体の制御を行う。
【０１７４】
記憶部４２は、オープンフローやＶＴＮで用いられるプログラムや各種情報を保持する。
【０１７５】
通信部４３は、ネットワークを介して、外部との通信を行う。
【０１７６】
［コントローラの制御部の詳細］
続いて、コントローラ４０（４０−ｉ、ｉ＝１〜ｎ）の制御部４１の詳細に土江説明する
【０１７７】
制御部４１は、回線品質監視応答部４１１と、ＶＴＮ４１２を備える。
【０１７８】
回線品質監視応答部４１１は、エージェント１１１の回線品質監視部１１１２からの回線品質確認要求に対して応答する。ここでは、回線品質監視応答部４１１は、エージェント１１１の回線品質監視部１１１２から回線品質監視用パケットを受信し、応答のパケットを返信する。すなわち、回線品質監視応答部４１１は、基本的に、第１実施形態における回線品質監視応答部２１１と同様である。
【０１７９】
ＶＴＮ４１２は、コントローラ４０上に構築されたテナント単位の仮想ネットワークである。
【０１８０】
［ＶＴＮの詳細］
続いて、ＶＴＮ４１２の詳細について説明する。
【０１８１】
ＶＴＮ４１２は、ＶＴＮノード４１２１と、仮想インタフェース４１２２と、仮想リンク４１２３を含む。
【０１８２】
ＶＴＮノード４１２１は、仮想ネットワーク上に存在するノードである。ＶＴＮノード４１２１の例として、仮想Ｌ２スイッチや仮想Ｌ３スイッチ等の仮想スイッチ（仮想ＳＷ）、仮想外部ネットワーク、仮想サーバ、仮想ファイアウォール（仮想ＦＷ）、仮想ロードバランサ（仮想ＬＢ）等が考えられる。
【０１８３】
仮想インタフェース４１２２は、ＶＴＮノード４１２１における通信用インタフェースに相当する。仮想インタフェース４１２２の例として、仮想ポート等が考えられる。
【０１８４】
仮想リンク４１２３は、仮想インタフェース４１２２同士を接続するリンクである。
【０１８５】
ＶＴＮ４１２は、ＶＴＮノード４１２１の仮想インタフェース４１２２間を、仮想リンク４１２３で接続することにより構築される。
【０１８６】
［実施例］
図１２に示すように、本実施形態では、シンクライアント端末の移動が発生した場合、ＶＴＮで構築された仮想ネットワークを、より近接したデータセンタにマイグレーションすることによって、端末から仮想ネットワークを構成する要素（スイッチ等）へのリモート接続を快適に行うことができる。
【０１８７】
［補足］
なお、実際には、ＶＴＮ４１２は、図１に示す仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）により実現しても良い。例えば、仮想マシン２１２２（２１２２−ｊ、ｊ＝１〜ｍ）が、図１に示すゲストＯＳ２１２１（２１２１−ｊ、ｊ＝１〜ｍ）の代わりに、ＶＴＮ４１２に関するソフトウェアを稼動させても良い。すなわち、コントローラ４０（４０−ｉ、ｉ＝１〜ｎ）は、仮想マシン稼動サーバ２０（２０−ｉ、ｉ＝１〜ｎ）でも良い。
【０１８８】
＜各実施形態の関係＞
なお、上記の各実施形態は、組み合わせて実施することも可能である。
【０１８９】
＜まとめ＞
以上のように、本発明では、ネットワーク上の位置最適化サーバが、クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理し、該クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの該仮想マシンの移行（マイグレーション）を指示する。このとき、位置最適化サーバは、該仮想マシンが稼動している移行元（現在）の仮想マシン稼動サーバと、移行先の仮想マシン稼動サーバの両方に、該仮想マシンの移行に関する指示を行う。
【０１９０】
本発明では、クライアント端末の位置座標情報から最適なマイグレーション先仮想マシン稼動サーバを決定し、仮想マシンマイグレーションを実行することで、安定したデスクトップ環境を提供する。
【０１９１】
また、回線品質監視を行い回線品質が劣化した際にも最適なマイグレーション先仮想マシン稼動サーバを決定し、切り替えることにより、デスクトップ環境の不安定化を抑止する。
【０１９２】
本発明では、クライアント端末の位置座標情報から導いた最近接位置仮想マシン稼動サーバ上に仮想マシンをマイグレーションするため、回線遅延の影響が少ない仮想マシン稼動サーバに接続できる。
【０１９３】
また、本発明では、回線品質監視によって、より良好な環境の仮想マシン稼動サーバ上に仮想マシンをマイグレーションするため、回線品質が悪化した場合もデスクトップ環境を維持できる。
【０１９４】
＜付記＞
上記の実施形態の一部又は全部は、以下の付記のように記載することも可能である。但し、実際には、以下の記載例に限定されない。
【０１９５】
（付記１）
クライアント端末と、
クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバと、
クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの仮想マシンの移行（マイグレーション）を指示する位置最適化サーバと
を含む
仮想マシン管理システム。
【０１９６】
（付記２）
付記１に記載の仮想マシン管理システムであって、
クライアント端末は、
自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせる装置と、
位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信する装置と、
一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行を、位置最適化サーバに要求する装置と
を具備する
仮想マシン管理システム。
【０１９７】
（付記３）
付記２に記載の仮想マシン管理システムであって、
位置最適化サーバは、
クライアント端末から移行先の仮想マシン稼動サーバの問い合わせを受けた際、仮想マシン稼動サーバの管理情報を参照し、クライアント端末に関する位置座標情報を基に、移行先候補の有無を確認する装置と、
移行先候補があれば、該移行先候補の情報を一覧情報とする装置と、
移行先候補がなければ、クライアント端末に関する位置座標情報を基に、移行先候補を算出し、算出された移行先候補の情報を一覧情報とする装置と、
一覧情報を基に特定された移行先の仮想マシン稼動サーバへの仮想マシンの移行を指示する装置と、
特定された仮想マシン稼動サーバから仮想マシンの移行完了通知を受信する装置と、
仮想マシンの移行完了通知に応じて、仮想マシン稼動サーバの管理情報を更新する装置と、
仮想マシンの移行完了通知をクライアント端末に送信する装置と
を具備する
仮想マシン管理システム。
【０１９８】
（付記４）
付記３に記載の仮想マシン管理システムであって、
位置最適化サーバは、
クライアント端末の移動前に、クライアント端末の移動先の位置座標情報を予め取得する装置と、
移動先の位置座標情報に応じた仮想マシン稼動サーバへの仮想マシンの移行を指示する装置と
を更に具備する
仮想マシン管理システム。
【０１９９】
（付記５）
付記１乃至４のいずれか一項に記載の仮想マシン管理システムであって、
クライアント端末及び位置最適化サーバのうち少なくとも一方は、移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行い、回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行命令を発行する
仮想マシン管理システム。
【０２００】
（付記６）
付記１乃至５のいずれか一項に記載の仮想マシン管理システムであって、
仮想マシン稼動サーバは、オープンフロー（ＯｐｅｎＦｌｏｗ）におけるコントローラであり、
仮想マシンは、コントローラ上にテナント単位で構築された仮想的なネットワークであるＶＴＮ（Ｖｉｒｔｕａｌ  Ｔｅｎａｎｔ  Ｎｅｔｗｏｒｋ）に関するサービスを提供する
仮想マシン管理システム。
【０２０１】
（付記７）
クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理する装置と、
クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの仮想マシンの移行を指示する装置と
を具備する
位置最適化サーバ。
【０２０２】
（付記８）
付記７に記載の位置最適化サーバであって、
クライアント端末から移行先の仮想マシン稼動サーバの問い合わせを受けた際、仮想マシン稼動サーバの管理情報を参照し、クライアント端末に関する位置座標情報を基に、移行先候補の有無を確認する装置と、
移行先候補があれば、該移行先候補の情報を一覧情報とする装置と、
移行先候補がなければ、クライアント端末に関する位置座標情報を基に、移行先候補を算出し、算出された移行先候補の情報を一覧情報とする装置と、
一覧情報を基に特定された移行先の仮想マシン稼動サーバへの仮想マシンの移行を指示する装置と、
特定された仮想マシン稼動サーバから仮想マシンの移行完了通知を受信する装置と、
仮想マシンの移行完了通知に応じて、仮想マシン稼動サーバの管理情報を更新する装置と、
仮想マシンの移行完了通知をクライアント端末に送信する装置と
を更に具備する
位置最適化サーバ。
【０２０３】
（付記９）
付記８に記載の位置最適化サーバであって、
クライアント端末の移動前に、クライアント端末の移動先の位置座標情報を予め取得する装置と、
移動先の位置座標情報に応じた仮想マシン稼動サーバへの仮想マシンの移行を指示する装置と
を更に具備する
位置最適化サーバ。
【０２０４】
（付記１０）
付記７乃至９のいずれか一項に記載の位置最適化サーバであって、
移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行う装置と、
回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行命令を発行する装置と
を更に具備する
位置最適化サーバ。
【０２０５】
（付記１１）
自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせる装置と、
位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信する装置と、
一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行を、位置最適化サーバに要求する装置と
を具備する
クライアント端末。
【０２０６】
（付記１２）
付記１１に記載のクライアント端末であって、
移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行う装置と、
回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行命令を発行する装置と
を更に具備する
クライアント端末。
【０２０７】
（付記１３）
計算機により実施される仮想マシン管理方法であって、
クライアント端末にサービスを提供する仮想マシンが稼動する仮想マシン稼動サーバを管理することと、
クライアント端末に関する位置座標情報に応じた移行先の仮想マシン稼動サーバへの仮想マシンの移行を指示することと
を含む
仮想マシン管理方法。
【０２０８】
（付記１４）
付記１３に記載の仮想マシン管理方法であって、
クライアント端末から移行先の仮想マシン稼動サーバの問い合わせを受けた際、仮想マシン稼動サーバの管理情報を参照し、クライアント端末に関する位置座標情報を基に、移行先候補の有無を確認することと、
移行先候補があれば、該移行先候補の情報を一覧情報とすることと、
移行先候補がなければ、クライアント端末に関する位置座標情報を基に、移行先候補を算出し、算出された移行先候補の情報を一覧情報とすることと、
一覧情報を基に特定された移行先の仮想マシン稼動サーバへの仮想マシンの移行を指示することと、
特定された仮想マシン稼動サーバから仮想マシンの移行完了通知を受信することと、
仮想マシンの移行完了通知に応じて、仮想マシン稼動サーバの管理情報を更新することと、
仮想マシンの移行完了通知をクライアント端末に送信することと
を更に含む
仮想マシン管理方法。
【０２０９】
（付記１５）
付記１４に記載の仮想マシン管理方法であって、
クライアント端末の移動前に、クライアント端末の移動先の位置座標情報を予め取得することと、
移動先の位置座標情報に応じた仮想マシン稼動サーバへの仮想マシンの移行を指示することと
を更に含む
仮想マシン管理方法。
【０２１０】
（付記１６）
付記１３乃至１５のいずれか一項に記載の仮想マシン管理方法であって、
移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行うことと、
回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行命令を発行することと
を更に含む
仮想マシン管理方法。
【０２１１】
（付記１７）
自身の位置座標情報を取得し、該位置座標情報を基に、位置最適化サーバに移行先の仮想マシン稼動サーバを問い合わせるステップと、
位置最適化サーバから移行先の仮想マシン稼動サーバの候補の一覧情報を受信するステップと、
一覧情報を基に、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行を、位置最適化サーバに要求するステップと
を計算機に実行させるための
プログラム。
【０２１２】
（付記１８）
付記１７に記載のプログラムであって、
移行先の仮想マシン稼動サーバの候補に回線品質監視用パケットを送信し、応答を受信し、該応答に基づいて回線品質の測定及び統計を行うステップと、
回線品質の測定及び統計の結果、移行先の仮想マシン稼動サーバを特定し、特定された仮想マシン稼動サーバへの仮想マシンの移行命令を発行するステップと
を更に計算機に実行させるための
プログラム。
【０２１３】
＜備考＞
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
【０２１４】
なお、本出願は、日本出願番号２０１１−０７０４８１に基づく優先権を主張するものであり、日本出願番号２０１１−０７０４８１における開示内容は引用により本出願に組み込まれる。
【図１Ａ】
2012132808.tif 000003
【図１Ｂ】
2012132808.tif 000004
【図１Ｃ】
2012132808.tif 000005
【図１Ｄ】
2012132808.tif 000006
【図２】
2012132808.tif 000007
【図３】
2012132808.tif 000008
【図４】
2012132808.tif 000009
【図５】
2012132808.tif 000010
【図６】
2012132808.tif 000011
【図７】
2012132808.tif 000012
【図８】
2012132808.tif 000013
【図９Ａ】
2012132808.tif 000014
【図９Ｂ】
2012132808.tif 000015
【図９Ｃ】
2012132808.tif 000016
【図１０】
2012132808.tif 000017
【図１１Ａ】
2012132808.tif 000018
【図１１Ｂ】
2012132808.tif 000019
【図１１Ｃ】
2012132808.tif 000020
【図１１Ｄ】
2012132808.tif 000021
【図１２】
2012132808.tif 000022
【国際調査報告】
2012132808.tif 000023
2012132808.tif 000024
2012132808.tif 000025
2012132808.tif 000026