フィードバック抑制技術を使用してTDMA/TDDシステムにおおけるスケーラブル且つリライアブルなマルチキャストをサポートする方法
この方法は、大きな帯域幅遅延積をもつワイヤレスネットワークにおいてスケーラブル且つリライアブルなマルチキャストをサポートする。この方法では、同数のデータパケットの損失を被る種々の受信機からの確認応答パケットに、同じタイムスロットが割り当てられる。この方法は、前方誤り訂正(FEC)による回復、事前防御、フィードバック抑制及び衝突検出のようなその他の損失回復技術と組み合わせることができる。帯域幅の使用方法が受信機の個数ではなく伝送されたパケットの個数だけに関係するので、スケーラビリティが実現される。
【発明の詳細な説明】
【発明の背景】
【0001】
1.発明の分野
本発明はコンピュータネットワークに関するものである。特に、本発明は、送信機が各受信機によるマルチキャストパケットの受信の成功をチェックする必要のないリライアブルなマルチキャストサービスを提供することに関する。
【0002】
2.関連技術の説明
3GPP、3GGP2、及びWLANシステムは、マルチキャスティングサービスを提供する。すなわち、各システムは、単一のブロードキャストを使用して発信源からマルチキャストエリア内の複数の受信機へ情報を配信することが可能である。マルチキャスティングは、同一の情報を複数のユーザへ送信する場合に、乏しいネットワーク資源(例えば、エアインタフェース)の効率的な使用を可能にする。
【0003】
マルチメディアストリーミング及びロケーションベースの広告のようなアプリケーションでは、マルチキャストグループ内の受信機は、ある程度のパケットの損失を許容する。このようなアプリケーションでは、システムを簡素に保つために、損失回復能力を有していない低信頼のマルチキャストサービスが使用される。許容可能な性能を維持するため、アプリケーションは上位レイヤのリライアブルメカニズム(例えば、アプリケーションレイヤの前方誤り符号化)を使用して、パケット損失率を低減させる。しかしながら、「障害を許容しない」アプリケーション(例えば、「障害を許容しない」情報を要求するソフトウェアアップグレードの配信、分散コンピューティング、若しくは、ネットワークマネージメント)、又は、非常に少ない率の伝送パケットが失われることだけを許容するアプリケーションにおいては、リライアブルマルチキャストサービスが高速回復への要求を背景として望まれている。
【0004】
IPレイヤプロトコル及びリンクレイヤプロトコルは、リライアブルマルチキャストの二つの主要な既存のカテゴリーである。IPレイヤマルチキャストプロトコルは、インターネット経由で相互接続された異種の送信機と受信機との間のエンド・ツー・エンドのマルチキャストに重点を置いている。リンクレイヤマルチキャストプロトコルは、共通のマルチアクセス共有リンクによって相互接続された隣接する送信機と受信機との間のマルチキャストサポートに重点を置いている。現在に至るまで、リンクレイヤマルチキャストプロトコルよりもIPレイヤマルチキャストプロトコルについて多くの研究が行われてきた。
【0005】
現在のリンクレイヤマルチキャストプロトコルは、小さな帯域幅遅延積を有し、パケット損失を回復するためにストップアンドウェイト方式の自動再送要求(ARQ)メカニズムを使用するローカルエリアネットワーク(例えば、802.11タイプのWLAN)だけに適用可能である。このようなマルチキャストプロトコルは、大きな帯域幅遅延積をもつワイヤレスネットワークに拡張できない。したがって、大きな帯域幅遅延積をもつワイヤレスネットワークのためのリライアブルマルチキャストプロトコルが必要である。
【0006】
リライアブルマルチキャストプロトコルは、受信機の個数に起因する「フィードバック爆発問題」を解決しなければならない。フィードバック爆発問題について図1に示す。図1に示すように、単一の発信源S1から送信された各マルチキャストパケットが受信機R1〜R5それぞれからの確認応答を要求する場合に、確認応答(肯定又は否定)パケットの個数は受信機の個数と共に増加する。したがって、多数のマルチキャスト受信機からの確認応答パケットは送信機の処理能力を圧倒する可能性があり、また、送信機の近傍のルータ及びローカルネットワークに輻輳を引き起こす可能性がある。
【0007】
送信機起動のプロトコルは、送信機にリライアブルな配信の責任を負うことを要求するので、典型的にフィードバック爆発問題に対して脆弱である。このようなプロトコルでは、送信機が、受信機から受信した確認応答パケットを追跡する。問題をさらに悪化させるのは、(1)全ての送信及び再送信(すなわち、回復送信)が全ての受信機へのマルチキャストであるという要件と、(2)送信機が動作中の受信機とそれらの受信状態との変化する組を追跡し続けるという要件である。特に、IPマルチキャストモデルは、マルチキャストデータパケットがマルチキャストグループへ宛てられることを要求しており、それによって、送信機と受信機との間にあるレベルの間接化(indirection)を課すので、送信機が各受信機の受信状態を追跡することがコスト高に又は不可能になる。
【0008】
送信機起動型のプロトコルに固有の問題を回避するため、スケーラブル且つリライアブルなマルチキャストプロトコルの多くは受信機起動型のプロトコルであり、当該プロトコルは各受信機にそれ自体へのリライアブルなパケット配信の責任を負うことを要求する。このようなプロトコルでは、受信機が、再送信が必要である場合(例えば、誤りが検出された場合、予想したシーケンス番号のパケットが受信されない場合、又は、タイムアウトが発生した場合)に、否定フィードバック又は否定確認応答パケット(すなわち、NACKパケット)を送信機へ送信し、送信機は最新の受信機リストを保持する必要がない。送信機起動型のプロトコルと比較すると、受信機起動型のプロトコルは、一般的に、マルチキャストを受信する受信機の個数に対する感度が低く、生成するフィードバックパケットの個数が相当に少ない。したがって、受信機起動型のプロトコルは、送信機起動型のプロトコルよりもスケーラブルである。それにもかかわらず、受信機起動型のプロトコルは、送信機におけるNACK爆発に依然として脆弱であり、伝送誤りがある特定の時点で広範囲に及ぶ場合に、それによって多数のNACKパケットが同時に生じる。このような状態はリソースがマルチキャストツリー内で共有される場合に生じ、種々の受信機の間で相互に関連した損失が起こり得る。例えば、パケットがサブツリーへのリンクで失われると、そのリンクから下流にある各受信機は損失の影響を受け、その後、実質的に同時に否定フィードバックを用いて応答する。
【0009】
NACK爆発問題は、受信機に異なる遅延を割り当てる「タイマーベースプロトコル」によって解決される。このようなプロトコルの下では、パケット損失の検出時に、受信機は、NACKを即座に送信するのではなく、割り当てられた遅延時間が終了するまで待った後にNACKパケットを送信する。タイマーベースプロトコルは、このようにして、種々の受信機からのNACKパケットに時差を与える。理想的には、1台の受信機は、他の受信機がNACKパケットを送信する前に再送信を行わせるため時間的に十分に早く、NACKパケットを送出する。或いは、NACKパケットがすべての受信機へマルチキャストされる場合には、他の受信機は、最初のNACKパケットに応じた再送信を見込んで、各個のNACKパケットの送信を控える。したがって、タイマーベースプロトコルの性能は、種々の受信機にタイムアウト値を割り当てるアルゴリズムに依存する。
【0010】
スケーラブルかつリライアブルなマルチキャストサービスを提供するために、「構造ベースプロトコル」は、NACK(又はACK)処理タスクを複数のノードに配分する。その結果、送信機の負荷が削減される。これらのプロトコルは、マルチキャスト受信機をツリーのような種々の論理ネットワーク構造に編成する。このような編成では、下流ノードは、そのACK又はNACKパケットを下流ノードと送信機との間の中間ノードに向けて上流へ送信する。下流ノードは、さらに中間ノードから回復パケットを受信する。中間ノードが回復を行う能力を備えていない場合には、NACK又はACKパケットは送信機ノードに向けて更に上流へ送られる。
【0011】
リライアブルマルチキャストプロトコルの重要な面は、誤り回復である。大部分のリライアブルマルチキャストプロトコルは、パケット損失を回復するために単なるARQスキームを使用するが、ハイブリッド型の前方誤り訂正(FEC)及びARQスキームは、帯域幅の増加を要することなく、フィードバック爆発及びパケット配信の予測遅延を相当に低減し得る。従来技術では、2種のハイブリッド型のFEC及びARQスキームが存在する。第1の種では、修正ビットの個数が多量でない限り、修正ビットを修正パケットに込めて送信して、ビット誤り又は消失を訂正する。この場合、再送信のスキームが使用される。第2の種では、修正ビットは、データパケットとは別に伝送される。
【0012】
上記のプロトコルは全てIPレイヤで動作する。リンクレイヤプロトコルは、肯定フィードバック(ACK)と否定フィードバック(NACK)の両パケットを使用して、ワイヤレスリンクのラストホップでマルチアクセスワイヤレスLAN内にリライアブルマルチキャストを拡張する。このプロトコルの下では、マルチキャストグループ内の受信機が、送信機(例えば、基地局)へフィードバックを送信する目的のための「リーダー」、すなわち、代表として選ばれる。リーダーがパケットの受信に成功すると、リーダーはACKパケットを返信する。しかし、このリーダーノードが受信データパケット中に誤りを検出すると、リーダーノードは確認応答を送信せず、その結果、送信機からの自動再送信をトリガーする。リーダーではない別の受信機がその受信パケット中に誤りを検出すると、この受信機は、否定確認応答(NACK)パケットを送出する。当該否定確認応答(NACK)は、リーダーから送信されたACKパケットと矛盾する。このような条件が発生したとき、送信機はパケットを再送信する。
【0013】
IPレイヤマルチキャストプロトコルは、典型的に、マルチキャストツリーを維持する技術、往復遅延時間を推定する技術、グループ管理技術、及び、誤り回復方法を選択する技術を含む。これらのプロトコルは複雑なネットワークトポロジー用に設計されており、当該ネットワークトポロジーでは、送信機及び受信機がマルチホップリンクで相互接続されており、種々のリンク帯域幅、クロスオーバートラフィック、及び、損失確率を有している。単一の共有ワイヤレスリンクによって接続された1台の送信機及び複数の受信機を含む単純なトポロジーの場合、このようなIPレイヤマルチキャストプロトコルを使用することは非効率的であり、かつ、過剰である。
【0014】
論文:J.Nonnenmacher, E.Biersack、D.Towsley, “Parity−based loss recovery for reliable multicast transmission”, IEEE Tran. on Networking, Aug. 1998には、(1)ストップアンドウェイト方式のARQスキームを使用してパケット損失を回復し、(2)マルチキャストグループのリーダーとして単一の受信機を選択し、(3)ACKパケットとNACKパケットの衝突を否定確認応答として取り扱うマルチキャストスキームが記載されている。しかしながら、このストップアンドウェイト方式のARQスキームは、小さな帯域幅遅延積をもつ802.11タイプのネットワークだけに適している。大きな帯域幅遅延積をもつワイヤレスネットワーク(例えば、802.20ネットワーク)の場合、ストップアンドウェイト方式のARQスキームは、チャネル帯域幅の無駄遣いである考えられる。さらに、単一のリーダーによるアプローチは、起こり得る障害を単一点で表しており、リーダー維持のための幾つかのオーバーヘッドを要求する。さらに、NACKとACKの衝突によるアプローチは、所定の時点で一つのパケットのみが流通しており且つ承認された状態を維持しているシステムにおいてのみ、使用可能である。このようなスキームの下では、送信機は、受信された確認応答の詳細を調査することを必要とせずに、衝突を検出することによって伝送の失敗を判定する。しかしながら、複数のパケットが確認されない状態にある場合には、送信機は、流通しているパケットのなかで損失したパケットを見つけるために各確認応答を調査する必要がある。したがって、ACKパケットとNACKパケットの衝突は、さらなる調査が実行されない限り、あるパケットの損失を知らせるだけである。
【発明の概要】
【0015】
本発明は、リンクレイヤの誤り検出及び回復技術を使用して、大きな帯域幅遅延積を有するワイヤレスネットワークにおけるスケーラブル且つリライアブルなマルチキャスト方法を提供する。この方法は、基地局の送信機及び基地局の範囲内の受信機が大きな帯域幅遅延積をもつワイヤレスリンクによって相互接続される方法に適用される。これらのワイヤレスリンクを使用する通信に適用可能な媒体アクセス制御(MAC)レイヤプロトコルの一つは、時分割多元接続/時分割複信(TDMA/TDD)である。本発明の一実施形態によれば、本発明の方法は、FEC回復、事前防御、フィードバック抑制、NACK衝突、及び、データとフィードバックのグルーピングを組み合わせてもよい。
【0016】
帯域幅を十分に利用するために、本発明の方法は、基地局から多数の受信機へマルチキャストパケットのグループを同時に送信してもよい。全ての受信機からのフィードバックパケットの個数を抑制するために、肯定確認応答(ACK)の代わりに、否定確認応答(NACK)を使用して、送信機へフィードバックする。一実施形態によれば、NACKパケットの受信とNACKパケットの衝突の検出の両者がNACKパケットの発生として取り扱われるので、マルチキャストの対象である複数の受信機は同じタイムスロットに割り当てられてもよい。
【0017】
一実施形態では、FECベースのパケット損失回復技術が、同じFECパケットを使用して、種々の受信機の異種のパケット損失を回復する。異種の損失パターンをもつ多数の受信機を想定すると、このような方法はパケットの再送信を大きく削減する。FECパケットは、シーケンス番号を追跡する必要がないので、NACK衝突がNACKパケットの受信として取り扱われることを可能にする。したがって、本発明の方法はスケーラブルである。
【0018】
パケット伝送の遅延を減少させるために、本発明の一つの方法は、送信機側と受信機側の両者に事前防御を提供する。送信機側では、FECパケットがデータパケットと共に送信される。受信機側で、回復パケットが実際のパケットの損失より前に要求される。
【0019】
本発明の別の実施形態によれば、スケーラビリティ及びリライアビリティを高めるために、所定の個数のパケット損失をもつ全ての受信機に各フィードバックタイムスロットを割り当てることによって、種々の受信機からのグループ確認応答が実現される。このようなスキームの下では、必要なフィードバック帯域幅は、システム内の受信機の個数ではなく、送信されたパケットの個数だけに依存する。したがって、スケーラビリティが実現される。加えて、各受信機が全ての必要なFEC回復パケットを取得するので、リライアビリティが実現される。
【0020】
このように、本発明は、MACレイヤでのスケーラブル且つリライアブルなマルチキャストサービスをサポートする。本発明に係る方法は、大きな帯域幅遅延積をもつワイヤレスネットワークでの使用に特に適しているので、従来技術によるIPレイヤベースの方法、又は、小さな帯域幅遅延積をもつワイヤレスリンクだけに適した他の方法よりも有利である。さらに、本発明に係る方法は、ワイヤレスホップでローカルにマルチキャストパケット損失を回復する。ワイヤレスリンク内のパケット改竄はパケット損失の重大な原因であるので、ローカル回復スキームは、エンド・ツー・エンドベースのパケット回復方法よりも非常に迅速な回復を可能にする。
【0021】
また、ワイヤレスホップにおいて本発明を具現化する方法は、コアネットワーク内でリライアブルマルチキャストを提供するIPレイヤベースのマルチキャスト技術と組み合わすことが可能である。本発明は、基地局と各ワイヤレス端末との間でユニキャストコネクションを使用する従来のIPレイヤベースのマルチキャスト技術よりも多くのワイヤレス帯域幅を節約できる。マルチキャストを使用する方法は、ワイヤレスリンク内のユニキャストトラフィックに起因する輻輳を軽減する。
【0022】
本発明の方法は、確認応答パケットの個数が受信機の個数に依存しないので、スケーラブルである。種々の受信機からの確認応答パケットを少数のタイムスロットへ多重化し、NACK衝突イベントをNACKパケットの受信と等価なものとして取り扱うことによって、本発明の方法は、同数のアップリンクデータチャネルのタイムスロットとダウンリンクデータチャネルのタイムスロットとを使用して、十分にリライアブルなマルチキャストサービスを実現することが可能である。このような方法は、特定のシーケンス番号を必要とせずにNACKパケットを追跡するので、更にこの方法のスケーラビリティをより複雑なシステムへ向上し得る。スケーラビリティはまた、同数のパケット損失を被った全ての受信機を同一の否定確認応答タイムスロットに割り当てることに起因している。
【0023】
本発明の方法は、パケット損失を回復するためにFECパリティパケットを使用してもよい。多数の受信機及び異種の損失パターンを有するシステムにおいては、FECの使用によってパケット再送信の回数を相当に削減することができる。
【0024】
本発明は、以下の詳細な説明と添付図面を参照するとより一層理解される。
【好ましい実施形態の詳細な説明】
【0025】
本発明は、大きな帯域幅遅延積をもつワイヤレスネットワークにおけるスケーラブル且つリライアブルなマルチキャストをサポートする方法を提供する。図2は本発明の一実施形態に係るシステムトポロジー200を示す。図2に示すように、基地局201は、当該基地局201によって提供されるセル202内のマルチキャスト送信機である。移動端末1〜3は、ワイヤレスリンクによって基地局201とそれぞれに通信するものであって、マルチキャストグループ内の受信機である。本実施形態では、ダウンリンク(すなわち、基地局201から移動端末1〜3まで)及び対応するアップリンク(すなわち、移動端末から基地局201まで)は、時分割多元接続/時分割複信(TDMA/TDD)スキームを使用し、媒体アクセス(MAC)レイヤにおいて通信媒体(例えば、特定の中心周波数)を多重化及び二重化することによって、形成されている。
【0026】
図3は、本発明の一実施形態に係るTDMA/TDDスキーム300を示す。図3に示すように、TDMA/TDDスキーム300は、利用可能な帯域幅を期間301−1、301−2、...に分割し、これらの期間を交互にダウンリンクによる伝送(例えば、301−1、301−3、...)とアップリンクによる伝送(例えば、301−2、301−4、...)に割り付ける。ダウンリンク伝送とアップリンク伝送の両者の一部分は、データパケットの伝送のために設けられているので、それぞれが「ダウンリンクデータチャネル」及び「アップリンクデータチャネル」と呼ばれる。データチャネルのそれぞれは、タイムスロットに分割される。各タイムスロットにおいては、一人のユーザ、又は、一つのユーザのグループのみが、送信を許可される。データチャネルに割り振られた帯域幅は、均等でなくとも固定されていなくてもよく、実際に、その時々に変化してもよい。専用制御チャネルが基地局によって使用されて、アップリンクデータチャネル及びダウンリンクデータチャネルへのタイムスロットの割当が報知される。その結果、各受信機は、データ若しくは確認応答パケットを基地局へ送信し、又は、受け手として自装置を指定するデータパケットを基地局から受信するタイムスロットを通知される。例えば、図3に示すように、マルチキャストグループ1及びマルチキャストグループ2内の受信機のそれぞれは、伝送期間301−2において、参照番号302及び303によってそれぞれ示された4個のタイムスロットのグループが割り当てられる。同じマルチキャストグループ内の全ての受信機は、本発明の本実施形態によれば、同一のアップリンクチャネルタイムスロットを使用して確認応答を送信する。図3はまた、ダウンリンク伝送期間301−1の間にメッセージ304−1、304−2及び304−3を送信する基地局を示す。各メッセージは、マルチキャストメッセージ(例えば、図3のスキーム300に表されるように、マルチキャストグループ1又はマルチキャストグループ2へのマルチキャストメッセージ)であってもよく、又は、ユニキャストメッセージであってもよく、複数のパケットを含んでいてもよい(例えば、メッセージ304−1は参照番号303によって示されたパケットを含む)。ダウンリンク伝送期間は、多重化方式においてメッセージを送信するために割り付けられる。同様に、アップリンク伝送期間は、種々の受信機又はグループから確認応答又はデータパケットを送信するために多重化される。以下の説明では、本発明の方法の下で、ダウンリンクデータチャネル内の伝送期間(例えば、伝送期間又は「フレーム」301−1)とその後に続くアップリンクデータチャネル内の伝送期間(例えば、伝送期間301−2)を「ラウンド」という。
【0027】
図4は、基地局201のMACレイヤ400a及び物理レイヤ(PHY)400bの機能ブロック400を表すブロック図である。図4に示すように、機能ブロック400は、基地局201のMACレイヤ400a及びPHYレイヤ400bを含む。PHYレイヤ400bは、トランスミッタ401を含み、当該トランスミッタはワイヤレスリンクを介した送信のためにチャネル割当ブロック407からMACレイヤデータユニットを受信する。PHYレイヤ400bはまた、レシーバ/衝突検出ブロック402を含んでおり、当該レシーバ/衝突検出ブロック402は、ワイヤレスリンクからパケットを受信し、受信パケットを誤り検出ブロック403へアップロードする。レシーバ/衝突検出ブロック402はさらに、マルチキャスト確認応答に使用されるタイムスロットの期間に、信号強度を測定する。一実施形態では、TDMA/TDDスキームはNACKベースであるので、データパケットの正確な受信のためのACKパケットは送信されない。この実施形態では、複数の受信機がNACKパケットの送信に同じタイムスロットを使用するので、そのタイムスロット中に検出された衝突は複数の受信機がそれぞれにNACKパケットを送出したことを表す。レシーバ/衝突検出ブロック402は、静止チャネル(すなわち、伝送なし)とNACKパケットの受信(すなわち、単一のNACKパケットの受信成功又はパケット衝突条件の検出のいずれか)を区別し、その結果をMACレイヤ400bの誤り検出ブロック403へ報告する。
【0028】
誤り検出ブロック403は、検証済みのデータパケットを出力キュー409へ供給し、当該出力キューは、順に、上位レベルプロトコル(例えば、IPレイヤプロトコル)による処理のためのプロトコルスタックへ、そのデータパケットを送る。(本明細書においては、検証済みのデータパケットは、MACプロトコルレイヤ及びPHYプロトコルレイヤで誤りが検出されることなく受信されたデータパケットである。)。誤り検出ブロック403はさらに、レシーバ/衝突検出ブロック402から受信したNACKパケットと、マルチキャストトラフィックの衝突状態を示す信号とを受信し、送信失敗に関係するデータパケットを特定する。多数の誤り検出及び訂正スキームが本発明と共に使用可能である。例えば、一実施形態では、送信機は、以下のマルチキャスト送信スキームに従って、マルチキャストグループの全てのデータパケットを正確に受信できない受信機へFECパリティパケットを送信する。
【0029】
一つの好適なFECアルゴリズムは、A.J.McAuley著, “Reliable broadband communications using a burst erasure correcting code”, Sigcomm90, Sep. 1990発行に記載されている。このFECアルゴリズムでは、符号化されるべきk個のデータパケットの組{p1,p2,・・・,pk}に対して、リード・ソロモン消失訂正符号(「RSE符号」)が、n−k個のパリティパケットの組{d1,d2,・・・,dn−k}を与える。受信機のRSEデコーダは、n個のデータパケットとパリティパケット{p1,p2,・・・,pk,d1,d2,・・・,dn−k}のうちのk個を使用して、k個のデータパケット{p1,p2,・・・,pk}を再構成することが可能である。大きいシンボルサイズを操作するRSEエンコーダを実施することは難しいので、MACレイヤデータパケットは、一般に、複数のmビットエンコーダを並列に使用して符号化される。このアルゴリズムでは、データパケットとパリティパケットの総数であるnは、定数:n≦2mだけによって制限される。例えば、16ビット又は32ビットシンボルを使用すると、最大で216又は232個のパケットが訂正される。実際上、パケットの総数nと、FECパリティパケットの個数n−kは、マルチキャストグループのサイズとチャネル損失特性に適応した値をとるように選択される。以下、上記のRSE訂正符号のような誤り検出及び訂正メカニズムを使用した本発明について説明する。
【0030】
このように、現在のラウンドで損失が報告されたパケットの個数に基づいて、誤り検出ブロック403は、次のラウンドで送信する必要がある付加的なFECパリティパケットの個数を求める。マルチキャストバッファ404は、前のラウンドと現在のラウンドのマルチキャストグループパケットと、送信済みのFECパリティパケットを格納する。これらのパケットは、誤り検出ブロック403が付加的なFECパリティパケットを受信機へ送信する必要がないことを示したときに、マルチキャストバッファ404から削除される。必要とされるFECパリティパケットは、マルチキャストグループパケット及び送信済みのFECパリティパケットを使用して、FEC計算ブロック405で計算される。
【0031】
FEC計算ブロック405から出力されたFECパリティパケットは、マルチキャストグルーピングブロック406、及び、チャネル割当ブロック407内のクロスオーバートラフィックブロック408からのその他のデータパケットと多重化される。クロスオーバートラフィックブロック408は、本明細書中に記載されたマルチキャストに関係しない全てのデータパケットを管理する。
【0032】
MACプロトコルTDMA/TDDの下では、種々のデータストリームがチャネル割当ブロック407によって相異なるタイムスロットに割り当てられる。FEC計算ブロック405からのFECパリティパケットは、急速なパケット損失回復を可能にするために、マルチキャストグルーピングブロック406から受信された新しいパケットよりも高い優先度が割り当てられる。一般に、FEC計算ブロック405からのFECパリティパケットは、マルチキャストグルーピングブロック406からの新しいデータパケットが割り当てられる前に、タイムスロットに割り当てられる。リライアブルなマルチキャスト送信はユニキャストパケットよりも長時間を要することが多いので、マルチキャストグルーピングブロック406は入力キュー410からのマルチキャストパケットを一時的に記憶する。マルチキャストグルーピングブロック406は、入力キュー410の遮断を阻止し、FECパリティパケットがマルチキャストデータパケットと併せて使用できるようにする。
【0033】
本実施形態では、事前防御推定ブロック411は、誤り検出ブロック403の測定に基づいて現在のパケット損失率を計算する。現在のパケット損失率を使用して、事前防御推定ブロック411は、事前FECパリティパケットのデータパケットに対する比である事前防御率を決定する。事前防御率は、次にFEC計算ブロック405によって使用されてFECパリティパケットが作成され、当該FECパリティパケットは事前送信のためにチャネル割当ブロック407へ供給される。事前防御の使用は任意である。
【0034】
図5は、本発明の一実施形態に係るマルチキャスト受信機のMACレイヤ500a及びPHYレイヤ500b内の機能ブロック500を表すブロック図である。図5に示すように、MACレイヤ500b内のトランスミッタ501は、データパケットと確認応答パケットの両方を送信する。上述したように、アップリンクデータチャネルとダウンリンクデータチャネルの両方のタイムスロット割当は専用制御チャネルを介して基地局(例えば、基地局201)から受信される。チャネル多重化ブロック507は、割り当てられたアップリンクタイムスロットの期間にトランスミッタ501を介してワイヤレスリンクへ出力するために、データパケットを多重化する。割り当てられたダウンリンクタイムスロットにおいて、レシーバブロック502は、ワイヤレスリンクからデータパケットを受信するか、検証済みのパケットを誤り検出ブロック503へ供給するか、又は、受信パケット内の物理レイヤエラーを誤り検出ブロック503に報告する。誤り検出ブロック503は、検証済みのマルチキャストパケットをマルチキャストバッファ504に格納し、現在のラウンドで受信又は検出された改竄データパケットの個数を確認応答ブロック506へ報告する。確認応答ブロック506は、適切な確認応答タイムスロットでアップリンクデータチャネルにおいて送信されるべきNACKパケットを供給する。
【0035】
本実施形態では、事前防御ブロック510は、基地局201の事前防御ブロック411について既に説明した機能と同様の機能を実行する。事前防御ブロック510は、誤り検出ブロック503からの誤り測定結果に基づいて現在の損失率を計算し、事前防御率を確認応答ブロック506へ出力する。事前防御ブロック506は、次に、現在のラウンドにおける実際の損失パケットの個数とこの事前防御率の積に基づいてNACKパケットを供給する。基地局201と同様に、事前防御ブロック510及びその使用は任意である。本発明の範囲内で、事前防御は、送信機、受信機、又は、両者によって使用され得る。
【0036】
マルチキャストバッファ504は、データパケット及びFECパリティパケットの総数がマルチキャストグループを再構成するのに十分となるまでの間に受信されたマルチキャストグループの検証済みデータパケット及びFECパリティパケットを格納する。その時点で、データパケット及びFECパリティパケットは、存在すれば、FEC回復ブロック505へ供給され、当該FEC回復ブロックがデータパケットを回復する。回復されたデータパケットは、出力キュー508に置かれ、上位レベルプロトコルによる処理のためにプロトコルスタックへ送られる。
【0037】
図6は、本発明の一実施形態に係るアップリンクデータチャネル及びダウンリンクデータチャネルのスケジューリングを示す。図6に示すように、パケットP1、P2、...、P6を含むパケットのマルチキャストグループは、(マルチキャストグループアドレスを指定して)ダウンリンクへ送信され、受信機1、2及び3によって受信されることが示されている。当然ながら、図6に示されたパケットの個数と受信機の台数は、例示の目的のためだけに与えられている。実際には、より多数の受信機及びより多数のデータパケットが本発明の範囲内で受け容れられる。ラウンド1(すなわち、フレーム602−1及び602−2)において、4個のデータパケット(P1,P2,P3,P4)がダウンリンクデータチャネルで送信される。(本明細書では、4個のタイムスロットが例示の目的のためだけに各タイムフレームに与えられているが、実際には、任意の個数のタイムスロットが各タイムフレームに与えられる。)。図6において、受信機1がデータパケットP2及びP4を受信する際に誤りを被り、受信機2がデータパケットP3を受信する際に誤りを被り、受信機3がデータパケットP1を受信する際に誤りを被る。このように、各受信機は、他の受信機が受信できなかったデータパケットとは異なる少なくとも1個のデータパケットの受信に失敗している。
【0038】
図6に示す本発明の実施形態によれば、割り当てられたアップリンク確認応答タイムスロットの個数は、割り当てられたダウンリンクデータ送信タイムスロットの個数に一致する。したがって、(参照番号602−2によって示された)4個のタイムスロットが、現在のラウンドで送信されたデータパケットの確認応答のために割り当てられる。この取り決めの下で、フレーム602−2の第1のタイムスロットは、4個のパケットP1,P2,P3,P4の全てを受信できない全ての受信機に割り当てられ、フレーム602−2の第2のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの3個を受信できない全ての受信機に割り当てられ、フレーム602−2の第3のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの2個を受信できない全ての受信機に割り当てられ、フレーム602−2の第4のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの1個を受信できない全ての受信機に割り当てられる。このようにして、受信機1は(参照番号L2によって示された)第3のタイムスロットの期間にNACKパケットを送信し、受信機2及び3は(参照番号L1によって示された)第4のタイムスロットの期間にNACKパケットを送信する。フレーム602−2の第4のタイムスロットに2台のトランスミッタがあるので、衝突が基地局で検出され、基地局はこの衝突状態をNACKパケットの受信と同じものとみなす。現在のラウンド中にいずれかの受信機が被ったパケット損失の最大個数は2個であるので、基地局は、パケットP1、P2、P3及びP4の回復のための2個のFECパリティパケットF1及びF2を送信するための計算及び準備を行う。このF1及びF2は、まだ送信されていない重複なしのFECパリティパケットである。
【0039】
ラウンド2(すなわち、フレーム602−3及び602−4)において、FECパリティパケットF1及びF2は、それぞれ、第1及び第2のタイムスロットで送信される。データパケットP5及びP6は第3及び第4のタイムスロットで送信される。FECパリティパケットF1及びF2は前のラウンドで送信されたデータパケットに関係するので、現在のラウンドのデータパケットP5及びP6はFECパリティパケットF1及びF2とは別個に応答される。このように、FECパリティパケットF1及びF2はフレーム602−4の第1及び第2のタイムスロットにおいてアップリンクデータチャネルで応答され、データパケットP5及びP6はフレーム602−4の第3及び第4のタイムスロットで応答される。したがって、データパケットP6を受信できない受信機2は、フレーム602−4の第4のタイムスロットでNACKパケットを送信し、同様に、パケットP6とP6の両方を受信できない受信機3はフレーム602−4の第3のタイムスロットでNACKパケットを送信する。
【0040】
確認応答タイムスロットの個数は動作中のマルチキャスト受信機の台数に依存せず、送信されたダウンリンクデータパケットの個数だけに依存するので、本発明の方法は、マルチキャスト受信機の台数の増加に対してスケーラブルである。本発明の方法はまた、リライアブルなデータ配信を保障するためにFEC技術を利用している。送信されるデータパケット毎に各受信機にタイムスロットが割り振られる従来技術よりも、本発明の方法は帯域幅の点で顕著に効率的である。図6に示すように、本発明の方法を使用すると、従来技術における4個ではなく、2個のFECパリティパケットだけを誤り回復のために送信すればよい。
【0041】
なお、図6は、上記の事前防御スキームの使用を説明していない。事前防御が使用される場合には、アップリンクスロットとダウンリンクスロットの個数は相違する。例えば、ダウンリンク事前防御率が1.5であるならば、4個のデータパケットの送信のために、4個のデータパケットと2個のFECパリティパケットのための6個のダウンリンクタイムスロットが使用され得る。この実施例では、アップリンクチャネルは、アップリンク事前防御が使用されない限り、4個の確認応答タイムスロットだけを必要とする。
【0042】
図7及び8はそれぞれ、詳細なフローチャート700及び800であり、基地局及び受信機のそれぞれで実行される上述の機能を示している。図7において、ステップ701では、基地局のMACレイヤが、専用制御チャネルにおいて、ダウンリンクデータチャネル及びアップリンクデータチャネル内のマルチキャストのためのタイムスロットアロケーション割当をブロードキャストする。ステップ702では、基地局のMACレイヤが、前のマルチキャスト送信が完了したか否かを調査する。前のマルチキャスト送信が完了していない場合には、ステップ703で、基地局のMACレイヤが、不完全な送信の受信情報を収集する。不完全な送信毎に、基地局のMACレイヤは、ステップ704で、誤り回復に必要なFECパリティパケットを求める。このFECパリティパケットは、次に、ステップ705で、送信のために、増加したマルチキャストグループ番号において現在のフレームに利用可能なタイムスロット内に割り当てられる。前の不完全な送信に関係する全てのFECパリティパケットが送られた後、現在のフレームに空きスロットがまだ存在する場合には、ステップ707で、基地局のMACレイヤが、プロトコルスタック内の上位レイヤプロトコルから新しいマルチキャストメッセージの新しいパケットを取り込む。ステップ708において、基地局のMACレイヤは、適切なタイムスロットで送信するためにFECパリティパケットと新しいデータパケットを準備する。
【0043】
図8において、受信機のMACレイヤは、専用制御チャネルから、ダウンリンクデータチャネル及びアップリンクデータチャネル内のマルチキャスト送信のタイムスロット割当及びグループ情報を受信する(ステップ801)。ステップ802では、受信機のMACレイヤが、そのPHYレイヤから現在のフレームのマルチキャストデータパケットを受信する。グループ情報を使用して、ステップ803では、受信機のMACレイヤが、データパケットを対応のマルチキャストグループに分類する。いずれか一つのグループから幾つかの又は全てのデータパケットが、通信チャネルで失われる。データパケットのマルチキャストグループ毎に、受信機のMACレイヤは、ステップ804で、現在のラウンドで受信された検証済みのデータパケット及び重複のないFECパリティパケットをカウントし、マルチキャストグループを正確に復号可能にするために次のラウンドで受信されるべき付加的なデータパケット又はFECパリティパケットを求める。ステップ805では、受信機のMACレイヤが、パケットのマルチキャストグループを正確に復号するために必要な個数のパケットが受信されたか否かを判定する。必要なパケットが受信された場合には、ステップ806で、受信機のMACレイヤが、データパケットを復号し、上位のプロトコルスタックへ配信する(ステップ808)。しかしながら、ステップ805において、受信機のMACレイヤがマルチキャストグループのための付加的なデータパケット又はFECパリティパケットが必要であると判定した場合には、MACレイヤは、ステップ807で、対応のNACKパケットを準備する。全てのNACKパケットが準備された後、ステップ810では、受信機のMACレイヤが、アップリンクデータチャネル内の適切なタイムスロットでNACKパケットを送信する。
【0044】
図9は、図5の誤り検出ブロック503の動作を説明するフローチャートである。上述したように、誤り検出ブロック503は検証済みデータパケットを追跡し、適切なNACK応答を送信機へ供給する。図9に示すように、誤り検出ブロック503は、ステップ901で、PHYレイヤから検証済みパケットを受信する。上述したように、これらのパケットは、1回以上のラウンドからのデータパケット又はFECパリティパケットである。ワイヤレスチャネル内の干渉はパケットを改竄し、検証を妨げる。検証済みパケットは対応のマルチキャストグループに応じて分類され(ステップ903)、NACKパケットがステップ902で制御チャネルから受信されたグループ割当情報に応じて指定のタイムスロットで送信される。マルチキャストグループ毎に、誤り検出ブロック503は、存在すれば、受信された重複のないFECパリティパケットの個数(ステップ905)と、まだ適切に受信されていないデータパケットの個数(ステップ906)の両方を求める。ステップ908で、誤り検出ブロック503は、次のラウンドで必要とされる付加的なパケットの個数を求め、この情報に基づいて、適切なNACKパケットが提供されて指定されたタイムスロットで送信される。
【0045】
図10は、図6を参照して既に述べたフィードバックグルーピングメカニズムを説明するマルチキャストシステムのフローチャートである。図10に示すように、ステップ1001では、ダウンリンクデータチャネル及びアップリンクデータチャネル割当とマルチキャストパケットグループ情報とが、専用制御チャネルから受信される。確認応答パケットが損失パターンに一意にインデックス付けをできるようにするために、制御チャネルからのグループ情報は各マルチキャストパケットグループに割り振られたタイムスロットの個数を含む。当然ながら、このような情報は異なる形式で、例えば、パケットヘッダで配布されてもよい。ステップ1002では、受信パケットは対応のマルチキャストパケットグループに分類され、ステップ1003では、次のラウンドにおける各マルチキャストパケットグループの所要のFECパリティパケットが、例えば、図9を参照して説明した方法を使用して求められる。上述したように、一実施形態では、アップリンクデータチャネル内の確認応答タイムスロット割当はダウンリンクデータチャネル内のグループ割り振りの後に続く(ステップ1004)。しかしながら、事前防御が使用される場合には、アップリンクデータチャネルとダウンリンクデータチャネルのタイムスロット割当は異なる。事前防御が使用されるか否かとは無関係に、各マルチキャストパケットグループのタイムスロットの個数と、ダウンリンクデータチャネル及びアップリンクデータチャネルにおけるタイムスロットの割り振りは、ステップ1001に関して説明した方式で指定される。マルチキャストパケットグループに対応する確認応答タイムスロットのグループ毎に、ステップ1005では、第1のタイムスロットが、現在のラウンドの全てのパケットが改竄されて受信されたことを示し、その結果、このラウンドのデータパケットと同数のFECパリティパケットが次のラウンドで必要とされる。ステップ1006では、各受信機が、現在のタイムスロットがそのFECパリティパケットの必要性を示すか否かを判定する。もしそうであるならば、ステップ1008で、受信機はNACKパケットを送出する。現在のマルチタスクパケットグループに応答するためのその他のタイムスロットでは、送信は行われない。本実施形態では、確認応答タイムスロットの位置は(一実施形態では、必要とされるFECパリティパケットの個数にも一致する)受信された改竄パケットの個数を示すので、カウンタがNACKパケットの時刻を追跡するために使用される。例えば、カウンタは、カウンタ内のカウントが受信された改竄パケットの個数に一致するまでデクリメントされる(ステップ1010−1011)。現在のラウンドは、全てのマルチキャストパケットグループに応答が行われたときに終了する(ステップ1012)。
【0046】
図11は、本発明の一実施例に係るNACKパケットの受信とNACKパケット衝突の処理の両方に関する基地局の動作を説明するフローチャートである。ステップ1101では、基地局は、各アップリンクデータチャネルタイムスロットのパケット送信を検出する。ステップ1102では、基地局は、受信したNACKパケットが検証されたか否か(すなわち、誤りなしかどうか)を判定する。もしそうであるならば、ステップ1104で、基地局は、NACKパケットが適切に受信されたものと判断する。そうでなければ、ステップ1103で、基地局は、受信信号電力が予め決定された平均ノイズ電力スレッショルドを超えるか否かを判定する。このような高い受信信号電力が検出されたならば、NACKパケット衝突が起こったと考えられるので、これは2台以上の受信機が現在のタイムスロットによって指定された個数の改竄データパケットを被ったことを示す。基地局に関して、基地局は現在のタイムスロットでNACKパケットを受信したことと同じこととしてこの信号状態を取り扱う。しかしながら、ステップ1103で、基地局が平均ノイズ電力スレッショルドよりも低い信号電力を検出した場合には、NACKパケットは受信されていないと見なされる(すなわち、静止チャネル)。現在のtのタイムスロットにNACKパケット送信が存在しないことは、検証済みACKパケットと同じ情報を伝えている。したがって、ステップ1105で、基地局は、上位レベルプロトコルに、肯定確認応答の情報を伝達する結果を出力する。
【0047】
図12は、本発明の一実施形態に係る基地局内のFEC計算ブロック405の動作を説明するフローチャートである。図12に示すように、ステップ1201では、FEC計算ブロック405は、マルチキャストバッファ404からパケット回復要求を受信する。マルチキャストパケットの一つ以上のグループが同時に共存するので、パケット回復要求はまた、複数のマルチキャストグループに関連する。ステップ1202では、FEC計算ブロック405は、全てのマルチキャストパケットグループが処理されたか否かを判定する。もしそうであるならば、FEC計算は要求されない。そうでなければ、ステップ1203で、FEC計算ブロック405は、送信を完了していないマルチキャストパケットグループを選択する。一実施形態では、処理されるべきマルチキャストパケットグループは、最先に送信を開始したマルチキャストパケットグループから始めて、時間順に選択される。ステップ1204では、FEC計算ブロック405は、選択されたマルチキャストグループの所要のFECパリティパケットが計算されたかどうかをチェックする。所要のFECパリティパケットが計算されていないならば、FEC計算ブロック405は、ステップ1208でマルチキャストバッファ404からデータパケットを取得し、ステップ1209でFECパリティパケットを計算する。FEC計算ブロック405は、FECパリティパケットが送信中の改竄にも脆弱であるので、現在のラウンドで要求されるよりも多数のFECパリティパケットを計算してもよい。計算すべき付加的なFECパリティパケットの個数は、受信機の総数及び現在のチャネル条件に依存する。このような冗長性を判定するアルゴリズムが本発明の範囲内で使用されてもよい。ステップ1210で、FEC計算ブロック405は、次に、FECパリティパケットを受信機へ送信する。ステップ1204−1205で、所要のFECパリティパケットが既に計算されているならば、FEC計算ブロック405は既存のFECパリティパケットを受信機へ供給する。典型的に、FEC計算ブロック405は、重複のないFECパリティパケット(すなわち、前に送信されていないFECパリティパケット)を送信する。さもなければ、ステップ1206で、重複のないFECパリティパケットの個数がパケット損失を回復するために必要な個数よりも少ない場合に、前に送信されたFECパリティパケットがステップ1207で送信される。
【0048】
図13は、本発明の一実施形態によるMACレイヤデータパケット1300のデータフォーマットを示す。図13に示すデータフォーマットは、システムに限定されない態様において本発明を説明しており、実際のシステムでは、付加的なシステム関連フィールドが含まれる。図13に示すように、データパケット1300の最初の2個のフィールドであるラベル付きデータフィールド1301a及び1301bは、それぞれ、宛先アドレス及び発信アドレスである。ダウンリンクデータチャネル送信の場合、宛先アドレスはマルチキャストグループアドレスであり、発信アドレスは基地局のMACアドレスである。アップリンクデータチャネルの場合、着信アドレスは同様にマルチキャストアドレスであるが、発信アドレスは受信機のMACアドレスである。パケットタイプフィールド1302は、データパケットと、FECパリティパケットと、NACKパケットとを区別する。データパケットタイプの場合、「シーケンス番号」フィールド(1303)は、マルチキャストグループのMACシーケンス番号を格納する。各マルチキャストグループは、0から最大値まで変化する連続的なシーケンス番号を追跡する。「開始シーケンス番号」フィールド1304a及び「最終シーケンス番号」フィールド1304bはデータパケットのためには使われない。ペイロードフィールド1305は任意の個数のデータワードを格納する。
【0049】
FECパリティパケット内で、「シーケンス番号」フィールド1303はマルチキャストグループのMAC FECシーケンス番号を格納する。(MAC FECシーケンス番号はデータパケット内のMACパケットシーケンス番号とは異なる。)。FECシーケンス番号は同様に0から最大値まで連続的に番号付けされる。FECパリティパケットの「開始シーケンス番号」フィールド1304a及び「最終シーケンス番号」フィールド1304bは、そのFECパリティパケットが対応する開始MACデータパケットのシーケンス番号及び最終MACデータパケットのシーケンス番号を指定する。
【0050】
一実施形態では、タイムスロットの位置が失われたデータパケットの個数を示すので、シーケンス番号フィールド1303、1304a及び1304bは使用されない。
【0051】
上記の詳細な説明は本発明の具体的な実施形態を説明するためだけに提供されており、本発明の範囲を制限することを意図していない。本発明の範囲に含まれる多種多様の変形及び変更が考えられる。例えば、種々の受信機からの確認応答のトラフィックのグループ化は、上記の方法とは異なる方法で実施され得る。特に、アップリンクデータチャネルタイムスロットが2進カウンタとして使用され得る(すなわち、n番目のタイムスロットは2(n−1)のパケット損失を示すために使用される)。このようなスキームでは、アップリンクデータチャネルタイムスロットの個数はダウンリンクデータチャネルタイムスロットの個数よりも遙かに少ない。例えば、7個のダウンリンクデータチャネルタイムスロット毎に、3個のアップリンクデータチャネルタイムスロットだけが必要である。当然ながら、このようなスキームは、受信機が他の送信のそれぞれを監視できることを要するので、アプリケーションが限定される。その他のアップリンクデータチャネルタイムスロットの符号化が同様に行われる。
【0052】
上記の説明では、NACK衝突をNACKパケットの受信と等価的に取り扱うことによって、ACKパケットの必要性が取り除かれている。しかし、NACK衝突を確実に検出するため、システムは様々なレベルのバックグラウンド信号変動を識別できる能力を要する。或いは、あるシステムはACKスキームとNACKスキームの両方を実施してもよい。ACKパケットの衝突を回避するため、ある受信機が、おそらく無作為的に、受信機の「リーダー」として選択され、このリーダーは各アップリンクデータチャネルタイムスロットでACKパケットを供給する役割を担う。同時に、リーダー以外の各受信機は、上記の方法でNACKパケットだけを送信する。このスキームの下で、誤りが発生した場合には、NACKパケットとACKパケットが衝突し、改竄された確認応答パケットが送信機で受信される。このようにして、適切に受信されたACKパケットは、対応するデータパケットが全ての受信機によって正しく受信されたことを示し、改竄された応答パケットは、少なくとも1台の受信機がパケットを正しく受信できなかったことを示す。
【図面の簡単な説明】
【0053】
【図1】従来技術のマルチキャストプロトコルが抱えるフィードバック爆発問題を説明する図である。
【図2】本発明の一実施形態に係るシステムトポロジー200を表す図である。
【図3】本発明の一実施例に係るTDMA/TDDスキーム300を説明する図である。
【図4】基地局201のMACレイヤ及び物理レイヤ(PHY)内の機能ブロックを示すブロック図である。
【図5】本発明の一実施形態に係るマルチキャスト受信機のMACレイヤ及びPHYレイヤ内の機能ブロック500を示すブロック図である。
【図6】本発明の一実施形態に係るアップリンクデータチャネル及びダウンリンクデータチャネルのスケジューリングを説明する図である。
【図7】本発明の一実施形態に係る基地局で実行される機能を表す詳細フローチャート700である。
【図8】本発明の一実施形態に係る受信機で実行される機能を表す詳細フローチャート800である。
【図9】図5の誤り検出ブロック503の動作を説明するフローチャートである。
【図10】図6に関して既に述べたフィードバックグルーピング機構を説明するフローチャートである。
【図11】本発明の一実施形態に係るNACKパケット受信とNACKパケット衝突処理の両方に関する基地局の動作を説明するフローチャートである。
【図12】本発明の一実施形態に係る基地局内のFEC計算ブロック405の動作を説明するフローチャートである。
【図13】本発明の一実施形態に係るMACレイヤデータパケットのデータフォーマットを示す図である。
【発明の背景】
【0001】
1.発明の分野
本発明はコンピュータネットワークに関するものである。特に、本発明は、送信機が各受信機によるマルチキャストパケットの受信の成功をチェックする必要のないリライアブルなマルチキャストサービスを提供することに関する。
【0002】
2.関連技術の説明
3GPP、3GGP2、及びWLANシステムは、マルチキャスティングサービスを提供する。すなわち、各システムは、単一のブロードキャストを使用して発信源からマルチキャストエリア内の複数の受信機へ情報を配信することが可能である。マルチキャスティングは、同一の情報を複数のユーザへ送信する場合に、乏しいネットワーク資源(例えば、エアインタフェース)の効率的な使用を可能にする。
【0003】
マルチメディアストリーミング及びロケーションベースの広告のようなアプリケーションでは、マルチキャストグループ内の受信機は、ある程度のパケットの損失を許容する。このようなアプリケーションでは、システムを簡素に保つために、損失回復能力を有していない低信頼のマルチキャストサービスが使用される。許容可能な性能を維持するため、アプリケーションは上位レイヤのリライアブルメカニズム(例えば、アプリケーションレイヤの前方誤り符号化)を使用して、パケット損失率を低減させる。しかしながら、「障害を許容しない」アプリケーション(例えば、「障害を許容しない」情報を要求するソフトウェアアップグレードの配信、分散コンピューティング、若しくは、ネットワークマネージメント)、又は、非常に少ない率の伝送パケットが失われることだけを許容するアプリケーションにおいては、リライアブルマルチキャストサービスが高速回復への要求を背景として望まれている。
【0004】
IPレイヤプロトコル及びリンクレイヤプロトコルは、リライアブルマルチキャストの二つの主要な既存のカテゴリーである。IPレイヤマルチキャストプロトコルは、インターネット経由で相互接続された異種の送信機と受信機との間のエンド・ツー・エンドのマルチキャストに重点を置いている。リンクレイヤマルチキャストプロトコルは、共通のマルチアクセス共有リンクによって相互接続された隣接する送信機と受信機との間のマルチキャストサポートに重点を置いている。現在に至るまで、リンクレイヤマルチキャストプロトコルよりもIPレイヤマルチキャストプロトコルについて多くの研究が行われてきた。
【0005】
現在のリンクレイヤマルチキャストプロトコルは、小さな帯域幅遅延積を有し、パケット損失を回復するためにストップアンドウェイト方式の自動再送要求(ARQ)メカニズムを使用するローカルエリアネットワーク(例えば、802.11タイプのWLAN)だけに適用可能である。このようなマルチキャストプロトコルは、大きな帯域幅遅延積をもつワイヤレスネットワークに拡張できない。したがって、大きな帯域幅遅延積をもつワイヤレスネットワークのためのリライアブルマルチキャストプロトコルが必要である。
【0006】
リライアブルマルチキャストプロトコルは、受信機の個数に起因する「フィードバック爆発問題」を解決しなければならない。フィードバック爆発問題について図1に示す。図1に示すように、単一の発信源S1から送信された各マルチキャストパケットが受信機R1〜R5それぞれからの確認応答を要求する場合に、確認応答(肯定又は否定)パケットの個数は受信機の個数と共に増加する。したがって、多数のマルチキャスト受信機からの確認応答パケットは送信機の処理能力を圧倒する可能性があり、また、送信機の近傍のルータ及びローカルネットワークに輻輳を引き起こす可能性がある。
【0007】
送信機起動のプロトコルは、送信機にリライアブルな配信の責任を負うことを要求するので、典型的にフィードバック爆発問題に対して脆弱である。このようなプロトコルでは、送信機が、受信機から受信した確認応答パケットを追跡する。問題をさらに悪化させるのは、(1)全ての送信及び再送信(すなわち、回復送信)が全ての受信機へのマルチキャストであるという要件と、(2)送信機が動作中の受信機とそれらの受信状態との変化する組を追跡し続けるという要件である。特に、IPマルチキャストモデルは、マルチキャストデータパケットがマルチキャストグループへ宛てられることを要求しており、それによって、送信機と受信機との間にあるレベルの間接化(indirection)を課すので、送信機が各受信機の受信状態を追跡することがコスト高に又は不可能になる。
【0008】
送信機起動型のプロトコルに固有の問題を回避するため、スケーラブル且つリライアブルなマルチキャストプロトコルの多くは受信機起動型のプロトコルであり、当該プロトコルは各受信機にそれ自体へのリライアブルなパケット配信の責任を負うことを要求する。このようなプロトコルでは、受信機が、再送信が必要である場合(例えば、誤りが検出された場合、予想したシーケンス番号のパケットが受信されない場合、又は、タイムアウトが発生した場合)に、否定フィードバック又は否定確認応答パケット(すなわち、NACKパケット)を送信機へ送信し、送信機は最新の受信機リストを保持する必要がない。送信機起動型のプロトコルと比較すると、受信機起動型のプロトコルは、一般的に、マルチキャストを受信する受信機の個数に対する感度が低く、生成するフィードバックパケットの個数が相当に少ない。したがって、受信機起動型のプロトコルは、送信機起動型のプロトコルよりもスケーラブルである。それにもかかわらず、受信機起動型のプロトコルは、送信機におけるNACK爆発に依然として脆弱であり、伝送誤りがある特定の時点で広範囲に及ぶ場合に、それによって多数のNACKパケットが同時に生じる。このような状態はリソースがマルチキャストツリー内で共有される場合に生じ、種々の受信機の間で相互に関連した損失が起こり得る。例えば、パケットがサブツリーへのリンクで失われると、そのリンクから下流にある各受信機は損失の影響を受け、その後、実質的に同時に否定フィードバックを用いて応答する。
【0009】
NACK爆発問題は、受信機に異なる遅延を割り当てる「タイマーベースプロトコル」によって解決される。このようなプロトコルの下では、パケット損失の検出時に、受信機は、NACKを即座に送信するのではなく、割り当てられた遅延時間が終了するまで待った後にNACKパケットを送信する。タイマーベースプロトコルは、このようにして、種々の受信機からのNACKパケットに時差を与える。理想的には、1台の受信機は、他の受信機がNACKパケットを送信する前に再送信を行わせるため時間的に十分に早く、NACKパケットを送出する。或いは、NACKパケットがすべての受信機へマルチキャストされる場合には、他の受信機は、最初のNACKパケットに応じた再送信を見込んで、各個のNACKパケットの送信を控える。したがって、タイマーベースプロトコルの性能は、種々の受信機にタイムアウト値を割り当てるアルゴリズムに依存する。
【0010】
スケーラブルかつリライアブルなマルチキャストサービスを提供するために、「構造ベースプロトコル」は、NACK(又はACK)処理タスクを複数のノードに配分する。その結果、送信機の負荷が削減される。これらのプロトコルは、マルチキャスト受信機をツリーのような種々の論理ネットワーク構造に編成する。このような編成では、下流ノードは、そのACK又はNACKパケットを下流ノードと送信機との間の中間ノードに向けて上流へ送信する。下流ノードは、さらに中間ノードから回復パケットを受信する。中間ノードが回復を行う能力を備えていない場合には、NACK又はACKパケットは送信機ノードに向けて更に上流へ送られる。
【0011】
リライアブルマルチキャストプロトコルの重要な面は、誤り回復である。大部分のリライアブルマルチキャストプロトコルは、パケット損失を回復するために単なるARQスキームを使用するが、ハイブリッド型の前方誤り訂正(FEC)及びARQスキームは、帯域幅の増加を要することなく、フィードバック爆発及びパケット配信の予測遅延を相当に低減し得る。従来技術では、2種のハイブリッド型のFEC及びARQスキームが存在する。第1の種では、修正ビットの個数が多量でない限り、修正ビットを修正パケットに込めて送信して、ビット誤り又は消失を訂正する。この場合、再送信のスキームが使用される。第2の種では、修正ビットは、データパケットとは別に伝送される。
【0012】
上記のプロトコルは全てIPレイヤで動作する。リンクレイヤプロトコルは、肯定フィードバック(ACK)と否定フィードバック(NACK)の両パケットを使用して、ワイヤレスリンクのラストホップでマルチアクセスワイヤレスLAN内にリライアブルマルチキャストを拡張する。このプロトコルの下では、マルチキャストグループ内の受信機が、送信機(例えば、基地局)へフィードバックを送信する目的のための「リーダー」、すなわち、代表として選ばれる。リーダーがパケットの受信に成功すると、リーダーはACKパケットを返信する。しかし、このリーダーノードが受信データパケット中に誤りを検出すると、リーダーノードは確認応答を送信せず、その結果、送信機からの自動再送信をトリガーする。リーダーではない別の受信機がその受信パケット中に誤りを検出すると、この受信機は、否定確認応答(NACK)パケットを送出する。当該否定確認応答(NACK)は、リーダーから送信されたACKパケットと矛盾する。このような条件が発生したとき、送信機はパケットを再送信する。
【0013】
IPレイヤマルチキャストプロトコルは、典型的に、マルチキャストツリーを維持する技術、往復遅延時間を推定する技術、グループ管理技術、及び、誤り回復方法を選択する技術を含む。これらのプロトコルは複雑なネットワークトポロジー用に設計されており、当該ネットワークトポロジーでは、送信機及び受信機がマルチホップリンクで相互接続されており、種々のリンク帯域幅、クロスオーバートラフィック、及び、損失確率を有している。単一の共有ワイヤレスリンクによって接続された1台の送信機及び複数の受信機を含む単純なトポロジーの場合、このようなIPレイヤマルチキャストプロトコルを使用することは非効率的であり、かつ、過剰である。
【0014】
論文:J.Nonnenmacher, E.Biersack、D.Towsley, “Parity−based loss recovery for reliable multicast transmission”, IEEE Tran. on Networking, Aug. 1998には、(1)ストップアンドウェイト方式のARQスキームを使用してパケット損失を回復し、(2)マルチキャストグループのリーダーとして単一の受信機を選択し、(3)ACKパケットとNACKパケットの衝突を否定確認応答として取り扱うマルチキャストスキームが記載されている。しかしながら、このストップアンドウェイト方式のARQスキームは、小さな帯域幅遅延積をもつ802.11タイプのネットワークだけに適している。大きな帯域幅遅延積をもつワイヤレスネットワーク(例えば、802.20ネットワーク)の場合、ストップアンドウェイト方式のARQスキームは、チャネル帯域幅の無駄遣いである考えられる。さらに、単一のリーダーによるアプローチは、起こり得る障害を単一点で表しており、リーダー維持のための幾つかのオーバーヘッドを要求する。さらに、NACKとACKの衝突によるアプローチは、所定の時点で一つのパケットのみが流通しており且つ承認された状態を維持しているシステムにおいてのみ、使用可能である。このようなスキームの下では、送信機は、受信された確認応答の詳細を調査することを必要とせずに、衝突を検出することによって伝送の失敗を判定する。しかしながら、複数のパケットが確認されない状態にある場合には、送信機は、流通しているパケットのなかで損失したパケットを見つけるために各確認応答を調査する必要がある。したがって、ACKパケットとNACKパケットの衝突は、さらなる調査が実行されない限り、あるパケットの損失を知らせるだけである。
【発明の概要】
【0015】
本発明は、リンクレイヤの誤り検出及び回復技術を使用して、大きな帯域幅遅延積を有するワイヤレスネットワークにおけるスケーラブル且つリライアブルなマルチキャスト方法を提供する。この方法は、基地局の送信機及び基地局の範囲内の受信機が大きな帯域幅遅延積をもつワイヤレスリンクによって相互接続される方法に適用される。これらのワイヤレスリンクを使用する通信に適用可能な媒体アクセス制御(MAC)レイヤプロトコルの一つは、時分割多元接続/時分割複信(TDMA/TDD)である。本発明の一実施形態によれば、本発明の方法は、FEC回復、事前防御、フィードバック抑制、NACK衝突、及び、データとフィードバックのグルーピングを組み合わせてもよい。
【0016】
帯域幅を十分に利用するために、本発明の方法は、基地局から多数の受信機へマルチキャストパケットのグループを同時に送信してもよい。全ての受信機からのフィードバックパケットの個数を抑制するために、肯定確認応答(ACK)の代わりに、否定確認応答(NACK)を使用して、送信機へフィードバックする。一実施形態によれば、NACKパケットの受信とNACKパケットの衝突の検出の両者がNACKパケットの発生として取り扱われるので、マルチキャストの対象である複数の受信機は同じタイムスロットに割り当てられてもよい。
【0017】
一実施形態では、FECベースのパケット損失回復技術が、同じFECパケットを使用して、種々の受信機の異種のパケット損失を回復する。異種の損失パターンをもつ多数の受信機を想定すると、このような方法はパケットの再送信を大きく削減する。FECパケットは、シーケンス番号を追跡する必要がないので、NACK衝突がNACKパケットの受信として取り扱われることを可能にする。したがって、本発明の方法はスケーラブルである。
【0018】
パケット伝送の遅延を減少させるために、本発明の一つの方法は、送信機側と受信機側の両者に事前防御を提供する。送信機側では、FECパケットがデータパケットと共に送信される。受信機側で、回復パケットが実際のパケットの損失より前に要求される。
【0019】
本発明の別の実施形態によれば、スケーラビリティ及びリライアビリティを高めるために、所定の個数のパケット損失をもつ全ての受信機に各フィードバックタイムスロットを割り当てることによって、種々の受信機からのグループ確認応答が実現される。このようなスキームの下では、必要なフィードバック帯域幅は、システム内の受信機の個数ではなく、送信されたパケットの個数だけに依存する。したがって、スケーラビリティが実現される。加えて、各受信機が全ての必要なFEC回復パケットを取得するので、リライアビリティが実現される。
【0020】
このように、本発明は、MACレイヤでのスケーラブル且つリライアブルなマルチキャストサービスをサポートする。本発明に係る方法は、大きな帯域幅遅延積をもつワイヤレスネットワークでの使用に特に適しているので、従来技術によるIPレイヤベースの方法、又は、小さな帯域幅遅延積をもつワイヤレスリンクだけに適した他の方法よりも有利である。さらに、本発明に係る方法は、ワイヤレスホップでローカルにマルチキャストパケット損失を回復する。ワイヤレスリンク内のパケット改竄はパケット損失の重大な原因であるので、ローカル回復スキームは、エンド・ツー・エンドベースのパケット回復方法よりも非常に迅速な回復を可能にする。
【0021】
また、ワイヤレスホップにおいて本発明を具現化する方法は、コアネットワーク内でリライアブルマルチキャストを提供するIPレイヤベースのマルチキャスト技術と組み合わすことが可能である。本発明は、基地局と各ワイヤレス端末との間でユニキャストコネクションを使用する従来のIPレイヤベースのマルチキャスト技術よりも多くのワイヤレス帯域幅を節約できる。マルチキャストを使用する方法は、ワイヤレスリンク内のユニキャストトラフィックに起因する輻輳を軽減する。
【0022】
本発明の方法は、確認応答パケットの個数が受信機の個数に依存しないので、スケーラブルである。種々の受信機からの確認応答パケットを少数のタイムスロットへ多重化し、NACK衝突イベントをNACKパケットの受信と等価なものとして取り扱うことによって、本発明の方法は、同数のアップリンクデータチャネルのタイムスロットとダウンリンクデータチャネルのタイムスロットとを使用して、十分にリライアブルなマルチキャストサービスを実現することが可能である。このような方法は、特定のシーケンス番号を必要とせずにNACKパケットを追跡するので、更にこの方法のスケーラビリティをより複雑なシステムへ向上し得る。スケーラビリティはまた、同数のパケット損失を被った全ての受信機を同一の否定確認応答タイムスロットに割り当てることに起因している。
【0023】
本発明の方法は、パケット損失を回復するためにFECパリティパケットを使用してもよい。多数の受信機及び異種の損失パターンを有するシステムにおいては、FECの使用によってパケット再送信の回数を相当に削減することができる。
【0024】
本発明は、以下の詳細な説明と添付図面を参照するとより一層理解される。
【好ましい実施形態の詳細な説明】
【0025】
本発明は、大きな帯域幅遅延積をもつワイヤレスネットワークにおけるスケーラブル且つリライアブルなマルチキャストをサポートする方法を提供する。図2は本発明の一実施形態に係るシステムトポロジー200を示す。図2に示すように、基地局201は、当該基地局201によって提供されるセル202内のマルチキャスト送信機である。移動端末1〜3は、ワイヤレスリンクによって基地局201とそれぞれに通信するものであって、マルチキャストグループ内の受信機である。本実施形態では、ダウンリンク(すなわち、基地局201から移動端末1〜3まで)及び対応するアップリンク(すなわち、移動端末から基地局201まで)は、時分割多元接続/時分割複信(TDMA/TDD)スキームを使用し、媒体アクセス(MAC)レイヤにおいて通信媒体(例えば、特定の中心周波数)を多重化及び二重化することによって、形成されている。
【0026】
図3は、本発明の一実施形態に係るTDMA/TDDスキーム300を示す。図3に示すように、TDMA/TDDスキーム300は、利用可能な帯域幅を期間301−1、301−2、...に分割し、これらの期間を交互にダウンリンクによる伝送(例えば、301−1、301−3、...)とアップリンクによる伝送(例えば、301−2、301−4、...)に割り付ける。ダウンリンク伝送とアップリンク伝送の両者の一部分は、データパケットの伝送のために設けられているので、それぞれが「ダウンリンクデータチャネル」及び「アップリンクデータチャネル」と呼ばれる。データチャネルのそれぞれは、タイムスロットに分割される。各タイムスロットにおいては、一人のユーザ、又は、一つのユーザのグループのみが、送信を許可される。データチャネルに割り振られた帯域幅は、均等でなくとも固定されていなくてもよく、実際に、その時々に変化してもよい。専用制御チャネルが基地局によって使用されて、アップリンクデータチャネル及びダウンリンクデータチャネルへのタイムスロットの割当が報知される。その結果、各受信機は、データ若しくは確認応答パケットを基地局へ送信し、又は、受け手として自装置を指定するデータパケットを基地局から受信するタイムスロットを通知される。例えば、図3に示すように、マルチキャストグループ1及びマルチキャストグループ2内の受信機のそれぞれは、伝送期間301−2において、参照番号302及び303によってそれぞれ示された4個のタイムスロットのグループが割り当てられる。同じマルチキャストグループ内の全ての受信機は、本発明の本実施形態によれば、同一のアップリンクチャネルタイムスロットを使用して確認応答を送信する。図3はまた、ダウンリンク伝送期間301−1の間にメッセージ304−1、304−2及び304−3を送信する基地局を示す。各メッセージは、マルチキャストメッセージ(例えば、図3のスキーム300に表されるように、マルチキャストグループ1又はマルチキャストグループ2へのマルチキャストメッセージ)であってもよく、又は、ユニキャストメッセージであってもよく、複数のパケットを含んでいてもよい(例えば、メッセージ304−1は参照番号303によって示されたパケットを含む)。ダウンリンク伝送期間は、多重化方式においてメッセージを送信するために割り付けられる。同様に、アップリンク伝送期間は、種々の受信機又はグループから確認応答又はデータパケットを送信するために多重化される。以下の説明では、本発明の方法の下で、ダウンリンクデータチャネル内の伝送期間(例えば、伝送期間又は「フレーム」301−1)とその後に続くアップリンクデータチャネル内の伝送期間(例えば、伝送期間301−2)を「ラウンド」という。
【0027】
図4は、基地局201のMACレイヤ400a及び物理レイヤ(PHY)400bの機能ブロック400を表すブロック図である。図4に示すように、機能ブロック400は、基地局201のMACレイヤ400a及びPHYレイヤ400bを含む。PHYレイヤ400bは、トランスミッタ401を含み、当該トランスミッタはワイヤレスリンクを介した送信のためにチャネル割当ブロック407からMACレイヤデータユニットを受信する。PHYレイヤ400bはまた、レシーバ/衝突検出ブロック402を含んでおり、当該レシーバ/衝突検出ブロック402は、ワイヤレスリンクからパケットを受信し、受信パケットを誤り検出ブロック403へアップロードする。レシーバ/衝突検出ブロック402はさらに、マルチキャスト確認応答に使用されるタイムスロットの期間に、信号強度を測定する。一実施形態では、TDMA/TDDスキームはNACKベースであるので、データパケットの正確な受信のためのACKパケットは送信されない。この実施形態では、複数の受信機がNACKパケットの送信に同じタイムスロットを使用するので、そのタイムスロット中に検出された衝突は複数の受信機がそれぞれにNACKパケットを送出したことを表す。レシーバ/衝突検出ブロック402は、静止チャネル(すなわち、伝送なし)とNACKパケットの受信(すなわち、単一のNACKパケットの受信成功又はパケット衝突条件の検出のいずれか)を区別し、その結果をMACレイヤ400bの誤り検出ブロック403へ報告する。
【0028】
誤り検出ブロック403は、検証済みのデータパケットを出力キュー409へ供給し、当該出力キューは、順に、上位レベルプロトコル(例えば、IPレイヤプロトコル)による処理のためのプロトコルスタックへ、そのデータパケットを送る。(本明細書においては、検証済みのデータパケットは、MACプロトコルレイヤ及びPHYプロトコルレイヤで誤りが検出されることなく受信されたデータパケットである。)。誤り検出ブロック403はさらに、レシーバ/衝突検出ブロック402から受信したNACKパケットと、マルチキャストトラフィックの衝突状態を示す信号とを受信し、送信失敗に関係するデータパケットを特定する。多数の誤り検出及び訂正スキームが本発明と共に使用可能である。例えば、一実施形態では、送信機は、以下のマルチキャスト送信スキームに従って、マルチキャストグループの全てのデータパケットを正確に受信できない受信機へFECパリティパケットを送信する。
【0029】
一つの好適なFECアルゴリズムは、A.J.McAuley著, “Reliable broadband communications using a burst erasure correcting code”, Sigcomm90, Sep. 1990発行に記載されている。このFECアルゴリズムでは、符号化されるべきk個のデータパケットの組{p1,p2,・・・,pk}に対して、リード・ソロモン消失訂正符号(「RSE符号」)が、n−k個のパリティパケットの組{d1,d2,・・・,dn−k}を与える。受信機のRSEデコーダは、n個のデータパケットとパリティパケット{p1,p2,・・・,pk,d1,d2,・・・,dn−k}のうちのk個を使用して、k個のデータパケット{p1,p2,・・・,pk}を再構成することが可能である。大きいシンボルサイズを操作するRSEエンコーダを実施することは難しいので、MACレイヤデータパケットは、一般に、複数のmビットエンコーダを並列に使用して符号化される。このアルゴリズムでは、データパケットとパリティパケットの総数であるnは、定数:n≦2mだけによって制限される。例えば、16ビット又は32ビットシンボルを使用すると、最大で216又は232個のパケットが訂正される。実際上、パケットの総数nと、FECパリティパケットの個数n−kは、マルチキャストグループのサイズとチャネル損失特性に適応した値をとるように選択される。以下、上記のRSE訂正符号のような誤り検出及び訂正メカニズムを使用した本発明について説明する。
【0030】
このように、現在のラウンドで損失が報告されたパケットの個数に基づいて、誤り検出ブロック403は、次のラウンドで送信する必要がある付加的なFECパリティパケットの個数を求める。マルチキャストバッファ404は、前のラウンドと現在のラウンドのマルチキャストグループパケットと、送信済みのFECパリティパケットを格納する。これらのパケットは、誤り検出ブロック403が付加的なFECパリティパケットを受信機へ送信する必要がないことを示したときに、マルチキャストバッファ404から削除される。必要とされるFECパリティパケットは、マルチキャストグループパケット及び送信済みのFECパリティパケットを使用して、FEC計算ブロック405で計算される。
【0031】
FEC計算ブロック405から出力されたFECパリティパケットは、マルチキャストグルーピングブロック406、及び、チャネル割当ブロック407内のクロスオーバートラフィックブロック408からのその他のデータパケットと多重化される。クロスオーバートラフィックブロック408は、本明細書中に記載されたマルチキャストに関係しない全てのデータパケットを管理する。
【0032】
MACプロトコルTDMA/TDDの下では、種々のデータストリームがチャネル割当ブロック407によって相異なるタイムスロットに割り当てられる。FEC計算ブロック405からのFECパリティパケットは、急速なパケット損失回復を可能にするために、マルチキャストグルーピングブロック406から受信された新しいパケットよりも高い優先度が割り当てられる。一般に、FEC計算ブロック405からのFECパリティパケットは、マルチキャストグルーピングブロック406からの新しいデータパケットが割り当てられる前に、タイムスロットに割り当てられる。リライアブルなマルチキャスト送信はユニキャストパケットよりも長時間を要することが多いので、マルチキャストグルーピングブロック406は入力キュー410からのマルチキャストパケットを一時的に記憶する。マルチキャストグルーピングブロック406は、入力キュー410の遮断を阻止し、FECパリティパケットがマルチキャストデータパケットと併せて使用できるようにする。
【0033】
本実施形態では、事前防御推定ブロック411は、誤り検出ブロック403の測定に基づいて現在のパケット損失率を計算する。現在のパケット損失率を使用して、事前防御推定ブロック411は、事前FECパリティパケットのデータパケットに対する比である事前防御率を決定する。事前防御率は、次にFEC計算ブロック405によって使用されてFECパリティパケットが作成され、当該FECパリティパケットは事前送信のためにチャネル割当ブロック407へ供給される。事前防御の使用は任意である。
【0034】
図5は、本発明の一実施形態に係るマルチキャスト受信機のMACレイヤ500a及びPHYレイヤ500b内の機能ブロック500を表すブロック図である。図5に示すように、MACレイヤ500b内のトランスミッタ501は、データパケットと確認応答パケットの両方を送信する。上述したように、アップリンクデータチャネルとダウンリンクデータチャネルの両方のタイムスロット割当は専用制御チャネルを介して基地局(例えば、基地局201)から受信される。チャネル多重化ブロック507は、割り当てられたアップリンクタイムスロットの期間にトランスミッタ501を介してワイヤレスリンクへ出力するために、データパケットを多重化する。割り当てられたダウンリンクタイムスロットにおいて、レシーバブロック502は、ワイヤレスリンクからデータパケットを受信するか、検証済みのパケットを誤り検出ブロック503へ供給するか、又は、受信パケット内の物理レイヤエラーを誤り検出ブロック503に報告する。誤り検出ブロック503は、検証済みのマルチキャストパケットをマルチキャストバッファ504に格納し、現在のラウンドで受信又は検出された改竄データパケットの個数を確認応答ブロック506へ報告する。確認応答ブロック506は、適切な確認応答タイムスロットでアップリンクデータチャネルにおいて送信されるべきNACKパケットを供給する。
【0035】
本実施形態では、事前防御ブロック510は、基地局201の事前防御ブロック411について既に説明した機能と同様の機能を実行する。事前防御ブロック510は、誤り検出ブロック503からの誤り測定結果に基づいて現在の損失率を計算し、事前防御率を確認応答ブロック506へ出力する。事前防御ブロック506は、次に、現在のラウンドにおける実際の損失パケットの個数とこの事前防御率の積に基づいてNACKパケットを供給する。基地局201と同様に、事前防御ブロック510及びその使用は任意である。本発明の範囲内で、事前防御は、送信機、受信機、又は、両者によって使用され得る。
【0036】
マルチキャストバッファ504は、データパケット及びFECパリティパケットの総数がマルチキャストグループを再構成するのに十分となるまでの間に受信されたマルチキャストグループの検証済みデータパケット及びFECパリティパケットを格納する。その時点で、データパケット及びFECパリティパケットは、存在すれば、FEC回復ブロック505へ供給され、当該FEC回復ブロックがデータパケットを回復する。回復されたデータパケットは、出力キュー508に置かれ、上位レベルプロトコルによる処理のためにプロトコルスタックへ送られる。
【0037】
図6は、本発明の一実施形態に係るアップリンクデータチャネル及びダウンリンクデータチャネルのスケジューリングを示す。図6に示すように、パケットP1、P2、...、P6を含むパケットのマルチキャストグループは、(マルチキャストグループアドレスを指定して)ダウンリンクへ送信され、受信機1、2及び3によって受信されることが示されている。当然ながら、図6に示されたパケットの個数と受信機の台数は、例示の目的のためだけに与えられている。実際には、より多数の受信機及びより多数のデータパケットが本発明の範囲内で受け容れられる。ラウンド1(すなわち、フレーム602−1及び602−2)において、4個のデータパケット(P1,P2,P3,P4)がダウンリンクデータチャネルで送信される。(本明細書では、4個のタイムスロットが例示の目的のためだけに各タイムフレームに与えられているが、実際には、任意の個数のタイムスロットが各タイムフレームに与えられる。)。図6において、受信機1がデータパケットP2及びP4を受信する際に誤りを被り、受信機2がデータパケットP3を受信する際に誤りを被り、受信機3がデータパケットP1を受信する際に誤りを被る。このように、各受信機は、他の受信機が受信できなかったデータパケットとは異なる少なくとも1個のデータパケットの受信に失敗している。
【0038】
図6に示す本発明の実施形態によれば、割り当てられたアップリンク確認応答タイムスロットの個数は、割り当てられたダウンリンクデータ送信タイムスロットの個数に一致する。したがって、(参照番号602−2によって示された)4個のタイムスロットが、現在のラウンドで送信されたデータパケットの確認応答のために割り当てられる。この取り決めの下で、フレーム602−2の第1のタイムスロットは、4個のパケットP1,P2,P3,P4の全てを受信できない全ての受信機に割り当てられ、フレーム602−2の第2のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの3個を受信できない全ての受信機に割り当てられ、フレーム602−2の第3のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの2個を受信できない全ての受信機に割り当てられ、フレーム602−2の第4のタイムスロットは、4個のパケットP1,P2,P3,P4のうちの1個を受信できない全ての受信機に割り当てられる。このようにして、受信機1は(参照番号L2によって示された)第3のタイムスロットの期間にNACKパケットを送信し、受信機2及び3は(参照番号L1によって示された)第4のタイムスロットの期間にNACKパケットを送信する。フレーム602−2の第4のタイムスロットに2台のトランスミッタがあるので、衝突が基地局で検出され、基地局はこの衝突状態をNACKパケットの受信と同じものとみなす。現在のラウンド中にいずれかの受信機が被ったパケット損失の最大個数は2個であるので、基地局は、パケットP1、P2、P3及びP4の回復のための2個のFECパリティパケットF1及びF2を送信するための計算及び準備を行う。このF1及びF2は、まだ送信されていない重複なしのFECパリティパケットである。
【0039】
ラウンド2(すなわち、フレーム602−3及び602−4)において、FECパリティパケットF1及びF2は、それぞれ、第1及び第2のタイムスロットで送信される。データパケットP5及びP6は第3及び第4のタイムスロットで送信される。FECパリティパケットF1及びF2は前のラウンドで送信されたデータパケットに関係するので、現在のラウンドのデータパケットP5及びP6はFECパリティパケットF1及びF2とは別個に応答される。このように、FECパリティパケットF1及びF2はフレーム602−4の第1及び第2のタイムスロットにおいてアップリンクデータチャネルで応答され、データパケットP5及びP6はフレーム602−4の第3及び第4のタイムスロットで応答される。したがって、データパケットP6を受信できない受信機2は、フレーム602−4の第4のタイムスロットでNACKパケットを送信し、同様に、パケットP6とP6の両方を受信できない受信機3はフレーム602−4の第3のタイムスロットでNACKパケットを送信する。
【0040】
確認応答タイムスロットの個数は動作中のマルチキャスト受信機の台数に依存せず、送信されたダウンリンクデータパケットの個数だけに依存するので、本発明の方法は、マルチキャスト受信機の台数の増加に対してスケーラブルである。本発明の方法はまた、リライアブルなデータ配信を保障するためにFEC技術を利用している。送信されるデータパケット毎に各受信機にタイムスロットが割り振られる従来技術よりも、本発明の方法は帯域幅の点で顕著に効率的である。図6に示すように、本発明の方法を使用すると、従来技術における4個ではなく、2個のFECパリティパケットだけを誤り回復のために送信すればよい。
【0041】
なお、図6は、上記の事前防御スキームの使用を説明していない。事前防御が使用される場合には、アップリンクスロットとダウンリンクスロットの個数は相違する。例えば、ダウンリンク事前防御率が1.5であるならば、4個のデータパケットの送信のために、4個のデータパケットと2個のFECパリティパケットのための6個のダウンリンクタイムスロットが使用され得る。この実施例では、アップリンクチャネルは、アップリンク事前防御が使用されない限り、4個の確認応答タイムスロットだけを必要とする。
【0042】
図7及び8はそれぞれ、詳細なフローチャート700及び800であり、基地局及び受信機のそれぞれで実行される上述の機能を示している。図7において、ステップ701では、基地局のMACレイヤが、専用制御チャネルにおいて、ダウンリンクデータチャネル及びアップリンクデータチャネル内のマルチキャストのためのタイムスロットアロケーション割当をブロードキャストする。ステップ702では、基地局のMACレイヤが、前のマルチキャスト送信が完了したか否かを調査する。前のマルチキャスト送信が完了していない場合には、ステップ703で、基地局のMACレイヤが、不完全な送信の受信情報を収集する。不完全な送信毎に、基地局のMACレイヤは、ステップ704で、誤り回復に必要なFECパリティパケットを求める。このFECパリティパケットは、次に、ステップ705で、送信のために、増加したマルチキャストグループ番号において現在のフレームに利用可能なタイムスロット内に割り当てられる。前の不完全な送信に関係する全てのFECパリティパケットが送られた後、現在のフレームに空きスロットがまだ存在する場合には、ステップ707で、基地局のMACレイヤが、プロトコルスタック内の上位レイヤプロトコルから新しいマルチキャストメッセージの新しいパケットを取り込む。ステップ708において、基地局のMACレイヤは、適切なタイムスロットで送信するためにFECパリティパケットと新しいデータパケットを準備する。
【0043】
図8において、受信機のMACレイヤは、専用制御チャネルから、ダウンリンクデータチャネル及びアップリンクデータチャネル内のマルチキャスト送信のタイムスロット割当及びグループ情報を受信する(ステップ801)。ステップ802では、受信機のMACレイヤが、そのPHYレイヤから現在のフレームのマルチキャストデータパケットを受信する。グループ情報を使用して、ステップ803では、受信機のMACレイヤが、データパケットを対応のマルチキャストグループに分類する。いずれか一つのグループから幾つかの又は全てのデータパケットが、通信チャネルで失われる。データパケットのマルチキャストグループ毎に、受信機のMACレイヤは、ステップ804で、現在のラウンドで受信された検証済みのデータパケット及び重複のないFECパリティパケットをカウントし、マルチキャストグループを正確に復号可能にするために次のラウンドで受信されるべき付加的なデータパケット又はFECパリティパケットを求める。ステップ805では、受信機のMACレイヤが、パケットのマルチキャストグループを正確に復号するために必要な個数のパケットが受信されたか否かを判定する。必要なパケットが受信された場合には、ステップ806で、受信機のMACレイヤが、データパケットを復号し、上位のプロトコルスタックへ配信する(ステップ808)。しかしながら、ステップ805において、受信機のMACレイヤがマルチキャストグループのための付加的なデータパケット又はFECパリティパケットが必要であると判定した場合には、MACレイヤは、ステップ807で、対応のNACKパケットを準備する。全てのNACKパケットが準備された後、ステップ810では、受信機のMACレイヤが、アップリンクデータチャネル内の適切なタイムスロットでNACKパケットを送信する。
【0044】
図9は、図5の誤り検出ブロック503の動作を説明するフローチャートである。上述したように、誤り検出ブロック503は検証済みデータパケットを追跡し、適切なNACK応答を送信機へ供給する。図9に示すように、誤り検出ブロック503は、ステップ901で、PHYレイヤから検証済みパケットを受信する。上述したように、これらのパケットは、1回以上のラウンドからのデータパケット又はFECパリティパケットである。ワイヤレスチャネル内の干渉はパケットを改竄し、検証を妨げる。検証済みパケットは対応のマルチキャストグループに応じて分類され(ステップ903)、NACKパケットがステップ902で制御チャネルから受信されたグループ割当情報に応じて指定のタイムスロットで送信される。マルチキャストグループ毎に、誤り検出ブロック503は、存在すれば、受信された重複のないFECパリティパケットの個数(ステップ905)と、まだ適切に受信されていないデータパケットの個数(ステップ906)の両方を求める。ステップ908で、誤り検出ブロック503は、次のラウンドで必要とされる付加的なパケットの個数を求め、この情報に基づいて、適切なNACKパケットが提供されて指定されたタイムスロットで送信される。
【0045】
図10は、図6を参照して既に述べたフィードバックグルーピングメカニズムを説明するマルチキャストシステムのフローチャートである。図10に示すように、ステップ1001では、ダウンリンクデータチャネル及びアップリンクデータチャネル割当とマルチキャストパケットグループ情報とが、専用制御チャネルから受信される。確認応答パケットが損失パターンに一意にインデックス付けをできるようにするために、制御チャネルからのグループ情報は各マルチキャストパケットグループに割り振られたタイムスロットの個数を含む。当然ながら、このような情報は異なる形式で、例えば、パケットヘッダで配布されてもよい。ステップ1002では、受信パケットは対応のマルチキャストパケットグループに分類され、ステップ1003では、次のラウンドにおける各マルチキャストパケットグループの所要のFECパリティパケットが、例えば、図9を参照して説明した方法を使用して求められる。上述したように、一実施形態では、アップリンクデータチャネル内の確認応答タイムスロット割当はダウンリンクデータチャネル内のグループ割り振りの後に続く(ステップ1004)。しかしながら、事前防御が使用される場合には、アップリンクデータチャネルとダウンリンクデータチャネルのタイムスロット割当は異なる。事前防御が使用されるか否かとは無関係に、各マルチキャストパケットグループのタイムスロットの個数と、ダウンリンクデータチャネル及びアップリンクデータチャネルにおけるタイムスロットの割り振りは、ステップ1001に関して説明した方式で指定される。マルチキャストパケットグループに対応する確認応答タイムスロットのグループ毎に、ステップ1005では、第1のタイムスロットが、現在のラウンドの全てのパケットが改竄されて受信されたことを示し、その結果、このラウンドのデータパケットと同数のFECパリティパケットが次のラウンドで必要とされる。ステップ1006では、各受信機が、現在のタイムスロットがそのFECパリティパケットの必要性を示すか否かを判定する。もしそうであるならば、ステップ1008で、受信機はNACKパケットを送出する。現在のマルチタスクパケットグループに応答するためのその他のタイムスロットでは、送信は行われない。本実施形態では、確認応答タイムスロットの位置は(一実施形態では、必要とされるFECパリティパケットの個数にも一致する)受信された改竄パケットの個数を示すので、カウンタがNACKパケットの時刻を追跡するために使用される。例えば、カウンタは、カウンタ内のカウントが受信された改竄パケットの個数に一致するまでデクリメントされる(ステップ1010−1011)。現在のラウンドは、全てのマルチキャストパケットグループに応答が行われたときに終了する(ステップ1012)。
【0046】
図11は、本発明の一実施例に係るNACKパケットの受信とNACKパケット衝突の処理の両方に関する基地局の動作を説明するフローチャートである。ステップ1101では、基地局は、各アップリンクデータチャネルタイムスロットのパケット送信を検出する。ステップ1102では、基地局は、受信したNACKパケットが検証されたか否か(すなわち、誤りなしかどうか)を判定する。もしそうであるならば、ステップ1104で、基地局は、NACKパケットが適切に受信されたものと判断する。そうでなければ、ステップ1103で、基地局は、受信信号電力が予め決定された平均ノイズ電力スレッショルドを超えるか否かを判定する。このような高い受信信号電力が検出されたならば、NACKパケット衝突が起こったと考えられるので、これは2台以上の受信機が現在のタイムスロットによって指定された個数の改竄データパケットを被ったことを示す。基地局に関して、基地局は現在のタイムスロットでNACKパケットを受信したことと同じこととしてこの信号状態を取り扱う。しかしながら、ステップ1103で、基地局が平均ノイズ電力スレッショルドよりも低い信号電力を検出した場合には、NACKパケットは受信されていないと見なされる(すなわち、静止チャネル)。現在のtのタイムスロットにNACKパケット送信が存在しないことは、検証済みACKパケットと同じ情報を伝えている。したがって、ステップ1105で、基地局は、上位レベルプロトコルに、肯定確認応答の情報を伝達する結果を出力する。
【0047】
図12は、本発明の一実施形態に係る基地局内のFEC計算ブロック405の動作を説明するフローチャートである。図12に示すように、ステップ1201では、FEC計算ブロック405は、マルチキャストバッファ404からパケット回復要求を受信する。マルチキャストパケットの一つ以上のグループが同時に共存するので、パケット回復要求はまた、複数のマルチキャストグループに関連する。ステップ1202では、FEC計算ブロック405は、全てのマルチキャストパケットグループが処理されたか否かを判定する。もしそうであるならば、FEC計算は要求されない。そうでなければ、ステップ1203で、FEC計算ブロック405は、送信を完了していないマルチキャストパケットグループを選択する。一実施形態では、処理されるべきマルチキャストパケットグループは、最先に送信を開始したマルチキャストパケットグループから始めて、時間順に選択される。ステップ1204では、FEC計算ブロック405は、選択されたマルチキャストグループの所要のFECパリティパケットが計算されたかどうかをチェックする。所要のFECパリティパケットが計算されていないならば、FEC計算ブロック405は、ステップ1208でマルチキャストバッファ404からデータパケットを取得し、ステップ1209でFECパリティパケットを計算する。FEC計算ブロック405は、FECパリティパケットが送信中の改竄にも脆弱であるので、現在のラウンドで要求されるよりも多数のFECパリティパケットを計算してもよい。計算すべき付加的なFECパリティパケットの個数は、受信機の総数及び現在のチャネル条件に依存する。このような冗長性を判定するアルゴリズムが本発明の範囲内で使用されてもよい。ステップ1210で、FEC計算ブロック405は、次に、FECパリティパケットを受信機へ送信する。ステップ1204−1205で、所要のFECパリティパケットが既に計算されているならば、FEC計算ブロック405は既存のFECパリティパケットを受信機へ供給する。典型的に、FEC計算ブロック405は、重複のないFECパリティパケット(すなわち、前に送信されていないFECパリティパケット)を送信する。さもなければ、ステップ1206で、重複のないFECパリティパケットの個数がパケット損失を回復するために必要な個数よりも少ない場合に、前に送信されたFECパリティパケットがステップ1207で送信される。
【0048】
図13は、本発明の一実施形態によるMACレイヤデータパケット1300のデータフォーマットを示す。図13に示すデータフォーマットは、システムに限定されない態様において本発明を説明しており、実際のシステムでは、付加的なシステム関連フィールドが含まれる。図13に示すように、データパケット1300の最初の2個のフィールドであるラベル付きデータフィールド1301a及び1301bは、それぞれ、宛先アドレス及び発信アドレスである。ダウンリンクデータチャネル送信の場合、宛先アドレスはマルチキャストグループアドレスであり、発信アドレスは基地局のMACアドレスである。アップリンクデータチャネルの場合、着信アドレスは同様にマルチキャストアドレスであるが、発信アドレスは受信機のMACアドレスである。パケットタイプフィールド1302は、データパケットと、FECパリティパケットと、NACKパケットとを区別する。データパケットタイプの場合、「シーケンス番号」フィールド(1303)は、マルチキャストグループのMACシーケンス番号を格納する。各マルチキャストグループは、0から最大値まで変化する連続的なシーケンス番号を追跡する。「開始シーケンス番号」フィールド1304a及び「最終シーケンス番号」フィールド1304bはデータパケットのためには使われない。ペイロードフィールド1305は任意の個数のデータワードを格納する。
【0049】
FECパリティパケット内で、「シーケンス番号」フィールド1303はマルチキャストグループのMAC FECシーケンス番号を格納する。(MAC FECシーケンス番号はデータパケット内のMACパケットシーケンス番号とは異なる。)。FECシーケンス番号は同様に0から最大値まで連続的に番号付けされる。FECパリティパケットの「開始シーケンス番号」フィールド1304a及び「最終シーケンス番号」フィールド1304bは、そのFECパリティパケットが対応する開始MACデータパケットのシーケンス番号及び最終MACデータパケットのシーケンス番号を指定する。
【0050】
一実施形態では、タイムスロットの位置が失われたデータパケットの個数を示すので、シーケンス番号フィールド1303、1304a及び1304bは使用されない。
【0051】
上記の詳細な説明は本発明の具体的な実施形態を説明するためだけに提供されており、本発明の範囲を制限することを意図していない。本発明の範囲に含まれる多種多様の変形及び変更が考えられる。例えば、種々の受信機からの確認応答のトラフィックのグループ化は、上記の方法とは異なる方法で実施され得る。特に、アップリンクデータチャネルタイムスロットが2進カウンタとして使用され得る(すなわち、n番目のタイムスロットは2(n−1)のパケット損失を示すために使用される)。このようなスキームでは、アップリンクデータチャネルタイムスロットの個数はダウンリンクデータチャネルタイムスロットの個数よりも遙かに少ない。例えば、7個のダウンリンクデータチャネルタイムスロット毎に、3個のアップリンクデータチャネルタイムスロットだけが必要である。当然ながら、このようなスキームは、受信機が他の送信のそれぞれを監視できることを要するので、アプリケーションが限定される。その他のアップリンクデータチャネルタイムスロットの符号化が同様に行われる。
【0052】
上記の説明では、NACK衝突をNACKパケットの受信と等価的に取り扱うことによって、ACKパケットの必要性が取り除かれている。しかし、NACK衝突を確実に検出するため、システムは様々なレベルのバックグラウンド信号変動を識別できる能力を要する。或いは、あるシステムはACKスキームとNACKスキームの両方を実施してもよい。ACKパケットの衝突を回避するため、ある受信機が、おそらく無作為的に、受信機の「リーダー」として選択され、このリーダーは各アップリンクデータチャネルタイムスロットでACKパケットを供給する役割を担う。同時に、リーダー以外の各受信機は、上記の方法でNACKパケットだけを送信する。このスキームの下で、誤りが発生した場合には、NACKパケットとACKパケットが衝突し、改竄された確認応答パケットが送信機で受信される。このようにして、適切に受信されたACKパケットは、対応するデータパケットが全ての受信機によって正しく受信されたことを示し、改竄された応答パケットは、少なくとも1台の受信機がパケットを正しく受信できなかったことを示す。
【図面の簡単な説明】
【0053】
【図1】従来技術のマルチキャストプロトコルが抱えるフィードバック爆発問題を説明する図である。
【図2】本発明の一実施形態に係るシステムトポロジー200を表す図である。
【図3】本発明の一実施例に係るTDMA/TDDスキーム300を説明する図である。
【図4】基地局201のMACレイヤ及び物理レイヤ(PHY)内の機能ブロックを示すブロック図である。
【図5】本発明の一実施形態に係るマルチキャスト受信機のMACレイヤ及びPHYレイヤ内の機能ブロック500を示すブロック図である。
【図6】本発明の一実施形態に係るアップリンクデータチャネル及びダウンリンクデータチャネルのスケジューリングを説明する図である。
【図7】本発明の一実施形態に係る基地局で実行される機能を表す詳細フローチャート700である。
【図8】本発明の一実施形態に係る受信機で実行される機能を表す詳細フローチャート800である。
【図9】図5の誤り検出ブロック503の動作を説明するフローチャートである。
【図10】図6に関して既に述べたフィードバックグルーピング機構を説明するフローチャートである。
【図11】本発明の一実施形態に係るNACKパケット受信とNACKパケット衝突処理の両方に関する基地局の動作を説明するフローチャートである。
【図12】本発明の一実施形態に係る基地局内のFEC計算ブロック405の動作を説明するフローチャートである。
【図13】本発明の一実施形態に係るMACレイヤデータパケットのデータフォーマットを示す図である。
【特許請求の範囲】
【請求項1】
スケーラブルかつリライアブルなマルチキャストサービスを提供する方法であって、
通信媒体を介してマルチキャストアドレスによって指定された受信機のグループへデータパケットのグループを送信するステップと、
前記受信機のグループから前記通信媒体を介して、確認応答パケットを受信するステップと、
を含み、
各確認応答パケットは、前記受信機のうちの1台が、当該確認応答パケットによって特定される個数のデータパケットを受信できなかったことを表す、方法。
【請求項2】
前記通信媒体は、送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクを含む、請求項1記載の方法。
【請求項3】
前記通信媒体は、タイムスロットに分割され、受信中に、各タイムスロットが特定の個数のデータパケットを受信できなかったことについて応答するために前記受信機に割り当てられる、請求項1記載の方法。
【請求項4】
受信されなかった前記データパケットの特定の個数は、各タイムスロットの位置によって暗黙的に指定される、請求項3記載の方法。
【請求項5】
あるタイムスロットで受信中に検出された衝突は、そのタイムスロットにおける確認応答パケットの受信と等価であるとみなされる、請求項4記載の方法。
【請求項6】
前記データパケットの送信と前記確認応答パケットを送信する前記受信機とのための前記通信媒体の割り振りを指定する制御パケットを前記受信機へ送信するステップを更に含む、請求項1記載の方法。
【請求項7】
前記データパケットは、受信された確認応答パケットに応じて準備された1個以上の前方誤り訂正(FEC)パリティパケットを含む、請求項1記載の方法。
【請求項8】
準備されるFECパリティパケットの個数は、受信された前記確認応答パケットによって指定されたように、受信機によって受信できなかったデータパケットの最大個数に対応する、請求項7記載の方法。
【請求項9】
十分な個数のデータパケット及びFECパリティパケットが前記受信機によって受信されたとみなされるまで、前記データパケット及び前記FECパリティパケットをマルチキャストバッファに格納するステップを更に含む、請求項7記載の方法。
【請求項10】
1個以上の前記データパケットが前記受信機によって受信できないことを見込んで、事前に1個以上の前方誤り訂正(FEC)パリティパケットを送信するステップを更に含む、請求項1記載の方法。
【請求項11】
前記データパケットは、複数のマルチキャストメッセージのデータパケットを含む、請求項1記載の方法。
【請求項12】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとの間で多重化されており、前記第1のデータリンク及び前記第2のデータリンクのそれぞれは前記通信媒体を一方のデータリンクへ譲る前に所定の期間のデータ送信用の期間が与えられている、請求項11記載の方法。
【請求項13】
各期間が複数のタイムスロットに分割される、請求項12記載の方法。
【請求項14】
前記第1のデータリンクの前記タイムスロットが、より早い時点での送信機による送信のために出されたマルチキャストメッセージを優先するように、前記マルチキャストメッセージの前記データパケットに割り振られる、請求項13記載の方法。
【請求項15】
1個の前記マルチキャストメッセージの中の前記データパケットは、送信されるべきデータパケットと前方誤り訂正(FEC)パリティパケットの両方を含む、請求項14記載の方法。
【請求項16】
前記確認応答パケットによって表された、受信できなかった最高回数に基づいて、送信されるべきFECパリティパケットの個数を決定するステップを更に含む、請求項15記載の方法。
【請求項17】
前記受信機のうちの選択された1台から肯定確認応答パッケージを受信するステップを更に含む、請求項1記載の方法。
【請求項18】
スケーラブル且つリライアブルなマルチキャストサービスを提供する方法であって、
送信機によって通信媒体を介して、マルチキャストアドレスによって指定された受信機のグループへ送信されたデータパケットのグループを受信するステップと、
前記通信媒体を介して、確認応答パケットを送信するステップであって、前記確認応答パケットは該確認応答パケットによって指定された数のデータパケットを受信できなかったことを表す、該ステップと、
を含む方法。
【請求項19】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとを含む、請求項18記載の方法。
【請求項20】
前記通信媒体がタイムスロットに分割され、確認応答パケットの送信用に割り振られた各タイムスロットは、特定の個数のデータパケットを受信できなかったことについて応答するために前記受信機によって共有される、請求項18記載の方法。
【請求項21】
受信されなかった前記データパケットの特定の個数は、各タイムスロットの位置によって暗黙的に指定される、請求項20記載の方法。
【請求項22】
確認応答パケットが送信されるタイムスロットの間に前記送信機によって検出された衝突は、そのタイムスロットにおける確認応答パケットの受信と等価であるとみなされる、請求項21記載の方法。
【請求項23】
前記データパケットの送信と前記確認応答パケットを送信する前記受信機とのための前記通信媒体の割り振りを指定する制御パケットを前記送信機から受信するステップを更に含む、請求項18記載の方法。
【請求項24】
前記データパケットは、受信された確認応答パケットに応じて準備された1個以上の前方誤り訂正(FEC)パリティパケットを含む、請求項18記載の方法。
【請求項25】
受信されるものと予想されるFECパリティパケットの個数は、受信された前記確認応答パケットによって指定されるように、受信機によって受信できなかったデータパケットの最大個数に対応する、請求項24記載の方法。
【請求項26】
十分な個数のデータパケット及びFECパリティパケットが受信されるまで、受信された前記データパケット及び前記FECパリティパケットをマルチキャストバッファに格納するステップを更に含む、請求項24記載の方法。
【請求項27】
1個以上の前記データパケットを受信できないことを見込んで、事前に確認応答パケットを送信するステップを更に含む、請求項18記載の方法。
【請求項28】
前記データパケットは、複数のマルチキャストメッセージのデータパケットを含む、請求項18記載の方法。
【請求項29】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとの間で多重化されており、前記第1のデータリンク及び前記第2のデータリンクのそれぞれは前記通信媒体を一方のデータリンクへ譲る前に所定の期間のデータ送信のための期間が与えられる、請求項28記載の方法。
【請求項30】
各期間が複数のタイムスロットに分割される、請求項29記載の方法。
【請求項31】
前記第1のデータリンクの前記タイムスロットが、より早い時点での送信機による送信のために出されたマルチキャストメッセージを優先するように、前記マルチキャストメッセージの前記データパケットに割り振られる、請求項30記載の方法。
【請求項32】
1個の前記マルチキャストメッセージの中の前記データパケットは、送信されるべきデータパケットと前方誤り訂正(FEC)パリティパケットの両方を含む、請求項31記載の方法。
【請求項33】
ワイヤレス受信機における媒体アクセス制御(MAC)モジュールであって、該MACモジュールはデータパケットを受信する物理レイヤレシーバ及びデータパケットを送信する物理レイヤトランスミッタに接続され、受信される前記データパケットはマルチキャストメッセージのデータパケットを含み、送信される前記データパケットは確認応答パケットを含み、
該MACモジュールは、
受信された前記データパケットのそれぞれにおける誤りを検出する検出モジュールと、
マルチキャストメッセージに応じて分類された受信された前記データパケットを記憶するマルチキャストバッファと、
前記ワイヤレス受信機に受信できなかったデータパケットの特定の個数をそれぞれが示す確認応答パケットを準備する確認応答パケット準備モジュールと、
を備えるMACモジュール。
【請求項34】
受信できなかった前記データパケットの特定の個数は、予め割り当てられた時点で確認応答パケットを送信することによって暗黙的に指定される、請求項33記載のMACモジュール。
【請求項35】
受信された前記データパケット中の前方誤り訂正パリティ情報を復号化する前方誤り訂正(FEC)モジュールを更に備える、請求項33記載のMACモジュール。
【請求項36】
前記誤り検出モジュールからの検証済みデータパケットを上位レイヤプロトコルによる処理のために送り出す出力キューを更に備える、請求項33記載のMACモジュール。
【請求項37】
前記データパケットと前記確認応答パケットとで前記物理レイヤトランスミッタを共有するためのチャネル多重化器を更に備える、請求項33記載のMACモジュール。
【請求項38】
受信できなかったデータパケットの実際の個数よりも多くなるように、受信できなかったデータパケットの前記特定の個数を供給する事前防御モジュールを更に備える、請求項33記載のMACモジュール。
【請求項39】
基地局における媒体アクセス制御(MAC)モジュールであって、データパケットを受信する物理レイヤレシーバ及びデータパケットを送信する物理レイヤトランスミッタに接続され、送信される前記データパケットはマルチキャストメッセージのデータパケットを含み、受信される前記データパケットは複数の受信機からの確認応答パケットを含み、
該MACモジュールは、
受信された前記確認応答パケットのそれぞれにおける誤りを検出する検出モジュールと、
マルチキャストメッセージに応じて分類された送信されるべき前記データパケットを記憶するマルチキャストバッファと、
前記受信機の中の1台によって受信できなかったデータパケットの特定の個数を示す確認応答パケットの受信に応じて、送信されるべきデータパケットを準備する確認応答パケット処理モジュールと、
を備えるMACモジュール。
【請求項40】
受信できなかった前記データパケットの特定の個数は、前記受信機の中の1台によって前記確認応答パケットが送信された時点によって暗黙的に指定される、請求項39記載のMACモジュール。
【請求項41】
前記確認応答パケットに応じてデータ回復のための前方誤り訂正パリティパケットを準備するための前方誤り訂正(FEC)モジュールを更に備える、請求項40記載のMACモジュール。
【請求項42】
前記誤り検出モジュールからの検証済みデータパケットを上位レイヤプロトコルによる処理のために送り出す出力キューを更に備える、請求項39記載のMACモジュール。
【請求項43】
前記データパケットと前記確認応答パケットとで前記物理レイヤトランスミッタを割り振るためのチャネル割当モジュールを更に備える、請求項39記載のMACモジュール。
【請求項44】
受信できなかったデータパケットの実際の個数よりも多い個数のFECパリティパケットを供給するための事前防御モジュールを更に備える、請求項41記載のMACモジュール。
【請求項1】
スケーラブルかつリライアブルなマルチキャストサービスを提供する方法であって、
通信媒体を介してマルチキャストアドレスによって指定された受信機のグループへデータパケットのグループを送信するステップと、
前記受信機のグループから前記通信媒体を介して、確認応答パケットを受信するステップと、
を含み、
各確認応答パケットは、前記受信機のうちの1台が、当該確認応答パケットによって特定される個数のデータパケットを受信できなかったことを表す、方法。
【請求項2】
前記通信媒体は、送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクを含む、請求項1記載の方法。
【請求項3】
前記通信媒体は、タイムスロットに分割され、受信中に、各タイムスロットが特定の個数のデータパケットを受信できなかったことについて応答するために前記受信機に割り当てられる、請求項1記載の方法。
【請求項4】
受信されなかった前記データパケットの特定の個数は、各タイムスロットの位置によって暗黙的に指定される、請求項3記載の方法。
【請求項5】
あるタイムスロットで受信中に検出された衝突は、そのタイムスロットにおける確認応答パケットの受信と等価であるとみなされる、請求項4記載の方法。
【請求項6】
前記データパケットの送信と前記確認応答パケットを送信する前記受信機とのための前記通信媒体の割り振りを指定する制御パケットを前記受信機へ送信するステップを更に含む、請求項1記載の方法。
【請求項7】
前記データパケットは、受信された確認応答パケットに応じて準備された1個以上の前方誤り訂正(FEC)パリティパケットを含む、請求項1記載の方法。
【請求項8】
準備されるFECパリティパケットの個数は、受信された前記確認応答パケットによって指定されたように、受信機によって受信できなかったデータパケットの最大個数に対応する、請求項7記載の方法。
【請求項9】
十分な個数のデータパケット及びFECパリティパケットが前記受信機によって受信されたとみなされるまで、前記データパケット及び前記FECパリティパケットをマルチキャストバッファに格納するステップを更に含む、請求項7記載の方法。
【請求項10】
1個以上の前記データパケットが前記受信機によって受信できないことを見込んで、事前に1個以上の前方誤り訂正(FEC)パリティパケットを送信するステップを更に含む、請求項1記載の方法。
【請求項11】
前記データパケットは、複数のマルチキャストメッセージのデータパケットを含む、請求項1記載の方法。
【請求項12】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとの間で多重化されており、前記第1のデータリンク及び前記第2のデータリンクのそれぞれは前記通信媒体を一方のデータリンクへ譲る前に所定の期間のデータ送信用の期間が与えられている、請求項11記載の方法。
【請求項13】
各期間が複数のタイムスロットに分割される、請求項12記載の方法。
【請求項14】
前記第1のデータリンクの前記タイムスロットが、より早い時点での送信機による送信のために出されたマルチキャストメッセージを優先するように、前記マルチキャストメッセージの前記データパケットに割り振られる、請求項13記載の方法。
【請求項15】
1個の前記マルチキャストメッセージの中の前記データパケットは、送信されるべきデータパケットと前方誤り訂正(FEC)パリティパケットの両方を含む、請求項14記載の方法。
【請求項16】
前記確認応答パケットによって表された、受信できなかった最高回数に基づいて、送信されるべきFECパリティパケットの個数を決定するステップを更に含む、請求項15記載の方法。
【請求項17】
前記受信機のうちの選択された1台から肯定確認応答パッケージを受信するステップを更に含む、請求項1記載の方法。
【請求項18】
スケーラブル且つリライアブルなマルチキャストサービスを提供する方法であって、
送信機によって通信媒体を介して、マルチキャストアドレスによって指定された受信機のグループへ送信されたデータパケットのグループを受信するステップと、
前記通信媒体を介して、確認応答パケットを送信するステップであって、前記確認応答パケットは該確認応答パケットによって指定された数のデータパケットを受信できなかったことを表す、該ステップと、
を含む方法。
【請求項19】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとを含む、請求項18記載の方法。
【請求項20】
前記通信媒体がタイムスロットに分割され、確認応答パケットの送信用に割り振られた各タイムスロットは、特定の個数のデータパケットを受信できなかったことについて応答するために前記受信機によって共有される、請求項18記載の方法。
【請求項21】
受信されなかった前記データパケットの特定の個数は、各タイムスロットの位置によって暗黙的に指定される、請求項20記載の方法。
【請求項22】
確認応答パケットが送信されるタイムスロットの間に前記送信機によって検出された衝突は、そのタイムスロットにおける確認応答パケットの受信と等価であるとみなされる、請求項21記載の方法。
【請求項23】
前記データパケットの送信と前記確認応答パケットを送信する前記受信機とのための前記通信媒体の割り振りを指定する制御パケットを前記送信機から受信するステップを更に含む、請求項18記載の方法。
【請求項24】
前記データパケットは、受信された確認応答パケットに応じて準備された1個以上の前方誤り訂正(FEC)パリティパケットを含む、請求項18記載の方法。
【請求項25】
受信されるものと予想されるFECパリティパケットの個数は、受信された前記確認応答パケットによって指定されるように、受信機によって受信できなかったデータパケットの最大個数に対応する、請求項24記載の方法。
【請求項26】
十分な個数のデータパケット及びFECパリティパケットが受信されるまで、受信された前記データパケット及び前記FECパリティパケットをマルチキャストバッファに格納するステップを更に含む、請求項24記載の方法。
【請求項27】
1個以上の前記データパケットを受信できないことを見込んで、事前に確認応答パケットを送信するステップを更に含む、請求項18記載の方法。
【請求項28】
前記データパケットは、複数のマルチキャストメッセージのデータパケットを含む、請求項18記載の方法。
【請求項29】
前記通信媒体は、前記送信機から前記受信機へパケットを送信するための第1のデータリンクと前記受信機から前記送信機へパケットを送信するための第2のデータリンクとの間で多重化されており、前記第1のデータリンク及び前記第2のデータリンクのそれぞれは前記通信媒体を一方のデータリンクへ譲る前に所定の期間のデータ送信のための期間が与えられる、請求項28記載の方法。
【請求項30】
各期間が複数のタイムスロットに分割される、請求項29記載の方法。
【請求項31】
前記第1のデータリンクの前記タイムスロットが、より早い時点での送信機による送信のために出されたマルチキャストメッセージを優先するように、前記マルチキャストメッセージの前記データパケットに割り振られる、請求項30記載の方法。
【請求項32】
1個の前記マルチキャストメッセージの中の前記データパケットは、送信されるべきデータパケットと前方誤り訂正(FEC)パリティパケットの両方を含む、請求項31記載の方法。
【請求項33】
ワイヤレス受信機における媒体アクセス制御(MAC)モジュールであって、該MACモジュールはデータパケットを受信する物理レイヤレシーバ及びデータパケットを送信する物理レイヤトランスミッタに接続され、受信される前記データパケットはマルチキャストメッセージのデータパケットを含み、送信される前記データパケットは確認応答パケットを含み、
該MACモジュールは、
受信された前記データパケットのそれぞれにおける誤りを検出する検出モジュールと、
マルチキャストメッセージに応じて分類された受信された前記データパケットを記憶するマルチキャストバッファと、
前記ワイヤレス受信機に受信できなかったデータパケットの特定の個数をそれぞれが示す確認応答パケットを準備する確認応答パケット準備モジュールと、
を備えるMACモジュール。
【請求項34】
受信できなかった前記データパケットの特定の個数は、予め割り当てられた時点で確認応答パケットを送信することによって暗黙的に指定される、請求項33記載のMACモジュール。
【請求項35】
受信された前記データパケット中の前方誤り訂正パリティ情報を復号化する前方誤り訂正(FEC)モジュールを更に備える、請求項33記載のMACモジュール。
【請求項36】
前記誤り検出モジュールからの検証済みデータパケットを上位レイヤプロトコルによる処理のために送り出す出力キューを更に備える、請求項33記載のMACモジュール。
【請求項37】
前記データパケットと前記確認応答パケットとで前記物理レイヤトランスミッタを共有するためのチャネル多重化器を更に備える、請求項33記載のMACモジュール。
【請求項38】
受信できなかったデータパケットの実際の個数よりも多くなるように、受信できなかったデータパケットの前記特定の個数を供給する事前防御モジュールを更に備える、請求項33記載のMACモジュール。
【請求項39】
基地局における媒体アクセス制御(MAC)モジュールであって、データパケットを受信する物理レイヤレシーバ及びデータパケットを送信する物理レイヤトランスミッタに接続され、送信される前記データパケットはマルチキャストメッセージのデータパケットを含み、受信される前記データパケットは複数の受信機からの確認応答パケットを含み、
該MACモジュールは、
受信された前記確認応答パケットのそれぞれにおける誤りを検出する検出モジュールと、
マルチキャストメッセージに応じて分類された送信されるべき前記データパケットを記憶するマルチキャストバッファと、
前記受信機の中の1台によって受信できなかったデータパケットの特定の個数を示す確認応答パケットの受信に応じて、送信されるべきデータパケットを準備する確認応答パケット処理モジュールと、
を備えるMACモジュール。
【請求項40】
受信できなかった前記データパケットの特定の個数は、前記受信機の中の1台によって前記確認応答パケットが送信された時点によって暗黙的に指定される、請求項39記載のMACモジュール。
【請求項41】
前記確認応答パケットに応じてデータ回復のための前方誤り訂正パリティパケットを準備するための前方誤り訂正(FEC)モジュールを更に備える、請求項40記載のMACモジュール。
【請求項42】
前記誤り検出モジュールからの検証済みデータパケットを上位レイヤプロトコルによる処理のために送り出す出力キューを更に備える、請求項39記載のMACモジュール。
【請求項43】
前記データパケットと前記確認応答パケットとで前記物理レイヤトランスミッタを割り振るためのチャネル割当モジュールを更に備える、請求項39記載のMACモジュール。
【請求項44】
受信できなかったデータパケットの実際の個数よりも多い個数のFECパリティパケットを供給するための事前防御モジュールを更に備える、請求項41記載のMACモジュール。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公表番号】特表2007−510363(P2007−510363A)
【公表日】平成19年4月19日(2007.4.19)
【国際特許分類】
【出願番号】特願2006−538065(P2006−538065)
【出願日】平成16年10月14日(2004.10.14)
【国際出願番号】PCT/US2004/034060
【国際公開番号】WO2005/046125
【国際公開日】平成17年5月19日(2005.5.19)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
【公表日】平成19年4月19日(2007.4.19)
【国際特許分類】
【出願日】平成16年10月14日(2004.10.14)
【国際出願番号】PCT/US2004/034060
【国際公開番号】WO2005/046125
【国際公開日】平成17年5月19日(2005.5.19)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
[ Back to top ]