JP2005191735A - 圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム - Google Patents
圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム Download PDFInfo
- Publication number
- JP2005191735A JP2005191735A JP2003428181A JP2003428181A JP2005191735A JP 2005191735 A JP2005191735 A JP 2005191735A JP 2003428181 A JP2003428181 A JP 2003428181A JP 2003428181 A JP2003428181 A JP 2003428181A JP 2005191735 A JP2005191735 A JP 2005191735A
- Authority
- JP
- Japan
- Prior art keywords
- data
- retransmission
- transmission unit
- necessity
- transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
【課題】コネクションレス型の通信プロトコルを利用して映像等の圧縮データを送信した場合に、映像の途切れ等ができるだけ生じないようにする。
【解決手段】本発明の圧縮データ送信装置は、コネクションレス型の通信プロトコルを利用して圧縮データを送信する圧縮データ送信装置であって、所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信する送信単位データ送信手段と、分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する再送要否データ生成手段とを有する。
【選択図】図6
【解決手段】本発明の圧縮データ送信装置は、コネクションレス型の通信プロトコルを利用して圧縮データを送信する圧縮データ送信装置であって、所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信する送信単位データ送信手段と、分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する再送要否データ生成手段とを有する。
【選択図】図6
Description
本発明は、圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラムに関し、特に、コネクションレス型の通信プロトコルを利用して圧縮データを送信する圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラムに関する。
従来より、映像等のコンテンツデータを通信ラインを介して送信する技術が広く利用されている。映像あるいは音声のコンテンツデータは、データ圧縮されて、センタ装置等から通信ラインを介して端末装置へ配信される。その映像等のデータが配信される場合、主に2つの方法が利用されている。
1つは、通信プロトコルにおいて、データリンク層及び物理層にイーサネット(R)等を含む例えばIEEE802.3を用い、そしてネットワーク層にIPを用いた場合、トランスポート層にTCP(Transmission Control Protocol)を用いる方法である。この方法は、TCPは、コネクション型の転送プロトコルであり、通信路を確保してからデータ通信を行うため、データの転送の信頼性が高い。特に、TCPは、データの再送フロー制御機能及び転送途中での配送遅延によるパケットの順序の逆転を補正する順序制御機能を含んでいる点で、データの転送の信頼性が高い。
1つは、通信プロトコルにおいて、データリンク層及び物理層にイーサネット(R)等を含む例えばIEEE802.3を用い、そしてネットワーク層にIPを用いた場合、トランスポート層にTCP(Transmission Control Protocol)を用いる方法である。この方法は、TCPは、コネクション型の転送プロトコルであり、通信路を確保してからデータ通信を行うため、データの転送の信頼性が高い。特に、TCPは、データの再送フロー制御機能及び転送途中での配送遅延によるパケットの順序の逆転を補正する順序制御機能を含んでいる点で、データの転送の信頼性が高い。
しかし、TCPは、機能が豊富な反面、その豊富な機能を実現するために転送速度が遅く、リアルタイム処理には不向きであり、さらに、プロトコルヘッダのデータ長も、Ipv4の場合20バイト(オプション付きで24バイト)と、長いため、オーバヘッドが大きいという問題がある。
もう1つは、リアルタイム性を重視したデータ転送を行う場合に、通信プロトコルにおいて、トランスポート層にUDP(User Datagram Protocol)を用いる方法である。UDPは、コネクションレス型の転送プロトコルであり、再送フロー制御機能及び順序制御機能を有していないが、UDPのプロトコルヘッダのデータ長は8バイトであり、TCPに比べて小さい。
従って、映像又は音声のコンテンツをリアルタイムで配信する場合は、通常は、UDPを用いたデータ転送が行われる。代表的なデータ配信は、アプリケーション層にRTP(Realtime Transport Protocol)/RTCP(RTP Control Protocol)を用いたストリーミング配信である(例えば、特許文献1参照)。しかし、このUDPとRTPを用いた場合は、データ抜けは、監視できるが、データの再送制御は行われない。
特開2003-163916号公報(段落番号0034)
しかし、映像等のデータを、UDP等のコネクションレス型の通信プロトコルを用いたデータ送信方法で配信した場合、全く再送制御が行われないので、受信装置において、圧縮データが解凍されて再生される映像等に、映像あるいは音声の途切れ、バズ音が生じてしまうことがある。映像の途切れ等は、視聴者に認識され検知されてしまうため、視聴者にとっては、高品位の映像等が提供されているとは感じられない。
本発明は、コネクションレス型の通信プロトコルを利用して映像等の圧縮データを送信する場合に、映像の途切れ等ができるだけ生じないようにするための圧縮データ送信装置を提供することを目的とする。
本発明の圧縮データ送信装置は、コネクションレス型の通信プロトコルを利用して圧縮データを送信する圧縮データ送信装置であって、所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信する送信単位データ送信手段と、分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する再送要否データ生成手段とを有する。
本発明によれば、コネクションレス型の通信プロトコルを利用して映像等の圧縮データを送信した場合に、映像の途切れ等ができるだけ生じないようにすることができる。
以下、図面を参照して本発明の実施の形態を説明する。
(第1の実施の形態)
まず、図1に基づき、本実施の形態に係わる圧縮データ送信システムの構成を説明する。図1は、本実施の形態に係わる圧縮データ送信システムの構成を示す構成図である。
まず、図1に基づき、本実施の形態に係わる圧縮データ送信システムの構成を説明する。図1は、本実施の形態に係わる圧縮データ送信システムの構成を示す構成図である。
図1に示される圧縮データ送受信システムは、例えば、屋内の、ある部屋に設置されたコンテンツサーバ1から送信された映像等のコンテンツを、他の部屋に設置されたクライアント2においてユーザが視聴するためのシステムである。この圧縮データ送信システムにおいて、センタ装置であるコンテンツサーバ1は、映像等のコンテンツデータが記録された記憶装置を有し、無線LANの通信によって、端末装置であるクライアント2とデータ通信を行う。コンテンツサーバ1は、コンテンツのデータとしては圧縮されたデータ形式でクライアント2へ送信し、クライアント2においてその圧縮データを解凍して映像等の再生が行われる。なお、クライアント2は、テレビ受像機の機能も有する端末装置である。
また、本実施の形態では、サーバ1からクライアント2へ送信されるデータは、MPEG(Moving Picture Expert Group)2のデータ圧縮方式で圧縮されたデータ、特にMPEG2-TS(Transport Stream)形式のデータとして説明しているが、MPEG2-PS(Program Stream)形式及びMPEG4等の他の圧縮方式による形式でもよい。
なお、コンテンツサーバ1は、例えば、DVD(Digital Versatile Disk)等のデータを記憶装置にストアし、後述するような無線通信によってそのストアされたデータをテレビ受像機等のクライアント2へ送信する装置であってもよい。
また、クライアント2がテレビ受像機である場合、コンテンツサーバ1は、テレビ受像機に対する、いわゆるセットトップボックスであってもよい。その場合、そのセットトップボックスが、コンテンツサーバ装置として、テレビ受像機に無線通信によって圧縮データを送信する。さらに、そのセットトップボックスに対して、他のコンテンツサーバから、圧縮データを送信するようにしてもよく、その場合、そのセットトップボックスがクライアント2であり、他のコンテンツサーバがサーバとなって、無線通信によって圧縮データを送信する。
図2は、コンテンツサーバ1及びクライアント2のブロック構成を示すブロック図である。
図2に示すように、コンテンツサーバ(以下、単にサーバという)1とクライアント2は、無線LANのネットワーク3を介して接続されている。サーバ1は、中央処理装置(以下、CPUという)11と、ハードディスク等の記憶装置12と、読み出し専用メモリ(以下、ROMという)13と、ランダムアクセスメモリ(以下、RAMという)14と、ネットワークインターフェース(以下、I/Fと略す)15とを有する。CPU11、ROM12及びRAM13は、それぞれデータバス16に接続され、相互にデータの授受ができるようになっている。CPU11と記憶装置12とは、別途接続され、相互にデータの授受ができるようになっている。CPU11は、ネットワークI/F15を介して、クライアント2とデータ通信を行うことができる。
クライアント2は、CPU21と、ROM22と、RAM23と、ネットワークI/F24とを有する。CPU21、ROM22及びRAM23は、それぞれデータバス25に接続され、相互にデータの授受ができるようになっている。CPU21は、ネットワークI/F24を介して、サーバ1とデータ通信を行うことができる。クライアント2は、さらに、デジタルテレビ放送受信用のアンテナ26と、そのアンテナ26で受信した信号を処理するチューナ27と、チューナ27からのデータをデコードするMPEG2デコーダ28と、MPEG2デコーダ28がデコード時に使用するメモリ29と、MPEG2デコーダ28においてデコードされた映像等を画面上に映し出すディスプレイ30とを含む。
MPEG2デコーダ28は、チューナ27からの受信データだけでなく、CPU21からの、ネットワークI/F24を介して受信したサーバ1からの受信データも、デコードするが、本実施の形態では、サーバ1からの映像等のデータを、ネットワーク3を介して受信してディスプレイへの表示等を行う点に特徴があるので、アンテナ26によってデジタルテレビ放送を受信する部分の機能についての説明は省略する。
サーバ1の記憶装置12には、映像及び音声のコンテンツデータがMPEG2のデータ圧縮形式で、ストアされている。
図3は、記憶装置12にストアされているコンテンツデータを説明するための図である。MPEG2の形式で圧縮された映画等のコンテンツデータが、所定のデータ単位に分割されて、記憶されている。図3に示すように、あるコンテンツ41が、所定のデータ単位に、具体的には、ここでは、所定の通信プロトコルにおけるアプリケーション層であるRTPプロトコルのデータ転送単位に、分割されて、n個のパケットデータ41−1、41−2、41−3、・・41−nとして、記憶装置12にストアされている。各パケットデータには、パケット番号が付けられており、後述するように、サーバ1及びクライアント2は、送信あるいは受信されたパケットデータを、パケット番号によって識別することができる。
図3は、記憶装置12にストアされているコンテンツデータを説明するための図である。MPEG2の形式で圧縮された映画等のコンテンツデータが、所定のデータ単位に分割されて、記憶されている。図3に示すように、あるコンテンツ41が、所定のデータ単位に、具体的には、ここでは、所定の通信プロトコルにおけるアプリケーション層であるRTPプロトコルのデータ転送単位に、分割されて、n個のパケットデータ41−1、41−2、41−3、・・41−nとして、記憶装置12にストアされている。各パケットデータには、パケット番号が付けられており、後述するように、サーバ1及びクライアント2は、送信あるいは受信されたパケットデータを、パケット番号によって識別することができる。
図3に示すようなデータの分割は、CPU11によって、ROM13にストアされたプログラムをRAM12に読み出して実行することによって行われる。例えば、DVD等に記憶された圧縮データ、あるいはインターネット等を介して受信して記憶装置12に記憶された圧縮データに対して、そのプログラムを実行することによって、分割されたパケットデータが生成される。
図4は、サーバ1とクライアント2の間で行われる通信のプロトコルスタックを示す図である。データリンク層51にIEEE802.3を、ネットワーク層52にIPを、トランスポート層53にUDPを、アプリケーション層54にRTP/RTCPを利用している。IEEE802.3を利用して、IPプロトコルの通信を行い、そのIPプロトコルを利用して、UDPプロトコルの通信を行い、UDPプロトコルを利用して、RTP/RTCPプロトコルの通信を行い、RTP/RTCPプロトコルを利用して通信が行われるように、通信プロトコルは多層化されている。物理層では、無線通信を行う回路が利用される。
図5は、MPEG2のTSパケット(以下、MPEG2-TSパケットという)を上述した多層化された通信プロトコルを利用して、サーバ1からクライアント2へ送信するときのデータ構造を説明するための図である。
図5に示すように、複数のMPEG2のTSパケットデータ63は、映像(Video)PES(Packetized Elementary Stream)パケット61と音声(Audio)PESパケット62を含む。映像PES(Packetized Elementary Stream)パケット61と音声PESパケット62の各PESパケットは、パケットスタートコードプリフィックス部(Packet start code prefix)と、ストリーム識別子部(stream id)と、PESパケット長部(PES packet length)と、オプションPESヘッダ部(Optional PES header)と、PESパケットデータバイト部(PES packet data bytes)からなる。
1つのMPEG2-TSパケット63は、ヘッダ部とペイロード部からなり、ペイロード部には、PESパケット61又は62のデータが含まれる。1つのMPEG2-TSパケット63は、例えば188バイト長である。
RTPパケット65は、ヘッダ部(RTP header)とペイロード部(RTP Payload)からなり、ペイロード部には、転送単位データ64が含まれる。転送単位データ64は、パケットスタートコードプリフィックス部(Packet start code prefix)と、パケット番号部(packet number)と、パケット長部(Packet length)と、オプションヘッダ部(Optional header)と、ペイロード部からなる。
RTPパケット65は、ヘッダ部(RTP header)とペイロード部(RTP Payload)からなり、ペイロード部には、転送単位データ64が含まれる。転送単位データ64は、パケットスタートコードプリフィックス部(Packet start code prefix)と、パケット番号部(packet number)と、パケット長部(Packet length)と、オプションヘッダ部(Optional header)と、ペイロード部からなる。
この転送単位データ64のペイロード部には、所定の数、ここでは4つ、のMPEG2-TSパケット63が含まれており、例えば、752バイト、すなわち188バイトの4倍のバイト長である。
UDPパケット66は、ヘッダ部(UDP header)とペイロード部(UDP Payload)からなり、ペイロード部には、RTPパケット65が含まれている。
さらに、IPパケット67は、ヘッダ部(IP header)とペイロード部(IP Payload)からなり、ペイロード部には、UDPパケット66が含まれている。
ここでは、4つのMPEG2-TSパケットを、処理単位である1つの転送単位として、RTPプロトコル、UDPプロトコル、及びIPプロトコルによって送信して、RTPプロトコルのレベルにおいて、すなわちRTPプロトコルの転送単位データ毎に、後述する転送データの抜けのチェックが行われる。
言い換えれば、サーバ1には、コンテンツ41の圧縮データが、4つのMPEG2-TSパケットデータを1つの転送単位データとして、複数のパケットデータに分割して、記憶装置12にストアされ、上述した構成を有する通信プロトコルを利用することによって、各転送単位データが、サーバ1からクライアント2へネットワークI/F15から送信される。従って、CPU11、記憶装置12及びネットワークI/F15が、送信単位データ送信手段を構成する。CPU21及びネットワークI/F24が、送信単位データ受信手段を構成する。
このコンテンツ41の圧縮データは、4つのMPEG2-TSパケットデータを1つの転送単位データとして、n個のパケットデータに分割されるが、サーバ1は、パケットデータを生成するとき、あるいは生成した後に、各パケットデータに、所定のデータが含まれているかをチェックし、そのパケット番号毎に、その所定のデータの有無を示すデータを含むデータ内容テーブルを生成する。サーバ1は、そのデータ内容テーブルと所定の参照テーブルとに基づいて、再送管理テーブルを生成する。
図6は、その再送管理テーブルを生成する手順を説明するための図である。データ内容テーブル71は、パケット番号部と、データの内容を示す内容部とからなるテーブルデータである。各パケットデータ毎に、所定のデータが含まれているか否か、ここでは、例えば、MPEG2-TSパケットのシーケンスヘッダ、音声、Iピクチャ、Bピクチャ及びPピクチャの中のいずれかのデータが含まれているかが、内容部に記述される。例えば、図6において、パケット番号0のパケットデータは、シーケンスヘッダを含み、パケット番号1000のパケットデータは、Bピクチャを含むことを示している。
このデータ内容テーブル71と、所定の参照テーブルとしての再送要否参照テーブル72とに基づいて、再送管理テーブル73が生成される。再送要否参照テーブル72は、データの内容に応じて、再送フラグを再送が必要である旨を示す「1」にするか、再送が不要である旨を示す「0」にするかを決定するための参照テーブルである。再送管理テーブル73は、各パケット毎に決定された再送フラグを含むテーブルである。サーバ1は、再送要否参照テーブル72を参照しながら、データ内容テーブル71から、再送管理テーブル73を生成する。
再送要否参照テーブル72の内容は、パケットデータの転送単位データが、MPEG2の映像等の再生において、映像の途切れ等が生じる虞の度合いに応じて、すなわち映像又は音声の再生に大きな影響のあるデータを含む場合には、再送が必要であるとして、再送フラグが「1」に予めセットされ、再生に大きな影響のあるデータを含まない場合には、再送が不要であるとして、再送フラグが「0」に予めセットされるように、設定される。従って、MPEG2のシーケンスヘッダ、Iピクチャ等の、そのデータが抜けると、再生に大きな影響のあるデータについては、再送フラグが「1」に設定されている。
図7は、サーバ1が、その再送管理テーブル73を生成する処理の流れの例を示すフローチャートである。なお、以下に説明する図7及び図9の処理は、ROM13にプログラムとしてストアされており、CPU11がそのプログラムをRAM14に読み出すことによって、実行され、図8の処理は、ROM22にプログラムとしてストアされており、CPU21がそのプログラムをRAM23に読み出すことによって、実行される。
まず、サーバ1のCPU11は、データ内容テーブル71から、パケット番号順に各パケット番号の内容部のデータを取得する(ステップ(以下、Sと略す)1)。CPU11は、再送要否参照テーブル72を参照して、取得した内容部のデータが再送フラグを「1」にすべきデータを含むか否かを判断する(S2)。取得した内容部のデータが再送フラグを「1」にすべきデータを含む場合は、S2でYESとなって、CPU11は、そのパケット番号に対応する再送管理テーブル73の再送フラグを、「1」とする。取得した内容部のデータが再送フラグを「0」にすべきデータを含む場合は、S2でNOとなって、CPU11は、そのパケット番号に対応する再送管理テーブル73の再送フラグを、「0」とする。
S3及びS4の処理の後は、CPU11は、データ内容テーブル71の全てのパケット番号の内容部のデータについてチェックしたか否かを判断する(S5)。全てのパケット番号の内容部のデータについてチェックしていないときは、処理は、S1に戻る。全てのパケット番号の内容部のデータについてチェックし終わったときは、処理は、終了する。図7の処理が、再送要否データ生成手段を構成する。
サーバ1は、以上のようにして、再送管理テーブル73を生成し、記憶装置12あるいはRAM14にストアし、この再送管理テーブル73を利用して、後述する再送要求があったときに、再送要求のあった転送単位のパケットデータを再送するか否かを判断する。
以上で、サーバ1の記憶装置12には、図3に示すような複数のパケットデータからなるコンテンツ41のデータと、再送管理テーブル73とがストアされている状態にある。このような状態において、例えば、ユーザがクライアント2のリモコン(図示せず)等を操作して、クライアント2のディスプレイ30でコンテンツ41の映像を観たい旨のコマンド信号がクライアント2へ供給されると、クライアント2は、コンテンツ41の圧縮データの送信要求データをサーバ1へ送信する。サーバ1は、その送信要求データに応じて、コンテンツ41のデータをクライアント2へ送信する。このとき、コンテンツ41は、分割されたパケットデータとして送信される。
サーバ1は、この送信管理テーブル73を生成した後に、上述したUDPプロトコルを利用して、コンテンツ41のデータをクライアント2へ送信する。
送信されたパケットデータは、クライアント2においてネットワークI/F24を介して受信され、クライアント2のCPU21は、受信されたパケットデータに抜けがないかをチェックする。受信されたパケットデータに抜けがあれば、CPU21は、抜けたパケットデータの再送要求を、サーバ1へ送信する。
図8は、クライアント2において、受信したパケットデータに抜けがあるか否かをチェックし、抜けがあったときに再送要求を行う処理の流れの例を示すフローチャートである。
クライアント2のネットワークI/F24では、受信したパケットデータをCPU21へ供給する。CPU21は、所定の数のパケットデータ毎に、パケットデータに抜けがあるか否かをチェックする(S11)。そして、受信したパケットデータに抜けがあるか否かを判断し(S12)、抜けが有る場合は、S12でYESとなって、CPU21は、抜けたパケットデータのパケット番号と共にそのパケットデータの再送要求を、サーバ1へ送信する(S13)。受信したパケットデータに抜けがない場合は、S12でNOとなって、CPU21は、処理は何もしない。図8の処理は、所定の数のパケットデータ毎に実行される。図8において、S11がデータ抜け判断手段を構成し、S12及びS13が再送要求手段を構成する。
図9は、サーバ1において、クライアント2から再送要求があったときに、再送要求のあったデータを送信する処理の流れの例を示すフローチャートである。
図9の処理は、サーバ1がクライアント2から再送要求を受信すると実行される。再送要求を受信すると、CPU11は、再送要求に係るパケットデータが、再送の必要なデータか否かを、再送管理データ73に基づいて、判断する(S21)。再送要求に係るパケットデータが、再送の必要なデータであるか否かの判断は、再送管理データ73において、再送要求に係るパケットデータのパケット番号について、再送フラグが「1」となっているか否かによって判断することができる。
再送要求に係るパケットデータが、再送の必要なデータである場合は、S21でYESとなって、再送要求のあった転送単位のパケットデータを再送する(S22)。再送要求に係るパケットデータが、再送の必要なデータでない場合は、S21でNOとなって、再送要求のあった転送単位のパケットデータは、再送しない旨のメッセージデータを送信する(S23)。図9の処理が、送信単位データ再送手段を構成する。
なお、S23では、再送しない旨のメッセージデータを送信しているが、何も送信しないようにしてもよい。その場合、クライアント2から再送要求が複数回送信されることがあるかもしれないが、MPEG2デコーダ28におけるデコード処理が終了したものについては、再送要求されないようにすれば、必要以上の回数の再送要求がクライアント2からサーバ1へ送信されることはない。
図10は、図8と図9の処理によってどのようなデータがサーバ1とクライアント2の間で送受信されるかの例を説明するための図である。
図10は、クライアント2が、予め決められた数のパケットデータ毎にパケットデータの抜けの有無をチェックし、サーバ1から送信されたパケットデータのうち、パケット番号「4」のデータがクライアント2へ送信できなかった場合を示している。その場合、クライアント2は、サーバ1へパケット番号が「4」のパケットデータを再送するように、サーバ1へ再送要求を送信する。サーバ1は、再送管理テーブル73を参照して、再送の要否を判断し、再送が必要な場合は、そのデータをクライアント2へ再送し、再送が必要でない場合は、その旨を示すメッセージをクライアント2へ送信する。
以上のように、本実施の形態によれば、サーバ1では、再送要求のあった転送単位のパケットデータについて、再送管理テーブル73に基づいて再送が必要であるか否かを判断し、再送が必要な転送単位のパケットデータについてのみ、クライアント2へ再送する。このとき、再送管理テーブル73には、映像の途切れ等が生じる虞のある、すなわち映像又は音声の再生に大きな影響のあるデータを含む場合には、再送が行われるようにするための再送フラグが設定されているので、クライアント2において、映像等の途切れ、バズ音などが少ないコンテンツの再生が行われるので、ユーザは、高品位の映像等を視聴することができる。
本実施の形態における図3におけるパケットデータは、図4におけるRTPの転送単位データであるが、通信プロトコルにおいてRTP以上のアプリケーション層に対応する転送単位データであってもよい。
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。第2の実施の形態に係る圧縮データ送信システムの構成は、第1の実施の形態と略同一の構成であるので、同一の構成要素については、同一の符号を付してその詳細な説明は省略し、異なる点を主に説明する。
次に、本発明の第2の実施の形態について説明する。第2の実施の形態に係る圧縮データ送信システムの構成は、第1の実施の形態と略同一の構成であるので、同一の構成要素については、同一の符号を付してその詳細な説明は省略し、異なる点を主に説明する。
第1の実施の形態では、抜けのあったパケットデータの再送の要否は、サーバ1によって判断されていたが、第2の実施の形態では、クライアント2によって判断される点が異なる。
第2の実施の形態では、サーバ1が再送管理テーブル73を生成すると、その再送管理テーブル73のデータを、クライアント2へ、コネクション型の転送プロトコル、例えばTCPプロトコルを用いて送信する。TCPプロトコルはコネクション型の転送プロトコルであるので、TCPプロトコルの有する再送フロー制御等によって、再送管理テーブル73のデータは、クライアント2へ確実に送信される。CPU11、記憶装置12及びネットワークI/F15が、参照テーブルである再送管理データを送信する参照テーブル送信手段を構成する
クライアント2側において、ユーザが、上述したようにリモコン等を操作して、コンテンツ41の送信要求をサーバ1へ送信すると、サーバ1は、コネクションレス型の通信プロトコルであるUDPプロトコルを利用して、クライアント2へコンテンツ1のデータを送信する。
クライアント2側において、ユーザが、上述したようにリモコン等を操作して、コンテンツ41の送信要求をサーバ1へ送信すると、サーバ1は、コネクションレス型の通信プロトコルであるUDPプロトコルを利用して、クライアント2へコンテンツ1のデータを送信する。
クライアント2は、受信したパケットデータに抜けがあるか否かをチェックし、抜けがあれば、その抜けのあったパケットデータが再送が必要な転送単位のパケットデータであるか否かを、TCPプロトコルによって前もって受信して得ている再送管理テーブルデータ73に基づいて判断する。そして、再送が必要なパケットデータであるときは、クライアント2は、サーバ1へ再送要求を行う。
図11は、クライアント2において、受信したパケットデータに抜けがあるか否かをチェックし、抜けがあったときに再送要求が必要な否かを判断して、再送要求を行う処理の流れの例を示すフローチャートである。なお、以下に説明する図11の処理は、ROM22にプログラムとしてストアされており、CPU21がそのプログラムをRAM23に読み出すことによって、実行される。
クライアント2のネットワークI/F24では、受信したパケットデータをCPU21へ供給する。CPU21は、所定の数のパケットデータ毎に、パケットデータに抜けがあるか否かをチェックする(S31)。そして、受信したパケットデータに抜けがあるか否かを判断し(S32)、抜けが有る場合は、S32でYESとなって、CPU21は、抜けたパケットデータが再送の必要があるか否かを判断する(S33)。抜けたパケットデータが再送の必要があるか否かの判断は、受信した再送管理テーブル73に基づいて判断される。具体的には、抜けたパケットデータのパケット番号に対応する再送フラグが「1」であるか否かによって、再送の要否が判断され、再送フラグが「1」であれば、S33でYESとなって、クライアント2は、抜けたパケットデータのパケット番号と共にそのパケットデータの再送要求を、サーバ1へ送信する(S34)。
また、受信したパケットデータに抜けが無い場合、及び受信したパケットデータに抜けがあっても再送フラグが「1」でない場合は、S34の処理は実行しないで処理は、終了する。図11の処理も、所定の数の受信したパケットデータ毎に実行される。
そして、サーバ1は、再送要求をクライアント2から受信すると、再送要求に係る転送単位のパケットデータをUDPプロトコルを利用して再送する。
図12は、図11の処理によってどのようなデータがサーバ1とクライアント2の間で送受信されるかの例を説明するための図である。
図12は、サーバ1から送信されたパケットデータのうち、パケット番号「4」のデータがクライアント2へ送信できなかった場合を示している。クライアント2は、予め決められた数のパケットデータ毎に、パケットデータの抜けの有無をチェックし、さらに、抜けたパケットデータが再送が必要か否かを判断し、再送が必要なパケットデータのみ、サーバ1へ再送要求を行う場合を示している。すなわち、クライアント2は、サーバ1へ抜けた全てのパケットデータの再送要求を行うのではなく、再送管理テーブル73を参照して再送が必要なパケットデータのみ、コネクションレス型の通信プロトコルであるUDPプロトコルを利用して、再送要求を行う。ここでは、パケット番号が「4」のパケットデータに係る再送フラグは「1」であるので、パケット番号が「4」のパケットデータを再送するように、サーバ1へ再送要求を送信する。再送が必要でない場合は、クライアント2は、再送要求をサーバ1へ送信しない。
以上のように、本実施の形態によれば、クライアント2は、転送単位のパケットデータについて、再送管理テーブル73に基づいて再送が必要であるか否かを判断し、再送が必要な転送単位のパケットデータについてのみ、サーバ1へ再送要求を行う。従って、再送管理テーブル73には、映像の途切れ等が生じる虞のある、すなわち映像又は音声の再生に大きな影響のあるデータを含む場合には、再送が行われるようにするための再送フラグが設定されているので、第1の実施の形態と同様に、クライアント2において、映像等の途切れ、バズ音などが少ないコンテンツの再生が行われるので、ユーザは、高品位の映像等を視聴することができる。
以上説明した第1及び第2の実施の形態によれば、コネクションレス型の通信プロトコルを利用して映像等の圧縮データを送信する場合に、出来るだけ映像の途切れ等が生じないようにするための圧縮データ送信装置を実現することができる。
なお、上述した2つの実施の形態における再送管理テーブル73の再送フラグは、再送の要否を「1」又は「0」の2つの状態を有していたが、再送管理テーブル73の再送フラグは、圧縮データの映像又は音声の再生への影響の度合いに応じた優先度のレベルを示すフラグあるいはコードのデータであってもよい。
上述したように、MPEG2システムでは、映像のビットストリームデータには、3種類のピクチャがあり、それぞれIピクチャ、Pピクチャ及びBピクチャと呼ばれている。フレーム内の情報のみで、圧縮符号化が行われるIピクチャが最も符号量が多く、過去のフレームを利用して圧縮を行うPピクチャ、過去と未来の双方向フレームを利用して圧縮を行うBピクチャの順に符号量が少なくなる。従って、クライアント2からの再送要求において、どこまでサーバ1が応えるかに応じて、転送エラー時のコンテンツの再生品位が決定される。
すなわち、再生品位を決める映像等の情報に優先順位をつけ、その優先順位に従って再送要求あるいは再送するように、サーバ1とクライアント2との間で予め取り決めておく。例えば、レベル1として音声データは再送し、レベル2としてレベル1に加えてピクチャヘッダ情報を再送し、レベル3としてレベル2に加えてIピクチャを再送し、レベル4としてレベル3に加えてPピクチャを再送する、等々の複数のレベルを設定する。そして、サーバ1とクライアント2は、どのレベルで再送あるいは再送要求をするかを予め決定し、その決定されたレベルに応じて、再送要否参照テーブルを設定して、再送管理テーブルを生成する。その再送管理テーブルに基づいて、再送又は再送要求がされることによって、予め決定した優先順位に応じた再生品位の映像が再生されることになる。
次に、この優先度の具体的な別の例を説明する。図13は、そのような優先度のレベルを示すフラグ有する再送管理テーブルを生成する手順を説明するための図である。上述したように、データ内容テーブル71は、パケット番号部と、データの内容を示す内容部とからなるテーブルデータである。このデータ内容テーブル71と再送要否参照テーブル92とに基づいて、再送管理テーブル93が生成される。再送要否参照テーブル92は、データの内容に応じて、再送フラグを再送が必要である旨を示す「2」にするか、ネットワーク3のトラフィックに予め決められた閾値以上の余裕があるときは再送する旨を示す「1」にするか、あるいは再送が不要である旨を示す「0」にするかを決定するための参照テーブルである。再送管理テーブル93は、各パケット毎に決定された、優先度レベルを有する再送フラグを含むテーブルである。サーバ1は、再送要否参照テーブル92を参照しながら、データ内容テーブル71から、再送管理テーブル93を生成する。
この再送要否参照テーブル92の内容は、パケットデータに含まれる転送単位データが、MPEG2の映像再生において、映像の途切れ等が生じる虞のある、すなわち映像又は音声の再生に大きな影響のあるデータを含む場合には、再送が必要であるとして、再送フラグが「2」に予めセットされ、再送が必要であるが、トラフィックに余裕があるときは再送が必要であるとして、再送フラグが「1」に予めセットされ、再生に大きな影響のあるデータを含まない場合には、再送が不要であるとして、再送フラグが「0」に予めセットされるように、設定される。従って、MPEG2のシーケンスヘッダ、Iピクチャ等の、そのデータが抜けると、再生に大きな影響のあるデータについては、再送フラグが「2」に設定されている。
トラフィックに予め決められた閾値以上の余裕があるか否かを判断するために、トラフィックモニタが、第1の実施の形態の場合はサーバ1に、第2の実施の形態であればクライアント2に設けられる。そして、第1の実施の形態の場合は、サーバ1は、再送要求のあったパケットデータに係る再送フラグが、「2」のときはそのパケットデータを再送し、「0」のときはそのパケットデータを再送しないが、「1」のときはトラフィックモニタからのトラフィックの状態が、予め決められた閾値以上の余裕があるときはそのパケットデータを再送する。
第2の実施の形態の場合は、クライアント2は、抜けたパケットデータに係る再送フラグが、「2」のときはそのパケットデータの再送要求を送信し、「0」のときはそのパケットデータの再送要求を送信しないが、「1」のときはトラフィックモニタからのトラフィックの状態が、予め決められた閾値以上の余裕があるときはそのパケットデータの再送要求を送信する。
以上のように、再送するパケットデータの優先度を、再送管理テーブルに設定することによって、その優先度に応じて、抜けたパケットデータの再送が行われるようにすることができる。
さらに、なお、上述した2つの実施の形態では、屋内等のサーバからコンテンツの圧縮データが、クライアントに送信される例であるが、クライアントとサーバが、インターネットを介して接続されているような場合であっても、本発明は適用できるものである。図14は、インターネットを介してサーバとクライアントが接続されているシステムを示す構成図である。図14に示すように、コンテンツのデータを蓄積しているサーバ101と、クライアント102が、インターネット103を介して、上述したようなコネクションレス型の通信プロトコルを利用して接続されている。これらのサーバ101とクライアント102は、第1又は第2の実施の形態において説明したような再送管理テーブルに基づいて、再送要求を行う。
以上のように、本発明の実施の形態によれば、コネクションレス型の通信プロトコルを利用して映像等の圧縮データを送信した場合に、映像の途切れ等ができるだけ生じないようにすることができる。
なお、以上説明した動作を実行するプログラムは、フロッピー(登録商標)ディスク、CD−ROM等の可搬媒体や、ハードディスク等の記憶装置等に、その全体あるいは一部が記録され、あるいは記憶されている。そのプログラムがコンピュータにより読み取られて、動作の全部あるいは一部が実行される。あるいは、そのプログラムの全体あるいは一部を通信ネットワークを介して流通または提供することができる。利用者は、通信ネットワークを介してそのプログラムをダウンロードしてコンピュータにインストールしたり、あるいは記録媒体からコンピュータにインストールすることで、容易に本発明の圧縮データ送信システムを実現することができる。
本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
本発明は、家庭内の通信環境だけでなく、家庭内以外の他の通信環境においても適用できるものである。
1、101 サーバ、2、102 クライアント、3 ネットワーク、41 コンテンツデータ、71 データ内容テーブル、72、92 参照テーブル、73,93 再送管理テーブル
代理人 弁理士 伊 藤 進
代理人 弁理士 伊 藤 進
Claims (8)
- コネクションレス型の通信プロトコルを利用して圧縮データを送信する圧縮データ送信装置であって、
所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信する送信単位データ送信手段と、
分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する再送要否データ生成手段と、
を有することを特徴とする圧縮データ送信装置。 - 前記送信単位は、前記コネクションレス型の通信プロトコルにおける転送パケットの単位であることを特徴とする請求項1に記載の圧縮データ送信装置。
- さらに、送信した前記送信単位データについて再送要求を受信すると、再送要求に係る前記送信単位データを再送する送信単位データ再送手段とを有することを特徴とする請求項1又は請求項2に記載の圧縮データ送信装置。
- 前記再送要否データ生成手段は、前記圧縮データの映像又は音声の再生への影響の度合いに応じて再送の要否が予め設定された参照テーブルに基づいて、前記再送要否データを生成することを特徴とする請求項1から請求項3のいずれかに記載の圧縮データ送信装置。
- 前記参照テーブルに設定される前記再送の要否に係るデータは、前記影響の度合いに応じた優先度のデータであることを特徴とする請求項4に記載の圧縮データ送信装置。
- センタ装置からコネクションレス型の通信プロトコルを利用して圧縮データを端末装置へ送信する圧縮データ送信システムであって、
前記センタ装置は、
所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信する送信単位データ送信手段と、
分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する再送要否データ生成手段と、
を有し、
前記端末装置は、
前記センタ装置から送信された前記送信単位データを受信する送信単位データ受信手段と、
受信した前記送信単位データに抜けがあるか否かを判断するデータ抜け判断手段と、
データに抜けがあったときに、前記センタ装置へ再送要求を送信する再送要求送信手段と、
を有することを特徴とする圧縮データ送信システム。 - センタ装置からコネクションレス型の通信プロトコルを利用して圧縮データを端末装置へ送信する圧縮データ送信方法であって、
前記センタ装置は、
所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信し、
分割された送信単位データ毎に、再送の要否を示す再送要否データを生成し、
前記端末装置は、
前記センタ装置から送信された前記送信単位データを受信し、
受信した前記送信単位データに抜けがあるか否かを判断し、
データに抜けがあったときに、前記センタ装置へ再送要求を送信することを特徴とする圧縮データ送信方法。 - センタ装置からコネクションレス型の通信プロトコルを利用して圧縮データを端末装置へ送信する圧縮データ送信方法を実現するためのプログラムであって、
前記センタ装置が、所定の送信単位の送信単位データに分割された前記圧縮データを前記通信プロトコルを利用して送信し、分割された送信単位データ毎に、再送の要否を示す再送要否データを生成する機能と、
前記端末装置が、前記センタ装置から送信された前記送信単位データを受信し、受信した前記送信単位データに抜けがあるか否かを判断し、データに抜けがあったときに、前記センタ装置へ再送要求を送信する機能と、
を実現するためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003428181A JP2005191735A (ja) | 2003-12-24 | 2003-12-24 | 圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003428181A JP2005191735A (ja) | 2003-12-24 | 2003-12-24 | 圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005191735A true JP2005191735A (ja) | 2005-07-14 |
Family
ID=34787262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003428181A Pending JP2005191735A (ja) | 2003-12-24 | 2003-12-24 | 圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005191735A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007214755A (ja) * | 2006-02-08 | 2007-08-23 | Mitsubishi Electric Corp | データ通信方法 |
JP2014090433A (ja) * | 2006-04-12 | 2014-05-15 | Tq Delta Llc | パケット再送信ならびにメモリの共有 |
US9069718B2 (en) | 2004-10-12 | 2015-06-30 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
-
2003
- 2003-12-24 JP JP2003428181A patent/JP2005191735A/ja active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10409510B2 (en) | 2004-10-12 | 2019-09-10 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US11543979B2 (en) | 2004-10-12 | 2023-01-03 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US9069718B2 (en) | 2004-10-12 | 2015-06-30 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US11010073B2 (en) | 2004-10-12 | 2021-05-18 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US9286251B2 (en) | 2004-10-12 | 2016-03-15 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US10579291B2 (en) | 2004-10-12 | 2020-03-03 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US9547608B2 (en) | 2004-10-12 | 2017-01-17 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
US9898220B2 (en) | 2004-10-12 | 2018-02-20 | Tq Delta, Llc | Resource sharing in a telecommunications environment |
JP4583318B2 (ja) * | 2006-02-08 | 2010-11-17 | 三菱電機株式会社 | データ通信方法 |
JP2007214755A (ja) * | 2006-02-08 | 2007-08-23 | Mitsubishi Electric Corp | データ通信方法 |
US9749235B2 (en) | 2006-04-12 | 2017-08-29 | Tq Delta, Llc | Packet retransmission |
US10044473B2 (en) | 2006-04-12 | 2018-08-07 | Tq Delta, Llc | Packet retransmission and memory sharing |
US10484140B2 (en) | 2006-04-12 | 2019-11-19 | Tq Delta, Llc | Packet retransmission and memory sharing |
US10498495B2 (en) | 2006-04-12 | 2019-12-03 | Tq Delta, Llc | Packet retransmission |
US9485055B2 (en) | 2006-04-12 | 2016-11-01 | Tq Delta, Llc | Packet retransmission and memory sharing |
US10833809B2 (en) | 2006-04-12 | 2020-11-10 | Tq Delta, Llc | Techniques for packet and message communication in a multicarrier transceiver environment |
US9094348B2 (en) | 2006-04-12 | 2015-07-28 | Tq Delta, Llc | Packet retransmission |
US11362765B2 (en) | 2006-04-12 | 2022-06-14 | Tq Delta, Llc | Packet retransmission using one or more delay requirements |
JP2014090433A (ja) * | 2006-04-12 | 2014-05-15 | Tq Delta Llc | パケット再送信ならびにメモリの共有 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1130921B1 (en) | Data transmission in non-reliable networks | |
JP3931595B2 (ja) | データ修正装置及びデータ修正方法 | |
KR101001514B1 (ko) | 송수신 시스템 및 수신 장치 | |
US9565482B1 (en) | Adaptive profile switching system and method for media streaming over IP networks | |
JP2017130955A (ja) | デジタル放送システムにおけるデータを受信する装置 | |
US9781488B2 (en) | Controlled adaptive rate switching system and method for media streaming over IP networks | |
JP2002141945A (ja) | データ送信装置、およびデータ送信方法、並びにプログラム記憶媒体 | |
JP2007143113A (ja) | 送受信システム、送信装置、および送信方法 | |
KR20100050516A (ko) | 네트워크에서의 데이터 콘텐츠 스트리밍 | |
JP2009021783A (ja) | 送信装置、受信装置、誤り訂正システム、送信方法及び誤り訂正方法 | |
US9621617B2 (en) | Method and server for sending a data stream to a client and method and client for receiving a data stream from a server | |
JP2007150916A (ja) | コミュニケーションシステム、端末装置及びコンピュータプログラム | |
JP2009512265A (ja) | ネットワーク上の動画データ伝送制御システムとその方法 | |
JP2010028378A (ja) | 通信装置及び通信方法 | |
CN109862400B (zh) | 一种流媒体传输方法、装置及其系统 | |
JP4488958B2 (ja) | 映像伝送システム及び映像伝送方法 | |
JP2007502585A (ja) | データ技術領域を送信する装置、システムおよび方法 | |
EP1298926A1 (en) | Information presentation device and method | |
JP2005191735A (ja) | 圧縮データ送信装置、圧縮データ送信システム、圧縮データ送信方法及びプログラム | |
JP6592864B2 (ja) | 映像送信装置、映像受信装置、映像配信システム、映像送信装置の制御方法、及び、プログラム | |
JP2002314583A (ja) | 中継方法および中継装置 | |
JP5159973B1 (ja) | 伝送パケットの配信方法 | |
JP2004350252A (ja) | 圧縮動画像情報の伝送方法 | |
JP7264517B2 (ja) | 送信装置、受信装置、制御方法、およびプログラム | |
EP4319176A1 (en) | Method for transmitting streaming media data and related device |