(57)【要約】      （修正有）【課題】仮想ルータが動作する物理サーバに障害が発生した場合において、通信を継続できるようにする。【解決手段】情報処理装置は、第１ＮＷに接続される第１ポートと、第２ＮＷに接続される第２ポートと、第１ＶＭと、第１ＮＷに接続される第１装置と第１ＶＭとの間の通信の中継と、第１装置と第２ＮＷに接続される第２装置における第２ＶＭとの間の通信の中継とのいずれかを各々が行う、複数の中継部と、ポートのＩＤと、複数の中継部のうち当該ポートに障害が発生した場合に影響が及ぶ中継部のＩＤとを対応付けて記憶する記憶部と、第１ポート及び第２ポートのいずれかにおいて障害が発生した場合、当該障害の影響が及ぶ中継部を記憶部から特定し、その中継部による通信の中継を、第１ＮＷ及び第２ＮＷの両方に接続される第３装置における中継部に実行させるための設定を行う設定部とを有する。【選択図】図１９
2015088983.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワークに接続される第１のポート部と、
第２のネットワークに接続される第２のポート部と、
第１の仮想マシンと、
前記第１のネットワークに接続される第１の情報処理装置と前記第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、
ポート部の識別情報と、前記複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、
前記第１のポート部及び前記第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を前記管理データ格納部から特定し、前記第１のルーティング部による通信の中継を、前記第１のネットワーク及び前記第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部と、
を有する情報処理装置。
【請求項２】
前記複数のルーティング部の各々について、当該ルーティング部が通信データを中継する際に使用するポート部を特定し、当該ルーティング部の識別情報と、特定されたポート部の識別情報とを対応付けて前記管理データ格納部に格納する管理部
をさらに有する請求項１記載の情報処理装置。
【請求項３】
前記第１のルーティング部と前記第３の情報処理装置におけるルーティング部とが、ＶＲＲＰ（Virtual Router Redundancy Protocol）によって制御されており、
前記設定部は、
前記第１のルーティング部の優先度を所定値下げる
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
第１のネットワークに接続される第１の情報処理装置と、
第２のネットワークに接続される第２の情報処理装置と、
前記第１のネットワーク及び前記第２のネットワークに接続される第３の情報処理装置と、
前記第１のネットワーク及び前記第２のネットワークに接続される第４の情報処理装置と、
を有し、
前記第４の情報処理装置が、
前記第１のネットワークに接続される第１のポート部と、
前記第２のネットワークに接続される第２のポート部と、
第１の仮想マシンと、
前記第１の情報処理装置と前記第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、
ポート部の識別情報と、前記複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、
前記第１のポート部及び前記第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を前記管理データ格納部から特定し、前記第１のルーティング部による通信の中継を、前記第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部と、
を有する情報処理システム。
【請求項５】
第１のネットワークに接続される第１のポート部及び第２のネットワークに接続される第２のポート部のいずれかにおいて障害が発生したことを検出し、
前記第１のネットワークに接続される第１の情報処理装置と実行中の第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部の中から、ポート部の識別情報と当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部を用いて、前記障害の影響が及ぶルーティング部を特定し、
特定された前記ルーティング部による通信の中継を、前記第１のネットワーク及び前記第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定をする
処理をコンピュータが実行する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
ＶＲＲＰ（Virtual Router Redundancy Protocol）は、ネットワークにおけるノードを冗長化するためのプロトコルである。ＶＲＲＰにおいては、特定のＶＲＲＰグループに属する複数のノードのうち１つのノードをマスタノードとして取り扱い、残りのノードをバックアップノードとして取り扱う。通常はマスタノードのみが処理を行い、マスタノードに障害が発生するとバックアップノードのうちの一つが代わりに処理を行う。
【０００３】
各ＶＲＲＰグループには、１つの仮想ＭＡＣアドレス（Media Access Control address）及び仮想ＩＰアドレス（Internet Protocol address）が割り当てられる。ＶＲＲＰを利用するネットワークにおいては、この仮想ＭＡＣアドレス及び仮想ＩＰアドレス宛のデータがマスタノードに転送されるように、ネットワークにおけるスイッチ等の設定が行われる。
【０００４】
ところで、ＶＲＲＰは、仮想ルータの冗長化にも利用されている。例えば、同じＶＲＲＰグループに属する２台の仮想ルータを別々の物理サーバ上で動作させ、一方の仮想ルータをマスタノードとして取り扱い、他方の仮想ルータをバックアップノードとして取り扱う。このような状況において物理サーバに障害が発生した場合には、マスタノードとバックアップノードとの切り替えが適切に行われなければ、仮想ルータを経由する通信を行うことができなくなる。従来の技術においては、このような問題には着目されていない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−５１８３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、本発明の目的は、１つの側面では、仮想ルータが動作する物理サーバに障害が発生した場合において、通信を継続できるようにするための技術を提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、第１のネットワークに接続される第１のポート部と、第２のネットワークに接続される第２のポート部と、第１の仮想マシンと、第１のネットワークに接続される第１の情報処理装置と第１の仮想マシンとの間の通信の中継と、第１の情報処理装置と第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、ポート部の識別情報と、複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、第１のポート部及び第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を管理データ格納部から特定し、第１のルーティング部による通信の中継を、第１のネットワーク及び第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部とを有する。
【発明の効果】
【０００８】
１側面では、仮想ルータが動作する物理サーバに障害が発生した場合において、通信を継続できるようになる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施の形態におけるシステムの概要を示す図である。
【図２】図２は、仮想ルータの機能ブロック図を示す図である。
【図３】図３は、仮想ルータの機能ブロック図を示す図である。
【図４】図４は、各ＶＲＲＰグループによって行われる通信を示す図である。
【図５】図５は、通信データの中継について説明するための図である。
【図６】図６は、通信データの中継について説明するための図である。
【図７】図７は、各ＶＲＲＰグループについての設定を示す図である。
【図８】図８は、各ＶＲＲＰグループについての設定を示す図である。
【図９】図９は、本実施の形態におけるシステムの論理ネットワークを示す図である。
【図１０】図１０は、ＶＲＲＰデータ格納部に格納されるデータの一例を示す図である。
【図１１】図１１は、ＶＲＲＰデータ格納部に格納されるデータの一例を示す図である。
【図１２】図１２は、ＡＲＰテーブル格納部に格納されるＡＲＰテーブルの一例を示す図である。
【図１３】図１３は、仮想スイッチのＦＤＢに格納されるデータの一例を示す図である。
【図１４】図１４は、端末におけるルーティングの設定を示す図である。
【図１５Ａ】図１５Ａは、ＶＲＲＰの設定を生成する処理の処理フローを示す図である。
【図１５Ｂ】図１５Ｂは、管理データ格納部に格納される管理テーブルの一例を示す図である。
【図１６】図１６は、ＶＲＲＰの初期的な設定が完了した後の仮想ルータを示す図である。
【図１７】図１７は、ＶＲＲＰの初期的な設定が完了した後の仮想ルータを示す図である。
【図１８】図１８は、ＶＲＲＰの設定を追加及び更新する処理の処理フローを示す図である。
【図１９】図１９は、ポートにおいて発生した障害に対処する処理の処理フローを示す図である。
【図２０】図２０は、ポートに障害が発生した後の仮想ルータを示す図である。
【図２１】図２１は、ポートに障害が発生した後の仮想ルータを示す図である。
【図２２】図２２は、コンピュータの機能ブロック図である。
【図２３】図２３は、ＶＲＲＰによる、物理ルータの冗長化について説明するための図である。
【図２４】図２４は、複数のＶＲＲＰグループを設定する例を示す図である。
【図２５】図２５は、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージの一例を示す図である。
【図２６】図２６は、物理ルータの障害によってマスタノードが切り替わる例を示す図である。
【図２７】図２７は、物理Ｌ２スイッチの障害によってマスタノードが切り替わる例を示す図である。
【図２８】図２８は、ＧＡＲＰパケットの一例を示す図である。
【図２９】図２９は、トラッキング機能について説明するための図である。
【発明を実施するための形態】
【００１０】
図１に、本実施の形態におけるシステムの概要を示す。ネットワーク１には、サーバ１０と、サーバ２０と、端末５とが接続される。ネットワーク２には、サーバ１０と、サーバ２０と、サーバ３０とが接続される。仮想ルータ１３及び仮想ルータ２３は、ＶＲＲＰによって制御される。端末５は、仮想ルータ１３又は仮想ルータ２３のいずれかを経由して、サーバ１０における仮想マシン１００及びサーバ３０における仮想マシン２００と通信を行う。なお、ＶＲＲＰについては、後に記載した付録を参照のこと。
【００１１】
サーバ１０は、物理ポートであるポート１１及びポート１２を有する。そして、サーバ１０においては、仮想ルータ１３と、仮想スイッチ１４と、仮想スイッチ１５と、仮想マシン１００とが実行される。サーバ１０は、ポート１１を介してネットワーク１に接続され、ポート１２を介してネットワーク２に接続される。仮想ルータ１３、仮想スイッチ１４及び仮想スイッチ１５は、端末５と仮想マシン１００との間の通信及び端末５と仮想マシン２００との間の通信の中継を行う。
【００１２】
サーバ２０は、物理ポートであるポート２１及びポート２２を有する。そして、サーバ２０においては、仮想ルータ２３と、仮想スイッチ２４と、仮想スイッチ２５とが実行される。サーバ２０は、ポート２１を介してネットワーク１に接続され、ポート２２を介してネットワーク２に接続される。仮想ルータ２３、仮想スイッチ２４及び仮想スイッチ２５は、端末５と仮想マシン１００との間の通信及び端末５と仮想マシン２００との間の通信の中継を行う。
【００１３】
図２に、サーバ１０における仮想ルータ１３の機能ブロック図を示す。仮想ルータ１３は、ルーティング部１３１と、ルーティング部１３２と、ルーティング部１３３と、ルーティング部１３４と、管理テーブル格納部１１１と、ＡＲＰ（Address Resolution Protocol）テーブル格納部１１２と、ＶＲＲＰデータ格納部１１３と、管理テーブル生成部１１４と、ポート監視部１１５と、ＶＲＲＰ制御部１１６と、例えば仮想ポートであるインタフェース１０１及びインタフェース１０２とを含む。
【００１４】
ルーティング部１３１は、ＶＲＲＰグループ１についての通信の中継を行う。ルーティング部１３２は、ＶＲＲＰグループ２についての通信の中継を行う。ルーティング部１３３は、ＶＲＲＰグループ３についての通信の中継を行う。ルーティング部１３４は、ＶＲＲＰグループ４についての通信の中継を行う。ルーティング部１３１乃至１３４は、ＶＲＲＰにおけるマスタノードとして動作する。管理テーブル生成部１１４は、ＡＲＰテーブル格納部１１２に格納されるデータ、仮想スイッチ１４のＦＤＢ（Forwarding DataBase）に格納されるデータ及び仮想スイッチ１５のＦＤＢに格納されるデータを用いて、管理テーブル格納部１１１に格納される管理テーブルを管理する。ポート監視部１１５は、ポート１１の障害及びポート１２の障害を検出する。ＶＲＲＰ制御部１１６は、ＶＲＲＰデータ格納部１１３に格納されるデータを管理すると共に、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを生成し、インタフェース１０１及び１０２を介してマルチキャストする。
【００１５】
図３に、サーバ２０における仮想ルータ２３の機能ブロック図を示す。仮想ルータ２３は、ルーティング部２３１と、ルーティング部２３２と、ルーティング部２３３と、ルーティング部２３４と、管理テーブル格納部２１１と、ＡＲＰテーブル格納部２１２と、ＶＲＲＰデータ格納部２１３と、管理テーブル生成部２１４と、ポート監視部２１５と、ＶＲＲＰ制御部２１６と、例えば仮想ポートであるインタフェース２０１及びインタフェース２０２とを含む。
【００１６】
ルーティング部２３１は、ＶＲＲＰグループ１についての通信の中継を行う。ルーティング部２３２は、ＶＲＲＰグループ２についての通信の中継を行う。ルーティング部２３３は、ＶＲＲＰグループ３についての通信の中継を行う。ルーティング部２３４は、ＶＲＲＰグループ４についての通信の中継を行う。ルーティング部２３１乃至２３４は、ＶＲＲＰにおけるバックアップノードとして動作する。管理テーブル生成部２１４は、ＡＲＰテーブル格納部２１２に格納されるデータ、仮想スイッチ２４のＦＤＢに格納されるデータ及び仮想スイッチ２５のＦＤＢに格納されるデータを用いて、管理テーブル格納部２１１に格納される管理テーブルを管理する。ポート監視部２１５は、物理ポート２１の障害及び物理ポート２２の障害を検出する。ＶＲＲＰ制御部２１６は、ＶＲＲＰデータ格納部２１３に格納されるデータを管理すると共に、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを生成し、インタフェース２０１及び２０２を介してマルチキャストする。
【００１７】
図４に、各ＶＲＲＰグループによって制御される通信を示す。仮想マシン１００から端末５への通信はＶＲＲＰグループ３によって制御され、仮想マシン２００から端末５への通信はＶＲＲＰグループ４によって制御され、端末５から仮想マシン１００への通信はＶＲＲＰグループ１によって制御され、端末５から仮想マシン２００への通信はＶＲＲＰグループ２によって制御される。
【００１８】
図２乃至図４に示したようにＶＲＲＰの設定がされている場合においては、図５及び図６に示すように通信データが中継される。なお、図５及び図６は、説明を簡単にするためサーバ１０及びサーバ２０の内部を簡略化している。
【００１９】
まず、図５を用いて、仮想マシン１００が送信した通信データ及び仮想マシン２００が送信した通信データの中継について説明する。図５において、通信データの転送は黒の矢印で表されている。仮想マシン１００が送信した通信データは、仮想ルータ１３によってポート１１に中継され、ポート１１からネットワーク１に送信される。仮想マシン２００がネットワーク２に送信した通信データは、サーバ１０のポート１２によって受信される。そして、仮想マシン２００が送信した通信データは、仮想ルータ１３によってポート１１に中継され、ポート１１からネットワーク１に送信される。
【００２０】
図６を用いて、端末５が送信した通信データの中継について説明する。図６において、通信データの転送は黒の矢印で表されている。端末５がネットワーク１に送信した通信データは、サーバ１０のポート１１によって受信される。受信された通信データの宛先が仮想マシン１００である場合には、仮想ルータ１３は、サーバ１０内の仮想マシン１００に通信データを出力する。受信された通信データの宛先が仮想マシン２００である場合には、仮想ルータ１３は、通信データをポート１２からネットワーク２に送信する。
【００２１】
図７及び図８に、各グループについての設定を示す。図７に、仮想ルータ１３における、各グループについての設定を示す。ＶＲＲＰグループ１については、優先度が１００であり、仮想ＩＰアドレスが２．２．２．４であり、仮想ＭＡＣアドレスがＡであり、トラッキングインタフェースはインタフェース１０２である。ＶＲＲＰグループ２については、優先度が１００であり、仮想ＩＰアドレスが２．２．２．５であり、仮想ＭＡＣアドレスがＢであり、トラッキングインタフェースはインタフェース１０２である。ＶＲＲＰグループ３については、優先度が１００であり、仮想ＩＰアドレスが１．１．１．３であり、仮想ＭＡＣアドレスがＣであり、トラッキングインタフェースはインタフェース１０１である。ＶＲＲＰグループ４については、優先度が１００であり、仮想ＩＰアドレスが１．１．１．４であり、仮想ＭＡＣアドレスがＤであり、トラッキングインタフェースはインタフェース１０１である。なお、トラッキングインタフェースは、ＶＲＲＰにおけるトラッキング機能の対象となるインタフェースである。トラッキング機能については、付録を参照のこと。
【００２２】
図８に、仮想ルータ２３における、各グループについての設定を示す。ＶＲＲＰグループ１については、優先度が９９であり、仮想ＩＰアドレスが２．２．２．４であり、仮想ＭＡＣアドレスがＡであり、トラッキングインタフェースはインタフェース２０２である。ＶＲＲＰグループ２については、優先度が９９であり、仮想ＩＰアドレスが２．２．２．５であり、仮想ＭＡＣアドレスがＢであり、トラッキングインタフェースはインタフェース２０２である。ＶＲＲＰグループ３については、優先度が９９であり、仮想ＩＰアドレスが１．１．１．３であり、仮想ＭＡＣアドレスがＣであり、トラッキングインタフェースはインタフェース２０１である。ＶＲＲＰグループ４については、優先度が９９であり、仮想ＩＰアドレスが１．１．１．４であり、仮想ＭＡＣアドレスがＤであり、トラッキングインタフェースはインタフェース２０１である。
【００２３】
図９に、本実施の形態におけるシステムの論理ネットワークを示す。ネットワーク１には、端末５と、仮想ルータ１３と、仮想ルータ２３とが接続される。ネットワーク２には、仮想ルータ１３と、仮想ルータ２３と、仮想マシン１００と、仮想マシン２００とが接続される。端末５のインタフェースには、ＩＰアドレス「２．２．２．３」及びＭＡＣアドレス「ｃ」が割り当てられる。仮想ルータ１３のインタフェース１０１には、ＩＰアドレス「２．２．２．１」及びＭＡＣアドレス「ａ」が割り当てられる。仮想ルータ２３のインタフェース２０１には、ＩＰアドレス「２．２．２．２」及びＭＡＣアドレス「ｂ」が割り当てられる。仮想ルータ１３のインタフェース１０２には、ＩＰアドレス「１．１．１．１」及びＭＡＣアドレス「ｄ」が割り当てられる。仮想ルータ２３のインタフェース２０２には、ＩＰアドレス「１．１．１．２」及びＭＡＣアドレス「ｅ」が割り当てられる。仮想マシン２００のインタフェースには、ＩＰアドレス「１．１．１．５」及びＭＡＣアドレス「ｆ」が割り当てられる。仮想マシン１００のインタフェースには、ＩＰアドレス「１．１．１．６」及びＭＡＣアドレス「ｇ」が割り当てられる。ネットワーク１のＩＰアドレスは「２．２．２．０／２４」であり、ネットワーク２のＩＰアドレスは「１．１．１．０／２４」である。また、仮想マシン２００のデフォルトゲートウェイのＩＰアドレスは１．１．１．４であり、仮想マシン１００のデフォルトゲートウェイのＩＰアドレスは１．１．１．３である。
【００２４】
図１０に、ＶＲＲＰデータ格納部１１３に格納されるデータの一例を示す。図１０の例では、ＶＲＲＰグループの識別情報と、優先度とが格納される。図１１に、ＶＲＲＰデータ格納部２１３に格納されるデータの一例を示す。図１１の例では、ＶＲＲＰグループの識別情報と、優先度とが格納される。
【００２５】
図１０及び図１１に示したように、初期状態においては、いずれのＶＲＲＰグループについても、仮想ルータ１３の優先度が仮想ルータ２３の優先度よりも高いので、仮想ルータ１３がマスタノードとして動作する。
【００２６】
図１２に、ＡＲＰテーブル格納部１１２に格納されるＡＲＰテーブルの一例を示す。図１２の例では、ＩＰアドレスと、ＭＡＣアドレスとが格納される。なお、ＡＲＰテーブル格納部２１２に格納されるデータのフォーマットは、ＡＲＰテーブル１１２に格納されるデータのフォーマットと同じである。
【００２７】
図１３に、仮想スイッチ１５のＦＤＢに格納されるデータの一例を示す。図１３の例では、ＭＡＣアドレスと、出力インタフェースの識別情報とが格納される。なお、仮想スイッチ１４のＦＤＢ、仮想スイッチ２４のＦＤＢ及び仮想スイッチ２５のＦＤＢに格納されるデータのフォーマットは、仮想スイッチ１５のＦＤＢに格納されるデータのフォーマットと同じである。
【００２８】
図１４に、端末５におけるルーティングの設定を示す。図１４の例では、ＩＰアドレスが１．１．１．５である仮想マシンに通信データを送信する際にはネクストホップ（Next Hop）のＩＰアドレスが２．２．２．５であること、及び、ＩＰアドレスが１．１．１．６である仮想マシンに通信データを送信する際にはネクストホップのＩＰアドレスが２．２．２．４であることが設定されている。
【００２９】
次に、図１５Ａ乃至図２１を用いて、本実施の形態のシステムにおいて行われる処理について説明する。まず、図１５Ａ及び図１８を用いて、仮想ルータ１３及び仮想ルータ２３が実行する、ＶＲＲＰの設定を生成する処理について説明する。ここでは、仮想ルータ１３が実行する処理を例にして説明するが、仮想ルータ２３が実行する処理も同様である。
【００３０】
まず、仮想ルータ１３におけるＶＲＲＰ制御部１１６は、管理者によるコマンドの入力等によって、ＶＲＲＰの設定内容を受け付ける。これに応じ、ＶＲＲＰ制御部１１６は、ＶＲＲＰの設定を行う（図１５Ａ：ステップＳ１）。
【００３１】
ステップＳ１においては、ＶＲＲＰの仮想ＩＰアドレスの設定及びＶＲＲＰグループと仮想マシンとの対応付け等が行われる。ＶＲＲＰグループ１及びＶＲＲＰグループ２には、端末５から仮想マシンに通信データを送信する際のネクストホップのＩＰアドレスが設定される。ここでは、ＶＲＲＰグループ１については、ＩＰアドレスが１．１．１．６である仮想マシン１００に通信データを送信する際におけるネクストホップのＩＰアドレスである２．２．２．４が仮想ＩＰアドレスである。ＶＲＲＰグループ２については、ＩＰアドレスが１．１．１．５である仮想マシン２００に通信データを送信する際におけるネクストホップのＩＰアドレスである２．２．２．５が仮想ＩＰアドレスである。ＶＲＲＰグループ３及びＶＲＲＰグループ４については、仮想マシンのデフォルトゲートウェイのＩＰアドレスを設定する。ここでは、ＶＲＲＰグループ３については、仮想マシン１００のデフォルトゲートウェイのＩＰアドレスである１．１．１．３が仮想ＩＰアドレスである。ＶＲＲＰグループ４については、仮想マシン２００のデフォルトゲートウェイのＩＰアドレスである１．１．１．４が仮想ＩＰアドレスである。
【００３２】
ＶＲＲＰグループと仮想マシンとの対応付けは、トラッキングインタフェースとして指定されたインタフェースの先に仮想マシンが存在する場合に行われる。ＶＲＲＰグループ１及びＶＲＲＰグループ２については、トラッキングインタフェースとして指定されたインタフェース１０２の先に仮想マシンが存在するので、対応付けが行われる。ここでは、ＶＲＲＰグループ１は仮想マシン１００のＩＰアドレス１．１．１．６と対応付けられ、ＶＲＲＰグループ２は仮想マシン２００のＩＰアドレス１．１．１．５と対応付けられる。ＶＲＲＰグループ３及びＶＲＲＰグループ４については、トラッキングインタフェースとして指定されたインタフェース１０１の先に仮想マシンが存在しない。そこで、ＶＲＲＰの対向ノードのＩＰアドレスとの対応付けが行われる。仮想ルータ１３の対向ノードは仮想ルータ２３であり、仮想ルータ２３の対向ノードは仮想ルータ１３である。よって、仮想ルータ１３におけるＶＲＲＰグループ３及びＶＲＲＰグループ４には、ＩＰアドレス２．２．２．２が設定される。
【００３３】
管理テーブル生成部１１４は、ＩＰアドレス及びＶＲＲＰグループの識別情報を管理テーブル格納部１１１における管理テーブルに登録する（ステップＳ３）。なお、ステップＳ３乃至Ｓ１１の処理は、処理対象のＶＲＲＰグループが複数有る場合には、ＶＲＲＰグループ毎に行われる。
【００３４】
ステップＳ３においては、対応付けが行われたＶＲＲＰグループの識別情報と仮想マシンのＩＰアドレス又は対向ノードのＩＰアドレスとが登録される。図１５Ｂに、管理テーブル格納部１１１に格納される管理テーブルの一例を示す。図１５Ｂの例では、ポートの識別情報と、そのポートの障害によって影響を受けるＶＲＲＰグループの識別情報と、そのＶＲＲＰグループに対応付けられた仮想マシンのＩＰアドレス又は対向ノードのＩＰアドレスとが格納される。ステップＳ３の段階においては、ポートの識別情報は格納されていない。なお、管理テーブル格納部２１１に格納される管理テーブルのデータのフォーマットは、管理テーブル格納部１１１に格納される管理テーブルのデータのフォーマットと同様である。
【００３５】
管理テーブル生成部１１４は、ＩＰアドレスを含むｐｉｎｇ（Packet INternet Groper）コマンドによってＭＡＣアドレスを取得し、ＡＲＰテーブルを生成する（ステップＳ５）。
【００３６】
管理テーブル生成部１１４は、ステップＳ５において取得されたＭＡＣアドレスに対応する出力ポートを、仮想スイッチ１４のＦＤＢから特定する（ステップＳ７）。
【００３７】
管理テーブル生成部１１４は、ステップＳ７において特定された出力ポートが、ポート１１又はポート１２（すなわち、物理ポート）であるか判断する（ステップＳ９）。ポート１１又はポート１２ではない場合（ステップＳ９：Ｎｏルート）、処理を終了する。一方、ポート１１又はポート１２である場合（ステップＳ９：Ｙｅｓルート）、管理テーブル生成部１１４は、そのポートの識別情報を管理テーブル格納部１１１に登録する（ステップＳ１１）。そして処理を終了する。なお、ステップＳ１１によって、図１５Ｂに示した管理テーブルにおけるポートの識別情報が登録される。
【００３８】
以上のような処理を、仮想ルータ１３及び仮想ルータ２３において実行することで、ＶＲＲＰの初期的な設定が完了する。また、ポート１１又はポート１２に障害が発生した場合に影響が及ぶＶＲＲＰグループを、障害の発生時に迅速に特定できるようになる。
【００３９】
図１６に、ＶＲＲＰの初期的な設定が完了した後のサーバ１０を示す。なお、図を見やすくするため、サーバ１０の内部を簡略化している。図１６においては、ＡＲＰテーブル格納部１１２におけるＡＲＰテーブルと、仮想スイッチ１５のＦＤＢと、ＶＲＲＰデータ格納部１１３と、管理テーブル格納部１１１における管理テーブルと、仮想スイッチ１４のＦＤＢとが示されている。ルーティング部１３１乃至１３４は、いずれもマスタノードとして動作する。
【００４０】
図１７に、ＶＲＲＰの初期的な設定が完了した後のサーバ２０を示す。なお、図を見やすくするため、サーバ２０の内部を簡略化している。図１７においては、ＡＲＰテーブル格納部２１２におけるＡＲＰテーブルと、仮想スイッチ２５のＦＤＢと、ＶＲＲＰデータ格納部２１３と、管理テーブル格納部２１１における管理テーブルと、仮想スイッチ２４のＦＤＢとが示されている。ルーティング部２３１乃至２３４は、いずれもバックアップノードとして動作する。
【００４１】
次に、図１８を用いて、ＶＲＲＰの設定を追加及び更新する処理について説明する。この処理は、図１５Ａ及び図１５Ｂを用いて説明した処理が行われた後に実行される。
【００４２】
まず、管理テーブル生成部１１４は、ＧＡＲＰのパケットを受信したか判断する（図１８：ステップＳ２１）。ＧＡＲＰのパケットを受信した場合（ステップＳ２１：Ｙｅｓルート）、管理テーブル生成部１１４は、ＶＲＲＰの設定を更新するため、ステップＳ２３以降の処理を実行する。まず、管理テーブル生成部１１４は、ＧＡＲＰのパケットに含まれる送信元のＩＰアドレスに対応するＭＡＣアドレスを、ＡＲＰテーブル格納部１１２に格納されているＡＲＰテーブルから特定する（ステップＳ２３）。そしてステップＳ３１の処理に移行する。
【００４３】
一方、ＧＡＲＰのパケットを受信していない場合（ステップＳ２１：Ｎｏルート）、管理テーブル生成部１１４は、ＶＲＲＰグループの追加指示であるか判断する（ステップＳ２５）。
【００４４】
ＶＲＲＰグループの追加指示ではない場合（ステップＳ２５：Ｎｏルート）、ステップＳ２１の処理に戻る。一方、ＶＲＲＰグループの追加指示である場合（ステップＳ２５：Ｙｅｓルート）、管理テーブル生成部１１４は、ＶＲＲＰの設定を追加するため、ステップＳ２７以降の処理を実行する。すなわち、管理テーブル生成部１１４は、追加指示に含まれるＩＰアドレス及びＶＲＲＰグループの識別情報を管理テーブル格納部１１１における管理テーブルに登録する（ステップＳ２７）。
【００４５】
管理テーブル生成部１１４は、追加指示に含まれるＩＰアドレスを含むｐｉｎｇコマンドによってＭＡＣアドレスを取得し、ＡＲＰテーブル格納部１１２に格納する（ステップＳ２９）。
【００４６】
管理テーブル生成部１１４は、ステップＳ２３において特定されたＭＡＣアドレス又はステップＳ２９におい取得されたＭＡＣアドレスに対応する出力ポートを、仮想スイッチ１４のＦＤＢから特定する（ステップＳ３１）。
【００４７】
管理テーブル生成部１１４は、ステップＳ３１において特定された出力ポートが、ポート１１又はポート１２（すなわち、物理ポート）であるか判断する（ステップＳ３３）。ポート１１又はポート１２ではない場合（ステップＳ３３：Ｎｏルート）、管理テーブル生成部１１４は、更新前の出力ポートが物理ポートであるか判断する。更新前の出力ポートが物理ポートである場合、管理テーブル生成部１１４は、その物理ポートの識別情報を削除し（ステップＳ３４）、ステップＳ３７の処理に移行する。なお、ステップＳ３４の処理は、ステップＳ２１のＹｅｓルートに進んだ場合に行われ、ステップＳ２１のＮｏルートに進んだ場合には行われない。ステップＳ３４の処理は、更新前の設定が管理テーブルに残ることを防ぐために行われる。一方、ポート１１又はポート１２である場合（ステップＳ３３：Ｙｅｓルート）、管理テーブル生成部１１４は、そのポートの識別情報を管理テーブル格納部１１１に登録する（ステップＳ３５）。なお、ステップＳ３５の処理が行われると、図１５Ｂに示した管理テーブルにおけるポートの識別情報が登録される。
【００４８】
管理テーブル生成部１１４は、管理者から終了指示が有ったか判断する（ステップＳ３７）。終了指示が無い場合（ステップＳ３７：Ｎｏルート）、処理を継続するため、ステップＳ２１の処理に戻る。一方、終了指示が有った場合（ステップＳ３７：Ｙｅｓルート）、処理を終了する。
【００４９】
以上のような処理を実行すれば、ＶＲＲＰの設定に変更が有った場合にも対応できるようになる。
【００５０】
次に、図１９乃至図２１を用いて、ポートにおいて発生した障害に対処する処理について説明する。ここでは、仮想ルータ１３の処理を例にして説明するが、仮想ルータ２３の処理も同様である。
【００５１】
まず、ポート監視部１１５は、ポート１１及びポート１２を監視する（図１９：ステップＳ４１）。ポート監視部１１５は、例えばｓｙｓｌｏｇにより収集されたログによって、ポート１１及びポート１２を監視する。
【００５２】
ポート監視部１１５は、ポート１１又はポート１２に障害が発生したか判断する（ステップＳ４３）。ポート１１及びポート１２のいずれにも障害が発生していない場合（ステップＳ４３：Ｎｏルート）、ステップＳ４１の処理に戻る。一方、ポート１１又はポート１２に障害が発生した場合（ステップＳ４３：Ｙｅｓルート）、ポート監視部１１５は、障害が発生したポートの識別情報をＶＲＲＰ制御部１１６に出力する。
【００５３】
これに応じ、ＶＲＲＰ制御部１１６は、ポートの障害に影響を受けるＶＲＲＰグループの識別情報を特定する（ステップＳ４５）。具体的には、ＶＲＲＰ制御部１１６は、ポート監視部１１５から受け取ったポートの識別情報に対応するＶＲＲＰグループの識別情報を、管理テーブル格納部１１１から特定する。
【００５４】
ＶＲＲＰ制御部１１６は、ＶＲＲＰデータ格納部１１３において、特定されたＶＲＲＰグループの識別情報に対応する優先度を所定の値下げる（ステップＳ４７）。本実施の形態においては、所定の値は２である。
【００５５】
ＶＲＲＰ制御部１１６は、管理者から終了指示が有ったか判断する（ステップＳ４９）。終了指示が無い場合（ステップＳ４９：Ｎｏルート）、処理を継続するため、ステップＳ４１の処理に戻る。一方、終了指示が有った場合（ステップＳ４９：Ｙｅｓルート）、処理を終了する。
【００５６】
以上のような処理を実行すれば、障害が発生していないサーバ２０における仮想ルータ２３がマスタノードとして動作することができるので、仮想マシンと端末５との間の通信を継続できるようになる。
【００５７】
図２０に、ポート１２に障害が発生した後のサーバ１０を示す。なお、図を見やすくするため、サーバ１０の内部を簡略化している。図２０においては、ＡＲＰテーブル格納部１１２におけるＡＲＰテーブルと、仮想スイッチ１５のＦＤＢと、ＶＲＲＰデータ格納部１１３と、管理テーブル格納部１１１における管理テーブルと、仮想スイッチ１４のＦＤＢとが示されている。ルーティング部１３１、１３３及び１３４は、いずれもマスタノードとして動作し、ルーティング部１３２はバックアップノードとして動作する。
【００５８】
ルーティング部１３２は、マスタノードからバックアップノードに切り替わっている。これは、仮想ルータ１３が、仮想ルータ２３からのＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージによって、仮想ルータ１３におけるＶＲＲＰグループ２の優先度が、仮想ルータ２３におけるＶＲＲＰグループ２の優先度よりも低いことを検出したからである。
【００５９】
また、仮想スイッチ１５におけるＦＤＢの内容が変化している。具体的には、仮想ＭＡＣアドレスＡ（すなわち、ＶＲＲＰグループ１）宛の通信データ及び仮想ＭＡＣアドレスＢ（すなわち、ＶＲＲＰグループ２）宛の通信データは、仮想スイッチ１５から、仮想ルータ１３ではなくポート１１に出力される。また、ＭＡＣアドレスｆ（すなわち仮想マシン２００）についてのエントリが、仮想スイッチ１４のエントリから消えている。
【００６０】
図２１に、ポート１２に障害が発生した後のサーバ２０を示す。なお、図を見やすくするため、サーバ２０の内部を簡略化している。図２１においては、ＡＲＰテーブル格納部２１２におけるＡＲＰテーブルと、仮想スイッチ２５のＦＤＢと、ＶＲＲＰデータ格納部２１３と、管理テーブル格納部２１１における管理テーブルと、仮想スイッチ２４のＦＤＢとが示されている。ルーティング部２３１はバックアップノードとして動作し、ルーティング部２３２乃至２３４はマスタノードとして動作する。
【００６１】
ルーティング部２３２は、バックアップノードからマスタノードに切り替わっている。これは、仮想ルータ２３が、仮想ルータ１３からのＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージによって、仮想ルータ２３におけるＶＲＲＰグループ２の優先度が、仮想ルータ１３におけるＶＲＲＰグループ２の優先度よりも高いことを検出したからである。
【００６２】
ＶＲＲＰグループ３については、ルーティング部１３３及びルーティング部２３３がいずれもマスタノードであり、ＶＲＲＰグループ４については、ルーティング部１３４及びルーティング部２３４がいずれもマスタノードである。図４に示したように、ＶＲＲＰグループ３及びＶＲＲＰグループ４については、仮想マシンから端末という方向の通信を処理するため、仮想ルータ２３は、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを、ポート２２から受信して処理する。しかし、ポート１２に障害が発生したため、ポート１２からＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージが送信されず、仮想ルータ２３は、ポート２２からＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを受信することができない。そのため、仮想ルータ２３におけるルーティング部２３３及び２３４は、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを受信しない時間が所定時間を超えると、バックアップノードからマスタノードに切り替わる。また、ポート１２に障害が発生したため、仮想ルータ１３は、ポート１２からＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを受信することができない。そのため、ルーティング部１３３及び１３４はマスタノードのままである。
【００６３】
また、仮想スイッチ２５におけるＦＤＢの内容が変化している。具体的には、仮想ＭＡＣアドレスＢ（すなわち、ＶＲＲＰグループ２）宛の通信データは、仮想スイッチ２５から、ポート２１ではなく仮想ルータ２３に出力される。また、ＭＡＣアドレスｇ（すなわち仮想マシン１００）についてのエントリが、仮想スイッチ２４のエントリから消えている。
【００６４】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明したサーバ１０乃至３０、並びに、仮想ルータ１３及び２３の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
【００６５】
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００６６】
また、上では仮想マシンが２台である例を示したが、仮想マシンが３台以上であってもよい。
【００６７】
なお、上で述べたサーバ１０乃至３０及び端末５は、コンピュータ装置であって、図２２に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００６８】
［付録］
本付録においては、本実施の形態に関連する技術について説明する。
【００６９】
１．ＶＲＲＰの概要
図２３を用いて、ＶＲＲＰによる、物理ルータの冗長化について説明する。図２３においては、物理ルータ０１と物理ルータ０２とがＶＲＲＰにより制御されている。物理ルータ０１はマスタノードであるので、定期的にＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージをバックアップノードである物理ルータ０２に送信する。物理ルータ０２は、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージに含まれる優先度（図２３の例では１００）が、物理ルータ０２の優先度より高いので、バックアップノードとして動作する。なお、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔのメッセージは、同じＶＲＲＰグループに属するノードに対してマルチキャストで送信される。
【００７０】
図２３においては、端末が送信したパケットを、物理Ｌ２（Layer2）スイッチが、マスタノードとして動作する物理ルータ０１に転送する。物理ルータ０１が、受信したパケットについてルーティングを行う。１つのＶＲＲＰグループに対しては、仮想ＩＰアドレス及び仮想ＭＡＣアドレスが１つずつ割り当てられる。端末が送信するパケットにおいて、宛先のＩＰアドレスを仮想ＩＰアドレスとし、宛先のＭＡＣアドレスを仮想ＭＡＣアドレスとすれば、送信されたパケットはマスタノードである物理ルータ０１に転送される。
【００７１】
図２４に、複数のＶＲＲＰグループを設定する例を示す。図２４においては、物理ルータ０１及び物理ルータ０２に対して、２つのＶＲＲＰグループ（ＶＲＲＰグループ１及びＶＲＲＰグループ２）が設定されている。ＶＲＲＰグループ１については物理ルータ０１がマスタノードであり、ＶＲＲＰグループ２については物理ルータ０２がマスタノードである。
【００７２】
物理Ｌ２スイッチには、端末０１と端末０２とが接続されている。端末０１は、ＶＲＲＰグループ１の仮想ＩＰアドレスが宛先ＩＰアドレスであり且つＶＲＲＰグループ１の仮想ＭＡＣアドレスが宛先ＭＡＣアドレスであるパケットを物理Ｌ２スイッチに送信する。物理Ｌ２スイッチは、受信したパケットを、ＶＲＲＰグループ１のマスタノードである物理ルータ０１に送信する。また、端末０２は、ＶＲＲＰグループ２の仮想ＩＰアドレスが宛先ＩＰアドレスであり且つＶＲＲＰグループ２の仮想ＭＡＣアドレスが宛先ＭＡＣアドレスであるパケットを物理Ｌ２スイッチに送信する。物理Ｌ２スイッチは、受信したパケットを、ＶＲＲＰグループ２のマスタノードである物理ルータ０２に送信する。
【００７３】
図２５に、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージの一例を示す。図２５の例では、イーサネット（登録商標）ヘッダに、宛先アドレス（ここでは宛先ＭＡＣアドレス）と、送信元アドレス（ここでは送信元ＭＡＣアドレス）とが含まれる。宛先ＭＡＣアドレスには、ＶＲＲＰ用のマルチキャストアドレスが設定され、送信元ＭＡＣアドレスには、送信元の物理ルータが属するＶＲＲＰグループの仮想ＭＡＣアドレスが設定される。ＩＰヘッダには、宛先アドレス（ここでは宛先ＩＰアドレス）と、送信元アドレス（ここでは送信元ＩＰアドレス）とが含まれる。宛先ＩＰアドレスには、ＶＲＲＰ用のマルチキャストアドレスが設定され、送信元ＩＰアドレスには、送信元の物理ルータのインタフェース（例えば物理ポート）のＩＰアドレスが設定される。ＶＲＲＰメッセージには、ルータＩＤ（ここでは、ＶＲＲＰグループのＩＤ）と、優先度と、ＶＲＲＰグループの仮想ＩＰアドレスとが含まれる。
【００７４】
２．マスタノードの切り替え
図２６に、物理ルータの障害によってマスタノードが切り替わる例について説明する。図２６の例では、物理ルータ０１に障害が発生したため、物理ルータ０１からＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージが送信されなくなる。物理ルータ０２は、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを所定時間受信しない場合、マスタノードとしての動作を開始する。物理ルータ０２は、ＧＡＲＰ（Gratuitous ARP）のパケットを物理Ｌ２スイッチに送信する。物理Ｌ２スイッチは、受信したＧＡＲＰのパケットに基づいて、ＦＤＢを更新する。具体的には、出力インタフェースの識別情報をＰ１からＰ２に変更する。これにより、端末０１から送信されたパケットは、マスタノードとしての動作を開始した物理ルータ０２に送信される。
【００７５】
なお、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを所定時間受信しない場合だけではなく、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージに含まれる優先度が自身の優先度より低い場合においても、バックアップノードはマスタノードに切り替わる。逆に、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージに含まれる優先度が自身の優先度より高い場合には、マスタノードはバックアップノードに切り替わる。
【００７６】
図２７に、物理Ｌ２スイッチの障害によってマスタノードが切り替わる例について説明する。図２７の例では、物理Ｌ２スイッチが２段に配置されている。マスタノードである物理ルータ０１が送信したＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージは、物理ルータ０１が接続される物理Ｌ２スイッチには到達するが、端末が接続される物理Ｌ２スイッチに障害が発生したため、端末には到達しない。よって、物理ルータ０１が送信したＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを物理ルータ０２は受信できないので、所定時間が経過すると、物理ルータ０２はマスタノードとして動作を開始する。物理ルータ０２は、マスタノードに切り替わった後、ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅｍｅｎｔメッセージを送信する。なお、端末に接続された物理Ｌ２スイッチは、端末から受信したパケットを物理ルータ０２に転送するため、通信には影響は無い。
【００７７】
図２８に、ＧＡＲＰのパケットの一例を示す。図２８の例では、イーサネットヘッダに、宛先アドレス（ここでは宛先ＭＡＣアドレス）と、送信元アドレス（ここでは送信元ＭＡＣアドレス）とが含まれる。宛先ＭＡＣアドレスには、ブロードキャストアドレスが設定され、送信元ＭＡＣアドレスには、送信元の物理ルータが属するＶＲＲＰグループの仮想ＭＡＣアドレスが設定される。ＧＡＲＰメッセージには、送信元のＭＡＣアドレスと、送信元のＩＰアドレスと、ターゲットＭＡＣアドレスと、ターゲットＩＰアドレスとが格納される。送信元ＭＡＣアドレスは、送信元の物理ルータが属するＶＲＲＰグループの仮想ＭＡＣアドレスが設定され、送信元ＩＰアドレスには、送信元の物理ルータが属するＶＲＲＰグループの仮想ＩＰアドレスが設定され、ターゲットＭＡＣアドレスは何も設定されず、ターゲットＩＰアドレスには、送信元の物理ルータが属するＶＲＲＰグループの仮想ＩＰアドレスが設定される。
【００７８】
３．トラッキング機能
トラッキング機能とは、ＶＲＲＰに規定されている機能の１つである。図２９を用いて、トラッキング機能について説明する。図２９においては、ネットワーク０１に端末０１が接続されており、ネットワーク０２に端末０２が接続されている。物理ルータ０１は、インタフェース０１を介してネットワーク０１に接続され、インタフェース０２を介してネットワーク０２に接続されている。物理ルータ０２は、インタフェース０１を介してネットワーク０１に接続され、インタフェース０２を介してネットワーク０２に接続されている。
【００７９】
トラッキング機能は、マスタノードがインタフェースの障害を検出した場合に、ＶＲＲＰの優先度を下げることにより、マスタノードを切り替える機能である。図２９の例では、物理ルータ０１はインタフェース０１の障害を検出し、優先度を１００から９０に下げる。その結果、優先度が９９である物理ルータ０２がマスタノードになり、物理ルータ０１はバックアップノードになる。
【００８０】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【００８１】
本実施の形態に係る情報処理装置は、（Ａ）第１のネットワークに接続される第１のポート部と、（Ｂ）第２のネットワークに接続される第２のポート部と、（Ｃ）第１の仮想マシンと、（Ｄ）第１のネットワークに接続される第１の情報処理装置と第１の仮想マシンとの間の通信の中継と、第１の情報処理装置と第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、（Ｅ）ポート部の識別情報と、複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、（Ｆ）第１のポート部及び第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を管理データ格納部から特定し、第１のルーティング部による通信の中継を、第１のネットワーク及び第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部とを有する。
【００８２】
このようにすれば、物理ポートに障害が発生した場合においても、通信を継続できるようになる。
【００８３】
また、上で述べた情報処理装置が、（Ｇ）複数のルーティング部の各々について、当該ルーティング部が通信データを中継する際に使用するポート部を特定し、当該ルーティング部の識別情報と、特定されたポート部の識別情報とを対応付けて管理データ格納部に格納する管理部をさらに有してもよい。このようにすれば、管理データ格納部に格納されるデータを予め用意しておくことができるようになる。
【００８４】
また、第１のルーティング部と第３の情報処理装置におけるルーティング部とが、ＶＲＲＰによって制御されていてもよい。そして、上で述べた設定部は、第１のルーティング部の優先度を所定値下げてもよい。このようにすれば、障害への対応をＶＲＲＰによって実現できるようになる。
【００８５】
また、複数のルーティング部の各々が異なるＶＲＲＰグループに属し、複数のルーティング部のうち第１のルーティング部と、第３の情報処理装置におけるルーティング部とが、同一のＶＲＲＰグループに属してもよい。このようにすれば、ＶＲＲＰグループ毎に障害への対応を行えるので、効率的な対応が可能になる。
【００８６】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００８７】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８８】
（付記１）
第１のネットワークに接続される第１のポート部と、
第２のネットワークに接続される第２のポート部と、
第１の仮想マシンと、
前記第１のネットワークに接続される第１の情報処理装置と前記第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、
ポート部の識別情報と、前記複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、
前記第１のポート部及び前記第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を前記管理データ格納部から特定し、前記第１のルーティング部による通信の中継を、前記第１のネットワーク及び前記第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部と、
を有する情報処理装置。
【００８９】
（付記２）
前記複数のルーティング部の各々について、当該ルーティング部が通信データを中継する際に使用するポート部を特定し、当該ルーティング部の識別情報と、特定されたポート部の識別情報とを対応付けて前記管理データ格納部に格納する管理部
をさらに有する付記１記載の情報処理装置。
【００９０】
（付記３）
前記第１のルーティング部と前記第３の情報処理装置におけるルーティング部とが、ＶＲＲＰ（Virtual Router Redundancy Protocol）によって制御されており、
前記設定部は、
前記第１のルーティング部の優先度を所定値下げる
ことを特徴とする付記１又は２記載の情報処理装置。
【００９１】
（付記４）
前記複数のルーティング部の各々が異なるＶＲＲＰグループに属し、
前記複数のルーティング部のうち前記第１のルーティング部と、前記第３の情報処理装置におけるルーティング部とが、同一のＶＲＲＰグループに属する
ことを特徴する付記３記載の情報処理装置。
【００９２】
（付記５）
第１のネットワークに接続される第１の情報処理装置と、
第２のネットワークに接続される第２の情報処理装置と、
前記第１のネットワーク及び前記第２のネットワークに接続される第３の情報処理装置と、
前記第１のネットワーク及び前記第２のネットワークに接続される第４の情報処理装置と、
を有し、
前記第４の情報処理装置が、
前記第１のネットワークに接続される第１のポート部と、
前記第２のネットワークに接続される第２のポート部と、
第１の仮想マシンと、
前記第１の情報処理装置と前記第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部と、
ポート部の識別情報と、前記複数のルーティング部のうち当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部と、
前記第１のポート部及び前記第２のポート部のいずれかにおいて障害が発生した場合、当該障害の影響が及ぶルーティング部である第１のルーティング部を前記管理データ格納部から特定し、前記第１のルーティング部による通信の中継を、前記第３の情報処理装置におけるルーティング部に実行させるための設定を行う設定部と、
を有する情報処理システム。
【００９３】
（付記６）
第１のネットワークに接続される第１のポート部及び第２のネットワークに接続される第２のポート部のいずれかにおいて障害が発生したことを検出し、
前記第１のネットワークに接続される第１の情報処理装置と実行中の第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部の中から、ポート部の識別情報と当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部を用いて、前記障害の影響が及ぶルーティング部を特定し、
特定された前記ルーティング部による通信の中継を、前記第１のネットワーク及び前記第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定をする
処理をコンピュータが実行する情報処理方法。
【００９４】
（付記７）
第１のネットワークに接続される第１のポート部及び第２のネットワークに接続される第２のポート部のいずれかにおいて障害が発生したことを検出し、
前記第１のネットワークに接続される第１の情報処理装置と実行中の第１の仮想マシンとの間の通信の中継と、前記第１の情報処理装置と前記第２のネットワークに接続される第２の情報処理装置における第２の仮想マシンとの間の通信の中継とのいずれかを各々が行う、複数のルーティング部の中から、ポート部の識別情報と当該ポート部に障害が発生した場合に影響が及ぶルーティング部の識別情報とを対応付けて格納する管理データ格納部を用いて、前記障害の影響が及ぶルーティング部を特定し、
特定された前記ルーティング部による通信の中継を、前記第１のネットワーク及び前記第２のネットワークの両方に接続される第３の情報処理装置におけるルーティング部に実行させるための設定をする
処理をコンピュータに実行させるためのプログラム。
【符号の説明】
【００９５】
１，２  ネットワーク    ５  端末
１０，２０，３０  サーバ    １００，２００  仮想マシン
１１，１２，２１，２２  ポート    １４，１５，２４，２５  仮想スイッチ
１３，２３  仮想ルータ    １０１，１０２，２０１，２０２  インタフェース
１３１，１３２，１３３，１３４  ルーティング部    １１１  管理テーブル格納部
１１２  ＡＲＰテーブル格納部    １１３  ＶＲＲＰデータ格納部
１１４  管理テーブル生成部    １１５  ポート監視部
１１６  ＶＲＲＰ制御部
２３１，２３２，２３３，２３４  ルーティング部    ２１１  管理テーブル格納部
２１２  ＡＲＰテーブル格納部    ２１３  ＶＲＲＰデータ格納部
２１４  管理テーブル生成部    ２１５  ポート監視部
２１６  ＶＲＲＰ制御部
【図１】
2015088983.tif 000003
【図２】
2015088983.tif 000004
【図３】
2015088983.tif 000005
【図４】
2015088983.tif 000006
【図５】
2015088983.tif 000007
【図６】
2015088983.tif 000008
【図７】
2015088983.tif 000009
【図８】
2015088983.tif 000010
【図９】
2015088983.tif 000011
【図１０】
2015088983.tif 000012
【図１１】
2015088983.tif 000013
【図１２】
2015088983.tif 000014
【図１３】
2015088983.tif 000015
【図１４】
2015088983.tif 000016
【図１５Ａ】
2015088983.tif 000017
【図１５Ｂ】
2015088983.tif 000018
【図１６】
2015088983.tif 000019
【図１７】
2015088983.tif 000020
【図１８】
2015088983.tif 000021
【図１９】
2015088983.tif 000022
【図２０】
2015088983.tif 000023
【図２１】
2015088983.tif 000024
【図２２】
2015088983.tif 000025
【図２３】
2015088983.tif 000026
【図２４】
2015088983.tif 000027
【図２５】
2015088983.tif 000028
【図２６】
2015088983.tif 000029
【図２７】
2015088983.tif 000030
【図２８】
2015088983.tif 000031
【図２９】
2015088983.tif 000032