(57)【特許請求の範囲】
【請求項１】
所与の時間でのネットワークの第１エンドポイント装置と第２エンドポイント装置の間のネットワーク状態を特徴付ける測定データを取り込むステップと、
取り込んだ測定データをネットワーク障害装置で使用して、後の時間に前記ネットワーク状態を再現するステップとを含み、
前記ネットワーク障害装置は、聴取品質モードおよび会話品質モードのうちの少なくとも１つで動作するよう構成される、方法。
【請求項２】
前記聴取品質モードにおいて、格納されたサンプル通信が、前記エンドポイント装置のうちの１つで再現するために前記ネットワーク障害装置によって前記エンドポイント装置のうちの前記１つに送られる、請求項１に記載の方法。
【請求項３】
前記会話品質モードにおいて、前記ネットワーク状態下で前記ネットワーク障害装置を介して前記第１エンドポイント装置と前記第２エンドポイント装置の間の双方向通信が実施される、請求項１に記載の方法。
【請求項４】
測定データを取り込む前記ステップが、複数のパケットのそれぞれについて出発タイムスタンプおよび到着タイムスタンプを生成すること、および前記出発タイムスタンプおよび前記到着タイムスタンプを処理して、前記所与の時間での前記ネットワーク状態を特徴付ける１方向通過時間のシーケンスｄ１，ｄ２，．．．，ｄｎを形成することを含む、請求項１に記載の方法。
【請求項５】
前記取り込んだ測定データをネットワーク障害装置で使用して前記ネットワーク状態を再現する前記ステップが、それぞれの前記１方向通過時間ｄ１，ｄ２，．．．，ｄｎに少なくとも部分的に基づいて求められた時間に前記ネットワーク障害装置によって解放すべき受信パケットの順序付きシーケンスを前記ネットワーク障害装置の可変遅延バッファに格納することを含む、請求項４に記載の方法。
【請求項６】
測定データを取り込む前記ステップが、複数のパケットのそれぞれについて到着タイムスタンプを生成すること、および前記到着タイムスタンプを処理して、前記所与の時間での前記ネットワーク状態を特徴付ける、前記タイムスタンプの最初のものに対する相対的タイムスタンプのシーケンスｔ１，ｔ２，．．．，ｔｎを形成することを含む、請求項１に記載の方法。
【請求項７】
前記取り込んだ測定データをネットワーク障害装置で使用してネットワーク状態を再現する前記ステップが、それぞれの前記相対的タイムスタンプｔ１，ｔ２，．．．，ｔｎに少なくとも部分的に基づいて求められた時間に前記ネットワーク障害装置によって解放すべき受信パケットの順序付きシーケンスを前記ネットワーク障害装置の可変遅延バッファに格納することを含む、請求項６に記載の方法。
【請求項８】
前記取り込んだ測定データをネットワーク障害装置で使用してネットワーク状態を再現する前記ステップが、前記ネットワーク状態の再現に起因する追加の遅延を相殺するために、前記ネットワーク障害装置におけるバッファされたパケットの解放時間を調整することをさらに含む、請求項５または７のいずれか１項に記載の方法。
【請求項９】
前記取り込んだ測定データをネットワーク障害装置で使用して前記ネットワーク状態を再現する前記ステップが、紛失パケット状況と関連する想定遅延を有するパケットを破棄することをさらに含む、請求項１に記載の方法。
【請求項１０】
破棄された前記パケットが、前記破棄されたパケットのＲｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ（ＲＴＰ）ヘッダに基づいて、前記ネットワーク障害装置によって索引付けされる、請求項９に記載の方法。
【請求項１１】
再現された前記ネットワーク状態に基づいて、前記ネットワークの少なくとも１つの特徴を修正するステップをさらに含む、請求項１に記載の方法。
【請求項１２】
メモリに結合されたプロセッサを備えるネットワーク障害装置と、
所与の時間でのネットワークの第１エンドポイント装置と第２エンドポイント装置の間のネットワーク状態を特徴付ける、取り込まれた測定データを受信し、前記取り込まれた測定データを使用して、後の時間に前記ネットワーク状態を再現するように構成されるネットワーク障害装置とを備え、
前記ネットワーク障害装置は、聴取品質モードおよび会話品質モードのうちの少なくとも１つで動作するよう構成される、機器。
【請求項１３】
ネットワークを介して通信するように構成された複数のエンドポイント装置を備え、測定データが、所与の時間での第１のエンドポイント装置と第２のエンドポイント装置の間のネットワーク状態を特徴付けるように取り込まれ、さらに、
取り込まれた測定データを使用して、後の時間に前記ネットワーク状態を再現するように構成されたネットワーク障害装置を備え、
前記ネットワーク障害装置は、聴取品質モードおよび会話品質モードのうちの少なくとも１つで動作するよう構成される、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に通信ネットワークに関し、より詳細には、そのようなネットワークの監視および分析のための技法に関する。
【背景技術】
【０００２】
統一された通信に向けての遠隔通信産業における最近の傾向は、サービス品質（ＱｏＳ）の必要が様々である様々なタイプの応用例に対して許容できるＱｏＳを送達するための収束型ネットワークの必要を強調していることである。ビデオ・ストリーミングやｖｏｉｃｅ  ｏｖｅｒ  ＩＰ（ＶｏＩＰ）などのリアル・タイム応用例は、基礎となるデータ・ネットワークからの厳格なＱｏＳ保証を要求する。そのような応用例の配置のすべての段階でのネットワーク挙動を理解することは、その性能にとって重要である。例えば、配置前段階では、必要なＱｏＳをネットワークが送達することができるかどうか、およびより重要なことであるが、ネットワークのどの部分がそれを行うことができないかを評価することが必要である。配置の後、受け入れられるＱｏＳレベルを維持するために、ネットワークの性能を監視することが必要である。
【０００３】
多数のネットワーク監視および分析システムが当技術分野で周知である。例えば、複数のエンドポイント装置を含むネットワーク内の性能問題に関連する特定の場所を求める根本原因分析技法を開示する、「Method and Apparatus for Automatic Determination of Performance Problem Locations in a Network」という名称の米国特許出願公告第２００５／００５３００９号を参照されたい。
【０００４】
ネットワーク監視および分析システムはしばしば、ネットワーク状態がリアル・タイム応用例にどのように影響を及ぼすかを理解しようとして、遅延、ジッタ、パケット損失などの低レベル・ネットワーク測定値を収集する。しかし、そのような低レベル・ネットワーク測定値は、受信ストリームの知覚品質に対する影響の点で、解釈することが難しい可能性がある。このために、低レベル測定値はしばしば、受信ストリームの全体的知覚品質を１から５のスケールで伝える推定Ｍｅａｎ  Ｏｐｉｎｉｏｎ  Ｓｃｏｒｅ（ＭＯＳ）によって補足される。ITU T Recommendation P.800、「Methods for subjective determination of transmission quality」を参照されたい。別の周知の知覚品質推定技法は、ITU-T Recommendation G.107、「The E-model, a computational model for use in transmission planning」に記載のＥモデルを使用する。Ｅモデルは、低レベル・ネットワーク測定値を使用して、０から１００の範囲で変化することができ、推定ＭＯＳに対応付けることのできるＲ因子と呼ばれるスカラ値を計算する。ＶｏＩＰ応用例の場合、２方向での受信ストリームの同時知覚品質を特徴付ける会話推定ＭＯＳを使用することができる。
【０００５】
上述の推定ＭＯＳおよびＥモデルに基づく従来型手法の著しい欠点は、こうした手法が、受ける品質の非常に単純化された記述のみを伝えることである。したがって、こうした技法では、ネットワーク・エンジニアが、ネットワーク応用例のユーザによって報告された特定の品質問題をネットワーク・エンジニア自身のために再現および体験することが可能ではなく、問題を分析および訂正することが非常に難しくなる可能性がある。このことは、品質問題が稀なネットワーク状態または過渡的ネットワーク状態に起因する状況で特に当てはまる。
【特許文献１】米国特許出願公告第２００５／００５３００９号、「Method and Apparatus for Automatic Determination of Performance Problem Locations in a Network」
【非特許文献１】ITU T Recommendation P.800、「Methods for subjective determination of transmission quality」
【非特許文献２】ITU-T Recommendation G.107、「The E-model, a computational model for use in transmission planning」
【非特許文献３】Internet Engineering Task Force (IETF) Request for Comments (RFC) 768、「User Datagram Protocol」、1980年8月
【非特許文献４】IETF RFC 1889、「RTP: A Transport Protocol for Real-Time Applications」
【非特許文献５】IETF RFC 3158、「RTP Testing Strategies」、2001年8月
【非特許文献６】IETF RFC 3261、「SIP: Session Initiation Protocol」、2002年6月
【非特許文献７】ITU-T Recommendation H.323、「Packet-based multimedia communication systems」、2000年11月
【非特許文献８】ITU-T Recommendation H.225、「Call signaling protocols and media stream packetization for packet-based multimedia communication systems」、2000年11月
【発明の開示】
【課題を解決するための手段】
【０００６】
本発明は、１つまたは複数の例示的実施形態において、ネットワーク状態の取込みおよび再現のための技法を提供することにより、上述の従来の慣行の欠点を克服する。
【０００７】
本発明の一態様によれば、ネットワーク状態取込みおよび再現技法は、所与の時間でのネットワークの第１エンドポイント装置と第２エンドポイント装置の間のネットワーク状態を特徴付ける測定データを取り込み、取り込んだ測定データをネットワーク障害装置（ｎｅｔｗｏｒｋ  ｉｍｐａｉｒｍｅｎｔ  ｄｅｖｉｃｅ）で使用して、後の時間にネットワーク状態を再現する。測定データは、例えば、エンドポイント装置のうちの少なくとも１つまたはその付近で記録されたタイムスタンプから生成された遅延データを含むことができる。
【０００８】
ネットワーク内の第１エンドポイント装置と第２エンドポイント装置の間に装置ネットワーク障害装置を結合することができる。あるいは、ネットワークの外部のネットワーク状態を再現するために、ネットワークの外部のテスト・エンドポイント装置間にネットワーク障害装置を結合することもできる。
【０００９】
例示的実施形態でネットワーク状態を取り込み、再現するために、いくつかの異なる手法を使用することができる。例えば、複数のパケットのそれぞれについて出発タイムスタンプおよび到着タイムスタンプを生成し、出発タイムスタンプおよび到着タイムスタンプを処理して、所与の時間でのネットワーク状態を特徴付ける１方向通過時間のシーケンスｄ１，ｄ２，．．．，ｄｎを形成することによって測定データを取り込むことができる。次いで、それぞれの１方向通過時間ｄ１，ｄ２，．．．，ｄｎに少なくとも部分的に基づいて決定される時間に、ネットワーク障害装置によって解放すべき受信パケットの順序付きシーケンスをネットワーク障害装置の可変遅延バッファに格納することにより、測定データによって特徴付けられるネットワーク状態を後の時間に再現することができる。
【００１０】
別の例として、複数のパケットのそれぞれについて到着タイムスタンプを生成し、到着タイムスタンプを処理して、所与の時間でのネットワーク状態を特徴付ける、タイムスタンプの最初のものに対する相対的タイムスタンプのシーケンスｔ１，ｔ２，．．．，ｔｎを形成することによって測定データを取り込むことができる。次いで、それぞれの相対的タイムスタンプｔ１，ｔ２，．．．，ｔｎに少なくとも部分的に基づいて決定される時間にネットワーク障害装置によって解放すべき受信パケットの順序付きシーケンスをネットワーク障害装置の可変遅延バッファに格納することにより、測定データによって特徴付けられるネットワーク状態を再現することができる。
【００１１】
本発明の別の態様によれば、ネットワーク障害装置は、聴取品質モードおよび会話品質モードを含む複数の動作モードを有することができる。聴取品質モードでは、選択された格納サンプル通信を、エンドポイント装置で再現するためにネットワーク障害装置によってエンドポイント装置のうちの１つに送ることができる。会話品質モードでは、ネットワーク状態下でネットワーク障害装置を介して第１エンドポイント装置と第２エンドポイント装置の間の双方向通信が実施される。
【００１２】
有利なことに、本発明は、例示的実施形態において、ネットワーク・エンジニアが、ネットワーク応用例のユーザによって報告された特定の品質問題をネットワーク・エンジニア自身のために再現および体験することを可能にする改良型ネットワーク監視および分析手法を提供する。この手法は、品質問題が稀なネットワーク状態または過渡的ネットワーク状態に起因する状況であっても、問題の分析および訂正をかなり容易にする。
【発明を実施するための最良の形態】
【００１３】
例示的ネットワーク状態取込みおよび再現プロセス、ならびに関連するネットワーク・ベースの通信システムと共に本発明を例示する。しかし、本発明が記載の特定のプロセスおよび通信システムと共に使用することに限定されないことを理解されたい。例えば、関連するネットワーク内の性能問題または他の状態の改良型監視および分析を提供することが望ましい任意の通信応用例での使用のために、直接的に記載の技法を適合させることができる。
【００１４】
さらに、本発明は、ＶｏＩＰトラフィックの監視および分析で使用するのに特に適しているが、特定の品質問題が生じたネットワーク状態を取り込み、再現することが望ましいマルチメディア・トラフィック応用例または他のフロー・ベースのリアル・タイム応用例での著しい利点ももたらす。
【００１５】
したがって、音声、ビデオ、マルチメディア、または任意の他のタイプのネットワーク・トラフィックと共に本発明を使用することができる。
【００１６】
本明細書で使用する「パケット」という用語は、ＩＰパケットだけでなく、他のパケット・ベースの通信システムで使用される他のタイプのパケットも含むものとする。
【００１７】
「エンドポイント」および「エンドポイント装置」という用語は、本明細書では交換可能に使用され、所与のＶｏＩＰ通信または他のタイプのパケット・ベースの通信に関連する発信装置または宛先装置を含むものとする。したがって、所与のエンドポイント装置はシステムの端末装置である必要はなく、例えばゲートウェイ、ルータ、交換機、任意の他のタイプの非端末ネットワーク要素などの内部ネットワーク要素を含むことができることを理解されたい。例示的実施形態での所与の１対のエンドポイント装置は一般に、特定の通信経路のソース・ノードおよび宛先ノードを含むものとして見ることができる。したがって、エンドポイント装置は、任意のネットワーク・ノードを含む装置あるいは任意のネットワーク・ノードに関連する装置でよい。
【００１８】
本明細書で使用する「測定データ」という用語は、例えば、遅延、ジッタ、損失、または他のＱｏＳ関連統計、それらから求めることができる関連する分析結果、ならびに他のタイプのデータを含むものとする。
【００１９】
ここで図１を参照すると、例示的ネットワーク状態取込みおよび再現プロセスが示されている。
【００２０】
ステップ１００では、所与の時間について、ネットワークのソース・エンドポイント装置と宛先エンドポイント装置の間で遅延データが取り込まれる。所与の時間は、例えば、指定の期間またはいくつかの指定の時点でよい。想定パケット・レートで伝送されるパケットの概数によって時間を指定するなど、所与の時間を指定する他の技法を使用することができる。図２Ａおよび２Ｂと共に以下で説明するが、エンドポイント装置のうちの少なくとも１つまたはその付近で記録されたタイムスタンプから遅延データを生成することができる。遅延データを、より一般的に本明細書では測定データと呼ぶものの一例として見ることができる。他の実施形態は、所与の時間でのネットワーク状態を特徴付けるために様々なタイプの測定データを取り込むことができる。
【００２１】
ソース・エンドポイント装置および宛先エンドポイント装置は、より一般的に本明細書では第１および第２エンドポイント装置と呼ぶものの例である。もちろん、所与のエンドポイント装置は、例えば双方向通信の場合、ソース・エンドポイント装置と宛先エンドポイント装置のどちらとしても動作することができる。したがって、本明細書での特定のエンドポイント装置のソース・エンドポイント装置または宛先エンドポイント装置としての指定は、例示を単純かつ明確にするためのものであり、どんな形でも限定と解釈すべきではない。
【００２２】
ステップ１０２では、取り込まれた遅延データが格納される。例えば、エンドポイント装置のうちの１つの中のメモリまたはエンドポイント装置のうちの１つに関連するメモリ、あるいはそれぞれのエンドポイント装置の中のメモリまたはそれぞれのエンドポイント装置に関連するメモリに、取り込まれた遅延データを格納することができる。
【００２３】
ステップ１０４では、取り込まれた遅延データがネットワーク障害装置に供給される。ネットワーク障害装置の例示的実施形態を図３および４と共に以下でより詳細に説明する。
【００２４】
ステップ１０６では、ネットワーク障害装置が使用されて、後の時間に、恐らくは異なる場所で、所与の時間についてのネットワーク状態が再現される。例えば、後の時間に所与の時間からネットワーク状態を再現するために、ネットワーク内のソース・エンドポイント装置と宛先エンドポイント装置の間の通信経路内にネットワーク障害装置を挿入することができる。別の例として、ネットワークの外部のネットワーク状態を再現するために、ネットワークの外部のソース・エンドポイント装置と宛先エンドポイント装置の間にネットワーク障害装置を挿入することができる。そのような構成では、ネットワーク・エンジニアは、問題に直面したときに使用されたのと同じタイプのソース・エンドポイント装置と宛先エンドポイント装置を使用して、特定の品質問題が生じるネットワーク状態を再現することができる。これは、エンジニアがネットワークの外部の問題を再現してトラブルシューティングすることを可能にするだけではなく、関係する特定のタイプのエンドポイント装置に関連する任意の効果を考慮に入れることによって問題のより正確な再現も保証する。さらにこれは、取り込まれたネットワーク状態下で受けた何らかの品質問題が異なるエンドポイント装置によって軽減されたはずであるかどうかを判定するように、再現で使用される特定のタイプのエンドポイント装置を変更するオプションをエンジニアに与える。
【００２５】
ネットワーク障害装置がいくつかの異なる選択可能なモードで動作可能であることに留意されたい。例えば、ネットワーク障害装置は、聴取品質モードまたは会話品質モードで動作可能である。
【００２６】
聴取品質モードでは、格納されたサンプル通信を、ネットワーク障害装置によってエンドポイント装置のうちの１つに、そのエンドポイント装置で再現するために送ることができる。装置は、異なるタイプの複数のサンプル通信を格納することができ、それによってネットワーク・エンジニアは、聴取品質モードで使用される通信のタイプを変更することができる。ネットワーク・エンジニアは、２つの方向のそれぞれで別々に、取り込まれるネットワーク状態の対象となる音声サンプルを聴取することができる。異なるネットワーク障害が異なる音声サンプルに対して異なる影響を有し、そのような変動は推定ＭＯＳなどの従来型技法では取り込まれないので、音声サンプルを選ぶことができることは有益である。
【００２７】
会話品質モードでは、エンドポイント装置間の双方向通信が、ネットワーク状態下でネットワーク障害装置を介して実施される。したがって、各エンドポイント装置にいる１対のネットワーク・エンジニアは会話を実施することができ、各ストリームは、取り込まれるネットワーク状態に反映される障害があるならばその障害の対象となる。これにより、エンジニアが、特定のタイプのエンドポイント装置を使用して特定の日の特定の時間に例えばニューヨークとロサンゼルスの間での会話がどのようになされたかを体験することができる。上述のように、エンジニアはプロセスのデータ取込み部分で使用されるのとは異なるタイプのエンドポイント装置を自由に使用し、したがって、例えば異なるエンドポイント装置を使用することが、取り込まれるネットワーク状態に関連する何らかの品質問題を軽減するはずであるかどうかを判定することができる。本明細書でのネットワーク・エンジニアに関する言及は、例えばテスタ、技術者、管理者などの他のタイプの人員を包含するように広い意味で解釈すべきである。
【００２８】
図１の処理ステップの特定の構成は例示的実施例として提示されるに過ぎないことを理解されたい。処理ステップの多数の代替構成を使用して、所与の時間でのネットワーク状態を示す測定データを取り込み、後の時間に、取り込んだデータを使用してネットワーク状態を再現することができる。
【００２９】
図１の例示的実施形態は、例えば、ネットワークの第１エンドポイント装置と第２エンドポイント装置の間で、２つの方向のそれぞれでパケット出発タイムスタンプおよびパケット到着タイムスタンプを収集することによって、遅延データを取り込むことができる。タイムスタンプを使用して、２つの方向のそれぞれで直接的にパケット遅延を計算することができる。次いで、２つの方向のそれぞれでの遅延を使用して、タイムスタンプが記録された時間で受けた聴取品質および会話品質を再現する目的で、２つのエンドポイント装置間に配置されるネットワーク障害装置を構成することができる。
【００３０】
各エンドポイントの入口および出口またはその付近でネットワーク測定を行うことが好ましい。こうした地点で取られるデータは、対応するエンドポイントに進入および退出するパケットの時間相対的特徴を最良に表すからである。あるいは、幾分より単純な実装では、２つのエンドポイント間のネットワーク内の任意の所与の地点でデータを測定することもできる。しかし、そのような地点で測定されたデータで表されるネットワーク状態は、必ずしも各エンドポイントで知覚される品質を反映するわけではない。
【００３１】
図２Ａは、ネットワーク状態取込み機能を含むネットワーク・ベースの通信システム２００の一部を示す。図示されるシステム２００の部分は、ネットワーク２０６を介して宛先エンドポイント装置２０４と通信するソース・エンドポイント装置２０２を含む。例示を単純にするために図では端末エンドポイント装置として示したが、先に示したように、システムのエンドポイント装置のうちの１つまたは複数は、ネットワーク２０６の内部ノードを含むことができ、あるいはネットワーク２０６の内部ノードと関連付けることができる。さらに、上述のように、２つのエンドポイント装置はそれぞれ、双方向通信の場合と同様に、ソース装置および宛先装置として動作することができる。したがって、図２Ａおよび本明細書の他の図で一方をソースとして指定し、他方を宛先として指定することは純粋に任意であり、特定の方向での通信に関する例示のためのものである。
【００３２】
システム２００は、ネットワーク２０６に結合されたコントローラ２０８をさらに含む。この実施形態でのコントローラを使用して、測定データの取込みを容易にすることができる。例えば、コントローラは、上記で引用した米国特許出願公告第２００５／００５３００９号に記載されているのと同様のタイプのネットワーク監視および分析システム・コントローラを含むことができる。ネットワーク２０６に結合する代わりに、またはネットワーク２０６に結合することに加えて、コントローラ２０８をエンドポイント装置２０２、２０４の一方または両方に結合することができる。
【００３３】
コントローラを中央コントローラ、分散型コントローラとして、または集中型技法および分散型技法の組合せを使用して実装することができる。例えば、コントローラの機能を、システムのエンドポイント装置のうちの１つまたは複数にわたって少なくとも部分的に分散させることができる。したがって、本明細書で使用する「コントローラ」という用語は、集中型コントローラ、分散型コントローラ、あるいは少なくとも部分的に集中型であり、少なくとも部分的に分散型であるハイブリッド・コントローラを含むものとする。
【００３４】
代替実施形態は、コントローラ２０８を省略することができ、共通コントローラを使用せずに遅延データを取り込むようにエンドポイント装置２０２、２０４、または他のシステム要素を構成することができる。
【００３５】
動作の際に、ＶｏＩＰ通信または他のタイプのパケット・ベースの通信が、システム２００内のソース・エンドポイント装置２０２と宛先エンドポイント装置２０４の間で行われ、所与の時間について遅延データが取り込まれる。システムは例示的に、この目的でタイムスタンプ・レコーダ２１０Ｓおよび２１０Ｄを使用する。タイムスタンプ・レコーダは、ソース・エンドポイント装置および宛先エンドポイント装置によるパケットの送信または受信のタイミングを正確に反映するように、それぞれのソース・エンドポイント装置および宛先エンドポイント装置に近接して配置される。以下で詳細に説明するように、宛先エンドポイント装置に関連する単一のタイムスタンプ・レコーダを使用して遅延データを取り込むことが可能である。そのような実施形態では、タイムスタンプ・レコーダ２１０Ｓを省略することができる。タイムスタンプ・レコーダの動作を、その関連するエンドポイント装置、コントローラ２０８、またはこうしたシステム要素と他のシステム要素の組合せによって指示することができる。
【００３６】
したがって、この実施形態でのタイムスタンプ・レコーダ２１０Ｓおよび２１０Ｄは、図１のプロセスの遅延データ取込み態様を実装するのに使用される。こうした装置またはその関連するエンドポイントを、取り込まれた遅延データを格納し、取り込まれた遅延データをネットワーク障害装置に供給するように構成することもできる。
【００３７】
図２Ｂに示されるように、タイムスタンプ・レコーダ２１０Ｓまたは２１０Ｄの所与の１つをその対応するソース・エンドポイント装置または宛先エンドポイント装置に組み込むことができる。したがって、システム２００のエンドポイント装置のうちの１つまたは複数は、統合タイムスタンプ記録機能を有することができる。
【００３８】
エンドポイント装置２０２、２０４は、他の点では従来型の有線またはワイヤレスＩＰ電話（ＩＰ「ソフトフォン」と一般に呼ばれる装置を含む）、携帯情報端末（ＰＤＡ）、携帯電話、パーソナル・コンピュータ（ＰＣ）、シングル・ボード・コンピュータ（ＳＢＣ）、または他のタイプの処理装置でよい。
【００３９】
先に示したように、一般にはエンドポイント装置２０２、２０４はそれぞれ、所与の１対のエンドポイント間で確立された双方向ＶｏＩＰ通信の場合と同様に、ソースと宛先のどちらとしても動作するように構成される。したがって、それぞれは、受信機回路および送信機回路を組み込む可能性が高い。
【００４０】
そのようなエンドポイント装置の従来型態様は当技術分野で周知であり、したがって本明細書ではさらに詳細には説明しない。
【００４１】
図２Ａには図示していない追加のシステム要素を、エンドポイント２０２、２０４のそれぞれとネットワーク２０６の間に結合することができ、あるいは従来の慣行に従ってシステム２００内に配置することができる。
【００４２】
ネットワーク２０６は、例えば、インターネット、広域ネットワーク、大都市圏ネットワーク、ローカル・エリア・ネットワーク、ワイヤレス・セルラ・ネットワーク、公衆交換電話網（ＰＳＴＮ）、またはサテライト・ネットワークなどのグローバル通信ネットワーク、ならびにこうした通信ネットワークまたは他の通信ネットワークの一部または組合せを表すことができる。ネットワーク２０６は、従来型ＩＰルータ、ゲートウェイ、交換機、または他のパケット処理要素を含むことができる。
【００４３】
エンドポイント装置２０２、２０４間の通信は、例えばＶｏＩＰ通信を含むことができる。ＶｏＩＰ通信で一般に使用される標準プロトコルは、Internet Engineering Task Force (IETF) Request for Comments (RFC) 768、「User Datagram Protocol」、1980年8月に記載のUser Datagram Protocol(UDP)と、IETF RFC 1889、「RTP: A Transport Protocol for Real-Time Applications」に記載のReal-Time Transport Protocol (RTP)と、IETF RFC 3158、「RTP Testing Strategies」、2001年8月に記載のRTP Control Protocol (RTCP)とを含み、これらすべては参照により本明細書に組み込まれる。
【００４４】
例えば、ＶｏＩＰ通信は、ＵＤＰを使用してＩＰネットワークを介して送られるＲＴＰ音声データ・パケットを含むことができる。より具体的には、ＲＴＰパケットはＵＤＰパケット内にカプセル化され、ＵＤＰパケット自体はＩＰパケット内にカプセル化される。もちろん、本発明を実装する際に多種多様なプロトコルおよびカプセル化構成を使用することができる。
【００４５】
呼出しセットアップ、ティアダウン（ｔｅａｒｄｏｗｎ）、ダイヤル・トーンなどの機能を提供するためにＶｏＩＰ通信と共に使用可能なシグナリング・プロトコルは、IETF RFC 3261、「SIP: Session Initiation Protocol」、2002年6月、ITU-T Recommendation H.323、「Packet-based multimedia communication systems」、2000年11月、およびITU-T Recommendation H.225、「Call signaling protocols and media stream packetization for packet-based multimedia communication systems」、2000年11月に記載のSession Initiation Protocol (SIP)を含み、これらすべては参照により本明細書に組み込まれる。
【００４６】
当業者には容易に理解できるであろうが、上記で引用したプロトコルのうちの１つまたは複数、または他の適切なプロトコルを使用して、本発明の状況でのＶｏＩＰ通信または他の通信を実装することができる。
【００４７】
図２Ａに示されるシステム２００の単純化された構成は例示のためのものに過ぎず、要素の何らかの特定の構成に本発明を限定するものとして解釈すべきではないことを強調しておく。例えば、システム２００は、他のタイプおよび構成のルーティング要素、交換要素、または他の処理要素を含む、追加のエンドポイントを含むことができる。システムの所与のエンドポイント装置または他の処理要素は一般に、メモリに結合されたプロセッサを備え、通常はネットワーク・インターフェースをさらに含むことになる。
【００４８】
図３は、所与の時間について取り込まれた遅延データを使用して、後の時間に、恐らくは異なる場所で、その所与の時間についてのネットワーク状態を再現することのできる方式を示す。図示されるシステム２００’は、ソース・エンドポイント装置２０２’および宛先エンドポイント装置２０４’を備え、その装置間にネットワーク障害装置３００が結合される。ソース・エンドポイント装置２０２’および宛先エンドポイント装置２０４’は、遅延データが取り込まれたときに使用されたのと同じ装置２０２、２０４でよい。したがって、図２Ａに示されるシステム２００にネットワーク障害装置を挿入することができる。あるいは、システム２００’は、所与の時間について取り込まれたネットワーク状態がシステム２００の外部で再現される別々のテスト・システムを備えることもできる。この場合、ソース・エンドポイント装置２０２’および宛先エンドポイント装置２０４’は、任意の品質問題のより良好な再現を保証するように、遅延データが取り込まれたときに実際のシステムで使用されたのと同じタイプのテスト・ソース・エンドポイント装置およびテスト宛先エンドポイント装置であることが好ましい。
【００４９】
図４に、ネットワーク障害装置３００がより詳細に示されている。この実施形態では、ネットワーク障害装置は、メモリ４０２に結合されたプロセッサ４００を備える。図１のネットワーク状態取込みおよび再現プロセスの再現部分を実装するソフトウェアをメモリ４０２に格納し、プロセッサ４００で実行することができる。メモリ４０２は、ランダム・アクセス・メモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、光または磁気ディスク・ベースのストレージ、または他の記憶素子、ならびにそれらの組合せを表すことができる。プロセッサ４００は、例えばマイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、コンピュータ、または他の装置を含むことができる。
【００５０】
ネットワーク障害装置３００には、パケット受信インターフェース４１０、１組の可変遅延バッファ４１２、およびパケット送達インターフェース４１４も含まれる。前述のように、ネットワーク障害装置は、聴取品質モードや会話品質モードなどの複数のモードで動作可能である。したがって、エンドポイント装置２０２’、２０４’間の双方向通信をサポートするようにインターフェース４１０、４１４、および可変遅延バッファ４１２を構成することができる。そのような構成では、パケット受信インターフェースの一部分は、パケット送達インターフェースの対応する部分を介してエンドポイント装置２０４’に送達されるパケットをエンドポイント２０２’から受信することができる。同様に、パケット受信インターフェースの別の部分は、パケット送達インターフェースの対応する部分を介してエンドポイント装置２０２’に送達されるパケットをエンドポイント２０４’から受信することができる。このタイプの構成での可変遅延バッファ４１２はまた、各通信方向についての異なるバッファの組に分離される。
【００５１】
ネットワーク障害装置３００の特定の動作モードが、プロセッサ４００の制御下でモード・セレクタ４２０によって選択される。
【００５２】
図１のプロセスのステップ１００で取り込まれた遅延データを、エンドポイント装置２０２、２０４、またはその関連するタイムスタンプ・レコーダ２１０に格納することができ、それがネットワーク障害装置３００に供給され、メモリ４０２に格納される。プロセッサ４００は、取り込まれた遅延データをメモリから取り出し、それを使用して、取り込まれた遅延データで特徴付けられる、所与の時間でのネットワーク状態を再現するように、可変遅延バッファ４１２によって与えられる可変遅延の量を制御する。
【００５３】
図４に示される特定のネットワーク障害装置はそのような装置の一例に過ぎないことを理解されたい。代替実施形態は、プロセッサ、メモリ、およびインターフェース要素の様々な構成、ならびに先に取り込まれた測定データに基づいてネットワーク状態を再現するための様々な技法を使用することができる。
【００５４】
次に、ＶｏＩＰ通信を参照しながら、いくつかの異なる取込みおよび再現技法をより詳細に説明する。双方向ＶｏＩＰ通信は一般に、ソース・エンドポイントから宛先エンドポイントに送られるパケットのシーケンスと、逆方向に送られるパケットのシーケンスとを含む。したがって、２つのエンドポイント間で交換される１対のＶｏＩＰパケット・ストリームが存在する。説明を簡単にするために、以下の例では、２つのパケット・ストリームの任意の一方に焦点を当てる。この場合も、エンドポイントは、端末エンドポイントまたはネットワーク内部のエンドポイントでよい。
【００５５】
ソース・エンドポイントが規則的にパケットを送ること、例えば５０ミリ秒ごとに１パケットを送ることを仮定する。ネットワークが様々な競合アプリケーションによって使用されること、およびその結果、ネットワークが、パケットごとに異なる遅延後に連続するパケットを宛先に送達することをさらに仮定する。図１のプロセスのステップ１００は、以下で説明する技法を使用して、所与の時間についてこうした遅延を取り込む。２つの例示的取込み技法を説明するが、本発明を実装する際に多種多様な他の取込み技法を使用できることを理解されたい。さらに、ＶｏＩＰとは異なるタイプの通信と共に使用するために、記載の技法を直接的に適合させることができる。
【００５６】
第１取込み手法では、ソース・エンドポイント装置２０２および宛先エンドポイント装置２０４が、各パケットについての出発タイムスタンプおよび到着タイムスタンプを求める際に協働する。この手法は一般に、ソース・エンドポイントおよび宛先エンドポイント上のクロックが互いに同期されること、または周知の技法を使用してタイムスタンプを後処理し、スキューおよびドリフトを補正することを必要とする。各パケットについての出発タイムスタンプおよび到着タイムスタンプを互いに差し引いて、ＶｏＩＰ性能に対するネットワークの寄与を表す１方向通過時間のシーケンスｄ１，ｄ２，．．．，ｄｎを形成することができる。ｉ番目のパケットが紛失した場合、その対応する通過時間ｄｉは無限大であると仮定される。典型的なＶｏＩＰストリームでは各パケットのＲＴＰヘッダ中にパケット番号が存在するので、この例でパケットに索引付けすることができる。
【００５７】
上述のように、タイムスタンプ・レコーダ２１０Ｓおよび２１０Ｄを使用して出発タイムスタンプおよび到着タイムスタンプを取り込むことができ、タイムスタンプ・レコーダ２１０Ｓおよび２１０Ｄはそれぞれのソース・エンドポイント装置および宛先エンドポイント装置に組み込むことができ、またはネットワーク内のそうした装置付近に配置することができる。後者の場合、ネットワーク内のタイムスタンプ・レコーダ配置が、エンドポイントとそのレコーダ間で著しい遅延を受けないことを保証することが好ましい。
【００５８】
第２取込み手法では、宛先エンドポイント装置２０４は、ソース・エンドポイント装置２０２の協働なしに動作し、単に各パケットについての到着タイムスタンプを求める。タイムスタンプ・レコーダ２１０Ｄを使用して到着タイムスタンプを取り込むことができ、タイムスタンプ・レコーダ２１０Ｄは、先に示したように、宛先エンドポイント装置２０４の内部でよく、またはネットワーク内のその装置付近に配置することができる。各到着タイムスタンプから第１到着タイムスタンプが減算され、第１タイムスタンプに対するそれぞれのタイムスタンプｔ１，ｔ２，．．．，ｔｎが形成される。ｉ番目のパケットが紛失した場合、その対応する相対的タイムスタンプｔｉは無限大であると仮定される。相対的タイムスタンプ値ｔｉは、０である初期相対的タイムスタンプ値ｔ１から概して増加するシーケンスを形成する。この場合も、典型的なＶｏＩＰストリームでは各パケットのＲＴＰヘッダ中にパケット番号が存在するので、この例でパケットに索引付けすることができる。
【００５９】
次に、上記の第１取込み手法および第２取込み手法を使用して取り込まれた遅延データからネットワーク状態を再現する技法を説明する。
【００６０】
第１取込み手法で生成された１方向通過時間ｄ１，ｄ２，．．．，ｄｎからネットワーク状態を再現する際に、ネットワーク障害装置３００の可変遅延バッファ４１２が、プロセッサ４００の制御下で構成され、パケットが所望の１方向通過時間ｄ１，ｄ２，．．．，ｄｎで送達されるように、連続するパケットが遅延される。図４と共に述べたように、ネットワーク障害装置は、ソース・エンドポイントからパケットを受信するインターフェースと、宛先エンドポイントにパケットを送達するインターフェースとを含む。ネットワーク障害装置は、ソース・エンドポイントからパケットを受信するための実行スレッドと、時間を追跡し、適切な時間にパケットを解放する実行スレッドという２つの実行スレッドを含むことができる。したがって、可変遅延バッファは、それぞれの１方向通過時間ｄ１，ｄ２，．．．，ｄｎによって決定される指定の将来時間に解放されるべき受信パケットの順序付きシーケンスを格納することができる。より具体的には、ネットワーク障害装置がｉ番目のパケットを受信したとき、ネットワーク障害装置は、将来の時間ｄｉに解放するためにそのパケットをバッファ内に配置する。ｄｉが無限大である場合、パケットが紛失したとみなされ、パケットはネットワーク障害装置によって送達されない。
【００６１】
ネットワーク障害装置３００で実装される可変遅延を調節して、ソース・エンドポイントから障害装置へのパケットの伝送、および障害装置から宛先エンドポイントへのパケットの伝送に関連する任意の追加の遅延を反映できることに留意されたい。例えば、障害装置がｉ番目のパケットを受信したとき、ソース・エンドポイントが障害装置からどれだけ離れているかに応じて、パケットは既に何らかの遅延を受けている可能性がある。同様に、ｉ番目のパケットが障害装置によって解放されたとき、宛先エンドポイントが障害装置からどれだけ離れているかに応じて、そのパケットは何らかのより多くの遅延を受ける可能性がある。ネットワーク障害装置自体の中の遅延を含めて、このタイプの追加の遅延を反映するために、調節後１方向通過時間ｄ１−ｄ，ｄ２−ｄ，．．．，ｄｎ−ｄに従ってパケットを解放するように障害装置を構成することができる。ただしｄは、上述の追加の遅延を相殺するように選択される。
【００６２】
第２取込み手法で生成された相対的タイムスタンプｔ１，ｔ２，．．．，ｔｎからネットワーク状態を再現する際に、ネットワーク障害装置３００の可変遅延バッファ４１２がやはりプロセッサ４００の制御下で構成され、パケットが所望のタイミングで送達されるように、連続するパケットが遅延される。再現プロセスは、第１取込み手法の状況で上述したのと同様である。しかし、この場合、ネットワーク障害装置は、相対的タイムスタンプｔ１，ｔ２，．．．，ｔｎだけではなく、ベース１方向遅延ｄｂと共に構成しなければならない。ｔ１は構成によって０であるので、ｄｂは第１パケットに関する遅延と考えることができる。ネットワーク障害装置がｉ番目のパケットを受信したとき、ネットワーク障害装置は、将来の時間ｄｉ＋ｄｂに解放するためにそのパケットをバッファ内に配置する。この場合も、ｄｉが無限大である場合、パケットが紛失したとみなされ、パケットはネットワーク障害装置によって送達されない。第１手法下での再現と場合と同じく、遅延ｄの量を解放時間の計算に組み込み、再現に関係する追加の遅延を相殺することができる。  
【００６３】
上述の特定の取込みおよび再現手法は例示的なものに過ぎない。多数の他の技法を使用して、所与の時間についての測定データを取り込み、そのデータによって特徴付けられる特定のネットワーク状態を後の時間に再現することができる。さらに、特定の方向での通信を参照しながら説明したが、こうした手法を双方向通信に直接的に拡張することができる。
【００６４】
特定の品質問題に関連するネットワーク状態の再現に応答して、問題を軽減または克服するためにネットワーク内の様々な調節または修正を行うことができる。したがって、本発明の所与の実施形態は、再現されたネットワーク状態に基づいて決定されるそのような調節または修正を含むことができる。
【００６５】
上述のように、本発明の例示的実施形態と共に上述したネットワーク状態取込みおよび再現機能のうちの１つまたは複数を、ネットワーク障害装置３００内のプロセッサ４００およびメモリ４０２、またはエンドポイント装置２０２、２０４内の類似の要素、タイムスタンプ・レコーダ２１０、またはシステムの他の部分などの処理要素を使用するソフトウェアとして全体的または部分的に実装することができる。本発明の技法を実装するのに、多種多様の他の適切な構成のハードウェア、ファームウェア、またはソフトウェアを使用することができる。
【００６６】
上述の構成は例示的なものに過ぎないことを再び強調しておく。例えば、代替実施形態は、異なる構成のエンドポイント装置、障害装置、コントローラ、または他のシステム要素、異なるタイプのネットワーク・トラフィック、異なるタイプの取込みまたは再現技法などを含むことができる。さらに、例示的実施形態を説明する状況で使用した特定の仮定を本発明の要件と見るべきではなく、こうした仮定のうちの１つまたは複数が適用されない実施形態を構築することができる。添付の特許請求の範囲内にある上記および多数の他の代替実施形態が当業者には明らかであろう。
【図面の簡単な説明】
【００６７】
【図１】本発明の例示的実施形態でのネットワーク状態取込みおよび再現プロセスの流れ図である。
【図２Ａ】本発明の例示的実施形態での、ネットワーク状態取込み機能を有する通信システムの部分を示す図である。
【図２Ｂ】本発明の例示的実施形態での、ネットワーク状態取込み機能を有する通信システムの部分を示す図である。
【図３】例示的実施形態での、先に取り込まれたネットワーク状態の再現のためのシステムの１つの可能な構成を示すブロック図である。
【図４】図３のシステムのネットワーク障害装置の１つの可能な実装のより詳細な図である。
【図１】
0004964859.tif 000002
【図２Ａ】
0004964859.tif 000003
【図２Ｂ】
0004964859.tif 000004
【図３】
0004964859.tif 000005
【図４】
0004964859.tif 000006