(57)【要約】【課題】物理ネットワークの状態変化に応じて，仮想マシンが実行するアプリケーションを停止するネットワーク管理装置，情報処理システム及びプログラムを提供する。【解決手段】仮想マシン上で動作可能なアプリケーションの優先度と，そのアプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを，仮想マシンから受信する情報取得部と，管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，その選択したアプリケーションを仮想マシンに停止させるために，選択したアプリケーションの情報を含む応答パケットを仮想マシンに送信する選択部と，を有する。【選択図】図７
2015184734.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを，前記仮想マシンから受信する情報取得部と，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションを前記仮想マシンに停止させるために，前記選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する選択部と，を有する
ネットワーク管理装置。
【請求項２】
請求項１において，
前記選択部は，前記停止するアプリケーションの選択を，動作中の前記アプリケーションが使用する通信帯域の合計値が前記使用可能な通信帯域を下回るように行うネットワーク管理装置。
【請求項３】
請求項１において，
前記情報取得部は，前記仮想マシンが作成された物理マシン内に新たな仮想マシンが作成された場合，該新たな仮想マシンの管理情報を含む管理パケットを受信するネットワーク管理装置。
【請求項４】
請求項３において，
前記物理マシン内に新たな仮想マシンが作成される場合は，他の物理マシンから前記物理マシンへ仮想マシンのマイグレーションが行われる場合と，前記物理マシン内に新たな仮想マシンが作成される場合とを含むネットワーク管理装置。
【請求項５】
請求項１において，
前記仮想マシンは，該仮想マシンのアプリケーションと同じアプリケーションを有する他の物理マシン内の仮想マシンとクラスタを構成しており，
前記選択部は，前記アプリケーションを停止する際に，該停止するアプリケーションに対応する前記他の仮想マシンのアプリケーションを起動させるネットワーク管理装置。
【請求項６】
請求項５において，
前記管理情報は，前記アプリケーションを停止する際に，前記他の物理マシン内の仮想マシンにおけるアプリケーションを起動するか否かについての切り替え情報をさらに有しており，
前記選択部は，前記切り替え情報に基づいて，前記他の物理マシン内の仮想マシンにおけるアプリケーションを起動するか否かについて判断するネットワーク管理装置。
【請求項７】
請求項２において，
前記管理情報は，前記アプリケーションの停止中に，該アプリケーションを動作させるために必要な通信帯域を確保するか否かについての帯域確保情報をさらに有しており，
前記選択部は，前記停止するアプリケーションの選択を，前記通信帯域を確保する必要があるアプリケーションの通信帯域を前記合計値に加算した値が，前記使用可能な帯域を下回るように行うネットワーク管理装置。
【請求項８】
請求項２において，
前記管理情報は，前記アプリケーションが通信を行う時間帯についての時間帯情報をさらに有しており，
前記選択部は，前記アプリケーションが通信を行わない時間帯には，前記停止するアプリケーションの選択を，前記合計値から前記通信を行わないアプリケーションの通信帯域を減算した値が，前記使用可能な帯域を下回るように行うネットワーク管理装置。
【請求項９】
仮想マシンと，該仮想マシンに通信可能なネットワーク管理装置を有する情報処理システムであって，
前記仮想マシンは，該仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを作成する情報作成部と，
前記管理パケットを前記ネットワーク管理装置に送信する情報送信部とを有し，
前記ネットワーク管理装置は，前記管理パケットを受信する情報取得部と，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する選択部とを有し，
前記仮想マシンは，さらに，前記応答パケット内の情報に基づいて，前記選択されたアプリケーションを停止する制御部を有する
情報処理システム。
【請求項１０】
仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションを動作させるために使用する通信帯域とを組み合わせた管理情報を含む管理パケットを，前記仮想マシンから受信し，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションを前記仮想マシンに停止させるために，前記選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する処理をコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，ネットワーク管理装置，情報処理システム及びプログラムに関する。
【背景技術】
【０００２】
近年，物理マシン（以下，ＶＭホストとも呼ぶ）の性能向上に伴い，複数の仮想マシンを１つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術は，例えば，仮想化ソフトウエア（以下，ハイパバイザとも呼ぶ）が物理マシンを複数の仮想マシンに割当てて，各仮想マシンにインストールされたアプリケーションプログラム（以下，アプリケーションとも呼ぶ）によるサービスの提供を可能にする。
【０００３】
このような仮想化技術の進歩に伴い，従来は物理マシンが行っていたミッションクリティカルな業務を仮想マシンに実行させる場合がある。そのため，仮想マシンによる仮想環境においても，物理マシンによる物理環境と同等の信頼性が求められている（例えば，特許文献１乃至３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５０３２１９１号公報
【特許文献２】特表２００４−５３０１９６号公報
【特許文献３】特開平１０−１８７６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
物理マシンは，例えば，ネットワークの障害等による縮退が発生した場合，物理マシンは，重要度（優先度）の低いアプリケーションを停止させる。これにより，重要度の高いアプリケーションへの影響を防ぐことが可能になる。
【０００６】
一方，例えば，同一物理マシン内の複数の仮想マシンを様々なユーザが利用している場合，セキュリティの観点から，仮想マシンと物理マシンとが直接通信できない構成を採用するのが一般的である。そのため，仮想マシンは，物理マシンにおいて発生した物理的なネットワークの障害等による通信帯域の変化を検知することができない。したがって，仮想マシンは，物理マシンの場合と異なり，上記のように通信帯域の変化に伴って重要度の低いアプリケーションを停止させることができない。
【０００７】
また，物理マシンは，システムの稼働中（サービスの提供中）にマイグレーションが実施される場合がある。このマイグレーションは，既に仮想マシンが作成されている物理マシンに対して行われる場合がある。
【０００８】
ここで，仮想マシンは，新たな仮想マシンが同一の物理マシンに作成された場合であっても，上記のようにセキュリティの観点から，物理マシンの情報を共有することができない。そのため，仮想マシンは，同一の物理マシンに作成された新たな仮想マシンを認識することができない。したがって，それぞれの仮想マシンがアプリケーションを実行することにより，通信帯域が圧迫される場合がある。
【０００９】
そこで，一つの実施の形態の目的は，物理ネットワークの状態変化に応じて，仮想マシンが実行するアプリケーションを停止するネットワーク管理装置，情報処理システム及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
実施の形態の一つの側面によれば，仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを，前記仮想マシンから受信する情報取得部と，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションを前記仮想マシンに停止させるために，前記選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する選択部と，を有する。
【発明の効果】
【００１１】
物理ネットワークの状態変化に応じて，仮想マシンが実行するアプリケーションを停止することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態における情報処理システムの全体構成を示す図である。
【図２】管理サーバとＶＭホストとのハードウエア構成を示す図である。
【図３】図２で示した管理サーバの機能ブロック図である。
【図４】図２で示したＶＭホストの機能ブロック図である。
【図５】一般的なＶＭホストと仮想マシンを説明する図である。
【図６】一般的なＶＭホストと仮想マシンを説明する図である。
【図７】本実施の形態におけるネットワーク管理処理の概略を説明するシーケンスチャート図である。
【図８】本実施の形態におけるネットワーク管理処理の概略を説明する図である。
【図９】本実施の形態におけるネットワーク管理処理の詳細を説明するフローチャート図である。
【図１０】本実施の形態におけるネットワーク管理処理の詳細を説明するフローチャート図である。
【図１１】本実施の形態における管理情報と帯域情報を説明する図である。
【図１２】第２の実施の形態におけるネットワーク管理処理の概略を説明する図である。
【図１３】第２の実施の形態における管理情報と帯域情報を説明する図である。
【図１４】第３の実施の形態におけるネットワーク管理処理の概略を説明する図である。
【図１５】第３の実施の形態における管理情報と帯域情報を説明する図である。
【図１６】第４の実施の形態における管理情報と帯域情報を説明する図である。
【図１７】第５の実施の形態における管理情報と帯域情報を説明する図である。
【発明を実施するための形態】
【００１３】
［情報処理システムの構成］
図１は，本実施の形態における情報処理システムの全体構成を示す図である。データセンタ５内に，管理サーバ１と，ＶＭホスト２（以下，ネットワーク管理装置２とも呼ぶ）とが設けられている。そして，データセンタ５には，インターネットやイントラネット等のネットワークを介して，利用者端末６が接続可能になっている。
【００１４】
ＶＭホスト２は，図１の例においては複数の物理マシンから構成されており，各物理マシンはＣＰＵとメモリ（ＤＲＡＭ）とハードディスク（ＨＤＤ）等の大容量メモリとネットワークとを有する。ＶＭホスト２のリソースは，複数の仮想マシン３に割当てられる。
【００１５】
管理サーバ１は，仮想マシン３と通信可能であり，ＶＭホスト２内に作成された仮想マシン３の管理を行うものである。管理サーバ１は，例えば，仮想マシン３によって作成されてもよい。
【００１６】
仮想マシン３は，例えば，そのインフラをネットワーク経由でクラウド利用者に提供するもの（以下，クラウドサービスとも呼ぶ）である。
【００１７】
クラウドサービスは，コンピュータシステムを構築し稼働させるための基盤，即ち，仮想マシン３やネットワーク等のインフラストラクチャそのものを，ネットワーク経由で提供するサービスである。また，クラウド利用者は，例えば，利用者端末６からクラウドサービスポータルサイトにアクセスして，仮想マシンに必要な仕様，例えばＣＰＵのクロック周波数，メモリの容量（ＧＢ），ハードディスクの容量（ＭＢ／ｓｅｃ，ＩＯＰＳ），及びネットワークの通信帯域幅（Ｇｂｐｓ）を選択し，それらについてクラウド利用契約を締結する。また，利用者端末６は，例えば，仮想マシン３の稼働状況を監視や，仮想マシンに対する操作等を可能にする。
【００１８】
仮想化ソフトウエア４は，管理サーバ１からの指示に応じて，ＶＭホスト２のＣＰＵ，メモリ，ハードディスク，ネットワークを割当てることにより，仮想マシン３を動作させる基盤ソフトウエアである。仮想化ソフトウエア４は，例えば，ＶＭホスト２で動作する。
【００１９】
仮想マシン３は，ＶＭホスト２のリソースが割当てられることに加えて，例えば，ＯＳ，ミドルウエア，アプリケーション，データベースなどを有するイメージファイルをそのハードディスク内に有する。そして，仮想マシン３は，例えば，起動時にイメージファイルをハードディスクからメモリに書き込み，所望のサービスに対応する動作を行う。なお，以下，ＶＭホスト２で動作するＯＳをホストＯＳと呼び，ＶＭホスト２に作成された仮想マシン３で動作するＯＳをゲストＯＳと呼ぶ。
【００２０】
図２は，管理サーバとＶＭホストとのハードウエア構成を示す図である。管理サーバ１は，プロセッサであるＣＰＵ（プロセッサ）１０１と，メモリ１０２と，外部インターフェース（Ｉ／Ｏユニット）１０３と，記憶媒体１０４を有する。各部は，バス１０５を介して互いに接続される。記憶媒体１０４は，例えば，記憶媒体１０４内のプログラム格納領域（図示しない）に，仮想マシン３の起動処理等を行うためのプログラム１１０を記憶する。ＣＰＵ１０１は，図２に示すように，プログラム１１０の実行時に，プログラム１１０を記憶媒体１０４からメモリ１０２にロードし，プログラム１１０と協働して仮想マシン３の起動処理等を行う。また，記憶媒体１０４は，例えば，仮想マシン３の起動等を行う際に用いられる情報を記憶する情報格納領域１２０を有する。
【００２１】
ＶＭホスト２は，プロセッサであるＣＰＵ（プロセッサ）２０１と，メモリ２０２と，外部インターフェース（Ｉ／Ｏユニット）２０３と，記憶媒体２０４を有する。各部は，バス２０５を介して互いに接続される。記憶媒体２０４は，例えば，記憶媒体２０４内のプログラム格納領域（図示しない）に，ネットワーク管理処理を行うためのプログラム２１０及びプログラム３１０を記憶する。ＣＰＵ２０１は，図２に示すように，プログラム２１０またはプログラム３１０の実行時に，プログラム２１０またはプログラム３１０を記憶媒体２０４からメモリ２０２にロードし，プログラム２１０またはプログラム３１０と協働してネットワーク管理処理を行う。また，記憶媒体２０４は，ネットワーク管理処理を行う際に用いられる情報を記憶する情報格納領域３２０を有する。
【００２２】
図３は，図２で示した管理サーバの機能ブロック図である。ＣＰＵ１０１は，プログラム１１０と協働することにより，例えば，クラウド利用者管理部１１１と，仮想マシン作成部１１２と，仮想マシン起動部１１３と，仮想マシンシャットダウン部１１４と，仮想マシンマイグレーション部１１５として動作する。また，情報格納領域１２０には，例えば，クラウド利用者管理情報１２１と，仮想マシン管理情報１２２とが記憶されている。
【００２３】
クラウド利用者管理部１１１は，例えば，クラウド契約を締結したクラウド利用者への課金処理等のクラウド利用者管理を行う。また，仮想マシン作成部１１２は，例えば，クラウド契約に基づいて物理マシンのリソースを割当てて仮想マシン３を作成する。また，仮想マシン起動部１１３は，例えば，仮想マシン３の起動を仮想化ソフトウエア４に指示する。
【００２４】
仮想マシンシャットダウン部１１４は，例えば，起動状態の仮想マシン３のシャットダウンを仮想化ソフトウエア４に指示する。また，仮想マシンマイグレーション部１１５は，例えば，仮想マシン３のマイグレーションを仮想化ソフトウエア４に指示する。
【００２５】
クラウド利用者管理情報１２１は，例えば，仮想マシン３とクラウド利用者とその契約等に関する管理情報である。また，仮想マシン管理情報１２２は，例えば，仮想化ソフトウエア４から報告される仮想マシン３の動作情報を含む管理情報である。
【００２６】
図４は，図２で示したＶＭホストの機能ブロック図である。ＣＰＵ２０１は，プログラム２１０と協働することにより，例えば，帯域計測部２１１と，管理パケット受信部２１２（以下，情報取得部２１２とも呼ぶ）と，アプリケーション選択部２１３と，応答パケット作成部２１４と，応答パケット送信部２１５（以下，アプリケーション選択部２１３と，応答パケット作成部２１４と，応答パケット送信部２１５とをまとめて選択部とも呼ぶ）として動作する。この帯域測定部２１１，管理パケット受信部２１２，アプリケーション選択部２１３，応答パケット作成部２１４，応答パケット送信部２１５は，ＶＭホスト２のホストＯＳの機能として動作する。また，プログラム２１０は，例えば，ＶＭホスト２のネットワークカード（以下，物理ＮＩＣとも呼ぶ）を束ねて制御するネットワークドライバであってよい。
【００２７】
帯域計測部２１１は，例えば，仮想マシン３のゲストＯＳ上で動作するアプリケーションが現在使用可能な物理的な通信帯域の情報を取得する。帯域計測部２１１は，例えば，ＶＭホスト２の物理ＮＩＣの情報を取得することにより，現在使用可能な通信帯域の情報を取得するものであってよい。
【００２８】
管理パケット受信部２１２は，例えば，ゲストＯＳから送信されたパケットの中から，管理パケット（以下，監視パケットとも呼ぶ）の抽出を行う。そして，管理パケット受信部２１２は，受信した管理パケットから管理情報を取得（抽出）する。管理情報は，ゲストＯＳ上で動作可能なアプリケーションの優先度と，そのアプリケーションの動作に使用する通信帯域（動作するために必要な通信帯域）の情報とを組み合わせた情報である。この管理情報の詳細については後述する。
【００２９】
アプリケーション選択部２１３は，管理パケット受信部２１２が受信した管理情報と，帯域計測部２１１が計測した現在使用可能な通信帯域の情報とに基づいて，停止させるべきゲストＯＳ上で動作するアプリケーションを選択する。また，応答パケット作成部２１４は，アプリケーション選択部２１３が選択したアプリケーションをゲストＯＳに停止させるために，アプリケーション選択部２１３が選択したアプリケーションの情報を含む応答パケットを作成する。また，応答パケット送信部２１５は，応答パケット作成部２１４が作成した応答パケットをゲストＯＳに送信する。
【００３０】
また，ＣＰＵ２０１（ＶＭホスト２から仮想マシン３に割当てられたＣＰＵ２０１の一部）は，プログラム３１０と協働することにより，例えば，管理情報作成部３１１（以下，情報作成部３１１とも呼ぶ）と，管理パケット作成部３１２と，管理パケット送信部３１３（以下，情報送信部３１３とも呼ぶ）と，応答パケット受信部３１４と，アプリケーション制御部３１５（以下，制御部３１５とも呼ぶ）として動作する。この管理情報作成部３１１，管理パケット作成部３１２，管理パケット送信部３１３，応答パケット受信部３１４，アプリケーション制御部３１５は，仮想マシン３のゲストＯＳの機能として動作する。また，情報格納領域３２０には，例えば，優先度管理情報３２１と，必要帯域管理情報３２２とが記憶されている。
【００３１】
管理情報作成部３１１は，上記の管理情報を作成する。管理情報作成部３１１は，例えば，所定の時間間隔毎（例えば，５分毎）に管理情報を作成するものであってよい。また，管理パケット作成部３１２は，上記の管理パケットを作成し，管理パケット送信部３１３は，管理パケットをホストＯＳに向けて送信する。管理パケット送信部３１３は，例えば，管理情報作成部３１１により管理情報が作成されたことに応答して，管理パケットをホストＯＳに向けて送信するものであってよい。また，応答パケット受信部３１４は，ホストＯＳから送信される応答パケットを受信する。管理情報作成部３１１，管理パケット作成部３１２，管理パケット送信部３１３及び応答パケット受信部３１４は，例えば，ＶＭホスト２と接続したスイッチの監視を行うための監視エージェントによって実現するものであってもよい。
【００３２】
アプリケーション制御部３１５は，ホストＯＳから受信した応答パケット内の管理情報に基づいて，ホストＯＳが選択したアプリケーションを停止する。なお，アプリケーション制御部３１５は，停止するアプリケーションを動作するゲストＯＳと，そのゲストＯＳのアプリケーションと同じアプリケーションを有する他のＶＭホスト内のゲストＯＳとによりクラスタシステムを構成するものであってもよい。そして，この場合，アプリケーション制御部３１５は，ホストＯＳによって選択されたアプリケーションを停止する際に，その停止するアプリケーションに対応する他のゲストＯＳのアプリケーションを起動させる。
【００３３】
このクラスタシステムは，複数のコンピュータが連結したものであり，サービスの利用者や他のコンピュータに対して全体で１台のコンピュータであるかのように振舞うシステムである。例えば，複数の仮想マシンに同じアプリケーションをインストールしておき，正常系の仮想マシンに障害が発生した場合に，待機系の仮想マシンに自動的に切り替えるものである。これにより，サービスの利用者（クラウド利用者）は，正常系の仮想マシンで発生した障害に影響されることなく，サービスの利用を継続することが可能になる。そのため，本実施の形態におけるアプリケーション制御部３１５は，クラスタシステムを構成するために，例えば，クラスタシステムを構成する各ゲストＯＳにおいてそれぞれ動作するものであってよい。そして，各ＶＭホスト間を接続する回線により，各ゲストＯＳ間において情報のやりとりを行うものであってよい。さらに，アプリケーション制御部３１５は，例えば，クラスタシステムを構成する他のゲストＯＳや他のゲストＯＳ上で動作するアプリケーションの稼動状態を，互いに監視しているものであってよい。また，アプリケーション制御部３１５は，他のゲストＯＳや他のゲストＯＳ上で動作するアプリケーションの異常を検知した場合に，自らがインストールされたゲストＯＳに自動的に切り替えるものであってよい。
【００３４】
優先度管理情報３２１は，ゲストＯＳ上で動作するアプリケーションの重要度（優先度）に関する管理情報である。優先度管理情報３２１は，例えばＶＭホスト２毎に，そのＶＭホスト２の仮想マシン３において動作するアプリケーションについて優先度の順位付けするものであってよい。また，優先度管理情報３２１は，例えばクラウド利用者毎に，そのクラウド利用者が使用する全てのアプリケーションについて，同一ＶＭホスト２で動作するアプリケーションであるか否かにかかわらず優先度の順位付けをするものであってもよい。そして，例えばクラウド利用者は，自らが使用する可能性のあるアプリケーションの優先度の順位を，優先度管理情報３２１として予め記憶させておくものであってもよい。これにより，アプリケーション選択部２１３は，マイグレーションや新規ゲストＯＳの作成等が行われた場合においても，優先度管理情報３２１を参照して迅速にアプリケーションの優先度の順位付けを行うことができる。
【００３５】
必要帯域管理情報３２２は，各アプリケーションが動作するために必要な通信帯域に関する管理情報である。例えばクラウド利用者は，自らが使用する可能性のあるアプリケーションが動作するために必要な通信帯域の情報を，必要帯域管理情報３２２として予め記憶させておくものであってもよい。
【００３６】
［ＶＭホストと仮想マシンの関係］
次に，ＶＭホストと仮想マシンとの関係について説明する。図５及び図６は，一般的なＶＭホストと仮想マシンを説明する図である。
【００３７】
図５の例において，ＶＭホスト２Ａには，仮想マシン３Ａが作成されている。仮想マシン３Ａの仮想ＮＩＣ３２Ａは，ホストＯＳ２１Ａ内のネットワークドライバ２５Ａを介してＶＭホスト２Ａの物理ＮＩＣ２２Ａ及び物理ＮＩＣ２３Ａに仮想的に接続している。また，図５の例において，ＶＭホスト２Ｂには，仮想マシン３Ｂが作成されている。仮想マシン３Ｂの仮想ＮＩＣ３２Ｂは，ホストＯＳ２１Ｂ内のネットワークドライバ２５Ｂを介してＶＭホスト２Ｂの物理ＮＩＣ２２Ｂ及び物理ＮＩＣ２３Ｂに仮想的に接続している。さらに，物理ＮＩＣ２２Ａ及び物理ＮＩＣ２２Ｂは，物理スイッチ（物理ＳＷ）２４Ａに接続しており，物理ＮＩＣ２３Ａ及び物理ＮＩＣ２３Ｂは，物理スイッチ２４Ｂに接続している。また，ＶＭホスト２Ａ及びＶＭホスト２Ｂは，それぞれホストＯＳ２１Ａ，ホストＯＳ２１Ｂを有しており，仮想マシン３Ａ及び仮想マシン３Ｂは，それぞれゲストＯＳ３１Ａ，ゲストＯＳ３１Ｂを有している。
【００３８】
さらに，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｂには，同じアプリケーションがそれぞれインストールされている。具体的に，図５の例では，ゲストＯＳ３１Ａには，ＡＰＰ３３１Ａ，ＡＰＰ３３２Ａ，ＡＰＰ３３３Ａ（以下，それぞれＡＰＰ１−１，ＡＰＰ１−２，ＡＰＰ１−３とも呼ぶ）がインストールされている。また，ゲストＯＳ３１Ｂには，それぞれＡＰＰ１−１，ＡＰＰ１−２，ＡＰＰ１−３と同じアプリケーションであるＡＰＰ３３１Ｂ，ＡＰＰ３３２Ｂ，ＡＰＰ３３３Ｂ（以下，それぞれＡＰＰ２−１，ＡＰＰ２−２，ＡＰＰ２−３とも呼ぶ）がインストールされている。
【００３９】
そして，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｂは，例えば，上記のアプリケーション制御部３１５によってクラスタシステムを構成している。図５の例では，ゲストＯＳ３１Ａ上においてＡＰＰ１−１及びＡＰＰ１−２が動作しており，ゲストＯＳ３１Ｂ上においてＡＰＰ２−３が動作している（図５において，網掛けのアプリケーションは停止しているアプリケーションを表している）。
【００４０】
図５に示す例において，例えば，ＶＭホスト２Ａの物理ＮＩＣ２２Ａと物理スイッチ２４Ａとの間の通信回線が通信できなくなる障害が発生した場合，ＶＭホスト２Ａがその外部と通信できる通信回線は，物理ＮＩＣ２３Ａと物理スイッチ２４Ｂとの間の通信回線のみになる。この場合，物理ＮＩＣ２３Ａと物理スイッチ２４Ｂとの間の通信回線のみでは，ＡＰＰ１−１及びＡＰＰ１−２が動作するために必要な通信帯域を確保できなくなる場合がある。そのため，ゲストＯＳ３１Ａは，優先度の高いアプリケーション（例えば，ＡＰＰ１−１）が動作するために必要な通信帯域を確保するために，例えば，優先度が低いアプリケーション（例えば，ＡＰＰ１−２）をゲストＯＳ３１Ｂに切り替えて動作させる。
【００４１】
しかし，セキュリティの観点から仮想マシン３ＡとＶＭホスト２Ａとが直接通信できない構成を採用している場合，ゲストＯＳ３１Ａは，ＶＭホスト２Ａの通信回線で発生した障害を検知することができず，アプリケーションの切り替えを行うことができない。そのため，ゲストＯＳ３１Ａは，優先度の高いアプリケーションの動作を継続するために必要な通信帯域を確保できなくなる場合がある。
【００４２】
一方，図６は，マイグレーション等により，ＶＭホスト２Ａ内に新たな仮想マシンが作成された場合の図である。
【００４３】
図６の例において，新たに作成された仮想マシン３Ｃの仮想ＮＩＣ３２Ｃは，ネットワークドライバ２５Ｂを介してＶＭホスト２Ｂの物理ＮＩＣ２２Ｂ及び物理ＮＩＣ２３Ｂに仮想的に接続している。すなわち，図６の例においては，仮想マシン３Ａ及び仮想マシン３Ｃは，同じ通信回線を共有する。そのため，ゲストＯＳ３１ＣのアプリケーションであるＡＰＰ３３１Ｃ（以下，ＡＰＰ３−１とも呼ぶ）の動作状態によっては，ゲストＯＳ３１Ａ上で動作する優先度の高いアプリケーションが使用する通信帯域が不足する場合がある。したがって，ゲストＯＳ３１Ａは，例えば，優先度が低いアプリケーション（例えば，ＡＰＰ１−２）をゲストＯＳ３１Ｂに切り替える等より，優先度の高いアプリケーション（例えば，ＡＰＰ１−１）が動作するための通信帯域を確保する必要がある。
【００４４】
しかし，図６の例においても，セキュリティの観点から仮想マシン３ＡとＶＭホスト２Ａとが直接通信できない構成を採用している場合には，ゲストＯＳ３１Ａは，新たに作成された仮想マシン３Ｃの情報を取得することができない。そのため，ゲストＯＳ３１Ａは，同一のＶＭホスト２Ａ内に作成された新たな仮想マシン３Ｃを認識することができない。したがって，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｃがそれぞれのアプリケーションを実行することにより，仮想マシン３Ａは，優先度の高いアプリケーションを動作するために必要な通信帯域を確保できなくなる場合がある。
【００４５】
そこで，本実施の形態では，ゲストＯＳ３１Ａ上のアプリケーションの優先度及び必要帯域と，現在使用可能な帯域情報とに基づいて，ＶＭホスト２ＡのホストＯＳ２１Ａが停止するアプリケーションを選択し，さらに，ゲストＯＳ３１Ａに停止させることによって，重要度の高いアプリケーションが使用する通信帯域を確保する。
【００４６】
［第１の実施の形態］
初めに，第１の実施の形態について説明する。図７は，本実施の形態におけるネットワーク管理処理の概略を説明するシーケンスチャート図である。また，図８は，本実施の形態におけるネットワーク管理処理の概略を説明する図である。図８を参照しながら，図７のネットワーク管理処理についての概略を説明する。なお，図８では，ゲストＯＳ３１Ａが他のゲストＯＳとクラスタシステムを構成していない場合について説明する。
【００４７】
［図７のＳ１からＳ３］
初めに，仮想マシン３ＡのゲストＯＳ３１Ａは，各アプリケーションの優先度と，各アプリケーションを動作するために必要な通信帯域の情報とを組み合わせた管理情報を作成する（Ｓ１）。
【００４８】
図８は，ＶＭホスト２Ａと仮想マシン３Ａとの関係を説明する図である。図８において，ＶＭホスト２Ａには，仮想マシン３Ａが作成されている。また，図８においては，仮想マシン３ＡのゲストＯＳ３１Ａが有しているアプリケーション（ＡＰＰ１−１，ＡＰＰ１−２，ＡＰＰ１−３）と，アプリケーションの起動または停止等の制御を行うアプリケーション制御部３１５とを記載している。仮想マシン３Ａの仮想ＮＩＣ３２Ａは，ネットワークドライバ２５Ａを介してＶＭホスト２Ａの物理ＮＩＣ２２Ａ及び物理ＮＩＣ２３Ａに仮想的に接続している。また，図８の例においては，図５において説明した例と異なり，ゲストＯＳ３１Ａは，監視エージェント３３Ａを有している。
【００４９】
監視エージェント３３Ａは，例えば，ゲストＯＳ３１Ａ上で動作するプログラムであり，ＶＭホスト２Ａと接続した物理スイッチ等の動作状態の監視を行うものである。図８の例の監視エージェント３３Ａは，例えば，ＶＭホスト２Ａと接続した物理スイッチ２４Ａ及び物理スイッチ２４Ｂに監視パケットを送信し，その応答の有無によって各物理スイッチの状態を判断するものである。図７及び図８の例においては，ゲストＯＳ３１Ａの監視エージェント３３Ａが管理情報の作成等を行う場合について説明する。
【００５０】
管理情報は，ゲストＯＳ３１Ａ上で動作可能なアプリケーションの優先度と，そのアプリケーションの動作に必要な通信帯域の情報とを組み合わせた情報である。この管理情報は，例えば，監視エージェント３３Ａが，優先度管理情報３２１に記憶された各アプリケーションの優先度に関する情報と，必要帯域管理情報３２２に記憶された各アプリケーションを動作させるために必要な通信帯域に関する情報とを組み合わせて作成する。
【００５１】
図７に戻り，ゲストＯＳ３１Ａは，管理情報を含む管理パケットを作成し（Ｓ２），ホストＯＳ２１Ａに向けて送信する（Ｓ３）。この管理パケットの作成及び送信は，上記の監視エージェント３３Ａが行うものであってよい。
【００５２】
［図７のＳ４からＳ７］
ＶＭホスト２ＡのホストＯＳ２１Ａは，例えば，ゲストＯＳ３１Ａから管理パケットを受信したときに，現在使用可能な通信帯域の情報を取得し（Ｓ４），管理パケットに含まれる管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択する（Ｓ５）。
【００５３】
すなわち，図８の例においては，物理ＮＩＣ２２Ａと物理スイッチ２４Ａとの間の通信回線が通信不可になった場合，ＶＭホスト２Ａは，物理ＮＩＣ２２Ｂと物理スイッチ２４Ｂとの間の通信回線によってのみ外部と通信が可能になる。この場合，ゲストＯＳ３１Ａ上で動作するアプリケーションが使用することができる通信帯域が減少する場合がある。そのため，ＶＭホスト２ＡのホストＯＳ２１Ａは，ゲストＯＳ３１Ａから受信した管理情報と，ＶＭホスト２Ａが現在使用可能な通信帯域の情報とに基づいて，ゲストＯＳ３１Ａ上で動作するアプリケーションのうち優先度が低いものを選択し，これをゲストＯＳ３１Ａに停止させる。これにより，ゲストＯＳ３１Ａ上で動作するアプリケーションのうち優先度が高いものについては，その動作を継続させる。
【００５４】
なお，図７の例では，ホストＯＳ２１Ａが有するネットワークドライバ２５Ａが，ゲストＯＳ３１Ａに停止させるアプリケーションを選択する場合について説明する。このネットワークドライバ２５Ａは，例えば，ゲストＯＳ３１Ａから送信されたパケットのヘッダーを確認することにより，管理パケットを特定するものであってよい。
【００５５】
図７の例において，ＶＭホスト２Ａが現在使用可能な通信帯域は，例えば，ネットワークドライバ２５Ａの一部である帯域計測部２１１が計測するものであってよい（Ｓ４）。また，ネットワークドライバ２５Ａは，帯域計測部２１１によって，現在使用可能な通信帯域を常時計測し続けるものであってもよい。そして，ネットワークドライバ２５Ａは，例えば，管理情報と現在使用可能な通信帯域の情報とに基づいて，ゲストＯＳ３１Ａ上で現在動作しているアプリケーションのうち，停止するアプリケーションを選択する（Ｓ５）。具体的に，ネットワークドライバ２５Ａは，例えば，管理情報含まれる優先度が低いアプリケーションを優先して，停止するアプリケーションとして選択していく。そして，ネットワークドライバ２５Ａは，継続して動作させるアプリケーションが必要とする通信帯域の合計値が，現在使用可能な通信帯域内に収まるまで（現在使用可能な通信帯域を下回るまで），停止するアプリケーションの選択を行う。停止するアプリケーションの選択の詳細については後述する。
【００５６】
次に，ホストＯＳ２１Ａは，選択したアプリケーションの情報を含む応答パケットを作成し，作成した応答パケットをゲストＯＳ３１Ａに送信する（Ｓ６，Ｓ７）。
【００５７】
すなわち，同一ＶＭホスト２Ａ内の複数の仮想マシン３Ａを様々な利用者が利用している場合，セキュリティの観点からＶＭホスト２Ａと仮想マシン３Ａとの直接通信を認めない場合がある。しかし，この場合においても，仮想マシン３Ａは，ＶＭホスト２Ａに接続した物理スイッチの動作状態を確認する場合等においては，ＶＭホスト２Ａと通信を行う必要がある。そこで，本実施の形態におけるホストＯＳ２１Ａは，限定的に認められているＶＭホスト２Ａと仮想マシン３Ａとの通信手段を活用して，ゲストＯＳ３１Ａのアプリケーションが使用することができる通信帯域に関する情報をゲストＯＳ３１Ａに送信する。
【００５８】
［図７のＳ８］
ゲストＯＳ３１Ａは，ホストＯＳ２１Ａから応答パケットを受信した後，ホストＯＳ２１Ａにおいて選択されたアプリケーションを停止する（Ｓ８）。図８の例では，ゲストＯＳ３１Ａから応答パケットを受信した監視エージェント３３Ａが，応答パケットに含まれる選択したアプリケーションの情報をアプリケーション制御部３１５に通知する。そして，アプリケーション制御部３１５が選択されたアプリケーションの停止を行う。
【００５９】
このように，本実施の形態によれば，ＶＭホスト２ＡのホストＯＳ２１Ａは，仮想マシン３ＡのゲストＯＳ３１Ａ上で動作可能なアプリケーションの優先度と，そのアプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを，ゲストＯＳ３１Ａから受信する。次に，ホストＯＳ２１Ａは，ゲストＯＳ３１Ａから受信した管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択する。そして，ホストＯＳ２１Ａは，選択したアプリケーションの情報を含む応答パケットをゲストＯＳ３１Ａに送信し，ゲストＯＳ３１Ａに選択したアプリケーションを停止させる。これにより，ゲストＯＳ３１Ａは，ＶＭホスト２Ａまたはその周辺の通信回線で発生した障害を検知することができる。そのため，ゲストＯＳ３１Ａは，障害の発生に応答して重要度の低いアプリケーションを停止させることにより，重要度の高いアプリケーションを継続して動作させるための通信帯域を確保することが可能になる。
【００６０】
また，本実施の形態によれば，ゲストＯＳ３１Ａは，ゲストＯＳ３１ＡとホストＯＳ２１Ａとのやり取りだけで，ＶＭホスト２Ａまたはその周辺の通信回線で発生した障害を検知することができる。したがって，例えば，ゲストＯＳ３１Ａは，管理サーバ１等の制御を受ける必要がない。そのため，例えば，ＶＭホスト２Ａと管理サーバ１との間の通信回線に障害等が発生して通信不可になった場合においても，ゲストＯＳ３１Ａは，重要度の高いアプリケーションを継続して動作させるための通信帯域を確保することが可能になる。
【００６１】
[第１の実施の形態の詳細]
次に，第１の実施の形態の詳細について説明する。図９及び図１０は，本実施の形態におけるネットワーク管理処理の詳細を説明するフローチャート図である。また，図１１は，本実施の形態における管理情報と帯域情報を説明する図である。図８及び図１１を参照しながら，図９及び図１０のネットワーク管理処理の詳細を説明する。
【００６２】
［仮想マシン（ゲストＯＳ）の処理］
初めに，仮想マシン３Ａにおいて実行される処理について説明する。図９は，仮想マシン３ＡのゲストＯＳ３１Ａにおいて実行されるネットワーク管理処理のフローチャートである。
【００６３】
ゲストＯＳ３１Ａの管理情報作成部３１１は，例えば，監視パケットの送信時間になったときに（Ｓ１１のＹＥＳ），各アプリケーションの優先度の情報と各アプリケーションを動作させるために必要な通信帯域の情報に基づいて管理情報を作成する（Ｓ１２）。そして，ゲストＯＳ３１Ａの管理パケット作成部３１２は，作成した管理情報を含む管理パケットを作成し（Ｓ１３），ゲストＯＳ３１Ａの管理パケット送信部３１３は，ホストＯＳ２１Ａに管理パケットを送信する（Ｓ１４）。管理情報及び管理パケットについては図７で説明したため，ここでは詳細な説明を省略する。なお，管理情報作成部３１１は，例えば，管理サーバ１からの指示を受けたときに管理情報の作成を行うものであってもよい。
【００６４】
次に，ゲストＯＳ３１Ａの応答パケット受信部３１４がホストＯＳ２１Ａから応答パケットを受信した場合（Ｓ１５のＹＥＳ），アプリケーション制御部３１５は，応答パケットに含まれる管理情報（ホストＯＳ２１Ａによって更新された管理情報）に基づいて，選択されたアプリケーションの停止を行う（Ｓ１６）。そして，ゲストＯＳ３１Ａは，例えば，次の監視パケットの送信時間まで待機する。
【００６５】
［ＶＭホスト（ホストＯＳ）の処理］
次に，ＶＭホスト２Ａにおいて実行される処理について説明する。図１０は，ＶＭホスト２ＡのホストＯＳ２１Ａにおいて実行されるネットワーク管理処理のフローチャートである。
【００６６】
図１０の例において，ホストＯＳ２１Ａのアプリケーション選択部２１３は，例えば，ホストＯＳ２１Ａの管理パケット受信部２１２が管理情報を含む管理パケットをゲストＯＳ３１Ａから受信する（Ｓ２１のＹＥＳ）。また，アプリケーション選択部２１３は，例えば，ホストＯＳ２１Ａの帯域計測部２１１が計測したＶＭホスト２Ａが現在使用可能な帯域の情報を取得する（Ｓ２２のＹＥＳ）。そして，アプリケーション選択部２１３は，例えば，管理パケットを受信し（Ｓ２１のＹＥＳ），さらに，現在使用可能な帯域の情報を取得したときに（Ｓ２２のＹＥＳ），停止するゲストＯＳ３１Ａのアプリケーションの選択をするか否かの判断を行う（Ｓ２３）。具体的に，アプリケーション選択部２１３は，例えば，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要としている通信帯域の合計値が，ＶＭホスト２Ａが現在使用可能な通信帯域を上回っている場合に（Ｓ２３のＹＥＳ），停止するアプリケーションの選択を行う（Ｓ２４）。
【００６７】
すなわち，ＶＭホスト２Ａが外部と通信するための通信回線は，障害によってその一部が通信できなくなる場合がある。この場合，障害発生前においては，ゲストＯＳ３１Ａ上で動作中のアプリケーションが動作するために必要な通信帯域を確保することができていたが，障害の発生によってその通信帯域が不足する場合がある。そのため，アプリケーション選択部２１３は，ゲストＯＳ３１Ａ上で動作するアプリケーションの管理情報と現在使用可能である通信帯域の情報とに基づいて，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要としている通信帯域の合計値と，現在使用可能な通信帯域との比較を定期的に行う。これにより，アプリケーション選択部２１３は，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要としている通信帯域の合計値が，現在使用可能な通信帯域を上回っている場合に，優先度が低いアプリケーションを停止させることが可能になる。そして，ゲストＯＳ３１Ａは，優先度が高いアプリケーションの動作を継続させることができる。以下，停止するアプリケーションの選択の具体例を説明する。
【００６８】
［停止するアプリケーションの選択の具体例（１）］
図１１は，図８に示す場合における管理情報及び現在使用可能な帯域の情報を説明する図である。初めに，ゲストＯＳ３１Ａが作成する管理情報について説明する。なお，以下の例において，ゲストＯＳ３１Ａで動作するアプリケーションは，ＶＭホスト２Ａが現在使用可能である通信帯域の全てを使用するものとして説明する。
【００６９】
図８の例において，ゲストＯＳ３１Ａの管理情報作成部３１１は，ゲストＯＳ３１Ａ上のおいて動作可能であるアプリケーションであるＡＰＰ１−１からＡＰＰ１−３の管理情報を作成する（Ｓ１２）。具体的に，管理情報作成部３１１は，優先度管理情報３２１及び必要帯域管理情報３２２から，ＡＰＰ１−１からＡＰＰ１−３の優先度の情報と，ＡＰＰ１−１からＡＰＰ１−３を動作させるために必要な帯域の情報とを取得する。そして，管理情報作成部３１１は，取得した優先度の情報とアプリケーションを動作させるために必要な情報とを組み合わせて管理情報を作成する。
【００７０】
図１１（Ａ）は，ゲストＯＳ３１Ａが作成した管理情報の具体例である。図１１（Ａ）においては，ＡＰＰ１−１は，優先度が「１」であり，必要帯域が「１０００（ＭＢ）」である。また，ＡＰＰ１−２は，優先度が「１０」であり，必要帯域が「５００（ＭＢ）」である。さらに，ＡＰＰ１−３は，優先度が「２０」であり，必要帯域が「５００（ＭＢ）」である。
【００７１】
また，図１１（Ａ）の管理情報は，各アプリケーションの現在の状態を有している。具体的に，図１１（Ａ）の例では，ＡＰＰ１−１及びＡＰＰ１−２の現在の状態は，動作中を示す「Ｏｎｌｉｎｅ」を示している。また，ＡＰＰ１−３の現在の状態は，停止中を示す「Ｏｆｆｌｉｎｅ」を示している。そのため，図１１（Ａ）の例では，現在ゲストＯＳ３１Ａ上で動作するアプリケーションが必要としている通信帯域は，ＡＰＰ１−１が使用する「１０００（ＭＢ）」と，ＡＰＰ１−２が使用する「５００（ＭＢ）」との合計値である「１５００（ＭＢ）」であることになる。
【００７２】
次に，現在使用可能な通信帯域の情報について説明する。図１１（Ｂ）は，ホストＯＳ２１Ａが取得した通信帯域の情報の具体例である。
【００７３】
図１１（Ｂ）においては，物理ＮＩＣ２２Ａの使用可能帯域が「０（ＭＢ）」であり，物理ＮＩＣ２３Ａの使用可能帯域が「１０００（ＭＢ）」であることを示している。すなわち，ゲストＯＳ３１Ａ上で動作するアプリケーションが現在使用可能な通信帯域は，物理ＮＩＣ２２Ａの「１０００（ＭＢ）」及び物理ＮＩＣ２３Ａの「０（ＭＢ）」の合計値である「１０００（ＭＢ）」になる。
【００７４】
ここで，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要としている通信帯域は，図１１（Ａ）によれば「１５００（ＭＢ）」である。一方，ゲストＯＳ３１Ａ上で動作するアプリケーションが現在使用可能な通信帯域は，図１１（Ｂ）によれば「１０００（ＭＢ）」である。したがって，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域は，ゲストＯＳ３１Ａ上で動作するアプリケーションが現在使用可能な通信帯域を上回っている（Ｓ２３）。すなわち，図１１の例においては，ゲストＯＳ３１Ａ上で動作するアプリケーションは，現在，動作するために必要な通信帯域を使用できていないことになる。そのため，アプリケーション選択部２１３は，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域が，現在使用可能な通信帯域内に収まるように停止するアプリケーションの選択を行う（Ｓ２４）。
【００７５】
次に，ホストＯＳ２１Ａによる停止するアプリケーションの選択について説明する。図１１（Ｃ）は，ホストＯＳ２１Ａが更新した管理情報の具体例である。
【００７６】
図１１（Ａ）及び図１１（Ｂ）の例において，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域は，ゲストＯＳ３１Ａ上で動作するアプリケーションが現在使用可能な通信帯域よりも「５００（ＭＢ）」上回っている。そのため，アプリケーション選択部２１３は，「５００（ＭＢ）」分の通信帯域を使用するアプリケーションを停止するアプリケーションとして選択する。
【００７７】
ここで，アプリケーション選択部２１３は，例えば，優先度が低いアプリケーションを優先して，停止するアプリケーションの選択を行う。図１１（Ｃ）の例において，現在ゲストＯＳ３１Ａ上で動作しているアプリケーションは，図１１（Ｃ）の現在の状態によればＡＰＰ１−１及びＡＰＰ１−２である。また，ＡＰＰ１−１の優先度は「１」であり，ＡＰＰ１−２の優先度は「１０」である。そのため，アプリケーション選択部２１３は，初めに，優先度が低いアプリケーションであるＡＰＰ１−２を，停止するアプリケーションとして選択する（Ｓ２４）。そして，図１１（Ｃ）の例では，ＡＰＰ１−２が動作するために必要な帯域は「５００（ＭＢ）」である。そのため，アプリケーション選択部２１３は，ＡＰＰ１−２の動作を停止させることにより，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域が，現在使用可能な通信帯域内に収まるように制御することが可能になる。よって，アプリケーション選択部２１３は，ＡＰＰ１−２の動作を停止させた後，停止するアプリケーションの選択を終了する。
【００７８】
なお，停止するアプリケーションの選択は，必ずしも優先度が低いアプリケーションから順に選択する必要はない。すなわち，アプリケーション選択部２１３は，例えば，アプリケーションの優先度に各アプリケーションが使用する通信帯域に比例した値を重み付けとして加算し，これを基準として停止するアプリケーションを選択するものであってもよい。
【００７９】
図１０に戻り，アプリケーション選択部２１３は，選択したアプリケーションに関する管理情報内の情報を更新する（Ｓ２５）。図１１（Ｃ）の例では，アプリケーション選択部２１３は，選択したアプリケーションであるＡＰＰ１−２の現在の状態を「Ｏｎｌｉｎｅ」から「Ｔｏ  ｂｅ  ｏｆｆｌｉｎｅ」に更新する。そして，応答パケット作成部２１４は，更新した管理情報を含む応答パケットを作成し（Ｓ２６），応答パケット送信部２１５は，応答パケット作成部２１４が作成した応答パケットをゲストＯＳ３１Ａに送信する（Ｓ２７）。これにより，ゲストＯＳ３１Ａは，管理情報内の現在の状態が「Ｔｏ  ｂｅ  ｏｆｆｌｉｎｅ」であるアプリケーションを抽出することにより，停止すべきアプリケーションを認識することができ，そのアプリケーションを停止することが可能になる。そのため，ゲストＯＳ３１Ａは，ゲストＯＳ３１Ａ上で動作しているアプリケーションのうち，優先度の高いアプリケーションの動作を継続させることが可能になる。
【００８０】
[第２の実施の形態]
次に，第２の実施の形態について説明する。図１２は，第２の実施の形態におけるネットワーク管理処理を説明する図である。また，図１３は，第２の実施の形態における管理情報と帯域情報を説明する図である。図１３を参照しながら，図１２のネットワーク管理処理を説明する。
【００８１】
図１２は，同一のＶＭホスト２Ａ内に複数の仮想マシンが作成された場合の例である。例えば，他のＶＭホストからのマイグレーションにより，ＶＭホスト２Ａに新たな仮想マシン３Ｃが作成された場合，ＶＭホスト２Ａ内の仮想マシンの数は増加する。そして，図１２の例におけるＶＭホスト２Ａは，仮想マシン３Ａ及び仮想マシン３Ｃが同じ物理ＮＩＣ（物理ＮＩＣ２２Ａ，物理ＮＩＣ２３Ａ）を使用する構成である。そのため，新たな仮想マシン３Ｃのアプリケーションの実行により，仮想マシン３Ａのアプリケーションが使用する通信帯域が不足する場合がある。
【００８２】
すなわち，アプリケーションを動作するために必要な通信帯域の不足は，ＶＭホスト２Ａの通信回線に障害が発生した場合（第１の実施の形態で説明した場合）以外にも，例えば，ＶＭホスト２Ａ内の仮想マシンの増加によって発生する。なお，ＶＭホスト２Ａ内の仮想マシンは，上記のようにマイグレーションによらない場合であっても，ＶＭホスト２Ａ内に新たなゲストＯＳが作成されることによって増加する。
【００８３】
図１２において，ＶＭホスト２Ａには，仮想マシン３Ａと仮想マシン３Ｃが作成されている。図１２においては，仮想マシン３ＡのゲストＯＳ３１Ａが有するアプリケーション（ＡＰＰ１−１からＡＰＰ１−３）と，アプリケーションの起動または停止等の制御を行うアプリケーション制御部３１５とを記載している。仮想マシン３Ａの仮想ＮＩＣ３２Ａは，ネットワークドライバ２５Ａを介してＶＭホスト２Ａの物理ＮＩＣ２２Ａ及び物理ＮＩＣ２３Ａに仮想的に接続している。また，ゲストＯＳ３１Ａは，第１の実施の形態と同様に，監視エージェント３３Ａを有している。
【００８４】
一方，図１２における仮想マシン３Ｃは，例えば，マイグレーションによりＶＭホスト２Ａに新たに作成された仮想マシンであり，アプリケーション（ＡＰＰ３−１）を有している。仮想マシン３Ｃの仮想ＮＩＣ３２Ｃは，ネットワークドライバ２５Ａを介してＶＭホスト２Ａの物理ＮＩＣ２２Ａ及び物理ＮＩＣ２３Ａに仮想的に接続している。また，仮想マシン３ＣのゲストＯＳ３１Ｃは，監視エージェント３３Ｃを有している。さらに，図１２の例では，物理ＮＩＣ２２Ａは，物理スイッチ２４Ａに接続しており，物理ＮＩＣ２３Ａは，物理スイッチ２４Ｂに接続している。
【００８５】
［停止するアプリケーションの選択の具体例（２）］
図１３（Ａ）は，仮想マシン３ＡのゲストＯＳ３１Ａが作成した管理情報の具体例である。また，図１３（Ｂ）は，仮想マシン３ＣのゲストＯＳ３１Ｃが作成した管理情報の具体例である。図１３（Ａ）においては，図１１の場合と同様に，ＡＰＰ１−１は，優先度が「１」であり，必要帯域が「１０００（ＭＢ）」である。また，ＡＰＰ１−２は，優先度が「１０」であり，必要帯域が「５００（ＭＢ）」である。さらに，ＡＰＰ１−３は，優先度が「２０」であり，必要帯域が「５００（ＭＢ）」である。また，図１１の場合と同様に，ＡＰＰ１−１及びＡＰＰ１−２の現在の状態は，動作中を示す「Ｏｎｌｉｎｅ」であり，ＡＰＰ１−３の現在の状態は，停止中を示す「Ｏｆｆｌｉｎｅ」である。そのため，ゲストＯＳ３１Ａのアプリケーションが動作するために必要な通信帯域は，ＡＰＰ１−１が使用する「１０００（ＭＢ）」とＡＰＰ１−２が使用する「５００（ＭＢ）」との合計値である「１５００（ＭＢ）」である。
【００８６】
一方，図１３（Ｂ）においては，ＡＰＰ３−１は，優先度が「５」であり，必要な通信帯域が「１０００（ＭＢ）」である。また，ＡＰＰ３−１の現在の状態は，動作中を示す「Ｏｎｌｉｎｅ」である。そのため，ゲストＯＳ３１Ｃのアプリケーションが動作するために必要な通信帯域は，ＡＰＰ３−１が使用する「１０００（ＭＢ）」である。
【００８７】
次に，ホストＯＳが取得した通信帯域の情報について説明する。図１３（Ｃ）は，ホストＯＳが取得した帯域の情報の具体例である。
【００８８】
図１３（Ｃ）においては，物理ＮＩＣ２２Ａの使用可能帯域が「１０００（ＭＢ）」であり，物理ＮＩＣ２２Ｂの使用可能帯域が「１０００（ＭＢ）」であることを示している。すなわち，ＶＭホスト２ＡのゲストＯＳ３１Ａ上で動作するアプリケーションが現在使用可能な通信帯域は，物理ＮＩＣ２２Ａの「１０００（ＭＢ）」及び物理ＮＩＣ２３Ａの「１０００（ＭＢ）」の合計値である「２０００（ＭＢ）」になる。すなわち，ＶＭホスト２Ａに仮想マシン３Ｃが作成される前においては，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域は「１５００（ＭＢ）」であり，使用可能な通信帯域である「２０００（ＭＢ）」を下回っていた。そのため，仮想マシン３Ｃに作成前においては，ゲストＯＳ３１Ａ上で動作するＡＰＰ１−１及びＡＰＰ１−２は，必要な通信帯域の確保が可能であった。
【００８９】
次に，ホストＯＳ２１Ａによるアプリケーションの選択について説明する。図１３（Ｄ）は，ホストＯＳ２１Ａが更新した管理情報の具体例である。
【００９０】
ホストＯＳ２１Ａは，ＶＭホスト２Ａ内に新たなゲストＯＳが作成された場合，その作成されたゲストＯＳの管理情報を含む管理パケットを受信する。そのため，図１３（Ｄ）においては，図１１（Ｃ）と異なり，アプリケーション選択部２１３は，ゲストＯＳ３１Ａが作成した管理情報と，ゲストＯＳ３１Ｃが作成した管理情報との両方に基づいて，停止するアプリケーションを選択する必要がある。具体的に，図１３（Ｄ）の例においては，ゲストＯＳ３１ＣのＡＰＰ３−１の優先度は「５」である。そのため，ＡＰＰ３−１は，優先度が「１０」であるＡＰＰ１−２及び優先度が「２０」であるＡＰＰ１−３よりも高い優先度を有していることになる。そして，図１３（Ｄ）によれば，ＡＰＰ１−１の必要帯域は「１０００（ＭＢ）」であり，ＡＰＰ３−１の必要帯域は「１０００（ＭＢ）」であり，ＡＰＰ１−２の必要帯域は「５００（ＭＢ）」である。そのため，ＶＭホスト２ＡのゲストＯＳ３１Ａにおいて，現在動作中のアプリケーションが必要とする通信帯域の合計は，これらを加算した「２５００（ＭＢ）」になる。
【００９１】
したがって，動作中のアプリケーションが必要とする通信帯域の合計値が，図１３（Ｃ）において算出した現在使用可能な通信帯域を下回っている。そのため，アプリケーション選択部２１３は，動作中のアプリケーションの中で最も優先度が低いＡＰＰ１−２を停止するアプリケーションとして選択する（Ｓ２４）。そして，アプリケーション選択部２１３は，ＡＰＰ１−２の動作を停止させることにより，ゲストＯＳ３１Ａ上で動作中のアプリケーションが必要とする通信帯域が，現在使用可能な通信帯域内に収まるように制御することが可能になる。よって，アプリケーション選択部２１３は，停止するアプリケーションの選択を終了する。
【００９２】
次に，アプリケーション選択部２１３は，選択したアプリケーションに関する管理情報内の情報を更新する（Ｓ２５）。図１３（Ｄ）の例では，アプリケーション選択部２１３は，選択したアプリケーションであるＡＰＰ１−２の現在の状態を「Ｏｎｌｉｎｅ」から「Ｔｏ  ｂｅ  ｏｆｆｌｉｎｅ」に更新する。これにより，更新した管理情報を受信したゲストＯＳ３１Ａは，管理情報内の現在の状態が「Ｔｏ  ｂｅ  ｏｆｆｌｉｎｅ」であるアプリケーションを抽出することにより，停止すべきアプリケーションを停止することが可能になる。そのため，ゲストＯＳ３１Ａは，ゲストＯＳ３１Ａ上で動作している優先度の高いアプリケーションの動作を継続させることが可能になる。
【００９３】
[第３の実施の形態]
次に，第３の実施の形態について説明する。図１４は，第３の実施の形態におけるネットワーク管理処理を説明する図である。また，図１５は，第３の実施の形態における管理情報と帯域情報を説明する図である。図１５を参照しながら，図１４のネットワーク管理処理を説明する。
【００９４】
図１４は，仮想マシン３ＡのゲストＯＳ３１Ａ上で動作するアプリケーションと，仮想マシン３ＢのゲストＯＳ３１Ｂ上で動作するアプリケーションとがクラスタシステムを構成している場合の例である。具体的に，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｂは，図５の場合と同様に，それぞれ同じアプリケーションをインストールしている。そして，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｂに跨るように構成されたアプリケーション制御部３１５は，ゲストＯＳ３１Ａ及びゲストＯＳ３１Ｂのそれぞれにインストールされたアプリケーションを制御する。また，図１４におけるクラスタシステムは，正常時においては正常系のアプリケーション（例えば，ゲストＯＳ３１ＡのＡＰＰ１−１，ＡＰＰ１−２，ＡＰＰ１−３）が動作する。そして，正常系のアプリケーションに異常が発生した場合に，アプリケーション制御部３１５は，正常系のアプリケーションから待機系のアプリケーション（例えば，ゲストＯＳ３１ＢのＡＰＰ２−１，ＡＰＰ２−２，ＡＰＰ２−３）に切り替えて動作させる。また，ゲストＯＳ３１Ａは，監視エージェント３３Ａを有しており，ゲストＯＳ３１Ｂは，監視エージェント３３Ｂを有している。その他の各構成については図５や図１２等で説明したため，ここでは詳細な説明を省略する。
【００９５】
［停止するアプリケーションの選択の具体例（３）］
図１５（Ａ）は，仮想マシン３ＡのゲストＯＳ３１Ａが作成した管理情報の具体例である。図１５（Ａ）においては，図１１の場合と同様に，ゲストＯＳ３１Ａのアプリケーションが動作するために必要な通信帯域は，ＡＰＰ１−１が使用する「１０００（ＭＢ）」とＡＰＰ１−２が使用する「５００（ＭＢ）」との合計値である「１５００（ＭＢ）」である。
【００９６】
図１５（Ａ）における管理情報は，図１１の場合と異なり，切り替え情報を有している。この切り替え情報は，ゲストＯＳ３１Ａのアプリケーション制御部３１５がアプリケーションを停止する際に，クラスタシステムを構成する他のＶＭホストにおけるゲストＯＳのアプリケーションを起動するか否かを示す情報である。図１５（Ａ）では，ＡＰＰ１−１の切り替え状態は，アプリケーションを停止するときに，クラスタシステムを構成する他のＶＭホストにおけるゲストＯＳのアプリケーションを起動することを示す「Ｆａｉｌ  ｏｖｅｒ」を示している。また，ＡＰＰ１−２及びＡＰＰ１−３の切り替え状態は，アプリケーションを停止するときに，他のゲストＯＳのアプリケーションを起動しないことを示す「Ｓｔｏｐ」を示している。なお，その他の項目については図１１等で説明したため，ここでは詳細な説明を省略する。
【００９７】
すなわち，通信回線の障害等によって必要する通信帯域を確保できなくなった場合，アプリケーションが停止する可能性がある。この場合，優先度が高いアプリケーションについては，クラスタシステムを構成する他のゲストＯＳに切り替えて動作を継続させる必要がある。一方，優先度が高くないアプリケーション（例えば，時間的に余裕があるアプリケーション）については，必ずしも他のゲストＯＳに切り替える必要がない。また，アプリケーションの切り替えによって，他のゲストＯＳに負荷が集中することを避ける必要がある。したがって，アプリケーションの優先度等に応じて，各アプリケーションに「Ｆａｉｌ  ｏｖｅｒ」または「Ｓｔｏｐ」のいずれかを予め設定しておくことにより，リソース的に余裕を持った状態でアプリケーションの切り替えを行うことができる。
【００９８】
次に，図１５（Ｂ）において，ゲストＯＳ上で動作するアプリケーションが使用可能な通信帯域は，図１１の場合と同様に「１０００（ＭＢ）」である。そのため，図１５（Ｃ）において，アプリケーション選択部２１３は，図１１の場合と同様に，停止するアプリケーションとしてＡＰＰ１−２を選択する。
【００９９】
そして，ゲストＯＳ３１Ａから更新した管理情報を受信したアプリケーション制御部３１５は，管理情報内におけるＡＰＰ１−２の切り替え情報を参照し，仮想マシン３Ｂ内のＡＰＰ２の起動（アプリケーションの切り替え）を行うことなく，仮想マシン３Ａ内のＡＰＰ２の停止のみ行う。
【０１００】
なお，切り替え情報は，ホストＯＳ２１Ａにおいて更新されるものではない。そのため，ゲストＯＳ３１Ａは，切り替え情報を含めない形で管理情報を作成するものであってよい。この場合，ゲストＯＳ３１Ａは，アプリケーションの停止または切り替えを行う際に，切り替え情報を参照してアプリケーションの停止または切り替えを行うものであってもよい。
【０１０１】
本実施の形態においては，アプリケーション制御部３１５は，ホストＯＳ２１Ａが選択したアプリケーションが，他のゲストＯＳに切り替える必要がないアプリケーションである場合に，アプリケーションの停止のみを行うことが可能になる。そのため，切り替え先のゲストＯＳにおける通信帯域等のリソースを節約することが可能になる。
【０１０２】
[第４の実施の形態]
次に，第４の実施の形態について説明する。図１６は，第４の実施の形態における管理情報と帯域情報を説明する図である。
【０１０３】
第４の実施の形態は，図１４に示すようなクラスタシステムが構成された仮想マシンにおいて，優先度が高いアプリケーションは，常に他のホストＯＳに切り替えることを可能にするものである。すなわち，第４の実施の形態では，クラスタシステムを構成する他のホストＯＳにおいて，優先度が高いアプリケーションが動作するために使用する通信帯域を常に確保しておく。
【０１０４】
具体的に，第４の実施の形態における管理情報は，図１６に示すように，アプリケーションの停止中においても，そのアプリケーションを動作させるための通信帯域を確保しておく必要があるか否かを示す帯域確保情報を有している。そして，アプリケーション選択部２１３は，帯域確保情報が通信帯域を確保しておく必要があることを示す「Ｙｅｓ」であるアプリケーションが存在する場合，そのアプリケーションの帯域の確保を行う。
【０１０５】
すなわち，通信回線の障害等によってアプリケーションの切り替えを行う場合，クラスタシステムを構成する他のゲストＯＳにおいて切り替え対象のアプリケーションを起動するだけの通信帯域が確保できていない場合が考えられる。この場合，アプリケーションの切り替えによって，他のゲストＯＳで動作中の他のアプリケーションに影響を与える可能性がある。そのため，切り替え情報に「Ｆａｉｌ  ｏｖｅｒ」が設定されている場合に，帯域確保情報を「Ｙｅｓ」に設定することで，他のアプリケーションに影響を与えることなくアプリケーションの切り替えを行うことができる。
【０１０６】
［停止するアプリケーションの選択の具体例（４）］
図１６（Ａ）は，図１４におけるゲストＯＳ３１Ａが作成した管理情報の具体例である。図１６（Ａ）においては，ゲストＯＳ３１Ａのアプリケーションが動作するために必要な通信帯域は，ＡＰＰ１−３が使用する「５００（ＭＢ）」のみである。ここで，図１６（Ａ）において，ＡＰＰ１−１の切り替え情報には「Ｆａｉｌ  ｏｖｅｒ」が設定されており，ゲストＯＳ３１ＡにおいてＡＰＰ１−１は停止中である。そのため，ＡＰＰ１−１は，現在クラスタシステムを構成している他のゲストＯＳにおいて動作していることになる。そして，ＡＰＰ１−１の帯域確保情報には「Ｙｅｓ」が設定されているため，ゲストＯＳ３１Ａは，切り替えがいつ発生してもＡＰＰ−１を起動できるように，ＡＰＰ−１が必要とする通信帯域を確保しておく必要がある。したがって，アプリケーション選択部２１３は，停止中であるが通信帯域を確保する必要があるＡＰＰ１−１の通信帯域である「１０００（ＭＢ）」と，動作中のＡＰＰ１−３の通信帯域である「５００（ＭＢ）」との合計値である「１５００（ＭＢ）」を算出する。
【０１０７】
一方，図１６（Ｂ）において，ゲストＯＳ３１Ａ上で動作するアプリケーションが使用可能な通信帯域は，図１１の場合と同様に「１０００（ＭＢ）」である。そのため，通信帯域を確保する必要があるアプリケーションが使用する通信帯域と，動作中のアプリケーションが動作するために必要な通信帯域との合計値は，現在使用可能な通信帯域を上回っている。したがって，図１６（Ｃ）において，アプリケーション選択部２１３は，ＡＰＰ１−１及びＡＰＰ１−３のうち，最も優先度が低いＡＰＰ１−３の現在の状態を「Ｏｎｌｉｎｅ」から「Ｔｏ  ｂｅ  ｏｆｆｌｉｎｅ」に更新する。なお，「優先度」等の項目については図１１等で説明したため，ここでは詳細な説明を省略する。
【０１０８】
本実施の形態においては，アプリケーション選択部２１３は，現在停止中であるが通信帯域を確保する必要があるアプリケーションの通信帯域と，現在動作中のアプリケーションが必要とする通信帯域との合計値を算出する。そして，算出した合計値が，ＶＭホスト２Ａが現在の使用可能な帯域を下回るように，停止するアプリケーションを選択する。これにより，通信回線の障害等によってアプリケーションの切り替えが発生した場合においても，優先度が高いアプリケーションの動作に使用する通信帯域を確保することが可能になる。
【０１０９】
[第５の実施の形態]
次に，第５の実施の形態について説明する。図１７は，第５の実施の形態における管理情報と帯域情報を説明する図である。
【０１１０】
第５の実施の形態は，管理情報内の現在の状態が「Ｏｎｌｉｎｅ」を示しているアプリケーションであっても，そのアプリケーションが動作しない休眠時間においては，通信帯域を他のアプリケーションに割当てるものである。
【０１１１】
具体的に，第５の実施の形態における管理情報は，図１７に示すように，アプリケーションが通信を行わない時間帯（通信を行う時間帯）についての時間帯情報（以下，休眠時間情報とも呼ぶ）を有している。そして，アプリケーション選択部２１３は，休眠時間情報を参照し，現在の時間（停止するアプリケーションの選択を行う時間）が休眠時間含まれているアプリケーションが存在する場合，そのアプリケーションは停止しているものとしてアプリケーションの選択を行う。
【０１１２】
［停止するアプリケーションの選択の具体例（５）］
図１７（Ａ）は，例えば，図８におけるゲストＯＳ３１Ａが作成した管理情報の具体例である。図１７（Ａ）においては，図１１の場合と同様に，ゲストＯＳ３１Ａのアプリケーションが動作するために必要な通信帯域は，ＡＰＰ１−１が使用する「１０００（ＭＢ）」とＡＰＰ１−２が使用する「５００（ＭＢ）」との合計値である「１５００（ＭＢ）」である。また，図１７（Ｂ）において，ゲストＯＳ３１Ａ上で動作するアプリケーションが使用可能な通信帯域は，図１１の場合と同様に「１０００（ＭＢ）」である。
【０１１３】
ここで，例えば，アプリケーション選択部２１３によるアプリケーションの選択が行われる時間が「８：００」であった場合，図１７（Ａ）における休眠時間情報によれば，この時間はＡＰＰ１−２の休眠時間に含まれる時間である。そのため，アプリケーション選択部２１３は，動作中のアプリケーションが必要とする通信帯域の合計値である「１５００（ＭＢ）」から，休眠中のＡＰＰ１−２の通信帯域である「５００（ＭＢ）」を減算した「１０００（ＭＢ）」を算出する。そして，算出した「１０００（ＭＢ）」は，現在使用可能な通信帯域である「１０００（ＭＢ）」に収まるため，アプリケーション選択部２１３は，停止するアプリケーションの選択を行わない。
【０１１４】
すなわち，アプリケーション選択部２１３は，休眠中のアプリケーションが存在する場合，動作中のアプリケーションが使用する通信帯域の合計値から，休眠中のアプリケーションの通信帯域を減算した値を算出する。そして，アプリケーション選択部２１３は，減算により算出した値が，現在使用可能な通信帯域を下回る（現在使用可能な通信帯域に収まる）ように停止するアプリケーションを選択する。これにより，通信帯域を効率的に使用し，より多くのアプリケーションを同時に動作させることが可能になる。なお，アプリケーション選択部２１３は，アプリケーションの休眠時間が一定時間以上（例えば，１時間以上）残されている場合に限り，そのアプリケーションは停止しているものとしてアプリケーションの選択を行うものであってもよい。
【０１１５】
以上の実施の形態をまとめると，以下の付記のとおりである。
【０１１６】
（付記１）
仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを，前記仮想マシンから受信する情報取得部と，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションを前記仮想マシンに停止させるために，前記選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する選択部と，を有する
ネットワーク管理装置。
【０１１７】
（付記２）
付記１において，
前記選択部は，前記停止するアプリケーションの選択を，動作中の前記アプリケーションが使用する通信帯域の合計値が前記使用可能な通信帯域を下回るように行うネットワーク管理装置。
【０１１８】
（付記３）
付記２において，
前記選択部は，前記停止するアプリケーションの選択を，前記優先度が低いアプリケーションを優先して行うネットワーク管理装置。
【０１１９】
（付記４）
付記１において，
前記情報取得部は，前記仮想マシンが作成された物理マシン内に新たな仮想マシンが作成された場合，該新たな仮想マシンの管理情報を含む管理パケットを受信するネットワーク管理装置。
【０１２０】
（付記５）
付記４において，
前記物理マシン内に新たな仮想マシンが作成される場合は，他の物理マシンから前記物理マシンへ仮想マシンのマイグレーションが行われる場合と，前記物理マシン内に新たな仮想マシンが作成される場合とを含むネットワーク管理装置。
【０１２１】
（付記６）
付記１において，
前記仮想マシンは，該仮想マシンのアプリケーションと同じアプリケーションを有する他の物理マシン内の仮想マシンとクラスタを構成しており，
前記選択部は，前記アプリケーションを停止する際に，該停止するアプリケーションに対応する前記他の仮想マシンのアプリケーションを起動させるネットワーク管理装置。
【０１２２】
（付記７）  
付記６において，
前記管理情報は，前記アプリケーションを停止する際に，前記他の物理マシン内の仮想マシンにおけるアプリケーションを起動するか否かについての切り替え情報をさらに有しており，
前記選択部は，前記切り替え情報に基づいて，前記他の物理マシン内の仮想マシンにおけるアプリケーションを起動するか否かについて判断するネットワーク管理装置。
【０１２３】
（付記８）
付記２において，
前記管理情報は，前記アプリケーションの停止中に，該アプリケーションを動作させるために必要な通信帯域を確保するか否かについての帯域確保情報をさらに有しており，
前記選択部は，前記停止するアプリケーションの選択を，前記通信帯域を確保する必要があるアプリケーションの通信帯域を前記合計値に加算した値が，前記使用可能な帯域を下回るように行うネットワーク管理装置。
【０１２４】
（付記９）
付記２において，
前記管理情報は，前記アプリケーションが通信を行う時間帯についての時間帯情報をさらに有しており，
前記選択部は，前記アプリケーションが通信を行わない時間帯には，前記停止するアプリケーションの選択を，前記合計値から前記通信を行わないアプリケーションの通信帯域を減算した値が，前記使用可能な帯域を下回るように行うネットワーク管理装置。
【０１２５】
（付記１０）
仮想マシンと，該仮想マシンに通信可能なネットワーク管理装置を有する情報処理システムであって，
前記仮想マシンは，該仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションの動作に使用する通信帯域の情報とを組み合わせた管理情報を含む管理パケットを作成する情報作成部と，
前記管理パケットを前記ネットワーク管理装置に送信する情報送信部とを有し，
前記ネットワーク管理装置は，前記管理パケットを受信する情報取得部と，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する選択部とを有し，
前記仮想マシンは，さらに，前記応答パケット内の情報に基づいて，前記選択されたアプリケーションを停止する制御部を有する
情報処理システム。
【０１２６】
（付記１１）
仮想マシン上で動作可能なアプリケーションの優先度と，該アプリケーションを動作させるために使用する通信帯域とを組み合わせた管理情報を含む管理パケットを，前記仮想マシンから受信し，
前記管理情報と現在使用可能な通信帯域の情報とに基づいて，停止させるべきアプリケーションを選択し，該選択したアプリケーションを前記仮想マシンに停止させるために，前記選択したアプリケーションの情報を含む応答パケットを前記仮想マシンに送信する処理をコンピュータに実行させる
プログラム。
【符号の説明】
【０１２７】
１：管理サーバ              ２：ＶＭホスト
３：仮想マシン              ４：仮想化ソフトウエア
５：データセンタ            ６：利用者端末  
２１Ａ，２１Ｂ：ホストＯＳ  ３１Ａ，３１Ｂ：ゲストＯＳ  
【図１】
2015184734.tif 000003
【図２】
2015184734.tif 000004
【図３】
2015184734.tif 000005
【図４】
2015184734.tif 000006
【図５】
2015184734.tif 000007
【図６】
2015184734.tif 000008
【図７】
2015184734.tif 000009
【図８】
2015184734.tif 000010
【図９】
2015184734.tif 000011
【図１０】
2015184734.tif 000012
【図１１】
2015184734.tif 000013
【図１２】
2015184734.tif 000014
【図１３】
2015184734.tif 000015
【図１４】
2015184734.tif 000016
【図１５】
2015184734.tif 000017
【図１６】
2015184734.tif 000018
【図１７】
2015184734.tif 000019