(57)【特許請求の範囲】
【請求項１】
制御部と、前記制御部によって実行される制御プログラムを格納する記憶部と、外部装置との通信経路をそれぞれ備える複数の物理インターフェースと、を含み、前記物理インターフェースを介して外部装置に接続される計算機で実行される制御方法であって、
前記計算機には、前記制御プログラムによって第１の論理区画及び第２の論理区画を含む複数の論理区画が構築され、
前記第２の論理区画には、それぞれ異なる前記物理インターフェースと対応づけられた複数の第２の仮想インターフェースが設定され、
前記第１の論理区画には、前記第２の仮想インターフェースと対応づけられた前記物理インターフェースと対応づけられた複数の第１の仮想インターフェースが設定され、
前記記憶部には、前記物理インターフェースと前記第１の仮想インターフェース及び前記第２の仮想インターフェースとの対応関係と、前記第２の論理区画と前記外部装置との通信に用いられる前記複数の第２の仮想インターフェースの優先順位と、を示す管理情報が格納されており、
前記制御部は、前記制御プログラムを実行することによって、
前記第１の仮想インターフェース又は第２の仮想インターフェースによって受信された前記外部装置への通信データを取得し、
前記管理情報を参照して、前記外部装置への通信に使用する前記物理インターフェースを選択し、
前記第２の論理区画と前記外部装置との通信に使用されている通信経路に障害が発生した場合は、前記管理情報を参照して、当該障害が発生した通信経路を備える前記物理インターフェースとは異なる前記物理インターフェースと対応づけられた前記第２の仮想インターフェースのうち、前記優先順位が最も高い前記第２の仮想インターフェースに変更することを特徴とする計算機の制御方法。
【請求項２】
前記第２の論理区画において、前記第２の仮想インターフェースと前記物理インターフェースとの通信を中継するブリッジが設定されており、
前記第２の論理区画において、前記送信された通信データが、前記第２の仮想インターフェースに対応するブリッジを介して、前記物理インターフェースに送信されることを特徴とする請求項１に記載の計算機の制御方法。
【請求項３】
前記第２の論理区画は、仮想制御部と前記通信経路を管理する管理プログラムとを備え、
前記仮想制御部は、前記管理プログラムを実行することによって、前記外部装置と通信して、前記外部装置との通信経路の障害の有無を検出することを特徴とする請求項１に記載の計算機の制御方法。
【請求項４】
前記外部装置は、前記第１の論理区画又は前記第２の論理区画と通信し、
前記制御部は、
前記通信の結果、前記計算機に含まれる構成要素の障害の有無を検出することを特徴とする請求項１に記載の計算機の制御方法。
【請求項５】
前記第１の論理区画は、ユーザプログラムを備え、
前記制御部は、前記ユーザプログラムを実行することによって、
前記管理情報を参照し、
前記参照の結果、前記外部装置との通信に使用する前記第２の仮想インターフェースを選択することを特徴とする請求項１に記載の計算機の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機に設定された論理区画上で稼動するＯＳやアプリケーションによる通信の高信頼化技術に関する。
【背景技術】
【０００２】
情報システムの大規模化や複雑化に伴って、情報システムを構成するサーバの運用管理コストが増大する。このような問題を解決するために、既存の物理的なサーバを仮想的なサーバに割り当てて、物理的なサーバの台数を削減する「サーバ統合」が知られている。このサーバ統合を実現する手段として、「サーバ仮想化技術」が知られている。
【０００３】
サーバ仮想化技術とは、一台の計算機資源を複数の論理的な区画に分割する技術である。各区画はＯＳ（ゲストＯＳ）が稼動し、各区画がそれぞれ仮想的なサーバとして機能する。この論理的な区画を生成し、生成した区画を制御するソフトウェアは、仮想計算機モニタ（ＶＭＭ）と呼ばれる。ＶＭＭによって生成された各区画それぞれで稼働するゲストＯＳによって、各区画が独立したサーバとして機能する情報システムを構築できる。
【０００４】
このような情報システムにおいて、ＶＭＭに障害が発生すると、情報システムに致命的な影響を与える可能性がある。そのため、情報システムの信頼性を確保するために、ＶＭＭの障害を監視することが重要である。さらに、障害監視において、障害検出の抜けや過剰検出等が問題となるため、障害監視の高信頼性が必須となる。
【０００５】
障害監視を高信頼化するためには、障害監視に関連する資源を多重化する。障害監視に関連する資源とは、管理サーバ及び管理サーバとの通信路の二つである。
【０００６】
管理サーバについては、管理サーバを多重化すればよい。一方で、管理サーバとの通信路については、サーバ仮想化技術の適用によって次のような課題が発生する。
【０００７】
すなわち、サーバ仮想化技術によって、一台の計算機に複数の区画が生成されているため、個々の区画で稼動するＯＳそれぞれがＩ／Ｏデバイスを利用する。このため、管理サーバとの通信路を専用に確保し、この通信路を多重化すると、Ｉ／Ｏデバイスが消費される。結果として、サーバ統合における統合可能な台数が減少し、運用管理コストを低減する効果が低くなる。
【０００８】
従って、Ｉ／Ｏデバイスを消費せずに、管理サーバとの通信路を高信頼化する課題が生じる。
【０００９】
この課題に対して、サーバ仮想化技術におけるＩ／Ｏデバイスの消費を抑える技術と、管理サーバ間の通信路を高信頼化する技術と、の二つの従来技術が知られている。
【００１０】
サーバ仮想化技術におけるＩ／Ｏデバイスの消費を抑える技術については、サービスＯＳ（Hosting Partition）を用意し、このサービスＯＳが物理Ｉ／Ｏデバイスを直接制御する。他の区画では、仮想的なＩ／Ｏデバイスへのアクセスを受け付けると、ＶＭＭによってサービスＯＳに通知され、物理Ｉ／Ｏデバイスへのアクセスが実施される。これによって、複数の区画による単一のＩ／Ｏデバイスの共有が可能となり、Ｉ／Ｏデバイスの消費を抑制する（特許文献１参照）。このように、Ｉ／ＯデバイスであるＮＩＣ（Network Interface Card）を共有する技術を「ＮＩＣ共有技術」と呼ぶ。
【００１１】
また、管理サーバ間の通信路を高信頼化する技術として、多重化が知られている。多重化する際には管理サーバも同様に多重化され、個々の管理サーバで障害が発生しても監視が停止しないようにするのが一般的である。また、多重化された通信路と監視サーバとを用いて、管理サーバや通信路における障害（通信エラー等）を検出した場合に、他の管理サーバ及び通信路に切り替える。このような技術を「Ｆａｉｌ  Ｏｖｅｒ技術」と呼ぶ。
【特許文献１】米国特許第６７２５２８４号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、前述のようなＮＩＣ共有技術と、Ｆａｉｌ  Ｏｖｅｒ技術とを組み合わせた場合には、次のような問題が発生する。
【００１３】
ＮＩＣ共有技術では、管理サーバとの通信路としてＮＩＣを他の区画と共用することでＩ／Ｏデバイス消費を抑える。そのため、Ｆａｉｌ  Ｏｖｅｒによって、該ＮＩＣをＦａｉｌ  Ｏｖｅｒすると、外部ネットワークと通信が不可能になる区画が生じる。従って、管理サーバや通信路の障害が、他の区画に波及するという問題が生じる。
【００１４】
本発明は、このような従来技術の問題を鑑みて、サーバ仮想化技術を用いた際の管理サーバとの通信路として、Ｉ／Ｏデバイスの消費を抑えるため、他のゲストが利用している物理ＮＩＣを共有しつつ、管理サーバの障害によって、通信路のＦａｉｌ  Ｏｖｅｒを行った場合にも、他のゲストの運用に影響を及ぼさないことを目的とする。
【課題を解決するための手段】
【００１５】
本発明による一実施形態によると、制御部と、制御部によって実行される制御プログラムを格納する記憶部と、外部装置との通信経路をそれぞれ備える複数の物理インターフェースと、を含み、物理インターフェースを介して外部装置に接続される計算機で実行される制御方法であって、計算機には、制御プログラムによって第１の論理区画及び第２の論理区画を含む複数の論理区画が構築され、第２の論理区画には、それぞれ異なる物理インターフェースと対応づけられた複数の第２の仮想インターフェースが設定され、第１の論理区画には、第２の仮想インターフェースと対応づけられた物理インターフェースと対応づけられた複数の第１の仮想インターフェースが設定され、記憶部には、物理インターフェースと第１の仮想インターフェース及び第２の仮想インターフェースとの対応関係と、第２の論理区画と外部装置との通信に用いられる複数の第２の仮想インターフェースの優先順位と、を示す管理情報が格納されており、制御部は、制御プログラムを実行することによって、第１の仮想インターフェース又は第２の仮想インターフェースによって受信された外部装置への通信データを取得し、管理情報を参照して、外部装置への通信に使用する物理インターフェースを選択し、第２の論理区画と外部装置との通信に使用されている通信経路に障害が発生した場合は、管理情報を参照して、当該障害が発生した通信経路を備える前記物理インターフェースとは異なる物理インターフェースと対応づけられた第２の仮想インターフェースのうち、第２の仮想インターフェースの優先順位が最も高い第２の仮想インターフェースに変更することを特徴とする。
【発明の効果】
【００１６】
本発明により、サービス区画のサービスＯＳが使用する物理ＮＩＣを他のユーザ区画のユーザＯＳと共有しつつ、通信障害の発生時には、共有している物理ＮＩＣのコンフィグレーションを変更せずに、サービスＯＳが通信に使用する仮想ＮＩＣのみを変更するので、ユーザＯＳに影響を与えることなく通信を継続することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下に、本発明の実施の形態を図面を参照して説明する。
【００１８】
図１は、本発明の第１の実施の形態の物理計算機２００及び仮想計算機システムのブロック図である。
【００１９】
本発明の実施の形態では、一つの物理計算機２００において、制御プログラム１０が複数の区画１１を構成する。この区画１１は、それぞれ、ユーザＯＳ１１１及びユーザアプリケーション１１０が動作している。また、制御プログラム１０は、それぞれの区画１１を管理する管理アプリケーション１２０が動作するサービス区画１２を構成する。
【００２０】
すなわち、物理計算機２００内において、制御プログラム１０によって、複数の区画１１及びサービス区画１２が仮想計算機システムを構成する。
【００２１】
物理計算機２００は、複数の物理ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０１（２０１−１、２０１−２）、シリアルインタフェース２０２、ＣＰＵ２０３及びメモリ２０４を有する。
【００２２】
物理ＮＩＣ２０１−１は、物理計算機２００の外部にあるネットワーク３００−１介して管理サーバ３０１−１及びクライアント３０２−１と接続する。
【００２３】
物理ＮＩＣ２０１−２は物理計算機２００の外部にあるネットワーク３００−２介して管理サーバ３０１−２及びクライアント３０２−２と接続する。
【００２４】
これらのネットワーク３００−１及び３００−２は、例えばＥｔｈｅｒｎｅｔ（登録商標、以下同じ）によって構成される。なお、ネットワーク３００−１及び３００−２が、有線のネットワークであってもよいし、無線のネットワークであってもよい。また、有線ネットワークの場合、そのケーブルが光ファイバや電力線等によって構成されていてもよい。
【００２５】
シリアルインタフェース（Ｉ／Ｆ）２０２は、物理計算機２００の外部にある入出力端末３０３と接続する。
【００２６】
入出力端末３０３は、管理画面を出力し、また、管理者３０４による入力を受け付け、この入力によって物理計算機２００を設定する。なお、本実施形態では、物理計算機２００と入出力端末３０３とがシリアルインタフェース２０２によって接続されているが、他のインターフェースであってもよい。例えば、入出力端末３０３がネットワーク３００を経由して接続されており、管理者がＷｅｂインターフェースから設定してもよい。また、管理サーバが３０１においてＩＰＭＩやＳＮＭＰ等のプロトコルを用いて、この管理サーバ３０１を管理者操作することによって、物理計算機２００を設定してもよい。また、物理計算機２００にＶＧＡカードやキーボード及びマウス等のインターフェースを設け、制御プログラム１０からの出力をＶＧＡカードから出力して、管理者からの入力を受け付けてもよい。
【００２７】
ＣＰＵ２０４は、物理計算機２００の処理を司る。また、メモリ２０５に格納されているプログラムを読み出して、そのプログラムに規定された処理を実行する。
【００２８】
メモリ２０５は、後述の制御プログラム１０等の各種のプログラムを格納する。
【００２９】
次に、制御プログラム１０について説明する。
【００３０】
制御プログラム１０は、物理計算機２００のハードウェアリソース（計算機資源）を論理的に分割して論理区画（ＬＰＡＲ：Logical PARtition）を管理するハイパバイザ（一般的に、ファームウェアと呼ばれる）である。すなわち、制御プログラム１０は、物理計算機２００のＣＰＵ２０４及びメモリ２０４を論理的に分割して、これらを区画１１として割り当てる。各制御区画１１では、論理的に分割されたＣＰＵ２０４が仮想的はＣＰＵとして動作し、ＯＳやプログラム等を実行する。
【００３１】
制御プログラム１０は、論理的に分割した論理区画を、ユーザに提供するための論理区画である区画１１と、制御プログラム１０の管理のためのサービス区画１２とを提供する。なお、区画１１は、管理者等によって任意の数を設定できる。また、サービス区画１２は一つの制御プログラム１０に一つのみ設定する。なお、制御プログラム１０が複数のサービス区画１２を設定してもよく、物理計算機２００内に複数のサービスＯＳが存在しても構わない。
【００３２】
また、制御プログラム１０は、計算機資源である物理ＮＩＣ２０１を、複数の仮想ＮＩＣとして設定し、この仮想ＮＩＣを各区画１１及びサービス区画１２に割り当てる。
【００３３】
この制御プログラム１０は、仮想ＮＩＣ制御部１３、物理ＮＩＣ選択部１４、管理表１５、管理表設定部１６、区画通信制御部２０及び区画制御部２２を含む。
【００３４】
仮想ＮＩＣ制御部１３は、設定されている仮想ＮＩＣ１７からの通信を受信する。
【００３５】
物理ＮＩＣ選択部１４は、管理表１５を参照して、仮想ＮＩＣに対応する物理ＮＩＣ情報を選択する。
【００３６】
管理表１５は、各区画１１及びサービス区画１２と、仮想ＮＩＣ１７及び物理ＮＩＣ２０１との対応関係と、各関係の優先順位情報と、を保持する。
【００３７】
管理表設定部１６は、管理者３０４による入出力端末３０３への設定やサービス区画１２からの管理表変更要求を受けて、管理表１５を更新する。
【００３８】
区画通信制御部２０は、サービス区画１２の区画通信部１９と通信する。具体的には、制御プログラム１０が区画通信制御部２０に送信した通信データは、サービス区画１２の区画通信部１９が受信する。また、サービス区画１２が区画通信部１９に送信した通信データは、制御プログラム１０の区画通信制御部２０が受信する。
【００３９】
図１の例では、二つの区画１１−１及び１１−２と、一つのサービス区画１２が設定されている。
【００４０】
区画１１−１は、ユーザが利用するＯＳ（以下、ユーザＯＳ）１１１−１が稼動している。このユーザＯＳ１１１−１上で、ユーザアプリケーション１１０−１が実行されている。この区画１１−１には、仮想ＮＩＣ１７−１が設定されている。すなわち、ユーザアプリケーション１１０−１は、ユーザＯＳ１１１−１を介して仮想ＮＩＣ１７−１を用いて通信することによって、クライアント３０２や管理サーバ３０１等の外部装置と通信することができる。
【００４１】
同様に、区画１１−２は、ユーザＯＳ１１１−２が稼動しており、ユーザＯＳ１１１−２上で、ユーザアプリケーション１１０−２が実行されている。なお、区画１１−２には、まだ仮想ＮＩＣ１７は設定されていない。
【００４２】
サービス区画１２は、制御プログラム１０を管理するためのサービスＯＳ１２１が稼動している。このサービスＯＳ１２１上で、管理アプリケーション１２０が実行されている。
【００４３】
このサービス区画１２は、複数のユーザＯＳから共有して利用することができる物理ＮＩＣ２０１−１及び２０２−２が占有して割り当てられている。物理ＮＩＣ２０１−１はブリッジ１８−１が割り当てられており、物理ＮＩＣ２０１−１は、このブリッジ１８−１を介して仮想ＮＩＣ１７−４と接続されている。
【００４４】
すなわち、サービス区画１２が、サービス区画１２に設定されている仮想ＮＩＣ１７−４に通信情報を送信するときは、この仮想ＮＩＣ１７−４に割り当てられているブリッジ１８−１を経由して、物理ＮＩＣ２０１−１に通信情報を送信する。
【００４５】
また、他のユーザ区画、すなわち、区画１１−１が、区画１１−１に設定されている仮想ＮＩＣ１７−１に通信情報を送信するときは、この仮想ＮＩＣ１７−１に割り当てられている物理ＮＩＣ２０１−１を選択し、さらに、この物理ＮＩＣ２０１−１に割り当てられているサービス区画１２の仮想ＮＩＣ１７−４を選択する。そしてこの仮想ＮＩＣ１７−４に、一旦通信情報を転送する。この通信情報は、この仮想ＮＩＣ１７−４に割り当てられているブリッジ１８−１を経由して、物理ＮＩＣ２０１−１と送信される。
【００４６】
同様に、物理ＮＩＣ２０１−２はブリッジ１８−２が割り当てられており、物理ＮＩＣ２０１−２はこのブリッジ１８−２を介して仮想ＮＩＣ１７−５と接続されている。
【００４７】
区画通信部１９は、前述のように制御プログラム１０の区画通信制御部２０と通信する。
【００４８】
図２は、管理表１５を更新する処理のフローチャートである。
【００４９】
管理者３０４は、入出力端末３０３を用いて管理表１５が保持する設定情報を入力する。入出力端末３０３は、この管理者３０４によって入力された設定情報を受信する（Ｓ４０１）。
【００５０】
次に、入出力端末３０３は、受信した設定情報を、シリアルインタフェース３０４を経由して、物理計算機２００の制御プログラム１０に送信する（Ｓ４０２）。
【００５１】
制御プログラム１０において、管理表設定部１６が入出力端末３０３から送信された設定情報を受信する（Ｓ４０３）。
【００５２】
次に、管理表設定部１６は、受信した設定情報を管理表１５に反映する。管理表１５は、この設定情報の内容によって更新される（Ｓ４０４）。
【００５３】
以下に、この図２の処理の具体的な例を説明する。
【００５４】
図３は、管理表１５の一例の説明図である。
【００５５】
管理表１５は、区画番号１５−１１、物理ＮＩＣ番号１５−１２、仮想ＮＩＣ番号１５−１３及び優先順位１５−１４を含む。
【００５６】
区画番号１５−１１は、仮想ＮＩＣ１７を設定する区画１１又はサービス区画１２の識別子を格納する。物理ＮＩＣ番号１５−１２は、仮想ＮＩＣ１７を設定する物理ＮＩＣ２０１の識別子を格納する。仮想ＮＩＣ番号１５−１３は、仮想ＮＩＣ１７の識別子を格納する。優先順位１５−１４は、サービス区画１２が仮想ＮＩＣを用いて通信するときに、どの仮想ＮＩＣを優先して使用するかを決定するための識別子を格納する。
【００５７】
具体的には、エントリ１５−１には、区画番号が「１２」、すなわちサービス区画１２が使用する仮想ＮＩＣ１７−４が格納されている。この仮想ＮＩＣ１７−４は、物理ＮＩＣ２０１−１に設定されており、その優先順位は「２位」と設定されている。同様に、エントリ１５−２には、仮想ＮＩＣ１７−５の優先順位が「１位」と設定されている。従って、サービス区画１２は、管理のために通信をするときは、優先順位が１位である仮想ＮＩＣ１７−５を用いて通信をする。
【００５８】
図４は、入出力端末３０３に表示される設定画面の一例の説明図である。
【００５９】
入出力端末３０３の画面には、この図４に示す設定画面３０３−１が表示される。管理者３０４は、この設定画面を参照して、キーボード等によって設定情報を入力する。
【００６０】
管理者３０４は、画面３０３−１を用いて、区画１１又はサービス区画１２、物理ＮＩＣ２０１及び仮想ＮＩＣ１７の対応関係を設定する。なお、この図４の設定画面はシリアルコンソール画面を意図しているが、これ以外にも、管理者３０４がＷｅｂブラウザ画面やＶＧＡ画面などの類似の方法によって設定してもよい。
【００６１】
図４の例では、区画１１−１に、仮想ＮＩＣ１７−１のみが設定されていることが示されている。また、画面中段には、仮想ＮＩＣ１７の情報が示されている。すなわち、この仮想ＮＩＣ１７−１は、ＭＡＣ  Ａｄｄｒｅｓｓ（ＭＡＣアドレス）が００．００．００．００．００．０１であり、この仮想ＮＩＣ１７は、物理ＮＩＣ番号が２０１−１である物理ＮＩＣ２０１を共有していることが示されている。
【００６２】
図５は、入出力端末３０３に表示される設定画面の一例の説明図であり、管理者３０４が設定情報を入力した後の設定情報を示す。
【００６３】
図５の例では、前述の図４の設定情報に加え、管理者３０４が、区画１１−１にさらに仮想ＮＩＣ１７−２を設定し、区画１１−２に仮想ＮＩＣ１７−３を新たに設定したことを示す。
【００６４】
管理者３０４がこの図５の設定情報を入力した結果、図２のステップ４０２において、入出力端末３０３が、この設定情報を制御プログラム１０に送信する。そして、図２のステップ４０２において、制御プログラム１０の管理表設定部１６が設定情報を受け取り、管理表１５に、設定内容を反映させることによって、管理表１５を更新する。
【００６５】
図６は、この処理によって更新された管理表１５の一例の説明図である。
【００６６】
図５の設定情報によって、区画１１−１に、物理ＮＩＣ２０１−２を共有している仮想ＮＩＣ１７−２が、区画１１−２に、物理ＮＩＣ２０１−１を共有している仮想ＮＩＣ１７−３が、それぞれ新たに設定されたことが示されている。
【００６７】
図７は、この図５及び図６の設定の結果、仮想ＮＩＣ１７−２及び仮想ＮＩＣ１７−３が設定されたときの物理計算機２００のブロック図である。
【００６８】
このようにして、入出力端末３０３において、管理者３０４が、設定画面によって設定情報を入力し、管理表１５を更新する。
【００６９】
また、管理者３０４は、設定画面によって優先順位を設定する。
【００７０】
図８は、入出力端末３０３に表示される優先順位設定の設定画面の一例の説明図である。
【００７１】
入出力端末３０３の画面には、この図８に示す設定画面３０３−３が表示される。管理者３０４は、この設定画面を参照して、キーボード等によって優先順位の設定情報を入力する。
【００７２】
図８の例では、サービス区画１２が管理のために用いる管理ＮＩＣに、「２０１−２」、すなわち物理ＮＩＣ２０１−２を設定したことが示されている。同様に、管理ＮＩＣの予備である予備管理ＮＩＣに、「２０１−１」、すなわち物理ＮＩＣ２０１−１を設定したことが示されている。これによって、管理ＮＩＣの優先順位が１位に設定され、予備管理ＮＩＣの優先順位が２位に設定される。なお、予備管理ＮＩＣのエントリを下方に追加することによって優先順位３位以下の物理ＮＩＣ２０１を設定することも可能である。
【００７３】
管理者３０４が、この図８の設定情報を入力した結果、図２のステップ４０２において、入出力端末３０３が、この設定情報を制御プログラム１０に送信する。そして、図２のステップ４０２において、制御プログラム１０の管理表設定部１６が設定情報を受け取り、管理表１５に、設定内容を反映させることによって、管理表１５を更新する。
【００７４】
このとき、サービス区画１２は、制御プログラム１０からの通知を受けて、管理表１５の内容を取得して、管理ＮＩＣ、すなわち、優先順位１位の物理ＮＩＣ２０１と、仮想ＮＩＣ１７との情報を取得する。そして、これらの情報を用いて、物理ＮＩＣ２０１と仮想ＮＩＣ１７とのブリッジ１８を設定する。
【００７５】
図９は、入出力端末３０３に表示される優先順位の設定画面の一例の説明図であり、管理者３０４が設定情報を入力した後の設定情報を示す。
【００７６】
図９の例では、管理者３０４が、管理ＮＩＣに物理ＮＩＣ２０１−１を設定し、予備管理ＮＩＣに物理ＮＩＣ２０１−２を設定したことが示されている。これはすなわち、物理ＮＩＣ２０１−１の優先順位を１位に設定することを示す。
【００７７】
管理者３０４がこの図９の設定情報を入力した結果、図２のステップ４０２において、入出力端末３０３が、この設定情報を制御プログラム１０に送信する。そして、図２のステップ４０２において、制御プログラム１０の管理表設定部１６が設定情報を受け取り、管理表１５に、設定内容を反映させて、管理表１５を更新する。
【００７８】
図１０は、この処理によって更新された管理表１５の一例の説明図である。
【００７９】
前述の図９の設定情報によって、物理ＮＩＣ２０１−１の優先順位が１位に、物理ＮＩＣ２０１−２の優先順位が２位に、それぞれ更新されたことが示されている。
【００８０】
次に、制御プログラム１０の動作を説明する。
【００８１】
図１１は、ユーザアプリケーション１１０が物理計算機２００の外部にあるクライアント３０２と通信するときの、制御プログラム１０と管理アプリケーション１２０との処理のフローチャートである。
【００８２】
区画１１−１において、ユーザアプリケーション１１０−１が仮想ＮＩＣ１７−１を用いて物理計算機２００外部のクライアント３０２−１と通信を開始する。このとき、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７−１に対して、クライアント３０２−１に送信すべき通信情報を送信する（Ｓ４１１）。
【００８３】
制御プログラム１０において、仮想ＮＩＣ制御部１３が、仮想ＮＩＣ１７−１が通信情報を受信したことを検出する（Ｓ４１２）。
【００８４】
仮想ＮＩＣ１７−１が通信情報を受信したことを検出した場合は、仮想ＮＩＣ制御部１３は、まず、管理表１５を参照して、通信情報を受信した仮想ＮＩＣ１７−１を含むエントリを抽出する（Ｓ４１３）。
【００８５】
次に、仮想ＮＩＣ制御部１３は、抽出されたエントリから物理ＮＩＣ２０１の情報を選択する。そして、抽出した物理ＮＩＣ２０１に対応するサービス区画１２の仮想ＮＩＣ１７を選択する（Ｓ４１４）。なお、このとき、仮想ＮＩＣが複数選択された場合は、その中で優先順位が最も高いエントリを選択する。
【００８６】
例えば、管理表が図１０のように設定されている場合において、区画１１−１のユーザアプリケーション１１０−１が、仮想ＮＩＣ１７−１に対して通信を開始した場合は、仮想ＮＩＣ制御部１３は、この区画１１−１と仮想ＮＩＣ１７−１との組み合わせから、管理表１５を検索する。検索の結果、対応する物理ＮＩＣ番号２０１を選択する。そして、この物理ＮＩＣ２０１−１に対応するサービス区画１２における仮想ＮＩＣ番号を、管理表１５から検索する。検索の結果、対応する仮想ＮＩＣ１７−４を選択する。
【００８７】
そして、仮想ＮＩＣ制御部１３は、ステップＳ４１２において受信した通信情報を、ステップＳ４１５において選択された仮想ＮＩＣ１７−４に送信する（Ｓ４１５）。
【００８８】
次に、サービス区画１２において、制御プログラム１０から送信された通信情報を、仮想ＮＩＣ１７−４が受信する（Ｓ４１６）。
【００８９】
このとき、サービス区画１２において、仮想ＮＩＣ１７−４が受信した通信情報は、仮想ＮＩＣ１７−４に割り当てられているブリッジ１８−１によって、通信情報を物理ＮＩＣ２０１−１に転送される。この結果、ユーザアプリケーション１１０−１から送信された通信情報が、ネットワーク３００−１を介してクライアント３０２−１に送信される。
【００９０】
以上のような処理によって、各区画１１に設定されている仮想ＮＩＣ１７を用いた通信が可能となる。
【００９１】
次に、管理アプリケーション１２０の処理を説明する。
【００９２】
図１２は、管理アプリケーション１２０が管理サーバ３０１と通信するときの処理のフローチャートである。
【００９３】
管理アプリケーション１２０は、制御プログラム１０によって管理表１５が変更されたことを検出した場合や、区画１１又は制御プログラム１０に障害が発生したことを検出した場合に、管理サーバ３０１に対して通信を開始する。この通信の結果、通信経路の障害の有無を検出して、障害が発生している場合は必要な処理を実行する。なお、管理サーバ３０１に定期的に通信して、通信経路の障害の発生を検出してもよい。また、管理サーバ３０２が区画１１、サービス区画１２又は制御プログラム１０と通信することによって、区画１１又は制御プログラム１０に障害が発生したことを検出してもよい。
【００９４】
まず、管理アプリケーション１２０は、制御プログラム１０に対して、管理表１５から、サービス区画の物理ＮＩＣ２０１の優先順位の取得を要求する（Ｓ４２１）。これを受けて区画通信部１９は、区画通信制御部２０に、管理表１５の優先順位の取得を要求する。
【００９５】
制御プログラム１０において、区画通信部１９からの要求を区画通信制御部２０が受信する。区画通信制御部２０は、管理表１５を参照して、サービス区画１２を含むエントリを選択する（Ｓ４２２）。
【００９６】
このとき、サービス区画１２の情報を含むエントリが複数選択された場合は、区画通信制御部２０は、その中で優先順位が最も高いエントリを選択する（Ｓ４２３）。
【００９７】
例えば、管理表が図１０のように設定されている場合において、サービス区画１２の優先順位の取得を要求した場合は、制御プログラム１０は、管理ＮＩＣとして設定されているエントリを抽出する。そして、抽出したエントリのうち、優先順位が最も高い（優先順位が１位の）エントリである物理ＮＩＣ２０１−１を選択する。
【００９８】
次に、区画通信制御部２０は、選択したエントリに含まれる情報を、サービス区画１２の区画通信部１９に送信する（Ｓ４２４）。
【００９９】
区画通信部１９が情報を受け取ると、管理アプリケーション１２０は、その情報に含まれる物理ＮＩＣ２０１−１を用いて、管理サーバ３０１と通信する（Ｓ４２５）。
【０１００】
次に、管理アプリケーション１２０は、このステップＳ４２５の通信の応答を受信したか否かによって、通信の成功又は失敗を判定する（Ｓ４２６）。
【０１０１】
管理アプリケーション１２０は、管理サーバ３０１からの応答が期待する結果であった場合は、通信が成功したと判定して、ステップＳ４２７に移行する。ステップＳ４２７では、管理アプリケーション１２０は、管理サーバ３０１から期待する応答を受信したので通信が成功したことを検出し、図１２の処理を終了する。
【０１０２】
一方、管理アプリケーション１２０は、タイムアウト等の要因によって、管理サーバ３０１から期待する応答を受信できなかった場合は、ステップＳ４２８に移行する。ステップＳ４２８では、管理アプリケーション１２０は、管理サーバ３０１から期待する応答を受信できなかったので、通信が失敗したことを検出する。そして、以降の通信復旧処理を実行する。
【０１０３】
まず、管理アプリケーション１２０は、区画通信部１９に要求して、制御プログラム１０に、該当する物理ＮＩＣ２０１−１を含む通信失敗情報を通知する（Ｓ４２９）。
【０１０４】
制御プログラム１０において、区画通信制御部２０が通信失敗情報を受信すると、管理表設定部１６は、管理表１５を更新する（Ｓ４３０）。
【０１０５】
具体的には、管理表設定部１６は、図１０に示す管理表１５を参照して、通信失敗情報に含まれる物理ＮＩＣ２０１−１を含むエントリを選択する。そして、選択したエントリの優先順位を下げる。すなわち、物理ＮＩＣ２０１−１の優先順位を「２位」に更新する。また、優先順位が２位の物理ＮＩＣ２０１−２の順位を「１位」に設定する。この結果、管理表１５は、図１３のように更新される。
【０１０６】
なお、管理ＮＩＣに優先順位を設定していない場合は、管理表１５を更新せずに処理を終了する。
【０１０７】
その後、ステップＳ４２１に戻り、管理アプリケーション１２０が処理を再開する。
【０１０８】
以上のように、管理アプリケーション１２０は、通信経路の障害を検出し、障害が発生している場合に、その通信経路に関わる物理ＮＩＣ２０１の優先順位を下げ、優先順位が２位の物理ＮＩＣを管理ＮＩＣとして使用する。
【０１０９】
このように、本発明の第１の実施の形態の計算機システムでは、管理アプリケーション１２０が通信障害を検出したときに、管理表１５の優先順位情報を更新する（すなわち、管理アプリケーション１２０が使用するブリッジのＩＰアドレスなどの設定のみを変更する）。このとき、仮想ＮＩＣ１７と物理ＮＩＣ２０１の通信転送機能の設定には変更を加えないので、ユーザＯＳ１１１が稼動している他の区画１１から共有されている物理ＮＩＣ２０１の通信に影響を与えることがない。これによって、計算機システムの高信頼化が可能となる。
【０１１０】
特に、物理的な構成を加えることなく、サービス区画１２に設定されたブリッジ１８を用いて通信経路を切り替えるため、コストを低く抑えることができる。
＜第２実施形態＞
次に、第２の実施の形態について説明する。
【０１１１】
第２の実施の形態は、前述した第１の実施の形態と異なり、一つの仮想ＮＩＣ１７に複数の物理ＮＩＣ２０１を割り当てる。これによって、区画１１の間でのＦａｉｌ  Ｏｖｅｒを実現する。なお、前述の第１の実施の形態と同一の構成には同一の符号を付して、その説明を省略する。
【０１１２】
図１４は、本発明の第２の実施の形態の物理計算機２００及び仮想計算機システムのブロック図である。
【０１１３】
第２の実施の形態では、制御プログラム１０がブロードキャスト通信受信部２１を備える。また、各区画１１は、区画通信部１９を備えている。すなわち、制御プログラム１０が区画通信制御部２０に送信した通信データは、区画１１の区画通信部１９が受信する。また、区画１１が区画通信部１９に送信した通信データは、制御プログラム１０の区画通信制御部２０が受信する。
【０１１４】
また、本実施形態の仮想計算機システムは、メインの区画である区画１１−１１と、この区画１１−１１に障害が発生したときに区画１１−１１の処理を引き継ぐ予備区画１１−１２とで構成される。すなわち、区画１１−１１でユーザアプリケーション１１０−１が稼働している場合において、この区画１１−１１に障害が発生したときに、予備区画１１ー１２のユーザアプリケーション１１０−２が、ユーザアプリケーション１１０−１の処理を引き継ぐ。
【０１１５】
なお、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７−１１を用いてクライアント３０２と通信し、ユーザアプリケーション１１０−２は、仮想ＮＩＣ１７−１２を用いてクライアント３０２と通信する。
【０１１６】
また、本実施の形態では、一つの仮想ＮＩＣ１７に対して複数の物理ＮＩＣ２０１を対応付ける。
【０１１７】
図１５は、本実施の形態の管理表１５の一例の説明図である。
【０１１８】
本実施の形態の管理表１５は、仮想ＮＩＣ１７と物理ＮＩＣ２０１と区画との対応を示す管理表１５−１１１と、物理ＮＩＣ２０１と宛先ＭＡＣアドレスとの対応を示す管理表１５−１１２とを含む。
【０１１９】
管理表１５−１１１は、仮想ＮＩＣ番号１５−５１、物理ＮＩＣ番号１５−５２及び区画番号１５−５２を含む。また、管理表１５−１１２は、物理ＮＩＣ番号１５−５５及び宛先ＭＡＣアドレス１５−５６を含む。
【０１２０】
第２の実施形態では、前述の第１の実施の形態と異なり、物理ＮＩＣ２０１と宛先ＭＡＣアドレスの組み合わせをあらかじめ決定しておく。制御プログラム１０において、仮想ＮＩＣ１７への通信があった場合は、その通信の宛先のＭＡＣアドレスから物理ＭＩＣ２０１を選択し、選択された物理ＮＩＣの中から、仮想ＮＩＣ１７及び区画１１に対応する物理ＮＩＣ２０１を一つ選択する。そして、選択された物理ＮＩＣ２０１に通信情報を送信する。
【０１２１】
図１６は、ユーザアプリケーション１１０が物理計算機２００の外部にあるクライアント３０２と通信するときの、ユーザアプリケーション１１０−１と制御プログラム１０との処理のフローチャートである。
【０１２２】
区画１１−１１において、ユーザアプリケーション１１０−１が仮想ＮＩＣ１７−１１を用いて物理計算機２００外部のクライアント３０２−１と通信を開始する。このとき、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７−１１に対して、クライアント３０２−１に送信すべき通信情報を送信する（Ｓ４４０）。
【０１２３】
制御プログラム１０において、仮想ＮＩＣ制御部１３が、仮想ＮＩＣ１７−１１が通信情報を受信したことを検出する（Ｓ４４１）。
【０１２４】
仮想ＮＩＣ１７−１１が通信情報を受信したことを検出した場合は、仮想ＮＩＣ制御部１３は、通信情報に含まれる通信の宛先のＭＡＣアドレスを抽出する。そして、管理表１５を参照して、抽出されたＭＡＣアドレスを含むエントリを選択する（Ｓ４４２）。
【０１２５】
具体的には、仮想ＮＩＣ制御部１３は、前述の管理表１５−１１１を参照して、通信の宛先ＭＡＣアドレスに対応する物理ＮＩＣ２０１の情報と、通信元の仮想ＮＩＣ１７及び区画番号との組み合わせを抽出する。
【０１２６】
次に、物理ＮＩＣ選択部１４は、抽出された情報を元に物理ＮＩＣ２０１が選択されたか否かを判定する（Ｓ４４４）。物理ＮＩＣ２０１の選択に成功した場合は、ステップＳ４４４に移行する。一方、宛先ＭＡＣアドレスが管理表に登録されていないなど、物理ＮＩＣ２０１の選択に失敗した場合は、ステップＳ４４７に移行する。
【０１２７】
ステップＳ４４５では、物理ＮＩＣ選択部１４が、仮想ＮＩＣ１７−１１から受信した通信情報を、選択された物理ＮＩＣ２０１に転送する。これによって、ユーザアプリケーション１１０−１からの通信情報がクライアント３０２−１に送信される。
【０１２８】
次に、ユーザアプリケーション１１０−１は、このステップＳ４４４の通信の応答を受信したか否かによって、通信の成功又は失敗を判定する（Ｓ４４５）。
【０１２９】
ユーザアプリケーション１１０−１は、クライアント３０２からの応答が期待する結果であった場合は、通信が成功したと判定して、ステップＳ４４６に移行する。ステップＳ４４６では、ユーザアプリケーション１１０−１は、クライアント３０２から期待する応答を受信したので、通信が成功したことを検出し、図１６の処理を終了する。
【０１３０】
一方、ユーザアプリケーション１１０−１は、タイムアウト等の要因によって、クライアント３０２から期待する応答を受信できなかった場合は、ステップＳ４４７に移行する。
【０１３１】
ステップＳ４４７では、ユーザアプリケーション１１０−１は、クライアント３０２から期待する応答を受信できなかった、又は、通信の宛先のＭＡＣアドレスが登録されていなかった等の理由で通信が失敗したことを検出する。そして、以降の通信復旧処理を実行する。
【０１３２】
通信が失敗した場合は、ユーザアプリケーション１１０−１は、ＡＲＰテーブルを更新するために、仮想ＮＩＣ１７−１１にＡＲＰメッセージをブロードキャストによって送信する（Ｓ４４８）。
【０１３３】
制御プログラム１０において、ブロードキャスト通信受信部２１が、仮想ＮＩＣ１７−１１に送信されたブロードキャスト通信を受信する。そして、このブロードキャスト通信を、全ての物理ＮＩＣ２０１を介して、ネットワーク３００に送信する。そして、ブロードキャスト通信受信部２１は、ブロードキャストされたＡＲＰメッセージに対する応答を受信すると、受信した内容に基づいて、ＡＲＰテーブルを更新すると共に、管理表１５を更新する。
【０１３４】
なお、ステップＳ４４４において、宛先ＭＡＣアドレスが管理表に登録されていないときは、制御プログラム１０は、随時ブロードキャスト通信によってネットワーク３００からＡＲＰメッセージを受信し、ＡＲＰテーブルを作成する。このＡＲＰテーブルを元に、管理表を生成する。
【０１３５】
以上のように、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７を介して通信するときに、通信経路の障害を検出し、障害が発生している場合には、ＡＲＰテーブルを更新し、到達不可能な経路に関わる物理ＮＩＣ２０１を管理表１５から削除する。
【０１３６】
この処理について具体的に説明する。
【０１３７】
前述の図１６の処理において、物理ＮＩＣ２０１−１から宛先ＭＡＣアドレス「００：００：００：００：０１：０１」であるクライアント３０２−１への通信経路に障害が発生し、ステップＳ４４７において通信失敗を検出したとする。ことのき、ユーザアプリケーション１１０−１は、全ての物理ＮＩＣ２０１を介してＡＲＰメッセージをブロードキャストする（ステップＳ４４８）。
【０１３８】
このブロードキャストの結果、物理計算機２００からクライアント３０２−１への経路は、物理ＮＩＣ２０１−２から、ネットワーク３００−２を経由する通信経路が検出される（図１７参照）。
【０１３９】
この結果、管理表設定部１６は、受信したメッセージに含まれるＭＡＣアドレス情報を用いて、管理表１５を更新する（Ｓ４４９）。すなわち、更新前の管理表１５（図１５）のエントリ１５−６５を削除し、検出された通信経路に対応するエントリ１５−８８を追加する。
【０１４０】
この更新によって、管理表１５は、図１８に示す内容に更新される。
【０１４１】
その後、ユーザアプリケーション１１０−１は、この更新された管理表１５を用いて、クライアント３０２−１との通信を再開することができる。
【０１４２】
このように、一つの仮想ＮＩＣ１７を複数の物理ＮＩＣ１７に関連付けることによって、仮想ＮＩＣ１７に自動的に物理ＮＩＣ２０１を選択して通信することが可能となる。
【０１４３】
次に、区画間のＦａｉｌ  Ｏｖｅｒについて説明する。
【０１４４】
図１９は、Ｆａｉｌ  Ｏｖｅｒの処理のフローチャートである。
【０１４５】
この図１９は、区画１１−１１に障害が発生したときに、区画１１−１１で稼働しているユーザアプリケーション１１０−１の処理を予備区画１１−１２のユーザアプリケーション１１０−２に引き継ぐ処理を示す。
【０１４６】
まず、区画１１−１１において稼働しているユーザアプリケーション１１０−１に障害が発生し、ユーザアプリケーション１１０−１が動作不能となる（Ｓ４６１）。
【０１４７】
このとき、予備区画１１−１２のユーザアプリケーション１１０−２は、区画通信部１９−２によってユーザアプリケーション１１０−１の障害を検出する（Ｓ４６２）。
【０１４８】
具体的には、ユーザアプリケーション１１０−１とユーザアプリケーション１１０−２との間は、区画通信部１９−１と１９−２とによって、常にハートビート通信をお互い送受信している。ユーザアプリケーション１１０−２は、ユーザアプリケーション１１０−１からのハートビート通信が途絶えたことによって、ユーザアプリケーション１１０−１の障害を検出する。なお、ユーザアプリケーション１１０−１が障害を自身で検出し、これ以上の稼動が無理であると判定した場合に、予備区画１１−１２のユーザアプリケーション１１０−２にアラートを通報することによって、障害を検出してもよい。
【０１４９】
次に、ユーザアプリケーション１１０−２は、ユーザアプリケーション１１０−１の設定を引き継ぐ。
【０１５０】
具体的には、ユーザアプリケーション１１０−１は、自身の処理の過程や管理者等によって設定が更新されたときに、その更新内容をユーザアプリケーション１１０−２に通知することによって、常にユーザアプリケーション１１０−１とユーザアプリケーション１１０−２とは、設定を同一に保っている。
【０１５１】
なお、ユーザアプリケーション１１０−１が稼動する前に管理者３０４等によって設定した情報をユーザアプリケーション１１０−２が保持しておき、この情報を用いて引き継いでも良い。
【０１５２】
設定を引き継いだ後は、ユーザアプリケーション１１０−２は、仮想ＮＩＣ１７−１２を用いてクライアント３０２との通信を開始する。
【０１５３】
以上のように、一つの区画１１のユーザアプリケーション１１０に障害が発生した場合にも、予備区画として設定した区画１１のユーザアプリケーション１１０に処理を引き継がせることによって、高信頼化することが可能となる。
【０１５４】
このように、本発明の第２の実施の形態では、一つの仮想ＮＩＣ１７を複数の物理ＮＩＣ２０１に関連付けることによって、仮想ＮＩＣ１７を用いた通信開始時に、自動的に物理ＮＩＣ２０１を選択して通信することが可能となる。この場合、特に、仮想ＮＩＣ１７と物理ＮＩＣ２０１との対応を、ＡＲＰテーブルを用いて設定するので、管理者による設定を行うことなく、障害時の設定を自動的化することができる。
【０１５５】
なお、前述の第１の実施の形態と、第２の実施の形態とを組み合わせて実現してもよい。
＜第３実施形態＞
次に、本発明の第３の実施の形態について説明する。
【０１５６】
第３の実施の形態の仮想計算機システムは、サービス区画１２を設け、サービス区画において、管理表を管理する。また、第２の実施の形態と同様に、一つの仮想ＮＩＣ１７に複数の物理ＮＩＣ２０１を割り当てる。これによって、区画１１の間でのＦａｉｌ  Ｏｖｅｒを実現する。なお、前述の第１又は第２の実施の形態と同一の構成には同一の符号を付して、その説明を省略する。
【０１５７】
図２０は、本発明の第３の実施の形態の物理計算機２００及び仮想計算機システムのブロック図である。
【０１５８】
第３の実施の形態では、サービス区画１２がブロードキャスト通信受信部２１、管理表１５及び管理表設定部１６を備える。すなわち、サービス区画１２において管理表１５を管理する。
【０１５９】
また、第２の実施の形態と同様に、一つの仮想ＮＩＣ１７に対して複数の物理ＮＩＣ２０１を対応付ける。
【０１６０】
この管理表１５の内容は前述した第２の実施の形態と同様である。すなわち、物理ＮＩＣ２０１と宛先ＭＡＣアドレスの組み合わせをあらかじめ決定しておく。制御プログラム１０において、仮想ＮＩＣ１７への通信があった場合は、その通信の宛先のＭＡＣアドレスから物理ＭＩＣ２０１を選択し、選択された物理ＮＩＣの中から、仮想ＮＩＣ１７及び区画１１に対応する物理ＮＩＣ２０１を一つ選択する。そして、選択された物理ＮＩＣ２０１に通信除法を送信する。
【０１６１】
図２１は、ユーザアプリケーション１１が物理計算機２００の外部にあるクライアント３０２と通信するときの、ユーザアプリケーション１１０−１と制御プログラム１０との処理のフローチャートである。
【０１６２】
区画１１−１１において、ユーザアプリケーション１１０−１が仮想ＮＩＣ１７−１１を用いて物理計算機２００外部のクライアント３０２−１と通信を開始する。このとき、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７−１１に対して、クライアント３０２−１に送信すべき通信情報を送信する（Ｓ４７１）。
【０１６３】
制御プログラム１０において、仮想ＮＩＣ制御部１３が、仮想ＮＩＣ１７−１１が通信情報を受信したことを検出すると、この通信情報を、サービス区画１２の仮想ＮＩＣ１７−３に転送する（Ｓ４７２）。
【０１６４】
サービス区画１２において、管理アプリケーション１２０が、仮想ＮＩＣ１７−３に通信情報を受信したことを検知する（Ｓ４７３）。
【０１６５】
仮想ＮＩＣ１７−３が通信情報を受信したことを検出した場合は、管理アプリケーション１２０は、通信情報に含まれる通信の宛先のＭＡＣアドレスを抽出する。そして、管理表１５を参照して、抽出されたＭＡＣアドレスを含むエントリを選択する（Ｓ４７４）。
【０１６６】
次に、管理アプリケーション１２０は、抽出された情報を元に物理ＮＩＣ２０１が選択されたか否かを判定する（Ｓ４７５）。物理ＮＩＣ２０１の選択に成功した場合は、ステップＳ４７６に移行する。一方、宛先ＭＡＣアドレスが管理表に登録されていないなど、物理ＮＩＣ２０１の選択に失敗した場合は、ステップＳ４７９に移行する。
【０１６７】
ステップＳ４７６では、管理アプリケーション１２０が、仮想ＮＩＣ１７−１から受信した通信情報を、選択された物理ＮＩＣ２０１に転送する。これによって、ユーザアプリケーション１１０−１からの通信情報がクライアント３０２−１に送信される。
【０１６８】
次に、ユーザアプリケーション１１０−１は、このステップＳ４７６の通信の応答を受信したか否かによって、通信の成功又は失敗を判定する（Ｓ４７７）。
【０１６９】
ユーザアプリケーション１１０−１は、クライアント３０２−１からの応答が期待する結果であった場合は、通信が成功したと判定して、ステップＳ４７８に移行する。ステップＳ４７８では、ユーザアプリケーション１１０−１は、クライアント３０２−１から期待する応答を受信したので、通信が成功したことを検出し、図２１の処理を終了する。
【０１７０】
一方、ユーザアプリケーション１１０−１は、タイムアウト等の要因によって、クライアント３０２−１から期待する応答を受信できなかった場合は、ステップＳ４７９に移行する。
【０１７１】
ステップＳ４７９では、管理アプリケーション１２０は、クライアント３０２から期待する応答を受信できなかった、又は、通信の宛先のＭＡＣアドレスが登録されていなかった等の理由で通信が失敗したことを検出する。そして、以降の通信復旧処理を実行する。
【０１７２】
通信が失敗した場合は、ユーザアプリケーション１１０−１は、ＡＲＰテーブルを更新するために、仮想ＮＩＣ１７−１１に対してＡＲＰメッセージをブロードキャスト通信によって送信する（Ｓ４８０）。このブロードキャスト通信は、仮想ＮＩＣ１７−３に転送される。
【０１７３】
サービス区画１２において、ブロードキャスト通信受信部２１が、仮想ＮＩＣ１７−１から仮想ＮＩＣ１７−３に転送されたブロードキャスト通信を受信する。そして、このブロードキャスト通信を、全ての物理ＮＩＣ２０１を介して、ネットワーク３００に送信する。そして、ブロードキャスト通信受信部２１は、ブロードキャストされたＡＲＰメッセージに対する応答を受信すると、受信した内容に基づいて、ＡＲＰテーブルを更新すると共に、管理表１５を更新する。
【０１７４】
以上のように、ユーザアプリケーション１１０−１は、仮想ＮＩＣ１７を介して通信するときに、通信経路の障害を検出し、障害が発生している場合には、ＡＲＰテーブルを更新し、到達不可能な経路に関わる物理ＮＩＣ２０１を管理表１５から削除する。
【０１７５】
このように、本発明の第３の実施の形態では、第２の実施の形態と同様に、一つの仮想ＮＩＣ１７を複数の物理ＮＩＣ２０１に関連付けることによって、仮想ＮＩＣ１７を用いた通信開始時に、自動的に物理ＮＩＣ２０１を選択して通信することが可能となる。特に、物理的な構成を加えることなく、サービス区画１２の処理によって対応関係を設定するため、コストを低く抑えることができる。
【０１７６】
なお、前述の第１の実施の形態と第３の実施の形態とを組み合わせて実現してもよい。
【０１７７】
以上のように、本発明による実施の形態は、複数の区画から物理ＮＩＣを共有しており、サービス区画の管理アプリケーションがＦａｉｌ  Ｏｖｅｒを行っても、サービス区画以外の他区画への通信に影響を与えないため、サーバ統合の効果を低減せずに仮想計算機システムの高信頼化を実現することができる。
【図面の簡単な説明】
【０１７８】
【図１】本発明の第１の実施の形態の物理計算機及び仮想計算機システムのブロック図である。
【図２】本発明の第１の実施の形態の管理表を更新する処理のフローチャートである。
【図３】本発明の第１の実施の形態の管理表の一例の説明図である。
【図４】本発明の第１の実施の形態の設定画面の一例の説明図である。
【図５】本発明の第１の実施の形態の設定画面の一例の説明図である。
【図６】本発明の第１の実施の形態の更新後の管理表の一例の説明図である。
【図７】本発明の第１の実施の形態の物理計算機及び仮想計算機システムのブロック図である。
【図８】本発明の第１の実施の形態の優先順位の設定画面の一例の説明図である。
【図９】本発明の第１の実施の形態の優先順位の設定画面の一例の説明図である。
【図１０】本発明の第１の実施の形態の更新後の管理表の一例の説明図である。
【図１１】本発明の第１の実施の形態の制御プログラムと管理アプリケーションとの処理のフローチャートである。
【図１２】本発明の第１の実施の形態の管理アプリケーションが管理サーバと通信するときの処理のフローチャートである。
【図１３】本発明の第１の実施の形態の更新後の管理表の一例の説明図である。
【図１４】本発明の第２の実施の形態の物理計算機及び仮想計算機システムのブロック図である。
【図１５】本発明の第２の実施の形態の管理表の一例の説明図である。
【図１６】本発明の第２の実施の形態のユーザアプリケーションがクライアントと通信するときのフローチャートである。
【図１７】本発明の第２の実施形態の更新後の物理計算機及び仮想計算機システムのブロック図である。
【図１８】本発明の第２の実施形態の更新後の管理表の説明図である。
【図１９】本発明の第２の実施の形態のＦａｉｌ  Ｏｖｅｒの処理のフローチャートである。
【図２０】本発明の第３の実施の形態の管理表の一例の説明図である。
【図２１】本発明の第３の実施の形態のユーザアプリケーションがクライアントと通信するときのフローチャートである。
【符号の説明】
【０１７９】
１０  制御プログラム
１１−１〜１１−２  区画
１１０−１〜１１０−２  ユーザアプリケーション
１１１−１〜１１１−２  ユーザＯＳ
１２  サービス区画
１２０  管理アプリケーション
１２１  サービスＯＳ
１３  仮想ＮＩＣ制御部
１４  物理ＮＩＣ選択部
１５  管理表
１６  管理表設定部
１７−１〜１７−５、１７−１１〜１７−１３  仮想ＮＩＣ
１８−１〜１８−２  ブリッジ
１９、１９−１〜１９−２  区画通信部
２０  区画通信制御部
２００  物理計算機
２０１−１〜２０１−２  物理ＮＩＣ
２０２  シリアルＩ／Ｆ（インターフェース）
２１  ブロードキャスト通信受信部
２２  区画制御部
３００−１〜３００−２  ネットワーク
３０１−１〜３０１−２  管理サーバ
３０２−１〜３０２−２  クライアント
３０３  入出力端末
３０４  管理者
【図１】
0004542514.tif 000002
【図２】
0004542514.tif 000003
【図３】
0004542514.tif 000004
【図４】
0004542514.tif 000005
【図５】
0004542514.tif 000006
【図６】
0004542514.tif 000007
【図７】
0004542514.tif 000008
【図８】
0004542514.tif 000009
【図９】
0004542514.tif 000010
【図１０】
0004542514.tif 000011
【図１１】
0004542514.tif 000012
【図１２】
0004542514.tif 000013
【図１３】
0004542514.tif 000014
【図１４】
0004542514.tif 000015
【図１５】
0004542514.tif 000016
【図１６】
0004542514.tif 000017
【図１７】
0004542514.tif 000018
【図１８】
0004542514.tif 000019
【図１９】
0004542514.tif 000020
【図２０】
0004542514.tif 000021
【図２１】
0004542514.tif 000022