(57)【特許請求の範囲】
【請求項１】
通信ネットワーク（ＣＮ）を通じて第１の測定ポイント（Ｎ１）から第２の測定ポイント（Ｎ２）へ送信されるパケットフロー（ＰＦ）に関して時間測定を実行する方法であって、
ａ）前記第１の測定ポイント（Ｎ１）において、前記パケットフロー（ＰＦ）が送信される間、前記パケットフロー（ＰＦ）を、第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）中に送信される第１のパケット（Ｐｋｉ）と、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）と時間的に交互である第２の期間（Ｔ（１）、Ｔ（３）、．．．）中に送信される第２のパケット（Ｐｋｉ）とに分割するステップと、
ｂ）ある期間（Ｔ（ｋ））中に、前記第１のパケット（Ｐｋｉ）が送信される間、前記第１の測定ポイント（Ｎ１）において、前記第１のパケット（Ｐｋｉ）に、前記第１のパケット（Ｐｋｉ）の各パケットの特徴を、第１のパケット（Ｐｋｉ）が時間測定を受けることを示す第１のマーキング値（Ｖｃ）または第１のパケット（Ｐｋｉ）が時間測定を受けないことを示す第２のマーキング値（Ｖｄ）のいずれかに設定することによってマークすることであって、当該マークすることは、前記第１のマーキング値（Ｖｃ）によってマークされた２つの第１のパケット（Ｐｋｉ）の送信時間が、少なくとも、前記期間（Ｔ（ｋ））の継続時間（Ｔｂ）よりも短い予め定義された最小送信間時間（Ｔｘ）だけ相互に遅延するように実行される、マークすることと、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）の各パケットについて、送信タイムスタンプを生成することとを行うステップと、
ｃ）前記第２の測定ポイント（Ｎ２）において、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）を識別し、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）の各パケットについて、受信タイムスタンプを生成するステップと、
ｄ）前記期間（Ｔ（ｋ））の満了後、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）の前記送信タイムスタンプおよび前記受信タイムスタンプに基づいて、前記時間測定を実行するステップと
を含む方法。
【請求項２】
請求項１に記載の方法であって、前記ステップａ）は、前記パケット（Ｐｋｉ）に、前記パケット（Ｐｋｉ）の各パケットのさらなる特徴を、第１のパケット（Ｐｋｉ）が前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）中に送信されることを示す第３のマーキング値（Ｖａ）または第２のパケット（Ｐｋｉ）が前記第２の期間（Ｔ（１）、Ｔ（３）、．．．）中に送信されることを示す第４のマーキング値（Ｖｂ）のいずれかに設定することによってマークするステップを含む、方法。
【請求項３】
請求項２に記載の方法であって、前記パケットフロー（ＰＦ）の各パケット（Ｐｋｉ）は、マーキングフィールド（ＭＦ）を含み、前記さらなる特徴は、前記マーキングフィールド（ＭＦ）の第１のマーキングサブフィールド（ｂ１）であり、前記特徴は、前記マーキングフィールド（ＭＦ）の第２のマーキングサブフィールド（ｂ２）である、方法。
【請求項４】
請求項１から３のいずれか一項に記載の方法であって、ステップｂ）において、前記最小送信間時間（Ｔｘ）は、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット間の追い越しを含む受信シーケンスエラーを防止するのに適切な値に設定される、方法。
【請求項５】
請求項４に記載の方法あって、前記最小送信間時間（Ｔｘ）は、前記第１の測定ポイント（Ｎ１）から前記第２の測定ポイント（Ｎ２）への前記パケットフロー（ＰＦ）の平均片道遅延よりも長い、方法。
【請求項６】
請求項４に記載の方法であって、前記最小送信間時間（Ｔｘ）は、前記第１の測定ポイント（Ｎ１）から前記第２の測定ポイント（Ｎ２）への前記パケットフロー（ＰＦ）の最大片道遅延よりも長い、方法。
【請求項７】
請求項４から６のいずれか一項に記載の方法であって、前記最小送信間時間（Ｔｘ）は、１０ミリ秒以上である、方法。
【請求項８】
請求項１から７のいずれか一項に記載の方法であって、前記ステップｂ）は、前記第１のパケット（Ｐｋｉ）の各パケットを送信するときに、
前記ある期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つであるか、それとも前記第２の期間（Ｔ（１）、Ｔ（３）、．．．）のうちの１つであるかをチェックするステップと、
前記ある期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つである場合に、送信カウンタ（Ｃ１ａ）を増加させ、前記第１のマーキング値（Ｖｃ）によってマークされた最後のパケット（Ｐｋｉ）の送信から、前記最小送信間時間（Ｔｘ）が経過したかどうかをチェックし、経過した場合に、前記第１のマーキング値（Ｖｃ）によって前記第１のパケット（Ｐｋｉ）にマークし、Ｎ個の送信タイムスタンプ変数（ＴＳ１ａ（ｉ））のうちの１つを、前記第１の測定ポイント（Ｎ１）のローカルクロックによって示される現在時間（ｔ＊）に設定するステップと
を含む、方法。
【請求項９】
請求項８に記載の方法であって、前記ステップｄ）は、
前記期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つであったか、それとも前記第２の期間（Ｔ（１）、Ｔ（３）、．．．）のうちの１つであったかをチェックするステップと、
前記期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つであった場合に、前記時間測定を実行するために、前記送信カウンタ（Ｃ１ａ）および前記Ｎ個の送信タイムスタンプ変数（ＴＳ１ａ（ｉ））を使用するステップと、
前記送信カウンタ（Ｃ１ａ）および前記Ｎ個の送信タイムスタンプ変数（ＴＳ１ａ（ｉ））をリセットするステップと
を含む、方法。
【請求項１０】
請求項８または９に記載の方法であって、前記ステップｃ）は、各パケット（Ｐｋｉ）を受信するときに、
前記パケット（Ｐｋｉ）が、前記第１のパケット（Ｐｋｉ）のうちの１つであるか、それとも前記第２のパケット（Ｐｋｉ）のうちの１つであるかをチェックするステップと、
前記パケット（Ｐｋｉ）が、前記第１のパケット（Ｐｋｉ）のうちの１つである場合に、受信カウンタ（Ｃ２ａ）を増加させ、前記第１のパケット（Ｐｋｉ）が前記第１のマーキング値（Ｖｃ）によってマークされているかどうかをチェックし、マークされている場合に、Ｎ個の受信タイムスタンプ変数（ＴＳ２ａ（ｉ））のうちの１つを、前記第２の測定ポイント（Ｎ２）のローカルクロックによって示される現在時間（ｔ＊＊）に設定するステップと
を含む、方法。
【請求項１１】
請求項１０に記載の方法であって、前記ステップｄ）は、
前記期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つであったか、それとも前記第２の期間（Ｔ（１）、Ｔ（３）、．．．）のうちの１つであったかをチェックするステップと、
前記期間（Ｔ（ｋ））が、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）のうちの１つであった場合に、前記時間測定を実行するために、前記受信カウンタ（Ｃ２ａ）および前記Ｎ個の受信タイムスタンプ変数（ＴＳ２ａ（ｉ））を使用するステップと、
前記受信カウンタ（Ｃ２ａ）および前記Ｎ個の受信タイムスタンプ変数（ＴＳ２ａ（ｉ））をリセットするステップと
を含む、方法。
【請求項１２】
請求項１１に記載の方法であって、前記ステップｄ）は、前記期間（Ｔ（ｋ））の終了に対して、前記期間（Ｔ（ｋ））の継続時間（Ｔｂ）の１％から５０％の間を構成する所定の待ち時間だけ遅延する、方法。
【請求項１３】
請求項１から１２のいずれか一項に記載の方法であって、前記ステップｄ）は、前記第１のマーキング値（Ｖｃ）によってマークされた、前記第１のパケット（Ｐｋｉ）のうちの各パケットについての片道遅延を、送信タイムスタンプと、前記第１のパケット（Ｐｋｉ）についてステップｃ）で生成された受信タイムスタンプとの差として計算するステップを含む、方法。
【請求項１４】
通信ネットワーク（ＣＮ）のノード（Ｎ１）であって、前記ノード（Ｎ１）は、パケットフロー（ＰＦ）をさらなるノード（Ｎ２）に送信するように構成され、前記ノード（Ｎ１）は、
ａ）前記パケットフロー（ＰＦ）が送信される間、前記パケットフロー（ＰＦ）を、第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）中に送信される第１のパケット（Ｐｋｉ）と、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）と時間的に交互である第２の期間（Ｔ（１）、Ｔ（３）、．．．）中に送信される第２のパケット（Ｐｋｉ）とに分割し、
ｂ）ある期間（Ｔ（ｋ））中に、前記第１のパケット（Ｐｋｉ）が送信される間、前記第１のパケット（Ｐｋｉ）を、前記第１のパケット（Ｐｋｉ）の各パケットの特徴を、第１のパケット（Ｐｋｉ）が時間測定を受けることを示す第１のマーキング値（Ｖｃ）または第１のパケット（Ｐｋｉ）が時間測定を受けないことを示す第２のマーキング値（Ｖｄ）のいずれかに設定することによって、マークし、当該マークすることは、前記第１のマーキング値（Ｖｃ）によってマークされた２つの第１のパケット（Ｐｋｉ）の送信時間が、少なくとも、前記期間（Ｔ（ｋ））の継続時間（Ｔｂ）よりも短い、予め定義された最小送信間時間（Ｔｘ）だけ相互に遅延するように実行され、前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）の各パケットについて、送信タイムスタンプを生成する
ように構成された、ノード（Ｎ１）。
【請求項１５】
通信ネットワーク（ＣＮ）のノード（Ｎ２）であって、前記ノード（Ｎ２）は、さらなるノード（Ｎ１）からパケットフロー（ＰＦ）を受信するように構成され、前記パケットフロー（ＰＦ）は、第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）中に送信される第１のパケット（Ｐｋｉ）と、前記第１の期間（Ｔ（０）、Ｔ（２）、Ｔ（４）、．．．）と時間的に交互である第２の期間（Ｔ（１）、Ｔ（３）、．．．）中に送信される第２のパケット（Ｐｋｉ）とに分割されたパケット（Ｐｋｉ）を含み、前記パケット（Ｐｋｉ）の各パケットは、第１のパケット（Ｐｋｉ）が時間測定を受けることを示す第１のマーキング値（Ｖｃ）または第１のパケット（Ｐｋｉ）が時間測定を受けないことを示す第２のマーキング値（Ｖｄ）のいずれかに設定された特徴を含み、前記ノード（Ｎ２）は、
前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケットを識別し、
前記第１のマーキング値（Ｖｃ）によってマークされた前記第１のパケット（Ｐｋｉ）のうちの各パケットについて、受信タイムスタンプを生成する
ように構成された、ノード（Ｎ２）。
【請求項１６】
請求項１４に記載の第１のノード（Ｎ１）と、請求項１５に記載の第２のノード（Ｎ２）とを少なくとも含む通信ネットワーク（ＣＮ）。
【請求項１７】
少なくとも１つのコンピュータに、請求項１から１３のいずれか一項に記載の方法のステップを実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークの分野に関する。特に、本発明は、パケット交換通信ネットワークにおいて、２つの測定ポイント間で送信されるデータフロー（特に、パケットフロー）の時間測定（特に、遅延測定および／またはジッタ測定）を実行する方法に関する。さらに、本発明は、そのような方法を実装するように構成される通信ネットワークのためのノードおよびコンピュータ、ならびにそのようなノードおよびコンピュータを含むコンピュータネットワークに関する。
【背景技術】
【０００２】
パケット交換通信ネットワークでは、データは、可能な中間ノードを通じてソースノードから宛先ノードへルーティングされる、パケットの形式で送信される。例示的なパケット交換ネットワークは、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ネットワーク、イーサネットネットワーク、およびＭＰＬＳ（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）ネットワークである。
【０００３】
パケットは、常に宛先ノードに到達するわけではなく、すなわち、パケットは、ネットワークを通じた送信中に失われる可能性がある。パケットのロスは、様々な理由による。例えば、ノードまたはリンクに障害がある可能性があり、または、ポートの輻輳に起因して、ノードによってパケットが廃棄される可能性もある。さらに、パケットが、ビットエラーを含んでいるために、ノードによってパケットが廃棄される可能性もある。いずれにせよ、パケット交換ネットワークを通じてデータを送信することによってサービスを提供するとき、送信中のパケット損失レートは、そのサービスのサービス品質（ＱｏＳ：ｑｕａｌｉｔｙ  ｏｆ  ｓｅｒｖｉｃｅ）に影響を及ぼす。
【０００４】
さらに、パケットは、ソースノードによって送信時間に送信され、宛先ノードによって受信時間に受信される。送信時間と受信時間との間に経過する時間は、典型的には、「片道遅延」と呼ばれる。パケットの片道遅延は、ソースから宛先へとパケットが横断する、可能な中間ノードの数、各ノードにおけるパケットの永続性時間、およびリンクに沿った伝播時間に、主に依存する。パケットは、各ノードによってホップバイホップでルーティングされるため、パケットが横断する可能な中間ノードの数と、各ノードにおけるパケットの永続性時間はいずれも、予測不能である。したがって、パケットの片道遅延は、ほとんど予測不能である。
【０００５】
さらに、同一のパケットフローのパケットが、異なる片道遅延を有する可能性がある。同一のデータフローの２つのパケットの片道遅延の差は、「到着間ジッタ」（または、簡単に、「ジッタ」）と称される。
【０００６】
通信サービス（特に、通話、会議通話、ビデオ会議、などのリアルタイムの音声サービスまたはデータサービス）が、パケット交換ネットワークによって提供されるとき、サービスを届けるパケットフローに影響を及ぼす、パケットロス、片道遅延およびジッタを測定することが、サービスのエンドユーザによって認知されるサービス品質（ＱｏＳ）の指標を提供する。したがって、通信ネットワークにおけるパケットフローのパケットロス、片道遅延、および／またはジッタを測定することは、ネットワーク事業者にとって特に関心のあることである。
【０００７】
ＷＯ２０１０／０７２２５１（同一出願人の名義による）は、通信ネットワークを通じて送信ノードから受信ノードへ送信される、データフローのデータ損失を測定する方法を開示する。データフローのデータユニットを送信する前に、送信ノードは、データフローをブロックに分割するために、各データユニットにマークする。特に、送信ノードは、各データユニットのヘッダのビットを「１」または「０」に設定することにより、各データユニットにマークする。マークすることによって、ブロックのシーケンスを生じ、ブロックのシーケンスでは、「１」でマークされたデータユニットのブロックが、「０」でマークされたデータユニットのブロックと時間的に交互に起こる。ブロックは、「ブロック期間」Ｔｂと称される、同一の継続時間（例えば、５分）を有することができる。
【０００８】
ＷＯ２０１１／０７９８５７（同一出願人の名義による）は、データフローに対して（特に、片道遅延および／またはジッタを測定するための）時間測定を実行する方法を開示する。ＷＯ２０１１／０７９８５７によれば、ＷＯ２０１０／０７２２５１により開示された上記のマーキング動作に加えて、各ブロック期間において、送信タイムスタンプおよび受信タイムスタンプが生成される。送信タイムスタンプおよび受信タイムスタンプは、現在のブロックの所定のデータユニットが送信および受信された時間を示す。特に、送信ノードは、現在のブロック期間中に送信されているパケットをカウントし、Ｘ個のパケットが送信される毎に送信タイムスタンプを生成する。同様に、受信ノードは、現在のブロック期間中に受信されているパケットをカウントし、Ｘ個のパケットが受信される毎に受信タイムスタンプを生成する。後続のブロック期間において、送信タイムスタンプおよび受信タイムスタンプは、予め定義されたデータユニットに影響を及ぼす片道遅延およびジッタを計算するために使用される。
【０００９】
２０１３年２月２５日のインターネットドラフト「Ｃｏｌｏｒｉｎｇ  ｂａｓｅｄ  ＩＰ  ｆｌｏｗ  ｐｅｒｆｏｒｍａｎｃｅ  ｍｅａｓｕｒｅｍｅｎｔ  ｆｒａｍｅｗｏｒｋ（着色によるＩＰフローの性能測定フレームワーク），  ｄｒａｆｔ−ｃｈｅｎ−ｃｏｌｏｒｉｎｇ−ｂａｓｅｄ−ｉｐｆｐｍ−ｆｒａｍｅｗｏｒｋ−０１」には、パケットロスおよび遅延測定を可能にするために、パケットを異なる色のブロックへと「着色する」ようにＩＰヘッダの未使用ビットを設定することが開示されている。遅延測定のため、期間内に、単一のパケットが着色される。送信者は、着色されたパケットが送信されるときにタイムスタンプを記録し、受信者は、着色されたパケットを検知したときに、タイムスタンプを記録する。２つのタイムスタンプを用いて、パケット遅延が計算される。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
出願人は、ＷＯ２０１１／０７９８５７に記載された遅延測定および／またはジッタ測定が、パケットロスも受信シーケンスエラーも発生しなかったブロック期間についてのみ、すなわち、あるブロック期間中に送信される全てのパケットが、それらが送信された順番に従って、同じ順番で受信されるときにのみ、有効な結果を提供することに気が付いた。
【００１１】
しかしながら、ブロック期間に影響を及ぼすパケットロスは、検知される可能性がある（かつ、そのブロック期間に関する時間測定は、したがって無効として廃棄される可能性がある）が、受信ノードは、時間測定を受けるパケットの識別をパケットカウントのみに基づくため、受信シーケンスエラーが検知されない可能性がある。したがって、パケットロスが発生しなかったブロック期間中に受信シーケンスエラーが発生し、そのエラーが時間測定を受けるパケットを含む場合、受信ノードは、そのエラーを検知できず、したがって、そのブロック期間に関する時間測定が無効であることを認識できない。
【００１２】
一方、上記で引用したインターネットドラフトは、パケットの色に基づいて、測定されるべきパケットの識別を提供し、したがって、原則として、そのようなパケットを含む受信シーケンスエラーの場合にも、測定されるべきパケットを適切に識別できるようにする。しかしながら、この技術にも、いくつかの欠点がある。
【００１３】
第１に、測定されるべきパケットは全て同一の色であるため、測定されるべきパケットのシーケンスには不連続性がない。したがって、連続する２つの着色されたパケットを含む、起こり得る受信シーケンスエラーは、検知できない。結果として生じる時間測定は、したがって無効であるが、そのような無効は検知できない。さらに、受信シーケンスエラーの発生後にもたらされる受信タイムスタンプのエラーが、着色されたパケットのシーケンス全体に沿っていつまでも伝播するため、後続の時間測定も全て無効である。
【００１４】
着色されたパケットのシーケンス内の受信シーケンスエラーを回避するためには、着色している期間（すなわち、連続する２つの着色されたパケットの送信間に経過する時間）は、むしろ長く、例えば、１分以上であるものとする。受信ノードにおいて、着色された各パケットは、次の着色されたパケット、および前の着色されたパケットと、時間のみを基準として区別されるため、これは、ある着色している期間中に受信した、着色されたパケットは、予測したものであることを保証する。
【００１５】
しかしながら、このように、着色され、時間測定を受けるパケットの数が非常に減少され、それに応じて、不利なことに、提供される時間測定サンプルの数が、非常に減少する。
【００１６】
上記の点を考慮して、出願人は、パケット交換通信ネットワークにおいて、２つの測定ポイント（ノードまたはコンピュータ）間で送信されるパケットフローに対して時間測定を実行する方法を提供するという問題に取り組んできた。その方法は、前述の欠点を克服し、すなわち、受信シーケンスエラーを免れ、十分な数の時間測定サンプルを提供する。
【課題を解決するための手段】
【００１７】
以下の説明および特許請求の範囲において、「パケットフローに対して時間測定を実行する」という表現は、以下を測定する動作を指すものとする。
−  ２つの測定ポイント間の送信によって、前記パケットフローのパケットに引き起こされる片道遅延または双方向遅延、および／または
−  ２つの測定ポイント間の送信によって、パケットフローの１組のパケットに引き起こされるジッタ
さらに、以下の説明および特許請求の範囲において、「パケットにマークする」という表現は、少なくとも１つのパケットの特徴を、予め定義されたマーキング値、特に、少なくとも２つの択一のマーキング値のうちの１つに設定する動作を指すものとする。例えば、パケットにマークする動作は、パケットの１つまたは複数のビット（例えば、そのヘッダの１ビットまたはビットシーケンス）を、少なくとも２つの予め定義された択一のマーキング値のうちの１つに設定する動作や、その周波数またはその位相を、少なくとも２つの予め定義された択一のマーキング値のうちの１つに設定する動作、などを含むことができる。
【００１８】
本発明の実施形態によれば、上述の問題は、通信ネットワークを通じて送信されるパケットフローに対して時間測定を実行する方法によって解決される。その方法では、送信ノードは、パケットを送信する間、交互に起こる期間内に送信される第１のパケットと第２のパケットとに、パケットを分割する。各期間において、送信ノードは、また、各パケットの特徴を、パケットが時間測定を受けることを示す第１の値、またはパケットが時間測定を受けないことを示す第２の値に設定することによって、各パケットにマークする。マークすることは、第１の値によってマークされた２つのパケットの送信時間が、期間の継続時間よりも短い、予め定義された送信間時間だけ相互に遅延されるように実行される。第１の値によってマークされた各パケットについて、送信ノードは、送信タイムスタンプを生成し、受信ノードは、受信タイムスタンプを生成する。次いで、各期間の終了後、時間測定は、前の期間中に送信された第１の値によってマークされたパケットの送信タイムスタンプおよび受信タイムスタンプに基づいて、実行される。
【００１９】
第１の態様によれば、本発明は、通信ネットワークを通じて第１の測定ポイントから第２のへ測定ポイント送信されるパケットフローに対して時間測定を実行する方法を提供する。方法は、以下を含む。
ａ）第１の測定ポイントにおいて、パケットフローが送信される間、第１の期間中に送信される第１のパケットと、第１の期間と時間的に交互に起こる第２の期間中に送信される第２のパケットとに、パケットフローを分割するステップ。
ｂ）ある期間中に、第１のパケットが送信される間、第１の測定ポイントにおいて、第１のパケットの各パケットの特徴を、第１のパケットが時間測定を受けることを示す第１のマーキング値、または第１のパケットが時間測定を受けないことを示す第２のマーキング値のいずれかに設定することによって、第１のパケットにマークするステップであって、第１のマーキング値によってマークされた２つの第１のパケットの送信時間が、少なくとも、期間の継続時間よりも短い、予め定義された最小送信間時間だけ、相互に遅延されるように実行される、マークするステップ、および第１のマーキング値によってマークされた第１のパケットの各パケットについて、送信タイムスタンプを生成するステップ。
ｃ）第２の測定ポイントにおいて、第１のマーキング値によってマークされた第１のパケットを識別し、第１のマーキング値によってマークされた第１のパケットの各パケットについて、受信タイムスタンプを生成するステップ。
ｄ）期間の満了後、第１のマーキング値によってマークされた第１のパケットの、送信タイムスタンプおよび受信タイムスタンプに基づいて、時間測定を実行するステップ。
【００２０】
好ましい実施形態によれば、ステップａ）は、パケットの各パケットのさらなる特徴を、第１のパケットが第１の期間中に送信されることを示す第３のマーキング値、または第２のパケットが第２の期間中に送信されることを示す第４のマーキング値のいずれかに設定することによって、パケットにマークするステップを含む。
【００２１】
好ましくは、パケットフローの各パケットは、マーキングフィールドと、マーキングフィールドの第１のマーキングサブフィールドであるさらなる特徴と、マーキングフィールドの第２のマーキングサブフィールドである特徴と、を含む。
【００２２】
好ましくは、ステップｂ）において、最小送信間時間は、第１のマーキング値によってマークされた第１のパケット間の追い越しを伴う、受信シーケンスエラーを防止するのに適切な値に設定される。
【００２３】
いくつかの変形によれば、最小送信間時間は、第１の測定ポイントから第２の測定ポイントへのパケットフローの平均片道遅延よりも長い。
他の変形によれば、最小送信間時間は、第１の測定ポイントから第２の測定ポイントへのパケットフローの最大片道遅延よりも長い。
【００２４】
好ましくは、最小送信間時間は、１０ミリ秒以上である。
好ましくは、ステップｂ）は、第１のパケットの各パケットの送信後、以下を含む。
・ある期間が、第１の期間のうちの１つであるか、それとも第２の期間のうちの１つであるかをチェックするステップ。
・ある期間が、第１の期間のうちの１つである場合、送信カウンタを増加させ、第１のマーキング値によってマークされた最後のパケットの送信から、最小送信間時間が経過したかどうかをチェックし、経過した場合、第１のマーキング値によって第１のパケットにマークし、Ｎ個の送信タイムスタンプ変数のうちの１つを、第１の測定ポイントのローカルクロックによって示される現在時間に設定するステップ。
【００２５】
好ましくは、ステップｄ）は、以下を含む。
・期間が、第１の期間のうちの１つであったか、それとも第２の期間のうちの１つであったかをチェックするステップ。
・期間が、第１の期間のうちの１つであった場合、時間測定を実行するために、送信カウンタおよびＮ個の送信タイムスタンプ変数を使用するステップ
・送信カウンタおよびＮ個の送信タイムスタンプ変数をリセットするステップ
好ましくは、ステップｃ）は、各パケットの受信後、以下を含む。
・パケットが、第１のパケットのうちの１つであるか、それとも第２のパケットのうちの１つであるかをチェックするステップ。
・パケットが、第１のパケットのうちの１つである場合、受信カウンタを増加させ、第１のパケットが第１の値によってマークされているかどうかをチェックし、マークされている場合、Ｎ個の受信タイムスタンプ変数のうちの１つを、第２の測定ポイントのローカルクロックによって示される現在時間に設定するステップ。
【００２６】
好ましくは、ステップｄ）は、以下を含む。
・期間が、第１の期間のうちの１つであったか、それとも第２の期間のうちの１つであったかをチェックするステップ。
・期間が、第１の期間のうちの１つであった場合、時間測定を実行するために、受信カウンタおよびＮ個の受信タイムスタンプ変数を使用するステップ。
・受信カウンタおよびＮ個の受信タイムスタンプ変数をリセットするステップ。
【００２７】
好ましい実施形態によれば、ステップｄ）は、期間の終了に対して、期間の継続時間の１％から５０％の間を構成する所定の待ち時間だけ、遅延される。
好ましくは、ステップｄ）は、第１のマーキング値によってマークされた、第１のパケットの各パケットについての片道遅延を、送信タイムスタンプと、第１のパケットについてステップｃ）で生成された受信タイムスタンプとの差として計算するステップを含む。
【００２８】
第２の態様によれば、本発明は、通信ネットワークについてのノードを提供する。ノードは、パケットフローをさらなるノードに送信するように構成される。ノードは、以下のように構成される。
ａ）パケットフローが送信される間、第１の期間中に送信される第１のパケットと、第１の期間と時間的に交互に起こる第２の期間中に送信される第２のパケットとに、パケットフローを分割する。
ｂ）ある期間中に、第１のパケットが送信される間、第１のパケットの各パケットの特徴を、第１のパケットが時間測定を受けることを示す第１のマーキング値、または第１のパケットが時間測定を受けないことを示す第２のマーキング値のいずれかに設定することによって、第１のパケットにマークし、マークすることは、第１のマーキング値によってマークされた２つの第１のパケットの送信時間が、少なくとも、期間の継続時間よりも短い、予め定義された最小送信間時間だけ、相互に遅延されるように実行され、第１のマーキング値によってマークされた第１のパケットの各パケットについて、送信タイムスタンプを生成する。
【００２９】
第３の態様によれば、本発明は、通信ネットワークについてのノードを提供する。ノードは、さらなるノードからパケットフローを受信するように構成される。パケットフローは、第１の期間中に送信される第１のパケットと、第１の期間と時間的に交互に起こる第２の期間中に送信される第２のパケットとに分割されたパケットを含む。パケットの各パケットは、第１のパケットが時間測定を受けることを示す第１のマーキング値、または第１のパケットが時間測定を受けないことを示す第２のマーキング値のいずれかに設定される、特徴を含み、第２のノードは、以下のように構成される。
・第１のマーキング値によってマークされた第１のパケットを識別する。
・第１のマーキング値によってマークされた第１のパケットのうちの各パケットについて、受信タイムスタンプを生成する。
【００３０】
第４の態様によれば、本発明は、本発明の第２の態様による第１のノードと、本発明の第３の態様による第２のノードと、を少なくとも備える通信ネットワークを提供する。
第５の態様によれば、本発明は、少なくとも１つのコンピュータのメモリ内にロード可能であり、製品が少なくとも１つのコンピュータ上で動作するとき、上記で説明した方法のステップを実行するための、ソフトウェアコード部分を含む、コンピュータプログラム製品を提供する。
【００３１】
本発明は、限定ではなく例として示され、添付図面を参照して読まれるべき、以下の詳細な説明からより明らかとなるであろう。
【図面の簡単な説明】
【００３２】
【図１】例示的なパケット交換ネットワークを概略的に示した図である。
【図２】本発明の実施形態によるパケットの構造を概略的に示した図である。
【図３ａ】送信側における、本発明の実施形態による方法のフローチャートである。
【図３ｂ】送信側における、本発明の実施形態による方法のフローチャートである。
【図４ａ】受信側における、本発明の実施形態による方法のフローチャートである。
【図４ｂ】受信側における、本発明の実施形態による方法のフローチャートである。
【発明を実施するための形態】
【００３３】
図１は、本発明の実施形態による時間測定を実行する方法が実装され得る、例示的なパケット交換通信ネットワークＣＮを概略的に示す。通信ネットワークＣＮは、ＩＰネットワーク、イーサネットネットワーク、ＭＰＬＳネットワーク、または任意の他の既知の種類のパケット交換通信ネットワークであってもよい。
【００３４】
通信ネットワークＣＮは、任意の既知のトポロジーによるリンクによって相互に接続された複数のノードを含む。
特に、通信ネットワークＣＮは、第１のノードＮ１および第２のノードＮ２を含む。第１のノードＮ１（以下「送信ノード」ともいう）は、おそらく通信ネットワークＣＮの中間ノード（図１に図示せず）を通じて、第２のノード（「受信ノード」ともいう）へパケットフローＰＦを送信するように構成される。送信ノードＮ１は、パケットフローＰＦのソースノード、またはソースノードから宛先ノードへのパスの中間ノードのいずれかであってもよい。同様に、受信ノードＮ２は、パケットフローＰＦの宛先ノード、またはソースノードから宛先ノードへのパスの中間ノードのいずれかであってもよい。
【００３５】
好ましくは、通信ネットワークＣＮは、管理サーバＭＳと協調するのにも適している。管理サーバＭＳは、通信ネットワークＣＮのノードのうちのいずれかに接続される、いずれかのスタンドアロンサーバであってもよい。あるいは、管理サーバＭＳは、通信ネットワークＣＮのノードのうちのいずれかにおいて、実装されてもよい。
【００３６】
本発明の好ましい実施形態によれば、パケットフローＰＦは、パケットＰｋｉのシーケンスを含む。
各パケットＰｋｉは、ヘッダおよびペイロードを含む。ペイロードは、送信されるべきデータを含む。さらに、好ましくは、ヘッダは、ソースノードのアドレスおよび宛先ノードのアドレスなどの、パケットＰｋｉをルーティングするための情報を含む。各パケットＰｋｉは、好ましくは優先度フィールドも含む。好ましくは、フローＰＦの全てのパケットＰｋｉは、同一の優先度を有する。
【００３７】
パケットＰｋｉは、さらに、マーキングフィールドＭＦを含み、マーキングフィールドＭＦは、少なくとも２つのサブフィールド、例えば、２つのマーキングビットｂ１およびｂ２を含む。各マーキングサブフィールドｂ１、ｂ２は、２つの択一のマーキング値のうちのいずれかに設定されることができる。特に、第１のマーキングサブフィールドｂ１は、２つの択一のマーキング値Ｖａ、Ｖｂのうちのいずれかに設定されることができ、一方、第２のマーキングサブフィールドｂ２は、２つの択一のマーキング値Ｖｃ、Ｖｄのうちのいずれかに設定されることができる。マーキングフィールドＭＦは、好ましくは、パケットのヘッダに含まれる。マーキングフィールドＭＦは、例えば、パケットＰｋｉがそれに従ってフォーマットされるプロトコルが、まだ特定の機能を割り当てていないフィールドであってもよい。あるいは、マーキングフィールドＭＦは、他の用途を有するフィールドに含まれてもよい。例えば、ＩＰパケットの場合、マーキングフィールドＭＦは、８ビットのＤＳ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）フィールドのうちの２ビットを含み、各ビットが、２つのマーキングサブフィールドのうちの１つを構成してもよい。そのような場合、ビットｂ１の２つの択一のマーキング値ＶａおよびＶｂは、それぞれ１および０であり、一方、ビットｂ２の２つの択一のマーキング値ＶｃおよびＶｄは、それぞれ１および０である。
【００３８】
必要に応じて、マーキングフィールドＭＦは、フィルタサブフィールド（図示せず）も含んでもよく、フィルタサブフィールドは、２つの択一値のいずれかに設定される。パケットＰｋｉ内のフィルタサブフィールドの値は、好ましくは、パケットＰｋｉが、マークされたパケットＰｋｉであるか（この場合、マーキングサブフィールドｂ１、ｂ２の値は、パケットロスおよび／または時間測定のために、読み出され、処理されることとなる）、そうでないか（この場合、マーキングサブフィールドｂ１、ｂ２は、無視されることとなる）を示す。フィルタサブフィールドは、好ましくは、第１のマーキングサブフィールドｂ１に付加される。
【００３９】
パケットＰｋｉは、好ましくは、その送信後に送信ノードＮ１によってマークされ、送信ノードＮ１は、第１のマーキングサブフィールドｂ１の値を、ＶａまたはＶｂに設定し、第２のマーキングサブフィールドｂ２の値を、ＶｃまたはＶｄに設定する。
【００４０】
送信ノードＮ１は、特に、第１のマーキングサブフィールドｂ１に割り当てられるマーキング値Ｖａ、Ｖｂ（例えば、１または０）を、期間Ｔｂで周期的に変更し、期間Ｔｂは、以下「ブロック期間」という。このように、第１のブロック期間（以下「偶数ブロック期間」ともいう）中にマークされるパケットＰｋｉは、第１のマーキングサブフィールドｂ１の第１のマーキング値Ｖａ（例えば１）によってマークされ、一方、第１のブロック期間と時間的に交互に起こる第２のブロック期間（以下「奇数ブロック期間」ともいう）中にマークされるパケットＰｋｉは、第１のマーキングサブフィールドｂ１の第２のマーキング値Ｖｂ（例えば０）によってマークされる。
【００４１】
ブロック期間Ｔｂは、所望のパケットロス測定レートに従って（ブロック期間Ｔｂは、パケットロスについての測定期間でもある）、ネットワーク事業者によって設定されることができる。例えば、ブロック期間Ｔｂは、５分と等しくてもよい。
【００４２】
本発明の好ましい実施形態によれば、各偶数ブロック期間および奇数ブロック期間Ｔ（ｋ）（ｋ＝０、１、２、３、など）内に、送信ノードＮ１は、時間測定を受けるパケットを、時間測定を受けないパケットと区別するために、第２のマーキングサブフィールドｂ２のマーキング値Ｖｃ、Ｖｄ（例えば、１または０）を使用する。特に、各ブロック期間Ｔ（ｋ）（ｋ＝０、１、２、３、など）中に、時間測定を受けるパケットＰｋｉは、第２のマーキングサブフィールドｂ２の第１のマーキング値Ｖｃ（例えば１）によってマークされ、一方、時間測定を受けないパケットＰｋｉは、第２のマーキングサブフィールドｂ２の第２のマーキング値Ｖｄ（例えば０）によってマークされる。
【００４３】
各ブロック期間Ｔ（ｋ）（ｋ＝０、１、２、３、など）中に、２つ以上のパケットＰｋｉが、時間測定を受けるパケットとしてマークされる。特に、同一のブロック期間中に送信され、時間測定を受けるパケットとしてマークされている、２つの連続するパケットＰｋｉの送信時間は、少なくとも予め定義された最小送信間時間Ｔｘだけ、相互に遅延されるものとするという原則を適用して、送信ノードＮ１は、各パケットＰｋｉの第２のマーキングサブフィールドｂ２の値ＶｃまたはＶｄを決定する。予め定義された最小送信間時間Ｔｘは、ブロック期間Ｔｂより短く、時間測定を受けるパケット間の追い越しを伴う、受信シーケンスエラーを防止するように選択され、以下で詳細に論じられるように、ノードＮ１およびＮ２間のリンクの特徴に依存する。
【００４４】
各ブロック期間Ｔ（ｋ）（ｋ＝０、１、２、３、など）中に、時間測定を受けるパケットとしてマークされた各パケットＰｋｉについて、送信側では、パケットＰｋｉが送信ノードＮ１によって送信される時間を示す、送信タイムスタンプが生成され、同様に、受信側では、パケットＰｋｉが受信ノードＮ２によって受信される時間を示す、受信タイムスタンプが生成される。
【００４５】
次いで、各ブロック期間Ｔ（ｋ）の終了後、そのブロック期間Ｔ（ｋ）中に送信および受信された、時間測定を受けるべきパケットＰｋｉに関する送信タイムスタンプおよび受信タイムスタンプは、好ましくは、以下で詳細に説明されるように、時間測定を実行するために使用される。
【００４６】
したがって、有利なことに、時間測定を受けるべきパケットＰｋｉは、第２のマーキングサブフィールドｂ２の値によって識別される。第２のマーキングサブフィールドｂ２の値によって、受信ノードＮ２は、そのようなパケットを、パケットフローＰＦの他のパケットＰｋｉ−パケットロス測定を伴う−が時間測定を受けない、他のパケットＰｋｉと区別できるようになる。言い換えると、第２のマーキングサブフィールドｂ２によって、パケットフローＰＦ内に、時間測定を受けるパケットＰｋｉの「サブフロー」を作成することが可能となり、時間測定を受けるべきパケットＰｋｉの「サブフロー」は、受信ノードＮ２によって、パケットフローＰＦの残りのパケットと明確に区別され得る。
【００４７】
したがって、時間測定を受けるパケットと、時間測定を受けない１つまたは複数のパケットとの間の追い越しを伴う、受信シーケンスエラーが発生する場合であっても、受信ノードＮ２は、時間測定を受けるパケットをとにかく適切に識別することができ、したがって、関連する受信タイムスタンプを適切に生成することができる。その受信タイムスタンプに基づく結果として生じる時間測定は、したがって、有効な測定である。時間測定は、したがって、この種の受信シーケンスエラーを有利に免れる。
【００４８】
一方、送信間時間Ｔｘを適切に選択することによって、時間測定を受けるべきパケット間の追い越しを伴う受信シーケンスエラーを回避することが可能となる。
さらに、第１のマーキングサブフィールドｂ１は、時間測定を受けるべきパケットＰｋｉの「サブフロー」内に、周期的な不連続性を有利にもたらす。言い換えると、パケットフローＰＦ全体と同様に、時間測定を受けるべきパケットの「サブフロー」もまた、交互に起こる期間Ｔｂのブロックに分割される。したがって、あるブロック期間Ｔ（ｋ）に関する測定を無効にするパケットロスおよび／または受信シーケンスエラーが発生する場合、以下で詳細に説明されるように、測定を行うために使用される全てのパラメータ（カウンタおよびタイムスタンプ）が、ブロック期間の終了後にリセットされるため、そのようなエラーは、ブロック期間の終了時に自動的にリセットされる。
【００４９】
さらに、（時間測定を行うために使用されるであろう）送信タイムスタンプおよび受信タイムスタンプが、各ブロック期間中に複数のパケットについて生成されるため、各ブロック期間Ｔ（ｋ）について、いくつかの時間測定サンプルが、有利に取得されることができる。特に、原則として各ブロック期間Ｔ（ｋ）内に取得され得る時間測定サンプルの最大数は、Ｎ＝Ｔｂ／Ｔｘである。ここで、Ｔｂは、各ブロック期間Ｔ（ｋ）の継続時間であり、Ｔｘは、上述した最小送信間時間、すなわち、時間測定を受けるべきパケットとしてマークされた２つのパケットＰｋｉの送信間に経過することとなる最小時間である。
【００５０】
上述のように、最小送信間時間Ｔｘは、好ましくは、ノードＮ１およびＮ２間のリンクの性能に基づいて選択される。特に、最小送信間時間Ｔｘは、好ましくは、時間測定を受けるべきパケット間の追い越しを伴って起こり得る受信シーケンスエラーを実質的に防止するように設定される。
【００５１】
例えば、最小送信間時間Ｔｘは、Ｎ１およびＮ２間の平均片道遅延よりも長く選択されてもよい。
特に、いくつかの実施形態によれば、最小送信間時間は、まず、初期値Ｔｘ０と等しく設定される。初期値Ｔｘ０は、可能な限り現実的に平均片道遅延測定を行うように、各ブロック期間内に、十分大きな数の時間測定サンプルを提供するのに十分低いものとする。このような初期段階では、平均片道遅延測定のみが行われ、以下で詳細に論じられるように、時間測定を受けるパケット間の追い越しを伴う受信シーケンスエラーを本質的に免れる。全ての他の測定（例えば、最大遅延および最小遅延、ならびにジッタ）は、この種の受信シーケンスエラーを免れないため、代わりに中断される。そのような初期段階では、このような種類のエラーが発生しないことを保証するには、Ｔｘ０の値が低すぎる恐れがある。
【００５２】
次いで、平均片道遅延が測定された後（そのような種類の時間測定についての詳細は、以下の説明で提供される）、最小送信間時間Ｔｘは、そのような値よりも長く設定され、時間測定が再び開始される。この第２の段階では、測定されるパケット間で起こり得る追い越しによって、精度が損なわれる時間測定も実行される可能性がある。最小送信間時間Ｔｘの選択が、実際にそのような種類の受信シーケンスエラーを有利に防止する。
【００５３】
あるいは、最小送信間時間Ｔｘは、Ｎ１およびＮ２間の最大片道遅延よりも長く選択されることができる。
特に、他の実施形態によれば、最小送信間時間は、まず、初期値Ｔｘ０と等しく設定され、初期値Ｔｘ０は、測定されるべきパケット間の追い越しを伴う受信シーケンスエラーが発生しないことを保証するのに十分大きい（例えば、数秒）ものとする。これによって、以下で詳細に論じられるように、この種の受信シーケンスエラーを免れない、確実な最大片道遅延測定を提供することが可能となる。このような初期段階では、取得される時間測定サンプルの数は、非常に減少し、各ブロック期間Ｔ（ｋ）内に時間測定を受けるパケットＰｋｉの数は、非常に少ない。したがって、平均時間測定（例えば、平均片道遅延、平均ジッタ、など）は、この段階では、好ましくは中断される。
【００５４】
次いで、最大片道遅延が測定された後（そのような種類の時間測定についての詳細は、以下の説明で提供される）、最小送信間時間Ｔｘは、そのような値よりも長く設定され、時間測定が再び開始される。この第２の段階では、平均時間測定もまた、実行されることができ、サンプルの数は、ここでは現実的な平均値を提供するのに十分である。
【００５５】
２つのノード間のリンクの平均片道遅延または最大片道遅延は、典型的には数ミリ秒であるから、最小送信間時間Ｔｘは、例えば、約１０ミリ秒と等しく設定されてもよい。ブロック期間Ｔｂが５分である場合、各ブロック期間Ｔ（ｋ）中に提供され得る時間測定サンプルの最大数Ｎは、３０，０００である。
【００５６】
本発明による時間測定を実行する方法について、ここでさらに詳細に説明する。
最初に図３ａを参照して、送信側において、好ましくはいくつかの変数が提供される：第１の送信カウンタＣ１ａ、Ｎ個の第１の送信タイムスタンプの配列ＴＳ１ａ（ｉ）、ｉ＝１、２、．．．Ｎ、第１のインデックスｉ、第２の送信カウンタＣ１ｂ、Ｎ個の第２の送信タイムスタンプの配列ＴＳ１ｂ（ｊ）、ｊ＝１、２、．．．Ｎ、および第２のインデックスｊである。数Ｎは、上述のように、原則として各ブロック期間Ｔ（ｋ）内に提供され得る時間測定サンプルの最大数であり、Ｔｂ／Ｔｘと等しい。
【００５７】
次いで、送信ノードＮ１は、送信されるべきパケットフローＰＦの可能なパケットＰｋｉを待つ（ステップ３０１）。送信ノードＮ１は、好ましくは、宛先アドレスの少なくとも一部、ソースアドレスの少なくとも一部、および必要に応じて、パケットヘッダＨｉの他のフィールド（例えば、ＩＰパケットの場合、ＤＳＣＰフィールド）を使用して、パケットフローＰＦのパケットＰｋｉを識別する。
【００５８】
パケットＰｋｉが送信されるべきとき、送信ノードＮ１は、好ましくは、現在のブロック期間Ｔ（ｋ）が、偶数ブロック期間であるか、それとも奇数ブロック期間であるかをチェックし（ステップ３０２）、それに応じて、パケットＰｋｉに適用されるべき第１のマーキングサブフィールドｂ１のマーキング値が、Ｖａ（偶数ブロック期間の間）かＶｂ（奇数ブロック期間の間）かを判定する。
【００５９】
特に、現在のブロック期間Ｔ（ｋ）が、偶数ブロック期間である場合、パケットＰｋｉを送信する前に、ノードＮ１は、好ましくは、パケットＰｋｉの第１のマーキングサブフィールドｂ１をマーキング値Ｖａに設定することにより、パケットＰｋｉにマークする（ステップ３０４ａ）。パケットＰｋｉが、フィルタサブフィールドも含む場合（上述のように）、ステップ３０４ａにおいて、それは、好ましくは、マークされたパケットを示す値に設定される。
【００６０】
さらに、第１の送信カウンタＣ１ａは、好ましくは、１つ増加される（ステップ３０５ａ）。
次いで、ノードＮ１は、好ましくは、第２のマーキングサブフィールドｂ２が、値Ｖｃ、すなわち、時間測定を受けるべきパケットを識別する値に設定された、最後のパケットの送信から、最小送信間時間Ｔｘが経過したかどうかをチェックする（ステップ３０６ａ）。
【００６１】
Ｔｘが経過している場合、ノードＮ１は、好ましくは、その第２のマーキングサブフィールドｂ２をマーキング値Ｖｃ、すなわち、測定されるパケットを示すマーキング値に設定することによって、パケットＰｋｉにさらにマークする（サブステップ３０７ａ）。さらに、インデックスｉは、好ましくは、１つ増加され（ステップ３０８ａ）、次いで、Ｎ個の第１の送信タイムスタンプの配列のｉ番目の要素ＴＳ１ａ（ｉ）は、送信ノードＮ１のローカルクロックによって示される現在時間ｔ＊と等しく設定される（ステップ３０９ａ）。
【００６２】
最小送信間時間Ｔｘが経過していない場合、ノードＮ１は、好ましくは、その第２のマーキングサブフィールドｂ２を、マーキング値Ｖｄ、すなわち、時間測定を受けないパケットを示すマーキング値に設定することによって、パケットＰｋｉにさらにマークする（サブステップ３１０ａ）。
【００６３】
次いで、パケットＰｋｉは、Ｎ２に送信される（ステップ３１１）。
ステップ３０２において、現在のブロック期間Ｔ（ｋ）が奇数ブロック期間であると判定される場合、送信ノードＮ１は、第１のマーキングサブフィールドｂ１をマーキング値Ｖｂに設定することによって、パケットＰｋｉにマークし（ステップ３０４ｂ）、次いで、好ましくは、ステップ３０５ｂ〜３１０ｂを実行して第２の送信カウンタＣ１ｂおよびＮ個の第２の送信タイムスタンプの配列ＴＳ１ｂ（ｊ）の値を更新し、最後に、パケットＰｋｉを送信する（ステップ３１１）。ステップ３０５ｂ〜３１０ｂは、基本的には、現在のブロック期間Ｔ（ｋ）が偶数ブロック期間である場合に実行される、ステップ３０５ａ〜３１０ａに対応する。したがって、それらのステップの詳細な説明は、繰り返して行わないものとする。
【００６４】
図３ａのフローチャートのステップは、好ましくは、ノードＮ１がパケットフローＰＦのパケットＰｋｉを送信する度に繰り返される。
ここで図３ｂを参照して、各ブロック期間Ｔ（ｋ）の終わりに、ちょうど満了したブロック期間Ｔ（ｋ）が、偶数ブロック期間であったか、それとも奇数ブロック期間であったかが、チェックされる（ステップ３２０）。
【００６５】
ブロック期間Ｔ（ｋ）が、偶数ブロック期間であった場合、ブロック期間Ｔ（ｋ）に関する時間測定の実行に関連する変数が、Ｖａによってマークされた、送信されるパケットに関する変数、すなわち、Ｃ１ａおよびＴＳ１ａ（ｉ）であると判定される。
【００６６】
したがって、ノードＮ１は、好ましくは、ステップ３０５ａの最後の繰り返し時に到達した第１の送信カウンタＣ１ａの値と、ステップ３０９ａの最後の繰り返し時に提供された、Ｎ個の第１の送信タイムスタンプの配列ＴＳ１ａ（ｉ）とを、管理サーバＭＳに送信する（ステップ３２１ａ）。次いで、第１の送信カウンタＣ１ａ、Ｎ個の第１の送信タイムスタンプの配列ＴＳ１ａ（ｉ）、およびインデックスｉは、好ましくはリセットされる（ステップ３２２ａ）。
【００６７】
そうではなく、ブロック期間Ｔ（ｋ）が奇数ブロック期間であった場合、ブロック期間Ｔ（ｋ）に関する時間測定の実行に関連する変数が、Ｖｂによってマークされたパケットに関する変数、すなわち、Ｃ１ｂおよびＴＳ１ｂ（ｊ）であると判定される。
【００６８】
したがって、ノードＮ１は、好ましくは、ステップ３０５ｂの最後の繰り返し時に到達した第２の送信カウンタＣ１ｂの値と、ステップ３０９ｂの最後の繰り返し時に提供された、Ｎ個の第２の送信タイムスタンプの配列ＴＳ１ｂ（ｊ）とを、管理サーバＭＳに送信する（ステップ３２１ｂ）。次いで、第２の送信カウンタＣ１ｂ、Ｎ個の第２の送信タイムスタンプの配列ＴＳ１ｂ（ｊ）、およびインデックスｊは、好ましくはリセットされる（ステップ３２２ｂ）。
【００６９】
ブロック期間Ｔ（ｋ）中に送信される、第２のマーキングサブフィールドｂ２がＶｃに設定されているパケットの実数Ｎ＊は、ブロック期間Ｔ（ｋ）中の、パケットフローＰＦの実際のパケット送信レートに依存するため、Ｎよりも少ない可能性があることに留意するものとする。そのような場合、配列ＴＳ１ａ（ｉ）またはＴＳ１ｂ（ｊ）の最初のＮ＊個の要素だけが、意味のあるタイムスタンプ値を含み、配列の残りの要素は、初期設定値（すなわち、０）を含む。
【００７０】
ステップ３２１ａおよび３２１ｂは、既知の通信プロトコル、例えば、ファイル転送プロトコル（ＦＴＰ：Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に基づいて、例えば、送信ノードＮ１と管理サーバＭＳとの間に通信セッションを確立することによって実行されることができる。通信セッションは、送信ノードＮ１または管理サーバＭＳのいずれかによって開始されることができる。
【００７１】
さらに、ステップ３２１ａおよび３２１ｂは、好ましくは、以下で詳細に説明される理由から、ブロック期間Ｔ（ｋ）の終わりと、後続のブロック期間Ｔ（ｋ＋１）の終わりとの間に含まれるランダムな時点において実行される。
【００７２】
ここで図４ａを参照して、受信側において、好ましくはいくつかの変数が提供される。第１の受信カウンタＣ２ａ、Ｎ個の第１の受信タイムスタンプの配列ＴＳ２ａ（ｉ）、ｉ＝１、２、．．．Ｎ、第１のインデックスｉ、第２の受信カウンタＣ２ｂ、Ｎ個の第２の受信タイムスタンプの配列ＴＳ２ｂ（ｊ）、ｊ＝１、２、．．．Ｎ、および第２のインデックスｊである。数Ｎは、好ましくは、送信側と同一、すなわち、好ましくはＴｂ／Ｔｘと等しい。
【００７３】
次いで、受信ノードＮ２は、パケットフローＰＦの可能なパケットＰｋｉを待つ（ステップ４０１）。ノードＮ１と同様に、受信ノードＮ２もまた、好ましくは、宛先アドレスの少なくとも一部、ソースアドレスの少なくとも一部、および必要に応じて、パケットヘッダＨｉの他のフィールド（例えば、ＩＰパケットの場合、ＤＳＣＰフィールド）を使用して、パケットフローＰＦのパケットＰｋｉを識別する。
【００７４】
パケットフローＰＦのパケットＰｋｉの受信後、好ましくは、パケットＰｋｉが、マークされたパケットであるかどうかがチェックされる（ステップ４０２）。このために、好ましくは、パケットＰｋｉのマーキングフィールドＭＦに含まれるフィルタサブフィールドの値がチェックされる。パケットＰｋｉがマークされていないと判定される場合、パケットロスおよび／または時間測定の目的で、いかなる他の動作も実行されない。
【００７５】
そうではなく、パケットＰｋｉがマークされたパケットである場合、受信されたパケットＰｋｉの第１のマーキングサブフィールドｂ１の値が、好ましくはチェックされる（ステップ４０３）。
【００７６】
受信されたパケットＰｋｉの第１のマーキングサブフィールドｂ１の値が、Ｖａと等しい場合、第１の受信カウンタＣ２ａは、好ましくは、１つ増加される（ステップ４０４ａ）。
【００７７】
次いで、受信されたパケットＰｋｉの第２のマーキングサブフィールドｂ２の値が、好ましくは、チェックされる（ステップ４０５ａ）。第２のマーキングサブフィールドｂ２の値が、（測定されるべきパケットを識別する）Ｖｃと等しい場合、インデックスｉは、好ましくは、１つ増加され（ステップ４０６ａ）、Ｎ個の第１の受信タイムスタンプの配列のｉ番目の要素ＴＳ２ａ（ｉ）は、受信ノードＮ２のローカルクロックによって示される現在時間ｔ＊＊と等しく設定される（ステップ４０７ａ）。そうではなく、第２のマーキングサブフィールドｂ２の値が（測定されないパケットを識別する）Ｖｄと等しい場合、他のいかなる動作も実行されない。
【００７８】
ステップ４０３において、受信されたパケットＰｋｉの第１のマーキングサブフィールドｂ１の値が、Ｖｂと等しいと判定される場合、第２の受信カウンタＣ２ｂは、好ましくは１つ増加される（ステップ４０４ｂ）。
【００７９】
次いで、受信されたパケットＰｋｉの第２のマーキングサブフィールドｂ２の値が、好ましくはチェックされる（ステップ４０５ｂ）。第２のマーキングサブフィールドｂ２の値が、（測定されるべきパケットを識別する）Ｖｃと等しい場合、インデックスｊは、好ましくは、１つ増加され（ステップ４０６ｂ）、Ｎ個の第１の受信タイムスタンプの配列のｊ番目の要素ＴＳ２ｂ（ｊ）は、受信ノードＮ２のローカルクロックによって示される現在時間ｔ＊＊と等しく設定される（ステップ４０７ｂ）。そうではなく、第２のマーキングサブフィールドｂ２の値が、（測定されないパケットを識別する）Ｖｄと等しい場合、他のいかなる動作も実行されない。
【００８０】
ステップ４０２から４０７ａ／４０７ｂは、好ましくは、パケットフローＰＦのパケットＰｋｉが受信される度に繰り返される。
ここで図４ｂを参照して、各ブロック期間Ｔ（ｋ）の終わりに、安全な待ち時間ＳＷＴが経過した後（ステップ４２０）、ちょうど満了したブロック期間Ｔ（ｋ）が、偶数ブロック期間であったか、それとも奇数ブロック期間であったかが、判定される（ステップ４２１）。
【００８１】
ブロック期間Ｔ（ｋ）が、偶数ブロック期間であった場合、ブロック期間Ｔ（ｋ）に関する時間測定の実行に関連する変数が、Ｖａによってマークされた、受信されるパケットに関する変数、すなわちＣ２ａおよびＴＳ２ａ（ｉ）であると判定される。
【００８２】
したがって、ノードＮ２は、好ましくは、ステップ４０４ａの最後の繰り返し時に到達した第１の受信カウンタＣ２ａの値と、ステップ４０７ａの最後の繰り返し時に提供された、Ｎ個の第１の受信タイムスタンプの配列ＴＳ２ａ（ｉ）とを、管理サーバＭＳに送信する（ステップ４２２ａ）。次いで、第１の受信カウンタＣ２ａ、Ｎ個の第１の受信タイムスタンプの配列ＴＳ２ａ（ｉ）、およびインデックスｉは、好ましくはリセットされる（ステップ４２３ａ）。
【００８３】
そうではなく、ブロック期間Ｔ（ｋ）が奇数ブロック期間であった場合、ブロック期間Ｔ（ｋ）に関する時間測定の実行に関連する変数が、Ｖｂによってマークされたパケットに関する変数、すなわち、Ｃ２ｂおよびＴＳ２ｂ（ｊ）であると判定される。
【００８４】
したがって、ノードＮ２は、好ましくは、ステップ４０４ｂの最後の繰り返し時に到達した第２の受信カウンタＣ２ｂの値と、ステップ４０７ｂの最後の繰り返し時に提供された、Ｎ個の第２の受信タイムスタンプの配列ＴＳ２ｂ（ｊ）とを、管理サーバＭＳに送信する（ステップ４２２ｂ）。次いで、第２の受信カウンタＣ２ｂ、Ｎ個の第２の受信タイムスタンプの配列ＴＳ２ｂ（ｊ）、およびインデックスｊは、好ましくはリセットされる（ステップ４２３ｂ）。
【００８５】
ブロック期間Ｔ（ｋ）中に受信される、第２のマーキングサブフィールドｂ２がＶｃに設定されているパケットの数Ｎ＊＊は、ブロック期間Ｔ（ｋ）中のパケットフローＰＦの実際のパケット送信レート、およびブロック期間Ｔ（ｋ）中のパケットロスにも依存するため、Ｎよりも（かつＮ＊よりも）少ない可能性があることに留意するものとする。そのような場合、配列ＴＳ２ａ（ｉ）またはＴＳ２ｂ（ｊ）の最初のＮ＊＊個の要素だけが、意味のあるタイムスタンプ値を含み、配列の残りの要素は、初期設定値（すなわち、０）を含む。
【００８６】
上述のように、図４ｂのフローチャートのステップは、好ましくは、ブロック期間Ｔ（ｋ）の終わりに対して安全な待ち時間ＳＷＴだけ遅延される。実際に、通信ネットワークＣＮを通じたパケットＰｋｉの伝播遅延、または受信シーケンスエラーに起因して、Ｖａによってマークされ、偶数ブロック期間Ｔ（ｋ）中に送信される最後のパケットＰｋｉは、後続の奇数ブロック期間Ｔ（ｋ＋１）の初めに受信ノードＮ２によって受信される可能性がある。したがって、偶数ブロック期間Ｔ（ｋ）の終了後、Ｖａによってマークされた、受信されたパケットに関する変数（すなわち、Ｃ２ａおよびＴＳ２ａ（ｉ））は、依然として変化している可能性がある。同様に、Ｖｂによってマークされ、奇数ブロック期間Ｔ（ｋ）中に送信される最後のパケットは、後続の偶数ブロック期間Ｔ（ｋ＋１）の初めに、受信ノードＮ２によって受信される可能性がある。したがって、奇数ブロック期間Ｔ（ｋ）の終了後、Ｖｂによってマークされた、受信されたパケットに関する変数（すなわち、Ｃ２ｂおよびＴＳ２ｂ（ｊ））は、依然として変化している可能性がある。
【００８７】
安全な待ち時間ＳＷＴは、ＶａまたはＶｂによってマークされたパケットに関する変数が、それらの値が安定しているときにのみ、管理サーバＭＳに送信されることを保証する。このことによって、また、パケットロスおよびそのような変数に基づく時間測定は、連続するブロック期間の間の境界で発生する受信シーケンスエラーを免れる。安全な待ち時間ＳＷＴは、好ましくは、ブロック期間Ｔｂの１％から５０％の間に含まれる。例えば、ブロック期間Ｔｂが、５分と等しい場合、安全な待ち時間ＳＷＴは、Ｔｂの２０％、すなわち、１分と等しくてもよい。
【００８８】
ステップ４２２ａおよび４２２ｂは、既知の通信プロトコル、例えば、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に基づいて、例えば、受信ノードＮ２と管理サーバＭＳとの間に通信セッションを確立することによって実行されることができる。通信セッションは、受信ノードＮ２または管理サーバＭＳのいずれかによって開始されることができる。
【００８９】
さらに、ステップ４２２ａおよび４２２ｂは、好ましくは、安全な待ち時間ＳＷＴの終わりと、ブロック期間Ｔ（ｋ＋１）の終わりとの間に含まれるランダムな時点において実行される。これにより、管理サーバＭＳが、通信ネットワークＣＮの全てのノードに関するパラメータを同時に受信することが、有利に防止される。それは、管理サーバＭＳの輻輳を引き起こす恐れがある。安全な待ち時間ＳＷＴの終わりと、ステップ４２２ａおよび４２２ｂが実行される時点との間に経過する時間は、好ましくは、Ｔｂの１％から４０％の間に含まれる。例えば、ブロック期間Ｔｂが５分の場合、それは、２０％、すなわち１分であってもよい。
【００９０】
したがって、各ブロック期間Ｔ（ｋ）の満了後に、管理サーバＭＳは以下を受信する。
−  送信ノードＮ１から、Ｃａ１またはＣ１ｂと等しい送信カウンタＣ１（ｋ）、およびＴＳ１ａ（ｉ）（または、ＴＳ１ｂ（ｊ））と等しい、Ｎ個の送信タイムスタンプの配列ＴＳ１ａ（ｌ，ｋ）
−  受信ノードＮ２から、Ｃ２ａまたはＣ２ｂと等しい受信カウンタＣ２（ｋ）、およびＴＳ２ａ（ｉ）またはＴＳ２ｂ（ｊ）と等しい、Ｎ個の受信タイムスタンプの配列ＴＳ２（ｌ，ｋ）
各ブロック期間Ｔ（ｋ）の満了後、次いで、管理サーバＭＳは、送信カウンタＣ１（ｋ）と受信カウンタＣ２（ｋ）との差として、そのブロック期間Ｔ（ｋ）に関するパケットロスＰＬ（ｋ）を計算することができる。そのようなパケットロスの測定によって、時間測定を受けるパケットおよび／または時間測定を受けないパケットを無関係に含む受信シーケンスエラーを有利に免れる。
【００９１】
さらに、各ブロック期間Ｔ（ｋ）の満了後、管理サーバＭＳは、ブロック期間Ｔ（ｋ）中に送信されて、Ｖｃと等しい第２のマーキングサブフィールドｂ２を有する、多くてもＮ個のパケットの片道遅延ＯＷＤ（ｌ，ｋ）を計算することができる。これらのパケットのうちの各パケットについて、片道遅延ＯＷＤ（ｌ，ｋ）は、受信タイムスタンプの配列のｌ番目の要素ＴＳ２（ｌ，ｋ）と、それに対応する送信タイムスタンプの配列のｌ番目の要素ＴＳ１（ｌ，ｋ）との差として計算される。片道遅延ＯＷＤ（ｌ，ｋ）が一度計算されると、ブロック期間Ｔ（ｋ）についての最小片道遅延ＯＷＤｍｉｎ（ｋ）、および最大片道遅延ＯＷＤｍａｘ（ｋ）が、そのような片道遅延ＯＷＤ（ｌ，ｋ）の中の最小および最大として、計算されることができる。
【００９２】
さらに、ブロック期間Ｔ（ｋ）についての片道遅延ＯＷＤ（ｌ，ｋ）が一度計算されると、管理サーバＭＳは、ブロック期間Ｔ（ｋ）中に送信され、Ｖｃと等しい第２のマーキングサブフィールドｂ２を有する、連続するパケットのうちの各ペアについて、それらの片道遅延ＯＷＤ（ｌ，ｋ）の差として、ジッタＪ（ｌ，ｋ）を計算することができる。
【００９３】
ブロック期間Ｔ（ｋ）について、ジッタＪ（ｌ，ｋ）が一度計算されると、ブロック期間Ｔ（ｋ）についての最小ジッタＪｍｉｎ（ｋ）（負数）および最大ジッタＪｍａｘ（ｋ）（正数）が、それらのジッタＪ（ｌ，ｋ）の中の最小および最大として、計算されることができる。
【００９４】
しかしながら、そのような片道遅延測定およびジッタ測定（関連する最大測定および最小測定とともに）は、パケットロスがない、または、少なくとも、Ｖｃと等しい第２のマーキングサブフィールドｂ２を有するパケット、すなわち、時間測定を受けるパケットを含むパケットロスがないときにのみ、有効な結果を提供する。実際に、測定されるべき１つまたは複数のパケットが、ブロック期間Ｔ（ｋ）中に失われる場合、Ｎ＊＊が、Ｎ＊よりも小さいため、そのブロック期間Ｔ（ｋ）についての送信タイムスタンプの配列ＴＳ１（ｌ，ｋ）および受信タイムスタンプの配列ＴＳ２（ｌ，ｋ）に不整合がもたらされる。このことが、失われたパケットに続く全てのパケットについての片道遅延測定の結果、およびそれから派生する全ての時間測定の結果を変える。そのようなパケットについて、受信タイムスタンプが、別のパケットの送信タイムスタンプと比較されるからである。次いで、パケットロスが検知されると、そのような時間測定は、好ましくは廃棄される。好ましくは、時間測定を受けるべきパケットを含むパケットロスを検知するために、ＶｃによってマークされたパケットＰｋｉの送信後（および、図３ａに示すように、各パケットＰｋｉの送信後ではなく）にのみ、送信カウンタＣ１ａおよびＣ１ｂは、１つ増加される。同様に、受信カウンタＣ２ａおよびＣ２ｂは、ＶｃによってマークされたパケットＰｋｉの受信後（および、図４ａに示すように、各パケットＰｋｉの受信後ではなく）にのみ、１つ増加される。次いで、各ブロック期間の満了後、ＶｃによってマークされたパケットＰｋｉに関するパケットロスは、好ましくは、送信タイムスタンプＣ１ａまたはＣ１ｂと受信タイムスタンプＣ２ａまたはＣ２ｂとの間の差として計算される。期間Ｔ（ｋ）に関するパケットロスは、０ではなく、その期間に関する片道遅延測定およびジッタ測定（関連する最大測定および最小測定とともに）は、好ましくは、無効であるものとして廃棄される。いくつかの変形によれば、測定されるべきものとしてマークされたパケットのみに対するパケットロス測定が、パケットフローＰＦ全体に対するパケットロス測定に加えて、実行される。そのような場合、送信カウンタと受信カウンタの２つの別々のセット、すなわち、各ブロック期間中に送信および受信される全てのパケットＰｋｉをカウントするための送信および受信カウンタの第１のセットと、時間測定を受けるパケットとしてマークされたパケットのみをカウントするための送信および受信カウンタの第２のセットとが、実装されることとなる。カウンタの第１のセットを用いて（すなわち、パケットフローＰＦの全体上で）計算されたパケットロスは、パケットフローＰＦの振る舞いを示し、一方、カウンタの第２のセットを用いて（すなわち、測定されるべきパケットとしてマークされたパケットＰｋｉのみの上で）計算されたパケットロスは、好ましくは、時間測定を有効化／無効化するためにのみ使用される。
【００９５】
同様の理由で、ブロック期間Ｔ（ｋ）に発生し、時間測定を受けるパケット間の追い越しを伴う、受信シーケンスエラーもまた、上述のように、片道遅延測定の精度を損なう。そのようなエラーは、パケットロスとは異なり、検知されない恐れがある。一方、上述の最小送信間時間Ｔｘの選択によって、この種の受信シーケンスエラーを有利に回避することができる。
【００９６】
各ブロック期間Ｔ（ｋ）の満了後、管理サーバＭＳは、そのブロック期間Ｔ（ｋ）についての平均片道遅延ＯＷＤａｖ（ｋ）も計算することができる。この目的のために、管理サーバＭＳは、上述のように、ブロック期間Ｔ（ｋ）中に送信され、Ｖｃと等しい第２のマーキングサブフィールドｂ２を有するパケットの片道遅延ＯＷＤ（ｌ，ｋ）を計算することができ、次いで平均を計算する。あるいは、管理サーバＭＳは、まず、以下のように、平均送信タイムスタンプＴＳ１ａｖ（ｋ）を計算することができる。
【００９７】
【数１】
0006279741.tif 000002
【００９８】
次いで、以下のように平均受信タイムスタンプＴＳ２ａｖ（ｋ）を計算することができる。
【００９９】
【数２】
0006279741.tif 000003
【０１００】
次いで、平均受信タイムスタンプＴＳ２ａｖ（ｋ）と平均送信タイムスタンプＴＳ１ａｖ（ｋ）との差として、平均片道遅延ＯＷＤａｖ（ｋ）を計算することができる。特に有利な変形によれば、送信ノードＮ１および受信ノードＮ２それ自体は、好ましくは、平均送信タイムスタンプＴＳ１ａｖ（ｋ）および平均受信タイムスタンプＴＳ２ａｖ（ｋ）をそれぞれ計算し、それらを管理サーバＭＳに送る。管理サーバＭＳは受信したそれら２つのパラメータの差を、単に計算しなければならない。
【０１０１】
必要に応じて、送信ノードＮ１および受信ノードＮ２は、また、ブロック期間Ｔ（ｋ）中に送信される、マークされたパケットＰｋｉ全てに関して、それらの第２のマーキングサブフィールドｂ２の値とは無関係に、平均送信タイムスタンプおよび平均受信タイムスタンプを計算してもよい。これによって、管理サーバＭＳは、ＶｃによってマークされたパケットＰｋｉのサブフロー上の平均片道遅延ＯＷＤａｖに加えて、パケットフローＰＦ全体の平均片道遅延を計算することが可能となる。
【０１０２】
さらに、管理サーバＭＳは、ブロック期間Ｔ（ｋ）に関して、平均ジッタＪａｖ（ｋ）も計算することができる。この目的のために、管理サーバＭＳは、好ましくは、以下のように、平均ワンポイント送信ジッタＯＰＪ１ａｖ（ｋ）を計算する。
【０１０３】
【数３】
0006279741.tif 000004
【０１０４】
次いで、以下のように、平均ワンポイント受信ジッタＯＰＪ２ａｖ（ｋ）を計算する。
【０１０５】
【数４】
0006279741.tif 000005
【０１０６】
次いで、平均ワンポイント受信ジッタＯＰＪ２ａｖ（ｋ）と平均ワンポイント送信ジッタＯＰＪ１ａｖ（ｋ）との差として、平均ジッタＪａｖ（ｋ）を計算する。特に有利な変形によれば、送信ノードＮ１および受信ノードＮ２それ自体は、好ましくは、ブロック期間Ｔ（ｋ）に関して、平均ワンポイント送信ジッタＯＰＪ１ａｖ（ｋ）および平均ワンポイント受信ジッタＯＰＪ２ａｖ（ｋ）をそれぞれ計算し、それらを管理サーバＭＳに送る。管理サーバＭＳは、受信したそれら２つのパラメータの差を、単に計算しなければならない。
【０１０７】
必要に応じて、送信ノードＮ１および受信ノードＮ２は、また、ブロック期間Ｔ（ｋ）中に送信される、マークされたパケットＰｋｉ全てに関して、それらの第２のマーキングサブフィールドｂ２の値とは無関係に、平均ワンポイント送信ジッタおよび平均ワンポイント受信ジッタを計算してもよい。これによって、管理サーバＭＳは、ＶｃによってマークされたパケットＰｋｉのサブフロー上の平均ジッタＪａｖ（ｋ）に加えて、パケットフローＰＦ全体の平均ジッタを計算することが可能となる。
【０１０８】
ブロック期間Ｔ（ｋ）について上述のように計算される、平均片道遅延ＯＷＤａｖ（ｋ）および平均ジッタＪａｖ（ｋ）は、有利に、ブロック期間Ｔ（ｋ）中に発生する可能性のあるパケットロス、特に、時間測定を受けるパケットに影響を及ぼすパケットロスに対する抵抗力がある。実際に、そのようなパケットのうち１つまたは複数が、受信ノードＮ２において受信される前に失われる場合、これは、中間遅延ＯＷＤａｖ（ｋ）および平均ジッタＪａｖ（ｋ）の精度に、わずかに影響を及ぼす。２つの平均タイムスタンプＴＳ１ａｖ（ｋ）およびＴＳ２ａｖ（ｋ）も、２つの平均ワンポイントジッタＯＰＪ１ａｖ（ｋ）およびＯＰＪ２ａｖ（ｋ）も、異なるパケットのカウントＮ＊、Ｎ＊＊に基づいて計算されるからである。
【０１０９】
さらに、上述のように計算される平均片道遅延ＯＷＤａｖ（ｋ）および平均ジッタＪａｖ（ｋ）は、ブロック期間Ｔ（ｋ）中に発生し、時間測定を受けるパケット間の追い越しを伴う、起こり得る受信シーケンスエラーに対する抵抗力がある。実際に、Ｖｃによってマークされたパケットが受信ノードＮ２において受信される順序が、それらが送信ノードＮ１によって送信された順序と異なる場合、平均受信タイムスタンプＴＳ２ａｖ（ｋ）および平均ワンポイント受信ジッタＯＰＪ２ａｖ（ｋ）の値は、変化しない（ジッタの場合、エラーが、ブロック期間Ｔ（ｋ）中に送信される、測定されるべき最初のパケットまたは最後のパケットのいずれかを含む場合にのみ、変化する）。これは、図４ｂのフローチャートを参照して上述したように、ブロック期間中に送信されるいくつかのパケットが、受信シーケンスエラーに起因して後続のブロック期間中に受信される場合にも起こる。
【０１１０】
上記の説明では、片道測定、すなわち、ノードＮ１からノードＮ２に送信されるパケットフローに関する測定に対してのみ、参照された。そのような測定は、ノードＮ１、Ｎ２が同期している場合、すなわち、それらのローカルクロックが、同一の日付および時刻を示す場合にのみ、正確な結果を提供する。一方、多くの適用では、ノードＮ１およびＮ２が同期していない。そのようなシナリオでは、送信タイムスタンプと受信タイムスタンプとの間に予測不可能なオフセットが存在するため、片道測定（特に、片道遅延測定）は、不正確である可能性がある。
【０１１１】
したがって、好ましくは、ノードＮ１およびＮ２が同期していない場合に、ノードＮ１およびＮ２によって提供される送信パラメータおよび受信パラメータは、双方向の測定、特に、往復遅延測定に「匹敵する（ｅｍｕｌａｔｅ）」双方向遅延測定を提供するために使用される。
【０１１２】
特に、そのような実施形態によれば、図４ａおよび図４ｂのフローチャートを参照して上述したようにパケットフローＰＦの受信されたパケットＰｋｉを処理する他に、第２のノードＮ２は、好ましくは、Ｎ２からＮ１に送信されるパケットＰｋｉ’のさらなるパケットフローＰＦ’に関する送信カウンタＣ１（ｋ）’およびＮ’個の送信タイムスタンプの配列ＴＳ１’（ｌ，ｋ）を、各ブロック期間Ｔ（ｋ）の満了後に提供するように、パケットフローＰＦ’も処理する。数Ｎ’（すなわち、各ブロック期間内に時間測定を受ける、フローＰＦ’のパケットの最大数）は、概して、Ｎ（すなわち、各ブロック期間内に時間測定を受ける、フローＰＦのパケットの最大数）とは異なる可能性がある。なぜなら、Ｎ２からＮ１への方向における時間測定についての最小送信間時間Ｔｘ’は、Ｎ１からＮ２への方向における時間測定についての最小送信間時間Ｔｘとは先験的に異なる可能性があるからである。
【０１１３】
各ブロック期間Ｔ（ｋ）の満了後に送信カウンタＣ１（ｋ）’およびＮ’個の送信タイムスタンプの配列ＴＳ１’（ｌ，ｋ）を提供するために、第２のノードＮ２は、基本的に、図３ａおよび図３ｂに示すステップをパケットフローＰＦ’のパケットＰｋｉ’に適用する。
【０１１４】
同様に、図３ａおよび図３ｂのフローチャートを参照して上述したようにパケットフローＰＦの送信されるパケットＰｋｉを処理する他に、第１のノードＮ１は、好ましくはパケットフローＰＦ’に関する、受信カウンタＣ２（ｋ）’およびＮ’個の受信タイムスタンプの配列ＴＳ２’（ｌ，ｋ）を、各ブロック期間Ｔ（ｋ）の満了後に提供するように、第２のノードＮ２から受信されるさらなるパケットフローＰＦ’のパケットＰｋｉ’も処理する。この目的のために、第１のノードＮ１は、基本的に、図４ａおよび図４ｂに示すステップをパケットフローＰＦ’に適用する。
【０１１５】
次いで、各ブロック期間Ｔ（ｋ）の満了後、ノードＮ１およびＮ２は、管理サーバＭＳに、パケットフローＰＦに関するカウンタおよびタイムスタンプの値を送信する他に、パケットフローＰＦ’に関するカウンタおよびタイムスタンプの値も送信する。
【０１１６】
次いで、受信されたタイムスタンプは、好ましくは、双方向遅延測定を実行するために使用される。
特に、平均双方向遅延ＴＷＤａｖ（ｋ）は、好ましくは、上述のように計算されたパケットフローＰＦの平均片道遅延ＯＷＤａｖ（ｋ）と、パケットフローＰＦ’に関するパラメータを使用して同様に計算されたパケットフローＰＦ’の平均片道遅延ＯＷＤａｖ’（ｋ）との合計として、計算される。平均片道遅延が、パケットフローＰＦおよびＰＦ’の全体上で（すなわち、Ｖｃによってマークされたパケットと、Ｖｄによってマークされたパケットとを区別することなく）計算されている場合、トラフィック全体に関する平均双方向遅延も計算されることができる。
【０１１７】
このような平均双方向遅延ＴＷＤａｖ（ｋ）は、Ｎ１およびＮ２の間を行ったり来たりして送信される同一のパケット上では測定されないため、実際には、往復遅延の推定である。しかしながら、それは、反対方向に伝播される２つのパケットフローのうちの、多数のパケットの平均として計算されるため、完全に正確な推定である。本発明者は、上述のように計算された平均双方向遅延ＴＷＤａｖ（ｋ）の精度は、ｐｉｎｇ機能を用いて計算される往復遅延の精度と同等であると、推定した。一方、有利なことに、ｐｉｎｇ機能とは異なり、中間往復遅延の計算は、実トラフィックに対して実行され、いかなる人工パケットの送信も必要としない。
【０１１８】
次いで、最大双方向遅延ＴＷＤｍａｘ（ｋ）および最小双方向遅延ＴＷＤｍｉｎ（ｋ）が、好ましくは計算される。この目的のために、Ｖｃによってマークされた、パケットフローＰＦのパケットの片道遅延ＯＷＤ（ｌ，ｋ）が、上述のように計算される。Ｖｃによってマークされた、パケットフローＰＦ’のパケットの片道遅延ＯＷＤ’（ｌ，ｋ）は、同様の方法で計算される。次いで、双方向遅延ＴＷＤ（ｌ，ｋ）が計算される。各双方向遅延ＴＷＤ（ｌ，ｋ）は、パケットフローＰＦのあるパケットＰｋｉに関する片道遅延ＯＷＤ（ｌ，ｋ）と、パケットフローＰＦ’の対応するパケットＰｋｉ’の片道遅延ＯＷＤ’（ｌ，ｋ）との合計である。好ましくは、対応するパケットＰｋｉ’は、ブロック期間Ｔ（ｋ）中に送信され、Ｖｃによってマークされた、パケットフローＰＦ’のパケット全ての中で、送信タイムスタンプがパケットＰｋｉの受信時間に最も近いパケットとして選択される。
【０１１９】
あるブロック期間中に送信されるパケットフローＰＦのパケットＰｋｉの数は、同一のブロック期間中に送信されるパケットフローＰＦ’のパケットＰｋｉ’の数とは先験的に異なる（かつ、特に、Ｖｃによってマークされたパケットの数は、２つのフローにおいて異なる可能性がある）ため、あるブロック期間Ｔ（ｋ）の終了時に、双方向時間測定を行うのに利用可能な送信タイムスタンプおよび受信タイムスタンプの数は、２つのフローＰＦおよびＰＦ’について同一ではない可能性があることに留意するものとする。特に、双方向遅延測定を行うのに利用可能な片道遅延ＯＷＤ（ｌ，ｋ）およびＯＷＤ’（ｌ，ｋ）の数は、２つのフローＰＦおよびＰＦ’について同一ではないかもしれない。したがって、双方向遅延の計算のため正確に片道遅延を結合するために、タイムスタンプが生成され、片道遅延が計算された、Ｖｃでマークされたパケットの数が最も少ないパケットフローＰＦまたはＰＦ’から開始することが好ましい。例えば、あるブロック期間Ｔ（ｋ）中のパケットフローＰＦ’のパケットレートが、パケットフローＰＦのパケットレートよりも低かったと仮定すると、より大きい数の送信タイムスタンプおよび受信タイムスタンプ（および、したがって計算された片道遅延ＯＷＤ（ｌ，ｋ））が、パケットフローＰＦについて利用できることとなる。そのような場合は、パケットフローＰＦ’について計算された片道遅延の配列ＯＷＤ’（ｌ，ｋ）から開始することが好ましい。特に、計算された片道遅延ＯＷＤ’（ｌ，ｋ）のそれぞれについて、送信時間が、そのパケットの受信時間に最も近い、パケットフローＰＦのパケットＰｋｉの片道遅延ＯＷＤ（ｌ，ｋ）を加算することによって、対応する双方向遅延ＴＷＤ（ｌ，ｋ）が計算される。特に好ましい変形によれば、合致するパケットの受信タイムスタンプと送信タイムスタンプとの差によって超えない閾値は、好ましくは固定である。このことが、ノードＮ１およびＮ２のローカルクロックの、起こり得るドリフトがエラーを増加させることを防止する。合致するパケットの受信タイムスタンプと送信タイムスタンプとの差が、閾値を超える場合、それらの合致するパケットについて計算された双方向遅延は、好ましくは廃棄される。
【０１２０】
反対方向に伝播されるパケットフローＰＦ、ＰＦ’の合致するパケットの各ペアについて、双方向遅延ＴＷＤ（ｌ，ｋ）が一度計算されたら、他の双方向測定が実行されることができる。
【０１２１】
例えば、最大双方向遅延ＴＷＤｍａｘ（ｋ）、最小双方向遅延ＴＷＤｍｉｎ（ｋ）、および平均双方向遅延ＴＷＤａｖ（ｋ）が、計算された双方向遅延ＴＷＤ（ｌ，ｋ）の最大、最小および平均として計算されることができる。
【０１２２】
さらに、好ましい変形によれば、双方向遅延ＴＷＤ（ｌ，ｋ）が（例えば、ＳＬＡによって定義され得る）ある値より低いパケットの割合が、推定されることができる。
上述した時間測定方法は、パケットフローＰＦをブロックに分割するために、第１のマーキングサブフィールドｂ１の値を周期的に変更することを含む。これは、しかしながら限定ではない。実際に、本発明の代替の実施形態によれば、パケットフローＰＦは、第１のマーキングサブフィールドｂ１なしに、ブロックに分割されることができる。特に、好ましい実施形態によれば、送信ノードＮ１は、ブロック期間Ｔ（ｋ）と後続のブロック期間Ｔ（ｋ＋１）との間の境界にマークする、追加のパケットを、周期的にパケットフローＰＦに挿入することができる。例えば、通信ネットワークＣＮが、イーサネットネットワークである場合、追加のパケットは、ＯＡＭフレームであってもよく、ＯＡＭフレームは、ＩＴＵ−Ｔ勧告Ｙ．１７３１（２００８年２月）の８．１章（２５〜２７ページ）によって定義されるように、フレーム損失の測定ができるようにするために現在用いられている。そのような実施形態によれば、パケットロスは、好ましくは、Ｙ．１７３１によって提供されるように、ブロックに分割されるパケットフローに対して計算される。一方、Ｙ．１７３１とは異なり、パケットフローをブロックに分割するＯＡＭパケットに対しては、時間測定は実行されない。そのような実施形態によれば、ブロックに分割されたパケットフローのパケットは、上述のように、時間測定を受けるパケットを、時間測定を受けないパケットと区別するためにマークされる。次いで、時間測定は、時間測定を受けるパケットとしてマークされたパケットに対して実行される。したがって、Ｙ．１７３１によれば、パケットロスは、実トラフィック上で測定される一方、時間測定は、人工トラフィック（すなわち、実トラフィックをブロックに分割するＯＡＭパケット）に対して行われるが、本発明によれば、パケットロス測定および時間測定の双方が、実トラフィックに対して実行される。
【０１２３】
概して、本発明の時間測定方法では、任意の技術によって、時間的に交互に起こる偶数ブロック期間と奇数ブロック期間の識別が可能となることを条件として、パケットフローＰＦは、そのような技術によってブロックに分割されることができる。これにより、偶数および奇数ブロック期間中に送信されるパケットに関する、変数の２つのセット（カウンタおよびタイムスタンプ）を実装することが可能となる。このように、各ブロック期間において、変数の１つのセットが変化する（図３ａおよび４ａのステップ）が、変数の他のセットは、固定値を有し、上述のようにパケットロスおよび時間測定を実行するためにそれに応じて使用される（図３ｂおよび４ｂのステップ）ことができる。
【０１２４】
上記説明では、図３ａ、３ｂのフローチャートの全てのステップが、送信ノードＮ１において実行され、一方、図４ａ、４ｂのフローチャートの全てのステップが、受信ノードＮ２において実行されると仮定されている。これは、しかしながら限定ではない。実際には、いくつかの場合には、ノードにおいて時間測定を実行するための方法を実装することは、望ましくない、または不可能ですらあるかもしれない。これは、例えば、通信ネットワークのノードが、方法のステップを実行するのをサポートするために必要な、基本的な機能性を含まない場合、または、ノードが異なる供給業者のものであり、したがって、それらの再構成が、非常に長く、コストのかかる作業となる場合である。そのような状況において、本発明の代替の実施形態によれば、方法のステップのうちの少なくともいくつかは、以下で詳細に説明されるように、ノードに接続される専用のコンピュータによって実行される。
【０１２５】
第１の代替の実施形態によれば、送信ノードＮ１は、好ましくは、パケットフローＰＦがそれを通じて送信されるポートとは異なるポートを通じて、第１のコンピュータに接続される。同様に、受信ノードＮ２は、好ましくは、パケットフローＰＦがそれを通じて受信されるポートとは異なるポートを通じて、第２のコンピュータＰＣ２に接続される。この第１の実装によれば、通信ネットワークＣＮにおいて送信される実トラフィックのコピーに対して、コンピュータＰＣ１、ＰＣ２によって時間測定が実行される間に、ノードＮ１は、パケットフローＰＦをブロックに分割し、時間測定を受けるパケットを識別するために、パケットＰｋｉにマークする。ノードＮ１において既に利用可能なマーキング機能性は、コンピュータＰＣ１、ＰＣ２によって実行される時間測定をサポートするために利用されることができる。有利なこととして、ＰＣのうち１つが故障している場合、時間測定だけに影響がおよび、一方、パケットフローＰＦの送信には影響が及ばない。
【０１２６】
第２の代替の実施形態によれば、送信ノードＮ１は、好ましくは、パケットフローＰＦがそれを通じて送信されるのと同一のポートを通じて、第１のコンピュータＰＣ１に接続される。同様に、受信ノードＮ２は、好ましくは、パケットフローＰＦがそれを通じて受信されるのと同一のポートを通じて、第２のコンピュータＰＣ２に接続される。言い換えると、第１のコンピュータＰＣ１および第２のコンピュータＰＣ２は、送信ノードＮ１と受信ノードＮ２との間の、パケットフローＰＦがたどるパス上に位置する透過プローブである。この第２の代替実施形態によれば、第１のコンピュータＰＣ１は、図３ａおよび図３ｂのフローチャートの全てのステップを実行するように構成され、一方、第２のコンピュータＰＣ２は、図４ａおよび図４ｂのフローチャートの全てのステップを実行するように構成される。言い換えると、第２の代替実施形態によれば、ノードＮ１、Ｎ２は、時間測定をサポートするいかなる動作も実行せず、時間測定は、完全にコンピュータＰＣ１、ＰＣ２に託される。コンピュータＰＣ１、ＰＣ２は、パケットロスおよび時間測定機能に加えて、基本的に、ノードのトラフィック処理機能の全てを実装する。したがって、時間測定は、ノードＮ１、Ｎ２において利用可能な機能性から独立して実装されてもよい。これにより、異なる種類かつ異なる供給業者のノードを含む通信ネットワークにおいて送信される、実トラフィック上での時間測定を実装することができるようになる。
【０１２７】
さらに、上述の説明では、ノードＮ１、Ｎ２が、それぞれの計算されたパラメータ（パケットカウントおよびタイムスタンプ配列）を管理サーバＭＳに送信し、管理サーバＭＳは、中間遅延および中間ジッタを計算するためにそれらを使用すると仮定している。代替の実施形態によれば、ノードＮ１、Ｎ２のうちの１つによって、パケットロスおよび時間測定が実行されてもよい。したがって、例えば、受信ノードＮ２によって計算が実行されると仮定すると、送信ノードＮ１は、計算されたパラメータを受信ノードＮ１に送信することとなる。そのようなパラメータは、専用のパケット、例えば、ＯＡＭフレームに挿入されてもよい。したがって、そのような実施形態によれば、様々なパケットフローに関する時間測定の計算は、通信ネットワークＣＮのノードにおいて有利に分散される。
【図１】
0006279741.tif 000006
【図２】
0006279741.tif 000007
【図３ａ】
0006279741.tif 000008
【図３ｂ】
0006279741.tif 000009
【図４ａ】
0006279741.tif 000010
【図４ｂ】
0006279741.tif 000011