(57)【要約】【課題】少ない検索で障害箇所を特定する。【解決手段】仮想マシン１０６間のネットワークに関する設定情報を、仮想マシン１０６が構築された情報処理装置１００の各々から収集して記憶した記憶部２２を参照して、特定の仮想マシン１０６Ａを開始側とする往路の設定情報に基づいて、開始側の復路の設定情報を検索し、検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する。【選択図】図２
2018026734.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、
検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する
ことを含む処理を実行させるための障害箇所特定プログラム。
【請求項２】
前記設定情報は、前記情報処理装置において、該情報処理装置上の仮想マシンによるデータ転送を実施する転送部での転送処理を制御する制御部により設定され、出力される請求項１に記載の障害箇所特定プログラム。
【請求項３】
前記一連の通信を識別可能な情報は、ＴＣＰセッションに関する情報、及び前記転送部に対する前記仮想マシンの接続ポートの情報である請求項２に記載の障害箇所特定プログラム。
【請求項４】
前記予め定義されたパターンは、検索条件に合致する設定情報の有無、検索条件に合致する設定情報がデータの破棄を示すか否か、データの破棄がルールに基づく破棄か否か、及び受理側からのデータの送信先が開始側と一致するか否かの情報を含む請求項１〜請求項３のいずれか１項に記載の障害箇所特定プログラム。
【請求項５】
前記設定情報は、データの送受信する仮想マシンのアドレス、及び該アドレスの変換情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記開始側の往路の設定情報に含まれるアドレスを、前記変換情報に基づいて変換したアドレスを用いて検索する
請求項１〜請求項４のいずれか１項に記載の障害箇所特定プログラム。
【請求項６】
前記設定情報は、ネットワークの仮想通信経路の識別情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記仮想通信経路の識別情報を検索条件に加える
請求項１〜請求項５のいずれか１項に記載の障害箇所特定プログラム。
【請求項７】
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索する検索部と、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する特定部と、
を含む障害箇所特定装置。
【請求項８】
コンピュータに、
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、
検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する
ことを含む処理を実行させるための障害箇所特定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、障害箇所特定プログラム、障害箇所特定装置、及び障害箇所特定方法に関する。
【背景技術】
【０００２】
従来、通信に関するログ情報を用いて、通信に関する障害発生箇所の特定や原因を解析する技術が存在する。
【０００３】
例えば、第１の装置群と第２の装置群とが接続されたシステムにおける検索装置が実行する検索方法が提案されている。この検索方法では、第１の装置群における装置間で実行された通信の送信元及び送信先を特定する第１の履歴と、第２の装置群における装置間で実行された通信の送信元及び送信先を特定する第２の履歴とが取得される。そして、第１の履歴と第２の履歴とを比較し、比較結果に基づき、同機能の装置である第１の装置群における装置と第２の装置群における装置とを検索する処理が実行される。
【０００４】
また、新種のワーム発生等のインシデントを効率良く検出するためのパケット解析システムが提案されている。このシステムでは、ネットワークを介して取得したログ情報の検索結果を表示させると共に、検索条件候補リストを併せて表示させ、この検索条件候補リストの操作により検索条件を自動設定して再検索させる。
【０００５】
また、例えば、Transmission Control Protocol（ＴＣＰ）セッション（通信を行う単位）毎のアドレス変換やロードバランサを実現するために、オーバレイネットワークで、ＴＣＰセッション毎にネットワークを設定する技術が存在する。ＴＣＰセッションは、アプリケーションが通信をする毎に動的に作られるため、オーバレイネットワークも連動して動的に設定される。
【０００６】
既存のネットワーク技術では、ハードウェア機器でネットワークを構築する際にネットワークの設定が行われるため、ネットワークの設定が正常か否かの検査は、ネットワークの構築の際に行えばよい。しかし、上述のオーバレイネットワークの例のように、動的にネットワークの設定が行われる場合には、ネットワークの設定が行われる都度、ネットワークの設定が正常に行われたか否かを検査することが必要になる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５−９１０４９号公報
【特許文献２】特開２００６−１５７３５５号公報
【非特許文献】
【０００８】
【非特許文献１】"MidoNet Reference Architecture 5.1-rev1", 2016-04-19, Midokura SARL
【発明の概要】
【発明が解決しようとする課題】
【０００９】
例えば、上述のオーバレイネットワークでは、ネットワークが設定される仮想マシンが構築された各物理マシンから、ネットワークの設定を行った際の設定情報をログとして出力させる機能が存在する。通信の障害が発生した場合、例えば、障害に対処するオペレータが、障害が発生した通信を行った仮想マシンが存在する物理マシンを特定し、その物理マシンから出力された設定情報のログファイルを取得する。そして、オペレータが、取得したログファイルの中から、通信に使用された仮想ネットワークのＩＰアドレス、ＴＣＰポート、仮想マシンの情報を元に、障害が発生した通信の設定情報を検索する。そして、オペレータは、検索された設定情報に基づいて、障害を解析することが想定される。
【００１０】
しかし、通信が複数の物理マシンを経由する場合には、通信の経由を辿りながら、各物理マシンから出力されたログファイルを取得し、必要な設定情報を検索する必要があるため、障害箇所を特定するために行う設定情報の検索数が多くなる。また、設定ミスなどによりデータが想定外の機器に転送されている場合などには、通信の経由を辿りながらの設定情報の検索が困難になる場合がある。
【００１１】
開示の技術は、一つの側面として、少ない検索で障害箇所を特定することを目的とする。
【課題を解決するための手段】
【００１２】
開示の技術は、一つの態様として、システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶部に記憶しておく。この記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索する。また、検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索する。この検索は、前記開始側の往路の設定情報に基づいて行う。そして、通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する。通信状態を示すパターンは、前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される。
【発明の効果】
【００１３】
開示の技術は、一つの側面として、少ない検索で障害箇所を特定することができる、という効果を有する。
【図面の簡単な説明】
【００１４】
【図１】オーバレイネットワークの設定を説明するための図である。
【図２】本実施形態に係る障害箇所特定装置の機能ブロック図である。
【図３】設定情報データベースの一例を示す図である。
【図４】開始側の仮想マシンと受理側の仮想マシンとの間の往復の通信を説明するための図である。
【図５】検索状態データ構造の一例を示す図である。
【図６】仮想マシンの設定が障害箇所であることを示すパターンを説明するための図である。
【図７】利用者による送受信のセキュリティグループの設定が障害箇所であることを示すパターンを説明するための図である。
【図８】利用者によるルーティングの設定が障害箇所であることを示すパターンを説明するための図である。
【図９】トンネルのシステム障害を示すパターンを説明するための図である。
【図１０】検索処理の遷移を説明するための図である。
【図１１】本実施形態に係る障害箇所特定装置として機能するコンピュータの概略構成を示すブロック図である。
【図１２】障害箇所特定処理の一例を示すフローチャートである。
【図１３】開始側往路送信の設定情報を検索するための検索条件の一例を示す図である。
【図１４】障害解析処理の一例を示すフローチャートである。
【図１５】障害箇所特定処理の一例を示すフローチャートである。
【図１６】障害箇所特定処理の一例を示すフローチャートである。
【図１７】障害箇所特定処理の一例を示すフローチャートである。
【図１８】解析結果リストの一例を示す図である。
【発明を実施するための形態】
【００１５】
本実施形態では、Infrastructure as a Service（ＩａａＳ）システムで提供される仮想システムの仮想ネットワークを、オーバレイネットワークにより動的に設定する場合について説明する。
【００１６】
ここで、本実施形態の詳細を説明する前に、本実施形態で前提とするオーバレイネットワークについて説明する。本実施形態におけるオーバレイネットワークでは、Transmission Control Protocol（ＴＣＰ）セッション（通信を行う単位）毎のNetwork Address Translation（ＮＡＴ）やロードバランサを実現するため、ＴＣＰセッション毎にネットワークが設定される。本実施形態では、一例として、ソフトウェア定義ネットワーク（Software Defined Network：ＳＤＮ）に基づく技術であるOpenFlow（登録商標）により、オーバレイネットワークを設定する場合について説明する。
【００１７】
より具体的に、図１に示すように、物理マシン１００Ａ上に構築された仮想マシン（Virtual Machine、ＶＭ）１０６Ａから、物理マシン１００Ｂ上に構築された仮想マシン１０６Ｂへパケットを転送する際のオーバレイネットワークの設定を例に説明する。図１に示すように、OpenFlow（登録商標）では、物理マシン１００Ａ、１００Ｂに、パケットの転送を行うOpenVSwitch（以下、「ＯＶＳ」と略記する）１０２Ａ、１０２Ｂ、及びパケットの転送経路を制御する制御エージェント１０４Ａ、１０４Ｂが含まれる。また、物理マシン１００Ａ、１００Ｂとは別のサーバに、仮想マシン、仮想ネットワーク、仮想ルータ等を含む仮想システムの仮想ネットワーク構成に関する構成情報が記憶された構成データベース（ＤＢ）１０８が存在する。構成情報には、各仮想マシンの位置（例えば、仮想マシンが存在する物理マシンのＩＰアドレス）や、各仮想マシンとＯＶＳの入力ポート番号との対応情報も含まれる。
【００１８】
ＯＶＳ１０２Ａ、１０２Ｂは、条件に合致するパケットに対するアクションを定義したフローが設定されたテーブルを参照して、フローの条件に合致するパケットに対する処理を行うソフトウェアである。条件としては、例えば、入力ポート、Ethernet（登録商標）ヘッダ、Internet Protocol（ＩＰ）ヘッダ、ＴＣＰヘッダの組み合わせ等、一連のパケットを識別可能な情報を用いることができる。また、アクションとしては、特定のポートからのパケットの出力、トンネルによるパケットの転送、パケットの破棄、ヘッダの書き換えなどを定めることができる。なお、トンネルによるパケットの転送とは、仮想回線として生成したトンネルを介したパケットの転送である。ここでは、仮想マシン１０６Ａが構築された物理マシン１００Ａと、パケットの転送先である仮想マシン１０６Ｂが構築された物理マシン１００Ｂとの間に、動的にトンネル１１０が生成される。また、ヘッダの書き換えには、Ｌ２ヘッダ及びＬ３ヘッダの書き換えや、Network Address port Translation（ＮＡｐＴ）処理が含まれる。
【００１９】
ＯＶＳ１０２Ａは、テーブルに設定されたフローの条件に合致しないパケットが仮想マシン１０６Ａから入力されると、該当のパケットに対するアクションを制御エージェント１０４Ａに問い合わせる。制御エージェント１０４Ａは、該当のパケットを出力した仮想マシン１０６Ａが属する仮想システムの構成情報を構成ＤＢ１０８から取得する。制御エージェント１０４Ａは、取得した構成情報を元に、該当のパケットに対する処理、転送、ヘッダの書き換えなどのアクションをシミュレートする。
【００２０】
制御エージェント１０４Ａは、シミュレーション結果に基づいて、該当のパケットに対するアクションを決定してフローを作成し、ＯＶＳ１０２Ａが参照するテーブルにフローを設定する。そして、ＯＶＳ１０２Ａは、設定されたフローに従って、該当のパケットを処理する。ＯＶＳ１０２Ａは、今後入力される同一フローの後続パケットについては、制御エージェント１０４Ａに問い合わせることなく、テーブルに設定されたフローに従った処理を実施する。同一フローのパケットが、仮想マシン１０６Ａから出力されなくなってから一定時間が経過すると、制御エージェント１０４Ａは、テーブルに設定された該当のフローを消去する。
【００２１】
また、制御エージェント１０４Ａ、１０４Ｂは、フローを作成してテーブルに設定した際の動作ログである設定情報を、各物理マシン１００Ａ、１００Ｂから出力させる。
【００２２】
そして、例えば、仮想システムの利用者から、通信に関する障害の問い合わせがあった場合などには、システム提供者側のオペレータ等が、障害が発生した通信に関連する物理マシン１００Ａ、１００Ｂを特定する。そして、オペレータは、特定した物理マシン１００Ａ、１００Ｂから出力された設定情報群を取得し、障害が発生した通信に関連する設定情報を検索し、障害箇所を特定するなどの解析を行う。
【００２３】
上述したように、通信が複数の物理マシンを経由する場合には、各物理マシン１００Ａ、１００Ｂから取得した設定情報群から必要な設定情報を検索するための検索数が多くなる。また、設定ミスなどにより、想定外の機器にパケットが送信されるなど、通信の経由を辿りながらの設定情報の検索が困難な場合がある。
【００２４】
そこで、本実施形態では、ＩａａＳシステム全域の設定情報を集約し、異なる物理マシン１００Ａ、１００Ｂの設定情報も一元的に検索可能にする。また、設定情報の検索には、ＯＶＳ１０２Ａ、１０２Ｂが参照するテーブルへの設定の１単位であるフローをインデックスとして用いる。これにより、本実施形態では、パケットの転送先に誤りがある場合も含め、障害が発生した通信に関する設定情報を、システム全域から単一の手法により漏れなく検索する。
【００２５】
以下、図面を参照して開示の技術に係る実施形態の一例を詳細に説明する。なお、本実施形態において、上述の図１を参照して説明したオーバレイネットワークに関する構成と同一の構成については、同一符号を付して詳細な説明を省略する。
【００２６】
図２に示すように、本実施形態に係る障害箇所特定装置１０は、インターネット等のネットワークを介して、ＩａａＳシステムを構成する物理マシン１００Ａ、１００Ｂと接続される。物理マシン１００Ａは、ＯＶＳ１０２Ａ及び制御エージェント１０４Ａを含み、物理マシン１００Ｂは、ＯＶＳ１０２Ｂ及び制御エージェント１０４Ｂを含む。また、物理マシン１００Ａ上には、仮想マシン１０６Ａ１、１０６Ａ２が構築され、物理マシン１００Ｂ上には、仮想マシン１０６Ｂが構築されている。なお、制御エージェントは、開示の技術の制御部の一例であり、ＯＶＳは、開示の技術の転送部の一例である。
【００２７】
なお、以下では、物理マシン１００Ａと物理マシン１００Ｂとを区別なく説明する場合には、符号末尾のＡ及びＢを省略する。ＯＶＳ１０２Ａ、１０２Ｂ、制御エージェント１０４Ａ、１０４Ｂ、仮想マシン１０６Ａ１、１０６Ａ２、１０６Ｂについても同様に、区別なく説明する場合は、符号末尾のＡ、Ａ１、Ａ２、及びＢを省略する。
【００２８】
障害箇所特定装置１０は、機能的には、収集部１２と、検索部１４と、特定部１６とを含む。また、障害箇所特定装置１０の所定の記憶領域には、設定情報ＤＢ２２と、構成ＤＢ１０８と、検索状態データ構造２４とが記憶される。
【００２９】
収集部１２は、各物理マシン１００から出力された設定情報を収集し、収集した設定情報を設定情報ＤＢ２２に記憶する。各設定情報に含まれる項目、及び各項目の値の一例を図３に示す。図３の例では、各設定情報には、大項目として、「タイムスタンプ」、「フローマッチ」、「アクション」、「設定結果」、「ルール情報」、及び「ホスト」が含まれる。
【００３０】
「タイムスタンプ」は、設定情報が示すフローに従ったパケットに対するアクションが実施された日時を示す情報である。
【００３１】
「フローマッチ」は、ＯＶＳ１０２が参照するテーブルに設定されるフローの条件に相当する情報である。「フローマッチ」には、小項目として、例えば、「入力ＯＶＳポート」が含まれる。「入力ＯＶＳポート」は、ＯＶＳ１０２にパケットが入力される際のＯＶＳ１０２の入力ポート番号である。上述のように、構成ＤＢ１０８には、仮想マシン１０６とＯＶＳ１０２の入力ポート番号との対応情報が記憶されている。この対応情報と、「フローマッチ」の「入力ＯＶＳポート」とを照合することで、同一ＩａａＳを利用する利用者がマルチテナントの場合でも、特定のテナントに対応する仮想マシン１０６から入力されたパケットを特定することができる。
【００３２】
また、「フローマッチ」には、小項目として、「トンネルＩＤ」、「トンネル送信ＩＰアドレス」、及び「トンネル受信ＩＰアドレス」が含まれる。「トンネルＩＤ」は、パケットの転送に利用されるトンネル１１０の識別情報である。「トンネル送信ＩＰアドレス」及び「トンネル受信ＩＰアドレス」は、トンネル１１０で接続される送信側及び受信側の各物理マシン１００のＩＰアドレスである。「トンネルＩＤ」、「トンネル送信ＩＰアドレス」、及び「トンネル受信ＩＰアドレス」により、トンネル１１０からＯＶＳ１０２へパケットが入力された場合に、そのトンネル１１０を一意に同定することができる。以下、これらの３つの情報をあわせて、「トンネル情報」ともいう。ＯＶＳ１０２へのパケットの入力がトンネル１１０からの入力ではない場合には、トンネル情報の各項目は空欄となる。
【００３３】
さらに、「フローマッチ」には、ＴＣＰセッションを特定する、いわゆる５タプル（「送信ＶＭ  ＩＰアドレス」、及び「受信ＶＭ  ＩＰアドレス」「プロトコル番号」、「送信ＴＣＰポート」、及び「受信ＴＣＰポート」）の情報が含まれる。
【００３４】
「アクション」は、条件に合致したパケットに対する処理内容を示す情報である。「アクション」には、小項目として、「出力ＯＶＳポート」が含まれる。「出力ＯＶＳポート」は、ＯＶＳ１０２からパケットを出力する際の出力ポート番号である。ＯＶＳ１０２で実施されるアクションが、ＯＶＳ１０２のポートからのパケットの出力ではない場合には、「出力ＯＶＳポート」は空欄となる。
【００３５】
また、「アクション」には、小項目として、パケットを転送するトンネル１１０のトンネル情報（「トンネルＩＤ」、「トンネル送信ＩＰアドレス」、及び「トンネル受信ＩＰアドレス」）が含まれる。実施されるアクションが、トンネル１１０によるパケットの転送ではない場合には、トンネル情報の各項目は空欄となる。
【００３６】
さらに、「アクション」には、小項目として、「送信ＩＰアドレス変更」、「受信ＩＰアドレス変更」、「プロトコル番号」、「送信ＴＣＰポート変更」、及び「受信ＴＣＰポート変更」が含まれる。これらの項目は、アクションとしてＮＡｐＴが実施される際の変換後のＩＰアドレス及びポート番号である。アクションによりＮＡｐＴが実施されない場合や、変換対象ではない項目については空欄となる。
【００３７】
「設定結果」は、制御エージェント１０４によりフローが作成され、テーブルに設定されたか否かを示す情報、又は別の処理を行ったか否かを示す情報である。図３に示す「FLOW_CREATED」は、制御エージェント１０４がフローを作成してテーブルに設定したことを示す例である。
【００３８】
「ルール情報」は、パケットが破棄されたか否かを示す情報、及びパケットが破棄された場合に適用されたフィルタ規則の情報である。図３に示す「DROP,#1457」は、フィルタ規則１４５７が適用されて、パケットが破棄されたことを示す。また、パケットが受理された場合（異常なしの場合）には、「ルール情報」は「ACCEPT」となる。
【００３９】
「ホスト」は、該当の設定情報を出力した物理マシンのＩＰアドレスである。
【００４０】
ここで、図４に示すように、物理マシン１００Ａ上の仮想マシン１０６Ａ１と、物理マシン１００Ｂ上の仮想マシン１０６Ｂとの間で、仮想マシン１０６Ａ１を開始側、仮想マシン１０６Ｂを受理側とする往復の通信が行われる場合を考える。まず、往路では、仮想マシン１０６Ａ１から出力されたパケットは、仮想マシン１０６Ａ１に対応する入力ＯＶＳポートを介してＯＶＳ１０２Ａに入力される（図４中の６１）。ＯＶＳ１０２Ａは、制御エージェント１０４Ａにより作成され、テーブルに設定されたフローに従って、パケットをトンネルで受理側へ送信する（図４中の６２）。受理側では、ＯＶＳ１０２Ｂがパケットを受信し、仮想マシン１０６Ｂに対応するポートからパケットを出力し、パケットが仮想マシン１０６Ｂに到達する（図４中の６３）。
【００４１】
そして、復路では、仮想マシン１０６Ｂから出力されたパケットは、仮想マシン１０６Ｂに対応する入力ＯＶＳポートを介してＯＶＳ１０２Ｂに入力される（図４中の６４）。ＯＶＳ１０２Ｂは、制御エージェント１０４Ｂにより作成され、テーブルに設定されたフローに従って、パケットをトンネルで開始側へ送信する（図４中の６５）。開始側では、ＯＶＳ１０２Ａがパケットを受信し、仮想マシン１０６Ａ１に対応するポートからパケットを出力し、パケットが仮想マシン１０６Ａ１に到達する（図４中の６６）。
【００４２】
この場合、図４に示すＳ１、Ｓ２、Ｓ３、Ｓ４のそれぞれのポイントでフローが作成及び設定され、その設定情報が出力される。Ｓ１は、往路において、開始側の仮想マシン１０６Ａ１から出力されるパケットを受理側へ送信する際のフローについての設定情報が出力されるポイントである。Ｓ２は、往路において、開始側から送信されたパケットを受理側で受信する際のフローについての設定情報が出力されるポイントである。Ｓ３は、復路において、受理側の仮想マシン１０６Ｂから出力されるパケットを開始側へ送信する際のフローについての設定情報が出力されるポイントである。Ｓ４は、復路において、開始側でパケットを受信する際のフローについての設定情報が出力されるポイントである。
【００４３】
以下では、ポイントＳ１で出力される設定情報を「開始側往路送信の設定情報」という。また、ポイントＳ２で出力される設定情報を「受理側往路受信の設定情報」という。また、ポイントＳ３で出力される設定情報を「受理側復路送信の設定情報」という。また、ポイントＳ４で出力される設定情報を「開始側復路受信の設定情報」という。
【００４４】
検索部１４は、設定情報ＤＢ２２を参照して、検索対象のポイントに応じた検索条件を用いて、各ポイントから出力された設定情報群から、所望の設定情報を検索する。検索部１４は、開始側の仮想マシン１０６Ａ１から送信されるパケットの５タプルを検索条件として用いて、各ポイントで出力された設定情報群から必要な設定情報を検索する。ただし、開始側の５タプルの情報だけでは、正確な検索が実行できない場合があるため、このような場合を考慮して、他のポイントから出力された設定情報の検索結果や、入出力ＯＶＳポートの情報も検索条件に加える。
【００４５】
具体的には、パブリックＩａａＳでは利用者毎にＩＰアドレスを決定できるため、同一のＩａａＳシステムの利用者がマルチテナントの場合、異なる利用者同士が同様のＩＰアドレスを持つＴＣＰ通信を実施している場合がある。この場合には、５タプルだけを検索条件として用いた場合には、異なる利用者のＴＣＰセッションに関する設定情報が混在して検索されてしまう。そこで、特定の利用者のＴＣＰセッションに関する設定情報を検索するために、仮想マシン１０６とＯＶＳ１０２との対応を識別可能な入出力ＯＶＳポート番号や、オーバレイのトンネル通信を一意に識別可能なトンネル情報を検索条件に加える。
【００４６】
また、顧客システムの内外で異なったアドレス体系を使用することが一般化しており、ＮＡｐＴが実施される場合などして、ＩＰアドレスやＴＣＰポートが通信の途中で変換される場合がある。この場合、開始側の５タプルを検索条件として用いても、受理側の設定情報を適切に検索することはできない。そこで、前段のポイントから出力された設定情報に含まれるアクションの情報に基づいて５タプルを変換し、変換後の５タプルで後段のポイントから出力された設定情報を検索する。
【００４７】
検索部１４は、上記のような検索条件として用いる情報を、例えば、図５に示すような検索状態データ構造２４に記録しながら、各ポイントから出力された設定情報の検索を実行する。検索状態データ構造２４には、大項目として、「タイムスタンプ」、「開始側往路通信情報」、「受理側往路通信情報」、及び「トンネル情報」が含まれる。検索部１４は、各項目に、開始側往路送信の設定情報群から検索された設定情報の各項目の情報を記録する。値が不明な項目は空欄とする。また、検索部１４は、検索処理を進めながら、検索された設定情報に含まれる情報に基づいて、検索状態データ構造２４の空欄を埋めていく。さらに、検索部１４は、検索された設定情報のアクションにＮＡｐＴの実施が含まれる場合には、該当のＩＰアドレスやＴＣＰポートを、ＮＡｐＴ後の値に書き換える。
【００４８】
特定部１６は、検索部１４により検索された設定情報に基づいて、障害箇所を特定する。図４に示すような往復の通信において、検索条件に合致する設定情報が存在しないポイントや、パケットの破棄を示す設定情報が出力されたポイントなどを特定することで、障害箇所を特定することができる。具体的には、特定部１６は、検索された設定情報により表される通信状態を示すパターンと、障害箇所毎に予め定義されたパターンとを比較することにより、障害箇所を特定する。
【００４９】
例えば、図６の上段に示す往路のパターンは、検索条件に合致する開始側往路送信の設定情報（Ｓ１）が存在しないパターンである。同様に、図６の下段に示す復路のパターンは、検索条件に合致する受理側復路送信の設定情報（Ｓ３）が存在しないパターンである。これらのパターンは、仮想マシン１０６内でパケットがドロップし、パケットがＯＶＳ１０２に到達していない場合が該当する。設定情報の検索結果が図６のパターンのいずれかを示す場合、特定部１６は、利用者による仮想マシン１０６の設定が障害箇所であることを特定する。
【００５０】
また、図７の上段に示す往路のパターンは、検索条件に合致する開始側往路送信の設定情報（Ｓ１）が、セキュリティ設定のルールによりパケットを破棄することが定義されたフローが作成されていることを示すパターンの一例である。同様に、図７の下段に示す復路のパターンは、検索条件に合致する受理側復路送信の設定情報（Ｓ３）が、セキュリティ設定のルールによりパケットを破棄することが定義されたフローが作成されていることを示すパターンの一例である。設定情報の検索結果が図７のパターンのいずれかを示す場合、特定部１６は、利用者による送受信のセキュリティグループの設定が障害箇所であることを特定する。
【００５１】
また、図８の上段に示す往路のパターンは、検索条件に合致する開始側往路送信の設定情報（Ｓ１）が、パケットを破棄することが定義されているが、その理由が明示されていないフローが作成されている場合を示すパターンの一例である。同様に、図８の中段に示す復路（ケース１）のパターンは、検索条件に合致する受理側復路送信の設定情報（Ｓ３）が、パケットを破棄することが定義されているが、その理由が明示されていないフローが作成されている場合を示すパターンの一例である。これらのパターンは、パケットの送信先の仮想マシン１０６への経路が存在せず、パケットの行き場がないため、ＯＶＳ１０２からパケットが出力されず破棄される場合が該当する。また、図８の下段に示す復路（ケース２）のパターンは、検索条件に合致する受理側復路送信の設定情報（Ｓ３）が、ＮＡｐＴを実施するフローが作成されているが、変換後のＩＰアドレス及びＴＣＰポートが、開始側と一致しないことを示すパターンの一例である。このパターンは、ＯＶＳ１０２Ｂからのルーティングが誤っており、パケットを外部に送信しようとする場合など、開始側の仮想マシン１０６がパケットを受け取れず、通信が成立しない場合が該当する。したがって、設定情報の検索結果が図８のパターンのいずれかを示す場合、特定部１６は、利用者によるルーティングの設定が障害箇所であることを特定する。
【００５２】
また、図９の上段に示す往路のパターンは、検索条件に合致する開始側往路送信の設定情報（Ｓ１）は、ＯＶＳ１０２Ａから仮想マシン１０６Ｂへパケットを出力することを示すが、受理側往路受信の設定情報（Ｓ２）が存在しないことを示すパターンである。同様に、図９の下段に示す復路のパターンは、検索条件に合致する受理側復路送信の設定情報（Ｓ３）は、ＯＶＳ１０２Ｂから仮想マシン１０６Ａ１へパケットを出力することを示すが、開始側復路受信の設定情報（Ｓ４）が存在しないことを示すパターンである。このパターンは、物理マシン１００Ａと物理マシン１００Ｂとの間のトンネル接続を実現する通信経路に切断箇所が存在するなどして、出力されたパケットが送信先へ到達しない場合などが該当する。したがって、設定情報の検索結果が図９のパターンのいずれかを示す場合、特定部１６は、トンネルのシステム障害であること、すなわち、ＩａａＳシステムの提供者側に原因があることを特定する。
【００５３】
ここで、例えば、図４に示すような開始側の仮想マシン１０６Ａ１と受理側の仮想マシン１０６Ｂとの間の往復の通信において、上記のような設定情報のパターンを特定するために、ポイントＳ１、Ｓ２、Ｓ３、Ｓ４の順に設定情報を検索することが考えられる。しかし、ポイントＳ１で出力された開始側往路送信の設定情報を検索する際、例えば、利用者からの問合せにより得られた情報だけでは、該当のフローを厳密に指定した検索が行えるとは限らない。これは、自動採番されるポート番号など、利用者が認識していない５タプルの情報が存在するためである。この場合、例えば、システム提供者側のオペレータは、不明な情報をワイルドカードとする検索条件で検索を行うことになるため、検索条件に合致する設定情報の数が多くなる。そして、オペレータは、開始側往路送信の設定情報群から検索された複数の設定情報の各々に基づいて、次のポイントＳ２から出力された受理側往路受信の設定情報を検索することになる。また、オペレータは、その設定情報の検索結果に基づいて、次のポイントＳ３、その次のポイントＳ４から出力された設定情報を順次検索することになる。
【００５４】
したがって、開始側往路送信の設定情報群（Ｓ１）から検索された検索条件に合致する設定情報がＮ件あった場合、最初の開始側往路送信の設定情報群（Ｓ１）の検索１回を含め、全体の検索回数は３Ｎ＋１となる。検索処理に要する時間は、検索母集団数に比例して増加する。また、Ｎが多い場合には、全体の検索に要する処理時間が増大する。
【００５５】
そこで、本実施形態では、設定情報の検索回数を軽減するために、まず、開始側往路送信の設定情報群（Ｓ１）から検索された検索条件に合致する設定情報の各々に対応する開始側復路受信の設定情報群（Ｓ４）を検索する。そして、開始側復路受信の設定情報群（Ｓ４）から検索された設定情報が、開始側の仮想マシン１０６Ａ１に正常にパケットを出力していることを示している場合には、仮想マシン１０６Ａ１と仮想マシン１０６Ｂとの間でＴＣＰセッションが確立していると判断する。この場合、受理側往路受信の設定情報（Ｓ２）及び受理側復路送信の設定情報（Ｓ３）の検索を省略する。
【００５６】
この場合、開始側往路送信の設定情報群（Ｓ１）から検索された検索条件に合致する設定情報Ｎ件のうち、ＴＣＰセッションが確立しない通信の存在率をｒ（ｒ＜１）とすると、全体の検索回数は、Ｎ（１＋２ｒ）＋１回となる。一般的なＩａａＳシステムの利用シーンでは、大部分の通信は正常であることが想定されるため、ｒは非常に小さい値になると考えられる。したがって、各ポイントから出力された設定情報を順番に検索する場合の全体の検索回数３Ｎ＋１回より、大幅な検索回数の削減が見込める。
【００５７】
図１０に、各ポイントから出力された設定情報を順番に検索する検索処理と、本実施形態における検索処理とで、検索処理の遷移を比較した図を示す。図１０において、Ｓ１、Ｓ２、Ｓ３、Ｓ４は、設定情報が出力される各ポイントであり、Ｔ１は、ＴＣＰセッションが確立する場合、Ｔ２は、ＴＣＰセッションが確立しない場合を示す。また、実線の矢印は、各ポイントで検索条件に合致する設定情報が存在し、パケットが正常に出力されている場合の処理の遷移を示す。破線の矢印は、各ポイントで検索条件に合致する設定情報が存在しない場合の処理の遷移を示す。なお、図１０では、説明を簡単にするため、ポイントＳ１で検索条件に合致する設定情報が存在しない場合、及び各ポイントで検索条件に合致する設定情報が存在するが、パケットが正常に出力されていない場合の図示を省略している。本実施形態の場合（図１０の下図の場合）、Ｓ４からＳ２へ遷移して検索する必要がある件数が少ないため、全体の検索件数が削減される。
【００５８】
障害箇所特定装置１０は、例えば図１１に示すコンピュータ３０で実現することができる。コンピュータ３０は、Central Processing Unit（ＣＰＵ）３１と、一時記憶領域としてのメモリ３２と、不揮発性の記憶部３３とを備える。また、コンピュータ３０は、入出力装置３４と、記憶媒体３９に対するデータの読み込み及び書き込みを制御するRead/Write（Ｒ／Ｗ）部３５と、インターネット等のネットワークに接続される通信インターフェース（Ｉ／Ｆ）３６とを備える。ＣＰＵ３１、メモリ３２、記憶部３３、入出力装置３４、Ｒ／Ｗ部３５、及び通信Ｉ／Ｆ３６は、バス３７を介して互いに接続される。
【００５９】
記憶部３３は、Hard Disk Drive（ＨＤＤ）、Solid State Drive（ＳＳＤ）、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部３３には、コンピュータ３０を障害箇所特定装置１０として機能させるための障害箇所特定プログラム４０が記憶される。障害箇所特定プログラム４０は、収集プロセス４２と、検索プロセス４４と、特定プロセス４６とを有する。また、記憶部３３は、設定情報ＤＢ２２、構成ＤＢ１０８、及び検索状態データ構造２４の各々を構成する情報が記憶される情報記憶領域５０を有する。
【００６０】
ＣＰＵ３１は、障害箇所特定プログラム４０を記憶部３３から読み出してメモリ３２に展開し、障害箇所特定プログラム４０が有するプロセスを順次実行する。ＣＰＵ３１は、収集プロセス４２を実行することで、図２に示す収集部１２として動作する。また、ＣＰＵ３１は、検索プロセス４４を実行することで、図２に示す検索部１４として動作する。また、ＣＰＵ３１は、特定プロセス４６を実行することで、図２に示す特定部１６として動作する。また、ＣＰＵ３１は、情報記憶領域５０から情報を読み出して、設定情報ＤＢ２２、構成ＤＢ１０８、及び検索状態データ構造２４の各々をメモリ３２に展開する。これにより、障害箇所特定プログラム４０を実行したコンピュータ３０が、障害箇所特定装置１０として機能することになる。
【００６１】
なお、障害箇所特定プログラム４０により実現される機能は、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit（ＡＳＩＣ）等で実現することも可能である。
【００６２】
次に、本実施形態に係る障害箇所特定装置１０の作用について説明する。
【００６３】
収集部１２が、定期的に、各物理マシン１００から出力される設定情報を収集し、設定情報ＤＢ２２に記憶する。そして、例えば、仮想システムの利用者から、通信の障害に関する問合せがあった場合、システム提供者側のオペレータは、利用者から必要な情報を入手する。具体的には、オペレータは、利用者の仮想マシンを特定する情報、該当の仮想マシンによるＴＣＰセッションの５タプルの情報、該当の通信が行われた時間帯の情報を入手する。利用者の仮想マシンを特定する情報は、例えば、利用者のテナント名などの識別情報や仮想マシン１０６のＩＰアドレス等である。利用者の識別情報を入手した場合には、予め保持している利用者とその利用者が利用する仮想マシンとの対応情報に基づいて、該当の仮想マシンを特定する。また、５タプルの情報の中には、利用者が認識していない情報が含まれる場合もあるため、分かる範囲の情報を入手すればよい。
【００６４】
システム提供側のオペレータは、入手した情報を障害箇所特定装置１０に入力する。これにより、障害箇所特定装置１０において、障害箇所特定処理が実行される。以下、図１２、及び図１４〜図１７に示すフローチャートを参照して、障害箇所特定処理について詳述する。
【００６５】
図１２のステップＳ１１で、検索部１４が、入力された利用者の仮想マシンを特定する情報に基づいて、構成ＤＢ１０８に記憶された仮想マシンとＯＶＳの入力ポート番号との対応情報を参照し、利用者の仮想マシン１０６の入力ＯＶＳポート番号を取得する。
【００６６】
次に、ステップＳ１２で、検索部１４が、入力された５タプルの情報及び時間帯と、取得した入力ＯＶＳポート番号とから、検索条件を生成する。なお、５タプルのうち、不明な情報については、ワイルドカード（＊）とする。図１３に、検索条件の一例を示す。図１３の例では、入手した情報からは、送信ＩＰアドレス及び送信ポート番号が不明であるため、ワイルドカード（＊）とした例を示している。検索部１４は、生成した検索条件に基づいて、設定情報ＤＢ２２に記憶された開始側往路送信の設定情報群（Ｓ１）から、検索条件に合致する設定情報を検索する。
【００６７】
次に、ステップＳ１３で、障害解析処理が実行されることにより、上記ステップＳ１２における設定情報の検索結果が示すパターンが、障害箇所毎に予め定義されたいずれかのパターン（図６〜図９）に該当するか否かが解析される。
【００６８】
ここで、図１４を参照して、障害解析処理について説明する。
【００６９】
ステップＳ６１で、特定部１６が、開始側往路送信の設定情報群（Ｓ１）から、ステップＳ１２で作成された検索条件に合致する設定情報が検索されたか否かを判定する。検索条件に合致する設定情報が存在しない場合には、処理はステップＳ６２へ移行する。ステップＳ６２では、特定部１６が、ＯＶＳ１０２Ａへパケットが未到達であることを示す検索結果「パケット未到達」を、障害解析処理の呼出側へリターンする。一方、検索条件に合致する設定情報が存在する場合には、処理はステップＳ６３へ移行する。なお、検索条件に合致する設定情報が複数存在する場合には、複数の設定情報の各々について、ステップＳ６３以降の処理が実行される。
【００７０】
ステップＳ６３では、特定部１６が、検索された設定情報の「設定結果」の項目を参照して、フローが作成されたか否かを判定する。フローが作成されていない場合には、処理はステップＳ６４へ移行し、特定部１６が、予め定義されたパターンが示す障害箇所以外の障害が発生している旨の解析結果を、解析結果リスト（詳細は後述）に記録する。
【００７１】
一方、フローが作成されている場合には、処理はステップＳ６５へ移行し、特定部１６が、検索された設定情報の「アクション」の項目が空欄か否かを判定する。「アクション」の項目が空欄の場合には、次のステップＳ６６で、特定部１６が、「ルール情報」の項目を参照し、セキュリティ設定のルールによりパケットを破棄することが定義されたフローが作成されているか否かを判定する。肯定判定の場合、ステップＳ６７で、特定部１６は、検索された設定情報が示すパターンは図７の上図に示すパターンに該当すること、すなわち、利用者によるセキュリティグループの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【００７２】
一方、ステップＳ６６が否定判定の場合には、処理はステップＳ６８へ移行し、特定部１６が、検索された設定情報が示すパターンは図８の上図に示すパターンに該当すること、すなわち、利用者によるルーティングの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【００７３】
また、上記ステップＳ６５で、検索された設定情報の「アクション」の項目が空欄ではないと判定された場合には、処理はステップＳ６９へ移行し、特定部１６が、検索結果「処理継続」を、障害解析処理の呼出側へリターンする。
【００７４】
図１２に戻って、次のステップＳ１４で、特定部１６が、上記ステップＳ１３でリターンされた検索結果が「パケット未到達」か否かを判定する。検索結果が「パケット未到達」の場合には、処理はステップＳ１５へ移行し、検索結果が「処理継続」の場合には、処理はステップＳ１６へ移行する。なお、ステップＳ１２で作成された検索条件に合致する設定情報が複数存在する場合には、複数の設定情報の各々について、ステップＳ１６以降の処理が実行される。
【００７５】
ステップＳ１５では、特定部１６が、「パケット未到達」との検索結果に基づいて、検索された設定情報が示すパターンは図６の上図に示すパターンに該当すること、すなわち、利用者による仮想マシンの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【００７６】
一方、ステップＳ１６では、検索部１４が、上記ステップＳ１２で、開始側往路送信の設定情報群（Ｓ１）から検索された設定情報の各項目の情報を、検索状態データ構造２４の「タイムスタンプ」及び「開始側往路通信情報」の対応する各項目へ記録する。また、検索部１４は、検索状態データ構造２４の「開始側往路通信情報」に記録した５タプルの情報を、「受理側往路通信情報」にコピーする。
【００７７】
次に、ステップＳ１７で、検索部１４が、上記ステップＳ１２で検索された設定情報の「アクション」の「受信ＩＰアドレス変更」の項目に、変換後のＩＰアドレスが記述されているか否かを判定する。変換後のＩＰアドレスが記述されている場合には、処理はステップＳ１８へ移行する。ステップＳ１８では、検索部１４が、検索状態データ構造２４の「受理側往路通信情報」の「受信ＶＭ  ＩＰアドレス」の項目を、変換後のＩＰアドレスに書き換えて、処理はステップＳ１９へ移行する。「アクション」の「受信ＩＰアドレス変更」の項目が空欄の場合には、そのままステップＳ１９へ移行する。
【００７８】
ステップＳ１９では、検索部１４が、検索された設定情報の「アクション」の「受信ＴＣＰポート変更」の項目に、変換後のＴＣＰポートが記述されているか否かを判定する。変換後のＴＣＰポートが記述されている場合には、処理はステップＳ２０へ移行する。ステップＳ２０では、検索部１４が、検索状態データ構造２４の「受理側往路通信情報」の「受信ＴＣＰポート」の項目を、変換後のＴＣＰポートに書き換えて、処理はステップＳ２１へ移行する。「アクション」の「受信ＴＣＰポート変更」の項目が空欄の場合には、そのままステップＳ２１へ移行する。
【００７９】
ステップＳ２１では、検索部１４が、検索された設定情報の「アクション」にトンネル情報（「トンネルＩＤ」、「トンネル送信ＩＰアドレス」、及び「トンネル受信ＩＰアドレス」）が記述されているか否かを判定する。トンネル情報が記述されている場合には、処理はステップＳ２２へ移行する。
【００８０】
ステップＳ２２では、検索部１４が、検索された設定情報の「アクション」のトンネル情報の各項目を、検索状態データ構造２４の「トンネル情報」の「往路トンネル送信ＩＰアドレス」、「往路トンネル受信ＩＰアドレス」、及び「往路トンネルＩＤ」に記録する。そして、引き続き、開始側復路受信の設定情報群（Ｓ４）の検索処理を実行するために、処理は図１５のステップＳ２４へ移行する。これは、図１０の下図に示すＳ１からＳ４への検索処理の遷移に相当する。
【００８１】
一方、ステップＳ２１で、トンネル情報が記述されていないと判定される場合は、トンネルからのパケット出力ではなく、ＯＶＳ１０２の出力ポートから仮想マシン１０６へパケットが出力されたことを表す。すなわち、同一ホスト上の仮想マシン間での通信であることを表す。例えば、図２に示すように、物理マシン１００Ａのハイパーバイザー（図示省略）で機能する１つのＯＶＳ１０２Ａに接続される仮想マシン１０６Ａ１と仮想マシン１０６Ａ２との通信は、同一ホスト上の仮想マシン間の通信である。仮想マシン１０６Ａ１から仮想マシン１０６Ａ２へのパケットの転送の場合、ＯＶＳ１０２Ａは、パケットを仮想マシン１０６Ａ２に対応する出力ＯＶＳポートから出力する、というアクションを実施する。
【００８２】
そこで、次のステップＳ２３で、検索部１４が、検索された設定情報の「アクション」の「出力ＯＶＳポート」に記述されたＯＶＳ１０２Ａのポート番号を、検索状態データ構造２４の「受理側往路通信情報」の「出力ＯＶＳポート」に記録する。そして、引き続き、同一ホスト上の仮想マシン間の通信における受理側復路送信の設定情報群（Ｓ３に相当）の検索処理を実行するために、処理は図１７のステップＳ３５へ移行する。
【００８３】
図１５のステップＳ２４では、検索部１４が、開始側復路受信の設定情報群（Ｓ４）から検索条件に合致する設定情報を検索する際の検索対象となる時間帯を設定する。検索部１４は、開始側の仮想マシン１０６Ａ１と受理側の仮想マシン１０６Ｂとの間の往復の通信に要する時間を考慮して、検索対象の時間帯を設定する。例えば、Ｌｉｎｕｘ（登録商標）におけるＴＣＰセッションのｓｙｎパケット応答待ちタイムアウト時間のデフォルト値である１２８秒を利用する。具体的には、検索部１４は、検索状態データ構造２４の「タイムスタンプ」に記録されている時刻から、１２８秒後の時刻までを検索対象の時間帯として設定することができる。なお、検索状態データ構造２４の「タイムスタンプ」に記録されている時刻は、開始側往路送信の設定情報群（Ｓ１）から検索された設定情報の「タイムスタンプ」の値であり、開始側のＯＶＳ１０２Ａからパケットが出力された時刻に相当する。
【００８４】
次に、ステップＳ２５で、検索部１４が、検索状態データ構造２４の「開始側往路通信情報」及び「トンネル情報」の各項目と、上記ステップＳ２４で設定した時間帯とから、検索条件を生成する。具体的には、検索部１４は、「開始側往路通信情報」の「送信ＶＭ  ＩＰアドレス」と「受信ＶＭ  ＩＰアドレス」との送受信側を入れ替えたＩＰアドレスと、「送信ＴＣＰポート」と「受信ＴＣＰポート」との送受信側を入れ替えたＴＣＰポート番号とを検索条件として生成する。また、検索部１４は、「トンネル情報」の「往路トンネル送信ＩＰアドレス」と「往路トンネル受信ＩＰアドレス」との送受信側を入れ替えたトンネルＩＰアドレスを検索条件に加える。そして、検索部１４は、上記ステップＳ２４で設定した時間帯の情報を検索条件に加える。検索部１４は、生成した検索条件に基づいて、設定情報ＤＢ２２に記憶された開始側復路受信の設定情報群（Ｓ４）から、検索条件に合致する設定情報を検索する。
【００８５】
次に、ステップＳ２６で、上記ステップＳ１３と同様に、障害解析処理（図１４）が実行される。これにより、上記ステップＳ２５における設定情報の検索結果が示すパターンが、障害箇所毎に予め定義されたいずれかのパターン（図６〜図９）に該当するか否かが解析される。
【００８６】
なお、制御エージェント１０４がフローを作成する際、受信側でパケットが破棄されることがシミュレーション結果として判明している場合には、パケットをネットワークに送出することなく送信側で破棄させるようなフローを作成する。したがって、ステップＳ２６で実行される障害解析処理においては、ステップＳ６５が肯定判定となるパターン、及びステップＳ６６が否定判定となるパターンに該当する場合はないものとする。
【００８７】
図１５に戻って、次のステップＳ２７で、特定部１６が、上記ステップＳ２６でリターンされた検索結果が「パケット未到達」か否かを判定する。検索結果が「パケット未到達」の場合には、ＴＣＰセッションが確立していないことを示しているため、引き続き受理側往路受信の設定情報（Ｓ２）の検索処理を実行するために、処理は図１６のステップＳ２９へ移行する。これは、図１０の下図に示すＳ４からＳ２への検索処理の遷移に相当する。
【００８８】
一方、検索結果が「処理継続」の場合には、ＴＣＰセッションが確立したことを示しているため、処理はステップＳ２８へ移行し、特定部１６が、解析結果「設定成功」を解析結果リストに記録する。
【００８９】
次に、図１６のステップＳ２９で、検索部１４が、上記ステップＳ２４（図１５）と同様に、検索対象の時間帯を設定する。
【００９０】
次に、ステップＳ３０で、検索部１４が、検索状態データ構造２４の「受理側往路通信情報」及び「トンネル情報」の各項目と、上記ステップＳ２９で設定した時間帯とから、検索条件を生成する。上記ステップＳ１７〜Ｓ２０（図１２）で、検索状態データ構造２４の「受理側往路通信情報」には、ＮＡｐＴによるＩＰアドレス及びＴＣＰポートの変換が反映されている。また、上記ステップＳ２１及びＳ２２（図１２）で、検索状態データ構造２４の「トンネル情報」も記録されている。したがって、検索状態データ構造２４の「受理側往路通信情報」及び「トンネル情報」の各項目の情報を、受理側往路受信の設定情報（Ｓ２）の検索条件として利用することができる。検索部１４は、生成した検索条件に基づいて、設定情報ＤＢ２２に記憶された受理側往路受信の設定情報群（Ｓ２）から、検索条件に合致する設定情報を検索する。
【００９１】
次に、ステップＳ３１で、上記ステップＳ１３と同様に、障害解析処理（図１４）が実行される。これにより、上記ステップＳ３０における設定情報の検索結果が示すパターンが、障害箇所毎に予め定義されたいずれかのパターン（図６〜図９）に該当するか否かが解析される。ステップＳ３１で実行される障害解析処理においては、ステップＳ２６で実行される障害解析処理の場合と同様に、ステップＳ６５が肯定判定となるパターン、及びステップＳ６６が否定判定となるパターンに該当する場合はないものとする。
【００９２】
図１６に戻って、次のステップＳ３２で、特定部１６が、上記ステップＳ３１でリターンされた検索結果が「パケット未到達」か否かを判定する。検索結果が「パケット未到達」の場合には、処理はステップＳ３３へ移行し、検索結果が「処理継続」の場合には、処理はステップＳ３４へ移行する。
【００９３】
ステップＳ３３では、特定部１６が、「パケット未到達」との検索結果に基づいて、検索された設定情報が示すパターンは図９の上図に示すパターンに該当すること、すなわち、トンネルのシステム障害であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【００９４】
一方、ステップＳ３４では、検索部１４が、上記ステップＳ３０で検索された設定情報の「アクション」の「出力ＯＶＳポート」に記述されたＯＶＳのポート番号を、検索状態データ構造２４の「受理側往路通信情報」の「出力ＯＶＳポート」に記録する。そして、引き続き、受理側復路送信の設定情報群（Ｓ３）の検索処理を実行するために、処理は図１７のステップＳ３５へ移行する。
【００９５】
次に、図１７のステップＳ３５で、検索部１４が、上記ステップＳ２４（図１５）と同様に、検索対象の時間帯を設定する。
【００９６】
次に、ステップＳ３６で、検索部１４が、検索状態データ構造２４の「受理側往路通信情報」及び「トンネル情報」の各項目と、上記ステップＳ３５で設定した時間帯とから、検索条件を生成する。具体的には、検索部１４は、「受理側往路通信情報」の「送信ＶＭ  ＩＰアドレス」と「受信ＶＭ  ＩＰアドレス」との送受信側を入れ替えたＩＰアドレスと、「送信ＴＣＰポート」と「受信ＴＣＰポート」との送受信側を入れ替えたＴＣＰポート番号とを検索条件として生成する。また、検索部１４は、「トンネル情報」の「往路トンネル送信ＩＰアドレス」と「往路トンネル受信ＩＰアドレス」との送受信側を入れ替えたトンネルＩＰアドレスを検索条件に加える。さらに、検索部１４は、「出力ＯＶＳポート」に記録されているポート番号を、入力ＯＶＳポート番号として検索条件に加える。そして、検索部１４は、上記ステップＳ３５で設定した時間帯の情報を検索条件に加える。検索部１４は、生成した検索条件に基づいて、設定情報ＤＢ２２に記憶された受理側復路送信の設定情報群（Ｓ３）から、検索条件に合致する設定情報を検索する。
【００９７】
次に、ステップＳ３７で、上記ステップＳ１３と同様に、障害解析処理（図１４）が実行される。これにより、上記ステップＳ３６における設定情報の検索結果が示すパターンが、障害箇所毎に予め定義されたいずれかのパターン（図６〜図９）に該当するか否かが解析される。
【００９８】
ステップＳ３７で実行される障害解析処理においては、ステップＳ６５及びＳ６６で肯定判定された場合、ステップＳ６７で、特定部１６が、検索された設定情報が示すパターンは図７の下図に示すパターンに該当することを特定する。すなわち、利用者によるセキュリティグループの設定が障害箇所であることが特定される。特定部１６は、特定した解析結果を解析結果リストに記録する。
【００９９】
また、ステップＳ６６が否定判定の場合には、ステップＳ６８で、特定部１６が、検索された設定情報が示すパターンは図８の中段に示すパターンに該当すること、すなわち、利用者によるルーティングの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【０１００】
図１７に戻って、次のステップＳ３８で、特定部１６が、上記ステップＳ３７でリターンされた検索結果が「パケット未到達」か否かを判定する。検索結果が「パケット未到達」の場合には、処理はステップＳ３９へ移行し、検索結果が「処理継続」の場合には、処理はステップＳ４０へ移行する。
【０１０１】
ステップＳ３９では、特定部１６が、「パケット未到達」との検索結果に基づいて、検索された設定情報が示すパターンは図６の下図に示すパターンに該当すること、すなわち、利用者による仮想マシンの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【０１０２】
一方、ステップＳ４０では、特定部１６が、上記ステップＳ３６で検索された設定情報の「フローマッチ」の「受信ＶＭ  ＩＰアドレス」及び「受信ＴＣＰポート」の情報を、比較用データとしてコピーする。
【０１０３】
次に、ステップＳ４１で、特定部１６が、上記ステップＳ３６で検索された設定情報の「アクション」の「受信ＩＰアドレス変更」の項目に、変換後のＩＰアドレスが記述されているか否かを判定する。変換後のＩＰアドレスが記述されている場合には、処理はステップＳ４２へ移行する。ステップＳ４２では、特定部１６が、比較用データの「受信ＶＭ  ＩＰアドレス」の項目を、変換後のＩＰアドレスに書き換えて、処理はステップＳ４３へ移行する。「アクション」の「受信ＩＰアドレス変更」の項目が空欄の場合には、そのままステップＳ４３へ移行する。
【０１０４】
ステップＳ４３では、特定部１６が、上記ステップＳ３６で検索された設定情報の「アクション」の「受信ＴＣＰポート変更」の項目に、変換後のＴＣＰポートが記述されているか否かを判定する。変換後のＴＣＰポートが記述されている場合には、処理はステップＳ４４へ移行する。ステップＳ４４では、特定部１６が、比較用データの「受信ＴＣＰポート」の項目を、変換後のＴＣＰポートに書き換えて、処理はステップＳ４５へ移行する。「アクション」の「受信ＴＣＰポート変更」の項目が空欄の場合には、そのままステップＳ４５へ移行する。
【０１０５】
ステップＳ４５では、特定部１６が、受理側の仮想マシン１０６Ｂ（又は仮想マシン１０６Ａ２）から送信されたパケットの送信先が、開始側の仮想マシン１０６Ａ１か否かを判定する。具体的には、特定部１６は、検索状態データ構造２４の「開始側往路通信情報」の「送信ＶＭ  ＩＰアドレス」と、比較用データの「受信ＶＭ  ＩＰアドレス」とが一致するか否かを判定する。また、特定部１６は、検索状態データ構造２４の「開始側往路通信情報」の「送信ＴＣＰポート」と、比較用データの「受信ＴＣＰポート」とが一致するか否かを判定する。ＩＰアドレス及びＴＣＰポートのいずれもが一致する場合には、肯定判定されて、処理はステップＳ４６へ移行し、いずれか一方でも一致しない場合には、否定判定されて、処理はステップＳ４９へ移行する。
【０１０６】
ステップＳ４６では、特定部１６が、上記ステップＳ３６で検索された設定情報の「アクション」にトンネル情報が記述されているか否かを判定する。トンネル情報が記述されていない場合には、処理はステップＳ４７へ移行し、トンネル情報が記述されている場合には、処理はステップＳ４８へ移行する。
【０１０７】
ステップＳ４７では、特定部１６が、パケットがトンネル通信により転送されていないため、同一ホスト上の仮想マシン１０６Ａ１、１０６Ａ２間の通信であると判定する。そして、特定部１６は、ステップＳ４７へ至るまでの各ステップでの判定結果に基づいて、ＴＣＰセッションが確立していると判定し、解析結果「設定成功」を解析結果リストに記録する。
【０１０８】
一方、処理がステップＳ４８へ移行する場合は、受理側のＯＶＳ１０２Ｂから、開始側の仮想マシン１０６Ａ１へ正しくパケットが出力されているが、開始側復路受信の設定情報（Ｓ４）の検索結果からＴＣＰセッションが確立していない場合である。したがって、特定部１６が、検索された設定情報が示すパターンは図９の下図に示すパターンに該当すること、すなわち、トンネルのシステム障害であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【０１０９】
また、ステップＳ４９では、特定部１６が、受理側と開始側とのＩＰアドレス及びＴＣＰポートの不一致が、ＮＡｐＴされたことによるものであるか否かを判定する。これは、ステップＳ３６で検索された設定情報の「アクション」の項目に基づいて判定することができる。ＮＡｐＴされていない場合には、処理はステップＳ５０へ移行し、特定部１６が、例えば、構成ＤＢ１０８に記憶された構成情報に誤りがある等のシステムエラーを解析結果として解析結果リストに記録する。
【０１１０】
ＮＡｐＴされている場合には、処理はステップＳ５１へ移行し、特定部１６が、検索された設定情報が示すパターンは図８の下図に示すパターンに該当すること、すなわち、利用者によるルーティングの設定が障害箇所であることを特定する。特定部１６は、特定した解析結果を解析結果リストに記録する。
【０１１１】
上記ステップＳ１２で、開始側往路送信の設定情報群（Ｓ１）から検索された全ての設定情報について、解析結果が解析結果リストに記録されると、処理はステップＳ７０（図１２）へ移行する。これは、各設定情報について、上記ステップＳ６４、Ｓ６７、Ｓ６８、Ｓ２８、Ｓ３３、Ｓ３９、Ｓ４７、Ｓ４８、Ｓ５０、及びＳ５１のいずれかで解析結果が解析結果リストに記録された場合である。また、開始側往路送信の設定情報群（Ｓ１）から検索条件に合致する設定情報が検索されなかった場合は、処理はステップＳ１５を経由して、ステップＳ７０へ移行する。
【０１１２】
ステップＳ７０で、特定部１６が、例えば、図１８に示すような解析結果リストを出力する。図１８の例では、各レコード（各行）が、開始側往路送信の設定情報群（Ｓ１）から検索された１つの設定情報についての解析結果に相当する。「タイムスタンプ」及び５タプルの情報は、検索された設定情報の「フローマッチ」に記述されている情報である。「結果」、「障害箇所」、及び「通信方向」は、設定情報が示すパターンが、障害箇所毎に予め定義されたいずれのパターン（図６〜図９）に該当するかを示す情報である。なお、設定情報が示すパターンとは、開始側往路送信の設定情報群から検索された設定情報、及びその設定情報に基づいて開始側復路受信、受理側往路受信、受理側復路送信の各設定情報群から検索された設定情報が示すパターンである。
【０１１３】
例えば、図６の上図に示すパターンの場合、「結果」は、仮想マシン内でのパケットのドロップである旨、「障害箇所」は、開始側の仮想マシン１０６Ａ１を特定する情報（図１８の例ではＩＰアドレス）、「通信方向」は、「往路」となる。また、例えば、図８の中段の図又は下図に示すパターンの場合、「結果」は、ルーティングの設定ミスである旨、「障害箇所」は、受理側の仮想マシン１０６Ｂを特定する情報、「通信方向」は、「復路」となる。
【０１１４】
解析結果リストが出力されると、障害箇所特定処理は終了する。
【０１１５】
以上説明したように、本実施形態に係る障害箇所特定装置１０によれば、各物理マシンから、パケットの送受信の各ポイントにおいて出力されるネットワークの設定情報を収集し、一元管理する。そして、障害箇所特定装置１０は、各ポイントから出力された設定情報群から、一連のパケットを識別可能なフローの情報を用いて、該当の通信に関する設定情報を検索する。このように、システム全域から出力される設定情報を一元的に検索可能としたことにより、想定外の機器へのパケットの転送などが発生していても、該当の通信の設定情報の検索が可能になる。
【０１１６】
また、障害箇所特定装置１０は、開始側往路送信、受理側往路受信、受理側復路送信、開始側復路受信の各ポイントから出力された設定情報を通信の順に検索するのではなく、開始側往路送信の検索結果に対応する開始側復路受信の設定情報を検索する。ここで検索された設定情報が通信確立を示す場合には、受理側の設定情報の検索を省略するため、設定情報の検索回数を削減することができる。
【０１１７】
また、障害箇所特定装置１０は、開始側往路送信、開始側復路受信、受理側往路受信、受理側復路送信の各設定情報群のいずれかを検索対象として遷移しながら該当の設定情報を検索する際、前段の検索結果を用いて、後段の検索条件を自動で作成する。また、この際、一連のパケットを識別可能なフローの情報が検索条件として利用される。そして、検索された設定情報が示すパターンと、障害箇所毎に予め定義されたパターンとの比較により、障害箇所を特定する。このように、障害の原因によらず、単一の手法で障害箇所を特定することができる。
【０１１８】
上記のように、設定情報に対する検索回数を削減することができることにより、障害箇所の特定までの処理時間が短縮され、利用者への迅速な対応が可能となる。具体的には、障害箇所が利用者の設定に起因する箇所であることが特定された場合には、その旨を利用者に早急に回答することが可能になる。また、障害箇所が、システム提供者側が責任を負うシステム障害であることが特定された場合には、従来既知の機器監視やプロセス監視等の技術を用いたより詳細な障害原因の解析へ、早期に処理を移すことができる。
【０１１９】
なお、上記実施形態では、OpenFlow（登録商標）によりオーバレイネットワークを設定する場合について説明したが、これに限定されない。通信毎に動的にネットワークが設定される場合において、その設定に関する設定情報（ログ情報）が出力される場合であれば、開示の技術を適用可能である。
【０１２０】
また、上記では、開示の技術に係るプログラムの一例である障害箇所特定プログラム４０が記憶部３３に予め記憶（インストール）されている態様を説明したが、これに限定されない。開示の技術に係るプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の記憶媒体に記憶された形態で提供することも可能である。
【０１２１】
以上の実施形態に関し、更に以下の付記を開示する。
【０１２２】
（付記１）
コンピュータに、
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、
検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する
ことを含む処理を実行させるための障害箇所特定プログラム。
【０１２３】
（付記２）
前記設定情報は、前記情報処理装置において、該情報処理装置上の仮想マシンによるデータ転送を実施する転送部での転送処理を制御する制御部により設定され、出力される付記１に記載の障害箇所特定プログラム。
【０１２４】
（付記３）
前記一連の通信を識別可能な情報は、ＴＣＰセッションに関する情報、及び前記転送部に対する前記仮想マシンの接続ポートの情報である付記２に記載の障害箇所特定プログラム。
【０１２５】
（付記４）
前記予め定義されたパターンは、検索条件に合致する設定情報の有無、検索条件に合致する設定情報がデータの破棄を示すか否か、データの破棄がルールに基づく破棄か否か、及び受理側からのデータの送信先が開始側と一致するか否かの情報を含む付記１〜付記３のいずれか１項に記載の障害箇所特定プログラム。
【０１２６】
（付記５）
前記設定情報は、データの送受信する仮想マシンのアドレス、及び該アドレスの変換情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記開始側の往路の設定情報に含まれるアドレスを、前記変換情報に基づいて変換したアドレスを用いて検索する
付記１〜付記４のいずれか１項に記載の障害箇所特定プログラム。
【０１２７】
（付記６）
前記設定情報は、ネットワークの仮想通信経路の識別情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記仮想通信経路の識別情報を検索条件に加える
付記１〜付記５のいずれか１項に記載の障害箇所特定プログラム。
【０１２８】
（付記７）
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索する検索部と、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する特定部と、
を含む障害箇所特定装置。
【０１２９】
（付記８）
前記設定情報は、前記情報処理装置において、該情報処理装置上の仮想マシンによるデータ転送を実施する転送部での転送処理を制御する制御部により設定され、出力される付記７に記載の障害箇所特定装置。
【０１３０】
（付記９）
前記一連の通信を識別可能な情報は、ＴＣＰセッションに関する情報、及び前記転送部に対する前記仮想マシンの接続ポートの情報である付記８に記載の障害箇所特定装置。
【０１３１】
（付記１０）
前記予め定義されたパターンは、検索条件に合致する設定情報の有無、検索条件に合致する設定情報がデータの破棄を示すか否か、データの破棄がルールに基づく破棄か否か、及び受理側からのデータの送信先が開始側と一致するか否かの情報を含む付記７〜付記９のいずれか１項に記載の障害箇所特定装置。
【０１３２】
（付記１１）
前記設定情報は、データの送受信する仮想マシンのアドレス、及び該アドレスの変換情報を含み、
前記検索部は、前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記開始側の往路の設定情報に含まれるアドレスを、前記変換情報に基づいて変換したアドレスを用いて検索する
付記７〜付記１０のいずれか１項に記載の障害箇所特定装置。
【０１３３】
（付記１２）
前記設定情報は、ネットワークの仮想通信経路の識別情報を含み、
前記検索部は、前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記仮想通信経路の識別情報を検索条件に加える
付記７〜付記１１のいずれか１項に記載の障害箇所特定装置。
【０１３４】
（付記１３）
コンピュータに、
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、
検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する
ことを含む処理を実行させるための障害箇所特定方法。
【０１３５】
（付記１４）
前記設定情報は、前記情報処理装置において、該情報処理装置上の仮想マシンによるデータ転送を実施する転送部での転送処理を制御する制御部により設定され、出力される付記１３に記載の障害箇所特定方法。
【０１３６】
（付記１５）
前記一連の通信を識別可能な情報は、ＴＣＰセッションに関する情報、及び前記転送部に対する前記仮想マシンの接続ポートの情報である付記１４に記載の障害箇所特定方法。
【０１３７】
（付記１６）
前記予め定義されたパターンは、検索条件に合致する設定情報の有無、検索条件に合致する設定情報がデータの破棄を示すか否か、データの破棄がルールに基づく破棄か否か、及び受理側からのデータの送信先が開始側と一致するか否かの情報を含む付記１３〜付記１５のいずれか１項に記載の障害箇所特定方法。
【０１３８】
（付記１７）
前記設定情報は、データの送受信する仮想マシンのアドレス、及び該アドレスの変換情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記開始側の往路の設定情報に含まれるアドレスを、前記変換情報に基づいて変換したアドレスを用いて検索する
付記１３〜付記１６のいずれか１項に記載の障害箇所特定方法。
【０１３９】
（付記１８）
前記設定情報は、ネットワークの仮想通信経路の識別情報を含み、
前記開始側の往路の設定情報に基づいて前記受理側の往路の設定情報を検索する際、前記仮想通信経路の識別情報を検索条件に加える
付記１３〜付記１７のいずれか１項に記載の障害箇所特定方法。
【０１４０】
（付記１９）
コンピュータに、
システムに含まれる仮想マシン間のネットワークに関する設定情報を、前記仮想マシンが構築された情報処理装置の各々から収集して記憶した記憶部を参照して、特定の仮想マシンを開始側とする受理側の仮想マシンへのネットワークの往路の設定情報を、一連の通信を識別可能な情報を用いて検索し、検索された設定情報に対応する開始側の復路の設定情報を検索し、
検索した前記開始側の復路の設定情報が、前記開始側の仮想マシンと前記受理側の仮想マシンとで通信が確立していないことを示す場合に、前記開始側の往路の設定情報に基づいて、前記受理側の往路の設定情報、及び前記受理側の復路の設定情報を順次検索し、
前記開始側の往路の設定情報、前記受理側の往路の設定情報、前記受理側の復路の設定情報、及び前記開始側の復路の設定情報の少なくとも１つを用いて表される通信状態を示すパターンと、障害の原因となる箇所毎に予め定義されたパターンとに基づいて、障害箇所を特定する
ことを含む処理を実行させるための障害箇所特定プログラムを記憶した記憶媒体。
【符号の説明】
【０１４１】
１０   障害箇所特定装置
１２   収集部
１４   検索部
１６   特定部
２２   設定情報データベース
２４   検索状態データ構造
３０   コンピュータ
３１   ＣＰＵ
３２   メモリ
３３   記憶部
３９   記憶媒体
４０   障害箇所特定プログラム
１００ 物理マシン
１０２ ＯＶＳ
１０４ 制御エージェント
１０６ 仮想マシン
１０８ 構成データベース
１１０ トンネル
【図１】
2018026734.tif 000003
【図２】
2018026734.tif 000004
【図３】
2018026734.tif 000005
【図４】
2018026734.tif 000006
【図５】
2018026734.tif 000007
【図６】
2018026734.tif 000008
【図７】
2018026734.tif 000009
【図８】
2018026734.tif 000010
【図９】
2018026734.tif 000011
【図１０】
2018026734.tif 000012
【図１１】
2018026734.tif 000013
【図１２】
2018026734.tif 000014
【図１３】
2018026734.tif 000015
【図１４】
2018026734.tif 000016
【図１５】
2018026734.tif 000017
【図１６】
2018026734.tif 000018
【図１７】
2018026734.tif 000019
【図１８】
2018026734.tif 000020