JP3912091B2 - データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム - Google Patents

データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP3912091B2
JP3912091B2 JP2001369731A JP2001369731A JP3912091B2 JP 3912091 B2 JP3912091 B2 JP 3912091B2 JP 2001369731 A JP2001369731 A JP 2001369731A JP 2001369731 A JP2001369731 A JP 2001369731A JP 3912091 B2 JP3912091 B2 JP 3912091B2
Authority
JP
Japan
Prior art keywords
data
packet
retransmission request
retransmission
data packet
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
JP2001369731A
Other languages
English (en)
Other versions
JP2003169040A (ja
JP2003169040A5 (ja
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2001369731A priority Critical patent/JP3912091B2/ja
Priority to KR20020076260A priority patent/KR100967377B1/ko
Priority to US10/310,212 priority patent/US7315898B2/en
Publication of JP2003169040A publication Critical patent/JP2003169040A/ja
Publication of JP2003169040A5 publication Critical patent/JP2003169040A5/ja
Application granted granted Critical
Publication of JP3912091B2 publication Critical patent/JP3912091B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラムに関する。さらに詳細には、ストリーミングデータ転送におけるエラー耐性を高めたパケット送信構成を持つデータ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラムに関する。
【0002】
【従来の技術】
昨今、インターネット通信など、様々な通信媒体を介した画像、音声データ等のデータ転送が盛んに行われている。特に、近年においては、インターネット上のデータ転送において、従来から利用されているダウンロード型伝送方式に加えて、ストリーム型伝送方式によるサービスが増加してきている。ダウンロード型伝送方式においては、映像ファイルや音声ファイルといったマルチメディアデータを伝送する場合、配信サーバからデータファイルを一旦受信側端末の記憶媒体にダウンロードして、その後、記憶媒体から再生することになる。よって、この方式ではファイルを完全に転送が終わるまでは再生できず、長時間再生やリアルタイム再生などには不向きである。
【0003】
一方、後者のストリーム型伝送方式では、送信側から受信端末にデータ転送が行われている間に、並列して受信データの再生処理を実行するものであり、インターネット電話・遠隔テレビ会議・ビデオオンデマンドといったインターネットサービスに利用されている。
【0004】
ストリーム型伝送方式は、例えば画像データのMPEG圧縮処理により生成されるMPEGストリームをIP(Internet Protocol)パケットに格納してインターネット上を転送させて、PCやPDA、携帯電話等の各通信端末において受信するシステム等において使用され、開発が進んでいる。このような技術は、ビデオオンデマンドやライブ映像のストリーミング配信、あるいはビデオ会議、テレビ電話などのリアルタイム通信において有効となる。
【0005】
このようなストリーム型伝送方式に適したインターネット技術に、IETF RFC1889で規定されているプロトコル:RTP(Realtime Transport Protocol)がある。RTPに従ったデータ転送では、時間情報としてパケットにタイムスタンプを付加し、タイムスタンプの参照により送信側と受信側の時間的関係の把握を行ない、データ受信側において、パケット転送の遅延ゆらぎ(ジッター)などの影響を受けずに同期をとった再生を可能としている。
【0006】
ただし、RTPは実時間のデータ転送を保証しているものではない。パケット配送の優先度や設定、管理などはRTPが提供するトランスポートサービスの範疇ではないため、RTPパケットは、他のパケットと同様、ネットワーク上での配送遅延やパケット損失がおきる可能性がある。しかし、このような事態が起こっても、受信側は期待する時間内に到着したパケットだけを利用してデータを再生することが可能である。これは、映像や音声データが多少のデータ欠損があったとしても、データ品質を落とした再生、あるいはデータ補正処理による再生が可能となるからである。
【0007】
なお、再生に間に合わず遅延配送されたパケットやエラーの発生したパケットは、受信側でそのまま破棄される。つまり、パケット損失やエラーが発生した場合は、高品質なデータ配信処理を行なっている場合でも、受信側で品質を保持した再生が実行されないという問題点がある。特に、有線区間で10−5、無線区間で10−3以上のエラーがあるといわれている中では、配信するメディアの品質保持を考慮すると、RTPをそのまま利用したデータ転送には問題がある。
【0008】
このようなRTPに従ったデータ転送における問題点を解決する1つの案としては、データ転送に信頼性が高いデータ転送プロトコルであるTCPに従ってパケットの再送要求および再送パケット送信を行わせる方法が考えられる。しかし、TCPはエラーには強いが、スループットが低く、遅延が大きいため、再送しても再生時間に間に合わない可能性があり、リアルタイム通信の実現を困難とするという問題がある。
【0009】
さらに、パケットエラー等に対応するエラー訂正手法として、例えばFEC(Forward Error Correction)という手段が考えられている。これは誤り訂正を行うためのFECデータを冗長データとして送信して、エラーが発生した場合には、データ受信側において、このFECデータをもとにエラーの修復を実行しようとするものである。先のARQによるパケット再送処理に比べると再送にかかる遅延がない分、遅延時間を低く抑えられるが、冗長データを付加するためにスループットが低下するという問題がある。また、ネットワーク状況に合わせた最適な付加FECデータを決定するのは難しく、処理時間のオーバーヘッドが常につきまとうなどの問題が存在する。
【0010】
【発明が解決しようとする課題】
本発明は、上述の問題点に鑑みてなされたものであり、ビデオオンデマンドや、遠隔テレビ会議のような、リアルタイム再生が望まれるデータ転送処理を効率的に実行可能とかるとともに、パケット損失等のエラー発生時にも品質の低下を抑えて高品質なデータ再生を実現するデータ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラムを提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明の第1の側面は、
データ送信装置およびデータ受信装置からなり、ストリーム型データ転送を実行するデータ通信システムであり、
データ送信装置は、
送信データを格納したデータパケットを送信するパケット送信処理部と、
データ受信装置から受信する再送要求メッセージパケットに従って再送すべきデータパケットの抽出処理を実行する再送制御部とを有し、
データ受信装置は、
前記データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
前記再送要求処理制御部は、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行する構成を有することを特徴とするデータ通信システムにある。
【0025】
さらに、本発明の第の側面は、
ストリーム型データ受信を実行するデータ受信装置であり、
データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
前記再送要求処理制御部は、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行する構成を有することを特徴とするデータ受信装置にある。
【0026】
さらに、本発明のデータ受信装置の一実施態様において、前記データ・パケットの格納データは、符号化データであり、前記再送要求処理制御部は、再送要求に基づく再送データパケット受信が、再送データパケット格納データの復号処理を含む再生に伴う処理開始時間前に可能か否かを判定する構成であることを特徴とする。
【0027】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置は、再送要求データパケットの識別データとしてのシーケンス番号と、該シーケンス番号に対応するデータパケットの重複再送の指定回数データを格納した再送要求メッセージパケットを生成して前記データ送信装置に送信する構成を有することを特徴とする。
【0028】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置の受信するデータパケットは、動画像データであり、前記再送要求処理制御部は、動画像データの1画像フレームの構成データを格納した複数のデータパケットの終端データパケットの受信に応じて、該終端データパケットの属する画像フレームの構成データを格納した複数のデータパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする。
【0029】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置の受信するデータパケットは、動画像データであり、前記再送要求処理制御部は、動画像データの1画像フレームの構成データを格納した複数のデータパケットの先頭データパケットの受信に応じて、該先頭データパケットの属する画像フレームの前フレームの構成データを格納した複数のデータパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする。
【0030】
さらに、本発明のデータ受信装置の一実施態様において、前記再送要求処理制御部は、データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする。
【0031】
さらに、本発明のデータ受信装置の一実施態様において、前記再送要求処理制御部は、定期的な時間間隔に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする。
【0032】
さらに、本発明のデータ受信装置の一実施態様において、前記再送要求処理制御部は、前記データ送信装置とデータ受信装置における往復伝播遅延(RTT)の計測処理のために前記データ送信装置に対するエコーパケットの送信および該エコーパケットに対するエコーリプライパケットの受信処理制御を実行し、該エコーパケットに基づいて算出する往復伝播遅延(RTT)に基づいて、再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生処理開始時間前に可能か否かを判定する構成を有することを特徴とする。
【0033】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置は、再送要求データパケットの識別データとしてのシーケンス番号、またはパケットの属するタイムスタンプ指定データの少なくともいずれかと、再送要求範囲を指定するオプションを格納した再送要求メッセージパケットを生成して前記データ送信装置に送信する構成を有することを特徴とする。
【0034】
さらに、本発明のデータ受信装置の一実施態様において、前記データパケットは、データ転送プロトコルとしてのRTPに従ったフォーマットを有し、前記再送要求は、制御プロトコルとしてのRTCPに従ったフォーマットを有することを特徴とする。
【0035】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置は、複数のデータパケットに関する再送要求を1つの再送要求メッセージパケットとしてデータ送信装置に対して送信する構成であることを特徴とする。
【0036】
さらに、本発明のデータ受信装置の一実施態様において、前記データ受信装置は、複数のデータパケットに関する受信確認を1つの受信確認メッセージパケットとしてデータ送信装置に対して送信する構成であることを特徴とする。
さらに、本発明の第3の側面は、
ストリーム型データ受信を実行するデータ受信装置であり、
データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
前記再送要求処理制御部は、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージパケットの送信処理を実行し、当該送信処理に際して、前記データパケット受信時におけるパケットロス率に基づいて前記再送要求メッセージパケットの送信回数を変化させ、パケットロス率が一定値以上になった場合は、前記再送要求メッセージパケットの送信回数を増加させる処理を行なう構成を有すると共に、
データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成を有することを特徴とするデータ受信装置にある。
さらに、本発明の第4の側面は、
ストリーム型データ受信を実行するデータ受信装置であり、
データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
前記再送要求処理制御部は、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、再送要求送信を決定すると共に、前記再送要求メッセージパケットに対して該再送要求メッセージパケットの再送回数を記述する構成を有するとともに、
データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成を有することを特徴とするデータ受信装置にある。
【0037】
さらに、本発明の第の側面は、
ストリーム型データ受信を実行するデータ受信方法であり、
データ送信装置から受信するデータパケットを受信するパケット受信処理ステップと、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御ステップとを有し、
前記再送要求処理制御ステップは、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行するステップを有することを特徴とするデータ受信方法にある。
【0049】
さらに、本発明の第の側面は、
データ受信装置において、ストリーム型データ受信処理を実行させるコンピュータ・プログラムであって、
データ送信装置から受信するデータパケットを受信するパケット受信処理ステップと、
前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御ステップとを有し、
前記再送要求処理制御ステップは、
再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行させるステップを有することを特徴とするコンピュータ・プログラムにある。
【0050】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0051】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0052】
【発明の実施の形態】
[システム及びデータ送受信概要]
まず、図1を参照して、本発明のシステム概要及びデータ送受信処理の概要について説明する。
【0053】
図1のデータ通信システムにおいて、送信側端末104は受信側端末121に対して画像、音声等のデータをパケット化して送信する。転送データは、例えばビデオカメラ101によって取得された画像、音声データである。なお、転送データは、CD,DVD等の記憶媒体から入力されるデータ、あるいは外部ネットワーク、衛星等から受信するデータ等であってもよい。なお、以下の説明では、1つの例として送信側端末104から受信側端末121へビデオカメラ101によって取得された動画像データを転送する構成を中心として説明する。
【0054】
ビデオカメラ101によって取得された動画像データは、送信側端末104の符号化装置102により符号化、例えばMPEG圧縮処理等による符号化がなされて、バッファ103に蓄積される。バッファ103に蓄積された符号化データは、リアルタイム・トランスポート・プロトコル:RTP(Real-time Transport Protocol)に従ったデータ・パケット(以下パケットと称する)を生成するRTPパケット作成部106に出力され、符号化データを格納したRTPパケットのパケット生成処理が実行される。RTPパケット作成部106において生成された符号化データを格納したRTPパケットは、RTPプロトコルを通じてRTPパケット出力ポート110からIPネットワーク111に送出される。送信側端末104のRTPパケット作成部106およびRTPパケット出力ポートによってパケット送信処理部が構成される。
【0055】
RTPパケット作成部106は、符号化データをペイロードとしたパケットを生成する処理を実行する。ペイロードデータに対して、RTPヘッダを付加しパケット化する。RTPパケット構成を図2に示す。RTPヘッダには、バージョン番号(v)、パディング(P)、拡張ヘッダ(X)の有無、送信元数(Counter)、マーカ情報(marker bit)、ペイロードタイプ(Payload type)、シーケンス番号、タイムスタンプ、同期ソース(送信元)識別子(SSRC)および貢献ソース(送信元)識別子(CSRC)の各フィールドが設けられている。データ受信側において、RTPヘッダに付与されたタイムスタンプによりRTPパケットの展開時に処理時間の制御が実行され、リアルタイム画像、または音声の再生制御が可能となる。なお、例えば動画像データの符号化データを格納したRTPパケットにおいては、1つの画像フレームに属する複数のRTPパケットに共通のタイムスタンプが設定され、各フレームを構成する終端パケットには、終端であることを示す識別フラグがRTPヘッダに格納される。
【0056】
RTPヘッダを付加されたパケットはさらにIPヘッダが付与される。図3にIPパケットの構成中のIPヘッダの詳細を示す。IPv4、IPv6等のバージョンを示すバージョン、ヘッダ長、さらに、優先度情報を格納したTOS(Type of Service)フィールド、パケットの長さ、パケットの識別子、IP層でのデータ分割(フラグメント)に関する制御情報としてのフラグ、分割(フラグメント)されたデータの場所を示す断片オフセット、データの破棄までの時間情報を示すTTL(Time to Live)、上位層で利用されるプロトコル(4:IP,TCP:7,UDP:17…)ヘッダのチェックサム、送信元IPアドレス、宛て先IPアドレスを有する。
【0057】
図1に戻り、データ受信処理について説明する。受信側端末121のRTPパケット入力ポート112は、IPネットワーク111を介して送信側端末104からのRTPパケットを受信する。受信したRTPパケットは、パケット解析部114においてパケットの解析が実行される。受信側端末121のRTPパケット入力ポート112および、パケット解析部114によってパケット受信処理部が構成される。パケット解析部114は、具体的にはパケット内のヘッダ部、データ部についての解析が実行される。パケットから取り出されたペイロードとしてのデータ、すなわち、符号化データは、バッファ117に蓄積される。また、パケットから抽出されたデータのバッファの蓄積位置を示す位置データや、各データに対応するパケットのヘッダ情報は、インデックスリスト118として蓄積される。
【0058】
バッファ117に蓄積された符号化データは、インデックスリスト118に蓄積されたヘッダ情報に基づく時間制御の下にデコーダ120に渡され、デコーダ120によって復号処理が実行される。例えば動画像を構成する各画像フレームは、複数のパケットに格納されたデータによって構成され、1つの画像フレームを構成するデータを格納した複数のRTPパケットのヘッダには、同一のタイムスタンプが格納されるので、インデックスリスト118に蓄積されたヘッダ情報のタイムスタンプを参照して同一タイムスタンプを持つパケットを1つの画像フレームを構成する符号化データの集合として、デコーダ120に渡すことが可能となり、デコーダ120は、フレーム毎に復号処理を実行することができる。デコーダ120において復号されたデータは、再生装置としてのディスプレイ123、またはスピーカ122へ渡され、出力再生される。
【0059】
送信側端末104から受信側端末121へ転送されるパケットが全て滞りなく、また、エラーのない状態で送信されれば、受信側端末121におけるリアルタイムデータ再生は問題なく実行される。しかし、実際は、ネットワーク上でのパケット損失の発生、遅延、転送パケットのデータエラー等、様々な要因に基づく再生エラーあるいは再生データの品質低下が発生し得る。
【0060】
本発明のシステムにおいては、受信側端末121のRTPパケット解析部114においてパケット損失等のエラーの発生を検出し、パケット損失等のエラー発生が検出された際には、ARQ(Auto Repeat reQuest)判定部119において、リアルタイム再生シーケンスを考慮したパケット再送要求の可否判定処理を実行する。ARQ(Auto Repeat reQuest)判定部119は、データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部として機能する。ARQ判定部119における具体的な処理については後述する。
【0061】
ARQ判定部119において、再送要求を実行するとの判定がなされた場合、受信側端末121は、再送要求パケットを識別するデータを格納した再送要求NACK(Negative ACKnowledge)−RTCP(Real-time Transport Control Protocol)パケットをRTCPパケット作成装置116にて作成し、RTCPパケット入出力ポート113を介して、送信側端末104に対して出力する。
【0062】
送信側端末104のRTCPパケット入出力ポート109において、受信側端末121からの再送要求を示すNACK−RTCPパケットを受信すると、受信したNACK−RTCPパケットをRTCPパケット解析部108において解析し、解析結果をARQ処理部105へ渡す。ARQ処理部105では、再送要求に応じたパケットの再送を実行するため、NACK−RTCPパケットにおいて指定されたパケットをバッファ103から抽出し、抽出したパケットを、RTPパケット出力ポート110を介して再送する制御処理を実行する。ARQ処理部105は、データ受信端末装置から受信する再送要求メッセージパケットに従って再送すべきデータパケットの抽出処理を実行する再送制御部として機能する。なお、NACK−RTCPパケットに基づく再送要求に応じたパケット再送処理において、送信側端末104は、NACK−RTCPパケットに重複送信の指定がある場合等、必要に応じてARQ処理部105の判断により再送パケットを重複して送る場合もある。これらの処理の詳細については、後述する。
【0063】
送信側端末104において送信すべきストリームデータが終了したのを検知した場合には、送信側端末104のRTCPパケット作成部107の生成したEOS(End Of Stream)メッセージを持つRTCPパケットを受信側端末121へ送り、データストリームの終了を明示する。
【0064】
本発明のシステムにおいては、ARQ処理部105において、リアルタイム再生を考慮して、ロストパケットに関する再送要求の実行/非実行の処理を決定する。データ転送における自動再送要求方式であるARQ(Automatic Repeat reQuest)は非常に有効な誤り訂正機能として知られている。ARQの具体的方式としては、例えばSAW(Stop And Wait)方式、GBN(Go Back N)方式、SR(Selective Repeat)方式など種々の方法が提案され実現されている。本実施例においては、ARQ基本アルゴリズムとして、スループット特性が高い選択再送SR(Selective Repeat)方式エラー訂正機能として使用する例について説明する。
【0065】
SR方式の場合、理想的には送信側と受信側で無限のバッファを用意する必要がある。そのため、受信側のバッファオーバーフローが起こった時点または起こりそうな時点でSR方式から別の再送方式に変更する方法やパケットのコピー伝送を通常から行いオーバーフローを回避する方法などが提案されている。しかしながら、本実施例におけるエラー訂正機能においては、PHS、TCP、データリンク層などに代表される完全にデータを送信することを第一優先にしているARQと異なり、データ受信側で実行される受信データの再生処理時間から想定されるパケット受信最終許容時間までに、できるだけ必要なデータの受信を実現する事を優先している。よって、SR方式からST方式やGBN方式には移行せず、SR方式のままARQを行う構成としている。また、バッファフローオーバーにならないよう受信側はバッファ制御を行い効率よくデータを送信する構成とする。
【0066】
本発明の1つの実施例では、送信中にロストしてしまったパケットの再送要求は、RFC1889 で規定されているRTCP(Real-time Transport Control Protocol)に従って、NACK(Negative ACKnowledge)を送ることで実現する。RFC1889ではRTCPパケットの連続送信間隔を5秒以上あける事を推奨している。ここで再送要求を5秒以上間隔を空けたとすると、受信側のバッファ溢れが生じるだけでなく、そもそもメディアの再生時間に間に合うように再送することができない。ストリーミングはリアルタイム性が強い分、
*できるだけ早く再送要求を出す
*再送要求を受信したらできるだけ早いうちに再送する
という動作を可能な時間内に実施しなければならない。そのために、ARQに用いるNACKパケットは、データ受信側において能動的に随時必要に応じてデータ送信側に対して送信することが必要となり、推奨値を本発明の場合は適用せず、任意タイミングでのNACKパケット送信を実行するものとする。
【0067】
また、RFC1889ではRTCPのバンド幅を5%以内になるよう規定している。本発明の実施例に係る構成の再送パケットは最小単位で16byteと小さいため、再送要求によって帯域を圧迫するほどのものではないと考えられる。なお、画像データ等の実データ自体の伝送には、RFC1889で規定されているRTP(パケットフォーマットは図2参照)を用いる例について説明するが、パケット毎にシーケンス番号を記述しておけば、UDP(User Datagram Protocol)等、他のプロトコルに従った処理も可能である。
【0068】
リアルタイム再生を実現するデータ転送では、処理時間が限定されるため、送信と受信における往復伝播遅延(RTT)が重要なパラメータとなる。往復伝播遅延(RTT)が大きい場合、データ受信端末からデータ送信端末に対して再送要求を出しても、再送要求パケットがデータ送信端末側に到着するまでの時間、データ送信端末において指定データを格納した再送パケットを抽出して再送処理を実行するまでの時間、再送パケットをデータ受信端末が受信するまでの時間、これらの処理に時間を要すると、その後、データ受信端末において、デコーダに受信データを渡して復号を行なっても、リアルタイム再生に間に合わない場合が発生する。無論、間に合う間に合わないかかわらず再送要求を出しておく方が、訂正率の向上が達成される可能性は大となるが、再送要求パケットの送信、再送パケットの再送によるネットワークトラフィックの混雑が発生することになり、これらの冗長データの伝送によるオーバーヘッドの問題が発生することになる。
【0069】
また、送信と受信における往復伝播遅延(RTT)をデータ受信端末において、あらかじめ把握することにより、データ受信端末において、再送要求を行なってから再送パケットを受信するまでの時間の把握が可能となり、データ受信端末においてリアルタイム再生を行なうために必要な最終再送要求時間を割り出すことが可能なる。本発明のシステムでは、受信端末のARQ判定部において、往復伝播遅延(RTT)に基づく最終再送要求時間を判定し、判定に基づいて、再送要求としてのNACK−RTCPの送信を実行する。
【0070】
このように、ARQにおいてリアルタイム性を保持するためには、常に送信と受信における往復伝播遅延(RTT)を計測しておく必要がある。本発明のシステムでは、データ受信側端末は、能動的にRTTを計測し、ネットワーク状況等において変化する送信と受信における往復伝播遅延(RTT)の更新を実行し、最新のRTTに基づいて再送要求としてのNACK−RTCPの送信の実行可否を判定する。
【0071】
なお、RTCPに規定されたSR(Sender Report)とRR(Receiver Report)により送信側はRTTの算出が可能となるが、リアルタイム再生の進行状況に基づいて、再送要求としてのNACK−RTCPパケットを送出するかしないかを判定するのは、データ受信側端末であり、データ受信側端末において、逐次、ネットワーク状況を反映したRTT情報を取得可能とする構成が好ましい。従って、本発明のシステムにおいては、データ受信端末側から能動的にRTTを算出可能な構成としている。具体的には、データ受信端末におけるECHOパケットの送信、ECHO−REPLYパケットの受信により、RTTの算出を行なう。これらの処理については、後段で詳細に説明する。
【0072】
データ送信端末は、データ受信端末からのパケット再送要求としてのNACK−RTCPパケットを受信すると、NACK−RTCPパケットに指定された再送要求パケットを、現在配信中のパケットと共に送信する。ただし、データ送信端末は、プライオリティを用いた配信スケジューリング機能を実行し、パケットの再送は、配信スケジューリングに従って実行される。
【0073】
受信端末側から送信端末への応答パケットとして、パケット再送要求としてのNACK−RTCPパケットのみを使用する構成としても、自動再送要求方式としてのARQ(Automatic Repeat reQuest)を有効に活用することができるが、本実施例においては、受信端末側からのパケット受信確認応答としてのACK(ACKnowledge)メッセージもデータ送信端末に対する応答パケットとして送信する。このACK送信により、再送要求に対応してパケットを保持する送信側のバッファを能動的に早めにクリアすることが可能となり、バッファ溢れの恐れを低下させることが可能となる。
【0074】
また、ストリーミング配信されるデータが終了したことを明示的に示すEOS(End Of Stream)メッセージを送信端末側は利用できる。EOSメッセージを使うことにより、受信側がストリーミング配信データの終了を認識可能となる。従って、受信側が最終フレームを受け取っているにもかかわらず、次のフレームが到着しないことによるNACK送出動作を防ぐことができる。
【0075】
受信端末側は、受信端末側で保持するタイマーにより、データ受信間隔、NACK送出後の経過時間等を計測可能であり、タイマーによる計測時間が閾値以上となったことにより、データ終了と判定する処理が可能であるが、EOSメッセージの受信により、ストリーミング配信データの終了確認が可能となる。従って、タイマーより先に受信完了状態とすることができる。逆に、EOSメッセージを利用しない、またはEOSがロストしてしまった場合は、NACKを送出しても送信側から再送パケットが送られてこないため、タイマーによって受信完了状態に移ることになる。
【0076】
[データ送信端末における処理]
以下、図面を参照しながら、データ送信端末における処理の詳細について説明する。
【0077】
データ送信端末の処理手順を図4に示すフローチャートを参照して説明する。図4に示す処理は、図1の送信側端末104において実行される処理を説明したフローである。送信側端末は、例えばビデオカメラ、あるいはDVD、CD、ハードディスク等の記憶媒体から撮り込んだデータをエンコーダにおいてMPEG圧縮等の符号化処理を実行し、その後、符号化データをペイロードとしたパケットを生成する。図4に示すフローは、このパケット生成処理以降の処理を示している。
【0078】
データ送信端末は、ステップS201において、送信データをペイロードとしたRTPパケット生成処理を実行する。RTPパケットは、先に図2を参照して説明した構成を有しタイムスタンプをヘッダ中に持つ。例えば動画像データを送信する場合は、同一画像フレームに属する符号化データを格納したパケットには同一のタイムスタンプが設定され、後続フレームに進むに従って、増分されたタイムスタンプが設定される。
【0079】
図5に示すパケット送信に係るタイムシーケンス図を参照して、タイムスタンプの設定例を説明する。データ送信側(Sender)に示すタイムスタンプ12000は、1つの画像フレームを構成する符号化データをペイロードとして格納した複数のRTPパケット(シーケンス番号=1〜6)に付与されるタイムスタンプである。その後のタイムスタンプ15000は、後続画像フレームを構成するRTPパケット(シーケンス番号=7〜12)と、データ受信側からNACK−RTCPパケットによる再送要求があり、再送するパケット(シーケンス番号=4,5)とに設定されるタイムスタンプである。このように、データ送信端末では、例えば画像フレームを構成するパケットの集合に1つのタイムスタンプを設定してRTPパケットを生成する。
【0080】
図4に戻り、データ送信端末の処理について説明を続ける。ステップS201で生成したRTPパケットは、ステップS202において、RTPパケット出力ポートを介して受信端末に向けてIPネットワークに出力される。なお、RTPパケットはさらに、先に図3を用いて説明したIPヘッダが付与され、IPヘッダに設定されたアドレスに向けて配信されることになる。ステップS201、S202のパケット生成、パケット送信処理は、ストリーミング配信されるデータが終了したことを明示的に示すEOS(End Of Stream)を配信し、予め設定した時間をタイマーで計測して、タイマーでの計測時間が設定時間を超えた場合に、処理を終了する。
【0081】
図4に示すステップS203のパケット再送要求としてのNACK−RTCPパケットの受信判定処理、ステップS204のパケット受信確認応答としてのACK−RTCPパケットの受信判定処理、ステップS205のRTT時間計測用のECHO−RTCPパケットの受信判定処理は、RTPパケットによる実データ送信中の割込み処理としてRTPパケットによる実データ送信に並行して逐次実行される処理である。
【0082】
ステップS203の処理は、データ受信端末からのパケット再送要求であるNACK−RTCPパケットの受信判定処理である。データ受信端末からのパケット再送要求であるNACK−RTCPパケットを受信した場合は、ステップS211〜S215の処理を実行する。このステップS211〜S215の処理は、図1に示すARQ処理部105における処理として実行される。
【0083】
ステップS211においては、データ送信装置は、NACK−RTCPパケットを受信する。図6にデータ受信端末において生成し、データ送信端末の受信するパケット再送要求であるNACK−RTCPパケットの構成を示す。
【0084】
NACK−RTCPパケットは、図6に示すようにヘッダ(HEAD)、フォーマット(FORMAT)、パケットタイプ、パケット長、送信同期ソース識別子(RTCP)、タイムスタンプの情報に加えて、再送要求対象となるパケットの識別子としての再送指定シーケンス番号、さらに、各再送指定シーケンス番号に対応するデータとして、「再送回数」、「オプション」、「重複指定回数」が設定可能である。
【0085】
前述したように、本発明の提案するARQを適用したシステムでは、RTCPに従ったコントロール・パケットとして再送要求としてのNACK、受信確認としてのACK、ストリーミング配信されるデータが終了したことを明示的に示すEOS、送信と受信における往復伝播遅延(RTT)を計測する際に使用されるECHO、およびECHO−REPLYのパケットが利用される。これらの各RTCPパケットそれぞれのフォーマットタイプを一制御メッセージとして、すなわちRTCPヘッダのPT(Payload Type)として区別をするのは汎用的ではない。よって、制御メッセージとしては、フィードバックメッセージ(FM:Feedback Message)として定義しPT(Payload Type)に指定する。かつ、RTCPヘッダ内の[フォーマット]フィールドであるFMT (Feedback Message Format)にそのパケットフォーマットの指定をすることで、どのようなフィードバックメッセージかを決定できる構成とする。
【0086】
図6に示すように、1つのNACKパケットには1つ以上の再送要求対象となるパケットの識別子としてのシーケンス番号を付与することができる構成を持つ。つまり一度のNACKパケットの送信処理で複数のパケットについての再送要求が可能になる。また、再送要求パケットのシーケンス番号各々に対して付加される「再送回数」は、何回目の再送要求かを明記するフィールドであり、「重複指定回数」は、再送する場合の多重回数の指定を明記するフィールドであり、「オプション」はその他の任意の情報を格納するフィールドとして使用される。
【0087】
例えば、「重複指定回数」に[3]をいれておけば、NACKを受信したデータ送信側は、同じデータを格納した再送パケットを[3]つ連続で送る処理を実行する。重要データを格納したパケットについては、重複再送を要求することで、再送パケットの受信の確実性を高めることが可能となる。また、繰り返し、同一パケットについての再送要求としてのNACKを送信しているにもかかわらず、受信に成功しない場合や、リアルタイム再生に間に合うための再送可能最終時間に出されるNACKにおいて、「重複指定回数」の設定数を増加させてデータ送信側に送信することにより、再送パケットの受信の確実性を高めることが可能となり、データ再生品質を向上させることが可能となる。データ受信側は、このようなNACK−RTCPパケットを送信して、データ送信側は、受信したNACK−RTCPパケットに基づくパケット再送処理を実行する。
【0088】
なお、RTPパケットフォーマットやペイロードフォーマット、または受信端末の利用者が意図的に指定した場合など、パケットに優先度が与えられている場合、優先度が高いパケットやデータに関しての再送は多重再送処理を行なうことで、再送パケットの受信確率を高めるようコントロール可能である。また、「再送回数」フィールドにおいて何回目の再送要求かを明記することで、NACK自身が損失したことを送信側が検知できる。
【0089】
「オプション」フィールドには、フィールド設定値に従って、例えば図7に示す処理指定を行なうことが可能となる。すなわち、
オプション設定値=0
指定シーケンス番号を持つパケットのみの再送要求(デフォルト)
オプション設定値=1
フレーム先頭パケットから指定シーケンス番号を持つパケットまでの一括再送要求
オプション設定値=2
指定シーケンス番号からフレーム最後尾までのパケットの一括再送要求
オプション設定値=3
指定タイムスタンプの付与されたパケットの一括再送要求
オプション設定値=4
タイムスタンプを無視してシーケンス番号のみで検索して検索結果のパケットの再送を要求
【0090】
画像データ等の符号化データは、先に図2を参照して説明したように、タイムスタンプとシーケンス番号をセットとしたヘッダを持つ1つのRTPパケットに格納した構成を有するが、データ転送処理において、タイムスタンプの変わり目を含んた連続的なエラーとしてのバーストエラーが起こった場合、あるいは、バーストエラーの発生により、フレーム単位でパケットの損失が発生した場合などにおいては、受信端末側では、パケット損失の発生したパケットに対応するタイムスタンプとシーケンス番号のセットを特定できない場合が発生する。このような場合において、特定可能なタイムスタンプ、あるいはシーケンス番号のいずれか一方のみを指定して、上記のオプション設定値を設定することにより、フレキシブルな態様で再送の必要な1以上のパケット指定が可能となる。
【0091】
このように、データ受信端末では、様々な態様での再送要求パケットの指定が可能であり、NACK−RTCPパケットを受信したデータ送信端末のARQ処理部105は、オプションフィールドの設定値に従って、バッファ103に格納済みのパケットから指定パケットを抽出して、再送処理を実行する。
【0092】
図4に戻り、データ送信端末の処理について説明する。ステップS212では、ステップS211で受信したNACK−RTCPパケットに指定された再送要求パケットに対応するシーケンス番号を抽出し、ステップS213では、オプション指定の抽出を実行する。上述したように再送要求パケットの指定態様は、シーケンス番号の直接指定のみならず、タイムスタンプ等による指定等、様々であり、データ送信端末装置のARQ処理部105では、受信したNACK−RTCPパケットに指定されたオプション指定、およびタイムスタンプ、シーケンス番号を参照して、再送要求パケットを特定する処理を実行する。
【0093】
ステップS214では、特定された再送要求パケットをバッファ103から抽出する。バッファ103には、再送要求に備えて所定時間、送信済みのパケットが保持格納されており、これらの格納パケットから再送指定のあったパケットを抽出する処理を実行する。ステップS215で、RTPパケット出力ポートから抽出パケットが送信される。
【0094】
ステップS203において、NACK−RTCPパケットを受信しない場合は、ステップS204でパケット受信応答としてのACK−RTCPパケットの受信確認を行ない、ACK−RTCPパケットの受信に基づいて、ステップS208で、受信の確認されたパケットをバッファ103からクリア(削除)する。このACKにより、再送要求に対応してパケットを保持する送信側のバッファを能動的に早めにクリアすることが可能となり、バッファ溢れの恐れを低下させることが可能となる。
【0095】
図8にデータ受信端末において生成し、データ送信端末の受信するパケット受信確認応答であるACK−RTCPパケットの構成を示す。
【0096】
ACK−RTCPパケットは、図8に示すようにヘッダ(HEAD)、フォーマット(FORMAT)、パケットタイプ、パケット長、送信同期ソース識別子(RTCP)、タイムスタンプの情報に加えて、受信パケットの識別子としての受信済みシーケンス番号が格納される。
【0097】
なお、シーケンス番号を指定せず、タイムスタンプ(TIMESTAMP)のみ指定する構成とすることも可能であり、この場合には、そのタイムスタンプ(TIMESTAMP)の設定されたパケットすべてを受け取った事を示す。よってこのような場合にはシーケンス番号をすべて指定する必要はないため、ACK−RTCPパケットサイズを小さくすることが可能となり、ネットワークトラフィックの増大を低減できる。
【0098】
図4に戻り、データ送信端末の処理の説明を続ける。データ送信端末は、ステップS205において、ECHO−RTCPパケットの受信確認を行ない、データ受信端末からECHO−RTCPパケットを受信した場合は、ステップS209において、ECHO−REPLY−RTCPパケットをECHO−RTCPパケットを送信してきたデータ受信端末に対して送信する処理を実行する。
【0099】
ECHO−RTCPパケットと、ECHO−REPLY−RTCPパケットは、送信端末と受信端末における往復伝播遅延(RTT)をデータ受信端末において把握するために用いるRTCPパケットである。このパケットの送受信によって、データ受信端末において、再送要求を行なってから再送パケットを受信するまでの時間の把握が可能となり、データ受信端末においてリアルタイム再生を行なうために必要な最終再送要求時間を割り出すことが可能なる。
【0100】
本発明のシステムでは、受信端末のARQ判定部において、往復伝播遅延(RTT)に基づく最終再送要求時間を判定し、判定に基づいて、再送要求としてのNACK−RTCPの送信の実行可否を決定する。この判定処理に必要な送信端末と受信端末における往復伝播遅延(RTT)の最新情報を取得するため、データ受信端末側は、任意タイミングで、能動的にECHO−RTCPパケットをデータ送信端末に送信し、データ送信端末は、ECHO−RTCPパケットの受信に応答してECHO−REPLY−RTCPパケットをECHO−RTCPパケットを送信してきたデータ受信端末に対して送信する。
【0101】
データ受信端末では、データ送信端末からの応答として受信するECHO−REPLY−RTCPパケットを解析することによって、送信端末と受信端末における往復伝播遅延(RTT)を算出する。このRTT算出処理については、後段のデータ受信端末の処理の項目で説明する。
【0102】
図9にデータ受信端末において生成し、データ送信端末の受信するECHO−RTCPパケットの構成、および、データ送信端末において生成し、データ受信端末に対して送信するECHO−REPLY−RTCPパケットの構成を示す。
【0103】
ECHO−RTCPパケットは、図9(a)に示すようにヘッダ(HEAD)、フォーマット(FORMAT)、パケットタイプ、パケット長、送信同期ソース識別子(RTCP)、およびECHOパケットの識別データとしてのECHO−IDが格納される。ECHO−REPLY−RTCPパケットは、図9(b)に示すようにヘッダ(HEAD)、フォーマット(FORMAT)、パケットタイプ、パケット長、送信同期ソース識別子(RTCP)、およびECHO−RTCPパケットに対応するECHO−ID、および、サーバ処理時間が格納される。
【0104】
ECHO−IDをECHO−RTCPパケットとECHO−REPLY−RTCPパケットに入れることにより、データ受信端末側がECHO−REPLYを受け取った際に、いつ送信したECHO−RTCPパケットに対応する返事(ECHO−REPLY)かを識別することが可能となる。ECHO−REPLY−RTCPパケットに格納されるサーバ処理時間は、データ送信端末がデータ受信端末からの再送要求(NACK−RTCP)を受信してからパケットをデータ送信端末から出力するまでに要する処理時間に相当する時間である。このサーバ処理時間は、ECHO−RTCPパケットを受信した時間からECHO−REPLY−RTCPパケットを送信するまでの時間として設定するか、あるいは、予めデータ送信端末において過去の履歴データとして、実際に、データ送信端末がデータ受信端末からの再送要求(NACK−RTCP)を受信してからパケットをデータ送信端末から出力するまでに要した時間をメモリに格納し、この格納データを適用してもよいし、あるいは、ECHO−RTCPパケットを受信した時点におけるサーバ(データ送信端末)における処理負荷を算出して、処理負荷に基づいて算出される予測処理時間をサーバ処理時間として設定する構成としてもよい。
【0105】
データ受信端末は、ECHO−REPLY−RTCPパケットに格納されたサーバ処理時間と、ECHO−RTCPパケット送信からECHO−REPLY−RTCPの受信までの時間とに基づいて、送信端末と受信端末における往復伝播遅延(RTT)を算出する。このRTT算出処理については、後段のデータ受信端末の処理の項目で説明する。
【0106】
図4に戻り、データ送信端末の処理の説明を続ける。データ送信端末は、ステップS206において、送信対象となるストリーミングデータのパケット送信がすべて終了したかを判定し、終了と判定した場合は、ステップS210において、データストリームの終了を明示するEOS(End Of Stream)メッセージを持つRTCPパケットを受信側端末へ送信する処理を実行する。
【0107】
図10にデータ送信端末において生成し、データ受信端末の受信するEOS−RTCPパケットの構成を示す。
【0108】
EOS−RTCPパケットは、図10に示すようにヘッダ(HEAD)、フォーマット(FORMAT)、パケットタイプ、パケット長、送信同期ソース識別子(RTCP)、およびタイムスタンプ(TIMESTAMP)が格納される。データ受信端末は、EOS−RTCPパケットをデータ送信端末から受信することにより、ストリーミング配信されるデータの終了を認識する。受信端末はこの認識処理により、次フレームが到着しないことによる誤ったNACK送出動作を防ぐことができる。
【0109】
図4に戻り、データ送信端末の処理の説明を続ける。データ送信端末は、ステップS207において、予め設定した時間を計測するタイマーでの計測時間が設定時間を超えたか否かを判定して、タイマーが設定時間を超えていない場合は、ステップS203以下の処理、すなわち、ステップS203のパケット再送要求としてのNACK−RTCPパケットの受信判定処理以下の処理を継続して実行する。これは、全パケット送出後においても、一定時間は、データ受信側からのパケット再送要求としてのNACK−RTCPパケット、または、受信確認応答としてのACK−RTCPパケット、または、ECHO−RTCPパケットを受信する可能性があり、これらのパケット受信に対する処理を実行するためである。タイマーにおいて、予め設定した時間が経過した時点で、データ送信を終了する。
【0110】
[データ受信端末における処理]
次に、データ受信端末の処理手順を図11に示すフローチャートを参照して説明する。図11に示す処理は、図1の受信側端末121において実行される処理を説明したフローである。
【0111】
データ受信端末は、ステップS300において、データ送信端末からの送信開始通知を受信後、ステップS301において、データ送信端末からの送信パケット、すなわち符号化データをペイロードとして格納したRTPパケットを順次、受信する。RTPパケットは、先に、図2を参照して説明したように、タイムスタンプがヘッダ情報中に格納されている。データ受信端末は、タイムスタンプに基づいて受信するパケットに含まれるフレームを判別することができる。先に説明したように、動画像データをRTPパケットに符号化データとして格納して送信する場合、同一の画像フレームに属する複数のRTPパケットには同一のタイムスタンプが設定され、データ受信側端末は、タイムスタンプを参照して、フレームの判別が可能となる。
【0112】
データ受信端末は、ステップS302において、受信したパケットが、nフレーム目(n=1,2...)の終端パケットであるか否かを判定する。また、ステップS303において、受信したパケットが、n+1フレーム目の先頭パケットであるか否かを判定する。受信したパケットが、nフレーム目(n=1,2...)の終端パケットである場合、または、n+1フレーム目の先頭パケットである場合には、ステップS309に進む。
【0113】
ステップS309においては、nフレーム内に未受信のパケット、すなわちロストパケット、あるいはエラーパケットがあるか否かを判定する。図5を参照して、ステップS309におけるエラーパケットまたはロストパケットの検出処理について説明する。
【0114】
図5は、送信側と受信側で実際にRTP、RTCPパケットのデータ転送が行われている例である。図の右方向に時間が流れているとする。ここでは、90KHzクロックで、動画像データについて、30fps(フレーム/秒)のレートでサンプリングして符号化データをRTPパケットに格納して送信すると仮定している。この場合、RTPパケットのタイムスタンプの値は、同一画像フレーム内の場合には同じ値になり、90K/30=30000ずつカウントアップされる。受信側は、最小刻みタイマτを実装する。この例では、当画像データの圧縮フォーマットとして、MOTION JPEG2000に従った符号化データを伝送しているものとし、フレームにおける最終端パケットが、データ受信端末のRTPパケット解析部114にて検知できる。
【0115】
図5において、タイムスタンプ12000の設定されたパケットは、パケットのシーケンス番号1〜6であり、これらが同一フレーム、例えばフレームnに属するパケットである。データ受信端末では、シーケンス番号6のパケットを受信した時点で、ステップS302の判定がYesとなり、ステップS309のロストパケット検出処理を実行することになる。この時点で、データ受信端末は、図5に示すようにシーケンス番号1〜3,6のパケットを受信しており、シーケンス番号4,5のロストパケットがあると判定する。なお、ここでは、ロストパケットについてのみ記載しているが、受信したパケットについてのエラーパケットとして範囲された場合についても、ロストパケットと同様の処理、すなわち再送要求を実行することが可能である。
【0116】
ロスとパケットまたはエラーパケットが検出されると、ステップS312以下の処理に進み、再送要求処理としてのNACK−RTCPパケットの送信判定処理、および判定に基づくNACK−RTCPパケットの送信処理が実行される。これらの判定処理の詳細については、後述する。ここでは、シーケンス番号4,5のロストパケットに関するNACK−RTCPパケットが生成され、先に図6を参照して説明したNACK−RTCPパケットの再送指定シーケンス番号として4,5を設定したパケットを再送要求パケットとしてデータ送信端末に対して送信する。図5におけるNACK−RTCPパケット送信処理501がこれに相当する。
【0117】
NACK−RTCPパケット送信の際にタイムスタンプ(TIMESTAMP)とシーケンス番号の組み合わせがはっきりしない場合には、先に図7を参照して説明したオプションを指定して送信する。データ受信端末では、パケットの送受信情報を随時記録することで、パケットロス率の割り出しが可能となる。このロス率が一定値以上になった場合には、NACK−RTCPパケット自体の損失の可能性が考えられるため、おなじNACK−RTCPパケットを複数回、重ねて送信する処理を行なうことで、再送成功率を高めることが可能となる。あるいは、NACK−RTCPパケットに重複指定回数を増分して設定する。
【0118】
データ送信端末は、NACK−RTCPパケットを受信すると、次のタイムスタンプを設定したフレームデータに併せて、再送パケットを送信する。ここでは、タイムスタンプ:15000のフレームデータ(シーケンス番号7〜12)に併せて再送パケット(シーケンス番号4,5)を送信する。なお、再送タイミングは、このように次のフレームデータになるとは限らず、処理タイミングによっては、さらに次のあるいはさらに遅れたフレームデータとともになる場合もある。これらの再送処理タイミングについては、データ受信端末側がECHO−RTCPパケット、およびECHO−REPLY−RTCPの送受信を実行することにより、送信端末と受信端末における往復伝播遅延(RTT)を算出して推測可能となる。この処理については、後述する。
【0119】
図5において、各フレーム、すなわち、タイムスタンプ=12000〜24000…において、その最終パケットまたは先頭パケットをデータ受信端末が受信した場合において、図11のステップS302またはステップS303の判定が、Yesとなり、ステップS309のロストパケット検出処理を実行し、ステップS312以下の処理に進み、再送要求処理としてのNACK−RTCPパケットの送信判定処理、および判定に基づくNACK−RTCPパケットの送信処理が実行される。
【0120】
ステップS312の再送要求処理としてのNACK−RTCPパケットの送信判定処理について説明する。リアルタイム再生処理を実現するためには、再生タイミングに間に合うように、再送要求パケットが受信端末に届くことが必要となる。ステップS312の再送要求処理としてのNACK−RTCPパケットの送信判定処理は、NACK−RTCPパケットを送信した場合、リアルタイム再生処理に間に合うタイミングで、再送パケットが受信可能か否かを判定するものである。
【0121】
この判定のためには、前述したように、送信端末と受信端末間における往復伝播遅延(RTT)が重要なパラメータとなる。往復伝播遅延(RTT)が大きい場合、データ受信端末からデータ送信端末に対して再送要求を出しても、再送要求を発信して、再送パケットがデータ送信端末から再送され、データ受信端末において受信するまでに時間を要すると、その後デコーダに渡して復号を行なってリアルタイム再生に間に合わない場合が発生する。本発明のシステムでは、データ受信端末において、往復伝播遅延(RTT)をあらかじめ把握し、往復伝播遅延(RTT)に基づいて、NACK−RTCPパケットの送信判定処理を行なう。
【0122】
本発明のシステムにおいては、データ受信端末側が、任意タイミングで、往復伝播遅延(RTT)の計測を実行することを可能な構成としている。具体的には、データ受信端末から、先に説明した図9に示すECHO−RTCPパケットを送信し、ECHO−REPLY−RTCPパケットを受信して、RTTの算出を行なう。
【0123】
図12を参照して、データ受信端末で実行するECHO−RTCPパケットの送信、ECHO−REPLY−RTCPパケットの受信、往復伝播遅延(RTT)の算出処理について説明する。
【0124】
図12(a)は、ECHO−RTCPパケットの送信処理フローである。ECHO−RTCPパケットの送信は、データ受信端末が任意タイミングで能動的に実行することが可能である。
【0125】
ステップS501における、RTCPパケットの送信待機状態において、RTTの計測要請が発生した場合、ステップS502のECHO−RTCPパケットの生成処理に移行する。RTTの計測は、データ受信が開始された後、例えば図11の処理フローにおいて、ステップS300の送信開始通知を受信した以降、定期的に実行する等の設定が可能であり、データ受信側端末に保有するタイマーで予め定めた計測間隔が経過したか否かを計測し、予め定めた計測間隔に対応する時間が経過した場合に、ARQ判定部119が、ECHO−RTCPパケットの生成要求をパケット作成部116に出力し、パケット作成部116がステップS502のECHO−RTCPパケットの生成処理を実行するなどの設定が可能である。この他にも、パケットのロスト状況を解析し、ロスト状況に応じてECHO−RTCPパケットの生成、送信を実行する構成としてもよく、いずれにしても、データ受信端末は、任意タイミングで、ECHO−RTCPパケットの生成、送信が可能であり、常に最新の往復伝播遅延(RTT)の算出が可能となる。
【0126】
ステップS502で生成するECHO−RTCPパケットは、先に図9(a)を参照して説明した構成を有する。パケットには、各パケット固有の識別子としてのECHO−IDが設定される。ステップS503で、生成したECHO−RTCPパケットが、RTCP入出力ポート113を介して、データ送信端末104に対して送信される。ステップS504では、ECHO−RTCPパケットを送信した送信時間、および、パケットに設定されたECHO−IDがメモリに記録される。
【0127】
図12(b)は、ECHO−REPLY−RTCPパケットの受信およびRTT算出処理フローである。ステップS601における、RTCPパケットの送信待機状態において、ECHO−REPLY−RTCPパケットが受信されたと判定(ステップS602でYes)されると、ステップS603において、ECHO−REPLY−RTCPパケットの受信時刻がメモリに記録される。受信するECHO−REPLY−RTCPパケットは、先に図9(b)を参照して説明した構成を有する。パケットには、応答対象となった対応するECHO−RTCPパケットと同一の識別子としてのECHO−IDが設定され、さらに、データ送信端末において算出したサーバ処理時間が格納される。
【0128】
ステップS604では、受信したECHO−REPLY−RTCPパケットからサーバ処理時間が抽出され、ステップS605において、受信したECHO−REPLY−RTCPパケットに設定されたECHO−IDから対応するECHO−RTCPパケットの送信時間が検索される。
【0129】
ステップS606では、ステップS603において取得したECHO−REPLY−RTCPパケットの受信時刻、ステップS604において取得したサーバ処理時間、ステップS603において取得したECHO−RTCPパケットの送信時間に基づいて、往復伝播遅延(RTT)の算出処理が実行される。往復伝播遅延(RTT)の算出は、下式に基づいて実行される。
往復伝播遅延(RTT)=(ECHO-REPLAY受信時刻)-(ECHO送信時刻)-(サーバ処理時間)
【0130】
なお、RTTの計測を実行する際に送受信するECHO,ECHO−REPLYパケットも損失することが考えられる。またRTTもネットワークの状況により常に変動するため、データ受信端末は一定間隔でECHO,ECHO−REPLYパケットの送受信処理を実行してRTTを計測する。
【0131】
図11のフローに戻り、データ受信端末側の処理について説明を続ける。図11のフローにおいて、ステップS312では、再送要求としてのNACK−RTCPを出力した場合、リアルタイム再生処理に間に合うタイミングで再送要求パケットの受信が可能か否かを判定する。上述したECHO,ECHO−REPLYパケットの送受信処理により計測されたRTT値と、各フレームの処理タイミングを計測しているタイマーの期限に基づいて、再送要求としてのNACK−RTCPパケットを出しても間に合わないと判断した場合(S312でNo)には、NACK−RTCPパケットの送信処理は実行しない。
【0132】
たとえば、パケット損失の存在する該当フレームの符号化データの処理開始までの時間Ta=100mmsecである場合、すなわち100mmsec後にデコーダにデータを渡して復号処理が開始されることがタイマーの計測により明らかとなっている場合、計測された最新のRTT値が、該当フレームの符号化データの処理開始までの時間Taより大きい値であった場合、すなわち、100mmsec以上であった場合には、再送要求としてのNACK−RTCPパケットを送信しても、再送パケットの受信が、デコード処理開始タイミングに間に合わないものと判断して、NACK−RTCPパケットの送信処理を実行しない。ただし、RTT値が処理開始までの時間Ta以上であっても、RTT値と時間:Taの非常に近い値を持つ場合には、ぎりぎり間に合う可能性もあるためNACKを送出する構成としてもよい。このNACK送出判定の閾値は実装依存である。
【0133】
一方、計測された最新のRTT値が、パケット損失の存在する該当フレームの符号化データの処理開始までの時間Ta以下であった場合には、再送要求としてのNACK−RTCPパケットを送信して再送パケットを受信するまでの時間が、デコード処理開始タイミングまでの時間以下であるので、再送パケット受信が処理に間に合うものと判断して、ステップS313において、NACK−RTCPパケットの送信処理を実行する。
【0134】
ステップS309のロストパケットの検出処理は、ステップS302の各フレームの終端パケット受信、ステップS303の各フレームの先頭パケット受信時のみではなく、ステップS304の各フレームの最終再送時間の判定でYesの場合、およびステップS305のタイマーの最小計測時間τの経過判定でYesの場合に実行される。
【0135】
図5を参照して、ステップS304の各フレームの最終再送時間の判定処理、およびステップS305のタイマーの最小計測時間τの経過判定処理について説明する。
【0136】
ステップS304の各フレームの最終再送時間の判定処理は、再送要求としてのNACK−RTCPを出力した場合、リアルタイム再生処理に間に合う最終時間判定処理である。各フレームについて、各フレームの符号化データの処理開始までの時間Taが計測されているRTT値と等しくなったとき、すなわち、Ta=RTTとなった場合に、ステップS304の判定がYesとなり、ステップS309の該当フレームに対するロストパケットの検出処理が実行される。これは、最後の再送要求可能タイミングにロストパケットを検出して、検出された場合に最後の再送要求を送信するための処理である。
【0137】
図5において、右下部に示してあるように、タイムスタンプ=12000の処理開始までの時間Ta=RTTとなったとき、ステップS304において、タイムスタンプ=12000に対応するフレームについての最終再送時間の判定処理がYesと判定され、ステップS309において、タイムスタンプ=12000のフレームに対するロストパケットの検出処理が実行され、ロストパケットが検出された場合に、ステップS313において最後の再送要求を送信する。図5におけるNACK−RTCPパケット送信処理505がこれに相当する。
【0138】
ステップS305のタイマーの最小計測時間τの経過判定処理は、データ受信端末の有するタイマーの計測最小時間:τ毎に、ステップS305の判定がYesとなり、ステップS309の該当フレームに対するロストパケットの検出処理が実行される。これは、各計測最小時間:τに対応する受信フレームについて、各フレームの先頭パケット、最終パケットの検出がなされない場合でもロストパケットを確実に検出して、再送要求を実行しようとするための処理である。図5におけるNACK−RTCPパケット送信処理502,503がこれに相当する。
【0139】
図5におけるNACK−RTCPパケット送信処理502は、そのタイミングまでに受信済みのタイムスタンプのフレームを構成するパケット中のロストパケットとして、パケット(シーケンス番号=5,12)を抽出し、シーケンス番号5,12のロストパケットに関するNACK−RTCPパケットが生成され、先に図6を参照して説明したNACK−RTCPパケットの再送指定シーケンス番号として5,12を設定したパケットを再送要求パケットとしてデータ送信端末に対して送信する。なお、シーケンス番号5の再送要求は、2回目となるので、NACK−RTCPパケットのシーケンス番号5に対応する「再送回数」フィールドには、[2]が設定される。
【0140】
図5におけるNACK−RTCPパケット送信処理503は、そのタイミングまでに受信済みのタイムスタンプのフレームを構成するパケット中のロストパケットとして、パケット(シーケンス番号=5)を抽出し、シーケンス番号5のロストパケットに関するNACK−RTCPパケットを生成して送信する。なお、シーケンス番号5の再送要求は、3回目となるので、NACK−RTCPパケットのシーケンス番号5に対応する「再送回数」フィールドには、[3]が設定される。
【0141】
このように、データ受信端末では、ステップS302の各フレームの終端パケット受信、ステップS303の各フレームの先頭パケット受信時、ステップS304の各フレームの最終再送時間の判定、およびステップS305のタイマーの最小計測時間τの経過判定の各タイミングにおいて、ステップS309のロストパケットの検出処理を実行する。なお、これらステップS302〜S305の4種類のタイミングのいずれかのみを実行する構成としてもよい。
【0142】
ステップS309の各フレームのロストパケット検出処理において、ロストパケットが検出されなかった場合は、各パケットに格納された符号化データのデコード(復号)処理がデコーダ120において実行される。ステップS311では、受信済みパケットについての受信確認パケットとしてのACK−RTCPパケットの生成、送信が行われる。ACK−RTCPパケットは、先に図8を参照して説明した通り、受信済みシーケンス番号を格納したパケットである。このACK−RTCPパケットを受信したデータ送信端末は、ACK−RTCPパケットに記録された受信済みシーケンス番号に対応するパケットをバッファ103からクリアする。
【0143】
図5のタイムシーケンス図では、受信端末から送信端末へのACK−RTCPパケットの送信は、タイムスタンプ=15000のフレームデータに関しては、ACK−RTCPパケット送信処理511において実行され、タイムスタンプ=18000のフレームデータに関しては、ACK−RTCPパケット送信処理512において実行され、タイムスタンプ=21000のフレームデータに関しては、ACK−RTCPパケット送信処理513において実行されている。
【0144】
図11に示すフローのステップS306では、各フレームのタイマー期限切れを確認する。このタイマー期限は、リアルタイム再生処理の開始期限を計測するタイマーによって設定される期限であり、各フレーム毎にそのタイミングが設定される。nフレームのタイマー期限切れであると判定された場合には、ロストパケットがあった場合であっても、ステップS310のデコード処理に移行することになる。
【0145】
ステップS307では、データ送信端末から、データストリームの終了を明示するEOS(End Of Stream)メッセージを持つRTCPパケットを受信したか否かを判定し、EOS−RTCPパケット受信でない場合は、ステップS301以下の処理を繰り返す。
【0146】
EOS−RTCPパケット受信である場合は、ステップS308において、各フレームのタイマー期限切れを確認する。このタイマー期限は、リアルタイム再生処理の開始期限を計測するタイマーによって設定される期限であり、各フレーム毎にそのタイミングが設定される。タイマー期限切れでない場合は、ステップS314に進み、再送要求されているロストパケットに関する再送パケットを受信待機状態であるか否かを判定して、待機状態である場合は、ステップS315に進み、再送パケットの受信待機状態として、ステップS301のパケット受信以下の処理を実行する。
【0147】
ステップS308における各フレームのタイマー期限切れの確認処理において、Yesと判定された場合、および、ステップS314において、再送パケット受信待機状態でないと判定された場合は、デコード、再生処理へ移行すべき未受信のパケットデータは存在しないと判定され、受信処理を完了する。
【0148】
このように、本発明のシステムにおいては、リアルタイム配信に適するものの信頼性を保証しないRTP等のデータ通信プロトコルに従ったパケット伝送において、ARQ機能を付加することで、エラー耐性のある信頼性の高いデータ伝送、リアルタイム再生が可能となる。なお、上述の実施例では、RTPパケットに符号化データを格納する構成例を中心として説明したが、RTPパケットフォーマットに限らず、UDP等、他のデータ通信プロトコルフォーマットに従ったパケットを用いたデータ通信構成においても、上述の実施例と同様の各種のコントロールパケットを用いた再送要求処理を行なうことにより、上述の実施例と同様の構成を実現可能である。
【0149】
上述したように本発明の構成では、再送要求の処理タイミングとして、各フレームの先頭パケットの受信時、各フレームの最終パケットの受信時、最終処理期限、および一定間隔(τ)毎等の各種タイミングでロストパケットの検出処理を実行する構成としたので、確実なロストパケットの検出が可能となる。
【0150】
また、データ受信端末は、再生処理時間、伝播遅延時間RTTを考慮したデータ再送要求処理を実行するので、無駄な再送要求パケットおよび再送パケットを出すことを防ぐ事ができ、ネットワークの帯域を再送によって狭めることがない。また、データ受信端末が、パケットの送受信情報を随時記録し、パケットロス率の割り出しにより、ロス率が一定値以上になった場合、おなじNACK−RTCPパケットを複数回、重ねて送信することで、再送成功率を高めることが可能となる。
【0151】
また、受信端末において送信する再送要求としてのNACK−RTCPパケットに重複指定回数の設定を可能としたので、ネットワーク状況に応じて、また受信側の要求に応じて再送パケットの重複送信を要求することが可能となり、重要データの受信成功率を高めることが可能となる。例えば、再生に間に合うための最終的な再送パケットについて重複再送を要求することで、高品質なデータ再生が可能となる。
【0152】
また、データ受信端末側から受信パケットに関するACKメッセージを、例えば画像のフレーム毎、またはあるブロック毎に応じて送信側に送信する構成としたので、パケット毎のACK送信による帯域の寡占状態の発生が防止され、また、データ送信側は、データ受信側から受信するACKパケットに基づいて、再送処理のためのパケット格納バッファから、該当パケットを能動的に破棄でき、バッファ溢れ、バッファ欠如を防ぐことができる。
【0153】
[データ送受信端末装置構成例]
上述の実施例で述べた一連の処理は、ハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたデータ処理装置内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、例えば汎用のコンピュータやマイクロコンピュータ等にインストールされる。
【0154】
図13に、上述の実施例で述べた一連の処理を実行するデータ送信端末装置、データ受信端末装置のシステム構成例を示す。本発明のシステムで送受信されるデータは、符号化データであり、データ送信装置ではエンコード(符号化)処理が実行され、データ受信装置ではデコード(復号)処理が実行される。符号化されたデータはパケットとしてネットワークを介して送受信する。そのため、データ送信側では、パケット生成(パケタイズ処理)を実行し、データ受信側ではパケット展開(デパケタイズ処理)を実行する。
【0155】
図13に示すデータ送受信装置(ex.PC)850は、エンコード(符号化)処理、デコード(復号)処理を実行するとともにパケット生成、展開処理を実行するコーデック851、通信ネットワークとのインタフェースとして機能するネットワークインタフェース852、マウス837、キーボード836等の入力機器との入出力インタフェース853、ビデオカメラ833、マイク834、スピーカ835等のAVデータ入出力機器からのデータ入出力を行なうAVインタフェース854、ディスプレイ832に対するデータ出力インタフェースとしてのディスプレイ・インタフェース855、各データ入出力インタフェース、コーデック851、ネットワークインタフェース852間のデータ転送制御、その他各種プログラム制御を実行するCPU856、CPU856により制御実行される各種プログラムの格納、データの格納、CPU856のワークエリアとして機能するRAM、ROMからなるメモリ857、データ格納、プログラム格納用の記憶媒体としてのHDD858を有し、それぞれPCIバス859に接続され、相互のデータ送受信が可能な構成を持つ。
【0156】
コーデック851は、図13に示すように、例えばビデオカメラ833からの画像データ、マイク834からの音声データを入力し、符号化処理、パケット生成処理(パケタイズ)を実行し、最終的に符号化データをペイロードとしたパケットを生成する。生成されたパケットは、PCIバス859上に出力され、ネットワークインタフェース852を介してネットワークに出力され、パケットのヘッダに設定された宛先アドレスに配信される。
【0157】
また、HDD858またはメモリ857に格納されたソフトウェアエンコードプログラムに従ってCPU856の制御により、ビデオカメラ833からの画像データ、マイク834からの音声データを符号化してネットワークインタフェース852を介してネットワークに出力する処理も実行する構成としてもよい。
【0158】
一方、ネットワークを介して入力するIPパケット化されたデータは、ネットワークインタフェース852を介して、バス856上に出力されて、コーデック851に入力される。コーデック851では入力データのパケット展開処理(デパケタイズ)を実行し、ペイロードとして格納された符号化データを抽出後、復号処理を実行して、ディスプレイ832、スピーカ835において再生、出力する。
【0159】
上述の実施例における処理対象となる画像等のデータは、カメラ他の入力機器、例えばスキャナ等のデータ入力装置、あるいはフロッピーディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体から入力可能である。
【0160】
また、CPU856は、ROM格納プログラムに限らず、ハードディスクに格納されているプログラム、衛星若しくはネットワークから転送され、受信されてインストールされたプログラム等を、RAM(Random Access Memory)等のメモリにロードして実行することも可能である。
【0161】
ここで、本明細書において、プログラムは、1つのコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0162】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0163】
【発明の効果】
以上、説明してきたように、本発明の構成によれば、RTP、UDP等のデータ通信プロトコルに従ったパケット送信において、ARQ機能を付加し、再送要求の処理タイミングとして、各フレームの先頭パケットの受信時、各フレームの最終パケットの受信時、最終処理期限、および一定間隔(τ)毎等の各種タイミングでロストパケットの検出処理を実行し、再送要求を実行する構成としたので、確実なロストパケットの検出が可能となり、エラー耐性のある信頼性の高いデータ伝送、リアルタイム再生が可能となる。
【0164】
また、本発明の構成によれば、データ受信端末において、再生処理時間、伝播遅延時間RTTを考慮し、デコード処理等を含む再生処理に間に合わない場合には、再生要求パケットの送信を実行しない構成としたので、無駄な再送要求パケットおよび再送パケットを出すことを防ぐ事ができ、ネットワークの帯域を再送処理の多発によって狭めてしまうことを防止することが可能となる。
【0165】
また、本発明の構成において、データ受信端末でパケットの送受信情報を随時記録しパケットロス率の割り出しを可能とした構成においては、データ受信端末の検出したロス率が一定値以上になった場合に、データ受信端末が能動的におなじNACKパケットを複数回、重ねて送信する処理を行なうことで、再送成功率を高めることが可能となる。
【0166】
また、本発明の構成において、受信端末において送信する再送要求としてのNACKパケットに重複指定回数の設定を可能としたため、ネットワーク状況に応じて、また受信側の要求に応じて再送パケットの重複送信を要求することが可能となり、重要データの受信成功率を高めることが可能となる。特に、再生時間に間に合うための最終的な再送パケットにおいては、そのパケットが万が一損失した場合には、データ不完全のまま再生することになるため、受信側から重複再送を要求し、再送成功率を高めることで高品質なデータ再生が可能となる。
【0167】
また、本発明の構成において、データ受信端末側から受信パケットに関するACKメッセージを、画像のフレーム毎、ブロック毎等、パケット単位ではなく複数パケット毎に送信する構成とすることで、ACKパケットによる帯域の寡占状態の発生を防止し、また、データ送信側では、データ受信側から受信するACKパケットに基づいて、再送処理のためのパケット格納バッファから、該当パケットを能動的に破棄でき、バッファ溢れ、バッファ欠如を防ぐことが可能となる。
【図面の簡単な説明】
【図1】本発明のデータ通信システムの構成を示す図である。
【図2】本発明のデータ通信システムにおいて転送されるRTPパケットフォーマットを示す図である。
【図3】本発明のデータ通信システムにおいて転送されるIPパケットヘッダフォーマットを示す図である。
【図4】本発明のデータ通信システムにおけるデータ送信端末の処理フローを示す図である。
【図5】本発明のデータ通信システムにおけるデータ送信端末およびデータ受信端末のデータ通信処理を説明するタイムシーケンス図である。
【図6】本発明のデータ通信システムにおいて転送されるNACK−RTCPパケットフォーマットを示す図である。
【図7】本発明のデータ通信システムにおいて転送されるNACK−RTCPパケットにおけるオプション値の機能について説明する図である。
【図8】本発明のデータ通信システムにおいて転送されるACK−RTCPパケットフォーマットを示す図である。
【図9】本発明のデータ通信システムにおいて転送されるECHO−RTCP、およびECHO−REPLY−RTCPパケットフォーマットを示す図である。
【図10】本発明のデータ通信システムにおいて転送されるEOS−RTCPパケットフォーマットを示す図である。
【図11】本発明のデータ通信システムにおけるデータ受信端末の処理フローを示す図である。
【図12】本発明のデータ通信システムにおけるデータ受信端末のECHO−RTCP、およびECHO−REPLY−RTCPパケットを適用したRTT計測処理フローを示す図である。
【図13】データ送信端末装置およびデータ受信端末装置のシステム構成例を示す図である。
【符号の説明】
101 ビデオカメラ
102 エンコーダ
103 バッファ
104 送信側端末
105 ARQ処理部
106 RTPパケット作成部
107 RTCPパケット作成部
108 RTCPパケット解析部
109 RTCP入出力ポート
110 RTPパケット出力ポート
111 IPネットワーク
112 RTPパケット入力ポート
113 RTCP入出力ポート
114 RTPパケット解析部
115 RTCPパケット解析部
116 RTCPパケット作成部
116 ARQ判定部
117 バッファ
118 インデックスリスト
119 ARQ判定部
120 デコーダ
809 PCIバス
832 ディスプレイ
833 ビデオカメラ
834 マイク
835 スピーカ
837 マウス
838 キーボード
850 データ送受信装置
851 コーデック
852 ネットワークインタフェース
853 入出力インタフェース
854 AVインタフェース
855 ディスプレイインタフェース
856 CPU
857 メモリ
858 HDD

Claims (17)

  1. データ送信装置およびデータ受信装置からなり、ストリーム型データ転送を実行するデータ通信システムであり、
    データ送信装置は、
    送信データを格納したデータパケットを送信するパケット送信処理部と、
    データ受信装置から受信する再送要求メッセージパケットに従って再送すべきデータパケットの抽出処理を実行する再送制御部とを有し、
    データ受信装置は、
    前記データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
    前記再送要求処理制御部は、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
    再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行する構成を有することを特徴とするデータ通信システム。
  2. ストリーム型データ受信を実行するデータ受信装置であり、
    データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
    前記再送要求処理制御部は、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
    再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行する構成を有することを特徴とするデータ受信装置。
  3. 前記データパケットの格納データは、符号化データであり、
    前記再送要求処理制御部は、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの復号処理を含む再生に伴う処理開始時間前に可能か否かを判定する構成であることを特徴とする請求項に記載のデータ受信装置。
  4. 前記データ受信装置は、
    再送要求データパケットの識別データとしてのシーケンス番号と、該シーケンス番号に対応するデータパケットの重複再送の指定回数データを格納した再送要求メッセージパケットを生成して前記データ送信装置に送信する構成を有することを特徴とする請求項に記載のデータ受信装置。
  5. 前記データ受信装置の受信するデータパケットは、動画像データであり、
    前記再送要求処理制御部は、
    動画像データの1画像フレームの構成データを格納した複数のデータパケットの終端データパケットの受信に応じて、該終端データパケットの属する画像フレームの構成データを格納した複数のデータパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする請求項に記載のデータ受信装置。
  6. 前記データ受信装置の受信するデータパケットは、動画像データであり、
    前記再送要求処理制御部は、
    動画像データの1画像フレームの構成データを格納した複数のデータパケットの先頭データパケットの受信に応じて、該先頭データパケットの属する画像フレームの前フレームの構成データを格納した複数のデータパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする請求項に記載のデータ受信装置。
  7. 前記再送要求処理制御部は、
    データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする請求項に記載のデータ受信装置。
  8. 前記再送要求処理制御部は、
    定期的な時間間隔に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成であることを特徴とする請求項に記載のデータ受信装置。
  9. 前記再送要求処理制御部は、
    前記データ送信装置とデータ受信装置における往復伝播遅延(RTT)の計測処理のために前記データ送信装置に対するエコーパケットの送信および該エコーパケットに対するエコーリプライパケットの受信処理制御を実行し、
    該エコーパケットに基づいて算出する往復伝播遅延(RTT)に基づいて、再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生処理開始時間前に可能か否かを判定する構成を有することを特徴とする請求項に記載のデータ受信装置。
  10. 前記データ受信装置は、
    再送要求データパケットの識別データとしてのシーケンス番号、またはパケットの属するタイムスタンプ指定データの少なくともいずれかと、再送要求範囲を指定するオプションを格納した再送要求メッセージパケットを生成して前記データ送信装置に送信する構成を有することを特徴とする請求項に記載のデータ受信装置。
  11. 前記データパケットは、データ転送プロトコルとしてのRTPに従ったフォーマットを有し、前記再送要求は、制御プロトコルとしてのRTCPに従ったフォーマットを有することを特徴とする請求項に記載のデータ受信装置。
  12. 前記データ受信装置は、
    複数のデータパケットに関する再送要求を1つの再送要求メッセージパケットとしてデータ送信装置に対して送信する構成であることを特徴とする請求項に記載のデータ受信装置。
  13. 前記データ受信装置は、
    複数のデータパケットに関する受信確認を1つの受信確認メッセージパケットとしてデータ送信装置に対して送信する構成であることを特徴とする請求項に記載のデータ受信装置。
  14. ストリーム型データ受信を実行するデータ受信装置であり、
    データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
    前記再送要求処理制御部は、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージパケットの送信処理を実行し、当該送信処理に際して、前記データパケット受信時におけるパケットロス率に基づいて前記再送要求メッセージパケットの送信回数を変化させ、パケットロス率が一定値以上になった場合は、前記再送要求メッセージパケットの送信回数を増加させる処理を行なう構成を有すると共に、
    データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成を有することを特徴とするデータ受信装置。
  15. ストリーム型データ受信を実行するデータ受信装置であり、
    データ送信装置から受信するデータパケットを受信するパケット受信処理部と、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御部とを有し、
    前記再送要求処理制御部は、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、再送要求送信を決定すると共に、前記再送要求メッセージパケットに対して該再送要求メッセージパケットの再送回数を記述する構成を有するとともに、
    データパケット格納データの再生処理開始時間に間に合うための再送要求最終期限に基づいて、受信データパケット中のエラーまたはロスト・データパケットの検出処理を実行する構成を有することを特徴とするデータ受信装置。
  16. ストリーム型データ受信を実行するデータ受信方法であり、
    データ送信装置から受信するデータパケットを受信するパケット受信処理ステップと、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御ステップとを有し、
    前記再送要求処理制御ステップは、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
    再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行するステップを有することを特徴とするデータ受信方法。
  17. データ受信装置において、ストリーム型データ受信処理を実行させるコンピュータ・プログラムであって、
    データ送信装置から受信するデータパケットを受信するパケット受信処理ステップと、
    前記データ送信装置から受信するデータパケットのエラーまたはロスト・データパケットの検出に基づいて、前記データ送信装置に対するデータパケット再送要求としての再送要求メッセージパケットの送信可否を判定する再送要求処理制御ステップとを有し、
    前記再送要求処理制御ステップは、
    再送要求に基づく再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能か否かを判定し、可能であるとの判定を条件として、前記再送要求メッセージの送信処理を実行すると共に、
    再送データパケット受信が、再送データパケット格納データの再生に伴う処理開始時間前に可能となる予め計測済みの最終期限において、最終的なロスト・データパケットの検出処理を実行し、前記最終期限においてロスト・データパケットの検出がなされた場合には、最終的な前記再送要求メッセージの送信処理を実行させるステップを有することを特徴とするコンピュータ・プログラム。
JP2001369731A 2001-12-04 2001-12-04 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム Expired - Lifetime JP3912091B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001369731A JP3912091B2 (ja) 2001-12-04 2001-12-04 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
KR20020076260A KR100967377B1 (ko) 2001-12-04 2002-12-03 데이터 통신 시스템, 데이터 송신 장치, 데이터 수신 장치, 데이터 통신 방법, 및 컴퓨터 프로그램을 기록한 매체
US10/310,212 US7315898B2 (en) 2001-12-04 2002-12-04 Data communication system, data transmission apparatus, data reception apparatus, data communication method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001369731A JP3912091B2 (ja) 2001-12-04 2001-12-04 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Publications (3)

Publication Number Publication Date
JP2003169040A JP2003169040A (ja) 2003-06-13
JP2003169040A5 JP2003169040A5 (ja) 2005-03-17
JP3912091B2 true JP3912091B2 (ja) 2007-05-09

Family

ID=19179073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001369731A Expired - Lifetime JP3912091B2 (ja) 2001-12-04 2001-12-04 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Country Status (3)

Country Link
US (1) US7315898B2 (ja)
JP (1) JP3912091B2 (ja)
KR (1) KR100967377B1 (ja)

Families Citing this family (161)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7576770B2 (en) * 2003-02-11 2009-08-18 Raymond Metzger System for a plurality of video cameras disposed on a common network
US7698450B2 (en) 2000-11-17 2010-04-13 Monroe David A Method and apparatus for distributing digitized streaming video over a network
US6996624B1 (en) * 2001-09-27 2006-02-07 Apple Computer, Inc. Reliable real-time transport protocol
KR100460970B1 (ko) * 2002-01-10 2004-12-09 삼성전자주식회사 데이터 송수신 시스템 및 방법
JP3900413B2 (ja) * 2002-02-14 2007-04-04 Kddi株式会社 映像情報伝送方式およびプログラム
US7542471B2 (en) 2002-10-30 2009-06-02 Citrix Systems, Inc. Method of determining path maximum transmission unit
US7616638B2 (en) 2003-07-29 2009-11-10 Orbital Data Corporation Wavefront detection and disambiguation of acknowledgments
US8270423B2 (en) 2003-07-29 2012-09-18 Citrix Systems, Inc. Systems and methods of using packet boundaries for reduction in timeout prevention
US8233392B2 (en) * 2003-07-29 2012-07-31 Citrix Systems, Inc. Transaction boundary detection for reduction in timeout penalties
US7630305B2 (en) 2003-07-29 2009-12-08 Orbital Data Corporation TCP selective acknowledgements for communicating delivered and missed data packets
US7689709B2 (en) * 2002-12-13 2010-03-30 Sap Ag Native format tunneling
JP2004289711A (ja) * 2003-03-25 2004-10-14 Toshiba Corp 送信装置及び受信装置
JP3825416B2 (ja) * 2003-04-14 2006-09-27 国立大学法人北陸先端科学技術大学院大学 データ同期方法、データ同期システム及びデータ同期プログラム
CN1276672C (zh) * 2003-05-16 2006-09-20 株式会社Ntt都科摩 分组通讯系统、基站和移动站
US7076717B2 (en) * 2003-06-13 2006-07-11 Microsoft Corporation Time-aware best-effort hole-filling retry method and system for network communications
WO2005006640A1 (en) * 2003-07-11 2005-01-20 Philips Intellectual Property & Standards Gmbh Transmission of data packets from a transmitter to a receiver
US7698453B2 (en) * 2003-07-29 2010-04-13 Oribital Data Corporation Early generation of acknowledgements for flow control
US8437284B2 (en) 2003-07-29 2013-05-07 Citrix Systems, Inc. Systems and methods for additional retransmissions of dropped packets
US7417989B1 (en) * 2003-07-29 2008-08-26 Sprint Spectrum L.P. Method and system for actually identifying a media source in a real-time-protocol stream
US8432800B2 (en) 2003-07-29 2013-04-30 Citrix Systems, Inc. Systems and methods for stochastic-based quality of service
US7656799B2 (en) 2003-07-29 2010-02-02 Citrix Systems, Inc. Flow control system architecture
US8238241B2 (en) 2003-07-29 2012-08-07 Citrix Systems, Inc. Automatic detection and window virtualization for flow control
EP1667395A4 (en) * 2003-09-18 2010-05-26 Nomura Res Inst Co Ltd COMMUNICATION SYSTEM, COMMUNICATION DEVICE AND DATA TRANSFER CONTROL METHOD
US8104065B2 (en) * 2003-11-13 2012-01-24 Arris Group, Inc. System to provide markers to affect rendering and navigation of content on demand
US20070097987A1 (en) * 2003-11-24 2007-05-03 Rey Jose L Feedback provision using general nack report blocks and loss rle report blocks
JP4452983B2 (ja) * 2004-01-08 2010-04-21 ソニー株式会社 受信装置および方法、プログラム、並びに記録媒体
PL2615883T3 (pl) * 2004-03-09 2019-04-30 Optis Wireless Technology Llc Sposób dostępu bezpośredniego i urządzenie terminala komunikacji radiowej
JP4268076B2 (ja) 2004-03-09 2009-05-27 株式会社エヌ・ティ・ティ・ドコモ 移動通信システム、移動端末及びネットワーク側対向装置
US8359349B2 (en) * 2004-03-18 2013-01-22 Nokia Corporation System and associated terminal, method and computer program product for uploading content
US8296436B2 (en) * 2004-03-22 2012-10-23 Nokia Corporation Conveying parameters for broadcast/multicast sessions via a communication protocol
JP2005303927A (ja) * 2004-04-15 2005-10-27 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US7643503B2 (en) * 2004-07-30 2010-01-05 Sony Corporation System and method for dynamically determining retransmit buffer time
US7839844B2 (en) * 2004-07-30 2010-11-23 Sony Corporation System and method for dynamically determining retransmit buffer time
WO2006033201A1 (ja) * 2004-09-21 2006-03-30 Hitachi Communication Technologies, Ltd. ノード装置、パケット制御装置、無線通信装置および送信制御方法
US7702750B2 (en) 2004-09-29 2010-04-20 Citrix Systems, Inc. System and method for event detection and re-direction over a network using a presentation level protocol
US8069226B2 (en) 2004-09-30 2011-11-29 Citrix Systems, Inc. System and method for data synchronization over a network using a presentation level protocol
US8130633B2 (en) * 2004-10-22 2012-03-06 Research In Motion Limited Method for transferring data in a wireless network
US7522528B2 (en) * 2004-11-18 2009-04-21 Qvidium Technologies, Inc. Low-latency automatic repeat request packet recovery mechanism for media streams
US7675872B2 (en) * 2004-11-30 2010-03-09 Broadcom Corporation System, method, and apparatus for displaying pictures
US8634413B2 (en) * 2004-12-30 2014-01-21 Microsoft Corporation Use of frame caching to improve packet loss recovery
US8169908B1 (en) * 2005-01-29 2012-05-01 Lsi Corporation Method for discarding corrupted data packets in a reliable transport fabric
JP2006211602A (ja) * 2005-01-31 2006-08-10 Toshiba Corp データ送信機及びプログラム
JP2006245834A (ja) * 2005-03-02 2006-09-14 Nec Corp Ip網の通信装置
US7752532B2 (en) * 2005-03-10 2010-07-06 Qualcomm Incorporated Methods and apparatus for providing linear erasure codes
CN1845611A (zh) * 2005-04-08 2006-10-11 华为技术有限公司 基于h.264的视频传输保护方法
JP4688566B2 (ja) * 2005-05-10 2011-05-25 富士通東芝モバイルコミュニケーションズ株式会社 送信機及び受信機
US7957363B2 (en) * 2005-05-26 2011-06-07 International Business Machines Corporation System, method, and service for dynamically selecting an optimum message pathway
US20060291452A1 (en) * 2005-06-24 2006-12-28 Motorola, Inc. Method and apparatus for providing reliable communications over an unreliable communications channel
JP4517294B2 (ja) * 2005-07-06 2010-08-04 ソニー株式会社 通信システム、送信装置、送信方法、およびプログラム
JP2007053745A (ja) * 2005-07-22 2007-03-01 Sanyo Electric Co Ltd 受信機及びプログラム
US8731069B2 (en) 2005-08-25 2014-05-20 Canon Kabushiki Kaisha Remote display system and method
US20070061831A1 (en) * 2005-09-09 2007-03-15 Sbc Knowledge Ventures L.P. IPTV channel usage and video delivery path monitoring architecture
TWI277325B (en) * 2005-10-28 2007-03-21 Ind Tech Res Inst Packet transmitting method of wireless network
US7743152B2 (en) * 2005-10-31 2010-06-22 Qualcomm Incorporated Method and apparatus for detecting the presence of a terminal in a data session
US8363675B2 (en) * 2006-03-24 2013-01-29 Samsung Electronics Co., Ltd. Method and system for transmission of uncompressed video over wireless communication channels
US20070234170A1 (en) * 2006-03-29 2007-10-04 Samsung Electronics Co., Ltd. Method and system for communication of video information over wireless channels
US8432938B2 (en) * 2006-03-29 2013-04-30 Samsung Electronics Co., Ltd. Method and system for video stream transmission over wireless channels
JP4798495B2 (ja) * 2006-05-30 2011-10-19 日本電気株式会社 映像配信品質測定システム、装置および方法
JP4930691B2 (ja) * 2006-05-30 2012-05-16 日本電気株式会社 再現システム、再現装置、再現方法、及びプログラム
US20070280217A1 (en) * 2006-06-01 2007-12-06 Texas Instruments Incorporated Inter-nodal robust mode for real-time media streams in a network
JP2007325077A (ja) * 2006-06-02 2007-12-13 Mitsubishi Electric Corp データ受信装置及びデータ受信方法
JP4509068B2 (ja) * 2006-07-24 2010-07-21 富士通株式会社 パケット処理装置
JP4921064B2 (ja) * 2006-07-31 2012-04-18 キヤノン株式会社 通信装置、通信方法、通信装置を制御するためのプログラム及びプログラムを格納した記憶媒体
JP2008040347A (ja) * 2006-08-09 2008-02-21 Toshiba Corp 画像表示装置、画像表示方法および画像表示プログラム
US8799918B2 (en) * 2006-09-11 2014-08-05 Microsoft Corporation Dynamic network load balancing using roundtrip heuristic
JP2008079150A (ja) * 2006-09-22 2008-04-03 Canon Inc 通信機器及びデータ転送方法
WO2008041329A1 (en) * 2006-10-04 2008-04-10 Fujitsu Limited Data transfer method
JP4176122B2 (ja) * 2006-10-24 2008-11-05 株式会社東芝 サーバ端末、画面共有方法およびプログラム
FR2911234B1 (fr) * 2007-01-05 2009-02-20 Thales Sa Procede d'envoi de paquets de donnees d'un serveur vers un client, le client utilisant simultanement a un debit constant d les donnees qu'il recoit
KR100920516B1 (ko) 2007-01-10 2009-10-09 한국전자통신연구원 데이터 전송 장치 및 방법
KR100859499B1 (ko) * 2007-01-15 2008-09-22 강릉대학교산학협력단 데이터 송수신 방법 및 그에 따른 통신 시스템
US8296662B2 (en) * 2007-02-05 2012-10-23 Brother Kogyo Kabushiki Kaisha Image display device
US8170023B2 (en) * 2007-02-20 2012-05-01 Broadcom Corporation System and method for a software-based TCP/IP offload engine for implementing efficient digital media streaming over internet protocol networks
US8139487B2 (en) * 2007-02-28 2012-03-20 Microsoft Corporation Strategies for selecting a format for data transmission based on measured bandwidth
US7877514B2 (en) * 2007-05-03 2011-01-25 Samsung Electronics Co., Ltd. System and method for time-constrained transmission of video in a communication system
EP2026580A1 (en) * 2007-06-12 2009-02-18 British Telecommunications public limited company Video processing
US7908624B2 (en) * 2007-06-18 2011-03-15 Broadcom Corporation System and method for just in time streaming of digital programs for network recording and relaying over internet protocol network
US7782851B2 (en) * 2007-06-26 2010-08-24 At&T Intellectual Property I, L.P. System and method of detecting lost video data packets
JP4983435B2 (ja) * 2007-06-27 2012-07-25 富士通株式会社 パケット通信品質計測装置及び方法
KR100862971B1 (ko) * 2007-07-26 2008-10-13 강릉대학교산학협력단 무선 센서 네트워크의 노드들에 대한 펌웨어 업데이트 방법
JP4447028B2 (ja) * 2007-08-10 2010-04-07 富士通株式会社 通信制御方法、送信装置、およびコンピュータプログラム
US7969921B2 (en) * 2007-08-29 2011-06-28 Samsung Electronics Co., Ltd. Method and system for data packet communication in wireless communication systems
US8782274B2 (en) * 2007-10-19 2014-07-15 Voxer Ip Llc Method and system for progressively transmitting a voice message from sender to recipients across a distributed services communication network
US8099512B2 (en) * 2007-10-19 2012-01-17 Voxer Ip Llc Method and system for real-time synchronization across a distributed services communication network
US8699383B2 (en) 2007-10-19 2014-04-15 Voxer Ip Llc Method and apparatus for real-time synchronization of voice communications
US8559319B2 (en) * 2007-10-19 2013-10-15 Voxer Ip Llc Method and system for real-time synchronization across a distributed services communication network
US8250181B2 (en) * 2007-10-19 2012-08-21 Voxer Ip Llc Method and apparatus for near real-time synchronization of voice communications
JP5500385B2 (ja) * 2007-10-19 2014-05-21 ヴォクサー アイピー エルエルシー ネットワークを介したリアルタイムメディア同期の方法およびシステム
US8205126B2 (en) * 2007-11-27 2012-06-19 Samsung Electronics Co., Ltd. System and method for wireless communication of uncompressed video using selective retransmission
US8255753B2 (en) * 2007-12-04 2012-08-28 Intel Corporation Encoding/decoding technique for rebroadcasting lost packets
KR20090061247A (ko) * 2007-12-11 2009-06-16 삼성전자주식회사 디지털 방송 수신 장치의 osd 인터페이스
US9112632B2 (en) 2008-01-25 2015-08-18 Cisco Technology, Inc. Supporting efficient and accurate sync/followup timestamps
JP5632834B2 (ja) 2008-06-23 2014-11-26 コーニンクレッカ フィリップス エヌ ヴェ ネットワークで通信するための方法及び関連する無線局
EP2151940A1 (en) * 2008-08-05 2010-02-10 Nokia Siemens Networks OY Communication network element and method transmitting data
KR101999852B1 (ko) * 2008-08-11 2019-07-15 코닌클리케 필립스 엔.브이. 네트워크에서 통신하기 위한 방법, 제 2 스테이션 및 이를 위한 시스템
KR100998830B1 (ko) 2008-08-27 2010-12-06 주식회사 엘지유플러스 무선 네트워크에서의 유디피를 이용한 데이터 전송 시스템및 그 방법
CN102138336B (zh) * 2008-08-28 2014-07-16 住友电气工业株式会社 动态图像数据的分配方法
JP4625119B2 (ja) * 2008-09-09 2011-02-02 株式会社エヌ・ティ・ティ・ドコモ 移動通信システム、移動端末及びネットワーク側対向装置
JP5207895B2 (ja) * 2008-09-17 2013-06-12 キヤノン株式会社 送信装置、受信装置、及び方法、プログラム
KR101048865B1 (ko) 2009-03-16 2011-07-13 주식회사 팬택 전송계층 성능 향상을 위한 전송계층 제어장치 및 전송속도와 신뢰성을 동시에 보장할 수 있는 패킷 송신 방법
ES2608667T3 (es) * 2009-04-01 2017-04-12 Qualcomm Incorporated Gestión de las transmisiones entre los nodos que se comunican a través de un medio de comunicación compartido
JP5332854B2 (ja) * 2009-04-20 2013-11-06 ソニー株式会社 無線送信機、無線送信方法、無線受信機および無線受信方法
JP5522987B2 (ja) * 2009-07-02 2014-06-18 キヤノン株式会社 送信装置、送信方法、及びコンピュータプログラム
JP5508819B2 (ja) * 2009-11-13 2014-06-04 オリンパス株式会社 受信装置
US8661166B2 (en) * 2009-12-16 2014-02-25 Intel Corporation DFX software debug feature for IO and other non-memory typed transactions
BR112012017465A2 (pt) * 2010-01-14 2019-09-24 Sumitomo Electric Industries método de exibição de dados codificados de imagem de vídeo , dispositvo, e sistema de comunicação
EP2541842B1 (en) * 2010-02-25 2018-05-23 Mitsubishi Electric Corporation Communications device and address learning method
EP2375614B1 (en) * 2010-04-09 2014-05-07 Alcatel Lucent Method for broadcasting multimedia content
WO2011145557A1 (ja) * 2010-05-19 2011-11-24 日本電気株式会社 パケット再送制御装置とパケット再送制御方法
JP5074557B2 (ja) * 2010-06-09 2012-11-14 日本電信電話株式会社 データ配信システムおよびデータ配信方法
JP5465106B2 (ja) * 2010-06-21 2014-04-09 オリンパス株式会社 表示装置及び表示システム
US20110321015A1 (en) * 2010-06-23 2011-12-29 Yen Hsiang Chew Hardware triggering mechanism for software debugger
US9372719B2 (en) * 2010-11-05 2016-06-21 Nec Corporation Information processing device for correcting procedure
JP5728999B2 (ja) * 2011-02-16 2015-06-03 富士通株式会社 通信方法、通信プログラム、および、通信装置
KR101581515B1 (ko) * 2011-07-15 2016-01-11 미쓰비시덴키 가부시키가이샤 송신 장치, 수신 장치, 통신 장치, 통신 시스템 및 송신 방법
US9461777B2 (en) * 2011-11-21 2016-10-04 Qualcomm Incorporated Hybrid networking system with seamless path switching of streams
WO2013100783A1 (en) 2011-12-29 2013-07-04 Intel Corporation Method and system for control signalling in a data path module
IL217306A (en) * 2012-01-01 2016-05-31 Video Flow Ltd Package recovery system and method
JP5722264B2 (ja) * 2012-03-23 2015-05-20 株式会社日立ハイテクノロジーズ データ処理装置、データ容量増加抑制方法
JP6014411B2 (ja) * 2012-08-15 2016-10-25 日本放送協会 無線通信を行う受信装置、受信方法及びプログラム
US20140073352A1 (en) * 2012-09-11 2014-03-13 Qualcomm Incorporated Method for precise location determination
KR102022042B1 (ko) * 2012-09-28 2019-09-18 삼성전자주식회사 데이터 전송 방법 및 시스템
WO2014083739A1 (ja) * 2012-11-28 2014-06-05 パナソニック株式会社 受信端末および受信方法
US9722943B2 (en) 2012-12-17 2017-08-01 Qualcomm Incorporated Seamless switching for multihop hybrid networks
CN104981872B (zh) * 2013-03-15 2018-11-06 英特尔公司 存储系统
CN103152223B (zh) * 2013-03-15 2016-08-03 华为技术有限公司 网络性能监测方法及装置
JP2014195158A (ja) * 2013-03-28 2014-10-09 Canon Inc 通信装置と、当該通信装置を含む通信システム、及びその制御方法とプログラム
KR102025757B1 (ko) * 2013-07-10 2019-09-27 삼성전자주식회사 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체
KR102171117B1 (ko) * 2013-08-30 2020-10-29 삼성전자주식회사 패킷 송수신 방법 및 그에 따른 단말, 그에 따른 시스템
CN104426636A (zh) * 2013-09-11 2015-03-18 松下电器产业株式会社 通信控制装置及通信控制方法
JP6496740B2 (ja) * 2013-09-26 2019-04-03 コーヒレント・ロジックス・インコーポレーテッド 次世代放送システム及び方法
US10331583B2 (en) 2013-09-26 2019-06-25 Intel Corporation Executing distributed memory operations using processing elements connected by distributed channels
US9600191B2 (en) 2014-06-02 2017-03-21 Micron Technology, Inc. Systems and methods for reordering packet transmissions in a scalable memory system protocol
US9787852B2 (en) * 2014-06-04 2017-10-10 Alcatel-Lucent Usa Inc. Sequence number reuse for CDR transport using GTP'
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
CN105072485B (zh) * 2015-08-26 2018-11-13 小米科技有限责任公司 时延控制方法及装置
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10148964B2 (en) * 2016-11-03 2018-12-04 Ujet, Inc. Image quality management
US10558575B2 (en) 2016-12-30 2020-02-11 Intel Corporation Processors, methods, and systems with a configurable spatial accelerator
US10515046B2 (en) 2017-07-01 2019-12-24 Intel Corporation Processors, methods, and systems with a configurable spatial accelerator
US10515049B1 (en) 2017-07-01 2019-12-24 Intel Corporation Memory circuits and methods for distributed memory hazard detection and error recovery
US11086816B2 (en) 2017-09-28 2021-08-10 Intel Corporation Processors, methods, and systems for debugging a configurable spatial accelerator
US10496574B2 (en) 2017-09-28 2019-12-03 Intel Corporation Processors, methods, and systems for a memory fence in a configurable spatial accelerator
US20190104169A1 (en) * 2017-10-03 2019-04-04 Synology Inc. Methods and computer program products for transceiving files through networks and apparatuses using the same
US10565134B2 (en) * 2017-12-30 2020-02-18 Intel Corporation Apparatus, methods, and systems for multicast in a configurable spatial accelerator
US10564980B2 (en) 2018-04-03 2020-02-18 Intel Corporation Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator
US11307873B2 (en) 2018-04-03 2022-04-19 Intel Corporation Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging
US11200186B2 (en) 2018-06-30 2021-12-14 Intel Corporation Apparatuses, methods, and systems for operations in a configurable spatial accelerator
US10853073B2 (en) 2018-06-30 2020-12-01 Intel Corporation Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator
US10891240B2 (en) 2018-06-30 2021-01-12 Intel Corporation Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator
US10678724B1 (en) 2018-12-29 2020-06-09 Intel Corporation Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator
JPWO2020174994A1 (ja) 2019-02-26 2020-09-03
JP7059973B2 (ja) 2019-03-15 2022-04-26 オムロン株式会社 制御システム、装置および制御方法
US11029927B2 (en) 2019-03-30 2021-06-08 Intel Corporation Methods and apparatus to detect and annotate backedges in a dataflow graph
US10965536B2 (en) 2019-03-30 2021-03-30 Intel Corporation Methods and apparatus to insert buffers in a dataflow graph
US10915471B2 (en) 2019-03-30 2021-02-09 Intel Corporation Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator
US10817291B2 (en) 2019-03-30 2020-10-27 Intel Corporation Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator
US11037050B2 (en) 2019-06-29 2021-06-15 Intel Corporation Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator
CN110730053A (zh) * 2019-09-09 2020-01-24 晶晨半导体(深圳)有限公司 一种基于ts格式和udp传输方式的网络丢包重传方法
US11907713B2 (en) 2019-12-28 2024-02-20 Intel Corporation Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator
CN114095796A (zh) * 2020-07-30 2022-02-25 中国移动通信集团终端有限公司 无效重传包减少方法、装置、设备及计算机存储介质

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04170239A (ja) * 1990-11-02 1992-06-17 Nec Corp データ伝送受信装置
JPH05160811A (ja) * 1991-12-06 1993-06-25 Hitachi Ltd データ転送方式
JPH06237451A (ja) * 1993-02-10 1994-08-23 Hitachi Ltd 動画通信方式および端末装置
US5444718A (en) * 1993-11-30 1995-08-22 At&T Corp. Retransmission protocol for wireless communications
JPH07283782A (ja) * 1994-04-08 1995-10-27 Matsushita Electric Ind Co Ltd 移動通信システム
JPH07283757A (ja) * 1994-04-14 1995-10-27 Matsushita Electric Ind Co Ltd 音声データ通信装置
KR0156856B1 (ko) * 1995-12-30 1998-11-16 김광호 다중 메세지 재전송 처리장치 및 방법
JPH09191314A (ja) * 1996-01-10 1997-07-22 Mitsubishi Electric Corp 連続データ伝送方法および連続データ伝送装置
EP0786880B1 (en) * 1996-01-23 2006-09-20 Ntt Mobile Communications Network Inc. Communication system and transmission station with error detection and retransmission
JPH09247132A (ja) * 1996-03-08 1997-09-19 Yazaki Corp 無線パケット通信装置及び送信装置
US5768527A (en) * 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
JPH10200897A (ja) * 1997-01-08 1998-07-31 Nippon Telegr & Teleph Corp <Ntt> 動画像伝送装置
US5918002A (en) * 1997-03-14 1999-06-29 Microsoft Corporation Selective retransmission for efficient and reliable streaming of multimedia packets in a computer network
JP3349926B2 (ja) * 1997-07-10 2002-11-25 三菱電機株式会社 受信制御装置、通信制御システム及び通信制御方法
JP3794663B2 (ja) * 1998-03-13 2006-07-05 株式会社東芝 無線通信システム
US6275471B1 (en) * 1998-05-12 2001-08-14 Panasonic Technologies, Inc. Method for reliable real-time multimedia streaming
JPH11331839A (ja) * 1998-05-13 1999-11-30 Matsushita Electric Ind Co Ltd 映像伝送再送の装置及び方法
JP3450771B2 (ja) * 1998-11-30 2003-09-29 松下電器産業株式会社 データ伝送方法,及びデータ送信装置
US6507582B1 (en) * 1999-05-27 2003-01-14 Qualcomm Incorporated Radio link protocol enhancements for dynamic capacity wireless data channels
JP2001111618A (ja) * 1999-10-08 2001-04-20 Nippon Telegr & Teleph Corp <Ntt> 通信システムとその通信方法、ならびにそのプログラムを記録した媒体
JP3391316B2 (ja) * 1999-10-22 2003-03-31 日本電気株式会社 ネットワークシステム
US6700893B1 (en) * 1999-11-15 2004-03-02 Koninklijke Philips Electronics N.V. System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
JP2001218276A (ja) * 2000-02-04 2001-08-10 Ntt Docomo Inc 移動通信システムにおけるデータ通信方法及び装置
JP3683468B2 (ja) * 2000-04-13 2005-08-17 株式会社エヌ・ティ・ティ・ドコモ マルチキャストサービス提供システムにおける再送制御方法、情報配信装置及び無線端末
WO2002037763A1 (fr) * 2000-11-06 2002-05-10 Matsushita Electric Industrial Co., Ltd. Emetteur, recepteur, et procede de distribution de donnees radiodiffusees
US6907460B2 (en) * 2001-01-18 2005-06-14 Koninklijke Philips Electronics N.V. Method for efficient retransmission timeout estimation in NACK-based protocols
US7117521B2 (en) * 2001-08-31 2006-10-03 Intel Corporation Method to measure the perceived quality of streaming media
US8880709B2 (en) * 2001-09-12 2014-11-04 Ericsson Television Inc. Method and system for scheduled streaming of best effort data
US6996624B1 (en) * 2001-09-27 2006-02-07 Apple Computer, Inc. Reliable real-time transport protocol

Also Published As

Publication number Publication date
US20030120802A1 (en) 2003-06-26
US7315898B2 (en) 2008-01-01
JP2003169040A (ja) 2003-06-13
KR20030045643A (ko) 2003-06-11
KR100967377B1 (ko) 2010-07-05

Similar Documents

Publication Publication Date Title
JP3912091B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3757857B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
US7263644B2 (en) Data transmitting/receiving system and method thereof
JP4000905B2 (ja) 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
JP4452983B2 (ja) 受信装置および方法、プログラム、並びに記録媒体
JP3450771B2 (ja) データ伝送方法,及びデータ送信装置
US20020181506A1 (en) Scheme for supporting real-time packetization and retransmission in rate-based streaming applications
US20040098748A1 (en) MPEG-4 live unicast video streaming system in wireless network with end-to-end bitrate-based congestion control
EP2053858A1 (en) Communication processing device, communication control method, and computer program
EP1235414B1 (en) Data transmitting apparatus and data receiving apparatus
JP3871661B2 (ja) マルチメディアコンテンツ受信装置及びマルチメディアコンテンツ受信方法
JP2005051299A (ja) パケット送信装置、パケット受信装置、パケット送信方法及びパケット受信方法
JP2003324496A (ja) データ伝送方法,及びパケットデータ構造
KR20080062692A (ko) 스트림 녹화 방법, 장치 및 시스템
JP4433281B2 (ja) 受信装置および方法、記録媒体、並びにプログラム
JP2008141633A (ja) データ通信システム、データ受信装置、データ受信方法、データ送信装置およびデータ送信方法
JP2003163691A (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3735352B2 (ja) データ伝送方法,データ送信装置,及びデータ受信装置
Huszák et al. Source controlled and delay sensitive selective retransmission scheme for multimedia streaming
JP2005136547A (ja) 通信システム、受信装置および方法、送信装置および方法、記録媒体、並びにプログラム
Huszák et al. DCCP-based multiple retransmission technique for multimedia streaming
JP2006067410A (ja) 送信装置および方法、プログラム、並びに送受信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040423

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060714

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: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070122

R151 Written notification of patent or utility model registration

Ref document number: 3912091

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20100209

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110209

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110209

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120209

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120209

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130209

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130209

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140209

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term