(57)【要約】【課題】本開示は、所望の範囲のネットワーク構成を検出することを目的とする。【解決手段】本開示のネットワーク構成検出装置は、対象範囲のネットワーク構成に関する情報をデータベースから取得するＫＳＳインタフェースモジュール５２と、ＫＳＳインタフェースモジュール５２の取得した情報を用いて対象範囲に含まれる装置を特定し、特定した装置から、対象範囲のネットワーク構成を取得するＭＩＢ取得モジュール５４と、ＫＳＳインタフェースモジュール５２及びＭＩＢ取得モジュール５４の取得した情報を用いて、対象範囲のネットワーク構成を検出するインスタンス生成モジュール５６と、を備える。【選択図】図４
2019022007.tif 000002
【特許請求の範囲】
【請求項１】
統一された管理ポリシによって運用されている自律ネットワーク（ＡＳ：Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ）に含まれる対象範囲のネットワーク構成に関する情報を、自律ネットワークのネットワーク情報が格納されたデータベースから取得する記憶情報取得部と、
前記記憶情報取得部の取得した情報を用いて前記対象範囲に含まれる機器を特定し、特定した機器から、前記対象範囲のネットワーク構成のうちの前記記憶情報取得部の取得できなかった情報を取得する追加情報取得部と、
前記記憶情報取得部及び前記追加情報取得部の取得した情報を用いて、前記対象範囲のネットワーク構成を検出するネットワーク構成検出部と、
を備えるネットワーク構成検出装置。
【請求項２】
前記追加情報取得部は、前記対象範囲における経路を制御するネットワーク機器から、各ネットワーク機器が制御する下流ネットワークの情報を取得し、これを用いて前記対象範囲の論理ネットワーク構成を特定する、
請求項１に記載のネットワーク構成検出装置。
【請求項３】
前記追加情報取得部は、前記対象範囲に含まれるネットワーク機器のＩＰアドレスを前記データベースから取得し、これを用いて前記ネットワーク機器を特定する、
請求項１又は２に記載のネットワーク構成検出装置。
【請求項４】
前記追加情報取得部は、前記対象範囲において前記自律ネットワークに端末を接続する接続機器から、各接続機器に接続されている端末の物理アドレスの情報を取得し、これを用いて前記対象範囲に含まれる各端末の物理ネットワーク構成を特定する、
請求項１から３のいずれかに記載のネットワーク構成検出装置。
【請求項５】
前記追加情報取部は、前記対象範囲に含まれる各端末にアクセスすることで、前記対象範囲に含まれるネットワークサービス構成を特定する、
請求項１から４のいずれかに記載のネットワーク構成検出装置。
【請求項６】
請求項１から５のいずれかに記載のネットワーク構成検出装置と、
前記自律ネットワーク毎に備わり、前記自律ネットワークのネットワーク情報を前記データベースに格納するストレージサーバ装置と、
エンドノードからの要求に応じたネットワーク情報を、自装置の属する自律ネットワークから取得し、前記ストレージサーバ装置に提供する情報収集装置と、
エンドノードからの要求に応じたネットワーク情報を、前記ストレージサーバ装置に備わる前記データベースから取得し、要求のあったエンドノードに提供するアクセスサーバ装置と、
を備え、
前記ネットワーク構成検出装置は、エンドノードからの要求に応じた対象範囲のネットワーク構成の情報を、前記ストレージサーバ装置に出力し、
前記ストレージサーバ装置は、前記ネットワーク構成検出装置から取得したネットワーク構成の情報を、前記データベースに格納する、
ネットワーク構成検出システム。
【請求項７】
統一された管理ポリシによって運用されている自律ネットワーク（ＡＳ：Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ）に含まれる対象範囲のネットワーク構成に関する情報を、自律ネットワークのネットワーク情報が格納されたデータベースから取得する記憶情報取得手順と、
前記記憶情報取得手順で取得した情報を用いて前記対象範囲に含まれる機器を特定し、特定した機器から、前記対象範囲のネットワーク構成のうちの前記記憶情報取得手順で取得できなかった情報を取得する追加情報取得手順と、
前記記憶情報取得手順及び前記追加情報取得手順で取得した情報を用いて、前記対象範囲のネットワーク構成を検出するネットワーク構成検出手順と、
を備えるネットワーク構成検出装置が実行するネットワーク構成検出方法。
【請求項８】
請求項１から５のいずれかに記載のネットワーク構成検出装置に備わる各機能部をコンピュータに実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ネットワーク構成検出装置、ネットワーク構成検出システム、ネットワーク構成検出方法及びネットワーク構成検出プログラムに関する。
【背景技術】
【０００２】
ネットワーク情報を収集、蓄積、提供するシステムＫＡＮＶＡＳ（Ｋｎｏｗｌｅｄｇｅ  ｂａｓｅ  ｓｙｓｔｅｍ  ｉｎ  ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ  ｗｉｔｈ  ｇｅｎｅｒａｌ  Ｖｅｒｓａｔｉｌｉｔｙ、  Ａｖａｉｌａｂｉｌｉｔｙ、  ａｎｄ  Ｓｃａｌａｂｉｌｉｔｙ）が提案されている（例えば非特許文献１参照。）。ＫＡＮＶＡＳは、ネットワークから種々の情報を収集し、これを知識として表現して知識ベース（ＫＢ：  Ｋｎｏｗｌｅｄｇｅ  Ｂａｓｅ）に格納し、この知識をユーザに提供することによりネットワーク管理やアプリケーションに役立てる技術である（例えば、非特許文献３参照。）。
【０００３】
図１にＫＡＮＶＡＳのアーキテクチャを示す。ＫＡＮＶＡＳ１０はネットワークの情報を収集するＫＩＣ３０（ＫＡＮＶＡＳ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｏｌｌｅｃｔｏｒ）、ＫＳＳ２０（ＫＡＮＶＡＳ  Ｓｔｏｒａｇｅ  Ｓｅｒｖｅｒ）、ＫＡＳ１０（ＫＡＮＶＡＳ  Ａｃｃｅｓｓ  Ｓｅｒｖｅｒ）の３種類のモジュールを備える。ＫＩＣ３０が収集した情報は、ネットワークオントロジＢｏｎｓａｉ（非特許文献２）のインスタンスとして表現され、ＫＳＳ２０に格納される。しかし、ネットワークがどのようなノードやリンクから構成されているかというネットワーク構成情報に関しては、これを自動的にＢｏｎｓａｉのインスタンスとして表現する機能は備わっていない。したがって、人手によりネットワーク構成情報をＢｏｎｓａｉのインスタンスとして表現し、ＫＳＳ２０に格納しなければならない。これは煩雑な作業であり、間違いを犯しやすい。
【０００４】
（ＫＡＮＶＡＳの基本構成）
本開示に係るネットワーク構成検出システムは、統一された形式でネットワーク情報が管理されているＡＳ（Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ：統一された管理ポリシによって運用されているネットワークの範囲）ネットワーク毎に、アクセスサーバ装置、ストレージサーバ装置及び情報収集装置と、を備える。このようなシステムとしては、例えば、ＫＡＮＶＡＳアーキテクチャを備えるＫＡＮＶＡＳシステムが例示できる。
図１に、ＫＡＮＶＡＳシステムの構成例を示す。ＫＡＮＶＡＳシステムは、情報収集装置として機能するＫＡＮＶＡＳ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｏｌｌｅｃｔｏｒ（ＫＩＣ）３０、ストレージサーバ装置として機能するＫＡＮＶＡＳ  Ｓｔｏｒａｇｅ  Ｓｅｒｖｅｒ（ＫＳＳ）２０、及び、アクセスサーバ装置として機能するＫＡＮＶＡＳ  Ａｃｃｅｓｓ  Ｓｅｒｖｅｒ（ＫＡＳ）１０という３つの主要なモジュールを備える。ＫＡＳ１０は、管理者４２及びユーザ４３といったエンドノードの使用可能なアプリケーションである。
【０００５】
ＫＳＳ２０は論理的にはＡＳネットワーク４４に１つ存在する。負荷分散のため物理的には複数のノードに存在してもよいが、論理的には１つであるとする。ＫＡＳ１０とＫＩＣ３０はＡＳネットワーク４４の規模により、ＡＳネットワーク４４内に１つ設置される場合もあれば、負荷分散のため複数設置される場合もある。
【０００６】
ＫＩＣ３０は、ＡＳネットワーク４４から経路情報や機器情報などのさまざまなネットワーク情報を集める。例えば、経路情報はＲＦＣ２３２８で規定されるＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）やＲＦＣ４２７１で規定されるＢＧＰ−４（Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ  ４）などのプロトコルに参加して収集する。また、機器情報や統計情報は、ＲＦＣ３４１６で規定されるＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）やＲＦＣ６２４１で規定されるＮＥＴＣＯＮＦによって各機器にアクセスして収集する。ネットワークのフロー情報は、ＲＦＣ３１７６で規定されるｓＦｌｏｗやＲＦＣ３９５４で規定されるＮｅｔＦｌｏｗを利用して収集する。障害情報は、ＣＬＩＮＥＸ（特許文献１）などを利用して収集する。そして得られた情報をネットワークオントロジＢｏｎｓａｉのインスタンスとして表現し、知識ベースに格納する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許５８４５１３３号
【非特許文献】
【０００８】
【非特許文献１】川口慎司，「ＫＡＮＶＡＳ：  ネットワーク知識の活用に向けたオントロジを利用したオープンな情報共有基盤」，慶應義塾大学大学院理工学研究科開放環境科学専攻  修士論文，２０１６年３月．
【非特許文献２】三上啓，川口慎司，大島涼太，島松健太，近藤賢郎，鎌谷修，明石修，金子晋丈，寺岡文男，「ネットワークオントロジＢｏｎｓａｉを利用したネットワーク管理手法に関する一検討」，信学技報ＩＮ２０１６−８６，２０１７年１月１９日．
【非特許文献３】Ｒｙｏｔａ  Ｏｈｓｈｉｍａ，  Ｓｈｉｎｊｉ  Ｋａｗａｇｕｃｈｉ，  Ｏｓａｍｕ  Ｋａｍａｔａｎｉ，  Ｏｓａｍｕ  Ａｋａｓｈｉ，  Ｋｕｎｉｔａｋｅ  Ｋａｎｅｋｏ，  ａｎｄ  Ｆｕｍｉｏ  Ｔｅｒａｏｋａ，  “Ｃｏｎｓｔｒｕｃｔｉｏｎ  ｏｆ  Ｒｏｕｔｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｋｎｏｗｌｅｄｇｅ  Ｂａｓｅ  ｔｏｗａｒｄｓ  Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ”，  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ２０１５  ＡＣＭ  １０ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｆｕｔｕｒｅ  Ｉｎｔｅｒｎｅｔ，  ｐｐ．  ７６−８３，  Ｊｕｎｅ  ２０１５．
【発明の概要】
【発明が解決しようとする課題】
【０００９】
現在のＫＡＮＶＡＳでは、人手によりＡＳネットワークから情報を収集してネットワーク構成を検出し、ＫＳＳに格納しなければならない。これは煩雑な作業であり、間違いも犯しやすい。そこで本開示は、自動的にＡＳネットワークから情報を収集してネットワーク構成を検出することを目的とする。
【課題を解決するための手段】
【００１０】
本開示のネットワーク構成検出装置は、
統一された管理ポリシによって運用されている自律ネットワーク（ＡＳ：Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ）に含まれる対象範囲のネットワーク構成に関する情報を、自律ネットワークのネットワーク情報が格納されたデータベースから取得する記憶情報取得部と、
前記記憶情報取得部の取得した情報を用いて前記対象範囲に含まれる機器を特定し、特定した機器から、前記対象範囲のネットワーク構成のうちの前記記憶情報取得部の取得できなかった情報を取得する追加情報取得部と、
前記記憶情報取得部及び前記追加情報取得部の取得した情報を用いて、前記対象範囲のネットワーク構成を検出するネットワーク構成検出部と、
を備える。
【００１１】
本開示のネットワーク構成検出システムは、
本開示のネットワーク構成検出装置と、
前記自律ネットワーク毎に備わり、前記自律ネットワークのネットワーク情報を前記データベースに格納するストレージサーバ装置と、
エンドノードからの要求に応じたネットワーク情報を、自装置の属する自律ネットワークから取得し、前記ストレージサーバ装置に提供する情報収集装置と、
エンドノードからの要求に応じたネットワーク情報を、前記ストレージサーバ装置に備わる前記データベースから取得し、要求のあったエンドノードに提供するアクセスサーバ装置と、
を備え、
前記ネットワーク構成検出装置は、エンドノードからの要求に応じた対象範囲のネットワーク構成の情報を、前記ストレージサーバ装置に出力し、
前記ストレージサーバ装置は、前記ネットワーク構成検出装置から取得したネットワーク構成の情報を、前記データベースに格納する。
【００１２】
本開示のネットワーク構成検出方法は、
統一された管理ポリシによって運用されている自律ネットワーク（ＡＳ：Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ）に含まれる対象範囲のネットワーク構成に関する情報を、自律ネットワークのネットワーク情報が格納されたデータベースから取得する記憶情報取得手順と、
前記記憶情報取得手順で取得した情報を用いて前記対象範囲に含まれる機器を特定し、特定した機器から、前記対象範囲のネットワーク構成のうちの前記記憶情報取得手順で取得できなかった情報を取得する追加情報取得手順と、
前記記憶情報取得手順及び前記追加情報取得手順で取得した情報を用いて、前記対象範囲のネットワーク構成を検出するネットワーク構成検出手順と、
を備えるネットワーク構成検出装置が実行する。
【００１３】
本開示に係るネットワーク構成検出プログラムは、本開示に係るネットワーク構成検出装置に備わる各機能部をコンピュータに実現させるか、或いは、本開示に係るネットワーク構成検出方法に備わる各手順をコンピュータに実行させるための、プログラムである。本開示に係るネットワーク構成検出プログラムは、記録媒体に記録されていてもよいし、通信ネットワークなどの情報伝送媒体を介して流通可能であってもよい。
【発明の効果】
【００１４】
本開示によれば、自動的にＡＳネットワークから情報を収集してネットワーク構成を検出することができる。
【図面の簡単な説明】
【００１５】
【図１】ＫＡＮＶＡＳアーキテクチャの全体像の一例を示す。
【図２】ネットワークオントロジＢｏｎｓａｉの全体像の一例を示す。
【図３】提案するＫＡＮＶＡＳアーキテクチャの全体像の一例を示す。
【図４】ＫＩＧの内部構造の一例を示す。
【図５】実施形態に係るＩＰネットワーク構成の一例を示す。
【図６】実施形態に係る物理ネットワーク構成の一例を示す。
【図７】ルータ＃４、ホスト＃４及び＃５のインスタンスの一例を示す。
【図８】サーバマシン、ＨＴＴＰサーバ及びＳＭＴＰサーバのインスタンスの一例を示す。
【図９】本実施形態に係るネットワーク構成検出方法のフローチャートの一例を示す。
【図１０】ステップＳ１０２終了後に得られたネットワーク構成の一例を示す。
【図１１】ステップＳ１０３終了後に得られたネットワーク構成の一例を示す。
【図１２】ステップＳ１０４終了後に得られたネットワーク構成の一例を示す。
【図１３】ステップＳ１０５終了後に得られたネットワーク構成の一例を示す。
【図１４】ステップＳ１０６終了後に得られたネットワーク構成の一例を示す。
【図１５】ＨＴＴＰサーバのインスタンスの一例を示す。
【図１６】ルータ＃４のインスタンスの一例を示す。
【発明を実施するための形態】
【００１６】
以下、本開示の実施形態について、図面を参照しながら詳細に説明する。なお、本開示は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本開示は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００１７】
図２にネットワークオントロジＢｏｎｓａｉの全体像を示す。図において楕円はクラスを表し、矢印はクラス間の関係を表す。クラス間の関係は双方向に定義できるが，図が煩雑になるため、一方向の関係のみを片方向の矢印で示している。Ｂｏｎｓａｉでは、ネットワーク構成を以下に示す４階層、５カテゴリでモデル化している。
【００１８】
・物理ネットワーク構成Ｅ４：物理的な機器である物理ノードＥ３（コンピュータ，ルータ、スイッチ、アクセスポイントなど）、物理ノードＥ３が備える物理的なネットワークインタフェースである物理インタフェースＥ２（Ｅｔｈｅｒｎｅｔ（登録商標）インタフェース，Ｗｉ−Ｆｉ（登録商標）インタフェースなど）、物理インタフェースＥ２に接続する物理的な回線である物理リンクＥ１（撚り線対、光ファイバ、無線など）によってネットワーク構成を表現する。
・論理ネットワーク構成Ｄ４：論理的な機器である論理ノードＤ３（仮想マシン、仮想スイッチ、物理機器など）、論理的な機器が備える論理的なネットワークインタフェースである論理インタフェースＤ２（仮想インタフェース、トンネルインタフェース、物理インタフェースなど）、論理インタフェースに接続する論理的な回線である論理リンクＤ１（仮想ＬＡＮ、物理回線など）によって論理ネットワーク構成Ｄ４を表現する。
・ＩＰネットワーク構成Ｃ４：論理的な回線であるＩＰサブネットＣ１、ＩＰサブネットＣ１を構成する論理的な機器であるＩＰノードＣ３、ＩＰノードＣ３が備える論理的なネットワークインタフェースであるＩＰインタフェースＣ２によってネットワーク構成を表現する。
・ネットワークサービス構成Ｂ３：ネットワーク上のサービスであるネットワークサービスＢ１を提供するサービスエンティティＢ２が、どの論理ノードＤ３上で動作するかを表現する。ネットワークサービスＢ１には、どのようなサービス提供範囲を持つかが含まれていてもよい。
・運用ネットワーク構成Ａ４：ＩＰサブネットＣ１がどの自律ネットワークであるＡＳＡ３に属し、それぞれのＡＳＡ３がどのインターネットサービスプロバイダＡ２に属し、それぞれのＡＳＡ３がどのレジストリＡ１の管理下にあるかを表現する。
【００１９】
（本開示のＫＡＮＶＡＳ）
本開示では、図３に示すように、元々のＫＡＮＶＡＳアーキテクチャに、ネットワーク構成検出装置として機能するＫＩＧ５０（ＫＡＮＶＡＳ  Ｉｎｓｔａｎｃｅ  Ｇｅｎｅｒａｔｏｒ）を新たに導入する。ＫＩＧ５０は、ＡＳネットワーク４４に接続した機器で動作し、指定された対象範囲（たとえば企業内ネットワーク）のネットワーク構成を自動的に収集してネットワーク構成を検出し、ＫＳＳ２０のデータベースに格納する。データベースへの格納は、予め定められたインスタンスで表現されていることが好ましく、例えば、Ｂｏｎｓａｉのインスタンスとして表現されていることが好ましい。ＫＩＧ５０は、ＡＳネットワーク４４に含まれる各機器と通信する。ＡＳネットワーク４４に含まれる各機器は、対象範囲における経路を制御するネットワーク機器、ＡＳネットワーク４４に端末を接続する接続機器、及び、端末すなわちホストを含む。デプロイメントを容易にするため、ＫＩＧ５０は、既存のプロトコルを利用してネットワーク機器と通信することが好ましい。
【００２０】
図４にＫＩＧの内部構造を示す。ＫＩＧ５０は、ＡＰＩモジュール５１と、記憶情報取得部として機能するＫＳＳインタフェースモジュール５２と、コントローラモジュール５３と、追加情報取得部として機能するＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  ｉｎｆｏｒｍａｔｉｏｎ  ｂａｓｅ）取得モジュール５４及びサービス判定モジュール５５と、ネットワーク構成検出部として機能するインスタンス生成モジュール５６と、を備える。ＫＩＧ５０は、コンピュータにプログラムを実行させることで、ＫＩＧ５０に備わる各機能部を実現させたものであってもよい。
【００２１】
ＡＰＩモジュール５１はユーザ４３やアプリケーション４１がＫＩＧ５０にアクセスするためのインタフェースを提供する。ＫＳＳインタフェースモジュール５２は、ＫＩＧ５０がＫＳＳ２０のデータベースに蓄えられている情報を得たり、ＫＩＧ５０が検出したネットワーク構成の情報をＫＳＳ２０のデータベースに蓄える処理を行う。これにより、ＫＳＳインタフェースモジュール５２はＡＳＡ３のネットワーク情報が格納されたデータベースから取得することができる。
【００２２】
ＫＳＳインタフェースモジュール５２は、ＫＳＳ２０の任意のデータベースから情報を取得する。例えば、図１及び図３では、ＫＳＳ２０のデータベースの一例として、ＲＤＦ（Ｒｅｓｏｕｒｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｆｒａｍｅｗｏｒｋ）で記述されたデータを保存するＲＤＦデータベースと時系列データを保存する時系列データベースの２種類のデータベースが備わる例を示す。この場合、ＫＳＳインタフェースモジュール５２は、ＲＤＦデータベース及び時系列データベースのうちのいずれのデータベースから情報を取得してもよい。
【００２３】
コントローラモジュール５３はＫＩＧ５０の動作を制御する。ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  ｉｎｆｏｒｍａｔｉｏｎ  ｂａｓｅ）取得モジュール５４はネットワーク機器にＳＮＭＰでアクセスし、ＲＦＣ１２１３およびＲＦＣ３４１８で規定される各種のＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）を取得する。サービス判定モジュール５５はネットワーク機器にアクセスし、サービスが動作しているかを判定する。インスタンス生成モジュール５６は、ＭＩＢ取得モジュール５４やサービス判定モジュール５５が得た情報を基に、対象範囲のネットワーク構成をＢｏｎｓａｉのインスタンスとして表現し、ＫＳＳ２０に格納する。
【００２４】
以下に、例を用いてＫＩＧの動作を示す。図５にＩＰサブネットの観点でみたＡＳネットワークの例を示す。このＡＳネットワークは５台のルータ（ルータ＃１からルータ＃５）と６つのＩＰサブネット（サブネット＃１からサブネット＃６）から構成されている。
【００２５】
サブネット＃１にはサーバマシン、ＨＴＴＰサーバ（Ｗｅｂサーバ）、ＳＭＴＰサーバ（メールサーバ）、ＤＮＳサーバ、ＫＳＳ２０、ＫＩＧ５０が接続している。また、ルータ＃５ではＤＨＣＰサーバが動作している。各ルータ間では経路制御プロトコルとしてＯＳＰＦが動作しているものとする。ＫＩＣ３０はＯＳＰＦのＬＳＤＢ（Ｌｉｎｋ  Ｓｔａｔｅ  Ｄａｔａｂａｓｅ）を収集し、ＫＳＳ２０に格納しているものとする。
【００２６】
図６に上記ＡＳネットワークの物理構成を示す。すべてのサブネットはスイッチ（スイッチＳＷ＃１からスイッチＳＷ＃５）を介した構成となっている。このうち、サブネット＃４と＃５はスイッチＳＷ＃４を共有したＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）で構成されている。
【００２７】
サブネット＃１にはサーバマシン、ＨＴＴＰサーバ、ＳＭＴＰサーバ、ＤＮＳサーバ、ＫＳＳ２０、ＫＩＧ５０が接続するが、ＨＴＴＰサーバとＳＭＴＰサーバは仮想マシンであり、サーバマシン上で動作している。サブネット＃６にはＷｉ−Ｆｉのアクセスポイント＃１が設置され、ホスト＃７がＷｉ−Ｆｉで接続している。各スイッチやアクセスポイント＃１ではＩＥＥＥ  ８０２．１ＡＢで規定されるＬＬＤＰ（Ｌｉｎｋ  Ｌａｙｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）が動作しているとする。
【００２８】
本実施形態では、図６に示した物理的なネットワーク構成をＢｏｎｓａｉのインスタンスとして表現するが、図７及び図８にインスタンス表現の一部を示す。図７はルータ＃４，スイッチ＃４、ホスト＃４及びホスト＃５から構成されるネットワークを、物理ネットワーク構成Ｅ４、論理ネットワーク構成Ｄ４、ＩＰネットワーク構成Ｃ４の視点からＢｏｎｓａｉのインスタンスとして表現したものである。また、図８はサーバマシン、ＨＴＴＰ  サーバ、ＳＭＴＰサーバから構成されるネットワークを、物理ネットワーク構成Ｅ４、論理ネットワーク構成Ｄ４、ＩＰネットワーク構成Ｃ４、ネットワークサービス構成Ｂ３の観点からＢｏｎｓａｉのインスタンスとして表現したものである。
【００２９】
以下にＫＩＧ５０の動作を示す。ユーザまたはアプリケーションが、ＫＩＧ５０のＡＰＩモジュール５１を介してネットワーク構成のインスタンス生成モジュール５６を起動したとする。ネットワーク構成を検出する対象範囲は、ネットワークプリフィクス等で指定されるものとする。この例では、サブネット＃１から＃６を含むネットワークプリフィクスが指定されたものとする。
【００３０】
図９に、本実施形態に係るネットワーク構成検出方法のフローチャートを示す。本実施形態に係るネットワーク構成検出方法は、ＫＩＧ５０が、記憶情報取得手順（Ｓ１０１）と、追加情報取得手順（Ｓ１０２〜Ｓ１０７）と、ネットワーク構成検出手順（Ｓ１０８〜Ｓ１０９）を順に実行する。
【００３１】
ステップＳ１０１．ＩＰネットワーク構成情報の取得（１）：対象範囲に存在するルータによるＩＰネットワーク構成情報の取得。
図６の例では、ＫＩＧ５０のコントローラモジュール５３は、ＫＳＳインタフェースモジュール５２を介してＫＳＳ２０にアクセスし、対象範囲のネットワーク構成に関する情報をデータベースから取得する。ＫＳＳ２０のデータベースに対象範囲のＬＳＤＢが格納されている場合、コントローラモジュール５３は、ルータ＃１から＃５のＩＰアドレスが記載されたＬＳＤＢを得る。これにより、ＫＩＧ５０は、ルータ＃１から＃５のＩＰノード（図２に示す符号Ｃ３）を知ることができる。すなわち、図７に示すＩＰノード（ルータ＃４）Ｃ３−３が特定できる。
【００３２】
ステップＳ１０２．ＩＰネットワーク構成情報の取得（２）：対象範囲に存在するルータのインタフェース情報およびルータ間関係情報の取得。
図６の例では、次にＫＩＧ５０のコントローラモジュール５３はＭＩＢ取得モジュール５４を介してルータ＃１から＃５にＳＮＭＰで問合せ、各ルータが持つインタフェースの情報（インタフェースの種類、ＩＰアドレス、ネットマスクなど）を得る。たとえば、ＭＩＢで定義されているＩｆＴｙｐｅ，ｉｐＡｄＥｎｔＡｄｄｒ，ｉｐＡｄＥｎｔＮｅｔＭａｓｋなどのオブジェクトを参照する。これにより、ＫＩＧ５０は、ルータ＃１から＃５のＩＰサブネットＣ１、ＩＰインタフェースＣ２及びＩＰネットワーク構成Ｃ４を得ることができる。
【００３３】
すなわち、図１０に示すような、以下の情報を得る。
・サブネット＃１には、ルータ＃１，ルータ＃２，ルータ＃３が接続している。
・サブネット＃２には、ルータ＃２，ルータ＃４，ルータ＃５が接続している。
・サブネット＃３には、ルータ＃３が接続している。
・サブネット＃４には、ルータ＃４が接続している。
・サブネット＃５には、ルータ＃４が接続している。
・サブネット＃６には、ルータ＃５が接続している。
これらの情報のうち、ルータ＃４に関する情報をインスタンス化したものが、図７に示すＩＰインタフェースＣ２−２、Ｃ２−３、ＩＰサブネットＣ１−１、Ｃ１−２である。
【００３４】
ステップＳ１０３．ＩＰネットワーク構成情報の取得（３）：対象範囲に存在するルータ以外のＬａｙｅｒ−３機器情報の取得。
図６の例では、ＫＩＧ５０のコントローラモジュール５３はＭＩＢ取得モジュール５４を介してルータ＃１から＃５にＳＮＭＰで問合せ、各サブネットに接続する機器のＩＰアドレスとＭＡＣアドレスの対応表を得る。たとえば、ＭＩＢで定義されているｉｐＮｅｔＴｏＭｅｄｉａＴａｂｌｅなどのオブジェクトを参照する。これにより、ＫＩＧ５０は、各装置のＩＰノードＣ３、論理ノードＤ３、物理ノードＥ３を得ることができる。
【００３５】
すなわち、図１１に示すような、以下の情報を得る。
・サブネット＃１には、ルータ＃１、＃２、＃３、ＫＩＧ５０、ＫＳＳ２０以外に５台の機器が接続している。
・サブネット＃２には、ルータ＃２、＃４、＃５以外に２台の機器が接続している．
・サブネット＃３には、ルータ＃３以外に２台の機器が接続している。
・サブネット＃４には、ルータ＃４以外に２台の機器が接続している。
・サブネット＃５には、ルータ＃４以外に２台の機器が接続している。
・サブネット＃６には、ルータ＃５以外に４台の機器が接続している。
【００３６】
これらの情報のうち、ルータ＃４、ホスト＃４、ホスト＃５に関する情報をインスタンス化したものが、図７に示すＩＰノードＣ３−１、Ｃ３−２、Ｃ３−３、物理ノードＥ３−３、Ｅ３−１、Ｅ３−２であり、サーバマシン、ＳＭＴＰサーバ、ＨＴＴＰサーバに関する情報をインスタンス化したものが、図８に示すＩＰノードＣ３−４、Ｃ３−５、Ｃ３−６、物理ノードＥ３−５である。
【００３７】
ステップＳ１０４．物理／論理ネットワーク構成情報の取得（１）：対象範囲に存在するＬａｙｅｒ−２機器情報の取得。
図６の例では、ＫＩＧ５０のコントローラモジュール５３は、ＭＩＢ取得モジュール５４を介してＳＮＭＰで各ルータに問合せ、ＬＬＤＰの情報を得る。たとえばＬＬＤＰ−ＭＩＢで定義されているｌｌｄｐＲｅｍＴａｂｌｅなどのオブジェクトを参照する。また、スイッチのようにＬａｙｅｒ−２機器でもＩＰアドレスを持つものは、その値も得る。これにより、ＫＩＧ５０は、接続機器として機能する物理ノードＥ３を得ることができる。
【００３８】
すなわち、図１２に示すような、以下の情報を得る。
・サブネット＃１には、スイッチＳＷ＃１が接続している。
・サブネット＃２には、スイッチＳＷ＃２が接続している。
・サブネット＃３には、スイッチＳＷ＃３が接続している。
・サブネット＃４には、スイッチＳＷ＃４−１が接続している。
・サブネット＃５には、スイッチＳＷ＃４−２が接続している。
・サブネット＃６には、スイッチＳＷ＃５とアクセスポイント＃１が接続している。
これらの情報のうち、ＳＷ＃４に関する情報をインスタンス化したものが、図７に示す物理ノードＥ３−４−１、Ｅ３−４−２である。
【００３９】
ステップＳ１０５．物理／論理ネットワーク構成情報の取得（２）：対象範囲に存在するＬａｙｅｒ−３機器とＬａｙｅｒ−２機器間の関係情報の取得。
コントローラモジュール５３は、対象範囲における経路を制御するネットワーク機器から、各ネットワーク機器が制御する下流ネットワークの情報を取得し、これを用いて前記対象範囲の論理ネットワーク構成を特定する。図６の例では、ＫＩＧ５０のコントローラモジュール５３は、ＭＩＢ取得モジュール５４を介してスイッチＳＷ＃１からＳＷ＃５とアクセスポイント＃１にＳＮＭＰで問合せ、各スイッチやアクセスポイント＃１に接続する機器のＭＡＣアドレスを得る。たとえば、ＭＩＢで定義されているｄｏｔ１ｄＴｐＰｏｒｔＴａｂｌｅなどのオブジェクトを参照する。この結果とステップＳ１０３で得たＭＡＣアドレスを突き合わせることで、ＫＩＧ５０は、論理ノードＤ３、論理インタフェースＤ２、論理リンクＤ１、論理ネットワーク構成Ｄ４、物理インタフェースＥ２、物理リンクＥ１、物理ネットワーク構成Ｅ４を得ることができる。
【００４０】
すなわち、図１３に示すような、以下の情報を得る。
・スイッチＳＷ＃１にはルータ＃１、ルータ＃２、ルータ＃３、ＫＳＳ２０、ＫＩＧ５０、ホスト＃１−１、ホスト＃１−２、ホスト＃１−３、ホスト＃１−４が接続している。
・スイッチＳＷ＃２にはルータ＃２、ルータ＃４、ルータ＃５、ホスト＃２が接続している。
・スイッチＳＷ＃４−１とスイッチＳＷ＃４−２は、物理的には１台のスイッチ（スイッチＳＷ＃４）である。
・サブネット＃４とサブネット＃５はＶＬＡＮであり、スイッチＳＷ＃４を共有している。
・スイッチＳＷ＃４にはルータ＃４、ホスト＃４、ホスト＃５が接続している。
・スイッチＳＷ＃５にはホスト＃６とアクセスポイント＃１が接続している。
・アクセスポイント＃１にはホスト＃７が接続している。
【００４１】
これらの情報のうち、ルータ＃４、ホスト＃４、ホスト＃５に関する情報をインスタンス化したものが、図７に示す論理ノードＤ３−１、Ｄ３−２、Ｄ３−３、論理インタフェースＤ２−１、Ｄ２−２、Ｄ２−３、Ｄ２−４、Ｄ２−５、Ｄ２−６、Ｄ２−７、Ｄ２−８、論理リンクＤ１−１、Ｄ１−２、Ｄ１−３、Ｄ１−４、物理ノードＥ３−４、物理インタフェースＥ２−１、Ｅ２−２、Ｅ２−３、Ｅ２−４、Ｅ２−５、Ｅ２−６、物理リンクＥ１−１、Ｅ１−２、Ｅ１−３となり、サーバマシン、ＳＭＴＰサーバ、ＨＴＴＰサーバに関する情報をインスタンス化したものが、図８に示す論理ノードＤ３−４、Ｄ３−５、Ｄ３−６、論理インタフェースＤ２−５、Ｄ２−６、Ｄ２−７、論理リンクＤ１−３、物理インタフェースＥ２−７、物理リンクＥ１−４である。
【００４２】
ステップＳ１０６．論理ネットワーク構成情報と物理ネットワーク構成情報の識別。
図６の例では、ＫＩＧ５０のコントローラモジュール５３はＭＩＢ取得モジュール５４を介して各ホストにＳＮＭＰで問合せ、仮想マシン環境を実現するハイパバイザが動作しているか、また動作している場合、どのような仮想マシンが動作しているかを得る。たとえば、ＲＦＣ７６６６で規定されるＭＩＢで定義されているｖｍＭＩＢなどのオブジェクトを利用する。この結果、ＫＩＧ５０は、ホスト＃１−１上でホスト＃１−２とホスト＃１−３が仮想マシン（ＶＭ）として動作していることを知る。すなわち、図１４に示すような情報を得る。
【００４３】
この情報をインスタンス化したものが、図８に示す論理ノードＤ３−４、Ｄ３−５、Ｄ３−６と物理ノードＥ３−５との接続線、論理インタフェースＤ２−５、Ｄ２−６、Ｄ２−７と物理インタフェースＥ２−７との接続線、論理インタフェースＤ２−５、Ｄ２−６、Ｄ２−７及びと物理リンクＥ１−４との接続線、論理リンクＤ１−３と物理ノードＥ３−５、物理インタフェースＥ２−７、物理リンクＥ１−４との接続線である。
【００４４】
ステップＳ１０７．ネットワークサービス構成情報の取得。
図６の例では、ＫＩＧ５０のコントローラモジュール５３は、サービス判定モジュール５５を介して、コントローラモジュール５３は、対象範囲に含まれる各端末すなわち各ホストにアクセスし、対象範囲に含まれるネットワークサービス構成Ｂ３を特定する。アクセスは、例えば、ルータ＃１から＃５、ホスト＃１−１から＃７における、ネットワークサーバに対応するポートへのアクセスである。アクセスするポートはサービスに応じたポートであり、たとえば、ＨＴＴＰサーバは８０番ポート、ＳＭＴＰサーバは２５番ポート、ＤＮＳサーバは５３番ポート、ＤＨＣＰサーバは６７番ポートとなる。具体的には、ＨＴＴＰサーバやＳＭＴＰサーバのようにＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を使用する場合は、対応するポート番号を指定してＴＣＰコネクションの確立を試みる。
【００４５】
ＴＣＰコネクションが確立された場合、対応するサーバが動作していると判断する。ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）  ｐｏｒｔ  ｕｎｒｅａｃｈａｂｌｅが返されたり、ＴＣＰコネクション確立が失敗したりする場合は、対応するサーバが動作していないと判断する。
【００４６】
ＤＮＳサーバやＤＨＣＰサーバのようにＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）を使用する場合は、対応するポート番号にＵＤＰセグメントを送信する。ＩＣＭＰ  ｐｏｒｔ  ｕｎｒｅａｃｈａｂｌｅやエラーを示すセグメントが返された場合は、対応するサーバは動作していないと判断する。それ以外の場合は，対応するサーバが動作していると判断する。
【００４７】
この結果、ホスト＃１−２でＨＴＴＰサーバが動作し、ホスト＃１−３でＳＭＴＰサーバが動作し、ホスト＃１−４でＤＮＳサーバが動作し、ルータ＃５でＤＨＣＰサーバが動作することを知る。これにより、ＫＩＧ５０はネットワークサービスＢにおけるサービスエンティティＢ２、ネットワークサービスＢ１及びネットワークサービス構成Ｂ３を得ることができる。すなわち、図１４に示すような物理構成の情報を得る。この情報をインスタンス化したものが、図８に示すサービスエンティティＢ２−１、Ｂ２−２、Ｂ２−３、ネットワークサービスＢ３−１、Ｂ３−２である。
【００４８】
ステップＳ１０２〜Ｓ１０７により、ＫＳＳインタフェースモジュール５２の取得した情報を用いて対象範囲に含まれる機器を特定し、特定した機器から、対象範囲のネットワーク構成のうちのＫＳＳインタフェースモジュール５２の取得できなかった情報を取得することができる。
【００４９】
ステップＳ１０８．
ＫＩＧ５０のコントローラモジュール５３は、得られたネットワーク構成の情報をインスタンス生成モジュール５６に渡す。インスタンス生成モジュール５６は、対象範囲のネットワーク構成を予め定められた形式で表しインスタンスを生成する。本開示に変換するインスタンスは任意であるが、例えば、図７及び図８に示すＢｏｎｓａｉによるインスタンス表現や、図１５及び図１６に示すようなインスタンス表現に変換する。
【００５０】
ステップＳ１０９．
ＫＩＧ５０のコントローラモジュール５３は、ＫＳＳインタフェースモジュール５２を介して得られたインスタンス表現をＫＳＳ２０に送信する。
【００５１】
（発明によって生じる効果）
・本開示は、ＫＡＮＶＡＳにＫＩＧ５０を導入することにより、自動的に指定した対象範囲のネットワーク構成を検出し、ネットワーク構成の情報をＢｏｎｓａｉなどの予め定められた形式のインスタンスとして表現し、ＫＳＳ２０のデータベースに格納することができる。
・ＳＮＭＰ、ＬＬＤＰ、ＴＣＰ、ＵＤＰといった既存のプロトコルを利用しており、ネットワーク機器の種類を判定が容易である。
なお、本開示の各装置は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
【産業上の利用可能性】
【００５２】
本開示は情報通信産業に適用することができる。
【符号の説明】
【００５３】
１０：ＫＡＮＶＡＳ  Ａｃｃｅｓｓ  Ｓｅｒｖｅｒ（ＫＡＳ）
１１：ノウハウ（Ｋｎｏｗ−Ｈｏｗ）データベース
１２：ＫＡＳ情報処理モジュール
１３：ＫＡＳ要求処理モジュール
１４Ｋ：ＫＡＮＶＡＳ  ＡＰＩモジュール
１４Ｒ：ＲＥＳＴ  ＡＰＩモジュール
２０：ＫＡＮＶＡＳ  Ｓｔｏｒａｇｅ  Ｓｅｒｖｅｒ（ＫＳＳ）
２１Ｒ：プライベートデータベース
２１Ｕ：パブリックデータベース
２２：ＫＳＳ情報処理モジュール
２３：ＫＳＳ要求処理モジュール
２４：ＳＰＡＲＱＬ  ＡＰＩ
２５：ＫＳＳ情報収集モジュール
２６：抽象化処理モジュール
２７：ＫＳＳ−ＫＳＳ送受信モジュール
２８Ｉ：推論規則格納モジュール
２８Ｊ：公開判定規則格納モジュール
２８Ｏ：オントロジ格納モジュール
３０：ＫＡＮＶＡＳ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｏｌｌｅｃｔｏｒ（ＫＩＣ）
３１：ＫＩＣ情報収集モジュール
３２：経路情報収集モジュール
３３：機器管理情報収集モジュール
３４：フロー情報収集モジュール
３５：障害情報収集モジュール
４１：アプリケーション
４２：管理者用エンドノード
４３：ユーザ用エンドノード
４４：ＡＳネットワーク
５０：ＫＡＮＶＡＳ  Ｉｎｓｔａｎｃｅ  Ｇｅｎｅｒａｔｏｒ（ＫＩＧ）
５１：ＡＰＩモジュール
５２：ＫＳＳインタフェースモジュール
５３：コントローラモジュール
５４：ＭＩＢ取得モジュール
５５：サービス判定モジュール
５６：インスタンス生成モジュール
【図１】
2019022007.tif 000003
【図２】
2019022007.tif 000004
【図３】
2019022007.tif 000005
【図４】
2019022007.tif 000006
【図５】
2019022007.tif 000007
【図６】
2019022007.tif 000008
【図７】
2019022007.tif 000009
【図８】
2019022007.tif 000010
【図９】
2019022007.tif 000011
【図１０】
2019022007.tif 000012
【図１１】
2019022007.tif 000013
【図１２】
2019022007.tif 000014
【図１３】
2019022007.tif 000015
【図１４】
2019022007.tif 000016
【図１５】
2019022007.tif 000017
【図１６】
2019022007.tif 000018