(57)【要約】  無線デバイスは、データセッションが性能感受性であるかどうかを決定し、データセッションが性能感受性であることに応答して、データ転送ノード（DTN）を選択し、選択されたDTNを使用してデータセッションを実行する。データセッションが性能に感受性あるかどうかは、データセッションに関連付けられたプロセスに関する情報を使用して、或いはデータセッションをモニターすることによって、又はその両方によって決定され得る。DTNは、利用可能なDTNのリストから選択することができる。選択は、DTNがデータセッションに対して最高の性能を提供するであろうことに従って、或いは１つ又は複数のDTNが適切な性能を提供するであろうことに従って、なされる。利用可能なDTNの性能を予測するために、マイクロスピードテスト、履歴性能情報その他の基準が使用され得る。複数のDTNが選択基準を満たす場合、DTNを選択するために「良い隣人」ポリシーを使用してもよい。
2022502971.tif 000002
【特許請求の範囲】
【請求項１】
無線デバイスによって実行される方法であって：
データ・セッションが性能感受性であるかどうかを判断する判断ステップ；
前記データ・セッションが性能感受性あることに応答して、
データ転送ノード（DTN）を選択する選択ステップ；及び
前記の選択したDTNを使用してデータ・セッションを実行する実行ステップ；
を含む方法。
【請求項２】
請求項１に記載の方法であり、前記判断ステップが、
データ・セッションに関連するプロセスを識別するステップ；
既知のプロセスのリポジトリを使用して、前記プロセスが性能感受性データ・セッションを生成する可能性があるかどうかを判断するステップ；及び
既知のプロセスのリポジトリを使用して、前記プロセスが性能感受性データ・セッションを生成する可能性が高いと判断することに応じて、前記データ・セッションが性能感受性あるものであると判断するステップ；
を含む、方法。
【請求項３】
請求項１に記載の方法であり、前記判断ステップが、
前記データ・セッションによって通信されるデータ量をモニターするステップ；
所定時間の間に前記データ・セッションによって通信されるデータ量が所定の第１閾値より大きいことに応答して、或いは前記データ・セッションによって通信されるデータ量が所定量に達するまでの時間が第２閾値未満であることに応答して、前記データ・セッションが性能に感受性あるものと判断するステップ；
を含む、方法。
【請求項４】
請求項１に記載の方法であり、前記選択ステップは、前記データ・セッションの性能要件に従って前記DTNを選択するステップを含む、方法。
【請求項５】
請求項４に記載の方法であり、前記データ・セッションの性能要件に従って前記DTNを選択する前記ステップは、
前記データ・セッションの性能要件がDL性能要件を含む場合、DTNのダウンリンク（DL）性能に関する情報に従ってDTNを選択するステップ；又は
前記データ・セッションの性能要件がUL性能要件を含む場合、DTNのアップリンク（UL）性能に関する情報に従ってDTNを選択するステップ；
を含む、方法。
【請求項６】
請求項４に記載の方法であり、前記データ・セッションの性能要件に従って前記DTNを選択する前記ステップは、
前記データ・セッションの性能要件が遅延要件を含む場合、DTNの遅延性能に関する情報に従ってDTNを選択するステップ；又は
前記データ・セッションの性能要件がスループット要件を含む場合、DTNのスループット性能に関する情報に従ってDTNを選択するステップ；又は
その両方を含む、方法。
【請求項７】
請求項１に記載の方法であり、前記実行ステップは：
前記選択したDTNを使用するデータ・セッションを所定の期間にわたって実行するステップ；及び
所定の時間経過に応答して、新しいDTNを選択し、選択した前記新しいDTNを使用してデータ・セッションを実行するステップ；
を含む、方法。
【請求項８】
請求項１に記載の方法であり、前記選択ステップは、利用可能なDTNのリストからDTNを選択するステップを含む、方法。
【請求項９】
請求項８に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは、乱数発生器又は疑似乱数発生器を使用して、前記リストからDTNを選択するステップを含む、方法。
【請求項１０】
請求項８に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストについて実施されたマイクロスピードテストのそれぞれの結果に従ってDTNを選択するステップを含む、方法。
【請求項１１】
請求項８に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストについてのそれぞれの計算に従ってDTNを選択するステップを含み、前記計算は、前記利用可能なDTNのそれぞれのメトリック、それぞれの特性、又は両方に基づいている、方法。
【請求項１２】
請求項８に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストに関する履歴性能情報に従ってDTNを選択するステップを含む、方法。
【請求項１３】
請求項８に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは：
選択基準に従ってDTNを選択するステップ；及び
利用可能なDTNのリスト内の複数のDTNが前記選択基準を満たす場合、当該選択が無線ネットワークの他のユーザに与える悪影響を最小限に抑えるポリシーに従って、複数のDTNから１つのDTNを選択するステップ；
を含む、方法。
【請求項１４】
デバイスであって：
プロセッサ；及び
前記プロセッサによって実行されると、当該デバイスに以下のステップを実行させるコンピュータ・プログラミング命令を記憶する非一時的コンピュータ読取可能媒体；
データ・セッションが性能感受性であるかどうかを判断する判断ステップ；
前記データ・セッションが性能感受性あることに応答して、
データ転送ノード（DTN）を選択する選択ステップ；及び
前記の選択したDTNを使用してデータ・セッションを実行する実行ステップ；
を含むデバイス。
【請求項１５】
請求項１４に記載のデバイスであり、前記判断ステップが、
データ・セッションに関連するプロセスを識別するステップ；
既知のプロセスのリポジトリが、前記プロセスは性能感受性データ・セッションを生成する可能性があることを示すインジケータを含む場合に、
前記既知のプロセスのリポジトリを使用して、前記プロセスが性能感受性データ・セッションを生成する可能性があるかどうかを判断するステップ；及び
既知のプロセスのリポジトリを使用して、前記プロセスが性能感受性データ・セッションを生成する可能性が高いと判断することに応じて、前記データ・セッションが性能感受性あるものであると判断するステップ；
前記既知のプロセスのリポジトリが、前記プロセスは性能感受性データ・セッションを生成する可能性があることを示すインジケータを含んでいない場合に、
前記データ・セッションによって通信されるデータ量をモニターするステップ；
前記データ・セッションによって通信されるデータ量が所定の第１閾値より大きいことに応答して、或いは前記データ・セッションによって通信されるデータ量が所定量に達するまでの時間が第２閾値未満であることに応答して、前記データ・セッションが性能に感受性あるものと判断するステップ；
を含む、デバイス。
【請求項１６】
請求項１４に記載のデバイスであり、前記選択ステップは、前記データ・セッションの性能要件に従って前記DTNを選択するステップを含む、デバイス。
【請求項１７】
請求項１６に記載のデバイスであり、前記データ・セッションの性能要件に従って前記DTNを選択する前記ステップは、
前記データ・セッションの性能要件がDL性能要件を含む場合、DTNのダウンリンク（DL）性能に関する情報に従ってDTNを選択するステップ；又は
前記データ・セッションの性能要件がUL性能要件を含む場合、DTNのアップリンク（UL）性能に関する情報に従ってDTNを選択するステップ；
を含む、デバイス。
【請求項１８】
請求項１４に記載のデバイスであり、前記実行ステップは：
前記選択したDTNを使用するデータ・セッションを所定の期間にわたって実行するステップ；及び
所定の時間経過に応答して、新しいDTNを選択し、選択した前記新しいDTNを使用してデータ・セッションを実行するステップ；
を含む、デバイス。
【請求項１９】
請求項１４に記載のデバイスであり、前記選択ステップは、利用可能なDTNのリストからDTNを選択するステップを含む、デバイス。
【請求項２０】
請求項１９に記載のデバイスであり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストについて実施されたマイクロスピードテストのそれぞれの結果に従ってDTNを選択するステップを含む、デバイス。
【請求項２１】
請求項１９に記載のデバイスであり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストについてのそれぞれの計算に従ってDTNを選択するステップを含み、前記計算は、前記利用可能なDTNのそれぞれのメトリック、それぞれの特性、又は両方に基づいている、デバイス。
【請求項２２】
請求項１９に記載のデバイスであり、前記の利用可能なDTNのリストからDTNを選択するステップは、前記利用可能なDTNのリストに関する履歴性能情報に従ってDTNを選択するステップを含む、デバイス。
【請求項２３】
請求項１９に記載の方法であり、前記の利用可能なDTNのリストからDTNを選択するステップは：
選択基準に従ってDTNを選択するステップ；及び
利用可能なDTNのリスト内の複数のDTNが前記選択基準を満たす場合、当該選択が無線ネットワークの他のユーザに与える悪影響を最小限に抑えるポリシーに従って、複数のDTNから１つのDTNを選択するステップ；
を含む、デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ネットワーキングに関し、特に無線ネットワーキングに関する。本開示の実施形態は、複数のDTNに接続することができるデバイスが、それらのDTNのうちのどのDTNに接続するかをどのように決定するかに関する。本出願は、2018年10月12日に出願された米国仮出願第62/745,063号の利益を主張し、これは、あらゆる目的のために本明細書に参考として援用される。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
最適なエリアカバレッジを提供するために、多くの無線データネットワークが、データ転送ノード（data transport nodes, DTNs）から構成される。データ転送ノードの各々は、典型的には、互いに隣接しかつ重複する地理的エリア又は地理的サブエリアをカバーする。その結果、ユーザ装置端末（UE）は、いつでも、多くのDTNに接続する機会を有することができる。典型的には、UEは、一度に、特定の無線アクセス技術（Radio Access Technology, RAT）の利用可能なDTNの1つのみに接続することができる。
【０００３】
ユーザのランダムな分布及びデータサービスに対して変化する需要に依存して、総ネットワークスループット速度はDTN毎に変化する。隣接又は重複するネットワークは、スループット、待ち時間（latency）、他の同時接続の数のような、劇的に異なる転送能力を有する可能性があり、それは時間とともに常に変化する。
【０００４】
典型的には、ユーザは、可能な限り最良の経験をすることを好むであろう。しかし、同一のアプリケーション（例えば、ストリーミング・ビデオ・アプリケーション）を使用しても、同一のDTNプロバイダ（例えば、同一のセルラ・プロバイダ）にアクセスする同一エリアの２人のユーザが、隣接するDTNにそれぞれ接続された場合には、劇的に異なる性能を経験する可能性があり、その結果、性能のより高いDTNに接続されたユーザに比べて、性能のより低いDTNに接続されたユーザはネガティブな経験をすることになる。
【０００５】
開示された実施形態の一目的は、複数の利用可能なDTNのうち、どのDTNが最良又は少なくとも適切な性能を提供するかの推定値に基づいて、どのDTNを使用するかを選択することによって、より良いユーザ経験を提供することである。目的は、ハイビジョンビデオストリーミング、高性能ゲーム等のような、性能に感受性あるデータセッションを含むユースケース（use-cases）のためのより良いユーザ経験を提供することである。
【０００６】
本開示の様々な実施形態によれば、無線デバイスによって実行される方法は、データセッションが性能感受性であるかどうかを決定し、データセッションが性能感受性であることに応答して、データ転送ノードを選択し、選択されたDTNを使用してデータセッションを実行することを含む。
【０００７】
本開示の様々な実施形態によれば、デバイスは、プロセッサと、コンピュータ・プログラミング命令を記憶する非一時的コンピュータ読取可能媒体とを備える。コンピュータ・プログラミング命令は、プロセッサによって実行されると、データ・セッションが性能感受性であるかどうかを決定し、データ・セッションが性能感受性であることに応答して、データ・トランスポート・ノード（DTN）を選択し、選択されたDTNを使用してデータ・セッションを実行させる。
【０００８】
一実施形態では、データセッションが性能感受性であるかどうかを判定するステップは、データセッションに関連するプロセスを識別するステップと、既知のプロセスのリポジトリを使用して、プロセスが性能感受性データセッションを生成する可能性が高いかどうかを判定するステップと、プロセスが性能感受性データセッションを生成する可能性が高いと判定するステップと、それに応答して、データセッションが性能感受性であると判定するステップとを含む。
【０００９】
一実施形態では、データセッションが性能感受性であるか否かを判断するステップは、データセッションによって通信されるデータの量をモニタリングするステップを含み、所定の時間内にデータセッションによって通信されるデータの量が所定の第１閾値よりも大きいこと、又はデータセッションによって通信されるデータの量が所定量に達する時間が第２閾値よりも小さいことに応答して、データセッションが性能感受性であると判断するステップを含む。
【００１０】
一実施形態では、DTNを選択するステップは、データセッションの性能要件に従ってDTNを選択するステップを含む。
【００１１】
一実施形態では、DTNを選択するステップは、利用可能なDTNのリストからDTNを選択するステップを含む。
【図面の簡単な説明】
【００１２】
【図１】一実施形態に従った通信ネットワークを示す図である。
【図２】一実施形態に従ったユーザ装置（UE）の構成要素を示す図である。
【図３】一実施形態に従って、データ転送ノード（DTN）を選択し、使用するプロセスを示すフローチャートである。
【図４】一実施形態に従って、データ・セッションが性能感受性データ・セッションであるかどうかを決定するプロセスを示すフロー・チャートである。
【図５】一実施形態に従って、アップリンク（UL）又はダウンリンク（DL）性能のいずれかを最適化するためにDTNを選択し、使用するプロセスを示すフローチャートである。
【図６】一実施形態に従ったデータ・セッション最適化プロセスを示す状態マシン図である。
【図７】一実施形態に従った利用可能なDTNのリストを生成するためのプロセスを示すフローチャートである。
【図８】一実施形態に従ったリストからDTNを選択するプロセスを示すフローチャートである。
【図９】別の実施形態に従ったリストからDTNを選択するプロセスを示すフローチャートである。
【図１０】別の実施形態に従ったリストからDTNを選択するプロセスを示すフローチャートである。
【図１１】別の実施形態に従ったリストからDTNを選択するプロセスを示すフローチャートである。
【図１２】別の実施形態に従ったリストからDTNを選択するプロセスを示すフローチャートである。
【発明を実施するための形態】
【００１３】
本開示は、ネットワーキングに関し、特に無線ネットワーキングに関する。本開示の実施形態は、複数のDTNに接続することができるデバイスが、それらのDTNのうちのどのDTNに接続するかをどのように決定するかに関する。
【００１４】
様々な実施形態によれば、無線ネットワーク内のユーザ装置（UE）などのユーザ装置は、複数のDTNのうちどのDTNに選択すべきかを選択する。選択は、複数のDTNの各DTNが、ユーザ装置によって実行されている、又は実行されようとしているデータ・セッションのネットワーク性能要件をどの程度満足するかの予測又は推定に基く。
【００１５】
図1は、一実施形態に従った通信ネットワーク100を示す。ネットワーク100は、広域ネットワーク（WAN）102、複数のセルラ基地局104A及び104B、WiFiアクセスポイント（AP）108、及びWAN 102に取り付けられた複数のサーバ114A及び114Bを含む。しかしながら、実施形態は、これに限定されない。通信ネットワーク100は、複数のユーザ装置（UEs）120A、120B及び120Cとサーバ114A及び114Bとの間の通信を可能にするように動作する。セルラ基地局104A及び104B及びWiFi AP 108の各々は、1つ又は複数のデータ転送ノード（DTNs）として動作することができる。
【００１６】
第１の基地局104Aは、セル内のUEとの無線データ通信を実行するための複数のセルを提供する。実施形態では、セルは、セクタに編成され、各セクタは、第１の基地局104Aの周囲のエリアの一部をカバーする。図1に示す第１の基地局104Aは、そのセルを、それぞれ約120度をカバーする3つのセクタに編成し、そのうちの1つのセクタのみが示されている。
【００１７】
図1に示す第１の基地局104Aのセクタは、800MHzで動作する第１のセル106A-08、1800MHzで動作する第２のセル106A-18、及び2100MHzで動作する第３のセル106A-21の3つのセルを含む。セクタ内のUEは、そのセクタ内のセルのいずれかに接続することができ、典型的には、UEは、何れかの1つの時間に1つのセルにのみ接続する。セル106A〜08、106A〜18、及び106A〜21の各々は、DTNを構成する。
【００１８】
第２の基地局104Bは、第１の基地局104Aに類似しており、第２の基地局104Bのセクタが図1に示されている。セクタは、800MHzで動作する第4のセル106B-08、1800MHzで動作する第5のセル106B-18、及び2100MHzで動作する第6のセル106B-21を提供し、それぞれがDTNを構成する。
【００１９】
WiFi AP 108は、無線ローカルエリアネットワーク（WLAN）110を提供し、WiFi機能を有する無線LAN110内のUEが無線データ通信を実行できるように動作する。WiFi AP 108では、1つの無線LAN110のみが示されているが、実施形態はこれに限定されず、WiFi APは、異なる周波数（例えば、2.4GHz及び5GHz）である複数の無線LANを提供することができ、それぞれがDTNを構成する。
【００２０】
第１のUE 120Aは、第１の基地局104A及び第２の基地局104Bのセルのカバレージ内にあり、かつ、WiFi AP 108の無線LAN110のカバレージ内にある。その結果、第１のUE 120Aは、第１のUE 120Aが800MHzのセルラ能力を有する場合には第１のUE106A-08及び第4のセル108B-08を使用して無線通信を行うことができ、UE 120Aが1800MHzのセルラ能力を有する場合には第２のUE120A-18及び第5のセル106B-18を使用して無線通信を行うことができ、第１のUE 120Aが2100MHzのセルラ能力を有する場合には第３のUE106A-21及び第6のセル108B-21を使用して無線通信を行うことができ、第１のUE 120AがWiFi能力を有する場合にはWLAN 110を使用して無線通信を行うことができる。従って、図1に示された実施例の第１のUE 120Aは、8つまでの利用可能なDTNを有し得る。典型的には、いつでも、UE 120Aは、1つのセル、及び任意選択的に1つのWiFi APのみを使用して、通信することができる。
【００２１】
第２のUE 120Bは、第１、第２、及び第３のセル106A-08、106A-18、及び106A-21のカバー範囲内にあるのみであり、従って、そのUEがそれぞれ800、1800、又は2100MHzの能力を有するか否かに依存して、それらのセルのみを使用して通信することができ、従って、3つまでの利用可能なDTNを有することができる。第３のUE 120Cは、第4、第5、及び第6のセル106B-08、第106B-18、及び第106B-21のカバレッジ内にのみ存在し、従って、そのUEがそれぞれ800、1800、または2100MHzの能力を有するかどうかに依存して、それらのセルのみを使用して通信することができ、従って、3つまでの利用可能なDTNを有することができる。
【００２２】
第１、第２及び第３のUE120A、120B、及び120Cはそれぞれ、携帯電話、コンピュータ、ラップトップコンピュータ、タブレット、ハンドヘルドデバイス、ハンドセットデバイス、スマートテレビジョン、スマートウォッチ、又はそれらの組み合わせを含んでもよい。特定の実施形態では、UE端末は、データ転送ネットワークと無線接続することができる装置である。
【００２３】
第１のUE 120Aが取得する通信性能は、第１のUE 120Aが通信を実行するために使用するDTNに依存し得る。例えば、第１の基地局104Aのセクタにおける第２のUE 120B及び他のUEが、第１の基地局104AとWAN 102との間の接続を飽和させている場合、第１のUE 120Aは、第１の基地局104AのDTNの代わりに第２の基地局104BのDTNを使用して通信することによって、より良い性能を得ることができる。別の例では、第１の基地局104Aのセクタにおける第２のUE 120B及び他のUEが、第１の基地局104Aの第１のセル106A-08において輻輳を引き起こしている場合、第１のUE 120Aは、第１の基地局104Aの第１のセル106A-08の代わりに、第２のセル106A-18又は第１の基地局104Aの第３のセル106A-21を使用して通信することによって、より良い性能を得ることができる。
【００２４】
上記の状況は、Wi-Fi AP 108に関しても適用される場合がある。例えば、Wi-Fi AP 108がホテル内のWi-Fiアクセスポイントである場合、Wi-LAN110が第１及び第２の基地局104A及び108Bよりも優れた性能を提供するかどうかは、ホテルの他の居住者がどれだけのWi-Fiトラフィックを生成しているかに依存し得る。
【００２５】
上述のように、基地局104A及び104Bによって提供される各セル、並びにWiFi AP 108によって提供される各無線LANは、データ転送ノードとみなされ得る。実施形態において、第１のUE 120A、第２のUE 120B、又は第３のUE 120CのようなUEは、UEが行っている通信動作（例えば、データセッション）のために最も高い性能を提供する可能性が高い利用可能なDTNを選択するように動作し、それによって、そのUEのユーザにより良い経験を提供する。
【００２６】
図2は、一実施形態に従ったユーザ装置200の構成要素を示す。UE 200は、図1のUE120A、120B、及び120Cのいずれか又は全てに含まれてもよい。UE 200は、アプリケーション・プロセッサ202と、ベースバンド・プロセッサ204と、不揮発性（NV）メモリ206と、動的ランダムアクセスメモリ（DRAM）208と、入出力（I/O）インターフェース210と、セルラRFトランシーバ212と、セルラアンテナ214と、WiFi RFトランシーバ216と、WiFiアンテナ218とを含み、これらは全てバス260を介して互いに通信することができる。UE 200は、図1のセルラ基地局104A及び104B及びWiFi AP 108などのDTNを介して、1つ又は複数のデータ転送ネットワークに無線接続することができる。
【００２７】
アプリケーション・プロセッサ202は、電子メールクライアント、ウェブブラウザ、ビデオアプリケーションなどのアプリケーションを実行する。アプリケーション・プロセッサ202はまた、UE 200のための管理アクティビティを実行してもよい。アプリケーション・プロセッサ202は、NVメモリ206及びDRAM 208を利用することができ、これらのいずれか又は両方は、ソフトウェア（例えば、コンピュータ・プログラミング命令）及びその中に記憶されたデータを有する非一時的なコンピュータ読取り可能媒体を含んでもよい。
【００２８】
ベースバンド・プロセッサ204は、ベースバンド信号処理を行い、アプリケーション・プロセッサ202とRFトランシーバ212及び216との間で情報を通信することもできる。ベースバンド・プロセッサ210は、NVメモリ206及びDRAM 208に格納されたソフトウェア及びデータを使用することができる。一実施形態では、セルラ通信及びWiFi通信の各々について、別々のベースバンド・プロセッサが存在してもよい。
【００２９】
セルラRFトランシーバ212は、セルラRF送信機及びセルラRF受信機を含む。セルラRFトランシーバ212は、ベースバンド・プロセッサ204から受信した第１の情報をセルラアンテナ214を介してセルラDTNに送信し、セルラアンテナ214を介して受信した第２の情報をセルラDTNからベースバンド・プロセッサ204に提供するように構成される。
【００３０】
WiFi RFトランシーバ216は、WIFI RF送信機及びWiFi RF受信機を含む。WiFi RFトランシーバ216は、ベースバンド・プロセッサ204から受信した第３の情報をWiFiアンテナ218を介してWiFi DTNに送信し、WiFiアンテナ218を介して受信した第4の情報をWiFi DTNからベースバンド・プロセッサ204に提供するように構成される。
【００３１】
入出力インターフェース210の入力インターフェースは、ユーザから情報を受信し、I/Oインターフェース210の出力インターフェースは、ユーザへ情報を出力する。入力インターフェースは、キーボード、キーパッド、マウス、タッチスクリーン、マイクロホンなどのうちの1つ以上を含んでもよい。出力インターフェースは、表示装置、タッチスクリーン、スピーカなどのうちの1つ以上を含むことができる。入出力インターフェース210はまた、外部装置へのインターフェースを含んでもよい。
【００３２】
本明細書に記載されるように、UE 200の多くの機能は、ハードウェア又はソフトウェアのいずれかで実装されてもよい。どの機能がソフトウェアで実装され、どの機能がハードウェアで実装されるかは、設計に課される制約によって異なる。制約は、設計コスト、製造コスト、市販までの時間、電力消費、利用可能な半導体技術などのうちの1つ以上を含み得る。
【００３３】
本明細書に記載されているように、UE 200の構成要素の機能を実現するために、多種多様な電子デバイス、回路、ファームウェア、ソフトウェア、及びそれらの組み合わせを使用することができる。さらに、UE 200は、記憶インターフェース、クロック発生器回路、電源回路等のような、簡略化のために省略された他の構成要素を含んでもよい。
【００３４】
UE 200は、特定のホスト（例えば、Youtube.comのようなビデオストリーミングホスト）にアクセスしようとする可能性があり、そのホストに接続できる複数のDTNが利用可能である可能性がある。UE 200がホストに（アプリケーションを使用するか、Webブラウザを介して）アクセスすると、データ・セッションが作成される。実施形態は、前記データ・セッションが、性能に感受性あるデータ・セッション（以下に説明するエレファントフロー（elephant flow）を含むデータ・セッションなど）に対応するかどうかを決定すること、及び、現在UE 200に利用可能な複数のDTNの中からデータ・セッションにより高い性能を提供する可能性のあるDTNを選択することによって、性能に感受性あるデータ・セッションにより良い性能を提供することに関する。
【００３５】
図3は、一実施形態による、データ転送ノードを選択し、使用するためのプロセス300を示す。プロセス300は、図1のUE 120AのようなUEによって実行することができる。
【００３６】
S302において、プロセス300は、実行されるべきデータ・セッションがパフォーマンス（性能）に感受性あるデータ・セッションであるか否か、すなわち、データ・セッションのためのダウンリンク及び／又はアップリンクの性能が不十分であることが、ユーザ経験の低下につながる可能性があるか否かを決定する。性能に感受性あるデータ・セッションは、例えば、ビデオ・ストリーミング・データ・セッション（特に、高解像度ビデオ・ストリーミング）であって、ダウンリンク・性能が悪いと、ビデオ内のアーティファクト又はビデオの詰まりにつながる可能性があるもの、ゲーム・データ・セッションであって、アップリンク又はダウンリンク・性能が悪いと、ゲームのプレイヤが他のプレイヤに対して不利になる可能性があるものを含み得る。
【００３７】
プロセス300は、データベースを参照することによって、又はデータ・セッションをモニターすることによって、又はその両方によって、データ・セッションが性能に敏感であるかどうかを決定することができる。プロセス300は、例えば、この決定を行うために、図4に関して説明するプロセス402を使用してもよい。
【００３８】
S304では、データ・セッションが性能に敏感である場合には、プロセス300はS306へと進み、そうでない場合には、プロセス300はS308へと進む。
【００３９】
S306において、プロセス300は、データ・セッションのための最良の性能を提供する可能性が高いデータ転送ノードを選択し、次に、選択されたDTNを使用してデータ・セッションを実行する。プロセス300は、例えば、図５に関して説明するプロセス506を使用して、DTNを選択してもよい。データ・セッションが終了すると、プロセス300が終了する。
【００４０】
S308では、プロセス300は、プロセス300の開始時に接続されたUEのいずれかのDTNを使用してデータ・セッションを実行する。プロセス300の開始時にUEがDTNに接続されていなかった場合、プロセス300は、本明細書に記載のDTNを選択するためのプロセス、又は当該技術分野で公知のプロセスのいずれかを使用するプロセスを使用して1つを選択してもよい。
【００４１】
図３に示す実施形態では、プロセス300は、データ・セッションが終了したときに終了するが、実施形態はこれに限定されない。一実施形態では、S308において、プロセス300が所定の期間データ・セッションを実行した後、プロセス300は、S302に進み、データ・セッションが性能感受性であるか否かを再決定する。
【００４２】
図４は、一実施形態に従って、データ・セッションが性能感受性データ・セッションであるかどうかを決定するためのプロセス402を示す。プロセス402は、図3のプロセス300のS302で使用されてもよい。
【００４３】
S404において、プロセス402は、データ・セッションに関連付けられたプロセスを識別する。データ・セッションに関連するプロセスを識別することは、データ・セッションを実行しているアプリケーションに関連する固有の識別子を決定することを含み得る。例えば、ビデオをストリーミングするためのアプリケーションは、第１のユニーク識別子を有することができ、VoIP（Voide over IP）を実行するためのアプリケーションは、第２のユニーク識別子を有することができ、ビデオチャットアプリケーションは、第３のユニーク識別子を有することができる。固有識別子は、例えば、データ・セッションを実行するプロセスを識別すること、プロセスが属するアプリケーションを識別すること、及びそのアプリケーションに関連する固有識別子をオペレーティング・システムから取得することによって決定することができる。
【００４４】
S406において、プロセス402は、一意の識別子を使用して、既知のプロセスのリポジトリ（repository）をチェックし、プロセスが性能に感受性あるデータ・セッションを生成する可能性が高いかどうかを判断する。既知のプロセスのリポジトリは、アプリケーションがネットワークを横断する他のデータ・セッションよりも比較的高いデータ要求及び／又は比較的長い継続時間を有する可能性を測定するために、分析技術（例えば、機械学習）を用いて作成されてもよい。例えば、ビデオ・ストリーミング・アプリケーションは、典型的なプロセスよりも高いデータ要求を持つ可能性が高い。一方、例えば、SMS、VoIP、Internet-of-Thingsアプリケーションは、典型的なデータ要求よりも高いデータ要求を持つ可能性が低い。
【００４５】
一意の識別子が、既知のプロセスのリポジトリ内で、第１閾値よりも大きいデータスループットを必要とする可能性、又は第２閾値よりも長い継続時間を有する可能性に関連する場合、プロセスは、性能感受性データ・セッションを生成するために決定される。
【００４６】
また、既知のプロセスのリポジトリは、プロセスが、アップリンク通信、ダウンリンク通信、又はその両方において、通常よりも高い性能要件を有するデータ・セッションを生成する可能性が高いかどうかを示すことができる。
【００４７】
通常よりも高い性能要求を持つデータ・セッションは「エレファントフロー」とみなされる。通常よりも高い性能要求を持たないデータ・セッションは「標準フロー（standared flow）」とみなされる。
【００４８】
S408において、既知のプロセスのリポジトリが、プロセスがエレファントフローを生成する可能性が高いことを示す場合、プロセス402はS416へと進み、そうでない場合、プロセス402はS410へと進む。
【００４９】
S410において、プロセス402は、最初に、プロセスに関連付けられたデータ・セッションを、非性能感受性、すなわち、標準フローとして指定する。
【００５０】
S412において、プロセス402は、データ・セッションが実行されている間に、プロセスに関連付けられたデータ・セッション内で通信されているデータをモニターする。アップリンクのデータ、ダウンリンクのデータ、又はアップリンクとダウンリンクの両方のデータを監視することができる。一実施形態では、データ・セッションにおいて通信されるデータの量は、所定の期間にわたって監視されてもよい。別の実施形態では、データ・セッションによって所定量のデータが通信される時間をモニターすることができる。
【００５１】
一実施形態では、既知のプロセスのリポジトリ内にないプロセスに関連する1つ以上のデータ・セッションをモニタリングすることから得られた情報は、そのプロセスのための所定の数のデータ・セッションがモニタリングされるまで蓄積される。プロセスに関連する所定の数のデータ・セッションがモニターされると、そのプロセスが性能感受性データ・セッションに関連する可能性が高いかどうかの判定が、モニターからの情報を使用して行われ、その判定は、既知のプロセスのリポジトリ内のプロセスに関連して記憶される。
【００５２】
S414において、プロセス402は、データ・セッションによって通信されるデータの量、例えば、所定の期間の間に通信されるデータの量が、閾値を超えるかどうかを決定する。しきい値は、静的又は動的であって良い。データ量が所定の閾値を超える場合、S414において、プロセス402はS416へと進み、そうでなければ、プロセス402はS412へと進む。
【００５３】
S416において、プロセス402は、プロセスに関連するデータ・セッションを、性能感受性である、すなわち、エレファントフローとして指定する。一実施形態では、プロセス402は、S406において参照される既知のプロセスのリポジトリ内の情報、又はS412においてモニターされるアップリンク及び／又はダウンリンクデータの量に従って、データ・セッションをアップリンク性能感受性、ダウンリンク性能感受性、又はその両方として指定することができる。その後、プロセス402は終了する。
【００５４】
データ・セッションが性能感受性である（例えばエレファントフロー）と指定されると、データ・セッションは、明示的に終了するまで、或いはアイドルタイムアウトによって終了するまで、その指定を保持する。例えば、一実施形態では、20秒間アイドルである任意のデータ・セッションは、終了したものとみなされる。終了したデータ・セッションと同じプロセスに関連するデータパケット、又は終了したデータ・セッションと同じ目的地（destination）をターゲットとするデータパケットは、新しいデータ・セッションの一部と見なされる。
【００５５】
図５は、一実施形態に従って、アップリンク（UL）又はダウンリンク（DL）性能のいずれかを最適化するためにDTNを選択し、使用するためのプロセス506を示す。プロセス506は、図3のプロセス300のS306で使用されてもよい。
【００５６】
S510において、プロセス506は、性能に感受性あるデータセッション（エレファントフローのような）が、UL性能に感受性あるもの及び／又はUL性能に感受性あるものとして指定されているかどうかを決定する。データ・セッションがUL性能感受性あるものとして指定されていて、DL性能感受性あるものとして指定されていない場合、S510においてプロセス506はS512Uへと進む。データ・セッションがDL性能感受性あるものとして指定されていて、UL性能感受性あるものとして指定されていない場合、S510においてプロセス506はS512Dへと進む。データ・セッションがDL及びUL性能感受性の両方があるものとして指定されている場合、S510においてプロセス506はS512Bへと進む。
【００５７】
S512Bを含まない実施形態において、データ・セッションがUL及びDL性能感受性の両方があるものとして指定されている場合、プロセス506は、S512U及びS512Dのどちらに進むべきかを決定するために、所定のタイ・ブレーク・ルールを使用してもよい。
【００５８】
一実施形態では、データ・セッションがUL又はDL性能感受性あるものとしてどちらも指定されていない場合、プロセス506は、S512U、S512D、及びS512B（存在する場合）のいずれに進むかを決定するために、所定のデフォルト・ルールを使用してもよい。
【００５９】
S512Uにおいて、プロセス506は、ULデータ・フローのための図６のプロセス612を実行するなどして、UL最適化された方法でデータ・セッションを実行する。その後、プロセス506が終了する。
【００６０】
S512Dにおいて、プロセス506は、DLデータ・フローのために図６のプロセス612を実行するなどして、DL最適化された方法でデータ・セッションを実行する。その後、プロセス506が終了する。
【００６１】
S512Bにおいて、プロセス506は、UL及びDL性能の両方を組み合わせる集約的な性能（aggregate performance）のために最適化されたデータ・セッションを実行することができる。例えば、実施形態において、データ・セッションは、UL性能目標及びDL性能目標を有してもよく、データ・セッションは、両方の性能目標を満たすように最適化されてもよい。別の実施形態では、データ・セッションは、UL及びDL性能の各々について重みづけを有することができ、データ・セッションは、各々の重みによってスケールされたUL及びDL性能の合計について最適化され得る。
【００６２】
図６は、一実施形態に従って、UL性能、DL性能、又はその両方に感受性あるデータ・セッションのデータ・セッション最適化のためのプロセス612を示す状態マシン図である。プロセス612は、図５のプロセス506のS512U（ULデータ・フローに対して最適化することによって）、S512D（DLデータ・フローに対して最適化することによって）、及びS512B（UL+DL集約データ・フローに対して最適化することによって）のいずれか又はすべてにおいて使用されてもよく、又はUL及びDL性能の両方を組み合わせる集約性能（aggregate performance）に対して最適化するために使用されてもよい。
【００６３】
S620において、プロセス612は、利用可能なデータ転送ノード（DTNs）のリストを生成する。リストには、異なる周波数のDTN、異なるRATを使用するDTN、異なる基地局又はアクセスポイントに配置されるDTNなどを含めることができる。次いで、プロセス612は、S622へと移行する。
【００６４】
S622において、プロセス612は、利用可能なDTNのリストから1つのDTNを選択する。もし選択されたDTNが、プロセス612を実行しているデバイス装置が現在接続されているDTNではない場合、データ・セッションを実行するために選択されたDTNに接続する。一実施形態では、プロセス612は、データ・セッションが感受性あるものに従って、最も高いDL（DL性能に感受性あるデータ・セッションについて）、最も高いUL（DL性能に感受性あるデータ・セッションについて）、又は最も高い複合性能（両方に感受性あるデータ・セッションについて）を提供するのに最も高い確率を有する利用可能なDTNを選択することができる。別の実施形態では、プロセス612は、適切な性能を提供する利用可能なDTNを選択することができる。
【００６５】
複数のDTNが、S622で用いられる選択基準を満たすことができる。例えば、DTNが最も適切な性能を提供する同順位のものが存在してもよいし、適切な性能を提供する複数のDTNが存在してもよい。実施形態において、複数のDTNが選択基準を満たす場合、プロセスS612は、その複数のDTNの中から1つのDTNを選択するために「良い隣人（good neighbor）」ポリシーを使用する。選択基準を満たす複数のDTNの中から1つのDTNを選択する場合、その「良い隣人」ポリシーは、選択が無線ネットワークの他のユーザ達に与える負の影響を最小限に抑えることを目指す。例えば、無線ネットワークのほとんどのユーザ達がセルカバレージ半径のエッジにいて、選択基準を満たす２つのDTNが異なる周波数帯域で動作し、周波数帯域の低い方がより大きな地理的カバレージを提供する場合において、プロセスS612は、より高い周波数帯域を有するDTNを選択することができる。その目的は、より低い周波数帯域を有するDTNを使用することしかできないより遠いユーザに対して、より低い周波数帯域を有するDTNの有用性を、低減しないようにするためである。
【００６６】
S622において、DTNが選択されると、プロセス612は次にS624へと移行する。
【００６７】
S624において、プロセス612は、セッションタイマーを開始し、次いで、S626へと移行する。
【００６８】
プロセス612は、セッションタイマーが所定値N以下の値を有していて、最適化されるデータ・セッションが終了されていない限り、セッションタイマーを増加（increment）させながら、S626に留まる。データ・セッションが終了すると、プロセス612はS628へと遷移する。セッションタイマーが所定値Nよりも大きな値を有していて、データ・セッションが依然としてアクティブである場合、プロセス612は、現在のDTNがデータ・セッションにとって最良のDTNである可能性が高いかどうかを再評価するために、S620へと移行する。
【００６９】
S628において、プロセス602は、セッションタイマーを終了して、その後退出する。
【００７０】
図７は、一実施形態に従って、利用可能なDTNリストを生成するためのプロセス720を示す。プロセス720は、図６のプロセス612のS620で使用されてもよい。
【００７１】
S722において、プロセス720は、プロセス720を実行するデバイスが取り付けることができる利用可能なDTNのリストを受信する。利用可能なDTNのリストは、デバイスがデバイスに利用可能なデータ転送ネットワークの中で接続可能なDTNを探索することによって生成されたものであって良い。一実施形態では、プロセス720によって受信される利用可能なDTNのリストは、当技術分野で公知の手段によって生成される。
【００７２】
S724において、プロセス720は、利用可能なDTNのリストを改良することができる。DTNのリストは、例えば、チャネル品質表示（Channel Quality Indication, CQI）、信号対干渉+雑音比（Signal to Interference plus Noise Ratio, SIRN）、受信信号強度表示（Received Signal Strength Indication, RSSI）、基準信号受信電力（Reference Signal Received Power RSRP）、基準信号受信品質（Reference Signal Received Quality, RSRQ）、チャネルサイズ（channel size）、スループット（throughput）、変調符号化体系（Modulation and Coding Scheme, MCS）、ラウンドトリップ時間（Round Trip Time, RTT）又は他の待ち時間（other latency）、成功率に対するブロック失敗率（block failure to success ratio）、チャネルサイズ（channel size）などの、DTNの特徴に従って、リストをいくつかのDTNに限定することによって、改良することができる。実施形態において、プロセス720は、リストを改良して、利用可能なDTNの受信リストの所定の閾値よりも良好な特性又は所定の上パーセンタイル（percentile）にある特性を有するDTNのみを含むようにすることができる。例えば、一実施形態では、プロセス720は、60ミリ秒未満のRTT、5メガビット/秒のスループット、又はその両方を有するDTNのみを含むように、利用可能なDTNの受信リストを改良することができる。
【００７３】
受信された利用可能なDTNのリストは、好ましい無線アクセス技術、好ましいオペレータ、DTNがキャリア・アグリゲーション（carrier aggregation）をサポートするかどうか、セルIDモード、好ましいバンド又はサブチャネルなどによって、改良することもできる。
【００７４】
S726において、プロセス720は、乱数発生器（RNG）又は疑似乱数発生器（PRNG）の出力に従ってリストを並べ替えることによって、利用可能なDTNの改良リストをランダム化することができる。リストをランダム化することによって、プロセス720は、同一又は類似の実施形態を使用する異なるデバイスが、類似のデータ・セッションを実行するために異なるDTNを選択する可能性を高める。
【００７５】
図８は、一実施形態によるパッシブモードサンプリングを用いて、利用可能なDTNのリストからDTNを選択するためのプロセス822を示す。プロセス822の一部（例えば、S806）は、図６のプロセス612のS622で使用されてもよい。プロセス822の他の部分（例えば、S804）は、例えば、性能感受性データ・セッションが実行されていない場合など、図６のプロセス612のS622の前に実行されてもよい。
【００７６】
S804では、プロセス822を実行するデバイスがデータ転送を実行していない間に、プロセス822は、利用可能なDTNのリストから１つ以上のDTNの微小速度試験又はマイクロスピードテスト（micro-speed tests）を実行する。マイクロスピードテストは、テストのデータパス内にコンテンツ・サーバーを使用する場合と使用しない場合がある。マイクロスピードテストのターゲットは、移動ネットワーク内に直接あるか、又は移動ネットワークの外部（例えば、インターネット）にあるかのいずれかである。微小速度試験又はマイクロスピードテストは、空のデータパケットを送信及び／又は受信することによってDTNのRTT又は半RTT待ち時間を測定すること、又はデータパケットを送信することによってDTNのスループット能力を測定することからなるが、これらに限定されない。一実施形態では、プロセス822を実行するデバイスは、マイクロスピードテストを実施するために、事前に接続されたDTNから切り離し、テストされるDTNに接続する。
【００７７】
一実施形態では、マイクロスピードテストから収集された情報は、さらに、マイクロスピードテストを実施する他のデバイスによって収集された情報を含み、これらのデバイスは、それぞれのマイクロスピードテストから収集された情報をプロセス822を実施するデバイスに送る。
【００７８】
一実施形態では、DTNトランスポート能力は、各DTNのトランスポート能力（例えば、最大スループット、最低待ち時間など）を決定するために、（UEにとって）可視DTNを介して送信されるパケットの配送性能を測定することによって評価される。データパケットは、UE端末とコンテンツ・サーバー（例えば、ストリーミング・ビデオ・サーバー又はゲーム・サーバー）との間を移動する。送受信データ量が多いほど、スループット予測の精度は高くなる。処理速度や全体的なデータ消費のような資源を節約するために、限られた数のパケットを送ることができる。なぜなら、各DTNの性能を高精度に評価する必要がないからである。その代わりに、実施形態では、DTNが近隣の隣接機器よりも性能が高い可能性があるかどうかを、判定しようとすることができる。
【００７９】
例えば、0.25秒のテストインターバルにおいて、第１のDTNは50kbpsのスループットを有すると推定され、第２のDTNは100kbpsのスループットを有すると推定され得る。各DTNが数秒間にわたってテストされた場合、それらの全体のスループットは、示された0.25秒計算の結果よりもはるかに高い可能性がある。しかしながら、100kbps推定スループットを有する第２のDTNの真の速度は、50kbps推定スループットを有する第１のDTNの真のスループットよりも大きい可能性が高い。故に、UEが第２の（100Kbps）のDTNに接続する場合、UEはおそらく最良の性能を経験するであろう。
【００８０】
S806において、プロセス822は、マイクロスピードテストから収集された情報を使用して、利用可能なDTNのリストからDTNを選択する。一実施形態では、プロセス822は、マイクロスピードテストから収集された情報を用いて決定される、目標性能閾値（すなわち、適切な性能を提供すべき）を満たす第１のDTNを選択する。この目標性能閾値は、予め決定されてもよく、或いは、DTNが選択されているデータ・セッションに関連付けられてもよい。一実施形態では、プロセス822は、マイクロスピードテストから収集された情報を用いて決定される、DTNが選択されるデータ・セッションがDL性能、UL性能、又はその両方に感受性あるどうかに応じて、最高のDL、UL、又は集合UL／DL測定性能を有するセルを選択する。性能は、待ち時間、ULスループット、DLスループットなど、又はそれらの組み合わせを使用して測定され得る。次いで、プロセス822が終了する。
【００８１】
図９は、一実施形態に従って、利用可能なDTNのリストからDTNを選択するためのプロセス922を示す。プロセス922は、図6のプロセス612のS622で使用されてもよい。プロセス922の1つ以上の部分は、最適化されるべきデータ・セッションの進行中に、実行されてもよい。
【００８２】
S902において、プロセス922は、最適化すべきデータ・セッションを実行するためにデバイスが現在使用しているDTNが適切な性能を提供しているかどうかを決定する。プロセス922は、遅延又はスループットのようなデータ・セッションの統計を測定することによって、これを行うことができる。一実施形態では、現在使用中のDTNが適切な性能を提供しているかどうかを判断するには、ビデオストリーミングアプリケーションからの失速（stall）インジケータ（indicator）のような、最適化すべきデータ・セッションを実行するプロセスからのインジケータをモニターすることによって行うことができる。
【００８３】
現在使用中のDTNが適切な性能を提供する場合、S902において、プロセス922はS908へと進み、そうでなければ、プロセス922はS904へと進む。
【００８４】
S904において、プロセス922は、上述の図８のS804に関して説明したように、利用可能なDTNのリスト内の１つ以上のDTN（現在使用中のDTN以外の）のマイクロスピードテストを実行する。
【００８５】
一実施形態では、プロセス922は、データ・セッションのそれぞれの部分を使用して、利用可能なDTNのマイクロスピードテストを実行し、その部分を実行する際に達成される性能を測定することができる。例えば、プロセス922は、第１のDTNの性能を評価するために、第１のDTN上でビデオデータセッションの第１の0.25秒を実行し、第２のDTNの性能を評価するために、第２のDTN上でビデオデータセッションの第２の0.25秒を実行するなどして、従って、望まれる実行用の新しいDTNとしてデータ・セッションを提供し続けることを試みることができる。
【００８６】
S906において、プロセス922は、図８のS806に関して説明したように、マイクロスピードテストから収集された情報を使用して、利用可能なDTNのリストから１つのDTNを選択する。次いで、プロセス922が終了する。
【００８７】
実施形態において、新しいDTNを選択するための他の技術が、S904及びS906に関して記載されたものの代わりに使用され得る。例えば、一実施形態において、S904及びS906は、図１０のS1004及びS1006（すなわち、DTNを選択するためにDTNメトリック及び特性を使用する計算を使用してもよい）、図１１のS1104及びS1106（すなわち、DTNを選択するために履歴性能情報を使用してもよい）、図１２のS1204及びS1206（すなわち、DTNがランダムに選択されてもよい）などによって置き換えられてもよい。
【００８８】
S908において、プロセス922は、選択されたDTNとして、現在使用中のDTNを選択する。次いで、プロセス922が終了する。
【００８９】
図10は、一実施形態に従って、利用可能なDTNのリストから１つのDTNを選択するためのプロセス1022を示す。プロセス1022は、テストを使用せず、利用可能なDTNの中から「最良の推測」選択を行うために、代わりに、DTNに関連する１つ以上のメトリック（metric）を使用する。プロセス1022は、図６のプロセス612のS622で使用されてもよい。
【００９０】
S1004において、プロセス1022は、どのDTNが所望の性能を提供する可能性が最も高いかを決定するために、利用可能なDTNのリスト内のDTNについてのそれぞれの計算を実行する。それぞれの計算は、DTNのそれぞれの特性の1つ又はそれ以上の複数の組み合わせを使用する。例えば、チャネル品質表示（CQI）、信号対干渉+雑音比（SIRN）、受信信号強度表示（RSSI）、基準信号受信電力（RSRP）、基準信号受信品質（RSRQ）、チャネルサイズ、スループット、変調及び符号化方式（MCS）、ラウンドトリップ時間（RTT）又は他の待ち時間、成功率に対するブロック失敗率（block failure to success ratio）、チャネルサイズ、無線アクセス技術（RATs）、DTNが好ましいオペレータによって操作されるか否か、DTNがキャリア集合をサポートするか否か、などである。
【００９１】
一実施形態では、より高い計算結果を有するDTNが、所望の性能を提供する可能性がより高い。望ましい性能は、最適化すべきデータ・セッションに応じて、UL性能、DL性能、又はその両方の集合体であり得る。所望の性能は、例えば、低遅延、高スループット、又はそれらの組み合わせであり得る。
【００９２】
S1006において、プロセス1022は、選択されたDTNとして、利用可能なDTNのリストから、最良の計算結果（例えば、最高の結果）を有するDTNを選択する。次に、プロセス1022が退出する。
【００９３】
図１１は、一実施形態に従って、履歴性能情報を使用して、利用可能なDTNのリストから１つのDTNを選択するためのプロセス1122を示す。プロセス1122は、図６のプロセス612のS622で使用されてもよい。
【００９４】
S1102において、プロセス1122は、利用可能なDTNのリスト内のDTNに関するそれぞれの履歴性能情報を、他のデバイスから任意で受信することができる。他方のデバイスは、プロセス1122を実行するデバイスがその一部であるネットワークのネットワーク要素であってもよく、そのネットワーク要素は、DTNに関する履歴性能情報を記憶し、配信するように構成される。そのネットワーク要素によって記憶され、配信された履歴性能情報は、そのネットワーク要素によって生成され得る、或いは1つ以上の他のデバイスからそのネットワーク要素によって受信され得る。
【００９５】
S1104において、プロセス1122は、利用可能なDTNのリスト内の各DTNについて、そのDTNの履歴性能を決定する。プロセス1122は、プロセス1122を実行するデバイスによって蓄積されたDTNの履歴性能情報、及びS1102で受信されたDTNの履歴性能情報を使用して、利用可能なDTNのリスト内のDTNのそれぞれの履歴性能を決定する。履歴性能情報は、以前のマイクロスピードテストの結果、以前のユーザ生成セッションのモニタリングの結果などを含んでもよい。一実施形態では、プロセス1122は、利用可能なDTNのリスト内のDTNのそれぞれの識別子を使用して、利用可能な履歴性能情報内のDTNに関するそれぞれの情報を探す。
【００９６】
履歴性能情報（historical performance information）には、デバイスが以前に使用したDTNの性能メトリックスを含めることができる。履歴性能情報は、頻繁に使用される複数のウェブサイト（例えば、人気のあるビデオストリーミングウェブサイト）の特定の性能情報、又は複数の頻繁に使用されるDTNの各々のための頻繁に使用されるウェブサイトの特定の性能情報を含むことができる。ウェブサイト、DTN、又はそれらの組み合わせの履歴性能情報は、各曜日、及び／又は各曜日のうちの複数の部分の各々について、別々のエントリを含むことができる。履歴性能情報には、個別のUL性能情報とDL性能情報とが含まれる場合がある。
【００９７】
一実施形態では、プロセス1122を実行するデバイスは、経時的に履歴性能データを蓄積する。一実施形態では、デバイスは、履歴性能情報の時代を追跡し、情報の時代を使用して、いつ新しい測定を行うかを決定する。
【００９８】
S1106において、プロセス1122は、利用可能なDTNのリストの中から、最も高い履歴性能を有するDTNを選択する。最適化すべきデータ・セッションが主にDL性能に感受性ある場合、最良の履歴DL性能を持つDTNが選択される。最適化すべきデータ・セッションが主にUL性能に感受性ある場合、最良の履歴UL性能を持つDTNが選択される。最適化されるデータ・セッションがULとDLの両方の性能に感受性あるものであり、ULとDLの組み合わせ性能の尺度がDTNを選択するために使用される。性能は、待ち時間、スループット、総データ容量などのうちの1つ以上によって測定することができる。次に、プロセス1122が退出する。
【００９９】
図12は、一実施形態に従って、利用可能なDTNのリストから１つのDTNをランダムに選択するためのプロセス1222を示す。プロセス1222は、図６のプロセス612のS622で使用されてもよい。
【０１００】
S1204において、プロセス1222は、利用可能なDTNのリストを、ランダムに（或いは疑似ランダムに）再順序付ける（例えば、シャッフルする）。S1206において、プロセス1222は、選択されたDTNとして、利用可能なDTNの再順序リストの最初のDTNを選択する。次に、プロセス1222が退出する。
【０１０１】
別の実施形態では、プロセス1222は、1から利用可能なDTNのリストの長さの範囲の整数Nまでを生成するために、乱数発生器又は疑似乱数発生器を使用し、次に、利用可能なDTNのリストのN番目の要素を選択DTNとして選択する。次に、プロセス1222が退出する。
【０１０２】
実施形態において、ユーザデバイス、特に、ユーザ装置（UE）のような無線ユーザデバイスを含み、これは、性能に感受性あるデータ・セッションによって要求される性能を提供するために、各利用可能なDTNの予測能力に従って、どのDTNに接続し、使用するかを選択することによって、性能に感受性あるデータ・セッションの性能を最適化しようと試みる。選択されたDTNは、最も混雑していなくてもよく、最も高い信号強度又はRSRPを有していなくてもよく、一般に、ネットワーク・オペレータがユーザ・デバイスの使用を好むDTNでなくてもよい。例えば、（DTNの実際の利用可能な容量を無視する）最良の信号強度に依存して、利用可能なトランスポートネットワークをプロービングするユーザデバイスの代わりに、上述のシステム及び方法は、ユーザデバイスが利用可能なトランスポートネットワークを直接プロービングし、測定された性能能力に基づいて、特に最適なネットワーク性能が求められるデータ・セッションに関連する測定された性能能力に基づいて、どちらを使用するかを決定するよう提案する。
【０１０３】
実施形態は負荷分散を避ける（load balancing）。本実施形態では、ユーザデバイスは、利用可能なトランスポートネットワークをプロービングし、性能測定に基づいてどちらを使用するかを決定する（UEは、最適な信号強度のためのプロービングに基づいてLTEネットワークに接続するのに対して）。このシステム及び方法は、他のユーザとのリソースの共有を考慮する代わりに、個々のユーザデバイスに対して可能な最大の性能を優先するため、貪欲（greedy）である。
【０１０４】
実施形態は、拡張セッションの間、ユーザデバイスが、最初に決定された「最良のDTN」が依然として十分な又は最適な性能を提供しているかどうかを定期的にチェックすることができるように、また、必要に応じて、ユーザデバイスがDTNを切り替えることができるようにするために、定期的にチェックを行う。このプロセスは、最適なチャネルを見つけるために、主にアップリンクとダウンリンクの両方の接続に使用することができる。
【０１０５】
実施形態は、単一のデータ転送技術に限定されるものではなく、無線アクセス技術及びWi-Fiを含むが、これらに限定されないネットワークの組み合わせが存在し得る。
【０１０６】
実施形態は、特定の実施例に関して説明されてきたが、実施形態は、これらの実施例によって限定されない。例えば、当業者は、データ・セッションのユーザデバイス自身の性能を最大化するために、どのDTNを使用するかを貪欲に決定することが、本開示の範囲又は精神から逸脱することなく、種々の他のアルゴリズム及びプロセスに従って実行され得ることを認識するであろう。
【０１０７】
ユーザ・デバイスが特定のDTNとの接続を確立すると、セッションタイマーが開始され、連続セッションの長さが監視される。例えば、ビデオストリーミングセッションは、通常、小さなファイル添付ファイルをダウンロードするよりも長い。ユーザのランダムな分布とデータサービスに対する需要の変化により、異なるDTNが当初計算された「最良の」DTNよりも最適な接続になる可能性がある。セッションが終了しないことが判明するたびにカウンタが増加する。カウンタがしきい値「n」を超える場合は、「使用可能なDTNのチェック」に戻り、最も高速なDTNを再プローブする。これにより、ユーザデバイスは、最初に計算された最良のDTNが依然として最適に動作しているかどうかを定期的にチェックすることができ、必要に応じて、ユーザデバイスがDTNを切り替えることができる。
【０１０８】
本開示のいくつかの実施形態が図示され、本明細書に記載されているが、本発明の精神及び範囲から逸脱することなく、多くの変更を行うことができる。例えば、本開示は、無線ネットワーク、有線ネットワーク、ファイバネットワーク、及び同軸ネットワーク単独で、又は組み合わせて使用され得ることが理解され得る。従って、本発明の範囲は、いずれの開示された実施形態によっても限定されない。
【図１】
2022502971.tif 000003
【図２】
2022502971.tif 000004
【図３】
2022502971.tif 000005
【図４】
2022502971.tif 000006
【図５】
2022502971.tif 000007
【図６】
2022502971.tif 000008
【図７】
2022502971.tif 000009
【図８】
2022502971.tif 000010
【図９】
2022502971.tif 000011
【図１０】
2022502971.tif 000012
【図１１】
2022502971.tif 000013
【図１２】
2022502971.tif 000014
【国際調査報告】
2022502971.tif 000015
2022502971.tif 000016