(58)【調査した分野】(Int.Cl.,DB名)
前記プロセッサが、前記第1のメッセージが送信されるワイヤレス通信チャネルの状態を決定し、前記ワイヤレス通信チャネルの前記状態に少なくとも部分的に基づいて、前記ワイヤレス媒体の利用度が決定される前に、前記第1のメッセージの送信を遅延させるべきかどうかを決定するようにさらに構成された、請求項11に記載の装置。
前記プロセッサが、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて前記第1のメッセージの前記タイプを決定するようにさらに構成された、請求項11に記載の装置。
前記プロセッサが、前記第1のメッセージの送信を、前記送信が遅延される場合、せいぜい最大時間期間だけ遅延させるようにさらに構成された、請求項11に記載の装置。
前記第1のメッセージの前記タイプを決定するための前記手段は、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて前記第1のメッセージの前記タイプを決定する、請求項21に記載の装置。
実行されたとき、複数のワイヤレス通信チャネルを同時に送信することが可能なワイヤレス媒体の利用度を管理する方法をプロセッサに実行させる命令を備える非一時的コンピュータ可読媒体であって、前記方法が、
前記ワイヤレス媒体上での送信のためのキューに複数のメッセージを記憶することと、
前記キューに記憶された第1のメッセージのタイプを決定することと、
前記決定されたタイプに少なくとも部分的に基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定することと、
前記決定されたタイプに少なくとも部分的に基づいて、前記第1のメッセージの送信の前記遅延が決定された場合、前記ワイヤレス媒体上で少なくとも前記第1のメッセージを送信するために達成され得る前記ワイヤレス媒体の利用度を、前記キューに記憶された前記メッセージの数と前記ワイヤレス媒体によってサポートされる同時送信チャネルの数に基づいて決定することと、
前記ワイヤレス媒体の前記決定された利用度がしきい値を下回る場合、少なくとも前記第1のメッセージの送信を遅延させることを決定することと、
前記ワイヤレス媒体の前記決定された利用度が前記しきい値を上回る場合、少なくとも前記第1のメッセージを送信することと
を備える、非一時的コンピュータ可読媒体。
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、請求項30に記載の非一時的コンピュータ可読媒体。
前記第1のメッセージの前記タイプが、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて決定される、請求項30に記載の非一時的コンピュータ可読媒体。
【発明を実施するための形態】
【0014】
[0027] 添付の図面を参照しながら、新規のシステム、装置、および方法の様々な態様について以下でより十分に説明する。ただし、本教示の開示は、多くの異なる形態で実施され得るものであり、本開示全体にわたって提示するいずれかの特定の構造または機能に限定されるものと解釈すべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるように与えるものである。本明細書の教示に基づいて、本開示の範囲は、本発明の他の態様とは無関係に実装されるにせよ、本発明の他の態様と組み合わせられるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載の態様をいくつ使用しても、装置は実装され得るか、または方法は実施され得る。さらに、本発明の範囲は、本明細書に記載の本発明の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示するどの態様も請求項の1つまたは複数の要素によって実施され得ることを理解されたい。
【0015】
[0028] 本明細書では特定の態様について説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好適な態様のいくつかの利益および利点について説明するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および伝送プロトコルに広く適用可能であるものとし、それらのいくつかを例として、図および好適な態様についての以下の説明において示す。発明を実施するための形態および図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲およびそれの均等物によって定義される。
【0016】
[0029] ワイヤレスネットワーク技術は、様々なタイプのワイヤレスローカルエリアネットワーク(WLAN)を含み得る。WLANは、広く使用されるネットワーキングプロトコルを採用して、近接デバイスを互いに相互接続するために使用され得る。本明細書で説明する様々な態様は、WiFi(登録商標)、またはより一般的には、ワイヤレスプロトコルのIEEE802.11ファミリーの任意のメンバーなど、任意の通信規格に適用され得る。たとえば、本明細書で説明する様々な態様は、サブ1GHz帯域を使用する、IEEE802.11ahプロトコルの一部として使用され得る。
【0017】
[0030] いくつかの態様では、サブギガヘルツ帯域中のワイヤレス信号は、直交周波数分割多重(OFDM)、直接シーケンススペクトル拡散(DSSS:direct-sequence spread spectrum)通信、OFDMとDSSS通信との組合せ、または他の方式を使用して、802.11ahプロトコルに従って送信され得る。802.11ahプロトコルの実装形態は、センサー、メータリング、およびスマートグリッドネットワークのために使用され得る。有利には、802.11ahプロトコルを実装するいくつかのデバイスの態様は、他のワイヤレスプロトコルを実装するデバイスよりも少ない電力を消費し得、および/または比較的長い距離、たとえば約1キロメートル以上にわたってワイヤレス信号を送信するために使用され得る。
【0018】
[0031] 本明細書で説明するデバイスのうちのいくつかは、さらに、多入力多出力(MIMO)技術を実装し、802.11ah規格の一部として実装され得る。MIMOシステムは、データ送信のために複数(N
T)個の送信アンテナと複数(N
R)個の受信アンテナとを採用する。N
T個の送信アンテナとN
R個の受信アンテナとによって形成されるMIMOチャネルは、空間チャネルまたはストリームとも呼ばれるN
S個の独立チャネルに分解され得、ただし、N
S≦min{N
T,N
R}である。N
S個の独立チャネルの各々は1つの次元に対応する。複数の送信アンテナおよび受信アンテナによって生成された追加の次元数が利用された場合、MIMOシステムは改善された性能(たとえば、より高いスループットおよび/またはより大きい信頼性)を与えることができる。
【0019】
[0032] いくつかの実装形態では、WLANは、ワイヤレスネットワークにアクセスする構成要素である様々なデバイスを含む。たとえば、2つのタイプのデバイス、すなわちアクセスポイント(「AP」)および(局または「STA」とも呼ばれる)クライアントが存在し得る。概して、APはWLANのためのハブまたは基地局として働き、STAはWLANのユーザとして働く。たとえば、STAはラップトップコンピュータ、携帯情報端末(PDA)、モバイルフォンなどであり得る。一例では、STAは、インターネットまたは他のワイドエリアネットワークへの一般的接続性を取得するためにWiFi(たとえば、802.11ahなどのIEEE802.11プロトコル)準拠ワイヤレスリンクを介してAPに接続する。いくつかの実装形態では、STAはAPとして使用されることもある。
【0020】
[0033] アクセスポイント(「AP」)は、また、ノードB、無線ネットワークコントローラ(「RNC」)、eノードB、基地局コントローラ(「BSC」)、基地トランシーバ局(「BTS」)、基地局(「BS」)、トランシーバ機能(「TF」)、無線ルータ、無線トランシーバ、または何らかの他の用語を含むか、それらのいずれかとして実装されるか、あるいはそれらのいずれかとして知られていることがある。
【0021】
[0034] また、局「STA」は、アクセス端末(「AT」)、加入者局、加入者ユニット、移動局、リモート局、リモート端末、ユーザ端末、ユーザエージェント、ユーザデバイス、ユーザ機器、または何らかの他の用語を備えるか、それらのいずれかとして実装されるか、あるいはそれらのいずれかとして知られていることがある。いくつかの実装形態では、アクセス端末は、セルラー電話、コードレス電話、セッション開始プロトコル(「SIP」)電話、ワイヤレスローカルループ(「WLL」)局、携帯情報端末(「PDA」)、ワイヤレス接続能力を有するハンドヘルドデバイス、またはワイヤレスモデムに接続された何らかの他の好適な処理デバイスを備え得る。したがって、本明細書で教示する1つまたは複数の態様は、電話(たとえば、セルラーフォンまたはスマートフォン)、コンピュータ(たとえば、ラップトップ)、ポータブル通信デバイス、ヘッドセット、ポータブルコンピューティングデバイス(たとえば、個人情報端末)、エンターテインメントデバイス(たとえば、音楽またはビデオデバイス、あるいは衛星ラジオ)、ゲームデバイスまたはシステム、全地球測位システムデバイス、あるいはワイヤレス媒体を介して通信するように構成された他の好適なデバイスに組み込まれ得る。
【0022】
[0035] 上記で説明したように、本明細書で説明するデバイスのいくつかは、たとえば、802.11ah規格を実装し得る。そのようなデバイスは、STAとして使用されるにせよ、APとして使用されるにせよ、他のデバイスとして使用されるにせよ、スマートメータリング(smart metering)のためにまたはスマートグリッドネットワークにおいて使用され得る。そのようなデバイスは、センサーアプリケーションを提供するか、またはホームオートメーションにおいて使用され得る。デバイスは、代わりにまたは追加として、たとえばパーソナルヘルスケア(personal healthcare)のためにヘルスケアコンテキストにおいて使用され得る。それらのデバイスはまた、(たとえば、ホットスポットとともに使用する)拡張された範囲のインターネット接続性を可能にするために、またはマシンツーマシン通信を実装するために、監視のために使用され得る。
【0023】
[0036]
図1に、本開示の態様が採用され得るワイヤレス通信システム100の一例を示す。ワイヤレス通信システム100は、ワイヤレス規格、たとえば802.11ah規格に従って動作し得る。ワイヤレス通信システム100は、STA106a、106b、106c、106d(総称してSTA106)と通信する、AP104を含み得る。
【0024】
[0037] AP104とSTA106との間のワイヤレス通信システム100中の送信のために、様々なプロセスおよび方法が使用され得る。たとえば、信号が、OFDM/OFDMA技法に従って、AP104とSTA106との間で送信および受信され得る。この場合、ワイヤレス通信システム100はOFDM/OFDMAシステムと呼ばれることがある。代替的に、信号は、CDMA技法に従って、AP104とSTA106との間で送信および受信され得る。この場合、ワイヤレス通信システム100はCDMAシステムと呼ばれることがある。
【0025】
[0038] AP104からSTA106のうちの1つまたは複数への送信を可能にする通信リンクはダウンリンク(DL)108と呼ばれることがあり、STA106のうちの1つまたは複数からAP104への送信を可能にする通信リンクはアップリンク(UL)110と呼ばれることがある。代替的に、ダウンリンク108は順方向リンクまたは順方向チャネルと呼ばれることがあり、アップリンク110は逆方向リンクまたは逆方向チャネルと呼ばれることがある。
【0026】
[0039] AP104は、基地局として働き、基本サービスエリア(BSA:basic service area)102においてワイヤレス通信カバレージを与え得る。AP104は、AP104に関連し、また通信のためにAP104を使用するSTA106とともに、基本サービスセット(BSS:basic service set)と呼ばれることがある。ワイヤレス通信システム100は、中央AP104を有しないことがあり、むしろ、STA106間のピアツーピアネットワークとして機能し得ることに留意されたい。したがって、本明細書で説明するAP104の機能は、代替的に、STA106のうちの1つまたは複数によって実行され得る。
【0027】
[0040]
図2に、ワイヤレス通信システム100内で採用され得るワイヤレスデバイス202において利用され得る様々な構成要素を示す。ワイヤレスデバイス202は、本明細書で説明する様々な方法を実装するように構成され得るデバイスの一例である。たとえば、ワイヤレスデバイス202は、
図1のAP104、またはSTA106のうちの1つを備え得る。
【0028】
[0041] ワイヤレスデバイス202は、ワイヤレスデバイス202の動作を制御するプロセッサ204を含み得る。プロセッサ204は中央処理ユニット(CPU)と呼ばれることもある。読取り専用メモリ(ROM)とランダムアクセスメモリ(RAM)の両方を含み得るメモリ206は、命令とデータとをプロセッサ204に与える。メモリ206の一部は不揮発性ランダムアクセスメモリ(NVRAM)をも含み得る。プロセッサ204は、一般に、メモリ206内に記憶されたプログラム命令に基づいて論理演算と算術演算とを実行する。メモリ206中の命令は、本明細書で説明する方法を実装するように実行可能であり得る。
【0029】
[0042] プロセッサ204は、1つまたは複数のプロセッサとともに実装された処理システムを備えるか、またはそれの構成要素であり得る。1つまたは複数のプロセッサは、汎用マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、コントローラ、状態機械、ゲート論理、個別ハードウェア構成要素、専用ハードウェア有限状態機械、あるいは情報の計算または他の操作を実行することができる任意の他の好適なエンティティの任意の組合せを用いて実装され得る。
【0030】
[0043] 処理システムは、ソフトウェアを記憶するための機械可読媒体をも含み得る。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語などの名称にかかわらず、任意のタイプの命令を意味すると広く解釈されたい。命令は、(たとえば、ソースコード形式、バイナリコード形式、実行可能コード形式、または任意の他の好適なコード形式の)コードを含み得る。命令は、1つまたは複数のプロセッサによって実行されたとき、本明細書で説明する様々な機能を処理システムに実行させる。
【0031】
[0044] ワイヤレスデバイス202はまた、ワイヤレスデバイス202と遠隔ロケーションとの間のデータの送信および受信を可能にするために送信機210と受信機212とを含み得るハウジング208を含み得る。送信機210と受信機212とは組み合わせられてトランシーバ214になり得る。アンテナ216は、ハウジング208に取り付けられ、トランシーバ214に電気的に結合され得る。ワイヤレスデバイス202は、複数の送信機、複数の受信機、複数のトランシーバ、および/または複数のアンテナをも含み得る(図示せず)。
【0032】
[0045] ワイヤレスデバイス202は、トランシーバ214によって受信された信号のレベルを検出し、定量化するために使用され得る、信号検出器218をも含み得る。信号検出器218は、総エネルギー、シンボルごとのサブキャリア当たりのエネルギー、電力スペクトル密度および他の信号などの信号を検出し得る。ワイヤレスデバイス202は、信号を処理する際に使用するデジタル信号プロセッサ(DSP)220をも含み得る。DSP220は、送信のためのデータユニットを生成するように構成され得る。いくつかの態様では、データユニットは物理レイヤデータユニット(physical layer data unit)(PPDU)を備え得る。いくつかの態様では、PPDUはパケットと呼ばれる。
【0033】
[0046] ワイヤレスデバイス202は、いくつかの態様では、ユーザインターフェース222をさらに備え得る。ユーザインターフェース222は、キーパッド、マイクロフォン、スピーカー、および/またはディスプレイを備え得る。ユーザインターフェース222は、ワイヤレスデバイス202のユーザに情報を伝達し、および/またはユーザからの入力を受信する、任意の要素または構成要素を含み得る。
【0034】
[0047] ワイヤレスデバイス202の様々な構成要素は、バスシステム226によって互いに結合され得る。バスシステム226は、たとえば、データバスを含み得、ならびに、データバスに加えて、電力バス、制御信号バス、およびステータス信号バスを含み得る。ワイヤレスデバイス202の構成要素は、何らかの他の機構を使用して、互いに結合されるか、あるいは互いに対する入力を受け付けるかまたは与え得ることを、当業者は諒解されよう。
【0035】
[0048] いくつかの別個の構成要素が
図2に示されているが、それらの構成要素のうちの1つまたは複数は、組み合わせられるかまたは共通に実装され得る。たとえば、プロセッサ204は、プロセッサ204に関して上記で説明した機能を実装するためだけでなく、信号検出器218および/またはDSP220に関して上記で説明した機能を実装するためにも使用され得る。さらに、
図2に示された構成要素の各々は、複数の別個の要素を使用して実装され得る。さらに、プロセッサ204は、説明する構成要素、モジュール、回路などのいずれかを実装するために使用され得、または各々が複数の別個の要素を使用して実装され得る。
【0036】
[0049] 上記で説明したように、ワイヤレスデバイス202は、AP104またはSTA106を備え得、通信を送信および/または受信するために使用され得る。
図3に、ワイヤレス通信を送信するためにワイヤレスデバイス202において利用され得る様々な構成要素を示す。
図3に示された構成要素は、たとえば、OFDM通信を送信するために使用され得る。いくつかの態様では、
図3に示された構成要素は、以下でさらに詳細に説明するように、時間的に長く、および/または複数のデータシンボル間に挿入された1つまたは複数のトレーニングフィールドを含むデータユニットを送信するために使用される。
【0037】
[0050]
図3のワイヤレスデバイス202aは、送信のためにビットを変調するように構成された変調器302を備え得る。たとえば、変調器302は、たとえばコンスタレーションに従ってビットを複数のシンボルにマッピングすることによって、プロセッサ204(
図2)またはユーザインターフェース222(
図2)から受信されたビットから複数のシンボルを決定し得る。それらのビットは、ユーザデータまたは制御情報に対応し得る。いくつかの態様では、それらのビットはコードワードにおいて受信される。一態様では、変調器302は、QAM(直交振幅変調)変調器、たとえば16QAM変調器または64QAM変調器を備える。他の態様では、変調器302は、2位相シフトキーイング(BPSK)変調器または4位相シフトキーイング(QPSK)変調器を備える。
【0038】
[0051] ワイヤレスデバイス202aは、変調器302からのシンボルまたはさもなければ変調されたビットを時間領域に変換するように構成された変換モジュール304をさらに備え得る。
図3では、変換モジュール304は、逆高速フーリエ変換(IFFT)モジュールによって実装されるものとして示されている。いくつかの実装形態では、異なるサイズのデータのユニットを変換する複数の変換モジュール(図示せず)があり得る。いくつかの実装形態では、変換モジュール304は、それ自体が、異なるサイズのデータのユニットを変換するように構成され得る。たとえば、変換モジュール304は、複数のモードで構成され得、各モードでシンボルを変換するために異なる数の点を使用し得る。たとえば、IFFTは、32個のトーン(すなわち、サブキャリア)上で送信されているシンボルを時間領域に変換するために32点が使用されるモードと、64個のトーン上で送信されているシンボルを時間領域に変換するために64点が使用されるモードとを有し得る。変換モジュール304によって使用される点の数は、変換モジュール304のサイズと呼ばれることがある。
【0039】
[0052]
図3では、変調器302および変換モジュール304は、DSP320中で実装されるものとして示されている。しかしながら、いくつかの態様では、変調器302と変換モジュール304の一方または両方が、プロセッサ204中でまたはワイヤレスデバイス202の別の要素(たとえば、
図2に関する上記の説明を参照)中で実装される。
【0040】
[0053] 上記で説明したように、DSP320は、送信のためのデータユニットを生成するように構成され得る。いくつかの態様では、変調器302および変換モジュール304は、制御情報を含む複数のフィールドと複数のデータシンボルとを備えるデータユニットを生成するように構成され得る。制御情報を含むそれらのフィールドは、たとえば、1つまたは複数のトレーニングフィールドと、1つまたは複数のシグナル(SIG)フィールドとを備え得る。トレーニングフィールドの各々は、ビットまたはシンボルの既知のシーケンスを含み得る。SIGフィールドの各々は、データユニットに関する情報、たとえばデータユニットの長さまたはデータレートの記述を含み得る。
【0041】
[0054] いくつかの態様では、DSP320は、1つまたは複数のトレーニングフィールドを複数のデータシンボル間に挿入するように構成される。DSP320は、プロセッサ204(
図2)から受信された、および/またはメモリ206(
図2)に記憶されたもしくはDSP320の一部分に記憶された情報に基づいて、データユニット中の1つまたは複数のトレーニングフィールドの位置またはロケーションを決定し得る。トレーニングフィールドをデータユニット中に挿入することについては、さらに詳細に説明する。
【0042】
[0055]
図3の説明に戻ると、ワイヤレスデバイス202aは、変換モジュールの出力をアナログ信号に変換するように構成されたデジタルアナログ変換器306をさらに備え得る。たとえば、変換モジュール306の時間領域出力は、デジタルアナログ変換器306によってベースバンドOFDM信号に変換され得る。デジタルアナログ変換器306は、プロセッサ204中でまたは
図2のワイヤレスデバイス202の別の要素中で実装され得る。いくつかの態様では、デジタルアナログ変換器306は、トランシーバ214(
図2)中でまたはデータ送信プロセッサ中で実装される。
【0043】
[0056] アナログ信号は送信機310によってワイヤレス送信され得る。アナログ信号は、送信機310によって送信される前に、たとえばフィルタ処理されることによってあるいは中間またはキャリア周波数にアップコンバートされることによって、さらに処理され得る。
図3に示された態様では、送信機310は送信増幅器308を含む。送信される前に、アナログ信号は送信増幅器308によって増幅され得る。いくつかの態様では、増幅器308は低雑音増幅器(LNA)を備える。
【0044】
[0057] 送信機310は、アナログ信号に基づいてワイヤレス信号中で1つまたは複数のパケットまたはデータユニットを送信するように構成される。それらのデータユニットは、プロセッサ204(
図2)および/またはDSP320を使用して、たとえば上記で説明したように変調器302および変換モジュール304を使用して、生成され得る。上記で説明したように生成され、送信され得るデータユニットについて、以下でさらに詳細に説明する。
【0045】
[0058] いくつかの態様では、送信機310は、約2.5MHzまたは1.25MHzの、またはより低い、帯域幅上でデータユニットを送信するように構成される。そのような帯域幅を使用するとき、データユニットの送信は比較的長い時間期間にわたって実行され得る。たとえば、500バイトまたはオクテットから構成されるデータユニットは約11ミリ秒の期間にわたって送信され得る。そのような送信は、約20MHzの帯域幅上で802.11ac規格に従って実装される同等の送信よりも約16倍遅い。
【0046】
[0059]
図4に、ワイヤレス通信を受信するために
図2のワイヤレスデバイス202において利用され得る様々な構成要素を示す。
図4に示された構成要素は、たとえば、OFDM通信を受信するために使用され得る。いくつかの態様では、
図4に示された構成要素は、以下でさらに詳細に説明するように、時間的に長く、および/または複数のデータシンボル間に挿入された1つまたは複数のトレーニングフィールドを含むデータユニットを受信するために使用される。たとえば、
図4に示された構成要素は、
図3に関して上記で説明した構成要素によって送信されたデータユニットを受信するために使用され得る。
【0047】
[0060] ワイヤレスデバイス202bの受信機412は、ワイヤレス信号中で1つまたは複数のパケットまたはデータユニットを受信するように構成される。以下で説明するように受信され、復号され、またはさもなければ処理され得るデータユニットについて、以下でさらに詳細に説明する。
【0048】
[0061] いくつかの態様では、受信機412は、約2.5MHzまたは1.25MHzの、またはより低い、帯域幅上でデータユニットを受信するように構成される。そのような帯域幅を使用するとき、データユニットの受信は、比較的長い時間期間にわたって、たとえば、データユニットが500バイトから構成されるときは約11ミリ秒にわたって、実行され得る。この時間中に、データユニットがそれを介して受信されるチャネルは変化していることがある。たとえば、チャネルの状態は、ワイヤレスデバイス202bの移動またはデータユニットを送信するデバイスの移動により、あるいは気象、または様々な障害の導入などの他の環境条件により、変化し得る。そのような状況では、データユニットの終端の近くの情報は、データユニットの受信が開始したときに決定された設定をワイヤレスデバイス202bが使用する場合、正しく復号されないことがある。しかしながら、以下でさらに詳細に説明するように、ワイヤレスデバイス202bは、複数のデータシンボルのうちの1つまたは複数を適切に復号するために、それらのデータシンボル間に挿入されたトレーニングフィールドを使用して、チャネルの更新された推定値を形成し得る。
【0049】
[0062]
図4に示された態様では、受信機412は受信増幅器401を含む。受信増幅器401は、受信機412によって受信されたワイヤレス信号を増幅するように構成され得る。いくつかの態様では、受信機412は、自動利得制御(AGC)プロシージャを使用して受信増幅器401の利得を調整するように構成される。いくつかの態様では、自動利得制御は、たとえば、利得を調整するために、受信されたショートトレーニングフィールド(STF:short training field)など、1つまたは複数の受信されたトレーニングフィールド中の情報を使用する。当業者は、AGCを実行するための方法を理解されよう。いくつかの態様では、増幅器401はLNAを備える。
【0050】
[0063] ワイヤレスデバイス202bは、受信機410からの増幅されたワイヤレス信号をそれのデジタル表現に変換するように構成されたアナログデジタル変換器410を備え得る。増幅されることに加えて、ワイヤレス信号は、デジタルアナログ変換器410によって変換される前に、たとえばフィルタ処理されることによってあるいは中間またはベースバンド周波数にダウンコンバートされることによって、処理され得る。アナログデジタル変換器410は、プロセッサ204中でまたはワイヤレスデバイス202の別の要素(
図2)中で実装され得る。いくつかの態様では、アナログデジタル変換器410は、トランシーバ中でまたはデータ受信プロセッサ中で実装される。
【0051】
[0064] ワイヤレスデバイス202bは、ワイヤレス信号の表現を周波数スペクトルに変換するように構成された変換モジュール404をさらに備え得る。
図4では、変換モジュール404は、高速フーリエ変換(FFT)モジュールによって実装されるものとして示されている。いくつかの態様では、変換モジュールは、それが使用する各点についてシンボルを識別し得る。
図3に関して上記で説明したように、変換モジュール404は、複数のモードで構成され得、各モードで信号を変換するために異なる数の点を使用し得る。たとえば、変換モジュール404は、32個のトーン上で受信された信号を周波数スペクトルに変換するために32点が使用されるモードと、64個のトーン上で受信された信号を周波数スペクトルに変換するために64点が使用されるモードとを有し得る。変換モジュール404によって使用される点の数は、変換モジュール404のサイズと呼ばれることがある。いくつかの態様では、変換モジュール404は、それが使用する各点についてシンボルを識別し得る。
【0052】
[0065] ワイヤレスデバイス202bは、データユニットがそれを介して受信されるチャネルの推定値を形成することと、チャネル推定値に基づいてチャネルのいくつかの影響を除去することとを行うように構成された、チャネル推定器および等化器405をさらに備え得る。たとえば、チャネル推定器は、チャネルの関数を近似するように構成され得、チャネル等化器は、その関数の逆を周波数スペクトルにおけるデータに適用するように構成され得る。
【0053】
[0066] いくつかの態様では、チャネル推定器および等化器405は、たとえば、チャネルを推定するために、ロングトレーニングフィールド(LTF:long training field)など、1つまたは複数の受信されたトレーニングフィールド中の情報を使用する。チャネル推定値は、データユニットの始端において受信された1つまたは複数のLTFに基づいて形成され得る。このチャネル推定値は、その後、上記1つまたは複数のLTFに続くデータシンボルを等化するために使用され得る。一定の時間期間の後にまたは一定数のデータシンボルの後に、データユニット中で1つまたは複数の追加のLTFが受信され得る。追加のLTFを使用して、チャネル推定値は更新され得、または新しい推定値が形成され得る。この新しいまたは更新されたチャネル推定値は、追加のLTFに続くデータシンボルを等化するために使用され得る。いくつかの態様では、新しいまたは更新されたチャネル推定値は、追加のLTFに先行するデータシンボルを再等化するために使用される。当業者は、チャネル推定値を形成するための方法を理解されよう。
【0054】
[0067] ワイヤレスデバイス202bは、等化されたデータを復調するように構成された復調器406をさらに備え得る。たとえば、復調器406は、たとえばコンスタレーションにおけるシンボルへのビットのマッピングを逆転させることによって、変換モジュール404とチャネル推定器および等化器405とによって出力されたシンボルから複数のビットを決定し得る。それらのビットは、プロセッサ204(
図2)によって処理または評価され得るか、あるいはユーザインターフェース222(
図2)に情報を表示するかまたはさもなければ出力するために、使用され得る。このようにして、データおよび/または情報が復号され得る。いくつかの態様では、それらのビットはコードワードに対応する。一態様では、復調器406は、QAM(直交振幅変調)復調器、たとえば16QAM復調器または64QAM復調器を備える。他の態様では、復調器406は、2位相シフトキーイング(BPSK)復調器または4位相シフトキーイング(QPSK)復調器を備える。
【0055】
[0068]
図4では、変換モジュール404と、チャネル推定器および等化器405と、復調器406とは、DSP420中で実装されるものとして示されている。しかしながら、いくつかの態様では、変換モジュール404と、チャネル推定器および等化器405と、復調器406とのうちの1つまたは複数が、プロセッサ204中でまたはワイヤレスデバイス202の別の要素(たとえば、
図2に関する上記の説明を参照)中で実装される。
【0056】
[0069] 上記で説明したように、受信機412において受信されたワイヤレス信号は、1つまたは複数のデータユニットを備える。上記で説明した機能または構成要素を使用して、データユニットまたはそれの中のデータシンボルは、復号され評価されるか、あるいはさもなければ評価または処理され得る。たとえば、プロセッサ204(
図2)および/またはDSP420は、変換モジュール404と、チャネル推定器および等化器405と、復調器406とを使用して、データユニット中のデータシンボルを復号するために、使用され得る。
【0057】
[0070] AP104とSTA106とによって交換されるデータユニットは、上記で説明したように、制御情報またはデータを含み得る。物理(PHY)レイヤにおいて、これらのデータユニットは物理レイヤプロトコルデータユニット(PPDU:physical layer protocol data unit)と呼ばれることがある。いくつかの態様では、PPDUはパケットまたは物理レイヤパケットと呼ばれることがある。各PPDUはプリアンブルとペイロードとを備え得る。プリアンブルはトレーニングフィールドとSIGフィールドとを含み得る。ペイロードは、たとえば、メディアアクセス制御(MAC)ヘッダまたは他のレイヤのためのデータ、および/またはユーザデータを備え得る。ペイロードは、1つまたは複数のデータシンボルを使用して送信され得る。本明細書のシステム、方法、およびデバイスは、同じくペイロード中のデータシンボル間に挿入されたトレーニングフィールドをもつデータユニットを利用し得る。
【0058】
[0071]
図3に示されたワイヤレスデバイス202aは、アンテナを介して送信されるべき単一の送信チェーンの一例を示している。
図4に示されたワイヤレスデバイス202bは、アンテナを介して受信されるべき単一の受信チェーンの一例を示している。いくつかの実装形態では、ワイヤレスデバイス202aおよび202bは、データを同時に送信するために複数のアンテナを使用してMIMOシステムの一部分を実装し得る。
【0059】
[0072]
図5は、ワイヤレス通信を送信および受信するために
図2のワイヤレスデバイス202などのワイヤレスデバイスにおいて実装され得るMIMOシステムの機能ブロック図である。MIMOシステムは、
図3を参照しながら説明した構成要素の一部または全部を利用し得る。受信機の出力において受信されるべき、送信のためのビットが、エンコーダ504に与えられる。エンコーダ504は、そのビットストリームに対して前方誤り訂正(FEC)コードを適用し得る。FECコードは、ブロックコード、畳み込みコードなどであり得る。符号化されたビットは、符号化されたビットをN個の送信ストリームに分配するインターリービングシステム505に与えられる。
【0060】
[0073] インターリービングシステム505は、エンコーダ504からの入力ビットストリームを、N個の空間ストリームインターリーバ508a、508b、および508nにパース(parse)する、ストリームパーサ(stream parser)506を含む。ストリームパーサ506は、空間ストリームの数を与えられ、ラウンドロビンベースでビットをパースし得る。他のパース関数も使用され得る。使用され得る1つのパース関数はk
n=N
TX*k+nである(すなわち、空間ストリームごとに1ビットを用いて、次いで次の空間ストリームに移る、ラウンドロビンであり、ここで、k
nは入力ビットインデックスであり、N
TXは送信機/空間ストリームの数である)。別のより一般的な関数f(k,n)も使用され得、たとえば、ある空間ストリームに2ビットを送り、次いで次の空間ストリームに移る。各インターリーバ508a、508b、および508nは、それぞれ、その後、フェージングまたは他のチャネル状態による誤りが修復され得るように、ビットを分配し得る。以下で、インターリーバ508a、508b、および508nをインターリーバ508と呼ぶことがある。
【0061】
[0074] 各送信ストリームは、次いで変調器502a、502b、または502nによって変調され得る。
図3を参照しながら上記で説明したように、ビットは、QPSK(4位相シフトキーイング)変調、BPSK(一度に1ビットをマッピングする)、16QAM(6ビットのグループをマッピングする)、64QAMなど、変調技法を使用して変調され得る。各ストリームについて変調されたビットは、変換モジュール510a、510b、および510nに与えられ得る。いくつかの実装形態では、変換モジュール510a、510b、および510nは、変調されたビットを周波数領域から時間領域に変換するために逆離散時間フーリエ変換(IDFT)を実行し得る。変換モジュール510a、510b、および510nは、
図3を参照しながら上記で説明したように、異なるモードに従って動作し得る。たとえば、変換モジュール510a、510b、および510nは、32点モードまたは64点モードに従って動作するように構成され得る。いくつかの実装形態では、変調されたビットは、変換モジュール510a、510b、および510nに与えられる前に、時空間ブロックコーディング(STBC:space time block coding)を使用して符号化され得、空間マッピングが実行され得る。変調されたビットが各空間ストリームについて時間領域信号に変換された後、その時間領域信号は、
図3を参照しながら上記で説明したように、変換器512a、512b、および512nを介してアナログ信号に変換され得る。その信号は、次いで、送信機514a、514b、および514cを使用して、ならびにアンテナ516a、516b、または516nを使用して、所望の周波数帯域幅(たとえば、1MHz、2MHz、4MHz、8MHz、および16MHz、またはより高い周波数帯域幅)上でワイヤレス無線空間中に送信され得る。
【0062】
[0075] いくつかの実施形態では、アンテナ516a、516b、および516nは、別個であり、空間的に分離したアンテナである。他の実施形態では、別個の信号が合成されて、N個よりも少数のアンテナからの異なる偏波になり得る。このことの一例は、空間回転または空間拡散が行われ、複数の空間ストリームが単一のアンテナ上にマッピングされる場合である。さらに、別個の空間ストリームが異なる方法で編成され得ることを理解されたい。たとえば、ある送信アンテナが、2つ以上の空間ストリームからのデータを搬送し得、またはいくつかの送信アンテナが、ある空間ストリームからのデータを搬送し得る。たとえば、4つの送信アンテナと2つの空間ストリームとを用いた送信機の事例について考える。各空間ストリームは2つの送信アンテナ上にマッピングされ得、したがって2つのアンテナが、ただ1つの空間ストリームからのデータを搬送している。
【0063】
[0076]
図6は、ワイヤレス通信を受信するために
図2のワイヤレスデバイス202などのワイヤレスデバイスにおいて実装され得る例示的なMIMOシステム600の機能ブロック図である。MIMOシステムは、
図4を参照しながら説明した構成要素の一部または全部を利用し得る。ワイヤレスデバイス202bは、
図5のアンテナ516a、516b、および516nからの送信を受信するように構成され得る。ワイヤレスデバイス202bは、N個の受信回路に結合されたN個のアンテナ518a、518b、および518n、または618a、618b、および618n(適宜に、個別の偏波をカウントする)においてチャネルから信号を受信する。それらの信号は、次いで、受信された信号を増幅するように構成された増幅器をそれぞれ含み得る受信機620a、620b、および620nに与えられる。それらの信号は、次いで、変換器622a、622b、および622nを介してデジタル形式に変換され得る。
【0064】
[0077] 変換された信号は、次いで、変換モジュール624a、624b、および624nを介して周波数スペクトルに変換され得る。上記で説明したように、変換モジュール624a、624b、および624nは、様々なモードに従って、ならびに使用されるサイズおよび帯域幅に従って動作し得る(たとえば、32点、64点など)。変換された信号は、
図4を参照しながら上記で説明したのと同様に機能し得る、それぞれのチャネル推定器および等化器ブロック626a、626b、および626nに与えられ得る。チャネル推定の後に、その出力は(たとえば、
図5のMIMO検出器528に対応する)MIMO検出器628に与えられ得、MIMO検出器628は、その後それの出力を復調器630a、630b、および630nに与え得、復調器630a、630b、および630nは、上記で説明したような変調技法のうちの1つに従ってビットを復調し得る。復調されたビットは、次いでデインターリーバ632a、632b、および632nに与えられ得、デインターリーバ632a、632b、および632nは、ビットをストリームデパーサ(stream de-parser)634中に受け渡し得、ストリームデパーサ634は、それらのビットを単一ビットストリームにして(たとえば、
図5のデコーダ536に対応する)デコーダ636中に与え得、デコーダ636は、それらのビットを適切なデータストリームに復号し得る。
【0065】
[0078]
図7は、
図6に示されたMIMOシステム600など、MIMOシステムにおけるスケジューラの一実装形態の動作を示すタイミング図である。
図7は、ワイヤレスノード701とネットワーク715とを示している。一実施形態では、ワイヤレスノード701は、
図2に示された、ワイヤレスデバイス202であり得る。
図7に示されたMIMOネットワーク715の実施形態は、同時に最高3つのチャネル上でのデータ送信をサポートし得る。ワイヤレスノード701内には、ネットワークアプリケーション705と、スケジューラ710とが実装される。一実施形態では、ネットワークアプリケーション705およびスケジューラ710は、
図2に示された、ワイヤレスデバイス202のメモリ構成要素206に記憶されたプロセッサ命令として実装され得る。
【0066】
[0079] ネットワークアプリケーション705は、ワイヤレスネットワーク上でデータを送信する任意のアプリケーションであり得る。たとえば、ネットワークアプリケーション705は、ウェブブラウジングアプリケーション、インスタントメッセージングアプリケーション、ストリーミングアプリケーション、または電子メールアプリケーションであり得る。スケジューラ710は、ネットワーク715上でのメッセージの送信を管理する。スケジューラ710は、複数のネットワークアプリケーションからメッセージを受信し得る。それらのメッセージは、ネットワークアプリケーション自体から直接受信されるか、あるいはワイヤレスデバイス202の他の介在モジュールまたは構成要素(図示せず)から間接的に受信され得る。
【0067】
[0080]
図7は、ネットワークアプリケーション705からスケジューラ710に送られるデータメッセージ720を示している。スケジューラ710がデータメッセージ720を受信すると、スケジューラ710は、ネットワーク715上で送信要求(request-to-send)メッセージ725を送信する。それに応答して、スケジューラ710は、ネットワーク715から送信可(clear-to-send)メッセージ730を受信する。いくつかの実施形態では、送信可メッセージ730は、
図1に示されたアクセスポイント104など、アクセスポイントによって送信され得る。送信可メッセージは、スケジューラ710がネットワーク715上でデータを送信し得ることを示す。一実施形態では、送信可メッセージ730はまた、送信可メッセージ730が送信された後のある時間期間中にネットワーク715上の他のノード(図示せず)が送信することを抑制し得る。
【0068】
[0081] 送信可メッセージ730を受信したことに応答して、スケジューラ710は、ネットワーク715上でデータメッセージ735を送信する。データメッセージ735は、ネットワーク715のチャネル上で送信され得る。データメッセージ735中に含まれるデータは、データメッセージ720中でネットワークアプリケーション705によって送信されたデータに対応する。
図7の図示されたシナリオでは、スケジューラ710は、送信可メッセージ730が受信されたとき、送信を待っているデータメッセージ720のみを有することに留意されたい。したがって、スケジューラ710は、データメッセージ735において、ネットワーク上でデータメッセージ720中で受信されたデータに対応するデータのみを送る。
【0069】
[0082] ネットワーク715など、同時に複数のメッセージの送信をサポートすることができるネットワークでは、データメッセージ735が送信されている時間期間T
1中にネットワーク715の容量が過少利用(underutilized)され得る。この過少利用(underutilization)は、RTS/CTS交換の使用を介したスケジューラ710のネットワーク容量の予約により生じ得る。CTSメッセージ730が送信されたとき、それは、ノード701とネットワーク715のネットワーク容量を共有しているノードのセットによって受信され得る。このノードのセットは、CTSメッセージ730が送信された後にネットワーク715上でデータを送信することを抑制され得る。
【0070】
[0083] ノードのセット中の1つまたは複数のノードは、データを、バッファさせ、時間期間T
1中にワイヤレスネットワーク715上での送信のために利用可能にし得る。これらのノードは、それらがネットワーク715の複数のチャネル上で同時に送信し得るように十分なデータをバッファさせ、このようにして、送信のために利用可能な単一のデータメッセージ720のみを有する、そのノード701により高い利用度(higher utilization)を与え得る。しかしながら、これらの1つまたは複数のノードがCTSメッセージ730を受信すると、それらは、時間期間T
1が過ぎるまで、ワイヤレスネットワーク715上でそれらのバッファされたデータの送信を試みない。ノード701は、別のノードが時間期間T
1中に複数のメッセージを送信することが可能であり得たとき、時間期間T
1中に単一のメッセージのみを送信するので、スケジューラ710は、時間期間T
1中にワイヤレスネットワークのより低い利用度(lower utilization)を生じさせ得る。
【0071】
[0084] データメッセージ735がネットワーク715上で送信された後に、スケジューラ710は、ネットワークアプリケーション705から別のデータメッセージ740を受信する。それに応答して、スケジューラ710は送信要求メッセージ745を送る。送信要求メッセージ745が送信されたすぐ後に、ネットワークアプリケーション705によってデータメッセージ750がスケジューラ710に送られる。その結果、スケジューラ710は、送信可メッセージ755が受信されたとき、ネットワーク715上で送られるのを待っている2つのメッセージからのデータを有する。これらのメッセージは、メッセージ740からのdata2と、メッセージ750からのdata3とに対応する。
【0072】
[0085] 送信可メッセージ755はAP104によって送信され得る。送信可メッセージ755は、スケジューラ710が今やネットワーク715上でデータを送信し得ることをスケジューラ710に示す。それに応答して、スケジューラ710はネットワーク715上でデータメッセージ760を送信する。データメッセージ760中に含まれるデータは、ネットワークアプリケーション705によってスケジューラ710に送られたデータメッセージ740および750中に含まれるデータに対応する。データメッセージ760は、data2およびdata3を実質的に同時に送るためにMIMOシステムの2つのチャネルを利用し得る。たとえば、メッセージ740からのdata2に対応するデータは第1のチャネル上で送られ得る。メッセージ750からのdata3に対応するデータは、第1のチャネル上でのdata2に対応するデータの送信と実質的に同時に第2のチャネル上で送られるか、または少なくともそのデータと時間的に重複して送られ得る。複数のチャネルの使用は、data2およびdata3を単一のチャネル上で直列に送信することと比較して、data2およびdata3を送信するのに必要な時間量を低減し得る。
【0073】
[0086] スケジューラ710を用いた場合、時間期間T
1中の利用度と比較して、(1つまたは複数の)データメッセージ760のネットワーク715のより高い利用度は、(メッセージ730および755などの)送信可メッセージがスケジューラ710によって受信されるときに関する、データメッセージ720、740、および750のランダムなタイミングに応じて変わり得る。スケジューラ710の図示された実装形態は、少なくとも1つのデータメッセージが送信のために利用可能であるときはいつでも、ネットワーク715上でのデータの送信を開始し得る。ワイヤレス媒体が、同時に2つ以上のチャネル上でのデータの送信をサポートすることができる場合でも、この単一のメッセージは、ワイヤレス媒体上でただ1つのチャネルを占有し得る。したがって、スケジューラ710を利用する実装形態における複数のチャネル上でのデータの送信は、ネットワークアプリケーション705など、1つまたは複数のネットワークアプリケーションによって生成されるメッセージの到着時間に依存し得る。一実施形態では、これらのメッセージの到着時間はランダムであると見なされ得、場合によってはワイヤレス媒体の低い利用度(low utilization)を生じる。
【0074】
[0087]
図7は次に、スケジューラ710がデータメッセージ760を送信した後に、ネットワークアプリケーション705から別のデータメッセージ765が受信されることを示している。それに応答して、スケジューラ710は、ネットワーク715上で送信要求メッセージ770を送信し、送信可メッセージ775を受信する。それに応答して、スケジューラ710は単一のデータメッセージ780を送信する。データメッセージ780中に含まれるデータは、ネットワークアプリケーション705から受信されたデータメッセージ765中に含まれるデータに対応する。データメッセージ780が送られたとき、時間期間T
3中のネットワーク715の伝送容量(transmission capacity)は過少利用(underutilized)され得る。上記で説明したように、ネットワーク715が、たとえば、同時に複数のチャネル上でのデータの送信をサポートすることができるMIMOシステムである場合、データメッセージ780の送信は伝送媒体を過少利用(underutilize)し得る。たとえば、別のワイヤレスノード(図示せず)が時間期間T
3中に最大数のチャネル上でデータを送信し得る場合、時間期間T
3中のスケジューラのネットワークの使用は、ネットワーク715が潜在的に搬送することができるデータの量を低減し得る。
【0075】
[0088]
図7に示されたスケジューラ710を用いて、ワイヤレス媒体は非能率的(inefficiently)に利用され得る。たとえば、スケジューラによるワイヤレス媒体利用度は、ネットワークアプリケーション705によってスケジューラ710に送られるメッセージのタイミングに依存し得る。たとえば、送信可メッセージ730の前にスケジューラ710によってデータメッセージ720のみが受信されたので、ネットワーク715上で送られるデータメッセージ735は、単一のメッセージ720からのデータのみを含む。送信可メッセージ755の前に2つのメッセージ(図示のように、データメッセージ740および750)が受信されたとき、これらの2つのメッセージからのデータは、送信可メッセージの後に並行して(concurrently)送られ得る。第1の場合と同様に、送信可メッセージ775の前にスケジューラ710によって単一のデータメッセージ765のみが受信されたとき、データメッセージ780は、その単一のデータメッセージ765からのデータのみを含む。この単一のデータメッセージ765は、ネットワーク715のただ1つのチャネルを利用し得る。
【0076】
[0089] 図示の実施形態では、スケジューラ710は、送信要求メッセージ725および745を送信することによってワイヤレス媒体上での送信時間を予約する。少なくとも1つのメッセージが送信を待っているとき、スケジューラ710は送信要求メッセージ725および745を送信し得るので、スケジューラ710は、ワイヤレス媒体がサポート可能であるよりも少数のメッセージを同時送信のために利用可能にしているとき、ワイヤレス媒体は送信のために予約され得る。送信要求メッセージ725および745によって予約された送信時間期間中に、
図7は、各時間期間中にただ1つのデータメッセージ、すなわちメッセージ735または755が送られることを示している。同時に2つ以上のメッセージの送信をサポートするワイヤレス媒体、たとえば、MIMOワイヤレスシステムを利用するとき、スケジューラ710によってワイヤレス媒体の伝送容量が過少利用され得る。
【0077】
[0090]
図8は、本明細書で開示する動作可能な実施形態のうちの1つまたは複数を実装するスケジューラの動作を示すタイミング図である。
図8は、ネットワークノード801とネットワーク715とを示している。一実施形態では、ネットワークノード801はワイヤレスデバイス202であり得る。ネットワークノード801内には、ネットワークアプリケーション805とスケジューラ811とが実装される。ネットワークアプリケーション805およびスケジューラ811は、
図2に示された、ワイヤレスデバイス202のメモリ構成要素206に記憶されたプロセッサ命令として実装され得る。これらの命令は、1つまたは複数の機能を実行するようにワイヤレスデバイス202のプロセッサ204を構成し得る。
【0078】
[0091]
図7の場合のように、ネットワークアプリケーション805は、ワイヤレスネットワーク上でデータを送る任意のアプリケーションであり得る。たとえば、ネットワークアプリケーション805は、ウェブブラウジングアプリケーション、インスタントメッセージングアプリケーション、ストリーミングアプリケーション、または電子メールアプリケーションであり得る。
図7のスケジューラ710と同様に、スケジューラ811は、ネットワーク715上でのメッセージの送信を管理する。スケジューラ811は、複数のネットワークアプリケーションからメッセージを受信し得る。それらのメッセージは、ネットワークアプリケーション自体から直接受信されるか、またはワイヤレスデバイス202の他の介在構成要素(図示せず)から間接的に受信され得る。
【0079】
[0092]
図8は、ネットワークアプリケーション805からスケジューラ811に送られる第1のデータメッセージ815を示している。いくつかの実施形態では、スケジューラは、ネットワークアプリケーション805など、1つまたは複数のネットワークアプリケーションから受信されたメッセージをキュー(図示せず)に記憶し得る。スケジューラ811はまた、キューに記憶されたメッセージに基づいて達成され得るワイヤレス媒体利用度を決定し得る。いくつかの実施形態、たとえば、MIMOを利用する実施形態では、ワイヤレス伝送媒体上で複数のメッセージが同時に送られ得る。
図8の図示されたシナリオでは、時間T
4中に第1のデータメッセージ815のみがキューに記憶される。時間期間T
4中に単一のメッセージのみが送信のために利用可能である場合、この時間期間中に送信がスケジューラ811によって開始された場合はワイヤレス媒体が十分に利用されないことがある。これを防ぐために、スケジューラは、時間期間T
4中にネットワーク715上でデータの送信を開始しない。
【0080】
[0093] 時間期間T
5の初めに、スケジューラ811によってネットワークアプリケーション805からデータメッセージ820が受信される。一実施形態では、データメッセージ820を受信すると、スケジューラ811はメッセージ820を送信キューに追加し得る。スケジューラ811は、次いで、送信キュー中のメッセージに基づいて達成され得るワイヤレス媒体利用度(wireless medium utilization)を決定し得る。利用度がしきい値を下回る場合、スケジューラ811は、送信キュー上のメッセージの送信を開始しないことがある。利用度がしきい値を上回る場合、スケジューラ811は、送信キュー中のメッセージの送信を開始し得る。
図8は、データメッセージ820が受信されたとき、スケジューラ811が送信を開始しないことを示している。たとえば、スケジューラ811は、時間期間T
5中に送信要求メッセージを送信しない。
【0081】
[0094] 時間期間T
6の初めに、スケジューラ811によってネットワークアプリケーション805からデータメッセージ825が受信される。一実施形態では、データメッセージ825を受信すると、スケジューラ811はメッセージ825を送信キューに追加し得る。スケジューラ811は、再び、送信キュー中のメッセージに基づいて達成され得るワイヤレス媒体利用度を決定し得る。
図8の図示された例では、データメッセージ825が受信された後、スケジューラ811は、メッセージ815、820、および825からのデータを送信のためにキューイングさせ得る。スケジューラ811は、次いで、これらのキューイングされたメッセージに基づいてワイヤレス利用度(wireless utilization)を決定し得る。キューイングされたメッセージ815、820、および825に基づいて決定されたワイヤレス利用度は、利用度しきい値(utilization threshold)を上回り得る。その結果、
図8は、スケジューラ811がデータメッセージ825を受信した後にネットワーク715上で送信を開始することを示している。
【0082】
[0095] 図示の実施形態では、スケジューラ811は、送信要求メッセージ(request-to-send)830を送信することによって送信を開始する。次いで、ネットワーク715から送信可メッセージ(clear-to-send)835が受信される。送信可メッセージ835が受信された後に、スケジューラ811は、ネットワーク715の個別のチャネル上でメッセージ815、820、および825からのデータを送信する。これらの個別のチャネルは、データが実質的に同時に送信されることを可能にし得、したがって、data1、data2、およびdata3を単一のチャネル上で直列に送ることと比較して、data1、data2、およびdata3を送るために必要とされる時間を低減し得る。データメッセージ840はネットワーク715の容量をより十分に利用し得るので、
図7に示されたスケジューラ710を利用する実装形態と比較して、スケジューラ811を利用する実装形態を用いてネットワーク715の全体的な利用が高められ得る。
【0083】
[0096]
図9は、本明細書で開示する動作可能な実施形態のうちの1つまたは複数を実装するスケジューラの動作を示すタイミング図である。
図9は、ワイヤレスデバイス901とワイヤレスネットワーク715とを示している。ワイヤレスデバイス901は、
図2に示されたワイヤレスデバイス202と等価であり得る。ワイヤレスデバイス901内には、第1のネットワークアプリケーション902と、第2のネットワークアプリケーション903と、スケジューラ911とがある。第1のネットワークアプリケーション902と、第2のネットワークアプリケーション903と、スケジューラ911とは、
図2に示された、ワイヤレスデバイス202のメモリ構成要素206に記憶されたプロセッサ命令として実装され得る。これらの命令は、1つまたは複数の機能を実行するようにワイヤレスデバイス202のプロセッサ204を構成し得る。
【0084】
[0097]
図7および
図8の場合のように、ネットワークアプリケーション902および903は、ワイヤレスネットワーク上でデータを送る任意のアプリケーションであり得る。たとえば、ネットワークアプリケーション902および903の各々は、ウェブブラウジングアプリケーション、インスタントメッセージングアプリケーション、ストリーミングアプリケーション、または電子メールアプリケーションであり得る。
図7および
図8のスケジューラと同様に、スケジューラ911は、ネットワーク715上でのメッセージの送信を管理する。スケジューラ911は、第1のネットワークアプリケーション902と第2のネットワークアプリケーション903の両方からメッセージを受信し得る。それらのメッセージは、ネットワークアプリケーション自体から直接受信されるか、またはワイヤレスデバイス202の他の介在構成要素(図示せず)から間接的に受信され得る。
【0085】
[0098] 図示の実施形態では、第1のネットワークアプリケーション902は、第2のネットワークアプリケーション903とは異なる1つまたは複数の特性を有し得る。たとえば、アプリケーション902は、ウェブブラウザ、またはインスタントメッセージングアプリケーションなど、対話型アプリケーション(interactive application)であり得るが、ネットワークアプリケーション903は、メディアプレーヤなどのストリーミングアプリケーション(streaming application)であり得る。いくつかの実施形態では、第1のネットワークアプリケーション902と第2のネットワークアプリケーション903との間の異なる特性は、第1のネットワークアプリケーション902と第2のネットワークアプリケーション903との間で送信遅延に対する異なる感度を生じ得る。スケジューラ911の実装形態は、第1のネットワークアプリケーション902と第2のネットワークアプリケーション903との遅延感度(delay sensitivity)を考慮し得る。たとえば、いくつかの実施形態では、スケジューラ911は、ネットワークアプリケーション902または903の遅延感度に少なくとも部分的に基づいて、それらのアプリケーションから受信されたデータの送信を遅延させ得る。
【0086】
[0099]
図9の図示の実施形態では、第1のネットワークアプリケーション902は、第2のネットワークアプリケーション903よりも送信遅延に対して敏感でない。一実施形態では、第1のネットワークアプリケーションはストリーミングアプリケーションであり得るが、第2のネットワークアプリケーションは対話型アプリケーションであり得る。
図9は、スケジューラによって第1のネットワークアプリケーション902からデータメッセージ920が受信されることを示している。一実施形態では、スケジューラ911は、メッセージ920が受信されたとき、メッセージ920に対応するデータを送信キュー中に挿入し得る。メッセージ920を受信したことに応答して、スケジューラ911はまた、送信キュー中のメッセージに基づいてネットワーク利用度(network utilization)を決定し得る。図示の実施形態では、時間期間T
7中にただ1つのメッセージがキュー中にある。スケジューラ911は、次いで、決定されたネットワーク利用度に基づいて、ネットワーク715上でデータの送信を開始すべきかどうかを決定し得る。スケジューラ911はまた、第1のネットワークアプリケーションの遅延感度に基づいて、ネットワーク715上でデータの送信を開始すべきかどうかを決定し得る。
【0087】
[00100] 図示の実施形態では、送信キュー中にただ1つのメッセージがあるので、決定されたネットワーク利用度は所定の利用しきい値(utilization threshold)を下回り得る。さらに、第1のネットワークアプリケーションは遅延に対してあまり敏感でないので、それの感度は所定の遅延感度しきい値(delay sensitivity threshold)を下回り得る。したがって、スケジューラ911は、データメッセージ920を受信したことに応答して、ネットワーク715上で送信が開始されるべきでないと決定し得る。それよりむしろ、データメッセージ920の送信は遅延される。
【0088】
[00101] 一実施形態では、1つまたは複数の条件が満たされるまで、データメッセージ920の送信は遅延され得る。たとえば、スケジューラ911は、第1のネットワークアプリケーションによって送られたメッセージの最大遅延を決定し得る。メッセージ920が最大遅延だけまたはそれ以上遅延されたとき、スケジューラ911は、送信によって生じ得るネットワーク利用度にかかわらず、ネットワーク715上でメッセージ920に対応するデータの送信を開始し得る。
【0089】
[00102] 代替的に、データメッセージ920の送信は、スケジューラ911によって追加のデータが送信のためにキューイングされるまで遅延され得る。追加のキューイングされたデータは、決定された利用度が所定の利用しきい値を上回るように、決定されたネットワーク利用度を増加させ得る。スケジューラ911は、次いで、増加させられた利用度に基づいて、データメッセージ920に対応するデータの送信を開始し得る。
【0090】
[00103] データメッセージ920の送信はまた、スケジューラ911が第2のネットワークアプリケーションからデータを受信したことに基づいて機会主義的に(opportunistically)行われ得る。第2のネットワークアプリケーションが送信遅延に対してより敏感である場合、スケジューラ911は、第2のネットワークアプリケーションからのメッセージの送信に遅延をもたらすことを回避するために、ワイヤレスネットワーク上で送信を開始し得る。送信が開始されたとき、第1のネットワークアプリケーションからのメッセージもスケジューラ911によって送信され得る。このシナリオは、
図9において次に示されている。
【0091】
[00104] スケジューラ911は、第2のネットワークアプリケーション903からデータメッセージ925を受信する。一実施形態では、スケジューラ911は、データメッセージ925が受信されたとき、データメッセージ925のインジケータを送信キューに追加し得る。上記で説明したように、第2のネットワークアプリケーションは、インスタントメッセージングプログラムまたはウェブブラウザなど、対話型アプリケーションであり得る。第2のネットワークアプリケーションが遅延に対して敏感であるので、スケジューラ911は、第2のネットワークアプリケーションからメッセージ925を受信したことに応答して、ネットワーク715上でデータの送信を開始し得る。キューイングされたメッセージ920および925に基づくネットワーク利用度が所定の利用しきい値よりも小さいとスケジューラ911が決定した場合でも、送信は開始され得る。
【0092】
[00105] 図示のように、スケジューラ911によってデータメッセージ925が受信されたとき、スケジューラ911は、ネットワーク715上で送信を開始する。図示の実施形態において送信を開始するために、スケジューラ911は送信要求メッセージ930を送信する。次いで、ネットワーク715から送信可メッセージ935が受信される。それに応答して、スケジューラ911はネットワーク715上でデータメッセージ940を送信する。データメッセージ940は、第1のネットワークアプリケーション902および第2のネットワークアプリケーション903から受信された、メッセージ920および925に対応するデータを含み得る。複数のチャネル上でのデータの同時送信をサポートするいくつかの実施形態では、メッセージ920に対応するデータは第1のチャネル上で送信され得るが、データメッセージ925に対応するデータは第2のチャネル上で送信され得る。3つ以上のチャネル上でのデータの同時送信をサポートする実施形態では、ネットワーク715上でデータメッセージ940が送信されている時間期間T
8中にワイヤレス媒体が十分に利用されないことがある。
【0093】
[00106]
図9は、次いで、スケジューラ911によって第1のネットワークアプリケーション902から3つのメッセージが受信されることを示している。第1のネットワークアプリケーション902が遅延に対してあまり敏感でないので、スケジューラ911は、メッセージ945または950を受信したことに応答して、ネットワーク715上で送信を開始しないことがある。たとえば、メッセージ945を含むキュー、またはメッセージ945とメッセージ950とを含むキューに基づく、決定されたワイヤレスネットワーク利用は、所定のネットワーク利用度しきい値を下回り得る。スケジューラ911によってメッセージ955が受信されたとき、スケジューラ911は、少なくともメッセージ945、950、および955に対応するデータを含む送信キューに基づいてネットワーク利用度を決定し得る。図示の実施形態では、決定されたネットワーク利用度は所定のネットワーク利用度しきい値を超え得る。たとえば、ネットワーク715が同時に最高3つのチャネル上でのデータの送信をサポートする場合、メッセージ945、950、および955に対応するデータを含む送信キューは、所定のネットワーク利用度しきい値を上回るレベルでの媒体の利用度を可能にし得る。その結果、スケジューラ911は、送信要求メッセージ960を送信することによって送信を開始する。次いで、ネットワーク715から送信可メッセージ
965が受信される。それに応答して、スケジューラ911はデータメッセージ970を送信する。データメッセージ970は、ワイヤレスネットワーク715の3つの個別のチャネル上で、data3、data4、およびdata5に対応するデータを送り得る。たとえば、一実施形態では、ネットワーク715はMIMOをサポートし得る。
【0094】
[00107]
図9は、次に、スケジューラ911によって第2のネットワークアプリケーション903からデータメッセージ975が受信されることを示している。スケジューラ911が送信キューに基づいてネットワーク利用度を決定した場合、送信キューがメッセージ975に対応するデータのみを含むとき、ネットワーク利用度は所定の利用しきい値を下回り得る。しかしながら、第2のネットワークアプリケーション903が遅延に対して敏感であるので、スケジューラは、データメッセージ975を受信したことに応答して、メッセージ980、985、および990によって示されるように、ネットワーク715上で送信を開始し得る。ネットワーク715が複数のチャネル上でのデータの同時送信をサポートする場合、データメッセージ990の送信は、たとえば、ネットワークメッセージ970の送信よりも、低いネットワーク利用度を生じ得る。
【0095】
[00108]
図10に、開示する実施形態のうちの少なくとも1つを実装する、スケジューラ710を使用する局とスケジューラ811を使用する局とによる、同じデータの送信を示す。局106aと局106bの両方の上で動作しているネットワークアプリケーション(図示せず)が、3つの同じデータメッセージ945a、950a、および955a(図示せず)を生成し、STA106aとSTA106bとの内に実装されるスケジューラにそれらを送る。STA106aによって実装されるスケジューラは、
図7に示されたスケジューラ710である。STA106bによって実装されるスケジューラは、
図8のスケジューラ811または
図9の911である。同じデータメッセージが生成され、時間T
10、T
11、およびT
12においてスケジューラに送る。
【0096】
[00109] 時間T
10と時間T
11との間の持続時間は、およびSTA106a〜bのスケジューラが、メッセージのいずれかの1つを受信したことに応答して送信機会を取得するために必要とされる時間よりも大きくなり得る。図示のように、STA106aがスケジューラ710を利用するので、STA106aは、それのスケジューラが時間T
10、T
11、およびT
12においてネットワークアプリケーション(図示せず)からメッセージを受信したとき、ネットワーク715上でメッセージ945a、950a、および955a(図示せず)に対応するデータを送信する。STA106aは、最初に送信要求メッセージ(request-to-send)1010、1025、および1040を送信することによってデータを送信する。それに応答して、次いで送信可メッセージ(clear-to-send)1015、1030、および1045が受信される。一実施形態では、送信可メッセージ1015、1030、および1045はアクセスポイントによって送られる。送信可メッセージ1015、1030、および1045を受信した後に、STA106aは、それぞれ内部メッセージ945a、950a、および955aに対応するデータ945b、950b、および955bを含んでいる、データメッセージ1020、1035、および1050を送信する。
【0097】
[00110] STA106bはスケジューラ811または911を利用して実装されるので、STA106bは、それのスケジューラがネットワークアプリケーションからデータを受信したとき、時間T
10およびT
11において送信を開始しない。それよりむしろ、図示の実施形態では、STA106bのスケジューラは、受信メッセージ945および950を送信するためのネットワーク利用度が所定の利用しきい値よりも小さいと決定する。したがって、時間T
10およびT
11においてメッセージが受信されたとき、送信は開始されない。時間T
12においてメッセージ955が受信されたとき、STA106bのスケジューラは、そのメッセージについて所定の利用しきい値を上回るネットワーク利用度を決定する。しかしながら、
図10の図示されたシナリオでは、STA106aが、STA106bの前に送信機会を取得する。これにより、STA106aがデータ1050を送信するそれの送信機会の利用を終えるまで、STA106bは送信することを抑制され得る。STA106bは、次いで、送信要求メッセージ(request-to-send)1055を送信することによって送信機会を取得し、たとえば、アクセスポイントから、送信可メッセージ(clear-to-send)1060を受信する。STA106bは、次いで、時間T
10、T
11、およびT
12において受信されたデータメッセージに対応するデータを、ワイヤレス媒体の複数の別個のチャネル上で並行して送信することが可能になる。これはメッセージ1065によって示されている。
【0098】
[00111] STA106bは、STA106aよりも高いワイヤレス利用度(wireless utilization)とデータのより効率的な送信とを実現する。たとえば、STA106aは、時間T
10、T
11、およびT
12において生成されたデータメッセージの送信を完了するために時間1080を利用したが、STA106bは、同じメッセージを送信するために大幅により少ない時間1090を利用した。
【0099】
[00112]
図11は、ワイヤレスネットワーク上でデータを送信するためのプロセスの一実施形態のフローチャートである。一実施形態では、プロセス1100は、
図2に示されたワイヤレスデバイス202によって実装され得る。ブロック1105において、ネットワーク接続上での送信のためのキューに複数のメッセージを記憶する。一実施形態では、複数のメッセージは、ソースと宛先との間の1つのネットワーク会話または通信フローのためのものであり得る。ネットワーク会話は、2つのエンティティ間のネットワークメッセージの交換を相関させ得る。たとえば、複数のメッセージは、同じTCP接続上での送信のためにキューイングされ得、TCP接続は通信フローまたはネットワーク会話を識別する。別の例では、複数のメッセージは、同じ宛先サービスアクセスポイント(SAP:service access point)およびソースサービスアクセスポイント(source service access)を共有し得る。この例では、複数のメッセージは、UDPプロトコルを使用する送信のためにキューイングされ得、ソースSAPおよび宛先SAPは、UDPプロトコル識別子とともに、ソースSAPと宛先SAPとの間の通信フローまたは「会話(conversation)」を識別する。
【0100】
[00113] 他の実施形態では、送信のためにキューイングされる複数のメッセージは、ソースと宛先との間の異なるネットワーク通信フロー、または異なるネットワーク会話のためのものであり得る。たとえば、複数のメッセージの第1の部分は、第1のネットワーク通信フローまたは会話上での送信のためのものであり得、複数のメッセージの第2の部分は、第2のネットワーク通信フローまたは会話上での送信のためのものであり得る。一実施形態では、第1のネットワーク通信フローおよび第2のネットワーク通信フローは、第1のTCP接続および第2のTCP接続、または(たとえば、UDPプロトコルを使用するときの)ソースおよび宛先のアドレスおよびサービスアクセスポイントの第1および第2の組合せに対応し得る。
【0101】
[00114] ブロック1110において、マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定する。一実施形態では、マルチチャネル媒体は、並列に、または実質的に同時にn個のチャネル上でのデータの送信をサポートし得る。一実施形態では、ブロック1110は、チャネルの数nを、送信のためにキューに記憶されたメッセージの数mと比較し得る。一実施形態では、ブロック1110は、チャネルの数nを、キューに記憶されたメッセージの数に対応する通信フローまたは会話の数cと比較し得る。一実施形態では、通信フローは、ソースおよび宛先のIPアドレスと、ソースおよび宛先のサービスアクセスポイント(SAP:service access point)とによって識別される、個々のTCP接続に対応し得る。一実施形態では、単一の通信フローまたは会話が、プロトコル識別子と、ソースおよび宛先のSAPとに対応し得る。
【0102】
[00115] 一実施形態では、ワイヤレス利用度を決定することは、mまたはcを所定のしきい値と比較することを備え得る。たとえば、一実施形態では、所定のしきい値は、ワイヤレス媒体によってサポートされる同時送信チャネルの数nに基づき得る。いくつかの実装形態では、所定のしきい値は同時送信チャネルの最大数nに等しくなり得る。一実施形態では、所定のしきい値はnよりも小さい。たとえば、n=3である場合、所定のしきい値は3、または2であり得る。
【0103】
[00116] ブロック1115は、決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、キューに記憶されたメッセージの各々の送信を遅延させるべきかどうかを決定する。一実施形態では、キュー中のメッセージの数、あるいはキュー中のメッセージに対応する通信フローまたは会話の数が所定のしきい値を上回る場合、ワイヤレス媒体上での送信が開始され得る。メッセージの数あるいは通信フローまたは会話の数が所定のしきい値を下回る場合、キューに記憶されたメッセージの各々の送信は遅延され得る。
【0104】
[00117] 一実施形態では、所定のしきい値は、ワイヤレス媒体によってサポートされるデータチャネルの最大数に基づき得る。たとえば、一実施形態では、しきい値は、マルチチャネル媒体によってサポートされるデータチャネルの数の100パーセントであり得る。たとえば、3つの送信チャネルをサポートする実施形態では、送信が開始される前に、ソースと宛先との間の3つの異なるネットワーク通信フローまたは会話に対応する少なくとも3つのメッセージまたは3つのメッセージがキューイングされ得る。別の実施形態では、しきい値はチャネルの数の100%よりも小さくなり得る。たとえば、それはチャネルの少なくとも50パーセントに対応し得る。
【0105】
[00118]
図12Aは、ワイヤレスネットワーク上でデータを送信するためのプロセスの一実施形態のフローチャートである。一実施形態では、プロセス1200は、
図2に示されたワイヤレスデバイス202によって実装され得る。ブロック1205において、マルチチャネルワイヤレス媒体上での送信のためのメッセージを受信する。一実施形態では、ブロック1205は、送信を待っているメッセージのキュー上にメッセージを挿入することを含み得る。ブロック1206において、通信チャネル状態を決定する。一実施形態では、通信チャネル状態は通信チャネルのライフサイクル状態を示し得る。たとえば、通信チャネル状態は、接続が接続中であるのか、確立されているのか、または切断中であるのかを示し得る。別の実施形態では、通信チャネル状態はTCP輻輳ウィンドウのサイズを示し得る。たとえば、通信チャネル状態は、TCP接続が、輻輳ウィンドウがスロースタートしきい値を下回るかまたはそれに等しいスロースタート状態にあるかどうかを、あるいは、TCP接続が、輻輳ウィンドウがスロースタートしきい値を上回り得るフルスループットモードにあるかどうかを示し得る。
【0106】
[00119] 一実施形態では、通信チャネル状態は、ある時間期間中の通信チャネル上の送信レートまたは受信レートに基づいて推論され得る。通信チャネル上の送信レートまたは受信レートが所定のしきい値を上回る場合、通信チャネルがスロースタート(slow-start)またはランプアップ(ramp up)モードにないことが推論され得る。一実施形態では、通信チャネル上の送信レートまたは受信レートが所定のしきい値を下回る場合、通信チャネルがスロースタートまたはランプアップモード(ramp-up mode)にあることが推論され得る。
【0107】
[00120] 一実施形態では、通信チャネル状態は、通信チャネル上での送信のためにキューイングされるメッセージの数を示し得る。たとえば、特定のノードまたはSTAへの送信のためにキューイングされるメッセージの最大数が通信チャネル状態中に含まれ得る。
【0108】
[00121] 決定ブロック1207において通信状態が遅延基準(delay criteria)を満たさない場合、ブロック1208においてメッセージを送信する。一実施形態では、遅延基準は、TCP接続がスロー状態にあるのかランプアップ段階にあるのかを含み得る。接続がランプアップ段階にある場合、接続上でのメッセージの送信を遅延させることは望ましくないことがある。TCP接続のランプアップまたはスロースタート段階中にメッセージを遅延させると、TCPが接続の性質に関して不正確な決定を行うことになり、スループットおよび性能が低減し得る。一実施形態では、遅延基準は、通信チャネル上での、あるいは特定のSTAまたはノードへの送信のためにキューイングされたメッセージの数が、遅延され得るメッセージの最大数を超えるかどうかを含み得る。一実施形態では、キューイングされたメッセージの数が最大値を上回る場合、通信チャネル状態は遅延基準を満たさないことがあり、ブロック1208において、送信のためにキューイングされたメッセージを送信し得る。
【0109】
[00122] 通信状態が遅延基準を満たす場合、ブロック1210においてメッセージのタイプを決定する。一実施形態では、メッセージのタイプは、メッセージの1つまたは複数の特性を示し得る。たとえば、メッセージのタイプは、そのメッセージを送るネットワークアプリケーションのタイプを示し得る。ネットワークアプリケーションのタイプは、メッセージの送信の遅延に対する感度を示し得る。たとえば、メッセージが対話型ネットワークアプリケーションによって送られた場合、メッセージのタイプは、メッセージが遅延に対して敏感であることを示し得る。メッセージがストリーミングアプリケーションによって送られた場合、メッセージのタイプは、そのメッセージが、対話型アプリケーションによって送られたメッセージよりも遅延に対して敏感でないことを示し得る。一実施形態では、メッセージのタイプは、遅延に対する感度を直接示し得、必ずしもネットワークアプリケーションを識別するとは限らない。一実施形態では、メッセージのタイプは、そのメッセージを送るネットワークアプリケーションによって許容される最大遅延を示し得る。この実施形態では、対話型ネットワークアプリケーションが、ワイヤレス媒体利用度を改善するために意図的にもたらされた遅延を許容することができない場合、それは0の最大遅延を示し得る。一実施形態では、メッセージタイプはメッセージの長さを示し得る。
【0110】
[00123] いくつかの実施形態では、メッセージタイプは、上記で説明した情報のうちの1つ、一部または全部を示し得ることに留意されたい。たとえば、一実施形態では、メッセージタイプは、メッセージの長さと、メッセージの遅延に対する感度と、メッセージの最大待ち時間と、メッセージを生成するネットワークアプリケーションとを示し得る。
【0111】
[00124] メッセージのタイプがどのように決定されるかは、実施形態によって異なり得る。たとえば、いくつかの実施形態では、メッセージのタイプは、
図8および
図9に示されたスケジューラ811または911など、メッセージスケジューラにネットワークアプリケーションがメッセージを送るときに示され得る。一実施形態では、ネットワークアプリケーションは、スケジューラにメッセージを送るときにメッセージのタイプを明示的に指定し得る。一実施形態では、メッセージのタイプはメッセージの最大遅延持続時間を示し得る。
【0112】
[00125] 代替的に、メッセージタイプは、メッセージに基づいて決定され得る。たとえば、メッセージのタイプを決定するためにメッセージコンテンツが検査され得る。一実施形態では、メッセージのデータ部分を越えて調べ、メッセージの1つまたは複数のプロトコルヘッダを分析するために、ディープパケット検査が使用され得る。一実施形態では、メッセージのタイプはプロトコルヘッダに基づき得る。
【0113】
[00126] 一実施形態では、ブロック1210のメッセージはネットワークアプリケーションによって送られる。一実施形態では、メッセージタイプは、メッセージを送ったネットワークアプリケーションから受信されたメッセージのパターンに基づき得る。たとえば、送られたメッセージのタイプを決定するために、中央または平均または最大メッセージ長、メッセージ間の経過時間、時間期間内に送られたメッセージの数、メッセージとともに送られたプロトコルヘッダなど、ネットワークアプリケーションによって生成された1つまたは複数のメッセージの特性が使用され得る。
【0114】
[00127] 一実施形態では、ネットワークアプリケーションによって送られた一連のメッセージからのメッセージ長の測定値がしきい値を下回る場合、メッセージは第1のタイプのメッセージであると決定され得る。メッセージ長の測定値が所定のしきい値を上回る場合、メッセージは第2のタイプのメッセージであると決定され得る。一実施形態では、第1のタイプのメッセージは対話型メッセージであり得るが、第2のタイプのメッセージはストリーミングメッセージであり得る。一実施形態では、対話型メッセージは、ストリーミングメッセージよりも遅延に対して敏感であると決定され得る。
【0115】
[00128] ブロック1215は、メッセージタイプが遅延基準を満たすかどうかを決定する。たとえば、一実施形態では、対話型アプリケーションがメッセージを生成したことを示すメッセージタイプは、遅延基準を満たさないことがある。一実施形態では、ストリーミングアプリケーションがメッセージを生成したことを示すメッセージタイプは、遅延基準を満たし得る。一実施形態では、遅延基準は、長さが所定の最大値よりも小さいメッセージのみが遅延され得ることを規定し得る。したがって、最大長を超えるメッセージは、遅延基準を満たさないメッセージタイプを有し得る。一実施形態では、遅延基準は、上記で説明したメッセージタイプによって与えられる1つまたは複数の指示の考慮事項を含み得る。たとえば、遅延基準はまた、同じくストリーミングアプリケーションによって生成された、最大メッセージサイズを下回るメッセージを含み得る。決定ブロック1215においてメッセージタイプが遅延基準を満たさない場合、ブロック1220においてメッセージを送信する。
【0116】
[00129] メッセージを送信することは、できるだけ早く、またはワイヤレス媒体上の第1の送信機会において送信され得るメッセージのキュー上に、メッセージを示すデータを挿入することを含み得る。一実施形態では、メッセージを送信することはまた、遅延されるかまたはさもなければ送信を待っているメッセージのキューからメッセージを削除することを含み得る。
【0117】
[00130] メッセージタイプが遅延を可能にする場合、ブロック1225において、マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定する。ブロック1230において、決定された利用度がしきい値を上回る場合、ブロック1235においてメッセージを送信する。さもなければ、ブロック1240において、メッセージの送信を遅延させる。一実施形態では、メッセージの送信を遅延させることは、メッセージキュー上にメッセージを入れることを含み得る。
【0118】
[00131] ブロック1235においてメッセージを送信することはまた、他のメッセージを送信することを含み得る。たとえば、第1のメッセージがプロセス1200によって処理され、ブロック1240によって遅延され得る。その後に、第2のメッセージがプロセス1200によって処理され得る。ブロック1225においてワイヤレス媒体利用度を決定するとき、それは第2のメッセージに基づき得る。ブロック1225によって決定される利用度はまた、遅延された第1のメッセージに基づき得る。利用度が利用しきい値を上回る場合、ブロック1235において第1のメッセージを送信し得、次いで、ブロック1235において第2のメッセージを送信し得る。一実施形態では、第1のメッセージおよび第2のメッセージは、ワイヤレス媒体の2つのデータチャネル上で実質的に同時に送信され得る。
【0119】
[00132]
図12Bは、ワイヤレスネットワーク上でデータを送信するためのプロセスの一実施形態のフローチャートである。一実施形態では、プロセス1250は、
図2に示されたワイヤレスデバイス202によって実装され得る。一実施形態では、プロセス1250は、プロセス1200のブロック1240において遅延されたメッセージを処理し得る。ブロック1260において、遅延されたメッセージを識別する。一実施形態では、遅延されたメッセージは、遅延されたメッセージのキューを検査することによって識別され得る。ブロック1265において、メッセージの経過待ち時間を決定する。一実施形態では、経過待ち時間は、遅延されたメッセージがプロセス1200のブロック1240によって初めに遅延されたときから、ブロック1265が実行される時間までに測定された持続時間であり得る。決定ブロック1270は、メッセージの経過待ち時間と最大メッセージ遅延時間とに基づいて、メッセージがさらに遅延されるべきであるかどうかを決定する。一実施形態では、ブロック1270においてメッセージの経過待ち時間が最大遅延時間を上回る場合、ブロック1275においてメッセージを送信する。一実施形態では、メッセージの経過待ち時間が最大待ち時間の所定のしきい値間隔内にある場合、ブロック1275においてメッセージを送信する。最大メッセージ遅延時間はメッセージごとに固有であり得、ネットワークアプリケーションは、ブロック1205において受信されたメッセージ、またはブロック1210において決定されたメッセージのタイプを送る。たとえば、対話型アプリケーションは、ストリーミングアプリケーションよりも短い最大遅延時間を有し得る。代替的に、メッセージのタイプは最大遅延時間を直接示し得る。いくつかの実施形態は、すべてのメッセージまたはパケットに適用される「グローバル(global)」最大遅延時間をも含み得る。これらの実施形態では、メッセージの経過待ち時間が、そのメッセージを生成したネットワークアプリケーションによって指定された最大待ち時間よりも低い場合でも、「グローバル」最大遅延時間よりも大きい経過待ち時間をもつメッセージはブロック1275において送信され得る。グローバル最大遅延時間は、ワイヤレス媒体の状態に基づいて動的に更新され得る。いくつかの実施形態では、グローバル最大遅延時間は、アクセスポイントから、またはワイヤレスネットワーク上の別のノードから受信され得る。
【0120】
[00133] 一実施形態では、最大遅延時間はアクセスポイントから受信され得る。アクセスポイントは、メッセージを送信するアプリケーションサーバから最大遅延時間情報を受信し得る。たとえば、アプリケーションサーバは、アクセスポイントによって復号され得るメッセージヘッダ中でメッセージを送信し得る。そのメッセージは、サーバによって送信されるパケットにどのくらいの遅延が許容できるかを示し得る。
【0121】
[00134] 一実施形態では、最大遅延時間は、メッセージを生成したネットワークアプリケーションに基づき得る。たとえば、最大遅延時間はネットワークアプリケーションによって示され得る。代替的に、最大遅延時間はメッセージのタイプに基づいて示され得る。メッセージがプロセス1200のブロック1240において遅延されるとき、メッセージを示すデータとともに、最大遅延時間の指示がキュー中に記録され得る。プロセス1250は、キューに基づいて最大遅延時間を決定し得る。
【0122】
[00135] 一実施形態では、ブロック1275においてメッセージを送信することは、できるだけ早く送信されるべきメッセージのキューにメッセージを追加することを含み得る。ブロック1275においてメッセージを送信することはまた、遅延されたメッセージを記憶しているキューからメッセージを削除することを含み得る。
【0123】
[00136] ブロック1280は、処理されるべきさらに遅延されるメッセージがあるかどうかを決定する。一実施形態では、ブロック1280は、遅延されたメッセージのキューにわたって反復することによって実行され得る。プロセス1250の現在の呼出し中にキュー中のすべてのメッセージが処理された場合、ブロック1280は、それ以上処理すべきメッセージがないと決定し得る。一実施形態では、プロセス1250の現在の呼出し中にキューが未処理のメッセージを含む場合、プロセス1250はブロック1260に戻り、そこで次の遅延されたメッセージを識別する。
【0124】
[00137]
図13は、ワイヤレス通信システム100内で採用され得る例示的なデバイス1350の機能ブロック図である。デバイス1350は、ネットワーク上での送信のためのキューに複数のメッセージを記憶するための手段1355を含む。一実施形態では、手段1355は、ブロック1105または1205に関して上記で説明した機能のうちの1つまたは複数を実行するように構成され得る。一実施形態では、ネットワーク上での送信のためのキューに複数のメッセージを記憶するための手段は、
図2のプロセッサ204などの、プロセッサを含み得る。手段1355は、信号発生器、トランシーバ、デコーダ、あるいは、(1つまたは複数の)ハードウェアおよび/またはソフトウェア構成要素、回路、および/または(1つまたは複数の)モジュールの組合せのうちの1つまたは複数をも含み得る。
【0125】
[00138] デバイス1350は、マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定するための手段1360をさらに含む。一実施形態では、手段1360は、ブロック1110または1225に関して上記で説明した機能のうちの1つまたは複数を実行するように構成され得る。マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定するための手段1360は、
図2のプロセッサ204など、プロセッサを含み得る。手段1360は、信号発生器、トランシーバ、デコーダ、あるいは、(1つまたは複数の)ハードウェアおよび/またはソフトウェア構成要素、回路、および/または(1つまたは複数の)モジュールの組合せのうちの1つまたは複数をも含み得る。
【0126】
[00139] デバイス1350は、決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、キューに記憶されたメッセージの各々の送信を遅延させることを決定するための手段1365をさらに含む。一実施形態では、手段1365は、ブロック1115または1230および1240に関して上記で説明した機能のうちの1つまたは複数を実行するように構成され得る。一実施形態では、決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、キューに記憶されたメッセージの各々の送信を遅延させることを決定するための手段は、
図2のプロセッサ204など、プロセッサであり得る。手段1365は、信号発生器、トランシーバ、デコーダ、あるいは、(1つまたは複数の)ハードウェアおよび/またはソフトウェア構成要素、回路、および/または(1つまたは複数の)モジュールの組合せのうちの1つまたは複数をも含み得る。
【0127】
[00140] 本明細書で使用する「決定(determining)」という用語は、多種多様なアクションを包含する。たとえば、「決定」は、計算、算出、処理、導出、調査、探索(たとえば、テーブル、データベースまたは別のデータ構造での探索)、確認などを含み得る。また、「決定」は、受信(たとえば、情報を受信すること)、アクセス(たとえば、メモリ中のデータにアクセスすること)などを含み得る。また、「決定」は、解決、選択、選定、確立などを含み得る。さらに、本明細書で使用する「チャネル幅(channel width)」は、いくつかの態様では帯域幅を包含することがあるか、または帯域幅と呼ばれることもある。
【0128】
[00141] 本明細書で使用する、項目のリスト「のうちの少なくとも1つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。一例として、「a、b、またはcのうちの少なくとも1つ」は、a、b、c、a−b、a−c、b−c、およびa−b−cを包含するものとする。
【0129】
[00142] 上記で説明した方法の様々な動作は、(1つまたは複数の)様々なハードウェアおよび/またはソフトウェア構成要素、回路、および/または(1つまたは複数の)モジュールなど、それらの動作を実行することが可能な任意の好適な手段によって実行され得る。概して、図に示されているどの動作も、その動作を実行することが可能な対応する機能的手段によって実行され得る。
【0130】
[00143] 本開示に関連して説明した様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ信号(FPGA)または他のプログラマブル論理デバイス(PLD)、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明した機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の市販のプロセッサ、コントローラ、マイクロコントローラまたは状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。
【0131】
[00144] 1つまたは複数の態様では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびblu−ray(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。したがって、いくつかの態様では、コンピュータ可読媒体は非一時的コンピュータ可読媒体(non-transitory computer readable medium)(たとえば、有形媒体(tangible media))を備え得る。さらに、いくつかの態様では、コンピュータ可読媒体は一時的コンピュータ可読媒体(たとえば、信号)を備え得る。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【0132】
[00145] 本明細書で開示する方法は、説明した方法を達成するための1つまたは複数のステップまたはアクションを備える。本方法のステップおよび/またはアクションは、特許請求の範囲から逸脱することなく互いに交換され得る。言い換えれば、ステップまたはアクションの特定の順序が指定されない限り、特定のステップおよび/またはアクションの順序および/または使用は、特許請求の範囲から逸脱することなく変更され得る。
【0133】
[00146] 説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は1つまたは複数の命令としてコンピュータ可読媒体上に記憶され得る。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)、およびBlu−ray(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。
【0134】
[00147] したがって、いくつかの態様は、本明細書で提示する動作を実行するためのコンピュータプログラム製品を備え得る。たとえば、そのようなコンピュータプログラム製品は、本明細書で説明した動作を実行するように1つまたは複数のプロセッサによって実行可能である命令を記憶した(および/または符号化した)コンピュータ可読媒体を備え得る。いくつかの態様では、コンピュータプログラム製品はパッケージング材料を含み得る。
【0135】
[00148] ソフトウェアまたは命令はまた、伝送媒体を介して送信され得る。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、伝送媒体の定義に含まれる。
【0136】
[00149] さらに、本明細書で説明した方法および技法を実行するためのモジュールおよび/または他の適切な手段は、適用可能な場合にユーザ端末および/または基地局によってダウンロードされ、および/または他の方法で取得され得ることを諒解されたい。たとえば、そのようなデバイスは、本明細書で説明した方法を実行するための手段の転送を可能にするためにサーバに結合され得る。代替的に、本明細書で説明した様々な方法は、ユーザ端末および/または基地局が記憶手段をデバイスに結合するかまたは与えると様々な方法を取得することができるように、記憶手段(たとえば、RAM、ROM、コンパクトディスク(CD)またはフロッピーディスクなどの物理記憶媒体など)によって提供され得る。その上、本明細書で説明した方法および技法をデバイスに提供するための任意の他の好適な技法が利用され得る。
【0137】
[00150] 特許請求の範囲は、上記で示した厳密な構成および構成要素に限定されないことを理解されたい。上記で説明した方法および装置の構成、動作および詳細において、特許請求の範囲から逸脱することなく、様々な改変、変更および変形が行われ得る。
【0138】
[00151] 上記は本開示の態様を対象とするが、本開示の他の態様およびさらなる態様は、それの基本的範囲から逸脱することなく考案され得、それの範囲は以下の特許請求の範囲によって決定される。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
複数のチャネルを同時に送信することが可能なワイヤレス媒体利用度を管理する方法であって、
前記ワイヤレス媒体上での送信のためのキューに複数のメッセージを記憶することと、
マルチチャネル媒体上で第1のメッセージを送信するためのワイヤレス媒体利用度を決定することと、
前記決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、前記キューに記憶された前記メッセージの各々の送信を遅延させることを決定することと
を備える、方法。
[C2]
前記第1のメッセージのタイプを決定することと、
前記タイプに少なくとも部分的に基づいて、前記第1のメッセージの前記送信を遅延させるべきかどうかを決定することと
をさらに備える、C1に記載の方法。
[C3]
ネットワーク接続の接続状態を決定することと、
前記接続状態に少なくとも部分的に基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定することと
をさらに備える、C1に記載の方法。
[C4]
前記接続状態は、前記ネットワーク接続がランプアップモードにあるかどうかを示す、C3に記載の方法。
[C5]
送信を待っているメッセージの数が所定のしきい値を上回る場合、前記第1のメッセージが送信される、C1に記載の方法。
[C6]
前記第1のメッセージの送信を遅延させることと、
第2のネットワーク接続上で送信されるべき第2のメッセージを受信することと、
前記第2のメッセージを受信したことに基づいて前記第1のメッセージを送信することと、
前記第1のメッセージと少なくとも部分的に並行して前記第2のメッセージを送信することと
をさらに備える、C1に記載の方法。
[C7]
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、C2に記載の方法。
[C8]
前記第1のメッセージの前記タイプが前記第1のメッセージ中のデータによって決定される、C2に記載の方法。
[C9]
前記第1のメッセージの前記タイプが、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて決定される、C2に記載の方法。
[C10]
前記第1のメッセージの前記タイプが前記第1のメッセージのサービスアクセスポイントによって決定される、C2に記載の方法。
[C11]
前記第1のメッセージの前記タイプは、前記第1のメッセージの送信が遅延され得る最大時間を示す、C2に記載の方法。
[C12]
前記第1のメッセージの送信がせいぜい最大時間期間だけ遅延される、C1に記載の方法。
[C13]
複数のチャネルを同時に送信することが可能なワイヤレス媒体利用度を高めるための装置であって、
前記ワイヤレス媒体上での送信のためのキューに複数のメッセージを記憶することと、
マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定することと、
前記決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、前記キューに記憶された前記メッセージの各々の送信を遅延させることを決定することと
を行うように構成されたプロセッサ
を備える、装置。
[C14]
前記プロセッサが、
前記第1のメッセージの前記タイプを決定し、前記タイプに基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定する
ようにさらに構成された、C13に記載の装置。
[C15]
前記プロセッサが、前記ネットワーク接続の接続状態を決定し、前記接続状態に少なくとも部分的に基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定するようにさらに構成された、C13に記載の装置。
[C16]
前記接続状態は、前記ネットワーク接続がランプアップモードにあるかどうかを示す、C15に記載の装置。
[C17]
送信を待っているメッセージの数が所定のしきい値を上回る場合、前記第1のメッセージを送信するように構成された送信機をさらに備える、C13に記載の装置。
[C18]
前記プロセッサが、前記第1のメッセージの送信を遅延させるようにさらに構成され、
第2のネットワーク接続上で送信されるべき第2のメッセージを受信するように構成された受信機と、
前記第2のメッセージを受信したことに基づいて前記第1のメッセージを送信し、前記第1のメッセージと少なくとも部分的に並行して前記第2のメッセージを送信するように構成された送信機と
をさらに備える、C13に記載の装置。
[C19]
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、C14に記載の装置。
[C20]
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、C14に記載の装置。
[C21]
前記第1のメッセージの前記タイプは、前記第1のメッセージの送信が遅延され得る最大時間を示す、C14に記載の装置。
[C22]
前記第1のメッセージの前記タイプが前記第1のメッセージ中のデータによって決定される、C14に記載の装置。
[C23]
前記プロセッサが、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて前記第1のメッセージの前記タイプを決定するようにさらに構成された、C14に記載の装置。
[C24]
前記プロセッサが、前記第1のメッセージの送信をせいぜい最大時間期間だけ遅延させるようにさらに構成された、C14に記載の装置。
[C25]
ワイヤレス媒体の利用度を高めるための装置であって、
前記ワイヤレス媒体上での送信のためのキューに複数のメッセージを記憶するための手段と、
マルチチャネル媒体上でメッセージを送信するためのワイヤレス媒体利用度を決定するための手段と、
前記決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、前記キューに記憶された前記メッセージの各々の送信を遅延させることを決定するための手段と
を備える、装置。
[C26]
前記第1のメッセージのタイプを決定するための手段と、
前記タイプに基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定するための手段と
をさらに備える、C25に記載の装置。
[C27]
前記ネットワーク接続の接続状態を決定するための手段と、
前記接続状態に少なくとも部分的に基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定するための手段と
をさらに備える、C25に記載の装置。
[C28]
前記接続状態は、前記ネットワーク接続がランプアップモードにあるかどうかを示す、C27に記載の装置。
[C29]
送信を待っているメッセージの数が所定のしきい値を上回る場合、前記第1のメッセージを送信するための手段をさらに備える、C25に記載の装置。
[C30]
前記第1のメッセージの送信を遅延させるための手段と、
第2のネットワーク接続上で送信されるべき第2のメッセージを受信するための手段と、
前記第2のメッセージを受信したことに基づいて前記第1のメッセージを送信するための手段と、
前記第1のメッセージと少なくとも部分的に並行して前記第2のメッセージを送信するための手段と
をさらに備える、C25に記載の装置。
[C31]
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、C26に記載の装置。
[C32]
前記第1のメッセージ中のデータによって前記第1のメッセージの前記タイプを決定するための手段をさらに備える、C26に記載の装置。
[C33]
前記第1のメッセージの前記タイプは、前記第1のメッセージの送信が遅延され得る最大時間を示す、C26に記載の装置。
[C34]
ネットワーク接続上での複数のメッセージの到着のパターンに基づいて前記第1のメッセージの前記タイプを決定するための手段をさらに備える、C26に記載の装置。
[C35]
前記第1のメッセージの送信を遅延させるための前記手段が、送信をせいぜい最大時間期間の間遅延させる、C25に記載の装置。
[C36]
実行されたとき、複数のチャネルを同時に送信することが可能なワイヤレス媒体利用度を管理する方法をプロセッサに実行させる命令を備える非一時的コンピュータ可読媒体であって、前記方法が、
前記ワイヤレス媒体上での送信のためのキューに複数のメッセージを記憶することと、
マルチチャネル媒体上で第1のメッセージを送信するためのワイヤレス媒体利用度を決定することと、
前記決定されたワイヤレス媒体利用度に少なくとも部分的に基づいて、前記キューに記憶された前記メッセージの各々の送信を遅延させることを決定することと
を備える、非一時的コンピュータ可読媒体。
[C37]
前記プロセッサによって実行される前記方法が、
前記第1のメッセージのタイプを決定することと、
前記タイプに少なくとも部分的に基づいて、前記第1のメッセージの前記送信を遅延させるべきかどうかを決定することと
をさらに備える、C36に記載の非一時的コンピュータ可読媒体。
[C38]
前記プロセッサによって実行される前記方法が、
ネットワーク接続の接続状態を決定することと、
前記接続状態に少なくとも部分的に基づいて、前記第1のメッセージの送信を遅延させるべきかどうかを決定することと
をさらに備える、C36に記載の非一時的コンピュータ可読媒体。
[C39]
前記接続状態は、前記ネットワーク接続がランプアップモードにあるかどうかを示す、C36に記載の非一時的コンピュータ可読媒体。
[C40]
送信を待っているメッセージの数が所定のしきい値を上回る場合、前記第1のメッセージが送信される、C36に記載の非一時的コンピュータ可読媒体。
[C41]
前記方法が、前記第1のメッセージの送信を遅延させることと、
第2のネットワーク接続上で送信されるべき第2のメッセージを受信することと、
前記第2のメッセージを受信したことに基づいて前記第1のメッセージを送信することと、
前記第1のメッセージと少なくとも部分的に並行して前記第2のメッセージを送信することと
をさらに備える、C36に記載の非一時的コンピュータ可読媒体。
[C42]
前記第1のメッセージの前記タイプが、前記第1のメッセージを送信しているネットワークアプリケーションのタイプを示す、C37に記載の非一時的コンピュータ可読媒体。
[C43]
前記第1のメッセージの前記タイプが前記第1のメッセージ中のデータによって決定される、C37に記載の非一時的コンピュータ可読媒体。
[C44]
前記第1のメッセージの前記タイプが、ネットワーク接続上での複数のメッセージの到着のパターンに基づいて決定される、C37に記載の非一時的コンピュータ可読媒体。
[C45]
前記第1のメッセージの前記タイプが前記第1のメッセージのサービスアクセスポイントによって決定される、C37に記載の非一時的コンピュータ可読媒体。
[C46]
前記第1のメッセージの送信がせいぜい最大時間期間だけ遅延される、C36に記載の非一時的コンピュータ可読媒体。
[C47]
前記第1のメッセージの前記タイプは、前記第1のメッセージの送信が遅延され得る最大時間を示す、C37に記載の非一時的コンピュータ可読媒体。