(57)【要約】【課題】広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が小さいコンピュータを選択して仮想マシンを具現化する仮想サーバ編成方法を提供する。【解決手段】複数のコンピュータ５および、各コンピュータ５上に仮想マシン６を生成して起動させる仮想リソース管理部１を含む仮想サーバ編成システムＳにおいて、クライアント端末７からのサービス要求を受け付けると、クライアント端末７とコンピュータ５との応答遅延の測定を指示し、コンピュータ５のうち応答遅延が最小のものを判定し、仮想リソース管理部１に対して、応答遅延が最小と判定したコンピュータ５上への仮想マシン６の生成および起動を指示し、コンピュータ５上に生成された仮想マシン６のアドレスをクライアント端末７に通知する。【選択図】図１
2019022078.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンピュータおよび、各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部を含む仮想サーバ編成システムが実行する仮想サーバ編成方法であって、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示し、
各前記コンピュータのうち応答遅延が最小のコンピュータを判定し、
前記仮想リソース管理部に対して、応答遅延が最小と判定した前記コンピュータ上への仮想マシンの生成および起動を指示し、
前記コンピュータ上に生成された仮想マシンのアドレスを前記端末に通知する、
ことを特徴とする仮想サーバ編成方法。
【請求項２】
複数のコンピュータおよび、各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部を含む仮想サーバ編成システムが実行する仮想サーバ編成方法であって、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示し、
各前記コンピュータのうち応答遅延が所定値より小さいコンピュータを判定したならば、前記仮想リソース管理部に対して、応答遅延が前記所定値より小さいと判定した前記コンピュータ上への仮想マシンの生成および起動を指示し、
前記コンピュータ上に生成された仮想マシンのアドレスを前記端末に通知する、
ことを特徴とする仮想サーバ編成方法。
【請求項３】
各前記コンピュータは、前記端末との間の応答遅延を測定する、
ことを特徴とする請求項１または２に記載の仮想サーバ編成方法
【請求項４】
複数のコンピュータと、
各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部と、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示する遅延測定指示部と、
各前記コンピュータのうち応答遅延が最小のコンピュータを判定する判定部と、
前記仮想リソース管理部に対して、前記判定部が判定したコンピュータ上への仮想マシンの生成および起動を指示する仮想マシン生成指示部と、
前記仮想マシン生成指示部の指示によって生成された仮想マシンのアドレスを前記端末に通知するサービス宛先通知部と、
を備えることを特徴とする仮想サーバ編成システム。
【請求項５】
複数のコンピュータと、
各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部と、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示する遅延測定指示部と、
各前記コンピュータのうち応答遅延が所定値より小さいコンピュータを判定する判定部と、
前記判定部が、応答遅延が前記所定値より小さいコンピュータを判定すると、前記仮想リソース管理部に対して、前記判定部が判定したコンピュータ上への仮想マシンの生成および起動を指示する仮想マシン生成指示部と、
前記仮想マシン生成指示部の指示によって生成された仮想マシンのアドレスを前記端末に通知するサービス宛先通知部と、
を備えることを特徴とする仮想サーバ編成システム。
【請求項６】
各前記コンピュータは、前記端末との間の応答遅延を測定する遅延測定部を備える、
ことを特徴とする請求項４または５に記載の仮想サーバ編成システム。
【請求項７】
前記遅延測定指示部は、各前記コンピュータが備える前記遅延測定部に対して前記端末との間の応答遅延の測定を指示する、
ことを特徴とする請求項６に記載の仮想サーバ編成システム。
【請求項８】
前記遅延測定部は、前記端末に対してｐｉｎｇを送信して応答遅延を測定する、
ことを特徴とする請求項６に記載の仮想サーバ編成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想サーバ編成方法および仮想サーバ編成システムに関する。
【背景技術】
【０００２】
《サーバ仮想化技術》
近年のクラウドコンピューティングによるサービスでは、集約効率を高めるために仮想化技術を用いることが一般的である。仮想化技術は、アプリケーションサービスの実行環境を仮想マシン単位で扱うことで、異なるコンピュータリソース上に簡易かつ短時間でサービス環境を展開することを可能にする。仮想マシンの生成、削除等、仮想リソース管理を担うソフトウェアとして、ＯｐｅｎＳｔａｃｋ（非特許文献１参照）が注目されている。
以降、仮想マシンをＶＭ（Virtual Machine）とも記載する。
【０００３】
クラウドコンピューティングによる仮想サーバ編成システムの構成を考える。
図６は、比較例に係る仮想サーバ編成システムＳの構成例を示す機能ブロック図である。
【０００４】
仮想サーバ編成システムＳは、仮想リソース管理部１、コンピュータ５ａ〜５ｄ、クライアント端末７ａ〜７ｄから構成される。
コンピュータ５ａはＶＭ６ａとＶＭ６ｂを具現化し、コンピュータ５ｂはＶＭ６ｃとＶＭ６ｄを具現化し、コンピュータ５ｃはＶＭ６ｅとＶＭ６ｆを具現化し、コンピュータ５ｄはＶＭ６ｇとＶＭ６ｈを具現化する。
以降、コンピュータ５ａ〜５ｄを単にコンピュータ５、ＶＭ６ａ〜６ｈを単にＶＭ６と記載することもある。
【０００５】
仮想リソース管理部１は、ＯｐｅｎＳｔａｃｋに代表される仮想リソース管理ソフトウェアであり、例えばコンピュータ５上のＶＭ６を一元管理する。仮想サーバ編成システムＳは、サービスアプリケーションをＶＭ６という単位で、それぞれのコンピュータ５に配備する構成をとる。それぞれのコンピュータで実行されるサービスは、各クライアント端末７と、一対一または一対多で結びつく。
クライアント端末７ａは、同じロケーション９ａにあるコンピュータ５ａ上のＶＭ６ｂにアクセスし、サービスの提供を受けている。クライアント端末７ｂは、同じロケーション９ｂにあるコンピュータ５ｂ上のＶＭ６ｄにアクセスし、サービスの提供を受けている。クライアント端末７ｃ，７ｄは、同じロケーション９ｃにあるコンピュータ５ｃ上のＶＭ６ｆにアクセスし、サービスの提供を受けている。
【０００６】
図７は、比較例に係る仮想サーバ編成システムＳにおける、ＶＭ生成指示からクライアント端末７ａによるサービスアクセスまでの流れを示したシーケンス図である。
比較例の仮想サーバ編成システムＳにおいては、クライアント端末７の信号は全て、一箇所のデータセンタサーバに集約して処理される。そのため、サービス開始時にあらかじめ予測需要分のＶＭ６をデータセンタ内のサーバに配備しておくことが一般的である。
ここでは、仮想リソース管理部１がコンピュータ＃１（コンピュータ５ａ）とコンピュータ＃２（コンピュータ５ｂ）の２台を管理している場合を考える。
【０００７】
まず、サービスプロバイダ８は仮想リソース管理部１に対して、コンピュータ５ａにＶＭ６を生成するよう指示を出す（ステップＳ４０）。指示を受けた仮想リソース管理部１はコンピュータ５ａにＶＭ６を生成して起動する（ステップＳ４１）。生成と起動が完了したＶＭ６は、仮想リソース管理部１に起動した旨を返信する（ステップＳ４２）。これを受けて、仮想リソース管理部１は、コンピュータ５ａ上で生成と起動の完了したＶＭ６のＩＰアドレスを、サービスプロバイダ８に返信する（ステップＳ４３）。
【０００８】
次に、サービスプロバイダ８は仮想リソース管理部１に対して、コンピュータ５ｂにＶＭ６を生成するよう指示を出す（ステップＳ４４）。指示を受けた仮想リソース管理部１はコンピュータ５ｂにＶＭ６を生成して起動する（ステップＳ４５）。生成と起動が完了したＶＭ６は、起動した旨を仮想リソース管理部１に返信する（ステップＳ４６）。これを受けて、仮想リソース管理部１は、コンピュータ５ｂ上で生成と起動の完了したＶＭ６のＩＰアドレスを、サービスプロバイダ８に返信する（ステップＳ４７）。
【０００９】
このように、仮想リソース管理部１の管理する全てのコンピュータ５にＶＭ６を生成した後に、サービスプロバイダ８は、サービス宛先ＩＰの通知を行う（ステップＳ４８）。すなわち、サービスプロバイダ８は、クライアント端末７ａと同じロケーション９ａにあるコンピュータ５ａ上のＶＭ６のＩＰアドレスを、クライアント端末７にサービス宛先ＩＰとして通知する。
通知を受けたクライアント端末７ａは通知されたサービス宛先ＩＰにアクセスし、コンピュータ５ａ上のＶＭ６で実行されているサービスを利用する（ステップＳ４９）。
【００１０】
このように、比較例の仮想サーバ編成システムＳにおいては、サービス開始時にあらかじめ、サービスプロバイダ８が一括してＶＭ６の生成指示を出しておく。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１７−０３７５２２号公報
【非特許文献】
【００１２】
【非特許文献１】OpenStack Project、“OpenStack Open Source Cloud Computing Software”、[online]、[平成29年6月16日検索]、インターネット<URL:http://www.openstack.org/>
【非特許文献２】European Telecommunications Standards Institute(ETSI)、“ETSI - Multi-access Edge Computing”、[online]、[平成29年7月4日検索]、インターネット<URL:http://www.etsi.org/technologies-clusters/technologies/mobile-edge-computing/>
【発明の概要】
【発明が解決しようとする課題】
【００１３】
《エッジコンピューティング》
近年、ＩｏＴ（Internet of Things）の普及にともない、センシングや物理的なインタラクションを行うために、大容量のデータ処理や高いリアルタイム性を必要とするサービスの増加が予想される。
このようなサービスを実現するために、エッジコンピューティングが提唱されている（非特許文献２参照）。エッジコンピューティングとは、ネットワーク周縁へ計算処理リソース（エッジサーバ）を分散配置する手法である。エッジコンピューティングは、クライアント端末近傍のコンピュータでサービス処理を行って通信距離を短縮することで、通信トラヒックを最適化してアプリケーション処理の低遅延化を実現できる。
以下、このエッジコンピューティングに仮想化技術を適用することを考える。
【００１４】
《エッジコンピューティングの仮想化技術実装》
ところが、図６と図７で説明したクラウドコンピューティングによる仮想サーバ編成システムＳでは、サービス開始前に、各コンピュータに対するサービスの需要を予測しておき、この予測需要分のＶＭを予め生成するという方式をとる。ＯｐｅｎＳｔａｃｋに代表される既存の仮想リソース管理ソフトウェアの多くは、データセンタにあるコンピュータのみを対象とすることを前提としているからである。各ネットワーク条件に依存する応答遅延を考慮し、広域ネットワーク上に散在するコンピュータ５からクライアント端末７と最速で通信できるものを選定してＶＭ６を配備する機能は有していない。
【００１５】
特許文献1には、このような広域ネットワーク上のコンピュータから許容遅延時間を満たすコンピュータを選択する手段について記載されている。しかし、特許文献１では、クライアントに対する通信時間遅延情報はデータセンタ配備情報としてあらかじめ保持することを前提としており、遅延測定方法については触れられていない。
【００１６】
サービスからクライアント端末への通信の応答遅延は、ネットワーク負荷によっても変動するため、最新の情報に更新することが必要であり、かつ、クライアント端末のアクセス手段の単位で管理する必要がある。なお、アクセス手段とはキャリアのＬＴＥ（Long Term Evolution）回線や施設が提供するＷｉＦｉ（登録商標）などを指し、１台のクライアント端末に対して１つ以上存在する。
【００１７】
ここで、通信トラヒックの最適化を妨げる要素には、サービス処理を行うコンピュータとクライアント端末の距離だけでなく、時々刻々と変動する各ネットワークの負荷等も考えられる。サービス処理に最適なコンピュータとは、クライアント端末近傍にあるというだけでなく、クライアント端末との応答遅延が最小になるコンピュータである。
或るクライアント端末への応答遅延が最小になるコンピュータは、クライアント端末の移動、アクセス手段の変更、ネットワークそのものへのアクセスの増減等により、絶えず変動する。
【００１８】
本発明は、エッジコンピューティングの範疇を超えるが、応答遅延が許容範囲内に収まればエッジサーバとクライアントのアクセスネットワークが同一キャリアであることに限定しない。例えば、コンピュータとクライアント端末間の通信経路として、ゲートウェイを介して複数キャリアを跨る場合においても、中継装置数が少なくて応答遅延が小さければ通信経路として選択される。したがって、対象クライアント端末はネットワークが疎通している全クライアント端末になる。
【００１９】
以上のことから、エッジコンピューティングの仮想化を実現するには、応答遅延情報がクライアント端末のアクセス手段ごとに管理され、しかも最新の情報に更新され続けられることが望ましい。この方式において、管理対象のクライアント端末はネットワークに疎通している全クライアントであり、それぞれクライアントのアクセス手段単位で全コンピュータとの応答遅延情報を管理することが必要である。
【００２０】
以上より、各クライアント端末のアクセス手段単位で全コンピュータとの応答遅延情報を管理することは、膨大な情報の管理と、その頻繁な更新処理を必要とし、効率的な手法が求められる。
【００２１】
本発明はこのような点を鑑みてなされたものであり、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が小さいコンピュータを選択して仮想マシンを具現化する仮想サーバ編成方法を提供することを課題とする。
【課題を解決するための手段】
【００２２】
前記した課題を解決するため、請求項１に記載の発明は、
複数のコンピュータおよび、各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部を含む仮想サーバ編成システムが実行する仮想サーバ編成方法であって、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示し、
各前記コンピュータのうち応答遅延が最小のコンピュータを判定し、
前記仮想リソース管理部に対して、応答遅延が最小と判定した前記コンピュータ上への仮想マシンの生成および起動を指示し、
前記コンピュータ上に生成された仮想マシンのアドレスを前記端末に通知する、
ことを特徴とする仮想サーバ編成方法とした。
【００２３】
このようにすることで、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が最小のコンピュータを選択して仮想マシンを具現化し、サービス宛先ＩＰをクライアント端末に通知することを可能とする。
【００２４】
前記した課題を解決するため、請求項２に記載の発明は、
複数のコンピュータおよび、各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部を含む仮想サーバ編成システムが実行する仮想サーバ編成方法であって、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示し、
各前記コンピュータのうち応答遅延が所定値より小さいコンピュータを判定したならば、前記仮想リソース管理部に対して、応答遅延が前記所定値より小さいと判定した前記コンピュータ上への仮想マシンの生成および起動を指示し、
前記コンピュータ上に生成された仮想マシンのアドレスを前記端末に通知する、
ことを特徴とする仮想サーバ編成方法とした。
【００２５】
このようにすることで、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が許容範囲内のコンピュータを迅速に選択して仮想マシンを具現化し、サービス宛先ＩＰをクライアント端末に通知することを可能とする。
【００２６】
前記した課題を解決するため、請求項３に記載の発明は、
各前記コンピュータは、前記端末との間の応答遅延を測定する、
ことを特徴とする請求項１または２に記載の仮想サーバ編成方法とした。
【００２７】
このようにすることで、ネットワークの使用状況に応じて変動する応答遅延に対して、常に最新の状況を確認できる。
【００２８】
前記した課題を解決するため、請求項４に記載の発明は、
複数のコンピュータと、
各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部と、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示する遅延測定指示部と、
各前記コンピュータのうち応答遅延が最小のコンピュータを判定する判定部と、
前記仮想リソース管理部に対して、前記判定部が判定したコンピュータ上への仮想マシンの生成および起動を指示する仮想マシン生成指示部と、
前記仮想マシン生成指示部の指示によって生成された仮想マシンのアドレスを前記端末に通知するサービス宛先通知部と、
を備えることを特徴とする仮想サーバ編成システムとした。
【００２９】
このようにすることで、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が最小のコンピュータを選択して仮想マシンを具現化し、サービス宛先ＩＰをクライアント端末に通知することを可能とする。
【００３０】
前記した課題を解決するため、請求項５に記載の発明は、
複数のコンピュータと、
各前記コンピュータ上に仮想マシンを生成して起動させる仮想リソース管理部と、
端末からのサービス要求を受け付けると、当該端末と各前記コンピュータとの応答遅延の測定を指示する遅延測定指示部と、
各前記コンピュータのうち応答遅延が所定値より小さいコンピュータを判定する判定部と、
前記判定部が、応答遅延が前記所定値より小さいコンピュータを判定すると、前記仮想リソース管理部に対して、前記判定部が判定したコンピュータ上への仮想マシンの生成および起動を指示する仮想マシン生成指示部と、
前記仮想マシン生成指示部の指示によって生成された仮想マシンのアドレスを前記端末に通知するサービス宛先通知部と、
を備えることを特徴とする仮想サーバ編成システムとした。
【００３１】
このようにすることで、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が許容範囲内のコンピュータを迅速に選択して仮想マシンを具現化し、サービス宛先ＩＰをクライアント端末に通知することを可能とする。
【００３２】
前記した課題を解決するため、請求項６に記載の発明は、
各前記コンピュータは、前記端末との間の応答遅延を測定する遅延測定部を備える、
ことを特徴とする請求項４または５に記載の仮想サーバ編成システムとした。
【００３３】
このようにすることで、ネットワークの使用状況に応じて変動する応答遅延に対して、常に最新の状況を確認できる。
【００３４】
前記した課題を解決するため、請求項７に記載の発明は、
前記遅延測定指示部は、各前記コンピュータが備える前記遅延測定部に対して前記端末との間の応答遅延の測定を指示する、
ことを特徴とする請求項６に記載の仮想サーバ編成システムとした。
【００３５】
このようにすることで、クライアント端末からのサービス要求を受けて、サービス要求受付部が応答遅延の測定を指示することを可能とする。
【００３６】
前記した課題を解決するため、請求項８に記載の発明は、
前記遅延測定部は、前記端末に対してｐｉｎｇを送信して応答遅延を測定する、
ことを特徴とする請求項６に記載の仮想サーバ編成システムとした。
【００３７】
このようにすることで、各コンピュータが各端末との通信における最新の応答遅延を、ｐｉｎｇ送信によって測定することを可能とする。
【発明の効果】
【００３８】
本発明によれば、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が小さいコンピュータを選択して仮想マシンを具現化する仮想サーバ編成方法を提供できる。
【図面の簡単な説明】
【００３９】
【図１】本実施形態に係る仮想サーバ編成システムの構成例を示す機能ブロック図である。
【図２】本実施形態に係るコンピュータＩＰアドレスリストのテーブルの一例である。
【図３】本実施例に係る仮想サーバ編成システムにおける、クライアント端末によるサービス要求からサービスアクセスまでの流れを示したシーケンス図である。
【図４】本実施例に係る仮想サーバ編成システムにおける、仮想リソース管理部が管理する全てのコンピュータの遅延判定を行って、最小遅延のコンピュータにＶＭを生成する流れを示したフローチャートである。
【図５】本実施例に係る仮想サーバ編成システムにおける、遅延時間が所定値を下回るコンピュータを発見するまで遅延判定を行って、発見したコンピュータにＶＭを生成する流れを示したフローチャートである。
【図６】比較例に係る仮想サーバ編成システムの構成例を示す機能ブロック図である。
【図７】比較例に係る仮想サーバ編成システムにおける、ＶＭ生成指示からクライアント端末によるサービスアクセスまでの流れを示したシーケンス図である。
【発明を実施するための形態】
【００４０】
次に、本発明を実施するための形態（以下、「本実施形態」と称する。）における仮想サーバ編成システムＳ等について説明する。
本発明は、エッジコンピューティングの範疇を超えるが、エッジサーバの接続するネットワークと異なるキャリアに接続するクライアント端末も、遅延時間が許容範囲内に収まるのならば対象にする。例えば、コンピュータ５とクライアント端末７間の通信経路として、ゲートウェイを介して複数キャリアを跨る場合においても、中継装置数が少なく応答遅延が小さければ、通信経路として選択する。本発明の仮想サーバ編成システムＳにおける対象クライアント端末は、ネットワークが疎通している全クライアント端末となる。そのため、一般のエッジコンピューティングにおけるクライアント端末よりも多い。
【００４１】
図１は本実施形態に係る仮想サーバ編成システムＳの構成例を示す機能ブロック図である。
仮想サーバ編成システムＳは、広域ネットワーク上の仮想リソース管理部１、コンピュータＩＰアドレスリスト３、サービス要求受付部２、コンピュータ５ａ〜５ｄ、クライアント端末７ａ〜７ｄから構成される。
以降、コンピュータ５ａ〜５ｄを単にコンピュータ５、クライアント端末７ａ〜７ｄを単にクライアント端末７と記載することもある。
【００４２】
各コンピュータ５は、遅延測定部５１を有する。
なお、遅延測定部５１は仮想リソース管理部１が管理する各コンピュータ５上に配備する必要がある。しかし、サービス要求受付部２は、コンピュータ５上にＶＭとして実装してもよいし、外部の別コンピュータ上に実装してもよい。
【００４３】
コンピュータ５ａはＶＭ６ａとＶＭ６ｂを具現化し、コンピュータ５ｂはＶＭ６ｃとＶＭ６ｄを具現化し、コンピュータ５ｃはＶＭ６ｅとＶＭ６ｆを具現化し、コンピュータ５ｄはＶＭ６ｇとＶＭ６ｈを具現化する。
以降、ＶＭ６ａ〜６ｈを単にＶＭ６と記載することもある。
【００４４】
仮想リソース管理部１はコンピュータ５上のＶＭ６を管理する。
クライアント端末７ａは、同じロケーション９ａにあるコンピュータ５ａ上のＶＭ６ｂにアクセスし、サービスの提供を受けている。クライアント端末７ｂは、同じロケーション９ｂにあるコンピュータ５ｂ上のＶＭ６ｄにアクセスし、サービスの提供を受けている。クライアント端末７ｃ，７ｄは、同じロケーション９ｃにあるコンピュータ５ｃ上のＶＭ６ｆにアクセスし、サービスの提供を受けている。
このように、それぞれのＶＭ６で実行されるサービスは、クライアント端末７と一対一で結びついてもよいし、一対多で結びついてもよい。
【００４５】
サービス要求受付部２は、遅延測定指示部２１、最小遅延コンピュータ判定部２２、ＶＭ生成指示部２３、サービス宛先通知部２４から構成される。
遅延測定指示部２１は、仮想リソース管理部１のコンピュータＩＰアドレスリスト３を参照し、仮想リソース管理部１によって管理される各コンピュータ５に遅延測定指示を送信する。
このようにすることで、クライアント端末７からのサービス要求を受けて、サービス要求受付部２が最新の応答遅延の測定を指示することを可能とする。
【００４６】
図２は、本実施形態に係るコンピュータＩＰアドレスリスト３のテーブルの一例である。
本例では、コンピュータ名とＩＰアドレスを関連付けて記憶している。
コンピュータ＃１のＩＰアドレスは「１．１．１．１」であり、コンピュータ＃２のＩＰアドレスは「２．２．２．２」である。
遅延測定指示部２１は、当該テーブル登録されたＩＰアドレスに対して、遅延測定指示を送信する。
【００４７】
図３は、本実施例に係る仮想サーバ編成システムＳにおける、クライアント端末７ａによるサービス要求からサービスアクセスまでの流れを示したシーケンス図である。
【００４８】
前提として、クライアント端末７ａはサービス要求受付部２を備えるサーバのＩＰアドレスを事前に認知しているものとする。
またクライアント端末７ａは、サービス要求受付部２から、応答遅延が最小になるサービスのＩＰアドレスの通知を受け取れるものとする。通知の手段はＷｅｂ上に掲載するのでも、メールで送信するのでもよい。
まず、クライアント端末７ａは、サービス要求受付部２にサービス要求を送信する（ステップＳ１０）。サービス要求受付部２の遅延測定指示部２１は、仮想リソース管理部１のコンピュータＩＰアドレスリスト３に、仮想リソース管理部１が管理するコンピュータ５のＩＰアドレスリストを問い合わせる（ステップＳ１１）。これに答えて、仮想リソース管理部１はＩＰアドレスリストを返信する（ステップＳ１２）。
【００４９】
返信されたＩＰアドレスリストのコンピュータ５に対して、サービス要求受付部２の遅延測定指示部２１は最小遅延コンピュータ判定を行う。
最小遅延コンピュータ判定においては、仮想リソース管理部１が管理する全てのコンピュータ５の応答遅延時間を比較し、最小遅延のコンピュータ５を判定してもよい。また、応答遅延時間が閾値を下回る最初に発見したコンピュータ５を判定してもよい。
ここでは、仮想リソース管理部１がコンピュータ＃１（コンピュータ５ａ）とコンピュータ＃２（コンピュータ５ｂ）の２台を管理しており、全てのコンピュータ５の応答遅延時間を比較する場合を考える。
なお、コンピュータ５の台数が増えた場合、判定対象のコンピュータ５が増加する以外の変更はない。
【００５０】
サービス要求受付部２の遅延測定指示部２１は、コンピュータ５ａの遅延測定部５１に遅延測定命令を送信する（ステップＳ１３）。コンピュータ５ａの遅延測定部５１はクライアント端末７ａにｐｉｎｇを送信し（ステップＳ１４）、クライアント端末７ａは応答を返信する（ステップＳ１５）。応答を受けて、コンピュータ５ａの遅延測定部５１は、応答に要した時間を遅延通知としてサービス要求受付部２に報告する（ステップＳ１６）。
このようにすることで、ネットワークの使用状況に応じて変動する応答遅延に対して、常に最新の状況を確認できる。また、各コンピュータ５が各クライアント端末７との通信における最新の応答遅延を、ｐｉｎｇ送信によって測定することを可能とする。
【００５１】
コンピュータ５ａの遅延測定の完了を受けて、サービス要求受付部２は、コンピュータ５ｂの遅延測定部５１に遅延測定命令を送信する（ステップＳ１７）。コンピュータ５ｂの遅延測定部５１はクライアント端末７ａにｐｉｎｇを送信し（ステップＳ１８）、クライアント端末７ａは応答を返信する（ステップＳ１９）。応答を受けて、コンピュータ５ｂの遅延測定部５１は、応答に要した時間を遅延通知としてサービス要求受付部２に報告する（ステップＳ２０）。
【００５２】
サービス要求受付部２のＶＭ生成指示部２３は、仮想リソース管理部１に対して、コンピュータ５ａにＶＭ６を生成するよう指示を出す（ステップＳ２１）。指示を受けた仮想リソース管理部１は、コンピュータ５ａにＶＭ６を生成して起動する（ステップＳ２２）。ＶＭ６は起動した旨を仮想リソース管理部１に返信する（ステップＳ２３）。
【００５３】
仮想リソース管理部１は生成した新ＶＭ６のＩＰアドレスをサービス要求受付部２のサービス宛先通知部２４に通知する（ステップＳ２４）。サービス要求受付部２のサービス宛先通知部２４は、クライアント端末７ａに、新ＶＭ６のＩＰアドレスをサービス宛先ＩＰとして通知する（ステップＳ２５）。
クライアント端末７ａは、通知されたサービス宛先ＩＰにアクセスし、コンピュータ５ａ上のＶＭ６で実行されるサービスを利用する（ステップＳ２６）。
【００５４】
サービス要求受付部２の最小遅延コンピュータ判定部２２は、ＶＭ６の生成対象のコンピュータ５として、遅延時間が最小のものを判定してもよく、または遅延時間が所定値を下回るものを判定してもよい。
図４は本実施例に係る仮想サーバ編成システムＳにおける、仮想リソース管理部１が管理する全てのコンピュータ５の遅延判定を行って、最小遅延のコンピュータ５にＶＭ６を生成する流れを示したフローチャートである。
なお、遅延時間が所定値を下回るものを判定する方法については、図５の説明で述べる。
【００５５】
まず、サービス要求受付部２は、クライアント端末７からのサービス要求を受信する（ステップＳ３０）。遅延測定指示部２１は、仮想リソース管理部１のコンピュータＩＰアドレスリスト３に、仮想リソース管理部１が管理するコンピュータ５のＩＰアドレスリストを問い合わせる（ステップＳ３１）。
【００５６】
サービス要求受付部２は、返信されたＩＰアドレスリストに登録されているコンピュータ５について、ステップＳ３２〜Ｓ３４の遅延測定処理を繰り返す。
【００５７】
以下に遅延測定処理の内容を述べる。
遅延測定指示部２１は、コンピュータ５の遅延測定部５１に、当該コンピュータ５とクライアント端末７との間の遅延測定命令を送信する。当該コンピュータ５は、クライアント端末７にｐｉｎｇを送信し、応答時間を遅延通知としてサービス要求受付部２に報告する（ステップＳ３３）。
報告を受けた遅延測定指示部２１は、仮想リソース管理部１の管理する全てのコンピュータ５について遅延測定処理が完了するまで、繰り返し処理を行う（ステップＳ３４）。
【００５８】
最小遅延コンピュータ判定部２２は、各コンピュータ５から送信された遅延通知を比較し、応答遅延が最小となるコンピュータ５を判定する（ステップＳ３５）。
ＶＭ生成指示部２３は、判定した最小遅延のコンピュータ５に対して、ＶＭ６の生成を指示する（ステップＳ３６）。ＶＭ６の生成と起動が完了したなら、サービス宛先通知部２４は、クライアント端末７ａへ、生成したＶＭ６のＩＰアドレスをサービス宛先ＩＰとして通知する。
【００５９】
このようにすることで、広域ネットワーク上に複数存在するコンピュータ５（コンピュータリソース）から、クライアント端末７に対する応答遅延が最小のコンピュータ５を選択してＶＭ６（仮想マシン）を具現化できる。更に具現化したＶＭ６に払い出されたサービス宛先ＩＰをクライアント端末７に通知することを可能とする。
【００６０】
図５は本実施例に係る仮想サーバ編成システムＳにおける、遅延時間が所定値を下回るコンピュータ５を発見するまで遅延判定を行って、発見したコンピュータ５にＶＭ６を生成する流れを示したフローチャートである。
【００６１】
まず、サービス要求受付部２は、クライアント端末７からのサービス要求を受信する（ステップＳ５０）。遅延測定指示部２１は、仮想リソース管理部１のコンピュータＩＰアドレスリスト３に、仮想リソース管理部１が管理するコンピュータ５のＩＰアドレスリストを問い合わせる（ステップＳ５１）。
【００６２】
サービス要求受付部２は、返信されたＩＰアドレスリストのコンピュータ５について、遅延時間が所定値を下回るコンピュータ５を発見するまで、ステップＳ５２〜Ｓ５５の遅延測定処理を繰り返す。
【００６３】
以下に遅延測定処理の内容を述べる。
遅延測定指示部２１は、コンピュータ５の遅延測定部５１に、当該コンピュータ５とクライアント端末７との間の遅延測定命令を送信する。当該コンピュータ５は、クライアント端末７にｐｉｎｇを送信し、応答時間を遅延通知としてサービス要求受付部２に報告する（ステップＳ５３）。
【００６４】
最小遅延コンピュータ判定部２２は、応答遅延（通信遅延）の値を所定値と比較し、応答遅延が所定値を下回っていた場合は、遅延測定を終了し、当該コンピュータ５を最小遅延のコンピュータ５と判定する（ステップＳ５７）。
【００６５】
応答遅延が所定値を上回っていた場合は、次のコンピュータ５に対して遅延測定処理を行う（ステップＳ５５）。ＩＰアドレスリストの全てのコンピュータ５の遅延測定処理が完了しても、応答遅延が所定値を下回るコンピュータ５を発見できない場合は、応答遅延の比較を行う（ステップＳ５６）。応答遅延が最小のコンピュータ５を、最小遅延のコンピュータ５と判定する。
【００６６】
ＶＭ生成指示部２３は、判定した最小遅延のコンピュータ５に対して、ＶＭ生成を指示する（ステップＳ５６）。ＶＭ６の生成と起動が完了したなら、サービス宛先通知部２４は、クライアント端末７ａへ、生成したＶＭ６のＩＰアドレスをサービス宛先ＩＰとして通知する。
【００６７】
このようにすることで、広域ネットワーク上に複数存在するコンピュータ５（コンピュータリソース）から、クライアント端末７に対する応答遅延が許容範囲内のコンピュータ５を迅速に選択してＶＭ６（仮想マシン）を具現化できる。更に具現化したＶＭ６に払い出されたサービス宛先ＩＰをクライアント端末７に通知することを可能とする。
【００６８】
実施形態は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、前記した機構や構成は説明上必要と考えられるものを示しており、製品上必ずしも全ての機構や構成を示しているとは限らない。
【００６９】
以上説明したように、本実施形態に係る仮想サーバ編成方法および仮想サーバ編成システムによれば、広域ネットワーク上に複数存在するコンピュータリソースから、クライアント端末に対する応答遅延が小さいコンピュータを選択して仮想マシンを具現化する仮想サーバ編成方法を提供できる。
特殊なハードウェアが不要であり、ソフトウェアの機能だけで実装が可能である。
【符号の説明】
【００７０】
Ｓ                                              仮想サーバ編成システム
１                                              仮想リソース管理部
２                                              サービス要求受付部
２１                                            遅延測定指示部
２２                                            最小遅延コンピュータ判定部
２３                                            ＶＭ生成指示部（仮想マシン生成指示部）
２４                                            サービス宛先通知部
３                                              コンピュータＩＰアドレスリスト
５ａ，５ｂ，５ｃ，５ｄ                          コンピュータ
５１                                            遅延測定部
６ａ，６ｂ，６ｃ，６ｄ，６ｅ，６ｆ，６ｇ，６ｈ  ＶＭ（仮想マシン）
７ａ，７ｂ，７ｃ，７ｄ                          クライアント端末（端末）
９ａ，９ｂ，９ｃ                                ロケーション
【図１】
2019022078.tif 000003
【図２】
2019022078.tif 000004
【図３】
2019022078.tif 000005
【図４】
2019022078.tif 000006
【図５】
2019022078.tif 000007
【図６】
2019022078.tif 000008
【図７】
2019022078.tif 000009