(57)【要約】【課題】仮想ネットワークにおける仮想中継装置の接続関係を解析することを支援する。【解決手段】複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続された経路解析装置とを備えたネットワークシステムであって、経路解析装置は、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信する追跡パケット送信部と、追跡パケット送信部によって送信された追跡パケットに対する返信パケットを受信する返信パケット解析部と、を備え、仮想中継装置は、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信する追跡パケット処理部を備える。【選択図】図１
2015170884.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想中継装置によって仮想化された仮想ネットワークにおける前記仮想中継装置と、当該仮想中継装置に接続された経路解析装置とを備えたネットワークシステムであって、
前記経路解析装置は、
所定の追跡パケットを生成し、生成した追跡パケットを前記仮想中継装置に送信する追跡パケット送信部と、
前記追跡パケット送信部によって送信された前記追跡パケットに対する返信パケットを受信する返信パケット解析部と、
を備え、
前記仮想中継装置は、
前記経路解析装置から送信された前記追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを前記経路解析装置に送信する追跡パケット処理部
を備えることを特徴とするネットワークシステム。
【請求項２】
前記追跡パケットは、所定の識別子を含むＩＣＭＰパケットであり、
前記仮想中継装置の前記追跡パケット処理部は、
受信するパケットに前記識別子が含まれるか否かを判定し、前記識別子が含まれると判定した場合、前記追跡パケットを受信したとして前記返信パケットを生成する
ことを特徴とする請求項１に記載のネットワークシステム。
【請求項３】
前記追跡パケットには、当該追跡パケットを転送する回数を示す転送回数が含まれ、
前記仮想中継装置の前記追跡パケット処理部は、
前記経路解析装置から送信された前記追跡パケットを受信すると、当該追跡パケットに含まれる転送回数を１減算し、減算した結果が０でない場合に、当該追跡パケットを転送する
ことを特徴とする請求項１または請求項２に記載のネットワークシステム。
【請求項４】
前記仮想中継装置の前記追跡パケット処理部は、
前記識別情報として自装置のＭＡＣアドレスが含まれる前記返信パケットを生成する
ことを特徴とする請求項１から請求項３までのいずれか１項に記載のネットワークシステム。
【請求項５】
複数の仮想中継装置によって仮想化された仮想ネットワークにおける前記仮想中継装置であって、経路解析装置から送信された所定の追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを前記経路解析装置に送信する追跡パケット処理部を備える前記仮想中継装置に接続された前記経路解析装置であって、
前記追跡パケットを生成し、生成した追跡パケットを前記仮想中継装置に送信する追跡パケット送信部と、
前記追跡パケット送信部によって送信された前記追跡パケットに対する返信パケットを受信する返信パケット解析部と、
を備えることを特徴とする経路解析装置。
【請求項６】
複数の仮想中継装置によって仮想化された仮想ネットワークにおける前記仮想中継装置と、当該仮想中継装置に接続され、所定の追跡パケットを生成し、生成した追跡パケットを前記仮想中継装置に送信する追跡パケット送信部と、前記追跡パケット送信部によって送信された前記追跡パケットに対する返信パケットを受信する返信パケット解析部とを備える経路解析装置とを備えたネットワークシステムにおける前記仮想中継装置であって、
前記経路解析装置から送信された前記追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを前記経路解析装置に送信する追跡パケット処理部
を備えることを特徴とする仮想中継装置。
【請求項７】
複数の仮想中継装置によって仮想化された仮想ネットワークにおける前記仮想中継装置と、当該仮想中継装置に接続された経路解析装置とを備えたネットワークシステムの経路探索方法であって、
前記経路解析装置が、
所定の追跡パケットを生成し、生成した追跡パケットを前記仮想中継装置に送信するステップと、
前記仮想中継装置が、
前記経路解析装置から送信された前記追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを前記経路解析装置に送信するステップと、
前記経路解析装置が、
前記仮想中継装置から送信される返信パケットを受信するステップと、
を備えることを特徴とする経路探索方法。
【請求項８】
複数の仮想中継装置によって仮想化された仮想ネットワークにおける前記仮想中継装置と、当該仮想中継装置に接続された経路解析装置とを備えたネットワークシステムのコンピュータに、
前記経路解析装置が、
所定の追跡パケットを生成し、生成した追跡パケットを前記仮想中継装置に送信するステップと、
前記仮想中継装置が、
前記経路解析装置から送信された前記追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを前記経路解析装置に送信するステップと、
前記経路解析装置が、
前記仮想中継装置から送信される返信パケットを受信するステップと、
を実行させる経路探索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム、経路解析装置、仮想中継装置、経路探索方法、経路探索プログラムに関する。
【背景技術】
【０００２】
送信元であるコンピュータ装置から送信されたパケットを、複数の中継装置が中継して宛先のコンピュータ装置に転送するネットワークにおいて、パケットの転送経路を探索する技術が知られている（例えば、特許文献１参照）。
ところで、近年、このような中継装置の機能をソフトウェアにより実現した仮想スイッチによって仮想ネットワークを構成する技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１７２２９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような仮想ネットワークでは、パケットを中継するソフトウェアである仮想スイッチの接続関係と、その仮想スイッチが動作する物理的なコンピュータ装置である仮想中継装置の接続関係とは異なるものとなる。このような仮想ネットワーク上で、例えばＩＣＭＰ（Internet Control Message Protocol）パケットを送信して転送経路を探索しようとする場合、その経路探索によって解析できるのは仮想ネットワーク上の仮想スイッチや仮想マシンの仮想的な接続関係である。ただし、このような仮想ネットワークにおいても、物理的な仮想中継装置の接続関係を解析することが有用な場合もある。
【０００５】
本発明は、このような状況に鑑みてなされたもので、仮想ネットワークにおける仮想中継装置の物理的な接続関係を解析することを支援するネットワークシステム、経路解析装置、仮想中継装置、経路探索方法、経路探索プログラムを提供する。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明の一態様は、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続された経路解析装置とを備えたネットワークシステムであって、経路解析装置は、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信する追跡パケット送信部と、追跡パケット送信部によって送信された追跡パケットに対する返信パケットを受信する返信パケット解析部と、を備え、仮想中継装置は、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信する追跡パケット処理部を備えることを特徴とするネットワークシステムである。
【０００７】
また、本発明の一態様は、追跡パケットは、所定の識別子を含むＩＣＭＰパケットであり、仮想中継装置の追跡パケット処理部は、受信するパケットに識別子が含まれるか否かを判定し、識別子が含まれると判定した場合、追跡パケットを受信したとして返信パケットを生成することを特徴とする。
【０００８】
また、本発明の一態様は、追跡パケットには、追跡パケットを転送する回数を示す転送回数が含まれ、仮想中継装置の追跡パケット処理部は、経路解析装置から送信された追跡パケットを受信すると、追跡パケットに含まれる転送回数を１減算し、減算した結果が０でない場合に、追跡パケットを転送することを特徴とする。
【０００９】
また、本発明の一態様は、仮想中継装置の追跡パケット処理部は、識別情報として自装置のＭＡＣアドレスが含まれる返信パケットを生成することを特徴とする。
【００１０】
また、本発明の一態様は、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置であって、経路解析装置から送信された所定の追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信する追跡パケット処理部を備える仮想中継装置に接続された経路解析装置であって、追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信する追跡パケット送信部と、追跡パケット送信部によって送信された追跡パケットに対する返信パケットを受信する返信パケット解析部と、を備えることを特徴とする。
【００１１】
また、本発明の一態様は、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続され、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信する追跡パケット送信部と、追跡パケット送信部によって送信された追跡パケットに対する返信パケットを受信する返信パケット解析部とを備える経路解析装置とを備えたネットワークシステムにおける仮想中継装置であって、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信する追跡パケット処理部を備えることを特徴とする。
【００１２】
また、本発明の一態様は、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続された経路解析装置とを備えたネットワークシステムの経路探索方法であって、経路解析装置が、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信するステップと、仮想中継装置が、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信するステップと、経路解析装置が、仮想中継装置から送信される返信パケットを受信するステップと、を備えることを特徴とする経路探索方法である。
【００１３】
また、本発明の一態様は、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続された経路解析装置とを備えたネットワークシステムのコンピュータに、経路解析装置が、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信するステップと、仮想中継装置が、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信するステップと、経路解析装置が、仮想中継装置から送信される返信パケットを受信するステップと、を実行させる経路探索プログラムである。
【発明の効果】
【００１４】
以上説明したように、本発明によれば、複数の仮想中継装置によって仮想化された仮想ネットワークにおける仮想中継装置と、仮想中継装置に接続された経路解析装置とを備えたネットワークシステムであって、経路解析装置は、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置に送信する追跡パケット送信部と、追跡パケット送信部によって送信された追跡パケットに対する返信パケットを受信する返信パケット解析部と、を備え、仮想中継装置は、経路解析装置から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置に送信する追跡パケット処理部を備えるようにしたので、仮想ネットワークにおける仮想中継装置の接続関係を解析することを支援することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態によるネットワークシステムの構成例を示すブロック図である。
【図２】従来のネットワークシステムによる経路探索処理の第１の例を示す図である。
【図３】従来のネットワークシステムによる経路探索処理の第２の例を示す図である。
【図４】従来のネットワークシステムによる経路探索処理の第３の例を示す図である。
【図５】本発明の一実施形態による追跡パケットの例を示す図である。
【図６】本発明の一実施形態による経路解析装置の動作例を示すフローチャートである。
【図７】本発明の一実施形態による仮想中継装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態について、図面を参照して説明する。
図１は、本実施形態によるネットワークシステム１の構成例を示すブロック図である。本実施形態のネットワークシステム１は、経路解析装置１０と、経路解析装置２０−１と、中継装置３０と、仮想中継装置２０−２と、仮想中継装置２０−３と、ホストコンピュータ装置４０とのコンピュータ装置を備えている。経路解析装置２０−１と、経路解析装置２０−２と、経路解析装置２０−３とは同様の構成であるので、特に区別しない場合には「−１」、「−２」等を省略して仮想中継装置２０として説明する。
【００１７】
ここで、仮想中継装置２０はＬ（レイヤー）２ネットワークによる仮想ネットワークを構成する仮想スイッチを備えたコンピュータ装置であり、中継装置３０は、仮想ネットワークではない従来通りの転送処理を行うコンピュータ装置である。ここで、図面を参照して、本実施形態のネットワークシステム１による経路探索処理と、従来のネットワークによる経路探索処理との相違点を説明する。
【００１８】
図２は、従来のネットワークシステムによる経路探索処理の第１の例を示す図である。ここでは、経路解析装置１１０とホストコンピュータ装置１４０とが、中継装置１３０−１と、中継装置１３０−２と、中継装置１３０−３とによって構成されるネットワークを介して接続されている。経路解析装置１１０は、ホストコンピュータ装置１４０までの経路を探索するために、ホストコンピュータ装置１４０を宛先としたＩＣＭＰ要求パケットを送信する。
【００１９】
まず、１回目の送信として、経路解析装置１１０が、ホストコンピュータ装置１４０を宛先として、ＴＴＬ（Time to live）が１であるＩＣＭＰ要求パケットを送信すると、中継装置１３０−１が、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信する。中継装置１３０−１は、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２０】
経路解析装置１１０は、中継装置１３０−１から送信されたＩＣＭＰ返信パケットを受信すると、２回目の送信として、ホストコンピュータ装置１４０を宛先として、ＴＴＬが２であるＩＣＭＰ要求パケットを送信する。中継装置１３０−１が、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信し、ＴＴＬを１減算して中継装置１３０−２に転送する。中継装置１３０−２が、中継装置１３０−１から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２１】
経路解析装置１１０は、中継装置１３０−２から送信されたＩＣＭＰ返信パケットを受信すると、３回目の送信として、ホストコンピュータ装置１４０を宛先として、ＴＴＬが３であるＩＣＭＰ要求パケットを送信する。中継装置１３０−１が、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信し、ＴＴＬを１減算して中継装置１３０−２に転送する。中継装置１３０−２が、中継装置１３０−１から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算して中継装置１３０−３に転送する。中継装置１３０−３が、中継装置１３０−２から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２２】
経路解析装置１１０は、中継装置１３０−３から送信されたＩＣＭＰ返信パケットを受信すると、４回目の送信として、ホストコンピュータ装置１４０を宛先として、ＴＴＬが４であるＩＣＭＰ要求パケットを送信する。中継装置１３０−１が、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信し、ＴＴＬを１減算して中継装置１３０−２に転送する。中継装置１３０−２が、中継装置１３０−１から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算して中継装置１３０−３に転送する。中継装置１３０−３が、中継装置１３０−２から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算してホストコンピュータ装置１４０に転送する。ホストコンピュータ装置１４０が、中継装置１３０−３から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。このようにして、経路解析装置１１０は、自装置からホストコンピュータ装置１４０までの転送経路上に存在する各装置からのＩＣＭＰ返信パケットを受信することができる。経路解析装置１１０がこのように受信したＩＣＭＰ返信パケットを解析して表示することで、ネットワークの管理者等は、経路解析装置１１０からホストコンピュータ装置１４０までパケットが転送される経路を知ることができる。
【００２３】
図３は、従来のネットワークシステムによる経路探索処理の第２の例を示す図である。この例では、経路解析装置１１０とホストコンピュータ装置１４０とは、仮想中継装置１２０−１と、仮想中継装置１２０−２と、仮想中継装置１２０−３とによって構成されるＬ２ネットワークによる仮想ネットワークを介して接続されている。経路解析装置１１０は、ホストコンピュータ装置１４０までの経路を探索するために、ホストコンピュータ装置１４０を宛先としたＩＣＭＰ要求パケットを送信する。
【００２４】
ここで、仮想中継装置１２０−１と、仮想中継装置１２０−２と、仮想中継装置１２０−３とは、Ｌ２ネットワークを構成しているため、仮想的に単一のＬ２ネットワークに収容されているものとみなされる。仮想中継装置１２０−１と、仮想中継装置１２０−２と、仮想中継装置１２０−３とは、ホストコンピュータ装置１４０を宛先としたＩＣＭＰ要求パケットを転送するものの、ＩＣＭＰはＬ３のプロトコルであるため、Ｌ３であるＩＣＭＰ要求パケットに対する返信パケットは送信せず、ＩＰヘッダに記述されているＴＴＬを減算する処理も行わない。このため、ホストコンピュータ装置１４０のみが、ＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２５】
すなわち、このような仮想ネットワークでは、経路解析装置１１０からホストコンピュータ装置１４０までの転送経路上に存在する各装置からはＩＣＭＰ返信パケットが送信されず、ネットワークの管理者等は、経路解析装置１１０からホストコンピュータ装置１４０までパケットが転送される物理的な経路を知ることができない。
【００２６】
図４は、従来のネットワークシステムによる経路探索処理の第３の例を示す図である。この例では、経路解析装置１１０とホストコンピュータ装置１４０とは、仮想中継装置１２０−４と、中継装置１３０−４と、仮想中継装置１２０−５とを介して接続されている。すなわち、経路解析装置１１０とホストコンピュータ装置１４０とは、仮想ネットワークと従来のネットワークとを介して接続されている。
【００２７】
この場合、経路解析装置１１０が、１回目の送信として、ホストコンピュータ装置１４０を宛先として、ＴＴＬが１であるＩＣＭＰ要求パケットを送信すると、仮想中継装置１２０−４は、Ｌ３であるＩＣＭＰ要求パケットに対する返信パケットは送信せず、ＩＰヘッダに記述されているＴＴＬを減算する処理も行わずに、ＩＣＭＰ要求パケットを中継装置１３０−４に転送する。中継装置１３０−４は、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２８】
経路解析装置１１０は、中継装置１３０−４から送信されたＩＣＭＰ返信パケットを受信すると、２回目の送信として、ホストコンピュータ装置１４０を宛先として、ＴＴＬが２であるＩＣＭＰ要求パケットを送信する。仮想中継装置１２０−４は、ＩＣＭＰ要求パケットに対する返信パケットは送信せず、ＩＰヘッダに記述されているＴＴＬを減算する処理も行わずに、ＩＣＭＰ要求パケットを中継装置１３０−４に転送する。中継装置１３０−４は、経路解析装置１１０から送信されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＩＣＭＰ要求パケットを仮想中継装置１２０−５に転送する。仮想中継装置１２０−５は、ＩＣＭＰ要求パケットに対する返信パケットは送信せず、ＩＰヘッダに記述されているＴＴＬを減算する処理も行わずに、ＩＣＭＰ要求パケットをホストコンピュータ装置１４０に転送する。ホストコンピュータ装置１４０が、仮想中継装置１２０−５から転送されたＩＣＭＰ要求パケットを受信すると、ＴＴＬを１減算し、ＴＴＬが０になると、経路解析装置１１０にＩＣＭＰ返信パケットを送信する。
【００２９】
すなわち、このような仮想ネットワークと従来のネットワークとが接続されたネットワークにおいても、経路解析装置１１０からホストコンピュータ装置１４０までの転送経路上に存在する各装置からはＩＣＭＰ返信パケットが送信されないため、ネットワークの管理者等は、経路解析装置１１０からホストコンピュータ装置１４０までパケットが転送される経路を知ることができない。
【００３０】
そこで、本実施形態のネットワークシステム１は、このような仮想ネットワーク、または仮想ネットワークと従来のネットワークとが接続されたネットワークにおいても、経路解析装置からホストコンピュータ装置までの転送経路上に存在する各装置からＩＣＭＰ返信パケットを送信することで、仮想ネットワークを含むネットワークにおけるパケットの転送経路上の各コンピュータ装置の物理的な接続関係を解析することを支援する。以下、このようなネットワークシステム１の構成について、詳細に説明する。
【００３１】
図１に戻り、経路解析装置１０は、仮想ネットワークを構成する仮想中継装置２０に接続され、仮想ネットワークを含むネットワークを介して接続されたホストコンピュータ装置４０への経路探索を行うコンピュータ装置である。経路解析装置１０は、入力部１１と、制御部１２とを備えている。
入力部１１は、キーボードやマウス等の入力デバイスであり、ユーザからの入力を受け付ける。例えば、入力部１１には、経路探索の開始指示が入力される。経路探索の開始指示は、例えば、ｔｒａｃｅｒｏｕｔｅコマンドやｐｉｎｇコマンドである。
【００３２】
制御部１２は、経路解析装置１０が備える各部を制御する。制御部１２は、追跡パケット送信部１３と、返信パケット解析部１４とを備えている。
追跡パケット送信部１３は、所定の追跡パケットを生成し、生成した追跡パケットを仮想中継装置２０−１に送信する。この追跡パケットは、例えば、所定の識別子を含むＩＣＭＰパケットである。また、追跡パケットには、追跡パケットを転送する回数を示す転送回数が含まれる。
【００３３】
図５は、追跡パケット送信部１３が生成する追跡パケットの例を示す図である。追跡パケットは、ＭＡＣ（Media Access Control）ヘッダと、ＩＰ（Intellectual Property）ヘッダと、ＩＣＭＰヘッダと、データとを含む。ＩＰヘッダには、転送回数を示す情報であるＴＴＬが含まれる。ＴＴＬは、そのパケットを転送する回数を示す情報である。例えば、追跡パケット送信部１３は、ＴＴＬを１から開始し、１ずつ加算ながら、ＴＴＬがパケットを転送する上限の回数である上限転送回数（上限ＴＴＬ）になるまで複数回、追跡パケットを生成して送信する。上限ＴＴＬは、例えば所定の初期値（例えば、３０）とすることができるが、ユーザから入力される上限ＴＴＬを適用することもできる。
【００３４】
ＩＣＭＰヘッダには、ＴＹＰＥと、ＣＯＤＥと、チェックサムと、ＩＤと、シーケンス番号とのフィールドが含まれる。ＴＹＰＥは、ＩＣＭＰの種類を示す情報であり、例えば８であればエコー要求（ｅｃｈｏ  ｒｅｑｕｅｓｔ）であることを示し、０であればエコー応答（ｅｃｈｏ  ｒｅｐｌｙ）であることを示す。本実施形態では、ＴＹＰＥに８が記述されたＩＣＭＰパケットをＩＣＭＰ要求パケットといい、ＴＹＰＥに０が記述されたＩＣＭＰパケットをＩＣＭＰ返信パケットという。ＩＤには、そのＩＣＭＰパケットの送信元において自由に利用できるフィールドである。そこで、本実施形態では、このＩＤのフィールドに、このパケットが仮想ネットワークにおいて経路探索を行うためのパケットであることを示す情報を所定の識別子として記述する。
【００３５】
また、追跡パケット送信部１３は、このように生成した追跡パケットを、ユーザから入力された宛先に送信する。本実施形態では、宛先としてホストコンピュータ装置４０のＩＰアドレスが入力された例を説明する。追跡パケット送信部１３は、生成した追跡パケットを、仮想中継装置２０−１に送信する。パケットを受信した各装置は、受信したパケットに所定の識別子が含まれているか否かを判定することにより、そのパケットが仮想ネットワークにおいて経路探索を行うためのパケットであるか否かを判定することができ、所定の識別子が含まれている場合には、所定の追跡パケット処理を行う。
【００３６】
返信パケット解析部１４は、追跡パケット送信部１３によって送信された追跡パケットに対する返信パケットを受信する。例えば、返信パケット解析部１４は、追跡パケットの宛先であるホストコンピュータ装置４０との間の経路において追跡パケットを転送する各装置である仮想中継装置２０−１と、中継装置３０と、仮想中継装置２０−２と、仮想中継装置２０−３とから送信される返信パケットを受信する。返信パケットは、ＩＣＭＰ返信パケットである。
【００３７】
返信パケット解析部１４は、返信パケットに含まれる、返信元の装置を識別する返信元識別情報を、自装置が備えるディスプレイ等の出力部に表示させる。返信元識別情報は、例えば、返信元のＭＡＣアドレスまたはＩＰアドレスまたはその双方である。ここで、経路上の仮想中継装置２０の仮想スイッチはＩＰアドレスを持たないため、ＭＡＣアドレスを表示させる。ＩＰアドレスを持つ中継装置３０については、ＩＰアドレスとＭＡＣアドレスとを持つため、ＩＰアドレスとＭＡＣアドレスとのいずれかまたは双方を表示させる。また、返信パケット解析部１４は、追跡パケット送信部１３が追跡パケットを送信した時点から、追跡パケット送信部１３が送信した追跡パケットに対する返信パケットを受信する時点までの経過時間を計測し、計測した経過時間を、返信元識別情報とともに表示させる。
【００３８】
仮想中継装置２０は、複数の仮想中継装置２０によってＬ２ネットワークによる仮想ネットワークを構成する仮想スイッチ２１を備えたコンピュータ装置である。ここは、簡単のため、１台の仮想中継装置２０が１つの仮想スイッチ２１を備える例を示しているが、例えば、仮想中継装置２０には複数の仮想マシンが起動されており、これらの複数の仮想マシンを相互に接続する複数の仮想スイッチ２１を備えるようなものであってもよい。
【００３９】
仮想スイッチ２１は、Ｌ２ネットワークによる仮想ネットワークを構成するソフトウェアである。仮想スイッチ２１は、ＳＤＮ（Software Defined Networking）とよばれるようなネットワーク仮想化技術によってネットワーク機器をソフトウェア制御することで、従来のＯＳＩ（Open Systems Interconnection）参照モデルのような階層の概念に捉われない柔軟なネットワーク構成を実現する仮想的なスイッチ（ＳＤＮスイッチ）である。仮想スイッチ２１は、Ｌ２（データリンク層）、Ｌ３（ネットワーク層）、Ｌ７（アプリケーション層）までを統合して処理することが可能である。例えば、ひとつのパケットの中で、Ｌ２やＬ３に属するヘッダ部分と、Ｌ７のデータを含むペイロード部分とを同時に書き換える処理や、パケットの宛先を変更することなども可能である。仮想スイッチ２１は、追跡パケット処理部２２を備えている。
【００４０】
追跡パケット処理部２２は、経路解析装置１０から送信された追跡パケットを受信すると、自装置を物理的に一意に特定する識別情報が含まれる返信パケットを生成し、生成した返信パケットを経路解析装置１０に送信する。自装置を物理的に一意に特定する識別情報は、例えば、自装置のＭＡＣアドレスである。この識別情報は、返信元識別情報であり、例えば、返信パケットのＤＡＴＡフィールドに記述することができる。ここで、追跡パケット処理部２２は、受信するパケットに所定の識別子が含まれるか否かを判定し、所定の識別子が含まれると判定した場合、追跡パケットを受信したとして返信パケットを生成する。返信パケットは、ＩＣＭＰ返信パケットである。
【００４１】
ここで、追跡パケット処理部２２は、経路解析装置１０から送信された追跡パケットを受信すると、その追跡パケットに含まれる転送回数を１減算し、減算した結果が０でない場合に、追跡パケットを転送し、減算した結果が０である場合に、返信パケットを生成し、生成した返信パケットを経路解析装置１０に送信する。本実施形態の例では、追跡パケットには転送回数であるＴＴＬが記述されている。追跡パケット処理部２２は、追跡パケットに含まれるＴＴＬを１減算し、減算した結果が０でなければ、転送回数が所定の上限転送回数より小さいと判定し、追跡パケットを宛先に向けて転送する。一方、減算した結果が０であれば、転送回数が所定の上限転送回数より小さくない（転送回数が所定の上限転送回数に到達した）と判定し、返信パケットを生成して送信する。
ここで、例えば、ＯｐｅｎＦｌｏｗ（登録商標）によってＳＤＮを実現する場合、フローテーブルに上述したような処理を行うためのヘッダフィールドとアクションとを定義しておき、追跡パケット処理部２２は、このフローテーブルに基づいて上述したような処理を行うことができる。
【００４２】
中継装置３０は、仮想ネットワークではないパケット転送を行うコンピュータ装置である。例えば、中継装置３０は、Ｌ３スイッチやルータである。中継装置３０は、ＩＣＭＰ要求パケットを受信すると、所定のＩＣＭＰ処理を行う。すなわち、中継装置３０は、ＩＣＭＰ要求パケットに含まれるＴＴＬを減算してＴＴＬが０になればＩＣＭＰ返信パケットを生成してＩＣＭＰ要求パケットの送信元に返信する。ＴＴＬが０にならなければ、ＩＣＭＰ要求パケットを宛先に向けて転送する。このように、本実施形態による追跡パケットはＩＣＭＰによって定められた形式に準拠するため、追跡パケットを受信した中継装置３０は、通常のＩＣＭＰ処理により返信、または転送することができる。このため、経路解析装置１０が、仮想ネットワークと従来のネットワークとが含まれるネットワークに向けて追跡パケットを送信した場合、仮想ネットワーク上の仮想中継装置２０は所定の識別子に基づいて追跡パケットを返信または転送する処理を行うことができ、従来のネットワーク上の中継装置３０は通常のＩＣＭＰ処理により返信または転送することができる。
【００４３】
ホストコンピュータ装置４０は、経路解析装置１０から送信される追跡パケットの宛先のコンピュータ装置である。ホストコンピュータ装置４０は、中継装置３０と同様に、ＩＣＭＰ要求パケットを受信すると、所定のＩＣＭＰ処理を行う。追跡パケットはＩＣＭＰに準拠するため、ホストコンピュータ装置４０は、経路解析装置１０から送信される追跡パケットに対して通常のＩＣＭＰ処理を行うことで、ＩＣＭＰ返信パケットを返信することができる。
【００４４】
次に、図面を参照して、本実施形態によるネットワークシステム１の動作例を説明する。図６は、本実施形態による経路解析装置１０の動作例を示すフローチャートである。
経路解析装置１０の入力部１１は、ユーザから経路探索の開始指示の入力を受け付ける。ここでは、宛先をホストコンピュータ装置４０とし、上限ＴＴＬが指定されなかった例を説明する。追跡パケット送信部１３は、初期値（例えば、３０）である上限ＴＴＬを自身の記憶領域に記憶させる。
【００４５】
追跡パケット送信部１３は、ＴＴＬを１として（ステップＳ１）、追跡パケットを生成し、宛先に向けて送信する（ステップＳ２）。追跡パケット送信部１３が送信した追跡パケットに対する返信パケットが送信されてくると（ステップＳ３：Ｙｅｓ）、返信パケット解析部１４は、送信された返信パケットを受信する。返信パケット解析部１４は、追跡パケット送信部１３が追跡パケットを送信してから返信パケットを受信するまでの経過時間を表示部に表示させ（ステップＳ４）、返信元識別情報を含む返信パケットの情報を表示部に表示させる（ステップＳ５）。
【００４６】
返信パケット解析部１４は、返信パケットに含まれる返信元識別情報が宛先であるか否かを判定し、返信元識別情報が宛先であると判定すると（ステップＳ６：Ｙｅｓ）、処理を終了する。返信元識別情報が宛先でないと判定すると（ステップＳ６：Ｎｏ）、ステップＳ８に進む。ステップＳ３において、追跡パケット送信部１３が送信した追跡パケットに対する返信パケットが送信されてこなければ（ステップＳ３：Ｎｏ）、返信パケット解析部１４は、タイムアウトを表示部に表示させ（ステップＳ７）、ステップＳ８に進む。追跡パケット送信部１３は、ステップＳ２において送信した追跡パケットのＴＴＬが上限ＴＴＬ未満でなければ（ステップＳ８：Ｎｏ）、処理を終了する。ステップＳ２において送信した追跡パケットのＴＴＬが上限ＴＴＬ未満であれば（ステップＳ８：Ｙｅｓ）、ＴＴＬに１を加算して（ステップＳ９）、ステップＳ２に戻り、加算したＴＴＬを記述した追跡パケットを生成して宛先に送信し、以下の処理を繰り返す。
【００４７】
図７は、本実施形態による仮想中継装置２０の動作例を示すフローチャートである。
仮想中継装置２０の追跡パケット処理部２２は、自身に送信されてくるパケットを受信すると（ステップＳ１１）、受信したパケットに所定の識別子が含まれるか否かを判定する。追跡パケット処理部２２は、受信したパケットに所定の識別子が含まれないと判定すると、そのパケットは追跡パケットではないとして（ステップＳ１２：Ｎｏ）、通常のパケット処理を行う（ステップＳ１３）。ステップＳ１２において、追跡パケット処理部２２が、受信したパケットに所定の識別子が含まれると判定すると、そのパケットは追跡パケットであるとして（ステップＳ１２：Ｙｅｓ）、追跡パケットに記述されたＴＴＬを１減算する（ステップＳ１４）。
【００４８】
追跡パケット処理部２２は、減算した結果のＴＴＬが０でなければ（ステップＳ１５：Ｎｏ）、ステップＳ１３に進む。この場合、ステップＳ１３において行われる通常のパケット処理とは、その追跡パケットを宛先に向けて転送する処理である。ステップＳ１５において、減算した結果のＴＴＬが０であれば（ステップＳ１５：Ｙｅｓ）、追跡パケット処理部２２は、返信パケットを生成し、生成した返信パケットを追跡パケットの送信元に返信し（ステップＳ１６）、ステップＳ１１に戻る。
【００４９】
以上説明したように、本実施形態によれば、Ｌ２ネットワークである仮想ネットワークを構成する仮想中継装置２０の仮想スイッチ２１が、経路解析装置１０から送信される追跡パケットに対して、自装置を物理的に特定する識別情報を含む返信パケットを送信するようにしたので、従来のネットワークにおいてはＬ３ネットワークにおいてのみ動作するＩＣＭＰに基づく処理と同様の経路探索を、Ｌ２ネットワークである仮想ネットワーク上において実行することができる。これにより、仮想ネットワークを構成する各仮想スイッチ２１の物理的な接続関係の解析を支援することが可能となる。また、仮想ネットワークにおけるパケットの到達確認、転送経路の検証、パケットのループなどを検出することができ、例えば、仮想ネットワークを含むネットワークにおける通信に何らかの不具合が発生している場合に、その原因の解析や対策を支援することができる。
【００５０】
これにより、例えば、仮想ネットワークと従来のネットワークとを含むネットワークにおいて、仮想ネットワークと従来のネットワークとの接続点において従来のネットワークと同様のインタフェースを構築する必要があり、このようなネットワークの接続性を検証することが可能となる。
【００５１】
また、仮想ネットワークにおいては、仮想マシンに対してＩＰアドレスが割り振られているため、例えば、仮想マシンが物理マシン間を移動する（ライブマイグレーション）場合には、仮想マシンとともにＩＰアドレスも移動することになる。このため、このような仮想ネットワークにおいて、物理マシンを原因として何らかの通信の不具合が発生している場合、パケットを転送する仮想マシンのＩＰアドレスに基づいて解析を行うよりも、パケットを転送する物理マシンの経路を特定する方が有用なことがある。また、そもそも、仮想スイッチの挙動に不具合が発生しているのか、物理マシンの挙動に不具合が発生しているのかを切り分けるためにも、パケットを転送する物理マシンの経路を特定することは有用である。
【００５２】
なお、本実施形態では、経路解析装置１０が直接に仮想中継装置２０−１に接続されている例を説明したが、経路解析装置１０と、追跡パケットの宛先であるホストコンピュータ装置４０との間の経路上に仮想ネットワークが含まれるものであればよい。すなわち、例えば、経路解析装置１０が直接に接続されるのは中継装置３０であり、その中継装置３０のネットワークの先に仮想ネットワークが接続され、その先にホストコンピュータ装置４０が接続されるような環境であっても、本実施形態と同様の経路解析装置１０や仮想中継装置２０を適用することにより、経路探索処理を行うことができる。
【００５３】
また、上述した経路解析装置１０の制御部１２が備える追跡パケット送信部１３と返信パケット解析部１４とは、物理マシンである経路解析装置１０のコンピュータリソースを仮想化して起動された仮想マシンが備えるものであってもよい。
また、本実施形態では、追跡パケットにおけるＩＣＭＰヘッダのＩＤフィールドに、そのパケットが仮想ネットワークにおいて経路探索を行うためのパケットであることを示す所定の識別子を記述する例を示したが、パケットにおける他のフィールドに、そのパケットが仮想ネットワークにおいて経路探索を行うためのパケットであることを示す所定の識別子を記述することもできる。例えば、データ（ペイロード）フィールドに、所定の識別子を記述しておくことも可能である。
【００５４】
また、上述の例では、パケットの転送範囲を定める転送回数は、追跡パケットを転送する回数を示す、いわゆるＴＴＬであるとして説明したが、転送回数は、パケットの転送範囲を制御できる情報であればよい。例えば、追跡パケットには、追跡パケットが転送された回数を示す転送回数を含ませておき、追跡パケット処理部２２は、受信した追跡パケットに含まれる転送回数を１加算し、転送回数が所定の上限転送回数より小さい場合、追跡パケットを転送するようにしてもよい。この場合、例えば、追跡パケット処理部２２は、所定の上限転送回数を予め自身の記憶領域に記憶させておくことができる。
【００５５】
また、上述の例では、仮想中継装置２０の追跡パケット処理部２２が返信パケットに含ませる返信元識別情報としてＭＡＣアドレスを適用したが、自装置を物理的に一意に特定する識別情報であれば、他の情報を適用してもよい。例えば、仮想中継装置２０（仮想スイッチ２１）にＩＰアドレスが割り振られており、そのＩＰアドレスによって仮想中継装置２０を特定できる場合にはそのＩＰアドレスを適用してもよいし、あるいは製造番号などを適用することもできる。
【００５６】
また、本実施形態では、経路解析装置１０が送信する追跡パケットの宛先はホストコンピュータ装置４０であることとしたが、経路解析装置１０が送信する追跡パケットの宛先は、仮想ネットワークを含むネットワークに接続されたどのようなコンピュータ装置、ネットワーク機器でもよい。
【００５７】
また、上述した実施形態では、仮想スイッチ２１がＳＤＮスイッチである例を説明したが、仮想スイッチ２１がフローテーブルに記述されたヘッダフィールドやアクションに基づいて動作する際には、複数のＳＤＮスイッチに対するＳＤＮコントローラと通信しながら、制御することができる。
【００５８】
また、本実施形態では、仮想スイッチ２１が追跡パケット処理部２２を備えることとし、仮想スイッチ２１の機能として追跡パケット処理を行う例を示したが、仮想スイッチ２１とは独立して、仮想中継装置２０が追跡パケット処理部２２を備えるようにしてもよい。
【００５９】
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより経路探索を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやＷＡＮ、ＬＡＮ、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００６０】
また、上述した機能の一部または全部を、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はＬＳＩに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【符号の説明】
【００６１】
１  ネットワークシステム
１０  経路解析装置
１１  入力部
１２  制御部
１３  追跡パケット送信部
１４  返信パケット解析部
２０  仮想中継装置
２１  仮想スイッチ
２２  追跡パケット処理部
３０  中継装置
４０  ホストコンピュータ装置
【図１】
2015170884.tif 000003
【図２】
2015170884.tif 000004
【図３】
2015170884.tif 000005
【図４】
2015170884.tif 000006
【図５】
2015170884.tif 000007
【図６】
2015170884.tif 000008
【図７】
2015170884.tif 000009