(57)【要約】【課題】本発明はパッシブ測定を実施する場合に必要とされる記憶容量や通信回線の伝送帯域を低減することが可能なパケット伝送品質測定方法及び装置を提供することを目的とする。【解決手段】送信するパケットから特定位置のビット列ｘを抽出する手順１３と、抽出されたビット列ｘのハッシュ関数ｈ（ｘ）の値を計算する手順１４と、ハッシュ関数計算値を送信側計算値リストとして記録する手順１５と、受信したパケットの中から前記特定位置のビット列ｘを抽出する手順２３と、抽出されたビット列ｘについて前記ハッシュ関数ｈ（ｘ）の値を計算する手順２４と、受信側のハッシュ関数計算値を受信側計算値リストとして記録する手順２５と、前記送信側計算値リストに記録された各要素と前記受信側計算値リストに記録された各要素とを比較して一致の有無を調べる手順２６とを設けた。【選択図】      図１
2004242197.tif 000002
【特許請求の範囲】
【請求項１】
所定の通信網を介して第１の通信装置と第２の通信装置とが接続されている場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定方法であって、
前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手順と、
前記送信側ビット列抽出手順で抽出されたビット列ｘを有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手順と、
前記送信側ハッシュ値計算手順で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手順と、
前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から前記特定位置のビット列ｘを抽出する受信側ビット列抽出手順と、
前記受信側ビット列抽出手順で抽出されたビット列ｘについて前記ハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手順と、
前記受信側ハッシュ値計算手順で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手順と、
前記送信側計算値リストに記録された各要素と前記受信側計算値リストに記録された各要素とを比較して一致の有無を調べるリスト比較手順と
を設けたことを特徴とするパケット伝送品質測定方法。
【請求項２】
所定の通信網を介して第１の通信装置と第２の通信装置とが接続されている場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、
前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手段と、
前記送信側ビット列抽出手段で抽出されたビット列ｘを有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手段と、
前記送信側ハッシュ値計算手段で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手段と、
前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から前記特定位置のビット列ｘを抽出する受信側ビット列抽出手段と、
前記受信側ビット列抽出手段で抽出されたビット列ｘについて前記ハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手段と、
前記受信側ハッシュ値計算手段で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手段と、
前記送信側計算値リストに記録された各要素と前記受信側計算値リストに記録された各要素とを比較して一致の有無を調べるリスト比較手段と
を設けたことを特徴とするパケット伝送品質測定装置。
【請求項３】
所定の通信網を介して第１の通信装置と第２の通信装置とが接続される場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、
前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手段と、
前記送信側ビット列抽出手段で抽出されたビット列ｘを入力して有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手段と、前記送信側ハッシュ値計算手段で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手段と
を設けたことを特徴とするパケット伝送品質測定装置。
【請求項４】
所定の通信網を介して第１の通信装置と第２の通信装置とが接続される場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、
前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から特定位置のビット列ｘを抽出する受信側ビット列抽出手段と、
前記受信側ビット列抽出手段で抽出されたビット列ｘを入力して有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手段と、前記受信側ハッシュ値計算手段で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手段と
を設けたことを特徴とするパケット伝送品質測定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信網上に存在する２つのノード間で伝送されるパケットに関する伝送品質、すなわちパケット損失数やパケット遅延を測定するために用いられるパケット伝送品質測定方法及び装置に関する。
【０００２】
【従来の技術】
パケット通信網の２ノード間でパケットの伝送品質を測定する方法としては、例えば非特許文献１の従来技術が知られている。このような測定方法は、アクティブ測定とパッシブ測定との２種類に区分される。
アクティブ測定の場合には、送信点で測定専用のパケットをパケット通信網に挿入し、受信点で測定装置が測定専用パケットを取り出し、同パケットの属性によって伝送品質尺度を計数する。
【０００３】
パッシブ測定の場合には、ユーザが発信したパケットを送信点と受信点の両方で観測及び記録し、これらを照合して伝送品質尺度を計数する。
アクティブ測定では、測定専用のパケットを使用し、ユーザが発信及び受信するパケット自体は測定しないので、ユーザが現実に体験する伝送品質を正確に反映した測定ができないという欠点がある。
【０００４】
また、アクティブ測定では測定専用パケットをパケット通信網に挿入する必要があるので、この測定専用パケット自体がパケット通信網におけるトラヒック負荷に影響を与え、伝送品質を変化させてしまい、測定結果を不正確にする。
さらに、アクティブ測定では測定専用パケットによる負荷によって、測定中はユーザが体験する伝送品質が劣化してしまう可能性もある。
【０００５】
一方、パッシブ測定では、ユーザが発信及び受信したパケットのみを観測するので、ユーザが現実に体験した伝送品質を反映した測定結果が得られる。また、測定専用パケットを用いないため、パケット通信網の負荷に影響を及ぼすことはなく、測定結果の精度劣化や伝送品質劣化も発生しない利点がある。
【０００６】
例えばパケット損失を測定する場合、従来のパッシブ測定では次に示すような方法で測定を行っている。
パケット通信網の２点間でユーザパケットの損失を計数するには、測定期間中に送信点が受信点に向けて送信したパケットの個数と、受信点が送信点から受信したパケットの個数とを比較し、その差を求めればよい。
【０００７】
但し、このような測定を行うためには受信点で受信したユーザパケットのうち、測定期間中に送信されたものをそれ以外のものから弁別する必要がある。
従って、送信点で測定期間中に送信したパケットの複製を全て記録する。また、受信点では測定期間中のユーザパケットで最初に受信点に届くものの到着時刻より早い時点から受信するパケットの複製を記録し、測定期間中のユーザパケットで最後に受信点に届くものの到着時刻よりも遅い時点まで受信するパケットの複製の記録を続ける。
【０００８】
この場合、受信点での記録内容は測定期間以前に送信されたパケットや測定期間以降に送信されたパケットを一般には含んでいる。受信点で記録が完了したならば、送信点のパケットの記録を受信点に送るか、受信点の記録を送信点に送るか、あるいは両方の記録を共通の第三の場所に送るかして、両方の記録の照合を行う。
【０００９】
この照合は、送信点で記録されたパケットが受信点で記録されたパケット群に含まれているかどうかを調べ、合まれていなければそのパケットを損失と判断することで行う。損失と判断された回数が測定期間中のパケット損失数である。
【非特許文献１】
「Ｐａｓｓｉｖｅ／Ａｃｔｉｖｅ  測定を組み合わせた速度変換型品質測定技術の特性と定式化について」会田雅樹，三好直人著，信学技報，ＩＮ２００２−１７，２００２年６月２０日発行，ｐ３１〜３７。
【００１０】
【発明が解決しようとする課題】
非特許文献１に示されているように、従来技術のパッシブ測定によりパケット損失や遅延時間等の伝送品質を測定する場合には、極めて大きな記憶領域と測定データ伝送用の伝送帯域が必要になるという問題がある。以下、この問題点について説明する。
【００１１】
従来のパケット損失測定の手順において、送信点と受信点で記録するパケット複製のデータは、送信したデータ及び受信したデータと同じ量であるので、多くの記憶容量を必要とする。特に広帯域の通信アプリケーションを長時間測定すると記録するデータのサイズは極めて大きくなり、実用上深刻な問題となる。
例えば、送信点と受信点との間でユーザの使用する通信アプリケーション（プログラム）が平均１０Ｍｂ／ｓのビットレートに相当するパケットを伝送する場合に測定期間を１時間とすれば、送信点及び受信点の各通信端末がそれぞれ４Ｇｂｙｔｅ以上のデータを記録する必要があり、現在の記憶装置の容量に対して無視できない大きさになる。
【００１２】
また、パケット損失などを測定するためには、送信点及び受信点の各通信端末がそれぞれ記録した膨大なデータを照合するために、これらのデータを１箇所に集める必要がある。膨大なデータを短時間で１箇所に集めるためには、通信回線に大容量の伝送帯域が必要になる。大容量の伝送帯域が用意できない場合には、データを照合箇所に集めるために長時間を費やしてしまい、実用性がない。
【００１３】
以上説明したように、ユーザが体験する伝送品質を正確に測定するために従来のパッシブ測定を実施する場合には、送信点及び受信点の通信端末に大きな記憶領域が必要となり、しかも記録したデータを１箇所に集めるために大きな伝送帯域が必要であった。
従って、容量の大きい記憶装置や伝送帯域の大きい通信回線を用意することになり、システムのコストが上昇するのは避けられず、実現が難しいという問題点があった。しかし、ユーザが体験する伝送品質を正確に測定するためにパッシブ測定を実施するのが望ましい。
【００１４】
本発明は、パッシブ測定を実施する場合に、必要とされる記憶容量や通信回線の伝送帯域を低減することが可能なパケット伝送品質測定方法及び装置を提供することを目的とする。
【００１５】
【課題を解決するための手段】
請求項１は、所定の通信網を介して第１の通信装置と第２の通信装置とが接続されている場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定方法であって、前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手順と、前記送信側ビット列抽出手順で抽出されたビット列ｘを有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手順と、前記送信側ハッシュ値計算手順で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手順と、前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から前記特定位置のビット列ｘを抽出する受信側ビット列抽出手順と、前記受信側ビット列抽出手順で抽出されたビット列ｘについて前記ハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手順と、前記受信側ハッシュ値計算手順で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手順と、前記送信側計算値リストに記録された各要素と前記受信側計算値リストに記録された各要素とを比較して一致の有無を調べるリスト比較手順とを設けたことを特徴とする。
【００１６】
請求項１においては、パケットの送信側では送信するパケットの特定位置から取り出したビット列ｘをハッシュ関数ｈ（ｘ）を用いて有限の整数値に変換した値を求め、それを送信側計算値リストとして記録する。また、受信側では受信したパケットの前記特定位置から取り出したビット列ｘをハッシュ関数ｈ（ｘ）を用いて有限の整数値に変換した値を求め、それを受信側計算値リストとして記録する。
【００１７】
そして、送信側又は受信側あるいは他の管理装置において、送信側計算値リストに記録された各要素と受信側計算値リストに記録された各要素とを比較して一致の有無を調べる。例えば伝送途中でパケットの損失が発生すると、送信側計算値リストに記録された特定の要素と一致する要素が受信側計算値リストに記録されないので、不一致が検出される。従って、パケットの損失などを表す伝送品質を測定することができる。
【００１８】
また、送信側計算値リスト及び受信側計算値リストに記録される各要素は、パケットの一部分を表すビット列ｘに対応するハッシュ関数ｈ（ｘ）の計算値であるため、各要素のビット数は元のパケットと比べて遙かに小さくなる。
従って、パケットをそのまま送信側計算値リスト及び受信側計算値リストに記録する場合と比べ、システムに必要とされる記憶容量や回線の伝送帯域が大幅に削減される。
【００１９】
請求項２は、所定の通信網を介して第１の通信装置と第２の通信装置とが接続されている場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手段と、前記送信側ビット列抽出手段で抽出されたビット列ｘを有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手段と、前記送信側ハッシュ値計算手段で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手段と、前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から前記特定位置のビット列ｘを抽出する受信側ビット列抽出手段と、前記受信側ビット列抽出手段で抽出されたビット列ｘについて前記ハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手段と、前記受信側ハッシュ値計算手段で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手段と、前記送信側計算値リストに記録された各要素と前記受信側計算値リストに記録された各要素とを比較して一致の有無を調べるリスト比較手段とを設けたことを特徴とする。
【００２０】
請求項２のパケット伝送品質測定装置を用いることにより、請求項１と同様の結果が得られる。
請求項３は、所定の通信網を介して第１の通信装置と第２の通信装置とが接続される場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、前記第１の通信装置が第２の通信装置に送信するパケットの中から特定位置のビット列ｘを抽出する送信側ビット列抽出手段と、前記送信側ビット列抽出手段で抽出されたビット列ｘを入力して有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する送信側ハッシュ値計算手段と、前記送信側ハッシュ値計算手段で求められた値を送信側計算値リストとして記録する送信側計算値リスト記録手段とを設けたことを特徴とする。
【００２１】
請求項３のパケット伝送品質測定装置を用いることにより、請求項２と同様の装置を実現できる。
請求項４は、所定の通信網を介して第１の通信装置と第２の通信装置とが接続される場合に、第１の通信装置から第２の通信装置に伝送されるパケットの伝送品質を測定するためのパケット伝送品質測定装置であって、前記第１の通信装置から送信され第２の通信装置が受信したパケットの中から特定位置のビット列ｘを抽出する受信側ビット列抽出手段と、前記受信側ビット列抽出手段で抽出されたビット列ｘを入力して有限の整数値に写像するハッシュ関数ｈ（ｘ）の値を計算する受信側ハッシュ値計算手段と、前記受信側ハッシュ値計算手段で求められた値を受信側計算値リストとして記録する受信側計算値リスト記録手段とを設けたことを特徴とする。
【００２２】
請求項４のパケット伝送品質測定装置を用いることにより、請求項２と同様の装置を実現できる。
【００２３】
【発明の実施の形態】
（第１の実施の形態）
本発明のパケット伝送品質測定方法及び装置の１つの実施の形態について図１〜図５を参照して説明する。この形態は全ての請求項に対応する。
【００２４】
図１は通信システムの構成例（１）を示すブロック図である。図２は送信側端末における計算値リスト作成処理を示すフローチャートである。図３は受信側端末における計算値リスト作成処理を示すフローチャートである。図４は比較計数処理部の動作（１）を示すフローチャートである。図５は確率に関する実験結果を示すグラフである。
【００２５】
この形態では、請求項２〜請求項４の第１の通信装置，第２の通信装置，送信側ビット列抽出手段，送信側ハッシュ値計算手段，送信側計算値リスト記録手段，受信側ビット列抽出手段，受信側ハッシュ値計算手段，受信側計算値リスト記録手段及びリスト比較手段は、それぞれ送信側端末１０，受信側端末２０，ビット列抽出部１３，ハッシュ関数計算部１４，記憶装置１５，ビット列抽出部２３，ハッシュ関数計算部２４，記憶装置２５及び比較計数処理部２６に相当する。
【００２６】
この形態では、図１に示すように送信側端末１０と受信側端末２０とが通信網３０を介して接続されている通信システムに本発明を適用する場合を想定している。通信網３０としては、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネット網のようにパケットを伝送可能なネットワークを想定している。従って、通信網３０には図示しない他の通信端末も接続される。
【００２７】
また、この形態では図１に示す送信側端末１０から受信側端末２０に向けてパケットを伝送する場合の伝送品質を測定する場合を想定している。
図１に示すように、送信側端末１０には通信アプリケーション１１，通信インタフェース１２，ビット列抽出部１３，ハッシュ関数計算部１４，記憶装置１５及びデータ転送処理部１６が備わっている。また、受信側端末２０には通信インタフェース２１，通信アプリケーション２２，ビット列抽出部２３，ハッシュ関数計算部２４，記憶装置２５及び比較計数処理部２６が備わっている。
【００２８】
なお、図１には必要最小限の機能だけを示してある。実際には、例えばパソコンのように通信機能を備える端末に図１に示された特別な機能を付加することにより送信側端末１０や受信側端末２０を構成できる。
通信アプリケーション１１及び２２は、各端末のユーザが使用するプログラムであり、通信網３０を介してパケット（ユーザパケット）の伝送を行う。
【００２９】
ビット列抽出部１３は、通信アプリケーション１１が通信アプリケーション２２に対して送信するパケット（ユーザパケット）を取り込み、そのパケットの特定位置のビット列ｘを抽出する。特定位置とは、予め定めた開始ビット位置ｆから終了ビット位置Ｆまでの範囲（ｆ＜Ｆ）を表す。従って、抽出されたビット列ｘは元のパケットの一部分であり、パケットよりもビット数が小さい情報になる。
【００３０】
ハッシュ関数計算部１４は、ビット列抽出部１３が抽出したビット列ｘを入力し、予め定めたハッシュ関数ｈ（ｘ）を用いて有限の整数値を算出する。実際のハッシュ関数ｈ（ｘ）としては、例えば次のような関数を用いればよい。
ｈ（ｘ）＝Ｘ  ｍｏｄ  Ａ
Ｘ：ビット列ｘを整数値として解釈した値
Ａ：正の整数（定数）
ハッシュ関数計算部１４は、パケット毎に入力されるそれぞれのビット列ｘについてハッシュ関数ｈ（ｘ）の計算値を求める。求められた計算値は、記憶装置１５に送信側計算値リストＳとして追加記録される。なお、送信側計算値リストＳは測定処理を開始する前に空に初期化される。
【００３１】
データ転送処理部１６は、記憶装置１５に蓄積された送信側計算値リストＳを受信側端末２０に対して転送する。この例では、送信側計算値リストＳをパケットと同じ通信網３０を介して転送している。但し、測定対象のパケットを伝送する通信網３０とは別の通信回線を用いて送信側計算値リストＳを転送する場合も考えられる。
【００３２】
一方、受信側端末２０のビット列抽出部２３は、送信側端末１０が送信し受信側端末２０内の通信インタフェース２１を介して通信アプリケーション２２が受け取るパケットと同じ情報を取り込み、そのパケットの特定位置のビット列ｘを抽出する。
この特定位置は、送信側端末１０のビット列抽出部１３が抽出するビット列ｘの位置と同一である。従って、通信網３０上でパケット損失などの問題が生じない限り、ビット列抽出部２３が抽出するビット列ｘは、ビット列抽出部１３が抽出するビット列ｘと同じ内容になる。
【００３３】
ハッシュ関数計算部２４は、ビット列抽出部２３が抽出したビット列ｘを入力し、予め定めたハッシュ関数ｈ（ｘ）を用いて有限の整数値を算出する。ハッシュ関数計算部２４が用いるハッシュ関数ｈ（ｘ）は、送信側端末１０のハッシュ関数計算部１４が用いるハッシュ関数ｈ（ｘ）と同一の内容にする。
従って、同じビット列ｘに対してハッシュ関数計算部１４が求める計算値とハッシュ関数計算部２４が求める計算値とは同一になる。
【００３４】
ハッシュ関数計算部２４は、パケット毎に入力されるそれぞれのビット列ｘについてハッシュ関数ｈ（ｘ）の計算値を求める。求められた計算値は、記憶装置２５に受信側計算値リストＲとして追加記録される。なお、受信側計算値リストＲは測定処理を開始する前に空に初期化される。
比較計数処理部２６は、記憶装置２５に記録された受信側計算値リストＲの各要素（ビット列ｘから求められたハッシュ関数の計算値）と送信側端末１０からデータ転送処理部１６によって転送された送信側計算値リストＳの各要素とをそれぞれ比較して、パケット損失数を計数する。
【００３５】
図１に示す通信システムにおいて実際にパケット伝送品質を測定する場合には、送信側端末１０のユーザ及び受信側端末２０のユーザはそれぞれ事前に通信アプリケーション１１及び通信アプリケーション２２を起動する。従って、通信アプリケーション１１から通信アプリケーション２２に対してユーザパケットの伝送が開始される。
【００３６】
この後で、送信側端末１０上では図２に示す計算値リスト作成処理が開始され、受信側端末２０上では図３に示す計算値リスト作成処理が開始される。図２，図３に示すように、送信側端末１０が実行する計算値リスト作成処理と受信側端末２０が実行する計算値リスト作成処理とはほとんど同じである。
図２及び図３の内容について以下に説明する。
【００３７】
まず、送信側端末１０においてはステップ５１で送信側計算値リストＳの内容を空に初期化し、受信側端末２０においてはステップ６１で受信側計算値リストＲの内容を空に初期化する。
また、測定期間中の送信側端末１０からのパケットが受信側端末２０に到着する前に、受信側端末２０では受信側計算値リストＲの更新処理、すなわちステップ６２以降の処理を開始する。
【００３８】
送信側端末１０からのパケットが受信側端末２０に到着すると、図３のステップ６３からステップ６４に進む。この場合、受信側端末２０が受信したパケットは通信アプリケーション２２に入力されるが同時にビット列抽出部２３にも入力される。
ステップ６４では、ビット列抽出部２３は受信したパケットから第ｆビットから第Ｆビット（ｆ＜Ｆ）までの範囲のビット列ｘを抽出してそれをハッシュ関数計算部２４に与える。
【００３９】
ステップ６５では、ハッシュ関数計算部２４は入力されたビット列ｘからハッシュ関数ｈ（ｘ）に従って有限の整数値を計算値として算出する。
ステップ６６では、記憶装置２５はハッシュ関数計算部２４が求めた計算値を受信側計算値リストＲに追加する。
一方、送信側端末１０は測定期間の始まりから送信側計算値リストＳの更新処理を開始する。すなわち、図２のステップ５２以降の処理を開始する。
【００４０】
つまり、送信側端末１０の通信アプリケーション１１がユーザパケットを受信側端末２０に送信するときに、ステップ５３からステップ５４の処理に進む。
ステップ５４では、ビット列抽出部１３は送信するパケットから第ｆビットから第Ｆビット（ｆ＜Ｆ）までの範囲のビット列ｘを抽出してそれをハッシュ関数計算部１４に与える。ここで、ビット列抽出部１３がパケットから抽出するビット列ｘの位置は、ビット列抽出部２３が抽出する位置と同じにする必要がある。
【００４１】
ステップ５５では、ハッシュ関数計算部１４は入力されたビット列ｘからハッシュ関数ｈ（ｘ）に従って有限の整数値を計算値として算出する。
ステップ５６では、記憶装置１５はハッシュ関数計算部１４が求めた計算値を送信側計算値リストＳに追加する。
測定期間が終了すると、送信側端末１０は送信側計算値リストＳの更新を終了する。また、測定期間中のパケットの中で最後に受信側端末２０に到着するパケットが到着すると予想される時刻よりも十分に経過した時点で、受信側端末２０は受信側計算値リストＲの更新を終了する。
【００４２】
この後で、送信側端末１０のデータ転送処理部１６は、照合のために送信側計算値リストＳを通信網３０あるいは図示しない専用の通信チャネルを介して受信側端末２０に転送する。
受信側端末２０においては、送信側端末１０からの送信側計算値リストＳを受信すると比較計数処理部２６が起動し、図４に示す処理を実行してパケット損失数を集計する。
【００４３】
図４に示す処理の内容について以下に説明する。
最初のステップ７１では、パケット損失数を表す変数ｎを初期値０に定める。次のステップ７２では、送信側計算値リストＳから１つの要素ｓ（計算値：整数値）を選択し、この要素ｓを送信側計算値リストＳから削除する。
ステップ７３では、受信側計算値リストＲの各要素ｒ（計算値：整数値）を参照して前のステップ７２で選択された要素ｓと一致する要素ｒの有無を調べる。
【００４４】
ここで、一致する要素ｒがある場合には、要素ｓを発生する元になったパケットは送信側端末１０から受信側端末２０に到着しているものと考えられる。従って、一致する要素ｒがある場合にはステップ７４で一致する要素ｒを受信側計算値リストＲから削除する。
また、一致する要素ｒが受信側計算値リストＲに存在しない場合には、要素ｓを発生する元になったパケットは送信側端末１０から受信側端末２０に到着していないものと考えられる。従って、一致する要素ｒがない場合にはステップ７６に進み、変数ｎの値を１だけ増加させる。
【００４５】
ステップ７２以降の処理は、送信側計算値リストＳが空になるまで繰り返し実行される。送信側計算値リストＳが空になるとステップ７５からステップ７７に進み、変数ｎの値をパケット損失数として出力する。
ところで、上記のような測定処理を行う場合には、受信側計算値リストＲに含まれる各要素ｒには、測定期間の開始前及び測定期間の終了以降に送信側端末１０が送出したパケットによって生成された余分な要素が混入している。
【００４６】
パケット損失の測定を正確に行うためには、このような測定時間外に現れたパケットから生成された受信側計算値リストＲの余分な要素と、送信側計算値リストＳを構成する各要素ｓとが一致する確率を極力小さくする必要がある。
つまり、測定時間外に現れたパケットから生成された受信側計算値リストＲの余分な要素と、送信側計算値リストＳを構成する要素ｓとが一致した場合には、その要素ｓを生成したパケットの損失が生じた場合であっても、パケットが正常に伝送されたと誤判定されるためである。
【００４７】
このような誤判定が生じると、パケット損失数を過小評価することになる。誤判定を減らして測定精度を高めるためには、ビット列抽出部１３，２３が抽出するビット位置及びビット数並びにハッシュ関数計算部１４，２４が用いるハッシュ関数ｈ（ｘ）を適切に決定する必要がある。
いずれにしても、上記のような方法でパケット損失数を測定する場合には、従来と比べて、必要な記憶容量及び伝送帯域を大幅に削減できる。
【００４８】
以下、この性質を説明する。ビット列抽出部１３，２３の抽出するビット位置は、通信網３０の通過中に変化せず、かつ、測定期間外に送出したパケットによるハッシュ関数出力値と送信側計算値リストＳの要素とが一致しないように、パケット毎に異なる値をとるような部分とする必要がある。
このようなパケット毎に異なる値をとるビット位置は通信アプリケーション１１，２２の性質に依存するため、ある程度広い範囲をとる必要がある。しかし、抽出するのはパケットの一部でよいので、パケット全体よりは短い長さのビット列に変換されることになる。
【００４９】
このビット列を有限の整数を出力するハッシュ関数に入力したとき、ハッシュ関数が出力する整数値は、入力されたビット列よりもはるかに短いビット列で表現することが可能である。
この結果、送信側計算値リストＳ及び受信側計算値リストＲに記録される各要素は元のパケットそのものに比べ著しく短いビット長で表現される。従って、パケット全体を記録する従来技術に比べ、記憶領域を大幅に低減でき、かつ照合のため記録を１箇所に集めるのに必要な伝送帯域も顕著に低減可能となる。
【００５０】
次に、測定期間外に送出したパケットにより生成される受信側計算値リストＲの要素と送信側計算値リストＳの要素とが一致しないという条件を満たしながら、記憶領域と伝送帯域を従来技術よりも大幅に低減可能なことを実験の結果を用いて説明する。
【００５１】
この実験では、ＬＡＮに接続された２つのノード（通信端末など）の間で通信アプリケーションを利用して伝送された７１３５１個のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）パケットを使い、そのうちの２０００個及び４０００個を選んでこれらを測定期間外に送信されたパケットと解釈し、残りの６９３５１個及び６７３５１個を測定期間中に送信されたパケットと解釈した。パケット長の平均値は５５８．８バイト（４４７０．４ビット）である。
【００５２】
７１３５１個の全パケットから受信側計算値リストＲを作り、測定期間中に送信されたパケットと解釈したパケットから送信側計算値リストＳを作り、送信側計算値リストＳの要素と測定期間外に送信されたパケットによるハッシュ関数出力値の一致する確率について評価した。
但し、ビット列抽出部１３，２３は各パケットの第１６１ビットから第３２０ビットまでの範囲のビット列ｘを抽出する場合を想定した。
【００５３】
また、ハッシュ関数ｈ（ｘ）については、抽出したビット列ｘを整数値として解釈した値Ｘと与えられた正の整数Ａにより（ｈ（ｘ）＝Ｘ  ｍｏｄ  Ａ）と定義した。この定義より、Ａはハッシュ関数出力値の上界である。
実験の結果は図５に示す通りである。図５において、横軸はハッシュ関数出力の上界値Ａを表し、横軸は送信側計算値リストＳの１要素当たりの測定期間外に送出したパケットによるハッシュ関数出力値との一致確率を表している。
【００５４】
図５の内容から分かるように、ハッシュ関数出力値の範囲を広げると共に一致確率は減少するが、ハッシュ関数の上界値Ａを１０７にすれば一致確率を１０−３以下にでき、パケット損失数を十分正確に計数できる。
一方、上界値がこの値のとき、ハッシュ関数出力値は３バイト（２４ビット）あれば表現できる。これはパケットの長さに対し約１８６分の１のデータ量である。従って、パケット全体を記録する従来技術と比べて、記録するパケット１個当たりの記憶領域及び伝送帯域も約１８６分の１に削減できる。このため、従来技術の大きな記憶領域と伝送帯域を必要とするという問題点は解決できる。
【００５５】
なお、図１に示す通信システムにおいて実際にパケット伝送品質の測定開始及び終了を制御する場合には、例えば次に示すような手順で制御すればよい。
（１）オペレータの操作により、受信側端末２０において受信側計算値リストＲの更新処理（図３のステップ６２以降）を開始する。
（２）受信側端末２０は所定の制御信号を用いて記録開始を送信側端末１０に通知する。
【００５６】
（３）送信側端末１０は受信側端末２０からの記録開始通知を受信すると送信側計算値リストＳの更新処理（図２のステップ５２以降）を開始する。
（４）送信側端末１０は予め定めた測定時間を経過した後で送信側計算値リストＳの更新処理を終了し、所定の制御信号を用いて記録終了を受信側端末２０に通知する。
【００５７】
（５）送信側端末１０は送信側計算値リストＳを受信側端末２０に転送する。
（６）受信側端末２０は送信側端末１０からの記録終了の通知を受信してから所定時間（遅延変動に対して十分に長い時間）を経過した後で受信側計算値リストＲの更新処理を終了する。
（７）受信側端末２０は送信側端末１０から転送された送信側計算値リストＳの内容とそれ自身が作成した受信側計算値リストＲの内容とを図４に示す処理によって照合しパケット損失数を求める。
【００５８】
なお、通信網３０に多数の端末が接続されているような状況においては、測定対象のパケット以外のパケットが他の端末から受信側端末２０に入力される可能性がある。
しかし、パケットには一般的に送信元アドレスや送信先アドレスの情報が含まれているので、送信元アドレスを予め定めた送信側端末１０のアドレスと照合し、送信先アドレスを受信側端末２０のアドレスと照合することにより測定対象のパケットとそれ以外のパケットとを区別できる。また、アドレス以外にプロトコルの違いやポート番号などを調べてパケットを区別することも考えられる。
【００５９】
（第２の実施の形態）
本発明のパケット伝送品質測定方法及び装置の１つの実施の形態について図６及び図７を参照して説明する。図６は通信システムの構成例（２）を示すブロック図である。図７は比較計数処理部の動作（２）を示すフローチャートである。この形態は第１の実施の形態の変形例であり、パケット損失数の代わりにパケットの伝送遅延を測定する場合を想定している。図６において図１と対応する要素は同一の符号を付けて示してある。第１の実施の形態と同一の部分については以下の説明を省略する。
【００６０】
図６に示すように、送信側端末１０にはタイムスタンプ生成部１７が追加してあり、受信側端末２０にはタイムスタンプ生成部２７が追加してある。タイムスタンプ生成部１７及び２７は、現在時刻に同期した情報すなわち日時のデータ（タイムスタンプ）を生成する。
送信側端末１０における計算値リスト作成処理及び受信側端末２０における計算値リスト作成処理は、それぞれ図２及び図３とほぼ同じである。但し、送信側端末１０においてはタイムスタンプ生成部１７が生成したタイムスタンプ、すなわちパケットの送信時刻をハッシュ関数計算部１４の計算値とともに記憶装置１５の送信側計算値リストＳに記録する。
【００６１】
同様に、受信側端末２０においてはタイムスタンプ生成部２７が生成したタイムスタンプ、すなわちパケットの到着時刻をハッシュ関数計算部２４の計算値とともに記憶装置２５の受信側計算値リストＲに記録する。
つまり、この形態では送信側計算値リストＳの各要素としてハッシュ関数計算部１４の計算値とタイムスタンプ（送信時刻）とを１組にして記録し、受信側計算値リストＲの各要素としてハッシュ関数計算部２４の計算値とタイムスタンプ（到着時刻）とを１組にして記録する。
【００６２】
第１の実施の形態と同様に、測定期間が終了すると送信側端末１０のデータ転送処理部１６は記憶装置１５に記録された送信側計算値リストＳの内容を受信側端末２０に転送する。
受信側端末２０の比較計数処理部２６Ｂは、記憶装置２５に記録された受信側計算値リストＲと送信側端末１０から転送された送信側計算値リストＳの内容とを用いて図７に示すような処理を実施してパケット遅延データを生成する。
【００６３】
図７に示す処理の内容について以下に説明する。
ステップ８１では、送信側計算値リストＳから１つの要素ｓを選択し、この要素ｓを送信側計算値リストＳから削除する。この形態では、送信側計算値リストＳの各要素ｓは、ハッシュ関数計算部１４の計算値（整数値）ｓ１とタイムスタンプｓ２との組で構成されている。
【００６４】
同様に、受信側計算値リストＲの各要素ｒは、ハッシュ関数計算部２４の計算値（整数値）ｒ１とタイムスタンプｒ２との組で構成されている。
ステップ８２では、受信側計算値リストＲの各要素ｒを参照して前のステップ８１で選択された要素ｓの計算値ｓ１と一致する要素ｒ１の有無を調べる。
条件を満たす要素ｒが存在する場合には、ステップ８２からステップ８３に進み、該当する要素ｒ，ｓについて次式により伝送遅延を求め保存する。
【００６５】
ｔｄ＝ｒ２−ｓ２
また、ステップ８４で該当する要素ｒを受信側計算値リストＲから削除する。なお、要素ｓ１と一致する要素ｒ１が受信側計算値リストＲの中で見つからない場合には、要素ｓ１を生成したパケットが失われたとみなせるので、伝送遅延の計算は省略する。
【００６６】
ステップ８２以降の処理は、送信側計算値リストＳの内容が空になるまで繰り返し実行される。これらの処理によって、測定期間中に送信側端末１０から送信され受信側端末２０に到達した全てのパケットに関する伝送遅延データが得られる。これらの伝送遅延データを用いることにより、遅延の分散や最大遅延等の統計量を算出できる。
【００６７】
この形態の処理を実行する場合においても、必要な記憶領域及び伝送帯域を従来技術に比べ著しく削減できる。
従来技術で伝送遅延を測定するには送信点と受信点でパケット自体とタイムスタンプを記録する必要がある。
タイムスタンプは１０バイト（８０ビット）以下で正確に表現可能と考えられる。一方、パケットのデータ長は前述のように数百バイト以上であるので、パケットとタイムスタンプの記録に必要なパケット１個当たりの記憶領域も数百バイト以上となる。
【００６８】
これに対して、本発明ではハッシュ関数出力値の表現は数バイトで可能であり、１パケット毎にリストに記録されるハッシュ関数出力値とタイムスタンプの組は高々十数バイトで表現できる。従って、第１の実施の形態と同様に従来技術と比べて記憶領域及び伝送帯域を大幅に低減できる。
（第３の実施の形態）
本発明のパケット伝送品質測定方法及び装置の１つの実施の形態について図８を参照して説明する。図８は通信システムの構成例（３）を示すブロック図である。
【００６９】
この形態は第１の実施の形態の変形例であり、図８に示すように専用の通信管理装置３５を用いる場合を想定している。
図８において図１と対応する要素は同一の符号を付けて示してある。第１の実施の形態と同一の部分については以下の説明を省略する。
送信側端末１０の構成は第１の実施の形態と同一であるが、データ転送処理部１６は作成した送信側計算値リストＳを通信管理装置３５に送信する。
【００７０】
受信側端末２０には、比較計数処理部２６の代わりにデータ転送処理部２８が設けてある。データ転送処理部２８は、受信側計算値リストＲの更新処理が終了した後で、受信側計算値リストＲを通信管理装置３５に転送する。
送信側端末１０における計算値リスト作成処理の内容は図２と同一であり、受信側端末２０における計算値リスト作成処理の内容は図３と同一である。通信管理装置３５の比較計数処理部３７は、送信側端末１０から受け取った送信側計算値リストＳ及び受信側端末２０から受け取った受信側計算値リストＲに基づいて図４と同じ処理を実行する。
【００７１】
従って、第１の実施の形態と同様にパケット損失数を求めることができる。
図８に示す通信システムにおいて実際にパケット伝送品質の測定開始及び終了を制御する場合には、例えば次に示すような手順で制御すればよい。
（１）通信管理装置３５から受信側端末２０に対して受信側計算値リストＲの更新処理（図３のステップ６２以降）の開始を指示する。
【００７２】
（２）受信側端末２０は受信側計算値リストＲの更新処理を開始した後で、処理の開始を通信管理装置３５に通知する。
（３）通信管理装置３５は受信側端末２０からの開始通知を受信した後で、送信側端末１０に対して記録開始を指示する。
（４）送信側端末１０は通信管理装置３５からの記録開始通知を受信すると送信側計算値リストＳの更新処理（図２のステップ５２以降）を開始する。
【００７３】
（５）送信側端末１０は予め定めた測定時間を経過した後で送信側計算値リストＳの更新処理を終了し、記録終了を通信管理装置３５に通知する。
（６）通信管理装置３５は送信側端末１０からの記録終了の通知を受信してから所定時間（遅延変動に対して十分に長い時間）を経過した後で、受信側端末２０に対して記録の終了を指示する。
【００７４】
（７）受信側端末２０は、通信管理装置３５からの記録終了指示を受信すると受信側計算値リストＲの更新処理を終了し、記録終了を通信管理装置３５に通知する。
（８）通信管理装置３５は、受信側端末２０からの記録終了の通知を受信すると、記録データを１箇所に集めて照合処理を行うことを送信側端末１０及び受信側端末２０に指示する。
【００７５】
（９）送信側端末１０と受信側端末２０は、通信管理装置３５からの記録データ照合処理指示を受信すると、それぞれ送信側計算値リストＳと受信側計算値リストＲを通信管理装置３５に送出する。
（１０）通信管理装置３５は送信側計算値リストＳと受信側計算値リストＲを受信したならば、比較計数処理部３７により図４の処理を行う。
【００７６】
【発明の効果】
以上説明したように、本発明によれば、従来技術と比べて遙かに少ない記憶領域と伝送帯域でパッシブ測定による伝送品質測定が可能になる。従って、記憶領域が小さい安価な装置と、比較的狭帯域の伝送路を使い、ユーザが体験する伝送品質を正確に測定することが可能となる。
【図面の簡単な説明】
【図１】通信システムの構成例（１）を示すブロック図である。
【図２】送信側端末における計算値リスト作成処理を示すフローチャートである。
【図３】受信側端末における計算値リスト作成処理を示すフローチャートである。
【図４】比較計数処理部の動作（１）を示すフローチャートである。
【図５】確率に関する実験結果を示すグラフである。
【図６】通信システムの構成例（２）を示すブロック図である。
【図７】比較計数処理部の動作（２）を示すフローチャートである。
【図８】通信システムの構成例（３）を示すブロック図である。
【符号の説明】
１０  送信側端末
１１  通信アプリケーション
１２  通信インタフェース
１３  ビット列抽出部
１４  ハッシュ関数計算部
１５  記憶装置
１６  データ転送処理部
１７  タイムスタンプ生成部
２０  受信側端末
２１  通信インタフェース
２２  通信アプリケーション
２３  ビット列抽出部
２４  ハッシュ関数計算部
２５  記憶装置
２６  比較計数処理部
２７  タイムスタンプ生成部
２８  データ転送処理部
３０  通信網
３５  通信管理装置
３６  通信インタフェース
３７  比較計数処理部
Ｓ  送信側計算値リスト
Ｒ  受信側計算値リスト
【図１】
2004242197.tif 000003
【図２】
2004242197.tif 000004
【図３】
2004242197.tif 000005
【図４】
2004242197.tif 000006
【図５】
2004242197.tif 000007
【図６】
2004242197.tif 000008
【図７】
2004242197.tif 000009
【図８】
2004242197.tif 000010