JP7056207B2 - トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム - Google Patents

トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム Download PDF

Info

Publication number
JP7056207B2
JP7056207B2 JP2018025807A JP2018025807A JP7056207B2 JP 7056207 B2 JP7056207 B2 JP 7056207B2 JP 2018025807 A JP2018025807 A JP 2018025807A JP 2018025807 A JP2018025807 A JP 2018025807A JP 7056207 B2 JP7056207 B2 JP 7056207B2
Authority
JP
Japan
Prior art keywords
information
group
communication
relay
flow
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.)
Active
Application number
JP2018025807A
Other languages
English (en)
Other versions
JP2019145893A (ja
Inventor
亮 佐久間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2018025807A priority Critical patent/JP7056207B2/ja
Publication of JP2019145893A publication Critical patent/JP2019145893A/ja
Application granted granted Critical
Publication of JP7056207B2 publication Critical patent/JP7056207B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本開示は、トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システムに関する。
昨今、ネットワークは大規模化および複雑化しており、ネットワークの全容を把握することが難しくなっている。そのため、ネットワークにおいて障害が発生した場合の障害箇所の特定やネットワークの設定変更時の影響範囲の特定等、ネットワークの運用管理という観点においてネットワーク可視化が重要である。ネットワーク可視化の手段の一つとしてネットワークトポロジが挙げられる。
上記のように、ネットワーク可視化は重要であることから、種々の技術が検討されている(例えば、特許文献1)。特許文献1には、複数のルータが属するネットワークを複数のサブネットワークに分類する。上記ルータは、自装置が有する各インタフェースに対して、送信元アドレスおよび宛先アドレスとの関係が記憶された情報を有する。輻輳経路検出装置は、複数のルータの各々から各ルータが記憶した情報を取得して、取得した情報に基づいて、サブネットワーク同士の関連性を調査して、経路情報を決定することが開示されている。
特開2010-278716号公報
しかしながら、特許文献1に開示された技術では、輻輳経路検出装置は、各ルータが有する各インタフェースに対して宛先アドレスが関連付けられた情報に基づいて経路情報を決定する。すなわち、特許文献1に開示された技術では、各ルータは、接続関係が予め分かっていることから、輻輳経路検出装置は、経路情報を決定することが可能である。しかしながら、特許文献1に開示された技術では、各ルータが、自装置に接続するルータの情報を記憶していない場合には、経路情報を決定することは難しい。すなわち、特許文献1に開示された技術を用いたとしても、ネットワーク構成の可視化を行うことが出来ない場合がある。
本開示の目的は、このような問題を解決するためになされたものであり、通信装置の接続関係が分かっていない場合でもネットワーク構成を可視化することが可能なトポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システムを提供することである。
第1の態様にかかるトポロジ決定装置は、
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する決定部と、を備える。
第2の態様にかかるトポロジ決定方法は、
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得し、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類し、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出し、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する、トポロジ決定方法である。
第3の態様にかかるトポロジ決定プログラムは、
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得することと、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類することと、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出することと、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定することと、をコンピュータに実行させるトポロジ決定プログラムである。
第4の態様にかかる通信システムは、
複数の中継装置を含む複数の通信装置と、前記複数の通信装置を含むネットワークのネットワークトポロジを決定するトポロジ決定装置とを備え、
前記トポロジ決定装置は、
前記複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
前記算出された差分情報を用いて、前記複数の通信装置の接続関係を決定する決定部と、を備える通信システムである。
上述した態様によれば、通信装置の接続関係が分かっていない場合でもネットワーク構成を可視化することが可能となる。
実施の形態の概要にかかるトポロジ決定装置の構成例を示す構成図である。 実施の形態にかかる通信システムの概略を示す概略図である。 実施の形態にかかるトポロジ決定装置の構成例を示す構成図である。 フロー情報データベースを説明する図である。 グループ情報データベースを説明する図である。 トポロジデータベースを説明する図である。 実施の形態にかかるトポロジ決定装置の動作例を示すフローチャートである。 その他の実施の形態にかかるトポロジ決定装置の構成例を示す構成図である。 その他の実施の形態にかかるトポロジ決定装置の構成例を示す図である。
以下、図面を参照しつつ、実施形態について説明する。なお、実施形態において、同一の要素には、同一の符号を付し、重複する説明は省略される。
(実施の形態の概要)
まず、実施の形態に先立って、実施の形態の概要について説明する。図1を用いて、実施の形態の概要にかかるトポロジ決定装置1について説明する。図1は、実施の形態の概要にかかるトポロジ決定装置の構成例を示す構成図である。
トポロジ決定装置1は、ネットワークに接続された、複数の中継装置を含む複数の通信装置の接続関係を決定する通信装置である。トポロジ決定装置1は、例えば、サーバ、パーソナルコンピュータ等の通信装置であってもよい。トポロジ決定装置1は、取得部2と、分類部3と、算出部4と、決定部5と、を備える。
取得部2は、ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する。フロー情報は、フローデータであってもよい。もしくは、フロー情報は、例えば、通信において送受信されるパケットのフロー情報を取得するパケットキャプチャ等の情報であってもよい。また、フローデータは、sFlow、NetFlowであってもよい。
分類部3は、取得部2が取得したフロー情報に基づいて、フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、複数の中継装置を複数のグループのいずれかに分類する。
算出部4は、各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する。
決定部5は、算出部4が算出した差分情報を用いて、ネットワークに含まれる複数の通信装置の接続関係を決定する。
以上説明したように、取得部2は複数の中継装置の各々からフロー情報を取得する。分類部3は、取得部2が取得したフロー情報に基づいて、複数の中継装置を複数のグループに分類する。算出部4は、分類されたグループに含まれる中継装置情報を用いて、グループ間の差分情報を算出する。決定部5は、算出された差分情報を用いて、複数の通信装置の接続関係を決定する。そのため、実施の形態の概要にかかるトポロジ決定装置1を用いることにより、通信装置の接続関係が分かっていない場合でもネットワーク構成を可視化することが可能となる。
(実施の形態)
以下、図面を参照して、本開示の実施の形態の詳細について説明する。
<通信システムの構成例>
まず、図2を用いて、実施の形態にかかる通信システム100について説明する。図2は、実施の形態にかかる通信システムの概略を示す概略図である。
通信システム100は、トポロジ決定装置10と、計算機装置21~28と、中継装置29~45と、基幹サーバ50と、ネットワーク60および70と、を備える。計算機装置21~28、中継装置29~45、および基幹サーバ50は、他の装置と接続および通信を行う。そのため、計算機装置21~28、中継装置29~45、および基幹サーバ50は、通信装置とも言える。なお、以降の説明において、計算機装置21~28、中継装置29~45、および基幹サーバ50を総称して、通信装置と記載することがある。また、中継装置29~45は、それぞれ、スイッチE~スイッチIまたはSW E~SW Iと称して記載することがある。中継装置43~45は、それぞれ、ルータA、Q、PまたはRouterA、Q、Pと称して記載することがある。
通信システム100は、ルータAを頂点とするツリー型ネットワークを形成している。ツリー型ネットワークにおいて、ルータAは第1階層に存在し、スイッチB、Iは第2階層に存在する。スイッチC、D、JおよびKは第3階層に存在し、スイッチE、F、G、H、L、M、NおよびOは第4階層に存在する。さらに、計算機装置21~28は、第5階層に存在する。
通信システム100は、スイッチB~H、および計算機装置21~24から構成されるツリー型ネットワークを形成し、スイッチI~O、および計算機装置25~28から構成されるツリー型ネットワークを形成しているとも言える。つまり、通信システム100は、2つのツリートポロジが連なっているネットワークを形成するとも言える。なお、通信システム100が形成するネットワークは、ツリー型ネットワークに限られず、例えば、リング型、メッシュ型、スター型、フルコネクト型、バス型などのネットワークであってもよい。
図2に示すように、実線で記載されている通信装置は、接続関係にあることを示している。一例として、ルータAには、ルータQ、スイッチB、I、およびトポロジ決定装置10が接続されていることを示している。また、スイッチBは、ルータA、スイッチCおよびDと接続されていることを示している。ルータQには基幹サーバ50が接続されていることを示している。通信装置間の接続は、有線回線を介して接続されていてもよいし、無線回線により接続されていてもよいし、有線回線と無線回線との組み合わせにより接続されていてもよい。
トポロジ決定装置10は、実施の形態の概要にかかるトポロジ決定装置1に対応する。トポロジ決定装置10は、例えば、サーバ、パーソナルコンピュータ等の通信装置であってもよい。トポロジ決定装置10は、通信システム100が形成するネットワークに含まれる通信装置からフローデータを収集し、収集したフローデータを用いて、通信装置の接続関係を決定し、ネットワークトポロジを決定する。
トポロジ決定装置10は、通信システム100が形成するネットワークに新たな計算機装置または中継装置が接続された場合に、ネットワークトポロジを決定してもよい。もしくは、トポロジ決定装置10は、通信システム100が形成するネットワークに接続している計算機装置または中継装置が接続を解除した場合に、ネットワークトポロジを決定してもよい。もしくは、トポロジ決定装置10は、定期的にネットワークトポロジを決定してもよい。もしくは、トポロジ決定装置10は、通信システム100の運用者または管理者からの要求に応じて、ネットワークトポロジを決定してもよい。
計算機装置21~28は、自装置に接続する通信装置と通信を行う。また、計算機装置21~28は、自装置に接続する通信装置を介して、他の通信装置と通信を行う。計算機装置21~28は、例えば、パーソナルコンピュータ、サーバ、携帯電話、スマートフォン、タブレット型端末、サーバ等の通信装置であってもよい。図2に示すように、計算機装置21~28には、IPアドレスが設定されている。具体的には、計算機装置21~28のそれぞれには、192.168.10.25~192.168.10.38のIPアドレスが設定されている。
中継装置29~45は、2つの通信装置の間の通信を中継する装置である。中継装置29~45は、例えば、ルータ、スイッチ等であってもよい。本実施の形態においては、上述したように、中継装置29~42はスイッチであり、中継装置43~45はルータであるとして説明を行う。なお、中継装置29~45のそれぞれにもIPアドレスが設定されているが、任意のIPアドレスが設定されていればよい。
基幹サーバ50は、例えば、DHCP(Dynamic Host Configuration Protocol)サーバ、DNS(Domain Name System)サーバ等の通信装置である。基幹サーバ50は、計算機装置21~28からアクセスが集中するサーバである。図2に示すように、基幹サーバ50には、IPアドレスが設定されており、192.168.20.50のIPアドレスが設定されている。
計算機装置21~28、中継装置29~45および基幹サーバ50は、2つの通信装置間において通信が行われた場合、送信元の通信装置情報と、宛先(送信先)の通信装置情報と、を含むフロー情報を記録して保持する。通信装置情報は、例えば、IP(Internet Protocol)アドレス、MAC(Media Access Control)アドレスであってもよい。もしくは、通信装置情報は、通信装置を識別するID(Identifier)等であってもよい。フロー情報は、例えば、フローデータであってもよいし、通信において送受信されるパケットのフロー情報を取得するパケットキャプチャ等の情報であってもよい。また、フローデータは、sFlowであってもよく、NetFlowであってもよい。なお、以降の説明においては、通信装置情報はIPアドレスとし、フロー情報はフローデータであるとして説明を行う。
ネットワーク60および70は、ルータAを頂点とするツリー型ネットワークに接続する外部ネットワークである。ネットワーク60および70は、例えば、インターネット、LAN(Local Area Network)等であってもよい。通信システム100に含まれる各通信装置は、他のネットワークに含まれる通信装置と通信を行う場合、ネットワーク60および70を介して通信を行う。
<トポロジ決定装置の構成例>
続いて、図3を用いて、トポロジ決定装置10の構成例について説明する。図3は、実施の形態にかかるトポロジ決定装置の構成例を示す構成図である。トポロジ決定装置10は、取得部11と、分類部12と、算出部13と、決定部14と、記憶部15と、を備える。
取得部11は、通信システム100に含まれる通信装置と通信を行う通信インタフェースである。取得部11は、通信システム100に含まれる通信装置と通信を行う通信インタフェースであるので通信部とも言える。取得部11は、各通信装置(計算機装置21~28、中継装置29~45および基幹サーバ50)からフローデータを取得する。取得部11は、取得したフローデータを、後述する記憶部15のフロー情報データベースD1に格納する。フローデータには、現在までに送受信したフローデータの送信元IPアドレスおよび宛先IPアドレスが設定されている。
ここで、図4を用いて、フロー情報データベースD1について説明する。図4は、フロー情報データベースを説明する図である。フロー情報データベースD1には、取得部11が取得したフローデータが記憶される。図4に示すように、フロー情報データベースD1には、装置情報、送信元IPアドレスおよび宛先IPアドレスが関連付けて設定される。
装置情報には、フローデータの取得元の通信装置を識別する情報が設定される。装置情報は、装置名であってもよいし、IPアドレスであってもよいし、MACアドレスであってもよい。もしくは、装置情報は、フローデータの取得元の通信装置を識別するIDであってもよい。本実施の形態においては、装置情報は、装置名として説明を行う。
送信元IPアドレスには、フローデータに設定されている送信元IPアドレスが設定される。
宛先IPアドレスには、フローデータに設定されている宛先IPアドレスが設定される。
図2に戻り、分類部12について説明を行う。分類部12は、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一であるフローデータを有する通信装置が同一グループに属するように、複数の通信装置をいずれかのグループに分類する。分類部12は、いずれかのグループに分類する際、フローデータの送信元IPアドレスおよび宛先IPアドレスと同一のIPアドレスが設定されている通信装置を除外した通信装置をいずれかのグループに分類する。すなわち、分類部12は、複数の通信装置をいずれかのグループに分類する際、フローデータの送信元IPアドレスが設定された通信装置とフローデータの宛先IPアドレスが設定された通信装置との間に配置される通信装置をいずれかのグループに分類する。
分類部12は、取得したフローデータのうち、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一であるフローデータを検索する。分類部12は、検索されたフローデータを有する通信装置を同一グループに属する通信装置として分類する。分類部12は、各グループに対して、グループのIDを表すフローIDを設定し、検索されたフローデータを有する通信装置のうち、上記2つのIPアドレスと一致しない通信装置を通過装置として、フローIDと関連付けて分類する。すなわち、分類部12は、検索されたフローデータを有する通信装置のうち、上記2つのIPアドレスに対応する通信装置の間に配置された通信装置を、いずれかのグループに分類する。また、分類部12は、検索されたフローデータに含まれる送信元IPアドレスおよび宛先IPアドレスのそれぞれを、通信端点1および通信端点2としてフローIDと関連付ける。換言すると、通過装置は、通信端点1に対応する通信装置と、通信端点2に対応する通信装置との間に配置される通信装置である。ただし、この時点では、通過装置は、通信端点1と通信端点2との間に配置されることが分かるのみであり、通過装置の接続関係は分からない。つまり、この時点では、ネットワークトポロジを決定することが出来ない。分類部12は、フローIDと、通信端点1と、通信端点2と、通過装置と、を関連付けて、後述する記憶部15のグループ情報データベースD2に格納する。
ここで、図5を用いて、グループ情報データベースD2について説明を行う。図5は、グループ情報データベースを説明する図である。グループ情報データベースD2には、分類部12が分類したグループIDを表すフローID、通信端点1、通信端点2および通過装置が関連付けて設定される。
フローIDには、分類部12が分類したグループIDを表すフローIDが設定される。
通信端点1には、各グループに含まれる通信装置が有するフローデータの送信元IPアドレスが設定される。
通信端点2には、各グループに含まれる通信装置が有するフローデータの宛先IPアドレスが設定される。なお、通信端点1と通信端点2とに設定される情報は逆であってもよい。
通過装置には、各グループに含まれる通過装置が設定される。
次に、図4および図5を用いて、分類部12が行う分類処理の具体例を説明する。取得部11が取得したフローデータが図4に示す情報であったとする。分類部12は、フロー情報データベースD1に格納されたフローデータのうち、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一であるフローデータを検索する。そうすると、図4に示すように、分類部12は、実線で囲まれたフローデータの集合であるフローデータ群と、点線で囲われたフローデータの集合であるフローデータ群とを検索する。
実線で囲まれたフローデータに含まれる送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスは同一である。そのため、分類部12は、実線で囲まれた通信装置である、計算機装置21、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチEを1つのグループとして分類する。この際、分類部12は、当該グループに対してフローIDを設定し、送信元IPアドレスを通信端点1とし、宛先IPアドレスを通信端点2と決定して関連付ける。また、分類部12は、実線で囲まれた通信装置である、計算機装置21、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチEのうち、通信端点1および通信端点2のIPアドレスと同一である計算機装置21を除外する。すなわち、分類部12は、通信端点1および通信端点2のIPアドレスと同一ではないIPアドレスであるルータA、ルータQ、スイッチB、スイッチCおよびスイッチEを通過装置として設定して、フローIDと関連付ける。そして、分類部12は、関連付けた情報をグループ情報データベースD2に記憶する。
同様に、点線で囲まれたフローデータに含まれる送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスは同一である。そのため、分類部12は、点線で囲まれた通信装置である、計算機装置22、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチFを1つのグループとして分類する。この際、分類部12は、当該グループに対してフローIDを設定し、送信元IPアドレスを通信端点1とし、宛先IPアドレスを通信端点2と決定して関連付ける。また、分類部12は、実線で囲まれた通信装置である、計算機装置22、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチFのうち、通信端点1および通信端点2のIPアドレスと同一である計算機装置22を除外する。すなわち、分類部12は、通信端点1および通信端点2のIPアドレスと同一ではないIPアドレスであるルータA、ルータQ、スイッチB、スイッチCおよびスイッチFを通過装置として設定して、フローIDと関連付ける。そして、分類部12は、関連付けた情報をグループ情報データベースD2に記憶する。
そうすると、図5に示すように、複数の通信装置が複数のグループに分類される。各グループは、フローID、通信端点1、通信端点2および通過装置が関連付けられる。
ここで、分類部12が、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチEのグループにフローID#1を設定し、ルータA、ルータQ、スイッチB、スイッチCおよびスイッチFのグループにフローID#2を設定したとする。
そうすると、図5に示すように、フローID#1には、通信端点1にフローデータ群の送信元IPアドレスである192.168.10.25が設定され、通信端点2にフローデータ群の宛先IPアドレスである192.168.20.5が設定される。また、フローID#1には、通過装置として、スイッチE、C、B、QおよびルータAが設定される。
同様に、フローID#2には、通信端点1にフローデータ群の送信元IPアドレスである192.168.10.26が設定され、通信端点2にフローデータ群の宛先IPアドレスである192.168.20.5が設定される。また、フローID#2には、通過装置として、スイッチF、C、B、QおよびルータAが設定される。
なお、図5において、通信端点1および通信端点2には、装置名およびIPアドレスを記載しているが、説明を行う上で便宜的に装置名を記載している。実際は、通信端点1および通信端点2には、IPアドレスのみが設定される。
図2に戻り、算出部13の説明を行う。算出部13は、各グループに設定された通過装置情報をグループ間で比較して、比較したグループ間の差分情報を算出する。具体的には、算出部13は、通信端点1および2に設定した2つのIPアドレスのいずれかが同一であるグループを抽出し、抽出されたグループの通過装置をグループ間で比較して、比較したグループ間の差分情報を算出する。なお、算出部13は、全てのグループに対して、通過装置情報をグループ間で比較して、比較したグループ間の差分情報を算出し、通信端点1および2に設定した2つのIPアドレスのいずれかが同一ではない差分情報を除外するようにしてもよい。
例えば、図5に示した例では、フローID#1および#2は、通信端点2のIPアドレスが192.168.20.50で同一であるため、算出部13は、フローID#1とフローID#2の通過装置情報を比較して、差分情報を算出する。他のフローIDに対しても同様に、算出部13は、通信端点1および2に設定した2つのIPアドレスのいずれかが同一であるグループを抽出し、抽出されたグループの通過装置をグループ間で比較して、比較したグループ間の差分情報を算出する。
決定部14は、算出部13が算出したグループ間の差分情報を用いて、通信システム100が形成するネットワークのネットワークトポロジを決定する。
具体的には、決定部14は、算出された差分情報のうち、差分数が1つである差分情報を選択する。決定部14は、差分情報の算出元の2つのグループにおいて、差分として算出された通過装置が、2つのグループの通信端点1および通信端点2のIPアドレスのうち、IPアドレスが一致しない通信装置に接続する通過装置と決定する。
次に、決定部14は、算出された差分情報に接続関係が決定されたIPアドレスが含まれている場合、当該IPアドレスを除外した差分情報であって、差分数が1つである差分情報を選択する。そして、決定部14は、差分情報の算出元の2つのグループにおいて、差分として算出された通過装置が、当該2つのグループにおいて接続関係が最後に決定された通過装置に接続される通過装置として決定する。
決定部14は、上記処理を繰り返し行うことにより、各グループにおいて、通信端点1および通信端点2のうち、一方の通信端点から他方の通信端点までの通信装置の接続関係を決定していく。決定部14は、全ての差分情報を処理すると、全ての通信装置の接続関係を決定することが出来るので、通信システム100のネットワークトポロジを決定することが出来る。決定部14は、通信装置の接続関係を決定すると、トポロジデータベースD3に格納する。
ここで、図6を用いて、トポロジデータベースD3について説明する。図6は、トポロジデータベースを説明する図である。
図6に示すように、トポロジデータベースD3には、接続装置1および接続装置2が関連付けて設定される。
接続装置1および接続装置2には、装置名が設定され、接続装置1と接続装置2とが接続する装置であることを示す情報が設定される。例えば、2行目には接続装置1として計算機装置201が設定され、接続装置2にはスイッチEが設定されており、計算機装置201とスイッチEとが接続関係であることを示している。
なお、図6において、接続装置1および接続装置2には、装置名を記載しているが、説明を行う上で便宜的に装置名を記載している。実際は、接続装置1および接続装置2には、IPアドレスが設定される。
次に、図2に戻り、記憶部15について説明する。記憶部15は、データの書き込みおよび読み込みを行い、データの管理を行う記憶部である。記憶部15は、フロー情報データベースD1、グループ情報データベースD2およびトポロジデータベースD3を記憶する。
<トポロジ決定装置の動作例>
続いて、図7を用いて、トポロジ決定装置10の動作例を説明する。図7は、実施の形態にかかるトポロジ決定装置の動作例を示すフローチャートである。なお、トポロジ決定装置の動作例を説明する際に、図4~図6を用いて、具体例を挙げつつ説明する。また、前提として、図2の通信システム100において、計算機装置(計算機装置21~28)から基幹サーバ50への通信が行われたと仮定して説明を行う。
まず、取得部11は、各通信装置からフローデータを取得し、取得したフローデータをフロー情報データベースD1に格納し保存する(ステップS1)。
次に、分類部12は、フロー情報データベースD1に格納されたフローデータを用いて、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一であるフローデータをグルーピングする(ステップS2)。
取得部11が図4に示すフローデータを取得したとする。実線で示した枠内に設定された装置は、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一である。同様に、点線で示した枠内に設定された装置についても、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一である。そのため、分類部12は、実線で示した枠内の情報を1つのグループに分類し、点線で示した枠内の情報を上記と異なるグループに分類する。そして、分類部12は、各グループに対して、フローIDを設定する。さらに、分類部12は、送信元IPアドレスを通信端点1に設定し、宛先IPアドレスを通信端点2に設定し、送信元IPアドレスおよび宛先IPアドレスの2つのIPアドレスが同一であるフローデータを有する通信装置を通過装置として設定する。なお、この際、分類部12は、送信元IPアドレスまたは宛先IPアドレスと同一のIPアドレスを有する通信装置は、分類をする際に除外する。つまり、分類部12は、送信元IPアドレスおよび宛先IPアドレスのいずれかと同一ではないIPアドレスを有する通信装置を分類する。図4に示した例では、計算機装置21および計算機装置22は、送信元IPアドレスと同一のIPアドレスを有している。そのため、分類部12は、計算機装置21および計算機装置22を除いた通信装置をグルーピングする。分類部12は、グルーピングを行った結果を、グループ情報データベースD2に格納する。
分類部12がグルーピングした結果が図5のようになったとする。そうすると、図5に示したように、図4における実線で示した情報をフローID#1に設定し、図4における点線で示した情報をフローID#2に設定する。このように分類することにより、IPアドレス192.168.10.25から192.168.20.50への通信はルータA、ルータQ、スイッチB、スイッチC、およびスイッチEを通過しており、順番は不明であるが物理的に接続されていることが分かる。なお、図5において装置名が記載されているが、説明を行う上で便宜的に付与しており、実際はIPアドレスのみが設定される。
図7に戻り、トポロジ決定装置10の動作例の説明を続ける。次に、トポロジ決定装置10は、以降に説明するステップS3~ステップS8を繰り返し実行する。トポロジ決定装置10は、ステップS3~ステップS8において、ステップS2で分類したグループ同士の通過装置の比較処理を行う。トポロジ決定装置10は、分類された複数のグループのうちの1つを固定して、他の全てのグループと比較を繰り返し行う。トポロジ決定装置10は、グループ同士の通過装置の比較をn回分行う。ここで、グループ同士の通過装置の比較の繰り返し数は、ステップS2において分類したグループのうち、通過装置情報数が一番多いグループの通過装置数になる。図5に示した一例では、通過装置の数が一番多いのは、フローIDが#9であり、通過装置数は7であるので、トポロジ決定装置10は、7回分の比較処理を行う。
ステップS3において、算出部13は、比較する2つのグループの送信元および宛先IPアドレスに注目し、2つのグループにおける2つの通信端点のIPアドレスのうちの1つが同一であるか否かを判定する(ステップS3)。ここで、2つの通信端点のいずれかが同一であることは、通信の末端に存在する通信装置のIPアドレスが同じであることを意味する。
ステップS4に進むグループは、送信元IPアドレスがXである2つのグループ、宛先IPのIPアドレスがXである2つのグループ、送信元IPアドレスがXのグループと宛先IPアドレスがXのグループとであるグループである。図5に示す一例においては、フローID#1およびフローID#とは、2つの通信端点のうち1つが同一IPアドレス(192.168.20.50)である。そのため、フローID#1およびフローID#2を比較するとステップS3のYESに該当するのでステップS4に進む。
一方、2つの通信端点が異なるグループである場合(ステップS3のNO)、ステップS4~ステップS8は実行しない。
次に、算出部13は、2つの通信端点のうちの1つが同一であるグループ同士に対して、通過装置情報の差分情報を算出する(ステップS4)。
図5に示すように、フローID#1とフローID#2とは2つの通信端点のうちの1つが同一であるので、算出部13は、フローID#1とフローID#3との通過装置情報を比較し、通過装置情報の差分情報を算出する。フローID#1とフローID#2との通過装置情報を算出すると、差分数は1つとなり、差分情報は、フローID#1ではスイッチEとなり、フローID#2ではスイッチFとなる。
次に、決定部14は、ステップS4において算出した通過装置情報の差分数が、グループ間の比較処理の回数と同じであるかを判定する(ステップS5)。例えば、グループ間の比較処理が1回目の比較処理である場合、決定部14は、通過装置情報の差分数が1であるかを判定する。また、グループ間の比較処理が2回目の比較処理である場合、決定部14は、通過装置情報の差分数が2であるかを判定する。
ステップS5において、通過装置情報の差分が、グループ間の通過装置情報の比較処理の回数と同じである場合(ステップS5のYES)、ステップS6に進む。例えば、1回目の繰り返し処理(n=1)の場合であって、図5のフローID#1およびフローID#2の比較の場合、通過装置情報の差分数は1つとなるので、ステップS5のYESに該当し、ステップS6に進む。
一方、通過装置情報の差分が、グループ間の通過装置情報の比較処理の回数と同じでは無い場合(ステップS5のNO)、ステップS6~ステップS8は実行しない。
次に、決定部14は、算出した差分情報の中に、接続関係が決定された通信装置がある場合は、算出された差分情報から除外する(ステップS6)。具体的には、決定部14は、トポロジデータベースD3を参照して、2つの通信端点のうち同じIPアドレスではない通信端点から順に接続関係が決定された通信装置情報を取得する。そして、決定部14は、ステップS5において算出した通過装置情報の差分情報に、接続関係が決定された通信装置が含まれる場合、接続関係が決定された通信装置を差分情報から除外する。この際、決定部14は、比較対象の2つのグループのそれぞれに対して、接続関係が決定された通信装置情報のうち、最後に接続関係が決定された通信装置を保持しておく。接続関係が決定された通信装置が無い場合は、決定部14は、2つの通信端点のうち、同じIPアドレスではない通信端点のIPアドレスの通信装置を、比較対象の2つのグループのそれぞれにおける、最後に接続関係が決定された通信装置として保持する。また、決定部14は、差分情報として算出されなかった通信装置の接続関係は考慮しない。
次に、決定部14は、ステップS6において、接続関係が決定された通信装置を除外したことにより、通過装置情報の差分数が1つであるかを判定する(ステップS7)。通過装置情報の差分数が1つである場合(ステップS7のYES)、ステップS8に進む。一方、通過装置情報の差分数が1つではない場合(ステップS7のNO)、ステップS8を実行しない。
ここで、ステップS7において比較をしている2つのグループの通信端点のうちの1つは同一である。そして、通過装置情報の差分が1つであるということは、差分情報として算出された通過装置は、最後に接続関係が決定された通信装置に接続される通信装置となる。
そのため、決定部14は、差分情報として算出された通過装置が、最後に接続関係が決定された通信装置に接続される通信装置と決定する(ステップS8)。具体的には、決定部14は、ステップS6において、トポロジデータベースD3を参照して、2つの通信端点のうち同じIPアドレスではない通信端点から順に接続関係が決定された通信装置を取得している。そのため、決定部14は、差分情報として算出された通信装置が、最後に接続された通信装置に接続される通信装置と決定する。決定部14は、接続関係を決定すると、トポロジデータベースD3の接続装置1および接続装置2に接続関係が決定された2つの通信装置のIPアドレスを設定する。
例えば、n=1の比較であって、フローID#1とフローID#2とを比較した場合、通過装置情報の差分は、フローID#1においてはスイッチEであり、フローID#2においてはスイッチFである。決定部14は、ステップS6において、最後に接続関係が決定された通信装置として、フローID#1においては計算機装置21として、フローID#2においては計算機装置22として保持している。そのため、決定部14は、フローID#1において、スイッチEが計算機装置21に接続される通信装置であると決定し、トポロジデータベースD3に当該2つの通信装置の接続関係を格納する。同様に、決定部14は、フローID#2において、スイッチFが計算機装置22に接続される通信装置であると決定し、トポロジデータベースD3に当該2つの通信装置の接続関係を格納する。
グループ間の通過装置情報の1回目の比較処理(n=1)の場合、ステップS8までの処理が終了すると、以下の接続関係が決定される。ここで、「-(ハイフン)」で接続された通信装置は、接続関係にあるということを示している。
フローID#1:計算機装置21-SW E
フローID#2:計算機装置22-SW F
フローID#3:計算機装置23-SW G
フローID#4:計算機装置24-SW H
フローID#5:計算機装置25-SW L
フローID#6:計算機装置26-SW M
フローID#7:計算機装置27-SW N
フローID#8:計算機装置28-SW O
次に、トポロジ決定装置10は、nの値を1つインクリメントして、2回目の比較処理を行う。n=2の場合、ステップS5において、決定部14は、通過装置情報の差分数が2となるグループを選択する。図5に示した一例では、例えば、フローID#1およびフローID#3の通過装置情報の差分数が2であるため、決定部14は、当該フローIDを選択する。また、フローID#1およびフローID#3の通過装置情報の差分情報は、フローID#1においては、スイッチEおよびスイッチCであり、フローID#3においては、スイッチGおよびスイッチDである。
次に、ステップS6において、決定部14は、フローID#1およびフローID#3の接続関係をトポロジデータベースD3から取得して、接続関係が決定された通信装置情報を差分情報から除外する。フローID#1において、計算機装置21とスイッチEとの接続関係が決定されている。また、フローID#3においては、計算機装置23とスイッチGとの接続関係が決定されている。そのため、決定部14は、フローID#1においてはスイッチEを差分情報から除外し、フローID#3においてはスイッチGを差分情報から除外する。そうすると、フローID#1およびフローID#3の通過装置情報の差分数は1つずつとなるため、ステップS7の判定はYESとなり、ステップS8に進む。
次に、ステップS8において、決定部14は、差分情報として算出されたスイッチCおよびスイッチDの接続関係を決定する。具体的には、決定部14は、フローID#1においてスイッチCはスイッチEと接続されると決定し、フローID#3においてスイッチDはスイッチGと接続されると決定する。
グループ間の通過装置情報の2回目の比較処理(n=2)の場合、ステップS8までの処理が終了すると、以下の接続関係が決定される。
フローID#1:計算機装置21-SW E-SW C
フローID#2:計算機装置22-SW F-SW C
フローID#3:計算機装置23-SW G-SW D
フローID#4:計算機装置24-SW H-SW D
フローID#5:計算機装置25-SW L-SW J
フローID#6:計算機装置26-SW M-SW J
フローID#7:計算機装置27-SW N-SW K
フローID#8:計算機装置28-SW O-SW K
次に、トポロジ決定装置10は、nの値を1つインクリメントして、3回目の比較処理を行う。n=3の場合、例えば、フローID#2およびフローID#7は、3つの通過装置が差分となるため、比較を行うグループとして比較処理が行われる。
フローID#2については、計算機装置22-SW F-SW Cが接続されていることが決定されている。また、フローID#7については、計算機装置27-SW N-SW Kが接続されていることが決定されている。そのため、フローID#2においては、スイッチBが差分情報として算出され、フローID#7においては、スイッチIが差分情報として算出される。つまり、フローID#1およびフローID#7の差分数は1つずつであるため、決定部14は、スイッチBおよびスイッチIの接続関係を決定する。
グループ間の通過装置情報の3回目の比較処理(n=3)の場合、ステップS8までの処理が終了すると、以下の接続関係が決定される。
フローID#1:計算機装置21-SW E-SW C-SW B
フローID#2:計算機装置22-SW F-SW C-SW B
フローID#3:計算機装置23-SW G-SW D-SW B
フローID#4:計算機装置24-SW H-SW D-SW B
フローID#5:計算機装置25-SW L-SW J-SW I
フローID#6:計算機装置26-SW M-SW J-SW I
フローID#7:計算機装置27-SW N-SW K-SW I
フローID#8:計算機装置28-SW O-SW K-SW I
トポロジ決定装置10は、上記処理を、nを1ずつインクリメントして、通過装置数の最大値(図5の例ではn=7)まで繰り返し行うことによって、通信システム100が形成するネットワークのネットワークトポロジを決定する。
なお、接続順序が決定できない通信装置が含まれる場合は、接続順序が決定できない通信装置の集合をひとまとめにして接続関係を決定してもよい。例えば、計算機装置21と基幹サーバ50との間の通信において、ルータAおよびルータQの順番が確定できなかったとする。この場合、決定部14は、計算機装置21-SW E-SW C-SW B-{RouterA、RouterQ}-基幹サーバ50のように、ひとまとめにして接続関係を決定してもよい。
以上説明したように、取得部11は、複数の通信装置からフローデータを取得し、分類部12が取得したフローデータを用いて、複数の通信装置を複数のグループのいずれかに分類する。算出部13は、各グループの通過装置情報の差分情報を算出する。そして、決定部14は、算出された差分情報を用いて、各グループにおける通信装置の接続関係を決定する。すなわち、実施の形態にかかるトポロジ決定装置10を用いることにより、ネットワーク構成を可視化することが可能となる。
また、実施の形態にかかるトポロジ決定装置10によれば、例えば、マルチベンダ環境においても適用することが可能となる。一般的に、ネットワーク構成を可視化する場合、LLDP(Link Layer Discovery Protocol)のような装置固有のプロトコルが用いられる。しかしながら、昨今の大規模ネットワークにおいては、マルチベンダのネットワーク装置により構成されることが想定される。そのため、ネットワークに含まれる通信装置の全てがLLDPに対応しているとは限らない。また、ネットワーク構成を可視化する場合、ネットワークトポロジを検出するための特殊なパケットを用いる技術も想定される。しかしながら、上記と同様の理由により、ネットワークに含まれる通信装置の全てが、ネットワークトポロジを検出するための特殊なパケットを用いる技術に対応しているとは限らない。一方、例えば、sFlowやNetFlow等のフローデータおよびパケットキャプチャ情報は、どのベンダのネットワーク装置であっても対応している情報である。そのため、実施の形態にかかるトポロジ決定装置10を用いることにより、ネットワークに含まれる通信装置に変更を加える必要がなく、ネットワーク構成を可視化することが可能となる。したがって、実施の形態にかかるトポロジ決定装置10を用いることにより、開発費用を低減し、マルチベンダ環境にも適用が可能となる。
(変形例)
上述した実施の形態では、取得部11は、ネットワークに含まれる通信装置からフローデータを取得する。そして、分類部12が、複数の通信装置をいずれかのグループに分類する際に、フローデータの送信元IPアドレスおよび宛先IPアドレスと同一である通信装置を除外して分類を行うことで説明した。しかしながら、これに限られず、取得部11は、ネットワークに含まれる通信装置のうち、中継装置のみからフローデータを取得するようにしてもよい。そして、分類部12は、取得したフローデータに基づいて、複数の中継装置をいずれかのグループに分類するようにしてもよい。このようにしても、上述した実施の形態と同様の効果を有することが可能となる。
(その他の実施の形態)
(1)上述した実施の形態にかかるトポロジ決定装置10は、表示部および配信部をさらに備えていてもよい。図8は、その他の実施の形態にかかるトポロジ決定装置の構成例を示す構成図である。トポロジ決定装置10は、上述した実施の形態の構成に加えて、さらに表示部16および配信部17を備える。
表示部16は、ディスプレイであり、決定部14が決定したネットワークトポロジを表示する。表示部16は、トポロジデータベースD3の内容を、そのまま表示してもよい。もしくは、表示部16は、トポロジデータベースD3の内容に基づいて、図2に示したようなネットワーク構成図のようにネットワークトポロジを表示してもよい。
配信部17は、通信インタフェースであって、決定部14が決定したネットワークトポロジを配信する。配信部17は、例えば、通信システム100が形成するネットワークの管理者または運用者に定期的にネットワークトポロジを配信してもよい。
(2)上述した実施の形態にかかるトポロジ決定装置は、次のようなハードウェア構成を有していてもよい。図9は、上述した実施の形態において説明したトポロジ決定装置1および10(以下、トポロジ決定装置1等と称する)の構成例を示すブロック図である。図9を参照すると、トポロジ決定装置1等は、ネットワーク・インターフェース1201、プロセッサ1202、及びメモリ1203を含む。ネットワーク・インターフェース1201は、通信システムを構成する他の通信装置と通信するために使用される。ネットワーク・インターフェース1201は、例えば、IEEE 802.11 seriesに準拠したネットワークインターフェースカード(NIC)を含んでもよい。
プロセッサ1202は、メモリ1203からソフトウェア(コンピュータプログラム)を読み出して実行することで、上述の実施形態においてフローチャートを用いて説明されたトポロジ決定装置1等の処理を行う。プロセッサ1202は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、又はCPU(Central Processing Unit)であってもよい。プロセッサ1202は、複数のプロセッサを含んでもよい。
メモリ1203は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ1203は、プロセッサ1202から離れて配置されたストレージを含んでもよい。この場合、プロセッサ1202は、図示されていないI/Oインタフェースを介してメモリ1203にアクセスしてもよい。
図9の例では、メモリ1203は、ソフトウェアモジュール群を格納するために使用される。プロセッサ1202は、これらのソフトウェアモジュール群をメモリ1203から読み出して実行することで、上述の実施形態において説明されたトポロジ決定装置1等の処理を行うことができる。
図9を用いて説明したように、トポロジ決定装置1等が有するプロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1または複数のプログラムを実行する。
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)を含む。さらに、非一時的なコンピュータ可読媒体の例は、CD-ROM(Read Only Memory)、CD-R、CD-R/Wを含む。さらに、非一時的なコンピュータ可読媒体の例は、半導体メモリを含む。半導体メモリは、例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施の形態を適宜組み合わせて実施されてもよい。
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する決定部と、を備えるトポロジ決定装置。
(付記2)
前記決定部は、
前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行う、付記1に記載のトポロジ決定装置。
(付記3)
前記決定部は、前記算出された差分情報のうち、各グループに属する中継装置が有するフロー情報に含まれる通信装置情報のうち、いずれか1つが同一であるグループ間の差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する、付記1または2に記載のトポロジ決定装置。
(付記4)
前記取得部は、前記複数の通信装置の各々から前記フロー情報を取得し、
前記分類部は、前記複数の通信装置のうち前記フロー情報に含まれる通信装置情報と同一の通信装置情報が設定されていない通信装置を前記複数のグループのいずれかに分類する、付記1~3のいずれか1項に記載のトポロジ決定装置。
(付記5)
前記フロー情報は、フローデータおよびパケットキャプチャ情報の少なくとも1つを含む、付記1~4のいずれか1項に記載のトポロジ決定装置。
(付記6)
前記フローデータは、sFlowおよびNetFlowの少なくとも1つを含む、付記5に記載のトポロジ決定装置。
(付記7)
前記決定されたネットワークトポロジを表示する表示部をさらに備える、付記1~6のいずれか1項に記載のトポロジ決定装置。
(付記8)
前記決定されたネットワークトポロジを所定の宛先に配信する配信部をさらに備える、付記1~7のいずれか1項に記載のトポロジ決定装置。
(付記9)
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得し、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類し、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出し、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する、トポロジ決定方法。
(付記10)
ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得することと、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類することと、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出することと、
前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定することと、をコンピュータに実行させるトポロジ決定プログラム。
(付記11)
複数の中継装置を含む複数の通信装置と、前記複数の通信装置を含むネットワークのネットワークトポロジを決定するトポロジ決定装置とを備え、
前記トポロジ決定装置は、
前記複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
前記算出された差分情報を用いて、前記複数の通信装置の接続関係を決定する決定部と、を備える通信システム。
(付記12)
前記決定部は、
前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行う、付記11に記載の通信システム。
1、10 トポロジ決定装置
2、11 取得部
3、12 分類部
4、13 算出部
5、14 決定部
15 記憶部
16 表示部
17 配信部
21~28 計算機装置
29~45 中継装置
50 基幹サーバ
60、70 ネットワーク
100 通信システム
1201 ネットワーク・インターフェース
1202 プロセッサ
1203 メモリ

Claims (9)

  1. ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
    前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
    各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
    前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する決定部と、を備え
    前記決定部は、
    前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
    前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行う、トポロジ決定装置。
  2. 前記決定部は、前記算出された差分情報のうち、各グループに属する中継装置が有するフロー情報に含まれる通信装置情報のうち、いずれか1つが同一であるグループ間の差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定する、請求項に記載のトポロジ決定装置。
  3. 前記取得部は、前記複数の通信装置の各々から前記フロー情報を取得し、
    前記分類部は、前記複数の通信装置のうち前記フロー情報に含まれる通信装置情報と同一の通信装置情報が設定されていない通信装置を前記複数のグループのいずれかに分類する、請求項1又は2に記載のトポロジ決定装置。
  4. 前記フロー情報は、フローデータを含む、請求項1~のいずれか1項に記載のトポロジ決定装置。
  5. 前記フローデータは、sFlowおよびNetFlowの少なくとも1つを含む、請求項に記載のトポロジ決定装置。
  6. 前記フロー情報は、パケットキャプチャ情報を含む、請求項1~3のいずれか1項に記載のトポロジ決定装置。
  7. ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得し、
    前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類し、
    各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出し、
    前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定し、
    前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
    前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行う、トポロジ決定方法。
  8. ネットワークに含まれる複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得することと、
    前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類することと、
    各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出することと、
    前記算出された差分情報を用いて、前記ネットワークに含まれる複数の通信装置の接続関係を決定することと、
    前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
    前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行うことと、をコンピュータに実行させるトポロジ決定プログラム。
  9. 複数の中継装置を含む複数の通信装置と、前記複数の通信装置を含むネットワークのネットワークトポロジを決定するトポロジ決定装置とを備え、
    前記トポロジ決定装置は、
    前記複数の中継装置の各々から、送信元の通信装置情報および宛先の通信装置情報を含むフロー情報を取得する取得部と、
    前記フロー情報に含まれる通信装置情報が一致するフロー情報を有する中継装置が同一グループに属するように、前記複数の中継装置を複数のグループのいずれかに分類する分類部と、
    各グループに属する中継装置の情報を示す中継装置情報をグループ間で比較し、グループ間の差分情報を算出する算出部と、
    前記算出された差分情報を用いて、前記複数の通信装置の接続関係を決定する決定部と、を備え
    前記決定部は、
    前記算出された差分情報のうち、差分数が1つである差分情報を選択し、前記選択された差分情報の算出元である第1のグループおよび第2のグループにおいて、差分として算出された中継装置が、前記第1のグループの中継装置が有するフロー情報に含まれる通信装置情報および前記第2のグループの中継装置が有するフロー情報に含まれる通信装置情報のうち、通信装置情報が一致しない通信装置に接続される中継装置と決定し、
    前記算出された差分情報に接続関係が決定された通信装置情報が含まれている場合、当該通信装置情報を除外した差分情報であって、差分数が1つである差分情報を選択し、前記第1のグループおよび前記第2のグループにおいて、差分として算出された中継装置が、前記第1のグループおよび前記第2のグループにおいて接続関係が最後に決定された中継装置に接続される中継装置として決定することを繰り返し行う、通信システム。
JP2018025807A 2018-02-16 2018-02-16 トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム Active JP7056207B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018025807A JP7056207B2 (ja) 2018-02-16 2018-02-16 トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018025807A JP7056207B2 (ja) 2018-02-16 2018-02-16 トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム

Publications (2)

Publication Number Publication Date
JP2019145893A JP2019145893A (ja) 2019-08-29
JP7056207B2 true JP7056207B2 (ja) 2022-04-19

Family

ID=67774011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018025807A Active JP7056207B2 (ja) 2018-02-16 2018-02-16 トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム

Country Status (1)

Country Link
JP (1) JP7056207B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230239216A1 (en) * 2020-06-05 2023-07-27 Nippon Telegraph And Telephone Corporation Communication device setting management device, communication device setting management method and program
CN113468700A (zh) * 2021-07-08 2021-10-01 安天科技集团股份有限公司 拓扑信息识别方法、装置、计算设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009171194A (ja) 2008-01-16 2009-07-30 Oki Electric Ind Co Ltd パケットサンプリング方法、パケットサンプリング装置、ネットワーク監視装置
US20090327903A1 (en) 2006-07-06 2009-12-31 Referentia Systems, Inc. System and Method for Network Topology and Flow Visualization
US20100214947A1 (en) 2009-02-24 2010-08-26 International Business Machines Corporation Determination of Network Topology Using Flow-Based Traffic Information
JP2011146920A (ja) 2010-01-14 2011-07-28 Fujitsu Ltd トポロジーツリー作成装置、プログラム、及び方法
CN104618377A (zh) 2015-02-04 2015-05-13 上海交通大学 基于NetFlow的僵尸网络检测系统与检测方法
JP2015226280A (ja) 2014-05-29 2015-12-14 日本電信電話株式会社 トポロジ推定装置およびプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327903A1 (en) 2006-07-06 2009-12-31 Referentia Systems, Inc. System and Method for Network Topology and Flow Visualization
JP2009171194A (ja) 2008-01-16 2009-07-30 Oki Electric Ind Co Ltd パケットサンプリング方法、パケットサンプリング装置、ネットワーク監視装置
US20100214947A1 (en) 2009-02-24 2010-08-26 International Business Machines Corporation Determination of Network Topology Using Flow-Based Traffic Information
JP2011146920A (ja) 2010-01-14 2011-07-28 Fujitsu Ltd トポロジーツリー作成装置、プログラム、及び方法
JP2015226280A (ja) 2014-05-29 2015-12-14 日本電信電話株式会社 トポロジ推定装置およびプログラム
CN104618377A (zh) 2015-02-04 2015-05-13 上海交通大学 基于NetFlow的僵尸网络检测系统与检测方法

Also Published As

Publication number Publication date
JP2019145893A (ja) 2019-08-29

Similar Documents

Publication Publication Date Title
JP7108674B2 (ja) 故障根本原因決定方法及び装置並びにコンピュータ記憶媒体
EP3881495A1 (en) Algorithmic problem identification and resolution in fabric networks by software defined operations, administration, and maintenance
JP7416919B2 (ja) データ処理方法及び装置並びにコンピュータ記憶媒体
CN106919242A (zh) 服务器系统及其管理方法及计算机可读式存储多媒体
JP2006222808A (ja) 通信ネットワークにおける障害の原因を特定する障害管理装置および方法
EP3222003B1 (en) Inline packet tracing in data center fabric networks
US11799888B2 (en) Automatic identification of roles and connection anomalies
JP2011146920A (ja) トポロジーツリー作成装置、プログラム、及び方法
US20130042020A1 (en) Quick Network Path Discovery
JP7056207B2 (ja) トポロジ決定装置、トポロジ決定方法、トポロジ決定プログラムおよび通信システム
CN107645402A (zh) 一种路由管理方法和装置
JP2022186912A (ja) ノード構築装置、ノード構築方法、及びプログラム
US20140006554A1 (en) System management apparatus, system management method, and storage medium
TWI636679B (zh) 虛擬區域網路配置系統與方法及其電腦程式產品
CN109039959A (zh) 一种sdn网络规则的一致性判断方法及相关装置
CN108769118A (zh) 一种分布式系统中主节点的选取方法及装置
US9893979B2 (en) Network topology discovery by resolving loops
CN110858810A (zh) 网络链路状态监测方法、设备、系统及介质
CN108833129A (zh) 一种网络拓扑发现方法和装置
JP6407092B2 (ja) 負荷分散装置、負荷分散方法及びプログラム
CN109150707B (zh) 路由路径分析方法及设备
US20160344591A1 (en) Determining Connections of Non-External Network Facing Ports
CN102075364B (zh) 一种直连链路的确定方法和设备
JP5686188B2 (ja) 経路探索プログラムおよび情報処理装置
JP6246885B1 (ja) 経路解析処理装置および経路解析処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211124

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: 20220308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220321

R151 Written notification of patent or utility model registration

Ref document number: 7056207

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151