(57)【特許請求の範囲】
【請求項１】
ネットワークを通してフィードバックを提供する方法であって、
前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送ることと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信することと
を備え、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、方法。
【請求項２】
前記受信された情報に基づいて、前記ネットワークの少なくとも１つのパスの前記性能についての１つ以上の算出を行うことをさらに備える、請求項１に記載の方法。
【請求項３】
前記１つ以上の算出に少なくとも部分的に基づいて、前記ネットワークの１つ以上のパスに送られるトラフィック量を調整することをさらに備える、請求項２に記載の方法。
【請求項４】
前記第１のデバイスによって、前記ネットワークの前記第１のパスに沿ったトラベル時間をラウンドトリップ時間から差し引くことで、前記ネットワークの第２のパスに沿った送信のトラベル時間を算出することをさらに備え、前記ラウンドトリップ時間は、前記ネットワークの前記第２のパスに沿った前記送信の前記トラベル時間と、前記第１のパスに沿った前記トラベル時間との合計である、請求項１に記載の方法。
【請求項５】
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、請求項１に記載の方法。
【請求項６】
前記受信された情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、請求項１に記載の方法。
【請求項７】
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、請求項６に記載の方法。
【請求項８】
前記受信された情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、請求項１に記載の方法。
【請求項９】
ネットワークを通してフィードバックを提供するシステムであって、
前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送り、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信する
ように構成されたプロセッサを備え、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、システム。
【請求項１０】
前記プロセッサはさらに、
前記受信された情報に基づいて、前記ネットワークの少なくとも１つのパスの前記性能についての１つ以上の算出を行うように構成される、請求項９に記載のシステム。
【請求項１１】
前記プロセッサはさらに、
前記１つ以上の算出に少なくとも部分的に基づいて、前記ネットワークの１つ以上のパスに送られるトラフィック量を調整するように構成される、請求項１０に記載のシステム。
【請求項１２】
前記プロセッサはさらに、前記ネットワークの前記第１のパスに沿ったトラベル時間をラウンドトリップ時間から差し引くことで、前記ネットワークの第２のパスに沿った送信のトラベル時間を算出するように構成され、前記ラウンドトリップ時間は、前記ネットワークの前記第２のパスに沿った前記送信の前記トラベル時間と、前記第１のパスに沿った前記トラベル時間との合計である、請求項９に記載のシステム。
【請求項１３】
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、請求項９に記載のシステム。
【請求項１４】
前記受信された情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、請求項９に記載のシステム。
【請求項１５】
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、請求項１４に記載のシステム。
【請求項１６】
前記受信された情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、請求項９に記載のシステム。
【請求項１７】
ネットワークを通してフィードバックを提供するためのコンピュータプログラムを記録したコンピュータ読取可能な記録媒体であって、
コンピュータに、前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送らせるためのコードと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記コンピュータに、前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信させるためのコードと
を記録し、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、コンピュータ読取可能な記録媒体。
【請求項１８】
ネットワークを通してフィードバックを提供する方法であって、
前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信することと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送ることと
を備え、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、方法。
【請求項１９】
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、請求項１８に記載の方法。
【請求項２０】
前記送られた情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの１つ以上のパスに関する、請求項１８に記載の方法。
【請求項２１】
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、請求項２０に記載の方法。
【請求項２２】
前記送られた情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、請求項１８に記載の方法。
【請求項２３】
ネットワークを通してフィードバックを提供するシステムであって、
前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信し、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送る
ように構成されたプロセッサを備え、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、システム。
【請求項２４】
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、請求項２３に記載のシステム。
【請求項２５】
前記送られた情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、請求項２３に記載のシステム。
【請求項２６】
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、請求項２３に記載のシステム。
【請求項２７】
前記送られた情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、請求項２３に記載のシステム。
【請求項２８】
ネットワークを通してフィードバックを提供するためのコンピュータプログラムを記録したコンピュータ読取可能な記録媒体であって、
コンピュータに、前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信させるためのコードと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記コンピュータに、前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送らせるためのコードと
を記録し、
前記フィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む、コンピュータ読取可能な記録媒体。
【請求項２９】
第１のパスについての第１のメッセージと第２のパスについての第２のメッセージをアグリゲートメッセージへとアグリゲートする、前記情報は前記アグリゲートされたメッセージを含むことをさらに備える、請求項１に記載の方法。
【請求項３０】
前記第２のデバイスはモバイルデバイスであり、前記第２のデバイスは前記第１のメッセージと前記第２のメッセージを前記アグリゲートメッセージへとアグリゲートする、請求項２９に記載の方法。
【請求項３１】
前記情報は前記ネットワークの前記第１のパスと第２のパスについてのフィードバック情報を備える、請求項１に記載の方法。
【請求項３２】
前記第１のデバイスは、基地局であり、前記第２のデバイスはモバイルデバイスである、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は一般的に、多重パスを有するネットワークにおけるフィードバックプロトコルのためのシステムおよびプロセスに関する。
【発明の概要】
【０００２】
本発明の様々な実施形態は、ネットワークと通してフィードバックを提供するための方法、システム、またはコンピュータプログラム製品を提供する。例示的な実施形態にしたがって、ネットワークの第１のデバイスは、少なくとも２つの送信を、ネットワークの第２のデバイスに送る。少なくとも２つの送信のうち一層多くの送信の２つ以上は各々、ネットワークの異なるパスを通して送られる。第１のデバイスは、第２のデバイスから、ネットワークの少なくとも２つのパスの性能についての情報を受信する。この情報は、ネットワークの１つのパスを通して送られる。様々なさらなる実施形態において、第１のデバイスは、受信された情報に基づいて、ネットワークの少なくとも１つのパスの性能について少なくとも１つの算出を行う。さらなる実施形態において、ネットワークの１つ以上のパスに送られるトラフィック量は、少なくとも１つの算出に少なくとも部分的に基づいて調整される。
【０００３】
いくつかの実施形態において、第１のデバイスは、ネットワークの第１のパスに沿ったトラベル時間をラウンドトリップ時間から差し引くことで、ネットワークの第２のパスに沿った送信のトラベル時間を算出する。ラウンドトリップ時間は、ネットワークの第２のパスに沿った送信のトラベル時間と、第１のパスに沿った送信のトラベル時間との合計である。
【０００４】
本発明のいくつかの実施形態にしたがって、情報が送られる１つのパスは、転送補助器が提供されていない、第２のデバイスと第１のデバイスとの間のダイレクトパスである。
【０００５】
いくつかの実施形態において、受信された情報は、第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、このバッファ占有率は、ネットワークの少なくとも１つのパスに関する。さらなる実施形態において、少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む。
【０００６】
いくつかの実施形態にしたがって、受信された情報は、ネットワークの１つ以上のパスを通る送信についての人工的な遅延の値または範囲を含まない。
【０００７】
他の例示的な実施形態において、ネットワークの第２のデバイスは、ネットワークにおいて、少なくとも２つの送信を第１のデバイスから受信する。少なくとも２つの送信のうち２つ以上は各々、ネットワークの異なるパスから受信される。第２のデバイスは、ネットワークの１つのパスを通して、第１のデバイスに、ネットワークのパスの性能についての情報を送る。
【０００８】
本発明のいくつかの実施形態にしたがって、情報が送られる１つのパスは、転送補助器が提供されていない、第２のデバイスと第１のデバイスとの間のダイレクトパスである。
【０００９】
いくつかの実施形態において、受信された情報は、第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、このバッファ占有率は、ネットワークの少なくとも１つのパスに関する。さらなる実施形態において、少なくとも１つのパスに関する少なくとも１つのバッファ占有率についての情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む。
【００１０】
いくつかの実施形態によれば、受信された情報は、ネットワークの１つ以上のパスを通る送信についての人工的な遅延の値または範囲を含まない。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の実施形態にしたがった例示的なネットワーク環境の高度な概要を示す。
【図２】図２は、本発明の実施形態にしたがった例示的なネットワーク環境を示す。
【図３】図３は、本発明の実施形態にしたがった、ソース側の実現のためのプロセスのフロー図を示す。
【図４】図４は、本発明の実施形態にしたがった、アグリゲータ側の実現のためのプロセスのフロー図を示す。
【図５】図５は、本発明の実施形態にしたがった、フィードバックの呼出フローについてのプロセスのフローチャートを示す。
【図６Ａ】図６Ａは、本発明の実施形態にしたがった、制御プレーンのプロトコルスタックの図式表現を示す。
【図６Ｂ】図６Ｂは、本発明の実施形態にしたがった、制御プレーンのプロトコルスタックの図式表現を示す。
【図６Ｃ】図６Ｃは、本発明の実施形態にしたがった、制御プレーンのプロトコルスタックの図式表現を示す。
【図７】図７は、本発明の実施形態にしたがった、図２に対応する例示的なネットワーク環境を示し、それは、実時間転送制御プロトコル（ＲＴＣＰ）を利用する。
【図８】図８は、本発明の実施形態にしたがった、補助器を有する、ＲＴＣＰ報告のためのプロセスのフローチャートを示す。
【図９】図９は、本発明の実施形態にしたがった、多重パスオーバレイネットワークシグナリングメッセージのパケットヘッダの図式表現を示す。
【発明を実施するための形態】
【００１２】
添付の図面に関連して以下に示される詳細な説明は、本開示の様々な態様の説明として意図されたものであり、本開示が実施されうる唯一の態様を表すものとして意図されてるわけではない。本開示で説明される各態様は、単に本開示の例証または例示として提供され、必ずしも、他の態様より好ましいまたは有利であると解釈されるべきでない。詳細な説明は、本開示の完全な理解を提供するための特定の詳細を含む。しかしながら、本開示がこれらの特定の詳細なしに実施されうることは、当業者には明らかであろう。いくつかの事例では、本開示の概念を曖昧にしないために、周知の構造およびデバイスがブロック図形式で示されている。単に便宜上および明確さのために、頭文字および他の記述的な用語が使用されうるが、それらは本開示の範囲を限定することを意図したものではない。
【００１３】
より詳細に以下に説明されるように、本発明の実施形態は、パケットをデバイスに送る際に選択することとなる多重送信パスが存在するネットワークについてのフィードバックプロトコルのためのシステムおよびプロセスに関する。パスは、ネットワークのソースノードと、ネットワークの宛先ノードとの間の終端間ルートである。いくつかの実施形態において、パスは、ソースと宛先との間の１つ以上の仲介ノードを経由するか、いずれの仲介ノードも経由しない。いくつかの実施形態において、パスは、各セグメントが２つのノードを接続するように１つ以上のセグメントを含む。
【００１４】
図１は、ある実施形態にしたがったシステム１を示す。システム１は、ソースデバイス１０およびアグリゲータデバイス１２を含み、それらは、ネットワークのノードである。データパケットは、ソースデバイス１０とアグリゲータデバイス１２との間で通信される。いくつかの実施形態において、ソースデバイス１０は、ワイヤレス通信のためのルータなどであるがそれに限定されるわけではない通信デバイスである。いくつかの実施形態において、アグリゲータデバイス１２は、モバイル電話などであるがそれに限定されるわけではない通信デバイスである。
【００１５】
実施形態は、プロセッサを有する１つ以上のリモートコンピュータへの論理接続を使用してネットワーク環境で実施されうる。当業者は、そのようなネットワークコンピューティング環境のネットワークノード（ソースデバイス１０およびアグリゲータデバイス１２などであるがそれに限定されない）および補助デバイスが、多くのタイプのコンピュータ、スマートフォン、データフォン、パーソナルコンピュータを含むワイヤレス通信デバイス、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラマブルな家庭用電化製品（consumer electronics）、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、ハブ、ルータ、基地局、等を包含しうることを認識するであろう。本発明の実施形態はまた、通信ネットワークを通してリンクされた（ハードワイヤードリンク、ワイヤレスリンク、あるいはハードワイヤードまたはワイヤレスリンクの組み合わせのいずかれによって）ローカルおよびリモートの処理デバイスによってタスクが実行される分散型コンピューティング環境で実施されうる。分散型コンピューティング環境では、ローカルおよびリモート両方のメモリ記憶デバイスにプログラムモジュールが位置付けされうる。
【００１６】
ソースデバイス１０は、１つ以上の処理ユニット１４またはプロセッサを含む１つ以上の汎用コンピュータと、システムメモリ１７と、システムメモリ１７を含む様々なシステムコンポーネントを処理ユニット１４に結合するシステムバス１５とを含むがそれらに制限されない電子コンピューティングデバイスを含む。システムメモリ１７は、ランダムアクセスメモリ（ＲＡＭ）を含むがそれらに制限されない、電子データを記憶するための任意の適切な１つのデバイスまたは複数のデバイスを含む。１つ以上のコンピュータは、磁気ハードディスクから読み取るかそれに書き込むための１つ以上の固体記憶デバイスおよび／または磁気ハードディスクドライブ（ＨＤＤ）、取り外し可能な磁気ディスクに読み取るかそれに書き込むための磁気ディスクドライブ、および、コンパクトディスク読取専用（ＣＤ−ＲＷ）または他の光学媒体、フラッシュメモリ、等といった取り外し可能な光ディスクに読み取るかそれに書き込むための光ディスクドライブなどであるがそれらに限定されない記憶媒体１６を含む。ドライブおよびそれらの関連コンピュータ読取可能な媒体は、コンピュータ実行可能命令、データ構造、プログラムモジュール、およびコンピュータのための他のデータの非一時的かつ不揮発性の記憶装置を提供する。ソフトウェアおよび／またはウェブ実現を用いる様々な実施形態は、標準的なプログラミング技術で達成される。１つ以上のコンピュータは、本明細書で説明されているような機能を実行するために、ソフトウェア、ハードウェア、ファームウェア、またはそれらの組み合わせによって構成される。
【００１７】
様々な実施形態にしたがって、アグリゲータデバイス１２および／またはソースデバイス１０とアグリゲータデバイス１２とをリンク付する補助デバイスもまた、それ自体の１つ以上のプロセッサ、メモリ、および／または、それぞれのデバイスの様々なシステムコンポーネントを接続する１つ以上のシステムバスによって接続された１つ以上の記憶媒体を含む。１つ以上のプロセッサは、本明細書で説明されているような機能を実行するように構成される。
【００１８】
様々な実施形態において、１つ以上のネットワークのうち１つ以上は、サービス、サービスへのアクセス、中継データ、等を提供する。例示的な実施形態において、１つ以上のネットワークは、アグリゲータデバイス１２が、１つ以上の他のモバイルデバイスと音声通信を実行することを可能にする。別の実施形態において、１つ以上のネットワークは、アグリゲータデバイス１２が、インターネット、モバイルアプリケーション、ＧＰＳ、ＳＭＳ、等などであってそれらに限定されない他のサービスにアクセスすることを可能にしうる。
【００１９】
様々な実施形態において、１つ以上のネットワークノードは、任意の数の通信規格（例えば、ＧＳＭ（登録商標）、ＣＤＭＡ、ＴＤＮＭ、ＷＣＤＭＡ（登録商標）、ＯＦＤＭ、ＧＰＲＳ、ＥＶ−ＤＯ、Ｗｉ−Ｆｉ、ＷｉＭＡＸ、Ｓ０２.ｘｘ、ＵＷＢ、ＬＴＥ、衛星、等）またはそれらの組み合わせを用いて、音声およびデータ信号を他のノードと交換することができる。本明細書で説明される技法は、符号分割多元接続（ＣＤＭＡ）ネットワーク、時分割多元接続（ＴＤＭＡ）ネットワーク、周波数分割多元接続（ＦＤＭＡ）ネットワーク、直交ＦＤＭＡ（ＯＦＤＭＡ）ネットワーク、単一キャリアＦＤＭＡ（ＳＣ−ＦＤＭＡ）ネットワーク、等のような様々なワイヤレス通信ネットワークに対して使用されうる。「ネットワーク」および「システム」という用語は交換して使用されることが多い。ＣＤＭＡネットワークは、ユニバーサル地上無線アクセス（ＵＴＲＡ）、ｃｄｍａ２０００等のような無線技術を実現しうる。ＵＴＲＡは、広域ＣＤＭＡ（Ｗ−ＣＤＭＡ）および低チップレート（LCR）を含む。ＣＤＭＡ２０００は、ＩＳ−２０００規格、ＩＳ−９５規格、およびＩＳ−８５６規格をカバーする。ＴＤＭＡネットワークは、モバイル通信のためのグローバルシステム（ＧＳＭ（登録商標））のような無線技術を実現しうる。ＯＦＤＭＡネットワークは、発展型ＵＴＲＡ（Ｅ−ＵＴＲＡ）、ＩＥＥＥ ８０２．１１、ＩＥＥＥ ８０２．１６、ＩＥＥＥ ８０２．２０、フラッシュＯＦＤＭ等のような無線技術を実現しうる。ＵＴＲＡ、Ｅ−ＵＴＲＡ、およびＧＳＭは、ユニバーサルモバイル電気通信システム（ＵＭＴＳ）の一部である。ロングタームエボリューション（ＬＴＥ）は、Ｅ−ＵＴＲＡを用いるＵＭＴＳの最新の（upcoming）リリースである。ＵＴＲＡ、Ｅ−ＵＴＲＡ、ＧＳＭ、ＵＭＴＳ、およびＬＴＥは、「第３世代パートナーシッププロジェクト」（３ＧＰＰ）と名づけられた団体の文書の中で説明されている。ＣＤＭＡ２０００は、「第３世代パートナーシッププロジェクト２」（３ＧＰＰ２）と名づけられた団体の文書の中で説明されている。
【００２０】
図２は、多重パスオーバレイネットワークについての実施形態にしたがいシステム２を示す。システム２のソース補助デバイス２４は、ソースデバイス１０からのデータの転送を助けるためにソースデバイス１０によって使用されるネットワークのノードである。同様に、アグリゲータ補助デバイス２６は、アグリゲータデバイス１０へのデータの転送を助けるためにソースデバイス１０によって使用されるネットワークのノードである。
【００２１】
システム２において、送信がソースデバイス１０からアグリゲータデバイス１２に進みうる１よりも多くのパスが存在する。第１のパスは、ソースデバイス１０とアグリゲータデバイス１２との間に直接的に存在する。ソースデバイス１０から、ソース補助デバイス２４を通り、次にアグリゲータ補助デバイス２６を通って、アグリゲータデバイス１２に向かう第２のパスが存在する。この第２のパスは、間接的である。すなわち、ソースデバイス１０とアグリゲータデバイス１２との間に少なくとも１つの仲介転送補助デバイス２４，２６が存在する。他の実施形態では、ソースデバイス１０とアグリゲータデバイス１２との間に２つよりも多くのパスが存在する。いくつかの実施形態では、１よりも多くのダイレクトパス、１よりも多くのインダイレクトパス、または、ダイレクトパスとインダイレクトパスの任意の組み合わせが存在する。
【００２２】
ソースデバイス１０によって実行されるプロセスの一般化された例が図３を参照して説明される。アグリゲータデバイス１２によって実行されるプロセスの一般化された対応例が図４を参照して説明される。プロセス３および４の目標は、ソースデバイス１０とアグリゲータデバイス１２との間の少なくとも２つの送信パスの性能を決定することである。
【００２３】
図３のステップＳ３０において、ソースデバイス１０は、アグリゲータデバイス１２に、それらの間のパスのうち少なくとも２つを通して１つ以上のシグナリングメッセージを送る。
【００２４】
図４を参照すると、アグリゲータデバイス１２は、ステップＳ４１において、これらのメッセージを異なるパスから受信する。異なるパスのうちの少なくとも２つからメッセージを受信した後、ステップＳ４３において、アグリゲータデバイス１２は、情報をアグリゲートする。様々な実施形態にしたがって、この情報は、少なくとも、それらのパスの性能についての情報を含む。次に、ステップＳ４５において、アグリゲータデバイス１２は、アグリゲートされた情報（「アグリゲータフィードバック」）を１つのパスを通してソースデバイス１０に送る。すなわち、パスごとに１つずつ、別個のメッセージをソースデバイス１０に送る代わりに、アグリゲータデバイス１２は、アグリゲータフィードバックのうちのいくつかまたはすべてを組み合わせて単一のメッセージにする。いくつかの実施形態において、アグリゲータフィードバックは、最短（most direct）パス、任意のダイレクトパス、最速パス、または任意のパスを通して送られうる。
【００２５】
いくつかの実施形態にしたがって、アグリゲータデバイス１２は、ソースデバイス１０とアグリゲータデバイス１２との間のパスに対応する１つ以上のバッファを含む。パスについてのバッファは、そのパスを通ってアグリゲータデバイス１２に送られるデータを含む。さらなる実施形態において、多重パスの各々についてのバッファを有するアグリゲータデバイス１２は、第２のパスについての第２のバッファよりもフル（full）である、それと同等にフルである、または、それよりもフルでない第１のパスについての第１のバッファを有しうる。バッファのフルネス（fullness）は、「バッファ占有率」と呼ばれる。
【００２６】
例えば、非限定的かつ例示的な実施形態において、ビデオデータは、４つの別個のパスを通してソースデバイス１０からアグリゲータデバイス１２に送られる。第１のパスは、最初、各ビデオフレームの左上の部分を送るために使用され、第２のパスは、最初、各ビデオフレームの右上の部分を送るために使用され、第３のパスは、最初、各ビデオフレームの左下の部分を送るために使用され、第４のパスは、最初、各ビデオフレームの右下の部分を送るために使用される。第１のパスを通して受信されたビデオデータは、アグリゲータデバイス１２によって、第１のパス専用のバッファに記憶される。第２のパスを通して受信されたデータは、異なるバッファに記憶され、それは、第２のパス専用である。
【００２７】
さらなる実施形態において、アグリゲータフィードバックは、１つ以上のパスの１つ以上の相対バッファ占有率についてのフィードバックを含む。例えば、いくつかの実施形態において、パスのバッファ占有率は、基準バッファ占有レベルと比較される。いくつかの実施形態において、基準バッファ占有レベルは、１つのパスまたは多重パスのステータスバッファ占有率に基づいて算出される。
【００２８】
上述された非限定的かつ例示的な実施形態（４つのパスを通してビデオデータを送ることについての）について引き続き述べるが、アグリゲータデバイス１２は、４つのバッファすべての占有率に対する、４つのバッファの各々のバッファ占有率についての情報をソースデバイス１０に送り戻す。例えば、第１のバッファは、比較的正常なレベル（「正常（normal）」）まで満たされ、第２のバッファは、比較的フルである（例えば、７５％よりも多くがデータで占有されている）、第３のバッファは、正常である（例えば、２５％〜７５％がデータで占有されている）、第４のバッファは、比較的空（例えば、２５％未満がデータで占有されている）。アグリゲータデバイス１２は、４つのパスの集合バッファ占有率に基づいて各パスの相対バッファ占有率を決定する。例として、４つのバッファから取得された集合データに基づいて、基準バッファ占有レベルが正常であるとアグリゲータデバイス１２が決定したと想定する。次に、アグリゲータデバイス１２は、第１のパスおよび第３のパスが相対バッファ占有率に等しいバッファ占有率を有し、第２のパスは、相対バッファ占有率よりも大きいバッファ占有率を有し、第４のパスは、基準バッファ占有レベルよりも低い相対バッファ占有率を有することを示す相対バッファ占有率情報をソースデバイスに提供する。
【００２９】
図３に戻り、ステップＳ３６では、ソースデバイス１０は、１つのパスを通して送られた、アグリゲータデバイス１２からのアグリゲータフィードバックを受信する。ステップＳ３８において、ソースデバイス１０は、このアグリゲータフィードバックに少なくとも部分的に基づいて、パスのうちの少なくとも１つのパスの性能について１つ以上の算出を行う。
【００３０】
様々な実施形態において、これらの１つ以上の算出は、トラフィックレート適用および誤り処理のために使用される。様々な実施形態にしたがって、次に、各パスに送られたネットワークトラフィックのレベルは、これらの算出に基づいて調整される。例えば、非限定的かつ例示的ないくつかの実施形態において、第１のパスのバッファ占有率が第２のパスのバッファ占有率よりも良い場合、ソースデバイス１０は、第２のパスの代わりに第１のパスにいくつかまたはすべてのトラフィックを向ける。上述された非限定的かつ例示的な実施形態（４つのパスを通してビデオデータを送ることについて）において、ソースデバイス１０は、より多くのトラフィックが第４のパスに送られ、第２のパスへはより少なくなるべきであることを決定しうる。これは、アグリゲータデバイス１２が、比較的空であった第４のパスのバッファ占有率、および、比較的フルであった第２のパスのバッファ占有率を有するためである。
【００３１】
構成メッセージ（「フィードバック構成」）を含むプロセスの一般化された例が図５を参照して説明される。ソースデバイス１０は、アグリゲータデバイス１２に構成についての情報を知らせるために構成メッセージを送る。いくつかの実施形態では、この情報は、ソースデバイス１０の有無、ソースデバイス１０の識別、および／または測定パラメータについての情報を含みうるがそれらに限定されない。様々な実施形態において、構成メッセージは、補助デバイス２４，２６を要求しないダイレクトパスを通して送られうるか、１つ以上の補助デバイス２４，２６を含むインダイレクトパスを通して送られうる。ソースデバイス１０は、少なくとも２つのパスを通してシグナリングメッセージを送る。いくつかの実施形態にしたがって、次に、アグリゲータデバイス１２は、少なくとも１つのパスの性能について１つ以上の算出を実行する。さらなる実施形態において、パスの性能を、構成メッセージから取得された１つ以上の測定パラメータに対して比較することに少なくとも部分的によって、算出が実行される。さらに別の実施形態において、アグリゲータデバイス１２は、それらの算出からのアグリゲートされた結果を、アグリゲータフィードバックでソースデバイス１０に送る。いくつかの実施形態において、ソースデバイス１０は、このアグリゲータフィードバックに少なくとも部分的に基づいて、１つ以上のさらなる算出を実行する。
【００３２】
様々な実施形態にしたがって、図５に示されるように、アグリゲータデバイス１２は、アグリゲータフィードバックメッセージをソースデバイス１０に周期的に送る。いくつかのさらなる実施形態において、周期的なインターバルは、動的に修正されることができる。他の実施形態では、アグリゲータフィードバックメッセージは、周期的に送られないいくつかの実施形態において、１つ以上のパスの性能は、周期的に行われ、平均が算出される。さらなる実施形態において、この平均は、１つ以上のパスにルーティングされたトラフィックを調整するために使用される。これは、どの時点での性能も非常に悪いまたは非常に良く、ある程度期待されることができる性能を表さないため、１つ以上のパスの性能のより有益なスナップショットを提供しうる。
【００３３】
様々な実施形態において、構成メッセージは、バッファ、パケット損失比（ＰＬＲ）、および／または受信データレートについての情報を含みうるがそれらに限定されない。
【００３４】
図６Ａ〜６Ｃは、多重パスオーバレイネットワークに関する実施形態にしたがって制御プレーンプロトコルスタックを示す。制御プレーンは、情報をどこにルーティングするかの決定に関するネットワークノードアーキテクチャの一部である。多重パスオーバレイネットワークは、オーバレイネットワークシグナリングメッセージを転送するための送信制御プロトコル（ＴＣＰ）部分を使用する。ＴＣＰ／インターネットプロトコル（ＴＣＰ／ＩＰ）転送は、データパスセグメントがペアにわたって期待される場合、図６Ａ〜６Ｃのノードのペアにわたって使用される。具体的には、これらのノードのペアは、ソースデバイス１０とソース補助デバイス２４（図６Ａに示される）、ソースデバイス１０とアグリゲータ補助デバイス１２（図６Ｂに示される）、およびアグリゲータ補助デバイス２６とアグリゲータデバイス１２（図６Ｃに示される）を含む。媒体アクセス制御（ＭＡＣ）データ通信プロトコルサブレイヤは、ＩＰサブレイヤで使用されるネットワークアドレス方法と、物理レイヤ（ＰＨＹ）のデータリンクアドレスとを変換する。
【００３５】
様々な実施形態にしたがって、パスに関する統計値は、実時間転送制御プロトコル（ＲＰＣＰ）を通して報告される。いくつかの実施形態において、これらの統計値は、遅延、ジッタ、損失パケットカウント、および／または、送信されたオクテットおよびパケットカウントに関する統計値を含みうるがそれらに限定されない。
【００３６】
図７は、多重パスオーバレイネットワークについての実施形態にしたがって、図２のシステム２に対応するシステムを示す。ＲＴＣＰ送信側報告（ＳＲ）メッセージは、それらが対応実時間転送プロトコル（ＲＴＰ）データと同じルートを確実にたどるように、オーバレイネットワークパスを用いてソースデバイス１０からアグリゲータデバイス１２に送られる。よって、ダイレクトパス（補助デバイス２４，２６を含まない）についてのＳＲメッセージは、ダイレクトパスをたどる。同様に、インダイレクトパス（補助デバイス２４，２６を含む）ＳＲメッセージは、補助デバイス２４，２６を要求するインダイレクトパスをたどる。
【００３７】
ＲＴＣＰ受信機報告（ＲＲ）メッセージは、アグリゲータデバイス１２からソースデバイス１０にオーバレイネットワークの外側で送られる。様々な実施形態にしたがって、ＲＲメッセージは、補助デバイス２４，２６を要求しないダイレクトパスをたどる。
【００３８】
ソースデバイス１０によって実行されるプロセスの一般化された例が図８を参照して説明される。ソースデバイス１０とソース補助デバイス２４との間、およびアグリゲータデバイス１２とアグリゲータ補助デバイス２６との間のトラフィック統計情報は、特定の補助器が有効であるか否かを決定するための重要な情報を提供することができる。ソースデバイス１０とソースデバイス１０およびソース補助デバイス２４との間、および、アグリゲータデバイス１２とアグリゲータ補助デバイス２６との間のフィードバック情報は、標準的なＲＴＣＰセッションを用いて搬送される。これら２つのＲＴＣＰセッションは、ソースデバイス１０からアグリゲータデバイス１２へのＲＴＰセッションに関連づけられる。これらのＲＴＣＰ報告は、図８に示される。様々な実施形態において、ソースデバイス１０および／またはそのソース補助デバイス２４は、ＲＴＣＰフィードバック情報に基づいて、パスをドロップするか否か、および、ソース補助デバイス２４をリリースするか否かを決定する。様々な実施形態において、アグリゲータデバイス１２および／またはそのアグリゲータ補助デバイス２６は、ＲＴＣＰフィードバック情報に基づいて、パスをドロップするか否か、および、アグリゲータ補助デバイス２６をリリースするか否かを決定する。
【００３９】
図９は、多重パスオーバレイネットワークに関する実施形態にしたがって、シグナリングメッセージの非限定的かつ例示的なパケットヘッダ９を示す。いくつかの実施形態において、パケットヘッダ９のメッセージタイプフィールドは、シグナリングメッセージタイプにしたがって設定される。いくつかの実施形態において、シグナリングメッセージのペイロードは、パケットヘッダ９の直後か、パケットヘッダ９の後に開始しうる。
【００４０】
いくつかの実施形態において、パケットヘッダ９のバージョンフィールドは、オーバレイネットワークプロトコルのバージョンを示す。図９の非限定的な例において、このフィールドは、４ビット長であり、パケットヘッダ９の開始に配置される。
【００４１】
いくつかの実施形態にしたがって、パケットヘッダ９の拡張ヘッダフィールド（Ｅｘｔ）は、標準ヘッダの後に拡張ヘッダがあるか否かを示す。図９の非限定的な例では、このフィールドは、１ビット長であり、パケットヘッダ９のビットオフセット７に配置される。
【００４２】
いくつかの実施形態において、パケットヘッダ９のメッセージタイプフィールドは、オーバレイネットワークメッセージタイプを示す。図９の非限定的な例において、フィールドは、８ビット長であり、パケットヘッダ９のビットオフセット８に配置される。いくつかの実施形態において、メッセージタイプフィールドの値は、データ、シグナリング、ソースデバイス１０開始セッション要求、アグリゲータ補助デバイス２６ジョイン要求、アグリゲータ補助デバイス２６ジョイン応答、ソースデバイス１０ジョイン要求、ソースデバイス１０ジョイン応答、ソース補助デバイス２４ジョイン要求、ソース補助デバイス２４ジョイン応答、アグリゲータデバイス１２切替要求、アグリゲータデバイス１２切替応答、ソース補助デバイス２４切替要求、ソース補助デバイス２４切替応答、アグリゲータデバイス１２リリース通知、ソースデバイス１０リリース通知、補助デバイス２４，２６リリースコマンド、補助デバイス２４，２６リリース通知、構成メッセージ、アグリゲータフィードバック、等を示しうる。
【００４３】
いくつかの実施形態にしたがって、パケットヘッダ９のパケット長フィールドは、パケットのペイロード内のバイト数を示す。図９の非限定的な例において、このフィールドは、１６ビット長であり、パケットヘッダ９のビットオフセット１６から始まって配置される。
【００４４】
いくつかの実施形態において、構成メッセージのフィールドは、以下のフィールドを含みうる（しかしながら、それらに限定されるわけではない）：ソースデバイス１０のオーバレイネットワークアドレス、アグリゲータデバイス１２のオーバレイネットワークアドレス、フィードバックを必要とするデータトラフィックセッションのセッションＩＤ、アグリゲータデバイス１２が同期のためにシグナリングするのに利用する多重パス間の時間におけるバッファ占有度差分ウィンドウ、測定値を更新するのに使用される移動平均係数、測定値をサンプリングするための時間インターバル、アグリゲータデバイス１２が性能フィードバック情報をソースデバイス１０に送るための時間インターバルおよび／またはパディング。
【００４５】
いくつかの実施形態にしたがって、式（１）にしたがってパケット損失比およびスループットに対して移動平均係数が適用される。  
Ｓｉ＋１＝α＊ｓ＋（１−α）＊Ｓｉ      式（１）
ここで、αは、移動平均係数を表し、ｓは、現在の推定値を表し、Ｓｉは、第ｉの移動平均を表す。いくつかの実施形態において、移動平均係数αは、１／１６の単位である。非限定的な例において、移動平均係数αが３／１６である場合、乗数は３である。
【００４６】
いくつかの実施形態において、アグリゲータフィードバックのフィールドは、以下のフィールドを含みうる（しかしながら、それらに限定されるわけではない）：アグリゲータデバイス１２のオーバレイネットワークアドレス、ソースデバイス１０のオーバレイネットワークアドレス、フィードバックを必要とするデータトラフィックセッションのセッションＩＤ、アグリゲータフィードバックで報告されるパスの数、および／またはパディング。さらなる実施形態において、アグリゲータフィードバックのフィールドは、報告されたパスごとに、下記を含みうる（しかしながら、それらに限定されるわけではない）：フィードバック情報が集められるデータパスのパスインデックス、バッファレベルコード、バッファ差分コード、パケット損失比、最上位パケット損失バースト（ある場合）の開始時間スタンプ、最上位パケット損失バースト（ある場合）の停止時間スタンプ、および／または、ソースデバイス１０で送られるパケットの受信データレート。
【００４７】
いくつかの実施形態にしたがって、バッファレベルコードは、オーバフロー、長引くオーバフロー、正常、および／または、初期バッファに到達したこと、を示しうる。いくつかのさらなる実施形態では、パスのうちの１つについて初期バッファに到達する前に、バッファレベルコードフィールドは、正常状態を示すように設定される。少なくとも１つのパスについて初めて初期バッファに到達すると、バッファレベルコードは、初期バッファに到達したことを示すように設定される。初期バッファに到達したことを示すインジケーションを受信すると、ソースデバイス１０は、後続の較正動作を行う。
【００４８】
いくつかの実施形態において、バッファ差分コードは、時間における平均バッファ占有率に対して、ステータスがウィンドウより上であること、ウィンドウより下であること、または正常であることを示しうる。いくつかのさらなる実施形態において、アグリゲータデバイス１２は、式２〜４にしたがって時間における基準バッファサイズを算出する。ここで、時間における基準バッファサイズは、Ｂｒｅｆと表され、第ｉのパスのバッファ占有率は、Ｂ（ｉ）と表され、時間におけるバッファ占有率差分バウンドは、Ｗと表される。式（２）の表現が正である場合、バッファ差分コードは、「正常」を示す。  
｜Ｂ（ｉ）−Ｂｒｅｆ｜≦Ｗ／２      式（２）
式（３）の表現が正である場合、バッファ差分コードは、「ウィンドウよりも下」を示す。  
Ｂｒｅｆ−Ｂ（ｉ）＞Ｗ／２      式（３）
式（４）の表現が正である場合、バッファ差分コードは、「ウィンドウよりも上」を示す。  
Ｂ（ｉ）−Ｂｒｅｆ＞Ｗ／２      式（４）
いくつかの実施形態において、基準バッファサイズは、以下のように算出される。再生のための初期バッファサイズは、ＢＩと表され、正常バッファサイズ範囲の下限は、ＢＬと表され、正常バッファサイズ範囲の上限はＢＵと表される。いくつかの実施形態において、初期バッファサイズに近いバッファサイズを有するデータパスがあるか否かは、式（５）を用いて決定される。  
｜Ｂ（ｉ）−ＢＩ｜≦Ｗ／２      式（５）
そのようなパスがある場合、それらのパスは、基準バッファレベルを算出するのに含まれるべきである。基準バッファレベルは、それらのパスの平均バッファサイズに設定される。そのようなパスが無い場合、正常サイズ範囲内のバッファサイズを有するデータパスがあるか否かは、式（６）を用いて決定される。  
ＢＬ≦Ｂ（ｉ）≦ＢＵ      式（６）
いくつかの実施形態において、そのようなパスがある場合、それらのパスは、基準バッファレベルを算出するのに含まれうる。いくつかの実施形態では、基準バッファレベルは、それらのパスの平均バッファサイズに設定される。
【００４９】
いくつかの実施形態にしたがって、パスのうちの１つについて初期バッファに到達する前に、バッファ差分コードは、すべてのパス上で「正常」を示すように設定されるべきである。様々な実施形態において、少なくとも１つのパスについて初めて初期バッファに到達すると、バッファ差分コードは、上記式２、４を用いて生成される。
【００５０】
いくつかの実施形態において、図３のステップＳ３８でソース１０によって行われる１つ以上の算出は、メッセージの「ラウンドトリップ」時間に少なくとも部分的に基づく。ＲＴＣＰフィードバックは、パスのラウンドトリップ時間情報を提供する。任意のパスを通ったソースからアグリゲータへの遅延は、このラウンドトリップ時間情報に基づいて算出される。ラウンドトリップ時間は、シグナリングメッセージがソースデバイス１０からアグリゲータデバイス１２に送られるのに費やされる時間、および、アグリゲータフィードバックが、アグリゲータデバイス１２からソースデバイス１０に送られるのに費やされる時間である。
【００５１】
例えば、図２について、ダイレクトパスを通して（ソースデバイス１０からアグリゲータデバイス１２に直接的に）１つのシグナリングメッセージが送られ、インダイレクトパス（ソース補助器２４およびアグリゲータ補助器２６を通るパス）を通して別のシグナリングメッセージが送られた非限定的な例を考慮した場合、アグリゲータフィードバックは、ダイレクトパスを通って送られている。この例において、いくつかの実施形態にしたがって、ダイレクトパスをトラベルする時間は、ラウンドトリップ時間の半分と推定されうる。これは、これは式（７）によって示されており、ここで、ダイレクトパスを通るラウンドトリップ時間（両方向）は、ＲＴＴ（０）で表され、一方向にダイレクトパスをトラベルする時間における遅延は、Ｄ（０）で表される。  
Ｄ（０）＝ＲＴＴ（０）／２      式（７）
いくつかの実施形態において、ダイレクトパスについてのラウンドトリップ時間は、ダイレクトパスのシグナリングメッセージが、それが送られてから到着するまでの時間を、ダイレクトパスのアグリゲータフィードバックが、それが送られてから到着するまでの時間に追加したものとして推定される。
【００５２】
この例示的な算出は、ソース１０からアグリゲータデバイス１２へのダイレクトパスのトラベル時間が、アグリゲータデバイス１２からソースデバイス１０へのダイレクトパスのトラベル時間とおおまかに同じであるとする想定に基づく。他の実施形態において、それらがそれ程同じではない場合、これらの算出は、これらの差分を説明する（account for）ように調整される。
【００５３】
引き続きこの例について、ダイレクトパスをトラベルする時間が推定されると、いくつかの実施形態において、それは、インダイレクトパスをトラベルする時間を推定するために使用される。インダイレクトパスについてのラウンドトリップ時間は、インダイレクトパスシグナリングメッセージが、それが送信されてから到着するまでの時間に、ダイレクトパスアグリゲータフィードバックが、それが送信されてから到着するまでの時間を追加したものとして推定される。インダイレクトパスをトラベルする時間は、インダイレクトパスについてのラウンドトリップ時間からダイレクトパスをトラベルする時間を差し引いたものとして推定される。これは式（８）によって示されており、ここでは、インダイレクトパスおよびダイレクトパスの遅延を含むラウンドトリップ時間がＲＴＴ（ｉ）で表され、インダイレクトパスを一方向にトラベルする時間の遅延がＤ（ｉ）で表される。  
Ｄ（ｉ）＝ＲＴＴ（ｉ）−Ｄ（０）      式（８）
当業者は、本明細書に開示された実施形態に関連して説明された様々な実例となる論理ブロック、モジュール、回路、およびアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの組み合わせとして実現されうることをさらに認識するであろう。ハードウェア、ソフトウェア、およびファームウェアのこの互換性を明確に例示するために、様々な実例となるコンポーネント、ブロック、モジュール、回路、およびステップが、概ねそれらの機能の観点から、上に説明されている。このような機能が、ハードウェアとして実現されるか、ソフトウェアとして実現されるか、ファームウェアとして実現されるかは、特定のアプリケーションおよびシステム全体に課せられる設計制約に依存する。当業者は、特定のアプリケーションごとに、多様な方法で説明された機能を実現することができるが、このような実現の決定は、本開示の範囲からの逸脱を引き起こしていると解釈されるべきではない。
【００５４】
本明細書に開示された実施形態に関連して説明された様々な実例となる論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、あるいは本明細書で説明された機能を実行するように設計されたこれらの任意の組み合わせで、実現または実行されうる。汎用プロセッサは、マイクロプロセッサでありうるが、代替的に、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンでありうる。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、ＤＳＰと、１つのマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアと連動する１つ以上のマイクロプロセッサ、または、任意の他のそのような構成との組み合わせとして実現されうる。
【００５５】
本明細書に開示された実施形態に関連して説明されたアルゴリズムまたは方法のステップは、直接的にハードウェアにおいて、プロセッサによって実行されるソフトウェアモジュールにおいて、またはこれら２つの組み合わせにおいて、具現化（embodied）されうる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバルディスク、ＣＤ−ＲＯＭ、または当技術分野において知られている任意の他の形状の記憶媒体内に存在しうる。例示的な記憶媒体は、プロセッサがこの記憶媒体から情報を読み取り、またこの記憶媒体に情報を書き込むことができるように、プロセッサに結合されている。代替的に、記憶媒体は、プロセッサと一体化されうる。プロセッサおよび記憶媒体は、ＡＳＩＣ内に存在しうる。ＡＳＩＣは、ユーザ端末内に存在しうる。代替的に、プロセッサおよび記憶媒体は、ユーザ端末内のディスクリートコンポーネントとして存在しうる。
【００５６】
１つ以上の例示的な実施形態では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組み合わせで実現されうる。ソフトウェアで実現される場合、これらの機能は、コンピュータ読取可能な媒体上の１つ以上の命令またはコードとして送信または記憶されうる。コンピュータ読取可能な媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体とコンピュータ記憶媒体との両方を含む。記憶媒体は、コンピュータによってアクセスされうる任意の利用可能な媒体でありうる。限定ではなく例として、このようなコンピュータ読取可能な媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは、データ構造または命令の形式で所望のプログラムコードを記憶または搬送するために使用可能であり、かつコンピュータによってアクセスされうる任意の他の媒体を備えうる。加えて、いずれの接続も、厳密には、コンピュータ読取可能な媒体と呼ばれる。例えば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波のようなワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信されると、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波のようなワイヤレス技術は、送信媒体の定義に含まれる。本明細書で使用される場合、ディスク（disk）およびディスク（disc）は、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタル多用途ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、およびブルーレイ（登録商標）ディスクを含み、ここで、ディスク（disk）は、通常磁気的にデータを再生し、ディスク（disc）は、レーザーを用いて光学的にデータを再生する。上記の組み合わせもまた、コンピュータ読取可能な媒体の範囲内に含まれるべきである。
【００５７】
開示された実施形態の上記説明は、いかなる当業者であっても本開示を製造または使用できるようにするために提供される。これらの実施形態に対する様々な変更は、当業者には容易に明らかであり、本明細書で定義された包括的な原理は、本開示の精神または範囲から逸脱することなく、他の実施形態に適用されうる。したがって、本開示は、本明細書に示された実施形態に限定されることが意図されるものではなく、本明細書に開示された原理および新規な特徴と一致する最も広い範囲を与えられることとなる。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ネットワークを通してフィードバックを提供する方法であって、
前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送ることと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信することと
を備える方法。
［Ｃ２］
前記受信された情報に基づいて、前記ネットワークの少なくとも１つのパスの前記性能についての１つ以上の算出を行うことをさらに備える、Ｃ１に記載の方法。
［Ｃ３］
前記１つ以上の算出に少なくとも部分的に基づいて、前記ネットワークの１つ以上のパスに送られるトラフィック量を調整することをさらに備える、Ｃ２に記載の方法。
［Ｃ４］
前記第１のデバイスによって、前記ネットワークの前記第１のパスに沿ったトラベル時間をラウンドトリップ時間から差し引くことで、前記ネットワークの第２のパスに沿った送信のトラベル時間を算出することをさらに備え、前記ラウンドトリップ時間は、前記ネットワークの前記第２のパスに沿った前記送信の前記トラベル時間と、前記第１のパスに沿った前記トラベル時間との合計である、Ｃ１に記載の方法。
［Ｃ５］
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、Ｃ１に記載の方法。
［Ｃ６］
前記受信された情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、Ｃ１に記載の方法。
［Ｃ７］
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、Ｃ６に記載の方法。
［Ｃ８］
前記受信された情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、Ｃ１に記載の方法。
［Ｃ９］
ネットワークを通してフィードバックを提供するシステムであって、
前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送り、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信する
ように構成されたプロセッサを備えるシステム。
［Ｃ１０］
前記プロセッサはさらに、
前記受信された情報に基づいて、前記ネットワークの少なくとも１つのパスの前記性能についての１つ以上の算出を行うように構成される、Ｃ９に記載のシステム。
［Ｃ１１］
前記プロセッサはさらに、
前記１つ以上の算出に少なくとも部分的に基づいて、前記ネットワークの１つ以上のパスに送られるトラフィック量を調整するように構成される、Ｃ１０に記載のシステム。
［Ｃ１２］
前記プロセッサはさらに、前記ネットワークの前記第１のパスに沿ったトラベル時間をラウンドトリップ時間から差し引くことで、前記ネットワークの第２のパスに沿った送信のトラベル時間を算出するように構成され、前記ラウンドトリップ時間は、前記ネットワークの前記第２のパスに沿った前記送信の前記トラベル時間と、前記第１のパスに沿った前記トラベル時間との合計である、Ｃ９に記載の方法。
［Ｃ１３］
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、Ｃ９に記載のシステム。
［Ｃ１４］
前記受信された情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、Ｃ９に記載のシステム。
［Ｃ１５］
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、Ｃ１４に記載の方法。
［Ｃ１６］
前記受信された情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、Ｃ９に記載のシステム。
［Ｃ１７］
機械読取可能な媒体を備える、ネットワークを通してフィードバックを提供するためのコンピュータプログラム製品であって、前記機械読取可能な媒体は、
前記ネットワーク内の第１のデバイスから前記ネットワーク内の第２のデバイスに少なくとも２つの送信を送ることと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスを通して送られる、
前記第２のデバイスから前記第１のデバイスによって、前記ネットワークの第１のパスを通して、前記ネットワークの少なくとも２つのパスの性能についての情報を受信することと
を実行可能なコードで符号化される、コンピュータプログラム製品。
［Ｃ１８］
ネットワークを通してフィードバックを提供する方法であって、
前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信することと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送ることと
を備える方法。
［Ｃ１９］
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、Ｃ１８に記載の方法。
［Ｃ２０］
前記送られた情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの１つ以上のパスに関する、Ｃ１８に記載の方法。
［Ｃ２１］
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、Ｃ２０に記載の方法。
［Ｃ２２］
前記送られた情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、Ｃ１８に記載の方法。
［Ｃ２３］
ネットワークを通してフィードバックを提供するシステムであって、
前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信し、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送る
ように構成されたプロセッサを備えるシステム。
［Ｃ２４］
前記ネットワークの前記第１のパスは、いずれの転送補助器も提供されていない、前記第２のデバイスと前記第１のデバイスとの間のダイレクトパスである、Ｃ２３に記載のシステム。
［Ｃ２５］
前記送られた情報は、前記第２のデバイスの少なくとも１つのバッファ占有率に関する情報を含み、前記バッファ占有率は、前記ネットワークの少なくとも１つのパスに関する、Ｃ２３に記載のシステム。
［Ｃ２６］
少なくとも１つのパスに関する少なくとも１つのバッファ占有率に関する前記情報は、１つ以上のバッファ占有率と、多重パスに関する組み合わせられたバッファ占有率、または、前記少なくとも１つのパス以外の１つ以上のパスに関するバッファ占有率との比較を含む、Ｃ２３に記載の方法。
［Ｃ２７］
前記送られた情報は、前記ネットワークの１つ以上のパスを通る送信の人工的な遅延の値または範囲を含まない、Ｃ２３に記載のシステム。
［Ｃ２８］
機械読取可能な媒体を備える、ネットワークを通してフィードバックを提供するためのコンピュータプログラム製品であって、前記機械読取可能な媒体は、
前記ネットワーク内の第１のデバイスから、前記ネットワーク内の第２のデバイスによって少なくとも２つの送信を受信することと、
ここで、前記少なくとも２つの送信のうち２つ以上は各々、前記ネットワークの異なるパスから受信される、
前記第２のデバイスから前記第１のデバイスに、前記ネットワークの第１のパスを通して、前記ネットワークの前記パスの性能についての情報を送ることと
を実行可能なコードで符号化される、コンピュータプログラム製品。
【図１】
0005766882.tif 000002
【図２】
0005766882.tif 000003
【図３】
0005766882.tif 000004
【図４】
0005766882.tif 000005
【図５】
0005766882.tif 000006
【図６Ａ】
0005766882.tif 000007
【図６Ｂ】
0005766882.tif 000008
【図６Ｃ】
0005766882.tif 000009
【図７】
0005766882.tif 000010
【図８】
0005766882.tif 000011
【図９】
0005766882.tif 000012