Method and system for adaptive forward error correction multicast over the wireless network

申请号 JP2011507381 申请日 2008-04-29 公开(公告)号 JP2011521533A 公开(公告)日 2011-07-21
申请人 トムソン ライセンシングThomson Licensing; 发明人 マートゥル サウラブ; リュウ ハン;
摘要 装置及び方法はデバイスから無線チャンネルを介してチャンネル状態フィードバックを受信し、受信したフィードバックに基づいてデバイスがサービスされ得るか否かを決定し、デバイスが損失したデータを回復するために前方誤り訂正コーディングレートが十分であるか否かを決定し、その第2の決定動作に応じて前方誤り訂正コーディングレートを調整し、ソースデータからの前方誤り訂正コーディングレートを用いて前方誤り訂正パケットを生成する。
权利要求
  • デバイスから無線チャンネルを介してチャンネル状態フィードバックを受信するステップと、
    前記受信したフィードバックに基づいて前記デバイスがサービスされ得るか否かを決定する第1の決定ステップと、
    前記デバイスが損失したデータを回復するために前方誤り訂正コーディングレートが十分であるか否かを決定する第2の決定ステップと、
    前記第2の決定ステップの決定動作に応じて前記前方誤り訂正コーディングレートを調整する第1の調整ステップと、
    前記ソースデータから前方誤り訂正コーディングレートを用いて前方誤り訂正パケットを生成するステップと を備えることを特徴とする方法。
  • 時間間隔が終了した場合に、クラスにおける複数のデバイスからフィードバックを受信することに応じて、前記前方誤り訂正コーディングレートを調整する第2の調整ステップと、
    前記クラスにおける複数のデバイスからの前記フィードバックに基づいて、動作の物理層モード及び前記ソースデータについてのパケットサイズを決定するステップと、
    前記決定したパケットサイズに応じて前記ソースデータをパケット化するステップと、
    複数のマルチキャストグループにおいて前記ソースデータ及び前記前方誤り訂正パケットを送信する送信ステップと を更に備えることを特徴とする請求項1記載の方法。
  • 前記送信ステップの送信動作は動作の前記物理層モードに応じて行われることを特徴とする請求項2記載の方法。
  • 前記第1の決定ステップの決定動作はパケット損失レートが閾値以下であるか否かを決定することを特徴とする請求項1記載の方法。
  • 前記第1の調整ステップの調整動作は、前記受信機がそのパケット損失を訂正するのに必要な前記前方誤り訂正コーディングレートに基づいて行われることを特徴とする請求項1記載の方法。
  • 前記第2の調整ステップの調整動作は、前記クラスにおける前記複数の受信機がそれらのパケット損失を訂正するのに必要な前記前方誤り訂正コーディングレートに基づいて行われることを特徴とする請求項1記載の方法。
  • 前記マルチキャストグループは異なる優先度を有することを特徴とする請求項1記載の方法。
  • 前記マルチキャストグループは利用可能なバンド幅に基づいて送信されることを特徴とする請求項1記載の方法。
  • 前記マルチキャストグループはスタガーキャストされる(staggercast)ことを特徴とする請求項1記載の方法。
  • 前記ソースデータパケット及び前記前方誤り訂正パケットはインタリービングされることを特徴とする請求項1記載の方法。
  • 前記方法はサーバにおいて行われることを特徴とする請求項1記載の方法。
  • デバイスから無線チャンネルを介してチャンネル状態フィードバックを受信する手段と、
    前記受信したフィードバックに基づいて前記デバイスがサービスされ得るか否かを決定する第1の決定手段と、
    前記デバイスが損失したデータを回復するために前方誤り訂正コーディングレートが十分であるか否かを決定する第2の決定手段と、
    前記第2の決定手段の決定動作に応じて前記前方誤り訂正コーディングレートを調整する第1の調整手段と、
    前記ソースデータから前方誤り訂正コーディングレートを用いて前方誤り訂正パケットを生成する手段と を備えることを特徴とする装置。
  • 時間間隔が終了した場合に、クラスにおける複数のデバイスからフィードバックを受信することに応じて、前記前方誤り訂正コーディングレートを調整する第2の調整手段と、
    前記クラスにおける複数のデバイスからの前記フィードバックに基づいて、動作の物理層モード及び前記ソースデータについてのパケットサイズを決定する手段と、
    前記決定したパケットサイズに応じて前記ソースデータをパケット化する手段と、
    複数のマルチキャストグループにおいて前記ソースデータ及び前記前方誤り訂正パケットを送信する送信手段と を更に備えることを特徴とする請求項12記載の装置。
  • 前記送信手段は動作の前記物理層モードに応じて行われることを特徴とする請求項13記載の装置。
  • 前記第1の決定手段はパケット損失レートが閾値以下であるか否かを決定することを特徴とする請求項12記載の装置。
  • 前記第1の調整手段は、前記受信機がそのパケット損失を訂正するのに必要な前記前方誤り訂正コーディングレートに基づいていることを特徴とする請求項12記載の装置。
  • 前記第2の調整手段は、前記クラスにおける前記複数の受信機がそれらのパケット損失を訂正するのに必要な前記前方誤り訂正コーディングレートに基づいていることを特徴とする請求項12記載の装置。
  • 前記マルチキャストグループは異なる優先度を有することを特徴とする請求項12記載の装置。
  • 前記マルチキャストグループは利用可能なバンド幅に基づいて送信されることを特徴とする請求項12記載の装置。
  • 前記マルチキャストグループはスタガーキャストされることを特徴とする請求項12記載の装置。
  • 前記ソースデータパケット及び前記前方誤り訂正パケットはインタリービングされることを特徴とする請求項12記載の装置。
  • 前記装置はサーバであることを特徴とする請求項12記載の装置。
  • 说明书全文

    本発明は無線ネットワークに関し、特に、無線ネットワークを介してマルチキャストデータを効率的に転送するための適応型前方誤り訂正(FEC)方法及びシステムに関する。

    無線ネットワークを介したマルチキャストはライブビデオ又は予め録画されたエンターテイメント番組等のデータの多くの受信機への効率的な配給を可能にする。 マルチキャストの一例はIEEE802.11無線ローカルエリアネットワーク(LAN)を介して空港等のホットスポットにおいて様々なTV番組又は地域特定ビデオ情報の再配給である。 受信機のユーザはモバイル装置でインターネットを閲覧しながらそれらのお気に入りのTV番組を見ることができる。 他のアプリケーションは無線ネットワークを介した映画のプレビュー、映画館の外の映画の予告編上映、フットボールの試合から最も重要なシーンのリプレイ等である。 本明細書での使用のように、モバイル装置はエンド装置、クライアント装置、モバイル端末、ラップトップ、デュアルモードスマートフォン、パーソナルディジタルコンピュータ等を含む。

    誤りレート(率)は無線ネットワークにおいては通常高い。 マルチキャストのために無線リンク層は一般的に、損失したパケットの再送信を行わない。 データフレームは誤りのイベントにおいて受信機で処分される。 非常に優れた受信状態なしに要求された信頼度を受信機に保証することができない。 更に、ビデオマルチキャストアプリケーションにおいて、同一のビデオ用の受信機は異なるチャンネル状態を経験する可能性があり、受信機についてのチャンネル状態はマルチパスフェーディング、シャドーイング、干渉、及び移動性のために異なる時間で変化する可能性もある。 新しい受信機はセッションの間に加わる可能性があり、又はいくつかの受信機は去る可能性があり、それにより、受信機のネットワークトポロジが変化するようになる。 よって、追加の誤り保護機構は受け持ちエリア内の受信機に対して満足及びサービスの信頼性ある品質を提供することを要求される一方、利用可能な無線バンド幅を効率的に利用する。 信頼性ある無線マルチキャスト動作を達成するために、効率的なアプローチの1つは、アプリケーション層で前方誤り訂正(FEC:forward error correction)コードを用いることである。

    いくつかの報告されたシステムにおいては、固定FECコードは、受け持ちエリア内において最悪のチャンネル状態(すなわち、最も高い損失率)で受信機に対する目標の質を満足するように選択される。 このアプローチでは、固定FECコード(例えば、固定リードソロモン(RS)コード)はパリティ(parity)パケットを生成するためにアプリケーション層で情報ソースパケットに亘って適用される。 パリティパケットは情報ソースパケットと共に送信され、失われた情報ソースパケットを回復するために用いられる。 上記のアプローチでは、FECコードは固定され、たとえ全ての受信機が良好なチャンネル状態を有していても適用される。 不必要なFECパリティパケットは、高いオーバヘッドを招き、よれにより、バンド幅効率が減少されるようになる。 適応型FECがユニキャストシステムにおいて用いられている。 FECコードレートは単一の受信機のチャンネル状態に応じて適応される。 本発明においては、マルチキャストアプリケーションが考慮される。 同一のソースの複数のマルチプル受信機が同じ時間に異なるパケット損失率を経験する可能性があり、また、同じ受信機が異なる時間に異なるパケット損失率を経験する可能性もある。 異なる受信機又は同一の受信機での異なる時間での受信品質は異なる。 更に、受信機はマルチキャストグループに加わったり、去ったりする可能性がある。

    本発明において解決されるべき課題はFECコードパラメータを選択し適応することである。 効率的な適応型FEC方法を設計することが有益である。 効率的な適応型FEC方法を設計するためには、3つの課題、(1)マルチキャストにおいて多数の受信機のチャンネル状態を推定する方法、(2)チャンネル状態フィードバックを提供する方法、(3)多数の受信機のチャンネル状態に基づいてFECレートを適応する方法、に取り組むことが必要である。

    本明細書で用いられるマルチキャストは、オーディオデータ及びビデオデータを含むデータの送信であるが、それに限定されない。 すなわち、データはどんな形式のデータであっても良い。 簡単な例としては、本明細書ではビデオデータが用いられる。 また、本明細書で用いられるユニキャストはデータの1対1の送信である。 すなわち、データは単一のソースから単一の受信機に送信される。 放送はデータの1対全部の送信である。 すなわち、データはデータ送信を受信することができる全ての受信機に送信される。 マルチキャストは1対多数のデータ送信である。 マルチキャストデータ送信はその送信を受信することができる全ての受信機の一部に対してであり、ここで一部はデータ送信を受信することができる受信機の全てでも良い。 すなわち、本明細書で用いられるマルチキャストは最も一般的に放送を含む。

    本発明は無線ネットワークを介してマルチキャストデータを効率的かつ確実に転送する適応型前方誤り訂正(FEC)方法及びシステムを示している。 無線マルチキャストアプリケーションにおいて、データはアクセスポイント/基地局から無線チャンネルを介して多数の受信機に送信される。 本明細書で用いられる「/」は同一又は同様のコンポーネント又は構成に対する代替名称ということを示している。 すなわち、「/」は本明細書で用いられる「又は」を意味するとして良い。 受信機トポロジ変化を考慮に入れることによりシステム性能最適化のためのFECコードの能及びオーバヘッドを適応的に変化させ、多数の受信機のチャンネル状態及びアプリケーション要求を変える。 受信機は異なるクラスに分類される。 クオリティ・オブ・サービス(QoS)の異なるレベルはFEC適応スキームの慎重な設計によって受信機の異なるクラスに与えられる。 ある目標の受信機に対する信頼度要求を保証する一方、システム全体の処理能力を最大化するために、物理層動作モード、パケットサイズ、及びアプリケーション層FECを選択する最適なクラス層設計戦略が示される。 更に、追加のFECオーバヘッドは異なる優先度で異なるマルチキャストグループにおいて動的に送信され、サービスエリアにおける劣化チャンネル状態を有する受信機のマルチキャストロバスト性を向上させる。 追加のFECオーバヘッドは多数の受信機のフィードバックに基づいて変化する受信機トポロジ及び無線ネットワーク状態に適応することができる。 適応型FECシステムは(1)各受信機で動作する、受信チャンネル状態を推定するチャンネル推定方法、(2)多数の受信機からデータ/メディア/マルチキャストサーバにチャンネル状態フィードバックを送るプロトコル、(3)マルチキャストサーバで動作する、多数の受信機のチャンネル状態に基づいてFECコードレート及び送信優先度を動的に変化させるFEC適応方法からなる。

    本発明において解決されるべき課題は、FECコードパラメータを選択し適用することである。 効率的な適応型FEC方法を設計することは有益である。 効率的な適応型FEC方法を設計するために、3つの課題、(1)マルチキャストにおいて多数の受信機のチャンネル状態を推定する方法、(2)チャンネル状態フィードバックを提供する方法、(3)多数の受信機のチャンネル状態に基づいてFECレートを適応する方法、に取り組むことが必要である。 よって、本発明はFECコードレートを適応し、システム性能の最適化のために異なるマルチキャストグループにおいて異なる優先度で情報ソース及びパリティパケットを送信するための方法及びシステムを示している。

    方法及び装置は、デバイスから無線チャンネルを介してチャンネル情報フィードバックを受信し、受信したフィードバックに基づいてデバイスがサービスされ得るか否かを決定し、デバイスが損失したデータを回復するために前方誤り訂正コーディングレートが十分であるか否かを決定し、その2番目の決定動作に応じて前方誤り訂正コーディングレートを調整し、前記ソースデータから前方誤り訂正コーディングレートを用いて前方誤り訂正パケットを生成することを含んで説明される。

    本発明は添付図面と共に次の詳細な説明を読むことによりよく理解される。 図面は以下に簡単に説明された複数の図を含んでおり、図上の同一符号は同様のエレメントを表している。

    本発明が用いられている種類のネットワークの回路図である。

    本発明の適応型前方誤り訂正方法のブロック図である。

    受信機の異なるクラスを示す図である。

    本発明の適応型前方誤り訂正コーディング方法を用いるマルチキャストサーバのプロトコル構成の図である。

    本発明の適応型前方誤り訂正コーディング方法を用いる受信機のプロトコル構成の図である。

    本発明の適応型前方誤り訂正コーディングの図である。

    マルチキャストサーバで実施される本発明の方法の実施形態例のフローチャートである。

    アクセスポイント/ステーションで実施される本発明の方法の実施形態例のフローチャートである。

    受信機で実施される本発明の方法の実施形態例のフローチャートである。

    インタリービングが用いられる本発明の適応型前方誤り訂正方法の代替実施形態を示すブロック図である。

    図1を参照すると、本発明において考慮される一般的なネットワークシステムが示されている。 モバイル装置(デバイス)105はマルチキャストサーバ120(例えば、ビデオマルチキャストサーバ又はメディアサーバ)及びインターネット125に無線アクセスポイント/基地局110及び高速有線アクセスネットワーク115(例えば、イーサネット(登録商標))を介して接続されている。 ビデオサーバ120は1以上のビデオプログラムを高速有線アクセスネットワーク115を介して無線アクセスポイント/基地局にマルチキャストする。 アクセスポイント/基地局110はそのビデオを無線リンクを介してマルチキャストのモバイル装置105に配給する。 モバイル装置のユーザは1以上のビデオプログラムを見ることができ、同時にインターネットにアクセスすることができる。 本明細書で説明される適応型前方誤り訂正(FEC)方法及びシステムについては無線ローカルエリアネットワーク(WLAN)、3Gネットワーク、又は他の無線ネットワークを介してビデオマルチキャストアプリケーションにおいて用いることができる。 IEEE 802.11 WLANネットワークは本発明の適応型FEC方法及びシステムを説明するための一例として用いられる。 更に、本発明の適応型FEC方法及びシステムを説明するために一例としてビデオマルチキャストが用いられているが、本発明は送信されているデータの種類と無関係であり、データのいずれの種類の送信に対して本発明を用いることができ、オーディオ/ビデオプログラムに限定されることはない。

    マルチキャストサーバは特に、データパケット(例えば、ビデオパケット)のストリームを生成するソースデータ(例えば、ビデオ)エンコーダ/パケッタイザ(packetizer)と、ビデオパケットにクロスパケットFECコーディングを適用するFECエンコーダとからなる。 FECはいずれかの系統的前方誤り訂正コード、例えば、リードソロモン(RS)コードとすることができる。 FECコードは全パケットの損失(消去)に対する保護のためにパケットに亘って用いられる。 なぜならば、誤りパケットはより低い層によって度々処分されるからである。 FECコーディングはアプリケーション層で単一のパケット内で適用されるならば、アプリケーション層で誤りパケットを訂正するためには利用できない。 例えば、(N,K)RSコードはKソースパケットに適用され、H=(N−K)パリティパケットを形成する。 FECコードレートはR=K/Nと定義される。

    マルチキャスト/ブロードキャスト(放送)において、同一のビデオストリームの多数の受信機は同一時間に異なるチャンネル状態のために異なるパケット損失レートとなる可能性があり、また、同一の受信機は異なる時間に異なるパケット損失レートとなる可能性もある。 新規の受信機はマルチキャストセッションの間に加わったり、又はいくつかの受信機はマルチキャストセッションの間に去ったりする可能性があり、それにより、受信機のトポロジが変化するようになる。 本発明は、無線ネットワークを介した効率がよくてロバストなビデオマルチキャストのためにネットワークトポロジ及び多数の受信機の変化するチャンネル状態に応じてFECコードの能力及びオーバヘッドを適応的に変化させる方法及びシステムを説明する。

    図2は本発明の適応型前方誤り訂正方法のブロック図である。 ビデオストリーム内のKビデオソースパケットのブロック(Kは所望の遅延時間及びコーディングの複雑度に応じて決定されることができる)と仮定されると、生成されて無線ネットワークを介して送信されるFECパリティパケットの数H=(N−K)はH minとH maxとの間で適応され、ここで、Nはこのコーディングブロックについての総パケット数である。 すなわち、FECコードレートR=K/N=K/(K+H)はR max =K/(K+H min )とR min =K/(K+H max )との間で適応される。 更に、ビデオソースパケットは最高の優先度でマルチキャストグループG0において送信される。 パリティパケットは異なる優先度で多数のマルチキャストグループ(異なるIPアドレス及び/又はUDPポート)において送信される。 Hパリティパケットのうちの、H 1パリティパケットは常に最高の優先度(ビデオソースパケットと同一の優先度)でマルチキャストグループG1において送信される。 H 2パリティパケットは、いくつかの受信機が追加のFEC(適応型FECコード)を必要とするときだけ高優先度又は中優先度(ビデオソースパケットより低く、ベスト・エフォート型のデータトラフィックより高い優先度)で異なるマルチキャストグループG2において生成され送信される。 残りのH 3パリティパケットは、いくつかの受信機が更に追加のFECを必要としているときだけ低優先度(ベスト・エフォート型のデータトラフィックと同一の優先度又はベスト・エフォート型のデータトラフィックより低い優先度)でマルチキャストグループG3において生成されて送信される。 パリティパケットHの総数はH min ≦H=H 1 +H 2 +H 3 ≦H max ,(N=K+H 1 +H 2 +H 3 )に等しい。

    1つの代替は固定されたエンコーディングブロック長Nを維持するが、K,H 1 ,H 2 ,H 3を変えることである。 本発明は更に以下に詳細に説明されるようにパラメータH min ,H 1 ,H 2 ,H 3 ,及びH maxを決定する方法を示している。

    後方互換性に対して、FEC不対応の受信機はFECパリティパケットについてマルチキャストグループからのデータを全く受け付けない。 それで適応型FECマルチキャストシステムでは混合したFEC対応及びFEC不対応の受信機を用いることができる。

    図3は受信機の異なるクラスを示す図である。 無線アクセスポイント/基地局の受信可能エリアは、生(raw)のパケット損失レートに関してチャンネル状態に基づいて4つの領域に分けられる。 最内周の円によって囲まれたエリア内の受信機は品質保証型サービスを有する。 次の円内の受信機は擬似的品質保証型サービスを有する。 次の円内の受信機はベスト・エフォート型のサービスを有し、それらの円の外側の受信機には何らサービスが提供されない(それらはサービスエリア外である)。 生のパケット損失レートはFECデコーディング(復号化)前のパケット損失レートとして定義される。 それに対応して、受信機はそれらの受信しているチャンネル状態に基づいて異なるクラスに分類される。 FECパラメータH min ,H 1 ,H 2 ,H 3 ,及びH maxは、残留のパケット損失レートに関して測定された送信信頼度の異なるレベルで受信機の異なるクラスを提供するように決定され適応される。 残留のパケット損失レートはFECデコーディング後のパケット損失レートとして定義される。

    品質保証型サービスの受信機については、アクセスポイント/基地局の物理層モード、パケットサイズ、及びアプリケーション層FECコードレートが共に選択され、スループットを最高にする一方、それらの送信信頼度を保証する。 これはネットワーク/システム管理者によって行うことができる。 擬似的品質保証型サービスの受信機については、本発明の適応型FEC方法は、異なる受信機により変化するネットワークトポロジ及びチャンネル状態に基づいてFECオーバヘッドを動的に調整してそれらの送信信頼度を保証する。 ベスト・エフォート型のサービスの受信機については、本発明の適応型FEC方法は、ベスト・エフォート型様式において、すなわち、FECオーバヘッドのための追加のバンド幅が利用可能であるときに、それらの送信信頼度要求を満足するように試みる。 ベスト・エフォート型のサービスの受信機のために加えられた追加のFECオーバヘッドは無線ネットワークを介して低優先度で送信される。 十分のバンド幅が無線ネットワークにおいて利用可能でないならば、追加のFECオーバヘッドはアクセスポイント/基地局によって処分される。 非常に悪いチャンネル状態の受信機に対する所定のサービス品質を保証することはシステムリソースとしてとても多くを消費することになる。 代わりに、最も乏しい/悪いチャンネル状態の受信機はサービスされない。 すなわち、FECコードレートはそれらの受信機に基づいて適応されない。

    ネットワーク/システム管理者は先ず、無線アクセスポイント/基地局の所望の受信領域を決定する。 例えば、それが建物であるとする。 そこにおいて受信機は、閾値P t以下の平均の残留パケット損失レートを有することを保証される。 閾値P tはアプリケーションの要求によって決定される。 すなわち、10 -5は優れたビデオ品質に対して妥当である。 この領域の受信機は品質保証型サービス(GS)受信機と称される。 アクセスポイント/基地局の固定の送信パワーS=S 0と仮定すると、その領域内の最悪の平均チャンネルSNR γ1を実験的な測定又は分析を通して得ることができる。 なお、チャンネルSNRはフェーディングのため時間変化する。 経時的な平均チャンネルSNRは受信機のチャンネル状態を測定するために用いられる。 受信機のチャンネル状態はアクセスポイント/基地局からの距離、地理的環境等に依存している。 アクセスポイント/基地局の物理層動作モードM、パケットサイズL、及びアプリケーション層FECコードパラメータH minは、GS受信機(すなわち、それらの受信機の残留のパケット損失レートP rは閾値P t以下である)の送信信頼度を保証し、アプリケーション層グッドプットGを最大化するために共に選択される。 なお、パケットサイズはネットワークで許可された最大伝送単位(MTU)より大であるべきでない。 上記のことは条件付き最適化問題であり、次式のように表すことができる。

    いくつかの場合では、パケットサイズ及び物理層モードが、例えば、MTU及びアクセスポイント/基地局能力に基づいて事前に決定されることが可能である。 もし、そうならばH minは、残留のパケット損失レートがP tより大きくないことを保証するために選択される。 (N,K)RSコードが用いられるならば、送信されたH=N−KパリティパケットはNパケットのうちH損失パケットに対して消去回復力を与える。 FECデコーディング前の生のパケット損失レートがP eならば、H minは、次式を満足する。

    Kソースパケットのブロックと仮定されると、式(1)によって決定されたアクセスポイント/基地局の物理層モードM及びパケットサイズLでH minパリティパケットが送信されるならば、FECデコーディング後の残留のパケット損失レートは、チャンネルSNRがγ≧γ 1となるGS受信機についてはP t以下となる。 対応するFECコードレートは次式で表される。

    上記のように決定されたFECコードレートはマルチキャストシステムによって用いられる最小のストレングス/オーバヘッドFECコードである。 それは、チャンネルSNRがγ 1より大きい又はFECデコーディング前の生のパケット損失レートがP e1 )より小さい保証した受信機についての送信信頼度要求を満足する。 しかしながら、より乏しい/低下したチャンネル状態の受信機では要求した信頼度を満足することができない。 本発明においては、受け持ちエリアにおいて所望のチャンネルSNRより小、すなわち、γ 1より小のチャンネルSNRの受信機があるとき、目標値P tより小の受信機の残留のパケット損失レートを維持するために、FECコードレートR(すなわち、誤り訂正能力/オーバヘッドH,R=K/(K+H))はそれらのチャンネル状態に基づいて動的に調整される。 P tはFECデコーディング後の平均残留パケット損失レートの閾値である。 サービスエリア内のビデオストリームの全ての受信機がγ 1以上のチャンネルSNRを有するとき、このビデオストリームについてのFECオーバヘッドは最小で維持され、すなわち、FECコードレートはR maxに等しく、保存のバンド幅を他のビデオストリーム又はベスト・エフォート型のデータトラフィックのために用いることができる。

    Jビデオストリームが無線チャンネルを介してマルチキャストにおいて送信されていることを考慮し、仮にアプリケーション層で無線チャンネルの全バンド幅がB tであるとする。 ストリームjについてのソースレートはS jであり、FECコードレートはストリーム毎にR maxであると仮定する(すなわち、保証の受信機の信頼度要求を満足するためにFECコードのオーバヘッドは最小値に等しい)。 残りのバンド幅は次式で表される。

    全ての残りのバンド幅がストリームjに追加のFEC保護を与えるように用いられるならば、ストリームjについてのFECコードレートは次式の如くなる。

    それは、チャンネルバンド幅制限下でストリームjのために適用され得る最小FECコードレートである。 対応する最大FECオーバヘッドは次式で表される。

    このFECでは、目標値P tに等しい残留パケット損失レートを達成するために、FECデコーディング前のストリームjの生のパケット損失レートは値P maxより小であるべきである。 RS(N,K)コードが用いられるならば、P maxは次式を満足する。

    全てのJストリームが利用可能な全バンド幅で等しく保護されるべきならば、すなわち、同一のFECコードレートが全てのストリームに適用されるならば、FECコードレートは次式で表される。

    対応するFECオーバヘッドは次式で表される。

    このFECオーバヘッドでは、目標値P tに等しい残留パケット損失レートを達成するために、FECデコーディング前のストリームjの生のパケット損失レートは値P aveより小であるべきである。 RS(N,K)コードが用いられるならば、P aveは次式を満足する。

    本発明においては、FECコードレートは、バンド幅を効率的に利用し、多数のビデオストリームの統計的な多重化ゲインを達成するために、多数の受信機のネットワークトポロジ及びチャンネル状態に基づいてR maxとR minとの間で動的に変化される。 R max及びR minは各々式(3)及び式(5)によって決定される。 Kソースパケットのブロックと仮定すると、送信されるパリティパケットの数HはH minとH maxとの間で変化する。 H maxは式(6)によって決定され、H minは式(2)を満足する。

    送信信頼度を保証するためにネットワーク/システム管理者によって決定された受信機iについての生のパケット損失レートが閾値P e1 )以下、すなわち、P i ≦P e1 )であるならば、その受信機は品質保証型サービス受信機である。 本適応型FEC方法は、FECデコーディング後のその残留パケット損失レートを目標値P t以下となるように保証する。 これは、最大FECコードレートR maxを設定し、高優先度で少なくともH minパリティパケットを送信することにより達成される。

    ビデオストリームjの受信機iについての生パケット損失レートがP e1 )とP aveとの間、すなわち、P e1 )<P i j <P aveであるならば、その受信機は擬似的品質保証型サービス受信機として分類される。 P aveは生パケット損失レートであり、それにより、全てのJストリームが利用可能な全バンド幅で等しく保護されるならば、すなわち、同一のFECコードレートがストリームの全てに適用されるならば、残留パケット損失レートが目標値P tに等しい。 本方法は、ストリームjの全ての現在の擬似的品質保証型サービス受信機の中の最悪の状況の受信機に基づいてストリームjのFECコードレートを適応し、高優先度又は中優先度でそれらの受信機によって要求されたFECオーバヘッドを送信する。 これは、受け持ちエリア内の現在の全ての擬似的品質保証型サービス受信機の残留パケット損失レートが目標値P t以下であることを確実にする。 受信機の生のパケット損失レートが推定され、メディアサーバがFECコードレートを決定することができるようにその受信機からメディアサーバに周期的に送信される。 パケット損失レートは、FEC適応の間のインターバル期間に目標値P tを越えるバーストを有しても良い。 よって、それらの受信機についての送信信頼度は擬似的に保証される。

    ストリームjの受信機iについての生のパケット損失レートがP ave <P i j <P max jの範囲にあるならば、受信機はベスト・エフォート型のサービスユーザとして分類される。 P max jは生パケット損失レートであり、それにより、残りのバンド幅の全てがストリームjを保護するために用いられるならばFECデコーディング後の残留パケット損失レートが目標値P t以下である。 当該方法は全てのベスト・エフォート型のサービス受信機のうちの最悪の状況の受信機に基づいてFECコードレートを適応する。 しかしながら、それらのベスト・エフォート型のサービス受信機について要求される追加のFECオーバヘッドは低優先度で送信される。 無線ネットワークに十分のリソースがあるならば、追加のFECオーバヘッドはアクセスポイント/基地局によって送信される。 それらのベスト・エフォート型のサービス受信機の送信信頼度が満たされる。 すなわち、FECデコーディング後の残留パケット損失レートが目標値P t以下である。 一方、それらのベスト・エフォート型のサービス受信機の送信信頼度を満たすことができない場合には、追加のパリティパケットはアクセスポイント/基地局によって処分される。 この点ではそれらの受信機はベスト・エフォート型様式でサービスされる。

    本発明の方法は最も効率的なネットワークリソース利用となり、保証された受信機及び擬似的保証された受信機の信頼度を妥協することなく統計的な多重化ゲインを達成する。 例えば、マルチキャストストリーム1,2,. . ,j−1の受信機は全て非常に良いチャンネル状態を有する。 マルチキャストストリーム1,2,. . ,j−1(情報及びFECオーバヘッド)のために使用される全バンド幅が無線チャンネルの全バンド幅より小である。 ストリームjについてのいくつかの受信機は悪いチャンネル状態を受ける。 それらのストリームj受信機の要求を満足させるように残りの利用可能なバンド幅を追加のFECオーバヘッド(パリティパケット)のために用いることができる。

    ストリームjの受信機iについての生のパケット損失レートがP max jより大であるならば、すなわち、P i j >P max jであるならば、その受信機はサービスなしの受信機として分類される。 この受信機のクラスは非常に悪いチャンネル状態となる。 このクラスに対する所定のパケット損失レートを保証することはシステムリソースとしてとても多くを消費することになる。 代わりに、メディアサーバはそれらを無視する。 すなわち、FECコードレートはそれらの受信機に基づいて適応されない。

    FECコードレート又はFECオーバヘッドの量を適応する方法は、(1)各受信機で動作するチャンネル推定方法、(2)チャンネル状態フィードバックを多数の受信機からメディアサーバへ送るプロトコル、(3)ビデオマルチキャストサーバで動作し多数の受信機のチャンネル状態に基づいてFECコードレート及び優先度を動的に調整するFEC適応方法からなる。

    各受信機はFECデコーディング前にその生のパケット損失レートを推定し、このフィードバックをメディアサーバに送信する。 FECデコーディング前の生のパレット損失レートはチャンネル状態を示している。 RTCP(Real−Time Transport Control Protocol)又は他の同等の手段を用いてフィードバックを送信することができる。 本発明においては、生のパケット損失レートは、最近の測定に亘る重み付け移動平均を介して推定される。 受信機iがマルチキャストビデオストリームjを受信し、T時間間隔(Tは設定パラメータ)で生のパケット損失レートを推定して報告すると仮定する。 時間tで、報告された、ストリームjを受信する受信機iでの生パケット損失レートはP i jであり、ストリームjを受信する受信機iでの平均生パケット損失レートは次式に表される。

    ここで、β≦1は設計パラメータである。 この報告はメディアサーバに送信される。

    各時間間隔Tの間に、メディアサーバは、ビデオストリームjの1以上受信機からのチャンネルフィードバックを受信することができる。 受信機iから時間tにストリームjの生パケット損失レートP i j (t)の報告を受信した後、メディアサーバは目標値P t以下の残留パケット損失レートを保証するためにストリームjについて要求FECレートR i j (t)を決定する。 要求FECレートと生パケット損失レートとの間の関係はFECコードに依存する。 (N,K)RSコードではそのコードレートR i j =K/Nが次式によって決定される。

    ここで、K又はNが知られている。

    適応アルゴリズムは次のように動作する。
    1. R i j (t)<R min j (すなわち、P i j (t)>P min j )ならば、受信機iは無視される。 すなわち、受信機iはサービスエリア外であり、「サービスなし」受信機である。 メディア/マルチキャストサーバはこの受信機にサービスすることを試みず、FECコードレートはそのチャンネル状態に基づいて適応されない。
    2. R 0 j >R i j (t)≧R min j (すなわち、P 0 j <P i j (t)≦P min j )ならば、R 0 j =R i j (t)と設定される。 ここで、R 0 jはストリームjのために用いられる現在のFECコードレートである。 ストリームjのために用いられるFECコードレートをR 0 jに変える。 この場合には、受信機iはサービスされるべき受信機である。 それは「品質保証型サービス」又は「擬似的品質保証型サービス」又は「ベスト・エフォート型のサービス」の受信機である。 FECデコーディング後のこの受信機の残留のパケット損失レートが閾値P t以下になるようにこの受信機にサービスするために(すなわち、十分のFECを加えることを試みるために)、メディア/マルチキャストサーバは現在のFECコードが十分に強力であること、すなわちコードレートがR i j (t)以下であることを確かにする必要がある。 そうでなければ、FECデコーディング後のこの受信機の残留パケット損失レートは閾値P tより大となる。 R 0 j >R i j (t)≧R min jであれば、現在のFECコードレートは次のように変化される。

    3. R i j (t)≧R 0 j (すなわち、P i j (t)≦P 0 j )ならば、期間tの終了を待つ。 この場合には、現在使用のFECコードは、FECデコーディング後のこの受信機の残留パケット損失レートが閾値P t以下であることを確かにするために十分に強力である。 FECコードレートを直ちに変化させる必要がない。 他の受信機からのチャンネル報告を待つことができる。 時間間隔Tの終了でストリームjのためのI報告は期間Tの間に受信されたとする。 それらの報告の生のパケット損失レートの最大値を次のように得る。

    次に、生パケット損失レートP 0 jのユーザに対して目標値P tに等しい残留パケット損失レートを保証するためにFECコードレートR 0 jを得る。 (N,K)RSコードが用いられるならば、R 0 j =K/Nを次式によって得ることができる。

    ここで、K又はNは知られている。

    を設定し、ストリームjのために使用されたFECコードレートをR 0 jに変化させる。

    いくつかのFECコードについては、利用可能なコードレートは離散し、すなわち全てのコードレートは利用可能とは限らない。 上記したことによって決定されたFECコードレートは利用可能でないならば、R 0 jの現在値より小の次に利用可能なコードレートにR 0 jを設定する。 例えば、上記したことによって決定されたコードレートは9/12であり、その次の利用可能なコードレート(9/12より小)はK/N=4/6<9/12である。 R 0 j =4/6を設定し、ストリームjのために使用されたコードレートを4/6に変化させる。

    コードレートR 0 jが上記したように決定又は調整されると、コードレートR 0 jはマルチキャストサーバでFEC生成のために使用される。 Kソースパケットのブロックと仮定すると、要求されたFECオーバヘッドをH=(K/R 0 j )−Kによって得ることができる。 そのソースパケット及びFECパリティパケットは異なる優先度の4つのマルチキャストグループG0,G1,G2,G3において送信される。
    ・Kソースパケットは高優先度でマルチキャストグループG0において送信される。
    ・H min ≦H≦H aveならば、第1のH 1 =H minパリティパケットは最高優先度(ソースパケットと同一の優先度)でマルチキャストグループG1において送信される。 残りのH 2 =H−H minパリティパケットは高優先度又は中優先度でマルチキャストグループG2において送信される。
    ・H≧H aveならば、第1のH 1 =H minパリティパケットは最高優先度でマルチキャストグループG1において送信される。 次のH 2 =H ave −H minパリティパケットは高優先度又は中優先度でマルチキャストグループG2において送信される。 残りのH 3 =H 0 −H aveパリティパケットは低優先度でマルチキャストグループG3において送信される。

    図4Aは本発明の適応型前方誤り訂正コーディング方法を用いるマルチキャストサーバのプロトコル構成例の図である。 メディアサーバはソース(例えば、ビデオ)エンコーダ405、パケット化モジュール410、FEC処理/エンコーディングユニット415、適応型FEC制御ユニット420、UDP/IP通信ユニット425、及びインターフェース430を含む。 適応型FEC制御ユニット420は多数の受信機からのフィードバックを受信する。 それは上記した方法を用いてソース(例えば、ビデオ)のFECコードレート及び送信優先度と、パリティパケットとを決定する。 適応型FEC制御ユニットはFEC処理/エンコーディングユニット415に指令してFECエンコーディング(符号化)を行い、UDP/IP通信ユニット425に指令して所望の優先度においてソースパケット及びパリティパケットを送信する。

    図4Bは本発明の適応型前方誤り訂正コーディング方法を用いる受信機のプロトコル構成例の図である。 その受信機はソース(例えば、ビデオ)デコーダ435、デパケット化モジュール440、FEC処理/エンコーディングユニット445、チャンネル推定及びフィードバックモジュール450、UDP/IP通信ユニット455、及びインターフェース460を含む。 チャンネル推定及びフィードバックモジュール450は上記した方法を用いて(チャンネル状態を示す)生パケット損失レートを推定し、それをUDP/IP通信ユニット455及びインターフェース460を介してメディアサーバに周期的に送信する。

    図5は本発明の適応型前方誤り訂正コーディングの図である。 複数のソースパケットはK行及びL列で配置されている。 前方誤り訂正パケットを含むパケットの全部はN行及びL列で配置されている。 FECパケットはFECコーディングレートを用いて生成され、いくつかのマルチキャストグループに分けられ、例えば、合計HマルチキャストグループについてのマルチキャストグループH1,H2,H3に分けられる。 マルチキャストグループH1のパケットは常に送信され、高優先度で送信される。 他のマルチキャストグループ内のFECパケットは、ソースパケットを回復することが必要な場合に限り送信される。

    図6はマルチキャストサーバで実施される本発明の方法の実施形態例のフローチャートである。 本明細書で用いられるように、受信機は例えば、トランシーバ、コンピュータ、ラップトップ、PDA、デュアルモードスマートフォン等を含む、情報/データ/コンテンツを受信することができるデバイスである。 ステップ605では、マルチキャスト/データ/メディアサーバが受信機からフィードバックを受信したか否か決定するためのテストが行われる。 マルチキャストサーバが受信機からフィードバックを受信したならば、ステップ610で受信フィードバックの当該受信機にサービスするか否かを決定するためのテストが行われる。 すなわち、そのテストはその受信機のパケット損失レートがP max以下であるか否かであり、ここでP maxは式(7)を満たし、それは式(4)〜式(6)を用いて決定される。 ステップ615ではFECパリティコーディング(FECコーディングレート)がチャンネル状態のフィードバックを与えたこの受信機についてパケット損失から回復するために十分に強力であるか否かを決定するためのテストが行われる。 FECコーディングレートが十分に強力でないならば、そのFECコーディングレートは式(12a)を用いてステップ620で調整される。 FECコーディングレートが十分に強力であるならば、ステップ620はとばされ、そのFECコーディングレートは調整されない。 ステップ625ではタイムアウトとなったか否か(時間間隔が終了したか否か)を決定するためのテストが行われる。 タイムアウトとなったならば、ステップ630でFECコーディングレートは多数の受信機から受信されたフィードバックに基づいて調整され、FEC調整タイマはリセットされる。 FECコーディングレートは式(13)、式(14)、式(14a)に基づいて調整される。 すなわち、FECコーディングレートはステップ620又は630、又はその両ステップで調整されても良い。 タイムアウトとなっていないならば、ステップ630はとばされ、この時点でのFECコーディングレートは調整されない。 ステップ635では、HのFECパケットが調整されたものを含むFECコーディングレートを用いてソースパケットから生成される。 ソースパケット及びFECパリティパケットは異なる優先度を有する異なるマルチキャストグループに置かれ、それに応じて送信される。 送信はスタガーキャスティング(staggercasting)を代わりに含んでも良く、また、インタリービングを含んでも良い。 ソースパケットはマルチキャストグループG0にあり、ステップ640で最高優先度で送信される。 H minのFECパケットはマルチキャストグループG1にあり、ステップ645では高優先度で送信される。 H minは式(1)、式(2)を用いて決定される。 ステップ650ではHがH ave以下であるか否かを決定するためのテストが行われ、ここでH aveは式(8),式(9)を用いて決定される。 HがH aveより小であるならば、ステップ655でH−H minのFECパケットが高優先度又は中優先度でマルチキャストグループG2において送信される。 HがH aveより小でないならば、ステップ655はスキップされ、マルチキャストグループG2内のH ave −H minのFECパケットが高優先度又は中優先度で送信され、マルチキャストグループG3内のH−H aveのFECパケットが低優先度で送信される。 処理はステップ605に続く。 ステップ610でこの受信機にサービスしないという決定がされたならば、処理はステップ625に続く。 ステップ605でフィードバックが特定の受信機から受信されなかったという決定がされたならば、処理はステップ625に続く。

    図7はアクセスポイント/ステーションで実施される本発明の方法の実施形態例のフローチャートである。 ステップ705では、パケット(ソース又はFEC)がアクセスポイントで受信されたか否かが決定される。 パケットが受信されたならば、ステップ710でそのパケットがその優先度に基づいて行先マルチキャストグループに供給される。 パケットが受信されなかったならば、処理はステップ705で新しいパケットが到着したか否かのテストを続けて着実に繰り返す。

    図8は受信機で実施される本発明の方法の実施形態例のフローチャートである。 ステップ805では、パケット(ソース又はFEC)がアクセスポイントで受信されたか否かが決定される。 パケットが受信されたならば、ステップ810でパケットが処理される。 ステップ815では受信機は式(11)を用いてパケット損失レート及びチャンネル状態を推定する。 そして、受信機はステップ820で受信したFECパリティパケットを用いて損失ソースパケットを回復する。 ステップ825ではタイムアウトとなったか否かを決定するためのテストが行われる。 タイムアウトとなったならば、ステップ830でパケット損失レート及びチャンネル状態についてのフィードバックがアクセスポイントを経由してマルチキャストサーバに送信される。 タイムアウトとなっていないならば、処理はステップ805に続く。 ステップ805でパケットが受信されなかったならば、処理はステップ825に続く。

    無線リンクは時間変化のマルチパスフェーディング、干渉、シャドーイング及びモビリティのためにバーストパケット損失特性を示している。 バーストエラーチャンネルを処理するための効率的方法は、バーストチャンネルが単独の誤りを有するチャンネルに変化されるように符号化データパケットをインターリープすることである。 よって、その誤りのあるパケットを訂正するために単独の誤り(短いバースト)に対して設計されたFECコードを用いることができる。 図9はインタリービングが用いられる本発明の適応型前方誤り訂正方法の代替実施形態を示すブロック図である。 FECコードを有するパケットインタリービング機構が示されている。 ソースパケットはクロスパケットFECコードが用いられる前にインタリーバによって再発注される。 受信機では、デインタリーバが同一の方形のアレイ形式でデータパケットを保存し、FECデコーディングが行われる。 このセッティングにおいて同様にソースパケット及びパリティパケットのFECコードレート及び優先度を決定するために本発明を用いることができる。

    他の実施形態は、マルチキャストサーバが時間的推移と共に元の情報パケットストリーム及び追加のパリティパケットストリームを送信する、例えば、時間的ダイバーシティ(diversity)のために情報ストリーム及びパリティストリームをスタガーキャスティングする形態である。 パリティパケットは、そのパケットが上記のように決定されたそれらのマルチキャストグループにおいて送出される前の時間間隔Tの間、マルチキャストサーバのバッファにおいて遅延される。 情報パケットがシャドーイング又はハンドオーバのためにバーストにおいて損失されるならば、対応するパリティパケットが損失されない可能性があり、損失した情報パケットを回復するためにその対応するパリティパケットを用いることができる。

    更に、他の代替実施形態は、マルチキャストサーバがパリティパケットを生成して送信することを遅延する形態である。 時間間隔Tの間にソース情報パケットを送信した後、マルチキャストサーバはそれらの情報パケットを時間tに亘ってバッファリングし、受信機からのそれら情報パケットのチャンネル状態及びパケット損失レートのフィードバックを待つ。 それら情報パケットのパケット損失レートに基づいてマルチキャストサーバは本発明の方法に応じてパリティパケットのFECコードレート及び優先度を決定し、異なるマルチキャストグループにおいてそのパリティパケットを送信する。 パリティパケットの生成を遅延し、情報パケットについてのパケット損失レートのフィードバックを用いてソースパケットを保護するパリティパケットを生成することにより、サーバは要求されたFECコードレートを正確に推定することができる。

    なお、本発明は、例えば、サーバ、中間デバイス(無線アクセスポイント又は無線ルータ等)又はモバイル装置内のハードウエア(例えば、ASICチップ)、ソフトウエア、ファームウエア、特定目的のプロセッサ、又はそれらの組み合わせの様々な形態で実施することができる。 好ましくは、本発明はハードウエアとソフトウエアとの組み合わせとして実施される。 更に、ソフトウエアは好ましくはプログラム記憶装置に明白に具現化されたアプリケーションプログラムとして実施される。 適切なアーキテクチャを備えるマシーンにそのアプリケーションプログラムをアップロードして実行しても良い。 好ましくは、そのマシーンは、1以上の中央処理ユニット(CPU)、ランダムアクセスメモリ(RAM)、及び入力/出力(I/O)インターフェース等のハードウエアを有するコンピュータプラットホーム上で実施される。 また、そのコンピュータプラットホームはオペレーティングシステム及びマイクロインストラクションコードを含む。 本明細書で説明した様々な処理及び機能はマイクロインストラクションコードの一部又はアプリケーションプログラムの一部(又はそれらの組み合わせ)であっても良く、それはオペレーティングシステムを介して実行される。 加えて、追加のデータ記憶装置及びプリンティング装置等の様々な他の周辺装置がコンピュータプラットホームに接続されても良い。

    更に、添付の図面に示された構成システムコンポーネント及び方法ステップのいくつかが好ましくはソフトウエアにおいて実施されるので、システムコンポーネント(又は処理ステップ)間の実際の接続は、本発明がプログラミングされる様式に応じて異なっても良いことが理解されるべきである。 本明細書で教示を与えたことにより関連技術の当業者は本発明のそれら及び同様の実施又は設定をなすことができる。

    QQ群二维码
    意见反馈