電力消費の低減のためのネットワークアプリケーション並行スケジューリング

著者らは特許

G06F1/32 - 電力節約のための手段
G06F9/48 - プログラムの起動;プログラムの切換,例.割込みによるもの
H04W52/02 - パワーセービング装置

の所有者の特許 JP2016528648:

インテル コーポレイション

 

電力消費を低減させるようにネットワークリクエストをスケジューリングするための技術は、ネットワークアプリケーションからネットワークリクエストを受信し、ネットワークアプリケーションの実行制約に基づいて、ネットワークリクエストが遅延可能かどうかを判定するよう構成されたモバイルコンピューティングデバイスを含む。実行制約は、必要とされる処理リソース、許容可能な遅延、優先度、アプリケーションクラス、及びその他を含み得る。ネットワークリクエストが遅延可能である場合、モバイルコンピューティングデバイスは、閾数の遅延可能なリクエストが受信されるまで、あるいは、遅延可能でないリクエストが受信されるまで、ネットワークリクエストを遅延させることができる。モバイルコンピューティングデバイスは、遅延されたネットワークリクエストと、後に受信された全てのリクエストと、を並行して実行する。実行制約は、各ネットワークアプリケーションにより提供されてもよいし、観測を通じてモバイルコンピューティングデバイスにより決定されてもよい。他の実施形態も説明され特許請求される。

 

 

高速無線ネットワークに接続されるスマートフォン、タブレット、及びノートブックコンピュータ等のポータブルコンピューティングデバイスは、帯域幅集中型ネットワークアプリケーションの使用を大いに増大させている。ほとんどのポータブルデバイスは、メディアストリーミング、ビデオチャット、インタラクティブメッセージング、及びクラウドデータストレージアプリケーションを含む、利用可能な多くのネットワーク負荷の高いアプリケーションを有する。しかしながら、ポータブルコンピューティングデバイスは、通常、制限されたバッテリ容量しか有していない。ポータブルコンピューティングデバイスの使用の増大、特に、無線ネットワーク無線機の使用の増大は、ポータブルデバイスの電力消費量を増加させ、したがって、使用可能なバッテリ寿命を低減させる。
本明細書で説明するコンセプトが、限定ではなく例として、添付の図面に示される。例示の単純さ及び明瞭さのため、図面に示される要素は、必ずしも縮尺通りに描かれてはいない。適切であると考えられる場合には、対応要素又は類似要素を示すために、参照レベルが複数の図面の間で繰り返される。
ネットワークアプリケーション並行スケジューリングのためのシステムの少なくとも1つの実施形態の簡略化されたブロック図。 図1のモバイルコンピューティングデバイスにより確立され得る環境の少なくとも1つの実施形態の簡略化されたブロック図。 図1及び図2のシステムのモバイルコンピューティングデバイスにより実行され得る、ネットワークリクエストをスケジューリングするための方法の少なくとも1つの実施形態の簡略化されたフロー図。 図1及び図2のモバイルコンピューティングデバイスにより実行され得る、ネットワークリクエストを並行実行するための方法の少なくとも1つの実施形態の簡略化されたフロー図。 図1及び図2のモバイルコンピューティングデバイスにより実行され得る、ネットワークリクエストが遅延可能かどうかを判定するための方法の少なくとも1つの実施形態の簡略化されたフロー図。 図1及び図2のモバイルコンピューティングデバイスにより達成され得る例示的な結果を示すチャート。
本開示のコンセプトは、様々な変形形態及び代替形態を受け入れる余地があるが、その特定の実施形態が、例として図面に示され、本明細書で詳細に説明される。しかしながら、本開示のコンセプトを、開示する特定の形態に限定する意図はなく、反対に、意図は、本開示及び添付の特許請求の範囲と整合する全ての変形形態、均等形態、及び代替形態をカバーすることにあることを理解すべきである。
「一実施形態」、「ある実施形態」、「例示的な実施形態」等の本明細書における言及は、説明する実施形態が、特定の特徴、構造、又は特性を含み得るが、全ての実施形態が、そのような特定の特徴、構造、又は特性を含んでもよいし、又は、必ずしもそのような特定の特徴、構造、又は特性を含む必要がなくてもよいことを示す。さらに、このような語句は、必ずしも同じ実施形態を指すわけではない。さらに、特定の特徴、構造、又は特性がある実施形態との関連で記載されている場合には、明示されていようといまいと、他の実施形態との関連でそのような特徴、構造、又は特性を実装することは当業者の知識の範囲内であるとする。さらに、「A、B、及びCのうち少なくとも1つ」という形のリストに含まれる項目は、(A);(B);(C);(A及びB);(A及びC);(B及びC);又は(A、B、及びC)を意味し得ることを理解すべきである。同様に、「A、B、又はCのうち少なくとも1つ」という形でリストされる項目は、(A);(B);(C);(A及びB);(A及びC);(B及びC);又は(A、B、及びC)を意味し得る。
開示する実施形態は、場合に応じて、ハードウェア、ファームウェア、ソフトウェア、又はこれらの任意の組合せにより実装することができる。開示する実施形態はまた、1以上のプロセッサにより読み出されて実行され得る、一時的又は非一時的な1以上のマシン読み取り可能な記憶媒体(例えば、コンピュータ読み取り可能な記憶媒体)により運ばれる命令又はそのような媒体に記憶される命令として実装することができる。マシン読み取り可能な記憶媒体は、マシンにより読み取ることができる形式で情報を記憶又は伝送する任意の記憶デバイス、メカニズム、又は他の物理的構造(例えば、揮発性メモリ、不揮発性メモリ、メディアディスク、又は他のメディアデバイス)として具現化することができる。
図面において、いくつかの構造的特徴又は方法的特徴が、特定の配置及び/又は順序で示され得る。しかしながら、そのような特定の配置及び/又は順序が必要とされるわけではないことを理解すべきである。そうではなく、いくつかの実施形態においては、そのような特徴は、例示する図面に示される態様及び/又は順序と異なる態様及び/又は順序で構成することもできる。さらに、特定の図面内に構造的特徴又は方法的特徴が含まれることは、そのような特徴が全ての実施形態において必要とされることを意味しないし、いくつかの実施形態においては、そのような特徴が含まれないことを意味しない、又はそのような特徴が他の特徴と組み合わされないことを意味しない。
次に図1を参照すると、例示的な実施形態において、ネットワークアプリケーション並行スケジューリングのためのシステム100は、モバイルコンピューティングデバイス102及び1以上のアプリケーションサーバ104を含む。モバイルコンピューティングデバイス102及びアプリケーションサーバ104は、ネットワーク106を介して互いと通信することができる。以下でより詳細に説明するように、使用の際、モバイルコンピューティングデバイス102は、アプリケーションサーバ104と通信する複数のネットワークアプリケーションを実行する。モバイルコンピューティングデバイス102は、それらのアプリケーションから複数のネットワークリクエストを受信し、それらのリクエストが、ネットワークアプリケーション又はその使用に悪影響を及ぼすことなく、遅延可能かどうかを判定する。モバイルコンピューティングデバイス102は、可能であれば、リクエストが、別の遅延可能なリクエスト又は遅延可能でないリクエストと並行して実行され得るまで、リクエストを遅延させる。例えば、モバイルコンピューティングデバイス102は、各ネットワークアプリケーションの実行の少なくとも一部が、互いとオーバーラップするように、又は、互いとほぼ同時に生じるように、遅延された1以上のアプリケーションを、別の遅延されたアプリケーション又は遅延されていないアプリケーションとともに実行することができる。いくつかの実施形態において、モバイルコンピューティングデバイス102は、互いと同じ時間に又は互いとほぼ同時に開始するように並行実行されるアプリケーションをスケジューリングすることができ、これらのアプリケーションが、並列に又は交互に(in an interleaved manner)実行され得る(例えば、各並行実行されるアプリケーションは、モバイルコンピューティングデバイス102のネットワークインタフェース又は他のハードウェアに交互にアクセスすることができる)。そのような実施形態において、ネットワークアプリケーションの実行は、異なる時間に終了し得ることを理解すべきである。他の実施形態においては、遅延されたアプリケーションは、別のアプリケーションの実行の開始のいくらかあとにこの遅延されたアプリケーションの実行を開始することにより、この別のアプリケーションと並行して実行され得る。
例えば、いくつかの実施形態において、第1のネットワークアプリケーションは、アプリケーションサーバ104aに接続するリクエストを発することがある。モバイルコンピューティングデバイス102は、別のアプリケーションからのアプリケーションサーバ104bに接続するリクエストが受信されるまで、アプリケーションサーバ104aに接続するこのリクエストを遅延させることができる。この例において、モバイルコンピューティングデバイス102は、アプリケーションサーバ104a及び104bに接続するこれらのリクエストを並行して処理する(service)。
ネットワークアプリケーション並行スケジューリングは、ネットワークリクエストを順次的に又は個々に処理する場合と比較して、モバイルコンピューティングデバイス102の電力消費を低減させることができる。さらに、多くの無線ネットワーク106に関して、並行実行は、各ネットワークアプリケーションのパフォーマンスに悪影響を及ぼし得ない。詳細には、アプリケーションサーバ104が、利用可能な帯域幅に関して、アプリケーションサーバ104の帯域幅使用を抑制(throttle)又は制限するとき(これは、多くのメディアストリーミングアプリケーションにとって一般的である)、パフォーマンス全体及びユーザエクスペリエンスは、並行ネットワーク実行により変わらないままであり得る。
モバイルコンピューティングデバイス102は、本明細で説明する機能を実行することができる任意のタイプのデバイスとして具現化することができる。そのようなデバイスは、スマートフォン、携帯電話機、ハンドセット、コンピュータ、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、メッセージングデバイス、車両テレマティックスデバイス、ネットワークアプライアンス、ウェブアプライアンス、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、及び/又はコンシューマ電子デバイスを含むが、これらに限定されるものではない。図1に示されるように、モバイルコンピューティングデバイス102は、プロセッサ120、入力/出力サブシステム122、メモリ124、データ記憶デバイス126、及び通信回路130を含む。もちろん、モバイルコンピューティングデバイス102は、他の実施形態においては、スマートフォンにおいて一般的に見つけられるコンポーネント等の他のコンポーネント又はさらなるコンポーネント(例えば、様々な入力/出力デバイス)を含んでもよい。さらに、いくつかの実施形態においては、図示されるコンポーネントのうちの1以上のコンポーネントは、別のコンポーネントに組み込まれてもよいし、別のコンポーネントの一部を形成してもよい。例えば、いくつかの実施形態においては、メモリ124又はメモリ124の一部は、プロセッサ120に組み込まれてもよい。
プロセッサ120は、本明細書で説明する機能を実行することができる任意のタイプのプロセッサとして具現化することができる。例えば、プロセッサ120は、シングルコアプロセッサ、マルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は、他のプロセッサ若しくは処理/制御回路として具現化することができる。同様に、メモリ124は、本明細書で説明する機能を実行することができる任意のタイプの揮発性メモリ、不揮発性メモリ、又はデータストレージとして具現化することができる。動作中、メモリ124は、モバイルコンピューティングデバイス102の動作中に使用される、オペレーティングシステム、アプリケーション、プログラム、ライブラリ、及びドライバ等の様々なソフトウェア及びデータを記憶することができる。メモリ124は、I/Oサブシステム122を介して、プロセッサ120に通信可能に接続される。I/Oサブシステム122は、モバイルコンピューティングデバイス102のプロセッサ120、メモリ124、及び他のコンポーネントによる入力/出力オペレーションを円滑にする回路及び/又はコンポーネントとして具現化することができる。例えば、I/Oサブシステム122は、メモリコントローラハブ、入力/出力制御ハブ、ファームウェアデバイス、通信リンク(すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレース等)、並びに/又は、入力/出力オペレーションを円滑にする他のコンポーネント及びサブシステムとして具現化されてもよいし、これらを含んでもよい。いくつかの実施形態において、I/Oサブシステム122は、システムオンチップ(SoC)の一部を形成して、モバイルコンピューティングデバイス102のプロセッサ120、メモリ124、及び他のコンポーネントとともに、単一の集積回路チップに組み込むことができる。
データ記憶デバイス126は、データの短期記憶又は長期記憶のために構成される任意のタイプの1以上のデバイスとして具現化することができる。そのようなデバイスとして、例えば、メモリデバイス及び回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、又は他のデータ記憶デバイス等がある。データ記憶デバイス126は、モバイルコンピューティングデバイス102にインストールされた様々なネットワークアプリケーション及び/又はモバイルコンピューティングデバイス102上で実行される様々なネットワークアプリケーションのネットワーク要件、処理要件、及び他のリソース要件を規定するために使用される1以上のアプリケーション実行制約128を記憶することができる。以下でより詳細に説明するように、モバイルコンピューティングデバイス102は、特定のアプリケーションに関連付けられた1以上のアプリケーション実行制約に基づいて、アプリケーションの実行が遅延可能かどうかを判定することができる。
モバイルコンピューティングデバイス102の通信回路130は、ネットワーク106を介する、モバイルコンピューティングデバイス102、アプリケーションサーバ104、及び/又は他のリモートデバイスの間の通信を可能にすることができる任意の通信回路、通信デバイス、又はこれらの集合として具現化することができる。通信回路130は、任意の1以上の通信技術(例えば、無線通信又は有線通信)と関連プロトコル(例えば、3G、LTE、Bluetooth(登録商標)、Wi−Fi(登録商標)、WiMAX(登録商標)等)とを使用してそのような通信を実現するよう構成することができる。例示的な通信回路130は、無線通信を用いてネットワーク106と通信する。しかしながら、本開示は、有線ネットワーク接続(例えば、Ethernet(登録商標))にも等しく適用可能であることを理解すべきである。
例示的な実施形態において、モバイルコンピューティングデバイス102は、ディスプレイ132をさらに含む。モバイルコンピューティングデバイス102のディスプレイ132は、デジタル情報を表示することができる任意のタイプのディスプレイとして具現化することができる。そのようなディスプレイとして、例えば、液晶ディスプレイ(LCD)、発光ダイオード(LED)、プラズマディスプレイ、陰極線管(CRT)、又は他のタイプのディスプレイデバイスがある。いくつかの実施形態においては、ディスプレイ132は、モバイルコンピューティングデバイス102とのユーザインタラクションを可能にするように、タッチスクリーンに接続されてもよい。
アプリケーションサーバ104の各々は、モバイルコンピューティングデバイス102の1以上のアプリケーションにネットワークサービスを提供するよう構成される。例えば、アプリケーションサーバ104は、電話サービス(例えば、VoIPサービス)、ビデオサービス、ウェブサービス、電子メール、クラウドデータサービス、又は任意の他のネットワークサービスを提供することができる。例えば、例示的な実施形態において、アプリケーションサーバ104aは、ウェブサービスを提供することができ、アプリケーションサーバ104bは、VoIPサービスを提供することができる。各アプリケーションサーバ104は、本明細書で説明する機能を実行することができる任意のタイプのサーバコンピューティングデバイス又はデバイスの集合として具現化することができる。そのようなものとして、各アプリケーションサーバ104は、単一のサーバコンピューティングデバイス又はサーバの集合、及び関連デバイスとして具現化することができる。例えば、いくつかの実施形態において、各アプリケーションサーバ104は、ネットワーク106にわたって分散された複数のコンピューティングデバイスから形成され、パブリッククラウド又はプライベートクラウドにおいて動作する「仮想サーバ」として具現化することができる。したがって、1以上のアプリケーションサーバ104が、図1において、単一のサーバコンピューティングデバイスとして具現化されたものとして示されているが、各アプリケーションサーバ104は、以下で説明する機能を促進するために協働する複数のデバイスとして具現化されてもよいことを理解すべきである。さらに、各アプリケーションサーバ104は、説明を明瞭にするために図1には示されていないプロセッサ、I/Oサブシステム、メモリ、データ記憶デバイス、通信回路、及び様々な周辺デバイス等の、モバイルコンピューティングデバイス102及び/又は一般的なデータサーバと同様のコンポーネント及び特徴を含み得る。
以下でより詳細に説明するように、モバイルコンピューティングデバイス102及び1以上のアプリケーションサーバ104は、ネットワーク106を介して、互いとの間で、且つ/又は、システム100の他のデバイスとの間で、データを送受信するよう構成することができる。ネットワーク106は、任意の数の様々な有線ネットワーク及び/又は無線ネットワークとして具現化することができる。例えば、ネットワーク106は、有線ローカルエリアネットワーク(LAN)又は無線LAN、有線ワイドエリアネットワーク(WAN)又は無線WAN、セルラネットワーク、及び/又は、インターネット等のパブリックにアクセス可能な全世界的ネットワークとして具現化されてもよいし、これらを含んでもよい。したがって、ネットワーク106は、システム100のデバイス間における通信を円滑にするための、さらなるコンピュータ、ルータ、及びスイッチ等の任意の数のさらなるデバイスを含み得る。
次に図2を参照すると、例示的な実施形態において、モバイルコンピューティングデバイス102は、動作中に環境200を確立する。環境200は、複数のネットワークアプリケーション202、アプリケーションスケジューラモジュール206、及びネットワーク通信モジュール212を含む。環境200は、アプリケーション実行制約214をさらに含む。環境200の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、又はこれらの組合せとして具現化することができる。
ネットワークアプリケーション202はそれぞれ、アプリケーションサーバ104のうちの1以上により提供されるサービスにアクセスする任意のアプリケーションとして具現化することができる。ネットワークアプリケーション202の各々は、アプリケーションサーバ104にアクセスする前に、ネットワークリクエストをアプリケーションスケジューラモジュール206に送信するよう構成される。追加的又は代替的に、アプリケーションスケジューラモジュール206は、アプリケーション202によるネットワークアクセスを「トラップする」よう構成されてもよい。いくつかの実施形態において、各ネットワークアプリケーション202は、ネットワークリクエストを送信するときに、又は、アプリケーション202のインストール中等といったネットワークリクエストを送信するよりも前に、関連付けられたアプリケーション実行制約204をアプリケーションスケジューラモジュール206に送信することができる。これらのアプリケーション実行制約204は、以下で説明するように、環境200内に確立されたアプリケーション実行制約214に記憶され得る。アプリケーション202が、ネットワークアプリケーションとして図示され説明されているが、本開示は、モバイルコンピューティングデバイス102上で実行可能な任意の種類のアプリケーションにも等しく適用可能であることを理解すべきである。
アプリケーションスケジューラモジュール206は、ネットワークアプリケーション202からネットワークリクエストを受信し、直ちに実行されるように又は遅延されて実行されるように各ネットワークリクエストをスケジューリングするよう構成される。アプリケーションスケジューラモジュール206は、ネットワークアプリケーション202に関連付けられたアプリケーション実行制約214に基づいて、遅延されて実行されるようにネットワークリクエストをスケジューリングするかどうかを判定する。以下で説明するように、ネットワークリクエストは、アプリケーション202の許容可能な遅延、優先度、アプリケーションクラス、又は任意の他の実行制約に基づいて、遅延可能であり得る。アプリケーションスケジューラモジュール206は、さらに、総電力消費量を低減させるために、並行実行されるようにネットワークリクエストをスケジューリングするよう構成される。リクエストのスケジューリングを管理するために、アプリケーションスケジューラモジュール206は、遅延されて実行されるようにスケジューリングされたネットワークリクエストのキューを保持することができ、リクエストが許容されるパラメータ内に実行されることを確実にするためのタイマを保持することができる。いくつかの実施形態において、これらの機能は、サブモジュール(例えば、遅延リクエストキュー208又は遅延タイマ210)により実行され得る。
ネットワーク通信モジュール212は、アプリケーションスケジューラモジュール206により、実行されるようにスケジューリングされているネットワークリクエストを実行又は促進するよう構成される。ネットワークリクエストを実行することは、ネットワーク接続をオープンすること、データを送受信すること、及び、ネットワークアプリケーション202により必要とされる任意の他の処理を含み得る。ネットワーク通信モジュール212は、ネットワークリクエストを実行するための適切なアプリケーション202をアクティブ化し、アプリケーション202により提供されるタスク、スレッド、又はプロセスを実行してネットワークリクエストを実行することができる、又は、ネットワークリクエストを独立して実行することができる。
アプリケーション実行制約214は、許容可能なパフォーマンス及び/又はユーザエクスペリエンスのためにネットワークアプリケーション202により必要とされるリソース要件、時間制限、及び/又は他のパラメータを規定するものである。以下でさらに説明するように、アプリケーション実行制約214は、ネットワークリソース、処理リソース、必要とされるタイミング、又はネットワークアプリケーション202の緊急度を表すことができる。いくつかの実施形態において、アプリケーション実行制約214は、各ネットワークアプリケーション202により提供され得る。例えば、各ネットワークアプリケーション202の開発者は、アプリケーション202がインストールされるときにアプリケーション実行制約214にインストールされる制約を提供することができる。追加的又は代替的に、モバイルコンピューティングデバイス102は、使用中のネットワークアプリケーション202の挙動を経時的にモニタリングすることにより、アプリケーション実行制約214を決定してもよい。アプリケーション実行制約214は、例えばローカルデータベースとして、任意のデータフォーマットで記憶され得る。
次に図3を参照すると、使用の際、モバイルコンピューティングデバイス102は、ネットワークアプリケーションのスケジューリングのための方法300を実行することができる。方法300は、ブロック302で開始する。ブロック302において、モバイルコンピューティングデバイス102は、ネットワークリクエストをモニタリングする。ネットワークリクエストは、任意の抽象レベルで、ネットワークアプリケーション202と1以上のアプリケーションサーバ104との間でネットワークデータを送信又は受信する任意のリクエストとして具現化され得る。ネットワークアプリケーション202は、標準化されたアプリケーションプログラミングインタフェース(「API」)を用いてネットワークリクエストを送信することができる。例えば、ネットワークリクエストは、アプリケーションサーバ104に対するTCP接続をオープンするリクエスト、又は、特定のインターネットアドレスからファイルをダウンロードするリクエストとして具現化され得る。ブロック304において、モバイルコンピューティングデバイス102は、ネットワークリクエストが受信されたかどうかを判定する。リクエストが受信されていない場合、方法300は、ブロック302にループバックして、ネットワークリクエストをモニタリングすることを続ける。ネットワークリクエストが受信された場合、方法300は、ブロック306に進む。
ブロック306において、モバイルコンピューティングデバイス102は、ネットワークリクエストを行ったネットワークアプリケーション202に関する1以上のアプリケーション実行制約214を判別する。いくつかの実施形態において、モバイルコンピューティングデバイス102は、モバイルコンピューティングデバイス102上に以前に確立された制約のデータベースからアプリケーション実行制約214を取得することができる。追加的又は代替的に、いくつかの実施形態においては、モバイルコンピューティングデバイス102は、例えば標準化されたAPIを介して、アプリケーション202から直接アプリケーション実行制約214を受信してもよい。
ブロック308において、モバイルコンピューティングデバイス102は、アプリケーション実行制約214に基づいて、ネットワークリクエストが遅延可能かどうかを判定する。すなわち、モバイルコンピューティングデバイス102は、アプリケーション202のパフォーマンス又はユーザエクスペリエンスに悪影響を及ぼすことなく、ネットワークリクエストが遅延可能かどうかを判定する。例えば、いくつかの実施形態において、ネットワークリクエストは、低優先度アプリケーション202を理由として遅延可能である場合もあるし、アプリケーション202が高ネットワーク遅延を許容できることを理由として遅延可能である場合もある。反対に、いくつかの実施形態において、ネットワークリクエストは、高優先度アプリケーション202を理由として遅延可能でない場合もあるし、低遅延アプリケーション202を理由として遅延可能でない場合もあるし、アプリケーション202が大量の処理リソースを必要とすることを理由として遅延可能でない場合もある。リクエストが遅延可能かどうかを判定するための方法の一実施形態が、図5に関連して以下で説明される。ネットワークリクエストが遅延可能でない場合、以下でさらに説明するように、方法300は、ブロック316に分岐する。ネットワークリクエストが遅延可能である場合、方法300は、ブロック310に分岐する。
ブロック310において、モバイルコンピューティングデバイス102は、遅延されて実行されるようにネットワークリクエストをスケジューリングする。図4に関連して以下で説明するように、ネットワークリクエストの実行を遅延させることにより、モバイルコンピューティングデバイス102は、電力消費の低減を実現するために、後の時間に実行されるようにネットワークリクエストを日和見的にスケジューリングすることが可能になる。モバイルコンピューティングデバイス102は、遅延されて実行されるようにネットワークリクエストをスケジューリングするための任意の利用可能な技術を使用することができる。例えば、モバイルコンピューティングデバイス102は、アプリケーション202のプロセス、タスク、又はスレッドに、実行を中止、中断、ブロック、又は放棄させることができる。追加的又は代替的に、アプリケーション202は実行を続けてもよいが、別のネットワークリクエストタスク、プロセス、又はスレッドが中断され得る。いくつかの実施形態においては、ブロック312において、モバイルコンピューティングデバイス102は、ネットワークリクエストを遅延リクエストキュー208に追加してもよい。したがって、複数のネットワークリクエストを遅延リクエストキュー208に記憶することにより、モバイルコンピューティングデバイス102は、遅延されて実行されるように2以上のネットワークリクエストをスケジューリングすることができる。
いくつかの実施形態においては、ブロック314において、モバイルコンピューティングデバイス102は、アプリケーション202のアプリケーション実行制約214に基づいて、ネットワークリクエストに対して遅延タイマ210を設定してもよい。以下でさらに説明するように、遅延タイマ210を設定することにより、モバイルコンピューティングデバイス102は、ネットワークリクエストが所望の時間期間内に実行されることを確実にすることが可能になる。例えば、モバイルコンピューティングデバイス102は、遅延タイマ210を、アプリケーション実行制約214において指定されている最大の許容可能な遅延に設定することができる。この例を続けると、遅延タイマ210は、例えば、電子メール更新アプリケーション202に関しては10分に、バックアップアプリケーション202に関しては24時間に設定され得る。遅延されて実行されるようにネットワークリクエストをスケジューリングした後、方法300は、ブロック302にループバックして、さらなるネットワークリクエストを待つ。
ブロック308に戻り、ネットワークリクエストが遅延可能でない場合、方法300は、ブロック316に分岐する。ブロック316において、モバイルコンピューティングデバイス102は、直ちに実行されるようにネットワークリクエストをスケジューリングする。モバイルコンピューティングデバイス102は、直ちに実行されるようにネットワークリクエストをスケジューリングするための任意の利用可能な技術を使用することができる。例えば、モバイルコンピューティングデバイス102は、ネットワークリクエストを処理するプロセス、タスク、又はスレッドの実行を開始することができる。追加的又は代替的に、モバイルコンピューティングデバイス102は、リクエストされたネットワーク接続をオープンして、リクエスト元のアプリケーション202にそのネットワーク接続を返してもよいし、アプリケーション202を、オペレーティングシステムプロセススケジューラ又は実行キュー(図示せず)に送信してもよい。
いくつかの実施形態においては、ブロック318において、モバイルコンピューティングデバイス102は、現在のネットワークリクエストが直ちに実行されるようにスケジューリングされたことが決定されたときに、直ちに実行されるように他の遅延されたネットワークリクエストをスケジューリングしてもよい。例えば、モバイルコンピューティングデバイス102は、遅延リクエストキュー208に含まれる全ての遅延されたネットワークリクエストを開始してもよい。以前に遅延されたリクエストは、開始されると、ブロック316において開始されたリクエストと並行して実行される。したがって、全ての以前に遅延されたネットワークリクエストは、後に到達した直ちに実行されるリクエストに対して実行を「ピギーバックする(piggyback)」ことができる。他の遅延されたリクエストを開始する前に、モバイルコンピューティングデバイス102は、並行実行が、現在のアプリケーション202のアプリケーション実行制約214と整合するかどうかを判定することができる。例えば、並行実行は、大量の処理リソースを必要とする現在のアプリケーション202と整合し得ない(例えば、現在のアプリケーション202がプロセッサ120を占有している場合)。直ちに実行されるように1以上のネットワークリクエストをスケジューリングした後、方法300は、ブロック302にループバックして、さらなるネットワークリクエストをモニタリングする。
次に図4を参照すると、使用の際、モバイルコンピューティングデバイス102は、ネットワークリクエストを並行実行するための方法400を実行することができる。方法300及び方法400は、別々の方法として図示されているが、方法400は、ネットワークリクエストをスケジューリングするための方法300と並行して実行されることもあるし、方法300と協調されることもある。方法400は、ブロック402で開始する。ブロック402において、モバイルコンピューティングデバイス102は、遅延されて実行されるように以前にスケジューリングされた全てのネットワークリクエストを識別する。いくつかの実施形態においては、ブロック404において、モバイルコンピューティングデバイス102は、遅延リクエストキュー208に含まれる全ての遅延されたネットワークリクエストを列挙してもよい。図3に関連して上述したように、ネットワークリクエストは、ネットワークアプリケーション202からモバイルコンピューティングデバイス102により受信された後に、遅延リクエストキュー208に追加されたものであり得る。
ブロック406において、モバイルコンピューティングデバイス102は、遅延されたネットワークリクエストの数が、リクエストの閾数を超えているかどうかを判定する。いくつかの実施形態において、リクエストの閾数は、単に1つのリクエストであってよい。すなわち、モバイルコンピューティングデバイス102は、遅延されて実行されるようにスケジューリングされた2以上のネットワークリクエストが現在存在するかどうかを判定することができる。もちろん、他の実施形態においては、リクエストの閾数は、2つのリクエスト又は3つのリクエスト等、1より大きくてもよい。リクエストの数が閾数を超えている場合、以下で説明するように、方法400は、分岐してブロック412に進む。リクエストの数が閾数を超えていない場合、方法400は、ブロック408に進む。
ブロック408において、モバイルコンピューティングデバイス102は、遅延タイマ210がいずれかのネットワークリクエストに関して満了したかどうかを判定する。すなわち、モバイルコンピューティングデバイス102は、遅延されたネットワークリクエストのいずれかに関して、許容可能な遅延を超えたかどうか(又は、許容可能な遅延を超えそうであるかどうか)を判定することができる。モバイルコンピューティングデバイス102は、遅延タイマ210が満了したかどうかを判定するための任意の技術を使用することができる。例えば、モバイルコンピューティングデバイス102は、遅延タイマ210が満了したかどうかを判定するために、遅延リクエストキュー208の遅延されたネットワークリクエストの全てを繰り返すことができる。追加的又は代替的に、モバイルコンピューティングデバイス102は、例えば、遅延タイマ210により発生されたイベントをキャプチャすることにより、遅延タイマ210が満了したかどうかを非同期的に判定してもよい(図示せず)。
ブロック410において、モバイルコンピューティングデバイス102は、遅延タイマ210が満了したかどうかを判定する。タイマが満了していない場合、方法400は、ブロック402にループバックして、遅延されたネットワークリクエストを識別することを続ける。したがって、この状況においては、遅延されたネットワークリクエストは、十分な遅延されたネットワークリクエストが受信されるまで、あるいは、いずれかのネットワークリクエストの最大遅延を超えるまで、遅延リクエストキュー208内に存在し続け得る。遅延タイマ210が満了した場合、方法400は、ブロック412に進む。
ブロック412において、モバイルコンピューティングデバイス102は、直ちに並行して実行されるように、遅延されたネットワークリクエストをスケジューリングする。モバイルコンピューティングデバイス102は、遅延リクエストキュー208に含まれる全てのネットワークリクエストを実行することができ、実行が終わったときに遅延リクエストキュー208を空にすることができる。モバイルコンピューティングデバイス102は、直ちに実行されるようにネットワークリクエストをスケジューリングするための任意の利用可能な技術を使用することができる。例えば、モバイルコンピューティングデバイス102は、各ネットワークリクエストを処理するプロセス、タスク、又はスレッドの実行を開始することができる。いくつかの実施形態において、モバイルコンピューティングデバイス102は、リクエストされたネットワーク接続をオープンして、リクエスト元の各アプリケーション202にそのネットワーク接続を返してもよいし、各アプリケーション202を、オペレーティングシステムプロセススケジューラ又は実行キュー(図示せず)に送信してもよい。ネットワークリクエストの全てが、並行して実行されるようにスケジューリングされる。ネットワークリクエストをスケジューリングした後、方法400は、ブロック402にループバックして、遅延されたネットワークリクエストを識別することを続ける。
次に図5を参照すると、使用の際、モバイルコンピューティングデバイス102は、ネットワークリクエストが遅延可能かどうかを判定するための方法500を実行することができる。方法500は、例えば、図3に関連して上述したブロック308の一部として実行することができる。方法500は、ブロック502で開始する。ブロック502において、モバイルコンピューティングデバイス102は、現在のアプリケーション202に関連付けられたアプリケーション実行制約214のリソース実行制約を判別する。リソース実行制約は、ネットワークリクエストを完了するためにアプリケーション202により必要とされる、モバイルコンピューティングデバイス102のリソースを規定するものである。例えば、リソース実行制約は、必要とされるメモリリソース、データストレージリソース、又はプロセッサリソースを表すことができる。いくつかの実施形態においては、ブロック504において、モバイルコンピューティングデバイス102は、アプリケーション202に関する処理リソース制約を判別してもよい。処理リソース制約は、アプリケーション202により必要とされる、モバイルコンピューティングデバイス102のプロセッサ、プロセッサコア、プロセッササイクル、又は他の処理リソースの数を表すことができる。例えば、リソース実行制約は、アプリケーション202が必要とすることになるとアプリケーション202が予測する利用可能な処理リソースのパーセンテージを表すことができる。いくつかの実施形態においては、リソース実行制約は、単に、「高」処理要件又は「低」処理要件を有するものとしてアプリケーション202を識別するものであってもよい。
ブロック506において、モバイルコンピューティングデバイス102は、アプリケーション202がリソース集約的(resource-intensive)であるかどうかを判定する。すなわち、モバイルコンピューティングデバイス102は、リソース実行制約が閾リソース要件を超えているかどうかを判定する。例えば、モバイルコンピューティングデバイス102は、アプリケーション202が、全ての利用可能なプロセッササイクルを使用することになるかどうか、又は、アプリケーション202が、「高」処理要件を有するものとしてラベリングされているかどうかを判定することができる。アプリケーション202がリソース集約的である場合、方法500は、ブロック508に分岐し、ブロック508において、方法500は、アプリケーション202が遅延可能でないと返す。図3に関連して上述したように、アプリケーション202が遅延可能でない場合、ネットワークリクエストは、直ちに実行されるようにスケジューリングされ得る。ブロック506に戻り、アプリケーション202がリソース集約的でない場合、方法500は、ブロック510に進む。
ブロック510において、モバイルコンピューティングデバイス102は、現在のアプリケーション202に関連付けられたアプリケーション実行制約214の緊急度実行制約を判別する。緊急度実行制約は、時間遅延に対するアプリケーション202の許容度を規定するものである。いくつかの実施形態においては、ブロック512において、モバイルコンピューティングデバイス102は、遅延制約を取得してもよい。遅延制約は、現在のアプリケーション202に関する許容可能なネットワーク遅延を表し、経過時間の観点で測定され得る。例えば、デイリーバックアップアプリケーション202は、数時間の遅延を許容し得、電子メールアプリケーション202は、数分の遅延を許容し得、リアルタイム電話アプリケーション202は、遅延を許容し得ない。いくつかの実施形態においては、ブロック514において、モバイルコンピューティングデバイス102は、優先度制約を取得してもよい。優先度制約は、アプリケーション202の相対的な重要度を表す。例えば、システムアプリケーション202又はユーザにより開始されるインタラクティブアプリケーション202は、高優先度を有し得るのに対し、バックグラウンドアプリケーション202は、低優先度を有し得る。いくつかの実施形態においては、ブロック516において、モバイルコンピューティングデバイス102は、アプリケーション202に関するアプリケーションクラスを取得してもよい。アプリケーションクラスは、アプリケーション202の一般的なネットワーク使用パターンを表すことができる。例えば、アプリケーションクラスは、リアルタイム通信アプリケーション、インタラクティブアプリケーション、又はバックグラウンドアプリケーションを含み得る。アプリケーションクラスは、各アプリケーション202に関して予め定められてもよいし、使用中のアプリケーション202の観測(observation)に基づいて、モバイルコンピューティングデバイス102により割り当てられてもよい。
ブロック518において、モバイルコンピューティングデバイス102は、現在のネットワークリクエストが緊急であるかどうかを判定する。モバイルコンピューティングデバイス102は、前に判別された緊急度実行制約が閾緊急度レベルを超えているかどうかを判定することができる。モバイルコンピューティングデバイス102は、緊急度の可能な尺度(measure)のうちの任意のものを使用することができる。例えば、モバイルコンピューティングデバイス102は、許容される遅延が閾遅延値に満たない場合に、リクエストが緊急であると判定することができる。いくつかの実施形態において、許容可能な遅延を要さない場合に、リクエストは緊急であり得る。別の例として、モバイルコンピューティングデバイス102は、優先度レベルが閾優先度レベルを超えている場合に、リクエストが緊急であると判定することができる。第3の例として、モバイルコンピューティングデバイス102は、アプリケーションクラスが、リアルタイム通信アプリケーション又はインタラクティブアプリケーション等の、緊急アプリケーションクラスの予め定められたセットに属する場合に、リクエストが緊急であると判定することができる。さらに、モバイルコンピューティングデバイス102は、ユーザにより提供される入力又はインジケーション(例えば、アプリケーションは高優先度アクセスを有するべきであるというインジケーション)に基づいて、リクエストが緊急であると判定することができる。リクエストが緊急である場合、方法500は、ブロック508に分岐し、上述したように、遅延可能でないと返す。リクエストが緊急でない場合、方法500は、ブロック520に分岐し、ブロック520において、方法500は、アプリケーション202が遅延可能であると返す。図3に関連して上述したように、アプリケーション202が遅延可能である場合、ネットワークリクエストは、遅延されて実行されるようにスケジューリングされ得る。
次に図6を参照すると、チャート600は、本開示に従ったモバイルコンピューティングデバイスにより達成され得る例示的な結果を示している。チャート600に提示される結果は例示に過ぎず、他の実施形態においては、他の結果が生成され得ることを理解すべきである。チャート600は、異なるアプリケーションワークロードを別々に実行している間と並行して実行している間との、モバイルコンピューティングデバイスの測定電力消費量を示している。例示的な表現において、アプリケーション602は、VoIPアプリケーション(すなわち、遅延されて実行されるようにはスケジューリングすることができないアプリケーション)である。別々に実行された場合、アプリケーション602は、例えば、1108mWの電力を消費する。例示的なアプリケーション604は、ウェブサーバからのファイルダウンロードであり、別々に実行された場合、例えば、1033mWの電力を消費する。例示的なアプリケーション606は、ウェブサーバへのファイルアップロードであり、別々に実行された場合、例えば、1460mWの電力を消費する。アプリケーション602、604は、並行して実行された場合、例えば、1324mWの電力を消費し、別々に実行された場合と比較すると、電力消費量が38%改善している。アプリケーション602、606は、並行して実行された場合、例えば、1555mWの電力を消費し、別々に実行された場合と比較すると、電力消費量が39%改善している。アプリケーション602、604、606は、並行して実行された場合、例えば、1643mWの電力を消費し、別々に実行された場合と比較すると、電力消費量が54%改善している。
本開示が、ネットワークアプリケーション202の観点で主に説明されたが、同じスケジューリング技術は、他のタイプのアプリケーションに関しても、電力消費を低減させることができることを理解すべきである。同様に、本開示が、無線ネットワーク106を介して通信するモバイルコンピューティングデバイス102の観点で主に説明されたが、同じスケジューリング技術は、デスクトップ及びサーバ等の固定型のコンピュータ又は基本的には固定型のコンピュータに関してだけでなく、有線ネットワークを介する通信に関しても、電力消費を低減させることができることを理解すべきである。

本明細書で開示した技術の例示的な例が、以下に提供される。本技術の実施形態は、以下に記載の例の任意の1以上と任意の組合せとを含み得る。
例1は、アプリケーションをスケジューリングするためのモバイルコンピューティングデバイスであって、前記モバイルコンピューティングデバイスの第1のネットワークアプリケーションから第1のネットワークリクエストを受信し、前記第1のネットワークアプリケーションに関する1以上の第1の実行制約を判別し、前記1以上の第1の実行制約に基づいて、前記第1のネットワークリクエストが遅延可能かどうかを判定し、前記第1のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングし、前記モバイルコンピューティングデバイスの第2のネットワークアプリケーションから第2のネットワークリクエストを受信し、前記第2のネットワークリクエストの受信に応じて、並行して実行されるように前記第1のネットワークリクエスト及び前記第2のネットワークリクエストをスケジューリングするアプリケーションスケジューラモジュールを備えたモバイルコンピューティングデバイスを含む。
例2は、例1の主題を含み、前記1以上の第1の実行制約を判別することは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの緊急度レベルを判別することを含み、前記第1のネットワークリクエストが遅延可能かどうかを判定することは、前記緊急度レベルが閾緊急度レベルに満たないかどうかを判定することを含む。
例3は、例1及び2のいずれかの例の主題を含み、前記緊急度レベルは、前記第1のネットワークアプリケーションの優先度を含み、前記閾緊急度レベルは、閾優先度を含む。
例4は、例1〜3のいずれかの例の主題を含み、前記緊急度レベルは、前記第1のネットワークアプリケーションのアプリケーションクラスを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、前記アプリケーションクラスが、緊急アプリケーションクラスの予め定められたセットに属するかどうかを判定することを含む。
例5は、例1〜4のいずれかの例の主題を含み、前記緊急度レベルは、前記第1のネットワークアプリケーションの許容可能な遅延を含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、前記許容可能な遅延が閾遅延値を超えているかどうかを判定することを含む。
例6は、例1〜5のいずれかの例の主題を含み、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングすることは、前記第1のネットワークアプリケーションの前記許容可能な遅延に基づいて、遅延タイマを設定することを含み、前記アプリケーションスケジューラモジュールは、さらに、前記遅延タイマが満了したかどうかを判定し、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記遅延タイマが満了したという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む。
例7は、例1〜6のいずれかの例の主題を含み、前記1以上の第1の実行制約を判別することは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのリソース要件を判別することを含み、前記第1のネットワークリクエストが遅延可能かどうかを判定することは、前記リソース要件が閾リソース要件に満たないかどうかを判定することを含む。
例8は、例1〜7のいずれかの例の主題を含み、前記リソース要件は、前記第1のネットワークアプリケーションのプロセッサ要件を含み、前記閾リソース要件は、閾プロセッサ要件を含む。
例9は、例1〜8のいずれかの例の主題を含み、前記アプリケーションスケジューラモジュールは、さらに、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別し、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定し、前記第2のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第2のネットワークリクエストをスケジューリングし、前記第2のネットワークリクエストのスケジューリングに応じて、閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているかどうかを判定し、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することを含む。
例10は、例1〜9のいずれかの例の主題を含み、前記アプリケーションスケジューラモジュールは、さらに、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別し、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定し、前記第2のネットワークリクエストが遅延可能でないという判定に応じて、直ちに実行されるように前記第2のネットワークリクエストをスケジューリングし、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、直ちに実行されるように前記第2のネットワークリクエストがスケジューリングされたことに応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む。
例11は、例1〜10のいずれかの例の主題を含み、前記1以上の第2の実行制約を判別することは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの緊急度レベルを判別することを含み、前記第2のネットワークリクエストが遅延可能かどうかを判定することは、該緊急度レベルが閾緊急度レベルに満たないかどうかを判定することを含む。
例12は、例1〜11のいずれかの例の主題を含み、前記緊急度レベルは、前記第2のネットワークアプリケーションの優先度を含み、前記閾緊急度レベルは、閾優先度を含む。
例13は、例1〜12のいずれかの例の主題を含み、前記緊急度レベルは、前記第2のネットワークアプリケーションのアプリケーションクラスを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、該アプリケーションクラスが、緊急アプリケーションクラスの予め定められたセットに属するかどうかを判定することを含む。
例14は、例1〜13のいずれかの例の主題を含み、前記緊急度レベルは、前記第2のネットワークアプリケーションの許容可能な遅延を含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、該許容可能な遅延が閾遅延値を超えているかどうかを判定することを含む。
例15は、例1〜14のいずれかの例の主題を含み、前記1以上の第2の実行制約を判別することは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのリソース要件を判別することを含み、前記第2のネットワークリクエストが遅延可能かどうかを判定することは、該リソース要件が閾リソース要件に満たないかどうかを判定することを含む。
例16は、例1〜15のいずれかの例の主題を含み、前記リソース要件は、前記第2のネットワークアプリケーションのプロセッサ要件を含み、前記閾リソース要件は、閾プロセッサ要件を含む。
例17は、例1〜16のいずれかの例の主題を含み、前記1以上の第1の実行制約を判別することは、前記モバイルコンピューティングデバイスの実行制約データベースから前記1以上の第1の実行制約を判別することを含む。
例18は、例1〜17のいずれかの例の主題を含み、前記1以上の第1の実行制約は、前記第1のネットワークリクエストの受信前に、前記第1のネットワークアプリケーションにより、前記実行制約データベースに提供されている。
例19は、アプリケーションをスケジューリングするための方法であって、モバイルコンピューティングデバイスにより、前記モバイルコンピューティングデバイスの第1のネットワークアプリケーションから第1のネットワークリクエストを受信するステップと、前記モバイルコンピューティングデバイスにより、前記第1のネットワークアプリケーションに関する1以上の第1の実行制約を判別するステップと、前記モバイルコンピューティングデバイスにより、前記1以上の第1の実行制約に基づいて、前記第1のネットワークリクエストが遅延可能かどうかを判定するステップと、前記モバイルコンピューティングデバイスにより、前記第1のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングするステップと、前記モバイルコンピューティングデバイスにより、前記モバイルコンピューティングデバイスの第2のネットワークアプリケーションから第2のネットワークリクエストを受信するステップと、前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストの受信に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行するステップと、を含む方法を含む。
例20は、例19の主題を含み、前記1以上の第1の実行制約を判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの緊急度レベルを判別するステップを含み、前記第1のネットワークリクエストが遅延可能かどうかを判定するステップは、前記緊急度レベルが閾緊急度レベルに満たないかどうかを判定するステップを含む。
例21は、例19及び20のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの優先度を判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、前記優先度が閾優先度に満たないかどうかを判定するステップを含む。
例22は、例19〜21のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのアプリケーションクラスを判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、前記アプリケーションクラスが、緊急アプリケーションクラスの予め定められたセットに属するかどうかを判定するステップを含む。
例23は、例19〜22のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの許容可能な遅延を判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、前記許容可能な遅延が閾遅延値を超えているかどうかを判定するステップを含む。
例24は、例19〜23のいずれかの例の主題を含み、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングするステップは、前記第1のネットワークアプリケーションの前記許容可能な遅延に基づいて、遅延タイマを設定するステップを含み、前記方法は、前記モバイルコンピューティングデバイスにより、前記遅延タイマが満了したかどうかを判定するステップをさらに含み、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記遅延タイマが満了したという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む。
例25は、例19〜24のいずれかの例の主題を含み、前記1以上の第1の実行制約を判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのリソース要件を判別するステップを含み、前記第1のネットワークリクエストが遅延可能かどうかを判定するステップは、前記リソース要件が閾リソース要件に満たないかどうかを判定するステップを含む。
例26は、例19〜25のいずれかの例の主題を含み、前記リソース要件を判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのプロセッサ要件を判別するステップを含み、前記リソース要件が前記閾リソース要件に満たないかどうかを判定するステップは、前記プロセッサ要件が閾プロセッサ要件に満たないかどうかを判定するステップを含む。
例27は、例19〜26のいずれかの例の主題を含み、前記モバイルコンピューティングデバイスにより、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別するステップと、前記モバイルコンピューティングデバイスにより、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップと、前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第2のネットワークリクエストをスケジューリングするステップと、前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストのスケジューリングに応じて、閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているかどうかを判定するステップと、をさらに含み、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することを含む。
例28は、例19〜27のいずれかの例の主題を含み、前記モバイルコンピューティングデバイスにより、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別するステップと、前記モバイルコンピューティングデバイスにより、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップと、前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストが遅延可能でないという判定に応じて、直ちに実行されるように前記第2のネットワークリクエストをスケジューリングするステップと、をさらに含み、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、直ちに実行されるように前記第2のネットワークリクエストがスケジューリングされたことに応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む。
例29は、例19〜28のいずれかの例の主題を含み、前記1以上の第2の実行制約を判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの緊急度レベルを判別するステップを含み、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップは、該緊急度レベルが閾緊急度レベルに満たないかどうかを判定するステップを含む。
例30は、例19〜29のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの優先度を判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、該優先度が閾優先度に満たないかどうかを判定するステップを含む。
例31は、例19〜30のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのアプリケーションクラスを判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、該アプリケーションクラスが、緊急アプリケーションクラスの予め定められたセットに属するかどうかを判定するステップを含む。
例32は、例19〜31のいずれかの例の主題を含み、前記緊急度レベルを判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの許容可能な遅延を判別するステップを含み、前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、該許容可能な遅延が閾遅延値を超えているかどうかを判定するステップを含む。
例33は、例19〜32のいずれかの例の主題を含み、前記1以上の第2の実行制約を判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのリソース要件を判別するステップを含み、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップは、該リソース要件が閾リソース要件に満たないかどうかを判定するステップを含む。
例34は、例19〜33のいずれかの例の主題を含み、前記リソース要件を判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのプロセッサ要件を判別するステップを含み、前記リソース要件が前記閾リソース要件に満たないかどうかを判定するステップは、該プロセッサ要件が閾プロセッサ要件に満たないかどうかを判定するステップを含む。
例35は、例19〜34のいずれかの例の主題を含み、前記1以上の第1の実行制約を判別するステップは、前記モバイルコンピューティングデバイスの実行制約データベースから前記1以上の第1の実行制約を判別するステップを含む。
例36は、例19〜35のいずれかの例の主題を含み、前記1以上の第1の実行制約は、前記第1のネットワークリクエストの受信前に、前記第1のネットワークアプリケーションにより、前記実行制約データベースに提供されている。
例37は、コンピューティングデバイスであって、プロセッサと、複数の命令を記憶しているメモリであって、前記複数の命令は、前記プロセッサにより実行されたときに、前記コンピューティングデバイスに、例19〜36のいずれかの例の方法を実行させる、メモリと、を備えたコンピューティングデバイスを含む。
例38は、複数の命令を記憶している1以上のマシン読み取り可能な記憶媒体であって、前記複数の命令が実行されたことに応じて、前記複数の命令は、コンピューティングデバイスに、例19〜36のいずれかの例の方法を実行させる、1以上のマシン読み取り可能な記憶媒体を含む。
例39は、例19〜36のいずれかの例の方法を実行する手段を備えたコンピューティングデバイスを含む。



  1. アプリケーションをスケジューリングするためのモバイルコンピューティングデバイスであって、
    前記モバイルコンピューティングデバイスの第1のネットワークアプリケーションから第1のネットワークリクエストを受信し、
    前記第1のネットワークアプリケーションに関する1以上の第1の実行制約を判別し、
    前記1以上の第1の実行制約に基づいて、前記第1のネットワークリクエストが遅延可能かどうかを判定し、
    前記第1のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングし、
    前記モバイルコンピューティングデバイスの第2のネットワークアプリケーションから第2のネットワークリクエストを受信し、
    前記第2のネットワークリクエストの受信に応じて、並行して実行されるように前記第1のネットワークリクエスト及び前記第2のネットワークリクエストをスケジューリングする
    アプリケーションスケジューラモジュール
    を備えたモバイルコンピューティングデバイス。

  2. 前記1以上の第1の実行制約を判別することは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの緊急度レベルを判別することを含み、
    前記第1のネットワークリクエストが遅延可能かどうかを判定することは、前記緊急度レベルが閾緊急度レベルに満たないかどうかを判定することを含む、請求項1記載のモバイルコンピューティングデバイス。

  3. 前記緊急度レベルは、前記第1のネットワークアプリケーションの優先度を含み、前記閾緊急度レベルは、閾優先度を含む、請求項2記載のモバイルコンピューティングデバイス。

  4. 前記緊急度レベルは、前記第1のネットワークアプリケーションのアプリケーションクラスを含み、
    前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、前記アプリケーションクラスが、緊急アプリケーションクラスの予め定められたセットに属するかどうかを判定することを含む、請求項2記載のモバイルコンピューティングデバイス。

  5. 前記緊急度レベルは、前記第1のネットワークアプリケーションの許容可能な遅延を含み、
    前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定することは、前記許容可能な遅延が閾遅延値を超えているかどうかを判定することを含む、請求項2記載のモバイルコンピューティングデバイス。

  6. 前記1以上の第1の実行制約を判別することは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのリソース要件を判別することを含み、
    前記第1のネットワークリクエストが遅延可能かどうかを判定することは、前記リソース要件が閾リソース要件に満たないかどうかを判定することを含む、請求項1記載のモバイルコンピューティングデバイス。

  7. 前記リソース要件は、前記第1のネットワークアプリケーションのプロセッサ要件を含み、前記閾リソース要件は、閾プロセッサ要件を含む、請求項6記載のモバイルコンピューティングデバイス。

  8. 前記アプリケーションスケジューラモジュールは、さらに、
    前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別し、
    前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定し、
    前記第2のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第2のネットワークリクエストをスケジューリングし、
    前記第2のネットワークリクエストのスケジューリングに応じて、閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているかどうかを判定し、
    前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することを含む、請求項1乃至7いずれか一項記載のモバイルコンピューティングデバイス。

  9. 前記アプリケーションスケジューラモジュールは、さらに、
    前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別し、
    前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定し、
    前記第2のネットワークリクエストが遅延可能でないという判定に応じて、直ちに実行されるように前記第2のネットワークリクエストをスケジューリングし、
    前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、直ちに実行されるように前記第2のネットワークリクエストがスケジューリングされたことに応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む、請求項1乃至7いずれか一項記載のモバイルコンピューティングデバイス。

  10. 前記1以上の第2の実行制約を判別することは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの緊急度レベルを判別することを含み、
    前記第2のネットワークリクエストが遅延可能かどうかを判定することは、該緊急度レベルが閾緊急度レベルに満たないかどうかを判定することを含む、請求項9記載のモバイルコンピューティングデバイス。

  11. 前記1以上の第2の実行制約を判別することは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのリソース要件を判別することを含み、
    前記第2のネットワークリクエストが遅延可能かどうかを判定することは、該リソース要件が閾リソース要件に満たないかどうかを判定することを含む、請求項9記載のモバイルコンピューティングデバイス。

  12. 前記リソース要件は、前記第2のネットワークアプリケーションのプロセッサ要件を含み、前記閾リソース要件は、閾プロセッサ要件を含む、請求項11記載のモバイルコンピューティングデバイス。

  13. 前記1以上の第1の実行制約を判別することは、前記モバイルコンピューティングデバイスの実行制約データベースから前記1以上の第1の実行制約を判別することを含む、請求項1乃至7いずれか一項記載のモバイルコンピューティングデバイス。

  14. 前記1以上の第1の実行制約は、前記第1のネットワークリクエストの受信前に、前記第1のネットワークアプリケーションにより、前記実行制約データベースに提供されている、請求項13記載のモバイルコンピューティングデバイス。

  15. アプリケーションをスケジューリングするための方法であって、
    モバイルコンピューティングデバイスにより、前記モバイルコンピューティングデバイスの第1のネットワークアプリケーションから第1のネットワークリクエストを受信するステップと、
    前記モバイルコンピューティングデバイスにより、前記第1のネットワークアプリケーションに関する1以上の第1の実行制約を判別するステップと、
    前記モバイルコンピューティングデバイスにより、前記1以上の第1の実行制約に基づいて、前記第1のネットワークリクエストが遅延可能かどうかを判定するステップと、
    前記モバイルコンピューティングデバイスにより、前記第1のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第1のネットワークリクエストをスケジューリングするステップと、
    前記モバイルコンピューティングデバイスにより、前記モバイルコンピューティングデバイスの第2のネットワークアプリケーションから第2のネットワークリクエストを受信するステップと、
    前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストの受信に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行するステップと、
    を含む方法。

  16. 前記1以上の第1の実行制約を判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの緊急度レベルを判別するステップを含み、
    前記第1のネットワークリクエストが遅延可能かどうかを判定するステップは、前記緊急度レベルが閾緊急度レベルに満たないかどうかを判定するステップを含む、請求項15記載の方法。

  17. 前記緊急度レベルを判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションの許容可能な遅延を判別するステップを含み、
    前記緊急度レベルが前記閾緊急度レベルに満たないかどうかを判定するステップは、前記許容可能な遅延が閾遅延値を超えているかどうかを判定するステップを含む、請求項16記載の方法。

  18. 前記1以上の第1の実行制約を判別するステップは、前記1以上の第1の実行制約に基づいて、前記第1のネットワークアプリケーションのリソース要件を判別するステップを含み、
    前記第1のネットワークリクエストが遅延可能かどうかを判定するステップは、前記リソース要件が閾リソース要件に満たないかどうかを判定するステップを含む、請求項15記載の方法。

  19. 前記モバイルコンピューティングデバイスにより、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別するステップと、
    前記モバイルコンピューティングデバイスにより、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップと、
    前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストが遅延可能であるという判定に応じて、遅延されて実行されるように前記第2のネットワークリクエストをスケジューリングするステップと、
    前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストのスケジューリングに応じて、閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているかどうかを判定するステップと、
    をさらに含み、
    前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、前記閾数を超えるネットワークリクエストが、遅延されて実行されるようにスケジューリングされているという判定に応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することを含む、請求項15記載の方法。

  20. 前記モバイルコンピューティングデバイスにより、前記第2のネットワークアプリケーションに関する1以上の第2の実行制約を判別するステップと、
    前記モバイルコンピューティングデバイスにより、前記1以上の第2の実行制約に基づいて、前記第2のネットワークリクエストが遅延可能かどうかを判定するステップと、
    前記モバイルコンピューティングデバイスにより、前記第2のネットワークリクエストが遅延可能でないという判定に応じて、直ちに実行されるように前記第2のネットワークリクエストをスケジューリングするステップと、
    をさらに含み、
    前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを実行することは、直ちに実行されるように前記第2のネットワークリクエストがスケジューリングされたことに応じて、前記第1のネットワークリクエスト及び前記第2のネットワークリクエストを並行して実行することを含む、請求項15記載の方法。

  21. 前記1以上の第2の実行制約を判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションの緊急度レベルを判別するステップを含み、
    前記第2のネットワークリクエストが遅延可能かどうかを判定するステップは、該緊急度レベルが閾緊急度レベルに満たないかどうかを判定するステップを含む、請求項20記載の方法。

  22. 前記1以上の第2の実行制約を判別するステップは、前記1以上の第2の実行制約に基づいて、前記第2のネットワークアプリケーションのリソース要件を判別するステップを含み、
    前記第2のネットワークリクエストが遅延可能かどうかを判定するステップは、該リソース要件が閾リソース要件に満たないかどうかを判定するステップを含む、請求項20記載の方法。

  23. コンピューティングデバイスであって、
    プロセッサと、
    複数の命令を記憶しているメモリであって、前記複数の命令は、前記プロセッサにより実行されたときに、前記コンピューティングデバイスに、請求項15乃至22いずれか一項記載の方法を実行させる、メモリと、
    を備えたコンピューティングデバイス。

  24. 請求項15乃至22いずれか一項記載の方法をコンピューティングデバイスに実行させるプログラム。

  25. 請求項15乃至22いずれか一項記載の方法を実行する手段を備えたコンピューティングデバイス。

  26. 請求項24記載のプログラムを記憶したマシン読み取り可能な記憶媒体。

 

 

Patent trol of patentswamp
類似の特許
無線ネットワークにおけるマシンタイプ通信のためのeNodeBおよび方法の実施形態が本明細書において概して記載される。いくつかの実施形態において、進化型ノードB(eNodeB)の回路によって実行される方法は、ユーザ機器(UE)がマシンタイプ通信(MTC)に用いられるよう設定されるという通知をeNodeBが受信する段階を含み得る。当該方法は、UEが無線リソース制御接続(RRC_Connected)状態にあるかどうかを決定する段階と、UEが省電力モードに入り得るかどうかを決定する段階とを含み得る。当該方法は、UEがRRC_Connected状態にあり、かつ、UEが省電力モードに入り得ると決定することに応答して、RRCディープアイドルモードに移行するようUEを設定する段階を含み得る。
セルラ通信システムにおいて、補償サービスエリアに割り当てられたリソースが、省エネサービスエリアによってサービス提供されている1つ以上のUE装置にサービスを提供するための充分な利用可能なキャパシティを有すると判定する場合に、カバレッジエリア構成遷移が行われる。カバレッジエリア構成遷移は、省エネルギーサービスエリアのカバレッジの縮小と補償サービスエリアのカバレッジの拡張とを含む。補償サービスエリアを提供する補償通信局は、カバレッジエリア構成遷移のための要求を省エネルギー通信局に送信する。省エネルギー通信局は、該カバレッジエリア構成遷移を拒絶してもよいし、該カバレッジエリア構成遷移を承諾して拡張通知を補償通信局に送信してもよい。該通知は、補償サービスエリアが拡張され得ることを少なくとも示す。
本発明は、データ処理方法および装置を開示し、端末アプリケーション技術の分野に関し、これは携帯機器内のAPおよびmodemの全体のエネルギー消費を著しく減少させることができないという課題を解決することができる。この方法は、サーバによって送信されたデータパケットを受信し、データパケットの種類を取得するステップと、データパケットの種類が、予め設定された処理規則を使用することによって処理されるデータパケットの種類または予め設定されたTCP/IPプロトコルスタックにおけるプロトコルの種類と合致するかどうかを判定して判定結果を得るステップであって、予め設定されたTCP/IPプロトコルスタックは、TCP/IPプロトコルファミリにおける一組のトランスポート層プロトコルおよび/または一組のネットワーク層プロトコルを含み、予め設定された処理規則を使用することによって処理されるデータパケットはステータスデータパケットであり、ステータスデータパケットは端末のオンラインステータスを示すために使用される、ステップと、データパケットの種類が、予め設定された処理規則を使用することによって処理されるデータパケットの種類または予め設定されたTCP/IPプロトコルスタックにおけるプロトコルの種類と合致したならば、予め設定されたTCP/IPプロトコルスタックにおけるプロトコルまたは予め設定された処理規則に従ってデータパケットについて処理を行うステップと、を含む。本発明は、携帯機器のデータ処理および送信過程に主に適用される。
【課題】本明細書の一開示は、無線機器における節電モードをサポートする方法を提供する。
【解決手段】前記方法によると、前記無線機器は、PSMが必要な場合、第1の活性時間値を含む第1のメッセージをネットワークエンティティに送信する。以後、前記無線機器は、前記ネットワークエンティティから第2の活性時間値を含む第2のメッセージを受信する。前記無線機器は、前記第2の活性時間値に基づいてPSM状態に入る。前記無線機器は、前記PSMの中止が必要な場合または前記第2の活性時間の変更が必要な場合には、その時点で第3のメッセージを送信する。
【選択図】図13
2つ以上の使用モードを有する携帯用コンピューティングデバイス内の充電式電力を管理するためのシステムおよび方法。一実施形態の方法は、pcdにおける充電式電源を、第1の論理的な電源および第2の論理的な電源に、論理的に分割することを伴う。第1の論理的な電源は、第1の使用モードに割り当てられる。第2の論理的な電源は、第2の使用モードに割り当てられる。第1および第2の論理的な電源は、第1および第2の使用モードに従って、それぞれ管理される。
モバイルデバイスにおけるターゲットキーワードによって音声アクティブ化変化を制御するための方法が開示される。この方法は、入力サウンドストリームを受信することを含む。入力サウンドストリームがスピーチを示すとき、音声アクティブ化ユニットは、ターゲットキーワードを検出するためにアクティブ化され、少なくとも1つのサウンド特徴が、入力サウンドストリームから抽出される。さらに、この方法は、少なくとも1つのサウンド特徴が非ターゲットキーワードを示すとき、音声アクティブ化ユニットを非アクティブ化することを含む。
ページングのための方法および装置が、UEに宛てられたデータを受信することを備える。本方法および装置は、より長いグローバルユーザ機器識別情報に対してUEのための短い識別情報を決定することと、短い識別情報に基づいてMIB送信を識別することとをさらに備える。その上、本方法および装置は、ユーザ機器がデータを受信するためにページについてリッスンすることを示すためにMIB送信のスロット内のビットをアクティブにすることと、MIBをブロードキャストすることとを備える。他の態様では、ページを受信するための方法および装置が、セルにキャンプオンされている間にアイドル状態に入ることを備える。本方法および装置は、ページング指示についてMIBのスロットを監視するためにアイドル状態からウェイクアップすることをさらに備える。その上、本方法および装置は、MIBの監視スロットにおいてページング指示を認識することと、SIB中の相関情報に基づいてページングウィンドウを決定することと、ページングウィンドウ中にページについてリッスンするためにウェイクアップすることとを備える。
本開示の態様は、動的なユーザ機器機能報告のための装置および方法を提供する。ユーザ機器は、第1の通信プロトコルと第2の通信プロトコルとを含む複数の通信プロトコルを利用してネットワークと通信するように構成される。ueは、第2の通信プロトコルの達成可能な最大スループットよりも低い達成可能な最大スループットを有する第1の通信プロトコルを利用してネットワークと通信し、ueは、第1の通信プロトコルまたは第2の通信プロトコルを利用してある量のデータを転送する電力効率を考慮して、第2の通信プロトコルを利用してデータを転送するueの機能を動的に報告する。
本発明は、スモールセルが前記スモールセルの現在の状態に基づいて、対応する送信モードで発見(DS)信号を送信することを含む信号送信方法を開示する。また、本発明は、信号送信装置を開示する。本発明は、前記スモールセルの現在の状態に基づいて、スモールセルのアクセス状態をリアルタイムに調整することで、隣セルに対するスモールセルの干渉を大幅に低減させ、システムの性能を向上させ、そしてスモールセルのエネルギー消費量を低減させることができる。
【選択図】図2
ワイヤレスデバイスの送信過負荷制御および/または監視のための方法、システム、および/またはデバイスが説明および提供される。基地局に接続された多数のワイヤレスデバイスに関連する問題を解決するためのツールおよび技法が提供され得る。たとえば、アップリンクチャネルのための送信サイクルは、その送信サイクルが不連続である場合に識別され得る。不連続送信サイクルに基づいてワイヤレスデバイスからスケジューリング要求およびまたはランダムアクセスチャネルメッセージが送信され得る。また、多数のワイヤレスデバイスの監視を伴い得るツールおよび技法が提供される。監視は、たとえば、タイマーに従って送信されるキープアライブメッセージを伴い得る。監視は、接続されたワイヤレスデバイスの1つまたは複数のリストの決定と、およびそのリストに関係する送信とに基づき得る。場合によっては、ワイヤレスデバイスは遅延耐性であり得る。ワイヤレスデバイスは、長いスリープサイクルを有し得るUEおよび/またはマシンタイプ通信(MTC)デバイスを含み得る。
To top