JP3735352B2 - Data transmission method, data transmission device, and data reception device - Google Patents

Data transmission method, data transmission device, and data reception device Download PDF

Info

Publication number
JP3735352B2
JP3735352B2 JP2003146689A JP2003146689A JP3735352B2 JP 3735352 B2 JP3735352 B2 JP 3735352B2 JP 2003146689 A JP2003146689 A JP 2003146689A JP 2003146689 A JP2003146689 A JP 2003146689A JP 3735352 B2 JP3735352 B2 JP 3735352B2
Authority
JP
Japan
Prior art keywords
packet
retransmission
data
transmission
sequence number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003146689A
Other languages
Japanese (ja)
Other versions
JP2003309617A (en
Inventor
秀晃 福嶋
誠司 堀井
達也 大西
誠 羽飼
義徳 松井
秋弘 宮崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2003146689A priority Critical patent/JP3735352B2/en
Publication of JP2003309617A publication Critical patent/JP2003309617A/en
Application granted granted Critical
Publication of JP3735352B2 publication Critical patent/JP3735352B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、データ伝送方法,データ送信装置,及びデータ受信装置に関し、特に配信サーバと端末の間でデータ伝送をパケット単位で行いつつ、端末側では受信したパケットのデータを順次再生する処理に関するものである。
【0002】
【従来の技術】
現在、インターネット上での映像(音声及びビデオ)データの伝送には、ダウンロード型伝送方式とストリーム型伝送方式がある。
このダウンロード型伝送方式では、配信サーバから送信された映像ファイルは端末側で一旦コピーされ、その後、映像ファイルのデータ(映像データ)が再生されることとなる。このため、この方式では、ファイルの転送が終了するまでは、端末側ではデータの再生を行うことができず、ダウンロード型伝送方式は、映像データ等の長時間再生には不向きである。
【0003】
一方、ストリーム型伝送方式では、配信サーバから端末への映像データ等の伝送が行われている間にも、端末側にて、受信したデータの再生が行われる。
このストリーム型伝送方式は、IETF(Internet Engineering Task Force)のRFC1889において規定されているRTP(Real-Time Transport Protocol)と呼ばれるプロトコルを用いるものが主流となっている。
【0004】
図28(a)は、従来のRTPによる映像データの伝送方法を説明するための図である。
図28(a)に示すように配信サーバ(送信側)と、パーソナルコンピュータ等の端末(受信側)とは、インターネットにおけるモデム,ISDN、LAN等の有線回線にりより接続され、RTPにより、映像データの伝送が行われる。
【0005】
このRTPによるデータ伝送では、送信側と受信側の間で、時間情報としてのタイムスタンプにより各パケットに対する処理の同期がとられており、同期外れ(到着遅延)パケットや送信エラーが発生したエラーパケットは受信側で破棄される。また、破棄されたパケットあるいは喪失したパケットは、各パケットに付与されているシーケンス番号の抜けにより、受信側で検出される。
【0006】
また、現在では、携帯電話を利用したインターネットの応用,例えばメールのアクセスや文字情報のサービス等が進んでおり、また、第3世代移動体通信(W−CDMA:Wide band-Code Division Multiple Access)の実用化に向けて高速の無線データ通信(〜384kbpsの高速パケット通信)のためのインフラ(infrastructure)が整備されつつある。
【0007】
図28(b)は、上記W−CDMAビジュアル端末を対象とする通信網を示す図である。
このような通信網は、無線伝送区間を含むものとなり、例えば、映像配信サーバとビジュアル端末の間でのデータ伝送を中継サーバを介して行う場合、配信サーバと中継サーバの間はインターネットによる有線伝送区間となるが、中継サーバとビジュアル端末の間は、W−CDMA等の携帯電話網による無線伝送区間となる。
【0008】
【発明が解決しようとする課題】
ところが、有線区間でのビット誤り率が10-5〜10-7であるのに対し、無線区間でのビット誤り率10-3であり、再生品質がエンド・トー・エンド(配信サーバと端末の間)の伝送品質に依存するRTP方式のデータ伝送方法では、無線による伝送品質が問題となる。
【0009】
本発明は、上記のような問題点を解決するためになされたもので、リアルタイム伝送における、無線区間の伝送品質を改善することができるデータ伝送方法,データ送信装置,及びデータ受信装置を得ることを目的とする。
【0010】
【課題を解決するための手段】
この発明(請求項1)に係るデータ伝送方法は、データをパケット単位で送信するデータ伝送方法において、パケットの再生順序を表す第1シーケンス番号を有する前記パケットの送信を行う第1のステップと、伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を受信する第2のステップと、前記受信した再送要求で指示された伝送エラーが発生したパケットの再送を行うか否かを判定する第3のステップと、前記判定結果に基づいて、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた前記再送パケットの送信を行う第のステップとを有することを特徴とするものである。
【0011】
この発明(請求項2)は、請求項1に記載のデータ伝送方法において、前記再送パケットは、高優先度パケットであることを特徴とするものである。
【0012】
この発明(請求項3)は、請求項1に記載のデータ伝送方法において、前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれることを特徴とするものである。
【0014】
この発明(請求項)は、請求項1に記載のデータ伝送方法において、前記第3のステップは、前記再送パケットが高優先度パケットである場合にのみ行われることを特徴とするものである。
【0015】
この発明(請求項)は、請求項1に記載のデータ伝送方法において、前記第2のステップは、前記再送パケットをデータ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に行うことを特徴とするものである。
【0016】
この発明(請求項)に係るデータ伝送方法は、パケット単位のデータを受信するデータ伝送方法において、パケットの再生順序を表す第1シーケンス番号を有する前記パケットの伝送エラーの発生を検出する第1のステップと、伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を送信する第のステップと、前記再送要求に基づいて送信された、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた前記再送パケットの受信を行う第のステップとを有することを特徴とするものである。
【0017】
この発明(請求項)は、請求項に記載のデータ伝送方法において、前記再送パケットは、高優先度パケットであることを特徴とするものである。
【0018】
この発明(請求項)は、請求項に記載のデータ伝送方法において、前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれることを特徴とするものである。
【0020】
この発明(請求項)は、請求項に記載のデータ伝送方法において、前記第2のステップは、前記再送パケットが高優先度パケットである場合にのみ行われることを特徴とするものである。
【0021】
この発明(請求項10)は、請求項に記載のデータ伝送方法において、前記第1のステップは、前記再送パケットを前記データ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に行うことを特徴とするものである。
【0022】
この発明(請求項11)に係るデータ送信装置は、データをパケット単位で送信するデータ送信装置であって、パケットの再生順序を表す第1シーケンス番号を有する前記パケットの送信を行う送信部と、伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を受信する再送指示受信部と、前記受信した再送要求で指示された伝送エラーが発生したパケットの再送を行うか否かを判定する判定部とを有し、前記送信部は、前記判定部の判定結果に基づいて、再送パケットの送信を行い、前記再送パケットは、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えことを特徴とするものである。
【0023】
この発明(請求項12)は、請求項11に記載のデータ送信装置において、前記再送パケットは、高優先度パケットであることを特徴とするものである。
【0024】
この発明(請求項13)は、請求項11に記載のデータ送信装置において、前記再送パケットに含まれる第2シーケンス番号は、RTPヘッダに含まれることを特徴とするものである。
【0026】
この発明(請求項14)は、請求項11に記載のデータ送信装置において、前記送信部は、前記再送パケットが高優先度パケットである場合にのみ前記再送パケットを送信することを特徴とするものである。
【0027】
この発明(請求項15)は、請求項11に記載のデータ送信装置において、前記再送指示受信部は、前記再送パケットをデータ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に、前記再送要求を受信することを特徴とするものである。
【0028】
この発明(請求項16)に係るデータ受信装置は、パケット単位のデータを受信するデータ受信装置であって、パケットの再生順序を表す第1シーケンス番号を有する前記パケットの伝送エラーの発生を検出する検出部と、伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を送信する再送指示送出部と、前記再送要求に基づいて送信された再送パケットの受信を行う受信部とを有し、前記再送パケットは、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えたことを特徴とするものである。
【0029】
この発明(請求項17)は、請求項16に記載のデータ受信装置において、前記再送パケットは、高優先度パケットであることを特徴とするものである。
【0030】
この発明(請求項18)は、請求項16に記載のデータ受信装置において、前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれることを特徴とするものである。
【0032】
この発明(請求項19)は、請求項16に記載のデータ受信装置において、前記受信部は、前記再送パケットが高優先度パケットである場合のみ前記再送パケットを受信することを特徴とするものである。
【0033】
この発明(請求項20)は、請求項16に記載のデータ受信装置において、前記再送パケットを前記データ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に、前記再送指示送出部は、前記再送要求を送信することを特徴とするものである。
【0034】
【発明の実施の形態】
以下、本発明の着眼点及び基本原理について説明する。
本件発明者は、無線伝送区間を含むネットワークにおける伝送品質を改善する方法について鋭意研究した結果、既存のリアルタイム伝送方法において、リアルタイムでパケットの再送を行うことにより、無線区間での伝送品質を向上できることを見出した。
【0035】
すなわち、上記既存のリアルタイム伝送方式は、配信サーバと端末との間で、中継サーバ等を介してリアルタイムでパケットのデータを伝送するものであり、パケットデータのリアルタイム伝送を実現するために必要なシーケンス番号やタイムスタンプ等の付加情報がパケットのヘッダ等に付与されており、これらの付加情報により、リアルタイムでパケットの再送制御を行うことができる。
【0036】
なお、上記のように、配信サーバと端末との間で、中継サーバを介してリアルタイムでのデータ伝送を行うとともに、リアルタイム再送制御を行う本発明のデータ伝送方法は、中継サーバが映像配信サーバの機能を兼ねても良い。また、本発明は、映像データの伝送方向については、配信サーバから端末に向かう順方向だけでなく、端末から配信サーバに向かう逆方向についても同様に適用することができる。
さらに、本発明は、リアルタイム伝送方式を効果的に機能させるために、中継サーバにおける送信QoS(Quality of Service)の制御を実現している。
【0037】
次に、本発明のデータ伝送方法におけるリアルタイム再送制御の概要について簡単に説明する。
上記リアルタイム再送制御は、無線区間の伝送品質を考慮し、無線伝送誤りが発生したエラーパケットを再送によりリカバリーするものであるのに対し、従来の再送制御は、データ伝送における高い信頼性の実現(エラーフリー伝送)を目的とするもので、全てのエラーパケットをリカバリーするため、相手に正しくデータが伝送されるまで、エラーパケットの再送を繰り返すというものであった。
【0038】
なお、従来の再送制御では、最終的なエラーパケットの再送が失敗した場合には、通信エラーとしてデータ伝送を異常終了するようにしている。
ところで、映像データのリアルタイム伝送に必要な再送制御では、所定のパケットの伝送の際に伝送エラーが発生して数フレーム程度の画像が欠落しても、データ伝送を異常終了しなければならないような致命的な伝送エラーとはならない。従って、映像データのデータ伝送方法では、高い信頼性よりも、ある程度の信頼性でもって、リアルタイム伝送を完了することが最優先となる。
【0039】
例えば、MPEG規格に準拠したビデオ信号の伝送では、基準画像であるIフレーム(フレーム内符号化画像)に対応するパケットがエラーパケットになった場合、後続するPフレーム(フレーム間順方向予測符号化画像)及びBフレーム(フレーム間双方向予測符号化画像)に対応するパケットが正しく受信できても、Pフレーム及びBフレームのビデオ信号を再生することはできない。そこで、Iフレームについては、極力、伝送誤りをリカバリーする必要がある。
【0040】
また、映像伝送(音声信号,ビデオ信号を伝送対象とするストリーム型通信)では、従来の再送制御とは異なり、リアルタイム伝送を実現しながら再送を行う必要がある。
【0041】
このようなリアルタイム伝送を実現するため、本発明は、リアルタイム伝送方法において、以下に示すようなエラーパケットに対する再送制御を行うようにしたものである。
【0042】
第1の再送制御は、選択再送制御であり、これは、エラーパケットのうちの優先度の高いパケットのみを再送対象とし、再送回数を減らすものであり、第2の再送制御は、制限時間付き再送制御であり、これは、エラーパケットのうちの再生時間に間に合わないパケットの再送は中止し、余分な再送を減らすものである。
以下、本発明の実施の形態について説明する。
【0043】
(実施の形態1)
図1〜図3は、本発明の実施の形態1によるデータ伝送方法を説明するための図である。
この実施の形態1のデータ伝送方法は、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの受信側での再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、この際、優先度が一定値以上のエラーパケットのみ再送するためのデータ伝送方法である。
【0044】
図1(a)は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
このデータ送信装置101は、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものである。このデータ送信装置101は、配信サーバから送信されたパケットを受信する受信手段11と、受信されたパケット及び再送されるパケット(再送パケット)の送信順序を上記付加情報に基づいて設定する送信キュー管理手段12と、該手段12により設定された送信順序で上記パケットデータを送信する送信手段13とを有している。
【0045】
なお、上記送信側からの各パケットは、映像データ,音声データ,テキストデータなどのデジタルデータを格納したデータ部と、これらのデジタルデータとは別の付加情報を格納したヘッダ部とからなる。ここで、各パケットは、そのヘッダ部に、各パケットに対応するシーケンス番号,優先度,及びデータの受信側での再生時間に関する付加情報を格納したデータ構造となっている。
【0046】
また、上記データ送信装置101は、受信したパケットのうち所定のものを再送パケットとして格納する再送用バッファ17と、受信したパケットの優先度を判定するパケット優先度判定手段15と、判定されたパケットの優先度に基づいて、優先度が一定値以上であるパケットのデータが上記再送用バッファ17に格納されるよう該バッファ17を制御する再送用バッファ管理手段18とを有している。
【0047】
さらに、上記データ送信装置101は、受信側の端末からの再送要求の指示を受信する再送指示受信手段14と、該再送指示と、再送用バッファ17内の再送パケットの格納状況に基づいて、再送指示のあったパケットの再送を行うか否かを決定する再送可否判定手段16とを有している。この再送可否判定手段16は、具体的には、受信側から再送要求の指示がなされたシーケンス番号のパケットのデータが、上記再送用バッファ17に格納されている場合のみ、該パケットのデータを受信側に再送するという決定を行う。
【0048】
なお、図1(a)では、データ送信装置が中継サーバを構成する場合について説明したが、データ送信装置が配信サーバである場合は、データ送信装置は、上記データ送信装置101における受信手段11を、データを符号化し、符号化されたデータをパケットを単位として出力する符号化パケット生成手段10aと、該手段10aから出力される各パケットに優先度等の付加情報を付与する優先度付与手段10bとに置き換えた構成となる(図1(b)参照)。
【0049】
図2は、上記実施の形態1のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。
このデータ受信装置201は、中継サーバ(送信側のデータ送信装置)から送信されたパケットを受信する受信手段21と、該受信手段21に出力に基づいて、送信途中でエラーが発生したエラーパケットを検出するとともに、正常に送信された正常パケットを出力するエラーパケット検出手段22と、該正常パケットを受け、そのパケットの符号化データを復号化するパケット復号化手段23とを有している。
【0050】
また、上記データ受信装置201は、パケットの受信履歴を管理する受信履歴管理手段24と、上記エラーパケット検出手段22の検出出力を受け、その優先度が一定値以上であるエラーパケットを判定するパケット優先度判定手段25と、優先度が一定値以上であると判定されたエラーパケットの、送信側に対する再送要求を、そのシーケンス番号を指示して行う再送指示送出手段26とを有している。
【0051】
次に作用効果について説明する。
図3は、上記実施の形態1のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
この実施の形態1のデータ伝送方法では、パケットの送信中に伝送エラーが発生した場合、優先度が一定値以上のパケットについてのみ再送要求の指示が受信側から送信側に行われ、優先度が一定値より小さいエラーパケットについては、再送要求の指示は行われない。
【0052】
例えば、一定値より以上の優先度を高優先度とし、一定値より小さい優先度を低優先度とすると、図3に示すように、シーケンス番号S1の高優先度パケット(S1)の伝送中にエラーが発生した場合には、該高優先度パケットに対する再送要求が行われるが、シーケンス番号S2の低優先度パケット(S2)の伝送中にエラーが発生した場合には、該低優先度パケットに対する再送要求が行われない。
【0053】
詳述すると、配信サーバから送信される各パケットには、シーケンス番号及び優先度に関する付加情報が付加されており、中継サーバとしての上記データ送信装置101では、受信されたパケットは、送信キュー管理手段12にて送信順序を設定されて送信手段13に供給される。このとき、パケット優先度判定手段15では受信されたパケットの優先度が判定される。すると、送信手段13では、設定された送信順序でパケットの送信が行われる。また、優先度が一定値以上であると判定されたパケットは、再送用バッファ管理手段18の制御により、再送用バッファ17に格納される。また、再送用パケット17では、管理手段18により、再生時間に間に合わなくなったパケットからそのデータが順次解放(破棄)される。
【0054】
なお、上記再送用バッファ17では、その空き容量がなくなったときには、該再送用バッファに保持されているパケットの再生時間に基づいて、該再送用バッファにおけるパケットのデータを、その再生時間が最も早いパケットから順に破棄しつつ上記再送用データを保持する第1の更新処理、及び該再送用バッファにおけるデータの破棄を、その再生時間が最も早いパケット以降の所定のものに対して、受信側でのパケットの再生時間が一定間隔となるよう順次行いつつ、上記再送用データを保持する第2の更新処理の一方の処理が行われる。
【0055】
このようにして配信サーバからのパケットは順次中継サーバ(データ送信装置)101を介して端末(データ受信装置)201に送出される。
このデータ受信装置201では、中継サーバ(データ送信装置)101からのパケットが受信手段21にて受信され、受信されたパケットは、エラーパケット検出手段22に供給される。すると、正常に送信されたパケットは、エラーパケット検出手段22によりパケット復号化手段23に出力され、また、各パケットの付加情報等は受信履歴管理手段24に供給される。このときエラーパケットの優先度情報はパケット優先度判定手段25に供給され、優先度が一定値以上であるか否かの判定が行われる。そして優先度が一定値以上のエラーパケットについては、再送指示送出手段26により再送要求がそのシーケンス番号の指示により送信側に対して行われる。
【0056】
すると、送信側のデータ送信装置101では、該再送要求が再送指示受信手段14により受信され、この再送要求のあったシーケンス番号のパケットが再送用バッファ17に格納されているか否かの判定が再送可否判定手段16により行われる。該再送用バッファ17内に再送要求のあったシーケンス番号のパケットがあれば、このパケットが再送用バッファ17から再送パケットとして送信キュー管理手段12に出力される。この送信キュー管理手段12では、再送パケットは、所定の送信順序が設定されて、送信手段13を介して受信側に再送される。
【0057】
このように本実施の形態1では、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、この際、伝送エラーが生じたエラーパケットについては、優先度が一定値以上のもののみ再送するようにしたので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0058】
なお、上記実施の形態では、パケットには、その優先度に代えて、Iフレーム,Pフレーム,Bフレーム等のフレームの種類等を付加情報として付加するようにしてもよい。
また、上記実施の形態における優先度の決定方法については種々の方法があり、例えば、MPEG規格に準拠したビデオ信号の場合、Iフレームに対応するパケットを優先度の高いパケットとしてもよい。
【0059】
さらに、上記実施の形態における、再送用バッファが一杯である場合のパケット破棄処理は、上記第1あるいは第2の更新処理を、優先度の低いパケットから順に施すようにしてもよい。
【0060】
(実施の形態2)
図4,図5は、本発明の実施の形態2によるデータ伝送方法を説明するための図である。
図4は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
【0061】
このデータ送信装置102は、上記実施の形態1のデータ送信装置101の構成に加えて、送信キュー管理手段12から出力されるパケットに、そのシーケンス番号や優先度等の付加情報に対する誤り訂正符号を付与する誤り訂正処理を行うエラー訂正手段31を備え、誤り訂正処理が施されたパケットを送信手段13に供給するようにしたものであり、その他の構成は上記実施の形態1のデータ送信装置101と同一である。
【0062】
図5は、上記実施の形態2のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。
【0063】
この実施の形態2のデータ受信装置202は、上記実施の形態1のデータ受信装置201の構成に加えて、受信手段21により受信されたパケットに対して、該パケットに付与されているエラー訂正符号を用いて上記付加情報のエラー訂正処理を施すエラー訂正手段41を備え、このエラー訂正処理が施されたパケットをエラーパケット検出手段22に出力するようにしたものであり、その他の構成は上記実施の形態1のデータ受信装置201と同一である。
【0064】
次に作用効果について説明する。
このような構成の実施の形態2のデータ伝送方法では、送信側では、シーケンス番号及び優先度等に関する付加情報に対するエラー訂正符号が送信パケットに付与される。また、受信側では、該エラー訂正符号により上記付加情報のエラー訂正処理が行われ、その後上記付加情報に基づいて、上記エラーパケットの再送要求が行われる。これにより、シーケンス番号や優先度情報に誤りがある場合でも、エラーパケットに対する再送要求を正しく行うことができる。
【0065】
(実施の形態3)
図6〜図9は、本発明の実施の形態3及びその変形例によるデータ伝送方法を説明するための図であり、図6は、この実施の形態3のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【0066】
この実施の形態3のデータ伝送方法では、送信側にて、所定のパケットに対応するシーケンス番号及び優先度に関する付加情報を、該所定のパケットの後に送信される後続パケットにも埋め込む。また、受信側では、上記所定のパケットの送信エラーが発生し、かつ該所定のパケットの付加情報に誤りがある場合は、エラーパケットの再送要求を、該エラーパケットの後に送信されている後続パケットの受信時に、該後続パケットに埋め込まれている上記所定のパケットの付加情報に基づいて行う。
【0067】
例えば、一定値より以上の優先度を高優先度とし、一定値より小さい優先度を低優先度とすると、図6に示すように、シーケンス番号S1の高優先度パケット(S1)の伝送中にエラーが発生し、その次に伝送されているシーケンス番号S2の低優先度パケット(S2)が正常に受信された場合には、該高優先度パケットに対する再送要求が、その次の低優先度パケット(S2)の受信時に行われる。
【0068】
一方、シーケンス番号S3の低優先度パケット(S3)の伝送中にエラーが発生し、その次に伝送されているシーケンス番号S4の高優先度パケット(S4)が正常に受信された場合には、その次の高優先度パケット(S4)の受信時には、該低優先度パケット(S3)に対する再送要求は行われない。
【0069】
このような構成のデータ伝送方法では、所定のパケットの伝送中にエラーが発生し、該パケットのシーケンス番号や優先度情報に誤りがある場合でも、このパケットの次に伝送される後続パケットに、上記所定のパケットのシーケンス番号や優先度情報等の付加情報が含まれているため、上記所定のパケットをエラーパケットとする再送要求を正しく行うことができる。
【0070】
なお、上記実施の形態3では、各パケットの付加情報をこれに続く次のパケットに埋め込むようにしているが、各パケットの付加情報は、次のパケットだけでなく、後続の複数のパケットに埋め込むようにしてもよく、以下このような構成の実施の形態3の変形例について説明する。
【0071】
(実施の形態3の変形例)
図7は、実施の形態3の変形例のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
このデータ送信装置103は、上記実施の形態1のデータ送信装置101の構成に加えて、送信手段13aにて送信されたパケットのうちで、その優先度が所定値以上のもののシーケンス番号を記憶するシーケンス番号記憶手段33と、該記憶手段33に記憶されているシーケンス番号を、送信されるパケットのヘッダに挿入されるよう上記送信手段13aに出力するシーケンス番号挿入手段32とを備え、送信手段13aを、実施の形態1の送信手段13の機能に加えて、送信キュー管理手段12からのパケットをそのヘッダに上記シーケンス番号挿入手段32からのシーケンス番号を挿入して送信する構成としたものであり、その他の構成は上記実施の形態1のデータ送信装置101と同一である。
【0072】
また、図8は、上記実施の形態3の変形例のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。
【0073】
この実施の形態3の変形例のデータ受信装置203は、上記実施の形態1のデータ受信装置201の構成に加えて、エラーパケット検出手段22から出力された正常なパケットから、このパケットに挿入されている、このパケットより先に受信されている高優先度パケットのシーケンス番号を抽出する挿入シーケンス抽出手段42を備え、正常なパケットは該挿入シーケンス抽出手段42を介してパケット復号化手段23に出力するようにしている。また、このデータ受信装置203では、パケット優先度判定手段25aを、上記挿入シーケンス抽出手段42により抽出されたシーケンス番号のパケットがエラーパケットである場合、再送要求を再送指示送出手段26に出力する構成としている。
その他の構成は上記実施の形態1のデータ受信装置201と同一である。
【0074】
次に作用効果について説明する。
図9は、上記実施の形態3の変形例のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
上記データ送信装置(送信側)103では、実施の形態1のデータ送信装置101における送信動作に加えて、送信される高優先度パケットのシーケンス番号をその後続パケットに埋め込む処理が、次の高優先度パケットを送信するまで行われる。
【0075】
例えば、一定値より以上の優先度を高優先度とし、一定値より小さい優先度を低優先度とすると、図9に示すように、シーケンス番号S1の高優先度パケット(S1)が送信された後、このパケットに続くシーケンス番号S2〜S4のパケット(S2)〜(S4)は、高優先度パケット(S1)のシーケンス番号S1が埋め込まれて送信され、次のシーケンス番号S5の高優先度パケット(S5)には、その前の高優先度パケット(S4)のシーケンス番号S4が埋め込まれて送信される。
【0076】
このとき、シーケンス番号S1の高優先度パケット(S1)、続くシーケンス番号S2,S3の低優先度パケット(S2),(S3)の伝送中にエラーが発生し、その次に伝送されているシーケンス番号S4の高優先度パケット(S4)が正常に受信された場合には、上記最初の高優先度パケット(S1)に対する再送要求が、その次の高優先度パケット(S4)の受信時に行われる。
【0077】
また、上記データ受信装置(受信側)203では、実施の形態1のデータ受信装置201における受信動作に加えて、受信したパケットに埋め込まれている他のパケットのシーケンス番号を取り出し、このシーケンス番号のパケットがエラーパケットである場合、パケットの再送要求をエラーパケットのシーケンス番号を用いて送信側に対して行う再送処理が行われる。
【0078】
このような構成の実施の形態3の変形例によるデータ伝送方法では、送信側では、優先度が一定値以上である高優先度パケットのシーケンス番号を、該高優先度パケットに続く後続パケットに埋め込む処理を、該高優先度パケットの次の高優先度パケットの送信まで継続して行い、受信側では、受信したパケットに埋め込まれている他のパケット(高優先度パケット)のシーケンス番号に取り出し、該他のパケットに送信エラーが発生しているとき、該他のパケットの再送要求をそのシーケンス番号を指示して行うので、連続する2つパケットがエラーパケットとなった場合でも、エラーパケットとなった高優先度パケットのシーケンス番号を、正常通信された後続パケットのヘッダ情報から検出することができ、これにより高優先度パケットがエラーパケットとなった場合の再送要求をより確実に行うことができる。
【0079】
なお、上記実施の形態3では、各パケットのシーケンス番号及び優先度情報を、各パケットの次に伝送される次パケットのヘッダに埋め込むようにし、実施の形態3の変形例では、送信される高優先度パケットのシーケンス番号を、その次に高優先度パケットが伝送されるまで、後続のパケットに埋め込むようにしているが、後続パケットに埋め込む情報は、これらに限るものではなく、例えば、再送回数をシーケンス番号とともに後続のパケットに埋め込むようにしてもよい。
【0080】
この場合、送信側では、各パケットにその再送回数に関する情報をシーケンス番号とともに埋め込む。また受信側では、エラーパケットに対する再送要求の指示を行うとき、エラーパケットに対応する再送回数とシーケンス番号を対にして送信側に指示する。さらに、送信側では、受信側から再送要求が指示されたシーケンス番号のパケットのデータが、再送用バッファに保持されており、かつ該再送要求の指示がなされたパケットと、これとシーケンス番号が等しい、再送用バッファにデータが格納されているパケットの間で再送回数が一致すれば、再送要求のあったエラーパケットの再送を行う。そして、この再送を行った、再送用バッファ内のパケットに対応する再送回数をインクリメントする選択再送処理を行う。
以下このような再送回数を後続パケットに埋め込む具体的な構成例を実施の形態4として説明する。
【0081】
(実施の形態4)
図10〜図15は、本発明の実施の形態4によるデータ伝送方法を説明するための図である。
図10は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
【0082】
このデータ送信装置104は、上記実施の形態1のデータ送信装置101の構成に加えて、送信手段13にて送信されたパケットのうちで、その優先度が所定値以上のもののシーケンス番号及び再送回数を記憶するシーケンス番号再送回数記憶手段35と、該記憶手段35に記憶されているシーケンス番号及び再送回数を、送信されるパケットのヘッダに挿入されるよう送信手段13aに出力するシーケンス番号再送回数挿入手段34と、受信手段11にて受信されたパケットに、その再送回数をクリアする処理を施して送信キュー管理手段12に出力する再送回数クリア手段38とを備え、送信手段13aを、上記実施の形態1の送信手段13の機能に加えて、送信キュー管理手段12からのパケットを、そのヘッダに上記シーケンス番号挿入手段34からのシーケンス番号及び再送回数を挿入して送信する構成としている。
【0083】
また、上記データ送信装置104は、再送指示受信手段14にて受信された再送指示,つまり再送すべきパケットのシーケンス番号及び再送回数を、再生可否判定手段16aを介して受け、再送指示されたパケットのシーケンス番号と再送用バッファ17内のパケットのシーケンス番号との比較、及び再送指示されたパケットの再送回数と、再送指示されたシーケンス番号を有する、再送用バッファ17内のパケットの再送回数との比較を行うシーケンス番号再送回数比較手段36を有している。
【0084】
このデータ送信装置104では、再送可否判定手段16aは、該比較手段36の出力に基づいて、最後尾受信パケットのシーケンス番号がエラーパケットのシーケンス番号より大きい場合は、エラーパケットに対して選択再送処理が行われ、一方、最後尾受信パケットのシーケンス番号がエラーパケットのシーケンス番号より小さい場合は、最後尾受信パケットのシーケンス番号より大きく、エラーパケットのシーケンス番号以下のシーケンス番号を有するパケットに対して、選択再送処理が行われるよう再送可否の判定を行う構成となっている。また再送用バッファ17aは、上記再送可否判定手段16aでの判定結果に基づいて、再送されるべきパケットを送信キュー管理手段12に出力する構成となっている。
【0085】
なお、上記データ送信装置104における再送回数インクリメント手段37は、上記再送可否判定手段16aにより再送されることが決定された再送用バッファ17a内のパケットの再送回数をインクリメントするものである。
その他の構成は上記実施の形態1のデータ送信装置101と同一である。
また、図11は、上記実施の形態4のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。
【0086】
この実施の形態4のデータ受信装置204は、上記実施の形態3の変形例のデータ受信装置203の再送指示送出手段26に代えて、再送を要求するパケットに対する再送指示を、そのシーケンス番号と再送回数とを対にした情報を用いて行う再送指示送出手段26aを備えたものである。
その他の構成は上記実施の形態3の変形例のデータ受信装置203と同一である。
【0087】
次に作用効果について説明する。
図12は、上記実施の形態4のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図であり、送信側と受信側の間でのデータの授受の第1の例を示している。
【0088】
図12に示す状態では、シーケンス番号S1の高優先度パケットはすでに受信側にて正常に受信されている。以下、シーケンス番号がSnであり再送回数がN回であるパケットを、パケット(Sn,N)〔n,Nは自然数〕と表す。なお、図中、シーケンス番号S1,S2,S4のパケットは高優先度パケットであり、シーケンス番号S3,S5のパケットは、高優先度パケット以外のパケットである。ここでは、上記高優先度パケットの付加情報のみ後続のパケットに埋め込むようにしている。
【0089】
まず、図12に示すように、所定の送信タイミングで、上記高優先度パケット(S1)の次の高優先度パケット(S2,1)が、そのヘッダにこのパケットのシーケンス番号S2及び再送回数1とともに、上記高優先度パケットのシーケンス番号S1及び再送回数1を埋め込んで再送される。
【0090】
次の送信タイミングでは、上記高優先度パケット(S2,1)の次のパケット(S3)が、そのヘッダにこのパケットのシーケンス番号S3とともに、上記高優先度パケット(S2,1)のシーケンス番号S2及び再送回数1を埋め込んで送信される。
【0091】
次の送信タイミングでは、その次の高優先度パケット(S4,1)が、そのヘッダに、このパケットのシーケンス番号S4及び再送回数1とともに、上記高優先度パケット(S2,1)のシーケンス番号S2及び再送回数1を埋め込んで再送される。
【0092】
次の送信タイミングでは、その次のパケット(S5)が、そのヘッダに、このパケットのシーケンス番号S5とともに、上記高優先度パケット(S4,1)のシーケンス番号S4及び再送回数1を埋め込んで送信される。
【0093】
ここでは、上記のように4回のパケット送信が終了した時点で、第1回から第3回までのパケット送信中に送信エラーが発生し、パケット(S2,1)、(S3)、及び(S4,1)は受信側では受信されず、パケット(S5)のみ受信されている。
【0094】
この状態では、受信側では、最後に受信した高優先度パケットがシーケンス番号S1のものであり、エラーパケットがシーケンス番号S4の再送回数1回目のものであることがわかっており、高優先度パケット(S1)とパケット(S5)の間にどのようなパケットが送信されているかは分からない。
【0095】
そこで、受信側では、高優先度パケット(S4、1)の再送指示を、該パケットのシーケンス番号S4及び再送回数1とともに、最後に受信した高優先度パケットのシーケンス番号S1を含めて行う。
【0096】
すると、送信側では、最後に受信した高優先度パケットのシーケンス番号S1と、再送指示のあったエラーパケットのシーケンス番号S4との比較を行う。この場合、最後に受信した高優先度パケットのシーケンス番号S1が、再送指示のあったエラーパケットのシーケンス番号S4より小さいので、送信側では、該シーケンス番号S1より大きく、かつシーケンス番号S4以下のシーケンス番号を有するパケットに対して、選択再送処理を行う。
【0097】
つまり、この場合、高優先度パケット(S2、2)が、そのヘッダに高優先度パケット(S4、1)のシーケンス番号S4及び再送回数1を埋め込んで送信され、続いて、高優先度パケット(S4、2)が、そのヘッダに高優先度パケット(S2、2)のシーケンス番号S2及び再送回数2を埋め込んで送信される。
【0098】
ここでは、高優先度パケット(S2、2)が受信された時点で、受信側では、高優先度パケット(S4、1)の再送指示を、そのシーケンス番号S4及び再送回数1とともに最後に受信した高優先度パケット(S2、2)のシーケンス番号S2を含めて送信側に対して行うが、高優先度パケット(S4)については、2回目の再送が行われているため、高優先度パケット(S4、1)の再送指示に対しては再送は行わない。
【0099】
次に、図12に示すデータ授受の例とは異なるケースを、図13のシーケンス図を用いて行う。
図13に示すケースでは、高優先度パケット(S2、1)の送信から、高優先度パケット(S2、2)を送信するまでデータの授受は、図12に示すものと同一である。
【0100】
図13に示すケースでは、高優先度パケット(S2、2)の送信がエラー送信となり、次の高優先度パケット(S4、2)は正常に受信されている。
この場合、受信側では、最後に受信した高優先度パケットがシーケンス番号S4のものであり、エラーパケットがシーケンス番号S2の再送回数2回目のものであることがわかっている。
【0101】
そこで、受信側では、高優先度パケット(S2、2)の再送指示を、該パケットのシーケンス番号S2及び再送回数2とともに、最後に受信した高優先度パケットのシーケンス番号S4を含めて行う。
【0102】
すると、送信側では、最後に受信した高優先度パケットのシーケンス番号S4と、再送指示のあったエラーパケットのシーケンス番号S2との比較を行う。この場合、最後に受信した高優先度パケットのシーケンス番号S4が、再送指示のあったエラーパケットのシーケンス番号S2より大きいので、送信側では、該エラーパケットに対してのみ選択再送処理を行う。
【0103】
つまり、この場合、高優先度パケット(S2、3)が、そのヘッダに高優先度パケット(S4、2)のシーケンス番号S4及び再送回数2を埋め込んで送信される。
【0104】
次に、図12及び図13に示すデータ授受の例とは異なるケースを、図14のシーケンス図を用いて行う。
まず、図14に示すように、所定の送信タイミングで、高優先度パケット(S4、1)が、そのヘッダにこのパケットのシーケンス番号S4及び再送回数1とともに、このパケットより前に送信された高優先度パケット(S2、1)のシーケンス番号S2及び再送回数1を埋め込んで再送される。
【0105】
次の送信タイミングでは、その次のパケット(S5)が、そのヘッダに、このパケットのシーケンス番号S5とともに、上記高優先度パケット(S4,1)のシーケンス番号S4及び再送回数1を埋め込んで送信される。
【0106】
ここでは、上記のように2回のパケット送信が終了した時点で、第1回のパケット送信中に送信エラーが発生し、パケット(S4,1)は受信側では受信されず、パケット(S5)のみ受信されている。
【0107】
この状態では、受信側では、最後に受信した高優先度パケットがシーケンス番号S1のものであり、エラーパケットがシーケンス番号S4の再送回数1回目のものであることがわかっている。
【0108】
そこで、受信側では、高優先度パケット(S4、1)の再送指示を、該パケットのシーケンス番号S4及び再送回数1とともに、最後に受信した高優先度パケットのシーケンス番号S1を含めて行う。
【0109】
すると、送信側では、最後に受信した高優先度パケットのシーケンス番号S1と、再送指示のあったエラーパケットのシーケンス番号S4との比較を行う。この場合、最後に受信した高優先度パケットのシーケンス番号S1が、再送指示のあったエラーパケットのシーケンス番号S4より小さいので、送信側では、該シーケンス番号S1より大きく、かつシーケンス番号S4以下のシーケンス番号を有するパケットに対して、選択再送処理を行う。
【0110】
つまり、この場合、高優先度パケット(S2、2)が、そのヘッダにこのパケット(S2、2)のシーケンス番号S2及び再送回数2と、高優先度パケット(S4、1)のシーケンス番号S4及び再送回数1とを埋め込んで送信され、続いて、高優先度パケット(S4、2)が、そのヘッダに高優先度パケット(S4、2)のシーケンス番号S4及び再送回数2と、高優先度パケット(S2、2)のシーケンス番号S2及び再送回数2とを埋め込んで送信される。
【0111】
その後、さらにシーケンス番号S6のパケットが、そのヘッダにこのパケットのシーケンス番号S6と、高優先度パケット(S4、2)のシーケンス番号S4及び再送回数2とを埋め込んで送信される。
【0112】
このとき、上記高優先度パケット(S2、2)及び(S4、2)の送信はエラー送信となり、受信側では受信されず、パケット(S6)のみ受信されている。
この状態では、受信側では、最後に受信した高優先度パケットがシーケンス番号S1のものであり、エラーパケットがシーケンス番号S4の再送回数2回目のものであることがわかっている。
【0113】
そこで、受信側では、高優先度パケット(S4、2)の再送指示を、該パケットのシーケンス番号S4及び再送回数2とともに、最後に受信した高優先度パケットのシーケンス番号S1を含めて行う。
【0114】
すると、送信側では、最後に受信した高優先度パケットのシーケンス番号S1と、再送指示のあったエラーパケットのシーケンス番号S4との比較を行う。この場合、最後に受信した高優先度パケットのシーケンス番号S1が、再送指示のあったエラーパケットのシーケンス番号S4より小さいので、送信側では、該シーケンス番号S1より大きく、かつシーケンス番号S4以下のシーケンス番号を有するパケットに対して、選択再送処理を行う。
【0115】
つまり、この場合、高優先度パケット(S2、3)が、そのヘッダにこのパケットのシーケンス番号S2及び再送回数3と、高優先度パケット(S4、2)のシーケンス番号S4及び再送回数2を埋め込んで送信され、続いて、高優先度パケット(S4、3)が、そのヘッダにそのシーケンス番号S4及び再送回数3と、高優先度パケット(S2、3)のシーケンス番号S2及び再送回数3とを埋め込んで送信される。
【0116】
このように本実施の形態4では、送信側では、最後に受信した高優先度パケットのシーケンス番号がエラーパケットのシーケンス番号より大きい場合は、エラーパケットのみ再送するようにしたので、効率よくエラーパケットの再送処理を行うことができる。
【0117】
なお、上記実施の形態4では、1つのデータ送信装置に対するデータ受信装置が1つである場合について説明したが、1つのデータ送信装置に対するデータ受信装置が複数ある同報通信(マルチキャスト)にも、上記実施の形態4の選択再送処理を適用することができ、以下このようなマルチキャストにおける処理を、実施の形態4の変形例として説明する。
【0118】
(実施の形態4の変形例)
図15は、この実施の形態4の変形例によるデータ伝送方法を説明するためのシーケンス図であり、1つのデータ送信装置に対するデータ受信装置が複数ある場合における上記実施の形態4の選択再送処理の一例を示している。
【0119】
まず、図15に示すように、所定の送信タイミングで、高優先度パケット(S1、1)が、そのヘッダにこのパケットのシーケンス番号S2及び再送回数1とともに、このパケット以前の高優先度パケットのシーケンス番号及び再送回数を埋め込んで再送される。ここでは、送信側に対する受信側は2つ,つまり受信側I及び受信側IIがあり、上記高優先度パケット(S1、1)の送信がエラー送信となっている。
【0120】
この場合、各受信側では、高優先度パケット(S1、1)の再送要求を、最後に受信した高優先度パケットのシーケンス番号(lastS)を含めて行う。
このとき、送信側では、受信側Iからの再送要求に対して、高優先度パケット(S1、2)の再送を行い、この再送の後に、送信側に到着した受信側IIの再送指示に対しては再送を行わない。これは、受信側Iからの再送指示に対して高優先度パケット(S1、2)の再送をすでに行っているためである。
【0121】
そして、上記高優先度パケット(S1、2)の再送により、受信側Iでは、高優先度パケット(S1)が受信され、一方、受信側IIでは高優先度パケット(S1)が受信されない。
この場合は、受信側IIからは高優先度パケット(S1、2)の再送指示が行われる。これに対しては、送信側では送信回数をインクリメントして、高優先度パケット(S1、3)を再送する。
なお、上記実施の形態4及びその変形例では、再送回数に上限を設けてもよく、また、パケットの優先度の値によって、そのパケットの再送回数の上限を変更するようにしてもよい。
【0122】
(実施の形態5)
図16及び図17は、本発明の実施の形態5によるデータ伝送方法を説明するための図である。
この実施の形態5のデータ伝送方法は、実施の形態1のデータ伝送方法において、受信側ではシーケンス番号の抜けを検出し、送信側に、抜けているシーケンス番号のパケットの再送指示を、抜けているシーケンス番号を用いて行い、送信側では、受信側から再送指示されたシーケンス番号のパケットが、再送用バッファ17に保持されている場合、再送を行う。なお、送信側では、再送用バッファには優先度の高い高優先度パケットのみ格納するようにしている。
【0123】
図16は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置(図(a))及びデータ受信装置(図(b))を示すブロック図である。
【0124】
このデータ送信装置105は上記実施の形態1のデータ送信装置101と同一構成となっている。また、データ受信装置205は、実施の形態1のデータ受信装置201と同様、中継サーバ(送信側のデータ送信装置)から送信されたパケットを受信する受信手段21と、該受信手段21に出力に基づいて、送信途中でエラーが発生したエラーパケットを検出するとともに、正常に送信された正常パケットを出力するエラーパケット検出手段22と、該正常パケットを受け、そのパケットの符号化データを復号化するパケット復号化手段23と、パケットの受信履歴を管理する受信履歴管理手段24とを有している。
【0125】
そしてこの実施の形態5のデータ受信装置205は、実施の形態1のデータ受信装置201の再送指示送出手段26に代えて、エラーパケット検出手段22にて検出された抜けているシーケンス番号に対応するパケットの再送指示を送信側に送出する再送指示送出手段26bを有している。
【0126】
次に作用効果について説明する。
図17は、上記実施の形態5のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
データ送信装置(送信側)105から送出されたシーケンス番号S1の高優先度パケット(S1)が、送信エラーのためデータ受信装置(受信側)205では受信されない場合、データ受信装置205では、エラーパケット検出手段22にて、シーケンス番号S1が抜けていることが検出され、このシーケンス番号S1のパケットの再送指示が送信側に対して行われる。
【0127】
送信側では、この再送指示のあったパケットが再送用バッファ17に格納されているか否かを判定する。この場合、再送指示のあったパケットは、高優先度パケットであるため、再送用バッファ17に格納されている。従って、送信側では、再送指示のあったパケットの再送を行う。
【0128】
また、データ送信装置(送信側)105から送出されたシーケンス番号S2のパケット(S2)が、送信エラーのためデータ受信装置(受信側)205では受信されない場合、データ受信装置205では、エラーパケット検出手段22にて、シーケンス番号S2が抜けていることが検出され、このシーケンス番号S2のパケットの再送指示が送信側に対して行われる。
【0129】
送信側では、この再送指示のあったパケットが再送用バッファ17に格納されているか否かを判定する。この場合、再送指示のあったパケットは、高優先度パケットではないため、再送用バッファ17に格納されていない。従って、送信側では、再送指示のあったパケットの再送は行わない。
【0130】
このように本実施の形態5では、受信側ではシーケンス番号の抜けを検出し、送信側に、抜けているシーケンス番号のパケットの再送指示を、抜けているシーケンス番号により行い、送信側では、受信側から再送指示されたシーケンス番号のパケットが、再送用バッファに保持されている場合、その再送を行うので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0131】
(実施の形態6)
図18〜図20は、本発明の実施の形態6によるデータ伝送方法を説明するための図である。
この実施の形態6のデータ伝送方法は、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、この際、受信側でのパケット到着の制限時間に間に合うパケットのみ再送するためのデータ伝送方法である。
【0132】
図18は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
このデータ送信装置106は、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものであり、上記実施の形態1のデータ送信装置101の構成に加えて、送信されるパケットのうち、受信側での再生時間に間に合わないパケットを判定する再生時間判定手段39を備え、送信手段13bでは、該再生時間判定手段39で判定されたパケットは、これが再送用バッファ17に格納されているものであるか否かに拘わらず受信側に送信しないようにしている。
【0133】
その他の構成は実施の形態1のデータ送信装置101と同一である。
図19は、上記実施の形態6のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。このデータ受信装置206は、実施の形態1のデータ受信装置201のパケット優先度判定手段25に代えて、エラーパケット検出手段22により検出されたエラーパケットに付与されている再生時間と該エラーパケットの受信側への到着時間を検出し、再生時間に基づいて到着制限時間を決定し、到着制限時間より前に受信側に到着しているか否かを判定する再生時間判定手段43を備え、再送指示送出手段26にて、該判定結果に基づいて、到着制限時間より前に受信側に到着しているエラーパケットについてのみ再送要求をそのシーケンス番号を用いて送信側に指示するようにしたものである。なお、再生時間判定手段43における到着制限時間の決定は、受信側にて決定されるパケット許容遅延時間、及び送信側と受信側の間でのパケットの伝送遅延時間の少なくとも一方に基づいて行われる。
【0134】
その他の構成は実施の形態1のデータ受信装置201と同一である。
なお、上記実施の形態6における到着制限時間の決定方法については、実施の形態8において詳細に説明する。
【0135】
次に作用効果について説明する。
図20は、上記実施の形態6のデータ伝送方法におけるパケットの制限時間付き再送制御を説明するためのシーケンス図である。
データ送信装置(送信側)106では、受信側での再生時間が各送信パケットに付与される。
【0136】
例えば、データ送信装置(送信側)106から送出されたシーケンス番号S1,S2の高優先度パケット(S1),(S2)が、送信エラーのためデータ受信装置(受信側)206で正常に受信されない場合、データ受信装置206では、エラーパケット検出手段22により、この高優先度パケット(S1),(S2)がエラーパケットであると判定される。また、再生時間判定手段43では、上記各エラーパケットの再生時間(T1),(T2)と到着時間が検出され、再生時間に基づいて到着制限時間(T1+α),(T2+α)が決定され、到着制限時間より前に受信側に到着しているか否かを判定する。
【0137】
高優先度パケット(S1)のように到着制限時間より前に受信側に到着しているものは、受信側では、このパケットをエラーパケットとして再送指示が送信側に対して行われる。
一方、高優先度パケット(S2)のように到着制限時間より前に受信側に到着していないものは、受信側では、このパケットについては再送指示が送信側に対して行われない。
【0138】
なお、このとき、データ送信装置106では、受信側から再送要求の指示がなされたシーケンス番号のパケットのデータが、上記再送用バッファに保持されている場合、該送信時間が再生時間を過ぎていないパケットのデータが受信側に再送され、一方、送信時間が再生時間を過ぎているパケットのデータ場合は、これが送信されないで破棄されるとともに、該再送用バッファにおけるデータが、受信側でのデータの再生時間に間に合わなくなったパケットから順に破棄される。
【0139】
このように本実施の形態6では、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの受信側での再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、この際、受信側でのパケット到着の制限時間に間に合うパケットのみ再送するようにしたので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0140】
なお、上記実施の形態6では、パケットのデータに誤りがある場合に、その誤りをリカバリーする方法について説明したが、パケットのヘッダに付加されている付加情報,つまりシーケンス番号や再生時間に誤りがある場合もあり、上記データの誤りのリカバリーに加えてこれらの付加情報のリカバリーを行う方法として、種々の変形例が考えられ、以下これらの変形例について以下に説明する。
【0141】
(実施の形態6の変形例1)
この実施の形態6の変形例1では、上記実施の形態6のデータ伝送方法における送信側及び受信側での処理に加えて、送信側では、シーケンス番号や再生時間に対するエラー訂正符号を送信パケットに付与し、受信側では、上記エラー訂正符号を利用して、シーケンス番号や再生時間のエラー訂正を行い、その後、決定した到着制限時間に基づいてエラーパケットの再送制御を行う。
このような構成の実施の形態6の変形例1では、エラーパケットのシーケンス番号や再生時間に誤りのある場合でも、これらの付加情報を訂正することかできる。
【0142】
(実施の形態6の変形例2)
この実施の形態6の変形例2では、上記実施の形態6のデータ伝送方法における送信側及び受信側での処理に加えて、送信側では、所定のパケットのシーケンス番号と再生時間を、その次に伝送される次パケットにも埋め込み、受信側では、次パケットの受信時に埋め込まれているその前の所定のパケットのシーケンス番号及び再生時間の情報を取り出し、この情報に基づいて、所定のパケットの到着制限時間を決定して、所定のパケットをエラーパケットとする再送制御を行う。
【0143】
図21は、実施の形態6の変形例2によるデータ通信システムにおけるパケットデータの制限時間付き再送制御を説明するためのシーケンス図である。
送信側では、シーケンス番号及び受信側での再生時間が、所定のパケットに付与されるとともに、該所定のパケットの次に伝送される次パケットにも、その前の所定のパケットのシーケンス番号及び再生時間が埋め込まれる。
【0144】
その後、例えば、図21に示すように、送信側からシーケンス番号S1,S2のパケット(S1),(S2)が送信され、パケット(S1)が送信エラーのため受信側で正常に受信されない場合でも、パケット(S2)が受信側で正常に受信されれば、受信側では、パケット(S2)の前のパケット(S1)のシーケンス番号S1と再生時間(T1)が分かる。
【0145】
そこで、受信側では、エラーパケット(S1)の再生時間(T1)に基づいて到着制限時間(T1+α)が決定され、この時点で再送指示を行い到着制限時間内に再送パケットを受信可能か否かが判定される。この場合は、パケット(S2)を受信した時点でパケット(S1)の再送指示を行えば、パケット(S1)が制限時間より前に受信側に到着する可能性があるので、受信側からパケット(S1)の再送指示が送信側に対して行われる。
【0146】
その後、例えば、図21に示すように、送信側からシーケンス番号S3,S4のパケット(S3),(S4)が送信され、パケット(S3)が送信エラーのため受信側で正常に受信されない場合でも、パケット(S4)が受信側で正常に受信されれば、受信側では、パケット(S4)の前のパケット(S3)のシーケンス番号S3と再生時間(T3)が分かる。
【0147】
そこで、受信側では、エラーパケット(S3)の再生時間(T3)に基づいて到着制限時間(T3+α)が決定され、到着制限時間より前に受信側に到着しているか否かが判定される。この場合は、パケット(S3)は、到着制限時間より前に受信側に到着していないので、受信側から送信側へのパケット(S3)の再送指示は行われない。
【0148】
このような構成の実施の形態6の変形例2では、送信側では、所定のパケットのシーケンス番号及び再生時間を、該所定のパケットの次に伝送される次パケットにも埋め込むようにしているので、伝送エラーにより、パケットのデータだけでなくシーケンス番号や再生時間に誤りが発生した場合でも、エラーパケットの再送要求を行うことができ、しかも受信側での再生時間に間に合わないパケットの再送指示は行わないので、再送回数を削減することができる。
【0149】
さらにその他の変形例としては、実施の形態1〜5及びこれらの変形例の選択再送制御と、実施の形態6及びその変形例の制限時間付き再送制御とを組合せたものも考えられる。
【0150】
例えば、パケットにシーケンス番号及び優先度情報に対するエラー訂正符号を付与する実施の形態2と、パケットにシーケンス番号及び再生時間に対するエラー訂正符号を付与する実施の形態6の変形例1の組合せたもの(第1の組合せ例)が考えられる。この組合せによるものでは、パケットにシーケンス番号,優先度情報、及び再生時間に対するエラー訂正符号を付与することとなる。
【0151】
また、送信される所定のパケットの次のパケットに、所定のパケットのシーケンス番号及び優先度情報を埋め込む実施の形態3と、送信される所定のパケットの次のパケットに、該所定のパケットのシーケンス番号及び再生時間を埋め込む実施の形態6の変形例2の組合せたもの(第2の組合せ例)が考えられる。
【0152】
この組合せによるものでは、送信される所定のパケットの次のパケットに、該所定のパケットのシーケンス番号,優先度情報及び再生時間を埋め込むこととなる。
【0153】
さらに、送信される高優先度パケットのシーケンス番号及び優先度情報を後続のパケットに埋め込む処理を、次の高優先度パケットの送信まで行う実施の形態3の変形例と、送信される所定のパケットの次のパケットに、該所定のパケットのシーケンス番号及び再生時間を埋め込む実施の形態6の変形例2の組合せたもの(第3の組合せ例)が考えられる。
【0154】
この組合せによるものでは、高優先度パケットのシーケンス番号,優先度情報,及び再生時間を後続のパケットに埋め込む処理を、次の高優先度パケットの送信まで行うこととなる。
【0155】
さらに上記第2及び第3の組合せ例のように選択再送制御と制限時間付き再送制御とを組合せたものでは、パケットに埋め込む情報の量が多くなるため、所定のパケットのヘッダ情報(シーケンス番号,優先度情報,再生時間)と、埋め込む先の後続パケットのヘッダ情報との差分を、後続パケットに埋め込む方法が有効となる。
以下このような構成例を実施の形態6の変形例3として説明する。
【0156】
(実施の形態6の変形例3)
図22は、この実施の形態6の変形例3のデータ伝送方法におけるパケットの制限時間付き再送制御を説明するためのシーケンス図である。
送信側では、所定のパケットの次に送信されるパケットには、このパケットのシーケンス番号及び再生時間とともに、このパケットの前に送信された所定のパケットのシーケンス番号及び再生時間に関する差分情報が埋め込まれる。この差分情報は、所定のパケットのシーケンス番号とその次のパケットのシーケンス番号の差分(シーケンス差分)、及び所定のパケットの再生時間とその次のパケットの再生時間の差分(時間差分)である。
【0157】
例えば、図22に示すように、送信側からシーケンス番号S1,S2のパケット(S1),(S2)が送信され、パケット(S1)が送信エラーのため受信側で正常に受信されない場合でも、パケット(S2)が受信側で正常に受信されれば、受信側では、パケット(S2)の前のパケット(S1)のシーケンス番号S1と再生時間(T1)が分かる。
【0158】
つまり、パケット(S2)のシーケンス番号S2からシーケンス差分(S2−S1)を引くことにより、パケット(S1)のシーケンス番号S1を求めることができる。また、パケット(S2)の再生時間(T2)から時間差分(T2−T1)を引くことにより、パケット(S1)の再生時間(T1)を求めることができる。
【0159】
そこで、受信側では、エラーパケット(S1)の再生時間(T1)に基づいて到着制限時間(T1+α)が決定され、到着制限時間より前に受信側に到着しているか否かが判定される。例えば、パケット(S1)が、到着制限時間より前に受信側に到着している場合は、受信側からパケット(S1)の再送指示がシーケンス番号S1により送信側に対して行われる。
【0160】
このような構成の実施の形態6の変形例3では、所定のパケットのヘッダ情報(シーケンス番号,優先度情報,再生時間)と、埋め込む先の後続パケットのヘッダ情報との差分を、後続のパケットに埋め込むので、パケットに埋め込まれる情報量を削減することができる。
【0161】
なお、上記実施の形態6の変形例3では、パケットに埋め込む情報としてシーケンス番号と再生時間を示したが、埋め込む情報はこれらに限るものではなく、例えば、上記シーケンス番号及び再生時間に加えて再送回数や優先度を埋め込むようにしてもよい。
次に、上述した各実施の形態のデータ伝送方法における再送制御の適用区間に関する実施の形態について説明する。
【0162】
(実施の形態7)
この実施の形態7のデータ伝送方法は、配信サーバと端末の間でのデータ伝送を中継サーバを介してパケット単位で行い、端末側では、受信したパケットのデータを順次再生するためのデータ伝送方法であって、中継サーバと端末の間で伝送エラーが発生したとき、中継サーバにて、端末からの再送指示に基づいてエラーパケットの再送を行い、配信サーバと中継サーバの間で伝送エラーが発生したとき、配信サーバにて、端末から中継サーバを介して送信された再送指示に基づいて、該端末からの再送指示に基づいてエラーパケットの再送を行うものである。
【0163】
図23は、本発明の実施の形態7によるデータ伝送方法を説明するための図であり、該データ伝送方法によりデータ伝送を行うシステムにおけるデータ送信装置の構成を示している。
【0164】
このデータ送信装置107は、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものであり、実施の形態1のデータ送信装置101の構成に加えて、再送可否判定手段16での判定結果に基づいて、端末からの再送指示のあったエラーパケットの再送要求を、配信サーバに対して行う再送指示送信手段51を備えたものであり、その他の構成は実施の形態1のデータ送信装置101と同一である。
【0165】
次に作用効果について説明する。
このような構成の実施の形態7では、配信サーバと端末の間でのデータ伝送がパケット単位で行われる際の、配信サーバと端末との間でデータの中継がデータ送信装置107により行われる。
【0166】
そして、データ送信装置である中継サーバと端末の間で伝送エラーが発生した場合、本中継サーバにてエラーパケットの再送が行われる。この場合、端末からのエラーパケットに対する再送指示は配信サーバには中継されない。
【0167】
また、配信サーバとデータ送信装置である中継サーバの間で送信エラーが発生した場合、端末からのエラーパケットの再送指示が配信サーバに送信され、配信サーバから再送されたエラーパケットが上記データ送信装置107により中継されて端末側に送信される。
【0168】
このような構成の実施の形態7では、データ送信装置である中継サーバと端末の間で伝送エラーが発生した場合には、端末からのエラーパケットに対する再送指示は配信サーバには中継せずに、本中継サーバにてエラーパケットの再送が行われるので、配信サーバと中継サーバとの間での再送回数を削減することができる。
【0169】
(実施の形態7の変形例)
この実施の形態7の変形例は、配信サーバと端末の間でのデータ伝送を中継サーバを介してパケット単位で行い、端末側では、受信したパケットのデータを順次再生するためのデータ伝送方法であって、配信サーバと中継サーバの間で伝送エラーが発生したとき、エラーパケットは端末には送信せずに、配信サーバに、中継サーバから再送指示を送信し、配信サーバから中継サーバにエラーパケットを再送するものである。
【0170】
図24は、上記実施の形態7の変形例によるデータ通信システムにおけるデータ送信装置を示すブロック図である。
この実施の形態7の変形例のデータ送信装置107aは、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものであり、実施の形態1のデータ送信装置101の構成に加えて、配信サーバからのパケットを受信する受信手段11の出力に基づいて、受信パケットがエラーパケットである否かの判定を行うとともに、正常に受信されたパケットを出力するエラーパケット判定手段22と、正常に受信されたパケットの履歴を管理する受信履歴管理手段52と、再送可否判定手段16での判定結果,エラーパケット検出手段22での検出結果,及び受信履歴管理手段52における受信履歴の内容に基づいて、エラーパケットの再送指示を、配信サーバに対して行う再送指示送信手段51aとを備えたものであり、その他の構成は実施の形態1のデータ送信装置101と同一である。
【0171】
次に作用効果について説明する。
このような構成の実施の形態7の変形例では、配信サーバと端末の間でのデータ伝送がパケット単位で行われる際の、配信サーバと端末との間でデータの中継がデータ送信装置107aにより行われる。
【0172】
そして、データ送信装置である中継サーバと端末の間で伝送エラーが発生した場合、本中継サーバにてエラーパケットの再送が行われる。この場合、端末からのエラーパケットに対する再送指示は配信サーバには中継されない。
【0173】
また、配信サーバとデータ送信装置である中継サーバの間で送信エラーがが発生した場合、エラーパケットは端末には送信せずに、配信サーバに、中継サーバから再送指示が送信され、配信サーバから中継サーバへのエラーパケットの再送が行われる。
そして中継サーバからは、配信サーバから再送されたエラーパケットが端末へ送信される。
【0174】
このような構成の実施の形態7の変形例では、配信サーバと中継サーバの間で伝送エラーが発生したとき、エラーパケットは端末には送信せずに、配信サーバに、中継サーバから再送指示を送信し、配信サーバから中継サーバにエラーパケットを再送するので、中継サーバから端末へのエラーパケットの送信という無駄な送信が回避されるという効果がある。
【0175】
(実施の形態8)
図25〜図27は、本発明の実施の形態8によるデータ伝送方法を説明するための図である。
このデータ伝送方法は、配信サーバと端末との間でデータの伝送をパケット単位で行い、端末側では、受信したパケットのデータを順次再生するためのデータ伝送方法において、端末側でのデータの再生時間に対して許容できる再生遅延時間の情報を端末側から配信サーバに送信し、配信サーバでは、該再生遅延時間と、該配信サーバと端末間でのデータ伝送に要する伝送遅延時間とに基づいて、端末での再生時間を推定するものである。
【0176】
図25は、本発明の実施の形態8によるデータ通信システムにおけるデータ送信装置を示すブロック図である。
このデータ送信装置108は、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものであり、配信サーバから送信されたパケットを受信する受信手段11と、受信されたパケットの送信順序を各パケットに付与されているシーケンス番号等の付加情報に基づいて設定する送信キュー管理手段12と、該手段12により設定された送信順序で上記パケットを送信する送信手段13とを有している。
【0177】
また、上記データ送信装置108は、各パケットに付与されている時間情報としてのタイムスタンプを上記送信手段13を介して抽出するタイムスタンプ抽出手段75と、受信側(端末)からの許容再生遅延時間(到着制限時間)に関する情報を受信する許容再生遅延情報受信手段72とを有している。
【0178】
さらに、上記データ送信装置108は、伝送遅延を計測するためのパケット(伝送遅延計測パケット)の送受信を行う伝送遅延計測パケット送受信手段71と、上記伝送遅延計測パケットが送信側と受信側の間で往復するのに要する時間に基づいて、伝送遅延を測定する伝送遅延測定手段73とを有している。
【0179】
また、上記データ送信方法108は、上記伝送遅延、タイムスタンプ、及び許容再生遅延時間(到着制限時間)に基づいて、受信側でのデータの再生時間を推定して推定再生時間を出力する再生時間計算手段74を有している。
【0180】
なお、このデータ送信装置108は、図示していないが、実施の形態1あるいは6等のデータ送信装置と同様、優先度が一定値以上であるパケットを再送用バッファに格納するとともに、再送時間に間に合わなくなったパケットを破棄する機能と、受信側からの再送指示のあったパケットを再送する機能を有している。
【0181】
具体的には、このデータ送信装置108は、実施の形態1のデータ送信装置101における、再送指示受信手段14,パケット優先度判定手段15,再送可否判定手段16,再送用バッファ17,及び再送用バッファ管理手段18に相当する構成を有し、上記送信キュー管理手段12では、パケットの送信順序の設定を、受信されたパケットだけでなく再送パケットも含めた、送信されるすべてのパケットに対して行う構成となっている。
【0182】
図26は、上記実施の形態8のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。このデータ受信装置208は、中継サーバ(送信側のデータ送信装置)から送信されたパケットを受信する受信手段21と、受信されたパケットに対して復号化処理を施すパケット復号化手段23とを有している。
【0183】
また、このデータ受信装置208は、送信側の伝送遅延計測パケット送受信手段71から送信された伝送遅延計測パケットを受信して、送信側に送り返す伝送遅延計測パケット送受信手段62と、許容再生遅延時間を決定してこれに関する情報を出力する許容再生遅延決定手段63と、該許容再生遅延時間に関する情報を送信側に送信する許容再生遅延情報伝送手段61とを有している。
【0184】
なお、このデータ受信装置208は、図示していないが、実施の形態1,6等のデータ受信装置と同様、エラーパケットを検出して、再送時間に間に合うものについて再送指示を送信側に行う機能を有している。
【0185】
具体的には、このデータ受信装置208は、実施の形態1のデータ送信受信201における、エラーパケット検出手段22,受信履歴管理手段24,パケット優先度判定手段25,及び再送指示送出手段26に相当する構成を有している。
【0186】
次に作用効果について説明する。
【0187】
図27は、上記実施の形態8におけるサーバにおける、端末でのデータ再生時間を推定する方法を説明するための図であり、パケットのタイムスタンプとパケット出力時間(再生時間)等との関係(図(a))、及びタイムスタンプを標準時間にマッピングするための方法(図(b))を示している。
【0188】
データ送信装置(送信側)108では、送信キュー管理手段12にて設定された送信順序に基づいて、送信手段13にてパケットの送信を行う際、各パケットに含まれているタイムスタンプtp がタイムスタンプ抽出手段75により抽出され、再生時間計算手段74に出力される。また、データ受信装置(受信側)208の決定手段63により決定され、伝送手段61により送信された許容再生遅延時間dpの情報が、許容再生遅延情報受信手段72に受信されて、再生時間計算手段74に出力される。さらに、送信側の伝送遅延計測パケット送受信手段71から受信側の伝送遅延計測パケット送受信手段62への伝送遅延計測パケットの送信、及び該受信側の送受信手段62から送信側の送受信手段72への伝送遅延計測パケットの返送が行われて、伝送遅延測定手段73によりサーバ・端末間伝送遅延dsが求められて、再生時間計算手段74に出力される。このとき、各パケットのサーバ送出時間は、送信側で計測される。
【0189】
すると、上記再生時間計算手段74にて、受信側での各パケットの再生時間(パケットの出力時間)toが推定される。
すなわち、図27(a)に示すように、タイムスタンプtpに許容再生遅延時間dpを加えたものがパケットの出力時間toとなっており、また、サーバ送出時間tsにサーバ・端末間伝送遅延dsを加えたものが端末受信時間trとなる。従って、上記再生時間計算手段74では、パケットの出力時間toを(tp+dp)により求め、端末受信時間trを(ts+ds)により求める。
【0190】
そしてデータ送信装置108では、(ts+ds)と(tp+dp)の大小関係に基づいて、送信パケットが再生時間に間に合うものであるか否か、つまり、端末受信時間tr≦パケットの出力時間toを満たすか否かの判定が行われる。この判定結果に基づいて、再送指示のあったエラーパケットの再送や再送用バッファ内のパケットの破棄等が行われる。
【0191】
なお、上記説明では、再生遅延dpは、受信端末からサーバ側に送信するようにしているが、これは一定値としてもよい。また上記実施の形態8では、サーバと端末の間での時間の同期は、例えば、インターネット標準のNTP(ネットワークタイムプロトコル)により行っている。
【0192】
また、各パケットのタイムスタンプtpは、RTPヘッダのタイムスタンプから取得しているが、このタイムスタンプ値は、サーバ送出時間等と同じ時間軸上にマッピングする必要がある。
【0193】
以下簡単に中継サーバでのRTPタイムスタンプのマッピング方法について説明する。
RTPのタイムスタンプは、直接に標準時間で表現されていないため、他の標準プロトコルRTCP(Real-Time Control Protocol),RTSP(Real-Time Stream Protocol)に含まれる情報を用いて、標準時間に基づく時間情報に対してマッピングされる。中継サーバ(データ送信装置)108は、このマッピングのための情報を知る必要があり、中継中にこのマッピングのための情報(マッヒング情報)を取得するようにしている。
【0194】
例えば、図27(b)に示すように、サーバSから送出されるインターネット標準プロトコルのRTCP、RTSPに含まれるタイムスタンプのマッピング情報を中継サーバISで中継して端末Tに送出する際、該中継サーバISにてマッピング情報を解析する。また、端末からは、中継サーバに端末でのタイムスタンプのマッピング情報を通信している。
【0195】
このように本実施の形態8では、サーバ(データ送信装置)にてパケットの端末での実際の出力時間(再生時間)を推定するので、再生時間に間に合わないパケットを再送用バッファから除外することができる。
【0196】
なお、上記実施の形態8では、伝送遅延及び許容再生遅延の時間の決定方法は上記実施の形態8のものに限らず、例えは、受信側でのデータの再生途中に、上記サーバと端末の間での伝送遅延を、上記受信側からの情報により動的に更新するようにしてもよく、また、受信側でのデータの再生途中に上記許容再生遅延を計測して動的に変更するようにしてもよい。
【0197】
また、上記実施の形態8では、中継サーバ(データ送信装置)にてパケットの端末での実際の出力時間(再生時間)を推定する方法について示したが、パケットの端末での実際の出力時間(再生時間)の推定は、配信サーバにて、端末からの、許容可能な再生遅延時間、あるいは配信サーバと端末の間でのデータ伝送に要する伝送遅延時間に基づいて行うようにしてもよい。
【0198】
(実施の形態9)
図29〜図31は、本発明の実施の形態9によるデータ伝送方法を説明するための図である。この実施の形態9のデータ伝送方法は、送信側から受信側へのデータ伝送を、パケット単位のリアルタイム伝送を実現するために必要な、シーケンス番号,優先度,データの受信側での再生時間に関する付加情報をパケットに保持して連続して送信しつつ、受信側にて受信したパケットのデータを順次再生し、この際、優先度が一定値以上のエラーパケットのみ再送するためのデータ伝送方法である。
【0199】
図29(a)は、このデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
このデータ送信装置109は、配信サーバと端末(受信側)の間で伝送データを中継する中継サーバ(送信側)を構成するものである。このデータ送信装置109は、配信サーバから送信されたパケットを受信する受信手段11と、受信されたパケット及び再送を行うと決定されたパケット(再送パケット)の送信順序を上記付加情報に基づいて設定する送信キュー管理手段12と、該送信キュー管理手段12により設定された送信順序で上記パケットデータを送信する送信手段13とを有している。
【0200】
また、このデータ送信装置109は、該送信手段13にて送信されたパケットのうちで、優先度が一定値以上である場合に、高優先度パケットにのみ対応するシーケンス番号(高優先度シーケンス番号)の値をインクリメントして記憶する高優先度シーケンス番号管理手段81と、送信された高優先度パケットのシーケンス番号の値と、この高優先度パケットの、インクリメントした高優先度シーケンス番号の値との対応関係を記憶するシーケンス番号対応管理手段82と、上記高優先度シーケンス番号管理手段81に記憶されている、各高優先度パケットの高優先度シーケンス番号の値を、送信されるパケットに挿入されるように上記送信手段13に出力する高優先度シーケンス番号挿入手段83とを有している。
【0201】
ここで、高優先度シーケンス番号管理手段81にて管理されている高優先度シーケンス番号は、送信側から送信された高優先度パケットの数に相当するものである。
【0202】
また、上記データ送信装置109は、受信したパケットのうち所定のものを再送パケットとして格納する再送用バッファ17と、受信したパケットの優先度を判定するパケット優先度判定手段15と、判定されたパケットの優先度に基づいて、優先度が一定値以上であるパケットのデータが上記再送用バッファ17に格納されるよう該再送用バッファ17を制御する再送用バッファ管理手段18とを有している。
【0203】
さらに、上記データ送信装置109は、受信側の端末からの、高優先度シーケンス番号の指示を伴う再送要求を受信する再送指示受信手段14と、再送要求のあったパケットの再送を行うか否かを決定する再送可否判定手段16cとを有している。ここで、この再送可否判定手段16cは、該再送要求の際に指示された高優先度シーケンス番号に基づいて、上記シーケンス番号対応管理手段82における管理情報の検索を行い、該再送要求の際に指示された高優先度シーケンス番号に対応するシーケンス番号を取得し、該シーケンス番号のパケットが再送用バッファ17内の格納されているか否かによって、再送指示されたパケットを再送するか否かの決定を行う構成となっている。
【0204】
なお、図29(a)では、配信サーバと端末との間で、中継サーバ等を介してリアルタイムでパケットのデータを伝送を行い、データ送信装置が中継サーバを構成する場合について説明したが、中継サーバが配信サーバの機能を兼ねても良い。すなわち、データ送信装置が配信サーバを構成する場合は、データ送信装置109は、図29(b)に示すように、上記データ送信装置109における受信手段11を、データを符号化し、符号化されたデータをパケットを単位として出力する符号化パケット生成手段10aと、該符号化パケット生成手段10aから出力される各パケットに優先度等の付加情報を付与する優先度付与手段10bとに置き換えた構成となる。
【0205】
図30は、上記実施の形態9のデータ伝送方法によりリアルタイムのデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。このデータ受信装置209は、送信側のデータ送信装置から送信されたパケットを受信する受信手段21と、該受信手段21の出力に基づいて、送信途中でエラーが発生したパケットを検出するとともに、正常に送信された正常パケットを出力するエラーパケット検出手段22aと、該正常パケットを受け、そのパケットの符号化データを復号化するパケット復号化手段23とを有している。
【0206】
ここで、上記エラーパケット検出手段22aは、データ送信装置109からのパケットに挿入されていた高優先度シーケンス番号(送信側高優先度シーケンス番号)が正しく抽出されたときには、その送信側高優先度シーケンス番号の値と、その時点における受信側高優先度シーケンス番号の値とを出力する構成となっている。この受信側高優先度シーケンス番号の値は、受信側にて受信された高優先度パケットの数に対応し、この値は、受信側にて高優先度パケットが受信される度にインクリメントされるものである。
【0207】
また、上記データ受信装置209は、上記エラーパケット検出手段22aが正常パケットを出力する際に、上記受信側高優先度シーケンス番号の値をインクリメントして記憶する高優先度シーケンス番号管理手段91と、上記エラーパケット検出手段22aが出力する送信側高優先度シーケンス番号の値と受信側高優先度シーケンス番号の値とを比較し、これらの値が一致しないときは、該受信側高優先度シーケンス番号の値に1を加えた値から上記送信側高優先度シーケンス番号の値までの範囲内の値を、再送シーケンス番号(送信側高優先度シーケンス番号)の値として出力する再送シーケンス番号判定手段92とを有している。
【0208】
ここで、上記高優先度シーケンス番号管理手段91は、再送シーケンス番号判定手段92が高優先度シーケンス番号を出力する度に、記憶している受信側高優先度シーケンス番号の値をインクリメントする構成となっている。
【0209】
さらに、上記データ受信装置209は、上記再送シーケンス番号判定手段92から再送シーケンス番号として出力される送信側高優先度シーケンス番号に基づいて、高エラーパケットに対する再送要求を、該送信側高優先度シーケンス番号を指示して送信側に送出する再送指示送出手段26cとを有している。
【0210】
次に作用効果について説明する。
図31は、上記実施の形態9のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
なお、図31の説明では、シーケンス番号〔S+n〕は、その値が「S+n」であるシーケンス番号を示し、シーケンス番号〔H+n〕は、その値が「H+n」である高優先度シーケンス番号を示し、パケット(S+n)は、そのシーケンス番号の値が「S+n」であるパケットを示している。またここでは、nが0、1、2、3、4,5である場合を示している。
【0211】
例えば、一定値より以上の優先度を高優先度とし、一定値より小さい優先度を低優先度とすると、図31に示すように、シーケンス番号〔S+1〕,〔S+2〕の高優先度パケット(S+1),(S+2)の伝送中にエラーが発生した場合には、該高優先度パケットに対する再送要求が行われるが、シーケンス番号〔S+3〕の低優先度パケット(S+3)の伝送中にエラーが発生した場合には、該低優先度パケット(S+3)に対する再送要求が行われない。
【0212】
詳述すると、配信サーバから送信される各パケットには、シーケンス番号及び優先度に関する付加情報が付加されており、中継サーバとしての上記データ送信装置109では、受信されたパケットは、送信キュー管理手段12にて送信順序を設定されて送信手段13に供給されるとともに、パケット優先度判定手段15にてその優先度が判定される。すると、送信手段13では、設定された送信順序でパケットの送信が行われる。また、優先度が一定値以上であると判定されたパケットは、再送用バッファ管理手段18の制御により、再送用バッファ17に格納される。また、再送用パケット17では、管理手段18により、再生時間に間に合わなくなったパケットからそのデータが順次解放(破棄)される。
【0213】
次に、パケットの送信時におけるシーケンス番号の管理処理について説明する。
高優先度パケットの送信時には高優先度シーケンス番号のインクリメントが行われる。
具体的には、シーケンス番号〔S+0〕の高優先度パケット(S+0)が送信手段13により送信されると、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+0〕の値がインクリメントされて「H+1」となる。また、このとき、高優先度パケット(S+0)のシーケンス番号〔S+0〕の値と、上記インクリメントされた送信側高優先度シーケンス番号〔H+1〕の値とが、対応付けられてシーケンス番号対応管理手段82に登録される。
【0214】
同様に、シーケンス番号〔S+1〕の高優先度パケット(S+1)が送信手段13により送信されると、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+1〕の値がインクリメントされて「H+2」となる。このとき、高優先度パケット(S+1)のシーケンス番号〔S+1〕と、上記インクリメントされた送信側高優先度シーケンス番号〔H+2〕とが対応付けられてシーケンス番号対応管理手段82に登録される。
【0215】
また、高優先度パケット(S+2)が送信されたときも、上記高優先度パケット(S+0)及び(S+1)の送信時と同様に、高優先度シーケンス番号管理手段81における送信側高優先度シーケンス番号〔H+2〕がインクリメントされ、高優先度パケット(S+2)のシーケンス番号〔S+2〕と、上記インクリメントされた送信側高優先度シーケンス番号〔H+3〕とが対応付けられてシーケンス番号対応管理手段82に登録される。
【0216】
一方、低優先度パケットの送信時には低優先度シーケンス番号のインクリメントが行われない。
具体的には、シーケンス番号〔S+3〕の低優先度パケット(S+3)が送信手段13により送信されたときには、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+3〕の値は更新されずそのまま維持される。このときには、送信されたパケットのシーケンス番号と、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+3〕とを対応付けてシーケンス番号対応管理手段82に登録する処理も行われない。
【0217】
次に、パケットの送信時におけるシーケンス番号の埋め込み処理について説明する。
高優先度パケット(S+1)を送信する際には、この時点で高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+1〕の値が、高優先度シーケンス番号挿入手段83により送信パケット(S+1)のヘッダに埋め込まれる。これと同様に、低優先度パケット(S+3)を送信する際には、この時点で高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+3〕の値が送信パケット(S+3)のヘッダに埋め込まれる。このようにそのヘッダに高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号が埋め込まれた送信パケットは、送信手段13により受信側に送信される。
【0218】
このようにして配信サーバからのパケットは順次中継サーバを介して端末(データ受信装置)209に送出される。
すると、上記データ受信装置209では、中継サーバ(データ送信装置)109からのパケットが受信手段21にて受信され、受信されたパケットは、エラーパケット検出手段22aに供給される。正常に送信された高優先度パケット(S+0)は、エラーパケット検出手段22aによりパケット復号化手段23に出力されるとともに、受信側高優先度シーケンス番号,つまり高優先度シーケンス番号管理手段91に格納されている高優先度シーケンス番号〔H+0〕の値がインクリメントされて〔H+1〕となる。
【0219】
ここでは、高優先度パケット(S+1)及び(S+2)の送信中に送信エラーが発生し、その後これらのパケットに続く低優先度パケット(S+3)が正常送信されたとする。
【0220】
この場合、正常に送信された低優先度パケット(S+3)は、エラーパケット検出手段22aによりパケット復号化手段23に出力されるが、高優先度シーケンス番号管理手段91に格納されている受信側高優先度シーケンス番号〔H+1〕の値はインクリメントされない。
【0221】
さらに、エラーパケット検出手段22aにて、高優先度パケット(S+0),低優先度パケット(S+3)に挿入されていた送信側高優先度シーケンス番号〔H+0〕,〔H+3〕が正しく抽出されると、これらの送信側高優先度シーケンス番号〔H+0〕,〔H+3〕が再送シーケンス番号判定手段92に出力される。さらに、エラーパケット検出手段22aにて送信側高優先度シーケンス番号〔H+0〕,〔H+3〕が抽出された時点で高優先度シーケンス番号管理手段91に格納されている受信側高優先度シーケンス番号の値〔H+0〕,〔H+1〕が再送シーケンス番号判定手段92に出力される。
【0222】
例えば、送信側高優先度シーケンス番号〔H+0〕が抽出された時点では、送信側高優先度シーケンス番号〔H+0〕とともに、高優先度シーケンス番号管理手段91における受信側高優先度シーケンス番号の値〔H+0〕が再送シーケンス番号判定手段92に出力され、送信側高優先度シーケンス番号〔H+3〕が抽出された時点では、この送信側高優先度シーケンス番号〔H+3〕とともに、高優先度シーケンス番号管理手段91における受信側高優先度シーケンス番号の値〔H+1〕が再送シーケンス番号判定手段92に出力される。
【0223】
そして、再送シーケンス番号判定手段92では、同時に供給された送信側高優先度シーケンス番号と受信側高優先度シーケンス番号がが比較され、送信側に再送を指示するかどうかが判定される。
【0224】
例えば、送信側高優先度シーケンス番号〔H+0〕と受信側高優先度シーケンス番号〔H+0〕の比較処理では、両高優先度シーケンス番号の値が等しいという比較結果が得られるので、再送指示が行われない。一方、送信側高優先度シーケンス番号〔H+3〕と受信側高優先度シーケンス番号〔H+1〕の比較処理では、両高優先度シーケンス番号の値が等しくないという比較結果が得られるので、再送指示が行われる。この場合、受信側高優先度シーケンス番号〔H+1〕の値に1を加えた値から送信側高優先度シーケンス番号〔H+3〕の値まで範囲内の値、すなわち、再送指示に用いる高優先度シーケンス番号の値として、「H+2」,「H+3」が再送指示送出手段26に出力される。このとき高優先度シーケンス番号管理手段91では、格納されている受信側高優先度シーケンス番号の値が2回インクリメントされて「H+3」となる。
【0225】
そして、再送指示送出手段26では、高優先度シーケンス番号の値として「H+2」、「H+3」が供給されると、高優先度シーケンス番号〔H+2〕を伴う再送要求と、高優先度シーケンス番号〔H+3〕を伴う再送要求が送信側に送出される。
【0226】
すると、送信側のデータ送信装置109では、該再送要求が再送指示受信手段14により受信され、この再送要求のあった高優先度シーケンス番号〔H+2〕及び〔H+3〕に基づいて、シーケンス番号対応管理手段82の管理情報に対する検索処理が行われ、上記高優先度シーケンス番号〔H+2〕に対応するシーケンス番号〔S+1〕と、高優先度シーケンス番号〔H+3〕に対応するシーケンス番号〔S+2〕が取得される。
【0227】
さらに、再送可否判定手段16cでは、上記シーケンス番号〔S+1〕及び〔S+2〕に対応するパケットのデータが再送用バッファ17に格納されているか否かの判定が行われる。この判定の結果、再送用バッファ17にデータが格納されているパケットのみが、再送用バッファ17から再送パケットとして送信キュー管理手段12に出力される。ここでは、再送パケットとして高優先度パケット(S+1),(S+2)が出力される。
【0228】
この送信キュー管理手段12では、再送パケットには、所定の送信順序が設定されて、送信手段13を介して受信側に再送される。上記再送パケットは高優先度パケットであるため、各再送パケット(S+1),(S+2)の送信の際に、それぞれ高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号の値がインクリメントされる。
【0229】
具体的には、再送パケット(S+1)の送信の際には、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+3〕の値がインクリメントされて「H+4」となり、再送パケット(S+1)のシーケンス番号〔S+1〕と送信側高優先度シーケンス番号〔H+4〕とが対応付けられてシーケンス番号対応管理手段82に登録される。
【0230】
また、再送パケット(S+2)の送信の際には、高優先度シーケンス番号管理手段81に格納されている送信側高優先度シーケンス番号〔H+4〕の値がインクリメントされて「H+5」となり、再送パケット(S+2)のシーケンス番号〔S+2〕と送信側高優先度シーケンス番号〔H+5〕が対応付けられてシーケンス番号対応管理手段82に登録される。
【0231】
このように本実施の形態9では、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号、優先度、データの再生時間に関する付加情報と、送信側で管理する高優先度シーケンス番号の情報とを保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、受信したパケットに保持される送信側高優先度シーケンス番号の値(送信された高優先度パケットの数)と、受信側で管理する受信側高優先度シーケンス番号の値(受信された高優先度パケットの数)とを比較し、抜けている送信側高優先度シーケンス番号を指示して再送要求を行うので、優先度が一定値以上のエラーパケットの再送により、リアルタイム伝送における無線区間の伝送品質を改善できるだけでなく、エラーパケットの再送をより簡易な処理手順により実現できる。
【0232】
なお、上記実施の形態9では、送信された複数の高優先度パケットに対応する高優先度シーケンス番号の値が連続して抜けている場合、受信側では、抜けている高優先度シーケンス番号の値毎に個々に高優先度パケットの再送要求を送信側に対して行うようにしているが、複数の高優先度パケットに対する再送要求を、複数の高優先度シーケンス番号の値を列挙して、あるいはその値の範囲を指定して、一括して送信側に送出するようにしてもよい。
【0233】
この場合、送信側では、受信側から再送要求があった複数の高優先度シーケンス番号に基づいて、該各送信側高優先度パケットに対応付けられたシーケンス番号が検索処理により取得され、該取得されたシーケンス番号の高優先度パケットが受信側に再送される。
【0234】
(実施の形態10)
この実施の形態10のデータ伝送方法は、送信側への再送要求を行う回数と間隔を、無線区間の伝送状態に合わせて変化させるようにしたものであり、再送要求が送信側に正しく伝送される確率を高くして、無線区間での伝送品質を改善したものである。
【0235】
図32は、実施の形態10のデータ伝送方法によりリアルタイム伝送のデータ伝送を行うデータ伝送システムにおけるデータ送信装置を示すブロック図である。
このデータ受信装置110は、上記実施の形態9のデータ送信装置109における再送可否判定手段16cに代えて、この手段16cによる処理を行うとともに、再送することが決定したパケットのシーケンス番号を出力する再送可否判定手段16dを備え、さらに、上記データ送信装置109におけるシーケンス番号対応管理手段82に代えて、この手段82による処理を行うとともに、再送可否判定手段16dからのシーケンス番号に基づいて、該シーケンス番号の値に対応付けられている送信側高優先度シーケンス番号の値を削除するシーケンス番号対応管理手段82aを備えたものである。従って、この実施の形態10のデータ送信装置110のその他の構成は、上記実施の形態9のデータ送信装置109と同一である。
【0236】
図33は、上記実施の形態10のデータ伝送方法によりリアルタイム伝送のデータ伝送を行うデータ伝送システムにおけるデータ受信装置を示すブロック図である。
【0237】
このデータ受信装置210は、上記実施の形態9のデータ受信装置209におけるエラーパケット検出手段22aに代えて、該手段22aによるエラーパケット検出と同一の処理を行うとともに、検出したエラーパケットの数から無線区間の伝送状態を判断するエラーパケット検出手段22bを有している。
【0238】
また、このデータ受信装置210は、上記データ受信装置209における再送指示送出手段26cに代えて、該手段26cによる再送指示を送出する処理と同一の処理を行うとともに、送出した再送要求を制御信号として出力する再送指示送出手段26dを有している。
【0239】
さらに、このデータ受信装置210は、再送指示送出手段26dからの制御信号として送出した再送要求を受け、該再送要求を、定められた回数と送出間隔で複数回連続送出するとともに、エラーパケット検出手段22bから出力される、無線区間の伝送状態を示す情報に応じて、再送要求の送出回数と送出間隔を変化させる再送指示連続送出手段93を備えている。
そして、この実施の形態10のデータ受信装置210のその他の構成は、実施の形態9のデータ受信装置209と同一となっている。
【0240】
次に作用効果について説明する。
本発明の実施の形態10のデータ伝送方法による基本的なデータ伝送処理は、実施の形態9のものと同一であるので、以下には、実施の形態9における処理と異なる処理についてのみ説明する。
【0241】
この実施の形態10では、受信手段21にて受信された送信側からのパケットがエラーパケット検出手段22bに出力されると、エラーパケット検出手段22bでは、受信手段21の出力に基づいて無線区間の伝送状態が検出され、この無線区間の伝送状態を示す情報が再送指示連続送出手段93に供給される。
【0242】
一方、再送シーケンス出力手段92からの高優先度シーケンス番号が再送指示送出手段26bに入力されると、該再送指示送出手段26bからは、上記高優先度シーケンス番号を指示して送信側に再送要求が送出されるとともに、この再送要求が制御信号として、再送指示連続送出手段93に出力される。
【0243】
すると、上記再送指示連続送出手段93では、再送要求を複数回連続して送信側に送信する連続再送処理が行われる。この連続再送処理では、再送要求の送信回数と送出間隔は、予め定められた既定値を基準として、エラーパケット検出手段22bの出力情報から得られる無線区間の伝送状態に応じて調整される。
【0244】
例えば、無線区間で伝送エラーが多発している場合は、上記送信回数が増大し、上記送出間隔が広がる。これにより再送要求が送信側に正しく伝送される確率がより高くなる。一方、無線区間における伝送エラーがあまり発生していない場合は、上記送信回数が減少し、上記送出間隔が狭くなる。これにより、再送処理に要する時間が短くなる。
【0245】
また、送信側では、上記再送要求に応じてパケットの再送が行われるとともに、シーケンス番号対応管理手段82aでは、再送可否判定手段16dからのシーケンス番号に基づいて、該シーケンス番号の値に対応付けられている送信側高優先度シーケンス番号の値を削除する処理が行われる。
【0246】
このため、再度受信した同一の再送要求に対しては、再送可否判定手段16dによるシーケンス番号の検索処理が失敗に終わる。これは、この再送要求の際に指示された送信側高優先度シーケンス番号とシーケンス番号との対応関係が、シーケンス番号対応管理手段82aから削除されているためである。
【0247】
この結果、再送可否判定手段16dによる再送判定では、送信側高優先度シーケンス番号の値を指示して再送要求が行われた高優先度パケットの再送は行わないという決定がなされる。これにより、送信側では、受信側から再送要求が複数回指示された場合に、それぞれの再送要求に対して同一パケットの再送が繰り返し行われるのが回避される。
【0248】
このように本実施の形態10では、受信側から高優先度シーケンス番号を指示して送信する再送要求を、伝送中に送信エラーが発生する場合に備えて複数回連続して送信側に送信するので、送信側では受信側からの複数の再送要求の指示が1つでも正しく受信された場合には、優先度が一定値以上のエラーパケットを再送することができ、リアルタイム伝送における、無線区間の伝送品質をより効果的に改善できる。
【0249】
以下上記各実施の形態のデータ伝送方法によりデータを伝送するためのパケットのデータ構造について説明する。
図34は、該パケットのデータ構造を示す図である。
このパケットPaは、各パケットの属性を示す関連情報を格納するヘッダ部Phと、伝送対象となるデータを格納するデータ部Pdとから構成されている(図34(a))。
【0250】
また、上記ヘッダ部Phは、各パケットに対応するシーケンス番号を示すヘッダ情報Ia、上記伝送対象となるデータの受信側での再生時間を示すヘッダ情報(タイムスタンプ)Ib、各パケットの優先度を示すヘッダ情報Ic、及び拡張ヘッダ情報Idを、その他のヘッダ情報I1〜I10とともに含んでいる(図34(b))。
【0251】
ここで、上記各ヘッダ情報の詳細な規定は、図34(c)に示すようにRFC1889に記述されている。例えば、ヘッダ情報I3は、その値XがX=1であるときは、上記拡張ヘッダ情報Idがヘッダ部Phに付加されていることを示すものである。また、ヘッダ情報I5は、その値PTがPT=32であるときは、上記データ部に格納されているデータが、MPEG1方式による符号化データであることを示し、その値PTがPT=33であるときは、上記データ部に格納されているデータが、MPEG2方式による符号化データであることを示すものである。さらに、ヘッダ情報I9,Ic,I10,I11は、MPEG1方式による符号化データをRTPにより伝送する場合に付加されるヘッダ情報である。またこのヘッダ情報Icの値P(P=1)は、データ部におけるデータがIフレームのデータであり、このIフレームのデータを格納したパケットを高優先度パケットとして扱うべきことを示し、値P(P=2)は、データ部におけるデータがPフレームのデータであり、このPフレームのデータを格納したパケットを低優先度パケットとして扱うべきことを示し、値P(P=3)は、データ部におけるデータがBフレームのデータであり、このBフレームのデータを格納したパケットを低優先度パケットとして扱うべきことを示す。
【0252】
さらに、拡張ヘッダ情報Idは、上記実施の形態3では前シーケンス番号及び前優先度情報(図6参照)、実施の形態4では先に送信された高優先度パケットのシーケンス番号及び再送回数(図13、図14参照)、実施の形態6の変形例2では前シーケンス番号及び前再生時間(図21参照)、実施の形態6の変形例3では前シーケンス番号の差分値及び前再生時間の差分値(図22参照)、実施の形態9では送信側高優先度シーケンス番号(図29参照)となっている。
【0253】
【発明の効果】
以上のようにこの発明に係るデータ伝送方法によれば、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、この際、優先度が一定値以上のエラーパケットのみ再送するので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0254】
この発明に係るデータ送信装置によれば、各パケットの優先度に基づいて、優先度が一定値以上であるパケットを再送パケットとして格納する再送パケット格納手段と、受信側の端末からの再送要求の指示と、上記再送パケット格納手段における再送パケットの格納状況とに基づいて、再送指示のあったパケットの再送を行うか否かを決定する再送可否判定手段とを備えたので、優先度が一定値以上のエラーパケットのみ再送可能となり、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0255】
この発明に係るデータ受信装置によれば、優先度が一定値以上であるエラーパケットを判定するパケット優先度判定手段と、優先度が一定値以上であると判定されたエラーパケットの再送要求をそのシーケンス番号を指示して送信側に送出する再送指示送出手段とを備えたので、受信側では、優先度が一定値以上のエラーパケットに対してのみ送信側への再送要求が行われることとなり、リアルタイム伝送における、無線区間の伝送品質を改善するとともに、再送回数を削減することが可能となる
【0256】
この発明に係るデータ伝送方法によれば、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側に到着したパケットのデータを順次再生し、この際、受信側でのパケット到着の制限時間に間に合うエラーパケットのみ再送するので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0257】
この発明に係るデータ送信装置によれば、優先度が一定値以上であるパケットを再送パケットとして格納する再送パケット格納手段と、該再送要求の指示と、上記再送パケット格納手段における再送パケットの格納状況とに基づいて、再送指示のあったパケットの再送を行うか否かを決定する再送可否判定手段とを備え、上記再生時間判定手段にて受信側での再生時間に間に合わないと判定されたパケット以外の再送パケットのデータを再送するので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0258】
この発明に係るデータ受信装置によれば、エラーパケットが到着制限時間より前に受信側に到着しているか否かを判定する再生時間判定手段を備え、到着制限時間より前に受信側に到着しているエラーパケットについてのみ再送要求を、そのシーケンス番号を指示して送信側に送出するので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を削減することができる。
【0259】
この発明に係るデータ伝送方法によれば、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号,優先度,データの再生時間に関する付加情報を保持するパケットを単位として連続して行いつつ、受信側に到着したパケットのデータを順次再生し、この際、優先度が一定値以上であって、受信側でのパケット到着の制限時間に間に合うエラーパケットのみ再送するので、リアルタイム伝送における、無線区間の伝送品質を改善することができ、しかも、再送回数を大きく削減することができる。
【0260】
この発明に係るデータ伝送方法によれば、データ送信装置である中継サーバと端末の間で伝送エラーが発生した場合には、端末からのエラーパケットに対する再送要求は配信サーバには中継せずに、本中継サーバにてエラーパケットの再送が行われるので、配信サーバと中継サーバとの間での再送回数を削減することができるという効果がある。
【0261】
この発明によれば、配信サーバと中継サーバの間で伝送エラーが発生したとき、エラーパケットは端末には送信せずに、配信サーバに、中継サーバから再送要求を送信し、配信サーバから中継サーバにエラーパケットを再送するので、中継サーバから端末へのエラーパケットの送信という無駄な送信が回避されるという効果がある。
【0262】
この発明に係るデータ送信装置によれば、受信側の端末からの再送要求の指示を受信する再送指示受信手段と、該再送要求の指示と、上記再送パケット格納手段における再送パケットの格納状況とに基づいて、再送指示のあったパケットの再送を行うか否かを決定する再送可否判定手段とを備え、該再送可否判定手段での判定結果に基づいて、端末からの再送指示のあったエラーパケットの再送要求を、配信サーバに対して行うようにしたので、データ送信装置である中継サーバと端末の間で伝送エラーが発生した場合には、端末からのエラーパケットに対する再送要求は配信サーバには中継せずに、本中継サーバにてエラーパケットの再送を行うことが可能となり、配信サーバと中継サーバとの間での再送回数を削減することができるという効果がある。
【0263】
この発明に係るデータ伝送方法によれば、送信側から受信側へのデータ伝送を、それぞれ対応するシーケンス番号及び優先度に関する付加情報と、送信側で管理する、送信した高優先度パケットの数に相当する送信側高優先度シーケンス番号の値とを保持するパケットを単位として連続して行いつつ、受信側にて受信したパケットのデータを順次再生し、受信したパケットに保持される送信側高優先度シーケンス番号の値と、受信側で管理する、受信した高優先度パケットの数に相当する受信側高優先度シーケンス番号の値との比較結果に応じて、送信側高優先度シーケンス番号を指示して、エラーパケットの再送要求を行うので、優先度が一定値以上の高優先度パケットの再送を、より簡単な処理により行うことができる。
【0264】
この発明によれば、送信側高優先度シーケンス番号の値を指示して行う、受信側から送信側への再送要求を、複数回連続して行うので、送信側では受信側からの複数の再送要求の指示が1つでも正しく受信された場合に、優先度が一定値以上のエラーパケットのみを再送することができ、リアルタイム伝送における、無線区間の伝送品質をより効果的に改善できる。
【0265】
この発明に係るデータ送信装置によれば、送信した高優先度パケットの数に相当する送信側高優先度シーケンス番号の値と、該高優先度パケットのシーケンス番号の値とを関連付けて管理するシーケンス番号管理手段と、該高優先度パケットに続く後続パケットに該送信側高優先度シーケンス番号の値を埋め込む高優先度シーケンス番号挿入手段とを備え、受信側からの送信側高優先度シーケンス番号の値を指示した再送要求に基づいて、再送指示のあったパケットの再送を行うので、優先度が一定値以上のエラーパケットのみが再送されることとなり、優先度が一定値以上の高優先度パケットの再送を、より簡単な処理により行うことができる。
【0266】
この発明に係るデータ受信装置によれば、正常に受信された高優先度パケットの数に相当する、受信側高優先度シーケンス番号の値を管理する高優先度シーケンス番号管理手段を備え、送信側からのパケットに含まれている、送信された高優先度パケットの数に相当する送信側高優先度シーケンス番号の値と、受信側高優先度シーケンス番号の値との比較結果に応じて、再送要求の対象となる送信側高優先度シーケンス番号の値を指定して、優先度が一定値以上のエラーパケットの再送要求を行うので、優先度が一定値以上の高優先度パケットの再送をより簡単な処理により行うことができる。
【0267】
この発明に係るパケットデータ構造によれば、送信側から受信側へのデータ伝送を行うためのパケットを、各パケットの属性を示す関連情報を格納するヘッダ部と、伝送対象となるデータを格納するデータ部とから構成し、上記ヘッダ部を、各パケットに対応するシーケンス番号を示す第1の情報、各パケットの優先度を示す第2の情報、及び上記伝送対象となるデータの受信側での再生時間を示す第3の情報のうちの少なくとも第1及び第2の情報を含む構成としたので、優先度の低いパケットの再送及び再生時間に間に合わないパケットの再送を回避して、リアルタイム伝送における無線区間の伝送品質を、再送回数を削減しつつ改善することができる。
【0268】
この発明によれば、上記パケットのヘッダ部を、各パケットより先に伝送された送信済パケットの属性情報を含む構成としたので、エラーパケットの再送をより確実に行うことができる。
【0269】
この発明によれば、上記パケットのヘッダ部を、各パケットより先に伝送された送信済パケットの属性情報として、上記第1及び第2の情報,あるいは第1及び第3の情報を含む構成としたので、優先度あるいは再生時間に基づく再送制御をより確実に行うことができる。
【0270】
この発明は、上記パケットのヘッダ部を、各パケットより先に伝送された、優先度が一定値より高い高優先度パケットの数に相当する高優先度シーケンス番号の値を含む構成としたので、リアルタイム伝送における無線区間の伝送品質を改善できるだけでなく、エラーパケット再送をより簡易な処理手順により実現できる。
【図面の簡単な説明】
【図1】本発明の実施の形態1によるデータ伝送システムにおける中継サーバとしてのデータ送信装置(図(a))、及び配信サーバとしてのデータ送信装置を説明するためのブロック図である。
【図2】上記実施の形態1のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図3】上記実施の形態1のデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【図4】本発明の実施の形態2によるデータ送信システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図5】上記実施の形態2のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図6】本発明の実施の形態3によるデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【図7】本発明の実施の形態3の変形例によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図8】上記実施の形態3の変形例のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図9】上記実施の形態3の変形例によるデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【図10】本発明の実施の形態4によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図11】上記実施の形態4のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図12】上記実施の形態4のデータ伝送方法におけるパケットの選択再送制御の第1の例を説明するためのシーケンス図である。
【図13】上記実施の形態4のデータ伝送方法におけるパケットの選択再送制御の第2の例を説明するためのシーケンス図である。
【図14】上記実施の形態4のデータ伝送方法におけるパケットの選択再送制御の第3の例を説明するためのシーケンス図である。
【図15】上記実施の形態4の変形例によるデータ伝送方法におけるパケットの選択再送制御の第4の例を説明するためのシーケンス図である。
【図16】本発明の実施の形態5によるデータ伝送システムにおける中継サーバとしてのデータ送信装置(図(a))及び受信端末としてのデータ受信装置(図(b) )を説明するためのブロック図である。
【図17】上記実施の形態5によるデータ伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【図18】本発明の実施の形態6によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図19】上記実施の形態6のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図20】上記実施の形態6のデータ伝送方法におけるパケットの制限時間付き再送制御を説明するためのシーケンス図である。
【図21】上記実施の形態6の変形例2によるデータ伝送方法におけるパケットの制限時間付き再送制御を説明するためのシーケンス図である。
【図22】上記実施の形態6の変形例3によるデータ伝送方法におけるパケットの制限時間付き再送制御を説明するためのシーケンス図である。
【図23】本発明の実施の形態7によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図24】上記実施の形態7の変形例によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図25】本発明の実施の形態8によるデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図26】上記実施の形態8のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図27】上記実施の形態8におけるサーバによる端末の再生時間推定方法を説明するための図であり、パケットのタイムスタンプとパケット出力時間等との関係(図(a))、及びタイムスタンプのマッピング方法(図(b))を示している。
【図28】従来の映像伝送システムを概念的に説明するための概念図であり、サーバと端末とが有線回線により接続されるもの(図(a))、及びサーバと端末とが無線回線を含むネットワークにより接続されるもの(図(b))を示している。
【図29】本発明の実施の形態9によるデータ伝送システムにおける中継サーバとしてのデータ送信装置及び配信サーバとしてのデータ送信装置を説明するためのブロック図である。
【図30】上記実施の形態9のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図31】上記実施の形態9のリアルタイム伝送方法におけるパケットの選択再送制御を説明するためのシーケンス図である。
【図32】本発明の実施の形態10のデータ伝送システムにおけるデータ送信装置(中継サーバ)を示すブロック図である。
【図33】本発明の実施の形態10のデータ伝送システムにおけるデータ受信装置(受信端末)を示すブロック図である。
【図34】上記各実施の形態のデータ伝送方法によりデータを伝送するためのパケットのデータ構造(図(a)),該パケットのヘッダの構成(図(b)),ヘッダ情報の規定(図(c))を示す図である。
【符号の説明】
10a 符号化パケット生成手段
10b 優先度付与手段
11,21 受信手段
12 送信キュー管理手段
13,13a,13b 送信手段
14 再送指示受信手段
15 パケット優先度判定手段
16,16a 再送可否判定手段
17,17a 再送用バッファ
18 再送用バッファ管理手段
22 エラーパケット検出手段
23 パケット復号化手段
24 受信履歴管理手段
25,25a パケット優先度判定手段
26,26a,26b 再送指示送出手段
31,41 エラー訂正手段
32 シーケンス番号挿入手段
33 シーケンス番号記憶手段
34 シーケンス番号再送回数挿入手段
35 シーケンス番号再送回数記憶手段
36 シーケンス番号再送回数比較手段
37 再送回数インクリメント手段
38 再送回数クリア手段
39,43 再生時間判定手段
42 挿入シーケンス抽出手段
51,51a 再生指示受信手段
52 受信履歴管理手段
61 許容再生遅延情報伝送手段
62,71 伝送遅延計測パケット送受信手段
63 許容再生遅延決定手段
72 許容再生遅延情報受信手段
73 伝送遅延測定手段
74 再生時間計算手段
75 タイムスタンプ抽出手段
81,91 高優先度シーケンス番号管理手段
82,82a シーケンス番号対応管理手段
83 高優先度シーケンス番号挿入手段
92 再送シーケンス出力手段
93 再送指示連続送出手段
101〜108,107a,109,110 データ送信装置
201〜210 データ受信装置
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data transmission method, a data transmission apparatus, and a data reception apparatus, and more particularly to a process for sequentially reproducing data of received packets on a terminal side while performing data transmission between a distribution server and a terminal in units of packets. It is.
[0002]
[Prior art]
Currently, there are a download type transmission system and a stream type transmission system for transmitting video (audio and video) data on the Internet.
In this download type transmission method, the video file transmitted from the distribution server is temporarily copied on the terminal side, and then the video file data (video data) is reproduced. Therefore, in this method, data cannot be reproduced on the terminal side until the file transfer is completed, and the download type transmission method is not suitable for long-time reproduction of video data or the like.
[0003]
On the other hand, in the stream type transmission method, the received data is reproduced on the terminal side even while the video data and the like are transmitted from the distribution server to the terminal.
The mainstream of this stream type transmission system uses a protocol called RTP (Real-Time Transport Protocol) defined in RFC1889 of Internet Engineering Task Force (IETF).
[0004]
FIG. 28A is a diagram for explaining a conventional video data transmission method using RTP.
As shown in FIG. 28 (a), a distribution server (transmission side) and a terminal (reception side) such as a personal computer are connected to each other via a wired line such as a modem, ISDN, or LAN on the Internet. Data is transmitted.
[0005]
In this data transmission by RTP, processing for each packet is synchronized between the transmission side and the reception side by a time stamp as time information, and an out-of-synchronization (arrival delay) packet or an error packet in which a transmission error has occurred. Is discarded at the receiving end. A discarded packet or a lost packet is detected on the receiving side due to a missing sequence number assigned to each packet.
[0006]
Currently, Internet applications using mobile phones, such as e-mail access and text information services, are in progress, and third-generation mobile communication (W-CDMA: Wide band-Code Division Multiple Access). An infrastructure for high-speed wireless data communication (up to 384kbps high-speed packet communication) is being developed.
[0007]
FIG. 28B is a diagram showing a communication network targeted for the W-CDMA visual terminal.
Such a communication network includes a wireless transmission section. For example, when data transmission between a video distribution server and a visual terminal is performed via a relay server, wired transmission via the Internet is performed between the distribution server and the relay server. Although it becomes a section, it becomes a wireless transmission section by a mobile phone network such as W-CDMA between the relay server and the visual terminal.
[0008]
[Problems to be solved by the invention]
However, the bit error rate in the wired section is 10 -Five -10 -7 In contrast, the bit error rate in the radio section is 10 -3 In the RTP data transmission method in which the reproduction quality depends on the transmission quality between end-to-end (between the distribution server and the terminal), wireless transmission quality becomes a problem.
[0009]
The present invention has been made to solve the above-described problems, and provides a data transmission method, data transmission device, and data reception device capable of improving the transmission quality of a wireless section in real-time transmission. With the goal.
[0010]
[Means for Solving the Problems]
The data transmission method according to the present invention (Claim 1) is a data transmission method for transmitting data in units of packets, wherein the first step of transmitting the packet having a first sequence number representing the reproduction order of packets; A second step of receiving a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred; Recieved Resend request And the same value stored in the packet in which the transmission error has occurred based on the determination result, and the third step for determining whether or not to retransmit the packet in which the transmission error has occurred The first sequence number; Each time a retransmission packet is sent, it is incremented by 1 and it is possible to determine a transmission error of a sent retransmission packet. Transmitting the retransmission packet having a second sequence number representing a transmission order. 4 It is characterized by having these steps.
[0011]
This invention (invention 2) is characterized in that, in the data transmission method according to claim 1, the retransmission packet is a high priority packet.
[0012]
This invention (invention 3) is characterized in that, in the data transmission method according to claim 1, the second sequence number included in the retransmission packet is included in an RTP header.
[0014]
This invention (claim) 4 ) Is a data transmission method according to claim 1, wherein the third step is performed only when the retransmission packet is a high priority packet.
[0015]
This invention (Claims) 5 ) Is the data transmission method according to claim 1, wherein the second step is performed when a time for which the data reception device receives the retransmission packet is within an arrival limit time of the retransmission packet. It is what.
[0016]
This invention (Claims) 6 ) Is a data transmission method for receiving data in units of packets, and the packet transmission error having the first sequence number indicating the reproduction order of the packets. A first step of detecting the occurrence of Sending a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred. 2 And based on the retransmission request Send Trusted, The same value stored in the packet in which the transmission error occurred The first sequence number; Each time a retransmission packet is sent, it is incremented by 1 and it is possible to determine a transmission error of a sent retransmission packet. Receiving a retransmission packet having a second sequence number representing a transmission order; 3 It is characterized by having these steps.
[0017]
This invention (Claims) 7 ) Is the claim 6 In the data transmission method described in (1), the retransmission packet is a high priority packet.
[0018]
This invention (Claims) 8 ) Is the claim 6 In the data transmission method according to claim 1, the second sequence number included in the retransmission packet is included in an RTP header.
[0020]
This invention (Claims) 9 ) Is the claim 6 In the data transmission method according to claim 1, the second step is performed only when the retransmission packet is a high priority packet.
[0021]
This invention (Claims) 10 ) Is the claim 6 In the data transmission method according to claim 1, the first step is performed when a time for receiving the retransmission packet by the data receiving apparatus is within an arrival limit time of the retransmission packet. .
[0022]
This invention (Claims) 11 ) Is a data transmission device that transmits data in units of packets, a transmission unit that transmits the packet having a first sequence number that represents the reproduction order of packets, and the transmission error has occurred Retransmission instruction receiver for receiving retransmission request of retransmission packet corresponding to packet And a determination unit that determines whether to retransmit a packet in which a transmission error indicated by the received retransmission request has occurred, The transmitter is The retransmission packet is transmitted based on the determination result of the determination unit, and the retransmission packet is the same value stored in the packet in which the transmission error has occurred. The first sequence number; Each time a retransmission packet is sent, it is incremented by 1 and it is possible to determine a transmission error of a sent retransmission packet. A second sequence number representing the transmission order The It is characterized by this.
[0023]
This invention (Claims) 12 ) Is the claim 11 In the data transmitting apparatus described in (1), the retransmission packet is a high priority packet.
[0024]
This invention (claim) 13 ) Claims 11 In the data transmitting apparatus according to claim 2, the second sequence number included in the retransmission packet is included in an RTP header.
[0026]
This invention (Claims) 14 ) Is the claim 11 In the data transmitting apparatus according to claim 1, the transmitting unit transmits the retransmission packet only when the retransmission packet is a high priority packet.
[0027]
This invention (Claims) 15 ) Is the claim 11 The data transmission apparatus according to claim 1, wherein the retransmission instruction receiving unit receives the retransmission request when a time during which the data reception apparatus receives the retransmission packet is within an arrival limit time of the retransmission packet. It is what.
[0028]
This invention (Claims) 16 ) Is a data receiving device that receives data in packet units, and has a transmission error of the packet having the first sequence number indicating the packet reproduction order. A detector for detecting the occurrence of A retransmission instruction sending unit for sending a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred, and based on the retransmission request Send Trusted A receiving unit that receives a retransmission packet, and the retransmission packet has the same value stored in the packet in which the transmission error has occurred The first sequence number; Each time a retransmission packet is sent, it is incremented by 1 and it is possible to determine a transmission error of a sent retransmission packet. A second sequence number representing the transmission order Octopus It is characterized by.
[0029]
This invention (Claims) 17 ) Is the claim 16 In the data receiving apparatus described in (1), the retransmission packet is a high priority packet.
[0030]
This invention (Claims) 18 ) Is the claim 16 In the data receiving apparatus according to claim 1, the second sequence number included in the retransmission packet is included in an RTP header.
[0032]
This invention (Claims) 19 ) Is the claim 16 In the data receiving apparatus described in (1), the receiving unit receives the retransmission packet only when the retransmission packet is a high priority packet.
[0033]
This invention (Claims) 20 ) Is the claim 16 In the data receiving device according to claim 2, when the time for which the data receiving device receives the retransmission packet is within the time limit for arrival of the retransmission packet, the retransmission instruction transmitting unit transmits the retransmission request. It is a feature.
[0034]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the focus and basic principles of the present invention will be described.
As a result of earnest research on the method of improving the transmission quality in the network including the wireless transmission section, the present inventor can improve the transmission quality in the wireless section by retransmitting the packet in real time in the existing real-time transmission method. I found.
[0035]
That is, the above-described existing real-time transmission method transmits packet data in real time between a distribution server and a terminal via a relay server or the like, and a sequence necessary for realizing real-time transmission of packet data. Additional information such as a number and a time stamp is attached to the header of the packet, and the retransmission control of the packet can be performed in real time using the additional information.
[0036]
As described above, the data transmission method of the present invention that performs real-time data transmission between the distribution server and the terminal via the relay server and performs real-time retransmission control, the relay server is a video distribution server. It may also serve as a function. Further, the present invention can be applied not only to the forward direction from the distribution server to the terminal but also to the reverse direction from the terminal to the distribution server with respect to the video data transmission direction.
Furthermore, the present invention realizes transmission QoS (Quality of Service) control in the relay server in order to make the real-time transmission system function effectively.
[0037]
Next, an outline of real-time retransmission control in the data transmission method of the present invention will be briefly described.
The real-time retransmission control takes into account the transmission quality of the radio section and recovers the error packet in which a radio transmission error has occurred by retransmission, whereas the conventional retransmission control realizes high reliability in data transmission ( In order to recover all error packets, the retransmission of error packets is repeated until the data is correctly transmitted to the other party.
[0038]
In the conventional retransmission control, when the final error packet retransmission fails, the data transmission is abnormally terminated as a communication error.
By the way, in the retransmission control necessary for real-time transmission of video data, even if a transmission error occurs during transmission of a predetermined packet and an image of about several frames is lost, the data transmission must be terminated abnormally. This is not a fatal transmission error. Therefore, in the video data transmission method, the highest priority is given to completing real-time transmission with a certain degree of reliability rather than high reliability.
[0039]
For example, in the transmission of a video signal compliant with the MPEG standard, when a packet corresponding to an I frame (intra-frame encoded image) that is a reference image becomes an error packet, a subsequent P frame (interframe forward predictive encoding) Even if packets corresponding to (image) and B frame (inter-frame bi-directional predictive encoded image) can be received correctly, the video signals of P frame and B frame cannot be reproduced. Therefore, for I frames, it is necessary to recover transmission errors as much as possible.
[0040]
Also, in video transmission (stream type communication for transmitting audio signals and video signals), unlike conventional retransmission control, it is necessary to perform retransmission while realizing real-time transmission.
[0041]
In order to realize such real-time transmission, the present invention performs retransmission control for error packets as described below in a real-time transmission method.
[0042]
The first retransmission control is selective retransmission control. This is intended to retransmit only high priority packets among error packets and reduce the number of retransmissions. The second retransmission control has a time limit. This is retransmission control, which cancels retransmission of an error packet that does not meet the reproduction time and reduces unnecessary retransmission.
Embodiments of the present invention will be described below.
[0043]
(Embodiment 1)
1 to 3 are diagrams for explaining a data transmission method according to Embodiment 1 of the present invention.
In the data transmission method of the first embodiment, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and reproduction time on the data reception side. This is a data transmission method for sequentially reproducing data of packets received on the receiving side, and retransmitting only error packets whose priority is a predetermined value or higher.
[0044]
FIG. 1A is a block diagram showing a data transmission apparatus in a data transmission system that performs real-time data transmission by this data transmission method.
The data transmission apparatus 101 constitutes a relay server (transmission side) that relays transmission data between a distribution server and a terminal (reception side). The data transmission apparatus 101 includes a reception unit 11 that receives a packet transmitted from a distribution server, and a transmission queue management that sets a transmission order of the received packet and a packet to be retransmitted (retransmission packet) based on the additional information. Means 12 and transmission means 13 for transmitting the packet data in the transmission order set by the means 12.
[0045]
Each packet from the transmission side includes a data portion storing digital data such as video data, audio data, and text data, and a header portion storing additional information different from these digital data. Here, each packet has a data structure in which additional information related to the sequence number corresponding to each packet, the priority, and the reproduction time on the data receiving side is stored in the header portion.
[0046]
The data transmitting apparatus 101 includes a retransmission buffer 17 that stores a predetermined packet among the received packets as a retransmission packet, a packet priority determination unit 15 that determines the priority of the received packet, and the determined packet. And a retransmission buffer management means 18 for controlling the buffer 17 so that the data of the packet having a priority equal to or higher than a predetermined value is stored in the retransmission buffer 17 based on the priority.
[0047]
Further, the data transmitting apparatus 101 performs retransmission based on the retransmission instruction receiving means 14 for receiving an instruction for retransmission request from the receiving terminal, the retransmission instruction, and the storage status of the retransmission packet in the retransmission buffer 17. Re-sendability determination means 16 for determining whether or not to retransmit the instructed packet. Specifically, the retransmission permission / non-permission determination means 16 receives the data of the packet only when the data of the packet of the sequence number for which the retransmission request is instructed from the receiving side is stored in the retransmission buffer 17. Decide to resend to the side.
[0048]
In FIG. 1 (a), the case where the data transmission apparatus constitutes a relay server has been described. However, when the data transmission apparatus is a distribution server, the data transmission apparatus uses the reception unit 11 in the data transmission apparatus 101. An encoded packet generation means 10a for encoding data and outputting the encoded data in units of packets; and a priority giving means 10b for giving additional information such as a priority to each packet output from the means 10a (See FIG. 1B).
[0049]
FIG. 2 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the first embodiment.
The data receiving device 201 receives a packet transmitted from a relay server (data transmitting device on the transmitting side), and receives an error packet in which an error has occurred during transmission based on the output to the receiving unit 21. An error packet detecting unit 22 that detects and outputs a normal packet transmitted normally, and a packet decoding unit 23 that receives the normal packet and decodes the encoded data of the packet.
[0050]
The data reception device 201 receives a detection output from the reception history management unit 24 for managing packet reception history and the error packet detection unit 22, and determines a packet whose priority is equal to or higher than a predetermined value. Priority determining means 25, and retransmission instruction sending means 26 for making a retransmission request to the transmission side of an error packet determined to have a priority equal to or higher than a certain value, by instructing its sequence number.
[0051]
Next, the function and effect will be described.
FIG. 3 is a sequence diagram for explaining packet selective retransmission control in the data transmission method of the first embodiment.
In the data transmission method according to the first embodiment, when a transmission error occurs during packet transmission, a retransmission request is instructed from the receiving side to the transmitting side only for a packet having a priority level equal to or higher than a predetermined value. For an error packet smaller than a certain value, no retransmission request is issued.
[0052]
For example, assuming that a priority higher than a certain value is a high priority and a priority smaller than a certain value is a low priority, as shown in FIG. 3, during transmission of a high priority packet (S1) with a sequence number S1. If an error occurs, a retransmission request is made for the high priority packet. If an error occurs during transmission of the low priority packet (S2) with the sequence number S2, the low priority packet No retransmission request is made.
[0053]
More specifically, each packet transmitted from the distribution server is added with additional information related to the sequence number and priority. In the data transmitting apparatus 101 as the relay server, the received packet is transmitted to the transmission queue management means. The transmission order is set at 12 and supplied to the transmission means 13. At this time, the packet priority determination means 15 determines the priority of the received packet. Then, the transmission means 13 transmits the packets in the set transmission order. Packets determined to have a priority equal to or higher than a certain value are stored in the retransmission buffer 17 under the control of the retransmission buffer management means 18. In the retransmission packet 17, the management unit 18 sequentially releases (discards) the data from the packet that is not in time for the reproduction time.
[0054]
When the retransmission buffer 17 runs out of free space, the reproduction time of the packet data in the retransmission buffer is the earliest based on the reproduction time of the packet held in the retransmission buffer. The first update processing for holding the retransmission data while discarding the packets in order, and the discarding of the data in the retransmission buffer is performed on the receiving side with respect to a predetermined one after the packet having the earliest reproduction time. One of the second update processes for holding the retransmission data is performed while sequentially performing the packet reproduction times at regular intervals.
[0055]
In this way, packets from the distribution server are sequentially sent to the terminal (data receiving apparatus) 201 via the relay server (data transmitting apparatus) 101.
In the data receiving apparatus 201, a packet from the relay server (data transmitting apparatus) 101 is received by the receiving unit 21, and the received packet is supplied to the error packet detecting unit 22. Then, the normally transmitted packet is output to the packet decoding unit 23 by the error packet detection unit 22, and the additional information of each packet is supplied to the reception history management unit 24. At this time, the priority information of the error packet is supplied to the packet priority determination means 25, and it is determined whether or not the priority is a certain value or more. For an error packet with a priority equal to or higher than a certain value, a retransmission request is sent by the retransmission instruction sending means 26 to the transmission side according to the instruction of the sequence number.
[0056]
Then, in the data transmission apparatus 101 on the transmission side, the retransmission request is received by the retransmission instruction receiving unit 14, and it is determined whether or not the packet having the sequence number for which the retransmission request has been stored is stored in the retransmission buffer 17. This is performed by the availability determination means 16. If there is a packet with a sequence number for which retransmission has been requested in the retransmission buffer 17, this packet is output from the retransmission buffer 17 to the transmission queue management means 12 as a retransmission packet. In the transmission queue management unit 12, the retransmission packet is retransmitted to the reception side via the transmission unit 13 with a predetermined transmission order set.
[0057]
As described above, in the first embodiment, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and data reproduction time. The packet data received on the receiving side is played back in sequence. At this time, for error packets in which a transmission error has occurred, only those with a priority higher than a certain value are retransmitted. Transmission quality can be improved and the number of retransmissions can be reduced.
[0058]
In the above embodiment, instead of the priority, a packet type such as an I frame, a P frame, or a B frame may be added to the packet as additional information.
In addition, there are various methods for determining the priority in the above embodiment. For example, in the case of a video signal conforming to the MPEG standard, a packet corresponding to an I frame may be a high priority packet.
[0059]
Further, in the above embodiment, the packet discarding process when the retransmission buffer is full may be performed by performing the first or second update process in order from the packet with the lowest priority.
[0060]
(Embodiment 2)
4 and 5 are diagrams for explaining a data transmission method according to the second embodiment of the present invention.
FIG. 4 is a block diagram showing a data transmission apparatus in a data transmission system that performs real-time data transmission by this data transmission method.
[0061]
In addition to the configuration of the data transmission apparatus 101 of the first embodiment, the data transmission apparatus 102 adds an error correction code for additional information such as the sequence number and priority to the packet output from the transmission queue management means 12. An error correction unit 31 for performing an error correction process to be added is provided, and the packet subjected to the error correction process is supplied to the transmission unit 13. The other configuration is the data transmission apparatus 101 of the first embodiment. Is the same.
[0062]
FIG. 5 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the second embodiment.
[0063]
In addition to the configuration of the data receiving apparatus 201 of the first embodiment, the data receiving apparatus 202 of the second embodiment adds an error correction code assigned to the packet to the packet received by the receiving means 21. Error correction means 41 for performing error correction processing of the additional information using the above-mentioned information, and outputting the packet subjected to the error correction processing to the error packet detection means 22, and other configurations are as described above. This is the same as the data receiving apparatus 201 of the first embodiment.
[0064]
Next, the function and effect will be described.
In the data transmission method of the second embodiment having such a configuration, on the transmission side, an error correction code for additional information related to the sequence number, priority, and the like is added to the transmission packet. On the receiving side, error correction processing of the additional information is performed using the error correction code, and thereafter, a retransmission request for the error packet is performed based on the additional information. Thereby, even when there is an error in the sequence number or priority information, a retransmission request for an error packet can be made correctly.
[0065]
(Embodiment 3)
6 to 9 are diagrams for explaining a data transmission method according to the third embodiment of the present invention and its modification, and FIG. 6 is a packet selective retransmission control in the data transmission method according to the third embodiment. It is a sequence diagram for demonstrating.
[0066]
In the data transmission method of the third embodiment, on the transmission side, additional information relating to the sequence number and priority corresponding to a predetermined packet is also embedded in a subsequent packet transmitted after the predetermined packet. On the receiving side, if a transmission error of the predetermined packet has occurred and there is an error in the additional information of the predetermined packet, a subsequent packet transmitted after the error packet is sent as a request for retransmission of the error packet. Is received based on the additional information of the predetermined packet embedded in the subsequent packet.
[0067]
For example, if a priority higher than a certain value is a high priority and a priority smaller than a certain value is a low priority, as shown in FIG. 6, during transmission of a high priority packet (S1) with a sequence number S1. When an error occurs and the low-priority packet (S2) with the sequence number S2 transmitted next is normally received, a retransmission request for the high-priority packet is sent to the next low-priority packet. It is performed when (S2) is received.
[0068]
On the other hand, when an error occurs during the transmission of the low priority packet (S3) with the sequence number S3, and the high priority packet (S4) with the sequence number S4 transmitted next is normally received, When the next high priority packet (S4) is received, a retransmission request for the low priority packet (S3) is not made.
[0069]
In the data transmission method having such a configuration, even when an error occurs during transmission of a predetermined packet and there is an error in the sequence number or priority information of the packet, Since additional information such as the sequence number and priority information of the predetermined packet is included, a retransmission request with the predetermined packet as an error packet can be made correctly.
[0070]
In the third embodiment, the additional information of each packet is embedded in the subsequent packet. However, the additional information of each packet is embedded not only in the next packet but also in a plurality of subsequent packets. In the following, a modification of the third embodiment having such a configuration will be described.
[0071]
(Modification of Embodiment 3)
FIG. 7 is a block diagram illustrating a data transmission apparatus in a data transmission system that performs real-time data transmission by the data transmission method according to the modification of the third embodiment.
In addition to the configuration of the data transmission apparatus 101 of the first embodiment, the data transmission apparatus 103 stores a sequence number of a packet whose priority is equal to or higher than a predetermined value among the packets transmitted by the transmission unit 13a. A sequence number storage means 33; and a sequence number insertion means 32 for outputting the sequence number stored in the storage means 33 to the transmission means 13a so as to be inserted into the header of the packet to be transmitted. In addition to the function of the transmission means 13 of the first embodiment, the packet from the transmission queue management means 12 is transmitted by inserting the sequence number from the sequence number insertion means 32 into the header thereof. Other configurations are the same as those of the data transmission apparatus 101 of the first embodiment.
[0072]
FIG. 8 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method according to the modification of the third embodiment.
[0073]
In addition to the configuration of the data receiving apparatus 201 of the first embodiment, the data receiving apparatus 203 of the modification of the third embodiment is inserted into this packet from a normal packet output from the error packet detecting means 22. And an insertion sequence extraction means 42 for extracting a sequence number of a high priority packet received prior to this packet, and a normal packet is output to the packet decoding means 23 via the insertion sequence extraction means 42 Like to do. In this data receiving apparatus 203, the packet priority determination unit 25a outputs a retransmission request to the retransmission instruction transmission unit 26 when the packet having the sequence number extracted by the insertion sequence extraction unit 42 is an error packet. It is said.
Other configurations are the same as those of the data receiving apparatus 201 of the first embodiment.
[0074]
Next, the function and effect will be described.
FIG. 9 is a sequence diagram for explaining packet selective retransmission control in the data transmission method according to the modification of the third embodiment.
In the data transmission device (transmission side) 103, in addition to the transmission operation in the data transmission device 101 of the first embodiment, the process of embedding the sequence number of the high priority packet to be transmitted in the subsequent packet is the next high priority. This is done until a packet is sent.
[0075]
For example, when a priority higher than a certain value is a high priority and a priority smaller than a certain value is a low priority, a high priority packet (S1) with a sequence number S1 is transmitted as shown in FIG. Thereafter, the packets (S2) to (S4) of sequence numbers S2 to S4 following this packet are transmitted with the sequence number S1 of the high priority packet (S1) embedded therein, and the high priority packet of the next sequence number S5 is transmitted. In (S5), the sequence number S4 of the previous high priority packet (S4) is embedded and transmitted.
[0076]
At this time, an error occurs during transmission of the high-priority packet (S1) with the sequence number S1 and the low-priority packets (S2) and (S3) with the subsequent sequence numbers S2 and S3. When the high priority packet (S4) with the number S4 is normally received, a retransmission request for the first high priority packet (S1) is made when the next high priority packet (S4) is received. .
[0077]
In addition to the reception operation in the data reception apparatus 201 of the first embodiment, the data reception apparatus (reception side) 203 takes out the sequence number of another packet embedded in the received packet, If the packet is an error packet, a retransmission process is performed in which a packet retransmission request is made to the transmission side using the sequence number of the error packet.
[0078]
In the data transmission method according to the modification of the third embodiment having such a configuration, on the transmission side, the sequence number of a high priority packet having a priority level equal to or higher than a certain value is embedded in the subsequent packet following the high priority packet. The processing is continued until the transmission of the next high priority packet of the high priority packet, and the receiving side extracts the sequence number of another packet (high priority packet) embedded in the received packet, When a transmission error has occurred in the other packet, a retransmission request for the other packet is made by specifying its sequence number, so even if two consecutive packets become error packets, they become error packets. The sequence number of the high-priority packet can be detected from the header information of the succeeding packet successfully communicated. There can be a retransmission request when in error packet more reliably.
[0079]
In the third embodiment, the sequence number and priority information of each packet is embedded in the header of the next packet to be transmitted next to each packet. The sequence number of the priority packet is embedded in the subsequent packet until the next high priority packet is transmitted, but the information embedded in the subsequent packet is not limited to this, for example, the number of retransmissions May be embedded in the subsequent packet together with the sequence number.
[0080]
In this case, on the transmission side, information on the number of retransmissions is embedded in each packet together with the sequence number. On the receiving side, when instructing a retransmission request for an error packet, the transmitting side is instructed to pair the number of retransmissions corresponding to the error packet and the sequence number. Further, on the transmitting side, the data of the packet with the sequence number for which the retransmission request is instructed from the receiving side is held in the retransmission buffer, and the sequence number is equal to the packet for which the retransmission request is instructed. If the number of retransmissions matches between the packets whose data is stored in the retransmission buffer, the error packet requested to be retransmitted is retransmitted. Then, selective retransmission processing is performed to increment the number of retransmissions corresponding to the packet in the retransmission buffer that has been retransmitted.
A specific configuration example in which the number of retransmissions is embedded in the subsequent packet will be described below as a fourth embodiment.
[0081]
(Embodiment 4)
10 to 15 are diagrams for explaining a data transmission method according to the fourth embodiment of the present invention.
FIG. 10 is a block diagram showing a data transmission apparatus in a data transmission system that performs real-time data transmission by this data transmission method.
[0082]
In addition to the configuration of the data transmission apparatus 101 of the first embodiment, the data transmission apparatus 104 includes a sequence number and the number of retransmissions that have a priority higher than a predetermined value among the packets transmitted by the transmission unit 13. The sequence number retransmission count storage means 35 for storing the sequence number and the sequence number retransmission count for outputting the sequence number and the retransmission count stored in the storage means 35 to the transmission means 13a so as to be inserted into the header of the packet to be transmitted Means 34 and a retransmission number clearing means 38 that performs processing for clearing the number of retransmissions on the packet received by the receiving means 11 and outputs the packet to the transmission queue management means 12. The transmission means 13 a In addition to the function of the transmission means 13 of the first mode, the packet from the transmission queue management means 12 is displayed with the sequence number in its header. It is configured to transmit by inserting the sequence number and retransmission count from the input means 34.
[0083]
The data transmitting apparatus 104 receives the retransmission instruction received by the retransmission instruction receiving means 14, that is, the sequence number of the packet to be retransmitted and the number of retransmissions, via the reproduction feasibility determining means 16a, and the packet instructed for retransmission. Between the sequence number of the packet in the retransmission buffer 17 and the number of retransmissions of the packet instructed to retransmit, and the number of retransmissions of the packet in the retransmission buffer 17 having the sequence number instructed to retransmit A sequence number retransmission number comparison means 36 for comparison is provided.
[0084]
In this data transmitting apparatus 104, based on the output of the comparing means 36, the retransmission permission determination means 16a performs selective retransmission processing on the error packet when the sequence number of the last received packet is larger than the sequence number of the error packet. On the other hand, if the sequence number of the last received packet is smaller than the sequence number of the error packet, for the packet having a sequence number larger than the sequence number of the last received packet and less than or equal to the sequence number of the error packet, It is configured to determine whether retransmission is possible so that selective retransmission processing is performed. The retransmission buffer 17a is configured to output a packet to be retransmitted to the transmission queue management unit 12 based on the determination result of the retransmission permission determination unit 16a.
[0085]
The retransmission number increment means 37 in the data transmission device 104 increments the number of retransmissions of the packet in the retransmission buffer 17a determined to be retransmitted by the retransmission possibility determination means 16a.
Other configurations are the same as those of the data transmitting apparatus 101 of the first embodiment.
FIG. 11 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the fourth embodiment.
[0086]
The data receiving apparatus 204 of the fourth embodiment replaces the retransmission instruction sending means 26 of the data receiving apparatus 203 of the modification of the third embodiment with a retransmission instruction for a packet requesting retransmission, its sequence number and retransmission. This is provided with a retransmission instruction sending means 26a that uses information paired with the number of times.
Other configurations are the same as those of the data receiving apparatus 203 according to the modification of the third embodiment.
[0087]
Next, the function and effect will be described.
FIG. 12 is a sequence diagram for explaining packet selective retransmission control in the data transmission method of the fourth embodiment, and shows a first example of data exchange between the transmission side and the reception side. .
[0088]
In the state shown in FIG. 12, the high priority packet with the sequence number S1 has already been normally received on the receiving side. Hereinafter, a packet whose sequence number is Sn and whose number of retransmissions is N is represented as a packet (Sn, N) [n and N are natural numbers]. In the figure, packets with sequence numbers S1, S2, and S4 are high priority packets, and packets with sequence numbers S3 and S5 are packets other than high priority packets. Here, only the additional information of the high priority packet is embedded in the subsequent packet.
[0089]
First, as shown in FIG. 12, at a predetermined transmission timing, a high priority packet (S2, 1) next to the high priority packet (S1) has a sequence number S2 of this packet and the number of retransmissions 1 in its header. At the same time, the sequence number S1 and the number of retransmissions 1 of the high priority packet are embedded and retransmitted.
[0090]
At the next transmission timing, the packet (S3) next to the high priority packet (S2,1) has the sequence number S3 of the high priority packet (S2,1) together with the sequence number S3 of the packet in its header. And the number of retransmissions 1 is embedded and transmitted.
[0091]
At the next transmission timing, the next high priority packet (S4, 1) has the sequence number S2 of the high priority packet (S2, 1) together with the sequence number S4 of this packet and the number of retransmissions 1 in its header. In addition, retransmission is performed with the number of retransmissions 1 embedded.
[0092]
At the next transmission timing, the next packet (S5) is transmitted by embedding the sequence number S4 of the high priority packet (S4, 1) and the number of retransmissions 1 in the header together with the sequence number S5 of this packet. The
[0093]
Here, when four packet transmissions are completed as described above, a transmission error occurs during the first to third packet transmissions, and packets (S2, 1), (S3), and ( S4, 1) is not received on the receiving side, and only the packet (S5) is received.
[0094]
In this state, the receiving side knows that the last received high priority packet is of sequence number S1, and that the error packet is the first retransmission of sequence number S4. It is not known what packet is being transmitted between (S1) and packet (S5).
[0095]
Therefore, on the receiving side, a retransmission instruction for the high priority packet (S4, 1) is performed including the sequence number S1 of the last received high priority packet together with the sequence number S4 of the packet and the number of retransmissions 1.
[0096]
Then, the transmission side compares the sequence number S1 of the last received high priority packet with the sequence number S4 of the error packet for which a retransmission instruction has been issued. In this case, since the sequence number S1 of the last received high priority packet is smaller than the sequence number S4 of the error packet for which retransmission has been instructed, on the transmission side, the sequence greater than the sequence number S1 and less than or equal to the sequence number S4. A selective retransmission process is performed on a packet having a number.
[0097]
That is, in this case, the high-priority packet (S2, 2) is transmitted by embedding the sequence number S4 of the high-priority packet (S4, 1) and the number of retransmissions 1 in the header, and then the high-priority packet ( S4, 2) is transmitted with the sequence number S2 and the number of retransmissions 2 of the high priority packet (S2, 2) embedded in the header.
[0098]
Here, when the high-priority packet (S2, 2) is received, the receiving side finally received a retransmission instruction for the high-priority packet (S4, 1) together with its sequence number S4 and the number of retransmissions 1. This is performed on the transmission side including the sequence number S2 of the high priority packet (S2, 2). However, since the second retransmission is performed for the high priority packet (S4), the high priority packet ( No retransmission is performed in response to the retransmission instruction in S4, 1).
[0099]
Next, a case different from the example of data exchange shown in FIG. 12 is performed using the sequence diagram of FIG.
In the case shown in FIG. 13, data transmission and reception from the transmission of the high priority packet (S2, 1) to the transmission of the high priority packet (S2, 2) is the same as that shown in FIG.
[0100]
In the case shown in FIG. 13, the transmission of the high priority packet (S2, 2) is an error transmission, and the next high priority packet (S4, 2) is normally received.
In this case, the receiving side knows that the last received high priority packet is of sequence number S4 and the error packet is the second retransmission number of sequence number S2.
[0101]
Therefore, on the receiving side, a retransmission instruction for the high priority packet (S2, 2) is given including the sequence number S4 of the last received high priority packet together with the sequence number S2 and the number of retransmissions 2 of the packet.
[0102]
Then, the transmission side compares the sequence number S4 of the last received high priority packet with the sequence number S2 of the error packet for which a retransmission instruction has been issued. In this case, since the sequence number S4 of the last received high priority packet is larger than the sequence number S2 of the error packet for which retransmission has been instructed, the transmission side performs selective retransmission processing only for the error packet.
[0103]
That is, in this case, the high priority packet (S2, 3) is transmitted with the sequence number S4 and the number of retransmissions 2 of the high priority packet (S4, 2) embedded in the header.
[0104]
Next, a case different from the data exchange example shown in FIGS. 12 and 13 is performed using the sequence diagram of FIG.
First, as shown in FIG. 14, at a predetermined transmission timing, a high-priority packet (S4, 1) is transmitted with a sequence number S4 of this packet and the number of retransmissions 1 in its header before this packet. The priority packet (S2, 1) is retransmitted with the sequence number S2 and the number of retransmissions 1 embedded.
[0105]
At the next transmission timing, the next packet (S5) is transmitted by embedding the sequence number S4 of the high priority packet (S4, 1) and the number of retransmissions 1 in the header together with the sequence number S5 of this packet. The
[0106]
Here, when the two packet transmissions are completed as described above, a transmission error occurs during the first packet transmission, and the packet (S4, 1) is not received by the receiving side, and the packet (S5) Has only been received.
[0107]
In this state, the receiving side knows that the last received high priority packet is the one with the sequence number S1, and the error packet is the first retransmission number of the sequence number S4.
[0108]
Therefore, on the receiving side, a retransmission instruction for the high priority packet (S4, 1) is performed including the sequence number S1 of the last received high priority packet together with the sequence number S4 of the packet and the number of retransmissions 1.
[0109]
Then, the transmission side compares the sequence number S1 of the last received high priority packet with the sequence number S4 of the error packet for which a retransmission instruction has been issued. In this case, since the sequence number S1 of the last received high priority packet is smaller than the sequence number S4 of the error packet for which retransmission has been instructed, on the transmission side, the sequence greater than the sequence number S1 and less than or equal to the sequence number S4. A selective retransmission process is performed on a packet having a number.
[0110]
That is, in this case, the high priority packet (S2, 2) includes the sequence number S2 and the number of retransmissions 2 of the packet (S2, 2) in the header, the sequence number S4 of the high priority packet (S4, 1), and The high-priority packet (S4, 2) is transmitted with the number of retransmissions 1 embedded therein, followed by the sequence number S4 of the high-priority packet (S4, 2) and the number of retransmissions 2 in the header, and the high-priority packet. The sequence number S2 and the number of retransmissions 2 of (S2, 2) are embedded and transmitted.
[0111]
Thereafter, a packet with a sequence number S6 is transmitted with the sequence number S6 of this packet, the sequence number S4 of the high priority packet (S4, 2) and the number of retransmissions 2 embedded in the header.
[0112]
At this time, the transmission of the high priority packets (S2, 2) and (S4, 2) is an error transmission, and is not received on the receiving side, but only the packet (S6) is received.
In this state, the receiving side knows that the last received high priority packet is the one with the sequence number S1, and the error packet is the second retransmission number of the sequence number S4.
[0113]
Therefore, on the receiving side, a retransmission instruction for the high priority packet (S4, 2) is performed including the sequence number S1 of the last received high priority packet together with the sequence number S4 of the packet and the number of retransmissions 2.
[0114]
Then, the transmission side compares the sequence number S1 of the last received high priority packet with the sequence number S4 of the error packet for which a retransmission instruction has been issued. In this case, since the sequence number S1 of the last received high priority packet is smaller than the sequence number S4 of the error packet for which retransmission has been instructed, the transmission side has a sequence greater than the sequence number S1 and less than or equal to the sequence number S4. A selective retransmission process is performed on a packet having a number.
[0115]
That is, in this case, the high priority packet (S2, 3) embeds the sequence number S2 and the number of retransmissions 3 of this packet and the sequence number S4 and the number of retransmissions 2 of the high priority packet (S4, 2) in its header. Then, the high priority packet (S4, 3) has its sequence number S4 and the number of retransmissions 3 in its header, and the sequence number S2 and the number of retransmissions 3 of the high priority packet (S2, 3). Embedded and sent.
[0116]
As described above, in the fourth embodiment, on the transmission side, when the sequence number of the last received high priority packet is larger than the sequence number of the error packet, only the error packet is retransmitted. Can be retransmitted.
[0117]
In the fourth embodiment, the case where there is one data receiving device for one data transmitting device has been described. However, in broadcast communication (multicast) in which there are a plurality of data receiving devices for one data transmitting device, The selective retransmission process according to the fourth embodiment can be applied. Hereinafter, such a multicast process will be described as a modification of the fourth embodiment.
[0118]
(Modification of Embodiment 4)
FIG. 15 is a sequence diagram for explaining a data transmission method according to a modification of the fourth embodiment. The selective retransmission process of the fourth embodiment in the case where there are a plurality of data receiving apparatuses for one data transmitting apparatus. An example is shown.
[0119]
First, as shown in FIG. 15, at a predetermined transmission timing, a high priority packet (S 1, 1) includes, in its header, the sequence number S 2 of this packet and the number of retransmissions 1 of the high priority packet before this packet. The sequence number and the number of retransmissions are embedded and retransmitted. Here, there are two reception sides with respect to the transmission side, that is, reception side I and reception side II, and transmission of the high priority packet (S1, 1) is error transmission.
[0120]
In this case, each receiving side makes a retransmission request for the high priority packet (S1, 1) including the sequence number (lastS) of the last received high priority packet.
At this time, the transmission side performs retransmission of the high priority packet (S1, 2) in response to the retransmission request from the reception side I, and responds to the retransmission instruction of the reception side II arriving at the transmission side after this retransmission. Will not be retransmitted. This is because the high-priority packet (S1, 2) has already been retransmitted in response to the retransmission instruction from the receiving side I.
[0121]
Then, by the retransmission of the high priority packet (S1, 2), the receiving side I receives the high priority packet (S1), while the receiving side II does not receive the high priority packet (S1).
In this case, the receiving side II issues an instruction to retransmit the high priority packet (S1, 2). In response to this, the transmission side increments the number of transmissions and retransmits the high priority packet (S1, 3).
In the fourth embodiment and its modification, an upper limit may be set for the number of retransmissions, and the upper limit for the number of retransmissions for the packet may be changed depending on the priority value of the packet.
[0122]
(Embodiment 5)
16 and 17 are diagrams for explaining a data transmission method according to the fifth embodiment of the present invention.
The data transmission method according to the fifth embodiment is the same as the data transmission method according to the first embodiment. The receiving side detects the missing sequence number, and the sending side omits the retransmission instruction of the packet with the missing sequence number. When the packet having the sequence number instructed to be retransmitted from the receiving side is held in the retransmission buffer 17, the transmitting side performs retransmission. On the transmission side, only high priority packets with high priority are stored in the retransmission buffer.
[0123]
FIG. 16 is a block diagram showing a data transmission device (FIG. (A)) and a data reception device (FIG. (B)) in a data transmission system that performs real-time data transmission by this data transmission method.
[0124]
The data transmission device 105 has the same configuration as the data transmission device 101 of the first embodiment. Similarly to the data receiving apparatus 201 of the first embodiment, the data receiving apparatus 205 receives a packet transmitted from the relay server (data transmitting apparatus on the transmitting side), and outputs to the receiving means 21. On the basis of this, an error packet in which an error has occurred during transmission is detected, an error packet detection means 22 for outputting a normal packet transmitted normally, and the normal packet received, and the encoded data of the packet is decoded. Packet decoding means 23 and reception history management means 24 for managing packet reception history are provided.
[0125]
The data receiving apparatus 205 of the fifth embodiment corresponds to the missing sequence number detected by the error packet detecting means 22 instead of the retransmission instruction sending means 26 of the data receiving apparatus 201 of the first embodiment. Retransmission instruction sending means 26b for sending a packet retransmission instruction to the transmission side is provided.
[0126]
Next, the function and effect will be described.
FIG. 17 is a sequence diagram for explaining packet selective retransmission control in the data transmission method of the fifth embodiment.
When the high-priority packet (S1) with the sequence number S1 sent from the data transmission device (transmission side) 105 is not received by the data reception device (reception side) 205 due to a transmission error, the data reception device 205 receives an error packet. The detecting means 22 detects that the sequence number S1 is missing, and a retransmission instruction for the packet with the sequence number S1 is given to the transmission side.
[0127]
On the transmission side, it is determined whether or not the packet for which retransmission has been instructed is stored in the retransmission buffer 17. In this case, the packet for which retransmission has been instructed is a high priority packet and is stored in the retransmission buffer 17. Therefore, the transmission side retransmits the packet for which a retransmission instruction has been given.
[0128]
Further, when the packet (S2) with the sequence number S2 sent from the data transmission device (transmission side) 105 is not received by the data reception device (reception side) 205 due to a transmission error, the data reception device 205 detects an error packet. The means 22 detects that the sequence number S2 is missing, and instructs the transmission side to retransmit the packet with the sequence number S2.
[0129]
On the transmission side, it is determined whether or not the packet for which retransmission has been instructed is stored in the retransmission buffer 17. In this case, the packet for which retransmission has been instructed is not stored in the retransmission buffer 17 because it is not a high priority packet. Therefore, the transmission side does not retransmit a packet for which a retransmission instruction has been issued.
[0130]
As described above, in the fifth embodiment, the receiving side detects the missing sequence number, and instructs the transmitting side to retransmit the packet of the missing sequence number with the missing sequence number. If the packet with the sequence number instructed to be retransmitted from the side is held in the retransmission buffer, it is retransmitted, so the transmission quality of the radio section in real-time transmission can be improved and the number of retransmissions can be reduced. can do.
[0131]
(Embodiment 6)
18 to 20 are diagrams for explaining a data transmission method according to the sixth embodiment of the present invention.
In the data transmission method according to the sixth embodiment, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and data reproduction time. This is a data transmission method for sequentially reproducing data of packets received on the receiving side, and retransmitting only packets that meet the packet arrival time limit on the receiving side.
[0132]
FIG. 18 is a block diagram showing a data transmission apparatus in a data transmission system that performs real-time data transmission by this data transmission method.
This data transmission device 106 constitutes a relay server (transmission side) that relays transmission data between the distribution server and the terminal (reception side), and in addition to the configuration of the data transmission device 101 of the first embodiment. The transmission means 13b includes a reproduction time determination unit 39 that determines a packet that is not in time for the reproduction time on the receiving side, and the transmission unit 13b retransmits the packet determined by the reproduction time determination unit 39. Regardless of whether or not the data is stored in the buffer 17, the data is not transmitted to the receiving side.
[0133]
Other configurations are the same as those of the data transmitting apparatus 101 of the first embodiment.
FIG. 19 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the sixth embodiment. The data reception device 206 replaces the packet priority determination unit 25 of the data reception device 201 of the first embodiment with the reproduction time given to the error packet detected by the error packet detection unit 22 and the error packet. Reproduction time determination means 43 is provided for detecting the arrival time at the receiving side, determining the arrival time limit based on the reproduction time, and determining whether the arrival time has arrived before the arrival time limit, and a retransmission instruction Based on the determination result, the sending means 26 instructs the sending side to send a retransmission request only for the error packet that has arrived at the receiving side before the arrival time limit using its sequence number. . The arrival time limit in the reproduction time determination unit 43 is determined based on at least one of a packet allowable delay time determined on the reception side and a packet transmission delay time between the transmission side and the reception side. .
[0134]
Other configurations are the same as those of the data receiving apparatus 201 of the first embodiment.
The method for determining the arrival time limit in the sixth embodiment will be described in detail in the eighth embodiment.
[0135]
Next, the function and effect will be described.
FIG. 20 is a sequence diagram for explaining packet retransmission control with a time limit in the data transmission method of the sixth embodiment.
In the data transmission device (transmission side) 106, a reproduction time on the reception side is given to each transmission packet.
[0136]
For example, the high priority packets (S1) and (S2) with the sequence numbers S1 and S2 sent from the data transmission device (transmission side) 106 are not normally received by the data reception device (reception side) 206 due to a transmission error. In this case, in the data reception device 206, the error packet detection unit 22 determines that the high priority packets (S1) and (S2) are error packets. Also, the reproduction time determination means 43 detects the reproduction times (T1) and (T2) and arrival times of the error packets, and determines arrival limit times (T1 + α) and (T2 + α) based on the reproduction times. It is determined whether or not the receiver has arrived before the time limit.
[0137]
For the high-priority packet (S1) that has arrived at the receiving side before the arrival time limit, the receiving side issues a retransmission instruction to the transmitting side using this packet as an error packet.
On the other hand, for the high priority packet (S2) that does not arrive at the receiving side before the arrival limit time, the receiving side does not give a retransmission instruction to the transmitting side for this packet.
[0138]
At this time, in the data transmitting apparatus 106, when the data of the packet having the sequence number for which the retransmission request is instructed from the receiving side is held in the retransmission buffer, the transmission time does not pass the reproduction time. If the packet data is retransmitted to the receiving side, while the packet data whose transmission time exceeds the playback time, it is discarded without being transmitted, and the data in the retransmission buffer is not transferred to the data on the receiving side. Packets that are no longer in time for playback are discarded in order.
[0139]
As described above, in the sixth embodiment, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and reproduction time on the data reception side. In this case, the packet data received on the receiving side is reproduced in sequence, and only the packets that meet the packet arrival time limit on the receiving side are retransmitted. And the number of retransmissions can be reduced.
[0140]
In the sixth embodiment, the method for recovering an error when there is an error in the packet data has been described. However, there is an error in the additional information added to the packet header, that is, the sequence number and the reproduction time. In some cases, as a method of recovering these additional information in addition to the recovery of the data error, various modified examples can be considered, and these modified examples will be described below.
[0141]
(Modification 1 of Embodiment 6)
In the first modification of the sixth embodiment, in addition to the processing on the transmission side and the reception side in the data transmission method of the sixth embodiment, on the transmission side, an error correction code for the sequence number and the reproduction time is added to the transmission packet. On the receiving side, the error correction code is used to correct the sequence number and the reproduction time, and then the retransmission control of the error packet is performed based on the determined arrival limit time.
In the first modification of the sixth embodiment having such a configuration, it is possible to correct these additional information even when there is an error in the sequence number or reproduction time of the error packet.
[0142]
(Modification 2 of Embodiment 6)
In the second modification of the sixth embodiment, in addition to the processing on the transmission side and the reception side in the data transmission method of the sixth embodiment, on the transmission side, the sequence number and reproduction time of a predetermined packet are Embedded in the next packet transmitted to the receiver, the receiving side extracts the sequence number and playback time information of the previous packet embedded at the time of receiving the next packet, and based on this information, An arrival limit time is determined, and retransmission control is performed with a predetermined packet as an error packet.
[0143]
FIG. 21 is a sequence diagram for explaining retransmission control with a time limit of packet data in the data communication system according to the second modification of the sixth embodiment.
On the transmission side, the sequence number and the reproduction time on the reception side are given to a predetermined packet, and the sequence number and reproduction of the previous predetermined packet are also transmitted to the next packet transmitted next to the predetermined packet. Time is embedded.
[0144]
Thereafter, as shown in FIG. 21, for example, packets (S1) and (S2) with sequence numbers S1 and S2 are transmitted from the transmission side, and the packet (S1) is not normally received on the reception side due to a transmission error. If the packet (S2) is normally received on the receiving side, the receiving side knows the sequence number S1 and the reproduction time (T1) of the packet (S1) before the packet (S2).
[0145]
Therefore, on the receiving side, the arrival limit time (T1 + α) is determined based on the reproduction time (T1) of the error packet (S1). At this time, a retransmission instruction is given and whether or not the retransmission packet can be received within the arrival limit time. Is determined. In this case, if the packet (S1) is instructed to be retransmitted when the packet (S2) is received, the packet (S1) may arrive at the receiving side before the time limit. The retransmission instruction in S1) is made to the transmission side.
[0146]
Thereafter, as shown in FIG. 21, for example, packets (S3) and (S4) with sequence numbers S3 and S4 are transmitted from the transmission side, and the packet (S3) is not normally received on the reception side due to a transmission error. If the packet (S4) is normally received on the receiving side, the receiving side knows the sequence number S3 and the reproduction time (T3) of the packet (S3) before the packet (S4).
[0147]
Therefore, the reception side determines the arrival time limit (T3 + α) based on the reproduction time (T3) of the error packet (S3), and determines whether or not the arrival side arrives before the arrival time limit. In this case, since the packet (S3) has not arrived at the receiving side before the arrival limit time, the retransmission instruction of the packet (S3) from the receiving side to the transmitting side is not performed.
[0148]
In the second modification of the sixth embodiment having such a configuration, the transmission side embeds the sequence number and reproduction time of a predetermined packet in the next packet transmitted next to the predetermined packet. Even if an error occurs not only in the packet data but also in the sequence number and playback time due to a transmission error, it is possible to request retransmission of the error packet, and a packet retransmission instruction not in time for the playback time on the receiving side is Since this is not performed, the number of retransmissions can be reduced.
[0149]
As another modification, a combination of the selective retransmission control of the first to fifth embodiments and these modifications and the retransmission control with a time limit of the sixth embodiment and its modifications is also conceivable.
[0150]
For example, a combination of Embodiment 2 in which an error correction code for a sequence number and priority information is assigned to a packet, and Modification 1 of Embodiment 6 in which an error correction code for a sequence number and reproduction time is assigned to a packet ( A first combination example) is conceivable. With this combination, a sequence number, priority information, and an error correction code for the reproduction time are added to the packet.
[0151]
Further, Embodiment 3 in which a sequence number and priority information of a predetermined packet is embedded in a packet subsequent to a predetermined packet to be transmitted, and a sequence of the predetermined packet in a packet subsequent to the predetermined packet to be transmitted A combination (second combination example) of Modification 2 of Embodiment 6 in which the number and the reproduction time are embedded is conceivable.
[0152]
With this combination, the sequence number, priority information, and reproduction time of the predetermined packet are embedded in the packet next to the predetermined packet to be transmitted.
[0153]
Further, a modification of the third embodiment in which processing for embedding the sequence number and priority information of a high priority packet to be transmitted in subsequent packets is performed until transmission of the next high priority packet, and a predetermined packet to be transmitted A combination (third combination example) of the second modification of the sixth embodiment in which the sequence number and reproduction time of the predetermined packet are embedded in the next packet is conceivable.
[0154]
With this combination, the process of embedding the sequence number, priority information, and reproduction time of the high priority packet in the subsequent packet is performed until the next high priority packet is transmitted.
[0155]
Further, in the combination of selective retransmission control and retransmission control with time limit as in the second and third combination examples described above, the amount of information embedded in the packet increases, so the header information (sequence number, sequence number, The method of embedding the difference between the priority information and the reproduction time) and the header information of the subsequent packet to be embedded in the subsequent packet is effective.
Hereinafter, such a configuration example will be described as a third modification of the sixth embodiment.
[0156]
(Modification 3 of Embodiment 6)
FIG. 22 is a sequence diagram for explaining retransmission control with a time limit for a packet in the data transmission method according to the third modification of the sixth embodiment.
On the transmitting side, the packet transmitted next to the predetermined packet is embedded with the sequence number and reproduction time of this packet, and difference information regarding the sequence number and reproduction time of the predetermined packet transmitted before this packet. . This difference information is a difference between the sequence number of a predetermined packet and the sequence number of the next packet (sequence difference), and a difference between the playback time of the predetermined packet and the playback time of the next packet (time difference).
[0157]
For example, as shown in FIG. 22, even when packets (S1) and (S2) with sequence numbers S1 and S2 are transmitted from the transmission side and the packet (S1) is not normally received on the reception side due to a transmission error, If (S2) is normally received on the receiving side, the receiving side knows the sequence number S1 and the reproduction time (T1) of the packet (S1) before the packet (S2).
[0158]
That is, the sequence number S1 of the packet (S1) can be obtained by subtracting the sequence difference (S2-S1) from the sequence number S2 of the packet (S2). Further, the reproduction time (T1) of the packet (S1) can be obtained by subtracting the time difference (T2−T1) from the reproduction time (T2) of the packet (S2).
[0159]
Therefore, the reception side determines the arrival time limit (T1 + α) based on the reproduction time (T1) of the error packet (S1), and determines whether or not the arrival side arrives before the arrival time limit. For example, if the packet (S1) has arrived at the receiving side before the arrival time limit, the receiving side issues a retransmission instruction for the packet (S1) to the transmitting side with the sequence number S1.
[0160]
In the third modification of the sixth embodiment having such a configuration, the difference between the header information (sequence number, priority information, reproduction time) of a predetermined packet and the header information of the subsequent packet to be embedded is determined as the subsequent packet. Therefore, the amount of information embedded in the packet can be reduced.
[0161]
In the third modification of the sixth embodiment, the sequence number and the reproduction time are shown as information to be embedded in the packet. However, the information to be embedded is not limited to these. For example, in addition to the sequence number and the reproduction time, retransmission is performed. The number of times and priority may be embedded.
Next, an embodiment related to an application section of retransmission control in the data transmission method of each embodiment described above will be described.
[0162]
(Embodiment 7)
The data transmission method according to the seventh embodiment performs data transmission between the distribution server and the terminal in units of packets via the relay server, and the data transmission method for sequentially reproducing the received packet data on the terminal side When a transmission error occurs between the relay server and the terminal, the relay server retransmits the error packet based on the retransmission instruction from the terminal, and a transmission error occurs between the distribution server and the relay server. Then, based on the retransmission instruction transmitted from the terminal via the relay server, the distribution server retransmits the error packet based on the retransmission instruction from the terminal.
[0163]
FIG. 23 is a diagram for explaining a data transmission method according to the seventh embodiment of the present invention, and shows a configuration of a data transmission apparatus in a system that performs data transmission by the data transmission method.
[0164]
This data transmission device 107 constitutes a relay server (transmission side) that relays transmission data between the distribution server and the terminal (reception side). In addition to the configuration of the data transmission device 101 of the first embodiment, In addition, based on the determination result in the retransmission permission determination unit 16, a retransmission instruction transmission unit 51 that makes a retransmission request of an error packet for which a retransmission instruction has been received from the terminal to the distribution server is provided. Is the same as the data transmission apparatus 101 of the first embodiment.
[0165]
Next, the function and effect will be described.
In the seventh embodiment having such a configuration, the data transmission device 107 relays data between the distribution server and the terminal when data transmission between the distribution server and the terminal is performed in units of packets.
[0166]
When a transmission error occurs between the relay server that is the data transmission device and the terminal, the relay server retransmits the error packet. In this case, the retransmission instruction for the error packet from the terminal is not relayed to the distribution server.
[0167]
Further, when a transmission error occurs between the distribution server and the relay server as the data transmission device, an error packet retransmission instruction from the terminal is transmitted to the distribution server, and the error packet retransmitted from the distribution server is transmitted to the data transmission device. It is relayed by 107 and transmitted to the terminal side.
[0168]
In Embodiment 7 having such a configuration, when a transmission error occurs between a relay server that is a data transmission device and a terminal, the retransmission instruction for the error packet from the terminal is not relayed to the distribution server, Since the error packet is retransmitted by the relay server, the number of retransmissions between the distribution server and the relay server can be reduced.
[0169]
(Modification of Embodiment 7)
The modification of the seventh embodiment is a data transmission method for performing data transmission between the distribution server and the terminal in units of packets via the relay server, and the terminal side sequentially reproduces the received packet data. When a transmission error occurs between the distribution server and the relay server, the error packet is not transmitted to the terminal, but a retransmission instruction is transmitted from the relay server to the distribution server, and the error packet is transmitted from the distribution server to the relay server. Is retransmitted.
[0170]
FIG. 24 is a block diagram showing a data transmission apparatus in a data communication system according to a modification of the seventh embodiment.
The data transmission device 107a of the modification of the seventh embodiment constitutes a relay server (transmission side) that relays transmission data between the distribution server and the terminal (reception side). In addition to the configuration of the transmitting apparatus 101, based on the output of the receiving means 11 that receives a packet from the distribution server, it is determined whether or not the received packet is an error packet, and a normally received packet is output. Error packet determination means 22, reception history management means 52 for managing the history of normally received packets, determination result at retransmission possibility determination means 16, detection result at error packet detection means 22, and reception history management means Based on the contents of the reception history in 52, a retransmission instruction transmission means 51a for performing an error packet retransmission instruction to the distribution server There, other configurations are identical to the data transmission apparatus 101 of the first embodiment.
[0171]
Next, the function and effect will be described.
In the modification of the seventh embodiment having such a configuration, the data transmission device 107a relays data between the distribution server and the terminal when data transmission between the distribution server and the terminal is performed in units of packets. Done.
[0172]
When a transmission error occurs between the relay server that is the data transmission device and the terminal, the relay server retransmits the error packet. In this case, the retransmission instruction for the error packet from the terminal is not relayed to the distribution server.
[0173]
If a transmission error occurs between the distribution server and the relay server that is the data transmission device, the error packet is not transmitted to the terminal, but a retransmission instruction is transmitted from the relay server to the distribution server. The error packet is retransmitted to the relay server.
Then, the error packet retransmitted from the distribution server is transmitted from the relay server to the terminal.
[0174]
In the modification of the seventh embodiment having such a configuration, when a transmission error occurs between the distribution server and the relay server, the error packet is not transmitted to the terminal, but the retransmission instruction is sent from the relay server to the distribution server. Since the error packet is transmitted and the error packet is retransmitted from the distribution server to the relay server, there is an effect that unnecessary transmission of the error packet from the relay server to the terminal is avoided.
[0175]
(Embodiment 8)
25 to 27 are diagrams for explaining a data transmission method according to the eighth embodiment of the present invention.
In this data transmission method, data is transmitted between the distribution server and the terminal in units of packets, and the terminal side reproduces data on the terminal side in a data transmission method for sequentially reproducing the received packet data. The information of the reproduction delay time that is allowable with respect to time is transmitted from the terminal side to the distribution server, and the distribution server is based on the reproduction delay time and the transmission delay time required for data transmission between the distribution server and the terminal. The playback time on the terminal is estimated.
[0176]
FIG. 25 is a block diagram showing a data transmitting apparatus in the data communication system according to the eighth embodiment of the present invention.
The data transmission device 108 constitutes a relay server (transmission side) that relays transmission data between the distribution server and the terminal (reception side), and a receiving unit 11 that receives a packet transmitted from the distribution server. Transmission queue management means 12 for setting the transmission order of received packets based on additional information such as a sequence number assigned to each packet, and transmission for transmitting the packets in the transmission order set by the means 12 Means 13.
[0177]
The data transmitting apparatus 108 includes a time stamp extracting means 75 for extracting a time stamp as time information given to each packet via the transmitting means 13, and an allowable reproduction delay time from the receiving side (terminal). And an allowable reproduction delay information receiving means 72 for receiving information on (arrival time limit).
[0178]
Further, the data transmission device 108 includes transmission delay measurement packet transmission / reception means 71 for transmitting and receiving a packet for measuring a transmission delay (transmission delay measurement packet), and the transmission delay measurement packet between the transmission side and the reception side. Transmission delay measuring means 73 for measuring the transmission delay based on the time required for reciprocation.
[0179]
Further, the data transmission method 108 estimates a reproduction time of data on the receiving side based on the transmission delay, time stamp, and allowable reproduction delay time (arrival limit time), and outputs an estimated reproduction time. Calculation means 74 is provided.
[0180]
Although not shown, this data transmitting apparatus 108 stores packets having a priority level equal to or higher than a predetermined value in the retransmission buffer, as well as the data transmitting apparatus of the first or sixth embodiment, and at the retransmission time. It has a function of discarding packets that are not in time, and a function of resending packets that have been instructed to be retransmitted from the receiving side.
[0181]
Specifically, this data transmission apparatus 108 is the same as the data transmission apparatus 101 of the first embodiment, in the retransmission instruction reception means 14, the packet priority determination means 15, the retransmission permission determination means 16, the retransmission buffer 17, and the retransmission buffer. The transmission queue management unit 12 has a configuration corresponding to the buffer management unit 18, and the transmission queue management unit 12 sets the packet transmission order for all transmitted packets including not only received packets but also retransmission packets. It is configured to do.
[0182]
FIG. 26 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the eighth embodiment. The data reception device 208 includes a reception unit 21 that receives a packet transmitted from a relay server (transmission side data transmission device), and a packet decoding unit 23 that performs a decoding process on the received packet. is doing.
[0183]
Further, the data receiving device 208 receives the transmission delay measurement packet transmitted from the transmission-side transmission delay measurement packet transmission / reception means 71 and sends back the transmission delay measurement packet transmission / reception means 62 to the transmission side, and the allowable reproduction delay time. It has an allowable reproduction delay determining means 63 for determining and outputting information relating thereto, and an allowable reproduction delay information transmitting means 61 for transmitting information relating to the allowable reproduction delay time to the transmitting side.
[0184]
Although not shown, data receiving apparatus 208 has a function of detecting an error packet and issuing a retransmission instruction to the transmitting side in time for the retransmission time, as in the data receiving apparatuses of the first and sixth embodiments. have.
[0185]
Specifically, this data reception device 208 corresponds to error packet detection means 22, reception history management means 24, packet priority determination means 25, and retransmission instruction transmission means 26 in data transmission reception 201 of the first embodiment. It has the composition to do.
[0186]
Next, the function and effect will be described.
[0187]
FIG. 27 is a diagram for explaining a method of estimating the data reproduction time at the terminal in the server in the eighth embodiment, and the relationship between the packet time stamp and the packet output time (reproduction time), etc. (a)) and a method (FIG. (b)) for mapping a time stamp to a standard time.
[0188]
In the data transmission device (transmission side) 108, when the transmission unit 13 transmits packets based on the transmission order set by the transmission queue management unit 12, the time stamp tp included in each packet is a time. Extracted by the stamp extracting means 75 and output to the reproduction time calculating means 74. Also, the information on the allowable reproduction delay time dp determined by the determining means 63 of the data receiving device (receiving side) 208 and transmitted by the transmission means 61 is received by the allowable reproduction delay information receiving means 72, and the reproduction time calculating means is received. 74 is output. Further, transmission delay measurement packet transmission from the transmission-side transmission delay measurement packet transmission / reception means 71 to the reception-side transmission delay measurement packet transmission / reception means 62 and transmission from the reception-side transmission / reception means 62 to the transmission-side transmission / reception means 72 are performed. The delay measurement packet is returned, and the transmission delay measuring means 73 obtains the server-terminal transmission delay ds and outputs it to the reproduction time calculating means 74. At this time, the server transmission time of each packet is measured on the transmission side.
[0189]
Then, the reproduction time calculation means 74 estimates the reproduction time (packet output time) to of each packet on the receiving side.
That is, as shown in FIG. 27A, the packet output time to is obtained by adding the allowable reproduction delay time dp to the time stamp tp, and the server-terminal transmission delay ds is added to the server transmission time ts. Is the terminal reception time tr. Therefore, the reproduction time calculation means 74 obtains the packet output time to by (tp + dp) and obtains the terminal reception time tr by (ts + ds).
[0190]
In the data transmitting apparatus 108, based on the magnitude relation between (ts + ds) and (tp + dp), whether or not the transmission packet is in time for the reproduction time, that is, whether the terminal reception time tr ≦ the packet output time to is satisfied. A determination is made whether or not. Based on the determination result, retransmission of the error packet instructed to be retransmitted, discard of the packet in the retransmission buffer, and the like are performed.
[0191]
In the above description, the reproduction delay dp is transmitted from the receiving terminal to the server side, but this may be a constant value. In the eighth embodiment, time synchronization between the server and the terminal is performed by, for example, the Internet standard NTP (Network Time Protocol).
[0192]
Further, the time stamp tp of each packet is obtained from the time stamp of the RTP header, but this time stamp value needs to be mapped on the same time axis as the server transmission time or the like.
[0193]
A method for mapping RTP time stamps in the relay server will be briefly described below.
Since the RTP time stamp is not directly expressed in standard time, it is based on the standard time using information contained in other standard protocols RTCP (Real-Time Control Protocol) and RTSP (Real-Time Stream Protocol). Mapped to time information. The relay server (data transmission device) 108 needs to know information for this mapping, and acquires information for this mapping (mapping information) during the relay.
[0194]
For example, as shown in FIG. 27 (b), when relaying the time stamp mapping information included in the Internet standard protocols RTCP and RTSP transmitted from the server S by the relay server IS and transmitting them to the terminal T, the relay The server IS analyzes the mapping information. Further, the terminal communicates the time stamp mapping information at the terminal to the relay server.
[0195]
As described above, in the eighth embodiment, since the actual output time (reproduction time) at the terminal of the packet is estimated by the server (data transmission apparatus), packets that do not meet the reproduction time are excluded from the retransmission buffer. Can do.
[0196]
In the eighth embodiment, the method of determining the transmission delay time and the allowable reproduction delay time is not limited to that in the eighth embodiment. For example, during the data reproduction on the receiving side, the server and the terminal The transmission delay may be dynamically updated according to information from the receiving side, and the allowable reproduction delay may be measured and dynamically changed during data reproduction on the receiving side. It may be.
[0197]
In the eighth embodiment, the method of estimating the actual output time (reproduction time) of the packet at the terminal by the relay server (data transmission apparatus) has been described. The reproduction server may be estimated based on an allowable reproduction delay time from the terminal or a transmission delay time required for data transmission between the distribution server and the terminal.
[0198]
(Embodiment 9)
29 to 31 are diagrams for explaining a data transmission method according to the ninth embodiment of the present invention. The data transmission method according to the ninth embodiment relates to a sequence number, a priority, and a reproduction time on the data receiving side necessary for realizing real-time packet-based data transmission from the transmitting side to the receiving side. A data transmission method for retransmitting only error packets whose priority is equal to or higher than a certain value while sequentially reproducing the packet data received on the receiving side while holding additional information in packets and transmitting continuously. is there.
[0199]
FIG. 29A is a block diagram showing a data transmission apparatus in a data transmission system that performs real-time data transmission by this data transmission method.
The data transmission device 109 constitutes a relay server (transmission side) that relays transmission data between the distribution server and the terminal (reception side). The data transmitting apparatus 109 sets the receiving means 11 for receiving the packet transmitted from the distribution server, and the transmission order of the received packet and the packet determined to be retransmitted (retransmitted packet) based on the additional information. And a transmission means 13 for transmitting the packet data in the transmission order set by the transmission queue management means 12.
[0200]
In addition, the data transmission device 109 has a sequence number (high priority sequence number) corresponding to only the high priority packet when the priority is a predetermined value or higher among the packets transmitted by the transmission means 13. ), The high priority sequence number management means 81 that increments and stores the value, the sequence number value of the transmitted high priority packet, the incremented high priority sequence number value of this high priority packet, The sequence number correspondence managing means 82 for storing the correspondence relationship between the high priority sequence numbers stored in the high priority sequence number managing means 81 is inserted into the transmitted packet. As described above, a high priority sequence number inserting unit 83 for outputting to the transmitting unit 13 is provided.
[0201]
Here, the high priority sequence number managed by the high priority sequence number management means 81 corresponds to the number of high priority packets transmitted from the transmission side.
[0202]
Further, the data transmission device 109 includes a retransmission buffer 17 for storing a predetermined one of the received packets as a retransmission packet, a packet priority determination means 15 for determining the priority of the received packet, and the determined packet And a retransmission buffer management means 18 for controlling the retransmission buffer 17 so that the data of the packet whose priority is equal to or higher than a predetermined value is stored in the retransmission buffer 17 based on the priorities.
[0203]
Further, the data transmitting apparatus 109 and the retransmission instruction receiving means 14 for receiving the retransmission request accompanied by the instruction of the high priority sequence number from the receiving side terminal and whether or not to retransmit the packet having the retransmission request. Re-transmission permission / inhibition determining means 16c. Here, the retransmission possibility determination means 16c searches the management information in the sequence number correspondence management means 82 based on the high priority sequence number instructed at the time of the retransmission request, and at the time of the retransmission request. A sequence number corresponding to the instructed high priority sequence number is obtained, and whether or not to retransmit the packet instructed to be retransmitted is determined depending on whether or not the packet with the sequence number is stored in the retransmission buffer 17 It is the composition which performs.
[0204]
In FIG. 29 (a), a case has been described in which packet data is transmitted in real time between a distribution server and a terminal via a relay server or the like, and the data transmission apparatus forms a relay server. The server may also function as a distribution server. That is, when the data transmission apparatus constitutes a distribution server, the data transmission apparatus 109 encodes the data by encoding the reception unit 11 in the data transmission apparatus 109 as shown in FIG. 29 (b). A configuration in which the data is replaced with an encoded packet generation unit 10a that outputs data in units of packets, and a priority assignment unit 10b that gives additional information such as priority to each packet output from the encoded packet generation unit 10a; Become.
[0205]
FIG. 30 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the ninth embodiment. The data reception device 209 receives a packet transmitted from the data transmission device on the transmission side, and detects a packet in which an error has occurred during transmission based on the output of the reception unit 21 and Error packet detection means 22a for outputting a normal packet transmitted to the packet, and packet decoding means 23 for receiving the normal packet and decoding the encoded data of the packet.
[0206]
Here, when the high-priority sequence number (transmission-side high priority sequence number) inserted in the packet from the data transmission apparatus 109 is correctly extracted, the error packet detection unit 22a transmits the transmission-side high priority. The sequence number value and the receiving side high priority sequence number value at that time are output. The value of the receiving high priority sequence number corresponds to the number of high priority packets received at the receiving side, and this value is incremented each time a high priority packet is received at the receiving side. Is.
[0207]
Further, the data receiving device 209 includes a high priority sequence number management unit 91 that increments and stores the value of the receiving high priority sequence number when the error packet detection unit 22a outputs a normal packet; The value of the transmission-side high priority sequence number output from the error packet detection means 22a is compared with the value of the reception-side high priority sequence number, and when these values do not match, the reception-side high priority sequence number Retransmission sequence number determination means 92 for outputting a value within the range from the value obtained by adding 1 to the value of the transmission side high priority sequence number to the value of the retransmission side sequence number (transmission side high priority sequence number) And have.
[0208]
Here, the high priority sequence number management means 91 increments the value of the stored high priority sequence number every time the retransmission sequence number determination means 92 outputs a high priority sequence number. It has become.
[0209]
Further, the data reception device 209 sends a retransmission request for a high error packet to the transmission side high priority sequence based on the transmission side high priority sequence number output as a retransmission sequence number from the retransmission sequence number determination means 92. Retransmission instruction transmission means 26c for instructing the number and transmitting it to the transmission side.
[0210]
Next, the function and effect will be described.
FIG. 31 is a sequence diagram for explaining packet selective retransmission control in the data transmission method of the ninth embodiment.
In the description of FIG. 31, the sequence number [S + n] indicates a sequence number whose value is “S + n”, and the sequence number [H + n] indicates a high priority sequence number whose value is “H + n”. , Packet (S + n) indicates a packet whose sequence number is “S + n”. Here, the case where n is 0, 1, 2, 3, 4, 5 is shown.
[0211]
For example, assuming that a priority higher than a certain value is a high priority and a priority smaller than a certain value is a low priority, as shown in FIG. 31, high priority packets (S + 1) and [S + 2] If an error occurs during transmission of (S + 1), (S + 2), a retransmission request is made for the high priority packet, but an error occurs during transmission of the low priority packet (S + 3) of sequence number [S + 3]. If it occurs, no retransmission request is made for the low priority packet (S + 3).
[0212]
More specifically, each packet transmitted from the distribution server is appended with additional information related to the sequence number and priority. In the data transmission device 109 serving as a relay server, the received packet is transmitted to the transmission queue management means. The transmission order is set at 12 and supplied to the transmission means 13, and the priority is determined by the packet priority determination means 15. Then, the transmission means 13 transmits the packets in the set transmission order. Packets determined to have a priority equal to or higher than a certain value are stored in the retransmission buffer 17 under the control of the retransmission buffer management means 18. In the retransmission packet 17, the management unit 18 sequentially releases (discards) the data from the packet that is not in time for the reproduction time.
[0213]
Next, a sequence number management process at the time of packet transmission will be described.
When a high priority packet is transmitted, the high priority sequence number is incremented.
Specifically, when the high priority packet (S + 0) of the sequence number [S + 0] is transmitted by the transmission unit 13, the transmission side high priority sequence number [H + 0] stored in the high priority sequence number management unit 81 is transmitted. ] Is incremented to “H + 1”. At this time, the sequence number correspondence management means associates the value of the sequence number [S + 0] of the high priority packet (S + 0) with the incremented value of the transmission side high priority sequence number [H + 1]. 82.
[0214]
Similarly, when the high-priority packet (S + 1) having the sequence number [S + 1] is transmitted by the transmission unit 13, the transmission-side high priority sequence number [H + 1] stored in the high-priority sequence number management unit 81 is transmitted. The value is incremented to “H + 2”. At this time, the sequence number [S + 1] of the high priority packet (S + 1) and the incremented transmission side high priority sequence number [H + 2] are associated and registered in the sequence number correspondence managing means 82.
[0215]
Also, when the high priority packet (S + 2) is transmitted, the transmission side high priority sequence in the high priority sequence number management means 81 is the same as when the high priority packets (S + 0) and (S + 1) are transmitted. The number [H + 2] is incremented, and the sequence number [S + 2] of the high priority packet (S + 2) is associated with the incremented transmission side high priority sequence number [H + 3] to the sequence number correspondence managing means 82. be registered.
[0216]
On the other hand, the low priority sequence number is not incremented when the low priority packet is transmitted.
Specifically, when the low priority packet (S + 3) of the sequence number [S + 3] is transmitted by the transmission unit 13, the transmission side high priority sequence number [H + 3] stored in the high priority sequence number management unit 81 is stored. ] Value is not updated and is maintained as it is. At this time, a process of associating the sequence number of the transmitted packet with the transmission side high priority sequence number [H + 3] stored in the high priority sequence number management means 81 and registering it in the sequence number correspondence management means 82 Also not done.
[0217]
Next, a sequence number embedding process at the time of packet transmission will be described.
When transmitting the high priority packet (S + 1), the value of the transmission side high priority sequence number [H + 1] stored in the high priority sequence number management means 81 at this time is inserted into the high priority sequence number. The means 83 embeds it in the header of the transmission packet (S + 1). Similarly, when the low priority packet (S + 3) is transmitted, the value of the transmission side high priority sequence number [H + 3] stored in the high priority sequence number management means 81 at this time is the transmission packet. Embedded in the header of (S + 3). Thus, the transmission packet in which the transmission side high priority sequence number stored in the high priority sequence number management means 81 is embedded in the header is transmitted by the transmission means 13 to the reception side.
[0218]
In this way, packets from the distribution server are sequentially sent to the terminal (data receiving device) 209 via the relay server.
Then, in the data reception device 209, the packet from the relay server (data transmission device) 109 is received by the reception means 21, and the received packet is supplied to the error packet detection means 22a. The normally transmitted high priority packet (S + 0) is output to the packet decoding unit 23 by the error packet detection unit 22a and stored in the reception side high priority sequence number, that is, the high priority sequence number management unit 91. The value of the high priority sequence number [H + 0] is incremented to [H + 1].
[0219]
Here, it is assumed that a transmission error occurs during transmission of the high priority packets (S + 1) and (S + 2), and then the low priority packet (S + 3) following these packets is normally transmitted.
[0220]
In this case, the low priority packet (S + 3) transmitted normally is output to the packet decoding means 23 by the error packet detection means 22a, but the receiving side high stored in the high priority sequence number management means 91 is output. The value of the priority sequence number [H + 1] is not incremented.
[0221]
Further, when the error packet detection means 22a correctly extracts the transmission side high priority sequence numbers [H + 0] and [H + 3] inserted in the high priority packet (S + 0) and the low priority packet (S + 3). These transmission side high priority sequence numbers [H + 0] and [H + 3] are output to the retransmission sequence number determination means 92. Further, when the transmission side high priority sequence numbers [H + 0] and [H + 3] are extracted by the error packet detection unit 22a, the reception side high priority sequence numbers stored in the high priority sequence number management unit 91 are stored. The values [H + 0] and [H + 1] are output to the retransmission sequence number determination unit 92.
[0222]
For example, when the transmission side high priority sequence number [H + 0] is extracted, the value of the reception side high priority sequence number in the high priority sequence number management means 91 together with the transmission side high priority sequence number [H + 0] [ H + 0] is output to the retransmission sequence number determination unit 92, and when the transmission side high priority sequence number [H + 3] is extracted, the transmission side high priority sequence number [H + 3] and the high priority sequence number management unit The value [H + 1] of the receiving side high priority sequence number in 91 is output to the retransmission sequence number determination means 92.
[0223]
The retransmission sequence number determination unit 92 compares the transmission side high priority sequence number and the reception side high priority sequence number supplied at the same time, and determines whether or not to instruct retransmission to the transmission side.
[0224]
For example, in the comparison process between the transmission-side high priority sequence number [H + 0] and the reception-side high priority sequence number [H + 0], a comparison result that the values of the two high priority sequence numbers are equal is obtained. I will not. On the other hand, in the comparison process between the transmission side high priority sequence number [H + 3] and the reception side high priority sequence number [H + 1], a comparison result that the values of the two high priority sequence numbers are not equal is obtained. Done. In this case, a value within a range from a value obtained by adding 1 to the value of the reception side high priority sequence number [H + 1] to the value of the transmission side high priority sequence number [H + 3], that is, a high priority sequence used for a retransmission instruction. As the number values, “H + 2” and “H + 3” are output to the retransmission instruction sending means 26. At this time, the high priority sequence number management means 91 increments the stored value of the receiving high priority sequence number twice to “H + 3”.
[0225]
Then, when “H + 2” and “H + 3” are supplied as the values of the high priority sequence number, the retransmission instruction transmission means 26 and the retransmission request accompanied by the high priority sequence number [H + 2] and the high priority sequence number [ A retransmission request with [H + 3] is sent to the transmission side.
[0226]
Then, in the data transmission apparatus 109 on the transmission side, the retransmission request is received by the retransmission instruction receiving means 14, and sequence number correspondence management is performed based on the high priority sequence numbers [H + 2] and [H + 3] for which the retransmission request has been made. The search process for the management information of the means 82 is performed, and the sequence number [S + 1] corresponding to the high priority sequence number [H + 2] and the sequence number [S + 2] corresponding to the high priority sequence number [H + 3] are obtained. The
[0227]
Further, the retransmission permission determination means 16c determines whether or not the packet data corresponding to the sequence numbers [S + 1] and [S + 2] are stored in the retransmission buffer 17. As a result of this determination, only packets whose data is stored in the retransmission buffer 17 are output from the retransmission buffer 17 to the transmission queue management unit 12 as retransmission packets. Here, high priority packets (S + 1) and (S + 2) are output as retransmission packets.
[0228]
In the transmission queue management unit 12, a predetermined transmission order is set for the retransmission packet, and the retransmission packet is retransmitted to the reception side via the transmission unit 13. Since the retransmission packet is a high-priority packet, the transmission side high-priority sequence number stored in the high-priority sequence number management unit 81 is transmitted when each retransmission packet (S + 1), (S + 2) is transmitted. The value is incremented.
[0229]
Specifically, when the retransmission packet (S + 1) is transmitted, the value of the transmission-side high priority sequence number [H + 3] stored in the high priority sequence number management unit 81 is incremented to “H + 4”. The sequence number [S + 1] of the retransmission packet (S + 1) and the transmission side high priority sequence number [H + 4] are associated with each other and registered in the sequence number correspondence managing means 82.
[0230]
When the retransmission packet (S + 2) is transmitted, the value of the transmission-side high priority sequence number [H + 4] stored in the high priority sequence number management unit 81 is incremented to “H + 5”, and the retransmission packet is transmitted. The sequence number [S + 2] of (S + 2) and the transmission-side high priority sequence number [H + 5] are associated with each other and registered in the sequence number correspondence managing means 82.
[0231]
As described above, in the ninth embodiment, the data transmission from the transmission side to the reception side includes additional information on the corresponding sequence number, priority, and data reproduction time, and the high priority sequence number managed on the transmission side. The data of the packets received on the receiving side are sequentially reproduced in succession in units of packets holding information, and the value of the transmission side high priority sequence number held in the received packets (the transmitted high The number of priority packets) and the value of the receiving high priority sequence number managed by the receiving side (number of high priority packets received) are compared to indicate the missing transmitting high priority sequence number Therefore, by retransmitting error packets with a priority higher than a certain value, not only can the transmission quality of the radio section be improved in real-time transmission, but also It can realize the door of retransmission by a simpler procedure.
[0232]
In the ninth embodiment, when the value of the high priority sequence number corresponding to a plurality of transmitted high priority packets is continuously missing, the receiving side has the missing high priority sequence number. Although the request for retransmission of the high-priority packet is individually made to the transmission side for each value, the retransmission requests for the plurality of high-priority packets are enumerated with the values of the plurality of high-priority sequence numbers, Alternatively, the range of the value may be designated and sent to the transmission side in a batch.
[0233]
In this case, on the transmission side, based on a plurality of high-priority sequence numbers for which retransmission has been requested from the reception side, sequence numbers associated with the respective transmission-side high priority packets are obtained by search processing, and the acquisition is performed. The high-priority packet with the assigned sequence number is retransmitted to the receiving side.
[0234]
(Embodiment 10)
In the data transmission method of the tenth embodiment, the number and interval of retransmission requests to the transmission side are changed in accordance with the transmission state of the radio section, and the retransmission request is correctly transmitted to the transmission side. The transmission quality in the radio section is improved.
[0235]
FIG. 32 is a block diagram illustrating a data transmission apparatus in a data transmission system that performs real-time data transmission using the data transmission method according to the tenth embodiment.
This data receiving apparatus 110 performs processing by means of this means 16c instead of the retransmission possibility judging means 16c in the data transmitting apparatus 109 of the ninth embodiment, and outputs the sequence number of the packet decided to be retransmitted. A determination unit 16d for determining whether or not the data transmission device 109 is capable of performing the processing by the unit 82 in place of the sequence number correspondence management unit 82; and, based on the sequence number from the retransmission determination unit 16d, the sequence number Sequence number correspondence management means 82a for deleting the value of the transmission side high priority sequence number associated with the value of. Accordingly, the other configuration of the data transmitting apparatus 110 of the tenth embodiment is the same as that of the data transmitting apparatus 109 of the ninth embodiment.
[0236]
FIG. 33 is a block diagram showing a data receiving apparatus in a data transmission system that performs real-time data transmission by the data transmission method of the tenth embodiment.
[0237]
The data receiving apparatus 210 performs the same processing as the error packet detection by the means 22a in place of the error packet detecting means 22a in the data receiving apparatus 209 of the ninth embodiment, and wirelessly determines the number of detected error packets. Error packet detecting means 22b for determining the transmission state of the section is provided.
[0238]
Further, the data receiving apparatus 210 performs the same process as the process of sending a retransmission instruction by the means 26c, instead of the retransmission instruction sending means 26c in the data receiving apparatus 209, and uses the sent retransmission request as a control signal. A retransmission instruction transmission means 26d for outputting is provided.
[0239]
Further, the data receiving apparatus 210 receives a retransmission request transmitted as a control signal from the retransmission instruction transmission unit 26d, continuously transmits the retransmission request a plurality of times at a predetermined number of times and at a transmission interval, and error packet detection unit Retransmission instruction continuous transmission means 93 is provided for changing the number of retransmission request transmissions and the transmission interval in accordance with the information indicating the transmission state of the wireless section output from 22b.
The other configuration of the data receiving apparatus 210 of the tenth embodiment is the same as that of the data receiving apparatus 209 of the ninth embodiment.
[0240]
Next, the function and effect will be described.
Since the basic data transmission processing by the data transmission method of the tenth embodiment of the present invention is the same as that of the ninth embodiment, only the processing different from the processing in the ninth embodiment will be described below.
[0241]
In the tenth embodiment, when the packet from the transmission side received by the reception unit 21 is output to the error packet detection unit 22b, the error packet detection unit 22b determines the radio section based on the output of the reception unit 21. The transmission state is detected, and information indicating the transmission state of this wireless section is supplied to the retransmission instruction continuous sending means 93.
[0242]
On the other hand, when the high priority sequence number from the retransmission sequence output unit 92 is input to the retransmission instruction transmission unit 26b, the retransmission instruction transmission unit 26b instructs the retransmission side to instruct the high priority sequence number. Is sent to the retransmission instruction continuous sending means 93 as a control signal.
[0243]
Then, the retransmission instruction continuous sending means 93 performs a continuous retransmission process for continuously sending a retransmission request to the transmission side a plurality of times. In this continuous retransmission process, the number of retransmission request transmissions and the transmission interval are adjusted according to the transmission state of the wireless section obtained from the output information of the error packet detection means 22b with a predetermined value as a reference.
[0244]
For example, when transmission errors occur frequently in the wireless section, the number of transmissions increases, and the transmission interval increases. This further increases the probability that the retransmission request is correctly transmitted to the transmission side. On the other hand, when there are not many transmission errors in the wireless section, the number of transmissions is reduced and the transmission interval is narrowed. This shortens the time required for the retransmission process.
[0245]
On the transmission side, the packet is retransmitted in response to the retransmission request, and the sequence number correspondence managing unit 82a associates the value with the value of the sequence number based on the sequence number from the retransmission possibility determination unit 16d. The process of deleting the value of the transmitting high priority sequence number is performed.
[0246]
For this reason, for the same retransmission request received again, the sequence number search processing by the retransmission possibility determination means 16d ends in failure. This is because the correspondence relationship between the transmission-side high priority sequence number and the sequence number instructed at the time of this retransmission request is deleted from the sequence number correspondence managing means 82a.
[0247]
As a result, in the retransmission determination by the retransmission permission determination unit 16d, it is determined that the high-priority packet requested to be retransmitted by instructing the value of the transmission-side high priority sequence number is not retransmitted. Thereby, on the transmission side, when the retransmission request is instructed a plurality of times from the reception side, it is avoided that the retransmission of the same packet is repeatedly performed for each retransmission request.
[0248]
As described above, in the tenth embodiment, a retransmission request for instructing and transmitting a high priority sequence number from the reception side is continuously transmitted to the transmission side a plurality of times in case a transmission error occurs during transmission. Therefore, when at least one of a plurality of retransmission request instructions from the receiving side is correctly received, the transmitting side can retransmit an error packet having a priority level equal to or higher than a certain value. Transmission quality can be improved more effectively.
[0249]
Hereinafter, a data structure of a packet for transmitting data by the data transmission method of each embodiment will be described.
FIG. 34 shows the data structure of the packet.
This packet Pa is composed of a header part Ph for storing related information indicating the attribute of each packet and a data part Pd for storing data to be transmitted (FIG. 34 (a)).
[0250]
The header part Ph includes header information Ia indicating a sequence number corresponding to each packet, header information (time stamp) Ib indicating a reproduction time on the reception side of the data to be transmitted, and priority of each packet. The header information Ic and the extension header information Id shown are included together with other header information I1 to I10 (FIG. 34 (b)).
[0251]
Here, the detailed definition of each header information is described in RFC1889 as shown in FIG. 34 (c). For example, when the value X is X = 1, the header information I3 indicates that the extension header information Id is added to the header part Ph. The header information I5 indicates that when the value PT is PT = 32, the data stored in the data part is encoded data according to the MPEG1 system, and the value PT is PT = 33. In some cases, this indicates that the data stored in the data section is encoded data according to the MPEG2 system. Furthermore, the header information I9, Ic, I10, and I11 is header information added when encoded data according to the MPEG1 system is transmitted by RTP. The value P (P = 1) of the header information Ic indicates that the data in the data portion is I frame data, and that the packet storing the I frame data should be treated as a high priority packet. (P = 2) indicates that the data in the data portion is P frame data, and that a packet storing the data of the P frame should be treated as a low priority packet. The value P (P = 3) The data in the section is B frame data, and the packet storing the B frame data is to be handled as a low priority packet.
[0252]
Further, the extension header information Id is the previous sequence number and the previous priority information (see FIG. 6) in the third embodiment, and the sequence number and the number of retransmissions of the high priority packet transmitted in the fourth embodiment (see FIG. 6). 13 and FIG. 14), the previous sequence number and the previous reproduction time (see FIG. 21) in the second modification of the sixth embodiment, and the difference between the previous sequence number and the previous reproduction time in the third modification of the sixth embodiment. Value (see FIG. 22), which is the transmission side high priority sequence number (see FIG. 29) in the ninth embodiment.
[0253]
【The invention's effect】
As described above, according to the data transmission method of the present invention, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and data reproduction time. In this case, the packet data received on the receiving side is sequentially reproduced, and only error packets with a priority equal to or higher than a certain value are retransmitted at this time, so that the transmission quality of the radio section in real-time transmission can be improved. In addition, the number of retransmissions can be reduced.
[0254]
According to the data transmitting apparatus of the present invention, based on the priority of each packet, a retransmission packet storing means for storing a packet having a priority equal to or higher than a certain value as a retransmission packet, and a retransmission request from a receiving terminal. And a retransmission possibility determination unit that determines whether or not to retransmit a packet for which retransmission has been instructed based on the instruction and the retransmission packet storage status in the retransmission packet storage unit. Only the above error packets can be retransmitted, so that the transmission quality in the radio section in real-time transmission can be improved, and the number of retransmissions can be reduced.
[0255]
According to the data receiving apparatus of the present invention, the packet priority determining means for determining an error packet having a priority equal to or higher than a certain value, and the retransmission request for the error packet determined to have a priority equal to or higher than a certain value Since it has a retransmission instruction transmission means for instructing the sequence number and transmitting it to the transmission side, on the reception side, a retransmission request to the transmission side is made only for an error packet having a priority equal to or higher than a certain value, In real-time transmission, it is possible to improve the transmission quality in the radio section and reduce the number of retransmissions.
[0256]
According to the data transmission method of the present invention, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and data reproduction time. Since the packet data arriving at the receiving side is sequentially played back, and only error packets that meet the time limit for arrival of packets at the receiving side are retransmitted at this time, the transmission quality of the radio section in real-time transmission can be improved. In addition, the number of retransmissions can be reduced.
[0257]
According to the data transmitting apparatus of the present invention, a retransmission packet storage unit that stores a packet having a priority equal to or higher than a certain value as a retransmission packet, an instruction for the retransmission request, and a retransmission packet storage state in the retransmission packet storage unit A packet that is determined not to be in time for the reproduction time on the receiving side by the reproduction time determination means. Since retransmission packet data other than is retransmitted, it is possible to improve the transmission quality of the radio section in real-time transmission and to reduce the number of retransmissions.
[0258]
According to the data receiving apparatus of the present invention, it is provided with the reproduction time determining means for determining whether or not the error packet has arrived at the receiving side before the arrival time limit, and arrives at the receiving side before the arrival time limit. Since the retransmission request is sent only to the error packet indicating the sequence number to the transmission side, the transmission quality of the radio section in real-time transmission can be improved, and the number of retransmissions can be reduced. .
[0259]
According to the data transmission method of the present invention, data transmission from the transmission side to the reception side is continuously performed in units of packets each holding additional information regarding the corresponding sequence number, priority, and data reproduction time. The packet data arriving at the receiving side is sequentially reproduced. At this time, only error packets whose priority is equal to or higher than a certain value and are in time for the packet arrival time limit at the receiving side are retransmitted. The transmission quality of the section can be improved, and the number of retransmissions can be greatly reduced.
[0260]
According to the data transmission method of the present invention, when a transmission error occurs between a relay server that is a data transmission device and a terminal, a retransmission request for an error packet from the terminal is not relayed to the distribution server, Since this relay server retransmits the error packet, there is an effect that the number of retransmissions between the distribution server and the relay server can be reduced.
[0261]
According to the present invention, when a transmission error occurs between the distribution server and the relay server, the error packet is not transmitted to the terminal, but a retransmission request is transmitted from the relay server to the distribution server. Since the error packet is retransmitted at the same time, there is an effect that unnecessary transmission such as transmission of the error packet from the relay server to the terminal is avoided.
[0262]
According to the data transmitting apparatus of the present invention, the retransmission instruction receiving means for receiving the retransmission request instruction from the receiving terminal, the retransmission request instruction, and the retransmission packet storage status in the retransmission packet storage means Based on the determination result of the retransmission enable / disable determining means, and an error packet for which a retransmission instruction has been received from the terminal. The retransmission request for the error packet from the terminal is sent to the distribution server when a transmission error occurs between the relay server that is the data transmission device and the terminal. This relay server can retransmit error packets without relaying, and the number of retransmissions between the distribution server and the relay server can be reduced. There is an effect.
[0263]
According to the data transmission method of the present invention, data transmission from the transmission side to the reception side is performed by adding the additional information regarding the corresponding sequence number and priority respectively, and the number of transmitted high priority packets managed on the transmission side. While continuously performing the packet that holds the value of the corresponding sender high priority sequence number as a unit, the data of the packet received at the receiver side is sequentially reproduced, and the sender high priority held in the received packet The high-side sequence number is specified on the sending side according to the comparison result between the high-side sequence number value and the receiving-side high-priority sequence number value that corresponds to the number of received high-priority packets Since the retransmission request for the error packet is made, retransmission of the high priority packet having a priority higher than a certain value can be performed by simpler processing.
[0264]
According to the present invention, since a retransmission request from the reception side to the transmission side, which is performed by instructing the value of the transmission side high priority sequence number, is continuously performed a plurality of times, the transmission side performs a plurality of retransmissions from the reception side. When even one request instruction is correctly received, only an error packet having a priority level equal to or higher than a certain value can be retransmitted, and the transmission quality of the wireless section in real-time transmission can be improved more effectively.
[0265]
According to the data transmitting apparatus of the present invention, a sequence for managing the transmission-side high priority sequence number corresponding to the number of transmitted high priority packets in association with the value of the sequence number of the high priority packet. Number management means and high priority sequence number insertion means for embedding the value of the transmission side high priority sequence number in the subsequent packet following the high priority packet, and the transmission side high priority sequence number from the reception side Based on the retransmission request indicating the value, the packet with the retransmission instruction is retransmitted, so only error packets with a priority higher than a certain value are retransmitted, and high priority packets with a priority higher than a certain value. Can be retransmitted by a simpler process.
[0266]
According to the data receiving apparatus of the present invention, the data receiving apparatus includes high priority sequence number management means for managing the value of the reception side high priority sequence number corresponding to the number of normally received high priority packets. Depending on the comparison result between the value of the sending high priority sequence number corresponding to the number of transmitted high priority packets and the value of the receiving high priority sequence number included in the packet from By specifying the value of the sender's high priority sequence number that is the target of the request and requesting retransmission of error packets with a priority higher than a certain value, retransmission of high priority packets with a priority higher than a certain value This can be done by simple processing.
[0267]
According to the packet data structure of the present invention, a packet for performing data transmission from the transmission side to the reception side, a header portion for storing related information indicating the attribute of each packet, and data to be transmitted are stored. The header part is composed of first information indicating the sequence number corresponding to each packet, second information indicating the priority of each packet, and the receiving side of the data to be transmitted. Since it is configured to include at least the first and second information of the third information indicating the reproduction time, it is possible to avoid retransmission of packets with low priority and retransmission of packets not in time for reproduction time in real time transmission. The transmission quality of the radio section can be improved while reducing the number of retransmissions.
[0268]
According to the present invention, since the header portion of the packet includes the attribute information of the transmitted packet transmitted before each packet, the error packet can be retransmitted more reliably.
[0269]
According to this invention, the header portion of the packet includes the first and second information or the first and third information as attribute information of the transmitted packet transmitted before each packet; Therefore, retransmission control based on priority or reproduction time can be performed more reliably.
[0270]
In the present invention, the header portion of the packet is configured to include a value of a high priority sequence number corresponding to the number of high priority packets transmitted prior to each packet and having a priority higher than a certain value. Not only can the transmission quality of the radio section in real-time transmission be improved, but also error packet retransmission can be realized with a simpler processing procedure.
[Brief description of the drawings]
FIG. 1 is a block diagram for explaining a data transmission device (FIG. (A)) as a relay server and a data transmission device as a distribution server in a data transmission system according to Embodiment 1 of the present invention;
FIG. 2 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the first embodiment.
FIG. 3 is a sequence diagram for explaining packet selective retransmission control in the data transmission method of the first embodiment.
FIG. 4 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a second embodiment of the present invention.
FIG. 5 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the second embodiment.
FIG. 6 is a sequence diagram for explaining selective packet retransmission control in a data transmission method according to Embodiment 3 of the present invention;
FIG. 7 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a modification of the third embodiment of the present invention.
FIG. 8 is a block diagram showing a data receiving device (receiving terminal) in a data transmission system according to a modification of the third embodiment.
FIG. 9 is a sequence diagram for explaining packet selective retransmission control in a data transmission method according to a modification of the third embodiment.
FIG. 10 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a fourth embodiment of the present invention.
FIG. 11 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the fourth embodiment.
FIG. 12 is a sequence diagram for explaining a first example of packet selective retransmission control in the data transmission method of the fourth embodiment.
FIG. 13 is a sequence diagram for explaining a second example of packet selective retransmission control in the data transmission method of the fourth embodiment.
FIG. 14 is a sequence diagram for explaining a third example of packet selective retransmission control in the data transmission method of the fourth embodiment.
FIG. 15 is a sequence diagram for explaining a fourth example of packet selective retransmission control in the data transmission method according to the modification of the fourth embodiment;
FIG. 16 is a block diagram for explaining a data transmitting device (FIG. (A)) as a relay server and a data receiving device (FIG. (B)) as a receiving terminal in a data transmission system according to a fifth embodiment of the present invention; It is.
FIG. 17 is a sequence diagram for explaining selective packet retransmission control in the data transmission method according to the fifth embodiment;
FIG. 18 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a sixth embodiment of the present invention.
FIG. 19 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the sixth embodiment.
FIG. 20 is a sequence diagram for explaining retransmission control with a time limit of a packet in the data transmission method of the sixth embodiment.
FIG. 21 is a sequence diagram for explaining retransmission control with a time limit for a packet in the data transmission method according to the second modification of the sixth embodiment.
FIG. 22 is a sequence diagram for explaining retransmission control with a time limit of a packet in the data transmission method according to the third modification of the sixth embodiment.
FIG. 23 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a seventh embodiment of the present invention.
FIG. 24 is a block diagram showing a data transmission device (relay server) in a data transmission system according to a modification of the seventh embodiment.
FIG. 25 is a block diagram showing a data transmission device (relay server) in a data transmission system according to an eighth embodiment of the present invention.
FIG. 26 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the eighth embodiment.
FIG. 27 is a diagram for describing a terminal reproduction time estimation method by a server according to the eighth embodiment, the relationship between a packet time stamp and a packet output time, etc. (FIG. (A)), and the time stamp The mapping method (Figure (b)) is shown.
FIG. 28 is a conceptual diagram for conceptually explaining a conventional video transmission system, in which a server and a terminal are connected by a wired line (FIG. (A)), and a wireless line is connected between the server and the terminal. It shows what is connected by the network that includes it (Figure (b)).
FIG. 29 is a block diagram for explaining a data transmission device as a relay server and a data transmission device as a distribution server in the data transmission system according to the ninth embodiment of the present invention;
30 is a block diagram showing a data receiving device (receiving terminal) in the data transmission system of the ninth embodiment. FIG.
FIG. 31 is a sequence diagram for explaining packet selective retransmission control in the real-time transmission method of the ninth embodiment.
FIG. 32 is a block diagram showing a data transmission device (relay server) in the data transmission system according to the tenth embodiment of the present invention;
FIG. 33 is a block diagram showing a data receiving apparatus (receiving terminal) in the data transmission system according to the tenth embodiment of the present invention.
FIG. 34 is a data structure of a packet for transmitting data by the data transmission method of each of the embodiments (FIG. (A)), a header configuration of the packet (FIG. (B)), and header information specification (FIG. It is a figure which shows (c)).
[Explanation of symbols]
10a Encoded packet generation means
10b Priority giving means
11, 21 Receiving means
12 Transmission queue management means
13, 13a, 13b Transmission means
14 Retransmission instruction receiving means
15 Packet priority determination means
16, 16a Re-transmission possibility determination means
17, 17a Retransmission buffer
18 Retransmission buffer management means
22 Error packet detection means
23 Packet decoding means
24 Reception history management means
25, 25a Packet priority determination means
26, 26a, 26b Retransmission instruction sending means
31, 41 Error correction means
32 Sequence number insertion means
33 Sequence number storage means
34 Sequence number retransmission count insertion means
35 Sequence number retransmission count storage means
36 Sequence number retransmission count comparison means
37 Retransmission count increment means
38 Retransmission count clearing means
39, 43 Reproduction time determination means
42 Insertion sequence extraction means
51, 51a Reproduction instruction receiving means
52 Reception history management means
61 Allowable reproduction delay information transmission means
62, 71 Transmission delay measurement packet transmission / reception means
63 Allowable reproduction delay determining means
72 Acceptable reproduction delay information receiving means
73 Transmission delay measuring means
74 Playback time calculation means
75 Time stamp extraction means
81, 91 High priority sequence number management means
82,82a Sequence number correspondence management means
83 High priority sequence number insertion means
92 Retransmission sequence output means
93 Retransmission instruction continuous sending means
101-108, 107a, 109, 110 Data transmission device
201-210 Data receiving device

Claims (20)

データをパケット単位で送信するデータ伝送方法において、
パケットの再生順序を表す第1シーケンス番号を有する前記パケットの送信を行う第1のステップと、
伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を受信する第2のステップと、
前記受信した再送要求で指示された伝送エラーが発生したパケットの再送を行うか否かを判定する第3のステップと、
前記判定結果に基づいて、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた前記再送パケットの送信を行う第のステップとを有する、
ことを特徴とするデータ伝送方法。
In a data transmission method for transmitting data in packets,
A first step of transmitting the packet having a first sequence number representing a packet playback order;
A second step of receiving a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred;
A third step of determining whether or not to retransmit a packet in which a transmission error indicated by the received retransmission request occurs;
Based on the determination result, the first sequence number, which is the same value stored in the packet in which the transmission error has occurred, is incremented by 1 every time a retransmission packet is transmitted, and a transmission error of a transmitted retransmission packet can be determined A fourth step of transmitting the retransmission packet with a second sequence number representing a correct transmission order,
A data transmission method characterized by the above.
請求項1に記載のデータ伝送方法において、
前記再送パケットは、高優先度パケットである、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 1,
The retransmission packet is a high priority packet.
A data transmission method characterized by the above.
請求項1に記載のデータ伝送方法において、
前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれる、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 1,
The second sequence number included in the retransmission packet is included in an RTP header.
A data transmission method characterized by the above.
請求項1に記載のデータ伝送方法において、
前記第3のステップは、前記再送パケットが高優先度パケットである場合にのみ行われる、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 1,
The third step is performed only when the retransmission packet is a high priority packet.
A data transmission method characterized by the above.
請求項1に記載のデータ伝送方法において、
前記第2のステップは、前記再送パケットをデータ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に行う、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 1,
The second step is performed when a time at which the data reception device receives the retransmission packet is within an arrival limit time of the retransmission packet.
A data transmission method characterized by the above.
パケット単位のデータを受信するデータ伝送方法において、
パケットの再生順序を表す第1シーケンス番号を有する前記パケットの伝送エラーの発生を検出する第1のステップと
伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を送信する第のステップと、
前記再送要求に基づいて送信された、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた前記再送パケットの受信を行う第のステップとを有する、
ことを特徴とするデータ伝送方法。
In a data transmission method for receiving data in packet units,
A first step of detecting an occurrence of a transmission error of the packet having a first sequence number representing a packet reproduction order;
A second step of transmitting a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred;
Wherein it is sent on the basis of the retransmission request, and the first sequence number the transmission error is the same value stored in the packet generated increases by one whenever transmitting a retransmission packet, the transmission of the transmitted retransmission packet A third step of receiving the retransmission packet with a second sequence number representing a transmission order in which an error can be determined ,
A data transmission method characterized by the above.
請求項に記載のデータ伝送方法において、
前記再送パケットは、高優先度パケットである、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 6 , wherein
The retransmission packet is a high priority packet.
A data transmission method characterized by the above.
請求項に記載のデータ伝送方法において、
前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれる、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 6 , wherein
The second sequence number included in the retransmission packet is included in an RTP header.
A data transmission method characterized by the above.
請求項に記載のデータ伝送方法において、
前記第2のステップは、前記再送パケットが高優先度パケットである場合にのみ行われる、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 6 , wherein
The second step is performed only when the retransmission packet is a high priority packet.
A data transmission method characterized by the above.
請求項に記載のデータ伝送方法において、
前記第1のステップは、前記再送パケットを前記データ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に行う、
ことを特徴とするデータ伝送方法。
The data transmission method according to claim 6 , wherein
The first step is performed when the time at which the data receiving device receives the retransmission packet is within the arrival limit time of the retransmission packet.
A data transmission method characterized by the above.
データをパケット単位で送信するデータ送信装置であって、
パケットの再生順序を表す第1シーケンス番号を有する前記パケットの送信を行う送信部と、
伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を受信する再送指示受信部と、
前記受信した再送要求で指示された伝送エラーが発生したパケットの再送を行うか否かを判定する判定部とを有し、
前記送信部は、前記判定部の判定結果に基づいて、再送パケットの送信を行い、
前記再送パケットは、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた、
ことを特徴とするデータ送信装置。
A data transmission device that transmits data in units of packets,
A transmission unit for transmitting the packet having a first sequence number representing a reproduction order of the packet;
A retransmission instruction receiving unit that receives a retransmission request of a retransmission packet corresponding to the packet in which a transmission error has occurred ;
A determination unit that determines whether to retransmit a packet in which a transmission error indicated by the received retransmission request has occurred,
The transmission unit transmits a retransmission packet based on the determination result of the determination unit,
The retransmission packet is incremented by 1 every time a retransmission packet is transmitted and the first sequence number that is the same value stored in the packet in which the transmission error has occurred, and a transmission that can determine a transmission error of a transmitted retransmission packet A second sequence number representing an order ,
A data transmitting apparatus characterized by that.
請求項11に記載のデータ送信装置において、
前記再送パケットは、高優先度パケットである、
ことを特徴とするデータ送信装置。
The data transmission device according to claim 11 , wherein
The retransmission packet is a high priority packet.
A data transmitting apparatus characterized by that.
請求項11に記載のデータ送信装置において、
前記再送パケットに含まれる第2シーケンス番号は、RTPヘッダに含まれる、
ことを特徴とするデータ送信装置。
The data transmission device according to claim 11 , wherein
The second sequence number included in the retransmission packet is included in the RTP header.
A data transmitting apparatus characterized by that.
請求項11に記載のデータ送信装置において、
前記送信部は、前記再送パケットが高優先度パケットである場合にのみ前記再送パケットを送信する、
ことを特徴とするデータ送信装置。
The data transmission device according to claim 11 , wherein
The transmission unit transmits the retransmission packet only when the retransmission packet is a high priority packet.
A data transmitting apparatus characterized by that.
請求項11に記載のデータ送信装置において、
前記再送指示受信部は、前記再送パケットをデータ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に、前記再送要求を受信する、
ことを特徴とするデータ送信装置。
The data transmission device according to claim 11 , wherein
The retransmission instruction receiving unit receives the retransmission request when a time for which the data reception device receives the retransmission packet is within an arrival limit time of the retransmission packet;
A data transmitting apparatus characterized by that.
パケット単位のデータを受信するデータ受信装置であって、
パケットの再生順序を表す第1シーケンス番号を有する前記パケットの伝送エラーの発生を検出する検出部と
伝送エラーが発生した前記パケットに対応する再送パケットの再送要求を送信する再送指示送出部と、
前記再送要求に基づいて送信された再送パケットの受信を行う受信部とを有し、
前記再送パケットは、前記伝送エラーが発生したパケットに格納された同じ値である前記第1シーケンス番号と、再送パケットを送信する毎に1増加し、送信済み再送パケットの伝送エラーを判定可能な送信順序を表す第2シーケンス番号とを備えた、
ことを特徴とするデータ受信装置。
A data receiving device that receives data in packet units,
A detecting unit for detecting occurrence of a transmission error of the packet having a first sequence number representing a reproduction order of the packet;
A retransmission instruction sending unit for sending a retransmission request for a retransmission packet corresponding to the packet in which a transmission error has occurred;
And a receiver for receiving the signal has been retransmitted packets sent on the basis of the retransmission request,
The retransmission packet is incremented by 1 every time a retransmission packet is transmitted and the first sequence number that is the same value stored in the packet in which the transmission error has occurred, and a transmission that can determine a transmission error of a transmitted retransmission packet A second sequence number representing an order ,
A data receiving apparatus.
請求項16に記載のデータ受信装置において、
前記再送パケットは、高優先度パケットである、
ことを特徴とするデータ受信装置。
The data receiving device according to claim 16 , wherein
The retransmission packet is a high priority packet.
A data receiving apparatus.
請求項16に記載のデータ受信装置において、
前記再送パケットに含まれる前記第2シーケンス番号は、RTPヘッダに含まれる、
ことを特徴とするデータ受信装置。
The data receiving device according to claim 16 , wherein
The second sequence number included in the retransmission packet is included in an RTP header.
A data receiving apparatus.
請求項16に記載のデータ受信装置において、
前記受信部は、前記再送パケットが高優先度パケットである場合のみ前記再送パケットを受信する、
ことを特徴とするデータ受信装置。
The data receiving device according to claim 16 , wherein
The receiving unit receives the retransmission packet only when the retransmission packet is a high priority packet.
A data receiving apparatus.
請求項16に記載のデータ受信装置において、
前記再送パケットを前記データ受信装置が受信する時間が、前記再送パケットの到着制限時間内である場合に、前記再送指示送出部は、前記再送要求を送信する、
ことを特徴とするデータ受信装置。
The data receiving device according to claim 16 , wherein
When the time for which the data reception device receives the retransmission packet is within the arrival limit time of the retransmission packet, the retransmission instruction transmission unit transmits the retransmission request.
A data receiving apparatus.
JP2003146689A 1998-11-30 2003-05-23 Data transmission method, data transmission device, and data reception device Expired - Lifetime JP3735352B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003146689A JP3735352B2 (en) 1998-11-30 2003-05-23 Data transmission method, data transmission device, and data reception device

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP34046998 1998-11-30
JP10-340469 1998-11-30
JP22337999 1999-08-06
JP11-223379 1999-08-06
JP2003146689A JP3735352B2 (en) 1998-11-30 2003-05-23 Data transmission method, data transmission device, and data reception device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP34027199A Division JP3450771B2 (en) 1998-11-30 1999-11-30 Data transmission method and data transmission apparatus

Publications (2)

Publication Number Publication Date
JP2003309617A JP2003309617A (en) 2003-10-31
JP3735352B2 true JP3735352B2 (en) 2006-01-18

Family

ID=29407409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003146689A Expired - Lifetime JP3735352B2 (en) 1998-11-30 2003-05-23 Data transmission method, data transmission device, and data reception device

Country Status (1)

Country Link
JP (1) JP3735352B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101548275A (en) * 2005-09-09 2009-09-30 史密斯探测公司 Multicast delivery of multimedia content on demand
JP4821407B2 (en) * 2006-03-30 2011-11-24 日本電気株式会社 COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND FAILURE DETECTION PROGRAM

Also Published As

Publication number Publication date
JP2003309617A (en) 2003-10-31

Similar Documents

Publication Publication Date Title
JP3450771B2 (en) Data transmission method and data transmission apparatus
US6918077B2 (en) Data transmission method and data transmission apparatus
KR100967377B1 (en) Data communication system, data transmission apparatus, data reception apparatus, data communication method, and computer program recording medium
US7636298B2 (en) Apparatus and method for packet error correction
EP2421190B1 (en) Medium streaming distribution system
US7263644B2 (en) Data transmitting/receiving system and method thereof
EP1301041A1 (en) Video data transmission method and apparatus
JP3492602B2 (en) Data transmitting device and data receiving device
JP2003324496A (en) Data transmission method, and packet data structure
US7388852B2 (en) Physical layer assisted retransmission
JP3735352B2 (en) Data transmission method, data transmission device, and data reception device
WO2003105420A1 (en) Data communication method and data transmission apparatus
EP1450535A1 (en) A relay for hierarchical retransmissions in multimedia streaming
JP2009260719A (en) Data transmission terminal device and data transmission method
KR20020093604A (en) Selective packet retransmission with timing control at the transmitter end

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050520

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051021

R150 Certificate of patent or registration of utility model

Ref document number: 3735352

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091028

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091028

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101028

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111028

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121028

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131028

Year of fee payment: 8

EXPY Cancellation because of completion of term