(57)【要約】第１のプロトコル層（Ｌ３）のデータ・ユニットを処理する方法であって、第１のプロトコル層（Ｌ３）の伝送される所定のデータ・ユニットを第２のプロトコル層（Ｌ２）に送るステップであり、第２のプロトコル層（Ｌ２）は、第１のプロトコル層（Ｌ３）の下にあるステップと、第１のプロトコル層（Ｌ３）の所定のデータ・ユニットに関する数値的に定量化されるパラメータの数値を決定するステップと、第１のプロトコル層（Ｌ３）の所定のデータ・ユニットを第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットに埋め込むステップと、第１のプロトコル層（Ｌ３）の所定のデータ・ユニットを埋め込んだ第２プロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットのための伝送制御を実行するステップとを含む方法であり、組み込みおよび／または伝送制御は、数値的に定量化されるパラメータの数値に応じて実行されることを特徴とする方法である。
2004529587.tif 000002
【特許請求の範囲】
【請求項１】
データ・ユニットに基づく通信システムにおける伝送のために第１のプロトコル層（Ｌ３）のデータ・ユニットを処理する方法であって、
前記第１のプロトコル層（Ｌ３）の伝送されるべき所定のデータ・ユニットを、第２のプロトコル層（Ｌ２）に送るステップであり、前記第２のプロトコル層（Ｌ２）は、前記第１のプロトコル層（Ｌ３）の下にあるステップと、
１つあるいはそれ以上の数の数値を決定するステップであり、前記１つあるいはそれ以上の数の数値は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットに関する少なくとも１つの数値的に定量化されるパラメータに属するステップと、
前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットを前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットに埋め込むステップと、
前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットを埋め込んだ前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットのための伝送制御を実行するステップとを含み、
前記少なくとも１つの数値的に定量化されるパラメータの前記１つあるいはそれ以上の数の数値に応じて、前記組み込みおよび／または前記伝送制御が実行されることを特徴とする前記方法。
【請求項２】
請求項１記載の方法において、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットの長さであることを特徴とする前記方法。
【請求項３】
請求項１または２記載の方法において、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）あるいは前記第２のプロトコル層（Ｌ２）のバッファ保持データ・ユニットのバッファ充足度に関連したものであることを特徴とする前記方法。
【請求項４】
請求項１から３のいずれかに記載の方法において、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間であることを特徴とする前記方法。
【請求項５】
請求項１から４のいずれかに記載の方法は、さらに、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットが属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットのグループを判別するステップを含むことを特徴とする前記方法。
【請求項６】
請求項５記載の方法において、前記グループは、前記第１のプロトコル層（Ｌ３）の前記データ・ユニットに含まれる送り元情報および／または宛先情報および／またはプロトコル識別子に基づいて判別されることを特徴とする前記方法。
【請求項７】
請求項５または６記載の方法において、前記第１の一プロトコル層（Ｌ３）の前記所定のデータ・ユニットを埋め込んだ前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットのための伝送制御は、前記判定ステップの結果に応じて実行されることを特徴とする前記方法。
【請求項８】
請求項５または６記載の方法において、前記数値は、前記判別ステップの結果に基づいて決定されることを特徴とする前記方法。
【請求項９】
請求項８記載の方法において、前記数値的に定量化されるパラメータは、前記第２のプロトコル層（Ｌ２）のバッファ保持データ・ユニットのバッファ充足度に関連したものであり、前記数値的に定量化されるパラメータは、前記グループの属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットを埋め込んだ前記バッファ中の前記第２のプロトコル層（Ｌ２）の前記ユニットの数であることを特徴とする前記方法。
【請求項１０】
請求項８記載の方法において、数値的に定量化されるパラメータは、前記グループに所属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間であることを特徴とする前記方法。
【請求項１１】
請求項１から１０のいずれかに記載の方法において、前記伝送制御は、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットあるいは前記第２のプロトコル層（Ｌ２）の下の前記第３のプロトコル層（Ｌ１）のデータ・ユニットのための前進型誤信号訂正を調節することを含むことを特徴とする前記方法。
【請求項１２】
請求項１１記載の方法において、関数（ＲＬＣ）は、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットのリンク上への送信を制御し、前記伝送制御は、伝送出力および／または前記無線リンク上のデータ・レートおよび／またはインターリービングの度合いを調節することを特徴とする前記方法。
【請求項１３】
請求項１から１２のいずれかに記載の方法において、前記第２のプロトコル層（Ｌ２）は、あらかじめ定められた条件のもとで、前記第２のプロトコル層（Ｌ２）のデータ・ユニットの自動再送を提供する機能を含み、前記伝送制御は、前記再送機能を調節することを含むことを特徴とする前記方法。
【請求項１４】
請求項１から１３のいずれかに記載の方法において、前記第２のプロトコル層（Ｌ２）は、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットをスケジューリングする機能（ＭＡＣ）を含み、前記伝送制御は、前記スケジューリングを調節することを含むことを特徴とする前記方法。
【請求項１５】
請求項１から１４のいずれかに記載の方法において、前記組み込みは、前記第１のプロトコル層（Ｌ３）のデータ・ユニットのセグメント化操作を含み、前記伝送制御は、前記セグメント化操作を調節することを含むこと特徴とする前記方法。
【請求項１６】
請求項１５記載の方法において、前記セグメント化操作の調節は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットがセグメント化されて埋め込まれた前記第２のプロトコル層（Ｌ２）のデータ・ユニットの長さを調節することを含むことを特徴とする前記方法。
【請求項１７】
請求項１から１６のいずれかに記載の方法において、前記伝送制御は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットが前記数値に応じて埋め込まれた前記第２のプロトコル層（Ｌ２）の前記１つあるいはそれ以上の数のデータ・ユニットを判別することと、前記第２のプロトコル層（Ｌ２）の前記１つあるいはそれ以上の数のデータ・ユニットの各々を前記判別結果に基づいて予め定められた複数の伝送カテゴリの１つに割り当てることを含むことを特徴とする前記方法。
【請求項１８】
請求項１から１７のいずれかに記載の方法を実行するように構成されたコンピュータ・プログラム。
【請求項１９】
請求項１８によるコンピュータ・プログラムを格納するコンピュータ・プログラム格納媒体。
【請求項２０】
第１のプロトコル層（Ｌ３）と第２のプロトコル層（Ｌ２）の実装を含むデータ・ユニットに基づく通信システムであって、前記第１のプロトコル層（Ｌ３）は、前記第２のプロトコル層（Ｌ２）の上に置かれ、前記システムは、第１のプロトコル層（Ｌ３）の伝送されるべき所定のデータ・ユニットを前記第２のプロトコル層（Ｌ２）に送り、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）の前記所定データ・ユニットに関する少なくとも１つの数値的に定量化されるパラメータに属する１つあるいはそれ以上の数の数値を決定し、前記第１のプロトコル層（Ｌ３）の前記所定データ・ユニットを前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットに埋め込み、少なくとも１つの数値的に定量化されるパラメータの１つあるいはそれ以上の数の数値に応じて、前記第１のプロトコル層（Ｌ３）の前記所定データ・ユニットを埋め込んだ前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットのための伝送制御を実行するように構成されたことを特徴とする前記システム。
【請求項２１】
請求項２０記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットの長さであることを特徴とする前記システム。
【請求項２２】
請求項２０または２１記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）あるいは前記第２のプロトコル層（Ｌ２）のバッファ保持データ・ユニットのバッファ充足度に関連したものであることを特徴とする前記システム。
【請求項２３】
請求項２０から２２のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間であることを特徴とする前記システム。
【請求項２４】
請求項２０から２３のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットが属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットのグループを判別するように構成されたことを特徴とする前記システム。
【請求項２５】
請求項２４記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）の前記データ・ユニットに含まれる送り元情報および／または宛先情報および／またはプロトコル識別子に基づいて前記グループを判別するように構成されたことを特徴とする前記システム。
【請求項２６】
請求項２４または２５記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットを埋め込んだ前記第２のプロトコル層（Ｌ２）の１つあるいはそれ以上の数のデータ・ユニットのための伝送制御を前記判定ステップの結果に応じて実行することを特徴とする前記システム。
【請求項２７】
請求項２４または２５記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記数値を前記判別ステップの結果に基づいて決定することを特徴とする前記システム。
【請求項２８】
請求項２７記載のデータ・ユニットに基づく通信システムであって、前記第２のプロトコル層（Ｌ２）のデータ・ユニットを保持するバッファを含むシステムであって、前記数値的に定量化されるパラメータは、前記グループの属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットを埋め込んだ前記バッファ中の前記第２のプロトコル層（Ｌ２）のデータ・ユニットの数であることを特徴とする前記システム。
【請求項２９】
請求項２７記載のデータ・ユニットに基づく通信システムであって、前記グループの属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間を測定するタイマを含むシステムであって、前記数値的に定量化されるパラメータは、前記グループに所属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間であることを特徴とする前記システム。
【請求項３０】
請求項２０から２９のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記伝送制御は、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットあるいは前記第２のプロトコル層（Ｌ２）の下の前記第３のプロトコル層（Ｌ１）のデータ・ユニットのための前進型誤信号訂正を調節することを含むことを特徴とする前記システム。
【請求項３１】
請求項３０記載のデータ・ユニットに基づく通信システムは、さらに、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットのリンク上への送信を制御し、前記伝送制御は、伝送出力および／または前記無線リンク上のデータ・レートおよび／またはインターリービングの度合いを調節する関数（ＲＬＣ）を含むことを特徴とする前記システム。
【請求項３２】
請求項２０から３１のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、あらかじめ定められた条件のもとで前記第２のプロトコル層（Ｌ２）のデータ・ユニットの自動再送を提供する機能を含み、前記伝送制御は、前記再送機能を調節することを含むことを特徴とする前記システム。
【請求項３３】
請求項２０から３２のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットをスケジューリングする機能（ＭＡＣ）を含み、前記伝送制御は、前記スケジューリングを調節することを含むことを特徴とする前記システム。
【請求項３４】
請求項２０から３３のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）のデータ・ユニットのセグメント化操作を実行するように構成され、前記伝送制御は、前記セグメント化操作を調節することを含むこと特徴とする前記システム。
【請求項３５】
請求項３４記載のデータ・ユニットに基づく通信システムにおいて、前記セグメント化操作の調節は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットがセグメント化されて埋め込まれた前記第２のプロトコル層（Ｌ２）のデータ・ユニットの長さを調節することを含むことを特徴とする前記システム。
【請求項３６】
請求項２０から３５のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記伝送制御は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットが前記数値に応じて埋め込まれた前記第２のプロトコル層（Ｌ２）の前記１つあるいはそれ以上の数のデータ・ユニットを判別することと、前記第２のプロトコル層（Ｌ２）の前記１つあるいはそれ以上の数のデータ・ユニットの各々を、前記判別結果に基づいて、あらかじめ定められた複数の伝送カテゴリーの１つに割り当てることを含むことを特徴とする前記システム。
【請求項３７】
請求項２０から３５のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記システムは、移動通信装置に含まれることを特徴とする前記システム。
【請求項３８】
請求項３７記載のデータ・ユニットに基づく通信システムにおいて、前記移動通信装置は、汎用携帯電話システム（ＵＭＴＳ）の規格に従って動作することを特徴とする前記システム。
【請求項３９】
データ・ユニットに基づく通信システムにおける伝送のために、第１のプロトコル層（Ｌ３）のデータ・ユニットを処理する方法であって、
前記第１のプロトコル層（Ｌ３）の伝送されるべき所定のデータ・ユニットを第２のプロトコル層（Ｌ２）に送るステップであり、前記第２のプロトコル層（Ｌ２）は、前記第１のプロトコル層（Ｌ３）の下にあるステップと、
前記第１のプロトコル層（Ｌ３）の前記データ・ユニットと、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットが埋め込まれた前記第２のプロトコル層の１つあるいはそれ以上の数のデータ・ユニットとの一方あるいは両方に対してバッファ処理（Ｓ６、Ｓ７）を実行するステップと、
１つあるいはそれ以上の数のあらかじめ定められた起動条件が満たされた場合にバッファに保持されたデータ・ユニットのための輻輳緩和処理（Ｓ９）を実行するステップとを含み、
前記輻輳緩和処理（Ｓ９）は、バッファに保持され対象となるデータ・ユニットに関して輻輳緩和処理を実行するべきか否かを判定するステップ（Ｓ９２）を含み、判定ステップは、前記第１のプロトコル層（Ｌ３）の所定のデータ・ユニットに関する前記少なくとも１つの数値的に定量化されるパラメータに属する少なくとも１つあるいはそれ以上の数の数値に応じてなされるものであり、対象とするデータ・ユニットが前記第１のプロトコル層（Ｌ３）のデータ・ユニットであれば、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットは、対象とするデータ・ユニットであり、対象とするデータ・ユニットが前記第２のプロトコル層（Ｌ２）のデータ・ユニットであれば、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットは、対象とする前記データ・ユニットに組み込まれた前記第１のプロトコル層（Ｌ３）のデータ・ユニットであることを特徴とする前記方法。
【請求項４０】
請求項３９記載の方法において、前記輻輳緩和処理は、対象とする前記バッファ処理されたデータ・ユニットを間引くためのデータ・ユニット間引き処理および／または前記第１のプロトコル層（Ｌ３）の前記所定データ・ユニットにマークを付加するためのデータ・ユニットマーク付け処理を含むことを特徴とする前記方法。
【請求項４１】
請求項３９または４０記載の方法において、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットの長さであることを特徴とする前記方法。
【請求項４２】
請求項４１記載の方法において、前記判定ステップ（Ｓ９２）は、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットの長さを予め定められた閾値（Ｔｈ）と比較することと、閾値を越える場合には、対象となるデータ・ユニットに対して輻輳緩和手段を実行することを含むことを特徴とする前記方法。
【請求項４３】
請求項３９から４２のいずれかに記載の方法において、前記少なくとも１つの数値的に定量化されるパラメータは、前記第１のプロトコル層（Ｌ３）のデータ・ユニットの到着間隔時間であることを特徴とする前記方法。
【請求項４４】
請求項３９から４３のいずれかに記載の方法は、さらに、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットが属する前記第１のプロトコル層（Ｌ３）のデータ・ユニットのグループを判別するステップを含むことを特徴とする前記方法。
【請求項４５】
請求項４４記載の方法において、前記グループは、前記第１のプロトコル層（Ｌ３）の前記データ・ユニットに含まれる送り元情報および／または宛先情報および／またはプロトコル識別子に基づいて判別されることを特徴とする前記方法。
【請求項４６】
請求項４４または４５記載の方法において、前記輻輳緩和手順の前記決定ステップは、前記判定ステップの結果に応じてなされることも特徴とする前記方法。
【請求項４７】
請求項４６記載の方法において、前記グループは、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットのプロトコル識別子に基づき判別され、前記決定ステップは、輻輳緩和手段が、対象とするデータ・ユニットの間引き処理を含むか、あるいは前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットへのマーク付けを含むかを決定することを含み、プロトコル識別子が予め定められたカテゴリに属する場合には、対象とするデータ・ユニットを間引きすることを特徴とする前記方法。
【請求項４８】
第１のプロトコル層（Ｌ３）と第２のプロトコル層（Ｌ２）の実装を含むデータ・ユニットに基づく通信システムであって、前記第１のプロトコル層（Ｌ３）は、前記第２のプロトコル層（Ｌ２）の上に置かれ、前記システムは、第１のプロトコル層（Ｌ３）の伝送されるべき所定のデータ・ユニットを前記第２のプロトコル層（Ｌ２）に送り、前記第２のプロトコル層（Ｌ２）の前記実装は、前記第１のプロトコル層（Ｌ３）の前記データ・ユニットと、前記第２のプロトコル層（Ｌ２）の前記データ・ユニットが埋め込まれた前記第２のプロトコル層の１つあるいはそれ以上の数のデータ・ユニットとの一方あるいは両方に対してバッファ保持するバッファ（１０１、１０４）と、前記バッファ（１０１、１０４）に接続されて、１つあるいはそれ以上の数の予め定められた開始条件が満たされた場合にバッファ保持されたデータ・ユニットに対する輻輳緩和処理（Ｓ９）を実行するコントローラ（１０２）を含むことを特徴とするシステムであって、
前記輻輳処理（Ｓ９）は、バッファに保持され対象となるデータ・ユニットに関して輻輳緩和処理を実行するか否かを判定するステップ（Ｓ９２）を含み、判定ステップは、前記第１のプロトコル層（Ｌ３）の所定のデータ・ユニットに関する前記少なくとも１つの数値的に定量化されるパラメータに属する少なくとも１つあるいはそれ以上の数の数値に応じてなされるものであり、対象とするデータ・ユニットが前記第１のプロトコル層（Ｌ３）のデータ・ユニットであるとき、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットは、対象とするデータ・ユニットであり、対象とするデータ・ユニットが前記第２のプロトコル層（Ｌ２）のデータ・ユニットであるとき、前記第１のプロトコル層（Ｌ３）の前記所定のデータ・ユニットは、対象とする前記データ・ユニットに組み込まれた前記第１のプロトコル層（Ｌ３）のデータ・ユニットであることを特徴とする前記システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ・ユニットに基づく通信システムにおいて、データ・ユニットを処理する方法に関し、また、その対応するデータ・ユニットに基づく通信システムに関するものである。
【背景技術】
【０００２】
ネットワーク上でのデータ交換に関してよく知られている原理は、データ・ユニット交換の原理である。これは、送信しようとするデータを個々のユニットに分割することを意味している。これらのユニットを送信、受信するルールは、ユニット自身の構成法に関するルールとともに、いわゆるプロトコルによって規定されている。プロトコルは、送信端と受信端の間で通信ができるようにする一群のルールであり、これらのルールは、送るべきデータを、どのように、またどのような形式で準備しておくかを指定するものであり、これにより、通信しあう両者が尊守するルールを定義したプロトコルに従って、受信端がデータを解釈して応答できるものとなる。特定のプロトコルを尊守しながら通信しあう両端のことは、ピア（端局）とも呼ばれる。
【０００３】
これらのデータ・ユニットは、用いられるプロトコルの種類によって、パケット、フレーム、セグメント、データ・グラムなどの異なる名前で呼ばれることが多い。明瞭に理解できるよう、以下の説明では、任意の種類のプロトコルについて任意の種類のデータ・ユニットを一般的に指すために、「データ・ユニット」という用語を使用する。
【０００４】
データ・ユニット交換を用いた通信での重要な考え方は、プロトコル階層化の考え方である。これは、（よく、スイートと呼ばれる）複数のプロトコルが階層状に編成されることを意味しており、ここでは、各層は、特定の機能と役割をもっている。階層化の考え方は、従来からよく知られており、多くの参考書に記載されている。例えば、ダブリュー、リチャード・スティーブンス著、アディソン・ウェズレー出版社、１９９４年発行「図解ＴＣＰ／ＩＰ,第一巻、プロトコル」があるが、ここでは、詳細を説明することはしない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＴＣＰ／ＩＰプロトコル・スイートは、階層化されたプロトコル階層の一例である。ＴＣＰ／ＩＰの基本的な構成は、ＯＳＩ（開放型システム間相互接続）層モデルによって定義されている。最下層は、物理層あるいはＬ１と呼ばれ、そこでは、物理的な接続を介した直接的なデータ転送が取り扱われる。物理層の上には、リンク層とも呼ばれる第２の層Ｌ２が設けられている。リンク層Ｌ２は、通信ノード間のリンクを介したデータ・ユニットの転送を扱う機能を果たす。リンク層Ｌ２の上には、第３の層Ｌ３が設けられており、これはネットワーク層とも呼ばれる。ネットワーク層は、所定のネットワーク上でのデータ・ユニットのルーティングを扱う。ネットワーク層プロトコルの一例は、インターネット・プロトコル（ＩＰ）である。ネットワーク層の上には、第４の層Ｌ４が設けられており、これは、トランスポート層とも呼ばれる。トランスポート層プロトコルの一例としては、伝送制御プロトコル（ＴＣＰ）あるいは、ユーザ・データ・グラム・プロトコル（ＵＤＰ）がある。
【０００６】
プロトコル層の階層を用いた、データ・ユニットに基づく通信システムでは、通信は、プロトコル階層の下に向かって、送信側から所定のデータ・ユニットを送る処理と、プロトコル階層の上に向かって、受信側に向けてデータ・ユニットを送る処理を含んでいる。データ・ユニットが下向きに送られるときには、各プロトコルは、通常、そのデータ・ユニットに対して、例えば、情報を付加してゆき、各プロトコル層の特定のルールに対してデータ・ユニットの構造を変化させ適応させてゆく。通常、各プロトコル層は、上位プロトコル層から受信したデータ・ユニットに、その層自身のヘッダを付加し、さらに、区切り記号を付加する。特定のプロトコル層が上位プロトコル層からデータ・ユニットを受信する際には、上位層データ・ユニットを上位のプロトコル層のルールに従ったデータ・ユニットに埋め込む。この「埋め込み」という用語は、上位層の１つのデータ・ユニットが所定の層の１つのデータの中に入れられるカプセル化と、上位層の１つのデータ・ユニットが所定の層の複数のデータ・ユニットの中に分割されるセグメント化の両方を指している。
【０００７】
層形成の手順の重要なポイントは、異なる層が互いに「透けて見えないもの」であるということにある。すなわち、ある層の端局同士は、他の層で起きていることに気づかないのである。
【０００８】
通常、各プロトコル層は、そのデータ・ユニットに対して、なにがしかの種類の伝送制御を行うことになっている。この伝送制御には、例えば、ある種類の前進型誤信号訂正の実行、自動再送要求（ＡＲＱ）機能についてのパラメータの設定、データ・ユニットのスケジューリングあるいは比較処理の実行が含まれている。
【０００９】
伝送制御に関しては、プロトコル層が特定のモードで動作するようにプロトコル層を実装する方法が知られている。例としては、いわゆる、番号付きモード（Ｉモード）と番号なしモード（ＵＩモード）が知られている。番号付きモードでは、送り出したデータ・ユニットが受信側の端局において正しく受信されなかったと判断された場合、送信側の端局は、前記データ・ユニットの再送を行う。このように、この再送によって、どれほどの量のパケットを伝送しなければならないかに応じて、遅延が発生したとしても、全てのパケットが正確に伝送されることを保証できる。一方、番号なしモードでは、再送は行われない。これには、遅延が少ないという利点があるが、伝送の信頼性は、物理的なコネクションの品質に依存する。
【００１０】
特定の伝送制御モードに所定のプロトコル層を実装することにより、上位プロトコル層からのデータ送出を最適化するために、その上位プロトコル層からの制御手順によって、モードの選択が可能となるという利点を持っている。しかし、これには、あまり柔軟性はない。その理由は、所定のプロトコル層は、通常、異なる種類の様々なデータ・ユニットを扱っていて、所定のデータ・タイプの種類の送出を最適化するためには、異なる制御設定が必要となるためである。一例としては、アプリケーション層がコンピュータ・ファイルを送る際には、信頼できる伝送が望まれ、そのために、下位層プロトコルの実装を数字付きモードに設定しようとする場合がある、あるいはアプリケーション層がテレビ電話に用いられるビデオ・ストリームのようなリアルタイム伝送を必要とするデータを送ることが必要となった際には、信頼性よりも伝送速度が重視される場合があり、アプリケーション層は、下位層プロトコル実装を番号なしモードに設定しようとする。しかし、コンピュータ・ファイル・データとビデオ・データの両方を送る場合には、下位層プロトコル実装を所定の伝送モードに設定することは、最適な解をもたらすものにはならない。
【００１１】
ＥＰ−０９７３３０２Ａ１記載のものは、この問題を提起し、あるシステムを提案している。そのシステムでは、上位データ・ユニット層を受信して、これらの上位データ層を前記所定の層のデータ・ユニットに埋め込む所定のプロトコル層は、ヘッダ情報を読み込み、上位層データ・ユニットの種類を決定することにより、上位層データ・ユニットを判別するように構成されている。次に、識別された種類に応じて、分類を行う。このようにして、所定のプロトコル層は、そのデータ・ユニット自身に埋め込まれた上位層データ・ユニットの種類に応じて、そのデータ・ユニットの伝送信頼性を柔軟に設定することができる。一例として、ＥＰ−０９７３３０２Ａ１記載のシステムをＴＣＰ／ＩＰスイートのリンク層に適用した場合、リンク層は、その層が受信したネットワーク層ＩＰデータ・ユニットがＴＣＰデータ・ユニットを運んでいるかどうかを識別することができる。この場合、リンク層データ・ユニットは、番号付きモードで送られる。一方、ネットワーク層ＩＰデータ・ユニットがＵＤＰデータ・ユニットを運ぶ場合には、リンク層データ・ユニットは、番号なしモードで送られる。
【００１２】
しかし、ＥＰ−０９７３３０２Ａ１記載のシステムは、必ずしも実用的なものであるとはいえない。その理由は、種類に関する情報を識別するために、上位層データ・ユニットを構文解析する必要があるためであり、この構文解析は、例えば、上位層データ・ユニットが暗号化されたヘッダおよび／または本体データを有している場合には、役にたたないものである。
【課題を解決するための手段】
【００１３】
所定のプロトコル層において、より上位のプロトコル層のデータ・ユニットを処理する改良した方法およびシステムを提供することが望まれており、この方法とシステムは、簡単に実装ができるが、改良された伝送特性を柔軟に提供するものである。
【００１４】
上記の目的は、独立した請求項の主題によって達成されるものである。その有利な実施例は、従属項にて説明される。
【００１５】
本発明の実施例によれば、例えば、リンク層Ｌ２のような所定のプロトコル層において、例えば、ネットワーク層Ｌ３のような上位のプロトコル層で受信された所定のデータ・ユニットに関する、１つあるいはそれ以上の数の数値的に定量化されるパラメータの１つあるいはそれ以上の数の値が決定される。すなわち、数値的に定量化される１つのパラメータの１つの値を決定することができるか、数値的に定量化される１つのパラメータの複数の値が決定できるか、もしくは数値的に定量化される複数のパラメータの中の１つの各々の値の１つあるいはそれ以上の数の値が決定することができる。少なくとも１つの数値は、上位プロトコル層の所定のデータ・ユニットに含まれる情報からは求められることはない。すなわち、上位プロトコル層のデータ・ユニットの内容を分析する代わりに、数値的に評価される１つあるいはそれ以上の数の単純な物理的な特性を測定し、決定された値に応じて、埋め込みおよび／または伝送制御が行われる。その結果、上位層のデータ・ユニットのパーシング、あるいは他の同様の複雑な処理が不要となる。
【００１６】
数値的に定量化されるパラメータとしては、上位層データ・ユニットの長さを一例としてあげることができる。すなわち、例えば、Ｌ２などの所定のプロトコル層において、例えば、上位層であるＬ３層のデータ・ユニットが受信され、前記Ｌ３層データ・ユニットの長さが測定される。次に、前記の長さ測定の結果に応じて、前記Ｌ３データ・ユニットを１つあるいはそれ以上の数のＬ２データ・ユニットに埋め込むための埋め込み処理あるいは前記Ｌ３データ・ユニットが埋め込まれた１つあるいはそれ以上の数のＬ２データ・ユニットを伝送する伝送制御処理を実行する。
【００１７】
好ましくは、予め決定された特性を最適化するために伝送制御を調整する基礎段階として、長さ測定を用いることができる。より明確に言うと、Ｌ３データ・ユニットが予め決定された長さの許容範囲に納まっている場合には、スループットを最適化するためのパラメータとともに、Ｌ２データ・ユニットを伝送する。すなわち、Ｌ３データ・ユニットがＴＣＰデータ・ユニットを伝送する場合、Ｌ３データ・ユニットがＴＣＰの最大セグメント長の近傍の範囲に納まるか、それに等しい最大長さを表すデータ長をもっていると判断されたならば、上記Ｌ３層から伝送されているより大量のデータに最大長のＬ３データ・ユニットが属するものとして、その伝送スループットに関して最適化される。一方、Ｌ３データ・ユニットがより短いデータ長をもっている場合には、Ｌ３データ・ユニットは、同期メッセージあるいは肯定応答メッセージのような制御処理に関するものであると判断され、伝送制御は、遅延に関して最適化される。この場合、遅延に関する最適化の方がスループットに関する最適化よりも好ましい。
【００１８】
本発明において数値的に定量化されるパラメータの他の例としては、（例えば、Ｌ３のような）上位プロトコル層のバッファ保持データ・ユニットあるいは上位層データ・ユニットを受信する（例えば、Ｌ２のような）プロトコル層のバッファ保持データ・ユニットのバッファ充足レベルがあげられる。さらに、数値的に定量化されるパラメータの他の例としては、上位層データ・ユニットの到着間隔時間、すなわち、２つの連続した上位層データ・ユニットが到着するタイミングの間隔があげられる。
【００１９】
数値的に定量化されるこれらのパラメータの例の各々は、埋め込みおよび／または伝送制御を行う際に用いられる１つあるいはそれ以上の数の値を与える基礎データとして単独で用いることもできるし、埋め込みおよび／または伝送制御を行う際に用いられるこれらの値を与える数値的に定量化される指定されたパラメータの１つあるいはそれ以上の数のものと共に用いることもできる。
【００２０】
一実施例によれば、本発明を応用した方法は、上位層データが属する上位プロトコル層のデータ・ユニットの一群を識別するステップを含むものである。この判別は、上位層データ・ユニットの送信元情報および／または宛先情報、および／または上位層データ・ユニットのプロトコル識別子に基づいて行われる。特に、本実施例をＴＣＰ／ＩＰプロトコルに適用した場合には、判別は、上位層データ・ユニットが属するフローを決定する処理にあるものとすることができる。このフローは、送信元と宛先のＩＰアドレスによって定義され、送信元と宛先のポート番号とプロトコル識別子である。
【００２１】
前記の判別の結果は、上位データ・ユニット層を埋め込むデータ・ユニットのための伝送制御処理に用いることができる。さらに、特定すると、上位層データ・ユニットの長さを最大データ・ユニット長を示す参照範囲あるいは参照値と比較する上記の例では、上位層データ・ユニットの種類を考慮することにより、この比較を拡張することができる。すなわち、上位層データ・ユニットの種類（あるいは、上位層データ・ユニットに含まれるデータ・ユニットの種類）は、上位層データ・ユニットの長さを比較する対象となる参照範囲あるいは参照値を決定する手段として用いることができる。例えば、上位層データ・ユニットが、第１の種類のもの（すなわち、予め定められた第１のグループ）であると判別された場合には、前記上位層データ・ユニットの長さは、長さに関する第１の参照値（あるいは、長さに関する複数の参照値の第１の組、すなわち、ある範囲に広がる離散値の組、あるいは、連続した値の第１の範囲）と比較される。これに対し、上位層データ・ユニットが第２の種類のもの（すなわち、予め定められた第２のグループ）であると判別された場合には、前記上位層データ・ユニットの長さは、長さに関する第２の参照値（あるいは、長さに関する複数の参照値の第２の組、あるいは連続した値の第２の範囲）と比較される。
【００２２】
一方、前記識別処理の結果は、数値を決定するための数値的に定量化されたパラメータを決定するベースとしても用いられる。すなわち、数値的に定量化されたパラメータは、下位のプロトコル層のバッファに保持されたデータ・ユニットのバッファ充足度に関連づけることができ、ここで、数値は、判別されたグループに所属する、例えば、判別されたフローに所属する上位プロトコル層のデータ・ユニットを取り込んだバッファ中の下位プロトコル層（例えば、Ｌ２）のデータ・ユニットの数である。同様に、上位層データ・ユニットの到着間隔時間を、数値的に定量化できるパラメータとして用いる際には、判別した組に所属するこれらの上位層データ・ユニットの到着間隔時間として、その数値を選ぶことができる。後者の場合、すなわち、ある組に所属するデータ・ユニットの到着間隔時間を決定する際には、例えば、所定の長さのカテゴリに含まれる組のデータ・ユニットの到着間隔時間を決定するために、さらに条件を追加することが可能である。例えば、組の種類がフローであり、長さのカテゴリが、肯定応答を含むデータ・ユニットに対応したもの（すなわち、最小長さを持つもの）として選択された場合には、伝送制御のベースとしてフロー中の肯定応答データ・ユニットの到着間隔時間を用いることが可能となる。
【００２３】
数値的に定量化されたパラメータの数値に応じて実行される伝送制御は、前進型誤信号訂正の調節や、ＡＲＱ（自動再送要求）設定の調節、あるいはスケジューリングの調節など、任意の適した手段に設けることができる。さらに、組み込み処理が、上位層データ・ユニットをセグメントに分割して、複数の下位層データ・ユニットに埋め込むものである場合には、この分割処理は、数値に応じて、すなわち、決定された数値に応じて下位層のセグメント長を調節することによって実行される。伝送制御は、上位層データ・ユニットを受信する層、あるいは、より下位層でのデータ・ユニットを調節する処理に設けられる。例えば、本発明の方法を、リンク層Ｌ２に適用した場合には、この調節は、Ｌ２データ・ユニットに対して行われるが、Ｌ１データ・ユニットに対しても行うことができる。
【００２４】
上述したように、伝送制御は、決定された数値によって、所定の目的パラメータを最適化するために行われる。この目的パラメータの例としては、スループット（単位時間当りに伝送される本体データの量）あるいは（平均の）伝送遅延があげられる。
【００２５】
他の実施例によれば、上位層データ・ユニットが埋め込まれた下位層データ・ユニットを伝送する伝送制御は、下位層データ・ユニットを判別する処理を含んでおり、この処理では、判別の結果に従って、１つあるいはそれ以上の数の下位層データ・ユニットの各々は、予め定められた複数の伝送カテゴリのいずれか１つに分類される。このように下位層データ・ユニットを判別する処理は、予め決定されたグループに所属した上位層データ・ユニットを埋め込んだ下位層データ・ユニットを、上位層データ・ユニットのグループのサブ・グループに分割するようにして、上位層データ・ユニットの判別と有利に組み合わせることができる。例えば、上位層データ・ユニット（例えば、Ｌ３データ・ユニット）属するグループがフローである場合には、このフローは、フローのデータ・ユニットを埋め込んだ下位プロトコル層（例えば、Ｌ２）のサブ・フローに分割することができる。
【００２６】
本発明の他の実施例によれば、数値的に定量化されたパラメータの１つあるいはそれ以上の数の数値を輻輳を緩和する処理に用い、データ・ユニットについての輻輳緩和手段を実行すべきか、前記の１つの数値あるいは複数の数値に依らないようにすべきかを決定する決定処理を実行する。例えば、この輻輳緩和処理は、データ・ユニットを間引く処理および／または、データ・ユニットにマーク付けする処理から構成することができる。従って、輻輳緩和手段は、バッファからデータ・ユニットを間引くこと、あるいはデータ・ユニットにマーク付けすることになる。なお、このマーク付けは、通信の最終地点に対して、輻輳が起きていることを通知するものである。このマーク付けの例としては、ＴＣＰ／ＩＰで知られている明示的な輻輳通知（ＥＣＮ）がある。
【００２７】
例えば、Ｌ２層で受信したＬ３データ・ユニットが、処理前にバッファに保持されていたとする。さらに、バッファに保持されている１つあるいはそれ以上の数のＬ３データ・ユニットに対する輻輳緩和手段を実行する輻輳緩和処理が設けられているものとする。輻輳緩和処理は、予め定められた複数の条件によって実行が開始される。これらの条件の例としては、Ｌ２データ・ユニットが送られるリンクのリンク過負荷が検出された場合、あるいは受信されたＬ３データ・ユニットを格納するバッファのバッファ・オーバ・フローが検出された場合などがある。本実施例によれば、輻輳緩和手段を実行するか否かを決定する決定処理は、決定された数値に依存するものであり、例えば、Ｌ３データ・ユニットの長さに依存し、また、Ｌ３データ・ユニットの到着間隔時間にも依存する。Ｌ２層で受信されるＬ３データ・ユニット（サービス・データ・ユニット、ＳＤＵと呼ばれる）のバッファ処理に関する上記例では、所定のＬ３データ・ユニットに関する数値に依存して輻輳緩和の要否を決定する考え方は、所定のＬ３データ・ユニットが埋め込まれた１つあるいはそれ以上の数のＬ２データ・ユニット（Ｌ２  ＰＤＵ）にも適用することができる。しかし、輻輳緩和処理が、データ・ユニット間引き処理によるものである場合には、後々間引かれる可能性のあるデータを予め埋め込んでおくという無駄になることを避けるため、最上位のサブ層、すなわち、ＳＣＵレベルで任意の輻輳緩和処理を実行することが望ましい。
本発明の方法およびシステムは、ハードウェア、ソフトウェアあるいはハードウェアとソフトウェアの任意の好適な組み合わせによって、任意の好適なあるいは適切な方法で実施することが可能である。
【実施例】
【００２８】
以下に、本技術分野に精通した者に対して、発明を充分かつ完全に理解できるように、本発明の詳細な実施例を説明する。しかし、本発明の範囲を請求項によって定義するように、これらの実施例は、例証のものであり、限定することを意図したものではない。
【００２９】
以下の例は、ＴＣＰ／ＩＰを前提に説明する。しかし、本発明は、上位層データ・ユニットを下位層データ・ユニットに埋め込み、下位層データ・ユニットに対して伝送制御をおこなう任意のプロトコル階層に適用可能である。
【００３０】
以下の実施例は、本発明をリンク層Ｌ２に適用することを前提に説明するものであり、このリンク層は、ネットワーク層からのＬ３データ・ユニットを埋め込むものである。しかし、これは一例にすぎず、本発明は、プロトコル階層の任意のレベル、すなわち、リンク層の下位、あるいは上位のいずれにでも適用することができる。
【００３１】
図１は、本発明の第一の実施例を説明するフローチャートである。図示したように、第１のステップＳ１では、Ｌ３データ・ユニットがＬ３層の下のリンク層Ｌ２に送られる。次に、ステップＳ２では、Ｌ３データ・ユニットに関連した数値的に定量化されたパラメータの数値を決定する。ここで、「Ｌ３データ・ユニットに関連した」という意味は、広義の意味として、Ｌ３データ・ユニットから求められた数値的に定量化された任意のパラメータに関連したものであると捉えることができる。ここで、前記パラメータは、このようなＬ３データに関連するもの、あるいはＬ３データ・ユニットに埋め込まれたＬ３よりも上位の層からのデータ・ユニットに関連するものである。さらに、ステップ３では、受信したＬ３データを１つあるいはそれ以上の数のＬ２データ・ユニットに埋め込む。最後に、ステップＳ４では、ステップＳ２で決定した数値に応じて、Ｌ３データを埋め込んだ、１つあるいはそれ以上の数のＬ２データ・ユニットおよび／またはＬ１データ・ユニットに対する伝送制御を行う。
【００３２】
図１の例は、特定の手順に従ったステップＳ１からＳ４を示したものであるが、これは一例であり、ステップＳ１からＳ４を他の構成とすることも可能である。
ステップＳ４で実行される調節は、特定の状況と、使用するシステムに依存したものとなる。例えば、伝送制御は、Ｌ２プロトコル層のデータ・ユニットあるいはＬ２プロトコル層の下位のＬ１データ・ユニットに対する前進型誤信号訂正を調節することを含むものであってよい。前進型誤信号訂正の種類は、望ましいもの、あるいは適切なものから選ぶことができる。例えば、伝送制御は、所定のリンクおよび、あるいはインターリービングの度合いにおける、伝送出力の調節および／またはデータ・レートの（例えば、ＣＤＭＡシステムでの拡散係数を選択することによる）調節を含んでいる。ここでいうリンクとは、例えば、無線リンクとすることができる。
【００３３】
Ｌ２プロトコル層が予め定められた条件のもとで、Ｌ２データ・ユニットを自動的に再送信する機能を含むものならば、この伝送制御は、前記再送信機能を調節することを含むものであってよい。
【００３４】
ステップＳ３における埋め込み処理がセグメント分割処理となっている場合には、図１の実施例は、前記数値に応じてセグメント分割処理が実行されるように構成することができる。すなわち、数値に応じたセグメント分割処理は、数値に応じたステップＳ４での伝送制御に代わるものとすることができるし、あるいは数値に応じたセグメント分割処理は、数値に応じたステップ４での伝送制御を補完し、すなわち、この伝送制御とともに行うものとすることができる。
【００３５】
前記セグメント分割処理の調節は、例えば、所定のＬ３データ・ユニットがセグメント化され埋め込まれるＬ２データ・ユニットの長さを調節することを含むものであってよい。
【００３６】
図２は、本発明の他の実施例のフローチャートである。図１と同一の引用符号が図２のステップを指し示している。すなわち、最初に、ステップＳ１では、Ｌ３データ・ユニットをＬ２層に送る。次に、ステップＳ２１は、図１に示したステップ２をより一般化した一例を示すものであり、そこでは、受信したＬ３データ・ユニットの長さを測定する。すなわち、受信したＬ３データ・ユニット中に、どれだけのデータが含まれるかをビットあるいはバイトなど任意の好適な単位で決定する。
【００３７】
ステップＳ３では、Ｌ２データ・ユニットを１つあるいはそれ以上の数のＬ２ユニットに埋め込む。次に、ステップＳ４１、Ｓ４２およびＳ４３のステップに従い、伝送制御を行うが、これらのステップは、図１のステップＳ４の一般化された処理の一例を表すものである。特に、ステップ４１は、測定されたＬ３データ・ユニットの長さを少なくとも１つの参照長さと比較するものであるが、ここで、前記参照長さは、最大のデータ・ユニット長さを表すものであることが好ましい。さらに、Ｌ３データ・ユニットの長さが参照長さに等しい場合には、スループットに関して伝送処理を最適化し（ステップＳ４２）、一方、Ｌ３データ・ユニットの長さが参照長さと異なる場合には、遅延に関して伝送処理を最適化する（ステップＳ４３）。
【００３８】
上記の例で、ステップ４１は、測定された長さを参照値と比較する処理となっている。当然のことながら、測定された長さは、値の範囲と比較することも可能であり、その場合、前記範囲は、参照値の離散化された値とすることも可能であるし、あるいは連続値とすることも可能であるし、または離散値と連続値を組み合わせることも可能である。また、上記の例で、参照値（あるいは範囲）は、データ・ユニットの最大長を表すものであった。しかし、これは一例に過ぎず、適用するシステムと状況に応じて、任意の好適なあるいは望ましい方法で、参照値（あるいは範囲）を選ぶことができる。例えば、参照値は、肯定応答を伝えるデータ・ユニットであることを示す、データ・ユニットの最大長さを表すものとすることも可能である。
【００３９】
スループットに関して伝送制御を最適化する処理は、例えば、前進型誤信号訂正の量を減らし、伝送の信頼性を確保するためにＡＲＱを可能とする処理を含ませることが可能である。一方、遅延に関して伝送制御を最適化する処理は、例えば、前進型誤信号訂正の量を増やすが、ＡＲＱは、不可とする処理とすることが可能である。これについては、後で、ＴＣＰ／ＩＰを前提として、より詳細に説明する。
【００４０】
非リアル・タイム・アプリケーションは、ＴＣＰの上で実行されることが多いが、リアル・タイム・アプリケーションは、通常、ＵＤＰの上で実行される。非リアル・タイム・アプリケーションのためのリンク層（Ｌ２）プロトコルに対する主要な設計要求は、スループットに関して最適化することにある。これは、例えば、全体のスループットが最適となるよう、前進型誤信号訂正とＡＲＱの間のトレード・オフを調節することにより実現される。前進型誤信号訂正を弱め、ＡＲＱを可能とすることによって、高いスループットを実現することが可能となる。スループットは、単位時間当りに伝送される本体データの量である。前進型誤信号訂正は、オーバーヘッドを増加させ、伝送すべき本体データの量が減ってしまうという結果をもたらすため、前進型誤信号訂正の減少させることに伴いスループットを増加させることができる。
【００４１】
暗号を用いた前進型誤信号訂正では、データは、ブロックに分割されるが、ここで、各ブロックは、冗長化された情報と本体データを組み合わせる暗号化処理の結果となり、これにより、ブロックが正確に受信され暗号解読されたかを受信機の側で判断することが可能となる。さらに、ブロック・エラー率は、受信ブロックがエラーを持っていると判断されたイベントの率として定義することができる。前進型誤信号訂正を減らすことは、ブロックエラー率が増えることにつながるが、スループットは増えることにはならない。例えば、データ・レートに（１−ブロック・エラー率）を掛けて、スループットを計算する場合、データ・レートが８ｋｂｉｔ／ｓ、ブロックエラー率が０．０１であるならば、スループットは、７．９２ｋｂｉｔ／ｓとなる。これに対して、（前進型誤信号訂正がほとんどないことにより得られた）データ・レートが１２ｋｂｉｔ／ｓ、（前進型誤信号訂正を減らしたことによる）ブロック・エラー率が０．１であるならば、スループットは、１０．８ｋｂｉｔ／ｓとなる。従って、ブロック・エラー率が１０倍高くても、本体データ量が増えることが、全体のスループットを向上させることにつながる。
【００４２】
ここで問題なのは、ＴＣＰによるバルク・データ転送に対応したフロー中でさえ、スループットについては全体的に最適化が計られているが、個々のデータ・ユニットやセグメントが遅延に影響されやすいということである。例として、コネクション設定メッセージがあり、データ伝送を開始するために、これらのメッセージは、できるだけ迅速に交換する必要がある。他の例としては、反対方向へのＴＣＰの肯定応答メッセージやＨＴＴＰリクエストがあるが、これらは、できるだけ迅速に受信する必要がある。
【００４３】
スループットに関して最適化する必要のあるＬ３データ・ユニットと、遅延減少に関して最適化する必要のあるものとを区別するために、本実施例では、図２のステップＳ２１で、Ｌ３データ・ユニットの長さを決定する。
【００４４】
すなわち、スループットを最適化するべきＬ３データ・ユニットは、一般的には、より大量のアプリケーション・データ量をもち、これは、トランスポート層データ・ユニット、例えば、ＴＣＰセグメントに分割される。従って、これらのトランスポート層データ・ユニットは、さらにネットワーク層（Ｌ３）データ・ユニットに埋め込まれることになるが、これらは、一般的には、最大の伝送ユニット長、例えば、ＴＣＰの最大セグメント長（ＭＳＳ）を持つものとなる。
【００４５】
その結果、既に述べたように、予め定められた最大伝送ユニット長を表す参照値あるいは参照範囲について比較がなされるように、図２のステップＳ４１が設けられている。通常、最大伝送ユニット長の値は、２５６バイト、５１２バイト、５３６バイトあるいは１４６０バイトであり、４０バイトのＩＰヘッダを考慮すると、ステップ４１で用いる好適なデータ長の参照値は、２９６バイト、５５２バイト、５７６バイトあるいは１５００バイトとなる。
【００４６】
既に述べたように、Ｌ３データ・ユニットの測定された長さを既に述べた離散値、２９６、５５２、５７６および１５００バイトの系列のような複数の参照長さ、あるいは好適な連続的な範囲、あるいは離散値と連続値の組み合わせと比較するように、ステップＳ４１が設けられている。さらに、Ｌ３ユニットの測定された長さが複数の参照長さのいずれかの１つと等しいならば、あるいは予め定まられた１つあるいは複数の範囲の中に納まるならば、ステップＳ４２に進み、スループットに関して伝送制御を最適化する。
【００４７】
これに関連して、参照長さの値は、ＩＰヘッダだけでなく、ヘッダ圧縮の可能性についても考慮してもよいと言える。すなわち、ステップＳ４１で用いられる複数の参照長さの値は、ヘッダ圧縮を考慮した複数の値を含む場合もある。
【００４８】
図２の例では、参照長さとは異なる長さをもつ他のデータ・ユニットが、最適化された遅延時間をもって送られる（ステップＳ４３）。すなわち、これらのデータは、最小の遅延時間で送られる。ＴＣＰ／ＩＰの例では、これは、（同期メッセージ、肯定応答メッセージなどの）すべての純粋なＴＣＰ制御メッセージは、最小遅延時間で送られることを意味している。また、より長いアプリケーションデータ量をもつ最終データ・ユニットもまた最適化された（例えば、最小の）遅延時間で伝送される。
【００４９】
上述したように、例えば、適切なコーディング手順を選択することおよび／または伝送出力を調節することにより、遅延に関する最適化を行うことができる。再送信の要する付加的な遅延は、１００ｍｓであると仮定すると、小さいデータ・ユニットについての伝送遅延は短くなり、ほとんど重要なものにはならないと言える。従って、より強力な前進型誤信号訂正（例えば、より多くの冗長性）および／またはより高い送信出力を用いることにより、平均遅延時間を短縮することができる。
【００５０】
例えば、１００バイト長のデータ・ユニットを想定し、上述した値を例として、８ｋｂｉｔ／ｓのデータ・レート、０．０１のブロック・エラー率ならびに２０バイトのブロック長を用いた場合には、平均遅延は、１００＋５ｍｓとなる。あるいは１２ｋｂｉｔ／ｓのデータ・レート、０．１のブロック・エラー率ならびに３０バイトのブロック長を用いた場合には、平均遅延は、８０＋４０ｍｓとなる。データ・レートを増やし、それにともなってブロック・サイズが増えるため、最初の例では、１００バイトを伝送するためには５ブロックが必要となり、２番目の例では、４ブロックのみが必要となる。最初の場合、５ブロックのうち１ブロックがデータの破損を起こす可能性は、概ね５％であり、平均して、５ｍｓの遅延が加わることになる。２番目の例では、同様の計算によって、４０ｍｓの遅延が加わることになる。以上の結果として、前進型誤信号訂正を強めることにより、データ・レートは、減少するものの、平均遅延時間は短縮できることになる。
【００５１】
別の例は、伝送制御が伝送出力を調節する処理を含む場合である。これは、例えば、所望のリンクに対して目標とする信号対妨害比を設定し、出力制御ループによって維持することにより実現できる。信号対妨害比を高めることにより、リンク品質を向上することができ、すなわち、伝送出力を上げる代償として、リンク上の伝送エラー数を減らすことができる。伝送エラーを減らすことにより、エラー回復の遅延が短くなり、その結果、平均の伝送遅延が短くなる。
【００５２】
図２の例では、ステップＳ４１の決定処理の結果、スループットに対して、あるいは遅延に対して伝送の最適化が行われる。当然のことながら、これは一例に過ぎない。伝送制御は、特定のアプリケーションやシステムに応じて、好適なあるいは望ましいものとして、他の目標パラメータに関して最適化することも可能である。これらの目標パラメータには、例えば、伝送出力、拡散コード、割り当てられた物理チャネル数などのシステム資源がある。さらに、ステップＳ４１の決定処理の結果、ステップＳ４２とステップＳ４３の２つの処理よりも多い処理に分岐するように構成することも可能である。例えば、ステップＳ４１を次のように構成することも可能である。すなわち、Ｌ３データ・ユニットをｎ個の参照長さあるいはｎ個の参照範囲と比較し、その判定結果を、ｎ個の伝送制御処理に分岐するようにし、各伝送制御処理は、１つの参照値あるいは参照範囲に対応したものとし、さらに、１つのデフォルトの伝送制御処理を分岐先に加え、ｎ個の参照長さのいずれの長さでない、あるいは、ｎ個の参照範囲のいずれの範囲に含まれないＬ３データ・ユニットに対する伝送制御処理を構成することができる。
【００５３】
上述した実施例では、ステップＳ４あるいはステップＳ４１からステップＳ４３で実行される伝送制御は、ステップＳ２で決定された数値に基づいて実行されるものであった。さらに、受信したＬ３データ・ユニットに関してなされる他の測定や決定に基づいて、伝送制御を行うことも可能である。すなわち、図３に示すように、本図では、ステップＳ１、Ｓ２１およびＳ３は、図２の対応するステップと同一であり、ここでは説明を繰り返さないが、ステップＳ５は、ステップＳ３の後に実行され、Ｌ３データ・ユニットが属するグループを判別する。次に、ステップＳ４０は、図１では一般化して記載されていたステップ４の一例であり、ここでは、受信したＬ３データ・ユニットを埋め込んだ１つあるいはそれ以上の数のＬ２データ・ユニットに対し、ステップＳ２１で決定した数値とステップ５の判定結果に応じた伝送制御を実行する。
【００５４】
ここでは、判定処理は、Ｌ３データ・ユニットに含まれる最終情報および／またはＬ３データ・ユニットに含まれるプロトコル識別子にもとづいて実行することが好ましい。例えば、Ｌ３データ・ユニットが分類されたグループは、そのデータ・ユニットが所属するフローとすることができる。既に上述したように、ＴＣＰ／ＩＰの場合は、Ｌ３データ・ユニットが分類されたグループは、そのデータ・ユニットが所属するフローとすることができ、そのフローは、送り元と宛先のＩＰアドレス、送り元と宛先のポート番号ならびにプロトコル識別子によって定義される。他の例としては、Ｌ３データ・ユニットが分類されたグループは、伝送される本体データの種類によって決定することもでき、この場合、本体データの種類は、例えば、データ・ユニット中のプロトコル識別子をチェックすることによって判別できる。これは、Ｌ３データ・ユニット自身のプロトコル識別子をチェックすること、あるいは、Ｌ３データ・ユニット中の本体データとして伝送されるデータ・ユニットの１つあるいはそれ以上の数のプロトコル識別子をチェックすることを意味する。
【００５５】
ステップＳ４０での伝送制御処理は、アプリケーションの特定の状況に応じて、任意の好適なあるいは望ましい方法で実行することができる。例えば、図３のステップＳ４０は、比較処理で用いられる参照長さは、Ｌ３データ・ユニットが分類されたグループに応じて選択する処理を加えて、図２のステップＳ４１、Ｓ４２およびＳ４３と同様の構成とすることができる。例えば、このグループは、Ｌ３データ・ユニットに埋め込まれたデータ・ユニットの種類にもとづいて決定することができ、例えば、判定処理は、ＩＰデータ・ユニットがＴＣＰデータ・ユニットあるいはＵＤＰデータ・ユニットのどちらを伝送するのかを判定するものとすることができる。そのデータ・ユニットが、ＴＣＰデータ・ユニットを伝送するものであると判定された場合には、第１の参照長さを用い、ＵＤＰデータ・ユニットを伝送するものであると判定された場合には、第２の参照長さを比較処理に用いることができる。
【００５６】
図３では、ステップＳ５で得られた判定結果は、ステップＳ４０の伝送制御処理での一要素として用いられる。しかし、受信したＬ３データ・ユニットを、予め定めた複数のグループの中の１つに分類することも用いて、後に伝送制御処理で用いることができる数値を決定するベースとすることができる。これを図４に示す。ステップＳ１で、Ｌ３データ・ユニットを受信した後、判定処理ステップＳ５を実行する。次に、ステップＳ２２は、図１では一般化されたステップＳ２であったものの一例であり、そこで、判定結果にもとづき、数値を決定する。その後、図１で説明したものと同様に、ステップＳ３とＳ４を実行する。
【００５７】
例えば、数値的に定量化されたパラメータは、バッファに保持されたＬ２データ・ユニットのバッファ充足度に関連づけることができ、ここで、数値的に定量化されたパラメータは、ステップＳ５で判別されたグループに属するＬ３データ・ユニットを埋め込んだバッファ中のＬ２データ・ユニットの数である。これに代わり、数値的に定量化されたパラメータは、判別されたグループに属するＬ３データ・ユニットの到着間隔時間であってもよい。このように、数値的に定量化されたパラメータを決定する利点については、図５に示した例に関するところで詳細に説明する。
【００５８】
図５は、例えば、第三世代共同プロジェクト（ｈｔｔｐ：／／ｗｗｗ．３ｇｐｐ．ｏｒｇ）発行の技術基準３ＧＴＳ２５．３０１Ｖ３．３．０（１９９９年１２月）、に記載されているような、汎用携帯電話システム（ＵＭＴＳ）において動作するリンク層を前提に実装した本発明の一実施例を示すものである。本資料は、本開示の参考文献として全体を引用する。
【００５９】
図５は、本発明の好適な応用例を示したものである。しかし、本発明は、これに限定されるものではない。むしろ、本発明の方法とシステムは、例えば、一般のパッケージ・オーディオ・サービス（ＧＰＲＳ）あるいは任意の他の移動通信基準に対応して動作する装置のような、任意の移動通信装置に対して適用することが可能である。さらに、本発明の方法とシステムは、当然のことながら、移動通信システムへの応用に限定されるものではなく、プロトコル階層をもつ任意の通信システムに適用することが可能である。
【００６０】
図５において、無線資源制御（ＲＲＣ）処理２０１が提供され、これにより、一般的なＬ２実装のほかの部分の動作を制御する。ここでは、Ｌ２プロトコル実装は、Ｌ２／ＰＤＣＰ、Ｌ２／ＢＭＣ、Ｌ２／ＲＬＣおよびＬ２／ＭＡＣのサブ層を含んでいる。図５は、他の処理に対して接続された制御線２０４、２０５、２０６、２０７および２０８を概略的に示したものあり、以下で説明する。すなわち、パケット・データ輻輳プロトコルの機能を実行するために、１つあるいはそれ以上の数のパケット・データ輻輳プロトコル（ＰＤＣＰ）処理２０２が設けられている。さらに、マルチ・キャストあるいはブロード・キャストによって、複数の宛先にデータ・ユニットを送信することを制御する機能を実行するために、ＢＭＣ（ブロード・キャスト／マルチ・キャスト制御）処理２０３が設けられている。引用番号２０９は、無線リンク制御プロトコルを実装した無線リンク制御（ＲＬＣ）処理を指すものである。番号２１１は、Ｌ２層のメディア・アクセス制御（ＭＡＣ）部を表す。最後に、番号３０２は、物理層Ｌ１を概略的に表すものである。
【００６１】
無線資源制御処理２０１は、上位層Ｌ３（不図示）から制御情報を受信する。ユーザのアプリケーションは、Ｌ２データ・ユニットに埋め込む予定のＬ３データ・ユニットをＰＤＣＰ処理２０２、ＢＭＣ処理２０３および／またはＲＬＣ処理２０９に送る。
【００６２】
引用番号２１０は、Ｌ２層の論理チャネルを表すものであり、一方、引用番号３０１は、Ｌ２層とＬ１層の間のトランス・ポート・チャネルを表すものである。
【００６３】
Ｌ２層に関する一般的な制御は、ＲＲＣ処理２０１によって実行される。特に、ユーザデータは、無線アクセスの所有者に伝送される。無線資源制御処理２０１によって、１つあるいはそれ以上の数の無線所有者が構成され、これにより無線プロトコルの層１および層２の構成が決定される。ＰＤＣＰ処理２０２では、ＩＰヘッダ圧縮が適用され、１つの論理チャネル上に複数のトラフィック・フローを多重化することが用いられる。ＲＬＣ処理は、ＡＲＱなどの後退型誤信号訂正を、とりわけ、論理チャネルに適用する。ＭＡＣ処理２１１は、Ｌ２データ・ユニットのスケジューリングを実行し、トランス・ポート・チャネル３０１への分配を行う。
【００６４】
本発明の一実施例では、ＰＤＣＰ処理２０２の機能は、分割機能によって拡張され、この機能は、受信したトラフィック・フロー（例えば、ＩＰフロー）をサブ・フローに分離し、これらを独立したＲＬＣ接続を会して伝送する。ＩＰヘッダ圧縮がＰＤＣＰに適用されているため、ＰＤＣＰにおいて必要なフロー情報は、すでに利用可能となっている。一例として、対応するフロー分離を、図６に概略的に示す。ＰＤＣＰ処理２０２によって受信したＩＰデータ・ユニットのフローは、４つのサブフローに分割され、その各々のフローは、独立したＲＬＣ処理２０９ａ、２０９ｂ、２０９ｃおよび２０９ｄによって処理される。数値的に定量化されたパラメータ、例えば、Ｌ３データ・ユニット長、バッファ充足度、あるいは到着間隔時間の数値に応じて、この分離は実行される。さらに、この分離は、データ・ユニットの種類に応じて、実行される。
【００６５】
例えば、数値は、Ｌ３ユニット長さと、伝送中のデータ・ユニットの種類とすることができる。その場合、図６に示した分割処理は、以下のように構成することが可能となる。すなわち、肯定応答の長さを持ち、ＴＣＰデータ・ユニットとなっているデータを最適なＲＬＣ構成、すなわち、最小遅延で伝送することができるようにし、さらに、他のＩＰデータ・ユニットが、ＲＬＣ接続の上に分離されるようにするという構成である。ここで、これらのデータ・ユニットは、各々のデータ・ユニットの長さおよび／または各々のデータ・ユニットの種類に対して最適化されている。
【００６６】
ＩＰフローを複数のＲＬＣサブ・フローに分割する他の方法としては、ＩＰフローの異なる位相を分離する方法、例えば、ＴＣＰスロー・スタート位相を輻輳回避位相から分離する方法がある。より低い伝送遅延が達成されるように、スロー・スタート位相が構成されている場合には、終端間性能は、より向上するものとなり、リンク資源（例えば、コード）は、より迅速に解放される。
【００６７】
伝送遅延を少なくする方法には、例えば、信号対妨害比の高い目標値、強力な前進型誤信号訂正、より積極的なＡＲＱ設定などがある。ＴＣＰフローの異なる位相を区別するために、数値的に定量化されるパラメータとして、バッファ充足度を用いるか、あるいは到着間隔時間を用いる上述した方法が利用可能である。すでに説明したように、到着間隔時間の決定は、データ・ユニット長の範囲の決定と組み合わせることができ、この場合、伝送制御のベースとして用いられる値は、予め定められた長さの範囲に納まる長さをもつデータ・ユニットの到着間隔時間となる。
【００６８】
例えば、ＲＬＣバッファレベルを用いた場合には、ＲＬＣバッファ充足度が予め定められた閾値を下回るならば、ＴＣＰフローは、おそらく、徐々に開始したフェーズにある（あるいは、アプリケーション・データの終了にある）といえる。その理由は、新たなデータの到着がないためである。この予め定められた閾値よりも高い、あるいは、第２の予め定められた閾値よりも高い場合には、ＴＣＰは、輻輳回避フェーズにあるものと考えられる。結果として、バッファ充足度によって、徐々に開始したフェーズにあることが判明した場合には、Ｌ２データ・ユニットは、遅延を短くするために最適化されたＲＬＣ接続に送られる。バッファ充足度によって、輻輳回避フェーズにあることが判明した場合には、Ｌ２データ・ユニットは、スループットに関して最適化されたＲＬＣ接続に送られる。
【００６９】
数値的に定量化されるパラメータとして、ＩＰデータ・ユニットの到着間隔時間を用いる際には、上記の考え方に対応したものを適用する。すなわち、到着間隔時間が、予め定められた閾値よりも長い場合には徐々に開始したフェーズにあるものと判定し、それに対し、到着間隔時間が、この予め定められた閾値よりも短い場合、あるいは第２の予め定められた閾値よりも短い場合には、輻輳回避フェーズにあると判定する。
【００７０】
図６に示すように、フローを複数のＲＬＣサブ・フローに分割する方法に代えて、データ・ユニットの各ストリームを独立したＲＬＣ処理２０９ａ、２０９ｂ、２０９ｃあるいは２０９ｄによって扱う方法では、全てのデータ・ユニットを、１つの順応性のあるサブ・フローの形で伝送する。この場合、すべてのデータ・ユニットは、同一のＲＬＣ処理によって扱われるが、各データ・ユニットは（異なる前進型誤信号訂正、異なるセグメント長さ、異なるＡＲＱ，異なる伝送出力（例えば、異なる信号対妨害比など）によって）別々に処理される。
【００７１】
以上の実施例では、Ｌ３データ・ユニットに関する少なくとも１つの数値的に定量化されたパラメータの数値をＬ３データ・ユニットの組み込みの制御および／または前記Ｌ３データ・ユニットを組み込んだＬ２データ・ユニットの伝送制御のためのパラメータとして利用していた。次に、図７から図１０を用いて、別の実施例を説明する。これらは、数値的に定量化されたパラメータを使って、バッファに保持されたＬ３データ・ユニットおよび／またはバッファに保持されたＬ２データ・ユニットに関して輻輳を緩和する処理を行うものである。
【００７２】
以下の例では、輻輳を緩和する処理を、データ・ユニットの間引き処理として説明する。
【００７３】
図７ａは、受信したＬ３データ・ユニットをバッファリングする処理を示すものである。所定の層（例えば、Ｌ２）で受信したＬ３（一般的には、高位層の）データ・ユニットは、受信データ・ユニット（ＳＤＵ）と呼ばれ、一方、このＳＤＵに組み込まれた（カプセル化、あるいは分割された）データ・ユニットは、プロトコル・データ・ユニット（ＰＤＵ）と呼ばれる。従って、受信したこれらのＬ３データ・ユニットが保持されたバッファは、ＳＤＵバッファとも呼ばれる。受信したＬ３データ・ユニットがＬ２データ・ユニットの中に処理される（組み込まれる）前に、このＳＤＵバッファは、このＬ３データ・ユニットを格納する。図７ａの処理によれば、第１のステップＳ１は、Ｌ３データ・ユニットをＬ２層に送る処理からなり、その後、ステップＳ２において、受信したＬ３データ・ユニットに関する少なくとも１つの数値的に定量化されたパラメータについての、１つあるいはそれ以上の数の数値を決定する。これらのステップＳ１およびＳ２は、図１から図４で示した同一の符号をもつステップと同様であり、これらの図に関して詳細に説明したように実装することができる。従って、数値的に定量化されたパラメータは、例えば、データ・ユニット長さ、あるいはデータ・ユニットの到着間隔時間とすることができる。最後に、ステップＳ６において、受信されたＬ３データ・ユニットあるいはＳＣＵは、ＳＤＵバッファ中に入れられ、ＳＤＵに対する次の処理があるまで、そこに保持される。
【００７４】
ステップＳ２は、必ずしも、バッファ処理の前に実行する必要はなく、その後で実行するものであってもよい。これについては、図９の実施例のところで説明する。
【００７５】
受信したＳＤＵをバッファ処理することは、特に、受信した層で、例えば、受信した層が無線リンクを介してデータを送信する、リンク層である場合には、引き続いて処理があることが確実でない、あるいはその処理がありそうにないという状況において有利なものとなる。
【００７６】
図７ｂは、バッファに入れられたＳＤＵの処理、すなわち、ＳＤＵをＬ２ＰＤＵに埋め込む手順を示したものである。ステップＳ３１では、ＳＤＵは、ＳＤＵバッファから取り出され、１つあるいはそれ以上の数のＬ２ＰＤＵに組み込まれる。ステップＳ７では、１つあるいはそれ以上の得られたＬ２ＰＤＵを、ＰＤＵバッファに一時格納する。図１から図４で説明した伝送制御処理Ｓ４、Ｓ４０、Ｓ４１からＳ４３の任意の処理に応じて、バッファに保持されたＬ２ＰＤＵが伝送される。図７ｂの処理手順は、ステップＳ３１から、伝送制御処理Ｓ４、Ｓ４０、Ｓ４１からＳ４３にＬ２ＰＤＵを直接送ることにより実現することもできる。
【００７７】
図７ｃは、ＳＤＵバッファとＰＤＵバッファの一方あるいは両方の内容を扱うための基本手順を示したものである。ステップＳ８では、バッファに保持されたデータの間引き処理のための開始条件が満たされているかどうかを判定し、満たされていれば、データ・ユニットの間引き処理Ｓ９を行う。この処理の開始条件は、好適なもの、あるいは好ましいものとして選ぶことができ、例えば、バッファが、オーバ・フロー状態（例えば、バッファ内のデータ量が、オーバ・フロー限界を越えた状態）になった場合や、Ｌ３ＰＤＵを伝送しようとするリンクが、過負荷状態（例えば、リンクに暫定的に与えられた帯域が、このリンクを介して伝送するべきデータを送るために必要とされる帯域に対して予め定められた制限割合を下回る状態）になった場合に、データ・ユニットの間引き処理を実行するようにしてもよい。
【００７８】
データ・ユニットの間引きは、本発明が実装される層でのオーバ・フローや過負荷状態を緩和するのに有益となるだけでなく、輻輳が起きている上位層への指標として使うこともできる。ＴＣＰ／ＩＰで知られている低速開始と輻輳回避のアルゴリズムは、伝送経路におけるデータ・ユニット損失に対応する際に、フロー制御が用いる機構の一例となっている。
【００７９】
データ・ユニット間引き処理Ｓ９は、バッファに保持された検討中のデータ・ユニットを間引きすべきか否かを判定する判定ステップを含んでおり、ここで、前記判定ステップは、所定のＬ３データ・ユニットについて数値的に定量化された少なくとも１つのパラメータに関する、１つあるいはそれ以上の数の数値に依存している。処理の対象となるデータ・ユニットがＬ３データ・ユニットである場合、そのＬ３データ・ユニットは、バッファに保持されて処理の対象となるデータ・ユニットとなる（すなわち、ＳＤＵの間引きを考慮した場合には、数値的に定量化されるパラメータは、対象としている前記ＳＤＵに関するものとなり、例えば、前記ＳＤＵの長さやその到着間隔時間となる。）また、処理の対象となるデータ・ユニットがＬ２データ・ユニットである場合、前記所定のＬ３データ・ユニットは、処理の対象となる前記データ・ユニットに埋め込まれたＬ３データとなる（すなわち、Ｌ３ＰＤＵの間引きを考慮した場合には、数値的に定量化されるパラメータは、対象としている前記Ｌ２ＰＤＵに埋め込まれたＳＤＵに関するものとなり、例えば、前記ＳＤＵの長さやその到着間隔時間となる）。
【００８０】
上で示したように、データの間引き処理は、ＳＤＵバッファとＰＤＵバッファの、いずれか１つあるいは、両方において行われる。しかし、間引きされる可能性の高いデータに対して結局無駄になる組み込み処理を避けるために、最上位のサブ・レイア、すなわち、ＳＤＵバッファでデータ・ユニットの間引きを行うことが好ましい。
【００８１】
図８は、データ・ユニット間引き処理Ｓ９の一例を示すものである。第１のステップＳ９１では、第１のデータ・ユニットを対象とする。対象とするデータ・ユニットの選択は、好ましいあるいは望ましい形で行われ、データ・ユニットがバッファに保持される方法に依存して行われる。例えば、データ・ユニットが待ち行列に入っている場合には、待ち行列中の（最初のデータ・ユニットあるいは最後のデータ・ユニットなど）予め定められた位置にあるデータ・ユニットを選択することも可能であり、あるいはデータ・ユニットをランダムに選ぶような、なんらかの種類の選択手順を選ぶことも可能である。
【００８２】
さらに、ステップＳ９２では、上述した判定ステップを実行し、対象としているデータ・ユニットのＳＤＵ（ＳＤＵ自身、もしくはＳＤＵを埋め込んだＬ２ＰＤＵ）のＬ３データ・ユニットの数値（例えば、データ・ユニット長さあるいは到着間隔時間）が、予め定められた条件を満足するかどうかを判定し、予め定められた条件が満足されたならば、ステップＳ９６に進み、対象とするデータ・ユニットを間引く。そうでない場合には、ステップＳ９３に進み、すでに対象として処理済みのものの他に、他のデータ・ユニットがバッファ中にあるかを判定する。そうである場合には、ステップＳ９４に進み、そこで次のデータ・ユニットを選択し、処理をステップＳ９２に戻す。次のデータの選択は、好ましい、あるいは適応した方法によって行われ、通常は、ステップＳ９１で用いた方法にリンクしている。例えば、ステップＳ９４は、待ち行列中の次の、あるいは前のデータ・ユニットを単純に選択するものであってもよいし、以前に選択したことのあるデータ・ユニットを除くだけの他のランダムな選択を実行するものであってもよい。
【００８３】
ステップ９３が、ステップ９２で対象とすべきデータ・ユニットがないことを示す場合には（バッファ中には、間引きの条件を満たすデータ・ユニットがないことをステップＳ９２で判定した場合には）、次にステップＳ９５に進み、そこでは、データ・ユニットを選択するデフォルト処理が実行される。例えば、待ち行列中のデータは、予め定められた位置のデータ・ユニットを選択し、あるいはランダムな選択処理が実行される。そして、このように選択されたデータ・ユニットは、ステップＳ９６で間引かれる。
【００８４】
ステップＳ９２でチェックされる条件は、数値（あるいは複数の数値）が特定の閾値を上回るか下回るかを判定するものであることが好ましい。例えば、数値は、Ｌ３データ・ユニットあるいはＳＤＵの長さである場合には、所定の長さを上回るデータ・ユニットを間引くことが好ましい。このようにする利点については、後で説明する。数値が、到着間隔時間である場合には、その到着間隔時間がある時間よりも長いデータ・ユニットを間引くことが可能であるか、あるいはその到着間隔時間がある時間よりも短いデータ・ユニットを間引くことが可能となる。
【００８５】
図８の手順では、数値は、ステップＳ９２でのチェックにより得られるものと仮定している。これは、例えば、図７ａのステップＳ２で決定した値あるいは複数の値を検索することによる場合である。しかし、データ間引き処理Ｓ９の判定ステップを含むことも可能である。これは、図９の例に示してあり、数値がＬ３データ・ユニットの長さとなっている場合であり、また、その手順は、長さを測定するためのステップＳ９７を含み、その判定ステップは、測定した長さをあらかじめ定められた閾値Ｔｈと比較する処理としてステップＳ９２０で実装されている。ここで、間引き処理の条件は、測定された長さが、閾値を超えるかどうかで判定される。その他のステップは、図８と同様であり、ここでは説明を省略する。
【００８６】
所定の長さを超えるデータ・ユニットを間引くこと（すなわち、その長さに到らないデータ・ユニットを間引かないこと）の利点は、小さいデータ・ユニットを間引いても、大きなデータ・ユニットを間引くほどには、上位層でのデータ・フローに影響を与えることはあまりないということにある。すなわち、小さいデータ・ユニットは、データ伝送に関して本体データ（すなわち、例えば、アプリケーション層などの更に上位層からのデータ）を含むことはあまりなく、接続の設定のために重要となる（同期メッセージなどの）メッセージ通信に使われ、（肯定応答メッセージなどによって）正確な伝送を確保したり、（終了メッセージなどによって）接続を開放するために使われる。ＴＣＰでは、このような通知メッセージの例として、ＳＹＮ、ＡＣＫ、ＦＩＮメッセージがある。これらの通知メッセージの送り元は、タイム・アウト処理によって、すなわち、喪失データ・ユニットを送ってから状況を回復するためのなんらかの動作を起こすまで、予め定められた時間が経過することを待つことによって、これらの通知メッセージの喪失を回復することができる。タイム・アウトの期間は、通常、保守的に（すなわち、長めに）設定されているため、本体データを含むデータ・ユニットの間引きに比べ、このような通知メッセージを間引くことは、データ・ユニットの全体の伝送に対して、強力な影響を与えるものとなる。すなわち、データ・ユニットを伝送するための多くのプロトコルは、大体の場合、本体データの喪失を扱うように設けられ設計されていて、データ喪失の影響が大きくならないようになっている。その結果、小さいデータ・ユニットを間引かないことにより、すなわち、データ長に関する所定の閾値を越えるようなデータ・ユニットだけを間引くことにより全体の伝送性能を向上させることができる。
【００８７】
一例として、コネクションのセット・アップの最初に、ＳＹＮメッセージを送る場合を考える。そのメッセージが１つでも喪失すると、セット・アップは、行われず、タイム・アウトが起きる。従って、本体データを送り始めるタイミングは、著しく遅延する。ＦＩＮメッセージは、コネクションの終了時に送られ、コネクションを閉じることを示すものである。このようなデータ・ユニットを間引き、結果として、そのメッセージの発信元に対して、間接的に輻輳を知らせることは、価値のないことである。その理由は、いずれにしても、この発信元は、データ伝送の終了を迎えているためである。すなわち、異なる送信元からのデータ・ユニットを間引き、輻輳を知らせることが効を奏する状況のほうがより良いものであると言える。
【００８８】
ＴＣＰのＡＣＫは、累積的なものであるため、ＡＣＫメッセージを間引くことは、伝送量に関する状況を改善するものにはならない。
【００８９】
小さいデータ・ユニットに代えて、より大きいデータ・ユニットを間引くことが好ましいということも、付け加えることができる。その理由は、小さいデータ・ユニットを間引くことは、通常、リンクにおけるバッファ処理に伴う遅延を改善することにはならないからである。すなわち、データ・ユニットを間引くきっかけとなる条件（例えば、リンク・オーバ・フローやバッファ・オーバ・フロー）を緩和する上で、小さいデータ・ユニットを間引くより大きなデータ・ユニットを間引くほうがより効果があると言える。
【００９０】
以上で論じたように、閾値Ｔｈの設定は、上位層で送信された可能性のある通知メッセージに応じて行うことが好ましいものであることが分かる。例えば、上記の実施例を、ＴＣＰが動いている上の第２の層に適用した場合には、ＳＹＮ、ＡＣＫおよびＦＩＮメッセージが間引かれることのないように閾値Ｔｈを設定すべきであり、すなわち、閾値Ｔｈは、ＳＹＮ、ＡＣＫおよびＦＩＮメッセージで予想される長さに等しいか、それより長い時間となるように設定すべきである。
【００９１】
Ｌ３データ・ユニットが属するグループを判定する（例えば、そのデータ・ユニットが特定のフローをもっているかを判定する）ステップは、図３および図４のステップＳ５について説明したように、データ・ユニットの間引き処理において用いることも可能であることを、付け加えることができる。すなわち、数値に応じてデータ・ユニットの間引き処理を行うことに加え、その判定ステップの結果もまた間引き処理のために考慮することが可能である。
【００９２】
例えば、判定処理ステップＳ５がＬ３データ・ユニットがどのフローに属しているかを決定する場合、判定されたフローについても考慮するように、例えば、特定のフローからのデータ・ユニットやフローのグループが間引かれないように、あるいは特定のフローからのデータ・ユニットやフロー・グループのみを間引くように、判定ステップＳ９２あるいはＳ９２０を修正することができる。
【００９３】
図１０は、図７から図９で説明した方法を適用することが可能なシステムの概略図である。Ｌ２層の実装には、ＳＤＵバッファ１０１、組み込み処理１０３およびＦＤＵバッファ１０４とともに、これらの各部１０１から１０３を制御するためのコントローラ１０２を含んでいる。コントローラ１０２は、好適な手順、例えば、ＳＤＵバッファに受信したＳＤＵをバッファ処理するための図７ａに示した手順と、組み込み処理１０３とＰＤＵバッファ１０４を操作するための図７ｂに示した手順を実行するように構成されている。ここで、「実装」とは、任意のハードウェア、上述した手順を実行し、所望の機能性を提供するのに好適なソフトウェアあるいはハードウェアとソフトウェアの組合せのいずれかを指すものである。その結果、各部１０１から１０４は、任意の好適なハードウェア、ソフトウェアあるいはハードウェアとソフトウェアの組合わせによって提供することも可能である。
【００９４】
図７から図１０の例では、輻輳を緩和する処理は、データ・ユニットを間引く処理として示されている。これに代わり、あるいはこれに加えて、輻輳を緩和する処理は、データ・ユニットのマーク付け処理も含むことも可能であり、この場合には、輻輳を緩和する手段は、データ・ユニットを間引く処理は含まずに、予め定めた位置（例えば、測定のヘッダ・フィールド）に、指示情報あるいは通知情報を付加する処理を含むものとなる。ここで、前記指示情報あるいは通知情報は、通信の最終地点に対して、輻輳が発生していることを通知するものとなる。この考え方の一例としては、ＴＣＰ／ＩＰにおいて知られている、明示的な輻輳通知（ＥＣＮ）があり、例えば、ＲｆＣ３１６８に詳説されている。
【００９５】
データ・ユニットへのマーク付けは、ＳＤＵユニットに関して実装することが好ましい。その理由は、輻輳を緩和する手段をとるべきかを判断するための判定ステップが、その手段を実行した場合には、ＳＤＵがマーク付けされることになるためである。
【００９６】
輻輳を緩和する手順として、データ・ユニットの間引き処理と、データ・ユニットへのマーク付け処理を組み合わせた場合、例えば、プロトコル識別子に応じて、判別されたＳＤＵと、予め定められたカテゴリに属するＳＤＵとを間引き、マーク付けすることはしないことが好ましいといえる。すなわち、ユーザ・データ・グラム・プロトコル（ＵＤＰ）データ・ユニットのように、マークを付加する意味を持つデータ・ユニットに対しては、マーク付けは行わず、輻輳を緩和する手段をとるべきと判断された場合には、むしろ間引くべきである。すなわち、よく知られているように、ＵＤＰ端局は、輻輳に対して無反応であり、輻輳を通知するマーク付けは意味をもたない。伝送制御プロトコル（ＴＣＰ）データ・ユニットのような、輻輳に反応するカテゴリに属するものと判定されたデータ・ユニットに関しては、特定の好みや希望に応じて、その輻輳を緩和する手段として、間引き処理あるいはマーク付けのいずれかを選択できる。例えば、輻輳に反応を示すＳＤＵについては、第１の起動条件（例えば、バッファ充足度についての第１の閾値を越えるといった、ＳＤＵバッファが輻輳を起こしそうな危険性をもっていることを示す起動条件）に対してデータ・ユニットへのマーク付けを行い、また、第２の起動条件（例えば、第１の閾値よりも大きな第２の閾値を越えるといった起動条件であり、バッファが輻輳を起こし、バッファ負荷を減らす必要が生じる条件）に対してデータ・ユニットの間引き処理を行うように、判定ステップを構成することができる。
【００９７】
本発明を特定の実施例を引用しながら説明してきたが、これらの実施例は、本技術分野に精通した者に対して、発明を充分かつ完全に理解できるように提示されたものであり、本発明の範囲を限定するためのものではない。本発明の範囲は、添付の特許請求の範囲によって定義されるものである。請求項における引用符号は、請求項を理解を容易にするためのものであり、この範囲を限定するものではない。
【図面の簡単な説明】
【００９８】
以下、詳細な実施例を引用することにより、本発明を説明するが、これらは、例証としてのものであり、限定されるものではない。以下に図面を説明する。
【００９９】
【図１】本発明の一実施例を説明するためのフローチャートである。
【図２】本発明の他の実施例を説明するためのフローチャートであり、データ・ユニットの長さにもとづいて数値を決定するものである。
【図３】本発明の他の実施例を説明するためのフローチャートであり、上位層データ・ユニットを、付加的に判別するものである。
【図４】本発明の他の実施例を説明するためのフローチャートであり、判別結果にもとづいて数値を決定するものである。
【図５】本発明を適用可能なプロトコル構成の概要を示す図である。
【図６】図５に示した例について、フロー分割の考え方を示す概略図である。
【図７ａ】本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。
【図７ｂ】本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。
【図７ｃ】本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。
【図８】データ・ユニットの間引き処理の例を示す図である。
【図９】データ・ユニットの間引き処理の他の例を示す図である。
【図１０】図７から図９に示した処理を実行するために構成されたシステムの概略ブロック図である。
【図１】
2004529587.tif 000003
【図２】
2004529587.tif 000004
【図３】
2004529587.tif 000005
【図４】
2004529587.tif 000006
【図５】
2004529587.tif 000007
【図６】
2004529587.tif 000008
【図７ａ】
2004529587.tif 000009
【図７ｂ】
2004529587.tif 000010
【図７ｃ】
2004529587.tif 000011
【図８】
2004529587.tif 000012
【図９】
2004529587.tif 000013
【図１０】
2004529587.tif 000014
【国際公開パンフレット】
2004529587.tif 000015
2004529587.tif 000016
2004529587.tif 000017
2004529587.tif 000018
2004529587.tif 000019
2004529587.tif 000020
2004529587.tif 000021
2004529587.tif 000022
2004529587.tif 000023
2004529587.tif 000024
2004529587.tif 000025
2004529587.tif 000026
2004529587.tif 000027
2004529587.tif 000028
2004529587.tif 000029
2004529587.tif 000030
2004529587.tif 000031
2004529587.tif 000032
2004529587.tif 000033
2004529587.tif 000034
2004529587.tif 000035
2004529587.tif 000036
2004529587.tif 000037
2004529587.tif 000038
2004529587.tif 000039
2004529587.tif 000040
2004529587.tif 000041
2004529587.tif 000042
2004529587.tif 000043
2004529587.tif 000044
2004529587.tif 000045
2004529587.tif 000046
2004529587.tif 000047
2004529587.tif 000048
2004529587.tif 000049
2004529587.tif 000050
2004529587.tif 000051
2004529587.tif 000052
2004529587.tif 000053
2004529587.tif 000054
2004529587.tif 000055
2004529587.tif 000056
2004529587.tif 000057
2004529587.tif 000058
2004529587.tif 000059
2004529587.tif 000060
2004529587.tif 000061
2004529587.tif 000062
2004529587.tif 000063
2004529587.tif 000064
2004529587.tif 000065
2004529587.tif 000066
2004529587.tif 000067
2004529587.tif 000068
2004529587.tif 000069
2004529587.tif 000070
2004529587.tif 000071
2004529587.tif 000072
2004529587.tif 000073
2004529587.tif 000074
【国際公開パンフレット（コレクトバージョン）】
2004529587.tif 000075
2004529587.tif 000076
【手続補正書】
【提出日】平成15年8月6日(2003.8.6)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
しかし、ＥＰ−０９７３３０２Ａ１記載のシステムは、必ずしも実用的なものであるとはいえない。その理由は、種類に関する情報を識別するために、上位層データ・ユニットを構文解析する必要があるためであり、この構文解析は、例えば、上位層データ・ユニットが暗号化されたヘッダおよび／または本体データを有している場合には、役にたたないものである。
ＥＰ−０９５９５８９Ａ２は、リンク層とＭＡＣ層のトランザクション終了処理をするシステムと方法を記述している。本文献では、無線リンク・プロトコル（ＲＬＰ）プロトコルあるいは移動データ・リンク・プロトコル（ＭＤＬＰ）を用いる場合に、不動作が長時間に及ぶ際にプロトコルの状態を維持し続けなければならない問題について、議論している。そこでは、効率的にトランザクションを終了させる手順を見つけることが望ましいと示されている。各無線リンク制御（ＲＬＣ）ブロック中の一時的なブロック・フローの終了を示す考え方は、ＧＰＲＳによって見解が示されているように、無駄なものであると見られている。この問題を解決するために、本文献は、ある手順を提案している。この手順では、トランザクションの開始は、ＢＥＧＩＮ  ＰＤＵでマーク付けし、前記ＰＤＵは、トランザクション中のブロック数を特定するトランザクション長さを示す指標を含んでいる。
ＷＯ９９／２７４６４およびキム他による論文「ＡＴＭネットワークにおけるデータ・パケット廃棄性能分析」は、輻湊状態となったＡＴＭスイッチで各ＡＴＭセルが廃棄された場合には、ＡＴＭネットワーク上でのＴＣＰパケットの送出は、特別な問題につながることを指摘している。その理由は、パケットの一部を運ぶ単一のセルが喪失することにより、パケット全体が破損を受けるためである。本論文では、これらの問題を回避する機構としてのＰＰＤ（部分的なパケットの廃棄）とＥＰＤ（早期のパケットの廃棄）の考え方が、述べられている。ＰＰＤでは、輻輳によって、スイッチによってセルが廃棄されるたびに、同一のセルに属する残りのセル（最後のセルを除く）を意図的に廃棄する。この意図は、帯域とバッファ容量を確保することにある。ＥＰＤは、セルの不要なバッファ処理を防ぐように設計されている。この機構は、バッファの閾値を設定し、任意のセルをバッファに保持する前に、パケット全体を収容する空きがバッファにあるかどうかを判定するために、この閾値をテストすることにより実現されている。この閾値を超える判定がなされた場合には、パケット中のすべてのセルは、（最後のセルを除き）廃棄される。
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2004529587.tif 000077
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図９
【補正方法】変更
【補正の内容】
【図９】
2004529587.tif 000078
【国際調査報告】
2004529587.tif 000079
2004529587.tif 000080
2004529587.tif 000081