(57)【特許請求の範囲】
【請求項１】
ネットワークを形成するリンクを特定する情報と前記リンクの各端部に係る情報とをそれぞれ含むとともに、前記リンクの両端の少なくとも一方の端部に係る情報が前記ネットワークの端点を示す情報である第１レコードを複数含む複数のレコードを記憶する記憶部と、
前記記憶部に記憶された前記第１レコードで特定される端点から３以上のリンクが接続される前記ネットワーク内のノード、又は前記端点と異なる他の端点に至るまでの経路に関連するレコードを、前記複数のレコードから抽出する処理を前記第１レコードの全てについて行い、前記処理後に未抽出のレコードが残った場合にループ有りと判定する判定部と
を含むループ検出装置。
【請求項２】
前記リンクの各端部に係る情報が、前記リンクと接続された前記ネットワーク内のノードを示すノード識別子又は前記ネットワークの端点を示す端点情報であり、
前記判定部は、前記処理として、
前記複数のレコードから一の第１レコードを抽出対象として抽出する第１の処理と、
前記抽出対象の第１レコードにて前記端点情報と対応する端部と逆側の端部にノード識別子が対応づけられている場合に、この対応づけられたノード識別子と同一のノード識別子を含む他のレコードの全てを前記記憶部から検出する第２の処理と、
前記第２の処理で検出されたレコードの数が１の場合に、前記第２の処理で検出されたレコードを抽出対象に設定する第３の処理と、
前記第３の処理で抽出対象に設定されたレコードにて前記同一のノード識別子と対応する端部と逆側の端部に前記同一のノード識別子と異なるノード識別子が対応づけられている場合に、この対応づけられたノード識別子と同一のノード識別子を含む他のレコードの全てを前記複数のレコードからこれまでに抽出されたレコードを除外した残りのレコードから検出する第４の処理と、
前記第４の処理で検出されたレコードの数が１の場合に、前記第４の処理で検出されたレコードを抽出対象に設定するとともに、前記第４の処理で検出されたレコードに対して前記第４の処理と同様の処理を行い、前記第４の処理と同様の処理の結果として１つのレコードが検出される間、繰り返し実行される第５の処理と、
前記第２，第４，及び第５の処理において前記端部と逆側の端部に端点情報が対応づけられている場合、並びに前記第２，第４及び第５の処理において２以上のレコードが検出された場合に、他の第１レコードを抽出対象として前記残りのレコードから抽出する第６の処理と、
前記第６の処理で抽出された抽出対象のレコードについて、前記第２から第６の処理と同じ処理を試行する第７の処理と、を行い、
前記第６の処理において、他の第１レコードがないが未抽出のレコードが残っている場合に前記ネットワークにループ有りと判定する、
請求項１に記載のループ検出装置。
【請求項３】
前記複数のレコードは、前記ループ検出装置の管理対象のネットワークと、管理対象外のネットワークとが統合されたネットワークにおける複数のリンクに対応する
請求項１又は２に記載のループ検出装置。
【請求項４】
前記記憶部に前記ネットワークに対するループを検知しないことを示す情報が記憶されている場合に、前記判定部は前記処理を行わない
請求項１から３のいずれか１項に記載のループ検出装置。
【請求項５】
ループ検出装置が、
ネットワークを形成するリンクを特定する情報と前記リンクの各端部に係る情報とをそれぞれ含むとともに、前記リンクの両端の少なくとも一方の端部に係る情報が前記ネットワークの端点を示す情報である第１レコードを複数含む複数のレコードを記憶する記憶部に記憶された前記第１レコードの一つで特定される端点から３以上のリンクが接続される前記ネットワーク内のノード、又は前記端点と異なる他の端点に至るまでの経路に関連するレコードを、前記複数のレコードから抽出する処理を前記第１レコードの全てについて行い、
前記処理後に未抽出のレコードが残った場合にループ有りと判定する
ことを含むループ検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ループ検出装置，及びループ検出方法に関する。
【背景技術】
【０００２】
近年におけるキャリアネットワークの設計において、例えば、複数の物理ノードが物理リンクでメッシュ型に接続された物理ネットワーク上に論理ネットワークを構築することがある。論理ネットワークは、例えば、ユーザ毎にＶＬＡＮ（Virtual Local Area Network）等の設定を割り当てることによって構築される。ＶＬＡＮの設定で構築される論理ネットワークは、ユーザ毎の閉域性を保持可能である。
【０００３】
上記したネットワークでは、物理ノード及び物理リンクを用いた物理接続と、通信に使用されるノード及びリンクの論理接続とは分離して管理されている。実際の物理接続を管理するために、ＶＬＡＮ等の論理設定情報が設定される。
【０００４】
ネットワークは、例えば、ＩＰ−ＯＰＳ（Internet Protocol-Operation System：ＩＰネットワーク運用管理システム）を用いて管理される。ＩＰ−ＯＰＳは、ネットワークの物理構成（物理ノード及び物理リンクの物理接続）の管理，及びＶＬＡＮ等の論理設定を行う。
【０００５】
ネットワークの運用において、ユーザの新規拠点の追加や、ネットワーク物理配線変更等によって、ＶＬＡＮ等の論理設定の変更が要求される場合がある。論理設定の変更は、ネットワーク断（ダウン）や通信劣化の要因となるループの形成が回避されるように行われる。
【０００６】
先行技術として、例えば、機器間の接続関係を解析するための階層モデルに含まれるレイヤごとに、各レイヤでの監視対象システムにおける機器間の接続関係が表される隣接行列を生成し、２つ以上のレイヤについての隣接行列に対して行列演算を行って、２つ以上のレイヤ間での接続関係の矛盾を抽出するものがある（例えば、特許文献４）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−２９５２０９号公報
【特許文献２】特開２０１１−１３９１３９号公報
【特許文献３】特開２００８−２７８３３７号公報
【特許文献４】特開２０１２−２２２３７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献４に示されるような従来技術は、多数のネットワークを行列として統合し、複雑な行列演算によってループの有無を判定する。このため、ループの有無の判定までに時間を要する問題があった。
【０００９】
本発明の一態様は、ループの有無判定処理の時間を短縮し得るループ検出装置，及びループ検出方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一態様は、ループ検出装置である。このループ検出装置は、ネットワークを形
成するリンクを特定する情報と前記リンクの各端部に係る情報とをそれぞれ含むとともに、前記リンクの両端の少なくとも一方の端部に係る情報が前記ネットワークの端点を示す情報である第１レコードを複数含む複数のレコードを記憶する記憶部と、前記記憶部に記憶された前記第１レコードで特定される端点から３以上のリンクが接続される前記ネットワーク内のノード又は前記端点と異なる他の端点に至るまでの経路に関連するレコードを前記複数のレコードから除外する処理を前記第１レコードの全てについて行い、前記処理の結果において前記複数のレコードから除外されないレコードがある場合にループ有りと判定する判定部とを含む。
【発明の効果】
【００１１】
本発明の一態様によれば、ループの有無判定処理の時間を短縮することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施形態に係るネットワークの構成例を示す図である。
【図２】図２は、ＩＰ−ＯＰＳとして使用可能な情報処理装置（コンピュータ）のハードウェア構成例を示す。
【図３】図３は、ＩＰ−ＯＰＳが有する機能を模式的に示す図である。
【図４】図４は、管理対象のネットワークの物理構成例を示す。
【図５】図５は、物理ネットワーク装置情報を格納するテーブルのデータ構造例を示す。
【図６】図６は、物理ネットワークポート情報を格納するテーブルのデータ構造例を示す。
【図７】図７は、物理ネットワークリンク情報を格納するテーブルのデータ構造例を示す。
【図８】図８は、物理ネットワーク上に設定される論理ネットワークの一例を示す図である。
【図９】図９は、論理ネットワーク本情報を格納するテーブルのデータ構造例を示す。
【図１０】図１０は、論理ネットワーク所属情報を格納するテーブルのデータ構造例を示す。
【図１１】図１１は、付帯情報テーブルのデータ構造例を示す図である。
【図１２】図１２は、付帯情報テーブルのデータ構造例を示す図である。
【図１３】図１３は、付帯情報テーブルのデータ構造例を示す図である。
【図１４】図１４は、ＮＷ情報格納部に格納されるテーブル間のＥＲ図（Entity Relationship Diagram）を示す。
【図１５】図１５は、ループ検知処理を説明するフローチャートである。
【図１６】図１６は、論理構成検知処理の説明図である。
【図１７】図１７は、ループ構成チェック処理の例を示すフローチャートである。
【図１８】図１８は、動作例に係る管理対象のネットワークの構成例を示す。
【図１９】図１９は、動作例における論理構成抽出処理の説明図である。
【図２０】図２０は、動作例における論理構成抽出処理の説明図である。
【図２１】図２１は、動作例における論理構成抽出処理の説明図である。
【図２２】図２２は、動作例における論理構成抽出処理の説明図である。
【図２３】図２３は、ループ構成チェック処理の動作例の説明図である。
【図２４】図２４は、ループ構成チェック処理の動作例の説明図である。
【図２５】図２５は、ループ構成チェック処理の動作例の説明図である。
【図２６】図２６は、ループ構成チェック処理の動作例の説明図である。
【図２７】図２７は、ループ構成チェック処理の動作例の説明図である。
【図２８】図２８は、ループ構成チェック処理の動作例の説明図である。
【図２９】図２９は、ループ構成チェック処理の動作例の説明図である。
【図３０】図３０は、ループ構成チェック処理の動作例の説明図である。
【図３１】図３１は、ループ構成チェック処理の動作例の説明図である。
【図３２】図３２は、ループ構成チェック処理の動作例の説明図である。
【図３３】図３３は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３４】図３４は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３５】図３５は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３６】図３６は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３７】図３７は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３８】図３８は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図３９】図３９は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図４０】図４０は、ループ構成チェック処理の動作例において、ループ有りと判定される例の説明図である。
【図４１】図４１は、付帯情報を用いて管理対象外のネットワークを管理対象のネットワークと同一のネットワークとして扱う場合のネットワーク構成例を示す。
【図４２】図４２は、図４１に対応するテーブルＴ７の記憶内容例を示す。
【図４３】図４３は、テーブルＴ７の一例を示す。
【図４４】図４４は、付帯情報テーブルの一例を示す。
【図４５】図４５は、付帯情報に基づくレコードが追加されたテーブルＴ７の記憶内容例を示す。
【図４６】図４６は、付帯情報を含む論理ネットワーク本情報テーブルの例を示す。
【図４７】図４７は、付帯情報テーブルの記憶内容の例を示す。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、ループ検出装置、及びループ検出方法の実施形態について説明する。実施形態の構成は例示であり、実施形態の構成に限定されない。
【００１４】
＜ネットワーク構成例＞
図１は、実施形態に係るネットワークの構成例を示す図である。図１には、ＩＰネットワーク運用管理システム（ＩＰ−ＯＰＳ）１０によって管理される対象のネットワークＮが例示されている。ＩＰ−ＯＰＳ１０は、ネットワークＮの監視や、ＶＬＡＮ等の論理設定などを行う。ネットワークＮは、複数のノードと複数のリンクとで形成される。
【００１５】
図１には、ネットワークＮとして、複数の物理ノードとしての通信装置１が物理リンクを介してメッシュ状に接続されたＩＰネットワークが図示されている。複数の通信装置１の例として、図１には、装置Ａ，装置Ｂ，装置Ｃ，装置Ｄ，装置Ｅ，及び装置Ｆが図示されている。通信装置１（装置Ａ〜Ｅ）は、例えば、レイヤ３スイッチ，或いはルータである。但し、ＩＰは、ネットワークに適用されるプロトコルの一例であり、ＩＰ以外のプロトコルが適用される場合もあり得る。また、プロトコルに合わせて、物理ノード（装置）もルータやレイヤ３スイッチ以外の機器が適用され得る。また、ネットワークのトポロジの一例としてメッシュを例示しているが、メッシュ以外の場合もあり得る。
【００１６】
ＩＰ−ＯＰＳ１０は、装置Ａ〜Ｅのそれぞれと通信可能に接続される。通信装置１（装置Ａ〜Ｆ）は、ユーザの拠点２と接続される。拠点２は、少なくとも１つのホスト（端末
装置）を含む。ネットワークＮは、拠点間で送受信されるパケットの中継網として動作する。ネットワークＮに対してＶＬＡＮ設定を施すことにより、ネットワークＮは、ユーザ毎に分離された論理ネットワークの集合をなす。なお、通信装置１は、「ノード」の一例である。ＩＰ−ＯＰＳ１０は、「ループ検出装置」，「ネットワーク管理装置」の一例である。
【００１７】
＜ＩＰ−ＯＰＳの構成＞
図２は、ＩＰ−ＯＰＳ１０として使用可能な情報処理装置（コンピュータ）のハードウェア構成例を示す。情報処理装置として、例えば、パーソナルコンピュータ（ＰＣ），ワークステーション（ＷＳ）のような汎用コンピュータを適用できる。或いは、サーバマシンのような専用のコンピュータを適用することもできる。但し、上述したＰＣ，ＷＳ，サーバマシン以外のコンピュータを用いる場合もある。
【００１８】
図２に示すように、ＩＰ−ＯＰＳ１０は、例えば、バスを介して相互に接続された、Central Processing Unit（ＣＰＵ）１１と、主記憶装置１２と、補助記憶装置１３と、グ
ラフィック処理装置１４と、入力インタフェース（入力ＩＦ）１５とを含む。さらに、ＩＰ−ＯＰＳ１０は、バスを介して相互に接続された、ドライブ装置１６と、通信インタフェース（通信ＩＦ）１７とを含む。
【００１９】
ＣＰＵ１１は、「プロセッサ」、「制御部」、「制御装置」、「判定部」の一例であり、主記憶装置１２及び補助記憶装置１３のそれぞれは、「記憶装置」、「メモリ」、「記憶部」、「記憶媒体」の一例である。
【００２０】
主記憶装置１２は、プログラムの展開領域，ＣＰＵ１１の作業領域，データやプログラムの記憶領域又はバッファ領域として使用される。主記憶装置１２は、例えばRandom Access Memory（ＲＡＭ），或いはＲＡＭとRead Only Memory（ＲＯＭ）との組み合わせで形成される。
【００２１】
補助記憶装置１３は、例えば、ハードディスクドライブ（ＨＤＤ），Solid State Drive（ＳＳＤ），フラッシュメモリ，Electrically Erasable Programmable Read-Only Memory（ＥＥＰＲＯＭ）などの不揮発性記憶媒体で形成される。補助記憶装置１３は、データやプログラムの記憶領域として使用される。
【００２２】
グラフィック処理装置１４は、ディスプレイ１８と接続される。ディスプレイ１８は、情報やデータを表示する。ディスプレイ１８は、出力装置の一例であり、出力装置は、プリンタを含み得る。入力ＩＦ１５は、入力装置１９と接続される。入力装置１９は、例えば、ボタン，キー，ポインティングデバイス（マウスなど），タッチパネルなどである。
【００２３】
ドライブ装置１６は、ディスク記憶媒体２０に対するデータの読み書きを行う。ディスク記憶媒体２０は、プログラムやデータを記憶する。ディスク記憶媒体２０は、磁気ディスク，光磁気ディスク，光ディスクを含む。ディスク記憶媒体２０は、例えば、フレキシブルディスク，ＣＤ，ＤＶＤ，ブルーレイなどを含む。
【００２４】
通信ＩＦ１７は、通信ネットワーク２１に接続され、他の通信装置とデータを送受信するインタフェース回路である。通信ＩＦ１７として、例えば、ＬＡＮカードやネットワークインタフェースカード（ＮＩＣ）と呼ばれる通信インタフェースカードが適用される。ＩＰ−ＯＰＳ１０は、通信ネットワーク２１を介して装置Ａ〜Ｅのそれぞれと通信可能に接続される。
【００２５】
ＣＰＵ１１は、主記憶装置１２及び補助記憶装置１３の少なくとも一方に記憶されたプ
ログラムを主記憶装置１２にロードして実行する。これによって、ＣＰＵ１１は、情報処理装置をＩＰ−ＯＰＳ１０として動作させる。すなわち、ネットワークの監視処理や、ＶＬＡＮ等の論理設定の変更処理などを行う。ＣＰＵ１１による処理の詳細は後述する。
【００２６】
ＣＰＵ１１は、ＭＰＵ（Microprocessor）、プロセッサとも呼ばれる。ＣＰＵ１１は、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のＣＰＵがマルチコア構成を有していても良い。ＣＰＵ１１で行われる処理の少なくとも一部は、ＣＰＵ以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit（GPU）、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等の専用プロセッサで行われても良い。
【００２７】
また、ＣＰＵ１１で行われる処理の少なくとも一部は、集積回路（ＩＣ）、その他のディジタル回路で行われても良い。また、集積回路やディジタル回路はアナログ回路を含んでいても良い。集積回路は、ＬＳＩ，Application Specific Integrated Circuit（ASIC
），プログラマブルロジックデバイス（ＰＬＤ）を含む。ＰＬＤは、例えば、Field-Programmable Gate Array(FPGA)を含む。ＣＰＵ１１で行われる処理の少なくとも一部は、プ
ロセッサと集積回路との組み合わせにより実行されても良い。組み合わせは、例えば、マイクロコントローラ（ＭＣＵ），ＳｏＣ（System-on-a-chip），システムＬＳＩ，チップセットなどと呼ばれる。
【００２８】
図３は、ＩＰ−ＯＰＳ１０が有する機能を模式的に示す図である。ＣＰＵ１１は、プログラムの実行によって、ＮＷ構成表示部１１１，物理構成情報抽出部１１２，論理構成設定部１１３，論理構成情報抽出部１１４，ループ構成チェック部１１５，及び機器情報収集部１１６として動作する。主記憶装置１２及び補助記憶装置１３の少なくとも一方には、ＮＷ情報格納部１１７が設けられる。
【００２９】
また、図２に示したディスプレイ１８及び入力装置１９は、ＩＰ−ＯＰＳ１０のオペレータにユーザインタフェース（ＵＩ）１９Ａを提供する。
【００３０】
ＮＷ情報格納部１１７には、ネットワークＮの物理構成を示す情報（物理構成情報）が記憶される。例えば、オペレータがＵＩ１９Ａを用いて、ネットワークＮの物理構成情報の表示要求を入力する。すると、物理構成情報抽出部１１２が、ＮＷ情報格納部１１７から表示要求に対応する物理構成情報を読み出し、ＮＷ構成表示部１１１に渡す。ＮＷ構成表示部１１１は、ＵＩ１９Ａ（ディスプレイ１８）に、物理構成情報を表示する。
【００３１】
オペレータは、ＵＩ１９Ａを用いて、ネットワークＮの物理構成を参照し、論理構成の設定（ＶＬＡＮ等の設定情報）用の情報を入力する。論理構成設定部１１３は、入力された論理構成の設定用の情報を用いて、論理構成情報抽出部１１４がＮＷ情報格納部１１７から読み出す論理構成情報を更新（変更）する。
【００３２】
ループ構成チェック部１１５は、論理構成設定部１１３によって論理構成（ＶＬＡＮ等の設定情報）が更新（変更）される場合に、ネットワークＮにループが発生しないかのチェックを行う。ループ構成チェック部１１５は、「判定部」の一例である。ＮＷ情報格納部１１７は、「記憶部」の一例である。
【００３３】
機器情報収集部１１６は、ネットワークＮの監視を行う。すなわち、ネットワークＮを形成する各装置Ａ〜Ｅのような機器（通信装置）からのアラーム等を、通信ネットワーク２１を介して受信（収集）する。機器情報収集部１１６は、アラーム等の監視結果を示す情報を、ＮＷ情報格納部１１７に記憶（登録）する。
【００３４】
＜ＮＷ構成情報＞
以下に、ＮＷ構成情報に含まれる物理構成情報及び論理構成情報について説明する。
＜＜物理構成情報＞＞
ＮＷ情報格納部１１７は、少なくとも以下の（Ａ）〜（Ｃ）を含む物理構成情報を管理する。物理構成情報は、例えば、機器情報収集部１１６によって収集されＮＷ情報格納部１１７に記憶される。但し、物理構成情報は、ＮＷ情報格納部１１７に静的に（マニュアルで）記憶されることもできる。
（Ａ）物理ネットワーク装置情報
（Ｂ）物理ネットワークポート情報
（Ｃ）物理ネットワークリンク情報
【００３５】
図４は、ネットワークＮの物理構成例を示す。物理ネットワークは、複数の“スイッチ”と、“スイッチ”に接続される“エッジ”とで形成される。“スイッチ”は、図１に示したネットワークＮにおける管理対象の機器である通信装置１に相当する。“エッジ”は、通信装置１に接続された拠点２に存するホストに相当する。
【００３６】
図４に示す例では、物理ネットワークは、スイッチ“Ｓ００１”と、スイッチ“Ｓ００２”と、スイッチ“Ｓ００３”とを含む。スイッチ“Ｓ００１”は、ポート“ＰＯ１０１”，ポート“ＰＯ１０２”，及びポート“ＰＯ１０３”を含んでいる。スイッチ“Ｓ００２”は、ポート“ＰＯ２０１”，ポート“ＰＯ２０２”，及びポート“ＰＯ２０３”を含んでいる。スイッチ“Ｓ００３”は、ポート“ＰＯ３０１”，及びポート“ＰＯ３０２”を含んでいる。
【００３７】
スイッチ“Ｓ００１”のポート“ＰＯ１０１”は、スイッチ“Ｓ００２”のポート“ＰＯ２０１”と物理リンク“Ｌ００１”を介して接続されている。スイッチ“Ｓ００１”のポート“ＰＯ１０２”は、スイッチ“Ｓ００３”のポート“ＰＯ３０１”と物理リンク“Ｌ００２”を介して接続されている。スイッチ“Ｓ００１”のポート“ＰＯ１０３”には、物理リンク“Ｌ００４”を介してエッジ“Ｅ００１”が接続されている。
【００３８】
スイッチ“Ｓ００２”のポート“ＰＯ２０１”は、物理リンク“Ｌ００１”を介してスイッチ“Ｓ００１”のポート“ＰＯ１０１”と接続されている。スイッチ“Ｓ００２”のポート“ＰＯ２０２”は、物理リンク“Ｌ００３”を介してスイッチ“Ｓ００３”のポート“ＰＯ３０２”と接続されている。スイッチ“Ｓ００２”のポート“ＰＯ２０３”には、物理リンク“Ｌ００５”を介してエッジ“Ｅ００２”が接続されている。
【００３９】
スイッチ“Ｓ００３”のポート“ＰＯ３０１”は、物理リンク“Ｌ００２”を介してスイッチ“Ｓ００１”のポート“ＰＯ１０２”と接続されている。スイッチ“Ｓ００３”のポート“ＰＯ３０２”は、物理リンク“Ｌ００３”を介してスイッチ“Ｓ００２”のポート“ＰＯ２０２”と接続されている。図４に示したエッジ“Ｅ００１”及びエッジ“Ｅ００２”は、管理対象のネットワークＮの外にあり、管理対象外の装置である。
【００４０】
図５は、物理ネットワーク装置情報を格納するテーブルＴ１のデータ構造例を示す。テーブルＴ１は、例えば、ＮＷ情報格納部１１７に記憶される。物理ネットワーク装置情報は、機器情報収集部１１６によって収集される。図５に示すように、テーブルＴ１には、物理ネットワーク装置情報として、ネットワークＮ内の（管理対象の）「物理機器そのものの情報」が格納される。
【００４１】
実施形態では、テーブルＴ１には、主キーである「装置ＩＤ」に対応する「装置名」及び「付帯情報」が格納される。装置ＩＤは、通信装置１の識別子である。装置名は、人が通信装置１を認識しやすいように名付けられた通信装置１の名称である。付帯情報には、
例えば、装置種別、メーカー、ソフト情報、ログインＩＤ、パスワード等が含まれる。
【００４２】
図６は、物理ネットワークポート情報を格納するテーブルＴ２のデータ構造例を示す。テーブルＴ２は、例えば、ＮＷ情報格納部１１７に記憶される。図６に示すように、テーブルＴ２には、ネットワークＮ内にある「全てのポート（インターフェース）の情報」が格納される。当該情報は、機器情報収集部１１６において収集されたり、物理構成情報抽出部１１２によってオペレータにより登録されたりする。但し、物理ネットワークポート情報の取得方法は、上記以外の方法であっても良い。
【００４３】
テーブルＴ３は、ポート毎に用意されるレコード（エントリ）を格納する。レコードには、主キーである「ポートＩＤ」に対応する外部キーである「装置ＩＤ」が格納される。さらに、レコードには、「ポート名」及び「付帯情報」等が登録される。
【００４４】
ポートＩＤは、ポートの識別子であり、ポート名は、ポートの名称であり、装置ＩＤは、ポートＩＤを有するポートを含む通信装置１の装置ＩＤである。付帯情報として、例えば、インタフェース速度、実装位置情報等が格納される。
【００４５】
図７は、物理ネットワークリンク情報を格納するテーブルＴ３のデータ構造例を示す。テーブルＴ３は、例えば、ＮＷ情報格納部１１７に記憶される。図６に示すように、テーブルＴ２には、「ネットワークＮ内にある通信装置１間の物理リンクを示す情報」が格納される。当該情報は、機器情報収集部１１６において収集されたり、物理構成情報抽出部１１２によってオペレータにより登録されたりする。但し、物理ネットワークポート情報の取得方法は、上記以外の方法であっても良い。
【００４６】
テーブルＴ３は、リング毎に用意されるレコード（エントリ）を記憶する。レコードは、「リンク名」と、「リンクＩＤ」と、「ポート１＿ＩＤ」と、「ポート２＿ＩＤ」と、付帯情報とを含む。
【００４７】
リンクＩＤは、リンクの識別子である。リンク名は、リンクの名称である。ポート１＿ＩＤは、リンクの一端を収容するポートのポートＩＤであり、ポート２＿ＩＤは、リンクの他端を収容するポートのポートＩＤである。
【００４８】
但し、リンクを収容するポートが、ユーザの拠点や、他社網のような管理外にある場合には、対応するポートＩＤとして「ＮＵＬＬ」が代入される。テーブルＴ３において、リンクＩＤが主キーであり、残りは外部キーである。付帯情報としては、例えば、リンク速度，エンドユーザ拠点名，対向情報，接続先他キャリア等を示す情報が管理される。
【００４９】
＜＜論理構成情報＞＞
また、ＮＷ情報格納部１１７は、少なくとも以下の（ａ）〜（ｃ）を含む論理構成情報を管理する。論理構成情報の登録（記憶）は、例えば、論理構成設定部１１３がオペレータからＵＩ１９Ａを介して取得した情報がＮＷ情報格納部１１７に記憶される。
（ａ）論理ネットワーク本情報
（ｂ）論理ネットワーク所属情報
（ｃ）付帯情報テーブル
【００５０】
図８は、物理ネットワーク上に設定される論理ネットワークの一例を示す図である。図８に示す例では、物理ネットワークに論理ネットワークとしてのＶＬＡＮ１及びＶＬＡＮ２が設定された場合を示す。
【００５１】
図９は、論理ネットワーク本情報を格納するテーブルＴ４のデータ構造例を示す。テー
ブルＴ４は、ネットワークＮに存在する全てのＶＬＡＮを特定する情報が格納される。ＶＬＡＮを特定する情報は、例えばＶＬＡＮ＿ＩＤ（ＶＬＡＮ番号）である。ＶＬＡＮ番号は、ＶＬＡＮの識別子であり、ユーザ毎に一意に割り振られている。ＶＬＡＮ番号を含むＶＬＡＮ情報は、例えば、機器情報収集部１１６において収集される。また、ＶＬＡＮ情報は、オペレータが物理構成情報抽出部１１２を用いてＮＷ情報格納部１１７に格納することもできる。但し、これら以外の方法でＶＬＡＮ情報を格納することもできる。
【００５２】
テーブルＴ４は、ＶＬＡＮ毎に用意される１以上のレコード（エントリ）を含む。レコードは、ＶＬＡＮ名と、ＶＬＡＮ＿ＩＤと、付帯情報とを含む。ＶＬＡＮ＿ＩＤが主キーとして使用される。付帯情報として、エンドユーザ名（例えば、企業名），用途，契約情報，冗長構成の有無，ＳＴＰ（Spanning Tree Protocol）等のプロトコルの利用有無、ループ検知の有無を示す情報などが管理される。
【００５３】
図１０は、論理ネットワーク所属情報を格納するテーブルＴ５のデータ構造例を示す。テーブルＴ５には、ネットワークＮに存在する全てのＶＬＡＮ＿ＩＤとリンクＩＤとの対応関係（対応付け）が格納される。ＶＬＡＮ＿ＩＤとリンクＩＤとの対応関係は、論理ネットワークのＩＤで管理される。論理ネットワーク所属情報は、例えば、機器情報収集部１１６において収集される。また、論理ネットワーク所属情報は、オペレータが物理構成情報抽出部１１２を用いてＮＷ情報格納部１１７に格納することもできる。但し、これら以外の方法で論理ネットワーク所属情報を格納することもできる。
【００５４】
テーブルＴ５は、１以上のレコード（エントリ）を格納する。レコードは、論理ネットワークの「ＩＤ」と、ＩＤに対応するＶＬＡＮ＿ＩＤ及びリンクＩＤと、付帯情報とを含む。図１１の格納内容は一例であり、図９に示した論理ネットワークの構成と一致しない。「ＩＤ」が主キーとして使用され、「ＶＬＡＮ＿ＩＤ」及び「リンクＩＤ」が外部キーとして使用される。付帯情報は、リンク情報、接続先（エンドユーザや他社）の情報、冗長構成の有無を示す情報などが含まれる。
【００５５】
図１１，図１２，図１３は、付帯情報テーブルのデータ構造例を示す図である。図１１に示すように、付帯情報テーブルＴ６は、１以上のレコード（エントリ）を格納する。レコードは、付帯ＩＤと、該当物を示す情報と、付帯種別ＩＤと、情報領域を示す情報と、内容情報とを含む。
【００５６】
該当物は、例えば、ＶＬＡＮやＶＬＡＮに係るポート情報やリンク情報を示す情報である。例えば、該当するＶＬＡＮ＿ＩＤ，リンクＩＤ，ポートＩＤが設定される。付帯ＩＤは、該当物に対応づけられた付帯情報の識別情報（ＩＤ）である。付帯種別ＩＤは、該当物に対応する付帯情報の種別を示す識別情報（ＩＤ）である。情報領域は、該当物に係る処理を示す情報の識別子（Ｎ００１等）を記憶する。内容情報は、該当物に対応する付帯情報の内容を示す。
【００５７】
図１２は、テーブルＴ６と付帯種別ＩＤでリンク付けされたテーブルＴ６−１のデータ構造例を示す。テーブルＴ６−１は、付帯種別ＩＤに対応づけて、作業の分類と、作業内容を示す情報を記憶する。図１３は、テーブルＴ６と情報領域でリンク付けされたテーブルＴ６−２のデータ構造例を示す。テーブルＴ６−２には、情報領域の識別子に対応する情報が記憶される。
【００５８】
図１４は、ＮＷ情報格納部１１７に格納されるテーブル間のＥＲ図（Entity Relationship Diagram）を示す。テーブルＴ１の装置ＩＤは、１：ｎ（ｎは正の整数）の関係でテ
ーブルＴ２の装置ＩＤとリンク付けされる。
【００５９】
テーブルＴ２のポートＩＤは、１：１の関係で、テーブルＴ３のポート１＿ＩＤとリンク付けされる。また、ポートＩＤは、ｚ（０又は１）：１の関係で、テーブルＴ３のポート２＿ＩＤとリンク付けされる。ポートが管理対象外の場合、ポートＩＤが管理されないからである。
【００６０】
テーブルＴ３のリンクＩＤは、１：ｎの関係で、テーブルＴ５のリンクＩＤとリンク付けされる。テーブルＴ４のＶＬＡＮ＿ＩＤは、１：ｎの関係で、テーブルＴ５のＶＬＡＮ＿ＩＤとリンク付けされる。
【００６１】
＜ループ検知処理＞
次に、ＩＰ−ＯＰＳ１０におけるループ検知処理について説明する。図１５は、ループ検知処理を説明するフローチャートである。ループ検知処理は、例えば、周期的に実行される。但し、イベントの発生や、要求の入力を契機に実行されるようにしても良い。
【００６２】
図１５における０１では、論理構成情報抽出部１１４（抽出部１１４）による論理構成抽出処理が実行される。０２では、ループ構成チェック部１１５（チェック部１１５）によるループ構成チェック処理が実行される。０３では、論理構成設定部１１３（設定部１１３）によるループ検知結果出力処理が実行される。各処理は、抽出部１１４，チェック部１１５，及び設定部１１３のそれぞれとして動作するＣＰＵ１１によって行われる。
【００６３】
＜＜論理構成抽出処理＞＞
論理構成抽出処理は、ループの有無の判定対象となるネットワークの接続構成を示す情報（接続構成情報）と、ネットワークＮの端点を示す情報（端点情報）とを抽出する処理である。
【００６４】
図１６は、論理構成検知処理（０１）の説明図である。抽出部１１４は、テーブルＴ４（論理ネットワーク本情報テーブル：図９）を参照し、検索対象のＶＬＡＮ＿ＩＤ（例えば、設定変更を実施するＶＬＡＮ＿ＩＤ）を選択して抽出する（図１５＜１＞）。なお、この時点で、各テーブルの格納内容は、設定変更後のＶＬＡＮの内容を示すと仮定する。
【００６５】
抽出部１１４は、テーブルＴ５（論理ネットワーク所属情報テーブル：図１０）を参照し、＜１＞で抽出したＶＬＡＮ＿ＩＤに対応するｎ個のリンクＩＤを抽出する（図１５＜２＞）。
【００６６】
抽出部１１４は、テーブルＴ３（物理ネットワークリンク情報テーブル：図７）を参照し、リンクＩＤと関連するポートＩＤ（ポート１＿ＩＤ，ポート２＿ＩＤ）、すなわち、リンクの各端を収容するポートを示す情報を抽出する（図１５＜３＞）。抽出部１１４は、ポート２＿ＩＤとして「ＮＵＬＬ」が設定されている部分をネットワークＮの端点と定義する（図１５＜４＞）。
【００６７】
抽出部１１４は、テーブルＴ２（物理ネットワークポート情報テーブル：図６）を参照し、テーブルＴ３から抽出された各ポート１＿ＩＤに対応する装置ＩＤをテーブルＴ２から抽出する。抽出部１１４は、論理ネットワークの両端に位置するポート１＿ＩＤに対応する装置ＩＤをそれぞれ装置１＿ＩＤ，装置２＿ＩＤと定義する。抽出部１１４は、最終的に、検索対象のＶＬＡＮに属する論理ネットワークのＩＤ，装置１＿ＩＤ，装置２＿ＩＤが対応づけられたテーブルＴ７（論理ネットワークテーブル：図２２参照）を作成する。
【００６８】
＜＜ループ構成チェック処理＞＞
図１７は、ループ構成チェック処理（０２）の例を示すフローチャートである。００１
の処理において、チェック部１１５は、未チェックの端点リンクを有するレコードがテーブルＴ７にあるか否かを判定する。端点リンクとは、端点情報に基づき、端点がある（ＮＵＬＬが設定されている）と定義されたリンクである。該当のレコードが存在すると判定される場合には処理が００２に進み、該当のレコードが存在しないと判定される場合には処理が００８に進む。
【００６９】
００２の処理では、チェック部１１５は、端点リンクを含むレコードを抽出対象として１つ抽出する。００３の処理では、チェック部１１５は、００２で選択した（抽出した）レコードの状態を「チェック済」に設定する。００４の処理では、チェック部１１５は、抽出したレコードの対向装置が端点か否か（対向装置に相当する装置１＿ＩＤ又は装置２＿ＩＤの値がＮＵＬＬか否か）を判定する。対向装置が端点と判定される場合には、処理が００１に進み、そうでない場合には、処理が００５に進む。
【００７０】
００５の処理では、チェック部１１５は、抽出レコードの対向装置のＩＤと同一の装置ＩＤを含む、未チェック状態のレコードをテーブルＴ７から検出する。００６の処理では、チェック部１１５は、００５で検出されたレコードの数が２以上か否かを判定する。レコード数が２以上の場合には処理が００１に戻り、そうでない場合には、処理が００７に進む。００７の処理では、チェック部１１５は、００５にて検出したレコードをチェック対象として抽出し、処理を００３に進める。
【００７１】
００８に処理が進んだ場合には、チェック部１１５は、テーブルＴ７に未チェックのレコード（未抽出のレコード）があるか否かを判定する。未チェックのレコードがある場合には、チェック部１１５は、ループがあると判定し、そうでなければ、チェック部１１５は、ループ無しと判定する。
【００７２】
＜＜ループ検知結果出力処理＞＞
ループ検知結果出力処理では、設定部１１３が、ループの有無をＵＩ１９Ａを形成するディスプレイ１８に表示する等して、オペレータにループの発生を報知する。ループの発生は、音や光によって報知されても良い。
【００７３】
＜動作例＞
次に、実施形態に係るＩＰ−ＯＰＳ１０を用いた動作例について説明する。動作例として、ネットワーク構成情報を用いたループ検出処理について説明する。当該ループ処理は、例えば、ＵＩ１９Ａを用いて、ＶＬＡＮの設定変更の要求が入力された場合に開始される。但し、処理開始の契機は上記以外であっても良い。
【００７４】
図１８は、動作例に係る管理対象のネットワークの構成例を示す。ネットワークＮは、通信装置１に相当する装置Ａ（Ｓ００１），装置Ｂ（Ｓ００２），装置Ｃ（Ｓ００３），装置Ｄ（Ｓ００４），装置Ｅ（Ｓ００５）を有する。また、ネットワークＮは、端点１，端点２，及び端点３を有する。各端点は、拠点２に存するホストに相当し、ＩＰ−ＯＰＳ１０の対象外である。
【００７５】
図１９，図２０，図２１，図２２は、動作例における論理構成抽出処理の説明図である。図１９に示すように、抽出部１１４は、テーブルＴ４（論理ネットワーク本情報テーブル）を参照する。動作例では、例として、ＶＬＡＮ１の設定変更が要求されたと仮定する。抽出部１１４は、テーブルＴ４から、ＶＬＡＮ１に対応するＶＬＡＮ＿ＩＤ＝Ｖ００１を抽出する。
【００７６】
さらに、抽出部１１４は、テーブルＴ５を参照し、ＶＬＡＮ＿ＩＤ＝Ｖ００１に対応するレコードを抽出する。レコードの抽出によって、ＶＬＡＮ１に所属するリンクの情報（
リンクＩＤ）を抽出する。
【００７７】
図２０に示すように、抽出部１１４は、テーブルＴ３を参照し、テーブルＴ５から抽出したレコード群Ｔ５−１の各リンクＩＤに対応するレコードを、テーブルＴ３（物理ネットワークリンク情報テーブル）から抽出する。このとき、抽出部１１４は、ポート２＿ＩＤとしてＮＵＬＬが入力されている箇所（ポート）を、端点と定義する。図２０の例では、リンクＩＤ“Ｌ０６０”，“Ｌ０７０”に対応するポート２＿ＩＤにそれぞれＮＵＬＬが設定されているので、これらは端点として定義される。
【００７８】
図２１に示すように、抽出部１１４は、テーブルＴ３から抽出されたポート１＿ＩＤに対応するレコードをテーブルＴ２（物理ネットワークポート情報テーブル）から抽出する。抽出部１１４は、ポート１＿ＩＤに対応する装置ＩＤを、論理ネットワークの両端にある各装置のＩＤ、すなわち、装置１＿ＩＤ及び装置２＿ＩＤとして定義する。
【００７９】
そして、抽出部１１４は、図２２に示すように、リンク名と、論理ネットワークのＩＤと、リンク（論理ネットワーク）の両端にある装置のＩＤである装置１＿ＩＤ及び装置２＿ＩＤと、付帯情報とが１レコード（１エントリ）に記憶されるテーブルＴ７を作成する。
【００８０】
付帯情報として、これまでに説明したテーブルＴ４，テーブルＴ５，テーブルＴ３，テーブルＴ２に格納又は関連づけられていた付帯情報が、テーブルＴ７の対応するレコードに格納又は関連づけされる。テーブルＴ７において、装置２＿ＩＤにＮＵＬＬが設定されている場合、そこは論理ネットワークの端点として扱われる。なお、図２２には、リンク名“Ｂ−Ｅ”に係るレコードが格納されているが、当該レコードは、別の動作例にて使用されるもので、ここではなくても良い。
【００８１】
テーブルＴ７に含まれる複数のレコードは、記憶部に記憶される「複数のレコード」の一例である。テーブルＴ７における「ＩＤ」は、「リンクを特定する情報」の一例である。装置１＿ＩＤ及び装置２＿ＩＤは、「リンクの各端部に係る情報」の一例である。装置１＿ＩＤ及び装置２＿ＩＤに格納される装置ＩＤは、「リンクと接続されるネットワーク内のノードの識別子」の一例である。装置１＿ＩＤ及び装置２＿ＩＤにおける「ＮＵＬＬ」は、「ネットワークの端点を示す情報」の一例である。端点情報を含むレコードは、「第１レコード」の一例である。装置ＩＤは、ノード識別子の一例である。
【００８２】
図２２に示したテーブルＴ７を用いて、チェック部１１５によるループ構成チェック処理が行われる。図２３〜３２は、ループ構成チェック処理の動作例の説明図である。
【００８３】
図２３において、チェック部１１５は、テーブルＴ７を参照し、チェックのついていない（未チェックの）装置２＿ＩＤ＝ＮＵＬＬのレコードがあるかを判定する（図１７，００１）。ここでは、チェック部１１５は、未チェックのレコードの一つとして、論理ネットワークのＩＤ“Ｌ００５”のレコードを抽出する（図１７，００２）。当該レコードは、端点１に対応するレコード（第１レコード）である。
【００８４】
なお、この動作例では、複数の未チェック状態の端点を含むレコードのうち、登録順が古い（テーブルの先頭に近い）順でレコードが選択される。但し、これ以外の選択方法でレコードが抽出されても良い。
【００８５】
図２４において、チェック部１１５は、抽出レコードのチェックを行う（図１７，００３）。チェック部１１５は、抽出レコードを「チェック済」の状態にする。図２４等において、チェック済のレコードは、網掛け（グレー）で表示され、チェック部１１５のレコ
ード数の判定対象から除外される。チェック部１１５は、ＮＵＬＬが設定されたリンクの端部の逆側の端部に係る情報に相当する、抽出レコード中の装置１＿ＩＤを参照し、装置１＿ＩＤの値がＮＵＬＬか否かを判定する（図１７，００４）。すなわち、対向装置が端点か否かが判定される。
【００８６】
ここでは、ＩＤ“Ｌ００５”のレコード中の装置１＿ＩＤの値はＮＵＬＬでない。装置Ｄの装置ＩＤ“Ｓ００４”が記憶されている。この場合、チェック部１１５は、装置ＩＤ“Ｓ００４”と同じ値を有し、且つ未チェックのレコードをテーブルＴ７から検出する（図１７，００５）。
【００８７】
図２４の例では、装置Ｄは、３つのリンクと接続されている。このため、ＩＤ“Ｌ００３”のレコードと、ＩＤ“Ｌ００６”のレコードとが検出される。チェック部１１５は、検出したレコードの数が２以上か否かを判定する（図１７，００６）。ここでは、チェック部１１５は、レコード数が２以上と判定する。
【００８８】
この場合、端点１に係る経路（端点１から３以上のリンクと接続されたノード（装置Ｄ）までの経路）ついてのチェックが終了し、端点２についてのチェックに進む。すなわち、図２５に示すように、チェック部１１５は、端点２に対応する、論理ネットワークのＩＤ“Ｌ００６”のレコードを抽出する（図１７，００１，００２）。
【００８９】
続いて、チェック部１１５は、図２６に示すように、ＩＤ“Ｌ００６”のレコードを「チェック済」の状態にするとともに（図１７，００３）、装置１＿ＩＤの値をチェックして端点の対向装置が端点（ＮＵＬＬ）か否かを判定する（図１７，００４）。
【００９０】
この場合、装置１＿ＩＤ＝Ｓ００４であるので、端点ではない。従って、チェック部１１５は、ＩＤ“Ｓ００４”を含む未チェックのレコードの検出を行う。このとき、“Ｌ０００５”のレコードはチェック済であり、レコード数の判定対象から除外されるので、チェック部１１５は、ＩＤ“Ｌ００３”のレコードを検出する（図１７，００５）。従って、検出されるレコード数は１である。この場合、チェック部１１５は、ＩＤ“Ｌ００３”のレコードをチェック対象として抽出し（図１７，００７）、００３へ処理を進める。
【００９１】
図２７に示すように、チェック部１１５は、ＩＤ“Ｌ００３”のレコードにおける装置ＩＤ“Ｓ００４”の対向装置が端点か否か（装置１＿ＩＤがＮＵＬＬか否か）を判定する（図１７，００４）。この場合、装置１＿ＩＤ＝Ｓ００２であるので、チェック部１１５は、対向装置は端点でないと判定し、装置１＿ＩＤ＝Ｓ００２を含む未チェックのレコードを検出する（図１７，００５）。ここでは、ＩＤ“Ｌ００１”のレコードが検出されるので、チェック部１１５は、当該レコードをチェック対象に設定し（００７）、処理を００３に進める。
【００９２】
図２８において、チェック部１１５は、ＩＤ“Ｌ００１”のレコードをチェック済に設定するとともに、当該レコードの装置２＿ＩＤ“Ｓ００２”の対向装置の装置ＩＤ（装置１＿ＩＤ）が、ＮＵＬＬか否かを判定する。この場合、装置１＿ＩＤ＝Ｓ００１であるので、チェック部１１５は、対向装置は端点でないと判定する。
【００９３】
チェック部１１５は、装置１＿ＩＤ＝Ｓ００１を含む未チェックのレコードとして、ＩＤ“Ｌ００２”のレコードを検出する。このため、チェック部１１５は、ＩＤ“Ｌ００２”のレコードをチェック対象として抽出し、チェック済に設定し、対向装置の値がＮＵＬＬか否かを判定する。
【００９４】
このとき、対向装置の値として、装置２＿ＩＤ＝Ｓ００３が得られる。このため、チェ
ック部１１５は、図２９に示すように、装置２＿ＩＤ＝Ｓ００３を含む未チェックのレコードとして、ＩＤ“Ｌ００４”のレコードを検出する。チェック部１１５は、当該レコードをチェック対象に設定する。
【００９５】
チェック部１１５は、ＩＤ“Ｌ００４”のレコードをチェック済に設定し、装置１_Ｉ
Ｄ＝Ｓ００３の対向装置の値がＮＵＬＬか否かを判定する。この場合、対向装置の値は、装置２＿ＩＤ＝Ｓ００５であり、ＮＵＬＬでない。このため、図３０に示すように、チェック部１１５は、装置２＿ＩＤ＝Ｓ００５を含む未チェックのレコードとして、ＩＤ“Ｌ００７”のレコードを検出する。
【００９６】
チェック部１１５は、ＩＤ“Ｌ００７”のレコードをチェック対象に設定し、００３〜００６の処理を行う。図３１に示すように、チェック部１１５は、ＩＤ“Ｌ００７”のレコードをチェック済に設定するとともに、装置１＿ＩＤ＝Ｓ００５の対向装置のＩＤ（装置２＿ＩＤ）がＮＵＬＬか否かを判定する（図１７，００４）。この場合、装置２＿ＩＤ＝ＮＵＬＬである。このため、チェック部１１５は、処理を００１に戻す。このように、端点２を始点とする経路のチェックは、装置Ｄ，装置Ｂ，装置Ａ，装置Ｃ，及び装置Ｅを辿り、端点２と異なる端点３の検出によって終了する。
【００９７】
チェック部１１５は、未チェックの端点リンクを含むレコードが存在しないと判定する（図１７，００１）。この場合、チェック部１１５は、テーブルＴ７に未チェックのレコードが存在するか否かを判定する（図１７，００８）。図３２に示すように、テーブルＴ７を形成する全てのレコードがチェック済である（複数のレコードから除外されている）。このため、チェック部１１５は、ループ無しと判定する。
【００９８】
なお、端点１、端点２に関連するレコードを除外する処理は、「第１レコードの一つで特定される端点から３以上のリンクが接続されるネットワーク内のノード又は端点と異なる他の端点に至るまでの経路に関連するレコードを除外する処理」の一例である。なお、端点１、端点２に関連するレコードを除外する処理を、「該経路に関連するレコードを複数のレコードから抽出する処理」と扱い、当該抽出する処理を第１レコードの全てについて行い、該処理後に未抽出のレコードが残った場合にループ有りと判定するようにしても良い。
【００９９】
また、００２，００３の処理は、「第１の処理」の一例である。００４，００５の処理は、「第２の処理」、「第４の処理」の一例である。００７の処理は、「第３の処理」の一例である。００３〜００７のループは、繰り返し実行される「第５の処理」の一例である。また、００４，００６から００１を経由してなされる００２の処理は、「第６の処理」の一例であり、後続する００３〜００７の処理は、「試行される第７の処理」の一例である。００８において、他の第１レコードがないが未抽出のレコード残っている場合にネットワークにループ有りと判定される。
【０１００】
図３３〜４０は、動作例において、ループ有りと判定される例の説明図である。図３３に示すように、当該動作例に係る論理ネットワークの構成では、装置Ｂと装置Ｅとの間に論理ネットワーク（ＩＤ“Ｌ００８”）が形成されている。これに合わせて、テーブルＴ７には、リンク名“Ｂ−Ｅ”のレコードが含まれる。
【０１０１】
図３３に示すテーブルＴ７に関して図１７の処理が開始されると、チェック部１１５は、装置２＿ＩＤがＮＵＬＬである未チェックのレコードが存在するので、そのうちの一つであるＩＤ“Ｌ００５”のレコードを抽出する（図１７，００１，００２）。チェック部１１５は、当該レコードをチェック済に設定する（図１７，００３）。
【０１０２】
図３４に示すように、装置２＿ＩＤの対向装置のＩＤ（装置１＿ＩＤ）の値は装置１＿ＩＤ＝Ｓ００４であり、ＮＵＬＬでない。このため、チェック部１１５は、Ｓ００４を含む未チェックのレコードとして、ＩＤ“Ｌ００３”のレコードとＩＤ“Ｌ００６”のレコードとを検出する（図１７，００４，００５）。このため、チェック部１１５は、処理を００１に戻す。
【０１０３】
図３５に示すように、チェック部１１５は、ＩＤ“Ｌ００６”のレコードをチェック対象として抽出する。図３６に示すように、チェック部１１５は、ＩＤ“Ｌ００６”のレコードをチェック済に設定し、対向装置のＩＤがＮＵＬＬか否かを判定する。この場合、対向装置のＩＤに相当する装置１＿ＩＤの値が装置１＿ＩＤ＝Ｓ００４である。このため、チェック部１１５は、Ｓ００４を含む未チェックのレコードとして、ＩＤ“Ｌ００３”のレコードを検出する。
【０１０４】
図３７に示すように、チェック部１１５は、ＩＤ“Ｌ００３”のレコードをチェック対象に設定し、チェック済みに設定するとともに、対向装置の値（装置１＿ＩＤの値）がＮＵＬＬか否かを判定する。この場合、装置１＿ＩＤ＝Ｓ００２であるので、チェック部１１５は、Ｓ００２を含む未チェックのレコードとして、ＩＤ“Ｌ００１”のレコードと、ＩＤ“Ｌ００８”のレコードとを検出する。このため、処理が００１に戻る。
【０１０５】
図３８に示すように、チェック部１１５は、別の端点リンクを含むレコード（ＩＤ“Ｌ００７”）を抽出する。チェック部１１５は、当該レコードをチェック済みに設定し、対向装置のＩＤが装置１＿ＩＤ＝Ｓ００５であるので、Ｓ００５を含む未チェックのレコードとして、ＩＤ“Ｌ００３”のレコードとＩＤ“Ｌ００８”のレコードとを検出する。
【０１０６】
この結果、チェック部１１５は、処理を００１に戻す。図４０に示すように、テーブルＴ７には、端点リンクを含む未チェックのレコードは存在しない。よって、チェック部１１５は、未チェックのレコード（除外されないレコード）があるか否かを判定する。この動作例では、“Ｌ００１”，“ｌ００２”，“Ｌ００４”，及び“Ｌ００８”のレコードが残っている（除外されていない）。このため、チェック部１１５は、ループ有りと判定する。
【０１０７】
＜付帯情報＞
上述したループ判定処理のために、以下の設定を実施することで、システム（ＩＰ−ＯＰＳ１０）の管理対象外のネットワークや別面として管理されているネットワークにおいても、ループ発生の有無を判定可能とすることができる。
【０１０８】
例えば、複数のネットワークを、付帯情報を元に端点を繋ぎ合わせて同一ネットワークとしてループ判定のチェック対象に含めることが考えられる（第１の方法）。或いは、他社網利用などの管理対象外のネットワークを、付帯情報を用いて端点を繋ぎ合わせることでループ判定のチェック対象とすることが考えられる（第２の方法）。
【０１０９】
図４１は、付帯情報を用いて管理対象外のネットワークを管理対象のネットワークと同一のネットワークとして扱う場合のネットワーク構成例を示す。図４１において、装置Ｂ（Ｓ００２）は、ポート“Ｐ００１２”を有し、管理対象外の拠点（ホスト）Ｘ１と、リンク“Ｌ００９”を介して接続されている。当該ネットワークは、管理対象外のネットワークである。また、装置Ｅ（Ｓ００５）は、ポート“Ｐ００１３”を有し、管理対象外の拠点（ホスト）Ｘ２と、リンク“Ｌ０１０”を介して接続されている。当該ネットワークも、管理対象外のネットワークである。このように、図４１では、複数のネットワークが統合され、一つのネットワークとして扱われる。
【０１１０】
抽出部１１４は、上述した論理構成抽出処理（図１５，０１）において、テーブルＴ７を生成する際に参照するテーブルに記憶された付帯情報に基づき、リンク“Ｌ００９”及び“Ｌ０１０”の管理対象外ネットワークに係るレコードを、テーブルＴ７に含める。
【０１１１】
例えば、図示は省略するが、テーブルＴ２（物理ネットワークポート情報）において、装置ＩＤ“Ｓ００２”に対応するポート“Ｐ００１２”のレコードと、装置ＩＤ“Ｓ００５”に対応するポート“Ｐ００１３”のレコードとが管理される。一方で、付帯情報として、リンク“Ｌ００９”及びリンク“Ｌ０１０”が管理対象外ネットワークであることを示す情報が格納されることが考えられる。
【０１１２】
この場合、例えば、オペレータのＵＩ１９Ａを用いた要求に応じて、抽出部１１４は、図４２に示すように、リンク“Ｌ００９”及び“Ｌ０１０”に係るレコードを含むテーブルＴ７を作成する。この場合、付帯情報“info001”，“info002”として、管理対象外のネットワークを管理対象のネットワークＮに含めることが定義されている。
【０１１３】
また、ユーザが所望する場合、図４２に示した端点を含むリンク（“Ｌ００９”，“Ｌ０１０”）のレコードに含まれた付帯情報を用いて、装置ＩＤ“００２”の通信装置１と、装置ＩＤ“００５”の通信装置１との間にリンクを追加することができる。
【０１１４】
管理対象外のネットワークは、ＩＰ−ＯＰＳ１０以外で管理され、管理対象外のネットワークに係る情報は、特定の「付帯種別ＩＤ」と「情報領域」とを用いて管理される。図４３は、テーブルＴ７の一例を示す。図４３に示すように、テーブルＴ７に、ＩＤ“ＬＯ１２”のレコードと、ＩＤ“Ｌ０１３”のレコードとが記憶される場合を仮定する。これらのレコードは、管理対象外のレコードである。
【０１１５】
ＩＤ“ＬＯ１２”のレコードは、付帯情報として付帯ＩＤ“info001”を含み、ＩＤ“
Ｌ０１３”のレコードは、付帯情報として付帯ＩＤ“info002”を含んでいる。図４４は
、付帯情報テーブルＴ６の一例を示す。図４４の例において、テーブルＴ６には、テーブルＴ７において付帯情報として格納された付帯ＩＤ“info001”及び“info002”に対応するレコードが格納されている。
【０１１６】
付帯ＩＤ“info001”のレコードは、ポート“Ｐ０００５”を該当物とし、付帯種別Ｉ
Ｄ“f001”及び情報領域“N001”が設定されている。付帯ＩＤ“info001”のレコードは
、ポート“Ｐ００１３”を該当物とし、付帯種別ＩＤ“f001”及び情報領域“N001”が設定されている。付帯種別ＩＤ“f001”は、対応ネットワークへの接続を意味し（図１２参照）、情報領域“N001”は、ネットワーク接続を意味する（図１３参照）。
【０１１７】
この場合、抽出部１１４は、付帯種別ＩＤ及び情報領域が同一のレコードを用い、これらの定義に従って、該当物間をリンクで接続する。これによって、図４５に示すように、“Ｓ００２”と“Ｓ００５”とが両端にあるリンクのレコード（リンク名“ｎｅｗ”）をテーブルＴ７に追加する。このようなテーブルＴ７を用いて、ループ検知処理が実行される。
【０１１８】
また、付帯情報を用いて、ループ検知処理のオフを制御することができる。図４６は、テーブルＴ４の一例であり、図４７は、テーブルＴ４に対応する付帯情報テーブルＴ６の一例を示す。
【０１１９】
図４６に示す例では、ＶＬＡＮ１のレコードの付帯情報に、付帯ＩＤ“info003”が格
納されている。図４７に示すように、付帯ＩＤ“info003”には、付帯種別ＩＤ“f002”
が設定されている。ここでの“f002”は、図１２に示すように、ループ検知不要（ループ
検知しない）ことを意味する。また、テーブルＴ６には、付帯情報としてＳＴＰ（Spanning Tree Protocol）を使用することを示す情報が格納されている。
【０１２０】
図１５に示したループ構成チェック処理において、テーブルＴ３が参照され、設定変更対象のＶＬＡＮに付帯ＩＤ“info003”が対応づけられている場合、ループ構成チェック
処理（０２）におけるループ検知処理は行われない。この場合、ループ検知結果出力処理（０３）において、ＶＬＡＮに「ユーザ意図のループ有り（正常）」と判定される。その後の判断はユーザに委ねられる。
【０１２１】
＜実施形態の効果＞
実施形態に係るＩＰ−ＯＰＳ１０（ループ検出装置の一例）は、ＣＰＵ１１と、メモリ（主記憶装置１２と補助記憶装置１３との少なくとも一方）を含む。メモリは、テーブルＴ７を記憶する。ＣＰＵ１１は、チェック部１１５（判定部）として動作し、図１７に示したようなループ構成チェック処理（ループの有無の判定処理）を行う。
【０１２２】
実施形態におけるループの有無の判定処理では、フレームをネットワークに流すこともなければ、複雑な行列計算も行わない。チェック部１１５は、ＩＰ−ＯＰＳ１０で管理している情報（テーブルＴ７に記憶された論理ネットワーク（ＶＬＡＮ）の情報）を用いた簡易な処理を行う。従って、ループの有無の判定に要する時間を短縮し得る。例えば、ユーザによるＶＬＡＮ設定の変更時に、当該設定変更によってループが発生するかを短時間で判定可能となる。ループの発生が検出されることで、ループを有するトポロジでの運用が回避されるので、実際のパケットのループを回避でき、障害対応工数を削減することができる。
【０１２３】
また、実施形態では、付帯情報を用いて、管理対象外のネットワークを管理対象のネットワークＮの一部として取り込んだテーブルＴ７を用いてループの有無の判定を行うことができる。また、付帯情報を用いて、ループ検知処理のオフを制御できる。例えば、ユーザが意図したループが論理ネットワークに存在する場合に、ループ検知処理をオフにして、無用のループ発生のアラームが発生するのを回避することができる。
【０１２４】
なお、実施形態では、ＶＬＡＮを論理ネットワークの一例として説明したが、ＶＬＡＮ以外の論理ネットワークや物理ネットワークにも実施形態の構成は適用できる。すなわち、テーブルＴ７に示したデータ構造で定義できるネットワークに実施形態の構成は適用できる。この場合、ネットワークは一つのネットワークとして扱われるので、実際には複数の管理主体で管理されていることや、或る管理者の管理下にあるか否かは問題とならない。以上説明した実施形態の構成は、適宜組み合わせることができる。
【符号の説明】
【０１２５】
１・・・通信装置（ノード）
２・・・拠点
１０・・・ＩＰ−ＯＰＳ
１１・・・ＣＰＵ
１２・・・主記憶装置
１３・・・補助記憶装置
１１５・・・ループ構成チェック部  
【図１】
0006648608.tif 000002
【図２】
0006648608.tif 000003
【図３】
0006648608.tif 000004
【図４】
0006648608.tif 000005
【図５】
0006648608.tif 000006
【図６】
0006648608.tif 000007
【図７】
0006648608.tif 000008
【図８】
0006648608.tif 000009
【図９】
0006648608.tif 000010
【図１０】
0006648608.tif 000011
【図１１】
0006648608.tif 000012
【図１２】
0006648608.tif 000013
【図１３】
0006648608.tif 000014
【図１４】
0006648608.tif 000015
【図１５】
0006648608.tif 000016
【図１６】
0006648608.tif 000017
【図１７】
0006648608.tif 000018
【図１８】
0006648608.tif 000019
【図１９】
0006648608.tif 000020
【図２０】
0006648608.tif 000021
【図２１】
0006648608.tif 000022
【図２２】
0006648608.tif 000023
【図２３】
0006648608.tif 000024
【図２４】
0006648608.tif 000025
【図２５】
0006648608.tif 000026
【図２６】
0006648608.tif 000027
【図２７】
0006648608.tif 000028
【図２８】
0006648608.tif 000029
【図２９】
0006648608.tif 000030
【図３０】
0006648608.tif 000031
【図３１】
0006648608.tif 000032
【図３２】
0006648608.tif 000033
【図３３】
0006648608.tif 000034
【図３４】
0006648608.tif 000035
【図３５】
0006648608.tif 000036
【図３６】
0006648608.tif 000037
【図３７】
0006648608.tif 000038
【図３８】
0006648608.tif 000039
【図３９】
0006648608.tif 000040
【図４０】
0006648608.tif 000041
【図４１】
0006648608.tif 000042
【図４２】
0006648608.tif 000043
【図４３】
0006648608.tif 000044
【図４４】
0006648608.tif 000045
【図４５】
0006648608.tif 000046
【図４６】
0006648608.tif 000047
【図４７】
0006648608.tif 000048