JP2004159101A - データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム - Google Patents
データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム Download PDFInfo
- Publication number
- JP2004159101A JP2004159101A JP2002323062A JP2002323062A JP2004159101A JP 2004159101 A JP2004159101 A JP 2004159101A JP 2002323062 A JP2002323062 A JP 2002323062A JP 2002323062 A JP2002323062 A JP 2002323062A JP 2004159101 A JP2004159101 A JP 2004159101A
- Authority
- JP
- Japan
- Prior art keywords
- data
- divided
- information
- divided data
- electronic
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
【課題】データ送信装置からデータ受信装置へテキストや静止画を含む静的な電子データを高い信頼性で送信できるデータ伝送方法を提供する。
【解決手段】本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置200からデータ受信装置300に送信するコネクションレス型のデータ伝送方法であって、電子データを分割して分割データを生成する電子データ分割ステップと、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与ステップと、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置200からデータ受信装置300に繰り返し送信する分割データ送信ステップと、を有する。
【選択図】 図6
【解決手段】本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置200からデータ受信装置300に送信するコネクションレス型のデータ伝送方法であって、電子データを分割して分割データを生成する電子データ分割ステップと、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与ステップと、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置200からデータ受信装置300に繰り返し送信する分割データ送信ステップと、を有する。
【選択図】 図6
Description
【0001】
【発明の属する技術分野】
本発明は、コネクションレス型のデータ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システムに関する。
【0002】
【従来の技術】
近年、IP(Internet Protocol)技術を利用したインターネットが普及し、インターネット上でテキストコンテンツや音声・映像等のマルチメディアコンテンツをやり取りすることが容易になってきている。また、放送コンテンツをインターネット上で配信するインターネット放送も注目を集めており、マルチキャスト技術やブロードキャスト技術に関する研究・開発が盛んに行われている。
【0003】
インターネット上で音声や映像等のマルチメディアコンテンツをストリーミング配信するプロトコルとしてRTP(Real−time Transport Protocol)がIEFT(Internet Engineering Task Force)のRFC(Request For Comment)1889(非特許文献1)により規定されている。RTPにより、ペイロードタイプ・符号化方式の通知やシーケンス番号の付与、再生・表示時刻の通知が可能となる。それに対し、テキストや静止画等の静的な電子データを送信する場合には、通常TCP(Transmission Control Protocol)を用いて信頼性の高い伝送が行われる。しかし、放送方通信形態で上述のような静的な電子データを送信する場合、通常放送局から端末までの下りチャネルしかなく、端末から放送局までの上りチャネルが存在しないため、TCPのように上りチャネルのフィードバック情報(Ack)を用いた信頼性放送を適用することができない。
【0004】
上述の課題から、IEFTのRMT(Reliable Multicast Transport)Working Groupでは、FEC(Forward Error Correction)を用いて、片方向チャネル上でも信頼性高く伝送できる方式を検討している。しかし、現在具体的なフォーマットや伝送方法については規定していない。また、RMT Working Groupでは単一のファイルを信頼性高く伝送することのみ検討されており、放送型通信で同時に伝送される音声データや映像データとの同期再生については検討されていない。
【0005】
電波産業界(ARIB)の規格ARIB STD−B24(非特許文献2)では、デジタル放送用にテキスト情報や静止画像等の静的な電子データを伝送するデータカルーセル方式が規定されている。本方式により音声やビデオデータとの同期も可能であり、かつ繰り返し送信により信頼性のあるテキスト情報の送信を可能としている。しかし、本方式をIPネットワーク上で実現しようとすると、IPヘッダのオーバーヘッド及びデータカルーセル方式のオーバーヘッドのため、効率的な伝送ができないという問題点があった。また、特開2002−124987号公報(特許文献1)に示される技術のように、IPパケットをデータカルーセルフォーマット上で伝送する方法が提案されている。しかし、上記公報記載の技術は、デジタル放送においてIPパケットを伝送する技術であり、それ以外のIPネットワークへの適用は不可能である。
【0006】
IEFTのAVT(Audio/Video Transport)Working Groupでは、テキストや静止画等の電子データを、RTPを用いて伝送するフォーマットがドラフトdraft−westerlund−avt−rtp−static−media−01.txt(非特許文献3)で提案されている。RTP上で静的な電子データを送信することにより、RTPを用いて伝送される音声やビデオデータと同期再生が容易となり、またRTP以外の特別なプロトコルを実装する必要がなく、実装が容易になるといった利点が挙げられる。
【0007】
上述のドラフトではRTPヘッダ及びペイロードヘッダを以下の通り規定している。
【0008】
図1は、RTPヘッダを示す構成図である。RTPヘッダのバージョンフィールド(V)、パディングビット(P)、拡張ビット(X)、寄与送信元カウントフィールド(CC)はRTPの規格RFC1889に従っている。マーカビット(M)は、当該RTPパケットが電子データの最後のセグメントを含む場合に1にセットされ、それ以外の場合には0にセットされる。ペイロードタイプフィールドには、RTPパケットのペイロードタイプに関する識別子が挿入される。シーケンス番号フィールドは新たにパケットが生成・送信されるたびに1つずつ増加する。タイムスタンプフィールドには、当該RTPパケットを受信するデータ受信装置が、当該RTPパケットに含まれる電子データを使用すべき時刻に関する情報が含まれる。同期送信元識別子フィールドはRFC1889に従い、当該RTPパケットの送信装置の同期送信元識別子が格納される。
【0009】
また、RTPヘッダに続くペイロードには、配信される電子データや、当該電子データの有効期間に関する情報などが含まれる。ペイロードに何の情報が含まれているか識別するために、各情報の先頭1バイトにペイロードヘッダが付与され、続いて該当する情報が挿入される。
【0010】
図2は、RTPパケットの構成例を示す図である。RTPヘッダに続いて1バイトのペイロードヘッダが続いている。図2では、「2」の値が挿入されているが、これは次に続く情報が電子データの有効期間に関する情報であることを表しており、4バイトの有効期間情報が続いて挿入される。次の1バイトには「0」の値が挿入されており、続く情報が配信される電子データそのもの、もしくは分割された電子データの一部であることを示している。
【0011】
図3は、RTPフォーマットを用いて電子データを配信するときのデータ送信装置とデータ受信装置との間のシーケンスの例を示す図である。図3中の「SN」はRTPヘッダのシーケンス番号を示し、「M」はマーカビットを示す。本例では、データ送信装置は、最初の電子データ1を3つに分割し、それぞれRTPパケットを構成する。RTPパケットには順にSN=1、2、3のシーケンス番号が付与される。SN=1及びSN=2のパケットはその電子データ1の最後のパケットではないため、マーカビット(M)は0にセットされ、送信される。一方、SN=3のパケットは、電子データ1を構成する最後のパケットになるため、マーカビットが1にセットされる。データ受信装置は、マーカビットが1にセットされたSN=3を受信すると、それまで受信したSN=1及びSN=2のパケットを組み合わせて、電子データ1を再構成する。再構成された電子データ1はRTPヘッダのタイムスタンプの利用開始時刻に従って、データ受信装置で利用される。ここで、利用するとは、例えば、電子データがHTMLデータであれば、HTMLの解釈に従って表示されることになる。
【0012】
電子データ1に続いて電子データ2を送信する場合も、同様にシーケンス番号が順にSN=4からSN=8まで振られ、SN=8のパケットのマーカビットが1にセットされる。データ受信装置はSN=4からSN=8のパケットの電子データを組み合わせて電子データ2を再構成する。
【0013】
上述のように、本RTPフォーマットによって音声や映像だけでなく、テキストや静止画等の電子データを配信することが可能となる。
【0014】
【特許文献1】
特開2002−124987号公報
【非特許文献1】
H. Schulzrinne, S. Casner, R. Frederik, and V. Jacobson, ”RTP: A Transport Protocol for Real−Time Applications,” IETF RFC1889, January 1996.
【非特許文献2】
電波産業会「デジタル放送におけるデータ放送符号化方式と伝送方式」ARIB
STD−B24 2.0版、平成13年3月27日2.0改定
【非特許文献3】
M. Westerlund, K. Dovstam, F. Hartung, and U. Horn, ”Generic RTP PayloadFormat for Time−lined Static Media,” IETF Internet−Draft draft−westerlund−avt−rtp−static−media−01.txt, January 2, 2002
【0015】
【発明が解決しようとする課題】
しかし、図3に示すような伝送方法では、パケットの1つがネットワークの混雑や伝送誤りによって損失した場合、当該パケットを回復することができず、当該パケットに含まれるデータを構成要素とする電子データを再構成することができない。そのため、データ受信装置では、当該電子データを活用できないという問題があった。
【0016】
また、放送型配信のように配信途中から視聴を始めるデータ受信装置がある場合には、当該受信装置は受信開始中に送信されている電子データを構成するパケットを先頭からすべて受信することができず、もとの電子データを再構成することができない。従って、データ受信装置では、受信開始中に送信されている電子データを活用することができないという問題があった。
【0017】
また、データ受信装置が最初のパケットを受信した時点、例えば図3のSN=1のパケットを受信した時点で、データ受信装置は当該電子データがどれだけの大きさなのか判断することができない。そのため、データ受信装置は、電子データを再構成するためのメモリ領域をどの程度確保してよいか分からないという問題があった。
【0018】
そこで、本発明は上記課題を解決し、データ送信装置から1以上のデータ受信装置へテキストや静止画を含む電子データを高い信頼性で送信できるデータ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システムを提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与ステップと、データ送信装置が、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0020】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。「静的な電子データ」とは、例えばテキストや静止画像である。
【0021】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の分割データに対して付与する先頭情報付与ステップと、データ送信装置が、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0022】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データを示す情報が任意の分割データに付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0023】
上記データ伝送方法は、先頭情報付与ステップにおいて、先頭情報を少なくとも最終の分割データに対して付与することが好ましい。
【0024】
本発明に係るデータ送信方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の分割データに対して付与する先頭最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0025】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データのシーケンス番号と最終の分割データのシーケンス番号の情報を任意の分割データに付与することにより、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0026】
上記データ伝送方法は、先頭最終情報付与ステップにおいて、先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴としても良い。
【0027】
このようにすべての分割データに先頭及び最終の分割データのシーケンス番号を付与することにより、いずれの分割データから受信した場合でも先頭と最終のシーケンス番号を把握できるので好ましい。
【0028】
上記データ伝送方法は、電子データ分割ステップにおいて、前記データ送信装置は静的な電子データと共に動的な電子データを分割して分割データを生成し、分割データ送信ステップにおいて、データ送信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置からデータ受信装置に繰り返し送信する付随データ送信ステップをさらに有する、ことを特徴としても良い。
【0029】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与し、さらに付随データによって表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとることができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。なお、「動的な電子データ」とは、例えば映像データや音声データである。
【0030】
上記データ伝送方法は、シーケンス番号及び表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、最終情報付与ステップにおいて付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、ことを特徴としても良い。
【0031】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0032】
上記データ伝送方法は、電子データ分割ステップでは、所定のデータ長以下の分割データを生成し、データ送信装置が所定のデータ長に関する情報を分割データの最大長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する最大分割長通知ステップをさらに有する、ことを特徴としても良い。
【0033】
このように分割データの最大長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データの最大長に基づいて確保すべきメモリ領域の大きさを算出できるので好ましい。
【0034】
上記データ伝送方法は、電子データ分割ステップでは、所定のデータ長の分割データを生成し、データ送信装置が所定のデータ長に関する情報を分割データの固定長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する固定分割長通知ステップをさらに有する、ことを特徴としても良い。
【0035】
このように分割データ長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、分割データ長に基づいて確保すべきメモリ領域の大きさをより正確に算出できるので好ましい。
【0036】
上記データ伝送方法は、データ送信装置が、送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与ステップをさらに備えることを特徴としても良い。
【0037】
このように送信する電子データ長に関する情報を分割データに付与することにより、データ受信装置ではその情報に基づいてメモリ領域を確保することができる。
【0038】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、先頭情報及び最終情報に基づいて、先頭及び最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0039】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0040】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、最終情報に基づいて、最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0041】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0042】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0043】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0044】
上記データ伝送方法は、データ受信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された分割データを受信し、データ受信装置が、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置から繰り返し受信する付随データ受信ステップと、付随データ受信ステップにおいて受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生ステップと、をさらに有することを特徴としても良い。
【0045】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与された分割データを受信し、さらに繰り返し送信される付随データに基づいて表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとり、電子データ再生ステップにおいて同時に再生することができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0046】
上記データ伝送方法は、分割データを格納するパケットはRTPパケットであり、データ受信装置は、RTPヘッダのシーケンス番号を分割データのシーケンス番号として記録し、RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、RTPヘッダのマーカビットを最終の分割データであることの識別に用い、RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、ことを特徴としても良い。
【0047】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0048】
上記データ伝送方法は、データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信ステップと、先頭のシーケンス番号と最終のシーケンス番号とに基づいて分割データ数を求め、分割データ長受信ステップにおいて受信した分割データ長と分割データ数とを乗じることにより、電子データを構成するために必要なメモリ領域を算出するメモリ領域算出ステップと、メモリ領域算出ステップにおいて算出されたメモリ領域を確保するメモリ領域確保ステップと、をさらに有することを特徴としても良い。
【0049】
このように分割データ長受信ステップにおいて分割データの最大長に関する情報を受信すると共に、先頭及び最終のシーケンス番号から分割データ数を求めることにより、電子データを構成するために確保すべきメモリ領域の大きさを算出でき、メモリ領域確保ステップでは効率良くメモリを確保することができる。
【0050】
上記データ伝送方法は、データ送信装置から送信される、電子データのデータ長に関する情報を受信するデータ長受信ステップと、データ長受信ステップにおいて受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保ステップと、をさらに有することを特徴としても良い。
【0051】
このようにデータ長受信ステップにおいて電子データのデータ長に関する情報を受信することにより、メモリ領域確保ステップでは効率良くメモリを確保することができる。なお、電子データのデータ長は、任意の分割データに付与されてデータ送信装置からデータ受信装置に送信されても良いし、分割データとは別に送信されることとしても良い。
【0052】
本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与手段と、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0053】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報を付与し、最終の分割データにはその分割データが最終であることを示す情報を付与しているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0054】
また、本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の分割データに対して付与する先頭情報付与手段と、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0055】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号を付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データを示す情報を任意の分割データに付与し、最終の分割データにはその分割データが最終であることを示す情報を付与しているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0056】
上記データ送信装置において、先頭情報付与手段は、先頭情報を少なくとも最終の分割データに対して付与することが好ましい。
【0057】
また、本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の分割データに対して付与する先頭最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0058】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号を付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データのシーケンス番号と最終の分割データのシーケンス番号の情報を任意の分割データに付与することにより、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0059】
上記データ送信装置において、先頭最終情報付与手段は、先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴としても良い。
【0060】
このようにすべての分割データに先頭及び最終の分割データのシーケンス番号を付与することにより、いずれの分割データから受信した場合でも先頭と最終のシーケンス番号を把握できるので好ましい。
【0061】
上記データ送信装置において、電子データ分割手段は、静的な電子データと共に動的な電子データを分割して分割データを生成し、分割データ送信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ受信装置に繰り返し送信する付随データ送信手段をさらに備える、ことを特徴としても良い。
【0062】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与し、さらに付随データによって表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとることができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0063】
上記データ送信装置は、シーケンス番号及び表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、最終情報付与手段によって付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、ことを特徴としても良い。
【0064】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0065】
上記データ送信装置において、電子データ分割手段は、所定のデータ長以下の分割データを生成し、所定のデータ長に関する情報を分割データの最大長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する最大分割長通知手段をさらに備える、ことを特徴としても良い。
【0066】
このように分割データの最大長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データの最大長に基づいて確保すべきメモリ領域の大きさを算出できるので好ましい。
【0067】
上記データ送信装置において、電子データ分割手段は、所定のデータ長の分割データを生成し、所定のデータ長に関する情報を分割データの固定長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する固定分割長通知手段をさらに備える、ことを特徴としても良い。
【0068】
このように分割データ長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データ長に基づいて確保すべきメモリ領域の大きさをより正確に算出できるので好ましい。
【0069】
上記データ送信装置は、送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与手段をさらに備えることを特徴としても良い。
【0070】
このように送信する電子データ長に関する情報を分割データに付与することにより、データ受信装置ではその情報に基づいてメモリ領域を確保することができる。
【0071】
本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、先頭情報及び最終情報に基づいて、先頭及び最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0072】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0073】
また、本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、最終情報に基づいて、最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0074】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0075】
また、本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0076】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0077】
上記データ受信装置において、データ受信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された電子データを受信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置から繰り返し受信する付随データ受信手段と、付随データ受信手段によって受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生手段と、をさらに備えることを特徴としても良い。
【0078】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与された分割データを受信し、さらに繰り返し送信される付随データに基づいて表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとり、電子データ再生ステップにおいて同時に再生することができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0079】
上記データ受信装置が受信する分割データを格納するパケットはRTPパケットであり、RTPヘッダのシーケンス番号を分割データのシーケンス番号として記録し、RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、RTPヘッダのマーカビットを最終の分割データであることの識別に用い、RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、ことを特徴としても良い。
【0080】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0081】
上記データ受信装置は、データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信手段と、先頭のシーケンス番号と最終のシーケンス番号とに基づいて分割データ数を求め、分割データ長受信手段によって受信した分割データ長と分割データ数とを乗じることにより、電子データを構成するために必要なメモリ領域を算出するメモリ領域算出手段と、メモリ領域算出手段によって算出されたメモリ領域を確保するメモリ領域確保手段と、をさらに備えることを特徴としても良い。
【0082】
このように分割データ長受信手段によって分割データの最大長に関する情報を受信すると共に、先頭及び最終のシーケンス番号から分割データ数を求めることにより、電子データを構成するために確保すべきメモリ領域の大きさを算出でき、メモリ領域確保手段は効率良くメモリを確保することができる。
【0083】
上記データ受信装置は、データ送信装置から送信される、電子データのデータ長に関する情報を受信するデータ長受信手段と、データ長受信手段によって受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保手段と、をさらに備えることを特徴としても良い。
【0084】
このようにデータ長受信手段は、電子データのデータ長に関する情報を受信することにより、メモリ領域確保手段は効率良くメモリを確保することができる。なお、電子データのデータ長は、任意の分割データに付与されてデータ送信装置からデータ受信装置に送信されても良いし、分割データとは別に送信されることとしても良い。
【0085】
本発明に係るデータ伝送システムは、上記データ送信装置と、上記データ受信装置とを備え、データ送信装置からデータ受信装置にコネクションレス型の伝送方式によって電子データを送信することを特徴とする。
【0086】
上記したデータ送信装置と上記したデータ受信装置とを備えることにより、上記データ送信装置は電子データを分割した分割データを繰り返し送信し、データ受信装置は電子データを構成するすべての分割データをすべて受信した時点でもとの電子データを再構成することができるので、信頼性の高いコネクションレス型のデータ伝送システムを実現することができる。
【0087】
【発明の実施の形態】
以下、図面と共に本発明に係るデータ伝送方法及びデータ伝送システムの好適な実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
【0088】
(第1実施形態)
図4は、本発明の実施形態に係るデータ伝送システムの構成の一形態を示すブロック図である。このデータ伝送システムでは、ネットワーク100を介して一のデータ送信装置200と一以上のデータ受信装置300が接続されている。図4では、データ受信装置300とデータ受信装置350の2つが描かれているが、データ受信装置は2つに限られない。また、ネットワーク100は、インターネットのほか、企業LANや携帯電話網でもよい。データ伝送システムはデータ送信装置200がネットワーク100を介してデータ受信装置300とデータ受信装置300とに電子データを配信する。ここで配信される「電子データ」には、テキストや静止画などの静的な電子データと、映像や音声などの動的な電子データとが含まれる。以下の説明においては、動的な電子データを「映像(データ)」「音声(データ)」といい、静的な電子データを単に「電子データ」ということとする。
【0089】
図5は、データ送信装置200の構成を示すブロック図である。データ送信装置200は、セッションの制御を司るセッション制御部201とセッション制御に関する情報をパケット化するパケット化部202、映像情報を取得する映像取得部203、映像情報をパケット化するパケット化部204、映像パケットに付随する情報を生成してパケット化する付随情報生成・パケット化部205、音声情報を取得する音声取得部206、音声情報をパケット化するパケット化部207、音声パケットに付随する情報を生成してパケット化する付随情報生成・パケット化部208、電子データを取得する電子データ取得部209、取得した電子データを分割して分割データを生成する分割部210、分割データをパケット化するパケット化部211、当該電子データを繰り返して送信するか否か判定する繰り返し判定部212、電子データパケットに付随する情報を生成してパケット化する付随情報生成・パケット化部213、各メディアのパケットを送信するパケット送信部214、を備えている。以下、各構成要素について詳しく説明する。
【0090】
セッション制御部201は、データ送信装置200が配信する映像データ、音声データ及び電子データの各セッションに関する情報を記録し、必要に応じて各データのパケット化部204、207、211と情報をやり取りする。上記セッションに関する情報としては、宛先のアドレスや使用するプロトコルに関する情報、例えばRTP(Real−time Transport Protocol)/UDP(User Datagram Protocol)を使うといった情報や、UDPのポート番号やRTPのペイロードタイプ識別子の値などが含まれる。そして、これらのセッション情報をデータ受信装置300に伝えるために、これらの情報をパケット化部202でパケット化し、パケット送信部214にてパケット送信処理が行われる。セッション情報を伝送するためのプロトコルとして、SAP(Session Announcement Protocol)やRTSP(Real Time Streaming Protocol)、SIP(Session Initiation Protocol)などが挙げられる。
【0091】
映像取得部203は映像データを取得する機能を有する。映像情報の取得は、例えば映像ファイルを読み込んだり、ビデオカメラから得た情報をMPEGなどの映像符号化したりすることで行われる。そして、パケット化部204にて映像データをパケット化する。パケット化の際には、各パケットに連続して割り当てられるシーケンス番号及び表示時刻に関する情報が付与される。また、セッション制御部201から得られるセッション情報に基づいてパケット化する。セッション情報としては、例えば宛先IPアドレスや、UDPポート番号、RTPペイロードタイプなどが挙げられる。ここでは、映像情報はRTP/UDP/IPパケットとしてパケット化されるものとするが、本発明はこれに限定されるものではない。
【0092】
パケット化部204によってパケット化された映像パケットは、パケット送信部214に伝えられ、パケット送信部214によって送信処理がなされる。同時に、付随情報生成・パケット化部205は、映像パケットに対する付随情報を生成してパケット化する。映像パケットの付随情報としては、例えば、映像パケットの送信者に関する情報や、映像パケットの送信個数、さらには映像パケットに付与される表示時刻に関する情報と絶対時刻との対応付けを可能とする情報などがある。映像情報がRTPパケットとしてパケット化される場合には、その付随情報はRTCP(RTP Control Protocol)パケットとしてパケット化される。
【0093】
音声取得部206は、音声データを取得する機能を有する。音声情報の取得は例えば音声ファイルを読み込んだり、マイクから得た情報をAMRやAACなどの音声・音響符号化したりすることで行われる。パケット化部207は、音声取得部206で取得した音声データをパケット化する機能を有する。パケット化の際には、各パケットに連続して割り当てられるシーケンス番号及び表示時刻に関する情報が付与される。また、付随情報生成・パケット化部208は、セッション制御部201から得られるセッション情報に基づいて付随情報を生成してパケット化する機能を有する。セッション制御部201から得られるセッション情報としては、例えば、宛先IPアドレスや、UDPポート番号、RTPペイロードタイプなどの情報がある。ここでは、音声情報がRTP/UDP/IPパケットとしてパケット化されるものとするが、本発明はこれに限定されない。
【0094】
本実施形態に係るデータ伝送システムにおいては、映像及び音声の処理部としてそれぞれ一系列ずつ有しているが、これらの処理部はそれぞれ複数あっても良いし、いずれかの処理系列がなくても良い。
【0095】
電子データ取得部209は、電子データを取得する機能を有する。分割部210は、電子データ取得部209によって取得された電子データを分割して分割データを生成する機能を有する。パケット化部211は、映像・音声パケットと同じフォーマットを用いて電子データをパケット化する機能を有する。すなわち、映像・音声がRTPによってパケット化される場合には、電子データもRTPを用いてパケット化される。そして、パケット化部211でパケット化された分割データは、繰り返し判定部212に渡される。繰り返し判定部212は、1回以上の繰り返し送信制御を行う機能を有する。付随情報生成・パケット化部213は、電子データパケットに対する付随情報が映像パケットや音声パケットに対する付随情報と同様に生成して、パケット化する機能を有する。ここでは、電子データの処理系統として一系統のみ有しているが、静止画とテキストデータを同時に送信する場合などは、一以上の電子データ処理系統を有しても良い。
【0096】
次に、電子データの処理について詳しく説明する。図6は、データ送信装置200における電子データの送信手順を示す図である。データ送信装置200は、送信すべきデータを電子データ取得部209によって取得する(S10)。送信するデータには、テキストデータや静止画データなどが含まれる。電子データは、データ送信装置200に備えられたメモリから読み込んだり、もしくは遠隔にある他の装置からHTTP等を用いて取得したりすることができる。
【0097】
続いて、データ送信装置200の分割部210は、電子データ取得部209によって取得した電子データを分割して分割データを生成する(S12)。図7を参照しながら、電子データの分割例について説明する。図7では、電子データ400が3分割された様子を示している。電子データは分割されて、分割データ410、分割データ420、分割データ430が生成される。続いて、データ送信装置200は、分割データを取り出し(S14)、その分割データが電子データの先頭であるか否かを判定する(S16)。分割データが先頭である場合には、その分割データに先頭であることを表す先頭情報を付与する(S18)。そして、RTPパケットを形成するために、RTPヘッダ及びペイロードヘッダを構成する(S20)。以下の説明では、分割データはすべて、RTPフォーマットを用いてパケット化されるものとする。ただし、パケットフォーマットは、パケット固有のシーケンス番号と表示時刻に関する情報、さらに最終の分割データであることを示す情報を含むことができればよく、本発明はRTPに限定されるものではない。次に、その分割データが電子データの最終の分割データであるかどうか判定する(S22)。分割データが最終でない場合には、次の分割データを取り出し、分割データが最終である場合は、RTPパケットのマーカビットを「1」に設定する(S24)。すべての分割データのパケット化が終了すると、パケット送信に移る(S26)。
【0098】
生成された分割データのRTPパケット化の様子を図8、図9、図10に示す。図8は、先頭の分割データに対するRTPパケット化の様子を示す図である。RTPヘッダフィールドはRTPの規格によって決定されている。RTPヘッダフィールドのフォーマットについては、図1を参照されたい。一般的に、バージョンフィールドには、RTPのバージョンである「2」の値が、パディングビット、拡張ビット、寄与送信元カウントフィールドには「0」の値が挿入される。ペイロードタイプフィールドには、あらかじめSDP(Session Description Protocol)等の他の方法で定められた値が挿入される。シーケンス番号フィールド(SN)には、本例では「10」の値が挿入されているが、これに限るものではない。タイムスタンプフィールドは、電子データを表示する時刻に関する情報が挿入され、同期送信元識別子フィールドには、そのRTPパケットの送信元がデータ送信装置200であることを示す識別子が付与される。RTPペイロード内には、分割データ410が電子データの先頭の分割部であることを示し先頭情報が挿入される。図8において斜線を付した「11」という値をペイロードヘッダとして定めているが、これに限るものではない。続いて、電子データが存在していることを示す値「0」の1ビットのペイロードヘッダが挿入され、分割データ410がその後に続く。
【0099】
図9は、2番目の分割データ420に対するRTPパケット化の様子を示す図である。RTPヘッダの各フィールドは、上記と同様にRTPの規格に従って決定される。バージョンフィールド、パディングフィールド、拡張ビット、寄与送信元カウントフィールド、ペイロードタイプフィールドには、図8に示される前パケットと同じフィールド値が付与される。また、分割データは、最後の分割データではないため、マーカビット(M)は「0」に設定される.シーケンス番号フィールド(SN)には、前パケットのSNに1を加えた「11」が付与される。タイムスタンプフィールド及び同期送信元識別子フィールドには、前パケットと同じ値が挿入される。続いて、ペイロード内には、電子データが存在していることを示す値「0」のペイロードヘッダが挿入され、分割データ420がそのあとに続く。
【0100】
図10は、3番目の分割データ430に対するRTPパケット化の様子を示す図である。RTPヘッダの各フィールドは、上記と同様にRTPの規格に従って決定される。バージョンフィールド、パディングフィールド、拡張ビット、寄与送信元カウントフィールド、ペイロードタイプフィールドには、図8に示される前パケットと同じフィールド値が付与される。また、分割データ430は、最後の分割データであるため、マーカビット(M)は「1」に設定される。シーケンス番号フィールド(SN)には、前パケットのSNに1を加えた値「12」が付与される。タイムスタンプフィールド及び同期送信元識別子フィールドには、前パケットと同じ値が挿入される。続いて、ペイロード内には、電子データが存在していることを示す値「0」のペイロードヘッダが挿入され、分割データがそのあとに続く。
【0101】
上述では、電子データ及び値「0」のペイロードヘッダのみがRTPペイロード内に格納される例を示したが、有効期間に関する情報や、その他の情報をRTPペイロード内に格納することも可能である。
【0102】
上述のようにして生成されたRTPパケットに対して、当該RTPパケットをデータ受信装置300へ伝送するためにトランスポート層ヘッダ及びネットワーク層ヘッダが付与される。トランスポートヘッダの例としてUDP(User Datagram Protocol)ヘッダが、ネットワーク層ヘッダの例としてIP(Internet Protocol)ヘッダが代表的なヘッダとして挙げられる。
【0103】
このように3つの分割データがRTPパケット化されたのち、データ送信装置200は、各RTPパケットのシーケンス番号順に送信する。そして、データ送信装置200は、RTPパケットを一通り送信し終えると、繰り返し判定部212によって、当該RTPパケットの送信を終了するか、あるいは続行するかを判定する。繰り返し判定部212は、例えば、1)所定回数以上RTPパケットを繰り返し送信したか、2)所定時間以上RTPパケットを繰り返し送信したか、3)次に送信すべき電子データがあるか、などに基づいて判定を行う。繰り返し送信すると判定された場合には、データ送信装置200は、再度パケット送信部214によって各RTPパケットをシーケンス番号順に送信する。このようにして、図11に示されるように1以上のデータ受信装置300、350に対して、電子データを繰り返し送信する。繰り返し送信を終了する場合には、次に送信すべき電子データを取得し、再び電子データの分割、分割データのパケット化、パケット送信の動作を繰り返す。
【0104】
次に、データ受信装置300について説明する。データ受信装置300は、データ送信装置200から送信されるRTPパケットを受信し、音声データ、映像データ及び電子データの再生を行う装置である。
【0105】
図12は、データ受信装置300の構成を示すブロック図である。データ受信装置300は、パケットを受信して各処理部に振り分けるパケット受信・振分部301、セッション制御パケットを処理して情報を抽出するセッション制御パケット分離部302、抽出されたセッション情報を記録して解析するセッション制御部303、映像パケットを処理して映像データを抽出する映像パケット分離部304、抽出された映像データを再生処理する映像再生部305、映像パケットに付随する情報を処理して解析する映像付随情報解析部306、音声パケットを処理して音声データを抽出する音声パケット分離部307、抽出された音声データを再生処理する音声再生部308、音声パケットに付随する情報を処理して解析する音声付随情報解析部309、分割データパケットを処理して分割データを抽出すると共に分割データから電子データを再構成するデータパケット分離・再構成部310、再構成された電子データを再生する電子データ再生部311、電子データパケットに付随する情報を処理して解析するデータ付随情報解析部312、映像・音声・電子データの同期制御を行う同期制御部313、を備えている。以下、各構成要素について詳細に説明する。
【0106】
パケット受信・振分部301は、パケットの受信処理を行い、受信したパケットをそのパケットが属する処理系統へパケットを振り分ける機能を有する。通常、振り分けに必要な情報はセッション制御パケットに格納されているため、セッション制御パケットを受信するまで、他のパケットは廃棄されるか、あるいは一旦保存される。パケット受信・振分部301は、セッション制御パケットを受信したときに、そのセッション制御パケットをセッション制御パケット分離部302に渡す。なお、セッション制御パケットであるか否かは、例えばポート番号やIPアドレスがあらかじめ定められた値に設定されているかどうかで判定することが可能である。
【0107】
セッション制御パケット分離部302は、セッション制御パケットからセッション情報を抽出し、セッション制御部303へ通知する機能を有する。セッション制御は、セッション情報を解析し、振り分けに必要な情報、例えば各メディアパケットのポート番号やペイロードタイプなどをパケット受信・振分部301に通知する。また、各メディアの符号化情報や復号パラメータ等がある場合には、セッション制御部303は、各再生部305,308,311にそれらの情報を通知する。
【0108】
セッション制御パケットを受信した後は、パケット受信・振分部301は、受信した各メディアパケット(分割データパケットを含む)や付随パケットを該当する処理系統に振り分ける。
【0109】
パケット受信・振分部301は、映像パケットを受信した場合には、そのパケットを映像パケット分離部304に渡す。映像パケット分離部304は、パケット受信・振分部301から渡された映像パケットから映像データを抽出して映像再生部305に渡す。その際に、パケットに含まれている当該データの表示時刻に関する情報、RTPパケットの場合にはRTPタイムスタンプ情報も映像再生部305へ渡す。一方、映像の付随情報パケットを受信した場合には、パケット受信・振分部301はそのパケットを映像付随情報解析部306に渡し、映像付随情報解析部306は付随情報パケットを解析し、その中から映像パケットに含まれる表示時刻に関する情報と絶対時刻との関連付けを抽出し、その情報を同期制御部313に伝達する。付随情報がRTCPパケットで送信される場合には、映像パケットに含まれるRTPタイムスタンプと絶対時刻を表すNTP(Network Time Protocol)タイムスタンプとの関連付けが可能であり、これらの情報を同期制御部313に伝達する。
【0110】
パケット受信・振分部301は、音声パケットを受信した場合には、そのパケットを音声パケット分離部307に渡す。音声パケット分離部307は、パケット受信・振分部301から渡された音声パケットから音声データを抽出して音声再生部308に渡す。その際に、パケットに含まれている当該データの表示時刻に関する情報も音声再生部308に渡す。一方、音声の付随情報パケットを受信した場合には、パケット受信・振分部301は、そのパケットを音声付随情報解析部309に渡し、音声付随情報解析部309は付随情報パケットを解析し、その中から音声パケットに含まれる表示時刻に関する情報と絶対時刻に関する情報との関連付けを抽出し、当該情報を同期制御部313に伝達する。
【0111】
パケット受信・振分部301が電子データパケットを受信した場合には、データパケット分離・再構成部310にそのパケットを渡す。データパケット分離・再構成部310は、分割データをまとめて再構成してもとの電子データに戻し、その電子データを電子データ再生部311に渡す。この電子データの再構成の詳細については後述する。一方、電子データパケットに付随する情報パケットを受信した場合に、パケット受信・振分部301はそのパケットをデータ付随情報解析部312に渡し、データ付随情報解析部312は付随情報パケットを解析し、その中から電子データパケットに含まれる表示時刻に関する情報と絶対時刻との関連付けを抽出し、当該情報を同期制御部313に伝達する。
【0112】
同期制御部313は、映像、音声、及び電子データの付随情報から得られる表示時刻に関する情報、例えばRTPタイムスタンプと、絶対時刻(例えばNTPタイムスタンプとを関連付ける情報)から各データの同期制御を行う。RTPタイムスタンプはそれぞれのデータごとに独自の粒度で付与されるので、映像や音声、さらには電子データを特定のタイミングで同期させて表示させるためには、同期制御が必要となる。NTPタイムスタンプはすべてのデータで同一のフォーマット及び粒度であるため、同期制御部313はNTPタイムスタンプをそれぞれの再生部に通知することにより、各再生部305,308,311はタイミングを合わせて再生・表示することが可能となる。
【0113】
続いてデータパケット分離・再構成部310における電子データの再構成の処理手順について詳細に説明する。図13は、データ受信装置300における電子データ再構成のフローチャートである。
【0114】
図13に示すフローチャートを図14に示すRTPパケット送信シーケンス例を用いて説明する。図14では、データ送信装置200が電子データAと電子データBとをデータ受信装置300に対して送信する例を示している。電子データA及び電子データBはそれぞれ3つの分割データに分割され、RTPパケット化された後に送信される。送信回数はそれぞれ2回ずつ繰り返している。図14において、「SN」及び「M」はそれぞれRTPパケットシーケンス番号とマーカビットを表しており、この例ではSNは「10」から割り当てられている。図14を参照すると、電子データAでは1回目の送信においてSN=10の分割データパケットをロスし、電子データBでは1回目の送信においてSN=14の分割データパケットをロスしている。
【0115】
以下に、図13を参照しながら、データ受信装置300における処理手順について説明する。データ受信装置300は、2つの変数TopとLastを有する。Topは受信中の電子データの先頭のRTPパケットのシーケンス番号を設定する変数であり、Lastは受信中の電子データの最終のRTPパケットのシーケンス番号を設定する変数である。データ受信装置300は、最初、この2つの変数をNULL値に設定する(S30)。
【0116】
データ受信装置300は、パケットの受信を待ち(S32)、データ送信装置200から送信されたパケットを受信する(S34)。データ受信装置300は、本来であれば、SN=10、M=0のパケットを受信するはずであるが、ここでは伝送途中でパケットロスが発生したものとし、SN=11、M=0のパケットを先に受信したものとする。このパケットは電子データAの最初のパケットではないので、このパケットに先頭情報は含まれていない。図13において、パケット受信の状態に移り、続いて同じSNのパケットをすでに受信していたかどうか判定する(S36)。この場合、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoであり、そのパケットをメモリに保存し、そのRTPパケットのSNを記録する(S40)。次に、そのRTPパケットに先頭情報が含まれているかどうか判定する(S42)。このRTPパケットには先頭情報が含まれていないため、判定結果はNoとなる。続いて、マーカビットが「1」であるか否か、すなわち、このRTPパケットが最終のパケットであるか否か判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0117】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。このパケットの電子データAの先頭のパケットではないため、パケットに先頭情報は含まれていない。パケットの受信後、同じSNのRTPパケットすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまで受信したことがないため、判定結果はNoであり、データ受信装置300はこのパケットをメモリに保存し、このパケットのSNを記録する(S40)。次に、このRTPパケットに先頭情報が含まれているか否か判定する(S42)。このRTPパケットには先頭情報が含まれていないため、判定結果はNoとなる。続いて、マーカビットが1であるか否か、すなわちこのRTPパケットが最終のパケットであるか否か判定する(S46)。このRTPパケットのマーカビットは「1」であるので、判定結果はYesとなり、データ受信装置300はLast変数にこのRTPパケットのSN値「12」を入力する(S48)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop変数がNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0118】
データ送信装置200は、電子データAを繰り返し送信し、SN=12のRTPパケットを送信した後に再びSN=10のRTPパケットを送信する。データ受信装置300は、SN=10、M=0のパケットを受信する(S34)。このパケットは電子データAの先頭のパケットであるため、このパケットには先頭情報が含まれている。パケットを受信した後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットに先頭情報が含まれているかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれているため、判定結果はYesとなり、データ受信装置300は、Top変数にこのRTPパケットのSN値「10」を入力する(S44)。続いて、データ受信装置300は、マーカビットが「1」であるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるので、判定結果はNoとなる。続いて、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)。この時点で、Top=10≦SN≦Last=12を満たすSNのパケットをすべて受信したことになるため、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0119】
続いて、データ受信装置300は、SN=11、M=0のパケットを受信する(S34)が、このパケットについては、同じSNのパケットをすでに受信しているので、このパケットを廃棄して(S38)、受信待機の状態(S32)に移る。続いてSN=12、M=1のパケットを受信する(S34)が、このパケットについても、同じSNのパケットをすでに受信しているので、このパケットを廃棄して(S38)、受信待機の状態(S32)に移る。
【0120】
続いて、電子データBを受信する動作について説明する。まず、データ受信装置300は、受信待機の状態(S32)において電子データBの分割データであるSN=13、M=0のRTPパケットを受信する(S34)。このパケットは電子データBの先頭のパケットであるため、このパケットには先頭情報が含まれている。パケット受信後、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=13のパケットはこれまでに受信していないので、判定結果はNoであり、データ受信装置300はこのRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットに先頭情報が含まれているか否か判定する(S42)。このRTPパケットには先頭情報が含まれているので、判定結果はYesとなり、Top変数にこのRTPパケットのSN値「13」を入力する(S44)。続いて、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0121】
続いて、本来であれば、データ受信装置300はSN=14、M=0のパケットを受信するはずであるが、ここでは、伝送途中でパケットロスが発生したものとし、SN=15、M=1のパケットを先に受信したとする(S34)。このパケットは電子データBの先頭のパケットではないため、先頭情報を含まないことになる。パケットを受信すると、まず、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=15のパケットはこれまでに受信していないので、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットが先頭情報を含んでいるかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれていないため、判定結果はNoである。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちRTPパケットが最終の分割データであるかどうか判定する(S46)。このRTPパケットのマーカビットは「1」であるので、判定結果はYesとなり、データ受信装置300は、Last変数にこのRTPパケットのSN値「15」を入力する(S48)。続いて、続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=13、Last=15が設定されているが、SN=14のパケットを受信していないため、判定結果はNoとなり、受信待機の状態(S32)に戻る。
【0122】
続いて、データ受信装置300は、SN=13、M=0のパケットを受信する(S34)が、このパケットについては、すでに同じSNのパケットを受信しているため、受信したパケットを廃棄し(S38)、受信待機の状態に移る(S32)。
【0123】
続いて、データ受信装置300は、SN=1、M=0のパケットを受信する(S34)。このパケットは電子データBの先頭のパケットではないため、先頭情報を含んでいない。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=14のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300は、このRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットが先頭情報を含んでいるかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれていないので、判定結果はNoとなる。続いて、データ受信装置300は、このRTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=13≦SN≦Last=15を満たすSNのパケットをすべて受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データBを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0124】
続いてSN=15、M=1のパケットを受信する(S34)が、このパケットについてはすでに同じSNのパケットを受信しているため、受信したパケットを廃棄し(S36)、受信待機の状態(S32)に移る。
【0125】
以上のように、電子データを分割して生成した分割データの先頭のパケットに先頭情報が含まれていることにより、データ受信装置300は先頭のパケットを判別することができ、電子データを元通り、再構成することが可能となる。もし、先頭情報を有しておらず、最初に受信した分割データを先頭の分割データと判定するとすれば、図15に示されるように、先頭の分割データ(SN=10)を伝送ロスした場合には、SN=11の分割データを先頭の分割データとして処理することとなり、もとの電子データを再構成できないという不都合が生じるおそれがあるが、本実施形態においては先頭情報を有しているので、確実に電子データを再構成できる。
【0126】
本実施形態においては、先頭情報を、電子データが存在することを示す1バイトのペイロードヘッダ(Type=0)とは別のペイロードヘッダで表したが、図16に示されるように、電子データが存在し、かつ電子データが先頭であることを示すペイロードヘッダとして表すことも可能である。この場合、電子データが存在することを意味する1バイトのペイロードヘッダ(Type=0)は不要となり、1バイト分の情報量を圧縮することができる。
【0127】
(第2実施形態)
次に、本発明の第2実施形態に係るデータ伝送方式について説明する。第2実施形態に係るデータ伝送方式では、電子データの先頭のRTPパケットのシーケンス番号を明示的に通知するペイロードヘッダを用いる。図17は、このペイロードヘッダを利用したRTPパケットフォーマットを示す図である。図17は、図10と同様に、電子データの最終の分割部である分割データ430をRTPパケット化した場合を示している。RTPヘッダ内のフィールドは、図10と同様に設定される。RTPペイロード内に、先頭シーケンス番号(TopSN)を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて先頭シーケンスを表す16ビットのフィールドが付与される。本例では、先頭シーケンス番号を通知するペイロードヘッダとして「12」の値を持つペイロードヘッダを表しているが、これに限定されるものではない。そして、電子データがあることを示す値「0」のペイロードヘッダが続き、その後、分割データ430が挿入される。
【0128】
このペイロードヘッダにより、電子データの先頭のRTPパケット以外でも電子データの先頭のRTPパケットのシーケンス番号を通知することが可能となり、データ受信装置300の処理を簡素にすることができる。
【0129】
例えば、マーカビットが「1」に設定されたパケット、すなわち、電子データの最終の分割データを格納しているパケットには必ず先頭のシーケンス番号を通知するペイロードヘッダを付与するものとする。図18は第2実施形態に係るデータ受信装置300によってデータを受信するフローを示すフローチャートであるが、同図に示すように、データ受信装置300では、先頭情報が存在するかどうか、すべてのRTPパケットに対して判定する必要がなくなり、マーカビットの設定されたRTPパケットから先頭のパケットのシーケンス番号を知ることができるようになる。
【0130】
図18を参照しながら、第2実施形態に係るデータ受信装置300が電子データを受信する動作について説明する。ここでは、図19に示すシーケンスに従って電子データが送信される場合を例として説明を進める。
【0131】
第1実施形態に係るデータ受信装置300と同様に、第2実施形態に係るデータ受信装置300は、Top変数及びLast変数を有し、それぞれはじめはNULL値が設定されている(S30)。
【0132】
データ受信装置300は、最初にパケットの受信待ち状態に移行し(S32)、データ送信装置200から送信されたSN=11、M=0のパケットを受信する(S34)。続いて、データ受信装置300は、同じSNのRTPパケットを受信しているかどうか判定する(S36)。このとき、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoであり、データ受信装置300はこのRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。続いて、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0133】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。このパケットには、明示的に先頭の分割データを含むRTPパケットのシーケンス番号「10」が図17のフォーマットで通知されている。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「1」であるため、判定結果はYesとなり、Last変数にこのRTPパケットのシーケンス番号「12」と入力すると共に、Top変数に明示的に通知される先頭のシーケンス番号(TopSN=10)を入力する(S52)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、Top=10≦SN≦Last=12を満たすSNのうち、SN=10のパケットを受信していないため、結果はNoとなり、受信待機の状態(S32)に戻る。
【0134】
続いて、データ受信装置300は、SN=10、M=0のパケットを受信する(S34)。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまで受信していないため、判定結果はNoであり、データ受信装置300は、このRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「0」であるので、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=10≦SN≦Last=12を満たすSNのパケットをすべて受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0135】
このように、明示的に先頭のシーケンス番号を通知する情報が、マーカビット「1」が設定されたパケット、すなわち最終のパケットに含められて伝送されることにより、データ受信装置300において、すべてのRTPパケットに対して先頭情報が含まれているかどうか判定する必要がなく、データ受信装置300における処理量を軽減させることができる。
【0136】
(第3実施形態)
上記した第1実施形態及び第2実施形態では、最初にパケットを受信したときに、電子データが何個のRTPパケットから構成されているのか分からないため、電子データを再構成するためのメモリ領域をどの程度確保すれば良いのか判断できなかった。第3実施形態に係るデータ伝送システムでは、データ受信装置300が最初にパケットを受信した時点で、電子データの大きさを推測できるように、電子データの先頭の分割データを含むRTPパケットのシーケンス番号と最終の分割データを含むRTPパケットのシーケンス番号との両方を通知するペイロードヘッダを用いる。
【0137】
図20は、先頭及び最終のシーケンス番号を通知するペイロードヘッダを有するRTPパケットのフォーマット例を示す図である。図9と同様に、電子データを3つに分割して生成した分割データのうち、2番目の分割データ420を含むRTPパケットを示している。RTPヘッダは、図9と同様に設定される。RTPペイロード内に、先頭シーケンス番号(TopSN)及び最終シーケンス番号(LastSN)を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて先頭シーケンス番号を表す16ビットのフィールドが付与される。本例では、先頭及び最終シーケンス番号を通知するペイロードヘッダとして「13」の値を有するペイロードヘッダを表しているが、これに限定されるものではない。そして電子データがあることを示す値「0」のペイロードヘッダが続き、その後、分割データ420が挿入される。
【0138】
このペイロードヘッダにより、任意のRTPパケットで、電子データの先頭及び最終分割データを有するRTPパケットのシーケンス番号を通知できることになるため、データ受信装置300において、電子データ再構成のためのメモリ確保が容易になると共に、受信処理を簡潔にすることができる。例えば、すべてのRTPパケットに必ず先頭及び最終のシーケンス番号を通知するペイロードヘッダを付与するものとする。図21は第3実施形態に係るデータ受信装置300によってデータを受信するフローを示すフローチャートであるが、同図に示すように、データ受信装置300では、ペイロードヘッダから電子データの分割数を知ることが可能になり、メモリ領域の確保が確実にできるようになる。
【0139】
図21を参照しながら、第3実施形態に係るデータ受信装置300が電子データを受信する動作について説明する。ここでは、図22に示すシーケンスによって電子データが送信される場合を例として説明を進める。
【0140】
第1実施形態に係るデータ受信装置300と同様に、第3実施形態に係るデータ受信装置300は、Top変数及びLast変数を有し、それぞれはじめはNULL値が設定されている。
【0141】
データ受信装置300は、最初にパケット受信待ちの状態に移行し(S32)、データ送信装置200から送信されたSN=11、M=0のパケットを受信する(S34)。このRTPパケットには、電子データの先頭シーケンス番号「10」及び最終シーケンス番号「12」を通知するペイロードヘッダが含まれている。図21において、パケット受信の状態に移り、続いてデータ受信装置300は、同じSNのRTPパケットを受信しているかどうか判定する(S36)。このとき、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoである。続いて、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。いずれかの条件、もしくは両方の条件を満たしている場合には、このRTPパケットはこれまでデータ受信装置300が受信したことのない新たな電子データを受信していることになる。本例では、この時点では、Top変数がNULLであるため、結果はYesとなる。続いて、データ受信装置300はRTPパケットのペイロード部に含まれている、先頭シーケンス番号(TopSN=10)と最終シーケンス番号(LastSN=12)を取り出し、それぞれTop変数、Last変数に代入する。さらに、この電子データが、LastSN−TopSN+1=3個のRTPパケットに分割されていることが分かるため、データ受信装置300は、分割数分のパケットを保存できるだけのメモリ領域を確保する(S56)。そして、データ受信装置300は、受信したパケットを確保したメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=10≦SN≦Last=12を満たすSNのうち、SN=10及びSN=12のパケットを受信していないため結果はNoとなり、受信待機の状態(S32)に戻る。
【0142】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまでに受信していないため、判定結果はNoであり、続いて、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。ここでは、Top変数には「10」が代入されており、Last変数の値「12」は受信したRTPパケットのシーケンス番号と等しいため、両方の条件を満たさないことになり、結果はNoとなる。データ受信装置300はこのRTPパケットを確保されたメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、Top=10≦SN≦Last=12を満たすSNのうち、SN=10のパケットを受信していないため、結果はNoとなり、受信待機の状態(S32)に戻る。
【0143】
続いて、データ受信装置300は、SN=10、M=0のパケットを受信する(S32)。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまで受信していないため、判定結果はNoとなる。続いて、データ受信装置300は、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。ここでは、Top変数には「10」が代入されており、Last変数の値「12」は受信したRTPパケットのシーケンス番号「10」より大きいため、両方の条件を満たさないことになり、結果はNoとなる。データ受信装置300はこのRTPパケットを先ほど確保されたメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)。この時点では、Top=10≦SN≦Last=12を満たすすべてのSNのパケットを受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0144】
このように明示的に先頭のシーケンス番号及び最終のシーケンス番号を通知する情報を全パケット中に含めて伝送することにより、データ受信装置300は、最初のパケットを受信した時点で電子データの分割数を算出することが可能となり、必要なメモリ領域を容易に確保できる。携帯電話のようにメモリ領域が比較的小さいデータ受信装置300に電子データを配信する場合、メモリ領域を確保できるように情報を通知することは特に有効である。
【0145】
上記のペイロードヘッダを全てのRTPパケットに含めて伝送する場合、すべてのパケットに5バイトの情報を付与することとなるため、その情報量の増大が問題となる。そのため、このペイロードヘッダを全てのRTPヘッダに付与するのではなく、一部のRTPパケットに含めて伝送することも可能である。この場合、データ受信装置300は、このペイロードヘッダを含むRTPパケットを受信するまで、他のRTPパケットを廃棄し続けるか、もしくは、メモリ領域を十分確保できる場合には、廃棄せずに一時的に空いているメモリ領域に保持することができる。
【0146】
(第4実施形態)
第3実施形態に係るデータ伝送方式では、電子データの分割数を把握することにより、分割数分のパケットを保存できるためのメモリ領域を確保することが可能となるが、一般にパケット長は可変であるので、パケット長をあらかじめ大きめに見積もる必要があった。このため、実際に必要な大きさ以上のメモリ領域を確保してしまうことがあり得た。第4実施形態に係るデータ伝送方式では、必要なメモリ領域をより正確に見積もることが可能なように、あらかじめ分割データの最大長を通知できるようにする。一般に、RTPを用いてパケット伝送を行う場合、SAP(Session Announcement Protocol)やRTSP(Real Time Streaming Protocol)、SIP(Session Initiation Protocol)等のプロトコルを用いて、当該RTPセッションに関する情報を通知する。第4実施形態に係るデータ伝送方式では、これらのプロトコルを用いて分割データの最大長を通知する。
【0147】
図23は、SAPを用いた場合の最大分割長の通知例を示す図である。データ送信装置200はSAPをデータ受信装置300に対して繰り返し送信し、その中にSDP(Session Description Protocol)を用いてセッションに関する情報を通知する。このSAPの中でSDP記述を用いて、例えば、””a:fmtp:101 pmaxsize=1024”という一文を加えて、最大分割長を通知する。ここで、”a:fmtp:101”はペイロードタイプ101を有するRTPパケットに対して設定情報があることを意味し、それに続く””pmaxsize=1024”で最大分割長が1024バイトであることを表す。データ送信装置200は、こうして通知される最大分割長以下になるように電子データを分割して分割データを生成し、ペイロードタイプ101のRTPパケットにパケット化して伝送する。
【0148】
データ受信装置300は、データ送信装置200から送信されたSAPメッセージを受信し、SAPの中に記述された最大分割長についての情報を取得する。そして、データ受信装置300は、第3実施形態に係るデータ受信装置300と同様の方法によって、RTPパケットのペイロードヘッダから分割数を算出し、最大分割長×分割数のメモリ領域を確保する。そして、以降受信するRTPパケット内の電子データを確保されたメモリ領域に保存する。
【0149】
このように最大分割長をあらかじめ通知することにより、データ受信装置300は電子データを確保するための適切な大きさのメモリ領域を確保でき、有効なメモリ領域の活用が可能となる。
【0150】
(第5実施形態)
上述した各実施形態においては、受信した分割データを一旦メモリに保存し、すべての分割データが揃った時点で電子データを元通り再構成していた。しかし、携帯電話等のメモリ領域の少ないデータ受信装置300では、再構成の処理の負荷も大きい。本実施形態では、分割データをメモリに保存した時点で、電子データの再構成を行えるようにするため、あらかじめ電子データの固定分割長を通知する。
【0151】
分割データの固定分割長は、SAPやRTSP、SIPを用いて通知される。例えば、””a:fmtp:101 psize=1024”というSDPによる記述をSAPメッセージの中に加えて通知する。ここで、”a:fmtp:101”はペイロードタイプ101を有するRTPパケットに対して設定情報があることを意味し、それに続く””psize=1024”で固定分割長が1024バイトであることを表す。データ送信装置200は、こうして通知される固定分割長になるように電子データを分割して分割データを生成し、ペイロードタイプ101のRTPパケットにパケット化して伝送する。
【0152】
図24は、固定分割長通知時の電子データの分割の様子を示す図である。図24では、電子データを分割している。定められた固定分割長である1024バイトごとに先頭から分割していき、同一の分割長の分割データ510及び分割データ520を生成する。固定分割長に満たない最終のあまり部分については、そのまま最終の分割データ530とする。
【0153】
図25は、固定長に分割された電子データをRTPパケットによって送信する様子を示す図である。ここでは、3つの分割データはそれぞれSN=10、11、12のシーケンス番号が割り当てられたものとする。また、すべてのRTPパケットは先頭の分割データ510を有するRTPパケットのシーケンス番号と最終の分割データ530を有するRTPパケットのシーケンス番号を通知するペイロードヘッダを含んでいるものとする。図25では、データ送信装置200は、3つのRTPパケットを繰り返し送信している。
【0154】
データ受信装置300は、まず、データ送信装置200から送信されたSAPを受信し、SAPの中に記述された固定分割長についての情報を取得する。本例では、1024バイトという固定分割長を取得したものとする。
【0155】
次に、データ受信装置300は、RTPパケットのペイロードヘッダから先頭のシーケンス番号「10」及び最終のシーケンス番号「12」を取得して、電子データの分割数「3」を算出する。そして、データ受信装置300は、固定分割長と分割数とを乗じることにより、1024×3=3072バイトのメモリ領域を確保する。
【0156】
ここで、最初に受信したRTPパケットがSN=11のパケットであったとする。SN=11のパケットは、その電子データの2番目の分割データであり、固定分割長は1024バイトであることから、このパケットに含まれる分割データは、電子データの1025バイト目からのデータであることが分かる。データ受信装置300は、確保したメモリ領域のうち、1025バイト目からの領域に受信したSN=11の分割データを保存する。
【0157】
次に、データ受信装置300は、SN=12のパケットを受信したとする。SN=12のパケットは、その電子データの3番目の分割データであるので、1024×2+1=1029バイト目からのデータであることが分かる。また、このパケットは電子データの最終の分割データを含んでいるため、データ受信装置300は、確保したメモリ領域の2049バイト目からその分割データの最後までのメモリ領域に保存する。
【0158】
そして次に、データ受信装置300は、SN=10のパケットを受信したとする。SN=10のパケットは電子データの最初の電子データであるので、1バイト目からのデータであることが分かる。従って、データ受信装置300は、そのパケットに含まれる電子データを確保したメモリ領域の1バイト目から保存する。
【0159】
このようにして電子データを構成するすべてのRTPパケットを受信したことになり、同時に、メモリ領域において電子データが再構成されたため、電子データをメモリ領域からそのまま取り出すことができる。
【0160】
このように、固定分割長をあらかじめ通知することにより、データ受信装置300では、電子データを再構成するための適切な大きさのメモリ領域を確保することができると共に、RTPパケットの受信と同時に電子データの再構成を行うことができる。
【0161】
(第6実施形態)
上述した第4実施形態及び第5実施形態においては、データ送信装置200が最大、もしくは固定の分割長をあらかじめデータ受信装置300に通知し、RTPペイロード内で電子データの再構成に必要なメモリ領域を算出していたが、本実施形態においては、電子データのデータ長をRTPペイロード内のペイロードヘッダで通知する。
【0162】
図26は、電子データ長を明示的に通知するペイロードヘッダを用いたときのRTPパットフォーマットの一例を示す図である。図7に示されるように、電子データを3つに分割して生成した分割データのうち最初の分割データ410を含むRTPパケットを示している。RTPヘッダは図8に示すRTPヘッダと同様に設定される。RTPペイロード内に電子データ長を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて電子データ長を表す16ビットのフィールドが付与される。本実施形態では、電子データ長を通知するペイロードヘッダとして「14」の値を有するペイロードヘッダを記載しているが、これに限定されるものではない。そして、電子データが先頭であることを示す値「11」のペイロードヘッダが続き、その後、分割データが挿入される。
【0163】
電子データ長を表すフィールド長が16ビットでは不十分な場合には、図27に示されるように、32ビットの電子データ長を表すフィールドを有するペイロードヘッダを使用する。本例では、32ビットの電子データ長が存在することを通知するペイロードヘッダとして「15」の値を有するペイロードヘッダを記載しているが、これに限定されるものではない。
【0164】
このようなペイロードヘッダを用いることにより、データ受信装置300は、あらかじめ電子データ長を知ることができ、メモリ領域の確保が容易になる。データ送信装置200は、すべてのパケットにこのペイロードヘッダを格納してパケットを送信することとすれば、データ受信装置300は、受信したいずれのパケットからも即座に電子データ長を知ることができる。
【0165】
【発明の効果】
本発明によれば、電子データを分割して生成した分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信側で元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【図面の簡単な説明】
【図1】RTPヘッダを示す構成図である。
【図2】RTPパケットの構成例を示す図である。
【図3】RTPフォーマットを用いて電子データを配信するときのシーケンスの例を示す図である。
【図4】実施形態に係るデータ伝送システムの構成の一形態を示すブロック図である。
【図5】実施形態に係るデータ送信装置の構成を示すブロック図である。
【図6】データ送信装置における電子データの送信手順を示す図である。
【図7】電子データが3分割された様子を示す図である。
【図8】先頭の分割データに対するRTPパケット化の様子を示す図である。
【図9】2番目の分割データに対するRTPパケット化の様子を示す図である。
【図10】3番目の分割データに対するRTPパケット化の様子を示す図である。
【図11】電子データを分割して送信するときのシーケンス例を示す図である。
【図12】実施形態に係るデータ受信装置の構成を示すブロック図である。
【図13】データ受信装置における電子データ再構成のフローチャートである。
【図14】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図15】電子データ送信の従来のシーケンス例を示す図である。
【図16】ペイロードヘッダの他の例を示す図である。
【図17】RTPパケットの構成例を示す図である。
【図18】第2実施形態に係るデータ受信装置によってデータを受信するフローを示すフローチャートである。
【図19】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図20】RTPパケットの構成例を示す図である。
【図21】第3実施形態に係るデータ受信装置によってデータを受信するフローを示すフローチャートである。
【図22】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図23】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図24】電子データが3分割された様子を示す図である。
【図25】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図26】RTPパケットの構成例を示す図である。
【図27】RTPパケットの構成例を示す図である。
【符号の説明】
100…ネットワーク、200…データ送信装置、201…セッション制御部202…パケット化部、203…映像取得部、204…パケット化部、205…付随情報生成・パケット化部、206…音声取得部、207…パケット化部、208…付随情報生成・パケット化部、209…電子データ取得部、210…分割部、211…パケット化部、212…繰り返し判定部、213…パケット化する付随情報生成・パケット化部、214…パケット送信部、300…データ受信装置、301…パケット受信・振分部、302…セッション制御パケット分離部303…セッション制御部、304…映像パケット分離部、305…映像再生部、306…映像付随情報解析部、307…音声パケット分離部、308…音声再生部、309…音声付随情報解析部、310…データパケット分離・再構成部、311…電子データ再生部、312…データ付随情報解析部、313…同期制御部、400…電子データ、410、420、430…分割データ。
【発明の属する技術分野】
本発明は、コネクションレス型のデータ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システムに関する。
【0002】
【従来の技術】
近年、IP(Internet Protocol)技術を利用したインターネットが普及し、インターネット上でテキストコンテンツや音声・映像等のマルチメディアコンテンツをやり取りすることが容易になってきている。また、放送コンテンツをインターネット上で配信するインターネット放送も注目を集めており、マルチキャスト技術やブロードキャスト技術に関する研究・開発が盛んに行われている。
【0003】
インターネット上で音声や映像等のマルチメディアコンテンツをストリーミング配信するプロトコルとしてRTP(Real−time Transport Protocol)がIEFT(Internet Engineering Task Force)のRFC(Request For Comment)1889(非特許文献1)により規定されている。RTPにより、ペイロードタイプ・符号化方式の通知やシーケンス番号の付与、再生・表示時刻の通知が可能となる。それに対し、テキストや静止画等の静的な電子データを送信する場合には、通常TCP(Transmission Control Protocol)を用いて信頼性の高い伝送が行われる。しかし、放送方通信形態で上述のような静的な電子データを送信する場合、通常放送局から端末までの下りチャネルしかなく、端末から放送局までの上りチャネルが存在しないため、TCPのように上りチャネルのフィードバック情報(Ack)を用いた信頼性放送を適用することができない。
【0004】
上述の課題から、IEFTのRMT(Reliable Multicast Transport)Working Groupでは、FEC(Forward Error Correction)を用いて、片方向チャネル上でも信頼性高く伝送できる方式を検討している。しかし、現在具体的なフォーマットや伝送方法については規定していない。また、RMT Working Groupでは単一のファイルを信頼性高く伝送することのみ検討されており、放送型通信で同時に伝送される音声データや映像データとの同期再生については検討されていない。
【0005】
電波産業界(ARIB)の規格ARIB STD−B24(非特許文献2)では、デジタル放送用にテキスト情報や静止画像等の静的な電子データを伝送するデータカルーセル方式が規定されている。本方式により音声やビデオデータとの同期も可能であり、かつ繰り返し送信により信頼性のあるテキスト情報の送信を可能としている。しかし、本方式をIPネットワーク上で実現しようとすると、IPヘッダのオーバーヘッド及びデータカルーセル方式のオーバーヘッドのため、効率的な伝送ができないという問題点があった。また、特開2002−124987号公報(特許文献1)に示される技術のように、IPパケットをデータカルーセルフォーマット上で伝送する方法が提案されている。しかし、上記公報記載の技術は、デジタル放送においてIPパケットを伝送する技術であり、それ以外のIPネットワークへの適用は不可能である。
【0006】
IEFTのAVT(Audio/Video Transport)Working Groupでは、テキストや静止画等の電子データを、RTPを用いて伝送するフォーマットがドラフトdraft−westerlund−avt−rtp−static−media−01.txt(非特許文献3)で提案されている。RTP上で静的な電子データを送信することにより、RTPを用いて伝送される音声やビデオデータと同期再生が容易となり、またRTP以外の特別なプロトコルを実装する必要がなく、実装が容易になるといった利点が挙げられる。
【0007】
上述のドラフトではRTPヘッダ及びペイロードヘッダを以下の通り規定している。
【0008】
図1は、RTPヘッダを示す構成図である。RTPヘッダのバージョンフィールド(V)、パディングビット(P)、拡張ビット(X)、寄与送信元カウントフィールド(CC)はRTPの規格RFC1889に従っている。マーカビット(M)は、当該RTPパケットが電子データの最後のセグメントを含む場合に1にセットされ、それ以外の場合には0にセットされる。ペイロードタイプフィールドには、RTPパケットのペイロードタイプに関する識別子が挿入される。シーケンス番号フィールドは新たにパケットが生成・送信されるたびに1つずつ増加する。タイムスタンプフィールドには、当該RTPパケットを受信するデータ受信装置が、当該RTPパケットに含まれる電子データを使用すべき時刻に関する情報が含まれる。同期送信元識別子フィールドはRFC1889に従い、当該RTPパケットの送信装置の同期送信元識別子が格納される。
【0009】
また、RTPヘッダに続くペイロードには、配信される電子データや、当該電子データの有効期間に関する情報などが含まれる。ペイロードに何の情報が含まれているか識別するために、各情報の先頭1バイトにペイロードヘッダが付与され、続いて該当する情報が挿入される。
【0010】
図2は、RTPパケットの構成例を示す図である。RTPヘッダに続いて1バイトのペイロードヘッダが続いている。図2では、「2」の値が挿入されているが、これは次に続く情報が電子データの有効期間に関する情報であることを表しており、4バイトの有効期間情報が続いて挿入される。次の1バイトには「0」の値が挿入されており、続く情報が配信される電子データそのもの、もしくは分割された電子データの一部であることを示している。
【0011】
図3は、RTPフォーマットを用いて電子データを配信するときのデータ送信装置とデータ受信装置との間のシーケンスの例を示す図である。図3中の「SN」はRTPヘッダのシーケンス番号を示し、「M」はマーカビットを示す。本例では、データ送信装置は、最初の電子データ1を3つに分割し、それぞれRTPパケットを構成する。RTPパケットには順にSN=1、2、3のシーケンス番号が付与される。SN=1及びSN=2のパケットはその電子データ1の最後のパケットではないため、マーカビット(M)は0にセットされ、送信される。一方、SN=3のパケットは、電子データ1を構成する最後のパケットになるため、マーカビットが1にセットされる。データ受信装置は、マーカビットが1にセットされたSN=3を受信すると、それまで受信したSN=1及びSN=2のパケットを組み合わせて、電子データ1を再構成する。再構成された電子データ1はRTPヘッダのタイムスタンプの利用開始時刻に従って、データ受信装置で利用される。ここで、利用するとは、例えば、電子データがHTMLデータであれば、HTMLの解釈に従って表示されることになる。
【0012】
電子データ1に続いて電子データ2を送信する場合も、同様にシーケンス番号が順にSN=4からSN=8まで振られ、SN=8のパケットのマーカビットが1にセットされる。データ受信装置はSN=4からSN=8のパケットの電子データを組み合わせて電子データ2を再構成する。
【0013】
上述のように、本RTPフォーマットによって音声や映像だけでなく、テキストや静止画等の電子データを配信することが可能となる。
【0014】
【特許文献1】
特開2002−124987号公報
【非特許文献1】
H. Schulzrinne, S. Casner, R. Frederik, and V. Jacobson, ”RTP: A Transport Protocol for Real−Time Applications,” IETF RFC1889, January 1996.
【非特許文献2】
電波産業会「デジタル放送におけるデータ放送符号化方式と伝送方式」ARIB
STD−B24 2.0版、平成13年3月27日2.0改定
【非特許文献3】
M. Westerlund, K. Dovstam, F. Hartung, and U. Horn, ”Generic RTP PayloadFormat for Time−lined Static Media,” IETF Internet−Draft draft−westerlund−avt−rtp−static−media−01.txt, January 2, 2002
【0015】
【発明が解決しようとする課題】
しかし、図3に示すような伝送方法では、パケットの1つがネットワークの混雑や伝送誤りによって損失した場合、当該パケットを回復することができず、当該パケットに含まれるデータを構成要素とする電子データを再構成することができない。そのため、データ受信装置では、当該電子データを活用できないという問題があった。
【0016】
また、放送型配信のように配信途中から視聴を始めるデータ受信装置がある場合には、当該受信装置は受信開始中に送信されている電子データを構成するパケットを先頭からすべて受信することができず、もとの電子データを再構成することができない。従って、データ受信装置では、受信開始中に送信されている電子データを活用することができないという問題があった。
【0017】
また、データ受信装置が最初のパケットを受信した時点、例えば図3のSN=1のパケットを受信した時点で、データ受信装置は当該電子データがどれだけの大きさなのか判断することができない。そのため、データ受信装置は、電子データを再構成するためのメモリ領域をどの程度確保してよいか分からないという問題があった。
【0018】
そこで、本発明は上記課題を解決し、データ送信装置から1以上のデータ受信装置へテキストや静止画を含む電子データを高い信頼性で送信できるデータ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システムを提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与ステップと、データ送信装置が、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0020】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。「静的な電子データ」とは、例えばテキストや静止画像である。
【0021】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の分割データに対して付与する先頭情報付与ステップと、データ送信装置が、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0022】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データを示す情報が任意の分割データに付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0023】
上記データ伝送方法は、先頭情報付与ステップにおいて、先頭情報を少なくとも最終の分割データに対して付与することが好ましい。
【0024】
本発明に係るデータ送信方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置が電子データを分割して分割データを生成する電子データ分割ステップと、データ送信装置が、電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、データ送信装置が、電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の分割データに対して付与する先頭最終情報付与ステップと、分割データをデータ送信装置からデータ受信装置に繰り返し送信する分割データ送信ステップと、を有することを特徴とする。
【0025】
このように分割データ送信ステップにおいて分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データのシーケンス番号と最終の分割データのシーケンス番号の情報を任意の分割データに付与することにより、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0026】
上記データ伝送方法は、先頭最終情報付与ステップにおいて、先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴としても良い。
【0027】
このようにすべての分割データに先頭及び最終の分割データのシーケンス番号を付与することにより、いずれの分割データから受信した場合でも先頭と最終のシーケンス番号を把握できるので好ましい。
【0028】
上記データ伝送方法は、電子データ分割ステップにおいて、前記データ送信装置は静的な電子データと共に動的な電子データを分割して分割データを生成し、分割データ送信ステップにおいて、データ送信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置からデータ受信装置に繰り返し送信する付随データ送信ステップをさらに有する、ことを特徴としても良い。
【0029】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与し、さらに付随データによって表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとることができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。なお、「動的な電子データ」とは、例えば映像データや音声データである。
【0030】
上記データ伝送方法は、シーケンス番号及び表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、最終情報付与ステップにおいて付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、ことを特徴としても良い。
【0031】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0032】
上記データ伝送方法は、電子データ分割ステップでは、所定のデータ長以下の分割データを生成し、データ送信装置が所定のデータ長に関する情報を分割データの最大長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する最大分割長通知ステップをさらに有する、ことを特徴としても良い。
【0033】
このように分割データの最大長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データの最大長に基づいて確保すべきメモリ領域の大きさを算出できるので好ましい。
【0034】
上記データ伝送方法は、電子データ分割ステップでは、所定のデータ長の分割データを生成し、データ送信装置が所定のデータ長に関する情報を分割データの固定長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する固定分割長通知ステップをさらに有する、ことを特徴としても良い。
【0035】
このように分割データ長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、分割データ長に基づいて確保すべきメモリ領域の大きさをより正確に算出できるので好ましい。
【0036】
上記データ伝送方法は、データ送信装置が、送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与ステップをさらに備えることを特徴としても良い。
【0037】
このように送信する電子データ長に関する情報を分割データに付与することにより、データ受信装置ではその情報に基づいてメモリ領域を確保することができる。
【0038】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、先頭情報及び最終情報に基づいて、先頭及び最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0039】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0040】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、最終情報に基づいて、最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0041】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0042】
また、本発明に係るデータ伝送方法は、静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、データ送信装置から繰り返し送信される分割データをデータ受信装置によって受信する分割データ受信ステップと、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、データ受信装置が電子データを構成するデータ構成ステップと、を有することを特徴とする。
【0043】
このように繰り返し送信される分割データを受信する分割データ受信ステップを有することによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成ステップでは、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0044】
上記データ伝送方法は、データ受信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された分割データを受信し、データ受信装置が、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置から繰り返し受信する付随データ受信ステップと、付随データ受信ステップにおいて受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生ステップと、をさらに有することを特徴としても良い。
【0045】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与された分割データを受信し、さらに繰り返し送信される付随データに基づいて表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとり、電子データ再生ステップにおいて同時に再生することができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0046】
上記データ伝送方法は、分割データを格納するパケットはRTPパケットであり、データ受信装置は、RTPヘッダのシーケンス番号を分割データのシーケンス番号として記録し、RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、RTPヘッダのマーカビットを最終の分割データであることの識別に用い、RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、ことを特徴としても良い。
【0047】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0048】
上記データ伝送方法は、データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信ステップと、先頭のシーケンス番号と最終のシーケンス番号とに基づいて分割データ数を求め、分割データ長受信ステップにおいて受信した分割データ長と分割データ数とを乗じることにより、電子データを構成するために必要なメモリ領域を算出するメモリ領域算出ステップと、メモリ領域算出ステップにおいて算出されたメモリ領域を確保するメモリ領域確保ステップと、をさらに有することを特徴としても良い。
【0049】
このように分割データ長受信ステップにおいて分割データの最大長に関する情報を受信すると共に、先頭及び最終のシーケンス番号から分割データ数を求めることにより、電子データを構成するために確保すべきメモリ領域の大きさを算出でき、メモリ領域確保ステップでは効率良くメモリを確保することができる。
【0050】
上記データ伝送方法は、データ送信装置から送信される、電子データのデータ長に関する情報を受信するデータ長受信ステップと、データ長受信ステップにおいて受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保ステップと、をさらに有することを特徴としても良い。
【0051】
このようにデータ長受信ステップにおいて電子データのデータ長に関する情報を受信することにより、メモリ領域確保ステップでは効率良くメモリを確保することができる。なお、電子データのデータ長は、任意の分割データに付与されてデータ送信装置からデータ受信装置に送信されても良いし、分割データとは別に送信されることとしても良い。
【0052】
本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、先頭の分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与手段と、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0053】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報を付与し、最終の分割データにはその分割データが最終であることを示す情報を付与しているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0054】
また、本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の分割データに対して付与する先頭情報付与手段と、最終の分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0055】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号を付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データを示す情報を任意の分割データに付与し、最終の分割データにはその分割データが最終であることを示す情報を付与しているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0056】
上記データ送信装置において、先頭情報付与手段は、先頭情報を少なくとも最終の分割データに対して付与することが好ましい。
【0057】
また、本発明に係るデータ送信装置は、静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、電子データを分割して分割データを生成する電子データ分割手段と、電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の分割データに対して付与する先頭最終情報付与手段と、分割データをデータ受信装置に繰り返し送信する分割データ送信手段と、を備えることを特徴とする。
【0058】
このように分割データ送信手段によって分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号を付与しているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信装置は元の電子データを再構成することができる。また、先頭の分割データのシーケンス番号と最終の分割データのシーケンス番号の情報を任意の分割データに付与することにより、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【0059】
上記データ送信装置において、先頭最終情報付与手段は、先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴としても良い。
【0060】
このようにすべての分割データに先頭及び最終の分割データのシーケンス番号を付与することにより、いずれの分割データから受信した場合でも先頭と最終のシーケンス番号を把握できるので好ましい。
【0061】
上記データ送信装置において、電子データ分割手段は、静的な電子データと共に動的な電子データを分割して分割データを生成し、分割データ送信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ受信装置に繰り返し送信する付随データ送信手段をさらに備える、ことを特徴としても良い。
【0062】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与し、さらに付随データによって表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとることができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0063】
上記データ送信装置は、シーケンス番号及び表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、最終情報付与手段によって付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、ことを特徴としても良い。
【0064】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0065】
上記データ送信装置において、電子データ分割手段は、所定のデータ長以下の分割データを生成し、所定のデータ長に関する情報を分割データの最大長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する最大分割長通知手段をさらに備える、ことを特徴としても良い。
【0066】
このように分割データの最大長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データの最大長に基づいて確保すべきメモリ領域の大きさを算出できるので好ましい。
【0067】
上記データ送信装置において、電子データ分割手段は、所定のデータ長の分割データを生成し、所定のデータ長に関する情報を分割データの固定長としてデータ伝送開始前又はデータ伝送途中にデータ受信装置に通知する固定分割長通知手段をさらに備える、ことを特徴としても良い。
【0068】
このように分割データ長に関する情報を送信することにより、データ受信装置は先頭及び最終のシーケンス番号から分割データ数を把握しているので、データ受信装置で分割データ長に基づいて確保すべきメモリ領域の大きさをより正確に算出できるので好ましい。
【0069】
上記データ送信装置は、送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与手段をさらに備えることを特徴としても良い。
【0070】
このように送信する電子データ長に関する情報を分割データに付与することにより、データ受信装置ではその情報に基づいてメモリ領域を確保することができる。
【0071】
本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、先頭情報及び最終情報に基づいて、先頭及び最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0072】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0073】
また、本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、最終情報に基づいて、最終の分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0074】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0075】
また、本発明に係るデータ受信装置は、コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、データ送信装置から繰り返し送信される分割データを受信する分割データ受信手段と、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で電子データを構成するデータ構成手段と、を備えることを特徴とする。
【0076】
このように繰り返し送信される分割データを受信する分割データ受信手段を備えることによって分割データの受信確率を高め、コネクションレス型の伝送方法における静的な電子データの伝送の信頼性を高めることができる。また、データ構成手段は、先頭のシーケンス番号と最終のシーケンス番号との間に存在するすべての分割データを受信した時点で元の電子データを再構成するので、電子データを確実に再構成することができる。
【0077】
上記データ受信装置において、データ受信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された電子データを受信し、分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データをデータ送信装置から繰り返し受信する付随データ受信手段と、付随データ受信手段によって受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生手段と、をさらに備えることを特徴としても良い。
【0078】
このように静的な電子データと動的な電子データのそれぞれから生成された分割データに同一フォーマットの表示開始時刻に関する情報を付与された分割データを受信し、さらに繰り返し送信される付随データに基づいて表示開始時刻と絶対時刻との対応を関係付けることにより、静的な電子データ及び動的な電子データの表示開始時刻の同期をとり、電子データ再生ステップにおいて同時に再生することができる。付随データは、定期的に繰り返し送信されても良いし、ランダムに送信されても良い。
【0079】
上記データ受信装置が受信する分割データを格納するパケットはRTPパケットであり、RTPヘッダのシーケンス番号を分割データのシーケンス番号として記録し、RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、RTPヘッダのマーカビットを最終の分割データであることの識別に用い、RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、ことを特徴としても良い。
【0080】
このようにシーケンス番号及び表示開始時刻に関する情報を表すために、RTP(Real Time Protocol)を用い、付随データとしてRTCP(RTP ControlProtocol)を用いることにより、既存のプロトコルとの整合性を保って容易にシステムを設計できる。
【0081】
上記データ受信装置は、データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信手段と、先頭のシーケンス番号と最終のシーケンス番号とに基づいて分割データ数を求め、分割データ長受信手段によって受信した分割データ長と分割データ数とを乗じることにより、電子データを構成するために必要なメモリ領域を算出するメモリ領域算出手段と、メモリ領域算出手段によって算出されたメモリ領域を確保するメモリ領域確保手段と、をさらに備えることを特徴としても良い。
【0082】
このように分割データ長受信手段によって分割データの最大長に関する情報を受信すると共に、先頭及び最終のシーケンス番号から分割データ数を求めることにより、電子データを構成するために確保すべきメモリ領域の大きさを算出でき、メモリ領域確保手段は効率良くメモリを確保することができる。
【0083】
上記データ受信装置は、データ送信装置から送信される、電子データのデータ長に関する情報を受信するデータ長受信手段と、データ長受信手段によって受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保手段と、をさらに備えることを特徴としても良い。
【0084】
このようにデータ長受信手段は、電子データのデータ長に関する情報を受信することにより、メモリ領域確保手段は効率良くメモリを確保することができる。なお、電子データのデータ長は、任意の分割データに付与されてデータ送信装置からデータ受信装置に送信されても良いし、分割データとは別に送信されることとしても良い。
【0085】
本発明に係るデータ伝送システムは、上記データ送信装置と、上記データ受信装置とを備え、データ送信装置からデータ受信装置にコネクションレス型の伝送方式によって電子データを送信することを特徴とする。
【0086】
上記したデータ送信装置と上記したデータ受信装置とを備えることにより、上記データ送信装置は電子データを分割した分割データを繰り返し送信し、データ受信装置は電子データを構成するすべての分割データをすべて受信した時点でもとの電子データを再構成することができるので、信頼性の高いコネクションレス型のデータ伝送システムを実現することができる。
【0087】
【発明の実施の形態】
以下、図面と共に本発明に係るデータ伝送方法及びデータ伝送システムの好適な実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
【0088】
(第1実施形態)
図4は、本発明の実施形態に係るデータ伝送システムの構成の一形態を示すブロック図である。このデータ伝送システムでは、ネットワーク100を介して一のデータ送信装置200と一以上のデータ受信装置300が接続されている。図4では、データ受信装置300とデータ受信装置350の2つが描かれているが、データ受信装置は2つに限られない。また、ネットワーク100は、インターネットのほか、企業LANや携帯電話網でもよい。データ伝送システムはデータ送信装置200がネットワーク100を介してデータ受信装置300とデータ受信装置300とに電子データを配信する。ここで配信される「電子データ」には、テキストや静止画などの静的な電子データと、映像や音声などの動的な電子データとが含まれる。以下の説明においては、動的な電子データを「映像(データ)」「音声(データ)」といい、静的な電子データを単に「電子データ」ということとする。
【0089】
図5は、データ送信装置200の構成を示すブロック図である。データ送信装置200は、セッションの制御を司るセッション制御部201とセッション制御に関する情報をパケット化するパケット化部202、映像情報を取得する映像取得部203、映像情報をパケット化するパケット化部204、映像パケットに付随する情報を生成してパケット化する付随情報生成・パケット化部205、音声情報を取得する音声取得部206、音声情報をパケット化するパケット化部207、音声パケットに付随する情報を生成してパケット化する付随情報生成・パケット化部208、電子データを取得する電子データ取得部209、取得した電子データを分割して分割データを生成する分割部210、分割データをパケット化するパケット化部211、当該電子データを繰り返して送信するか否か判定する繰り返し判定部212、電子データパケットに付随する情報を生成してパケット化する付随情報生成・パケット化部213、各メディアのパケットを送信するパケット送信部214、を備えている。以下、各構成要素について詳しく説明する。
【0090】
セッション制御部201は、データ送信装置200が配信する映像データ、音声データ及び電子データの各セッションに関する情報を記録し、必要に応じて各データのパケット化部204、207、211と情報をやり取りする。上記セッションに関する情報としては、宛先のアドレスや使用するプロトコルに関する情報、例えばRTP(Real−time Transport Protocol)/UDP(User Datagram Protocol)を使うといった情報や、UDPのポート番号やRTPのペイロードタイプ識別子の値などが含まれる。そして、これらのセッション情報をデータ受信装置300に伝えるために、これらの情報をパケット化部202でパケット化し、パケット送信部214にてパケット送信処理が行われる。セッション情報を伝送するためのプロトコルとして、SAP(Session Announcement Protocol)やRTSP(Real Time Streaming Protocol)、SIP(Session Initiation Protocol)などが挙げられる。
【0091】
映像取得部203は映像データを取得する機能を有する。映像情報の取得は、例えば映像ファイルを読み込んだり、ビデオカメラから得た情報をMPEGなどの映像符号化したりすることで行われる。そして、パケット化部204にて映像データをパケット化する。パケット化の際には、各パケットに連続して割り当てられるシーケンス番号及び表示時刻に関する情報が付与される。また、セッション制御部201から得られるセッション情報に基づいてパケット化する。セッション情報としては、例えば宛先IPアドレスや、UDPポート番号、RTPペイロードタイプなどが挙げられる。ここでは、映像情報はRTP/UDP/IPパケットとしてパケット化されるものとするが、本発明はこれに限定されるものではない。
【0092】
パケット化部204によってパケット化された映像パケットは、パケット送信部214に伝えられ、パケット送信部214によって送信処理がなされる。同時に、付随情報生成・パケット化部205は、映像パケットに対する付随情報を生成してパケット化する。映像パケットの付随情報としては、例えば、映像パケットの送信者に関する情報や、映像パケットの送信個数、さらには映像パケットに付与される表示時刻に関する情報と絶対時刻との対応付けを可能とする情報などがある。映像情報がRTPパケットとしてパケット化される場合には、その付随情報はRTCP(RTP Control Protocol)パケットとしてパケット化される。
【0093】
音声取得部206は、音声データを取得する機能を有する。音声情報の取得は例えば音声ファイルを読み込んだり、マイクから得た情報をAMRやAACなどの音声・音響符号化したりすることで行われる。パケット化部207は、音声取得部206で取得した音声データをパケット化する機能を有する。パケット化の際には、各パケットに連続して割り当てられるシーケンス番号及び表示時刻に関する情報が付与される。また、付随情報生成・パケット化部208は、セッション制御部201から得られるセッション情報に基づいて付随情報を生成してパケット化する機能を有する。セッション制御部201から得られるセッション情報としては、例えば、宛先IPアドレスや、UDPポート番号、RTPペイロードタイプなどの情報がある。ここでは、音声情報がRTP/UDP/IPパケットとしてパケット化されるものとするが、本発明はこれに限定されない。
【0094】
本実施形態に係るデータ伝送システムにおいては、映像及び音声の処理部としてそれぞれ一系列ずつ有しているが、これらの処理部はそれぞれ複数あっても良いし、いずれかの処理系列がなくても良い。
【0095】
電子データ取得部209は、電子データを取得する機能を有する。分割部210は、電子データ取得部209によって取得された電子データを分割して分割データを生成する機能を有する。パケット化部211は、映像・音声パケットと同じフォーマットを用いて電子データをパケット化する機能を有する。すなわち、映像・音声がRTPによってパケット化される場合には、電子データもRTPを用いてパケット化される。そして、パケット化部211でパケット化された分割データは、繰り返し判定部212に渡される。繰り返し判定部212は、1回以上の繰り返し送信制御を行う機能を有する。付随情報生成・パケット化部213は、電子データパケットに対する付随情報が映像パケットや音声パケットに対する付随情報と同様に生成して、パケット化する機能を有する。ここでは、電子データの処理系統として一系統のみ有しているが、静止画とテキストデータを同時に送信する場合などは、一以上の電子データ処理系統を有しても良い。
【0096】
次に、電子データの処理について詳しく説明する。図6は、データ送信装置200における電子データの送信手順を示す図である。データ送信装置200は、送信すべきデータを電子データ取得部209によって取得する(S10)。送信するデータには、テキストデータや静止画データなどが含まれる。電子データは、データ送信装置200に備えられたメモリから読み込んだり、もしくは遠隔にある他の装置からHTTP等を用いて取得したりすることができる。
【0097】
続いて、データ送信装置200の分割部210は、電子データ取得部209によって取得した電子データを分割して分割データを生成する(S12)。図7を参照しながら、電子データの分割例について説明する。図7では、電子データ400が3分割された様子を示している。電子データは分割されて、分割データ410、分割データ420、分割データ430が生成される。続いて、データ送信装置200は、分割データを取り出し(S14)、その分割データが電子データの先頭であるか否かを判定する(S16)。分割データが先頭である場合には、その分割データに先頭であることを表す先頭情報を付与する(S18)。そして、RTPパケットを形成するために、RTPヘッダ及びペイロードヘッダを構成する(S20)。以下の説明では、分割データはすべて、RTPフォーマットを用いてパケット化されるものとする。ただし、パケットフォーマットは、パケット固有のシーケンス番号と表示時刻に関する情報、さらに最終の分割データであることを示す情報を含むことができればよく、本発明はRTPに限定されるものではない。次に、その分割データが電子データの最終の分割データであるかどうか判定する(S22)。分割データが最終でない場合には、次の分割データを取り出し、分割データが最終である場合は、RTPパケットのマーカビットを「1」に設定する(S24)。すべての分割データのパケット化が終了すると、パケット送信に移る(S26)。
【0098】
生成された分割データのRTPパケット化の様子を図8、図9、図10に示す。図8は、先頭の分割データに対するRTPパケット化の様子を示す図である。RTPヘッダフィールドはRTPの規格によって決定されている。RTPヘッダフィールドのフォーマットについては、図1を参照されたい。一般的に、バージョンフィールドには、RTPのバージョンである「2」の値が、パディングビット、拡張ビット、寄与送信元カウントフィールドには「0」の値が挿入される。ペイロードタイプフィールドには、あらかじめSDP(Session Description Protocol)等の他の方法で定められた値が挿入される。シーケンス番号フィールド(SN)には、本例では「10」の値が挿入されているが、これに限るものではない。タイムスタンプフィールドは、電子データを表示する時刻に関する情報が挿入され、同期送信元識別子フィールドには、そのRTPパケットの送信元がデータ送信装置200であることを示す識別子が付与される。RTPペイロード内には、分割データ410が電子データの先頭の分割部であることを示し先頭情報が挿入される。図8において斜線を付した「11」という値をペイロードヘッダとして定めているが、これに限るものではない。続いて、電子データが存在していることを示す値「0」の1ビットのペイロードヘッダが挿入され、分割データ410がその後に続く。
【0099】
図9は、2番目の分割データ420に対するRTPパケット化の様子を示す図である。RTPヘッダの各フィールドは、上記と同様にRTPの規格に従って決定される。バージョンフィールド、パディングフィールド、拡張ビット、寄与送信元カウントフィールド、ペイロードタイプフィールドには、図8に示される前パケットと同じフィールド値が付与される。また、分割データは、最後の分割データではないため、マーカビット(M)は「0」に設定される.シーケンス番号フィールド(SN)には、前パケットのSNに1を加えた「11」が付与される。タイムスタンプフィールド及び同期送信元識別子フィールドには、前パケットと同じ値が挿入される。続いて、ペイロード内には、電子データが存在していることを示す値「0」のペイロードヘッダが挿入され、分割データ420がそのあとに続く。
【0100】
図10は、3番目の分割データ430に対するRTPパケット化の様子を示す図である。RTPヘッダの各フィールドは、上記と同様にRTPの規格に従って決定される。バージョンフィールド、パディングフィールド、拡張ビット、寄与送信元カウントフィールド、ペイロードタイプフィールドには、図8に示される前パケットと同じフィールド値が付与される。また、分割データ430は、最後の分割データであるため、マーカビット(M)は「1」に設定される。シーケンス番号フィールド(SN)には、前パケットのSNに1を加えた値「12」が付与される。タイムスタンプフィールド及び同期送信元識別子フィールドには、前パケットと同じ値が挿入される。続いて、ペイロード内には、電子データが存在していることを示す値「0」のペイロードヘッダが挿入され、分割データがそのあとに続く。
【0101】
上述では、電子データ及び値「0」のペイロードヘッダのみがRTPペイロード内に格納される例を示したが、有効期間に関する情報や、その他の情報をRTPペイロード内に格納することも可能である。
【0102】
上述のようにして生成されたRTPパケットに対して、当該RTPパケットをデータ受信装置300へ伝送するためにトランスポート層ヘッダ及びネットワーク層ヘッダが付与される。トランスポートヘッダの例としてUDP(User Datagram Protocol)ヘッダが、ネットワーク層ヘッダの例としてIP(Internet Protocol)ヘッダが代表的なヘッダとして挙げられる。
【0103】
このように3つの分割データがRTPパケット化されたのち、データ送信装置200は、各RTPパケットのシーケンス番号順に送信する。そして、データ送信装置200は、RTPパケットを一通り送信し終えると、繰り返し判定部212によって、当該RTPパケットの送信を終了するか、あるいは続行するかを判定する。繰り返し判定部212は、例えば、1)所定回数以上RTPパケットを繰り返し送信したか、2)所定時間以上RTPパケットを繰り返し送信したか、3)次に送信すべき電子データがあるか、などに基づいて判定を行う。繰り返し送信すると判定された場合には、データ送信装置200は、再度パケット送信部214によって各RTPパケットをシーケンス番号順に送信する。このようにして、図11に示されるように1以上のデータ受信装置300、350に対して、電子データを繰り返し送信する。繰り返し送信を終了する場合には、次に送信すべき電子データを取得し、再び電子データの分割、分割データのパケット化、パケット送信の動作を繰り返す。
【0104】
次に、データ受信装置300について説明する。データ受信装置300は、データ送信装置200から送信されるRTPパケットを受信し、音声データ、映像データ及び電子データの再生を行う装置である。
【0105】
図12は、データ受信装置300の構成を示すブロック図である。データ受信装置300は、パケットを受信して各処理部に振り分けるパケット受信・振分部301、セッション制御パケットを処理して情報を抽出するセッション制御パケット分離部302、抽出されたセッション情報を記録して解析するセッション制御部303、映像パケットを処理して映像データを抽出する映像パケット分離部304、抽出された映像データを再生処理する映像再生部305、映像パケットに付随する情報を処理して解析する映像付随情報解析部306、音声パケットを処理して音声データを抽出する音声パケット分離部307、抽出された音声データを再生処理する音声再生部308、音声パケットに付随する情報を処理して解析する音声付随情報解析部309、分割データパケットを処理して分割データを抽出すると共に分割データから電子データを再構成するデータパケット分離・再構成部310、再構成された電子データを再生する電子データ再生部311、電子データパケットに付随する情報を処理して解析するデータ付随情報解析部312、映像・音声・電子データの同期制御を行う同期制御部313、を備えている。以下、各構成要素について詳細に説明する。
【0106】
パケット受信・振分部301は、パケットの受信処理を行い、受信したパケットをそのパケットが属する処理系統へパケットを振り分ける機能を有する。通常、振り分けに必要な情報はセッション制御パケットに格納されているため、セッション制御パケットを受信するまで、他のパケットは廃棄されるか、あるいは一旦保存される。パケット受信・振分部301は、セッション制御パケットを受信したときに、そのセッション制御パケットをセッション制御パケット分離部302に渡す。なお、セッション制御パケットであるか否かは、例えばポート番号やIPアドレスがあらかじめ定められた値に設定されているかどうかで判定することが可能である。
【0107】
セッション制御パケット分離部302は、セッション制御パケットからセッション情報を抽出し、セッション制御部303へ通知する機能を有する。セッション制御は、セッション情報を解析し、振り分けに必要な情報、例えば各メディアパケットのポート番号やペイロードタイプなどをパケット受信・振分部301に通知する。また、各メディアの符号化情報や復号パラメータ等がある場合には、セッション制御部303は、各再生部305,308,311にそれらの情報を通知する。
【0108】
セッション制御パケットを受信した後は、パケット受信・振分部301は、受信した各メディアパケット(分割データパケットを含む)や付随パケットを該当する処理系統に振り分ける。
【0109】
パケット受信・振分部301は、映像パケットを受信した場合には、そのパケットを映像パケット分離部304に渡す。映像パケット分離部304は、パケット受信・振分部301から渡された映像パケットから映像データを抽出して映像再生部305に渡す。その際に、パケットに含まれている当該データの表示時刻に関する情報、RTPパケットの場合にはRTPタイムスタンプ情報も映像再生部305へ渡す。一方、映像の付随情報パケットを受信した場合には、パケット受信・振分部301はそのパケットを映像付随情報解析部306に渡し、映像付随情報解析部306は付随情報パケットを解析し、その中から映像パケットに含まれる表示時刻に関する情報と絶対時刻との関連付けを抽出し、その情報を同期制御部313に伝達する。付随情報がRTCPパケットで送信される場合には、映像パケットに含まれるRTPタイムスタンプと絶対時刻を表すNTP(Network Time Protocol)タイムスタンプとの関連付けが可能であり、これらの情報を同期制御部313に伝達する。
【0110】
パケット受信・振分部301は、音声パケットを受信した場合には、そのパケットを音声パケット分離部307に渡す。音声パケット分離部307は、パケット受信・振分部301から渡された音声パケットから音声データを抽出して音声再生部308に渡す。その際に、パケットに含まれている当該データの表示時刻に関する情報も音声再生部308に渡す。一方、音声の付随情報パケットを受信した場合には、パケット受信・振分部301は、そのパケットを音声付随情報解析部309に渡し、音声付随情報解析部309は付随情報パケットを解析し、その中から音声パケットに含まれる表示時刻に関する情報と絶対時刻に関する情報との関連付けを抽出し、当該情報を同期制御部313に伝達する。
【0111】
パケット受信・振分部301が電子データパケットを受信した場合には、データパケット分離・再構成部310にそのパケットを渡す。データパケット分離・再構成部310は、分割データをまとめて再構成してもとの電子データに戻し、その電子データを電子データ再生部311に渡す。この電子データの再構成の詳細については後述する。一方、電子データパケットに付随する情報パケットを受信した場合に、パケット受信・振分部301はそのパケットをデータ付随情報解析部312に渡し、データ付随情報解析部312は付随情報パケットを解析し、その中から電子データパケットに含まれる表示時刻に関する情報と絶対時刻との関連付けを抽出し、当該情報を同期制御部313に伝達する。
【0112】
同期制御部313は、映像、音声、及び電子データの付随情報から得られる表示時刻に関する情報、例えばRTPタイムスタンプと、絶対時刻(例えばNTPタイムスタンプとを関連付ける情報)から各データの同期制御を行う。RTPタイムスタンプはそれぞれのデータごとに独自の粒度で付与されるので、映像や音声、さらには電子データを特定のタイミングで同期させて表示させるためには、同期制御が必要となる。NTPタイムスタンプはすべてのデータで同一のフォーマット及び粒度であるため、同期制御部313はNTPタイムスタンプをそれぞれの再生部に通知することにより、各再生部305,308,311はタイミングを合わせて再生・表示することが可能となる。
【0113】
続いてデータパケット分離・再構成部310における電子データの再構成の処理手順について詳細に説明する。図13は、データ受信装置300における電子データ再構成のフローチャートである。
【0114】
図13に示すフローチャートを図14に示すRTPパケット送信シーケンス例を用いて説明する。図14では、データ送信装置200が電子データAと電子データBとをデータ受信装置300に対して送信する例を示している。電子データA及び電子データBはそれぞれ3つの分割データに分割され、RTPパケット化された後に送信される。送信回数はそれぞれ2回ずつ繰り返している。図14において、「SN」及び「M」はそれぞれRTPパケットシーケンス番号とマーカビットを表しており、この例ではSNは「10」から割り当てられている。図14を参照すると、電子データAでは1回目の送信においてSN=10の分割データパケットをロスし、電子データBでは1回目の送信においてSN=14の分割データパケットをロスしている。
【0115】
以下に、図13を参照しながら、データ受信装置300における処理手順について説明する。データ受信装置300は、2つの変数TopとLastを有する。Topは受信中の電子データの先頭のRTPパケットのシーケンス番号を設定する変数であり、Lastは受信中の電子データの最終のRTPパケットのシーケンス番号を設定する変数である。データ受信装置300は、最初、この2つの変数をNULL値に設定する(S30)。
【0116】
データ受信装置300は、パケットの受信を待ち(S32)、データ送信装置200から送信されたパケットを受信する(S34)。データ受信装置300は、本来であれば、SN=10、M=0のパケットを受信するはずであるが、ここでは伝送途中でパケットロスが発生したものとし、SN=11、M=0のパケットを先に受信したものとする。このパケットは電子データAの最初のパケットではないので、このパケットに先頭情報は含まれていない。図13において、パケット受信の状態に移り、続いて同じSNのパケットをすでに受信していたかどうか判定する(S36)。この場合、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoであり、そのパケットをメモリに保存し、そのRTPパケットのSNを記録する(S40)。次に、そのRTPパケットに先頭情報が含まれているかどうか判定する(S42)。このRTPパケットには先頭情報が含まれていないため、判定結果はNoとなる。続いて、マーカビットが「1」であるか否か、すなわち、このRTPパケットが最終のパケットであるか否か判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0117】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。このパケットの電子データAの先頭のパケットではないため、パケットに先頭情報は含まれていない。パケットの受信後、同じSNのRTPパケットすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまで受信したことがないため、判定結果はNoであり、データ受信装置300はこのパケットをメモリに保存し、このパケットのSNを記録する(S40)。次に、このRTPパケットに先頭情報が含まれているか否か判定する(S42)。このRTPパケットには先頭情報が含まれていないため、判定結果はNoとなる。続いて、マーカビットが1であるか否か、すなわちこのRTPパケットが最終のパケットであるか否か判定する(S46)。このRTPパケットのマーカビットは「1」であるので、判定結果はYesとなり、データ受信装置300はLast変数にこのRTPパケットのSN値「12」を入力する(S48)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop変数がNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0118】
データ送信装置200は、電子データAを繰り返し送信し、SN=12のRTPパケットを送信した後に再びSN=10のRTPパケットを送信する。データ受信装置300は、SN=10、M=0のパケットを受信する(S34)。このパケットは電子データAの先頭のパケットであるため、このパケットには先頭情報が含まれている。パケットを受信した後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットに先頭情報が含まれているかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれているため、判定結果はYesとなり、データ受信装置300は、Top変数にこのRTPパケットのSN値「10」を入力する(S44)。続いて、データ受信装置300は、マーカビットが「1」であるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるので、判定結果はNoとなる。続いて、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)。この時点で、Top=10≦SN≦Last=12を満たすSNのパケットをすべて受信したことになるため、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0119】
続いて、データ受信装置300は、SN=11、M=0のパケットを受信する(S34)が、このパケットについては、同じSNのパケットをすでに受信しているので、このパケットを廃棄して(S38)、受信待機の状態(S32)に移る。続いてSN=12、M=1のパケットを受信する(S34)が、このパケットについても、同じSNのパケットをすでに受信しているので、このパケットを廃棄して(S38)、受信待機の状態(S32)に移る。
【0120】
続いて、電子データBを受信する動作について説明する。まず、データ受信装置300は、受信待機の状態(S32)において電子データBの分割データであるSN=13、M=0のRTPパケットを受信する(S34)。このパケットは電子データBの先頭のパケットであるため、このパケットには先頭情報が含まれている。パケット受信後、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=13のパケットはこれまでに受信していないので、判定結果はNoであり、データ受信装置300はこのRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットに先頭情報が含まれているか否か判定する(S42)。このRTPパケットには先頭情報が含まれているので、判定結果はYesとなり、Top変数にこのRTPパケットのSN値「13」を入力する(S44)。続いて、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0121】
続いて、本来であれば、データ受信装置300はSN=14、M=0のパケットを受信するはずであるが、ここでは、伝送途中でパケットロスが発生したものとし、SN=15、M=1のパケットを先に受信したとする(S34)。このパケットは電子データBの先頭のパケットではないため、先頭情報を含まないことになる。パケットを受信すると、まず、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=15のパケットはこれまでに受信していないので、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットが先頭情報を含んでいるかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれていないため、判定結果はNoである。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちRTPパケットが最終の分割データであるかどうか判定する(S46)。このRTPパケットのマーカビットは「1」であるので、判定結果はYesとなり、データ受信装置300は、Last変数にこのRTPパケットのSN値「15」を入力する(S48)。続いて、続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=13、Last=15が設定されているが、SN=14のパケットを受信していないため、判定結果はNoとなり、受信待機の状態(S32)に戻る。
【0122】
続いて、データ受信装置300は、SN=13、M=0のパケットを受信する(S34)が、このパケットについては、すでに同じSNのパケットを受信しているため、受信したパケットを廃棄し(S38)、受信待機の状態に移る(S32)。
【0123】
続いて、データ受信装置300は、SN=1、M=0のパケットを受信する(S34)。このパケットは電子データBの先頭のパケットではないため、先頭情報を含んでいない。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=14のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300は、このRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。次に、データ受信装置300は、このRTPパケットが先頭情報を含んでいるかどうか判定する(S42)。このRTPパケットには、先頭情報が含まれていないので、判定結果はNoとなる。続いて、データ受信装置300は、このRTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S46)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=13≦SN≦Last=15を満たすSNのパケットをすべて受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データBを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0124】
続いてSN=15、M=1のパケットを受信する(S34)が、このパケットについてはすでに同じSNのパケットを受信しているため、受信したパケットを廃棄し(S36)、受信待機の状態(S32)に移る。
【0125】
以上のように、電子データを分割して生成した分割データの先頭のパケットに先頭情報が含まれていることにより、データ受信装置300は先頭のパケットを判別することができ、電子データを元通り、再構成することが可能となる。もし、先頭情報を有しておらず、最初に受信した分割データを先頭の分割データと判定するとすれば、図15に示されるように、先頭の分割データ(SN=10)を伝送ロスした場合には、SN=11の分割データを先頭の分割データとして処理することとなり、もとの電子データを再構成できないという不都合が生じるおそれがあるが、本実施形態においては先頭情報を有しているので、確実に電子データを再構成できる。
【0126】
本実施形態においては、先頭情報を、電子データが存在することを示す1バイトのペイロードヘッダ(Type=0)とは別のペイロードヘッダで表したが、図16に示されるように、電子データが存在し、かつ電子データが先頭であることを示すペイロードヘッダとして表すことも可能である。この場合、電子データが存在することを意味する1バイトのペイロードヘッダ(Type=0)は不要となり、1バイト分の情報量を圧縮することができる。
【0127】
(第2実施形態)
次に、本発明の第2実施形態に係るデータ伝送方式について説明する。第2実施形態に係るデータ伝送方式では、電子データの先頭のRTPパケットのシーケンス番号を明示的に通知するペイロードヘッダを用いる。図17は、このペイロードヘッダを利用したRTPパケットフォーマットを示す図である。図17は、図10と同様に、電子データの最終の分割部である分割データ430をRTPパケット化した場合を示している。RTPヘッダ内のフィールドは、図10と同様に設定される。RTPペイロード内に、先頭シーケンス番号(TopSN)を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて先頭シーケンスを表す16ビットのフィールドが付与される。本例では、先頭シーケンス番号を通知するペイロードヘッダとして「12」の値を持つペイロードヘッダを表しているが、これに限定されるものではない。そして、電子データがあることを示す値「0」のペイロードヘッダが続き、その後、分割データ430が挿入される。
【0128】
このペイロードヘッダにより、電子データの先頭のRTPパケット以外でも電子データの先頭のRTPパケットのシーケンス番号を通知することが可能となり、データ受信装置300の処理を簡素にすることができる。
【0129】
例えば、マーカビットが「1」に設定されたパケット、すなわち、電子データの最終の分割データを格納しているパケットには必ず先頭のシーケンス番号を通知するペイロードヘッダを付与するものとする。図18は第2実施形態に係るデータ受信装置300によってデータを受信するフローを示すフローチャートであるが、同図に示すように、データ受信装置300では、先頭情報が存在するかどうか、すべてのRTPパケットに対して判定する必要がなくなり、マーカビットの設定されたRTPパケットから先頭のパケットのシーケンス番号を知ることができるようになる。
【0130】
図18を参照しながら、第2実施形態に係るデータ受信装置300が電子データを受信する動作について説明する。ここでは、図19に示すシーケンスに従って電子データが送信される場合を例として説明を進める。
【0131】
第1実施形態に係るデータ受信装置300と同様に、第2実施形態に係るデータ受信装置300は、Top変数及びLast変数を有し、それぞれはじめはNULL値が設定されている(S30)。
【0132】
データ受信装置300は、最初にパケットの受信待ち状態に移行し(S32)、データ送信装置200から送信されたSN=11、M=0のパケットを受信する(S34)。続いて、データ受信装置300は、同じSNのRTPパケットを受信しているかどうか判定する(S36)。このとき、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoであり、データ受信装置300はこのRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。続いて、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「0」であるため、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop及びLast両変数はともにNULL値であるので、結果はNoとなり、受信待機の状態(S32)に戻る。
【0133】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。このパケットには、明示的に先頭の分割データを含むRTPパケットのシーケンス番号「10」が図17のフォーマットで通知されている。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまでに受信していないため、判定結果はNoであり、データ受信装置300はこのRTPパケットを保存し、このRTPパケットのSNを記録する(S40)。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「1」であるため、判定結果はYesとなり、Last変数にこのRTPパケットのシーケンス番号「12」と入力すると共に、Top変数に明示的に通知される先頭のシーケンス番号(TopSN=10)を入力する(S52)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、Top=10≦SN≦Last=12を満たすSNのうち、SN=10のパケットを受信していないため、結果はNoとなり、受信待機の状態(S32)に戻る。
【0134】
続いて、データ受信装置300は、SN=10、M=0のパケットを受信する(S34)。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまで受信していないため、判定結果はNoであり、データ受信装置300は、このRTPパケットをメモリに保存し、このRTPパケットのSNを記録する(S40)。続いて、データ受信装置300は、RTPパケットのマーカビットが1であるかどうか、すなわちこのRTPパケットが最終のパケットであるかどうか判定する(S50)。このRTPパケットのマーカビットは「0」であるので、判定結果はNoとなる。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=10≦SN≦Last=12を満たすSNのパケットをすべて受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0135】
このように、明示的に先頭のシーケンス番号を通知する情報が、マーカビット「1」が設定されたパケット、すなわち最終のパケットに含められて伝送されることにより、データ受信装置300において、すべてのRTPパケットに対して先頭情報が含まれているかどうか判定する必要がなく、データ受信装置300における処理量を軽減させることができる。
【0136】
(第3実施形態)
上記した第1実施形態及び第2実施形態では、最初にパケットを受信したときに、電子データが何個のRTPパケットから構成されているのか分からないため、電子データを再構成するためのメモリ領域をどの程度確保すれば良いのか判断できなかった。第3実施形態に係るデータ伝送システムでは、データ受信装置300が最初にパケットを受信した時点で、電子データの大きさを推測できるように、電子データの先頭の分割データを含むRTPパケットのシーケンス番号と最終の分割データを含むRTPパケットのシーケンス番号との両方を通知するペイロードヘッダを用いる。
【0137】
図20は、先頭及び最終のシーケンス番号を通知するペイロードヘッダを有するRTPパケットのフォーマット例を示す図である。図9と同様に、電子データを3つに分割して生成した分割データのうち、2番目の分割データ420を含むRTPパケットを示している。RTPヘッダは、図9と同様に設定される。RTPペイロード内に、先頭シーケンス番号(TopSN)及び最終シーケンス番号(LastSN)を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて先頭シーケンス番号を表す16ビットのフィールドが付与される。本例では、先頭及び最終シーケンス番号を通知するペイロードヘッダとして「13」の値を有するペイロードヘッダを表しているが、これに限定されるものではない。そして電子データがあることを示す値「0」のペイロードヘッダが続き、その後、分割データ420が挿入される。
【0138】
このペイロードヘッダにより、任意のRTPパケットで、電子データの先頭及び最終分割データを有するRTPパケットのシーケンス番号を通知できることになるため、データ受信装置300において、電子データ再構成のためのメモリ確保が容易になると共に、受信処理を簡潔にすることができる。例えば、すべてのRTPパケットに必ず先頭及び最終のシーケンス番号を通知するペイロードヘッダを付与するものとする。図21は第3実施形態に係るデータ受信装置300によってデータを受信するフローを示すフローチャートであるが、同図に示すように、データ受信装置300では、ペイロードヘッダから電子データの分割数を知ることが可能になり、メモリ領域の確保が確実にできるようになる。
【0139】
図21を参照しながら、第3実施形態に係るデータ受信装置300が電子データを受信する動作について説明する。ここでは、図22に示すシーケンスによって電子データが送信される場合を例として説明を進める。
【0140】
第1実施形態に係るデータ受信装置300と同様に、第3実施形態に係るデータ受信装置300は、Top変数及びLast変数を有し、それぞれはじめはNULL値が設定されている。
【0141】
データ受信装置300は、最初にパケット受信待ちの状態に移行し(S32)、データ送信装置200から送信されたSN=11、M=0のパケットを受信する(S34)。このRTPパケットには、電子データの先頭シーケンス番号「10」及び最終シーケンス番号「12」を通知するペイロードヘッダが含まれている。図21において、パケット受信の状態に移り、続いてデータ受信装置300は、同じSNのRTPパケットを受信しているかどうか判定する(S36)。このとき、データ受信装置300は、初めてRTPパケットを受信したため、判定結果はNoである。続いて、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。いずれかの条件、もしくは両方の条件を満たしている場合には、このRTPパケットはこれまでデータ受信装置300が受信したことのない新たな電子データを受信していることになる。本例では、この時点では、Top変数がNULLであるため、結果はYesとなる。続いて、データ受信装置300はRTPパケットのペイロード部に含まれている、先頭シーケンス番号(TopSN=10)と最終シーケンス番号(LastSN=12)を取り出し、それぞれTop変数、Last変数に代入する。さらに、この電子データが、LastSN−TopSN+1=3個のRTPパケットに分割されていることが分かるため、データ受信装置300は、分割数分のパケットを保存できるだけのメモリ領域を確保する(S56)。そして、データ受信装置300は、受信したパケットを確保したメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、この時点ではTop=10≦SN≦Last=12を満たすSNのうち、SN=10及びSN=12のパケットを受信していないため結果はNoとなり、受信待機の状態(S32)に戻る。
【0142】
続いて、データ受信装置300は、SN=12、M=1のパケットを受信する(S34)。データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=12のパケットはこれまでに受信していないため、判定結果はNoであり、続いて、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。ここでは、Top変数には「10」が代入されており、Last変数の値「12」は受信したRTPパケットのシーケンス番号と等しいため、両方の条件を満たさないことになり、結果はNoとなる。データ受信装置300はこのRTPパケットを確保されたメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)が、Top=10≦SN≦Last=12を満たすSNのうち、SN=10のパケットを受信していないため、結果はNoとなり、受信待機の状態(S32)に戻る。
【0143】
続いて、データ受信装置300は、SN=10、M=0のパケットを受信する(S32)。パケット受信後、データ受信装置300は、同じSNのRTPパケットをすでに受信しているかどうか判定する(S36)。SN=10のパケットはこれまで受信していないため、判定結果はNoとなる。続いて、データ受信装置300は、Top変数がNULLであるか、もしくはLast変数が受信RTPパケットのシーケンス番号(SN)より小さいかどうか判定する(S54)。ここでは、Top変数には「10」が代入されており、Last変数の値「12」は受信したRTPパケットのシーケンス番号「10」より大きいため、両方の条件を満たさないことになり、結果はNoとなる。データ受信装置300はこのRTPパケットを先ほど確保されたメモリ領域に保存し、このRTPパケットのSNを記録する(S58)。続いて、データ受信装置300は、Top≦SN≦Lastを満たすすべてのSNのRTPパケットを受信したかどうかを判定する(S60)。この時点では、Top=10≦SN≦Last=12を満たすすべてのSNのパケットを受信したことになるので、判定結果はYesとなり、データ受信装置300は、全パケットをメモリから取り出し、電子データAを再構成する(S62)。そして、データ受信装置300は、Top変数及びLast変数にNULL値を設定し(S30)、はじめの状態に戻る。
【0144】
このように明示的に先頭のシーケンス番号及び最終のシーケンス番号を通知する情報を全パケット中に含めて伝送することにより、データ受信装置300は、最初のパケットを受信した時点で電子データの分割数を算出することが可能となり、必要なメモリ領域を容易に確保できる。携帯電話のようにメモリ領域が比較的小さいデータ受信装置300に電子データを配信する場合、メモリ領域を確保できるように情報を通知することは特に有効である。
【0145】
上記のペイロードヘッダを全てのRTPパケットに含めて伝送する場合、すべてのパケットに5バイトの情報を付与することとなるため、その情報量の増大が問題となる。そのため、このペイロードヘッダを全てのRTPヘッダに付与するのではなく、一部のRTPパケットに含めて伝送することも可能である。この場合、データ受信装置300は、このペイロードヘッダを含むRTPパケットを受信するまで、他のRTPパケットを廃棄し続けるか、もしくは、メモリ領域を十分確保できる場合には、廃棄せずに一時的に空いているメモリ領域に保持することができる。
【0146】
(第4実施形態)
第3実施形態に係るデータ伝送方式では、電子データの分割数を把握することにより、分割数分のパケットを保存できるためのメモリ領域を確保することが可能となるが、一般にパケット長は可変であるので、パケット長をあらかじめ大きめに見積もる必要があった。このため、実際に必要な大きさ以上のメモリ領域を確保してしまうことがあり得た。第4実施形態に係るデータ伝送方式では、必要なメモリ領域をより正確に見積もることが可能なように、あらかじめ分割データの最大長を通知できるようにする。一般に、RTPを用いてパケット伝送を行う場合、SAP(Session Announcement Protocol)やRTSP(Real Time Streaming Protocol)、SIP(Session Initiation Protocol)等のプロトコルを用いて、当該RTPセッションに関する情報を通知する。第4実施形態に係るデータ伝送方式では、これらのプロトコルを用いて分割データの最大長を通知する。
【0147】
図23は、SAPを用いた場合の最大分割長の通知例を示す図である。データ送信装置200はSAPをデータ受信装置300に対して繰り返し送信し、その中にSDP(Session Description Protocol)を用いてセッションに関する情報を通知する。このSAPの中でSDP記述を用いて、例えば、””a:fmtp:101 pmaxsize=1024”という一文を加えて、最大分割長を通知する。ここで、”a:fmtp:101”はペイロードタイプ101を有するRTPパケットに対して設定情報があることを意味し、それに続く””pmaxsize=1024”で最大分割長が1024バイトであることを表す。データ送信装置200は、こうして通知される最大分割長以下になるように電子データを分割して分割データを生成し、ペイロードタイプ101のRTPパケットにパケット化して伝送する。
【0148】
データ受信装置300は、データ送信装置200から送信されたSAPメッセージを受信し、SAPの中に記述された最大分割長についての情報を取得する。そして、データ受信装置300は、第3実施形態に係るデータ受信装置300と同様の方法によって、RTPパケットのペイロードヘッダから分割数を算出し、最大分割長×分割数のメモリ領域を確保する。そして、以降受信するRTPパケット内の電子データを確保されたメモリ領域に保存する。
【0149】
このように最大分割長をあらかじめ通知することにより、データ受信装置300は電子データを確保するための適切な大きさのメモリ領域を確保でき、有効なメモリ領域の活用が可能となる。
【0150】
(第5実施形態)
上述した各実施形態においては、受信した分割データを一旦メモリに保存し、すべての分割データが揃った時点で電子データを元通り再構成していた。しかし、携帯電話等のメモリ領域の少ないデータ受信装置300では、再構成の処理の負荷も大きい。本実施形態では、分割データをメモリに保存した時点で、電子データの再構成を行えるようにするため、あらかじめ電子データの固定分割長を通知する。
【0151】
分割データの固定分割長は、SAPやRTSP、SIPを用いて通知される。例えば、””a:fmtp:101 psize=1024”というSDPによる記述をSAPメッセージの中に加えて通知する。ここで、”a:fmtp:101”はペイロードタイプ101を有するRTPパケットに対して設定情報があることを意味し、それに続く””psize=1024”で固定分割長が1024バイトであることを表す。データ送信装置200は、こうして通知される固定分割長になるように電子データを分割して分割データを生成し、ペイロードタイプ101のRTPパケットにパケット化して伝送する。
【0152】
図24は、固定分割長通知時の電子データの分割の様子を示す図である。図24では、電子データを分割している。定められた固定分割長である1024バイトごとに先頭から分割していき、同一の分割長の分割データ510及び分割データ520を生成する。固定分割長に満たない最終のあまり部分については、そのまま最終の分割データ530とする。
【0153】
図25は、固定長に分割された電子データをRTPパケットによって送信する様子を示す図である。ここでは、3つの分割データはそれぞれSN=10、11、12のシーケンス番号が割り当てられたものとする。また、すべてのRTPパケットは先頭の分割データ510を有するRTPパケットのシーケンス番号と最終の分割データ530を有するRTPパケットのシーケンス番号を通知するペイロードヘッダを含んでいるものとする。図25では、データ送信装置200は、3つのRTPパケットを繰り返し送信している。
【0154】
データ受信装置300は、まず、データ送信装置200から送信されたSAPを受信し、SAPの中に記述された固定分割長についての情報を取得する。本例では、1024バイトという固定分割長を取得したものとする。
【0155】
次に、データ受信装置300は、RTPパケットのペイロードヘッダから先頭のシーケンス番号「10」及び最終のシーケンス番号「12」を取得して、電子データの分割数「3」を算出する。そして、データ受信装置300は、固定分割長と分割数とを乗じることにより、1024×3=3072バイトのメモリ領域を確保する。
【0156】
ここで、最初に受信したRTPパケットがSN=11のパケットであったとする。SN=11のパケットは、その電子データの2番目の分割データであり、固定分割長は1024バイトであることから、このパケットに含まれる分割データは、電子データの1025バイト目からのデータであることが分かる。データ受信装置300は、確保したメモリ領域のうち、1025バイト目からの領域に受信したSN=11の分割データを保存する。
【0157】
次に、データ受信装置300は、SN=12のパケットを受信したとする。SN=12のパケットは、その電子データの3番目の分割データであるので、1024×2+1=1029バイト目からのデータであることが分かる。また、このパケットは電子データの最終の分割データを含んでいるため、データ受信装置300は、確保したメモリ領域の2049バイト目からその分割データの最後までのメモリ領域に保存する。
【0158】
そして次に、データ受信装置300は、SN=10のパケットを受信したとする。SN=10のパケットは電子データの最初の電子データであるので、1バイト目からのデータであることが分かる。従って、データ受信装置300は、そのパケットに含まれる電子データを確保したメモリ領域の1バイト目から保存する。
【0159】
このようにして電子データを構成するすべてのRTPパケットを受信したことになり、同時に、メモリ領域において電子データが再構成されたため、電子データをメモリ領域からそのまま取り出すことができる。
【0160】
このように、固定分割長をあらかじめ通知することにより、データ受信装置300では、電子データを再構成するための適切な大きさのメモリ領域を確保することができると共に、RTPパケットの受信と同時に電子データの再構成を行うことができる。
【0161】
(第6実施形態)
上述した第4実施形態及び第5実施形態においては、データ送信装置200が最大、もしくは固定の分割長をあらかじめデータ受信装置300に通知し、RTPペイロード内で電子データの再構成に必要なメモリ領域を算出していたが、本実施形態においては、電子データのデータ長をRTPペイロード内のペイロードヘッダで通知する。
【0162】
図26は、電子データ長を明示的に通知するペイロードヘッダを用いたときのRTPパットフォーマットの一例を示す図である。図7に示されるように、電子データを3つに分割して生成した分割データのうち最初の分割データ410を含むRTPパケットを示している。RTPヘッダは図8に示すRTPヘッダと同様に設定される。RTPペイロード内に電子データ長を通知するフィールドがあることを意味するペイロードヘッダを付与し、続けて電子データ長を表す16ビットのフィールドが付与される。本実施形態では、電子データ長を通知するペイロードヘッダとして「14」の値を有するペイロードヘッダを記載しているが、これに限定されるものではない。そして、電子データが先頭であることを示す値「11」のペイロードヘッダが続き、その後、分割データが挿入される。
【0163】
電子データ長を表すフィールド長が16ビットでは不十分な場合には、図27に示されるように、32ビットの電子データ長を表すフィールドを有するペイロードヘッダを使用する。本例では、32ビットの電子データ長が存在することを通知するペイロードヘッダとして「15」の値を有するペイロードヘッダを記載しているが、これに限定されるものではない。
【0164】
このようなペイロードヘッダを用いることにより、データ受信装置300は、あらかじめ電子データ長を知ることができ、メモリ領域の確保が容易になる。データ送信装置200は、すべてのパケットにこのペイロードヘッダを格納してパケットを送信することとすれば、データ受信装置300は、受信したいずれのパケットからも即座に電子データ長を知ることができる。
【0165】
【発明の効果】
本発明によれば、電子データを分割して生成した分割データを繰り返し送信することにより、コネクションレス型の伝送方式において、静的な電子データの伝送の信頼性を高めることができる。また、それぞれの分割データにはシーケンス番号が付与されているので、分割データの伝送誤り等によって分割データが送信した順に受信されない場合でも、データ受信側で元の電子データを再構成することができる。また、先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されているので、電子データを構成するすべての分割データが受信されたかどうかを判定することができ、電子データ伝送の信頼性を高めることができる。
【図面の簡単な説明】
【図1】RTPヘッダを示す構成図である。
【図2】RTPパケットの構成例を示す図である。
【図3】RTPフォーマットを用いて電子データを配信するときのシーケンスの例を示す図である。
【図4】実施形態に係るデータ伝送システムの構成の一形態を示すブロック図である。
【図5】実施形態に係るデータ送信装置の構成を示すブロック図である。
【図6】データ送信装置における電子データの送信手順を示す図である。
【図7】電子データが3分割された様子を示す図である。
【図8】先頭の分割データに対するRTPパケット化の様子を示す図である。
【図9】2番目の分割データに対するRTPパケット化の様子を示す図である。
【図10】3番目の分割データに対するRTPパケット化の様子を示す図である。
【図11】電子データを分割して送信するときのシーケンス例を示す図である。
【図12】実施形態に係るデータ受信装置の構成を示すブロック図である。
【図13】データ受信装置における電子データ再構成のフローチャートである。
【図14】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図15】電子データ送信の従来のシーケンス例を示す図である。
【図16】ペイロードヘッダの他の例を示す図である。
【図17】RTPパケットの構成例を示す図である。
【図18】第2実施形態に係るデータ受信装置によってデータを受信するフローを示すフローチャートである。
【図19】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図20】RTPパケットの構成例を示す図である。
【図21】第3実施形態に係るデータ受信装置によってデータを受信するフローを示すフローチャートである。
【図22】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図23】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図24】電子データが3分割された様子を示す図である。
【図25】データ送信装置からデータ受信装置に電子データを送信する例を示す図である。
【図26】RTPパケットの構成例を示す図である。
【図27】RTPパケットの構成例を示す図である。
【符号の説明】
100…ネットワーク、200…データ送信装置、201…セッション制御部202…パケット化部、203…映像取得部、204…パケット化部、205…付随情報生成・パケット化部、206…音声取得部、207…パケット化部、208…付随情報生成・パケット化部、209…電子データ取得部、210…分割部、211…パケット化部、212…繰り返し判定部、213…パケット化する付随情報生成・パケット化部、214…パケット送信部、300…データ受信装置、301…パケット受信・振分部、302…セッション制御パケット分離部303…セッション制御部、304…映像パケット分離部、305…映像再生部、306…映像付随情報解析部、307…音声パケット分離部、308…音声再生部、309…音声付随情報解析部、310…データパケット分離・再構成部、311…電子データ再生部、312…データ付随情報解析部、313…同期制御部、400…電子データ、410、420、430…分割データ。
Claims (35)
- 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置が前記電子データを分割して分割データを生成する電子データ分割ステップと、
前記データ送信装置が、前記電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、前記データ送信装置が、先頭の前記分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与ステップと、
前記データ送信装置が、最終の前記分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、
前記分割データを前記データ送信装置から前記データ受信装置に繰り返し送信する分割データ送信ステップと、
を有することを特徴とするデータ伝送方法。 - 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置が前記電子データを分割して分割データを生成する電子データ分割ステップと、
前記データ送信装置が、前記電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、前記データ送信装置が、前記電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の前記分割データに対して付与する先頭情報付与ステップと、
前記データ送信装置が、最終の前記分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与ステップと、
前記分割データを前記データ送信装置から前記データ受信装置に繰り返し送信する分割データ送信ステップと、
を有することを特徴とするデータ伝送方法。 - 前記先頭情報付与ステップにおいて、前記先頭情報を少なくとも最終の分割データに対して付与することを特徴とする請求項2に記載のデータ伝送方式。
- 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置が前記電子データを分割して分割データを生成する電子データ分割ステップと、
前記データ送信装置が、前記電子データ分割ステップにおいて分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与ステップと、前記データ送信装置が、前記電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の前記分割データに対して付与する先頭最終情報付与ステップと、
前記分割データを前記データ送信装置から前記データ受信装置に繰り返し送信する分割データ送信ステップと、
を有することを特徴とするデータ伝送方法。 - 前記先頭最終情報付与ステップにおいて、前記先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴とする請求項4に記載のデータ伝送方法。
- 前記電子データ分割ステップでは、前記データ送信装置は静的な電子データと共に動的な電子データを分割して分割データを生成し、
前記分割データ送信ステップにおいて、前記データ送信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、
前記分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データを前記データ送信装置から前記データ受信装置に繰り返し送信する付随データ送信ステップをさらに有する、
ことを特徴とする請求項1〜5のいずれか1項に記載のデータ伝送方法。 - 前記シーケンス番号及び前記表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、
前記最終情報付与ステップにおいて付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、
表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、
ことを特徴とする請求項6に記載のデータ伝送方法。 - 前記電子データ分割ステップでは、所定のデータ長以下の分割データを生成し、
前記データ送信装置が前記所定のデータ長に関する情報を前記分割データの最大長としてデータ伝送開始前又はデータ伝送途中に前記データ受信装置に通知する最大分割長通知ステップをさらに有する、
ことを特徴とする請求項1〜7のいずれか1項に記載のデータ伝送方法。 - 前記電子データ分割ステップでは、所定のデータ長の分割データを生成し、
前記データ送信装置が前記所定のデータ長に関する情報を前記分割データの固定長としてデータ伝送開始前又はデータ伝送途中に前記データ受信装置に通知する固定分割長通知ステップをさらに有する、
ことを特徴とする請求項1〜7のいずれか1項に記載のデータ伝送方法。 - 前記データ送信装置が、送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与ステップをさらに備えることを特徴とする請求項1〜7のいずれか1項に記載のデータ伝送方法。
- 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、
前記データ送信装置から繰り返し送信される前記分割データを前記データ受信装置によって受信する分割データ受信ステップと、
前記先頭情報及び前記最終情報に基づいて、先頭及び最終の前記分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、前記データ受信装置が前記電子データを構成するデータ構成ステップと、
を有することを特徴とするデータ伝送方法。 - 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、
前記データ送信装置から繰り返し送信される前記分割データを前記データ受信装置によって受信する分割データ受信ステップと、
前記最終情報に基づいて、最終の前記分割データのシーケンス番号を求め、前記先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、前記データ受信装置が前記電子データを構成するデータ構成ステップと、
を有することを特徴とするデータ伝送方法。 - 静的な電子データをデータ送信装置からデータ受信装置に送信するコネクションレス型のデータ伝送方法であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、
前記データ送信装置から繰り返し送信される前記分割データをデータ受信装置によって受信する分割データ受信ステップと、
前記先頭のシーケンス番号と前記最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で、前記データ受信装置が前記電子データを構成するデータ構成ステップと、
を有することを特徴とするデータ伝送方法。 - 前記データ受信装置は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された分割データを受信し、
前記データ受信装置が、前記分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データを前記データ送信装置から繰り返し受信する付随データ受信ステップと、
前記付随データ受信ステップにおいて受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生ステップと、
をさらに有することを特徴とする請求項11〜13のいずれか1項に記載のデータ伝送方法。 - 前記分割データを格納するパケットはRTPパケットであり、
前記データ受信装置は、RTPヘッダのシーケンス番号を前記分割データのシーケンス番号として記録し、
前記RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、
前記RTPヘッダのマーカビットを最終の分割データであることの識別に用い、
RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、
ことを特徴とする請求項14に記載のデータ伝送方法。 - 前記データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信ステップと、
前記先頭のシーケンス番号と前記最終のシーケンス番号とに基づいて分割データ数を求め、前記分割データ長受信ステップにおいて受信した分割データ長と前記分割データ数とを乗じることにより、前記電子データを構成するために必要なメモリ領域を算出するメモリ領域算出ステップと、
前記メモリ領域算出ステップにおいて算出されたメモリ領域を確保するメモリ領域確保ステップと、
をさらに有することを特徴とする請求項11〜15のいずれか1項に記載のデータ伝送方法。 - 前記データ送信装置から送信される、前記電子データのデータ長に関する情報を受信するデータ長受信ステップと、
前記データ長受信ステップにおいて受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保ステップと、
をさらに有することを特徴とする請求項11〜15のいずれか1項に記載のデータ伝送方法。 - 静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、
前記電子データを分割して分割データを生成する電子データ分割手段と、
前記電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、
先頭の前記分割データに対して、その分割データが先頭であることを示す情報を付与する先頭情報付与手段と、
最終の前記分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、
前記分割データを前記データ受信装置に繰り返し送信する分割データ送信手段と、
を備えることを特徴とするデータ送信装置。 - 静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、
前記電子データを分割して分割データを生成する電子データ分割手段と、
前記電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、
前記電子データを構成する分割データのシーケンス番号のうち、先頭のシーケンス番号に関する情報を任意の前記分割データに対して付与する先頭情報付与手段と、
最終の前記分割データに対して、その分割データが最終であることを示す情報を付与する最終情報付与手段と、
前記分割データを前記データ受信装置に繰り返し送信する分割データ送信手段と、
を備えることを特徴とするデータ送信装置。 - 前記先頭情報付与手段は、前記先頭情報を少なくとも最終の分割データに対して付与することを特徴とする請求項19に記載のデータ送信装置。
- 静的な電子データをコネクションレス型のデータ伝送方法によってデータ受信装置に送信するデータ送信装置であって、
前記電子データを分割して分割データを生成する電子データ分割手段と、
前記電子データ分割手段によって分割された分割データのそれぞれにシーケンス番号を付与するシーケンス番号付与手段と、
前記電子データを構成する分割データのシーケンス番号のうち、先頭及び最終のシーケンス番号に関する情報を任意の前記分割データに対して付与する先頭最終情報付与手段と、
前記分割データを前記データ受信装置に繰り返し送信する分割データ送信手段と、
を備えることを特徴とするデータ送信装置。 - 前記先頭最終情報付与手段は、前記先頭及び最終のシーケンス番号に関する情報をすべての分割データに対して付与することを特徴とする請求項21に記載のデータ送信装置。
- 前記電子データ分割手段は、静的な電子データと共に動的な電子データを分割して分割データを生成し、
前記分割データ送信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報を付与して送信し、
前記分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データを前記データ受信装置に繰り返し送信する付随データ送信手段をさらに備える、
ことを特徴とする請求項18〜22のいずれか1項に記載のデータ送信装置。 - 前記シーケンス番号及び前記表示開始時刻に関する情報を表すためにRTPヘッダのシーケンス番号及びタイムスタンプ値を用い、
前記最終情報付与手段によって付与される最終の分割データであることを通知するために、RTPヘッダ内のマーカビットを用い、
表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データとしてRTCPパケットを用いる、
ことを特徴とする請求項23に記載のデータ送信装置。 - 前記電子データ分割手段は、所定のデータ長以下の分割データを生成し、
前記所定のデータ長に関する情報を前記分割データの最大長としてデータ伝送開始前又はデータ伝送途中に前記データ受信装置に通知する最大分割長通知手段をさらに備える、
ことを特徴とする請求項18〜24のいずれか1項に記載のデータ送信装置。 - 前記電子データ分割手段は、所定のデータ長の分割データを生成し、
前記所定のデータ長に関する情報を前記分割データの固定長としてデータ伝送開始前又はデータ伝送途中に前記データ受信装置に通知する固定分割長通知手段をさらに備える、
ことを特徴とする請求項18〜24のいずれか1項に記載のデータ送信装置。 - 送信する電子データのデータ長に関する情報を任意の分割データに付与するデータ長付与手段をさらに備えることを特徴とする請求項18〜24のいずれか1項に記載のデータ送信装置。
- コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に先頭の分割データにはその分割データが先頭であることを示す情報が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、
前記データ送信装置から繰り返し送信される前記分割データを受信する分割データ受信手段と、
前記先頭情報及び前記最終情報に基づいて、先頭及び最終の前記分割データのシーケンス番号を求め、先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で前記電子データを構成するデータ構成手段と、
を備えることを特徴とするデータ受信装置。 - コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、最終の分割データにはその分割データが最終であることを示す情報が付与されており、
前記データ送信装置から繰り返し送信される前記分割データを受信する分割データ受信手段と、
前記最終情報に基づいて、最終の前記分割データのシーケンス番号を求め、前記先頭のシーケンス番号と最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で前記電子データを構成するデータ構成手段と、
を備えることを特徴とするデータ受信装置。 - コネクションレス型のデータ伝送方法によってデータ送信装置から送信された静的な電子データを受信するデータ受信装置であって、
前記データ送信装置から送信されるデータは、所定の電子データが分割されて生成された分割データであって、すべての分割データにはシーケンス番号が付与されていると共に少なくとも一の分割データに先頭の分割データのシーケンス番号が付与され、少なくとも一の分割データに最終の分割データのシーケンス番号が付与されており、
前記データ送信装置から繰り返し送信される前記分割データを受信する分割データ受信手段と、
前記先頭のシーケンス番号と前記最終のシーケンス番号との間に含まれるすべての分割データを受信した時点で前記電子データを構成するデータ構成手段と、
を備えることを特徴とするデータ受信装置。 - 前記データ受信手段は、静的な電子データから生成された分割データと動的な電子データから生成された分割データに同一フォーマットの表示開示時刻に関する情報が付与された電子データを受信し、
前記分割データに付与された表示開始時刻に関する情報と絶対時刻の対応関係を示す情報を有する付随データを前記データ送信装置から繰り返し受信する付随データ受信手段と、
前記付随データ受信手段によって受信した付随パケットから各パケットの表示時刻に関する情報と絶対時刻との対応関係を求め、表示時刻に関する情報を絶対時刻と同一のフォーマットに変換する、もしくは、絶対時刻を表示時刻に関する情報と同一のフォーマットに変換して、静的な電子データと動的な電子データとを同時に再生する電子データ再生手段と、
をさらに備えることを特徴とする請求項28〜30のいずれか1項に記載のデータ受信装置。 - 前記分割データを格納するパケットはRTPパケットであり、
RTPヘッダのシーケンス番号を前記分割データのシーケンス番号として記録し、
前記RTPヘッダのタイムスタンプを電子データの表示開始時刻に関する情報として記録し、
前記RTPヘッダのマーカビットを最終の分割データであることの識別に用い、
RTCPパケットからRTPのタイムスタンプと絶対時刻との対応関係を記録する、
ことを特徴とする請求項31に記載のデータ受信装置。 - 前記データ送信装置から送信される、分割データの最大長又は固定長に関する情報を受信する分割データ長受信手段と、
前記先頭のシーケンス番号と前記最終のシーケンス番号とに基づいて分割データ数を求め、前記分割データ長受信手段によって受信した分割データ長と前記分割データ数とを乗じることにより、前記電子データを構成するために必要なメモリ領域を算出するメモリ領域算出手段と、
前記メモリ領域算出手段によって算出されたメモリ領域を確保するメモリ領域確保手段と、
をさらに備えることを特徴とする請求項28〜32のいずれか1項に記載のデータ受信装置。 - 前記データ送信装置から送信される、前記電子データのデータ長に関する情報を受信するデータ長受信手段と、
前記データ長受信手段によって受信したデータ長の情報に基づいてメモリ領域を確保するメモリ領域確保手段と、
をさらに備えることを特徴とする請求項28〜32のいずれか1項に記載のデータ受信装置。 - 請求項18〜27のいずれか1項に記載のデータ送信装置と、請求項28〜34のいずれか1項に記載のデータ受信装置とを備え、前記データ送信装置から前記データ受信装置にコネクションレス型の伝送方式によって電子データを送信することを特徴とするデータ伝送システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002323062A JP2004159101A (ja) | 2002-11-06 | 2002-11-06 | データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002323062A JP2004159101A (ja) | 2002-11-06 | 2002-11-06 | データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004159101A true JP2004159101A (ja) | 2004-06-03 |
Family
ID=32803065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002323062A Pending JP2004159101A (ja) | 2002-11-06 | 2002-11-06 | データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004159101A (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006295537A (ja) * | 2005-04-11 | 2006-10-26 | Sony Corp | 通信システム、通信装置および方法、プログラム、並びにデータ構造 |
KR100851397B1 (ko) | 2006-06-21 | 2008-08-08 | 한양대학교 산학협력단 | 부분 분할 방송을 이용한 비디오 데이터 전송 방법 |
JP2008228268A (ja) * | 2007-02-13 | 2008-09-25 | Seiko Epson Corp | 送受信方法、送受信システム、送信装置、受信装置 |
JP2010026846A (ja) * | 2008-07-22 | 2010-02-04 | Kyocera Mita Corp | 画像形成システム |
JP2010219767A (ja) * | 2009-03-16 | 2010-09-30 | Mitsubishi Electric Corp | 映像伝送装置及び映像伝送システム |
JP2012028888A (ja) * | 2010-07-21 | 2012-02-09 | Nippon Telegr & Teleph Corp <Ntt> | Sip通信システム、sipクライアント、sipサーバ、sip通信方法、sip通信プログラム |
JP2015012580A (ja) * | 2013-07-02 | 2015-01-19 | キヤノン株式会社 | 受信装置、受信方法及びプログラム |
WO2016163557A1 (ja) * | 2015-04-09 | 2016-10-13 | スカラ株式会社 | 送信装置、受信装置、及びそれらにより実行される方法、並びにコンピュータプログラム |
JP2020096358A (ja) * | 2018-12-10 | 2020-06-18 | 株式会社東芝 | コンテンツ配信システム、コンテンツ配信装置、及び方法 |
CN116734927A (zh) * | 2023-08-14 | 2023-09-12 | 四川省林业勘察设计研究院有限公司 | 一种高原林业生态环境检测装置 |
-
2002
- 2002-11-06 JP JP2002323062A patent/JP2004159101A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006295537A (ja) * | 2005-04-11 | 2006-10-26 | Sony Corp | 通信システム、通信装置および方法、プログラム、並びにデータ構造 |
KR100851397B1 (ko) | 2006-06-21 | 2008-08-08 | 한양대학교 산학협력단 | 부분 분할 방송을 이용한 비디오 데이터 전송 방법 |
JP2008228268A (ja) * | 2007-02-13 | 2008-09-25 | Seiko Epson Corp | 送受信方法、送受信システム、送信装置、受信装置 |
JP2010026846A (ja) * | 2008-07-22 | 2010-02-04 | Kyocera Mita Corp | 画像形成システム |
JP2010219767A (ja) * | 2009-03-16 | 2010-09-30 | Mitsubishi Electric Corp | 映像伝送装置及び映像伝送システム |
JP2012028888A (ja) * | 2010-07-21 | 2012-02-09 | Nippon Telegr & Teleph Corp <Ntt> | Sip通信システム、sipクライアント、sipサーバ、sip通信方法、sip通信プログラム |
JP2015012580A (ja) * | 2013-07-02 | 2015-01-19 | キヤノン株式会社 | 受信装置、受信方法及びプログラム |
WO2016163557A1 (ja) * | 2015-04-09 | 2016-10-13 | スカラ株式会社 | 送信装置、受信装置、及びそれらにより実行される方法、並びにコンピュータプログラム |
JP2016201648A (ja) * | 2015-04-09 | 2016-12-01 | スカラ株式会社 | 送信装置、受信装置、及びそれらにより実行される方法、並びにコンピュータプログラム |
JP2020096358A (ja) * | 2018-12-10 | 2020-06-18 | 株式会社東芝 | コンテンツ配信システム、コンテンツ配信装置、及び方法 |
CN116734927A (zh) * | 2023-08-14 | 2023-09-12 | 四川省林业勘察设计研究院有限公司 | 一种高原林业生态环境检测装置 |
CN116734927B (zh) * | 2023-08-14 | 2023-10-20 | 四川省林业勘察设计研究院有限公司 | 一种高原林业生态环境检测装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4356742B2 (ja) | データ通信システム、データ送信装置およびデータ送信方法 | |
JP6981257B2 (ja) | 情報処理装置および情報処理方法 | |
JP4649091B2 (ja) | 通信端末、サーバ装置、中継装置、放送通信システム、放送通信方法及びプログラム | |
JP2008546229A (ja) | ネットワーク伝送のためコンテンツをパケット化する方法および装置 | |
WO2007000649A1 (en) | Transport mechanisms for dynamic rich media scenes | |
JP2009533936A (ja) | Dabシステムでipdcサービスを提供する装置及び方法 | |
JP6329964B2 (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP2003338830A (ja) | メディア送信方法、メディア受信方法、メディア送信装置及びメディア受信装置 | |
CN112584087B (zh) | 视频会议录制方法、电子装置和存储介质 | |
JP6579391B2 (ja) | 受信装置、受信方法、送信装置、及び、送信方法 | |
WO2014153831A1 (zh) | 单路视频多路音频的视频监控方法及系统 | |
US10887242B2 (en) | Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal | |
JP2004159101A (ja) | データ伝送方法、データ送信装置、データ受信装置、及びデータ伝送システム | |
WO2008002000A1 (en) | Method for transforming terrestrial dmb contents and gateway employing the same | |
JP5344541B2 (ja) | データ送信装置、送信方法及びプログラム | |
JP4600513B2 (ja) | データ送信装置、送信レート制御方法およびプログラム | |
JPWO2017057040A1 (ja) | データ処理装置、及び、データ処理方法 | |
WO2015146647A1 (ja) | 送信装置、送信方法、受信装置、受信方法、及び、プログラム | |
JP2020162090A (ja) | 送信ノード、放送局システム、制御ノード及び送信制御方法 | |
JP2005051299A (ja) | パケット送信装置、パケット受信装置、パケット送信方法及びパケット受信方法 | |
JP4042396B2 (ja) | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム | |
KR20170082064A (ko) | 방송 통신 융합망의 하이브리드 서비스를 위한 방송 서비스 제공 장치 및 이를 이용한 방법 | |
JP3906678B2 (ja) | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム | |
JP4218456B2 (ja) | 通話装置、通話方法及び通話システム | |
JP3977784B2 (ja) | リアルタイムパケット処理装置及びその方法 |