(57)【要約】データを、フレーム毎にデータ伝送容量が異なり得るフレーム内で、データリンクを介して受信器に送信するための方法及びシステムである。フレーム内のデータ伝送容量が使用可能になると、１つ以上のプロトコルユニット内のデータが送信される。個々のプロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有する。各ブロックは固定長を有するが、但し、ペイロード部に保持されるバイト数が固定長の整数倍ではない場合には最後のブロックが、又はペイロード部のバイト数が固定長より小さい場合には唯一のブロックが、固定長より短い。個々のプロトコルユニットは、データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部も有する。受信器が前に送信されたプロトコルユニットの破損していないコピーを受信しなかったことが判定された場合に、次に使用可能なフレームのデータ伝送容量が不十分である場合には、前に送信されたプロトコルユニットは、前に送信されたプロトコルユニットのブロックから構成された２つ以上の新たなプロトコルユニット内で再送信される。
2005535172.tif 000002
【特許請求の範囲】
【請求項１】
データを、フレーム毎にデータ伝送容量が異なり得るフレーム内で、データリンクを介して受信器に送信する方法であって、各シリーズが少なくとも１つのブロックを有する少なくとも１シリーズのブロックとして送信される、暗黙的にシーケンス番号が付された複数のブロック内で前記データを送信することを含み、前記ブロックが、前記受信器が各シリーズのブロックの最初のブロックのシーケンス番号を用いて前記ブロックをシーケンス番号によって識別して失われた又は破損したブロックの再送信を個々に要求できるように決定された長さを有する、データ送信方法。
【請求項２】
前記シーケンス番号が付された１シリーズのブロックの各々が固定長を有するが、但し、シリーズの最後のブロック又はブロックを１つだけ有するシリーズの唯一のブロックは固定長より短い場合がある、請求項１記載の方法。
【請求項３】
理想的な条件下の前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値が、前記データリンクの通常動作時に該データリンクを介して１シリーズのブロックを送信するために１フレーム内で妥当な使用可能性を有する最も低いデータ伝送容量より大きくならないように、前記ブロックの番号付けに使用可能な前記シーケンス番号の総数が予め選択される、請求項２記載の方法。
【請求項４】
前記固定長が最初に、前記データリンクの通常動作時の前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値より大きくなり、且つ、前記データリンクの通常動作時に該データリンクを介して１シリーズのブロックを送信するために１フレーム内で妥当な使用可能性を有する最大データ伝送容量より小さくなるよう設定されると共に、前記データリンクの帯域幅遅延積が変動する場合には、前記固定長が、前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値又は前記データリンクを介して１シリーズのブロックを送信するために１フレーム内で使用可能な最大データ伝送容量の、所定の許容誤差内となるよう再設定される、請求項３記載の方法。
【請求項５】
１シリーズのブロックが、該１シリーズのブロックの最初のブロックのシーケンス番号を含むヘッダーと共に、プロトコルユニット内にカプセル化される、請求項２〜４のいずれか記載の方法。
【請求項６】
データを、フレーム毎にデータ伝送容量が変動し得るフレーム内で、データリンクを介して受信器に送信する方法であって、
フレーム内のデータ伝送容量が使用可能になると、１つ以上のプロトコルユニット内のデータを送信することを含み、
個々のプロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有し、各前記ブロックは固定長を有し、但し、前記データペイロード部の長さが前記固定長の整数倍ではない場合には、最後のブロック又はブロックを１つだけ有するプロトコルユニットの唯一のブロックは前記固定長より短く、
前記個々のプロトコルユニットは、前記データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部を含み、前記シーケンス番号は、前記データリンクを介して送信される全てのブロックを前記受信器がシーケンス番号によって識別できるよう選択される、
データ送信方法。
【請求項７】
理想的な条件下の前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値が、前記データリンクの通常動作時に該データリンクを介してブロックを１つだけ有するプロトコルユニットを送信するために１フレーム内で妥当な使用可能性を有する最も低いデータ伝送容量より大きくならないように、前記ブロックの番号付けに使用可能な前記シーケンス番号の総数が予め選択される、請求項６記載の方法。
【請求項８】
前記固定長が最初に、前記データリンクの通常動作時の前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値より大きくなり、且つ、前記データリンクの通常動作時に該データリンクを介してブロックを１つだけ有するプロトコルユニットを送信するために１フレーム内で妥当な使用可能性を有する最大データ伝送容量より小さくなるよう設定されると共に、前記データリンクの帯域幅遅延積が変動する場合には、前記固定長が、前記データリンクの帯域幅遅延積を前記ブロックの番号付けに使用可能な前記シーケンス番号の総数で割った値又は前記データリンクを介してブロックを１つだけ有するプロトコルユニットを送信するために１フレーム内で使用可能な最大データ伝送容量の、所定の許容誤差内となるよう再設定される、請求項７記載の方法。
【請求項９】
前記受信器が前に送信されたプロトコルユニットの破損していないコピーを受信しなかったことが判定され、且つ、次に使用可能なこれから送信されるフレーム内に十分なデータ伝送容量があることが判定された場合には、前に送信されていないデータを送信する前に、前記前に送信されたプロトコルユニットを前記次に使用可能なフレーム内で再送信する、請求項６〜８のいずれか記載の方法。
【請求項１０】
前記受信器が前に送信されたプロトコルユニットの破損していないコピーを受信しなかったことが判定され、且つ、次に使用可能なこれから送信されるフレーム内に十分なデータ伝送容量があることが判定された場合には、
前に送信されたプロトコルユニットの連続するブロック及びこれから再送信される前に送信された全ての連続するプロトコルユニットから新たなプロトコルユニットを構成し、前に送信されたプロトコルユニットの最初のブロックで開始して前に送信された１つ又は複数のプロトコルユニット順次通って進みながら、前記次に使用可能なフレームのデータ伝送容量が用いられるまで、又は固定長ではない若しくは使用可能な残りのデータ伝送容量より大きいブロックに遭遇するまで、前記新たに構成されたプロトコルユニットにブロックを追加し、
前記新たに構成されたプロトコルユニットを前記次に使用可能なフレーム内で前記データリンクを介して送信し、
前に送信された１つ又は複数のプロトコルユニットの全てのブロックが良好に再送信されるまで、フレーム内のデータ伝送容量が使用可能な場合には常に、更に新たなプロトコルユニットを同様に構成して送信し、新たに構成される各プロトコルユニットはそのデータペイロード部の最初のブロックのシーケンス番号を含むヘッダーを有する、
請求項６〜８のいずれか記載の方法。
【請求項１１】
複数のプロトコルユニットとしてセグメント化されたＩＰパケットを、フレーム毎にデータ伝送容量が変動し得るフレーム内で、データリンクを介して受信器に送信する方法であって、
フレーム内のＬバイトのデータ伝送容量が使用可能になり、これから送信されるＩＰパケットが送信キューにあり、且つ、これから再送信される任意のプロトコルユニットが再送信キューにある場合に、前記Ｌが０になるまで、
（Ｐ）前記再送信キューが空であるか否かを判定し（ブロック４０２）、
前記再送信キューが空である場合には、
（Ｑ）前記送信キューが空であるか否かを判定し（ブロック４０４）、
前記送信キューが空ではない場合には、
前記Ｌバイト又は前記ＩＰパケットの残りのバイトの少ない方を前記送信キューから待機解除し、
前記待機解除されたバイト数だけ前記Ｌを減分し（ブロック４０６）、
次のシーケンス番号を計算し（ブロック４０８）、
前記次のシーケンス番号をヘッダーに有し且つ前記待機解除されたデータをペイロードに有するプロトコルユニットを構成し、前記待機解除されたデータは現在のシーケンス番号から開始する連続番号を有する複数のシーケンス番号ブロックに暗黙的に分割され、前記プロトコルユニットをこれから送信されるフレームに加え、各シーケンス番号ブロックは固定長を有し、但し、前記待機解除されたバイト数が前記固定長の整数倍ではない場合には最後のブロックが、又は前記待機解除されたバイト数が前記固定長より少ない場合には唯一のブロックが、前記固定長より短く（ブロック４１０）、
一方、前記再送信キュー空ではない場合には、
（Ｒ）前記再送信キューの最初にあるシーケンス番号ブロックの長さが前記Ｌより大きいか否かを判定し（ブロック４１４、４１６）、
前記再送信キューの最初にあるシーケンス番号ブロックの長さが前記Ｌより大きい場合には、前記ステップＱに進み、
前記再送信キューの最初にあるシーケンス番号ブロックの長さが前記Ｌより大きくない場合には、新たなプロトコルユニットを部分的に構成するか否かを判定し（ブロック４１８）、
前記新たなプロトコルユニットを部分的に構成しない場合には、
前記再送信キューの最初にあるシーケンス番号ブロックを待機解除し、前記待機解除されたバイト数だけ前記Ｌを減分し、前記現在のシーケンス番号をヘッダーに有し且つ前記待機解除されたシーケンス番号ブロックをペイロードとして有する新たなプロトコルユニットの構成を開始し（４２０）、
（S）前記再送信キューが空であるか否かを判定し（ブロック４２２）、
前記再送信キューが空である場合には、
（Ｔ）前記新たなプロトコルユニットを完成し、前記これから送信されるフレームに加え（ブロック４２４）、
前記ステップＰに進み、
前記再送信キューが空ではない場合には、
前記ステップＲに進み、
一方、前記新たなプロトコルユニットを部分的に構成する場合には、
（i）前記再送信キューの最初にあるシーケンス番号ブロックが、前記部分的に構成されるプロトコルユニットの最後にあるシーケンス番号ブロックと連続するシーケンス番号を有し、且つ（ii）前記部分的に構成されるプロトコルユニットの最後のブロックのシーケンス番号ブロックが固定長である場合には（ブロック４２６）、
前記再送信キューの最初にあるシーケンス番号ブロックを待機解除し、該待機解除されたシーケンス番号ブロックを前記部分的に構成される新たなプロトコルユニットの最後に加え、前記待機解除されたバイト数だけ前記Ｌを減分し（ブロック４２８）、
前記ステップＳに進み、
一方、前記（i）及び（ii）が別様である場合には、前記ステップＴに進む、
手順を繰り返す、データ送信方法。
【請求項１２】
データリンクを介してデータを送信するシステムであって、
（ａ）マイクロプロセッサ、モデム、無線器及びアンテナを含む受信器であって、前記データリンクを介して送信された、データ伝送容量が折々変動するフレームを受信可能な受信器と、
（ｂ）マイクロプロセッサ、モデム、無線器及びアンテナを含む送信器であって、前記データリンクを介して前記受信器に、１つ以上のプロトコルユニットを含むフレームを送信するよう動作可能な送信器と、
を有し、
個々のプロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有し、各前記ブロックは固定長を有し、但し、前記ペイロード部に保持されるバイト数が前記固定長の整数倍ではない場合には最後のブロックが、又は前記ペイロード部のバイト数が前記固定長より小さい場合には唯一のブロックが、前記固定長より短く、
前記個々のプロトコルユニットは、前記データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部を有し、前記シーケンス番号は、前記データリンクを介して送信される全てのブロックをシーケンス番号によって識別できるように選択され、
前記受信器が前に送信されたプロトコルユニットの破損していないコピーを受信しなかったことが判定された場合に、次に使用可能なフレームに十分なデータ伝送容量がある場合には、前記送信器が、前記前に送信されたプロトコルユニットを前記次に使用可能なこれから送信されるフレーム内で再送信し、前記次に使用可能なフレームに十分なデータ伝送容量がない場合には、前記送信器が、
前記前に送信されたプロトコルユニットのブロックから新たなプロトコルユニットを構成し、前記前に送信されたプロトコルユニットの最初のブロックで開始して前記前に送信されたプロトコルユニットを順次通って進みながら、前記次に使用可能なフレームのデータ伝送容量が用いられるまで、前記新たに構成されたプロトコルユニットにブロックを追加し、
前記新たに構成されたプロトコルユニットを前記データリンクを介して送信し、
前記前に送信されたプロトコルユニットの全てのブロックが良好に再送信されるまで、フレーム内のデータ伝送容量が使用可能な場合には常に、更に新たなプロトコルユニットを構成して送信し、前記新たに構成された各プロトコルユニットはそれぞれのデータペイロード部の最初のブロックのシーケンス番号を含むヘッダーを有する、
データ送信システム。
【請求項１３】
データを、フレーム毎にデータ伝送容量が異なり得るフレーム内で、データリンクを介して受信器に送信するためのプロトコルユニットであって、
該プロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有し、各前記ブロックは固定長を有し、但し、前記ペイロード部に保持されるバイト数が前記固定長の整数倍ではない場合には最後のブロックが、又は前記ペイロード部のバイト数が前記固定長より小さい場合には唯一のブロックが、前記固定長より短く、
前記プロトコルユニットは、前記データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部を有し、前記シーケンス番号は、前記データリンクを介して送信される全てのブロックをシーケンス番号によって識別できるように選択される、
データ送信用プロトコルユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に、無線送信器から受信器にデータを送信する方法及びシステムに関する。本発明は、具体的には、無線ローカルループシステム等における無線基地局及び加入者局等といった、複数の局間での信頼性の高いデータ送信を行うための方法及びシステムであって、データ送信が、それぞれデータ伝送容量が異なるペイロード部を含むプロトコルユニットとしてパッケージ化される、方法及びシステムに関する。
【背景技術】
【０００２】
２００１年４月３０日に出願され、本願譲受人に譲渡されるカナダ国特許出願第２，３４５，５０７号（その全体を参照として本明細書に組み込む）は、無線ローカルループシステム等における無線基地局及び加入者局等といった、複数の局間でデータを送信するための、方法及びシステムを開示しており、この方法及びシステムでは、データ送信は、持続時間が固定されたフレーム内で送られる。各加入者局は基地局に対して、基地局によって送信された信号の受信品質を断続的に報告する。各搬送ブロックは、所定の同一数のトラフィックシンボルを含むと共に、ヘッダー部及びペイロード部を含む。各ブロックのヘッダー部は、送信用にロバストな方法でパッケージ化され、各加入者局がそれをリカバリできる確率を高めており、ヘッダー部は、ペイロード部のリカバリに必要な情報を含む。意図された受信加入者局がペイロードをリカバリできる妥当な確率を確保しつつ、送信リソースを効率的に使用するために、ペイロード部は、意図された受信加入者局によって報告される受信品質に応じてパッケージ化される。ヘッダー部は、ペイロードのパッケージ化に用いられた変調、ＦＥＣ（Forward Error Correction）及び反復の標示を含むことができると共に、ペイロードの長さを示すことができる。その結果、加入者局における受信品質のばらつきにより、加入者局へのデータの送信に使用可能なデータ伝送容量は、フレーム毎に変動し得る。
【０００３】
無線データ送信システムにおいては、データ送信エラーは不可避的に生じるものである。エラーを訂正する１つの方法は、一般的に「自動再送要求」又は「ＡＲＱ」と称されるものである。この方法では、データがプロトコルユニット内で送信される際、受信器が、受信したプロトコルユニットの信頼性が低いと判断した場合には、そのプロトコルユニットは受信器に許容されない。受信器は、明示的に又は暗黙的に、その疑わしいプロトコルユニットの再送信を要求する。プロトコルユニットが失われたように見える場合にも、再送信が要求され得る。
【０００４】
カナダ国特許出願第２，３４５，５０７号に開示されているようなシステムにおけるＡＲＱの実装は、プロトコルユニットのデータ伝送容量が固定されているシステムにおけるものほど簡単ではない。再送信は、送信器が再送要求を受信すると直ちに行われるのが好ましいが、フレームのデータ伝送容量が変動する場合には、プロトコルユニットが大きすぎて次のフレーム内又は複数の連続するフレーム内にさえもフィットしないようなことがあると、失われた又は破損したプロトコルユニットの再送信が不可能な場合もある。低いレイテンシーが要求される状況では、これは許容できない場合もある。これに対処する１つの方法は、使用可能なデータ伝送容量が減少した場合でもプロトコルユニットを再送信し得るように、プロトコルユニットのペイロード部のサイズを制限することである。しかし、このようにすると、同じ量のデータを送るのにより多くのプロトコルユニットが必要になり、それにつれてより多くのヘッダーが必要になり、オーバーヘッドが増加し、データのスループットが減少する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
オーバーヘッドを低く保ち且つスループットを高く保ちつつ、フレームのデータ伝送容量が変動するシステムにおけるＡＲＱを提供する、方法及びシステムが必要である。
【課題を解決するための手段】
【０００６】
本発明の一つの態様によれば、順序付けされたデータを、フレーム毎にデータ伝送容量が変動し得るフレーム内で、データリンクを介して受信器に送信するためのシステム及び方法が提供される。データは、各シリーズが少なくとも１つのブロックを有する少なくとも１シリーズのブロックとして送信される、暗黙的にシーケンス番号が付されたブロック内で送信される。ブロックの長さは、受信器が、各シリーズのブロックの最初のブロックのシーケンス番号を用いて、ブロックをシーケンス番号によって識別し、失われた又は破損したブロックの再送信を個々に要求できるように決められている。１シリーズのシーケンス番号が付された各ブロックは固定長を有するのが好ましいが、但し、シリーズの最後のブロック、又は、ブロックを１つだけ有するシリーズの唯一のブロックは、固定長より短い場合がある。ブロックの番号付けに使用可能なシーケンス番号の総数は、理想的な条件下のデータリンクの帯域幅遅延積をブロックの番号付けに使用可能なシーケンス番号の総数で割った値が、データリンクの通常動作時にデータリンクを介して１シリーズのブロックを送信するために１フレーム内で妥当な使用可能性を有する最も低いデータ伝送容量より大きくならないように、予め選択されてもよい。固定長は、データリンクの通常動作時のデータリンクの帯域幅遅延積をブロックの番号付けに使用可能なシーケンス番号の総数で割った値より大きくなり、且つ、データリンクの通常動作時にデータリンクを介して１シリーズのブロックを送信するために１フレーム内で妥当な使用可能性を有する最大データ伝送容量より小さくなるように、最初に設定されてもよい。データリンクの帯域幅遅延積が変動する場合には、固定長は、データリンクの帯域幅遅延積をブロックの番号付けに使用可能なシーケンス番号の総数で割った値の所定の許容誤差内、又はデータリンクを介して１シリーズのブロックを送信するために１フレーム内で使用可能な最大データ伝送容量の所定の許容誤差内となるよう再設定されてもよい。各シリーズのブロックは、そのシリーズのブロックの最初のブロックのシーケンス番号を含むヘッダーと共に、プロトコルユニット内にカプセル化されるのが好ましい。
【０００７】
本発明の別の態様によれば、フレーム内のデータ伝送容量が使用可能になると、１つ以上のプロトコルユニット内のデータが送信される。個々のプロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有する。各ブロックは同一の固定長を有するが、但し、データペイロード部の長さが固定長の整数倍ではない場合には、最後のブロック又はブロックを１つだけ有するプロトコルユニットの唯一のブロックは固定長より短い。各プロトコルユニットは、それぞれのデータペイロード部の最初のブロックのシーケンス番号を含むヘッダー部も含む。シーケンス番号は、データリンクを介して送信される全てのブロックを受信器がシーケンス番号によって識別できるよう選択される。受信器が、前に送信されたプロトコルユニットの破損していないコピーを受信しなかったと判定した場合に、次に使用可能なフレーム内に十分なデータ伝送容量がある場合には、送信器は、前に送信されたプロトコルユニットを次に使用可能なこれから送信されるフレーム内で送信する。次に使用可能なフレーム内に十分なデータ伝送容量がない場合には、送信器は、前に送信されたプロトコルユニットのブロックから新たなプロトコルユニットを構成し、前に送信されたプロトコルユニットの最初のブロックで開始して前に送信されたプロトコルユニットを順次通って進みながら、次に使用可能なフレームのデータ伝送容量が用いられるまで、又は、固定長ではない若しくは使用可能な残りのデータ伝送容量より大きいブロックに遭遇するまで、新たに構成されたプロトコルユニットにブロックを加える。（１）使用可能なデータ伝送容量が残っており、（２）前に送信されたプロトコルユニットの最後のブロックが固定長であり、（３）これから再送信される、前に送信された次のプロトコルユニットが、その前に送信されたプロトコルユニットの続きである場合には、（１）加えられる最後のブロックが固定長ではない、（２）加えられる次のブロックが使用可能な残りのデータ伝送容量より大きい、又は（３）前に送信された次のプロトコルユニットの全てのブロックの追加が完了した状態になるまで、前に送信された次のプロトコルユニットから続きのブロックが加えられる。使用可能なデータ伝送容量がまだ残っている場合には、この処理が繰り返される。次に、新たに構成されたプロトコルユニットが、次に使用可能なフレーム内でデータリンクを介して送信される。再送信を要する前に送信された全てのプロトコルユニットの全てのブロックが良好に再送信されるまで、フレーム内のデータ伝送容量が使用可能である場合には常に、更に新たなプロトコルユニットが同様に構成されて送信される。新たに構成された各プロトコルユニットは、それぞれのデータペイロード部の最初のブロックのシーケンス番号を含むヘッダーを有する。いずれかのフレームのデータ伝送容量が前に送信されたブロックの再送信に完全に利用されていない場合には、残っているデータ伝送容量は、前に送信されなかったデータから構成された新たなプロトコルユニットで埋められる。
【０００８】
本発明の別の態様によれば、データリンクを介してデータを送信するための、受信器及び送信器を含むシステムが提供される。受信器は、マイクロプロセッサ、モデム、無線器及びアンテナを有し、データリンクを介して送信されたフレームを受信可能である。フレームのデータ伝送容量は折々変動し得る。送信器は、マイクロプロセッサ、モデム、無線器及びアンテナを有し、データリンクを介して受信器にフレームを送信するよう動作可能である。フレームは、１つ以上のプロトコルユニットを含む。個々のプロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有し、各ブロックは固定長を有するが、但し、ペイロード部に保持されるバイト数が固定長の整数倍ではない場合には、最後のブロック（又はペイロード部のバイト数が固定長より小さい場合には唯一のブロック）は固定長より短い。プロトコルユニットは、データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部も有する。シーケンス番号は、データリンクを介して送信される全てのブロックをシーケンス番号によって識別できるように選択される。受信器が前に送信されたプロトコルユニットの破損していないコピーを受信しなかったことが判定された場合に、次に使用可能なフレームに十分なデータ伝送容量がある場合には、送信器は、前に送信されたプロトコルユニットを次に使用可能なこれから送信されるフレーム内で再送信する。しかし、次に使用可能なフレームに十分なデータ伝送容量がない場合には、送信器は、前に送信されたプロトコルユニットのブロックから新たなプロトコルユニットを構成し、前に送信されたプロトコルユニットの最初のブロックで開始して前に送信されたプロトコルユニットを順次通って進みながら、次に使用可能なフレームのデータ伝送容量が用いられるまで、新たに構成されたプロトコルユニットにブロックを追加する。次に、新たに構成されたプロトコルユニットがデータリンクを介して送信される。新たなプロトコルユニット内での、前に送信されたプロトコルユニットの全てのブロックの送信が完了していない場合には、前に送信されたプロトコルユニットの全てのブロックが良好に再送信されるまで、フレーム内のデータ伝送容量が使用可能な場合には常に、更に新たなプロトコルユニットが構成されて送信される。新たに構成された各プロトコルユニットは、それぞれのデータペイロード部の最初のブロックのシーケンス番号を含むヘッダーを有する。
【０００９】
本発明の更に別の態様によれば、データを、フレーム毎にデータ伝送容量が異なり得るフレーム内で、データリンクを介して受信器に送信するためのプロトコルユニットが提供される。プロトコルユニットは、シーケンス番号が付されたブロックとして暗黙的に分割されたデータペイロード部を有し、各ブロックは固定長を有するが、但し、ペイロード部に保持されるバイト数が固定長の整数倍ではない場合には最後のブロック（又はペイロード部のバイト数が固定長より小さい場合には唯一のブロック）は固定長より短い。プロトコルユニットは、データペイロード部の最初のブロックのシーケンス番号を含むヘッダー部も有する。シーケンス番号は、受信器が、データリンクを介して送信される全てのブロックをシーケンス番号によって識別できるように選択される。
【発明を実施するための最良の形態】
【００１０】
次に、添付の図面を参照し、本発明の好ましい実施形態を例示目的で説明する。
【００１１】
図１を参照すると、データ送信のための例示的な無線ネットワークシステムが、全体を参照番号２０で示されている。これから説明する本発明の実施形態の内容を読者が理解できるように、以下、システム２０について詳細に説明する。しかし、以下のシステム２０の説明は、本発明の範囲を限定するものとして理解されるべきではなく、データを、データ伝送容量が折々変動し得るプロトコルユニット内で送信することが望まれ得る、広範囲の通信ネットワークで有用であり得る。
【００１２】
システム２０は、無線基地局２４と、複数の加入者局２８ａ、２８ｂ…２８ｎとを含む。無線基地局２４は、適切なゲートウェイと、Ｔ１、Ｔ３、Ｅ１、Ｅ３、ＯＣ３又は他の適切な地上回線リンクや、衛星、他の無線又はマイクロ波チャネルリンクや、バックホールとして動作するのに適した他の任意のリンクであり得る、当業者に自明の１つ以上のバックホール（図示せず）とによって、地上回線ベースの交換データネットワーク、パケットネットワーク等の少なくとも１つのデータ通信ネットワーク（図示せず）に接続されている。
【００１３】
無線ローカルループシステムにおいて一般的なように、基地局２４は、加入者の家屋に設置された加入者局２８と通信する。１つの基地局２４によってサービスが提供される加入者局の数ｎは、使用可能な無線帯域幅の量及び／又は加入者局２８の構成及び要件に応じて様々であり得る。
【００１４】
基地局２４と各加入者局２８との間には、無線を介してデータチャネル３２が確立される。データチャネル３２は、必要に応じて基地局２４から個々の加入者局２８ａ、２８ｂ…２８ｎに送信される情報を伝送する。データチャネル３２は、ＴＤＭＡ、ＦＤＭＡ、ＣＤＭＡや、ＧＳＭ等のハイブリッドシステムを含む様々な多重アクセス技術を用いるネットワークで実装可能である。例示的なシステム２０では、データチャネル３２を介して送信されるデータは、フレーム内にカプセル化されたパケットとして送信される（その詳細については後述する）
【００１５】
加入者局２８に対して送信された信号を加入者局２８が適切に受信する能力（以後、信号の「受信品質」と呼ぶ）は、様々なファクターに依存し得る。受信品質の尺度は、信号の送信に用いられる多重アクセス技術に従って、様々な方法で判定できる。例えば、ＴＤＭＡシステムやＦＤＭＡシステムでは、最もよく用いられる判定手段は受信信号強度である。ＣＤＭＡシステムでは、該当する判定手段は受信ビット出力と受信干渉出力との比（しばしばＥS／ＮOとして表される。式中、ＥSはシンボル毎のエネルギー、ＮOは受信干渉エネルギー）である。当業者はよく理解しているように、いずれにしても、各加入者局２８におけるチャネル３２の受信品質は、マルチパス干渉（近隣の建物の存在等による）、無線ノイズ源（他のユーザによる送信や無線ノイズ源を含む）、地理的特徴、基地局２４から加入者局２８までの距離、加入者局２８の受信器の品質等を含む様々なファクターによって変動し得る。信号は一般的に、距離と共に１／ｒNのように減衰する（式中、ｒは加入者局２８と基地局２４との間の距離、Ｎ＞１）。ＩＳ−９５ＣＤＭＡシステムでは、例えば、Ｎは一般的に３＜Ｎ＜５の範囲内である。
【００１６】
図１に示されるように、基地局２４に対する加入者局２８の地理的な分布は対称である必要はなく、また、地理的な環境（信号を反射又はマスクし得る建物の有無）、無線環境（無線ノイズ源の有無）等を含む様々なファクターにより、互いに物理的に近くに位置する加入者局が、必ずしも同じ又は似たような受信品質であるわけではない。従って、ほとんどの状況では、或る基地局２４がサービスを提供する複数の加入者局２８の受信品質が大きく異なることがあると共に、これらの受信品質は時間と共に変化し得る。
【００１７】
図１において、或る時には、加入者局２８ａ及び２８ｆの受信品質が非常に良好であり、加入者局２８ｂ及び２８ｇの受信品質が中程度であり、加入者局２８ｃ、２８ｄ及び２８ｅの受信品質が低い場合がある。次の時には、加入者局２８ａ、２８ｄ及び２８ｇの受信品質が非常に良好であり、加入者局２８ｃ、２８ｅ及び２８ｆの受信品質が中程度であり、加入者局２８ｂの受信品質が低い等といったことが生じ得る。
【００１８】
各加入者局２８は、適切なインターバル又は所定のイベントにおいて、現在の受信品質を基地局２４に報告する。基地局２４は、報告された最新の受信品質のデータベースを維持し、データチャネル３２を介して各加入者局２８に送信されるデータを適切にパッケージ化するよう動作する。
【００１９】
本明細書で用いる「パッケージ」、「パッケージ化される」及び「パッケージ化する」という用語は、意図された宛先の受信器で受信されるようパッケージ化されたデータの送信の全体構成を指す。データのパッケージ化には、異なるレベルのＦＥＣ（forward error correcting）符号（符号化無し〜高レベルの符号化、及び／又は異なる符号化方法）の適用、様々なレベルのシンボル反復の使用、異なる変調方法（４−ＱＡＭ、１６−ＱＡＭ、６４−ＱＡＭ、等）の使用、並びに、必要な無線（又は他の物理レイヤ）リソースの量が選択されたデータ送信を構成するための他の任意の技術又は方法、送信に適したデータ転送速度及び送信エラー確率の使用が含まれ得るが、これらに限定されない。例えば、意図される第１の受信器への送信用には、データを符号化率１／４のＦＥＣ符号化（各１データビットが４ビットの情報ビットで送信される）及び１６−ＱＡＭ変調でパッケージ化し、意図される第２の受信器（第１の受信器よりも受信品質が良好）への送信用には、符号化率１／２のＦＥＣ符号化及び６４−ＱＡＭ変調でパッケージ化することができる。
【００２０】
図２は、基地局２４の一例を詳細に示している。基地局２４は、通信チャネル３２を介した無線通信の送受信用の１つ又は複数のアンテナ４０を含む。アンテナ４０は、無線器４４及びモデム４８に接続されている。モデム４８は、サン・マイクロシステムズ（SUN Micro Systems）社製のＳＰＡＲＣプロセッサシステム等といったマイクロプロセッサ−ルータアセンブリ５２に接続されている。所望により、アセンブリ５２は複数のマイクロプロセッサを含むことが可能であり、それと共に／或いは、所望により、ルータを別個のユニットとして配設可能であることが理解されよう。マイクロプロセッサ−ルータアセンブリ５２内のルータは、任意の適切な方法でバックホール５６に接続されており、バックホール５６は、基地局２４をデータネットワーク（図示せず）に接続している。
【００２１】
次に図３を参照すると、加入者局２８の一例が詳細に示されている。加入者局２８は、通信チャネル３２を介した無線通信の送受信用の１つ又は複数のアンテナ６０を含む。アンテナ６０は、無線器６４及びモデム６８に接続されており、モデム６８はマイクロプロセッサ−アセンブリ７２に接続されている。
【００２２】
マイクロプロセッサ−アセンブリ７２は、例えば、Ａ／Ｄ−Ｄ／Ａ変換、フィルタ、符号器、復号器、データ圧縮器、解凍器及び／又はパケット分解の実装を含む様々な機能を実行する、インテル（Intel）社製のストロングアーム（StrongARM）プロセッサを含むことが可能である。図３に示されるように、マイクロプロセッサ−アセンブリ７２は、加入者局２８を、パーソナルコンピュータ、パーソナルデジタルアシスタント等といった、通信チャネル３２を介して受信されたデータを使用するよう動作可能なデータクライアント装置に接続するために、モデム６８及びデータポート７６と相互接続している。従って、マイクロプロセッサ−アセンブリ７２は、データポート７６とモデム６８との間でデータを処理するよう動作可能である。
【００２３】
次に、図４ａ〜図４ｃを参照すると、チャネル３２を介した送信用のフレームが、全体を１００で示されている。データは、１０ミリ秒の送信時間を要するフレーム１００内で、チャネル３２を介して送信されるが、所望により、フレーム１００に対してこれより長い又は短い送信時間を選択可能である。
【００２４】
当業者は理解するように、フレーム１００を持続時間に関して測定できる。その持続時間は、送信用の所与の数のシンボルを伝送できる。それらのシンボルはデータを表すことができ、或るシンボルによって表されるデータの実際の量は、データがシンボルとしてパッケージ化された方法によって異なる。ＣＤＭＡの実施形態では、ＣＤＭＡ拡散率、変調、反復、及び符号化の組合せを用いて、シンボルをパッケージ化できる。従って、フレーム１００の持続時間が一定である場合には、１フレーム内で送信されるデータの実効量は、データのパッケージ化に依存することが認識されよう。例示的なシステムに対するこれらの概念の適用について、以下に詳細に述べる。
【００２５】
例示的なシステムでは、フレーム１００は、複数のデータブロックＢ1〜Ｂiを送信するよう構成される。各ブロックＢiは固定数のトラフィックシンボルを伝送し、従って、フレーム１００内のブロック数は、ＣＤＭＡ拡散率、チップレート及びそのフレームの送信持続時間、並びに、ＦＥＣ符号化量及び変調タイプに依存する。例示的なシステムでは、３，８４０，０００チップ／秒（３．８４Ｍｃｐｓ）のチップレートを有するＣＤＭＡシステムが用いられると共に、１，２００個のトラフィックシンボルを有するブロックＢiが用いられている。
【００２６】
図４ａは、４のＣＤＭＡ拡散率と共に用いられるフレーム１００を示しているので、フレーム１００には８個のブロック（Ｂ1〜Ｂ8）が含まれ、従って、フレーム１００は９，６００個のトラフィックシンボルを含む。図４ｂでは、８のＣＤＭＡ拡散率が用いられているので、フレーム１００は４個のブロック（Ｂ1〜Ｂ4）と４，８００個のトラフィックシンボルとを含む。図４ｃでは、１６のＣＤＭＡ拡散率が用いられているので、フレーム１００は２４００個のトラフィックシンボルに対する２個のブロック（Ｂ1及びＢ2）を含む。ブロックＢ内のトラフィックシンボルの数及びフレームの持続時間を一定に保つことにより、モデム６８における望ましくない複雑さを回避できるが、所望により、トラフィックシンボル数がそれぞれ異なる複数のフレーム構造を用いることも可能であると考えられる。
【００２７】
各ブロックＢiは、図５に示されている、ヘッダー１０４及びペイロード１０８を含む構造を有する。ヘッダー１０４は、システム２０内の、少なくとも所定の最低受信品質を有する全ての加入者局２８によって受信可能であることが意図されている。従って、ヘッダー１０４は、加入者局２８がヘッダー１０４を受信できる確率を高める（即ち、加入者局によるヘッダー１０４の受信及び理解に対するフレーム誤り率（又はＦＥＲ）を、システム２０のオペレータによって選択されたレベルより低くする）ために、ロバストな方法でパッケージ化される。例示的なシステム２０では、ヘッダー１０４は１０ビットのヘッダー情報ビットを含み、この１０ビットのヘッダー情報ビットは、情報ビットをＦＥＣ符号化して３０個の符号化ビット（符号化率１／３のＦＥＣ符号）を生じることと、得られたビットを８の反復因数を用いて８回反復して２４０個のビットを得ることと、ＱＰＳＫ変調を用いてこれらのビットを変調して、ヘッダー１０４の１２０個のトラフィックシンボルを生じることとにより、最終的に１２０個のトラフィックシンボルとしてパッケージ化される。現在のところ、ヘッダー１０４にはこのパッケージ化が好ましいが、当業者には自明のように、ヘッダー１０４に対しては、他の広範囲のパッケージ化も使用可能であると考えられる。
【００２８】
ヘッダー１０４の１０ビットのヘッダー情報ビットのうち、５ビットは現在のところ長さの値を表すために用いられ、残りの５ビットはブロックフォーマットを表すために用いられる。
【００２９】
例示的なシステム２０では、ヘッダー１０４は全ての加入者局２８によって受信可能なようにパッケージ化されるが、ペイロード１０８は、意図された受信者の加入者局２８に情報を送信する際に無線チャネル３２を効率的に使用するようパッケージ化される。従って、ペイロード１０８の変調、ＦＥＣ符号化、シンボル反復等は、意図された受信加入者局２８及びその受信品質に応じて、ブロックＢ毎に異なる。
【００３０】
例示的なシステム２０では、４、３、２又は１のシンボル反復因数を用いることができ、６４−ＱＡＭ、１６−ＱＡＭ、４−ＱＡＭの変調方法を用いることができ、（１／３〜４／５の符号化率を得るための）８つの異なるＦＥＣパンクチャーマスクを用いることができる。更に、受信器がペイロード１０８の内容を正しく解釈できるように、受信器が長さ乗数を使用可能であることが必要であり、例示的なシステム２０では、８、１６、３２、６４及び１２８の乗数値を使用可能である。従って、特定の変調方法は（４つの可能な変調から選択するために）２ビットの情報で表すことができ、シンボル反復因数は（４つの可能な反復率から選択するために）２ビットで表すことができ、ＦＥＣパンクチャーマスクは（８つの可能なパンクチャーマスクから選択するために）３ビットで表すことができ、長さ乗数は（５つの可能な乗数値から選択するために）３ビットで表すことができる。しかし、当業者には自明のように、これらのパラメータの組合せの多くは冗長であり、システム２０においては矛盾する、又は有用である可能性は低い。例えば、６４−ＱＡＭ変調で、シンボル反復が無く、低レベルのＦＥＣ符号化が行われる送信は、システム２０では必要とされそうにない。
【００３１】
従って、ペイロード１０８の送信に要するオーバーヘッド（ヘッダー１０４）を低減するために、変調、ＦＥＣパンクチャーマスク、長さ乗数及びシンボル反復因数の、最も有用であると見なされた３２通りの組合せが選択され、これらの組合せを、基地局２４及び加入者局２４にとって既知であり、ブロックフォーマットを含む５ビットの情報ビットによってアクセス可能な、ルックアップテーブルのエントリとして定義する。ルックアップテーブルに含むために選択されるファクターの実際の組合せは特に限定されず、基地局２４及び加入者局２８の製造者により、システム２０に期待される動作条件の範囲を考慮して選択されることが考えられる。
【００３２】
ヘッダー１０４の残りの５ビットの情報ビットは長さパラメータを表し、長さパラメータは、ペイロード１０８内の情報ビット数を判定するために、ブロックフォーマットから長さ乗数によって乗算される値を表す。受信器は、ペイロード１０８の解釈を試みる前に、この値を知る必要がある。ペイロード１０８の有効ビットがその全ビットではない場合（送信に用いられるＦＥＣ符号化、変調及び反復レベル並びに送信されるデータ量に依存して生じ得る）を判定するには、長さパラメータ及び長さ乗数パラメータの使用が必須である。ブロックＢは常に同数のトラフィックシンボルを有するので、計算の複雑さを省くため、必要に応じてペイロード１０８を埋めるために、ペイロード１０８にパッドシンボルが加えられ、これらのパッドビットは、ペイロードシンボルに対するＦＥＣ符号化、反復及びインターリービングの実行後に加えられる（後述する）。従って、受信器は、ペイロード１０８に対するデインターリービング、ＦＥＣ復号化等を正しく実行できるように、ペイロード１０８の実際の長さに関する情報を要する。
【００３３】
図６は、送信用のブロックＢを構成する処理のフローチャートを示している。図示されるように、ヘッダー情報の１０個の情報ビットは、まず２００でＦＥＣ符号化され、符号化率１／３のＦＥＣ符号の３０個の符号化ビットを生じる。当業者には他の適切な符号器も自明であるが、例示的なシステム２０では２次リード・マラー符号器を用い、８次のシンボル反復を実行して２４０個の符号化ビットを得る。次に２０４で、これらの符号化ビットが送信用の適切なシンボルにマッピングされるが、この際、ＱＰＳＫ変調を用いて、２４０個の符号化ビットが１２０個の送信用トラフィックシンボルにマッピングされる。
【００３４】
ヘッダービットの処理の完了後にペイロードビットの処理を行うこともできるが、処理のレイテンシーを低減するために、ペイロードビットの処理をヘッダービットの処理と並行して行う。
【００３５】
図示されるように、２０８で、まずペイロード情報ビットに対する巡回冗長検査（ＣＲＣ）値が計算され、この値が、ペイロード情報ビットと共に、送信されるビットの一部として含まれる。例示的なシステム２０では、このＣＲＣ値は、１６ビットＣＲＣ符号を生成するｇCRC16（Ｄ）関数によって生成されるシステマティックコードから決定されるが、当業者には他の適切なＣＲＣ関数も自明である。
【００３６】
次に２１２で、情報ビット及びＣＲＣビットがＦＥＣ符号化され、例示的なシステム２０では、これはターボ符号器及びそれに続くパンクチャード符号化を用いて行われる。上述したように、得られる符号のパンクチャード符号化の程度は、構成中のブロックＢの意図される受信者の受信品質に従って選択される。２１６では、例示的なシステム２０ではレラティブプライムインターリーバ（Relative Prime Interleaver）を用いて、得られたビットがインターリーブされる。
【００３７】
この符号化及びインターリービングの後、２２４で、これらのビットは、選択されたＭ−ａｒｙ変調方法に従って、複数のシンボルにマッピングされる。ここで、Ｍは４、１６又は６４であり得る（即ち、４−ＱＡＭ、１６−ＱＡＭ又は６４−ＱＡＭ）。ここでも、用いられる変調方法は、構成中のブロックＢの意図される受信者の受信品質に従って選択される。マッピングされるビットの数がｌｏｇ2（M）で割り切れない場合には、２２４におけるシンボルマッピングの前に、使用可能なビットスペースを埋めるために、２２０で、シンボルレート・パッドビット（symbol rate pad bits）が加えられる。
【００３８】
次に２２８で、所望の反復率（あれば）でシンボル反復が実行される。例示的なシステム２０では、シンボル毎に反復が実行され、例えば、ｓ1，ｓ2，ｓ3，ｓ4のビットシーケンスで、反復率が２であるとすると、得られるシーケンスはｓ1，ｓ1，ｓ2，ｓ2，ｓ3，ｓ3，ｓ4ｓ4となる。
【００３９】
この時点で、送信されるシンボルの数が、ペイロード１０８に使用可能なトラフィックシンボルの数（例示的なシステム２０では１０８０個のトラフィックシンボル）よりも少ない場合には、２３２で、チャネルシンボルにＤＴｘパッドシンボルが追加される。最後に、２３６で、チャネルシンボル及び追加されたＤＴｘパッドシンボル（あれば）がレラティブプライムインターリーバを用いてインターリーブされ、２４０で、得られたトラフィックシンボルがブロックＢ内のヘッダービットの後に配置される（ヘッダービットはインターリーブされない。即ち、ヘッダービットは常にブロックＢの冒頭に現れる）。次に、得られたブロックＢを、送信用の物理的チャネル処理によって処理できる。
【００４０】
動作としては、各加入者局２８は、その受信品質を基地局２４に報告する。例示的なシステム２０では、加入者局２４は、チャネル３２のフレーム１００を受信した際のＳＮ比及び／又はフレーム誤り率を基地局４０に報告する。この報告は、システム２０のオペレータによって、報告頻度、最後に報告された情報の信頼性／精度、及びこの情報を報告するための加入者局２８と基地局２４との間の送信リソースの使用の間に存在するトレードオフとして選択される、適切なインターバルで実行できる。
【００４１】
当業者には自明のように、加入者局によるブロックＢの受信は、上述の操作のセットを逆にしたものである。なお、受信器における全体的なレイテンシーを低減するために、トラフィックシンボルのデインターリービングは、ヘッダービットの復号化と並行して行うことができる。
【００４２】
上述したように、フレーム１００がチャネル３２を介して送信される際に、ヘッダー１０４は、全ての加入者局２８ａ、２８ｂ…２８ｎによるリカバリの比較的高レベルの信頼性を提供するために、常にロバストな方法でブロックＢにパッケージ化される。このようなロバストなパッケージ化は、基地局２４がサービスを提供する全ての加入者局２８によるヘッダー１０４のリカバリを可能にすることを意図したものである。たとえペイロード１０８は通常は受信加入者局２８によるリカバリが不可能なようにパッケージ化され得るとしても、全ての加入者局２８が、受信した全てのブロックＢの復号を試みる。このような場合には、２０８でペイロード１０８に含まれたＣＲＣ符号は不正確であり、加入者局２８はブロックＢを捨てる。そのブロックＢが、その加入者局に宛てられたものである場合には、システム２０で用いられているより高レベルのプロトコルスタックが、詳細を後述するように、そのペイロード１０８のデータを後続のブロックＢで加入者局２８に再送信する責任を負う。
【００４３】
ブロックＢのペイロード１０８は、基地局２４で受信される任意のタイプのデータであってよい。例えば、加入者局２８へのＩＰパケットの送信が望まれる場合には、ペイロード１０８は、１つ以上の送信制御プロトコル／インターネットプロトコル（「ＴＣＰ／ＩＰ」）パケット（以下「ＩＰパケット」と称する）又はセグメント化されたパケットの一部であり得る。ペイロード１０８は、各々が独自の固有アドレスを有する特定の加入者局２８ａ、２８ｂ…又は２８ｎを指定してアドレス可能である。これに加えて／或いは、類似の受信品質を有する複数の加入者局に対して１つ以上の同報アドレスを定めることもできる。或いは、意図された全ての受信器に対して、同報パケットを予期される最悪の受信品質に備えてパッケージ化できる。ペイロード１０８内のデータは、ブロックＢ内のペイロードに対するサイズ制限に合わせて、必要に応じて結合又はセグメント化できる。
【００４４】
基地局２４が、１つ以上の加入者局２８に送信されるデータを受信する際には、フレーム１００を埋めるのに十分な量のデータが受信されるまで、又は所定の最大待機時間を超えるまで、データはバッファに格納される。当業者には自明のように、１つのフレーム１００を埋めるのに十分なデータ量は、フレーム１００内の各ブロックＢiを構成するために選択されたブロックフォーマットに依存する。１つのフレーム１００内の複数の異なるブロックＢiは、それぞれ異なる受信器に送られることが意図されている場合には、しばしば異なるブロックフォーマットを有することが考えられる。従って、十分な量のデータの受信に関する判定は、最良の（即ち、データ転送速度に関して最も効率的な）符号化及び変調操作を前提として行われるか、又は、最初のデータの受信から所定の最大待機時間が経過した時に行われ、この後者のパラメータは、予め選択された最大レイテンシーを超える前にフレーム１００がアセンブルされて送信されることを確実にするために用いられる。そのブロックフォーマットのデータ転送速度効率が低いことに起因して、アセンブルされたフレーム１００内に配置できない任意の受信データは、バッファに格納され、適当な時期に、これらからアセンブルされる次のフレーム１００内にアセンブルされる。
【００４５】
フレーム１００を埋めるのに十分な量のデータ（前のフレーム１００からバッファに格納された任意のデータを含む）が受信されたら、意図される各受信器によって報告された最新の受信品質を用いて、各ブロックＢに対する適切なブロックフォーマットを選択し、次に各ブロックＢをアセンブルして、フレーム１００にインサートする。
【００４６】
アセンブルされたフレーム１００は、チャネル３２を介して加入者局２８ａ、２８ｂ…２８ｎに送信される。送信は、公知の技術を用いて通常の方法で行うことができる。
【００４７】
システム２０は、所望により１つを超えるチャネル３２を含み得ることが考えられる。このような場合には、各チャネル３２は同一の拡散率を有してもよく、又は、異なるチャネル３２毎に異なる拡散率を用いてもよい。例えば、所与の送信出力レベルに対して、受信品質が悪い加入者局における受信の可能性を高めるために、１つのチャネル３２が４の拡散率を有し、一方、より良好な受信品質を有する加入者局には効率的なデータ送信を提供するために、他のチャネル３２が８、１６、等の拡散率を有することも可能である。
【００４８】
上述した例示的なシステム２０の説明では、ダウンリンクチャネルの場合に、量が変動するデータをフレーム内でデータリンクを介して送り得る理由を説明した。以下の説明で明らかなように、本発明は、サイズ変更されやすいアップリンクチャネルにも等しく適用可能である。本発明を実施するネットワークでは、加入者局２８のアップリンクチャネルは、加入者局２８によるアップリンクデータ要求及び輻輳管理アルゴリズムに従ってサイズ変更される。
【００４９】
システム２０は、プロトコルスタックのリンクレイヤの最も低いレベルで記述されている。ＡＲＱは、リンクレイヤのより高いレベルに設けられる。先に参照したフレーム１００内のブロックＢiは、送信のためにプロトコルスタックの物理レイヤに渡される搬送ブロックである。本発明の現在のところ好ましい実施形態では、各ブロックＢiは、上述のようにヘッダーを有すると共に、ペイロードとして１つ以上の媒体アクセス制御（「ＭＡＣ」）プロトコルデータユニット（「ＰＤＵ」）を有する。各ＭＡＣ・ＰＤＵは、ＭＡＣヘッダー（この説明は本願の範囲を超えるものである）を有すると共に、ペイロードとして、無線リンク制御（「ＲＬＣ」）ＰＤＵ又はＭＡＣサービスデータユニット（「ＳＤＵ」）を有する。各ＲＬＣ・ＰＤＵは、ＲＬＣヘッダー及びペイロード（以下ＲＬＣ・ＳＤＵと称する）を有する。各ＲＬＣ・ＳＤＵは、送信のためにネットワークレイヤによってリンクレイヤに供給されるインターネットプロトコル（「ＩＰ」）パケットの（圧縮される場合もある）セグメントである。
【００５０】
概要を説明すると、本発明の現在のところ好ましい実施形態では、ＡＲＱは、各ＲＬＣ・ＳＤＵ内のデータを、暗黙的に複数のシーケンス番号ブロックに分割し、これらのブロックを暗黙的に番号付けすることによって提供される。失われた又は破損したものとして報告されたＲＬＣ・ＳＤＵのシーケンス番号ブロックの再送信が提供される。或るシーケンス番号ブロックが失われた又は破損したことを判定するために、受信加入者局（以下の説明及び特許請求の範囲においては「受信器」と称する）は、受信した破損していないシーケンス番号ブロックのシーケンス番号の欠落を探し、欠落しているシーケンス番号を基地局（以下の説明及び特許請求の範囲においては「送信器」と称する）に知らせる。送信器は、再送信を要するシーケンス番号ブロックを、概念的な再送信キューとして追跡記録する。再送信されるデータの取り扱いの詳細は当業者に自明であり、様々な方法で実施可能である。必要なのは、或るシーケンス番号ブロック内で送信されたデータを、送信器が追跡記録できることである。送信器のデータ用フレームに余裕がある場合には常に、再送信されるシーケンス番号ブロックのキューから待機解除されたデータから、及び前に送られていないデータのキューから、ＲＬＣ・ＰＤＵが構成される。
【００５１】
図７は、本発明の現在のところ好ましい実施形態において、ＡＲＱを提供する方法を詳細に示している。図７や以下の説明及び特許請求の範囲においては、ＲＬＣ・ＰＤＵを単に「プロトコルユニット」と称し、ＲＬＣヘッダーを「ヘッダー部」と称し、ＲＬＣ・ＳＤＵを「ペイロード部」と称する。更に、ＭＡＣ・ＰＤＵ内へのＲＬＣ・ＰＤＵのカプセル化及びフレームのブロック内への得られたＭＡＣ・ＰＤＵのカプセル化の詳細は、本発明の範囲外であるため省略する。フレームが構成されると、フレームはプロトコルスタックの低いレベル（これは本発明の範囲外である）に渡され、受信器上で実行されるプロトコルスタックの低いレベルに送信されるものと仮定する。次に、そのプロトコルユニットが再送信されるべきであるか否かが判定され、肯定された場合には、そのプロトコルユニットを再送信するためのコマンドが送信器に送り返される。
【００５２】
初回送信されるデータから構成された又は再送信されるデータから構成された個々のプロトコルユニットは、データペイロード部を有し、データペイロード部は、シーケンス番号が付された１つ以上のブロック（「シーケンス番号ブロック」）に暗黙的に分割され、各ブロックは同一の固定長を有する（但し、各プロトコルユニットの最初又は最後のシーケンス番号ブロックは、固定長より短い場合もある）。最初のシーケンス番号ブロックが唯一のシーケンス番号ブロックである場合（事実上、最後のシーケンス番号ブロックでもある）には、固定長より短いことがある。これから送信されるフレーム内のプロトコルユニット又はこれから送信される残りのデータに対して使用可能なデータ伝送容量が、固定長の整数倍ではない場合には、初回送信されるプロトコルユニットの最後のシーケンス番号ブロックは、固定長より短い。短いシーケンス番号ブロックで終わるプロトコルユニットが、１つ以上の新たなプロトコルブロック内で再送信される場合（詳細は後述する）には、新たなプロトコルブロックの最後のブロック（唯一のブロックである場合には最初のブロック）は、短いシーケンス番号ブロックになる。実際上、シーケンス番号ブロックは再送信用の「原子」単位、即ち、個別に再送信可能な最小量のデータであり、そのサイズは１バイトから最大シーケンス番号ブロックサイズまで様々であり得る。一旦、データがシーケンス番号ブロックに割当てられたら、そのデータは、再送信に際しても、そのシーケンス番号ブロックに割当てられたままである。その結果、後で確認するように、フレーム内に、再送信されるデータのキューの次のシーケンス番号ブロックに対する十分なスペースが残っていない場合には、その使用可能なスペースを用いて、前に送信されていないデータを送信し、（再送信キューの）次のシーケンス番号ブロックは、十分なスペースを有するフレームを待たなければならない。
【００５３】
個々のプロトコルユニットはヘッダー部も有し、ヘッダー部は、そのプロトコルユニットのデータペイロード部の最初のブロックのシーケンス番号を含む。ヘッダーは固定長を有する。シーケンス番号は、任意の時にデータリンクを介して送信される全てのシーケンス番号ブロックを、受信器が受信時に効果的に識別して順序付けできるように選択される。本発明のこの実施形態では、シーケンス番号ブロックには、０から２M−１（Ｍは１１である）までを含む範囲の整数のシーケンス番号が割当てられる。シーケンス番号は（再設定手順を用いてシステムが起動された際に）０から開始して昇順で割当てられ、シーケンス番号が２M−１に達すると０に戻って循環する。各プロトコルユニットは、そのプロトコルユニットのペイロード部の最初のシーケンス番号ブロックのシーケンス番号を含むヘッダー部を含み、ペイロード部は、既知の長さを有するシーケンス番号ブロックで構成されているので、受信器は、失われた又は破損した１つ以上の連続したプロトコルユニットの各ストリングの開始シーケンス番号及び終了シーケンス番号を判定できる。次に、これらの開始シーケンス番号を送信器に報告し、後述の方法で再送信することができる。
【００５４】
図７のブロック４００において、１フレーム内のＬバイトのデータ伝送容量（本明細書では「バイト」は全て８ビットバイトを意味する）が使用可能になる。（例えば、ＬはＩＰパケットの伝送に使用可能なデータ伝送容量であり得る。）次にブロック４０２で、再送信キューに何らかのシーケンス番号ブロックがあるか否かが判定される。シーケンス番号ブロックが無い場合には、ブロック４０４で、前に送られていないデータのキュー（以下「新たなデータキュー」と称する）にデータがあるか否かが判定される。データがある場合には、図７のブロック４０６において、Ｌバイト又は現在送信中のＩＰパケットの残りのバイト数のうち少ない方が待機解除され、待機解除されたバイト数がＬから引かれる。場合によっては、現在送信中のＩＰパケットの境界は無視可能であるが、そのＩＰパケットが完全に送信され、プロトコルスタックのより高いレイヤに供給可能であることを受信器が判断できるよう、拡張されたヘッダーを用いなければならない。次にブロック４０８において、そのフレームに加えられるプロトコルユニットのシーケンス番号が計算される。これが、リンクを介して送信される、起動時から数えて最初のプロトコルユニットである場合には、０が選択される。最初のプロトコルユニットではない場合には、フレームに加えられるプロトコルユニットのシーケンス番号は、構成された最後のプロトコルユニットのシーケンス番号に、構成された最後のプロトコルユニットのバイト数を固定シーケンスブロック長で割った天井関数を加えた番号である。次にブロック４１０において、フレームに加えられるべき、ここで決定されたシーケンス番号をヘッダー部に含むと共に待機解除されたデータをペイロード部に含むプロトコルユニットが構成され、フレームに加えられる。次にブロック４１２において、Ｌがテストされ、Ｌが０より大きい場合には、ブロック４０２で、再送信キューが再びチェックされ、まだ空であるか否かが確認される。空である場合には、ブロック４０４で、新たなデータキューが再びチェックされる。（ＩＰパケット境界Ｌにぶつかったために、又は、ここまでの間に新たなデータがキューに加えられたために）新たなデータキューが空ではない場合には、制御は前と同様にブロック４０６に進み、ブロック４１０において、新たなデータキューから、さらなるバイトで別のプロトコルユニットが構成される。前と同様に、ブロック４１２でＬがテストされ、Ｌが０より大きい場合には、ブロック４０２で、再送信キューが再びチェックされる。この処理は、Ｌが０になるまで繰り返され、フレーム内のスペースが再び使用可能になるまで、処理が停止する。なお、新たなデータキューがＩＰパケット境界に達した際にプロトコルユニットを終了させるのは任意であり、本発明はこれに限定されない。こうすることの唯一の理由は、プロトコルユニットがＩＰパケット境界を横断した場合には、ＩＰパケットが適切に構成されるよう、ヘッダーがこのことを受信器に伝えなければならないので、必要なヘッダーの長さを低減するためである。
【００５５】
前の段落で説明した処理中の或る時点において、ブロック４０２で、再送信キューが空ではないことがわかった場合には、ブロック４１４で、再送信キュー内の最初のシーケンス番号ブロックのバイト数が判定され、ブロック４１６で、Ｌに対してテストされる。再送信キュー内の最初のシーケンス番号ブロックのバイト数がＬより大きい場合には、前の段落で説明した処理はブロック４０４に進み、そこで新たなデータキューがチェックされ、新たなデータキューに何らかのデータがあるか否かが判定される。前と同様に、Ｌが０に達しているか又は新たなデータキューにデータが残っておらず、再送信されるデータが無いか又は次のシーケンス番号ブロックがＬより大きい場合には、別のフレーム内のスペースが再び使用可能になるまで、処理が停止する。
【００５６】
上述の処理の或る時点において、ブロック４０２で、再送信キューが空ではないことがわかり、且つ、ブロック４１６で、再送信キュー内の最初のシーケンス番号ブロックの長さがＬ以下である場合には、図７のブロック４１８において、プロトコルユニットが部分的に構成されるか否かが判定される。否定された場合には、ブロック４２０において、送信キュー内の最初のシーケンス番号ブロックが待機解除され、待機解除されたバイト数だけＬが減少され、待機解除されたシーケンス番号ブロックのシーケンス番号をヘッダー部に有すると共に待機解除されたデータをペイロード部に有する新たなプロトコルユニットが部分的に構成される。次に、ブロック４２２で再送信キューがチェックされ、再送信キューが空であるか否かが判定される。再送信キューが空である場合には、ブロック４２４で、新たなプロトコルユニットが完成されてフレームに加えられ、制御はブロック４０２における処理の開始点に戻る。再送信キューが空ではない場合には、制御はブロック４１４に戻り、そこで、再送信キュー内のこの時点で最初のシーケンス番号ブロックの長さが判定され、次にブロック４１６でＬと比較される。そのシーケンス番号ブロックの長さがＬより大きくない場合には、制御はブロック４１８に進み、そこで前と同様に、プロトコルユニットが部分的に構成されるか否かが判定される。プロトコルユニットが部分的に構成されない場合に行われる処理は、上述の通りである。プロトコルユニットが部分的に構成される場合には、ブロック４２６で、再送信キューの最初のシーケンス番号ブロックのシーケンス番号が、部分的に構成されるプロトコルユニットに加えられる最後のブロックと連続しているか否かと、部分的に構成されるプロトコルユニットに加えられる最後のブロックが固定シーケンスブロック長であるか否かとが判定される。これらの条件が真である場合には、ブロック４２８において、再送信キューの最初のシーケンス番号ブロックが待機解除されて、部分的に構成されるプロトコルユニットの最後に追加され、待機解除されたバイト数だけＬが減少される。これらの条件が真ではない場合には、ブロック４２４において、部分的に構成されるプロトコルユニットが完成されてフレームに加えられ、制御はブロック４０２における処理の開始点に戻る。
【００５７】
或る受信器の受信品質の変化又は他の原因により、その受信器に対するチャネル容量が変化すると、その受信器に送られるデータの固定シーケンスブロック長の最も望ましい値は変わり得る。しかし、同一システム内で、受信器から送られるデータに対しては、全ての状況下で一定の固定シーケンスブロック長を用いることが好ましい場合もある。以下の説明は、その場合の、受信器に送られるデータのみに適用され得る。
【００５８】
受信器へのデータ送信用のチャネル容量が変化する場合には、（１）リンク内に未配信フレームがなくなるまでデータ送信が中断され、（２）受信器は固定シーケンスブロック長の新たな値を通知され、（３）受信器が固定シーケンスブロック長の新たな値の受信を知らせた場合には、送信が再開される。本願発明者は、現在のところ、搬送ブロック容量（１フレーム内で受信器に送信可能なデータの最大量）が、固定シーケンスブロック長に「十分に近く」なるよう決定された閾値より低くなった場合、又は、新たな固定シーケンスブロック長を用いてよいほど搬送ブロック容量が増加した場合には、固定シーケンスブロック長に対して新たな値を選択することが好ましいと考えている。例えば、搬送ブロック容量が、
（１）現在の固定シーケンスブロック長を計算した時の搬送ブロック容量より大きい場合、又は、
（２）現在の固定シーケンスブロック長を計算した時の搬送ブロック容量と現在の固定シーケンスブロック長との重み付き平均（現在の固定シーケンスブロック長には、現在の固定シーケンスブロック長を計算した時の搬送ブロック容量の２倍の重みを与える）より小さい場合
には、新たな固定シーケンスブロック長を計算してもよい。
【００５９】
或いは、搬送ブロック容量が、現在の固定シーケンスブロック長の（１＋β）倍より大きい場合、又は、現在の固定シーケンスブロック長の［１／（１−α）］倍より小さい場合には、新たな固定シーケンスブロック長を計算してもよい（αは０．３３に設定され、０．１〜０．５の範囲内であってもよく、βは１．０に設定され、１．０〜２．０の範囲内であってもよい）。
【００６０】
新たな固定シーケンスブロック長は、以下の方法で決定してよい。固定シーケンスブロック長は、搬送ブロック容量より大きくなり得ないことは明らかである。その上、シーケンス番号ブロックに割当て可能な（所与のシーケンス番号スペースに対する）シーケンス番号の数には限りがあるという制約がある。シーケンス番号が足りなくなった場合には、シーケンス番号が再使用可能になるまで、更なる送信を待たなければならない。当業者はこれを「ａｃｋクロック制御（ack-clocked）」と称し、受信器からの確認応答（ａｃｋ）が受信される速度によって送信速度が制限されることを意味する。所与のシーケンス番号スペースに対して、送信器がａｃｋクロック制御されるか否かは、送信器と受信器との間で送信されるデータの合計量である帯域幅遅延積に依存する。帯域幅遅延積がＸバイトであり、Ｙ個の可能なシーケンス番号が存在する場合には、シーケンス番号ブロックはＸ／Ｙより小さくならないべきであり、さもなくば、ａｃｋクロッキングを回避するのに十分なシーケンス番号がなくなる。よって、Ｘ／Ｙは、所与のシーケンス番号スペースに対する最小固定シーケンスブロック長である。
【００６１】
シーケンス番号スペースが大きくなると、プロトコルユニットのヘッダー内に、最初のシーケンス番号ブロックのシーケンス番号のための、より大きなスペースが必要になるので、シーケンス番号スペースを可能な限り小さく保ち、固定シーケンスブロック長が搬送ブロック容量より大きくならないことを条件として、固定シーケンスブロック長を増加させることにより、プロトコルユニットのペイロード部に含まれるデータを送信可能なピーク速度（以下、データ送信速度と呼ぶ）を増加させることができる。しかし、動作中に帯域幅遅延積が変化する可能性を考慮しなければならない。
【００６２】
まず、データ送信速度が最大化される場合の、固定シーケンスブロック長の絶対的な最適選択を考える。これは、帯域幅遅延積が一定であると仮定し得る場合に達成され得る。この場合、固定シーケンスブロック長は、搬送ブロック容量と等しく設定でき、帯域幅遅延積を固定シーケンスブロック長で割った値に基づいてシーケンス番号スペースを設定できる。固定シーケンスブロック長及びシーケンス番号スペースをこのように選択すると、帯域幅遅延積が低下した場合に、シーケンス番号ブロックが部分的に送信され、必要なシーケンス番号スペースが増加し、ａｃｋクロッキングを生じるので、この選択は勧められない。更に悪いことに、帯域幅遅延積が低下した際に、再送信キューに固定シーケンスブロック長のシーケンス番号ブロックがある場合には、固定シーケンスブロック長が再設定されるまで、再送信キューがブロックされ、実際上、チャネルを介した全ての送信がブロックされる。これらは全て、データ送信速度に悪影響を与える。一方、固定シーケンスブロック長を最小に設定した場合にも、シーケンス番号スペース及びそれに従ってヘッダーを必要以上に大きくしなければならないので、データ送信速度が低下する。最小より大きく且つ搬送ブロック容量より小さい何らかの固定シーケンスブロック長が望ましいと思われる。
【００６３】
上記のジレンマに対する１つの解決法は、通常条件下で帯域幅遅延積にどの程度の変動が生じそうであるかを考慮することである。通常条件下で予測され得る最も低い帯域幅遅延積で、固定シーケンスブロック長が搬送ブロック容量に設定されると仮定すると、シーケンス番号スペースは、その固定シーケンスブロック長を仮定して、通常条件下で予測され得る最良の状態の帯域幅遅延積に基づいて計算される。その結果、固定シーケンスブロック長は、最良の状態で必要な最小値より大きくなるが、シーケンス番号スペースは、生じ得る最も高い帯域幅遅延積を扱うのに十分に大きくなる。
【００６４】
本発明のこの実施形態では、ヘッダーをオクテットの境界で終わらせることや、生じ得る様々な状況におけるアップリンク送信及びダウンリンク送信のための十分に大きいシーケンス番号スペース等といった、上述の問題点及び他のファクターを考慮して、シーケンス番号スペースを最初に固定する。シーケンス番号スペースを固定したら、通常条件下で予測され得る最も低い帯域幅遅延積に基づいて固定シーケンスブロック長を設定し、シーケンス番号スペースをチェックして通常条件下で予測され得る最も高い帯域幅遅延積においてａｃｋクロッキングが生じないことを確認する。シーケンス番号スペースは必要に応じて再調整される。一旦シーケンス番号スペースが選択されたら、シーケンス番号スペースは固定されたままになり、搬送ブロック容量が変化した場合には、固定シーケンスブロック長のみが調節される。上述のように、本発明の現在の実施形態におけるシーケンス番号スペースは、０から２M−１までを含む（Ｍは１１である）。
【００６５】
上述の本発明の実施形態は、本発明の一例であることが意図される。添付の特許請求の範囲のみによって定義される本発明の範囲を逸脱することなく、当業者による変更及び修正が行われ得る。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施形態によるＡＲＱを提供するシステム及び方法が提供され得る例示的なネットワークの模式図である。
【図２】図１に示されている基地局の模式図である。
【図３】図１に示されている加入者局の模式図である。
【図４】図４ａ、図４ｂ及び図４ｃは、３通りの異なる拡散率における、図１に示されているネットワークを介して送信されるデータブロックのフレームの模式図である。
【図５】図４ａのフレーム内のブロックの模式図である。
【図６】図５のブロックを構成する方法のフローチャートである。
【図７】送信されるフレームのデータ伝送容量が変動し得る場合に、図１に示されているネットワークにおいてＡＲＱが提供され得る方法を示すフローチャートである。
【図１】
2005535172.tif 000003
【図２】
2005535172.tif 000004
【図３】
2005535172.tif 000005
2005535172.tif 000006
【図５】
2005535172.tif 000007
【図６】
2005535172.tif 000008
【図７】
2005535172.tif 000009
【国際調査報告】
2005535172.tif 000010
2005535172.tif 000011
2005535172.tif 000012