JP2017139521A - Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program - Google Patents
Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program Download PDFInfo
- Publication number
- JP2017139521A JP2017139521A JP2016017319A JP2016017319A JP2017139521A JP 2017139521 A JP2017139521 A JP 2017139521A JP 2016017319 A JP2016017319 A JP 2016017319A JP 2016017319 A JP2016017319 A JP 2016017319A JP 2017139521 A JP2017139521 A JP 2017139521A
- Authority
- JP
- Japan
- Prior art keywords
- stream
- packet
- estimation
- stream data
- available bandwidth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、映像や音声等のストリームデータを配信する、ストリーム配信装置、ストリーム受信装置、ストリーム配信システム、ストリーム配信方法、及びストリーム配信プログラムに関し、特に、品質の保証されていないベストエフォートネットワークにおける、ストリーム配信装置、ストリーム受信装置、ストリーム配信システム、ストリーム配信方法、及びストリーム配信プログラムに関する。 The present invention relates to a stream distribution device, a stream reception device, a stream distribution system, a stream distribution method, and a stream distribution program for distributing stream data such as video and audio, and particularly in a best-effort network whose quality is not guaranteed. The present invention relates to a stream distribution device, a stream reception device, a stream distribution system, a stream distribution method, and a stream distribution program.
インターネットやモバイルネットワークなどのベストエフォートネットワークでは、混雑状態や無線通信品質によって、ネットワークの利用可能帯域が大きく変動する。以下、「ネットワークの利用可能帯域」を単に「利用可能帯域」と呼ぶ。このような環境で、映像等のストリームデータを配信する際の品質を向上させるためには、利用可能帯域の変動に応じてストリームデータのビットレート(単位時間あたりのデータ量)を制御することが必要である。 In a best effort network such as the Internet or a mobile network, the usable bandwidth of the network varies greatly depending on the congestion state and wireless communication quality. Hereinafter, the “network available bandwidth” is simply referred to as “available bandwidth”. In such an environment, in order to improve the quality at the time of distributing stream data such as video, it is possible to control the bit rate (data amount per unit time) of the stream data according to the fluctuation of the available bandwidth. is necessary.
映像配信の一形態であるテレビ電話におけるユーザ体感品質指標の推定方法が、非特許文献1に開示されている。非特許文献1によれば、テレビ電話のユーザ体感品質は、ビットレート、遅延、パケットロス率によって変動する。ユーザ体感品質は、ビットレートが高いほど良く、また遅延とパケットロス率が低いほど良い。パケット通信網では、ネットワーク内の機器はキューを持っている。そのため、送信すべきストリームデータのビットレートが利用可能帯域を上回ると、ストリームデータは一時的にキューに格納され、ストリームデータの遅延が増加する。この遅延増加は、ユーザ体感品質の低下要因である。また、キュー長は有限であるため、ストリームデータのビットレートが利用可能帯域を大幅に上回ると、キューが溢れてパケットロスが発生する。パケットロスも、ユーザ体感品質の低下要因である。そこで、ユーザ体感品質を最大化するためには、ストリームデータが利用可能帯域と同一のビットレートで配信されることが望ましい。 Non-Patent Document 1 discloses a method for estimating a user experience quality index in a videophone which is one form of video distribution. According to Non-Patent Document 1, the user experience quality of a videophone varies depending on the bit rate, delay, and packet loss rate. The user experience quality is better as the bit rate is higher and the delay and packet loss rate are lower. In a packet communication network, devices in the network have a queue. Therefore, when the bit rate of the stream data to be transmitted exceeds the available bandwidth, the stream data is temporarily stored in the queue, and the delay of the stream data increases. This increase in delay is a factor that lowers the user experience quality. Also, since the queue length is finite, if the bit rate of stream data greatly exceeds the available bandwidth, the queue overflows and packet loss occurs. Packet loss is also a factor in reducing the user experience quality. Therefore, in order to maximize the user experience quality, it is desirable that the stream data is distributed at the same bit rate as the usable bandwidth.
利用可能帯域を計測するための一般的な方法として、所定のデータサイズのデータを一度に送信し、データサイズを受信にかかった時間で除算することによりスループットを算出する方法がある。以下、この方法を「スループット計測法」と呼ぶ。例えば、データが映像ストリームの場合には、映像フレーム(映像の1コマ)ごとに上記計算を行うことが可能である。スループット計測法では、「受信にかかった時間」が十分長ければ、正確な利用可能帯域を計測することが可能である。しかしながら、受信にかかった時間が短い場合には、スループット計測法における計測誤差は大きいか、又はスループット計測法が有効でないほど計測誤差は大きい。 As a general method for measuring the available bandwidth, there is a method of calculating throughput by transmitting data of a predetermined data size at a time and dividing the data size by the time taken for reception. Hereinafter, this method is referred to as “throughput measurement method”. For example, when the data is a video stream, the above calculation can be performed for each video frame (one frame of video). In the throughput measurement method, if the “time required for reception” is sufficiently long, an accurate usable bandwidth can be measured. However, when the time taken for reception is short, the measurement error in the throughput measurement method is large, or the measurement error is so large that the throughput measurement method is not effective.
一般的に、通信装置はパケット受信完了時に上位レイヤに対してパケットの受信完了を通知する。そのため、送信すべきデータのデータサイズが小さく、データが1パケットに収まる場合には、データの受信完了の通知は1度しか発生しない。データの受信完了の通知が1度しか発生しない場合には、上位レイヤは、データの「受信にかかった時間」を算出できない。従って、上位レイヤは、データのスループットを算出できない。また、データが複数パケットにまたがる場合であっても、「受信にかかった時間」が短いと、OS(Operating System)の割り込みタイミングの変動等の影響を受けて、データのスループットの計測誤差は大きくなることがある。つまり、スループット計測法には、データのデータサイズが小さい場合に、利用可能帯域を測定できないか、又は利用可能帯域の計測誤差が大きいという問題がある。 In general, the communication apparatus notifies the upper layer of packet reception completion when packet reception is completed. Therefore, when the data size of the data to be transmitted is small and the data can be contained in one packet, the notification of data reception completion occurs only once. When the notification of data reception completion occurs only once, the upper layer cannot calculate the “time taken for reception” of the data. Therefore, the upper layer cannot calculate the data throughput. Even if the data spans multiple packets, if the “reception time” is short, the measurement error of the data throughput will be large due to the influence of fluctuations in the OS (Operating System) interrupt timing, etc. May be. In other words, the throughput measurement method has a problem that the available bandwidth cannot be measured or the measurement error of the available bandwidth is large when the data size of the data is small.
そこで、比較的パケットサイズが小さい複数のパケットを含む、利用可能帯域の計測用のパケット列を送信し、パケット列に含まれる各パケットの受信における遅延変動等に基づいて、利用可能帯域を推定する技術が開示されている。以下、利用可能帯域の計測用のパケット列を「パケットトレイン」と呼ぶ。また、利用可能帯域の計測用のパケットトレインを構成する各パケットを「計測用パケット」と呼ぶ。また、計測用パケットに含まれるデータ(ペイロード)を「計測用データ」と呼ぶ。なお、パケットトレインはパケットサイズやパケットの送信間隔に特徴がある一連の計測用パケットを含み、パケットトレインにはいくつかの種類が存在する。以下、パケットサイズやパケットの送信間隔に特徴があるパケットトレインの送信方法を「パケットトレイン送信法」と呼ぶ。また、パケットトレインを用いた利用可能帯域の計測方法を「パケットトレイン計測法」と呼ぶ。パケットトレイン計測法では、比較的少量の計測用データを用いて、ネットワークの利用可能帯域を高精度に計測することができる。 Therefore, a packet sequence for measuring the available bandwidth including a plurality of packets having a relatively small packet size is transmitted, and the available bandwidth is estimated based on delay variation in reception of each packet included in the packet sequence. Technology is disclosed. Hereinafter, the packet sequence for measuring the available bandwidth is referred to as “packet train”. Each packet constituting the packet train for measuring the available bandwidth is referred to as a “measurement packet”. The data (payload) included in the measurement packet is referred to as “measurement data”. The packet train includes a series of measurement packets characterized by packet size and packet transmission interval, and there are several types of packet trains. Hereinafter, a packet train transmission method characterized by packet size and packet transmission interval is referred to as a “packet train transmission method”. Also, a method for measuring available bandwidth using a packet train is referred to as a “packet train measurement method”. In the packet train measurement method, the available bandwidth of the network can be measured with high accuracy using a relatively small amount of measurement data.
特許文献1のパケットトレイン計測法では、送信側は、パケットサイズが時間の経過とともに線形増加するパケットトレインに含まれる各パケットを一定の時間間隔で送信する。すなわち、特許文献1のパケットトレイン計測法では、パケットトレインのビットレートが、時間の経過とともに増加する。パケットトレインのビットレートが、利用可能帯域を上回ると、受信されたパケットの遅延が増加する。そこで、受信側は、遅延が増加し始めるパケットサイズにおけるビットレートを利用可能帯域の推定値とする。上記の動作の結果、特許文献1のパケットトレイン計測法では、比較的データサイズが小さい計測用データを用いて、利用可能帯域が推定される。 In the packet train measurement method of Patent Document 1, the transmission side transmits each packet included in the packet train whose packet size linearly increases with time at a constant time interval. That is, in the packet train measurement method of Patent Document 1, the bit rate of the packet train increases with time. When the packet train bit rate exceeds the available bandwidth, the delay of the received packet increases. Therefore, the receiving side uses the bit rate at the packet size at which the delay starts to increase as the estimated value of the usable bandwidth. As a result of the above operation, in the packet train measurement method of Patent Document 1, the available bandwidth is estimated using measurement data having a relatively small data size.
非特許文献2のパケットトレイン計測法では、送信側は、一定のビットレートのパケットトレインを複数送信する。受信側は、各パケットトレインを構成するパケットの遅延時間を観測し、遅延時間に増加傾向がある場合にはビットレートが利用可能帯域よりも大きく、遅延時間に増加傾向がない場合にはビットレートが利用可能帯域以下であると判定する。送信側はビットレートを変化させながらパケットトレインを送信し、受信側は遅延時間が増加傾向を示さない最大のビットレートを利用可能帯域の推定値とする。上記の動作の結果、非特許文献2のパケットトレイン計測法では、比較的データサイズが小さい計測用データを用いて、利用可能帯域が推定される。 In the packet train measurement method of Non-Patent Document 2, the transmission side transmits a plurality of packet trains having a constant bit rate. The receiving side observes the delay time of the packets that make up each packet train. If the delay time tends to increase, the bit rate is larger than the available bandwidth, and if the delay time does not tend to increase, the bit rate Is less than the available bandwidth. The transmission side transmits the packet train while changing the bit rate, and the reception side uses the maximum bit rate at which the delay time does not tend to increase as the estimated available bandwidth. As a result of the above operation, in the packet train measurement method of Non-Patent Document 2, the available bandwidth is estimated using measurement data having a relatively small data size.
非特許文献3のパケットトレイン計測法では、送信側は、一定サイズのパケットを送信間隔を徐々に狭めながら送信する。特許文献3のパケットトレイン計測法では、特許文献1のパケットトレイン計測法と同様に、パケットトレインを送信するために必要なビットレートが時間の経過とともに増加する。受信側は、受信間隔が送信間隔より大きくなる直前のパケットの送信間隔とサイズに基づいて、利用可能帯域を推定する。上記の動作の結果、非特許文献3のパケットトレイン計測法では、比較的データサイズが小さい計測用データを用いて、利用可能帯域が推定される。 In the packet train measurement method of Non-Patent Document 3, the transmission side transmits a packet of a certain size while gradually reducing the transmission interval. In the packet train measurement method of Patent Document 3, as with the packet train measurement method of Patent Document 1, the bit rate necessary for transmitting the packet train increases with time. The receiving side estimates the available bandwidth based on the transmission interval and size of the packet immediately before the reception interval becomes larger than the transmission interval. As a result of the above operation, in the packet train measurement method of Non-Patent Document 3, the available bandwidth is estimated using measurement data having a relatively small data size.
特許文献1、非特許文献2、及び非特許文献3のパケットトレイン計測法では、比較的データサイズが小さい計測用データを用いて、利用可能帯域を比較的高い精度で推定することが可能である。しかしながら、上述のパケットトレイン計測法がストリームデータの送信中に利用されると、利用可能帯域の推定誤差が大きくなるという問題がある。例えば、ストリームデータでは、一般に、音声の場合には20ミリ秒ごと、映像の場合には映像フレームごとに、ストリームデータが一度に送信される。そのため、上述のパケットトレイン計測法がストリーム配信と同時に使用された場合には、パケットトレインの遅延はストリームデータの影響を受けて変化する。その結果、ストリームデータ及びパケットトレインの受信タイミングに依存して、利用可能帯域の推定値が変化する。従って特許文献1、非特許文献2、及び非特許文献3のパケットトレイン計測法には、ストリーム配信システムにおいて、利用可能帯域の推定精度が低いという問題がある。
(発明の目的)
本発明の主たる目的は、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができる、ストリーム配信装置、ストリーム受信装置、ストリーム配信システム、ストリーム配信方法、及びストリーム配信プログラムを提供することである。
With the packet train measurement methods of Patent Document 1, Non-Patent Document 2, and Non-Patent Document 3, it is possible to estimate the available bandwidth with relatively high accuracy using measurement data having a relatively small data size. . However, when the above-described packet train measurement method is used during transmission of stream data, there is a problem that an estimation error of an available band becomes large. For example, in stream data, generally, stream data is transmitted at a time for every 20 milliseconds in the case of audio and for each video frame in the case of video. Therefore, when the above-described packet train measurement method is used simultaneously with stream distribution, the delay of the packet train changes due to the influence of the stream data. As a result, the estimated value of the available bandwidth changes depending on the reception timing of the stream data and the packet train. Therefore, the packet train measurement methods of Patent Document 1, Non-Patent Document 2, and Non-Patent Document 3 have a problem that the estimation accuracy of the available bandwidth is low in the stream distribution system.
(Object of invention)
A main object of the present invention is to provide a stream distribution device, a stream reception device, a stream distribution system, a stream distribution method, and a stream distribution program capable of accurately estimating the available bandwidth of a network in stream distribution. It is.
本発明のストリーム配信装置は、ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段、及び受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段を含むストリーム受信装置へ、ストリームデータを送信するストリームパケット送信手段と、ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段とを備えたことを特徴とする。 The stream delivery apparatus of the present invention includes a stream packet receiving unit that receives stream data and an estimation packet sequence, and a stream reception unit that includes an available bandwidth estimation unit that estimates an available network bandwidth based on the received estimation packet sequence. A stream packet transmitting means for transmitting stream data to the apparatus, and a transmission method determining means for determining a transmission method for transmitting a part of the stream data as an estimation packet sequence are provided.
本発明のストリーム受信装置は、ストリームデータを送信するストリームパケット送信手段、及びストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段を含むストリーム配信装置から、ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段と、受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段とを備えたことを特徴とする。 The stream receiving apparatus of the present invention includes: a stream distribution apparatus including a stream packet transmitting unit that transmits stream data; and a transmission method determining unit that determines a transmission method for transmitting a part of the stream data as an estimation packet sequence. It is characterized by comprising stream packet receiving means for receiving stream data and an estimation packet sequence, and usable bandwidth estimation means for estimating an available network bandwidth based on the received estimation packet sequence.
本発明のストリーム配信システムは、受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段を含むストリーム受信装置と、ストリームデータを送信するストリームパケット送信手段、及びストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段を含むストリーム配信装置を備えたことを特徴とする。 A stream distribution system according to the present invention includes a stream receiving device including an available bandwidth estimation unit that estimates an available bandwidth of a network based on a received estimation packet sequence, a stream packet transmission unit that transmits stream data, and stream data And a stream distribution device including a transmission method determining means for determining a transmission method for transmitting a part of the packet as an estimation packet sequence.
本発明のストリーム配信方法は、ストリームデータの一部を推定用パケット列として送信するための送信方法を決定しストリームデータを送信し、ストリームデータ及び推定用パケット列を受信し、受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定することを特徴とする。 The stream distribution method of the present invention determines a transmission method for transmitting a part of stream data as an estimation packet sequence, transmits the stream data, receives the stream data and the estimation packet sequence, and receives the estimation packet received The available bandwidth of the network is estimated based on the sequence.
本発明のストリーム配信プログラムは、ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段、及び受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段を含むストリーム受信装置へ、ストリームデータを送信するストリームパケット送信処理と、ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定処理とをコンピュータに実行させることを特徴とする。 A stream distribution program according to the present invention includes a stream packet receiving unit that receives stream data and an estimation packet sequence, and a stream reception unit that includes an available bandwidth estimation unit that estimates an available network bandwidth based on the received estimation packet sequence. The apparatus is characterized by causing a computer to execute stream packet transmission processing for transmitting stream data and transmission method determination processing for determining a transmission method for transmitting a part of the stream data as an estimation packet sequence.
本発明によれば、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができるという効果がある。 According to the present invention, it is possible to estimate a usable network bandwidth with high accuracy in stream distribution.
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、すべての図面において、同等の構成要素には同じ符号を付し、適宜説明を省略する。
(第1の実施形態)
本実施形態における構成について説明する。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In all the drawings, equivalent components are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
(First embodiment)
A configuration in the present embodiment will be described.
図1は、本発明の第1の実施形態のストリーム配信システムの構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。 FIG. 1 is a block diagram showing an example of the configuration of the stream distribution system according to the first embodiment of this invention. In addition, the direction of the arrow in a drawing shows an example and does not limit the direction of the signal between blocks.
本実施形態のストリーム配信システム400は、ストリームデータを配信するストリーム配信装置100と、ストリームデータを受信するストリーム受信装置200と、ネットワーク300とを含む。ストリーム配信装置100とストリーム受信装置200とは、ネットワーク300を介して接続される。なお、ストリーム配信システム400では、1台のストリーム配信装置100に対して、複数台のストリーム受信装置200が接続されてもよい。また、ストリーム配信システム400は、ストリーム受信装置200からストリーム配信装置100へもストリームデータを配信する双方向の構成であってもよい。ネットワーク300は、インターネット、モバイルネットワーク、組織内ネットワーク(イントラネット)、家庭内LAN(Local Area Network)や、これらを組み合わせたネットワークなどである。
A
ストリーム配信装置100の構成について説明する。
The configuration of the
図2は、本発明の第1の実施形態のストリーム配信装置100の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 2 is a block diagram illustrating an example of the configuration of the
ストリーム配信装置100は、パラメータ設定手段110と、ストリームデータ入力手段120と、送信方法決定手段130と、パケット仕様決定手段140と、パケット生成手段150と、ストリームパケット送信手段160とを含む。
The
パラメータ設定手段110は、送信方法決定手段130及びパケット仕様決定手段140における、それぞれの決定に使用されるパラメータのユーザ等による設定を受け付ける。パラメータの種別及び使用方法については後述する。
The
ストリームデータ入力手段120は、送信対象のストリームデータを入力する。ストリームデータは、1つの映像フレームの画像データ、一定時間分の音声データ、又は一定時間分のセンサ情報等の情報を含む。ストリームデータ入力手段120は、これらの情報を、カメラ、マイク、又はセンサ(いずれも図示せず)等から入力する。また、ストリームデータは、符号化(圧縮)されていてもよい。その場合には、ストリームデータ入力手段120は、エンコーダ(図示せず)から符号化済みのストリームデータを入力する。
The stream
送信方法決定手段130は、ストリームデータ入力手段120からストリームデータのデータサイズを、パラメータ設定手段110から決定のためのパラメータを受け取り、これらの情報からストリームデータの送信方法を決定する。ここで、送信方法は、パケットトレイン送信法と、スループット計測法向けの通常のパケット列による送信方法(以下、「通常のパケット送信法」という)とを含む。通常のパケット送信法では、ストリームデータは、ネットワークのMTU(Maximum Transfer Unit)以下のサイズのパケットに分割されて、間隔を空けずに送信される。 The transmission method determining means 130 receives the data size of the stream data from the stream data input means 120 and the parameter for determination from the parameter setting means 110, and determines the transmission method of the stream data from these information. Here, the transmission method includes a packet train transmission method and a transmission method using a normal packet sequence for the throughput measurement method (hereinafter referred to as “normal packet transmission method”). In a normal packet transmission method, stream data is divided into packets having a size equal to or smaller than the MTU (Maximum Transfer Unit) of the network, and transmitted without an interval.
パケット仕様決定手段140は、送信方法決定手段130による送信方法の決定に基づいて、ストリームデータを送信する際の各パケットのパケットサイズ及び送信時刻を決定する。
The packet
パケット生成手段150は、ストリームデータ入力手段120からストリームデータを受け取り、パケット仕様決定手段140により決定されたパケットサイズになるようにストリームデータを分割し、ヘッダを付加してパケットを生成する。
The
ストリームパケット送信手段160は、パケット生成手段150からパケットを受け取り、指定された時刻にパケットをストリーム受信装置200へ送信する。
The stream
ストリーム受信装置200の構成について説明する。
The configuration of the
図3は、本発明の第1の実施形態のストリーム受信装置200の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 3 is a block diagram illustrating an example of a configuration of the
ストリーム受信装置200は、ストリームパケット受信手段210と、ストリームデータ処理手段220と、利用可能帯域推定手段230とを含む。
The
ストリームパケット受信手段210は、ストリーム配信装置100により送信されたパケットを受信し、ストリームデータ処理手段220及び利用可能帯域推定手段230へ受信したパケットの情報を通知する。
The stream
ストリームデータ処理手段220は、ストリームパケット受信手段210により受信されたパケットに含まれるストリームデータを処理する。例えば、ストリームデータが映像フレームを含む場合には、ストリームデータ処理手段220は、ストリームデータを表示装置(図示せず)に出力する。また、例えば、ストリームデータが音声フレームを含む場合には、ストリームデータ処理手段220は、ストリームデータをスピーカー(図示せず)に出力する。また、ストリームデータ処理手段220は、ストリームデータを記憶装置(図示せず)に出力してもよい。また、ストリームデータが符号化されていた場合には、ストリームデータ処理手段220は、ストリームデータを復号化装置(図示せず)に出力してもよい。
The stream
利用可能帯域推定手段230は、ストリームパケット受信手段210から通知された、ストリームデータを含むパケットのパケットサイズ及び受信時刻に基づいて、ネットワーク300における利用可能帯域を推定する。
The available
次に、本実施形態における動作について説明する。 Next, the operation in this embodiment will be described.
ストリーム配信装置100の動作について説明する。
The operation of the
図4は、本発明の第1の実施形態のストリーム配信装置100の動作を示すフローチャートである。なお、図4に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 4 is a flowchart illustrating the operation of the
まず、送信方法決定手段130及びパケット仕様決定手段140は、パラメータ設定手段110からパラメータの設定を受け取る(ステップS401)。
First, the transmission
次に、ストリームデータ入力手段120は、ストリームデータを入力する(ステップS402)。 Next, the stream data input means 120 inputs stream data (step S402).
続いて、送信方法決定手段130は、ストリームデータ入力手段120から受け取ったストリームデータのデータサイズ、及びパラメータ設定手段110から受け取ったパラメータの設定に基づいて、入力されたストリームデータの送信方法を決定する(ステップS403)。ここで、送信方法は、通常のパケット送信法、又はパケットトレイン送信法のどちらか一方である。
Subsequently, the transmission
続いて、パケット仕様決定手段140は、送信方法決定手段130により決定された送信方法に基づいて、データリンクフレームの送信におけるパケットの仕様(パケットサイズ及び送信時刻)を決定する(ステップS404)。
Subsequently, the packet
続いて、パケット生成手段150は、パケット仕様決定手段140により決定されたパケットの仕様に基づいて、ストリームデータを分割し、パケットを生成する(ステップS405)。
Subsequently, the
続いて、ストリームパケット送信手段160は、パケット生成手段150により生成されたパケットをストリーム受信装置200へ送信する(ステップS406)。
Subsequently, the stream
続いて、ストリームデータ入力手段120は、ストリームデータの入力の有無を判定する(ステップS407)。ストリームデータ入力手段120は、ストリームデータが入力されている間(ステップS407:Yes)、ステップS402からステップS406までの処理を繰り返す。ストリームデータ入力手段120は、ストリームデータの入力が終了すると(ステップS407:No)、処理を終了する。
Subsequently, the stream
送信方法決定手段130の詳細な動作について説明する。 The detailed operation of the transmission method determining means 130 will be described.
図5は、本発明の第1の実施形態の送信方法決定手段130の詳細な動作を示すフローチャートである。なお、図5に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 5 is a flowchart showing a detailed operation of the transmission
送信方法決定手段130は、入力されたストリームデータのデータサイズが所定の閾値以上(ステップS4031:Yes)ならば、通常のパケット送信法を用いることを決定する(ステップS4032)。送信方法決定手段130は、データサイズが所定の閾値未満(ステップS4031:No)ならば、パケットトレイン送信法を用いることを決定する(ステップS4033)。
If the data size of the input stream data is equal to or larger than the predetermined threshold (step S4031: Yes), the transmission
なお、ステップS4031における閾値は、例えば、ストリームデータのデータサイズとMTUとの関係から決定される。前述のように、ストリームデータのデータサイズがMTU以下の場合には、ストリームデータは1パケットで送信されるため、受信にかかった時間を取得することはできない。そこで、ステップS4031における閾値は、MTU+1に設定されてもよい。ただし、パケット数が少ないと利用可能帯域の計測誤差が大きくなるため、ステップS4031における閾値はMTU×a+1(aは自然数)に設定されてもよい。 Note that the threshold value in step S4031 is determined from the relationship between the data size of the stream data and the MTU, for example. As described above, when the data size of the stream data is equal to or smaller than the MTU, the stream data is transmitted in one packet, and thus the time taken for reception cannot be acquired. Therefore, the threshold value in step S4031 may be set to MTU + 1. However, since the measurement error of the available bandwidth increases when the number of packets is small, the threshold value in step S4031 may be set to MTU × a + 1 (a is a natural number).
パケット仕様決定手段140の詳細な動作について説明する。
The detailed operation of the packet
通常のパケット送信法が選択された場合には、パケット仕様決定手段140は、パケットサイズにMTUを設定し、送信時刻にはすべてのパケットを即座に送信するようにパケットの仕様を決定する。
When the normal packet transmission method is selected, the packet
例えば、データリンクレイヤにEthernet(登録商標)、ネットワークレイヤにIPv4(Internet Protocol version 4)、トランスポートレイヤにUDP(User Datagram Protocol)、アプリケーションレイヤにRTP(Real-time Transport Protocol)の各プロトコルが使用される場合について説明する。EthernetのMTUは1500バイトであり、IPv4、UDP、RTPのヘッダサイズ(オプションを含まず)はそれぞれ20、8、12バイトである。そこで、パケット仕様決定手段140は、ストリームデータを1460バイト(=1500−(20+8+12))ごとに分割して1500バイトのRTPパケットを生成するようにパケットサイズを決定する。なお、パケット仕様決定手段140は、特定の一連のストリームデータの異なる部分を含むRTPパケットを識別できるようにしておく。パケット仕様決定手段140は、例えば、特定の一連のストリームデータの異なる部分を含むRTPパケットのタイムスタンプフィールド(以下、単に「タイムスタンプ」という)に同一の値を設定させる。あるいは、パケット仕様決定手段140は、例えば、特定の一連のストリームデータの異なる部分を含む最後のRTPパケットのRTPヘッダのMarkerビットをONに設定させる。例えば、これらの方法により、特定の一連のストリームデータの異なる部分を含むRTPパケットが、1つのパケットトレインに含まれるパケットであることを識別可能である。
For example, Ethernet (registered trademark) is used for the data link layer, IPv4 (Internet Protocol version 4) for the network layer, UDP (User Datagram Protocol) for the transport layer, and RTP (Real-time Transport Protocol) for the application layer The case where it will be described. The MTU of Ethernet is 1500 bytes, and the header sizes (not including options) of IPv4, UDP, and RTP are 20, 8, and 12 bytes, respectively. Therefore, the packet
一方、パケットトレイン送信法が選択された場合には、パケット仕様決定手段140は、所定の制約条件を満たすように、パケットの仕様を決定する。
On the other hand, when the packet train transmission method is selected, the packet
制約条件は、例えば、以下の制約条件の論理積である。
・制約条件1:1つのパケットトレインに含まれるストリームデータのデータサイズは、送信すべきストリームデータのデータサイズ以下であること。ただし、実際に送信されるデータリンクフレームのペイロードは、ストリームデータに加えて、若干のダミーデータを含んでもよい。また、パケットトレインのパケットを構成する際に余ったストリームデータは、パケットトレインのパケットではない通常のパケットとして送信されてもよい。
・制約条件2:次のストリームデータが入力されるまでに、現在のストリームデータの送信が完了すること。
・制約条件3:推定可能な利用可能帯域の下限が所定の下限値以下であること。
・制約条件4:推定可能な利用可能帯域の上限が所定の上限値以上であること。
The constraint condition is, for example, a logical product of the following constraint conditions.
Restriction condition 1: The data size of stream data included in one packet train is equal to or smaller than the data size of stream data to be transmitted. However, the payload of the data link frame that is actually transmitted may include some dummy data in addition to the stream data. Further, the stream data remaining when configuring the packet train packet may be transmitted as a normal packet that is not a packet train packet.
Restriction 2: Transmission of the current stream data is completed before the next stream data is input.
Restriction condition 3: The lower limit of the available bandwidth that can be estimated is equal to or lower than a predetermined lower limit.
Restriction condition 4: The upper limit of the available bandwidth that can be estimated is greater than or equal to a predetermined upper limit.
パケット仕様決定手段140による、パケットの仕様の決定は、上記の制約条件の下で、目的関数を最大化又は最小化する最適化問題として定式化される。目的関数は、例えば、利用可能帯域の推定値の分解能の最大化を表す関数、あるいは前述の関数に対応する意味を有する、利用可能帯域の推定値の刻み幅の最小化を表す関数である。なお、制約条件及び目的関数は、相互に入れ替えることが可能である。例えば、上述の最適化問題は、上述の目的関数と制約条件4とが入れ替えられた、「所定の目標値以上の分解能を有する」という制約条件の下で、「推定可能な利用可能帯域の上限値」という目的関数を最大化する最適化問題に置き換えられる。
The determination of the packet specification by the packet
次に、特許文献1のパケットトレイン計測法を利用した場合を例にして、具体的なパケットの仕様(パケットサイズ及び送信時刻)の決定方法について説明する。 Next, a specific packet specification (packet size and transmission time) determination method will be described by taking as an example the case where the packet train measurement method of Patent Document 1 is used.
特許文献1のパケットトレイン計測法では、送信されるパケットトレインは、
・先頭パケットのパケットサイズ:P(1) [バイト]
・パケットサイズ増分:ΔP [バイト]
・パケット数:N
・パケット間隔:T [秒]
の4種類のパラメータを用いて特徴付けられる。i番目(2<=i<=N)に送信されるパケットの、パケットサイズをP(i)、送信時刻をt(i)とすると、P(i)=P(1)+(i−1)ΔP、t(i)=t(1)+(i−1)Tである。なお、推定可能な利用可能帯域の下限値(単位はbps(Bit Per Second)とする)は8P(1)/T、推定可能な利用可能帯域の上限値(単位はbpsとする)は8(P(1)+ΔP(N−1))/T、分解能はΔP/Tである。なお、推定可能な利用可能帯域の下限値は、2番目のパケットの受信における遅延が、先頭パケットの受信における遅延に比べて増加した場合に検出される。この場合は、パケットサイズP(1)[バイト]のパケットを時間T[秒]で受信できたが、パケットサイズP(2)[バイト]のパケットを時間T[秒]で受信できなかった場合に相当する。つまり、この場合は、ビットレート8P(1)/T[bps]ではパケットを受信できたが、ビットレート8P(2)/T[bps]ではパケットを受信できなかった場合に相当し、推定可能な利用可能帯域の下限値は、8P(1)/T[bps]である。
In the packet train measurement method of Patent Document 1, the packet train to be transmitted is
-Packet size of the first packet: P (1) [bytes]
-Packet size increment: ΔP [bytes]
-Number of packets: N
-Packet interval: T [seconds]
It is characterized using the following four types of parameters. The packet size of the i-th (2 <= i <= N) packet is P (i) and the transmission time is t (i). P (i) = P (1) + (i-1 ) ΔP, t (i) = t (1) + (i−1) T. Note that the lower limit value of the usable bandwidth that can be estimated (unit: bps (Bit Per Second)) is 8P (1) / T, and the upper limit value of the usable bandwidth that can be estimated (unit: bps) is 8 ( P (1) + ΔP (N−1)) / T, and the resolution is ΔP / T. Note that the lower limit value of the available bandwidth that can be estimated is detected when the delay in receiving the second packet is increased compared to the delay in receiving the first packet. In this case, a packet with a packet size P (1) [bytes] could be received at time T [seconds], but a packet with a packet size P (2) [bytes] could not be received at time T [seconds]. It corresponds to. In other words, in this case, the packet can be received at the bit rate 8P (1) / T [bps], but this is equivalent to the case where the packet cannot be received at the bit rate 8P (2) / T [bps]. The lower limit value of the available bandwidth is 8P (1) / T [bps].
一方、推定可能な利用可能帯域の上限値は、N番目のパケットの受信における遅延が、N−1番目のパケットの受信における遅延に比べて増加しなかった場合に検出される。この場合は、パケットサイズP(N)[バイト]のパケットを時間T[秒]で受信できた場合に相当する。つまり、この場合は、ビットレート8P(N)/T=8(P(1)+ΔP(N−1))[bps]ではパケットを受信できた場合に相当し、推定可能な利用可能帯域の上限値は、8(P(1)+ΔP(N−1))/T[bps]である。また、推定可能な利用可能帯域の刻み幅は、隣接するパケット間のビットレートの差ΔP/Tに等しい。 On the other hand, the upper limit value of the available bandwidth that can be estimated is detected when the delay in receiving the Nth packet does not increase compared to the delay in receiving the (N-1) th packet. This case corresponds to a case where a packet having a packet size P (N) [bytes] can be received at time T [seconds]. That is, in this case, the bit rate of 8P (N) / T = 8 (P (1) + ΔP (N−1)) [bps] corresponds to the case where a packet can be received, and the upper limit of the usable bandwidth that can be estimated. The value is 8 (P (1) + ΔP (N−1)) / T [bps]. The step size of the available bandwidth that can be estimated is equal to the bit rate difference ΔP / T between adjacent packets.
本具体例では、4種類のパラメータ
・送信すべきストリームデータのデータサイズ:S [バイト]
・推定可能な利用可能帯域の下限値:Bmin [bps]
・推定可能な利用可能帯域の上限値:Bmax [bps]
・パケットトレインの送信時間の上限値:f [秒]
が与えられる。なお、推定可能な利用可能帯域の下限値Bmin及び推定可能な利用可能帯域の上限値Bmaxは、パラメータ設定手段110により取得される。また、パケットトレインの送信時間の上限値f、及び送信すべきストリームデータのデータサイズSの値は、予め決定される。例えば、ストリームデータが映像フレームである場合には、パケットトレインは、各映像フレームの送信間隔内で送信される必要がある。つまり、パケットトレインの送信時間の上限値fは、フレームレートの逆数(フレームレートが5fps(frames per second)ならfは0.2秒、フレームレートが10fpsならfは0.1秒)として予め決定される。また、例えば、送信すべきストリームデータのデータサイズSの値は、映像フレームのデータサイズに関連して、予め決定される。
In this specific example, four types of parameters and the data size of stream data to be transmitted: S [bytes]
-Lower limit value of available bandwidth that can be estimated: Bmin [bps]
-Estimated upper limit of available bandwidth: Bmax [bps]
-Upper limit of packet train transmission time: f [seconds]
Is given. The lower limit value Bmin of the usable bandwidth that can be estimated and the upper limit value Bmax of the usable bandwidth that can be estimated are acquired by the
従って、制約条件1から制約条件4を満たした上で分解能を最大化(刻み幅を最小化)する前述の最適化問題は、以下のように定式化される。なお、以下では、説明を簡単にするために、制約条件1において、パケットのパケットサイズとペイロードのサイズとを同一視して説明する。ただし、制約条件1は、パケットのパケットサイズとペイロードのサイズとの差を考慮して、定式化されてもよい。また、若干の誤差を許容すれば、パケットのパケットサイズとペイロードのサイズとを同一視することが可能である。 Therefore, the above optimization problem for maximizing the resolution (minimizing the step size) while satisfying the constraint conditions 1 to 4 is formulated as follows. Hereinafter, in order to simplify the description, the packet size of the packet and the size of the payload will be described as being identical in the constraint condition 1. However, the constraint condition 1 may be formulated in consideration of the difference between the packet size of the packet and the payload size. If a slight error is allowed, it is possible to equate the packet size of the packet with the size of the payload.
minimize ΔP/T
subject to N(P(1)+ΔP(N−1)/2)<=S (制約条件1)
(N−1)T<=f (制約条件2)
8P(1)/T<=Bmin (制約条件3)
8(P(1)+ΔP(N−1))/T>=Bmax (制約条件4)
なお、制約条件1において、1つのパケットトレインに含まれるストリームデータのデータサイズは、P(1)+P(2)+・・・+P(N)であり、P(i)=P(1)+(i−1)ΔPを代入することにより求められる。また、制約条件2において、ストリームデータの送信自体に要する時間がパケット間隔Tに比べて十分小さいので、1つのパケットトレインに含まれる、すべてのパケットの送信に要する時間は、パケットとパケットとの間隔の数N−1と、パケット間隔Tとを乗算することにより求められる。
minimize ΔP / T
subject to N (P (1) + ΔP (N−1) / 2) <= S (Constraint 1)
(N-1) T <= f (Constraint 2)
8P (1) / T <= Bmin (Constraint 3)
8 (P (1) + ΔP (N−1)) / T> = Bmax (Constraint 4)
In Constraint 1, the data size of stream data included in one packet train is P (1) + P (2) +... + P (N), and P (i) = P (1) + (I-1) It is obtained by substituting ΔP. Further, in the constraint condition 2, since the time required for transmission of the stream data itself is sufficiently smaller than the packet interval T, the time required for transmission of all the packets included in one packet train is the interval between the packets. Is multiplied by the packet interval T.
パケット仕様決定手段140は、この最適化問題を解いて求めた4つのパラメータP(1)、ΔP、N、及びTによって特徴付けられたパケットトレインをパケット生成手段150に生成させる。
The packet
次に、最適化問題の解法の一例について説明する。上述の4つのパラメータの中で、P(1)、ΔP、及びNは整数で、Tは実数である。そこで、まず、パケット仕様決定手段140は、P(1)、ΔP、及びNの組み合わせに対して制約条件を満たす最大のTと、このTに対するΔP/Tを求める。なお、制約条件を満たすTが存在しない場合もあり得る。次に、パケット仕様決定手段140は、求めたΔP/Tが最小となるパラメータP(1)、ΔP、N、及びTの組み合わせをパケットの仕様として決定する。なお、本実施形態における最適化問題の解法は、上述の解法には限定されない。ただし、最適化問題の解法自体は、広く知られているので、詳述しない。 Next, an example of a solution for the optimization problem will be described. Of the above four parameters, P (1), ΔP, and N are integers, and T is a real number. Therefore, first, the packet specification determining means 140 obtains the maximum T satisfying the constraint condition for the combination of P (1), ΔP, and N, and ΔP / T for this T. Note that there may be no T satisfying the constraint condition. Next, the packet specification determining means 140 determines the combination of parameters P (1), ΔP, N, and T that minimize the obtained ΔP / T as the packet specification. Note that the solution of the optimization problem in the present embodiment is not limited to the above-described solution. However, since the solution itself of the optimization problem is widely known, it will not be described in detail.
パケット生成手段150の詳細な動作について説明する。
The detailed operation of the
通常のパケット送信法が選択された場合には、パケット生成手段150は、例えば、前述のようにストリームデータを1460バイト単位に分割し、各種ヘッダを付加して1500バイトのIPv4パケットとして送信する。この際、パケット生成手段150は、パケット間の間隔を空けずに直前のパケットの送信が完了したら即座に次のパケットを送信する。一方、パケットトレイン送信法が選択された場合には、パケット生成手段150は、パケット仕様決定手段140により決定されたパケットの仕様(パラメータP(1)、ΔP、N、及びTの組み合わせ)に基づいてパケットを生成する。
When the normal packet transmission method is selected, for example, the
図6は、本発明の第1の実施形態のパケット生成手段150によるストリームデータの分割の一例を示す図である。図6において、“入力”は送信すべきストリームデータを、“出力”は送信するために分割されたストリームデータを示す。数字は、ストリームデータのデータサイズを示す。
FIG. 6 is a diagram illustrating an example of stream data division by the
パケット生成手段150は、例えば、S=7500バイトの送信すべきストリームデータを、パケット仕様(P(1)=500バイト、ΔP=50バイト、N=10、T=0.005秒)に従うパケットトレインに分割する。なお、パケットトレインの送信開始時刻をt0とする。
For example, the
まず、パケット生成手段150は、送信すべきストリームデータの先頭からP(1)(=500)バイトを取り出し、各種ヘッダを付加してRTPパケットを生成し、このパケットの送信時刻にt0を設定する。次に、パケット生成手段150は、ストリームデータから次のP(1)+ΔP(=550)バイトを取り出してRTPパケットを生成し、送信時刻にt0+Tを設定する。続いて、パケット生成手段150は、このような処理を繰り返して、N番目のRTPパケット(データサイズ:P(1)+(N−1)ΔP=950バイト、送信時刻:t0+(N−1)T)を生成する。最後に、パケット生成手段150は、残りの250バイトのストリームデータを含むRTPパケットを生成する。パケット生成手段150は、最後のRTPパケットの送信時刻にN番目のパケットの送信時刻の直後の時刻を設定する。
First, the
なお、パケット生成手段150は、通常のパケット送信法又はパケットトレイン送信法により生成されたパケットを区別するために、RTPにおいて規定されたRTPヘッダのExtensionビットを利用してもよい。具体的には、パケット生成手段150は、例えば、通常のパケット送信法の場合にはExtensionビットを0にし、パケットトレイン送信法の場合にはExtensionビットを1にする。Extensionビットは、12バイトの標準的なRTPヘッダの直後に拡張ヘッダが存在することを示すフラグである。パケット生成手段150は、拡張ヘッダに、利用可能帯域を推定するために使用される情報(パケットの送信時刻等)を格納してもよい。
Note that the packet generation means 150 may use the Extension bit of the RTP header defined in RTP in order to distinguish packets generated by the normal packet transmission method or packet train transmission method. Specifically, for example, the
より具体的な例におけるRTPパケットの生成方法について説明する。 A method for generating an RTP packet in a more specific example will be described.
本具体例では、ストリームデータは、ITU−T(International Telecommunication Union Telecommunication Standardization Sector)のH.264形式又はH.265形式で符号化された映像フレームデータである。H.264形式及びH.265形式のストリームの最小単位は、NAL(Network Abstraction Layer)ユニットと呼ばれる。各映像フレームは、1個以上のNALユニットを含む。RTPを使ったH.264のストリームの伝送プロトコルは、IETF(Internet Engineering Task Force)のRFC(Request for Comments)6184において規定されている。RFC6184では、通常、1個のRTPパケットは、1個のNALユニットを格納する。ただし、RFC6184には、1個のNALユニットが複数のRTPパケットに分割される「Fragmentation Unit」と、1個のRTPパケットが複数のNALユニットを含む「Aggregation Packet」とが規定されている。「Fragmentation Unit」又は「Aggregation Packet」を利用することにより、RFC6184に準拠したストリームとして、パケットトレインを送信することが可能である。なお、ここではH.264について説明したが、H.265においても同様の方法が利用可能である。 In this specific example, the stream data is H.264 of ITU-T (International Telecommunication Union Telecommunication Standardization Sector). H.264 format or H.264 format. This is video frame data encoded in the H.265 format. H. H.264 format and H.264 format. The minimum unit of the H.265 format stream is called a NAL (Network Abstraction Layer) unit. Each video frame includes one or more NAL units. H. using RTP The H.264 stream transmission protocol is defined in RFC (Request for Comments) 6184 of the Internet Engineering Task Force (IETF). In RFC6184, normally, one RTP packet stores one NAL unit. However, RFC6184 defines “Fragmentation Unit” in which one NAL unit is divided into a plurality of RTP packets and “Aggregation Packet” in which one RTP packet includes a plurality of NAL units. By using “Fragmentation Unit” or “Aggregation Packet”, it is possible to transmit a packet train as a stream compliant with RFC6184. Here, H. H.264 has been described. A similar method can be used in H.265.
ストリーム受信装置200の動作について説明する。
The operation of the
図7は、本発明の第1の実施形態のストリーム受信装置200の動作を示すフローチャートである。なお、図7に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 7 is a flowchart showing an operation of the
まず、ストリームパケット受信手段210は、ストリーム配信装置100から配信されたストリームデータを含むパケットを受信し、ストリームデータ処理手段220及び利用可能帯域推定手段230へ受信したパケットの情報を通知する(ステップS701)。
First, the stream
次に、ストリームデータ処理手段220は、ストリームパケット受信手段210により受信されたパケットに含まれるストリームデータを処理する(ステップS702)。
Next, the stream
続いて、利用可能帯域推定手段230は、ストリームパケット受信手段210から通知された、ストリームデータを含むパケットのデータサイズ及び受信時刻に基づいて、ネットワーク300における利用可能帯域を推定する(ステップS703)。
Subsequently, the available
続いて、ストリームパケット受信手段210は、ストリームデータの受信の有無を判定する(ステップS704)。ストリームパケット受信手段210は、ストリームデータが受信されている間(ステップS704:Yes)、ステップS701からステップS703までの処理を繰り返す。ストリームパケット受信手段210は、ストリームデータの受信が終了すると(ステップS704:No)、処理を終了する。
Subsequently, the stream
利用可能帯域推定手段230の詳細な動作について説明する。
The detailed operation of the available
利用可能帯域推定手段230は、例えば、受信されたRTPパケットにおけるRTPヘッダ等を参照して、RTPパケットが通常のパケット送信法又はパケットトレイン送信法のどちらの方法で送信されたかを判別する。
For example, the available
通常のパケット送信法で送信された場合、利用可能帯域推定手段230は、各ストリームデータを含むパケットの、受信開始時刻及び受信完了時刻、並びにストリームデータのデータサイズを取得する。受信開始時刻は、例えば、あるRTPのタイムスタンプを含むパケットを最初に受信した時刻である。また、受信完了時刻は、例えば、あるRTPのタイムスタンプを含むパケットのうち、markerビットがONであるパケットを受信した時刻である。ストリームデータのデータサイズは、例えば、同一のRTPのタイムスタンプを含むRTPパケットのペイロード長の合計である。利用可能帯域推定手段230は、一連のストリームデータの受信完了後に、「データサイズ/(受信完了時刻−受信開始時刻)」を計算し、結果を利用可能帯域の推定値とする。
When transmitted by a normal packet transmission method, the available
パケットトレイン送信法で送信された場合、利用可能帯域推定手段230は、1つのパケットトレインに含まれる各パケットの受信時刻を取得する。利用可能帯域推定手段230は、拡張ヘッダ等を参照して一連のパケットトレインの受信完了を検出すると、利用可能帯域を推定する。なお、利用可能帯域の推定方法は、特許文献1、非特許文献2、又は非特許文献3等のパケットトレイン計測法における利用可能帯域推定法である。
When transmitted by the packet train transmission method, the available
以上説明したように、本実施形態のストリーム配信システム400では、ストリーム配信装置100のパケット生成手段150は、送信すべきストリームデータから計測用パケットを生成する。つまり、ストリーム配信システム400では、利用可能帯域推定に悪影響を与えないように、元々送信すべきストリームデータを送信するので、新たなパケットを追加することがなく、それによる遅延が発生しない。そのため利用可能帯域の推定精度が高い。また、ストリーム受信装置200の利用可能帯域推定手段230は、受信した計測用パケットに基づいて、利用可能帯域を推定する。従って、本実施形態のストリーム配信システム400には、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができるという効果がある。
As described above, in the
また、本実施形態のストリーム配信システム400では、ストリーム配信装置100のパケット仕様決定手段140が、最適化問題を解くことにより、利用可能帯域を高精度に推定するための計測用パケットの仕様を決定する。また、ストリーム受信装置200の利用可能帯域推定手段230は、受信した計測用パケットに基づいて、利用可能帯域を所定の精度で推定する。従って、本実施形態のストリーム配信システム400には、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができるという効果がある。
In the
また、本実施形態のストリーム配信システム400では、ストリームデータのデータサイズが所定の閾値未満の場合には、ストリーム配信装置100の送信方法決定手段130が、ストリームデータをパケットトレイン送信法を用いて送信する。その結果、スループット計測法における測定誤差は抑制される。また、本実施形態のストリーム配信システム400では、ストリームデータのデータサイズが所定の閾値以上の場合には、ストリーム配信装置100の送信方法決定手段130が、ストリームデータを通常のパケット送信法を用いて送信する。この場合には、十分なデータサイズの計測データが利用されるので、利用可能帯域推定法における測定誤差は抑制される。従って、本実施形態のストリーム配信システム400には、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができるという効果がある。
(第2の実施形態)
次に、上述した本発明の第1の実施形態のストリーム配信システム400を基本とする、本発明の第2の実施形態のストリーム配信システムについて説明する。本実施形態のストリーム配信システムでは、ストリーム受信装置はストリーム配信装置へ利用可能帯域の推定結果をフィードバックし、ストリーム配信装置はフィードバック結果に基づいてストリームデータのビットレートを制御する。以下の説明において、第1の実施形態と同等の構成要素には同じ符号を付し、適宜説明を省略する。
In the
(Second Embodiment)
Next, a stream distribution system according to the second embodiment of the present invention based on the above-described
本実施形態における構成について説明する。 A configuration in the present embodiment will be described.
本実施形態のストリーム配信システム405(図示しない)は、ストリーム配信装置105と、ストリーム受信装置205と、ネットワーク300とを含む。ストリーム配信装置105、ストリーム受信装置205の動作はそれぞれ、本発明の第1の実施形態のストリーム配信装置100、ストリーム受信装置200の動作と異なる。ストリーム配信システム405のその他の構成は、本発明の第1の実施形態のストリーム配信システム400の構成と同じである。
A stream distribution system 405 (not shown) of the present embodiment includes a
ストリーム配信装置105の構成について説明する。
The configuration of the
図8は、本発明の第2の実施形態のストリーム配信装置105の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 8 is a block diagram illustrating an example of the configuration of the
本実施形態のストリーム配信装置105は、第1の実施形態のストリーム配信装置100の構成要素に加えて、フィードバック受信手段170と、ビットレート制御手段180と、ストリームデータ生成手段190とを含む。また、第1の実施形態のストリーム配信装置100の、パラメータ設定手段110、ストリームデータ入力手段120はそれぞれ、パラメータ設定手段115、ストリームデータ入力手段125に置き換えられている。
The
フィードバック受信手段170は、ストリーム受信装置205から利用可能帯域の推定値の情報を受信する。
The
ビットレート制御手段180は、フィードバック受信手段170から受け取った利用可能帯域の推定値の情報に基づいて、ストリームデータを生成するビットレートを決定する。 The bit rate control means 180 determines the bit rate for generating the stream data based on the information on the available band estimation value received from the feedback receiving means 170.
ストリームデータ生成手段190は、ビットレート制御手段180により決定されたビットレートで、ストリームデータを生成する。例えば、ストリームデータが映像の場合には、ストリームデータ生成手段190は、カメラ(図示せず)から映像フレームを受け取り、H.264等のコーデックを使用して、決定されたビットレートになるようにストリームデータをエンコードする。
The stream
パラメータ設定手段115は、フィードバック受信手段170から利用可能帯域の推定値を受け取る。
The
ストリームデータ入力手段125は、ストリームデータ生成手段190から、送信すべきストリームデータを入力する。
The stream
ストリーム配信装置105のその他の構成は、第1の実施形態のストリーム配信装置100の構成と同じである。
The other configuration of the
ストリーム受信装置205の構成について説明する。
The configuration of the
図9は、本発明の第2の実施形態のストリーム受信装置205の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 9 is a block diagram illustrating an example of a configuration of the
本発明の第2の実施形態のストリーム受信装置205は、第1の実施形態のストリーム受信装置200の構成要素に加えて、フィードバック送信手段240を含む。また、第1の実施形態のストリーム受信装置200の利用可能帯域推定手段230は、利用可能帯域推定手段235に置き換えられている。
The
利用可能帯域推定手段235は、フィードバック送信手段240へ利用可能帯域の推定値を通知する。
The available
フィードバック送信手段240は、利用可能帯域推定手段235により推定された利用可能帯域の推定値を、ストリーム配信装置105へ送信(フィードバック)する。
The
ストリーム受信装置205のその他の構成は、第1の実施形態のストリーム受信装置200の構成と同じである。
The other configuration of the
次に、本実施形態における動作について説明する。 Next, the operation in this embodiment will be described.
ストリーム配信装置105の動作について説明する。
The operation of the
図10は、本発明の第2の実施形態のストリーム配信装置105のストリーム受信装置205からのフィードバック受信時の動作を示すフローチャートである。なお、図10に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 10 is a flowchart illustrating an operation at the time of feedback reception from the
まず、フィードバック受信手段170は、ストリーム受信装置205から利用可能帯域の推定値のフィードバックを受信し、受信した情報をパラメータ設定手段115及びビットレート制御手段180へ通知する(ステップS1001)。
First, the
次に、パラメータ設定手段115は、フィードバック受信手段170から通知された利用可能帯域の推定値に基づいて、送信方法決定手段130及びパケット仕様決定手段140における、それぞれの決定に使用されるパラメータを変化させてもよい(ステップS1002)。
Next, the
続いて、ビットレート制御手段180は、フィードバック受信手段170から受け取った利用可能帯域の推定値の情報に基づいて、送信すべきストリームデータのビットレートを決定する(ステップS1003)。
Subsequently, the bit
最後に、ストリームデータ生成手段190は、ビットレート制御手段180により決定されたビットレートを有するストリームデータを生成する(ステップS1004)。
Finally, the stream
パラメータ設定手段115の詳細な動作について説明する。
The detailed operation of the
パラメータ設定手段115は、例えば、パケットトレイン送信法を用いるか通常のパケット送信法を用いるかを決定(図5のステップS4031)するための閾値を利用可能帯域の推定値に基づいて変化させてもよい。前述のようにスループット計測法では、「受信にかかった時間」が短いと、計測誤差が大きい。閾値が固定の場合には、利用可能帯域が大きいと「受信にかかった時間」が短くなり、計測精度が低下する。そこで、パラメータ設定手段115は、利用可能帯域の推定値が大きい場合には閾値を大きくし、利用可能帯域の推定値が小さい場合には閾値を小さくすることにより、計測誤差を低減する。具体的には、利用可能帯域の推定値をbとし、「受信にかかった時間」の閾値をthとすると、パラメータ設定手段115は、パケットトレイン送信法を用いるか通常のパケット送信法を用いるかを決定するための閾値をb×thに設定する。
For example, the
また、パラメータ設定手段115は、例えば、推定可能な利用可能帯域の、下限値Bmin、上限値Bmaxを、利用可能帯域の推定値に基づいて変化させてもよい。通常、下限値Bminは十分に小さな値に、上限値Bmaxは十分に大きな値に設定される。ところが、下限値Bminをより大きく、または、上限値Bmaxをより小さくすることにより、分解能の向上が可能である。例えば下限値Bminを大きくした場合には、制約条件3が緩和されてパケット間隔Tを大きくできるため、目的関数ΔP/Tを小さくする(すなわち、分解能を上げる)ことが可能である。また、上限値Bmaxを小さくした場合には、制約条件4が緩和されてパケットサイズ増分ΔPを小さく、パケット間隔Tを大きくできるため、目的関数ΔP/Tを小さくすることが可能である。パラメータ設定手段115は、例えば、送信されるストリームデータのビットレートを、最大でも直前のビットレートの2倍までに抑えるという制御を行ってもよい。この制御が行われる場合には、上限値Bmaxはストリームデータのビットレートの2倍までに抑制されるため、前述のように分解能の向上が可能である。
Further, the
ビットレート制御手段180の詳細な動作について説明する。 The detailed operation of the bit rate control means 180 will be described.
ビットレート制御手段180は、例えば、フィードバック受信手段170から受け取った最新の利用可能帯域の推定値を、生成されるストリームデータのビットレートに決定してもよい。利用可能帯域はネットワーク300の混雑度等の要因によって変動するが、ストリーム配信システム405では、変動に即応してビットレートを変更できるため、ネットワーク300の利用可能帯域を有効に利用できる。あるいは、ビットレート制御手段180は、例えば、フィードバック受信手段170から受け取った利用可能帯域の推定値の時系列に対して移動平均などのフィルタリングを行った結果を、生成されるストリームデータのビットレートに決定してもよい。あるいは、ビットレート制御手段180は、例えば、フィードバック受信手段170から受け取った、利用可能帯域、又は利用可能帯域の推定値の時系列に対して移動平均などのフィルタリングを行った結果を、α(αは0<α<1である実数)倍した値を、生成されるストリームデータのビットレートに決定してもよい。
For example, the bit
ストリームデータ生成手段190の詳細な動作について説明する。例えば、ストリームデータが映像の場合には、ストリームデータ生成手段190は、エンコーダ(図示しない)に対して、ビットレート制御手段180により決定されたビットレートを指定する。あるいは、ストリームデータ生成手段190は、ストリームデータが音声の場合には、ビットレートを指定可能なコーデックの種別については、エンコーダに対して、ビットレート制御手段180により決定されたビットレートを指定する。一方、ストリームデータ生成手段190は、ストリームデータが音声の場合に、ビットレートを指定できないコーデックの種別については、コーデックの種別を切り換える。この場合には、ストリームデータ生成手段190は、ビットレート制御手段180により決定されたビットレート以下であって且つ最大であるビットレートを指定可能なコーデックの種別を選択する。また、ストリームデータがセンサデータ等の場合には、ストリームデータ生成手段190は、データを間引く(一部データを送信せずに廃棄する)ことにより、ビットレート制御手段180により決定されたビットレートを有するストリームデータを生成してもよい。
A detailed operation of the stream
本実施形態のストリーム配信装置105のその他の動作は、第1の実施形態のストリーム配信装置100の動作と同じである。
Other operations of the
ストリーム受信装置205の動作について説明する。
The operation of the
図11は、本発明の第2の実施形態のストリーム受信装置205の動作を示すフローチャートである。なお、図11に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 11 is a flowchart illustrating the operation of the
フィードバック送信手段240は、利用可能帯域推定手段235により推定された利用可能帯域の推定値を、ストリーム配信装置105へフィードバックする(ステップS1105)。
The
本実施形態のストリーム受信装置205のその他の動作は、第1の実施形態のストリーム受信装置200の動作と同じである。
Other operations of the
以上説明したように、本実施形態のストリーム配信システム405では、ストリーム配信装置105は本発明の第1の実施形態のストリーム配信装置100の機能を含む。また、本実施形態のストリーム配信システム405では、ストリーム受信装置205は本発明の第1の実施形態のストリーム受信装置200の機能を含む。従って、本実施形態のストリーム配信システム405には、本発明の第1の実施形態のストリーム配信システム400と同じ効果がある。
As described above, in the stream distribution system 405 of the present embodiment, the
また、本実施形態のストリーム配信システム405では、ストリーム受信装置205のフィードバック送信手段240は、利用可能帯域の推定結果をストリーム配信装置105へフィードバックする。また、本実施形態のストリーム配信システム405では、ストリーム配信装置105のフィードバック受信手段170は、フィードバックされた利用可能帯域の推定結果に基づいて、送信すべきストリームデータのビットレートを決定する。従って、本実施形態のストリーム配信システム405には、ストリーム配信において、ネットワークの利用可能帯域を有効利用することができるという効果がある。
(第3の実施形態)
次に、本発明の最小限の構成を有する、本発明の第3の実施形態のストリーム配信システムについて説明する。以下の説明において、第1の実施形態と同等の構成要素には同じ符号を付し、適宜説明を省略する。
In the stream distribution system 405 of the present embodiment, the
(Third embodiment)
Next, a stream distribution system according to a third embodiment of the present invention having the minimum configuration of the present invention will be described. In the following description, the same components as those in the first embodiment are denoted by the same reference numerals, and description thereof is omitted as appropriate.
本実施形態における構成について説明する。 A configuration in the present embodiment will be described.
図12は、本発明の第3の実施形態のストリーム配信システムの構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。 FIG. 12 is a block diagram illustrating an example of the configuration of the stream distribution system according to the third embodiment of this invention. In addition, the direction of the arrow in a drawing shows an example and does not limit the direction of the signal between blocks.
本実施形態のストリーム配信システム406は、ストリーム配信装置106と、ストリーム受信装置206と、ネットワーク300とを含む。
The
ストリーム配信装置106の構成について説明する。
The configuration of the
図13は、本発明の第3の実施形態のストリーム配信装置106の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 13 is a block diagram illustrating an example of the configuration of the
ストリーム配信装置106は、送信方法決定手段136と、ストリームパケット送信手段166とを含む。
The
送信方法決定手段136は、ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する。なお、送信方法は、パケットトレイン送信法、通常のパケット送信法等を含んでもよい。また、送信方法決定手段136は、送信方法がパケットトレイン送信法である場合に、与えられた制約条件を満たした上で、推定の精度と正の相関を有する目的関数を最大化するか、又は推定の精度と負の相関を有する目的関数を最小化するように、パケットの仕様を決定してもよい。制約条件は、ストリームデータのサイズ、推定可能な利用可能帯域の下限値及び上限値、パケットトレインの送信時間の上限値等を含んでもよい。パケットの仕様は、パケットトレインに含まれる各パケットのサイズ及び送信時刻を含んでもよい。パケットの仕様は、推定用パケット列に含まれる各パケットの、サイズは出現順とともに増加させ、送信周期を一定にする仕様であってもよい。パケットの仕様は、パケットトレインの、最初に出現するパケットのサイズ、隣接して出現する2つのパケット間のサイズの増分、パケット数、パケットの送信周期等を含んでもよい。また、送信方法決定手段136は、送信すべきストリームデータのデータサイズが所定の閾値未満か否かによって、送信方法を決定してもよい。
The transmission
ストリームパケット送信手段166は、送信方法決定手段136により決定された送信方法に従って、ストリーム受信装置206へ、ストリームデータを送信する。なお、ストリームパケット送信手段166は、ストリーム受信装置206から利用可能帯域の推定結果をフィードバックされる場合には、推定結果に基づいて、ストリーム配信装置106のパラメータの値を変更してもよい。パラメータは、前述の制約条件に含まれるパラメータ、前述の閾値、送信すべきストリームデータのビットレート等を含んでもよい。
The stream
ストリーム受信装置206の構成について説明する。
The configuration of the
図14は、本発明の第3の実施形態のストリーム受信装置206の構成の一例を示すブロック図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
FIG. 14 is a block diagram illustrating an example of the configuration of the
ストリーム受信装置206は、ストリームパケット受信手段216と、利用可能帯域推定手段236とを含む。
The
ストリームパケット受信手段216は、ストリームデータ及び推定用パケット列を受信する。
The stream
利用可能帯域推定手段236は、受信した推定用パケット列に基づいてネットワークの利用可能帯域を推定する。なお、推定方法は、パケットトレイン計測法、スループット計測法等を含んでもよい。なお、利用可能帯域推定手段236は、利用可能帯域の推定結果を、ストリーム配信装置106へフィードバックしてもよい。
The available bandwidth estimation means 236 estimates the available bandwidth of the network based on the received estimation packet sequence. Note that the estimation method may include a packet train measurement method, a throughput measurement method, and the like. Note that the available
次に、本実施形態における動作について説明する。 Next, the operation in this embodiment will be described.
ストリーム配信装置106の動作について説明する。
The operation of the
送信方法決定手段136は、送信すべきストリームデータのデータサイズ、あらかじめ設定された所定のパラメータに基づいて、入力されたストリームデータの送信方法を決定する(ステップS1503)。
The transmission
ストリームパケット送信手段166は、送信方法決定手段136により決定された送信方法に従って、ストリームデータをストリーム受信装置206へ送信する(ステップS1506)。
The stream
図15は、本発明の第3の実施形態のストリーム配信装置106の動作を示すフローチャートである。なお、図15に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 15 is a flowchart illustrating the operation of the
ストリーム受信装置206の動作について説明する。
The operation of the
図16は、本発明の第3の実施形態のストリーム受信装置206の動作を示すフローチャートである。なお、図16に示すフローチャート及び以下の説明は一例であり、適宜求める処理に応じて、処理順等を入れ替えたり、処理を戻したり、又は処理を繰り返したりしてもよい。
FIG. 16 is a flowchart illustrating the operation of the
ストリームパケット受信手段216は、ストリーム配信装置106から配信された推定用パケット列を受信し、利用可能帯域推定手段236へ受信した推定用パケット列の情報(データサイズ及び受信時刻を含む)を通知する(ステップS1601)。
The stream
利用可能帯域推定手段236は、ストリームパケット受信手段216から通知された、推定用パケット列の情報に基づいて、ネットワーク300における利用可能帯域を推定する(ステップS1603)。
The available
以上説明したように、本実施形態のストリーム配信システム406では、ストリーム配信装置106の送信方法決定手段136は、ストリームパケット送信手段166に送信すべきストリームデータから生成された計測用パケットを送信させる。つまり、ストリーム配信システム406では、送信すべきストリームデータとは別の計測用データが用いられないので、利用可能帯域推定がストリームデータのスループットに与える影響が抑制される結果、利用可能帯域の推定精度が高い。また、ストリーム受信装置206の利用可能帯域推定手段236は、受信した計測用パケットに基づいて、利用可能帯域を推定する。従って、本実施形態のストリーム配信システム406には、ストリーム配信において、ネットワークの利用可能帯域を高精度に推定することができるという効果がある。
As described above, in the
また、上述した本発明の各実施形態のストリーム配信装置及びストリーム受信装置は、専用の装置によって実現してもよいが、コンピュータ(情報処理装置)によっても実現可能である。この場合、係るコンピュータは、メモリ(図示せず)に格納されたソフトウェア・プログラムをCPU(Central Processing Unit、図示せず)に読み出し、読み出したソフトウェア・プログラムをCPUにおいて実行することにより、実行結果を、例えば、ユーザ・インタフェースに出力する。上述した各実施形態の場合、係るソフトウェア・プログラムには、上述したところの、図2に示したストリーム配信装置100の各手段、図3に示したストリーム受信装置200の各手段、図8に示したストリーム配信装置105の各手段、及び図9に示したストリーム受信装置205の各手段の機能を実現可能な記述がなされていればよい。ただし、ストリーム配信装置100、ストリーム配信装置105、ストリーム受信装置200、及びストリーム受信装置205の各手段には、適宜ハードウェアを含むことも想定される。そして、このような場合、係るソフトウェア・プログラム(コンピュータ・プログラム)は、本発明を構成すると捉えることができる。更に、係るソフトウェア・プログラムを格納した、コンピュータ読み取り可能な記憶媒体も、本発明を構成すると捉えることができる。
In addition, the stream distribution device and the stream reception device according to each embodiment of the present invention described above may be realized by a dedicated device, but may also be realized by a computer (information processing device). In this case, the computer reads a software program stored in a memory (not shown) to a CPU (Central Processing Unit, not shown), and executes the read software program on the CPU to obtain an execution result. For example, output to the user interface. In the case of each of the embodiments described above, the software program includes, as described above, each unit of the
以上、本発明を、上述した各実施形態及びその変形例によって例示的に説明した。しかしながら、本発明の技術的範囲は、上述した各実施形態及びその変形例に記載した範囲に限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。 The present invention has been exemplarily described with the above-described embodiments and modifications thereof. However, the technical scope of the present invention is not limited to the scope described in the above-described embodiments and modifications thereof. It will be apparent to those skilled in the art that various modifications and improvements can be made to such embodiments. In such a case, new embodiments to which such changes or improvements are added can also be included in the technical scope of the present invention. This is clear from the matters described in the claims.
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段、及び
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置へ、前記ストリームデータを送信するストリームパケット送信手段と、
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定手段と
を備えたことを特徴とするストリーム配信装置。
(付記2)
前記推定用パケット列に含まれる各パケットの、サイズ及び送信時刻を、与えられた制約条件を満たすように決定するパケット仕様決定手段
を備えたことを特徴とする付記1に記載のストリーム配信装置。
(付記3)
前記パケット仕様決定手段は、前記サイズ及び前記送信時刻を、前記制約条件を満たした上で、前記推定の精度と正の相関を有する第1の目的関数を最大化するか、又は前記精度と負の相関を有する第2の目的関数を最小化するように決定する
ことを特徴とする付記2に記載のストリーム配信装置。
(付記4)
前記推定用パケット列に含まれる各パケットの、サイズが出現順とともに増加し、送信周期が一定である
ことを特徴とする付記1乃至3のいずれか1項に記載のストリーム配信装置。
(付記5)
前記パケット仕様決定手段は、前記ストリームデータのサイズを含む入力パラメータから、前記推定用パケット列の、最初に出現するパケットのサイズ、隣接して出現する2つのパケット間のサイズの増分、パケット数、及びパケットの送信周期を含む出力パラメータを決定する
ことを特徴とする付記2又は付記3に記載のストリーム配信装置。
(付記6)
前記入力パラメータは、推定可能な利用可能帯域の下限値及び上限値と、パケット列の送信時間の上限値とを含む
ことを特徴とする付記5に記載のストリーム配信装置。
(付記7)
ストリームデータを送信するストリームパケット送信手段、及び
前記ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段
を含むストリーム配信装置から、前記ストリームデータ及び前記推定用パケット列を受信するストリームパケット受信手段と、
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段と
を備えたことを特徴とするストリーム受信装置。
(付記8)
ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段、及び
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置と、
前記ストリームデータを送信するストリームパケット送信手段、及び
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定手段
を含むストリーム配信装置と
を備えたことを特徴とするストリーム配信システム。
(付記9)
ストリームデータの一部を推定用パケット列として送信するための送信方法を決定し
前記ストリームデータを送信し、
前記ストリームデータ及び前記推定用パケット列を受信し、
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する
ことを特徴とするストリーム配信方法。
(付記10)
ストリームデータ及び推定用パケット列を受信するストリームパケット受信手段、及び
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置へ、前記ストリームデータを送信するストリームパケット送信処理と、
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定処理と
をコンピュータに実行させることを特徴とするストリーム配信プログラム。
(付記11)
前記ストリームデータのサイズが所定の閾値未満の場合に前記ストリームデータを前記推定用パケット列として送信することを決定し、前記ストリームデータのサイズが前記閾値以上の場合に前記ストリームデータを通常のパケット列として送信することを決定する送信方法決定手段
を備えたことを特徴とする付記1乃至6のいずれか1項に記載のストリーム配信装置。
(付記12)
前記ストリーム受信装置は、前記利用可能帯域の推定結果を前記ストリーム配信装置へフィードバックするフィードバック送信手段を含む
ことを特徴とする付記11に記載のストリーム配信装置。
(付記13)
前記ストリーム配信装置は、フィードバックされた前記推定結果に基づいて前記閾値を変更するパラメータ設定手段
を備えたことを特徴とする付記12に記載のストリーム配信装置。
(付記14)
前記ストリーム配信装置は、フィードバックされた前記推定結果に基づいて前記ストリームデータのビットレートを制御するビットレート制御手段
を備えたことを特徴とする付記12又は付記13に記載のストリーム配信装置。
(付記15)
ストリームデータを送信するストリームパケット送信手段、及び
前記ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段
を含むストリーム配信装置から、前記ストリームデータ及び前記推定用パケット列を受信するストリームパケット受信処理と、
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定処理と
をコンピュータに実行させることを特徴とするストリーム受信プログラム。
(付記16)
前記制約条件は、1つの前記推定用パケット列に含まれる前記ストリームデータのサイズは、前記ストリームデータのサイズ以下であることと、次の前記ストリームデータが入力されるまでに、現在の前記ストリームデータの送信が完了することと、推定可能な前記利用可能帯域の下限が所定の下限値以下であることと、推定可能な前記利用可能帯域の上限が所定の上限値以上であることとを含む
ことを特徴とする付記2又は付記3に記載のストリーム配信装置。
A part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.
(Appendix 1)
Stream data receiving means for receiving stream data and an estimation packet sequence, and usable bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence. A stream packet transmitting means for transmitting;
A stream distribution apparatus comprising: a transmission method determination unit that determines a transmission method for transmitting a part of the stream data as the estimation packet sequence.
(Appendix 2)
The stream distribution apparatus according to appendix 1, further comprising packet specification determining means for determining the size and transmission time of each packet included in the estimation packet sequence so as to satisfy given constraint conditions.
(Appendix 3)
The packet specification determining means maximizes the first objective function having a positive correlation with the accuracy of the estimation or satisfies the size and the transmission time while satisfying the constraint condition, or The stream delivery apparatus according to appendix 2, wherein the second objective function having the correlation of the second objective function is determined to be minimized.
(Appendix 4)
The stream distribution apparatus according to any one of appendices 1 to 3, wherein the size of each packet included in the estimation packet sequence increases with the order of appearance, and the transmission cycle is constant.
(Appendix 5)
The packet specification deciding means, from the input parameter including the size of the stream data, from the estimation packet sequence, the size of the packet that appears first, the size increment between two adjacent packets, the number of packets, And the output parameter including the packet transmission cycle is determined. The stream distribution device according to appendix 2 or appendix 3.
(Appendix 6)
The stream distribution apparatus according to appendix 5, wherein the input parameters include a lower limit value and an upper limit value of an available bandwidth that can be estimated, and an upper limit value of a transmission time of a packet sequence.
(Appendix 7)
A stream packet transmitting means for transmitting stream data; and a transmission method determining means for determining a transmission method for transmitting a part of the stream data as an estimation packet sequence. Stream packet receiving means for receiving a packet sequence;
A stream receiving device comprising: an available bandwidth estimating unit that estimates an available bandwidth of a network based on the received estimation packet sequence.
(Appendix 8)
A stream receiving device including stream packet receiving means for receiving stream data and an estimation packet sequence; and an available bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence;
A stream distribution apparatus comprising: stream packet transmission means for transmitting the stream data; and a transmission method determination means for determining a transmission method for transmitting a part of the stream data as the estimation packet sequence. Stream delivery system.
(Appendix 9)
Determining a transmission method for transmitting a part of the stream data as an estimation packet sequence, transmitting the stream data,
Receiving the stream data and the estimation packet sequence;
A stream distribution method characterized by estimating an available bandwidth of a network based on the received estimation packet sequence.
(Appendix 10)
Stream data receiving means for receiving stream data and an estimation packet sequence, and usable bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence. Stream packet transmission processing to be transmitted;
A stream distribution program causing a computer to execute a transmission method determination process for determining a transmission method for transmitting a part of the stream data as the estimation packet sequence.
(Appendix 11)
When the size of the stream data is less than a predetermined threshold, it is determined to transmit the stream data as the estimation packet sequence, and when the size of the stream data is equal to or larger than the threshold value, the stream data is converted to a normal packet sequence 7. The stream distribution device according to any one of appendices 1 to 6, further comprising: a transmission method determination unit that determines transmission as a transmission method.
(Appendix 12)
The stream delivery apparatus according to appendix 11, wherein the stream reception apparatus includes feedback transmission means for feeding back the estimation result of the available bandwidth to the stream delivery apparatus.
(Appendix 13)
13. The stream distribution apparatus according to appendix 12, wherein the stream distribution apparatus includes a parameter setting unit that changes the threshold based on the feedback estimation result.
(Appendix 14)
14. The stream delivery apparatus according to appendix 12 or appendix 13, wherein the stream delivery apparatus includes a bit rate control unit that controls a bit rate of the stream data based on the estimation result fed back.
(Appendix 15)
A stream packet transmitting means for transmitting stream data; and a transmission method determining means for determining a transmission method for transmitting a part of the stream data as an estimation packet sequence. A stream packet reception process for receiving a packet sequence;
A stream reception program that causes a computer to execute an available bandwidth estimation process for estimating an available bandwidth of a network based on the received packet sequence for estimation.
(Appendix 16)
The constraint condition is that the size of the stream data included in one of the estimation packet sequences is equal to or smaller than the size of the stream data, and the current stream data until the next stream data is input. Transmission is completed, the lower limit of the available bandwidth that can be estimated is less than or equal to a predetermined lower limit value, and the upper limit of the available bandwidth that can be estimated is greater than or equal to a predetermined upper limit value. The stream delivery device according to Supplementary Note 2 or Supplementary Note 3, wherein
本発明は、撮影した映像を遠隔地に配信するライブ映像配信システム、遠隔地間でコミュニケーションを取るためのテレビ会議システムやテレプレゼンスシステム等において利用できる。 INDUSTRIAL APPLICABILITY The present invention can be used in a live video distribution system that distributes photographed video to a remote place, a video conference system or a telepresence system for communicating between remote places.
100 ストリーム配信装置
200 ストリーム受信装置
300 ネットワーク
400 ストリーム配信システム
110 パラメータ設定手段
120 ストリームデータ入力手段
130 送信方法決定手段
140 パケット仕様決定手段
150 パケット生成手段
160 ストリームパケット送信手段
210 ストリームパケット受信手段
220 ストリームデータ処理手段
230 利用可能帯域推定手段
105 ストリーム配信装置
115 パラメータ設定手段
125 ストリームデータ入力手段
170 フィードバック受信手段
180 ビットレート制御手段
190 ストリームデータ生成手段
205 ストリーム受信装置
235 利用可能帯域推定手段
240 フィードバック送信手段
405 ストリーム配信システム
106 ストリーム配信装置
206 ストリーム受信装置
136 送信方法決定手段
166 ストリームパケット送信手段
216 ストリームパケット受信手段
236 利用可能帯域推定手段
406 ストリーム配信システム
DESCRIPTION OF
Claims (10)
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置へ、前記ストリームデータを送信するストリームパケット送信手段と、
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定手段と
を備えたことを特徴とするストリーム配信装置。 Stream data receiving means for receiving stream data and an estimation packet sequence, and usable bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence. A stream packet transmitting means for transmitting;
A stream distribution apparatus comprising: a transmission method determination unit that determines a transmission method for transmitting a part of the stream data as the estimation packet sequence.
を備えたことを特徴とする請求項1に記載のストリーム配信装置。 The stream distribution apparatus according to claim 1, further comprising a packet specification determining unit that determines a size and a transmission time of each packet included in the estimation packet sequence so as to satisfy a given constraint condition. .
ことを特徴とする請求項2に記載のストリーム配信装置。 The packet specification determining means maximizes the first objective function having a positive correlation with the accuracy of the estimation or satisfies the size and the transmission time while satisfying the constraint condition, or The stream distribution device according to claim 2, wherein the second objective function having the correlation of the second objective function is determined to be minimized.
ことを特徴とする請求項2又は請求項3に記載のストリーム配信装置。 The packet specification deciding means, from the input parameter including the size of the stream data, from the estimation packet sequence, the size of the packet that appears first, the size increment between two adjacent packets, the number of packets, 4. The stream delivery apparatus according to claim 2, wherein an output parameter including a packet transmission period is determined.
を備えたことを特徴とする請求項1乃至4のいずれか1項に記載のストリーム配信装置。 When the size of the stream data is less than a predetermined threshold, it is determined to transmit the stream data as the estimation packet sequence, and when the size of the stream data is equal to or larger than the threshold value, the stream data is converted to a normal packet sequence 5. The stream distribution device according to claim 1, further comprising: a transmission method determination unit that determines transmission as.
ことを特徴とする請求項5に記載のストリーム配信装置。 6. The stream receiving apparatus according to claim 5, further comprising: feedback transmission means for feeding back the estimation result of the available bandwidth; and parameter setting means for changing the threshold based on the fed back estimation result. 2. The stream delivery device according to 1.
前記ストリームデータの一部を推定用パケット列として送信するための送信方法を決定する送信方法決定手段
を含むストリーム配信装置から、前記ストリームデータ及び前記推定用パケット列を受信するストリームパケット受信手段と、
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段と
を備えたことを特徴とするストリーム受信装置。 A stream packet transmitting means for transmitting stream data; and a transmission method determining means for determining a transmission method for transmitting a part of the stream data as an estimation packet sequence. Stream packet receiving means for receiving a packet sequence;
A stream receiving device comprising: an available bandwidth estimating unit that estimates an available bandwidth of a network based on the received estimation packet sequence.
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置と、
前記ストリームデータを送信するストリームパケット送信手段、及び
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定手段
を含むストリーム配信装置と
を備えたことを特徴とするストリーム配信システム。 A stream receiving device including stream packet receiving means for receiving stream data and an estimation packet sequence; and an available bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence;
A stream distribution apparatus comprising: stream packet transmission means for transmitting the stream data; and a transmission method determination means for determining a transmission method for transmitting a part of the stream data as the estimation packet sequence. Stream delivery system.
前記ストリームデータを送信し、
前記ストリームデータ及び前記推定用パケット列を受信し、
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する
ことを特徴とするストリーム配信方法。 Determining a transmission method for transmitting a part of the stream data as an estimation packet sequence, transmitting the stream data,
Receiving the stream data and the estimation packet sequence;
A stream distribution method characterized by estimating an available bandwidth of a network based on the received estimation packet sequence.
受信した前記推定用パケット列に基づいてネットワークの利用可能帯域を推定する利用可能帯域推定手段
を含むストリーム受信装置へ、前記ストリームデータを送信するストリームパケット送信処理と、
前記ストリームデータの一部を前記推定用パケット列として送信するための送信方法を決定する送信方法決定処理と
をコンピュータに実行させることを特徴とするストリーム配信プログラム。 Stream data receiving means for receiving stream data and an estimation packet sequence, and usable bandwidth estimation means for estimating an available bandwidth of the network based on the received estimation packet sequence. Stream packet transmission processing to be transmitted;
A stream distribution program causing a computer to execute a transmission method determination process for determining a transmission method for transmitting a part of the stream data as the estimation packet sequence.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016017319A JP2017139521A (en) | 2016-02-01 | 2016-02-01 | Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016017319A JP2017139521A (en) | 2016-02-01 | 2016-02-01 | Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017139521A true JP2017139521A (en) | 2017-08-10 |
Family
ID=59565196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016017319A Pending JP2017139521A (en) | 2016-02-01 | 2016-02-01 | Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017139521A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019117246A1 (en) * | 2017-12-15 | 2019-06-20 | 日本電気株式会社 | Receiver, communication system, available band estimation method and storage medium in which program is stored |
CN115643427A (en) * | 2022-12-23 | 2023-01-24 | 广州佰锐网络科技有限公司 | Ultra-high-definition audio and video communication method and system and computer readable storage medium |
CN117294851A (en) * | 2023-11-23 | 2023-12-26 | 此芯科技(上海)有限公司 | Video streaming processing device and method |
-
2016
- 2016-02-01 JP JP2016017319A patent/JP2017139521A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019117246A1 (en) * | 2017-12-15 | 2019-06-20 | 日本電気株式会社 | Receiver, communication system, available band estimation method and storage medium in which program is stored |
US11303552B2 (en) | 2017-12-15 | 2022-04-12 | Nec Corporation | Receiver, communication system, available bandwidth estimation method, and storage medium in which program is stored |
CN115643427A (en) * | 2022-12-23 | 2023-01-24 | 广州佰锐网络科技有限公司 | Ultra-high-definition audio and video communication method and system and computer readable storage medium |
CN117294851A (en) * | 2023-11-23 | 2023-12-26 | 此芯科技(上海)有限公司 | Video streaming processing device and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10623123B2 (en) | Virtual HDBaseT link | |
US9781488B2 (en) | Controlled adaptive rate switching system and method for media streaming over IP networks | |
KR20080066002A (en) | Video packet shaping for video telephony | |
JP5267416B2 (en) | COMMUNICATION DEVICE, COMMUNICATION DEVICE COMMUNICATION METHOD, AND COMMUNICATION DEVICE COMMUNICATION CONTROL PROGRAM | |
EP3310000B1 (en) | Methods and systems for analyzing streaming media sessions | |
WO2016090632A1 (en) | Method and apparatus for detecting operating state of node | |
EP3547690B1 (en) | Real-time video transmission method of multipath network | |
EP3226489A1 (en) | Available-band estimation system, available-band estimation method, reception apparatus, and reception apparatus program storage medium | |
JP5748471B2 (en) | Distribution apparatus, distribution method, and program | |
JP2017139521A (en) | Stream distributing device, stream receiving device, stream distributing system, stream distributing method, and stream distributing program | |
JP6468193B2 (en) | Communication device, network available bandwidth estimation method in communication device, and network available bandwidth estimation program | |
EP3560152A1 (en) | Determining the bandwidth of a communication link | |
US9641445B2 (en) | Communication apparatus, communication method, and program | |
JP2009246630A (en) | Home gateway device and communication quality control method of home gateway device | |
CN107483990B (en) | Dynamic code rate adjusting method and device for streaming media transmission and transmission system | |
US10772010B2 (en) | Transmission apparatus, method for controlling transmission, and recording medium | |
CN112839240B (en) | Bandwidth detection method and system based on video stream | |
Son et al. | Fast required bandwidth estimation technique for network adaptive streaming | |
WO2016103674A1 (en) | Stream reception device, communication system, method for estimating timing of stream transmission, and recording medium | |
WO2023281586A1 (en) | Line concentrator, congestion control method, and congestion control program | |
JP5343573B2 (en) | How to send image data | |
JP2019050455A (en) | Network quality estimation method and network quality estimation device | |
CN109716683B (en) | Time synchronization in real-time content distribution systems | |
JP2013162441A (en) | Data transmission device, system, and method | |
JP4973453B2 (en) | Transmission terminal, communication system, program, and data quality control method |