(57)【要約】【課題】各ノードの送受信トラフィック量の測定方法が異なる場合であっても、精度を向上させてＩＦ間の接続関係（トポロジ）を推定する。【解決手段】トポロジ推定装置１は、送受信トラフィック量の変動傾向の同期性に基づく、（原則１Ａ）あるサブネットへの流入トラフィックの量と流出トラフィックの量とは、変動傾向が等しい、の条件を満たすか否かの第１の判定、（原則２）あるノードからのサブネットへの流入トラフィックは同一サブネットの異なるノードへ出ていく、の条件を満たすか否かの第２の判定、の両方の判定を満たす場合に、ＩＦ間に接続関係があると判定する。【選択図】図３
2015142204.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを構成する複数の装置の接続関係を推定するトポロジ推定装置であって、
前記装置が備えるＩＦ（Interface）それぞれの時系列の送信トラフィック量および受信トラフィック量の情報が当該ＩＦ毎に格納されるＩＦ送受信量情報、が記憶される記憶部と、
前記ＩＦ毎のＩＦ送受信量情報を参照し、サブネットを構成するＩＦの数であるｋ個（ｋ≧２）のＩＦの組の全ての組み合わせを、接続関係の判定候補として生成する判定候補生成部と、
前記生成した判定候補となるＩＦの組それぞれについて、前記ＩＦ毎のＩＦ送受信量情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの、前記受信トラフィック量の合計から前記送信トラフィック量の合計を減算した差分の絶対値を示す平衡度を計算する平衡度計算部と、
前記生成した判定候補となるＩＦの組それぞれについて、前記ＩＦ毎のＩＦ送受信量情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの、前記送信トラフィック量および前記受信トラフィック量の変動傾向の一致度を示す評価値を計算する評価値計算部と、
前記平衡度と前記評価値から算出した値が所定値以下であることを判定する第１の判定、および、前記判定候補となるＩＦの組のうち、一つのＩＦを抽出し、前記抽出したＩＦの前記送信トラフィック量が、前記抽出したＩＦを除く全てのＩＦの前記受信トラフィック量の合計以下であることを、前記判定候補となるＩＦの組を構成する全てのＩＦを抽出して成立することを判定する第２の判定、を前記判定候補となるＩＦの組それぞれについて実行し、前記第１の判定および前記第２の判定を満たす場合に、前記判定候補となるＩＦの組を構成するＩＦ間に、接続関係があると判定する接続関係判定部と、
を備えることを特徴とするトポロジ推定装置。
【請求項２】
前記記憶部には、前記装置それぞれが備える前記ＩＦの識別情報が格納された装置ＩＦ対応情報がさらに記憶されており、
前記判定候補生成部は、前記生成した判定候補となるＩＦの組それぞれについて前記装置ＩＦ対応情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの全てが一つの装置に備わる場合に、その判定候補となるＩＦの組を前記生成したＩＦの組の全ての組み合わせから削除すること
を特徴とする請求項１に記載のトポロジ推定装置。
【請求項３】
請求項１または請求項２に記載のトポロジ推定装置の各機能を、コンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを構成する装置間の接続関係を推定するためのトポロジ推定装置およびプログラムに関する。
【背景技術】
【０００２】
ネットワークを運用し管理する上では、ネットワークを構成する装置間の接続関係（以下、「トポロジ」という。）を正確に把握することが重要となる。例えば、装置に故障が発生した場合、トポロジを用いて故障がネットワーク全体に与える影響を把握し、サービスへの影響を最小限にするために通信経路の切換え等を実行する。その際に、トポロジの情報が正確でなければ、故障の影響を正しく把握することができない。さらには、誤った経路への切換えにより正常な通信を中断させる可能性すらある。
【０００３】
そこで、トポロジを推定する手法として、装置が備えるＩＦ（インタフェース）毎の送受信トラフィック量を用いる手法が、非特許文献１に開示されている。この非特許文献１に記載されたトポロジの推定手法では、次の２つの原則を利用する。
（原則１）あるサブネットへの流入トラフィックの量と流出トラフィックの量は等しい。
（原則２）あるノードからのサブネットへの流入トラフィックは同一サブネットの異なるノードへ出ていく。
この２つの原則を利用し、サブネットを共有するノードをネットワークの中から全て求めることにより、トポロジを推定する。なお、ここでサブネットとは、複数のＩＦが接続された閉じたネットワークのことを意味する。以下、具体的に説明する。
【０００４】
図１に示すように、あるサブネットにｓ個のノードＮ（ノードＮ１〜ＮＳ）が接続されているものとする。サブネットには、各ノードが備えるＩＦが最低１つ以上接続され、合計ｍ個（ｍ≧ｓ）のＩＦが接続される。このサブネットに接続されたノードＮ１のＩＦの集合を「φ１」と定め、同様に、ノードＮ２〜ＮＳについても、「φ２」〜「φＳ」と定めたとする。この場合、サブネットへの流入／流出トラフィックはそれぞれ「φ１」〜「φＳ」の送信トラフィック量・受信トラフィック量それぞれの合計となる。そのため、（原則１）は、「φ１」〜「φＳ」を用いて、以下の判定式１として読み替えることができる。
（φ１〜φＳの送信トラフィック量の合計）＝（φ１〜φＳの受信トラフィック量の合計）
…  判定式１
そのため、判定式１が成立した場合、（原則１）を満たしていると判定することができる。
【０００５】
また、Ｎ１からこのサブネットへの流入トラフィックは、「φ１」の送信トラフィック量の合計であり、（原則２）に従えば、このトラフィックは、Ｎ１以外の残りｓ−１個のノードＮが有するＩＦのうち、このサブネットに接続されたＩＦ、すなわち、「φ２」〜「φＳ」の中の一つ以上のＩＦが受信することになる。そのため、以下の式が成立することになる。
（φ１の送信トラフィック量の合計）≦（φ２〜φＳの受信トラフィック量の合計）
これは、Ｎ２〜ＮＳについても同様である。よって、（原則２）は、以下の判定式２として読み替えることができる。
（φｉの送信トラフィック量の合計）≦（φｉを除く、φ１〜φＳの受信トラフィック量の合計）
［ｉ＝１，２，…，ｓ］
…  判定式２
そのため、判定式２が成立した場合、（原則２）を満たしていると判定することができる。
【０００６】
この非特許文献１に記載のトポロジの推定手法では、ｓ個のノードＮが判定式１、判定式２の両条件を満たす場合に、それらのノード間に接続関係があるとみなす。よって、推定対象の各ノードＮが備えるＩＦの送信トラフィック量および受信トラフィック量の値を基に、判定式１、判定式２の両方の条件を満たすノードＮの組を求めることで、ノード間の接続関係を全て求めることができる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】丹治  直幸、他３名、「トラフィック量を用いたネットワークトポロジー推定技術の検討」、社団法人電子情報通信学会、信学技報、vol.112、no.492、ICM2012-75、pp.95-100、2013年3月
【発明の概要】
【発明が解決しようとする課題】
【０００８】
非特許文献１に記載のトポロジの推定手法では、（原則１）において送受信トラフィック量の一致度を用いて接続関係を評価している。しかしながら、送受信トラフィック量として送受信バイト量などを用いた場合は、接続関係を正しく推定できない場合がある。送受信バイト量のカウント方法は、装置の仕様等により、ヘッダ部を含めて数える場合とヘッダ部を含めて数えない場合とがある。よって、ヘッダ部を含めて数える装置とヘッダ部を含めて数えない装置とが接続されているときは、常に一定の割合で送受信バイト量に差が生じるため、（原則１）を満たさない。以下、図２を参照して、具体的に説明する。
【０００９】
図２に示すように、ノードＮ１のＩＦ「３」とノードＮ２のＩＦ「１」とは、接続関係にある。つまり、サブネットを構成している。また、ノードＮ１は、送受信バイト量のカウント方法として、ヘッダ部を含めて数えない装置であり、ノードＮ２は、ヘッダ部を含めて数える装置であるとする。ここで、ノードＮ１のＩＦ「３」の送受信トラフィック量をグラフ２０１ａおよび表２０１ｂで示し、ノードＮ２のＩＦ「１」の送受信トラフィック量をグラフ２０２ａおよび表２０２ｂで示している。
【００１０】
この例において、時刻ｔ１の送受信トラフィック量に対し、非特許文献１に記載のトポロジ推定方法を適用した場合を考えると、（判定式１）は、図２の表２０１ｂおよび表２０２ｂを参照して、以下のようになる。
（送信トラフィック量の合計）＝（受信トラフィック量の合計）
１０＋７ ≠ ５＋１４
このように、ヘッダ部を含めて数える装置（ノードＮ２）とヘッダ部を含めて数えない装置（ノードＮ１）とが接続されているときは、常に一定の割合で送受信バイト量に差が生じるため（図２の符号２１０参照）、（判定式１）の条件を満たさない。このため、非特許文献１に記載のトポロジの推定手法では、ノードＮ１のＩＦ「３」とノードＮ２のＩＦ「１」とが、実際には接続関係にあるにもかかわらず、接続関係にはないと推定されてしまう。
【００１１】
このような背景を鑑みて本発明がなされたのであり、本発明は、各装置（ノード）の送受信トラフィック量の測定方法が異なる場合であっても、精度を向上させてＩＦ間の接続関係（トポロジ）を推定することができる、トポロジ推定装置およびプログラムを提供することを課題とする。
【課題を解決するための手段】
【００１２】
前記した課題を解決するため、請求項１に記載の発明は、ネットワークを構成する複数の装置の接続関係を推定するトポロジ推定装置であって、前記装置が備えるＩＦ（Interface）それぞれの時系列の送信トラフィック量および受信トラフィック量の情報が当該ＩＦ毎に格納されるＩＦ送受信量情報、が記憶される記憶部と、前記ＩＦ毎のＩＦ送受信量情報を参照し、サブネットを構成するＩＦの数であるｋ個（ｋ≧２）のＩＦの組の全ての組み合わせを、接続関係の判定候補として生成する判定候補生成部と、前記生成した判定候補となるＩＦの組それぞれについて、前記ＩＦ毎のＩＦ送受信量情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの、前記受信トラフィック量の合計から前記送信トラフィック量の合計を減算した差分の絶対値を示す平衡度を計算する平衡度計算部と、前記生成した判定候補となるＩＦの組それぞれについて、前記ＩＦ毎のＩＦ送受信量情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの、前記送信トラフィック量および前記受信トラフィック量の変動傾向の一致度を示す評価値を計算する評価値計算部と、前記平衡度と前記評価値から算出した値が所定値以下であることを判定する第１の判定、および、前記判定候補となるＩＦの組のうち、一つのＩＦを抽出し、前記抽出したＩＦの前記送信トラフィック量が、前記抽出したＩＦを除く全てのＩＦの前記受信トラフィック量の合計以下であることを、前記判定候補となるＩＦの組を構成する全てのＩＦを抽出して成立することを判定する第２の判定、を前記判定候補となるＩＦの組それぞれについて実行し、前記第１の判定および前記第２の判定を満たす場合に、前記判定候補となるＩＦの組を構成するＩＦ間に、接続関係があると判定する接続関係判定部と、を備えることを特徴とするトポロジ推定装置とした。
【００１３】
このようにすることで、トポロジ推定装置は、送受信トラフィックの変動傾向の一致度を評価値として計算し、ＩＦ間の接続関係を判定するので、各装置の仕様（送受信トラフィック量の測定方法）が異なる場合であっても、精度を向上させてＩＦ間の接続関係（トポロジ）を推定することができる。
【００１４】
請求項２に記載の発明は、前記記憶部には、前記装置それぞれが備える前記ＩＦの識別情報が格納された装置ＩＦ対応情報がさらに記憶されており、前記判定候補生成部が、前記生成した判定候補となるＩＦの組それぞれについて前記装置ＩＦ対応情報を参照し、前記判定候補となるＩＦの組を構成する各ＩＦの全てが一つの装置に備わる場合に、その判定候補となるＩＦの組を前記生成したＩＦの組の全ての組み合わせから削除することを特徴とする請求項１に記載のトポロジ推定装置とした。
【００１５】
このようにすることで、判定候補となるＩＦの組を構成する各ＩＦが全て一つの装置に備わる場合、つまり、サブネットを構成しないことが明らかなＩＦの組については、判定候補としないことができ、処理負荷を軽減することができる。
【００１６】
請求項３に記載の発明は、請求項１または請求項２に記載のトポロジ推定装置の各機能を、コンピュータに実現させるためのプログラムとした。
【００１７】
このようにすることで、請求項１または請求項２に記載のトポロジ推定装置の各機能を、一般的なコンピュータに実現させることができる。
【発明の効果】
【００１８】
本発明によれば、各装置（ノード）の送受信トラフィック量の測定方法が異なる場合であっても、精度を向上させてＩＦ間の接続関係（トポロジ）を推定することができる、トポロジ推定装置およびプログラムを提供することができる。
【図面の簡単な説明】
【００１９】
【図１】接続関係のある複数のＩＦで構成されるサブネットを説明するための図である。
【図２】従来のトポロジの推定手法における課題を説明するための図である。
【図３】本実施形態に係るトポロジ推定装置の構成例を示す機能ブロック図である。
【図４】本実施形態に係るノードＩＦ対応情報のデータ構成例を示す図である。
【図５】本実施形態に係るＩＦに関する情報を示す図であり、図５（ａ）は、ＩＦ送受信量情報のデータ構成例を示し、図５（ｂ）は、接続判定済フラグの例を示す。
【図６】本実施形態に係る判定候補情報のデータ構成例を示す図である。
【図７】本実施形態に係るＩＦ接続情報のデータ構成例を示す図である。
【図８】本実施形態に係るトポロジ推定処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２０】
次に、本発明を実施するための形態（以下、「本実施形態」と称する。）について説明する。
【００２１】
＜概要＞
まず、本実施形態に係るトポロジ推定装置１（図３参照）およびプログラムが実行する処理の基本概念と処理概要について説明する。
【００２２】
（基本概念）
本実施形態に係るトポロジ推定装置１は、ネットワークを構成するノード間のトポロジを推定するため、具体的には、各ノードＮに備わるＩＦ同士の接続関係の有無を判定することによりサブネットとして接続されるＩＦの組を特定するため、非特許文献１に記載の手法を、時系列データに適用し、各ノードＮの送受信トラフィック量の変動傾向を考慮してトポロジの推定を行う。
なお、本実施形態においては、送受信トラフィック量として、各ノードＮが、具体的には、送受信バイト量を測定するものとして説明する。
【００２３】
図２において説明したように、装置の仕様によっては、常に一定の割合で送受信トラフィック量に差が生じるため、非特許文献１の記載のトポロジの推定手法では（原則１）を満たさず、ＩＦ間に接続関係がある場合であっても、接続関係にないと推定されてしまう場合がある。このように、装置の仕様が異なっている場合、つまり、各ノードにおいて送受信トラフィックの測定に一定の差が存在する場合であっても、接続関係にあるＩＦの送受信トラフィックは一致した変動傾向を示す（図２の符号２２０参照）。例えば、あるノードＮのＩＦａと他のノードＮのＩＦｂとが接続関係にある場合、ＩＦａの送信バイト量が増加すると、ＩＦｂの受信バイト量も増加し、ＩＦａの送信バイト量が減少すると、ＩＦｂの受信バイト量も減少する。
【００２４】
本実施形態に係るトポロジ推定装置１は、この送受信トラフィック量の変動傾向の同期性に基づき、非特許文献１に記載の（原則１）を拡張し、以下の（原則１Ａ）を導入する。
（原則１Ａ）あるサブネットへの流入トラフィックの量と流出トラフィックの量とは、変動傾向が等しい。
【００２５】
本実施形態に係るトポロジ推定装置１は、この（原則１Ａ）と前記した（原則２）とを判定条件として利用することによりトポロジを推定する。これにより、各ノードの送受信トラフィック量の測定方法が異なる場合、つまり、装置の仕様が異なるため、一定の割合で送受信トラフィック量に差分が存在する場合であっても、誤推定や推定漏れとならず接続関係を正しく評価する可能性を格段に向上させることができるため、精度を向上させてＩＦ間の接続関係（トポロジ）を推定することができる。
なお、時系列データ同士の変動傾向の評価には、相関係数や時系列データの微分を利用するものなど多くの手法が存在する。本実施形態においては、変動傾向の評価に用いる手法として、相関係数を用いた場合や、時系列データの差分を用いた場合を例に説明するが、これに限定されるものではない。
【００２６】
（処理概要）
次に、本実施形態に係るトポロジ推定装置１等が実行する処理の概要について説明する。
まず、前提として、以下に示す手順では、トポロジ推定装置１の記憶手段（後記する記憶部）に、ノードとそのノードが備えるＩＦとの対応関係を示す情報（後記する「ノードＩＦ対応情報」）、ＩＦ毎のある時刻ｔ１〜ｔｘ（時系列）の送受信トラフィック量を示す情報（後記する「ＩＦ送受信量情報」）、各ＩＦについて接続関係が発見されたか否かを示すフラグ（後記する「接続判定済フラグ」。初期値「０」。）、並びに、（原則１Ａ）の判定（後記する「第１の判定」）に用いる許容誤差σおよび（原則２）の判定（後記する「第２の判定」）に用いる許容誤差γが記憶されているものとする。
ここで、推定の対象となるＩＦの総数、つまり、ＩＦ送受信量情報の数を「ｎ」（判定対象となるＩＦのＩＦ送受信量情報の数）とし、ｋ個のＩＦからなるＩＦの組（サブネット）を探すものとする。また、初期設定としてｋ＝２が設定されているものとする。
【００２７】
≪手順１：判定候補生成処理≫
まず、トポロジ推定装置１は、ｎ個のＩＦ送受信量情報からｋ個（ｋ＝２）のＩＦの組の組み合わせを生成する。ここで、ｎ個のＩＦ送受信量情報からｋ個のＩＦの組を選ぶ組み合わせは、ｎＣｋ個となる。
【００２８】
≪手順２：平衡度計算処理≫
次に、トポロジ推定装置１は、（原則１）を定式化した式として、以下に示す（式１）を用いて、平衡度：ｐ(t)を計算する。但し、ＩＦの組として選ばれたｋ個のＩＦが全て同一のノードＮの属している組み合わせは、サブネットを構成しないため、除くものとする。
【００２９】
【数１】
2015142204.tif 000003
【００３０】
ここで、時刻ｔのＩＦｉの受信バイト量をＩＦｉ(t).inとし、同様に送信バイト量をＩＦｉ(t).outとする。
【００３１】
図２において示した、ノードＮ１のＩＦ「３」とノードＮ２のＩＦ「１」の組（ｋ＝２）を例に、平衡度ｐ(t1)を計算すると、以下のようになる。
【００３２】
ｐ(t1)＝｜｛ＩＦ３(t1).in−ＩＦ３(t1).out｝＋｛ＩＦ１(t1).in−ＩＦ１(t1).out｝｜
ｐ(t1)＝｜（５−１０）＋（１４−７）｜
ｐ(t1)＝２
【００３３】
≪手順３：変動傾向の評価値Ｃの計算処理≫
続いて、トポロジ推定装置１は、送受信バイト量の変動傾向の一致度を評価するため、変動傾向の評価値Ｃを計算する。ここでは、ｋ個のＩＦの受信バイト量の合計値Ｒsum (t)と、ｋ個のＩＦの送信バイト量の合計値Ｔsum (t)とを求め、このＲsum (t)とＴsum (t)の時系列データの変動傾向の一致度を算出し、０〜１の値に正規化を行う。変動傾向が完全に一致している場合は「０」をとるものとし、この正規化した値を変動傾向の評価値Ｃとする。以下、この変動傾向の評価値Ｃの計算処理について、２つの具体例を用いて説明する。
【００３４】
［手順３ａ：相関係数を用いた変動傾向の評価値Ｃの計算］
変動傾向の評価値Ｃの計算手法として相関係数を用いる場合、Ｒsum(t)とＴsum(t)の相関係数を求める。相関係数は、０〜１の値をとり、完全な正の相関があるときに「１」となるため、変動傾向の評価値Ｃは、１と相関係数との差分となる。
【００３５】
例として、図２において示した表２０１ｂと表２０２ｂの値を用いた場合、Ｒsum(t)とＴsum(t)は、以下の通りとなる。
【００３６】
【表１】
2015142204.tif 000004
【００３７】
この表から、Ｒsum(t)とＴsum(t)の相関係数は、「0.9918」となる。よって、変動傾向の評価値Ｃは、以下の値となる。
Ｃ＝１−0.9918
＝0.0082
【００３８】
［手順３ｂ：時系列の差分を用いた変動傾向の評価値Ｃの計算］
変動傾向の評価値Ｃの計算手法として、時系列の差分を用いる場合、Ｔsum(t)とＲsum(t)のそれぞれについて、時系列の差分を算出する。
そして、時系列の差分のデータ数を「ｕ」、正負が一致しているデータ点の数を「ｒ」としたとき、変動傾向の評価値Ｃは、以下の（式２）により計算される。
【００３９】
【数２】
2015142204.tif 000005
【００４０】
例として、図２において示した表２０１ｂと表２０２ｂの値を用いた場合、Ｔsum(t)とＲsum(t)のそれぞれについての時系列の差分（Ｔsum_diff，Ｒsum_diff）は、以下の通りとなる。
【００４１】
【表２】
2015142204.tif 000006
【００４２】
この表から、時系列の差分のデータ数はｕ＝５、正負が一致しているデータ点の数はｒ＝５、となるため、（式２）に基づき、変動傾向の評価値Ｃ＝１−５／５＝０となる。
【００４３】
≪手順４：接続関係判定処理≫
次に、トポロジ推定装置１は、判定候補として抽出したＩＦの組について、接続関係判定処理を実行する。この接続関係判定処理は、（原則１Ａ）を満たすか否かの「第１の判定」と、（原則２）を満たすか否かの「第２の判定」とにより実行され、両判定の判定条件を満たす場合に、判定候補として抽出したＩＦの組が接続関係にあると判定する、つまり、サブネットを構成すると推定する。
【００４４】
［第１の判定（原則１Ａ）］
トポロジ推定装置１は、（原則１Ａ）を定式化した、以下の（式３）を満たすか否かにより、第１の判定処理を実行する。
【００４５】
Ｃ×ｐ(t) ≦ 許容誤差σ    …  （式３）
【００４６】
Ｃ×ｐ(t)の値が全ての時刻ｔにおいて許容誤差σ以下となったＩＦの組み合わせは、サブネットへの入出力トラフィックの量の差が小さく、かつ、値の変動傾向の同期性が高いため、（原則１Ａ）を満たしていると判定する。
相関係数を用いて変動傾向の評価値Ｃを計算した前記した例では、Ｃ×ｐ(t1)＝0.0082×２＝0.0164となり、ｐ(t1)=２と比べ、より小さな値となるため、例えば、許容誤差σ
を「0.02」に設定しておくことにより、非特許文献１に記載の手法では推定できない接続関係を推定することが可能となる。
また、時系列の差分を用いて変動傾向の評価値Ｃを計算した前記した例では、Ｃ×ｐ(t1)＝０×２＝０となる。
【００４７】
なお、トポロジ推定装置１は、Ｃ×ｐ(t)の値が全ての時刻ｔにおいて許容誤差σ以下となったＩＦの組み合わせを（原則１Ａ）と満たすと判定する場合の他に、各時刻ｔのＣ×ｐ(t)の値の平均値が許容誤差σ以下となったＩＦの組み合わせを（原則１Ａ）と満たすと判定するようにしたり、各時刻ｔにおけるＣ×ｐ(t)を任意に抽出して判定するようにしたりしてもよいし、極端に値の異なるＣ×ｐ(t)を除外して判定するようにしてもよい。これらは、トポロジ推定装置１により予め任意に設定される。
【００４８】
［第２の判定（原則２）］
トポロジ推定装置１は、判定候補となるＩＦの組を構成するｋ個のＩＦの送受信バイト量の情報、つまり、ＩＦ１(t).out〜ＩＦｋ(t).out、および、ＩＦ１(t).in〜ＩＦｋ(t).inの情報を用いて、（原則２）を満たすか否かにより、第２の判定処理を実行する。具体的には、トポロジ推定装置１は、以下の（式４）を満たすか否かを判定する。（式４）は、前記した判定式２と同等の式である。
ＩＦｉ(t).out ≦ （ＩＦｉ(t).inを除く、ＩＦ１(t).in〜ＩＦｋ(t).inの合計）
［ｉ＝１，２，…，ｋ］
…  （式４）
【００４９】
この（式４）により、トポロジ推定装置１は、判定候補となるＩＦの組のうち、一つのＩＦを順に抽出し、その抽出したＩＦの送信バイト量が、その抽出したＩＦを除く全てのＩＦの受信バイト量の合計以下であること判定する。そして、トポロジ推定装置１は、上記の（式４）が、全ての時刻ｔにおいて成立する場合に、そのＩＦの組み合わせは（原則２）を満たしているものとする。
なお、送受信バイト量は、時間とともに変化しており、送受信データの収集タイミングのずれにより若干の誤差が生じる可能性がある。そのため、上記の（式４）では、許容誤差γを用いて判定を実行する。
【００５０】
トポロジ推定装置１は、ＩＦの組み合わせをｋ＝２から、ｋの値を１つずつ増やして（ｋ＝２，３，…）、手順１〜手順４を繰り返すことにより、トポロジの推定処理を実行する。なお、トポロジ推定装置１は、接続関係があると判定したＩＦの接続関係判定済フラグを「１」とする。そして、トポロジ推定装置１は、接続関係判定済フラグが「１」ではない、つまり接続関係判定済フラグが「０」のＩＦに関して、トポロジの推定処理を実行する。
【００５１】
＜トポロジ推定装置の構成＞
次に、本実施形態に係るトポロジ推定装置１の構成について具体的に説明する。
図３は、本実施形態に係るトポロジ推定装置１の構成例を示す機能ブロック図である。このトポロジ推定装置１は、ネットワーク全体を管理するネットワーク管理装置やネットワークを構成する各ノードＮ（装置）と接続されることにより、各ノードＮのＩＦに関する情報を取得し、ネットワークを構成するノード間のトポロジを推定する。具体的には、サブネットとして接続されるＩＦの組を特定する。そして、トポロジ推定装置１は、図３に示すように、処理部１０と、入出力部２０と、記憶部３０とを含んで構成される。
【００５２】
入出力部２０は、ネットワーク管理装置（不図示）や、ネットワークを構成する各ノードＮ等との間の情報の入出力を行う。また、この入出力部２０は、通信回線を介して情報の送受信を行う通信インタフェースと、不図示のキーボード等の入力手段やモニタ等の出力手段等との間で入出力を行う入出力インタフェースとから構成される。
【００５３】
処理部１０は、トポロジ推定装置１全体の制御を司り、トポロジ推定の処理を実行し、情報入力部１１、判定候補生成部１２、平衡度計算部１３、評価値計算部１４、接続関係判定部１５、情報出力部１６を含んで構成される。なお、この処理部１０は、例えば、記憶部３０に格納されたプログラムをＣＰＵ（Central Processing Unit）がＲＡＭ（Random Access Memory）に展開し実行することで実現される。
【００５４】
情報入力部１１は、ネットワーク管理装置（不図示）等から、入出力部２０を介して、ノードＮとそのノードＮが備えるＩＦとの対応関係を示すノードＩＦ対応情報３１０（図４参照）、ある時刻ｔ１〜ｔｘの送受信トラフィック量を示すＩＦ毎のＩＦ送受信量情報３２０（図５（ａ）参照）、並びに、（原則１Ａ）の判定に用いる許容誤差σ（不図示）および（原則２）の判定に用いる許容誤差γ（不図示）を受信し、記憶部３０に記憶する。
【００５５】
図４は、本実施形態に係るノードＩＦ対応情報３１０（装置ＩＦ対応情報）のデータ構成例を示す図である。
ノードＩＦ対応情報３１０は、各ノードＮ（装置）がどのＩＦを備えているかを示す情報であり、各ノードの「ノード名」に対応付けて、ＩＦの識別情報が格納される。図４に示すように、例えば、ノード「Ａ」は、ＩＦとして「ＩＦ＿ａ１」，「ＩＦ＿ａ２」等を備えている。
【００５６】
図５は、本実施形態に係るＩＦ送受信量情報３２０および接続判定済フラグ３２５のデータ構成例を示す図である。なお、図５（ｂ）に示す、接続判定済フラグ３２５の説明は後記する。
図５（ａ）は、各ノードＮのＩＦ毎の送受信トラフィック量がＩＦ送受信量情報３２０として格納される例を示している。図５（ａ）に示すように、例えば、ＩＦ＿ａ１のＩＦ送受信量情報３２０（３２０ａ１）として、時刻（ｔ１〜ｔｘ）毎の送信トラフィック量と受信トラフィック量とが格納される。
【００５７】
図３に戻り、判定候補生成部１２は、推定対象となるＩＦの中から、ＩＦの組み合わせ（ＩＦの組）を生成する（手順１：判定候補生成処理）。
具体的には、判定候補生成部１２は、記憶部３０から、各ノードのＩＦ毎のＩＦ送受信量情報３２０とノードＩＦ対応情報３１０とを取得する。このとき、判定候補生成部１２は、記憶部３０内の接続判定済フラグ３２５を参照し、フラグが「０」であるＩＦ送受信量情報３２０を取得する。
【００５８】
ここで、接続判定済フラグ３２５は、図５（ｂ）に示すように、各ノードのＩＦ毎、つまり、推定対象のＩＦ毎にＩＦ送受信量情報３２０に対応付けて設定される情報であり、トポロジ推定処理により他のＩＦとの間において接続関係があると判定された場合に「１」が付される。なお、この接続判定済フラグ３２５の初期値はすべて「０」が設定される。また、この接続判定済フラグ３２５は、例えば、後記する記憶部３０内のＩＦデータ保存部３２に、新たなＩＦ送受信量情報３２０が記憶される度に、判定候補生成部１２が、そのＩＦ送受信量情報３２０に対応付けて設定する。
【００５９】
判定候補生成部１２は、各ＩＦのＩＦ送受信量情報３２０に対応付けた接続判定済フラグ３２５が「０」である、そのＩＦ送受信量情報３２０を取得し、そのＩＦ送受信量情報３２０の数、つまり、判定候補のＩＦの数を「ｎ」とする。そして、判定候補生成部１２は、ｎ個のＩＦから、ｋ個のＩＦの組み合わせ（ｎＣｋ個のパターン）を生成する。なお、判定候補生成部１２は、ノードＩＦ対応情報３１０を参照し、ｋ個のＩＦが全て同一のノードに属しているＩＦの組については、生成を行わないようにする。続いて、判定候補生成部１２は、生成したＩＦの組を、後記する記憶部３０内の判定候補情報３３０（図６参照）に格納する。
【００６０】
図６は、本実施形態に係る判定候補情報３３０のデータ構成例を示す図である。この判定候補情報３３０は、判定候補生成部１２が生成したＩＦの組それぞれについて、１レコードが生成される。そして、図６に示すように、判定候補生成部１２が生成したＩＦの組３３１に対応付けて、平衡度３３２と、変動傾向の評価値３３３の情報が記憶される。
なお、この平衡度３３２の情報は、平衡度計算部１３により格納され、変動傾向の評価値３３３の情報は、評価値計算部１４により格納される（詳細は後記）。
【００６１】
図３に戻り、平衡度計算部１３は、原則１を定式化した、前記した（式１）を用いて、平衡度：ｐ(t)を計算する（手順２：平衡度計算処理）。
具体的には、平衡度計算部１３は、記憶部３０から判定候補情報３３０に記憶された判定候補となるＩＦの組、および、そのＩＦの組において示されるＩＦのＩＦ送受信量情報３２０を取得する。そして、平衡度計算部１３は、そのＩＦのＩＦ送受信量情報３２０に示される送受信トラフィック量を用いて、（式１）により、平衡度：ｐ(t)を計算する。平衡度計算部１３は、その計算結果としての平衡度：ｐ(t)を、記憶部３０内の判定候補情報３３０（平衡度３３２）に格納する。
【００６２】
評価値計算部１４は、変動傾向の評価値Ｃを計算する（手順３：変動傾向の評価値Ｃの計算処理）。
具体的には、評価値計算部１４は、記憶部３０から判定候補情報３３０に記憶された判定候補となるＩＦの組、および、そのＩＦの組において示されるＩＦのＩＦ送受信量情報３２０を取得する。そして、評価値計算部１４は、そのＩＦのＩＦ送受信量情報３２０に示される送受信トラフィック量を用いて、手順３ａ（相関係数を用いた変動傾向の評価値Ｃの計算）や、手順３ｂ（時系列の差分を用いた変動傾向の評価値Ｃの計算）等において示した手法により、変動傾向の評価値Ｃを計算する。なお、この変動傾向の評価値Ｃは、送信トラフィック量および受信トラフィック量の変動傾向の一致度を示す値であり、その値が低い程一致度が高いことを示す。評価値計算部１４は、計算結果としての変動傾向の評価値Ｃを、記憶部３０内の判定候補情報３３０（変動傾向の評価値３３３）に格納する。
【００６３】
接続関係判定部１５は、判定候補生成部１２が判定候補として生成したＩＦの組について、（原則１Ａ）を満たすか否かの前記した「第１の判定」と、（原則２）を満たすか否かの前記した「第２の判定」を行うことにより、接続関係の判定を行う（手順４：接続関係判定処理）。
【００６４】
具体的には、接続関係判定部１５は、まず、「第１の判定」を実行するため、記憶部３０内の判定候補情報３３０（図６）を参照し、判定候補となるＩＦの組３３１の平衡度３３２と変動傾向の評価値３３３と取得する。また、接続関係判定部１５は、記憶部３０に記憶された許容誤差σ（不図示）を取得する。
そして、接続関係判定部１５は、前記した（式３）に基づき、変動傾向の評価値Ｃ×平衡度ｐ(t)の値が、例えば、全ての時刻ｔにおいて許容誤差σ以下となった場合に、（原則１Ａ）を満たしていると判定する（第１の判定）。
【００６５】
続いて、接続関係判定部１５は、記憶部３０から、判定対象となるＩＦについてのＩＦ送受信量情報３２０と許容誤差γ（不図示）とを取得する。そして、接続関係判定部１５は、取得したＩＦの送受信トラフィック量に基づき、前記した（式４）を満たすか否かを判定し、全ての時刻ｔにおいて、（式４）を満たす場合に、（原則２）を満たしているものと判定する（第２の判定）。
【００６６】
接続関係判定部１５は、この第１の判定と第２の判定の両方を満たす場合に、判定候補として生成したそのＩＦの組が接続関係にあると判定し、そのＩＦの組で示されるＩＦの接続判定済フラグ３２５を「１」とする。また、接続関係判定部１５は、そのＩＦの組を、記憶部３０内のＩＦ接続情報３４０（図７参照）に格納する。
【００６７】
図７は、本実施形態に係るＩＦ接続情報３４０のデータ構成例を示す図である。図７に示すように、ＩＦ接続情報３４０には、接続関係判定部１５により、接続関係がある、つまり、サブネットを構成すると判定されたＩＦの組が格納される。例えば、図７に示すように、「ＩＦ＿ａ１」，「ＩＦ＿ｂ２」，「ＩＦ＿ｃ１」が、接続関係があるＩＦの組の情報として格納される。
【００６８】
続いて、接続関係判定部１５は、記憶部３０に記憶された各ＩＦに対応する接続判定済フラグ３２５（図５（ｂ））を参照し、接続判定済フラグ３２５が「０」のＩＦの数と、現時点のｋの値とを比較する。そして、接続関係判定部１５は、接続判定済フラグ３２５が「０」のＩＦの数がｋの値よりも大きい場合は、ｋの値を「１」増やして、判定候補生成部１２へ出力し、トポロジの推定処理を続行する。一方、接続関係判定部１５は、接続判定済フラグ３２５が「０」のＩＦの数が、現時点のｋの値以下の場合は、トポロジ推定の処理を終了する。
【００６９】
情報出力部１６は、記憶部３０に記憶されたＩＦ接続情報３４０を、入出力部２０を介して、ネットワーク管理装置（不図示）や、トポロジ推定装置１に備えられたモニタ等に出力する。
【００７０】
記憶部３０は、ハードディスクやフラッシュメモリ、ＲＡＭ等の記憶手段からなり、その記憶領域として、ノードリスト保存部３１、ＩＦデータ保存部３２、判定候補保存部３３および接続リスト保存部３４が設定される。このノードリスト保存部３１には、前記したノードＩＦ対応情報３１０（図４）が格納される。ＩＦデータ保存部３２には、前記したＩＦ送受信量情報３２０（図５（ａ））および接続判定済フラグ３２５（図５（ｂ））が格納される。判定候補保存部３３には、前記した判定候補情報３３０が格納される。また、接続リスト保存部３４には、前記したＩＦ接続情報３４０が格納される。
なお、この記憶部３０には、図示を省略しているが、許容誤差σ、許容誤差γも格納される。
【００７１】
＜処理の流れ＞
次に、本実施形態に係るトポロジ推定装置１のトポロジ推定処理の流れについて説明する。
図８は、本実施形態に係るトポロジ推定装置１のトポロジ推定処理の流れを示すフローチャートである。なお、ここでは、推定対象となるＩＦの組の初期値としてｋ＝２が、予め判定候補生成部１２に設定されているものとする。
【００７２】
まず、トポロジ推定装置１の情報入力部１１は、ネットワーク管理装置（不図示）等から、ノードＩＦ対応情報３１０（図４）、ＩＦ毎のＩＦ送受信量情報３２０（図５（ａ））、許容誤差σ、および、許容誤差γを取得し、記憶部３０に記憶する（ステップＳ１）。なお、ＩＦ送受信量情報３２０が、記憶部３０に記憶されると、判定候補生成部１２が、そのＩＦ送受信量情報３２０のＩＦに対応する接続判定済フラグ３２５を初期値「０」として生成する。
【００７３】
次に、判定候補生成部１２は、推定対象となるＩＦの組み合わせ（ＩＦの組）を生成する。
具体的には、判定候補生成部１２は、接続判定済フラグ３２５が「０」のＩＦ送受信量情報３２０を抽出し、抽出したＩＦ送受信量情報３２０の数（つまり、推定対象のＩＦの数）を「ｎ」個とする。そして、判定候補生成部１２は、推定対象となるＩＦの数「ｎ」からｋ個（初期値は、ｋ＝２）のＩＦの組となる組み合わせを全て生成する（ステップＳ２）。そして、判定候補生成部１２は、生成したＩＦの組を、判定候補として判定候補情報３３０（図６参照）に格納する。
【００７４】
続いて、平衡度計算部１３は、判定候補生成部１２がステップＳ２において判定候補として生成したＩＦの組についての平衡度：ｐ（ｔ）を計算する（ステップＳ３）。具体的には、平衡度計算部１３は、記憶部３０内の判定候補情報３３０（図６）に格納された判定候補となるＩＦの組を取得し、そのＩＦの組において示される各ＩＦのＩＦ送受信量情報３２０を取得する。そして、平衡度計算部１３は、（式１）に基づき平衡度：ｐ(t)を計算し、その計算結果を判定候補情報３３０（平衡度３３２）に格納する。
【００７５】
次に、評価値計算部１４は、判定候補生成部１２がステップＳ２において判定候補として生成したＩＦの組についての変動傾向の評価値Ｃを計算する（ステップＳ４）。具体的には、評価値計算部１４は、記憶部３０内の判定候補情報３３０（図６）に格納された判定候補となるＩＦの組を取得し、そのＩＦの組において示される各ＩＦのＩＦ送受信量情報３２０を取得する。そして、評価値計算部１４は、そのＩＦのＩＦ送受信量情報３２０に示される送受信トラフィック量を用いて、手順３ａ（相関係数を用いた変動傾向の評価値Ｃの計算）や、手順３ｂ（時系列の差分を用いた変動傾向の評価値Ｃの計算）等において示した手法により、変動傾向の評価値Ｃを計算し、その計算結果を判定候補情報３３０（変動傾向の評価値３３３）に格納する。
【００７６】
続いて、接続関係判定部１５は、判定候補情報３３０（図６）を参照して、判定候補として生成されたＩＦの組の中から１つを抽出し、（原則１Ａ）を満たすか否かの前記した「第１の判定」と、（原則２）を満たすか否かの前記した「第２の判定」とを行う（ステップＳ５）。
【００７７】
次に、接続関係判定部１５は、抽出したＩＦの組が、第１の判定、第２の判定の両方の判定条件を満たすか否かを判定する（ステップＳ６）。そして、両方の判定条件を満たす場合には（ステップＳ６→Ｙｅｓ）、ステップＳ７に進み、そのＩＦの組で示される各ＩＦの接続判定済フラグ３２５（図５（ｂ）参照）を「１」とし、そのＩＦの組を、記憶部３０内のＩＦ接続情報３４０（図７参照）に格納する。
【００７８】
一方、両方の判定条件を満たす場合でないとき、つまり、第１の判定、第２の判定のいずれか一つでも満たさない場合には（ステップＳ６→Ｎｏ）、ステップＳ８に進む。
【００７９】
ステップＳ８において、接続関係判定部１５は、ステップＳ２において判定候補として生成されたＩＦの組全てについて、ステップＳ５〜Ｓ７（ステップＳ７は、ステップＳ６でＹｅｓの場合のみ）の接続関係判定処理を行ったか否かを判定する。ここで、まだ、接続関係判定処理を行っていないＩＦの組がある場合には（ステップＳ８→Ｎｏ）、ステップＳ５に戻り、処理を続ける。一方、全てのＩＦの組について、接続関係判定処理を終えた場合には（ステップＳ８→Ｙｅｓ）、次のステップＳ９に進む。
【００８０】
ステップＳ９において、接続関係判定部１５は、現時点における接続判定済フラグ３２５が「０」であるＩＦの数「ｎ」がステップＳ２で設定されたｋ以下であるか否かを判定する。ここで、ｋ以下でない場合には（ステップＳ９→Ｎｏ）、ステップＳ１０に進み、ｋに１を加えて、ステップＳ２へ戻り、処理を続ける。一方、ｋ以下である場合には（ステップＳ９→Ｙｅｓ）、トポロジ推定装置１はトポロジ推定処理を終了する。
【００８１】
以上説明したように、本実施形態に係るトポロジ推定装置１およびプログラムによれば、各ノードＮの送受信トラフィック量の変動傾向を考慮することにより、各ノードの送受信トラフィック量の測定方法が異なる場合、つまり、装置の仕様が異なるため、一定の割合で送受信トラフィック量に差分が存在する場合であっても、誤推定や推定漏れとならず接続関係を正しく評価する可能性を格段に向上させることができるため、精度を向上させてＩＦ間の接続関係（トポロジ）を推定することができる。
【符号の説明】
【００８２】
１      トポロジ推定装置
１０    処理部
１１    情報入力部
１２    判定候補生成部
１３    平衡度計算部
１４    評価値計算部
１５    接続関係判定部
１６    情報出力部
２０    入出力部
３０    記憶部
３１０  ノードＩＦ対応情報（装置ＩＦ対応情報）
３２０  ＩＦ送受信量情報
３２５  接続判定済フラグ
３３０  判定候補情報
３４０  ＩＦ接続情報
【図１】
2015142204.tif 000007
【図２】
2015142204.tif 000008
【図３】
2015142204.tif 000009
【図４】
2015142204.tif 000010
【図５】
2015142204.tif 000011
【図６】
2015142204.tif 000012
【図７】
2015142204.tif 000013
【図８】
2015142204.tif 000014