JP4163613B2 - データ・ユニットの処理方法およびシステム - Google Patents

データ・ユニットの処理方法およびシステム Download PDF

Info

Publication number
JP4163613B2
JP4163613B2 JP2003501911A JP2003501911A JP4163613B2 JP 4163613 B2 JP4163613 B2 JP 4163613B2 JP 2003501911 A JP2003501911 A JP 2003501911A JP 2003501911 A JP2003501911 A JP 2003501911A JP 4163613 B2 JP4163613 B2 JP 4163613B2
Authority
JP
Japan
Prior art keywords
data unit
protocol layer
data
predetermined
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003501911A
Other languages
English (en)
Other versions
JP2004529587A (ja
Inventor
メイヤー、ミカエル
ルートヴィッヒ、ライナー
ザックス、ヨアヒム
サグフォルス、マッツ
Original Assignee
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エル エム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Publication of JP2004529587A publication Critical patent/JP2004529587A/ja
Application granted granted Critical
Publication of JP4163613B2 publication Critical patent/JP4163613B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/321Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、データ・ユニットに基づく通信システムにおいて、データ・ユニットを処理する方法に関し、また、その対応するデータ・ユニットに基づく通信システムに関するものである。
ネットワーク上でのデータ交換に関してよく知られている原理は、データ・ユニット交換の原理である。これは、送信しようとするデータを個々のユニットに分割することを意味している。これらのユニットを送信、受信するルールは、ユニット自身の構成法に関するルールとともに、いわゆるプロトコルによって規定されている。プロトコルは、送信端と受信端の間で通信ができるようにする一群のルールであり、これらのルールは、送るべきデータを、どのように、またどのような形式で準備しておくかを指定するものであり、これにより、通信しあう両者が尊守するルールを定義したプロトコルに従って、受信端がデータを解釈して応答できるものとなる。特定のプロトコルを尊守しながら通信しあう両端のことは、ピア(端局)とも呼ばれる。
これらのデータ・ユニットは、用いられるプロトコルの種類によって、パケット、フレーム、セグメント、データ・グラムなどの異なる名前で呼ばれることが多い。明瞭に理解できるよう、以下の説明では、任意の種類のプロトコルについて任意の種類のデータ・ユニットを一般的に指すために、「データ・ユニット」という用語を使用する。
データ・ユニット交換を用いた通信での重要な考え方は、プロトコル階層化の考え方である。これは、(よく、スイートと呼ばれる)複数のプロトコルが階層状に編成されることを意味しており、ここでは、各層は、特定の機能と役割をもっている。階層化の考え方は、従来からよく知られており、多くの参考書に記載されている。例えば、ダブリュー、リチャード・スティーブンス著、アディソン・ウェズレー出版社、1994年発行「図解TCP/IP,第一巻、プロトコル」があるが、ここでは、詳細を説明することはしない。
TCP/IPプロトコル・スイートは、階層化されたプロトコル階層の一例である。TCP/IPの基本的な構成は、OSI(開放型システム間相互接続)層モデルによって定義されている。最下層は、物理層あるいはL1と呼ばれ、そこでは、物理的な接続を介した直接的なデータ転送が取り扱われる。物理層の上には、リンク層とも呼ばれる第2の層L2が設けられている。リンク層L2は、通信ノード間のリンクを介したデータ・ユニットの転送を扱う機能を果たす。リンク層L2の上には、第3の層L3が設けられており、これはネットワーク層とも呼ばれる。ネットワーク層は、所定のネットワーク上でのデータ・ユニットのルーティングを扱う。ネットワーク層プロトコルの一例は、インターネット・プロトコル(IP)である。ネットワーク層の上には、第4の層L4が設けられており、これは、トランスポート層とも呼ばれる。トランスポート層プロトコルの一例としては、伝送制御プロトコル(TCP)あるいは、ユーザ・データ・グラム・プロトコル(UDP)がある。
プロトコル層の階層を用いた、データ・ユニットに基づく通信システムでは、通信は、プロトコル階層の下に向かって、送信側から所定のデータ・ユニットを送る処理と、プロトコル階層の上に向かって、受信側に向けてデータ・ユニットを送る処理を含んでいる。データ・ユニットが下向きに送られるときには、各プロトコルは、通常、そのデータ・ユニットに対して、例えば、情報を付加してゆき、各プロトコル層の特定のルールに対してデータ・ユニットの構造を変化させ適応させてゆく。通常、各プロトコル層は、上位プロトコル層から受信したデータ・ユニットに、その層自身のヘッダを付加し、さらに、区切り記号を付加する。特定のプロトコル層が上位プロトコル層からデータ・ユニットを受信する際には、上位層データ・ユニットを上位のプロトコル層のルールに従ったデータ・ユニットに埋め込む。この「埋め込み」という用語は、上位層の1つのデータ・ユニットが所定の層の1つのデータの中に入れられるカプセル化と、上位層の1つのデータ・ユニットが所定の層の複数のデータ・ユニットの中に分割されるセグメント化の両方を指している。
層形成の手順の重要なポイントは、異なる層が互いに「透けて見えないもの」であるということにある。すなわち、ある層の端局同士は、他の層で起きていることに気づかないのである。
通常、各プロトコル層は、そのデータ・ユニットに対して、なにがしかの種類の伝送制御を行うことになっている。この伝送制御には、例えば、ある種類の前進型誤信号訂正の実行、自動再送要求(ARQ)機能についてのパラメータの設定、データ・ユニットのスケジューリングあるいは比較処理の実行が含まれている。
伝送制御に関しては、プロトコル層が特定のモードで動作するようにプロトコル層を実装する方法が知られている。例としては、いわゆる、番号付きモード(Iモード)と番号なしモード(UIモード)が知られている。番号付きモードでは、送り出したデータ・ユニットが受信側の端局において正しく受信されなかったと判断された場合、送信側の端局は、前記データ・ユニットの再送を行う。このように、この再送によって、どれほどの量のパケットを伝送しなければならないかに応じて、遅延が発生したとしても、全てのパケットが正確に伝送されることを保証できる。一方、番号なしモードでは、再送は行われない。これには、遅延が少ないという利点があるが、伝送の信頼性は、物理的なコネクションの品質に依存する。
特定の伝送制御モードに所定のプロトコル層を実装することにより、上位プロトコル層からのデータ送出を最適化するために、その上位プロトコル層からの制御手順によって、モードの選択が可能となるという利点を持っている。しかし、これには、あまり柔軟性はない。その理由は、所定のプロトコル層は、通常、異なる種類の様々なデータ・ユニットを扱っていて、所定のデータ・タイプの種類の送出を最適化するためには、異なる制御設定が必要となるためである。一例としては、アプリケーション層がコンピュータ・ファイルを送る際には、信頼できる伝送が望まれ、そのために、下位層プロトコルの実装を数字付きモードに設定しようとする場合がある、あるいはアプリケーション層がテレビ電話に用いられるビデオ・ストリームのようなリアルタイム伝送を必要とするデータを送ることが必要となった際には、信頼性よりも伝送速度が重視される場合があり、アプリケーション層は、下位層プロトコル実装を番号なしモードに設定しようとする。しかし、コンピュータ・ファイル・データとビデオ・データの両方を送る場合には、下位層プロトコル実装を所定の伝送モードに設定することは、最適な解をもたらすものにはならない。
EP−0973302A1記載のものは、この問題を提起し、あるシステムを提案している。そのシステムでは、上位データ・ユニット層を受信して、これらの上位データ層を前記所定の層のデータ・ユニットに埋め込む所定のプロトコル層は、ヘッダ情報を読み込み、上位層データ・ユニットの種類を決定することにより、上位層データ・ユニットを判別するように構成されている。次に、識別された種類に応じて、分類を行う。このようにして、所定のプロトコル層は、そのデータ・ユニット自身に埋め込まれた上位層データ・ユニットの種類に応じて、そのデータ・ユニットの伝送信頼性を柔軟に設定することができる。一例として、EP−0973302A1記載のシステムをTCP/IPスイートのリンク層に適用した場合、リンク層は、その層が受信したネットワーク層IPデータ・ユニットがTCPデータ・ユニットを運んでいるかどうかを識別することができる。この場合、リンク層データ・ユニットは、番号付きモードで送られる。一方、ネットワーク層IPデータ・ユニットがUDPデータ・ユニットを運ぶ場合には、リンク層データ・ユニットは、番号なしモードで送られる。
しかし、EP−0973302A1記載のシステムは、必ずしも実用的なものであるとはいえない。その理由は、種類に関する情報を識別するために、上位層データ・ユニットを構文解析する必要があるためであり、この構文解析は、例えば、上位層データ・ユニットが暗号化されたヘッダおよび/または本体データを有している場合には、役にたたないものである。
EP−0959589A2は、リンク層とMAC層のトランザクション終了処理をするシステムと方法を記述している。本文献では、無線リンク・プロトコル(RLP)プロトコルあるいは移動データ・リンク・プロトコル(MDLP)を用いる場合に、不動作が長時間に及ぶ際にプロトコルの状態を維持し続けなければならない問題について、議論している。そこでは、効率的にトランザクションを終了させる手順を見つけることが望ましいと示されている。各無線リンク制御(RLC)ブロック中の一時的なブロック・フローの終了を示す考え方は、GPRSによって見解が示されているように、無駄なものであると見られている。この問題を解決するために、本文献は、ある手順を提案している。この手順では、トランザクションの開始は、BEGIN PDUでマーク付けし、前記PDUは、トランザクション中のブロック数を特定するトランザクション長さを示す指標を含んでいる。
WO99/27464およびキム他による論文「ATMネットワークにおけるデータ・パケット廃棄性能分析」は、輻湊状態となったATMスイッチで各ATMセルが廃棄された場合には、ATMネットワーク上でのTCPパケットの送出は、特別な問題につながることを指摘している。その理由は、パケットの一部を運ぶ単一のセルが喪失することにより、パケット全体が破損を受けるためである。本論文では、これらの問題を回避する機構としてのPPD(部分的なパケットの廃棄)とEPD(早期のパケットの廃棄)の考え方が、述べられている。PPDでは、輻輳によって、スイッチによってセルが廃棄されるたびに、同一のセルに属する残りのセル(最後のセルを除く)を意図的に廃棄する。この意図は、帯域とバッファ容量を確保することにある。EPDは、セルの不要なバッファ処理を防ぐように設計されている。この機構は、バッファの閾値を設定し、任意のセルをバッファに保持する前に、パケット全体を収容する空きがバッファにあるかどうかを判定するために、この閾値をテストすることにより実現されている。この閾値を超える判定がなされた場合には、パケット中のすべてのセルは、(最後のセルを除き)廃棄される。
所定のプロトコル層において、より上位のプロトコル層のデータ・ユニットを処理する改良した方法およびシステムを提供することが望まれており、この方法とシステムは、簡単に実装ができるが、改良された伝送特性を柔軟に提供するものである。
上記の目的は、独立した請求項の主題によって達成されるものである。その有利な実施例は、従属項にて説明される。
本発明の実施例によれば、例えば、リンク層L2のような所定のプロトコル層において、例えば、ネットワーク層L3のような上位のプロトコル層で受信された所定のデータ・ユニットに関する、1つあるいはそれ以上の数の数値的に定量化されるパラメータの1つあるいはそれ以上の数の値が決定される。すなわち、数値的に定量化される1つのパラメータの1つの値を決定することができるか、数値的に定量化される1つのパラメータの複数の値が決定できるか、もしくは数値的に定量化される複数のパラメータの中の1つの各々の値の1つあるいはそれ以上の数の値が決定することができる。少なくとも1つの数値は、上位プロトコル層の所定のデータ・ユニットに含まれる情報からは求められることはない。すなわち、上位プロトコル層のデータ・ユニットの内容を分析する代わりに、数値的に評価される1つあるいはそれ以上の数の単純な物理的な特性を測定し、決定された値に応じて、埋め込みおよび/または伝送制御が行われる。その結果、上位層のデータ・ユニットのパーシング、あるいは他の同様の複雑な処理が不要となる。
数値的に定量化されるパラメータとしては、上位層データ・ユニットの長さを一例としてあげることができる。すなわち、例えば、L2などの所定のプロトコル層において、例えば、上位層であるL3層のデータ・ユニットが受信され、前記L3層データ・ユニットの長さが測定される。次に、前記の長さ測定の結果に応じて、前記L3データ・ユニットを1つあるいはそれ以上の数のL2データ・ユニットに埋め込むための埋め込み処理あるいは前記L3データ・ユニットが埋め込まれた1つあるいはそれ以上の数のL2データ・ユニットを伝送する伝送制御処理を実行する。
好ましくは、予め決定された特性を最適化するために伝送制御を調整する基礎段階として、長さ測定を用いることができる。より明確に言うと、L3データ・ユニットが予め決定された長さの許容範囲に納まっている場合には、スループットを最適化するためのパラメータとともに、L2データ・ユニットを伝送する。すなわち、L3データ・ユニットがTCPデータ・ユニットを伝送する場合、L3データ・ユニットがTCPの最大セグメント長の近傍の範囲に納まるか、それに等しい最大長さを表すデータ長をもっていると判断されたならば、上記L3層から伝送されているより大量のデータに最大長のL3データ・ユニットが属するものとして、その伝送スループットに関して最適化される。一方、L3データ・ユニットがより短いデータ長をもっている場合には、L3データ・ユニットは、同期メッセージあるいは肯定応答メッセージのような制御処理に関するものであると判断され、伝送制御は、遅延に関して最適化される。この場合、遅延に関する最適化の方がスループットに関する最適化よりも好ましい。
本発明において数値的に定量化されるパラメータの他の例としては、(例えば、L3のような)上位プロトコル層のバッファ保持データ・ユニットあるいは上位層データ・ユニットを受信する(例えば、L2のような)プロトコル層のバッファ保持データ・ユニットのバッファ充足レベルがあげられる。さらに、数値的に定量化されるパラメータの他の例としては、上位層データ・ユニットの到着間隔時間、すなわち、2つの連続した上位層データ・ユニットが到着するタイミングの間隔があげられる。
数値的に定量化されるこれらのパラメータの例の各々は、埋め込みおよび/または伝送制御を行う際に用いられる1つあるいはそれ以上の数の値を与える基礎データとして単独で用いることもできるし、埋め込みおよび/または伝送制御を行う際に用いられるこれらの値を与える数値的に定量化される指定されたパラメータの1つあるいはそれ以上の数のものと共に用いることもできる。
一実施例によれば、本発明を応用した方法は、上位層データが属する上位プロトコル層のデータ・ユニットの一群を識別するステップを含むものである。この判別は、上位層データ・ユニットの送信元情報および/または宛先情報、および/または上位層データ・ユニットのプロトコル識別子に基づいて行われる。特に、本実施例をTCP/IPプロトコルに適用した場合には、判別は、上位層データ・ユニットが属するフローを決定する処理にあるものとすることができる。このフローは、送信元と宛先のIPアドレスによって定義され、送信元と宛先のポート番号とプロトコル識別子である。
前記の判別の結果は、上位データ・ユニット層を埋め込むデータ・ユニットのための伝送制御処理に用いることができる。さらに、特定すると、上位層データ・ユニットの長さを最大データ・ユニット長を示す参照範囲あるいは参照値と比較する上記の例では、上位層データ・ユニットの種類を考慮することにより、この比較を拡張することができる。すなわち、上位層データ・ユニットの種類(あるいは、上位層データ・ユニットに含まれるデータ・ユニットの種類)は、上位層データ・ユニットの長さを比較する対象となる参照範囲あるいは参照値を決定する手段として用いることができる。例えば、上位層データ・ユニットが、第1の種類のもの(すなわち、予め定められた第1のグループ)であると判別された場合には、前記上位層データ・ユニットの長さは、長さに関する第1の参照値(あるいは、長さに関する複数の参照値の第1の組、すなわち、ある範囲に広がる離散値の組、あるいは、連続した値の第1の範囲)と比較される。これに対し、上位層データ・ユニットが第2の種類のもの(すなわち、予め定められた第2のグループ)であると判別された場合には、前記上位層データ・ユニットの長さは、長さに関する第2の参照値(あるいは、長さに関する複数の参照値の第2の組、あるいは連続した値の第2の範囲)と比較される。
一方、前記識別処理の結果は、数値を決定するための数値的に定量化されたパラメータを決定するベースとしても用いられる。すなわち、数値的に定量化されたパラメータは、下位のプロトコル層のバッファに保持されたデータ・ユニットのバッファ充足度に関連づけることができ、ここで、数値は、判別されたグループに所属する、例えば、判別されたフローに所属する上位プロトコル層のデータ・ユニットを取り込んだバッファ中の下位プロトコル層(例えば、L2)のデータ・ユニットの数である。同様に、上位層データ・ユニットの到着間隔時間を、数値的に定量化できるパラメータとして用いる際には、判別した組に所属するこれらの上位層データ・ユニットの到着間隔時間として、その数値を選ぶことができる。後者の場合、すなわち、ある組に所属するデータ・ユニットの到着間隔時間を決定する際には、例えば、所定の長さのカテゴリに含まれる組のデータ・ユニットの到着間隔時間を決定するために、さらに条件を追加することが可能である。例えば、組の種類がフローであり、長さのカテゴリが、肯定応答を含むデータ・ユニットに対応したもの(すなわち、最小長さを持つもの)として選択された場合には、伝送制御のベースとしてフロー中の肯定応答データ・ユニットの到着間隔時間を用いることが可能となる。
数値的に定量化されたパラメータの数値に応じて実行される伝送制御は、前進型誤信号訂正の調節や、ARQ(自動再送要求)設定の調節、あるいはスケジューリングの調節など、任意の適した手段に設けることができる。さらに、組み込み処理が、上位層データ・ユニットをセグメントに分割して、複数の下位層データ・ユニットに埋め込むものである場合には、この分割処理は、数値に応じて、すなわち、決定された数値に応じて下位層のセグメント長を調節することによって実行される。伝送制御は、上位層データ・ユニットを受信する層、あるいは、より下位層でのデータ・ユニットを調節する処理に設けられる。例えば、本発明の方法を、リンク層L2に適用した場合には、この調節は、L2データ・ユニットに対して行われるが、L1データ・ユニットに対しても行うことができる。
上述したように、伝送制御は、決定された数値によって、所定の目的パラメータを最適化するために行われる。この目的パラメータの例としては、スループット(単位時間当りに伝送される本体データの量)あるいは(平均の)伝送遅延があげられる。
他の実施例によれば、上位層データ・ユニットが埋め込まれた下位層データ・ユニットを伝送する伝送制御は、下位層データ・ユニットを判別する処理を含んでおり、この処理では、判別の結果に従って、1つあるいはそれ以上の数の下位層データ・ユニットの各々は、予め定められた複数の伝送カテゴリのいずれか1つに分類される。このように下位層データ・ユニットを判別する処理は、予め決定されたグループに所属した上位層データ・ユニットを埋め込んだ下位層データ・ユニットを、上位層データ・ユニットのグループのサブ・グループに分割するようにして、上位層データ・ユニットの判別と有利に組み合わせることができる。例えば、上位層データ・ユニット(例えば、L3データ・ユニット)属するグループがフローである場合には、このフローは、フローのデータ・ユニットを埋め込んだ下位プロトコル層(例えば、L2)のサブ・フローに分割することができる。
本発明の他の実施例によれば、数値的に定量化されたパラメータの1つあるいはそれ以上の数の数値を輻輳を緩和する処理に用い、データ・ユニットについての輻輳緩和手段を実行すべきか、前記の1つの数値あるいは複数の数値に依らないようにすべきかを決定する決定処理を実行する。例えば、この輻輳緩和処理は、データ・ユニットを間引く処理および/または、データ・ユニットにマーク付けする処理から構成することができる。従って、輻輳緩和手段は、バッファからデータ・ユニットを間引くこと、あるいはデータ・ユニットにマーク付けすることになる。なお、このマーク付けは、通信の最終地点に対して、輻輳が起きていることを通知するものである。このマーク付けの例としては、TCP/IPで知られている明示的な輻輳通知(ECN)がある。
例えば、L2層で受信したL3データ・ユニットが、処理前にバッファに保持されていたとする。さらに、バッファに保持されている1つあるいはそれ以上の数のL3データ・ユニットに対する輻輳緩和手段を実行する輻輳緩和処理が設けられているものとする。輻輳緩和処理は、予め定められた複数の条件によって実行が開始される。これらの条件の例としては、L2データ・ユニットが送られるリンクのリンク過負荷が検出された場合、あるいは受信されたL3データ・ユニットを格納するバッファのバッファ・オーバ・フローが検出された場合などがある。本実施例によれば、輻輳緩和手段を実行するか否かを決定する決定処理は、決定された数値に依存するものであり、例えば、L3データ・ユニットの長さに依存し、また、L3データ・ユニットの到着間隔時間にも依存する。L2層で受信されるL3データ・ユニット(サービス・データ・ユニット、SDUと呼ばれる)のバッファ処理に関する上記例では、所定のL3データ・ユニットに関する数値に依存して輻輳緩和の要否を決定する考え方は、所定のL3データ・ユニットが埋め込まれた1つあるいはそれ以上の数のL2データ・ユニット(L2 PDU)にも適用することができる。しかし、輻輳緩和処理が、データ・ユニット間引き処理によるものである場合には、後々間引かれる可能性のあるデータを予め埋め込んでおくという無駄になることを避けるため、最上位のサブ層、すなわち、SCUレベルで任意の輻輳緩和処理を実行することが望ましい。
本発明の方法およびシステムは、ハードウェア、ソフトウェアあるいはハードウェアとソフトウェアの任意の好適な組み合わせによって、任意の好適なあるいは適切な方法で実施することが可能である。
以下に、本技術分野に精通した者に対して、発明を充分かつ完全に理解できるように、本発明の詳細な実施例を説明する。しかし、本発明の範囲を請求項によって定義するように、これらの実施例は、例証のものであり、限定することを意図したものではない。
以下の例は、TCP/IPを前提に説明する。しかし、本発明は、上位層データ・ユニットを下位層データ・ユニットに埋め込み、下位層データ・ユニットに対して伝送制御をおこなう任意のプロトコル階層に適用可能である。
以下の実施例は、本発明をリンク層L2に適用することを前提に説明するものであり、このリンク層は、ネットワーク層からのL3データ・ユニットを埋め込むものである。しかし、これは一例にすぎず、本発明は、プロトコル階層の任意のレベル、すなわち、リンク層の下位、あるいは上位のいずれにでも適用することができる。
図1は、本発明の第一の実施例を説明するフローチャートである。図示したように、第1のステップS1では、L3データ・ユニットがL3層の下のリンク層L2に送られる。次に、ステップS2では、L3データ・ユニットに関連した数値的に定量化されたパラメータの数値を決定する。ここで、「L3データ・ユニットに関連した」という意味は、広義の意味として、L3データ・ユニットから求められた数値的に定量化された任意のパラメータに関連したものであると捉えることができる。ここで、前記パラメータは、このようなL3データに関連するもの、あるいはL3データ・ユニットに埋め込まれたL3よりも上位の層からのデータ・ユニットに関連するものである。さらに、ステップ3では、受信したL3データを1つあるいはそれ以上の数のL2データ・ユニットに埋め込む。最後に、ステップS4では、ステップS2で決定した数値に応じて、L3データを埋め込んだ、1つあるいはそれ以上の数のL2データ・ユニットおよび/またはL1データ・ユニットに対する伝送制御を行う。
図1の例は、特定の手順に従ったステップS1からS4を示したものであるが、これは一例であり、ステップS1からS4を他の構成とすることも可能である。
ステップS4で実行される調節は、特定の状況と、使用するシステムに依存したものとなる。例えば、伝送制御は、L2プロトコル層のデータ・ユニットあるいはL2プロトコル層の下位のL1データ・ユニットに対する前進型誤信号訂正を調節することを含むものであってよい。前進型誤信号訂正の種類は、望ましいもの、あるいは適切なものから選ぶことができる。例えば、伝送制御は、所定のリンクおよび、あるいはインターリービングの度合いにおける、伝送出力の調節および/またはデータ・レートの(例えば、CDMAシステムでの拡散係数を選択することによる)調節を含んでいる。ここでいうリンクとは、例えば、無線リンクとすることができる。
L2プロトコル層が予め定められた条件のもとで、L2データ・ユニットを自動的に再送信する機能を含むものならば、この伝送制御は、前記再送信機能を調節することを含むものであってよい。
ステップS3における埋め込み処理がセグメント分割処理となっている場合には、図1の実施例は、前記数値に応じてセグメント分割処理が実行されるように構成することができる。すなわち、数値に応じたセグメント分割処理は、数値に応じたステップS4での伝送制御に代わるものとすることができるし、あるいは数値に応じたセグメント分割処理は、数値に応じたステップ4での伝送制御を補完し、すなわち、この伝送制御とともに行うものとすることができる。
前記セグメント分割処理の調節は、例えば、所定のL3データ・ユニットがセグメント化され埋め込まれるL2データ・ユニットの長さを調節することを含むものであってよい。
図2は、本発明の他の実施例のフローチャートである。図1と同一の引用符号が図2のステップを指し示している。すなわち、最初に、ステップS1では、L3データ・ユニットをL2層に送る。次に、ステップS21は、図1に示したステップ2をより一般化した一例を示すものであり、そこでは、受信したL3データ・ユニットの長さを測定する。すなわち、受信したL3データ・ユニット中に、どれだけのデータが含まれるかをビットあるいはバイトなど任意の好適な単位で決定する。
ステップS3では、L2データ・ユニットを1つあるいはそれ以上の数のL2ユニットに埋め込む。次に、ステップS41、S42およびS43のステップに従い、伝送制御を行うが、これらのステップは、図1のステップS4の一般化された処理の一例を表すものである。特に、ステップ41は、測定されたL3データ・ユニットの長さを少なくとも1つの参照長さと比較するものであるが、ここで、前記参照長さは、最大のデータ・ユニット長さを表すものであることが好ましい。さらに、L3データ・ユニットの長さが参照長さに等しい場合には、スループットに関して伝送処理を最適化し(ステップS42)、一方、L3データ・ユニットの長さが参照長さと異なる場合には、遅延に関して伝送処理を最適化する(ステップS43)。
上記の例で、ステップ41は、測定された長さを参照値と比較する処理となっている。当然のことながら、測定された長さは、値の範囲と比較することも可能であり、その場合、前記範囲は、参照値の離散化された値とすることも可能であるし、あるいは連続値とすることも可能であるし、または離散値と連続値を組み合わせることも可能である。また、上記の例で、参照値(あるいは範囲)は、データ・ユニットの最大長を表すものであった。しかし、これは一例に過ぎず、適用するシステムと状況に応じて、任意の好適なあるいは望ましい方法で、参照値(あるいは範囲)を選ぶことができる。例えば、参照値は、肯定応答を伝えるデータ・ユニットであることを示す、データ・ユニットの最大長さを表すものとすることも可能である。
スループットに関して伝送制御を最適化する処理は、例えば、前進型誤信号訂正の量を減らし、伝送の信頼性を確保するためにARQを可能とする処理を含ませることが可能である。一方、遅延に関して伝送制御を最適化する処理は、例えば、前進型誤信号訂正の量を増やすが、ARQは、不可とする処理とすることが可能である。これについては、後で、TCP/IPを前提として、より詳細に説明する。
非リアル・タイム・アプリケーションは、TCPの上で実行されることが多いが、リアル・タイム・アプリケーションは、通常、UDPの上で実行される。非リアル・タイム・アプリケーションのためのリンク層(L2)プロトコルに対する主要な設計要求は、スループットに関して最適化することにある。これは、例えば、全体のスループットが最適となるよう、前進型誤信号訂正とARQの間のトレード・オフを調節することにより実現される。前進型誤信号訂正を弱め、ARQを可能とすることによって、高いスループットを実現することが可能となる。スループットは、単位時間当りに伝送される本体データの量である。前進型誤信号訂正は、オーバーヘッドを増加させ、伝送すべき本体データの量が減ってしまうという結果をもたらすため、前進型誤信号訂正の減少させることに伴いスループットを増加させることができる。
暗号を用いた前進型誤信号訂正では、データは、ブロックに分割されるが、ここで、各ブロックは、冗長化された情報と本体データを組み合わせる暗号化処理の結果となり、これにより、ブロックが正確に受信され暗号解読されたかを受信機の側で判断することが可能となる。さらに、ブロック・エラー率は、受信ブロックがエラーを持っていると判断されたイベントの率として定義することができる。前進型誤信号訂正を減らすことは、ブロックエラー率が増えることにつながるが、スループットは増えることにはならない。例えば、データ・レートに(1−ブロック・エラー率)を掛けて、スループットを計算する場合、データ・レートが8kbit/s、ブロックエラー率が0.01であるならば、スループットは、7.92kbit/sとなる。これに対して、(前進型誤信号訂正がほとんどないことにより得られた)データ・レートが12kbit/s、(前進型誤信号訂正を減らしたことによる)ブロック・エラー率が0.1であるならば、スループットは、10.8kbit/sとなる。従って、ブロック・エラー率が10倍高くても、本体データ量が増えることが、全体のスループットを向上させることにつながる。
ここで問題なのは、TCPによるバルク・データ転送に対応したフロー中でさえ、スループットについては全体的に最適化が計られているが、個々のデータ・ユニットやセグメントが遅延に影響されやすいということである。例として、コネクション設定メッセージがあり、データ伝送を開始するために、これらのメッセージは、できるだけ迅速に交換する必要がある。他の例としては、反対方向へのTCPの肯定応答メッセージやHTTPリクエストがあるが、これらは、できるだけ迅速に受信する必要がある。
スループットに関して最適化する必要のあるL3データ・ユニットと、遅延減少に関して最適化する必要のあるものとを区別するために、本実施例では、図2のステップS21で、L3データ・ユニットの長さを決定する。
すなわち、スループットを最適化するべきL3データ・ユニットは、一般的には、より大量のアプリケーション・データ量をもち、これは、トランスポート層データ・ユニット、例えば、TCPセグメントに分割される。従って、これらのトランスポート層データ・ユニットは、さらにネットワーク層(L3)データ・ユニットに埋め込まれることになるが、これらは、一般的には、最大の伝送ユニット長、例えば、TCPの最大セグメント長(MSS)を持つものとなる。
その結果、既に述べたように、予め定められた最大伝送ユニット長を表す参照値あるいは参照範囲について比較がなされるように、図2のステップS41が設けられている。通常、最大伝送ユニット長の値は、256バイト、512バイト、536バイトあるいは1460バイトであり、40バイトのIPヘッダを考慮すると、ステップ41で用いる好適なデータ長の参照値は、296バイト、552バイト、576バイトあるいは1500バイトとなる。
既に述べたように、L3データ・ユニットの測定された長さを既に述べた離散値、296、552、576および1500バイトの系列のような複数の参照長さ、あるいは好適な連続的な範囲、あるいは離散値と連続値の組み合わせと比較するように、ステップS41が設けられている。さらに、L3ユニットの測定された長さが複数の参照長さのいずれかの1つと等しいならば、あるいは予め定まられた1つあるいは複数の範囲の中に納まるならば、ステップS42に進み、スループットに関して伝送制御を最適化する。
これに関連して、参照長さの値は、IPヘッダだけでなく、ヘッダ圧縮の可能性についても考慮してもよいと言える。すなわち、ステップS41で用いられる複数の参照長さの値は、ヘッダ圧縮を考慮した複数の値を含む場合もある。
図2の例では、参照長さとは異なる長さをもつ他のデータ・ユニットが、最適化された遅延時間をもって送られる(ステップS43)。すなわち、これらのデータは、最小の遅延時間で送られる。TCP/IPの例では、これは、(同期メッセージ、肯定応答メッセージなどの)すべての純粋なTCP制御メッセージは、最小遅延時間で送られることを意味している。また、より長いアプリケーションデータ量をもつ最終データ・ユニットもまた最適化された(例えば、最小の)遅延時間で伝送される。
上述したように、例えば、適切なコーディング手順を選択することおよび/または伝送出力を調節することにより、遅延に関する最適化を行うことができる。再送信の要する付加的な遅延は、100msであると仮定すると、小さいデータ・ユニットについての伝送遅延は短くなり、ほとんど重要なものにはならないと言える。従って、より強力な前進型誤信号訂正(例えば、より多くの冗長性)および/またはより高い送信出力を用いることにより、平均遅延時間を短縮することができる。
例えば、100バイト長のデータ・ユニットを想定し、上述した値を例として、8kbit/sのデータ・レート、0.01のブロック・エラー率ならびに20バイトのブロック長を用いた場合には、平均遅延は、100+5msとなる。あるいは12kbit/sのデータ・レート、0.1のブロック・エラー率ならびに30バイトのブロック長を用いた場合には、平均遅延は、80+40msとなる。データ・レートを増やし、それにともなってブロック・サイズが増えるため、最初の例では、100バイトを伝送するためには5ブロックが必要となり、2番目の例では、4ブロックのみが必要となる。最初の場合、5ブロックのうち1ブロックがデータの破損を起こす可能性は、概ね5%であり、平均して、5msの遅延が加わることになる。2番目の例では、同様の計算によって、40msの遅延が加わることになる。以上の結果として、前進型誤信号訂正を強めることにより、データ・レートは、減少するものの、平均遅延時間は短縮できることになる。
別の例は、伝送制御が伝送出力を調節する処理を含む場合である。これは、例えば、所望のリンクに対して目標とする信号対妨害比を設定し、出力制御ループによって維持することにより実現できる。信号対妨害比を高めることにより、リンク品質を向上することができ、すなわち、伝送出力を上げる代償として、リンク上の伝送エラー数を減らすことができる。伝送エラーを減らすことにより、エラー回復の遅延が短くなり、その結果、平均の伝送遅延が短くなる。
図2の例では、ステップS41の決定処理の結果、スループットに対して、あるいは遅延に対して伝送の最適化が行われる。当然のことながら、これは一例に過ぎない。伝送制御は、特定のアプリケーションやシステムに応じて、好適なあるいは望ましいものとして、他の目標パラメータに関して最適化することも可能である。これらの目標パラメータには、例えば、伝送出力、拡散コード、割り当てられた物理チャネル数などのシステム資源がある。さらに、ステップS41の決定処理の結果、ステップS42とステップS43の2つの処理よりも多い処理に分岐するように構成することも可能である。例えば、ステップS41を次のように構成することも可能である。すなわち、L3データ・ユニットをn個の参照長さあるいはn個の参照範囲と比較し、その判定結果を、n個の伝送制御処理に分岐するようにし、各伝送制御処理は、1つの参照値あるいは参照範囲に対応したものとし、さらに、1つのデフォルトの伝送制御処理を分岐先に加え、n個の参照長さのいずれの長さでない、あるいは、n個の参照範囲のいずれの範囲に含まれないL3データ・ユニットに対する伝送制御処理を構成することができる。
上述した実施例では、ステップS4あるいはステップS41からステップS43で実行される伝送制御は、ステップS2で決定された数値に基づいて実行されるものであった。さらに、受信したL3データ・ユニットに関してなされる他の測定や決定に基づいて、伝送制御を行うことも可能である。すなわち、図3に示すように、本図では、ステップS1、S21およびS3は、図2の対応するステップと同一であり、ここでは説明を繰り返さないが、ステップS5は、ステップS3の後に実行され、L3データ・ユニットが属するグループを判別する。次に、ステップS40は、図1では一般化して記載されていたステップ4の一例であり、ここでは、受信したL3データ・ユニットを埋め込んだ1つあるいはそれ以上の数のL2データ・ユニットに対し、ステップS21で決定した数値とステップ5の判定結果に応じた伝送制御を実行する。
ここでは、判定処理は、L3データ・ユニットに含まれる最終情報および/またはL3データ・ユニットに含まれるプロトコル識別子にもとづいて実行することが好ましい。例えば、L3データ・ユニットが分類されたグループは、そのデータ・ユニットが所属するフローとすることができる。既に上述したように、TCP/IPの場合は、L3データ・ユニットが分類されたグループは、そのデータ・ユニットが所属するフローとすることができ、そのフローは、送り元と宛先のIPアドレス、送り元と宛先のポート番号ならびにプロトコル識別子によって定義される。他の例としては、L3データ・ユニットが分類されたグループは、伝送される本体データの種類によって決定することもでき、この場合、本体データの種類は、例えば、データ・ユニット中のプロトコル識別子をチェックすることによって判別できる。これは、L3データ・ユニット自身のプロトコル識別子をチェックすること、あるいは、L3データ・ユニット中の本体データとして伝送されるデータ・ユニットの1つあるいはそれ以上の数のプロトコル識別子をチェックすることを意味する。
ステップS40での伝送制御処理は、アプリケーションの特定の状況に応じて、任意の好適なあるいは望ましい方法で実行することができる。例えば、図3のステップS40は、比較処理で用いられる参照長さは、L3データ・ユニットが分類されたグループに応じて選択する処理を加えて、図2のステップS41、S42およびS43と同様の構成とすることができる。例えば、このグループは、L3データ・ユニットに埋め込まれたデータ・ユニットの種類にもとづいて決定することができ、例えば、判定処理は、IPデータ・ユニットがTCPデータ・ユニットあるいはUDPデータ・ユニットのどちらを伝送するのかを判定するものとすることができる。そのデータ・ユニットが、TCPデータ・ユニットを伝送するものであると判定された場合には、第1の参照長さを用い、UDPデータ・ユニットを伝送するものであると判定された場合には、第2の参照長さを比較処理に用いることができる。
図3では、ステップS5で得られた判定結果は、ステップS40の伝送制御処理での一要素として用いられる。しかし、受信したL3データ・ユニットを、予め定めた複数のグループの中の1つに分類することも用いて、後に伝送制御処理で用いることができる数値を決定するベースとすることができる。これを図4に示す。ステップS1で、L3データ・ユニットを受信した後、判定処理ステップS5を実行する。次に、ステップS22は、図1では一般化されたステップS2であったものの一例であり、そこで、判定結果にもとづき、数値を決定する。その後、図1で説明したものと同様に、ステップS3とS4を実行する。
例えば、数値的に定量化されたパラメータは、バッファに保持されたL2データ・ユニットのバッファ充足度に関連づけることができ、ここで、数値的に定量化されたパラメータは、ステップS5で判別されたグループに属するL3データ・ユニットを埋め込んだバッファ中のL2データ・ユニットの数である。これに代わり、数値的に定量化されたパラメータは、判別されたグループに属するL3データ・ユニットの到着間隔時間であってもよい。このように、数値的に定量化されたパラメータを決定する利点については、図5に示した例に関するところで詳細に説明する。
図5は、例えば、第三世代共同プロジェクト(http://www.3gpp.org)発行の技術基準3GTS25.301V3.3.0(1999年12月)、に記載されているような、汎用携帯電話システム(UMTS)において動作するリンク層を前提に実装した本発明の一実施例を示すものである。本資料は、本開示の参考文献として全体を引用する。
図5は、本発明の好適な応用例を示したものである。しかし、本発明は、これに限定されるものではない。むしろ、本発明の方法とシステムは、例えば、一般のパッケージ・オーディオ・サービス(GPRS)あるいは任意の他の移動通信基準に対応して動作する装置のような、任意の移動通信装置に対して適用することが可能である。さらに、本発明の方法とシステムは、当然のことながら、移動通信システムへの応用に限定されるものではなく、プロトコル階層をもつ任意の通信システムに適用することが可能である。
図5において、無線資源制御(RRC)処理201が提供され、これにより、一般的なL2実装のほかの部分の動作を制御する。ここでは、L2プロトコル実装は、L2/PDCP、L2/BMC、L2/RLCおよびL2/MACのサブ層を含んでいる。図5は、他の処理に対して接続された制御線204、205、206、207および208を概略的に示したものあり、以下で説明する。すなわち、パケット・データ輻輳プロトコルの機能を実行するために、1つあるいはそれ以上の数のパケット・データ輻輳プロトコル(PDCP)処理202が設けられている。さらに、マルチ・キャストあるいはブロード・キャストによって、複数の宛先にデータ・ユニットを送信することを制御する機能を実行するために、BMC(ブロード・キャスト/マルチ・キャスト制御)処理203が設けられている。引用番号209は、無線リンク制御プロトコルを実装した無線リンク制御(RLC)処理を指すものである。番号211は、L2層のメディア・アクセス制御(MAC)部を表す。最後に、番号302は、物理層L1を概略的に表すものである。
無線資源制御処理201は、上位層L3(不図示)から制御情報を受信する。ユーザのアプリケーションは、L2データ・ユニットに埋め込む予定のL3データ・ユニットをPDCP処理202、BMC処理203および/またはRLC処理209に送る。
引用番号210は、L2層の論理チャネルを表すものであり、一方、引用番号301は、L2層とL1層の間のトランス・ポート・チャネルを表すものである。
L2層に関する一般的な制御は、RRC処理201によって実行される。特に、ユーザデータは、無線アクセスの所有者に伝送される。無線資源制御処理201によって、1つあるいはそれ以上の数の無線所有者が構成され、これにより無線プロトコルの層1および層2の構成が決定される。PDCP処理202では、IPヘッダ圧縮が適用され、1つの論理チャネル上に複数のトラフィック・フローを多重化することが用いられる。RLC処理は、ARQなどの後退型誤信号訂正を、とりわけ、論理チャネルに適用する。MAC処理211は、L2データ・ユニットのスケジューリングを実行し、トランス・ポート・チャネル301への分配を行う。
本発明の一実施例では、PDCP処理202の機能は、分割機能によって拡張され、この機能は、受信したトラフィック・フロー(例えば、IPフロー)をサブ・フローに分離し、これらを独立したRLC接続を会して伝送する。IPヘッダ圧縮がPDCPに適用されているため、PDCPにおいて必要なフロー情報は、すでに利用可能となっている。一例として、対応するフロー分離を、図6に概略的に示す。PDCP処理202によって受信したIPデータ・ユニットのフローは、4つのサブフローに分割され、その各々のフローは、独立したRLC処理209a、209b、209cおよび209dによって処理される。数値的に定量化されたパラメータ、例えば、L3データ・ユニット長、バッファ充足度、あるいは到着間隔時間の数値に応じて、この分離は実行される。さらに、この分離は、データ・ユニットの種類に応じて、実行される。
例えば、数値は、L3ユニット長さと、伝送中のデータ・ユニットの種類とすることができる。その場合、図6に示した分割処理は、以下のように構成することが可能となる。すなわち、肯定応答の長さを持ち、TCPデータ・ユニットとなっているデータを最適なRLC構成、すなわち、最小遅延で伝送することができるようにし、さらに、他のIPデータ・ユニットが、RLC接続の上に分離されるようにするという構成である。ここで、これらのデータ・ユニットは、各々のデータ・ユニットの長さおよび/または各々のデータ・ユニットの種類に対して最適化されている。
IPフローを複数のRLCサブ・フローに分割する他の方法としては、IPフローの異なる位相を分離する方法、例えば、TCPスロー・スタート位相を輻輳回避位相から分離する方法がある。より低い伝送遅延が達成されるように、スロー・スタート位相が構成されている場合には、終端間性能は、より向上するものとなり、リンク資源(例えば、コード)は、より迅速に解放される。
伝送遅延を少なくする方法には、例えば、信号対妨害比の高い目標値、強力な前進型誤信号訂正、より積極的なARQ設定などがある。TCPフローの異なる位相を区別するために、数値的に定量化されるパラメータとして、バッファ充足度を用いるか、あるいは到着間隔時間を用いる上述した方法が利用可能である。すでに説明したように、到着間隔時間の決定は、データ・ユニット長の範囲の決定と組み合わせることができ、この場合、伝送制御のベースとして用いられる値は、予め定められた長さの範囲に納まる長さをもつデータ・ユニットの到着間隔時間となる。
例えば、RLCバッファレベルを用いた場合には、RLCバッファ充足度が予め定められた閾値を下回るならば、TCPフローは、おそらく、徐々に開始したフェーズにある(あるいは、アプリケーション・データの終了にある)といえる。その理由は、新たなデータの到着がないためである。この予め定められた閾値よりも高い、あるいは、第2の予め定められた閾値よりも高い場合には、TCPは、輻輳回避フェーズにあるものと考えられる。結果として、バッファ充足度によって、徐々に開始したフェーズにあることが判明した場合には、L2データ・ユニットは、遅延を短くするために最適化されたRLC接続に送られる。バッファ充足度によって、輻輳回避フェーズにあることが判明した場合には、L2データ・ユニットは、スループットに関して最適化されたRLC接続に送られる。
数値的に定量化されるパラメータとして、IPデータ・ユニットの到着間隔時間を用いる際には、上記の考え方に対応したものを適用する。すなわち、到着間隔時間が、予め定められた閾値よりも長い場合には徐々に開始したフェーズにあるものと判定し、それに対し、到着間隔時間が、この予め定められた閾値よりも短い場合、あるいは第2の予め定められた閾値よりも短い場合には、輻輳回避フェーズにあると判定する。
図6に示すように、フローを複数のRLCサブ・フローに分割する方法に代えて、データ・ユニットの各ストリームを独立したRLC処理209a、209b、209cあるいは209dによって扱う方法では、全てのデータ・ユニットを、1つの順応性のあるサブ・フローの形で伝送する。この場合、すべてのデータ・ユニットは、同一のRLC処理によって扱われるが、各データ・ユニットは(異なる前進型誤信号訂正、異なるセグメント長さ、異なるARQ,異なる伝送出力(例えば、異なる信号対妨害比など)によって)別々に処理される。
以上の実施例では、L3データ・ユニットに関する少なくとも1つの数値的に定量化されたパラメータの数値をL3データ・ユニットの組み込みの制御および/または前記L3データ・ユニットを組み込んだL2データ・ユニットの伝送制御のためのパラメータとして利用していた。次に、図7から図10を用いて、別の実施例を説明する。これらは、数値的に定量化されたパラメータを使って、バッファに保持されたL3データ・ユニットおよび/またはバッファに保持されたL2データ・ユニットに関して輻輳を緩和する処理を行うものである。
以下の例では、輻輳を緩和する処理を、データ・ユニットの間引き処理として説明する。
図7aは、受信したL3データ・ユニットをバッファリングする処理を示すものである。所定の層(例えば、L2)で受信したL3(一般的には、高位層の)データ・ユニットは、受信データ・ユニット(SDU)と呼ばれ、一方、このSDUに組み込まれた(カプセル化、あるいは分割された)データ・ユニットは、プロトコル・データ・ユニット(PDU)と呼ばれる。従って、受信したこれらのL3データ・ユニットが保持されたバッファは、SDUバッファとも呼ばれる。受信したL3データ・ユニットがL2データ・ユニットの中に処理される(組み込まれる)前に、このSDUバッファは、このL3データ・ユニットを格納する。図7aの処理によれば、第1のステップS1は、L3データ・ユニットをL2層に送る処理からなり、その後、ステップS2において、受信したL3データ・ユニットに関する少なくとも1つの数値的に定量化されたパラメータについての、1つあるいはそれ以上の数の数値を決定する。これらのステップS1およびS2は、図1から図4で示した同一の符号をもつステップと同様であり、これらの図に関して詳細に説明したように実装することができる。従って、数値的に定量化されたパラメータは、例えば、データ・ユニット長さ、あるいはデータ・ユニットの到着間隔時間とすることができる。最後に、ステップS6において、受信されたL3データ・ユニットあるいはSCUは、SDUバッファ中に入れられ、SDUに対する次の処理があるまで、そこに保持される。
ステップS2は、必ずしも、バッファ処理の前に実行する必要はなく、その後で実行するものであってもよい。これについては、図9の実施例のところで説明する。
受信したSDUをバッファ処理することは、特に、受信した層で、例えば、受信した層が無線リンクを介してデータを送信する、リンク層である場合には、引き続いて処理があることが確実でない、あるいはその処理がありそうにないという状況において有利なものとなる。
図7bは、バッファに入れられたSDUの処理、すなわち、SDUをL2PDUに埋め込む手順を示したものである。ステップS31では、SDUは、SDUバッファから取り出され、1つあるいはそれ以上の数のL2PDUに組み込まれる。ステップS7では、1つあるいはそれ以上の得られたL2PDUを、PDUバッファに一時格納する。図1から図4で説明した伝送制御処理S4、S40、S41からS43の任意の処理に応じて、バッファに保持されたL2PDUが伝送される。図7bの処理手順は、ステップS31から、伝送制御処理S4、S40、S41からS43にL2PDUを直接送ることにより実現することもできる。
図7cは、SDUバッファとPDUバッファの一方あるいは両方の内容を扱うための基本手順を示したものである。ステップS8では、バッファに保持されたデータの間引き処理のための開始条件が満たされているかどうかを判定し、満たされていれば、データ・ユニットの間引き処理S9を行う。この処理の開始条件は、好適なもの、あるいは好ましいものとして選ぶことができ、例えば、バッファが、オーバ・フロー状態(例えば、バッファ内のデータ量が、オーバ・フロー限界を越えた状態)になった場合や、L3PDUを伝送しようとするリンクが、過負荷状態(例えば、リンクに暫定的に与えられた帯域が、このリンクを介して伝送するべきデータを送るために必要とされる帯域に対して予め定められた制限割合を下回る状態)になった場合に、データ・ユニットの間引き処理を実行するようにしてもよい。
データ・ユニットの間引きは、本発明が実装される層でのオーバ・フローや過負荷状態を緩和するのに有益となるだけでなく、輻輳が起きている上位層への指標として使うこともできる。TCP/IPで知られている低速開始と輻輳回避のアルゴリズムは、伝送経路におけるデータ・ユニット損失に対応する際に、フロー制御が用いる機構の一例となっている。
データ・ユニット間引き処理S9は、バッファに保持された検討中のデータ・ユニットを間引きすべきか否かを判定する判定ステップを含んでおり、ここで、前記判定ステップは、所定のL3データ・ユニットについて数値的に定量化された少なくとも1つのパラメータに関する、1つあるいはそれ以上の数の数値に依存している。処理の対象となるデータ・ユニットがL3データ・ユニットである場合、そのL3データ・ユニットは、バッファに保持されて処理の対象となるデータ・ユニットとなる(すなわち、SDUの間引きを考慮した場合には、数値的に定量化されるパラメータは、対象としている前記SDUに関するものとなり、例えば、前記SDUの長さやその到着間隔時間となる。)また、処理の対象となるデータ・ユニットがL2データ・ユニットである場合、前記所定のL3データ・ユニットは、処理の対象となる前記データ・ユニットに埋め込まれたL3データとなる(すなわち、L3PDUの間引きを考慮した場合には、数値的に定量化されるパラメータは、対象としている前記L2PDUに埋め込まれたSDUに関するものとなり、例えば、前記SDUの長さやその到着間隔時間となる)。
上で示したように、データの間引き処理は、SDUバッファとPDUバッファの、いずれか1つあるいは、両方において行われる。しかし、間引きされる可能性の高いデータに対して結局無駄になる組み込み処理を避けるために、最上位のサブ・レイア、すなわち、SDUバッファでデータ・ユニットの間引きを行うことが好ましい。
図8は、データ・ユニット間引き処理S9の一例を示すものである。第1のステップS91では、第1のデータ・ユニットを対象とする。対象とするデータ・ユニットの選択は、好ましいあるいは望ましい形で行われ、データ・ユニットがバッファに保持される方法に依存して行われる。例えば、データ・ユニットが待ち行列に入っている場合には、待ち行列中の(最初のデータ・ユニットあるいは最後のデータ・ユニットなど)予め定められた位置にあるデータ・ユニットを選択することも可能であり、あるいはデータ・ユニットをランダムに選ぶような、なんらかの種類の選択手順を選ぶことも可能である。
さらに、ステップS92では、上述した判定ステップを実行し、対象としているデータ・ユニットのSDU(SDU自身、もしくはSDUを埋め込んだL2PDU)のL3データ・ユニットの数値(例えば、データ・ユニット長さあるいは到着間隔時間)が、予め定められた条件を満足するかどうかを判定し、予め定められた条件が満足されたならば、ステップS96に進み、対象とするデータ・ユニットを間引く。そうでない場合には、ステップS93に進み、すでに対象として処理済みのものの他に、他のデータ・ユニットがバッファ中にあるかを判定する。そうである場合には、ステップS94に進み、そこで次のデータ・ユニットを選択し、処理をステップS92に戻す。次のデータの選択は、好ましい、あるいは適応した方法によって行われ、通常は、ステップS91で用いた方法にリンクしている。例えば、ステップS94は、待ち行列中の次の、あるいは前のデータ・ユニットを単純に選択するものであってもよいし、以前に選択したことのあるデータ・ユニットを除くだけの他のランダムな選択を実行するものであってもよい。
ステップ93が、ステップ92で対象とすべきデータ・ユニットがないことを示す場合には(バッファ中には、間引きの条件を満たすデータ・ユニットがないことをステップS92で判定した場合には)、次にステップS95に進み、そこでは、データ・ユニットを選択するデフォルト処理が実行される。例えば、待ち行列中のデータは、予め定められた位置のデータ・ユニットを選択し、あるいはランダムな選択処理が実行される。そして、このように選択されたデータ・ユニットは、ステップS96で間引かれる。
ステップS92でチェックされる条件は、数値(あるいは複数の数値)が特定の閾値を上回るか下回るかを判定するものであることが好ましい。例えば、数値は、L3データ・ユニットあるいはSDUの長さである場合には、所定の長さを上回るデータ・ユニットを間引くことが好ましい。このようにする利点については、後で説明する。数値が、到着間隔時間である場合には、その到着間隔時間がある時間よりも長いデータ・ユニットを間引くことが可能であるか、あるいはその到着間隔時間がある時間よりも短いデータ・ユニットを間引くことが可能となる。
図8の手順では、数値は、ステップS92でのチェックにより得られるものと仮定している。これは、例えば、図7aのステップS2で決定した値あるいは複数の値を検索することによる場合である。しかし、データ間引き処理S9の判定ステップを含むことも可能である。これは、図9の例に示してあり、数値がL3データ・ユニットの長さとなっている場合であり、また、その手順は、長さを測定するためのステップS97を含み、その判定ステップは、測定した長さをあらかじめ定められた閾値Thと比較する処理としてステップS920で実装されている。ここで、間引き処理の条件は、測定された長さが、閾値を超えるかどうかで判定される。その他のステップは、図8と同様であり、ここでは説明を省略する。
所定の長さを超えるデータ・ユニットを間引くこと(すなわち、その長さに到らないデータ・ユニットを間引かないこと)の利点は、小さいデータ・ユニットを間引いても、大きなデータ・ユニットを間引くほどには、上位層でのデータ・フローに影響を与えることはあまりないということにある。すなわち、小さいデータ・ユニットは、データ伝送に関して本体データ(すなわち、例えば、アプリケーション層などの更に上位層からのデータ)を含むことはあまりなく、接続の設定のために重要となる(同期メッセージなどの)メッセージ通信に使われ、(肯定応答メッセージなどによって)正確な伝送を確保したり、(終了メッセージなどによって)接続を開放するために使われる。TCPでは、このような通知メッセージの例として、SYN、ACK、FINメッセージがある。これらの通知メッセージの送り元は、タイム・アウト処理によって、すなわち、喪失データ・ユニットを送ってから状況を回復するためのなんらかの動作を起こすまで、予め定められた時間が経過することを待つことによって、これらの通知メッセージの喪失を回復することができる。タイム・アウトの期間は、通常、保守的に(すなわち、長めに)設定されているため、本体データを含むデータ・ユニットの間引きに比べ、このような通知メッセージを間引くことは、データ・ユニットの全体の伝送に対して、強力な影響を与えるものとなる。すなわち、データ・ユニットを伝送するための多くのプロトコルは、大体の場合、本体データの喪失を扱うように設けられ設計されていて、データ喪失の影響が大きくならないようになっている。その結果、小さいデータ・ユニットを間引かないことにより、すなわち、データ長に関する所定の閾値を越えるようなデータ・ユニットだけを間引くことにより全体の伝送性能を向上させることができる。
一例として、コネクションのセット・アップの最初に、SYNメッセージを送る場合を考える。そのメッセージが1つでも喪失すると、セット・アップは、行われず、タイム・アウトが起きる。従って、本体データを送り始めるタイミングは、著しく遅延する。FINメッセージは、コネクションの終了時に送られ、コネクションを閉じることを示すものである。このようなデータ・ユニットを間引き、結果として、そのメッセージの発信元に対して、間接的に輻輳を知らせることは、価値のないことである。その理由は、いずれにしても、この発信元は、データ伝送の終了を迎えているためである。すなわち、異なる送信元からのデータ・ユニットを間引き、輻輳を知らせることが効を奏する状況のほうがより良いものであると言える。
TCPのACKは、累積的なものであるため、ACKメッセージを間引くことは、伝送量に関する状況を改善するものにはならない。
小さいデータ・ユニットに代えて、より大きいデータ・ユニットを間引くことが好ましいということも、付け加えることができる。その理由は、小さいデータ・ユニットを間引くことは、通常、リンクにおけるバッファ処理に伴う遅延を改善することにはならないからである。すなわち、データ・ユニットを間引くきっかけとなる条件(例えば、リンク・オーバ・フローやバッファ・オーバ・フロー)を緩和する上で、小さいデータ・ユニットを間引くより大きなデータ・ユニットを間引くほうがより効果があると言える。
以上で論じたように、閾値Thの設定は、上位層で送信された可能性のある通知メッセージに応じて行うことが好ましいものであることが分かる。例えば、上記の実施例を、TCPが動いている上の第2の層に適用した場合には、SYN、ACKおよびFINメッセージが間引かれることのないように閾値Thを設定すべきであり、すなわち、閾値Thは、SYN、ACKおよびFINメッセージで予想される長さに等しいか、それより長い時間となるように設定すべきである。
L3データ・ユニットが属するグループを判定する(例えば、そのデータ・ユニットが特定のフローをもっているかを判定する)ステップは、図3および図4のステップS5について説明したように、データ・ユニットの間引き処理において用いることも可能であることを、付け加えることができる。すなわち、数値に応じてデータ・ユニットの間引き処理を行うことに加え、その判定ステップの結果もまた間引き処理のために考慮することが可能である。
例えば、判定処理ステップS5がL3データ・ユニットがどのフローに属しているかを決定する場合、判定されたフローについても考慮するように、例えば、特定のフローからのデータ・ユニットやフローのグループが間引かれないように、あるいは特定のフローからのデータ・ユニットやフロー・グループのみを間引くように、判定ステップS92あるいはS920を修正することができる。
図10は、図7から図9で説明した方法を適用することが可能なシステムの概略図である。L2層の実装には、SDUバッファ101、組み込み処理103およびFDUバッファ104とともに、これらの各部101から103を制御するためのコントローラ102を含んでいる。コントローラ102は、好適な手順、例えば、SDUバッファに受信したSDUをバッファ処理するための図7aに示した手順と、組み込み処理103とPDUバッファ104を操作するための図7bに示した手順を実行するように構成されている。ここで、「実装」とは、任意のハードウェア、上述した手順を実行し、所望の機能性を提供するのに好適なソフトウェアあるいはハードウェアとソフトウェアの組合せのいずれかを指すものである。その結果、各部101から104は、任意の好適なハードウェア、ソフトウェアあるいはハードウェアとソフトウェアの組合わせによって提供することも可能である。
図7から図10の例では、輻輳を緩和する処理は、データ・ユニットを間引く処理として示されている。これに代わり、あるいはこれに加えて、輻輳を緩和する処理は、データ・ユニットのマーク付け処理も含むことも可能であり、この場合には、輻輳を緩和する手段は、データ・ユニットを間引く処理は含まずに、予め定めた位置(例えば、測定のヘッダ・フィールド)に、指示情報あるいは通知情報を付加する処理を含むものとなる。ここで、前記指示情報あるいは通知情報は、通信の最終地点に対して、輻輳が発生していることを通知するものとなる。この考え方の一例としては、TCP/IPにおいて知られている、明示的な輻輳通知(ECN)があり、例えば、RfC3168に詳説されている。
データ・ユニットへのマーク付けは、SDUユニットに関して実装することが好ましい。その理由は、輻輳を緩和する手段をとるべきかを判断するための判定ステップが、その手段を実行した場合には、SDUがマーク付けされることになるためである。
輻輳を緩和する手順として、データ・ユニットの間引き処理と、データ・ユニットへのマーク付け処理を組み合わせた場合、例えば、プロトコル識別子に応じて、判別されたSDUと、予め定められたカテゴリに属するSDUとを間引き、マーク付けすることはしないことが好ましいといえる。すなわち、ユーザ・データ・グラム・プロトコル(UDP)データ・ユニットのように、マークを付加する意味を持つデータ・ユニットに対しては、マーク付けは行わず、輻輳を緩和する手段をとるべきと判断された場合には、むしろ間引くべきである。すなわち、よく知られているように、UDP端局は、輻輳に対して無反応であり、輻輳を通知するマーク付けは意味をもたない。伝送制御プロトコル(TCP)データ・ユニットのような、輻輳に反応するカテゴリに属するものと判定されたデータ・ユニットに関しては、特定の好みや希望に応じて、その輻輳を緩和する手段として、間引き処理あるいはマーク付けのいずれかを選択できる。例えば、輻輳に反応を示すSDUについては、第1の起動条件(例えば、バッファ充足度についての第1の閾値を越えるといった、SDUバッファが輻輳を起こしそうな危険性をもっていることを示す起動条件)に対してデータ・ユニットへのマーク付けを行い、また、第2の起動条件(例えば、第1の閾値よりも大きな第2の閾値を越えるといった起動条件であり、バッファが輻輳を起こし、バッファ負荷を減らす必要が生じる条件)に対してデータ・ユニットの間引き処理を行うように、判定ステップを構成することができる。
本発明を特定の実施例を引用しながら説明してきたが、これらの実施例は、本技術分野に精通した者に対して、発明を充分かつ完全に理解できるように提示されたものであり、本発明の範囲を限定するためのものではない。本発明の範囲は、添付の特許請求の範囲によって定義されるものである。請求項における引用符号は、請求項を理解を容易にするためのものであり、この範囲を限定するものではない。
以下、詳細な実施例を引用することにより、本発明を説明するが、これらは、例証としてのものであり、限定されるものではない。以下に図面を説明する。
本発明の一実施例を説明するためのフローチャートである。 本発明の他の実施例を説明するためのフローチャートであり、データ・ユニットの長さにもとづいて数値を決定するものである。 本発明の他の実施例を説明するためのフローチャートであり、上位層データ・ユニットを、付加的に判別するものである。 本発明の他の実施例を説明するためのフローチャートであり、判別結果にもとづいて数値を決定するものである。 本発明を適用可能なプロトコル構成の概要を示す図である。 図5に示した例について、フロー分割の考え方を示す概略図である。 本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。 本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。 本発明の一実施例の処理を示すものであり、データ・ユニットがバッファに保持され、データ・ユニットの間引き処理が設けられているものである。 データ・ユニットの間引き処理の例を示す図である。 データ・ユニットの間引き処理の他の例を示す図である。 図7から図9に示した処理を実行するために構成されたシステムの概略ブロック図である。

Claims (31)

  1. データ・ユニットに基づく通信システムにおける伝送のために第1のプロトコル層(L3)のデータ・ユニットを処理する方法であって、
    前記第1のプロトコル層(L3)の伝送されるべき所定のデータ・ユニットを、第2のプロトコル層(L2)に送るステップであり、前記第2のプロトコル層(L2)は、前記第1のプロトコル層(L3)の下にあるステップと、
    1つあるいはそれ以上の数の数値を決定するステップであり、前記1つあるいはそれ以上の数の数値は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットに関する少なくとも1つの数値的に定量化されるパラメータに属するステップと、
    前記第1のプロトコル層(L3)の前記所定のデータ・ユニットを前記第2のプロトコル層(L2)の1つあるいはそれ以上の数のデータ・ユニットに埋め込むステップと、
    前記第1のプロトコル層(L3)の前記所定のデータ・ユニットを埋め込んだ前記第2のプロトコル層(L2)の1つあるいはそれ以上の数のデータ・ユニットのための伝送制御を実行するステップとを含み、
    前記少なくとも1つの数値的に定量化されるパラメータの前記1つあるいはそれ以上の数の数値に応じて、前記埋め込むステップおよび/または前記伝送制御を実行するステップが実行されることを特徴とする前記方法。
  2. 請求項1に記載の方法を実行するように構成されたコンピュータ・プログラム。
  3. 第1のプロトコル層(L3)と第2のプロトコル層(L2)の実装を含むデータ・ユニットに基づく通信システムであって、前記第1のプロトコル層(L3)は、前記第2のプロトコル層(L2)の上に置かれ、前記システムは、第1のプロトコル層(L3)の伝送されるべき所定のデータ・ユニットを前記第2のプロトコル層(L2)に送り、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)の前記所定データ・ユニットに関する少なくとも1つの数値的に定量化されるパラメータに属する1つあるいはそれ以上の数の数値を決定し、前記第1のプロトコル層(L3)の前記所定データ・ユニットを前記第2のプロトコル層(L2)の1つあるいはそれ以上の数のデータ・ユニットに埋め込み、少なくとも1つの数値的に定量化されるパラメータの1つあるいはそれ以上の数の数値に応じて、前記第1のプロトコル層(L3)の前記所定データ・ユニットを埋め込んだ前記第2のプロトコル層(L2)の1つあるいはそれ以上の数のデータ・ユニットのための伝送制御を実行するように構成されたことを特徴とする前記システム。
  4. 請求項記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも1つの数値的に定量化されるパラメータは、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットの長さであることを特徴とする前記システム。
  5. 請求項3又は4記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも1つの数値的に定量化されるパラメータは、前記第1のプロトコル層(L3)あるいは前記第2のプロトコル層(L2)のバッファ保持データ・ユニットのバッファ充足度に関連したものであることを特徴とする前記システム。
  6. 請求項3乃至5のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記少なくとも1つの数値的に定量化されるパラメータは、前記第1のプロトコル層(L3)のデータ・ユニットの到着間隔時間であることを特徴とする前記システム。
  7. 請求項3乃至6のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットが属する前記第1のプロトコル層(L3)のデータ・ユニットのグループを判別するように構成されたことを特徴とする前記システム。
  8. 請求項記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)の前記データ・ユニットに含まれる送り元情報および/または宛先情報および/またはプロトコル識別子に基づいて前記グループを判別するように構成されたことを特徴とする前記システム。
  9. 請求項7又は8記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットを埋め込んだ前記第2のプロトコル層(L2)の1つあるいはそれ以上の数のデータ・ユニットのための伝送制御を前記判別の結果に応じて実行することを特徴とする前記システム。
  10. 請求項7又は8記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記数値を前記判別の結果に基づいて決定することを特徴とする前記システム。
  11. 請求項10記載のデータ・ユニットに基づく通信システムであって、前記第2のプロトコル層(L2)のデータ・ユニットを保持するバッファを含むシステムであって、前記数値的に定量化されるパラメータは、前記グループの属する前記第1のプロトコル層(L3)のデータ・ユニットを埋め込んだ前記バッファ中の前記第2のプロトコル層(L2)のデータ・ユニットの数であることを特徴とする前記システム。
  12. 請求項10記載のデータ・ユニットに基づく通信システムであって、前記グループの属する前記第1のプロトコル層(L3)のデータ・ユニットの到着間隔時間を測定するタイマを含むシステムであって、前記数値的に定量化されるパラメータは、前記グループに所属する前記第1のプロトコル層(L3)のデータ・ユニットの到着間隔時間であることを特徴とする前記システム。
  13. 請求項3乃至12のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記伝送制御は、前記第2のプロトコル層(L2)の前記データ・ユニットあるいは前記第2のプロトコル層(L2)の下の前記第3のプロトコル層(L1)のデータ・ユニットのための前進型誤信号訂正を調節することを含むことを特徴とする前記システム。
  14. 請求項13記載のデータ・ユニットに基づく通信システムは、さらに、前記第2のプロトコル層(L2)の前記データ・ユニットのリンク上への送信を制御し、前記伝送制御は、伝送出力および/または前記リンク上のデータ・レートおよび/またはインターリービングの度合いを調節する関数(RLC)を含むことを特徴とする前記システム。
  15. 請求項3乃至14のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、あらかじめ定められた条件のもとで前記第2のプロトコル層(L2)のデータ・ユニットの自動再送を提供する機能を含み、前記伝送制御は、前記再送機能を調節することを含むことを特徴とする前記システム。
  16. 請求項3乃至15のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記第2のプロトコル層(L2)の前記データ・ユニットをスケジューリングする機能(MAC)を含み、前記伝送制御は、前記スケジューリングを調節することを含むことを特徴とする前記システム。
  17. 請求項3乃至16のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)のデータ・ユニットのセグメント化操作を実行するように構成され、前記伝送制御は、前記セグメント化操作を調節することを含むこと特徴とする前記システム。
  18. 請求項17記載のデータ・ユニットに基づく通信システムにおいて、前記セグメント化操作の調節は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットがセグメント化されて埋め込まれた前記第2のプロトコル層(L2)のデータ・ユニットの長さを調節することを含むことを特徴とする前記システム。
  19. 請求項3乃至18のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記伝送制御は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットが前記数値に応じて埋め込まれた前記第2のプロトコル層(L2)の前記1つあるいはそれ以上の数のデータ・ユニットを判別することと、前記第2のプロトコル層(L2)の前記1つあるいはそれ以上の数のデータ・ユニットの各々を、前記判別結果に基づいて、あらかじめ定められた複数の伝送カテゴリーの1つに割り当てることを含むことを特徴とする前記システム。
  20. 請求項3乃至18のいずれかに記載のデータ・ユニットに基づく通信システムにおいて、前記システムは、移動通信装置に含まれることを特徴とする前記システム。
  21. 請求項20記載のデータ・ユニットに基づく通信システムにおいて、前記移動通信装置は、汎用携帯電話システム(UMTS)の規格に従って動作することを特徴とする前記システム。
  22. データ・ユニットに基づく通信システムにおける伝送のために、第1のプロトコル層(L3)のデータ・ユニットを処理する方法であって、
    前記第1のプロトコル層(L3)の伝送されるべき所定のデータ・ユニットを第2のプロトコル層(L2)に送るステップであり、前記第2のプロトコル層(L2)は、前記第1のプロトコル層(L3)の下にあるステップと、
    前記第1のプロトコル層(L3)の前記データ・ユニットと、前記第2のプロトコル層(L2)の前記データ・ユニットが埋め込まれた前記第2のプロトコル層の1つあるいはそれ以上の数のデータ・ユニットとの一方あるいは両方に対してバッファ処理(S6、S7)を実行するステップと、
    1つあるいはそれ以上の数のあらかじめ定められた起動条件が満たされた場合にバッファに保持されたデータ・ユニットのための輻輳緩和処理(S9)を実行するステップとを含み、
    前記輻輳緩和処理(S9)は、バッファに保持され対象となるデータ・ユニットに関して輻輳緩和処理を実行するべきか否かを判定するステップ(S92)を含み、判定ステップは、前記第1のプロトコル層(L3)の所定のデータ・ユニットに関する少なくとも1つの数値的に定量化されるパラメータに属する少なくとも1つあるいはそれ以上の数の数値に応じてなされるものであり、対象とするデータ・ユニットが前記第1のプロトコル層(L3)のデータ・ユニットであれば、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットは、対象とするデータ・ユニットであり、対象とするデータ・ユニットが前記第2のプロトコル層(L2)のデータ・ユニットであれば、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットは、対象とする前記データ・ユニットに組み込まれた前記第1のプロトコル層(L3)のデータ・ユニットであることを特徴とする前記方法。
  23. 請求項22記載の方法において、前記輻輳緩和処理は、対象とする前記バッファ処理されたデータ・ユニットを間引くためのデータ・ユニット間引き処理および/または前記第1のプロトコル層(L3)の前記所定データ・ユニットにマークを付加するためのデータ・ユニットマーク付け処理を含むことを特徴とする前記方法。
  24. 請求項22又は23記載の方法において、前記少なくとも1つの数値的に定量化されるパラメータは、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットの長さであることを特徴とする前記方法。
  25. 請求項24記載の方法において、前記判定ステップ(S92)は、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットの長さを予め定められた閾値(Th)と比較することと、閾値を越える場合には、対象となるデータ・ユニットに対して輻輳緩和手段を実行することを含むことを特徴とする前記方法。
  26. 請求項22乃至25のいずれかに記載の方法において、前記少なくとも1つの数値的に定量化されるパラメータは、前記第1のプロトコル層(L3)のデータ・ユニットの到着間隔時間であることを特徴とする前記方法。
  27. 請求項22乃至26のいずれかに記載の方法は、さらに、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットが属する前記第1のプロトコル層(L3)のデータ・ユニットのグループを判別するステップを含むことを特徴とする前記方法。
  28. 請求項27記載の方法において、前記グループは、前記第1のプロトコル層(L3)の前記データ・ユニットに含まれる送り元情報および/または宛先情報および/またはプロトコル識別子に基づいて判別されることを特徴とする前記方法。
  29. 請求項27又は28記載の方法において、前記輻輳緩和処理の前記判定ステップは、前記判別するステップの結果に応じてなされること特徴とする前記方法。
  30. 請求項29記載の方法において、前記グループは、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットのプロトコル識別子に基づき判別され、前記判定ステップは、輻輳緩和手段が、対象とするデータ・ユニットの間引き処理を含むか、あるいは前記第1のプロトコル層(L3)の前記所定のデータ・ユニットへのマーク付けを含むかを決定することを含み、プロトコル識別子が予め定められたカテゴリに属する場合には、対象とするデータ・ユニットを間引きすることを特徴とする前記方法。
  31. 第1のプロトコル層(L3)と第2のプロトコル層(L2)の実装を含むデータ・ユニットに基づく通信システムであって、前記第1のプロトコル層(L3)は、前記第2のプロトコル層(L2)の上に置かれ、前記システムは、第1のプロトコル層(L3)の伝送されるべき所定のデータ・ユニットを前記第2のプロトコル層(L2)に送り、前記第2のプロトコル層(L2)の前記実装は、前記第1のプロトコル層(L3)の前記データ・ユニットと、前記第2のプロトコル層(L2)の前記データ・ユニットが埋め込まれた前記第2のプロトコル層の1つあるいはそれ以上の数のデータ・ユニットとの一方あるいは両方に対してバッファ保持するバッファ(101、104)と、前記バッファ(101、104)に接続されて、1つあるいはそれ以上の数の予め定められた開始条件が満たされた場合にバッファ保持されたデータ・ユニットに対する輻輳緩和処理(S9)を実行するコントローラ(102)を含むことを特徴とするシステムであって、
    前記輻輳処理(S9)は、バッファに保持され対象となるデータ・ユニットに関して輻輳緩和処理を実行するか否かを判定するステップ(S92)を含み、判定ステップは、前記第1のプロトコル層(L3)の所定のデータ・ユニットに関する少なくとも1つの数値的に定量化されるパラメータに属する少なくとも1つあるいはそれ以上の数の数値に応じてなされるものであり、対象とするデータ・ユニットが前記第1のプロトコル層(L3)のデータ・ユニットであるとき、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットは、対象とするデータ・ユニットであり、対象とするデータ・ユニットが前記第2のプロトコル層(L2)のデータ・ユニットであるとき、前記第1のプロトコル層(L3)の前記所定のデータ・ユニットは、対象とする前記データ・ユニットに組み込まれた前記第1のプロトコル層(L3)のデータ・ユニットであることを特徴とする前記システム。
JP2003501911A 2001-05-23 2002-05-22 データ・ユニットの処理方法およびシステム Expired - Fee Related JP4163613B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01112026A EP1261183A1 (en) 2001-05-23 2001-05-23 Method and system for processing a data unit
PCT/EP2002/005624 WO2002100064A2 (en) 2001-05-23 2002-05-22 Method and system for processing a data unit

Publications (2)

Publication Number Publication Date
JP2004529587A JP2004529587A (ja) 2004-09-24
JP4163613B2 true JP4163613B2 (ja) 2008-10-08

Family

ID=8177453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003501911A Expired - Fee Related JP4163613B2 (ja) 2001-05-23 2002-05-22 データ・ユニットの処理方法およびシステム

Country Status (8)

Country Link
US (2) US7876781B2 (ja)
EP (2) EP1261183A1 (ja)
JP (1) JP4163613B2 (ja)
KR (1) KR100837488B1 (ja)
AT (1) ATE415768T1 (ja)
AU (1) AU2002321032B2 (ja)
DE (1) DE60230034D1 (ja)
WO (1) WO2002100064A2 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1449312B1 (en) * 2001-11-30 2012-03-21 BRITISH TELECOMMUNICATIONS public limited company Method of resource control in a wireless network
WO2004032454A1 (en) * 2002-10-01 2004-04-15 Telefonaktiebolaget L M Ericsson (Publ) A unit and a method for handling a data object
EP1582034B1 (de) * 2003-01-06 2007-02-21 Philips Semiconductors Dresden AG Verfahren und kommunikationseinrichtung zur erweiterung der breite der datenübertragungsraten in drahtlosen lokalen netzwerken
JP2004228762A (ja) * 2003-01-21 2004-08-12 Matsushita Electric Ind Co Ltd 試験装置、移動端末装置及び試験方法
WO2004084517A1 (en) * 2003-03-20 2004-09-30 Telefonaktiebolaget Lm Ericsson (Publ) Data unit transmission method and device
US7065144B2 (en) 2003-08-27 2006-06-20 Qualcomm Incorporated Frequency-independent spatial processing for wideband MISO and MIMO systems
US8472473B2 (en) 2003-10-15 2013-06-25 Qualcomm Incorporated Wireless LAN protocol stack
BRPI0415422A (pt) * 2003-10-15 2006-12-05 Qualcomm Inc controle de acesso a mìdia de alta velocidade com interoperabilidade de sistema legado
US8284752B2 (en) 2003-10-15 2012-10-09 Qualcomm Incorporated Method, apparatus, and system for medium access control
US8462817B2 (en) 2003-10-15 2013-06-11 Qualcomm Incorporated Method, apparatus, and system for multiplexing protocol data units
US9226308B2 (en) 2003-10-15 2015-12-29 Qualcomm Incorporated Method, apparatus, and system for medium access control
US8842657B2 (en) 2003-10-15 2014-09-23 Qualcomm Incorporated High speed media access control with legacy system interoperability
US8233462B2 (en) 2003-10-15 2012-07-31 Qualcomm Incorporated High speed media access control and direct link protocol
US8483105B2 (en) 2003-10-15 2013-07-09 Qualcomm Incorporated High speed media access control
US8903440B2 (en) 2004-01-29 2014-12-02 Qualcomm Incorporated Distributed hierarchical scheduling in an ad hoc network
US7818018B2 (en) 2004-01-29 2010-10-19 Qualcomm Incorporated Distributed hierarchical scheduling in an AD hoc network
US8315271B2 (en) 2004-03-26 2012-11-20 Qualcomm Incorporated Method and apparatus for an ad-hoc wireless communications system
US7564814B2 (en) 2004-05-07 2009-07-21 Qualcomm, Incorporated Transmission mode and rate selection for a wireless communication system
US8401018B2 (en) 2004-06-02 2013-03-19 Qualcomm Incorporated Method and apparatus for scheduling in a wireless network
US7882412B2 (en) 2004-10-05 2011-02-01 Sanjiv Nanda Enhanced block acknowledgement
JP4545619B2 (ja) * 2005-03-15 2010-09-15 富士通株式会社 ネットワークシステム、レイヤ3通信装置、レイヤ2通信装置および経路選択方法
US7965736B2 (en) 2005-08-24 2011-06-21 Qualcomm Incorporated Transmission of multiplex protocol data units in physical layer packets
US8600336B2 (en) 2005-09-12 2013-12-03 Qualcomm Incorporated Scheduling with reverse direction grant in wireless communication systems
US8260286B2 (en) * 2006-10-30 2012-09-04 Nokia Corporation Method, apparatus and system for testing user equipment functionality
TW200833026A (en) * 2007-01-29 2008-08-01 Via Tech Inc Packet processing method and a network device using the method
US20090257377A1 (en) * 2008-04-09 2009-10-15 Texas Instruments Incorporated Reducing buffer size for repeat transmission protocols
US8031607B2 (en) * 2009-01-29 2011-10-04 Alcatel Lucent Implementation of internet protocol header compression with traffic management quality of service
WO2010126068A1 (ja) * 2009-04-27 2010-11-04 日本電気株式会社 受信装置、受信方法およびプログラム
FR2945397B1 (fr) * 2009-05-06 2011-05-06 St Ericsson Sa St Ericsson Ltd Procede de traitement de paquets du type ip destines a etre vehicules sur un canal de communication d'un reseau sans fil, et equipement correspondant
JP5440457B2 (ja) * 2010-09-08 2014-03-12 富士通株式会社 無線通信装置および無線通信方法
CN103814564B (zh) * 2011-09-30 2017-10-27 英特尔公司 链路感知的应用源速率控制技术
US20130088960A1 (en) * 2011-10-07 2013-04-11 Futurewei Technologies, Inc. System and Method for Information Delivery with Multiple Point Transmission
JP5838787B2 (ja) * 2011-12-21 2016-01-06 富士通株式会社 通信装置、および通信方法
CN103001958B (zh) * 2012-11-27 2016-03-16 北京百度网讯科技有限公司 异常tcp报文处理方法及装置
US9935879B2 (en) * 2012-12-29 2018-04-03 Netronome Systems, Inc. Efficient intercept of connection-based transport layer connections
EP3323259B1 (en) * 2015-07-16 2022-11-09 Nokia Technologies Oy User-plane enhancements supporting in-bearer sub-flow qos differentiation
US11343790B2 (en) * 2018-03-20 2022-05-24 Here Global B.V. Positioning of low power devices

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0700229B1 (en) * 1994-08-22 2006-06-28 Fujitsu Limited Connectionless communications system, test method, and intra-station control system
KR0132959B1 (ko) * 1994-12-22 1998-04-21 양승택 비동기 전달모드(atm)망에서 비연결형 데이터 서비스 제공을 위한 비연결형 서버
US6081505A (en) * 1997-03-20 2000-06-27 Nokia Telecommunications, Oy Cell scheduling system and method for networks nodes
JP3413788B2 (ja) * 1997-09-25 2003-06-09 日本電信電話株式会社 層間のフロー制御を行う通信プロトコルを持つ通信方法およびデータ通信端末
JPH11103297A (ja) * 1997-09-26 1999-04-13 Sony Corp パケット伝送制御方法および装置
JP3319367B2 (ja) * 1997-10-14 2002-08-26 ケイディーディーアイ株式会社 網接続装置
US6064678A (en) * 1997-11-07 2000-05-16 Qualcomm Incorporated Method for assigning optimal packet lengths in a variable rate communication system
IL122271A (en) 1997-11-21 2001-01-11 Eci Telecom Ltd Apparatus and method for managing network congestion
US6611515B1 (en) * 1998-05-17 2003-08-26 Lucent Technologies Inc. System and method for link and media access control layer transaction completion procedures
EP0973302A1 (en) 1998-07-15 2000-01-19 Telefonaktiebolaget L M Ericsson (Publ) Device and method for reliable and low-delay packet transmission
JP3397144B2 (ja) * 1998-09-29 2003-04-14 日本電気株式会社 パケット処理装置とパケット処理方法とパケット交換機
US6789116B1 (en) * 1999-06-30 2004-09-07 Hi/Fn, Inc. State processor for pattern matching in a network monitor device
EP1240753A1 (en) * 1999-12-13 2002-09-18 Nokia Corporation Congestion control method for a packet-switched network
US6760860B1 (en) * 2000-04-17 2004-07-06 Nortel Networks Limited Automatic retransmission request layer interaction in a wireless network
US6845100B1 (en) * 2000-08-28 2005-01-18 Nokia Mobile Phones Ltd. Basic QoS mechanisms for wireless transmission of IP traffic
US6771673B1 (en) * 2000-08-31 2004-08-03 Verizon Communications Inc. Methods and apparatus and data structures for providing access to an edge router of a network
US7200111B2 (en) * 2000-08-31 2007-04-03 The Regents Of The University Of California Method for improving TCP performance over wireless links
US6987732B2 (en) * 2000-12-15 2006-01-17 Tellabs San Jose, Inc. Apparatus and methods for scheduling packets in a broadband data stream
US20020116522A1 (en) * 2001-02-22 2002-08-22 Orckit Communications Ltd. Network congestion control in a mixed traffic environment
EP1249972A1 (en) 2001-04-09 2002-10-16 Telefonaktiebolaget L M Ericsson (Publ) Method of controlling a queue buffer
US6941152B2 (en) * 2001-04-24 2005-09-06 Ipr Licensing, Inc. Wireless subscriber network registration system for configurable services
AU2002303501A1 (en) * 2001-04-27 2002-11-11 Wanwall, Inc. Weighted fair queuing-based methods and apparatus for protecting against overload conditions on nodes of a distributed network
US20020176363A1 (en) 2001-05-08 2002-11-28 Sanja Durinovic-Johri Method for load balancing in routers of a network using overflow paths
GB2372172B (en) 2001-05-31 2002-12-24 Ericsson Telefon Ab L M Congestion handling in a packet data network

Also Published As

Publication number Publication date
ATE415768T1 (de) 2008-12-15
DE60230034D1 (de) 2009-01-08
KR20040008188A (ko) 2004-01-28
EP1389391A2 (en) 2004-02-18
US20040258091A1 (en) 2004-12-23
AU2002321032B2 (en) 2006-11-09
US9178741B2 (en) 2015-11-03
KR100837488B1 (ko) 2008-06-12
EP1261183A1 (en) 2002-11-27
US20090268613A1 (en) 2009-10-29
EP1389391B1 (en) 2008-11-26
JP2004529587A (ja) 2004-09-24
WO2002100064A3 (en) 2003-08-28
US7876781B2 (en) 2011-01-25
WO2002100064A2 (en) 2002-12-12

Similar Documents

Publication Publication Date Title
JP4163613B2 (ja) データ・ユニットの処理方法およびシステム
EP1673895B1 (en) Medium access control priority-based scheduling for data units in a data flow
US8437257B2 (en) Buffer status reporting based on radio bearer configuration
KR101746629B1 (ko) 통신 장치 및 통신 방법
US9100871B2 (en) Hybrid congestion control
RU2543996C2 (ru) Управление перегрузкой в сети связи
US20080080464A1 (en) Efficient TCP ACK prioritization in wireless networks
WO2005088917A1 (ja) 制御局装置、基地局装置、端末装置、パケット通信システム及びパケット通信方法
JP2006511140A (ja) 無線ネットワークにおけるリアルタイムデータの保護
EP3214808A1 (en) Gateway apparatus and method of controlling gateway apparatus
WO2012002890A1 (en) Prioritization of data packets
US20150289165A1 (en) Introducing simple rlc functionality to node b
JP4174054B2 (ja) さまざまな輻輳要因を知らせる、パケットネットワークにおける輻輳通知のための方法及び装置
Tan Active queue management for LTE uplink in eNodeB
Makidis IN COMPUTER SCIENCE
WO2003069920A2 (en) Transmission and flow control

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050120

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060323

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20060629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080229

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080521

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080627

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080724

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4163613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120801

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130801

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees