JP3696023B2 - Network configuration automatic recognition method and system having intelligent network relay device - Google Patents
Network configuration automatic recognition method and system having intelligent network relay device Download PDFInfo
- Publication number
- JP3696023B2 JP3696023B2 JP2000022749A JP2000022749A JP3696023B2 JP 3696023 B2 JP3696023 B2 JP 3696023B2 JP 2000022749 A JP2000022749 A JP 2000022749A JP 2000022749 A JP2000022749 A JP 2000022749A JP 3696023 B2 JP3696023 B2 JP 3696023B2
- Authority
- JP
- Japan
- Prior art keywords
- variable
- network
- address
- value
- port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 381
- 230000005540 biological transmission Effects 0.000 claims description 49
- 230000004044 response Effects 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 26
- 230000000903 blocking effect Effects 0.000 claims 2
- 238000012545 processing Methods 0.000 description 214
- 230000008569 process Effects 0.000 description 207
- 238000001514 detection method Methods 0.000 description 148
- 238000010586 diagram Methods 0.000 description 109
- 230000006870 function Effects 0.000 description 40
- 230000007246 mechanism Effects 0.000 description 32
- 102100022199 E3 ubiquitin-protein ligase MIB2 Human genes 0.000 description 31
- 101000973495 Homo sapiens E3 ubiquitin-protein ligase MIB2 Proteins 0.000 description 31
- 101150040096 SFT2 gene Proteins 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 101150096886 sft-1 gene Proteins 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 238000012854 evaluation process Methods 0.000 description 3
- 101001098529 Homo sapiens Proteinase-activated receptor 1 Proteins 0.000 description 2
- 102100037136 Proteinase-activated receptor 1 Human genes 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ルータ、スイッチ、ブリッジ、リピータ、ハブ、端末等が接続されたネットワークにSNMP(Simple Network Management Protocol)を実装しているインテリジェントなネットワーク中継装置を含んでいる場合の各機器の物理的なネットワーク接続構成を自動的に認識する方法およびシステムに関するものである。
【0002】
【従来の技術】
ルータ、スイッチ、ブリッジ、リピータ、ハブ、端末等が接続されたネットワークにおける各機器の物理的なネットワーク接続構成の認識技術は、ネットワーク監視・管理システムやネットワーク図面作成システム等では必要不可欠な技術である。
従来までのネットワークの接続構成の認識技術では、IP(Intenet Protocol)ネットワークセグメントで分割(ルータで区切られるセグメントを単位とした分割)されたネットワークの認識は可能であった。この技術の範囲では、ルータにより分割されたネットワークセグメントに存在する機器を並列的に羅列するといった表示方法を取ることが多く、実際のネットワークの物理的な構成との対応が取れないという問題があった。
上記の問題を解決するため、「ネットワーク接続装置タイプ検出方法」(特開平11−96094号)、「ネットワーク監視及びリピータは部の接続端末認識方式」(特開平11−146003号)、「中継装置及びネットワーク管理装置」(特開平10−336228号)、「BGPルーティング情報を用いたネットワークマップの自動生成方法」(特開平9−181722号)、「ネットワークトポロジ認識方法およびネットワークトポロジ認識装置」(特開平9−186716号)、「ネットワーク構成の認識方法」(特開平8−191326号)の提案がなされている。
【0003】
【発明が解決しようとする課題】
しかしながら、「ネットワーク接続装置タイプ検出方法」では、機器間のリンクに対して検査パケットを送信することにより、ブリッジとブリッジの接続先の機器との間に存在するループ接続を認識する技術を提供しているが、ループ接続に特化している問題がある。
また、「ネットワーク監視及びリピータハブの接続端末認識方式」では、リピータMIB(MIB:Managementinformation Base;管理情報ベース)を利用することでリピータの各ポートの接続先の端末を認識する技術を提供しているが、リピータの各ポートの接続先に複数の端末が接続されている場合には検出できない問題がある。
また、「中継装置及びネットワーク管理装置」では、ネットワーク中継装置の接続関係を検出する技術を提供しているが、特別なハードウェアに依存した実現手段であり、既存のネットワーク構成における実現手段とはなり得ない問題がある。
また、「BGPルーティング情報を用いたネットワークマップの自動生成方法」では、BGP(Border Gateway Protocol;境界ゲートウェイプロトコル)対応ルータに特化したAS(Autonomouse System;自立システム)間の接続関係を検出する方法を提供しているが、ネットワークセグメント内の接続関係を識別することはできない問題がある。
また、「ネットワークトポロジ認識方法およびネットワークトポロジ認識装置」では、スパンニングツリープロトコルを用いてブリッジ機器の接続状況を把握する技術を提供しているが、ソースルーティングプロトコルに対応したブリッジ間の接続関係を検出できない問題がある。
また、「ネットワーク構成の認識方法」では、ハブの各ポートの接続先が1台の端末だけであるという条件下で、ハブ(インテリジェントハブ)の各ポートの接続先のMACアドレスの情報をリピータMIBを利用して収集することにより、ポートの接続先にある機器の物理アドレスを把握する技術を提供している。しかし、ハブ同士がカスケード接続している場合にはハブの各ポートの接続先の構成を検出することはできず、各端末から定期的に発信する手段を必要とするため、エージェントソフトウェアを全端末に導入しなくてはならない。また、リピータMIBの実装はベンダによって仕様が異なっており、汎用的なリピータにおける解決方法とは言えない。
【0004】
本発明は、SNMPを実装しているインテリジェントなネットワーク機器が稼動しているネットワーク環境において、SNMP以外の特別なソフトウェアの実装を必要とせず、またSNMPの実装の仕方に依存せずに、少なくとも1台の管理端末からネットワークノード内部の物理的な機器構成を自動的に検出することができるネットワーク構成自動認識方法およびシステムを提供することを目的としている。
【0005】
【課題を解決するための手段】
本発明は、上記目的を達成するために、基本的には、SNMPエージェントと管理情報ベースを実装しているインテリジェントなネットワーク機器がネットワークノード内に少なくとも1台以上存在するネットワーク環境において、SNMPマネージャを実装した管理者端末からネットワークノード内の各ネットワーク機器に対してICMPエコーリクエストを送信し、その応答によって稼動状態のネットワーク機器を検出する第1のステップと、検出した各ネットワーク機器のSNMPエージェントに対し、当該ネットワーク機器内の管理情報ベースの格納情報の転送要求を送信し、返信された管理情報ベースの格納情報によってネットワークノード内に存在するネットワーク機器の種別を検出する第2のステップとを備えることを特徴とする。
さらに、機器種別がブリッジ機能を有するネットワーク機器の管理情報ベースから当該ネットワーク機器の各ポートに接続されたネットワーク機器の物理アドレスの集合を取得する第3のステップと、ルーティング機能を有するネットワーク機器の管理情報ベースから物理アドレスとIPアドレスの対応情報を取得する第4のステップと、取得した物理アドレスとIPアドレスの対応情報に基づき、ブリッジ機能を有するネットワーク機器の各ポートの接続先の機器をIPレベルで認識する第5のステップとをさらに備えることを特徴とする。
【0006】
また、前記ICMPエコーリクエストに対して応答が返信されたネットワーク機器は稼動中、応答が返信されないネットワーク機器は存在しないものと認識し、さらに前記第4のステップで取得した物理アドレスとIPアドレスの対応情報を参照し、稼動中と認識したネットワーク機器以外の対応情報が存在する場合には当該ネットワーク機器は非稼動中であるものと認識する第6のステップをさらに備えることを特徴とする。
【0007】
【発明の実施の形態】
以下、本発明の一実施の形態を図面を用いて詳細に説明する。
図1は、本発明を実施するネットワークシステムの一実施形態を示す図である。図示するネットワークは、バックボーンネットワーク1を中心にLANを構築しており、ルータ2a,2b、スイッチングハブ3、ブリッジ4、インテリジェントハブ5、ノンインテリジェントハブ6等の中継装置を備えている。これらの中継装置は、"13X.XXX.2.1"のように固有のIPアドレスが割当てられている。
【0008】
ルータ2a(IPアドレス "13X.XXX.2.1")は、バックボーンネットワーク1と内部のセグメントを分割している。すなわち、IPアドレス"13X.XXX.1.*"のネットワークと"13X.XXX.2.*"のネットワークに分割し、"13X.XXX.1.*"側のネットワークからはIPアドレスが"13X.XXX.1.7"として認識されるが、"13X.XXX.2.*"側のネットワークからはIPアドレスが"13X.XXX.2.1"として認識されるようになっている。
【0009】
同様に、ルータ(IPアドレス"13X.XXX.7.1")2bは、バックボーンネットワークと内部のセグメントを分割している。すなわち、IPアドレス"13X.XXX.1.*"のネットワークと"13X.XXX.7.*"のネットワークに分割し、"13X.XXX.1.*"側のネットワークからはIPアドレスが"13X.XXX.1.9"として認識されるが、"13X.XXX.7.*"側のネットワークからはIPアドレスが"13X.XXX.7.1"として認識されるようになっている。
【0010】
内部のセグメントは、スイッチングハブ(IPアドレス "13X.XXX.2.246")3等のスイッチ機器、ブリッジ(IPアドレス "13X.XXX.2.245")4、インテリジェントハブ(IPアドレス "13X.XXX.2.243")5、ノンインテリジェントハブ(IPアドレスを保持していない)6等のネットワーク中継装置を用いてさらに分割されている。
【0011】
これらのネットワーク中継装置には、別のネットワーク中継装置や端末装置71〜78を接続することでLANが構築される。
【0012】
図示するネットワークには、1台の管理者端末71が接続されており、この管理者端末71内でネットワーク構成を自動的に検出するプログラムが稼動している。端末装置72〜78は、稼動中端末装置72〜77と非稼動中端末装置78に分類可能であり、本実施形態のネットワーク構成自動認識方法では両方を認識対象にしている。
【0013】
図1では、ルータ2aとスイッチングハブ3を接続し、スイッチングハブ3からブリッジ4、インテリジェントハブ5、ノンインテリジェントハブ6にそれぞれ接続しており、スイッチングハブ3に管理者端末71を接続している例を示している。また、ブリッジ4からは1台の非稼動中端末装置78に、インテリジェントハブ5やノンインテリジェントハブ6からは3台の稼動中端末装置72〜77に接続している例を示している。
【0014】
本実施形態では、1台の管理者端末71以外の端末装置72〜78にプログラムを追加することなく、管理者端末71上にネットワーク構成の自動認識サービスプログラムと図面表示プログラムを追加するだけで機器同士の接続構成を自動的に検出するものである。
なお、前記自動認識サービスプログラムは、SNMPのマネージャとしての機能を備えるものである。また、認識対象のネットワーク機器にはSNMPのエージェントを実装したものと実装していないものがある。
【0015】
初めに、本実施形態のネットワーク構成自動認識方法の概要について説明する。
ネットワーク構成自動認識サービスプログラムは、稼動状況検出モジュール、MIBアクセスモジュール、オートディスカバリモジュールの3つのモジュールから構成されている。
稼動状況検出モジュールは、ICMP(Internet Control Message Protocol)エコーリクエストを用いてネットワーク上の各機器の稼動状況を検出するソフトウェアモジュールであり、ICMPエコーリクエストの応答がないIPアドレスの機器は稼動していないと判断することにより、不要な通信の発生を回避しながらネットワーク上の各機器の稼動状況を検出する機能を備えている。
MIBアクセスモジュールは、SNMPメッセージ(Get-Request PDU、Get-Next PDU、Set-Request PDU)を作成し、SNMPメッセージを送信したり、SNMPメッセージ(Get-Response PDU)を受信してMIBオブジェクトの値を取得する機能を備えたソフトウェアモジュールである。このMIBアクセスモジュールは、各ネットワーク機器がSNMPのMIBオブジェクトを実現していることを前提とするものである。
オートディスカバリモジュールは、ネットワーク構成を検出する機能を備えたソフトウェアモジュールであり、次のようなプロセスによりネットワーク構成を検出する。
(1)機器の稼動状況の検出プロセス
(2)機器の情報(IPアドレス、Macアドレス、ホスト名、サポートMIB、機器種別)の検出プロセス
(3)MIBオブジェクトの情報の取得プロセス
(4)ネットワーク中継装置同士の接続関係(接続ポート)の検出プロセス
(5)ノンインテリジェントハブの予測プロセス
(1)のプロセスでは、稼動状況検出モジュールを利用して機器の稼動状況を検出する。
(2)のプロセスでは、MIBアクセスモジュールを利用して、実際にMIBにアクセスし、応答が返るかエラーが返るかをチェックすることによって機器がサポートしているMIBを検出する。機器種別は、IPMIB(ipForwardingオブジェクトの値)、ブリッジMIBサポートの有無、リピータMIBサポートの有無の情報を組合せることでルータ、ブリッジ、スイッチングハブ、インテリジェントハブ、端末装置、プリンタのいずれに該当するかを分類して検出する(図18参照)。
(3)のプロセスでは、機器同士の接続関係の検出に利用するMIBオブジェクトの値を取得し、テーブル中に格納する(図14〜図17参照)。この場合、前記(1)のプロセスで稼動中でないと判断した機器(IPアドレス)の情報がMIBオブジェクト中にキャッシュされている場合は、稼動中でない機器の接続情報も取得可能である(図59参照)。
(4)のプロセスでは、上記の機器の中で端末装置を除くネットワーク中継装置同士の接続関係を検出するため、ブリッジMIB、リピータMIB、インタフェースMIBを利用する。
ブリッジMIBは、ネットワーク中継装置の各ポートの接続先の機器のMacアドレスを記憶するオブジェクトを保持しており、各ネットワーク中継装置のポート単位の接続関係を検出可能である。リピータMIBは、ポートの接続先の任意の機器が送信したフレームの内で最後に受信したフレームの送信元のMacアドレスを記憶するオブジェクトを保持しており、所定時間間隔で送信元のMacアドレスを学習することで、各ネットワーク中継装置のポート単位の接続関係を検出可能である。但し、リピータMIBの実装によっては、最後に受信したフレームの送信元のMacアドレスを更新しないネットワーク中継装置が存在しており、上記のリピータMIBを利用してもMacアドレスを学習することができない場合がある。この場合は、インタフェースMIBのポートの状態を変更し、一時的にポートを塞ぎ、ICMPエコーリクエストの応答が返らなくなった機器は塞いだポートの接続先にあると判断する方法や複数のネットワーク中継装置におけるインタフェースMIBのポート単位の送受信フレームの統計量を取得し、統計量に有意な差があるかどうかの検定を行い、有意な差がないポート同士に接続関係があると判断する方法を用いることで、各ネットワーク中継装置のポート単位の接続関係を検出可能である。また、各MIBから取得できるポート単位の接続情報はネットワーク上のすべての機器の接続情報が格納されているとは限らない。ポート単位の接続情報に不備があり、機器同士の接続関係が検出できない場合がある。このような場合は、MIBから取得可能な接続情報によりネットワーク中継装置を複数のネットワーク中継装置モデルに分類し(図21参照)、機器同士の接続関係のモデルを定義し、機器同士の接続関係の検出条件や接続関係の検出可能性を一般化する(図46参照)。この一般化により、ポート単位の接続情報に不備があり、機器同士の接続関係が検出できない場合でも、他の機器との接続関係の情報を組合せ、接続関係の検出条件を満たす場合には、機器同士の接続関係を検出できるようになる。
また、複数の機器同士の接続関係のモデルを組合せることで、個々の機器同士の接続関係のモデルだけでは検出できない接続関係が検出できる場合がある(図55参照)。
【0016】
(5)のプロセスでは、ノンインテリジェントハブの接続を予測するため、ネットワーク中継装置の1つのポートの接続先に複数の機器が接続しているかどうかを検出し、複数の機器が接続されている場合には、ネットワーク中継装置の該当するポートの接続先にはノンインテリジェントハブが少なくとも1台は稼動していると判断する方法により、ノンインテリジェントハブの接続を予測する。
【0017】
図面表示プログラムは、ネットワーク構成自動認識サービスプログラムで検出したネットワーク構成を画面上にGUI表示(図62参照)するプログラムであり、ネットワーク構成を木構造で表示したり、フロア図面上に配置して表示するといった表示形態を採用することができる。
なお、機器の稼動状況の変化やネットワーク構成が変化した場合には、フロア図面もそれに応じて速やかに変更する必要がある。また、機器の稼動状況としては、起動や停止等の変化が挙げられる。また、ネットワーク構成の変化としては、機器の接続先の変更やIPアドレスの変更等が挙げられる。
図面表示プログラムは、オートディスカバリモジュールを用いてMIBオブジェクトの値を定期的にあるいは予め定めたスケジュールに従って不定期に収集し、MIBオブジェクトの値の変化を監視することで機器の稼動状況の変化やネットワーク構成の変化を検出し、自動的にネットワーク構成の変更をネットワーク構成図面に反映し、ユーザに変更を通知する(図60参照)。
【0018】
図2は、本実施形態において、機器同士の接続関係を検出するために用いるMIBオブジェクトにアクセスするための標準プロトコルである、SNMPのメッセージフォーマットを示す図である。
SNMPメッセージは、SNMPのバージョン番号を格納するVersion201、コミュニティ名を格納するCommunity202、SNMPのメッセージの本体を格納するPDU(Protocol Data Unit)203のフィールドから構成されている。SNMPメッセージは、Get-Request、Get-Next、Get-Response、Set-Request、Trapの5種類のメッセージに分類される。
Get-Request、Get-Nextとは、MIBを有する機器に対してMIBの値を返信するように指示するメッセージであり、これに対してGet-Responseが返信される。
Set-Requestとは、MIBの値を変更するために発行されるメッセージである。また、Trapとは、MIBを有する管理対象の機器で発生した(監視対象とするイベント:重要なイベント)を管理者端末71に自律的に通知するためのメッセージである。
【0019】
本発明のネットワーク構成自動認識方法では、Trap以外のメッセージを利用する。
Get-Request、Get-Next、Get-Response、Set-RequestメッセージのPDUの構成は共通のフォーマットになっており、図2に示すように、メッセージの種類(上記の4種類)を格納するPDU Type204、メッセージの一意な識別子を格納するRequestID205、エラーメッセージのIDを格納するError Status206、メッセージ中のエラー発生箇所を格納するError Index207、アクセスするMIBオブジェクトを識別するための情報を格納したリスト208〜209から構成されている。MIBオブジェクトを識別するための情報を格納したリストの個々の要素は、MIBオブジェクトを一意に識別するための識別子であるOID(ObjectIdentifier)とMIBオブジェクトの値から構成されている。
【0020】
図3は、本実施形態で対象としているインターネットOIDツリーを示す図である。MIBオブジェクト301はネットワーク中継装置の中で木構造として格納されている。この中で、ネットワーク管理で標準となっているMIB2の情報はiso(1)-org(3)-dod(6)-internet(1)-mgmt(2)-MIB-2(2)のノード302に納されており、OIDは"1.3.6.1.2.2"となっている。
本実施形態では、MIB2を利用する方法を示している。この他にも各ベンダごとに提供されているベンダMIB(iso(1)-org(3)-dod(6)-internet(1)-private(4)-enterprise(1))を利用する方法もあるが、システムの汎用性を高める意味からネットワーク管理の標準プロトコルであるMIB2を利用するのが望ましい。
【0021】
図4は、本実施形態で対象としているMIB2オブジェクトの構成を示す図である。MIB2では、現在50個のオブジェクトが標準化されおり、個々のオブジェクトはMIB-2(2)(iso(1)-org(3)-dod(6)-internet(1)-mgmt(2)-MIB-2(2))の子オブジェクトと401として管理されるようになっている。MIB2にはsystem(1)、interfaces(2)、at(3)、ip(4)、ICMP(5)、…、のグループオブジェクトがあるが、本実施形態では太字表示したsystem(1)、interfaces(2)、ip(4)、dot1dBridge(17)、SNMPDot3RptrMgt(22)、printMIB(43)のグループオブジェクトを利用することで、ネットワーク構成を自動認識する例を示している。
【0022】
図5は、本実施形態で対象としているsystemグループオブジェクトの構成を示す図である。systemグループオブジェクトには、子オブジェクト501として、sysDescr(1)、sysObjecTID(2)、…、がつながっている。本実施形態では太字表示したsysDescr(1)を利用することで、ネットワーク構成を自動認識する例を示す。sysDescr(1)は、エンティティ(システム)の情報を示すオブジェクトであり、systemグループオブジェクトはMIB2を実装しているすべての機器で実装することが必須となっているため、MIB2のサポート状況を把握するために利用可能である。
【0023】
図6は、本実施形態で対象としているinterfacesグループオブジェクトの構成を示す図である。interfacesグループオブジェクトには、子オブジェクト601として、ifNumber(1)、ifTable(2)、…、がつながっている。ifTable(2)はテーブル形式のデータを示しており、ifTable(1)の下に段落分けしてつながっているifEntry(1)は、ifTable(2)の個々の行を示している。また、ifEntry(1)の下に段落分けしてつながっているifIndex(1)、ifDescr(2)、…、ifSpecific(22)はifEntry(1)の個々の列を示している。
ネットワーク中継装置では、ifTable(2)の中に、ネットワーク中継装置のインタフェース(ポート)ごとの情報が格納される。今後、すべてのMIBオブジェクトにおけるテーブル形式のデータは上記の規則に従って格納されるものとする。本実施形態では太字表示したifAdminStatus(7)、ifInOctets(10)、ifInUcastPkts(11)、ifInNUcastPkts(12)、ifInDiscards(13)、ifInErrors(14)、ifOutOctets(16)、ifOutUcastPkts(17)、ifOutNUcastPkts(18)、ifOutDiscards(19)、ifOutErrors(20)を利用することで、ネットワーク構成を自動認識する例を示す。
ifAdminStatus(7)は、インタフェース(ポート)の設定を示すオブジェクトであり、ポートの状態を外部から制御するために利用可能である。
ifInOctets(10)は、インタフェース(ポート)が受信したオクテット数、ifInUcastPkts(11)は上位プロトコルに渡したユニキャストパケット数、ifInNUcastPkts(12)は上位プロトコルに渡した非ユニキャストパケット数、ifInDiscards(13)はエラー以外の理由で廃棄された到着パケット数、ifInErrors(14)はエラーのため上位プロトコルに渡されなかった到着パケット数を示すオブジェクトである。
【0024】
同様に、ifOutOctets(16)はインタフェース(ポート)が転送したオクテット数、ifOutUcastPkts(17)は上位プロトコルから受信したユニキャストパケット数、ifOutNUcastPkts(18)は上位プロトコルから受信した非ユニキャストパケット数、ifOutDiscards(19)はエラー以外の理由で廃棄された送出パケット数、ifOutErrors(20)はエラーのため転送されなかった送出パケット数を示すオブジェクトである。
ifInOctets(10)〜ifOutErrors(20)は、各ポートに対する統計情報を比較して接続関係が存在するポートを検出するために利用可能である。
【0025】
図7は、本実施形態で対象としているipグループオブジェクトの構成を示す図である。ipグループオブジェクトには子オブジェクト701として、ipForwarding(1)、ipDefaultTTL(2)、…、がつながっている。本実施形態では、太字表示したipForwarding(1)、ipNetToMediaPhysAddress(2)、ipNetToMediaNetAddress(3)を利用することで、ネットワーク構成を自動認識する例を示す。
ipForwarding(1)は、エンティティ(システム)がIPルーティング機能を保持しているかどうかを示すオブジェクトであり、ネットワーク中継装置がルータであるかどうかを判断するために利用可能である。
ipNetToMediaPhysAddress(2)は、メディア依存の物理アドレスを示すオブジェクトであり、ipNetToMediaNetAddress(3)はメディア依存の物理アドレスに対するIPアドレスを示すオブジェクトである。
ルータ等のネットワーク中継装置では、ipNetToMediaPhysAddress(2)とipNetToMediaNetAddress(3)に接続しているネットワークセグメントのARP(Addres Resolution Protocol;IPアドレスからハードウェアアドレスへの変換手順)処理でのキャッシュの情報が格納されるため、セグメントのARPテーブル(MacアドレスとIPアドレスの組合せ)を取得するために利用可能である。
【0026】
図8は、本実施形態で対象としているdot1dBrdigeグループオブジェクトの構成を示す図である。dot1dBrdigeグループオブジェクトには、子オブジェクト801として、dot1Base(1)、dot1dStp(2)、…、がつながっている。
本実施形態では太字表示したdot1dTpFdbAddress(1)、dot1dTpFdbPort(2)を利用することで、ネットワーク構成を自動認識する例を示す。
dot1dTpFdbAddress(1)は、ブリッジがforwarding・filtering情報を送信するMACアドレスを示すオブジェクトであり、dot1dTpFdbPort(2)はdot1dTpFdbAddressが送信元アドレスに等しいフレームのポート番号を示すオブジェクトである。ブリッジMIBをサポートしているネットワーク中継装置ではdot1dTpFdbAddress(1)とdot1dTpFdbPort(2)にネットワーク中継装置の各ポートに接続している機器のMacアドレスの集合が格納されるため、ネットワーク中継装置のポート単位の接続機器の情報を取得するために利用可能である。
【0027】
図9は、本実施形態で対象としているsnmpDot3RptrMgtグループオブジェクトの構成を示す図である。
snmpDot3RptrMgtグループオブジェクトには子オブジェクト901として、rptrBasicPackage(1)、rptrMonitorPackage(2)、…、がつながっている。
本実施形態では、太字表示したrptrAddrTrackPortIndex(2)、rptrAddrTrackLastSourceAddress(3)、rptrAddrTrackSourceAddrChanges(4)を利用することで、ネットワーク構成を自動認識する例を示す。
rptrAddrTrackPortIndex(2)は、グループに属するポートの識別子を示すオブジェクトであり、rptrAddrTrackLastSourceAddress(3)は最後に受信したフレームの送信元アドレスを示すオブジェクトであり、rptrAddrTrackSourceAddrChanges(4)はRptrAddrTrackLastSourceAddressの変更頻度を示すオブジェクトである。
リピータMIBをサポートしているネットワーク中継装置では、rptrAddrTrackPortIndex(2)とrptrAddrTrackLastSourceAddress(3)にネットワーク中継装置の各ポートに接続している機器の任意の1台の機器のMacアドレスが格納される。RFC(Request for Comment)の仕様通りに実装されているネットワーク中継装置では、フレームを受信するたびにrptrAddrTrackLastSourceAddress(3)の値を更新するため、rptrAddrTrackLastSourceAddress(3)の情報を学習することでネットワーク中継装置の各ポートに接続している機器のMacアドレスの集合を取得することが可能である。しかし、RFCの仕様通りに実装されていないネットワーク中継装置では、フレームを受信してもrptrAddrTrackLastSourceAddress(3)の値を更新しない場合がある。ネットワーク中継装置がRFCの仕様通りに実装されているか否かを判断するために、rptrAddrTrackSourceAddrChanges(4)を利用可能である。
RptrAddrTrackSourceAddrChanges(4)はrptrAddrTrackLastSourceAddress(3)の変更頻度を示すため、RFCの仕様通りに実装されているネットワーク中継装置では時間の経過とともに増加していくが、RFCの仕様通りに実装されていないネットワーク中継装置では変動しない。この場合、rptrAddrTrackSourceAddrChanges(4)には、各ポートの先で検出された機器の数が格納される場合がある。
【0028】
図10は、本実施形態で対象としているprintMIBグループオブジェクトの構成を示す図である。printMIBグループオブジェクトには、子オブジェクト1001として、ptrGeneral(5)、ptrGeneralTable(1)、…、がつながっている。本実施形態では、太字表示したptrGeneralConfigChanges(1)を利用することで、ネットワーク構成を自動認識する例を示す。
ptrGeneralConfigChanges(1)は、プリンタの設定変更回数を示すオブジェクトであり、printMIBグループオブジェクトはプリンタで実装されるため、機器がプリンタかどうかを把握するために利用可能である。
【0029】
図11は、管理者端末71に実装されるプログラム構成を示す図である。
図1におけるシステムでは、ネットワーク上の1台の管理者端末71からネットワーク構成を自動認識するため、該管理者端末71には通信ポート1102、ネットワーク構成自動認識サービスプログラム1103、図面表示プログラム1104が実装されている。なお、これらのネットワーク構成自動認識サービスプログラム1103、図面表示プログラム1104は、汎用のコンピュータにインストールして実行可能なようにCD−ROMやDVD−ROM等の記録媒体に記録してユーザに提供することが可能である。また、インターネット等の通信媒体あるいは通信手段を介してユーザに有償で配布することができる。
ネットワーク構成自動認識サービスプログラム1103は、稼動状況検出モジュール1111、MIBアクセスモジュール1112、オートディスカバリモジュール1113から構成されている。
MIBアクセスモジュール1112は、MIB2のOID情報を格納しているOIDテーブル(図12参照)を管理している。
オートディスカバリモジュール1113は、MacアドレスからIPアドレスへのアドレス変換情報を格納しているATテーブル(図13参照)と機器固有の情報を格納しているTIテーブル(図14参照)とネットワーク中継装置のポート単位の接続機器情報を格納しているPFテーブル(図15参照)、ネットワーク構成のTREE構造の接続関係の情報を格納しているTSテーブル(図16参照)を管理している。
【0030】
図12は、MIBアクセスモジュール1112がSNMPメッセージ送受信時に利用するOID(Object I Dentifier)テーブル1121の構成を示す図である。
OIDテーブル1121は、Object Name1201、Object Identifier1202、type1203、Object Path1204の項目を保持している。
Object Name1201にはMIBアクセスモジュール1112がOIDテーブル1121を検索するときのキーとして利用するオブジェクトの一意な名前を格納し、Object Identifier1202にはSNMPメッセージに記述するためのオブジェクトの一意な識別子を格納し、type1203にはオブジェクトの型を格納し、Object Path1204にはオブジェクトの完全なパス名を格納する。
MIBアクセスモジュール1112は、SNMPメッセージ作成時にOIDテーブル1121にアクセスし、取得するMIBオブジェクトの識別子を検索したり、オブジェクトの型に応じた受信バッファの確保を行う。
【0031】
図13は、オートディスカバリモジュール1113が作成するAT(Address Translation)テーブル1122の構成を示す図である。
ATテーブル1122は、IP Address1301、Mac Address1302の項目を保持している。IP Address1301には機器のIPアドレス値を格納し、Mac Address1302には機器のMac Address値を格納する。ATテーブル1122は機器のIPアドレスとMacアドレスの組の集合を表すため、セグメント全体のアドレス情報をキャッシュしているルータ等の機器から情報を取得して作成する。機器のIPアドレスをキーにMacアドレスを検索する場合やMacアドレスからIPアドレスを解決する場合に利用する。
【0032】
図14は、オートディスカバリモジュール1113が作成するTI(Terminal Information)テーブル1123の構成を示す図である。
TIテーブル1123は、IP Address1401、Mac Address1402、Host Name1403、type1404、alive1405、mib21406、forwarding1407、bridge1408、repeater1409、print1410の項目を保持している。
IP Address1401には機器のIPアドレス値を格納し、Mac Address1402には機器のMacアドレス値を格納し、Host Name1403には機器のホスト名を格納する。Type1404には機器の種別を表す識別子を格納する。図14では、Unknownを表すUに0、Routerを表すRに1、…、Printerを表すPに7が割り当てられるようになっている。
Alive1405には機器が稼動中か非稼動中かを示すフラグ値を格納する。図14では、Onに1が、Offに0が割り当てられるようになっている。mib21406には機器がmib2をサポートしているか否かを示すフラグ値を格納し、forwarding1407には機器がIPフォワーディングを行っているか否かを示すフラグ値を格納し、bridge1408には機器がブリッジMIBをサポートしているか否かを示すフラグ値を格納し、repeater1409には機器がリピータMIBをサポートしているか否かを示すフラグ値を格納する。Print1410には機器がプリンタMIBをサポートしているか否かを示すフラグ値を格納する。
オートディスカバリモジュール1113はTIテーブル1123を作成することにより、セグメント内で稼動する機器の把握を容易にするとともに、TIテーブル1123を検索することで機器がサポートするMIBを把握し、非サポートMIBへの余計なアクセスを回避することが可能となる。
【0033】
図15は、オートディスカバリモジュール1113が作成するPF(Port Forwarding)テーブル1124の構成を示す図である。
PFテーブル1124は、Source IP Address1501、Source Mac Address1502、Source Port1503、Destination IP Address1504、Destination Mac Address1505の項目を保持している。
Source IP Address1501にはネットワーク中継装置のIPアドレス値を格納し、Source Mac Address1502にはネットワーク中継装置のMacアドレス値を格納し、Source Port1503にはネットワーク中継装置のポート番号を格納する。
また、Destination IP Address1504にはSource Port1503のポートの接続先で稼動する機器のIPアドレス値、Destination Mac Address1505にはDestination IP Address1504の機器のMacアドレス値を格納する。PFテーブル1124は、セグメント内で稼動するネットワーク中継装置と別のネットワーク中継装置または端末装置との接続情報を表す。
【0034】
図16は、オートディスカバリモジュール1113が作成するTS(Tree Structure)テーブル1125の構成を示す図である。
TSテーブル1125は、Terminal IP Address1601、Terminal Mac Address1602、Terminal Port1603、Parent IP Address1604、Parent Mac Address1605、Parent Port1606の項目を保持している。
Terminal IP Address1601には稼動中の機器のIPアドレス値を格納し、Terminal Mac Address1602にはIPアドレスがTerminal IP Address1601の機器のMacアドレス値を格納し、Terminal Port1603には機器の接続ポート番号を格納する。機器が端末装置の場合やネットワーク中継装置であってポート番号が未知である場合はTerminal Port1603にNULL値を格納する。また、Parent IP Address1604にはポート番号がTerminal Port1603のポートに直接接続しているネットワーク中継装置のIPアドレス値を格納し、Parent Mac Address1605にはParent IP Address1604のネットワーク中継装置のMacアドレス値を格納し、Parent Port1606には接続ポート番号を格納する。
TSテーブル1125とPFテーブル1124の違いは、PFテーブル1124ではネットワーク中継装置の任意のポートの接続先で稼動するすべての機器の情報を格納しているため、1台の機器が複数のネットワーク中継装置のエントリに追加されることがあるが、TSテーブル1125では1台の機器に対して直接接続しているネットワーク中継装置の情報だけが追加されるということである。
【0035】
図17は、MIBアクセスモジュール1112がSNMPメッセージを送受信する仕組を示す図である。
管理者端末71上で稼動するMIBアクセスモジュール1112は、SNMPメッセージ(Get-RequestメッセージまたはGet-Nextメッセージ)を作成し、情報を取得したいネットワーク中継装置(または端末、プリンタ等の機器)1703上で稼動しているSNMPエージェント1704に対してSNMPメッセージを送信する。SNMPエージェント1704は、SNMPメッセージを受信すると該SNMPメッセージを解釈し、要求されているMIBオブジェクトの値を格納したSNMPメッセージ(Get-Response)を作成し、MIBアクセスモジュール1112にSNMPメッセージを返送する。これにより、MIBアクセスモジュール1112はネットワーク中継装置1703の任意のMIBオブジェクトの値を取得することができる。
【0036】
図18は、機器種別の検出方法を説明する図である。
本実施形態でネットワーク構成の認識対象としている機器は、ルータ1801、ブリッジ1802、スイッチングハブ1803、インテリジェントハブ1804、ノンインテリジェントハブ1805、プリンタ1806、端末装置1807である。ルータ1801はipグループのipForwardingオブジェクトの値が“1”であり、ブリッジMIBを実装しているが、リピータMIBやプリンタMIBを実装していない機器を示す。
ブリッジ1802はipグループのipForwardingオブジェクトの値が“0”であり、ブリッジMIBを実装しているが、リピータMIBやプリンタMIBを実装していない機器を示す。
スイッチングハブ1803はipグループのipForwardingオブジェクトの値が“1”または“0”であり、ブリッジMIBとリピータMIBは実装しているが、プリンタMIBを実装していない機器を示す。
インテリジェントハブ1804はipグループのipForwardingオブジェクトの値が“0”であり、リピータMIBは実装しているが、ブリッジMIBとプリンタMIBを実装していない機器を示す。
ノンインテリジェントハブ1805はMIBを実装していない機器を示す。プリンタ1806はipグループのipForwardingオブジェクトの値が“0”であり、プリンタMIBは実装しているがブリッジMIBとリピータMIBを実装していない機器を示す。
端末装置1807はipグループのipForwardingオブジェクトの値が“0”であり、ブリッジMIBとリピータMIBとプリンタMIBを実装していない機器を示す。
ipグループのipForwardingオブジェクトの値とブリッジMIBの実装状況とリピータMIBの実装状況とプリンタMIBの実装状況の組合せはどの機器種別においても異なっているため、この組み合せを調べることによって機器種別の検出が可能となる。
【0037】
図19は、ネットワーク中継装置間のRelation定義を説明する図である。
図19では異なる4台のネットワーク中継装置の親子関係を表しており、バックボーンネットワークと接続し、セグメントの末端のネットワーク中継装置をRoot装置(IPアドレスは"13X.XXX.2.1")1901と定義する。このRoot装置1901のPort1の接続先には3台のネットワーク中継装置が稼動しており、Root装置1901のPort1と直接接続しているネットワーク中継装置をParent装置(IPアドレスは"13X.XXX.2.246")1902、このParent装置1902のPort2の接続先のネットワーク中継装置をChild1装置(IPアドレスは"13X.XXX.2.243")1903、Parent装置1902のPort3の接続先のネットワーク中継装置をChild2装置(IPアドレスは"13X.XXX.2.245")1904とする。そして、任意のネットワーク中継装置と、接続先にRoot装置が存在するポートとは別のポートの接続先で稼動する任意のネットワーク中継装置は親子であると定義する。
【0038】
図19の例ではRoot装置1901とParent装置1902、Child1装置1903、Child2装置1904は親子である。また、Parent装置1902とChild1装置1903、Child2装置1904は親子である。
また、任意のネットワーク中継装置と、接続先にRoot装置が存在するポートの接続先で稼動する任意のネットワーク中継装置の内で、Root装置へのホップ数が同一であるネットワーク中継装置の集合は兄弟であると定義する。
図19の例ではChild1装置1903のPort1の接続先にはRoot装置1901、Parent装置1902、Child2装置1904が稼動中であり、Child1装置1903からRoot装置1901へのホップ数は“1”である。また、Child2装置1904からRoot装置1901へのホップ数は“1”であることから、Child1装置1903とChild2装置1904は兄弟である。
【0039】
図20は本実施形態のinterfaces MIBを利用したネットワーク中継装置間の接続検出方法を説明する図である。図の例のように、異なる2台のネットワーク中継装置Unit1装置(IPアドレスは"13X.XXX.2.246")2001とUnit2装置(IPアドレスは"13X.XXX.2.243")2002が稼動している場合、ネットワーク中継装置の各ポートにおけるinterfaces MIBのifInOctetsオブジェクトの値とifOutOctetsオブジェクトの値を同時に取得する。
図20の例ではUnit1装置2001のPort1のifInOctetsオブジェクトの値2003、ifOutOctetsオブジェクトの値2004、Unit2装置2002のifInOctetsオブジェクトの値2005、ifOutOctetsオブジェクトの値2006をそれぞれ取得したことを示している。
Unit1装置2001のPort1のifInOctetsオブジェクトの値2003とUnit2装置2002のifOutOctetsオブジェクトの値2006またはUnit1装置2001のPort1のifOutOctetsオブジェクトの値2004とUnit2装置2002のifInOctetsオブジェクトの値2005)の差の検定を行い、有意な差がないことを算出した場合、Unit1装置2001のPort1とUnit2装置2002のPort1の間に接続関係があることを検出する。ここで、有意の差とは、1例として、2つの値の差がある閾値を超えるような場合には2つの値は異なるといった、2つの値が統計的に異なることを示すものとする。
【0040】
図21は本実施形態におけるネットワーク機器の分類方法を示す図である。
本実施形態でのネットワーク機器モデルは、R2101、CF2102、IF2103、SF2104、NF2105、Term2106である。
Rはセグメントに分割するネットワーク中継装置(Router)を示し、セグメントのすべての機器に対する親となる。また、ネットワーク中継装置はMIBから取得できる機器の接続情報によってCFとIFとSFに分類する。CFはMIBのオブジェクトの格納情報に不備がなく、すべてのネットワーク中継装置と端末装置の接続ポートを格納したPFテーブル(図15)を作成可能なネットワーク中継装置を示す。
IFはMIBのオブジェクトの格納情報に不備があり、Rを除く他のネットワーク中継装置への接続ポート番号を検出できない場合が存在するネットワーク中継装置を示す。
SFはMIBのオブジェクトの格納情報に不備があり、Rを含む他のすべてのネットワーク中継装置への接続ポートが検出できず、1台以上の端末装置への接続ポートが検出可能なネットワーク中継装置を示す。また、MIBを実装していないノンインテリジェントハブやリピータをNFとする。プリンタや端末装置等のネットワーク中継装置以外の機器はTermとする。
【0041】
図22は本実施形態のR-CF-CFモデルの接続検出の仕組を示す。
図22はR-CF-CFモデルの一例として、R(IPアドレス "13X.XXX.2.1")2201のポート2とCF1(IPアドレス "13X.XXX.2.246")2202のポート2に接続関係があり、CF1(IPアドレス "13X.XXX.2.246")2202のポート1とCF2(IPアドレス "13X.XXX.2.243")2203のポート1に接続関係がある場合を示す。
【0042】
図23は本実施形態のR-CF-CFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、ここでは図22に示したR-CF-CFモデルに対するPFテーブル1124のエントリを例示している。
ここでは、エントリ2301にCF1(IPアドレス "13X.XXX.2.246")2202からCF2(IPアドレス "13X.XXX.2.243")2203への接続情報が格納されている。この接続情報によって、CF12202からCF22203への接続ポートがポート1であることを検出可能である。
同様に、エントリ2302にCF1(IPアドレス "13X.XXX.2.246")2202からR(IPアドレス "13X.XXX.2.1")2201への接続情報が格納されている。この接続情報によって、CF12202からR2201への接続ポートがポート2であることを検出可能である。また、CF12202からR2201への接続ポートとCF12202からCF22203への接続ポートが異なることから、CF12202はCF22203の親であることが検出可能である。
さらに、エントリ2303にCF2(IPアドレス "13X.XXX.2.243")2203からR(IPアドレス "13X.XXX.2.1")2201への接続情報が格納されている。この接続情報によって、CF22203からR2201への接続ポートがポート1であることを検出可能である。
また、エントリ2304にCF2(IPアドレス "13X.XXX.2.243")2203からCF1(IPアドレス "13X.XXX.2.246")2202への接続情報が格納されている。この接続情報によって、CF22203からCF12202への接続ポートがポート1であることを検出可能である。
このようにして、R-CF-CFモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
【0043】
図24は本実施形態のR-CF-IFモデルの接続検出の仕組を示す。
図24はR-CF-IFモデルの一例として、R(IPアドレス "13X.XXX.2.1")2401のポート2とCF(IPアドレス "13X.XXX.2.246")2402のポート2に接続関係があり、CF(IPアドレス "13X.XXX.2.246")2402のポート1とIF(IPアドレス "13X.XXX.2.243")2403のポート1に接続関係がある場合を示している。
【0044】
図25は本実施形態のR-CF-IFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、ここでは図24に示したR-CF-IFモデルに対するPFテーブル1124のエントリを例示している。
ここでは、エントリ2501にCF(IPアドレス "13X.XXX.2.246")2402からIF(IPアドレス "13X.XXX.2.243")2403への接続情報が格納されている。この接続情報によって、CF2402からIF2403への接続ポートがポート1であることを検出可能である。
また、エントリ2502にCF(IPアドレス "13X.XXX.2.246")2402からR(IPアドレス "13X.XXX.2.1")2401への接続情報が格納されている。この接続情報によって、CF2402からR2401への接続ポートがポート2であることを検出可能である。また、CF2402からR2401への接続ポートとCF2402からIF2403への接続ポートが異なることから、CF2402はIF2403の親であることが検出可能である。
また、エントリ2503にIF(IPアドレス "13X.XXX.2.243")2403からR(IPアドレス "13X.XXX.2.1")2401への接続情報が格納されている。この接続情報によって、IF2403からR2401への接続ポートがポート1であることを検出可能である。また、IF2403からR2401への接続ポートはポート1であり、CF2402はIF2403の親であるため、IF2403からCF2402への接続ポートはIF2403からR2401への接続ポートと等しい。従って、IF2403からCF2402への接続ポートはポート1であることを検出可能である。このようにしてR-CF-IFモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
【0045】
図26は、本実施形態のR-CF-SFモデルの接続検出の仕組を示す図であり、ここでは、R-CF-SFモデルの一例として、R(IPアドレス "13X.XXX.2.1")2601のポート2とCF(IPアドレス "13X.XXX.2.246")2602のポート2に接続関係があり、CF(IPアドレス "13X.XXX.2.246")2602のポート1とSF(IPアドレス "13X.XXX.2.243")2603のポート1に接続関係があり、CF(IPアドレス "13X.XXX.2.246")2602のポート3の先に任意のTerm1(IPアドレス "13X.XXX.2.102")2604が接続されている場合を示している。
【0046】
図27は本実施形態のR-CF-SFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図26に示したR-CF-SFモデルに対するPFテーブル1124のエントリを例示している。
エントリ2701にCF(IPアドレス "13X.XXX.2.246")2602からSF(IPアドレス "13X.XXX.2.243")2603への接続情報が格納されている。この接続情報によって、CF2602からSF2603への接続ポートがポート1であることを検出可能である。
また、エントリ2702にCF(IPアドレス "13X.XXX.2.246")2602からR(IPアドレス "13X.XXX.2.1")2601への接続情報が格納されている。この接続情報によって、CF2602からR2601への接続ポートがポート2であることを検出可能である。また、CF2602からR2601への接続ポートとCF2602からSF2603への接続ポートが異なることから、CF2602はSF2603の親であることが検出可能である。
また、エントリ2703にCF(IPアドレス "13X.XXX.2.246")2602からTerm1(IPアドレス "13X.XXX.2.102")2604への接続情報が格納されている。この接続情報によって、CF2602からTerm12604への接続ポートがポート3であることを検出可能である。また、CF2602からSF2603への接続ポートとCF2602からTerm12604への接続ポートが異なることから、Term12604はSF2603に接続している機器ではないことが検出可能である。
また、エントリ2704にSF(IPアドレス "13X.XXX.2.243")2603からTerm1(IPアドレス "13X.XXX.2.102")2604への接続情報が格納されている。この接続情報によって、SF2603からTerm12604への接続ポートがポート1であることを検出可能である。また、SF2603からTerm12604への接続ポートはポート1であり、Term12604はSF2603に接続している機器ではないことから、SF2603からCF2602への接続ポートはSF2603からTerm12604への接続ポートと等しい。
従って、SF2603からCF2602への接続ポートはポート1であることを検出可能である。
このようにして、R-CF-SFモデルでは、CF2602とTerm12604の接続情報とSF2603とTerm12604の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートと親子関係の検出が可能である。
【0047】
図28は本実施形態のR-IF-CFモデルの接続検出の仕組を示す図であり、R-IF-CFモデルの一例として、R(IPアドレス "13X.XXX.2.1")2801のポート2とIF(IPアドレス "13X.XXX.2.246")2802のポート2に接続関係があり、IF(IPアドレス "13X.XXX.2.246")2802のポート1とCF(IPアドレス "13X.XXX.2.243")2803のポート1に接続関係があり、CF(IPアドレス "13X.XXX.2.243")2803のポート2の先に任意のTerm1(IPアドレス "13X.XXX.2.2")2804が接続されている場合を例示している。
【0048】
図29は本実施形態のR-IF-CFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図28に示したR-IF-CFモデルに対するPFテーブル1124のエントリを例示している。ここでは、エントリ2901にIF(IPアドレス "13X.XXX.2.246")2802からTerm1(IPアドレス "13X.XXX.2.2")2804への接続情報が格納されている。この接続情報によって、IF2802からTerm12804への接続ポートがポート1であることを検出可能である。また、エントリ2902にIF(IPアドレス "13X.XXX.2.246")2802からR(IPアドレス "13X.XXX.2.1")2801への接続情報が格納されている。この接続情報によって、IF2802からR2801への接続ポートがポート2であることを検出可能である。また、エントリ2903にCF(IPアドレス "13X.XXX.2.243")2803からR(IPアドレス "13X.XXX.2.1")2801への接続情報が格納されている。この接続情報によって、CF2803からR2801への接続ポートがポート1であることを検出可能である。また、エントリ2904にCF(IPアドレス "13X.XXX.2.243")2803からIF(IPアドレス "13X.XXX.2.246")2802への接続情報が格納されている。この接続情報によって、CF2803からIF2802への接続ポートがポート1であることを検出可能である。また、CF2803からR2801への接続ポートとCF2803からIF2802への接続ポートが等しいことから、IF2802はCF2803の親である、またはIF2802とCF2803は兄弟であることを検出可能である。また、エントリ2905にCF(IPアドレス "13X.XXX.2.243")2803からTerm1(IPアドレス "13X.XXX.2.2")2804への接続情報が格納されている。この接続情報によって、CF2803からTerm12804への接続ポートがポート2であることを検出可能である。また、CF2803からR2801への接続ポートとCF2803からTerm12804への接続ポートが異なることから、Term12804はCF2803に接続している機器であり、IF2802からR2801への接続ポートとIF2802からTerm12804への接続ポートが異なる。従って、IF2802はCF2803の親であり、IF2802からCF2803への接続ポートはポート1であることが検出可能である。このようにして、R-IF-CFモデルでは、IF2802とTerm12804の接続情報とCF2803とTerm12804の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートと親子関係の検出が可能である。
【0049】
図30は本実施形態のR-IF-IFモデルの接続検出の仕組を示す図であり、R-IF-IFモデルの一例として、R(IPアドレス "13X.XXX.2.1")3001のポート2とIF1(IPアドレス "13X.XXX.2.246")3002のポート2に接続関係があり、IF1(IPアドレス "13X.XXX.2.246")3002のポート1とIF2(IPアドレス "13X.XXX.2.243")3003のポート1に接続関係があり、さらにIF1(IPアドレス "13X.XXX.2.246")3002のポート3の先に任意のTerm1(IPアドレス "13X.XXX.2.102")3004が接続されており、IF2(IPアドレス "13X.XXX.2.243")3003のポート2の先に任意のTerm2(IPアドレス "13X.XXX.2.2")3005が接続されている場合を示している。
【0050】
図31は本実施形態のR-IF-IFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図30に示したR-IF-IFモデルに対するPFテーブル1124のエントリを例示している。
ここでは、エントリ3101にIF1(IPアドレス "13X.XXX.2.246")3002からTerm2(IPアドレス "13X.XXX.2.2")3005への接続情報が格納されている。この接続情報によって、IF13002からTerm23005への接続ポートがポート1であることを検出可能である。
また、エントリ3102にIF1(IPアドレス "13X.XXX.2.246")3002からR(IPアドレス "13X.XXX.2.1")3001への接続情報が格納されている。この接続情報によって、IF13002からR3001への接続ポートがポート2であることを検出可能である。
また、エントリ3103にIF1(IPアドレス "13X.XXX.2.246")3002からTerm1(IPアドレス "13X.XXX.2.102")3004への接続情報が格納されている。この接続情報によって、IF13002からTerm13004への接続ポートがポート3であることを検出可能である。
また、エントリ3104にIF2(IPアドレス "13X.XXX.2.243")3003からR(IPアドレス "13X.XXX.2.1")3001への接続情報が格納されている。この接続情報によって、IF23003からR3001への接続ポートがポート1であることを検出可能である。
【0051】
また、エントリ3105にIF2(IPアドレス "13X.XXX.2.243")3003からTerm1(IPアドレス "13X.XXX.2.102")3004への接続情報が格納されている。この接続情報によって、IF23003からTerm13004への接続ポートがポート1であることを検出可能である。
また、エントリ3106にIF2(IPアドレス "13X.XXX.2.243")3003からTerm2(IPアドレス "13X.XXX.2.2")3005への接続情報が格納されている。この接続情報によって、IF23003からTerm23005への接続ポートがポート2であることを検出可能である。また、IF13002からR3001への接続ポートとIF13002からTerm13004への接続ポートが異なることから、IF13002はR3001とTerm13004の中間に接続している機器であることが検出可能である。
【0052】
同様にIF23003からR3001への接続ポートとIF23003からTerm13004への接続ポートが等しいことから、Term13004はR3001とIF23003の中間に接続している機器であることが検出可能である。従って、IF13002はR3001とIF23003の中間に接続している機器であることが検出可能であり、IF13002はIF23003の親であることが検出可能である。また、IF13002はIF23003の親であることから、IF23002からR3001への接続ポートとIF23003からIF13002への接続ポートは等しいため、IF23003からIF13002への接続ポートはポート1であることが検出可能である。また、IF23003からR3001への接続ポートとIF23003からTerm23005への接続ポートが異なることから、IF23003はR3001とTerm23005の中間に接続している機器であることが検出可能である。また、IF13002はIF23003の親であることから、IF23003はIF13002とTerm23005の中間に接続しているため、IF13002からTerm23005への接続ポートとIF13002からIF23003への接続ポートは等しい。
従って、IF13002からIF23003への接続ポートはポート1であることが検出可能である。
このようにして、R-IF-IFモデルでは、IF13002とTerm13004、Term23005の接続情報とIF23003とTerm13004、Term23005の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートと親子関係の検出が可能である。
【0053】
図32は、本実施形態のR-IF-SFモデルの接続検出の仕組を示す図であり、R-IF-SFモデルの一例として、R(IPアドレス "13X.XXX.2.1")3201のポート2とIF(IPアドレス "13X.XXX.2.246")3202のポート2に接続関係があり、IF(IPアドレス "13X.XXX.2.246")3202のポート1とSF(IPアドレス "13X.XXX.2.243")3203のポート1に接続関係があり、IF(IPアドレス "13X.XXX.2.246")3202のポート3の先に任意のTerm1(IPアドレス "13X.XXX.2.102")3204が接続されており、SF(IPアドレス "13X.XXX.2.243")3203のポート2の先に任意のTerm2(IPアドレス "13X.XXX.2.2")3205が接続されており、さらにSF(IPアドレス "13X.XXX.2.243")3203のポート3の先に任意のTerm3(IPアドレス "13X.XXX.2.110")3206が接続されている場合を示している。
【0054】
図33は、本実施形態のR-IF-SFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図32に示したR-IF-SFモデルに対するPFテーブル1124のエントリを例示している。
エントリ3301にIF(IPアドレス "13X.XXX.2.246")3202からTerm2(IPアドレス "13X.XXX.2.2")3205への接続情報が格納されている。この接続情報によって、IF3202からTerm23205への接続ポートがポート1であることを検出可能である。
また、エントリ3302にIF(IPアドレス "13X.XXX.2.246")3202からTerm3(IPアドレス "13X.XXX.2.110")3206への接続情報が格納されている。この接続情報によって、IF3202からTerm33206への接続ポートがポート1であることを検出可能である。
また、エントリ3303にIF(IPアドレス "13X.XXX.2.246")3202からR(IPアドレス "13X.XXX.2.1")3201への接続情報が格納されている。この接続情報によって、IF3202からR3201への接続ポートがポート2であることを検出可能である。
【0055】
また、エントリ3304にIF(IPアドレス "13X.XXX.2.246")3202からTerm1(IPアドレス "13X.XXX.2.102")3204への接続情報が格納されている。この接続情報によって、IF3202からTerm13204への接続ポートがポート3であることを検出可能である。
また、エントリ3305にSF(IPアドレス "13X.XXX.2.246")3203からTerm1(IPアドレス "13X.XXX.2.102")3204への接続情報が格納されている。この接続情報によって、SF3203からTerm13204への接続ポートがポート1であることを検出可能である。
また、エントリ3306にSF(IPアドレス "13X.XXX.2.243")3203からTerm2(IPアドレス "13X.XXX.2.2")3205への接続情報が格納されている。この接続情報によって、SF3203からTerm23205への接続ポートがポート2であることを検出可能である。
また、エントリ3307にSF(IPアドレス "13X.XXX.2.243")3203からTerm3(IPアドレス "13X.XXX.2.110")3206への接続情報が格納されている。この接続情報によって、SF3203からTerm33206への接続ポートがポート3であることを検出可能である。また、IF3202からR3201への接続ポートとIF3202からTerm23205への接続ポートが異なることから、IF3202はR3201とTerm23205の中間に接続している機器であることが検出可能である。同様に、IF3202からR3201への接続ポートとIF3202からTerm33206への接続ポートが異なることから、IF3202はR3201とTerm33206の中間に接続している機器であることが検出可能である。
【0056】
また、SF3203からTerm23205への接続ポートとSF3203からTerm33206への接続ポートが異なることから、SF3203はTerm23205とTerm33206の中間に接続している機器であることが検出可能である。従って、SF3203はIF3202とTerm23205、Term33206の中間に接続している機器であることが検出可能であり、IF3202はSF3203の親であることが検出可能である。さらに、IF3202からSF3203への接続ポートとIF3202からTerm23205、Term33206への接続ポートは等しいため、IF3202からSF3203への接続ポートはポート1であることが検出可能である。
また、IF3202からR3201への接続ポートとIF3202からTerm13204への接続ポートが異なることから、IF3202はR3201とTerm13204の中間に接続している機器であることが検出可能である。
【0057】
同様に、IF3202からSF3203への接続ポートとIF3202からTerm13204への接続ポートが異なることから、IF3202はSF3203とTerm13204の中間に接続している機器であることが検出可能である。従って、SF3203からIF3202への接続ポートとSF3203からTerm13204への接続ポートは等しい。従って、SF3203からIF3202への接続ポートはポート1であることが検出可能である。
このようにして、R-IF-SFモデルでは、IF3202とTerm13204〜Term33206の接続情報とSF3203とTerm13204〜Term33206の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートと親子関係の検出が可能である。
【0058】
図34は、本実施形態のR-SF-CFモデルの接続検出の仕組を示す図であり、R-SF-CFモデルの一例として、R(IPアドレス "13X.XXX.2.1")3401のポート2とNF(IPアドレスなし)3402のポート3に接続関係があり、NF(IPアドレスなし)のポート2とSF(IPアドレス "13X.XXX.2.246")3403のポート2に接続関係があり、さらにSF(IPアドレス "13X.XXX.2.246")3403のポート1とCF(IPアドレス "13X.XXX.2.243")3404のポート1に接続関係があり、NF(IPアドレスなし)3402のポート1の先に任意のTerm1(IPアドレス "13X.XXX.2.51")3205が接続されており、CF(IPアドレス "13X.XXX.2.243")3404のポート2の先に任意のTerm2(IPアドレス "13X.XXX.2.2")3406が接続されている場合を示している。
【0059】
図35は本実施形態のR-SF-CFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図34に示したR-SF-CFモデルに対するPFテーブル1124のエントリを例示している。
エントリ3501にSF(IPアドレス "13X.XXX.2.246")3403からTerm2(IPアドレス "13X.XXX.2.2")3406への接続情報が格納されている。この接続情報によって、SF3403からTerm23406への接続ポートがポート1であることを検出可能である。
また、エントリ3502にSF(IPアドレス "13X.XXX.2.246")3403からTerm1(IPアドレス "13X.XXX.2.51")3405への接続情報が格納されている。この接続情報によって、SF3403からTerm13405への接続ポートがポート2であることを検出可能である。
また、エントリ3503にCF(IPアドレス "13X.XXX.2.243")3404からR(IPアドレス "13X.XXX.2.1")3401への接続情報が格納されている。この接続情報によって、CF3404からR3401への接続ポートがポート1であることを検出可能である。
【0060】
また、エントリ3504にCF(IPアドレス "13X.XXX.2.243")3304からTerm1(IPアドレス "13X.XXX.2.51")3405への接続情報が格納されている。この接続情報によって、CF3404からTerm13405への接続ポートがポート1であることを検出可能である。
また、エントリ3505にCF(IPアドレス "13X.XXX.2.243")3404からSF(IPアドレス "13X.XXX.2.246")3403への接続情報が格納されている。この接続情報によって、CF3404からSF3403への接続ポートがポート1であることを検出可能である。
また、エントリ3506にCF(IPアドレス "13X.XXX.2.243")3404からTerm2(IPアドレス "13X.XXX.2.2")3406への接続情報が格納されている。この接続情報によって、CF3404からTerm23406への接続ポートがポート2であることを検出可能である。そして、CF3404からR3401への接続ポートとCF3404からSF3403への接続ポートが等しいことから、SF3403はCF3404の親または兄弟であり、CF3404からSF3403への接続ポートは1であることが検出可能である。また、SF3403からTerm13405への接続ポートとSF3403からTerm23406への接続ポートが異なることから、SF3403はTerm13405とTerm23406の中間に接続している機器であることが検出可能である。
【0061】
また、CF3404からSF3403への接続ポートとCF3404からTerm23406への接続ポートが異なることから、CF3404はSF3403とTerm23406の中間に接続している機器であり、SF3403からTerm23406への接続ポートとSF3403からCF3404への接続ポートは等しい。従って、SF3403からCF3404への接続ポートは1であることが検出可能である。また、SF3403からR3401への接続ポートの検出が不可能であるため、SF3403とCF3404の親子関係は検出不能である(SF3403とCF3404の中間にNF3402が接続している場合はSF3403とCF3404は兄弟になる)。
このようにして、R-SF-CFモデルでは、SF3403とTerm13405、Term23406の接続情報とCFとTerm13405、Term23406の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートだけの検出が可能になる。
【0062】
図36は、本実施形態のR-SF-IFモデルの接続検出の仕組を示す図であり、R-SF-IFモデルの一例として、R(IPアドレス "13X.XXX.2.1")3601のポート2とNF(IPアドレスなし)3602のポート3に接続関係があり、NF(IPアドレスなし)3602のポート2とSF(IPアドレス "13X.XXX.2.246")3603のポート2に接続関係があり、さらにSF(IPアドレス "13X.XXX.2.246")3603のポート1とIF(IPアドレス "13X.XXX.2.243")3604のポート1に接続関係があり、NF(IPアドレスなし)3602のポート1の先に任意のTerm1(IPアドレス "13X.XXX.2.51")3605が接続されており、さらにSF(IPアドレス "13X.XXX.2.246")3603のポート3の先に任意のTerm2(IPアドレス "13X.XXX.2.102")3606が接続されており、IF(IPアドレス "13X.XXX.2.243")3604のポート2の先に任意のTerm3(IPアドレス "13X.XXX.2.2")3607が接続されている場合を示している。
【0063】
図37は本実施形態のR-SF-IFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図36に示したR-SF-IFモデルに対するPFテーブル1124のエントリを例示している。
エントリ3701にSF(IPアドレス "13X.XXX.2.246")3603からTerm3(IPアドレス "13X.XXX.2.2")3607への接続情報が格納されている。この接続情報によって、SF3603からTerm33607への接続ポートがポート1であることを検出可能である。
また、エントリ3702にSF(IPアドレス "13X.XXX.2.246")3603からTerm1(IPアドレス "13X.XXX.2.51")3605への接続情報が格納されている。この接続情報によって、SF3603からTerm13605への接続ポートがポート2であることを検出可能である。
また、エントリ3703にSF(IPアドレス "13X.XXX.2.246")3603からTerm2(IPアドレス "13X.XXX.2.102")3606への接続情報が格納されている。この接続情報によって、SF3603からTerm23606への接続ポートがポート3であることを検出可能である。
【0064】
また、エントリ3704にIF(IPアドレス "13X.XXX.2.243")3604からR(IPアドレス "13X.XXX.2.1")3601への接続情報が格納されている。この接続情報によって、IF3604からR3601への接続ポートがポート1であることを検出可能である。
また、エントリ3705にIF(IPアドレス "13X.XXX.2.243")3604からTerm1(IPアドレス "13X.XXX.2.51")3605への接続情報が格納されている。この接続情報によって、IF3604からTerm13605への接続ポートがポート1であることを検出可能である。
また、エントリ3706にIF(IPアドレス "13X.XXX.2.243")3604からTerm2(IPアドレス "13X.XXX.2.102")3606への接続情報が格納されている。この接続情報によって、IF3604からTerm23606への接続ポートがポート1であることを検出可能である。
また、エントリ3707にIF(IPアドレス "13X.XXX.2.243")3604からTerm3(IPアドレス "13X.XXX.2.2")3607への接続情報が格納されている。この接続情報によって、IF3604からTerm33607への接続ポートがポート2であることを検出可能である。また、IF3604からR3601への接続ポートとIF3604からTerm13605への接続ポートが等しいことから、Term13605はR3601とIF3604の中間に接続している機器であることが検出可能である。
【0065】
同様に、IF3604からR3601への接続ポートとIF3604からTerm23606への接続ポートが等しいことから、Term23606はR3601とIF3604の中間に接続している機器であることが検出可能である。また、SF3603からTerm13605への接続ポートとSF3603からTerm23606への接続ポートが異なることから、SF3603はTerm13605とTerm23606の中間に接続している機器であることが検出可能である。
従って、IF3604からSF3603への接続ポートとIF3604からTerm13605、Term23606への接続ポートは等しいことから、IF3604からSF3603への接続ポートは1であることが検出可能である。また、IF3604からR3601への接続ポートとIF3604からTerm33607への接続ポートが異なることから、IF3604はR3601とTerm33607の中間に接続している機器であることが検出可能である。さらに、SF3603はR3601とIF3604の中間に接続していることから、IF3604はSF3603とTerm33607の中間に接続していることが検出可能である。
【0066】
従って、SF3603からIF3604への接続ポートはSF3603からTerm33607の接続ポートに等しいため、SF3603からIF3604への接続ポートは1であることが検出可能である。また、SF3603からR3601への接続ポートの検出が不可能であるため、SF3603とIF3604の親子関係は検出不能である。このようにして、R-IF-SFモデルでは、SF3603とTerm13605〜Term33607の接続情報とIF3604とTerm13605〜Term33607の接続情報がPFテーブル1124に格納されているという条件下で機器の接続ポートだけの検出が可能になる。
【0067】
図38は本実施形態のR-SF-SFモデルの接続検出の仕組を示す図であり、R-SF-SFモデルの一例として、R(IPアドレス "13X.XXX.2.1")3801のポート2とNF(IPアドレスなし)3802のポート3に接続関係があり、NF(IPアドレスなし)3802のポート2とSF1(IPアドレス "13X.XXX.2.246")3803のポート2に接続関係があり、さらにSF1(IPアドレス "13X.XXX.2.246")3803のポート1とSF2(IPアドレス "13X.XXX.2.243")3804のポート1に接続関係があり、NF(IPアドレスなし)3802のポート1の先に任意のTerm1(IPアドレス "13X.XXX.2.51")3805が接続されており、SF2(IPアドレス "13X.XXX.2.243")3804のポート2の先に任意のTerm2(IPアドレス "13X.XXX.2.2")3806が接続されている場合を示している。
【0068】
図39は本実施形態のR-SF-SFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図38に示したR-SF-SFモデルに対するPFテーブル1124のエントリを例示している。
まず、エントリ3901にSF1(IPアドレス "13X.XXX.2.246")3803からTerm2(IPアドレス "13X.XXX.2.2")3806への接続情報が格納されている。この接続情報によって、SF13803からTerm23806への接続ポートがポート1であることを検出可能である。
また、エントリ3902にSF1(IPアドレス "13X.XXX.2.246")3803からTerm1(IPアドレス "13X.XXX.2.51")3805への接続情報が格納されている。この接続情報によって、SF13803からTerm13805への接続ポートがポート2であることを検出可能である。
【0069】
エントリ3903にSF2(IPアドレス "13X.XXX.2.246")3804からTerm1(IPアドレス "13X.XXX.2.51")3805への接続情報が格納されている。この接続情報によって、SF23804からTerm13805への接続ポートがポート1であることを検出可能である。
エントリ3903にSF2(IPアドレス "13X.XXX.2.243")3804からTerm2(IPアドレス "13X.XXX.2.2")3806への接続情報が格納されている。この接続情報によって、SF23804からTerm23806への接続ポートがポート2であることを検出可能である。
しかし、PFテーブル1124のエントリからは、SF13803のポート1とSF23804のポート1に接続関係がある場合とSF13803のポート2とSF23804のポート2に接続関係がある場合を判別できないため、接続ポートは検出できない。また、SF13803とR3801の接続関係やSF23804とR3801の接続関係を検出不能なことにより親子関係の検出も不能である。R-SF-SFモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が不可能である。
【0070】
図40は本実施形態のR-CFモデルの接続検出の仕組を示す図であり、R-CFモデルの一例として、R(IPアドレス "13X.XXX.2.1")4001のポート2とCF(IPアドレス "13X.XXX.2.246")4002のポート2に接続関係がある場合を示している。
【0071】
図41は本実施形態のR-CFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図40に示したR-CFモデルに対するPFテーブル1124のエントリを例示している。
エントリ4101にR(IPアドレス "13X.XXX.2.1")4001からCF(IPアドレス "13X.XXX.2.246")4002への接続情報が格納されている。この接続情報によって、R4001からCF4002への接続ポートがポート2であることを検出可能である。
また、CF(IPアドレス "13X.XXX.2.246")4002からR(IPアドレス "13X.XXX.2.1")4001への接続情報が格納されている。この接続情報によって、CF4002からR4001への接続ポートがポート2であることを検出可能である。なお、R(IPアドレス "13X.XXX.2.1")4001からCF(IPアドレス "13X.XXX.2.246")4002への接続情報がない場合でも、R(IPアドレス "13X.XXX.2.1")4001と"13X.XXX.2.*"ネットワーク上の任意の機器の接続情報が存在すれば、そのポートがR4001からCF4002への接続ポートになる。また、CF(IPアドレス "13X.XXX.2.246")4002からR(IPアドレス "13X.XXX.2.1")4001への接続情報がない場合でも、CF(IPアドレス "13X.XXX.2.246")4002と別セグメントに接続している機器の接続情報が存在すれば、そのポートがCF4002からR4001への接続ポートになる。
このようにして、R-CFモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
【0072】
図42は本実施形態のR-IFモデルの接続検出の仕組を示す図であり、R-IFモデルの一例として、R(IPアドレス "13X.XXX.2.1")4201のポート2とIF(IPアドレス "13X.XXX.2.246")4202のポート2に接続関係がある場合を示している。
【0073】
図43は本実施形態のR-IFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図42に示したR-IFモデルに対するPFテーブル1124のエントリを例示している。
エントリ4301にR(IPアドレス "13X.XXX.2.1")4201からIF(IPアドレス "13X.XXX.2.246")4202への接続情報が格納されている。この接続情報によって、R4201からIF4202への接続ポートがポート2であることを検出可能である。
また、エントリ4302にIF(IPアドレス "13X.XXX.2.246")4202からR(IPアドレス "13X.XXX.2.1")4201への接続情報が格納されている。この接続情報によって、IF4202からR4201への接続ポートがポート2であることを検出可能である。
なお、R(IPアドレス "13X.XXX.2.1")4201からIF(IPアドレス "13X.XXX.2.246")4202への接続情報がない場合でも、R(IPアドレス "13X.XXX.2.1")4201と"13X.XXX.2.*"ネットワーク上の任意の機器の接続情報が存在すれば、そのポートがR4201からIF4202への接続ポートになる。また、IF(IPアドレス "13X.XXX.2.246")4202からR(IPアドレス "13X.XXX.2.1")4201への接続情報がない場合でも、IF(IPアドレス "13X.XXX.2.246")4202と別セグメントに接続している機器の接続情報が存在すれば、そのポートがIF4202からR4201への接続ポートになる。
このようにして、R-IFモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
【0074】
図44は本実施形態のR-SFモデルの接続検出の仕組を示す図であり、R-SFモデルの一例として、R(IPアドレス "13X.XXX.2.1")4401のポート2とSF(IPアドレス "13X.XXX.2.246")4402のポート2に接続関係があり、R(IPアドレス "13X.XXX.2.1")4401のポート1の先には任意のTerm1(IPアドレス "13X.XXX.1.1")4403が接続している場合を示している。
【0075】
図45は本実施形態のR-SFモデルの接続検出に利用するPFテーブル1124のエントリ例を示すものであり、図44に示したR-SFモデルに対するPFテーブル1124のエントリを例示している。
エントリ4501にR(IPアドレス "13X.XXX.2.1")4401からSF(IPアドレス "13X.XXX.2.246")4402への接続情報が格納されている。この接続情報によって、R4401からSF4402への接続ポートがポート2であることを検出可能である。
また、エントリ4502にSF(IPアドレス "13X.XXX.2.246")から別セグメントに接続している機器の接続情報("13X.XXX.2.*"のネットワークの機器ではない機器Term1("13X.XXX.1.1")4403が格納されている。この接続情報によって、SF4402からR4401への接続ポートがポート2であることを検出可能である。
なお、R(IPアドレス "13X.XXX.2.1")4401からSF(IPアドレス "13X.XXX.2.246")4402への接続情報がない場合でも、R(IPアドレス "13X.XXX.2.1")4401と"13X.XXX.2.*"ネットワーク上の任意の機器の接続情報が存在すれば、そのポートがR4401からSF4402への接続ポートになる。
このようにして、R-SFモデルでは、別セグメントに接続している機器の接続情報が取得可能であるという条件下で機器の接続ポートと親子関係の検出が可能である。
【0076】
図46および図47は、本実施形態のネットワーク中継装置同士の接続検出方法を説明する図である。
図46及び図47は、図22〜図45で示したネットワーク中継装置同士の接続関係や親子関係の検出条件を表形式でまとめたものである。
接続モデル4601、4701ごとに検出条件を設定しており、親から子への接続ポート4602、4702、子から親への接続ポート4603、4703、親子関係4604、4704の検出可能性を示している。
「○」印の項目は接続検出するための条件4605、4705に関係なく検出が可能であることを示しており、「△」印の項目は接続検出するための条件を満たしている場合に限り検出が可能であることを示しており、「×」印の項目は任意の条件下で検出が不可能であることを示している。
【0077】
図48は、本実施形態のCF-Termモデルの接続検出の仕組を示す図であり、CF-Termモデルの一例として、CF(IPアドレス "13X.XXX.2.246")4801のポート3とTerm1(IPアドレス "13X.XXX.2.102")4802に接続関係がある場合を示している。
【0078】
図49は本実施形態のCF-Termモデルの接続検出に利用するPFテーブル1124のエントリ例を示す図であり、図48に示したCF-Termモデルに対するPFテーブルのエントリを例示している。
エントリ4901にCF(IPアドレス "13X.XXX.2.246")4801からTerm1(IPアドレス "13X.XXX.2.102")4802への接続情報が格納されている。この接続情報によって、CF4801からTerm14802への接続ポートがポート3であることを検出可能である。
この場合、CF4801のポート3の先に任意の台数の機器が接続している場合でも、PFテーブル1124には機器の台数分の接続情報が格納されるため、任意の台数のTermの検出が可能である。
このようにして、CF-Termモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
図50は、本実施形態のIF-Termモデルの接続検出の仕組を示す図であり、IF-Termモデルの一例として、IF(IPアドレス "13X.XXX.2.246")5001のポート3とTerm1(IPアドレス "13X.XXX.2.102")5002に接続関係がある場合を示している。
【0079】
図51は、本実施形態のIF-Termモデルの接続検出に利用するPFテーブル1124のエントリ例を示す図であり、図50に示したIF-Termモデルに対するPFテーブル1124のエントリを例示している。
エントリ5101にIF(IPアドレス "13X.XXX.2.246")5001からTerm1(IPアドレス "13X.XXX.2.102")5002への接続情報が格納されている。この接続情報によって、IF5001からTerm15002への接続ポートがポート3であることを検出可能である。
この場合、IF5001のポート3の先に任意の台数の機器が接続している場合でも、PFテーブル1124には機器の台数分の接続情報が格納されるため、任意の台数のTermの検出が可能である。
このようにして、IF-Termモデルでは、任意の条件下で機器の接続ポートと親子関係の検出が可能である。
【0080】
図52は本実施形態のSF-Termモデルの接続検出の仕組を示す図であり、SF-Termモデルの一例として、SF(IPアドレス "13X.XXX.2.246")5201のポート3とTerm1(IPアドレス "13X.XXX.2.102")5202に接続関係がある場合を示している。
図53は本実施形態のIF-Termモデルの接続検出に利用するPFテーブル1124のエントリ例を示す図であり、図52に示したSF-Termモデルに対するPFテーブル1124のエントリを例示している。
エントリ5301にSF(IPアドレス "13X.XXX.2.246")5201からTerm1(IPアドレス "13X.XXX.2.102")5202への接続情報が格納されている。この接続情報によって、SFからTerm1への接続ポートがポート3であることを検出可能である。
この場合、SF5201のポート3の先に複数台の機器が接続している場合は、PFテーブル1124には機器1台数分の接続情報が格納されるため、任意の1台のTermの検出が可能である。
このようにして、SF-Termモデルでは、ネットワーク中継装置の各ポートに1台の機器が接続しているという条件下で機器の接続ポートと親子関係の検出が可能である。
【0081】
図54は本実施形態のネットワーク構成自動認識方法におけるネットワーク中継装置と端末装置の接続検出方法を説明する図である。図54は図48〜図53で示したネットワーク中継装置と端末装置の接続関係や親子関係の検出条件を表形式でまとめたものである。
接続モデル5401ごとに端末装置の接続検出5302の可能性を示しており、接続検出するための条件5403によって接続検出可能性が変化する。
「○」印の項目は接続検出するための条件に関係なく検出が可能であることを示しており、「△」印の項目は接続検出するための条件を満たしている場合に限り検出が可能であることを示している。
【0082】
図55は本実施形態の複数のモデルを組合わせることによる親子関係の検出を説明する図である。図55はR-CF-CFモデルとR-CF-SFモデルを組合わせ、R-SF-CFモデルの親子関係を検出する場合の一例を示している。
ここでは、R(IPアドレス "13X.XXX.2.1")5501のポート2とCF1(IPアドレス "13X.XXX.2.246")5502のポート2に接続関係があり、さらにCF1(IPアドレス "13X.XXX.2.246")5502のポート1とSF(IPアドレス "13X.XXX.2.243")5503のポート1に接続関係があり、SF(IPアドレス "13X.XXX.2.243")5503のポート2とCF2(IPアドレス "13X.XXX.2.247")5504のポート2に接続関係があり、さらにCF1(IPアドレス "13X.XXX.2.246")5502のポート3の先に任意のTerm1(IPアドレス "13X.XXX.2.102")5505が接続されており、さらにCF2(IPアドレス "13X.XXX.2.247")5504のポート1の先に任意のTerm2(IPアドレス "13X.XXX.2.2")5506が接続されている場合を示している。
【0083】
図56は本実施形態の複数のモデルを組合わせることによる親子関係の検出に利用するTSテーブル1125のエントリを示す図であり、図55に示したR-CF-CFモデルとR-CF-SFモデルからR-SF-CFモデルを検出するためのエントリを例示している。
R-CF-SFモデルでは、Term1への接続情報をCFとSFの両方が保持している条件下で親子関係の検出が可能であるため、CF1(IPアドレス "13X.XXX.2.246")5502はSF(IPアドレス "13X.XXX.2.243")5503の親であることを示すエントリ5601がTSテーブル1125に格納される。
また、R-CF-CFモデルでは、任意の条件下で親子関係の検出が可能であるため、CF1(IPアドレス "13X.XXX.2.246")5502はCF2(IPアドレス "13X.XXX.2.247")5504の親であることを示すエントリ5602がTSテーブル1125に格納される。なお、R-SF-CFモデルでは親子関係の検出が不可能であるため、SF(IPアドレス "13X.XXX.2.243")5503とCF2(IPアドレス "13X.XXX.2.247")5504の親子関係は不明である。
【0084】
従って、図56では接続関係(接続ポート)は検出可能であるが、親子関係の検出は不可能である場合を示す例として、CF2(IPアドレス "13X.XXX.2.247")5504はSF(IPアドレス "13X.XXX.2.243")5503の親であることを示すエントリ5603とSF(IPアドレス "13X.XXX.2.243")5503はCF2(IPアドレス "13X.XXX.2.247")5504の親であることを示すエントリ5604を同時に格納している。SF5503からCF15502への接続ポートとSF5503からCF25504への接続ポートが異なることから、SF5503はCF1552とCF25504の中間に接続していることが検出可能である。また、CF15502はSF5503の親であることから、SF5503はCF25504の親であることが検出可能である。
このようにして、R-SF-CFモデルは親子関係の検出が不可能であるが、R-CF-CFモデルとR-CF-SFモデルから検出可能な親子関係を組合わせることで、親子関係の検出が可能である。
【0085】
図57は本実施形態のNon Intelligent Hubの接続の予測方法を説明する図であり、ここでは、Non Intelligent Hubの接続の予測する一例として、Unit(IPアドレス "13X.XXX.2.246")5701のポート1とNF(IPアドレスなし)5702のポート1に接続関係があり、NF(IPアドレスなし)5702のポート2の先に任意のTerm1(IPアドレス "13X.XXX.2.98")5703が接続されており、NF(IPアドレスなし)5702のポート3の先に任意のTerm2(IPアドレス “13X.XXX.2.13")5704が接続されている場合を示している。
【0086】
図58は、本実施形態のNon Intelligent Hubの接続の予測に利用するTSテーブル1125のエントリ例を示す図であり、図57に示したNon Intelligent Hubの接続の予測に対するTSテーブル1125のエントリを例示している。
エントリ5801にはUnit(IPアドレス "13X.XXX.2.246")5701のポート1の先にTerm1(IPアドレス "13X.XXX.2.98")5703が子として接続されていることを示す接続情報が格納されている。
【0087】
同様に、エントリ5802には、Unit(IPアドレス "13X.XXX.2.246")5701のポート1の先にTerm2(IPアドレス "13X.XXX.2.13")5704が子として接続されていることを示す接続情報が格納されている。
これによって、ネットワーク中継装置の共通のポートに複数の機器が子として接続しており、別のネットワーク中継装置が存在しない場合はNon Intelligent Hubが少なくとも1台以上接続していることが検出可能である。そして、ネットワーク中継装置の共通のポートに複数の機器が子として接続しており、別のネットワーク中継装置が存在する場合でもネットワーク中継装置とネットワーク中継装置の接続ポートの中間に複数の機器が接続しており、接続機器の中にネットワーク中継装置を含まない場合はNon Intelligent Hubが少なくとも1台以上接続していることが検出可能である。
【0088】
図59は本実施形態の非稼動中端末装置の検出方法を説明する図であり、R(IPアドレス "13X.XXX.2.1")5901のポート2とUnit(IPアドレス"13X.XXX.2.243")5902のポート2に接続関係があり、Unit(IPアドレス("13X.XXX.2.243")5902のポート1の先に先に任意のTerm(IPアドレス "13X.XXX.2.2")5903が接続されているが、Term5903は非稼動中端末装置である場合を示している。
図59の例では、非稼動中端末装置5903の接続関係や親子関係を検出する一例として、ネットワーク中のIPアドレスに対してポーリングを行い、ポーリングに応答がないIPアドレスの機器が存在した場合、そのIPアドレスに対応する機器が存在しない、または非稼動中であるとし、TIテーブル1123(図14)のalive値がFALSEのエントリを追加する。次に、RouterのARPキャッシュを参照し、ポーリングに応答を返さないIPアドレスのエントリがARPキャッシュに含まれている場合には、そのIPアドレスに対応する機器は非稼動中であるものとして検出する。また、ネットワーク中継装置同士の接続関係や親子関係の検出に利用するMIBオブジェクトに非稼動中端末装置の接続情報が含まれている場合には、PFテーブル1124やTSテーブル1125に非稼動中端末装置のエントリの作成が可能になるため、非稼動中端末装置の接続関係や親子関係の検出が可能になる。
【0089】
図60は本実施形態の接続先の変更の検出方法を説明する図であり、Unit(IPアドレス "13X.XXX.2.243")6001のポート2の先に任意のTerm(IPアドレス "13X.XXX.2.2")6002が接続されていたが、Unit6001のポート3に接続先を変更した例を示している。
【0090】
図61は本実施形態の接続先の変更の検出に利用するTSテーブル1125のエントリ例を示す図であり、図60に示した接続先の変更の検出に対するエントリを例示している。
接続先変更前のTSテーブル1125のエントリ6101には、Unit(IPアドレス "13X.XXX.2.243")6001のポート2の先にはTerm(IPアドレス "13X.XXX.2.2")6002が子として接続されていることを示す接続情報が格納されている。接続先変更後のTSテーブルのエントリでは、Unit(IPアドレス "13X.XXX.2.243")6001のポート2の先にTerm(IPアドレス "13X.XXX.2.2")6002が子として接続しているエントリ6102とUnit(IPアドレス "13X.XXX.2.243")6001のポート3の先にTerm(IPアドレス "13X.XXX.2.2")6002が子として接続しているエントリ6103が存在している。接続先の変更前のTSテーブル1125と接続先の変更後のTSテーブル1125では、機器の接続先の情報も変更されるため、定期的にTSテーブル1125を作成し、差分をとることで、接続先の変更の検出が可能になる。
また、エントリ6102のように古い接続情報のキャッシュがMIBオブジェクトが残る場合でも問題ない。また、機器のIPアドレスを変更した場合には、IPアドレスの機器がネットワーク上に新たに追加されたという形で検出可能である。
【0091】
図62は本実施形態の図面表示プログラム1104が作成するネットワーク構成図面の表示例を示す図である。
図面表示プログラム1104のGUIは、Network Map表示部分6201、Terminal Information表示部分6202から構成される。
Network Map表示部分6201には、オートディスカバリモジュールを実行することにより自動検出したネットワークセグメントの構成を図示のように木構造表示する。このNetwork Map表示部分6201の任意の機器表示にマウス等のポインティングデバイスを利用してカーソルを充てた場合、該機器表示を符号6203で示すように反転表示し、Terminal Information表示部分6202に機器の情報を表示する。
【0092】
図62の例では、TIテーブル1123(図14)の該当する機器の情報を表示した例を示している。また、接続されているものと予測したNon Intelligent Hub6204を表示することも可能である。
ユーザはTerminal Information表示部分6202の情報を参照することで非稼動中の端末装置を認識可能であるが、Network Map表示部分6201の該当する機器の表示を低い輝度あるいは明度で描画する等のGUIによる表現も可能である。ユーザは個々の機器をポーティングデバイスによってDrag & Dropすることで、独自に接続先の編集を行うことも可能である。
【0093】
以下フローチャートを用いて、本実施形態の動作を説明する。
図63は本実施形態の稼動状況検出モジュール1111がICMPエコーリクエストを送受信する処理を示すフローチャートである。
稼動状況検出モジュール1111は、オートディスカバリモジュール1113からの稼動状況チェック要求を待ち(ステップ6301)、稼動状況チェック要求としてIPアドレスを受信すると(ステップ6302)、IPアドレスで指定された機器にPing(ICMPエコーリクエストメッセージ)を送信する(ステップ6303)。
Pingのタイムアウト内にICMPエコーリプライメッセージを受信するかどうかをチェックし(ステップ6304)、エコーリプライメッセージを受信した場合にはオートディスカバリモジュール1113にTrueを返し(ステップ6305)、それ以外の場合はFalseを返す(ステップ6306)。
ステップ6305あるいはステップ6306終了後、ステップ6301から処理を繰り返す。
稼動状況検出モジュール1111はPingの応答の有無により機器の稼動状況を検出する。
【0094】
図64は本実施形態のMIBアクセスモジュール1112がPDU(Protocol Data Unit)を作成し、SNMPメッセージを送受信する処理を示すフローチャートである。
MIBアクセスモジュール1112はオートディスカバリモジュール1113からのSNMP Get-Request(あるいはGet-Next/Set-Request)PDUの作成要求を待ち(ステップ6401)、SNMP Get(あるいはGet-Next/Set-Request)PDUの作成要求としてIPアドレス、コミュニティ名、オブジェクト名を受信する(ステップ6402)と、オブジェクト名をキーとして図12に示したOIDテーブル1121を検索する(ステップ6403)。
OIDテーブル1121にObject Name項目1201がオブジェクト名であるエントリが存在するかどうかをチェックし(ステップ6404)、エントリがヒットした場合、エントリのObjectIdentifier項目1202の値、IPアドレス、コミュニティ名をもとにSNMP Get(あるいはGet-Next/Set-Request)PDUを作成する(ステップ6405)。エントリがヒットしなかった場合は、オートディスカバリモジュール1113にエラーを返す(ステップ6410)。
【0095】
ステップ6405終了後、PDUをもとにSNMPメッセージを作成し、送信する(ステップ6406)。SNMPメッセージの応答としてSNMP (Get-Response)PDUの受信を待ち(ステップ6407)、応答を受信した場合はOIDテーブル1121のエントリのtype項目1203の値をもとにして受信した値の型変換を行い(ステップ6408)、応答の受信に失敗した場合はオートディスカバリモジュール1113にエラーを返す(ステップ6410)。
ステップ6408の終了後、オートディスカバリモジュール1113に型変換したSNMP応答の値を返す(ステップ6409)。ステップ6409あるいはステップ6410の終了後、ステップ6401から処理を繰り返す。図64の処理は、図65〜図68の処理実行時に呼び出される。
【0096】
図65(a)は、本実施形態のMIBアクセスモジュール1112が機器のMIB2サポート状況をチェックする処理を示すフローチャートである。
MIBアクセスモジュール1112は、オートディスカバリモジュール1113からのMIB2サポート状況チェック要求に対し、オブジェクト名としてsysDescrを指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行する(ステップ6501)。SNMP Get-Requestメッセージの送受信が成功かどうかチェック(エラーが返るかどうかをチェック)し(ステップ6502)、SNMP Get-Requestメッセージの送受信が成功の場合は機器がMIB2をサポートしていると判断し(ステップ6503)、SNMP Get-Requestメッセージの送受信が失敗の場合は機器がMIB2を非サポートであると判断し(ステップ6504)、オートディスカバリモジュール1113にMIB2サポート状況の情報を返す。
ステップ6503あるいはステップ6504の終了後、ステップ6501から処理を繰り返す。
【0097】
図65(b)は本実施形態のMIBアクセスモジュール1112が機器のIPフォワーディング機能の有無をチェックする処理を示すフローチャートである。
MIBアクセスモジュール1112は、オートディスカバリモジュール1113からのIPフォワーディング機能チェック要求に対し、オブジェクト名としてipForwardingを指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行する(ステップ6511)。SNMP Get-Requestメッセージの送受信が成功かどうかチェック(エラーが返るかどうかをチェック)し(ステップ6512)、SNMP Get-Requestメッセージの送受信が成功の場合はipForwardingの値が“1”(True)かどうかをチェックし(ステップ6513)、SNMP Get-Requestメッセージの送受信が失敗の場合は機器がIPフォワーディング機能を保持していないと判断する(ステップ6515)。
ステップ6513の終了後、ipForwardingの値が“1”(True)の場合は、機器がIPフォワーディング機能を保持していると判断し(ステップ6514)、ipForwardingの値が“0”(False)の場合は機器がIPフォワーディング機能を保持していないと判断する(ステップ6515)。ステップ6514あるいはステップ6515の終了後、オートディスカバリモジュール1113に機器のIPフォワーディング機能の有無の情報を返し、ステップ6511から処理を繰り返す。
【0098】
図66は、本実施形態のMIBアクセスモジュール1112が機器のブリッジMIBサポート状況をチェックする処理を示すフローチャートである。
MIBアクセスモジュール1112は、オートディスカバリモジュール1113からのブリッジMIBサポート状況チェック要求に対し、オブジェクト名としてdot1dBaseBridgeAddress(ブリッジMIBの任意の実装オブジェクトで可)を指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行する(ステップ6601)。SNMP Get-Requestメッセージの送受信が成功かどうかチェック(エラーが返るかどうかをチェック)し(ステップ6602)、SNMP Get-Requestメッセージの送受信が成功の場合は機器がブリッジMIBをサポートしていると判断し(ステップ6603)、SNMP Get-Requestメッセージの送受信が失敗の場合は機器がブリッジMIBを非サポートであると判断し(ステップ6604)、オートディスカバリモジュール1113にブリッジMIBサポート状況の情報を返す。ステップ6603あるいはステップ6604の終了後、ステップ6601から処理を繰り返す。
【0099】
図67は本実施形態のMIBアクセスモジュール1112が機器のリピータMIBサポート状況をチェックする処理を示すフローチャートである。
MIBアクセスモジュール1112は、オートディスカバリモジュール1113からのリピータMIBサポート状況チェック要求に対し、オブジェクト名としてrptrGroupCapacity(リピータMIBの任意の実装オブジェクトで可)を指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行する(ステップ6701)。SNMP Get-Requestメッセージの送受信が成功かどうかチェック(エラーが返るかどうかをチェック)し(ステップ6702)、SNMP Get-Requestメッセージの送受信が成功の場合は機器がリピータMIBをサポートしていると判断し(ステップ6703)、SNMP Get-Requestメッセージの送受信が失敗の場合は機器がリピータMIBを非サポートであると判断し(ステップ6704)、オートディスカバリモジュール1113にリピータMIBサポート状況の情報を返す。ステップ6703あるいはステップ6704の終了後、ステップ6701から処理を繰り返す。
【0100】
図68は本実施形態のMIBアクセスモジュール1112が機器のプリンタMIBサポート状況をチェックする処理を示すフローチャートである。
MIBアクセスモジュール1112は、オートディスカバリモジュール1113からのプリンタMIBサポート状況チェック要求に対し、オブジェクト名としてprtGeneralConfigChanges(プリンタMIBの任意の実装オブジェクトで可)を指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行する(ステップ6801)。SNMP Get-Requestメッセージの送受信が成功かどうかチェック(エラーが返るかどうかをチェック)し(ステップ6802)、SNMP Get-Requestメッセージの送受信が成功の場合は機器がプリンタMIBをサポートしていると判断し(ステップ6803)、SNMP Get-Requestメッセージの送受信が失敗の場合は機器がプリンタMIBを非サポートであると判断し(ステップ6804)、オートディスカバリモジュール1113にプリンタMIBサポート状況の情報を返す。ステップ6803あるいはステップ6804の終了後、ステップ6801から処理を繰り返す。
【0101】
図69は本実施形態のオートディスカバリモジュール1113がATテーブル1122を作成する処理を示すフローチャートである。
オートディスカバリモジュール1113はATテーブル作成要求を待ち(ステップ6901)、ATテーブル作成要求として探索するネットワークのIPアドレスの範囲を指定されると(ステップ6902)、指定されたネットワークの範囲に含まれるすべてのIPアドレスの探索を開始する。未探索のIPアドレスがあるかどうかチェックし(ステップ6903)、未探索のIPアドレスがない場合はステップ6901から処理を繰り返し、未探索のIPアドレスがある場合はIPアドレスを指定して図65(a)に示したMIBアクセスモジュール1112のMIB2サポート状況チェック処理を実行する(ステップ6904)。MIBアクセスモジュール1112の返り値からIPアドレスで指定された機器がMIB2をサポートしていかどうかチェックし(ステップ6905)、MIB2をサポートしている場合はipNetMediaPhysAddressをキーに図64に示したSNMP Get-Nextメッセージ送受信処理を実行し(ステップ6906)、ipNetToMediaNetAddressをキーに図64に示したSNMP Get-Nextメッセージ送受信処理を実行する(ステップ6907)。
【0102】
機器がMIB2をサポートしていない場合はステップ6903から処理を繰り返す。ステップ6907の終了後、ステップ6906とステップ6907のSNMP Get-Nextメッセージ送受信処理が2回とも成功したかどうかチェックし(ステップ6908)、2回とも成功した場合はATテーブル1122のIP Address項目にipNetToMediaNetAddressの値を、Mac Address項目にipNetMediaPhysAddressの値を設定したエントリをATテーブル1122に追加する(ステップ6909)。SNMP Get-Nextメッセージ送受信処理の失敗があった場合、あるいはステップ6909の終了後、ステップ6903から処理を繰り返す。
【0103】
図70は、本実施形態のオートディスカバリモジュール1113がTIテーブル1123を作成する処理を示すフローチャートである。オートディスカバリモジュール1113はTIテーブル作成要求を待ち(ステップ7001)、TIテーブル作成要求として探索するネットワークのIPアドレスの範囲を指定されると(ステップ7002)、指定されたネットワークの範囲に含まれるすべてのIPアドレスの探索を開始する。未探索のIPアドレスがあるかどうかチェックし(ステップ7003)、未探索のIPアドレスがない場合はステップ7001から処理を繰り返し、未探索のIPアドレスがある場合はIPアドレスを指定して図71に示すTIテーブルの各項目の値を取得する処理を実行する(ステップ7004)。ステップ7004の終了後、TIテーブル1123に新規エントリを追加し(ステップ7005)、ステップ7003から処理を繰り返す。
【0104】
図71は、本実施形態のオートディスカバリモジュール1113がTIテーブル1123の作成時にTIテーブル1123の各項目の値を取得する処理を示すフローチャートである。
オートディスカバリモジュール1113はTIテーブル1123の各項目の値を取得要求を待ち(ステップ7101)、TIテーブル1123の各項目の値を取得要求として探索するIPアドレスを受信すると(ステップ7102)、IPアドレスをキーにATテーブル1122のIP Addressを検索し、取得したエントリのMac Address項目の値をTIテーブル1123のMac Address項目に設定する(ステップ7103)。
次に、IPアドレスをキーに機器のホスト名を解決し、TIテーブル1123のHost Name項目にホスト名を設定する(ステップ7104)。次に、IPアドレスをキーに図63に示した稼動状況チェック処理を実行し(ステップ7105)、TIテーブル1123のalive項目に稼動状況チェック処理の返り値を設定する。次に、図65(a)に示したMIB2サポート状況チェック処理を実行し(ステップ7106)、TIテーブル1123のMIB2項目にMIB2サポート状況チェック処理の返り値を設定する。
【0105】
次に、図65(b)に示したIPフォワーディング機能チェック処理を実行し(ステップ7107)、TIテーブル1123のforwarding項目にIPフォワーディング機能チェック処理の返り値を設定する。次に、図66に示したブリッジMIBサポート状況チェック処理を実行し(ステップ7108)、TIテーブル1123のbridge項目にブリッジMIBサポート状況チェック処理の返り値を設定する。
次に、図67に示したリピータMIBサポート状況チェック処理を実行し(ステップ7109)、TIテーブル1123のrepeater項目にリピータMIBサポート状況チェック処理の返り値を設定する。次に、図68に示したプリンタMIBサポート状況チェック処理を実行し(ステップ7110)、TIテーブル1123のprinter項目にプリンタMIBサポート状況チェック処理の返り値を設定する。次に、図72に示す機器タイプ認識処理を実行し(ステップ7111)、TIテーブル1123のtype項目に機器タイプ認識処理の返り値を設定する。ステップ7111の終了後、ステップ7101から処理を繰り返す。
【0106】
図72は、本実施形態のオートディスカバリモジュール1113がTIテーブル1123の作成時に機器タイプを認識する処理を示すフローチャートである。オートディスカバリモジュール1113は、機器タイプの認識要求を待ち(ステップ7201)、機器タイプの認識要求としてTIテーブル1123の該当するエントリのforwarding項目、bridge項目、repeater項目、printer項目の値を受信する(ステップ7202)と、forwarding項目の値が“1”(True)かどうかチェックする(ステップ7203)。
forwarding項目の値が“1”(True)の場合は、bridge項目の値が“1”(True)かどうかチェックする(ステップ7204)。
forwarding項目の値が“1”(True)で、bridge項目の値が“1”(True)の場合は機器をルータと認識する(ステップ7205)。forwarding項目の値が“1”(True)で、bridge項目の値が“0”(False)の場合は機器をスイッチングハブと認識する(ステップ7206)。
ステップ7203でforwarding項目の値が“0”(False)の場合は、bridge項目の値が“1”(True)かどうかチェックする(ステップ7207)。bridge項目の値が“1”(True)の場合は、repeater項目の値が“1”(True)かどうかチェックする(ステップ7208)。forwarding項目の値が“0”(False)で、bridge項目の値が“1”(True)でrepeater項目の値が“1”(True)の場合は機器をスイッチングハブと認識する(ステップ7206)。
【0107】
forwarding項目の値が“0”(True)でbridge項目の値が“1”(True)でrepeater項目の値が“0”(False)の場合は機器をブリッジと認識する(ステップ7209)。ステップ7207でbridge項目の値が“0”(False)の場合はrepeater項目の値が“1”(True)かどうかチェックする(ステップ7210)。forwarding項目の値が“0”(False)でbridge項目の値が“0”(False)でrepeater項目の値が“1”(True)の場合は機器をインテリジェントハブと認識する(ステップ7211)。
ステップ7210でrepeater項目の値が“0”(False)の場合はprinter項目の値が“1”(True)かどうかチェックする(ステップ7212)。forwarding項目の値が“0”(False)でbridge項目の値が“0”(False)でrepeater項目の値が“0”(False)でprinter項目の値が“1”(True)の場合は機器をプリンタと認識する(ステップ7213)。forwarding項目の値が“0”(False)でbridge項目の値が“0”(False)でrepeater項目の値が“0”(False)でprinter項目の値が“0”(False)の場合は機器を端末装置と認識する(ステップ7214)。ステップ7205、ステップ7206、ステップ7209、ステップ7211、ステップ7213、ステップ7214の任意のステップ終了後、ステップ7201から処理を繰り返す。
【0108】
図73は本実施形態のオートディスカバリモジュール1113がPFテーブル1124を作成する処理を示すフローチャートである。
オートディスカバリモジュール1113はPFテーブル1124の作成要求を待ち(ステップ7301)、PFテーブル1124の作成要求を受信する(ステップ7302)と、TIテーブル1123のすべてのエントリの検索を開始する。TIテーブル1123に未探索のエントリがあるかどうかチェックし(ステップ7303)、TIテーブル1123に未探索のエントリがない場合はステップ7301から処理を繰り返し、TIテーブル1123に未探索のエントリがある場合はTIテーブル1123の該当するエントリのbridge項目の値が“1”(True)かどうかチェックする(ステップ7304)。bridge項目の値が“1”(True)の場合は図74に示すブリッジMIBサポート機器に対する処理を実行する(ステップ7305)。bridge項目の値が“0”(False)の場合は、TIテーブル1123の該当するエントリのrepeater項目の値が“1”(True)かどうかチェックする(ステップ7306)。
【0109】
repeater項目の値が“1”(True)の場合は図75に示すリピータMIBサポート機器に対する処理を実行する(ステップ7307)。bridge項目の値が“0”(False)の場合はTIテーブル1123の該当するエントリのMIB2項目の値が“1"(True)かどうかチェックする(ステップ7308)。MIB2項目の値が”1"(True)の場合は図76に示すインターフェースMIBサポート機器に対する処理を実行する(ステップ7309)。MIB2項目の値が“0”(False)の場合はステップ7303から処理を繰り返す。ステップ7305、ステップ7307、ステップ7309の任意のステップ終了後、ステップ7303から処理を繰り返す。
【0110】
図74は本実施形態のオートディスカバリモジュール1113がPFテーブル1124の作成時にブリッジMIBサポート機器に対して実行する処理を示すフローチャートである。
オートディスカバリモジュール1113はブリッジMIBサポート機器に対する処理要求を待ち(ステップ7401)、ブリッジMIBサポート機器に対する処理要求としてTIテーブル1123のIP Address項目の値を受信し、PFテーブル1124のSource IP Address項目に設定する(ステップ7402)と、IP Address項目の値をキーにATテーブル1122のIP Address項目を検索し、ヒットしたエントリのMac Address項目の値をPFテーブル1124のSource Mac Address項目に設定する(ステップ7403)。次に、IPアドレスで指定された機器に対して未探索フォワーディング情報があるかどうかチェック (SNMP Get-Nextメッセージ送受信がエラーになるまで処理を実行)し(ステップ7404)、未探索フォワーディング情報がない場合はステップ7401から処理を繰り返す。未探索フォワーディング情報がある場合はオブジェクト名としてdot1dTpFdbAddressを指定し、図64に示したフローでSNMP Get-Nextメッセージの送受信処理を実行し、返り値をPFテーブル1124のDestination Mac Address項目に設定する(ステップ7405)。
【0111】
同様に、オブジェクト名としてdot1dTpFdbPortを指定し、図64に示すフローでSNMP Get-Nextメッセージの送受信処理を実行し、返り値をPFテーブル1124のSource Port項目に設定する(ステップ7406)。次に、設定したDestination Mac Address項目の値をキーにATテーブル1122のMac Address項目を検索し、ヒットしたエントリのIP Address項目の値をPFテーブル1124のDestination IP Address項目に設定する(ステップ7407)。最後に、PFテーブル1124に新規エントリを追加し(ステップ7408)、ステップ7404から処理を繰り返す。
【0112】
図75は、本実施形態のオートディスカバリモジュール1113がPFテーブル1124の作成時にリピータMIBサポート機器に対して実行する処理を示すフローチャートである。
オートディスカバリモジュール1113は、リピータMIBサポート機器に対する処理要求を待ち(ステップ7501)、リピータMIBサポート機器に対する処理要求としてTIテーブル1123のIP Address項目の値を受信し、PFテーブル1124のSource IP Address項目に設定する(ステップ7502)と、IP Address項目の値をキーにATテーブル1122のIP Address項目を検索し、ヒットしたエントリのMac Address項目の値をPFテーブル1124のSource Mac Address項目に設定する(ステップ7503)。
次に、SNMP Get-Nextメッセージ送受信のアクセス回数にあらかじめ閾値を設定しておき、アクセス回数が閾値を超えているかどうかチェックし(ステップ7504)、アクセス回数が閾値を超えている場合は図77に示すフォワーディング情報予測処理を実行する(ステップ7509)。アクセス回数が閾値を超えない場合はrptrAddrTrackLastSourceAddrChangesを指定して図64に示したSNMP Get-Nextメッセージ送受信処理を実行する(ステップ7505)。
【0113】
ステップ7505の終了後、SNMP Get-Nextメッセージ送受信処理の返り値であるrptrAddrTrackLastSourceAddrChangesの値を記憶しておき、前回アクセス時と値の比較を行い、オブジェクトの値に変更があるかどうかチェックする(ステップ7506)。オブジェクトの値に変更がない場合は処理を一時停止(Sleep処理)し(ステップ7507)、アクセス回数が閾値を超えるまでステップ7504から処理を繰り返す。ステップ7506でオブジェクトの値に変更がある場合は、現在実行中のスレッドとは別のスレッドを作成し、作成したスレッド内で図76に示すフォワーディング情報学習処理を開始する(ステップ7508)。
ステップ7508、ステップ7509の任意のステップ終了後、ステップ7501から処理を繰り返す。フォワーディング情報学習処理は、リピータMIBの仕様がRFCに準拠した機器に対し、一定間隔でリピータMIBにアクセスして情報を収集する処理であり、フォワーディング情報予測処理はリピータMIBの仕様がRFCに準拠していない機器に対し、インタフェースMIBを利用してフォワーディング情報を検出する処理である。
【0114】
図76は、オートディスカバリモジュール1113がPFテーブル1124の作成時にフォワーディング情報を学習する処理を示すフローチャートである。
オートディスカバリモジュール1113は、フォワーディング情報学習処理要求を待ち(ステップ7601)、フォワーディング情報学習処理要求としてTIテーブル1123のIP Address項目の値を受信し、PFテーブル1124のSource IP Address項目に設定する(ステップ7602)と、IPアドレスで指定された機器の全ポートの探索が終了しているかどうかチェックする(ステップ7603)。全ポートの探索が終了している場合は、ステップ7601から処理を繰り返し、全ポートの探索が終了していない場合はrptrAddrTrackLastSourceAddressをキーに指定して図64に示したSNMP Get-Nextメッセージ送受信処理を実行し、SNMP Get-Nextメッセージ送受信処理の返り値をPFテーブル1124のDestination Mac Address項目に設定する(ステップ7604)。
【0115】
次に、設定したDestination Mac Address項目の値が既に検出済みであるかチェックし(ステップ7605)、検出済みである場合はステップ7603から処理を繰り返し、検出済みでない場合はrptrAddrTrackPortIndexをキーに指定して図64に示したSNMP Get-Nextメッセージ送受信処理を実行し、返り値をPFテーブル1124のSource Port項目に設定する(ステップ7606)。
【0116】
次に、設定したDestination Mac Address項目の値をキーにATテーブル1122のMac Address項目を検索し、ヒットしたエントリのIP Address項目の値をPFテーブル1124のDestination IP Address項目に設定する(ステップ7607)。最後に、PFテーブル1124に新規エントリを追加し(ステップ7608)、ステップ7603から処理を繰り返す。
【0117】
図77は、オートディスカバリモジュール1113がPFテーブル1124の作成時にフォワーディング情報を予測する処理を示すフローチャートである。オートディスカバリモジュール1113は、フォワーディング情報予測処理要求を待ち(ステップ7701)、フォワーディング情報予測処理要求としてTIテーブル1123のIP Address項目の値を受信し、PFテーブル1124のSourceIP Address項目に設定する(ステップ7702)と、IPアドレスで指定された機器の全ポートの探索が終了しているかどうかチェックする(ステップ7703)。全ポートの探索が終了している場合は、ステップ7701から処理を繰り返し、全ポートの探索が終了していない場合はrptrAddrTrackLastSourceAddressをキーに指定して図64に示したS NMP Get-Nextメッセージ送受信処理を実行し、SNMPGet-Nextメッセージ送受信処理の返り値をPFテーブル1124のDestinationMac Address項目に設定する(ステップ7704)。rptrAddrTrackPortIndexをキーに指定して図64に示したSNMP Get-Nextメッセージ送受信処理を実行し、返り値をPFテーブル1124のSource Port項目に設定する(ステップ7705)。
【0118】
次に、設定したDestination Mac Address項目の値をキーにATテーブルのMac Address項目を検索し、ヒットしたエントリのIP Address項目の値をPFテーブル1124のDestination IP Address項目に設定する(ステップ7706)。次に、PFテーブル1124に新規エントリを追加する(ステップ7707)。PFテーブル1124に1件のエントリを追加後、rptrAddrTrackLastSourceAddrChangesをキーに指定して図64に示したSNMP Get-Nextメッセージ送受信処理を実行し(ステップ7708)、SNMP Get-Nextメッセージ送受信処理の返り値であるrptrAddrTrackLastSourceAddrChangesの値が“1”より大きいかチェックする(ステップ7709)。
rptrAddrTrackLastSourceAddrChangesの値が“1”より大きい場合はPFテーブル1124に残りのエントリを追加するためにMIB2(interfaces MIB)サポート機器に対して実行する処理を実行し(ステップ7710)、rptrAddrTrackLastSourceAddrChangesの値が“1”以下の場合はステップ7703から処理を繰り返す。ステップ7710の終了後も同様にステップ7703から処理を繰り返す。
【0119】
図78は、オートディスカバリモジュール1113がPFテーブル1124の作成時にMIB2(interfaces MIB)サポート機器に対して実行する処理を示すフローチャートである。
オートディスカバリモジュール1113、はMIB2(interfaces MIB)サポート機器に対して実行する処理要求を待ち(ステップ7801)、MIB2サポート機器に対して実行する処理要求としてTIテーブル1123のIP Address項目の値を受信し、PFテーブル1124のSource IP Address項目に設定する(ステップ7802)と、図79に示す管理者端末の接続ポート検出処理を実行する(ステップ7803)。
次に、図80に示す管理者端末以外の機器の接続ポート検出処理を実行する(ステップ7804)。最後に、PFテーブル1124に新規エントリを追加し(ステップ7805)、ステップ7801から処理を繰り返す。
【0120】
図79は、オートディスカバリモジュール1113がPFテーブル1124の作成時に管理者端末71の接続ポートを検出する処理を示すフローチャートである。オートディスカバリモジュール1113は管理者端末71の接続ポートを検出処理要求を待ち(ステップ7901)、管理者端末71の接続ポートを検出処理要求としてネットワーク中継装置のIPアドレス値を受信する(ステップ7902)と、IPアドレスで指定されたネットワーク中継装置の全ポートの探索が終了しているかどうかチェックする(ステップ7903)。全ポートの探索が終了している場合は配列alive[ポート番号]の値が"0"(False)であるポート番号を返す(ステップ7906)。全ポートの探索が終了していない場合はifAdminStatusをキーに、値を"0"(False)と指定して図64に示したSNMP Set-Requestメッセージ送受信処理を実行し、SNMP管理プロトコルを利用して該当するポートを塞ぐ(ステップ7904)。IPアドレスで指定されたネットワーク中継装置を指定して図63に示したICMPエコーリクエストの送受信処理を実行し、返り値が"1"(True)の場合は、alive[ポート番号]変数に"1"を設定し、返り値が"0"(False)の場合はalive[ポート番号]変数に" 0 "を設定する(ステップ7905)。ただし、alive[ポート番号]の初期値は"0"(False)とする。ステップ7905の終了後、ステップ7903から処理を繰り返す。ステップ7906の終了後、ステップ7901から処理を繰り返す。管理者端末71が接続しているポート以外のポートを塞いだ場合は、管理者端末71からネットワーク中継装置へのICMPエコーリクエスト送受信処理が成功するが、管理者端末71が接続しているポート塞いだ場合は管理者端末71からネットワーク中継装置へのICMPエコーリクエスト送受信処理の応答が返らないことを利用している。
【0121】
図80は、オートディスカバリモジュール1113がPFテーブル1124の作成時に管理者端末以外の機器の接続ポートを検出する処理を示すフローチャートである。
オートディスカバリモジュール1113は、管理者端末71以外の機器の接続ポート検出処理要求を待ち(ステップ8001)、管理者端末71以外の機器の接続ポート検出処理要求としてネットワーク中継装置のIPアドレス値と管理者端末71が接続しているネットワーク中継装置上のポート番号を受信する(ステップ8002)と、TIテーブル1123の探索を開始し、未探索の機器があるかチェックする(ステップ8003)。未探索の機器がある場合には、TIテーブル1123のエントリのalive項目の値をpre_alive変数に設定し(ステップ8004)、未探索の機器がない場合にはステップ8001から処理を繰り返す。
【0122】
ステップ8004の終了後、IPアドレスで指定されたネットワーク中継装置の全ポートの探索が終了しているかどうかチェックする(ステップ8005)。全ポートの探索が終了している場合はpre_alive変数が“1”(True)でかつalive[ポート番号]が“0”(False)となるポート番号が存在するかチェックする(ステップ8008)。全ポートの探索が終了していない場合はifAdminStatusをキーに、値を“0”(False)と指定して図64に示したSNMP Set-Requestメッセージ送受信処理を実行し、SNMP管理プロトコルを利用して該当するポートを塞ぎ(ステップ8006)、IPアドレスで指定されたネットワーク中継装置を指定して図63に示したICMPエコーリクエストの送受信処理を実行し、返り値が“1”(True)の場合はalive[ポート番号]変数に“1”を設定し、返り値が“0”(False)の場合はalive[ポート番号]変数に“0”を設定する(ステップ8007)。ただしalive[ポート番号]の初期値は“0”(False)とする。
【0123】
ステップ8007の終了後、ステップ8005から処理を繰り返す。ステップ8008の終了後、条件を満たすポートが見つからない場合は、管理者端末71の接続ポート番号を返し(ステップ8009)、条件を満たすポートが見つかった場合はalive[ポート番号]変数が“0”(False)となるポート番号を返す(ステップ8010)。ステップ8009、ステップ8010の任意のステップ終了後、ステップ8001から処理を繰り返す。
ネットワーク中継装置の特定のポートを塞ぐことで、任意の機器へのICMPエコーリクエストの応答が受信できなくなる場合、該当するポートが接続ポートとなる。
【0124】
図81は、オートディスカバリモジュール1113がTSテーブル1125を作成する処理を示すフローチャートである。
オートディスカバリモジュール1113はPFテーブル1124の作成要求を待ち(ステップ8101)、PFテーブル1124の作成要求を受信すると(ステップ8102)、図82に示すRoot装置決定処理を実行し、Root装置のIPアドレスをRoot変数に設定し、Unitsリスト変数の全項目を削除して初期化する(ステップ8103)。
次に、図83に示すネットワーク中継装置間の接続の決定処理を実行する(ステップ8104)。次に、図114に示すネットワーク中継装置と端末装置の接続の決定処理を実行する(ステップ8105)。最後に、図115に示すインタフェースMIB評価処理を実行し(ステップ8106)、ステップ8101から処理を繰り返す。
【0125】
図82は、オートディスカバリモジュール1113がTSテーブル1125の作成時にRoot装置を決定する処理を示すフローチャートである。
オートディスカバリモジュール1113はRoot装置決定処理要求を待ち(ステップ8201)、Root装置決定処理要求を受信すると(ステップ8202)、TIテーブル1123の探索を開始し、未探索の機器があるかチェックする(ステップ8203)。未探索の機器がない場合には、ステップ8201から処理を繰り返す。未探索の機器がある場合には、TIテーブル1123の該当するエントリのtype項目の値がR(Routerを示す識別子)かチェックし(ステップ8204)、type項目の値がR以外の場合にはステップ8203から処理を繰り返す。type項目の値がRの場合にはRoot変数にルータのIPアドレスを追加する(ステップ8205)。最後に、図103示すTSテーブル1125に対するRootエントリ追加処理を実行する(ステップ8206)。ステップ8206の終了後、ステップ8201から処理を繰り返す。
【0126】
図83は、オートディスカバリモジュール1113がTSテーブル1125の作成時にネットワーク中継装置間の接続を決定する処理を示すフローチャートである。
オートディスカバリモジュール1113はネットワーク中継装置間の接続を決定処理要求を待ち(ステップ8301)、ネットワーク中継装置間の接続の決定処理要求を受信すると(ステップ8302)、Unitsリスト変数にPFテーブル1124の全エントリのSource IP Address項目の値の内で、Root変数と同一のものを除くすべての値を追加する(ステップ8303)。
次に、Unitsリスト変数の要素の中から任意の2つの要素の組合せの集合を選択し、未探索の組合せ(Unit1変数、Unit2変数に設定)があるかチェックする(ステップ8304)。未探索の組合せがある場合は図84に示す接続モデルの決定処理を実行し(ステップ8305)、図102に示すTSテーブル1125に対するエントリの追加処理を実行(ステップ8306)した後でステップ8304から処理を繰り返す。接続モデルの決定処理では図22〜図45に示した形式でUnit1とUnit2に関する接続モデルを決定する。TSテーブル1125に対するエントリの追加処理では、決定した接続モデルごと決まったフォーマットでTSテーブル1125にエントリを格納している。
ステップ8304で未探索の組合せがない場合は図107に示す親子関係の決定処理を実行し(ステップ8307)、ステップ8301から処理を繰り返す。親子関係の決定処理では、TSテーブル1125に親子関係がある機器同士のエントリだけを抽出し、TSテーブル1123の最終形を決定する。
【0127】
図84はオートディスカバリモジュール1113によるTSテーブル1125の作成時の接続モデルの決定処理を示すフローチャートである。
オートディスカバリモジュール1113は接続モデルの決定処理要求を待ち(ステップ8401)、接続モデルの決定処理要求を受信すると(ステップ8402)、図85に示す方法でIPアドレスがUnit1変数に等しい機器に関するネットワーク機器の分類処理を実行する(ステップ8403)。同様にして、図85に示す方法でIPアドレスがUnit2変数に等しい機器に関するネットワーク機器の分類処理を実行する(ステップ8404)。ネットワーク機器の分類処理では図21に示した分類を決定する。最後に接続検出条件チェック処理を実行(ステップ8405)後、ステップ8401から処理を繰り返す。接続検出条件チェック処理では図46に示した接続検出条件のチェックを実行する。
【0128】
図85は、オートディスカバリモジュール1113によるTSテーブル1125の作成時のネットワーク機器の分類処理を示すフローチャートである。
オートディスカバリモジュール1113はネットワーク機器の分類処理要求を待ち(ステップ8501)、ネットワーク機器の分類処理要求を受信すると(ステップ8502)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がUnit1もしくは Unit2に等しく、Destination IP Address項目の値がRoot変数値に等しいエントリを検索する(ステップ8503)。
検索したエントリが存在するかチェックする(ステップ8504)。ステップ8504で検索したエントリが存在する場合、Unitsリスト変数に含まれるすべてネットワーク中継装置のエントリを順番にTarget変数に設定し、Target変数が未検索のものであるかどうかチェックする(ステップ8505)。
【0129】
ステップ8504で検索したエントリが存在しない場合は、ステップ8503でSource IP Address項目の値がUnit1に等しい場合はCategory1変数にSFを設定し、ステップ8503でSource IP Address項目の値がUnit2に等しい場合はCategory2変数にSFを設定する。ステップ8505でTarget変数が未検索の場合はPFテーブル1124のすべてのエントリの中からSource IP Address項目の値がUnit1もしくはUnit2でDestination IP Address項目の値がTarget変数に等しいエントリを検索する(ステップ8506)。ステップ8505で未検索のTarget変数が存在しない場合はステップ8501から繰り返す。次に、ステップ8506の検索項目があるかチェックする(ステップ8507)。ステップ8507の検索項目がある場合は、ステップ8503でSource IP Address項目の値がUnit1に等しい場合はCategory1変数にCFを設定し、ステップ8503でSource IP Address項目の値がUnit2に等しい場合はCategory2変数にCFを設定する。ステップ8507の検索項目がない場合は、ステップ8503でSource IP Address項目の値がUnit1に等しい場合はCategory1変数にI Fを設定し、ステップ8503でSource IP Address項目の値がUnit2に等しい場合はCategory2変数にI Fを設定する(ステップ8509)。Unitsリスト変数に含まれるすべての機器への接続情報がある場合はCFが設定され、1台でも接続情報が含まれていない場合はIFが設定される。
【0130】
図86はオートディスカバリモジュール1113によるTSテーブル1125の作成時の接続検出条件のチェック処理を示すフローチャートである。
オートディスカバリモジュール1113は接続検出条件のチェック処理要求を待ち(ステップ8601)、接続検出条件のチェック処理要求として、2台のネットワーク機器のIPアドレスを格納したUnit1変数、Unit2変数と2台のネットワーク機器の分類を格納したCategory1変数、Category2変数を受信すると(ステップ8602)、Category1変数がCFに等しく、Category2変数がCFに等しいかチェックする(ステップ8603)。
ステップ8603でCategory1変数がCFに等しく、Category2変数がCFに等しい場合は、図87に示す集合(R, CF, CF)の接続検出条件チェック処理を実行し(ステップ8604)、ステップ8601から繰り返す。
ステップ8602でCategory1変数がCFに等しく、Category2変数がCFに等しいという条件を満たしていない場合は、Category1変数がCFに等しく、Category2変数がIFに等しい、もしくはCategory1変数がIFに等しく、Category2変数がCFに等しいかチェックする(ステップ8605)。ステップ8605でCategory1変数がCFに等しく、Category2変数がIFに等しい、もしくはCategory1変数がIFに等しく、Category2変数がCFに等しい場合は、図88に示す集合(R, CF, IF)の接続検出条件チェック処理を実行し(ステップ8606)、ステップ8601から繰り返す。
【0131】
ステップ8605でCategory1変数がCFに等しく、Category2変数がIFに等しい、もしくはCategory1変数がIFに等しく、Category2変数がCFに等しいという条件を満たしていない場合は、Category1変数がCFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がCFに等しいかチェックする(ステップ8607)。ステップ8607でCategory1変数がCFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がCFに等しい場合は、図91に示す集合(R, CF, SF)の接続検出条件チェック処理を実行し(ステップ8608)、ステップ8601から繰り返す。
ステップ8607でCategory1変数がCFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がCFに等しいという条件を満たしていない場合は、Category1変数がIFに等しく、Category2変数がIFに等しいかチェックする(ステップ8609)。ステップ8609でCategory1変数がIFに等しく、Category2変数がIFに等しい場合は、図94に示す集合(R, IF, IF)の接続検出条件チェック処理を実行し(ステップ8610)、ステップ8601から繰り返す。ステップ8609でCategory1変数がIFに等しく、Category2変数がIFに等しいという条件を満たしていない場合は、Category1変数がIFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がIFに等しいかチェックする(ステップ8611)。
【0132】
ステップ8611でCategory1変数がIFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がIFに等しい場合は、図96に示す集合(R, IF, SF)の接続検出条件チェック処理を実行し(ステップ8612)、ステップ8601から繰り返す。
ステップ8611でCategory1変数がIFに等しく、Category2変数がSFに等しい、もしくはCategory1変数がSFに等しく、Category2変数がIFに等しいという条件を満たしていない場合は、Category1変数がSFに等しく、Category2変数がSFに等しいかチェックする(ステップ8613)。ステップ8613でCategory1変数がSFに等しく、Category2変数がSFに等しい場合は、図101に示す集合(R, SF, SF)の接続検出条件チェック処理を実行し(ステップ8614)、ステップ8601から繰り返す。ステップ8613でCategory1変数がSFに等しく、Category2変数がSFに等しいという条件を満たしていない場合は、ステップ8601から繰り返す。
【0133】
図87は、オートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, CF, CF)の接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113は集合(R, CF, CF)の接続条件チェック処理要求を待ち(ステップ8701)、集合(R, CF, CF)の接続条件チェック処理要求を受信すると(ステップ8702)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF1変数(Unit1変数と等しい)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をCF1R変数に設定する(ステップ8703)。
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF2変数(Unit2変数と等しい)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をCF2R変数に設定する(ステップ8704)。
また、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF1変数(Unit1変数と等しい)でDestination IP Address項目の値がCF2変数(Unit2変数と等しい)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCF1CF2変数に設定する(ステップ8705)。
【0134】
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF2変数(Unit2変数と等しい)でDestination IP Address項目の値がCF1変数(Unit1変数と等しい)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCF2CF1変数に設定する(ステップ8706)。CF1R変数の値とCF1CF2の値を比較し(ステップ8707)、CF1から見て、RとCF2が別ポートに接続しているかチェックする(CF2R変数とCF2CF1変数を比較することも可能)。
ステップ8707でCF1R変数の値とCF1CF2の値が等しい場合は、Paddr変数にCF2変数の値、Caddr変数にCF1変数の値、Pport変数にCF2CF1変数の値、Cport変数にCF1CF2変数の値、Model変数にR-CF-CFを設定し(ステップ8708)、ステップ8701から繰り返す。
ステップ8707でCF1R変数の値とCF1CF2の値が等しくない場合は、Paddr変数にCF1変数の値、Caddr変数にCF2変数の値、Pport変数にCF1CF2変数の値、Cport変数にCF2CF1変数の値、Model変数にR-CF-CFを設定し(ステップ8709)、ステップ8701から繰り返す。図46のR-CF-CFモデルでは接続検出条件がないことから、図87は図22に示した方法で接続関係を検出する。
【0135】
図88はオートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, CF, IF)の接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113は集合(R, CF, IF)の接続条件チェック処理要求を待ち(ステップ8801)、集合(R, CF, IF)の接続条件チェック処理要求を受信すると(ステップ8802)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFR変数に設定する(ステップ8803)。
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でDestination IP Address項目の値がIF変数(Unit1変数とUnit2変数の内でIFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFIF変数に設定する(ステップ8804)。CFR変数の値とCFIF値を比較し(ステップ8805)、CFから見て、RとIFが別ポートに接続しているかチェックする。ステップ8805でCFR変数の値とCFIFの値が等しい場合は、Paddr変数にIF変数の値、Caddr変数にCF変数の値、Model変数にR-IF-CFを設定し、図89に示すR-IF-CFモデルの接続検出条件チェック処理を実行し(ステップ8806)、ステップ8801から繰り返す。
ステップ8805でCFR変数の値とCFIFの値が等しくない場合は、Paddr変数にCF変数の値、Caddr変数にIF変数の値、Model変数にR-CF-IFを設定し、図90に示すR-CF-IFモデルの接続検出条件チェック処理を実行し(ステップ8807)、ステップ8801から繰り返す。
【0136】
図89はオートディスカバリモジュール1113によるTSテーブル1125の作成時のR-IF-CFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-IF-CFモデルの接続条件チェック処理要求を待ち(ステップ8901)、R-IF-CFモデルの接続条件チェック処理要求を受信すると(ステップ8902)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内で、図88でCFと認識された機器)でDestination IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図88でIFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFIF変数に設定する(ステップ8903)。
【0137】
同様にして、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でSource Port項目の値がCFIF変数と異なるエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget変数に設定する(ステップ8904)。ステップ8904のTarget変数を順番にすべて取得し、Target変数の値がNULL値に等しくないかチェックする(ステップ8905)。
ステップ8905でTarget変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図88でIFと認識された機器)でDestination IP Address項目の値がTarget変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIFT変数に設定する(ステップ8906)。
ステップ8905でTarget変数がNULL値に等しい場合は、Pport変数にNULL値、Cport変数にNULL値を設定し(ステップ8909)、ステップ8901から繰り返す。
【0138】
ステップ8906で該当するエントリが存在し、IFT変数の値がNULLに等しくないかチェックし(ステップ8907)、ステップ8907でIFT変数の値がNULLに等しくない場合は、Pport変数にIFT変数の値、Cport変数にCFIF変数の値を設定し(ステップ8908)、ステップ8901から繰り返す。
ステップ8907でIFT変数の値がNULLに等しい場合は、ステップ8904から繰り返す。図46および図47のR-IF-CFモデルで示した接続検出条件に基づいて、図89のフローでは図28に示した方法で接続関係を検出する。
【0139】
図90はオートディスカバリモジュール1113によるTSテーブル1125の作成時のR-CF-IFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-CF-IFモデルの接続条件チェック処理要求を待ち(ステップ9001)、R-CF-IFモデルの接続条件チェック処理要求を受信すると(ステップ9002)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内で、図88でCFと認識された機器)でDestination IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図88でIFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFIF変数に設定する(ステップ9003)。
【0140】
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内でIFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIFR変数に設定する(ステップ9004)。
最後に、Pport変数にCFIF変数の値、Cport変数にIFR変数の値を設定し(ステップ9005)、ステップ9001から繰り返す。図46及び図47のR-CF-IFモデルでは接続検出条件がないことから、図90のフローでは図24に示した方法で接続関係を検出する。
【0141】
図91はオートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, CF, SF)の接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113は集合(R, CF, SF)の接続条件チェック処理要求を待ち(ステップ9101)、集合(R, CF, SF)の接続条件チェック処理要求を受信すると(ステップ9102)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFR変数に設定する(ステップ9103)。
【0142】
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でDestination IP Address項目の値がSF変数(Unit1変数とUnit2変数の内でSFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFSF変数に設定する(ステップ9104)。CFR変数の値とCFSF値を比較し(ステップ9105)、CFから見て、RとSFが別ポートに接続しているかチェックする。
ステップ9105でCFR変数の値とCFSFの値が等しい場合は、Paddr変数にSF変数の値、Caddr変数にCF変数の値、Model変数にR-SF-CFを設定し、図92に示すR-SF-CFモデルの接続検出条件チェック処理を実行し(ステップ9106)、ステップ9101から繰り返す。
ステップ9105でCFR変数の値とCFSFの値が等しくない場合は、Paddr変数にCF変数の値、Caddr変数にSF変数の値、Model変数にR-CF-SFを設定し、図93に示すR-CF-SFモデルの接続検出条件チェック処理を実行し(ステップ9107)、ステップ9101から繰り返す。
【0143】
図92はオートディスカバリモジュール1113によるTSテーブル1125の作成時のR-SF-CFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-SF-CFモデルの接続条件チェック処理要求を待ち(ステップ9201)、R-SF-CFモデルの接続条件チェック処理要求を受信すると(ステップ9202)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内で、図91でCFと認識された機器)でDestination IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図91でSFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFSF変数に設定する(ステップ9203)。
【0144】
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でSource Port項目の値がCFSF変数と異なるエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget変数に設定する(ステップ9204)。
ステップ9204のTarget変数を順番にすべて取得し、Target変数の値がNULL値に等しくないかチェックする(ステップ9205)。ステップ9205でTarget変数がNULL値に等しくない場合は、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図91でSFと認識された機器)でDestination IP Address項目の値がTarget変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT変数に設定する(ステップ9206)。
【0145】
ステップ9205でTarget変数がNULL値に等しい場合は、Pport変数にNULL値、Cport変数にNULL値を設定し(ステップ9209)、ステップ9201から繰り返す。ステップ9206で該当するエントリが存在し、SFT変数の値がNULLに等しくないかチェックし(ステップ9207)、ステップ9207でSFT変数の値がNULLに等しくない場合は、Pport変数にSFT変数の値、Cport変数にCFSF変数の値を設定し(ステップ9208)、ステップ9201から繰り返す。
ステップ9207でSFT変数の値がNULLに等しい場合は、ステップ9204から繰り返す。図46及び図47のR-SF-CFモデルで示した接続検出条件に基づいて、図92では図34に示した方法で接続関係を検出する。
【0146】
図93はオートディスカバリモジュール1113によるTSテーブル1125の作成時のR-CF-SFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-CF-SFモデルの接続条件チェック処理要求を待ち(ステップ9301)、R-CF-SFモデルの接続条件チェック処理要求を受信すると(ステップ9302)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内で、図91でCFと認識された機器)でDestination IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図91でSFと認識された機器)に等しいエントリを検索し、該当するエントリのSource Port項目の値をCFSF変数に設定する(ステップ9303)。
【0147】
同様にして、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がCF変数(Unit1変数とUnit2変数の内でCFと認識された機器)でSource Port項目の値がCFSF変数と異なるエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget変数に設定する(ステップ9304)。
ステップ9304のTarget変数を順番にすべて取得し、Target変数の値がNULL値に等しくないかチェックする(ステップ9305)。ステップ9305でTarget変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図91でSFと認識された機器)でDestination IP Address項目の値がTarget変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT変数に設定する(ステップ9306)。
【0148】
ステップ9305でTarget変数がNULL値に等しい場合は、Pport変数にNULL値、Cport変数にNULL値を設定し(ステップ9309)、ステップ9301から繰り返す。ステップ9306で該当するエントリが存在し、SFT変数の値がNULLに等しくないかチェックし(ステップ9307)、ステップ9307でSFT変数の値がNULLに等しくない場合は、Pport変数にCFSF変数の値、Cport変数にSFT変数の値を設定し(ステップ9308)、ステップ9301から繰り返す。
ステップ9307でSFT変数の値がNULLに等しい場合は、ステップ9304から繰り返す。図46及び図47のR-CF-SFモデルで示した接続検出条件に基づいて、図93では図26に示した方法で接続関係を検出する。
【0149】
図94はオートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, IF, IF)の接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113は集合(R, IF, IF)の接続条件チェック処理要求を待ち(ステップ9401)、集合(R, IF, IF)の接続条件チェック処理要求を受信すると(ステップ9402)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF1変数(Unit1変数もしくはUnit2変数のどちらか一方の機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIF1R変数に設定する(ステップ9403)。
【0150】
同様にして、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がIF2変数(Unit1変数もしくはUnit2変数の内でIF1とは異なる機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIF2R変数に設定する(ステップ9404)。
次に、図95に示すR-IF-IFモデルの接続検出条件チェック処理を実行し(ステップ9405)、接続ポートを決定する(IF1IF2(IF2IF1))。
IF1IF2変数の値がNULLに等しくない条件とIF2IF1変数の値がNULLに等しくない条件を同時に満たすかどうかをチェックし(ステップ9406)、IF1とIF2の接続ポートが発見できたかチェックする。ステップ9406でIF1IF2変数の値がNULLに等しくなく、かつIF2IF1変数の値がNULLに等しくない場合は、Paddr変数にIF1変数の値、Caddr変数にIF2変数の値、Pport変数にIF1IF2の値、Cport変数にIF2R(IF2IF1)の値、Model変数にR-IF-IFを設定し(ステップ9407)、ステップ9401から繰り返す。
【0151】
ステップ9406でIF1IF2変数の値がNULLに等しい、またはIF2IF1変数の値がNULLに等しい場合は、IF1R変数の値とIF2R変数の値、IF1変数の値とIF2変数の値を入れ替えて、図95に示すR-IF-IFモデルの接続検出条件チェック処理を実行し(ステップ9408)、接続ポートを決定する(IF1IF2(IF2IF1))。IF1IF2変数の値がNULLに等しくない条件とIF2IF1変数の値がNULLに等しくない条件を同時に満たすかどうかをチェックし(ステップ9409、IF1とIF2の接続ポートが発見できたかチェックする。ステップ9409でIF1IF2変数の値がNULLに等しくなく、かつIF2IF1変数の値がNULLに等しくない場合は、Paddr変数にIF1変数の値、Caddr変数にIF2変数の値、Pport変数にIF1IF2の値、Cport変数にIF2R(IF2IF1)の値、Model変数にR-IF-IFを設定し(ステップ9410)、ステップ9401から繰り返す。ただし、ステップ9410で設定するIF1変数とIF2変数の値はステップ9407で設定するIF1変数とIF2変数とは入れ替えた値である。ステップ9409でIF1IF2変数の値がNULLに等しい、またはIF2IF1変数の値がNULLに等しい場合はステップ9401から繰り返す。
【0152】
図95はオートディスカバリモジュール1113によるTSテーブル1125の作成時のR-IF-IFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-IF-IFモデルの接続条件チェック処理要求を待ち(ステップ9501)、R-IF-IFモデルの接続条件チェック処理要求を受信すると(ステップ9502)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF1変数(Unit1変数とUnit2変数の内で、図94でIF1と認識された機器)でSource Port項目の値がIF1R変数(図94のIF1からRootへの接続ポート)に等しくないエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget1変数に設定する(ステップ9503)。
ステップ9503のTarget1変数を順番にすべて取得し、Target1変数の値がNULL値に等しくないかチェックする(ステップ9504)。ステップ9504でTarget1変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF2変数(Unit1変数とUnit2変数の内で、図94でIF2と認識された機器)でDestination IP Address項目の値がTarget1変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIF2T1変数に設定する(ステップ9505)。
【0153】
ステップ9504でTarget1変数がNULL値に等しい場合は、IF1IF2変数にNULL値、IF2IF1変数にNULL値を設定し(ステップ9512)、ステップ9501から繰り返す。
【0154】
ステップ9505で該当するエントリが存在し、IF2T1変数の値がNULLに等しくない条件とIF2T1変数の値がIF2R変数の値に等しい条件を同時に満たすかどうかをチェックし(ステップ9506)、ステップ9506でIF2T1変数の値がNULLに等しくなく、かつIF2T1変数の値がIF2R変数の値に等しい場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF2変数(Unit1変数とUnit2変数の内で、図94でIF2と認識された機器)でSource Port項目の値がIF2R変数(図94のIF2からRootへの接続ポート)に等しくないエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget2変数に設定する(ステップ9507)。
ステップ9506でIF2T1変数の値がNULLに等しい、またはIF2T1変数の値がIF2R変数の値に等しくない場合は、ステップ9503から繰り返す。ステップ9507のTarget2変数を順番にすべて取得し、Target2変数の値がNULL値に等しくないかチェックする(ステップ9508)。
【0155】
ステップ9508でTarget2変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF1変数(Unit1変数とUnit2変数の内で、図94でIF1と認識された機器)でDestination IP Address項目の値がTarget2変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIF1T2変数に設定する(ステップ9509)。
ステップ9508でTarget2変数がNULL値に等しい場合は、ステップ9503から繰り返す。ステップ9509で該当するエントリが存在し、IF1T2変数の値がNULLに等しくない条件とIF1T2変数の値がIF1R変数の値に等しくない条件を同時に満たすかどうかをチェックし(ステップ9510)、ステップ9510でIF1T2変数の値がNULLに等しくなく、かつIF1T2変数の値がIF1R変数の値に等しくない場合は、IF1IF2変数にIF1T2変数の値、IF2IF1変数にIF2T1変数の値を設定し(ステップ9511)、ステップ9501から繰り返す。ステップ9510でIF1T2変数の値がNULLに等しい、またはIF1T2変数の値がIF2R変数の値に等しい場合は、ステップ9507から繰り返す。
図46及び図47のR-IF-IFモデルで示した接続検出条件に基づいて、図95では図30に示した方法で接続関係を検出する。
【0156】
図96はオートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, IF, SF)の接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113は集合(R, IF, SF)の接続条件チェック処理要求を待ち(ステップ9601)、集合(R, IF, SF)の接続条件チェック処理要求を受信すると(ステップ9602)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内でIFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIFR変数に設定する(ステップ9603)。
【0157】
図97に示すR-SF-IFモデルの接続検出条件チェック処理を実行し(ステップ9604)、ステップ9604で設定されるPaddr変数の値がNULL値に等しいかチェックする(ステップ9605)。ステップ9605でPaddr変数の値がNULL値に等しい場合は、図99に示すR-IF-SFモデルの接続検出条件チェック処理を実行し(ステップ9606)、ステップ9601から繰り返す。ステップ9605でPaddr変数の値がNULL値に等しくない場合は、ステップ9601から繰り返す。
【0158】
図97及び図98は、オートディスカバリモジュール1113によるTSテーブル1125の作成時のR-SF-IFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-SF-IFモデルの接続条件チェック処理要求を待ち(ステップ9701)、R-SF-IFモデルの接続条件チェック処理要求を受信すると(ステップ9702)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIFR変数に設定する(ステップ9703)。
【0159】
同様にして、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でSource Port項目の値がIFR変数に等しいエントリを2つ検索し、該当するエントリのDestination IP Address項目の値をそれぞれTarget1変数、Target2変数、Source Port項目の値をIFT1変数、IFT2変数に設定する(ステップ9704)。
【0160】
ステップ9704のTarget1変数とTarget2変数の組合わせを順番にすべて取得し、Target1変数の値がNULL値に等しくなく、かつTarget2変数の値がNULL値に等しくないかチェックする(ステップ9705)。ステップ9705の条件を満たす場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget1変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT1変数に設定する。
同様に、PFテーブル1124におけるすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget2変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT2変数に設定する(ステップ9706)。
ステップ9705の条件を満たさない場合は、Paddr変数にNULL値、Caddr変数にNULL値、Pport変数にNULL値、Cport変数にNULL値、Model変数にR-SF-IFを設定し(ステップ9713)、ステップ9701から繰り返す。
【0161】
ステップ9706で該当するエントリが存在し、SFT1変数の値がNULLに等しくなく、かつSFT2変数の値がNULLに等しくなく、かつSFT1変数の値がSFT2変数の値に等しくないかチェックし(ステップ9707)、ステップ9707の条件を満たす場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でSource Port項目の値がIFR変数(図96のIFからRootへの接続ポート)に等しくなく、かつIFT1変数に等しくなく、IFT2変数に等しくないエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget3変数、Source Port項目の値をIFT3に設定する(ステップ9708)。
【0162】
ステップ9707の条件を満たさない場合は、ステップ9704から繰り返す。
ステップ9708のTarget3変数を順番にすべて取得し、Target3変数の値がNULL値に等しくないかチェックする(ステップ9709)。ステップ9709でTarget3変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget3変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT3変数に設定する(ステップ9710)。
【0163】
ステップ9709でTarget3変数がNULL値に等しい場合は、ステップ9704から繰り返す。ステップ9710で該当するエントリが存在するかチェックし(ステップ9711)、ステップ9711の条件を満たす場合は、Paddr変数にSF変数の値、Caddr変数にIF変数の値、Pport変数にSFT3変数の値、Cport変数にIFR変数の値(IFT1変数の値、IFT2変数の値)、Model = R-SF-IFを設定し(ステップ9712)、ステップ9701から繰り返す。
ステップ9711の条件を満たさない場合は、ステップ9708から繰り返す。図46及び図47のR-SF-IFモデルで示した接続検出条件に基づいて、図97及び図98では図36に示した方法で接続関係を検出する。
【0164】
図99及び図100は、オートディスカバリモジュール1113によるTSテーブル1125の作成時のR-IF-SFモデルの接続条件チェック処理を示すフローチャートである。
オートディスカバリモジュール1113はR-IF-SFモデルの接続条件チェック処理要求を待ち(ステップ9901)、R-IF-SFモデルの接続条件チェック処理要求を受信すると(ステップ9902)、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でDestination IP Address項目の値がRoot変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をIFR変数に設定する(ステップ9903)。
【0165】
同様にして、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でSource Port項目の値がIFR変数に等しくないエントリを2つ検索し、該当するエントリのDestination IP Address項目の値をそれぞれTarget1変数、Target2変数、Source Port項目の値をIFT1変数、IFT2変数に設定する(ステップ9904)。
【0166】
ステップ9904のTarget1変数とTarget2変数の組合わせを順番にすべて取得し、Target1変数の値がNULL値に等しくなく、かつTarget2変数の値がNULL値に等しくないかチェックする(ステップ9905)。
ステップ9905の条件を満たす場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget1変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT1変数に設定する。
【0167】
同様に、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget2変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT2変数に設定する(ステップ9906)。
【0168】
ステップ9905の条件を満たさない場合は、Paddr変数にNULL値、Caddr変数にNULL値、Pport変数にNULL値、Cport変数にNULL値、Model変数にR-IF-SFを設定し(ステップ9913)、ステップ9901から繰り返す。
ステップ9906で該当するエントリが存在し、SFT1変数の値がNULLに等しくなく、かつSFT2変数の値がNULLに等しくなく、かつSFT1変数の値がSFT2変数の値に等しいかチェックし(ステップ9907)、ステップ9907の条件を満たす場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がIF変数(Unit1変数とUnit2変数の内で、図96でIFと認識された機器)でSource Port項目の値がIFR変数(図96のIFからRootへの接続ポート)に等しくなく、かつIFT1変数に等しくなく、IFT2変数に等しくないエントリを検索し、該当するエントリのDestination IP Address項目の値をTarget3変数、Source Port項目の値をIFT3に設定する(ステップ9908)。ステップ9907の条件を満たさない場合は、ステップ9804から繰り返す。
【0169】
ステップ9908のTarget3変数を順番にすべて取得し、Target3変数の値がNULL値に等しくないかチェックする(ステップ9909)。ステップ9909でTarget3変数がNULL値に等しくない場合は、PFテーブル1124のすべてのエントリの中からSource IP Address項目の値がSF変数(Unit1変数とUnit2変数の内で、図96でSFと認識された機器)でDestination IP Address項目の値がTarget3変数に等しいエントリを検索し、該当するエントリのSource Port項目の値をSFT3変数に設定する(ステップ9910)。ステップ9909でTarget3変数がNULL値に等しい場合は、ステップ9904から繰り返す。
【0170】
ステップ9910で該当するエントリが存在し、SFT3変数の値がNULLに等しくなく、かつSFT3変数の値がSFT1変数の値に等しくなく、かつSFT3変数の値がSFT2変数の値に等しくないかチェックし(ステップ9911)、ステップ9911の条件を満たす場合は、Paddr変数にIF変数の値、Caddr変数にSF変数の値、Pport変数にIFT1変数の値(IFT1変数の値、IFT2変数の値)、Cport変数にSFT3変数の値、Model = R-IF-SFを設定し(ステップ9912)、ステップ9901から繰り返す。
ステップ9911の条件を満たさない場合は、ステップ9908から繰り返す。図46及び図47のR-IF-SFモデルで示した接続検出条件に基づいて、図99及び図100では図32に示した方法で接続関係を検出する。
【0171】
図101は、オートディスカバリモジュール1113によるTSテーブル1125の作成時の集合(R, SF, SF)の接続条件チェック処理を示すフローチャートである。オートディスカバリモジュール1113は集合(R, SF, SF)の接続条件チェック処理要求を待ち(ステップ10101)、集合(R, SF, SF)の接続条件チェック処理要求を受信すると(ステップ10102)、Paddr変数にNULL値、Caddr変数にNULL値、Pport変数にNULL値、Cport変数にNULL値、Model = R-SF-SFを設定し(ステップ11003)、ステップ10101から繰り返す。図46及び図47のR-SF-SFモデルで任意の条件で接続検出が不可能であるため、図101では図38に示したように接続関係の検出を中止する。
【0172】
図102はオートディスカバリモジュール1113によるTSテーブル1125の作成時のTSテーブルに対するエントリ追加処理を示すフローチャートである。
オートディスカバリモジュール1113はTSテーブル1125に対するエントリ追加処理要求を待ち(ステップ10201)、TSテーブルに対するエントリ追加処理要求を受信すると(ステップ10202)、Paddr変数がNULL値に等しく、かつCaddr変数がNULL値に等しく、かつPport変数がNULL値に等しく、かつCport変数がNULL値に等しいかチェックし(ステップ10203)、ステップ10203の条件を満たす場合は、図104に示す親子関係と接続関係が不明なネットワーク中継装置のエントリ追加処理を実行し(ステップ10204)、ステップ10201から繰り返す。
【0173】
ステップ10203の条件を満たさない場合は、Model変数がR-SF-CFに等しい、もしくはR-SF-IFに等しいかチェックし(ステップ10205)、ステップ10205の条件を満たす場合は図105に示す親子関係だけが不明なネットワーク中継装置のエントリ追加処理を実行し(ステップ10206)、ステップ10201から繰り返す。
ステップ10205の条件を満たさない場合は、図106に示す親子関係と接続関係が自明なネットワーク中継装置のエントリ追加処理を実行し(ステップ10207)、ステップ10201から繰り返す。
【0174】
図103はオートディスカバリモジュール1113によるTSテーブル1125の作成時のTSテーブル1125に対するRootエントリ追加処理を示すフローチャートである。
オートディスカバリモジュール1113はTSテーブル1125に対するRootエントリ追加処理要求を待ち(ステップ10301)、TSテーブル1125に対するRootエントリ追加処理要求を受信すると(ステップ10302)、ATテーブル1122を利用してRoot変数のIPアドレスからMacアドレスを解決し、Rphysaddr変数に設定する(ステップ10303)。最後に、TSテーブル1125に、Terminal IP Address項目がRoot変数の値、Terminal Mac Address項目がRphysaddr変数の値、Terminal Port項目がNULL値、ParenTIP Address項目がNULL値、Parent Mac Address項目がNULL値、Parent Port項目がNULL値のエントリを追加し(ステップ10304)、ステップ10301から繰り返す。
【0175】
図104はオートディスカバリモジュール1113によるTSテーブル1125の作成時の親子関係と接続関係が不明なネットワーク中継装置のエントリ追加処理を示すフローチャートである。
オートディスカバリモジュール1113は親子関係と接続関係が不明なネットワーク中継装置のエントリ追加処理要求を待ち(ステップ10401)、親子関係と接続関係が不明なネットワーク中継装置のエントリ追加処理要求を受信すると(ステップ10402)、ATテーブル1122を利用してUnit1変数とUnit2変数(図83(図102)のUnit1変数、Unit2変数)のIPアドレスからMacアドレスを解決し、それぞれU1physaddr変数、U2physaddr変数に設定する(ステップ10403)。最後に、TSテーブル1125に、Terminal IP Address項目がUnit1変数の値、Terminal Mac Address項目がU1physaddr変数の値、Terminal Port項目がNULL値、Parent IP Address項目がNULL値、Parent Mac Address項目がNULL値、Parent Port項目がNULL値のエントリを追加し(ステップ10404)、Terminal IP Address項目がUnit2変数の値、Terminal Mac Address項目がU2physaddr変数の値、Terminal Port項目がNULL値、Parent IP Address項目がNULL値、Parent Mac Address項目がNULL値、Parent Port項目がNULL値のエントリを追加し(ステップ10405)、ステップ10401から繰り返す。
【0176】
図105はオートディスカバリモジュール1113によるTSテーブル1125の作成時の親子関係だけが不明なネットワーク中継装置のエントリ追加処理を示すフローチャートである。
オートディスカバリモジュール1113は親子関係だけが不明なネットワーク中継装置のエントリ追加処理要求を待ち(ステップ10501)、親子関係だけが不明なネットワーク中継装置のエントリ追加処理要求を受信すると(ステップ10502)、ATテーブル1122を利用してPaddr変数とCaddr変数(図87〜図100Paddr変数、Caddr変数)のIPアドレスからMacアドレスを解決し、それぞれPphysaddr変数、Cphysaddr変数に設定する(ステップ10503)。
最後にTSテーブル1125に、Terminal IP Address項目がPaddr変数の値、Terminal Mac Address項目がPphysaddr変数の値、Terminal Port項目がPport変数の値、Parent IP Address項目がCaddr変数の値、Parent Mac Address項目がCphysaddr変数の値、Parent Port項目がCport変数の値のエントリを追加し(ステップ10504)、Terminal IP Address項目がCaddr変数の値、Terminal Mac Address項目がCphysaddr変数の値、Terminal Port項目がCport変数の値、ParenTIP Address項目がPaddr変数の値、Parent Mac Address項目がPphysaddr変数の値、Parent Port項目がPport変数の値のエントリを追加し(ステップ10505)、ステップ10501から繰り返す。
【0177】
図106はオートディスカバリモジュール1113によるTSテーブル1125の作成時の親子関係と接続関係が自明なネットワーク中継装置のエントリ追加処理を示すフローチャートである。
オートディスカバリモジュール1113は親子関係と接続関係が自明なネットワーク中継装置のエントリ追加処理要求を待ち(ステップ10601)、親子関係と接続関係が自明なネットワーク中継装置のエントリ追加処理要求を受信すると(ステップ10602)、ATテーブル1122を利用してPaddr変数とCaddr変数(図87〜図100のPaddr変数、Caddr変数)のIPアドレスからMacアドレスを解決し、それぞれPphysaddr変数、Cphysaddr変数に設定する(ステップ10603)。
最後にTSテーブル1125に、Terminal IP Address項目がCaddr変数の値、Terminal Mac Address項目がCphysaddr変数の値、Terminal Port項目がCport変数の値、Parent IP Address項目がPaddr変数の値、Parent Mac Address項目がPphysaddr変数の値、Parent Port項目がPport変数の値のエントリを追加し(ステップ10604)、ステップ10601から繰り返す。
【0178】
図107及び図108は、オートディスカバリモジュール1113によるTSテーブル1125の作成時の親子関係の決定処理を示すフローチャートである。
オートディスカバリモジュール1113は親子関係の決定処理要求を待ち(ステップ10701)、親子関係の決定処理要求を受信すると(ステップ10702)、TSテーブル1125のすべてのエントリの内で、Parent IP Address項目の値が共通であるエントリが2つ存在するかチェックし、2エントリ存在する場合は、Terminal IP Address項目の値をそれぞれChild1変数、Child2変数、Parent IP Address項目の値をParent変数に設定する。今度は、Parent IP Address項目の値がChild1変数の値に等しく、Terminal IP Address項目の値がParent変数の値に等しいエントリが存在し、かつParent IP Address項目の値がChild2変数の値に等しく、Terminal IP Address項目の値がParent変数の値に等しいエントリが存在するかチェックする(ステップ10703)。
【0179】
ステップ10703の条件を満たす場合は、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild1変数の値に等しく、かつParent IP Address項目の値がChild2変数に等しいエントリとTerminal IP Address項目の値がChild2変数の値に等しく、かつParent IP Address項目の値がChild1変数に等しいエントリが両方存在するかチェックする(ステップ10704)。
【0180】
ステップ10703の条件を満たさない場合は、図111に示す接続関係が不明なネットワーク中継装置の決定処理を実行し(ステップ10708)、図112に示すRootとネットワーク中継装置の親子関係決定処理を実行し(ステップ10709)、ステップ10701から繰り返す。
ステップ10704の条件を満たす場合は、図109に示す複数モデルの組合わせ処理を実行し(ステップ10705)、ステップ10703から繰り返す。
ステップ10704の条件を満たさない場合は、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild1変数の値に等しく、かつParent IP Address項目の値がChild2変数に等しいエントリとTerminal IP Address項目の値がChild2変数の値に等しく、かつParent IP Address項目の値がChild1変数に等しいエントリのどちらか一方だけが存在するかチェックし(ステップ10706)、ステップ10706の条件を満たす場合は、図110に示すTSテーブルエントリ結合処理を実行し(ステップ10707)、ステップ10703から繰り返す。ステップ10706の条件を満たさない場合は、ステップ10703から繰り返す。
【0181】
図109はオートディスカバリモジュール1113によるTSテーブル1125の作成時の複数モデルの組合わせ処理を示すフローチャートである。
オートディスカバリモジュール1113は複数モデルの組合わせ処理要求を待ち(ステップ10901)、複数モデルの組合わせ処理要求を受信すると(ステップ10902)、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild1変数(図107のChild1変数)に等しく、かつParent IP Address項目の値がParent変数(図107のParent変数)に等しいエントリを検索し、該当するエントリのTerminal Port項目の値をC1Pport変数に設定し、Parent Port項目の値をPC1port変数に設定する(ステップ10903)。
【0182】
同様にして、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild2変数(図107のChild2変数)に等しく、かつParent IP Address項目の値がParent変数(図107のParent変数)に等しいエントリを検索し、該当するエントリのTerminal Port項目の値をC2Pport変数に設定し、Parent Port項目の値をPC2port変数に設定する(ステップ10904)。
【0183】
同様にして、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild1変数(図107のChild1変数)に等しく、かつParent IP Address項目の値がChild2変数(図107のChild2変数)に等しいエントリを検索し、該当するエントリのTerminal Port項目の値をC1C2port変数に設定し、Parent Port項目の値をC2C1port変数に設定する(ステップ10905)。
次に、C1Pport変数の値とC1C2port変数の値が等しいかチェック(C2Pport変数の値とC2C1port変数を比較することも可能)し(ステップ10906)、Child1から見て、ParentとChild2が等しいポートに接続しているかをチェックする。
ステップ10906の条件を満たす場合は、TSテーブル1125からTerminal IP AddressがChild2変数の値に等しく、Parent IP Address項目の値がChild1変数の値に等しいエントリを削除し(ステップ10907)、ステップ10901から繰り返す。
【0184】
ステップ10906の条件を満たさない場合は、TSテーブル1125からTerminal IP AddressがChild1変数の値に等しく、Parent IP Address項目の値がChild2変数の値に等しいエントリを削除し(ステップ10908)、ステップ10901から繰り返す。
図106のフローでは図55で示した方法で親子関係が不明なエントリの親子関係を検出する(Child1とChild2が格納されている2つのエントリの内で不必要なエントリを削除する)。
【0185】
図110はオートディスカバリモジュール1113によるTSテーブル1125の作成時のTSテーブル1125の結合処理を示すフローチャートである。
オートディスカバリモジュール1113はTSテーブルの結合処理要求を待ち(ステップ11001)、TSテーブルの結合処理要求を受信すると(ステップ11002)、TSテーブル1125のすべてのエントリの内で、Terminal IP Address項目の値がChild1変数(図107のChild1変数)に等しく、かつParentIP Address項目の値がChild2変数(図107のChild2変数)に等しいエントリが存在するかチェックし(ステップ11003)、ステップ11003の条件を満たす場合には、TSテーブル1125からTerminal IP AddressがChild1変数の値に等しく、Parent IP Address項目の値がParent変数(図107のParent変数)の値に等しいエントリを削除し(ステップ11004)、ステップ11001から繰り返す。
【0186】
ステップ11003の条件を満たさない場合には、TSテーブル1125からTerminal IP AddressがChild2変数の値に等しく、Parent IP Address項目の値がParent変数(図107のParent変数)の値に等しいエントリを削除し(ステップ11005)、ステップ11001から繰り返す。
【0187】
図111はオートディスカバリモジュール1113によるTSテーブル1125の作成時の接続関係が不明なネットワーク中継装置の決定処理を示すフローチャートである。
オートディスカバリモジュール1113は接続関係が不明なネットワーク中継装置の決定処理要求を待ち(ステップ11101)、接続関係が不明なネットワーク中継装置の決定処理要求を受信すると(ステップ11102)、Unitsリスト変数(図83(図107)のUnitsリスト変数)のすべてのエントリを順番に取得し、Unit変数に項目の値を設定し、未探索のUnit変数があるかチェックする(ステップ11103)。
ステップ11103で未検索のUnit変数が存在する場合は、TSテーブル1125からTerminal IP Address項目がUnit変数の値に等しいエントリを検索する(ステップ11104)。
ステップ11103で未検索のUnit変数が存在しない場合は、ステップ11101から繰り返す。ステップ11104で検索したエントリが存在するかチェックし(ステップ11105)、ステップ11105で該当するエントリが存在する場合は、Parent IP Address項目がNULL値に等しいエントリだけが存在しているのかをチェックする(ステップ11107)。
【0188】
ステップ11105で該当するエントリが存在しない場合は、Paddr変数、Caddr変数にUnit変数の値を設定し、図106に示した親子関係と接続関係が自明なネットワーク中継装置のエントリ追加処理を実行し(ステップ11106)、ステップ11103から繰り返す。
ステップ11107でParent IP Address項目がNULL値に等しいエントリだけが存在する場合は、ステップ11103から繰り返す。
ステップ11107でParent IP Address項目がNULL値に等しいエントリだけが含まれている場合は、TSテーブル1125からTerminal IP Address項目がUnit変数に等しいエントリを削除し(ステップ11108)、ステップ11103から繰り返す。
【0189】
図112はオートディスカバリモジュール1113によるTSテーブル1125の作成時のRootとネットワーク中継装置の親子関係決定処理を示すフローチャートである。
オートディスカバリモジュール1113はRootとネットワーク中継装置の親子関係決定処理要求を待ち(ステップ11201)、Rootとネットワーク中継装置の親子関係決定処理要求を受信すると(ステップ11202)、Unitsリスト変数(図83(図107)のUnitsリスト変数)のすべてのエントリを順番に取得し、Unit変数に項目の値を設定し、未探索のUnit変数があるかチェックする(ステップ11203)。
ステップ11203で未検索のUnit変数が存在する場合は、TSテーブル1125からTerminal IP Address項目がUnit変数の値に等しいエントリを検索する(ステップ11204)。
【0190】
ステップ11203で未検索のUnit変数が存在しない場合は、ステップ11201から繰り返す。ステップ11204で該当するエントリが存在する場合は、Parent IP Address項目がNULL値に等しいエントリだけが存在しているのかをチェックする(ステップ11205)。ステップ11205でParent IP Address項目がNULL値に等しいエントリだけが存在する場合は、図113に示すRootとネットワーク中継装置の接続ポート決定処理を実行し(ステップ11206)、Cport変数とPport変数に値を設定する。最後に、TSテーブル1125の該当するエントリのTerminal IP Address 項目にUnit変数の値、Parent IP Address項目にNULL値、Terminal Port項目にCport変数の値、Parent Port項目にPport変数の値を設定し、エントリを更新した後、ステップ11203から繰り返す。
【0191】
図113はオートディスカバリモジュール1113によるTSテーブル1125の作成時のRootとネットワーク中継装置の接続ポート決定処理を示すフローチャートである。
【0192】
オートディスカバリモジュール1113はRootとネットワーク中継装置の接続ポート決定処理要求を待ち(ステップ11301)、Rootとネットワーク中継装置の接続ポート決定処理要求を受信すると(ステップ11302)、Unit変数(図112のUnit変数)を引数に図85に示したネットワーク機器の分類処理を実行し(ステップ11303)、Unit変数の機器の分類をCategory変数に設定する。次に、Category変数がSFに等しいかチェックし(ステップ11304)、ステップ11304のCategory変数の値がSFに等しい場合は、PFテーブル1124からSource IP Address項目がUnit変数の値に等しく、Destination IP Address項目の値が探索中のネットワークセグメント外のIPアドレスに等しいエントリを検索し、該当するエントリのSource Port項目の値をCport変数に設定する(ステップ11305)。
【0193】
ステップ11304のCategory変数の値がSFに等しくない場合は、PFテーブル1124からSource IP Address項目がUnit変数の値に等しく、Destination IP Address項目の値がRoot変数の値に等しいエントリを検索し、該当するエントリのSource Port項目の値をCport変数に設定する(ステップ11306)。ステップ11305、ステップ11306のステップが終了後、PFテーブル1124からSource IP Address項目がRoot変数の値に等しく、Destination IP Address項目がUnit変数の値(もしくは探索中のネットワークセグメントの任意のIPアドレス)に等しいエントリを検索し、該当するエントリのSource Port項目の値をPport変数に設定し、ステップ11301から繰り返す。
図46及び図47のR-CFモデル、R-IFモデル、R-SFモデルで示した接続検出条件に基づいて、図113のフローでは図40、図42、図44に示した方法で接続関係を検出する。
【0194】
図114はオートディスカバリモジュール1113によるTSテーブル1125の作成時のネットワーク中継装置と端末装置の接続の決定処理を示すフローチャートである。
オートディスカバリモジュール1113はネットワーク中継装置と端末装置の接続の決定処理要求を待ち(ステップ11401)、ネットワーク中継装置と端末装置の接続の決定処理要求を受信すると(ステップ11402)、Unitsリスト変数(図83(図107)のUnitsリスト変数)のすべてのエントリを順番に取得し、Parent変数に項目の値を設定し、未探索のParent変数があるかチェックする(ステップ11403)。
ステップ11403で未検索のParent変数が存在する場合は、TSテーブル1125からTerminal IP Address項目がParent変数の値に等しいエントリ、もしくはParent IP Address項目がParent変数の値に等しいエントリを検索し、Portsリスト変数に該当するエントリのTerminal Port項目の値(Terminal IP Address項目がParent変数の値に等しい場合)、もしくはParent Port項目の値(Parent IP Address項目がParent変数の値に等しい場合)をすべて追加する(ステップ11404)。
【0195】
ステップ11403で未検索のParent変数が存在しない場合は、ステップ11401から繰り返す。ステップ11404の終了後、PFテーブル1124からSource IP Address項目がParent変数に等しく、Source Port項目がPortリスト変数に含まれるポート番号をに等しくないエントリを検索し、該当するエントリのDestination IP Address項目をChild変数、Destination Port項目の値をCport変数に設定する(ステップ11405)。
【0196】
次に、ATテーブル1122を利用してParent変数とChild変数のIPアドレスからMacアドレスに変換し、それぞれPphysaddr変数、Cphysaddr変数に設定し(ステップ11406)、TSテーブル1125にTerminal IP Address項目がChild変数の値、Terminal Mac Address項目がCphysaddr変数の値、Terminal Port項目がCport変数の値、ParentIP Address項目がParent変数の値、Parent Mac Address項目がPphysaddr変数の値、Parent Port項目がPport変数の値のエントリを追加(すでに同一のエントリが存在する場合は何もしない)し(ステップ11407)、ステップ11403から繰り返す。
【0197】
図115はオートディスカバリモジュール1113がTSテーブル1125の作成時にインタフェースMIBを評価する処理を示すフローチャートである。
オートディスカバリモジュール1113はインタフェースMIB評価処理要求を待ち(ステップ11501)、インタフェースMIB評価処理要求としてRoot装置のIPアドレスの値(root変数に設定)を受信すると(ステップ11502)、TSテーブル1125のTerminal Port項目をキーに指定してTerminal Port項目がヌル値であるエントリを検索し、ヒットしたエントリのTerminal IP Address項目の値をTerminal変数、Parent IP Address項目の値をparent変数に設定し、Parent Port項目の値をPport変数に設定する(ステップ11503)。
【0198】
次に、TIテーブル1123のIP Address項目をキーに指定してTerminal変数に等しいエントリを検索し(ステップ11504)、ヒットしたエントリのMIB2項目の値が“1"(True)かチェックする(ステップ11505)。
MIB2項目の値が“0”(False)の場合はステップ11503から処理を繰り返す。MIB2項目の値が“1”(True)の場合はIPアドレスがParent変数の機器でポート番号がPport変数に等しいポートに関して、オブジェクト名としてifInOctets(ifOutOctets)を指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行し、統計分布を取得してstatisticsP変数に設定する。
【0199】
同様に、IPアドレスがTerminal変数の機器の全てのポート番号関して、オブジェクト名としてifOutOctets(ifInOctets)を指定し、図64に示したフローでSNMP Get-Requestメッセージの送受信処理を実行し、統計分布を取得してstatisticsT[ポート番号]変数に設定する(ステップ11506)。
ステップ11506の終了後、statisticsP変数とstatisticsT[ポート番号]変数との間に有意な差がないポート番号が存在するかチェックし(ステップ11507)、有意な差がないポート番号がない場合はステップ11503から処理を繰り返す。ここで有意な差とは、例えば2つの値の差に一定の閾値を設けておき、2つの値の差が閾値を超えるような場合には2つの値は異なると判断することを意味する。有意な差がないポート番号がある場合はTSテーブル1125の該当するエントリのTerminal Port項目に該当するポート番号を設定してTSテーブル1125のエントリを更新する(ステップ11508)。ステップ11508の終了後、ステップ11503から処理を繰り返す。
【0200】
図116は、図面表示プログラム1104がネットワーク構成図面を表示する処理を示すフローチャートである。
図面表示プログラム1104は、ネットワーク構成図面表示要求を待ち(ステップ11601)、ネットワーク構成図面表示要求を受信すると(ステップ11602)、図69に示したオートディスカバリモジュール1113のATテーブル1122の作成要求処理を実行する(ステップ11603)。
次に、図70に示したオートディスカバリモジュール1113のTIテーブル1123の作成要求処理を実行する(ステップ11604)。次に、図73に示したオートディスカバリモジュール1113のPFテーブル1124の作成要求処理を実行する(ステップ11605)。
次に、図81に示したオートディスカバリモジュール1113のTSテーブル1125の作成要求処理を実行する(ステップ11606)。最後に、図117に示す描画処理を実行し(ステップ11607)、ステップ11601から処理を繰り返す。
【0201】
図117および図118は、図面表示プログラム1104がネットワーク構成図面表示処理時に画面に描画する処理を示すフローチャートである。
図面表示プログラム1104は描画処理要求を待ち(ステップ11701)、描画処理要求を受信すると(ステップ11702)、TSテーブル1125すべてのエントリの探索を開始し、TSテーブル1125に未探索のエントリがあるかチェックし、未探索のエントリがない場合はステップ11701から処理を繰り返し、未探索のエントリがある場合はParent変数に該当するエントリのParent IP Address項目の値を、Child変数にTerminal IP Address項目の値を設定する(ステップ11703)。
次にParent変数の値がNULL値に等しいかどうかチェックし(ステップ11704)、Parent変数の値がNULL値に等しい場合はユーザにChild変数の機器の接続関係が検出できないことを通知し(ステップ11705)、ステップ11703から繰り返す。
【0202】
Parent変数の値がNULL値に等しくない場合は、TSテーブル1125のすべてのエントリの中でParent IP Address項目の値がChild変数に等しく、Terminal IP Address項目の値がParent変数の値に等しいエントリが存在するかチェックし、Pport変数にParent Port項目の値を設定する(ステップ11706)。
該当するエントリが存在する場合はユーザにChild変数の機器の親子関係が検出できないことを通知し(ステップ11707)、ステップ11703から繰り返す。該当するエントリがない場合は、Parent変数とChild変数の値をキーに指定し、TIテーブル1123のIP Address項目を検索し、ヒットしたエントリのparent変数に対するHost Name項目の値を画面上に描画する(ステップ11708)。
ただし、Parentが既に描画されている場合やParent変数がヌル値の場合は未処理とする。
【0203】
ステップ11708の終了後、図119に示すノンインテリジェントハブ予測処理を実行し(ステップ11709)、Parent変数の機器とChild変数の機器の間にノンインテリジェントハブが稼動しているかチェックする(ステップ11709)。
ノンインテリジェントハブ予測処理の返り値が“1”(True)の場合は、ノンインテリジェントハブをParent変数の機器の直下に描画し、ヒットしたエントリのChild変数の機器に対するHost Name項目の値をノンインテリジェントハブの直下に描画する(ステップ11710)。ただし、ノンインテリジェントハブがParent変数の機器の直下に既に描画されている場合は未処理とする。
ノンインテリジェントハブ予測処理の返り値が“0”(False)の場合は、ヒットしたエントリのChild変数の機器に対するHost Name項目の値をParentの直下に描画する(ステップ11711)。ステップ11710、ステップ11711の任意のステップが終了後、ステップ11703から処理を繰り返す。
ノンインテリジェントハブ予測処理はノンインテリジェントハブが稼動していることを認識することを目的としており、ノンインテリジェントハブの階層構造や段数は予測できないため、可能な接続構成の中から実際の接続構成をGUI等によりユーザに選択させる処理を追加することも可能である。
【0204】
図119は、図面表示プログラム1104がネットワーク構成図面の描画時にノンインテリジェントハブを予測する処理を示すフローチャートである。
図面表示プログラム1104はノンインテリジェントハブの予測処理要求を待ち(ステップ11901)、ノンインテリジェントハブの予測処理要求としてTSテーブル1125のParent IP Address項目の値(Parent変数に設定)とParent Port項目の値(Pport変数に設定)を受信すると(ステップ11902)、Parent変数とPport変数をキーに指定してTSテーブル1125のParent IP Address項目とParent Port項目を検索し、ヒットするエントリがあるかチェックする(ステップ11903)。
ヒットするエントリがある場合は、Count変数の値をインクリメント(Count変数の初期値は“0”)し(ステップ11904)、ステップ11903から処理を繰り返す。
ヒットするエントリがない場合は、Count変数が“1”より大きいかチェックし(ステップ11905)、Count変数が“1”以下の場合はFalseを返し(ステップ11906)、Count変数が“1”より大きい場合はTrueを返す(ステップ11907)。
ステップ11906、ステップ11907の任意のステップ終了後、ステップ11901から処理を繰り返す。
ノンインテリジェントハブ予測処理では1台のネットワーク中継装置の同一ポートに複数の機器が直接接続している場合にノンインテリジェントハブが存在すると予測する。
【0205】
図120は、図面表示プログラム1104がユーザイベントにより機器情報を表示する処理を示すフローチャートである。
図面表示プログラム1104は機器情報表示要求を待ち(ステップ12001)、ユーザがマウス等を利用してネットワーク構成図面上の機器の表示部分をクリックするといったユーザのマウスイベントによる機器情報表示要求を受信すると(ステップ12002)、ネットワーク構成図面上の機器の表示部分を反転表示するといったGUI表示を実行した後で、該当するホスト名を取得する(ステップ12003)。
取得したホスト名をキーに指定して、TIテーブル1123のHost Name項目を検索し、ipaddress変数にエントリのIP Address項目の値を設定する(ステップ12004)。最後にipaddress変数をキーに指定して、ATテーブル1122、TIテーブル1123、TSテーブル1125を検索し、取得したエントリの情報を機器情報表示部分に描画し(ステップ12005)、ステップ12001から処理を繰り返す。
【0206】
図121は、図面表示プログラム1104が接続先の変更を監視する処理を示すフローチャートである。
図面表示プログラム1104は接続先の変更を監視する処理要求を待ち(ステップ12101)、接続先の変更を監視する処理要求を受信すると(ステップ12102)、図116に示したネットワーク構成図面表示処理を実行し、検出したネットワーク構成を描画する(ステップ12103)。
次にネットワーク構成を検出する際に作成したTSテーブルのデータをTS_NEWの領域に格納する(ステップ12104)。
ここで、TS_NEWとTS_OLD(初期値はNULL値)を比較し、エントリ数が減少しているかチェックする(ステップ12105)。ただしTS_OLDがNULL値に等しい場合は比較できないので無視する。TS_NEWはTS_OLDよりもエントリ数が減少した場合、ユーザに機器が停止、もしくは接続から外されたことを通知し(ステップ12106)、ステップ12101から繰り返す。
【0207】
TS_NEWはTS_OLDよりもエントリ数が減少していない場合は、TS_NEWとTS_OLDでエントリが置き変わったかチェックし(Terminal IP Address項目の値が等しいがParentIP AddressやParent Portが異なる場合)(ステップ12107)、TS_NEWとTS_OLDでエントリが置き変わった場合はユーザに機器が移動したことを通知し(ステップ12108)、ステップ12101から繰り返す。
TS_NEWとTS_OLDでエントリが置き変わっていない場合は、TS_NEWはTS_OLDよりもエントリ数が増加しているかチェックする(ステップ12109)。TS_NEWはTS_OLDよりもエントリ数が増加している場合はユーザに機器が新規に追加されたことを通知し(ステップ12110)、ステップ12101から繰り返す。
TS_NEWはTS_OLDよりもエントリ数が増加していない場合もステップ12101から繰り返す。
【0208】
以上で説明した本発明の実施形態においては、SNMPマネージャを実装した管理者端末からネットワークノード内の各ネットワーク機器に対してICMPエコーリクエストを送信し、その応答によって稼動状態のネットワーク機器を検出し、その検出した各ネットワーク機器のSNMPエージェントに対し、当該ネットワーク機器内の管理情報ベースの格納情報の転送要求を送信し、返信された管理情報ベースの格納情報によってネットワークノード内に存在するネットワーク機器の種別を検出するようにしているため、SNMP以外の特別なソフトウェアの実装を必要とせず、またSNMPの実装の仕方に依存せずに、少なくとも1台の管理端末からネットワークノード内部の物理的な機器の種別を含む構成を自動的に検出することができる。
【0209】
また、機器種別がブリッジ機能を有するネットワーク機器の管理情報ベースから当該ネットワーク機器の各ポートに接続されたネットワーク機器の物理アドレスの集合を取得すると共に、ルーティング機能を有するネットワーク機器の管理情報ベースから物理アドレスとIPアドレスの対応情報を取得し、それらの取得した物理アドレスとIPアドレスの対応情報に基づき、ブリッジ機能を有するネットワーク機器の各ポートの接続先の機器をIPレベルで認識するようにしたため、ネットワーク機器の各ポートの接続関係をIPレベルで検出することができる。
【0210】
さらに、ICMPエコーリクエストに対して応答が返信されたネットワーク機器は稼動中、応答が返信されないネットワーク機器は存在しないものと認識し、さらに物理アドレスとIPアドレスの対応情報を参照し、稼動中と認識したネットワーク機器以外の対応情報が存在する場合には当該ネットワーク機器は非稼動中であるものと認識するようにしたため、稼動状態のネットワーク機器のみでなく一時的に停止しているネットワーク機器も検出することができる。
【0211】
さらに、ブリッジ機能またはリピータ機能を有するネットワーク機器の管理情報ベースに当該ネットワーク機器の各ポートの接続先に存在する非稼動中のネットワーク機器の情報が格納されているか否かを調べ、格納されている場合は当該格納情報に基づき非稼動中のネットワーク機器の接続関係を検出するようにしたため、非稼動中のネットワーク機器の管理情報ベースの格納情報が取得できない場合であっても、その接続関係を検出することができる。
【0212】
また、ブリッジ機能を有するネットワーク機器が複数存在するか否かを検出し、複数の存在を検出した場合には、任意のブリッジ機能を有するネットワーク機器を親機器とし、該親機器の特定ポートの接続先に別のブリッジ機能を有するネットワーク機器が存在するか否かをさらに検出し、存在することを検出した場合には、該ネットワーク機器を子機器とし、その子機器の各ポートの接続先の機器構成を検索し、ブリッジ機能を有するネットワーク機器同士の接続関係をポート単位で認識するようにしたため、親子関係にある接続関係を検出することができる。
【0213】
また、子機器と接続している親機器のポートの接続先に存在するネットワーク機器の物理アドレスの集合と、子機器の全ポートから親機器へ接続しているポートを除くポートの接続先に存在するネットワーク機器の物理アドレスの集合の和集合の差分を求め、親機器と子機器の中間に存在しているネットワーク機器を認識するようにしたため、親子関係や兄弟関係にある接続関係を検出することができる。
【0214】
さらに、親機器と子機器の中間に複数の機器が存在することを認識した場合に、全機器がルーティング機能、ブリッジ機能、リピータ機能にいずれを保持しているか否かを検出し、いずれも保持していない場合にはノンインテリジェントなネットワーク中継装置が存在するものと予測するため、ノンインテリジェントなネットワーク中継装置の存在を検出することができる。
【0215】
さらに、接続関係を認識した前記親機器と子機器についてそれぞれのの管理情報ベース内に保持されている物理アドレスを調べ、親機器の管理情報ベース内に子機器の物理アドレスが保持されていない場合および子機器の管理情報ベース内に親機器の物理アドレスが存在しない場合は、親機器と子機器の特定のポートの接続先に存在する機器の物理アドレスの集合に共通で含まれるような任意の機器を選択し、その選択した機器に対する親機器や子機器の接続ポートを基に親機器と子機器の接続関係を絞り込んで認識するため、管理情報ベースのキャッシュ漏れ等の格納情報の不備に対しても対応することができる。
【0216】
また、リピータ機能を有するネットワーク機器の任意のポートにおける最新受信フレームの送信元物理アドレスの更新頻度の値を取得し、この値によって当該任意のポートの接続先に稼動している機器の数を認識し、さらに前記更新頻度の値が「0」または「1」以外の場合には当該任意のポートにおける最新受信フレームの送信元物理アドレスの値を所定時間間隔で取得し、当該任意のポートの接続先に存在する全てのネットワーク機器の物理アドレスを認識するようにしたため、リピータ機能を有するネットワーク機器の任意のポートに接続されているネットワーク機器の数とその物理アドレスを検出することができる。
【0217】
また、リピータ機能を有するネットワーク機器の任意のポートにおける最新受信フレームの送信元物理アドレスの更新頻度の値を所定時間間隔で取得し、この値が変化しているか否かによってリピータ機能を有するネットワーク機器がRFC仕様に準拠しているものか否かを検出することができる。
【0218】
また、ブリッジ機能を有するネットワーク機器およびリピータ機能を有するネットワーク機器の管理情報ベースの格納情報によって接続関係を認識できないネットワーク機器について、前記ブリッジ機能を有するネットワーク機器およびリピータ機能を有するネットワーク機器の任意のポートを一時的に閉塞し、閉塞前にはICMPエコーリクエストパケットに対する応答があり、閉塞後には応答がなくなる機器である場合、その機器は当該任意のポートの接続先に存在するものとして認識することができる。
【0219】
さらに、ブリッジ機能を有するネットワーク機器およびリピータ機能を有するネットワーク機器の管理情報ベースの格納情報によって接続関係を認識できないネットワーク機器について、前記ブリッジ機能を有するネットワーク機器およびリピータ機能を有するネットワーク機器のポート単位の送受信フレームの統計量を所定時間間隔で収集し、有意の差がないポートの組があれば、このポートの組を接続関係にあるポートとして認識することができる。
【0220】
また、稼動中のネットワーク機器の管理情報ベースの格納情報を所定時間間隔で収集し、管理者端末の記憶領域に保持し、前回の収集内容と今回の収集内容との相違があるか否かを比較し、稼動中のネットワーク機器の起動、停止、接続先の変更、IPアドレスの変更等を検出することができる。
【0221】
さらに、ネットワーク機器同士の接続関係の情報により機器同士の接続関係のモデルを作成し、機器同士の接続関係のモデルごとに、または複数の機器同士の接続関係のモデルを組合せることによってネットワーク機器同士の接続関係を検出したり、検出条件を提示することができる。
【0222】
なお、上記実施形態は、現在におけるSNMPプロトコルに則って構成したものであるが、SNMPプロトコルの更新に際しては、細部の構成を変更して実施できることは言うまでもない。
また、ネットワーク機器は有線回線で接続したものに限定されず、無線回線で接続されたものであってもよい。
【0223】
【発明の効果】
以上の説明から明らかなように、本発明によれば、SNMPを実装しているインテリジェントなネットワーク中継装置が稼動しているネットワーク環境において、SNMP以外の特別なソフトウェアの実装を必要とせず、またSNMPの実装の仕方に依存せずに、少なくとも1台の管理端末からネットワークノード内部の物理的な機器構成を自動的に検出することができる。
【0224】
また、ブリッジとブリッジの接続先の機器との間に存在するネットワーク機器の検出に限定されることなく、ネットワーク内の全ての機器の種別、接続関係等の構成を検出することができる。
【0225】
さらに、ハブ同士がカスケード接続されている場合やリピータの接続先に複数の端末が接続されている場合であっても、その接続関係を検出することができる。
【0226】
また、SNMPプロトコルを実装していないノンインテリジェント機器であっても、その存在を予測することができるなどの効果が得られる。
【図面の簡単な説明】
【図1】本発明に係わるネットワーク構成自動認識方法で対象とするネットワークシステムの実施形態を示す図である。
【図2】本発明に係わるネットワーク構成自動認識方法で用いるSNMPメッセージフォーマットを示す図である。
【図3】本発明に係わるネットワーク構成自動認識方法で用いるインターネットOIDツリーを示す図である。
【図4】本発明に係わるネットワーク構成自動認識方法で用いるMIBオブジェクトの構成を示す図である。
【図5】本発明に係わるネットワーク構成自動認識方法で用いるsystemグループオブジェクトの構成を示す図である。
【図6】本発明に係わるネットワーク構成自動認識方法で用いるinterfacesグループオブジェクトの構成を示す図である。
【図7】本発明に係わるネットワーク構成自動認識方法で用いるipグループオブジェクトの構成を示す図である。
【図8】本発明に係わるネットワーク構成自動認識方法で用いるdot1dBridgeグループオブジェクトの構成を示す図である。
【図9】本発明に係わるネットワーク構成自動認識方法で用いるsnmpDot3RptrMgtグループオブジェクトの構成を示す図である。
【図10】本発明に係わるネットワーク構成自動認識方法で用いるprintmibグループオブジェクトの構成を示す図である。
【図11】本発明に係わるネットワーク構成自動認識方法を実現する管理者端末内のプログラム構成例を示す図である。
【図12】本発明に係わるネットワーク構成自動認識方法で用いるOIDテーブルの構成を示す図である。
【図13】本発明に係わるネットワーク構成自動認識方法で用いるATテーブルの構成を示す図である。
【図14】本発明に係わるネットワーク構成自動認識方法で用いるTIテーブル1123の構成を示す図である。
【図15】本発明に係わるネットワーク構成自動認識方法で用いるPFテーブル1124の構成を示す図である。
【図16】本発明に係わるネットワーク構成自動認識方法で用いるTSテーブルの構成を示す図である。
【図17】本発明に係わるネットワーク構成自動認識方法におけるSNMPメッセージ送受信の仕組を示す図である。
【図18】本発明に係わるネットワーク構成自動認識方法における機器種別の検出方法を説明する図である。
【図19】本発明に係わるネットワーク構成自動認識方法を考慮する場合のネットワーク中継装置間のRelation定義を示す図である。
【図20】本発明に係わるネットワーク構成自動認識方法におけるinterfaces MIBを利用したネットワーク中継装置間の接続検出方法を示す図である。
【図21】本発明に係わるネットワーク構成自動認識方法におけるネットワーク機器の分類方法を示す図である。
【図22】本発明に係わるネットワーク構成自動認識方法におけるR-CF-CFモデルの接続検出の仕組を示す図である。
【図23】本発明に係わるネットワーク構成自動認識方法におけるR-CF-CFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図24】本発明に係わるネットワーク構成自動認識方法におけるR-CF-IFモデルの接続検出の仕組を示す図である。
【図25】本発明に係わるネットワーク構成自動認識方法におけるR-CF-IFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図26】本発明に係わるネットワーク構成自動認識方法におけるR-CF-SFモデルの接続検出の仕組を示す図である。
【図27】本発明に係わるネットワーク構成自動認識方法におけるR-CF-SFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図28】本発明に係わるネットワーク構成自動認識方法におけるR-IF-CFモデルの接続検出の仕組を示す図である。
【図29】本発明に係わるネットワーク構成自動認識方法におけるR-IF-CFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図30】本発明に係わるネットワーク構成自動認識方法におけるR-IF-IFモデルの接続検出の仕組を示す図である。
【図31】本発明に係わるネットワーク構成自動認識方法におけるR-IF-IFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図32】本発明に係わるネットワーク構成自動認識方法におけるR-IF-SFモデルの接続検出の仕組を示す図である。
【図33】本発明に係わるネットワーク構成自動認識方法におけるR-IF-SFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図34】本発明に係わるネットワーク構成自動認識方法におけるR-SF-CFモデルの接続検出の仕組を示す図である。
【図35】本発明に係わるネットワーク構成自動認識方法におけるR-SF-CFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図36】本発明に係わるネットワーク構成自動認識方法におけるR-SF-IFモデルの接続検出の仕組を示す図である。
【図37】本発明に係わるネットワーク構成自動認識方法におけるR-SF-IFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図38】本発明に係わるネットワーク構成自動認識方法におけるR-SF-SFモデルの接続検出の仕組を示す図である。
【図39】本発明に係わるネットワーク構成自動認識方法におけるR-SF-SFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図40】本発明に係わるネットワーク構成自動認識方法におけるR-CFモデルの接続検出の仕組を示す図である。
【図41】本発明に係わるネットワーク構成自動認識方法におけるR-CFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図42】本発明に係わるネットワーク構成自動認識方法におけるR-IFモデルの接続検出の仕組を示す図である。
【図43】本発明に係わるネットワーク構成自動認識方法におけるR-IFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図44】本発明に係わるネットワーク構成自動認識方法におけるR-SFモデルの接続検出の仕組を示す図である。
【図45】本発明に係わるネットワーク構成自動認識方法におけるR-SFモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図46】本発明に係わるネットワーク構成自動認識方法におけるネットワーク中継装置同士の接続検出方法を説明する図である。
【図47】図46の続きを示す図である。
【図48】本発明に係わるネットワーク構成自動認識方法におけるCF-Termモデルの接続検出の仕組を示す図である。
【図49】本発明に係わるネットワーク構成自動認識方法におけるCF-Termモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図50】本発明に係わるネットワーク構成自動認識方法におけるIF-Termモデルの接続検出の仕組を示す図である。
【図51】本発明に係わるネットワーク構成自動認識方法におけるIF-Termモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図52】本発明に係わるネットワーク構成自動認識方法におけるSF-Termモデルの接続検出の仕組を示す図である。
【図53】本発明に係わるネットワーク構成自動認識方法におけるSF-Termモデルの接続検出に利用するPFテーブルのエントリ例を示す図である。
【図54】本発明に係わるネットワーク構成自動認識方法におけるネットワーク中継装置と端末装置の接続検出方法を説明する図である。
【図55】本発明に係わるネットワーク構成自動認識方法における複数のモデルを組合わせることによる親子関係の検出方法を説明する図である。
【図56】本発明に係わるネットワーク構成自動認識方法における複数のモデルを組合わせることによる親子関係の検出に利用するTSテーブルのエントリ例を示す図である。
【図57】本発明に係わるネットワーク構成自動認識方法におけるNon Intelligent Hubの接続の予測方法を示す図である。
【図58】本発明に係わるネットワーク構成自動認識方法におけるNon Intelligent Hubの接続の予測に利用するTSテーブルのエントリ例を示す図である。
【図59】本発明に係わるネットワーク構成自動認識方法における非稼動中端末装置の検出方法を示す図である。
【図60】本発明に係わるネットワーク構成自動認識方法における接続先の変更の検出方法を示す図である。
【図61】本発明に係わるネットワーク構成自動認識方法における接続先の変更の検出に利用するTSテーブルのエントリ例を示す図である。
【図62】本発明に係わるネットワーク構成自動認識方法におけるネットワーク構成図面表示例を示す図である。
【図63】本発明に係わるネットワーク構成自動認識方法における稼動状況検出モジュールがICMPエコーリクエストを送受信する処理を示すフローチャートである。
【図64】本発明に係わるネットワーク構成自動認識方法におけるMIBアクセスモジュールがPDUを作成し、SNMPメッセージを送受信する処理を示すフローチャートである。
【図65】本発明に係わるネットワーク構成自動認識方法におけるMIBアクセスモジュールが機器のMIB2サポート状況をチェックする処理IPフォワーディング機能の有無をチェックする処理を示すフローチャートである。
【図66】本発明に係わるネットワーク構成自動認識方法におけるMIBアクセスモジュールが機器のブリッジMIBサポート状況をチェックする処理を示すフローチャートである。
【図67】本発明に係わるネットワーク構成自動認識方法におけるMIBアクセスモジュールが機器のリピータMIBサポート状況をチェックする処理を示すフローチャートである。
【図68】本発明に係わるネットワーク構成自動認識方法におけるMIBアクセスモジュールが機器のプリンタMIBサポート状況をチェックする処理を示すフローチャートである。
【図69】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがATテーブルを作成する処理を示すフローチャートである。
【図70】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTIテーブルを作成する処理を示すフローチャートである。
【図71】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTIテーブル作成時にTIテーブルの各項目の値を取得する処理を示すフローチャートである。
【図72】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTIテーブル作成時に機器タイプを認識する処理を示すフローチャートである。
【図73】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブルを作成する処理を示すフローチャートである。
【図74】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時にブリッジMIBサポート機器に対して実行する処理を示すフローチャートである。
【図75】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時にリピータMIBサポート機器に対して実行する処理を示すフローチャートである。
【図76】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時にフォワーディング情報を学習する処理を示すフローチャートである。
【図77】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時にフォワーディング情報を予測する処理を示すフローチャートである。
【図78】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時にMIB2(interfaces MIB)サポート機器に対して実行する処理を示すフローチャートである。
【図79】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時に管理者端末の接続ポートを検出する処理を示すフローチャートである。
【図80】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがPFテーブル作成時に管理者端末以外の機器の接続ポートを検出する処理を示すフローチャートである。
【図81】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブルを作成する処理を示すフローチャートである。
【図82】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にRoot装置を決定する処理を示すフローチャートである。
【図83】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にネットワーク中継装置間の接続を決定する処理を示すフローチャートである。
【図84】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に接続モデルを決定する処理を示すフローチャートである。
【図85】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にネットワーク機器を分類する処理を示すフローチャートである。
【図86】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に接続検出条件をチェックする処理を示すフローチャートである。
【図87】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, CF, CF)の接続検出条件をチェックする処理を示すフローチャートである。
【図88】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, CF, IF)の接続検出条件をチェックする処理を示すフローチャートである。
【図89】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-IF-CFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図90】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-CF-IFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図91】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, CF, SF)の接続検出条件をチェックする処理を示すフローチャートである。
【図92】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-SF-CFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図93】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-CF-SFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図94】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, IF, IF)の接続検出条件をチェックする処理を示すフローチャートである。
【図95】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-IF-IFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図96】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, IF, SF)の接続検出条件をチェックする処理を示すフローチャートである。
【図97】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-SF-IFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図98】図97の続きを示すフローチャートである。
【図99】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にR-IF-SFモデルの接続検出条件をチェックする処理を示すフローチャートである。
【図100】図99の続きを示すフローチャートである。
【図101】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に集合(R, SF, SF)の接続検出条件をチェックする処理を示すフローチャートである。
【図102】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にTSテーブルに対するエントリを追加する処理を示すフローチャートである。
【図103】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にTSテーブルに対するRootエントリを追加する処理を示すフローチャートである。
【図104】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に親子関係と接続関係が不明なネットワーク中継装置を追加する処理を示すフローチャートである。
【図105】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に親子関係だけが不明なネットワーク中継装置を追加する処理を示すフローチャートである。
【図106】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に親子関係と接続関係が自明なネットワーク中継装置を追加する処理を示すフローチャートである。
【図107】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に親子関係を決定する処理を示すフローチャートである。
【図108】図107の続きを示すフローチャートである。
【図109】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に複数モデルを組合わせる処理を示すフローチャートである。
【図110】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にTSテーブルのエントリを結合する処理を示すフローチャートである。
【図111】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時に接続関係が不明なネットワーク中継装置を決定する処理を示すフローチャートである。
【図112】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にRootとネットワーク中継装置の親子関係を決定する処理を示すフローチャートである。
【図113】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にRootとネットワーク中継装置の接続ポートを決定する処理を示すフローチャートである。
【図114】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にネットワーク中継装置と端末装置の接続を決定する処理を示すフローチャートである。
【図115】本発明に係わるネットワーク構成自動認識方法におけるオートディスカバリモジュールがTSテーブル作成時にインタフェースMIBを評価する処理を示すフローチャートである。
【図116】本発明に係わるネットワーク構成自動認識方法における図面表示プログラムがネットワーク構成図面を表示する処理を示すフローチャートである。
【図117】本発明に係わるネットワーク構成自動認識方法における図面表示プログラムがネットワーク構成図面表示処理時に画面に描画する処理を示すフローチャートである。
【図118】図117の続きを示すフローチャートである。
【図119】本発明に係わるネットワーク構成自動認識方法における図面表示プログラムがネットワーク構成図面の描画時にノンインテリジェントハブを予測する処理を示すフローチャートである。
【図120】本発明に係わるネットワーク構成自動認識方法における図面表示プログラムがユーザイベントにより機器情報を表示する処理を示すフローチャートである。
【図121】本発明に係わるネットワーク構成自動認識方法における図面表示プログラムが接続先変更の監視する処理を示すフローチャートである。
【符号の説明】
1…バックボーンネットワークケーブル(Ethernet LAN)、2a,2b…ルータ、3…スイッチングハブ、4…ブリッジ、5…インテリジェントハブ、6…ノンインテリジェントハブ、71…管理者端末、72〜78…端末装置、1102…通信ポート、1103…ネットワーク構成自動認識サービスプログラム、1104…図面表示プログラム、1111…稼動状況検出モジュール、1112…MIBアクセスモジュール、1113…オートディスカバリモジュール、1121…OIDテーブル、1122…ATテーブル、1123…TIテーブル、1124…PFテーブル、1125…TSテーブル。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a physical configuration of each device when an intelligent network relay device that implements SNMP (Simple Network Management Protocol) is included in a network to which routers, switches, bridges, repeaters, hubs, terminals and the like are connected. The present invention relates to a method and system for automatically recognizing various network connection configurations.
[0002]
[Prior art]
The technology for recognizing the physical network connection configuration of each device in a network to which routers, switches, bridges, repeaters, hubs, terminals, etc. are connected is an indispensable technology for network monitoring / management systems and network drawing creation systems. .
In the conventional network connection configuration recognition technology, it is possible to recognize a network divided by IP (Intenet Protocol) network segments (divided in segments divided by routers). Within the scope of this technology, there is often a display method in which devices existing in a network segment divided by a router are listed in parallel, and there is a problem that it is not possible to correspond to the physical configuration of the actual network. It was.
In order to solve the above problems, “network connection device type detection method” (Japanese Patent Laid-Open No. 11-96094), “network monitoring and repeater connected terminal recognition method” (Japanese Patent Laid-Open No. 11-146003), “relay device And network management device "(Japanese Patent Laid-Open No. 10-336228)," Automatic Network Map Generation Method Using BGP Routing Information "(Japanese Patent Laid-Open No. 9-181722)," Network Topology Recognition Method and Network Topology Recognition Device " (Kaihei 9-186716) and “Network Configuration Recognition Method” (Japanese Patent Laid-Open No. 8-191326) have been proposed.
[0003]
[Problems to be solved by the invention]
However, the “network connection device type detection method” provides a technique for recognizing a loop connection existing between a bridge and a device to which the bridge is connected by transmitting an inspection packet to a link between devices. However, there is a problem specializing in loop connection.
In addition, the “network monitoring and repeater hub connection terminal recognition method” provides a technology for recognizing a terminal connected to each port of a repeater by using a repeater MIB (MIB: Management Information Base). However, there is a problem that cannot be detected when a plurality of terminals are connected to the connection destination of each port of the repeater.
In addition, the “relay device and network management device” provides a technique for detecting the connection relationship of the network relay device. However, this is an implementation means that depends on special hardware. What is an implementation means in an existing network configuration? There is a problem that cannot be.
In “Automatic Network Map Generation Method Using BGP Routing Information”, a method for detecting a connection relationship between AS (Autonomouse System) specialized for BGP (Border Gateway Protocol) compatible routers. However, there is a problem that the connection relationship in the network segment cannot be identified.
In addition, the “Network Topology Recognition Method and Network Topology Recognition Device” provides a technology for grasping the connection status of bridge devices using the spanning tree protocol, but the connection relationship between bridges corresponding to the source routing protocol is provided. There is a problem that cannot be detected.
In the “network configuration recognition method”, the MAC address information of the connection destination of each port of the hub (intelligent hub) is used as a repeater MIB under the condition that the connection destination of each port of the hub is only one terminal. By collecting data using, we provide a technology to grasp the physical address of the device at the port connection destination. However, when hubs are connected in cascade, the configuration of the connection destination of each port of the hub cannot be detected, and means for periodically sending from each terminal is required. Must be introduced to The implementation of the repeater MIB differs depending on the vendor, and cannot be said to be a general-purpose repeater solution.
[0004]
The present invention does not require the installation of special software other than SNMP in a network environment in which an intelligent network device that implements SNMP is operating, and does not depend on how SNMP is implemented. It is an object of the present invention to provide a network configuration automatic recognition method and system capable of automatically detecting a physical device configuration inside a network node from a single management terminal.
[0005]
[Means for Solving the Problems]
In order to achieve the above object, the present invention basically provides an SNMP manager in a network environment in which at least one intelligent network device that implements an SNMP agent and a management information base exists in a network node. A first step of transmitting an ICMP echo request from the installed administrator terminal to each network device in the network node and detecting an active network device based on the response, and an SNMP agent of each detected network device A second step of transmitting a transfer request for the management information base storage information in the network device and detecting the type of the network device existing in the network node from the returned management information base storage information. With features That.
Further, a third step of acquiring a set of physical addresses of the network devices connected to each port of the network device from the management information base of the network device having the bridge function as a device type, and management of the network device having the routing function 4th step of acquiring correspondence information between physical address and IP address from information base, and IP level of connection destination device of each port of network device having bridge function based on acquired correspondence information of physical address and IP address And a fifth step of recognizing in (5).
[0006]
Further, it is recognized that the network device to which a response is returned to the ICMP echo request is in operation and no network device to which no response is returned exists, and the correspondence between the physical address acquired in the fourth step and the IP address It is characterized by further comprising a sixth step of referring to the information and recognizing that the network device is not operating when there is correspondence information other than the network device recognized as operating.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a diagram showing an embodiment of a network system for implementing the present invention. The illustrated network has a LAN built around the
[0008]
The router 2a (IP address “13X.XXX.2.1”) divides the
[0009]
Similarly, the router (IP address “13X.XXX.7.1”) 2b divides the backbone network and the internal segment. That is, the network is divided into the network of IP address “13X.XXX.1. *” And the network of “13X.XXX.7. *”, And the IP address is “13X” from the network of “13X.XXX.1. *” Side. .XXX.1.9 ", but the IP address is recognized as" 13X.XXX.7.1 "from the" 13X.XXX.7. * "Network.
[0010]
Internal segments include switching devices such as switching hub (IP address “13X.XXX.2.246”) 3, bridge (IP address “13X.XXX.2.245”) 4, intelligent hub (IP address “13X.XXX.2.243”) ) 5, and further divided using a network relay device such as a non-intelligent hub (not holding an IP address) 6.
[0011]
A LAN is constructed by connecting another network relay device or
[0012]
The network shown in the figure is connected to one
[0013]
In FIG. 1, the router 2 a and the
[0014]
In the present embodiment, a device is simply added to a network configuration automatic recognition service program and a drawing display program on the
The automatic recognition service program has a function as an SNMP manager. Some network devices to be recognized include an SNMP agent and others that do not.
[0015]
First, an overview of the network configuration automatic recognition method of this embodiment will be described.
The network configuration automatic recognition service program includes three modules: an operation status detection module, a MIB access module, and an auto discovery module.
The operating status detection module is a software module that detects the operating status of each device on the network using an ICMP (Internet Control Message Protocol) echo request, and a device with an IP address that does not respond to the ICMP echo request is not operating. Therefore, it has a function of detecting the operating status of each device on the network while avoiding unnecessary communication.
The MIB access module creates an SNMP message (Get-Request PDU, Get-Next PDU, Set-Request PDU), and transmits an SNMP message or receives an SNMP message (Get-Response PDU) to obtain an MIB object value. This is a software module having a function of acquiring This MIB access module is based on the premise that each network device implements an SNMP MIB object.
The auto-discovery module is a software module having a function of detecting a network configuration, and detects the network configuration by the following process.
(1) Device operating status detection process
(2) Device information (IP address, Mac address, host name, support MIB, device type) detection process
(3) MIB object information acquisition process
(4) Connection relationship (connection port) detection process between network relay devices
(5) Non-intelligent hub prediction process
In the process (1), the operating status of the device is detected using the operating status detection module.
In the process (2), the MIB supported by the device is detected by actually accessing the MIB using the MIB access module and checking whether a response is returned or an error is returned. Whether the device type corresponds to any of router, bridge, switching hub, intelligent hub, terminal device, or printer by combining IPMIB (value of ipForwarding object), bridge MIB support, and repeater MIB support Are classified and detected (see FIG. 18).
In the process (3), the value of the MIB object used for detecting the connection relationship between devices is acquired and stored in a table (see FIGS. 14 to 17). In this case, if the information of the device (IP address) that is determined not to be operating in the process (1) is cached in the MIB object, the connection information of the device that is not operating can also be acquired (FIG. 59). reference).
In the process (4), a bridge MIB, a repeater MIB, and an interface MIB are used to detect a connection relationship between network relay devices other than the terminal device among the above devices.
The bridge MIB holds an object that stores a Mac address of a connection destination device of each port of the network relay device, and can detect a connection relationship of each network relay device in units of ports. The repeater MIB holds an object for storing a source Mac address of a frame received last among frames transmitted by an arbitrary device to which a port is connected, and sets a source Mac address at a predetermined time interval. By learning, the connection relationship of each network relay device in units of ports can be detected. However, depending on the implementation of the repeater MIB, there is a network relay device that does not update the source Mac address of the last received frame, and the Mac address cannot be learned using the repeater MIB. There is. In this case, a method of determining that the device that has changed the port status of the interface MIB, temporarily blocked the port, and has not returned an ICMP echo request response is at the connection destination of the blocked port, or a plurality of network relay devices Use the method of acquiring statistics of transmission / reception frames of interface MIB in port and testing whether there is a significant difference in statistics and determining that there is a connection relationship between ports without significant difference Thus, it is possible to detect the connection relationship of each network relay device in units of ports. In addition, connection information for each port that can be acquired from each MIB does not always store connection information for all devices on the network. Connection information for each port may be incomplete and the connection relationship between devices may not be detected. In such a case, the network relay device is classified into a plurality of network relay device models based on the connection information that can be acquired from the MIB (see FIG. 21), the connection relationship model between the devices is defined, and the connection relationship between the devices is defined. The detection conditions and the connection possibility are generalized (see FIG. 46). Due to this generalization, even if the connection information for each port is incomplete and the connection relationship between devices cannot be detected, if the connection relationship information with other devices is combined and the connection relationship detection condition is met, the device The connection relationship between each other can be detected.
Further, by combining a connection relationship model between a plurality of devices, a connection relationship that cannot be detected only with the connection relationship model between individual devices may be detected (see FIG. 55).
[0016]
In the process (5), in order to predict the connection of a non-intelligent hub, it is detected whether multiple devices are connected to the connection destination of one port of the network relay device, and multiple devices are connected Then, the connection of the non-intelligent hub is predicted by determining that at least one non-intelligent hub is operating at the connection destination of the corresponding port of the network relay device.
[0017]
The drawing display program is a program for displaying the network configuration detected by the network configuration automatic recognition service program on the screen as a GUI (see FIG. 62). The network configuration is displayed in a tree structure or displayed on the floor drawing. It is possible to adopt a display form such as.
Note that when the operating status of the device or the network configuration changes, the floor plan needs to be changed promptly accordingly. In addition, examples of the operation status of the device include changes such as start and stop. Further, the change in the network configuration includes a change in the connection destination of the device and a change in the IP address.
The drawing display program collects MIB object values regularly or irregularly according to a predetermined schedule using an auto-discovery module, and monitors changes in MIB object values to change changes in the operating status of devices and networks. A change in the configuration is detected, the change in the network configuration is automatically reflected in the network configuration drawing, and the change is notified to the user (see FIG. 60).
[0018]
FIG. 2 is a diagram showing an SNMP message format, which is a standard protocol for accessing an MIB object used for detecting a connection relationship between devices in the present embodiment.
The SNMP message includes a
Get-Request and Get-Next are messages for instructing a device having an MIB to return an MIB value, and a Get-Response is returned in response thereto.
A Set-Request is a message issued to change the MIB value. The Trap is a message for autonomously notifying the
[0019]
In the network configuration automatic recognition method of the present invention, a message other than Trap is used.
The PDU structure of the Get-Request, Get-Next, Get-Response, and Set-Request messages has a common format, and as shown in FIG. 2, a
[0020]
FIG. 3 is a diagram illustrating an Internet OID tree that is a target in the present embodiment. The MIB object 301 is stored as a tree structure in the network relay device. Among these, MIB2 information that is standard in network management is the
In the present embodiment, a method using MIB2 is shown. In addition to this, there is a method using vendor MIB (iso (1) -org (3) -dod (6) -internet (1) -private (4) -enterprise (1)) provided by each vendor. However, it is desirable to use MIB2, which is a standard protocol for network management, in order to increase the versatility of the system.
[0021]
FIG. 4 is a diagram showing the configuration of the MIB2 object that is the object of this embodiment. MIB2 currently standardizes 50 objects, and each object is MIB-2 (2) (iso (1) -org (3) -dod (6) -internet (1) -mgmt (2) -MIB -2 (2)) child objects and 401 are managed. MIB2 has group objects of system (1), interfaces (2), at (3), ip (4), ICMP (5), ..., but in this embodiment, system (1), interfaces displayed in bold An example is shown in which the network configuration is automatically recognized by using group objects of (2), ip (4), dot1dBridge (17), SNMPDot3RptrMgt (22), and printMIB (43).
[0022]
FIG. 5 is a diagram showing a configuration of a system group object that is a target in the present embodiment. As a child object 501, sysDescr (1), sysObjecTID (2),... are connected to the system group object. In the present embodiment, an example of automatically recognizing a network configuration by using sysDescr (1) displayed in bold is shown. sysDescr (1) is an object indicating entity (system) information, and the system group object must be implemented on all devices that implement MIB2. Therefore, it grasps the support status of MIB2. Is available for
[0023]
FIG. 6 is a diagram showing the configuration of the interfaces group object that is the object of this embodiment. The interfaces group object is connected with ifNumber (1), ifTable (2),... as child objects 601. ifTable (2) indicates data in a table format, and ifEntry (1) connected in a paragraph under ifTable (1) indicates individual rows of ifTable (2). Further, ifIndex (1), ifDescr (2),..., IfSpecific (22) connected in a paragraph under ifEntry (1) indicate individual columns of ifEntry (1).
In the network relay device, information for each interface (port) of the network relay device is stored in ifTable (2). From now on, it is assumed that table format data in all MIB objects is stored in accordance with the above rules. In this embodiment, ifAdminStatus (7), ifInOctets (10), ifInUcastPkts (11), ifInNUcastPkts (12), ifInDiscards (13), ifInErrors (14), ifOutOctets (16), ifOutUcastPkts (17), ifOutNUcastPkts (18) ), IfOutDiscards (19), and ifOutErrors (20), an example of automatically recognizing the network configuration is shown.
ifAdminStatus (7) is an object indicating the setting of an interface (port), and can be used to control the state of the port from the outside.
ifInOctets (10) is the number of octets received by the interface (port), ifInUcastPkts (11) is the number of unicast packets passed to the upper protocol, ifInNUcastPkts (12) is the number of non-unicast packets passed to the upper protocol, ifInDiscards (13 ) Is the number of arriving packets discarded for reasons other than errors, and ifInErrors (14) is an object indicating the number of arriving packets that were not passed to the upper protocol due to errors.
[0024]
Similarly, ifOutOctets (16) is the number of octets transferred by the interface (port), ifOutUcastPkts (17) is the number of unicast packets received from the upper protocol, ifOutNUcastPkts (18) is the number of non-unicast packets received from the upper protocol, and ifOutDiscards (19) is an object indicating the number of outgoing packets discarded for reasons other than errors, and ifOutErrors (20) is an object indicating the number of outgoing packets that were not transferred due to an error.
ifInOctets (10) to ifOutErrors (20) can be used to detect a port having a connection relationship by comparing statistical information for each port.
[0025]
FIG. 7 is a diagram showing a configuration of an ip group object that is a target in the present embodiment. As a
ipForwarding (1) is an object indicating whether the entity (system) has an IP routing function, and can be used to determine whether the network relay device is a router.
ipNetToMediaPhysAddress (2) is an object indicating a media-dependent physical address, and ipNetToMediaNetAddress (3) is an object indicating an IP address for the media-dependent physical address.
In a network relay device such as a router, cache information is stored in the ARP (Addres Resolution Protocol; IP address to hardware address conversion procedure) processing of the network segment connected to ipNetToMediaPhysAddress (2) and ipNetToMediaNetAddress (3) Therefore, it can be used to obtain the ARP table (combination of Mac address and IP address) of the segment.
[0026]
FIG. 8 is a diagram showing the configuration of the dot1dBrdige group object that is the object of this embodiment. To the dot1dBrdige group object, dot1Base (1), dot1dStp (2),... are connected as child objects 801.
In the present embodiment, an example in which the network configuration is automatically recognized by using dot1dTpFdbAddress (1) and dot1dTpFdbPort (2) displayed in bold is shown.
dot1dTpFdbAddress (1) is an object indicating the MAC address to which the bridge transmits forwarding / filtering information, and dot1dTpFdbPort (2) is an object indicating the port number of the frame in which dot1dTpFdbAddress is equal to the source address. In a network relay device that supports bridge MIB, a set of Mac addresses of devices connected to each port of the network relay device is stored in dot1dTpFdbAddress (1) and dot1dTpFdbPort (2). It can be used to acquire information on connected devices.
[0027]
FIG. 9 is a diagram showing the configuration of the snmpDot3RptrMgt group object targeted in this embodiment.
rptrBasicPackage (1), rptrMonitorPackage (2),... are connected as child objects 901 to the snmpDot3RptrMgt group object.
In the present embodiment, an example in which the network configuration is automatically recognized by using rptrAddrTrackPortIndex (2), rptrAddrTrackLastSourceAddress (3), and rptrAddrTrackSourceAddrChanges (4) displayed in bold is shown.
rptrAddrTrackPortIndex (2) is an object indicating the identifier of the port belonging to the group, rptrAddrTrackLastSourceAddress (3) is an object indicating the source address of the last received frame, and rptrAddrTrackSourceAddrChanges (4) is an object indicating the change frequency of RptrAddrTrackLastSourceAddress It is.
In the network relay device that supports the repeater MIB, the Mac address of any one device connected to each port of the network relay device is stored in rptrAddrTrackPortIndex (2) and rptrAddrTrackLastSourceAddress (3). In the network relay device implemented according to the specification of RFC (Request for Comment), the value of rptrAddrTrackLastSourceAddress (3) is updated every time a frame is received. Therefore, the network relay device learns the information of rptrAddrTrackLastSourceAddress (3). It is possible to acquire a set of Mac addresses of devices connected to each port. However, in a network relay device that is not implemented according to the RFC specification, the value of rptrAddrTrackLastSourceAddress (3) may not be updated even if a frame is received. RptrAddrTrackSourceAddrChanges (4) can be used to determine whether the network relay device is implemented according to the RFC specifications.
Since RptrAddrTrackSourceAddrChanges (4) indicates the frequency of change of rptrAddrTrackLastSourceAddress (3), the network relay device implemented according to the RFC specifications will increase over time, but the network relay not implemented according to the RFC specifications It does not vary with the equipment. In this case, rptrAddrTrackSourceAddrChanges (4) may store the number of devices detected at the end of each port.
[0028]
FIG. 10 is a diagram showing a configuration of a print MIB group object that is a target in the present embodiment. The print MIB group object is connected as a
ptrGeneralConfigChanges (1) is an object indicating the number of printer setting changes. Since the printMIB group object is implemented by a printer, it can be used to determine whether the device is a printer.
[0029]
FIG. 11 is a diagram showing a program configuration implemented in the
In the system in FIG. 1, in order to automatically recognize the network configuration from one
The network configuration automatic
The
The auto-
[0030]
FIG. 12 shows an OID (MIB used by the
The OID table 1121 holds items of
The
The
[0031]
FIG. 13 is a diagram showing a configuration of an AT (Address Translation) table 1122 created by the auto-
The AT table 1122 holds items of
[0032]
FIG. 14 is a diagram showing a configuration of a TI (Terminal Information) table 1123 created by the auto-
The TI table 1123 holds items of
The
Alive 1405 stores a flag value indicating whether the device is operating or not operating. In FIG. 14, 1 is assigned to On and 0 is assigned to Off. mib2 1406 stores a flag value indicating whether or not the device supports mib2, forwarding 1407 stores a flag value indicating whether or not the device is performing IP forwarding, and
The auto-
[0033]
FIG. 15 is a diagram showing a configuration of a PF (Port Forwarding) table 1124 created by the auto-
The PF table 1124 holds items of
The
[0034]
FIG. 16 is a diagram showing a configuration of a TS (Tree Structure) table 1125 created by the auto-
The TS table 1125 holds items of
The difference between the TS table 1125 and the PF table 1124 is that the PF table 1124 stores information on all devices operating at the connection destination of an arbitrary port of the network relay device, so that one device has a plurality of network relay devices. In the TS table 1125, only the information of the network relay device directly connected to one device is added.
[0035]
FIG. 17 is a diagram illustrating a mechanism in which the
The
[0036]
FIG. 18 is a diagram for explaining a device type detection method.
In the present embodiment, devices that are network configuration recognition targets are a
The
The
The
A
A
The combination of the value of the ipForwarding object in the ip group, the implementation status of the bridge MIB, the implementation status of the repeater MIB, and the implementation status of the printer MIB is different for each device type, and by detecting this combination, the device type can be detected. It becomes.
[0037]
FIG. 19 is a diagram for explaining a relation definition between network relay devices.
FIG. 19 shows the parent-child relationship of four different network relay devices. The network relay device at the end of the segment is defined as a root device (IP address is “13X.XXX.2.1”) 1901 connected to the backbone network. . Three network relay devices are operating at the Port1 connection destination of the
[0038]
In the example of FIG. 19, the
A set of network relay devices that have the same number of hops to the root device among any network relay device and any network relay device that operates at the connection destination of the port where the root device exists at the connection destination is a sibling. Is defined as
In the example of FIG. 19, the
[0039]
FIG. 20 is a diagram for explaining a connection detection method between network relay apparatuses using the interfaces MIB of this embodiment. As shown in the example in the figure, two different network relay devices Unit1 device (IP address is “13X.XXX.2.246”) 2001 and Unit2 device (IP address is “13X.XXX.2.243”) 2002 are operating. In this case, the value of the ifInOctets object and the value of the ifOutOctets object of the interfaces MIB at each port of the network relay device are acquired simultaneously.
The example in FIG. 20 indicates that the
The difference between the
[0040]
FIG. 21 is a diagram showing a method for classifying network devices in the present embodiment.
The network device models in this embodiment are R2101, CF2102, IF2103, SF2104, NF2105, and Term2106.
R indicates a network relay device (Router) to be divided into segments, and is a parent for all devices in the segment. Also, the network relay device classifies into CF, IF, and SF according to device connection information that can be acquired from the MIB. CF indicates a network relay device that can create a PF table (FIG. 15) that stores connection ports of all network relay devices and terminal devices without any deficiency in MIB object storage information.
IF indicates a network relay device in which there is a case where there is a defect in the storage information of the MIB object and the connection port number to other network relay devices except R cannot be detected.
SF has a deficiency in MIB object storage information, cannot detect connection ports to all other network relay devices including R, and cannot detect a network relay device that can detect connection ports to one or more terminal devices. Show. In addition, non-intelligent hubs and repeaters that do not have MIB installed are designated as NF. Devices other than network relay devices such as printers and terminal devices are termed Term.
[0041]
FIG. 22 shows the connection detection mechanism of the R-CF-CF model of this embodiment.
As an example of the R-CF-CF model, FIG. 22 shows a connection relationship between
[0042]
FIG. 23 shows an example of entries in the PF table 1124 used for connection detection of the R-CF-CF model of this embodiment. Here, the entries in the PF table 1124 for the R-CF-CF model shown in FIG. Is illustrated.
Here, connection information from CF1 (IP address “13X.XXX.2.246”) 2202 to CF2 (IP address “13X.XXX.2.243”) 2203 is stored in
Similarly,
Further, connection information from the CF2 (IP address “13X.XXX.2.243”) 2203 to R (IP address “13X.XXX.2.1”) 2201 is stored in the
The entry 2304 stores connection information from the CF 2 (IP address “13X.XXX.2.243”) 2203 to the CF 1 (IP address “13X.XXX.2.246”) 2202. From this connection information, it is possible to detect that the connection port from CF2203 to CF12202 is
In this way, in the R-CF-CF model, it is possible to detect a connection port and a parent-child relationship of a device under an arbitrary condition.
[0043]
FIG. 24 shows the connection detection mechanism of the R-CF-IF model of this embodiment.
As an example of the R-CF-IF model, FIG. 24 shows a connection relationship between
[0044]
FIG. 25 shows an example of entries in the PF table 1124 used for connection detection of the R-CF-IF model of this embodiment. Here, the entries in the PF table 1124 for the R-CF-IF model shown in FIG. Is illustrated.
Here, the
The
The
[0045]
FIG. 26 is a diagram showing a connection detection mechanism of the R-CF-SF model of the present embodiment. Here, R (IP address “13X.XXX.2.1”) is taken as an example of the R-CF-SF model. 2601
[0046]
FIG. 27 shows an example of entries in the PF table 1124 used for connection detection of the R-CF-SF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-CF-SF model shown in FIG. are doing.
The
The
The
The
Therefore, it can be detected that the connection port from the
In this way, in the R-CF-SF model, it is possible to detect the connection port of the device and the parent-child relationship under the condition that the connection information of CF2602 and Term12604 and the connection information of SF2603 and Term12604 are stored in the PF table 1124. It is.
[0047]
FIG. 28 is a diagram showing a connection detection mechanism of the R-IF-CF model of this embodiment. As an example of the R-IF-CF model,
[0048]
FIG. 29 shows an example of entries in the PF table 1124 used for connection detection of the R-IF-CF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-IF-CF model shown in FIG. are doing. Here, connection information from IF (IP address “13X.XXX.2.246”) 2802 to Term1 (IP address “13X.XXX.2.2”) 2804 is stored in
[0049]
FIG. 30 is a diagram showing a connection detection mechanism of the R-IF-IF model of this embodiment. As an example of the R-IF-IF model,
[0050]
FIG. 31 shows an example of entries in the PF table 1124 used for connection detection of the R-IF-IF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-IF-IF model shown in FIG. are doing.
Here, connection information from IF1 (IP address “13X.XXX.2.246”) 3002 to Term2 (IP address “13X.XXX.2.2”) 3005 is stored in
The
The
The
[0051]
The entry 3105 stores connection information from the IF2 (IP address “13X.XXX.2.243”) 3003 to Term1 (IP address “13X.XXX.2.102”) 3004. From this connection information, it is possible to detect that the connection port from IF 2303 to Term 13004 is
The
[0052]
Similarly, since the connection port from IF23003 to R3001 is equal to the connection port from IF23003 to Term13004, it is possible to detect that Term13004 is a device connected between R3001 and IF23003. Therefore, it is possible to detect that IF13002 is a device connected between R3001 and IF23003, and that IF13002 is a parent of IF23003. Since IF13002 is the parent of IF23003, the connection port from IF23002 to R3001 is equal to the connection port from IF23003 to IF13002, and therefore it can be detected that the connection port from IF23003 to IF13002 is port1. Further, since the connection port from IF2303 to R3001 is different from the connection port from IF23003 to Term23005, it is possible to detect that IF23003 is a device connected between R3001 and Term23005. Since IF13002 is the parent of IF23003, IF23003 is connected between IF13002 and Term23005, so the connection port from IF13002 to Term23005 and the connection port from IF13002 to IF23003 are the same.
Therefore, it is possible to detect that the connection port from IF13002 to IF23003 is
In this way, in the R-IF-IF model, the connection port of the device and the parent-child relationship under the condition that the connection information of IF13002 and Term13004, Term23005 and the connection information of IF23003, Term13004, and Term23005 are stored in the PF table 1124. Can be detected.
[0053]
FIG. 32 is a diagram illustrating a connection detection mechanism of the R-IF-SF model according to the present embodiment. As an example of the R-IF-SF model, a port of R (IP address “13X.XXX.2.1”) 3201 is illustrated. 2 and IF (IP address “13X.XXX.2.246”) 3202 have a connection relationship with
[0054]
FIG. 33 shows an example of entries in the PF table 1124 used for connection detection of the R-IF-SF model of the present embodiment. The entries in the PF table 1124 for the R-IF-SF model shown in FIG. Illustrated.
The
The entry 3302 stores connection information from the IF (IP address “13X.XXX.2.246”) 3202 to Term3 (IP address “13X.XXX.2.110”) 3206. From this connection information, it can be detected that the connection port from IF 3202 to
The
[0055]
The
In addition, connection information from SF (IP address “13X.XXX.2.246”) 3203 to Term1 (IP address “13X.XXX.2.102”) 3204 is stored in
The
The
[0056]
Further, since the connection port from
Further, since the connection port from IF 3202 to R3201 is different from the connection port from IF 3202 to
[0057]
Similarly, since the connection port from IF 3202 to
In this way, in the R-IF-SF model, the connection port of the device and the parent-child relationship under the condition that the connection information of IF 3202 and Term 13204 to Term 33206 and the connection information of
[0058]
FIG. 34 is a diagram showing a connection detection mechanism of the R-SF-CF model of this embodiment. As an example of the R-SF-CF model, a port of R (IP address “13X.XXX.2.1”) 3401 2 and NF (no IP address) 3402 have a connection relationship, and NF (no IP address)
[0059]
FIG. 35 shows an example of entries in the PF table 1124 used for connection detection of the R-SF-CF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-SF-CF model shown in FIG. are doing.
The
In addition, connection information from SF (IP address “13X.XXX.2.246”) 3403 to Term1 (IP address “13X.XXX.2.51”) 3405 is stored in
In addition, connection information from the CF (IP address “13X.XXX.2.243”) 3404 to R (IP address “13X.XXX.2.1”) 3401 is stored in the
[0060]
The
The
The
[0061]
Since the connection port from
In this way, in the R-SF-CF model, only the connection port of the device is detected under the condition that the connection information of
[0062]
FIG. 36 is a diagram showing a connection detection mechanism of the R-SF-IF model of this embodiment. As an example of the R-SF-IF model, a port of R (IP address “13X.XXX.2.1”) 3601 is shown. 2 and
[0063]
FIG. 37 shows an example of entries in the PF table 1124 used for connection detection of the R-SF-IF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-SF-IF model shown in FIG. are doing.
An
The
The entry 3703 stores connection information from SF (IP address “13X.XXX.2.246”) 3603 to Term2 (IP address “13X.XXX.2.102”) 3606. From this connection information, it is possible to detect that the connection port from SF 3603 to
[0064]
The entry 3704 stores connection information from IF (IP address “13X.XXX.2.243”) 3604 to R (IP address “13X.XXX.2.1”) 3601. From this connection information, it is possible to detect that the connection port from IF 3604 to
The
Also, entry 3706 stores connection information from IF (IP address “13X.XXX.2.243”) 3604 to Term2 (IP address “13X.XXX.2.102”) 3606. From this connection information, it is possible to detect that the connection port from IF 3604 to
Also, entry 3707 stores connection information from IF (IP address “13X.XXX.2.243”) 3604 to Term3 (IP address “13X.XXX.2.2”) 3607. Based on this connection information, it is possible to detect that the connection port from IF 3604 to
[0065]
Similarly, since the connection port from IF 3604 to
Therefore, since the connection port from IF 3604 to SF 3603 is equal to the connection port from IF 3604 to Term 13605 and
[0066]
Therefore, since the connection port from SF 3603 to IF 3604 is equal to the connection port from SF 3603 to Term3 3607, it can be detected that the connection port from SF 3603 to IF 3604 is 1. In addition, since the connection port from SF 3603 to
[0067]
FIG. 38 is a diagram showing a mechanism for connection detection of the R-SF-SF model of the present embodiment. As an example of the R-SF-SF model,R(IP address “13X.XXX.2.1”)
[0068]
FIG. 39 shows an example of entries in the PF table 1124 used for connection detection of the R-SF-SF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-SF-SF model shown in FIG. are doing.
First, connection information from SF1 (IP address “13X.XXX.2.246”) 3803 to Term2 (IP address “13X.XXX.2.2”) 3806 is stored in
The
[0069]
The
The
However, from the entry in the PF table 1124, it is not possible to determine when there is a connection relationship between
[0070]
FIG. 40 is a diagram showing a connection detection mechanism of the R-CF model of this embodiment. As an example of the R-CF model,
[0071]
FIG. 41 shows an example of entries in the PF table 1124 used for connection detection of the R-CF model of this embodiment, and exemplifies the entries in the PF table 1124 for the R-CF model shown in FIG.
In an
In addition, connection information from CF (IP address “13X.XXX.2.246”) 4002 to R (IP address “13X.XXX.2.1”) 4001 is stored. From this connection information, it is possible to detect that the connection port from the
In this way, in the R-CF model, it is possible to detect the connection port and the parent-child relationship of the device under arbitrary conditions.
[0072]
FIG. 42 is a diagram showing a connection detection mechanism of the R-IF model of this embodiment. As an example of the R-IF model,
[0073]
FIG. 43 shows an example of entries in the PF table 1124 used for connection detection of the R-IF model of this embodiment, and exemplifies entries in the PF table 1124 for the R-IF model shown in FIG.
The
The
Even if there is no connection information from R (IP address “13X.XXX.2.1”) 4201 to IF (IP address “13X.XXX.2.246”) 4202, R (IP address “13X.XXX.2.1”) If there is connection information of any device on the
In this way, in the R-IF model, it is possible to detect the connection port and the parent-child relationship of the device under arbitrary conditions.
[0074]
FIG. 44 is a diagram showing a connection detection mechanism of the R-SF model of this embodiment. As an example of the R-SF model,
[0075]
FIG. 45 shows an example of entries in the PF table 1124 used for connection detection of the R-SF model of the present embodiment, and exemplifies entries in the PF table 1124 for the R-SF model shown in FIG.
The
In addition, in the
Even when there is no connection information from R (IP address “13X.XXX.2.1”) 4401 to SF (IP address “13X.XXX.2.246”) 4402, R (IP address “13X.XXX.2.1”) If connection information of 4401 and an arbitrary device on the “13X.XXX.2. *” Network exists, that port becomes a connection port from R4401 to SF4402.
In this way, in the R-SF model, it is possible to detect the connection port and the parent-child relationship of the device under the condition that the connection information of the device connected to another segment can be acquired.
[0076]
46 and 47 are diagrams for explaining a method for detecting connection between network relay devices according to this embodiment.
46 and 47 summarize the detection conditions of the connection relations and the parent-child relations between the network relay apparatuses shown in FIGS. 22 to 45 in a table format.
Detection conditions are set for each of the
The item with “◯” indicates that detection is possible regardless of the
[0077]
FIG. 48 is a diagram showing a mechanism for detecting the connection of the CF-Term model of this embodiment. As an example of the CF-Term model,
[0078]
FIG. 49 is a diagram showing an example of entries in the PF table 1124 used for detecting the connection of the CF-Term model of this embodiment, and exemplifies entries in the PF table for the CF-Term model shown in FIG.
In an
In this case, even when an arbitrary number of devices are connected to the
In this way, in the CF-Term model, it is possible to detect the connection port and the parent-child relationship of the device under arbitrary conditions.
FIG. 50 is a diagram showing the connection detection mechanism of the IF-Term model of this embodiment. As an example of the IF-Term model,
[0079]
FIG. 51 is a diagram illustrating an example of entries in the PF table 1124 used for connection detection of the IF-Term model according to the present embodiment, and illustrates the entries in the PF table 1124 for the IF-Term model illustrated in FIG. .
The entry 5101 stores connection information from the IF (IP address “13X.XXX.2.246”) 5001 to Term1 (IP address “13X.XXX.2.102”) 5002. From this connection information, it is possible to detect that the connection port from IF 5001 to Term 15002 is
In this case, even when an arbitrary number of devices are connected to the
In this way, in the IF-Term model, it is possible to detect a connection port and a parent-child relationship of a device under an arbitrary condition.
[0080]
FIG. 52 is a diagram showing a mechanism for detecting connection of the SF-Term model of this embodiment. As an example of the SF-Term model,
FIG. 53 is a diagram showing an example of entries in the PF table 1124 used for connection detection of the IF-Term model of this embodiment, and exemplifies entries in the PF table 1124 for the SF-Term model shown in FIG.
An
In this case, when multiple devices are connected to the end of
In this way, in the SF-Term model, it is possible to detect the connection port and the parent-child relationship of a device under the condition that one device is connected to each port of the network relay device.
[0081]
FIG. 54 is a diagram for explaining a connection detection method between a network relay device and a terminal device in the network configuration automatic recognition method of this embodiment. FIG. 54 summarizes the detection conditions of the connection relationship and the parent-child relationship between the network relay device and the terminal device shown in FIGS. 48 to 53 in a table format.
Each
Items marked with “○” indicate that detection is possible regardless of the conditions for detecting connection, and items marked with “△” can be detected only when the conditions for detecting connection are satisfied. It is shown that.
[0082]
FIG. 55 is a diagram for explaining detection of a parent-child relationship by combining a plurality of models of this embodiment. FIG. 55 shows an example in which the parent-child relationship of the R-SF-CF model is detected by combining the R-CF-CF model and the R-CF-SF model.
Here, there is a connection relationship between
[0083]
FIG. 56 is a diagram showing entries in the TS table 1125 used for detecting a parent-child relationship by combining a plurality of models of the present embodiment. The R-CF-CF model and the R-CF-SF shown in FIG. The entry for detecting the R-SF-CF model from the model is illustrated.
In the R-CF-SF model, since the parent-child relationship can be detected under the condition where both CF and SF hold the connection information to Term1, CF1 (IP address “13X.XXX.2.246”) 5502 The TS table 1125 stores an entry 5601 indicating that it is the parent of SF (IP address “13X.XXX.2.243”) 5503.
In the R-CF-CF model, since the parent-child relationship can be detected under arbitrary conditions, CF1 (IP address “13X.XXX.2.246”) 5502 is CF2 (IP address “13X.XXX.2.247”). ) An
[0084]
Therefore, in FIG. 56, as an example showing a case where the connection relationship (connection port) can be detected but the parent-child relationship cannot be detected, CF2 (IP address “13X.XXX.2.247”) 5504 is SF (IP An entry 5603 indicating that it is the parent of the address “13X.XXX.2.243”) 5503 and SF (IP address “13X.XXX.2.243”) 5503 are the parents of CF2 (IP address “13X.XXX.2.247”) 5504. An
In this way, the R-SF-CF model cannot detect parent-child relationships, but by combining parent-child relationships that can be detected from the R-CF-CF model and R-CF-SF model, Can be detected.
[0085]
FIG. 57 is a diagram illustrating a method for predicting the connection of the Non Intelligent Hub according to the present embodiment. Here, as an example of predicting the connection of the Non Intelligent Hub, a unit (IP address “13X.XXX.2.246”) 5701 is used. There is a connection relationship between
[0086]
FIG. 58 is a diagram illustrating an example of entries in the TS table 1125 used for prediction of connection of the Non Intelligent Hub according to the present embodiment, and illustrates entries of the TS table 1125 for prediction of connection of the Non Intelligent Hub illustrated in FIG. are doing.
The
[0087]
Similarly, an
As a result, when a plurality of devices are connected as a child to a common port of the network relay device, and there is no other network relay device, it can be detected that at least one Non Intelligent Hub is connected. . A plurality of devices are connected as a child to a common port of the network relay device, and even if another network relay device exists, a plurality of devices are connected between the connection ports of the network relay device and the network relay device. If the connected device does not include a network relay device, it can be detected that at least one Non Intelligent Hub is connected.
[0088]
FIG. 59 is a diagram for explaining a detection method of a non-operating terminal device according to this embodiment.
In the example of FIG. 59, as an example of detecting the connection relationship and the parent-child relationship of the
[0089]
FIG. 60 is a diagram for explaining a connection destination change detection method according to the present embodiment. An arbitrary term (IP address “13X.XXX” is added to the end of
[0090]
FIG. 61 is a diagram showing an example of an entry in the TS table 1125 used for detecting the change of the connection destination according to this embodiment, and illustrates the entry for the detection of the change of the connection destination shown in FIG.
In the
Further, there is no problem even when the MIB object remains in the cache of old connection information as in the
[0091]
FIG. 62 is a diagram showing a display example of a network configuration drawing created by the drawing display program 1104 of this embodiment.
The GUI of the drawing display program 1104 includes a Network Map display portion 6201 and a Terminal
In the Network Map display portion 6201, the structure of the network segment automatically detected by executing the auto-discovery module is displayed in a tree structure as shown in the figure. When a cursor is used to display an arbitrary device in the Network Map display portion 6201 using a pointing device such as a mouse, the device display is highlighted as indicated by
[0092]
The example of FIG. 62 shows an example in which information on the corresponding device in the TI table 1123 (FIG. 14) is displayed. It is also possible to display the
The user can recognize a non-operating terminal device by referring to the information in the Terminal
[0093]
The operation of this embodiment will be described below using a flowchart.
FIG. 63 is a flowchart showing a process in which the operating
The operating
It is checked whether or not an ICMP echo reply message is received within the ping timeout (step 6304). If an echo reply message is received, True is returned to the auto-discovery module 1113 (step 6305), otherwise False. Is returned (step 6306).
After
The operating
[0094]
FIG. 64 is a flowchart showing processing in which the
The
It is checked whether or not there is an entry whose
[0095]
After step 6405 is completed, an SNMP message is created based on the PDU and transmitted (step 6406). Waiting for the reception of SNMP (Get-Response) PDU as a response to the SNMP message (step 6407). If a response is received, type conversion of the received value is performed based on the value of the
After completion of step 6408, the value of the SNMP response subjected to the type conversion is returned to the auto-discovery module 1113 (step 6409). After
[0096]
FIG. 65A is a flowchart showing processing in which the
In response to the MIB2 support status check request from the auto-
After
[0097]
FIG. 65B is a flowchart showing processing in which the
In response to the IP forwarding function check request from the auto-
If the value of ipForwarding is “1” (True) after the end of Step 6513, it is determined that the device has the IP forwarding function (Step 6514), and the value of ipForwarding is “0” (False). Determines that the device does not have an IP forwarding function (step 6515). After the end of step 6514 or
[0098]
FIG. 66 is a flowchart showing processing in which the
In response to the bridge MIB support status check request from the auto-
[0099]
FIG. 67 is a flowchart showing processing in which the
In response to the repeater MIB support status check request from the auto-
[0100]
FIG. 68 is a flowchart showing processing in which the
In response to the printer MIB support status check request from the auto-
[0101]
FIG. 69 is a flowchart showing a process of creating the AT table 1122 by the auto-
The auto-
[0102]
If the device does not support MIB2, the processing is repeated from step 6903. After the completion of
[0103]
FIG. 70 is a flowchart showing a process of creating the TI table 1123 by the auto-
[0104]
FIG. 71 is a flowchart showing a process in which the auto-
The auto-
Next, the host name of the device is resolved using the IP address as a key, and the host name is set in the Host Name item of the TI table 1123 (step 7104). Next, the operating status check process shown in FIG. 63 is executed using the IP address as a key (step 7105), and the return value of the operating status check process is set in the alive item of the TI table 1123. Next, the MIB2 support status check process shown in FIG. 65A is executed (step 7106), and the return value of the MIB2 support status check process is set in the MIB2 item of the TI table 1123.
[0105]
Next, the IP forwarding function check process shown in FIG. 65B is executed (step 7107), and the return value of the IP forwarding function check process is set in the forwarding item of the TI table 1123. Next, the bridge MIB support status check process shown in FIG. 66 is executed (step 7108), and the return value of the bridge MIB support status check process is set in the bridge item of the TI table 1123.
Next, the repeater MIB support status check process shown in FIG. 67 is executed (step 7109), and the return value of the repeater MIB support status check process is set in the repeater item of the TI table 1123. Next, the printer MIB support status check process shown in FIG. 68 is executed (step 7110), and the return value of the printer MIB support status check process is set in the printer item of the TI table 1123. Next, the device type recognition process shown in FIG. 72 is executed (step 7111), and the return value of the device type recognition process is set in the type item of the TI table 1123. After step 7111 ends, the processing is repeated from
[0106]
FIG. 72 is a flowchart illustrating processing in which the auto-
If the value of the forwarding item is “1” (True), it is checked whether the value of the bridge item is “1” (True) (Step 7204).
If the value of the forwarding item is “1” (True) and the value of the bridge item is “1” (True), the device is recognized as a router (Step 7205). If the value of the forwarding item is “1” (True) and the value of the bridge item is “0” (False), the device is recognized as a switching hub (step 7206).
If the value of the forwarding item is “0” (False) in
[0107]
If the value of the forwarding item is “0” (True), the value of the bridge item is “1” (True), and the value of the repeater item is “0” (False), the device is recognized as a bridge (Step 7209). If the value of the bridge item is “0” (False) in
If the value of the repeater item is “0” (False) in
[0108]
FIG. 73 is a flowchart showing a process of creating the PF table 1124 by the auto-
The auto-
[0109]
If the value of the repeater item is “1” (True), the processing for the repeater MIB support device shown in FIG. 75 is executed (step 7307). If the value of the bridge item is “0” (False), it is checked whether the value of the MIB2 item of the corresponding entry in the TI table 1123 is “1” (True) (step 7308). If the value of the MIB2 item is “1” (True), the process for the interface MIB support device shown in FIG. 76 is executed (step 7309). If the value of the MIB2 item is “0” (False), the processing is repeated from step 7303. After completion of any of the steps 7305, 7307, and 7309, the processing is repeated from step 7303.
[0110]
FIG. 74 is a flowchart showing processing executed by the auto-
The auto-
[0111]
Similarly, dot1dTpFdbPort is specified as the object name, SNMP Get-Next message transmission / reception processing is executed in the flow shown in FIG. 64, and the return value is set in the Source Port item of the PF table 1124 (step 7406). Next, the Mac Address item of the AT table 1122 is searched using the value of the set Destination Mac Address item as a key, and the value of the IP Address item of the hit entry is set in the Destination IP Address item of the PF table 1124 (step 7407). . Finally, a new entry is added to the PF table 1124 (step 7408), and the processing is repeated from
[0112]
FIG. 75 is a flowchart showing processing executed by the auto-
The auto-
Next, a threshold value is set in advance for the number of times of SNMP Get-Next message transmission / reception, and it is checked whether or not the number of accesses exceeds the threshold (step 7504). The forwarding information prediction process shown is executed (step 7509). If the access count does not exceed the threshold, rptrAddrTrackLastSourceAddrChanges is specified and the SNMP Get-Next message transmission / reception process shown in FIG. 64 is executed (step 7505).
[0113]
After step 7505 is completed, the value of rptrAddrTrackLastSourceAddrChanges, which is the return value of the SNMP Get-Next message transmission / reception process, is stored, and compared with the previous access value to check whether the object value has changed (step 7506). If there is no change in the value of the object, the process is temporarily stopped (Sleep process) (Step 7507), and the process is repeated from
After completion of any of the
[0114]
FIG. 76 is a flowchart showing processing in which the auto-
The auto-
[0115]
Next, it is checked whether the value of the set Destination Mac Address item has already been detected (step 7605). If it has been detected, the processing is repeated from step 7603, and if it has not been detected, rptrAddrTrackPortIndex is designated as a key. The SNMP Get-Next message transmission / reception process shown in FIG. 64 is executed, and the return value is set in the Source Port item of the PF table 1124 (step 7606).
[0116]
Next, the Mac Address item in the AT table 1122 is searched using the value of the set Destination Mac Address item as a key, and the value of the IP Address item of the hit entry is set in the Destination IP Address item of the PF table 1124 (step 7607). . Finally, a new entry is added to the PF table 1124 (step 7608), and the processing is repeated from step 7603.
[0117]
FIG. 77 is a flowchart showing a process in which the auto-
[0118]
Next, the Mac Address item in the AT table is searched using the value of the set Destination Mac Address item as a key, and the value of the IP Address item of the entry that has been hit is set in the Destination IP Address item of the PF table 1124 (step 7706). Next, a new entry is added to the PF table 1124 (step 7707). After adding one entry to the PF table 1124, the RPtrAddrTrackLastSourceAddrChanges is specified as a key and the SNMP Get-Next message transmission / reception process shown in FIG. 64 is executed (step 7708). It is checked whether the value of a certain rptrAddrTrackLastSourceAddrChanges is larger than “1” (step 7709).
When the value of rptrAddrTrackLastSourceAddrChanges is larger than “1”, processing to be performed on the MIB2 (interfaces MIB) supporting device is executed to add the remaining entries to the PF table 1124 (step 7710), and the value of rptrAddrTrackLastSourceAddrChanges is “1”. "In the following cases, the processing is repeated from
[0119]
FIG. 78 is a flowchart showing processing executed by the auto-
The auto-
Next, a connection port detection process for devices other than the administrator terminal shown in FIG. 80 is executed (step 7804). Finally, a new entry is added to the PF table 1124 (step 7805), and the processing is repeated from
[0120]
FIG. 79 is a flowchart showing a process in which the auto-
[0121]
FIG. 80 is a flowchart showing processing in which the auto-
The auto-
[0122]
After
[0123]
After step 8007 ends, the process is repeated from
When a specific port of the network relay device is blocked and an ICMP echo request response to an arbitrary device cannot be received, the corresponding port becomes a connection port.
[0124]
FIG. 81 is a flowchart showing a process in which the
The auto-
Next, the process for determining the connection between the network relay devices shown in FIG. 83 is executed (step 8104). Next, the process for determining the connection between the network relay device and the terminal device shown in FIG. 114 is executed (step 8105). Finally, the interface MIB evaluation process shown in FIG. 115 is executed (step 8106), and the process from step 8101 is repeated.
[0125]
FIG. 82 is a flowchart showing a process in which the auto-
The auto-
[0126]
FIG. 83 is a flowchart illustrating processing in which the auto-
The auto-
Next, a set of arbitrary two element combinations is selected from the elements of the Units list variable, and it is checked whether there is an unsearched combination (set to Unit1 variable and Unit2 variable) (step 8304). If there is an unsearched combination, the connection model determination process shown in FIG. 84 is executed (step 8305), and the entry addition process for the TS table 1125 shown in FIG. 102 is executed (step 8306). repeat. In the connection model determination process, the connection models related to Unit1 and Unit2 are determined in the format shown in FIGS. In the process of adding entries to the TS table 1125, the entries are stored in the TS table 1125 in a format determined for each determined connection model.
If there is no unsearched combination in
[0127]
FIG. 84 is a flowchart showing connection model determination processing when the
The auto-
[0128]
FIG. 85 is a flowchart showing network device classification processing when the
The auto-
It is checked whether the searched entry exists (step 8504). If there is an entry searched in step 8504, all network relay device entries included in the Units list variable are set as target variables in order, and it is checked whether the target variable is an unsearched one (step 8505).
[0129]
If the entry searched in step 8504 does not exist, SF is set in the Category1 variable if the value of the Source IP Address item is equal to Unit1 in
[0130]
FIG. 86 is a flowchart showing connection detection condition check processing when the
The auto-
If the Category1 variable is equal to CF and the Category2 variable is equal to CF in step 8603, the connection (R, CF, CF) connection detection condition check process shown in FIG. 87 is executed (step 8604), and the process is repeated from step 8601.
In step 8602, if the condition that the Category1 variable is equal to CF and the Category2 variable is equal to CF is not satisfied, the Category1 variable is equal to CF and the Category2 variable is equal to IF, or the Category1 variable is equal to IF, and the Category2 variable is equal to It is checked whether it is equal to CF (step 8605). In step 8605, if the Category1 variable is equal to CF and the Category2 variable is equal to IF, or the Category1 variable is equal to IF and the Category2 variable is equal to CF, the connection detection condition of the set (R, CF, IF) shown in FIG. Check processing is executed (step 8606), and the processing is repeated from step 8601.
[0131]
In step 8605, if the condition that the Category1 variable is equal to CF and the Category2 variable is equal to IF, or the Category1 variable is equal to IF and the Category2 variable is equal to CF is not satisfied, the Category1 variable is equal to CF, and the Category2 variable is It is checked whether it is equal to SF, or the Category1 variable is equal to SF and the Category2 variable is equal to CF (step 8607). In
In
[0132]
When the Category1 variable is equal to IF and the Category2 variable is equal to SF in Step 8611, or the Category1 variable is equal to SF and the Category2 variable is equal to IF, the connection detection condition of the set (R, IF, SF) shown in FIG. Check processing is executed (step 8612), and the processing is repeated from step 8601.
In step 8611, if the Category1 variable is equal to IF and the Category2 variable is equal to SF, or the Category1 variable is equal to SF and the Category2 variable is equal to IF, the Category1 variable is equal to SF, and the Category2 variable is It is checked whether it is equal to SF (step 8613). If the Category1 variable is equal to SF and the Category2 variable is equal to SF in step 8613, the connection detection condition check process for the set (R, SF, SF) shown in FIG. 101 is executed (step 8614), and the process is repeated from step 8601. If the condition that the
[0133]
FIG. 87 is a flowchart showing the connection condition check processing for the set (R, CF, CF) when the
The auto-
Similarly, an entry in which all of the entries in the PF table 1124 have a Source IP Address item value equal to a CF2 variable (equal to a Unit2 variable) and a Destination IP Address item value equal to a Root variable is searched. The value of the Source Port item is set in the CF2R variable (step 8704).
Also, from all the entries in the PF table 1124, search for an entry in which the value of the Source IP Address item is equal to the CF1 variable (equal to the Unit1 variable) and the value of the Destination IP Address item is equal to the CF2 variable (equal to the Unit2 variable) The value of the Source Port item of the corresponding entry is set in the CF1CF2 variable (step 8705).
[0134]
Similarly, from all entries of the PF table 1124, search for an entry in which the value of the Source IP Address item is equal to the CF2 variable (equal to the Unit2 variable) and the value of the Destination IP Address item is equal to the CF1 variable (equal to the Unit1 variable). Then, the value of the Source Port item of the corresponding entry is set in the CF2CF1 variable (step 8706). The value of the CF1R variable is compared with the value of the CF1CF2 (step 8707), and it is checked from the CF1 whether R and CF2 are connected to different ports (it is possible to compare the CF2R variable and the CF2CF1 variable).
If the value of CF1R variable is equal to the value of CF1CF2 in
If the value of CF1R variable is not equal to the value of CF1CF2 in
[0135]
FIG. 88 is a flowchart showing connection condition check processing for a set (R, CF, IF) when the TS table 1125 is created by the auto-
The auto-
Similarly, the value of the Source IP Address item among all entries of the PF table 1124 is the CF variable (the device recognized as CF among the Unit1 variable and Unit2 variable), and the value of the Destination IP Address item is the IF variable ( An entry equal to the device recognized as IF in the Unit1 variable and Unit2 variable is searched, and the value of the Source Port item of the corresponding entry is set in the CFIF variable (step 8804). The value of the CFR variable is compared with the CFIF value (step 8805), and it is checked whether R and IF are connected to different ports as seen from the CF. If the value of the CFR variable is equal to the value of CFIF in step 8805, the value of the IF variable is set in the Paddr variable, the value of the CF variable is set in the Caddr variable, and R-IF-CF is set in the Model variable. The IF-CF model connection detection condition check process is executed (step 8806), and the process is repeated from
If the value of the CFR variable is not equal to the value of CFIF in step 8805, the value of the CF variable is set to the Paddr variable, the value of the IF variable is set to the Caddr variable, and R-CF-IF is set to the Model variable. -CF-IF model connection detection condition check processing is executed (step 8807), and the processing is repeated from
[0136]
FIG. 89 is a flowchart showing the connection condition check process of the R-IF-CF model when the
The auto-
[0137]
Similarly, among all entries in the PF table 1124, the value of the Source IP Address item is a CF variable (a device recognized as CF among the Unit1 variable and Unit2 variable), and the value of the Source Port item is different from the CFIF variable. The entry is searched, and the value of the Destination IP Address item of the corresponding entry is set in the Target variable (step 8904). All the Target variables in Step 8904 are acquired in order, and it is checked whether the value of the Target variable is not equal to the null value (Step 8905).
If the Target variable is not equal to the NULL value in
If the Target variable is equal to the null value in
[0138]
In
If it is determined in step 8907 that the value of the IFT variable is equal to NULL, the process is repeated from step 8904. Based on the connection detection conditions shown in the R-IF-CF model of FIGS. 46 and 47, the connection relation is detected by the method shown in FIG. 28 in the flow of FIG.
[0139]
FIG. 90 is a flowchart showing the connection condition check processing of the R-CF-IF model when the
The auto-
[0140]
Similarly, out of all entries in the PF table 1124, the value of the Source IP Address item is an IF variable (a device recognized as IF in the Unit1 variable and Unit2 variable), and the value of the Destination IP Address item is a Root variable. An equal entry is searched, and the value of the Source Port item of the corresponding entry is set in the IFR variable (step 9004).
Finally, the value of the CFIF variable is set in the Pport variable and the value of the IFR variable is set in the Cport variable (step 9005), and the process is repeated from step 9001. In the R-CF-IF model of FIGS. 46 and 47, since there is no connection detection condition, the connection relationship is detected by the method shown in FIG. 24 in the flow of FIG.
[0141]
FIG. 91 is a flowchart showing connection condition check processing for a set (R, CF, SF) when the TS table 1125 is created by the auto-
The auto-
[0142]
Similarly, among all entries of the PF table 1124, the value of the Source IP Address item is a CF variable (a device recognized as CF among the Unit1 variable and Unit2 variable), and the value of the Destination IP Address item is an SF variable ( An entry equal to the device recognized as SF in the Unit1 variable and Unit2 variable) is searched, and the value of the Source Port item of the corresponding entry is set in the CFSF variable (step 9104). The value of the CFR variable is compared with the CFSF value (step 9105), and it is checked whether R and SF are connected to different ports as seen from the CF.
If the value of the CFR variable is equal to the value of CFSF in step 9105, the value of the SF variable is set in the Paddr variable, the value of the CF variable is set in the Caddr variable, and R-SF-CF is set in the Model variable. The SF-CF model connection detection condition check process is executed (step 9106), and the process is repeated from
If the value of the CFR variable and the value of CFSF are not equal in step 9105, the value of the CF variable is set in the Paddr variable, the value of the SF variable is set in the Caddr variable, and R-CF-SF is set in the Model variable. -CF-SF model connection detection condition check processing is executed (step 9107), and the processing is repeated from
[0143]
FIG. 92 is a flowchart showing the connection condition check processing of the R-SF-CF model when the
The auto-
[0144]
Similarly, the value of the Source IP Address item among all entries in the PF table 1124 is a CF variable (a device recognized as CF among the Unit1 variable and Unit2 variable), and the value of the Source Port item is different from the CFSF variable. The entry is searched, and the value of the Destination IP Address item of the corresponding entry is set in the Target variable (step 9204).
All the Target variables in
[0145]
If the Target variable is equal to the null value in step 9205, a null value is set in the Pport variable and a null value is set in the Cport variable (step 9209), and the process is repeated from step 9201. In step 9206, it is checked whether the corresponding entry exists and the value of the SFT variable is not equal to NULL (step 9207). If the value of the SFT variable is not equal to NULL in step 9207, the value of the SFT variable is set in the Pport variable, The CFSF variable value is set in the Cport variable (step 9208), and the process is repeated from step 9201.
If the value of the SFT variable is equal to NULL in step 9207, the process is repeated from
[0146]
FIG. 93 is a flowchart showing the connection condition check processing of the R-CF-SF model when the
The auto-
[0147]
Similarly, the value of the Source IP Address item among all entries in the PF table 1124 is a CF variable (a device recognized as CF among the Unit1 variable and Unit2 variable), and the value of the Source Port item is different from the CFSF variable. The entry is searched, and the value of the Destination IP Address item of the corresponding entry is set in the Target variable (step 9304).
All the Target variables in Step 9304 are acquired in order, and it is checked whether the value of the Target variable is not equal to the null value (Step 9305). If the Target variable is not equal to the NULL value in step 9305, the value of the Source IP Address item among all the entries in the PF table 1124 is recognized as SF variable (in the Unit1 variable and Unit2 variable, it is recognized as SF in FIG. 91). And the value of the Source Port item of the corresponding entry is set in the SFT variable (step 9306).
[0148]
If the Target variable is equal to the null value in step 9305, the null value is set in the Pport variable and the null value is set in the Cport variable (step 9309), and the process is repeated from
If the value of the SFT variable is equal to NULL in step 9307, the process is repeated from step 9304. Based on the connection detection conditions shown in the R-CF-SF model of FIGS. 46 and 47, in FIG. 93, the connection relation is detected by the method shown in FIG.
[0149]
FIG. 94 is a flowchart showing connection condition check processing for a set (R, IF, IF) when the TS table 1125 is created by the auto-
The auto-
[0150]
Similarly, out of all entries in the PF table 1124, the value of the Source IP Address item is an IF2 variable (unit1 variable or a device different from IF1 in the Unit2 variable), and the value of the Destination IP Address item is equal to the Root variable. The entry is searched, and the value of the Source Port item of the corresponding entry is set in the IF2R variable (step 9404).
Next, R-IF-IF model connection detection condition check processing shown in FIG. 95 is executed (step 9405), and a connection port is determined (IF1IF2 (IF2IF1)).
It is checked whether the condition that the value of the IF1IF2 variable is not equal to NULL and the condition that the value of the IF2IF1 variable is not equal to NULL are satisfied at the same time (step 9406), and it is checked whether the connection port of IF1 and IF2 has been found. If the value of the IF1IF2 variable is not equal to NULL in step 9406 and the value of the IF2IF1 variable is not equal to NULL, the value of the IF1 variable is set to the Paddr variable, the value of the IF2 variable is set to the Caddr variable, the value of IF1IF2 is set to the Pport variable, Cport The value of IF2R (IF2IF1) is set in the variable, and R-IF-IF is set in the Model variable (step 9407), and the processing is repeated from
[0151]
If the value of the IF1IF2 variable is equal to NULL in step 9406, or the value of the IF2IF1 variable is equal to NULL, the IF1R variable value and the IF2R variable value, and the IF1 variable value and the IF2 variable value are switched, as shown in FIG. The R-IF-IF model connection detection condition check process is executed (step 9408), and the connection port is determined (IF1IF2 (IF2IF1)). It is checked whether the condition that the value of the IF1IF2 variable is not equal to NULL and the condition that the value of the IF2IF1 variable is not equal to NULL are satisfied at the same time (step 9409, whether the connection port of IF1 and IF2 has been found. If the value of the variable is not equal to NULL and the value of the IF2IF1 variable is not equal to NULL, the value of the IF1 variable for the Paddr variable, the value of the IF2 variable for the Caddr variable, the value of IF1IF2 for the Pport variable, and IF2R ( IF-IF-IF is set to the value of IF2IF1) and the Model variable (step 9410), and the processing is repeated from
[0152]
FIG. 95 is a flowchart showing the connection condition check processing of the R-IF-IF model when the TS table 1125 is created by the auto-
The auto-
All the Target1 variables in step 9503 are obtained in order, and it is checked whether the value of the Target1 variable is not equal to the null value (step 9504). If the Target1 variable is not equal to the NULL value in step 9504, the value of the Source IP Address item among all the entries in the PF table 1124 is recognized as the IF2 variable (in the Unit1 variable and Unit2 variable, it is recognized as IF2 in FIG. 94). Search for an entry whose value of the Destination IP Address item is equal to the Target1 variable, and sets the value of the Source Port item of the corresponding entry to the IF2T1 variable (step 9505).
[0153]
If the Target1 variable is equal to the null value in step 9504, the null value is set in the IF1IF2 variable and the null value is set in the IF2IF1 variable (step 9512), and the process is repeated from step 9501.
[0154]
In step 9505, it is checked whether the corresponding entry exists and the condition that the value of the IF2T1 variable is not equal to NULL and the condition that the value of the IF2T1 variable is equal to the value of the IF2R variable are simultaneously satisfied (step 9506), and in step 9506, IF2T1 If the value of the variable is not equal to NULL and the value of the IF2T1 variable is equal to the value of the IF2R variable, the value of the Source IP Address item among all the entries in the PF table 1124 is the IF2 variable (Unit1 variable and Unit2 variable 94, search for an entry whose Source Port item value is not equal to the IF2R variable (the connection port from IF2 to Root in FIG. 94) in the device recognized as IF2 in FIG. 94, and the Destination IP Address item of the corresponding entry Is set to the Target2 variable (step 9507).
If the value of the IF2T1 variable is equal to NULL in step 9506, or the value of the IF2T1 variable is not equal to the value of the IF2R variable, the processing is repeated from step 9503. All the Target2 variables in step 9507 are acquired in order, and it is checked whether the value of the Target2 variable is not equal to the null value (step 9508).
[0155]
If the Target2 variable is not equal to the NULL value in step 9508, the value of the Source IP Address item among all the entries in the PF table 1124 is recognized as IF1 variable (in the Unit1 variable and Unit2 variable, it is recognized as IF1 in FIG. 94). Device), the value of the Destination IP Address item is equal to the Target2 variable, and the value of the Source Port item of the corresponding entry is set to the IF1T2 variable (step 9509).
If it is determined in step 9508 that the Target2 variable is equal to the null value, the process repeats from step 9503. In step 9509, it is checked whether a corresponding entry exists and the condition that the value of the IF1T2 variable is not equal to NULL and the condition that the value of the IF1T2 variable is not equal to the value of the IF1R variable are simultaneously satisfied (step 9510). If the value of the IF1T2 variable is not equal to NULL and the value of the IF1T2 variable is not equal to the value of the IF1R variable, the value of the IF1T2 variable is set to the IF1IF2 variable, and the value of the IF2T1 variable is set to the IF2IF1 variable (step 9511). Repeat from 9501. If it is determined in step 9510 that the value of the IF1T2 variable is equal to NULL, or the value of the IF1T2 variable is equal to the value of the IF2R variable, the processing is repeated from step 9507.
Based on the connection detection conditions shown in the R-IF-IF model of FIGS. 46 and 47, the connection relationship is detected in FIG. 95 by the method shown in FIG.
[0156]
FIG. 96 is a flowchart showing connection condition check processing for the set (R, IF, SF) when the TS table 1125 is created by the auto-
The auto-
[0157]
The R-SF-IF model connection detection condition check process shown in FIG. 97 is executed (step 9604), and it is checked whether the value of the Paddr variable set in
[0158]
97 and 98 are flowcharts showing the connection condition check process of the R-SF-IF model when the
The auto-
[0159]
Similarly, the value of the Source IP Address item among all the entries in the PF table 1124 is the IF variable (the device recognized as IF in FIG. 96 among the Unit1 variable and Unit2 variable), and the value of the Source Port item is Two entries equal to the IFR variable are searched, and the values of the Destination IP Address item of the corresponding entry are set in the Target1 variable, Target2 variable, and the Source Port item in the IFT1 variable and IFT2 variable, respectively (step 9704).
[0160]
All combinations of Target1 variable and Target2 variable in
Similarly, the value of the Source IP Address item among all the entries in the PF table 1124 is the SF variable (the device recognized as SF in FIG. 96 among the Unit1 variable and Unit2 variable), and the value of the Destination IP Address item is The entry equal to the Target2 variable is searched, and the value of the Source Port item of the corresponding entry is set in the SFT2 variable (step 9706).
If the condition of step 9705 is not satisfied, a NULL value is set for the Paddr variable, a NULL value for the Caddr variable, a NULL value for the Pport variable, a NULL value for the Cport variable, and an R-SF-IF for the Model variable (step 9713) Repeat from
[0161]
In
[0162]
If the condition of
All the Target3 variables in
[0163]
If it is determined in
If the condition of step 9711 is not satisfied, the process is repeated from
[0164]
99 and 100 are flowcharts showing the connection condition check processing of the R-IF-SF model when the TS table 1125 is created by the auto-
The auto-
[0165]
Similarly, the value of the Source IP Address item in all entries of the PF table 1124 is the IF variable (the device recognized as IF in FIG. 96 among the Unit1 variable and Unit2 variable), and the value of the Source Port item is Two entries that are not equal to the IFR variable are searched, and the value of the Destination IP Address item of the corresponding entry is set to the Target1 variable, the Target2 variable, and the value of the Source Port item to the IFT1 variable and IFT2 variable, respectively (step 9904).
[0166]
All combinations of Target1 variable and Target2 variable in step 9904 are acquired in order, and it is checked whether the value of Target1 variable is not equal to the null value and the value of Target2 variable is not equal to the null value (step 9905).
When the condition of
[0167]
Similarly, the value of the Source IP Address item among all the entries of the PF table 1124 is the SF variable (the device recognized as SF in FIG. 96 among the Unit1 variable and Unit2 variable), and the value of the Destination IP Address item is The entry equal to the Target2 variable is searched, and the value of the Source Port item of the corresponding entry is set in the SFT2 variable (step 9906).
[0168]
If the condition in
It is checked in step 9906 whether the corresponding entry exists, the value of the SFT1 variable is not equal to NULL, the value of the SFT2 variable is not equal to NULL, and the value of the SFT1 variable is equal to the value of the SFT2 variable (step 9907). If the condition of step 9907 is satisfied, the value of the Source IP Address item is an IF variable (the device recognized as IF in FIG. 96 among the Unit1 variable and Unit2 variable) among all entries of the PF table 1124. A search is made for an entry whose Source Port item value is not equal to the IFR variable (the connection port from IF to Root in FIG. 96), not equal to the IFT1 variable, and not equal to the IFT2 variable, and the Destination IP Address item of the corresponding entry is searched. The value is set to the Target3 variable, and the value of the Source Port item is set to IFT3 (step 9908). If the condition of step 9907 is not satisfied, the process is repeated from step 9804.
[0169]
All the Target3 variables in step 9908 are acquired in order, and it is checked whether the value of the Target3 variable is not equal to the null value (step 9909). If the Target3 variable is not equal to the null value in step 9909, the value of the Source IP Address item among all the entries in the PF table 1124 is recognized as SF variable (in the Unit1 variable and Unit2 variable, it is recognized as SF in FIG. 96). Search for an entry whose value of the Destination IP Address item is equal to the Target3 variable, and sets the value of the Source Port item of the corresponding entry to the SFT3 variable (step 9910). If it is determined in step 9909 that the Target3 variable is equal to the null value, the processing is repeated from step 9904.
[0170]
In step 9910, the corresponding entry exists, the SFT3 variable value is not equal to NULL, the SFT3 variable value is not equal to the SFT1 variable value, and the SFT3 variable value is not equal to the SFT2 variable value. (Step 9911) If the conditions of Step 9911 are satisfied, the IFr value is the Paddr variable, the SF variable value is the Caddr variable, the IFT1 variable value (IFT1 variable value, IFT2 variable value), Cport The value of the SFT3 variable, Model = R-IF-SF, is set as the variable (step 9912), and the process is repeated from
If the condition of step 9911 is not satisfied, the process is repeated from step 9908. Based on the connection detection condition shown in the R-IF-SF model of FIGS. 46 and 47, the connection relation is detected in the method shown in FIG. 32 in FIGS.
[0171]
FIG. 101 is a flowchart showing the connection condition check processing for the set (R, SF, SF) when the TS table 1125 is created by the auto-
[0172]
FIG. 102 is a flowchart showing entry addition processing to the TS table when the
The auto-
[0173]
If the condition of
If the condition of step 10205 is not satisfied, the entry addition processing of the network relay device with the obvious parent-child relationship and connection relationship shown in FIG. 106 is executed (step 10207), and the processing is repeated from
[0174]
FIG. 103 is a flowchart showing root entry addition processing for the TS table 1125 when the
The auto-
[0175]
FIG. 104 is a flowchart showing entry addition processing of a network relay device whose parent-child relationship and connection relationship are unknown when the TS table 1125 is created by the auto-
The auto-
[0176]
FIG. 105 is a flowchart showing entry addition processing of a network relay device in which only the parent-child relationship at the time of creation of the TS table 1125 by the auto-
The auto-
Finally, in the TS table 1125, the Terminal IP Address item is the value of the Paddr variable, the Terminal Mac Address item is the value of the Pphysaddr variable, the Terminal Port item is the value of the Pport variable, the Parent IP Address item is the value of the Caddr variable, and the Parent Mac Address item Is an entry for the value of the Cphysaddr variable, the Parent Port item is the value of the Cport variable (Step 10504), the Terminal IP Address item is the value of the Caddr variable, the Terminal Mac Address item is the value of the Cphysaddr variable, and the Terminal Port item is the Cport variable , The Parent Tip Address item is the Paddr variable value, the Parent Mac Address item is the Pphysaddr variable value, and the Parent Port item is the Pport variable value entry (Step 10505).
[0177]
FIG. 106 is a flowchart showing entry addition processing of a network relay device with a clear parent-child relationship and connection relationship when the TS table 1125 is created by the auto-
The auto-
Finally, in the TS table 1125, the Terminal IP Address item is the value of the Caddr variable, the Terminal Mac Address item is the value of the Cphysaddr variable, the Terminal Port item is the value of the Cport variable, the Parent IP Address item is the value of the Paddr variable, and the Parent Mac Address item Is added to the Pphysaddr variable value and the Parent Port item is the Pport variable value entry (step 10604).
[0178]
107 and 108 are flowcharts showing parent-child relationship determination processing when the TS table 1125 is created by the auto-
The auto-
[0179]
If the condition of
[0180]
If the condition of
If the condition of
If the condition of
[0181]
FIG. 109 is a flowchart showing a process of combining a plurality of models when the TS table 1125 is created by the auto-
The auto-
[0182]
Similarly, among all entries in the TS table 1125, the value of the Terminal IP Address item is equal to the Child2 variable (Child2 variable in FIG. 107), and the value of the Parent IP Address item is the Parent variable (Parent variable in FIG. 107). ), The value of the Terminal Port item of the corresponding entry is set in the C2Pport variable, and the value of the Parent Port item is set in the PC2port variable (step 10904).
[0183]
Similarly, in all entries of the TS table 1125, the value of the Terminal IP Address item is equal to the Child1 variable (Child1 variable in FIG. 107), and the value of the Parent IP Address item is the Child2 variable (Child2 variable in FIG. 107). ), The value of the Terminal Port item of the corresponding entry is set in the C1C2port variable, and the value of the Parent Port item is set in the C2C1port variable (step 10905).
Next, it is checked whether the value of the C1Pport variable is equal to the value of the C1C2port variable (it is also possible to compare the value of the C2Pport variable and the C2C1port variable) (step 10906), and the parent and child2 are connected to the same port as viewed from Child1 Check if you are doing.
If the condition of
[0184]
If the condition of
In the flow of FIG. 106, the parent-child relationship of the entry whose parent-child relationship is unknown is detected by the method shown in FIG. 55 (unnecessary entries are deleted from the two entries storing Child1 and Child2).
[0185]
FIG. 110 is a flowchart showing the TS table 1125 joining process when the
The auto-
[0186]
If the condition of
[0187]
FIG. 111 is a flowchart showing a process for determining a network relay device whose connection relationship is unknown when the
The auto-
If there is an unsearched Unit variable in Step 11103, the TS table 1125 is searched for an entry whose Terminal IP Address item is equal to the value of the Unit variable (Step 11104).
If there is no unsearched unit variable in step 11103, the processing is repeated from
[0188]
If there is no corresponding entry in step 11105, the value of the Unit variable is set in the Paddr variable and the Caddr variable, and the entry addition process of the network relay device with the obvious parent-child relationship and connection relationship shown in FIG. Step 11106) and Step 11103 are repeated.
If there is only an entry in which the Parent IP Address item is equal to the null value in step 11107, the processing is repeated from step 11103.
If only the entry whose Parent IP Address item is equal to the NULL value is included in Step 11107, the entry whose Terminal IP Address item is equal to the Unit variable is deleted from the TS table 1125 (Step 11108), and the processing is repeated from Step 11103.
[0189]
FIG. 112 is a flowchart showing parent-child relationship determination processing between the root and the network relay device when the
The auto-
If there is an unsearched Unit variable in Step 11203, the TS table 1125 is searched for an entry whose Terminal IP Address item is equal to the value of the Unit variable (Step 11204).
[0190]
If there is no unsearched unit variable in step 11203, the processing is repeated from
[0191]
FIG. 113 is a flowchart showing processing for determining the connection port between the root and the network relay device when the
[0192]
The auto-
[0193]
If the value of the Category variable in
Based on the connection detection conditions shown in the R-CF model, the R-IF model, and the R-SF model in FIGS. 46 and 47, the connection relationship is obtained by the method shown in FIGS. 40, 42, and 44 in the flow of FIG. Is detected.
[0194]
FIG. 114 is a flowchart showing a process for determining the connection between the network relay device and the terminal device when the
The auto-
If there is an unsearched Parent variable in step 11403, the TS table 1125 is searched for an entry whose Terminal IP Address item is equal to the value of the Parent variable or an entry whose Parent IP Address item is equal to the value of the Parent variable. Add all the values of the Terminal Port item of the entry corresponding to the variable (when the Terminal IP Address item is equal to the value of the Parent variable) or the value of the Parent Port item (when the Parent IP Address item is equal to the value of the Parent variable) (Step 11404).
[0195]
If there is no unsearched parent variable in step 11403, the processing is repeated from
[0196]
Next, using the AT table 1122, the IP addresses of the Parent variable and Child variable are converted into Mac addresses and set to the Pphysaddr variable and Cphysaddr variable, respectively (step 11406), and the Terminal IP Address item in the TS table 1125 is the Child variable. Value, Terminal Mac Address item is Cphysaddr variable value, Terminal Port item is Cport variable value, ParentIP Address item is Parent variable value, Parent Mac Address item is Pphysaddr variable value, Parent Port item is Pport variable value Add an entry (if the same entry already exists, do nothing) (step 11407), and repeat from step 11403.
[0197]
FIG. 115 is a flowchart showing a process in which the auto-
The auto-
[0198]
Next, the IP address item of the TI table 1123 is designated as a key to search for an entry equal to the Terminal variable (step 11504), and it is checked whether the value of the MIB2 item of the hit entry is “1” (True) (step 11505). ).
If the value of the MIB2 item is “0” (False), the processing is repeated from
[0199]
Similarly, for all port numbers of devices whose IP address is a Terminal variable, ifOutOctets (ifInOctets) is specified as the object name, and SNMP Get-Request message transmission / reception processing is executed with the flow shown in FIG. Is set in the statisticsT [port number] variable (step 11506).
After the end of
[0200]
FIG. 116 is a flowchart showing a process in which the drawing display program 1104 displays a network configuration drawing.
The drawing display program 1104 waits for a network configuration drawing display request (step 11601), and upon receiving the network configuration drawing display request (step 11602), executes the creation request processing of the AT table 1122 of the auto-
Next, the creation request processing of the TI table 1123 of the auto-
Next, the creation request process of the TS table 1125 of the auto-
[0201]
117 and 118 are flowcharts showing the process of drawing on the screen by the drawing display program 1104 during the network configuration drawing display process.
The drawing display program 1104 waits for a drawing process request (step 11701). When the drawing process request is received (step 11702), it starts searching for all entries in the TS table 1125 and checks whether there are unsearched entries in the TS table 1125. If there is no unsearched entry, the processing is repeated from
Next, it is checked whether or not the value of the Parent variable is equal to the NULL value (step 11704). If the value of the Parent variable is equal to the NULL value, the user is notified that the connection relation of the child variable device cannot be detected (step 11705). ), And repeats from step 11703.
[0202]
If the value of the Parent variable is not equal to the NULL value, among all the entries in the TS table 1125, there is an entry in which the value of the Parent IP Address item is equal to the Child variable and the value of the Terminal IP Address item is equal to the value of the Parent variable. Check whether it exists, and set the value of the Parent Port item in the Pport variable (step 11706).
If the corresponding entry exists, the user is notified that the parent-child relationship of the device of the Child variable cannot be detected (step 11707), and the process is repeated from step 11703. If there is no corresponding entry, the values of the Parent variable and Child variable are designated as keys, the IP Address item of the TI table 1123 is searched, and the value of the Host Name item for the parent variable of the hit entry is drawn on the screen. (Step 11708).
However, if Parent is already drawn or if the Parent variable is a null value, it is left unprocessed.
[0203]
After the end of
If the return value of the non-intelligent hub prediction processing is “1” (True), the non-intelligent hub is drawn directly under the device of the Parent variable, and the value of the Host Name item for the child variable device of the hit entry is non-intelligent. Drawing is performed immediately below the hub (step 11710). However, if the non-intelligent hub has already been drawn directly under the Parent variable device, it is not processed.
When the return value of the non-intelligent hub prediction process is “0” (False), the value of the Host Name item for the device of the Child variable of the hit entry is drawn immediately below Parent (step 11711). After any step of
The non-intelligent hub prediction process is intended to recognize that the non-intelligent hub is operating, and since the hierarchical structure and the number of stages of the non-intelligent hub cannot be predicted, the actual connection configuration is selected from the possible connection configurations. It is also possible to add a process for the user to select by, for example.
[0204]
FIG. 119 is a flowchart showing a process in which the drawing display program 1104 predicts a non-intelligent hub when drawing a network configuration drawing.
The drawing display program 1104 waits for a non-intelligent hub prediction processing request (step 11901), and as a non-intelligent hub prediction processing request, the value of the Parent IP Address item (set in the Parent variable) and the value of the Parent Port item ( (Set Pport variable) is received (step 11902), the Parent variable and the Pport variable are designated as keys, the Parent IP Address item and the Parent Port item of the TS table 1125 are searched, and it is checked whether there is a hit entry (step 11903).
If there is a hit entry, the value of the Count variable is incremented (the initial value of the Count variable is “0”) (step 11904), and the processing is repeated from step 11903.
If there is no hit entry, it is checked whether the Count variable is greater than “1” (step 11905). If the Count variable is “1” or less, False is returned (step 11906), and the Count variable is greater than “1”. In this case, True is returned (step 11907).
After completion of the arbitrary steps of
The non-intelligent hub prediction process predicts that a non-intelligent hub exists when multiple devices are directly connected to the same port of a single network relay device.
[0205]
FIG. 120 is a flowchart showing processing in which the drawing display program 1104 displays device information in response to a user event.
The drawing display program 1104 waits for a device information display request (step 12001), and when the user receives a device information display request based on a user's mouse event such as clicking a device display part on the network configuration drawing using a mouse or the like ( Step 12002) After executing the GUI display such that the display part of the device on the network configuration drawing is highlighted, the corresponding host name is acquired (Step 12003).
The acquired host name is designated as a key, the Host Name item in the TI table 1123 is searched, and the value of the IP Address item of the entry is set in the ipaddress variable (step 12004). Finally, by specifying the ipaddress variable as a key, the AT table 1122, the TI table 1123, and the TS table 1125 are searched, and the acquired entry information is drawn on the device information display portion (step 12005), and the processing from
[0206]
FIG. 121 is a flowchart showing processing in which the drawing display program 1104 monitors the change of the connection destination.
The drawing display program 1104 waits for a processing request for monitoring the connection destination change (step 12101), and receives the processing request for monitoring the connection destination change (step 12102), and executes the network configuration drawing display processing shown in FIG. Then, the detected network configuration is drawn (step 12103).
Next, the data of the TS table created when the network configuration is detected is stored in the TS_NEW area (step 12104).
Here, TS_NEW and TS_OLD (the initial value is a null value) are compared to check whether the number of entries has decreased (step 12105). However, if TS_OLD is equal to NULL value, it cannot be compared and ignored. When the number of entries is smaller than TS_OLD, TS_NEW notifies the user that the device has been stopped or disconnected (step 12106), and repeats from
[0207]
If TS_NEW does not reduce the number of entries compared to TS_OLD, check whether the entries have been replaced by TS_NEW and TS_OLD (if the value of Terminal IP Address item is equal but ParentIP Address and Parent Port are different) (step 12107), If the entry is changed between TS_NEW and TS_OLD, the user is notified that the device has moved (step 12108), and the process is repeated from
If no entry has been changed between TS_NEW and TS_OLD, TS_NEW checks whether the number of entries is greater than TS_OLD (step 12109). If the number of entries is larger than TS_OLD, TS_NEW notifies the user that a new device has been added (step 12110) and repeats from
TS_NEW is repeated from
[0208]
In the embodiment of the present invention described above, an ICMP echo request is transmitted to each network device in the network node from the administrator terminal in which the SNMP manager is installed, and the network device in the active state is detected by the response, The type of the network device existing in the network node is transmitted to the detected SNMP agent of each network device by transmitting a management information-based storage information transfer request in the network device and the returned management information-based storage information. Therefore, it is not necessary to implement special software other than SNMP, and without depending on how SNMP is implemented, physical devices in the network node can be connected from at least one management terminal. It is possible to automatically detect configurations including types. That.
[0209]
Also, a set of physical addresses of network devices connected to each port of the network device is acquired from the management information base of the network device having the bridge function as a device type, and the physical information is acquired from the management information base of the network device having the routing function. Because the correspondence information between the address and the IP address is acquired, and the connection destination device of each port of the network device having the bridge function is recognized at the IP level based on the acquired correspondence information between the physical address and the IP address. The connection relationship of each port of the network device can be detected at the IP level.
[0210]
Further, it is recognized that the network device to which a response to the ICMP echo request is returned is in operation, and that there is no network device to which no response is returned, and further, the correspondence between the physical address and the IP address is referred to and is recognized as operating. When there is correspondence information other than the network device that has been changed, the network device is recognized as being inactive, so it detects not only network devices that are in operation but also temporarily stopped network devices. be able to.
[0211]
Further, the management information base of the network device having the bridge function or the repeater function is examined to determine whether or not the information of the non-operating network device existing at the connection destination of each port of the network device is stored. In this case, the connection relation of the non-operating network device is detected based on the stored information, so even if the management information base storage information of the non-operating network device cannot be obtained, the connection relation is detected. can do.
[0212]
Further, it is detected whether or not there are a plurality of network devices having a bridge function. When a plurality of network devices are detected, a network device having an arbitrary bridge function is set as a parent device, and a connection to a specific port of the parent device is performed. First, it is further detected whether or not there is a network device having another bridge function. When it is detected that the network device is present, the network device is set as a slave device, and the configuration of the connection destination of each port of the slave device Since the connection relationship between network devices having a bridge function is recognized on a port basis, the connection relationship in the parent-child relationship can be detected.
[0213]
Also, a set of physical addresses of network devices existing at the connection destination of the parent device port connected to the child device, and a connection destination of ports excluding the ports connected to the parent device from all ports of the child device Because the difference between the set of physical addresses of the network devices to be calculated is obtained and the network device existing between the parent device and the child device is recognized, the connection relationship in the parent-child relationship or sibling relationship is detected. Can do.
[0214]
Furthermore, when it is recognized that there are multiple devices between the parent device and the child device, it detects whether all devices hold the routing function, bridge function, or repeater function, and holds all of them. If not, it is predicted that there is a non-intelligent network relay device, and therefore the presence of the non-intelligent network relay device can be detected.
[0215]
Further, the physical address held in the management information base of each of the parent device and the child device that have recognized the connection relationship is checked, and the physical address of the child device is not held in the management information base of the parent device If the physical address of the parent device does not exist in the management information base of the child device and the child device, any arbitrary address that is commonly included in the set of physical addresses of devices existing at the connection destination of the specific port of the parent device and the child device Select a device and narrow down and recognize the connection relationship between the parent device and child device based on the connection port of the parent device and child device for the selected device. Can respond.
[0216]
Also, obtain the value of the update frequency of the source physical address of the latest received frame at any port of a network device that has a repeater function, and recognize the number of devices operating at the connection destination of that port by this value In addition, when the value of the update frequency is other than “0” or “1”, the value of the source physical address of the latest received frame at the arbitrary port is acquired at predetermined time intervals, and the connection of the arbitrary port is performed. Since the physical addresses of all the existing network devices are recognized, the number of network devices connected to an arbitrary port of the network device having a repeater function and the physical addresses thereof can be detected.
[0217]
Further, the network device having the repeater function is obtained by acquiring the update frequency value of the source physical address of the latest received frame at an arbitrary port of the network device having the repeater function at predetermined time intervals, and depending on whether or not this value has changed. It is possible to detect whether or not is compliant with the RFC specification.
[0218]
In addition, for a network device having a bridge function and a network device that cannot recognize a connection relationship based on the management information base storage information of the network device having a repeater function, any port of the network device having the bridge function and the network device having the repeater function If the device has a response to the ICMP echo request packet before the block and no response after the block, the device may recognize that the device exists at the connection destination of the arbitrary port. it can.
[0219]
Further, for a network device that cannot recognize a connection relationship based on management information base storage information of a network device having a bridge function and a network device having a repeater function, a port unit of the network device having the bridge function and the network device having a repeater function. If statistics of transmission / reception frames are collected at predetermined time intervals and there is a set of ports with no significant difference, this set of ports can be recognized as a port having a connection relationship.
[0220]
Also, storage information in the management information base of the network devices in operation is collected at predetermined time intervals and stored in the storage area of the administrator terminal, and whether there is a difference between the previous collection contents and the current collection contents or not. By comparison, it is possible to detect activation, stop, change of connection destination, change of IP address, and the like of an operating network device.
[0221]
Furthermore, by creating a connection relationship model between devices based on information on the connection relationship between network devices, each network device can be connected to each other by combining each device connection relationship model or a plurality of device connection relationship models. Can be detected and the detection conditions can be presented.
[0222]
In addition, although the said embodiment was comprised according to the present SNMP protocol, when updating the SNMP protocol, it cannot be overemphasized that a detailed structure can be changed and implemented.
Further, the network device is not limited to a device connected by a wired line, but may be a device connected by a wireless line.
[0223]
【The invention's effect】
As is apparent from the above description, according to the present invention, it is not necessary to install special software other than SNMP in a network environment in which an intelligent network relay device that implements SNMP is operating, and SNMP. The physical device configuration inside the network node can be automatically detected from at least one management terminal without depending on the mounting method.
[0224]
Further, the present invention is not limited to the detection of a network device existing between a bridge and a device to which the bridge is connected, and it is possible to detect the configuration of all devices in the network, the connection relationship, and the like.
[0225]
Furthermore, even when the hubs are cascade-connected or when a plurality of terminals are connected to the connection destination of the repeater, the connection relationship can be detected.
[0226]
Moreover, even if it is a non-intelligent device that does not implement the SNMP protocol, it is possible to obtain such an effect that its existence can be predicted.
[Brief description of the drawings]
FIG. 1 is a diagram showing an embodiment of a network system targeted by a network configuration automatic recognition method according to the present invention.
FIG. 2 is a diagram showing an SNMP message format used in the network configuration automatic recognition method according to the present invention.
FIG. 3 is a diagram showing an Internet OID tree used in the network configuration automatic recognition method according to the present invention.
FIG. 4 is a diagram showing a configuration of an MIB object used in the network configuration automatic recognition method according to the present invention.
FIG. 5 is a diagram showing a configuration of a system group object used in the network configuration automatic recognition method according to the present invention.
FIG. 6 is a diagram showing a configuration of an interfaces group object used in the network configuration automatic recognition method according to the present invention.
FIG. 7 is a diagram showing a configuration of an ip group object used in the network configuration automatic recognition method according to the present invention.
FIG. 8 is a diagram showing a configuration of a dot1dBridge group object used in the network configuration automatic recognition method according to the present invention.
FIG. 9 is a diagram showing a configuration of an snmpDot3RptrMgt group object used in the network configuration automatic recognition method according to the present invention.
FIG. 10 is a diagram showing a configuration of a printmib group object used in the network configuration automatic recognition method according to the present invention.
FIG. 11 is a diagram showing a program configuration example in an administrator terminal for realizing the network configuration automatic recognition method according to the present invention.
FIG. 12 is a diagram showing a configuration of an OID table used in the network configuration automatic recognition method according to the present invention.
FIG. 13 is a diagram showing a configuration of an AT table used in the network configuration automatic recognition method according to the present invention.
FIG. 14 is a diagram showing a configuration of a TI table 1123 used in the network configuration automatic recognition method according to the present invention.
FIG. 15 is a diagram showing a configuration of a PF table 1124 used in the network configuration automatic recognition method according to the present invention.
FIG. 16 is a diagram showing the structure of a TS table used in the network configuration automatic recognition method according to the present invention.
FIG. 17 is a diagram showing an SNMP message transmission / reception mechanism in the network configuration automatic recognition method according to the present invention;
FIG. 18 is a diagram for explaining a device type detection method in the network configuration automatic recognition method according to the present invention;
FIG. 19 is a diagram showing a relation definition between network relay apparatuses when considering the network configuration automatic recognition method according to the present invention.
FIG. 20 is a diagram showing a connection detection method between network relay devices using interfaces MIB in the network configuration automatic recognition method according to the present invention.
FIG. 21 is a diagram showing a network device classification method in the network configuration automatic recognition method according to the present invention;
FIG. 22 is a diagram showing an R-CF-CF model connection detection mechanism in the network configuration automatic recognition method according to the present invention.
FIG. 23 is a diagram showing an example of entries in a PF table used for connection detection of an R-CF-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 24 is a diagram showing a connection detection mechanism of the R-CF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 25 is a diagram showing an example of entries in a PF table used for connection detection of the R-CF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 26 is a diagram showing a connection detection mechanism of the R-CF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 27 is a diagram showing an example of entries in a PF table used for connection detection of an R-CF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 28 is a diagram showing a connection detection mechanism of the R-IF-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 29 is a diagram showing an example of entries in a PF table used for connection detection of the R-IF-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 30 is a diagram showing a connection detection mechanism of the R-IF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 31 is a diagram showing an example of entries in a PF table used for connection detection of the R-IF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 32 is a diagram showing a connection detection mechanism of the R-IF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 33 is a diagram showing an example of entries in a PF table used for connection detection of the R-IF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 34 is a diagram showing a connection detection mechanism of the R-SF-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 35 is a diagram showing an example of entries in a PF table used for connection detection of an R-SF-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 36 is a diagram showing a connection detection mechanism of the R-SF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 37 is a diagram showing an example of entries in a PF table used for connection detection of the R-SF-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 38 is a diagram showing a connection detection mechanism of the R-SF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 39 is a diagram showing an example of entries in a PF table used for connection detection of the R-SF-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 40 is a diagram showing an R-CF model connection detection mechanism in the network configuration automatic recognition method according to the present invention.
FIG. 41 is a diagram showing an example of entries in a PF table used for connection detection of an R-CF model in the network configuration automatic recognition method according to the present invention.
FIG. 42 is a diagram showing an R-IF model connection detection mechanism in the network configuration automatic recognition method according to the present invention.
FIG. 43 is a diagram showing an example of entries in a PF table used for connection detection of an R-IF model in the network configuration automatic recognition method according to the present invention.
FIG. 44 is a diagram showing an R-SF model connection detection mechanism in the network configuration automatic recognition method according to the present invention;
FIG. 45 is a diagram showing an example of entries in a PF table used for connection detection of an R-SF model in the network configuration automatic recognition method according to the present invention.
FIG. 46 is a diagram for explaining a method for detecting connection between network relay devices in the network configuration automatic recognition method according to the present invention;
FIG. 47 is a diagram showing a continuation of FIG. 46;
FIG. 48 is a diagram showing a CF-Term model connection detection mechanism in the network configuration automatic recognition method according to the present invention.
FIG. 49 is a diagram showing an example of entries in a PF table used for connection detection of a CF-Term model in the network configuration automatic recognition method according to the present invention.
FIG. 50 is a diagram showing an IF-Term model connection detection mechanism in the network configuration automatic recognition method according to the present invention.
FIG. 51 is a diagram showing an example of entries in a PF table used for IF-Term model connection detection in the network configuration automatic recognition method according to the present invention.
FIG. 52 is a diagram showing a connection detection mechanism of the SF-Term model in the network configuration automatic recognition method according to the present invention.
FIG. 53 is a diagram showing an example of entries in a PF table used for connection detection of SF-Term models in the network configuration automatic recognition method according to the present invention.
FIG. 54 is a diagram for explaining a connection detection method between a network relay device and a terminal device in the network configuration automatic recognition method according to the present invention.
FIG. 55 is a diagram for explaining a parent-child relationship detection method by combining a plurality of models in the network configuration automatic recognition method according to the present invention.
FIG. 56 is a diagram showing an example of entries in a TS table used for detecting a parent-child relationship by combining a plurality of models in the network configuration automatic recognition method according to the present invention.
FIG. 57 is a diagram showing a method for predicting connection of a Non Intelligent Hub in the network configuration automatic recognition method according to the present invention.
FIG. 58 is a diagram showing an example of entries in a TS table used for prediction of Non Intelligent Hub connection in the network configuration automatic recognition method according to the present invention.
FIG. 59 is a diagram showing a detection method of a non-operating terminal device in the network configuration automatic recognition method according to the present invention.
FIG. 60 is a diagram showing a connection destination change detection method in the network configuration automatic recognition method according to the present invention;
FIG. 61 is a diagram showing an example of entries in a TS table used for detecting connection destination change in the network configuration automatic recognition method according to the present invention;
FIG. 62 is a diagram showing a network configuration drawing display example in the network configuration automatic recognition method according to the present invention.
FIG. 63 is a flowchart showing a process of transmitting and receiving an ICMP echo request by the operation status detection module in the network configuration automatic recognition method according to the present invention.
FIG. 64 is a flowchart showing a process in which the MIB access module creates a PDU and transmits / receives an SNMP message in the network configuration automatic recognition method according to the present invention.
FIG. 65 is a flowchart showing a process of checking whether or not an IP forwarding function exists in the MIB access module for checking the MIB2 support status of a device in the network configuration automatic recognition method according to the present invention.
FIG. 66 is a flowchart showing processing in which the MIB access module in the network configuration automatic recognition method according to the present invention checks the bridge MIB support status of a device.
FIG. 67 is a flowchart showing processing in which the MIB access module checks the repeater MIB support status of a device in the network configuration automatic recognition method according to the present invention.
FIG. 68 is a flowchart showing processing in which the MIB access module checks the printer MIB support status of the device in the network configuration automatic recognition method according to the present invention.
FIG. 69 is a flowchart showing a process of creating an AT table by the auto discovery module in the network configuration automatic recognition method according to the present invention.
FIG. 70 is a flowchart showing a process of creating a TI table by the auto discovery module in the network configuration automatic recognition method according to the present invention.
FIG. 71 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention acquires values of each item of the TI table when creating the TI table.
FIG. 72 is a flowchart showing a process in which the auto-discovery module recognizes a device type when creating a TI table in the network configuration automatic recognition method according to the present invention.
FIG. 73 is a flowchart showing a process of creating a PF table by the auto discovery module in the network configuration automatic recognition method according to the present invention.
FIG. 74 is a flowchart showing processing executed by the auto-discovery module for the bridge MIB support device when creating the PF table in the network configuration automatic recognition method according to the present invention.
FIG. 75 is a flowchart showing processing executed by the auto-discovery module for the repeater MIB support device when creating the PF table in the network configuration automatic recognition method according to the present invention.
FIG. 76 is a flowchart showing a process in which the auto-discovery module learns forwarding information when creating a PF table in the network configuration automatic recognition method according to the present invention.
FIG. 77 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention predicts forwarding information when creating a PF table.
FIG. 78 is a flowchart showing processing executed by the auto-discovery module for the MIB 2 (interfaces MIB) support device when creating the PF table in the network configuration automatic recognition method according to the present invention.
FIG. 79 is a flowchart showing a process of detecting a connection port of an administrator terminal when the auto discovery module in the network configuration automatic recognition method according to the present invention creates a PF table.
FIG. 80 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention detects a connection port of a device other than the administrator terminal when creating a PF table.
FIG. 81 is a flowchart showing a process of creating a TS table by the auto-discovery module in the network configuration automatic recognition method according to the present invention.
FIG. 82 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines a root device when creating a TS table.
FIG. 83 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines a connection between network relay devices when creating a TS table.
FIG. 84 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines a connection model when creating a TS table.
FIG. 85 is a flowchart showing a process of classifying network devices when the auto-discovery module in the network configuration automatic recognition method according to the present invention creates a TS table.
FIG. 86 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks connection detection conditions when creating a TS table.
FIG. 87 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection conditions of a set (R, CF, CF) when creating a TS table.
FIG. 88 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection (R, CF, IF) connection detection conditions when creating a TS table.
FIG. 89 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection condition of the R-IF-CF model when creating a TS table.
FIG. 90 is a flowchart showing processing in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks connection detection conditions of the R-CF-IF model when creating a TS table.
FIG. 91 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection conditions of a set (R, CF, SF) when creating a TS table.
FIG. 92 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection condition of the R-SF-CF model when creating a TS table.
FIG. 93 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection condition of the R-CF-SF model when creating a TS table.
FIG. 94 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks a connection (R, IF, IF) connection detection condition when creating a TS table.
FIG. 95 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection condition of the R-IF-IF model when creating a TS table.
FIG. 96 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection conditions of a set (R, IF, SF) when creating a TS table.
FIG. 97 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection condition of the R-SF-IF model when creating a TS table.
FIG. 98 is a flowchart showing a continuation of FIG. 97;
FIG. 99 is a flowchart showing processing in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks connection detection conditions of the R-IF-SF model when creating a TS table.
FIG. 100 is a flowchart showing a continuation of FIG. 99;
FIG. 101 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention checks the connection detection conditions of a set (R, SF, SF) when creating a TS table.
FIG. 102 is a flowchart showing processing for adding an entry to the TS table when the auto discovery module in the network configuration automatic recognition method according to the present invention creates the TS table.
FIG. 103 is a flowchart showing a process of adding a Root entry to the TS table when the auto discovery module in the network configuration automatic recognition method according to the present invention creates the TS table.
FIG. 104 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention adds a network relay device whose parent-child relationship and connection relationship are unknown when a TS table is created.
FIG. 105 is a flowchart showing a process of adding a network relay device in which only the parent-child relationship is unknown when the auto-discovery module in the network configuration automatic recognition method according to the present invention creates a TS table.
FIG. 106 is a flowchart showing a process of adding a network relay device whose parent-child relationship and connection relationship are obvious when the auto-discovery module in the network configuration automatic recognition method according to the present invention creates a TS table.
FIG. 107 is a flowchart showing a process in which the auto-discovery module determines the parent-child relationship when creating the TS table in the network configuration automatic recognition method according to the present invention.
108 is a flowchart showing a continuation of FIG. 107. FIG.
FIG. 109 is a flowchart showing a process of combining a plurality of models when the auto discovery module in the network configuration automatic recognition method according to the present invention creates a TS table.
FIG. 110 is a flowchart showing a process of combining entries in the TS table when the auto discovery module in the network configuration automatic recognition method according to the present invention creates the TS table.
FIG. 111 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines a network relay device whose connection relationship is unknown when a TS table is created.
FIG. 112 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines the parent-child relationship between the Root and the network relay device when creating the TS table.
FIG. 113 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines the connection port between the root and the network relay device when creating the TS table.
FIG. 114 is a flowchart showing processing in which the auto-discovery module in the network configuration automatic recognition method according to the present invention determines the connection between the network relay device and the terminal device when the TS table is created.
FIG. 115 is a flowchart showing a process in which the auto-discovery module in the network configuration automatic recognition method according to the present invention evaluates an interface MIB when creating a TS table.
FIG. 116 is a flowchart showing a process of displaying a network configuration drawing by the drawing display program in the network configuration automatic recognition method according to the present invention.
FIG. 117 is a flowchart showing a process of drawing on the screen by the drawing display program in the network configuration automatic recognition method according to the present invention during the network configuration drawing display process;
118 is a flowchart showing a continuation of FIG. 117. FIG.
FIG. 119 is a flowchart showing processing for predicting a non-intelligent hub when a drawing display program in a network configuration automatic recognition method according to the present invention draws a network configuration drawing;
FIG. 120 is a flowchart showing a process of displaying device information by a user event by a drawing display program in the network configuration automatic recognition method according to the present invention.
FIG. 121 is a flowchart showing processing of monitoring a connection destination change by a drawing display program in the network configuration automatic recognition method according to the present invention.
[Explanation of symbols]
DESCRIPTION OF
Claims (17)
SNMPマネージャを実装した管理者端末からネットワークノード内の各ネットワーク機器に対してICMPエコーリクエストを送信し、その応答によって稼動状態のネットワーク機器を検出する第1のステップと、検出した各ネットワーク機器のSNMPエージェントに対し、IPMIB、ブリッジMIB、リピータMIB、プリンタMIBのサポートの有無を問い合わせるためのSNMPメッセージをそれぞれ作成して送信し、SNMPメッセージの送受信の成否および返信された管理情報ベースの格納情報の組合せによってネットワークノード内に存在するネットワーク機器のネットワークノード内での機能を表す機器種別を検出する第2のステップとを備えることを特徴とするネットワーク構成の自動認識方法。A method of automatically recognizing a device configuration in a network system in which at least one intelligent network device that implements an SNMP agent and a management information base exists in a network node,
A first step of transmitting an ICMP echo request from an administrator terminal equipped with an SNMP manager to each network device in the network node and detecting an active network device based on the response, and an SNMP of each detected network device to the agent, IPMIB, bridge MIB, repeater MIB, the SNMP message for inquiring the existence of support printer MIB creates and sends each combination of the management information base storing information success and replies send and receive SNMP messages And a second step of detecting a device type representing a function in the network node of the network device existing in the network node.
前記SNMPマネージャを実装した管理者端末が、ネットワークノード内の各ネットワーク機器に対してICMPエコーリクエストを送信し、その応答によって稼動状態のネットワーク機器を検出する第1の手段と、検出した各ネットワーク機器のSNMPエージェントに対し、検出した各ネットワーク機器のSNMPエージェントに対し、IPMIB、ブリッジMIB、リピータMIB、プリンタMIBのサポートの有無を問い合わせるためのSNMPメッセージをそれぞれ作成して送信し、SNMPメッセージの送受信の成否および返信された管理情報ベースの格納情報の組合せによってネットワークノード内に存在するネットワーク機器のネットワークノード内での機能を表す機器種別を検出する第2の手段とを備えることを特徴とするネットワーク構成の自動認識システム。A system for automatically recognizing a device configuration in a network system in which at least one intelligent network device having an SNMP agent and a management information base is present in a network node from an administrator terminal in which an SNMP manager is installed,
First means for detecting the network device in an operating state by the response of the ICMP echo request sent to the network device in the network node by the administrator terminal mounted with the SNMP manager, and each detected network device to SNMP agent, to the SNMP agent of the network devices detected, IPMIB, bridge MIB, repeater MIB, the SNMP message for inquiring whether a printer MIB support creates and sends each of the transmit and receive SNMP messages And a second means for detecting a device type representing a function in the network node of the network device existing in the network node by a combination of success / failure and the stored management information-based storage information returned. Automatic network configuration recognition system.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000022749A JP3696023B2 (en) | 2000-01-31 | 2000-01-31 | Network configuration automatic recognition method and system having intelligent network relay device |
US09/772,709 US7698396B2 (en) | 2000-01-31 | 2001-01-29 | Method of automatically recognizing network configuration including intelligent packet relay equipment, method of displaying network configuration chart, and system thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000022749A JP3696023B2 (en) | 2000-01-31 | 2000-01-31 | Network configuration automatic recognition method and system having intelligent network relay device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001217832A JP2001217832A (en) | 2001-08-10 |
JP3696023B2 true JP3696023B2 (en) | 2005-09-14 |
Family
ID=18549007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000022749A Expired - Fee Related JP3696023B2 (en) | 2000-01-31 | 2000-01-31 | Network configuration automatic recognition method and system having intelligent network relay device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3696023B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4546442B2 (en) * | 2006-11-29 | 2010-09-15 | Necフィールディング株式会社 | Network management system, network management method, and program |
WO2008111212A1 (en) * | 2007-03-15 | 2008-09-18 | Fujitsu Limited | Information processing device, and node position acquiring method and program |
JP2009194675A (en) * | 2008-02-15 | 2009-08-27 | Fujitsu Ltd | Network configuration management program, network configuration management apparatus, and network configuration management method |
WO2011074362A1 (en) | 2009-12-18 | 2011-06-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, program, and system for forming configuration information of configuring element of system containing configuring element wherein acquisition of configuration information is limited |
JP5370702B2 (en) | 2009-12-18 | 2013-12-18 | 株式会社村田製作所 | Thin film formation method |
JP5640795B2 (en) * | 2011-02-15 | 2014-12-17 | 富士通株式会社 | Device management system, configuration information management program, identification information collection program, identification information providing program, and device management method |
US20140032753A1 (en) * | 2011-05-16 | 2014-01-30 | Hitachi, Ltd. | Computer system and node search method |
JP5723334B2 (en) * | 2012-08-30 | 2015-05-27 | 日本電信電話株式会社 | Network topology estimation method and topology estimation apparatus |
JP6838444B2 (en) | 2017-03-17 | 2021-03-03 | 富士通株式会社 | Information processing device, information processing device control method and information processing device control program |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5297138A (en) * | 1991-04-30 | 1994-03-22 | Hewlett-Packard Company | Determining physical topology across repeaters and bridges in a computer network |
JPH05175965A (en) * | 1991-12-19 | 1993-07-13 | Hitachi Cable Ltd | Multiport relay device and network management station |
JP2590734B2 (en) * | 1994-04-30 | 1997-03-12 | 日本電気株式会社 | LAN connection device discovery device |
JP3064813B2 (en) * | 1994-07-26 | 2000-07-12 | 松下電工株式会社 | Network management device |
JPH09186716A (en) * | 1995-12-28 | 1997-07-15 | Sumitomo Electric Ind Ltd | Network topology recognition method and network topology recognition device |
JP3474077B2 (en) * | 1997-04-21 | 2003-12-08 | 株式会社日立製作所 | Network operation management system, management manager, management console, storage medium, and network operation management method |
JP3561129B2 (en) * | 1997-11-10 | 2004-09-02 | 三菱電機株式会社 | Network monitoring device and method for recognizing connected terminal of repeater hub |
JP3782600B2 (en) * | 1998-03-12 | 2006-06-07 | キヤノン株式会社 | Network device management apparatus, network device management method, and recording medium |
JP3392343B2 (en) * | 1998-03-12 | 2003-03-31 | 日本電信電話株式会社 | Traffic data correction method, traffic measurement system, and computer network |
JP3617770B2 (en) * | 1998-05-29 | 2005-02-09 | 株式会社日立製作所 | Network management system and network management method |
JPH11346224A (en) * | 1998-06-01 | 1999-12-14 | Hitachi Ltd | Network management system and method |
-
2000
- 2000-01-31 JP JP2000022749A patent/JP3696023B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001217832A (en) | 2001-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7698396B2 (en) | Method of automatically recognizing network configuration including intelligent packet relay equipment, method of displaying network configuration chart, and system thereof | |
CN110661669B (en) | Network topology automatic discovery method of network equipment based on ICMP, TCP and UDP protocols | |
US6795403B1 (en) | Automatic discovery of switch devices in a network | |
US6377987B1 (en) | Mechanism for determining actual physical topology of network based on gathered configuration information representing true neighboring devices | |
US5835720A (en) | IP discovery apparatus and method | |
US8356093B2 (en) | Apparatus and system for estimating network configuration | |
US7069343B2 (en) | Topology discovery by partitioning multiple discovery techniques | |
US6697338B1 (en) | Determination of physical topology of a communication network | |
US20070115967A1 (en) | Dynamic discovery of ISO layer-2 topology | |
US6898183B1 (en) | Method of determining a data link path in a managed network | |
US20040008727A1 (en) | Network resource management in a network device | |
US20080114581A1 (en) | Root cause analysis approach with candidate elimination using network virtualization | |
US9544217B2 (en) | Identification of paths in a network of mixed routing/switching devices | |
US9537760B2 (en) | Executing loops | |
EP2984800B1 (en) | Identifying an egress port of a device | |
US20070201385A1 (en) | Apparatus, method, and computer product for topology-information collection | |
CN107733713B (en) | Method, system, device and storage medium for acquiring network topology in hybrid network | |
WO2014169969A1 (en) | Identification of the paths taken through a network of interconnected devices | |
US20020124079A1 (en) | System for inference of presence of network infrastructure devices | |
US20140314086A1 (en) | Querying a traffic forwarding table | |
JP3696023B2 (en) | Network configuration automatic recognition method and system having intelligent network relay device | |
US20040215781A1 (en) | Techniques for determining device connectivity in a network using protocol-specific connectivity information | |
US7369513B1 (en) | Method and apparatus for determining a network topology based on Spanning-tree-Algorithm-designated ports | |
US7843854B2 (en) | Network loop detection using known static addresses | |
US7870246B1 (en) | System, method, and computer program product for platform-independent port discovery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040723 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040921 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050404 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050527 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050613 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050628 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050628 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080708 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110708 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110708 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140708 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |