WO2016103674A1 - ストリーム受信装置、通信システム、ストリーム送信のタイミングを推定する方法および記録媒体 - Google Patents
ストリーム受信装置、通信システム、ストリーム送信のタイミングを推定する方法および記録媒体 Download PDFInfo
- Publication number
- WO2016103674A1 WO2016103674A1 PCT/JP2015/006371 JP2015006371W WO2016103674A1 WO 2016103674 A1 WO2016103674 A1 WO 2016103674A1 JP 2015006371 W JP2015006371 W JP 2015006371W WO 2016103674 A1 WO2016103674 A1 WO 2016103674A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- packet
- stream
- probe
- transmission
- probe packet
- Prior art date
Links
Images
Definitions
- the present invention estimates the transmission timing of a data packet transmitted in a communication network (hereinafter referred to as “network” in the present application), particularly a streaming packet continuously transmitted over a certain period, such as video. Regarding technology.
- the background traffic can be known by the degree of delay time that occurs due to the difference between the packet transmission time at the transmission side device and the reception time of the packet at the reception side device. That is, when the background traffic increases, the delay time becomes longer.
- the receiving device can easily know the packet reception time, but it is necessary to estimate the packet transmission time.
- the network it is important to use the network bandwidth as much as possible in consideration of background traffic and realize video streaming without disturbance or interruption. For this purpose, it is necessary to detect a network band that can be used for packet communication in the network (hereinafter referred to as “available band” in the present application).
- available band a network band that can be used for packet communication in the network
- Patent Document 1 discloses a technique for transmitting a packet sequence that gradually increases in size at regular intervals, and estimating the available bandwidth based on what number of packets the delay time increases.
- Patent Document 2 builds a model representing the relationship between network load and delay from information indicating whether the type of traffic flowing in the network is video or audio, and shows the distribution of delay states of probe packets actually transmitted. Based on this, a technique for estimating the available bandwidth is disclosed.
- probe packets are transmitted and received between networks, round trip delay and jitter are measured from the results, and buffering time of a streaming packet (hereinafter referred to as “stream” in the present application) is determined based on the measurement results.
- stream a streaming packet
- Patent Document 4 discloses a technique for obtaining a one-way delay of a streaming packet in a network during VoIP (Voice over Internet Protocol) communication.
- Patent Document 5 As a technique related to measurement using a probe packet.
- Non-Patent Document 1 discloses a technique for gradually estimating a packet transmission interval of a certain size and estimating the available bandwidth based on what number of packets the reception interval exceeds the transmission interval.
- Patent Document 1 and Non-Patent Document 1 do not disclose a technique for accurately estimating the available bandwidth when the background traffic is transmitted intermittently like video. These techniques are based on the premise that the available bandwidth does not fluctuate during transmission of one packet sequence. Therefore, the stream transmission timing cannot be accurately estimated in the available bandwidth that fluctuates and changes in the background.
- Patent Document 2 cannot be used on networks such as the Internet and mobile networks.
- the technique of Patent Document 2 requires information on the physical bandwidth of the target network, whereas the Internet is a collection of networks with different management entities, so generally the information on the physical bandwidth is known. I can't.
- the physical bandwidth of the mobile network changes frequently according to the radio quality between the base station and the terminal, it is difficult to use information regarding the physical bandwidth in the mobile network.
- Patent Document 3 in streaming from a transmission device to a reception device, probe packets are transmitted from the reception device to the transmission device in advance to measure round-trip delay and jitter.
- the technique of Patent Document 3 determines the buffering time of a stream so that jitter can be absorbed and packet loss can be retransmitted.
- the delay measurement by the probe packet since the delay measurement by the probe packet is performed in advance (before the start of stream transmission), the timing of data (packet) transmission cannot be estimated during stream transmission.
- the transmitting voice communication device transmits time information instead of voice when the voice to be transmitted is silent, and the receiving voice communication device is one-way based on the received packet time information. Calculate the delay time in minutes.
- the technique of Patent Document 4 is a technique for changing information stored in a packet to be transmitted, and the data transmission timing cannot be estimated.
- the present invention was made to solve the above problems.
- the main object of the present invention is to estimate the transmission timing of a stream with high accuracy even when a large amount of data is periodically transmitted.
- the first aspect of the present invention is to A stream receiving device that receives a probe packet, calculates a delay time of the probe packet, and estimates a transmission time of the data packet based on the calculated delay time in a network that transmits the data packet and the probe packet.
- the second aspect of the present invention is: A stream receiving device as described above; A stream transmission device for transmitting data packets and probe packets; The stream receiving device and the stream transmitting device are communicably connected via a network. It is a communication system.
- the third aspect of the present invention is: In the network that transmits the data packet and the probe packet, the probe packet is received, Calculate the delay time of the probe packet, Estimate the transmission time of the data packet based on the calculated delay time, This is an estimation method.
- the fourth aspect of the present invention is: A program that causes a computer to execute a method of receiving a probe packet in a network that transmits the data packet and the probe packet, calculating a delay time of the probe packet, and estimating a transmission time of the data packet based on the calculated delay time Is a recording medium for storing.
- the transmission timing of the stream can be estimated with high accuracy.
- the communication system 100 includes a stream transmission device 10, a stream reception device 20, and relay devices 5a and 5b.
- the stream transmission device 10 includes a stream transmission unit 1 and a probe transmission unit 2.
- the stream reception device 20 includes a stream reception unit 3 and a timing estimation unit 4.
- the stream transmission unit 1 and the probe transmission unit 2 are communicably connected to the relay device 5a.
- the stream receiver 3 and the timing estimator 4 are communicably connected to the relay device 5b. Further, the relay device 5a and the relay device 5b are also connected.
- the stream transmitted by the stream transmission unit 1 is sent to the stream reception unit 3 via the relay devices 5a and 5b.
- the probe packet transmitted by the probe transmission unit 2 is also transmitted to the timing estimation unit 4 via the relay devices 5a and 5b.
- Stream transmission unit 1 transmits a stream.
- the stream transmission unit 1 encodes video captured by a camera (not shown) or the like connected to a computer (not shown) with a codec such as H.264, and adds an RTP (Real-time Transport Protocol) header. To create an RTP packet. Then, the stream transmission unit 1 transmits the created RTP packet to the stream reception unit 3.
- the video stream is configured by collecting a plurality of still image frames (hereinafter referred to as “frames”) that are the basis of a moving image. The frames are continuously displayed, thereby realizing a moving image for the user.
- transmission processing is performed in units of frames. That is, when the stream transmitting unit 1 acquires data for one frame from the camera, the stream transmitting unit 1 repeats the process of encoding and transmitting the acquired frame for each frame.
- the data size of each frame changes depending on the set value of the bit rate, the type of the frame, the size of the difference from the previous and subsequent frames, and the like. In some cases, it is sent separately.
- the probe transmission unit 2 transmits a probe (test) packet for estimating the transmission timing of the stream.
- the probe transmission unit 2 transmits a probe packet of a certain size to the timing estimation unit 4 at regular time intervals, for example.
- the probe packet transmission interval may be, for example, an interval of 1 millisecond, but is not limited thereto.
- the timing estimation unit 4 may change the transmission interval according to the required accuracy.
- the probe packet transmission interval is preferably a fixed interval, but it may not be a fixed interval. Since the load on the network increases as the probe packet size increases, it is desirable to make the size as small as possible.
- the probe transmitter 2 inserts (adds) the transmission time of the probe packet into the payload of the probe packet to be transmitted.
- the stream receiving unit 3 receives a stream.
- the stream receiving unit 3 receives the video stream transmitted from the stream transmitting unit 1 and analyzes the RTP packet. Thereafter, the stream receiving unit 3 displays the video on a display (not shown) connected to the computer by decoding the received video stream based on a predetermined video codec.
- the timing estimation unit 4 estimates the transmission timing of the stream based on the time when the probe packet transmitted from the probe transmission unit 2 is received and the transmission time included in the probe packet.
- the relay devices 5a and 5b are router devices or the like that relay streams and probe packets.
- the relay devices 5a and 5b are connected by a WAN (Wide Area Network) such as the Internet.
- WAN Wide Area Network
- the stream transmitting device 10 and the relay device 5a, or the stream receiving device 20 and the relay device 5b are connected by a LAN (Local Area Network).
- Both the stream transmission unit 1 and the probe transmission unit 2 may be mounted in the same device, or may be individual devices. Both the stream receiver 3 and the timing estimator 4 may be mounted in the same device, or may be individual devices.
- the stream transmission device 10 and the stream reception device 20 may include the following devices. That is, an input device such as a keyboard and a touch panel, an output device such as a display, a communication control device such as a communication interface with other devices, and a storage device as a work area or a data storage location (all not shown) .
- the stream transmission unit 1, the probe transmission unit 2, the stream reception unit 3, and the timing estimation unit 4 illustrated in FIG. 1 can be regarded as programs expressed in units of functional blocks. These programs are stored in a CPU (Central Processing Unit) of a computer (not shown), a ROM (Read Only Memory) (not shown), a RAM (Random Access Memory) (not shown), and the like. These functions are executed by a CPU (not shown) appropriately processing these programs. Each unit described above may be configured by dedicated hardware such as an electronic circuit. (Operation of communication system) Next, the operation of the communication system 100 according to the first embodiment of the present invention will be described.
- the operation of the stream transmission unit 1 and the stream reception unit 3 will be described with reference to the sequence diagram shown in FIG.
- the time at which the stream transmission unit 1 completes the stream transmission preparation is set to 0.
- the stream transmission unit transmits the first packet constituting the video stream to the stream reception unit 3 at time b (hereinafter referred to as “initial transmission time b”).
- the stream transmitting unit 1 may transmit a plurality of packets. When a plurality of packets are transmitted, they may be transmitted without leaving a packet interval or may be transmitted with an interval.
- the stream transmission unit 1 stops transmission for a while.
- the time until the stream transmission unit 1 starts transmitting a packet storing data constituting a video frame and starts transmitting a packet storing data constituting the next video frame is referred to as “time interval a”.
- the stream transmission unit 1 transmits the packet of the next video frame at time (a + b) obtained by adding the time interval a to the initial transmission time b.
- the packet is transmitted again at time (2a + b), and the transmission of the packet is stopped for a while.
- the stream transmission unit 1 starts sending packets at time (ai + b), but then temporarily stops sending packets.
- i is an integer of 0 or more. In other words, there is a certain cycle in packet transmission of the stream transmission unit 1.
- the probe transmission unit 2 transmits a plurality of probe packets toward the timing estimation unit 4.
- the probe packet transmission interval may be, for example, a method of transmitting at a constant interval, but is not limited thereto.
- step S102 the timing estimation unit 4 receives the probe packet transmitted by the probe transmission unit 2.
- step S103 the timing estimation unit 4 calculates a delay time based on the reception time of each probe packet and the transmission time included in each probe packet. Further, the timing estimation unit 4 estimates the timing at which the stream transmission unit 1 transmits a stream, that is, the above-described streaming transmission time interval a and initial transmission time b from the delay time.
- step S104 the timing estimation unit 4 transmits the estimated timing (time interval a, initial transmission time b) to the probe transmission unit 2.
- step S105 the probe transmission unit 2 receives the estimated timing transmitted by the timing estimation unit 4. Thereby, the operation
- a solid line arrow represents a video packet
- a broken line arrow represents a probe packet.
- p1 to p7 are probe packet identifiers.
- the solid line shown in the direction extending downward in the figure represents time (t).
- the video packet and the probe packet are buffered as a queue in a temporary storage unit (not shown) provided in the relay apparatus 5a. Thereafter, when the transmission of the previous data is completed in the network (WAN) between the relay apparatuses 5a and 5b, the next data is transmitted to the WAN in the order of arrival at the relay apparatus 5a. Therefore, if the speed at which the video packet arrives at the relay device 5a is larger than the WAN link speed, the delay increases in both the video packet and the probe packet. For example, in FIG.
- the timing at which the probe packet p2 arrives at the relay device 5b from the relay device 5a is delayed due to the transmission of the video packet.
- the timing at which the relay device 5a arrives at the relay device 5b is delayed due to the transmission of more video packets.
- the timing estimation unit 4 estimates the transmission timing of the video packet from the delay of the probe packet.
- a graph showing the relationship between the transmission time of each probe packet and the delay time is shown in FIG.
- the horizontal axis represents time (t)
- the vertical axis represents delay time.
- P1 to p7 shown on the horizontal axis represent probe packet identifiers shown in FIG.
- rectangular regions q1 and q2 shown along the time axis shown on the horizontal axis represent the time (period) during which the video packet is transmitted.
- the delay time of the probe packet increases when the transmission of the video packet is started and decreases when the transmission of the video packet is stopped.
- the timing estimation unit 4 detects the timing at which the delay rises, and determines that timing as an estimated value of the transmission start time of the video packet (see the initial transmission time b shown in FIG. 2).
- the transmission of the video packet is started at a time between p1 and p2, that is, there is an initial transmission time b.
- video packets are sent at a constant cycle at a time interval a (1 / fps) after the initial transmission time b. For this reason, it can be predicted that the increase in the delay time of the probe packet described above periodically occurs with the time interval a of the video packet.
- the time interval a is estimated by obtaining a value that maximizes the autocorrelation with respect to the time series data of the delay time. For example, when the time interval a for transmitting a video packet is 100 milliseconds (10 fps), if the probe packet transmission interval is 1 millisecond, a rise in delay occurs every 100 probe packets. That is, the delay times of p1, p2, p3,... In FIG. 5 and the delay times of p101, p102, p103 (not shown),.
- the autocorrelation function is a function that represents the similarity of graph shapes when time series data is shifted point by point. Therefore, in the above example, the autocorrelation is maximized when the point is shifted by 100 points.
- the point at which the autocorrelation is maximized is set as the estimated value of the time interval a.
- the autocorrelation is maximized at a time interval that is a multiple of 100 due to an error or the like, it is possible to make an erroneous determination.
- the timing estimation unit 4 1) shortens the probe packet transmission interval.
- a method of estimating from the slope of increase (or decrease) in the delay time That is, in the method 1), after specifying that transmission is started between the probe packets p1 and p2, the probe packet transmission interval between them is shortened.
- the method 2) a linear equation connecting p2 and p3 is obtained, and the time when the delay becomes the same value as p1 in this equation is estimated as the transmission time of the video packet.
- the timing estimation unit 4 recognizes a change in the amount of background traffic, The transmission timing is estimated using the delay time change. Thereby, the transmission timing of the stream can be estimated with high accuracy.
- the communication system using video packets as data packets has been described as an example.
- the application regularly transmits packets
- the data packet used by the communication system is not limited to a video packet.
- the present invention can be applied to a system that transmits observation data from a sensor to a server at regular intervals.
- the communication system 200 according to the second embodiment includes a stream transmission device 10, a stream reception device 20a, and relay devices 5a and 5b.
- the stream reception device 20 a includes a stream reception unit 3 and a timing estimation unit 14.
- the timing estimation unit 14 estimates the transmission timing of the video packet using the probe packet sequence for estimating the available bandwidth. Since other configurations are the same as those of the first embodiment, description thereof is omitted.
- Fig. 7 shows a graph of a general probe packet sequence used for estimating available bandwidth.
- the horizontal axis indicates the time when the probe packet is transmitted, and the vertical axis indicates the size of the probe packet.
- s1 to sn represent probe packet identifiers. Probe packet s1 to sn are transmitted while the probe packet transmission interval is constant and the size is gradually increased (this means that the bit rate of the probe packet gradually increases in time series). When the bit rate exceeds the usable bandwidth of the network, the probe packet is temporarily stored in the queue (storage area: not shown) of the relay device 5a, so that the packet delay time gradually increases.
- the timing estimation unit 14 uses this property to estimate the available bandwidth based on a probe packet having a size at which the delay time has started to increase.
- the probe packet size may be determined depending on the queue size. Further, the size of each probe packet and the transmission interval may be set so that detection is possible at the time of transmission of the video packet in consideration of the size of the video packet. For example, when the size of the video packet whose transmission timing is to be estimated is small, the size of the probe packet may be set so that the total size of the probe packet and the video packet exceeds the size of the queue.
- a linear graph showing the relationship between the size (horizontal axis) of probe packets s1 to sn and the delay time (vertical axis) shown in FIG. 7 is theoretically directly proportional (not shown).
- the relationship between the size of the probe packets s1 to sn and the delay time rises slowly with a gentle slope for a while from the start of probe packet transmission, but suddenly increases from a certain point in time. Become. This is probably because the probe packet size exceeds the available bandwidth at that time.
- the delay gradient increases with the probe packet size sx (x is an arbitrary integer) as a boundary. Therefore, the timing estimation unit 14 uses the value obtained by the following equation (1) as the estimated value of the usable bandwidth (the unit is bps (bits per second)). “/” Represents division.
- the timing estimation unit 14 calculates the theoretical value of the delay time for each packet having a probe packet size larger than sx in consideration of the available bandwidth estimation value obtained by Expression (1). For example, the delay time of a packet exceeding the available bandwidth estimation value (stored in the queue) may be added to the delay time.
- a curve obtained based on the probe packet size (delay time) until reaching the usable bandwidth and the theoretical value of the delay time after reaching the usable bandwidth is called an ideal curve.
- the delay of the probe packet is predicted to be along this ideal curve.
- FIG. 9 is a graph showing an example of the relationship between the probe packet size (horizontal axis) and the delay time (vertical axis) when transmission of a video stream is started during probe packet transmission.
- the timing estimation unit 14 transmits a probe packet having a size sx at the first time point (a place deviating from the ideal curve) when the slope of the delay time of the probe packet is significantly larger than the ideal curve, for example, in FIG.
- the time is estimated as the time when transmission of the video stream is started.
- the time at which the probe packet is transmitted may be any on the ideal curve, and when the video stream is transmitted (in general, the video stream requires a large amount of packet transmission), the video is transmitted. Similarly, the value indicating the probe packet size transmitted immediately after the stream transmission time (the circle on the ideal curve shown in FIG. 9) deviates from the ideal curve. By observing this divergence state, the transmission time of the video stream is estimated.
- the transmission timing of the video stream can be estimated. This eliminates the need to continue transmitting timing estimation packets used in the first embodiment. As a result, the amount of data flowing through the network can be reduced.
- a stream receiving device 20b according to the third embodiment of the present invention will be described. As shown in FIG. 10, the stream receiving device 20b according to the third embodiment receives a probe packet in a network that transmits and receives data packets and probe packets, calculates a delay time of the probe packets, and calculates The transmission time of the data packet is estimated based on the delay time.
- the direction of the arrow in FIG. 10 shows an example, and does not limit the direction of the signal between blocks.
- the third embodiment of the present invention even when a large amount of data is transmitted regularly, it is possible to estimate the transmission timing of the stream by grasping the change in the amount of background traffic.
- each component of each device indicates a functional unit block. Part or all of each component of each device (system) is realized by an arbitrary combination of an information processing device 500 and a program as shown in FIG. 11, for example.
- the information processing apparatus 500 includes the following configuration as an example.
- CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- a program 504 loaded into the RAM 503
- a storage device 505 for storing the program 504
- a drive device 507 for reading / writing the recording medium 506
- Communication interface 508 connected to the network 509
- An input / output interface 510 for inputting / outputting data -Bus 511 connecting each component
- Each component of each device in each embodiment is realized by the CPU 501 acquiring and executing a program 504 that realizes these functions.
- the program 504 that realizes the function of each component of each device is stored in advance in the storage device 505 or the RAM 503, for example, and is read by the CPU 501 as necessary.
- the program 504 may be supplied to the CPU 501 via the network 509 or may be stored in the recording medium 506 in advance, and the drive device 507 may read the program and supply it to the CPU 501.
- each device may be realized by an arbitrary combination of the information processing device 500 and a program that are separately provided for each component.
- a plurality of constituent elements included in each device may be realized by an arbitrary combination of one information processing device 500 and a program.
- each device is realized by other general-purpose or dedicated circuit boards, processors, etc., or combinations thereof. These may be constituted by a single chip cage or may be constituted by a plurality of chip cages connected via a bus.
- each device may be realized by a combination of the above-described circuit and the like and a program.
- the plurality of information processing devices and circuits may be centrally arranged or distributedly arranged. Also good.
- the information processing apparatus, the circuit, and the like may be realized as a form in which each of them is connected via a network, such as a client and server system and a cloud computing system.
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
[課題]ストリームの送信タイミングを高精度に推定するストリーム受信装置等を提供する。 [解決手段]ストリーム受信装置10bは、データパケットおよびプローブパケットを送信するネットワークにおいて、プローブパケットを受信して、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する。
Description
本発明は、通信ネットワーク(以下、本願では「ネットワーク」と記載)において伝送されるデータパケット、特に映像等のように、ある期間に亘って連続的に伝送されるストリーミングパケットの送信タイミングを推定する技術に関する。
品質非保証のネットワークにおいて、背景トラフィックは、送信側装置におけるパケットの送信時刻と、受信側装置におけるそのパケットの受信時刻との差に生じる遅延時間の程度によって知ることが出来る。即ち、背景トラフィックが増大している際は、遅延時間は長くなる。尚、受信側装置においては、パケットの受信時刻は容易に知ることが出来るが、パケットの送信時刻については推定する必要がある。
一方で、ネットワークにおいては、背景トラフィックを考慮しながら、ネットワーク帯域を可能な限り使用し、乱れや途切れのない映像ストリーミングを実現することが重要である。これには、そのネットワークにおける、パケット通信用に利用可能なネットワーク帯域(以下、本願では「可用帯域」と記載)を検出する必要がある。
パケット通信網で接続された複数の端末間において、パケット通信用に利用可能な可用帯域を推定する技術がある。この技術では、プローブパケットを送信することにより、推定対象であるネットワークの可用帯域を推定する。
一方で、ネットワークにおいては、背景トラフィックを考慮しながら、ネットワーク帯域を可能な限り使用し、乱れや途切れのない映像ストリーミングを実現することが重要である。これには、そのネットワークにおける、パケット通信用に利用可能なネットワーク帯域(以下、本願では「可用帯域」と記載)を検出する必要がある。
パケット通信網で接続された複数の端末間において、パケット通信用に利用可能な可用帯域を推定する技術がある。この技術では、プローブパケットを送信することにより、推定対象であるネットワークの可用帯域を推定する。
特許文献1は、一定の間隔でサイズを徐々に大きくしていくパケット列を送信し、何番目のパケットで遅延時間が大きくなるかを基に可用帯域を推定する技術を開示する。
特許文献2は、ネットワークに流れるトラフィック種別が映像であるか音声であるかを表す情報から、ネットワーク負荷と遅延との関係を表すモデルを構築し、実際に送信したプローブパケットの遅延状態の分布を基に、可用帯域を推定する技術を開示する。
特許文献3は、ネットワーク間でプローブパケットを送受信し、その結果から往復遅延およびジッタを測定し、測定結果を基にストリーミングパケット(以下、本願では「ストリーム」と記載)のバッファリング時間を決定する技術を開示する。
特許文献4は、VoIP(Voice over Internet Protocol)通信中にネットワークにおけるストリーミングパケットの片道遅延を求めるための技術を開示する。
この他、プローブパケットを用いた測定に関連する技術として特許文献5がある。
非特許文献1は、一定サイズのパケット送信間隔を徐々に狭めていき、何番目のパケットから受信間隔が送信間隔を上回るかを基に、可用帯域を推定する技術を開示する。
Vinay Ribeiro, Rudolf Riedi, Richard Baraniuk, Jiri Navratil and Les Cottrell, "PathChirp:Efficient Available Bandwidth Estimation for Network Paths,", In PAM 2003, 4th Passive and Active Measurement Workshop (6 April 2002).
特許文献1および非特許文献1の技術は、背景トラフィックが映像のように間欠的に送信される場合に、可用帯域を正確に推定する技術は開示していない。これらの技術は、一つのパケット列の送信中には可用帯域が変動しないことを前提としている。よって、途中で背景トラフィックが増減し、変動する可用帯域においてはストリームの送信のタイミングを正確に推定できない。
特許文献2の技術は、インターネットやモバイルネットワーク等のネットワークでは利用できない。即ち、特許文献2の技術は、対象とするネットワークの物理帯域に関する情報が必要であるのに対して、インターネットは、管理主体が異なるネットワークの集合であるので、一般的に物理帯域の情報は知ることができない。また、モバイルネットワークは、基地局と端末間の無線品質に応じて物理帯域は頻繁に変化するので、モバイルネットワークにおいても物理帯域に関する情報を使用するのは困難である。
特許文献3の技術は、送信装置から受信装置へのストリーミングにおいて、事前に受信装置から送信装置へプローブパケットを送信して往復遅延およびジッタを測定する。そして特許文献3の技術は、ジッタの吸収とパケットロスの再送が可能になるようにストリームのバッファリング時間を決定する。しかしながら、特許文献3の技術では、プローブパケットによる遅延の測定は、事前(ストリーム送信開始前)に行うので、ストリーム送信中にデータ(パケット)送信のタイミングを推定することができない。
特許文献4の技術では、送信側音声通信装置は、送信する音声が無音のときに音声の代わりに時刻情報を送信し、受信側音声通信装置は、受信したパケットの時刻情報をもとに片道分の遅延時間を算出する。しかしながら、特許文献4の技術は、送信するパケットに格納する情報を変更する技術であり、データ送信タイミングを推定することはできない。
本発明は、上記の問題点を解決するべくなされた。本発明は、定期的に多くのデータが送信される場合であっても、ストリームの送信タイミングを高精度に推定することを主たる目的とする。
上記課題を解決するため、本発明の第1の観点は、
データパケットおよびプローブパケットを送信するネットワークにおいて、プローブパケットを受信して、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する、ストリーム受信装置である。
データパケットおよびプローブパケットを送信するネットワークにおいて、プローブパケットを受信して、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する、ストリーム受信装置である。
本発明の第2の観点は、
上記に記載のストリーム受信装置と、
データパケットおよびプローブパケットを送信するストリーム送信装置とを備え、
ストリーム受信装置とストリーム送信装置とは、ネットワークを介して通信可能に接続される、
通信システムである。
上記に記載のストリーム受信装置と、
データパケットおよびプローブパケットを送信するストリーム送信装置とを備え、
ストリーム受信装置とストリーム送信装置とは、ネットワークを介して通信可能に接続される、
通信システムである。
本発明の第3の観点は、
データパケットおよびプローブパケットを送信するネットワークにおいて、プローブパケットを受信し、
プローブパケットの遅延時間を算出し、
算出された遅延時間を基に、データパケットの送信時刻を推定する、
推定方法である。
データパケットおよびプローブパケットを送信するネットワークにおいて、プローブパケットを受信し、
プローブパケットの遅延時間を算出し、
算出された遅延時間を基に、データパケットの送信時刻を推定する、
推定方法である。
本発明の第4の観点は、
データパケットおよびプローブパケットを送信するネットワークにおいて
プローブパケットを受信し、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する方法、をコンピュータに実行させるプログラムを格納する記録媒体である。
データパケットおよびプローブパケットを送信するネットワークにおいて
プローブパケットを受信し、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する方法、をコンピュータに実行させるプログラムを格納する記録媒体である。
本発明によれば、定期的に多くのデータが送信される場合であっても、ストリームの送信タイミングを高精度に推定することができる。
次に図面を参照して、本発明の実施形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は本発明の実施形態における構成を模式的に表している。更に以下に記載される本発明の実施形態は一例であり、その本質を同一とする範囲において適宜変更可能である。
<第一の実施形態>
(通信システム)
本発明の第1の実施形態に係る通信システム100の構成について説明する。図1に示すように、通信システム100は、ストリーム送信装置10、ストリーム受信装置20および中継装置5a、5bを備える。ストリーム送信装置10は、ストリーム送信部1およびプローブ送信部2を備える。ストリーム受信装置20は、ストリーム受信部3およびタイミング推定部4を備える。
(通信システム)
本発明の第1の実施形態に係る通信システム100の構成について説明する。図1に示すように、通信システム100は、ストリーム送信装置10、ストリーム受信装置20および中継装置5a、5bを備える。ストリーム送信装置10は、ストリーム送信部1およびプローブ送信部2を備える。ストリーム受信装置20は、ストリーム受信部3およびタイミング推定部4を備える。
ストリーム送信部1およびプローブ送信部2は、中継装置5aと通信可能に接続している。ストリーム受信部3とタイミング推定部4は、中継装置5bと通信可能に接続している。また中継装置5aと中継装置5bとの間も接続されている。ストリーム送信部1が送信したストリームは、中継装置5aと5bを介して、ストリーム受信部3へ送られる。プローブ送信部2が送信したプローブパケットも、中継装置5aと5bを介して、タイミング推定部4へ送信される。
ストリーム送信部1は、ストリームを送信する。ストリーム送信部1は、コンピュータ(不図示)に接続されたカメラ(不図示)等によって撮影された映像を、H.264等のコーデックでエンコードし、RTP(Real-time Transport Protocol)ヘッダを付加してRTPパケットを作成する。そしてストリーム送信部1は、作成したRTPパケットを、ストリーム受信部3へ向けて送信する。映像ストリームは、動画のもとになる静止画像の1コマ(以下、「フレーム」と記載)が複数枚集まって構成される。このフレームは、連続して表示されることにより、ユーザにとって動きのある映像が実現される。
ライブ映像を配信する場合等、ストリーム受信部3で映像が表示されるまでの待ち時間を短くしたい場合には、フレーム単位で送信処理が行われる。すなわち、ストリーム送信部1は、カメラから1フレーム分のデータを取得したら、取得したフレームをエンコードして送信する処理をフレーム毎に繰り返す。毎秒この処理が施されて送信されるフレームの数をfps(frames per second)とした場合、この処理は1/fps(=a)間隔で行われ、フレームは、この時間間隔(a)で送信される(図2参照)。このとき、各フレームのデータサイズは、図2にも概念的に示すように、ビットレートの設定値、フレームの種別、前後のフレームからの差分の大きさ等によって変化し、フレームが複数のパケットに分かれて送信される場合もある。
プローブ送信部2は、ストリームの送信タイミングを推定するためのプローブ(試験)パケットを送信する。プローブ送信部2は、例えば一定な時間間隔で一定サイズのプローブパケットをタイミング推定部4へ送信する。プローブパケットの送信間隔として、例えば1ミリ秒間隔としてもよいが、これに限定されるものではない。送信間隔を小さくするほど、プローブパケットのデータ量は大きくなり、タイミング推定の精度は向上する。そのため、タイミング推定部4は、要求される精度に応じて、送信間隔を変えてもよい。タイミング推定の精度を向上させるためには、プローブパケットの送信間隔は一定間隔とするのが望ましいが、一定間隔でなくてもよい。プローブパケットのサイズが、大きくなるほどネットワークの負荷が増大するため、そのサイズをできる限り小さくすることが望ましい。また、プローブ送信部2は、送信するプローブパケットのペイロードにプローブパケットの送信時刻を挿入(追加)する。
ストリーム受信装置20側において、ストリーム受信部3は、ストリームを受信する。ストリーム受信部3は、ストリーム送信部1から送信された映像ストリームを受信し、RTPパケットの解析等を行う。この後、ストリーム受信部3は、受信した映像ストリームを、所定の映像コーデックを基にデコードすることにより、コンピュータに接続されたディスプレイ(不図示)に映像を表示する。
タイミング推定部4は、プローブ送信部2から送信されたプローブパケットを受信する時刻およびプローブパケットに含まれる送信時刻を基に、ストリームの送信タイミングを推定する。
中継装置5a、5bは、ストリームおよびプローブパケットの中継を行うルータ装置等である。中継装置5a、5bの間はインターネット等のWAN(Wide Area Network)で接続されている。これに対して、ストリーム送信装置10と中継装置5aとの間、またはストリーム受信装置20と中継装置5bとの間は、LAN(Local Area Network)によって接続されている。
尚、本実施形態の構成は一例であり、これに限定されるものではない。
ストリーム送信部1とプローブ送信部2とは、同一機器内に双方が搭載されていてもよく、個々の機器でもよい。ストリーム受信部3とタイミング推定部4とは、同一機器内に双方が搭載されていてもよく、個々の機器でもよい。
尚、上述した通信システム100において、ストリーム送信装置10およびストリーム受信装置20は、以下の装置を備えていても良い。即ち、キーボード、タッチパネル等の入力装置、ディスプレイ等の出力装置、他装置との通信インターフェース等の通信制御装置、および、作業領域やデータの保存場所としての記憶装置等である(いずれも不図示)。
図1に示すストリーム送信部1、プローブ送信部2、ストリーム受信部3およびタイミング推定部4は、機能ブロック単位で表されたプログラムと捉えることができる。そしてこれらのプログラムは、図示しないコンピュータのCPU(Central Processing Unit)、図示しないROM(Read Only Memory)や図示しないRAM(Random Access Memory)などに格納されている。図示しないCPUがこれらのプログラムを適宜演算処理することでこれらの機能は実行される。尚、上述した各部は、電子回路等の専用のハードウェアで構成されていてもよい。
(通信システムの動作)
次に、本発明の第1の実施形態における通信システム100の動作を説明する。
(通信システムの動作)
次に、本発明の第1の実施形態における通信システム100の動作を説明する。
ストリーム送信部1およびストリーム受信部3の動作を図2に示すシーケンス図を用いて説明する。図中、ストリーム送信部1がストリームの送信準備を完了した時刻を0とする。ストリーム送信部は時刻b(以下、「初回送出時刻b」と記載する)に、映像ストリームを構成する最初のパケットをストリーム受信部3へ送出する。このときストリーム送信部1が送信するパケット数は複数であってもよい。複数のパケットを送信する場合、パケット間隔を空けずに送信してもよく、間隔を空けて送信してもよい。
初回送出時刻bから所定時刻までの間に送信すべきパケットの送信が完了すると、ストリーム送信部1は、暫くの間送信を停止する。ストリーム送信部1が、ある映像フレームを構成するデータを格納したパケットの送信を開始し、次の映像フレームを構成するデータを格納したパケットの送信を開始するまでの間を「時間間隔a」と仮定する。この場合に、ストリーム送信部1は、次の映像フレームのパケットを、初回送出時刻bに時間間隔aを加えた、時刻(a+b)に送信する。次に時刻(2a+b)で再度パケットを送信し、暫くの間、パケットの送信を停止する。このようにストリーム送信部1は、時刻(ai+b)でパケットの送出を開始するが、その後、一旦、パケットの送信を停止する。尚、iは0以上の整数である。即ち、ストリーム送信部1のパケットの送信には、一定の周期がある。
次に、プローブ送信部2およびタイミング推定部4の動作を図3に示すフローチャートを用いて説明する。
ステップS101において、プローブ送信部2は、タイミング推定部4に向けて複数のプローブパケットを送信する。プローブパケットの送信間隔は、例えば一定間隔で送信する方法が考えられるが、これに限定されるものではない。
ステップS102において、タイミング推定部4は、プローブ送信部2が送信したプローブパケットを受信する。
ステップS103において、タイミング推定部4は、各プローブパケットの受信時刻および各プローブパケットが含む送信時刻を基に、遅延時間を算出する。更にタイミング推定部4は、遅延時間から、ストリーム送信部1がストリームを送信するタイミング、すなわち、前述したストリーミング送信の時間間隔aおよび初回送出時刻bを推定する。
ステップS104において、タイミング推定部4は、推定したタイミング(時間間隔a、初回送出時刻b)を、プローブ送信部2に対して送信する。
ステップS105において、プローブ送信部2は、タイミング推定部4が送信した、推定されたタイミングを受信する。これにより、プローブ送信部2およびタイミング推定部4における動作を終了する。
次に、ステップS103で説明した、ストリーム送信部1から送信される映像パケットとプローブ送信部2から送信されるプローブパケットとの遅延時間について説明する。映像パケットとプローブパケットとの遅延状態を図4のグラフに示す。図中の実線の矢印が映像パケット、破線の矢印がプローブパケットを表す。p1からp7はプローブパケットの識別子である。又図中に下向きに伸びる方向に示した実線は時刻(t)を表す。
中継装置5a、5b間のWANのリンク速度がLANに比べて遅い場合、先ず、映像パケットおよびプローブパケットは、中継装置5aが備える一時記憶部(不図示)にキューとしてバッファリングされる。その後、中継装置5a、5b間のネットワーク(WAN)において直前のデータの送信が完了すると、次のデータは、中継装置5aに到着した順にWANに送信される。そのため、中継装置5aに映像パケットが到着する速度がWANのリンク速度に比べて大きいと、映像パケットおよびプローブパケットの両方に遅延が増加することになる。例えば、図4において、プローブパケットp2は、映像パケットの送信により、中継装置5aから中継装置5bに辿り着くタイミングは遅れている。プローブパケットp3においては、より多くの映像パケットの送信により、中継装置5aから中継装置5bに辿り着くタイミングはより遅れている。
そこで、タイミング推定部4は、このプローブパケットの遅延から映像パケットの送信タイミングを推定する。各プローブパケットの送信時刻と遅延時間の関係を表すグラフを図5に示す。同図のグラフ中、横軸は時刻(t)を、縦軸は遅延時間を表す。横軸に示すp1からp7は、図4で示されたプローブパケットの識別子を表している。また、横軸に示す時刻軸に沿って示されている矩形領域q1およびq2は、映像パケットが送信されている時間(期間)を表している。図5が示すグラフによれば、プローブパケットの遅延時間は、映像パケットの送信が開始されると増加し、映像パケットの送信がなくなると減少することが分かる。このことから、タイミング推定部4は、遅延が立ち上がるタイミングを検出し、そのタイミングを映像パケットの送信開始時刻(図2に示す初回送出時刻b参照)の推定値と判断する。図5のグラフでは、p1とp2との間の時刻で映像パケットの送信が開始されている、即ち、初回送出時刻bが存在する。
また、中継装置5a、5b間において、映像パケットは図2や図4に示すように、初回送出時刻bの後に時間間隔a(1/fps)にて一定周期で送られる。このため、上述したプローブパケットの遅延時間の増加が映像パケットの時間間隔aに伴い、定期的に発生することを予測することができる。
具体的には、時間間隔aは、遅延時間の時系列データに対して、自己相関が最大となる値を求めることで推定する。例えば、映像パケットを送信する時間間隔aが100ミリ秒(10fps)の場合、プローブパケットの送信間隔を1ミリ秒とすると、遅延の立ち上がりがプローブパケット100個おきに発生する。すなわち、図5のp1、p2、p3、…の遅延時間と、p101、p102、p103(図示せず)、…の遅延時間のグラフとは非常に近い形になる。自己相関関数は、時系列データを1点ずつずらしていった場合のグラフの形の類似性を表す関数である。そのため、上記の例では、100点ずらした場合の自己相関が最大となるので、自己相関が最大となる点を時間間隔aの推定値とする。ただし、誤差等で100の倍数の時間間隔で自己相関が最大となり誤判定することが考えられるので、自己相関が規定値以上となるものの中で最小のずらし幅のものを推定値としてもよい。
図5に示されるプローブパケットp1とp2との間で、映像パケットの送信(送出)が開始された時刻をより正確に推定する場合、タイミング推定部4は、1)プローブパケットの送信間隔を短くする方法、あるいは、2)遅延時間の増加(又は減少)の傾きから推定する方法を実行する。即ち、1)の方法では、プローブパケットp1とp2との間で送信が開始されていることを特定した後、この間のプローブパケット送信間隔を短縮する。2)の方法では、p2とp3を結ぶ直線の方程式を求め、この方程式で遅延がp1と同値になる時刻を映像パケットの送信時刻と推定する。
以上説明したように、本発明の第1の実施形態においては、定期的に多くのデータが送信される場合であっても、タイミング推定部4が背景トラフィック量の変化を把握し、プローブパケットの遅延時間変化を用いて送信タイミングを推定する。これにより、ストリームの送信タイミングを高精度に推定することができる。
本実施形態では、データパケットに映像パケットを使用する通信システムを例として説明した。しかし、定期的にパケットを送信するアプリケーションであれば、通信システムが使用するデータパケットは、映像パケットに限定されない。例えば、センサから一定間隔でサーバに観測データを送信するシステムにも適用することが可能である。
本実施形態では、プローブパケットを一定間隔で送信し続ける方法を記載したが、プローブパケットの遅延時間が立ち上がる時刻を特定できれば、一定間隔で送信し続けなくともストリームの送信タイミングを推定することは可能である。第2の実施形態においてはプローブパケットの遅延時間が立ち上がる時刻を用いて、ストリームの送信タイミングを推定する技術について説明する。
<第2の実施形態>
(通信システム)
本発明の第2の実施形態に係る通信システム200について説明する。図6に示すように、第2の実施形態に係る通信システム200は、ストリーム送信装置10、ストリーム受信装置20aおよび中継装置5a、5bを備える。ストリーム受信装置20aは、ストリーム受信部3およびタイミング推定部14を備える。タイミング推定部14は、可用帯域推定のためのプローブパケット列を用いて映像パケットの送信タイミングを推定する。その他の構成については第1の実施形態と同様であるため説明を省略する。
(通信システム)
本発明の第2の実施形態に係る通信システム200について説明する。図6に示すように、第2の実施形態に係る通信システム200は、ストリーム送信装置10、ストリーム受信装置20aおよび中継装置5a、5bを備える。ストリーム受信装置20aは、ストリーム受信部3およびタイミング推定部14を備える。タイミング推定部14は、可用帯域推定のためのプローブパケット列を用いて映像パケットの送信タイミングを推定する。その他の構成については第1の実施形態と同様であるため説明を省略する。
可用帯域推定に使用する一般的なプローブパケット列のグラフを図7に示す。図中の横軸はプローブパケットを送信した時刻、縦軸はプローブパケットのサイズを示している。図中のs1からsnは、プローブパケットの識別子を表している。プローブパケットの送信間隔を一定とし、サイズを徐々に増加させてプローブパケットs1~snを送信する(これは時系列に沿ってプローブパケットのビットレートが徐々に増加していくことを意味する)。ビットレートがネットワークの可用帯域を上回ると、プローブパケットが中継装置5aのキュー(記憶領域:不図示)に一時記憶されるので、パケットの遅延時間が徐々に増加する。タイミング推定部14は、この性質を利用し、遅延時間が増加し始めたサイズのプローブパケットを基に可用帯域を推定する。尚、プローブパケットのサイズはキューのサイズに依存して決定されてもよい。更に、各プローブパケットのサイズおよび送信間隔は映像パケットのサイズを考慮し、映像パケットの送信時に検出が可能な様に設定されてもよい。仮に、例えば、送信タイミングを推定すべき映像パケットのサイズが小さい場合は、プローブパケットおよび映像パケットの合計サイズがキューのサイズを越えるようにプローブパケットのサイズを設定しても良い。
映像トラフィックがない場合、図7に示すプローブパケットs1~snのサイズ(横軸)と遅延時間(縦軸)の関係を示す直線グラフは理論上正比例する(不図示)。しかしながら、計測すると、プローブパケットs1~snのサイズと遅延時間の関係は、プローブパケット送信開始時から暫くの間は緩やかな傾きで右肩上がりに上昇するが、ある一定の時点から急は傾きとなる。これは当該時点においてプローブパケットサイズが可用帯域を上回ったためと考えられる。例えば、図8を参照すると、プローブパケットサイズsx(xは任意の整数)を境に、遅延の傾きが増加している。よって、タイミング推定部14は、以下の式(1)で得られる値を可用帯域の推定値(単位はbps(bits per second))とする。「/」は除算を表す。
(sx[バイト]×8[ビット/バイト])/(プローブパケット送信間隔[秒])・・・式(1)
タイミング推定部14は、式(1)で求めた可用帯域推定値を考慮して、プローブパケットサイズがsxより大きな各パケットに対する遅延時間の理論値を算出する。例えば、可用帯域推定値を越えた(キューに格納された)パケットの遅延時間を遅延時間に加算してもよい。可用帯域に達するまでのプローブパケットサイズ(遅延時間)および可用帯域に達した後の遅延時間理論値を基に得られる曲線を、理想曲線と呼ぶ。ネットワークにおけるパケットの送受信(背景トラフィック)が一定の場合は、プローブパケットの遅延はこの理想曲線上に沿うと予測される。
タイミング推定部14は、式(1)で求めた可用帯域推定値を考慮して、プローブパケットサイズがsxより大きな各パケットに対する遅延時間の理論値を算出する。例えば、可用帯域推定値を越えた(キューに格納された)パケットの遅延時間を遅延時間に加算してもよい。可用帯域に達するまでのプローブパケットサイズ(遅延時間)および可用帯域に達した後の遅延時間理論値を基に得られる曲線を、理想曲線と呼ぶ。ネットワークにおけるパケットの送受信(背景トラフィック)が一定の場合は、プローブパケットの遅延はこの理想曲線上に沿うと予測される。
プローブパケット送信中に、映像ストリームの送信が開始された場合の、プローブパケットのサイズ(横軸)と遅延時間(縦軸)との関係の一例を表すグラフを図9に示す。サイズsxのプローブパケット送信時に映像ストリームの送信が開始された場合、映像トラフィックの影響で可用帯域が低下する。これにより、プローブパケットの遅延時間の傾きは、理想曲線より大きくなる。そこで、タイミング推定部14は、プローブパケットの遅延時間の傾きが理想曲線よりも大幅に大きくなる最初の時点(理想曲線から乖離した場所)、例えば図9においてはサイズsxのプローブパケットが送信された時刻を、映像ストリームの送信が開始された時刻と推定する。尚、プローブパケットが送信された時刻は、理想曲線上の何れであってもよく、映像ストリームが送信されると(一般的に映像ストリームには膨大なパケット送信を必要とするため)、その映像ストリームの送信時刻直後に送信されたプローブパケットサイズを示す値(図9に示す理想曲線上の丸点)は、同様に理想曲線から乖離する。この乖離状態を観察することで、映像ストリームの送信時刻を推定する。
本発明の第2の実施形態においては、第1の実施形態の効果に加え、ネットワークトラフィックにより遅延が発生する場合であっても、遅延時間の理想曲線を生成し、当該理想曲線からの乖離状態を観察して映像ストリームの送信タイミングを推定することができる。これにより、第1の実施形態にて用いられたタイミング推定用のパケットを送信しつづける必要がなくなる。ひいては、ネットワークに流れるデータ量を削減することができる。
<第3の実施形態>
(ストリーム受信装置)
本発明の第3の実施形態に係るストリーム受信装置20bについて説明する。図10に示すように、第3の実施形態に係るストリーム受信装置20bは、データパケットおよびプローブパケットを送受信するネットワークにおいて、プローブパケットを受信して、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する。尚、図10中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
(ストリーム受信装置)
本発明の第3の実施形態に係るストリーム受信装置20bについて説明する。図10に示すように、第3の実施形態に係るストリーム受信装置20bは、データパケットおよびプローブパケットを送受信するネットワークにおいて、プローブパケットを受信して、プローブパケットの遅延時間を算出し、算出された遅延時間を基に、データパケットの送信時刻を推定する。尚、図10中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
本発明の第3の実施形態によれば、定期的に多くのデータが送信される場合であっても、背景トラフィック量の変化を把握することで、ストリームの送信タイミングを推定することができる。
本発明の各実施形態において、各装置(システム)の各構成要素は、機能単位のブロックを示している。各装置(システム)の各構成要素の一部又は全部は、例えば図11に示すような情報処理装置500とプログラムとの任意の組み合わせにより実現される。情報処理装置500は、一例として、以下のような構成を含む。
・CPU(Central Processing Unit)501
・ROM(Read Only Memory)502
・RAM(Random Access Memory)503
・RAM503にロードされるプログラム504
・プログラム504を格納する記憶装置505
・記録媒体506の読み書きを行うドライブ装置507
・ネットワーク509と接続する通信インターフェース508
・データの入出力を行う入出力インターフェース510
・各構成要素を接続するバス511
各実施形態における各装置の各構成要素は、これらの機能を実現するプログラム504をCPU501が取得して実行することで実現される。各装置の各構成要素の機能を実現するプログラム504は、例えば、予め記憶装置505やRAM503に格納されており、必要に応じてCPU501が読み出す。なお、プログラム504は、ネットワーク509を介してCPU501に供給されてもよいし、予め記録媒体506に格納されており、ドライブ装置507が当該プログラムを読み出してCPU501に供給してもよい。
・ROM(Read Only Memory)502
・RAM(Random Access Memory)503
・RAM503にロードされるプログラム504
・プログラム504を格納する記憶装置505
・記録媒体506の読み書きを行うドライブ装置507
・ネットワーク509と接続する通信インターフェース508
・データの入出力を行う入出力インターフェース510
・各構成要素を接続するバス511
各実施形態における各装置の各構成要素は、これらの機能を実現するプログラム504をCPU501が取得して実行することで実現される。各装置の各構成要素の機能を実現するプログラム504は、例えば、予め記憶装置505やRAM503に格納されており、必要に応じてCPU501が読み出す。なお、プログラム504は、ネットワーク509を介してCPU501に供給されてもよいし、予め記録媒体506に格納されており、ドライブ装置507が当該プログラムを読み出してCPU501に供給してもよい。
各装置の実現方法には、様々な変形例がある。例えば、各装置は、構成要素毎にそれぞれ別個の情報処理装置500とプログラムとの任意の組み合わせにより実現されてもよい。また、各装置が備える複数の構成要素が、一つの情報処理装置500とプログラムとの任意の組み合わせにより実現されてもよい。
また、各装置の各構成要素の一部又は全部は、その他の汎用または専用の回路 、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップ によって構成されてもよいし、バスを介して接続される複数のチップ によって構成されてもよい。
各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
各装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々がネットワークを介して接続される形態として実現されてもよい。
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
この出願は2014年12月22日に出願された日本出願特願2014-259007を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1 ストリーム送信部
2 プローブ送信部
3 ストリーム受信部
4、14 タイミング推定部
5a 中継装置
5b 中継装置
10 ストリーム送信装置
20、20a、20b ストリーム受信装置
100 通信システム
200 通信システム
2 プローブ送信部
3 ストリーム受信部
4、14 タイミング推定部
5a 中継装置
5b 中継装置
10 ストリーム送信装置
20、20a、20b ストリーム受信装置
100 通信システム
200 通信システム
Claims (10)
- データパケットおよびプローブパケットを送信するネットワークにおいて、前記プローブパケットを受信して、前記プローブパケットの遅延時間を算出し、算出された前記遅延時間を基に、前記データパケットのストリームの送信時刻を推定する、
ストリーム受信装置。 - 前記プローブパケットは自身が送信された時刻に関する情報を含む、
請求項1に記載のストリーム受信装置。 - 前記プローブパケットの遅延時間が増加した時刻を、前記データパケットのストリームの送信時刻と推定する
請求項1又は2に記載のストリーム受信装置。 - 前記プローブパケットの内、先に送信する第1のプローブパケットの遅延時間に対して、前記第1のプローブパケットの後に送信する第2のプローブパケットの遅延時間の増加を基に、前記ストリームの送信間隔を推定する
請求項1乃至3のいずれかに記載のストリーム受信装置。 - 請求項1乃至4のいずれかに記載のストリーム受信装置と、
前記データパケットおよび前記プローブパケットを送信するストリーム送信装置
とを備え、
前記ストリーム受信装置と前記ストリーム送信装置は、前記ネットワークを介して通信可能に接続される、
通信システム。 - 前記ストリーム送信装置は、
前記データパケットを送信するストリーム送信手段と、
前記プローブパケットを送信するプローブ送信手段
とを備える請求項5に記載の通信システム。 - 前記プローブ送信手段は、前記プローブパケットを一定間隔で送信する
請求項5又は6に記載の通信システム。 - 前記プローブ送信手段は、先に送信する第1のプローブパケットのサイズと比して、前記第1のプローブパケットの後に送信する第2のプローブパケットのサイズを増加させて送信する
請求項5乃至7のいずれかに記載の通信システム。 - データパケットおよびプローブパケットを送信するネットワークにおいて、前記プローブパケットを受信し、
前記プローブパケットの遅延時間を算出し、
算出された前記遅延時間を基に、前記データパケットの送信時刻を推定する、
推定方法。 - データパケットおよびプローブパケットを送信するネットワークにおいて
前記プローブパケットを受信し、前記プローブパケットの遅延時間を算出し、算出された前記遅延時間を基に、前記データパケットの送信時刻を推定する方法、
をコンピュータに実行させる推定プログラムを格納する記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016565914A JPWO2016103674A1 (ja) | 2014-12-22 | 2015-12-22 | ストリーム受信装置、通信システム、ストリーム送信タイミング推定方法およびストリーム送信タイミング推定プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014259007 | 2014-12-22 | ||
JP2014-259007 | 2014-12-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016103674A1 true WO2016103674A1 (ja) | 2016-06-30 |
Family
ID=56149736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/006371 WO2016103674A1 (ja) | 2014-12-22 | 2015-12-22 | ストリーム受信装置、通信システム、ストリーム送信のタイミングを推定する方法および記録媒体 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2016103674A1 (ja) |
WO (1) | WO2016103674A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020532224A (ja) * | 2017-08-22 | 2020-11-05 | デジェロ ラブス インコーポレイテッド | 通信資源を評価するためのシステムおよび方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008219225A (ja) * | 2007-03-01 | 2008-09-18 | Fujitsu Ltd | ネットワーク負荷検出システム、方法、装置及びプログラム |
JP2009272800A (ja) * | 2008-05-02 | 2009-11-19 | Kddi Corp | 品質計測システム、受信装置、品質計測方法及びプログラム |
-
2015
- 2015-12-22 WO PCT/JP2015/006371 patent/WO2016103674A1/ja active Application Filing
- 2015-12-22 JP JP2016565914A patent/JPWO2016103674A1/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008219225A (ja) * | 2007-03-01 | 2008-09-18 | Fujitsu Ltd | ネットワーク負荷検出システム、方法、装置及びプログラム |
JP2009272800A (ja) * | 2008-05-02 | 2009-11-19 | Kddi Corp | 品質計測システム、受信装置、品質計測方法及びプログラム |
Non-Patent Citations (1)
Title |
---|
KOHEI WATABE ET AL.: "A Study on the Probing Method and Accuracy for CoMPACT Monitor", IEICE TECHNICAL REPORT, vol. 109, no. 119, 2 July 2009 (2009-07-02), pages 31 - 36 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020532224A (ja) * | 2017-08-22 | 2020-11-05 | デジェロ ラブス インコーポレイテッド | 通信資源を評価するためのシステムおよび方法 |
JP7211632B2 (ja) | 2017-08-22 | 2023-01-24 | デジェロ ラブス インコーポレイテッド | 通信資源を評価するためのシステムおよび方法 |
JP2023036926A (ja) * | 2017-08-22 | 2023-03-14 | デジェロ ラブス インコーポレイテッド | 通信資源を評価するためのシステムおよび方法 |
US11909593B2 (en) | 2017-08-22 | 2024-02-20 | Dejero Labs Inc. | System and method for assessing communication resources |
JP7489733B2 (ja) | 2017-08-22 | 2024-05-24 | デジェロ ラブス インコーポレイテッド | 通信資源を評価するためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016103674A1 (ja) | 2017-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9577935B2 (en) | Unified congestion control for real-time media support | |
EP3125497B1 (en) | Estimating processor load | |
CN101958811B (zh) | 一种端到端可用带宽测量方法及*** | |
EP2760182B1 (en) | Data communication apparatus, data transmission method, and computer system | |
JP5824347B2 (ja) | 時刻同期装置及び方法 | |
CA2915487C (en) | Method for performing a bandwidth test for comminications from a first network station to a second network station of a communication network and corresponding apparatuses for performing the method steps and corresponding computer program products | |
JP6575529B2 (ja) | 可用帯域推定システム、可用帯域推定方法、受信装置及び受信装置の制御プログラム | |
JP2015524188A (ja) | ビデオ・ストリームのフレーム・タイプ検出方法および装置ならびにフレーム・サイズ検出方法および装置 | |
KR20130114597A (ko) | 스트리밍 미디어 전달 컴포지트 | |
EP3560152B1 (en) | Determining the bandwidth of a communication link | |
JP2011023998A (ja) | 片道変動遅延時間の推定方法及びその装置 | |
US20100322084A1 (en) | Method and Device for Transport Delay Analysis | |
CN108933768B (zh) | 视频帧的发送帧率的获取方法和装置 | |
Gokhale et al. | Opportunistic adaptive haptic sampling on forward channel in telehaptic communication | |
WO2016103674A1 (ja) | ストリーム受信装置、通信システム、ストリーム送信のタイミングを推定する方法および記録媒体 | |
JP6048102B2 (ja) | 情報処理システム | |
JP2007259162A (ja) | ネットワーク品質測定方法、測定装置及びプログラム | |
JP2013078011A (ja) | 通信品質測定方法および装置 | |
RU2589887C2 (ru) | Способ измерения времени задержки на двустороннее распространение для трафика данных с переменной скоростью передачи битов и устройство для его осуществления | |
JP2009105662A (ja) | マルチホップ通信システム、マルチホップ通信方法、端末装置および中継装置 | |
JP2014116840A (ja) | 通信品質推定装置 | |
JP2016116104A (ja) | ユーザデータを用いて通信帯域を計測するプログラム、サーバ、システム及び方法 | |
CN112839240B (zh) | 一种基于视频流的带宽探测方法与*** | |
US10772010B2 (en) | Transmission apparatus, method for controlling transmission, and recording medium | |
JP6717209B2 (ja) | パケット列送・受信装置、ネットワーク状態推定システムおよび制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15872246 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2016565914 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15872246 Country of ref document: EP Kind code of ref document: A1 |