(57)【特許請求の範囲】
【請求項１】
受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信手段と、
前記パケット送信手段からパケットを受信した前記受信装置が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段と、
前記パケット送信手段によって送信されたパケットの受信状況と、前記パケット再送手段によって再送されたパケットの受信状況とを、前記受信装置から受信する受信報告受信手段とを備え、
前記受信報告受信手段は、パケットの受信状況として、少なくとも前記受信装置が検出したパケットロス数と前記受信装置が直前に受信したパケットのシーケンスナンバーとを受信し、再送パケットの受信状況として、少なくとも前記受信装置が受信した再送パケットの数を受信することを特徴とする、データ送信装置。
【請求項２】
送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、
前記送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、
前記シーケンスナンバーを用いて、前記パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、
前記パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、
前記送信装置が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段と、
前記パケット受信手段におけるパケットの受信状況と、前記再送パケット受信手段における再送パケットの受信状況とを、前記送信装置に対して送信する受信報告送信手段とを備え、
前記受信報告送信手段は、パケットの受信状況として、少なくとも検出したパケットロス数と直前に受信したパケットのシーケンスナンバーとを送信し、再送パケットの受信状況として、少なくとも受信した再送パケットの数を送信することを特徴とする、データ受信装置。
【請求項３】
受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、
前記パケット送信ステップにおいて送信されたパケットを受信した前記受信側が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップと、
前記パケット送信ステップにおいて送信されたパケットの受信状況と、前記パケット再送ステップにおいて再送されたパケットの受信状況とを、前記受信側から受信する受信報告受信ステップとを備え、
前記受信報告受信ステップは、パケットの受信状況として、少なくとも前記受信側が検出したパケットロス数と前記受信側が直前に受信したパケットのシーケンスナンバーとを受信し、再送パケットの受信状況として、少なくとも前記受信側が受信した再送パケットの数を受信することを特徴とする、データ送信方法。
【請求項４】
送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、
前記送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、
前記シーケンスナンバーを用いて、前記パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、
前記パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、
前記送信側が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップと、
前記パケット受信ステップにおけるパケットの受信状況と、前記再送パケット受信ステップにおける再送パケットの受信状況とを、前記送信側に対して送信する受信報告送信ステップとを備え、
前記受信報告送信ステップは、パケットの受信状況として、少なくとも検出したパケットロス数と直前に受信したパケットのシーケンスナンバーとを送信し、再送パケットの受信状況として、少なくとも受信した再送パケットの数を送信することを特徴とする、データ受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット単位でデータを伝送するデータ伝送装置およびデータ伝送方法に関し、より特定的には、再送パケットを含めたパケットの受信状況を監視しながらデータを伝送するデータ伝送装置およびデータ伝送方法に関する。
【背景技術】
【０００２】
画像や音声などのデータを実時間性を考慮して伝送する方式として、ＲＴＰ（Ｒｅａｌｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）が、一般に用いられる。ＲＴＰの詳細は、"RTP: A Transport Protocol for Real-Time Applications", H．Schulzrinne, S. Casner, R. Frederik, and V. Jacobson, RFC1889, 1996．に記載されている。
【０００３】
図６は、ＲＴＰを用いたデータ伝送装置の構成を示すブロック図である。図６において、データ送信部３０とデータ受信部４０とは、協働して送信側アプリケーション１から受信側アプリケーション２へデータを伝送する。送信側アプリケーション１は、例えば、ビデオエンコーダや音声エンコーダなどであり、受信側アプリケーション２は、これに対応したビデオデコーダや音声デコーダなどである。
【０００４】
タイムスタンプ付加部３１とシーケンスナンバー付加部３２とは、送信側アプリケーション１から出力されたパケットに、それぞれタイムスタンプとシーケンスナンバーとを付加する。パケット送信部３３は、シーケンスナンバー付加後のデータパケット１００を送信する。パケット受信部４３は、受信したデータパケット１００を、パケットロス検出部４２経由でパケット出力部４１に出力する。パケット出力部４１は、与えられたパケットを蓄積し、タイムスタンプを参照して、蓄積したパケットを受信側アプリケーション２に対して出力する。
【０００５】
一般の伝送路では、伝送誤りや輻輳によって、送信したパケットのうちいくつかが欠落する（以下、「パケットロス」という）。ＲＴＰでは、パケットロス検出部４２が、受信したデータパケット１００のシーケンスナンバーに生じた飛びを検出することにより、パケットロスを検出する。パケットロス検出部４２は、検出したパケットロスを受信報告送信部４４に通知する。受信報告送信部４４は、受信したパケットの最大シーケンスナンバーや累積パケットロス数を含んだ受信報告パケット１１０を作成して送信する。受信報告受信部３４は、受信した受信報告パケット１１０に含まれる受信状況を、送信側アプリケーション１やパケット送信部３３に対して出力する。
【０００６】
図７は、ＲＴＰによるデータ伝送のシーケンス図である。データ送信部３０は、各パケット（図７に示す矢印）にシーケンスナンバー（ＳＮ）を付加して順次送信する。データ受信部４０は、所定のタイミングで受信報告パケットを送信することにより、パケットの受信状況をデータ送信部３０に通知する。
【０００７】
また、実時間性を考慮することなく、受信側でパケットロスを検出し送信側へ再送を要求するデータ伝送方式として、ＩＴＵ−Ｔ勧告のＸ．２５が広く知られている。Ｘ．２５の詳細は、”Recommendation X.25 - Interface between Data Terminal Equipment (DTE) and Data Circuit-terminating Equipment (DCE) for terminals operating in the pakcet mode and connected to public data networks by dedicated circuit”、ＩＴＵ−Ｔ勧告、１９９６．に記載されている。図８は、Ｘ．２５を用いたデータ伝送装置の構成を示すブロック図である。図８において、パケット送信部５２は、シーケンスナンバー付加後のデータパケット２００を送信する。パケットロス検出部６２は、データパケット２００のシーケンスナンバーに生じた飛びを検出することによりパケットロスを検出し、再送要求送信部６４に通知する。再送要求送信部６４は、再送すべきデータパケットを指定した再送要求パケット２１０を送信する。再送要求受信部５３は、再送要求パケット２１０によって指定されたパケットを再送パケット送信部５４に通知する。
【０００８】
再送パケット送信部５４は、シーケンスナンバー付加後のデータパケットを再送用に蓄積しており、再送要求受信部５３からの通知に従って再送パケット２２０を再び送信する。再送パケット受信部６５は、再送パケット２２０を受信してパケット出力部６１に出力するとともに、受信した旨を受信確認パケット送信部６６に通知する。受信確認パケット送信部６６は、再送パケット２２０を受信した旨を示す受信確認パケット２３０を送信する。再送パケット送信部５４は、受信確認パケット受信部５５から受信確認パケット２３０を受信した旨の通知を受け取るまで、再送パケット２２０の再送を繰り返す。
【０００９】
図９は、Ｘ．２５によるデータ伝送のシーケンス図である。データ送信部５０は、各パケットにシーケンスナンバー（ＳＮ）を付加して順次送信する。データ受信部６０は、シーケンスナンバーが１であるパケットを受信した後に、シーケンスナンバーが２以外（例えば、３）のパケットを受信したときには、パケットロスが発生したと判断し、シーケンスナンバーが２であるパケットを指定した再送要求パケットを送信する。データ送信部５０は、この再送要求パケットを受信すると、シーケンスナンバーが２であるパケットを再送する。データ送信部５０は、パケットを送信するたびにタイマーを起動し、送信したパケットについての受信確認パケットを受信するより前にタイマーがタイムアウトしたときには、パケットを再送する。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した２つのデータ伝送方式では、再送パケットの受信状況を監視しながら、実時間性を考慮したデータ伝送を行うことができないという問題点がある。
【００１１】
ＲＴＰでは、実時間性を考慮したデータ伝送が行われ、送信側は、送信したパケットがどの程度受信されたか、あるいは、どの程度パケットロスが発生したかを、受信報告パケットにより知ることができる。しかし、パケットを再送した場合には、送信側は、再送したパケットがどの程度受信されたか、あるいは、再送したパケットについてどの程度パケットロスが発生したかを知ることができない。
【００１２】
Ｘ．２５では、送信側は、再送パケットの受信状況を受信確認パケットにより知ることができる。しかし、送信側は、あるパケットを送信し、その後に所定数のパケットを送信した後は、当該パケットについての受信確認パケットを受信するまで、後続パケットの送信を中断し、当該パケットの再送を繰り返す。このため、画像や音声など、実時間伝送が必要なデータの伝送には適用できない。
【００１３】
それ故に、本発明は、再送パケットを含めたパケットの受信状況を監視しながら、実時間性を考慮してデータを伝送するデータ伝送装置およびデータ伝送方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
第１の発明は、受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信手段と、パケット送信手段からパケットを受信した受信装置が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段と、パケット送信手段によって送信されたパケットの受信状況と、パケット再送手段によって再送されたパケットの受信状況とを、受信装置から受信する受信報告受信手段とを備え、受信報告受信手段は、パケットの受信状況として、少なくとも受信装置が検出したパケットロス数と受信装置が直前に受信したパケットのシーケンスナンバーとを受信し、再送パケットの受信状況として、少なくとも受信装置が受信した再送パケットの数を受信することを特徴とする。
【００１５】
このような第１の発明によれば、データ伝送の実時間性を損なうことなく、送信装置は、受信装置における再送パケットの受信状況を知ることができるので、送信装置は、再送パケットの受信状況を用いて、データ伝送の制御を行うことができる。また、送信装置は、パケットの受信状況および再送パケットの受信状況として、最低限必要な情報を知ることができるので、送信装置は、これらの値を用いて効率的にデータ伝送の制御を行うことができる。
【００１６】
第２の発明は、送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、シーケンスナンバーを用いて、パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、送信装置が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段と、パケット受信手段におけるパケットの受信状況と、再送パケット受信手段における再送パケットの受信状況とを、送信装置に対して送信する受信報告送信手段とを備え、受信報告送信手段は、パケットの受信状況として、少なくとも検出したパケットロス数と直前に受信したパケットのシーケンスナンバーとを送信し、再送パケットの受信状況として、少なくとも受信した再送パケットの数を送信することを特徴とする。
【００１７】
このような第２の発明によれば、データ伝送の実時間性を損なうことなく、受信装置は、再送パケットの受信状況を報告することができるので、送信装置は、再送パケットの受信状況を用いて、データ伝送の制御を行うことができる。また、受信装置は、パケットの受信状況および再送パケットの受信状況として、最低限必要な情報を報告することができるので、送信装置は、これらの値を用いて効率的にデータ伝送の制御を行うことができる。
【００１８】
第３の発明は、受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、パケット送信ステップにおいて送信されたパケットを受信した受信側が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップと、パケット送信ステップにおいて送信されたパケットの受信状況と、パケット再送ステップにおいて再送されたパケットの受信状況とを、受信側から受信する受信報告受信ステップとを備え、受信報告受信ステップは、パケットの受信状況として、少なくとも受信側が検出したパケットロス数と受信側が直前に受信したパケットのシーケンスナンバーとを受信し、再送パケットの受信状況として、少なくとも受信側が受信した再送パケットの数を受信することを特徴とする。
【００１９】
このような第３の発明によれば、データ伝送の実時間性を損なうことなく、送信側は、受信側における再送パケットの受信状況を知ることができるので、送信側は、再送パケットの受信状況を用いて、データ伝送の制御を行うことができる。また、送信側は、パケットの受信状況および再送パケットの受信状況として、最低限必要な情報を知ることができるので、送信側は、これらの値を用いて効率的にデータ伝送の制御を行うことができる。
【００２０】
第４の発明は、送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、シーケンスナンバーを用いて、パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、送信側が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップと、パケット受信ステップにおけるパケットの受信状況と、再送パケット受信ステップにおける再送パケットの受信状況とを、送信側に対して送信する受信報告送信ステップとを備え、受信報告送信ステップは、パケットの受信状況として、少なくとも検出したパケットロス数と直前に受信したパケットのシーケンスナンバーとを送信し、再送パケットの受信状況として、少なくとも受信した再送パケットの数を送信することを特徴とする。
【００２１】
このような第４の発明によれば、データ伝送の実時間性を損なうことなく、受信側は、再送パケットの受信状況を報告することができるので、送信側は、再送パケットの受信状況を用いて、データ伝送の制御を行うことができる。また、受信側は、パケットの受信状況および再送パケットの受信状況として、最低限必要な情報を報告することができるので、送信側は、これらの値を用いて効率的にデータ伝送の制御を行うことができる。
【発明の効果】
【００２２】
本発明によれば、データ伝送の実時間性を損なうことなく、受信側は再送パケットの受信状況を報告し、送信側は受信側における再送パケットの受信状況を知ることができる。したがって、送信側は、再送パケットの受信状況を用いて、データ伝送の制御を行うことができる。
【発明を実施するための最良の形態】
【００２３】
図１は、本発明の実施形態に係るデータ伝送装置の構成を示すブロック図である。このデータ伝送装置は、データ送信部１０とデータ受信部２０とから構成され、ＲＴＰに基づく方式で送信側アプリケーション１から受信側アプリケーション２へデータを伝送する。データ送信部１０は、タイムスタンプ付加部１１、シーケンスナンバー付加部１２、パケット送信部１３、受信報告受信部１４、再送要求受信部１５、再送パケット送信部１６、および、再送受信報告受信部１７を備える。データ受信部２０は、パケット出力部２１、パケットロス検出部２２、パケット受信部２３、受信報告送信部２４、再送要求送信部２５、再送パケット受信部２６、および、再送受信報告送信部２７を備える。
【００２４】
データ送信部１０からデータ受信部２０へのデータ伝送は、概ね、次のように行われる。タイムスタンプ付加部１１は、送信側アプリケーション１から出力されたパケットに、タイムスタンプを付加する。シーケンスナンバー付加部１２は、タイムスタンプ付加後のパケットにシーケンスナンバーを付加する。パケット送信部１３は、シーケンスナンバー付加後のデータパケット１００を送信する。
【００２５】
パケット受信部２３は、パケット送信部１３からデータパケット１００を受信する。受信されたデータパケット１００は、パケットロス検出部２２を経由して、パケット出力部２１に供給される。パケット出力部２１は、与えられたデータパケット１００を蓄積し、タイムスタンプによって指定された時刻に、蓄積したパケットを受信側アプリケーション２に対して出力する。パケットロス検出部２２は、受信したパケットのシーケンスナンバーに生じた飛びを検出することによりパケットロスを検出し、パケットの受信とパケットロスの検出とを受信報告送信部２４と再送要求送信部２５とに通知する。
【００２６】
受信報告送信部２４は、パケットロス検出部２２から通知された情報に基づき、パケットの受信状況を表す受信報告パケット１１０を作成し送信する。受信報告受信部１４は、受信報告パケット１１０を受信し、パケットの受信状況を送信側アプリケーション１やパケット送信部１３に通知する。
【００２７】
再送要求送信部２５は、パケットロス検出部２２から通知された情報に基づき、再送すべきパケットを指定した再送要求パケット１２０を作成し送信する。再送要求受信部１５は、再送要求パケット１２０を受信し、再送すべきパケットを再送パケット送信部１６に通知する。再送パケット送信部１６は、シーケンスナンバー付加後のデータパケットを再送用に蓄積しており、通知されたパケットを再送パケット１３０として再び送信する。再送パケット受信部２６は、再送要求送信部２５から再送パケット１３０を受信する。再送パケット受信部２６は、受信した再送パケット１３０をパケット出力部２１に対して出力するとともに、再送パケットを受信した旨を再送受信報告送信部２７に通知する。
【００２８】
再送受信報告送信部２７は、再送パケット受信部２６から通知された再送パケットの受信状況に基づき、再送受信報告パケット１４０を作成し送信する。再送受信報告受信部１７は、再送受信報告パケット１４０を受信し、再送パケットの受信状況を送信側アプリケーション１やパケット送信部１３に通知する。
【００２９】
以下、本実施形態に係るデータ伝送装置の詳細を説明する。
【００３０】
本実施形態に係るデータ伝送装置は、例えば動画像符号化データや音声符号化データなど、実時間伝送が必要とされるデータを伝送する。データは、所定のサイズのパケットに分割され、パケット単位でデータ送信部１０からデータ受信部２０へ伝送される。
【００３１】
タイムスタンプ付加部１１は、送信側アプリケーション１から出力された各パケットにタイムスタンプを付加する。タイムスタンプは、受信側アプリケーション２において各パケットが必要とされる時刻を表したものであり、パケット出力部２１によって使用される。タイムスタンプを用いることにより、データ受信部２０は、各パケットを所定のタイミングで途切れることなく受信側アプリケーション２に対して出力することができる。
【００３２】
シーケンスナンバー付加部１２は、タイムスタンプ付加後のパケットにシーケンスナンバーを付加し、パケット送信部１３に出力する。シーケンスナンバーは、パケットごとに１ずつ増加する番号である。シーケンスナンバーを用いることにより、データ受信部２０は、伝送中に発生したパケットロスを検出することができる。
【００３３】
パケット送信部１３は、先に送信したパケットの受信を確認することなく、タイムスタンプとシーケンスナンバーとが付加されたデータパケット１００を送信する。データパケット１００は、ＲＴＰの場合と同様に、ＵＤＰ（Ｕｓｅｒ  Ｄｉａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）などを用いて伝送される。送信されたデータパケット１００は、パケット受信部２３によって受信される。パケット受信部２３は、受信したパケットをパケットロス検出部２２に出力する。
【００３４】
パケットロス検出部２２は、入力されたパケットをパケット出力部２１へ出力し、パケット出力部２１は、上述したように動作する。また、パケットロス検出部２２は、入力されたパケットのシーケンスナンバーを検査する。パケットロス検出部２２は、パケットのシーケンスナンバーに飛びが生じたことを検出したときに、パケットロスが発生したと判断し、欠落したシーケンスナンバーを再送要求送信部２５に通知する。さらに、パケットロス検出部２２は、検出したパケットロス情報に基づき、パケットロス率や累積パケットロス数を算出し、受信したシーケンスナンバーの最大値などと合わせて受信報告送信部２４に通知する。
【００３５】
受信報告送信部２４は、パケットロス検出部２２から通知されたパケットロス率や累積パケットロス数や受信したシーケンスナンバーの最大値などの情報に基づき、受信報告パケット１１０を作成して送信する。
【００３６】
図２は、受信報告パケット１１０のフォーマットを示す図である。この受信報告パケットは、ＲＴＰではＲＲ（Ｒｅｃｅｉｖｅｒ  Ｒｅｐｏｒｔ）パケットと呼ばれている。パケットタイプＰＴおよびパケット長Ｌは、それぞれ、パケットの種類および長さを表す。受信側識別子ＳＳＲＣ＿Ｒは、データ受信部２０を識別する識別子である。送信側識別子ＳＳＲＣは、データパケット１００の送信元、すなわち、データ送信部１０を識別する識別子である。累積パケットロス数ＣＮＰＬ（Cumulative Number of Packets Lost ）およびパケットロス率ＦＬ（Fraction Lost ）は、それぞれ、受信開始からの累積パケットロス数およびパケットロス率である。受信シーケンスナンバーの最大値ＥＨＳＮＲ（Extended Highest Sequence Number Received ）は、直前に受信したパケットのシーケンスナンバーを表す。到着時間間隔のジッタＩＪ（Interarival Jitter）は伝送路の遅延時間のジッタを表し、直前ＳＲのタイムスタンプＬＳＲ（Last SR ）と直前ＳＲからの遅延時間ＤＬＳＲ（Delay since Last SR ）とは伝送路の往復遅延時間を計測するために使用される。なお、各フィールドの詳細は、上述した文献（ＲＦＣ１８８９）に記載されている。
【００３７】
受信報告パケット１１０は、データパケット１００と同様に、ＵＤＰなどを用いて伝送される。送信された受信報告パケット１１０は、受信報告受信部１４によって受信される。受信報告受信部１４は、受信した受信報告パケット１１０に含まれるパケットの受信状況を、必要に応じて送信側アプリケーション１やパケット送信部１３などに出力する。
【００３８】
再送要求送信部２５は、パケットロス検出部２２から通知されたシーケンスナンバーに基づき、再送すべきパケットを指定した再送要求パケット１２０を作成し送信する。再送要求パケット１２０は、データパケット１００と同様に、ＵＤＰなどを用いて伝送される。
【００３９】
再送要求受信部１５は、再送要求パケット１２０を受信したときには、再送すべきパケットを再送パケット送信部１６に通知する。再送パケット送信部１６は、上述したように、通知されたパケットを再送する。この際、再送パケット送信部１６は、パケット送信部１３とは異なるＵＤＰによる通信路を用いて、再送パケット１３０を送信してもよい。あるいは、再送パケット送信部１６は、パケット送信部１３と同じＵＤＰによる通信路を用いて、パケット送信部１３から送信されるデータパケット１００の間に再送パケット１３０を挿入して送信してもよい。
【００４０】
再送パケット送信部１６から送信された再送パケット１３０は、再送パケット受信部２６により受信される。再送パケット受信部２６は、受信した再送パケット１３０をパケット出力部２１に出力するとともに、再送パケットを受信した旨を再送受信報告送信部２７に通知する。
【００４１】
再送受信報告送信部２７は、再送パケット受信部２６からの通知に基づき、受信開始からこれまでに受信した再送パケットの数を数える。再送受信報告送信部２７は、再送パケット受信数を含んだ再送受信報告パケット１４０を作成し送信する。図３は、再送受信報告パケットのフォーマットを示す図である。図３において、再送パケット受信数ＲＴＮ（ReTransmit Number ）は、再送パケット受信部２６が受信した再送パケットの数であり、それ以外のフィールドは、図２に示す受信報告パケットと同じである。
【００４２】
再送受信報告送信部２７は、データパケットの受信とは独立したタイミングで再送受信報告パケット１４０を送信する。再送受信報告送信部２７は、例えば、再送受信報告パケット１４０を受信報告パケット１１０と同じタイミングで送信してもよく、受信報告パケット１１０よりも少ない頻度で送信してもよい。
【００４３】
送信された再送受信報告パケット１４０は、再送受信報告受信部１７によって受信される。再送受信報告受信部１７は、受信した再送受信報告パケット１４０に含まれる再送パケット受信数を、必要に応じて送信側アプリケーション１やパケット送信部１３などに出力する。図１に示すデータ伝送装置では、再送パケット受信数は、送信側アプリケーション１にのみ出力されている。
【００４４】
送信側アプリケーション１やパケット送信部１３は、受信報告受信部１４からパケットの受信状況を受け取るとともに、これとは独立して、再送受信報告受信部１７から再送パケットの受信報告を受け取る。これにより、２つの受信状況に基づき、データ伝送量の制御やデータ出力量の制御などを行うことができる。
【００４５】
図４は、本実施形態に係るデータ伝送のシーケンス図である。実時間性を重視したデータ伝送を行うため、データ送信部１０は、受信報告パケット１１０、再送要求パケット１２０、および、再送受信報告パケット１４０の受信とは独立して、タイムスタンプとシーケンスナンバーとを付加したデータパケット１００を送信する。また、データ送信部１０は、再送要求パケット１２０を受信したときには、指定された再送パケット１３０を送信する。再送パケット１３０の送信も、受信報告パケット１１０や再送受信報告パケット１４０の受信とは独立して行われる。
【００４６】
データ受信部２０は、データパケット１００の受信とは独立して、所定のタイミングで受信報告パケット１１０を送信する。受信報告パケット１１０には、パケットロス検出部２２から通知された、パケットロス率や累積パケットロス数や最大シーケンスナンバーなどが含まれる。また、データ受信部２０は、再送パケット１３０の受信とは独立して、所定のタイミングで再送受信報告パケット１４０を送信する。再送受信報告パケット１４０には、再送パケット受信数ＲＴＮが含まれる。
【００４７】
以上に示すように、本実施形態に係るデータ伝送装置では、パケットの受信や再送パケットの受信とは独立して、受信部が再送パケットの受信状況を報告するので、送信部は、受信部における再送パケットの受信状況を知ることができる。このため、送信部は、再送パケットの受信状況に基づき、データ伝送量の制御やデータ出力量の制御などを行うことができる。
【００４８】
また、本実施形態に係るデータ伝送装置は、ＲＴＰに基づく方式で動作する。このため、ＲＴＰが有するデータ伝送の実時間性を損なうことなく、再送パケットの受信状況を受信部から送信部へ報告することができる。
【００４９】
なお、本実施形態では、パケットの受信状況と再送パケットの受信状況とは、別のパケットを用いて報告されるものとしたが、両者を１つのパケットを用いて同時に報告してもよい。例えば、図５に示すように、ＲＴＰに規定された受信報告パケットに対して、再送パケット受信数ＲＴＮのフィールドを追加したパケットを用いてもよい。このように、パケットの受信状況の報告に使用される受信報告パケットに、再送パケットの受信状況を追加するだけで、容易に再送パケットの受信状況を報告することができる。
【産業上の利用可能性】
【００５０】
本発明は、送信側が再送パケットの受信状況を用いてデータ伝送の制御を行うことができるという効果を奏するので、パケット単位でデータを伝送するデータ伝送装置およびデータ伝送方法等に利用することができる。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施形態に係るデータ伝送装置の構成を示すブロック図である。
【図２】本発明の実施形態に係るデータ伝送装置における受信報告パケットのフォーマットを示す図である。
【図３】本発明の実施形態に係るデータ伝送装置における再送受信報告パケットのフォーマットを示す図である。
【図４】本発明の実施形態に係るデータ伝送装置のシーケンス図である。
【図５】本発明の実施形態の変形例に係るデータ伝送装置における受信報告パケットのフォーマットを示す図である。
【図６】ＲＴＰを用いた従来のデータ伝送装置の構成を示すブロック図である。
【図７】ＲＴＰによるデータ伝送のシーケンス図である。
【図８】Ｘ．２５を用いた従来のデータ伝送装置の構成を示すブロック図である。
【図９】Ｘ．２５によるデータ伝送のシーケンス図である。
【符号の説明】
【００５２】
１…送信側アプリケーション
２…受信側アプリケーション
１０…データ送信部
１１…タイムスタンプ付加部
１２…シーケンスナンバー付加部
１３…パケット送信部
１４…受信報告受信部
１５…再送要求受信部
１６…再送パケット送信部
１７…再送受信報告受信部
２０…データ受信部
２１…パケット出力部
２２…パケットロス検出部
２３…パケット受信部
２４…受信報告送信部
２５…再送要求送信部
２６…再送パケット受信部
２７…再送受信報告送信部
１００…データパケット
１１０…受信報告パケット
１２０…再送要求パケット
１３０…再送パケット
１４０…再送受信報告パケット
【要約】
【課題】  再送パケットの受信状況を監視しながら、実時間性を考慮したデータ伝送を行う。
【解決手段】  データ送信部１０は、パケットにタイムスタンプとシーケンスナンバーとを付加して送信する。データ受信部２０は、シーケンスナンバーを用いてパケットロスを検出し、欠落したパケットの再送を要求する。データ送信部１０は、再送要求されたパケットを再送する。データ受信部２０は、受信報告パケット１２０を用いてデータパケット１００の受信状況を報告するとともに、再送受信報告パケット１４０を用いて再送パケット１３０の受信状況を報告する。再送パケットの受信状況には、受信した再送パケットの数が含まれる。データ送信部１０は、再送パケットの受信状況に基づき、データ伝送を制御する。
【選択図】  図１
【図１】
0003594196.tif 000002
【図２】
0003594196.tif 000003
【図３】
0003594196.tif 000004
【図４】
0003594196.tif 000005
【図５】
0003594196.tif 000006
【図６】
0003594196.tif 000007
【図７】
0003594196.tif 000008
【図８】
0003594196.tif 000009
【図９】
0003594196.tif 000010