(57)【要約】【課題】  測定が簡易な同時接続フロー数と入力レートという値のみから、ネットワークの品質劣化検出と、品質劣化のボトルネックの特定を可能とし、ボトルネック特定を低コストで行う。【解決手段】  ネットワークのボトルネック箇所を特定する装置（１）として、グループ毎に平均同時接続フロー数と入力レートを測定する手段（１ｂ，１ｃ）と、グループＬの品質劣化発生度を計算して品質が劣化しているか否かを判定する手段（１ｆ）と、グループＬに属するフローが経由するリンクの使用率を測定する手段（１ｇ）と、グループＬの入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）を算出する手段（１ｅ）と、このＲ（Ｌ）を用いてリンクがボトルネックとなったときのリンク使用率に対する閾値ρ＊を算出し、この閾値ρ＊と手段（１ｇ）で測定したリンク使用率を比較して当該リンクがボトルネックとなっているか否かを判定する手段（１ｈ）とを設ける。【選択図】        図１
2006191219.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを通過するユーザフローの通信品質が劣化しているか否かを判定し、劣化している場合には、ボトルネック箇所を特定するネットワークのボトルネック特定方法であって、
上記ネットワークを通過するユーザフローを受信して予め分類されたグループ別に判別する第１の手順と、
上記グループ別に、予め定められた時間間隔ｔ０におけるユーザフローの同時接続数Ｎと当該ネットワークヘの入力レートＤおよび当該ネットワーク内の各リンク使用率ρをｎ回測定する第２の手順と、
各グループ毎の、上記ユーザフロー同時接続数Ｎと上記入力レートＤのそれぞれのｎ個の測定値を用いて、当該グループのユーザフローの通信品質劣化が発生しているか否かを判定する第３の手順と、
該第３の手順でユーザフローの品質が劣化していると判定したグループに対し、該グループの上記ユーザフローの同時接続数Ｎと上記入力レートＤとを用いて、フローあたりの最大転送速度ｒ’を算出する第４の手順と、
該第４の手順で算出した上記フローあたりの最大転送速度ｒ’と上記ネットワーク内のリンクの通信帯域Ｃとの比Ｒａｔｉｏ（＝Ｃ／ｒ’）を算出する第５の手順と、
該第５の手順で算出する上記比Ｒａｔｉｏと、上記第２の手順で測定するリンク使用率ρ、および、該リンク使用率ρが十分小さいときのＴＣＰフロー品質を基準として当該リンクがボトルネックとなった場合のＴＣＰフロー品質劣化度数Ｄｅｇｒａｄｅｄの、３者の関係を表す品質劣化度関数Ｄｅｇｒａｄｅｄ＝Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）を用いて、当該リンクがボトルネックとなって品質劣化が生じるリンク使用率ρ＊を算出する第６の手順と、
該第６の手順で算出した上記リンク使用率ρ＊と上記第２の手順で測定したリンク使用率ρとを比較することにより、当該リンクがボトルネックとなって品質劣化が生じたか否かを判定する第７の手順と、
上記第４から第７の手順の各処理を、ネットワーク内の各リンクに対して実施し、ボトルネックとなっているリンクを決定する第８の手順と
を有することを特徴とするネットワークのボトルネック特定方法。
【請求項２】
請求項１に記載のネットワークのボトルネック特定方法であって、
上記品質劣化度数関数Ｄｅｇｒａｄｅｄとして、下記数１の式で表されるアーランＣ式
【数１】
2006191219.tif 000005
を用いた下記数２の式を用いることを特徴とするネットワークのボトルネック特定方法。
【数２】
2006191219.tif 000006
【請求項３】
請求項１もしくは請求項２のいずれかに記載のネットワークのボトルネック特定方法であって、
上記第２の手順は、
グループＬ（Ｌ＝１〜Ｌｔｏｔａｌで、Ｌｔｏｔａｌは全グループ数）に属するパケットの総転送バイト数を上記時間間隔ｔ０で除した値を、当該グループＬの入力レートＤ（Ｌ，ｉ）［ｂｐｓ］としてｎ回測定（ｉ＝１〜ｎ）する手順を有し、
上記第３の手順は、
上記ｎ個の測定値の組み合わせ（Ｄ（Ｌ，ｉ），Ｎ（Ｌ，ｉ））のうち、グループ毎に予め定められた入力レート閾値Ｄｔｈ０（Ｌ）に対して入力レートＤ（Ｌ，ｊ）＜Ｄｔｈ０（Ｌ）となる測定値を用いて当該グループＬにおける入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）を算出する手順と、
各グループに対する上記ｎ個の測定値の組み合わせ（Ｄ（Ｌ，ｉ），Ｎ（Ｌ，ｉ））と上記平均同時接続フロー数Ｒ（Ｌ）、および、グループ毎に予め定められた閾値ε（Ｌ）と入力レート閾値Ｄｔｈ１（Ｌ）を用いて、入力レートＤ（Ｌ，ｋ）＞Ｄｔｈ１（Ｌ）かつ平均同時接続フロー数Ｎ（Ｌ，ｋ）＞Ｄ（Ｌ，ｋ）×［Ｒ（Ｌ）×｛１＋ε（Ｌ）｝］となる組（Ｄ（Ｌ，ｋ），Ｎ（Ｌ，ｋ））を品質劣化状態にある組として抽出する手順と、
抽出した組の数ｍ（Ｌ）（≦ｎ）を計測して、品質劣化発生度ｄ（Ｌ）をｍ（Ｌ）／ｎの式を用いて算出する手順と、
算出した品質劣化発生度ｄ（Ｌ）の値が予め定められた閾値Ｔｈ（Ｌ）を超えると当該グループＬは品質劣化していると判定する手順とを有し、
上記第４の手順は、
上記平均同時接続フロー数Ｒ（Ｌ）を用いて、上記フローあたりの最大転送速度ｒ’（Ｌ）をｒ’（Ｌ）＝１／Ｒ（Ｌ）の式により算出する手順を有し、
上記第５の手順は、
グループＬに属するフローが経由するリンクｌ（ｌ＝１〜Ｎｕｍ（Ｌ）で、Ｎｕｍ（Ｌ）はリンク数）の通信帯域Ｃ（ｌ）との比Ｒａｔｉｏ（Ｌ）を、Ｒａｔｉｏ（ｌ，Ｌ）＝Ｃ（ｌ）÷ｒ’（Ｌ）＝Ｃ（ｌ）×Ｒ（Ｌ）の式を用いて算出する手順を有し、
上記第６の手順は、
算出した上記比Ｒａｔｉｏ（ｌ，Ｌ）を上記品質劣化度数関数Ｄｅｇｒａｄｅｄに代入して、Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ（ｌ，Ｌ），ρ＊（ｌ））＝１＋ε（Ｌ）を満たすリンク使用率ρ＊（ｌ）を閾値として算出する手順を有し、
上記第７の手順は、
上記第３の手順で品質劣化状態にあると抽出した時点ｋにおける、上記各リンクｌのリンク使用率ρ（ｌ，ｋ）が上記閾値ρ＊（ｌ）を超えているか否かを判定する手順と、
ρ（ｌ，ｋ）＞ρ＊（ｌ）であれば当該リンクｌがボトルネックであると判定する手順とを有する
ことを特徴とするネットワークのボトルネック特定方法。
【請求項４】
請求項３に記載のネットワークのボトルネック特定方法であって、
上記第３の手順は、
上記測定値の組（Ｄ（Ｌ，ｊ），Ｎ（Ｌ，ｊ））を用いた式「Σ｛Ｎ（Ｌ，ｊ）−Ｄ（Ｌ，ｊ）×Ｒ｝２」を最小とするＲを上記グループＬにおける入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）として算出する手順を有することを特徴とするネットワークのボトルネック特定方法。
【請求項５】
請求項３もしくは請求項４のいずれかに記載のネットワークのボトルネック特定方法であって、
上記第３の手順は、
品質劣化状態の組を抽出した時点ｋでのリンクｌの使用率ρ（ｌ，ｋ）を、上記リンク使用率の閾値ρ＊（ｌ）と比較する手順と、
該手順を、上記品質劣化状態の組を抽出した全ての時点ｋ＝ｋ１，ｋ２，…ｋｘに対して繰り返し実施する手順と、
ρ（ｌ，ｋ）＞ρ＊（ｌ）となった回数を上記品質劣化状態の組を抽出した全ての時点ｋ＝ｋ１，ｋ２，…ｋｘの回数（ｘ）で割った値が予め定められた閾値を超えると、当該リンクｌがボトルネックであると判定する手順とを有する
ことを特徴とするネットワークのボトルネック特定方法。
【請求項６】
請求項１から請求項５のいずれかに記載のネットワークのボトルネック特定方法であって、
上記第１の手順では、同一対地間において通信しているフローを同じグループに属するフローとして扱うことを特徴とするネットワークのボトルネック特定方法。
【請求項７】
請求項１から請求項６のいずれかに記載のネットワークのボトルネック特定方法であって、
上記第３の手順で上記ユーザフローの通信品質劣化が発生していると判定したグループに属するフローが経由する全てのリンクに対して、上記第７の手順においてボトルネックではないと判定すれば、上記第３の手順で判定した通信品質劣化の要因となるボトルネックは当該管理下にあるネットワーク外であると判定する手順を有することを特徴とするネットワークのボトルネック特定方法。
【請求項８】
少なくともＣＰＵと記憶装置を有するコンピュータに、請求項１から請求項７のいずれかに記載のネットワークのボトルネック特定方法における各手順を実行させるためのプログラム。
【請求項９】
請求項１から請求項８のいずれかに記載のネットワークのボトルネック特定方法における各手順をプログラムを用いて実行するコンピュータ処理機能を具備し、ネットワークを通過するユーザフローの通信品質が劣化しているか否の判定と、劣化している場合のボトルネック箇所の特定を行うことを特徴とするネットワークのボトルネック特定装置。
【請求項１０】
請求項１から請求項８のいずれかに記載のネットワークのボトルネック特定方法における各手順を実行する論理回路を具備し、ネットワークを通過するユーザフローの通信品質が劣化しているか否の判定と、劣化している場合のボトルネック箇所の特定を行うことを特徴とするネットワークのボトルネック特定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信網（ネットワーク）の通信品質状態を管理する技術に関し、特に、ＩＰ（Internet Protocol）ネットワークにおいて通信品質劣化を起こしている箇所（ボトルネック箇所）を低コストに特定でき、ネットワーク提供者がネットワーク内の通信全体を効率的に管理するのに好適な技術に関するものである。
【背景技術】
【０００２】
インターネットやイントラネット等のＩＰネットワークが広く利用されてくるに伴って、ＩＰネットワーク上での通信品質保証に対する要求が高まっている。現状のＩＰネットワーク管理技術においては、あるリンクが輻輳しているか否かは、予め定めたリンク使用率に対するしきい値と、測定されたリンク使用率とを比較して判定している。このような従来技術に関しては、例えば、非特許文献１，２，３に記載されている。
【０００３】
しかし、リンク使用率とユーザの体感するファイル転送時間やスループット等の品質との関連が不明であるため、輻輳状態と判定するための、リンク使用率に対するしきい値を具体的に特定することは困難である。
【０００４】
また、例えば、非特許文献４，５に記載されている技術を用いて、リンクを通過するフローのファイル転送時間やスループットを測定し、その平均等の統計値が、ある閾値以下になった場合を輻輳状態と判定することが考えられる。
【０００５】
非特許文献４に記載の技術では、ファイル転送時間やスループットといったユーザ品質測定は、当該リンク上を通過する全てのパケットをキャプチャしフローを組み上げて算出することで行い、非特許文献５に記載の技術では、当該リンクの前段か後段もしくは両方に試験パケット送受信機を設置して、試験パケットを送信することによってユーザ品質測定を能動的に行う。
【０００６】
しかし、非特許文献４に記載の技術ではデータ蓄積のためのリソースが必要となり、また、非特許文献５に記載の技術では専用の測定装置が必要となり、それぞれコストが増大してしまう。
【０００７】
さらに、非特許文献４，５のいずれに関しても、当該リンクがボトルネックでない場合であっても、当該リンクを通過するフローの通過する前後のネットワークの状態によって平均スループットはネットワークごとに異なり、ファイル転送時間やスループットに対する具体的な閾値の設定が困難である。
【０００８】
このような問題を解決するために、本発明の発明者らは、先行出願（特願２００４−０１６７５４号）において、測定が簡易な同時接続フロー数とリンクヘの入力レート［ｂｐｓ］という値のみから、当該リンクを通過するフローの品質が劣化しているか否かを判定する技術を提案している。
【０００９】
この技術では、あるリンクを通過するフローの品質（平均ファイル転送時間やスループットの平均）が劣化せず維持できている場合には、平均同時接続フロー数と入力レートは比例関係となり、フローの品質劣化が生じると平均同時接続フロー数が入力レートに対して、非線形的に増加するという現象を利用している。
【００１０】
しかし、この技術では、フローの品質が劣化しているか否かを判定することは可能であるが、そのフローの通信経路上のどこが品質劣化要因（ボトルネック）であるかを特定することまでは考慮されていない。
【００１１】
このようなボトルネックを特定する技術としては、例えば、非特許文献６および非特許文献７に記載のものがある。
【００１２】
非特許文献６においては、試験パケットによるラウンドトリップタイムの測定に加え、実際にＴＣＰ（Transmission Control Protocol）で通信を行ってスループットを測定し、そのときの送信パケットや確認応答（ＡＣＫ）のやり取りをキャプチャして詳細に解析することにより、あるエンドホスト間に着目して、ボトルネックを特定する技術が記載されている。しかし、この技術は、ある特定のホスト間でトラブルシューティング的に品質劣化要因を特定するのに適した技術であり、ネットワーク提供者がネットワーク内の通信を全体的に管理するのに直接適用する場合、測定コストの増大およびネットワークヘの測定負荷の増大が生じてしまう。
【００１３】
また、非特許文献７においては、ある２地点間に複数の経路を設定し、試験パケットにより、その２地点間のどこで輻輳が発生しているかを特定する技術が提案されている。しかし、この技術は、品質としてＩＰレイヤのパケット損失率のみを対象としており、ユーザの体感するＴＣＰ品質を直接扱っていない。さらに、試験パケットを送出する必要があり測定コストが増大するという問題点がある。
【００１４】
【非特許文献１】Nirwan Ansari, Gang Cheng, Stephen Israel, Yuanqiu Luo, Jonathan Ma and Li Xhu, ”Qos Provision with Path Protection for Next Generation SONET, ” ICC2002, 2002, pp. 2152-2156
【非特許文献２】Anja Feldmann, Albert Greenberg, Carsten Lund, Nick Reingold and Jenifer Rexford, ”Netscope: Traffic Engineering for IP Networks,” IEEE Network, March/Apr. 2000, pp. 11-19
【非特許文献３】Anurag Kumar, Malati Hedge, S. V. R. Anand, B. N. Bindu, Dinesh Thirumurthy and Arzad A. Kherani, ”Nonintrusive TCP connection Admission Control for Bandwidth Management of an Internet Access Link,” IEEE Communications Magazine, May 2000, pp. 160-167
【非特許文献４】J. Quittek, Tanja Zseby, Geoge Carle and Sebastian Zander, ”Traffic Flow Measurements within IP Networks: Requirements, Technologies, and Standardization,” IEEE SAINT 2002. pp. 97-98.
【非特許文献５】”CAIDA(Cooperative Association for Internet Data Analysis),” [online], [平成１６年１２月１５日検索],  インターネット＜URL: http://www.caida.org/tools/taxonomy/performance.xml
【非特許文献６】的場  一峰，阿多  信吾，村田  正幸  「インターネットにおける計測に基づいたボトルネック特定手法」  （電子情報通信学会  テレコミュニケーションマネジメント研究会  ２０００年１１月）  第６５−７０頁
【非特許文献７】阿野  茂浩，立花  篤男，長谷川  亮，鶴  正人，尾家  祐二  「複数経路の性能測定に基づく輻輳箇所特定法に関する提案」（電子情報通信学会総合大会、Ｂ−１１−３２、２００４年）  第５２５頁
【発明の開示】
【発明が解決しようとする課題】
【００１５】
解決しようとする問題点は、従来の技術では、ＩＰネットワークを通過するユーザフローの通信品質が劣化している箇所（ボトルネック箇所）を特定するには、試験パケットを送出しなければならず、測定コストがかかってしまうと共にネットワークへの負荷が増大してしまう点である。
【００１６】
本発明の目的は、これら従来技術の課題を解決し、ＩＰネットワークを通過するユーザフローの通信品質が劣化している箇所（ボトルネック箇所）の特定を、低コストで行うことを可能とすることである。
【課題を解決するための手段】
【００１７】
上記目的を達成するため、本発明では、ネットワークを通過するフローを予め定めたポリシーで分類されたグループ（例えば同一対地間でフローを分類）別に判別し、グループ毎の同時接続数と入力レートを測定し、その測定値から、ネットワークにおけるグループ毎の通信品質劣化の有無を検出し、あるグループの通信品質劣化を検出すれば、以下のようにして、その箇所（ボトルネック）が、当該ネットワーク内か否か、ネットワーク内であればどのリンクであるかを特定する。まず、品質が劣化していると判定したグループに対し、当該グループのユーザフローの同時接続数と入力レートの測定結果を用いて、フローあたりの最大転送速度ｒ’を算出し、算出したフローあたりの最大転送速度ｒ’とネットワーク内のリンクの通信帯域Ｃとの比Ｒ（Ｒ＝Ｃ／ｒ’）を算出する。次に、この比Ｒと、リンク使用率ρ、および、リンク使用率ρが十分小さいときのＴＣＰフロー品質を基準として当該リンクがボトルネックとなった場合のＴＣＰフロー品質劣化度数Ｄｅｇｒａｄｅｄ、の３者の関係を表す品質劣化度関数Ｄｅｇｒａｄｅｄ＝Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）を用いて、当該リンクがボトルネックとなって品質劣化が生じるリンク使用率ρ＊を算出し、このリンク使用率ρ＊と、測定されたｎ回の当該リンク使用率とを比較することにより、当該リンクがボトルネックとなって品質劣化が生じたか否かを判定する。そして、これらの処理を、ネットワーク内の各リンクに対して実施し、ボトルネックとなっているリンクを決定する。
【発明の効果】
【００１８】
本発明によれば、測定が簡易な同時接続フロー数と入力レートという値のみから、それらの関係を算出することにより、当該ネットワークにおける品質劣化を検出すると共に、品質劣化のボトルネックを特定することができるので、ボトルネック箇所の特定を低コストで行うことが可能である。
【発明を実施するための最良の形態】
【００１９】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図１は、本発明に係わるボトルネック特定装置の構成例を示すブロック図であり、図２は、図１におけるボトルネック特定装置を設けたＩＰネットワークの構成例を示すブロック図、図３は、本発明に係わるフロー数と入力レートとの関連を示す説明図、図４は、本発明に係わるネットワークのボトルネック特定方法の処理手順例を示すフローチャートである。
【００２０】
図１に示す本例のボトルネック特定装置１は、ＣＰＵ（Central Processing Unit）や主記憶装置（主メモリ）、表示装置、入力装置、外部記憶装置、周辺装置等を具備したコンピュータ構成からなり、周辺装置としての光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、各処理部の機能を実行する。
【００２１】
すなわち、ボトルネック特定装置１は、パケットヘッダ解析部１ａ、入力レート算出部１ｂ、同時接続フロー数算出部１ｃ、同時接続フロー数及び入力レート管理部１ｄ、入力レートあたりの同時接続フロー数算出部１ｅ、品質劣化検出部１ｆ、リンク使用率収集部１ｇ、ボトルネック特定部１ｈを有し、図２に示す構成のネットワークを通過するユーザフローの通信品質が劣化しているか否かを判定すると共に、劣化している場合には、ボトルネック箇所を特定する。
【００２２】
図２の例においては、本例のボトルネック特定装置１は、ネットワークを構成する各ノードの内、エッジノード（１）２ａ〜（４）２ｄを収容するコアノード（１）３ａ，（２）３ｂ間におけるトラヒックを測定して、エッジノード（１）２ａ〜（４）２ｄ間のユーザフローの通信品質が劣化しているか否かの判定とボトルネック箇所の特定を行う。
【００２３】
特に、本例のボトルネック特定装置１では、ネットワークを通過するフローを予め定めたポリシーで分類されたグループ別に判別する。例えば、エッジノード（１）２ａからエッジノード（３）２ｃに向かうトラヒック、エッジノード（１）２ａからエッジノード（４）２ｄに向かうトラヒック、エッジノード（２）２ｂからエッジノード（３）２ｃに向かうトラヒック、エッジノード（２）２ｂからエッジノード（４）２ｄに向かうトラヒック等、同一対地間でフローを分類して判別する。そして、グループ毎の同時接続数と入力レートを測定し、その測定値から、ネットワークにおけるグループ毎の通信品質劣化の有無を検出し、あるグループの通信品質劣化を検出すれば、その箇所（ボトルネック）が、当該ネットワーク内か否か、ネットワーク内であればどのリンクであるかを特定する。
【００２４】
以下、このようなグループに基づくボトルネック特定装置１によるネットワークを通過するユーザフローの通信品質の劣化の判定処理およびボトルネック箇所の特定処理に関連する技術について説明する。
【００２５】
グループＬの平均入力レートをＤ、平均同時接続フロー数をＮ、平均ファイルサイズをＳ、平均ファイル転送時間をＴとすると、待ち行列理論におけるリトルの公式から、「Ｎ＝（Ｄ／Ｓ）×Ｔ」の式が成り立つ。ここで、平均ファイルサイズＳは入力レートＤによらず一定とする。この式から、図３に示すように、以下のことが推察できる。
【００２６】
もし、グループＬの通信経路上に輻輳がどこにも発生しておらず平均ファイル転送時間Ｔが一定であれば（その値をＴｉｄｅａｌとおく）、平均同時接続フロー数Ｎは、入力レートＤに対し線形増加する。しかし、ネットワークの負荷が増大してどこかで輻輳が生じて品質が劣化し始めると、つまり、平均ファイル転送時間Ｔが大きくなり始めると、平均同時接続フロー数Ｎは、入力レートＤに対し非線形増加を開始する。
【００２７】
本例では、この現象を用いて、グループ毎に品質劣化が生じていないかどうかを判定する。すなわち、線形増加状態における傾きＲを求め、測定されたグループＬの平均入力レートと平均同時接続フロー数の組（Ｄ’，Ｎ’）が非線形増加領域、つまり「Ｎ’＞Ｒ×Ｄ’×（１＋ε）」であれば品質が劣化していると判定する。尚、εは品質劣化許容度を表すパラメータである。
【００２８】
以下、このようにして品質劣化を検出できる理由を説明する。上述の式「Ｎ＝（Ｄ／Ｓ）×Ｔ」より、線形増加状態における傾きＲは、「Ｒ＝Ｎ／Ｄ＝Ｔｉｄｅａｌ／Ｓ」となる。一方、品質劣化状態を「Ｔ’（平均ファイル転送時間）＞（１＋ε）Ｔｉｄｅａｌ」と定義すると、「Ｔ’＝（Ｎ’／Ｄ’）×Ｓ＞（１＋ε）Ｔｉｄｅａｌ＝（１＋ε）×Ｒ×Ｓ」となり、「Ｎ’＞Ｒ×Ｄ’×（１+ε）」が成り立つ。
【００２９】
尚、このような品質劣化検出技術は、本発明の発明者らにより先行出願した特願２００４−０１６７５４号において提案した技術と同様である。
【００３０】
このようにして、あるグループにおいて品質劣化が検出されれば、当該グループの経路上の各リンク使用率が閾値を超えているかどうか調べる。このリンク使用率の閾値とは、そのリンクがボトルネックとなって当該グループの通信品質劣化を生じるようなリンク使用率を意味する。本例では、このリンク使用率の閾値を以下のようにして決定する。
【００３１】
ここでは、本発明の発明者らが先行出願した特願２００４−０１６７５６号において提案した技術を利用する。すなわち、あるリンクにおいて、そのリンクが輻輳していないときのフローのＴＣＰスループットの平均をフローあたりの最大転送速度ｒ’と定義し、この最大転送速度ｒ’と当該リンク帯域Ｃとの比「Ｒａｔｉｏ（＝Ｃ／ｒ’）」と共に、リンク使用率ρを与えると、ＴＣＰ品質劣化度（Ｄｅｇｒａｄｅｄ）を計算する関数「Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）」を用いる。
【００３２】
尚、ＴＣＰ品質劣化度（Ｄｅｇｒａｄｅｄ）とは、リンク使用率がρとなったときの平均ファイル転送時間Ｔ（ρ）が、当該リンクが輻輳していないときの一定している平均フィル転送時間Ｔｉｄｅａｌに対して、どれ位大きくなったかを意味し、「Ｄｅｇｒａｄｅｄ＝Ｔ（ρ）／Ｔｉｄｅａｌ」で定義される。
【００３３】
本例では、フローあたりの最大転送速度ｒ’を、各グループ（Ｌ）における品質劣化検出のために測定しているフロー数Ｎ（Ｌ）と人カレートＤ（Ｌ）から推定して用いる。
【００３４】
すなわち、上述の式（「Ｎ＝（Ｄ／Ｓ）×Ｔ」）より、「Ｄ／Ｎ＝Ｓ／Ｔ」となる。尚、ここでは、説明の簡単のため、グループを表す添え字Ｌを省略している。一方、フローあたりの最大転送速度ｒ’は、その定義から、「ｒ’＝Ｓ／Ｔｉｄｅａｌ」となる。
【００３５】
従って、平均ファイル転送時間Ｔが維持されている状態、つまり、平均同時接続フロー数Ｎが平均入力レートＤに対して線形増加している状態では、「Ｔ＝Ｔｉｄｅａｌ」となり、「ｒ’＝Ｓ／Ｔ＝Ｄ／Ｎ」となる。よって、線形増加状態における、平均同時接続フロー数Ｎの、平均入力レートＤに対する傾きをＲ（i.e.,Ｎ＝Ｒ×Ｄ）とすると、フローあたりの最大転送速度ｒ’は、「ｒ’＝１／Ｒ」となる。
【００３６】
従って、「Ｄｅｇｒａｄｅｄ（Ｃ×Ｒ，ρ）＝１＋ε」となるリンク使用率ρを、リンク使用率の閾値ρ＊として求め、品質劣化が観測された時点ｋでのリンク使用率ρ（ｋ）が、当該閾値ρ＊を超えているか否かで、そのリンクがボトルネックとなっているか否かを判定することが可能となる。
【００３７】
この現象を用いた、図１に示すボトルネック特定装置１における本発明に係わる処理を、図４に従って説明する。
【００３８】
まず、当該ネットワークを通過するユーザフローを、予め定めたポリシーに従って分類されたグループ別に判別する（ステップ４０１〜４０３）。上述したように、ここでは、同一対地間において通信しているフローを同じグループに属するフローとして扱う。
【００３９】
次に、予め定めた時間間隔ｔ０におけるグループ別ユーザフローの同時接続数と、当該ネットワークヘの入力レート、および当該ネットワーク内の各リンク使用率をｎ回測定し（ステップ４０４〜４０８）、それらｎ個の測定値の組み合わせのうち、各グループの入力レートと各グループのフロー数を用いて、各グループのユーザの通信品質劣化が発生しているか否か判定する（ステップ４０９）。
【００４０】
もし、あるグループの品質が劣化していると判定した場合には（ステップ４１０）、当該グループの入力レートとフロー数を用いてフローあたりの最大転送速度ｒ’（＝Ｄ／Ｎ）を算出し（ステップ４１１）、当該ネットワーク内のリンクの通信帯域をＣとし、それらの比ＲをＲａｔｉｏ＝Ｃ／ｒ’として求め（ステップ４１２）、その比Ｒ（Ｒａｔｉｏ＝Ｃ／ｒ’）と、リンク使用率ρ、および、リンク使用率が十分小さいときの当該ＴＣＰフロー品質を基準として当該リンクがボトルネックとなった場合のＴＣＰフロー品質劣化度数Ｄｅｇｒａｄｅｄ、の３者の関係を表す品質劣化度関数「Ｄｅｇｒａｄｅｄ＝Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）」を用いて、当該リンクがボトルネックとなって品質劣化が生じるリンク使用率ρ＊（閾値）を算出し（ステップ４１３）、この算出したリンク使用率ρ＊（閾値）と、測定されたｎ回の当該リンク使用率とを比較することにより（ステップ４１４，４１５）、当該リンクがボトルネックとなって品質劣化が生じたか否かを判定する（ステップ４１６）。
【００４１】
そして、以上の処理を当該ネットワーク内の各リンクに対して実施することで、どのリンクがボトルネックとなっているかを決定し、その結果を、表示装置やプリンタ装置等の出力装置を介して出力する（ステップ４１７，４１８）。
【００４２】
以下、このようなボトルネック特定装置１の処理動作を、より詳細に説明する。
【００４３】
まず、予め定めた時間間隔ｔ０毎に、グループＬ（Ｌ＝１〜Ｌｔｏｔａｌで、Ｌｔｏｔａｌは全グループ数）に属するユーザフローの平均同時接続数Ｎ（Ｌ，ｉ）と、グループＬに属するパケットの総転送バイト数をｔ０で除した値をグループＬの入力レートＤ（Ｌ，ｉ）［ｂｐｓ］としてｎ回測定（ｉ＝１〜ｎ）し、それらｎ個の測定値の組み合わせ（Ｄ（Ｌ，ｉ），Ｎ（Ｌ，ｉ））のうち、グループ毎に予め定めた閾値Ｄｔｈ０（Ｌ）に対してＤ（Ｌ，ｊ）＜Ｄｔｈ０（Ｌ）となる測定値（Ｄ（Ｌ，ｊ），Ｎ（Ｌ，ｊ））を用いてグループＬにおける入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）を算出し、各グループに対するｎ個の組み合わせ（Ｄ（Ｌ，ｉ），Ｎ（Ｌ，ｉ））、ならびにＲ（Ｌ）、およびグループ毎に予め定めた閾値ε（Ｌ）およびＤｔｈ１（Ｌ）を用いて、入力レートＤ（Ｌ，ｋ）＞Ｄｔｈ１（Ｌ）かつ平均同時接続フロー数Ｎ（Ｌ，ｋ）＞Ｄ（Ｌ，ｋ）×［Ｒ（Ｌ）×｛１+ε（Ｌ）｝］となる組（Ｄ（Ｌ，ｋ），Ｎ（Ｌ，ｋ））を品質劣化状態にある組として抽出し、その組の数ｍ（Ｌ）（≦ｎ）を計測し、品質劣化発生度ｄ（Ｌ）をｍ（Ｌ）／ｎにより算出し、その値が予め定めた閾値Ｔｈ（Ｌ）を超えると、当該グループＬは品質劣化していると判定する。
【００４４】
次に、このようにして品質劣化状態にあると判定された時点ｋにおける、グループＬに属するフローが経由する各リンクｌ（ｌ＝１〜Ｎｕｍ（Ｌ）で、Ｎｕｍ（Ｌ）はリンク数）のリンク使用率ρ（ｌ，ｋ）が閾値ρ＊（ｌ）を超えているか否かを判別する。
【００４５】
ここで、リンク使用率の閾値ρ＊（ｌ）を計算するために、フローあたりの最大転送速度ｒ’（Ｌ）をｒ’（Ｌ）＝１／Ｒ（Ｌ）より算出し、リンクｌの帯域Ｃ（１）との比Ｒａｔｉｏ（Ｌ）を、Ｒａｔｉｏ（ｌ，Ｌ）＝Ｃ（ｌ）×Ｒ（Ｌ）により算出する。
【００４６】
これらを、上述した、品質劣化度数を計算する関数Ｄｅｇｒａｄｅｄに代人して、Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ（ｌ，Ｌ）ρ＊（ｌ））＝１+ε（Ｌ）を満たすリンク使用率の閾値ρ＊（ｌ）を計算し、「リンク使用率ρ（ｌ，ｋ）＞ρ＊（ｌ）」であれば、リンクｌがボトルネックであると判定する。
【００４７】
ここで、品質劣化発生度について説明する。例えば１０回測定し、そのうち２回（１回目と１０回目）が非線形領域に含まれた場合、品質劣化発生度を「２／１０＝０．２」と算出する。これは、品質劣化発生度を、観測期間中において品質劣化状態にある時間の割合と定義していることに相当する。
【００４８】
また、品質劣化時点ｋでのリンクｌの使用率ρ（ｌ，ｋ）を閾値ρ＊（ｌ）と比較し、それを、品質劣化が観測された全ての時点ｋ＝ｋ１，ｋ２，…ｋｘに対して繰り返し実施し、「ρ（ｌ，ｋ）＞ρ＊（ｌ）」を満足した回数を品質劣化観測回数で割った値が予め定めた閾値を超えると、リンクｌがボトルネックと判定することでも良い。
【００４９】
また、品質劣化度数を計算する関数「Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）」としては、アーランＣ式として一般に知られている下記の「数１」の式を用いた、
【００５０】
【数１】
2006191219.tif 000003
【００５１】
下記「数２」の式を用いる。
【００５２】
【数２】
2006191219.tif 000004
【００５３】
また、グループＬに属するフローの経由する全てのリンクｌ（ｌ＝１〜Ｎｕｍ（Ｌ）で、Ｎｕｍ（Ｌ）はリンク数）において、どのリンクもボトルネックではないと判定された場合、品質劣化要因となるボトルネックは当該管理下にあるネットワーク外であると判定する。
【００５４】
また、グループＬにおける入力レート当たりの平均同時接続フロー数Ｒ（Ｌ）の算出のために抽出された入力レートと平均同時接続フロー数の組（Ｄ（Ｌ，ｊ），Ｎ（Ｌ，ｊ））を用いて、「Σ｛Ｎ（Ｌ，ｊ）−Ｄ（Ｌ，ｊ）×Ｒ｝２」を最小とするＲを平均同時接続フロー数Ｒ（Ｌ）として算出する。
【００５５】
以上の処理動作を行うために、図１に示すボトルネック特定装置１は、グループ毎に、入力レートＤ（Ｌ，ｉ）を求めるための入力レート算出部１ｂと、ユーザフローの平均同時接続フロー数Ｎ（Ｌ，ｉ）を求めるための同時接続フロー数算出部１ｃと、グループＬの品質劣化発生度を計算して品質が劣化しているか否かを判定する品質劣化検出部１ｆと、グループＬに属するフローが経由するリンクの使用率を測定するリンク使用率収集部１ｇと、グループＬの入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）を算出する入力レートあたりの平均同時接続フロー数算出部１ｅと、グループＬの入力レートあたりの平均同時接続フロー数Ｒ（Ｌ）を用いてリンクｌがボトルネックとなったときのリンク使用率に対する閾値ρ＊（ｌ）を算出し、この閾値ρ＊（１）と測定されたリンク使用率とを比較して当該リンクがボトルネックとなっているか否かを判定するボトルネック特定部１ｈとを具備している。
【００５６】
このような構成のボトルネック特定装置１は、図２に示す構成のネットワークの内部に位置するコアノード（１）３ａ，（２）３ｂ間のリンクに挿入される形態で利用される。
【００５７】
そして、ボトルネック特定装置１は、図１に示すように、前段ノードから到着したパケットを受信すると、パケットヘッダ解析部１ａによって、パケットサイズ、ＴＣＰフラグ情報、および送信元・アドレスと着信先・アドレスを読み取った後、後段ノードヘ送信する。
【００５８】
このパケットヘッダ解析部１ａでは、アドレスに関する２つの組とグループを対応付けたテーブルを予め用意しておき、到着パケットのグループＬを判別する。グループの例として本例では、上述したように、図２におけるエッジノード（１）２ａからエッジノード（３）２ｃへ向かうトラヒック、エッジノード（１）２ａからエッジノード（４）２ｄへ向かうトラヒック、エッジノード（２）２ｂからエッジノード（３）２ｃへ向かうトラヒック、エッジノード（２）２ｂからエッジノード（４）２ｄへ向かうトラヒック、をそれぞれのグループとして定義する。
【００５９】
そして、パケットヘッダ解析部１ａは、このようにして判別したグループの値Ｌとともに、読み取られたパケットサイズを入力レート算出部１ｂへ通知する。
【００６０】
通知を受けた入力レート算出部１ｂは、一定時間ｔ０の間に通過したグループＬに属するパケットのサイズの和をｔ０で割ることによってｔ０毎のグループＬ入力レートＤ（Ｌ，ｉ）を算出し、算出結果をｔ０時間毎に、同時接続フロー数及び入力レート管理部１ｄに通知する。
【００６１】
また、パケットヘッダ解析部１ａは、ＴＣＰフラグ情報を、そのときのグループの値Ｌとともに、同時接続フロー数算出部１ｃに通知し、通知を受けた同時接続フロー数算出部１ｃは、ＴＣＰフローの開始を示すＳＹＮフラグビットが立っているパケットを検出すると、グループＬにおいて新しいフローが発生したと判断し、グループＬ同時接続フロー数カウンタを「１」増加する。また、ＴＣＰフロー終了を表すＦＩＮフラグビットが立っているパケットを検出すると、グループＬ同時接続フロー数カウンタを「１」減ずる。
【００６２】
そして、同時接続フロー数算出部１ｃは、ｔ０時間毎に、この同時接続フロー数カウンタ値の平均値Ｎ（Ｌ，ｉ）を算出して、同時接続フロー数及び入力レート管理部１ｄに通知する。
【００６３】
同時接続フロー数及び入力レート管理部１ｄは、入力レート算出部１ｂおよび同時接続フロー数算出部１ｃから通知される情報（同時接続フロー数Ｎ（Ｌ，ｉ）および入力レートＤ（Ｌ，ｉ）（ｉ＝１，…，ｎ））を記憶する。
【００６４】
入力レート当りの同時接続フロー数算出部１ｅは、一定時間Ｔ＝ｎ×ｔ０ごとに、同時接続フロー数及び入力レート管理部１ｄから、同時接続フロー数Ｎ（Ｌ，ｉ）および入力レートＤ（Ｌ，ｉ）（ｉ＝１，…，ｎ）を読み出す。
【００６５】
そして、入力レート当りの同時接続フロー数算出部１ｅでは、入力レートＤ（Ｌ，ｊ）が予め定めておいた閾値Ｄｔｈ０（Ｌ）未満かどうかをチェックし、Ｄｔｈ０（Ｌ）未満である（Ｄ（Ｌ，ｊ），Ｎ（Ｌ，ｊ））を用いて、最小２乗法により、入力レート当りの平均同時接続フロー数Ｒ（Ｌ）をグループ毎に算出する。すなわち、Ｎ（Ｌ）＝Ｒ（Ｌ）×Ｄ（Ｌ）という線形近似式におけるＲ（Ｌ）を求める。
【００６６】
さらに、入力レート当りの同時接続フロー数算出部１ｅは、このようにして計算したグループ毎の入力レート当りの平均同時接続フロー数Ｒ（Ｌ）を、品質劣化度算出部１ｆに通知する。
【００６７】
通知を受けた品質劣化度算出部１ｆは、同時接続フロー数及び人力レート管理部１ｄから、同時接続フロー数Ｎ（Ｌ，ｉ）および入力レートＤ（Ｌ，ｉ）（ｉ＝１，…，ｎ）を読み出し、これらの情報と入力レート当りの同時接続フロー数算出部１ｅからの情報（グループ毎の入力レート当りの平均同時接続フロー数Ｒ（Ｌ））からなるｎ個の組み合わせ（Ｄ（Ｌ，ｉ），Ｎ（Ｌ，ｉ））、Ｒ（Ｌ）、およびグループ毎に予め定めた閾値Ｄｔｈ１（Ｌ）、ε（Ｌ）を用いて、入力レートＤ（Ｌ，ｋ）＞Ｄｔｈ１（Ｌ）かつ平均同時接続フロー数Ｎ（Ｌ，ｋ）＞Ｄ（Ｌ，ｋ）×［Ｒ（Ｌ）×｛１+ε（Ｌ）｝］となる組（Ｄ（Ｌ，ｋ），Ｎ（Ｌ，ｋ））を抽出し、その組の数ｍ（Ｌ）（≦ｎ）を計測し、品質劣化発生度ｄ（Ｌ）を「ｍ（Ｌ）／ｎ」の式により算出し、算出した値が予め定めた閾値Ｔｈ（Ｌ）を超えると、グループＬは品質劣化していると判定する。
【００６８】
このようにして、グループＬに対する品質劣化を検出すると、品質劣化検出部１ｆは、ボトルネック特定部１ｈに、品質劣化が観測された時点ｋ＝ｋ１，ｋ２，…，ｋｘおよび入力レート当りの平均同時接続フロー数Ｒ（Ｌ）の値を通知する。
【００６９】
品質劣化検出部１ｆからの情報を受信したボトルネック特定部１ｈは、リンク使用率収集部１ｇより、グループＬの経路上に存在する各リンク使用率の測定値を受信する。このリンク使用率収集部１ｇでは、当該ネットワーク内のリンクｌの使用率ρ（ｌ，ｉ）をｔ０毎に収集しておく。
【００７０】
そして、ボトルネック特定部１ｈは、品質劣化状態にあると判定された時点ｋにおける、グループＬに属するフローが経由する各リンクｌ（ｌ＝１〜Ｎｕｍ（Ｌ）で、Ｎｕｍ（Ｌ）はリンク数）のリンク使用率ρ（ｌ，ｋ）が閾値ρ＊（ｌ）を超えているか否かを判定する。
【００７１】
ここで、ボトルネック特定部１ｈは、閾値ρ＊（ｌ）を計算するために、フローあたりの最大転送速度ｒ’（Ｌ）を「ｒ’（Ｌ）＝１／Ｒ（Ｌ）」の式を用いて算出し、リンクｌの帯域Ｃ（ｌ）との比Ｒａｔｉｏ（Ｌ）を「Ｒａｔｉｏ（ｌ，Ｌ）＝Ｃ（ｌ）×Ｒ（Ｌ）」の式を用いて算出する。
【００７２】
そして、ボトルネック特定部１ｈは、これらの算出結果を、品質劣化度数を計算する関数Ｄｅｇｒａｄｅｄに代入して、「Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ（１、Ｌ）、ρ＊（ｌ））＝１+ε（Ｌ）」の式を満たす「ρ＊（ｌ）」を計算し、「ρ（ｌ，ｋ）＞ρ＊（ｌ）」であれば、リンクｌがボトルネックであると判定する。
【００７３】
以上、図１〜図３を用いて説明したように、本例のボトルネック特定装置およびそれによるネットワークのボトルネック特定処理では、ネットワークを通過するフローを予め定めたポリシーで分類されたグループ（例えば同一対地間でフローを分類）別に判別し、グループ毎の同時接続数と入力レートを測定し、その測定値から、ネットワークにおけるグループ毎の通信品質劣化の有無を検出する。そして、あるグループの通信品質劣化を検出すれば、その箇所（ボトルネック）が、当該ネットワーク内か否か、ネットワーク内であればどのリンクであるかを特定する。すなわち、まず、品質が劣化していると判定したグループに対し、当該グループのユーザフローの同時接続数と入力レートの測定結果を用いて、フローあたりの最大転送速度ｒ’を算出し、算出したフローあたりの最大転送速度ｒ’とネットワーク内のリンクの通信帯域Ｃとの比Ｒ（Ｒ＝Ｃ／ｒ’）を算出する。次に、この比Ｒと、リンク使用率ρ、および、リンク使用率ρが十分小さいときのＴＣＰフロー品質を基準として当該リンクがボトルネックとなった場合のＴＣＰフロー品質劣化度数Ｄｅｇｒａｄｅｄ、の３者の関係を表す品質劣化度関数Ｄｅｇｒａｄｅｄ＝Ｄｅｇｒａｄｅｄ（Ｒａｔｉｏ，ρ）を用いて、当該リンクがボトルネックとなって品質劣化が生じるリンク使用率ρ＊を算出し、このリンク使用率ρ＊と、測定されたｎ回の当該リンク使用率とを比較することにより、当該リンクがボトルネックとなって品質劣化が生じたか否かを判定する。そして、これらの処理を、ネットワーク内の各リンクに対して実施し、ボトルネックとなっているリンクを決定する。
【００７４】
このように、本例によれば、測定が簡易な同時接続フロー数と入力レートという値のみから、それらの関係を算出することにより、当該ネットワークにおける品質劣化を検出し、品質劣化のボトルネックを特定することが可能であり、ボトルネック箇所の特定を低コストで行うことができる。
【００７５】
尚、本発明は、図１〜図３を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例でのグループ分けに関しては、「送信元ＩＰアドレス」と「着信先ＩＰアドレス」の２つの組とグループを対応付ける例を示したが、「送信元ＩＰアドレス」、「着信先ＩＰアドレス」、「送信元ポート番号」、「着信先ポート番号」、「プロトコル番号」の５つの組でも良く、グループをどのように定義するかに依存してグループの判別法は決まる。
【００７６】
また、グループの判別に関しても、本例では、テーブルを参照してグループを判別しているが、ネットワークの入口でパケット毎にそのヘッダ内にグループを表すフラグを立てておき、パケットヘッダ解析部１ａにおいて、そのヘッダ内フラグをみてグループを判別することでも良い。
【００７７】
また、本例では、図１におけるボトルネック特定装置１は、コンピュータ構成により、プログラムに基づくＣＰＵの処理で、すなわち、ソフトウェアで各機能（処理部）を実現しているが、各機能を、論理回路を用いて、ＬＳＩ（Large Scale Integrated Circuit）等のハードウェアで実現する構成としても良い。
【００７８】
また、コンピュータ構成例としても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Flexible Disk）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【００７９】
【図１】本発明に係わるボトルネック特定装置の構成例を示すブロック図である。
【図２】図１におけるボトルネック特定装置を設けたＩＰネットワークの構成例を示すブロック図である。
【図３】本発明に係わるフロー数と入力レートとの関連を示す説明図である。
【図４】本発明に係わるネットワークのボトルネック特定方法の処理手順例を示すフローチャートである。
【符号の説明】
【００８０】
１：ボトルネック特定装置、１ａ：パケットヘッダ解析部、１ｂ：入力レート算出部、１ｃ：同時接続フロー数算出部、１ｄ：同時接続フロー数及び入力レート管理部、１ｅ：入力レートあたりの同時接続フロー数算出部、１ｆ：品質劣化検出部、１ｇ：リンク使用率収集部、１ｈ：ボトルネック特定部、２ａ〜２ｄ：エッジノード（１）〜（４）、３ａ，３ｂ：コアノード（１），（２）。
【図１】
2006191219.tif 000007
【図２】
2006191219.tif 000008
【図３】
2006191219.tif 000009
【図４】
2006191219.tif 000010