WO2019117246A1 - 受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体 - Google Patents

受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体 Download PDF

Info

Publication number
WO2019117246A1
WO2019117246A1 PCT/JP2018/045865 JP2018045865W WO2019117246A1 WO 2019117246 A1 WO2019117246 A1 WO 2019117246A1 JP 2018045865 W JP2018045865 W JP 2018045865W WO 2019117246 A1 WO2019117246 A1 WO 2019117246A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
band
packets
network
train
Prior art date
Application number
PCT/JP2018/045865
Other languages
English (en)
French (fr)
Inventor
崇 大芝
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US16/770,485 priority Critical patent/US11303552B2/en
Priority to JP2019559197A priority patent/JP6919721B2/ja
Publication of WO2019117246A1 publication Critical patent/WO2019117246A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/06Testing, supervising or monitoring using simulated traffic

Definitions

  • the present invention is based on the priority claim of Japanese Patent Application No. 2017-240335 (filed on December 15, 2017), and the entire contents of the same application are incorporated and described herein by reference. It shall be.
  • the present invention relates to a receiver, a communication system, an available bandwidth estimation method, and a storage medium storing a program.
  • the “available bandwidth” indicates a free bandwidth obtained by subtracting the bandwidth of other traffic (cross traffic) flowing from the physical bandwidth of the bottleneck link of the communication line to the network.
  • the available bandwidth may be accurately estimated, and the quality of service (QoE; Quality of Experience) felt by the user not to perform communication control based on the estimated available bandwidth may be degraded.
  • QoE Quality of Experience
  • the video transmission rate is not set lower than the available bandwidth in a video conference or the like, audio and video may be frequently interrupted, and the user may feel uncomfortable.
  • the video transmission rate is made equal to or less than the estimated value of the available bandwidth, it is possible to prevent the sum of the video transmission rate and the cross traffic from exceeding the physical bandwidth and to prevent QoE degradation due to packet loss.
  • Patent Document 1 discloses a so-called estimation method of a physical band using a packet pair.
  • the transmitting side transmits a packet pair consisting of two packets (probing packets).
  • the reception interval of two packets is measured, and the physical band is estimated from the reception interval and the size of the packet forming a packet pair.
  • Patent Documents 2 and 3 disclose methods of estimating available bandwidth using a packet train consisting of a plurality of packets.
  • the outline of bandwidth estimation by packet train is as follows. First, the transmitting side transmits packets with gradually increasing packet sizes at a constant transmission interval. Although the packet transmission interval is constant, the packet size gradually increases, so the transmission rate gradually increases. Packets pass through the network where the per-packet transmission rate becomes a bottleneck, and queuing delay occurs when the transmission rate exceeds the available bandwidth. That is, due to the occurrence of the queuing delay, the transmission interval, which was initially constant, gradually increases. The receiving side detects a point at which the transmission interval (reception interval) is expanded to identify a packet in which a queuing delay occurs, and estimates the available bandwidth by dividing the size of the packet by the transmission interval.
  • Patent Document 4 when the transmission rate of a packet transmitted from the data transmission terminal to the wired network exceeds the upper limit, the bandwidth limitation that limits the inflow of packets to the wired network by discarding the excess packets.
  • An apparatus is disclosed.
  • MNO Mobile Network Operator
  • MVNO Mobile Virtual Network Operator
  • band limitation may be performed on the terminal when predetermined conditions and the like are satisfied.
  • bandwidth limitation examples include shaping and policing.
  • Shaping is a technique of buffering packets to be transmitted and received, and suppressing the communication rate (transmission rate, communication band) between devices to a predetermined value or less.
  • Policing is a technique of monitoring the communication rate of packets to be transmitted and received, and discarding packets in excess of a predetermined communication rate. In shaping, too, since packets can not be accumulated beyond the memory buffer, packets that can not be stored in the buffer are discarded.
  • a mobile telecommunications carrier may carry out bandwidth limitation for a terminal that has sent and received a large amount of data within a fixed period of time.
  • bandwidth limitation by a virtual mobile telecommunications carrier may be performed in a time zone in which networks are mixed.
  • FIG. 24 is a diagram showing an example of the result of measuring the communication band of the virtual mobile communications company. It is presumed from FIG. 24 that band limitation is performed in a time zone such as morning (time T1 to T2), daytime (time T3 to T4), and evening (time T5 to T6).
  • FIG. 25 is a diagram showing an example of the result of estimation of the available bandwidth of communication by a virtual mobile communications company.
  • the solid line indicates the actual measurement value (true value) of the available band
  • the dotted line indicates the available band estimated by the method (method using a packet train) disclosed in Patent Document 2.
  • FIG. 25 while high estimation results are obtained at times T1 to T2 in which band limitation is not performed, actual available bands (time T3 to T4 in which it is assumed that band limitation is performed) It can be seen that the true value and the dissociation of the estimated value are large.
  • estimation of available bandwidth using a packet train is performed using a point at which the reception interval is wider than the transmission interval. At that time, if packets are discarded due to bandwidth limitation, the receiving side does not assume such packet discarding, and the calculated reception interval etc. is largely deviated from the actual interval. Since the available band is estimated based on the largely deviated reception interval, it is considered that an accurate estimation result can not be obtained.
  • the estimation result of the available bandwidth affects the quality of service received by the user, an accurate estimation of the available bandwidth is required even in a situation where bandwidth limitation is performed.
  • bandwidth limitation for example, in FIG. 25, in the time zones T1 to T2, high-rate available bands are measured, and their estimated values are also substantially equal.
  • the estimated value of the available band indicates a high available rate band even though the available band is lowered to an extremely low rate. . If video conferencing is conducted based on such an estimated value with a large error, the actual available bandwidth is much narrower than the assumed available bandwidth, and situations such as frequent interruption of video etc. occur, and it is satisfactory. I can not get results.
  • the packet pair system is suitable for estimating the "physical band” but is not suitable for the "available band".
  • the estimated value obtained at that time is an estimate of the physical band It is not a value but an estimate of the available bandwidth.
  • a main object of the present invention is to provide a receiver, a communication system, an available bandwidth estimation method, and a storage medium storing a program, which contributes to accurately estimating the available bandwidth regardless of the implementation of bandwidth limitation. .
  • a receiving unit for receiving a packet train consisting of a plurality of packets transmitted from a transmitter, and whether or not band limitation is implemented in the network based on the received packet train And selecting a method for estimating the available bandwidth of the network according to the determination unit for determining the availability of the bandwidth limitation, and estimating the available bandwidth of the network according to the selected method.
  • a receiver is provided, comprising:
  • the transmitter includes: a transmitter for transmitting a packet train composed of a plurality of packets; and a receiver for receiving the transmitted packet train, the receiver including: Based on the received packet train, a determination unit that determines whether or not band limiting is performed in the network, and a method of estimating the available band of the network according to the determination result regarding whether or not the band limiting is performed,
  • a communication system comprising: an estimation unit, which estimates the available bandwidth of the network according to a selected method.
  • a receiver that receives a packet train consisting of a plurality of packets transmitted from a transmitter, based on the received packet train, whether or not bandwidth restriction has been performed in the network
  • An available band estimation method is provided for determining and selecting a method of estimating the available band of the network according to the determination result regarding whether or not the band limitation has been performed, and estimating the available band of the network by the selected method. Be done.
  • a method of estimating the available bandwidth of the network is selected according to the process of determining the implementation of the limitation and the determination result of the implementation of the bandwidth limitation, and the available bandwidth of the network is estimated by the selected method.
  • a storage medium storing a program for executing a process. Note that this program can be recorded on a computer readable storage medium.
  • the storage medium can be non-transient such as a semiconductor memory, a hard disk, a magnetic recording medium, an optical recording medium, and the like.
  • the invention can also be embodied as a computer program product.
  • FIG. 6 is a diagram showing the reception results of packet trains in the network provided by the virtual mobile communication company.
  • connection lines between blocks in each figure include both bidirectional and unidirectional directions.
  • the unidirectional arrows schematically indicate the flow of main signals (data), and do not exclude bidirectionality.
  • input ports and output ports are respectively present at the input end and the output end of each connection line, although the description is omitted. The same is true for the input / output interface.
  • the receiver 100 includes a receiving unit 101, a determining unit 102, and an estimating unit 103 (see FIG. 1).
  • the receiving unit 101 receives a packet train composed of a plurality of packets transmitted from a transmitter.
  • the determination unit 102 determines whether or not band limitation is performed in the network based on the received packet train.
  • the estimation unit 103 selects a method for estimating the available bandwidth of the network according to the determination result regarding whether or not the band limitation is performed, and estimates the available bandwidth of the network according to the selected method.
  • the receiver 100 determines whether or not band limiting is performed based on the packet train transmitted from the transmitter. After that, the receiver 100 selects an available band estimation method suitable for the implementation situation of the band limitation, and estimates the available band. As a result, the receiver 100 can accurately estimate the available bandwidth regardless of whether or not the bandwidth limitation is performed.
  • FIG. 2 is a diagram illustrating an example of a schematic configuration of the communication system according to the first embodiment.
  • the communication system includes server 10 and terminal 20.
  • the server 10 and the terminal 20 are connected via the Internet and a mobile network.
  • “band limit” is implemented depending on conditions such as a time zone.
  • the server 10 is a device that provides a service to the terminal 20.
  • the server 10 provides, for example, a service related to video streaming to the terminal 20.
  • the terminal 20 is a wireless terminal such as a mobile phone or a smartphone.
  • the terminal 20 is configured to be able to access the mobile network by a communication method such as 3G (Third Generation) or LTE (Long Term Evolution).
  • the terminal 20 transmits a “packet train transmission request” to the server 10.
  • the server 10 having received the request transmits a packet train composed of a plurality of packets to the terminal 20.
  • Each packet in the packet train transmitted from the server 10 functions as a packet (measurement packet, probe packet) for measuring the available bandwidth between the server 10 and the terminal 20.
  • the terminal 20 receives the transmitted packet train.
  • the terminal 20 determines, based on the received packet train, whether or not bandwidth restriction has been performed in the network.
  • the terminal 20 selects a method for estimating the available bandwidth of the network in accordance with the determination result regarding the presence or absence of implementation of the band limitation, and estimates the available bandwidth in the network between the server 10 and its own device by the selected method. Note that, in FIG. 2, the available bandwidth of the downlink based on the terminal 20 is estimated.
  • the server 10 operates as a "transmitter” that transmits a packet train
  • the terminal 20 operates as a “receiver” that receives a packet train.
  • FIG. 3 is a view showing an example of the processing configuration (processing module) of the server 10 according to the first embodiment.
  • the server 10 includes a communication control unit 201, a band estimation control unit 202, and a packet train generation unit 203.
  • the communication control unit 201 controls communication with another device (for example, the terminal 20). Specifically, the communication control unit 201 transmits data (packets) acquired from another module to another device. Alternatively, the communication control unit 201 distributes data received from another device to another module (for example, the band estimation control unit 202).
  • the bandwidth estimation control unit 202 processes the “packet train transmission request” acquired from the terminal 20. Specifically, when receiving the packet train transmission request, the bandwidth estimation control unit 202 instructs the packet train generation unit 203 to generate a predetermined packet train. The generated packet train is transmitted to the terminal 20 via the communication control unit 201.
  • the packet train generation unit 203 generates and outputs the packet train disclosed in Patent Document 2. Specifically, the packet train generation unit 203 generates a plurality of packets (packet trains, packet groups) in which the transmission interval is constant and the packet size gradually increases (see FIG. 4). In the example of FIG. 4, N (N is an integer of 3 or more, and the same applies hereinafter) packets having different sizes are generated. Also, in the drawings including FIG. 4, the numbers described inside the packets (rectangular squares) indicate packet numbers.
  • the upper limit of the packet size of each packet forming a packet train is a size that is not fragmented in the network. That is, the MTU (Maximum Transmission Unit) in the network between the server 10 and the terminal 20 is the upper limit size of packets forming a packet train.
  • the MTU in the network may be set in advance by the system administrator in the server 10, or the server 10 may acquire the MTU using various MTU search algorithms.
  • the packet train specification (transmission interval, number of packets, size of each packet, etc.) generated by the packet train generation unit 203 may be a value previously negotiated between the server 10 and the terminal 20, or the terminal 20 The specification may be notified to the server 10.
  • the terminal 20 may include the packet train specification desired for the server 10 in the packet train transmission request.
  • the packet train generation unit 203 assigns, to a packet header or the like, an ID (IDentifier; identifier) for identifying that the generated packet is a packet that constitutes a packet train.
  • ID IDentifier; identifier
  • FIG. 5 is a view showing an example of the processing configuration (processing module) of the terminal 20 according to the first embodiment.
  • the terminal 20 is configured to include a communication control unit 301, a band estimation control unit 302, a band restriction presence / absence determination unit 303, and an available band estimation unit 304.
  • the communication control unit 301 controls communication with another device (for example, the server 10). Specifically, the communication control unit 301 transmits data (packets) acquired from another module to another device. Alternatively, the communication control unit 301 distributes data received from another device to another module (for example, the band estimation control unit 302).
  • another device for example, the server 10
  • the communication control unit 301 transmits data (packets) acquired from another module to another device.
  • the communication control unit 301 distributes data received from another device to another module (for example, the band estimation control unit 302).
  • the band estimation control unit 302 performs control related to band estimation. Specifically, the bandwidth estimation control unit 302 transmits a “packet train transmission request” to the server 10 in response to an instruction from an application (for example, an application for video streaming) installed in the terminal 20 or the like. Also, the band estimation control unit 302 delivers the estimation result (the estimation result regarding the available band of the downlink) by the available band estimation unit 304 to the application.
  • an application for example, an application for video streaming
  • the packet train transmission request transmitted from the terminal 20 to the server 10 may include a request regarding the specification of the packet train.
  • the band limiting presence / absence determining unit 303 determines whether band limiting has been performed based on the received packet train. Specifically, the band limit presence / absence determination unit 303 calculates a characteristic value related to the discarded packet among the packets forming the transmitted packet train, and determines whether or not band limitation is performed by performing threshold processing on the characteristic value. The bandwidth limit presence / absence determination unit 303 acquires the packet train transmitted from the server 10 via the communication control unit 301.
  • FIG. 6 is a diagram showing an example of the received packet train (received packet sequence) acquired by the terminal 20.
  • FIG. 6A shows a received packet train when bandwidth limitation is not implemented in the network between the server 10 and the terminal 20.
  • FIG. 6 (b) shows the received packet train when bandwidth limitation is implemented in the network between the server 10 and the terminal 20.
  • the difference in size between each packet is not reflected in the drawing.
  • the packets forming the packet train transmitted from the server 10 are described to reach the terminal 20 in the order of transmission (the packet numbers are arranged in ascending order). However, in actuality, each packet may reach the terminal 20 after the packet number goes back and forth.
  • the band limiting presence / absence determining unit 303 determines that band limiting is performed by using discarding of a part of packets forming a packet train when band limiting is performed. Do. At this time, the band limit presence / absence determination unit 303 calculates the characteristic value of the discarded packet among the packets forming the transmitted packet train. In the following description, the characteristic value is referred to as a "loss characteristic value" or a "packet loss characteristic value".
  • the packet loss characteristic value is an index indicating how a packet transmitted as a packet train is discarded.
  • the band limit presence / absence determination unit 303 calculates the loss rate of the packet transmitted as the packet train as the “loss characteristic value”. Specifically, the bandwidth limit determination unit 303 calculates a ratio of the total number of discarded packets among the packets transmitted as the packet train to the total number of packets transmitted as the packet train as the loss characteristic value. Thereafter, the band limiting presence / absence determining unit 303 performs threshold processing on the calculated packet loss rate to determine whether band limiting has been performed.
  • the bandwidth limit presence / absence determination unit 303 calculates the packet loss rate by the following equation (1). ... (1)
  • NPt is the total number of packets transmitted as a packet train.
  • NPr is the total number of packets received as a packet train.
  • the packet loss rate becomes 0%.
  • the packet loss rate is 100%.
  • the packet loss rate is 100% when the terminal 20 can not receive a packet that forms a packet train even after a predetermined time period since the terminal 20 transmits a packet train transmission request to the server 10.
  • FIG. 7 is a flow chart showing an example of the operation of the band limiting presence / absence determining unit 303 according to the first embodiment. The operation of the band limitation presence / absence determination unit 303 will be described with reference to FIG.
  • the bandwidth limit presence / absence determination unit 303 calculates the packet loss rate using the above equation (1). Specifically, the bandwidth restriction presence / absence determination unit 303 calculates the above-mentioned NPr by counting the number of packets provided with an identifier that clearly indicates that it is a packet train.
  • the band limit presence / absence determination unit 303 uses a predetermined number between the server 10 and the terminal 20.
  • the packet train transmission request includes the number of packets of the packet train transmitted from the server 10 to the terminal 20, the number of requested packets is used as the above NPt.
  • the bandwidth limit presence / absence determination unit 303 performs threshold processing on the calculated packet loss rate (step S102). Specifically, the bandwidth limit determination unit 303 determines whether the calculated packet loss rate is equal to or more than a threshold.
  • the threshold used in the threshold processing a preliminary experiment is carried out in an actual environment (field), and as a result of changing the candidate value of the threshold, a candidate value with high determination accuracy is adopted as the threshold.
  • the system administrator or the like repeatedly transmits the packet train from the server 10 to the terminal 20 and repeats the calculation of the packet loss rate in an environment where it is known that no band limitation has been performed.
  • the system administrator repeatedly transmits a packet train from the server 10 to the terminal 20 in an environment where it is known that bandwidth limitation is performed, and repeats calculating the packet loss rate. From these two types of packet loss rates, a packet loss rate that can most accurately determine whether or not band limiting is performed is set as a threshold.
  • the band limiting presence / absence determining unit 303 determines that band limiting is performed (step S103).
  • the band limiting presence / absence determining unit 303 determines that band limiting is not performed (step S104).
  • the band limiting presence / absence determining unit 303 notifies the available band estimating unit 304 of the determination result (band limiting performed, band limiting not performed) (step S105).
  • the available bandwidth estimation unit 304 estimates the available bandwidth in the network between the server 10 and the terminal 20. Specifically, the available bandwidth estimation unit 304 estimates the available bandwidth using the packet train received from the server 10. At that time, the available band estimation unit 304 switches the estimation method of the available band according to the determination result by the band limitation presence / absence determination unit 303.
  • FIG. 8 is a flowchart showing an example of the operation of the available band estimation unit 304 according to the first embodiment.
  • the available bandwidth estimation unit 304 acquires the determination result by the bandwidth restriction presence determination unit 303 (step S201).
  • the available band estimation unit 304 estimates the available band to which the idea of the packet pair is applied (step S203).
  • the available bandwidth estimation unit 304 estimates the available bandwidth using a packet train (step S204).
  • the available band estimation unit 304 notifies the band estimation control unit 302 of the estimation result (step S205).
  • FIG. 9 is a flowchart showing an example of the operation of the available bandwidth estimation unit 304 when bandwidth limitation is performed.
  • step S301 the available bandwidth estimation unit 304 assigns a reception number to each packet forming the packet train acquired from the server 10 in the reception order (the arrival order to the terminal 20).
  • step S302 the available bandwidth estimation unit 304 treats packets having adjacent reception numbers as one packet pair, and calculates a reception interval between each packet pair. At this time, the available bandwidth estimation unit 304 stores the packet size of each of the two packets that make up the packet pair.
  • the available bandwidth estimation unit 304 calculates the physical bandwidth between the server 10 and the terminal 20 for each packet pair. Specifically, the available bandwidth estimation unit 304 calculates the physical bandwidth for each packet pair using the following equation (2). ... (2)
  • the packet size in Equation (2) may be the packet size of one of two packets forming a packet pair, or may be the average value of the two packet sizes.
  • step S304 the available bandwidth estimation unit 304 identifies the smallest physical bandwidth among the plurality of physical bandwidths calculated in the previous step.
  • the available bandwidth estimation unit 304 notifies the bandwidth estimation control unit 302 of the identified minimum physical bandwidth as an “available bandwidth” in the network between the server 10 and the terminal 20 (step S205 in FIG. 8).
  • the available band estimation unit 304 generates a packet pair from the received packet train when band limitation is performed, and based on information (packet size, reception interval) obtained from the generated packet pair. Calculate the physical bandwidth of the network.
  • the calculated physical bandwidth is an estimate of the available bandwidth of the network. More specifically, the available bandwidth estimation unit 304 generates a plurality of packet pairs from the received packet train, and calculates a physical bandwidth from each of the generated plurality of packet pairs. Among the calculated physical bands, the smallest physical band is an estimate of the available band of the network.
  • the operation of the available band estimation unit 304 will be specifically described with reference to FIG. Referring to FIG. 10A, among the packets forming the packet train, the packet that first reaches the terminal 20 and the packet that reaches the terminal 20 next form a pair (packet pair) 1. Similarly, the packet arriving at the terminal 20 second and the packet arriving at the third form a pair 2.
  • M is a positive integer less than or equal to N, and so forth
  • M-1 packet pairs are formed.
  • the parenthesized numbers written inside the packet are the receiving numbers assigned in step S301.
  • the available bandwidth estimation unit 304 calculates the reception interval of each packet pair (two packets whose reception numbers are adjacent to each other).
  • the reception interval of pair 1 is calculated as T1
  • the reception interval of pair 2 is calculated as T2.
  • the available bandwidth estimation unit 304 calculates a physical bandwidth from each packet pair using Equation (2). For example, when using the packet size of the first packet of two packets of a packet pair as the packet size, the result of dividing A1 by T1 is the physical band of pair 1.
  • the available bandwidth estimation unit 304 calculates a physical bandwidth from each packet pair (see FIG. 10B). After that, the available band estimation unit 304 selects the smallest physical band from the calculated physical bands, and uses the smallest physical band as an estimated value of the available band in the network between the server 10 and the terminal 20. Notify 302.
  • the available band estimation unit 304 creates a packet pair from the received packet train, and estimates the physical band between the server 10 and the terminal 20 from the packet pair. Do.
  • the reason for estimating the physical bandwidth from the packet pair is as follows.
  • bandwidth limitations such as shaping and policing are implemented
  • the physical bandwidth for each terminal becomes substantially equal to the available bandwidth.
  • the available bandwidth for the terminal 20 is substantially equal to 2 Mbps which is a physical bandwidth. This is because in the shaping and policing, the communication bandwidth available to the terminal is controlled to be a predetermined value (2 Mbps in the above example).
  • the received packet train is considered to be composed of a large number of packet pairs, and the physical band is estimated by the packet pair method.
  • the estimated physical band is an available band in the downlink based on the terminal 20.
  • the minimum value is selected from the plurality of physical bands calculated in step S303 of FIG. 9, and is selected as the final physical band.
  • the above selection is performed to eliminate the physical band affected by such cross traffic, considering that the cross traffic affects the physical band other than the minimum value.
  • the available band estimation unit 304 estimates the available band by the method (the method using the packet train) disclosed in Patent Documents 2 and 3. Therefore, although the detailed description is omitted, the available band is estimated by the following operation.
  • the available band estimation unit 304 calculates an available band using a packet transmitted one packet before the packet. As described above, the packet size of each packet in the packet train gradually increases. Therefore, the packet transmitted one packet before the packet whose reception interval is larger than the transmission interval corresponds to the packet having the largest packet size among the packets having the same reception interval and transmission interval.
  • the available bandwidth estimation unit 304 determines the available bandwidth based on the packet size (hereinafter referred to as the delay start packet size) of the packet transmitted one packet before the packet whose reception interval is longer than the transmission interval and the transmission interval. Calculate Specifically, the available band estimation unit 304 calculates the available band according to the following equation (3). ... (3)
  • the available bandwidth estimation unit 304 identifies the first packet in which the reception interval is larger than the transmission interval among the packets forming the received packet train when the bandwidth limitation is not performed. Thereafter, the available bandwidth estimation unit 304 calculates the available bandwidth of the network based on the packet size of the packet transmitted one packet before the identified packet and the transmission interval.
  • FIG. 11 is a sequence diagram showing an example of the operation of the communication system according to the first embodiment.
  • the terminal 20 transmits a packet train transmission request to the server 10 (step S01).
  • the server 10 having received the request generates a packet train, and transmits the generated packet train to the terminal 20 (steps S02 and S03).
  • the terminal 20 receives each packet forming a packet train, calculates a packet loss characteristic value from the received packet train, and determines whether or not band limitation is performed (step S04).
  • the terminal 20 estimates the physical band of the downlink using the idea of packet pair, and sets the estimated value as an estimated value of the available bandwidth between the server 10 and the terminal 20 (step S05). If the band limitation is not implemented, the terminal 20 estimates the available bandwidth by the packet train (step S06).
  • FIG. 12 is a diagram showing an example of the hardware configuration of the terminal 20.
  • the terminal 20 includes a central processing unit (CPU) 21, a memory 22, an input / output interface 23, and a wireless communication circuit 24 connected to the antenna 25 to transmit and receive a wireless signal.
  • CPU central processing unit
  • memory 22 a random access memory
  • input / output interface 23 a wireless communication circuit 24 connected to the antenna 25 to transmit and receive a wireless signal.
  • wireless communication circuit 24 connected to the antenna 25 to transmit and receive a wireless signal.
  • the configuration shown in FIG. 12 is not intended to limit the hardware configuration of the terminal 20.
  • the terminal 20 may include hardware not shown.
  • the number of CPUs and the like included in the terminal 20 is not limited to the example illustrated in FIG. 12, and, for example, a plurality of CPUs may be included in the terminal 20.
  • the memory 22 is a random access memory (RAM), a read only memory (ROM), or an auxiliary storage device (such as a hard disk).
  • RAM random access memory
  • ROM read only memory
  • auxiliary storage device such as a hard disk
  • the input / output interface 23 is a display device or an input device.
  • the display device is, for example, a liquid crystal display or the like.
  • the input device is, for example, a device that receives user operations such as a keyboard and a mouse.
  • the function of the terminal 20 is realized by the above-described processing module.
  • the processing module is realized, for example, by the CPU 21 executing a program stored in the memory 22.
  • the program can be downloaded via a network, or can be updated using a storage medium storing the program.
  • the processing module may be realized by a semiconductor chip. That is, the function performed by the processing module may be realized by executing software in some hardware.
  • the server 10 can be configured by a so-called information processing apparatus (computer).
  • the server 10 can be configured by changing the communication function from the configuration of the terminal 20 (in place of the wireless communication circuit 24 and mounting a communication interface (NIC; Network Interface Card)), and is obvious to those skilled in the art. The explanation is omitted.
  • NIC Network Interface Card
  • a packet train is transmitted from the server 10, and the terminal 20 determines whether or not bandwidth restriction is performed from the packet of the packet train.
  • FIG. 13 is a diagram showing the reception results of packet trains in the network provided by a virtual mobile telecommunications carrier (MVNO).
  • the horizontal axis of FIG. 13 indicates the transmission time of the packet train, and the vertical axis indicates the packet number of the packet received by the receiving device.
  • a plurality of packets extending in the vertical axis direction corresponds to one packet train transmission.
  • the packet train that is originally a packet (packet group) for bandwidth estimation is used to determine whether or not bandwidth limitation is performed.
  • the packet train is a packet related to bandwidth estimation (non-inlined packet), and is an inline packet related to bandwidth restriction implementation determination.
  • “In-line” means use outside the purpose, and "non-in-line” means use in accordance with the purpose. From this point of view, in the first embodiment, it can be said that the packet loss characteristic of the packet train is examined by “in-line measurement” using the packet train, and whether or not band limitation is performed is determined based on the loss characteristic.
  • FIG. 14 is a diagram showing the relationship between the available bandwidth and the packet loss rate.
  • a thick solid line indicates the available bandwidth (measured value, true value) between the transmitting device and the receiving device, and a circle with a dotted line indicates the packet loss rate at each time.
  • FIG. 15 is a diagram illustrating an example of the available band and the estimation result of the available band.
  • thick solid lines indicate available bandwidths (measured values, true values) between the transmitting device and the receiving device.
  • large circles indicate estimation results by the method described in the first embodiment (the available band estimation method is switched depending on whether or not band limitation is performed).
  • the small circles indicate the estimation results by the method disclosed in Patent Document 2 (the available bandwidth is estimated by the packet train regardless of whether or not the bandwidth limitation is performed).
  • the estimated value (small circle) is largely deviated from the true value, and the estimation accuracy of the available bandwidth is poor.
  • the estimated value (large circle) in the period substantially matches the true value, and the estimation of the available band is performed with high accuracy.
  • whether or not band limiting is performed is determined by a method different from the first embodiment.
  • the processing configuration and hardware configuration of the server 10 and the terminal 20 according to the second embodiment can be the same as the configuration described in the first embodiment, and so FIG. 3, FIG. 5, FIG. The description corresponding to is omitted.
  • the operation of the band limit determination unit is different.
  • the operation of the band limitation presence / absence determination unit 303a according to the second embodiment will be mainly described.
  • the bandwidth limit presence / absence determination unit 303a calculates a data string including the number of continuously discarded packets among the packets forming the transmitted packet train as an element, and the calculated distribution (average) of the data string (vector) to the average. (VMR; Variance to Mean Ratio) is calculated as a packet loss characteristic value.
  • the band limiting presence / absence determining unit 303a determines whether to perform band limiting by performing threshold processing on the calculated VMR.
  • the band limit presence / absence determination unit 303a creates a data string including the number of continuously discarded packets (hereinafter referred to as the number of continuous loss packets) as an element. For example, consider a case where the terminal 20 receives a packet train as shown in FIG. 16 under the situation where band limitation is performed.
  • packets forming a packet train are discarded due to the effect of bandwidth limitation.
  • packets having packet numbers 2, 3, 5 to 7, 9, 10, 12 to 14 are discarded (packets illustrated by dotted lines are discarded packets).
  • the bandwidth limit presence / absence determination unit 303a identifies the discarded packets as described above by checking the packet numbers attached to the respective packets of the packet train.
  • the band limit presence / absence determination unit 303a measures the number of continuously discarded packets, and creates a data string including the number of consecutive loss packets as an element.
  • the band limit presence / absence determination unit 303a applies the following equation (4) to the data string to calculate VMR (dispersion to average ratio). ... (4)
  • ⁇ 2 represents a dispersion value
  • represents an average value.
  • the band limiting presence / absence determining unit 303a determines whether to perform band limiting by performing threshold processing on the calculated VMR.
  • the threshold used for the threshold processing can be determined by repeating the preliminary experiment in an environment in which the presence or absence of the band limitation is known.
  • the presence or absence of band limitation is determined using the VMR calculated from the received packet train.
  • VMR is a statistic indicating the degree of variation of the probability distribution.
  • the number of continuously discarded packets varies widely during the period in which the band limitation is performed (period of time T1 to T2). That is, in the period in which the band limitation is performed, the number of continuously discarded packets is increased or decreased, and the “number of continuous loss packets” may be mixed.
  • This situation means that the degree of variation of the number of continuous loss packets is large when the band limitation is performed, and VMR becomes large.
  • the correlation between the implementation of band limitation and the VMR is used to determine the implementation of band limitation.
  • FIG. 17 is a diagram showing the relationship between the available band and the VMR.
  • thick solid lines indicate available bands (measured values, true values) between the transmitting device and the receiving device, and circles with dotted lines indicate VMR at each time.
  • VMR is very large compared to the other periods.
  • VMR characteristics are used to determine whether or not band limitation is performed. Furthermore, if the implementation of the band limitation is correctly determined, the estimation of the available bandwidth using the result also becomes accurate.
  • FIG. 18 is a diagram illustrating an example of the available band and the estimation result of the available band.
  • a thick solid line indicates the available bandwidth (measured value, true value) between the transmitting device and the receiving device.
  • the large circles indicate the estimation results by the method described in the second embodiment (the available band estimation method is switched depending on the implementation of band limitation).
  • the small circles indicate the estimation results by the method disclosed in Patent Document 2 (the available bandwidth is estimated by the packet train regardless of whether or not the bandwidth limitation is performed).
  • the processing configuration and hardware configuration of the server 10 and the terminal 20 according to the third embodiment can be the same as the configuration described in the first embodiment, and so FIG. 3, FIG. 5, FIG. The description corresponding to is omitted.
  • the operation of the available bandwidth estimation unit is different.
  • the operation of the available band estimation unit 304a according to the third embodiment will be mainly described below.
  • the available bandwidth estimation unit 304a calculates a plurality of packet pairs from the received packet train. Thereafter, the available bandwidth estimation unit 304 a performs curve fitting (regression analysis) on data including the packet size of the packet pair and the reception interval between two packets for each of the plurality of generated packet pairs. Calculate physical bandwidth.
  • the relationship between the packet pair for each packet pair and the reception interval described in the first embodiment is as shown in FIG. As shown in FIG. 19, as the packet size of a packet pair increases, its reception interval also tends to increase. This is because the time to send a large packet to the network needs to be longer than the time to send a small packet to the network.
  • the available bandwidth estimation unit 304a applies the least squares method to data consisting of packet size and reception interval for each packet pair, and calculates a straight line that is most applicable to the acquired data. For example, the available band estimation unit 304a calculates a straight line 401 as shown in FIG.
  • the available band estimation unit 304a calculates, as the physical band, the reciprocal of the slope of the straight line calculated by the least squares method.
  • the reciprocal of a1 (a1 is a positive real number; the slope of the straight line 401) is the physical band in the network between the server 10 and the terminal 20 when the band limitation is performed.
  • the available band estimation unit 304a may estimate the available band by curve fitting different from the least squares method. Estimates of the physical bandwidth by the least squares method include the influence of singularities caused by cross traffic. In this regard, there is room for improvement in estimation accuracy.
  • the available band estimation unit 304a moves the non-sloped straight line in the positive direction of the Y-axis until the non-sloped straight line (a straight line parallel to the X-axis) first contacts the reception interval value.
  • the straight line 402 is a straight line that does not have the above-mentioned inclination and contacts the value of the reception interval first.
  • the available band estimation unit 304a rotates the straight line about a point at which the straight line contacts the value of the reception interval, and calculates a straight line that passes the largest number of reception interval values.
  • the straight line 403 is calculated as the straight line.
  • the available band estimation unit 304a calculates the reciprocal of the calculated inclination of the straight line as a physical band.
  • the reciprocal of a2 (a2 is a positive real number; the slope of the straight line 403) is the physical band in the network between the server 10 and the terminal 20 when the band limitation is performed.
  • the available bandwidth estimation unit 304a sets the value of the packet size to the value of the X axis and the value of the reception interval to the value of the Y axis for the data consisting of the packet size and the reception interval for each of the plurality of packet pairs. . After that, the available band estimation unit 304a moves the first straight line without inclination in the positive direction from the X axis to the Y axis until the minimum value of the reception interval is reached. Thereafter, the available band estimation unit 304a rotates the straight line that has reached the minimum value around the minimum value so that the straight line that reaches the minimum value (line 402 in FIG. 20) passes the value of the largest reception interval. The second straight line (straight line 403 in FIG. 20) obtained in The reciprocal of the slope of the second straight line is calculated as the physical band.
  • physical bandwidth is estimated by applying curve fitting to packet sizes and reception intervals of packet pairs obtained from a packet train.
  • the physical band thus estimated is more accurate than the estimated value of the first embodiment.
  • the physical band is estimated from one set of packet size and reception interval, but in the third embodiment, the physical band is estimated from plural sets of packet sizes and reception interval.
  • the physical band is estimated from plural sets of packet sizes and reception interval.
  • the downlink band is estimated based on the terminal 20
  • the server 10 may estimate the available bandwidth.
  • the estimated available bandwidth is notified to the terminal 20.
  • the terminal 20 may be equipped with a “packet train transmission function” and the server 10 may be equipped with a “band limit presence / absence determination function” and an “available band estimation function”.
  • these functions can be equivalent to the functions described in the above embodiment, further detailed description will be omitted.
  • the terminal 20 when estimating the available bandwidth of the downlink based on the terminal 20, the terminal 20 is a "receiver” and the server 10 is a “transmitter”.
  • the terminal 20 in the case of estimating the available bandwidth of the uplink, the terminal 20 is a "transmitter” and the server 10 is a "receiver”. That is, as shown in FIG. 22A, the communication system is configured to include the transmitter 30 and the receiver 31.
  • the server 10 and the terminal 20 become the transceiver 32 and the transceiver 33, respectively (see FIG. 22 (b)).
  • FIG. 2 describes a configuration in which the terminal 20 connects to the mobile network by a wireless communication method
  • the terminal 20 may be connected to the Internet by wire communication without passing through the mobile network.
  • the terminal 20 may be a device such as a personal computer, and may be connected to the Internet via an ONU (Optical Network Unit) or the like.
  • ONU Optical Network Unit
  • band limitation it can be determined whether or not such band limitation is implemented in the communication system of the present disclosure.
  • the apparatus contained in a communication system is not limited to the combination of a terminal and a server.
  • the method of available bandwidth estimation disclosed herein may be used.
  • the server 10 is assumed to be a device that provides a service to the terminal 20, but the available bandwidth may be estimated using a device that does not provide a service.
  • the packet train transmission device 40 may be installed on the Internet, and the packet train may be transmitted from the device to the terminal 20.
  • the band of the wireless section is often narrow.
  • the packet train passes through the wireless section and substantially the same availability is available. An estimate of the bandwidth is obtained.
  • the "available bandwidth estimation apparatus" may be installed on the Internet.
  • a packet train having a specification different from that of the packet train disclosed in the documents may be transmitted and received.
  • a packet train of a method called “PathChirp” disclosed as Non-Patent Document 1 of Patent Document 2 may be transmitted.
  • packet trains may be sent and received such that each packet is also the same packet size and transmission interval. That is, any packet train may be transmitted / received as long as the packet train (a plurality of packets) can measure the density of the received packet on the receiver side according to the implementation of the band limitation.
  • the presence or absence of band limitation is determined by threshold processing on loss characteristic values such as the packet loss rate and the variance to average ratio of the number of continuous loss packets, but the presence or absence of band limitation is determined by another method.
  • image data that visualizes the reception status of the received packet train may be prepared, and the presence or absence of band limitation may be determined by machine learning (for example, deep learning) or the like using the image data.
  • image data for example, image data before time T1 in FIG. 13
  • data for example, image data between times T1 and T2 in FIG.
  • a learning model may be formed using the two types of acquired image data as teacher data, and image data to be subjected to determination of band limitation may be input to the acquired learning model. That is, to determine whether or not band limitation is performed in the network based on the received packet train is not limited to threshold processing using the loss characteristic value.
  • the threshold used to determine the implementation of band limitation is determined in a preliminary experiment, and then the threshold is fixedly used. However, the threshold used is changed according to various conditions, etc. You may For example, in the preliminary experiment, if it is found that the optimum threshold value is different for each time zone, a threshold value is prepared for each time zone, and the threshold value according to the time zone when determining whether to perform band limitation A selective threshold process may be performed.
  • the determination as to whether or not band limiting has been performed and the estimation of the available bandwidth are performed by transmitting and receiving one packet train, but the determination and the estimation may be performed by transmitting and receiving multiple packet trains.
  • the threshold determination is performed on such a prominent value, an erroneous determination may occur depending on the selection of the threshold.
  • packet trains may be transmitted and received a plurality of times, and the determination result (the implementation or non-execution of the band limitation) may be determined when the same determination continues for a predetermined number or more.
  • the packet train may be transmitted and received an odd number of times, and the determination result may be determined by majority decision.
  • the specification of the packet train to be transmitted and received may be changed in accordance with conditions such as a time zone. For example, the total number of packets forming a packet train transmitted and received in the early morning time zone and the total number of packets forming a packet train transmitted and received in the daytime may be changed.
  • the method of determining whether to perform band limitation may be switched according to conditions such as a time zone. For example, in the early morning time zone, determination using the packet loss rate described in the first embodiment, and in the daytime time zone, determination using the VMR of the number of continuous loss packets described in the second embodiment You may switch such as using.
  • the processing configuration of the server 10 and the terminal 20 shown in FIG. 3 and FIG. 5 is an example, and it is a matter of course that the configuration is not limited.
  • the communication control unit 201 illustrated in FIG. 3 may be configured to generate and transmit a packet train.
  • the computer By installing the available bandwidth estimation program in the storage unit of the computer, the computer can function as an available bandwidth estimation device. Also, by making the computer execute the available bandwidth estimation program, the computer can execute the available bandwidth estimation method.
  • the determination unit is Calculating a data string including the number of continuously discarded packets among the packets forming the transmitted packet train as elements; The receiver according to appendix 2, wherein a variance to average ratio of the calculated data string is calculated as the characteristic value.
  • the estimation unit When the band limitation is performed, a packet pair is generated from the received packet train, a physical band of the network is calculated based on information obtained from the generated packet pair, and the calculated physical band is calculated as the network.
  • the estimation unit The receiver according to claim 5, wherein the physical band is calculated based on a packet size of at least one of two packets forming the packet pair and a reception interval between two packets forming the packet pair.
  • the estimation unit Generate a plurality of packet pairs from the received packet train; Calculating the physical bandwidth from each of the plurality of packet pairs generated; The receiver according to claim 5 or 6, wherein a minimum physical band among the plurality of calculated physical bands is used as an estimated value of the available band of the network.
  • the estimation unit Multiple packet pairs are generated from the received packet train, Performing curve fitting on data including the packet size of at least one of two packets forming the packet pair and the reception interval between the two packets forming the packet pair for each of the plurality of packet pairs generated
  • the receiver according to statement 5 wherein the physical band is calculated by [Supplementary Note 9]
  • the estimation unit For data consisting of packet size and reception interval for each of the plurality of packet pairs, the value for the packet size is set to the value of the X axis, and the value for the reception interval is set to the value of the Y axis, The first straight line without inclination is moved in the positive direction from the X-axis to the Y-axis until the minimum value of the reception interval is reached, and the straight line reaching the minimum value passes the largest number of reception interval values. The second straight line obtained by rotating the straight line that has reached the minimum value around the minimum value as described above is calculated, and the reciprocal of the slope of the second straight line is calculated as the physical band. Receiving machine.
  • the estimation unit If the bandwidth limitation is not performed, the first packet having a reception interval larger than a transmission interval among the packets forming the received packet train is identified, The receiver according to any one of appendages 1 to 10, wherein the available bandwidth of the network is calculated based on the packet size of a packet transmitted one before the identified packet and a transmission interval.
  • the receiver according to any one of appendices 1 to 11, which requests the transmitter to transmit the packet train.
  • It It is as a communication system concerning the above-mentioned 2nd viewpoint.
  • Supplementary Note 15 It is as a storage medium which memorized a program concerning the above-mentioned 4th viewpoint.
  • the forms of Supplementary Note 13 to Supplementary Note 15 can be expanded to the forms of Supplementary note 2 to Supplementary note 12 in the same manner as the forms of Supplementary Note 1.
  • server 20 terminal 21 CPU (central processing unit) 22 memory 23 input / output interface 24 wireless communication circuit 25 antenna 30 transmitter 31, 100 receiver 32, 33 transceiver 40 packet train transmitter 101 reception unit 102 determination unit 103 estimation unit 201, 301 communication control unit 202, 302 bandwidth estimation Control unit 203 Packet train generation unit 303, 303a Band limit presence / absence determination unit 304, 304a Available bandwidth estimation unit 401, 402, 403 Straight line

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本発明は、帯域制限の実施有無にかかわらず可用帯域を正確に推定する受信機を提供する。受信機は、受信部と、判定部と、推定部と、を備える。受信部は、送信機から送信される、複数のパケットからなるパケットトレインを受信する。判定部は、受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する。推定部は、帯域制限の実施有無に関する判定結果に応じて、ネットワークの可用帯域を推定する方法を選択し、選択された方法によりネットワークの可用帯域を推定する。

Description

受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体
 (関連出願についての記載)
 本発明は、日本国特許出願:特願2017-240335号(2017年12月15日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体に関する。
 近年、ネットワーク技術、情報処理技術の進展に伴いネットワークを用いた種々のサービスが提供されている。例えば、遠隔地の端末同士を結び映像や音声を送受信するビデオ会議や、サーバからマルチメディアデータをダウンロードし動画等が視聴可能なビデオストリーミング等のサービスが存在する。
 このようなサービスの提供にあたり、ネットワークの可用帯域(利用可能帯域とも称される)を適切に推定することが求められる。なお、「可用帯域」とは、通信回線のボトルネックリンクの物理帯域からネットワークに流れる他のトラヒック(クロストラヒック)の帯域を減じた空き帯域を示す。
 上記のようなサービスでは、可用帯域を正確に推定し、当該推定した可用帯域に基づいて通信制御を行わないとユーザが感じるサービスの品質(QoE;Quality of Experience)が低下し得る。例えば、ビデオ会議等において映像の送信レートを可用帯域よりも低く設定しないと音声や映像が頻繁に途切れる事態となり、ユーザは不快に感じることがある。換言すれば、映像の送信レートを可用帯域の推定値以下とすることで、映像の送信レートとクロストラヒックの合計が物理帯域を超えることを防止し、パケットロスによるQoE低下を防止できる。
 ここで、ネットワークの物理帯域や可用帯域の推定には種々の方法が提案されている。
 特許文献1には、所謂、パケットペアを用いた物理帯域の推定方法が開示されている。パケットペアを用いた物理帯域の推定は、送信側にて2つのパケット(プロービングパケット)からなるパケットペアを送信する。受信側では、2つのパケットの受信間隔を測定し、当該受信間隔とパケットペアをなすパケットのサイズから物理帯域を推定する。
 特許文献2及び3には、複数のパケットからなるパケットトレインを用いた可用帯域の推定方法が開示されている。パケットトレインによる帯域推定の概略は以下のとおりである。始めに、送信側は、パケットサイズが徐々に増加するパケットを一定の送信間隔で送信する。パケットの送信間隔は一定であるが、パケットサイズは徐々に増加するため、送信レートは徐々に増加する。パケットごとの送信レートがボトルネックとなるネットワークをパケットが通過し、送信レートが可用帯域を上回るとキューイング遅延が発生する。即ち、キューイング遅延が発生することにより、当初は一定であった送信間隔が徐々に広がっていく。受信側は、送信間隔(受信間隔)が広がっていくポイントを検出することでキューイング遅延が発生するパケットを特定し、当該パケットのサイズを送信間隔で除算することで可用帯域を推定する。
 特許文献4には、データ送信端末から有線網に伝送されるパケットの伝送レートが上限値を超過すると、超過分のパケットを破棄することで、有線網へのパケットの流入量を制限する帯域制限装置が開示されている。
特開2014-093769号公報 特許第5928574号公報 国際公開第2017/110675号 特開2014-068214号公報
 ユーザに無線接続を提供するキャリアとして、通信回線網を有するMNO(Mobile Network Operator;移動体通信業者)と通信回線網を有さないMVNO(Mobile Virtual Network Operator;仮想移動体通信業者)が存在する。これらのキャリアでは、所定の条件等を満たすときに端末に対する帯域制限を行うことがある。
 帯域制限の例としては、シェーピングやポリシングが挙げられる。シェーピングは、送受信されるパケットをバッファリングし、装置間の通信レート(伝送レート、通信帯域)を所定の値以下に抑える技術である。ポリシングは、送受信されるパケットの通信レートを監視し、所定の通信レートを超えた分のパケットに関しては破棄する技術である。なお、シェーピングにおいても、メモリバッファを超えてパケットを蓄積できないので、バッファに格納しきれないパケットに関しては破棄される。
 例えば、移動体通信業者(MNO)は、一定期間内に大量のデータを送受信した端末に対して帯域制限を実施することがある。また、仮想移動体通信業者(MVNO)による帯域制限は、ネットワークが混在する時間帯に行われることがある。
 図24は、仮想移動体通信業者の通信帯域を測定した結果の一例を示す図である。図24を確認すると、朝(時刻T1~T2)、昼(時刻T3~T4)、晩(時刻T5~T6)といった時間帯に帯域制限に行われていることが推測される。
 発明者らが鋭意検討した結果、帯域制限が行われている環境下にて特許文献2、3に開示されたパケットトレインを用いる可用帯域の推定手法を適用すると推定結果の誤差が大きいことが判明した。
 図25は、仮想移動体通信業者による通信の可用帯域を推定した結果の一例を示す図である。図25において、実線が可用帯域の実測値(真値)を示し、点線が特許文献2に開示された手法(パケットトレインを用いた手法)により推定された可用帯域を示す。図25を参照すると、帯域制限が行われていない時刻T1~T2では高い推定結果が得られるのに対し、帯域制限が行われていると想定される時刻T3~T4では、実際の可用帯域(真値)と推定値の解離が大きいことが分かる。
 上述のように、パケットトレインを用いた可用帯域の推定は、受信間隔が送信間隔よりも広がったポイントを利用して行われる。その際、帯域制限によりパケットが破棄されると、受信側ではそのようなパケット破棄を想定しておらず、計算される受信間隔等が実際の間隔から大きく外れることになる。この大きく外れた受信間隔に基づいて、可用帯域の推定が行われるため精度の良い推定結果が得られないものと考えられる。
 ここで、可用帯域の推定結果はユーザが提供を受けるサービスの品質に影響を与えるため、帯域制限が実施されている状況下においても、正確な可用帯域の推定が求められる。例えば、図25において、時間帯T1~T2では、高レートの可用帯域が測定され、その推定値もほぼ同等となっている。一方、帯域制限が実施されていると思われる時間帯T3~T4では、極めて低レートにまで可用帯域が下がっているにも関わらず、可用帯域の推定値は高いレートの可用帯域を示している。そのような誤差の大きい推定値に基づいてビデオ会議等を実施すれば、想定している可用帯域よりも実際の可用帯域は非常に狭く、映像等が頻繁に途切れる等の事態が発生し満足な結果が得られない。
 なお、特許文献1に開示されたパケットペアを用いて可用帯域を推定することも選択肢としてはあり得る。しかし、パケットペア方式は「物理帯域」の推定には向くが「可用帯域」には不向きであることが、発明者らの検討により判明している。パケットペア方式では、パケットペアの転送途中にてパケットペアの2つのパケットうち前のパケットの手前や2つのパケットの間に他のパケットが入り込むと、その際に得られる推定値は物理帯域の推定値ではなく可用帯域の推定値となる。
 パケットペア方式では、推定精度を高めるために複数組のパケットペアを所定の間隔で送信することが多いが、他のパケット(クロストラヒック)の状況が時刻によって大きく変化することが多いため得られる推定値の変動が大きい。つまり、帯域制限の実施有無にかかわらず、パケットペア方式による可用帯域の推定結果には誤差が大きく、通常、パケットトレイン方式に代えてパケットペア方式により可用帯域を推定する利点はない。
 本発明は、帯域制限の実施有無にかかわらず可用帯域を正確に推定することに寄与する、受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体を提供することを主たる目的とする。
 本発明乃至開示の第1の視点によれば、送信機から送信される、複数のパケットからなるパケットトレインを受信する、受信部と、前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する、判定部と、前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、推定部と、を備える、受信機が提供される。
 本発明乃至開示の第2の視点によれば、複数のパケットからなるパケットトレインを送信する、送信機と、前記送信されたパケットトレインを受信する、受信機と、を含み、前記受信機は、前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する、判定部と、前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、推定部と、を備える、通信システムが提供される。
 本発明乃至開示の第3の視点によれば、送信機から送信される、複数のパケットからなるパケットトレインを受信する受信機において、前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定し、前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、可用帯域推定方法が提供される。
 本発明乃至開示の第4の視点によれば、送信機から送信される、複数のパケットからなるパケットトレインを受信する受信機に搭載されたコンピュータに、前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する処理と、前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する処理と、を実行させるプログラムを記憶した記憶媒体が提供される。
 なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明乃至開示の各視点によれば、帯域制限の実施有無にかかわらず可用帯域を正確に推定することに寄与する、受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体が、提供される。
一実施形態の概要を説明するための図である。 第1の実施形態に係る通信システムの概略構成の一例を示す図である。 第1の実施形態に係るサーバの処理構成の一例を示す図である。 パケットトレイン生成部により生成されるパケットトレインを説明するための図である。 第1の実施形態に係る端末の処理構成の一例を示す図である。 端末にて取得した受信パケットトレインの一例を示す図である。 第1の実施形態に係る帯域制限有無判定部の動作の一例を示すフローチャートである。 第1の実施形態に係る可用帯域推定部の動作の一例を示すフローチャートである。 帯域制限が実施されている場合の可用帯域推定部の動作の一例を示すフローチャートである。 第1の実施形態に係る可用帯域推定部の動作を説明するための図である。 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。 第1の実施形態に係る端末のハードウェア構成の一例を示す図である。 仮想移動体通信業者により提供されるネットワークにおけるパケットトレインの受信結果を示す図である。 可用帯域とパケットロス率の関係を示す図である。 可用帯域と可用帯域の推定結果の一例を示す図である。 第2の実施形態に係る帯域制限有無判定部の動作を説明するための図である。 可用帯域とVMR(Variance to Mean Ratio)の関係を示す図である。 可用帯域と可用帯域の推定結果の一例を示す図である。 第3の実施形態に係る可用帯域推定部の動作を説明するための図である。 第3の実施形態に係る可用帯域推定部の動作を説明するための図である。 通信システムの概略構成の別の一例を示す図である。 通信システムの概略構成の別の一例を示す図である。 通信システムの概略構成の別の一例を示す図である。 仮想移動体通信業者の通信帯域を測定した結果の一例を示す図である。 仮想移動体通信業者による通信の可用帯域を推定した結果の一例を示す図である。
 初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、各図におけるブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。さらに、本願開示に示す回路図、ブロック図、内部構成図、接続図などにおいて、明示は省略するが、入力ポート及び出力ポートが各接続線の入力端及び出力端のそれぞれに存在する。入出力インターフェイスも同様である。
 一実施形態に係る受信機100は、受信部101と、判定部102と、推定部103と、を備える(図1参照)。受信部101は、送信機から送信される、複数のパケットからなるパケットトレインを受信する。判定部102は、受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する。推定部103は、帯域制限の実施有無に関する判定結果に応じて、ネットワークの可用帯域を推定する方法を選択し、選択された方法によりネットワークの可用帯域を推定する。
 受信機100は、送信機から送信されたパケットトレインに基づき、帯域制限の実施有無を判定する。その後、受信機100は、帯域制限の実施状況に適した可用帯域の推定方法を選択し、可用帯域の推定を行う。その結果、受信機100は、帯域制限の実施有無にかかわらず可用帯域を正確に推定できる。
 以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
[第1の実施形態]
 第1の実施形態について、図面を用いてより詳細に説明する。
 図2は、第1の実施形態に係る通信システムの概略構成の一例を示す図である。図2を参照すると、通信システムは、サーバ10と端末20を含んで構成される。サーバ10と端末20は、インターネット及びモバイルネットワークを介して接続される。なお、モバイルネットワークでは、時間帯等の条件により「帯域制限」が実施される。
 サーバ10は、端末20にサービスを提供する装置である。サーバ10は、例えば、ビデオストリーミングに係るサービスを端末20に提供する。
 端末20は、携帯電話やスマートフォン等の無線端末である。端末20は、3G(Third Generation)やLTE(Long Term Evolution)等の通信方式によりモバイルネットワークにアクセス可能に構成されている。
[動作概要]
 初めに、図2を参照しつつ、第1の実施形態に係る通信システムの動作概略を説明する。
 端末20は、サーバ10に対して「パケットトレイン送信要求」を送信する。当該要求を受信したサーバ10は、複数のパケットからなるパケットトレインを端末20に向けて送信する。サーバ10から送信されるパケットトレインの各パケットは、サーバ10と端末20の間の可用帯域を計測するためのパケット(計測パケット、プローブパケット)として機能する。
 端末20は、上記送信されたパケットトレインを受信する。端末20は、受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する。端末20は、帯域制限の実施有無に関する判定結果に応じて、ネットワークの可用帯域を推定する方法を選択し、その選択された方法によりサーバ10と自装置間のネットワークにおける可用帯域を推定する。なお、図2では、端末20を基準とした下り回線の可用帯域が推定される。
 このように、第1の実施形態に係る通信システムでは、サーバ10がパケットトレインを送信する「送信機」として動作し、端末20はパケットトレインを受信する「受信機」として動作する。
[サーバの処理構成]
 図3は、第1の実施形態に係るサーバ10の処理構成(処理モジュール)の一例を示す図である。図3を参照すると、サーバ10は、通信制御部201と、帯域推定制御部202と、パケットトレイン生成部203と、を含んで構成される。
 通信制御部201は、他の装置(例えば、端末20)との間の通信を制御する。具体的には、通信制御部201は、他のモジュールから取得したデータ(パケット)を他の装置に向けて送信する。あるいは、通信制御部201は、他の装置から受信したデータを他のモジュール(例えば、帯域推定制御部202)に振り分ける。
 帯域推定制御部202は、端末20から取得した「パケットトレイン送信要求」を処理する。具体的には、帯域推定制御部202は、パケットトレイン送信要求を受信すると、パケットトレイン生成部203に対して所定のパケットトレインの生成を指示する。生成されたパケットトレインは、通信制御部201を介して端末20に向けて送信される。
 パケットトレイン生成部203は、特許文献2に開示されたパケットトレインを生成し、出力する。具体的には、パケットトレイン生成部203は、送信間隔は一定で、パケットサイズが徐々に増加するような複数のパケット(パケットトレイン、パケット群)を生成する(図4参照)。なお、図4の例では、サイズが互いに異なるN(Nは3以上の整数、以下同じ)個のパケットが生成される。また、図4を含む図面においてパケット(矩形状の四角)の内部に記載された数字はパケット番号を示す。
 パケットトレインをなす各パケットのパケットサイズの上限はネットワーク内でフラグメントされないサイズとする。即ち、サーバ10と端末20の間のネットワークにおけるMTU(Maximum Transmission Unit)がパケットトレインをなすパケットの上限サイズとなる。上記ネットワークにおけるMTUは、システム管理者が予めサーバ10に設定してもよいし、サーバ10が種々のMTU探索アルゴリズムを用いてMTUを取得してもよい。
 パケットトレイン生成部203が生成するパケットトレインの仕様(送信間隔、パケットの個数、各パケットのサイズ等)は予めサーバ10と端末20との間で取り決めた値であってもよいし、端末20がサーバ10に仕様を通知してもよい。例えば、端末20は、パケットトレイン送信要求にサーバ10に要望するパケットトレインの仕様を含めてもよい。
 また、パケットトレイン生成部203は、生成したパケットがパケットトレインを構成するパケットであることを識別するためのID(IDentifier;識別子)をパケットヘッダ等に付与する。
[端末の処理構成]
 図5は、第1の実施形態に係る端末20の処理構成(処理モジュール)の一例を示す図である。図5を参照すると、端末20は、通信制御部301と、帯域推定制御部302と、帯域制限有無判定部303と、可用帯域推定部304と、を含んで構成される。
 通信制御部301は、他の装置(例えば、サーバ10)との間の通信を制御する。具体的には、通信制御部301は、他のモジュールから取得したデータ(パケット)を他の装置に向けて送信する。あるいは、通信制御部301は、他の装置から受信したデータを他のモジュール(例えば、帯域推定制御部302)に振り分ける。
 帯域推定制御部302は、帯域推定に関する制御を行う。具体的には、帯域推定制御部302は、端末20にインストールされたアプリケーション(例えば、ビデオストリーミング用のアプリケーション)等からの指示に応じて「パケットトレイン送信要求」をサーバ10に向けて送信する。また、帯域推定制御部302は、可用帯域推定部304による推定結果(下り回線の可用帯域に関する推定結果)を上記アプリケーションに引き渡す。
 なお、上述のように、端末20からサーバ10に向けて送信するパケットトレイン送信要求にはパケットトレインの仕様に関する要求が含まれていてもよい。
 帯域制限有無判定部303は、受信したパケットトレインに基づき、帯域制限の実施有無を判定する。具体的には、帯域制限有無判定部303は、送信されたパケットトレインをなすパケットのうち破棄されたパケットに関する特性値を算出し、当該特性値に対する閾値処理により帯域制限の実施有無を判定する。なお、帯域制限有無判定部303は、サーバ10から送信されたパケットトレインを通信制御部301を介して取得する。
 図6は、端末20にて取得した受信パケットトレイン(受信パケット列)の一例を示す図である。図6(a)は、サーバ10と端末20の間のネットワークにて帯域制限が実施されていない場合の受信パケットトレインを示す。図6(b)は、サーバ10と端末20の間のネットワークにて帯域制限が実施されている場合の受信パケットトレインを示す。なお、図6において、各パケット間のサイズの違いは図面に反映していない。
 図6(a)に示すように、帯域制限が実施されていない場合には、サーバ10から送信されたパケットトレインをなすパケットはその大半が端末20に到達すると考えられる。対して、帯域制限が実施されている場合には、シェーピングやポリシングに係るパケット制御が行われ、一部のパケットは破棄される。その結果、サーバ10から送信されたパケットトレインをなすパケットの一部は端末20に未達となる。
 なお、図6において、サーバ10から送信されたパケットトレインをなすパケットは、送信順に端末20に到達するように記載されている(パケット番号が昇順に並んでいる)。しかし、実際には、パケット番号が前後して各パケットが端末20に到達することもある。
 帯域制限有無判定部303は、図6(b)に示すように、帯域制限が実施されているとパケットトレインをなすパケットの一部が破棄されることを利用し、帯域制限の実施有無を判定する。その際、帯域制限有無判定部303は、送信されたパケットトレインをなすパケットのうち破棄されたパケットに関する特性値を算出する。なお、以降の説明において、上記特性値を「ロス特性値」又は「パケットロス特性値」と表記する。当該パケットロス特性値は、パケットトレインとして送信されたパケットがどのように破棄されているかを示す指標となる。
 第1の実施形態では、帯域制限有無判定部303は、パケットトレインとして送信されたパケットのロス率を「ロス特性値」として計算する。具体的には、帯域制限有無判定部303は、パケットトレインとして送信されたパケットの総数に対する、パケットトレインとして送信されたパケットのうち破棄されたパケットの総数の割合をロス特性値として算出する。その後、帯域制限有無判定部303は、当該算出されたパケットロス率に対して閾値処理を施すことで帯域制限の実施有無を判定する。
 帯域制限有無判定部303は、下記の式(1)によりパケットロス率を算出する。

Figure JPOXMLDOC01-appb-I000001
            ・・・(1)

 なお、式(1)において、NPtは、パケットトレインとして送信されたパケットの総数である。また、NPrは、パケットトレインとして受信したパケットの総数である。
 式(1)によれば、端末20が、サーバ10から送信されたパケット(パケットトレインをなすパケット)の全てを受信するとパケットロス率は0%となる。一方、端末20が、サーバ10から送信されたパケットの全てを受信できない場合には、パケットロス率は100%となる。例えば、端末20が、パケットトレイン送信要求をサーバ10に向けて送信してから所定の期間経過してもパケットトレインをなすパケットを受信できない場合に、パケットロス率は100%となる。
 図7は、第1の実施形態に係る帯域制限有無判定部303の動作の一例を示すフローチャートである。図7を参照しつつ、帯域制限有無判定部303の動作を説明する。
 ステップS101において、帯域制限有無判定部303は、上記の式(1)を用いてパケットロス率を計算する。具体的には、帯域制限有無判定部303は、パケットトレインであることを明示する識別子が付与されたパケットの数を計数することで、上記NPrを算出する。
 上記NPtに関しては、帯域制限有無判定部303は、サーバ10と端末20の間で予め定めた数を利用する。あるいは、パケットトレイン送信要求の中にサーバ10から端末20に向けて送信するパケットトレインのパケット数を含めた場合には、当該要求したパケット数が上記NPtとして利用される。
 帯域制限有無判定部303は、計算されたパケットロス率に対して閾値処理を実行する(ステップS102)。具体的には、帯域制限有無判定部303は、計算されたパケットロス率が閾値以上であるか否かを判定する。
 なお、当該閾値処理にて使用される閾値は、実際の環境(フィールド)にて予備実験を実施し、閾値の候補となる値を変動させた結果、判定精度が高い候補値を閾値に採用する。例えば、システム管理者等は、帯域制限が行われていないことが判明している環境にて、サーバ10から端末20に向けてパケットトレインを送信し、パケットロス率を計算することを繰り返す。同様に、システム管理者は、帯域制限が行われていることが判明している環境にて、サーバ10から端末20に向けてパケットトレインを送信し、パケットロス率を計算することを繰り返す。これら2種類のパケットロス率から、帯域制限の実施有無を最も正確に判別できるパケットロス率が閾値に設定される。
 帯域制限有無判定部303は、パケットロス率が閾値以上であれば(ステップS102、Yes分岐)、帯域制限が実施されていると判定する(ステップS103)。
 帯域制限有無判定部303は、パケットロス率が閾値より小さければ(ステップS102、No分岐)、帯域制限は不実施であると判定する(ステップS104)。
 その後、帯域制限有無判定部303は、判定結果(帯域制限実施、帯域制限不実施)を可用帯域推定部304に通知する(ステップS105)。
 可用帯域推定部304は、サーバ10と端末20の間のネットワークにおける可用帯域を推定する。具体的には、可用帯域推定部304は、サーバ10から受信したパケットトレインを用いて上記可用帯域を推定する。その際、可用帯域推定部304は、帯域制限有無判定部303による判定結果に応じて、可用帯域の推定手法を切り替える。
 図8は、第1の実施形態に係る可用帯域推定部304の動作の一例を示すフローチャートである。
 図8に示すように、可用帯域推定部304は、帯域制限有無判定部303による判定結果を取得する(ステップS201)。
 判定結果が「帯域制限あり」の場合(ステップS202、Yes分岐)には、可用帯域推定部304は、パケットペアの考えを適用した可用帯域の推定を行う(ステップS203)。
 判定結果が「帯域制限なし」の場合(ステップS202、No分岐)には、可用帯域推定部304は、パケットトレインによる可用帯域の推定を行う(ステップS204)。
 帯域推定が終了すると、可用帯域推定部304は、推定結果を帯域推定制御部302に通知する(ステップS205)。
 続いて、帯域制限が実施されている場合(図8のステップS202がYes分岐の場合)の可用帯域を推定する方法について詳述する。図9は、帯域制限が実施されている場合の可用帯域推定部304の動作の一例を示すフローチャートである。
 ステップS301において、可用帯域推定部304は、サーバ10から取得したパケットトレインをなす各パケットに対し、受信順(端末20への到着順)に受信番号を割り当てる。
 ステップS302において、可用帯域推定部304は、受信番号が隣接するパケットを1つのパケットペアとして取り扱い、各パケットペア間の受信間隔を計算する。その際、可用帯域推定部304は、パケットペアを構成する2つのパケットそれぞれのパケットサイズを記憶する。
 ステップS303において、可用帯域推定部304は、各パケットペアごとにサーバ10と端末20の間の物理帯域を計算する。具体的には、可用帯域推定部304は、下記の式(2)を用いて各パケットペアごとの物理帯域を計算する。

Figure JPOXMLDOC01-appb-I000002
            ・・・(2)

 なお、式(2)におけるパケットサイズは、パケットペアをなす2つのパケットのいずれか一方のパケットサイズでもよいし、2つのパケットサイズの平均値であってもよい。
 ステップS304において、可用帯域推定部304は、先のステップにて計算された複数の物理帯域のうち、最小の物理帯域を特定する。
 その後、可用帯域推定部304は、特定された最小の物理帯域をサーバ10と端末20の間のネットワークにおける「可用帯域」として帯域推定制御部302に通知する(図8のステップS205)。
 上記説明したように、可用帯域推定部304は、帯域制限が実施されている場合、受信したパケットトレインからパケットペアを生成し、生成したパケットペアから得られる情報(パケットサイズ、受信間隔)に基づきネットワークの物理帯域を算出する。算出された物理帯域は、ネットワークの可用帯域の推定値となる。より詳細には、可用帯域推定部304は、受信したパケットトレインから複数のパケットペアを生成し、生成された複数のパケットペアそれぞれから物理帯域を算出する。算出された複数の物理帯域のうち最小の物理帯域がネットワークの可用帯域の推定値となる。
 続いて、図10を参照しつつ、上記可用帯域推定部304の動作を具体的に説明する。図10(a)を参照すると、パケットトレインをなすパケットのうち最初に端末20に到達したパケットと次に端末20に到達したパケットがペア(パケットペア)1を形成する。同様に、2番目に端末20に到達したパケットと3番目に到達したパケットがペア2を形成する。
 図10(a)の例では、パケットトレインをなすパケットのうちM個(MはN以下の正の整数、以下同じ)が端末20に到達し、M-1個のパケットペアが作られる。なお、図10(a)において、パケットの内部に記載した括弧付きの番号はステップS301にて割り当てられた受信番号である。
 可用帯域推定部304は、各パケットペア(受信番号が隣接する2つのパケット)の受信間隔を計算する。図10(a)の例では、ペア1の受信間隔はT1、ペア2の受信間隔はT2と計算される。
 次に、可用帯域推定部304は、式(2)を用いて各パケットペアから物理帯域を計算する。例えば、パケットサイズとしてパケットペアの2つのパケットのうち最初のパケットのパケットサイズを利用する場合には、A1をT1で除算した結果がペア1の物理帯域となる。
 このように、可用帯域推定部304は、各パケットペアから物理帯域を計算する(図10(b)参照)。その後、可用帯域推定部304は、計算された物理帯域のうち最小の物理帯域を選択し、当該最小の物理帯域をサーバ10と端末20の間のネットワークにおける可用帯域の推定値として帯域推定制御部302に通知する。
 上記説明したように、帯域制限が実施されている場合には、可用帯域推定部304は、受信したパケットトレインからパケットペアを作り出し、当該パケットペアからサーバ10と端末20の間の物理帯域を推定する。
 パケットペアから物理帯域を推定する理由は以下のとおりである。シェーピングやポリシングといった帯域制限が実施されると、端末ごとの物理帯域は実質的に可用帯域に等しくなる。例えば、無通信状態にある端末20に2Mbps(メガビット毎秒)の帯域制限が課されている場合には、当該端末20に関する可用帯域は、物理帯域である2Mbpsに実質的に等しくなる。シェーピングやポリシングでは、端末が使用できる通信帯域が予め定めた値(上記の例では、2Mbps)となるように制御されるためである。
 上記考えを前提とし、第1の実施形態では、受信したパケットトレインは多数のパケットペアから構成されていると捉え、パケットペアの手法により物理帯域を推定する。当該推定された物理帯域は、端末20を基準とした場合の下り回線における可用帯域となる。
 また、第1の実施形態では、図9のステップS303にて計算された複数の物理帯域のうち最小値を選択し、最終的な物理帯域に選択している。上記選択は、最小値以外の物理帯域にはクロストラヒックの影響が現れていると考え、このようなクロストラヒックの影響が及んでいる物理帯域を排除するために行われるものである。
 続いて、帯域制限が実施されていない場合(図8のステップS202がNo分岐の場合)の可用帯域を推定する方法について説明する。帯域制限が実施されていない場合には、可用帯域推定部304は、特許文献2、3に開示された手法(パケットトレインを用いる手法)により可用帯域を推定する。そのため、詳細な説明は省略するが、概略以下のような動作により可用帯域が推定される。
 可用帯域推定部304は、パケットトレインをなす各受信パケットの受信間隔が送信間隔よりも大きくなったとき、当該パケットの1つ前に送信されたパケットを用いて可用帯域を計算する。上述のように、パケットトレインをなす各パケットのパケットサイズは徐々に増加していく。従って、受信間隔が送信間隔よりも大きくなるパケットの1つ前に送信されたパケットは、受信間隔と送信間隔とが等しいパケットのうちで、パケットサイズが最大のパケットに相当する。
 可用帯域推定部304は、受信間隔が送信間隔よりも大きくなるパケットの1つ前に送信されたパケットのパケットサイズ(以下、遅延開始パケットサイズと表記する)と送信間隔とに基づいて、可用帯域を計算する。具体的には、可用帯域推定部304は、下記の式(3)により可用帯域を計算する。

Figure JPOXMLDOC01-appb-I000003
            ・・・(3)
 上記説明したように、可用帯域推定部304は、帯域制限が不実施の場合、受信されたパケットトレインをなすパケットのうち、受信間隔が送信間隔よりも大きくなった最初のパケットを特定する。その後、可用帯域推定部304は、特定されたパケットの1つ前に送信されたパケットのパケットサイズと送信間隔とに基づいて、ネットワークの可用帯域を算出する。
[通信システムの動作]
 続いて、第1の実施形態に係る通信システムの動作について説明する。図11は、第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。
 初めに、端末20は、サーバ10に向けてパケットトレイン送信要求を送信する(ステップS01)。当該要求を受信したサーバ10は、パケットトレインを生成し、生成したパケットトレインを端末20に向けて送信する(ステップS02、S03)。端末20は、パケットトレインをなす各パケットを受信し、受信したパケットトレインからパケットロス特性値を計算し、帯域制限の実施有無を判定する(ステップS04)。
 端末20は、帯域制限が実施されていれば、パケットペアの考えを用いて下り回線の物理帯域を推定し、当該推定値をサーバ10と端末20の間の可用帯域の推定値とする(ステップS05)。帯域制限が実施されていなければ、端末20は、パケットトレインによる可用帯域の推定を行う(ステップS06)。
[ハードウェア構成]
 続いて、第1の実施形態に係る通信システムに含まれる各装置のハードウェア構成を説明する。
 図12は、端末20のハードウェア構成の一例を示す図である。例えば、端末20は、内部バスにより相互に接続される、CPU(Central Processing Unit)21、メモリ22、入出力インターフェイス23、アンテナ25に接続され無線信号を送受信する無線通信回路24等を備える。
 なお、図12に示す構成は、端末20のハードウェア構成を限定する趣旨ではない。端末20は、図示しないハードウェアを含んでもよい。あるいは、端末20に含まれるCPU等の数も図12の例示に限定する趣旨ではなく、例えば、複数のCPUが端末20に含まれていてもよい。
 メモリ22は、RAM(Random Access Memory)、ROM(Read Only Memory)、補助記憶装置(ハードディスク等)である。
 入出力インターフェイス23は、表示装置や入力装置である。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受け付ける装置である。
 端末20の機能は、上述の処理モジュールにより実現される。当該処理モジュールは、例えば、メモリ22に格納されたプログラムをCPU21が実行することで実現される。また、そのプログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。即ち、上記処理モジュールが行う機能は、何らかのハードウェアにおいてソフトウェアが実行されることによって実現できればよい。
 なお、サーバ10は、所謂、情報処理装置(コンピュータ)により構成可能である。例えば、サーバ10は、端末20の構成から通信機能を変更(無線通信回路24に替えて通信インターフェイス(NIC;Network Interface Card)を搭載)することで構成でき、且つ、当業者にとって明らかであるのでその説明を省略する。
 以上のように、第1の実施形態に係る通信システムでは、サーバ10からパケットトレインを送信し、端末20は、当該パケットトレインのパケットから帯域制限の実施有無を判定する。
 図13は、仮想移動体通信業者(MVNO)により提供されるネットワークにおけるパケットトレインの受信結果を示す図である。図13の横軸はパケットトレインの送信時間を示し、縦軸は受信側装置にて受信したパケットのパケット番号を示す。なお、縦軸方向に延びる複数のパケットが1回分のパケットトレインの送信に該当する。
 図13を参照すると、時刻T1以前と時刻T2以後に関しては、パケットトレインとして送信されたパケットの大半が受信側装置にて受信できていることが分かる。対して、時刻T1~T2の期間では、多くの空白(即ち、パケットロス)が存在し、帯域制限が実施されたことによりパケットトレインをなすパケットの一部が破棄されていることが分かる。
 このように、帯域制限の実施有無とパケットロスとの間には相関関係が認められ、第1の実施形態では、帯域制限が実施されている時間帯ではパケットロス率が高くなることを利用し、帯域制限の実施有無を判定する。つまり、第1の実施形態では、本来、帯域推定用のパケット(パケット群)であるパケットトレインを帯域制限の実施有無の判定に利用する。換言するならば、パケットトレインは帯域推定に関するパケット(非インラインなパケット)であり、帯域制限実施判定に関するインラインなパケットとなる。なお、「インライン」とは、目的外の使用を意味し、「非インライン」とは目的に沿った使用を意味する。この観点からすれば、第1の実施形態では、パケットトレインを用いた「インライン計測」によりパケットトレインのパケットロス特性を調べ、当該ロス特性に基づき帯域制限の実施有無を判定していると言える。
 図14は、可用帯域とパケットロス率の関係を示す図である。図14において、太い実線は送信側装置と受信側装置の間の可用帯域(実測値、真値)を示し、点線付きの丸印は各時刻におけるパケットロス率を示す。
 図14を参照すると、時刻T1~T2の期間では、可用帯域が急激に低下し帯域制限が実施されていると想定される。また、この期間では、パケットロス率が他の期間に比べ非常に大きくなっている。第1の実施形態では、このようなパケットロス率の特性を利用し、帯域制限の実施有無を判定する。さらに、帯域制限の実施有無が正しく判定されると、その結果を用いた可用帯域の推定精度が高くなる。
 図15は、可用帯域と可用帯域の推定結果の一例を示す図である。図15において、太い実線は送信側装置と受信側装置の間の可用帯域(実測値、真値)を示す。また、大きい丸は第1の実施形態にて説明した手法(帯域制限の実施有無により可用帯域推定方式を切り替え)による推定結果を示す。小さい丸は、特許文献2に開示された手法(帯域制限の実施有無によらずパケットトレインにより可用帯域を推定)による推定結果を示す。
 図15を参照すると、時刻T1以前の期間や、時刻T2以後の期間では、2つの手法による推定結果に大きな違いはない。これらの期間では、同じ手法により可用帯域が推定されているためである。
 時刻T1~T2の期間では、特許文献1に開示された手法により可用帯域を推定すると、その推定値(小さい丸)は真値から大きく外れており、可用帯域の推定精度は悪い。対して、第1の実施形態の手法では、当該期間における推定値(大きな丸)は真値にほぼ一致し、可用帯域の推定が精度よく行われている。
[第2の実施形態]
 続いて、第2の実施形態について図面を参照して詳細に説明する。
 第2の実施形態では、第1の実施形態とは異なる方法により帯域制限の実施有無を判定する。なお、第2の実施形態に係るサーバ10、端末20の処理構成やハードウェア構成は第1の実施形態にて説明した構成と同一とすることができるので、図3、図5、図12等に相当する説明は省略する。
 第1及び第2の実施形態では、帯域制限有無判定部の動作が異なる。以下、第2の実施形態に係る帯域制限有無判定部303aの動作を中心に説明する。
 帯域制限有無判定部303aは、送信されたパケットトレインをなすパケットのうち連続して破棄されたパケット数を要素として含むデータ列を算出し、当該算出されたデータ列(ベクトル)の分散対平均比(VMR;Variance to Mean Ratio)をパケットロス特性値として算出する。帯域制限有無判定部303aは、当該計算されたVMRに対して閾値処理を実行することで帯域制限の実施有無を判定する。
 初めに、帯域制限有無判定部303aは、受信したパケットトレインに基づき、連続して破棄されたパケット数(以下、連続ロスパケット数と表記する)を要素として含むデータ列を作成する。例えば、帯域制限が実施されている状況下にて端末20が、図16に示すようなパケットトレインを受信した場合を考える。
 この場合、帯域制限の影響によりパケットトレインをなす一部のパケットが破棄される。図16の例では、パケット番号2、3、5~7、9、10、12~14を有するパケットが破棄されている(点線にて図示したパケットが破棄されたパケットである)。帯域制限有無判定部303aは、パケットトレインの各パケットに付されたパケット番号を確認することで、上記のような破棄されたパケットを特定する。
 次に、帯域制限有無判定部303aは、連続して破棄されたパケットの数を計測し、連続ロスパケット数を要素として含むデータ列を作成する。図16の例では、{2、3、2、3、・・・}に係るデータ列が作成される。なお、帯域制限有無判定部303aが作成するデータ列には、「1」が含まれ得る。つまり、連続してパケットが破棄されていなくとも、1個のパケットが破棄されていれば、当該破棄されたパケットはデータ列に反映される。
 次に、帯域制限有無判定部303aは、上記データ列に対して、下記の式(4)を適用し、VMR(分散対平均比)を計算する。

Figure JPOXMLDOC01-appb-I000004
            ・・・(4)

なお、σは分散値、μは平均値を示す。
 帯域制限有無判定部303aは、計算されたVMRに対して閾値処理を実行することで、帯域制限の実施有無を判定する。なお、上記閾値処理に使用する閾値は、第1の実施形態と同様に、帯域制限の実施有無が判明している環境下にて予備実験を繰り返すことで決定できる。
 以上のように、第2の実施形態では、受信したパケットトレインから計算したVMRを用いて帯域制限の実施有無を判定する。
 ここで、VMRは、確率分布のばらつき度合を示す統計量である。図13を参照すると、帯域制限が実施されている期間(時刻T1~T2の期間)では、連続して破棄されるパケットの数が大きくばらついてる。つまり、帯域制限が実施されている期間では、連続して破棄されるパケットの数が大きくなったり、小さくなったりし、「連続ロスパケット数」が大小入り乱れる状況となる。
 当該状況は、帯域制限が実施されている場合には、連続ロスパケット数のばらつき度合が大きいことを意味し、VMRが大きくなる。第2の実施形態では、帯域制限の実施有無とVMRの相関関係を利用し、帯域制限の実施有無の判定に利用する。
 図17は、可用帯域とVMRの関係を示す図である。図17において、太い実線は送信側装置と受信側装置の間の可用帯域(実測値、真値)を示し、点線付きの丸印は各時刻におけるVMRを示す。図17を参照すると、時刻T1~T2の期間では、可用帯域が急激に低下し帯域制限が実施されていると想定される。また、この期間では、VMRが他の期間に比べ非常に大きくなっている。
 第2の実施形態では、このようなVMRの特性を利用し、帯域制限の実施有無を判定する。さらに、帯域制限の実施有無が正しく判定されると、その結果を用いた可用帯域の推定も精度が高くなる。
 図18は、可用帯域と可用帯域の推定結果の一例を示す図である。図18において、太い実線は送信側装置と受信側装置の間の可用帯域(実測値、真値)を示す。また、大きい丸は第2の実施形態にて説明した手法(帯域制限の実施有無により可用帯域推定方式を切り替え)による推定結果を示す。小さい丸は、特許文献2に開示された手法(帯域制限の実施有無によらずパケットトレインにより可用帯域を推定)による推定結果を示す。
 図18を参照すると、第2の実施形態に係る方法により帯域制限の実施有無が正しく判定され、その判定結果を用いた可用帯域の推定も精度良く行われていることが分かる。
[第3の実施形態]
 続いて、第3の実施形態について図面を参照して詳細に説明する。
 第3の実施形態では、帯域制限が実施されている場合の可用帯域をより正確に算出する方法について説明する。なお、第3の実施形態に係るサーバ10、端末20の処理構成やハードウェア構成は第1の実施形態にて説明した構成と同一とすることができるので、図3、図5、図12等に相当する説明は省略する。
 第1及び第3の実施形態では、可用帯域推定部の動作が異なる。以下、第3の実施形態に係る可用帯域推定部304aの動作を中心に説明する。
 可用帯域推定部304aは、受信したパケットトレインから複数のパケットペアを算出する。その後、可用帯域推定部304aは、生成された複数のパケットペアそれぞれに関して、パケットペアの上記パケットサイズと2つのパケット間の受信間隔とからなるデータに対してカーブフィッティング(回帰分析)を行うことで物理帯域を算出する。
 第1の実施形態で説明したパケットペアごとのパケットペアと受信間隔の関係を図示すると図19のようになる。図19に示すように、パケットペアのパケットサイズが増加するとその受信間隔も増加する傾向がある。これは、サイズの大きなパケットをネットワークに送出するための時間は、サイズの小さなパケットをネットワークに送出するための時間よりも長く必要なことに起因する。
 なお、図19には、受信間隔が他のパケットペアの受信間隔とは大きく異なる点(特異点)が存在するが、当該特異点はクロストラヒックの影響により受信間隔が増大したことにより生じるものである。
 可用帯域推定部304aは、パケットペアごとのパケットサイズと受信間隔からなるデータに対して、最小二乗法を適用し、取得したデータに最も当てはまりの良い直線を算出する。例えば、可用帯域推定部304aは、図19に示すような直線401を算出する。
 可用帯域推定部304aは、最小二乗法により算出した直線の傾きの逆数を物理帯域として算出する。図19の例では、a1(a1は正の実数;直線401の傾き)の逆数が、帯域制限が実施されている場合のサーバ10と端末20の間のネットワークにおける物理帯域となる。
 あるいは、可用帯域推定部304aは、最小二乗法とは異なるカーブフィッティングにより可用帯域を推定してもよい。最小二乗法による物理帯域の推定値には、クロストラヒックによる生じる特異点の影響が含まれる。この点で、推定精度に関する改善の余地がある。
 以下、クロストラヒックにより生じる特異点の影響を回避するようなカーブフィッティングによる可用帯域の推定を説明する。
 初めに、可用帯域推定部304aは、傾きのない直線(X軸に平行な直線)が最初に受信間隔の値に接触するまで当該傾きのない直線をY軸の正の方向に移動する。例えば、図20の例では、直線402が上記傾きがなく、受信間隔の値に最初に接触する直線である。次に、可用帯域推定部304aは、上記直線が受信間隔の値に接触した点を中心に上記直線を回転し、最も多くの受信間隔の値を通過する直線を算出する。例えば、図20の例では、直線403が上記直線として算出される。
 可用帯域推定部304aは、算出した直線の傾きの逆数を物理帯域として算出する。図20の例では、a2(a2は正の実数;直線403の傾き)の逆数が、帯域制限が実施されている場合のサーバ10と端末20の間のネットワークにおける物理帯域となる。
 このように、可用帯域推定部304aは、複数のパケットペアそれぞれに関するパケットサイズ及び受信間隔からなるデータについて、パケットサイズに関する値をX軸の値、受信間隔に関する値をY軸の値にそれぞれ設定する。その後、可用帯域推定部304aは、傾きのない第1の直線を、受信間隔の最小値に到達するまでX軸からY軸の正の方向に移動する。その後、可用帯域推定部304aは、最小値に到達した直線(図20の直線402)が最も多くの受信間隔の値を通過するように最小値に到達した直線を最小値を中心に回転することで得られる第2の直線(図20の直線403)を算出する。第2の直線の傾きの逆数が物理帯域として算出される。
 第3の実施形態では、パケットトレインから得られるパケットペアのパケットサイズと受信間隔に対してカーブフィッティングを適用することで物理帯域を推定する。このように推定された物理帯域は、第1の実施形態の推定値よりも精度が良い。
 第1の実施形態では、1組のパケットサイズと受信間隔から物理帯域が推定されているが、第3の実施形態では複数組のパケットサイズと受信間隔から物理帯域が推定されるためである。とりわけ、X軸に平行に直線を移動させ、その後、当該直線を回転させる手法では、クロストラヒックによる特異点を回避できるため、より正確な物理帯域の推定値が得られる。
 なお、第1乃至第3の実施形態にて説明した通信システムや各装置の構成は例示であって、システム等の構成を限定する趣旨ではない。
 例えば、上記実施形態では、端末20を基準として下り回線の帯域を推定する場合について説明したが、上り回線の帯域を推定することも勿論可能である。この場合、図21に示すように、端末20からパケットトレインをサーバ10に向けて送信し、サーバ10にて可用帯域の推定を行えばよい。推定された可用帯域は、端末20に通知される。なお、上り回線を推定する場合には、端末20に「パケットトレイン送信機能」を実装し、サーバ10に「帯域制限有無判定機能」及び「可用帯域推定機能」を実装すればよい。これらの機能に関しては、上記実施形態にて説明した機能と同等とすることができるのでさらなる詳細な説明は省略する。
 また、上記説明から明らかなように、端末20を基準とした下り回線の可用帯域を推定する場合には、端末20が「受信機」となり、サーバ10が「送信機」となる。一方、上り回線の可用帯域を推定する場合には、端末20が「送信機」となり、サーバ10が「受信機」となる。つまり、図22(a)に示すように、通信システムは、送信機30と受信機31を含んで構成される。また、端末20を基準として上り回線と下り回線の可用帯域を推定する場合には、サーバ10及び端末20はそれぞれ送受信機32、送受信機33となる(図22(b)参照)。
 図2には、端末20が無線通信方式によりモバイルネットワークに接続する構成を記載しているが、端末20は、モバイルネットワークを介さず有線にてインターネットに接続される構成であってもよい。例えば、端末20は、パーソナルコンピュータ等の装置であって、ONU(Optical Network Unit;光回線終端装置)等を介してインターネットに接続されていてもよい。この場合、インターネットプロバイダによる帯域制限の実施も想定されるが、本願開示の通信システムではそのような帯域制限の実施有無も判定可能である。
 図2には、サーバ10と端末20によるサーバクライアントシステムを例示しているが、通信システムに含まれる装置は、端末とサーバの組み合わせに限定されない。例えば、複数の端末間にてビデオ会議を実施するような場合に、本願開示の可用帯域推定の手法を用いてもよい。
 上記実施形態では、サーバ10は端末20にサービスを提供する装置であることを前提としたが、サービスを提供しない装置を用いて可用帯域を推定してもよい。例えば、図23に示すように、パケットトレイン送信装置40をインターネット上に設置し、当該装置から端末20に向けてパケットトレインを送信する構成であってもよい。通常、無線区間(モバイルネットワーク)と有線区間(インターネット)の帯域を比較すると、無線区間の帯域が狭い場合が多い。このような前提(状況下)では、図23のサーバ10又はパケットトレイン送信装置40のいずれかの装置からパケットトレインを送信しても、当該パケットトレインは無線区間を通過するため実質的に同じ可用帯域の推定値が得られる。同様に、端末20を基準とした上り回線の可用帯域を推定する場合には、インターネット上に「可用帯域推定装置」を設置すればよいことは勿論である。
 上記実施形態では、時間の経過と共にパケットサイズが徐々に大きくなるパケットトレインを送受信する場合について説明したが、時間の経過と共にパケットサイズが徐々に小さくなるようなパケットトレインを送受信してもよい。
 上記実施形態では、特許文献2、3に開示されたパケットトレインを送受信する場合について説明したが、当該文献に開示されたパケットトレインとは異なる仕様のパケットトレインを送受信してもよい。例えば、特許文献2の非特許文献1として開示された「PathChirp」と称される手法のパケットトレインを送信してもよい。この場合、パケットサイズが一定で送信間隔が可変な複数のパケットが送受信される。あるいは、各パケットが、同じパケットサイズ及び送信間隔も同じであるような、パケットトレインが送受信されてもよい。即ち、帯域制限の実施有無に応じて受信機側で受信パケットの粗密が測れるようなパケットトレイン(複数のパケット)であれば、どのようなパケットトレインを送受信してもよい。
 但し、上記任意のパケットトレインの送受信は帯域制限の実施有無を判定する用途の観点から可能であるに過ぎず、最終的な可用帯域の推定まで考慮すれば、特許文献2、3に開示されたパケットトレインを送受信することに利点がある。特許文献2、3に開示された可用帯域推定手法は、上記PathChirp等の問題点を解消するものだからである。従って、PathChirp等のパケットトレインを送受信して帯域制限の実施有無を判定しても、その後の可用帯域推定時には、特許文献2、3に開示されたパケットトレインの送受信が必要な場合もある。
 上記実施形態では、パケットロス率や連続ロスパケット数の分散対平均比といったロス特性値に対する閾値処理によって帯域制限の実施有無を判定しているが、他の手法により帯域制限の実施有無を判定してもよい。例えば、受信パケットトレインの受信状況を可視化するような画像データを用意し、当該画像データを用いた機械学習(例えば、ディープラーニング)等により帯域制限の実施有無を判定してもよい。例えば、帯域制限の実施有無が予め判明している環境下において、帯域制限が実施されていない場合の受信パケットトレインを可視化する画像データ(例えば、図13の時刻T1以前の画像データ)を複数回に亘り取得する。同様に、帯域制限が実施されている場合の受信パケットトレインを可視化するデータ(例えば、図13の時刻T1~T2間の画像データ)を複数回に亘り取得する。当該取得した2種類の画像データを教師データとして学習モデルを形成し、得られた学習モデルに帯域制限の判定対象となる画像データを入力してもよい。つまり、受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定することは、ロス特性値を用いた閾値処理に限定されない。
 上記実施形態では、帯域制限の実施有無の判定に用いる閾値を予備実験にて決定し、その後、当該閾値を固定的に使用する場合について説明したが、使用する閾値は各種条件等に応じて変更してもよい。例えば、予備実験にて、時間帯ごとに最適な閾値が異なることが判明していれば、時間帯ごとに閾値を用意し、帯域制限の実施有無を判定する際の時間帯に応じた閾値を選択して閾値処理が実行されてもよい。
 上記実施形態では、1回のパケットトレインの送受信により帯域制限の実施有無の判定及び可用帯域の推定を行っているが、複数回のパケットトレインの送受信により当該判定及び推定を行ってもよい。例えば、図14を参照すると、帯域制限が行われていないと想定される時間帯(例えば、時刻T1以前)においてパケットロス率が突出している時間がある。このような突出した値に対し閾値判定を行うと、閾値の選択によっては誤判定が生じる可能性がある。このような誤判定を防止するため、複数回パケットトレインを送受信し、所定の数以上同じ判定が続いた場合に判定結果(帯域制限の実施、不実施)を確定してもよい。あるいは、奇数回パケットトレインを送受信し、多数決により判定結果を確定してもよい。
 あるいは、時間帯等の条件に応じて、送受信するパケットトレインの仕様を変更してもよい。例えば、早朝の時間帯に送受信するパケットトレインをなすパケットの総数と、昼間に送受信するパケットトレインをなすパケットの総数と、を変更するような形態であってもよい。あるいは、時間帯等の条件に応じて、帯域制限の実施有無の判定手法を切り替えてもよい。例えば、早朝の時間帯では、第1の実施形態にて説明したパケットロス率を用いた判定、昼間の時間帯では、第2の実施形態にて説明した連続ロスパケット数のVMRを用いた判定を使用する等の切り替えを行ってもよい。
 図3や図5に示すサーバ10、端末20の処理構成は例示であって、その構成を限定する趣旨ではないのは勿論である。例えば、図3に示す通信制御部201が、パケットトレインを生成し、送信するような構成であってもよい。
 また、上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、各実施形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態は、内容が相反しない範囲で組み合わせることができる。
 コンピュータの記憶部に可用帯域推定プログラムをインストールすることにより、コンピュータを可用帯域推定装置として機能させることができる。また、可用帯域推定プログラムをコンピュータに実行させることにより、コンピュータにより可用帯域推定方法を実行することができる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
 上述の第1の視点に係る受信機のとおりである。
[付記2]
 前記判定部は、
 前記送信されたパケットトレインをなすパケットのうち破棄されたパケットに関する特性値を算出し、
 前記特性値に対する閾値処理により前記帯域制限の実施有無を判定する、付記1の受信機。
[付記3]
 前記判定部は、
 前記パケットトレインとして送信されたパケットの総数に対する、前記パケットトレインとして送信されたパケットのうち破棄されたパケットの総数の割合を前記特性値として算出する、付記2の受信機。
[付記4]
 前記判定部は、
 前記送信されたパケットトレインをなすパケットのうち連続して破棄されたパケット数を要素として含むデータ列を算出し、
 前記算出されたデータ列の分散対平均比を前記特性値として算出する、付記2の受信機。
[付記5]
 前記推定部は、
 前記帯域制限が実施されている場合、前記受信したパケットトレインからパケットペアを生成し、前記生成したパケットペアから得られる情報に基づき前記ネットワークの物理帯域を算出し、前記算出した物理帯域を前記ネットワークの可用帯域の推定値とする、付記1乃至4のいずれか一に記載の受信機。
[付記6]
 前記推定部は、
 前記パケットペアをなす2つのパケットの少なくともいずれか一方のパケットサイズと、前記パケットペアをなす2つのパケット間の受信間隔と、に基づいて前記物理帯域を算出する、付記5の受信機。
[付記7]
 前記推定部は、
 前記受信したパケットトレインから複数のパケットペアを生成し、
 前記生成された複数のパケットペアそれぞれから前記物理帯域を算出し、
 前記算出された複数の物理帯域のうち最小の物理帯域を前記ネットワークの可用帯域の推定値とする、付記5又は6の受信機。
[付記8]
 前記推定部は、
 前記受信したパケットトレインから複数にパケットペアを生成し、
 前記生成された複数のパケットペアそれぞれに関して、パケットペアをなす2つのパケットの少なくともいずれか一方のパケットサイズとパケットペアをなす2つのパケット間の受信間隔とからなるデータに対してカーブフィッティングを行うことで前記物理帯域を算出する、付記5の受信機。
[付記9]
 前記推定部は
 前記パケットサイズ及び受信間隔からなるデータに対して最小二乗法を適用して得られる直線の傾きの逆数を前記物理帯域として算出する、付記8の受信機。
[付記10]
 前記推定部は、
 前記複数のパケットペアそれぞれに関するパケットサイズ及び受信間隔からなるデータについて、前記パケットサイズに関する値をX軸の値、前記受信間隔に関する値をY軸の値にそれぞれ設定し、
 傾きのない第1の直線を、前記受信間隔の最小値に到達するまでX軸からY軸の正の方向に移動し、前記最小値に到達した直線が最も多くの受信間隔の値を通過するように前記最小値に到達した直線を前記最小値を中心に回転することで得られる第2の直線を算出し、前記第2の直線の傾きの逆数を前記物理帯域として算出する、付記8の受信機。
[付記11]
 前記推定部は、
 前記帯域制限が不実施の場合、前記受信されたパケットトレインをなすパケットのうち、受信間隔が送信間隔よりも大きくなった最初のパケットを特定し、
 前記特定されたパケットの1つ前に送信されたパケットのパケットサイズと送信間隔とに基づいて、前記ネットワークの可用帯域を算出する、付記1乃至10のいずれか一に記載の受信機。
[付記12]
 前記送信機に対して、前記パケットトレインの送信を要求する、付記1乃至11のいずれか一に記載の受信機。
[付記13]
 上述の第2の視点に係る通信システムのとおりである。
[付記14]
 上述の第3の視点に係る可用帯域推定方法のとおりである。
[付記15]
 上述の第4の視点に係るプログラムを記憶した記憶媒体のとおりである。
 なお、付記13~付記15の形態は、付記1の形態と同様に、付記2の形態~付記12の形態に展開することが可能である。
 なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10 サーバ
20 端末
21 CPU(Central Processing Unit)
22 メモリ
23 入出力インターフェイス
24 無線通信回路
25 アンテナ
30 送信機
31、100 受信機
32、33 送受信機
40 パケットトレイン送信装置
101 受信部
102 判定部
103 推定部
201、301 通信制御部
202、302 帯域推定制御部
203 パケットトレイン生成部
303、303a 帯域制限有無判定部
304、304a 可用帯域推定部
401、402、403 直線

Claims (15)

  1.  送信機から送信される、複数のパケットからなるパケットトレインを受信する、受信部と、
     前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する、判定部と、
     前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、推定部と、
     を備える、受信機。
  2.  前記判定部は、
     前記送信されたパケットトレインをなすパケットのうち破棄されたパケットに関する特性値を算出し、
     前記特性値に対する閾値処理により前記帯域制限の実施有無を判定する、請求項1の受信機。
  3.  前記判定部は、
     前記パケットトレインとして送信されたパケットの総数に対する、前記パケットトレインとして送信されたパケットのうち破棄されたパケットの総数の割合を前記特性値として算出する、請求項2の受信機。
  4.  前記判定部は、
     前記送信されたパケットトレインをなすパケットのうち連続して破棄されたパケット数を要素として含むデータ列を算出し、
     前記算出されたデータ列の分散対平均比を前記特性値として算出する、請求項2の受信機。
  5.  前記推定部は、
     前記帯域制限が実施されている場合、前記受信したパケットトレインからパケットペアを生成し、前記生成したパケットペアから得られる情報に基づき前記ネットワークの物理帯域を算出し、前記算出した物理帯域を前記ネットワークの可用帯域の推定値とする、請求項1乃至4のいずれか一項に記載の受信機。
  6.  前記推定部は、
     前記パケットペアをなす2つのパケットの少なくともいずれか一方のパケットサイズと、前記パケットペアをなす2つのパケット間の受信間隔と、に基づいて前記物理帯域を算出する、請求項5の受信機。
  7.  前記推定部は、
     前記受信したパケットトレインから複数のパケットペアを生成し、
     前記生成された複数のパケットペアそれぞれから前記物理帯域を算出し、
     前記算出された複数の物理帯域のうち最小の物理帯域を前記ネットワークの可用帯域の推定値とする、請求項5又は6の受信機。
  8.  前記推定部は、
     前記受信したパケットトレインから複数にパケットペアを生成し、
     前記生成された複数のパケットペアそれぞれに関して、パケットペアをなす2つのパケットの少なくともいずれか一方のパケットサイズとパケットペアをなす2つのパケット間の受信間隔とからなるデータに対してカーブフィッティングを行うことで前記物理帯域を算出する、請求項5の受信機。
  9.  前記推定部は
     前記パケットサイズ及び受信間隔からなるデータに対して最小二乗法を適用して得られる直線の傾きの逆数を前記物理帯域として算出する、請求項8の受信機。
  10.  前記推定部は、
     前記複数のパケットペアそれぞれに関するパケットサイズ及び受信間隔からなるデータについて、前記パケットサイズに関する値をX軸の値、前記受信間隔に関する値をY軸の値にそれぞれ設定し、
     傾きのない第1の直線を、前記受信間隔の最小値に到達するまでX軸からY軸の正の方向に移動し、前記最小値に到達した直線が最も多くの受信間隔の値を通過するように前記最小値に到達した直線を前記最小値を中心に回転することで得られる第2の直線を算出し、前記第2の直線の傾きの逆数を前記物理帯域として算出する、請求項8の受信機。
  11.  前記推定部は、
     前記帯域制限が不実施の場合、前記受信されたパケットトレインをなすパケットのうち、受信間隔が送信間隔よりも大きくなった最初のパケットを特定し、
     前記特定されたパケットの1つ前に送信されたパケットのパケットサイズと送信間隔とに基づいて、前記ネットワークの可用帯域を算出する、請求項1乃至10のいずれか一項に記載の受信機。
  12.  前記送信機に対して、前記パケットトレインの送信を要求する、請求項1乃至11のいずれか一項に記載の受信機。
  13.  複数のパケットからなるパケットトレインを送信する、送信機と、
     前記送信されたパケットトレインを受信する、受信機と、
     を含み、
     前記受信機は、
     前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する、判定部と、
     前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、推定部と、
     を備える、通信システム。
  14.  送信機から送信される、複数のパケットからなるパケットトレインを受信する受信機において、
     前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定し、
     前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する、可用帯域推定方法。
  15.  送信機から送信される、複数のパケットからなるパケットトレインを受信する受信機に搭載されたコンピュータに、
     前記受信したパケットトレインに基づき、ネットワークにおける帯域制限の実施有無を判定する処理と、
     前記帯域制限の実施有無に関する判定結果に応じて、前記ネットワークの可用帯域を推定する方法を選択し、前記選択された方法により前記ネットワークの可用帯域を推定する処理と、
     を実行させるプログラムが格納された記憶媒体。
PCT/JP2018/045865 2017-12-15 2018-12-13 受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体 WO2019117246A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/770,485 US11303552B2 (en) 2017-12-15 2018-12-13 Receiver, communication system, available bandwidth estimation method, and storage medium in which program is stored
JP2019559197A JP6919721B2 (ja) 2017-12-15 2018-12-13 受信機、通信システム、可用帯域推定方法及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017240335 2017-12-15
JP2017-240335 2017-12-15

Publications (1)

Publication Number Publication Date
WO2019117246A1 true WO2019117246A1 (ja) 2019-06-20

Family

ID=66820366

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/045865 WO2019117246A1 (ja) 2017-12-15 2018-12-13 受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体

Country Status (3)

Country Link
US (1) US11303552B2 (ja)
JP (1) JP6919721B2 (ja)
WO (1) WO2019117246A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109905327B (zh) * 2017-12-11 2021-05-07 网宿科技股份有限公司 一种无线网络数据传输方法、发送端及接收端
US11153192B2 (en) * 2020-02-29 2021-10-19 Hewlett Packard Enterprise Development Lp Techniques and architectures for available bandwidth estimation with packet pairs selected based on one-way delay threshold values

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008199451A (ja) * 2007-02-15 2008-08-28 Kddi Corp 帯域制御装置及び方法
JP2013157958A (ja) * 2012-01-31 2013-08-15 Brother Ind Ltd 通信装置、通信方法、および通信プログラム
JP2017139521A (ja) * 2016-02-01 2017-08-10 日本電気株式会社 ストリーム配信装置、ストリーム受信装置、ストリーム配信システム、ストリーム配信方法、及びストリーム配信プログラム
WO2017199867A1 (ja) * 2016-05-16 2017-11-23 日本電気株式会社 通信装置、通信システム、通信方法、および通信用プログラムが記録された記録媒体

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5928574B2 (ja) 1980-05-02 1984-07-13 三菱化学株式会社 ポリオレフインの製造方法
JP4607108B2 (ja) * 2003-07-02 2011-01-05 エヌエックスピー ビー ヴィ 移動体通信システムにおける移動局の基地局との周波数同期のための方法及び装置
US7558202B2 (en) * 2006-03-16 2009-07-07 Microsoft Corporation Estimating available bandwidth with multiple overloading streams
JP2011188284A (ja) 2010-03-09 2011-09-22 Kddi Corp パケット群送信装置、可用帯域推定装置、可用帯域推定方法およびプログラム
JP2014068214A (ja) 2012-09-26 2014-04-17 Panasonic Corp 通信装置、通信システム及び送信レート決定方法
KR101455381B1 (ko) 2012-10-31 2014-11-03 삼성에스디에스 주식회사 단말기 및 이를 이용한 네트워크 모니터링 방법
US9444714B2 (en) * 2014-08-07 2016-09-13 Microsoft Technology Licensing, Llc Estimating bandwidth in a network
WO2017110675A1 (ja) 2015-12-25 2017-06-29 日本電気株式会社 受信装置、送信装置及び可用帯域推定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008199451A (ja) * 2007-02-15 2008-08-28 Kddi Corp 帯域制御装置及び方法
JP2013157958A (ja) * 2012-01-31 2013-08-15 Brother Ind Ltd 通信装置、通信方法、および通信プログラム
JP2017139521A (ja) * 2016-02-01 2017-08-10 日本電気株式会社 ストリーム配信装置、ストリーム受信装置、ストリーム配信システム、ストリーム配信方法、及びストリーム配信プログラム
WO2017199867A1 (ja) * 2016-05-16 2017-11-23 日本電気株式会社 通信装置、通信システム、通信方法、および通信用プログラムが記録された記録媒体

Also Published As

Publication number Publication date
JP6919721B2 (ja) 2021-08-18
US11303552B2 (en) 2022-04-12
JPWO2019117246A1 (ja) 2020-12-03
US20200389381A1 (en) 2020-12-10

Similar Documents

Publication Publication Date Title
JP6278492B2 (ja) ソフトウェア定義ネットワーキングにおける、トラフィックエンジニアリングのためのフレームワーク
Chua et al. Cloud radio access networks (C-RAN) in mobile cloud computing systems
WO2015138993A1 (en) System and method for dynamic effective rate estimation for real-time video traffic
KR102140398B1 (ko) 영상 처리 장치 및 영상 처리 방법
CN113329413B (zh) 用于高铁场景的多路径传输数据预调度方法及系统
EP3471354A1 (en) Method and apparatus for transmitting data in wireless communication system
WO2019117246A1 (ja) 受信機、通信システム、可用帯域推定方法及びプログラムを記憶した記憶媒体
WO2015064108A1 (ja) 通信装置及び通信装置におけるネットワーク利用可能帯域推定方法、並びにネットワーク利用可能帯域推定プログラムを記録した記憶媒体
US10512064B1 (en) Allocating wireless communication link resources in a control channel
WO2012114728A1 (ja) 送信データ処理方法、情報処理方法、送信装置、及び受信装置
US9521054B2 (en) Available bandwidth search range control method and available bandwidth search range control system
US10298475B2 (en) System and method for jitter-aware bandwidth estimation
US10855597B2 (en) Channel coding for real time wireless traffic
US11218910B2 (en) First node and a second node and methods of operating the same
US9578539B1 (en) Transmitting a data packet over a wireless communication link
KR101182550B1 (ko) 모바일 전송망의 대역폭 측정 시스템 및 그 방법
CN113453145A (zh) 一种预测空口状态的方法和无线覆盖设备
CN107733811B (zh) 一种动态调整编码强度的方法
CN113179534A (zh) 一种无线传输质量的评估方法和装置
CN114641078A (zh) 一种资源分配的动态调整方法、装置、存储介质及设备
CN113615291A (zh) 无线局域网(wlan)内用于速率选择和资源单元分配的系统和方法
KR20130050334A (ko) 홉 수를 이용한 전송 대역 할당 장치 및 그 방법
JP4766703B2 (ja) エッジノードおよび帯域制御方法
JP2023124012A (ja) 通信処理方法、プログラム、および、通信制御装置
CN114727308A (zh) 一种信息处理方法、装置、设备及可读存储介质

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019559197

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

Country of ref document: EP

Kind code of ref document: A1