JP5694390B2 - 通信システムにおけるオブジェクトのブロックアグリゲーション - Google Patents
通信システムにおけるオブジェクトのブロックアグリゲーション Download PDFInfo
- Publication number
- JP5694390B2 JP5694390B2 JP2012556247A JP2012556247A JP5694390B2 JP 5694390 B2 JP5694390 B2 JP 5694390B2 JP 2012556247 A JP2012556247 A JP 2012556247A JP 2012556247 A JP2012556247 A JP 2012556247A JP 5694390 B2 JP5694390 B2 JP 5694390B2
- Authority
- JP
- Japan
- Prior art keywords
- source
- individual
- data
- aggregate
- symbol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000004891 communication Methods 0.000 title claims description 39
- 230000002776 aggregation Effects 0.000 title description 40
- 238000004220 aggregation Methods 0.000 title description 40
- 230000008439 repair process Effects 0.000 claims description 111
- 238000000034 method Methods 0.000 claims description 80
- 238000013507 mapping Methods 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 13
- 230000004931 aggregating effect Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 description 39
- 230000008569 process Effects 0.000 description 14
- 238000013459 approach Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000032258 transport Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000009897 systematic effect Effects 0.000 description 4
- 239000000654 additive Substances 0.000 description 3
- 230000000996 additive effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000003892 spreading Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3761—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/611—Specific encoding aspects, e.g. encoding by means of decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6356—Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Description
下記の参考文献は、ここに含まれ、すべての目的のために参照により組み込まれる:米国特許第7,418,651号の「File Download and Streaming System」Lubyその他著(以降、「Luby I」と記す)。
通信チャネル上での送信者と受信者との間のストリームおよびファイルの送信が多くの文献の主題となっている。できれば、受信者は、ある程度の確実性を伴って、送信者によってチャネル上で送信されたデータの正確な複製を受信することを望む。チャネルが完全な忠実性(fidelity)を有していない(ほぼすべての物理的に実現可能なシステムをカバーする)場合、一つの関心事は、送信中に文字化けしたまたは損失したデータをどのように処理するかということである。損失したデータ(イレージャ(erasure))はしばしば、破損したデータ(誤り(error))よりも処理することが容易である。なぜならば、受信者は、破損したデータが誤りで受信されたデータであることを常に区別できないからである。多くの誤り訂正符号は、イレージャおよび/または誤りを訂正するために開発されている。一般的には、使用される特定の符号は、データが送信されデータの本質が送信されるチャネルの非忠実性についてのある情報に基づいて選ばれる。例えば、チャネルが長い期間非忠実であると知られている場合、バースト誤り符号は、そのアプリケーションに最良に適用される可能性がある。短い期間のみである場合には、低頻度の誤りが予期され、単純なパリティ符号が最良である可能性がある。
例えば、ブロードキャストまたはマルチキャスト環境において、または、コンテンツ送信ネットワークのようなユニキャスト送信インフラストラクチャを使用して、大多数の受信機に複数の個々のオブジェクトを送信することにおいて、生じる可能性がある多数のユースケース(use case)がある。これらのユースケースのいくつかを考慮することは、送信のために個々のオブジェクトのブロックアグリゲーションの技法についての所望の特性を定義することを助けることができる。他の特性は追加的にまたは代替的に定義されることができるが、いくつかの所望の特性のリストが後述される。
ブロックアグリゲーションの上記リストされた所望の特性は、ブロックアグリゲーション技法に対していくつかの注意をひきつける制約(some interesting constraints)を課す。例えば、特性6では、アグリゲートオブジェクト内の個々のオブジェクトについて送信されたソースパケットはアグリゲートオブジェクトについてのリペアパケットと一緒に効率的に使用されるべきである、ということを示し、特性1では、個々のオブジェクトについてのこれらのデータパケットはシンボルインデクス付けを使用する、ということを示す。したがって、特性1および特性6では、アグリゲートオブジェクト内の各個々のオブジェクトは、ソースシンボルバウンダリで開始し、さらには、アグリゲートオブジェクト内の各ソースシンボルが唯一1つの個々のオブジェクトについてのデータを含む、ということを示す。別の例として、特性7はまた、アグリゲートオブジェクト内の各個々のオブジェクトがシンボルバウンダリにて開始するという制約をもたらす。
個々のオブジェクトのブロックアグリゲーションについての技法は下記で説明される。一般に、説明された技法は、複数の個々のオブジェクトを大きなアグリゲートオブジェクトへとアグリゲートし、そしてそれは、FEC符号化の前に1つまたは複数のソースブロックに分割されることができる。個々のオブジェクトは、アグリゲートオブジェクト内で、また適用可能であれば複数のソースブロック内で、自動的にアラインされるので、上記の所望特性が達成される。リペアシンボルは、アグリゲートオブジェクトの各ソースブロックについて、FEC符号化によって生成される。ソースシンボルとリペアシンボルは、例えばブロードキャストまたはマルチキャストを通じて、1つまたは複数の受信機に、それぞれ、リペアパケットおよびソースパケットのペイロード内で送信される。
図2を参照し、さらに図1を参照すると、通信システムにおいて送信機から受信機へとデータを送信するために個々のオブジェクトをソースシンボルにマッピングするプロセス200は、図示されるステージを含む。図1は、個々のオブジェクトのブロックアグリゲーションの機能図である。図1の例について選ばれたパラメータ(すなわち、m,B(j),T,およびZ)は任意であり、限定されていない。プロセス200は、単なる例示であって限定するものではない。プロセス200は、例えばステージを追加、取り除くまたは並び替えることによって、変更されることができる。
図3を参照すると、通信システムにおいて送信機から受信機へと送信されるデータについてのソースシンボルにマッピングされた個々のオブジェクトを復元するプロセス300は図示されるステージを含む。プロセス300は、単なる例示であって限定するものではない。プロセス300は、例えばステージを追加、取り除くまたは並び替えることによって、変更されることができる。
1つのソースブロックのみがある場合(すなわちZ=1)には、アグリゲートオブジェクトの最初のS(1)ソースシンボルは、個々のオブジェクト1に対応し、次のS(2)ソースシンボルは、個々のオブジェクト2に対応する、等である。アグリゲートオブジェクトの最後のS(m)ソースシンボルは、個々のオブジェクトmに対応する。
ブロックアグリゲーションについての開示された技法は、上述される個々のオブジェクトのブロックアグリゲーションの所望の特性を達成する。
個々のオブジェクトのブロックアグリゲーションの2つのユースケースが下記で示されている。ブロックアグリゲーションのプロパティはユースケースというコンテキストで説明されている。ブロックアグリゲーション技法の利点もまた示されている。
ここでの開示に関連して説明された様々な説明のための論理ブロック、モジュールおよび回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは他のプログラマブル論理デバイス、ディスクリートゲートあるいはトランジスタ論理、ディスクリートハードウェアコンポーネント、あるいは、ここに説明された機能を実行するように設計されたそれらのいずれの組み合わせ、で実装または実行されうる。汎用プロセッサは、マイクロプロセッサであってもよいが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、あるいはステートマシンでありうる。プロセッサも、コンピューティングデバイスの組み合わせ、例えばDSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、DSPコアと併せて1以上のマイクロプロセッサ、または他のそのような構成、として実装されうる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[1]通信システムにおいて送信機から受信機へとデータを送信するために、ソースシンボルにm個の個々のオブジェクトをマッピングする方法であって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmまで順序づけられ、m>1であり、該方法は、
該m個の個々のオブジェクトをj=1からmである各個々のオブジェクトjを含むアグリゲートオブジェクトにアグリゲートすることと、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算することと、そして
該アグリゲートオブジェクトを、各ソースブロックkがk=0からZ−1であり、そして各個々のオブジェクトJがj=1からmである、Z個のソースブロックへと分割することと、ソースブロックk内の個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算することを含み、
ここで、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まりNSS(j,k)>0についての最後のソースブロックまでの、連続ソースブロック内で連続的に並べられる、方法。
[2]各個々のオブジェクトjのデータのバイトは、ソースシンボル0から始まりソースシンボルS(j)−1まである、該個々のオブジェクトjについてのS(j)ソースシンボル内で連続的に並べられる、[1]に記載の方法。
[3]該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドすること、をさらに備える[1]に記載の方法。
[4]該アグリゲートオブジェクトをZ個のソースブロックへと分割することは、1〜mまでの各整数jについて、最初のj個の個々のオブジェクトにおいてソースシンボルのアグリゲート数SS(j)を計算することをさらに含み、SS(0)=0であり、SS(j)は、1〜jまでのすべての整数iにわたるS(i)の合計である、[1]に記載の方法。
[5]リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化すること、をさらに備える[1]に記載の方法。
[6]該ソースシンボルをソースパケットにマッピングし、該リペアシンボルをリペアパケットにマッピングすること、をさらに備える[5]に記載の方法。
[7]該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信すること、をさらに備える[6]に記載の方法。
[8]通信システムにおいて送信機から受信機へと送信されるデータについてのソースシンボルにマッピングされた個々のオブジェクトを復元するための方法であって、該個々のオブジェクトは、アグリゲートオブジェクトにおいて他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは、1つまたは複数のソースブロックに分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該方法は、
データの1つまたは複数のパケットを受信することと、データの各パケットは、該個々のオブジェクトの少なくとも1つのソースシンボル、または該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、および
データの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元することと、
を備える、
方法。
[9]該個々のオブジェクトを復元することは、該個々のオブジェクトの1つまたは複数の前に取得されたソースシンボルとデータの該1つまたは複数の受信されたパケットを使用して、該個々のオブジェクトを復元することをさらに備える、[8]に記載の方法。
[10]通信システムにおいて受信機へデータを送信するために、ソースシンボルにm個の個々のオブジェクトをマッピングするように構成された装置であって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmまで順序づけられ、m>1であり、該装置は、
該m個の個々のオブジェクトをアグリゲートオブジェクトにアグリゲートするように、また、該アグリゲートオブジェクトをZ個のソースブロックへと分割するように構成されたプロセッサを備え、j=1〜mについての各個々のオブジェクトjについて、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算し、k=0〜Z−1についての各ソースブロックk、および、j=1〜mについての各個々のオブジェクトjについて、ソースブロックkにおける個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算することを含み、
なお、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まりNSS(j,k)>0の最後のソースブロックまで、連続ソースブロック内で連続的に並べられる、装置。
[11]各個々のオブジェクトjのデータのバイトは、ソースシンボル0から始まりソースシンボルS(j)−1まで、個々のオブジェクトjについて、S(j)ソースシンボル内で連続的に並べられる、[10]に記載の装置。
[12]該プロセッサは、該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドするようにさらに構成される、[10]に記載の装置。
[13]該プロセッサは、最初のj個の個々のオブジェクトにおいてソースシンボルのアグリゲート数SS(j)を計算するようにさらに構成され、SS(0)=0であり、SS(j)は、1〜jまでのすべての整数iにわたるS(i)の合計である、[10]に記載の装置。
[14]該プロセッサに通信的に結合され、リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化するように構成された符号器、をさらに備える[10]に記載の装置。
[15]該プロセッサは、該ソースシンボルをソースパケットにマッピングし、該リペアシンボルをリペアパケットにマッピングするようにさらに構成される、[14]に記載の装置。
[16]該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信するように構成された送信機、をさらに備える[15]に記載の装置。
[17]通信システムにおいて送信機から送信されたデータについてソースシンボルにマッピングされた個々のオブジェクトを復元するように構成された装置であって、該個々のオブジェクトは、アグリゲートオブジェクト内に他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは1つまたは複数のソースブロックに分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該装置は、
データの1つまたは複数のパケットを受信するように構成された受信機と、データの各パケットは、該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルまたは該個々のオブジェクトの少なくとも1つのソースシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、
該受信機に通信的に結合され、データの該1つまたは複数の受信されたパケットを使用して、該個々のオブジェクトを復元するように構成されたプロセッサと、
を備える、装置。
[18]該プロセッサは、該個々のオブジェクトの1つまたは複数の前に取得されたソースシンボルと、データの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元するようにさらに構成される、[17]に記載の装置。
[19]通信システムにおいて送信機から受信機へとデータを送信するために、ソースシンボルにm個の個々のオブジェクトをマッピングするためのコンピュータプログラムプロダクトであって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmまで並べられ、m>1であり、該プロダクトは、
プロセッサに、
該M個の個々のオブジェクトをアグリゲートオブジェクトにアグリゲートさせることと、j=1〜mについての各個々のオブジェクトjについて、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算することを含み、
該アグリゲートオブジェクトをZ個のソースブロックに分割させることと、k=0〜Z−1についての各ソースブロックkおよびj=1〜mについての各個々のオブジェクトjについて、ソースブロックkにおける個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算することを含むことと、
を実行するように構成されたプロセッサ可読命令を格納するプロセッサ可読媒体を具備し、
なお、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まり、NSS(j,k)>0についての最後のソースブロックまである、連続ソースブロック内で連続的に並べられる、コンピュータプログラムプロダクト。
[20]該プロセッサ可読媒体はさらに、該プロセッサに、ソースシンボル0から始まりソースシンボルS(j)−1まで、該個々のオブジェクトjについての該S(j)ソースシンボル内で各個々のオブジェクトjのデータのバイトを連続的に並べさせることを実行するようにさらに構成される、[19]に記載のプロダクト。
[21]該プロセッサ可読媒体は、該プロセッサに、該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドさせることを実行するようにさらに構成される、[19]に記載のプロダクト。
[22]該プロセッサ可読媒体はさらに、該プロセッサに、1〜mまでの各整数jについて、最初のj個の個々のオブジェクトにおいてソースシンボルのアグリゲート数SS(j)を計算させることを実行するようにさらに構成され、SS(0)=0であり、SS(j)は、1〜jまでのすべての整数iにわたるS(i)の合計である、[19]に記載のプロダクト。
[23]該プロセッサ可読媒体は、該プロセッサに、リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化させることを実行するようにさらに構成される、[19]に記載のプロダクト。
[24]該プロセッサ可読媒体は、該プロセッサに該ソースシンボルをソースパケットにマッピングさせ、該リペアシンボルをリペアパケットにマッピングさせることを実行するようにさらに構成される、[23]に記載のプロダクト。
[25]該プロセッサ可読媒体は、該プロセッサに該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信させることを実行するようにさらに構成される、[24]に記載のプロダクト。
[26]通信システムにおいて送信機から受信機へと送信されたデータについてソースシンボルにマッピングされた個々のオブジェクトを復元するためのコンピュータプログラムプロダクトであって、該個々のオブジェクトは、アグリゲートオブジェクトにおいて他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは、1つまたは複数のソースブロックに分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該プロダクトは、
プロセッサに、
データの1つまたは複数のパケットを受信させることと、データの各パケットは、該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルまたは該個々のオブジェクトの少なくとも1つのソースシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、
データの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元させることと、
を実行するように構成されたプロセッサ可読命令を格納するプロセッサ可読媒体を備える、コンピュータプログラムプロダクト。
[27]該プロセッサ可読媒体は、該プロセッサに該個々のオブジェクトの1つまたは複数の前に取得されたソースシンボルと、データの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元させることを実行するようにさらに構成される、[26]に記載のプロダクト。
[28]通信システムにおいて送信機から受信機へとデータを送信するために、m個の個々のオブジェクトをソースシンボルにマッピングするように構成されたシステムであって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmへと順序づけられ、m>1であり、該システムは、
該m個の個々のオブジェクトをj=1〜mについての各個々のオブジェクトjを含むアグリゲートオブジェクトにアグリゲートし、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算するための手段と、
該アグリゲートオブジェクトをk=0〜Z−1についての各ソースブロックk、および、j=1〜mについての各個々のオブジェクトjを含むZ個のソースブロックへと分割し、ソースブロックkにおける個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算するための手段と、
を備え、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まりNSS(j,k)>0の最後のソースブロックまでである、連続ソースブロック内で連続的に並べられる、システム。
[29]各個々のオブジェクトjのデータのバイトは、ソースシンボル0から始まりソースシンボルS(j)−1まである、該個々のオブジェクトjについて該S(j)ソースシンボル内で連続的に並べられる、[28]に記載のシステム。
[30]該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドするための手段、をさらに備える[28]に記載のシステム。
[31]該アグリゲートオブジェクトをZ個のソースブロックへと分割するための手段は、1〜mまでの各整数jについて、最初のj個の個々のオブジェクトにおいてソースシンボルのアグリゲート数SS(j)を計算するための手段、をさらに含み、SS(0)=0であり、SS(j)は、1〜jまでのすべての整数iにわたるS(i)の合計である、[28]に記載のシステム。
[32]リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化するための手段、をさらに備える[28]に記載のシステム。
[33]該ソースシンボルをソースパケットにマッピングし、該リペアシンボルをリペアパケットにマッピングするための手段、をさらに備える[32]に記載のシステム。
[34]該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信するための手段、をさらに備える[33]に記載のシステム。
[35]通信システムにおいて送信機から受信機へと送信されたデータについてソースシンボルにマッピングされた個々のオブジェクトを復元するように構成されたシステムであって、該個々のオブジェクトは、アグリゲートオブジェクトにおいて他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは、1つまたは複数のソースブロックに分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該システムは、
データの1つまたは複数のパケットを受信するための手段と、データの各パケットは、該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルまたは該個々のオブジェクトの少なくとも1つのソースシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、
データの該1つまたは複数の受信されたパケットを使用して、該個々のオブジェクトを復元するための手段と、
を備える、システム。
[36]該個々のオブジェクトを復元するための手段は、該個々のオブジェクトの1つまたは複数の取得されたソースシンボルとデータの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元するための手段、をさらに含む、[35]に記載のシステム。
Claims (15)
- 通信システムにおいて送信機から受信機へとデータを送信するために、ソースシンボルにm個の個々のオブジェクト(110)をマッピングする方法(200)であって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmまで順序づけられ、m>1であり、該方法は、
該m個の個々のオブジェクトをj=1からmである各個々のオブジェクトjを含むアグリゲートオブジェクト(120)にアグリゲートすることと(204)、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算することと、そして
該アグリゲートオブジェクトを、各ソースブロックkがk=0からZ−1であり、そして各個々のオブジェクトjがj=1からmである、Z個のソースブロック(130)へと分割することと(206)、ソースブロックk内の個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算することを含み、
ここで、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まりNSS(j,k)>0についての最後のソースブロックまでの、連続ソースブロック内で連続的に並べられる、方法。 - 各個々のオブジェクトjのデータのバイトは、ソースシンボル0から始まりソースシンボルS(j)−1まである、該個々のオブジェクトjについての該S(j)ソースシンボル内で連続的に並べられる、請求項1に記載の方法。
- 該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドする(125)こと、をさらに備える請求項1に記載の方法。
- 該アグリゲートオブジェクトをZ個のソースブロックへと分割することは、1〜mまでの各整数jについて、最初のj個の個々のオブジェクトにおいてソースシンボルのアグリゲート数SS(j)を計算することをさらに含み、SS(0)=0であり、SS(j)は、1〜jまでのすべての整数iにわたるS(i)の合計であり、NSS(j,k)=ceil((SS(j)−k)/Z)−ceil((SS(j−1)−k)/Z)である、請求項1に記載の方法。
- リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化すること(208)、をさらに備える請求項1に記載の方法。
- 該ソースシンボルをソースパケットにマッピングし(210)、該リペアシンボルをリペアパケットにマッピングすること、をさらに備える請求項5に記載の方法。
- 該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信すること(212)、をさらに備える請求項6に記載の方法。
- 通信システムにおいて送信機から受信機へと送信されるデータについてのソースシンボルにマッピングされた個々のオブジェクト(110)を復元するための方法(300)であって、該個々のオブジェクトは、アグリゲートオブジェクト(120)において他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは、1つまたは複数のソースブロック(130)に分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該方法は、
データの1つまたは複数のパケットを受信することと(302)、データの各パケットは、該個々のオブジェクトの少なくとも1つのソースシンボル、または該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、および
データの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元することと(304)、
を備える、
方法。 - 該個々のオブジェクトを復元することは、該個々のオブジェクトの1つまたは複数の前に取得されたソースシンボルとデータの該1つまたは複数の受信されたパケットを使用して、該個々のオブジェクトを復元することをさらに備える、請求項8に記載の方法。
- プロセッサに、請求項1乃至9のいずれかの方法を実行させるように構成されたプロセッサ可読命令を記憶する、プロセッサ可読記憶媒体。
- 通信システムにおいて送信機から受信機へとデータを送信するために、m個の個々のオブジェクト(110)をソースシンボルにマッピングするように構成されたシステムであって、該m個の個々のオブジェクトは、オブジェクト1からオブジェクトmへと順序づけられ、m>1であり、該システムは、
該m個の個々のオブジェクトをj=1〜mについての各個々のオブジェクトjを含むアグリゲートオブジェクト(120)にアグリゲートし、該個々のオブジェクトjのデータを含むためにソースシンボルの数S(j)を計算するための手段と、
該アグリゲートオブジェクトをk=0〜Z−1についての各ソースブロックk、および、j=1〜mについての各個々のオブジェクトjを含むZ個のソースブロック(130)へと分割し、ソースブロックkにおける個々のオブジェクトjのソースシンボルの数NSS(j,k)を計算するための手段と、
を備え、
ここで、各個々のオブジェクトjについての該S(j)ソースシンボルは、NSS(j,k)>0についての最初のソースブロックから始まりNSS(j,k)>0についての最後のソースブロックまでである、連続ソースブロック内で連続的に並べられる、システム。 - 各個々のオブジェクトjのデータのバイトは、ソースシンボル0から始まりソースシンボルS(j)−1まである、該個々のオブジェクトjについて該S(j)ソースシンボル内で連続的に並べられ、
該m個の個々のオブジェクトの1つまたは複数のソースシンボルにゼロ値をパッドするための手段、をさらに備える、請求項11に記載のシステム。 - リペアシンボルを生成するために該アグリゲートオブジェクトの該Z個のソースブロックを符号化するための手段と、
該ソースシンボルをソースパケットにマッピングし、該リペアシンボルをリペアパケットにマッピングするための手段と、
該受信機に該リペアパケットと該ソースパケットのうちの1つまたは複数を送信するための手段と、
をさらに備える請求項11に記載のシステム。 - 通信システムにおいて送信機から受信機へと送信されたデータについてソースシンボルにマッピングされた個々のオブジェクト(110)を復元するように構成されたシステムであって、該個々のオブジェクトは、アグリゲートオブジェクト(120)において他の個々のオブジェクトとアグリゲートされ、該アグリゲートオブジェクトは、1つまたは複数のソースブロック(130)に分割され、該個々のオブジェクトの該ソースシンボルは、該アグリゲートオブジェクトの連続ソースブロック内で連続的に並べられており、該システムは、
データの1つまたは複数のパケットを受信するための手段と、データの各パケットは、該アグリゲートオブジェクトの該ソースブロックのうちの1つについてのリペアデータを含んでいる少なくとも1つのリペアシンボルまたは該個々のオブジェクトの少なくとも1つのソースシンボルを含み、該ソースブロックは、該個々のオブジェクトの少なくとも1つのソースシンボルを含み、
データの該1つまたは複数の受信されたパケットを使用して、該個々のオブジェクトを復元するための手段と、
を備える、システム。 - 該個々のオブジェクトを復元するための手段は、該個々のオブジェクトの1つまたは複数の前に取得されたソースシンボルとデータの該1つまたは複数の受信されたパケットを使用して該個々のオブジェクトを復元するための手段、をさらに含む、請求項14に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/717,054 | 2010-03-03 | ||
US12/717,054 US9136981B2 (en) | 2010-03-03 | 2010-03-03 | Block aggregation of objects in a communication system |
PCT/US2011/027078 WO2011109653A1 (en) | 2010-03-03 | 2011-03-03 | Block aggregation of objects in a communication system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014241844A Division JP5823598B2 (ja) | 2010-03-03 | 2014-11-28 | 通信システムにおけるオブジェクトのブロックアグリゲーション |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013521720A JP2013521720A (ja) | 2013-06-10 |
JP5694390B2 true JP5694390B2 (ja) | 2015-04-01 |
Family
ID=43984118
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012556247A Expired - Fee Related JP5694390B2 (ja) | 2010-03-03 | 2011-03-03 | 通信システムにおけるオブジェクトのブロックアグリゲーション |
JP2014241844A Expired - Fee Related JP5823598B2 (ja) | 2010-03-03 | 2014-11-28 | 通信システムにおけるオブジェクトのブロックアグリゲーション |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014241844A Expired - Fee Related JP5823598B2 (ja) | 2010-03-03 | 2014-11-28 | 通信システムにおけるオブジェクトのブロックアグリゲーション |
Country Status (5)
Country | Link |
---|---|
US (1) | US9136981B2 (ja) |
EP (1) | EP2543155B1 (ja) |
JP (2) | JP5694390B2 (ja) |
CN (1) | CN102804661B (ja) |
WO (1) | WO2011109653A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130046540A (ko) * | 2011-10-28 | 2013-05-08 | 삼성에스디에스 주식회사 | 데이터 전송 장치 및 방법 |
US9165456B2 (en) * | 2012-07-24 | 2015-10-20 | Mueller International, Llc | Systems and methods for distributing data within a mesh network |
US10015486B2 (en) * | 2012-10-26 | 2018-07-03 | Intel Corporation | Enhanced video decoding with application layer forward error correction |
CN108924593B (zh) * | 2013-01-18 | 2021-07-06 | 弗劳恩霍夫应用研究促进协会 | 前向纠错数据生成器、生成方法,前向纠错解码器、解码方法,以及存储介质 |
KR102127685B1 (ko) * | 2013-04-17 | 2020-06-29 | 삼성전자주식회사 | 순방향 오류 정정 패킷 송수신 장치 및 방법 |
US9559805B2 (en) * | 2014-11-03 | 2017-01-31 | Cisco Technology, Inc. | Self-describing error correction of consolidated media content |
US10003434B2 (en) | 2016-04-08 | 2018-06-19 | Cisco Technology, Inc. | Efficient error correction that aggregates different media into encoded container packets |
US10785098B1 (en) | 2019-04-30 | 2020-09-22 | Alibaba Group Holding Limited | Network configuration using multicast address modulation |
CN110278054B (zh) * | 2019-04-30 | 2021-11-16 | 创新先进技术有限公司 | 一种配网方法和装置 |
US20240281164A1 (en) * | 2023-02-22 | 2024-08-22 | Sony Group Corporation | Method for signaling memory requirements in atsc3.0 when out-of-order data is being utilized |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5548598A (en) | 1994-03-28 | 1996-08-20 | Motorola | In a data communications systems a method of forward error correction |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US6320520B1 (en) | 1998-09-23 | 2001-11-20 | Digital Fountain | Information additive group code generator and decoder for communications systems |
US6748441B1 (en) * | 1999-12-02 | 2004-06-08 | Microsoft Corporation | Data carousel receiving and caching |
US7072971B2 (en) * | 2000-11-13 | 2006-07-04 | Digital Foundation, Inc. | Scheduling of multiple files for serving on a server |
JP4025709B2 (ja) | 2003-10-30 | 2007-12-26 | 日本電信電話株式会社 | 誤り訂正符号化装置、誤り訂正復号化装置、誤り訂正符号化プログラム、誤り訂正復号化プログラム、誤り訂正符号化プログラムまたは誤り訂正復号化プログラムを記録したコンピュータ読み取り可能な記録媒体 |
KR101161193B1 (ko) * | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
US7590922B2 (en) | 2004-07-30 | 2009-09-15 | Nokia Corporation | Point-to-point repair request mechanism for point-to-multipoint transmission systems |
GB0420540D0 (en) | 2004-09-15 | 2004-10-20 | Nokia Corp | Burst transmission in a digital broadcasting network |
US7676735B2 (en) | 2005-06-10 | 2010-03-09 | Digital Fountain Inc. | Forward error-correcting (FEC) coding and streaming |
KR20070013013A (ko) | 2005-07-25 | 2007-01-30 | 삼성전자주식회사 | 표시 장치 |
US8185794B2 (en) * | 2006-01-05 | 2012-05-22 | Telefonaktiebolaget L M Ericsson (Publ) | Media container file management |
WO2007095551A2 (en) * | 2006-02-13 | 2007-08-23 | Digital Fountain, Inc. | Fec streaming with aggregation of concurrent streams for fec computation |
US9237101B2 (en) * | 2007-09-12 | 2016-01-12 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
US8233532B2 (en) * | 2007-09-21 | 2012-07-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal |
US20090177942A1 (en) * | 2008-01-09 | 2009-07-09 | Nokia Corporation | Systems and methods for media container file generation |
EP2109293A1 (en) | 2008-04-11 | 2009-10-14 | Thomson Licensing | System and method for improving the file transmission reliability |
RU2010150108A (ru) | 2008-05-07 | 2012-06-20 | Диджитал Фаунтин, Инк. (Us) | Быстрое переключение канала и защита потоковой передачи высокого качества по широковещательному каналу |
-
2010
- 2010-03-03 US US12/717,054 patent/US9136981B2/en not_active Expired - Fee Related
-
2011
- 2011-03-03 EP EP20110709543 patent/EP2543155B1/en not_active Not-in-force
- 2011-03-03 JP JP2012556247A patent/JP5694390B2/ja not_active Expired - Fee Related
- 2011-03-03 CN CN201180012012.0A patent/CN102804661B/zh not_active Expired - Fee Related
- 2011-03-03 WO PCT/US2011/027078 patent/WO2011109653A1/en active Application Filing
-
2014
- 2014-11-28 JP JP2014241844A patent/JP5823598B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015084540A (ja) | 2015-04-30 |
EP2543155A1 (en) | 2013-01-09 |
JP2013521720A (ja) | 2013-06-10 |
WO2011109653A1 (en) | 2011-09-09 |
EP2543155B1 (en) | 2013-07-31 |
US9136981B2 (en) | 2015-09-15 |
JP5823598B2 (ja) | 2015-11-25 |
CN102804661B (zh) | 2015-04-22 |
CN102804661A (zh) | 2012-11-28 |
US20110216841A1 (en) | 2011-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5823598B2 (ja) | 通信システムにおけるオブジェクトのブロックアグリゲーション | |
EP1214793B9 (en) | Group chain reaction encoder with variable number of associated input data for each output group code | |
EP1116335B1 (en) | Lost packet recovery method for packet transmission protocols | |
US9288010B2 (en) | Universal file delivery methods for providing unequal error protection and bundled file delivery services | |
US8555146B2 (en) | FEC streaming with aggregation of concurrent streams for FEC computation | |
KR101591238B1 (ko) | Http 서버들 사이의 소스 데이터 및 리페어 데이터의 할당에 의한 컨텐츠 전달 시스템 | |
KR20070008520A (ko) | 파일 다운로드 및 스트리밍 시스템 | |
EP1468497A1 (en) | Multi; stage code generator and decoder for communication systems | |
US9455750B2 (en) | Source block size selection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140227 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140729 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141128 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20141208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5694390 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |