(57)【特許請求の範囲】
【請求項１】
受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信手段と、
前記パケット送信手段からパケットを受信した前記受信装置が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段とに加え、さらに、
前記パケット再送手段によって再送されたパケットの受信状況を前記受信装置から受信する受信報告受信手段を備え、
前記パケット再送手段によって再送されたパケットの受信状況は、再送受信報告パケットを用いて受信されることを特徴とする、データ送信装置。
【請求項２】
受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信手段と、
前記パケット送信手段からパケットを受信した前記受信装置が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段とに加え、さらに、
前記パケット再送手段によって再送されたパケットの受信状況を前記受信装置から受信する受信報告受信手段を備え、
前記受信報告受信手段は、前記パケット送信手段によって送信されたパケットの受信状況を前記受信装置から受信し、
前記パケット再送手段によって再送されたパケットの受信状況を示す再送受信報告パケットと、前記パケット送信手段によって送信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする、データ送信装置。
【請求項３】
前記パケット再送手段は、前記パケット送信手段とは異なる通信路を用いて再送することを特徴とする、請求項１または２に記載のデータ送信装置。
【請求項４】
送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、
前記送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、
前記シーケンスナンバーを用いて、前記パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、
前記パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、
前記送信装置が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段とに加え、さらに、
前記再送パケット受信手段における再送パケットの受信状況を前記送信装置に対して送信する受信報告送信手段を備え、
前記再送パケット受信手段によって受信されたパケットの受信状況は、再送受信報告パケットを用いて送信されることを特徴とする、データ受信装置。
【請求項５】
送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、
前記送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、
前記シーケンスナンバーを用いて、前記パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、
前記パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、
前記送信装置が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段とに加え、さらに、
前記再送パケット受信手段における再送パケットの受信状況を前記送信装置に対して送信する受信報告送信手段を備え、
前記受信報告送信手段は、前記パケット受信手段におけるパケットの受信状況を前記送信装置に対して送信し、
前記再送パケット受信手段によって受信されたパケットの受信状況を示す再送受信報告パケットと、前記パケット受信手段によって受信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする、データ受信装置。
【請求項６】
前記再送パケット受信手段は、前記パケット受信手段とは異なる通信路を用いて受信することを特徴とする、請求項４または５に記載のデータ受信装置。
【請求項７】
受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、
前記パケット送信ステップにおいて送信されたパケットを受信した前記受信側が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップとに加え、さらに、
前記パケット再送ステップにおいて再送されたパケットの受信状況を前記受信側から受信する受信報告受信ステップを備え、
前記パケット再送ステップにおいて再送されたパケットの受信状況は、再送受信報告パケットを用いて受信されることを特徴とする、データ送信方法。
【請求項８】
受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、
各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、
先に送信したパケットの受信を確認することなく、前記シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、
前記パケット送信ステップにおいて送信されたパケットを受信した前記受信側が、前記シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップとに加え、さらに、
前記パケット再送ステップにおいて再送されたパケットの受信状況を前記受信側から受信する受信報告受信ステップを備え、
前記受信報告受信ステップは、前記パケット送信ステップにおいて送信されたパケットの受信状況を前記受信側から受信し、
前記パケット再送ステップにおいて再送されたパケットの受信状況を示す再送受信報告パケットと、前記パケット送信ステップにおいて送信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする、データ送信方法。
【請求項９】
前記パケット再送ステップは、前記パケット送信ステップとは異なる通信路を用いて再送することを特徴とする、請求項７または８に記載のデータ送信方法。
【請求項１０】
送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、
前記送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、
前記シーケンスナンバーを用いて、前記パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、
前記パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、
前記送信側が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップとに加え、さらに、
前記再送パケット受信ステップにおける再送パケットの受信状況を前記送信側に対して送信する受信報告送信ステップを備え、
前記再送パケット受信ステップにおける再送パケットの受信状況は、再送受信報告パケットを用いて送信されることを特徴とする、データ受信方法。
【請求項１１】
送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、
前記送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、
前記シーケンスナンバーを用いて、前記パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、
前記パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、
前記送信側が前記再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップとに加え、さらに、
前記再送パケット受信ステップにおける再送パケットの受信状況を前記送信側に対して送信する受信報告送信ステップを備え、
前記受信報告送信ステップは、前記パケット受信ステップにおけるパケットの受信状況を前記送信側に対して送信し、
前記再送パケット受信ステップにおける再送パケットの受信状況を示す再送受信報告パケットと、前記パケット受信ステップにおけるパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする、データ受信方法。
【請求項１２】
前記再送パケット受信ステップは、前記パケット受信ステップとは異なる通信路を用いて受信することを特徴とする、請求項１０または１１に記載のデータ受信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケット単位でデータを伝送するデータ伝送装置およびデータ伝送方法に関し、より特定的には、再送パケットを含めたパケットの受信状況を監視しながらデータを伝送するデータ伝送装置およびデータ伝送方法に関する。
【０００２】
【従来の技術】
画像や音声などのデータを実時間性を考慮して伝送する方式として、ＲＴＰ（Ｒｅａｌｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）が、一般に用いられる。ＲＴＰの詳細は、”ＲＴＰ：  Ａ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｒｅａｌ−Ｔｉｍｅ  Ａｐｐｌｉｃａｔｉｏｎｓ”，Ｈ．Ｓｃｈｕｌｚｒｉｎｎｅ，  Ｓ．  Ｃａｓｎｅｒ，  Ｒ．  Ｆｒｅｄｅｒｉｋ，  ａｎｄ  Ｖ．  Ｊａｃｏｂｓｏｎ，  ＲＦＣ１８８９，  １９９６．に記載されている。
【０００３】
図６は、ＲＴＰを用いたデータ伝送装置の構成を示すブロック図である。図６において、データ送信部３０とデータ受信部４０とは、協働して送信側アプリケーション１から受信側アプリケーション２へデータを伝送する。送信側アプリケーション１は、例えば、ビデオエンコーダや音声エンコーダなどであり、受信側アプリケーション２は、これに対応したビデオデコーダや音声デコーダなどである。
【０００４】
タイムスタンプ付加部３１とシーケンスナンバー付加部３２とは、送信側アプリケーション１から出力されたパケットに、それぞれタイムスタンプとシーケンスナンバーとを付加する。パケット送信部３３は、シーケンスナンバー付加後のデータパケット１００を送信する。パケット受信部４３は、受信したデータパケット１００を、パケットロス検出部４２経由でパケット出力部４１に出力する。パケット出力部４１は、与えられたパケットを蓄積し、タイムスタンプを参照して、蓄積したパケットを受信側アプリケーション２に対して出力する。
【０００５】
一般の伝送路では、伝送誤りや輻輳によって、送信したパケットのうちいくつかが欠落する（以下、「パケットロス」という）。ＲＴＰでは、パケットロス検出部４２が、受信したデータパケット１００のシーケンスナンバーに生じた飛びを検出することにより、パケットロスを検出する。パケットロス検出部４２は、検出したパケットロスを受信報告送信部４４に通知する。受信報告送信部４４は、受信したパケットの最大シーケンスナンバーや累積パケットロス数を含んだ受信報告パケット１１０を作成して送信する。受信報告受信部３４は、受信した受信報告パケット１１０に含まれる受信状況を、送信側アプリケーション１やパケット送信部３３に対して出力する。
【０００６】
図７は、ＲＴＰによるデータ伝送のシーケンス図である。データ送信部３０は、各パケット（図７に示す矢印）にシーケンスナンバー（ＳＮ）を付加して順次送信する。データ受信部４０は、所定のタイミングで受信報告パケットを送信することにより、パケットの受信状況をデータ送信部３０に通知する。
【０００７】
また、実時間性を考慮することなく、受信側でパケットロスを検出し送信側へ再送を要求するデータ伝送方式として、ＩＴＵ−Ｔ勧告のＸ．２５が広く知られている。Ｘ．２５の詳細は、”Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｘ．２５  −  Ｉｎｔｅｒｆａｃｅ  ｂｅｔｗｅｅｎ  Ｄａｔａ  Ｔｅｒｍｉｎａｌ  Ｅｑｕｉｐｍｅｎｔ  （ＤＴＥ）  ａｎｄ  Ｄａｔａ  Ｃｉｒｃｕｉｔ−ｔｅｒｍｉｎａｔｉｎｇ  Ｅｑｕｉｐｍｅｎｔ  （ＤＣＥ）  ｆｏｒ  ｔｅｒｍｉｎａｌｓ  ｏｐｅｒａｔｉｎｇ  ｉｎ  ｔｈｅ  ｐａｋｃｅｔ  ｍｏｄｅ  ａｎｄ  ｃｏｎｎｅｃｔｅｄ  ｔｏ  ｐｕｂｌｉｃ  ｄａｔａ  ｎｅｔｗｏｒｋｓ  ｂｙ  ｄｅｄｉｃａｔｅｄ  ｃｉｒｃｕｉｔ”、ＩＴＵ−Ｔ勧告、１９９６．に記載されている。図８は、Ｘ．２５を用いたデータ伝送装置の構成を示すブロック図である。図８において、パケット送信部５２は、シーケンスナンバー付加後のデータパケット２００を送信する。パケットロス検出部６２は、データパケット２００のシーケンスナンバーに生じた飛びを検出することによりパケットロスを検出し、再送要求送信部６４に通知する。再送要求送信部６４は、再送すべきデータパケットを指定した再送要求パケット２１０を送信する。再送要求受信部５３は、再送要求パケット２１０によって指定されたパケットを再送パケット送信部５４に通知する。
【０００８】
再送パケット送信部５４は、シーケンスナンバー付加後のデータパケットを再送用に蓄積しており、再送要求受信部５３からの通知に従って再送パケット２２０を再び送信する。再送パケット受信部６５は、再送パケット２２０を受信してパケット出力部６１に出力するとともに、受信した旨を受信確認パケット送信部６６に通知する。受信確認パケット送信部６６は、再送パケット２２０を受信した旨を示す受信確認パケット２３０を送信する。再送パケット送信部５４は、受信確認パケット受信部５５から受信確認パケット２３０を受信した旨の通知を受け取るまで、再送パケット２２０の再送を繰り返す。
【０００９】
図９は、Ｘ．２５によるデータ伝送のシーケンス図である。データ送信部５０は、各パケットにシーケンスナンバー（ＳＮ）を付加して順次送信する。データ受信部６０は、シーケンスナンバーが１であるパケットを受信した後に、シーケンスナンバーが２以外（例えば、３）のパケットを受信したときには、パケットロスが発生したと判断し、シーケンスナンバーが２であるパケットを指定した再送要求パケットを送信する。データ送信部５０は、この再送要求パケットを受信すると、シーケンスナンバーが２であるパケットを再送する。データ送信部５０は、パケットを送信するたびにタイマーを起動し、送信したパケットについての受信確認パケットを受信するより前にタイマーがタイムアウトしたときには、パケットを再送する。
【００１０】
【発明が解決しようとする課題】
しかしながら、上述した２つのデータ伝送方式では、再送パケットの受信状況を監視しながら、実時間性を考慮したデータ伝送を行うことができないという問題点がある。
【００１１】
ＲＴＰでは、実時間性を考慮したデータ伝送が行われ、送信側は、送信したパケットがどの程度受信されたか、あるいは、どの程度パケットロスが発生したかを、受信報告パケットにより知ることができる。しかし、パケットを再送した場合には、送信側は、再送したパケットがどの程度受信されたか、あるいは、再送したパケットについてどの程度パケットロスが発生したかを知ることができない。
【００１２】
Ｘ．２５では、送信側は、再送パケットの受信状況を受信確認パケットにより知ることができる。しかし、送信側は、あるパケットを送信し、その後に所定数のパケットを送信した後は、当該パケットについての受信確認パケットを受信するまで、後続パケットの送信を中断し、当該パケットの再送を繰り返す。このため、画像や音声など、実時間伝送が必要なデータの伝送には適用できない。
【００１３】
それ故に、本発明は、再送パケットを含めたパケットの受信状況を監視しながら、実時間性を考慮してデータを伝送するデータ伝送装置およびデータ伝送方法を提供することを目的とする。
【００１４】
【課題を解決するための手段】
第１の発明は、受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信手段と、パケット送信手段からパケットを受信した受信装置が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段とに加え、さらに、パケット再送手段によって再送されたパケットの受信状況を受信装置から受信する受信報告受信手段を備え、パケット再送手段によって再送されたパケットの受信状況は、再送受信報告パケットを用いて受信されることを特徴とする。
【００１６】
第２の発明は、受信装置との間で、パケット化されたデータを実時間伝送するデータ送信装置であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加手段と、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信手段と、パケット送信手段からパケットを受信した受信装置が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送手段とに加え、さらに、パケット再送手段によって再送されたパケットの受信状況を受信装置から受信する受信報告受信手段を備え、受信報告受信手段は、パケット送信手段によって送信されたパケットの受信状況を受信装置から受信し、パケット再送手段によって再送されたパケットの受信状況を示す再送受信報告パケットと、パケット送信手段によって送信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする。
【００１７】
第３の発明は、第１または第２の発明において、パケット再送手段は、パケット送信手段とは異なる通信路を用いて再送することを特徴とする。
【００２０】
第４の発明は、送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、シーケンスナンバーを用いて、パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、送信装置が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段とに加え、さらに、再送パケット受信手段における再送パケットの受信状況を送信装置に対して送信する受信報告送信手段を備え、再送パケット受信手段によって受信されたパケットの受信状況は、再送受信報告パケットを用いて送信されることを特徴とする。
【００２２】
第５の発明は、送信装置との間で、パケット化されたデータを実時間伝送するデータ受信装置であって、送信装置が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信手段と、シーケンスナンバーを用いて、パケット受信手段におけるパケットロスを検出するパケットロス検出手段と、パケットロス検出手段がパケットロスを検出したときに、再送要求を送信する再送要求送信手段と、送信装置が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信手段とに加え、さらに、再送パケット受信手段における再送パケットの受信状況を送信装置に対して送信する受信報告送信手段を備え、受信報告送信手段は、パケット受信手段におけるパケットの受信状況を送信装置に対して送信し、再送パケット受信手段によって受信されたパケットの受信状況を示す再送受信報告パケットと、パケット受信手段によって受信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする。
【００２３】
第６の発明は、第４または第５の発明において、再送パケット受信手段は、パケット受信手段とは異なる通信路を用いて受信することを特徴とする。
【００２６】
第７の発明は、受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、パケット送信ステップにおいて送信されたパケットを受信した受信側が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップとに加え、さらに、パケット再送ステップにおいて再送されたパケットの受信状況を受信側から受信する受信報告受信ステップを備え、パケット再送ステップにおいて再送されたパケットの受信状況は、再送受信報告パケットを用いて受信されることを特徴とする。
【００２８】
第８の発明は、受信側との間で、パケット化されたデータを実時間伝送するデータ送信方法であって、各パケットにシーケンスナンバーを付加するシーケンスナンバー付加ステップと、先に送信したパケットの受信を確認することなく、シーケンスナンバーを付加したパケットを送信するパケット送信ステップと、パケット送信ステップにおいて送信されたパケットを受信した受信側が、シーケンスナンバーを用いてパケットロスを検出して再送要求を送信した場合に、当該再送要求に応じてパケットを再送するパケット再送ステップとに加え、さらに、パケット再送ステップにおいて再送されたパケットの受信状況を受信側から受信する受信報告受信ステップを備え、受信報告受信ステップは、パケット送信ステップにおいて送信されたパケットの受信状況を受信側から受信し、パケット再送ステップにおいて再送されたパケットの受信状況を示す再送受信報告パケットと、パケット送信ステップにおいて送信されたパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする。
【００２９】
第９の発明は、第７または第８の発明において、パケット再送ステップは、パケット送信ステップとは異なる通信路を用いて再送することを特徴とする。
【００３２】
第１０の発明は、送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、シーケンスナンバーを用いて、パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、送信側が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップとに加え、さらに、再送パケット受信ステップにおける再送パケットの受信状況を送信側に対して送信する受信報告送信ステップを備え、再送パケット受信ステップにおける再送パケットの受信状況は、再送受信報告パケットを用いて送信されることを特徴とする。
【００３４】
第１１の発明は、送信側との間で、パケット化されたデータを実時間伝送するデータ受信方法であって、送信側が各パケットにシーケンスナンバーを付加し、先に送信したパケットの受信を確認することなくパケットを送信した場合に、当該パケットを受信するパケット受信ステップと、シーケンスナンバーを用いて、パケット受信ステップにおけるパケットロスを検出するパケットロス検出ステップと、パケットロス検出ステップにおいてパケットロスが検出されたときに、再送要求を送信する再送要求送信ステップと、送信側が再送要求に応じてパケットを再送した場合に、当該パケットを受信する再送パケット受信ステップとに加え、さらに、再送パケット受信ステップにおける再送パケットの受信状況を送信側に対して送信する受信報告送信ステップを備え、受信報告送信ステップは、パケット受信ステップにおけるパケットの受信状況を送信側に対して送信し、再送パケット受信ステップにおける再送パケットの受信状況を示す再送受信報告パケットと、パケット受信ステップにおけるパケットの受信状況を示す受信報告パケットとは、同じフィールドを含むことを特徴とする。
【００３５】
第１２の発明は、第１０または第１１の発明において、再送パケット受信ステップは、パケット受信ステップとは異なる通信路を用いて受信することを特徴とする。
【００３８】
【発明の実施の形態】
図１は、本発明の実施形態に係るデータ伝送装置の構成を示すブロック図である。このデータ伝送装置は、データ送信部１０とデータ受信部２０とから構成され、ＲＴＰに基づく方式で送信側アプリケーション１から受信側アプリケーション２へデータを伝送する。データ送信部１０は、タイムスタンプ付加部１１、シーケンスナンバー付加部１２、パケット送信部１３、受信報告受信部１４、再送要求受信部１５、再送パケット送信部１６、および、再送受信報告受信部１７を備える。データ受信部２０は、パケット出力部２１、パケットロス検出部２２、パケット受信部２３、受信報告送信部２４、再送要求送信部２５、再送パケット受信部２６、および、再送受信報告送信部２７を備える。
【００３９】
データ送信部１０からデータ受信部２０へのデータ伝送は、概ね、次のように行われる。タイムスタンプ付加部１１は、送信側アプリケーション１から出力されたパケットに、タイムスタンプを付加する。シーケンスナンバー付加部１２は、タイムスタンプ付加後のパケットにシーケンスナンバーを付加する。パケット送信部１３は、シーケンスナンバー付加後のデータパケット１００を送信する。
【００４０】
パケット受信部２３は、パケット送信部１３からデータパケット１００を受信する。受信されたデータパケット１００は、パケットロス検出部２２を経由して、パケット出力部２１に供給される。パケット出力部２１は、与えられたデータパケット１００を蓄積し、タイムスタンプによって指定された時刻に、蓄積したパケットを受信側アプリケーション２に対して出力する。パケットロス検出部２２は、受信したパケットのシーケンスナンバーに生じた飛びを検出することによりパケットロスを検出し、パケットの受信とパケットロスの検出とを受信報告送信部２４と再送要求送信部２５とに通知する。
【００４１】
受信報告送信部２４は、パケットロス検出部２２から通知された情報に基づき、パケットの受信状況を表す受信報告パケット１１０を作成し送信する。受信報告受信部１４は、受信報告パケット１１０を受信し、パケットの受信状況を送信側アプリケーション１やパケット送信部１３に通知する。
【００４２】
再送要求送信部２５は、パケットロス検出部２２から通知された情報に基づき、再送すべきパケットを指定した再送要求パケット１２０を作成し送信する。再送要求受信部１５は、再送要求パケット１２０を受信し、再送すべきパケットを再送パケット送信部１６に通知する。再送パケット送信部１６は、シーケンスナンバー付加後のデータパケットを再送用に蓄積しており、通知されたパケットを再送パケット１３０として再び送信する。再送パケット受信部２６は、再送要求送信部２５から再送パケット１３０を受信する。再送パケット受信部２６は、受信した再送パケット１３０をパケット出力部２１に対して出力するとともに、再送パケットを受信した旨を再送受信報告送信部２７に通知する。
【００４３】
再送受信報告送信部２７は、再送パケット受信部２６から通知された再送パケットの受信状況に基づき、再送受信報告パケット１４０を作成し送信する。再送受信報告受信部１７は、再送受信報告パケット１４０を受信し、再送パケットの受信状況を送信側アプリケーション１やパケット送信部１３に通知する。
【００４４】
以下、本実施形態に係るデータ伝送装置の詳細を説明する。
【００４５】
本実施形態に係るデータ伝送装置は、例えば動画像符号化データや音声符号化データなど、実時間伝送が必要とされるデータを伝送する。データは、所定のサイズのパケットに分割され、パケット単位でデータ送信部１０からデータ受信部２０へ伝送される。
【００４６】
タイムスタンプ付加部１１は、送信側アプリケーション１から出力された各パケットにタイムスタンプを付加する。タイムスタンプは、受信側アプリケーション２において各パケットが必要とされる時刻を表したものであり、パケット出力部２１によって使用される。タイムスタンプを用いることにより、データ受信部２０は、各パケットを所定のタイミングで途切れることなく受信側アプリケーション２に対して出力することができる。
【００４７】
シーケンスナンバー付加部１２は、タイムスタンプ付加後のパケットにシーケンスナンバーを付加し、パケット送信部１３に出力する。シーケンスナンバーは、パケットごとに１ずつ増加する番号である。シーケンスナンバーを用いることにより、データ受信部２０は、伝送中に発生したパケットロスを検出することができる。
【００４８】
パケット送信部１３は、先に送信したパケットの受信を確認することなく、タイムスタンプとシーケンスナンバーとが付加されたデータパケット１００を送信する。データパケット１００は、ＲＴＰの場合と同様に、ＵＤＰ（Ｕｓｅｒ  Ｄｉａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）などを用いて伝送される。送信されたデータパケット１００は、パケット受信部２３によって受信される。パケット受信部２３は、受信したパケットをパケットロス検出部２２に出力する。
【００４９】
パケットロス検出部２２は、入力されたパケットをパケット出力部２１へ出力し、パケット出力部２１は、上述したように動作する。また、パケットロス検出部２２は、入力されたパケットのシーケンスナンバーを検査する。パケットロス検出部２２は、パケットのシーケンスナンバーに飛びが生じたことを検出したときに、パケットロスが発生したと判断し、欠落したシーケンスナンバーを再送要求送信部２５に通知する。さらに、パケットロス検出部２２は、検出したパケットロス情報に基づき、パケットロス率や累積パケットロス数を算出し、受信したシーケンスナンバーの最大値などと合わせて受信報告送信部２４に通知する。
【００５０】
受信報告送信部２４は、パケットロス検出部２２から通知されたパケットロス率や累積パケットロス数や受信したシーケンスナンバーの最大値などの情報に基づき、受信報告パケット１１０を作成して送信する。
【００５１】
図２は、受信報告パケット１１０のフォーマットを示す図である。この受信報告パケットは、ＲＴＰではＲＲ（Ｒｅｃｅｉｖｅｒ  Ｒｅｐｏｒｔ）パケットと呼ばれている。パケットタイプＰＴおよびパケット長Ｌは、それぞれ、パケットの種類および長さを表す。受信側識別子ＳＳＲＣ＿Ｒは、データ受信部２０を識別する識別子である。送信側識別子ＳＳＲＣは、データパケット１００の送信元、すなわち、データ送信部１０を識別する識別子である。累積パケットロス数ＣＮＰＬ（Ｃｕｍｕｌａｔｉｖｅ  Ｎｕｍｂｅｒ  ｏｆ  Ｐａｃｋｅｔｓ  Ｌｏｓｔ  ）およびパケットロス率ＦＬ（Ｆｒａｃｔｉｏｎ  Ｌｏｓｔ  ）は、それぞれ、受信開始からの累積パケットロス数およびパケットロス率である。受信シーケンスナンバーの最大値ＥＨＳＮＲ（Ｅｘｔｅｎｄｅｄ  Ｈｉｇｈｅｓｔ  Ｓｅｑｕｅｎｃｅ  Ｎｕｍｂｅｒ  Ｒｅｃｅｉｖｅｄ  ）は、直前に受信したパケットのシーケンスナンバーを表す。到着時間間隔のジッタＩＪ（Ｉｎｔｅｒａｒｉｖａｌ  Ｊｉｔｔｅｒ）は伝送路の遅延時間のジッタを表し、直前ＳＲのタイムスタンプＬＳＲ（Ｌａｓｔ  ＳＲ  ）と直前ＳＲからの遅延時間ＤＬＳＲ（Ｄｅｌａｙ  ｓｉｎｃｅ  Ｌａｓｔ  ＳＲ  ）とは伝送路の往復遅延時間を計測するために使用される。なお、各フィールドの詳細は、上述した文献（ＲＦＣ１８８９）に記載されている。
【００５２】
受信報告パケット１１０は、データパケット１００と同様に、ＵＤＰなどを用いて伝送される。送信された受信報告パケット１１０は、受信報告受信部１４によって受信される。受信報告受信部１４は、受信した受信報告パケット１１０に含まれるパケットの受信状況を、必要に応じて送信側アプリケーション１やパケット送信部１３などに出力する。
【００５３】
再送要求送信部２５は、パケットロス検出部２２から通知されたシーケンスナンバーに基づき、再送すべきパケットを指定した再送要求パケット１２０を作成し送信する。再送要求パケット１２０は、データパケット１００と同様に、ＵＤＰなどを用いて伝送される。
【００５４】
再送要求受信部１５は、再送要求パケット１２０を受信したときには、再送すべきパケットを再送パケット送信部１６に通知する。再送パケット送信部１６は、上述したように、通知されたパケットを再送する。この際、再送パケット送信部１６は、パケット送信部１３とは異なるＵＤＰによる通信路を用いて、再送パケット１３０を送信してもよい。あるいは、再送パケット送信部１６は、パケット送信部１３と同じＵＤＰによる通信路を用いて、パケット送信部１３から送信されるデータパケット１００の間に再送パケット１３０を挿入して送信してもよい。
【００５５】
再送パケット送信部１６から送信された再送パケット１３０は、再送パケット受信部２６により受信される。再送パケット受信部２６は、受信した再送パケット１３０をパケット出力部２１に出力するとともに、再送パケットを受信した旨を再送受信報告送信部２７に通知する。
【００５６】
再送受信報告送信部２７は、再送パケット受信部２６からの通知に基づき、受信開始からこれまでに受信した再送パケットの数を数える。再送受信報告送信部２７は、再送パケット受信数を含んだ再送受信報告パケット１４０を作成し送信する。図３は、再送受信報告パケットのフォーマットを示す図である。図３において、再送パケット受信数ＲＴＮ（ＲｅＴｒａｎｓｍｉｔ  Ｎｕｍｂｅｒ  ）は、再送パケット受信部２６が受信した再送パケットの数であり、それ以外のフィールドは、図２に示す受信報告パケットと同じである。
【００５７】
再送受信報告送信部２７は、データパケットの受信とは独立したタイミングで再送受信報告パケット１４０を送信する。再送受信報告送信部２７は、例えば、再送受信報告パケット１４０を受信報告パケット１１０と同じタイミングで送信してもよく、受信報告パケット１１０よりも少ない頻度で送信してもよい。
【００５８】
送信された再送受信報告パケット１４０は、再送受信報告受信部１７によって受信される。再送受信報告受信部１７は、受信した再送受信報告パケット１４０に含まれる再送パケット受信数を、必要に応じて送信側アプリケーション１やパケット送信部１３などに出力する。図１に示すデータ伝送装置では、再送パケット受信数は、送信側アプリケーション１にのみ出力されている。
【００５９】
送信側アプリケーション１やパケット送信部１３は、受信報告受信部１４からパケットの受信状況を受け取るとともに、これとは独立して、再送受信報告受信部１７から再送パケットの受信報告を受け取る。これにより、２つの受信状況に基づき、データ伝送量の制御やデータ出力量の制御などを行うことができる。
【００６０】
図４は、本実施形態に係るデータ伝送のシーケンス図である。実時間性を重視したデータ伝送を行うため、データ送信部１０は、受信報告パケット１１０、再送要求パケット１２０、および、再送受信報告パケット１４０の受信とは独立して、タイムスタンプとシーケンスナンバーとを付加したデータパケット１００を送信する。また、データ送信部１０は、再送要求パケット１２０を受信したときには、指定された再送パケット１３０を送信する。再送パケット１３０の送信も、受信報告パケット１１０や再送受信報告パケット１４０の受信とは独立して行われる。
【００６１】
データ受信部２０は、データパケット１００の受信とは独立して、所定のタイミングで受信報告パケット１１０を送信する。受信報告パケット１１０には、パケットロス検出部２２から通知された、パケットロス率や累積パケットロス数や最大シーケンスナンバーなどが含まれる。また、データ受信部２０は、再送パケット１３０の受信とは独立して、所定のタイミングで再送受信報告パケット１４０を送信する。再送受信報告パケット１４０には、再送パケット受信数ＲＴＮが含まれる。
【００６２】
以上に示すように、本実施形態に係るデータ伝送装置では、パケットの受信や再送パケットの受信とは独立して、受信部が再送パケットの受信状況を報告するので、送信部は、受信部における再送パケットの受信状況を知ることができる。このため、送信部は、再送パケットの受信状況に基づき、データ伝送量の制御やデータ出力量の制御などを行うことができる。
【００６３】
また、本実施形態に係るデータ伝送装置は、ＲＴＰに基づく方式で動作する。このため、ＲＴＰが有するデータ伝送の実時間性を損なうことなく、再送パケットの受信状況を受信部から送信部へ報告することができる。
【００６４】
なお、本実施形態では、パケットの受信状況と再送パケットの受信状況とは、別のパケットを用いて報告されるものとしたが、両者を１つのパケットを用いて同時に報告してもよい。例えば、図５に示すように、ＲＴＰに規定された受信報告パケットに対して、再送パケット受信数ＲＴＮのフィールドを追加したパケットを用いてもよい。このように、パケットの受信状況の報告に使用される受信報告パケットに、再送パケットの受信状況を追加するだけで、容易に再送パケットの受信状況を報告することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るデータ伝送装置の構成を示すブロック図である。
【図２】本発明の実施形態に係るデータ伝送装置における受信報告パケットのフォーマットを示す図である。
【図３】本発明の実施形態に係るデータ伝送装置における再送受信報告パケットのフォーマットを示す図である。
【図４】本発明の実施形態に係るデータ伝送装置のシーケンス図である。
【図５】本発明の実施形態の変形例に係るデータ伝送装置における受信報告パケットのフォーマットを示す図である。
【図６】ＲＴＰを用いた従来のデータ伝送装置の構成を示すブロック図である。
【図７】ＲＴＰによるデータ伝送のシーケンス図である。
【図８】Ｘ．２５を用いた従来のデータ伝送装置の構成を示すブロック図である。
【図９】Ｘ．２５によるデータ伝送のシーケンス図である。
【符号の説明】
１…送信側アプリケーション
２…受信側アプリケーション
１０…データ送信部
１１…タイムスタンプ付加部
１２…シーケンスナンバー付加部
１３…パケット送信部
１４…受信報告受信部
１５…再送要求受信部
１６…再送パケット送信部
１７…再送受信報告受信部
２０…データ受信部
２１…パケット出力部
２２…パケットロス検出部
２３…パケット受信部
２４…受信報告送信部
２５…再送要求送信部
２６…再送パケット受信部
２７…再送受信報告送信部
１００…データパケット
１１０…受信報告パケット
１２０…再送要求パケット
１３０…再送パケット
１４０…再送受信報告パケット
【図１】
0003594185.tif 000002
【図２】
0003594185.tif 000003
【図３】
0003594185.tif 000004
【図４】
0003594185.tif 000005
【図５】
0003594185.tif 000006
【図６】
0003594185.tif 000007
【図７】
0003594185.tif 000008
【図８】
0003594185.tif 000009
【図９】
0003594185.tif 000010