WO2017119408A1 - 送信データ量制御装置、方法および記録媒体 - Google Patents

送信データ量制御装置、方法および記録媒体 Download PDF

Info

Publication number
WO2017119408A1
WO2017119408A1 PCT/JP2017/000006 JP2017000006W WO2017119408A1 WO 2017119408 A1 WO2017119408 A1 WO 2017119408A1 JP 2017000006 W JP2017000006 W JP 2017000006W WO 2017119408 A1 WO2017119408 A1 WO 2017119408A1
Authority
WO
WIPO (PCT)
Prior art keywords
data amount
transmission data
communication quality
congestion
amount control
Prior art date
Application number
PCT/JP2017/000006
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 JP2017560380A priority Critical patent/JPWO2017119408A1/ja
Priority to US16/067,882 priority patent/US10911359B2/en
Publication of WO2017119408A1 publication Critical patent/WO2017119408A1/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
    • 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/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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
    • H04L43/0835One way packet 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/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • H04L43/0841Round trip packet 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/0852Delays
    • H04L43/0864Round trip delays
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS

Definitions

  • the present invention relates to a transmission data amount control device, system, method and recording medium for controlling the data amount of transmission data.
  • a large-capacity buffer is provided in a base station device of a mobile network such as eNodeB in order to absorb the influence of band fluctuation in a wireless section.
  • a base station device of a mobile network such as eNodeB
  • eNodeB a mobile network
  • RLC Radio Link Control
  • ARQ Automatic Repeat Control reQuest
  • MAC Media Access Control
  • HARQ Hybrid ARQ
  • TCP Transmission Control Protocol
  • TCP NewReno Network congestion control
  • congestion window size congestion window size
  • packet loss occurs even when the network is not congested when the user terminal moves into the edge of a cell or behind a building or during handover processing as the user moves.
  • packet loss occurs, even if the network is not congested, cwnd is unnecessarily lowered to suppress the transmission data amount. Therefore, it leads to a decrease in TCP throughput, and the user's quality of experience is significantly impaired.
  • the method described in Non-Patent Document 3 estimates a queuing delay and calculates cwnd based on the queuing delay.
  • the upper limit value of the amount of data packets that can be transmitted (transmission data amount) is controlled so that the amount of data staying in the router on the transmission path falls within a certain range.
  • the estimation function estimates the difference between the round trip delay time of a packet and the minimum value of the round trip delay time in the same session as a queuing delay.
  • cwnd is exponentially increased when the queuing delay is almost zero, and based on the ratio between the round trip delay time and the minimum round trip delay time and the target value of cwnd otherwise.
  • cwnd network congestion is detected based on a queuing delay, so that it is possible to reduce a decrease in TCP throughput and a stop of data transmission and improve a user's quality of experience compared to a loss-based method.
  • Non-Patent Document 3 and Patent Document 2 are methods that are assumed to be applied to a network having a stable band such as a fixed network. For this reason, if these methods are applied to a network in which the radio band and the propagation delay change drastically as the user terminal moves or changes in radio field intensity, such as a mobile network, the upper limit value of the transmission data amount cannot be controlled appropriately.
  • Non-Patent Document 3 controls cwnd so that the amount of data staying in the router on the transmission path is within a certain range.
  • the appropriate amount of staying data increases or decreases depending on the fluctuation range of the radio band. For example, if the amount of staying data is less than the appropriate value, when the radio wave environment improves sharply and the amount of data that can be sent increases rapidly, the staying data is depleted and more data can be sent. There will be no data to send. That is, the use efficiency of the transmission band is deteriorated.
  • the amount of retained data is too large, data arrival at the terminal may be delayed or the start of another communication session may be delayed.
  • Non-Patent Document 3 cwnd is controlled without considering the change in the communication environment. Therefore, the use efficiency of the transmission band is deteriorated due to buffer depletion, and the delay is increased due to excessive data retention. May occur.
  • the amount of data staying in the transmission buffer of the terminal is estimated based on the throughput, and the transmission band is assigned based on the amount of staying data.
  • this method also considers only a limited increase / decrease in the amount of staying data due to changes in the communication environment. For this reason, there is a possibility that the transmission band utilization efficiency is deteriorated due to buffer depletion, and the delay is increased due to excessive data retention.
  • An object of the present invention is to control transmission data amount within an appropriate range in accordance with a change in communication environment, suppress deterioration of transmission band utilization efficiency, and improve user experience quality. It is an object to provide a quantity control apparatus, method, and recording medium.
  • the transmission data amount control apparatus of the present invention includes a communication quality acquisition unit that acquires network communication quality, a congestion level estimation unit that estimates the congestion level of the network, and the communication quality. And a target congestion degree determining means for determining a target congestion degree that is a target value of the congestion degree, and a transmission data amount determining means for determining a transmission data amount based on the congestion degree and the target congestion degree. To do.
  • the transmission data amount control method of the present invention obtains the communication quality of the network, estimates the congestion level of the network, determines a target congestion level that is a target value of the congestion level based on the communication quality, The transmission data amount is determined based on the congestion level and the target congestion level.
  • the transmission data amount control program recorded on the computer-readable recording medium of the present invention includes a communication quality acquisition function for acquiring a network communication quality in a computer and a congestion degree estimation function for estimating the congestion degree of the network.
  • a target congestion degree determination function that determines a target congestion degree that is a target value of the congestion degree based on the communication quality, and a transmission data amount determination function that determines a transmission data amount based on the congestion degree and the target congestion degree It is characterized by realizing.
  • the transmission data amount control device, method and recording medium of the present invention the transmission data amount is controlled within an appropriate range in accordance with changes in the communication environment, the deterioration of the transmission band utilization efficiency is suppressed, and the user experience quality is improved. It becomes possible to do.
  • FIG. 1 shows a configuration example of the transmission data amount control device 10 of this embodiment.
  • the transmission data amount control device 10 of this embodiment includes a communication quality acquisition unit 11, a congestion level estimation unit 12, a target congestion level determination unit 13, and a transmission data amount determination unit 14.
  • the communication quality acquisition unit 11 is a part that acquires network communication quality.
  • the congestion level estimation unit 12 is a part that estimates the congestion level of the network.
  • the target congestion degree determination unit 13 is a part that determines a target congestion degree that is a target value of the congestion degree based on the communication quality.
  • the transmission data amount determination unit 14 is a part that determines the transmission data amount based on the congestion level and the target congestion level.
  • the transmission data amount control device 10 determines a target congestion level that is a target value of the congestion level based on the communication quality, and transmits based on the congestion level and the target congestion level. Determine the amount of data.
  • the target congestion level can be determined according to the communication quality, and the transmission data amount can be determined according to the communication quality. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • FIG. 2 shows an example of the operation of the transmission data amount control device 10 of this embodiment.
  • the communication quality acquisition unit 11 of the transmission data amount control device 10 acquires the communication quality of the network (step S101). Further, the congestion level estimation unit 12 estimates the congestion level of the network (step S102). The target congestion degree determination unit 13 determines a target congestion degree that is a target value of the congestion degree based on the communication quality (step S103). Then, the transmission data amount determination unit 14 determines the transmission data amount based on the congestion level and the target congestion level (step S104).
  • the transmission data amount control device 10 By operating the transmission data amount control device 10 in this way, the transmission data amount is controlled within an appropriate range in accordance with fluctuations in the communication environment, the deterioration of the transmission band utilization efficiency is suppressed, and the user experience quality is improved. It becomes possible to do.
  • the target congestion level that is the target value of the congestion level is determined based on the communication quality, and the transmission data amount is determined based on the congestion level and the target congestion level.
  • FIG. 3 shows a configuration example of a transmission data amount control system using the transmission data amount control device 20 of the present embodiment.
  • the transmission data amount control device 20 is a data transmission device that establishes a connection such as TCP to the data reception device 60 and transmits the requested data.
  • a PC Personal Computer
  • a portable terminal corresponds to this.
  • the transmission data amount control device 20 can be, for example, an origin server that holds data requested by the user. Further, for example, a relay server device such as a cache server, a proxy server, or an edge server that is installed in a mobile network and terminates data communication between the origin server and the data receiving device 60 once can be used.
  • a relay server device such as a cache server, a proxy server, or an edge server that is installed in a mobile network and terminates data communication between the origin server and the data receiving device 60 once can be used.
  • the transmission data amount control device 20 may be arranged in the middle of a route through which the origin server transmits data to the data reception device 60. In that case, there may be another network or an origin server behind the transmission data amount control device 20 when viewed from the data reception device 60.
  • the data reception device 60 transmits a data request, receives a data packet, and transmits an ACK (ACKnowledgement) packet to the transmission data amount control device 20 via the network. Then, when the requested data is distributed from the transmission data amount control device 20 or the origin server, the distributed data is presented to the user.
  • ACK acknowledgement
  • FIG. 4 is a diagram illustrating a configuration example of the transmission data amount control device 20 of the present embodiment.
  • a data transmission / reception unit 25 is added to the transmission data amount control device 10 (FIG. 1).
  • the communication quality acquisition unit 11 is a part that acquires the communication quality of the network between the transmission data amount control device 20 and the data reception device 60.
  • the network is described as meaning a transmission path between the transmission data amount control device 20 and the data reception device 60.
  • the communication quality acquisition unit 11 acquires the communication quality used in any one or more of the subsequent congestion level estimation unit 12, the target congestion level determination unit 13, the transmission data amount determination unit 14, and the data transmission / reception unit 25.
  • the communication quality acquisition unit 11 acquires one or more of these pieces of information.
  • Round trip time (RTT) of communication between the transmission data amount control device 20 and the data reception device 60 -ACK packet reception time-ACK packet reception time interval (difference between the previous and current ACK packet reception times) -New amount of data that has been confirmed to be received by ACK packet-Data amount during transmission (data amount that has been transmitted and that has not been confirmed by ACK packet) ⁇ Maximum Segment Size (MSS)
  • RTT Round trip time
  • the observed values of the above information for a certain period in the past are stored, and any of cumulative values, average values, variances, standard deviations, maximum values, minimum values, or difference values between the maximum and minimum values of the observed values are stored.
  • One or more pieces of information may be acquired.
  • information obtained by adding statistical processing such as a filter method or exponential moving average that eliminates the influence of instantaneous fluctuations to the above information may be acquired.
  • the congestion level estimation unit 12 is a part that estimates the congestion level of the network between the transmission data amount control device 20 and the data reception device 60.
  • any index can be used as long as it can estimate the level of network congestion. For example, it is possible to determine that the network is congested as the amount of staying data related to the data transmitted by the wireless communication suppressing device 20 staying in the network device constituting the network increases. Therefore, it is possible to use the staying data amount regarding the data transmitted by the wireless communication suppressing device 20 as the congestion degree. In the present embodiment, a case where the amount of staying data is used as the degree of congestion will be described below.
  • FIG. 5 shows a configuration example of the congestion level estimation unit 12 when the staying data amount is used as the congestion level.
  • the congestion degree estimation unit 12 includes a non-staying data amount estimation unit 121 and a staying data amount estimation unit 122.
  • the non-staying data amount estimation unit 121 is a part that estimates the non-staying data amount.
  • Non-staying data is data transmitted through the network without staying in buffers existing in network devices such as routers, switches, gateway devices, and base station devices constituting the network.
  • the non-staying data amount estimation unit 121 estimates the non-staying data amount by, for example, calculating the product of the estimated value of the wireless band (band estimated value) and the estimated value of the propagation delay time (delay estimated value).
  • the transmitted data amount is the amount of data transmitted from the transmission data amount control device 20 to the data receiving device 60.
  • the reception confirmed data amount is the amount of data that has been confirmed to be received by the ACK packet received from the data receiving device 60.
  • a value obtained by subtracting the ACK received data amount from the transmitted data amount is the transmitting data amount. That is, the data amount in transmission is the data amount of data that has been transmitted from the transmission data amount control device 20 but has not yet received an ACK packet.
  • Data being transmitted can be divided into data that stays in the network device and data that stays in transit without staying. Since non-staying data is being transmitted, it can be considered that an ACK packet can be received before the propagation delay time. Therefore, in the non-staying data amount estimation unit 121 of the present embodiment, the data amount that has been confirmed to be received before the propagation delay time, that is, the product of the estimated value of the wireless band and the estimated value of the propagation delay time is calculated as the non-staying data amount.
  • the wireless band is the amount of transmission data per unit time. Specifically, it can be estimated by dividing the amount of data that has been confirmed to be received in a predetermined period by the elapsed time (reception time interval) required to receive the data.
  • the predetermined period may be a predetermined time interval or the number of received ACK packets.
  • the amount of data that has been confirmed to be received in a predetermined period can be estimated, for example, by calculating the amount of data that has been newly confirmed to be received by the ACK packet received by the data transmitting / receiving unit 25 in the predetermined period.
  • a value obtained by adding statistical processing such as exponential moving average to the data amount may be used as the data amount that has been confirmed to be received.
  • the reception time interval can be obtained, for example, by subtracting the reception time of the oldest ACK packet from the reception time of the newest ACK packet among the ACK packets received by the data transmitting / receiving unit 25 in a predetermined period. Further, a value obtained by adding statistical processing such as exponential moving average to the reception time interval may be used as the reception time interval.
  • the propagation delay time can be estimated by calculating the minimum value or exponential moving average value of the round-trip delay time of communication between the transmission data amount control device 20 and the data reception device 60.
  • the radio band fluctuates due to a change in the resource block allocation amount in the base station apparatus or a change in radio wave quality in the mobile network.
  • the propagation delay time varies depending on a delay related to a handover of a user terminal, retransmission related to ARQ technology in the RLC layer, and HARQ technology in the MAC layer. Therefore, a filter method that eliminates the influence of instantaneous fluctuations may be applied to the above-described band estimation value and / or delay estimation value.
  • the staying data amount estimation unit 122 is a part that calculates the staying data amount.
  • the staying data is data that stays in a buffer existing in a network device such as a router, a switch, a gateway device, or a base station device constituting the network.
  • the amount of staying data can be estimated by subtracting the amount of non-staying data estimated by the non-staying data amount estimation unit 121 from the amount of data being transmitted acquired by the communication quality acquisition unit 11, for example.
  • the congestion level as a value obtained by subtracting the non-retention data amount from the data amount transmitted within the past fixed period, with the congestion degree as the increase amount of the data being transmitted within the past fixed period.
  • Non-Patent Document 3 In a method that assumes a fixed network, such as the methods described in Non-Patent Document 3 and Patent Document 2, since the fluctuations in the radio band and propagation delay are not considered, the congestion degree of the mobile network cannot be estimated with high accuracy.
  • the method described in Patent Document 1 estimates the amount of staying data (congestion degree) based on the throughput of received data, for example, the amount of padding included in the received data. For this reason, the amount of staying data in a transmission state that does not include padding cannot be estimated. Therefore, the congestion degree cannot be accurately estimated for any of Non-Patent Document 3, Patent Document 1, and Patent Document 2.
  • the band estimation value and the delay estimation value are calculated according to the communication quality variation, and the congestion degree is calculated based on this. For this reason, it is possible to calculate the degree of congestion with high accuracy in accordance with fluctuations in communication quality.
  • the target congestion degree determination unit 13 is a part that determines a target congestion degree that is a target value of the congestion degree based on the communication quality.
  • the congestion level here, the same unit and scale index as the congestion level estimated by the above-described congestion level estimation unit 12 is used.
  • the target congestion level is a target congestion level when the transmission data amount determination unit 14 determines the upper limit value of the transmission data amount.
  • the degree of congestion For example, if the radio wave conditions suddenly improve and the amount of data that can be transmitted increases rapidly, if the amount of data staying in the network (the degree of congestion) is too low, the band can be transmitted but there is no data to transmit. A situation will occur. That is, the use efficiency of the transmission band is deteriorated. If there is a certain degree of network congestion, even if the amount of data that can be transmitted suddenly increases, it is possible to transmit the data that remains, so it is not possible to effectively use the transmission bandwidth that there is no data to send even though it can be transmitted. It is possible to reduce the state. On the other hand, if the degree of network congestion is too high, the quality of experience will deteriorate due to the delay in data arrival at the data receiving device or the start of another communication session. Therefore, by determining an appropriate target congestion level based on the amount of fluctuation in communication quality, it is possible to suppress deterioration in transmission band utilization efficiency and improve user experience quality.
  • the target congestion level of the network is increased according to the fluctuation amount of the communication quality.
  • the degree of network congestion increases, so that even if the amount of data that can be transmitted increases rapidly, the depletion of transmission data can be suppressed and the transmission band can be used more effectively.
  • the fluctuation amount of the communication quality is large, the fluctuation is also large. Therefore, by allowing delay to some extent and increasing the degree of congestion, the transmission band can be used more effectively and more data can be transmitted.
  • the target congestion level of the network is lowered according to the fluctuation amount of the communication quality.
  • the congestion degree of the network is lowered, and therefore the data delay can be reduced. Therefore, by increasing the target congestion level as the fluctuation amount of the communication quality increases, it is possible to suppress the deterioration of the transmission band utilization efficiency and improve the user's quality of experience.
  • the target congestion degree is increased as the communication quality fluctuation amount is larger.
  • the variance, standard deviation, or difference between the maximum value and the minimum value of the congestion degree estimated by the congestion degree estimation unit 12 in the past fixed period is set as the fluctuation amount, and the product of the fluctuation amount and a predetermined coefficient is set as the target congestion degree. Can do. In this way, it is possible to index the amount of change in communication quality and increase the target congestion level as the amount of change increases.
  • the difference between variance, standard deviation, or maximum and minimum values may be calculated by calculating.
  • the target congestion degree may be calculated based on a value obtained by calculating the exponential moving average for the fluctuation amount calculated a plurality of times.
  • the variance, standard deviation, or difference between the maximum value and the minimum value of the ACK packet reception interval in the past fixed period may be used as the fluctuation amount. For example, starting from a predetermined initial value, the increase amount of the target congestion degree is increased as the fluctuation amount is increased, and the increase amount of the target congestion degree is decreased as the fluctuation amount is decreased (the target congestion degree may be decreased).
  • the target congestion degree may be determined according to a broad monotonically increasing function. In this way, the target congestion level can be determined based on the fluctuation amount of the reception interval of the ACK packet.
  • the amount of fluctuation of the congestion degree is calculated by analyzing the degree of stability of the temporal change in the degree of congestion from the trend or correlation of multiple degrees of congestion over a certain period in the past, and the target degree of congestion is determined by the degree of stability (variation amount) You may do it.
  • the target congestion degree is determined according to a predetermined broad monotonic decreasing function in which the target congestion degree is decreased as the stability degree is high (small fluctuation amount) and the target congestion degree is increased as the stability degree is low (variation amount is large). May be.
  • the degree of stability may be calculated according to an existing stationary test method such as unit root test, cointegration test, or autocovariance analysis.
  • the target congestion level may be determined based on communication quality such as RTT and packet loss rate instead of the communication quality fluctuation amount. For example, starting from a predetermined initial value, the larger the RTT or packet loss rate, the smaller the increase in the target congestion degree (there may be a decrease in the target congestion degree), and the smaller the increase in the target congestion degree increase,
  • the target congestion degree may be determined according to a predetermined broad-sense monotone decreasing function. In this method, when the delay or the packet loss rate is large, it is considered that the possibility that the quality of experience is lowered is increased, and the target congestion degree is reduced. Therefore, it is possible to improve the user's quality of experience.
  • the transmission data amount determination unit 14 is a part that determines the transmission data amount based on the congestion level and the target congestion level.
  • the transmission data amount can be an upper limit value of the transmission data amount such as a congestion window size (cwnd), for example.
  • the upper limit value is a setting value (SO_SNDBUF) of the transmission buffer size of the communication connection, a memory size (tcp_wmem) usable for communication set as a system parameter, and a reception window size (RWIN) notified by the ACK packet. May be.
  • SO_SNDBUF setting value
  • tcp_wmem a memory size
  • RWIN reception window size
  • the degree of network congestion increases as the amount of transmission data increases. Therefore, when the congestion level is smaller than the target congestion level, the transmission data amount is increased. When the congestion level is higher than the target congestion level, the transmission data amount is decreased, so that the congestion level can be brought close to the target congestion level.
  • a value obtained by subtracting the congestion degree from the target congestion degree is multiplied by a predetermined coefficient (or a power of a predetermined index), and a value added to the current upper limit value is determined as a new upper limit value. In this way, it is possible to reduce the upper limit value of the transmission data amount when the congestion degree is larger than the target congestion degree, and to increase the upper limit value when the congestion degree is smaller than the target congestion degree.
  • a sum of one or more past histories obtained by subtracting the congestion degree from the target congestion degree may be multiplied by a predetermined coefficient, and a value added to the current upper limit value may be set as a new upper limit value.
  • the value obtained by subtracting the congestion degree from the target congestion degree is calculated by calculating the number of calculation or the unit change amount per time between the latest value and the past value for a predetermined calculation number or time, and multiplying by a predetermined coefficient.
  • a value added to the current upper limit value may be used as a new upper limit value.
  • a new upper limit value may be determined by combining any two or more of the above-described upper limit value determination methods.
  • the upper limit value when the upper limit value is cwnd, it may be combined with an existing TCP cwnd increase / decrease method such as CUBIC TCP (Non-patent Document 1) or TCP NewReno (Non-patent Document 2).
  • an existing TCP cwnd increase / decrease method such as CUBIC TCP (Non-patent Document 1) or TCP NewReno (Non-patent Document 2).
  • a function for adjusting the increase amount of cwnd to decrease the decrease amount as the value obtained by subtracting or dividing the congestion degree from the target congestion degree may be added to the existing increase / decrease method. By doing so, it becomes possible to bring the congestion level closer to the target congestion level earlier.
  • the data transmission / reception unit 25 is a part that transmits and receives data according to the transmission data amount (amount of data packets that can be transmitted) determined by the transmission data amount determination unit 14.
  • the data transmitter / receiver 25 transmits a data packet to the data receiver 60 via the network, and receives an acknowledgment (ACK) packet.
  • ACK acknowledgment
  • the transmission data amount control device 20 determines a target congestion level that is a target value of the congestion level based on the communication quality, and transmits based on the congestion level and the target congestion level. Determine the amount of data.
  • the target congestion level can be determined according to the communication quality, and the transmission data amount can be determined according to the communication quality. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • FIG. 7 shows an operation example of the transmission data amount control device 20 of the present embodiment. Steps S201 to S205 in FIG. 7 correspond to Steps S101 to S104 in FIG.
  • the communication quality acquisition unit 11 acquires the communication quality of the network when the data transmission / reception unit 25 receives an ACK packet from the data reception device 60 or at regular intervals (step S201). For example, the following communication quality is acquired. Round-trip delay time ACK packet reception time interval ACK packet reception time interval Data amount newly confirmed to be received by ACK packet Data amount being transmitted Non-retention data amount estimation unit 121 of congestion degree estimation unit 12 When the data transmitting / receiving unit 25 receives an ACK packet from the data receiving device 60 or at regular time intervals, the non-staying data amount is estimated based on the communication quality (step S202). Then, the staying data amount estimation unit 122 calculates the staying data amount and estimates the degree of congestion (step S203).
  • a bandwidth estimation value is calculated by dividing the amount of data that has been acknowledged by an ACK packet received during a predetermined period by the time required to receive the ACK packet. Further, the delay estimation value is calculated by calculating the minimum value of the round trip delay time or the exponential moving average value. Next, the non-staying data amount is calculated by multiplying the band estimation value and the delay estimation value. Then, an estimated value of the degree of congestion (the amount of staying data) is calculated by subtracting the amount of non-staying data from the amount of data being transmitted.
  • the target congestion level determination unit 13 determines the target congestion level based on the communication quality when the data transmission / reception unit 25 receives an ACK packet from the data reception device 60 or at regular intervals (step S204).
  • the target congestion degree is defined as a value obtained by multiplying the variance, standard deviation, or difference between the maximum value and the minimum value of the congestion degree estimated by the congestion degree estimation unit 12 by a predetermined coefficient. In this way, it is possible to index the amount of change in communication quality and increase the target congestion level as the amount of change increases.
  • the transmission data amount determination unit 14 determines the transmission data amount based on the congestion level and the target congestion level when the congestion level estimation unit 12 estimates the congestion level or at regular intervals (step S205).
  • a value obtained by subtracting the congestion degree from the target congestion degree is multiplied by a predetermined coefficient, and a value added to the upper limit value of the current transmission data amount is determined as a new upper limit value.
  • the upper limit value of the transmission data amount is reduced when the congestion level is larger than the target congestion level, and the upper limit value is increased when the congestion level is smaller than the target congestion level, so that the congestion level is changed to the target congestion level. It becomes possible to approach.
  • the data transmission / reception unit 25 When the data transmission / reception unit 25 receives a data request message from the data reception device 60, the data transmission / reception unit 25 transmits a packet of the requested data to the data reception device 60 according to the transmission data amount determined by the transmission data amount determination unit 14 (step) S206).
  • the data transmission / reception unit 25 transmits data according to the transmission data amount determined by the transmission data amount determination unit 14 because it holds all original data by itself. Can do.
  • the transmission data amount control device 20 is a relay server device
  • the original data may be stored in advance as a cache in its own storage area, or the data stream received from the origin server may be temporarily stored in a buffer.
  • the data transmission / reception unit 25 transmits data according to the transmission data amount determined by the transmission data amount determination unit 14 without depending on the throughput of the network between the origin server and the transmission data amount control device 20. It becomes possible.
  • the data reception device 60 transmits a data request to the transmission data amount control device 20 or the origin server via the network when a data acquisition request is made by the user. Further, when a data packet is received from the data transmission / reception unit 25 of the transmission data amount control device 20, an ACK packet corresponding to the data packet is transmitted to the data transmission / reception unit 25.
  • the transmission data amount control device 20 determines a target congestion level that is a target value of the congestion level based on the communication quality, and transmits based on the congestion level and the target congestion level. Determine the amount of data. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • the transmission data amount control device is a transmission data amount control device that uses a protocol different from TCP, such as UDP, and controls the transmission data amount by simulating the behavior of TCP in the transport layer or higher layer. Is also applicable.
  • the target congestion level that is the target value of the congestion level is determined based on the communication quality, and the congestion level and the target congestion level are determined.
  • the transmission data amount is determined based on the above. This makes it possible to determine the target congestion level according to the communication quality and to determine the transmission data amount according to the communication quality. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • the non-staying data amount is calculated from the band estimation value and the delay estimation value, and the congestion degree is calculated based on the non-staying data amount. For this reason, it is possible to calculate the congestion degree with high accuracy even in the mobile network, taking into account the influence of bandwidth fluctuation and delay fluctuation.
  • This embodiment is a mode in which a configuration for receiving communication quality information from a network device is added to the second embodiment.
  • FIG. 8 shows a configuration example of the transmission data amount control device 30 of the present embodiment.
  • the transmission data amount control device 30 has a configuration in which a communication quality reception unit 36 is added to the transmission data amount control device 20 of the second embodiment.
  • FIG. 9 shows an example of a transmission data amount control system using the transmission data amount control device 30 of this embodiment.
  • the transmission data amount control device 30 and the data reception device 60 communicate via the network 70.
  • the network 70 includes a communication quality notification device 50.
  • the communication quality notification device 50 is a network device constituting the network 70.
  • Gateway devices include SGSN (Serving GPRS Support Node) / S-GW (Serving Gateway), GGSN (Gateway GPRS Support Node) / P-GW (Packet Data Network Gateway), Evolved Packet Core Core Gateway, Security Gateway, and the like.
  • the communication quality notification unit 51 of the communication quality notification device 50 is a part that acquires the communication quality of the network and notifies the communication quality information to the communication quality reception unit 36 of the transmission data amount control device 30.
  • the communication quality receiving unit 36 of the transmission data amount control device 30 is a part that receives communication quality information from the communication quality notification unit 51 of the communication quality notification device 50.
  • the communication quality acquisition part 11 acquires communication quality from the communication quality information which the communication quality receiving part 36 received in addition to acquiring the communication quality of a network similarly to 2nd embodiment.
  • the congestion level estimation unit 12 estimates the network congestion level based on the communication quality acquired by the communication quality acquisition unit 11.
  • the communication quality acquired by the communication quality notification unit 51 is, for example, the amount of data actually retained in the buffer existing in the communication quality notification device 50 (actual retention data amount). Further, the actual staying data amount for each of the data receiving devices 60 obtained by measuring the actual staying data amount for each of the plurality of data receiving devices 60 may be acquired as the communication quality.
  • the communication quality may be an indicator of radio wave conditions such as SINR (Signal-to-Interference-plus Noise-to-Ratio), CQI (Channel-to-Quality Indicator), RSSI (Received-to-Signal-to-Strength-to-Indicator), ASU (Arbitrary to Strength-to-Unit).
  • SINR Signal-to-Interference-plus Noise-to-Ratio
  • CQI Channel-to-Quality Indicator
  • RSSI Receiveived-to-Signal-to-Strength-to-Indicator
  • ASU Averagerbitrary to Strength-to-Unit
  • it may be the transmission throughput for every data reception device 60 or in all communication sessions passing through the communication quality notification device 50, or the statistical value thereof.
  • it may be the amount of radio wave resource used for each data reception device 60 or in all communication sessions passing through the communication quality notification device 50, or a statistical value thereof.
  • it may be the implementation history of the
  • the communication quality notification device 50 transmits the transmission data amount control device 30.
  • the communication quality information can be notified to.
  • the communication quality notification unit 51 transmits the communication quality information in the header of the ACK packet when the ACK packet transmitted from the data reception device 60 to the transmission data amount control device 30 passes through the communication quality notification device 50. Embed.
  • the communication quality receiving unit 36 acquires the communication quality information from the header of the ACK packet.
  • the communication quality information notification method may be, for example, a method of using a communication session different from the communication session established between the transmission data amount control device 30 and the data reception device 60. Specifically, a notification session for notifying communication quality information is newly established between the communication quality notification unit 51 and the communication quality reception unit 36. Then, the communication quality notifying unit 51 notifies the communication quality receiving unit 36 of the communication quality information using the notification session. In addition, the communication quality receiving unit 36 determines which of the communication sessions in which one or more received communication quality information is present.
  • the congestion level estimation unit 12 uses the actual staying data amount acquired by the communication quality acquisition unit 11 for each data reception device 60 or in all communication sessions passing through the communication quality notification device 50 as the congestion level. It is possible. In this way, the actual staying data amount can be used as the congestion level, so that the congestion level can be estimated with higher accuracy.
  • the congestion level estimation unit 12 increases the amount of data being transmitted acquired by the communication quality acquisition unit 11 from the time when the previous congestion level was estimated (a negative value when the amount of data being transmitted decreases), The value added to the actual staying data amount at the time when the previous congestion level was estimated may be used as the congestion level. In this case, when communication quality information is lost for some reason, or when the communication quality information reception frequency is lower than the congestion frequency estimation frequency, and the actual staying data amount has not been updated since the time when the previous congestion level was estimated However, it is possible to estimate the amount of staying data.
  • the transmission data amount control device 30 determines a target congestion level that is a target value of the congestion level based on the communication quality, and transmits based on the congestion level and the target congestion level. Determine the amount of data.
  • the target congestion level can be determined according to the communication quality, and the transmission data amount can be determined according to the communication quality. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • the transmission data amount control device of the present embodiment receives communication quality information, for example, actual staying data amount from the communication quality notification device. Therefore, the amount of staying data can be estimated more accurately than the method of estimating the amount of staying data by estimating the amount of non-staying data. This makes it possible to estimate the degree of congestion more accurately and to determine the transmission data amount more appropriately.
  • step S301 and step S302 are added, and step S202 of FIG. 7 is deleted.
  • the communication quality notification unit 51 of the communication quality notification device 50 acquires communication quality that can be acquired by the communication quality notification unit 51.
  • the communication quality information is notified to the communication quality receiving unit 36 of the transmission data amount control device 30 when the communication quality changes due to input / output of a data packet, movement of the user terminal, passage of time, etc., or at regular intervals. .
  • the amount of data actually retained in the buffer existing in the communication quality notification device 50 as the communication quality is acquired, and the communication quality information is notified.
  • the communication quality acquiring unit 11 acquires the communication quality from the received communication quality information (step S302). For example, the actual staying data amount is acquired.
  • the communication quality information is received from each of them, and the actual staying data amount is acquired.
  • the communication quality acquisition unit 11 acquires the communication quality of the network when the data transmission / reception unit 25 receives an ACK packet from the data reception device 60 or at regular intervals (step S303). If the communication quality information received from the communication quality notification device 50 includes all the communication quality required by the congestion level estimation unit 12, the target congestion level determination unit 13, and the transmission data amount determination unit 14, No action is necessary.
  • the congestion level estimation unit 12 determines the congestion level of the network based on the communication quality acquired by the communication quality acquisition unit 11 when the data transmission / reception unit 25 receives an ACK packet from the data reception device 60 or at regular intervals. Estimate (step S304). For example, the congestion level estimation unit 12 sets the actual staying data amount acquired by the communication quality acquisition unit 11 as the congestion level. When there are a plurality of communication quality notification devices 50, the total of the acquired actual staying data amount is set as the congestion level.
  • the target congestion level determination unit 13 determines the target congestion level based on the amount of change in communication quality when the data transmission / reception unit 25 receives an ACK packet from the data reception device 60 or at regular time intervals (step) S305).
  • the target congestion degree is determined by the variance of the congestion degree estimated by the congestion degree estimation unit 12, the standard deviation, or a value obtained by multiplying the difference between the maximum value and the minimum value by a predetermined coefficient.
  • the transmission data amount determination unit 14 determines the transmission data amount based on the congestion level and the target congestion level when the congestion level estimation unit 12 estimates the congestion level or at regular intervals (step S306). For example, a value obtained by subtracting the congestion degree from the target congestion degree is multiplied by a predetermined coefficient, and a value added to the upper limit value of the current transmission data amount is determined as a new upper limit value of the transmission data amount.
  • the data transmission / reception unit 25 When the data transmission / reception unit 25 receives a data request message from the data reception device 60, the data transmission / reception unit 25 transmits a packet of the requested data to the data reception device 60 according to the transmission data amount determined by the transmission data amount determination unit 14 (step) S307).
  • the transmission data amount control device 30 By operating the transmission data amount control device 30 in this way, the transmission data amount is controlled within an appropriate range in accordance with fluctuations in the communication environment, the deterioration of the transmission band utilization efficiency is suppressed, and the user experience quality is improved. It becomes possible to do.
  • the target congestion level that is the target value of the congestion level is determined based on the communication quality, and the congestion level and The transmission data amount is determined based on the target congestion degree. For this reason, it is possible to control the transmission data amount within an appropriate range according to the change in the communication environment, suppress the deterioration of the utilization efficiency of the transmission band, and improve the user's quality of experience.
  • the transmission data amount control device of the present embodiment receives communication quality information, for example, actual staying data amount from the communication quality notification device. This makes it possible to estimate the degree of congestion more accurately and to determine the transmission data amount more appropriately.
  • the transmission data amount control device may be realized using at least two information processing devices physically or functionally.
  • the transmission data amount control device may be realized as a dedicated device. Moreover, you may implement
  • FIG. 11 is a diagram schematically showing a hardware configuration example of an information processing apparatus capable of realizing the transmission data amount control apparatus of each embodiment of the present invention.
  • the information processing device 80 includes a communication interface 81, an input / output interface 82, an arithmetic device 83, a storage device 84, a nonvolatile storage device 85, and a drive device 86.
  • the communication interface 81 is a communication means for the transmission data amount control device of each embodiment to communicate with an external device in a wired or / and wireless manner.
  • the transmission data amount control device is realized by using at least two information processing devices, the devices may be connected so as to be able to communicate with each other via the communication interface 81.
  • the input / output interface 82 is a man-machine interface such as a keyboard which is an example of an input device and a display as an output device.
  • the calculation device 83 is a calculation processing device such as a general-purpose CPU (Central Processing Unit) or a microprocessor.
  • the arithmetic device 83 can read, for example, various programs stored in the nonvolatile storage device 85 to the storage device 84 and execute processing according to the read programs.
  • the storage device 84 is a memory device such as a RAM (Random Access Memory) that can be referred to from the arithmetic device 83, and stores programs, various data, and the like.
  • the storage device 84 may be a volatile memory device.
  • the non-volatile storage device 85 is a non-volatile storage device such as a ROM (Read Only Memory) and a flash memory, and can record various programs and data.
  • the drive device 86 is, for example, a device that processes reading and writing of data with respect to a recording medium 87 described later.
  • the recording medium 87 is an arbitrary recording medium capable of recording data, such as an optical disk, a magneto-optical disk, and a semiconductor flash memory.
  • the information processing apparatus 80 illustrated in FIG. 11 constitutes a transmission data amount control device, and the functions described in the above embodiments can be realized for this transmission data amount control device. It may be realized by supplying a simple program.
  • the embodiment can be realized by the arithmetic unit 83 executing the program supplied to the transmission data amount control device. It is also possible to configure some of the functions of the information processing apparatus 80 instead of all of the transmission data amount control apparatus.
  • the program may be recorded in the recording medium 87 so that the program is appropriately stored in the nonvolatile storage device 85 at the shipping stage or operation stage of the transmission data amount control device.
  • the program supply method a method of installing in the transmission data amount control apparatus using an appropriate jig in a manufacturing stage before shipment or an operation stage may be adopted.
  • the program supply method may employ a general procedure such as a method of downloading from the outside via a communication line such as the Internet.
  • Communication quality acquisition means for acquiring network communication quality
  • a congestion degree estimating means for estimating the congestion degree of the network
  • Target congestion degree determining means for determining a target congestion degree that is a target value of the congestion degree based on the communication quality
  • a transmission data amount control device comprising: a transmission data amount determination unit that determines a transmission data amount based on the congestion level and the target congestion level.
  • the transmission data amount determination means increases the transmission data amount when the congestion level is smaller than the target congestion level, and decreases the transmission data amount when the congestion level is higher than the target congestion level.
  • the transmission data amount control device according to attachment 1.
  • the upper limit value is notified by a congestion window size (cwnd), a communication connection transmission buffer size setting value (SO_SNDBUF), a memory size available for communication set as a system parameter (tcp_wmem), and an ACK (ACKnowledgement) packet.
  • the transmission data amount control device according to appendix 3, wherein the transmission data amount control device is a reception window size (RWIN).
  • the communication quality includes a round-trip delay time and / or a packet loss rate.
  • the target congestion degree determination unit decreases the target congestion degree as the round-trip delay time or the packet loss rate increases.
  • the transmission data amount control device according to any one of appendix 4.
  • the amount of fluctuation is the variance, standard deviation, or the minimum value subtracted from the congestion degree in the past fixed period or the value obtained by removing the abnormal value from the congestion degree in the past fixed period by statistical processing.
  • the transmission data amount control device according to appendix 7, wherein the transmission data amount control device is a value.
  • the supplementary note 7 is characterized in that the target congestion degree determining means calculates the amount of fluctuation by analyzing a degree of stability of temporal change in the congestion degree from a tendency or correlation of the congestion degree in a past fixed period. Transmission data amount control device.
  • the degree of congestion is the amount of staying data that stays in the network equipment constituting the network
  • the congestion degree estimation means includes: Non-staying data amount estimation means for estimating the non-staying data amount based on the communication quality; From the appendix 1, characterized by comprising: a staying data amount estimating means for calculating the staying data amount by subtracting the non-staying data amount from the transmitting data amount obtained by subtracting the reception confirmed data amount from the transmitted data amount.
  • the transmission data amount control device according to any one of appendix 9.
  • the non-residual data amount estimation means calculates an increase amount of the reception confirmed data amount in a predetermined period, calculates a band estimation value by dividing the increase amount by an elapsed time of the predetermined period, 11.
  • the transmission data according to appendix 10 wherein a delay estimation value is calculated based on a minimum value of a round trip delay time, and the non-staying data amount is calculated by multiplying the band estimation value and the delay estimation value.
  • the non-dwelling data amount estimation means applies the filter method for eliminating the influence of instantaneous fluctuations to the band estimation value or / and the delay estimation value, and then the band estimation value and the delay estimation value, The transmission data amount control device according to appendix 11, wherein the multiplication is performed.
  • Communication quality receiving means for receiving communication quality information for notifying the communication quality, The transmission data amount control device according to any one of Supplementary Note 1 to Supplementary Note 9, wherein the communication quality acquisition unit acquires the communication quality from the communication quality information.
  • the communication quality includes an actual staying data amount staying in a network device configuring the network, The transmission data amount control device according to appendix 13, wherein the congestion degree estimation means uses the actual staying data amount as the congestion degree.
  • the communication quality acquisition means acquires the transmitted data amount and the reception confirmed data amount
  • the congestion level estimation means is the amount of increase in data volume during transmission obtained by subtracting the received data volume from the transmitted data volume from the time when the congestion level was previously estimated, and the time when the congestion level was previously estimated.
  • the transmission data amount control device according to appendix 14, wherein the congestion degree is estimated by adding to the actual staying data amount.
  • a communication quality notification device comprising: communication quality notification means for acquiring communication quality of a network and transmitting communication quality information for notifying the communication quality.
  • the communication quality is the actual amount of staying data actually staying in the buffer existing in itself, the value obtained by measuring the amount of staying actual data for each data receiving device, the indicator of the radio wave condition, for each data receiving device, or , Any one or more of transmission throughput, radio wave resource usage or code modulation system implementation history, number of users or communication sessions with which it is communicating, in all communication sessions passing through itself
  • the communication quality notification device according to supplementary note 16, characterized by comprising:
  • Appendix 18 The transmission data amount control device according to any one of appendix 1 to appendix 17, and A data receiving device that receives the data packet transmitted by the transmission data amount control device and transmits an ACK packet for the data packet;
  • the transmission quality control system wherein the communication quality includes a reception time or / and a reception interval of the ACK packet.
  • a transmission data amount control method comprising: determining a transmission data amount based on the congestion level and the target congestion level.
  • Appendix 22 The transmission data amount according to appendix 21, wherein the transmission data amount is increased when the congestion level is smaller than the target congestion level, and the transmission data amount is decreased when the congestion level is higher than the target congestion level. Control method.
  • the upper limit value is notified by a congestion window size (cwnd), a communication connection transmission buffer size setting value (SO_SNDBUF), a memory size available for communication set as a system parameter (tcp_wmem), and an ACK (ACKnowledgement) packet.
  • a congestion window size cwnd
  • SO_SNDBUF communication connection transmission buffer size setting value
  • tcp_wmem a memory size available for communication set as a system parameter
  • ACK ACKnowledgement
  • the communication quality includes a round-trip delay time and / or a packet loss rate.
  • the transmission data amount control method decreases the target congestion degree as the round-trip delay time or the packet loss rate increases. 25.
  • the transmission data amount control method according to any one of appendix 24 to appendix 24.
  • the amount of fluctuation is the variance, standard deviation, or the minimum value subtracted from the congestion degree in the past fixed period or the value obtained by removing the abnormal value from the congestion degree in the past fixed period by statistical processing.
  • (Appendix 29) 28 The transmission data amount control method according to appendix 27, wherein the fluctuation amount is calculated by analyzing a degree of stability of a temporal change in the congestion degree from a tendency or correlation of the congestion degree in a past fixed period.
  • the degree of congestion is the amount of staying data that stays in the network equipment constituting the network
  • the transmission data amount control method includes: Estimating the amount of non-resident data based on the communication quality, The supplementary data amount is calculated by subtracting the non-residual data amount from the transmitted data amount obtained by subtracting the reception confirmed data amount from the transmitted data amount. Transmission data amount control method.
  • Appendix 31 Calculate an increase amount of the received data amount for a predetermined period, divide the increase amount by an elapsed time of the predetermined period to calculate a band estimation value, and based on the minimum value of the round trip delay time of the predetermined period 31.
  • Appendix 33 Receiving communication quality information notifying the communication quality; The transmission data amount control method according to any one of appendix 21 to appendix 29, wherein the communication quality is acquired from the communication quality information.
  • the communication quality includes an actual staying data amount staying in a network device configuring the network, 34.
  • (Appendix 35) Get the amount of data sent and received data, The amount of data being transmitted that is obtained by subtracting the amount of data that has been confirmed to be received from the amount of data that has already been transmitted, from the time when the degree of congestion was estimated last time, is the amount of actual staying data at the time that the degree of congestion was estimated last time.
  • a communication quality notification method comprising: acquiring communication quality of a network and transmitting communication quality information for notifying the communication quality.
  • the communication quality is the actual amount of staying data actually staying in the buffer existing in itself, the value obtained by measuring the amount of staying actual data for each data receiving device, the indicator of the radio wave condition, for each data receiving device, or , Any one or more of transmission throughput, radio wave resource usage or code modulation system implementation history, number of users or communication sessions with which it is communicating, in all communication sessions passing through itself
  • the communication quality notification method according to attachment 36 further comprising:
  • Communication quality acquisition function to acquire network communication quality
  • a congestion degree estimation function for estimating the congestion degree of the network
  • a target congestion level determination function for determining a target congestion level that is a target value of the congestion level based on the communication quality
  • a transmission data amount control program that realizes a transmission data amount determination function that determines a transmission data amount based on the congestion level and the target congestion level.
  • the transmission data amount determination function increases the transmission data amount when the congestion level is smaller than the target congestion level, and decreases the transmission data amount when the congestion level is higher than the target congestion level.
  • the transmission data amount control program according to attachment 38.
  • the upper limit value is notified by a congestion window size (cwnd), a communication connection transmission buffer size setting value (SO_SNDBUF), a memory size available for communication set as a system parameter (tcp_wmem), and an ACK (ACKnowledgement) packet.
  • cwnd congestion window size
  • SO_SNDBUF communication connection transmission buffer size setting value
  • tcp_wmem memory size available for communication set as a system parameter
  • ACK ACKnowledgement
  • the communication quality includes a round-trip delay time or / and a packet loss rate.
  • the target congestion degree determination function reduces the target congestion degree as the round-trip delay time or the packet loss rate increases.
  • the amount of fluctuation is the variance, standard deviation, or the minimum value subtracted from the congestion degree in the past fixed period or the value obtained by removing the abnormal value from the congestion degree in the past fixed period by statistical processing. 45.
  • the transmission data amount control program according to appendix 44 which is a value.
  • the supplementary note 44 wherein the target congestion degree determination function calculates the fluctuation amount by analyzing a degree of stability of the congestion degree over time from a tendency or correlation of the congestion degree in a past fixed period. Transmission data amount control program.
  • the degree of congestion is the amount of staying data that stays in the network equipment constituting the network
  • the congestion degree estimation function is A non-resident data amount estimation function for estimating a non-resident data amount based on the communication quality;
  • a retention data amount estimation function for calculating the staying data amount by subtracting the non-staying data amount from the transmitted data amount obtained by subtracting the reception confirmed data amount from the transmitted data amount is characterized by: 47.
  • the transmission data amount control program according to any one of appendix 38 to appendix 46.
  • the non-staying data amount estimation function calculates an increase amount of the reception confirmed data amount in a predetermined period, calculates a band estimation value by dividing the increase amount by an elapsed time of the predetermined period, 48.
  • the transmission data according to appendix 47 wherein a delay estimation value is calculated based on a minimum round-trip delay time, and the non-staying data amount is calculated by multiplying the band estimation value and the delay estimation value. Quantity control program.
  • the non-dwelling data amount estimation function applies the filter method for eliminating the influence of instantaneous fluctuations to the band estimation value or / and the delay estimation value, and then the band estimation value and the delay estimation value 49.
  • the computer realizes a communication quality reception function for receiving communication quality information for notifying the communication quality, 47.
  • the transmission data amount control program according to any one of appendix 38 to appendix 46, wherein the communication quality acquisition function acquires the communication quality from the communication quality information.
  • the communication quality includes an actual staying data amount staying in a network device configuring the network, The transmission data amount control program according to appendix 50, wherein the congestion degree estimation function sets the actual staying data amount as the congestion degree.
  • the communication quality acquisition function acquires the transmitted data amount and the reception confirmed data amount
  • the congestion level estimation function is a time point when the congestion level is estimated last time, an amount of increase in data volume during transmission obtained by subtracting the received data volume from the transmitted data volume from the time when the congestion level was previously estimated. 52.
  • a communication quality notification program for realizing a communication quality notification function for acquiring communication quality of a network and transmitting communication quality information for notifying the communication quality.
  • the communication quality is the actual amount of staying data actually staying in the buffer existing in itself, the value obtained by measuring the amount of staying actual data for each data receiving device, the indicator of the radio wave condition, for each data receiving device, or , Any one or more of transmission throughput, radio wave resource usage or code modulation system implementation history, number of users or communication sessions with which it is communicating, in all communication sessions passing through itself 54.
  • the communication quality notification program according to appendix 53 comprising:
  • Appendix 55 A computer-readable recording medium on which the transmission data amount control program according to any one of appendix 38 to appendix 52 is recorded.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することを可能とするため、ネットワークの通信品質を取得し、前記ネットワークの混雑度を推定し、前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定し、前記混雑度と前記目標混雑度に基づき送信データ量を決定する。

Description

送信データ量制御装置、方法および記録媒体
 本発明は、送信データのデータ量を制御する、送信データ量制御装置、システム、方法および記録媒体に関する。
 近年、インターネットの回線容量の向上や多様なメディアの情報を扱う要素技術の整備に伴い、リッチメディアによる情報配信をモバイル端末から、いつでもどこでも楽しめるようになってきた。こうしたライフスタイルは広く浸透してきており、その情報配信を支える高速なモバイル環境として、LTE(Long Term Evolution)やLTE-A(LTE Advanced)といったモバイル通信技術が普及し拡大しつつある。
 LTEなどの高速モバイル通信環境においては、無線区間における帯域変動の影響を吸収するため、eNodeBなどのモバイルネットワークの基地局装置に大容量のバッファが設けられている。また、RLC(Radio Link Control)層におけるARQ(Automatic Repeat reQuest)技術やMAC(Media Access Control)層におけるHARQ(Hybrid ARQ)技術では、無線区間でビットエラーが発生した場合に下位層で再送を行ってデータを修復する。そのため、ネットワーク層より上位の層ではパケットの破損はほとんど発生しなくなってきている。
 一方、有線、無線のいずれのデータ通信においても広く用いられているトランスポート層プロトコルであるTCP(Transmission Control Protocol)では、ロスベースの輻輳制御方式が多く使用されている。ロスベースの輻輳制御方式は、CUBIC TCP(非特許文献1)やTCP NewReno(非特許文献2)に代表されるように、パケットロスを検知した際に輻輳(ネットワークの混雑)が発生したと判断して送信レートを低下させる方式である。
 前述のように、近年のモバイル通信ではビットエラーに伴うパケットの破損が発生しにくい。そのため、ロスベースの輻輳制御方式を用いるTCPでは、バッファがあふれることによってパケットロスが発生するまで送信レート、たとえば、輻輳ウィンドウサイズ(congestion window size、cwnd)の増加を続けることになる。
 cwndが膨大になってからパケットロスが発生すると、ロスしたパケットの再送後に続けて送信可能なデータ量が少なくなるため、データ送信が停止する可能性がある。パケットロスに伴ってデータ送信が停止すると、TCPスループットの低下や、映像や音声などのストリーミングコンテンツの再生途絶などが発生し、ユーザの体感品質が著しく損なわれてしまう。
 また、モバイル通信では、ユーザの移動に伴い、ユーザ端末がセルの端や建物の陰に入った際や、ハンドオーバの処理の最中などに、ネットワークが混雑していなくてもパケットロスが発生することがある。しかし、ロスベースの輻輳制御方式では、パケットロスが発生したとき、ネットワークが混雑していなくても、不必要にcwndを低下させて送信データ量を抑制してしまう。そのため、TCPスループットの低下に繋がり、ユーザの体感品質が著しく損なわれてしまう。
 このようなロスベースの輻輳制御方式に対し、非特許文献3に記載の方法ではキューイング遅延を推定し、キューイング遅延に基づきcwndを算出している。この方法は、伝送路上のルータに滞留するデータ量が一定範囲になるよう、送信可能なデータパケットの量(送信データ量)の上限値を制御している。この方法では、TCPによる通信を実施しながら、estimation機能によって、パケットの往復遅延時間と同一セッション内における往復遅延時間の最小値との差をキューイング遅延として推定する。そして、window control機能によって、キューイング遅延がほぼ0の場合はcwndを指数的に増加させ、それ以外の場合は、往復遅延時間と往復遅延時間の最小値との比率およびcwndの目標値に基づいてcwndを算出する。この方法では、キューイング遅延によってネットワークの輻輳を検知するため、ロスベースの方式に比べてTCPスループットの低下やデータ送信の停止を軽減し、ユーザの体感品質を向上することが可能になる。
 また、特許文献1に記載の方法では、端末から基地局へデータを送信する場合において、基地局が受信したデータのスループットに基づいて端末の送信バッファに滞留するデータ量を推定し、滞留データ量に基づいて送信帯域を割り当てている。また、特許文献2に記載の方法では、cwndの最適値がネットワーク帯域と往復遅延時間の積であるとし、現用系と予備系の往復遅延時間あるいは帯域の変化率に基づいて経路切り替え後のcwndを決定している。
特開2013-223181号公報 特開2013-191931号公報
Sangtae Ha、外2名、"CUBIC:A New TCP-Friendly High-Speed TCP Variant"、Proceedings of the ACM SIGOPS、2008年7月、vol.42、no.5、p.64-74 S.Floyd、外1名、"The NewReno Modification to TCP’s Fast Recovery Algorithm"、RFC 2582、1999年4月 Cheng Jin、外2名、"FAST TCP:Motivation、Architecture、Algorithms、Performance"、Proceedings of IEEE INFOCOM 2004、2004年3月、vol.4、p.2490-2501
 しかし、非特許文献3や特許文献2に記載の方法は、固定網のような帯域が安定したネットワークへの適用を想定した方法である。そのため、これらの方法をモバイルネットワークのようにユーザ端末の移動や電波強度の変動に伴い無線帯域や伝搬遅延が激しく変動するネットワークに適用すると、送信データ量の上限値を適切に制御できない。
 具体的には、非特許文献3に記載の方法は、伝送路上のルータに滞留するデータ量が一定範囲になるようcwndを制御している。しかし、モバイルネットワークでは無線帯域の変動幅などによって適切な滞留データ量が増減する。たとえば、滞留データ量が適切な値より少ないと、電波環境が急激に良くなって送信可能なデータ量が急激に増えたとき、滞留データが枯渇し、より多くのデータを送信可能にもかかわらず送信するデータがない状態となってしまう。つまり、送信帯域の利用効率が悪化してしまう。一方、滞留データ量が多すぎると、端末へのデータ到着が遅れたり、他の通信セッションの開始が遅れたりする可能性がある。したがって、非特許文献3に記載の方法では、通信環境の変動を考慮せずにcwndを制御するため、バッファの枯渇による送信帯域の利用効率の悪化や、過剰なデータの滞留による遅延の増大が発生する可能性がある。
 また、特許文献2に記載の方法では、cwndの最適値がネットワーク帯域と往復遅延時間の積であるとし、経路切り替え前後の往復遅延時間あるいは帯域の変化率に応じてcwndを決定している。しかし、この方法は固定網での経路切り替えを前提としているため、非引用文献3と同様に、通信環境の変動による適切な滞留データ量の増減を考慮していない。そのため、バッファの枯渇による送信帯域の利用効率の悪化や、過剰なデータの滞留による遅延の増大が発生する可能性がある。
 また、特許文献1に記載の方法では、スループットに基づいて端末の送信バッファに滞留するデータ量を推定し、滞留データ量に基づいて送信帯域を割り当てている。しかし、この方法でも、通信環境の変動による適切な滞留データ量の増減を限定的にしか考慮していない。そのため、バッファの枯渇による送信帯域の利用効率の悪化や、過剰なデータの滞留による遅延の増大が発生する可能性がある。
 本発明の目的は、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することを可能とする、送信データ量制御装置、方法および記録媒体を提供することにある。
 上述の問題を解決するために、本発明の送信データ量制御装置は、ネットワークの通信品質を取得する通信品質取得手段と、前記ネットワークの混雑度を推定する混雑度推定手段と、前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定手段と、前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定手段とを備えることを特徴とする。
 また、本発明の送信データ量制御方法は、ネットワークの通信品質を取得し、前記ネットワークの混雑度を推定し、前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定し、前記混雑度と前記目標混雑度に基づき送信データ量を決定することを特徴とする。
 また、本発明のコンピュータ読み取り可能な記録媒体に記録された送信データ量制御プログラムは、コンピュータに、ネットワークの通信品質を取得する通信品質取得機能と、前記ネットワークの混雑度を推定する混雑度推定機能と、前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定機能と、前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定機能とを実現させることを特徴とする。
 本発明の送信データ量制御装置、方法および記録媒体により、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
本発明の第一の実施形態の送信データ量制御装置の構成例を示す図である。 本発明の第一の実施形態の送信データ量制御装置の動作例を示す図である。 本発明の第二の実施形態の送信データ量制御システムの構成例を示す図である。 本発明の第二の実施形態の送信データ量制御装置の構成例を示す図である。 本発明の第二の実施形態の送信データ量制御装置の混雑度推定部の構成例を示す図である。 本発明の第二の実施形態の送信データ量制御装置の混雑度推定方法を説明するための図である。 本発明の第二の実施形態の送信データ量制御装置の動作例を示す図である。 本発明の第三の実施形態の送信データ量制御装置の構成例を示す図である。 本発明の第三の実施形態の送信データ量制御システムの構成例を示す図である。 本発明の第三の実施形態の送信データ量制御装置の動作例を示す図である。 本発明の各実施形態のハードウェア構成例を示す図である。
 [第一の実施形態]
 本発明の第一の実施の形態について説明する。
 図1に本実施形態の送信データ量制御装置10の構成例を示す。本実施形態の送信データ量制御装置10は、通信品質取得部11、混雑度推定部12、目標混雑度決定部13および送信データ量決定部14により構成される。
 通信品質取得部11はネットワークの通信品質を取得する部分である。混雑度推定部12は、ネットワークの混雑度を推定する部分である。目標混雑度決定部13は、通信品質に基づき混雑度の目標値である目標混雑度を決定する部分である。送信データ量決定部14は混雑度と目標混雑度に基づき送信データ量を決定する部分である。
 このように送信データ量制御装置10を構成することによって、送信データ量制御装置10は、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。これにより、モバイル通信のように通信品質の変動が大きいネットワークでも、通信品質に応じて目標混雑度を決定し、通信品質に応じて送信データ量を決定することが可能になる。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 次に、図2に本実施形態の送信データ量制御装置10の動作の例を示す。
 まず、送信データ量制御装置10の通信品質取得部11はネットワークの通信品質を取得する(ステップS101)。また、混雑度推定部12は、ネットワークの混雑度を推定する(ステップS102)。目標混雑度決定部13は、通信品質に基づき混雑度の目標値である目標混雑度を決定する(ステップS103)。そして、送信データ量決定部14は混雑度と目標混雑度に基づき送信データ量を決定する(ステップS104)。
 このように送信データ量制御装置10を動作させることによって、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 以上で説明したように、本発明の第一の実施形態では、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。これにより、通信品質に応じて目標混雑度を決定し、通信品質に応じて送信データ量を決定することが可能になる。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 [第二の実施形態]
 次に、本発明の第二の実施の形態について説明する。本実施形態では、第一の実施形態の送信データ量制御装置について、さらに具体的に説明する。
 図3に本実施形態の送信データ量制御装置20を用いた送信データ量制御システムの構成例を示す。
 送信データ量制御装置20は、データ受信装置60に対してTCPなどのコネクションを確立して要求されたデータを送信するデータ送信装置である。たとえば、PC(Personal Computer)や携帯端末などがこれに該当する。
 送信データ量制御装置20は、たとえば、ユーザから要求されたデータを保持するオリジンサーバとすることができる。また、たとえば、キャッシュサーバやプロキシサーバ、エッジサーバなどのように、モバイルネットワークの中に設置され、オリジンサーバとデータ受信装置60の間のデータ通信を一度終端する中継サーバ装置とすることもできる。
 なお、送信データ量制御装置20は、オリジンサーバがデータ受信装置60にデータを送信する経路の途中に配置されていても良い。その場合、データ受信装置60から見て送信データ量制御装置20の後ろに別のネットワークやオリジンサーバなどがあっても良い。
 データ受信装置60は、ネットワークを経由して送信データ量制御装置20に向けてデータ要求の送信、データパケットの受信およびACK(ACKnowledgement)パケットの送信を行う。そして、要求したデータが送信データ量制御装置20またはオリジンサーバから配信された際に、ユーザに配信されたデータを提示する。
 図4は、本実施形態の送信データ量制御装置20の構成例を示す図である。図4では、送信データ量制御装置10(図1)に対して、データ送受信部25を追加している。
 まず、通信品質取得部11について説明する。通信品質取得部11は送信データ量制御装置20とデータ受信装置60との間のネットワークの通信品質を取得する部分である。以降、本実施形態では、ネットワークとは送信データ量制御装置20とデータ受信装置60との間の伝送路を意味するものとして説明する。通信品質取得部11では、後段の混雑度推定部12、目標混雑度決定部13、送信データ量決定部14、データ送受信部25のいずれか一つ以上で使用する通信品質を取得する。
 通信品質の具体的な例を以下に挙げる。通信品質取得部11では、これらの情報のいずれか一つ以上を取得する。
・送信データ量制御装置20とデータ受信装置60との間の通信の往復遅延時間(Round Trip Time、RTT)
・ACKパケットを受信した時刻
・ACKパケットの受信時間間隔(前回と今回のACKパケットの受信時刻の差分値)
・ACKパケットによって新たに受信確認済みとなったデータ量
・送信中データ量(データパケットを送信済み、かつ、ACKパケットによって受信確認がされていないデータ量)
・最大セグメントサイズ(Maximum Segment Size、MSS)
 また、上記の情報の過去一定時間における観測値を記憶しておき、観測値の累計値、平均値、分散、標準偏差、最大値、最小値、あるいは、最大値と最小値の差分値のいずれか1つ以上の情報を取得しても良い。また、上記の情報に瞬間的な変動の影響を排除するフィルタ方式や指数移動平均などの統計処理を加えた情報を取得しても良い。
 また、以下の例のような、ACKパケットによって取得または算出できるいずれか1つ以上の情報を取得しても良い。
・受信ウィンドウサイズ(Receive WINdow size、RWIN)
・データパケットのロスまたは順序違いを示唆する重複ACK
・データパケットのロスの発生率(パケットロス率)
・明示的輻輳通知(Explicit Congestion Notification、ECN)のメッセージ
 次に、混雑度推定部12について説明する。混雑度推定部12は、送信データ量制御装置20とデータ受信装置60との間のネットワークの混雑度を推定する部分である。
 混雑度には、ネットワークの混雑の大小を推定できる指標であればどのような指標を使用しても良い。たとえば、ネットワークを構成するネットワーク機器に滞留する、無線通信抑制装置20が送信したデータに関する滞留データ量が多いほど、ネットワークが混雑していると判断することが可能である。そのため、無線通信抑制装置20が送信したデータに関する滞留データ量を混雑度として使用することが可能である。本実施形態では、以降、滞留データ量を混雑度として使用する場合について説明する。
 図5に、滞留データ量を混雑度として使用する場合の、混雑度推定部12の構成例を示す。混雑度推定部12は、非滞留データ量推定部121および滞留データ量推定部122により構成される。
 非滞留データ量推定部121は、非滞留データ量を推定する部分である。非滞留データは、ネットワークを構成するルータやスイッチ、ゲートウェイ装置、基地局装置といったネットワーク機器の中に存在するバッファに滞留せずに、ネットワークの中を伝送しているデータである。
 次に、非滞留データ量の推定方法の例について説明する。
 非滞留データ量推定部121は、たとえば、無線帯域の推定値(帯域推定値)と伝搬遅延時間の推定値(遅延推定値)との積を計算することで非滞留データ量を推定する。
 図6に各データ量の関係の例を示す。送信済みデータ量は、送信データ量制御装置20がデータ受信装置60へ送信したデータ量である。受信確認済みデータ量は、データ受信装置60から受信したACKパケットによって受信確認済みとなったデータ量である。そして、送信済みデータ量からACK受信済みデータ量を減算した値が、送信中データ量である。つまり、送信中データ量は、送信データ量制御装置20から送信したが、まだACKパケットを受信していないデータのデータ量である。
 送信中データは、ネットワーク機器に滞留している滞留データと、滞留せずに伝送中の非滞留データに分けることができる。非滞留データは、伝送中のため、伝搬遅延時間後までにACKパケットを受信できると考えることが可能である。したがって、本実施形態の非滞留データ量推定部121では、伝搬遅延時間後までに受信確認済みとなるデータ量、すなわち、無線帯域の推定値と伝搬遅延時間の推定値の積を非滞留データ量として推定する。
 無線帯域は、単位時間当たりの伝送データ量である。具体的には、所定期間に受信確認済みとなったデータの量を、そのデータを受信するのに要した経過時間(受信時間間隔)で割ることで推定することができる。所定期間は、所定の時間間隔としても良いし、受信したACKパケットの個数としても良い。
 所定期間に受信確認済みとなったデータの量は、たとえば、データ送受信部25が所定期間に受信したACKパケットによって新たに受信確認済みとなったデータ量を算出することで推定できる。また、このデータ量に指数移動平均などの統計処理を加えた値を受信確認済みのデータ量として使用しても良い。
 受信時間間隔は、たとえば、データ送受信部25が所定期間に受信したACKパケットの中で最も新しいACKパケットの受信時刻から最も古いACKパケットの受信時刻を減算することによって得ることができる。また、この受信時間間隔に指数移動平均などの統計処理を加えた値を受信時間間隔として使用しても良い。
 伝搬遅延時間は、送信データ量制御装置20とデータ受信装置60との間の通信の往復遅延時間の最小値または指数移動平均値を算出することで推定することができる。
 また、無線帯域は、基地局装置におけるリソースブロックの割り当て量の変化や、モバイルネットワークにおける電波品質の変動などにより変動する。また、伝搬遅延時間は、ユーザ端末のハンドオーバやRLC層におけるARQ技術やMAC層におけるHARQ技術による再送に関する遅延などにより変動する。そのため、上述の帯域推定値あるいは/および遅延推定値に対して、瞬間的な変動の影響を排除するフィルタ方式を適用しても良い。
 滞留データ量推定部122は、滞留データ量を算出する部分である。滞留データは、ネットワークを構成するルータやスイッチ、ゲートウェイ装置、基地局装置といったネットワーク機器の中に存在するバッファに滞留するデータである。
 滞留データ量は、たとえば、通信品質取得部11が取得した送信中データ量から、非滞留データ量推定部121が推定した非滞留データ量を減算することで推定することができる。
 また、混雑度を過去一定期間内における送信中データ量の増加量とし、過去一定期間内に送信したデータ量から非滞留データ量を減算した値を混雑度と推定することも可能である。
 非特許文献3や特許文献2に記載の方法のような固定網を想定した方法では、無線帯域や伝搬遅延の激しい変動を考慮していないため、モバイルネットワークの混雑度を精度良く推定できない。また、特許文献1に記載の方法は、受信データのスループット、たとえば、受信したデータに含まれるパディングの量に基づいて滞留データ量(混雑度)を推定している。そのため、パディングが含まれない伝送状態での滞留データ量の大小を推定できない。したがって、非特許文献3、特許文献1、特許文献2のいずれについても、混雑度を精度良く推定することができない。
 これに対し、本実施形態では、通信品質の変動に応じて帯域推定値および遅延推定値を算出し、これに基づいて混雑度を算出している。そのため、通信品質の変動に応じて精度良く混雑度を算出することが可能になる。
 次に、目標混雑度決定部13について説明する。目標混雑度決定部13は、通信品質に基づき混雑度の目標値である目標混雑度を決定する部分である。ここでの混雑度には、前述の混雑度推定部12が推定する混雑度と同一の単位、尺度の指標を用いる。目標混雑度は、送信データ量決定部14が送信データ量の上限値を決定する際の目標とする混雑度である。
 たとえば、電波状況が急激に良くなり送信可能なデータ量が急激に多くなった場合、ネットワークの滞留データ量(混雑度)が低すぎると、帯域的には送信可能な状態だが送信するデータがない状態が発生してしまう。つまり、送信帯域の利用効率が悪化してしまう。ネットワークの混雑度がある程度あれば、送信可能なデータ量が急激に多くなった場合でも、滞留しているデータを送信できるため、送信可能な状態なのに送るデータがない、という送信帯域を有効利用できない状態を低減することが可能である。一方、ネットワークの混雑度が高すぎると、データ受信装置へのデータ到着が遅れたり、他の通信セッションの開始が遅れたりすることで体感品質が低下してしまう。そのため、通信品質の変動量に基づいて適切な目標混雑度を決定することで、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 より具体的には、通信品質の安定度が低い、すなわち、通信品質の変動量が大きい場合には、ネットワークの目標混雑度を通信品質の変動量に応じて上げる。これにより、ネットワークの混雑度が高くなるため、送信可能なデータ量が急激に増えても送信データの枯渇を抑制し、送信帯域をより有効に利用することができる。通信品質の変動量が大きいとき、遅延についても変動が大きくなる。そのため、遅延についてはある程度許容して混雑度を上げることで、送信帯域をより有効に利用でき、より多くのデータを送信することが可能になる。また、通信品質の安定度が高い、すなわち、通信品質の変動量が小さい場合には、ネットワークの目標混雑度を通信品質の変動量に応じて下げる。これにより、ネットワークの混雑度が低くなるため、データの遅延を小さくすることが可能になる。したがって、通信品質の変動量が大きいほど目標混雑度を大きくすることで、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 目標混雑度の決定方法の例を以下に挙げる。前述のように、本実施形態では、通信品質の変動量が大きいほど目標混雑度を大きくする。
 たとえば、混雑度推定部12で推定した混雑度の過去一定期間における分散、標準偏差あるいは最大値と最小値の差を変動量とし、変動量と所定の係数との積を目標混雑度とすることができる。このようにすることで、通信品質の変動量を指標化し、変動量の増加に応じて目標混雑度を大きくすることが可能になる。
 また、混雑度推定部12で推定した混雑度の過去一定期間における値から、既存の統計処理によって異常値(大きく外れた値)を除外した後に、分散、標準偏差あるいは最大値と最小値の差を計算することで変動量を計算しても良い。また、複数回計算した変動量に指数移動平均の計算を行った値に基づいて目標混雑度を計算しても良い。
 また、ACKパケットの受信間隔の過去一定期間における分散、標準偏差あるいは最大値から最小値との差を変動量としても良い。たとえば、所定の初期値から開始して、変動量が大きいほど目標混雑度の増加幅を増やし、小さいほど目標混雑度の増加幅を減らす(目標混雑度を減少させることもある)、という所定の広義単調増加関数に従って目標混雑度を決定しても良い。このようにすると、ACKパケットの受信間隔の変動量に基づいて目標混雑度を決定することができる。
 また、過去一定期間の複数の混雑度の傾向または相関関係から混雑度の時間変化の安定度合いを分析することによって混雑度の変動量を算出し、安定度合い(変動量)によって目標混雑度を決定しても良い。たとえば、安定度合いが高いほど(変動量が小さい)目標混雑度を減らし、安定度合いが低いほど(変動量が大きい)目標混雑度を増やすという、所定の広義単調減少関数に従って目標混雑度を決定しても良い。また、安定度合いは、たとえば、単位根検定や共和分検定や自己共分散の分析などといった、既存の定常性の検定方法に従って算出しても良い。
 また、通信品質の変動量ではなく、RTTやパケットロス率といった通信品質に基づいて目標混雑度を決定しても良い。たとえば、所定の初期値から開始して、RTTまたはパケットロス率が大きいほど目標混雑度の増加幅を減らし(目標混雑度を減少させることもある)、小さいほど目標混雑度の増加幅を増やす、という所定の広義単調減少関数に従って目標混雑度を決定しても良い。この方法では、遅延やパケットロス率が大きいときは体感品質の低下が発生する可能性が上がっている状態とみなして、目標混雑度を減らす。したがって、ユーザの体感品質を向上することが可能になる。
 次に、送信データ量決定部14について説明する。送信データ量決定部14は混雑度と目標混雑度に基づき送信データ量を決定する部分である。
 送信データ量は、たとえば、輻輳ウィンドウサイズ(cwnd)のような送信データ量の上限値とすることができる。また、上限値は、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACKパケットによって通知される受信ウィンドウサイズ(RWIN)であっても良い。以降、送信データ量として送信データ量の上限値を決定する場合について説明する。
 送信データ量の決定方法の例を以下に挙げる。ネットワークの混雑度は、送信データ量を大きくするほど大きくなる。そのため、混雑度が目標混雑度より小さい場合は送信データ量を大きくし、混雑度が目標混雑度より大きい場合は送信データ量を小さくすることで、混雑度を目標混雑度に近づけることができる。
 たとえば、目標混雑度から混雑度を減算した値に所定の係数を乗算(あるいは所定の指数だけべき乗)し、現在の上限値に加算した値を、新たな上限値として決定する。このようにすると、混雑度が目標混雑度より大きい場合に送信データ量の上限値を小さくし、混雑度が目標混雑度より小さい場合に上限値を大きくすることが可能になる。
 また、目標混雑度から混雑度を減算した値の1つ以上の過去の履歴の総和に所定の係数を乗算し、現在の上限値に加算した値を、新たな上限値としても良い。また、目標混雑度から混雑度を減算した値の、最新の値と所定の計算回数または時間だけ過去の値との間の計算回数または時間あたりの単位変化量を計算して所定の係数を乗算し、現在の上限値に加算した値を、新たな上限値としても良い。また、上述した上限値決定方法のいずれか2つ以上を組み合わせて新たな上限値を決定しても良い。
 また、たとえば、上限値がcwndの場合、CUBIC TCP(非特許文献1)やTCP NewReno(非特許文献2)といった既存のTCPのcwndの増減方法と組み合わせても良い。たとえば、既存の増減方法に対して、目標混雑度から混雑度を減算または除算した値が大きいほどcwndの増加量を増やして減少量を減らすように調整する関数を加えても良い。このようにすることで、より早く混雑度を目標混雑度に近づけることが可能になる。
 次に、データ送受信部25について説明する。データ送受信部25は、送信データ量決定部14で決定した送信データ量(送信可能なデータパケットの量)に従ってデータの送受信を行う部分である。データ送受信部25では、ネットワーク経由で、データ受信装置60に向けてデータパケットを送信し、また、確認応答(ACK)パケットを受信する。
 このように送信データ量制御装置20を構成することによって、送信データ量制御装置20は、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。これにより、モバイル通信のように通信品質の変動が大きいネットワークでも、通信品質に応じて目標混雑度を決定し、通信品質に応じて送信データ量を決定することが可能になる。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 次に、図7に本実施形態の送信データ量制御装置20の動作例を示す。図7のステップS201からS205は図1のステップS101からステップS104に該当する。
 まず、通信品質取得部11は、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、ネットワークの通信品質を取得する(ステップS201)。たとえば、以下の通信品質を取得する。
・往復遅延時間
・ACKパケットを受信した時刻
・ACKパケットの受信時間間隔
・ACKパケットによって新たに受信確認済みとなったデータ量
・送信中データ量
 混雑度推定部12の非滞留データ量推定部121は、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、通信品質に基づいて非滞留データ量を推定する(ステップS202)。そして、滞留データ量推定部122は滞留データ量を算出して混雑度を推定する(ステップS203)。
 たとえば、まず、所定期間に受信したACKパケットによって受信確認済みとなったデータの量をそのACKパケットを受信するのに要した時間で割ることで帯域推定値を計算する。また、往復遅延時間の最小値または指数移動平均値を算出することで遅延推定値を計算する。次に、帯域推定値と遅延推定値を乗算することで非滞留データ量を計算する。そして、送信中データ量から非滞留データ量を減算することで混雑度(滞留データ量)の推定値を算出する。
 また、目標混雑度決定部13は、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、通信品質に基づいて目標混雑度を決定する(ステップS204)。
 たとえば、混雑度推定部12で推定した混雑度の過去一定期間における分散、標準偏差あるいは最大値と最小値の差に所定の係数を乗算した値を目標混雑度とする。このようにすることで、通信品質の変動量を指標化し、変動量の増加に応じて目標混雑度を大きくすることが可能になる。
 そして、送信データ量決定部14は、混雑度推定部12が混雑度を推定したとき、または、一定時間おきに、混雑度と目標混雑度に基づいて送信データ量を決定する(ステップS205)。
 たとえば、目標混雑度から混雑度を減算した値に所定の係数を乗算し、現在の送信データ量の上限値に加算した値を、新たな上限値として決定する。このようにすると、混雑度が目標混雑度より大きい場合に送信データ量の上限値を小さくし、混雑度が目標混雑度より小さい場合に上限値を大きくすることで、混雑度を目標混雑度に近づけることが可能になる。
 データ送受信部25は、データ受信装置60からデータ要求のメッセージを受信したとき、送信データ量決定部14が決定した送信データ量に従って、要求されたデータのパケットをデータ受信装置60へ送信する(ステップS206)。
 ここで、送信データ量制御装置20がオリジンサーバの場合、自身でオリジナルデータをすべて保持しているため、データ送受信部25は送信データ量決定部14が決定した送信データ量に従ってデータを送信することができる。送信データ量制御装置20が中継サーバ装置の場合には、オリジナルデータをあらかじめ自身の記憶領域にキャッシュとして記憶させたり、オリジンサーバから受信したデータストリームを一時的にバッファに記憶させたりすると良い。このようにすることで、オリジンサーバと送信データ量制御装置20との間のネットワークのスループットに依存せず、データ送受信部25は送信データ量決定部14が決定した送信データ量に従ってデータを送信することが可能になる。
 データ受信装置60は、ユーザからデータ取得の要求がされた際に、ネットワークを経由して送信データ量制御装置20またはオリジンサーバに向けてデータのリクエストを送信する。また、送信データ量制御装置20のデータ送受信部25からデータパケットを受信した際に、データパケットに対応するACKパケットをデータ送受信部25に送信する。
 このように送信データ量制御装置20を動作させることによって、送信データ量制御装置20は、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 なお、上記ではトランスポート層のプロトコルがTCPであることを前提に説明した。しかし、本実施形態の送信データ量制御装置は、UDPなどのTCPとは異なるプロトコルを用い、トランスポート層あるいは上位層においてTCPの振る舞いを模擬して送信データ量を制御する送信データ量制御装置にも適用可能である。
 以上で説明したように、本発明の第二の実施形態では、第一の実施形態と同様に、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。これにより、通信品質に応じて目標混雑度を決定し、通信品質に応じて送信データ量を決定することが可能になる。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 また、本実施形態では、帯域推定値と遅延推定値により非滞留データ量を算出し、これに基づいて混雑度を算出している。そのため、帯域変動や遅延変動の影響を加味し、モバイルネットワークでも精度良く混雑度を算出することが可能になる。
 [第三の実施形態]
 次に、本発明の第三の実施の形態について説明する。本実施形態は、第二の実施形態に対して、ネットワーク機器から通信品質情報を受信する構成を追加した形態である。
 図8に本実施形態の送信データ量制御装置30の構成例を示す。送信データ量制御装置30は、第二の実施形態の送信データ量制御装置20に通信品質受信部36を追加した構成である。
 また、図9に本実施形態の送信データ量制御装置30を利用した送信データ量制御システムの例を示す。送信データ量制御装置30とデータ受信装置60はネットワーク70を介して通信を行う。また、ネットワーク70には、通信品質通知装置50を含む。
 通信品質通知装置50は、ネットワーク70を構成するネットワーク機器である。たとえば、ルータ、スイッチ、カプセル化や暗号化を行うゲートウェイ装置、NodeBやeNodeBなどのモバイルネットワークの基地局装置などが該当する。ゲートウェイ装置としては、SGSN(Serving GPRS Support Node)/S-GW(Serving Gateway)、GGSN(Gateway GPRS Support Node)/P-GW(Packet Data Network Gateway)、Evolved Packet Core Gateway、Security Gatewayなどがある。
 通信品質通知装置50の通信品質通知部51は、ネットワークの通信品質を取得して送信データ量制御装置30の通信品質受信部36へ通信品質情報を通知する部分である。また、送信データ量制御装置30の通信品質受信部36は、通信品質通知装置50の通信品質通知部51から通信品質情報を受信する部分である。
 そして、通信品質取得部11は、第二の実施形態と同様にネットワークの通信品質を取得するのに加えて、通信品質受信部36が受信した通信品質情報から通信品質を取得する。また、混雑度推定部12では、通信品質取得部11が取得した通信品質に基づいてネットワークの混雑度を推定する。
 通信品質通知部51で取得する通信品質は、たとえば、通信品質通知装置50の中に存在するバッファに実際に滞留しているデータ量(実滞留データ量)である。また、実滞留データ量を複数のデータ受信装置60のそれぞれに対して計測した、データ受信装置60ごとの実滞留データ量を通信品質として取得しても良い。
 また、通信品質は、SINR(Signal to Interference plus Noise Ratio)、CQI(Channel Quality Indicator)、RSSI(Received Signal Strength Indicator)、ASU(Arbitrary Strength Unit)などの電波状態の指標であっても良い。また、データ受信装置60ごとの、あるいは、通信品質通知装置50を通過するすべての通信セッションでの送信スループット、または、その統計値であっても良い。また、データ受信装置60ごとの、または、通信品質通知装置50を通過するすべての通信セッションでの無線電波資源の使用量、または、その統計値であっても良い。また、データ受信装置60ごとの、または、データ受信装置60を通過するすべての通信セッションでの符号変調方式の実施履歴であっても良い。通信品質通知装置50が通信しているアクティブなユーザ、または、通信セッションの数であっても良い。
 次に、通信品質情報の通知方法の例について説明する。たとえば、送信データ量制御装置30とデータ受信装置60との間に張られたデータパケットおよびACKパケットの送受信のための通信セッションを利用することで、通信品質通知装置50から送信データ量制御装置30へ通信品質情報を通知することができる。具体的には、通信品質通知部51は、データ受信装置60から送信データ量制御装置30に送信されるACKパケットが通信品質通知装置50を通過する際に、ACKパケットのヘッダ内に通信品質情報を埋め込む。そして、通信品質受信部36は、データ送受信部25がACKパケットを受信した際に、ACKパケットのヘッダから通信品質情報を取得する。
 また、通信品質情報の通知方法は、たとえば、送信データ量制御装置30とデータ受信装置60との間に張られた通信セッションとは異なる通信セッションを利用する方法であっても良い。具体的には、通信品質通知部51と通信品質受信部36との間に、通信品質情報を通知するための通知用セッションを新たに確立する。そして、通信品質通知部51は通知用セッションを用いて通信品質受信部36へ通信品質情報を通知する。また、通信品質受信部36は、受信した通信品質情報が一つ以上存在する通信セッションのうちのどれに関する情報であるかを判断する。
 次に、混雑度の推定方法の例について説明する。たとえば、混雑度推定部12は、通信品質取得部11が取得した、データ受信装置60ごとの、または、通信品質通知装置50を通過するすべての通信セッションでの実滞留データ量を混雑度とすることが可能である。このようにすることで、実滞留データ量を混雑度とできるため、より精度良く混雑度を推定することが可能になる。
 また、混雑度推定部12は、通信品質取得部11が取得した送信中データ量の、前回混雑度を推定した時点からの増加量(送信中データ量が減少した場合は負の値)を、前回混雑度を推定した時点の実滞留データ量に加算した値を混雑度としても良い。このようにすると、何らかの要因で通信品質情報が欠損した場合や、通信品質情報の受信頻度が混雑度の推定頻度より低く、実滞留データ量が前回混雑度を推定した時点から更新されていない場合でも、滞留データ量を推定することが可能になる。
 このように送信データ量制御装置30を構成することによって、送信データ量制御装置30は、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。これにより、モバイル通信のように通信品質の変動が大きいネットワークでも、通信品質に応じて目標混雑度を決定し、通信品質に応じて送信データ量を決定することが可能になる。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 また、本実施形態の送信データ量制御装置は、通信品質通知装置から通信品質情報、たとえば、実滞留データ量を受信する。そのため、非滞留データ量を推定して滞留データ量を推定する方法に比べて、より正確に滞留データ量を推定することが可能になる。これにより、より正確に混雑度を推定することが可能になり、より適切に送信データ量を決定することが可能になる。
 次に、図10に送信データ量制御装置30の動作例を示す。図7との差分は、ステップS301およびステップS302を追加した点、および、図7のステップS202を削除した点である。
 通信品質通知装置50の通信品質通知部51は、通信品質通知部51が取得可能な通信品質を取得する。そして、データパケットの入出力、ユーザ端末の移動、時間経過などによって通信品質が変化したとき、または、一定時間おきに、送信データ量制御装置30の通信品質受信部36へ通信品質情報を通知する。たとえば、通信品質として通信品質通知装置50の中に存在するバッファに実際に滞留しているデータ量(実滞留データ量)を取得し、通信品質情報を通知する。
 そして、送信データ量制御装置30の通信品質受信部36が通信品質情報を受信したとき(ステップS301)、通信品質取得部11は受信した通信品質情報から通信品質を取得する(ステップS302)。たとえば、実滞留データ量を取得する。ネットワーク70に複数の通信品質通知装置50が存在する場合は、その各々から通信品質情報を受信し、各々の実滞留データ量を取得する。
 また、通信品質取得部11では、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、ネットワークの通信品質を取得する(ステップS303)。なお、混雑度推定部12、目標混雑度決定部13および送信データ量決定部14で必要とする通信品質が通信品質通知装置50から受信する通信品質情報にすべて含まれる場合には、本ステップの動作は不要である。
 混雑度推定部12は、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、通信品質取得部11が取得した通信品質に基づいて、ネットワークの混雑度を推定する(ステップS304)。たとえば、混雑度推定部12は、通信品質取得部11が取得した実滞留データ量を混雑度とする。通信品質通知装置50が複数存在するときは、取得した実滞留データ量の合計を混雑度とする。
 また、目標混雑度決定部13は、データ送受信部25がデータ受信装置60からACKパケットを受信したとき、または、一定時間おきに、通信品質の変動量に基づいて目標混雑度を決定する(ステップS305)。たとえば、混雑度推定部12で推定した混雑度の過去一定期間における分散、標準偏差、あるいは、最大値と最小値の差に所定の係数を乗算した値を目標混雑度とする。
 そして、送信データ量決定部14は、混雑度推定部12が混雑度を推定したとき、または、一定時間おきに、混雑度と目標混雑度に基づいて送信データ量を決定する(ステップS306)。たとえば、目標混雑度から混雑度を減算した値に所定の係数を乗算し、現在の送信データ量の上限値に加算した値を、新たな送信データ量の上限値として決定する。
 データ送受信部25は、データ受信装置60からデータ要求のメッセージを受信したとき、送信データ量決定部14が決定した送信データ量に従って、要求されたデータのパケットをデータ受信装置60へ送信する(ステップS307)。
 このように送信データ量制御装置30を動作させることによって、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 以上で説明したように、本発明の第三の実施形態では、第一および第二の実施形態と同様に、通信品質に基づき混雑度の目標値である目標混雑度を決定し、混雑度と目標混雑度に基づき送信データ量を決定する。そのため、通信環境の変動に応じて送信データ量を適切な範囲に制御し、送信帯域の利用効率の悪化を抑制し、ユーザの体感品質を向上することが可能になる。
 また、本実施形態の送信データ量制御装置は、通信品質通知装置から通信品質情報、たとえば、実滞留データ量を受信する。これにより、より正確に混雑度を推定することが可能になり、より適切に送信データ量を決定することが可能になる。
 [ハードウェア構成例]
 上述した本発明の各実施形態における送信データ量制御装置(10、20、30)を、一つの情報処理装置(コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。なお、送信データ量制御装置は、物理的または機能的に少なくとも二つの情報処理装置を用いて実現してもよい。また、送信データ量制御装置は、専用の装置として実現してもよい。また、送信データ量制御装置の一部の機能のみを情報処理装置を用いて実現しても良い。
 図11は、本発明の各実施形態の送信データ量制御装置を実現可能な情報処理装置のハードウェア構成例を概略的に示す図である。情報処理装置80は、通信インタフェース81、入出力インタフェース82、演算装置83、記憶装置84および不揮発性記憶装置85およびドライブ装置86を備える。
 通信インタフェース81は、各実施形態の送信データ量制御装置が、有線あるいは/および無線で外部装置と通信するための通信手段である。なお、送信データ量制御装置を、少なくとも二つの情報処理装置を用いて実現する場合、それらの装置の間を通信インタフェース81経由で相互に通信可能なように接続しても良い。
 入出力インタフェース82は、入力デバイスの一例であるキーボードや、出力デバイスとしてのディスプレイ等のマンマシンインタフェースである。
 演算装置83は、汎用のCPU(Central Processing Unit)やマイクロプロセッサ等の演算処理装置である。演算装置83は、たとえば、不揮発性記憶装置85に記憶された各種プログラムを記憶装置84に読み出し、読み出したプログラムに従って処理を実行することが可能である。
 記憶装置84は、演算装置83から参照可能な、RAM(Random Access Memory)等のメモリ装置であり、プログラムや各種データ等を記憶する。記憶装置84は、揮発性のメモリ装置であっても良い。
 不揮発性記憶装置85は、たとえば、ROM(Read Only Memory)、フラッシュメモリ、等の、不揮発性の記憶装置であり、各種プログラムやデータ等を記録することが可能である。
 ドライブ装置86は、たとえば、後述する記録媒体87に対するデータの読み込みや書き込みを処理する装置である。
 記録媒体87は、たとえば、光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。
 本発明の各実施形態は、たとえば、図11に例示した情報処理装置80により送信データ量制御装置を構成し、この送信データ量制御装置に対して、上記各実施形態において説明した機能を実現可能なプログラムを供給することにより実現してもよい。
 この場合、送信データ量制御装置に対して供給したプログラムを、演算装置83が実行することによって、実施形態を実現することが可能である。また、送信データ量制御装置のすべてではなく、一部の機能を情報処理装置80で構成することも可能である。
 さらに、上記プログラムを記録媒体87に記録しておき、送信データ量制御装置の出荷段階、あるいは運用段階等において、適宜上記プログラムが不揮発性記憶装置85に格納されるよう構成してもよい。なお、この場合、上記プログラムの供給方法は、出荷前の製造段階、あるいは運用段階等において、適当な治具を利用して送信データ量制御装置内にインストールする方法を採用してもよい。また、上記プログラムの供給方法は、インターネット等の通信回線を介して外部からダウンロードする方法等の一般的な手順を採用してもよい。
 上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
  (付記1)
 ネットワークの通信品質を取得する通信品質取得手段と、
 前記ネットワークの混雑度を推定する混雑度推定手段と、
 前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定手段と、
 前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定手段と
 を備えることを特徴とする送信データ量制御装置。
  (付記2)
 前記送信データ量決定手段は、前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
 ことを特徴とする付記1に記載の送信データ量制御装置。
  (付記3)
 前記送信データ量は、前記送信データ量の上限値である
 ことを特徴とする付記1あるいは付記2に記載の送信データ量制御装置。
  (付記4)
 前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
 ことを特徴とする付記3に記載の送信データ量制御装置。
  (付記5)
 前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
 前記目標混雑度決定手段は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
 ことを特徴とする付記1から付記4のいずれかに記載の送信データ量制御装置。
  (付記6)
 前記目標混雑度決定手段は、前記通信品質の変動量に基づき前記目標混雑度を決定する
 ことを特徴とする付記1から付記4のいずれかに記載の送信データ量制御装置。
  (付記7)
 前記目標混雑度決定手段は、前記変動量が大きいほど前記目標混雑度を大きくする
 ことを特徴とする付記6に記載の送信データ量制御装置。
  (付記8)
 前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
 ことを特徴とする付記7に記載の送信データ量制御装置。
  (付記9)
 前記目標混雑度決定手段は、過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
 ことを特徴とする付記7に記載の送信データ量制御装置。
  (付記10)
 前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
 前記混雑度推定手段は、
 前記通信品質に基づき非滞留データ量を推定する非滞留データ量推定手段と、
 送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する滞留データ量推定手段と
 を備えることを特徴とする付記1から付記9のいずれかに記載の送信データ量制御装置。
  (付記11)
 前記非滞留データ量推定手段は、所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
 ことを特徴とする付記10に記載の送信データ量制御装置。
  (付記12)
 前記非滞留データ量推定手段は、瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
 ことを特徴とする付記11に記載の送信データ量制御装置。
  (付記13)
 前記通信品質を通知する通信品質情報を受信する通信品質受信手段
 を備え、
 前記通信品質取得手段は、前記通信品質情報から前記通信品質を取得する
 ことを特徴とする付記1から付記9のいずれかに記載の送信データ量制御装置。
  (付記14)
 前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
 前記混雑度推定手段は、前記実滞留データ量を前記混雑度とする
 ことを特徴とする付記13に記載の送信データ量制御装置。
  (付記15)
 前記通信品質取得手段は、送信済みデータ量と受信確認済みデータ量を取得し、
 前記混雑度推定手段は、前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
 ことを特徴とする付記14に記載の送信データ量制御装置。
  (付記16)
 ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する通信品質通知手段
 を備えることを特徴とする通信品質通知装置。
  (付記17)
 前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
 ことを特徴とする付記16に記載の通信品質通知装置。
  (付記18)
 付記1から付記17のいずれかに記載の送信データ量制御装置と、
 前記送信データ量制御装置が送信したデータパケットを受信し、前記データパケットに対するACKパケットを送信するデータ受信装置と
 を備え、
 前記通信品質は、前記ACKパケットの受信時刻あるいは/および受信間隔を含む
 ことを特徴とする送信データ量制御システム。
  (付記19)
 付記13から付記15に記載の送信データ量制御装置と、
 前記送信データ量制御装置が送信したデータパケットを受信するデータ受信装置と、
 付記16あるいは付記17に記載の通信品質通知装置と
 を備え、
 前記通信品質通知装置は、前記送信データ量制御装置と前記データ受信装置との間の前記ネットワークの前記通信品質を取得する
 ことを特徴とする送信データ量制御システム。
  (付記20)
 付記10から付記12、付記15のいずれかに記載の送信データ量制御装置と、
 前記送信データ量制御装置が送信したデータパケットを受信し、前記データパケットに対するACKパケットを送信するデータ受信装置と
 を備え、
 前記受信確認済みデータ量は、前記ACKパケットにより受信確認できたデータのデータ量である
 ことを特徴とする送信データ量制御システム。
  (付記21)
 ネットワークの通信品質を取得し、
 前記ネットワークの混雑度を推定し、
 前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定し、
 前記混雑度と前記目標混雑度に基づき送信データ量を決定する
 ことを特徴とする送信データ量制御方法。
  (付記22)
 前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
 ことを特徴とする付記21に記載の送信データ量制御方法。
  (付記23)
 前記送信データ量は、前記送信データ量の上限値である
 ことを特徴とする付記21あるいは付記22に記載の送信データ量制御方法。
  (付記24)
 前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
 ことを特徴とする付記23に記載の送信データ量制御方法。
  (付記25)
 前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
 前記送信データ量制御方法は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
 ことを特徴とする付記21から付記24のいずれかに記載の送信データ量制御方法。
  (付記26)
 前記通信品質の変動量に基づき前記目標混雑度を決定する
 ことを特徴とする付記21から付記24のいずれかに記載の送信データ量制御方法。
  (付記27)
 前記変動量が大きいほど前記目標混雑度を大きくする
 ことを特徴とする付記26に記載の送信データ量制御方法。
  (付記28)
 前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
 ことを特徴とする付記27に記載の送信データ量制御方法。
  (付記29)
 過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
 ことを特徴とする付記27に記載の送信データ量制御方法。
  (付記30)
 前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
 前記送信データ量制御方法は、
 前記通信品質に基づき非滞留データ量を推定し、
 送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する
 ことを特徴とする付記21から付記29のいずれかに記載の送信データ量制御方法。
  (付記31)
 所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
 ことを特徴とする付記30に記載の送信データ量制御方法。
  (付記32)
 瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
 ことを特徴とする付記31に記載の送信データ量制御方法。
  (付記33)
 前記通信品質を通知する通信品質情報を受信し、
 前記通信品質情報から前記通信品質を取得する
 ことを特徴とする付記21から付記29のいずれかに記載の送信データ量制御方法。
  (付記34)
 前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
 前記送信データ量制御方法は、前記実滞留データ量を前記混雑度とする
 ことを特徴とする付記33に記載の送信データ量制御方法。
  (付記35)
 送信済みデータ量と受信確認済みデータ量を取得し、
 前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
 ことを特徴とする付記34に記載の送信データ量制御方法。
  (付記36)
 ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する
 ことを特徴とする通信品質通知方法。
  (付記37)
 前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
 ことを特徴とする付記36に記載の通信品質通知方法。
  (付記38)
 コンピュータに、
 ネットワークの通信品質を取得する通信品質取得機能と、
 前記ネットワークの混雑度を推定する混雑度推定機能と、
 前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定機能と、
 前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定機能と
 を実現させることを特徴とする送信データ量制御プログラム。
  (付記39)
 前記送信データ量決定機能は、前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
 ことを特徴とする付記38に記載の送信データ量制御プログラム。
  (付記40)
 前記送信データ量は、前記送信データ量の上限値である
 ことを特徴とする付記38あるいは付記39に記載の送信データ量制御プログラム。
  (付記41)
 前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
 ことを特徴とする付記40に記載の送信データ量制御プログラム。
  (付記42)
 前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
 前記目標混雑度決定機能は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
 ことを特徴とする付記38から付記41のいずれかに記載の送信データ量制御プログラム。
  (付記43)
 前記目標混雑度決定機能は、前記通信品質の変動量に基づき前記目標混雑度を決定する
 ことを特徴とする付記38から付記41のいずれかに記載の送信データ量制御プログラム。
  (付記44)
 前記目標混雑度決定機能は、前記変動量が大きいほど前記目標混雑度を大きくする
 ことを特徴とする付記43に記載の送信データ量制御プログラム。
  (付記45)
 前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
 ことを特徴とする付記44に記載の送信データ量制御プログラム。
  (付記46)
 前記目標混雑度決定機能は、過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
 ことを特徴とする付記44に記載の送信データ量制御プログラム。
  (付記47)
 前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
 前記混雑度推定機能は、
 前記通信品質に基づき非滞留データ量を推定する非滞留データ量推定機能と、
 送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する滞留データ量推定機能と
 をコンピュータに実現させることを特徴とする付記38から付記46のいずれかに記載の送信データ量制御プログラム。
  (付記48)
 前記非滞留データ量推定機能は、所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
 ことを特徴とする付記47に記載の送信データ量制御プログラム。
  (付記49)
 前記非滞留データ量推定機能は、瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
 ことを特徴とする付記48に記載の送信データ量制御プログラム。
  (付記50)
 前記通信品質を通知する通信品質情報を受信する通信品質受信機能
 をコンピュータに実現させ、
 前記通信品質取得機能は、前記通信品質情報から前記通信品質を取得する
 ことを特徴とする付記38から付記46のいずれかに記載の送信データ量制御プログラム。
  (付記51)
 前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
 前記混雑度推定機能は、前記実滞留データ量を前記混雑度とする
 ことを特徴とする付記50に記載の送信データ量制御プログラム。
  (付記52)
 前記通信品質取得機能は、送信済みデータ量と受信確認済みデータ量を取得し、
 前記混雑度推定機能は、前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
 ことを特徴とする付記51に記載の送信データ量制御プログラム。
  (付記53)
 コンピュータに、
 ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する通信品質通知機能
 を実現させることを特徴とする通信品質通知プログラム。
  (付記54)
 前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
 ことを特徴とする付記53に記載の通信品質通知プログラム。
  (付記55)
 付記38から付記52のいずれかに記載の送信データ量制御プログラムを記録した、コンピュータ読み取り可能な記録媒体。
  (付記56)
 付記53あるいは付記54に記載の通信品質通知プログラムを記録した、コンピュータ読み取り可能な記録媒体。
 以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
 この出願は、2016年1月7日に出願された日本出願特願2016-001570を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 10、20、30  送信データ量制御装置
 11  通信品質取得部
 12  混雑度推定部
 13  目標混雑度決定部
 14  送信データ量決定部
 25  データ送受信部
 36  通信品質受信部
 50  通信品質通知装置
 51  通信品質通知部
 60  データ受信装置
 70  ネットワーク
 80  情報処理装置
 81  通信インタフェース
 82  入出力インタフェース
 83  演算装置
 84  記憶装置
 85  不揮発性記憶装置
 86  ドライブ装置
 87  記録媒体

Claims (56)

  1.  ネットワークの通信品質を取得する通信品質取得手段と、
     前記ネットワークの混雑度を推定する混雑度推定手段と、
     前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定手段と、
     前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定手段と
     を備えることを特徴とする送信データ量制御装置。
  2.  前記送信データ量決定手段は、前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
     ことを特徴とする請求項1に記載の送信データ量制御装置。
  3.  前記送信データ量は、前記送信データ量の上限値である
     ことを特徴とする請求項1あるいは請求項2に記載の送信データ量制御装置。
  4.  前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
     ことを特徴とする請求項3に記載の送信データ量制御装置。
  5.  前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
     前記目標混雑度決定手段は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
     ことを特徴とする請求項1から請求項4のいずれかに記載の送信データ量制御装置。
  6.  前記目標混雑度決定手段は、前記通信品質の変動量に基づき前記目標混雑度を決定する
     ことを特徴とする請求項1から請求項4のいずれかに記載の送信データ量制御装置。
  7.  前記目標混雑度決定手段は、前記変動量が大きいほど前記目標混雑度を大きくする
     ことを特徴とする請求項6に記載の送信データ量制御装置。
  8.  前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
     ことを特徴とする請求項7に記載の送信データ量制御装置。
  9.  前記目標混雑度決定手段は、過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
     ことを特徴とする請求項7に記載の送信データ量制御装置。
  10.  前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
     前記混雑度推定手段は、
     前記通信品質に基づき非滞留データ量を推定する非滞留データ量推定手段と、
     送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する滞留データ量推定手段と
     を備えることを特徴とする請求項1から請求項9のいずれかに記載の送信データ量制御装置。
  11.  前記非滞留データ量推定手段は、所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
     ことを特徴とする請求項10に記載の送信データ量制御装置。
  12.  前記非滞留データ量推定手段は、瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
     ことを特徴とする請求項11に記載の送信データ量制御装置。
  13.  前記通信品質を通知する通信品質情報を受信する通信品質受信手段
     を備え、
     前記通信品質取得手段は、前記通信品質情報から前記通信品質を取得する
     ことを特徴とする請求項1から請求項9のいずれかに記載の送信データ量制御装置。
  14.  前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
     前記混雑度推定手段は、前記実滞留データ量を前記混雑度とする
     ことを特徴とする請求項13に記載の送信データ量制御装置。
  15.  前記通信品質取得手段は、送信済みデータ量と受信確認済みデータ量を取得し、
     前記混雑度推定手段は、前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
     ことを特徴とする請求項14に記載の送信データ量制御装置。
  16.  ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する通信品質通知手段
     を備えることを特徴とする通信品質通知装置。
  17.  前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
     ことを特徴とする請求項16に記載の通信品質通知装置。
  18.  請求項1から請求項17のいずれかに記載の送信データ量制御装置と、
     前記送信データ量制御装置が送信したデータパケットを受信し、前記データパケットに対するACKパケットを送信するデータ受信装置と
     を備え、
     前記通信品質は、前記ACKパケットの受信時刻あるいは/および受信間隔を含む
     ことを特徴とする送信データ量制御システム。
  19.  請求項13から請求項15に記載の送信データ量制御装置と、
     前記送信データ量制御装置が送信したデータパケットを受信するデータ受信装置と、
     請求項16あるいは請求項17に記載の通信品質通知装置と
     を備え、
     前記通信品質通知装置は、前記送信データ量制御装置と前記データ受信装置との間の前記ネットワークの前記通信品質を取得する
     ことを特徴とする送信データ量制御システム。
  20.  請求項10から請求項12、請求項15のいずれかに記載の送信データ量制御装置と、
     前記送信データ量制御装置が送信したデータパケットを受信し、前記データパケットに対するACKパケットを送信するデータ受信装置と
     を備え、
     前記受信確認済みデータ量は、前記ACKパケットにより受信確認できたデータのデータ量である
     ことを特徴とする送信データ量制御システム。
  21.  ネットワークの通信品質を取得し、
     前記ネットワークの混雑度を推定し、
     前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定し、
     前記混雑度と前記目標混雑度に基づき送信データ量を決定する
     ことを特徴とする送信データ量制御方法。
  22.  前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
     ことを特徴とする請求項21に記載の送信データ量制御方法。
  23.  前記送信データ量は、前記送信データ量の上限値である
     ことを特徴とする請求項21あるいは請求項22に記載の送信データ量制御方法。
  24.  前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
     ことを特徴とする請求項23に記載の送信データ量制御方法。
  25.  前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
     前記送信データ量制御方法は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
     ことを特徴とする請求項21から請求項24のいずれかに記載の送信データ量制御方法。
  26.  前記通信品質の変動量に基づき前記目標混雑度を決定する
     ことを特徴とする請求項21から請求項24のいずれかに記載の送信データ量制御方法。
  27.  前記変動量が大きいほど前記目標混雑度を大きくする
     ことを特徴とする請求項26に記載の送信データ量制御方法。
  28.  前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
     ことを特徴とする請求項27に記載の送信データ量制御方法。
  29.  過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
     ことを特徴とする請求項27に記載の送信データ量制御方法。
  30.  前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
     前記送信データ量制御方法は、
     前記通信品質に基づき非滞留データ量を推定し、
     送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する
     ことを特徴とする請求項21から請求項29のいずれかに記載の送信データ量制御方法。
  31.  所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
     ことを特徴とする請求項30に記載の送信データ量制御方法。
  32.  瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
     ことを特徴とする請求項31に記載の送信データ量制御方法。
  33.  前記通信品質を通知する通信品質情報を受信し、
     前記通信品質情報から前記通信品質を取得する
     ことを特徴とする請求項21から請求項29のいずれかに記載の送信データ量制御方法。
  34.  前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
     前記送信データ量制御方法は、前記実滞留データ量を前記混雑度とする
     ことを特徴とする請求項33に記載の送信データ量制御方法。
  35.  送信済みデータ量と受信確認済みデータ量を取得し、
     前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
     ことを特徴とする請求項34に記載の送信データ量制御方法。
  36.  ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する
     ことを特徴とする通信品質通知方法。
  37.  前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
     ことを特徴とする請求項36に記載の通信品質通知方法。
  38.  コンピュータに、
     ネットワークの通信品質を取得する通信品質取得機能と、
     前記ネットワークの混雑度を推定する混雑度推定機能と、
     前記通信品質に基づき前記混雑度の目標値である目標混雑度を決定する目標混雑度決定機能と、
     前記混雑度と前記目標混雑度に基づき送信データ量を決定する送信データ量決定機能と
     を実現させることを特徴とする送信データ量制御プログラム。
  39.  前記送信データ量決定機能は、前記混雑度が前記目標混雑度より小さいとき前記送信データ量を大きくし、前記混雑度が前記目標混雑度より大きいとき前記送信データ量を小さくする
     ことを特徴とする請求項38に記載の送信データ量制御プログラム。
  40.  前記送信データ量は、前記送信データ量の上限値である
     ことを特徴とする請求項38あるいは請求項39に記載の送信データ量制御プログラム。
  41.  前記上限値は、輻輳ウィンドウサイズ(cwnd)、通信コネクションの送信バッファサイズの設定値(SO_SNDBUF)、システムパラメータとして設定された通信に利用可能なメモリサイズ(tcp_wmem)、ACK(ACKnowledgement)パケットによって通知される受信ウィンドウサイズ(RWIN)のいずれかである
     ことを特徴とする請求項40に記載の送信データ量制御プログラム。
  42.  前記通信品質は、往復遅延時間あるいは/およびパケットロス率を含み
     前記目標混雑度決定機能は、前記往復遅延時間あるいは前記パケットロス率が大きいほど前記目標混雑度を小さくする
     ことを特徴とする請求項38から請求項41のいずれかに記載の送信データ量制御プログラム。
  43.  前記目標混雑度決定機能は、前記通信品質の変動量に基づき前記目標混雑度を決定する
     ことを特徴とする請求項38から請求項41のいずれかに記載の送信データ量制御プログラム。
  44.  前記目標混雑度決定機能は、前記変動量が大きいほど前記目標混雑度を大きくする
     ことを特徴とする請求項43に記載の送信データ量制御プログラム。
  45.  前記変動量は、過去一定期間における前記混雑度、または、前記過去一定期間における前記混雑度から統計処理によって異常値を除外した値の、分散、標準偏差、あるいは、最大値から最小値を減算した値である
     ことを特徴とする請求項44に記載の送信データ量制御プログラム。
  46.  前記目標混雑度決定機能は、過去一定期間における前記混雑度の傾向または相関関係から前記混雑度の時間変化の安定度合いを分析することによって前記変動量を算出する
     ことを特徴とする請求項44に記載の送信データ量制御プログラム。
  47.  前記混雑度は、前記ネットワークを構成するネットワーク機器に滞留する滞留データ量であり、
     前記混雑度推定機能は、
     前記通信品質に基づき非滞留データ量を推定する非滞留データ量推定機能と、
     送信済みデータ量から受信確認済みデータ量を減算した送信中データ量から前記非滞留データ量を減算して前記滞留データ量を算出する滞留データ量推定機能と
     をコンピュータに実現させることを特徴とする請求項38から請求項46のいずれかに記載の送信データ量制御プログラム。
  48.  前記非滞留データ量推定機能は、所定期間の前記受信確認済みデータ量の増加量を算出し、前記増加量を前記所定期間の経過時間で除算して帯域推定値を算出し、前記所定期間の往復遅延時間の最小値に基づいて遅延推定値を算出し、前記帯域推定値と前記遅延推定値とを乗算して前記非滞留データ量を算出する
     ことを特徴とする請求項47に記載の送信データ量制御プログラム。
  49.  前記非滞留データ量推定機能は、瞬間的な変動の影響を排除するフィルタ方式を、前記帯域推定値、または/および、前記遅延推定値に適用した後に、前記帯域推定値と前記遅延推定値との前記乗算を行う
     ことを特徴とする請求項48に記載の送信データ量制御プログラム。
  50.  前記通信品質を通知する通信品質情報を受信する通信品質受信機能
     をコンピュータに実現させ、
     前記通信品質取得機能は、前記通信品質情報から前記通信品質を取得する
     ことを特徴とする請求項38から請求項46のいずれかに記載の送信データ量制御プログラム。
  51.  前記通信品質は、前記ネットワークを構成するネットワーク機器に滞留する実滞留データ量を含み、
     前記混雑度推定機能は、前記実滞留データ量を前記混雑度とする
     ことを特徴とする請求項50に記載の送信データ量制御プログラム。
  52.  前記通信品質取得機能は、送信済みデータ量と受信確認済みデータ量を取得し、
     前記混雑度推定機能は、前記送信済みデータ量から前記受信確認済みデータ量を減算した送信中データ量の、前記混雑度を前回推定した時点からの増加量を、前記混雑度を前回推定した時点の前記実滞留データ量に加算して前記混雑度を推定する
     ことを特徴とする請求項51に記載の送信データ量制御プログラム。
  53.  コンピュータに、
     ネットワークの通信品質を取得し前記通信品質を通知する通信品質情報を送信する通信品質通知機能
     を実現させることを特徴とする通信品質通知プログラム。
  54.  前記通信品質は、自身に存在するバッファに実際に滞留している実滞留データ量、前記実滞留データ量をデータ受信装置ごとに計測した値、電波状態の指標、前記データ受信装置ごとの、または、自身を通過するすべての通信セッションでの、送信スループットまたは無線電波資源の使用量または符号変調方式の実施履歴、自身が通信しているユーザ数または通信セッション数、のうちのいずれか一つ以上を含む
     ことを特徴とする請求項53に記載の通信品質通知プログラム。
  55.  請求項38から請求項52のいずれかに記載の送信データ量制御プログラムを記録した、コンピュータ読み取り可能な記録媒体。
  56.  請求項53あるいは請求項54に記載の通信品質通知プログラムを記録した、コンピュータ読み取り可能な記録媒体。
PCT/JP2017/000006 2016-01-07 2017-01-04 送信データ量制御装置、方法および記録媒体 WO2017119408A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017560380A JPWO2017119408A1 (ja) 2016-01-07 2017-01-04 送信データ量制御装置、方法およびプログラム
US16/067,882 US10911359B2 (en) 2016-01-07 2017-01-04 Transmit data volume control device, method, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016001570 2016-01-07
JP2016-001570 2016-01-07

Publications (1)

Publication Number Publication Date
WO2017119408A1 true WO2017119408A1 (ja) 2017-07-13

Family

ID=59274192

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/000006 WO2017119408A1 (ja) 2016-01-07 2017-01-04 送信データ量制御装置、方法および記録媒体

Country Status (3)

Country Link
US (1) US10911359B2 (ja)
JP (1) JPWO2017119408A1 (ja)
WO (1) WO2017119408A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019244966A1 (ja) * 2018-06-22 2019-12-26 日本電気株式会社 通信装置、通信方法及びプログラム
JP2020202436A (ja) * 2019-06-06 2020-12-17 日本電信電話株式会社 通信装置及び通信方法
CN112751778A (zh) * 2019-10-30 2021-05-04 阿里巴巴集团控股有限公司 数据传输控制方法及装置,拥塞检测及装置,服务器系统
CN113301375A (zh) * 2021-05-24 2021-08-24 上海绚显科技有限公司 一种数据发送方法及装置
JP7432982B2 (ja) 2020-03-26 2024-02-19 株式会社国際電気通信基礎技術研究所 ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102139378B1 (ko) * 2018-11-20 2020-07-29 울산과학기술원 혼잡 제어 방법 및 장치
US11456938B2 (en) * 2019-09-25 2022-09-27 Arista Networks, Inc. Quantifying performance of a connection by monitoring duplicate acknowledgement numbers
US11228536B2 (en) * 2020-01-15 2022-01-18 Qualcomm Incorporated Usage of QUIC spin bit in wireless networks
CN113992548B (zh) * 2021-10-27 2023-08-08 北京达佳互联信息技术有限公司 一种带宽测速方法及装置
CN115021778B (zh) * 2022-06-02 2023-10-24 广州番禺电缆集团有限公司 一种基于网络稳定性反馈监测信息的智能电缆

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014098096A1 (ja) * 2012-12-19 2014-06-26 日本電気株式会社 データ送信装置、データ送信方法、及びそのプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5587435B2 (ja) * 2010-02-12 2014-09-10 トムソン ライセンシング コンテンツ再生の同期方法及び同期装置
JP5867188B2 (ja) 2012-03-12 2016-02-24 富士通株式会社 情報処理装置、輻輳制御方法および輻輳制御プログラム
JP2013223181A (ja) 2012-04-18 2013-10-28 Kyocera Corp 無線通信基地局、無線通信システム、および無線通信基地局の制御方法
CN105827537B (zh) * 2016-06-01 2018-12-07 四川大学 一种基于quic协议的拥塞改进方法
KR102359274B1 (ko) * 2017-05-16 2022-02-07 삼성전자주식회사 통신 시스템에서 데이터 전송을 제어하기 위한 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014098096A1 (ja) * 2012-12-19 2014-06-26 日本電気株式会社 データ送信装置、データ送信方法、及びそのプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IGARASHI, K. ET AL.: "Flight size auto tuning for broadband wireless networks", PROCEEDINGS OF THE 2009 INTERNATIONAL CONFERENCE ON WIRELESS COMMUNICATIONS AND MOBILE COMPUTING: CONNECTING THE WORLD WIRELESSLY, 2009, pages 888 - 893, XP058256069 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019244966A1 (ja) * 2018-06-22 2019-12-26 日本電気株式会社 通信装置、通信方法及びプログラム
JPWO2019244966A1 (ja) * 2018-06-22 2021-06-24 日本電気株式会社 通信装置、通信方法及びプログラム
US11588736B2 (en) 2018-06-22 2023-02-21 Nec Corporation Communication apparatus, communication method, and program
JP2020202436A (ja) * 2019-06-06 2020-12-17 日本電信電話株式会社 通信装置及び通信方法
CN112751778A (zh) * 2019-10-30 2021-05-04 阿里巴巴集团控股有限公司 数据传输控制方法及装置,拥塞检测及装置,服务器系统
JP7432982B2 (ja) 2020-03-26 2024-02-19 株式会社国際電気通信基礎技術研究所 ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
CN113301375A (zh) * 2021-05-24 2021-08-24 上海绚显科技有限公司 一种数据发送方法及装置

Also Published As

Publication number Publication date
US10911359B2 (en) 2021-02-02
US20200267083A1 (en) 2020-08-20
JPWO2017119408A1 (ja) 2018-11-08

Similar Documents

Publication Publication Date Title
WO2017119408A1 (ja) 送信データ量制御装置、方法および記録媒体
JP4878391B2 (ja) 適応的なキュー待ち時間を伴うスケジューリング及びキューマネージメント
US10374958B2 (en) Method and apparatus for TCP-based transmission control in communication system
US8854992B2 (en) Artificial delay inflation and jitter reduction to improve TCP throughputs
US9980156B2 (en) Optimization of downlink throughput
US20050005207A1 (en) Method of improving the performance of a transmission protocol using a retransmission timer
US9167473B2 (en) Communication processing method, apparatus and gateway device
WO2019019825A1 (zh) 一种拥塞控制方法及相关设备
JP6274113B2 (ja) データ送信装置、データ送信方法、及びそのプログラム
US10952102B2 (en) Method and apparatus for controlling data transmission speed in wireless communication system
Brunello et al. Low latency low loss scalable throughput in 5G networks
JP2011176693A (ja) 移動体無線通信装置、tcpフロー制御装置及びその方法
US20150257162A1 (en) Controlling Bandwidth Usage of an Application Using a Radio Access Bearer on a Transport Network
Kumar et al. DSASync: Managing end-to-end connections in dynamic spectrum access wireless LANs
US20220369151A1 (en) Method and system for channel quality assisted transport in wireless network
Aqil et al. Streaming lower quality video over LTE: How much energy can you save?
WO2014171543A1 (ja) データ送信装置、データ送信方法、及びそのプログラム
Ko et al. A handover-aware seamless video streaming scheme in heterogeneous wireless networks
JP6897769B2 (ja) データ送信装置、方法およびプログラム
WO2019124290A1 (ja) 送信データ量制御装置、方法および記録媒体
Prados-Garzon et al. Simulation-based performance study of YouTube service in 3G LTE
JP2011151738A (ja) 端末装置、制御プログラム及び制御方法
JP2018067788A (ja) 受信トラヒックの高速化装置、高速化方法、および高速化プログラム
WO2016042686A1 (ja) データ送信制御装置及び制御方法
WO2015186332A1 (ja) 送信データ量制御装置、制御システム、制御方法および制御プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17735945

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017560380

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

Country of ref document: EP

Kind code of ref document: A1