JP5919527B2 - 送信装置、送信方法、集積回路及びそのプログラム - Google Patents

送信装置、送信方法、集積回路及びそのプログラム Download PDF

Info

Publication number
JP5919527B2
JP5919527B2 JP2012546660A JP2012546660A JP5919527B2 JP 5919527 B2 JP5919527 B2 JP 5919527B2 JP 2012546660 A JP2012546660 A JP 2012546660A JP 2012546660 A JP2012546660 A JP 2012546660A JP 5919527 B2 JP5919527 B2 JP 5919527B2
Authority
JP
Japan
Prior art keywords
transmission
transmission rate
packet
amount
rate
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.)
Active
Application number
JP2012546660A
Other languages
English (en)
Other versions
JPWO2012172795A1 (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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2012172795A1 publication Critical patent/JPWO2012172795A1/ja
Application granted granted Critical
Publication of JP5919527B2 publication Critical patent/JP5919527B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • H04L7/0041Delay of data signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、通信パケットを送信する送信装置に関する。
従来より、通信路を介して受信装置へ通信パケットを送信する送信装置であって、前記受信装置へ前記通信パケットを送信する送信部と、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、前記フィードバックパケットの受信間隔の変動を検出する検出部を備え、前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた後に、前記送信レートを増加させる送信装置がある(特許文献1、非特許文献1を参照)。
特開2004−215199号公報
S. Floyd, M. Handley, J. Padhye and J. Widmer "RFC 5348 TCP Friendly Rate Control (TFRC): Protocol Specification"
しかしながら、このような従来の受信装置では、送信レートが増加される際に、増加される増加量が不適切であることがある。
本発明は、かかる問題に鑑みてなされたものであり、送信レートが増加される増加量が適切にできる送信装置、送信方法、プログラム、記録媒体、集積回路を提供することを目的とする。
本発明のある局面に係る送信装置は、通信路を介して受信装置へ通信パケットを送信する送信装置であって、前記受信装置へ前記通信パケットを送信する送信部と、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、前記フィードバックパケットの受信間隔の変動を検出する検出部と、前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定部とを備える。
なお、この全般的又は具体的な態様は、システム、方法、集積回路、又はコンピュータプログラム又は記録媒体で実現されてもよく、システム、方法、集積回路、及びコンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本発明の送信装置によれば、送信レートの増加量が、より適切にできる。
図1は、本発明の実施の形態1及び2に係るネットワーク構成図である。 図2は、実施の形態1に係る送信装置の構成を示すブロック構成図である。 図3は、実施の形態1に係る送信装置の処理の流れの概要を示すフローチャートである。 図4は、実施の形態1に係る送信レート決定部の状態遷移図である。 図5は、実施の形態1に係る通常レート制御の処理の流れを示すフローチャートである。 図6は、実施の形態1に係る送信レート抑制処理の流れを示すフローチャートである。 図7は、実施の形態1に係る送信レート回復処理の流れを示すフローチャートである。 図8は、実施の形態2において想定する課題を説明するためのネットワークシステムの一例を示す図である。 図9は、実施の形態2に係る送信装置の構成を示すブロック構成図である。 図10は、実施の形態2に係る送信レート決定部の状態遷移図である。 図11は、実施の形態2に係る送信レート抑制処理の流れを示すフローチャートである。 図12は、実施の形態2に係る送信レート回復処理の流れを示すフローチャートである。 図13は、本発明の実施の形態1及び2に係る送信装置を実現するコンピュータシステムのハードウェア構成を示すブロック図である。
(本発明の基礎となった知見)
本技術は、送信装置等に関し、特に、通信路を介して受信装置へ通信パケットを送信する送信装置等に関する。
ネットワーク環境で高品質な映像・音声伝送(以下AV伝送)を実現する技術として、利用可能な通信帯域幅(空き帯域幅)を推定する帯域推定技術(TFRC:TCP−Friendly Rate Control)がある(非特許文献1)。TFRCでは、送信装置が受信装置へ送信した通信パケットに対するフィードバックパケットを送信装置が受信する。送信装置は、受信されたフィードバッックパケットからパケットロス率と遅延とを算出する。送信装置は、このパケットロス率等の情報に基づいて、ネットワークの空き帯域幅を推定する。
TFRCでは、送信装置に一定時間フィードバックパケットが到着しない場合には、送信レートの値を半分に落とす抑制処理を実施する。送信装置は、その後、事前に定められた手順で、送信レートを徐々に上げていく回復処理を行う。これにより、送信装置が、ネットワークでの輻輳発生時に、一時的に送信レートを下げることにより、輻輳によるパケットロスを減らすことが可能である(非特許文献1)。
しかし、AV伝送においては、送信レートを必要以上に急激に下げることは、映像品質の悪化につながるため、好ましくない。
そこで、例えば特許文献1では、ネットワークの輻輳状態の変化に対応して、送信レートの下げ方を切り替える手法が示されている。
しかし、送信レートを下げた後に徐々に回復させるという上述の技術では、下げた送信レートを回復させる際に、適切な送信レートを決定することができない。これは特に、ネットワークの輻輳以外の原因により、フィードバックパケットが到着しない場合に問題となる。
フィードバックパケットが到着しない原因としては、ネットワークの輻輳以外の原因も考えられる。例えば、無線通信環境では、無線区間のMACレイヤにおける再送によって、フィードバックパケットが到着しないことがしばしば生じる。この場合、フィードバックパケットが到着しないことに対して、一旦送信レートを下げた後に、送信レートを徐々に上げていくという処理がされると、次の問題が生じてしまう。その問題とは、上記の処理では、フィードバックパケットが到着しないことに対して効果がないばかりか、送信レートを下げたことに伴い、映像品質の回復に長い時間がかかるという問題である。
本技術は、このような問題を解決し、映像品質の悪化を抑制して適切な送信レートを決定可能な送信装置を提供する。
本技術のある局面に係る送信装置は、通信路を介して受信装置へ通信パケットを送信する送信装置であって、前記受信装置へ前記通信パケットを送信する送信部と、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、前記フィードバックパケットの受信間隔の変動を検出する検出部と、前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定部とを備える。
この構成によると、送信装置は、パケットロス率が増加した際には、一旦送信レートを減少させる。こうして送信レートを減少させた後に、送信レートを減少させたことが、パケットロス率及びジッタに与えた影響の大きさを判断できる。そのため、送信装置は、その影響の大きさに基づいて、送信レートを適切に回復させることができる。したがって、送信装置は、映像品質の悪化を抑制して適切に送信レートを決定することができる。
すなわち、この構成によると、送信レートを減少させた後、送信レートを減少させた結果としてパケットロス率又はジッタが改善された場合には、送信レートを減少させたことに意義があるため、徐々に送信レートを増加させる。一方、送信レートを減少させても、パケットロス率又はジッタに改善の効果があまり見られない場合には、パケットの送信レートを急激に回復させることで画質を優先させることができる。したがって、一旦送信レートを減少させた後、送信レートが過剰に低いまま、なかなか回復しない状態を回避できる。その結果、送信装置は、映像品質の悪化を抑制して適切に送信レートを決定することができる。
例えば、上述の受信間隔(図5のS41のT)が、閾値(閾値TRTCP)より長いことが検出された際に(S41でYES)、次の第2の送信(図6、図11のS53)がされてもよい。第2の送信では、検出がされる前の第1の送信における第1の送信レートよりも低い第2の送信レートでの送信がされる。第1の送信での、上述の伝送時間等、後述の移動速度などの、第1の送信での値と(S52、S82参照)、第2の送信での値(図7のS61、図12のS91)との間の変化量(図7のジッタW、図12の移動速度の差分V−V)により、上述の意義がある場合と判断されるときに(S64のYES、S92のNO)、第2の送信の後にされる第3の送信での第3の送信レートとして、比較的低い一方の送信レート(S66、S93の小さい増加幅U/2を参照)が特定されてもよい。意義がない場合と判断されるときには(S64のNO、S92のYES)、比較的高い送信レート(S65、S94の大きい上昇幅Uを参照)が特定されてもよい。
これにより、意義がある場合と判断されるときには、低い一方の送信レートでの送信がされて、パケットロス率の改善等のメリットが維持される。しかも、意義がない場合と判断されるときには、高い他方の送信レートでの送信がされて、第3の送信で送信される映像の映像品質が高くできる。これにより、パケットロス率の改善等と、高い映像品質とが両立できる。
なお、こうして、上述の両立が可能である適切な送信レートを実現する増加量が決定されて、決定される増加量が適切にできる。
また、前記送信レート決定部は、前記パケットロス率の変化量及び前記ジッタがより大きいほど、より小さくなるように前記送信レートの増加量を決定し、前記増加量だけ前記送信レートを増加させるとしてもよい。
これによると、送信装置は、一旦送信レートを減少させた後、送信レートを減少させた結果として、パケットロス率又はジッタの少なくとも一方が改善された場合には、徐々に送信レートを増加させる。一方、送信レートを減少させても、パケットロス率又はジッタのいずれもが改善されなかった場合には、パケットの送信レートを急激に増加させることで、映像品質を回復させる。パケットロス率又はジッタが改善されなかったのであれば、送信レートを早期に回復させることによって、映像品質を回復させることが好ましいためである。したがって、一旦送信レートを減少させた後に、送信レートが過剰に低いまま回復しない状態を回避できる。その結果、送信装置は、映像品質の悪化を抑制して適切に送信レートを決定することができる。
具体的には、前記送信レート決定部は、前記フィードバックパケットに含まれる、前記通信パケットのパケットロス率を示す情報から、前記パケットロス率の変化量を取得するとしてもよい。
これによると、送信レート決定部は、受信装置へ送信した通信パケットのパケットロス率を取得することができる。したがって、異なる2つの時刻において取得した2つのパケットロス率の間の差分から、パケットロス率の変化量を取得することができる。
また、前記送信レート決定部は、前記送信レートを減少させた時刻の前後において、前記通信路の片方向遅延をそれぞれ計測することにより、前記ジッタの変化量を取得するとしてもよい。
具体的には、前記送信レート決定部は、前記パケットロス率の変化量及び前記ジッタの両方が、事前に定められた閾値よりも小さい場合(第1の場合)に、前記送信レートの増加量を所定値に決定し、前記パケットロス率の変化量及び前記ジッタの一方が、事前に定められた閾値以上である場合(第2の場合)に、前記送信レートの増加量を前記所定値の半分に決定し、前記パケットロス率の変化量及び前記ジッタの両方が、事前に定められた閾値以上である場合(第3の場合)に、前記送信レートの増加量を前記所定値の4分の1に決定するとしてもよい。なお、第1の場合とは、例えば、パケットロス率の変化量が第1の閾値より小さく、かつ、ジッタも上述の第2の閾値より小さい場合などである。第2の場合とは、パケットロス率の変化量と、ジッタとの何れか一方のみが、対応する閾値以上である場合などである。第3の場合とは、何れも、対応する閾値以上である場合などである。
より具体的には、前記送信レート決定部は、前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが第2の閾値よりも小さい場合に、前記送信レートの増加量を所定値に決定し、前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが前記第2の閾値以上、かつ、第3の閾値より小さい場合に、前記送信レートの増加量を前記所定値の半分に決定し、前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが前記第3の閾値以上である場合に、前記送信レートの増加量を前記所定値の4分の1に決定するとしてもよい。
また、前記送信レート決定部は、前記通信路のバッファ量を推定し、前記ジッタ及び前記パケットロス率の変化量がより大きいほど、また、前記バッファ量を前記送信レートで除した値がより小さいほど、より小さくなるように前記送信レートの増加量を決定するとしてもよい。
これによると、送信装置は、送信する通信パケットが、通信路にバッファリングされる時間が短いほど、送信レートの増加量を、より少なく抑えるように、送信レートを決定する。したがって、送信装置は、通信路の特性を考慮した適切な送信レートを決定することができる。
具体的には、前記送信レート決定部は、前記ジッタが前記バッファ量を前記送信レートで除した値よりも小さい場合には、前記送信レートの増加量を前記通信路の状況に基づいて決定される第1の増加量に決定し、前記ジッタが前記バッファ量を前記送信レートで除した値以上であり、かつ、前記ジッタが前記バッファ量を前記送信レートで除した値の2倍よりも小さい場合には、前記送信レートの増加量を前記第1の増加量の半分に決定し、前記ジッタが前記バッファ量を前記送信レートで除した値の2倍以上である場合には、前記送信レートの増加量を前記第1の増加量の4分の1に決定するとしてもよい。
本技術の他の局面に係る送信装置は、通信路を介して受信装置へ通信パケットを送信する送信装置であって、前記受信装置へ前記通信パケットを送信する送信部と、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、前記フィードバックパケットの受信間隔の変動を検出する検出部と、前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量に基づいて前記送信レートを増加させる、送信レート決定部とを備える。
この構成によると、送信装置及び受信装置の少なくとも一方が移動する場合において、例えば、通信速度が異なる無線基地局装置へ接続する場合など、移動に伴い、通信路の特性が異なり、変化しうる場合であっても、送信レートを適切に決定することができる。
具体的には、前記送信レート決定部は、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量がより小さいほど、より大きくなるように前記送信レートの増加量を決定し、前記増加量だけ前記送信レートを増加させるとしてもよい。
なお、このように、パケットロス率の変化量、及び、伝送時間の変化量を用いる先述の第1の局面に係る送信装置と、移動速度の変化量を用いる上記の第2の局面に係る送信装置とがある。これら2つの送信装置では、何れも、送信レートを減少させたことに意義があるか否かを示す、減少がされる前における量と、された後における量との間の変化量(パケットロス率の変化量、ジッタ、移動速度の変化量)が用いられる。そして、この変化量に基づいて、この変化量に対応する増加量が決定されることにより、適切な増加量が決定される。これらの構成、作用、効果の共通点に照らせば、上記の2つの送信装置は、単一の技術範囲に属することが理解される。
より具体的には、前記送信レート決定部は、前記移動速度の変化量が事前に定められた閾値以下である場合には、前記送信レートの増加量を事前に定められた値に決定し、前記移動速度の変化量が事前に定められた閾値を超える場合には、前記送信レートの増加量を前記事前に定められた値の半分に決定するとしてもよい。
また、前記送信レート決定部は、GPS(Global Positioning System)から取得したデータ、前記送信装置が接続する前記通信路内の基地局情報の変化、前記送信装置が前記通信路を介して受信する電波の強度の変化、及び前記受信装置から取得した前記受信装置の移動速度を表す情報のいずれかを1つ以上利用して、前記送信装置及び前記受信装置の少なくとも一方の移動速度を取得するとしてもよい。
これによると、送信装置は自身の移動速度を正確に取得することができる。
なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又は記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されてもよい。
なお、本発明は、このような送信装置として実現できるだけでなく、送信装置に含まれる特徴的な手段をステップとする送信方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM(Compact Disc Read Only Memory)等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのはいうまでもない。
さらに、本発明は、このような送信装置の機能の一部又はすべてを実現する半導体集積回路(LSI)として実現したり、このような送信装置を含む送信システムとして実現したりできる。
こうして、本技術によれば、無線通信環境でMACレイヤ再送等に伴って送信レート抑制処理が働いた場合でも、素早く送信レートを回復する。このことで、無線通信環境での映像品質を高めることが可能である。
また、本技術により、映像品質の悪化を抑制して、適切な送信レートを決定可能な送信装置が提供され、AV伝送が普及してきた今日における本技術の実用的価値は極めて高い。
以下本発明の実施の形態について、図面を参照しながら説明する。
なお、以下で説明する本発明の実施の形態は、本発明の一具体例を示すものである。本実施の形態で示される数値、形状、構成要素、構成要素の配置及び接続形態などは、一例であり、本発明を限定する主旨ではない。本発明は、特許請求の範囲だけによって限定される。よって、以下の実施の形態における構成要素のうち、請求項1に記載されていない構成要素は、本発明の課題を達成するのに必ずしも必要ではないが、一具体例の形態を構成するものとして説明される。
(実施の形態1)
図1に、本発明を適用したネットワークシステム100の構成図を示す。
図1に示されるように、ネットワークシステム100は、送信装置11と、通信路12と、受信装置13とを備える。送信装置11は、通信路12を介して受信装置13へ通信パケット14を送信する。送信装置11はまた、通信路12を介して、受信装置13から、送信された通信パケット14に対応する応答信号であるフィードバックパケット15を受信する。なお、通信パケット14は、例えば、映像信号を含む映像パケットである。
より詳細には、例えば、送信装置11は通信路12を経由して、映像パケットを受信する上述の受信装置13と接続されている。送信装置11は、映像パケットである通信パケット14を、RTP(Real−time Transport Protocol)で送信する。受信装置13は、受信した通信パケット14のロス率等の、通信品質に関する情報についての処理をする。その処理では、その情報を、フィードバックパケット15に含め、RTCP(RTP Control Protocol)で、送信装置11に送信する。送信装置11は、受信したフィードバックパケット15に含まれる情報を基に、TFRC(TCP Friendly Rate Control)に基づく計算を行って、通信路12の混み具合を推定する。送信装置11は、この推定結果に基づいて、通信パケットの送信レートを決定する。ここで、送信レートとは、単位時間あたりに、送信装置11から受信装置13へ送信される情報量を意味する。
以下、本発明の具体的な実施形態について、より詳しい説明を行う。
図2は、本発明の実施の形態1における送信装置11の構成を示すブロック図である。図2において、実線部で結ばれている2つの箇所は、それらの間でパケットが転送されている2つの箇所を表しており、点線部は、制御信号の流れ等を表している。
図2に示されるように、通信路12を介して受信装置13へ通信パケットを送信する送信装置11は、受信部21と、ジッタ取得部22と、検出部23と、ロス率変化量取得部24と、送信レート決定部25と、送信レート設定部26と、パケット生成部27と、送信部28とを備える。
受信部21は、通信パケットに対応する応答信号であるフィードバックパケットを、受信装置13から、通信路12を介して受信する通信インタフェースである。通信路12としては、例えば、無線LAN(Local Area Network)、携帯電話回線、有線LAN等が考えられるが、これらに限定されない。なお、受信部21は、受信したパケットを、各フローごと、もしくは、受信先ごとに保存するキューとしての機能を有してもよい。
ジッタ取得部22は、送信装置11から受信装置13へ送信された通信パケットの、その送信における伝送の伝送時間の変化量であるジッタを取得する。例えば、ジッタ取得部22は、後述する送信レート決定部25が、送信レートを減少させた時刻の前後において、減少させた時刻より前の時刻と、後の時刻との2つの時刻のそれぞれに、通信路の片方向遅延の遅延時間を計測する。それらの計測の後に、送信レート決定部25は、計測されたそれら2つの片方向遅延の遅延時間の間の差分としてジッタを取得する。なお、例えば、取得されるジッタは、減少がされる前の時刻に計測される伝送時間から、後の時刻に計測される伝送時間が減じられた時間である。より詳細には後述する。
検出部23は、フィードバックパケットの受信間隔の変動を検出する。
ロス率変化量取得部24は、パケットロス率の変化量を取得する。パケットロス率は、送信装置11から受信装置13へ送信された各通信パケットのうち、正しく受信されなかった通信パケットの割合である。ここで、後述する送信レート決定部25が送信レートを減少させた時刻の前後の2つの時刻のそれぞれに取得した2つのフィードバックパケットがある。例えば、それぞれのフィードバックパケットに、パケットロス率を示す情報が含まれる。例えば、ロス率変化量取得部24は、これらの2つの情報から、パケットロス率の変化量を取得する。
送信レート決定部25は、受信間隔の変動が検出された場合に、送信部28から通信パケットを送信する送信レートを減少させる。送信レートを減少させた時刻の前後における、通信パケットのロス率を示すパケットロス率の変化量と、通信パケットの伝送時間の変化量であるジッタとに基づいて、送信レートを増加させる。具体的には、送信レート決定部25は、パケットロス率の変化量、及び、ジッタのそれぞれがより大きいほど、より小さくなるように送信レートの増加量を決定する。その後、送信レート決定部25は、決定した増加量だけ送信レートを増加させる。すなわち、送信レート決定部25は、送信レートを削減する抑制ステップでの、送信レートの抑制量あるいは、抑制ステップ実施後の、送信レートの回復幅を決定することによって、送信レートを算出する。
送信レート設定部26は、例えば、送信装置11が映像信号を送信する場合に、送信レート決定部25が決定した増加量だけ増加させた送信レートを、エンコーダに設定する。送信レート設定部26は、この処理により、エンコードのレートを調整する。
パケット生成部27は、送信レート決定部25が決定した、送信レートの増加量に基づいて、映像パケット等である通信パケットを生成する。
送信部28は、送信レート決定部25が決定した送信レートで、受信装置13へ通信パケットを送信する、受信部21同様の通信インタフェースである。なお、送信部28は、データを各フローもしくは送信先ごとに保存するキューとしての機能を有してもよい。
以下、より具体的に述べる。
パケットが到着すると、受信部21は、到着したパケットを保存する。保存されたパケットの情報から、検出部23は、フィードバックパケットの受信間隔を算出することによって、パケットロス率を監視する。この際、検出部23は、前回のフィードバックパケット受信から一定時間が経過した後においても、次のフィードバックが到着しない場合には、送信レート決定部25に、タイムアウトを通知する。送信レート決定部25は、検出部23から、タイムアウトの通知を受け取ると、送信レート抑制処理を実施する。その後、送信レート決定部25は、タイムアウト通知前における送信レートよりも小さい送信レートを、送信レート設定部26に設定する。
一方で、送信レート抑制処理の開始から一定時間経過後に、送信レート決定部25の状態は、送信レートの回復処理を実行する状態へ遷移する。この際、ロス率変化量取得部24は、次の変化量を取得する。取得される変化量は、抑制処理の実施前のパケットロス率と、抑制処理の実施後のパケットロス率との間における、パケットロス率の変化量である。その取得の後に、ロス率変化量取得部24は、取得した、パケットロス率の変化量を、送信レート決定部25に通知する。
同様に、ジッタ取得部22は、抑制処理を行った時刻の前後における先述のジッタを取得する。その後、ジッタ取得部22は、取得したジッタを送信レート決定部25に通知する。
送信レート決定部25は、パケットロス率の変化量と、ジッタとから、送信レートの回復幅である増加量を算出する。その後、送信レート決定部25は、算出した、送信レートの増加量を、送信レート設定部26に設定する。
パケット生成部27は、送信レート設定部26の設定した送信レートを基にエンコードされた映像パケットを生成する。その後、パケット生成部27は、生成した映像パケットを送信部28に転送する。転送されたパケットは、送信部28から、通信路12を介して、送信レート決定部25により決定された送信レートで、受信装置13へ送信される。
図3は、本実施の形態に係る送信装置11の処理の流れの概要を示すフローチャートである。
まず、送信レート決定部25は、通信パケットを、受信装置13へ送信する(ステップS20)。
次に、送信装置11が受信装置13からフィードバックパケットを受信(ステップS21)すると、検出部23は、フィードバックパケットが含む情報から、受信装置13へ送信された通信パケットのパケットロス率の変動を検出する(ステップS23)。
ここで、パケットロス率の変動が検出されない場合は(ステップS23でNO)、再度、フィードバックパケットの受信を行う(ステップS21へのループ)。
一方、パケットロス率の変動が検出された場合には(ステップS23でYES)、送信レート決定部25は、送信レートを決定する(ステップS24)。具体的には、一旦送信レートを減少させたのち、パケットロス率の変化量とジッタとに基づいて決定した増加量だけ送信レートを増加させる。
以後、図4〜図7を参照して、送信レート決定部25がステップS24で行う処理について、より詳細に説明する。
図4は、送信レート決定部25が送信レートを算出する際の状態遷移図を示す。
送信レート決定部25が実行する、送信レートを算出するためのアルゴリズムでは、まず、通信開始時に、通常レート制御(ステップS31)で、レート算出処理を開始する。次に、送信レート決定部25は、フィードバックパケットが到着するたびに、通常レート制御(ステップS31)で、送信レートの算出値を更新する。
通常レート制御(ステップS31)において、一定時間の間、フィードバックパケットが到着しない場合には、送信レート抑制処理(ステップS32)に遷移する。その後、送信レート決定部25は、送信レートを抑えるよう制御する。
送信レート抑制処理(ステップS32)に遷移した後、一定時間が経過すると、送信レート回復処理(ステップS33)へ遷移し、パケットロス率の変化量及びジッタに応じて、送信レートの増加量を決定する。その後、決定した、送信レートの増加量を、送信レート設定部26に設定する。設定された送信レートについての、送信レート設定部26による処理が完了した後に、通常レート制御(ステップS31)に遷移する。この遷移の後は、送信レート決定部25は、再び通常レート制御で、送信レートの算出を行う。
図5は、本実施の形態に係る送信レート決定部25における通常レート制御処理(図4のステップS31)の詳細なフローチャートである。
図4のステップS31の通常レート制御処理が開始されると、まず、一定周期ごとに、ステップS41で、現在時刻と、最後にフィードバックパケットを受信した時刻との差分値である、時間の長さTが、閾値TRTCPを超えていないかを判定する。
もし、T>TRTCPの場合(S41でYES)、送信レート抑制処理に遷移する(ステップS43)。一方で、T>TRTCPを満たさない場合には(S41でNO)、ステップS42で、以下の式(1)を計算することにより、TFRCを使ったレート推定処理を実施する。
ここで、式(1)は以下の通りである。
Figure 0005919527
なお、式(1)中の文字の意味は以下の通りである。
X:送信レート
R:Round Trip Time(往復遅延時間)
S:パケットサイズ
P:パケットロス率
すなわち、送信レート決定部25は、通常レート制御においては、式(1)に示されるように、通信路の状況に基づいて、送信レートを逐次決定する。
次に、図6は、本実施の形態に係る送信レート決定部25における送信抑制処理(図4のステップS32)の詳細なフローチャートである。なお、この処理は、図5のS43での遷移の際に行われる。
送信レートの抑制が開始すると、送信レート決定部25は、ステップS51で、まず、開始時刻Tを更新する。次に、ステップS52では、送信レートを減少させる前のパケットロス率Pを取得する。次に、ステップS53では、送信レートXを、式(1)により算出された、抑制前の送信レートXpの半分に設定し(X=(1/2)×Xp)、送信レート設定部26に通知する。次に、ステップS54では、現在時刻Tを取得する。次に、ステップS55で、現在時刻Tと開始時刻Tとの差分T−Tが、閾値T以上か否かを判定する。
ここで、差分T−Tが、閾値T以上であると判定される場合(S55でYES)、送信レート回復処理へ遷移する(ステップS56)。一方で、差分T−Tが、閾値Tより小さい場合には、一定時間後に再度、ステップS54、ステップS55の計算を繰り返す。すなわち、ステップS54、S55では、時刻Tから、上述の閾値Tの長さの時間が経過するまで待つ、ウエイトタイマーとしての処理を行う。
次に、図7は、本実施の形態に係る送信レート決定部25における送信レート回復処理(図4のステップS33)の詳細なフローチャートである。なお、この処理は、図6のステップS56での遷移の際に行われる。
まず、送信レート決定部25は、ステップS61で、送信レートの減少後におけるパケットロス率Pを取得する。さらに、送信レート決定部25は、送信レートを減少させた時刻の前後の間における、伝送時間の変化量である先述のジッタWを取得する。取得されるジッタWは、送信装置11から通信路12まで通信パケットを送信する際に生じる、片方向遅延の変化量である。ここでジッタWは、例えば式(2)のように算出される。
Figure 0005919527
ここで、式(2)中の文字の意味は以下の通りである。
:今回取得したパケットの受信時刻
:図6のステップS51(時刻T)のタイミングで取得したパケットの受信時刻
:今回取得したパケットの送信時刻
:図6のステップS51(時刻T)のタイミングで取得したパケットの送信時刻
なお、本実施形態では、ジッタWの算出には、式(2)に示されるように、片方向遅延の延び(すなわち、片方向遅延の差分)を使っているが、次のような方法もある。その方法とは、遅延時間の分散又はヒステリシスを取るなどの統計処理をした値を利用する方法である。この方法で、ジッタWを算出してもよい。
次に、ステップS62では、抑制処理のステップS52(図6)で取得したパケットロス率Pと、ステップS61で取得したPとから、送信レート決定部25は、パケットロス率の変化量である、|P−P|の値を算出する。また、送信レート決定部25は、|P−P|の値が、パケットロス率の閾値P以上であるかを判定するために、それらの比較を行う。
ここで、|P−P|≧Pの場合(ステップS62でYES)には、送信レート回復処理から通常レート制御(図4のS31)へ遷移し(ステップS66)、送信レート決定部25は、以後の送信レートとして、ステップS42で式(1)により算出される、TFRCの送信レートを使用する。
一方で、|P−P|<Pの場合(ステップS62でNO)、送信レート決定部25は、ステップS63でジッタWと、通信路12が持つと推定されるバッファ量B、及び、現在の送信レートKから算出される指数2B/Kとの比較を行う。ここで、通信路12が持つと推定されるバッファ量Bは、例えば、以下の式(3)等により、あらかじめ算出しておくものとする。ここで、送信レート回復処理により送信レートが上昇する直前の送信レートがKである。Kに対応する時刻がTである。送信レート回復処理により上昇された後の送信レートがKである。送信レートKへと上昇された後に、検出部23がパケットロスを最初に検出した時刻がTである。
B=(K−K)×(T−T) 式(3)
より具体的には、2B/K≦Wを満たす場合(ステップS63でYES)、送信レート決定部25は、ステップS67で、送信レートの増加量である上昇幅Yを、U/4に設定する。ここで、Uは、例えば、送信レートを、送信レート抑制処理後における送信レートX=(1/2)×Xpから、抑制前の送信レートXpに戻すために必要な値とする。つまり、U=Xp−(1/2)×Xp=(1/2)×Xpとなる。
2B/K≦Wを満たさない場合(ステップS63でNO)、送信レート決定部25は、ステップS64の処理に進む。ステップS64では、B/K<W<2B/Kを満たす場合(ステップS64でYES)、送信レート決定部25は、ステップS66で、送信レートの増加量である上昇幅Yを、U/2に設定する。一方で、B/K<W<2B/Kを満たさない場合(ステップS64でNO)、送信レート決定部25は、ステップS65で、送信レートの増加量である上昇幅Yを、Uに設定する。
その後、ステップS62、S63、S64、及びS65の判定結果に関わらず、送信レート決定部25は、通常レート制御(ステップS31)へ遷移する。次に、送信レート決定部25は、式(1)によって、次の送信レートを算出する。
送信レート決定部25は、以上述べた、ステップS31、S32、S33の3つの状態の遷移を繰り返しながら、送信レートを減少させ、また、減少後の回復時における適切な送信レートの増加量を決定することができる。
すなわち、送信レート決定部25は、パケットロス率の変化量及びジッタが、事前に定められた閾値よりも小さい場合(パケットロス率の変化量が第1の閾値よりも小さく、かつ、ジッタも第2の閾値よりも小さい場合)に、送信レートの増加量を、所定値に決定してもよい。また、送信レート決定部25は、パケットロス率の変化量及びジッタの一方のみが、事前に定められた閾値以上である場合に、送信レートの増加量を、所定値の半分に決定してもよい。また、送信レート決定部25は、パケットロス率の変化量及びジッタが、何れも、事前に定められた閾値以上である場合に、送信レートの増加量を、所定値の4分の1に決定してもよい。
より具体的には、送信レート決定部25は、パケットロス率の変化量が、第1の閾値よりも小さく、かつ、ジッタが、第2の閾値よりも小さい場合に、送信レートの増加量を所定値に決定すると共に、他の場合には、以下の処理をしてもよい。つまり、送信レート決定部25は、パケットロス率の変化量が、第1の閾値よりも小さく、ジッタが第2の閾値以上、かつ、第3の閾値より小さい場合に、送信レートの増加量を、所定値の半分に決定してもよい。また、送信レート決定部25は、パケットロス率の変化量が第1の閾値よりも小さく、ジッタが第3の閾値以上である場合に、送信レートの増加量を、所定値の4分の1に決定してもよい。また、送信レート決定部25は、パケットロス率の変化量が、第1の閾値以上である場合に、送信レートの増加量を0に決定してもよい。
さらに、送信レート決定部25は、通信路12のバッファ量を推定し、ジッタ及びパケットロス率の変化量のそれぞれがより大きいほど、より小さい、送信レートの増加量を決定してもよい。また、バッファ量を送信レートで除した値がより小さいほど、より小さい、送信レートの増加量を決定してもよい。
より具体的には、送信レート決定部25は、ジッタが、バッファ量を送信レートで除した値よりも小さい場合には、送信レートの増加量を、通信路12の状況に基づいて決定される第1の増加量に決定してもよい。また、送信レート決定部25は、ジッタが、バッファ量を送信レートで除した値以上であり、かつ、ジッタが、バッファ量を送信レートで除した値の2倍よりも小さい場合には、送信レートの増加量を、第1の増加量の半分に決定してもよい。また、送信レート決定部25は、ジッタが、バッファ量を送信レートで除した値の2倍以上である場合には、送信レートの増加量を、第1の増加量の4分の1に決定してもよい。
以上述べた構成によると、本実施の形態に係る送信装置11は、送信レートを減少(図6のS52)させた結果としてパケットロス率又はジッタの改善の効果があまり見られない場合には(図7のS62のYESなどを参照)、パケットの送信レートを急激に回復させることができる。したがって、一旦送信レートが減少した後、送信レートが過剰に低いまま、なかなか回復しない状態を回避できる。その結果、送信装置11は、回復時における、映像品質の悪化を抑制して適切に送信レートを決定することができる。
なお、実施の形態1において、送信装置11は、送信レート決定部25の他に、ジッタ取得部22とロス率変化量取得部24とを備える構成とした。しかし、ジッタ取得部22に代わって、送信レート決定部25が、パケットロス率の変化量を取得してもよい。取得されるこの変化量は、送信レートを減少させた時刻の前後に取得した2つのフィードバックパケットのそれぞれに含まれるパケットロス率から取得されてもよい。同様に、ロス率変化量取得部24に代わって、送信レート決定部25が、送信レートを減少させた時刻の前後において、通信路の片方向遅延をそれぞれ計測することによって、片方向遅延の差分として、ジッタを取得してもよい。この場合、送信装置11は、送信レート決定部25とは別に、ジッタ取得部22及びロス率変化量取得部24を備えなくても、同様の効果を奏する。
また、送信装置11が、通信パケットとして、映像信号ではなく、例えば、事前に内容が定められたパケットを送信する場合等には、送信装置11では、送信データのエンコード及びパケット生成といった処理が不要となる。したがって、このような場合には、送信装置11は、送信レート設定部26及びパケット生成部27を備えなくても同様の効果を奏する。
(実施の形態2)
以上述べたように、実施の形態1に係る送信装置11は、パケットロス率の変化量とジッタとに基づいて、送信レート決定部25が、送信レートの増加量を決定する。これに対し、本発明の実施の形態2においては、通信装置の移動速度の変化量に基づいて、送信レート決定部25Aが、送信レートの増加量を決定する場合の実施形態を述べる。なお、通信装置とは、送信装置11及び受信装置13の総称である。また、通信装置の移動速度は、移動速度取得部77によって算出される。
まず、図8を参照して、本実施の形態において想定する課題の具体例について述べる。
図8は、本実施の形態において想定するネットワークシステムの一例であるネットワークシステム100Aを示す。このネットワークシステム100Aでは、従来例における問題が解消される。ネットワークシステム100Aは、送信装置11Aと、受信装置13と、基地局装置201と、基地局装置202と、基地局装置203とを備える。
送信装置11Aは、本実施の形態に係る送信装置であり、詳細は後述する。
受信装置13は、送信装置11Aから通信パケットを受信すると、その応答として、フィードバックパケットを、送信装置11Aへ送信する通信装置である。
基地局装置201〜基地局装置203は、送信装置11Aと受信装置13との間の無線通信を中継する、いわゆる無線基地局である。各無線基地局は、バックボーン回線に接続されている。なお、基地局装置201が、この基地局装置201の通信エリア内の通信装置との通信に利用可能な帯域幅よりも、基地局装置203が、この基地局装置203の通信エリア内の通信装置との通信に利用可能な帯域幅の方が広いものとする。
また、時刻t=0において、送信装置11Aは基地局装置201の通信エリアにおり、受信装置13は、基地局装置202の通信エリアにいる。この送信装置11Aは、時刻t=1から移動を開始した後、時刻t=10には、より広い帯域幅が利用可能な基地局装置203の通信エリアにいるものとする。
ここで、時刻t=0において、送信装置11Aと受信装置13との間でのパケットロスが発生した場合に、実施の形態1で述べたように、送信装置11Aが、パケットロス率とジッタとに基づいて送信レートを決定することは適切ではない。なぜならば、送信装置11Aが利用可能な通信帯域幅は、時刻t=0における基地局装置201の通信エリア内と、時刻t=10における基地局装置203の通信エリア内とでは大きく異なるためである。その結果、例えば、時刻t=0と時刻t=10との2つ時刻における、パケットロス率、及び、ジッタの変化量に基づいて決定された送信レートは、必ずしも妥当とはいえない。したがって、送信装置は、適切な送信レートを決定できないという課題が生じる。
そこで、本実施の形態に係る送信装置11Aは、通信装置の移動速度の変化量に基づいて送信レートを決定する。以下、詳細に説明する。
図9は、本実施の形態に係る送信装置11Aの機能ブロックを示す。図9に示されるように、送信装置11Aは、受信部21と、検出部23と、移動速度取得部77と、送信レート決定部25Aと、送信レート設定部26と、パケット生成部27とを備える。
本実施の形態に係る送信装置11Aは、通信装置の移動速度の変化量に基づいて、送信レートの増加量である回復幅を決定すること以外は、基本的には、実施の形態1に係る送信装置11と同様である。したがって、以下では、実施の形態1に係る送信装置11と同様の構成については適宜、同様の符号を付して、詳細な説明は省略する。すなわち、以下では、本実施の形態に係る送信装置11Aと、実施の形態1に係る送信装置11とで相違する点を中心に説明する。
移動速度取得部77はGPS(Global Positioning System)情報や受信した電界強度情報から位置情報を計算する。また、移動速度取得部77は、位置情報の時間推移から送信装置11A自身の移動速度を算出する。
送信レート決定部25Aは、フィードバックパケットの受信間隔の変動を検出した場合に、送信部28が通信パケットを送信する送信レートを減少させる。送信レート決定部25Aは、送信レートを減少させた時刻の前後における、送信装置11A及び受信装置13の少なくとも一方の移動速度の変化量に基づいて、送信レートを増加させる。
図10は、本実施の形態に係る送信レート決定部25Aが行う処理の遷移を示す状態遷移図である。通常レート制御(ステップS31A)では、実施の形態1における通常レート制御(ステップS31)を示す図5の各処理のうち、ステップS32へ遷移する処理(ステップS43)については、この処理の代わりに、ステップS32Aへ遷移する処理をする。ステップS32へ遷移する上述の処理以外の、実施の形態1の図5におけるそれぞれの処理について、ステップS31Aで、その処理と同じ処理を行う。
図11は、実施の形態2に係る送信レート決定部25Aが行う送信レート抑制処理(図10のステップS32A)の詳細なフローチャートである。なお、図6に示される、実施の形態1における送信レート抑制処理(ステップS32、図6)と同一のステップについては、同一の符号をつけ、詳細な説明は適宜、省略する。
送信レート決定部25Aは、送信レートを抑制する(図11のステップS53)前に、送信装置11Aの移動速度Vを、移動速度取得部77から取得する(ステップS82)。
その後、一定時間ウエイトした後に(ステップS54、ステップS55)、送信レート回復処理(図10のステップS33A)へ遷移する(ステップS86)。
図12は、実施の形態2に係る送信レート決定部25Aが行う送信レート回復処理(図10のステップS33A)のアルゴリズムを示す詳細なフローチャートである。
まず、ステップ91では、現在の通信装置の移動速度Vを取得する。次に、ステップ92では、送信レート抑制前の移動速度Vからの変化量であるV−Vを算出する。ここで、事前に定められた閾値をVとすると、V−V≦Vを満たす場合(ステップS92でYES)には、送信レート決定部25は、送信レートの増加量である上昇幅をUに決定する(ステップ94)。一方、V−V≦Vを満たさない場合(ステップS92でNO)には、送信レートの増加量である上昇幅をU/2に決定する(ステップS93)。
その後、送信レート決定部25は、通常レート制御(図10のステップS31A)へ遷移する(ステップS95)。
なお、移動速度取得部77は、送信装置11Aの移動速度の代わりに、受信装置13の移動速度を取得してもよい。この場合、送信レート決定部25Aは受信装置13の移動速度に基づいて送信レートを決定する。例えば、受信装置13が、フィードバックパケット又はそれ以外の通信パケットに、次の情報を含めてもよい。その情報とは、受信装置13が取得した、受信装置13自身の移動速度を示す情報である。受信装置13が、この情報を含めたフィードバックパケット等のパケットを、送信装置11Aへ送信することにより、移動速度取得部77は、受信装置13の移動速度を取得することができる。
すなわち、移動速度取得部77は、GPSから取得したデータ以外の、送信装置11Aが接続する通信路12内の基地局の基地局情報の変化、送信装置11Aが通信路12を介して受信する電波の強度の変化、及び受信装置13から取得した、受信装置13の移動速度を表す情報のいずれかを1つ以上利用してもよい。移動速度取得部77は、これにより、送信装置11A及び受信装置13の少なくとも一方の移動速度を取得してもよい。
また、移動速度取得部77は、送信装置11Aの移動速度と、受信装置13の移動速度とを取得してもよい。この場合、送信レート決定部25Aは、送信装置11Aの移動速度と、受信装置13の移動速度とから、送信レートを決定する。具体的には、送信レート決定部25Aは、図12のステップS92におけるV及びVとして、送信装置11Aの移動速度と、受信装置13の移動速度との平均値、差分値、又は合計値等を使用することが考えられる。
また、移動速度取得部77は、自身で、送信装置11Aの移動速度を算出せず、送信装置11Aの外部装置から、送信装置11Aの移動速度を取得してもよい。例えば、環境に設置された速度計測装置が、送信装置11Aの移動速度を計測してもよい。この速度計測装置が、計測結果を、送信装置11Aに送信することにより、送信装置11Aは、自身の移動速度を取得することができる。
また、上記の実施の形態2に係る送信装置11Aでは、移動速度取得部77を、送信レート決定部25Aとは別に備える構成としたが、送信レート決定部25Aが、移動速度取得部77を内部に有する構成としてもよい。この場合、移動速度取得部77が行う処理は、送信レート決定部25Aが行う。
なお、送信装置11Aが、エンコード及びパケット生成が不要なデータを、通信パケットとして送信する場合には、実施の形態1に係る送信装置11と同様に、送信装置11Aは、送信レート設定部26及びパケット生成部27を備えなくても、同様の効果を奏する。
以上述べたように、送信レート決定部25Aは、送信レートを減少させた時刻の前後における、送信装置11A及び受信装置13の少なくとも一方の移動速度の変化量がより小さいほど、より大きくなるように、送信レートの増加量を決定する。
例えば、Vが時速100km/hで、Vが時速0km/hであれば、送信装置11Aは、前回の通信エリアの無線基地局装置とは異なる無線基地局装置の通信エリアへ移動している可能性が高いと考えられる。したがって、異なる無線基地局装置の通信エリアへ移動している可能性が高いほど、送信レートをより緩やかに回復させることで、移動速度により異なる送信レートを決定することができる。
なお、Vを常に、移動開始時の速度(すなわち、0)とすることで、送信レート決定部25は、移動速度の絶対値に基づき送信レートを決定してもよい。
より具体的には、送信レート決定部25Aは、移動速度の変化量が、事前に定められた閾値以下である場合には、送信レートの増加量を、事前に定められた値に決定してもよい。このとき、送信レート決定部25Aは、移動速度の変化量が、事前に定められた閾値を超える場合には、送信レートの増加量を、事前に定められた値の半分に決定してもよい。
これにより、送信装置11A及び受信装置13の少なくとも1つが、異なる無線基地局装置間を移動しうる場合においても、適切な送信レートを決定することができる。
なお、実施形態1及び2で説明した送信装置11及び送信装置11Aは、コンピュータにより実現することも可能である。図13は、送信装置11及び送信装置11Aを実現するコンピュータシステムのハードウェア構成を示すブロック図である。
送信装置11及び送信装置11Aは、コンピュータ534と、コンピュータ534に指示を与えるためのキーボード536及びマウス538と、コンピュータ534の演算結果等の情報を提示するためのディスプレイ532と、コンピュータ534で実行されるプログラムを読み取るためのCD−ROM(Compact Disc−Read Only Memory)装置540及び通信モデム(図示せず)とを含む。
送信装置11及び送信装置11Aが行う処理が記述されたプログラムは、コンピュータで読み取り可能な媒体であるCD−ROM542に記憶され、CD−ROM装置540で読み取られる。又は、そのプログラムは、コンピュータネットワークを通じて通信モデム552で読み取られる。
コンピュータ534は、CPU(Central Processing Unit)544と、ROM(Read Only Memory)546と、RAM(Random Access Memory)548と、ハードディスク550と、通信モデム552と、バス554とを含む。
CPU544は、CD−ROM装置540又は通信モデム552を介して読み取られたプログラムを実行する。ROM546は、コンピュータ534の動作に必要なプログラムやデータを記憶する。RAM548は、プログラム実行時の、パラメータなどのデータを記憶する。ハードディスク550は、プログラムやデータなどを記憶する。通信モデム552は、コンピュータネットワークを介して他のコンピュータとの通信を行う。バス554は、CPU544、ROM546、RAM548、ハードディスク550、通信モデム552、ディスプレイ532、キーボード536、マウス538及びCD−ROM装置540を相互に接続する。
さらに、上記の各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integrated Circuit:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。RAMには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
さらにまた、上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。ICカード又はモジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。ICカード又はモジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ICカード又はモジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
また、本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよい。また、コンピュータプログラムからなるデジタル信号であるとしてもよい。
さらに、本発明は、上記コンピュータプログラム又は上記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc(登録商標))、USBメモリ、SDカードなどのメモリカード、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている上記デジタル信号であるとしてもよい。
また、本発明は、上記コンピュータプログラム又は上記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、上記メモリは、上記コンピュータプログラムを記憶しており、上記マイクロプロセッサは、上記コンピュータプログラムに従って動作するとしてもよい。
また、上記プログラム又は上記デジタル信号を上記記録媒体に記録して移送することにより、又は上記プログラム又は上記デジタル信号を、上記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
さらに、上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
なお、本技術における第1の送信方法は、通信路を介して受信装置へ通信パケットを送信する送信方法であって、前記受信装置へ前記通信パケットを送信する送信ステップと、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信ステップと、前記フィードバックパケットの受信間隔の変動を検出する検出ステップと、前記受信間隔の変動が検出された場合に、前記送信ステップで前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定ステップとを含む送信方法である。
また、本技術の第2の送信方法は、通信路を介して受信装置へ通信パケットを送信する送信方法であって、前記受信装置へ前記通信パケットを送信する送信ステップと、前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信ステップと、前記フィードバックパケットの受信間隔の変動を検出する検出ステップと、前記受信間隔の変動が検出された場合に、前記送信ステップで前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量に基づいて前記送信レートを増加させる、送信レート決定ステップとを備える送信方法である。
なお、これら第1、第2の送信方法の一方又は両方をコンピュータに実行させるプログラムが用いられてもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
本発明は、送信装置等に適用でき、特に通信路を介して受信装置へ通信パケットを送信する送信装置等に適用できる。
11、11A 送信装置
12 通信路
13 受信装置
14 通信パケット
15 フィードバックパケット
21 受信部
22 ジッタ取得部
23 検出部
24 ロス率変化量取得部
25、25A 送信レート決定部
26 送信レート設定部
27 パケット生成部
28 送信部
77 移動速度取得部
100、100A ネットワークシステム
201、202、203 基地局装置
532 ディスプレイ
534 コンピュータ
536 キーボード
538 マウス
540 CD−ROM装置
542 CD−ROM
544 CPU
546 ROM
548 RAM
550 ハードディスク
552 通信モデム
554 バス

Claims (20)

  1. 通信路を介して受信装置へ通信パケットを送信する送信装置であって、
    前記受信装置へ前記通信パケットを送信する送信部と、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、
    前記フィードバックパケットの受信間隔の変動を検出する検出部と、
    前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定部とを備える
    送信装置。
  2. 前記送信レート決定部は、前記パケットロス率の変化量及び前記ジッタがより大きいほど、より小さくなるように前記送信レートの増加量を決定し、前記増加量だけ前記送信レートを増加させる
    請求項1に記載の送信装置。
  3. 前記送信レート決定部は、
    前記フィードバックパケットに含まれる、前記通信パケットのパケットロス率を示す情報から、前記パケットロス率の変化量を取得する
    請求項2に記載の送信装置。
  4. 前記送信レート決定部は、
    前記送信レートを減少させた時刻の前後において、前記通信路の片方向遅延をそれぞれ計測することにより、前記ジッタを取得する
    請求項2に記載の送信装置。
  5. 前記送信レート決定部は、
    前記パケットロス率の変化量及び前記ジッタが、事前に定められた閾値よりも小さい場合に、前記送信レートの増加量を所定値に決定し、
    前記パケットロス率の変化量及び前記ジッタの一方が、事前に定められた閾値以上である場合に、前記送信レートの増加量を前記所定値の半分に決定し、
    前記パケットロス率の変化量及び前記ジッタが、事前に定められた閾値以上である場合に、前記送信レートの増加量を前記所定値の4分の1に決定する
    請求項2に記載の送信装置。
  6. 前記送信レート決定部は、
    前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが第2の閾値よりも小さい場合に、前記送信レートの増加量を所定値に決定し、
    前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが前記第2の閾値以上、かつ、第3の閾値より小さい場合に、前記送信レートの増加量を前記所定値の半分に決定し、
    前記パケットロス率の変化量が第1の閾値よりも小さく、前記ジッタが前記第3の閾値以上である場合に、前記送信レートの増加量を前記所定値の4分の1に決定する
    請求項2に記載の送信装置。
  7. 前記送信レート決定部は、
    前記通信路のバッファ量を推定し、前記ジッタ及び前記パケットロス率の変化量がより大きいほど、また、前記バッファ量を前記送信レートで除した値がより小さいほど、より小さくなるように前記送信レートの増加量を決定する
    請求項2に記載の送信装置。
  8. 前記送信レート決定部は、
    前記ジッタが前記バッファ量を前記送信レートで除した値よりも小さい場合には、前記送信レートの増加量を前記通信路の状況に基づいて決定される第1の増加量に決定し、
    前記ジッタが前記バッファ量を前記送信レートで除した値以上であり、かつ、前記ジッタが前記バッファ量を前記送信レートで除した値の2倍よりも小さい場合には、前記送信レートの増加量を前記第1の増加量の半分に決定し、
    前記ジッタが前記バッファ量を前記送信レートで除した値の2倍以上である場合には、前記送信レートの増加量を前記第1の増加量の4分の1に決定する
    請求項7に記載の送信装置。
  9. 通信路を介して受信装置へ通信パケットを送信する送信装置であって、
    前記受信装置へ前記通信パケットを送信する送信部と、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、
    前記フィードバックパケットの受信間隔の変動を検出する検出部と、
    前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量に基づいて前記送信レートを増加させる、送信レート決定部とを備える
    送信装置。
  10. 前記送信レート決定部は、
    前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量がより小さいほど、より大きくなるように前記送信レートの増加量を決定し、前記増加量だけ前記送信レートを増加させる
    請求項9に記載の送信装置。
  11. 前記送信レート決定部は、
    前記移動速度の変化量が事前に定められた閾値以下である場合には、前記送信レートの増加量を事前に定められた値に決定し、
    前記移動速度の変化量が事前に定められた閾値を超える場合には、前記送信レートの増加量を前記事前に定められた値の半分に決定する
    請求項10に記載の送信装置。
  12. 前記送信レート決定部は、
    GPS(Global Positioning System)から取得したデータ、前記送信装置が接続する前記通信路内の基地局情報の変化、前記送信装置が前記通信路を介して受信する電波の強度の変化、及び前記受信装置から取得した前記受信装置の移動速度を表す情報のいずれかを1つ以上利用して、前記送信装置及び前記受信装置の少なくとも一方の移動速度を取得する
    請求項9に記載の送信装置。
  13. 通信路を介して受信装置へ通信パケットを送信する送信方法であって、
    前記受信装置へ前記通信パケットを送信する送信ステップと、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信ステップと、
    前記フィードバックパケットの受信間隔の変動を検出する検出ステップと、
    前記受信間隔の変動が検出された場合に、前記送信ステップで前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定ステップとを含む
    送信方法。
  14. 請求項13に記載の送信方法をコンピュータに実行させる
    プログラム。
  15. 請求項14に記載のプログラムを記録した
    コンピュータ読み取り可能な記録媒体。
  16. 通信路を介して受信装置へ通信パケットを送信する集積回路であって、
    前記受信装置へ前記通信パケットを送信する送信部と、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、
    前記フィードバックパケットの受信間隔の変動を検出する検出部と、
    前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における、前記通信パケットのロス率を示すパケットロス率の変化量と前記通信パケットの伝送時間の変化量であるジッタとに基づいて前記送信レートを増加させる、送信レート決定部とを備える
    集積回路。
  17. 通信路を介して受信装置へ通信パケットを送信する送信方法であって、
    前記受信装置へ前記通信パケットを送信する送信ステップと、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信ステップと、
    前記フィードバックパケットの受信間隔の変動を検出する検出ステップと、
    前記受信間隔の変動が検出された場合に、前記送信ステップで前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量に基づいて前記送信レートを増加させる、送信レート決定ステップとを備える
    送信方法。
  18. 請求項17に記載の送信方法をコンピュータに実行させる
    プログラム。
  19. 請求項18に記載のプログラムを記録した
    コンピュータ読み取り可能な記録媒体。
  20. 通信路を介して受信装置へ通信パケットを送信する集積回路であって、
    前記受信装置へ前記通信パケットを送信する送信部と、
    前記受信装置から、前記通信パケットに対応する応答信号であるフィードバックパケットを受信する受信部と、
    前記フィードバックパケットの受信間隔の変動を検出する検出部と、
    前記受信間隔の変動が検出された場合に、前記送信部から前記通信パケットを送信する送信レートを減少させ、前記送信レートを減少させた時刻の前後における前記送信装置及び前記受信装置の少なくとも一方の移動速度の変化量に基づいて前記送信レートを増加させる、送信レート決定部とを備える
    集積回路。
JP2012546660A 2011-06-16 2012-06-13 送信装置、送信方法、集積回路及びそのプログラム Active JP5919527B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011134615 2011-06-16
JP2011134615 2011-06-16
PCT/JP2012/003861 WO2012172795A1 (ja) 2011-06-16 2012-06-13 送信装置、送信方法、集積回路及びそのプログラム

Publications (2)

Publication Number Publication Date
JPWO2012172795A1 JPWO2012172795A1 (ja) 2015-02-23
JP5919527B2 true JP5919527B2 (ja) 2016-05-18

Family

ID=47356801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012546660A Active JP5919527B2 (ja) 2011-06-16 2012-06-13 送信装置、送信方法、集積回路及びそのプログラム

Country Status (4)

Country Link
US (1) US8804803B2 (ja)
JP (1) JP5919527B2 (ja)
CN (1) CN103004154B (ja)
WO (1) WO2012172795A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795950B (zh) * 2014-02-21 2017-07-28 深圳创维-Rgb电子有限公司 电视音频信号处理装置
CN103945282A (zh) * 2014-05-16 2014-07-23 成都凯智科技有限公司 文件读取方法和装置
CN103997434B (zh) * 2014-05-21 2017-12-05 华为技术有限公司 网络传输状况的探测方法和相关设备
EP3223526B1 (en) * 2014-11-20 2019-01-30 Panasonic Intellectual Property Corporation of America Transmission method, reception method, transmission device, and reception device
JP2017152898A (ja) * 2016-02-24 2017-08-31 富士通株式会社 空き帯域特定プログラム、空き帯域特定装置、および空き帯域特定方法
FR3076158B1 (fr) * 2017-12-22 2020-01-10 Aviwest Procede de regulation de debit
CN111193673B (zh) * 2020-04-10 2020-08-25 亮风台(上海)信息科技有限公司 数据传输速率控制方法、系统和用户设备
JP7485018B2 (ja) 2020-04-27 2024-05-16 日本電信電話株式会社 コンテンツ配信システム
CN112566188B (zh) * 2020-11-20 2022-12-09 普联技术有限公司 一种数据传输方法、装置和介质
JP7138739B2 (ja) * 2021-02-10 2022-09-16 ソフトバンク株式会社 通信システム、通信装置、及びプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR0113648A (pt) * 2000-09-01 2003-07-22 Ncube Corp Ajuste de qualidade dinâmico baseado na mudança de restrições de fluxo
JP4140000B2 (ja) * 2003-01-09 2008-08-27 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP3911244B2 (ja) * 2003-02-19 2007-05-09 日本電信電話株式会社 帯域推定方法及びシステム
KR100648472B1 (ko) * 2004-10-19 2006-11-28 삼성전자주식회사 다중 송신 다중 수신 안테나 통신 시스템에서 적응 변조및 부호 성능을 최적화하기 위한 송·수신 장치 및 방법
JP4614798B2 (ja) * 2005-03-16 2011-01-19 富士通株式会社 移動局および重み付け制御方法
CN100481758C (zh) * 2005-09-09 2009-04-22 乐金电子(昆山)电脑有限公司 Tcp传送控制中的数据包传送率决定方法
KR100998188B1 (ko) * 2007-07-18 2010-12-03 삼성전자주식회사 무선통신시스템에서 재전송 장치 및 방법
GB2477515B (en) * 2010-02-03 2012-09-26 Orbital Multi Media Holdings Corp Data flow control method and apparatus

Also Published As

Publication number Publication date
US20130142243A1 (en) 2013-06-06
US8804803B2 (en) 2014-08-12
CN103004154A (zh) 2013-03-27
JPWO2012172795A1 (ja) 2015-02-23
CN103004154B (zh) 2015-12-02
WO2012172795A1 (ja) 2012-12-20

Similar Documents

Publication Publication Date Title
JP5919527B2 (ja) 送信装置、送信方法、集積回路及びそのプログラム
CN106487779B (zh) 发送视频包流的方法和发送装置
US9380635B2 (en) Dynamic TCP layer optimization for real-time field performance
JP4147534B2 (ja) 通信装置および通信方法
US8588071B2 (en) Device and method for adaptation of target rate of video signals
JP4697525B2 (ja) 送受信システム、送信装置および送信方法、受信装置および受信方法、並びにプログラム
CN107624232B (zh) 在通信系统中控制下行链路吞吐量的设备和方法
JP2007335994A (ja) 無線通信装置及び送信制御方法
JP6274113B2 (ja) データ送信装置、データ送信方法、及びそのプログラム
US20160094462A1 (en) Method and apparatus for dynamically adjusting retransmission timing in a transport layer
US8565249B2 (en) Queue management system and methods
JP6051939B2 (ja) 帯域測定装置及びプログラム
CN104980818A (zh) 增强的媒体质量管理
JP5533177B2 (ja) パケットロス率推定装置、パケットロス率推定方法、パケットロス率推定プログラム、及び、通信システム
JPWO2015178017A1 (ja) 通信装置
JP5532045B2 (ja) 通信システム
KR101234816B1 (ko) 혼잡 탐지 장치, 혼잡 제어 장치 그리고 혼잡 제어 방법
US20220369151A1 (en) Method and system for channel quality assisted transport in wireless network
WO2014171543A1 (ja) データ送信装置、データ送信方法、及びそのプログラム
JP6223942B2 (ja) 無線通信環境に応じてアグリゲーション量を変更可能な無線通信装置、無線通信プログラム及び方法
JP6418169B2 (ja) 遅延最小値算出装置、情報送信装置、遅延最小値算出方法およびコンピュータプログラム
JP6559627B2 (ja) 通信網の可用帯域を推定するシステム及びその方法
JP6724517B2 (ja) ビットレート指示装置、ビットレート指示方法、及び、ビットレート指示プログラム
JP6480362B2 (ja) 推定装置、推定方法及び推定プログラム
JP6897769B2 (ja) データ送信装置、方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141204

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160225

R151 Written notification of patent or utility model registration

Ref document number: 5919527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151