(57)【要約】【課題】通信制御単位を考慮したネットワーク検証を効率的に行う。【解決手段】ネットワーク検証装置１は、対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得するネットワーク情報取得部１１と、ネットワーク情報取得部により取得される当該転送行列を用いた演算を行うことにより、所定検証項目における対象ネットワークの状態を推定する検証処理部１０と、を有する。【選択図】図２
2014216935.tif 000002
【特許請求の範囲】
【請求項１】
複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークを検査するネットワーク検証装置において、
前記対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、前記各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、前記対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得するネットワーク情報取得部と、
前記ネットワーク情報取得部により取得される前記転送行列を用いた演算を行うことにより、所定検証項目における前記対象ネットワークの状態を推定する検証処理部と、
を備えるネットワーク検証装置。
【請求項２】
前記対象ネットワーク内に流入する要求トラフィックに関し、該要求トラフィックの入口となるスイッチ装置の物理ポート、該要求トラフィックに含まれる通信制御単位を特定するためのヘッダデータ、及び、該要求トラフィックのトラフィック量を表す要求トラフィックベクトルを取得する要求取得部、
を更に備え、
前記検証処理部は、
前記要求トラフィックの入口となるスイッチ装置から他の各スイッチ装置までの各ホップ数に応じて前記転送行列が累乗された各行列の和と、前記要求トラフィックベクトルとの積を合算することにより、前記各スイッチ装置における各物理ポートに流入するトラフィック量を前記通信制御単位毎に表すトラフィックベクトルを生成する第１算出部、
を含む、
請求項１に記載のネットワーク検証装置。
【請求項３】
前記検証処理部は、
前記第１算出部で生成される前記トラフィックベクトルにおいて、物理ポート毎にトラフィック量を足し合わせることにより、前記各スイッチ装置における各物理ポートに流入するトラフィック量を表す物理トラフィックベクトルを生成する第２算出部、
を更に含む、
請求項２に記載のネットワーク検証装置。
【請求項４】
前記検証処理部は、
前記第１算出部で生成された前記トラフィックベクトルに、前記要求トラフィックにおける検査対象ヘッダデータ以外のヘッダデータに関するデータ要素をマスクするヘッダフィルタ行列を掛け合せることにより、前記各スイッチ装置における各物理ポートに流入する該検査対象ヘッダデータを持つ通信制御単位のトラフィック量のみを表すトラフィック経路ベクトルを生成する第３算出部、
を更に含む、
請求項２又は３に記載のネットワーク検証装置。
【請求項５】
前記対象ネットワーク内に流入する要求トラフィックに関し、該要求トラフィックの入口となるスイッチ装置の物理ポート、該要求トラフィックに含まれる通信制御単位を特定するためのヘッダデータ、及び、該要求トラフィックのトラフィック量を表す要求トラフィックベクトルを取得する要求取得部、
を更に備え、
前記検証処理部は、
前記要求トラフィックの入口となるスイッチ装置から他の各スイッチ装置までの各ホップ数に応じて前記転送行列が累乗された各行列の和と、前記要求トラフィックベクトルと、前記複数の転送規則情報を示す転送規則行列との積を合算することにより、前記各スイッチ装置における各物理ポートから流出するトラフィック量を前記通信制御単位毎に表す流出トラフィックベクトルを生成する第１算出部、
を含む、
請求項１から４のいずれか１項に記載のネットワーク検証装置。
【請求項６】
前記検証処理部は、
前記第１算出部で生成される前記流出トラフィックベクトルにおいて、物理ポート毎にトラフィック量を足し合わせることにより、前記各スイッチ装置における各物理ポートから流出するトラフィック量を表す流出物理トラフィックベクトルを生成する第２算出部、
を更に含む、
請求項５に記載のネットワーク検証装置。
【請求項７】
前記検証処理部は、
前記第１算出部で生成される前記流出トラフィックベクトルに、前記要求トラフィックにおける検査対象ヘッダデータ以外のヘッダデータに関するデータ要素をマスクするヘッダフィルタ行列を掛け合せることにより、前記各スイッチ装置における各物理ポートから流出する該検査対象ヘッダデータを持つ通信制御単位のトラフィック量のみを表す流出トラフィック経路ベクトルを生成する第３算出部、
を更に含む、
請求項５又は６に記載のネットワーク検証装置。
【請求項８】
前記第２算出部により生成された前記物理トラフィックベクトル及び前記流出物理トラフィックベクトルの少なくとも一方、及び、前記スイッチ装置間の物理リンクの帯域性能情報に基づいて、前記対象ネットワーク内の、通信品質の劣化が生じ得る箇所を特定する品質判定部と、
前記品質判定部で特定された箇所を特定可能な状態で出力する出力処理部と、
を更に備える請求項３又は６に記載のネットワーク検証装置。
【請求項９】
前記第３算出部により算出される前記トラフィック経路ベクトル及び前記流出トラフィック経路ベクトルの少なくとも一方に基づいて、前記検査対象ヘッダデータを持つ通信制御単位のトラフィックが通過する、前記対象ネットワーク内の経路を示す情報を出力する出力処理部、
を更に備える請求項４又は７に記載のネットワーク検証装置。
【請求項１０】
前記トラフィック量は、トラフィック量の確率分布で示される、
請求項２から９のいずれか１項に記載のネットワーク検証装置。
【請求項１１】
前記検証処理部は、
前記転送行列の固有値を算出する第４算出部、
を含み、
前記第４算出部で算出される固有値に基づいて、前記対象ネットワーク内にループ経路が存在するか否かを判定する、
請求項１から１０のいずれか１項に記載のネットワーク検証装置。
【請求項１２】
前記ネットワーク情報取得部は、前記物理トポロジ情報及び前記複数の転送規則情報を取得し、該物理トポロジ情報及び該複数の転送規則情報に基づいて、前記スイッチ装置間の接続関係を示す物理トポロジ行列、及び、前記複数のスイッチ装置における入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせを示す転送規則行列を生成し、該物理トポロジ行列と該転送規則行列とを掛け合せることにより、前記転送行列を生成する、
請求項１から１１のいずれか１項に記載のネットワーク検証装置。
【請求項１３】
コンピュータが、複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークを検査するネットワーク検証方法において、
前記対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、前記各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、前記対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得し、
前記転送行列を用いた演算を行うことにより、所定検証項目における前記対象ネットワークの状態を推定する、
事を含むネットワーク検証方法。
【請求項１４】
請求項１３に記載のネットワーク検証方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを検証する技術に関する。
【背景技術】
【０００２】
ネットワークは、Ｌ２スイッチ、Ｌ３スイッチ等と呼ばれるスイッチ装置から形成される。ネットワークに流入するトラフィックは、これらスイッチ装置により転送制御された後、そのネットワークから流出し、宛先に送り届けられる。ネットワーク管理者は、慎重にネットワーク設計を行った上で、各スイッチ装置を適切に接続し、かつ、各スイッチ装置にルーティングやフィルタリング等の設定を適切にそれぞれ行う必要がある。
【０００３】
一方で、近年、ＳＤＮ（Software Defined Networking）と呼ばれる、ソフトウェアでネットワークを制御及び管理するコンセプトが注目を浴びている。ＳＤＮによれば、物理的に接続されたネットワーク上で仮想的なネットワークを自由に構築することができる。仮想的なネットワークを実現する技術には、ＶＰＮ（Virtual Private Network）、ＶＬＡＮ（Virtual Local Area Network）等が存在する。また、ＯｐｅｎＦｌｏｗ（登録商標）は、ＳＤＮを実現する技術の１つである。ＯｐｅｎＦｌｏｗでは、コントローラが、複数のスイッチ装置と通信を行うことにより、トラフィックの経路設定や転送指示等を行う。
【０００４】
上述のような仮想的なネットワーク（以降、仮想網とも表記される）及び物理ネットワークにおける通信品質は、各スイッチ装置のトポロジや、各スイッチ装置に対する転送設定等に応じて、左右される。そこで、所望の通信品質を保証するために、そのようなネットワークに関し各種検証が行われる。以下の特許文献１では、複数のＶＬＡＮを跨ぐような通信範囲でも特定可能なＶＬＡＮ通信検査システムが提案される。また、以下の非特許文献１では、ネットワーク仕様及び構成を静的に検査するためのＨＳＡ（Header Space Analysis）と呼ばれる手法が提案されている。このＨＳＡでは、パケットヘッダがＬビットのビット列とみなされ、各パケットがＬ次空間の或る点とみなされ、パケットがその空間上の或る点から別の点に転送されるとみなされる。また、スイッチ装置ごとにパケット転送ルールを示す転送関数Ｔが作成される。一つのパケットに対して、複数のパケットをコピーし、転送するため、転送関数Ｔの出力はヘッダと出力スイッチポートの組の集合となる。ＨＳＡでは、転送関数Ｔを推移的に適用することで、経路が求められ、ループ経路が検出される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許５０３５３３７号公報
【非特許文献】
【０００６】
【非特許文献１】Peyman Kazemian、George Varghese、Nick McKeown著、「Header Space Analysis: Static Checking For Networks」、NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation、２０１２年、ｐｐ．９−２２
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述の各提案手法は、検証対象のネットワークに流入するトラフィックを構成する通信制御単位を考慮していないもの、及び、通信制御単位を考慮していたとしても検査効率には改善の余地を残すものであった。ここで、通信制御単位とは、対象ネットワーク内のスイッチ装置が転送規則を適用する通信単位を意味し、フレーム、パケット、セッション、フロー等が例示される。ここでは、通信制御単位は制限されない。
【０００８】
本発明は、このような事情に鑑みて、通信制御単位を考慮したネットワーク検証を効率的に行う技術を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の各側面では、上述した課題を解決するために、それぞれ以下の構成を採用する。
【００１０】
第１の側面は、複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークを検査するネットワーク検証装置に関する。第１の側面に係るネットワーク検証装置は、対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得するネットワーク情報取得部と、ネットワーク情報取得部により取得される当該転送行列を用いた演算を行うことにより、所定検証項目における対象ネットワークの状態を推定する検証処理部と、を有する。
【００１１】
第２の側面は、コンピュータが、複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークを検査するネットワーク検証方法に関する。第２の側面に係るネットワーク検証方法は、対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得し、取得された当該転送行列を用いた演算を行うことにより、所定検証項目における対象ネットワークの状態を推定する、ことを含む。
【００１２】
なお、本発明の他の側面としては、上記第２の側面の方法を少なくとも１つのコンピュータに実行させるプログラムであってもよいし、このようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。この記録媒体は、非一時的な有形の媒体を含む。
【発明の効果】
【００１３】
上記各側面によれば、通信制御単位を考慮したネットワーク検証を効率的に行う技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】第１実施形態におけるネットワーク検証装置のハードウェア構成例を概念的に示す図である。
【図２】第１実施形態におけるネットワーク検証装置の処理構成例を概念的に示す図である。
【図３】転送行列Ｒの構造例を示す図である。
【図４】要求トラフィックベクトルｖ０の構造例を示す図である。
【図５】出力処理部による出力イメージの例を示す図である。
【図６】出力処理部による出力イメージの他の例を示す図である。
【図７】第１実施形態におけるネットワーク検証装置の動作例を示すフローチャートである。
【図８】転送行列Ｒの生成に関する第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図９】物理トポロジ行列Ｇの生成、即ち、図８の（Ｓ８４）に関する、第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図１０】要素行列Ｈｓｄ，ｓｓの生成、即ち、図９の（Ｓ９４）に関する、第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図１１】転送規則行列Ｌの生成、即ち、図８の（Ｓ８５）に関する、第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図１２】要素行列Ｔｅの生成、即ち、図１１の（Ｓ１１３）に関する、第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図１３】要素行列Ｄｈｏ，ｈｉの生成、即ち、図１２の（Ｓ１２４）に関する、第１実施形態におけるネットワーク検証装置の詳細動作例を示すフローチャートである。
【図１４】第２実施形態におけるネットワーク検証装置の処理構成例を概念的に示す図である。
【図１５】トラフィック経路ベクトルｖＲの内容の出力イメージの例を示す図である。
【図１６】第２実施形態におけるネットワーク検証装置の動作例を示すフローチャートである。
【図１７】第３実施形態におけるネットワーク検証装置の処理構成例を概念的に示す図である。
【図１８】第３実施形態におけるネットワーク検証装置の動作例を示すフローチャートである。
【図１９】各実施例における対象ネットワークを概念的に示す図である。
【図２０】各実施例における物理トポロジ情報を示す図である。
【図２１】各実施例における転送規則情報を示す図である。
【図２２Ａ】各実施例における物理トポロジ行列Ｇを示す図である。
【図２２Ｂ】各実施例における転送規則行列Ｌを示す図である。
【図２３】実施例１における要求トラフィック情報を示す図である。
【図２４】実施例１におけるトラフィックベクトルｖを示す図である。
【図２５】実施例１における流出トラフィックベクトルｖ'を示す図である。
【図２６】実施例１における物理トラフィックベクトルｖＰを示す図である。
【図２７】実施例２における要求トラフィック情報を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について図面を用いて説明する。なお、以下に挙げる各実施形態はそれぞれ例示であり、本発明は以下の各実施形態の構成に限定されない。
【００１６】
［第１実施形態］
第１実施形態におけるネットワーク検証装置は、複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークの検証を行う。当該スイッチ装置は、フレーム、パケット、フロー等と呼ばれる所定通信制御単位を転送する装置である。当該スイッチ装置は、例えば、Ｌ２スイッチ、Ｌ３スイッチ、Ｏｐｅｎｆｌｏｗ（登録商標）スイッチ等である。本実施形態では、スイッチ装置で転送される通信制御単位を制限しない。通信制御単位は、フレーム又はパケットのヘッダデータによって特定され得る。また、検査対象となる対象ネットワークは、物理網であってもよいし、仮想網であってもよい。例えば、通信制御単位がフローであり、当該スイッチ装置がＯｐｅｎｆｌｏｗ（登録商標）スイッチである場合には、対象ネットワークは、仮想網となる。
【００１７】
以降、説明の便宜のため、スイッチ装置はスイッチと略称され、スイッチ装置が持つ物理ポートはポートと略称され、通信制御単位はヘッダと表記される場合もある。
【００１８】
〔装置構成〕
図１は、第１実施形態におけるネットワーク検証装置１のハードウェア構成例を概念的に示す図である。第１実施形態におけるネットワーク検証装置１は、いわゆるコンピュータであり、例えば、バスで相互に接続される、ＣＰＵ（Central Processing Unit）２、メモリ３、入出力インタフェース（Ｉ／Ｆ）４等を有する。メモリ３は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、補助記憶装置（ハードディスク等）である。入出力Ｉ／Ｆ４は、表示装置６及び入力装置７のようなユーザインタフェース装置や、通信装置（図示せず）等と接続され得る。表示装置６は、ディスプレイ装置やプリンタ等のようなユーザに情報を提供する装置である。入力装置７は、キーボード、マウス等のようなユーザ操作の入力を受け付ける装置である。但し、本実施形態は、ネットワーク検証装置１のハードウェア構成を制限しない。
【００１９】
〔処理構成〕
図２は、第１実施形態におけるネットワーク検証装置１の処理構成例を概念的に示す図である。第１実施形態におけるネットワーク検証装置１は、ネットワーク情報取得部１１、要求取得部１２、検証処理部１０、品質判定部１５、出力処理部１６等を有する。検証処理部１０は、第１算出部１３及び第２算出部１４を含む。これら各処理部は、例えば、ＣＰＵ２によりメモリ３に格納されるプログラムが実行されることにより実現される。また、当該プログラムは、例えば、ＣＤ（Compact Disc）、メモリカード等のような可搬型記録媒体やネットワーク上の他のコンピュータから入出力Ｉ／Ｆ４を介してインストールされ、メモリ３に格納されてもよい。
【００２０】
ネットワーク情報取得部１１は、対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列Ｒを取得する。転送行列Ｒは、対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される。
【００２１】
以降、対象ネットワークに含まれるスイッチ装置の総数は、｜Ｅ｜と表記され、対象ネットワークに含まれるスイッチ装置の中で最も多い物理ポートを持つスイッチ装置の物理ポート数は、｜Ｐ｜と表記される。｜Ｅ｜及び｜Ｐ｜は、物理トポロジ情報から抽出され得る。また、各転送規則情報で示される入力時ヘッダデータ及び出力時ヘッダデータに基づいて、対象ネットワーク内で転送対象とされる通信制御単位の数（ヘッダ数）が決められ、その数は、｜Ｈ｜と表記される。以下、通信制御単位を特定し得るデータがヘッダデータと表記される。即ち、以下の説明においてヘッダデータとは、ヘッダデータを特定するための識別情報である。
【００２２】
図３は、転送行列Ｒの構造例を示す図である。転送行列Ｒは、図３に示されるように、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）列の正方行列であり、転送行列Ｒの各要素は、各スイッチの各ポートに存在する通信制御単位のヘッダデータをそれぞれ示し、そのヘッダデータの通信制御単位が存在する要素に１が設定され、当該通信制御単位が存在しない要素に０が設定される。
【００２３】
転送行列Ｒは、上記物理トポロジ情報に対応する物理トポロジ行列Ｇ、及び、上記複数のスイッチ装置の複数の転送規則情報に対応する転送規則行列Ｌを用いて、以下の（式１）で表すことができる。
【数１】
2014216935.tif 000003
【００２４】
物理トポロジ行列Ｇは、更に、次のように定義することができる。
【数２】
2014216935.tif 000004
【００２５】
物理トポロジ行列Ｇは、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）列の正方行列である。物理トポロジ行列Ｇの各要素は、接続元スイッチｓｓと接続先スイッチｓｄとの物理的接続関係をそれぞれ示し、要素行列Ｓｓｄ，ｓｓとして定義することができる。要素行列Ｓｓｄ，ｓｓは、スイッチ装置のレイヤに対応する。即ち、物理トポロジ行列Ｇでは、行方向に、要素行列Ｓｓｄ，ｓｓが｜Ｅ｜個並び、列方向に、要素行列Ｓｓｄ，ｓｓが｜Ｅ｜個並ぶ。添字ｓｄ及び添字ｓｓが同値である要素行列Ｓｓｄ，ｓｓ、及び、物理的に接続されていないスイッチｓｓとスイッチｓｄとの組み合わせを示す要素行列Ｓｓｄ，ｓｓはそれぞれゼロ行列となる。要素行列Ｓｓｄ，ｓｓは、（｜Ｈ｜×｜Ｐ｜）行（｜Ｈ｜×｜Ｐ｜）列の正方行列である。要素行列Ｓｓｄ，ｓｓでは、対角成分として、要素行列Ｈｓｄ，ｓｓ（ｈ）が｜Ｈ｜個並び、それ以外の成分が０となる。
【００２６】
つまり、要素行列Ｈｓｄ，ｓｓ（ｈ）は、接続元スイッチｓｓと接続先スイッチｓｄとの間に流れる通信制御単位（ヘッダ）のレイヤに対応し、ｈは、１以上｜Ｈ｜以下の整数である。物理トポロジ行列Ｇは対象ネットワークの物理トポロジを示すため、各要素行列Ｈｓｄ，ｓｓ（ｈ）の中身はそれぞれ同一となる。要素行列Ｈｓｄ，ｓｓ（ｈ）は、（｜Ｐ｜）行（｜Ｐ｜）列の正方行列である。要素行列Ｈｓｄ，ｓｓ（ｈ）の各要素は、接続元ポートｐｓと接続先ポートｐｄとの接続関係をそれぞれ示し、要素ｐｐｄ，ｐｓとして定義することができる。接続されるポートの組み合わせを示す要素ｐｐｄ，ｐｓは１に設定され、それ以外の要素ｐｐｄ，ｐｓは０に設定される。
【００２７】
更に、転送規則行列Ｌは、次のように定義することができる。
【数３】
2014216935.tif 000005
【００２８】
転送規則行列Ｌは、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）列の正方行列である。転送規則行列Ｌでは、対角成分として、（｜Ｈ｜×｜Ｐ｜）行（｜Ｈ｜×｜Ｐ｜）列の正方行列である要素行列Ｔｅが｜Ｅ｜個並び、それ以外の成分が０となる。即ち、要素行列Ｔｅは、スイッチ装置のレイヤに対応する。要素行列Ｔｅの各要素は、スイッチｅに入力される通信制御単位のヘッダｈｉがそのスイッチｅでヘッダｈｏに書き換えられて出力されることをそれぞれ示し、｜Ｐ｜行｜Ｐ｜列の正方行列である要素行列Ｄｈｏ，ｈｉとして定義することができる。要素行列Ｔｅでは、行方向に、要素行列Ｄｈｏ，ｈｉが｜Ｈ｜個並び、列方向に、要素行列Ｄｈｏ，ｈｉが｜Ｈ｜個並ぶ。
【００２９】
要素行列Ｄｈｏ，ｈｉの各要素は、入力ポートｐｉと出力ポートｐｏとの関係をそれぞれ示し、要素ｔｐｏ，ｐｉとして定義することができる。入力ポートｐｉと出力ポートｐｏとの組み合わせを示す要素ｔｐｏ，ｐｉは１であり、それ以外の要素ｔｐｏ，ｐｉは０となる。
【００３０】
ネットワーク情報取得部１１は、物理トポロジ情報及び転送規則情報を取得し、これら情報を用いて、上述の物理トポロジ行列Ｇ及び転送規則行列Ｌを生成し、物理トポロジ行列Ｇ及び転送規則行列Ｌを掛け合せることにより、上述のように転送行列Ｒを生成してもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して転送行列Ｒを取得してもよい。また、転送行列Ｒは、予めメモリ３に格納されていてもよい。また、物理トポロジ情報及び転送規則情報は、予めメモリ３に格納されていてもよいし、入力装置７を用いたユーザ操作により入力されてもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して取得されてもよい。また、ネットワーク情報取得部１１は、ＳＮＭＰ（Simple Network Management Protocol）等を用いて、対象ネットワークから物理トポロジ情報を収集してもよい。ネットワーク情報取得部１１は、各スイッチ装置から転送規則情報をそれぞれ収集してもよい。
【００３１】
要求取得部１２は、対象ネットワーク内に流入する要求トラフィックに関し、要求トラフィックの入口となるスイッチ装置の物理ポート、要求トラフィックに含まれる通信制御単位を特定するためのヘッダデータ、及び、要求トラフィックのトラフィック量を表す要求トラフィックベクトルｖ０を取得する。要求取得部１２は、要求トラフィックに関する情報を取得し、この情報に基づいて要求トラフィックベクトルｖ０を生成してもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して要求トラフィックベクトルを取得してもよい。要求トラフィックに関する情報は、入力装置７を用いたユーザ操作により入力されてもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して取得されてもよいし、要求取得部１２が対象ネットワークを監視することにより決定されてもよい。
【００３２】
図４は、要求トラフィックベクトルｖ０の構造例を示す図である。要求トラフィックベクトルｖ０は、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行の列ベクトルである。要求トラフィックベクトルｖ０の各要素は、各スイッチ装置の各ポートに流入する通信制御単位の各ヘッダをそれぞれ示し、要求トラフィックの対象ネットワークへの入口となるスイッチ装置、要求トラフィックを構成する通信制御単位のヘッダデータ、及び、その入口となるスイッチ装置のその要求トラフィックが流入する物理ポートを示す要素に、その通信制御単位のトラフィック量が設定され、要求トラフィックが流入しない他の要素には０が設定される。例えば、スイッチｅのポートｐに対してヘッダｈを持つ要求トラフィックが１０（Ｍｂｐｓ）流入する場合、要求トラフィックベクトルｖ０の［｛（ｅ−１）×｜Ｐ｜×｜Ｈ｜｝＋｛（ｈ−１）×｜Ｐ｜｝＋ｐ］番目の要素が１０に設定され、それ以外の要素が０に設定される。
【００３３】
検証処理部１０は、ネットワーク情報取得部１１により取得された転送行列Ｒを用いた演算を行うことにより、所定検証項目における対象ネットワークの状態を推定する。第１実施形態では、検証処理部１０は、第１算出部１３及び第２算出部１４の各処理により、各スイッチ装置の各物理ポートに流入する、ヘッダ毎のトラフィック量、及び、各スイッチ装置の各物理ポートに流入するトラフィック量を、所定検証項目における対象ネットワークの状態として推定する。
【００３４】
第１算出部１３は、要求トラフィックの入口となるスイッチ装置から他の各スイッチ装置までの各ホップ数に応じて転送行列Ｒが累乗された各行列の和と、要求トラフィックベクトルｖ０との積を合算することにより、各スイッチ装置における各物理ポートに流入するトラフィック量を通信制御単位（ヘッダ）毎に表すトラフィックベクトルｖを生成する。これにより、トラフィックベクトルｖは、要求トラフィックベクトルｖ０が定常的に対象ネットワークに流入しながら対象ネットワークから流出している状況における、任意の時点の各スイッチ装置の物理ポート毎及びヘッダ毎の流入トラフィック量を表すと言える。
【００３５】
対象ネットワークに流入した要求トラフィックが、対象ネットワーク内をｎホップ分転送された状態は、転送行列Ｒ及び要求トラフィックベクトルｖ０を用いて、Ｒｎ×ｖ０で表すことができる。このため、上述のトラフィックベクトルｖは、概念上、次の（式２）で示されるように、（Ｒｎ×ｖ０）を無限ホップ数分まで足し合わせたものと考えることができる。
【数４】
2014216935.tif 000006
【００３６】
従って、例えば、第１算出部１３は、上記（式２）において、（Ｒｎ×ｖ０）を対象ネットワークの最大ホップ数分まで足し合わせることにより、トラフィックベクトルｖを算出することができる。転送行列Ｒのホップ数に対応する累乗（ｎ乗）の算出には、効率化された周知の計算アルゴリズムが利用されればよい。例えば、転送行列Ｒを固有値分解することで得られる、対角成分に転送行列Ｒの固有値を持つ対角行列を用いて算出する手法が存在する。
【００３７】
また、第１算出部１３は、転送行列Ｒ及び要求トラフィックベクトルｖ０と共に、転送行列Ｒを形成するための転送規則行列Ｌを用いて、要求トラフィックの対象ネットワークからの出口となるスイッチ装置から流出するトラフィック量を示す流出トラフィックベクトルｖ'を生成することもできる。例えば、第１算出部１３は、次の（式３）を用いて、流出トラフィックベクトルｖ'を生成することができる。
【数５】
2014216935.tif 000007
【００３８】
第２算出部１４は、第１算出部１３で生成されたトラフィックベクトルｖにおいて、物理ポート毎にトラフィック量を足し合わせることにより、各スイッチ装置における各物理ポートに流入するトラフィック量を表す物理トラフィックベクトルｖＰを生成する。これにより、物理トラフィックベクトルｖＰは、トラフィックベクトルｖに関し、同じ物理ポートに流入する異なるヘッダのトラフィック量を足し合わせたものであり、任意の時点の各スイッチ装置の物理ポート毎の流入トラフィック量を表すと言える。
【００３９】
例えば、第２算出部１４は、スイッチ装置の物理ポート毎に異なるヘッダのトラフィック量を足し合わせるための行列ＣＰを用いて、次の（式４）から物理トラフィックベクトルｖＰを生成することができる。この場合、物理トラフィックベクトルｖＰは、（｜Ｅ｜×｜Ｐ｜）行の列ベクトルとなり、スイッチｅのポートｐに流入するトラフィック量は、物理トラフィックベクトルｖＰの｛（ｅ−１）×｜Ｐ｜＋ｐ｝番目の要素として示される。
【００４０】
行列ＣＰは、（｜Ｅ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｐ｜×｜Ｈ｜）列の行列である。行列ＣＰでは、対角成分に、｜Ｐ｜行（｜Ｐ｜×｜Ｈ｜）列の要素行列Ｗｅが｜Ｅ｜個並ぶ。要素行列Ｗｅでは、｜Ｐ｜行｜Ｐ｜列の単位行列Ｉが列方向に｜Ｈ｜個並ぶ。
【数６】
2014216935.tif 000008
【００４１】
更に、第２算出部１４は、行列ＣＰと流出トラフィックベクトルｖ'とを掛け合わせることにより、流出物理トラフィックベクトルｖＰ'を生成することができる。流出物理トラフィックベクトルｖＰ'は、要求トラフィックの対象ネットワークからの出口となるスイッチ装置の物理ポートから流出するトラフィック量を示す。この場合、スイッチｅのポートｐから流出するトラフィック量は、流出物理トラフィックベクトルｖＰ'の｛（ｅ−１）×｜Ｐ｜＋ｐ｝番目の要素として示される。
【００４２】
品質判定部１５は、第２算出部１４により生成された物理トラフィックベクトルｖＰ及び流出物理トラフィックベクトルｖＰ'の少なくとも一方、及び、スイッチ装置間の物理リンクの帯域性能情報に基づいて、対象ネットワーク内の、通信品質の劣化が生じ得る箇所を特定する。物理トラフィックベクトルｖＰ及び流出物理トラフィックベクトルｖＰ'は、任意の時点の各スイッチ装置の物理ポート毎の流入又は流出トラフィック量を表すため、品質判定部１５は、各物理ポートに接続される物理リンクの帯域性能と、その流入又は流出トラフィック量とを比較することで、帯域溢れ等の通信品質の劣化が生じ得る物理リンク又は物理ポートを特定することができる。各物理リンクの帯域性能情報は、予めメモリ３に格納されていてもよいし、入力装置７を用いたユーザ操作により入力されてもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して取得されてもよい。
【００４３】
出力処理部１６は、品質判定部１５により特定された箇所を特定可能な状態で出力する。例えば、出力処理部１６は、対象ネットワークの物理トポロジを表す情報と共に、その物理トポロジの中の、品質判定部１５により特定された物理リンク又は物理ポートを他の物理リンク又は物理ポートとは異なる態様で表す情報を出力する。本実施形態では、出力処理部１６による出力形態は制限されない。出力形態は、表示、印刷、送信、ファイル出力等である。
【００４４】
図５は、出力処理部１６による出力イメージの例を示す図である。図５の例では、対象ネットワークの物理トポロジが絵により示されており、品質判定部１５により特定された物理リンクを示す部位（スイッチＳＷ２とスイッチＳＷ４との間）に帯域溢れを示す情報が付されている。但し、図５はあくまで一例であり、出力処理部１６は、上記情報をテキストデータとして生成してもよい。
【００４５】
また、出力処理部１６は、第１算出部１３により生成されるトラフィックベクトルｖ及び流出トラフィックベクトルｖ'、並びに、第２算出部１４により生成される物理トラフィックベクトルｖＰ及び流出物理トラフィックベクトルｖＰ'の少なくとも１つの内容を出力するようにしてもよい。具体的には、出力処理部１６は、トラフィックベクトルｖに基づいて、各スイッチ装置の物理ポート毎の流入トラフィック量をヘッダ毎に表す情報を出力してもよい。また、出力処理部１６は、物理トラフィックベクトルｖＰに基づいて、各スイッチ装置の物理ポート毎の流入トラフィック量を表す情報を出力してもよい。
【００４６】
図６は、出力処理部１６による出力イメージの他の例を示す図である。図６の例では、各スイッチの各物理ポートへ流入するトラフィック量がグラフ形式でそれぞれ示されている。この場合、出力処理部１６は、物理トラフィックベクトルｖＰ及び流出物理トラフィックベクトルｖＰ'を所定時間範囲分保持しておき、各物理ポートに流入及び流出するトラフィック量の時間推移を表すグラフを生成すればよい。図６の例において、スイッチＳＷ４から流出するトラフィック量を示すグラフは、流出物理トラフィックベクトルｖＰ'から生成される。
【００４７】
〔動作例〕
以下、第１実施形態におけるネットワーク検証方法について図７を用いて説明する。図７は、第１実施形態におけるネットワーク検証装置１の動作例を示すフローチャートである。以下の説明では、ネットワーク検証装置１が各方法の実行主体となるが、ネットワーク検証装置１に含まれる上述の各処理部が実行主体となってもよい。
【００４８】
ネットワーク検証装置１は、上述の転送行列Ｒを取得する（Ｓ７１）。転送行列Ｒ自体の内容及び転送行列Ｒの取得方法については上述したとおりである。
【００４９】
更に、ネットワーク検証装置１は、対象ネットワークに流入する要求トラフィックを示す要求トラフィックベクトルｖ０を取得する（Ｓ７２）。要求トラフィックベクトルｖ０自体の内容及び要求トラフィックベクトルｖ０の取得方法についても上述したとおりである。
【００５０】
続いて、ネットワーク検証装置１は、転送行列Ｒ及び要求トラフィックベクトルｖ０から、トラフィックベクトルｖを生成する（Ｓ７３）。具体的には、ネットワーク検証装置１は、上記（式２）において、（Ｒｎ×ｖ０）を対象ネットワークの最大ホップ数分まで足し合わせることにより、トラフィックベクトルｖを算出する。トラフィックベクトルｖ自体の内容は上述したとおりである。
【００５１】
ネットワーク検証装置１は、生成されたトラフィックベクトルｖにおいて、物理ポート毎にトラフィック量を足し合わせることにより、物理トラフィックベクトルｖＰを生成する（Ｓ７４）。物理トラフィックベクトルｖＰ自体の内容については上述したとおりである。
【００５２】
次に、ネットワーク検証装置１は、生成された物理トラフィックベクトルｖＰ、及び、スイッチ装置間の物理リンクの帯域性能情報に基づいて、対象ネットワーク内の、通信品質の劣化が生じ得る箇所を特定する（Ｓ７５）。例えば、ネットワーク検証装置１は、物理トラフィックベクトルｖＰの要素として示される各物理ポートに流入するトラフィック量と当該帯域性能情報とを比較することにより、通信品質の劣化が生じ得る箇所を特定する。
【００５３】
ネットワーク検証装置１は、（Ｓ７５）で特定された通信品質の劣化が生じ得る箇所を特定可能な情報を出力する（Ｓ７６）。出力形態及び出力内容については上述したとおりである。
【００５４】
但し、第１実施形態におけるネットワーク検証方法は、図７で示される例に制限されない。例えば、工程（Ｓ７１）及び（Ｓ７２）は、実行順が入れ替えられてもよいし、同時に実行されてもよい。また、出力される情報によっては、（Ｓ７５）は実行されなくてもよい。具体的には、（Ｓ７６）において、ネットワーク検証装置１が、トラフィックベクトルｖ及び物理トラフィックベクトルｖＰの少なくとも１つの内容を出力する場合には、（Ｓ７５）は実行されなくてもよい。この場合、ネットワーク検証装置１は、各スイッチ装置の物理ポート毎の流入トラフィック量をヘッダ毎に表す情報、及び、各スイッチ装置の物理ポート毎の流入トラフィック量を表す情報の少なくとも一方を出力する（Ｓ７６）。
【００５５】
更に、ネットワーク検証装置１は、（Ｓ７３）の後に、上記（式３）を用いて、流出トラフィックベクトルｖ'を生成してもよい。また、ネットワーク検証装置１は、（Ｓ７４）の後に、上述の行列ＣＰと流出トラフィックベクトルｖ'とを掛け合わせることにより、流出物理トラフィックベクトルｖＰ'を生成してもよい。流出トラフィックベクトルｖ'自体及び流出物理トラフィックベクトルｖＰ'自体の各内容は上述したとおりである。これにより、ネットワーク検証装置１は、流出トラフィックベクトルｖ'及び流出物理トラフィックベクトルｖＰ'の少なくとも一方の内容を出力することができる（Ｓ７６）。この場合、ネットワーク検証装置１は、要求トラフィックの対象ネットワークからの出口となるスイッチ装置の物理ポートから流出するトラフィック量を表す情報、及び、そのトラフィック量をヘッダ毎に表す情報の少なくとも一方を出力する（Ｓ７６）。
【００５６】
次に、上記（Ｓ７１）において、ネットワーク検証装置１が転送行列Ｒを生成する場合の、転送行列Ｒの生成方法について、図８、図９及び図１０を用いて説明する。
【００５７】
図８は、転送行列Ｒの生成に関する第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。
【００５８】
ネットワーク検証装置１は、対象ネットワークの物理トポロジ情報、及び、対象ネットワーク内の各スイッチ装置に関する複数の転送規則情報を取得する（Ｓ８１）。物理トポロジ情報は、対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す。各転送規則情報は、各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す。物理トポロジ情報及び転送規則情報の取得方法については上述のとおりである。
【００５９】
ネットワーク検証装置１は、物理トポロジ情報から、対象ネットワークに含まれるスイッチ装置の総数｜Ｅ｜、及び、最も多い物理ポートを持つスイッチ装置の物理ポート数｜Ｐ｜を取得する（Ｓ８２）。更に、ネットワーク検証装置１は、各転送規則情報で示される入力時ヘッダデータ及び出力時ヘッダデータに基づいて、対象ネットワーク内で転送対象とされる通信制御単位の数（ヘッダ数）｜Ｈ｜を取得する（Ｓ８３）。
【００６０】
続いて、ネットワーク検証装置１は、｜Ｅ｜、｜Ｐ｜及び｜Ｈ｜を用いて、物理トポロジ情報から、物理トポロジ行列Ｇを生成する（Ｓ８４）。更に、ネットワーク検証装置１は、｜Ｅ｜、｜Ｐ｜及び｜Ｈ｜を用いて、転送規則情報から、転送規則行列Ｌを生成する（Ｓ８５）。
【００６１】
ネットワーク検証装置１は、物理トポロジ行列Ｇ及び転送規則行列Ｌの積により、転送行列Ｒを生成する（Ｓ８６）。
【００６２】
図９は、物理トポロジ行列Ｇの生成、即ち、図８の（Ｓ８４）に関する、第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。まず、ネットワーク検証装置１は、物理トポロジ行列Ｇを、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）列のゼロ行列として生成する（Ｓ９１）。
【００６３】
ネットワーク検証装置１は、（Ｓ９３）から（Ｓ９６）までを｜Ｅ｜回繰り返す（Ｓ９２）。（Ｓ９２）のループは、接続元スイッチｓｓに関するループである。更に、ネットワーク検証装置１は、（Ｓ９４）から（Ｓ９６）までを｜Ｅ｜回繰り返す（Ｓ９３）。（Ｓ９３）のループは、接続先スイッチｓｄに関するループである。
【００６４】
ネットワーク検証装置１は、要素行列Ｈｓｄ，ｓｓを生成する（Ｓ９４）。要素行列Ｈｓｄ，ｓｓは、上記要素行列Ｈｓｄ，ｓｓ（ｈ）の１つに相当し、（｜Ｐ｜）行（｜Ｐ｜）列の正方行列である。
【００６５】
ネットワーク検証装置１は、要素行列Ｈｓｄ，ｓｓが対角成分として｜Ｈ｜個並び、かつ、それ以外の要素が０となる（｜Ｈ｜×｜Ｐ｜）行（｜Ｈ｜×｜Ｐ｜）列の要素行列Ｓｓｄ，ｓｓを生成する（Ｓ９５）。
【００６６】
ネットワーク検証装置１は、（Ｓ９５）で生成された要素行列Ｓｓｄ，ｓｓを物理トポロジ行列Ｇの所定位置に設定する（Ｓ９６）。所定位置は、当該要素行列Ｓｓｄ，ｓｓの１行１列目の要素が、物理トポロジ行列Ｇの［｛（ｓｄ−１）×｜Ｈ｜×｜Ｐ｜｝＋１］行［｛（ｓｓ−１）×｜Ｈ｜×｜Ｐ｜｝＋１］列の要素となる位置である。
【００６７】
図１０は、要素行列Ｈｓｄ，ｓｓの生成、即ち、図９の（Ｓ９４）に関する、第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。ネットワーク検証装置１は、接続元スイッチｓｓ及び接続先スイッチｓｄに対応する要素行列Ｈｓｄ，ｓｓを、（｜Ｐ｜）行（｜Ｐ｜）列のゼロ行列として生成する（Ｓ１０１）。
【００６８】
ネットワーク検証装置１は、（Ｓ１０３）から（Ｓ１０６）までを｜Ｐ｜回繰り返す（Ｓ１０２）。（Ｓ１０２）のループは、接続元スイッチｓｓのポートｐｓに関するループである。更に、ネットワーク検証装置１は、（Ｓ１０４）から（Ｓ１０６）までを｜Ｐ｜回繰り返す（Ｓ１０３）。（Ｓ１０３）のループは、接続先スイッチｓｄのポートｐｄに関するループである。
【００６９】
ネットワーク検証装置１は、物理トポロジ情報に基づいて、接続元スイッチｓｓのポートｐｓが接続先スイッチｓｄのポートｐｄに接続されているか否かを判定する（Ｓ１０４）。ネットワーク検証装置１は、接続されている場合（Ｓ１０５；ＹＥＳ）、要素行列Ｈｓｄ，ｓｓのｐｓ行ｐｄ列の要素に１を設定し（Ｓ１０６）、接続されていない場合（Ｓ１０５；ＮＯ）、何もせず、次のポートｐｄに移行する。
【００７０】
図１１は、転送規則行列Ｌの生成、即ち、図８の（Ｓ８５）に関する、第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。まず、ネットワーク検証装置１は、転送規則行列Ｌを、（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｈ｜×｜Ｐ｜）列のゼロ行列として生成する（Ｓ１１１）。
【００７１】
ネットワーク検証装置１は、（Ｓ１１３）及び（Ｓ１１４）を｜Ｅ｜回繰り返す（Ｓ１１２）。（Ｓ１１２）のループは、スイッチｅに関するループである。
【００７２】
ネットワーク検証装置１は、要素行列Ｔｅを生成する（Ｓ１１３）。要素行列Ｔｅは、（｜Ｈ｜×｜Ｐ｜）行（｜Ｈ｜×｜Ｐ｜）列の正方行列である。ネットワーク検証装置１は、要素行列Ｔｅが転送規則行列Ｌの対角成分として｜Ｅ｜個並ぶように、要素行列Ｔｅを転送規則行列Ｌに設定する（Ｓ１１４）。
【００７３】
図１２は、要素行列Ｔｅの生成、即ち、図１１の（Ｓ１１３）に関する、第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。ネットワーク検証装置１は、スイッチｅに対応する（｜Ｈ｜×｜Ｐ｜）行（｜Ｈ｜×｜Ｐ｜）列のゼロ行列として、要素行列Ｔｅを生成する（Ｓ１２１）。
【００７４】
ネットワーク検証装置１は、（Ｓ１２３）から（Ｓ１２５）までを｜Ｈ｜回繰り返す（Ｓ１２２）。（Ｓ１２２）のループは、スイッチｅの転送規則の中の入力時ヘッダデータｈｉに関するループである。更に、ネットワーク検証装置１は、（Ｓ１２４）及び（Ｓ１２５）を｜Ｈ｜回繰り返す（Ｓ１２３）。（Ｓ１２３）のループは、スイッチｅの転送規則の中の出力時ヘッダデータｈｏに関するループである。
【００７５】
ネットワーク検証装置１は、要素行列Ｄｈｏ，ｈｉを生成する（Ｓ１２４）。要素行列Ｄｈｏ，ｈｉは、上述のとおり、スイッチｅにおける、入力時ヘッダデータｈｉをｈｏに変換する転送規則に対応する、｜Ｐ｜行｜Ｐ｜列の正方行列である。
【００７６】
ネットワーク検証装置１は、生成された要素行列Ｄｈｏ，ｈｉの１行１列目の要素が、要素行列Ｔｅの［｛（ｈｏ−１）×｜Ｐ｜｝＋１］行［｛（ｈｉ−１）×｜Ｐ｜｝＋１］列の要素となる位置に、その要素行列Ｄｈｏ，ｈｉを要素行列Ｔｅに設定する（Ｓ１２５）。
【００７７】
図１３は、要素行列Ｄｈｏ，ｈｉの生成、即ち、図１２の（Ｓ１２４）に関する、第１実施形態におけるネットワーク検証装置１の詳細動作例を示すフローチャートである。ネットワーク検証装置１は、スイッチｅにおける入力時ヘッダデータｈｉを出力時ヘッダデータｈｏに変換する転送規則に対応する要素行列Ｄｈｏ，ｈｉを、（｜Ｐ｜）行（｜Ｐ｜）列のゼロ行列として生成する（Ｓ１３１）。
【００７８】
ネットワーク検証装置１は、（Ｓ１３３）から（Ｓ１３６）までを｜Ｐ｜回繰り返す（Ｓ１３２）。（Ｓ１３２）のループは、スイッチｅにおける、入力時ヘッダデータｈｉの通信制御単位の入力ポートｐｉに関するループである。更に、ネットワーク検証装置１は、（Ｓ１３４）から（Ｓ１３６）までを｜Ｐ｜回繰り返す（Ｓ１３３）。（Ｓ１３３）のループは、スイッチｅにおける、出力時ヘッダデータｈｏの通信制御単位の出力ポートｐｏに関するループである。
【００７９】
ネットワーク検証装置１は、スイッチｅの転送規則情報に基づいて、入力時ヘッダデータｈｉをｈｏに変換して、ポートｐｉからポートｐｏに転送する転送規則の有無を判定する（Ｓ１３４）。ネットワーク検証装置１は、当該転送規則が存在する場合（Ｓ１３５；ＹＥＳ）、要素行列Ｄｈｏ，ｈｉのｐｏ行ｐｉ列の要素に１を設定し（Ｓ１３６）、存在しない場合（Ｓ１３５；ＮＯ）、何もせず、次のポートｐｏに移行する。
【００８０】
〔第１実施形態における作用及び効果〕
上述したように第１実施形態では、対象ネットワークの物理トポロジ情報及び複数の転送規則情報から形成される転送行列Ｒと、対象ネットワークに流入する要求トラフィックに関し、入口スイッチ装置の物理ポート、ヘッダデータ及びトラフィック量を表す要求トラフィックベクトルｖ０とを用いた演算により、トラフィックベクトルｖ及び物理トラフィックベクトルｖＰが生成される。これにより、第１実施形態によれば、各スイッチ装置における各物理ポートに流入する総トラフィック量、及び、当該各物理ポートに流入する通信制御単位毎のトラフィック量の少なくとも一方を出力することができる。
【００８１】
更に、第１実施形態では、上記複数の転送規則情報を示す転送規則行列Ｌを更に用いた演算により、流出トラフィックベクトルｖ'及び流出物理トラフィックベクトルｖＰ'が生成され得る。これにより、第１実施形態によれば、要求トラフィックの対象ネットワークからの出口となるスイッチ装置の物理ポートから流出する総トラフィック量、及び、該物理ポートから流出する通信制御単位毎のトラフィック量の少なくとも一方も出力することができる。
【００８２】
また、第１実施形態では、上述のように生成された物理トラフィックベクトルｖＰと、対象ネットワーク内の各物理リンクの帯域性能情報とに基づいて、対象ネットワーク内の、通信品質の劣化が生じ得る箇所が特定される。これにより、第１実施形態によれば、対象ネットワーク内の通信品質の劣化が生じ得る箇所を分かり易く出力することができる。即ち、第１実施形態によれば、対象ネットワークの帯域問題を効率的に検出することができる。
【００８３】
このように、第１実施形態によれば、物理トポロジ情報のみでなく、対象ネットワーク内の転送規則情報も反映されており、対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列Ｒを用いることで、要求トラフィックに含まれる通信制御単位毎のトラフィックの流れを、複数のスイッチ装置の複数の物理ポートの各々について、一括で推定することができる。従って、第１実施形態によれば、通信制御単位を考慮したネットワーク検証を効率的に行うことができる。
【００８４】
［第２実施形態］
以下、第２実施形態におけるネットワーク検証装置１について、第１実施形態と異なる内容を中心に説明する。以下の説明では、第１実施形態と同様の内容については適宜省略する。
【００８５】
〔処理構成〕
図１４は、第２実施形態におけるネットワーク検証装置１の処理構成例を概念的に示す図である。第２実施形態におけるネットワーク検証装置１は、第１実施形態の処理構成から品質判定部１５及び第２算出部１４を除き、第３算出部１７を加えた処理構成を持つ。第３算出部１７についても他の処理部と同様に、当該プログラムが実行されることにより実現される。但し、第２実施形態におけるネットワーク検証装置１は、第１実施形態の処理構成に加えて、第３算出部１７を更に持つ処理構成としてもよい。
【００８６】
検証処理部１０は、対象ネットワークにおける、要求トラフィックに含まれる検査対象の通信制御単位の流れを、所定検証項目における対象ネットワークの状態として推定する。例えば、出力処理部１６が、ユーザに検査対象の通信制御単位を指定させるために、ヘッダデータのリストを表示する画面を表示装置６に表示させ、検証処理部１０は、入力装置７を用いたユーザ操作により入力される情報を取得し、この情報に基づいて、検査対象の通信制御単位を特定するようにしてもよい。検証処理部１０は、特定された検査対象の通信制御単位に対応する検査対象ヘッダデータｈを第３算出部１７に伝えることにより、上記推定を行う。
【００８７】
第３算出部１７は、以下の（式５）に示されるように、第１算出部１３で生成されたトラフィックベクトルｖに、検査対象ヘッダデータｈ以外のヘッダデータに関するデータ要素をマスクするヘッダフィルタ行列ＣＦ（ｈ）を掛け合せることにより、トラフィック経路ベクトルｖＲを生成する。トラフィック経路ベクトルｖＲは、各スイッチ装置における各物理ポートに流入する検査対象ヘッダデータｈを持つ通信制御単位のトラフィック量のみを表す。この場合、トラフィック経路ベクトルｖＲは、（｜Ｅ｜×｜Ｐ｜）行の列ベクトルとなり、スイッチｅのポートｐに流入するヘッダｈのトラフィック量は、トラフィック経路ベクトルｖＲの｛（ｅ−１）×｜Ｐ｜＋ｐ｝番目の要素として示される。
【００８８】
【数７】
2014216935.tif 000009
【００８９】
行列ＣＦ（ｈ）は、（｜Ｅ｜×｜Ｐ｜）行（｜Ｅ｜×｜Ｐ｜×｜Ｈ｜）列の行列である。行列ＣＦ（ｈ）では、対角成分に、｜Ｐ｜行（｜Ｐ｜×｜Ｈ｜）列の要素行列Ｆｅ（ｈ）が｜Ｅ｜個並ぶ。要素行列Ｆｅ（ｈ）は、１行［｛（ｈ−１）×｜Ｐ｜｝＋１］列目の要素が、｜Ｐ｜行｜Ｐ｜列の単位行列Ｉｈの１行１列目の要素となる位置に、単位行列Ｉｈが設定され、それ以外の要素が０に設定された行列である。
【００９０】
第３算出部１７は、指定された検査対象ヘッダデータｈに基づいて、このようなヘッダフィルタ行列ＣＦ（ｈ）を生成する。また、第３算出部１７は、｜Ｈ｜個の各ヘッダデータに対応する｜Ｈ｜個のヘッダフィルタ行列ＣＦ（１〜｜Ｈ｜）を保持しておき、その中から、指定された検査対象ヘッダデータｈに対応するヘッダフィルタ行列ＣＦ（ｈ）を選択するようにしてもよい。
【００９１】
また、第３算出部１７は、ヘッダフィルタ行列ＣＦ（ｈ）と流出トラフィックベクトルｖ'とを掛け合わせることにより、流出トラフィック経路ベクトルｖＲ'を生成することができる。流出トラフィック経路ベクトルｖＲ'は、要求トラフィックの対象ネットワークからの出口となるスイッチ装置の物理ポートから流出する、検査対象の通信制御単位のトラフィック量を示す。
【００９２】
出力処理部１６は、トラフィック経路ベクトルｖＲに基づいて、検査対象ヘッダデータを持つ通信制御単位のトラフィックが通過する、対象ネットワーク内の経路を示す情報を出力する。例えば、出力処理部１６は、対象ネットワークの物理トポロジを表す情報と共に、その物理トポロジ上の当該検査対象の通信制御単位が通過するスイッチ装置及び物理ポートを示す情報を出力する。
【００９３】
図１５は、トラフィック経路ベクトルｖＲの内容の出力イメージの例を示す図である。図１５に示されるように、表示要素ＩＰは、ユーザに検査対象の通信制御単位を指定させるための表示部位である。第３算出部１７は、表示要素ＩＰに指定されたヘッダデータｈ１を検査対象として、上述のように、トラフィック経路ベクトルｖＲを生成する。出力処理部１６による出力イメージでは、検査対象ヘッダデータｈ１を持つ通信制御単位の経路が他の物理パスと区別されるように表示される。
【００９４】
〔動作例〕
以下、第２実施形態におけるネットワーク検証方法について図１６を用いて説明する。図１６は、第２実施形態におけるネットワーク検証装置１の動作例を示すフローチャートである。以下の説明では、ネットワーク検証装置１が各方法の実行主体となるが、ネットワーク検証装置１に含まれる上述の各処理部が実行主体となってもよい。
【００９５】
第１実施形態と同様に、ネットワーク検証装置１は、転送行列Ｒ及び要求トラフィックベクトルｖ０を取得し（Ｓ１６１、Ｓ１６２）、トラフィックベクトルｖを生成する（Ｓ１６３）。
【００９６】
第２実施形態では、ネットワーク検証装置１は、検査対象のヘッダデータｈを取得する（Ｓ１６４）。取得されるヘッダデータｈは、ヘッダデータｈを特定し得るヘッダデータＩＤであってもよい。ネットワーク検証装置１は、取得さえたヘッダデータｈから、上述のヘッダフィルタ行列ＣＦ（ｈ）を生成する（Ｓ１６５）。ヘッダフィルタ行列ＣＦ（ｈ）自体の内容は上述したとおりである。
【００９７】
続いて、ネットワーク検証装置１は、トラフィックベクトルｖ及びヘッダフィルタ行列ＣＦ（ｈ）を掛け合せることにより、トラフィック経路ベクトルｖＲを生成する（Ｓ１６６）。トラフィック経路ベクトルｖＲ自体の内容については上述したとおりである。
【００９８】
ネットワーク検証装置１は、生成されたトラフィック経路ベクトルｖＲの内容を出力する（Ｓ１６７）。具体的には、ネットワーク検証装置１は、検査対象ヘッダデータを持つ通信制御単位のトラフィックが通過するスイッチ装置及び物理ポートを示す情報を出力する。
【００９９】
〔第２実施形態における作用及び効果〕
このように、第２実施形態では、検査対象の通信制御単位を特定し得る検査対象ヘッダデータｈに基づいて、ヘッダフィルタ行列ＣＦ（ｈ）が取得され、ヘッダフィルタ行列ＣＦ（ｈ）及びトラフィックベクトルｖとから、トラフィック経路ベクトルｖＲが生成される。これにより、第２実施形態によれば、転送行列Ｒを用いた演算により、検査対象の通信制御単位のトラフィックの経路を効率的に算出することができる。更に、第２実施形態が、第１実施形態の全ての構成を含む場合には、更に帯域問題も効率的に検出することができる。
【０１００】
［第３実施形態］
以下、第３実施形態におけるネットワーク検証装置１について、第１実施形態及び第２実施形態と異なる内容を中心に説明する。以下の説明では、第１実施形態及び第２実施形態と同様の内容については適宜省略する。
【０１０１】
〔処理構成〕
図１７は、第３実施形態におけるネットワーク検証装置１の処理構成例を概念的に示す図である。第３実施形態におけるネットワーク検証装置１は、第１実施形態の処理構成から品質判定部１５及び第２算出部１４を除き、第４算出部１８を加えた処理構成を持つ。第４算出部１８についても他の処理部と同様に、当該プログラムが実行されることにより実現される。但し、第３実施形態におけるネットワーク検証装置１は、第１実施形態又は第２実施形態、若しくは、第１実施形態と第２実施形態とを組み合わせた形態の処理構成に加えて、第４算出部１８を更に持つ処理構成としてもよい。
【０１０２】
第３実施形態における検証処理部１０は、対象ネットワークにおけるループ経路の有無を検証する。具体的には、第４算出部１８が転送行列Ｒの固有値を算出し、この固有値に基づいて、検証処理部１０は、対象ネットワーク内にループ経路が存在するか否かを判定する。具体的には、検証処理部１０は、全ての固有値が０になる場合に、ループ経路が存在しないと判定し、固有値の少なくとも１つが０にならない場合に、ループ経路が存在すると判定する。なお、固有値の算出方法には周知の手法が利用されればよい。また、対象ネットワーク内の最大ホップ数は、対象ネットワーク内のスイッチ装置の総数｜Ｅ｜より小さくなるため、第４算出部１８は、周知の固有値算出方法を用いず、転送行列Ｒを｜Ｅ｜乗して得られる行列がゼロ行列となる場合に、固有値が全て０と決定し、ゼロ行列にならない場合に、固有値の少なくとも１つが０にならないと決定することもできる。
【０１０３】
出力処理部１６は、検証処理部１０の判定結果、即ち、ループ経路の有無を示す情報を出力する。
【０１０４】
〔動作例〕
以下、第３実施形態におけるネットワーク検証方法について図１８を用いて説明する。図１８は、第３実施形態におけるネットワーク検証装置１の動作例を示すフローチャートである。以下の説明では、ネットワーク検証装置１が各方法の実行主体となるが、ネットワーク検証装置１に含まれる上述の各処理部が実行主体となってもよい。
【０１０５】
第１実施形態と同様に、ネットワーク検証装置１は、転送行列Ｒを取得する（Ｓ１８１）。
【０１０６】
第３実施形態では、続いて、ネットワーク検証装置１は、転送行列Ｒの固有値を算出する（Ｓ１８２）。ネットワーク検証装置１は、全ての固有値がゼロか否かを判定する（Ｓ１８３）。ネットワーク検証装置１は、全ての固有値がゼロの場合（Ｓ１８３；ＹＥＳ）、対象ネットワークにループ経路がないと判定する（Ｓ１８４）。一方、ネットワーク検証装置１は、少なくとも１つの固有値がゼロでない場合（Ｓ１８３；ＮＯ）、対象ネットワークにループ経路が有ると判定する（Ｓ１８５）。
【０１０７】
ネットワーク検証装置１は、ループ経路が有るか否かの判定結果を出力する（Ｓ１８６）。
【０１０８】
〔第３実施形態における作用及び効果〕
このように、第３実施形態では、転送行列Ｒの固有値が算出され、その固有値に基づいて、ループ経路の有無が判定される。従って、第３実施形態によれば、転送行列Ｒを用いることで、ループ経路の有無という経路問題を検出することができる。更に、第３実施形態が、第１実施形態及び第２実施形態の全ての構成を含む場合には、帯域問題及び経路問題を一括で検証することができる。
【０１０９】
［変形例］
上述の各実施形態では、要求トラフィックベクトルｖ０の要素には、トラフィック量が設定され、結果として、転送行列Ｒを用いて生成されるベクトルの各要素は、トラフィック量を示していた。しかしながら、トラフィック量のような実数値ではなく、トラフィックの確率分布が要求トラフィックベクトルｖ０の要素に設定されてもよい。この場合、算出されるトラフィックが実数値の線形和ではなく、確率分布の線形和となるため、トラフィックの見積もりや帯域問題の検出をより高精度に行うことができる。
【０１１０】
なお、上述の例では、転送行列Ｒ及び要求トラフィックベクトルｖ０の成分は、スイッチ、ヘッダ、ポートの順の階層構造を持つが、本実施形態では、転送行列Ｒ及び要求トラフィックベクトルｖ０の構造は、上述の例に制限されない。例えば、ヘッダのレイヤが最上位又は最下位に設定されてもよい。
【０１１１】
［補足］
転送行列Ｒ等のような上述の行列及びベクトルのサイズに影響を与える物理ポートの数｜Ｐ｜は、上述したように、対象ネットワークに含まれるスイッチ装置の中で最も多い物理ポートを持つスイッチ装置の物理ポート数に設定される。即ち、対象ネットワーク内の各スイッチ装置が備える物理ポートの数は同一でなくてもよい。よって、例えば、転送行列Ｒ等のような上述の行列及びベクトルの要素の中で、スイッチに存在しないポートに対応する要素は、０に設定される。
【０１１２】
以下に各実施例を挙げ、上述の実施形態を更に詳細に説明する。本発明は以下の各実施例から何ら限定を受けない。以下の各実施例は、図１９に示される対象ネットワーク、図２０に示される物理トポロジ情報、及び、図２１に示される転送規則情報を用いてそれぞれ説明される。
【実施例１】
【０１１３】
図１９は、各実施例における対象ネットワークを概念的に示す図である。
図２０は、各実施例における物理トポロジ情報を示す図である。図１９及び図２０に示されるように、対象ネットワークは、３つの物理ポートｐ１、ｐ２及びｐ３をそれぞれ持つ４個のスイッチｅ１、ｅ２、ｅ３及びｅ４から構成される。スイッチｅ１において、ポートｐ１は外部に接続され、ポートｐ２はスイッチｅ２のポートｐ２に接続され、ポートｐ３はスイッチｅ３のポートｐ２に接続される。スイッチｅ２において、ポートｐ１は外部に接続され、ポートｐ２はスイッチｅ１のポートｐ２に接続され、ポートｐ３はスイッチｅ４のポートｐ１に接続される。スイッチｅ３において、ポートｐ１は外部に接続され、ポートｐ２はスイッチｅ１のポートｐ３に接続され、ポートｐ３はスイッチｅ４のポートｐ２に接続される。スイッチｅ４において、ポートｐ３は外部に接続され、ポートｐ２はスイッチｅ３のポートｐ３に接続され、ポートｐ１はスイッチｅ２のポートｐ３に接続される。
【０１１４】
また、以下の各実施例では、対象ネットワークとして仮想網が例示され、通信制御対象としてフローが例示される。要求トラフィックは、フローｆ１（ＶＬＡＮＩＤ＝１）及びフローｆ２（ＶＬＡＮＩＤ＝２）を含み、フローｆ１のヘッダデータはｈ１と表記され、フローｆ２のヘッダデータはｈ２と表記される。
【０１１５】
図２１は、各実施例における転送規則情報を示す図である。図１９及び図２１に示されるように、対象の仮想網の転送規則情報は次のように設定されている。フローｆ１（ヘッダｈ１）は、ポートｐ１からスイッチｅ１に流入し、ヘッダｈ１のままスイッチｅ１のポートｐ３から流出する。その流出したフローｆ１（ヘッダｈ１）は、ポートｐ２からスイッチｅ３へ流入し、ヘッダｈ１のままスイッチｅ３のポートｐ３から流出する。その流出したフローｆ１（ヘッダｈ１）は、ポートｐ２からスイッチｅ４へ流入し、ヘッダｈ１のままスイッチｅ４のポートｐ３から外部に流出する。フローｆ２（ヘッダｈ２）は、ポートｐ１からスイッチｅ２へ流入し、ヘッダｈ２のままスイッチｅ２のポートｐ３から流出する。その流出したフローｆ２（ヘッダｈ２）は、ポートｐ１からスイッチｅ４へ流入し、ヘッダｈ２のままスイッチｅ４のポートｐ３から流出する。
【０１１６】
ネットワーク情報取得部１１は、図２０に示される物理トポロジ情報及び図２１に示される転送規則情報を用いて、転送行列Ｒを生成する。転送行列Ｒは、上記（式１）で示されるように、物理トポロジ行列Ｇ及び転送規則行列Ｌを掛け合せることにより生成される。図２２Ａは、各実施例における物理トポロジ行列Ｇを示す図である。図２２Ｂは、各実施例における転送規則行列Ｌを示す図である。図１９及び図２０に示されるように、スイッチｅ１とスイッチｅ４との間、及び、スイッチｅ２とスイッチｅ３との間が物理的に接続されていないため、物理トポロジ行列Ｇでは、行列要素Ｓ１，４及びＳ４，１、行列要素Ｓ２，３及びＳ３，２、並びに、ｓｄ＝ｓｓの行列要素Ｓｓｄ，ｓｓがそれぞれゼロ行列となっている。また、転送規則行列Ｌでは、図２１に示されるようにヘッダデータが書き換えられておらず、スイッチｅ１及びｅ３には１つのフローｆ１のみが流入しているため、スイッチｅ１及びｅ３に対応する要素行列Ｔ１及びＴ３内では、要素行列Ｄ１，１以外の要素行列Ｄｈｏ，ｈｉがゼロ行列となっている。同様に、ヘッダデータが書き換えられておらず、スイッチｅ２には１つのフローｆ２のみが流入しているため、スイッチｅ２に対応する要素行列Ｔ２内では、要素行列Ｄ２，２以外の要素行列Ｄｈｏ，ｈｉがゼロ行列となっている。
【０１１７】
図２３は、実施例１における要求トラフィック情報を示す図である。要求取得部１２は、図２３に示される要求トラフィックに関する情報を取得し、この情報に基づいて、次のような要求トラフィックベクトルｖ０を生成する。以下の要求トラフィックベクトルｖ０は、スイッチｅ１のポートｐ１にヘッダデータｈ１のフローｆ１が流入し、スイッチｅ２のポートｐ１にヘッダデータｈ２のフローｆ２が流入することを示す。以下の０ｎは、ｎ行ゼロベクトルを表す。
【数８】
2014216935.tif 000010
【０１１８】
第１算出部１３は、生成された転送行列Ｒ及び要求トラフィックベクトルｖ０を用いて、図２４に示されるように、トラフィックベクトルｖを算出する。図２４は、実施例１におけるトラフィックベクトルｖを示す図である。図２４に示されるトラフィックベクトルｖは、スイッチｅ１のポートｐ１にトラフィック量１０（Ｍｂｐｓ）のフローｆ１（ヘッダデータｈ１）が流入し、スイッチｅ２のポートｐ１にトラフィック量５０（Ｍｂｐｓ）のフローｆ２（ヘッダデータｈ２）が流入し、スイッチｅ３のポートｐ２にトラフィック量１０（Ｍｂｐｓ）のフローｆ１が流入し、スイッチｅ４のポートｐ２にトラフィック量１０（Ｍｂｐｓ）のフローｆ１が流入し、スイッチｅ４のポートｐ１にトラフィック量５０（Ｍｂｐｓ）のフローｆ２が流入することを示す。
【０１１９】
更に、第１算出部１３は、転送行列Ｒ及び要求トラフィックベクトルｖ０並びに転送規則行列Ｌを用いて、図２５に示されるように、流出トラフィックベクトルｖ'を生成することもできる。図２５は、実施例１における流出トラフィックベクトルｖ'を示す図である。図２５に示される流出トラフィックベクトルｖ'は、スイッチｅ１のポートｐ３からトラフィック量１０（Ｍｂｐｓ）のフローｆ１（ヘッダデータｈ１）が流出し、スイッチｅ２のポートｐ３からトラフィック量５０（Ｍｂｐｓ）のフローｆ２（ヘッダデータｈ２）が流出し、スイッチｅ３のポートｐ３からトラフィック量１０（Ｍｂｐｓ）のフローｆ１が流出し、スイッチｅ４のポートｐ３からトラフィック量１０（Ｍｂｐｓ）のフローｆ１及びトラフィック量５０（Ｍｂｐｓ）のフローｆ２が流出することを示す。
【０１２０】
第２算出部１４は、上述のように算出されたトラフィックベクトルｖに、各スイッチのポート毎にトラフィック量を合算するための行列ＣＰを掛け合せることにより、図２６に示されるように、物理トラフィックベクトルｖＰを生成する。図２６は、実施例１における物理トラフィックベクトルｖＰを示す図である。図２６に示される物理トラフィックベクトルｖＰは、スイッチｅ１のポートｐ１には、トラフィック量１０（Ｍｂｐｓ）が流入し、スイッチｅ２のポートｐ１には、トラフィック量５０（Ｍｂｐｓ）が流入し、スイッチｅ３のポートｐ２には、トラフィック量１０（Ｍｂｐｓ）が流入し、スイッチｅ４のポートｐ１には、トラフィック量５０（Ｍｂｐｓ）が流入し、スイッチｅ４のポートｐ２には、トラフィック量１０（Ｍｂｐｓ）が流入することを示す。
【０１２１】
更に、第２算出部１４は、上述の流出トラフィックベクトルｖ'に、当該行列ＣＰを掛け合せることにより、次のように、流出物理トラフィックベクトルｖＰ'を生成することもできる。以下の流出物理トラフィックベクトルｖＰ'は、スイッチｅ１のポートｐ３から、トラフィック量１０（Ｍｂｐｓ）が流出し、スイッチｅ２のポートｐ３から、トラフィック量５０（Ｍｂｐｓ）が流出し、スイッチｅ３のポートｐ３から、トラフィック量１０（Ｍｂｐｓ）が流出し、スイッチｅ４のポートｐ３から、トラフィック量６０（Ｍｂｐｓ）が流出することを示す。
【数９】
2014216935.tif 000011
【０１２２】
品質判定部１５は、図２０に示される物理トポロジ情報が示す帯域幅と、物理トラフィックベクトルｖＰ及び流出物理トラフィックベクトルｖＰ'とを比較することにより、当該仮想網における通信品質の劣化が生じ得る物理リンク（スイッチ及びポート）を特定する。実施例１では、例えば、帯域幅１００（Ｍｂｐｓ）を超えるフローは存在しないため、通信品質の劣化が生じ得る物理リンクは特定されない。
【０１２３】
一方、第３算出部１７は、フローｆ１を検査対象として、検査対象ヘッダデータｈ１に関し、次に示されるように、トラフィック経路ベクトルｖＲ（ｈ１）及び流出トラフィック経路ベクトルｖＲ'（ｈ１）を生成する。このとき、第３算出部１７は、ＣＦ（ｈ１）の要素行列Ｆｅ（ｈ１）を（Ｉ，０３）として生成する。行列Ｉは、３行３列の単位行列であり、０３は、３行３列のゼロ行列である。トラフィック経路ベクトルｖＲ（ｈ１）及び流出トラフィック経路ベクトルｖＲ'（ｈ１）によれば、トラフィック量１０（Ｍｂｐｓ）のフローｆ１が、スイッチｅ１のポートｐ１、スイッチｅ１のポートｐ３、スイッチｅ３のポートｐ２、スイッチｅ３のポートｐ３、スイッチｅ４のポートｐ２、スイッチｅ４のポートｐ３と順に転送されていることが示される。
【数１０】
2014216935.tif 000012
【０１２４】
第３算出部１７は、ＣＦ（ｈ２）の要素行列Ｆｅ（ｈ２）を（０３，Ｉ）として生成することで、フローｆ２についても同様に、トラフィック経路ベクトルｖＲ（ｈ２）及び流出トラフィック経路ベクトルｖＲ'（ｈ２）を生成することができる。
【０１２５】
また、第４算出部１８が上述の転送行列Ｒの固有値を算出することで、全ての固有値が０であるため、検証処理部１０は、当該仮想網にループ経路が無いと判定することができる。
【実施例２】
【０１２６】
実施例２では、要求トラフィックの情報として、トラフィックの確率分布が要求トラフィックベクトルｖ０の要素に設定される形態を例示する。但し、実施例２の他の条件については実施例１と同様とする。
【０１２７】
図２７は、実施例２における要求トラフィック情報を示す図である。図２７では、ヘッダデータ１（ｈ１）のフローｆ１のトラフィックが、平均トラフィック量１０（Ｍｂｐｓ）及び分散５の正規分布Ｎ（１０，５）で与えられ、ヘッダデータ２（ｈ２）のフローｆ２のトラフィックが、平均トラフィック量５０（Ｍｂｐｓ）及び分散１５の正規分布Ｎ（５０，１５）で与えられる。
【０１２８】
要求取得部１２は、図２７に示される要求トラフィックに関する情報を取得し、この情報に基づいて、以下に示される要求トラフィックベクトルｖ０を生成する。実施例２における要求トラフィックベクトルｖ０では、要素に、フローｆ１及びｆ２のトラフィックの確率分布が設定される。
【数１１】
2014216935.tif 000013
【０１２９】
実施例２においても、第１算出部１３は、転送行列Ｒ及び上記要求トラフィックベクトルｖ０を用いて、トラフィックベクトルｖ及び流出トラフィックベクトルｖ'を算出する。実施例２で算出されるトラフィックベクトルｖ及び流出トラフィックベクトルｖ'は、要素に、正規分布Ｎ（１０，５）及び正規分布Ｎ（５０，１５）を持つ。
【０１３０】
第２算出部１４についても、同様に、トラフィックベクトルｖ及び流出トラフィックベクトルｖ'に、行列ＣＰを掛け合せることにより、次のように、物理トラフィックベクトルｖＰを及び流出物理トラフィックベクトルｖＰ'を生成する。
【数１２】
2014216935.tif 000014
【０１３１】
なお、上述の説明で用いた複数のフローチャートでは、複数の工程（処理）が順番に記載されているが、各工程の実行順序は、その記載の順番に制限されない。本実施形態では、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態及び各変形例は、内容が相反しない範囲で組み合わせることができる。
【０１３２】
［付記］
上記の各実施形態及び各変形例の一部又は全部は、以下の付記のようにも特定され得る。但し、各実施形態及び各変形例が以下の記載に限定されるものではない。
【０１３３】
（付記１３）
コンピュータが、複数の物理ポートをそれぞれ有する複数のスイッチ装置を含む対象ネットワークを検査するネットワーク検証方法において、
前記対象ネットワークにおける物理ポートを介したスイッチ装置間の接続関係を示す物理トポロジ情報と、前記各スイッチ装置で転送される通信制御単位に関する入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせをそれぞれ示す複数の転送規則情報とから形成される、前記対象ネットワーク内の各スイッチ装置における通信制御単位の流れをそれぞれ表す転送行列を取得し、
前記転送行列を用いた演算を行うことにより、所定検証項目における前記対象ネットワークの状態を推定する、
事を含むネットワーク検証方法。
【０１３４】
（付記１４）
前記対象ネットワーク内に流入する要求トラフィックに関し、該要求トラフィックの入口となるスイッチ装置の物理ポート、該要求トラフィックに含まれる通信制御単位を特定するためのヘッダデータ、及び、該要求トラフィックのトラフィック量を表す要求トラフィックベクトルを取得する、
ことを更に含み、
前記対象ネットワークの状態の推定は、
前記要求トラフィックの入口となるスイッチ装置から他の各スイッチ装置までの各ホップ数に応じて前記転送行列が累乗された各行列の和と、前記要求トラフィックベクトルとの積を合算することにより、前記各スイッチ装置における各物理ポートに流入するトラフィック量を前記通信制御単位毎に表すトラフィックベクトルを生成する、
ことを含む、
付記１３に記載のネットワーク検証方法。
【０１３５】
（付記１５）
前記対象ネットワークの状態の推定は、
前記生成されたトラフィックベクトルにおいて、物理ポート毎にトラフィック量を足し合わせることにより、前記各スイッチ装置における各物理ポートに流入するトラフィック量を表す物理トラフィックベクトルを生成する、
ことを更に含む、
付記１４に記載のネットワーク検証方法。
【０１３６】
（付記１６）
前記対象ネットワークの状態の推定は、
前記生成されたトラフィックベクトルに、前記要求トラフィックにおける検査対象ヘッダデータ以外のヘッダデータに関するデータ要素をマスクするヘッダフィルタ行列を掛け合せることにより、前記各スイッチ装置における各物理ポートに流入する該検査対象ヘッダデータを持つ通信制御単位のトラフィック量のみを表すトラフィック経路ベクトルを生成する、
ことを更に含む、
付記１４又は１５に記載のネットワーク検証方法。
【０１３７】
（付記１７）
前記対象ネットワーク内に流入する要求トラフィックに関し、該要求トラフィックの入口となるスイッチ装置の物理ポート、該要求トラフィックに含まれる通信制御単位を特定するためのヘッダデータ、及び、該要求トラフィックのトラフィック量を表す要求トラフィックベクトルを取得する、
ことを更に含み、
前記対象ネットワークの状態の推定は、
前記要求トラフィックの入口となるスイッチ装置から他の各スイッチ装置までの各ホップ数に応じて前記転送行列が累乗された各行列の和と、前記要求トラフィックベクトルと、前記複数の転送規則情報を示す転送規則行列との積を合算することにより、前記各スイッチ装置における各物理ポートから流出するトラフィック量を前記通信制御単位毎に表す流出トラフィックベクトルを生成する、
ことを含む、
付記１３から１６のいずれか１つに記載のネットワーク検証方法。
【０１３８】
（付記１８）
前記対象ネットワークの状態の推定は、
前記生成された流出トラフィックベクトルにおいて、物理ポート毎にトラフィック量を足し合わせることにより、前記各スイッチ装置における各物理ポートから流出するトラフィック量を表す流出物理トラフィックベクトルを生成する、
ことを更に含む、
付記１７に記載のネットワーク検証方法。
【０１３９】
（付記１９）
前記対象ネットワークの状態の推定は、
前記生成された流出トラフィックベクトルに、前記要求トラフィックにおける検査対象ヘッダデータ以外のヘッダデータに関するデータ要素をマスクするヘッダフィルタ行列を掛け合せることにより、前記各スイッチ装置における各物理ポートから流出する該検査対象ヘッダデータを持つ通信制御単位のトラフィック量のみを表す流出トラフィック経路ベクトルを生成する、
ことを更に含む、
付記１７又は１８に記載のネットワーク検証方法。
【０１４０】
（付記２０）
前記物理トラフィックベクトル及び前記流出物理トラフィックベクトルの少なくとも一方、及び、前記スイッチ装置間の物理リンクの帯域性能情報に基づいて、前記対象ネットワーク内の、通信品質の劣化が生じ得る箇所を特定し、
前記特定された箇所を特定可能な状態で出力する、
ことを更に含む付記１５又は１８に記載のネットワーク検証方法。
【０１４１】
（付記２１）
前記トラフィック経路ベクトル及び前記流出トラフィック経路ベクトルの少なくとも一方に基づいて、前記検査対象ヘッダデータを持つ通信制御単位のトラフィックが通過する、前記対象ネットワーク内の経路を示す情報を出力する、
ことを更に含む付記１６又は１９に記載のネットワーク検証方法。
【０１４２】
（付記２２）
前記トラフィック量は、トラフィック量の確率分布で示される、
付記１４から２１のいずれか１つに記載のネットワーク検証方法。
【０１４３】
（付記２３）
前記対象ネットワークの状態の推定は、
前記転送行列の固有値を算出する、
ことを含み、
前記算出された固有値に基づいて、前記対象ネットワーク内にループ経路が存在するか否かを判定する、
付記１３から２２のいずれか１つに記載のネットワーク検証方法。
【０１４４】
（付記２４）
前記転送行列の取得は、
前記物理トポロジ情報及び前記複数の転送規則情報を取得し、
前記物理トポロジ情報及び前記複数の転送規則情報に基づいて、前記スイッチ装置間の接続関係を示す物理トポロジ行列、及び、前記複数のスイッチ装置における入力時ヘッダデータ、入力ポート、出力ポート及び出力時ヘッダデータの組み合わせを示す転送規則行列を生成し、
前記物理トポロジ行列と前記転送規則行列とを掛け合せることにより、前記転送行列を生成する、
付記１３から２３のいずれか１つに記載のネットワーク検証方法。
【０１４５】
（付記２５）
付記１３から２４のいずれか１つに記載のネットワーク検証方法をコンピュータに実行させるプログラム。
【符号の説明】
【０１４６】
１  ネットワーク検証装置
２  ＣＰＵ
３  メモリ
４  入出力Ｉ／Ｆ
６  表示装置
７  入力装置
１０  検証処理部
１１  ネットワーク情報取得部
１２  要求取得部
１３  第１算出部
１４  第２算出部
１５  品質判定部
１６  出力処理部
１７  第３算出部
１８  第４算出部
【図１】
2014216935.tif 000015
【図２】
2014216935.tif 000016
【図３】
2014216935.tif 000017
【図４】
2014216935.tif 000018
【図５】
2014216935.tif 000019
【図６】
2014216935.tif 000020
【図７】
2014216935.tif 000021
【図８】
2014216935.tif 000022
【図９】
2014216935.tif 000023
【図１０】
2014216935.tif 000024
【図１１】
2014216935.tif 000025
【図１２】
2014216935.tif 000026
【図１３】
2014216935.tif 000027
【図１４】
2014216935.tif 000028
【図１５】
2014216935.tif 000029
【図１６】
2014216935.tif 000030
【図１７】
2014216935.tif 000031
【図１８】
2014216935.tif 000032
【図１９】
2014216935.tif 000033
【図２０】
2014216935.tif 000034
【図２１】
2014216935.tif 000035
【図２２Ａ】
2014216935.tif 000036
【図２２Ｂ】
2014216935.tif 000037
【図２３】
2014216935.tif 000038
【図２４】
2014216935.tif 000039
【図２５】
2014216935.tif 000040
【図２６】
2014216935.tif 000041
【図２７】
2014216935.tif 000042