(57)【要約】【解決手段】種々のプロトコル層にわたるデータの効率的な通信のためのシステム（１００）および種々の方法と装置が開示される。システム（１００）は、物理層プロトコル上のデータの無線リンクプロトコル（ＲＬＰ）パケットを受信する基地局（１０１）を含む。プロセッサー（４０１）は、異常終了タイマーの経過時間が異常終了期間閾値を越えるのを待つことなく、データの累積されたＲＬＰパケットがデータ量閾値を越えるとき、データの欠落したＲＬＰパケットの再送信の受信を待つことなく、再順序付けバッファ内に累積されたデータから、データの受信した順序どおりのＲＬＰパケットをネットワーク（１０５）内の上位レベルプロトコルに渡すように構成される。
2005520435.tif 000002
【特許請求の範囲】
【請求項１】
通信システムにおいて、下記を具備する方法：
データのパケットを受信する；
前記データの受信したパケットが、一連のデータパケットにおいて順序が狂って受信されるかどうか判断する；
データの欠落したパケットの再送信に対して否定応答を送信する、前記データの欠落したパケットは、データの前記一連のパケットにおいて受信されたデータの順序が狂ったパケットにもとづいて特定し、データの受信した順序が狂ったパケットを再順序付けバッファーに累積する；
前記送信の時刻からの経過時間を測定するための前記送信された否定応答に関連する異常終了タイマーを開始する；
前記異常終了タイマーの前記経過時間が異常終了期間閾値を超えるかどうかを判断する；
再順序付けバッファー内のデータパケットの累積された数をデータ量と比較する；
累積されたデータパケットの数が前記データ量閾値を越えるとき、前記異常終了タイマーの前記経過時間が前記異常終了期間閾値を越えるのを待つことなく、データの受信した順序どおりのパケットを上位のプロトコル層に渡す。
【請求項２】
前記異常終了タイマーが前記異常終了期間閾値を越えるとき、データの前記欠落したパケットを受信したと判断することをさらに具備する、請求項１に記載の方法。
【請求項３】
データの前記受信した順序どおりのパケットを前記上位レベルのプロトコルに渡すことをさらに具備する、請求項２に記載の方法。
【請求項４】
前記データ量閾値を決定することをさらに具備する、請求項１に記載の方法。
【請求項５】
前記データ量閾値の決定は、往復時間および通信データ転送速度にもとづく、請求項４に記載の方法。
【請求項６】
平均往復時間および平均通信データ転送速度に基づいて前記データ量閾値を決定することをさらに具備する、請求項５に記載の方法。
【請求項７】
通信システムにおいて、下記を具備する装置：
データのパケットを受信する受信器；
一連のデータのパケットにおいて、前記受信したデータのパケットが順序が狂って受信されるかどうかを判断するための受信データ処理装置；
データの欠落したパケットの再送信のために否定応答を送信するための送信器、データの前記欠落したパケットは、前記一連のデータのパケットにおいてデータの前記受信した順序の狂ったパケットの再送信のために否定応答を送信するための送信器；
前記送信の時刻からの経過時間を測定するための前記送信された否定応答に関連する異常終了タイマーを開始し、前記異常終了タイマーの前記経過時間が異常終了閾値を越えるかどうかを判断し、データの受信した順序の狂ったパケットを再順序づけバッファーに累積し、データの累積されたパケットをデータ量閾値と比較し、前記異常終了タイマーの前記経過時間が前記異常期間閾値を越えるのを待つことなく、データの前記累積されたパケットが前記データ量閾値を越えたとき、データの受信した順序どおりのパケットを上位のプロトコル層に渡すプロセッサー。
【請求項８】
前記プロセッサーは、前記異常終了タイマーが前記異常終了期間閾値を越えるとき、データの前記欠落したパケットを受信したと判断するように構成される、請求項７に記載の方法。
【請求項９】
前記受信したデータの順序どおりのパケットを上位レベルのプロトコルにわたすように構成される、請求項７に記載の装置。
【請求項１０】
前記プロセッサーは前記データ量閾値を決定するように構成される、請求項７に記載の装置。
【請求項１１】
前記データ量閾値の前記決定は、往復時間および通信データ転送速度に基づく、請求項１０に記載の装置。
【請求項１２】
前記プロセッサーは、平均往復時間および通信データ転送速度に基づいて前記データ量閾値を決定するように構成される、請求項１１に記載の装置。
【請求項１３】
物理層プロトコル上で無線リンクプロトコル（ＲＬＰ）パケットを受信する基地局；
前記基地局に接続され、データの受信した順序どおりのＲＬＰパケットを渡すプロセッサー；
前記基地局と通信可能に接続され、ＴＣＰ層を含む少なくとも１つのプロトコル層に従って、通報受端にデータを送るネットワーク；
前記プロセッサーは、データの受信したＲＬＰパケットがデータの一連のＲＬＰパケットにおいて順序が狂って受信されるかどうかを判断し、前記異常終了タイマーの経過時間を測定するための送信された否定応答に関連する異常終了タイマーを開始し、データの受信した順序が狂ったパケットを再順序付けバッファーに累積し、前記異常終了タイマーの前記経過時間が異常終了期間閾値を越えるかどうかを判断し、前記異常終了タイマーが前記異常終了閾値を越えるとき、データの前記欠落したＲＬＰパケットの再送信の受信を待つことなく、データの前記欠落したＲＬＰパケットを受信したものと判断し、前記バッファー内の前記累積されたデータから、データの受信した順序どおりのＲＬＰパケットを前記ネットワーク内の上位レベルプロトコルに渡し、前記累積されたデータをデータ量閾値と比較し、データの前記累積されたパケットが前記データ量閾値を越えるとき、前記異常終了タイマーの前記経過時間が前記異常期間閾値を越えるのを待つことなく、データの前記順序どおりのＲＬＰパケットを上位のプロトコル層に渡し、それによりデータの前記ＴＣＰプロトコル層パケットの再送信および前記ネットワーク内のデータトラヒックのスケーリングバックの少なくとも１つを防止するように構成される。
【請求項１４】
前記プロセッサーは、往復時間および通信データ転送速度にもとづいて前記データ量閾値を決定するように構成される、請求項１３に記載のシステム。
【請求項１５】
下記を具備する、データ通信システムに使用するプロセッサー：
データのパケットを受信する手段；
前記受信したデータのパケットが、一連のデータのパケットにおいて順序が狂って受信されるかどうか判断する手段；
データの欠落したパケットの再送信のために否定応答を送信する、前記データの欠落したパケットは、データの前記一連のパケットにおいて受信されたデータの順序が狂ったパケットにもとづいて特定し、データの受信した順序が狂ったパケットを再順序付けバッファーに累積する手段；
前記送信の時刻からの経過時間を測定するための前記送信された否定応答に関連する異常終了タイマーを開始する手段；
前記異常終了タイマーの前記経過時間が異常終了期間閾値を超えるかどうかを判断する手段；
再順序づけバッファー内の累積されたデータパケットの数をデータ量と比較する手段；
累積されたデータパケットの数が前記データ量閾値を越えるとき、前記異常終了タイマーの前記経過時間が前記異常終了期間閾値を越えるのを待つことなく、データの受信した順序どおりのパケットを上位のプロトコル層に渡す手段。
【請求項１６】
往復時間および通信データ転送速度に基づいて前記データ量閾値を決定する手段をさらに具備する、請求項１５に記載のプロセッサー。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、一般に通信の分野に関し、特に通信システムにおけるデータ通信に関する。
【背景技術】
【０００２】
通信システムにおいて、ユーザーによる不必要で過度の送信はシステム容量を低減することに加えて他のユーザーに対する干渉を引き起こす可能性がある。不必要で過度の送信は、通信システムにおけるデータの非効率な流れにより生じている可能性がある。二人のエンドユーザー間で通信されるデータは、システムを介してデータの適正な流れを保証するためにプロトコルのいくつかの層を通過してもよい。少なくとも１つの観点において、データの適正な配信は、各データパケット内のエラーをチェックし、受け入れられないエラーがデータパケットに検出されたなら、データの同一パケットの再送信を要求するシステムを介して保証される。一方のプロトコル層から他方のプロトコル層にデータを送ることは、一度にデータパケットのグループに対して実行される可能性がある。一方のプロトコル層から他方のプロトコル層にデータパケットのグループを送ることは、下位プロトコル層内のグループ内の選択されたデータパケットの再送信のプロセスが完了するまで生じないかもしれない。この結果、１つのプロトコル層における再送信プロセスは、システム内の異なるプロトコル層間でデータの流れを減速するかもしれない。さらに、上位のプロトコル層は、グループ内のすべてのデータパケットの再送信を要求するかもしれない。この結果、一方のプロトコル層から他方のプロトコル層へのデータの流れが遅いとき、通信リソースの使用は非常に非効率となる。
【０００３】
この目的ならびに他の目的のために、通信システムにおいて、データの流れを効率的に制御する方法および装置の必要性がある。
【発明の概要】
【０００４】
種々のプロトコル層にわたってデータの効率的な通信のためのシステムおよび種々の方法および装置が開示される。システムは、物理層プロトコルを介してデータの無線リンクプロトコル（ＲＬＰ）パケットを受信する基地局を含む。データの受信した順序どおりのＲＬＰパケットを一方のプロトコル層から他方のプロトコル層へ送るためのプロセッサーが基地局に含まれる。ＴＣＰプロトコル層を含む少なくとも１つのプロトコル層に従って送り先にデータを送るためにネットワークが通信可能に基地局に接続される。プロセッサーは、一連のＲＬＰデータパケットにおいて、受信したＲＬＰデータパケットが順序が狂って受信されたかどうか判断するように構成される。プロセッサーは、異常終了タイマーの経過時間を測定するために、送信された否定応答に関連する異常終了タイマーを開始し、受信したデータパケットを再順序付けバッファーに蓄積する。プロセッサーは、異常終了タイマーの経過時間が時間閾値の異常終了期間を超えるかどうかを判断する。異常終了タイマーが時間閾値の異常終了期間を超えるとき、システムは欠落したＲＬＰデータパケットを受信したと判断し、欠落したＲＬＰデータパケットの再送信を受信することを待つことなく、バッファー内の蓄積されたデータから、受信した順序どおりのＲＬＰデータパケットをより高次のレベルのプロトコルに送り、同時に蓄積されたＲＬＰデータパケットをデータ量閾値と比較し、蓄積されたＲＬＰデータパケットがデータ量閾値を越えるとき、異常終了タイマーの経過時間が時間閾値の異常終了期間を超えるのを待つことなく、受信した順序どおりのＲＬＰデータパケットを上位のプロトコル層に送る。この結果、この発明の種々の観点は、少なくとも１つのＴＣＰプロトコル層パケットデータの再送信およびネットワーク内のデータトラヒックのスケーリングバック(scaling back)を防止することを提供する。
【発明を実施するための最良の形態】
【０００５】
この発明の特徴、目的、および利点は、類似の参照文字が全体にわたってそれに相当するものとして特定する図面とともに以下に述べる詳細な記載からより明白になるであろう。
【０００６】
この発明の種々の実施の形態は、米電子通信工業会（ＴＩＡ）および他の規格団体により発行された種々の規格に開示され記載された符号分割多元接続（ＣＤＭＡ）技術に従って動作する無線通信システムに組み込んでもよい。そのような規格は、ＴＩＡ／ＥＩＡ−９５規格、ＴＩＡ／ＥＩＡ−ＩＳ−２０００規格、ＩＭＴ−２０００規格、ＵＭＴＳおよびＷＣＤＭＡ規格を含む。これらはすべて参照することによりここに組み込まれる。データの通信のためのシステムは、参照することによりここに組込まれる「ＴＩＡ／ＥＩＡ／ＩＳ−８５６  ｃｄｍａ２０００高速パケットデータ無線インターフェース仕様書」にも詳述されている。規格のコピーは、ワールドワイドウエブのアドレス、http://www.3gpp2.orgをアクセスするか、または、米国バージニア州  ２２２０１、アーリントン、ウイルソンブルバード２５００（2500 Wilson Boulevard, Arlington, VA 22201)に所在するＴＩＡの規格および技術部門に手紙を書くことにより得ることができる。参照することによりここに組み込まれる、一般にＵＭＴＳ規格として特定される規格は、650 Route des Lucioles-Sophia Antipolis, Valbonne-Franceに所在する３ＧＰＰサポートオフィスにより得ることができる。
【０００７】
概説するならば、新規で改良された方法および装置は、一方の通信プロトコル層から他方の通信プロトコル層へのデータの適正な流れを効率的に決定することによりＣＤＭＡ通信システムにおいて通信リソースの効率的な使用を提供する。ここに記載される１つ以上の典型的な実施の形態は、デジタル無線データ通信システムとの関連で述べられる。この関連内での使用は有利であるけれども、この発明の異なる実施の形態を異なる環境または構成に組み込んでもよい。一般に、ここに記載される種々のシステムは、ソフトウエア制御プロセッサー、集積回路、またはディスクリートロジックを用いて形成してもよい。アプリケーション全体にわたって参照してもよいデータ、命令、コマンド、情報、信号、記号、およびチップは、電圧、電流、電磁波、磁界、磁性粒子、光学界、または光学粒子またはそれらの任意の組合せにより有利に表される。さらに、各ブロック図に示されるブロックはハードウエアまたは方法ステップを表してもよい。
【０００８】
図１は、符号分割多元接続（ＣＤＭＡ）通信システム規格のいずれかに従って動作することができると同時にこの発明の種々の実施の形態を内蔵する通信システムの一般的なブロック図を図解する。通信システムは、音声、データまたは両方の通信のためのものであってよい。一般に、通信システム１００は、移動局１０２−１０４のような、多数の移動局間、および移動局１０２−１０４と公衆交換電話およびデータネットワーク１０５との間の通信リンクを供給する基地局１０１を含む。この発明の主たる範囲および種々の利点から逸脱することなく、図１の移動局は、データアクセス端末（ＡＴ）と呼んでもよいし、基地局をデータアクセスネットワーク（ＡＮ）と呼んでもよい。基地局１０１は、基地局コントローラーおよびベーストランシーバーシステムのような多数の構成要素を含んでいてもよい。簡単のために、そのような構成要素は示されていない。基地局１０１は他の基地局、例えば基地局１０６と通信してもよい。移動交換局（図示せず）は、通信システム１００の種々の動作観点を制御してもよく、ネットワーク１０５と、基地局１０１および１６０との間の帰路(back-haul)１９９に関連している。
【０００９】
基地局１０１は、基地局１０１から送信された順方向リンク信号を介してサービスエリア内にある各移動局と通信する。移動局１０２−１０４を対象とした順方向リンク信号を合計して順方向リンク信号１０６を形成してもよい。順方向リンク信号を受信する各移動局１０２−１０４は順方向リンク信号１０６を復号してそのユーザーを対象にした情報を抽出する。基地局１６０も基地局１６０から送信された順方向リンク信号を介してそのサービスエリア内にある移動局と通信してもよい。移動局１０２−１０４は、対応する逆方向リンクを介して基地局１０１および１６０と通信する。各逆方向リンクは、それぞれ移動局１０２−１０４のための逆方向リンク信号１０７−１０９のような逆方向リンク信号により維持される。逆方向リンク信号は１つの基地局を対象にしてもよいが、他の基地局において受信してもよい。
【００１０】
基地局１０１および１６０は、共通の移動局と同時に通信してもよい。例えば、移動局１０２は基地局１０１および１６０の近くにあってもよく、基地局１０１および１６０の両方との通信を維持することができる。順方向リンク上で、基地局１０１は順方向リンク信号１０６を送信し、基地局１６０は順方向リンク信号１６１を送信する。逆方向リンク上で、移動局１０２は、基地局１０１および１６０の両方により受信される逆方向リンク信号１０７を送信する。データのパケットを移動局１０２に送信する場合、基地局１０１および１６０の１つを選択してデータのパケットを移動局１０２に送信してもよい。逆方向リンク上で、基地局１０１と１６０は、移動局１０２からのトラヒックデータ送信を復号するように試みてもよい。逆方向リンクおよび順方向リンクのデータ転送速度および電力レベルは、基地局と移動局との間のチャネル条件に従って維持してもよい。逆方向リンクチャネル条件は順方向リンクチャネル条件と同じでなくてもよい。逆方向リンクと順方向リンクデータ転送速度と電力レベルは異なっていてもよい。当業者は、期間内に通信されたデータの量は、通信データ転送速度に従って変化することを認識する。受信器は、低いデータ転送速度より高いデータ転送速度でより多くのデータを受信してもよい。この発明の種々の観点に従って、データパケットを一方のプロトコル層から他方のプロトコル層へ渡すことを制御してもよく、受信したデータ量に基づいていてもよい。
【００１１】
図２は、受信したＣＤＭＡ信号を処理し復調するのに使用される受信器２００のブロック図を図解する。受信器２００は逆方向リンク信号および順方向リンク信号上の情報を復号するのに使用してもよい。受信した（Ｒｘ）サンプルは、ＲＡＭ２０４に記憶してもよい。受信サンプルは、無線周波数／中間周波数（ＲＦ／ＩＦ）システム２９０およびアンテナシステム２９２により発生される。ＲＦ／ＩＦシステム２９０およびアンテナシステム２９２は、複数の信号を受信するための１つ以上の構成要素および、受信ダイバーシチ利得を利用するために受信した信号のＲＦ／ＩＦ処理を含めてもよい。異なる伝播経路を介して伝播された複数の受信した信号は、共通のソースからのものであってもよい。アンテナシステム２９２はＲＦ信号を受信し、ＲＦ信号をＲＦ／ＩＦシステム２９０にわたす。ＲＦ／ＩＦシステム２９０は、任意の従来のＲＦ／ＩＦ受信器であってもよい。受信したＲＦ信号は、濾波され、ダウンコンバートされ、デジタル化され、ベースバンド周波数においてＲＸサンプルを形成する。サンプルはデマルチプレクサー（ｄｅｍｕｘ）２０２に供給される。ｄｅｍｕｘ２０２の出力はサーチャーユニット２０６およびフィンガーエレメント２０８に供給される。制御装置２１０はサーチャー装置２０６およびフィンガーエレメント２０８に供給される。結合器２１２は復号器２１４をフィンガーエレメント２０８に接続する。制御装置２１０はソフトウエアにより制御されるマイクロプロセッサーであってもよく、同じ集積回路上に位置していてもよくまたは別の集積回路上に位置していてもよい。復号器２１４における復号機能は、ターボ複合器または任意の他の適当な復号アルゴリズムに従うようにしてもよい。
【００１２】
動作中、受信したサンプルはｄｅｍｕｘ２０２に供給される。Ｄｅｍｕｘ２０２は、サンプルをサーチャーユニット２０６およびフィンガーエレメント２０８に供給する。制御装置２１０は、サーチャー装置２０６からのサーチ結果に基づいて異なる時間オフセットで、受信した信号の復調おおよび逆拡散を実行するためにフィンガーエレメント２０８を設定する。復調の結果は結合され復号器２１４に渡される。復号器２１４は、データを復号し、復号されたデータを出力する。チャネルの逆拡散は、単一のタイミング仮説において、受信したサンプルをＰＮ系列の複素共役および割り当てられたウオルシュ関数と乗算し、結果として生じたサンプルを、多くの場合、インテグレートおよびダンプアキュムレーター回路(integrate and dump accumulator circuit)（図示せず）を用いて、デジタル的に濾波する。このような技術は、技術的に一般に知られている。受信器２００は、移動局からの受信した逆方向リンク信号を処理するために基地局１０１および１０６の受信器部分に、および受信した順方向リンク信号を処理するために移動局のいずれかの受信器部分に使用してもよい。
【００１３】
図３は、逆方向リンク信号および順方向リンク信号を送信するための送信器３００のブロック図を図解する。送信のためのチャネルデータは、変調のために変調器３０１に入力される。変調は、ＱＡＭ、ＰＳＫ、またはＢＰＳＫのような一般的に知られる変調技術のいずれかに従ってもよい。データは、変調器３０１においてデータ転送速度で符号化される。データ転送速度は、データ転送速度および電力レベル選択器３０３により選択してもよい。データ転送速度選択は、受信通報受端から受信したフィードバック情報に基づいていてもよい。受信通報受端は移動局または基地局であってよい。フィードバック情報は、最大許容可能なデータ転送速度を含んでいてもよい。最大許容可能データ転送速度は、種々の一般的に知られたアルゴリズムに従って決定してもよい。最大許容可能データは、非常に多くの場合、他の考察される因子の場合、チャネル条件に基づく。従って、データ転送速度および電力レベル選択器３０３は変調器３０１においてデータ転送速度を選択する。変調器３０１の出力は、アンテナ３０４からの送信のためにブロック３０２において信号拡散動作を通って増幅される。データ転送速度および電力レベル選択器３０３はフィードバック情報に従って送信された信号の増幅レベルのための電力レベルも選択する。データ転送速度と電力レベルを組み合わせることにより受信通報受端において送信されたデータの適切な復号を可能にする。パイロット信号もブロック３０７において発生される。パイロット信号は、ブロック３０７において、適当なレベルに増幅される。パイロット信号の電力レベルは、受信通報受端におけるチャネル条件に従ってもよい。パイロット信号は、結合器３０８においてチャネル信号と結合される。結合された信号は増幅器３０９において増幅してもよく、アンテナ３０４から送信してもよい。アンテナ３０４は、アンテナアレイおよび複数入力複数出力構成を含む任意の数の組み合わせであってよい。
【００１４】
図４は、通報受端との通信リンクを維持するために受信器２００と送信器３００を組み込むためのトランシーバーシステムの一般的な図を描写する。トランシーバー４００は移動局または基地局に組み込んでもよい。プロセッサー４０１は、受信したおよび送信したデータを処理するために受信器２００および送信器３００に接続してもよい。受信器２００と送信器３００が別個に示されていても、受信器２００と送信器３００の種々の観点は共通であってよい。１つの観点において、受信器２００と送信器３００はＲＦ／ＩＦ受信および送信のために共通の局部発振器および共通のアンテナシステムを共有してもよい。送信器３００は、入力４０５に送信のためのデータを受信する。送信データ処理ブロック４０３は、送信チャネル上に送信するためのデータを作成する。受信データは復号器で復号された後、入力４０４においてプロセッサー４０１で受信される。受信データはプロセッサー内の受信データ処理ブロック４０２において処理される。受信データの処理は一般に、受信したデータのパケット内のエラーをチェックすることを含む。例えば、受信したデータのパケットが受け入れられないレベルのエラーを有するなら、受信データ処理ブロック４０２は、データのパケットの再送信を要求するための命令を送信データ処理ブロック４０３に送信する。この要求は送信チャネル上に送信される。受信したデータのパケットを記憶するために受信データ記憶装置４８０を利用してもよい。プロセッサー４０１の種々の動作は、単一のまたは複数の処理装置に集積してもよい。トランシーバー４００は他の装置に接続してもよい。トランシーバー４００は装置の集積部分であってもよい。この装置はコンピューターであってもよいしまたは、コンピューターと同様に動作する。この装置は、インターネットのようなデータネットワークに接続してもよい。基地局にトランシーバー４００を組み込んだ場合、基地局は、いくつかの接続を介してインターネットのようなネットワークに接続してもよい。
【００１５】
受信データの処理は、一般に受信したデータのパケット内のエラーをチェックすることを含む。例えば、受信したデータのパケットが受け入れられないレベルのエラーを有するなら、受信データ処理ブロック４０２は、データのパケットの再送信を要求するための命令を送信データ処理ブロック４０３に送信する。この要求は送信チャネル上に送信される。受信データ記憶装置４８０は、受信したデータのパケットを記憶するために利用してもよい。受信したデータのパケットを集めてデータのパケットのグループを形成してもよい。受信したデータのパケットのグループは、２つのエンドポイント(end points)間の通信を維持する一部として他の通信プロトコル層の上位または下位に渡してもよい。当業者は、ある期間に通信されるデータ量は通信データ転送速度に従って変化することを認識してもよい。受信器は、低いデータ転送速度より高いデータ転送速度でより多くのデータを受信してもよい。この発明の種々の観点に従って、データのパケットを１つのプロトコル層から他のプロトコル層にわたすことを制御してもよく、データ記憶装置４８０内に記憶されたデータ量にもとづいていてもよい。
【００１６】
２つのエンドポイント間のデータの流れはいくつかのプロトコル層を介して制御してもよい。２つのエンドポイント間のデータの流れを制御するためのプロトコル層５００の典型的なスタックが図５に示される。例えば、一方のエンドポイントは、ネットワーク１０５を介してインターネットに接続された情報元であってよい。他方のエンドポイントは、移動局に接続されたコンピュータまたは移動局に集積されたコンピュータのようなデータ処理装置であってよい。プロトコル層５００はいくつかの他の層を有していてもよくまたは各層はいくつかの副層を有していてもよい。簡単のためにプロトコル層の詳細なスタックは示していない。プロトコル層５００のスタックは一方のエンドポイントから他方のエンドポイントへの、データ接続におけるデータの流れに従ってもよい。最上層において、ＴＣＰ層５０１はＴＣＰパケット５０６を制御する。ＴＣＰパケット５０６はより大きなデータファイルから生成してもよい。データファイルをいくつかのＴＣＰパケット５０６に分割してもよい。データファイルは、テキストメッセージデータ、ビデオデータ、画像データまたは音声データを含んでいてもよい。ＴＣＰパケット５０６のサイズは異なる時間に異なっていてもよい。インターネットプロトコル（ＩＰ）層５０２において、ヘッダーがＴＣＰパケット５０６に付加され、データパケット５０７を生成する。ヘッダーは、データパケットを適当なアプリケーションに適切に送信するためのポート番号を特定してもよい。ポイントツーポイントプロトコル（ＰＰＰ）層５０３において、ＰＰＰヘッダーと後書き(trailer)データはデータパケット５０７に付加されデータパケット５０８を生成する。ＰＰＰデータは、情報元接続ポイントから通報受端接続ポイントにデータパケットを適切に送信するためのポイントツーポイント接続アドレスを特定してもよい。無線リンクプロトコル（ＲＬＰ）層５０４はデータパケットの再送信と複製のための機構を提供する。ＲＬＰ層５０４において、データパケット５０８はいくつかのＲＬＰパケット５０９Ａ−Ｎに分割される。ＲＬＰパケット５０９Ａ−Ｎの各々は独立して処理され、シーケンス番号が割り当てられる。シーケンス番号は、ＲＬＰパケット５０９Ａ−Ｎの中でＲＬＰデータパケットを特定するために各ＲＬＰデータパケット内のデータに付加される。１つ以上のＲＬＰパケット５０９Ａ−Ｎがデータの物理層パケットに配置される。データパケット５１０のペイロードのサイズは時間ごとに異なっていてもよい。物理層５０５は、データパケット５１０のためのチャネル構造、周波数、電力出力、変調仕様を制御する。データパケット５１０は通報受端に送信される。データパケット５１０のサイズはチャネル条件および選択された通信データ転送速度に基づいて時間毎に異なっていてもよい。
【００１７】
受信通報受端上でデータパケット５１０は受信され処理される。受信されたパケット５１０は、ＲＬＰ層５０４に伝えられる。ＲＬＰ層５０４は受信したデータパケットからＲＬＰパケット５０９Ａ−Ｎを再構成しようと試みる。ＰＰＰ層５０３およびＩＰ層５０２のような上位のプロトコル層により見られるパケットエラーレートを低減するために、ＲＬＰ層５０４は、欠落したＲＬＰパケットの再送信を要求することにより、自動再送信要求（ＡＲＱ）機構を実施する。ＲＬＰプロトコルは、パケット５０９Ａ−Ｎを再組み立てし、完全なパケット５０８を形成する。プロセスは、すべてのＲＬＰパケット５０９Ａ−Ｎを完全に受信するのに多少時間がかかるかもしれない。すべてのＲＬＰパケット５０９Ａ−Ｎを完全に送信するのに数回のデータパケット５１０の送信が必要かもしれない。ＲＬＰデータパケットが順序が狂って受信されると、ＲＬＰ層５０４は否定応答（ＮＡＫ）メッセージを送信通報受端に送信する。これに応答して、送信通報受端は、欠落したＲＬＰデータパケットを再送信する。受信データの処理は一般に受信したデータパケット内のエラーのチェックを含む。例えば、受信したデータのパケットが受け入れられないレベルのエラーを有するなら、受信データ処理ブロック４０２は、データのパケットの再送信を要求するための命令を送信データ処理ブロック４０３に送る。この要求は送信チャネル上に送信される。受信データ記憶装置４８０を用いて正しく受信したデータのパケットを記憶してもよい。正しく受信したデータのパケットを集めてデータのパケットのグループを形成してもよい。受信したデータパケットのグループは、受信され記憶装置４８０に記憶されたデータ量に基づいて２つのエンドポイント間で通信を維持する一部として他の上位の通信プロトコル層または他の下位の通信プロトコル層に渡してもよい。
【００１８】
図６を参照すると、物理層５０５における典型的なデータの流れを提供するためのメッセージフロー６００が示される。例えば、シーケンス番号「０１」乃至「０７」を有したＲＬＰパケットは、情報元から通報受端に送信される。情報元と通報受端は、それぞれ基地局と移動局または移動局と基地局であってよい。ＲＬＰ層５０４において、ＲＬＰパケット５０９Ａ−Ｎは、累積されてパケット５０８を完成する。すべてのＲＬＰパケットが受信されると、ＲＬＰパケット５０９Ａ−Ｎは上位レベルに渡される。１つ以上のＲＬＰパケットを共通のペイロードに結合して１つのデータパケット５１０で送信してもよい。典型的なメッセージフロー６００において、例えばＲＬＰパケット「０３」として特定されるＲＬＰパケットは通報受端に到着しない。障害は、情報元と通報受端との間の無線リンクの寸断を含む多くの因子によるかもしれない。通報受端がＲＬＰパケット「０４」を受信すると、ＲＬＰ層５０４は、ＲＬＰパケットが順序が狂って受信されたことを検出する。ＲＬＰ層５０４は、ＲＬＰパケット「０３」が通信において欠落したことを特定するＮＡＫメッセージを送信する。同時にＲＬＰ層はタイマーを開始する。タイマーは、ＮＡＫメッセージを送信後の経過時間をカウントする。タイマーが、欠落したＲＬＰパケット「０３」を受信する前、たとえば５００ｍＳｅｃ後に満了するなら、通報受端ＲＬＰ５０４は、欠落したパケットの再送信が失敗に終わったと推測してもよく、通報受端ＲＬＰは、次の欠落したＲＬＰパケットまで順序どおりに受信したＲＬＰパケットを上位層に送ってもよい。他に欠落したＲＬＰパケットが無ければ、ＲＬＰはすべての受信した順序どおりのパケットを送信してもよい。情報元は、ＲＬＰパケットの再送信の回数を一度だけに制限してもよい。それゆえ、そのような状況では、情報元は、通報受端で受信されることなく欠落したＲＬＰパケット「０３」を再送信したかもしれないので、別のＮＡＫメッセージを送信することは、役に立たない。紛失したＲＬＰパケット「０３」を受信すると、タイマーは終了する。正しく受信したデータのパケットを記憶装置４８０に集めてデータのパケットのグループを形成してもよい。この発明の種々の観点に従って、受信したデータのパケットのグループを、再送信プロセスの完了を待つことなく、受信して記憶装置４８０に記憶したデータ量に基づいて２つのエンドポイント間通信を維持する一部として他の通信プロトコル層の上位または下位に渡してもよい。
【００１９】
ＴＣＰ層も同様の再送信プロセスを有する。受信通報受端においてＴＣＰ層５０１がある期間期待されるＴＣＰ５０６を受信しないなら、送信情報源におけるＴＣＰ層５０１はＴＣＰパケットを再送信する。ＮＡＫメッセージを送信し、ＲＬＰ層５０４において欠落したＲＬＰデータパケットを受信することを待つプロセスは、多少時間がかかるかもしれない。この期間、ＲＬＰ層５０４は上位層へのデータの配信を遅らせる。正しく受信したＲＬＰパケットの少なくとも１つが紛失したＲＬＰパケットのシーケンス番号より高いシーケンス番号を有するなら、正しく受信されたＲＬＰパケットの配信は防止される。例えば、ＲＬＰ層５０４は欠落したＲＬＰパケットを受信するのに少なくとも５００ｍＳｅｃ待つので、正しく受信したＲＬＰパケットを渡すことは、かなりの時間量遅れるかもしれない。ＲＬＰ層５０４は通常不完全なＲＬＰパケット５０９Ａ−Ｎのセットを上位レベルに送信しない。この結果、送信情報源におけるＴＣＰ層５０１は、単一のＲＬＰパケットによりかなり大きい全体のＴＣＰパケット５０６の再送信を開始してもよい。それゆえ、通信システムにおける不必要で過度の再送信を生じ、ＴＣＰふくそう窓（ｃｗｎｄ）のサイズを低減する。ＲＬＰ層５０４における再送信プロセスは、ＴＣＰ層５０１において再送信プロセスをトリガーするのに十分な時間を取ってもよい。しかしながら、システム内のデータのフローは、単一ＲＬＰパケットの再送信のためのＲＬＰ層５０４におけるプロセスにより制限されていたかもしれない。ＴＣＰパケット５０６のサイズは、ＲＬＰパケット５０９Ａ−Ｎのサイズよりかなり大きい。ＴＣＰパケットの再送信は、すべてのレベルで大量の通信リソースを取り去る。ＴＣＰパケット５０６の再送信はまた、要求されたＴＣＰパケット５０６を完成する多数のＲＬＰパケットを送信するためにリソースを利用するために物理層５０５における通信リソースに悪影響を与える。期待されるＴＣＰパケット５０６の受信の失敗は、ネットワークふくそうによるかもしれないと判断してもよい。この結果、起こり得るネットワークふくそうを取り除くために、ＴＣＰ層５０１は、ネットワーク内のデータフローの活動を減速してもよい。この結果、他のユーザーへのデータの流れも単一ユーザーのＲＬＰ層５０４におけるプロセスの遅延により減速してもよい。
【００２０】
通信システム１００の種々の構成要素はプロトコル層５００のスタックの種々の観点を制御してもよい。例えば、ネットワーク１０５に接続された図示していないコンピューターサーバーまたはコンピューターの集合は、制御ＴＣＰ層５０１、ＩＰ層５０２、およびＰＰＰ層５０３を制御してもよい。ＲＬＰ層５０４と物理層５０５は、受信データ処理装置４０２および送信データ処理装置４０３の動作を通してプロセッサー４０１により制御されてもよい。それゆえ、プロセッサー４０１が欠落したＲＬＰパケットの再送信を処理しようと試みていると、ＴＣＰ層５０１がＴＣＰパケット５０６の再送信をできないようにするために、ＴＣＰ層５０１における動作を制御できないかもしれない。それゆえ、この発明の種々の観点に従って、記憶装置４８０に集められた正しく受信されたデータパケットは、再送信プロセスの完了またはＮＡＫタイマーの終了を待つことなく、受信され記憶装置４８０に記憶されたデータ量に基づいて２つのエンドポイント間の通信を維持する一部として他の上位のプロトコル層または他の下位のプロトコル層に渡してもよい。
【００２１】
この発明の種々の観点に従って、プロセッサー４０１は、データ記憶装置４８０に記憶されたデータ量を制御してもよく、上位のプロトコル層に渡してもよい。物理層通信は、種々のデータ転送速度で実行してもよい。選択されたデータ転送速度は、チャネル条件に依存する。高いデータ転送速度で、多数のＲＬＰパケットを短期間に移動局と基地局との間で通信してもよい。成功した再送信プロセスは、またチャネル条件に応じて完了するのに短期間かかる。再送信の必要がある場合、再送信プロセスは、欠落したＲＬＰパケットのためのＮＡＫ送信の数を制限してもよい。順方向リンクおよび逆方向リンクのチャネル条件は同じでなくてもよい。それゆえ、一方の方向における、ある期間に対して一度または二度のＮＡＫメッセージの送信は、たとえ、他方の方向にＲＬＰパケットを送信するためのチャネル条件が受け入れ可能であっても、通報受端に到着しないかもしれない。他の場合に、ＮＡＫメッセージの送信のためのチャネル条件は受け入れ可能であるかもしれないが、ＲＬＰデータパケットを受信するチャネル条件は受け入れ可能でないかもしれない。
【００２２】
この発明の種々の観点に従って、ＲＬＰパケットの再送信プロセスは、集められてデータ記憶装置４８０に記憶されたデータ量に基づいて、成功か失敗かを結論づけてもよい。それゆえ、この発明の種々の観点に従って、プロトコル層から他のプロトコル層にデータを渡すことは、再送信プロセスがチャネル条件に対して結論を出すことを可能にしながら過度で不必要な待ち時間を防止する方法で制御してもよい。集められたデータを上位のプロトコル層に渡す前に記憶装置に集められたデータ量は、種々のプロトコル層を通過する情報の適正な流れに必要な最小必要量に設定してもよい。集められたデータを上位のプロトコル層に渡す前に大量のデータが集められたなら、システムはＲＬＰ層より上の層によるより大きなデータブロックの再送信を要求してもよい。上位層における再送信は無駄かもしれない。なぜなら、ＲＬＰ層５０４において、上位層データの大部分は受信された可能性があり、ＲＬＰパケットの欠落に対応した小片のみが欠落しているからである。集められたデータを上位のプロトコル層に渡す前に集められたデータ量が過度に小さく設定されると、種々のプロトコル層を介したデータの適正な流れは、あまりに多くのデータパケットが欠落することにより生じないかもしれない。プロセッサー４０１は、集められたデータを上位レベルに渡す前に集められたデータ量を決定するように構成される。プロセッサー４０１は、集められたデータ量をデータ量閾値と比較する。集められたデータが閾値より高ければ、正しく受信したデータ他の上位のプロトコル層または他の下位のプロトコル層に渡してもよい。
【００２３】
データ量閾値は、平均往復(round trip)時間および平均データ転送速度に基づいて決定してもよい。往復時間は、データが情報元から通報受端に送信されるのにかかる時間プラスデータが通報受端から情報元に送信されるのにかかる時間に基づいて決定される。平均往復時間を使用してもよい。データ転送速度は、情報元と通報受端との間の通信データ転送速度であってもよい。平均データ転送速度を使用してもよい。それゆえ、閾値は平均往復時間を平均データ転送速度と乗算することにより決定してもよい。
【００２４】
図７を参照すると、フローチャート７００は、この発明の種々の観点に従ってＲＬＰ層５０４でデータの処理のために組み込んでもよい種々のステップを示す。受信データ処理ブロック４０２および送信データ処理ブロック４０３を通してプロセッサー４０１は、フローチャート７００の種々のステップを実行してもよい。ステップ７０１において、受信データ処理ブロック４０２は、データの順序の狂ったＲＬＰパケットを受信することを検出してもよい。欠落したデータのＲＬＰパケットは、図６の例に示すようにＲＬＰパケット「０３」であってもよい。ステップ７０２において、送信データ処理ブロック４０３はデータの欠落したＲＬＰパケットの再送信のためにＮＡＫメッセージを送信する。同時に、ステップ７０３においてプロセッサー内の内部タイマーが異常終了タイマーを開始する。異常終了時間は、ＮＡＫメッセージを送信後経過時間量を維持するために送信されたＮＡＫメッセージに関連する。ステップ７０７において、プロセッサー４０１は、欠落したＲＬＰパケットの再送信が受信されたかどうかを決定する。ステップ７０４において、異常終了タイマーの経過時間は異常終了期間と比較され、経過時間が閾値を越えたかどうかを決定する。経過期間が閾値を越えたなら、プロセスフロー７００はステップ７０５に移動する。そうでなければ、プロセスフローはステップ７０７に続く。ステップ７０７において、プロセッサー４０１は欠落したパケットが通報受端に到着したと決定してもよい。この場合、欠落したパケットに関連する異常終了タイマーが終了し、プロセスフロー７００はステップ７０６に移動する。ステップ７０５において、プロセッサー４０１は、異常終了タイマーがステップ７０４において異常終了期間閾値を越えると欠落したパケットを受信したと判断してもよい。さらに、ステップ７１０において、正しく受信したデータの量がデータ量閾値と比較される。正しく受信したデータ量が閾値を越えるなら、プロセスフローはステップ７０５に移動し、プロセッサー４０１は、欠落したパケットを受信したものと判断してよい。正しく受信したデータ量が閾値を越えないなら、プロセスフローはステップ７０７に移動する。ステップ７０６において、受信した順序どおりのＲＬＰパケットデータは上位レベルのプロトコル層に渡される。上位のプロトコル層は、ＰＰＰプロトコル層５０３であってよい。この発明の種々の観点に従って、データ量閾値はＴＣＰ層５０１を含むすべてのプロトコル層の効率的なデータの流れに一致する方法でデータの流れを制御するために決定される。一実施の形態に従って、データ量閾値は平均往復時間および平均通信データ転送速度に基づいていてもよい。プロセッサー４０１はＴＣＰ層５０１におけるプロセスに対して直接制御しないけれども、フローチャート７００の種々のステップを組み込むことにより、ＴＣＰパケット５０６の不必要な再送信を防止してもよい。
【００２５】
当業者は、ここに開示した実施の形態に関連して記載した種々の実例となる論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウエア、コンピュータソフトウエアまたは両者の組合せとして実施してもよいことを理解するであろう。このハードウエアとソフトウエアの互換性を明瞭に説明するために、種々の実例となる部品、ブロック、モジュール、回路、およびステップが一般にそれらの機能性の観点から上に記載された。そのような機能性がハードウエアまたはソフトウエアとして実現されるかは特定のアプリケーションおよび全体のシステムに課せられた設計制約に依存する。熟達した職人は、各特定のアプリケーションに対して記載した機能性を変形した方法で実施することができるが、そのような実施の判断は、この発明の範囲を逸脱するものとして解釈されるべきでない。
【００２６】
ここに開示された実施の形態に関連して記載された種々の実例となる論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理装置、ディスクリートゲートまたはトランジスタロジック、ディスクリートハードウエアコンポーネント、またはここに記載した機能を実行するように設計されたいずれかの組合せを用いて実施または実行してもよい。汎用プロセッサは、マイクロプロセッサであってよいが、別の方法では、プロセッサは、いずれかの一般的なプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってよい。プロセッサはまた、計算装置の組合せとしても実施できる。例えば、ＤＳＰとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと協力した１つ以上のマイクロプロセッサまたはいずれかの他のそのような構成として実施してもよい。
【００２７】
ここに開示された実施の形態に関連して記載された方法またはアルゴリズムのステップは、ハードウエアにおいて、プロセッサにより実行されるソフトウエアモジュールにおいて、または両者の組合せにおいて直接具現化してもよい。ソフトウエアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、脱着可能ディスク、ＣＤ−ＲＯＭ、または技術的に知られているその他のいずれかの形態の記憶媒体に常駐してもよい。例示記憶媒体は、プロセッサに接続される。そのようなプロセッサは記憶媒体から情報を読み出し、記憶媒体に情報を書き込むことができる。別の方法では、記憶媒体は、プロセッサに集積可能である。プロセッサと記憶媒体はＡＳＩＣに存在してもよい。ＡＳＩＣはユーザ端末に存在してもよい。別の方法では、プロセッサと記憶媒体はユーザ端末内のディスクリートコンポーネントとして存在してもよい。
【００２８】
好適実施の形態の上述の記載は当業者がこの発明を製作または使用することを可能にするために提供される。これらの実施の形態に対する種々の変更は当業者には容易に明白であろう、そしてここに定義される包括的原理は発明力の使用なしに他の実施の形態に適用可能である。従って、この発明は、ここに示した実施の形態に限定されることを意図したものではなく、ここに開示した原理と新規な特徴に一致する最も広い範囲が許容されるべきである。
【図面の簡単な説明】
【００２９】
【図１】図１は、この発明の種々の実施の形態に従って動作することができる通信システムを図解する。
【図２】図２は、この発明の種々の観点に従って、あるデータ転送速度でデータのパケットを受信し、受信したデータのパケットを復号する通信システム受信器を図解する。
【図３】図３は、この発明の種々の観点に従って、スケジュールされたデータ転送速度でデータパケットを送信する通信システム送信器を図解する。
【図４】図４は、この発明の種々の実施の形態に従って動作することができるトランシーバーシステムを図解する。
【図５】図５は、通信システムにおいて、データの流れを制御するプロトコル層のスタックを図解する。
【図６】図６は、データの欠落したパケットを再送信するためのプロセスを図解する。
【図７】図７は、この発明の種々の観点に従って、通信システムにおいてデータパケットの流れを制御する種々のステップを図解する。
【図１】
2005520435.tif 000003
【図２】
2005520435.tif 000004
【図３】
2005520435.tif 000005
【図４】
2005520435.tif 000006
【図５】
2005520435.tif 000007
【図６】
2005520435.tif 000008
【図７】
2005520435.tif 000009
【国際調査報告】
2005520435.tif 000010
2005520435.tif 000011