(57)【特許請求の範囲】
【請求項１】
誤り訂正符号を用いたネットワークのパケットロス率に最適な伝送レートを求めるデータ伝送システムであって、
検査行列を用いて伝送データを符号化し、所定のレートで伝送パケットを送出する送信器と、
ネットワークと接続され、伝送パケットを受信し、消失パケットの回復処理を行う復号手段を含む受信器と、
入力された検査行列に基づいて、前記受信器の伝送データの復号時間を最小にするためのパラメタ設計を行い、最適なパケット消失率を出力する符号パラメタ設計器と、
前記ネットワークと接続され、前記符号パラメタ設計器から与えられた前記最適なパケット消失率と自然発生するパケット消失率との差に基づいて前記送信器から受信した伝送パケットを意図的確率的に消失させ、該ネットワークを介して前記受信器に送出する符号化率制御器と、
を有し、
前記符号パラメタ設計器は、
行列の非ゼロの位置のみをリストして保持することで疎である検査行列の行と列を生成する検査行列生成手段と、
前記検査行列に基づいて符号長、符号化率、パケット消失率を求め、符号特性として出力する復号処理計測手段と、
与えられたシステムでカバーできるパケット消失率の範囲と前記符号特性に基づいて、符号化率の範囲を求め、前記符号長、前記パケット消失率と共に出力する復号性能評価手段と、
前記符号化率の範囲、前記符号長、前記パケット消失率から回復処理時間のモデルを用いて復号処理時間の推定を行い、前記最適なパケット消失率、前記符号長、前記符号化率を符号パラメタとして出力する復号処理時間モデル手段と、
を含むことを特徴とするデータ伝送システム。
【請求項２】
前記符号パラメタ設計器は、
前記送信器内、または、ネットワーク上に具備される
請求項１記載のデータ伝送システム。
【請求項３】
映像データをマルチキャスト配信するデータ伝送システムであって、
伝送データを符号化し、伝送パケットを送出する符号器を有する送信器と、
伝送パケットを受信し、消失パケットの回復処理を行う復号手段を含む複数の受信器と、
前記伝送パケットを複製し複数の受信器または下位ルータに向けて伝送するマルチキャストルータと、
前記マルチキャストルータから前記伝送パケットを取得し、取得した該伝送パケットを棄却する複数の符号化率制御器と、
前記符号化率制御器から取得した伝送パケットを前記受信器に送出し、現在のネットワーク上で発生しているパケットの消失率を計測し、前記符号化率制御器に出力する複数のネットワーク計測器と、
を有し、
前記符号器は、行列の非ゼロの位置のみをリストにして保持することで疎である検査行列の行と列を生成して、該検査行列に基づく符号長、符号化率、パケット消失率から回復処理時間のモデルを用いて復号処理時間の推定を行って求めた復号時間を最小とする符号長、符号化率で符号化する手段を含み、
前記符号化率制御器は、前記検査行列に基づいて求めたパケット消失率と現在のネットワーク上で発生している前記伝送パケットの消失率との差に基づいて該伝送パケットを棄却する手段を含む
ことを特徴とするデータ伝送システム。
【請求項４】
前記受信器の前記復号手段は、
疎行列をメモリへ配置し、パケットの受信状況の検査を行う初期化処理手段と、
前記パケットから回復処理可能な行要素を見つけ回復キューに格納する回復走査手段と、
前記回復キューから回復可能な行要素を取得して、前記パケットのデータの加法処理を行い、消失したパケットを復号する回復計算手段と、
を含む請求項１または３記載のデータ伝送システム。
【請求項５】
誤り訂正符号を用いたネットワークのパケットロス率に最適な伝送レートを求めるデータ伝送方法であって、
送信器、受信器、符号パラメタ設計器、符号化率制御器を有するシステムにおいて、
前記送信器が、検査行列を用いて伝送データを符号化し、所定のレートで伝送パケットを送出する伝送パケット送出ステップと、
前記符号パラメタ設計器が、入力された検査行列に基づいて、前記受信器の伝送データの復号時間を最小にするためのパラメタ設計を行い、最適なパケット消失率を出力する符号パラメタ設計ステップと、
前記符号化率制御器が、前記最適なパケット消失率と自然発生するパケット消失率との差に基づいて前記送信器から受信した伝送パケットを意図的確率的に消失させ、該ネットワークを介して前記受信器に送出する符号化率制御ステップと、
前記受信器が、前記伝送パケットを受信し、消失パケットの回復処理を行う復号ステップと、
を行い、
前記符号パラメタ設計ステップにおいて、
行列の非ゼロの位置のみをリストして保持することで疎である検査行列の行と列を生成する検査行列生成ステップと、
前記検査行列に基づいて符号長、符号化率、パケット消失率を求め、符号特性として出力する復号処理計測ステップと、
与えられたシステムでカバーできるパケット消失率の範囲と前記符号特性に基づいて、符号化率の範囲を求め、前記符号長、前記パケット消失率と共に出力する復号性能評価ステップと、
前記符号化率の範囲、前記符号長、前記パケット消失率から回復処理時間のモデルを用いて復号処理時間の推定を行い、前記最適なパケット消失率、前記符号長、前記符号化率を符号パラメタとして出力する復号処理時間モデルステップと、
を含むことを特徴とするデータ伝送方法。
【請求項６】
映像データをマルチキャスト配信するデータ伝送方法であって、
送信器、マルチキャストルータ、複数の符号化率制御器、複数のネットワーク計測器、複数の受信器を有するシステムにおいて、
前記送信器内の符号器が、伝送データを符号化し、伝送パケットを送出する送信ステップと、
前記マルチキャストルータが、前記伝送パケットを複製し複数の受信器または下位ルータに向けて伝送する伝送ステップと、
前記符号化率制御器の各々が、前記マルチキャストルータから前記伝送パケットを取得し、取得した該伝送パケットを棄却する符号化率制御ステップと、
前記ネットワーク計測器の各々が、取得した伝送パケットを後段の前記受信器に送出し、現在のネットワーク上で発生しているパケットの消失率を計測し、前段の符号化率制御器に出力する複数のネットワーク計測ステップと、
前記受信器の各々が、前段のネットワーク計測器から伝送パケットを受信し、消失パケットの回復処理を行う復号ステップと、
を行い、
前記送信ステップにおいて、
行列の非ゼロの位置のみをリストにして保持することで疎である検査行列の行と列を生成して、該検査行列に基づく符号長、符号化率、パケット消失率から回復処理時間のモデルを用いて復号処理時間の推定を行って求めた復号時間を最小とする符号長、符号化率で符号化し、
前記符号化率制御ステップにおいて、
前記検査行列に基づいて求めたパケット消失率と現在のネットワーク上で発生している前記伝送パケットの消失率との差に基づいて該伝送パケットを棄却する
ことを特徴とするデータ伝送方法。
【請求項７】
前記復号ステップにおいて、
疎行列をメモリへ配置し、パケットの受信状況の検査を行う初期化処理ステップと、
前記パケットから回復処理可能な行要素を見つけ回復キューに格納する回復走査ステップと、
前記回復キューから回復可能な行要素を取得して、前記パケットのデータの加法処理を行い、消失したパケットを復号する回復計算ステップと、
を含む請求項５または６記載のデータ伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ伝送装置及び方法に係り、特に、誤り訂正符号を用いたネットワークのパケットロス率に最適な伝送レートを達成するデータ伝送装置及び方法に関する。
【背景技術】
【０００２】
IP(インターネットプロトコル)を用いたネットワークでは、従来の電話網とは異なり、基本的にコネクションレス指向を前提にし、コネクション確立が必要な場合にはTCP(Transmission Control Protocol)など上位層の機能として提供される。このTCPでは、ネットワーク上でパケット消失が発生検知をフィードバック通知(Ack通知)で、消失の補償を再送制御によって実現する。しかし、リアルタイム性が重要視されるような映像伝送等では、再送制御等を行う時間がない。またマルチキャストのような同報配信の場合には、送信機に対する受信機の個数が多いため再送制御が実質的に不可能である。
【０００３】
このような場合には、TCPのような再送制御に基づくパケット消失の補償方式ではなく、コネクションレス方式であるUDP（User Datagram Protocol）と前方誤り訂正(Forward Error Correction: FEC)符号を用いた伝送が用いられる。UDP通信の通信路は2元消失通信路(Binary Erasure Channel: BEC)とみなすことができる。
【０００４】
実際にUDPと共に用いられるFECとして、近年LDPC(Low-density Parity-check)符号が幅広く使用されている。LDPC符号は、符号処理、復号処理共に大きな符号長に対して線型時間で処理ができること、実装が容易であること、符号化率を柔軟に設定できることなどの特徴を持ち合わせる。ここで、符号化率（ｒ）とは、送信される全てのパケット数（n）に対するもとの情報パケット（k）の割合であり、ｒ＝ｋ／ｎである。送信されるパケット全てのパケット数は、元の情報パケット数（＝ｋ）とパリティパケット数（＝ｍ）の合計となる。定義よりｒの範囲は０＜ｒ＜１であり、符号化率が１に近いとパリティビットが殆どなく、逆に０に近づくにつれてパリティパケットの割合が大きくなり、冗長度が高い。
【０００５】
FECをUDP伝送で用いる場合にはネットワーク上のパケット消失確率によって最適な符号化率を決定する必要がある。実際には、パケットがネットワーク上で消失する割合や転送遅延時間が時間毎に変化するため、再符号化せずに符号化率を変化させることが必要になる（例えば、特許文献1参照）。そのための手法としては、LDPC符号をベースにしたパンクチャ符号方式などが提案されている（例えば、非特許文献１参照）。
【０００６】
パンクチャとは、意図的にいくつかの送信パケットを送らないことで、誤り訂正符号で符号レート（冗長度）を制御するための手法である。誤り訂正符号は、パリティシンボル（本明細書ではパケットがシンボルに相当するので、以下「パケット」と記す）を生成し、元の情報パケットに加えてこのパリティパケットを送信することで、ネットワーク上でいくらかのパケット消失が発生した場合でも、元の情報パケットを復元できる技術である。どのくらいの量のパリティパケットを付加するかが符号化率という指標で表される。この符号化率は、符号化する前に決定することが必要であるため、符号化後にこの符号化率を変更することはできない。符号化率が低い、つまり、元の情報パケットに対してパリティパケットの割合が大きい場合には、多くのパケット消失に対する耐久性を持つが、その一方で、伝送するパケット量は大きくなる。もし、ネットワーク上でそれほどパケット消失が起こらない場合には、符号化率が低い（パリティ量が多い）場合は、無駄なパケットを送っていることになるので、伝送効率は悪くなる。そこで、一度符号化した後に、送信すべきパケットを意図的に送らなくすることで、伝送されるパケット量を抑えることができる。これをパンクチャと言う。誤り訂正符号の観点からすると、符号化率を大きくする（つまり、パリティパケット数を少なくする）ことに相当する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開2006-13714号公報
【非特許文献】
【０００８】
【非特許文献１】Pishro-Nik, H,Fekri, F., "Results on punctured LDPC codes", Information Theory Workshop, 2004. IEEE, pp.215-219.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記のようなパンクチャを用いて符号化率を変化させるLDPC符号の場合、ネットワーク上のパケット消失数によってLDPC符号の復号処理時間が異なる。これは、誤り訂正符号は、消失したパケット数だけ回復処理を行うためである。映像伝送のような高ビットレートかつリアルタイム性が求められる場合には、一定の遅延時間以内にLDPC復号を終える必要がある。よって、ネットワークの利用可能帯域が決まっている場合、その帯域においてLDPC復号を最短時間で完了させることが望まれる。
【００１０】
しかしながら、このようなパンクチャによる符号化率が制御可能なLDPC符号を用いてリアルタイム伝送システムを構築する場合、想定されるネットワーク上のパケット消失率の範囲を見極めた上で、前述の要件を満たすようにLDPC符号および伝送のパラメタを決定しなければならない。
【００１１】
本発明は上記の点に鑑みなされたもので、実時間での復号処理時間を推定し、任意の符号化率、パケット消失率、符号長等のパラメタを求め、復号時間を求めることが可能なデータ伝送装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の一態様によれば、誤り訂正符号を用いたネットワークのパケットロス率に最適な伝送レートを求めるデータ伝送システムであって、
検査行列を用いて伝送データを符号化し、所定のレートで伝送パケットを送出する送信器と、
ネットワークと接続され、伝送パケットを受信し、消失パケットの回復処理を行う復号手段を含む受信器と、
入力された検査行列に基づいて、前記受信器の伝送データの復号時間を最小にするためのパラメタ設計を行い、最適なパケット消失率を出力する符号パラメタ設計器と、
前記ネットワークと接続され、前記符号パラメタ設計器から与えられた前記最適なパケット消失率と自然発生するパケット消失率との差に基づいて前記送信器から受信した伝送パケットを意図的確率的に消失させ、該ネットワークを介して前記受信器に送出する符号化率制御器と、
を有し、
前記符号パラメタ設計器は、
行列の非ゼロの位置のみをリストして保持することで疎である検査行列の行と列を生成する検査行列生成手段と、
前記検査行列に基づいて符号長、符号化率、パケット消失率を求め、符号特性として出力する復号処理計測手段と、
与えられたシステムでカバーできるパケット消失率の範囲と前記符号特性に基づいて、符号化率の範囲を求め、前記符号長、前記パケット消失率と共に出力する復号性能評価手段と、
前記符号化率の範囲、前記符号長、前記パケット消失率から回復処理時間のモデルを用いて復号処理時間の推定を行い、前記最適なパケット消失率、前記符号長、前記符号化率を符号パラメタとして出力する復号処理時間モデル手段と、を含むことを特徴とするデータ伝送システムが提供される。
【発明の効果】
【００１３】
一態様によれば、ダイナミックに変化するネットワークの状態に応じて、伝送遅延のリアルタイム性を保証したうえで最適な符号化率での伝送が可能になる。また、複数のネットワーク伝送経路を持つ伝送システムの場合にも、各ネットワークの特性に最適になるように伝送することが可能になる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態における伝送システムの構成例である。
【図２】本発明の第１の実施の形態における検査行列Hの例である。
【図３】本発明の第１の実施の形態における図２に対応する２部グラフとパケットの受信状況の例である。
【図４】本発明の第１の実施の形態における図２の計算機実装するためのデータ構造である。
【図５】本発明の第１の実施の形態におけるLDPC復号器の構成例である。
【図６】本発明の第１の実施の形態における復号過程のフローチャートである。
【図７】本発明の第１の実施の形態におけるLDPC符号パラメタ設計器の構成例である。
【図８】本発明の第１の実施の形態におけるLDPC符号特性の具体例である。
【図９】本発明の第１の実施の形態における送信器、符号化率制御器、受信器の構成例である。
【図１０】従来の映像伝送システムの構成図である。
【図１１】本発明の第２の実施の形態における映像伝送システムの構成例である。
【図１２】従来の映像伝送システムで実施されるLDPC符号化処理の例である。
【図１３】図１２におけるLDPCヘッダを含むパケット構造である。
【図１４】本発明の第２の実施の形態における符号化率制御器の動作のフローチャートである。
【図１５】本発明の第２の実施の形態における映像受信器のLDPC符号パケット受信メモリの構成例である。
【図１６】本発明の第２の実施の形態における映像受信器の動作のフローチャートである。
【図１７】本発明の第３の実施の形態における伝送システムの構成例である。
【図１８】本発明の第３の実施の形態における１つ映像データから分散データを生成する例である。
【図１９】本発明の第４の実施の形態における伝送システムの構成例である。
【発明を実施するための形態】
【００１５】
以下、図面と共に本発明の実施の形態を説明する。
【００１６】
本発明では、以下の課題を解決する。
【００１７】
（１）ネットワーク上のパケット消失率の想定範囲が定まり、かつ、許容される伝送時間もしくはネットワークの帯域上限が定まった場合（制約条件）に、LDPC符号の符号長、符号化率を設計すること。
【００１８】
（２）ネットワーク上のパケット消失率がわかった場合（制約条件）に、伝送効率が最大になるパンクチャ（意図的なパケット消失）量を決定すること。ここで、制約条件とは、予め設定された一定のネットワークの利用可能帯域でLDPC復号を最短で終了する、または、予め設定された一定の遅延時間でネットワーク利用帯域を最小にする条件を指す。
【００１９】
（３）ネットワーク上のパケット消失率に応じたパンクチャ機能などを備えた従来のLDPC符号を用いる送信器、受信器系でも目的を達成すること。
【００２０】
（４）ネットワーク上のパケット消失率に応じたパンクチャ機能などを備えない従来のLDPC符号を用いるマルチキャスト伝送系でも目的を達成すること。
【００２１】
（５）上記の（４）の構成とは逆に、LDPC符号を備える分散保存及び分散配置された送信器から単一の受信器へ伝送する系（送信器:受信器＝N:1の系）で、目的を達成させること。ここで、伝送路はN通りあり、それぞれでネットワークパケット消失率が異なり、パンクチャ量の制御もそれぞれ独立に行う必要がある場合を含む。
【００２２】
［第１の実施の形態］
本実施の形態では、LDPC符号をパンクチャによってネットワーク伝送の符号化率を制御する伝送方式について説明する。
【００２３】
図１は、本発明の第１の実施の形態における伝送システムの構成例である。
【００２４】
同図に示す伝送システムは、送信器３０、ネットワーク４０、受信器５０、LDPC符号パラメタ設計器１０、符号化率制御器２０を有する。
【００２５】
LDPC符号パラメタ設計器１０は、入力された検査行列に基づいて、LDPC復号時間を最小にするためにパラメタ設計を行う。LDPC符号は、符号長、符号化率、消失パケット数に依存するので、これらのパラメタを最短時間で回復処理が完了するように設定する。
【００２６】
LDPC符号は検査行列Hによって符号が定義される。図２に検査行列の例を示す。この例では、符号長N=10、伝送情報量K=5、符号パリティ数M=5、符号化率R=K/N=0.5、列重みDcol=2のレギュラーLDPC符号である。また、LDPC符号は、図３のように2部グラフとしても表現される。受信されるシンボル(本発明ではパケットと呼ぶ)は変数ノードとして下部に、各パリティ検査方程式は上部のチェックノードとして表現される。図２の行列表現と図３のグラフ表現は同一のものを示している。チェックノードはパリティ検査方程式に相当しており、例えば、図３のチェックノードC1は、検査方程式「ROW1によってCOL1が回復できる』ことを示している。同様に、図３下部の変数ノードは各送信パケットに相当する。したがって、伝送システムにおいて伝送過程が終了した状態では、各パケットの受信状況が変数ノードに対して割り当てられる。受信状態は「受信した」もしくは「受信していない（消失）」のどちらかになる。実際の過程では、受信器がある受信時間を決めて、その時間内で受け取ったパケットに関しては「受信」、そうでない場合は「消失」として割り当てる。実際のLDPC符号では、列重みDcolが3程度に対して符号長Nが非常に大きく設定される。すなわち、行列の非ゼロ要素が非常に疎であり、ほとんどの要素はゼロになる。
【００２７】
LDPC符号の復号処理を実装するにあたっては、上記の疎である行列をメモリ効率よく表現することが求められる。そこで、従来のような単純な2次元配列で示すのではなく、非ゼロの位置のみをリストとしてLDPC符号器（図示せず）及び後述する受信器５０内のLDPC復号器に保持することで効率よく疎行列を表現することが可能である。図４にこの方式で表現した図２の検査行列の例を示す。
【００２８】
この表現は、疎である検査行列の行と列の集合(集合ROWおよび集合COL)からなり、それぞれがひとつの行、列の非ゼロの位置を示すリストになっている。なお、集合ROWの要素は、検査行列Hのそれぞれの行毎に、その行の中で"１"が立っている列番号のベクトルとなる。例えば、図４では、集合ROWの要素はROW1からROW５まであり、ROW1は検査行列H(図２）の１行目を表しており、１列目、４列目、７列目、１０列目に"１"が立っているので、ROW1=(1,4,5,10)というベクトルとなる。また、集合COLはひとつの受信パケットに相当するため、各要素はその受信状況を示す変数も保持する。具体的にはグラフ変数を用意して、その変数に記録しておく。例えば、C言語などでは、
struct  COL{
int col_list[ ];//COLのベクトル
int flag_recv://COLの受信状況
｝
などとする。上記の検査行列Hは、後述するLDPC符号パラメタ設計器１０のLDPC検査行列生成部で生成され、受信器５０に渡され、以下に示す受信器５０のLDPC復号器１００で保持される。
【００２９】
次に、受信器５０において消失を含むパケットを受信した後のLDPC復号処理について説明する。図５および図６に本発明のLDPC復号過程を示す。
【００３０】
受信器５０は、図５に示すようなLDPC復号器１００を有する。
【００３１】
LDPC復号器１００は、初期化処理部１１０、回復走査処理部１２０、回復COLキュー１３０、回復計算処理部１４０、受信パケットデータメモリ１５０、LDPC検査行列リスト表現記憶部１６０を有する。LDPC検査行列リスト表現記憶部１６０は、LDPC符号パラメタ設計器１０で生成された検査行列Hをリスト形式で保持する。
【００３２】
LDPC復号は、図６に示すように、初期化処理、回復走査処理、回復計算処理の3部に分解して処理される。
【００３３】
まず、初期化処理部１１０は、LDPC検査行列リスト表現記憶部１６９の初期化を行い、上記で説明した疎行列のLDPC検査行列リスト表現記憶部１６０への配置、および受信されたパケットの受信状況の検査を行う（ステップ１０１）。続く回復走査処理部１２０は、LDPC検査行列リスト表現記憶部１６０からパリティ検査方程式の集合に相当する集合ROWから回復処理可能な行要素(検査方程式)を見つけ、それを回復COLキュー１３０に登録する（ステップ１０３,Yes、１０４）。ここで、回復処理可能な行要素とは、一つの行内（つまり、パリティ検査方程式内）に「消失」状態にあるパケットがただ一つだけ含まれる行を指す。回復計算処理部１４０は、回復COLキュー１３０から行要素を取得し、回復可能なCOL要素の状態を「消失」から「受信」に変更する（ステップ１０５）。集合ROWから回復処理可能な行要素がなくなった時点で回復走査処理を終了する（ステップ１０３,No）。最後の回復計算処理では、回復計算処理部１４０が、回復COLキュー１３０に基づいて、受信パケットデータの加法処理を行い、受信パケットデータを受信パケットデータメモリ１５０に格納する（ステップ１０６）。なお、受信パケットデータの加法処理は、XOR計算（GF(2)上の加法）になるため、加法と減法が同一となる。
【００３４】
受信状況が図４の場合に上記のLDPC復号処理を具体的な処理を説明する。集合ROWを上部から走査すると、回復COLキュー１３０には下記のように登録される。
・ROW1によってCOL1が回復できる：
・ROW2によってCOL3が回復できる：
・ROW3によってCOL5が回復できる：
・ROW4によってCOL9が回復できる：
続いて、回復計算処理部１４０が、この回復COLキュー１３０に基づいて、下記のような加法計算によってそれぞれの消失したパケットを回復する。
・ROW1: COL1 = COL4 + COL7 + COL10：
・ROW2: COL3 = COL2 + COL6 + COL7：
・ROW3: COL5 = COL1 + COL6 + COL8：
・ROW4: COL9 = COL2 + COL5 + COL10：
以上で、すべての消失したパケットがLDPC復号により回復される。
【００３５】
このように、LDPC復号をはじめとするFECでは、すべてのパケットを受信しなくても伝送されたパケットを復元することが可能になるため、ネットワーク上でのパケット消失率がわかれば送信器３０付近において意図的なパケット消失を発生させることでネットワーク伝送レートを変化させることができる。
【００３６】
ただし、LDPC復号処理にかかる時間はLDPCの符号長N、符号化率R、列重みDcol、消失パケット数に依存して変化する。このため、リアルタイム性が重要である伝送システムにおいては、与えられたネットワーク伝送帯域において、LDPC復号時間を最小にするためのパラメタ設計が必要になる。また別の状況では、予め設定されたLDPC復号時間に対して、最小となるネットワーク伝送帯域を求める必要もある。これを求めるために、本発明では、図６に示すようにLDPC符号パラメタ設計部１０を用いた伝送システムによってこれを実現する。
【００３７】
LDPC符号パラメタ設計部１０の構成を図７に示す。
【００３８】
LDPC符号パラメタ設計部１０は、LDPC検査行列生成部１１、LDPC復号処理計測部１２、LDPC復号性能評価部１３、LDPC復号処理時間モデル部１４、LDPC符号パラメタ最適化部１５を有する。
【００３９】
LDPC検査行列生成部１１は、上記の方法により行列の非ゼロの位置のみをリストして保持することで疎である図２に示すような検査行列を生成し、LDPC復号処理計測部１２に入力する。
【００４０】
LDPC復号処理計測部１２は、LDPC検査行列生成部によって与えられたLDPC検査行列に対して、前述したLDPC復号処理方式を用いてパケット消失率Peを変化させた場合のLDPC復号処理を実行する。
【００４１】
LDPC復号性能評価部１３は、LDPC復号処理計測部１２から取得したその符号特性の評価を行う。具体的に、符号長N=3000において符号化率Rを変化させた場合の符号特性を図８に示す。これにより、符号長Nおよびその符号化率Rにおけるパケット消失率対回復成功確率の特性が実験的に得られる。本実施の形態では、ランダムパケット消失を発生させ、10万回の試行による計算実験において回復成功確率が1である領域をパラメタとして採用する。なお、ここでは試行回数を10万回としているが、符号特性を調べる上で十分な反復回数であればよく、10万回に限定されるものではない。図８の例では、ネットワークパケット消失率の範囲が0.43である場合には符号化率R=0.5以上を採用する。このように、LDPC復号性能評価部１３は、システムでカバーするパケット消失率の範囲が外部（例えば、ユーザまたはネットワーク上の計測装置）から与えられると、対応する符号化率Rの範囲をLDPC復号処理時間モデル部１４に出力する。
【００４２】
続いて、LDPC復号処理モデル部１４は、LDPC符号長N、符号化率R、パケット消失率Peが与えられるとLDPC復号処理時間の推定を行う。まず、LDPC復号処理時間Tdecは、図６に示した通り初期化処理時間Tinit、回復走査処理時間Tscan、回復計算処理時間Txorに分解できる。
【００４３】
【数１】
0005600774.tif 000002
Tinitは疎行列である検査行列のデータを図４のような構造でメモリ（図示せず）に配置し、受信パケットに相当する列要素の受信状況を検査する処理にかかる時間である。したがって、この処理時間は符号長Ｎに線型増加する。よって、線型増加の係数をCinitとすると、
【００４４】
【数２】
0005600774.tif 000003
Tscanは消失したパケットのうちLDPC復号によって回復可能なパケットを走査する処理に関係し線型増加する。本発明では、すべての消失パケットが回復可能である符号特性領域を用いるため、パケット消失率がPeである場合の操作される消失パケット数はPe Nであるため線型増加の係数をCscanとすれば、
【００４５】
【数３】
0005600774.tif 000004
Txorは回復される消失パケット数およびパケットサイズLpktに線型増加する。また、ひとつの消失パケットを回復する際の加法計算量は検査行列の行重みDrowに比例する。用いるLDPC符号の検査行列がレギュラー符号（Dcolが全ての列で同じ、かつ、Drowが全ての行で同じである符号。図１の例は全ての行及び全ての列で"１"が立っている数が同じであるのでレギュラー符号となる）、もしくは、厳密に全ての行・列で"１"が立っている数（行重み・列重み）が同じでなくても、例えば、１００列のうち９９列が列重み３で、１列だけ列重みが２であるような場合（近似）には、行重みは列重みDcolによって表現でき、
【００４６】
【数４】
0005600774.tif 000005
よって、線型係数をCxorとすれば、
【００４７】
【数５】
0005600774.tif 000006
ここで、パケットサイズLpktおよび列重みDcolを一定にしたLDPC符号を考えると、これらの定数をまとめて、以下のようになる。
【００４８】
【数６】
0005600774.tif 000007
以上より、LDPC復号に必要な処理時間Tdecは下記のように表現できる。上記のLDPC復号処理のモデルにおいて、LDPC復号処理計測部１２による計測試行の結果から二乗誤差最小になる値を各線型増加の係数Cinit、Cscan、Cxor'として用いる。
【００４９】
【数７】
0005600774.tif 000008
ここで、ネットワーク伝送速度をW、伝送データのサイズをSとすると、本発明の受信器５０において、伝送データを受信開始してからLDPC復号処理が完了するまでの処理時間Trecvは、
【００５０】
【数８】
0005600774.tif 000009
と表される。以上により、ネットワーク伝速度Wが一定における受信処理時間Trecvを最小にするLDPC符号パラメタを決定する場合には、
【００５１】
【数９】
0005600774.tif 000010
なるPe, N, Rを決定する。また、受信処理時間Trecvが一定の場合にネットワーク伝速度Wを最小にする場合には、
【００５２】
【数１０】
0005600774.tif 000011
となるPe, N, Rを決定する。
【００５３】
これよってLDPC符号パラメタ設計器１０で決定されたLDPC符号のパラメタおよび検査行列を用いて図１に示すような伝送システムを構成する。
【００５４】
図９に示すように、送信器３０はLDPC符号部３１、保存部３２、送信部３３によって構成される。送信器３０のLDPC符号部３１は、入力された伝送データを前記LDPC符号パラメタ設計器１０から与えられたLDPC検査行列を用いてLDPC符号化を行い保存部３２に一時蓄積を行う。その後、送信部３３が、一定の送信レートで後段の符号化率制御器２０に送出する。
【００５５】
符号化率制御装器２０は、図９に示すように、パケット消失制御部２１を有し、パケット消失制御部２１は、LDPC符号パラメタ設計器から与えられた最適なパケット消失率と実際のネットワーク上で自然発生するパケット消失率との差を考慮して、送信器３０から送出される伝送パケットを意図的確率的に消失させる。
【００５６】
受信器５０は、図９に示すように、受信部５１とLDPC復号部５２を有し、受信部５１は、伝送パケットを受信し、LDPC復号部５２は、消失パケットの回復処理を行う。
【００５７】
上記により、従来困難であった実時間での復号処理時間を推定し、LDPC符号復号処理の処理過程を初期化処理、回復走査処理、回復計算処理に分離して、それぞれの処理過程で復号処理時間に寄与する符号率、パケット消失率、符号長の関係性を定式化することによって、計算機上で計測して処理時間の係数を一度求めて、任意の符号化率、パケット消失率、符号長での復号時間を求めることを可能にする。
【００５８】
[第２の実施の形態]
本実施の形態では、第1の実施の形態を映像伝送システムに適用した例を説明する。
【００５９】
図１０は、従来の映像伝送システムの構成図を示す。
【００６０】
同図に示す映像伝送システムは、圧縮映像データ、LDPC符号器１１０を具備する映像送信器１００、パケット消失を有するネットワーク３００、ネットワーク上のパケット消失率を測定可能なネットワーク計測器２１０、LDPC復号器２２０、LDPC符号受信メモリ２３０を具備する映像受信器２００から構成される。
【００６１】
このうち、圧縮映像データ、LDPC符号器１１０を具備する映像送信器１００、および、LDPC復号器２２０を具備する映像受信器２００は図１０に示す通り、従来の伝送系で用いられるものである。従来の映像伝送系では、ネットワークのパケット消失状態の最大値を決定し、それをカバーするだけのLDPCを用いた誤り訂正符号の符号化率を静的に設定してLDPC符号化を行うことで、ネットワーク上のパケット消失を補償する。そのため、ネットワーク上のパケット消失率が時間的に変化し、ほとんど消失しない場合でも符号化率が一定であるため、余分なパリティパケットの伝送が発生しネットワーク効率を悪化させる。
【００６２】
図１１に示す構成にすることで、従来の映像伝送系をそのまま用いて、かつ、ネットワーク上のパケット消失率に基づき符号化率を変化させて、ネットワーク効率を落とさずに伝送することが可能になる。これにより、前述の（３）の課題が解決できる。
【００６３】
図１１に示す映像伝送システムの符号化率制御器２０およびネットワーク計測器３１０は、LDPC符号器１１０を具備する映像送信器１００およびLDPC復号器２２０を具備する映像受信器２００とは完全に独立して動作する。
【００６４】
従来の映像伝送システムで実施されるLDPC符号化処理を図１２に示す。伝送対象の映像圧縮データを一定の小さいパケット(1280バイト)に分割する。これら1パケットがLDPC符号の1シンボルに相当する。その後、第１の実施の形態で示したLDPC符号の設計手法に基づいて算出された符号長、符号化率を用いてLDPC符号化を行い、パリティパケットを生成する。単位パリティパケットのサイズは、先にパケット化した映像データパケットと同等である。次に、映像パケット、パリティパケットに対して、LDPC復号に必要になるLDPCヘッダ(16バイト)を付加し、これらのパケットをUDP/IP方式で映像受信器２００へ伝送する。
【００６５】
ここで用いるLDPCヘッダを含む伝送されるパケット構造を図１３に示す。LDPCヘッダは、LDPCブロック番号(4バイト)、LDPC内パケット番号(4バイト)、LDPC符号長(4バイト)、LDPCブロック内の映像データパケット数(4バイト)で構成される。LDPCブロック番号はそのパケットが所属するLDPCブロックを識別するために用いられる。これは、例えばネットワーク伝送遅延やジッタが大きい場合に、別のLDPCブロックに属するパケットが届くことがあり、これを混同せずに処理するために必要である。LDPCブロック内パケット番号は、パケット到着およびその順序を保証しないUDP/IP通信において、パケットの位置を識別するのに必要である。LDPC符号長およびLDPCブロック内の映像データパケット数は、単一パケットを見た場合に、そのパケットが映像データを含むパケットであるのか、もしくは、パリティデータを含むパケットであるかの識別をするために必要である。
【００６６】
本実施の形態において、符号化率制御器２０で実施される意図的なパケット棄却の方式を図１４に示す。はじめに、符号化率制御器２０は、ネットワーク計測器３１０から現在のネットワーク上で発生しているパケット消失率Perrを取得する（ステップ２０１）。続いて、ユーザ操作により想定範囲のネットワークパケット消失率Peを取得する（ステップ２０２）。これらの情報から、符号化率制御器２０で発生させる意図的なパケット消失率Pdを求める（ステップ２０３）。Pdは映像受信器２００に届く時点でのパケット消失率がPeになるように意図的なパケット消失を発生されるため、以下の通り求められる。
【００６７】
(1-Pe) = (1-Pd)(1-Perr)
Pd = 1 - (1-Pe)/(1-Perr)
続いて、UDPパケット受信を待機した後（ステップ２０４）、UDP受信を行い（ステップ２０５）、対象となるパケットであるならば（ステップ２０６、Yes）、乱数を発生させ、当該乱数に応じて先に求めた確率Pdで到着パケットを棄却する（ステップ２０７）。
【００６８】
映像受信器２００でのLDPC符号パケット受信メモリ２３０の構成を図１５に示す。受信LDPC符号パケットメモリ２３０は、映像データパケットおよびパリティパケットがすべて格納できるサイズ分のデータ領域、および、各パケットの受信状況を記録する領域から構成される。初期化処理では、すべての受信状況を「未受信」に設定し、データ領域をすべてゼロ値にする。映像データパケットもしくはパリティパケットが到着した場合、IPヘッダ、UDPヘッダ、LDPCヘッダを除去し、LDPCヘッダにあるLDPCブロック内パケット番号に相当するLDPC符号パケット受信メモリ２３０の場所に格納される。その後、受信状態を「未受信」から「受信」に変更する。
【００６９】
映像受信器２００での受信処理を図１６に示す。
【００７０】
映像受信器２００は、LDPC符号パケット受信メモリ２３０を確保して初期化を行う（ステップ３０１）。次に受信時間に関する時限タイマを開始する。この時限タイマは時限になると割り込みを発生させる（ステップ３０２）。時限タイマ値には、第１の実施の形態で算出したLDPC復号時間が実際の復号処理にかかるとみなし、映像再生時刻までに復号処理が完了するような時刻が設定される。上記の時限タイマに割り込みが発生するまで以下の処理を繰り返す。
【００７１】
映像受信器２００はUDPパケット受信待機を経て（ステップ３０３）、UDPパケットを受信する（ステップ３０４）。受信したパケットのLDPCヘッダのLDPCブロック番号を参照し、それが現在受信中のものかを確認する（ステップ３０５）。もし、現在受信中のものでない場合は（ステップ３０５、No）、そのパケットを無視し、再びUDPパケット受信待機に戻る（ステップ３０３に移行する）。もし現在受信中のものであれば（ステップ３０５、Yes）、LDPCブロック内パケット番号を参照し、その番号に相当するLDPC符号パケット受信メモリ２３０の領域にパケットのペイロード部分のみを格納する（ステップ３０６）。続いて、同位置の受信状況を「未受信」から「受信」に変更する（ステップ３０７）。
【００７２】
受信時限タイマによる割り込みが発生した場合は、LDPC符号受信メモリ２３０の受信状況で「未受信」であるところを「消失」と変更する（ステップ３０８）。その後、LDPC復号処理を開始する（ステップ３０９）。
【００７３】
以上により、LDPC復号器２２０を具備する映像受信器２００においてLDPC復号処理が施され、元の映像データが完全に再現される。LDPC復号器２２０を具備する映像受信器２００においては、本実施の形態のように映像送信器と映像受信器の中間に符号化率制御器が挿入されている場合においても、従来の系と同様のLDPC復号処理で対応可能である。
【００７４】
[第３の実施の形態]
図１７は、本発明の第３の実施の形態における伝送システムの構成例を示す。
【００７５】
本実施の形態では、Ｎ個(Nは１以上)の分散保存データ、送信器３０１〜３０N、符号化率制御器２０１〜２０N、ネットワーク計測器３１０１〜３１０N、および、LDPC復号器２２０を具備する受信器２００から構成される。
【００７６】
本実施の形態では、分散保存データおよびその送信器３０１〜３０Nを分散配置することで、各送信器３０１〜３０Nの処理負荷を軽減するとともに、受信器２００へのネットワークも独立になるため、ネットワーク負荷も軽減することが可能になる。
【００７７】
ひとつの映像データから分散保存データを生成する手段を図１８に示す。ここでは例として分散保存数Ｎ＝３の場合を示している。各第２の実施の形態と同様にして、各送信器３０１〜３０Nは、映像データをパケット分割した後、LDPC符号化しパリティパケットを生成する。映像データパケットおよびここで得られたパリティパケットにLDPCヘッダを付加する。ここで用いるLDPCヘッダは第２の実施の形態で用いたものと同様のものを用いる。続いて、映像データパケットおよびパリティパケットを先頭から順に分散保存ホストに割り当てていく。同様にパリティパケットに関しても先頭から順に分散保存ホストに割り当てていく。これにより、すべての映像データパケットおよびパリティパケットが割り振られたときに、各保存ホストにある映像データパケットおよびパリティパケットが均等になる。以上により送信する映像データが分散的に保存・配置される。
【００７８】
本実施の形態の伝送処理過程および受信処理を説明する。
【００７９】
LDPC復号器２２０を具備する受信器２００から映像データの送信要求がすべての送信器３０に送信されると、各送信器３０１〜３０Nは受信器２００に向けて自分の保持する分散保存された映像データの送信を開始する。各送信器３０１〜３０Nと受信器２００の中間に挿入配置された符号化率制御器２０１〜２０Nおよびネットワーク計測器３１０１〜３１０Nは、第２の実施の形態と同様の動作でネットワークで発生するパケット消失率に応じた意図的なパケット棄却を行い、符号化率の制御を行う。LDPC復号器２２０を具備する受信器２００では、第２の実施の形態と同様の手段で受信される映像データパケットおよびパリティパケットの受信処理およびLDPC復号処理を施す。
【００８０】
以上により、分散的に配置された複数の送信器３０１〜３０Nから、それぞれのネットワークのパケット消失率の状況に合わせた符号化率で伝送された映像データを受信し、LDPC復号することが可能になる。
【００８１】
本実施の形態によれば、前述の（５）の課題が解決できる。
【００８２】
［第４の実施の形態］
図１９は、本発明の第４の実施の形態における伝送システムの構成例を示す。
【００８３】
同図に示す伝送システムは、映像データ、LDPC符号器１１０を具備する送信器１００、マルチキャストルータ４００、複数の符号化制御器２０１〜２０N、複数のネットワーク計測器３１０１〜３１０N、および複数のLDPC復号器２２０を具備する受信器２００１〜２００Nから構成される。マルチキャストを用いて同一の映像データを複数の受信器２００１〜２００Nに伝送する場合に、各ネットワーク（各マルチキャスト径路）のネットワークパケット消失率に応じた符号化率で伝送するシステムである。
【００８４】
LDPC符号器１１０を具備する送信器１００において、第２の実施の形態と同様の手段を用いて、映像データのパケット化、LDPC符号化によるパリティパケットの生成、LDPCヘッダの付加を行う。その後、LDPC符号器１１０を具備する送信器１００は、これらの映像データパケットおよびパリティパケットをマルチキャストルータ４００へ伝送する。
【００８５】
マルチキャストルータ４００では、受信器２００もしくは下位ルータからのマルチキャストジョインの要求を受け取ると、その受信器２００もしくは下位ルータに向けてパケットのコピーを行う。図１９ではマルチキャストルータ４００配下に直接受信器２００が所属する構成である。コピーされたパケットは、それぞれのネットワーク径路を介して最終的にLDPC復号器２２０を具備する受信器２００に到達する。本実施の形態では、マルチキャストルータ４００と受信器２００の中間に符号化率制御器２０およびネットワーク計測器３１０が挿入さる構成をとる。これにより、第２の実施の形態と同様の処理を行い、各符号化率制御器２０１〜２０Nにおいてネットワークパケット消失率に応じた符号化率の制御が施され、LDPC復号器２２０を具備する受信器２００１〜２００Nへマルチキャストパケットが伝送される。
【００８６】
それぞれのLDPC復号器２２０を具備する受信器２００１〜２００Nでは、第２の実施の形態と同様の手段によりLDPC復号処理が実施され、送信された映像データが復元される。本実施の形態では、送信器１００とすべての受信器２００１〜２００Nは単一のLDPC符号を用いればよいため、実装および管理が簡易になる。また、ネットワークごとにパケット消失率が変化した場合においても、送信器、受信器の操作を一切変えることなく高効率なネットワーク伝送が実現される。
【００８７】
本実施の形態によれば、前述の課題の（４）が解決できる。
【００８８】
なお、上記の第１〜第４の実施の形態では、LDPC符号を用いて説明しているが、LDPC符号に限定されることなく、誤り訂正符号に適用可能である。
【００８９】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００９０】
１０  LDPC符号パラメタ設計器
１１  LDPC検査行列生成部
１２  LDPC復号処理計測部
１３  LDPC復号性能評価部
１４  LDPC復号処理時間モデル部
１５  LDPC符号パラメタ最適化部
２０  符号化率制御器
２１  パケット消失制御部
３０  送信器
３１  LDPC符号部
３２  保存部
３３  送信部
４０  ネットワーク
５０  受信器
５１  受信部
５２  LDPC復号部
１００  LDPC復号器
１１０  初期化処理部
１２０  回復走査処理部
１３０  回復COLキュー
１４０  回復計算処理部
１５０  受信パケットデータメモリ
１６０  LDPC検査行列リスト表現記憶部
２００  映像受信器
２１０  ネットワーク計測器
２２０  LDPC復号器
２３０  LDPC符号パケット受信メモリ
３００  ネットワーク（パケット消失あり）
３１０  ネットワーク計測器
４００  マルチキャストルータ
【要約】
【課題】  実時間での復号処理時間を推定し、任意の符号化率、パケット消失率、符号長等の最適なパラメタを求め、復号時間を求める。
【解決手段】本発明は、検査行列を用いて伝送データを符号化し、所定のレートで伝送パケットを送出する送信器と、ネットワークと接続され、伝送パケットを受信し、消失パケットの回復処理を行う復号手段を含む受信器と、入力された検査行列に基づいて、受信器の伝送データの復号時間を最小にするためのパラメタ設計を行い、最適なパケット消失率を出力する符号パラメタ設計器と、ネットワークと接続され、符号パラメタ設計器から与えられた最適なパケット消失率と自然発生するパケット消失率との差に基づいて送信器から受信した伝送パケットを意図的確率的に消失させ、該ネットワークを介して受信器に送出する符号化率制御器と、を有する。
【選択図】  図１【図１】
0005600774.tif 000012
【図２】
0005600774.tif 000013
【図３】
0005600774.tif 000014
【図４】
0005600774.tif 000015
【図５】
0005600774.tif 000016
【図６】
0005600774.tif 000017
【図７】
0005600774.tif 000018
【図８】
0005600774.tif 000019
【図９】
0005600774.tif 000020
【図１０】
0005600774.tif 000021
【図１１】
0005600774.tif 000022
【図１２】
0005600774.tif 000023
【図１３】
0005600774.tif 000024
【図１４】
0005600774.tif 000025
【図１５】
0005600774.tif 000026
【図１６】
0005600774.tif 000027
【図１７】
0005600774.tif 000028
【図１８】
0005600774.tif 000029
【図１９】
0005600774.tif 000030