TOP > 国内特許検索 > ネットワーク構成情報取得方法および装置 > 明細書

明細書 :ネットワーク構成情報取得方法および装置

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第5234544号 (P5234544)
公開番号 特開2010-097273 (P2010-097273A)
登録日 平成25年4月5日(2013.4.5)
発行日 平成25年7月10日(2013.7.10)
公開日 平成22年4月30日(2010.4.30)
発明の名称または考案の名称 ネットワーク構成情報取得方法および装置
国際特許分類 G06F  13/00        (2006.01)
H04L  12/24        (2006.01)
FI G06F 13/00 353B
H04L 12/24
請求項の数または発明の数 7
全頁数 19
出願番号 特願2008-265461 (P2008-265461)
出願日 平成20年10月14日(2008.10.14)
審査請求日 平成23年8月9日(2011.8.9)
特許権者または実用新案権者 【識別番号】503359821
【氏名又は名称】独立行政法人理化学研究所
発明者または考案者 【氏名】吉田 充
個別代理人の代理人 【識別番号】100100549、【弁理士】、【氏名又は名称】川口 嘉之
【識別番号】100106622、【弁理士】、【氏名又は名称】和久田 純一
【識別番号】100089244、【弁理士】、【氏名又は名称】遠山 勉
審査官 【審査官】寺谷 大亮
参考文献・文献 国際公開第2006/118203(WO,A1)
特開2001-320393(JP,A)
特表2002-533017(JP,A)
K. de GRAAF, D. ROMASCANU, D. McMASTER, K. McCLOGHRIE,Definitions of Managed Objectsfor IEEE 802.3 Repeater Devicesusing SMIv2,Request for Comments 2108,IETF,1997年 2月,p.75-78,URL,http://tools.ietf.org/pdf/rfc2108.pdf
調査した分野 G06F 13/00
H04L 12/24
特許請求の範囲 【請求項1】
複数のネットワーク機器からなるネットワークの接続関係を、所定のネットワーク機器をルートノードとする木構造として取得するネットワーク構成情報取得方法であって、
それぞれのネットワーク機器から、そのネットワーク機器が有するポートと、各ポートの先に接続されているネットワーク機器とに関する情報を取得するポート情報取得工程と、木構造において任意の部分木の大きさは当該部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの接続関係を決定するネットワーク構成解析工程と
を含むネットワーク構成情報取得方法であって、
前記ルートノードがその先に接続されているポートを上流側ポート、その他のポートを下流側ポートと定義したときに、
前記ネットワーク構成解析工程は、
接続関係が既に決定されたネットワーク機器の下流側ポートの先に接続されているネットワーク機器のうち下流側機器数が最も多いものを、前記接続関係が決定されたネットワーク機器の下流側ポートに直接接続されているネットワーク機器であると判断して接続関係を決定する工程を、前記ルートノードを最初に接続関係が決定されたネットワーク機器として繰り返し実行する
ことを特徴とするネットワーク構成情報取得方法。
【請求項2】
接続関係が既に決定されたネットワーク機器が複数の下流側ポートを有する場合に、少なくとも2個以上の下流側ポートについて、下流側の接続関係の決定を並列して実行する
ことを特徴とする請求項に記載のネットワーク構成情報取得方法。
【請求項3】
複数のネットワーク機器からなるネットワークの接続関係を、所定のネットワーク機器をルートノードとする木構造として取得するネットワーク構成情報取得方法であって、
それぞれのネットワーク機器から、そのネットワーク機器が有するポートと、各ポートの先に接続されているネットワーク機器とに関する情報を取得するポート情報取得工程と、木構造において任意の部分木の大きさは当該部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの接続関係を決定するネットワーク構成解析工程と
を含むネットワーク構成情報取得方法であって、
前記ルートノードがその先に接続されているポートを上流側ポート、その他のポートを下流側ポートと定義したときに、
前記ネットワーク構成解析工程は、
前記ルートノードを特定した後に、
前記ルートノード以外のネットワーク機器について、下流側機器数が多いネットワーク機器から順番に選択して、接続関係が決定済みのネットワーク機器のうち、前記選択されたネットワーク機器がその先に接続されているポートを有するネットワーク機器を、前記選択されたネットワーク機器の上流側ポートに直接接続される機器として特定して接続関係を決定していくものであり、
前記選択されたネットワーク機器がその先に接続されているポートを有するネットワーク機器が複数ある場合には、そのポートの先に接続されているネットワーク機器の数が最も少ないネットワーク機器を、前記選択されたネットワーク機器の上流側ポートに直接接続される機器として特定する
ことを特徴とするネットワーク構成情報取得方法。
【請求項4】
複数のネットワーク機器からなるネットワークの接続関係を、所定のネットワーク機器をルートノードとする木構造として取得するネットワーク構成情報取得方法であって、
それぞれのネットワーク機器から、そのネットワーク機器が有するポートと、各ポートの先に接続されているネットワーク機器とに関する情報を取得するポート情報取得工程と、木構造において任意の部分木の大きさは当該部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの接続関係を決定するネットワーク構成解析工程と
を含むネットワーク構成情報取得方法であって、
前記ルートノードがその先に接続されているポートを上流側ポート、その他のポートを下流側ポートとしたときに、
前記ネットワーク構成解析工程は、
前記ルートノードを特定した後に、
前記複数のネットワーク機器のうち、下流側ポートを持たないネットワーク機器をエッジノードとして特定し、
エッジノード以外のネットワーク機器について、下流側機器数が少ないネットワーク機器から順番に選択して、当該選択されたネットワーク機器の下流側ポートに接続されるネットワーク機器のうち、接続関係が未決定のネットワーク機器を、前記選択されたネットワーク機器の下流側ポートに直接接続される機器として特定して接続関係を決定していく
ことを特徴とするネットワーク構成情報取得方法。
【請求項5】
複数のネットワーク機器からなるネットワークの接続関係を、所定のネットワーク機器をルートノードとする木構造として取得するネットワーク構成情報取得方法であって、
それぞれのネットワーク機器から、そのネットワーク機器が有するポートと、各ポートの先に接続されているネットワーク機器とに関する情報を取得するポート情報取得工程と、木構造において任意の部分木の大きさは当該部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの接続関係を決定するネットワーク構成解析工程と
を含むネットワーク構成情報取得方法であって、
前記ルートノードがその先に接続されているポートを上流側ポート、その他のポートを下流側ポートとしたときに、
前記ネットワーク構成解析工程は、
前記ルートノードを特定した後に、
前記複数のネットワーク機器のうち、下流側ポートを持たないネットワーク機器をエッジノードとして接続関係を決定した後に、
下流側ポートの接続関係が決定されたネットワーク機器以外のネットワーク機器を対象に、下流側機器が全て既に下流側ポートの接続関係が決定されたネットワーク機器であるネットワーク機器を探し、そのネットワーク機器についての接続関係を決定する工程を、繰り返し実行するものであり、
下流側機器が全て既に下流側ポートの接続関係が決定されたネットワーク機器であるネッ
トワーク機器が複数ある場合、下流側機器数が最も多いものを特定する
ことを特徴とするネットワーク構成情報取得方法。
【請求項6】
前記ネットワーク機器はL2スイッチであり、
各L2スイッチが有するポートとの各ポートの先に接続されているL2スイッチに関する情報は、SNMPによって取得される
ことを特徴とする請求項1~のいずれかに記載のネットワーク構成情報取得方法。
【請求項7】
複数のネットワーク機器からなるネットワークの構成を、所定のネットワーク機器をルートノードとする木構造として取得するネットワーク構成情報取得装置であって、
それぞれのネットワーク機器から、そのネットワーク機器が有するポートと、各ポートの先に接続されているネットワーク機器とに関する情報を取得するポート情報取得手段と、木構造において任意の部分木の大きさは当該部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの接続関係を決定するネットワーク構成解析手段と
を有するネットワーク構成情報取得装置であって、
前記ルートノードがその先に接続されているポートを上流側ポート、その他のポートを下流側ポートと定義したときに、
前記ネットワーク構成解析手段は、
接続関係が既に決定されたネットワーク機器の下流側ポートの先に接続されているネットワーク機器のうち下流側機器数が最も多いものを、前記接続関係が決定されたネットワーク機器の下流側ポートに直接接続されているネットワーク機器であると判断して接続関係を決定する処理を、前記ルートノードを最初に接続関係が決定されたネットワーク機器として繰り返し実行する
ことを特徴とするネットワーク構成情報取得装置。
発明の詳細な説明 【技術分野】
【0001】
本発明は、既存ネットワークの接続関係を解析する技術に関する。
【背景技術】
【0002】
近年のコンピュータネットワークは大規模化しており、数十、数百のネットワーク機器が接続されている。このようなコンピュータネットワークを的確に管理するためには、最新のネットワーク構成を管理者が把握している必要がある。
【0003】
ネットワーク構成を管理するための最も原始的な方法は、ネットワーク構成図を手作業で作成し、ネットワーク構成に変更を加えるたびに構成図の方も更新する方法である。この方法は、構成図の更新が煩わしいだけでなく、構成図の更新を忘れた場合に最新の構成が把握できないといった問題や、現在の構成図が最新の構成を正しく反映しているか確認できないといった問題がある。
【0004】
そこで、ネットワークの構成を自動的に取得できることが望まれる。このようなネットワーク構成を自動的に取得する技術はいくつか提案されている。

【特許文献1】特開2004-86729号公報
【特許文献2】特開2003-124932号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、現状のネットワークの接続情報の取得は不正確であるという問題がある。そこで、本発明は、ネットワークの接続情報を正確に取得することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、複数のネットワーク機器からなるネットワークの接続関係を、所定のネットワーク機器をルートノードとする木構造として決定するネットワーク構成情報取得方法である。本発明は、木構造においては、任意の部分木の大きさはその部分木を含む上流の部分木の大きさよりも小さいことを利用してネットワークの構成を決定することを特徴とする。
【0007】
本発明に係るネットワーク構成情報取得方法では、大別して、木構造の上流側から順に接続関係を決定していく方法と、下流側から順に接続関係を決定していく方法の2通りの方法を採用することができる。
【0008】
なお、本明細書においては、「上流」「下流」の語を次の意味で用いる。すなわち、所定のネットワーク機器を木構造におけるルートノードとして、そのルートノードが接続されている方向を「上流」、ルートノードが接続されていない方向(すなわち、エッジノードの方向)を「下流」と定義する。また、ネットワーク機器が有するポートに関して、ルートノードがその先に接続されているポートを「上流側ポート」、その他のポートを「下流側ポート」と称する。
【0009】
本発明の第1態様は、木構造の上流側から順番に接続関係を決定する。まず、全てのネットワーク機器から、各機器が有するポートと、各ポートの先に接続されているネットワーク機器に関する情報を取得する。なお、「ポートの先に接続されている」というのは、ポートに直接接続されている場合と、他のネットワーク機器を介して接続されている場合
の両方を含むものとする。
【0010】
そして、次のようにして上流側のネットワーク機器から順に接続関係を決定する。初めに、ルートノードを接続関係が決定されたネットワーク機器として扱う。これ以降は、接続関係が既に決定されたネットワーク機器が備える下流側ポート(以下、着目ポートと呼ぶ)の先に接続されているネットワーク機器のうち、下流側ポートの先に接続されている機器(以下、下流側機器と呼ぶ)の数が最も多い機器を、当該着目ポートに直接接続されているネットワーク機器であると判断するという処理を繰り返し実行する。つまり、上流側から着目ポートに直接接続されているネットワーク機器はどれであるかを決定していく。この繰り返し処理によって、全てのネットワーク機器の接続関係を決定できる。
【0011】
なお、どのような順序で着目ポートを選択していくかは任意である。深さ優先や幅優先など種々の方法を採用可能である。また、接続関係が決定されたネットワーク機器が複数の下流側ポートを有する場合、それぞれのポートについて並列に(同時に)接続関係の決定処理を実行することも好適である。
【0012】
本態様では、木構造において任意の部分木の大きさはそれを含む部分木の大きさよりも小さいこと、逆に言うと、任意の部分木の大きさはその部分木に含まれる部分木よりも大きいことを利用している。本態様では、この原理を応用して、接続関係が決定されていないネットワーク機器のうち、自らをルートとする部分木の大きさが最も大きいものが、それらの機器のうちで最も上流側に位置することを利用している。
【0013】
本態様に係るネットワーク構成情報取得方法によれば、複数のネットワーク機器からなるネットワークの接続関係を、確実に木構造として決定することが可能となる。また、上流側から決定することで、複数のポートについて処理を並列して行うことが可能であるため、処理を高速に行うことも可能である。
【0014】
本発明の第2態様は、第1態様と同様に木構造の上流側から順番に接続関係を決定する。本態様では、第1態様と同様に各ネットワーク機器のポートに関する情報を取得した後、下流側機器の数が多い機器から順番に、その上流側ポートに直接接続される機器を特定して接続関係を決定していく。接続関係が未決定の機器のうち下流側機器数が最大のものは、接続関係が決定済みの機器の下流側ポートに上流側ポートが直接接続されるものであるため、その接続関係を決定できる。
【0015】
本態様では、部分木の大きさはそれを含む上流側の部分木の大きさよりも小さいことの応用として、ルートノードの下流側機器数が最も多いということを利用している。つまり、上流側からネットワーク構成(木構造)を決定していく際に、接続関係が未決定な機器から構成される木構造(複数の木構造となる場合はそのいずれか)のルートノードは、下流側機器が最も多い機器であるということを利用している。本態様に係るネットワーク構成情報作成方法によっても、複数のネットワーク機器からなるネットワークの接続関係を、確実に木構造として決定することが可能となる。
【0016】
本発明の第3態様は、木構造の下流側から順番に接続関係を決定する。第1,2態様と同様に各ネットワーク機器のポートに関する情報を取得した後、次のようにして下流側のネットワーク機器から順に接続関係を決定する。初めに、下流側ポートを持たないネットワーク機器をエッジノード(リーフノード)として特定する。この後は、エッジノード以外を対象に、下流側機器数が少ないネットワーク機器から順番に、その下流側ポートに直接接続されている機器を特定して接続関係を決定していく。
【0017】
ここで、ネットワーク機器の下流側ポートに直接接続されると決定されたネットワーク
機器を接続関係決定済みの機器としていくと、処理対象のネットワーク機器の各下流側ポートの先に接続されているネットワーク機器のうち、接続関係が未決定なネットワーク機器は1つのみとなる。したがって、そのネットワーク機器を当該処理対象のスイッチの下流側ポートに直接接続されているネットワーク機器として特定することができる。
【0018】
あるいは、処理対象のネットワーク機器の各下流側ポートの先に接続されているネットワーク機器のうち、その下流側機器数が最も多いネットワーク機器を、当該下流側ポートに直接接続されているものとして決定することもできる。
【0019】
本態様によっても、部分木の大きさはそれを含む上流側の木の大きさよりも小さいことを利用して、複数のネットワーク機器からなるネットワークの接続関係を、確実に木構造として決定することが可能となる。
【0020】
本発明の第4態様は、第3態様と同様に木構造の下流側から順番に接続関係を決定する。第1~3態様と同様に各ネットワーク機器のポートに関する情報を取得した後、次のようにして下流側のネットワーク機器から順に接続関係を決定する。初めに、下流側ポートを持たないネットワーク機器をエッジノード(リーフノード)として接続関係を決定する。この後は、接続関係がまだ決定されていないネットワーク機器を対象に、下流側機器が全て接続関係が決定されたネットワーク機器であるようなネットワーク機器を探し、そのネットワーク機器についての接続関係を決定する。この処理を繰り返すことで、全てのネットワーク機器の接続関係を決定することができる。
【0021】
本態様では、部分木の大きさはそれを含む上流側の木の大きさよりも小さいことの応用として、エッジに近いノードほど下流側機器の数が少ないことを利用している。本態様に係るネットワーク構成情報取得方法によっても、複数のネットワーク機器からなるネットワークの接続関係を、確実に木構造して決定することが可能となる。
【0022】
なお、本発明は、上記処理の少なくとも一部を有するネットワーク構成情報取得方法として捉えることができる。また、本発明は、上記処理の少なくとも一部を実行するネットワーク構成情報取得装置、または、かかる方法を実現するためのプログラムとして捉えることもできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【0023】
本発明によれば、ネットワークの接続情報を正確に取得することが可能となる。
【発明を実施するための最良の形態】
【0024】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【0025】
(第1実施形態)
本実施形態では、複数のL2スイッチから構成されるネットワークの物理的接続関係を取得する方法(ネットワーク構成情報取得方法)と、その処理を実行する管理用端末(ネットワーク構成情報取得装置)の構成を説明する。L2スイッチからなるネットワークはループを含まないため、図1に示すように、任意のスイッチをルート(根)ノードとする木構造として表せる。図1では、管理用端末1が直接接続されているスイッチAをルートノードとしているが、どのスイッチをルートノードとしても構わない。
【0026】
ここで、管理用端末1はSNMPマネージャとしての機能し、各スイッチはSNMPエージェントとして機能する。各スイッチは、MAC(Media Access Control)アドレスとポートの組み合わせを公開するために、BRIDGE-MIB(RFC1493)のdo
t1dTpFdbPortを実装しているものとする。
【0027】
〈全体概要〉
管理用端末1は、各スイッチからポート接続に関する情報を取得しそれを解析することで、ネットワークの構成(物理的接続)を図1に示すような木構造として取得する。
【0028】
図2は、管理用端末1の機能構成を示すブロック図である。図2に示すように、管理用端末1は、ポート情報取得部11とポート情報テーブル12とネットワーク構成解析部13を有する。これらの各機能部は、補助記憶装置に格納された各種のプログラムが主記憶装置にロードされてCPUによって実行されることにより実現されている。ただし、一部または全部の機能部が専用のハードウェアによって実現されても構わない。
【0029】
各機能部の働きを図3のフローチャートを参照して説明する。図3は、ネットワーク構成情報取得処理全体の概要を表すフローチャートである。まず、初期処理(S1)として、ポート情報取得部11は、各スイッチのIPアドレスを取得する。各スイッチのIPアドレスは種々の方法により取得できる。たとえば、各スイッチのIPアドレスを設定情報として外部から入力する構成としても良い。あるいは、IPアドレスの範囲指定を受けて、それらのアドレスに対してPingを投げて応答が得られたアドレスを、スイッチのIPアドレスとして取得しても良い。
【0030】
また、初期処理として、各スイッチの学習テーブル(FDB)に他のスイッチに関する情報を登録するために、管理用端末が各スイッチとの間で通信を行う。ただし、Pingを利用して機器の検出を行っている場合には改めて通信を行う必要はない。これにより、各スイッチは自ノードよりも下流側のスイッチを送信先とする通信を中継することになるので、下流側の全てのスイッチに関する情報が学習テーブルに登録されることになる。一方、上流側の機器については、管理用端末のみが学習テーブルに登録される。
【0031】
次に、ポート情報取得部11は各スイッチのポート情報を取得してポート情報テーブル12に格納する(S2)。ここで、スイッチのポート情報とは、各スイッチ(のMACアドレス)がどのポートの先に接続されているかという情報である。この情報は、各スイッチの学習テーブル(FDB)から取得可能である。より具体的には、各スイッチに対して、その他のスイッチのMACアドレスがどのポートの先に接続されているかを、BRIDGE-MIBのdot1dTpFdbPortを利用して取得すればよい。なお、各スイッチのMACアドレスは、ARP(Address Resolution Protocol)テーブルを参照する
ことで得られる。
【0032】
また、ポート情報取得部11は、管理用端末1が各スイッチのどのポートの先に接続されているかを上記と同様にして求める。本実施形態では管理用端末1が直接接続されているスイッチをルートノードと定義しているので、管理用端末1がポートの先に接続されているか否かによって、そのポートが上流側ポートであるか、下流側ポートであるか判断可能である。
【0033】
このようにして作成されるポート情報テーブル12の例を図4に示す。図4に示しているデータの内容は、図1に示されるネットワーク構成に対応したものである。ポート情報テーブル12は、各スイッチA~Lが備えるポートの先にどのスイッチが接続されているかを格納している。なお、図4の中で、MTとあるのは管理用端末1を示している。したがって、この管理用端末1(MT)が接続されているポートが上流側ポートとして認識される。
【0034】
以上のように、ポート情報テーブル12には、各スイッチのポートの先にどのスイッチ
が接続されるか格納されることになる。ただし、下流側ポートに関する情報は全て正しく反映されるものの、上流側ポートに関する情報は全て反映されるとは限らない。図4では、上流側ポートには管理用端末に関する情報のみが登録されている状況を示している。
【0035】
ポート情報テーブル12において上流側ポートに関する情報が完全に反映されないのは、各スイッチの学習テーブル(FDB)に、自身よりも下流側のスイッチに関する情報は完全に登録されているが、上流側のスイッチについては完全に登録されているとは限らないからである。たとえば、スイッチAの学習テーブルにスイッチBの情報が登録されるためには、スイッチBを送信先または送信元とする通信をスイッチAが中継する必要がある。ここで、スイッチBがスイッチAよりも下流側であれば、管理用端末がスイッチBと通信することでその通信がスイッチAを介することになるので、スイッチAの学習テーブルにスイッチBに関する情報が登録される。初期処理として管理用端末はネットワーク内の機器を探索するために全てのスイッチと通信しているので、各スイッチは自身より下流側に位置する全てのスイッチについてそれを送信先とする通信を中継している。したがって、この通信により各スイッチに下流側の全てのスイッチが登録されることになる。これに対して、管理用端末と各スイッチとの間で通信しても、各スイッチは自身よりも上流側にあるスイッチを送信先または送信元とする通信を中継することはないので、上流側ポートについての学習テーブルは完全なものとは限らない。
【0036】
もっとも、上流側のスイッチを送信先または送信元とする通信を下流側のスイッチを中継していた場合には、上流側ポートに関する情報を取得することができる。したがって、たとえば、ポート情報テーブル12を作成する際に、エッジノード(最下流のスイッチ)を制御して、そのスイッチの全ての上流側のスイッチと通信を行わせれば、上流側ポートに関する情報も完全に登録されたポート情報テーブル12を作成することができる。ただし、以下では、ポート情報テーブル12は上流側ポートに関する情報は不完全であるとして説明する。
【0037】
〈ネットワーク構成解析処理〉
ポート情報テーブル12が作成された後に、ネットワーク構成解析部13がポート情報テーブル12を解析してネットワークの構成情報を取得する(S3)。このネットワーク構成解析処理のより詳細な内容を、図5のフローチャートを参照しつつ説明する。
【0038】
まず、ポート情報テーブル12から、ルートノードがどのスイッチであるかを決定する(S11)。ルートノードは下流側ポートに接続されている機器の数が最も多いスイッチとして特定できる。本実施形態では、ルートノードが最初に接続関係が決定されたスイッチである。
【0039】
次に、接続関係が決定済みのスイッチに、どの機器が接続するか未決定の下流側ポートがあるか判断する(S12)。接続機器が未決定の下流側ポートがある場合(S12-YES)には、以下の手順で各下流側ポートに直接接続されているスイッチを決定する。
【0040】
まず、接続機器が未決定の下流側ポートのうちから1つのポートを選択する(S13)。以下では、このポートのことを処理対象ポートという。接続機器が未決定の下流側ポートが複数ある場合は、任意のポートを選択して良い。次に、処理対象ポートの下流に接続されているスイッチのうち、自身の下流側ポートに接続されているスイッチの数が最も多いスイッチを選択する(S14)。このようにして選択されたスイッチを、処理対象ポートに直接接続しているスイッチであると決定する(S15)。これは以下の理由による。まず、処理対象ポートの下流側に接続されているスイッチは、処理対象ポートに直接接続されているスイッチをルートノードとする部分木として表せる。そして、この部分木の大きさは、その中に含まれる部分木の大きさよりも大きい。したがって、下流側のスイッチ
数が最も多いものが、この部分木のルートノードすなわち処理対象ポートに直接接続されるスイッチであると判断できる。
【0041】
上記のステップS13~S15の処理を、接続機器が未決定のポートが無くなるまで繰り返し実行する。接続機器が未決定の下流側ポートが無くなった時点(S12-NO)で処理が終了し、ネットワーク構成情報が木構造として得られる。
【0042】
〈動作例〉
図1に示すネットワークを例に、本実施形態におけるネットワーク構成解析処理の具体的な動作例を説明する。図1のネットワークに対応するポート情報テーブル12は図4に示されているので、図4も参照しながら説明する。
【0043】
まず、ポート情報テーブル12を参照して、下流側ポートに接続されている機器の数が最も多いスイッチAを、ルートノードとして決定する(S11)。この例では、以降の物理接続関係の決定を、木構造の深さを優先して決定する。
【0044】
スイッチAのポートP2には、スイッチB,E,Fが接続されており、各スイッチの下流側機器数はそれぞれ、2,0,0である。したがって、スイッチAのポートP2に直接接続されるスイッチは、下流側機器数が最も多いスイッチBであると決定する。
【0045】
スイッチBにはポートP2,P3の2つの下流側ポートがある。スイッチBのポートP2に接続される機器はスイッチEの1つだけであるので、スイッチBのポートP2にはスイッチEが直接接続されることが分かる。スイッチEは下流側ポートを持たない。スイッチBのポートP3に接続される機器はスイッチFの1つだけであるので、スイッチBのポートP3にはスイッチFが直接接続されることが分かる。スイッチFは下流側ポートを持たない。
【0046】
スイッチAのポートP3にはスイッチC,Gが接続されており、各スイッチの下流側機器数はそれぞれ、1,0である。したがって、スイッチAのポートP3に直接接続されるスイッチは、下流側機器が最も多いスイッチCであると決定する。スイッチCのポートP2に接続される機器はスイッチGの1つだけであるので、スイッチCのポートP2にはスイッチGが直接接続されることが分かる。スイッチGは下流側ポートを持たない。
【0047】
スイッチAのポートP4にはスイッチD,H,J,K,Lが接続されており、各スイッチの下流側機器数はそれぞれ、4,0,2,0,0である。したがって、スイッチAのポートP4に直接接続されるスイッチは、下流側機器数が最も多いスイッチDであると決定する。
【0048】
スイッチDにはポートP2,P3の2つの下流側ポートがある。スイッチDのポートP2に接続される機器はスイッチHの1つだけであるので、スイッチDのポートP2にはスイッチHが直接接続されることが分かる。スイッチDのポートP3には、スイッチJ,K,Lが接続されており、各スイッチの下流側機器数はそれぞれ、2,0,0である。したがって、スイッチDのポートP3に直接接続されるスイッチは、下流側機器数が最も多いスイッチJであると決定する。
【0049】
スイッチJにはポートP2,P3の2つの下流側ポートがある。スイッチJのポートP2に接続される機器はスイッチKの1つだけであるので、スイッチJのポートP2にはスイッチKが直接接続されることが分かる。スイッチKは下流側ポートを持たない。スイッチJのポートP3に接続される機器はスイッチLの1つだけであるので、スイッチJのポートP3にはスイッチLが直接接続されることが分かる。スイッチLは下流側ポートを持
たない。
【0050】
以上により、全てのポートに関して直接接続されるスイッチが決定され、ネットワークの物理的接続を木構造として取得する処理が完了する。
【0051】
〈変形例〉
上記の例では、各ポートについて深さ優先で直接接続される機器を決定しているが、どの順序で接続機器を決定していっても構わない。たとえば、幅優先で(すなわち、スイッチB,C,D、・・・の順で)接続機器を決定していっても構わない。
【0052】
なお、1つのスイッチが複数の下流側ポートを備える場合、各ポートについて独立してネットワーク構成を決定することができる。たとえば、スイッチAはポートP2,P3,P4の下流側ポートを有しており、それ以降の物理接続はこれらのポートの先にある部分木として独立して求めることができる。したがって、各ポートごとに並列化処理が可能である。
【0053】
(第2実施形態)
本実施形態では、第1実施形態と同様に上流側からネットワークの物理的接続関係を取得する。基本的な構成は第1実施形態と同様であり、図3のフローチャートにおけるステップS3のネットワーク構成解析処理の内容が異なるだけである。図6に本実施形態におけるネットワーク構成解析処理S3の詳細なフローチャートを示す。以下、図6を参照して本実施形態におけるネットワーク構成解析処理を説明する。
【0054】
まず、ポート情報テーブル12から、ルートノードがどのスイッチであるかを決定する(S21)。ルートノードは下流側ポートに接続されている機器の数が最も多いスイッチとして特定できる。本実施形態では、ルートノードが最初に接続関係が決定されたスイッチである。
【0055】
次に、各スイッチの下流側ポートの先に接続されている機器の数(下流側ポートが複数ある場合は、全ポートについての合計)を求める(S22)。そして、接続関係が未決定のスイッチがあるか判定し(S23)、未決定のスイッチがある間は以下の処理を繰り返す。
【0056】
まず、接続関係が未決定のスイッチのうち、下流側機器数が最大のスイッチを選択する(S24)。そして、選択されたスイッチの接続関係を決定する(S25)。この接続関係の決定は、選択されたスイッチの上流側ポートに直接接続されるスイッチを決定することにより行われる。このスイッチは、接続関係が決定済みのスイッチのうち、選択されたスイッチがその先に接続されているポートを有するスイッチとして決定することができる。そのようなポートを有するスイッチが複数ある場合には、そのポートの先に接続されている機器の数が最も少ないスイッチを、選択されたスイッチの上流側ポートに直接接続すると判断する。部分木の大きさはその部分木を含む部分木の大きさよりも小さいことから、このように判断可能である。
【0057】
この処理を全てのスイッチの接続関係が定まるまで行うことで、ネットワーク構成を木構造として取得することができる。
【0058】
〈動作例〉
図1に示すネットワークを例に、本実施形態におけるネットワーク構成解析処理の具体的な動作例を説明する。図1のネットワークに対応するポート情報テーブル12は図4に示されているので、図4も参照しながら説明する。
【0059】
まず、ポート情報テーブル12を参照して、下流側ポートに接続されている機器の数が最も多いスイッチAを、ルートノードとして決定する(S21)。次に、各スイッチについて下流側ポートに接続されている機器の数を求める(S22)。下流側機器数が多い順に記載すると、Dが4個、B,Jが2個、Cが1個、E,F,G,H,K,Lが0個である。
【0060】
これらのスイッチのうち、まず下流側機器数が最も多いスイッチDについて接続関係を決定する。接続関係が決定済みのスイッチはAだけであり、AのポートP4にスイッチDが接続されていることがポート情報テーブル12から分かる。したがって、スイッチDの上流側ポートに直接接続されるスイッチはA(ポートP4)であると決定する。
【0061】
次に下流側機器数が多いスイッチB,Jについて接続関係を決定する。BとJの2つのうちどちらを先に処理しても構わない。ここでは、Bを先に処理するものとする。接続関係が決定済みのスイッチA,Dのうち、スイッチBを下流側に持つのはスイッチAのポートP2だけであることがポート情報テーブル12から分かる。したがって、スイッチBの上流側ポートに直接接続されるスイッチはA(ポートP2)であると決定する。接続関係が決定済みのスイッチA,B,Dのうち、スイッチJを下流側に持つのはスイッチAのポートP4とスイッチDのポートP3であることがポート情報テーブル12から分かる。そして、スイッチAのポートP4の先に接続されている機器数は3個であるのに対し、スイッチDのポートP3の先に接続されている機器数は2個である。したがって、スイッチDの方がより下流側に位置するものであり、スイッチJの上流側ポートに直接接続されるスイッチはD(ポートP3)であると決定する。
【0062】
次に下流側機器数が多いスイッチCについて接続関係を決定する。接続関係が決定済みのスイッチA,B,D,Jのうち、スイッチCを下流側に持つのはスイッチAのポートP3のみである。したがって、スイッチCの上流側ポートに直接接続されるスイッチはA(ポートP3)であると決定する。
【0063】
次に下流側機器数が多いスイッチE,F,G,H,K,Lについて接続関係を決定する。これらのスイッチをどの順序で処理しても構わない。ここでは、E,F,G,H,K,Lの順番で処理するものとする。接続関係が決定済みのスイッチのうちスイッチEが下流側に接続されているのは、スイッチAのポートP2とスイッチBのポートP2である。このうち接続機器数が少ないポートは、スイッチBのポートP2であるので、スイッチEの上流側ポートに直接接続されるスイッチはB(ポートP2)であると決定する。その他のスイッチについても同様の処理を行うことで、スイッチF,G,H,K,Lの上流側ポートに直接接続されるスイッチはそれぞれ、B(P3),C(P2),D(P2),J(P2),J(P3)であると決定される。
【0064】
以上により、全てのスイッチについて接続関係が決定され、ネットワークの物理的接続を木構造として取得する処理が完了する。
【0065】
(第3実施形態)
本実施形態では、第1,2実施形態とは逆に、下流側からネットワークの物理的接続関係を取得する。基本的な構成は第1,2実施形態と同様であり、図3のフローチャートにおけるステップS3のネットワーク構成解析処理の内容が異なるだけである。図7に本実施形態におけるネットワーク構成解析処理S3の詳細なフローチャートを示す。以下、図7を参照して本実施形態におけるネットワーク構成解析処理を説明する。
【0066】
まず、ポート情報テーブル12から、エッジノードを決定する(S31)。下流側ポー
トを持たないスイッチを、エッジノードとして決定することができる。次に、各スイッチ(エッジノード以外でよい)について、下流側ポートの先に接続される機器の数を求める(S32)。そして、エッジノード以外のスイッチについて、下流側機器数少ない順番を、各スイッチの処理順序として決定する(S33)。なお、下流側機器数が同じスイッチがある場合は、それらのスイッチについては任意の順序で処理して良い。
【0067】
以下、未処理のスイッチがある間(S34-YES)、ステップS33で決定した処理順序にしたがって、接続関係を決定していく。まず、次の処理順序のスイッチ(処理対象スイッチ)を選択し(S35)、そのスイッチの下流側ポートに直接接続されるスイッチを決定する(S36)。これは処理対象スイッチの下流側に接続されるスイッチのうち、接続関係が未決定のもの(後述する接続済みリストに追加されていないもの)として特定可能である。初めは、下流側機器数が最も少ないスイッチの下流側ポートにはエッジノードのみが現れるので、そのエッジノードを下流側ポートに直接接続されるスイッチとして決定する。次に、処理対象スイッチの下流側ポートに直接接続されると判断されたスイッチを、接続済みリストに追加する。このようにすることで、次以降の処理対象スイッチについて下流側ポートに直接接続されるスイッチを決定する(S36)際に、下流側機器のうち接続済みリストに追加されていないものが1つだけとなり、それを下流側ポートに直接接続されるスイッチとして決定可能となる。
【0068】
この処理をステップS33で決定した順序で全てのスイッチに対して実行することで、ネットワークの物理的接続が木構造として得られる。
【0069】
〈動作例〉
図1に示すネットワークを例に、本実施形態におけるネットワーク構成解析処理の具体的な動作例を説明する。図1のネットワークに対応するポート情報テーブル12は図4に示されているので、図4も参照しながら説明する。
【0070】
まず、ポート情報テーブル12を参照して、下流側ポートを持たないスイッチを、エッジノードとして決定する(S31)。ここでは、スイッチE,F,G,H,K,Lの6個のスイッチがエッジノードであることが分かる。
【0071】
次に、各スイッチ(エッジノード以外)の下流側機器数を求める(S32)。下流側機器数が少ない順に記載すると、Cが1個、B,Jが2個、Dが4個、Aが10個である。以下の処理をおこなうスイッチの順序を、この下流側機器数が少ない順として決定する(S33)。すなわち、処理順序を、C,B,J,D,Aの順序として決定する。
【0072】
まず、スイッチCが処理対象のスイッチとして選択される。スイッチCの下流側ポートP2には、エッジノードであるスイッチGのみが接続されていることが、ポート情報テーブル12から分かる。したがって、スイッチCの下流側ポートP2に直接接続されるスイッチはGであると決定する。ここで、スイッチGは接続関係が決定されたので、接続済みリストに追加する。
【0073】
次に、スイッチBが処理対象のスイッチとして選択される。スイッチBの下流側ポートP2,P3には、それぞれエッジノードであるスイッチE,Fが接続されていることが、ポート情報テーブル12から分かる(なお、このとき、接続済みリストに追加されているスイッチは除外するが、スイッチE,Fは接続済みリストに追加されていないので関係ない)。したがって、スイッチBの下流側ポートP2,P3に直接接続されるスイッチはそれぞれE,Fであると決定する。ここで、スイッチE,Fは接続関係が決定されたので、接続済みリストに追加する。この時点で接続済みリストはE,F,Gである。
【0074】
次に、スイッチJが処理対象のスイッチとして選択される。スイッチJの下流側ポートP2,P3には、それぞれエッジノードであるスイッチK,Lが接続されていることが、ポート情報テーブル12から分かる(なお、このとき、接続済みリストに追加されているスイッチは除外するが、スイッチK,Lは接続済みリストに追加されていないので関係ない)。したがって、スイッチJの下流側ポートP2,P3に直接接続されるスイッチは、それぞれスイッチK,Lであると決定する。ここで、スイッチK,Lは接続関係が決定されたので、接続済みリストに追加する。この時点で接続済みリストはE,F,G,K,Lである。
【0075】
次に、スイッチDが処理対象のスイッチとして選択される。スイッチDの下流側ポートP2にはエッジノードであるスイッチHが接続され,下流側ポートP3にはスイッチJ,K,Lが接続されていることが、ポート情報テーブル12から分かる。ここで、接続関係が決定済みのスイッチ(接続済みリストに追加されているスイッチ)は除外(無視)するので、スイッチDの下流側ポートP2,P3に直接接続されるスイッチは、それぞれスイッチH,Jであると決定する。ここで、スイッチH,Jは接続関係が決定されたので、接続済みリストに追加する。この時点で接続済みリストはE,F,G,H,J,K,Lである。
【0076】
最後に、スイッチAが処理対象のスイッチとして選択される。スイッチAの下流側ポートP2にはスイッチB,E,Fが接続され、下流側ポートP3にはスイッチC,Gが接続され、下流側ポートP4にはスイッチD,H,J,K,Lが接続されていることが、ポート情報テーブル12から分かる。ここで、接続関係が決定済みのスイッチ(接続済みリストに追加されているスイッチ)は除外(無視)するので、スイッチAの下流側ポートP2,P3,P4に直接接続されるスイッチは、それぞれスイッチB,C,Dであると決定する。
【0077】
以上により、全てのスイッチについて接続関係が決定され、ネットワークの物理的接続を木構造として取得する処理が完了する。
【0078】
(第4実施形態)
本実施形態では、第3実施形態と同様に下流側からネットワークの物理的接続関係を取得する。基本的な構成は第1~3実施形態と同様であり、図3のフローチャートにおけるステップS3のネットワーク構成解析処理の内容が異なるだけである。図8に本実施形態におけるネットワーク構成解析処理S3の詳細なフローチャートを示す。以下、図8を参照して本実施形態におけるネットワーク構成解析処理を説明する。
【0079】
まず、ポート情報テーブル12から、下流側ポートがないスイッチをエッジノードとして接続関係を決定する(S41)。そして、接続関係が未決定のスイッチがある間(S42-YES)、以下の処理を繰り返す。
【0080】
まず、ポート情報テーブル12を参照して、下流側機器として既に接続関係が決定されたスイッチのみを有するスイッチを選択する(S43)。そして、このようなスイッチの下流側ポートに直接接続されるスイッチを特定して、接続関係を決定する(S44)。なお、既に接続関係が決定されたスイッチのみを下流側機器として有するスイッチが複数がある場合には、全てについてこの処理を行う。下流側ポートに直接接続されるスイッチは、下流側機器の中から、そのスイッチの下流側機器数が最も多いものとして決定することができる。あるいは、ステップS42~S44の処理ループにおいて直近のループで接続関係が決定されたスイッチを、下流側ポートに直接接続されるスイッチとして決定しても良い。
【0081】
以上の処理を、全てのスイッチの接続関係が定まるまで行うことで、全てのスイッチのネットワーク構成を木構造として取得することができる。
【0082】
〈動作例〉
図1に示すネットワークを例に、本実施形態におけるネットワーク構成解析処理の具体的な動作例を説明する。図1のネットワークに対応するポート情報テーブル12は図4に示されているので、図4も参照しながら説明する。
【0083】
まず、ポート情報テーブル12を参照して、下流側ポートを持たないスイッチを、エッジノードとして接続関係を決定する(S41)。ここでは、スイッチE,F,G,H,K,Lの6個のスイッチがエッジノードであることが分かる。
【0084】
次に、接続関係が決定していないスイッチ(エッジノード以外のスイッチ)について、下流側ポートに接続されているスイッチの全てが接続関係決定済みのスイッチであるものを探す(S43)。この段階で該当するのは、スイッチB,C,Jの3つである。次に、これらのスイッチの下流側ポートに直接接続されているスイッチの特定を行う。ポート情報テーブル12を参照すると、スイッチBの下流側ポートP2,P3にはそれぞれ、スイッチE,Fのみが接続されていることから、スイッチBの下流側ポートP2にはスイッチEが、下流側ポートP3はスイッチFが接続されていると分かる。同様に、スイッチCの下流側ポートP2にはスイッチGが接続されていると分かり、スイッチJの下流側ポートP2,P3にはそれぞれスイッチK,Lが接続されていると分かる。以上により、スイッチB,C,Jの接続関係が新たに決定される。
【0085】
ここまでの処理では、まだ全てのスイッチについて接続関係が決定されていないので、ステップS42~44の処理ループを繰り返す。この段階で、接続関係が未決定なスイッチはA,Dである。これらのうち、下流側ポートに接続されているスイッチの全てが接続関係決定済みのスイッチであるものは、スイッチDである。そこで、スイッチDの下流側ポートに直接接続されているスイッチの特定を行う。スイッチDの下流側ポートP2に接続されているスイッチはHのみなので、下流側ポートP2に直接接続されるスイッチはHであると決定できる。下流側ポートP3に接続されているスイッチはJ,K,Lの3つがある。この場合、最近の処理ループで接続関係が決定されたスイッチJを下流側ポートP3に直接接続されているスイッチとして決定する。なお、各スイッチJ,K,Lの下流側機器数を求めて、下流側機器数が最も多いものを下流側ポートP3に直接接続されるスイッチとしても構わない。以上により、スイッチDの接続関係が新たに決定される。
【0086】
ここまでの処理では、まだ全てのスイッチについて接続関係が決定されていないので、ステップS42~44の処理ループを繰り返す。この段階で接続関係が未決定なスイッチはAである。スイッチAの下流側ポートに接続されている機器は全て接続関係決定済みであるため、スイッチAの下流側ポートに直接接続されているスイッチの特定を行う。下流側ポートP2に関しては、スイッチB,E,Fが接続されているが、これらのうち最近の処理ループで接続関係が決定されたスイッチBを、このポートの直接接続されていると決定する。下流側ポートP3に関しても同様に、スイッチC,DのうちスイッチCが直接接続されていると決定する。下流側ポートP4に関しても、スイッチD,H,J,K,LのうちスイッチDがこのポートに直接接続されていると決定する。
【0087】
以上により、全てのスイッチについて接続関係が決定され、ネットワークの物理的接続を木構造として取得する処理が完了する。
【0088】
(その他)
上記の実施形態の説明では、管理用端末1が各スイッチのポートに関する情報を取得す
る際に、BRIDGE-MIB(RFC1493)のdot1dTpFdbPortを利用しているが、各スイッチの各ポートの先にどのスイッチが接続されているか分かればどのような方法によってポート関する情報を取得しても構わない。たとえば独自のprivate MIBを利用しても良い。また、SNMP以外の機構を利用して、管理用端末1が各スイッチからポートに関する情報を取得するように実装しても良い。
【0089】
上記の説明では、各スイッチからポートに関する情報を取得できることを前提として説明した。もし、一部のスイッチがSNMPに対応していなかったりBRIDGE-MIDを実装していなかったりなどの理由によりポート情報を取得できない場合は、そのスイッチは管理用端末から検知できない。上記実施形態の方法では、このようなスイッチ(管理外スイッチと呼ぶ)に接続されているスイッチが2つのみである場合には、これら2つのスイッチが直接接続されているものとして判断される。一方、図9(A)に示すように管理外スイッチに3つ以上のスイッチが接続されている場合、図9(B)に示すように同一ポートに複数のスイッチが接続されているように見える。このような部分が存在した場合には、複数のスイッチが接続されているように見えるポートに管理外スイッチが(1つまたは複数個)接続されており、管理外スイッチに他のスイッチが接続されていると判断できる。
【0090】
また、上記の実施形態において構成を取得するネットワークにVLANが設定されている場合は、管理用端末が属するVLAN(管理用VLAN)以外の接続についてはその物理接続を決定できない。つまり、あるVLANが管理用VLANとは別の物理接続を利用している場合については、それらの構成は決定できない。ただし、全てのVLANがタグで管理用VLANと同じ物理接続を利用している場合には、問題なくネットワークの構成を決定することができる。また、実際に通信に利用されていない物理接続(たとえば、STPでblockingになっていたり、冗長化のためのバックアップ経路など)も検出できない。
【0091】
上記の説明ではネットワークを構成する機器がL2スイッチである例を説明したが、本発明はL2ネットワークの構成のみを検出の対象とするものではない。すなわち、木構造として表せるようなネットワークであれば、任意の機器から構成されるネットワークの構成を取得することが可能である。
【図面の簡単な説明】
【0092】
【図1】L2スイッチから構成されるネットワークを木構造で表した図である。
【図2】管理用端末の機能ブロックを表す図である。
【図3】ネットワーク構成情報取得処理の全体概要を表すフローチャートである。
【図4】ポート情報テーブルの構造を示す図であり、図1のネットワーク構成に対応したデータが示されている。
【図5】第1実施形態におけるネットワーク構成解析処理の詳細なフローチャートである。
【図6】第2実施形態におけるネットワーク構成解析処理の詳細なフローチャートである。
【図7】第3実施形態におけるネットワーク構成解析処理の詳細なフローチャートである。
【図8】第4実施形態におけるネットワーク構成解析処理の詳細なフローチャートである。
【図9】管理外スイッチが含まれるネットワーク(A)と、このようなネットワークの構成を解析した結果(B)を表した図である。
【符号の説明】
【0093】
A~L L2スイッチ
1 管理用端末
11 ポート情報取得部
12 ポート情報テーブル
13 ネットワーク構成解析部
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8