(57)【要約】【課題】ネットワークシステムの検証環境を自動的に生成する。【解決手段】計算機システムは、メモリを備え、設計書情報と、機能情報と、構成情報とを取得し、構成情報に基づいて、トポロジ毎に、当該トポロジによって接続される装置と他の装置とを、複数の装置群に分類し、各装置群に階層を割り当て、設計書情報、機能情報及び構成情報に基づいて、ネットワーク構成情報を生成し、同一のトポロジ毎かつ同一の階層毎に、各装置群のネットワーク構成情報を比較することによって、ネットワーク構成情報が一致する第１の装置群及び第２の装置群のネットワーク構成情報がメモリに保持されているか否かを判定し、第１の装置群及び第２の装置群のネットワーク構成情報がメモリに保持されている場合、第２の装置群のネットワーク構成情報をメモリから削除し、メモリに保持された装置群のネットワーク構成情報によって、検証環境を構築するための情報を生成する。【選択図】図２
2013042332.tif 000002
【特許請求の範囲】
【請求項１】
複数の装置が所定のトポロジによって接続されるネットワークシステムの検証環境を構築するための情報を生成する計算機システムであって、
前記各装置は、前記各装置によって構成されるトポロジを実現するための機能を有し、
前記各装置は、前記装置間の接続に関連して所定の階層が割り当てられ、
前記計算機システムは、
メモリを備え、
前記各装置が有する機能の情報を含む設計書情報と、前記機能に対応する前記各トポロジの情報を含む機能情報と、前記各装置が接続されるトポロジの情報、前記各装置に割り当てられた階層の情報、及び当該トポロジによって接続される他の前記装置の情報を含む構成情報とを取得し、
前記設計書情報、前記機能情報及び前記構成情報を、前記メモリに保持し、
前記構成情報に基づいて、前記トポロジ毎に、当該トポロジによって接続される前記装置と前記他の装置とを、複数の装置群に分類し、
前記構成情報に基づいて、前記各装置群に前記階層のいずれかを割り当て、
前記設計書情報、前記機能情報及び前記構成情報に基づいて、前記各装置群が有する機能を示すネットワーク構成情報を生成し、
前記メモリに、前記ネットワーク構成情報を保持し、
同一の前記トポロジ毎、かつ、同一の前記階層毎に、前記各装置群の前記ネットワーク構成情報を比較することによって、前記ネットワーク構成情報が一致する第１の装置群及び第２の装置群の前記ネットワーク構成情報が前記メモリに保持されているか否かを判定し、
前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されている場合、前記第２の装置群の前記ネットワーク構成情報を前記メモリから削除し、
前記メモリに保持された前記装置群の前記ネットワーク構成情報によって、検証環境を構築するための情報を生成することを特徴とする計算機システム。
【請求項２】
前記所定の階層は、最上位の階層と最下位の階層とがあらかじめ定義され、
前記計算機システムは、
第１のトポロジ及び第１の階層の前記各装置群の前記ネットワーク構成情報を比較することによって、前記第１の階層の前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されているか否かを判定し、
前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されている場合、前記第１の階層よりも階層が低く、かつ、前記第１の装置群のネットワーク構成情報が一致し、かつ、前記第１のトポロジの第３の装置群の前記ネットワーク構成情報が、前記メモリに保持されているか否かを判定し、
前記判定の結果、前記第３の装置群が前記メモリに保持されている場合、前記第１の装置群及び前記第２の装置群の前記ネットワーク構成情報を、前記メモリから削除し、
前記第１の階層よりも階層が高い第２の階層を、前記第１の階層として、前記第１のトポロジ及び第１の階層の前記各装置群の前記ネットワーク構成情報を比較することを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記ネットワーク構成情報は、前記各装置群に含まれる前記装置の数、前記各装置群が有する機能、前記機能の数、前記各装置群に含まれる前記装置の種類、及び、前記装置の種類の数を含む複数の項目を示し、
前記計算機システムは、
前記ネットワーク構成情報が示す前記各項目を比較することによって、前記ネットワーク構成情報が一致する前記装置群の前記ネットワーク構成情報が前記メモリに保持されているか否かを判定することを特徴とする請求項２に記載の計算機システム。
【請求項４】
前記トポロジは、単体、ピアツーピア、及び、スター型を含み、
前記装置は、少なくとも一つのトポロジによって接続されることを特徴とする請求項３に記載の計算機システム。
【請求項５】
複数の装置が所定のトポロジによって接続されるネットワークシステムの検証環境を構築するための情報を生成する計算機システムによる検証環境生成方法であって、
前記各装置は、前記各装置によって構成されるトポロジを実現するための機能を有し、
前記各装置は、前記装置間の接続に関連して所定の階層が割り当てられ、
前記計算機システムは、メモリを備え、
前記方法は、
前記計算機システムが、前記各装置が有する機能の情報を含む設計書情報と、前記機能に対応する前記各トポロジの情報を含む機能情報と、前記各装置が接続されるトポロジの情報、前記各装置に割り当てられた階層の情報、及び当該トポロジによって接続される他の前記装置の情報を含む構成情報とを取得し、
前記計算機システムが、前記設計書情報、前記機能情報及び前記構成情報を、前記メモリに保持し、
前記計算機システムが、前記構成情報に基づいて、前記トポロジ毎に、当該トポロジによって接続される前記装置と前記他の装置とを、複数の装置群に分類し、
前記計算機システムが、前記構成情報に基づいて、前記各装置群に前記階層のいずれかを割り当て、
前記計算機システムが、前記設計書情報、前記機能情報及び前記構成情報に基づいて、前記各装置群が有する機能を示すネットワーク構成情報を生成し、
前記計算機システムが、前記メモリに、前記ネットワーク構成情報を保持し、
前記計算機システムが、同一の前記トポロジ毎、かつ、同一の前記階層毎に、前記各装置群の前記ネットワーク構成情報を比較することによって、前記ネットワーク構成情報が一致する第１の装置群及び第２の装置群の前記ネットワーク構成情報が前記メモリに保持されているか否かを判定し、
前記計算機システムが、前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されている場合、前記第２の装置群の前記ネットワーク構成情報を前記メモリから削除し、
前記計算機システムが、前記メモリに保持された前記装置群の前記ネットワーク構成情報によって、検証環境を構築するための情報を生成することを特徴とする検証環境生成方法。
【請求項６】
前記所定の階層は、最上位の階層と最下位の階層とがあらかじめ定義され、
前記方法は、
前記計算機システムが、第１のトポロジ及び第１の階層の前記各装置群の前記ネットワーク構成情報を比較することによって、前記第１の階層の前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されているか否かを判定し、
前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されている場合、前記計算機システムが、前記第１の階層よりも階層が低く、かつ、前記第１の装置群のネットワーク構成情報が一致し、かつ、前記第１のトポロジの第３の装置群の前記ネットワーク構成情報が、前記メモリに保持されているか否かを判定し、
前記判定の結果、前記第３の装置群が前記メモリに保持されている場合、前記計算機システムが、前記第１の装置群及び前記第２の装置群の前記ネットワーク構成情報を、前記メモリから削除し、
前記計算機システムが、前記第１の階層よりも階層が高い第２の階層を、前記第１の階層として、前記第１のトポロジ及び第１の階層の前記各装置群の前記ネットワーク構成情報を比較することを特徴とする請求項５に記載の検証環境生成方法。
【請求項７】
前記ネットワーク構成情報は、前記各装置群に含まれる前記装置の数、前記各装置群が有する機能、前記機能の数、前記各装置群に含まれる前記装置の種類、及び、前記装置の種類の数を含む複数の項目を示し、
前記方法は、
前記計算機システムが、前記ネットワーク構成情報が示す前記各項目を比較することによって、前記ネットワーク構成情報が一致する前記装置群の前記ネットワーク構成情報が前記メモリに保持されているか否かを判定することを特徴とする請求項６に記載の検証環境生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムに関し、特に、ネットワークシステムの検証環境を生成する計算機システムに関する。
【背景技術】
【０００２】
複数の装置を有するネットワークシステムにおいて、各装置は、様々な物理構造（トポロジ）によって接続される。トポロジには、例えば、一台の装置に複数の装置が接続されるスター型、及び、各装置が二つの装置に接続されるリング型等がある。
【０００３】
このようなネットワークシステムを構築するにあたり、開発者は、実際の運用において用いられる本番環境と、本番環境を検証するための検証環境とを構築する。この際、検証環境を構築する場合、運用の要件を満たす本番環境を設計又は構築してから、検証環境のためのネットワークシステムを設計するのが一般的である。
【０００４】
従来技術には、仮想ネットワークシステムを構築することによって、本番環境のネットワークシステムの動作を検証するシステムが提案されている（例えば、特許文献１参照）。また、ルータを検証するためのルーティングプロトコル制御ソフトウェアを搭載したシステムが提案されている（例えば、特許文献２参照）。
【０００５】
しかし、特許文献１及び特許文献２に記載されたシステムは、一つのトポロジに対応した特定の機能のみを特化して検証するシステムであり、複数のトポロジ又は機能を検証するためのシステムではない。また、大規模ネットワークシステムなどにおいて実際に検証環境を生成する場合の方法を提案するものではない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１０１５３７号公報
【特許文献２】特開平８−０５６２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
開発者は、本番環境のうち、検証するために必要最低限の装置の構成情報を抽出し、検証環境を構築するために許容されるコスト及び資源に即して、抽出された装置の構成情報を組合わせることによって、ネットワークシステムの検証環境を構築する。従来において、このような抽出及び組合せは、ネットワークに関する技術を持つ開発者によって行われてきた。
【０００８】
しかし、多数のトポロジを有する複雑で大規模なネットワークシステムの検証環境を構築する場合、開発者による検証環境の設計には、膨大な作業量が必要とされてきた。また、作業量が膨大になることによって、検証環境の設計の正確性が低減し、本番環境の検証をするための環境として適切ではない検証環境が設計される原因となっていた。
【０００９】
本発明は、本番環境の構成図及び設計書等から、検証環境を構築するために必要最低限の装置の構成情報を抽出し、抽出された環境から検証環境を構築するための情報を生成することによって、大規模かつ複雑なネットワークシステムの検証環境を自動的に設計するシステムの提供を目的とする。
【課題を解決するための手段】
【００１０】
本発明の代表的な一形態によると、複数の装置が所定のトポロジによって接続されるネットワークシステムの検証環境を構築するための情報を生成する計算機システムであって、前記各装置は、前記各装置によって構成されるトポロジを実現するための機能を有し、前記各装置は、前記装置間の接続に関連して所定の階層が割り当てられ、前記計算機システムは、メモリを備え、前記各装置が有する機能の情報を含む設計書情報と、前記機能に対応する前記各トポロジの情報を含む機能情報と、前記各装置が接続されるトポロジの情報、前記各装置に割り当てられた階層の情報、及び当該トポロジによって接続される他の前記装置の情報を含む構成情報とを取得し、前記設計書情報、前記機能情報及び前記構成情報を、前記メモリに保持し、前記構成情報に基づいて、前記トポロジ毎に、当該トポロジによって接続される前記装置と前記他の装置とを、複数の装置群に分類し、前記構成情報に基づいて、前記各装置群に前記階層のいずれかを割り当て、前記設計書情報、前記機能情報及び前記構成情報に基づいて、前記各装置群が有する機能を示すネットワーク構成情報を生成し、前記メモリに、前記ネットワーク構成情報を保持し、同一の前記トポロジ毎、かつ、同一の前記階層毎に、前記各装置群の前記ネットワーク構成情報を比較することによって、前記ネットワーク構成情報が一致する第１の装置群及び第２の装置群の前記ネットワーク構成情報が前記メモリに保持されているか否かを判定し、前記第１の装置群及び第２の装置群のネットワーク構成情報が前記メモリに保持されている場合、前記第２の装置群の前記ネットワーク構成情報を前記メモリから削除し、前記メモリに保持された前記装置群の前記ネットワーク構成情報によって、検証環境を構築するための情報を生成する。
【発明の効果】
【００１１】
本発明の一実施形態によると、本番環境構成及び設計書に基づいて、検証環境を自動的に生成できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態の検証環境生成装置の物理的な構成を示すブロック図である。
【図２】本発明の実施形態の検証環境生成装置における処理を示すブロック図である。
【図３】本発明の実施形態のネットワーク設計書を示す説明図である。
【図４】本発明の実施形態のネットワーク構成図を示す説明図である。
【図５Ａ】本発明の実施形態の設計書ＤＢを示す説明図である。
【図５Ｂ】本発明の実施形態の機能ＤＢを示す説明図である。
【図５Ｃ】本発明の実施形態の構成情報ＤＢを示す説明図である。
【図６】本発明の実施形態のＮＷ構成ＤＢを示す説明図である。
【図７】本発明の実施形態の重複構成確認部による処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
本発明は、ネットワークシステムに関する設計書等の情報から、トポロジ毎及び階層毎に装置を分類し、分類された装置群の各機能を装置群間で比較することによって、同じ機能を有する装置群を抽出する。複数の装置群が同じ機能を有する場合、各装置群の検証は、一つの装置群への検証によって代替可能であるため、一つの装置群のみを抽出することによって、検証環境を構築するための情報を生成する。
【００１４】
図１は、本発明の実施形態の検証環境生成装置１０１の物理的な構成を示すブロック図である。
【００１５】
検証環境生成装置１０１は、計算機システムであり、プロセッサ１０、揮発性メモリ１１、不揮発性メモリ１２、入出力装置１３、及び、ネットワークインターフェース１４を備える。検証環境生成装置１０１は、ネットワークシステムの検証環境を構築するための情報（以後、検証環境構成と記載する）を生成するための計算機システムである。
【００１６】
プロセッサ１０は、不揮発性メモリ１２に格納されたプログラム及びデータ等を、揮発性メモリ１１に読み出し、読み出されたプログラム等を実行する。プロセッサ１０は、複数のプログラムを実行することによって、複数の処理部として機能してよく、各処理部において実行される処理に関する処理部として機能してもよい。
【００１７】
揮発性メモリ１１は、一時的にデータ等を保持するための記憶領域である。不揮発性メモリ１２は、プログラム及びデータ等が格納される記憶領域である。
【００１８】
入出力装置１３は、管理者等が検証環境生成装置１０１に、データを入力するための装置である。ネットワークインターフェース１４は、検証環境生成装置１０１と、ネットワークに接続される装置又は他の計算機とが通信するためのインターフェースである。
【００１９】
図２は、本発明の実施形態の検証環境生成装置１０１における処理を示すブロック図である。
【００２０】
検証環境生成装置１０１は、機能情報取得部１０２と、構成情報取得部１０３と、検証環境生成部１０４とを有する。プロセッサ１０が不揮発性メモリ１２に格納されるプログラムを実行することによって、機能情報取得部１０２、構成情報取得部１０３、及び検証環境生成部１０４の各処理部に対応する機能が実現されてもよい。
【００２１】
また、検証環境生成装置１０１は、設計書ＤＢ１０８、機能ＤＢ１０９、構成情報ＤＢ１１０、及びＮＷ構成ＤＢ１１３を有する。設計書ＤＢ１０８、機能ＤＢ１０９、構成情報ＤＢ１１０、及びＮＷ構成ＤＢ１１３は、不揮発性メモリ１２に格納される。
【００２２】
検証環境生成装置１０１は、ネットワーク設計書１０５、及び、ネットワーク構成図１０６を、入出力装置１３又はネットワークインターフェース１４を介して入力される。検証環境生成装置１０１は、検証環境構成１０７を、入出力装置１３又はネットワークインターフェース１４を介して出力する。
【００２３】
ネットワーク設計書１０５は、検証環境を生成する対象のネットワークシステム、すなわち本番環境が有する複数の装置と、各装置が有する機能との情報を含む。また、各機能が、いずれのトポロジに対応する機能であるかを示す情報も含む。
【００２４】
ネットワーク構成図１０６は、検証環境を生成するネットワークシステムが有する複数の装置が、どのようなトポロジによって接続されているか、どのような階層を構成しているかを示す。
【００２５】
本実施形態におけるトポロジとは、各装置の接続方法を示し、例えば、スター型、リング型、ＰｔｏＰ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）型等がある。また、いずれの装置にも接続されずに動作する場合、本実施形態におけるトポロジは、単体を示す。本実施形態の本番環境の各装置は、いずれかのトポロジ及び階層に属する。
【００２６】
本実施形態における機能とは、各トポロジに従って各装置が有する機能である。例えば、単体の装置は、ＭＤＩ（Ｍｕｌｔｉｐｌｅ  Ｄｏｃｕｍｅｎｔ  Ｉｎｔｅｒｆａｃｅ）の機能を有する。また、例えば、スター型によって他の装置と接続される装置は、ＲＩＰ（Ｒｏｕｔｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）、又は、ＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）等の機能を有する。
【００２７】
また、ＰｔｏＰ型によって他の装置と接続される装置は、ＩＰＳＥＣ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、及び／又は、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）等の機能を有する。
【００２８】
ネットワーク設計書１０５及びネットワーク構成図１０６は、開発者等によって検証環境生成装置１０１に入力されてもよいし、検証環境生成装置１０１に接続されるシステムから検証環境生成装置１０１が定期的に取得してもよい。
【００２９】
機能情報取得部１０２は、設計書ＤＢ１０８及び機能ＤＢ１０９に接続される。入力されたネットワーク設計書１０５から値を抽出し、設計書ＤＢ１０８及び機能ＤＢ１０９に抽出された値を格納する。
【００３０】
構成情報取得部１０３は、構成情報ＤＢ１１０に接続される。入力されたネットワーク構成図１０６から値を抽出し、構成情報ＤＢ１１０に抽出された値を格納する。
【００３１】
検証環境生成部１０４は、単位構成生成部１１１及び重複構成確認部１１２を含む。また、ＮＷ構成ＤＢ１１３に接続される。
【００３２】
単位構成生成部１１１は、設計書ＤＢ１０８、機能ＤＢ１０９及び構成情報ＤＢ１１０に基づいて、ＮＷ構成ＤＢ１１３に格納する値を生成する。重複構成確認部１１２は、ＮＷ構成ＤＢ１１３に基づいて、検証環境構成１０７を生成する。
【００３３】
図３は、本発明の実施形態のネットワーク設計書１０５を示す説明図である。
【００３４】
ネットワーク設計書１０５は、いずれの機能が、いずれの装置に備わるかを示す。また、各装置の種類を示す。検証環境生成装置１０１の機能情報取得部１０２は、ネットワーク設計書１０５の記載内容のフォーマットをあらかじめ保持し、ネットワーク設計書１０５とフォーマットとを参照することによって、各装置が有する機能と、各装置が有する機能の数と、各機能がいずれのトポロジに対応するかと、各装置の種類を示す情報を取得する。
【００３５】
図３に示す機能名１０５０は、機能を示す文字列又は数字等が記載される。また、図３に示す対象ノード１０５１は、装置を示す文字列又は数字等が記載される。機能名１０５０及び対象ノード１０５１は、機能名１０５０が示す機能を有する装置を示す。
【００３６】
図３に示す機能詳細１０５２は、各機能がいずれのトポロジに対応するかを示す。例えば、図３に示す機能詳細１０５２は、「機能「Ａ」のトポロジは、単体のトポロジに対応する」ことを示す。
【００３７】
図４は、本発明の実施形態のネットワーク構成図１０６を示す説明図である。
【００３８】
本実施形態のネットワーク構成図１０６は、各装置がどのように接続されるかを示す。図４に示すネットワーク構成図１０６は、装置ａ００１〜ａ００８、装置ｂ００１〜ｂ００３、装置ｂ００６、装置ｃ００１、装置ｃ００２、及び、装置ｄ００１〜ｄ００４がどのように接続されるかを示す。
【００３９】
図４に示すネットワーク構成図１０６は、装置ａ００１〜ａ００６が、階層のうち第４層に配置され、装置ｂ００１〜ｂ００３と装置ａ００７と装置ａ００８と装置ｂ００６とが、第３層に配置され、装置ｃ００１及び装置ｃ００２が、第２層に配置され、装置ｄ００１〜ｄ００４が、第１層に配置されることを示す。また、各装置の接続を示し、いずれのＩＰセグメントによって接続されるかを示す。
【００４０】
本実施形態において、数値がより小さい（０に近い）階層を、高い階層と記載する。また、数値がより大きい階層を、低い階層と記載する。
【００４１】
検証環境生成装置１０１の構成情報取得部１０３は、ネットワーク構成図１０６から、トポロジ、及び関連ノードを抽出するためのテンプレート等を、あらかじめ保持する。
【００４２】
構成情報取得部１０３は、例えば、二つ以上の装置に接続される装置を、テンプレートに従ってＰｔｏＰ型のトポロジの装置と判定し、接続される装置を関連ノードと判定してもよい。また、複数の装置がリング状に接続されている場合、それらの複数の装置のトポロジをリング型と判定してもよい。
【００４３】
また、ネットワーク構成図１０６における階層及びＩＰセグメントは、あらかじめ開発者等によって定められており、構成情報取得部１０３は、ネットワーク構成図１０６から階層及びＩＰセグメントの値を抽出する。
【００４４】
なお、図３のネットワーク設計書１０５及び図４のネットワーク構成図は、例であり、本実施形態の検証環境生成装置１０１が情報を抽出できる形式によって情報が記載されていれば、いかなる形式でもよい。
【００４５】
図５Ａは、本発明の実施形態の設計書ＤＢ１０８を示す説明図である。
【００４６】
機能情報取得部１０２は、ネットワーク設計書１０５を入力された場合、ネットワーク設計書１０５から、装置、機能数、機能、及び、装置の種類を抽出する。そして、抽出された値を、設計書ＤＢ１０８へ格納する。設計書ＤＢ１０８は、ノード２０１、装置２０２、機能数２０３、及び機能２０４を含む。
【００４７】
なお、本実施形態の機能情報取得部１０２は、ネットワーク設計書１０５に記載された装置名から、装置の種類を判定する。例えば、装置ａ００２の装置の種類を、「ａ」と判定する。しかし、ネットワーク設計書１０５が、各装置の種類を示す情報を含んでもよく、機能情報取得部１０２は、ネットワーク設計書１０５が示す装置の種類を抽出してもよい。
【００４８】
ノード２０１は、検証環境を生成するネットワークシステムが有する各装置を一意に示す識別子を含む。装置２０２は、各装置の機種等の種類を示す識別子を含む。機能数２０３は、各装置が有する機能の数を含む。
【００４９】
機能２０４は、各装置が有する機能を示す識別子を含む。機能２０４には、複数の機能の識別子が含まれてもよい。
【００５０】
図５Ｂは、本発明の実施形態の機能ＤＢ１０９を示す説明図である。
【００５１】
機能情報取得部１０２は、ネットワーク設計書１０５を入力された場合、ネットワーク設計書１０５の機能詳細１０５２から、機能単位、すなわち、各機能が対応するトポロジを抽出する。そして、抽出された機能単位を、機能ＤＢ１０９の機能単位２０５に格納する。
【００５２】
機能ＤＢ１０９の機能２０６は、各機能を一意に示す識別子を含む。設計書ＤＢ１０８の機能２０４と機能ＤＢ１０９の機能２０６とは、対応する。機能単位２０５は、各機能が用いられるトポロジを示す。
【００５３】
機能情報取得部１０２がネットワーク設計書１０５から機能（機能２０６）とトポロジ（機能単位２０５）との対応関係を取得することによって、検証環境生成装置１０１は、本番環境のネットワークシステムに機能の追加等があった場合にも、柔軟に検証環境を生成することができる。
【００５４】
なお、図５Ｂに示す機能ＤＢ１０９は、機能単位２０５に単体及びＰｔｏＰのみを含むが、本実施形態の機能ＤＢ１０９は、機能単位２０５にリング型、スター型、又は、マルチネットワーク型等のトポロジを含んでもよい。
【００５５】
また、検証環境生成装置１０１は、管理者等によって生成された機能ＤＢ１０９を、あらかじめ保持してもよい。
【００５６】
図５Ｃは、本発明の実施形態の構成情報ＤＢ１１０を示す説明図である。
【００５７】
構成情報取得部１０３は、ネットワーク構成図１０６を入力された場合、ネットワーク構成図１０６から、各装置が接続されるセグメント、トポロジ、関連ノード、及び、階層を抽出する。そして、ネットワーク構成図１０６から抽出されたセグメント、トポロジ、関連ノード、及び、階層を、構成情報ＤＢ１１０に格納する。
【００５８】
構成情報ＤＢ１１０は、ノード２１０、セグメント２１１、トポロジ２０７、関連ノード２０８、及び階層２０９を含む。構成情報ＤＢ１１０のノード２１０は、設計書ＤＢ１０８のノード２０１に対応する。
【００５９】
セグメント２１１は、ノード２１０が示す装置と、関連ノード２０８が示す装置との接続に割り当てられたアドレスのセグメントを示す。なお、構成情報取得部１０３は、ノード２１０の装置が複数のセグメントによって、関連ノード２０８の装置と接続される場合、複数のセグメントをセグメント２１１に格納する。ここで、構成情報取得部１０３は、重複するセグメントをセグメント２１１から削除する。
【００６０】
トポロジ２０７は、ノード２１０が示す装置と関連ノード２０８とが示す装置が接続されるトポロジを示す。
【００６１】
関連ノード２０８は、ノード２１０が示す装置が、セグメント２１１が示すセグメントと、トポロジ２０７が示すトポロジとによって接続される他の装置の識別子を示す。関連ノード２０８に格納される値は、ノード２１０、及び、設計書ＤＢ１０８のノード２０１の値に対応する。トポロジ２０７が「単体」を示す場合、関連ノード２０８には、値が格納されない。
【００６２】
階層２０９は、ノード２１０が示す装置と関連ノード２０８が示す装置との接続が、いずれの階層に配置されているかを示す。ノード２０１が示す装置と関連ノード２０８が示す装置とが同じ階層において接続される場合、階層２０９は、ノード２０１が示す装置が配置される階層を示す。また、ノード２０１が示す装置と関連ノード２０８が示す装置とが異なる階層に配置される場合、階層２０９は、ノード２０１が示す装置と関連ノード２０８が示す装置とのうち、階層がより低い装置の階層、すなわち、本実施形態において数値が大きい階層に配置される装置の階層を示す。
【００６３】
なお、図５Ａの設計書ＤＢ１０８、図５Ｂの機能ＤＢ１０９、及び、図５Ｃの構成情報ＤＢ１１０の形式は例であり、本実施形態の設計書ＤＢ１０８、機能ＤＢ１０９、及び、構成情報ＤＢ１１０は、後述のＮＷ構成ＤＢ１１３を生成するために必要な情報を保持していれば、いかなる形式でもよい。
【００６４】
図６は、本発明の実施形態のＮＷ構成ＤＢ１１３を示す説明図である。
【００６５】
機能情報取得部１０２及び構成情報取得部１０３が各ＤＢに情報を入力し終えた場合、検証環境生成部１０４の単位構成生成部１１１は、設計書ＤＢ１０８と機能ＤＢ１０９と構成情報ＤＢ１１０とに基づいて、ＮＷ構成ＤＢ１１３を生成する。ＮＷ構成ＤＢ１１３は、各トポロジによって接続される装置が各々有する機能を、同一トポロジ毎、かつ、同一階層毎に比較するため、トポロジ毎の装置及び機能等の構成を含む。
【００６６】
ＮＷ構成ＤＢ１１３は、構成ＩＤ２１２、ノード数２１３、ノード２１４、セグメント数２１５、トポロジ２１６、機能数２１７、機能２１８、装置数２１９、装置２２０、及び、階層２２１を含む。構成ＩＤ２１２は、本実施形態における検証環境の各単位を一意に示す識別子である。
【００６７】
本実施形態において、検証環境生成装置１０１は、検証環境を構築する対象のネットワークシステム（本番環境）を、トポロジ毎及び階層毎の装置群に分類する。そして、分類された結果である各装置群を、検証環境の１単位とし、各単位を比較することによって、重複する機能を有する単位を削除する。そして、重複する単位を削除した結果、検証が必要な最低限の検証環境のみが抽出できる。ＮＷ構成ＤＢ１１３の各行は、検証環境の各単位を示す。
【００６８】
ノード数２１３は、検証環境の各単位に含まれる装置の数を示す。トポロジ２１６が「単体」を示す場合、ノード数２１３は「１」を示す。
【００６９】
ＮＷ構成ＤＢ１１３のノード２１４は、設計書ＤＢ１０８のノード２０１及び構成情報ＤＢ１１０のノード２１０に対応する。セグメント数２１５は、トポロジ２１６が示すトポロジにおいて用いられるセグメントの数を示す。
【００７０】
ＮＷ構成ＤＢ１１３のトポロジ２１６は、構成情報ＤＢ１１０のトポロジ２０７に対応する。
【００７１】
ＮＷ構成ＤＢ１１３の機能数２１７は、設計書ＤＢ１０８の機能数２０３に対応し、ノード２１４が示す各装置が有する機能の種類の数を示す。ＮＷ構成ＤＢ１１３の機能２１８は、設計書ＤＢ１０８の機能２０４に対応し、ノード２１４が示す各装置が有する機能を示す。
【００７２】
装置数２１９は、検証環境の各単位に含まれる装置の種類の数を示す。ＮＷ構成ＤＢ１１３の装置２２０は、設計書ＤＢ１０８の装置２０２に対応し、検証環境の各単位に含まれる装置の機種等の種類を示す。階層２２１は、構成情報ＤＢ１１０の階層２０９に対応し、検証環境の各単位の階層を示す。
【００７３】
単位構成生成部１１１は、具体的には、構成情報ＤＢ１１０の行（以下、行Ｘ）を取得し、ノード２１０及び関連ノード２０８の値を、ＮＷ構成ＤＢ１１３のノード２１４に格納する。また、ノード２１４に格納された装置の数を、ノード数２１３に格納する。
【００７４】
そして、単位構成生成部１１１は、構成情報ＤＢ１１０の行Ｘのセグメント２１１に格納されたセグメントの識別子の数を、ＮＷ構成ＤＢ１１３のセグメント数２１５に格納する。また、単位構成生成部１１１は、ＮＷ構成ＤＢ１１３のトポロジ２１６に、構成情報ＤＢ１１０の行Ｘのトポロジ２０７を格納する。
【００７５】
そして、単位構成生成部１１１は、ＮＷ構成ＤＢ１１３のノード２１４に格納されたすべての装置に対応する、設計書ＤＢ１０８のすべての行を抽出する。これは、トポロジ２１６に対応する機能を抽出するためである。単位構成生成部１１１は、設計書ＤＢ１０８の抽出された各行の機能２０４のうち、ＮＷ構成ＤＢ１１３のトポロジ２１６に格納されたトポロジに対応する機能を、機能ＤＢ１０９を参照することによって特定する。
【００７６】
そして、単位構成生成部１１１は、特定された機能を、ＮＷ構成ＤＢ１１３の機能２１８に格納し、抽出された機能の数を、ＮＷ構成ＤＢ１１３の機能数２１７に格納する。これによって、ノード２１４の装置群が有し、かつ、トポロジ２１６に対応する機能が、ＮＷ構成ＤＢ１１３の機能２１８に格納される。
【００７７】
さらに単位構成生成部１１１は、設計書ＤＢ１０８の抽出された各行の装置２０２を特定する。そして、特定された装置２０２の識別子の種類の数を、装置数２１９に格納し、特定された装置２０２を、ＮＷ構成ＤＢ１１３の装置２２０に格納する。ここで、単位構成生成部１１１は、装置２２０に格納される値の重複を削除する。
【００７８】
さらに単位構成生成部１１１は、構成情報ＤＢ１１０の階層２０９を、ＮＷ構成ＤＢ１１３の階層２２１に格納する。
【００７９】
単位構成生成部１１１は、構成情報ＤＢ１１０のすべての行に、前述の処理を行った後、管理者等によってあらかじめ定められた順にトポロジ２１６をソートし、さらに、階層２２１を降順にソートする。図６に示すＮＷ構成ＤＢ１１３は、ソートされた後のＮＷ構成ＤＢ１１３である。
【００８０】
本実施形態において、単位構成生成部１１１は、単体、ＰｔｏＰ、スター型、ツリー型の順に、トポロジ２１６をソートする。すなわち、ＮＷ構成ＤＢ１１３において、同じトポロジ２１６の装置群が、低階層から順に上段から格納される。
【００８１】
単位構成生成部１１１は、ＮＷ構成ＤＢ１１３をソートした後、各行に一意な数値を昇順に、構成ＩＤ２１２に格納する。
【００８２】
単位構成生成部１１１がＮＷ構成ＤＢ１１３を生成した後、重複構成確認部１１２は、ＮＷ構成ＤＢ１１３の各行を比較し、重複する行を削除することによって、検証環境構成を生成する。具体的には、重複構成確認部１１２は、生成されたＮＷ構成ＤＢ１１３の行のうち、トポロジ２１６に同じ値を含み、かつ、階層２２１に同じ値を含む行を抽出する。そして、抽出された各行を、ノード数２１３、機能数２１７、機能２１８、装置数２１９、及び、装置２２０について一致するか比較する。
【００８３】
以下に、具体的な検証環境の各単位の比較処理を示す。
【００８４】
図７は、本発明の実施形態の重複構成確認部１１２による処理を示すフローチャートである。
【００８５】
重複構成確認部１１２は、単位構成生成部１１１からＮＷ構成ＤＢ１１３を入力された場合、図７の処理を実行する。重複構成確認部１１２は、ＮＷ構成ＤＢ１１３から、トポロジ２０７に同じ値を含み、かつ、階層２０９に同じ値を含む行を抽出する（３００）。
【００８６】
なお、ステップ３０２、３０４又は３０５の後にステップ３００が実行される場合、重複構成確認部１１２は、前回実行されたステップ３００において抽出した行よりも、構成ＩＤ２１２が大きい行を抽出する。すなわち、重複構成確認部１１２は、構成ＩＤ２１２が昇順に抽出する。
【００８７】
ステップ３００の後、ＮＷ構成ＤＢ１１３から抽出された各行について、重複構成確認部１１２は、ノード数２１３、機能数２１７、機能２１８、装置数２１９、及び、装置２２０に格納される値（以下、評価値と記載）を比較することによって、評価値が一致する複数の行があるか否かを判定する（３０１）。
【００８８】
各行を比較する方法はいずれの方法でもよい。例えば、重複構成確認部１１２が、二つの行を特定し、特定された行の評価値を比較し、その後、新たな二つの行の特定と比較とを繰り返すことによって、抽出された各行を比較してもよい。また、例えば、重複構成確認部１１２は、ステップ３００において抽出された各行を、各評価値によってソートしてから、上下の行を比較してもよい。
【００８９】
ステップ３００において抽出された行の各評価値が一致しない場合、重複構成確認部１１２は、ＮＷ構成ＤＢ１１３から特定された各行について、検証環境構成の候補として、ＮＷ構成ＤＢ１１３にすべて残すことを決定する（３０２）。これは、すべての評価値が異なる場合、各行が示す装置群の検証を、各々行う必要があるためである。
【００９０】
また、ステップ３００において抽出された行に、各評価値のすべてが一致する行がある場合、さらに、評価値が一致する行を抽出するため、重複構成確認部１１２は、ステップ３００において抽出された各行の階層２２１よりも低い階層（すなわち、ＮＷ構成ＤＢ１１３の上段の行）に、ステップ３０１の比較において、各評価値のすべてが一致した行と同じ評価値を有する行が、ＮＷ構成ＤＢ１１３に含まれるか否かを判定する（３０３）。なお、ステップ３０３において重複構成確認部１１２は、同一トポロジ２１６の各行について判定する。
【００９１】
ステップ３０１において評価値を比較された各行が示す階層２２１よりも低い階層に、ステップ３０１の比較において評価値のすべてが一致した行と同じ評価値を有する行が、ＮＷ構成ＤＢ１１３に含まれる場合、重複構成確認部１１２は、低い階層のその行をＮＷ構成ＤＢ１１３に、検証環境構成の候補として残すことを決定する（３０５）。これは、高い階層の装置群と低い階層の装置群との評価値が一致する場合、低い階層の装置群を検証することによって、高い階層の装置群を検証することができるためである。
【００９２】
ステップ３０１において評価値を比較された各行が示す階層２２１よりも低い階層に、ステップ３０１の比較において評価値がすべて一致した行と同じ評価値を有する行が、ＮＷ構成ＤＢ１１３に含まれない場合、重複構成確認部１１２は、評価値がすべて一致した各行のうち、構成ＩＤ２１２が大きい行を、ＮＷ構成ＤＢ１１３から削除する（３０４）。これは、重複する評価値である装置群を削除するためである。
【００９３】
具体例を、以下に示す。
【００９４】
重複構成確認部１１２は、例えば、ステップ３００において、同一トポロジ２１６かつ同一階層２２１である行２００１〜行２００６を抽出する。そして、ステップ３０１において、行２００１〜行２００６の各行の評価値が一致する行があるか否かを判定する。
【００９５】
行２００１〜行２００６の各行の評価値は、すべて一致するため、重複構成確認部１１２は、ステップ３０３に移行する。しかし、行２００１〜行２００６より低い階層はないため、重複構成確認部１１２は、ステップ３０４に移行し、構成ＩＤ２１２が大きい行２００２〜行２００６を削除する。
【００９６】
次に、重複構成確認部１１２は、ステップ３００において、同一トポロジ２１６かつ同一階層２２１である行２００７〜行２０１２を抽出する。そして、ステップ３０１において、行２００７〜行２０１２の各行の評価値が一致する行があるか否かを判定する。
【００９７】
行２００７〜行２００９及び行２０１２は、評価値が一致し、行２０１０及び行２０１１も、評価値が一致する。このため、重複構成確認部１１２は、ステップ３０３に移行する。
【００９８】
重複構成確認部１１２は、ステップ３０３において、同一トポロジ２１６における低い階層、すなわち、ＮＷ構成ＤＢ１１３において行２００７よりも上の行であり、トポロジ２１６が「単体」である行に、行２００７〜行２００９及び行２０１２の評価値を有する行があるか否かを判定する。また、重複構成確認部１１２は、ステップ３０３において、行２０１０及び行２０１１の評価値を有する行が、同一トポロジ２１６における低い階層、すなわち、ＮＷ構成ＤＢ１１３において行２００７よりも上の行のうち、トポロジ２１６が「単体」である行に、あるか否かを判定する。
【００９９】
ここで、ＮＷ構成ＤＢ１１３において行２００７より上の行には、行２００１のみが残っており、行２００１と行２００７とは、装置２２０の値において相違する。また、行２００１と行２０１０とは、評価値がすべて一致する。
【０１００】
このため重複構成確認部１１２は、ステップ３０３において、行２００７〜行２００９及び行２０１２には、低い階層に同じ評価値を有する行がないと判定し、行２００７〜行２００９及び行２０１２に、ステップ３０４の処理を行う。すなわち、重複構成確認部１１２は、行２００７〜行２００９及び行２０１２のうち、構成ＩＤ２１２が大きい行２００８、行２００９、及び行２０１２を削除する。行２００８、行２００９、及び行２０１２が示す装置群の検証は、行２００７が示す装置群を検証することによって代替できるためである。
【０１０１】
また、ステップ３０３において、重複構成確認部１１２は、行２０１０及び行２０１１に、低い階層に同じ評価値を有する行があると判定し、行２０１０及び行２０１１にステップ３０５の処理を行う。すなわち、重複構成確認部１１２は、行２０１０及び行２０１１を削除する。これによって、行２００１のみがＮＷ構成ＤＢ１１３に残される。行２０１０及び行２０１１が示す装置群の検証は、行２００１が示す装置群を検証することによって代替できるためである。
【０１０２】
重複構成確認部１１２は、ステップ３０１〜ステップ３０５を、ＮＷ構成ＤＢ１１３に同一トポロジ２１６及び同一階層２２１毎に行うことによって、同一トポロジにおいて重複する評価値を含む行を削除する。これによって、検証が必要な検証環境を示す行がＮＷ構成ＤＢ１１３に残される。また、ステップ３０３において、評価値が一致する低い階層があるか否かを判定することによって、さらに、重複する機能を有する装置群が削除され、検証が必要な検証環境を示す行がＮＷ構成ＤＢ１１３に残される。
【０１０３】
重複構成確認部１１２は、ＮＷ構成ＤＢ１１３のすべての行にステップ３００〜３０５を行った後、生成されたＮＷ構成ＤＢ１１３を、検証環境構成１０７として出力する。なお、重複構成確認部１１２は、ステップ３００〜３０５の処理の後のＮＷ構成ＤＢ１１３を、図４に示すようなＮＷ構成図の形式によって出力してもよい。
【０１０４】
以上によって、本番環境の構成図及び設計書等から、検証環境を構築するために必要最低限の装置群を抽出し、抽出された装置群から検証環境を構築するための情報を生成することによって、大規模かつ複雑なネットワークシステムの検証環境を正確に設計できる。
【符号の説明】
【０１０５】
１０１  検証環境生成装置
１０２  機能情報取得部
１０３  構成情報取得部
１０４  検証環境生成部
１０５  ネットワーク設計書
１０６  ネットワーク構成図
１０７  検証環境構成
１０８  設計書ＤＢ
１０９  機能ＤＢ
１１０  構成情報ＤＢ
１１１  単位構成生成部
１１２  重複構成確認部
１１３  ＮＷ構成ＤＢ
【図１】
2013042332.tif 000003
【図２】
2013042332.tif 000004
【図３】
2013042332.tif 000005
【図４】
2013042332.tif 000006
【図５Ａ】
2013042332.tif 000007
【図５Ｂ】
2013042332.tif 000008
【図５Ｃ】
2013042332.tif 000009
【図６】
2013042332.tif 000010
【図７】
2013042332.tif 000011