WO2017061075A1 - Système de commande, système d'estimation de bande passante disponible, dispositif, procédé, et programme - Google Patents

Système de commande, système d'estimation de bande passante disponible, dispositif, procédé, et programme Download PDF

Info

Publication number
WO2017061075A1
WO2017061075A1 PCT/JP2016/004265 JP2016004265W WO2017061075A1 WO 2017061075 A1 WO2017061075 A1 WO 2017061075A1 JP 2016004265 W JP2016004265 W JP 2016004265W WO 2017061075 A1 WO2017061075 A1 WO 2017061075A1
Authority
WO
WIPO (PCT)
Prior art keywords
warm
packet
transmission
packet sequence
packets
Prior art date
Application number
PCT/JP2016/004265
Other languages
English (en)
Japanese (ja)
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 日本電気株式会社
Publication of WO2017061075A1 publication Critical patent/WO2017061075A1/fr

Links

Images

Definitions

  • the present invention relates to an available bandwidth estimation system that estimates an available bandwidth, a control system, a communication device, a control method, and a control program for controlling a congestion window size.
  • the usable bandwidth (also called usable bandwidth) of a communication line is a free bandwidth obtained by subtracting other traffic (hereinafter referred to as cross traffic) flowing through the network from the physical bandwidth of the bottleneck link of the communication line.
  • cross traffic other traffic
  • a plurality of estimated packets that are available bandwidth estimation packets are collectively referred to as one packet train, and each estimated packet included in the packet train is assigned at a predetermined time interval.
  • a method is described in which the available bandwidth is estimated on the receiving device side by transmitting.
  • the transmission side device prepares a packet train including a plurality of estimated packets whose packets gradually increase, and transmits the estimated packets included in the packet train in order at equal intervals. Then, the receiving side apparatus estimates the available bandwidth by detecting a change in the reception interval of each estimated packet.
  • the transmission rate of each estimated packet increases linearly within the packet train.
  • the packet train passes through the network, if the estimated packet transmission rate exceeds the available bandwidth of the network, the packet is temporarily queued in a device such as a router or switch on the network (hereinafter referred to as the queue).
  • the delay due to ing is called queuing delay).
  • the reception interval of the estimated packet is increased in the reception side device than the transmission interval in the transmission side device.
  • the receiving side device specifies an estimated packet whose reception interval starts to increase compared to the transmission interval at the transmitting side device, and divides the packet size of the estimated packet by the transmission interval, Calculate available bandwidth.
  • Patent Document 2 the microprocessor of the transmission side device measures the round trip time (RTT) and the packet loss rate while changing the window size of the congestion window.
  • RTT round trip time
  • Patent Document 2 describes a method for estimating the available bandwidth from these measured values and the data size per packet. Further, Patent Document 2 further describes a method for estimating the available bandwidth by using a different calculation formula depending on whether or not a retransmission timeout (Retransmission TimeOut; RTO) has occurred.
  • RTO retransmission TimeOut
  • Patent Document 3 describes a technique in which a preparatory packet is sent in advance and other traffic is pushed away in a preset time zone such as when traffic congestion is expected, and then an application is transmitted. Yes. Further, in Patent Document 4, a transmission side device transmits a plurality of measurement packets whose packet sizes sequentially increase or decrease at a predetermined transmission interval, and the reception side device transmits measurement packets whose reception intervals and transmission intervals are equal. Among them, a technique for calculating an available bandwidth using a measurement packet having the largest packet size is described.
  • Patent Document 1 The method described in Patent Document 1 is preferable because it can easily be estimated in the application layer without monitoring the packet flow in the communication path, and can be easily introduced into various environments.
  • the method described in Patent Document 2 requires operations lower than the application layer, such as changing the congestion window size, measuring the RTT and packet loss rate, and determining whether or not RTO has occurred, and is expensive to introduce. There's a problem.
  • the calculation formula considers only the transmission delay due to congestion control due to retransmission timeout based on the temporal transition of the general number of packets in congestion control. Ingress delay or the like is not taken into account, and it cannot be said that the estimation accuracy of the usable bandwidth is good.
  • the method described in Patent Document 1 also has a problem in that the estimation accuracy decreases when an error occurs in the transmission timing of the estimated packet from the transmission side device.
  • the estimated packets In order to estimate the available bandwidth with high accuracy, the estimated packets must be continuously transmitted accurately at the timing specified by the application software for calculating the estimated value. Therefore, a UDP (User Datagram Protocol) packet whose transmission timing can be easily controlled from an application is used as the estimation packet.
  • UDP User Datagram Protocol
  • the packet train is often transmitted periodically.
  • Patent Document 1 cannot be used in a network environment where communication by UDP is not possible due to a firewall or the like. Therefore, in order to cope with a network environment where UDP communication is not possible, consider simply changing the protocol from UDP to TCP (Transmission Control Protocol). In this case, although the communication itself can be performed, the TCP congestion control becomes “disturbance”, and a phenomenon occurs in which continuous transmission of packets is temporarily interrupted in the middle.
  • TCP Transmission Control Protocol
  • TCP communication congestion control is performed by a TCP protocol stack driven by the OS.
  • the OS including the protocol stack for TCP is referred to as an OS for the purpose of comparison with the application layer.
  • an OS on the TCP transmission side manages a congestion window size (congestion window size, hereinafter referred to as cwnd).
  • cwnd congestion window size
  • the variable holding the value of cwnd is an internal variable managed by the OS, it is often impossible to observe directly from the application.
  • the OS on the TCP transmission side can continuously transmit packets by the same number as cwnd without waiting for an ACK (acknowledgement) from the protocol stack on the TCP reception side. For example, when the value of cwnd is 10, the OS on the TCP transmission side can continuously transmit up to 10 packets, and when ACK is not returned, continuous transmission is temporarily performed until ACK is returned. Interrupted. When ACK is returned, cwnd is increased, and the continuous transmission which has been temporarily suspended is resumed. In TCP communication, the continuous transmission and the temporary interruption are generally repeated.
  • the OS on the TCP transmission side measures the RTT of each packet from the transmission time of each packet and the reception time of the corresponding ACK.
  • the retransmission timeout value (hereinafter referred to as RTO occurrence time) is calculated by the following formula described in the standard IETF RFC 6298 (hereinafter referred to as Non-Patent Document 1). -Val)).
  • RTO occurrence time is calculated by the following formula described in the standard IETF RFC 6298 (hereinafter referred to as Non-Patent Document 1). -Val)).
  • IETF is an abbreviation for Internet Engineering Task Force
  • RFC is an abbreviation for Request for Comments.
  • the RTT exponential weighted moving average value SRTT, the RTT average deviation RTTVAR, and the RTO-val are initialized as follows.
  • the left-pointing arrow represents assignment of the value on the left side to the variable on the right side.
  • Max (A, B) is a function for extracting the larger value of A and B.
  • the SRTT, RTTVAR, and RTO-val are updated as follows.
  • G, K, alpha, and beta are predetermined constants.
  • the OS on the TCP transmission side starts a retransmission timer with the RTO-val as a timeout value when each packet is transmitted.
  • cwnd In TCP communication, if the OS on the TCP transmission side determines that a packet loss has occurred, the value of cwnd is lowered to avoid network congestion. There are two types of determination of occurrence of packet loss: packet loss due to light congestion and packet loss due to heavy congestion. The behavior of the decrease in the value of cwnd differs between them.
  • FIG. 10 is an explanatory diagram showing an example of occurrence of packet loss due to slight congestion.
  • FIG. 11 is an explanatory diagram showing an example of packet loss caused by severe congestion.
  • transmission of 100 packets is requested from the application side of the transmission side device.
  • the value of cwnd before transmission in the transmission side apparatus is 100.
  • the RTT corresponding to the round-trip delay from when the packet is intentionally transmitted until the ACK is returned is shortened so that the straight line of each packet exchange I try not to overlap.
  • the RTT is often longer than the packet transmission interval.
  • the ACK of the 90th packet is returned before the transmission of the 91st packet in FIG. 11, but originally it is returned after continuously transmitting not only the 90th packet but also a plurality of subsequent packets. Often comes.
  • FIG. 10 showing an example of occurrence of packet loss due to slight congestion
  • an ACK indicating that the 90th packet has reached the transmitting side device is returned.
  • a packet loss has occurred in the 91st packet.
  • the receiving side device has not received the 91st packet, so a second ACK indicating that the 90th packet has reached the transmitting side device is received.
  • Send back when the 93rd packet arrives at the receiving side device, the receiving side device returns an ACK indicating that it has reached the 90th time again because the 91st packet has not arrived.
  • the transmission side apparatus determines that a packet loss has occurred in the 91st packet for the first time when ACK indicating that it has reached the 90th is received three times.
  • the transmission side apparatus retransmits the 91st packet for which ACK has not returned so far, and changes the value of cwnd.
  • the transmission side apparatus increases the value of cwnd by, for example, 0.7 times. Note that the number of times depends on the TCP implementation. For example, in the case of CUBIC TCP used by default in Linux (registered trademark) OS, it is 0.7 times.
  • the transmission side apparatus decreases the value of cwnd from 190 to 133.
  • packet loss due to slight congestion such packet loss detected by a predetermined number of duplicate ACKs may be referred to as packet loss due to slight congestion.
  • FIG. 11 showing an example of occurrence of packet loss due to severe congestion
  • an ACK indicating that the 90th packet has reached the transmitting side device is returned.
  • the transmission side device updates the RTO value (RTO-val) every time an ACK is received.
  • RTO-val RTO value
  • the transmission side device times out the retransmission timer that was started when the 91st packet was transmitted (RTO occurrence).
  • the transmission side apparatus determines that packet loss has occurred in the 91st, 92nd, and 93rd packets for which no ACK has been returned so far due to the occurrence of RTO.
  • the transmission side apparatus retransmits the 91st, 92nd, and 93rd packets for which ACK has not returned so far, and changes the value of cwnd.
  • the transmission side apparatus sets the value of cwnd to 2, for example. The number of values depends on the TCP implementation. If the value of cwnd at the time when the occurrence of a packet loss is detected is 190, the transmission side apparatus greatly reduces the value of cwnd from 190 to 2.
  • a packet loss detected by the occurrence of RTO may be referred to as a packet loss due to severe congestion.
  • TCP-level RTT and RTO-val are internal variables managed by the OS, and are often not directly observable from the application.
  • a case is considered in which 100 estimated packets are defined as one packet train, and a plurality of packet trains are periodically transmitted.
  • a packet loss due to slight congestion occurs during transmission of one packet train. If the packet loss due to slight congestion is about once, it is possible that the value of cwnd at the end of packet train transmission is sufficiently large due to the occurrence of packet loss or ACK reception after the occurrence of packet loss.
  • the value of cwnd at the end of packet train transmission may be less than 100. For example, assume that the value of cwnd at the next packet train transmission is 70. In this case, although continuous transmission is possible up to the 70th estimated packet, continuous transmission of the estimated packet is temporarily interrupted immediately after that. Then, an error occurs in the transmission timing of the estimated packet from the transmission side device, and the estimation accuracy decreases.
  • Patent Document 3 is a method of intentionally causing congestion by transmitting a preparation packet, thereby preventing a packet having a lower priority than an application packet from being transmitted. It is not considered at all that cwnd is made sufficiently large to a value that allows continuous transmission of packets of an application. In the first place, since Patent Document 3 does not require high-accuracy continuous transmission of application packets, it is not necessary.
  • the present invention provides an available bandwidth estimation system capable of accurately estimating the available bandwidth on a network that cannot use a protocol without reception confirmation with a simple configuration at the application level, and
  • An object of the present invention is to provide a control system, a communication device, a control method, and a control program for controlling the congestion window size.
  • the present invention is not limited to the estimation of the available bandwidth, and when a predetermined packet sequence is transmitted using a protocol having reception confirmation and congestion control by a window, a congestion window is previously obtained with a simple configuration at an application level.
  • An object of the present invention is to provide a control system, a control method, and a control program that can increase the size of the packet sequence to a size that allows continuous transmission of the packet sequence.
  • a control system includes a transmission side device that is a communication device on the transmission side and a reception side device that is a communication device on the reception side.
  • the transmission side device has a protocol for performing reception confirmation and congestion control by a window.
  • a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are collected before transmission of the first packet sequence composed of a plurality of packets that are used and requested to be transmitted at a predetermined transmission interval.
  • a warm-up packet sequence transmitting means for transmitting the warm-up packet sequence to the receiving side device; a warm-up packet number determining means for determining the number of warm-up packets to be included in the warm-up packet sequence;
  • the protocol stack after transmission of the warm-up packet sequence based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving-side device obtained as a result Window size estimation means for estimating the minimum value of the congestion window size, and the warm-up packet number determination means is included in the warm-up packet sequence to be retransmitted based on the estimation result of the minimum value of the congestion window size.
  • the number of warm-up packets is determined.
  • the available bandwidth estimation system includes a transmission-side apparatus that is a transmission-side communication apparatus and a reception-side apparatus that is a reception-side communication apparatus, and the transmission-side apparatus performs reception confirmation and congestion control by a window.
  • a plurality of warm-up packets which are preparation packets transmitted using the protocol, are transmitted before the transmission of the first packet sequence including a plurality of packets requested to be transmitted at a predetermined transmission interval using the protocol.
  • a warm-up packet sequence transmitting means for transmitting the combined warm-up packet sequence to the receiving side device; a warm-up packet number determining means for determining the number of warm-up packets included in the warm-up packet sequence;
  • the protocol after the transmission of the warm-up packet sequence based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving-side device acquired as a result of transmission
  • the number of warm-up packets to be included in the warm-up packet sequence to be retransmitted is determined.
  • Unit packet number determination means and first packet sequence transmission means for transmitting the first packet sequence to the reception side device.
  • the reception side device transmits the first packet sequence based on the reception result of the first packet sequence.
  • a warm-up packet sequence for performing retransmission based on the estimation result of the minimum value of the congestion window size. The number of warm-up packets to be included in is determined.
  • the communication apparatus uses a protocol in which reception confirmation and congestion control by a window are performed, and before the transmission of the first packet sequence including a plurality of packets requested to be transmitted at a predetermined transmission interval.
  • a warm-up packet train transmitting means for sending a warm-up packet sequence in which a plurality of warm-up packets, which are preparatory packets transmitted using a packet, to a predetermined receiving side device, and a warm-up to be included in the warm-up packet train
  • Window size estimation means for estimating the minimum value of the congestion window size in the protocol stack after transmission of the warm-up packet sequence, Number determining means characterized by determining based on the estimation result of the minimum value of the congestion window size, the number of warm-up packets to be included in
  • the control method comprises a plurality of packets in which a transmission side apparatus, which is a transmission side communication apparatus, uses a protocol in which reception confirmation and congestion control by a window are performed, and transmission is requested at a predetermined transmission interval.
  • a warm-up packet sequence in which a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are gathered is transmitted to a predetermined receiving device, Based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device acquired as a result of transmission of the packet sequence, the congestion window size of the protocol stack after transmission of the warm-up packet sequence Estimate the minimum value and determine the number of warm-up packets to be included in the warm-up packet sequence to be retransmitted based on the estimation result of the minimum value of the congestion window size When the determined number of warm-up packets is 1 or more, the warm-up packet sequence including the determined number of warm-up packets is retransmitted before transmit
  • the control program uses a protocol in which reception confirmation and congestion control by a window are performed on a computer, and before transmission of the first packet sequence including a plurality of packets that are requested to be transmitted at a predetermined transmission interval.
  • a process of transmitting a warm-up packet sequence in which a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are gathered to a predetermined receiving device, and acquired as a result of transmission of the warm-up packet sequence Processing for estimating the minimum value of the congestion window size in the protocol stack after transmission of the warm-up packet sequence based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device, and the congestion window Determine the number of warm-up packets included in the warm-up packet sequence to be retransmitted based on the estimated minimum size Characterized in that to execute the process.
  • the congestion window is continuously transmitted in advance with a simple configuration at an application level. Can be increased to a possible size.
  • FIG. 1 is a network configuration diagram illustrating an example of a network configuration of an available bandwidth estimation system according to the first embodiment of this invention.
  • a transmission side device 1 and a reception side device 2 are connected via a network 3.
  • the transmission side device 1 and the reception side device 2 are a personal computer (PC), a portable computer (PDA), a mobile phone, a smartphone, a tablet terminal, a landline phone, a street multimedia terminal, an in-vehicle terminal, a TV with a network connection function, respectively. It may be a set-top box with a network connection function, a game machine, a printer with a network connection function, a scanner with a network connection function, or another similar device having a function of exchanging information with the outside.
  • PC personal computer
  • PDA portable computer
  • mobile phone a smartphone, a tablet terminal, a landline phone, a street multimedia terminal, an in-vehicle terminal, a TV with a network connection function, respectively. It may be a set-top box with a network connection function, a game machine, a printer with a network connection function, a scanner with a network connection function, or another similar device having a function of exchanging information with the outside.
  • devices not shown other than the transmitting device 1 and the receiving device 2 may be connected to the network 3, and cross traffic may flow between these devices (not shown).
  • the transmission side apparatus 1 collects a plurality of TCP packets and preparation packets (hereinafter referred to as warm-up packets) as one group before transmitting the packet train. Send warm-up packet train. Then, the transmission-side apparatus 1 calculates the reception interval of each warm-up packet using the reception time stored in the response packet for each warm-up packet in the warm-up packet sequence, and measures the application level RTT. .
  • the transmission side device 1 estimates the TCP level RTO-val from the measured application level RTT, and based on the reception interval, the RTT, and the RTO-val described above, the TCP level heavy congestion or light congestion It is determined whether or not packet loss has occurred.
  • the transmitting-side apparatus 1 adjusts the number of warm-up packets to the minimum necessary number according to the degree of congestion, and then reopens the warm-up packet sequence. Send.
  • cwnd can be increased to a sufficiently large value before transmission of the packet train.
  • the transmission side device 1 of the present embodiment also calculates the reception interval of each estimated packet, measures the application level RTT, and estimates the TCP level RTO-val when transmitting the packet train.
  • the number of warm-up packets in the next warm-up packet sequence may be adjusted based on the occurrence or non-occurrence of packet loss estimated based on the above.
  • the warm-up packet to be sent next depends on whether or not packet loss has occurred and the degree of congestion
  • the number of warm-up packets transmitted can be suppressed as a whole.
  • the protocol used for packet train transmission is TCP will be described as an example.
  • the protocol is not limited to TCP, and any protocol that has reception confirmation and congestion control by a window may be used.
  • FIG. 2 is a block diagram showing a more detailed configuration example of the transmission side device 1 and the reception side device 2 included in the available bandwidth estimation system.
  • the transmission side device 1 includes a packet transmission unit 10, a packet sequence generation unit 11, a warm-up packet number determination unit 12, a reception interval calculation unit 13, a timer value estimation unit 14, a packet loss determination unit 15, a congestion
  • the window size estimation means 16 and the data storage means 17 may be included.
  • Packet transmission means 10 transmits a warm-up packet train and a packet train.
  • each packet in the packet sequence when it is not necessary to particularly distinguish each warm-up packet in the warm-up packet sequence from each estimated packet in the packet train, it may be referred to as “each packet in the packet sequence” or simply “each packet”.
  • the packet sequence generator 11 generates a warm-up packet sequence and a packet train.
  • the warm-up packet number determining means 12 determines the number of warm-up packets included in the warm-up packet sequence.
  • the reception interval calculation means 13 calculates the reception interval of each packet in the packet sequence based on the reception time of the packet recorded by the reception side device 2.
  • the timer value estimating means 14 calculates the application level RTT from the application level transmission time of each packet and the reception time of the response packet for each packet, and then RTO-val which is the timer value of the TCP level RTO. Is estimated.
  • the packet loss determination means 15 uses the reception interval of each packet in the packet sequence, the calculated application level RTT, and the estimated RTO-val to cause packet loss due to heavy congestion or light congestion at the TCP level. It is determined whether or not has occurred.
  • the congestion window size estimation means 16 estimates the value of cwnd based on the determination result of the occurrence of packet loss.
  • the data storage means 17 stores various data.
  • FIG. 3 is an explanatory diagram showing an example of the data structure of data stored in the data storage unit 17.
  • the data storage means 17 includes the number of warm-up packets 30, one or more warm-up packet transmission intervals 31, one or more warm-up packet reception intervals 32, and one or more RTT measurements.
  • the number of warm-up packets 30 is the number of warm-up packets included in the warm-up packet sequence.
  • the warm-up packet transmission interval 31 is a transmission interval of each warm-up packet.
  • the warm-up packet reception interval 32 is a reception interval of each warm-up packet.
  • the RTT measurement value 40 is a calculated value of the above-described application level RTT.
  • the RTO estimated value 41 is an estimated value of the above-described TCP level RTO-val.
  • the congestion window size estimated value 42 is an estimated value of cwnd at the TCP level in the transmission side apparatus 1.
  • the estimated number of packets 50 is the number of estimated packets included in the packet train. This number is manually set by the system user or administrator.
  • the estimated packet transmission interval 51 is a transmission interval of each estimated packet.
  • the estimated packet reception interval 52 is a reception interval of each estimated packet.
  • the receiving side apparatus 2 may include a packet receiving unit 20, an available bandwidth estimating unit 21, and a data storage unit 22.
  • the packet receiving means 20 When the packet receiving means 20 receives a warm-up packet or an estimated packet, it returns a corresponding response packet together with a TCP level ACK packet.
  • the available bandwidth estimation means 21 estimates the available bandwidth.
  • the available bandwidth estimation means 21 can estimate the available bandwidth from, for example, whether there is a change in the reception interval of each packet when receiving a plurality of estimated packets continuously transmitted at a predetermined time interval collected as a packet train. .
  • the data storage means 22 stores various data.
  • FIG. 4 is an explanatory diagram showing an example of the data structure of data stored in the data storage unit 22. As shown in FIG. 4, the data storage unit 22 may store an available band estimated value 59.
  • the usable bandwidth estimated value 59 is an estimated value of the usable bandwidth.
  • the packet transmission unit 10 the packet sequence generation unit 11, the warm-up packet number determination unit 12, the reception interval calculation unit 13, the timer value estimation unit 14, the packet loss determination unit 15, and the congestion window size estimation unit 16
  • the data storage means 17 is implement
  • the usable bandwidth estimation unit 21 is realized by an information processing device that operates according to a program such as a CPU provided in the reception-side device 2, for example.
  • the data storage means 22 is implement
  • FIG. 5 is a flowchart showing an example of the operation of the available bandwidth estimation system of the present embodiment.
  • 100 is manually set to the estimated number of packets 50 by the user or administrator of the system.
  • 100 is designated as the estimated number of packets included in one packet train.
  • desired values are set manually for the warm-up packet transmission interval 31 and the estimated packet transmission interval 51 by a user or administrator of this system.
  • the transmission interval of each warm-up packet included in one warm-up packet sequence may not be the same.
  • the transmission intervals of the estimated packets included in one packet train may not be the same.
  • step S60 the number of warm-up packets included in the warm-up packet sequence is stored in the data storage unit 17 by the warm-up packet number determining unit 12 of the transmission side apparatus 1. Set to the same value as 30 warm-up packets.
  • the number of packets included in each of the warm-up packet sequence and the packet train may be made the same by overwriting the number of warm-up packets 30 with the estimated number of packets 50.
  • one TCP level ACK packet is returned for two warm-up packets.
  • the warm-up packet count 30 may be overwritten with a value twice the estimated packet count 50 so that ACKs for the estimated packet count are received by transmission. This is because the value of cwnd after transmission of the warm-up packet sequence is set to 50 or more estimated packets. In this case, the number of warm-up packets included in the warm-up packet sequence is twice the estimated number of packets included in the packet train.
  • the packet sequence generation means 11 generates a warm-up packet sequence including the number of warm-up packets indicated by the number of warm-up packets 30. Then, the packet transmission unit 10 transmits the generated warm-up packet sequence. For example, the packet transmission unit 10 may transmit the warm-up packet sequence by sequentially requesting the OS layer to transmit each warm-up packet included in the warm-up packet sequence. At this time, the packet transmission means 10 holds the transmission time of each warm-up packet, calculates the transmission interval of each warm-up packet from the transmission time of each warm-up packet, and stores the data as the warm-up packet transmission interval 31 It is held in the storage means 17. The transmission time of each warm-up packet may be, for example, a timing when a transmission request is made to the OS layer or a timing when a transmission completion is received from the OS layer.
  • the packet receiving means 20 of the receiving side apparatus 2 receives the warm-up packet and returns a corresponding response packet.
  • an ACK reply is made at the TCP level before the response packet is sent back, or the response packet itself also serves as a TCP level ACK reply.
  • the reception time of the corresponding warm-up packet in the reception-side device 2 is embedded.
  • the reception interval calculation means 13 of the transmission side apparatus 1 receives the response packet transmitted from the reception side apparatus 2, the reception time of the corresponding warm-up packet and the previous warm-up packet included in the response packet are received.
  • the reception interval of the corresponding warm-up packet is calculated from the reception time of.
  • the reception interval calculation unit 13 holds the calculated reception interval in the data storage unit 17 as the warm-up packet reception interval 32 of the corresponding warm-up packet.
  • the timer value estimating means 14 of the transmission side device 1 determines each warm-up packet from the transmission time of each warm-up packet acquired in step S60 and the reception time of the response packet acquired in step S61. Then, the RTT at the application level is calculated and stored in the data storage means 17 as the RTT measurement value 40. Further, the timer value estimating means 14 estimates the TCP level RTO-val for each warm-up packet from the calculated application level RTT for each warm-up packet, and stores it in the data storage means 17 as the RTO estimated value 41.
  • the method described in Non-Patent Document 1 may be used for estimating the TCP level RTO-val.
  • the RTO-val may be obtained using the application level RTT as the TCP level RTT. Further, for example, when the time lag from the application level RTT to the OS layer to the application layer is known, the value obtained by subtracting the value may be used as the TCP level RTT to obtain the RTO-val. .
  • the congestion window size estimation means 16 of the transmission side apparatus 1 determines whether or not a packet loss due to slight congestion has occurred. Specifically, the congestion window size estimation unit 16 sequentially checks the warm-up packet reception interval 32 for each warm-up packet from the first packet to the last packet in the warm-up packet sequence, and It is determined whether or not the value of the warm-up packet reception interval 32 of the packet is equal to or greater than a predetermined value (hereinafter referred to as a first threshold value) that is determined to generate packet loss due to slight congestion at the TCP level.
  • a predetermined value hereinafter referred to as a predetermined value
  • the first threshold value is, for example, when occurrence of packet loss due to slight congestion is recognized at the time of reception of 3 duplicate ACKs, and the packet is lost from the transmission time of the packet of interest and 3 duplicate ACKs are received. It may be the time until receiving. More specifically, the RTT measurement value of the warm-up packet currently focused on is a value that is three times the warm-up packet transmission interval 31 of the warm-up packet currently focused or the average warm-up packet transmission interval 31. 40 or an average RTT measurement value 40 may be added.
  • the congestion window size estimation unit 16 determines that the warm-up packet reception interval 32 of the subsequent warm-up packet is equal to or less than a predetermined second threshold as a determination condition for occurrence of packet loss due to mild congestion. It may be added to the conditions.
  • the second threshold value may be determined based on an interval of reception time stamps attached to each packet when a plurality of packets are received at a time in the OS layer. For example, it may be an average value, a maximum value, a minimum value, or a predetermined value (for example, 100 ⁇ s) according to the processing speed of the OS.
  • the OS layer of the receiving side apparatus 2 Since the OS layer of the receiving side apparatus 2 has not received the expected 91st warm-up packet, at this time, the application side is not notified that the warm-up packet has arrived, and the TCP level for the 90th warm-up packet The ACK packet is returned again. If the 93rd warm-up packet transmitted after that arrives without any loss in the network on the way, the OS layer of the receiving-side apparatus 2 has not received the expected 91st warm-up packet. Performs the same processing as when receiving a machine packet. That is, the OS layer of the receiving-side device 2 returns a TCP level ACK packet for the 90th warm-up packet again without notifying that the warm-up packet has arrived at the application side.
  • the OS layer of the transmission-side apparatus 1 determines that a packet loss has occurred in the 91st warm-up packet when the TCP level duplicate ACK packet for the 90th warm-up packet has been received three times in total. Resend the th warm-up packet.
  • the OS layer of the receiving side device 2 When the retransmitted 91st warm-up packet arrives without loss in the network on the way, the OS layer of the receiving side device 2 immediately receives the 91st, 92nd, and 93rd warm-up packets received so far by the application side. Is transmitted, and the corresponding warm-up packet ACK packet is returned to the transmitting-side apparatus 1.
  • the application (packet receiving means 20) for estimating the available bandwidth of the receiving side apparatus 2 recognizes that it has received the 91st, 92nd, and 93rd warm-up packets only after receiving a notification from the OS layer.
  • the reception time of each warm-up packet in the transmission side device 1 is obtained from the response packet from the application in the reception side device 2. For this reason, the reception interval between the 89th and 90th warm-up packets that were not lost (the warm-up packet reception interval 32 of the 90th warm-up packet) is between the 91st warm-up packets lost from the 90th. Compared to it (warm-up packet reception interval 32 of the 91st warm-up packet), it is greatly different. More specifically, the reception interval between the 89th and 90th warm-up packets is close to the transmission interval between the 89th and 90th warm-up packets, but the 90th and 91st warm-up packets. As shown in FIG.
  • the reception interval between the RTT measurement value 40 obtained for the 91st warm-up packet is set to a value that is three times the transmission interval between the 90th and 91st warm-up packets. It extends to a value equal to or greater than the value obtained by adding the average RTT measurement value 40.
  • the 91st, 92nd, and 93rd warm-up packets which are a predetermined number of warm-up packets after the lost packet that was lost, appear to have been received almost simultaneously, so the 91st and 92nd
  • the reception interval between warm-up packets and the reception interval between the 92nd and 93rd warm-up packets are extremely short values. Therefore, these extremely short reception intervals may be added to the determination conditions for occurrence of packet loss due to slight congestion.
  • step S63 if the congestion window size estimation means 16 determines that a packet loss due to slight congestion has occurred (Yes in step S63), the process proceeds to step S64, and if not determined ( The process proceeds to step S65 (No in step S63).
  • the congestion window size estimation means 16 estimates the TCP level congestion window size, that is, the value of cwnd.
  • the congestion window size estimation means 16 does not need to estimate a strict value, and may estimate the smallest possible value (hereinafter may be referred to as the minimum value).
  • the minimum value of cwnd is, for example, the initial value of TCP level cwnd, the transmission result of the previous packet sequence, the occurrence of the specified packet loss and the degree of congestion, the transmission result of the current packet sequence, the identification Based on the occurrence of packet loss and the degree of congestion, it follows the control of the congestion window of the protocol stack, that is, by performing the same numerical calculation as that performed for cwnd in the protocol stack. Good.
  • the congestion window size estimation means 16 obtains the immediately preceding cwnd from, for example, the initial value of cwnd at the TCP level and the number of ACKs received by the warm-up packet sequence until the occurrence of packet loss, and is 0.7 times larger than that. By doing so, it is possible to predict cwnd after occurrence of packet loss.
  • the value of cwnd at the time when transmission of the warm-up packet sequence is completed can be estimated by adding the amount of increase due to ACK reception of the remaining number of warm-up packets.
  • the value of cwnd before warm-up packet transmission may be set to 0 without exceeding the initial value. If the number of occurrences of packet loss due to slight congestion is 1, the value of cwnd after completion of warm-up packet sequence transmission is approximately warm considering the increase due to ACK reception before and after packet loss. Since it can be assumed that the number of machine packets is 0.7 times or more, it may be obtained by such simple calculation.
  • the value of cwnd is estimated to be at least 70 or more when one warm-up packet sequence has been transmitted.
  • the value of cwnd is set to 100 or more, which is the estimated number of packets before packet train transmission.
  • the congestion window size estimation unit 16 determines whether or not a packet loss due to more severe congestion has occurred. Specifically, the congestion window size estimation unit 16 sequentially checks the warm-up packet reception interval 32 for each warm-up packet from the first packet to the last packet in the warm-up packet sequence, and It is determined whether or not the value of the warm-up packet reception interval 32 of the packet is equal to or greater than a predetermined value (hereinafter referred to as a third threshold) that is determined to be packet loss due to severe congestion at the TCP level.
  • a third threshold a predetermined value
  • the third threshold value may be a time obtained by adding the RTO timer value to the transmission interval of the packet of interest when, for example, occurrence of packet loss due to severe congestion is recognized due to occurrence of RTO. More specifically, the value of the warm-up packet transmission interval 31 of the warm-up packet currently focused on is added to the value of the RTO estimated value 41 or the average RTO estimated value 41 of the warm-up packet currently focused on. It may be a value.
  • the congestion window size estimation means 16 uses a predetermined threshold (similar to the above-described second threshold) as a determination condition for occurrence of packet loss due to severe congestion, in which the warm-up packet reception interval 32 of subsequent warm-up packets is extremely short. (Good) The following may be added to the above conditions.
  • the OS layer of the transmitting side apparatus 1 determines that a packet loss due to heavy congestion has occurred in response to the expiration of the retransmission timer (RTO has occurred) that was started when the 91st warm-up packet was transmitted.
  • the 91st, 92nd, and 93rd warm-up packets for which no ACK has been returned are retransmitted.
  • the OS layer of the receiving apparatus 2 immediately notifies the application side that the 91st, 92nd, and 93rd warm-up packets received so far have arrived, and sends the corresponding ACK packet of the warm-up packet to the transmitting apparatus 1.
  • the application packet receiving means 20 for estimating the available bandwidth of the receiving side apparatus 2 recognizes that it has received the 91st, 92nd, and 93rd warm-up packets only after receiving a notification from the OS layer.
  • the reception interval between the 89th and 90th warm-up packets that were not lost (the warm-up packet reception interval 32 of the 90th warm-up packet) and the 91st warm-up lost from the 90th
  • the reception interval between packets (the warm-up packet reception interval 32 of the 91st warm-up packet) is greatly different. More specifically, the reception interval between the 89th and 90th warm-up packets is close to the transmission interval between the 89th and 90th warm-up packets, but the 90th and 91st warm-up packets. As shown in FIG.
  • the reception interval between the RTO estimated value 41 obtained for the 91st warm-up packet or the average RTO estimate is the transmission interval between the 90th and 91st warm-up packets.
  • the value is equal to or greater than the value obtained by adding the value 41.
  • the 91st, 92nd, and 93rd warm-up packets which are a predetermined number of warm-up packets after the lost packet, appear to be received almost simultaneously, packet loss due to slight congestion As in the case of, the extremely short reception interval of the subsequent warm-up packet may be added to the determination condition for occurrence of packet loss due to severe congestion.
  • step S65 if the congestion window size estimation means 16 determines that a packet loss due to severe congestion has occurred (Yes in step S65), it proceeds to step S66, and if it does not determine ( The process proceeds to step S67 (No in step S65).
  • step S66 the congestion window size estimation means 16 estimates the value of cwnd at the TCP level in response to the determination result that packet loss has occurred due to severe congestion.
  • the congestion window size estimating means 16 does not need to estimate a strict value, and it is only necessary to predict the smallest possible value.
  • the congestion window size estimation means 16 can estimate cwnd after occurrence of packet loss as 2, for example, when packet loss occurs due to severe congestion. Depending on the timing at which packet loss due to severe congestion occurs, the value of cwnd after completion of warm-up packet sequence transmission can take values from 99 to 2. However, the minimum value of cwnd may be set to 2 which is the worst pattern without considering these timings.
  • the congestion window size estimation means 16 follows the control of the congestion window of the protocol stack based on various measured values and estimated values, for example, as in the packet loss determination method due to slight congestion, as in the method of determining packet loss due to slight congestion. And may be calculated.
  • cwnd is estimated to be at least 2 or more when one warm-up packet sequence has been transmitted.
  • the value of cwnd is desired to be 100 or more, which is the estimated number of packets before packet train transmission, it can be seen that it is only necessary to increase 98 more.
  • step S67 the operation of steps S67 to S73 is performed only by changing the transmission target from the warm-up packet sequence to the packet train. Since the contents of the operation are essentially the same as those in steps S60 to S66, the description thereof is omitted. That is, when transmission of the packet train train is completed, the packet loss due to light or severe congestion during transmission is also determined for the packet train train. Note that the adjustment of the number of warm-up packets in step S71 and step S73 is for determining the number of warm-up packets at the next transmission of the warm-up packet sequence, and after completion of the adjustment, the process proceeds to step S75.
  • Step S74 is a process that proceeds when it is determined that no packet loss has occurred at the time of transmission of both the warm-up packet sequence and the transmission of the packet train.
  • the warm-up packet number determining means 12 may set the value of the warm-up packet number 30 to zero. Note that the number of warm-up packets to be included in the warm-up packet at the next warm-up packet sequence transmission is the estimated number of packets, regardless of the packet loss determination result at the time of warm-up packet train transmission or packet train transmission. Also good.
  • step S75 the available bandwidth estimation means 21 of the reception side device 2 estimates the available bandwidth based on the reception result of the packet train transmitted from the transmission side device 1. Then, the available bandwidth estimation means 21 stores the estimated available bandwidth value in the data storage means 22 as the available bandwidth estimation value 59.
  • the method described in Patent Document 1 may be used for estimating the available bandwidth.
  • step S64 for simplification of the system, in step S64, step S66, step S71, step S73, and step S74, the value of the number of warm-up packets 30 is set to the same value as the estimated number of packets 50 or 2 of the estimated number of packets 50. A double value may be set.
  • the number of warm-up packets is adjusted according to the presence / absence of packet loss and the degree of congestion, so that it can be accurately performed at a specified time over all estimated packets of the packet train. It is possible to minimize the number of warm-up packets required for transmission to the network. For this reason, not only can the packet train be transmitted accurately at the specified time, but also the time and transmission load overhead associated with the transmission of the warm-up packet can be reduced.
  • the number of warm packets is adjusted according to the occurrence of packet loss and the degree of congestion, thereby allowing multiple packet train transmissions. Even when it is performed, the number of warm-up packets can be reduced, and the time and communication load overhead associated with the transmission of warm-up packets can be reduced.
  • the example in which the method for controlling the congestion window size according to the present invention is applied to the available bandwidth estimation system for estimating the available bandwidth is shown.
  • the method for controlling the congestion window size according to the present invention is applicable. It is not limited to the band estimation application.
  • the present invention can be applied to a control system that provides a function for setting a congestion window size of a protocol stack to a predetermined value or more in the application layer. In that case, the function regarding the transmission of the packet train in the transmission side apparatus 1 and the function regarding the estimation of the available bandwidth in the reception side apparatus 2 are omitted.
  • FIG. 8 is a block diagram showing an outline of a control system according to the present invention.
  • the control system according to the present invention includes a transmitting apparatus 700 that is a transmitting communication apparatus and a receiving apparatus 800 that is a receiving communication apparatus.
  • the transmission-side apparatus 700 includes a warm-up packet train transmission unit 701, a warm-up packet number determination unit 702, and a window size estimation unit 703.
  • the warm-up packet sequence transmission unit 701 (for example, the packet transmission unit 10, the packet sequence generation unit 11 and the like) uses a protocol that performs reception confirmation and congestion control by a window, and is requested to transmit at a predetermined transmission interval. Before transmitting the first packet sequence including a plurality of packets, a warm-up packet sequence in which a plurality of warm-up packets, which are preparation packets transmitted using a protocol, are collected is transmitted to the receiving-side device 800.
  • the warm-up packet number determining means 702 determines the number of warm-up packets to be included in the warm-up packet sequence.
  • the warm-up packet number determining means 702 determines the number of warm-up packets to be included in the warm-up packet sequence to be retransmitted based on the estimation result of the minimum value of the congestion window size by the window size estimating means 703 described later.
  • the window size estimation unit 703 (for example, the congestion window size estimation unit 16) acquires the transmission time of each warm-up packet included in the warm-up packet sequence and the reception at the reception-side device 800, acquired as a result of the transmission of the warm-up packet sequence. Based on the time, the minimum value of the congestion window size in the protocol stack after transmission of the warm-up packet sequence is estimated.
  • the congestion window is continuously transmitted in advance with a simple configuration at the application level. Can be increased to a possible size.
  • the first packet sequence is a packet train for estimating available bandwidth, it is possible to estimate the available bandwidth on a network with a simple application-level configuration that cannot use a protocol without reception confirmation with high accuracy. Can do.
  • FIG. 9 is a block diagram showing another configuration example of the control system according to the present invention.
  • the transmission-side apparatus 700 includes a transmission / reception time acquisition unit 704, a timer value estimation unit 705, a packet loss determination unit 706, and a first packet sequence.
  • a transmission unit 707 may be included.
  • the receiving-side apparatus 800 may include an available band estimation unit 801.
  • the transmission / reception time acquisition unit 704 (for example, the reception interval calculation unit 13, the packet transmission unit 10, etc.) acquires the transmission time and the reception time at the reception side device of each warm-up packet included in the warm-up packet sequence.
  • the timer value estimating means 705 (for example, the timer value estimating means 14) is based on the application level during transmission of the warm-up packet sequence from the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device.
  • RTT which is the round trip time of R
  • RTO-val which is the value of the retransmission timer at the protocol stack level.
  • the packet loss determination unit 706 (for example, the packet loss determination unit 15) includes a transmission interval of warm-up packets specified from the transmission time of each warm-up packet included in the warm-up packet sequence, and each of the warm-up packet sequences. Based on the warm-up packet reception interval specified from the warm-up packet reception time, RTT, and RTO-val, whether or not packet loss has occurred and whether the degree of congestion at that time is mild or severe judge.
  • the first packet sequence transmission unit 707 (for example, the packet transmission unit 10, the packet sequence generation unit 11, etc.) transmits the first packet sequence to the reception side device 800.
  • Available bandwidth estimation means 801 estimates the available bandwidth in the communication path between the transmission side apparatus and the reception side apparatus based on the reception result of the first packet sequence.
  • the control system may be referred to as an usable bandwidth estimation system.
  • the transmission side apparatus which is a communication apparatus of a transmission side
  • the reception side apparatus which is a communication apparatus of a reception side
  • the transmission side apparatus uses the protocol by which reception confirmation and congestion control by a window are performed, and A warm-up packet in which a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are collected before transmission of the first packet sequence including a plurality of packets that are requested to be transmitted at a predetermined transmission interval.
  • warm-up packet sequence transmission means for transmitting the sequence to the receiving side device
  • warm-up packet number determination means for determining the number of warm-up packets included in the warm-up packet sequence, and Based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device, the congestion window in the protocol stack after transmission of the warm-up packet sequence Window size estimation means for estimating the minimum value of the size, and the warm-up packet number determination means is a warm-up packet included in the warm-up packet sequence to be retransmitted based on the estimation result of the minimum value of the congestion window size Control system, characterized by determining the number of.
  • the warm-up packet number determination means includes a value obtained by subtracting the estimated minimum congestion window size from the number of packets included in the first packet sequence in the warm-up packet sequence to be retransmitted.
  • the window size estimation means obtains the transmission time of each warm-up packet included in the first packet sequence and the reception time at the receiving-side device acquired as a result of transmission of the warm-up packet sequence of the first packet sequence.
  • the warm-up packet number determining means estimates the minimum value of the congestion window size based on the estimation result of the minimum value of the congestion window size, and estimates the minimum value of the congestion window size in the protocol stack after transmission of the first packet sequence.
  • the control system according to Supplementary Note 1 or Supplementary Note 2, wherein the number of warm-up packets to be included in a warm-up packet sequence that is transmitted before transmission of one packet is determined.
  • the warm-up packet number determining means determines whether the first packet of the next time when no packet loss occurs during transmission of the first packet sequence and transmission of the previous warm-up packet sequence. 4. The control system according to supplementary note 3, wherein the number of warm-up packets included in the warm-up packet sequence to be transmitted is determined to be 0 before transmission.
  • the transmission side device includes transmission / reception time acquisition means for acquiring the transmission time and the reception time at the reception side device of each warm-up packet included in the warm-up packet sequence, and each warm-up included in the warm-up packet sequence
  • the window size estimation unit estimates the minimum value of the congestion window size based on the determination result by the packet loss determination unit. 4. The control system according to any one of 4.
  • the window size estimation means estimates the minimum value of the congestion window size based at least on the number of reception confirmations received by transmission of the warm-up packet sequence and the number of occurrences of packet loss due to mild and severe congestion.
  • the control system according to appendix 5.
  • the window size estimation means when it is determined that a packet loss due to a slight congestion has occurred, where j is a decrease rate of the congestion window size due to a slight congestion in the congestion window control in the protocol stack,
  • the window size estimation means when it is determined that a packet loss due to severe congestion has occurred, assuming that the value of the congestion window size after severe congestion in the congestion window control in the protocol stack is k,
  • the control system according to any one of appendix 5 to appendix 7, wherein the minimum value of the congestion window size in the protocol stack is estimated as k.
  • the packet loss determination means is configured such that the reception interval of a certain warm-up packet is the transmission interval of the warm-up packet, where n is the number of duplicate reception confirmations received before the protocol stack detects a slight congestion Is equal to or greater than the value obtained by adding RTT to the value obtained by multiplying n by a value as a determination condition for occurrence of packet loss due to light congestion in the warm-up packet.
  • the control system according to any one of appendix 5 to appendix 8 for determining occurrence.
  • the packet loss determination means determines that a packet due to severe congestion in a warm-up packet when a reception interval of a warm-up packet is equal to or greater than a value obtained by adding RTO-val to the transmission interval of the warm-up packet.
  • the control system according to any one of appendix 5 to appendix 9, which determines occurrence of packet loss due to severe congestion for each warm-up packet using the determination condition for loss occurrence.
  • the packet loss determination means further includes a predetermined number of warm-ups following the warm-up packet of interest as a determination condition for occurrence of packet loss due to light congestion or as a determination condition for occurrence of packet loss due to heavy congestion.
  • a transmission-side device that is a communication device on the transmission side and a reception-side device that is a communication device on the reception side, the transmission-side device uses a protocol that performs reception confirmation and congestion control by a window, and A warm-up packet in which a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are collected before transmission of the first packet sequence including a plurality of packets that are requested to be transmitted at a predetermined transmission interval.
  • warm-up packet sequence transmission means for transmitting the sequence to the receiving side device
  • warm-up packet number determination means for determining the number of warm-up packets included in the warm-up packet sequence
  • the congestion window in the protocol stack after transmission of the warm-up packet sequence is based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device.
  • the number of warm-up packets is determined to determine the number of warm-up packets included in the warm-up packet sequence to be retransmitted Means and a first packet sequence transmitting means for transmitting the first packet sequence to the receiving side device, the receiving side device based on the reception result of the first packet sequence, the transmitting side device and the receiving side device
  • the warm-up packet number determining means includes a warm-up packet number to be included in a warm-up packet sequence to be retransmitted based on the estimation result of the minimum value of the congestion window size.
  • An available bandwidth estimation system for determining the number of machine packets.
  • a warm-up packet sequence transmitting means for transmitting a warm-up packet sequence in which a plurality of warm-up packets, which are preparation packets to be transmitted, are collected to a predetermined receiving side device, and the number of warm-up packets included in the warm-up packet sequence Based on the transmission time of each warm-up packet included in the warm-up packet sequence and the reception time at the receiving side device, which is obtained as a result of transmission of the warm-up packet sequence, Window size estimation means for estimating the minimum value of the congestion window size in the protocol stack after transmission of the packet sequence, and means for determining the number of warm-up packets , Based on the estimation result of the minimum value of the congestion window size, retransmission communication device, wherein the step of determining the number of warm-up packets to be
  • the transmission side apparatus which is a transmission side communication apparatus uses the protocol in which the reception confirmation and the congestion control by the window are performed, and includes a first packet composed of a plurality of packets requested to be transmitted at a predetermined transmission interval.
  • a warm-up packet sequence in which a plurality of warm-up packets, which are preparation packets transmitted using the protocol, are gathered is transmitted to a predetermined receiving-side device. Based on the transmission time of each warm-up packet included in the warm-up packet sequence acquired as a result of transmission and the reception time at the receiving side device, the minimum congestion window size in the protocol stack after transmission of the warm-up packet sequence is determined.
  • the protocol Before transmitting the first packet sequence composed of a plurality of packets that are requested to be transmitted at a predetermined transmission interval by using a protocol in which reception confirmation and congestion control by a window are performed in a computer, the protocol A process for transmitting a warm-up packet string, which is a group of warm-up packets, which are preparation packets transmitted using a packet, to a predetermined receiving device, and a warm-up packet acquired as a result of transmission of the warm-up packet stream Processing for estimating the minimum value of the congestion window size in the protocol stack after transmission of the warm-up packet sequence based on the transmission time of each warm-up packet included in the sequence and the reception time at the receiving side device, and the minimum of the congestion window size Based on the value estimation result, a process for determining the number of warm-up packets included in the warm-up packet sequence to be retransmitted is executed. Because of the control program.
  • the present invention can be suitably applied to the use of estimating the available bandwidth in order to ensure video quality when performing video chat, videophone, video conference, etc., in which video is transmitted bidirectionally between terminals. It is. Further, the present invention is not limited to the usage estimation of the available bandwidth, and can be suitably applied to a case where a plurality of packets are continuously transmitted with high accuracy at a predetermined time interval. Further, the present invention is not limited to continuous transmission applications, and can be suitably applied to cases where it is desired to increase and maintain the congestion window size of the protocol stack from the application layer.

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention vise à estimer de manière très précise une bande passante disponible dans un réseau, au moyen d'une configuration simple au niveau application. Dans le réseau, un protocole ne recevant pas de confirmation de réception ne peut pas être utilisé. Dans le système de commande selon l'invention, un dispositif sur le côté transmission 700 comprend : un moyen de transmission de séquence de paquets de réchauffeur 701 qui, selon un protocole dans lequel la congestion est contrôlée via une confirmation de réception et une fenêtre, transmet une séquence de paquets de réchauffeur à un dispositif sur le côté réception 800 avant de transmettre une première séquence de paquets telle qu'un train de paquets ; un moyen d'estimation de taille de fenêtre 703 qui estime la valeur minimale de tailles de fenêtre de congestion dans une pile de protocoles après transmission de la séquence de paquets de réchauffeur, sur la base des temps de transmission des paquets de réchauffeur inclus dans la séquence de paquets de réchauffeur et les instants de réception correspondants au dispositif sur le côté réception 800, qui sont acquis suite à la transmission de la séquence de paquets de réchauffeur ; et un moyen de détermination de quantité de paquets de réchauffeur 702 qui détermine le nombre de paquets de réchauffeur devant être inclus dans une séquence de paquets de réchauffeur qui doit être retransmise, sur la base du résultat d'estimation de la valeur minimale des tailles de fenêtre de congestion.
PCT/JP2016/004265 2015-10-08 2016-09-20 Système de commande, système d'estimation de bande passante disponible, dispositif, procédé, et programme WO2017061075A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-200326 2015-10-08
JP2015200326A JP2019012866A (ja) 2015-10-08 2015-10-08 制御システム、可用帯域推定システム、装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
WO2017061075A1 true WO2017061075A1 (fr) 2017-04-13

Family

ID=58487418

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/004265 WO2017061075A1 (fr) 2015-10-08 2016-09-20 Système de commande, système d'estimation de bande passante disponible, dispositif, procédé, et programme

Country Status (2)

Country Link
JP (1) JP2019012866A (fr)
WO (1) WO2017061075A1 (fr)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TAKAYUKI SASAKI: "A Technique of Adaptive Bandwidth Estimation for SACK Based TCP over Wireless Networks", THE IEICE TRANSACTIONS ON COMMUNICATIONS ( JAPANESE EDITION, vol. J87-B, no. 10, 2004, pages 1657 - 1667 *

Also Published As

Publication number Publication date
JP2019012866A (ja) 2019-01-24

Similar Documents

Publication Publication Date Title
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
JP4708978B2 (ja) 高スループットを実現する通信システム、通信端末、セッション中継装置、及び通信プロトコル
KR102187810B1 (ko) 통신 시스템에서 데이터 흐름 제어 장치 및 방법
JP4654926B2 (ja) 通信システム、通信装置及びそれらに用いる輻輳制御方法並びにそのプログラム
JP5258938B2 (ja) 通信装置
KR20060100512A (ko) 전송제어 프로토콜 기반의 네트워크에서 평균 대역폭 추정방법 및 시스템
US8565249B2 (en) Queue management system and methods
EP2922241B1 (fr) Procédés et appareil pour déterminer le retard de réseau avec indépendance d'emplacement de temporisation de retransmission et temps de réponse de l'application
JP5506591B2 (ja) 通信システム及び通信品質制御方法
US11153220B2 (en) Methods and apparatus to determine network delay with location independence
JP5725616B2 (ja) 通信品質測定方法および装置
US10063489B2 (en) Buffer bloat control
WO2017061075A1 (fr) Système de commande, système d'estimation de bande passante disponible, dispositif, procédé, et programme
CN104506383A (zh) 衡量服务器在tcp传输中对数据处理效率的方法及系统
JP5178568B2 (ja) 送信装置および送信制御方法
JP2008236709A (ja) 通信品質制御方法と通信品質制御装置および通信システムとプログラム
JP2004140596A (ja) Tcp上のデータ転送における品質を推定する方法およびシステム
KR102131427B1 (ko) Sctp에서의 혼잡 제어 방법 및 장치
Kato et al. Inferring TCP Congestion Control Algorithms by Correlating Congestion Window Sizes and their Differences
JP5436473B2 (ja) 帯域算出方法及び装置
KR20090050125A (ko) 무선 네트워크에서 티시피 성능 향상을 위한 장치 및 방법
KR100915996B1 (ko) 대역폭변화에 따른 적응형 전송 제어 프로토콜을 이용한데이터 패킷 전송 방법 및 그를 위한 송신측 단말장치
KR101933175B1 (ko) 서버와 클라이언트간 통신을 중개하는 중개장치
JP6717209B2 (ja) パケット列送・受信装置、ネットワーク状態推定システムおよび制御方法
Rahman et al. Handling Realtime traffic using congestion control algorithms under Meanfield Domain

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16853234

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP