(57)【要約】通信ネットワークに渡ってボトルネック帯域幅を推定する方法及び装置が提供される。前記方法は、パケットから成る複数のバーストを、ボトルネックリンクを通してサーバによってクライアントに送信するステップと、前記クライアントの端末によって受信された各バーストについて帯域幅サンプルのセットを算出するステップと、前記サーバと前記クライアントとの間の以降のデータパケットの送信のために前記算出された帯域幅サンプルから新たなボトルネック帯域幅を決定するステップとを含む。ボトルネック帯域幅を推定することが可能な装置は、パケットから成る複数のバーストを送信する手段と、各バーストのパケットをボトルネックリンクを介して受信する手段と、各バースト内の最初のパケットと最後のパケットとの間のパケット間の間隔の差に基づいて帯域幅サンプルのセットを生成する手段と、前記生成された帯域幅サンプルから現在のボトルネック帯域幅を決定する手段とを含む。
2004524782.tif 000002
【特許請求の範囲】
【請求項１】
通信システムにおけるサーバとクライアントとの間のボトルネック帯域幅の推定を支援するために利用されるボトルネック帯域幅を推定する方法であって、前記方法は、
前記システムのボトルネックリンクを介して、パケットから成る複数のバーストを前記サーバから前記クライアントに送信するステップと、
前記クライアントによって受信された夫々の前記バーストから帯域幅サンプルのセットを計算するステップと、
前記サーバから前記クライアントへの以降のデータパケットの送信のために、前記計算された帯域幅サンプルから最良のボトルネック帯域幅を決定するステップと、
を有する方法。
【請求項２】
帯域幅寿命の閾値よりも大きなサンプル寿命を持つ帯域幅サンプルを拒絶することにより、前記計算された帯域幅サンプルから不正確な帯域幅サンプルをフィルタリングするステップを更に有する、請求項１に記載の方法。
【請求項３】
前記クライアントシステムのオペレーティングシステム遅延に遭遇した帯域幅サンプルを拒絶することにより、前記計算された帯域幅サンプルから不正確な帯域幅サンプルをフィルタリングするステップを更に有する、請求項１に記載の方法。
【請求項４】
前記オペレーティングシステム遅延に遭遇した前記帯域幅のサンプルが、前記オペレーティングシステム遅延に遭遇する前の理想的なバースト継続時間と前記オペレーティングシステム遅延に遭遇した後の実際のバースト継続時間との間の量の差に基づいて決定される、請求項３に記載の方法。
【請求項５】
再送されたパケットを持つ帯域幅サンプルを拒絶することにより、前記計算された帯域幅サンプルから不正確な帯域幅サンプルをフィルタリングするステップを更に有する、請求項１に記載の方法。
【請求項６】
前記複数のパケットのバーストは、夫々の前記バーストにおいてパケット間遅延が生じさせられるように、前記サーバシステムによって最高の速度で送信される、請求項１に記載の方法。
【請求項７】
前記新たな帯域幅は、低速リンクについては前記計算された帯域幅サンプルのメジアン値に対応する、請求項１に記載の方法。
【請求項８】
前記新たな帯域幅は、高速リンクについては前記計算された帯域幅サンプルの統計的な最頻値に対応する、請求項１に記載の方法。
【請求項９】
マルチチャネルリンクが前記サーバと前記クライアントとの間に展開されている場合、前記新たな帯域幅は、前記計算された帯域幅サンプルの最小の帯域幅に対応する、請求項１に記載の方法。
【請求項１０】
夫々の前記バーストにおいて欠損したパケットを持つ帯域幅サンプルを除去するステップを更に有する、請求項１に記載の方法。
【請求項１１】
夫々の前記バーストについて前記帯域幅サンプルが、夫々の前記バースト内の最初のパケットと最後のパケットとの間のパケット間の間隔の差に基づいて計算される、請求項１に記載の方法。
【請求項１２】
サーバとクライアントとの間の輻輳制御を支援するために利用されるボトルネック帯域幅を推定する方法であって、前記方法は、
パケットから成る複数のバーストを前記サーバによってボトルネックリンクを通して最高の速度で前記クライアントに送信するステップと、
夫々の前記バーストについて帯域幅サンプルのセットを前記クライアントによって計算するステップとを有し、ここで前記ボトルネック帯域幅は、夫々の前記バースト内の最初のパケットと最後のパケットとの間のパケット間の間隔の差であって、前記方法は更に、
所定の基準に従って前記計算された帯域幅サンプルをフィルタリングするステップと、
前記サーバと前記クライアントとの間の以降のデータパケットの送信のために新たなボトルネック帯域幅を決定するステップと、
を有し、前記新たなボトルネック帯域幅の決定は前記計算された帯域幅サンプル及び前記フィルタリングするステップに基づく方法。
【請求項１３】
前記帯域幅サンプルを計算するステップは、
夫々の前記バースト内の最初のパケット及び最後のパケットの受信の開始時間及び終了時間を決定するステップと、
夫々の前記バーストについて２番目のパケット及び最後のパケットのパケットサイズを決定するステップと、
夫々の前記バーストの前記最初のパケットと前記最後のパケットとの間のパケット間の間隔の差によって割られた、前記２番目のパケットと前記最後のパケットとの間のパケットサイズの差に基づき前記帯域幅サンプルを計算するステップと、
を有する、請求項１２に記載の方法。
【請求項１４】
前記複数のパケットのバーストは、夫々の前記バーストにおいてパケット間遅延が生じさせられるように、前記サーバシステムによって最高の速度で送信される、請求項１２に記載の方法。
【請求項１５】
前記計算された帯域幅サンプルをフィルタリングするステップは、帯域幅寿命の閾値より大きなサンプル寿命を持つ帯域幅サンプルを拒絶するステップを有する、請求項１２に記載の方法。
【請求項１６】
前記計算された帯域幅サンプルをフィルタリングするステップは、前記クライアントシステムのオペレーティングシステム遅延に遭遇した帯域幅サンプルを拒絶するステップを有する、請求項１２に記載の方法。
【請求項１７】
前記オペレーティングシステム遅延に遭遇した帯域幅サンプルは、前記オペレーティングシステム遅延に遭遇する前の理想的なバースト継続時間と前記オペレーティングシステム遅延に遭遇した後の実際のバースト継続時間との間の量の差に基づいて決定される、請求項１６に記載の方法。
【請求項１８】
前記計算された帯域幅サンプルをフィルタリングするステップは、再送されたパケットを持つ帯域幅サンプルを拒絶するステップを有する、請求項１２に記載の方法。
【請求項１９】
前記新たな帯域幅は、低速リンクについては前記計算された帯域幅サンプルのメジアン値に対応する、請求項１２に記載の方法。
【請求項２０】
前記新たな帯域幅は、高速リンクについては前記計算された帯域幅サンプルの統計的な最頻値に対応する、請求項１２に記載の方法。
【請求項２１】
マルチチャネルリンクが前記サーバと前記クライアントとの間に展開されている場合、前記新たな帯域幅は、前記計算された帯域幅サンプルの最小の帯域幅に対応する、請求項１２に記載の方法。
【請求項２２】
夫々の前記バースト内に欠損したパケットを持つ帯域幅サンプルを除去するステップを更に有する、請求項１２に記載の方法。
【請求項２３】
サーバとクライアントとの間の輻輳制御を支援するために利用されるボトルネック帯域幅を推定する装置であって、前記装置は、
パケットから成る複数のバーストを送信する手段と、
ボトルネックリンクを介して前記バーストのパケットを受信する手段と、
夫々の前記バースト内の最初のパケットと最後のパケットとの間のパケット間の間隔の差に基づいて帯域幅サンプルのセットを生成する手段と、
前記サーバと前記クライアントとの間の以降のデータパケットの送信のために、前記生成された帯域幅サンプルから新たなボトルネック帯域幅を決定する手段と、
を有する装置。
【請求項２４】
帯域幅寿命の閾値を超える前記生成された帯域幅サンプルの１つを除去することにより前記生成された帯域幅サンプルをフィルタリングする手段を更に有する、請求項２３に記載の装置。
【請求項２５】
前記クライアントのオペレーティングシステム遅延に遭遇した前記生成された帯域幅サンプルの１つを除去することにより、前記生成された帯域幅サンプルをフィルタリングする手段を更に有する、請求項２３に記載の装置。
【請求項２６】
再送されたパケットを持つ前記生成された帯域幅サンプルの１つを除去することにより前記生成された帯域幅サンプルをフィルタリングする手段を更に有する、請求項２３に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインターネットの分野に関する。より詳細には、本発明はインターネットシステムにおけるボトルネック帯域幅をリアルタイムに推定する方法及び装置に関する。
【背景技術】
【０００２】
インターネットは多くの異なるネットワークの非常に多様な接続へと成長し、非常に様々な帯域幅のリンクから成っている。その結果、インターネットの端末間のネットワークパラメータは、決定するのにより複雑なものとなった。加えて、殆どのデータアプリケーションは自身のトラフィックのパラメータを予測することはできない。従って、インターネットシステムは通常、端末間のインターネット経路のボトルネック帯域幅を動的に推定して適応するサービスを必要とする。前記ボトルネック帯域幅は、端末間の経路の最も遅いリンクの速度を表す。
【０００３】
図１は、受信器ベースパケットペア（ＲＢＰＰ）として知られる従来の推定メカニズムを示す。単純さ及び明確さのため、パケットの縦の長さはリンク速度を表し、横の長さは伝送時間を表す。従来のＲＢＰＰ法においては、送信器は、それぞれのサイズがｓ１及びｓ２である、連続した２つのパケット（パケットペアと呼ばれる）を受信器に送信する。これらのパケットが端末間の経路を横断するにつれ、ボトルネックリンクによって分散させられる。前記ボトルネックリンクは前のリンクよりも遅いため、到着したパケット間の間隔は典型的には増加される。その結果、遅いボトルネックリンクを通して各パケットを送信するために、より長い時間が掛かる。残りの経路においては、より遅いボトルネックリンクに遭遇しない限りは、パケット間の新たな間隔ΔＴが維持される。
【０００４】
図１に示されるように、離隔されたパケットの受信に際して、前記受信器はボトルネック帯域幅ＢＢの値を計算する。該値は従来の方法によってｓ２／ΔＴによって算出される。その後前記受信器は、前記計算された推定値ＢＢを伴う特別なパケット、即ち肯定応答パケット（ＡＣＫ）を生成し、該パケットを前記送信器に送り返す。前記送信器は次いで、前記ボトルネック帯域幅ＢＢの推定に基づいて送信レートを調節することができる。
【０００５】
現在展開されている他の先行技術は、基本的に上述のＲＢＰＰ方法に由来するパケットバンチモード（ＰＢＭ）手法に従う。前記ＰＢＭはオフラインモードの間にボトルネック帯域幅を測定することを目的とする。加えて前記ＰＢＭは、一連のフィルタリング及び推定手法を、所定のセッションの間収集された全てのサンプルに適用し、それによって推定の時に準備ができているべき帯域幅のサンプルの全体のセットを取得する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
帯域幅を推定する上述の先行技術は両方とも多くの欠点を持つ。最初に、両方の手法ともパケット圧縮イベントに非常に敏感である。該イベントは、パケットが元々送り出されたときよりも互いに近づいて到着する場合に起こる現象である。従って、両方の方法ともリアルタイムに現存するインターネットに利用された場合、ボトルネック帯域幅の不正確な推定を生成する。加えて、２つ目の方法はオフライン動作のために提案され、推定の時に準備ができているべき帯域幅のサンプルの全体のセットを必要とするため、本方法のリアルタイムな適用は実現可能ではない。更に、両方の方法とも、スケジューリング及び切り換え動作の間のクライアントマシンのＯＳカーネルによって招かれる遅延の変化に対処しない。それ故、検出されたパケット間の間隔ΔＴは、前記パケットが目的のノードに送られる前にＯＳの動作によって著しく歪められている場合があり、従ってボトルネック帯域幅ＢＢの不正確な推定に帰着する。更に、両方の方法とも各パケットに付加されるべき伝送タイムスタンプを必要とするため、それによってオーバヘッドを増加する。加えて、ＲＢＰＰは帯域幅を測定するため特別な探査パケットを送信し、余分な帯域幅のオーバヘッドを招く。
【０００７】
それ故、リアルタイムのアプリケーションにおいてボトルネック帯域幅を正確に測定する改善された方法及びシステムに対するニーズがある。
【課題を解決するための手段】
【０００８】
好適な実施例において本発明は、サーバとクライアントとの間の端末間インターネット経路のリアルタイムのボトルネック帯域幅の推定に関する。従って、ボトルネック帯域幅を推定することが可能であって、パケットから成る複数のバーストをボトルネックリンクを通して前記サーバによって前記クライアントに送信するステップと、前記クライアント端末によって受信された各バーストについて帯域幅のサンプルのセットを算出するステップと、前記サーバと前記クライアントとの間の以降のデータパケットの送信のために前記算出された帯域幅から新たなボトルネック帯域幅を決定するステップとを含む方法が提供される。
【０００９】
本発明は、ボトルネック帯域幅を推定する装置であって、複数のパケットバーストを送信する手段と、ボトルネックリンクを介して各バーストパケットを受信する手段と、各バーストの最初と最後のパケットの間の間隔の差に基づいて帯域幅サンプルのセットを生成する手段と、前記生成された帯域幅サンプルに基づいて新たなボトルネック帯域幅を決定する手段とを含む装置に関する。
【発明を実施するための最良の形態】
【００１０】
以下の説明において、限定ではなく説明の目的で、本発明の完全な理解を提供するため特定の構造、インタフェース、手法等といった特定の詳細が明示される。しかしながら、本発明はこれらの特定の詳細から外れた他の実施例においても実践され得ることは当業者には明らかであろう。更に、明確さのために、本発明に説明を不要な詳細によって不明瞭にしないために、良く知られた装置、回路及び方法の詳細な説明は省かれる。
【００１１】
図２を参照すると、本発明の実施例による、インターネットに渡ってマルチメディアデータを流すサーバ−クライアント型アーキテクチャ１０は、サーバ装置のような第１のシステム１２と、クライアント装置のような第２の装置１４とを含む。サーバ及びクライアントは共に、インターネット・ネットワーク１６のアクセスリンク１８及び２０を介して互いに通信する。本発明の実施例は、以降のデータパケットの送信のために高速で信頼性の高い方法による、端末間の経路の最も遅いリンクの速度を表すボトルネック帯域幅の推定を目的としている。サーバシステム１２は中央処理ユニット２２、汎用メモリ２４及びオペレーティングシステム２６を有する。クライアントシステム１４もまた、数ある中でも中央処理ユニット２８、汎用メモリ３０及びオペレーティングシステム３２を有する。
【００１２】
本発明の実施例によればシステム１０は、先行技術におけるようにボトルネック帯域幅を測定するために特別なパケットペアを送信するのではなく、ボトルネック帯域幅を推定するためにビデオトラフィック（例えばバーストパケット）を利用するサーバシステム１２を提供する。本発明による各バーストパケットのＵＤＰパケットのフォーマットは図３に示される。リアルタイムのアプリケーションにおける各パケットはバースト識別子を担持し、このことは受信器が異なるバーストからパケットを区別することを可能にする。簡単さのため、本発明に係る帯域幅測定を以下、拡張受信器ベースパケットペア（ＥＲＢＰＰ）と呼ぶ。
【００１３】
ここで、本発明の実施例によるリアルタイムな帯域幅推定の実行の詳細な説明は、以下図４（ａ）及び図４（ｂ）と共に説明される。
【００１４】
図４（ａ）を参照すると、本発明に係る帯域幅推定処理は、測定ステップ１００、フィルタリングステップ１２０及び推定ステップ１４０の３つのステップから成る。フィルタリングステップ１２０は、測定ステップ１００において生成された帯域幅サンプルの精度を更に向上するために実行される任意の操作である。初めにサーバシステム１２は、パケットから成る複数のバーストをボトルネックのリンク経路を介してクライアントシステム１４に送信する。ステップ１００において、所定の期間内にクライアントシステム１４において受信された各バーストについての帯域幅が測定され、サンプルのセットＢＭ（ｔ，Δ）に収集される。次いでステップ１２０において、アプリケーション層へのパケットの配信におけるＯＳ関連のスケジューリング遅延によって引き起こされる、起こり得る圧縮又は伸長のため、特定の収集されたサンプルが前記サンプルのセットから除去される。重ねて言うが、フィルタリングステップ１２０は必須ではなく、ネットワークの一般の状況下でより正確な推定が得られ得る場合にのみ実行される。ステップ１４０において、ボトルネック帯域幅の最新でかつ正確な推定である単一の推定値ｂＥＳＴ（ｔ，Δ）が、所定の基準に従って決定される。これらの３つの主要な操作の原理は、以下により詳細に説明される。
【００１５】
図４（ｂ）を参照すると、本発明の実施例により、サーバシステム１２はステップ２００において実際のリアルタイムデータをバーストに含むデータパケットを送信する。ここで、サーバシステム１２がクライアントシステム１４に配信する必要があるパケットは、端末間インターネット経路に沿って移動するパケットが前記ボトルネックリンクにおいてキューに入れられ遅延される状況を保証するため、隣接するリンクの最高伝送速度で送信される。即ち、各バーストのパケットはボトルネックリンクの速度よりも明確に速い速度でサーバシステム１２を離れる必要があり、そのため図５に示すように各バースト中のパケットはクライアントシステム１４に到着する前に伸長され得る。サーバシステム１２は図５において異なるサイズのパケットを利用しているが、サーバシステム１２は本発明の実施例においては等しいサイズのパケットを送信しても良いことに留意されたい。
【００１６】
次いでステップ２１０において、これらのパケットはインターネット・ネットワークを通過して、クライアントシステム１４に到着する。複数のパケットバーストを受信すると、ステップ２２０においてクライアントシステム１４は、クライアントシステム１４において受信された各パケットバーストｉについて対応するボトルネック帯域幅Ｂｉを計算する。このとき、クライアントシステム１４において受信されたバーストのいずれか１つにパケット損失がある場合、ステップ２３０において、欠損したパケットを持つバーストに基づく前記帯域幅サンプルは、帯域幅サンプルのセットＢＭ（ｔ，Δ）のセットに含まれない。このことを達成するため、クライアントシステム１４は図３に示すようなそれぞれのバーストのヘッダ情報を解析し、与えられたバースト内のいずれの欠損したパケットを特定する。加えて、前記クライアントが送信されたパケットを受信した間のパケットのバーストが同様に廃棄される。前記パケットのバースト中に欠損したパケットがなく、前記バーストの半ばに再送信がない場合、ステップ２３０において以下のように帯域幅サンプルＢｉが測定される。
【００１７】
サーバシステム１２から送出されたバーストパケットを受信すると、クライアントシステム１４はパケットペア概念に基づいて対応する帯域幅を測定し、セットＢＭ（ｔ，Δ）中に収集されたサンプルのデータベースを保持する。ここでｔは現在の時間を表し、Δはサンプルの「寿命」を表す。即ちクライアントシステム１４は、各バースト内の最初のパケットと最後のパケットとの間のパケット間の間隔を利用して前記ボトルネック帯域幅のサンプルを計算する。図５を参照すると、ｉ番目のバーストがｎｉ個のパケットから成り、ｓｉ（ｋ）バイトを含む前記バーストのｋ番目のパケットが時間ｔｉ（ｋ）において受信された場合、クライアントシステム１４は以下の式に従って各バーストについて部分的な帯域幅サンプルｂｉ（ｋ）を計算する：
【数１】
2004524782.tif 000003
ここで２≦ｋ≦ｎｉであり、δ（ｋ）＝ｔｉ（ｋ）−ｔｉ（１）である。また各サンプルｂｉ（ｋ）はバーストｉの最初のｋ（ｋ≧２）個のパケットを利用した帯域幅の推定値を表す。ここで、バースト持続時間〔ｔｉ（ｋ）−ｔｉ（１）〕はボトルネックリンクに渡るバーストの１番最初のパケットの送信時間を含まないため、帯域幅の計算において２番目（ｊ＝２）のパケットから和が始まる。好ましくは、パケットの数ｎｉは各バーストについて少なくとも３個のパケットと設定されるが、この数は必須ではない。ＥＲＢＰＰ法においては、バーストｉに基づく帯域幅Ｂｉの各サンプルは、最後の部分的なサンプルに等しく、Ｂｉ＝ｂｉ（ｎｉ）である。マルチチャネルリンク環境においては（ここではＥＲＢＰＰ＋法と呼ぶ）、サンプルＢｉは部分的なサンプルｂｉ（ｋ）の最小値として選択され、全てのｋについてＢｉ＝∀ｋ：ｍｉｎ（ｂｉ（ｋ））である。更に、少なくともｍ個のパケットを持つバーストのみを考慮するＥＲＢＰＰ法はＥＲＢＰＰｍと呼ばれる。ｍの提案される値は少なくとも３である。同様に少なくともｍ個のパケットを解析するＥＲＢＰＰ＋法はＥＲＢＰＰｍ＋と呼ばれる。同一の値ｍ＝３がＥＲＢＰＰｍ＋に提案される。時間ｔにおいてＥＲＢＰＰｍ又はＥＲＢＰＰｍ＋を利用してサンプルＢｉが計算されると、該サンプルは収集されたサンプルのセットＢＭ（ｔ，Δ）に追加され、Δ時間単位より長くない時間の間保持される。
【００１８】
従ってクライアントシステム１４は、先行技術において必要とされるように各パケットの正確な送信時間ではなく、異なるバースト中のパケット間のだけを識別する必要がある。それ故、各バケットヘッダにおいて必要とされるフィールドは１ビット（０又は１）のバースト識別子及びパケットシーケンス番号のみである。加えて、本発明に係る方法は、パケットバーストの形式における実際のビデオデータが帯域幅を計算するために利用されるため、従来技術におけるような別個のパケットペアの送信に関連する帯域幅のオーバヘッドを持たない。パケットバースト中のパケットの数は、ストリーミング速度及び所望のバースト性に依存して２パケット以上であっても良いことに留意されたい。加えて、多くのストリーミングメディアのパケットサイズは一定ではないため、インパルス（即ちパケットバースト）毎のパケットの数は変化する。
【００１９】
次いでステップ２４０がオペレータの裁量で実行される。このフィルタリングステップは、ボトルネック帯域幅の新たな推定に先だって、生成されたサンプルＢＭ（ｔ，Δ）の精度を改善するため、クライアントシステム１４によって選択的に実行されることができる。簡単のため、前記フィルタリング処理を受けた後の新たな結果の帯域幅サンプルは、以下ＢＩ（ｔ，Δ）で示される。本発明の実施例によれば、ボトルネック帯域幅推定の精度を改善するために利用される２つのタイプのフィルタリング手法がある。最初の手法は、サンプルの寿命Δを所定の時間に維持することにより生成されたサンプルＢＭ（ｔ，Δ）をフィルタリングする。かくして、サンプル寿命閾値を超えるいずれの生成された帯域幅サンプルも、ステップ２４２においてＢＭ（ｔ，Δ）から除去される。好適な実施例においては、推奨される値Δは３０秒と３００秒との間に渡る。
【００２０】
一方２つ目の手法は、アプリケーション層へのパケットの配信において、クライアントシステム１４のＯＳカーネル内のランダム的で決定的な遅延（即ち処理スケジューリング遅延、データリンク層における低分解能クロックによって引き起こされる遅延）によって発生させされるエラーの量の減少に関連する。図６はこのタイプの望ましくない遅延、即ちパケット間の間隔を変化させるパケット圧縮及びパケット伸長を示す。ここで前記パケット伸長は、ボトルネックリンクによって発生させられたパケット間遅延よりも小さい間隔を持つ、クライアントシステム１４に到着したバースト中のパケットを参照する。このタイプの圧縮は例えば、ペアの最初のパケットがボトルネックルータを通過した後に何らかの高速インタフェースにおいて大きなキュー遅延に遭遇し、２つ目のパケットが同一のインタフェースにおいてキュー遅延に遭遇しない又は小さいキュー遅延に遭遇することによって前記最初のパケットに追いつく場合に発生し得る。図６に示すように、バーストｉの最初のパケット（半ばのバースト）はクライアントシステム１４のＯＳによって、同一のバーストの２つ目のパケットがカーネルによって受信されるまで遅延される。次いでこれらパケットは共にスケジューリングされアプリケーション層に配送される。このような場合において、アプリケーションはバーストｉの始まりを誤って識別し、ＥＲＢＰＰｍ帯域幅の計算において（ΔＴｉの代わりに）より小さなバースト長さΔｔｉを利用し得る。前記パケット伸長は、ボトルネックリンクによって理想的にもたらされたものよりも大きな間隔でクライアントシステム１４に到着したパケットを参照する。前記伸長はボトルネックルータの通過の前又は後に発生し得る。その結果、クライアントシステム１４は、ボトルネックリンクの速度ではなく前記伸長されたパケットペアに基づいて帯域幅を誤って測定し得る。
【００２１】
前記圧縮又は伸長のイベントによって引き起こされ得る不正確な推定を除去するため、本発明の実施例はステップ２４４において、圧縮及び／又は伸長によって引き起こされる不正確な帯域幅推定を収集されたサンプルＢＭ（ｔ，Δ）から除去するフィルタリング処理を提供する。前記フィルタリング操作の原理は、各受信されたバーストｉについての観測されたバースト継続時間Ｄｂｉ及びＤｂｉ−１の理想的な値Ｄｂとの比較に基づく。即ち、ＯＳ関連の遅延に遭遇した不正確な帯域幅サンプルは、ＯＳ遅延に遭遇する前の理想的なバースト継続時間と、前記ＯＳ遅延に遭遇した後の実際のバースト継続時間との差分の量に基づき決定される。図６を参照すると、各バーストの長さはＤｂ時間単位の固定された継続時間を持つ（即ち、１つのバーストはＤｂ時間単位毎に生成される）。送信の間に著しい圧縮が起こらない場合は、図６のグラフの上と下の間のそれぞれのバースト長さは一致する。かくして、これらが一致しない場合、又はバースト間隔Ｄｂｉ（実際のバースト継続時間）がＤｂ（理想的なバースト継続時間）からα％以上ずれる場合、圧縮／伸長イベントが推定される。言い換えると、ステップ２４４において、｜１−Ｄｂｉ／Ｄｂ｜≦αでかつ｜１−Ｄｂｉ−１／Ｄｂ｜≦αの場合、対応する帯域幅サンプルがセットＢＭ（ｔ，Δ）内に保持され、そうでなければ除去される。αの提案される値は、例えば５％と４０％との間に渡る。簡単のため、α％フィルタリングを用いるＥＲＢＰＰｍ法は以下ＥＲＢＰＰｍ−αと呼ぶ。
【００２２】
最後にステップ２６０において、本発明によるクライアントシステム１４は、時間ｔにおけるボトルネックリンクの現在の値を表す単一の推定値ｂＥＳＴ（ｔ）を決定することにより、フィルタリングされたサンプルのセットＢＩ（ｔ，Δ）（ファイリングステップ２４０が実行されない場合、セットＢＩ（ｔ,Δ）はセットＢｍ（ｔ,Δ）に等しいことに留意されたい）から新たなリアルタイムの帯域幅を決定する。ここで、ｂＥＳＴ（ｔ）の推定は２つの手法、即ちセットＢＩ（ｔ，Δ）のメジアン手法又は統計的手法に分割される。メジアン値はステップ２６４において低速リンク（１２８Ｋｂｐｓより下）に適用され、一方で統計的な最頻値（mode）はステップ２６２において高速リンク（１２８Ｋｂｐｓより上）に適用される。セットの統計的な最頻値は、該セットの確率分布関数（ＰＤＦ）ｆ（ｘ）が最大値に到達するような値ｘである。実際には、前記ＰＤＦは有限のセットについては不明であり、通常前記セットのヒストグラムによって置き換えられる。セットのヒストグラムは前記セットに含まれる値のセットを等しいサイズのビン（bin）に分割し、各ビンに入る前記セットからのサンプルの百分率を計算することにより計算される。次いで最も高い百分率を持つビンの中央が前記セットの最頻値として選択される。本発明については、前記ビンのサイズとして提案される値は１Ｋｂｐｓと５Ｋｂｐｓとの間である。従って、推定値ｂＥＳＴ（ｔ）は、セットＢＩ（ｔ，Δ）のメジアン又はモードの利用を通して、任意の必要な時間ｔにおいて、輻輳制御又は他の目的のために利用されることができる。更に、マルチチャネルリンクがサーバシステム１２とクライアントシステム１４との間に展開される（又は前記クライアントによって展開されることが確信される）場合、前記クライアントはＥＲＢＰＰｍ法よりむしろＥＲＢＰＰｍ＋法を利用する（フィルタリングステップ２４０が実行されない場合、セットＢＩ（ｔ，Δ）はセットＢＭ（ｔ，Δ）に等しいことに留意されたい）。
【００２３】
要約すると、本発明は、現存する帯域幅推定アルゴリズムに対して著しい性能の改善を達成する、新たな帯域幅推定メカニズムを提供する。デジタル通信リンクに渡ってボトルネック帯域幅を推定するための好適な実施例がかくして説明されたが、本システムのある程度の利点が達成されたことは当業者には明確であろう。以上の説明は本発明の実施例としてのみ解釈されるべきである。従って当業者は、本発明の基本原理又は範囲から何ら逸脱することなくこの実施例と同様の機能を提供する代替の構成を容易に考え付くことができる。
【図面の簡単な説明】
【００２４】
【図１】従来の帯域幅推定メカニズムを示す。
【図２】本発明による帯域幅推定システムの例示的な構造の模式図である。
【図３】本発明による、サーバ端末におけるユーザ・データグラム・プロトコル（ＵＤＰ）パケットのフォーマットを示す。
【図４（ａ）】本発明によるボトルネック帯域幅推定器の動作を示すフローチャートである。
【図４（ｂ）】本発明によるボトルネック帯域幅推定器の推定の更なる詳細を示すフローチャートである。
【図５】本発明によるバーストのパケットの帯域幅を測定する特有のメカニズムを示す。
【図６】本発明によるパケット圧縮イベントに対処する特有のメカニズムを示す。
【図１】
2004524782.tif 000004
【図３】
2004524782.tif 000005
【図５】
2004524782.tif 000006
【図６】
2004524782.tif 000007
【国際公開パンフレット】
2004524782.tif 000008
2004524782.tif 000009
2004524782.tif 000010
2004524782.tif 000011
2004524782.tif 000012
2004524782.tif 000013
2004524782.tif 000014
2004524782.tif 000015
2004524782.tif 000016
2004524782.tif 000017
2004524782.tif 000018
2004524782.tif 000019
2004524782.tif 000020
2004524782.tif 000021
2004524782.tif 000022
2004524782.tif 000023
2004524782.tif 000024
2004524782.tif 000025
【国際公開パンフレット（コレクトバージョン）】
2004524782.tif 000026
【国際調査報告】
2004524782.tif 000027
2004524782.tif 000028
2004524782.tif 000029