(57)【要約】【課題】複数の物理マシン群を跨る形でシステムが構築された場合においても，最適な通信経路による通信を行うことができる。【解決手段】第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，受信した通信パケットの識別情報を記憶し，送信した通信パケットを，第２のセグメントを経由して第１のネットワーク装置から受信した場合，記憶した通信パケットの識別情報に基づき，第１の端末から送信された通信パケットを第１のネットワーク装置を経由せずに通信するように経路情報を更新し，第１の端末から第２の端末に向けた通信パケットまたは第２の端末から第１の端末に向けた通信パケットを受信した場合に，更新した経路情報に基づいて通信を行う。【選択図】図９
2016019270.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワーク装置を含む第１の情報処理システムの構成情報に基づいて構成され，前記第１のネットワーク装置が配備された第１の物理マシン群と，前記第１の情報処理システムに含まれない第２のネットワーク装置が配備された第２の物理マシン群とに跨る第２の情報処理システムにおける通信方法であって，
前記第２のネットワーク装置は，前記第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，該受信した通信パケットの識別情報を記憶し，
前記第２のネットワーク装置は，前記受信した通信パケットが第２のセグメントに含まれる第２の端末に向けた通信パケットである場合，前記第１の情報処理システムの構成情報に含まれる経路情報に基づき，前記第１の端末から受信した通信パケットを，前記第１のセグメントを経由して前記第１のネットワーク装置に送信し，
前記第２のネットワーク装置は，前記送信した通信パケットを，前記第２のセグメントを経由して前記第１のネットワーク装置から受信した場合，該受信した通信パケットを前記第２の端末に送信するとともに，前記記憶した通信パケットの識別情報に基づき，前記第１の端末から送信された通信パケットを前記第１のネットワーク装置を経由せずに通信するように前記経路情報を更新し，
前記第２のネットワーク装置は，前記第１の端末から前記第２の端末に向けた通信パケットまたは前記第２の端末から前記第１の端末に向けた通信パケットを受信した場合，前記更新した経路情報に基づいて通信を行う，
通信方法。
【請求項２】
請求項１において，
前記通信パケットの識別情報を記憶する工程では，前記第２のネットワーク装置は，前記通信パケットの識別情報を，前記第１の端末が前記第２の端末または前記第１の物理マシン群に配備された端末に通信パケットを送信する場合に記憶する通信方法。
【請求項３】
請求項１において，
前記通信パケットの識別情報を記憶する工程では，前記通信パケットに関する識別情報の記憶を，前記第１のセグメントの識別情報と関連付けた前記通信パケットに関する識別情報を前記経路情報に記憶することにより行う通信方法。
【請求項４】
請求項１において，
前記第２のネットワーク装置は，前記第１のセグメントに配備された第３のネットワーク装置と，前記第２のセグメントに配備された第４のネットワーク装置とを含み，
前記通信パケットの識別情報を記憶する工程では，前記第３のネットワーク装置は，前記通信パケットの識別情報を前記第４のネットワーク装置に送信し，
前記通信パケットの識別情報を記憶する工程では，前記第４のネットワーク装置は，受信した前記通信パケットの識別情報を記憶する通信方法。
【請求項５】
請求項４において，
前記経路情報を更新する工程では，前記第４のネットワーク装置は，前記第３のネットワーク装置が送信した通信パケットを，前記第１のネットワーク装置を経由して受信した場合，前記受信した通信パケットの識別情報に基づき経路情報を更新する通信方法。
【請求項６】
請求項４において，
前記通信パケットの識別情報を記憶する工程では，前記第４のネットワーク装置が前記第３のネットワーク装置から前記通信パケットに関する識別情報を受信した後，前記第４のネットワーク装置が前記第１の物理マシン群を経由した前記通信パケットを受信する前に，所定時間が経過した場合，前記第４のネットワーク装置は，前記記憶した前記通信パケットに関する識別情報を消去する通信方法。
【請求項７】
請求項４において，
前記経路情報を更新する工程では，前記第３及び第４のネットワーク装置は，前記通信パケットの識別情報に基づき，前記第３のネットワーク装置と前記第４のネットワーク装置との間に通信トンネルを作成し，前記経路情報の更新を，前記第１の端末から前記第２の端末に向けて送信された通信パケットが前記作成された通信トンネルを経由するように更新することにより行う通信方法。
【請求項８】
請求項１において，  
前記第２のネットワーク装置は，前記通信パケットを送信する工程の前に，前記第２のネットワーク装置から前記第２の端末に向けて通信を行うことにより，前記第１の端末から前記第２の端末に向けた通信経路を特定し，前記経路情報に記憶する通信方法。
【請求項９】
請求項１において，
前記通信パケットの識別情報を記憶する工程では，前記第２のネットワーク装置は，前記通信パケットに関する識別情報として，前記第１及び第２の端末のＩＰアドレスと，前記第１のセグメントの識別情報と，前記第１の端末のＭＡＣアドレスとを含む情報を記憶する通信方法。
【請求項１０】
第１のネットワーク装置を含む第１の情報処理システムの構成情報に基づいて構成され，前記第１のネットワーク装置が配備された第１の物理マシン群と，前記第１の情報処理システムに含まれない第２のネットワーク装置が配備された第２の物理マシン群とに跨る第２の情報処理システムにおける通信プログラムであって，
前記第２のネットワーク装置は，前記第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，該受信した通信パケットの識別情報を記憶し，
前記第２のネットワーク装置は，前記受信した通信パケットが第２のセグメントに含まれる第２の端末に向けた通信パケットである場合，前記第１の情報処理システムの構成情報に含まれる経路情報に基づき，前記第１の端末から受信した通信パケットを，前記第１のセグメントを経由して前記第１のネットワーク装置に送信し，
前記第２のネットワーク装置は，前記送信した通信パケットを，前記第２のセグメントを経由して前記第１のネットワーク装置から受信した場合，該受信した通信パケットを前記第２の端末に送信するとともに，前記記憶した通信パケットの識別情報に基づき，前記第１の端末から送信された通信パケットを前記第１のネットワーク装置を経由せずに通信するように前記経路情報を更新し，
前記第２のネットワーク装置は，前記第１の端末から前記第２の端末に向けた通信パケットまたは前記第２の端末から前記第１の端末に向けた通信パケットを受信した場合，前記更新した経路情報に基づいて通信を行う，
処理をコンピュータに実行させる通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，通信方法及び通信プログラムに関する。
【背景技術】
【０００２】
近年，物理マシンの性能向上に伴い，複数の仮想マシン（以下，ＶＭとも呼ぶ）を１つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術は，例えば，仮想化ソフトウエア（ハイパバイザ）が物理マシンを複数の仮想マシンに割当てて，各仮想マシンにインストールされたアプリケーションプログラム（以下，アプリケーションとも呼ぶ）によるサービスの提供を可能にする。
【０００３】
仮想マシンによるサービスを提供する事業者がシステムを構築する場合，システムを構築するために必要な情報を集合体であるテンプレートを予め用意しておく場合がある。このテンプレートは，例えば，事業者が過去に構築したシステムの情報に基づいて作成されるものである。事業者は，テンプレートに基づいてシステムを構築することにより，システム構築に要する時間や手間を削減することが可能になる。また，構築されたシステムによるサービスを提供する者（販売する者）が，テンプレートを用意する場合もある。
【０００４】
テンプレートに基づいてシステム構築を行う場合，データセンタ間の通信回線の負荷増大を防止するために，可能な限り近接して配備された物理マシン群（例えば，同一のデータセンタに配備された物理マシン群）において，システムを構築するのが一般的である。しかしながら，例えば，１つのデータセンタに配備された物理マシン群では，システムを構築するために必要なリソースを十分に確保できない場合がある。このような場合，事業者は，複数のデータセンタに配備された物理マシン群に跨る形でシステムを構築する必要がある。
【０００５】
また，複数のデータセンタに配備された物理マシン群に跨る形でシステムを構築した場合，データセンタ間を跨る通信が発生する。そのため，事業者は，テンプレートに情報が含まれていないファイアーウォール（以下，ＦＷとも呼ぶ）やルータ等の機器を追加した状態でシステム構築を行う（例えば，特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２７８２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
システムを構築するためのテンプレートは，１つのデータセンタ内に配備された物理マシン群によってシステムを構築することを前提としている場合がある。このようなテンプレートに基づいて複数のデータセンタに跨るシステムを構築した場合，例えば，システム内の仮想マシンのルーティング情報（以下，経路情報とも呼ぶ）は，システムが１つのデータセンタ内に構築されていることを前提として設定されている。そのため，仮想マシンの経路情報によっては，例えば，同じデータセンタ内に作成された仮想マシン間の通信であっても，他のデータセンタを経由して通信が行われる場合がある。すなわち，複数のデータセンタを跨る形でシステム構築が行われた場合，仮想マシン間の通信が最適な通信経路によって行われない場合があった。
【０００８】
そこで，一つの実施の形態の目的は，複数の物理マシン群を跨る形でシステムが構築された場合においても，適正化を図った通信経路による通信を行うことができる通信方法及び通信プログラムを提供することにある。
【課題を解決するための手段】
【０００９】
実施の形態の一つの側面によれば，第１のネットワーク装置を含む第１の情報処理システムの構成情報に基づいて構成され，前記第１のネットワーク装置が配備された第１の物理マシン群と，前記第１の情報処理システムに含まれない第２のネットワーク装置が配備された第２の物理マシン群とに跨って構築された第２の情報処理システムにおける通信方法であって，
前記第２のネットワーク装置は，前記第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，該受信した通信パケットの識別情報を記憶し，
前記第２のネットワーク装置は，前記受信した通信パケットが第２のセグメントに含まれる第２の端末に向けた通信パケットである場合，前記第１の情報処理システムの構成情報に含まれる経路情報に基づき，前記第１の端末から受信した通信パケットを，前記第１のセグメントを経由して前記第１のネットワーク装置に送信し，
前記第２のネットワーク装置は，前記送信した通信パケットを，前記第２のセグメントを経由して前記第１のネットワーク装置から受信した場合，該受信した通信パケットを前記第２の端末に送信するとともに，前記記憶した通信パケットの識別情報に基づき，前記第１の端末から送信された通信パケットを前記第１のネットワーク装置を経由せずに通信するように前記経路情報を更新し，
前記第２のネットワーク装置は，前記第１の端末から前記第２の端末に向けた通信パケットまたは前記第２の端末から前記第１の端末に向けた通信パケットを受信した場合，前記更新した経路情報に基づいて通信を行う。
【発明の効果】
【００１０】
複数の物理マシン群を跨る形でシステムが構築された場合においても，適正化を図った通信経路による通信を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】情報処理システムの全体構成を示す図である。
【図２】管理サーバとＶＭホストとのハードウエア構成を示す図である。
【図３】図２で示した管理サーバの機能ブロック図である。
【図４】図２で示したＶＭホストの機能ブロック図である。
【図５】仮想マシンから構成される情報処理システムを説明する図である。
【図６】テンプレートを用いて構築する情報処理システムを説明する図である。
【図７】テンプレートを用いて構築する情報処理システムを説明する図である。
【図８】テンプレートを用いて構築する情報処理システムを説明する図である。
【図９】第１の実施の形態における経路情報管理処理の概略を説明するシーケンスチャート図である。
【図１０】第１の実施の形態における経路情報管理処理の概略を説明する図である。
【図１１】第１の実施の形態における経路情報管理処理の詳細を説明するフローチャート図である。
【図１２】第１の実施の形態における経路情報管理処理の詳細を説明するフローチャート図である。
【図１３】第１の実施の形態における経路情報管理処理の詳細を説明するフローチャート図である。
【図１４】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図１５】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図１６】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図１７】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図１８】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図１９】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図２０】第１の実施の形態における経路情報管理処理の詳細を説明する図である。
【図２１】第１の実施の形態において経路情報が送信元端末のＭＡＣアドレスの項目を有しない場合を説明する図である。
【図２２】第１の実施の形態におけるＡＲＰ要求処理を含む経路情報管理処理を説明するフローチャート図である。
【図２３】第１の実施の形態におけるＡＲＰ要求処理を含む経路情報管理処理を説明するフローチャート図である。
【図２４】第１の実施の形態におけるＡＲＰ要求処理を含む経路情報管理処理を説明するフローチャート図である。
【図２５】第１の実施の形態におけるＡＲＰ要求処理を説明する図である。
【図２６】第１の実施の形態におけるＡＲＰ要求処理を説明する図である。
【図２７】第１の実施の形態におけるＡＲＰ要求処理を説明する図である。
【図２８】第２の実施の形態における経路情報管理処理を説明する図である。
【図２９】第２の実施の形態における経路情報管理処理を説明する図である。
【図３０】第２の実施の形態における経路情報管理処理を説明する図である。
【発明を実施するための形態】
【００１２】
［情報処理システムの構成］
図１は，情報処理システムの全体構成を示す図である。図１に示す情報処理システム１０において，管理サーバ１と，物理マシン２（以下，ＶＭホスト２とも呼ぶ）とがデータセンタ８内に設けられている。そして，データセンタ８には，インターネットやイントラネット等のネットワークを介して，利用者端末９が接続可能になっている。
【００１３】
ＶＭホスト２は，例えば，１台の物理マシンまたは複数の物理マシンから構成される。図１の例においては複数の物理マシンから構成されており，各物理マシンはＣＰＵとメモリ（ＤＲＡＭ）とハードディスク（ＨＤＤ）等の大容量メモリとネットワークとを有する。そして，各物理マシンのリソースは，複数の仮想マシン３（以下，端末３とも呼ぶ）に割当てられる。なお，ＶＭホスト２は，例えば，物理マシンのリソースを割り当てて作成した仮想マシンを，仮想マシン３間の通信を制御する仮想ネットワーク装置（以下，単にネットワーク装置とも呼ぶ）として機能させる。
【００１４】
管理サーバ１は，仮想マシン３と通信可能であり，ＶＭホスト２内に作成された仮想マシン３の管理を行うものである。管理サーバ１は，例えば，仮想マシン３によって作成されてもよい。
【００１５】
仮想マシン３は，例えば，そのインフラをネットワーク経由で利用者に提供するもの（以下，クラウドサービスとも呼ぶ）である。
【００１６】
クラウドサービスは，コンピュータシステムを構築し稼働させるための基盤，即ち，仮想マシン３やネットワーク等のインフラストラクチャそのものを，ネットワーク経由で提供するサービスである。また，利用者は，例えば，利用者端末９からポータルサイト７にアクセスして，仮想マシンに必要な仕様，例えばＣＰＵのクロック周波数，メモリの容量（ＧＢ），ハードディスクの容量（ＭＢ／ｓｅｃ，ＩＯＰＳ），及びネットワークの通信帯域幅（Ｇｂｐｓ）を選択し，それらについてクラウド利用契約を締結する。また，利用者端末９は，例えば，仮想マシン３の稼働状態の監視や，仮想マシン３に対する操作等を可能にする。
【００１７】
仮想化ソフトウエア４は，管理サーバ１からの指示に応じて，ＶＭホスト２のＣＰＵ，メモリ，ハードディスク，ネットワークを割当てることにより，仮想マシン３を動作させる基盤ソフトウエアである。仮想化ソフトウエア４は，例えば，ＶＭホスト２で動作する。
【００１８】
仮想マシン３は，ＶＭホスト２のリソースが割当てられることに加えて，例えば，ＯＳ，ミドルウエア，アプリケーション，データベース等を有するイメージファイルをそのハードディスク内に有する。そして，仮想マシン３は，例えば，起動時にイメージファイルをハードディスクからメモリに書き込み，所望のサービスに対応する動作を行う。
【００１９】
図２は，管理サーバとＶＭホストとのハードウエア構成を示す図である。管理サーバ１は，プロセッサであるＣＰＵ（プロセッサ）１０１と，メモリ１０２と，外部インターフェース（Ｉ／Ｏユニット）１０３と，記憶媒体１０４を有する。各部は，バス１０５を介して互いに接続される。記憶媒体１０４は，例えば，記憶媒体１０４内のプログラム格納領域（図示しない）に，仮想マシン３の起動処理を行うためのプログラム１１０を記憶する。ＣＰＵ１０１は，図２に示すように，プログラム１１０の実行時に，プログラム１１０を記憶媒体１０４からメモリ１０２にロードし，プログラム１１０と協働して仮想マシン３の起動処理等を行う。また，記憶媒体１０４は，例えば，仮想マシン３の起動等を行う際に用いられる情報を記憶する情報格納領域１２０を有する。
【００２０】
ＶＭホスト２は，プロセッサであるＣＰＵ（プロセッサ）２０１と，メモリ２０２と，外部インターフェース（Ｉ／Ｏユニット）２０３と，記憶媒体２０４を有する。各部は，バス２０５を介して互いに接続される。記憶媒体２０４は，例えば，記憶媒体２０４内のプログラム格納領域（図示しない）に，各端末の経路情報を管理する処理（以下，経路情報管理処理とも呼ぶ）を行うためのプログラム２１０（以下，経路情報管理プログラム２１０とも呼ぶ）を記憶する。ＣＰＵ２０１は，図２に示すように，プログラム２１０の実行時に，プログラム２１０を記憶媒体２０４からメモリ２０２にロードし，プログラム２１０と協働して各端末の経路情報を管理する処理を行う。また，記憶媒体２０４は，例えば，各端末の経路情報を管理する処理を行う際に用いられる情報を記憶する情報格納領域２２０を有する。
【００２１】
図３は，図２で示した管理サーバの機能ブロック図である。ＣＰＵ１０１は，プログラム１１０と協働することにより，例えば，利用者管理部１１１と，仮想マシン作成部１１２と，仮想マシン起動部１１３と，仮想マシンシャットダウン部１１４と，仮想マシンマイグレーション部１１５として動作する。また，情報格納領域１２０には，例えば，利用者管理情報１２１と，仮想マシン管理情報１２２とが記憶されている。
【００２２】
利用者管理部１１１は，例えば，仮想マシン３の利用について契約を締結した利用者への課金処理等の管理を行う。また，仮想マシン作成部１１２は，例えば，クラウド契約に基づいて物理マシンのリソースを割当てて仮想マシン３を作成する。また，仮想マシン起動部１１３は，例えば，仮想マシン３の起動を仮想化ソフトウエア４に指示する。また，仮想マシンシャットダウン部１１４は，例えば，起動状態の仮想マシン３のシャットダウンを仮想化ソフトウエア４に指示する。また，仮想マシンマイグレーション部１１５は，例えば，仮想マシン３のマイグレーションを仮想化ソフトウエア４に指示する。
【００２３】
利用者管理情報１２１は，例えば，仮想マシン３と利用者とその契約等に関する管理情報である。また，仮想マシン管理情報１２２は，例えば，仮想化ソフトウエア４から報告される仮想マシン３の動作情報を含む管理情報である。
【００２４】
図４は，図２で示したＶＭホストの機能ブロック図である。ＶＭホスト２のＣＰＵ２０１は，プログラム２１０と協働することにより，例えば，経路情報記憶部２１１と，パケット受信部２１２と，パケット送信部２１３と，経路情報更新部２１４と，トンネル作成部２１５として機能する。これらの機能は，例えば，ＶＭホスト２内に配備された１つ以上のネットワーク装置（以下，端末とも呼ぶ）によって実現される。そのため，同一の機能を複数のネットワーク装置が有している構成であってもよい。ネットワーク装置は，例えば，複数のセグメント間において通信を行うルータである。このルータは，ＶＭホスト２内に作成した仮想マシン３によってルータの機能を実現するものであってもよい。
【００２５】
また，図４において，情報格納領域２２０には，例えば，経路情報２２１が記憶されている。以下，ＶＭホスト２に配備されたネットワーク装置が， 経路情報記憶部２１１と，パケット受信部２１２と，パケット送信部２１３と，経路情報更新部２１４と，トンネル作成部２１５とを実現する場合について説明する。
【００２６】
経路情報記憶部２１１は，例えば，ＶＭホスト２内に配備されたネットワーク装置が受信した通信パケット（以下，パケットとも呼ぶ）に関する情報を記憶する。具体的に，経路情報記憶部２１１は，ネットワーク装置と通信可能なセグメント（以下，第１のセグメントとも呼ぶ）内の端末（以下，第１の端末とも呼ぶ）から，このネットワーク装置と通信可能な他のセグメント（以下，第２のセグメントとも呼ぶ）内の端末（以下，第２の端末とも呼ぶ）に向けた通信パケットを受信したときに，受信した通信パケットに関する情報（以下，データ通信パケットに関する情報，または通信パケットに関する識別情報とも呼ぶ）を記憶する（以下，通信パケットに関する情報に基づいて記憶された情報を経路情報２２１とも呼ぶ）。なお，通信パケットに関する情報は，例えば，通信パケットの送信元ＩＰアドレスや送信先ＩＰアドレスを含む。通信パケットに関する情報の詳細については後述する。
【００２７】
パケット受信部２１２は，例えば，第１の端末等から送信された通信パケットを受信する。また，パケット送信部２１３は，例えば，通信パケットの送信先ＩＰアドレスを参照し，その送信先ＩＰアドレスに通信パケットを送信する。
【００２８】
経路情報更新部２１４は，例えば，経路情報記憶部２１１によって記憶された経路情報２２１を更新する。経路情報更新部２１４は，経路情報２２１を更新することにより，例えば，端末間の通信がより短い経路を経由して行われるように設定する。
【００２９】
トンネル作成部２１５は，例えば，ＶＭホスト２内の端末間の通信が他のＶＭホスト２を経由して行われている場合に，同一ＶＭホスト２内の通信のみで（他のＶＭホスト２を経由することなく）端末間の通信を完了するために，通信トンネル（以下，トンネルとも呼ぶ）を作成する。トンネル作成部２１５は，例えば，経路情報更新部２１４が経路情報２２１を更新したことに応答して，通信トンネルの作成を行う。
【００３０】
通信トンネルは，例えば，ネットワーク上の２点間を結ぶ仮想的な通信回線である。具体的に，この通信トンネルを通過して送受信される通信パケットは，例えば，ネットワーク上の通信を行うためのプロトコルとは異なるプロトコルによって暗号化（カプセル化）された状態で通信する。そのため，通信トンネルを通過して送受信される通信パケットは，例えば，他のユーザが送信した通信パケットと物理的な通信回線を共有しながら通信を行う場合であっても，通信パケットの盗聴や改ざん等を防止することが可能になる。
【００３１】
［テンプレート］
次に，テンプレートについて説明する。図５は，仮想マシンから構成される情報処理システムを説明する図である。また，図６から図８は，テンプレートを用いて構築する情報処理システムを説明する図である。
【００３２】
図５の例における情報処理システム１００（以下，第１の情報処理システムとも呼ぶ）は，例えば，事業者が過去に構築した情報処理システムである。図５の例においては，ＶＭホスト２内のセグメントＡには，仮想マシン３Ａ，３Ｂ，３Ｃが配備されている。また，ＶＭホスト２内のセグメントＢには，仮想マシン３Ｄ，３Ｅ，３Ｆが配備されている。さらに，セグメントＡ及びセグメントＢは，それぞれファイアーウォール５Ａを接続しており，セグメントＡの各仮想マシンとセグメントＢの各仮想マシンとは，ファイアーウォール５Ａを介して通信を行う必要がある。そのため，セグメントＡの各仮想マシンとセグメントＢの各仮想マシンとは，ファイアーウォール５Ａの設定によって認められている場合に限り，通信を行うことが可能になる。
【００３３】
そして，例えば，利用者が利用者端末９から各仮想マシンにアクセスする場合，ファイアーウォール５Ａを経由してアクセスを行う。これにより，各仮想マシンのセキュリティを確保することが可能になる。具体的に，例えば，利用者端末９がセグメントＢに配備された仮想マシンにのみアクセス可能である場合に，利用者端末９からセグメントＡに配備された仮想マシンに接続することを禁止することが可能になる。
【００３４】
図５に示すような情報処理システムにおいて，情報処理システムの用途によっては，同じ構成からなる情報処理システムを複数構築する必要がある場合がある。このような場合，事業者は，情報処理システム構築を行うためのテンプレートを用意する場合がある。テンプレートは，情報処理システムを構成するための情報の集合体である。具体的に，テンプレートは，例えば，仮想マシンの容量（ＧＢ），仮想マシンの数，ＯＳの種類，インストールしているアプリケーションの情報，ネットワークの情報を含むものである。このテンプレートは，例えば，過去に構築されて安定稼動した実績のある情報処理システムに基づいて作成されるものであってよい。すなわち，事業者は，同じ構成からなる情報処理システムを複数構築する必要がある場合に，テンプレートを用いてシステム構築を行うことにより，システム構築に要する時間や手間を削減することが可能になる。
【００３５】
事業者がシステム構築を行う場合，通信回線の負荷増大等を防止するため，例えば，単一の物理マシンまたは同一データセンタや互いに近接した複数のデータセンタに配備された物理マシン群（以下，リージョンとも呼ぶ）において情報処理システム構築を行うことが好ましい。しかし，情報処理システムを構築するために使用可能なリソースが制限されている場合がある。このような場合，同一リージョン内で構築された情報処理システムに基づくテンプレートによって，複数のリージョンに跨る情報処理システムを構築する場合がある。
【００３６】
図６は，複数のリージョンに跨る情報処理システムを構築する場合の例である。具体的に，利用者が指定した図５に示した情報処理システム１００に基づくテンプレート（以下，テンプレート，または構成情報とも呼ぶ）を用いて，図１から図４において説明した情報処理システム１０上に，図５に示す情報処理システム１００を構築する場合について説明する。
【００３７】
図６の例において，利用者端末９から利用者が選択したテンプレートの情報を管理サーバ１Ｃが受信したとき，管理サーバ１Ｃは，利用者が指定したテンプレートに基づく情報処理システム１００を構築することができるリージョンを決定する。図６の例において，管理サーバ１Ｃは，例えば，リージョン８Ａに配備されたＶＭホスト２Ａ及びリージョン８Ｂに配備されたＶＭホスト２Ｂのリソース状況を管理する管理サーバ１Ａ，１Ｂに，ＶＭホスト２Ａ及びＶＭホスト２Ｂのリソース状況取得依頼を送信する。そして，管理サーバ１Ｃは，管理サーバ１Ａ，１Ｂから受信したリソース状況取得によって，情報処理システム１００を構築可能であるリージョンを把握し，情報処理システム１００を構築するリージョンを決定する。
【００３８】
ここで，図６の例において，例えば，リージョン８ＡのＶＭホスト２Ａは仮想マシン３ＡのＯＳにバージョンに対応しておらず，リージョン８ＢのＶＭホスト２Ｂは仮想マシン３ＤのＯＳにバージョンに対応していない場合がある。すなわち，この場合，ＶＭホスト２Ａには仮想マシン３Ａを配備することができず，ＶＭホスト２Ｂには仮想マシン３Ｂを配備することができない。そのため，図６の例においては，情報処理システム１００を単一のリージョン内に構築することができない。
【００３９】
図７は，図５で説明したテンプレートに基づいて，ＶＭホスト２Ａ及びＶＭホスト２Ｂに跨る形で情報処理システム１００を構築した場合の例である。
【００４０】
図７の例においては，リージョン８Ａ，８Ｂには，それぞれＶＭホスト２Ａ，２Ｂが配備されている（以下，リージョン８Ａ，８Ｂに跨る形で構築された情報処理システム１００を第２の情報処理システムとも呼ぶ）。そして，ＶＭホスト２Ａ内のセグメントＡには仮想マシン３Ｃが配備され，ＶＭホスト２Ａ内のセグメントＢには仮想マシン３Ｄ，３Ｅが配備されている。さらに，ＶＭホスト２Ａ内のセグメントＡ及びセグメントＢは，それぞれファイアーウォール５Ａを接続しており，セグメントＡの各仮想マシンとセグメントＢの各仮想マシンとは，ファイアーウォール５Ａを介して通信を行う必要がある。また，ＶＭホスト２Ｂ内のセグメントＡには仮想マシン３Ａ，３Ｂが配備され，ＶＭホスト２Ｂ内のセグメントＢには仮想マシン３Ｆが配備されている。さらに，ＶＭホスト２Ｂ内のセグメントＡ及びセグメントＢは，それぞれファイアーウォール５Ｂと接続しており，セグメントＡの各仮想マシンとセグメントＢの各仮想マシンとは，ファイアーウォール５Ｂを介して通信を行う必要がある。
【００４１】
すなわち，図７の例における情報処理システムにおいて，リージョン８Ａには，図５の例における情報処理システムに配備されているファイアーウォール５Ａが配備されており，リージョン８Ｂには，図５の例における情報処理システムに配備されていないファイアーウォール５Ｂが配備されている。なお，ファイアーウォール５Ａ，５Ｂは，図示しない通信回線によって，それぞれ外部（例えば，インターネットやイントラネット，利用者端末９）に接続している。
【００４２】
図７の例においては，情報処理システム１００のテンプレートに基づいて，リージョン８Ａ，８Ｂに跨る形で情報処理システム１００を構築している。ここで，図７において，ＶＭホスト２Ａに配備された仮想マシン３Ｃと，ＶＭホスト２Ｂに配備された仮想マシン３Ａ，３Ｂは，同じセグメントＡに配備された仮想マシンである。そのため，例えば，仮想マシン３Ｃがブロードキャストパケットを送信した場合，仮想マシン３Ａ，３Ｂへ送信される必要がある。そのため，セグメント毎に，ＶＭホスト２ＡとＶＭホスト２Ｂとの間の通信を可能にする必要がある。
【００４３】
具体的に，図８に示すように，ＶＭホスト２Ａ内のセグメントＡ，Ｂにそれぞれルータ６Ｂ，６Ｃを配備し，ＶＭホスト２Ｂ内のセグメントＡ，Ｂにそれぞれルータ６Ａ，６Ｄを配備する。そして，ルータ６Ａとルータ６Ｂとの間の通信を可能にするトンネルＡと，ルータ６Ｃとルータ６Ｄとの間の通信を可能にするトンネルＢとを設定する。そして，例えば，ルータ６Ａが仮想マシン３Ａから仮想マシン３Ｃに向けた通信パケットを受信した場合，トンネルＡを介して受信した通信パケットをルータ６Ｂに送信するようにルータ６Ａに設定する。また，同様の設定を，ルータ６Ｂ，６Ｃ，６Ｄについても行う。これによって，各仮想マシンが配備されているリージョンの違いを意識することなく，同一セグメント内に配備された仮想マシン間で通信を行うことが可能になる。なお，図８の例において，図４で説明した経路情報記憶部２１１，パケット受信部２１２，パケット送信部２１３，経路情報更新部２１４，トンネル作成部２１５，経路情報２２１は，ルータ６Ａ，６Ｂ，６Ｃ，６Ｄのそれぞれが有しているものとして説明を行う。また，トンネルＡ，Ｂは，異なるセグメントを跨がないトンネルであるため，例えば，送信元端末のＩＰアドレス，ＭＡＣアドレス，送信先端末のＩＰアドレス，ＭＡＣアドレスを含む情報をカプセル化して通信パケットに付加するＬ２トンネルである。
【００４４】
ここで，図５における情報処理システム１００において，例えば，仮想マシン３Ａが配備されているセグメントは，仮想マシン３Ｆが配備されているセグメントと異なっている。そのため，仮想マシン３Ａには，仮想マシン３Ｆに通信する際においては，ファイアーウォール５Ａに向けて通信を行うように設定されている。すなわち，情報処理システム１００においては，セグメントが異なる仮想マシンに通信を行うときには，デフォルトルーティングであるファイアーウォール５Ａを介して通信が行われる。
【００４５】
また，図８における情報処理システム１００は，情報処理システム１００のテンプレートに基づいて構築されている。そのため，図８における仮想マシン３Ａが仮想マシン３Ｆに通信する場合，ファイアーウォール５Ａに向けて通信を行うように設定されている。具体的に，図８の例において，仮想マシン３Ａが仮想マシン３Ｆに向けて通信を行う場合，仮想マシン３Ａから送信された通信パケットは，（１）ルータ６Ａ，（２）トンネルＡ，（３）ルータ６Ｂ，（４）ファイアーウォール５Ａ，の順に通信を行う。そして，仮想マシン３Ａから送信された通信パケットは，ファイアーウォール５ＡによってＶＭホスト２Ａ内のセグメントＢに送信された後，（５）ルータ６Ｃ，（６）トンネルＢ，（７）ルータ６Ｄ，（８）仮想マシン３Ｆ，の順に通信を行う。すなわち，図８の例において，仮想マシン３Ａと仮想マシン３Ｆは，同じＶＭホスト２Ｂに配備された仮想マシンであるにもかかわらず，ＶＭホスト２Ａを経由して通信を行う設定になっている。
【００４６】
これに対し，例えば，仮想マシン３Ａから仮想マシン３Ｆに向けた通信が，ファイアーウォール５Ａに向けて通信しないように仮想マシン３Ａの設定を変更する方法が考えられる。具体的に，例えば，仮想マシン３Ａから仮想マシン３Ｆに向けた通信がファイアーウォール５Ｂに向けて通信を行うように，仮想マシン３Ａに設定を行う。これにより，仮想マシン３Ａから仮想マシン３Ｆに向けた通信は，ファイアーウォール５Ｂを介して仮想マシン３Ｆに向けて通信を行うことが可能になる。そのため，ＶＭホスト２Ａを経由することなく仮想マシン３Ａから仮想マシン３Ｆに向けた通信を行うことが可能になる。しかし，図５に示す情報処理システム１００のテンプレートに情報が含まれる端末は，利用者によって選択されたものである。そのため，事業者がこれらの設定の変更を行うことができない場合がある。すなわち，図８の例において，事業者は，仮想マシン３Ａ，３Ｂ，３Ｃ，３Ｄ，３Ｅ，３Ｆ，ファイアーウォール５Ａの設定の変更を行うことができない。
【００４７】
一方，図８の情報処理システム１００において，ファイアーウォール５Ｂ，ルータ６Ａ，６Ｂ，６Ｃ，６Ｄについては，情報処理システム１００のテンプレートに含まれる情報ではない。すなわち，事業者は，ファイアーウォール５Ｂ，ルータ６Ａ，６Ｂ，６Ｃ，６Ｄについては，その設定の変更を行うことが可能である。そのため，事業者は，例えば，同一ＶＭホスト内の異なるセグメント間で行われる通信を全て予測し，これらの通信が同一ＶＭホスト内の通信のみで完結するように，ルータ６Ａ等に予め設定を行うことが可能である。しかし，ネットワークの規模によっては，設定に膨大な時間と手間を要する場合がある。さらに，図８の示すような情報処理システム１００では，運用状況の変化等に応じて，例えば，あるＶＭホストに作成されている仮想マシンを別のＶＭホストに移行させるマイグレーションが実施される場合がある。そのため，事業者は，マイグレーション等が実施されることによって情報処理システム１００の構成が変更する毎に，再度設定を行う必要がある。
【００４８】
そこで，本実施の形態では，複数のリージョンに跨って構築された情報処理システムにおいて，同一リージョン内の通信が他のリージョンを経由して行われた場合に，その通信が他のリージョンを経由しないように経路情報を更新し，通信の効率化を図る。
【００４９】
［第１の実施の形態］
最初に第１の実施の形態について説明する。図９は，第１の実施の形態における経路情報管理処理の概略を説明するシーケンスチャート図である。また，図１０は，第１の実施の形態における経路情報管理処理の概略を説明する図である。図１０を参照しながら，図９の経路情報管理処理の概略を説明する。
【００５０】
［図１０の情報処理システムの構成］
初めに，図１０の例における情報処理システム１００の構成について説明する。図１０の例においては，図８の場合と異なり，ファイアーウォール５Ａ（以下，第１のネットワーク装置５Ａとも呼ぶ）が，ルータ６Ｂ，６Ｃの役割も担っており，ファイアーウォール５Ｂ，ルータ６Ａ，６Ｄに代わってネットワーク装置５Ｄ（以下，第２のネットワーク装置５Ｄとも呼ぶ）が配備されている場合について説明する。すなわち，図１０においては，単一の機器であるネットワーク装置５Ｄによって，ファイアーウォール５Ｂ，ルータ６Ａ，６Ｄの機能を発揮する。なお，ファイアーウォール５Ａが利用者の管理下にある等の理由により，ルータ６Ｂ，６Ｃの役割を果たすことができない場合（設定変更等ができない場合）には，図８に示すように，ルータ６Ｂ，６Ｃを配備するものであってもよい。
【００５１】
ネットワーク装置５Ａ，５Ｄには，図８の場合と同様に，トンネルＡとトンネルＢとが設定されている。そして，例えば，ネットワーク装置Ｄには，リージョン８Ｂ（以下，第２の物理マシン群とも呼ぶ）に配備されたセグメントＡ内の端末が，トンネルＡを介してリージョン８Ａと通信を行うための経路情報（以下，第１の経路情報とも呼ぶ）が記憶されている。この第１の経路情報には，例えば，リージョン８Ｂに配備されたセグメントＡ内の端末が，リージョン８Ｂに配備されたセグメントＢ内の仮想マシンやリージョン８Ａ（以下，第１の物理マシン群とも呼ぶ）に配備された端末と通信する場合，トンネルＡを介してリージョン８Ａと通信を行うように記憶されている。また，例えば，ネットワーク装置Ｄには，リージョン８Ｂに配備されたセグメントＢ内の端末が，トンネルＢを介してリージョン８Ａと通信を行うための経路情報（以下，第２の経路情報とも呼ぶ）が記憶されている。この第２の経路情報には，例えば，リージョン８Ｂに配備されたセグメントＢ内の端末が，リージョン８Ｂに配備されたセグメントＡ内の仮想マシンやリージョン８Ａに配備された端末と通信する場合，トンネルＢを介してリージョン８Ａと通信を行うように記憶されている。すなわち，図１０の例においては，図８で説明した場合と同様に，異なるリージョンに配備された同一セグメント内の端末の通信は，セグメント毎に記憶された経路情報に基づいてトンネルＡまたはトンネルＢを介して行われる。
【００５２】
また，ネットワーク装置５Ａには，ネットワーク装置５Ｄと同様に，リージョン８Ａに配備されたセグメントＡ内の端末が，トンネルＡを介してリージョン８Ｂと通信を行うための経路情報が記憶されている。さらに，リージョン８Ａに配備されたセグメントＢ内の端末が，トンネルＢを介してリージョン８Ｂと通信を行うための経路情報が記憶されている。
【００５３】
なお，図１０の情報処理システム１００は，図８で説明した場合と同様に，情報処理システム１００のテンプレートに基づいて構築されている。そのため，情報処理システム１００のテンプレートに情報が含まれる端末（ネットワーク装置５Ａ，仮想マシン３Ａ，３Ｂ，３Ｃ，３Ｄ，３Ｅ，３Ｆ）には，図５のおける情報処理システム１００と同じ設定がされている。したがって，各端末が異なるセグメントに配備された端末に通信を行う場合には，全てネットワーク装置５Ａを経由して通信が行われる。
【００５４】
［図９のＳ１］
次に，図１０の情報処理システム１００を参照しながら，図９の経路情報管理処理の概略を説明する。図９の例においては，リージョン８Ｂに配備された仮想マシン３Ａから仮想マシン３Ｆに向けて通信パケットを送信する場合について説明する。
【００５５】
初めに，仮想マシン３Ａは，仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットを送信する（Ｓ１）。具体的に，仮想マシン３Ａは，同一セグメントであるセグメントＡに配備された端末の全てに通信パケットをブロードキャスト送信する。これにより，ネットワーク装置５Ｄは，仮想マシン３Ａが送信した通信パケットを受信することができる。
【００５６】
［図９のＳ２，Ｓ３，Ｓ４］
次に，ネットワーク装置５Ｄは，仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットを受信したとき，その通信パケットに関する情報を記憶する（Ｓ２）。通信パケットに関する情報は，例えば，通信パケットの送信元ＩＰアドレスや送信先ＩＰアドレスを含む情報であり，その通信パケットを特定することができる情報である。この通信パケットに関する情報の詳細については後述する。そして，ネットワーク装置５Ｄは，受信した通信パケットをリージョン８Ａに向けて送信する（Ｓ３）。図１０の例においては，ネットワーク装置５Ｄは，トンネルＡを経由してリージョン８Ａに配備されたネットワーク装置５Ａと接続している。したがって，ネットワーク装置５Ｄは，例えば，テンプレートに含まれる経路情報（第１の経路情報及び第２の経路情報）に基づき，ネットワーク装置５Ａに向けて仮想マシン３Ａから受信した通信パケットを送信する。
【００５７】
そして，ネットワーク装置５Ａは，通信パケットの送信先ＩＰアドレスを確認し，仮想マシン３Ｆが配備されているリージョン８ＢにおけるセグメントＢに向けて通信パケットを送信する（Ｓ４）。具体的に，ネットワーク装置５Ａは，受信した通信パケットをトンネルＢに送信する。
【００５８】
［図９のＳ５，Ｓ６］
次に，ネットワーク装置５Ｄは，ネットワーク装置５Ａから通信パケットを受信したときに，その受信した通信パケットがＳ３においてネットワーク装置５Ｄが送信した通信パケットであるか否かを確認する。そして，受信したパケットがネットワーク装置５Ｄによって送信されたパケットである場合，ネットワーク装置５Ｄは，その通信パケットがリージョン８Ａを経由して送信された通信パケットであると判断する。
【００５９】
具体的に，ネットワーク装置５Ｄは，Ｓ２において記憶した通信パケットに関する情報に基づいて，受信したパケットがネットワーク装置５Ｄによって送信されたパケットであるか否かを判断する。そして，ネットワーク装置５Ｄは，受信した通信パケットに対応する通信パケットに関する情報が記憶されている場合に，仮想マシン３Ａから仮想マシン３Ｆに送信される通信パケットがリージョン８Ａを経由せずに通信するように，経路情報を更新する（Ｓ５）。その後，ネットワーク装置５Ｄは，仮想マシン３Ｆに受信した通信パケットを送信する（Ｓ６）。すなわち，例えば，ネットワーク装置５Ｄは，仮想マシン３Ａから受信した通信パケットをリージョン８Ａに送信することなく仮想マシン３Ｆに送信するように，経路情報を更新する。そして，ネットワーク装置５Ｄは，仮想マシン３Ａから仮想マシン３Ｆに送信される通信パケットを再度受信した場合に，更新した経路情報に基づいて通信を行う。また，ネットワーク装置５Ｄは，上記のように経路情報を更新した後，仮想マシン３Ｆから仮想マシン３Ａに送信される通信パケットを受信した場合についても，更新した経路情報に基づき，リージョン８Ａを経由せずに通信を行うものであってよい。
【００６０】
すなわち，ネットワーク装置５Ｄは，受信したパケットがネットワーク装置５Ｄによって送信されたパケットであると判断した場合，通信パケットの送信元（仮想マシン３Ａ）と送信先（仮想マシン３Ｆ）とが同じリージョン内に配備された端末であると判断する。さらに，ネットワーク装置５Ｄは，受信した通信パケットが，通信パケットの送信元と送信先とが同じリージョン内に配備された端末であるにもかかわらず，他のリージョンを経由して通信が行われたと判断する。そして，この通信パケットと同じ送信元と送信先による通信パケットを再度受信した場合，ネットワーク装置５Ｄは，同じリージョン内における通信のみで通信パケットの送受信を完了することができるように経路情報の更新を行う。  
【００６１】
このように，第１の実施の形態によれば，ネットワーク装置５Ｄは，仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットを受信したとき，受信したパケットに関する情報を記憶する。そして，ネットワーク装置５Ｄは，仮想マシン３Ａから受信した通信パケットを，テンプレートに含まれる経路情報に基づいてリージョン８Ａに送信する。次に，ネットワーク装置５Ｄは，ネットワーク装置５Ｄが送信した通信パケットをネットワーク装置５Ａから受信した場合に，以降の仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットがリージョン８Ａを経由せずに通信するように，記憶した通信パケットに関する情報に基づいて経路情報を更新する。そして，ネットワーク装置５Ｄは，移行の仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットを受信した場合，更新した経路情報に基づいて通信を行う。これにより，同一リージョンに構築することを前提としたテンプレートに基づいて情報処理システム１００を構築した場合においても，不必要な通信の発生を抑制することが可能になる。そして，通信の効率化を図ることが可能になる。また，事業者は，マイグレーション等により情報処理システム１００の構成が変更された場合においても，経路情報の変更を行う必要がなくなる。
【００６２】
[第１の実施の形態の詳細]
次に，第１の実施の形態の詳細について説明する。図１１から図１３は，第１の実施の形態における経路情報管理処理の詳細を説明するフローチャート図である。また，図１４から図２０は，第１の実施の形態における経路情報管理処理の詳細を説明する図である。図１４から図２０を参照しながら，図１１から図１３の経路情報管理処理の詳細を説明する。具体的に，以下の例においては，図１４のルータ６Ａ（以下，第３のネットワーク装置６Ａとも呼ぶ）及びルータ６Ｄ（以下，第４のネットワーク装置６Ｂとも呼ぶ）の例において行われる経路情報管理処理について説明する。なお，図１１から図１３は，ルータ６Ａ及びルータ６Ｄのそれぞれにおける経路情報管理処理のフローチャートである。
【００６３】
図１４の情報処理システム１０００は，図８の例と異なり，リージョン８Ａ，８Ｂ内にセグメントＣが存在している。リージョン８ＡにおけるセグメントＣには，ルータ６Ｅ及び仮想マシン３Ｇが配備され，リージョン８ＢにおけるセグメントＣには，ルータ６Ｆ及び仮想マシン３Ｈが配備されている。そして，ルータ６Ｅとルータ６Ｆとの間にはトンネルＣが設定されている。また，図１４において点線で示すトンネルＤは，第１の実施の形態における経路情報管理処理によって，ルータ６Ａとルータ６Ｂとの間で設定しようとしているトンネルである。
【００６４】
なお，以下の例において，仮想マシン間で通信されるデータを含むパケットをデータ通信パケットと呼び，ルータやファイアーウォール間で通信される通信パケットに関する情報（送信元端末のＩＰアドレス等）を含むパケットを通知パケットと呼ぶ。また，データ通信パケットと通知パケットとを総称してパケットまたは通信パケットとも呼ぶ。
【００６５】
［ルータ６Ａがデータ通信パケットを受信した場合の処理］
初めに，図１１を参照して，ルータ６Ａがデータ通信パケットを受信した場合のルータ６Ａの処理について説明する。図１４のルータ６Ａがデータ通信パケットを受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ），ルータ６Ａは，そのデータ通信パケットが同一リージョンからの送信されたデータ通信パケットであるか否かを確認する（Ｓ１３）。そして，受信したデータ通信パケットが同一リージョンからの送信されたパケットである場合（Ｓ１３のＹＥＳ），ルータ６Ａは，ルータ６Ａの経路情報を確認し，受信したデータ通信パケットにおける送信先端末及び送信元端末のＩＰアドレスの組合せが登録有無を確認する（Ｓ１４）。  そして，受信したデータ通信パケットの送信先端末及び送信元端末のＩＰアドレスの組合せが登録されていない場合（Ｓ１４のＮＯ），ルータ６Ａの経路情報記憶部２１１は，例えば，受信したデータ通信パケットに関する情報を記憶する。具体的に，経路情報記憶部２１１は，例えば，受信したデータ通信パケットに関する情報と，同一リージョン内における他のセグメントの識別情報とを関連付けて経路情報に記憶する（Ｓ１６）。他のセグメントの識別情報は，例えば，他のセグメントの名称や他のセグメントに配備されたルータの名称であってよい。なお，ルータ６Ａは，同一リージョン内における他のセグメントに配備された端末，または他のリージョンに配備された端末に向けてデータ通信パケットを受信した場合に，受信したデータ通信パケットに関する情報を記憶するものであってもよい。
【００６６】
図１５は，ルータ６Ａ及びルータ６Ｄの経路情報の初期値を説明する図である。なお，図１４におけるルータ６Ａの経路情報及びルータ６Ｄの経路情報は，それぞれ図９における第１の経路情報及び第２の経路情報に対応する。
【００６７】
図１５（Ａ）の例におけるルータ６Ａの経路情報は，例えば，「ルータＩＤ」，「送信先端末のＩＰアドレス」，「トンネルＩＤ」，「送信元端末のＩＰアドレス」，「送信元端末のＭＡＣアドレス」，「タイマ」の項目を有している。「ルータＩＤ」，「トンネルＩＤ」，「タイマ」については後述する。また，図１５（Ａ）の例において，「送信先端末のＩＰアドレス」，「送信元端末のＩＰアドレス」，「送信元端末のＭＡＣアドレス」は，データ通信パケットに関する情報に含まれる。すなわち，「送信先端末のＩＰアドレス」，「送信元端末のＩＰアドレス」，「送信元端末のＭＡＣアドレス」は，各ルータがデータ通信パケットを受信したときに記憶される。
【００６８】
具体的に，図１５（Ａ）の例におけるルータ６Ａの経路情報の１行目（以下，項目「番号」に従い，１番目の経路情報とも呼ぶ）には，「送信先端末のＩＰアドレス」の欄に＊が記憶されており，「トンネルＩＤ」の欄にトンネルＡが記憶されている。すなわち，図１５（Ａ）の例における１番目の経路情報は，図１４の例において，ルータ６Ａと同一リージョンに配備された同一セグメント内の仮想マシンから受信したデータ通信パケットは，トンネルＡを介してルータ６Ｂに送信されることを示している。
【００６９】
また，図１５（Ａ）における２，３番目の経路情報の「ルータＩＤ」の欄には，リージョン８Ｂに存在するルータ６Ａ以外のルータであるルータ６Ｄ及びルータ６Ｆの名称が記憶されている。すなわち，事業者は，ルータ６Ａが受信したデータ通信パケットによってルータ６Ａとトンネルを作成する可能性があるルータの情報を，ルータ６Ａの経路情報に予め記憶させておく。
【００７０】
なお，図１５（Ａ）の例においては，「ルータＩＤ」の欄に，トンネルに接続しているルータ（他のリージョンと通信する際に経由するルータ）の名称が記憶されている。これに対し，各ルータの経路情報は，例えば，「ルータＩＤ」に代えて，各リージョン内に存在するセグメントの名称を記憶する「セグメントＩＤ」を有するものであってもよい。以下，「ルータＩＤ」及び「セグメントＩＤ」をセグメントの識別情報（第１のセグメントの識別情報または第２のセグメントの識別情報）とも呼ぶ。
【００７１】
同様に，図１５（Ｂ）の例におけるルータＤの１番目の経路情報には，「送信先端末のＩＰアドレス」に＊が記憶されており，「トンネルＩＤ」にトンネルＢが記憶されている。また，図１５（Ｂ）の例における２，３番目の経路情報の「ルータＩＤ」の欄には，ルータ６Ｄと同一リージョン内に存在するルータの名称であるルータ６Ａ及びルータ６Ｆが記憶されている。
【００７２】
次に，図１６は，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットを，ルータ６Ａが受信した場合におけるルータ６Ａ及びルータ６Ｄの経路情報を説明する図である。図１５（Ａ）の例において，ルータ６Ａが受信したデータ通信パケットの送信元端末である仮想マシン３Ａと送信先端末である仮想マシン３Ｄとの組合せについての情報は，ルータ６Ａの経路情報に記憶されていない。また，仮想マシン３Ａとルータ６Ａとは同一リージョンである。そのため，経路情報記憶部２１１は，ルータ６Ａが受信したデータ通信パケットに関する情報を記憶する（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１３のＹＥＳ，Ｓ１４のＮＯ，Ｓ１６）。
【００７３】
図１６（Ａ）において，経路情報記憶部２１１は，ルータ６Ｄ及びルータ６Ｆの識別情報として「ルータＩＤ」に記憶したルータ６Ｄ及びルータ６Ｆのそれぞれに関連付けて，仮想マシン３Ａから受信したデータ通信パケットに関する情報を記憶する（図１６（Ａ）の４，５番目の経路情報）。具体的に，ルータ６Ｄ及びルータ６Ｆのそれぞれに関連付けて，「送信先端末のＩＰアドレス」として仮想マシン３ＦのＩＰアドレスであるＶＭ３Ｆ−ＩＰと，「トンネルＩＤ」であるトンネルＡとを記憶する。さらに，ルータ６Ｄ及びルータ６Ｆのそれぞれに関連付けて，「送信元端末のＩＰアドレス」として仮想マシン３ＡのＩＰアドレスであるＶＭ３Ａ−ＩＰと，「送信元端末のＭＡＣアドレス」として仮想マシン３ＡのＭＡＣアドレスであるＶＭ３Ａ−ＭＡＣとを記憶する（Ｓ１６）。
【００７４】
図１１に戻り，ルータ６Ａのパケット送信部２１３は，他のセグメントにデータ通信パケットに関する情報を含む登録通知パケットを送信する（Ｓ１７）。具体的に，パケット送信部２１３は，図１６（Ａ）に記憶した経路情報のうち，ルータ６Ｄに関する情報（図１６（Ａ）の４番目の経路情報）をルータ６Ｄに送信し，ルータ６Ｆに関する情報（図１６（Ａ）の５番目の経路情報）をルータ６Ｆに送信する。登録通知パケットは，通知パケットの１つであり，データ通信パケットを受信したルータが，同一リージョン内に配備された他のルータにその旨を通知するためのパケットである。
【００７５】
具体的に，図１７の例において，ルータ６Ａは，例えば，仮想マシン３Ａからデータ通信パケットを受信したときに，図１７（Ａ）の４，５番目の経路情報に記憶したデータ通信パケットの「送信先端末のＩＰアドレス」，「送信元端末のＩＰアドレス」，「ルータＩＤ」を含む登録通知パケットを作成する。そして，ルータ６Ａは，作成した登録通知パケットをルータ６Ｄ及びルータ６Ｆに送信する。
【００７６】
すなわち，ルータ６Ａは，同一リージョン内に配備された他のルータに記憶したデータ通信パケットに関する情報を送信する。これにより，同一リージョン内に配備された他のルータは，同一リージョン内に配備されたルータ６Ａが送信したデータ通信パケットが他のリージョンを経由して送信された場合に，これを検知することが可能になる。
【００７７】
そして，パケット送信部２１３は，受信したデータ通信パケットを経路情報に従って送信する（Ｓ１８）。すなわち，パケット送信部２１３は，図１７（Ａ）の１番目の経路情報に従い，仮想マシン３Ａから受信したパケットをトンネルＡに送信する。
【００７８】
一方，ルータ６Ａが受信したデータ通信パケットの送信元端末及び送信先端末のＩＰアドレスの組合せが，ルータ６Ａの経路情報に登録されている場合（Ｓ１４のＮＯ），パケット送信部２１３は，登録済の送信先端末のＩＰアドレスに対応する経路情報に基づいてデータ通信パケットを送信する（Ｓ１５）。この場合，ルータ６Ａは，登録通知パケットの送信を行わない。
【００７９】
［ルータ６Ｄが登録通知パケットを受信した場合の処理］
次に，図１１及び図１２を参照して，ルータ６Ａから登録通知パケットを受信した場合のルータ６Ｄの処理について説明する。図１１及び図１２において，ルータ６Ｄが同一リージョンのルータ６Ａから登録通知パケットを受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＹＥＳ，Ｓ２１のＮＯ），ルータ６Ｄの経路情報記憶部２１１は，受信した登録通知パケットに関する情報をルータＤの経路情報に記憶する（Ｓ２４）。
【００８０】
具体的に，登録通知パケットを受信したルータ６Ｄは，図１７（Ｂ）の４番目の経路情報に示すように，例えば，登録通知パケットに含まれる「ルータＩＤ」であるルータ６Ａを，ルータ６Ｄの経路情報における「ルータＩＤ」に記憶する。そして，記憶した「ルータＩＤ」に関連付けて，登録通知パケットに含まれる「送信先端末のＩＰアドレス」であるＶＭ３Ｆ−ＩＰを，ルータ６Ｄの経路情報における「送信元端末のＩＰアドレス」に記憶する。さらに，記憶した「ルータＩＤ」に関連付けて，登録通知パケットに含まれる「送信元端末のＩＰアドレス」であるＶＭ３Ａ−ＩＰを，ルータ６Ｄの経路情報における「送信先端末のＩＰアドレス」に記憶する。すなわち，ルータ６Ｄに登録通知パケットに関する情報を記憶しておくことにより，ルータ６Ｄがルータ６Ａから送信されたデータ通信パケットを受信したときに，ルータ６Ａ及びルータ６Ｄの経路情報を更新する契機とすることが可能になる。
【００８１】
また，ルータ６Ｄは，登録通知パケット受信したときに，「タイマ」の項目をＯＮにする。すなわち，ルータ６Ａは，同一リージョン内に存在する他のルータの全てに登録通知パケットを送信するため，他のルータは，記憶した登録通知パケットに関する情報に対応したデータ通信パケットを受信しない場合がある。そのため，他のルータは，登録通知パケットを受信した後，記憶した登録通知パケットに関する情報に対応したデータ通信パケットを受信する前に，所定時間（例えば１分）が経過した場合，ルータ６Ｄの経路情報に記憶した登録通知パケットに関する情報を消去するものであってよい。
【００８２】
［ルータ６Ｄがデータ通信パケットを受信した場合の処理］
次に，図１１及び図１３を参照して，ルータ６Ｄがルータ６Ａにより送信されたデータ通信パケットを受信した場合の処理について説明する。
【００８３】
図１１及び図１３において，ルータ６Ｄが異なるリージョンからデータ通信パケットを受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１３のＮＯ），ルータ６Ｄのパケット受信部２１２は，受信したデータ通信パケットがルータ６Ｄの経路情報に登録されているか否かを判断する（Ｓ３１）。図１７（Ｂ）の例においては，ルータ６Ａが送信した登録通知パケットに関する情報がルータ６Ｄの経路情報に記憶されている（Ｓ３１のＹＥＳ）。そのため，ルータ６Ｄのパケット送信部２１３は，登録通知パケットに関する情報において記憶されているルータ６Ａに向けて，トンネル作成通知パケットを送信する（Ｓ３２）。そして，ルータ６Ｄのトンネル作成部２１５は，トンネル作成通知パケットを送信したルータ６Ａとルータ６Ｄとの間でトンネルを作成し（Ｓ３３），ルータ６Ｄの経路情報記憶部２１１は，作成したトンネルに関する情報をルータ６Ｄの経路情報に記憶する。
【００８４】
具体的に，ルータ６Ｄは，図１８（Ｂ）に示すように，トンネルを作成した経路情報（図１８（Ｂ）の４番目の経路情報）の「トンネルＩＤ」の欄に，作成したトンネル（トンネルＤ）の情報を記憶する（Ｓ３４）。トンネル作成通知パケットは，通知パケットの１つであり，同一リージョン内に配備された他のルータに，そのルータに向けてトンネルの設定を行う旨を通知するものである。そして，トンネル作成通知パケットを受信したルータは，トンネル作成通知パケットを送信したルータに向けてトンネルの設定を行う。これにより，トンネル作成通知パケットの送受信を行ったルータ間でトンネルの設定を行うことが可能になる。なお，ルータ６Ｄのパケット送信部２１３は，受信したデータ通信パケットがルータ６Ｄの経路情報に登録されている場合であっても，その経路情報の「トンネルＩＤ」が未登録である場合に限り，トンネル作成通知パケットを送信するものであってよい（Ｓ３２）。
【００８５】
図１３に戻り，ルータ６Ｄの経路情報記憶部２１１は，ルータ６Ｄが受信したデータ通信パケットに関する経路情報に，「送信先端末のＭＡＣアドレス」を記憶する（Ｓ３５）。具体的に，図１９（Ｂ）に示すように，トンネルを作成した経路情報（図１９（Ｂ）の４番目の経路情報）における「送信元端末のＭＡＣアドレス」の欄に，ルータ６Ｄが受信したデータ通信パケットの「送信先端末のＭＡＣアドレス」としてＶＭ３Ｆ−ＭＡＣの情報を記憶する。
【００８６】
すなわち，例えば，ルータ６Ａとルータ６Ｄとの間にトンネルを作成後，再度仮想マシン３Ａから仮想マシン３Ｆに向けてデータ通信パケットが送信する場合，仮想マシン３Ａと仮想マシン３Ｆとはセグメントが異なるため，互いにＡＲＰ要求が届かない。そのため，ルータ６Ｄは，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットの送信に際して，ＡＲＰ要求を送信して仮想マシン３ＦのＭＡＣアドレスを取得する必要がある。そこで，図１９（Ｂ）の例におけるルータ６Ｄは，仮想マシン３Ａと仮想マシン３Ｆとの間のトンネルに関する経路情報に，仮想マシン３ＦのＭＡＣアドレスの情報を関連付けて記憶しておく。これにより，ルータ６Ｄは，仮想マシン３Ａからのデータ通信パケットを受信したときに，ＡＲＰ要求を行うことなくデータ通信パケットのＭＡＣアドレスの書き換えを行うことが可能になる。また，図１９（Ａ）に示すように，仮想マシンＡから送信されたデータ通信パケットをルータ６Ａが受信したときも，上記と同様の理由により，ルータ６Ａの経路情報（４，５番目の経路情報）に「送信元端末のＭＡＣアドレス」を記憶する。
【００８７】
図１３に戻り，さらに，ルータ６Ｄの経路情報記憶部２１１は，ルータ６Ｄが受信したデータ通信パケットに関する経路情報に記憶されたタイマを消去（解除）する（Ｓ３６）。これにより，仮想マシン３Ａと仮想マシン３Ｆとの間で作成したトンネルに関する経路情報が消去されることを防止することができる。そして，ルータ６Ｄのパケット送信部２１３は，リージョン８Ａから受信したデータ通信パケットをデータ通信パケットに含まれる送信先端末のＩＰアドレスに送信する（Ｓ３７）。
【００８８】
［ルータ６Ａがトンネル作成通知パケットを受信した場合の処理］
次に，図１１及び図１２を参照して，ルータ６Ａがルータ６Ｄにより送信されたトンネル作成通知パケットを受信した場合の処理について説明する。
【００８９】
図１１及び図１２において，ルータ６Ｄが異なるリージョンからトンネル作成通知パケットを受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＹＥＳ，Ｓ２１のＹＥＳ），ルータ６Ａのトンネル作成部２１５は，トンネル作成通知を送信したルータ６Ｄとルータ６Ａとの間にトンネルを作成する（Ｓ２２）。そして，ルータ６Ａの経路情報記憶部２１１は，作成したトンネルに関する情報を経路情報に記憶し，同じデータ通信パケットで作成した他のルータに関する経路情報を削除する（Ｓ２３）。具体的に，図２０（Ａ）に示すように，ルータ６Ｄが「トンネルＩＤ」の欄の設定を行った経路情報（図２０（Ｂ）の４番目の経路情報）に対応するルータＡの経路情報（図２０（Ａ）の４番目の経路情報）における「トンネルＩＤ」の欄をトンネルＤに更新する。そして，トンネル作成通知パケットを送信したルータ６Ｄのトンネル作成部２１５が行ったトンネルの設定を合わせて，ルータ６Ａとルータ６Ｄ間のトンネルの設定が完了する。なお，ルータ６Ａ及びルータ６Ｄは，配備されているセグメントが異なるため，設定したトンネルＤは，例えば，送信元端末及び送信先端末のＩＰアドレスを含む情報（ＭＡＣアドレスを含まない情報）をカプセル化して通信パケットに付加するＬ３トンネルである。
【００９０】
これにより，図２０（Ａ）に示すように，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットが再度発生した場合に，ルータ６Ａは，そのデータ通信パケットをルータ６Ａとルータ６Ｄとの間で設定したトンネルＤに送信する。また，図２０（Ｂ）に示すように，仮想マシン３Ｆから仮想マシン３Ａに向けたデータ通信パケットをルータ６Ｄが受信した場合においても，ルータ６Ｄは，そのデータ通信パケットをトンネルＤに送信する。すなわち，今後発生した仮想マシン３Ａと仮想マシン３Ｆとの間を通信するデータ通信パケットが，リージョン８Ａを経由して通信することを防ぐことが可能になる。
【００９１】
なお，図１７（Ｂ）において，ルータ６Ｄは，受信した登録通知パケットの「送信先端末のＩＰアドレス」と「送信元端末のＩＰアドレス」とを入れ替える形でルータ６Ｄの経路情報（図１７（Ｂ）の４番目の経路情報）に記憶した。これにより，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットに基づいてトンネルの設定を行うことで，仮想マシン３Ｆから仮想マシン３Ａに向けたデータ通信パケットについてのトンネルの設定も同時に行うことが可能になる。具体的に，図２０（Ｂ）に示すように，仮想マシン３Ｆから仮想マシン３Ａに向けたデータ通信パケットが発生した場合に，ルータ６Ｆがそのデータ通信パケットをトンネルＤに送信するように，ルータ６Ｄの経路情報（図２０（Ｂ）の４番目の経路情報）が設定されている。
【００９２】
［経路情報が送信元端末のＭＡＣアドレスの項目を有しない場合］
次に，経路情報が送信元端末のＭＡＣアドレスの項目を有しない場合について説明する。図２１は，第１の実施の形態において経路情報が送信元端末のＭＡＣアドレスの項目を有しない場合を説明する図である。
【００９３】
図２１において，仮想マシン３Ａから仮想マシン３Ｆに向けた通信パケットによって，仮想マシン３Ａから仮想マシン３Ｆに送信する場合の経路情報（図２１（Ａ）の４番目の経路情報）が記憶されている。ここで，仮想マシン３Ｂは，仮想マシン３Ａと同一リージョンであって同一セグメントに配備されているため，仮想マシン３Ｂから仮想マシン３Ｆへの通信パケットを，更新された経路情報（図２１（Ａ）の４番目の経路情報）に基づいて送信することが可能である。すなわち，経路情報が「送信元端末のＭＡＣアドレス」を記憶しない場合，経路情報は，送信元端末を特定するための情報を記憶する必要はなくなるため，送信元端末のリージョン及びセグメントの情報のみを記憶する。これにより，経路情報に記憶された送信元端末と同一リージョンであって同一セグメントに配備された送信元端末から，その経路情報に記憶されている送信先端末へ通信を行う場合においても，記憶されている経路情報に基づいて通信を行うことができる。そのため，図１５等で説明した経路情報管理処理を行う回数を抑制することが可能になる。また，端末単位での経路情報を記憶する必要がなくなるため，経路情報に記憶すべき情報量も抑制することが可能になる。
【００９４】
なお，経路情報が「送信元端末のＭＡＣアドレス」の項目を有しない場合，図１１において，各ルータの経路情報記憶部２１１は，経路情報に対して「送信元端末のＭＡＣアドレス」の記憶を行う必要はない（Ｓ１６）。また，図１３において，各ルータの経路情報記憶部２１１は，経路情報への送信先端末のＭＡＣアドレスの記憶を行う必要はない（Ｓ３５）。
【００９５】
[ＡＲＰ要求処理]
次に，ＡＲＰ要求処理について説明する。図２２から図２４は，第１の実施の形態におけるＡＲＰ要求処理を含む経路情報管理処理を説明するフローチャート図である。また，図２５から図２７は，第１の実施の形態におけるＡＲＰ要求処理を説明する図である。図２５から図２７を参照しながら，図２２から図２４のＡＲＰ要求処理を説明する。
【００９６】
なお，図２２から図２４までのフローチャートは，図１１から図１３までのフローチャートにＡＲＰ要求処理に関する部分を追加したものである。以下，図１１から図１３までのフローチャートと異なる点について説明する。
【００９７】
図２５に示す情報処理システム２０は，図１４に示す情報処理システム１０００と異なり，３つのリージョンに跨る形でシステムを構築している。そして，図２５に示す各ルータは，それぞれ異なるリージョンと通信を行うための２つのトンネルと接続している。そのため，例えば，図２５の情報処理システム２０００の各端末が経路情報管理処理を行うためにパケットをブロードキャスト送信する場合，１つのトンネルにのみ送信すればよいパケットであっても他のトンネルにも送信する場合が発生する。そこで，図２５に示すように３つ以上のリージョンに跨って構築された情報処理システムの経路情報管理処理を行う場合には，経路情報管理処理を行う前にＡＲＰ要求処理を行う。
【００９８】
ＡＲＰ要求処理は，同一セグメント上に存在する端末のＩＰアドレスに基づいて，その端末のＭＡＣアドレスを取得するものである。以下，各端末がＡＲＰ要求を行うために送信するパケットをＡＲＰ要求パケットと呼び，各端末がＡＲＰ要求に応答するために送信するパケットをＡＲＰ応答パケットと呼ぶ。
【００９９】
具体的に，ＡＲＰ要求処理を行う端末は，ＡＲＰ要求パケットを同一セグメント内の各端末にブロードキャスト送信する。そして，ＡＲＰ要求パケットの送信先端末は，ＡＲＰ要求パケットを受信したときに，自端末のＭＡＣアドレスに関する情報をＡＲＰ応答パケットとして，ＡＲＰ要求パケットの送信元端末に送信（ユニキャスト送信）する。また，ＡＲＰ要求パケットの送信先端末以外の端末は，受信したＡＲＰ要求パケットに対するＡＲＰ返信パケットを送信する必要がないため，ＡＲＰ要求パケットを受信したときにそのＡＲＰ要求パケットを破棄する。
【０１００】
［図２５のシステム構成］
初めに，図２５の例におけるシステム構成について説明する。図２５の例においては，情報処理システムがリージョン１８Ａ，１８Ｂ，１８Ｃに跨って構築されており，それぞれのリージョンにＶＭホスト１２Ａ，１２Ｂ，１２Ｃが配備されている。そして，ＶＭホスト１２Ａ内のセグメントＡには，仮想マシン１３Ｂ，ルータ１６Ｂが配備され，ＶＭホスト１２Ａ内のセグメントＢには，仮想マシン１３Ａ，ルータ１６Ａが配備されている。また，ＶＭホスト１２Ｂ内のセグメントＡには，仮想マシン１３Ｃ，ルータ１６Ｃが配備され，ＶＭホスト１２Ｂ内のセグメントＢには，仮想マシン１３Ｄ，ルータ１６Ｄが配備されている。さらに，ＶＭホスト１２Ｃ内のセグメントＡには，仮想マシン１３Ｅ，ルータ１６Ｅが配備され，ＶＭホスト１２Ｃ内のセグメントＢには，仮想マシン１３Ｆ，ルータ１６Ｆが配備されている。ＶＭホスト１２Ａ，１２Ｂ，１２ＣにおけるセグメントＡ及びセグメントＢは，それぞれファイアーウォール１５Ａ，１５Ｂ，１５Ｃを介して接続している。また，ルータ１６Ａとルータ１６Ｄとの間，ルータ１６Ａとルータ１６Ｆとの間，ルータ１６Ｄとルータ１６Ｆとの間には，それぞれトンネルＡ，Ｂ，Ｃが設定されている。すなわち，トンネルＡ，Ｂ，Ｃによって，各リージョンに配備されたセグメントＢ内の端末は互いに通信をすることが可能になる。なお，図２５の例において，ルータ１６Ｂとルータ１６Ｃとの間，ルータ１６Ｂとルータ１６Ｅとの間，ルータ１６Ｃとルータ１６Ｅとの間に設定されている各トンネルについては図示しない。また，図２５の例において，各ルータは，通信パケットによるループの発生等を防止するため，各ルータがトンネルから受信した通信パケットを他のトンネルに送信しない設定がされているものとする。
【０１０１】
［ルータ１６ＡがＡＲＰ要求パケットを受信した場合の処理］
次に，図２２を参照して，仮想マシン１３Ａから仮想マシン１３Ｄに向けて送信したＡＲＰ要求パケットを，ルータ１６Ａが受信した場合の処理について説明する。
【０１０２】
図２２において，ルータ１６Ａと同一リージョン内に配備された仮想マシン１３Ａから送信されたＡＲＰ要求パケットを，ルータ１６Ａのパケット受信部２１２が受信した場合（Ｓ４１のＹＥＳ，Ｓ４２のＮＯ，Ｓ４３のＹＥＳ，Ｓ４４のＮＯ，Ｓ４６のＹＥＳ），ルータ１６Ａのパケット送信部２１３は，受信したＡＲＰ要求パケットをトンネルに送信する（Ｓ４７）。具体的に，図２５の例においては，ルータ１６Ａは，ルータ１６Ａに設定されたトンネルＡ及びトンネルＢに，受信したＡＲＰ要求パケットを送信する。なお，トンネルＢを介してＡＲＰ要求パケットを受信したルータ１６Ｆは，ループの発生等を防止するために設定されているトンネルから受信した通信パケットを，他のトンネルに送信しないようにするため，リージョン１８ＣのセグメントＢにのみＡＲＰ要求パケットを送信する。そして，リージョン１８ＣのセグメントＢに配備されている仮想マシン１３Ｆとファイアーウォール１５Ｃは，それぞれ受信したＡＲＰ要求パケットを破棄する。            
【０１０３】
［ルータ１６ＤがＡＲＰ要求パケットを受信した場合の処理］
次に，図２２を参照して，ルータ１６ＡがトンネルＡに送信したＡＲＰ要求パケットを，ルータ１６Ｄのパケット受信部２１２が受信した場合の処理について説明する。
【０１０４】
図２２において，ルータ１６ＡがトンネルＡを経由して送信したＡＲＰ要求パケットを，ルータ１６Ｄのパケット受信部２１２が受信した場合（Ｓ４１のＹＥＳ，Ｓ４２のＮＯ，Ｓ４３のＹＥＳ，Ｓ４４のＹＥＳ），ルータ１６Ｄのパケット送信部２１３は，受信したＡＲＰ要求パケットをリージョン１８Ｂに配備されたセグメントＢ内の端末に送信する（Ｓ４５）。図２５の例においては，ルータ１６Ｄのパケット送信部２１３は，仮想マシン１３Ｄ及びファイアーウォール１５ＢにＡＲＰ要求パケットを送信する。
【０１０５】
［ルータ１６ＤがＡＲＰ応答パケットを受信した場合の処理］
次に，図２２を参照して，ルータ１６ＤがＡＲＰ要求パケットの送信先端末である仮想マシン１３ＤからＡＲＰ応答パケットを受信した場合の処理について説明する。
【０１０６】
図２２において，ルータ１６ＤがＡＲＰ要求パケットの送信先端末である仮想マシン１３ＤからＡＲＰ応答パケットを受信した場合（Ｓ４１のＹＥＳ，Ｓ４２のＮＯ，Ｓ４３のＹＥＳ，Ｓ４４のＮＯ，Ｓ４６のＹＥＳ），ルータ１６Ｄのパケット送信部２１３は，受信したＡＲＰ要求パケットをトンネルに送信する（Ｓ４７）。具体的に，図２５の例においては，ルータ１６Ｄは，ルータ１６Ｄに設定されたトンネルＡ及びトンネルＣに，受信したＡＲＰ応答パケットを送信する。そして，トンネルＣに送信されたＡＲＰ応答パケットはルータ１６Ｆによって破棄される。
【０１０７】
［ルータ１６ＡがＡＲＰ応答パケットを受信した場合の処理］
次に，図２２及び図２４を参照して，ルータ１６ＤがトンネルＡを経由して送信したＡＲＰ応答パケットを，ルータ１６Ａのパケット受信部２１２が受信した場合の処理について説明する。
【０１０８】
図２２及び図２４において，ルータ１６ＤがトンネルＡに送信したＡＲＰ応答パケットを，ルータ１６Ａのパケット受信部２１２が受信した場合（Ｓ４１のＹＥＳ，Ｓ４２のＮＯ，Ｓ４３のＮＯ，Ｓ６１のＹＥＳ），ルータ１６Ａの経路情報記憶部２１１は，ＡＲＰ応答パケットに関する情報をルータ１６Ａの経路情報に記憶する（Ｓ６８）。
【０１０９】
図２６は，ルータ１６Ａの経路情報の初期値を説明する図である。具体的に，図２６の例におけるルータ１６Ａの１番目の経路情報には，「送信先端末のＩＰアドレス」に＊が記憶されており，トンネルＩＤに「トンネルＡ，トンネルＢ」が記憶されている。すなわち，図２６の例におけるルータ１６Ａの１番目の経路情報は，図２５の例において，ルータ６Ａと同一リージョンに配備された同一セグメント内の仮想マシンから受信したデータ通信パケットは，トンネルＡを経由してルータ１６Ｄに送信され，トンネルＢを経由してルータ１６Ｆに送信されることを示している。なお，ルータ１６Ａの２番目の経路情報における「ルータＩＤ」には，ルータ１６Ａと同じリージョン１８Ａに配備されたルータ１６Ｂのルータ名が記憶されている。
【０１１０】
図２７は，仮想マシン１３ＡからのＡＰＲ要求パケットを受信した仮想マシン１３Ｄが送信したＡＲＰ応答パケットを，ルータ１６Ａが受信した場合の例である。具体的に，図２５の例においては，ルータ１６Ａは，トンネルＡを経由して，仮想マシン１３Ａが仮想マシン１３Ｄに向けて送信したＡＰＲ要求パケットに対するＡＲＰ応答パケットを受信している。そのため，図２７に示すように，ルータ１６Ａは，ルータ１６Ａの経路情報（図２７の３番目の経路情報）に，「送信先端末のＩＰアドレス」としてＶＭ１３Ｄ−ＩＰを記憶し，「トンネルＩＤ」としてトンネルＡを記憶する。これにより，ルータ１６Ａは，同じリージョンである１８Ａに配備されたセグメントＢ内の端末（例えば，仮想マシン１３Ａ）から仮想マシン１３Ｄに向けた通信パケットを受信した場合，通信パケットをトンネルＢに送信することなくトンネルＡに送信する。
【０１１１】
すなわち，情報処理システムが３つ以上のリージョンに跨る形で構築されている場合において，経路情報管理処理を行う前にＡＲＰ要求処理を行い，送信元端末から送信先端末への通信経路を特定する。これにより，経路情報管理処理において，送信元端末が配備されたリージョン及び送信元端末のデフォルトルーティングが配備されたリージョン以外のリージョンに，通信パケットが送信されることを防止することができる。そのため，経路情報管理処理によって，送信元端末が配備されたリージョンと送信元端末のデフォルトルーティングが配備されたリージョンとの間の通信の効率化に加え，これらのリージョンとこれら以外のリージョンとの間における通信の効率かを図ることができる。
【０１１２】
［第２の実施の形態］
次に，第２の実施の形態について説明する。図２８から図３０は，第２の実施の形態における経路情報管理処理を説明する図である。なお，図２８及び図２９は，図１４に基づく図である。
【０１１３】
第２の実施の形態は，第１の実施の形態と異なり，例えば，データ通信パケットの送信元端末から送信先端末までのホップ数に基づいて経路情報を更新する。
【０１１４】
図２８は，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットがリージョン８Ａを経由して通信する場合を説明する図である。図２８において，仮想マシン３Ａが送信したデータ通信パケットは，（１）ルータ６Ａ，（２）ルータ６Ｂ，（３）ファイアーウォール５Ａ，（４）ルータ６Ｃ，（５）ルータ６Ｄ，（６）仮想マシン３Ｆ，の順に通信を行う。すなわち，各端末を通過する毎にホップ数をカウントするとした場合，図２８の例において，仮想マシン３Ａが送信したデータ通信パケットが仮想マシン３Ｆに送信されるまでのホップ数は６である。
【０１１５】
一方，図２９は，仮想マシン３Ａから仮想マシン３Ｆに向けたデータ通信パケットがリージョン８Ａを経由せずに通信する場合を説明する図である。図２９の例において，仮想マシン３Ａが送信したデータ通信パケットは，（１）ファイアーウォール５Ｂ，（２）仮想マシン３Ｆ，の順に通信を行う。すなわち，図２９の例において，仮想マシン３Ａが送信したデータ通信パケットが仮想マシン３Ｆに送信されるまでのホップ数は２である。すなわち，各ルータが経路情報を通信に要するホップ数に基づいて設定を行う場合，仮想マシン３Ａから仮想マシン３Ｆに送信するまでの経路は，図２９に示す経路になる。
【０１１６】
また，図３０は，図２９の場合におけるルータ６Ａの経路情報を説明する例である。図３０では，図１５等と異なり，「トンネルＩＤ」の項目が「トンネルＩＤ（端末のＩＰアドレス）」になっている。すなわち，図３０において，ルータ６Ａがトンネルにパケットを送信する場合には，「トンネルＩＤ（端末のＩＰアドレス）」の項目にそのトンネルに関する情報を記憶し，ルータ６Ａがトンネルにパケットを送信せずに，端末にパケットを送信する場合には，「トンネルＩＤ（端末のＩＰアドレス）」の項目にその端末に関する情報を記憶する。
【０１１７】
具体的に，図３０において，「送信先端末のＩＰアドレス」が仮想マシン３ＦのＩＰアドレスを示すＶＭ３Ｆ−ＩＰである経路情報（図３０の４番目の経路情報）は，トンネルの名称ではなく端末の名称であるＦＷ５Ｂが記憶されている。すなわち，ルータ６Ａが仮想マシン３Ａから仮想マシン３Ｆに向けてパケットを送信する場合は，トンネルを経由することなくファイアーウォール５Ｂを経由して通信を行う。また，図３０において，「送信先端末のＩＰアドレス」が仮想マシン３ＣのＩＰアドレスを示すＶＭ３Ｃ−ＩＰである経路情報（図３０の５番目の経路情報）は，トンネルの名称であるトンネルＡが記憶されている。
【０１１８】
このように，第２の実施の形態においては，同一リージョン内であって異なるセグメントに配備された端末間の通信を行う場合，例えば，各通信経路のホップ数を取得する。これにより，各ルータは，トンネルの設定を行うことなく経路情報を更新することができる。
【０１１９】
なお，第２の実施の形態において，各ルータは，例えば，パケットが各通信経路を通信した場合に要する通信時間を取得し，通信時間が最も短い通信経路をパケットの通信経路として経路情報を更新するものであってもよい。
【０１２０】
以上の実施の形態をまとめると，以下の付記のとおりである。
【０１２１】
（付記１）
第１のネットワーク装置を含む第１の情報処理システムの構成情報に基づいて構成され，前記第１のネットワーク装置が配備された第１の物理マシン群と，前記第１の情報処理システムに含まれない第２のネットワーク装置が配備された第２の物理マシン群とに跨る第２の情報処理システムにおける通信方法であって，
前記第２のネットワーク装置は，前記第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，該受信した通信パケットの識別情報を記憶し，
前記第２のネットワーク装置は，前記受信した通信パケットが第２のセグメントに含まれる第２の端末に向けた通信パケットである場合，前記第１の情報処理システムの構成情報に含まれる経路情報に基づき，前記第１の端末から受信した通信パケットを，前記第１のセグメントを経由して前記第１のネットワーク装置に送信し，
前記第２のネットワーク装置は，前記送信した通信パケットを，前記第２のセグメントを経由して前記第１のネットワーク装置から受信した場合，該受信した通信パケットを前記第２の端末に送信するとともに，前記記憶した通信パケットの識別情報に基づき，前記第１の端末から送信された通信パケットを前記第１のネットワーク装置を経由せずに通信するように前記経路情報を更新し，
前記第２のネットワーク装置は，前記第１の端末から前記第２の端末に向けた通信パケットまたは前記第２の端末から前記第１の端末に向けた通信パケットを受信した場合，前記更新した経路情報に基づいて通信を行う，
通信方法。
【０１２２】
（付記２）
付記１において，
前記通信パケットの識別情報を記憶する工程では，前記第２のネットワーク装置は，前記通信パケットの識別情報を，前記第１の端末が前記第２の端末または前記第１の物理マシン群に配備された端末に通信パケットを送信する場合に記憶する通信方法。
【０１２３】
（付記３）
付記１において，
前記通信パケットの識別情報を記憶する工程では，前記通信パケットに関する識別情報の記憶を，前記第１のセグメントの識別情報と関連付けた前記通信パケットに関する識別情報を前記経路情報に記憶することにより行う通信方法。
【０１２４】
（付記４）
付記１において，
前記第２のネットワーク装置は，前記第１のセグメントに配備された第３のネットワーク装置と，前記第２のセグメントに配備された第４のネットワーク装置とを含み，
前記通信パケットの識別情報を記憶する工程では，前記第３のネットワーク装置は，前記通信パケットの識別情報を前記第４のネットワーク装置に送信し，
前記通信パケットの識別情報を記憶する工程では，前記第４のネットワーク装置は，受信した前記通信パケットの識別情報を記憶する通信方法。
【０１２５】
（付記５）
付記４において，
前記経路情報を更新する工程では，前記第４のネットワーク装置は，前記第３のネットワーク装置が送信した通信パケットを，前記第１のネットワーク装置を経由して受信した場合，前記受信した通信パケットの識別情報に基づき経路情報を更新する通信方法。
【０１２６】
（付記６）
付記４において，
前記通信パケットの識別情報を記憶する工程では，前記第４のネットワーク装置が前記第３のネットワーク装置から前記通信パケットに関する識別情報を受信した後，前記第４のネットワーク装置が前記第１の物理マシン群を経由した前記通信パケットを受信する前に，所定時間が経過した場合，前記第４のネットワーク装置は，前記記憶した前記通信パケットに関する識別情報を消去する通信方法。
【０１２７】
（付記７）
付記４において，
前記経路情報を更新する工程では，前記第３及び第４のネットワーク装置は，前記通信パケットの識別情報に基づき，前記第３のネットワーク装置と前記第４のネットワーク装置との間に通信トンネルを作成し，前記経路情報の更新を，前記第１の端末から前記第２の端末に向けて送信された通信パケットが前記作成された通信トンネルを経由するように更新することにより行う通信方法。
【０１２８】
（付記８）
付記１において，
前記経路情報を更新する工程では，前記経路情報の更新を，前記第１の端末から送信された前記通信パケットが最短経路を経由して前記第２の端末に送信されるように更新することにより行う通信方法。
【０１２９】
（付記９）
付記８において，
前記経路情報を更新する工程では，前記第１の端末から前記第２の端末までの通信時間が最短である経路または前記第１の端末から前記第２の端末までのホップ数が最少である経路を前記最短経路とする通信方法。
【０１３０】
（付記１０）
付記１において，  
前記第２のネットワーク装置は，前記通信パケットを送信する工程の前に，前記第２のネットワーク装置から前記第２の端末に向けて通信を行うことにより，前記第１の端末から前記第２の端末に向けた通信経路を特定し，前記経路情報に記憶する通信方法。
【０１３１】
（付記１１）
付記１において，
前記通信パケットの識別情報を記憶する工程では，前記第２のネットワーク装置は，前記通信パケットに関する識別情報として，前記第１及び第２の端末のＩＰアドレスと，前記第１のセグメントの識別情報と，前記第１の端末のＭＡＣアドレスとを含む情報を記憶する通信方法。
【０１３２】
（付記１２）
第１のネットワーク装置を含む第１の情報処理システムの構成情報に基づいて構成され，前記第１のネットワーク装置が配備された第１の物理マシン群と，前記第１の情報処理システムに含まれない第２のネットワーク装置が配備された第２の物理マシン群とに跨る第２の情報処理システムにおける通信プログラムであって，
前記第２のネットワーク装置は，前記第２の物理マシン群に配備され第１のセグメントに含まれる第１の端末から送信された通信パケットを受信した際に，該受信した通信パケットの識別情報を記憶し，
前記第２のネットワーク装置は，前記受信した通信パケットが第２のセグメントに含まれる第２の端末に向けた通信パケットである場合，前記第１の情報処理システムの構成情報に含まれる経路情報に基づき，前記第１の端末から受信した通信パケットを，前記第１のセグメントを経由して前記第１のネットワーク装置に送信し，
前記第２のネットワーク装置は，前記送信した通信パケットを，前記第２のセグメントを経由して前記第１のネットワーク装置から受信した場合，該受信した通信パケットを前記第２の端末に送信するとともに，前記記憶した通信パケットの識別情報に基づき，前記第１の端末から送信された通信パケットを前記第１のネットワーク装置を経由せずに通信するように前記経路情報を更新し，
前記第２のネットワーク装置は，前記第１の端末から前記第２の端末に向けた通信パケットまたは前記第２の端末から前記第１の端末に向けた通信パケットを受信した場合，前記更新した経路情報に基づいて通信を行う，
処理をコンピュータに実行させる通信プログラム。
【符号の説明】
【０１３３】
１：管理サーバ              ２：ＶＭホスト
３：仮想マシン              ４：仮想化ソフトウエア
５Ａ：ネットワーク装置      ５Ｄ：ネットワーク装置
８Ａ：リージョン            ８Ｂ：リージョン
【図１】
2016019270.tif 000003
【図２】
2016019270.tif 000004
【図３】
2016019270.tif 000005
【図４】
2016019270.tif 000006
【図５】
2016019270.tif 000007
【図６】
2016019270.tif 000008
【図７】
2016019270.tif 000009
【図８】
2016019270.tif 000010
【図９】
2016019270.tif 000011
【図１０】
2016019270.tif 000012
【図１１】
2016019270.tif 000013
【図１２】
2016019270.tif 000014
【図１３】
2016019270.tif 000015
【図１４】
2016019270.tif 000016
【図１５】
2016019270.tif 000017
【図１６】
2016019270.tif 000018
【図１７】
2016019270.tif 000019
【図１８】
2016019270.tif 000020
【図１９】
2016019270.tif 000021
【図２０】
2016019270.tif 000022
【図２１】
2016019270.tif 000023
【図２２】
2016019270.tif 000024
【図２３】
2016019270.tif 000025
【図２４】
2016019270.tif 000026
【図２５】
2016019270.tif 000027
【図２６】
2016019270.tif 000028
【図２７】
2016019270.tif 000029
【図２８】
2016019270.tif 000030
【図２９】
2016019270.tif 000031
【図３０】
2016019270.tif 000032