JP5802321B2 - データ送信装置、データ送信プログラムおよびデータ送信方法 - Google Patents

データ送信装置、データ送信プログラムおよびデータ送信方法 Download PDF

Info

Publication number
JP5802321B2
JP5802321B2 JP2014223824A JP2014223824A JP5802321B2 JP 5802321 B2 JP5802321 B2 JP 5802321B2 JP 2014223824 A JP2014223824 A JP 2014223824A JP 2014223824 A JP2014223824 A JP 2014223824A JP 5802321 B2 JP5802321 B2 JP 5802321B2
Authority
JP
Japan
Prior art keywords
data
transmission
block
encoded
blocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014223824A
Other languages
English (en)
Other versions
JP2015073280A (ja
Inventor
裕亮 亀山
裕亮 亀山
秀法 合原
秀法 合原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Ten Ltd
Fujitsu Ltd
Original Assignee
Denso Ten Ltd
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Ten Ltd, Fujitsu Ltd filed Critical Denso Ten Ltd
Priority to JP2014223824A priority Critical patent/JP5802321B2/ja
Publication of JP2015073280A publication Critical patent/JP2015073280A/ja
Application granted granted Critical
Publication of JP5802321B2 publication Critical patent/JP5802321B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、データ送信装置、データ送信プログラムおよびデータ送信方法に関する。
デジタル放送は、環境等によって受信機の受信状態が不安定になることが多いので、デジタルコンテンツなどのデータの送信には、データカルーセル方式(DSM-CC:Digital Storage Media Command and Control)という送信方式が採用されている。このデータカルーセル方式では、受信機側におけるデータの取得精度を向上させることを目的として、同一のデータを決められた期間内で繰り返し送信する。
データカルーセル方式について簡単に説明すると、送信機は、データをDDB(Download Data Block)と呼ばれる可変長の送信用データブロックに分割し、TS(Transport Stream)という単位で受信機へ送信する。受信機側では、送信機から受信したTSからDDBを再構築し、構築できたDDBを順番に並べることで、元のデータを復元する。
例えば、送信機は、元のデータを10個のDDB(d1,d2,d3,...,d10)に分割した場合に、d1からd10までのDDBを順番に送信する。そして、送信機は、データの送信期間として指定された繰り返し期間内にあれば、d1からd10までのDDBの送信をd1からもう一度繰り返す。受信機は、送信機から受信した1回目のDDBのうち、仮にd1を受信できなかった場合であっても、送信機から受信した2回目のDDBによりd1を受信することができれば、元のデータを復元できる。送信機から受信機へのデータの送信は、上述した繰り返し期間内にあれば継続される。よって、受信機は、2回目で元のデータを復元するためのDDBを全て受信できなくても、3回目あるいは4回目で全DDBを取得する機会が得られる。このようなことから、受信機側におけるデータの取得精度を向上できる。
しかしながら、上記したデータカルーセル方式では、受信機側のデータ受信時間に遅れが生じる場合があるという問題点があった。例えば、受信機は、1回目のターンで送信機から受信したDDBのうち、d1からd9までを受信できたが、d10を受信できなかった場合には、2回目のターンでd10を受信するまでに、d1からd9までをもう一度受信することになる。よって、受信機が、2回目のターンで元のデータを復元するための全てのDDBを受信できたとすると、1回目のターンで全て受信できた場合の倍の時間が経過してしまうことになる。さらには、受信機が、3回目のターンで元のデータを復元するための全てのDDBを受信できたとすると、1回目のターンで全て受信できた場合の3倍の時間が経過してしまうことになる。
このように、データカルーセル方式では、受信機の受信状況が悪くなればなるほど、送信機と受信機との間でデータの送受信の繰り返し回数が増え、受信機側のデータ受信時間にさらなる遅れが生じてしまう。
さらに、d1からd9までのDDBは、受信機において既に受信済のDDBであり、元のコンテンツを復元するためには不要なDDBである。にもかかわらず、データカルーセル方式では、d1からd9までのDDBを送信機から受信機に再送信することとなるので、非常に効率の悪い処理にもなっている。
そこで、誤り訂正符号を用いて冗長化したデータをデータカルーセル方式により送信することで、データを繰り返し送信することなく、受信データから消失しているデータを受信機側で復元することを可能とする技術が提案されている。
特開2008−42534号公報
しかしながら、誤り訂正符号を用いて冗長化したデータをデータカルーセル方式で送信する技術では、送信されるDDBに余剰部分が増えてしまうという問題があった。図17は、従来技術の問題点を示す図である。例えば、誤り訂正符号を用いた冗長化では、送信データを同サイズのブロックデータn個に分け、n+k個の符号化データを生成する(n,kは整数)。例えば、図17には、データサイズが5000(Byte)の送信データを冗長化して、8+2=10個の符号化データを生成する場合を示す。
このとき、各ブロックデータのサイズは、5000÷8=625(Byte)となる。データカルーセル方式のDDBのサイズが1000(Byte)である場合には、DDBにはブロックデータを一つだけしか乗せることができないので、1000(Byte)のDDB一つにつき、1000−625=375(Byte)の余剰部分が生じる。送信データのDDBの総数が10個になるので、送信データのDDB全体では、375×10=3750(Byte)もの余剰部分が生じることとなる。
なお、上述してきた問題点は、データカルーセル方式のように、データを分割し、分割したデータをある決められたサイズの送信用データブロックに乗せて、決められた期間内で繰り返し送信するデータ送信の技術に共通した問題点となる。
開示の技術は、上記に鑑みてなされたものであって、受信機側のデータ受信時間の遅延を防止するとともに、DDB内の余剰部分を少なくすることが可能なデータ送信装置、データ送信プログラムおよびデータ送信方法を提供することを目的とする。
一つの態様では、生成部と、送信部と、決定部とを有する。前記生成部は、送信データを所定分割数の所定長単位に分割し、当該分割された送信データ夫々を所定冗長化比率に基づき冗長符号化して冗長化分のブロック及び冗長化分以外のブロックを含む符号化データを生成する。前記送信部は、前記生成部にて生成した前記符号化データの各ブロックを所定格納量の送信用データブロックにブロック単位で順次格納して送信する。前記決定部は、前記送信用データブロックに前記符号化データの各ブロックをブロック単位で順次格納する際に生じる前記送信用データブロック毎の空き領域の合計を、前記分割数を変える毎に算出し、その算出した合計が最小限となる場合の前記分割数を前記所定分割数として決定する。
本願の開示する技術の一つの態様によれば、送信データブロック内の余剰部分を少なくできる。
図1は、実施例1に係るデータ送信装置を示す図である。 図2は、実施例2に係るデータ送信装置の構成を示す図である。 図3は、実施例2に係る送信データの分割数と送信データブロックに生じる余りとの関係を示す図である。 図4は、実施例2に係るデータフローを示す図である。 図5は、実施例2に係るデータ送信装置による処理の流れを示す図である。 図6は、実施例3に係るデータカルーセル方式による符号化されていないデータの送信と、データカルーセル方式による符号化データの送信との比較を示す図である。 図7は、実施例3に係るデータ送信装置による処理の流れを示す図である。 図8は、実施例3に係るデータ送信順序とデータ復元のタイミングを示す図である。 図9は、実施例4に係るデータ送信装置による処理の流れを示す図である。 図10は、実施例4に係るデータ送信順序とデータ復元のタイミングを示す図である。 図11は、実施例5に係るデータ送信装置による処理の流れを示す図である。 図12は、実施例5に係るデータ送信順序とデータ復元のタイミングを示す図である。 図13は、実施例6に係る冗長符号化率を変更した場合のデータフローを示す図である。 図14は、複数の符号化データがそれぞれ有する数ブロックのデータを分配した送信順序例を示す図である。 図15は、実施例6に係るヘッダの圧縮例を示す図である。 図16は、データ送信プログラムを実行するコンピュータを示す図である。 図17は、従来技術の問題点を示す図である。
以下に、図面を参照しつつ、本願の開示するデータ送信装置、データ送信プログラムおよびデータ送信方法の一実施形態について詳細に説明する。なお、以下では、本願の開示するデータ送信装置、データ生成プログラムおよびデータ送受信方法の一実施形態として後述する実施例により、本願が開示する技術が限定されるものではない。
図1は、実施例1に係るデータ送信装置を示す図である。同図に示すように、実施例1に係るデータ送信装置は、符号化データ生成部およびデータ送信部を有する。符号化データ生成部は、送信データのデータサイズに応じて、当該送信データを所定数に分割した後に所定比率で冗長符号化すること、もしくは、当該送信データを所定比率で冗長符号化することで、複数ブロックの符号化データを生成する。データ送信部は、符号化データ生成部により生成された複数ブロックの符号化データを、ある決められたサイズの送信用データブロックに収まるブロック数ごとにまとめて送信する。
上述してきたように、実施例1によれば、データの受信側で、符号化データを復号することで、受信したデータから喪失してしまっているデータを復元できる。また、送信データを分割した後に所定比率で冗長符号化すること、あるいは、送信データをそのまま所定比率で冗長符号化することにより、符号化データの各ブロックのサイズを調整できる。このようなことから、受信機側のデータ受信時間の遅延を防止するとともに、送信用データブロック(DDB)内の余剰部分を少なくできる。
[データ送信装置の構成(実施例2)]
図2は、実施例2に係るデータ送信装置の構成を示す図である。同図に示すように、実施例2に係るデータ送信装置100は、ネットワーク1を介して、データ受信装置200と通信可能な状態で接続される。そして、データ送信装置100は、図2に示すように、分割数決定部110、符号化部120およびデータ送信部130を有する。
分割数決定部110は、例えば、データ入力部などを介して送信データの入力を受け付けると、送信データのデータサイズおよび冗長符号化率(固定ブロックデータ数:冗長データ数)に応じて、送信データの分割数を決定する。例えば、分割数決定部110は、送信データのデータサイズおよび現在の冗長符号化率を固定して、送信データの分割数を2個から10個まで1つずつ増やしていった時に、ある決められたサイズの送信データブロック(DDB)に生じる余りの総計を算出する。そして、分割数決定部110は、算出した送信用データブロックに生じる余りの総計の中で、余りが最小となる時の分割数を送信データの分割数に決定する。
例えば、図3に、送信データの分割数と送信データブロックに生じる余りとの関係を示す。同図に示すように、送信用データブロックに生じる余りは、送信データのデータサイズおよび冗長符号化率を固定である場合、分割数が10前後でほぼ最小となる。よって、分割数決定部110は、送信データの分割数を2から10まで1ずつ変更した時の送信データブロックに生じる余りの総計をそれぞれ算出し、2から10の分割数のうち、算出された余りが最小となる時の分割数を送信データの分割数に決定する。ここで、送信データブロックの生じる余りとは、分割した送信データを所定比率で冗長符号化して生成した複数ブロックの符号化データを、送信用データブロックに収納可能なブロック数ごとにまとめた時に、各送信用データブロックに生じる空き領域の総計である。図3は、実施例2に係る送信データの分割数と送信データブロックに生じる余りとの関係を示す図である。
分割数決定部110は、決定した分割数により送信データを分割する。図4に、実施例2に係るデータフローを示す。同図に示すように、分割数決定部110は、「5000バイト」の送信データについて、分割数を「2」に決定した場合には、「2500バイト」の2つのデータに分割する(同図(1)参照)。
符号化部120は、分割数決定部110により分割された送信データを現在の冗長符号化率で冗長符号化して、複数ブロックの符号化データを生成する。例えば、図4に示すように、符号化部120は、分割数決定部110により分割された分割送信データ(2500バイト)を、現在の冗長符号化率(「8(固定ブロックデータ数)」:「2(冗長データ数)」)でそれぞれ冗長符号化する(同図(2)参照)。なお、符号化部120は、2500バイトずつに分割された分割送信データを均等なサイズの8つのブロックデータに分けると、端数が出てしまう。よって、各分割送信データに4バイトずつ、計8バイトのダミーデータを加えることで、ブロックデータあたり「313バイト」の複数ブロックの符号化データ(A〜J)を各分割送信データから生成する。
データ送信部130は、符号化部120により生成された複数ブロックの符号化データ(例えば、A〜J)を、ある決められたサイズの送信用データブロックに収まるブロック数ごとにまとめてデータカルーセル方式で繰り返し送信する。例えば、図4に示すように、データ送信部130は、データ送信部130は、「313バイト」の複数ブロックの符号化データ(A〜J)を、送信用データブロックのサイズ「1000バイト」に収まるブロック数である3ブロック(例えば、A〜C,・・・)ずつまとめて送信する。
図4に示すように、各送信用データブロックの余り(空き領域)の合計が、61×6=366バイトとなる。よって、データ送信装置100は、データカルーセル方式の1回の送信で生じるデータブロックの余りを、合計366+374=740バイトに抑えることができる。図4は、実施例2に係るデータフローを示す図である。
データ受信装置200は、図2に示すように、データ受信部210およびデータ復号部220を有する。データ受信部210は、データ送信装置100から送信された符号化データを受信する。データ復号部220は、データ受信部210により受信された符号化データを復号してデータを復元し、復元したデータを受信データとして出力する。
[データ送信装置による処理(実施例2)]
図5は、実施例2に係るデータ送信装置による処理の流れを示す図である。同図に示すように、分割数決定部110は、送信データの入力を受け付けると(ステップS1肯定)、送信データのデータサイズおよび冗長符号化率に応じて送信データの分割数を決定し、決定した分割数により送信データを分割する(ステップS2)。
符号化部120は、分割数決定部110により分割された送信データを現在の冗長符号化率で冗長符号化して、複数ブロックの符号化データを生成する(ステップS3)。データ送信部130は、符号化部120により生成された複数ブロックの符号化データ(例えば、A〜J)を、固定サイズの送信用データブロックのサイズに収まるブロック数ごとにまとめてデータカルーセル方式で送信する(ステップS4)。
[実施例2による効果]
上述してきたように、データ送信装置100は、送信データのデータサイズに応じて、当該送信データを所定数に分割した後に所定比率で冗長符号化する。そして、データ送信装置100は、符号化データ生成部により生成された複数ブロックの符号化データを、送信用データブロックのサイズに収まるブロック数ごとにまとめて送信する。よって、データ送信装置100は、符号化データの各ブロックのサイズを調整できる。また、データ受信装置200は、データ送信装置100から受信したデータを復号することによりデータを復元できる。このようなことから、実施例2によれば、受信機側のデータ受信時間の遅延を防止するとともに、送信用データブロック(DDB)内の余剰部分を少なくできる。
上記の実施例において、データ送信装置100は、一つ以上の複数の送信データを符号化し、各符号化データをデータ受信装置200に送信する際に、符号化データの送信順序を制御するようにしてもよい。
[データ送信装置の構成(実施例3)]
実施例3に係るデータ送信装置の構成は、実施例2に係るデータ送信装置100と基本的には同様の構成であるが、以下に説明する点が異なる。
符号化部120は、例えば、データ入力部などを介して複数の送信データの入力を受け付けると、冗長度+100%の符号化データを送信データからそれぞれ生成する。ここで、冗長度+100%とは、符号化データのブロックデータ数と冗長データ数とが同数となる冗長符号化であり、冗長データ数と同数の符号化データが揃えば、喪失したデータを復元できる。
データ送信部130は、符号化部120により生成された各符号化データを送信する場合に、まず、一方の符号化データのブロックデータ部分(例えば、図4のA〜Hに相当する部分)を送信用データブロックに収める。続いて、データ送信部130は、同一の符号化データの冗長化分(例えば、図4のI,Jに相当する部分)を送信用データブロックに収める。同様に、他方の符号化データのブロックデータ部分および冗長化分を送信用データブロックに収める。そして、データ送信部130は、各符号化データを挿入した送信用データブロックをデータカルーセル方式でデータ受信装置200に送信する。
図6に、データカルーセル方式による符号化されていないデータの送信と、データカルーセル方式による符号化データの送信との比較を示す。例えば、同図に示すように、データ送信部130は、冗長度+100%で冗長符号化された符号化データXについて、符号化データのブロックデータ部分を送信用データブロック(DDB)1〜5に収めてから、冗長化分を送信用データブロック6〜10に収めて送信する。同様に、データ送信部130は、冗長度+100%で冗長符号化された符号化データYについて、符号化データのブロックデータ部分を送信用データブロック1〜5に収めてから、冗長化分を送信用データブロック6〜10に収めて送信する。図6は、実施例3に係るデータカルーセル方式による符号化されていないデータの送信と、データカルーセル方式による符号化データの送信との比較を示す図である。
[データ送信装置による処理(実施例3)]
図7は、実施例3に係るデータ送信装置による処理の流れを示す図である。同図に示すように、分割数決定部110は、複数の送信データの入力を受け付けると(ステップS1肯定)、各送信データのデータサイズおよび冗長符号化率に応じて送信データの分割数を決定し、決定した分割数により送信データをそれぞれ分割する(ステップS2)。
符号化部120は、分割数決定部110により分割された送信データを現在の冗長符号化率で冗長符号化して、符号化データXおよびYを生成する(ステップS3)。データ送信部130は、符号化部120により生成された符号化データXを、ブロックデータ部分、冗長化分の順に送信用データブロックに収めてから、符号化データYを同様の手順で送信用データブロックに収めて送信する(ステップS4)。
[実施例3による効果]
図8は、実施例3に係るデータ送信順序とデータ復元のタイミングを示す図である。同図(1)は、データ受信装置200の受信データに喪失部分がない場合に、符号化されているデータと符号化されていないデータのそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図(2)は、符号化されていない5番目の送信データが受信データから喪失している場合と、符号化された5番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図の(3)は、符号化されていない9番目の送信データが受信データから喪失している場合と、符号化された9番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。
同図(2)に示すように、データXの5番目と、データXの5番目に対応する符号化データXの5番目が受信データから喪失している場合には、データ受信装置200におけるデータ復元のタイミングは同じとなる。また、同図(3)に示すように、データXの9番目と、データXの9番目に対応する符号化データXの9番目が受信データから喪失している場合には、符号化データで送信する方がデータ受信装置200におけるデータ復元のタイミングは早くなる。なお、同図(1)に示すように、データ受信装置200の受信データに喪失部分がない場合には、送信データを符号化しないで送信する方が、データ受信装置200におけるデータ復元のタイミングは早くなる。
上述してきたように、実施例3によれば、符号化データのブロックデータ部分、冗長化分の順に送信することにより、受信データに喪失がある場合には、送信データを符号化しない場合よりも受信データの復元が遅れることはない。よって、受信データに喪失がある場合には、受信機側のデータ受信時間の遅延をできる限り防止することができる。
上記の実施例3では、データ送信装置100は、複数の送信データを符号化し、各符号化データをブロックデータ部分、冗長化分の順に送信する場合を説明したが、これに限定されるものではない。例えば、各符号化データのブロックデータ部分、各符号化データの冗長化分の順に送信するようにしてもよい。
[データ送信装置の構成(実施例4)]
実施例4に係るデータ送信装置の構成は、実施例3に係るデータ送信装置100と以下に説明する点が異なる。
データ送信部130は、符号化部120により生成された各符号化データを送信する場合に、まず、符号化データX,Yのブロックデータ部分を送信用データブロックに収める。続いて、データ送信部130は、符号化データX,Yの冗長化分を送信用データブロックに収める。そして、データ送信部130は、符号化データX,Yを挿入した送信用データブロックをデータカルーセル方式でデータ受信装置200に送信する。
[データ送信装置による処理(実施例4)]
図9は、実施例4に係るデータ送信装置による処理の流れを示す図である。同図に示すように、分割数決定部110は、複数の送信データの入力を受け付けると(ステップS1肯定)、各送信データのデータサイズおよび冗長符号化率に応じて送信データの分割数を決定し、決定した分割数により送信データをそれぞれ分割する(ステップS2)。
符号化部120は、分割数決定部110により分割された送信データを現在の冗長符号化率で冗長符号化して、符号化データXおよびYを生成する(ステップS3)。データ送信部130は、符号化部120により生成された符号化データXのブロックデータ部分、符号化データYのブロックデータ部分、符号化データXの冗長化分、符号化データYの冗長化分の順に送信用データブロックに収めて送信する(ステップS4)。
[実施例4による効果]
図10は、実施例4に係るデータ送信順序とデータ復元のタイミングを示す図である。同図(1)は、データ受信装置200の受信データに喪失部分がない場合に、符号化されているデータと符号化されていないデータのそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図(2)は、符号化されていない5番目の送信データが受信データから喪失している場合と、符号化された5番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図の(3)は、符号化されていない9番目の送信データが受信データから喪失している場合と、符号化された9番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。
同図(1)に示すように、データ受信装置200の受信データに喪失部分がない場合には、データ受信装置200におけるデータ復元のタイミングは同じとなる。また、同図(2)に示すように、データXの5番目と、データXの5番目に対応する符号化データXの5番目が受信データから喪失している場合には、符号化データで送信する方がデータ受信装置200におけるデータ復元のタイミングは早くなる。また、同図(3)に示すように、データYの4番目(符号化なしの9番目)と、データYの4番目に対応する符号化データYの4番目(符号化ありの9番目)が受信データから喪失している場合には、次のような結果が得られる。すなわち、符号化データで送信する方がデータ受信装置200におけるデータ復元のタイミングは早くなる。
上述してきたように、実施例4によれば、各符号化データのブロックデータ部分、冗長化分の順に送信することにより、受信データに喪失があるか否かに関わらず、送信データを符号化しない場合よりも受信データの復元を早くできる場合が多くなる。よって、受信機側のデータ受信時間の遅延を防止しつつ、送信データを符号化しない場合よりも、受信データの復元タイミングをより多く早めることができる。
また、上述した実施例3および実施例4のように、符号化データの送信タイミングを制御する場合に限られるものではなく、符号化データX,Yの各ブロックを送信用データブロックに交互に収めて送信するようにしてもよい。
[データ送信装置の構成(実施例5)]
実施例4に係るデータ送信装置の構成は、実施例3に係るデータ送信装置100と以下に説明する点が異なる。
データ送信部130は、符号化部120により生成された各符号化データを送信する場合に、まず、符号化データXの各ブロック(ブロックデータ部分および冗長化分の各ブロック)を送信用データブロックに収める。続いて、データ送信部130は、符号化データの各ブロックを送信用データブロックに収める。符号化データX,Yを全て送信用データブロックに収めるまで、符号化データX,Yの各ブロックを送信用データブロックに交互に収めてデータカルーセル方式でデータ受信装置200に送信する。
[データ送信装置による処理(実施例5)]
図11は、実施例5に係るデータ送信装置による処理の流れを示す図である。同図に示すように、分割数決定部110は、複数の送信データの入力を受け付けると(ステップS1肯定)、各送信データのデータサイズおよび冗長符号化率に応じて送信データの分割数を決定し、決定した分割数により送信データをそれぞれ分割する(ステップS2)。
符号化部120は、分割数決定部110により分割された送信データを現在の冗長符号化率で冗長符号化して、符号化データXおよびYを生成する(ステップS3)。データ送信部130は、符号化部120により生成された符号化データX,Yの各ブロックを送信用データブロックに交互に収めて送信する(ステップS4)。
[実施例5による効果]
図12は、実施例5に係るデータ送信順序とデータ復元のタイミングを示す図である。同図(1)は、データ受信装置200の受信データに喪失部分がない場合に、符号化されているデータと符号化されていないデータのそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図(2)は、符号化されていない5番目の送信データが受信データから喪失している場合と、符号化された5番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。同図の(3)は、符号化されていない9番目の送信データが受信データから喪失している場合と、符号化された9番目の送信データが受信データから喪失している場合とにそれぞれ対応したデータ受信装置200におけるデータ復元のタイミングを示す。
同図(1)に示すように、データ受信装置200の受信データに喪失部分がない場合には、データ受信装置200におけるデータ復元のタイミングは同じとなる。同図(2)に示すように、符号化されていない送信データの5番目と、これに対応する符号化された送信データの5番目が受信データから喪失している場合には、符号化データで送信する方がデータ受信装置200におけるデータ復元のタイミングは早くなる。また、同図(3)に示すように、符号化されていない送信データの9番目と、これに対応する符号化された送信データの9番目が受信データから喪失している場合には、符号化データで送信する方がデータ受信装置200におけるデータ復元のタイミングは早くなる。
上述してきたように、実施例5によれば、各符号化データの各ブロックを送信用データブロックに交互に収めて送信することにより、受信データに喪失があるか否かに関わらず、送信データを符号化しない場合よりも受信データの復元を早くできる場合が多くなる。よって、受信機側のデータ受信時間の遅延を防止しつつ、送信データを符号化しない場合よりも、受信データの復元タイミングをより多く早めることができる。
以下、本願の開示するデータ送信装置、データ生成プログラムおよびデータ送受信方法の他の実施形態を説明する。
(1)冗長符号化率を変更して符号化データを生成
上記の実施例2では、データ送信装置100は、次のような処理を実行することで符号化データを生成する場合を説明した。すなわち、データ送信装置100は、送信データのデータサイズに応じて、送信用データブロックのサイズと送信用データブロックに収められた複数ブロックの符号化データの合計サイズとの差分が最小となるような分割数を決定する。すなわち、送信用データブロックの余りが最小となるような分割数を決定する。そして、データ送信装置100は、決定した分割数で送信用データを分割したした後に所定の冗長符号化率で冗長符号化することで複数ブロックの符号化データを生成する。
しかしながら、上記の実施例2で説明した処理に限定されることなく、データ送信装置100は、次のような処理を行って符号化データを生成してもよい。例えば、データ送信装置100は、送信データのデータサイズに応じて、送信用データブロックのサイズと送信用データブロックに収められた複数ブロックの符号化データの合計サイズとの差分が最小となるような冗長符号化率を求める。つまり、送信用データブロックの余りが最小となるような冗長符号化率を求める。そして、データ送信装置100は、求めた冗長符号化率で送信データを冗長符号化して符号化データを生成する。
例えば、図13に示すように、5000バイトの送信データから符号化データを生成して送信用データブロックに収めた時の余りが最小となる時の冗長符号化率が「10+3(固定ブロックデータ数10:冗長データ数3)」と求められたとする。この場合には、送信データから13ブロックの符号化データを生成し、生成した符号化データの各ブロックを可能な範囲で送信用データブロックに収めていくと、送信データブロックの余りは500バイトとなる。上記の実施例2では、送信データブロックの余りは740バイトであったので、上述した実施例2によりも送信データブロックの余りを抑えることができる。図13は、実施例6に係る冗長符号化率を変更した場合のデータフローを示す図である。
なお、上述した図13では、送信用データブロックに符号化データのブロックを2個収める場合が例示されているが、これに限られるものではない。例えば、送信用データブロックの余りをできるだけ少なくするという目的を満足する範囲で、送信用データブロックに符号化データのブロックを1個収めるように、冗長符号化率を変更してもよい。
また、送信用データブロックの余りが最小となるような分割数および冗長符号化率の双方を求めて、求めた分割数および冗長符号化率を用いて、送信データから符号化データを生成するようにしてもよい。
(2)複数の符号化データの送信順序の制御例
また、データ送信装置100は、上記の実施例3〜5で説明したようにして、符号化データの送信順序を制御する場合に限られるものではない。例えば、データ送信装置100は、複数の符号化データがそれぞれ有する数ブロックのデータを、複数のブロック集合に分配して、分配された複数のブロック集合を順に送信用データブロックに収めて送信するようにしてもよい。
例えば、図14に、複数の符号化データがそれぞれ有する数ブロックのデータを分配した送信順序例を示す。同図では、送信データA〜Cのそれぞれから「冗長化+200%」で符号化データを生成した場合を示す。そして、データ送信装置100は、送信データA〜Cから生成した各符号化データのブロックを、冗長化分以外の部分、0〜100%までの冗長化部分、100〜200%までの冗長化部分の各集合に分配して、各集合を順に送信用データブロックに収めて送信する。図14は、複数の符号化データがそれぞれ有する数ブロックのデータを分配した送信順序例を示す図である。
例えば、図14に示すように、送信データAから生成した符号化データのブロック1〜4、送信データBから生成した符号化データのブロック1,2、および送信データCから生成した符号化データのブロック1が一つの集合となるように分配する。同様に、送信データAから生成した符号化データのブロック5〜8、送信データBから生成した符号化データのブロック3,4、および送信データCから生成した符号化データのブロック2が一つの集合となるように分配する。同様に、送信データAから生成した符号化データのブロック9〜12、送信データBから生成した符号化データのブロック5,6、および送信データCから生成した符号化データのブロック3が一つの集合となるように分配する。そして、データ送信装置100は、各符号化データの数ブロックを有する各集合を順に送信用データブロックに収めて送信する。
(3)符号化データのヘッダの圧縮
また、データ送信装置100は、同一の送信用データブロックに収められる符号化データの情報(ブロック番号、符号化ビット列)を、同一のヘッダに挿入することで、符号化データごとに付加されるヘッダを圧縮するようにしてもよい。
例えば、図15に示すように、データ送信装置100は、同一の送信用データごとにヘッダを一つだけ用意する。そして、同一の送信用データブロックに収められる各ブロックのブロック番号(ブロックを一意に特定する情報)、符号化ビット列(ブロック内の符号化データを一意に特定する情報)、および送信ブロック内のブロック数を示す個数を同一のヘッダに収める。このようにすることで、送信用データブロック内のヘッダを圧縮することができ、符号化データのサイズが小さくなった場合にヘッダが無視できないくらいに大きくなってしまう事態を防止できる。
また、データ受信装置200は、データ送信装置100から受信した送信用データブロックのヘッダ部分から、ブロック番号、符号化ビット列および個数の情報を抽出する。そして、データ受信装置200は、送信用データブロックに収められたブロックと、ブロック番号および符号化ビット列とを対応付けて、符号化データを復号することでデータの復元することができる。図15は、実施例6に係るヘッダの圧縮例を示す図である。
(4)装置構成等
例えば、図2に示したデータ送信装置100の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、データ送信装置100の分散・統合の具体的形態は図示のものに限られず、例えば、分割数決定部110と符号化部120とを機能的または物理的に統合する。このように、データ送信装置100の全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
(5)データ送信プログラム
また、例えば、上記の実施例で説明したデータ送信装置100の各種の処理(例えば、図7、9、11等参照)は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図16を用いて、上記の実施例で説明したデータ送信装置100と同様の機能を有するデータ送信プログラムを実行するコンピュータの一例を説明する。図16は、データ送信プログラムを実行するコンピュータを示す図である。
同図に示すように、データ送信装置としてコンピュータ300は、通信制御部310、HDD320、RAM330およびCPU340をバス400で接続して構成される。
ここで、通信制御部310は、各種情報のやり取りに関する通信を制御する。HDD320は、CPU340による各種処理の実行に必要な情報を記憶する。RAM330は、各種情報を一時的に記憶する。CPU340は、各種演算処理を実行する。
そして、HDD320には、図16に示すように、例えば、図2に示したデータ送信装置100の各処理部と同様の機能を発揮するデータ生成プログラム321と、データ生成用データ322とがあらかじめ記憶されている。なお、このデータ生成プログラム321を適宜分散させて、ネットワークを介して通信可能に接続された他のコンピュータの記憶部に記憶させておくこともできる。
そして、CPU340が、このデータ生成プログラム321をHDD320から読み出してRAM330に展開することにより、図16に示すように、データ生成プログラム321はデータ生成プロセス331として機能するようになる。
すなわち、データ生成プロセス331は、データ生成用データ322等をHDD320から読み出して、RAM330において自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種処理を実行する。
なお、データ生成プロセス331は、例えば、図2に示したデータ送信装置100の各処理部において実行される処理に対応する。特に、図2に示す分割数決定部110および符号化部120において実行される処理に対応する。
なお、上記したデータ送信プログラム321については、必ずしも最初からHDD320に記憶させておく必要はない。
例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ300がこれらから各プログラムを読み出して実行するようにしてもよい。
さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ300に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておく。そして、コンピュータ300がこれらから各プログラムを読み出して実行するようにしてもよい。
なお、上述してきた各実施例は、データカルーセル方式のように、データを分割し、分割したデータをある決められたサイズのデータブロックに乗せて、決められた期間内で繰り返し送信するデータ送信の技術に同様に適用できる。
1 ネットワーク
100 データ送信装置
110 分割数決定部
120 符号化部
130 データ送信部
200 データ受信装置
210 データ受信部
220 データ復号部
300 コンピュータ
310 通信制御部
320 HDD(Hard Disk Drive)
321 データ生成プログラム
322 データ生成用データ
330 RAM(Random Access Memory)
331 データ生成プロセス
340 CPU(Central Processing Unit)
400 バス

Claims (9)

  1. 送信データを所定分割数の所定長単位に分割し、当該分割された送信データ夫々を所定冗長化比率に基づき冗長符号化して冗長化分のブロック及び冗長化分以外のブロックを含む符号化データを生成する生成部と、
    前記生成部にて生成した前記符号化データの各ブロックを所定格納量の送信用データブロックにブロック単位で順次格納して送信する送信部と、
    前記送信用データブロックに前記符号化データの各ブロックをブロック単位で順次格納する際に生じる前記送信用データブロック毎の空き領域の合計を、前記分割数を変える毎に算出し、その算出した合計が最小限となる場合の前記分割数を前記所定分割数として決定する決定部と
    を有することを特徴とするデータ送信装置。
  2. 前記決定部は、
    前記送信データのデータサイズに応じて、前記送信用データブロックの所定格納量と、当該送信用データブロックに格納する複数ブロックの符号化データの合計サイズとの差分に基づき、前記送信用データブロック毎の空き領域の合計を算出することを特徴とする請求項1に記載のデータ送信装置。
  3. 前記生成部は、
    一つ以上の送信データについて、それぞれ前記符号化データを生成し、
    前記送信部は、
    前記送信データのうち1つ目のデータに対応する符号化データを、前記冗長化分以外のブロック、前記冗長化分のブロックの順に前記送信用データブロックに格納し、前記送信データのうち2つ目のデータに対応する符号化データを、前記冗長化分以外のブロック、前記冗長化分のブロックの順に前記送信用データブロックに格納し、3つ目以降のデータについても、同様に前記送信用データブロックに格納して送信することを特徴とする請求項1に記載のデータ送信装置。
  4. 前記送信部は、
    前記1つ目のデータに対応する符号化データの前記冗長化分以外のブロック、前記2つ目のデータに対応する符号化データの前記冗長化分以外のブロックの順にすべての送信データに対応する符号化データの前記冗長化分以外のブロックを前記送信用データブロックに格納した後、前記1つ目のデータに対応する符号化データの前記冗長化分のブロック、前記2つ目のデータに対応する符号化データの前記冗長化分のブロックの順にすべての送信データに対応する符号化データの前記冗長化分のブロックを前記送信用データブロックに格納して送信することを特徴とする請求項3に記載のデータ送信装置。
  5. 前記送信部は、
    前記1つ目のデータに対応する符号化データの1ブロック、前記2つ目のデータに対応する符号化データの1ブロックの順にすべての送信データに対応する符号化データのブロックを前記送信用データブロックに順番に格納して送信することを特徴とする請求項3に記載のデータ送信装置。
  6. 前記生成部は、
    第3の送信データ、第4の送信データおよび第5の送信データについて前記符号化データを生成し、
    前記送信部は、
    前記第3のデータに対応する符号化データ、前記第4のデータに対応する符号化データおよび前記第5のデータに対応する符号化データを、前記第3のデータに対応する符号化データの数ブロック、前記第4のデータに対応する符号化データの数ブロックおよび前記第5のデータに対応する符号化データの数ブロックを有する複数のブロック集合に分配して、当該分配された複数のブロック集合を順に前記送信用データブロックに格納して送信することを特徴とする請求項3に記載のデータ送信装置。
  7. 前記送信部は、
    前記生成部により生成された符号化データを送信する場合に、同一の前記送信用データブロックに格納される符号化データについて、当該符号化データの最小単位のブロックを一意に特定する情報と、当該最小単位のブロックの符号化データを特定する情報と、前記送信用データブロックに挿入される符号化データのブロック数の情報とを同一のヘッダに挿入することを特徴とする請求項1に記載のデータ送信装置。
  8. コンピュータに、
    送信データを所定分割数の所定長単位に分割し、当該分割された送信データ夫々を所定冗長化比率に基づき冗長符号化して冗長化分のブロック及び冗長化分以外のブロックを含む符号化データを生成し、
    生成した前記符号化データの各ブロックを所定格納量の送信用データブロックにブロック単位で順次格納して送信し、
    前記送信用データブロックに前記符号化データの各ブロックをブロック単位で順次格納する際に生じる前記送信用データブロック毎の空き領域の合計を、前記分割数を変える毎に算出し、その算出した合計が最小限となる場合の前記分割数を前記所定分割数として決定する
    処理を実行させることを特徴とするデータ送信プログラム。
  9. 送信装置は、
    送信データを所定分割数の所定長単位に分割し、当該分割された送信データ夫々を所定冗長化比率に基づき冗長符号化して冗長化分のブロック及び冗長化分以外のブロックを含む符号化データを生成し、
    生成した前記符号化データの各ブロックを所定格納量の送信用データブロックにブロック単位で順次格納して送信し、
    前記送信用データブロックに前記符号化データの各ブロックをブロック単位で順次格納する際に生じる前記送信用データブロック毎の空き領域の合計を、前記分割数を変える毎に算出し、その算出した合計が最小限となる場合の前記分割数を前記所定分割数として決定する
    処理を実行することを特徴とするデータ送信方法。
JP2014223824A 2014-10-31 2014-10-31 データ送信装置、データ送信プログラムおよびデータ送信方法 Expired - Fee Related JP5802321B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014223824A JP5802321B2 (ja) 2014-10-31 2014-10-31 データ送信装置、データ送信プログラムおよびデータ送信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014223824A JP5802321B2 (ja) 2014-10-31 2014-10-31 データ送信装置、データ送信プログラムおよびデータ送信方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011534011A Division JPWO2011039874A1 (ja) 2009-09-30 2009-09-30 データ送信装置、データ生成プログラムおよびデータ送受信方法

Publications (2)

Publication Number Publication Date
JP2015073280A JP2015073280A (ja) 2015-04-16
JP5802321B2 true JP5802321B2 (ja) 2015-10-28

Family

ID=53015334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014223824A Expired - Fee Related JP5802321B2 (ja) 2014-10-31 2014-10-31 データ送信装置、データ送信プログラムおよびデータ送信方法

Country Status (1)

Country Link
JP (1) JP5802321B2 (ja)

Also Published As

Publication number Publication date
JP2015073280A (ja) 2015-04-16

Similar Documents

Publication Publication Date Title
KR101451338B1 (ko) 인코딩 및 디코딩 프로세스들을 위해 심볼들의 영속적 비활성화에 의한 fec 코드들을 활용하는 방법 및 장치
KR102133930B1 (ko) 데이터 패킷 송수신 장치 및 방법
CN101427495B (zh) 用于通信系统的基于多域的码生成器和解码器
CN110943800B (zh) 数据包的发送方法、装置及系统、存储介质、电子装置
TWI445323B (zh) 資料傳送的混合式編解碼裝置與方法
CN104040976B (zh) 用于丢失实时媒体分组恢复的方法和装置
JP2006031693A (ja) ネットワークコーディングを使用したコンテンツ配信
CN109525368B (zh) 基于线性网络编码的混合传输方法、电子设备和存储介质
CN108777606B (zh) 解码方法、设备及可读存储介质
MX2014013560A (es) Aparato y metodo de transmision y recepcion de paquete en sistema de radiofusion y comunicacion.
CN109327283B (zh) 一种网络自适应的抗丢包方法、装置及终端设备
CN101540778B (zh) 一种数据传输的方法、装置和系统
CN102088331B (zh) 一种数据传输方法及网络节点
CN106105076B (zh) 在广播和/或通信系统中生成并恢复分组的方法和设备
KR101314301B1 (ko) 통신 네트워크에서 데이터를 인코딩하기 위한 방법 및 장치
CN109245863B (zh) 用于传输和接收前向纠错分组的装置和方法
WO2011039874A1 (ja) データ送信装置、データ生成プログラムおよびデータ送受信方法
JP5802321B2 (ja) データ送信装置、データ送信プログラムおよびデータ送信方法
JP5476803B2 (ja) 電子情報を効率的に転送するシステム及び方法
CN111447044A (zh) 分布式存储方法和传输译码方法
CN104052503B (zh) 纠错码
JP2007324876A (ja) データ送信装置、データ受信装置、データ送信方法、データ受信方法、及びプログラム
KR101575939B1 (ko) 이진 데이터의 압축 및 복원 방법과 장치
CN113518113B (zh) 一种基于区块链和里德-所罗门码的文件存储方法、计算机设备及存储介质
CN112286449B (zh) 一种rs纠删处理设备及分布式存储系统

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150820

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: 20150825

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150828

R150 Certificate of patent or registration of utility model

Ref document number: 5802321

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees