[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2015033125A - Packet transmission device and program therefor - Google Patents

Packet transmission device and program therefor Download PDF

Info

Publication number
JP2015033125A
JP2015033125A JP2013164133A JP2013164133A JP2015033125A JP 2015033125 A JP2015033125 A JP 2015033125A JP 2013164133 A JP2013164133 A JP 2013164133A JP 2013164133 A JP2013164133 A JP 2013164133A JP 2015033125 A JP2015033125 A JP 2015033125A
Authority
JP
Japan
Prior art keywords
rtt
fluctuation amount
packet
transmission device
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013164133A
Other languages
Japanese (ja)
Other versions
JP6173826B2 (en
Inventor
智史 小山
Satoshi Koyama
智史 小山
周平 小田
Shuhei Oda
周平 小田
黒住 正顕
Masaaki Kurozumi
正顕 黒住
青木 勝典
Katsunori Aoki
勝典 青木
遠藤 洋介
Yosuke Endo
洋介 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
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 Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2013164133A priority Critical patent/JP6173826B2/en
Publication of JP2015033125A publication Critical patent/JP2015033125A/en
Application granted granted Critical
Publication of JP6173826B2 publication Critical patent/JP6173826B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a packet transmission device for preventing unwanted reduction in congestion window size in a delay-based congestion control method.SOLUTION: A packet transmission device 1 comprises: round-trip delay time (RTT) measurement means 141 for measuring the RTT of a packet; minimum RTT update means 171 for successively updating a minimum RTT; variation amount calculation means 161 for calculating and successively updating a reference RTT variation amount resulting from smoothing a variation amount of the RTT; RTT increase determination means 172 which determines that the RTT is increased, when the RTT becomes longer than a time length resulting from adding the minimum RTT and the reference RTT variation amount, and determines that the RTT is not increased, when the RTT is equal to or shorter than the time length; and congestion window control means 15 which controls the congestion window size so as to decrease the congestion window size in the case where it is determined that the RTT is increased, and to increase the congestion window size in the case where it is determined that the RTT is not increased.

Description

本発明は、パケット通信によってデータを伝送するパケット送信装置およびそのプログラムに関する。   The present invention relates to a packet transmission device that transmits data by packet communication and a program thereof.

品質の保証がされていないベストエフォートタイプのIP(Internet Protocol)ネットワークでは、ネットワーク機器内部でのバッファ漏れ、伝送中のビットエラー等によって、送信パケットの廃棄(パケットロス)が発生する。そのため、従来、IPネットワーク上で、確実にデータを伝送するための送達確認を行うプロトコルとしてTCP(Transmission Control Protocol)が幅広く利用されている(非特許文献1参照)。   In a best effort type IP (Internet Protocol) network in which quality is not guaranteed, a transmission packet is discarded (packet loss) due to a buffer leak in a network device, a bit error during transmission, or the like. Therefore, conventionally, TCP (Transmission Control Protocol) has been widely used as a protocol for confirming delivery for reliably transmitting data on an IP network (see Non-Patent Document 1).

このTCPでは、受信装置がパケットを受信すると、受信した旨の報告として、次に送信を要求するパケットの番号を送信装置に通知する。そして、送信装置は、受信装置から通知される報告に基づいて、パケットが正常に受信装置に到達したことを確認する。また、送信装置は、受信装置から通知される報告でパケットロスを検出した場合、当該パケットを再送するとともに、送達確認応答を受信するまで一度に送出可能なパケットの数(セグメント数)を表す輻輳ウィンドウサイズ(CWND:Congestion Window Size)を調整する。例えば、送信装置は、パケットが正常に受信された場合、CWNDを増加させ、パケットロスを検出した場合、CWNDを減少させる。   In this TCP, when a receiving device receives a packet, it notifies the transmitting device of the number of the packet to be transmitted next as a report indicating that it has been received. Then, the transmission device confirms that the packet has normally reached the reception device based on the report notified from the reception device. In addition, when the transmission device detects a packet loss in the report notified from the reception device, the transmission device retransmits the packet, and congestion indicating the number of packets (number of segments) that can be transmitted at a time until a delivery confirmation response is received. Adjust the window size (CWND: Congestion Window Size). For example, the transmission device increases CWND when a packet is normally received, and decreases CWND when a packet loss is detected.

このCWNDを調整する手法は、一般に、輻輳制御手法と呼ばれ、輻輳の発生をどのように判定するかによって、ロスベース手法と遅延ベース手法とに分類することができる。
ロスベース手法は、パケットロスの発生を輻輳のシグナルとみなして、CWNDを減少させ、パケットロスの発生がない場合には、CWNDを増加させる。このロスベースの輻輳制御手法として、NewReno(非特許文献2参照)、CUBIC(非特許文献3参照)、CTCP(非特許文献4参照)が知られている。
This method of adjusting CWND is generally called a congestion control method, and can be classified into a loss-based method and a delay-based method depending on how the occurrence of congestion is determined.
The loss-based method regards occurrence of packet loss as a congestion signal, decreases CWND, and increases CWND when there is no packet loss. As this loss-based congestion control method, NewReno (see Non-Patent Document 2), CUBIC (see Non-Patent Document 3), and CTCP (see Non-Patent Document 4) are known.

一方、遅延ベース手法は、伝送遅延の増加を輻輳のシグナルとみなして、CWNDを減少させ、伝送遅延の増加がない場合には、CWNDを増加させる。この遅延ベースの輻輳制御手法として、Vegas(非特許文献5参照)、YeAH TCP(非特許文献6参照)が知られている。例えば、Vegasでは、通信中に測定した伝送遅延の最小値を基準にして、輻輳が発生したかどうかを判定し、CWNDの制御を行っている。
また、遅延ベース手法として、Vegasをベースに、CWNDの変更幅を、伝送遅延の大きさによって変える(Vegasでは“1”固定)手法が開示されている(特許文献1参照)。
On the other hand, the delay-based method regards an increase in transmission delay as a congestion signal, decreases CWND, and increases CWND when there is no increase in transmission delay. As this delay-based congestion control method, Vegas (see Non-Patent Document 5) and YeAH TCP (see Non-Patent Document 6) are known. For example, Vegas determines whether congestion has occurred based on the minimum value of transmission delay measured during communication, and performs CWND control.
Further, as a delay base method, a method of changing the change width of CWND according to the size of transmission delay based on Vegas (fixed to “1” in Vegas) is disclosed (see Patent Document 1).

特許第4249049号公報Japanese Patent No. 4249049

“RFC: 793 TRANSMISSION CONTROL PROTOCOL September 1981”、[online]、[平成25年7月29日検索]、インターネット<URL: http://www.ietf.org/rfc/rfc793.txt>“RFC: 793 TRANSMISSION CONTROL PROTOCOL September 1981”, [online], [searched July 29, 2013], Internet <URL: http://www.ietf.org/rfc/rfc793.txt> “RFC:6582 The NewReno Modification to TCP's Fast Recovery Algorithm April 2012”、[online]、[平成25年7月29日検索]、インターネット<URL: http://www.ietf.org/rfc/rfc6582.txt>“RFC: 6582 The New Reno Modification to TCP's Fast Recovery Algorithm April 2012”, [online], [searched July 29, 2013], Internet <URL: http://www.ietf.org/rfc/rfc6582.txt > “CUBIC: A New TCP-Friendly High-Speed TCP Variant”, Sangtae Ha, Injong Rhee and Lisong Xu (ACM SIGOPS Operating System Review, Volume 42, Issue 5, July 2008)“CUBIC: A New TCP-Friendly High-Speed TCP Variant”, Sangtae Ha, Injong Rhee and Lisong Xu (ACM SIGOPS Operating System Review, Volume 42, Issue 5, July 2008) “A Compound TCP Approach for High-speed and Long Distance Networks,” kun Tan, Jingmin Song, Qian Zhang and Murari Sridharan (IEEE Infocom, April 2006)“A Compound TCP Approach for High-speed and Long Distance Networks,” kun Tan, Jingmin Song, Qian Zhang and Murari Sridharan (IEEE Infocom, April 2006) “TCP Vegas: End to End Congestion Avoidance on a Global Internet”, Lawrence S. Brakmo, Larry L. Peterson (IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS,Vol.13 No.8 pp.1465-1480, Oct. 1995)“TCP Vegas: End to End Congestion Avoidance on a Global Internet”, Lawrence S. Brakmo, Larry L. Peterson (IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, Vol.13 No.8 pp.1465-1480, Oct. 1995)

前記したロスベース手法は、パケットロスが発生するまでCWNDを増加させる。しかし、ロスベース手法では、使用可能な帯域を超えたデータを送信した場合、その超えた分のデータをただちに廃棄するのではなく、ネットワーク機器内に備えられたメモリに一時的に蓄積する。そして、ロスベース手法は、ネットワークの帯域が空いた段階で、蓄積されたデータをメモリから読み出して送信する。   The above loss-based approach increases CWND until packet loss occurs. However, in the loss-based method, when data exceeding the usable bandwidth is transmitted, the excess data is not discarded immediately, but temporarily stored in a memory provided in the network device. In the loss-based method, the accumulated data is read from the memory and transmitted when the network bandwidth becomes available.

このように、ロスベース手法では、パケットロスが発生するまで、すなわち、メモリからデータが溢れるまでCWNDを増加させるため、データがメモリに蓄積されることによるキューイング遅延の増加が発生してしまう。
近年の多くのネットワーク機器はメモリを備えており、キューイング遅延の増加は大きく、ロスベース手法では、データ通信のレスポンスを低下させてしまうという問題がある。
As described above, in the loss-based method, CWND is increased until packet loss occurs, that is, until data overflows from the memory. Therefore, an increase in queuing delay due to accumulation of data in the memory occurs.
Many network devices in recent years are equipped with a memory, and the increase in queuing delay is large, and the loss-based method has a problem of reducing the response of data communication.

一方、前記した遅延ベース手法は、キューイング遅延(伝送遅延)の増加を輻輳のシグナルとしてCWNDを減少させるため、ネットワーク機器内のメモリに蓄積されるデータ量、すなわち、伝送遅延の増加を抑えることができる。
しかし、無線ネットワークでは、フェージング、干渉等による無線品質の一時的な低下によってパケットロスに対して再送が行われるため、輻輳とは関係なく伝送遅延が発生する。また、例えば、Vegas等の遅延ベース手法では、通信中に測定した伝送遅延の最小値を基準として輻輳の有無を判定するため、輻輳とは無関係な無線品質の一時的な低下による遅延増加も輻輳と誤って判定してしまう。
On the other hand, the delay-based method described above reduces CWND by using an increase in queuing delay (transmission delay) as a congestion signal, thereby suppressing an increase in the amount of data stored in the memory in the network device, that is, an increase in transmission delay. Can do.
However, in a wireless network, retransmission is performed for packet loss due to a temporary deterioration in wireless quality due to fading, interference, and the like, and transmission delay occurs regardless of congestion. In addition, for example, in the delay-based method such as Vegas, since the presence or absence of congestion is determined based on the minimum value of transmission delay measured during communication, an increase in delay due to a temporary decrease in radio quality unrelated to congestion is also congested. Is mistakenly determined.

そのため、従来の遅延ベース手法は、無線ネットワークのようなキューイング遅延ではない遅延変動が起きやすい環境において、必要以上にCWNDを減少させることになり、スループットが著しく低下してしまうという問題がある。
なお、特許文献1に記載の手法では、伝送遅延の大きさによって、CWNDの変更量を変えているが、輻輳の判定を単に伝送遅延で行っていることから、前記問題は解決されていない。
Therefore, the conventional delay-based method has a problem that the CWND is reduced more than necessary in an environment in which delay variation that is not a queuing delay is likely to occur, as in a wireless network, and the throughput is significantly reduced.
In the method described in Patent Document 1, the amount of change in CWND is changed depending on the magnitude of the transmission delay, but the problem is not solved because the determination of congestion is simply performed based on the transmission delay.

本発明は、このような問題に鑑みてなされたものであり、遅延ベースの輻輳制御手法において、輻輳とは関係がない伝送遅延による輻輳ウィンドウサイズ(CWND)の不必要な減少を防止することが可能なパケット送信装置およびそのプログラムを提供することを課題とする。   The present invention has been made in view of such problems, and in the delay-based congestion control method, it is possible to prevent an unnecessary decrease in the congestion window size (CWND) due to a transmission delay unrelated to the congestion. It is an object of the present invention to provide a possible packet transmission device and a program thereof.

前記課題を解決するため、本発明に係るパケット送信装置は、送達確認応答を受信するまで一度に送信可能なパケット数を示す輻輳ウィンドウサイズを、パケットの伝送遅延に応じて制御するパケット送信装置において、RTT計測手段と、最小RTT更新手段と、基準RTT変動量算出手段と、RTT増加判定手段と、輻輳ウィンドウ制御手段と、を備える構成とした。   In order to solve the above-described problem, a packet transmission device according to the present invention is a packet transmission device that controls a congestion window size indicating the number of packets that can be transmitted at one time until a delivery confirmation response is received according to a transmission delay of the packet. The RTT measuring unit, the minimum RTT updating unit, the reference RTT fluctuation amount calculating unit, the RTT increase determining unit, and the congestion window control unit are provided.

かかる構成において、パケット送信装置は、RTT計測手段によって、受信した送達確認応答に対応したパケットの送信時刻と、当該送達確認応答の受信時刻とから当該パケットの往復遅延時間であるRTT(Round Trip Time)を計測する。このRTTによって、ネットワークの負荷状態を認識することができる。
そして、パケット送信装置は、最小RTT更新手段によって、RTT計測手段で逐次計測される最小RTTを更新して記憶手段に記憶する。また、パケット送信装置は、基準RTT変動量算出手段によって、計測されるRTTの変動量を平滑化した変動量を算出し、基準RTT変動量として順次更新する。
In such a configuration, the packet transmission device uses the RTT measurement means to determine the round trip time RTT (Round Trip Time) of the packet from the transmission time of the packet corresponding to the received delivery confirmation response and the reception time of the delivery confirmation response. ). With this RTT, the load state of the network can be recognized.
Then, the packet transmission apparatus updates the minimum RTT sequentially measured by the RTT measurement unit by the minimum RTT update unit and stores it in the storage unit. Further, the packet transmission device calculates a variation amount obtained by smoothing the measured variation amount of the RTT by the reference RTT variation amount calculation means, and sequentially updates the variation amount as the reference RTT variation amount.

そして、パケット送信装置は、RTT増加判定手段によって、計測されたRTTが、最小RTTと基準RTT変動量とを加算した時間長よりも長くなったときにはRTTが増加したと判定し、その時間長以下のときにはRTTが増加していないと判定する。
これは、平滑化した基準RTT変動量の範囲内でRTTが変動していれば、その変動は、ネットワーク固有の環境における遅延により発生したものとみなすことができるからである。
Then, the packet transmission device determines that the RTT has increased when the measured RTT is longer than the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount by the RTT increase determination means, and is less than the time length. In this case, it is determined that the RTT has not increased.
This is because if the RTT fluctuates within the range of the smoothed reference RTT fluctuation amount, the fluctuation can be regarded as occurring due to a delay in a network-specific environment.

そして、パケット送信装置は、輻輳ウィンドウ制御手段によって、RTT増加判定手段でRTTが増加したと判定された場合に、輻輳ウィンドウサイズを減少させ、RTTが増加していないと判定された場合に、輻輳ウィンドウサイズを増加させるように輻輳ウィンドウサイズを制御する。
これによって、パケット送信装置は、たとえ、RTTが増加した場合であっても、その変動量が基準RTT変動量の範囲内であれば、その変動が輻輳とは関係のない遅延、すなわち、ネットワーク固有の遅延と判定し、輻輳ウィンドウサイズを減少させない。
The packet transmission device reduces the congestion window size when the congestion window control means determines that the RTT has increased by the RTT increase determination means, and determines that the RTT does not increase when the RTT increases. Control the congestion window size to increase the window size.
As a result, even if the RTT increases, if the fluctuation amount is within the range of the reference RTT fluctuation amount, the packet transmission apparatus has a delay that is not related to congestion, that is, a network-specific The congestion window size is not reduced.

なお、本発明に係るパケット送信装置は、パケット送信装置のコンピュータを、データ入力手段、データ送信手段、RTTを計測する送達応答確認受信手段、フロー制御手段、最小RTT更新手段、基準RTT変動量算出手段、RTT増加判定手段、輻輳ウィンドウ制御手段、として機能させるためのパケット送信プログラムで動作させることができる。   The packet transmission apparatus according to the present invention includes a computer of the packet transmission apparatus, a data input unit, a data transmission unit, a delivery response confirmation reception unit that measures RTT, a flow control unit, a minimum RTT update unit, and a reference RTT fluctuation amount calculation. And a packet transmission program for functioning as means, RTT increase determination means, and congestion window control means.

本発明は、以下に示す優れた効果を奏するものである。
本発明に係るパケット送信装置によれば、遅延ベースの輻輳制御手法において、基準RTT変動量によって、輻輳とは関係がない伝送遅延を推定することができ、輻輳以外の遅延による輻輳ウィンドウサイズ(CWND)の減少を防止することができる。
すなわち、本発明に係るパケット送信装置によれば、ロスベースの輻輳制御手法に比べて伝送遅延を低く保つことができる遅延ベースの輻輳制御手法を採用しつつ、さらに、不必要なCWNDの減少を防止することで、通信速度の低下を抑え、ネットワークのスループットを高い状態で維持することができる。
The present invention has the following excellent effects.
According to the packet transmission apparatus of the present invention, in the delay-based congestion control method, a transmission delay that is not related to congestion can be estimated based on the reference RTT fluctuation amount, and a congestion window size (CWND) due to a delay other than congestion can be estimated. ) Can be prevented.
That is, according to the packet transmission apparatus according to the present invention, while adopting a delay-based congestion control method capable of keeping transmission delay low compared to the loss-based congestion control method, it is further possible to prevent unnecessary reduction of CWND. By doing so, it is possible to suppress a decrease in communication speed and maintain a high network throughput.

本発明の第1実施形態に係るパケット送信装置の構成を示すブロック構成図である。It is a block block diagram which shows the structure of the packet transmission apparatus which concerns on 1st Embodiment of this invention. 本発明の第1実施形態に係るパケット送信装置において、輻輳のシグナルとなる伝送遅延の増加を判定する手法の概要を説明するためのグラフ図である。It is a graph for demonstrating the outline | summary of the method of determining the increase in the transmission delay used as the signal of congestion in the packet transmitter which concerns on 1st Embodiment of this invention. 本発明の第1〜第4実施形態に係るパケット送信装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the packet transmitter which concerns on the 1st-4th embodiment of this invention. 図3の最小RTT更新の動作を示すフローチャートである。FIG. 4 is a flowchart illustrating an operation of updating a minimum RTT in FIG. 3. FIG. 図3の基準RTT変動量推定の動作であって、本発明の第1実施形態に係るパケット送信装置の動作を示すフローチャートである。4 is a flowchart illustrating an operation of the packet transmission device according to the first embodiment of the present invention, which is an operation of estimating the reference RTT fluctuation amount of FIG. 3. 図3のパケットロス発生時処理の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the process at the time of packet loss generation | occurrence | production of FIG. 本発明の第2実施形態に係るパケット送信装置の構成を示すブロック構成図である。It is a block block diagram which shows the structure of the packet transmission apparatus which concerns on 2nd Embodiment of this invention. 本発明の第2実施形態に係るパケット送信装置において、基準RTT変動量を推定する時間区間を説明するためのグラフ図である。It is a graph for demonstrating the time interval which estimates the reference | standard RTT variation | change_quantity in the packet transmitter which concerns on 2nd Embodiment of this invention. 本発明の第2実施形態に係るパケット送信装置の動作のうち、図3の基準RTT変動量推定の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the reference | standard RTT variation | change_quantity estimation of FIG. 3 among operation | movement of the packet transmission apparatus which concerns on 2nd Embodiment of this invention. 本発明の第3実施形態に係るパケット送信装置の構成を示すブロック構成図である。It is a block block diagram which shows the structure of the packet transmitter which concerns on 3rd Embodiment of this invention. 本発明の第3実施形態に係るパケット送信装置の動作のうち、図3の基準RTT変動量推定の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the reference | standard RTT fluctuation amount estimation of FIG. 3 among operation | movement of the packet transmission apparatus which concerns on 3rd Embodiment of this invention. 本発明の第4実施形態に係るパケット送信装置の構成を示すブロック構成図である。It is a block block diagram which shows the structure of the packet transmitter which concerns on 4th Embodiment of this invention. 本発明の第4実施形態に係るパケット送信装置の動作のうち、図3の基準RTT変動量推定の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the reference | standard RTT variation | change_quantity estimation of FIG. 3 among operation | movement of the packet transmission apparatus which concerns on 4th Embodiment of this invention. 参考例の実施形態に係るパケット受信装置の構成を示すブロック構成図である。It is a block block diagram which shows the structure of the packet receiver which concerns on embodiment of a reference example.

以下、本発明の実施形態について図面を参照して説明する。
≪第1実施形態≫
〔パケット送信装置の構成〕
まず、図1を参照して、本発明の第1実施形態に係るパケット送信装置1の構成について説明する。
Embodiments of the present invention will be described below with reference to the drawings.
<< First Embodiment >>
[Configuration of packet transmitter]
First, the configuration of the packet transmission device 1 according to the first embodiment of the present invention will be described with reference to FIG.

パケット送信装置1は、図示を省略したデータ送信装置等から入力されたデータ(パケットデータ)を、ウィンドウ制御方式によって、そのデータ送信量を制御して、パケット受信装置2に送信するものである。
このパケット送信装置1は、パケット受信装置2との間で、送達確認応答を受信するまで一度に送出可能なパケットの数(セグメント数)である輻輳ウィンドウサイズ(CWND:Congestion Window Size、以下、単にCWNDという。)を制御し、そのCWNDに応じてフロー制御を行うことで、送信するパケット数(データ量)を調整する。
また、パケット送信装置1は、パケットの伝送遅延の増加を輻輳のシグナルとみなしてCWNDを減少させ、伝送遅延の増加がない場合には、CWNDを増加させる遅延ベースの輻輳制御を行う。
The packet transmission device 1 transmits data (packet data) input from a data transmission device or the like (not shown) to the packet reception device 2 by controlling the data transmission amount by a window control method.
The packet transmission device 1 is connected to the packet reception device 2 in a congestion window size (CWND: Congestion Window Size, hereinafter simply referred to as the number of packets (number of segments) that can be transmitted at a time until a delivery confirmation response is received. CWND) is controlled, and flow control is performed according to the CWND, thereby adjusting the number of packets to be transmitted (data amount).
Further, the packet transmission apparatus 1 regards an increase in packet transmission delay as a congestion signal and decreases CWND. If there is no increase in transmission delay, the packet transmission apparatus 1 performs delay-based congestion control to increase CWND.

ここで、図2を参照して、パケット送信装置1が行う遅延ベースの輻輳制御において、輻輳のシグナルとなる伝送遅延の増加を判定する手法の概要を説明する。
図2に示したグラフ図は、横軸を時刻、縦軸をパケットの往復遅延時間(RTT:Round Trip Time)とし、時間の経過に伴ってRTTが変動する様子を示している。
このとき、パケット送信装置1は、逐次変動するRTTのジッタの移動平均を基準RTT変動量cとする。そして、パケット送信装置1は、ある時刻t1で計測された最小のRTT(r)に対して、基準RTT変動量cを超過してRTTが変動(増加)した場合に、輻輳のシグナルとなる伝送遅延が増加していると判定する。
Here, with reference to FIG. 2, an outline of a method for determining an increase in transmission delay that becomes a congestion signal in the delay-based congestion control performed by the packet transmission device 1 will be described.
In the graph shown in FIG. 2, the horizontal axis represents time, and the vertical axis represents packet round trip time (RTT), and shows how the RTT varies with time.
At this time, the packet transmitting apparatus 1 sets the moving average of the jitter of the RTT that sequentially changes as the reference RTT fluctuation amount c. The packet transmission device 1 transmits a congestion signal when the RTT fluctuates (increases) exceeding the reference RTT fluctuation amount c with respect to the minimum RTT (r) measured at a certain time t1. It is determined that the delay has increased.

図2の例では、パケット送信装置1は、時刻t2において、RTTが基準RTT変動量cを超過して変動する場合(図中A)、伝送遅延の増加と判定する。しかし、RTTが増加している場合でも、その変動量が基準RTT変動量cを超過しなければ(図中B)、パケット送信装置1は、伝送遅延の増加とは判定しない。
このような遅延ベースの輻輳制御を行うパケット送信装置1の構成について、図1を参照して詳細に説明する。
In the example of FIG. 2, when the RTT fluctuates exceeding the reference RTT fluctuation amount c at time t2 (A in the figure), the packet transmission device 1 determines that the transmission delay has increased. However, even if the RTT increases, the packet transmission device 1 does not determine that the transmission delay is increased unless the variation exceeds the reference RTT variation c (B in the figure).
The configuration of the packet transmission apparatus 1 that performs such delay-based congestion control will be described in detail with reference to FIG.

パケット送信装置1は、図1に示すように、データ入力手段10と、データバッファ(一時記憶手段)11と、フロー制御手段12と、データ送信手段13と、送達確認応答受信手段14と、輻輳ウィンドウ制御手段15と、基準RTT変動量推定手段16と、RTT変動解析手段17と、記憶手段18と、を備える。   As shown in FIG. 1, the packet transmission apparatus 1 includes a data input means 10, a data buffer (temporary storage means) 11, a flow control means 12, a data transmission means 13, a delivery confirmation response reception means 14, and a congestion. A window control unit 15, a reference RTT variation estimation unit 16, an RTT variation analysis unit 17, and a storage unit 18 are provided.

データ入力手段10は、外部からパケット受信装置2に送信するためのデータ(パケットデータ)を入力するものである。このパケットデータは、例えば、IPパケットである。このデータ入力手段10は、入力されたパケットを逐次データバッファ11に記憶するとともに、フロー制御手段12に対して、パケットを入力した旨の通知を行う。   The data input means 10 is for inputting data (packet data) to be transmitted to the packet receiving device 2 from the outside. This packet data is, for example, an IP packet. The data input means 10 sequentially stores the input packets in the data buffer 11 and notifies the flow control means 12 that the packets have been input.

データバッファ(一時記憶手段)11は、データ入力手段10を介して入力されたパケットデータを一時的に記憶しておくもので、例えば、半導体メモリ等の記憶媒体である。このデータバッファ11に記憶されたパケットデータは、データ送信手段13によって読み出される。すなわち、データバッファ11は、FIFO(First-In First-Out)として機能する。   The data buffer (temporary storage means) 11 temporarily stores packet data input via the data input means 10 and is a storage medium such as a semiconductor memory. The packet data stored in the data buffer 11 is read by the data transmission unit 13. That is, the data buffer 11 functions as a first-in first-out (FIFO).

フロー制御手段12は、輻輳ウィンドウ制御手段15によって制御されるCWNDに応じて、フロー制御を行うものである。すなわち、フロー制御手段12は、一般的なウィンドウ制御方式によって、データ送信手段13から送信するパケット数を制御する。   The flow control means 12 performs flow control according to CWND controlled by the congestion window control means 15. That is, the flow control unit 12 controls the number of packets transmitted from the data transmission unit 13 by a general window control method.

具体的には、フロー制御手段12は、データ送信手段13に対して、データバッファ11に記憶されたパケットを送信する旨を指示する。そして、フロー制御手段12は、送達確認応答受信手段14から、送信したパケットに対する送達確認応答(ACK)を受信した段階で、データバッファ11における次に送信すべきパケットの送信番号(シーケンス番号)を更新する。このとき、フロー制御手段12は、記憶手段18(18)に記憶されているCWNDのパケット数までは、ACKを受信することなく一度に、データ送信手段13に対して送信を指示することができる。
このように、フロー制御手段12は、輻輳ウィンドウ制御手段15によって制御されるCWNDによって、一度にパケット受信装置2に送信するパケット数を制御する。
Specifically, the flow control unit 12 instructs the data transmission unit 13 to transmit the packet stored in the data buffer 11. Then, when the flow control means 12 receives the delivery confirmation response (ACK) for the transmitted packet from the delivery confirmation response receiving means 14, the flow control means 12 sets the transmission number (sequence number) of the packet to be transmitted next in the data buffer 11. Update. At this time, the flow control means 12 may instruct the data transmission means 13 to transmit at a time without receiving ACK up to the number of CWND packets stored in the storage means 18 (18 1 ). it can.
As described above, the flow control unit 12 controls the number of packets transmitted to the packet reception device 2 at a time by the CWND controlled by the congestion window control unit 15.

データ送信手段13は、フロー制御手段12からの指示により、データバッファ11に記憶されているパケットを、通信回線を介して、パケット受信装置2に送信するものである。なお、パケットデータには、パケットの宛先が記述されており、データ送信手段13は、その宛先に対してパケットを送信する。例えば、パケットが、IPパケットの場合、IPヘッダに宛先のIPアドレスが記述されている。
また、ここでは、データ送信手段13は、送信時刻書込手段131を備える。
The data transmission unit 13 transmits a packet stored in the data buffer 11 to the packet reception device 2 via a communication line in response to an instruction from the flow control unit 12. The packet data describes the destination of the packet, and the data transmission means 13 transmits the packet to the destination. For example, when the packet is an IP packet, the destination IP address is described in the IP header.
Here, the data transmission unit 13 includes a transmission time writing unit 131.

送信時刻書込手段131は、パケットを送信する時刻を、図示を省略したタイマから取得して、パケットのヘッダ領域に書き込むものである。例えば、送信時刻書込手段131は、TCPヘッダ中のオプション領域のTCPタイムスタンプに送信時刻を書き込む。この送信時刻は、パケットの往復遅延時間(RTT:Round Trip Time)を計測するための基準となる時刻として利用される。
また、例えば、送信時刻書込手段131は、直接パケットに送信時刻を書き込まずに、送信時刻を当該パケットのシーケンス番号と対応付けて、記憶手段18に書き込むこととしてもよい。
The transmission time writing means 131 acquires the time at which a packet is transmitted from a timer (not shown) and writes it in the header area of the packet. For example, the transmission time writing unit 131 writes the transmission time in the TCP time stamp of the option area in the TCP header. This transmission time is used as a reference time for measuring the round trip time (RTT) of the packet.
Further, for example, the transmission time writing unit 131 may write the transmission time in the storage unit 18 in association with the sequence number of the packet without directly writing the transmission time in the packet.

送達確認応答受信手段14は、データ送信手段13を介して送信されたパケットに対応する送達確認応答(ACK)を、送信先のパケット受信装置2から、通信回線を介して、受信するものである。
また、ここでは、送達確認応答受信手段14は、RTT計測手段141を備える。
The delivery confirmation response receiving unit 14 receives a delivery confirmation response (ACK) corresponding to the packet transmitted via the data transmission unit 13 from the destination packet receiving device 2 via the communication line. .
In addition, here, the delivery confirmation response receiving unit 14 includes an RTT measuring unit 141.

RTT計測手段141は、データ送信手段13から送信され、送達確認されたパケットの往復遅延時間(RTT)を計測するものである。例えば、送信時刻書込手段131において、パケットのヘッダ領域に送信時刻を書き込む場合、RTT計測手段141は、その送信時刻を含んだ送達確認応答を受信し、図示を省略したタイマから取得した現在時刻(受信時刻)との差分をとることで、RTTを計算する。   The RTT measuring unit 141 measures the round trip delay time (RTT) of the packet transmitted from the data transmitting unit 13 and confirmed for delivery. For example, when the transmission time writing unit 131 writes the transmission time in the header area of the packet, the RTT measurement unit 141 receives a delivery confirmation response including the transmission time, and acquires the current time acquired from a timer (not shown). The RTT is calculated by taking the difference from (reception time).

また、例えば、送信時刻書込手段131において、記憶手段18に、パケットのシーケンス番号と対応付けて送信時刻を書き込む場合、RTT計測手段141は、送達確認応答で通知されるシーケンス番号に対応するパケットの送信時刻を記憶手段18から読み出し、現在時刻(受信時刻)との差分をとることで、RTTを計算する。
この送達確認応答受信手段14は、受信した送達確認応答(ACK)をフロー制御手段12および輻輳ウィンドウ制御手段15に出力し、さらに、RTTを輻輳ウィンドウ制御手段15に出力する。
For example, when the transmission time writing unit 131 writes the transmission time in the storage unit 18 in association with the sequence number of the packet, the RTT measurement unit 141 uses the packet corresponding to the sequence number notified by the delivery confirmation response. RTT is calculated by reading the transmission time from the storage unit 18 and taking the difference from the current time (reception time).
The delivery confirmation response receiving unit 14 outputs the received delivery confirmation response (ACK) to the flow control unit 12 and the congestion window control unit 15, and further outputs RTT to the congestion window control unit 15.

輻輳ウィンドウ制御手段15は、ネットワークの負荷状態に応じて、フロー制御手段12がフロー制御を行う際の輻輳ウィンドウサイズ(CWND)を制御するものである。この輻輳ウィンドウ制御手段15は、送達確認応答受信手段14から入力される送達確認応答(ACK)によりパケットロスを検出し、CWNDを減少させたり、RTT変動解析手段17から入力されるRTTが増加しているか否かの判定結果により、CWNDを増減させたりする制御を行う。
ここでは、輻輳ウィンドウ制御手段15は、パケットロス検出手段151と、ロス発生用CWND処理手段152と、RTT変動用CWND処理手段153と、を備える。
The congestion window control means 15 controls the congestion window size (CWND) when the flow control means 12 performs flow control according to the load state of the network. The congestion window control unit 15 detects a packet loss by an acknowledgment response (ACK) input from the acknowledgment response receiving unit 14 and decreases CWND or increases the RTT input from the RTT fluctuation analyzing unit 17. Control to increase or decrease CWND is performed according to the determination result.
Here, the congestion window control unit 15 includes a packet loss detection unit 151, a loss generation CWND processing unit 152, and an RTT fluctuation CWND processing unit 153.

パケットロス検出手段151は、送達確認応答受信手段14から入力した送達確認応答(ACK)により、パケットロスを検出するものである。
このパケットロス検出手段151は、例えば、同一シーケンス番号のACKを3つ連続して受信した場合にロスが発生したとみなす等、一般的な手法でパケットロスを検出すればよい。
The packet loss detection unit 151 detects a packet loss based on a delivery confirmation response (ACK) input from the delivery confirmation response reception unit 14.
The packet loss detecting means 151 may detect the packet loss by a general method, for example, assuming that a loss has occurred when three consecutive ACKs having the same sequence number are received.

このパケットロス検出手段151は、パケットロスを検出した場合、ロス発生用CWND処理手段152にパケットロスが発生した旨を通知する。また、パケットロス検出手段151は、パケットロスを検出した場合、送達確認応答受信手段14から入力したRTTとパケットロスが発生した旨(ロス通知)とを、基準RTT変動量推定手段16とRTT変動解析手段17とに出力する。
一方、パケットロス検出手段151は、パケットロスを検出しなかった場合、送達確認応答受信手段14から入力したRTTを、RTT変動解析手段17に出力する。
When detecting the packet loss, the packet loss detecting unit 151 notifies the loss generating CWND processing unit 152 that the packet loss has occurred. Further, when the packet loss detection unit 151 detects a packet loss, the RTT input from the delivery confirmation response reception unit 14 and the fact that a packet loss has occurred (loss notification) is indicated by the reference RTT variation estimation unit 16 and the RTT variation. Output to the analysis means 17.
On the other hand, when no packet loss is detected, the packet loss detecting unit 151 outputs the RTT input from the delivery confirmation response receiving unit 14 to the RTT fluctuation analyzing unit 17.

ロス発生用CWND処理手段152は、パケットロスが発生した際に、CWNDを減少させるものである。ここでは、ロス発生用CWND処理手段152は、パケットロス検出手段151からパケットロスが検出された旨が通知された際に、CWNDを減少させた値で、記憶手段18(18)に記憶されているCWNDを更新する。
例えば、ロス発生用CWND処理手段152は、パケットロスが発生した場合に、記憶手段18(18)に記憶されている現在のCWNDに対して、0.5倍、0.7倍等の1より小さい予め定めた値を乗算して、CWNDを減少させる。
The loss-generating CWND processing means 152 reduces CWND when a packet loss occurs. Here, the loss-generating CWND processing unit 152 stores a value obtained by reducing the CWND in the storage unit 18 (18 1 ) when the packet loss detection unit 151 is notified that the packet loss has been detected. Update CWND.
For example, when a packet loss occurs, the loss-generating CWND processing unit 152 sets 1 to 0.5 times, 0.7 times, or the like with respect to the current CWND stored in the storage unit 18 (18 1 ). Multiply by a smaller predetermined value to reduce CWND.

RTT変動用CWND処理手段153は、RTT変動解析手段17による基準RTT変動量を超過して増加しているか否かを示す判定結果に応じて、RTTが増加状態であればCWNDを減少させ、それ以外であればCWNDを増加させるものである。
ここでは、RTT変動用CWND処理手段153は、RTT変動解析手段17から、RTTが増加している旨が判定結果として通知された場合、輻輳の発生を防止するため、CWNDを減少させる。例えば、RTT変動用CWND処理手段153は、RTTが増加した場合、記憶手段18(18)に記憶されているCWNDを、予め定めた数(例えば、“1”)減少させる。
The RTT fluctuation CWND processing means 153 decreases the CWND if the RTT is in an increased state according to the determination result indicating whether the RTT fluctuation analysis means 17 has exceeded the reference RTT fluctuation amount or increased. Otherwise, CWND is increased.
Here, the RTT fluctuation CWND processing unit 153, when notified from the RTT fluctuation analysis unit 17 that the RTT has increased as a determination result, decreases the CWND to prevent the occurrence of congestion. For example, when the RTT increases, the RTT variation CWND processing unit 153 decreases the CWND stored in the storage unit 18 (18 1 ) by a predetermined number (eg, “1”).

一方、RTT変動用CWND処理手段153は、RTT変動解析手段17から、RTTが増加していない旨(非増加)が判定結果として通知された場合、一度に送信するパケット数を増やすため、CWNDを増加させる。例えば、RTT変動用CWND処理手段153は、RTTが増加していない場合、記憶手段18(18)に記憶されているCWNDを、予め定めた数(例えば、“1”)増加させる。 On the other hand, when the RTT fluctuation analyzing means 17 notifies the RTT fluctuation analyzing means 17 that the RTT fluctuation has not increased (not increased) as a determination result, the CWND processing means 153 increases the number of packets to be transmitted at one time. increase. For example, if the RTT has not increased, the RTT variation CWND processing unit 153 increases the CWND stored in the storage unit 18 (18 1 ) by a predetermined number (eg, “1”).

基準RTT変動量推定手段16は、RTT計測手段141で計測されるRTTの変動量を平滑化して、RTTの増加判定の基準となる基準RTT変動量を推定するものである。この基準RTT変動量の範囲内でRTTが変動していれば、たとえ、RTTが増加した場合であっても、それは、輻輳とは関係のないネットワーク固有の環境(無線環境等)における遅延により発生したものとみなすことができる。
ここでは、基準RTT変動量推定手段16は、変動量算出手段161を備える。
The reference RTT fluctuation amount estimation means 16 smoothes the RTT fluctuation amount measured by the RTT measurement means 141, and estimates a reference RTT fluctuation quantity that serves as a reference for RTT increase determination. If the RTT fluctuates within the range of the reference RTT fluctuation amount, even if the RTT increases, it occurs due to a delay in a network-specific environment (such as a wireless environment) that is not related to congestion. Can be regarded as
Here, the reference RTT fluctuation amount estimation means 16 includes a fluctuation amount calculation means 161.

変動量算出手段(基準RTT変動量算出手段)161は、TCPのコネクション確立中において、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)と、その直前に受信した送達確認応答(ACK)で計測されたRTT(前回のRTT)との差分(ジッタ)の移動平均を演算することで、RTTの平滑化した変動量(基準RTT変動量)を算出し、更新するものである。ここで、コネクション確立中か否かは、例えば、変動量算出手段161は、データ送信手段13から、TCPのコネクションの確立や終了のシーケンスを完了した旨の通知されることでに認識することができる。
なお、ここでは、基準RTT変動量推定手段16(変動量算出手段161)は、RTT変動解析手段17を経由してRTTを入力することとする。これは、基準RTT変動量推定手段16が基準RTT変動量を計算するためのRTTと、RTT変動解析手段17がRTTの増加を判定するためのRTTとを同期させるためである。
The fluctuation amount calculation means (reference RTT fluctuation amount calculation means) 161 is an RTT (current RTT) measured by the delivery confirmation response (ACK) received this time and the delivery confirmation received immediately before the TCP connection establishment. By calculating the moving average of the difference (jitter) from the RTT measured in response (ACK) (previous RTT), the RTT smoothed fluctuation amount (reference RTT fluctuation amount) is calculated and updated. is there. Here, for example, the fluctuation amount calculation means 161 can recognize whether or not the connection is being established by notifying the data transmission means 13 that the TCP connection establishment or termination sequence has been completed. it can.
Here, the reference RTT fluctuation amount estimation means 16 (fluctuation amount calculation means 161) inputs RTT via the RTT fluctuation analysis means 17. This is because the RTT for calculating the reference RTT fluctuation amount by the reference RTT fluctuation estimation means 16 is synchronized with the RTT for the RTT fluctuation analysis means 17 determining the increase in RTT.

具体的には、変動量算出手段161は、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)と、記憶手段18(18)に記憶されている前回算出した基準RTT変動量および前回受信した送達確認応答(ACK)で計測されたRTT(前回のRTT)とから、以下の式(1)により変動量を平滑化し、新たな基準RTT変動量として更新する。 Specifically, the fluctuation amount calculation means 161 includes the RTT (current RTT) measured by the delivery confirmation response (ACK) received this time and the previously calculated reference RTT stored in the storage means 18 (18 2 ). From the fluctuation amount and the RTT (previous RTT) measured by the previously received acknowledgment (ACK), the fluctuation amount is smoothed by the following equation (1) and updated as a new reference RTT fluctuation amount.

基準RTT変動量←基準RTT変動量*(1−α)
+(前回のRTTと今回のRTTとの差の絶対値)*α …式(1)
Reference RTT fluctuation amount ← Reference RTT fluctuation amount * (1-α)
+ (The absolute value of the difference between the previous RTT and the current RTT) * α (1)

ここで、αは、予め定めた平滑化パラメータ(0<α<1)である。例えば、αとして、TCPにおいてRTTの平滑化に用いられる値“1/8”、RTTの分散の平滑化に用いられる値“1/4”等を用いることができる。
この変動量算出手段161は、算出した新たな基準RTT変動量を記憶手段18(18)に記憶することで基準RTT変動量を更新するとともに、新たな基準RTT変動量をRTT変動解析手段17に出力する。また、変動量算出手段161は、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)を、前回のRTTとして記憶手段18(18)に記憶する。
Here, α is a predetermined smoothing parameter (0 <α <1). For example, as α, a value “1/8” used for smoothing RTT in TCP, a value “1/4” used for smoothing dispersion of RTT, and the like can be used.
The fluctuation amount calculating means 161 updates the reference RTT fluctuation amount by storing the calculated new reference RTT fluctuation amount in the storage means 18 (18 2 ), and also updates the new reference RTT fluctuation amount to the RTT fluctuation analyzing means 17. Output to. In addition, the fluctuation amount calculation unit 161 stores the RTT (current RTT) measured by the delivery confirmation response (ACK) received this time in the storage unit 18 (18 2 ) as the previous RTT.

なお、変動量算出手段161は、パケットロス検出手段151から、パケットロスが発生した旨(ロス通知)およびRTTを入力した場合、基準RTT変動量の計算を行わず、入力されたRTT(今回のRTT)を、前回のRTTとして記憶手段18(18)に記憶する。 Note that the fluctuation amount calculation means 161 does not calculate the reference RTT fluctuation amount when the packet loss detection means 151 inputs that the packet loss has occurred (loss notification) and the RTT, and does not calculate the reference RTT fluctuation amount (this time). RTT) is stored in the storage means 18 (18 2 ) as the previous RTT.

RTT変動解析手段17は、基準RTT変動量推定手段16で推定される基準RTT変動量から、今回計測されたRTTが、一定の基準を超えて増加傾向にあるか否かを解析するものである。なお、ここでは、RTT変動解析手段17は、輻輳ウィンドウ制御手段15を経由したRTTを用いることとする。これは、RTT変動解析手段17が、パケットロスの有無によって、処理が異なるためである。
ここでは、RTT変動解析手段17は、最小RTT更新手段171と、RTT増加判定手段172と、を備える。
The RTT fluctuation analyzing means 17 analyzes whether or not the RTT measured this time is in an increasing tendency from a reference RTT fluctuation amount estimated by the reference RTT fluctuation amount estimating means 16 beyond a certain reference. . Here, it is assumed that the RTT fluctuation analysis means 17 uses RTT via the congestion window control means 15. This is because the processing of the RTT fluctuation analyzing means 17 differs depending on the presence or absence of packet loss.
Here, the RTT fluctuation analysis unit 17 includes a minimum RTT update unit 171 and an RTT increase determination unit 172.

最小RTT更新手段171は、今まで計測したRTTの最小値を逐次更新するものである。ここでは、最小RTT更新手段171は、記憶手段18(18)に最小RTTが記憶されていない場合、輻輳ウィンドウ制御手段15を経由して通知される、RTT計測手段141で計測されたRTTを記憶手段18(18)に書き込む。また、最小RTT更新手段171は、記憶手段18(18)に最小RTTが記憶されている場合、今回のRTTがその最小RTTよりも小さければ、記憶手段18(18)に記憶されている最小RTTを今回のRTTで更新する。 The minimum RTT update means 171 sequentially updates the minimum value of RTT measured so far. Here, the minimum RTT updating unit 171 determines the RTT measured by the RTT measuring unit 141 notified via the congestion window control unit 15 when the minimum RTT is not stored in the storage unit 18 (18 2 ). Write to the storage means 18 (18 2 ). The minimum RTT update unit 171, if the minimum RTT in the storage unit 18 (18 2) is stored, the smaller the current RTT than its minimum RTT, stored in the storage unit 18 (18 2) The minimum RTT is updated with the current RTT.

RTT増加判定手段172は、基準RTT変動量を越えた変動量でRTTが増加しているか否かを判定するものである。
このRTT増加判定手段172は、輻輳ウィンドウ制御手段15から通知されるRTTを基準RTT変動量推定手段16に通知し、基準RTT変動量推定手段16から、基準RTT変動量を取得する。そして、RTT増加判定手段172は、記憶手段18(18)に記憶されている最小RTTと、基準RTT変動量とに基づいて、RTTが増加しているか否かを判定する。
The RTT increase determination means 172 determines whether or not the RTT has increased by a fluctuation amount exceeding the reference RTT fluctuation amount.
The RTT increase determination unit 172 notifies the reference RTT fluctuation amount estimation unit 16 of the RTT notified from the congestion window control unit 15, and acquires the reference RTT fluctuation amount from the reference RTT fluctuation amount estimation unit 16. Then, the RTT increase determination means 172 determines whether or not the RTT has increased based on the minimum RTT stored in the storage means 18 (18 2 ) and the reference RTT fluctuation amount.

具体的には、RTT増加判定手段172は、以下の式(2)に示すような判定式によって、最小RTTと基準RTT変動量を加算した時間長よりも、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)の方が長ければ、RTTが増加していると判定する。また、RTT増加判定手段172は、最小RTTと基準RTT変動量と加算した時間長が、今回計測されたRTT以上であれば、RTTが増加していないと判定する。   More specifically, the RTT increase determination means 172 uses the determination formula as shown in the following formula (2) to determine the currently received delivery confirmation response (ACK) from the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount. If the RTT measured at (the current RTT) is longer, it is determined that the RTT has increased. Further, the RTT increase determination means 172 determines that the RTT has not increased if the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount is equal to or greater than the RTT measured this time.

if (最小RTT+基準RTT変動量 < 今回のRTT)
then RTTが増加している
otherwise RTTが増加していない …式(2)
if (minimum RTT + reference RTT fluctuation <current RTT)
then RTT has increased otherwise RTT has not increased ... Formula (2)

このRTT増加判定手段172は、判定結果を輻輳ウィンドウ制御手段15に出力する。
なお、RTT増加判定手段172は、パケットロス検出手段151から、パケットロスが発生した旨(ロス通知)およびRTTを入力した場合、入力したRTTに応じて記憶手段18(18)に記憶されている最小RTTの更新のみを行う。これは、パケットロスが発生した場合、輻輳ウィンドウ制御手段15のロス発生用CWND処理手段152が、RTTの増減に関係なくCWNDを減少させるためである。
The RTT increase determination unit 172 outputs the determination result to the congestion window control unit 15.
When the RTT increase determination means 172 inputs from the packet loss detection means 151 that a packet loss has occurred (loss notification) and RTT, the RTT increase determination means 172 is stored in the storage means 18 (18 2 ) according to the input RTT. Only the minimum RTT that is present is updated. This is because when a packet loss occurs, the loss-generating CWND processing unit 152 of the congestion window control unit 15 decreases the CWND regardless of the increase or decrease of the RTT.

記憶手段18(18,18)は、パケット送信装置1で逐次更新される情報を記憶するもので、半導体メモリ等の記憶媒体である。
この記憶手段18には、CWNDと、基準RTT変動量と、前回のRTTと、最小RTTとが記憶される。ここで、CWNDは、輻輳ウィンドウ制御手段15によって更新され、フロー制御手段12によって参照される。また、基準RTT変動量および前回のRTTは、基準RTT変動量推定手段16(変動量算出手段161)によって更新され、最小RTTは、RTT変動解析手段17(最小RTT更新手段171)によって更新される。
また、基準RTT変動量は、初期値として“0”を設定しておくこととする。
なお、図1では、記憶手段18を記憶手段18と記憶手段18とに分けて図示しているが、同一の記憶媒体であっても構わない。
The storage means 18 (18 1 , 18 2 ) stores information that is sequentially updated by the packet transmission device 1, and is a storage medium such as a semiconductor memory.
The storage means 18 stores CWND, reference RTT fluctuation amount, previous RTT, and minimum RTT. Here, the CWND is updated by the congestion window control unit 15 and is referred to by the flow control unit 12. The reference RTT fluctuation amount and the previous RTT are updated by the reference RTT fluctuation amount estimation means 16 (fluctuation amount calculation means 161), and the minimum RTT is updated by the RTT fluctuation analysis means 17 (minimum RTT update means 171). .
The reference RTT fluctuation amount is set to “0” as an initial value.
In FIG. 1, it is illustrated separately storing unit 18 in the storage unit 18 1 and the storage means 18 2, may be the same storage medium.

以上説明したようにパケット送信装置1を構成することで、パケット送信装置1は、輻輳とは関係なく発生するRTTの変動量(基準RTT変動量)を推定し、最小RTTに基準RTT変動量を加算した値を閾値として動的に遅延増加の判定を行う。
これによって、パケット送信装置1は、輻輳のシグナルとなるRTTの増加を精度よく検出して、ネットワーク環境に応じたCWNDの制御を行うことができる。
By configuring the packet transmission device 1 as described above, the packet transmission device 1 estimates the amount of RTT variation (reference RTT variation) that occurs regardless of congestion, and sets the reference RTT variation amount to the minimum RTT. The delay increase is dynamically determined using the added value as a threshold value.
As a result, the packet transmission device 1 can accurately detect an increase in RTT, which is a congestion signal, and perform CWND control according to the network environment.

〔パケット送信装置の動作〕
次に、図3〜図6を参照(構成については適宜図1参照)して、本発明の第1実施形態に係るパケット送信装置1の動作について説明する。
なお、ここでは、一般的な遅延ベースの輻輳制御手法については説明を省略し、本発明の特徴であるパケットの往復遅延時間(RTT)に基づいて、輻輳のシグナルとなる伝送遅延の増加を動的に判定してCWNDの制御を行う動作について主に説明する。すなわち、ここでは、データ送信手段13(主に送信時刻書込手段131)、送達確認応答受信手段14(主にRTT計測手段141)、輻輳ウィンドウ制御手段15、基準RTT変動量推定手段16およびRTT変動解析手段17の動作について説明する。
[Operation of packet transmission device]
Next, the operation of the packet transmission apparatus 1 according to the first embodiment of the present invention will be described with reference to FIGS.
Note that the description of a general delay-based congestion control method is omitted here, and an increase in transmission delay that becomes a congestion signal is controlled based on the round-trip delay time (RTT) of the packet, which is a feature of the present invention. The operation of performing CWND control by making a determination will be mainly described. That is, here, data transmission means 13 (mainly transmission time writing means 131), delivery confirmation response reception means 14 (mainly RTT measurement means 141), congestion window control means 15, reference RTT fluctuation amount estimation means 16 and RTT The operation of the fluctuation analysis means 17 will be described.

図3に示すように、パケット送信装置1は、送達確認応答受信手段14によって、ステップとして図示していないデータ送信手段13を介して送信されたパケットに対応する送達確認応答(ACK)を受信する(ステップS1)。
そして、パケット送信装置1は、RTT計測手段141によって、パケットの送信時刻と現在時刻(受信時刻)との差分をとることで、RTTを計算する(ステップS2)。
As illustrated in FIG. 3, the packet transmission device 1 receives a delivery confirmation response (ACK) corresponding to a packet transmitted via the data transmission unit 13 (not illustrated) as a step by the delivery confirmation response reception unit 14. (Step S1).
The packet transmission device 1 calculates the RTT by taking the difference between the packet transmission time and the current time (reception time) by the RTT measurement unit 141 (step S2).

そして、パケット送信装置1は、輻輳ウィンドウ制御手段15のパケットロス検出手段151によって、ステップS1で受信した送達確認応答(ACK)により、パケットロスが発生しているか否かを検出する(ステップS3)。
ここで、パケットロスが検出されなければ(ステップS3でNo)、パケット送信装置1は、ステップS4以降に動作を進める。
すなわち、パケット送信装置1は、RTT変動解析手段17の最小RTT更新手段171によって、最小RTTの更新を行う(ステップS4)。
このステップS4の動作については、図4を参照して説明する。
Then, the packet transmission device 1 detects whether or not a packet loss has occurred by the delivery confirmation response (ACK) received in step S1, by the packet loss detection unit 151 of the congestion window control unit 15 (step S3). .
Here, if a packet loss is not detected (No in step S3), the packet transmitting apparatus 1 proceeds with the operation after step S4.
That is, the packet transmitting apparatus 1 updates the minimum RTT by the minimum RTT updating unit 171 of the RTT fluctuation analyzing unit 17 (step S4).
The operation in step S4 will be described with reference to FIG.

図4に示すように、パケット送信装置1は、最小RTT更新手段171によって、記憶手段18(18)に記憶されている現時点までの最小RTTと、ステップS2で計算された今回受信したACKに対応したRTT(今回のRTT)とを比較する(ステップS41)。 As shown in FIG. 4, the packet transmitting apparatus 1 uses the minimum RTT update unit 171 to determine the minimum RTT up to the present time stored in the storage unit 18 (18 2 ) and the ACK received this time calculated in step S2. The corresponding RTT (current RTT) is compared (step S41).

ここで、最小RTTの方が今回のRTTよりも大きければ(ステップS41でYes)、最小RTT更新手段171は、記憶手段18(18)に記憶されている最小RTTを今回のRTTで更新する(ステップS42)。なお、最小RTTが今回のRTT以下であれば(ステップS41でNo)、最小RTT更新手段171は、最小RTTの更新を行わない。
図3に戻って、パケット送信装置1の動作について説明を続ける。
If the minimum RTT is larger than the current RTT (Yes in step S41), the minimum RTT update unit 171 updates the minimum RTT stored in the storage unit 18 (18 2 ) with the current RTT. (Step S42). If the minimum RTT is equal to or less than the current RTT (No in step S41), the minimum RTT update unit 171 does not update the minimum RTT.
Returning to FIG. 3, the operation of the packet transmission device 1 will be described.

ステップS4の後、パケット送信装置1は、基準RTT変動量推定手段16によって、基準RTT変動量を推定する(ステップS5)。
このステップS5の動作については、図5を参照して詳細に説明する。
After step S4, the packet transmitting apparatus 1 estimates the reference RTT fluctuation amount by the reference RTT fluctuation amount estimating means 16 (step S5).
The operation in step S5 will be described in detail with reference to FIG.

図5に示すように、パケット送信装置1は、変動量算出手段161によって、記憶手段18(18)に前回のRTTが記憶されているか否かを判定する(ステップS51)。
ここで、記憶手段18(18)に前回のRTTが記憶されている場合(ステップS51でYes)、変動量算出手段161は、前記式(1)により、前回のRTTと今回のRTTとの差分(ジッタ)の移動平均を演算する。
As shown in FIG. 5, the packet transmission device 1 determines whether or not the previous RTT is stored in the storage unit 18 (18 2 ) by the fluctuation amount calculation unit 161 (step S51).
Here, when the previous RTT is stored in the storage unit 18 (18 2 ) (Yes in step S51), the fluctuation amount calculation unit 161 calculates the previous RTT and the current RTT according to the equation (1). The moving average of the difference (jitter) is calculated.

すなわち、変動量算出手段161は、まず、前回のRTTと今回のRTTとの差の絶対値をRTT差分として算出する(ステップS52)。そして、変動量算出手段161は、記憶手段18(18)に記憶されている基準RTT変動量と、ステップS52で算出したRTT差分とを、予め定めた比率で〔(1−α):α〕で加算することで、新たな基準RTT変動量を算出する(ステップS53)。このステップS53で算出された新たな基準RTT変動量は、変動量算出手段161によって、記憶手段18(18)に記憶される。 That is, the fluctuation amount calculating means 161 first calculates the absolute value of the difference between the previous RTT and the current RTT as the RTT difference (step S52). Then, the fluctuation amount calculation unit 161 calculates the reference RTT fluctuation amount stored in the storage unit 18 (18 2 ) and the RTT difference calculated in step S52 at a predetermined ratio [(1-α): α. ] To calculate a new reference RTT fluctuation amount (step S53). The new reference RTT fluctuation amount calculated in step S53 is stored in the storage means 18 (18 2 ) by the fluctuation amount calculation means 161.

そして、変動量算出手段161は、今回のRTTを、前回のRTTとして記憶手段18(18)に記憶する(ステップS54)。
なお、ステップS51において、記憶手段18(18)に前回のRTTが記憶されていない場合(ステップS51でNo)、変動量算出手段161は、ステップS54の動作のみを行う。
図3に戻って、パケット送信装置1の動作について説明を続ける。
Then, the fluctuation amount calculating means 161 stores the current RTT as the previous RTT in the storage means 18 (18 2 ) (step S54).
In step S51, when the previous RTT is not stored in the storage unit 18 (18 2 ) (No in step S51), the fluctuation amount calculation unit 161 performs only the operation of step S54.
Returning to FIG. 3, the operation of the packet transmission device 1 will be described.

ステップS5の後、パケット送信装置1は、RTT変動解析手段17のRTT増加判定手段172によって、RTTが基準RTT変動量を越えた変動量で増加しているか否かを判定する(ステップS6)。
ここで、記憶手段18(18)に記憶されている最小RTTと、ステップS5で推定された基準RTT変動量とを加算した時間長よりも、今回のRTTの方が長ければ、RTT増加判定手段172は、RTTが増加していると判定する。また、今回のRTTが、最小RTTと基準RTT変動量とを加算した時間長以下であれば、RTT増加判定手段172は、RTTが増加してないと判定する。
After step S5, the packet transmission device 1 determines whether or not the RTT has increased by a fluctuation amount exceeding the reference RTT fluctuation amount by the RTT increase determination means 172 of the RTT fluctuation analysis means 17 (step S6).
Here, if the current RTT is longer than the time length obtained by adding the minimum RTT stored in the storage unit 18 (18 2 ) and the reference RTT fluctuation amount estimated in step S5, the RTT increase determination is performed. The means 172 determines that the RTT is increasing. Further, if the current RTT is equal to or shorter than the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount, the RTT increase determination unit 172 determines that the RTT has not increased.

そして、RTTが増加していると判定された場合(ステップS6でYes)、パケット送信装置1は、輻輳ウィンドウ制御手段15のRTT変動用CWND処理手段153によって、CWNDを減少(例えば、−1)させる(ステップS7)。一方、RTTが増加していないと判定された場合(ステップS6でNo)、パケット送信装置1は、RTT変動用CWND処理手段153によって、CWNDを増加(例えば、+1)させる(ステップS8)。
なお、ステップS3において、パケットロスが検出された場合(ステップS3でYes)、ステップS9のパケットロス発生時処理を行う。
このステップS9の動作については、図6を参照して説明する。
When it is determined that the RTT has increased (Yes in step S6), the packet transmitting apparatus 1 decreases the CWND (for example, −1) by the RTT fluctuation CWND processing unit 153 of the congestion window control unit 15. (Step S7). On the other hand, when it is determined that the RTT has not increased (No in step S6), the packet transmission device 1 increases the CWND (for example, +1) by the RTT variation CWND processing unit 153 (step S8).
If a packet loss is detected in step S3 (Yes in step S3), the process at the time of packet loss occurrence in step S9 is performed.
The operation in step S9 will be described with reference to FIG.

図6に示すように、パケットロスが発生した場合、パケット送信装置1は、輻輳ウィンドウ制御手段15のロス発生用CWND処理手段152によって、CWNDを減少(0.5倍、0.7倍等)させる(ステップS91)。
また、パケット送信装置1は、RTT変動解析手段17において、RTTの増加判定を行わず、最小RTT更新手段171によって、最小RTTの更新のみを行う(ステップS92)。なお、このステップS92は、図4で説明した動作と同じである。
また、パケット送信装置1は、基準RTT変動量推定手段16の変動量算出手段161における基準RTT変動量の算出を行わず、今回のRTTを、前回のRTTとして記憶手段18(18)に記憶する(ステップS93)。
As shown in FIG. 6, when a packet loss occurs, the packet transmission device 1 reduces the CWND (0.5 times, 0.7 times, etc.) by the loss generation CWND processing means 152 of the congestion window control means 15. (Step S91).
In addition, the packet transmission device 1 does not perform the RTT increase determination in the RTT fluctuation analysis unit 17 and only updates the minimum RTT by the minimum RTT update unit 171 (step S92). This step S92 is the same as the operation described in FIG.
Further, the packet transmission device 1 does not calculate the reference RTT fluctuation amount in the fluctuation amount calculation means 161 of the reference RTT fluctuation amount estimation means 16, and stores the current RTT in the storage means 18 (18 2 ) as the previous RTT. (Step S93).

以上説明したようにパケット送信装置1を構成し、動作させることで、パケット送信装置1は、伝送遅延を低く保つという遅延ベース輻輳制御のメリットを維持しつつ、無線環境のような輻輳とは関係のない遅延増加が発生する環境下であっても、CWNDの不必要な減少を抑え、スループットを高い状態で維持することができる。   By configuring and operating the packet transmission device 1 as described above, the packet transmission device 1 maintains the merit of delay-based congestion control that keeps the transmission delay low, and is related to congestion such as a wireless environment. Even in an environment where there is no delay increase, an unnecessary decrease in CWND can be suppressed and the throughput can be maintained at a high level.

≪第2実施形態≫
〔パケット送信装置の構成〕
次に、図7を参照して、本発明の第2実施形態に係るパケット送信装置1Bの構成について説明する。
<< Second Embodiment >>
[Configuration of packet transmitter]
Next, the configuration of the packet transmission device 1B according to the second embodiment of the present invention will be described with reference to FIG.

パケット送信装置1Bは、遅延ベースの輻輳制御でパケットの送信を行うもので、図1で説明したパケット送信装置1と基本的には同様の機能を有する。
図1で説明したパケット送信装置1は、RTTジッタの移動平均を基準RTT変動量とし、RTTを計測したタイミングで基準RTT変動量を逐次更新する形態であった。
しかし、パケット送信装置1Bは、所定の時間区間におけるRTTジッタの最大値の移動平均を基準RTT変動量として基準RTT変動量を更新する。
The packet transmission device 1B performs packet transmission by delay-based congestion control, and basically has the same function as the packet transmission device 1 described in FIG.
The packet transmission device 1 described with reference to FIG. 1 has a configuration in which the moving average of RTT jitter is used as a reference RTT fluctuation amount, and the reference RTT fluctuation amount is sequentially updated at the timing when the RTT is measured.
However, the packet transmission device 1B updates the reference RTT fluctuation amount using the moving average of the maximum value of the RTT jitter in a predetermined time interval as the reference RTT fluctuation amount.

ここで、図8を参照して、パケット送信装置1Bの基準RTT変動量を推定する時間区間の例について説明する。ここでは、所定の時間区間を、最後に基準RTT変動量を更新してから、最小RTTの時間が経過するまでとする。
図8に示したグラフ図は、横軸を時刻、縦軸をパケットの往復遅延時間(RTT)とし、時間の経過に伴ってRTTが変動する様子を示している。
Here, an example of a time interval for estimating the reference RTT fluctuation amount of the packet transmission device 1B will be described with reference to FIG. Here, it is assumed that the predetermined time interval is from the last update of the reference RTT fluctuation amount until the minimum RTT time elapses.
In the graph shown in FIG. 8, the horizontal axis represents time and the vertical axis represents packet round-trip delay time (RTT), and shows how the RTT varies with the passage of time.

ここで、パケット送信装置1Bは、時刻t1において、基準RTT変動量を更新したとする。このとき、今までに計測した最小RTTがr1であった場合、パケット送信装置1Bは、時刻t1からr1経過した後に、送達確認応答(ACK)を受信したタイミング(ここでは時刻t2)で、基準RTT変動量を更新する。   Here, it is assumed that the packet transmission device 1B updates the reference RTT fluctuation amount at time t1. At this time, when the minimum RTT measured so far is r1, the packet transmission device 1B receives the acknowledgment (ACK) after the elapse of r1 from the time t1, and at the timing (here, the time t2), the reference Update the RTT fluctuation amount.

また、図8の例では、時刻t2時点において、最小RTTはr1であるが、t2からの
時刻計時途中に最小RTTがr2に更新された場合、パケット送信装置1Bは、時刻t2からr2経過した後に、送達確認応答(ACK)を受信したタイミング(ここでは時刻t3)で、基準RTT変動量を更新することとする。もちろん、時刻t2から当初の最小RTTであるr1経過後に基準RTT変動量を更新することとしてもよい。
なお、この第2実施形態では、所定の時間区間を、最小RTTとして説明するが、この所定の時間区間は、パケットの伝送遅延時間を示す時間であれば、最小RTTである必要はない。例えば、逐次計測されるRTTであっても構わない。
In the example of FIG. 8, the minimum RTT is r1 at time t2, but when the minimum RTT is updated to r2 during the time measurement from t2, the packet transmission device 1B has passed r2 from time t2. Later, the reference RTT fluctuation amount is updated at the timing (here, time t3) when the delivery confirmation response (ACK) is received. Of course, the reference RTT fluctuation amount may be updated after elapse of r1, which is the initial minimum RTT from time t2.
In the second embodiment, the predetermined time interval is described as the minimum RTT. However, the predetermined time interval does not need to be the minimum RTT as long as it indicates the packet transmission delay time. For example, an RTT that is sequentially measured may be used.

このパケット送信装置1Bでは、送信レートが大きくなりバースト的にパケットの送受信が発生する環境や、輻輳以外の遅延増加の頻度が低い環境で用いる場合、基準RTT変動量が過剰に低くなることを防止するため、基準RTT変動量の更新頻度を減らしている。その更新頻度の基準として、伝送遅延時間を基準とした時間区間を用いることで、ネットワークに適した更新を行うことができる。
このように、所定の時間区間で基準RTT変動量を更新するパケット送信装置1Bの構成について、図7を参照して詳細に説明する。
This packet transmission device 1B prevents the reference RTT fluctuation amount from becoming excessively low when used in an environment where the transmission rate is increased and packet transmission / reception occurs in bursts, or in an environment where the frequency of delay increases other than congestion is low. Therefore, the update frequency of the reference RTT fluctuation amount is reduced. By using a time interval based on the transmission delay time as a reference for the update frequency, update suitable for the network can be performed.
In this way, the configuration of the packet transmission device 1B that updates the reference RTT fluctuation amount in a predetermined time interval will be described in detail with reference to FIG.

パケット送信装置1Bは、図7に示すように、データ入力手段10と、データバッファ(一時記憶手段)11と、フロー制御手段12と、データ送信手段13と、送達確認応答受信手段14と、輻輳ウィンドウ制御手段15と、基準RTT変動量推定手段16Bと、RTT変動解析手段17と、記憶手段18と、を備える。   As shown in FIG. 7, the packet transmission apparatus 1B includes a data input means 10, a data buffer (temporary storage means) 11, a flow control means 12, a data transmission means 13, a delivery confirmation response reception means 14, and a congestion. A window control unit 15, a reference RTT variation estimation unit 16 </ b> B, an RTT variation analysis unit 17, and a storage unit 18 are provided.

基準RTT変動量推定手段16B以外の構成については、図1で説明したパケット送信装置1と同一の構成であるため、同一の符号を付して説明を省略する。なお、記憶手段18は、記憶する内容がパケット送信装置1に対して増えている。その内容は、基準RTT変動量推定手段16Bにより更新されるものであるため、基準RTT変動量推定手段16Bの説明において行うこととする。   Since the configuration other than the reference RTT variation estimation means 16B is the same as that of the packet transmission device 1 described in FIG. 1, the same reference numerals are given and description thereof is omitted. Note that the storage unit 18 stores more content than the packet transmission device 1. Since the content is updated by the reference RTT fluctuation amount estimation means 16B, it will be described in the description of the reference RTT fluctuation amount estimation means 16B.

基準RTT変動量推定手段16Bは、RTT計測手段141で計測されるRTTの変動量を平滑化して、RTTの増加判定の基準となる基準RTT変動量を推定するものである。ここでは、基準RTT変動量推定手段16Bは、変動量算出手段161Bと、時間区間判定手段162と、を備える。   The reference RTT fluctuation amount estimation means 16B smoothes the RTT fluctuation amount measured by the RTT measurement means 141, and estimates the reference RTT fluctuation amount that serves as a reference for the RTT increase determination. Here, the reference RTT fluctuation amount estimation unit 16B includes a fluctuation amount calculation unit 161B and a time interval determination unit 162.

変動量算出手段(基準RTT変動量算出手段)161Bは、TCPのコネクション確立中において、所定の時間区間における送達確認応答(ACK)で計測されたRTT(今回のRTT)と、その直前に受信した送達確認応答(ACK)で計測されたRTT(前回のRTT)との差分(ジッタ)の最大値の移動平均を演算することで、RTTの最大値を平滑化した変動量を算出し、基準RTT変動量として更新するものである。なお、ここでは、基準RTT変動量推定手段16B(変動量算出手段161B)は、RTT変動解析手段17を経由してRTTを入力する。   The fluctuation amount calculating means (reference RTT fluctuation amount calculating means) 161B received the RTT (current RTT) measured by the delivery confirmation response (ACK) in a predetermined time interval and immediately before the TCP connection establishment. By calculating the moving average of the maximum value of the difference (jitter) from the RTT (previous RTT) measured by the acknowledgment response (ACK), the fluctuation amount obtained by smoothing the maximum value of the RTT is calculated, and the reference RTT It is updated as a fluctuation amount. Here, the reference RTT fluctuation amount estimation means 16B (fluctuation amount calculation means 161B) inputs the RTT via the RTT fluctuation analysis means 17.

この変動量算出手段161Bは、時間区間判定手段162に、前回の基準RTT変動量の更新から、所定の時間区間が経過したか否かを問い合わせ、その時間区間が経過している場合に、基準RTT変動量を更新する。
具体的には、変動量算出手段161Bは、所定の時間区間経過後、記憶手段18(18)に記憶されている前回算出した基準RTT変動量と、記憶手段18(18)に記憶されている所定の時間区間において計測されるRTTの最大の変動量(現区間最大変動量)とから、以下の式(3)により変動量を平滑化し、新たな基準RTT変動量を算出する。
The fluctuation amount calculation means 161B inquires of the time interval determination means 162 whether or not a predetermined time interval has elapsed since the previous update of the reference RTT fluctuation amount, and when the time interval has elapsed, Update the RTT fluctuation amount.
Specifically, variation calculation means 161B after a predetermined time interval has elapsed, the reference RTT variation previously calculated stored in the storage unit 18 (18 2), stored in the storage unit 18 (18 2) From the maximum variation amount of the RTT measured in the predetermined time interval (current interval maximum variation amount), the variation amount is smoothed by the following equation (3) to calculate a new reference RTT variation amount.

基準RTT変動量←基準RTT変動量*(1−α)
+現区間最大変動量*α …式(3)
Reference RTT fluctuation amount ← Reference RTT fluctuation amount * (1-α)
+ Maximum fluctuation amount for the current section * α (3)

ここで、αは、予め定めた平滑化パラメータ(0<α<1)である。例えば、基準RTT変動量推定手段16(図1参照)と同様に、αとして、TCPにおいてRTTの平滑化に用いられる値“1/8”、RTTの分散の平滑化に用いられる値“1/4”等を用いることができる。
また、現区間最大変動量は、時間区間判定手段162が判定する時間区間において、送達確認応答(ACK)で計測されたRTT(今回のRTT)と、その直前に受信した送達確認応答(ACK)で計測されたRTT(前回のRTT)との差分(ジッタ)の最大値である。
この変動量算出手段161Bは、算出した新たな基準RTT変動量を記憶手段18(18)に記憶することで基準RTT変動量を更新する。
Here, α is a predetermined smoothing parameter (0 <α <1). For example, similarly to the reference RTT variation estimation means 16 (see FIG. 1), as α, a value “1/8” used for smoothing the RTT in TCP and a value “1 /” used for smoothing the dispersion of RTT. 4 ″ or the like can be used.
In addition, the maximum fluctuation amount of the current section includes the RTT measured by the delivery confirmation response (ACK) in the time section determined by the time section determination unit 162 (current RTT) and the delivery confirmation response (ACK) received immediately before the RTT. This is the maximum value of the difference (jitter) from the RTT (previous RTT) measured in (1).
The fluctuation amount calculating unit 161B updates the reference RTT fluctuation amount by storing the calculated new reference RTT fluctuation amount in the storage unit 18 (18 2 ).

また、変動量算出手段161Bは、基準RTT変動量を更新した場合、その旨を時間区間判定手段162に通知するとともに、更新した基準RTT変動量をRTT変動解析手段17に出力する。また、変動量算出手段161Bは、基準RTT変動量を更新していない場合、記憶手段18(18)に記憶されている基準RTT変動量をそのままRTT変動解析手段17に出力する。
なお、変動量算出手段161Bは、基準RTT変動量を更新した場合、記憶手段18(18)に記憶されている現区間最大変動量を初期化(“0”に設定)することとする。
In addition, when the reference RTT fluctuation amount is updated, the fluctuation amount calculation unit 161B notifies the time interval determination unit 162 of the fact, and outputs the updated reference RTT fluctuation amount to the RTT fluctuation analysis unit 17. In addition, when the reference RTT fluctuation amount is not updated, the fluctuation amount calculation unit 161B outputs the reference RTT fluctuation amount stored in the storage unit 18 (18 2 ) to the RTT fluctuation analysis unit 17 as it is.
When the reference RTT fluctuation amount is updated, the fluctuation amount calculating unit 161B initializes (sets to “0”) the current zone maximum fluctuation amount stored in the storage unit 18 (18 2 ).

また、変動量算出手段161Bは、RTTを受信するたびに、記憶手段18(18)に記憶されている前回のRTTとの差の絶対値を計算し、記憶手段18(18)に記憶されている現区間最大変動量よりも大きければ、今回のRTTの変動量で現区間最大変動量を更新する。なお、記憶手段18(18)に記憶される現区間最大変動量は、初期値として、予め“0”が設定されているものとする。 The variation amount calculation means 161B each time it receives the RTT, the storage means 18 the absolute value of the difference between the previous RTT stored in (18 2) is calculated, and the storage unit 18 (18 2) in the storage If it is larger than the current maximum fluctuation amount of the current section, the current maximum section fluctuation amount is updated with the current RTT fluctuation amount. It is assumed that the current section maximum fluctuation amount stored in the storage means 18 (18 2 ) is set to “0” as an initial value in advance.

また、変動量算出手段161Bは、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)を、前回のRTTとして記憶手段18(18)に記憶する。
なお、変動量算出手段161Bは、パケットロス検出手段151から、パケットロスが発生した旨(ロス通知)およびRTTを入力した場合、基準RTT変動量の計算を行わず、入力されたRTT(今回のRTT)を、前回のRTTとして記憶手段18(18)に記憶する。
Further, the fluctuation amount calculating unit 161B stores the RTT (current RTT) measured by the delivery confirmation response (ACK) received this time in the storage unit 18 (18 2 ) as the previous RTT.
Note that the fluctuation amount calculation means 161B does not calculate the reference RTT fluctuation amount when the packet loss detection means 151 inputs that the packet loss has occurred (loss notification) and the RTT, and does not calculate the reference RTT fluctuation amount (this time). RTT) is stored in the storage means 18 (18 2 ) as the previous RTT.

時間区間判定手段162は、基準RTT変動量を更新してから、次に基準RTT変動量を更新するまでの時間区間が所定時間経過したか否かを判定するものである。
この時間区間判定手段162は、変動量算出手段161Bから、基準RTT変動量を更新した旨を通知された段階で、時刻計時を開始する。また、時間区間判定手段162は、変動量算出手段161Bから、所定の時間区間が経過したか否かの問い合わせを受けた段階で、基準RTT変動量を更新してからの経過時間が、記憶手段18(18)に記憶されている最小RTTを超過したか否かを判定する。
この時間区間判定手段162は、この判定結果を変動量算出手段161Bに出力する。
The time interval determination means 162 determines whether or not a predetermined time has elapsed from the time when the reference RTT fluctuation amount is updated until the next time when the reference RTT fluctuation amount is updated.
The time interval determination unit 162 starts timekeeping when it is notified from the fluctuation amount calculation unit 161B that the reference RTT fluctuation amount has been updated. In addition, the time interval determination unit 162 receives the inquiry from the variation calculation unit 161B as to whether or not the predetermined time interval has elapsed, and stores the elapsed time since the reference RTT variation was updated. It is determined whether or not the minimum RTT stored in 18 (18 2 ) has been exceeded.
The time interval determination unit 162 outputs the determination result to the fluctuation amount calculation unit 161B.

以上説明したようにパケット送信装置1Bを構成することで、パケット送信装置1Bは、基準RTT変動量推定手段16Bによって、少なくとも所定の時間区間(ここでは、最小RTT)が経過したタイミングで、基準RTT変動量を更新することができる。
なお、ここでは、基準RTT変動量を推定(更新)する時間区間を最小RTTとしたが、RTTを基準とした時間区間であれば、この時間区間に限定されるものではない。
By configuring the packet transmission device 1B as described above, the packet transmission device 1B is configured so that the reference RTT fluctuation amount estimation unit 16B performs the reference RTT at a timing when at least a predetermined time interval (here, the minimum RTT) has elapsed. The amount of change can be updated.
Here, the time interval for estimating (updating) the reference RTT fluctuation amount is the minimum RTT, but the time interval is not limited to this time interval as long as it is a time interval based on the RTT.

例えば、最後に基準RTT変動量を更新してから、パケット送信装置1Bが次に送信予定のパケットに対する送達応答確認(ACK)が到着するまでの時間区間、すなわち、基準RTT変動量更新後のRTTとしてもよい。   For example, the time interval from when the reference RTT fluctuation amount is last updated until the delivery response confirmation (ACK) for the packet to be transmitted next arrives by the packet transmission apparatus 1B, that is, the RTT after the reference RTT fluctuation amount is updated. It is good.

この場合、データ送信手段13が、送信パケットのシーケンス番号を基準RTT変動量推定手段16Bに通知する。また、輻輳ウィンドウ制御手段15(パケットロス検出手段151)が、RTTとともに、送達確認応答に含まれているACK番号をRTT変動解析手段17に通知する。そして、RTT変動解析手段17(RTT増加判定手段172)が、RTTとともにACK番号を基準RTT変動量推定手段16Bに通知する。
そして、基準RTT変動量推定手段16B(時間区間判定手段162)が、データ送信手段13から通知されるシーケンス番号と、それに対応するRTT変動解析手段17から通知されるACK番号とから、基準RTT変動量更新後の送信パケットのRTTに相当する時間区間を判定する。
In this case, the data transmission means 13 notifies the reference RTT fluctuation amount estimation means 16B of the sequence number of the transmission packet. In addition, the congestion window control means 15 (packet loss detection means 151) notifies the RTT fluctuation analysis means 17 of the ACK number included in the delivery confirmation response together with the RTT. Then, the RTT fluctuation analyzing means 17 (RTT increase determining means 172) notifies the reference RTT fluctuation amount estimating means 16B of the ACK number together with the RTT.
Then, the reference RTT fluctuation amount estimation means 16B (time interval determination means 162) uses the reference RTT fluctuation from the sequence number notified from the data transmission means 13 and the corresponding ACK number notified from the RTT fluctuation analysis means 17. A time interval corresponding to the RTT of the transmission packet after the amount update is determined.

〔パケット送信装置の動作〕
次に、図3および図9を参照(構成については適宜図7参照)して、本発明の第2実施形態に係るパケット送信装置1Bの動作について説明する。
なお、図3に示したパケット送信装置1Bの動作は、ステップS5Bを除き、パケット送信装置1(図1参照)と同じ動作であるため、ここでは、説明を省略する。すなわち、パケット送信装置1Bの動作は、パケット送信装置1のステップS5をステップS5Bに替えただけである。
ここでは、図9を参照して、ステップS5Bの動作について詳細に説明する。
[Operation of packet transmission device]
Next, the operation of the packet transmission device 1B according to the second embodiment of the present invention will be described with reference to FIGS.
Note that the operation of the packet transmission device 1B shown in FIG. 3 is the same as that of the packet transmission device 1 (see FIG. 1) except for step S5B, and thus the description thereof is omitted here. In other words, the operation of the packet transmission device 1B is merely that step S5 of the packet transmission device 1 is replaced with step S5B.
Here, the operation of step S5B will be described in detail with reference to FIG.

図9に示すように、パケット送信装置1Bは、基準RTT変動量推定手段16Bの時間区間判定手段162によって、前回の基準RTT変動量の更新からの計時時間が、記憶手段18(18)に記憶されている最小RTT(所定の時間区間)を経過したか否かを判定する(ステップS51B)。なお、ここで、時間区間判定手段162は、基準RTT変動量がまだ一度も更新されていない段階においては、所定の時間区間を経過したと判定することとする。 As shown in FIG. 9, the packet transmission device 1B uses the time interval determination unit 162 of the reference RTT fluctuation amount estimation unit 16B to store the time measured from the previous update of the reference RTT fluctuation amount in the storage unit 18 (18 2 ). It is determined whether or not the stored minimum RTT (predetermined time interval) has elapsed (step S51B). Here, the time interval determination unit 162 determines that a predetermined time interval has elapsed when the reference RTT fluctuation amount has not been updated yet.

ここで、所定の時間区間を経過した場合(ステップS51BでYes)、基準RTT変動量推定手段16Bの変動量算出手段161Bは、前記式(3)により、記憶手段18(18)に記憶されている基準RTT変動量と現区間最大変動量とを、予め定めた比率で〔(1−α):α〕で加算することで、新たな基準RTT変動量を算出する(ステップS52B)。このステップS52Bで算出された新たな基準RTT変動量は、変動量算出手段161Bによって、記憶手段18(18)に記憶される。 Here, when a predetermined time interval has elapsed (Yes in step S51B), the fluctuation amount calculation means 161B of the reference RTT fluctuation amount estimation means 16B is stored in the storage means 18 (18 2 ) by the above equation (3). The new reference RTT fluctuation amount is calculated by adding the reference RTT fluctuation amount and the current section maximum fluctuation amount at a predetermined ratio [(1-α): α] (step S52B). The new reference RTT fluctuation amount calculated in step S52B is stored in the storage means 18 (18 2 ) by the fluctuation amount calculation means 161B.

そして、変動量算出手段161Bは、記憶手段18(18)に記憶されている現区間最大変動量を初期化(“0”)する(ステップS53B)。
また、時間区間判定手段162は、変動量算出手段161Bからの基準RTT変動量の更新の通知により、時間区間の計時をリセットし、再度、時間区間の計時を開始する(ステップとして図示せず)。
Then, the fluctuation amount calculating means 161B initializes (“0”) the current section maximum fluctuation amount stored in the storage means 18 (18 2 ) (step S53B).
In addition, the time interval determination unit 162 resets the time interval measurement in response to the update notification of the reference RTT variation amount from the variation amount calculation unit 161B, and starts the time interval measurement again (not shown as a step). .

その後、または、ステップS51Bで時間区間が経過していない場合(ステップS51BでNo)、変動量算出手段161Bは、記憶手段18(18)に前回のRTTが記憶されているか否かを判定する(ステップS54B)。
ここで、記憶手段18(18)に前回のRTTが記憶されている場合(ステップS54BでYes)、変動量算出手段161Bは、前回のRTTと今回のRTTとの差分の絶対値(RTT差分)を算出する(ステップS55B)。
Thereafter, or when the time interval has not elapsed in step S51B (No in step S51B), the fluctuation amount calculating means 161B determines whether or not the previous RTT is stored in the storage means 18 (18 2 ). (Step S54B).
When the previous RTT is stored in the storage unit 18 (18 2 ) (Yes in step S54B), the fluctuation amount calculating unit 161B determines the absolute value of the difference between the previous RTT and the current RTT (RTT difference). ) Is calculated (step S55B).

そして、変動量算出手段161Bは、ステップS55Bで算出したRTT差分が、記憶手段18(18)に記憶されている現区間最大変動量よりも大きければ(ステップS56BでYes)、現区間最大変動量をステップS55Bで算出したRTT差分で更新する(ステップS57B)。 Then, if the RTT difference calculated in step S55B is larger than the current section maximum fluctuation amount stored in the storage means 18 (18 2 ) (Yes in step S56B), the fluctuation amount calculating means 161B determines the current section maximum fluctuation. The amount is updated with the RTT difference calculated in step S55B (step S57B).

そして、変動量算出手段161Bは、今回のRTTを、前回のRTTとして記憶手段18(18)に記憶する(ステップS58B)。
なお、ステップS54Bにおいて、記憶手段18(18)に前回のRTTが記憶されていない場合(ステップS54BでNo)、あるいは、ステップS56Bにおいて、RTT差分が現区間最大変動量以下の場合(ステップS56BでNo)、変動量算出手段161Bは、ステップS58Bの動作のみを行う。
Then, the fluctuation amount calculating unit 161B stores the current RTT in the storage unit 18 (18 2 ) as the previous RTT (step S58B).
In step S54B, when the previous RTT is not stored in the storage means 18 (18 2 ) (No in step S54B), or in step S56B, the RTT difference is equal to or smaller than the current section maximum fluctuation amount (step S56B). No), the fluctuation amount calculating means 161B performs only the operation of step S58B.

以上説明したようにパケット送信装置1Bを構成し、動作させることで、パケット送信装置1Bは、時間区間判定手段162によって、基準RTT変動量を更新してからの所定時間区間を判定することができ、自身の持つ時刻解像度に対して、送信レートが大きくなりバースト的にパケットの送受信が発生する環境や、輻輳以外の遅延増加の頻度が低い環境であっても、基準RTT変動量が過剰に低くなることを防止することができる。すなわち、パケット送信装置1Bは、CWNDの過剰な減少を防止して、高スループットを維持することができる。   By configuring and operating the packet transmission device 1B as described above, the packet transmission device 1B can determine the predetermined time interval after the reference RTT fluctuation amount is updated by the time interval determination unit 162. Even in an environment where the transmission rate increases and packet transmission / reception occurs in bursts with respect to its own time resolution, or in an environment where the frequency of delay increases other than congestion is low, the reference RTT fluctuation amount is excessively low Can be prevented. That is, the packet transmission device 1B can prevent an excessive decrease in CWND and maintain high throughput.

≪第3実施形態≫
〔パケット送信装置の構成〕
次に、図10を参照して、本発明の第3実施形態に係るパケット送信装置1Cの構成について説明する。
«Third embodiment»
[Configuration of packet transmitter]
Next, the configuration of a packet transmission device 1C according to the third embodiment of the present invention will be described with reference to FIG.

パケット送信装置1Cは、遅延ベースの輻輳制御でパケットの送信を行うもので、図1で説明したパケット送信装置1と基本的には同様の機能を有する。
すなわち、パケット送信装置1Cは、RTTジッタの移動平均を基準RTT変動量として、RTTを計測したタイミングで基準RTT変動量を逐次更新する。
しかし、パケット送信装置1Cは、パケットの送信時刻間隔が予め定めた時間長よりも長い場合には、基準RTT変動量を更新しないこととする。
The packet transmission device 1C performs packet transmission by delay-based congestion control, and has basically the same function as the packet transmission device 1 described in FIG.
That is, the packet transmission device 1C sequentially updates the reference RTT fluctuation amount at the timing when the RTT is measured, using the moving average of the RTT jitter as the reference RTT fluctuation amount.
However, the packet transmission device 1C does not update the reference RTT variation when the packet transmission time interval is longer than a predetermined time length.

これは、以下の理由によるものである。
一般に、パケットの送信時刻間隔が長い場合、二つのパケットが通過するネットワークの状態が変化している可能性が大きいといえる。ここで、RTTを、「キューイング遅延(可変)+処理・伝搬遅延(固定)+再送などの輻輳とは無関係の遅延(可変)」から構成されると考えたとき、ネットワークの状態(例えば、混雑具合)が異なるとキューイング遅延も異なる可能性がある。この場合、輻輳とは無関係の遅延量を推定することができない。
そこで、パケット送信装置1Cは、パケットの送信時刻間隔が長い場合、このようなRTTをサンプルから除外することとした。
This is due to the following reason.
In general, when the packet transmission time interval is long, it is highly possible that the state of the network through which two packets pass has changed. Here, when the RTT is considered to be composed of “queuing delay (variable) + processing / propagation delay (fixed) + delay unrelated to congestion such as retransmission (variable)”, the state of the network (for example, There is a possibility that the queuing delay will be different if the degree of congestion) is different. In this case, the amount of delay unrelated to congestion cannot be estimated.
Therefore, the packet transmission device 1C excludes such RTT from the sample when the packet transmission time interval is long.

パケット送信装置1Cは、図10に示すように、データ入力手段10と、データバッファ(一時記憶手段)11と、フロー制御手段12と、データ送信手段13と、送達確認応答受信手段14と、輻輳ウィンドウ制御手段15と、基準RTT変動量推定手段16Cと、RTT変動解析手段17と、記憶手段18と、を備える。   As shown in FIG. 10, the packet transmission apparatus 1C includes a data input means 10, a data buffer (temporary storage means) 11, a flow control means 12, a data transmission means 13, a delivery confirmation response reception means 14, and a congestion. A window control unit 15, a reference RTT variation estimation unit 16 </ b> C, an RTT variation analysis unit 17, and a storage unit 18 are provided.

基準RTT変動量推定手段16C以外の構成については、図1で説明したパケット送信装置1と同一の構成であるため、同一の符号を付して説明を省略する。なお、記憶手段18は、記憶する内容がパケット送信装置1に対して増えている。その内容は、基準RTT変動量推定手段16Cにより更新されるものであるため、基準RTT変動量推定手段16Cの説明において行うこととする。   Since the configuration other than the reference RTT variation estimation unit 16C is the same as that of the packet transmission device 1 described in FIG. 1, the same reference numerals are given and the description thereof is omitted. Note that the storage unit 18 stores more content than the packet transmission device 1. Since the content is updated by the reference RTT fluctuation amount estimation means 16C, it will be described in the description of the reference RTT fluctuation amount estimation means 16C.

基準RTT変動量推定手段16Cは、RTT計測手段141で計測されるRTTの変動量を平滑化して、RTTの増加判定の基準となる基準RTT変動量を推定するものである。ここでは、基準RTT変動量推定手段16Cは、変動量算出手段161Cと、送信時刻判定手段163と、を備える。
なお、基準RTT変動量推定手段16Cは、送達確認されたパケットの送信時刻を基準RTT変動量の更新判定に用いるが、この送信時刻については、RTTに付随して、送達確認応答受信手段14(RTT計測手段141)から、輻輳ウィンドウ制御手段15(パケットロス検出手段151)およびRTT変動解析手段17(RTT増加判定手段172)を経由して取得することとする。
The reference RTT fluctuation amount estimation unit 16C smoothes the RTT fluctuation amount measured by the RTT measurement unit 141, and estimates the reference RTT fluctuation amount that serves as a reference for the RTT increase determination. Here, the reference RTT variation estimation unit 16C includes a variation calculation unit 161C and a transmission time determination unit 163.
The reference RTT fluctuation amount estimation unit 16C uses the transmission time of the packet whose delivery has been confirmed for the update determination of the reference RTT fluctuation amount. The transmission time is associated with the RTT, and the delivery confirmation response reception unit 14 ( It is obtained from the RTT measurement means 141) via the congestion window control means 15 (packet loss detection means 151) and the RTT fluctuation analysis means 17 (RTT increase determination means 172).

変動量算出手段(基準RTT変動量算出手段)161Cは、TCPのコネクション確立中において、今回受信した送達確認応答(ACK)で計測されたRTT(今回のRTT)と、その直前に受信した送達確認応答(ACK)で計測されたRTT(前回のRTT)との差分(ジッタ)の移動平均を演算することで、RTTの平滑化した変動量を算出し、基準RTT変動量として更新するものである。この機能については、図1で説明した変動量算出手段161と同じである。   Fluctuation amount calculation means (reference RTT fluctuation amount calculation means) 161C, during the establishment of the TCP connection, RTT (current RTT) measured by the delivery confirmation response (ACK) received this time and the delivery confirmation received immediately before By calculating the moving average of the difference (jitter) from the RTT (previous RTT) measured by the response (ACK), the smoothed fluctuation amount of the RTT is calculated and updated as the reference RTT fluctuation amount. . This function is the same as that of the fluctuation amount calculation means 161 described in FIG.

ただし、変動量算出手段161Cは、送信時刻判定手段163に、パケットの送信時刻間隔が所定の時間長よりも長いか否かを問い合わせ、送信時刻間隔が短い場合だけ、新たな基準RTT変動量として更新する。   However, the fluctuation amount calculation means 161C inquires of the transmission time determination means 163 whether or not the packet transmission time interval is longer than a predetermined time length, and only as a new reference RTT fluctuation amount when the transmission time interval is short. Update.

送信時刻判定手段163は、送達確認されたパケットの送信時刻の間隔が所定の時間長よりも長いか否かを判定するものである。
具体的には、送信時刻判定手段163は、逐次RTTに付随して通知される送達確認されたパケットの送信時刻から、以下の式(4)に示すような判定式(if文)によって、送信時刻間隔が閾値(所定の時間長)よりも長いか否かを判定する。そして、変動量算出手段161Cが、その判定結果を取得し、送信時刻間隔が閾値よりも長ければ(then)基準RTT変動量の更新を行わず、閾値以下(otherwise)であれば基準RTT変動量を更新する。
The transmission time determination unit 163 determines whether or not the transmission time interval of the packet whose delivery has been confirmed is longer than a predetermined time length.
Specifically, the transmission time determination unit 163 transmits the packet from the transmission time of the confirmed delivery packet that is sequentially notified in association with the RTT, using a determination expression (if statement) as shown in the following expression (4). It is determined whether the time interval is longer than a threshold (predetermined time length). Then, the fluctuation amount calculation unit 161C acquires the determination result, and if the transmission time interval is longer than the threshold value (then), the reference RTT fluctuation amount is not updated, and if the transmission time interval is less than the threshold value (otherwise), the reference RTT fluctuation amount Update.

if (今回送達確認されたパケットの送信時刻
−前回送達確認されたパケットの送信時刻) > β
then 基準RTT変動量の更新を行わない
otherwise 基準RTT変動量の更新を行う …式(4)
if (transmission time of packet confirmed to be delivered this time−transmission time of packet confirmed to be delivered last time)> β
the the reference RTT fluctuation amount is not updated. the other The reference RTT fluctuation amount is updated. Equation (4)

ここで、βは更新を行うか否かを判定するための閾値である。
この閾値βは、例えば、パケット送信装置1Cで動作するOS(Operating System)上のクロックが計測可能な最小時間とすることができる。また、例えば、パケット送信装置1Cから送信パケットを出力するために必要な時間(送信パケット長÷送信インタフェース速度)を閾値βとすることができる。また、例えば、最小RTT時間と基準RTT変動量とを加算した時間長を輻輳ウィンドウサイズ(CWND)で割った値とすることができる。あるいは、これら例示した値の最大値を閾値βとしてもよい。
Here, β is a threshold value for determining whether or not to update.
This threshold value β can be set to, for example, the minimum time that can be measured by a clock on an OS (Operating System) operating on the packet transmission device 1C. Further, for example, the time required to output a transmission packet from the packet transmission device 1C (transmission packet length / transmission interface speed) can be set as the threshold value β. Further, for example, a value obtained by dividing the time length obtained by adding the minimum RTT time and the reference RTT fluctuation amount by the congestion window size (CWND) can be used. Alternatively, the maximum value of these exemplified values may be set as the threshold value β.

この送信時刻判定手段163は、今回送達確認されたパケットの送信時刻(今回の送信時刻)を、記憶手段18(18)に、前回送達確認されたパケットの送信時刻(前回の送信時刻)として記憶する。また、送信時刻判定手段163は、この判定結果を変動量算出手段161Cに出力する。 The transmission time determination unit 163 sets the transmission time of the packet confirmed this time delivery (current transmission time) as the transmission time of the packet confirmed last time delivery (previous transmission time) in the storage unit 18 (18 2 ). Remember. The transmission time determination unit 163 outputs the determination result to the fluctuation amount calculation unit 161C.

以上説明したようにパケット送信装置1Cを構成することで、パケット送信装置1Cは、輻輳とは関係なく発生するRTTの変動量(基準RTT変動量)を推定し、動的に遅延増加の判定を行うことができる。また、このとき、パケット送信装置1Cは、パケットの送信時刻間隔が長い場合、基準RTT変動量の更新を行わないことで、キューイング遅延が異なる二つのRTTの差分を、基準RTT変動量の更新判定のサンプルから除外することができる。   By configuring the packet transmission device 1C as described above, the packet transmission device 1C estimates the amount of RTT variation (reference RTT variation) that occurs regardless of congestion, and dynamically determines the delay increase. It can be carried out. At this time, if the packet transmission time interval is long, the packet transmitting apparatus 1C does not update the reference RTT fluctuation amount, thereby updating the difference between the two RTTs having different queuing delays to update the reference RTT fluctuation amount. It can be excluded from the judgment sample.

〔パケット送信装置の動作〕
次に、図3および図11を参照(構成については適宜図10参照)して、本発明の第3実施形態に係るパケット送信装置1Cの動作について説明する。
なお、図3に示したパケット送信装置1Cの動作は、ステップS5Cを除き、パケット送信装置1(図1参照)と同じ動作であるため、ここでは、説明を省略する。すなわち、パケット送信装置1Cの動作は、パケット送信装置1のステップS5をステップS5Cに替えただけである。
ここでは、図11を参照して、ステップS5Cの動作について説明する。
なお、図11に示したステップS51C,S54C,S55C,S57Cについては、それぞれ、図5で説明したパケット送信装置1のステップS51,S52,S53,S54の動作と同じであるため、詳細な説明は省略する。
[Operation of packet transmission device]
Next, the operation of the packet transmission device 1C according to the third embodiment of the present invention will be described with reference to FIGS.
The operation of the packet transmission device 1C shown in FIG. 3 is the same as that of the packet transmission device 1 (see FIG. 1) except for step S5C, and thus the description thereof is omitted here. In other words, the operation of the packet transmission device 1C is merely that step S5 of the packet transmission device 1 is replaced with step S5C.
Here, the operation of step S5C will be described with reference to FIG.
Note that steps S51C, S54C, S55C, and S57C shown in FIG. 11 are the same as the operations of steps S51, S52, S53, and S54 of the packet transmission device 1 described with reference to FIG. Omitted.

このパケット送信装置1Cの動作は、パケット送信装置1の動作に対して、新たにステップS52C,S53C,S56Cの動作が付加されている。
すなわち、パケット送信装置1Cは、記憶手段18(18)に前回のRTTが記憶されている場合(ステップS51CでYes)、基準RTT変動量推定手段16Cの変動量算出手段161Cによって、記憶手段18(18)に前回送達確認されたパケットの送信時刻(前回の送信時刻)が記憶されているか否かを判定する(ステップS52C)。
In the operation of the packet transmission device 1C, the operations of steps S52C, S53C, and S56C are newly added to the operation of the packet transmission device 1.
That is, when the previous RTT is stored in the storage unit 18 (18 2 ) (Yes in step S51C), the packet transmission device 1C uses the variation calculation unit 161C of the reference RTT variation estimation unit 16C to store the storage unit 18. It is determined whether (18 2 ) stores the transmission time (previous transmission time) of the packet confirmed to be delivered last time (step S52C).

ここで、記憶手段18(18)に前回の送信時刻が記憶されている場合(ステップS52CでYes)、パケット送信装置1Cは、送信時刻判定手段163によって、今回送達確認されたパケットの送信時刻(今回の送信時刻)と前回送達確認されたパケットの送信時刻(前回の送信時刻)との差が、閾値βよりも大きいか否かを判定する(ステップS53C)。 Here, when the previous transmission time is stored in the storage unit 18 (18 2 ) (Yes in step S52C), the packet transmission device 1C transmits the transmission time of the packet confirmed to be delivered this time by the transmission time determination unit 163. It is determined whether or not the difference between (current transmission time) and the transmission time of the packet confirmed for the previous delivery (previous transmission time) is larger than the threshold β (step S53C).

そして、今回の送信時刻と前回の送信時刻との差が閾値β以下であれば(ステップS53CでNo)、パケット送信装置1Cは、変動量算出手段161Cによって、ステップS54C,S55Cの動作、すなわち、基準RTT変動量の更新を行う。
一方、記憶手段18(18)に前回のRTTが記憶されていない場合(ステップS51CでNo)、記憶手段18(18)に前回の送信時刻が記憶されていない場合(ステップS52CでNo)、または、今回の送信時刻前回の送信時刻との差が閾値よりも大きい場合(ステップS53CでYes)、パケット送信装置1Cは、ステップS56Cに動作を進める。
If the difference between the current transmission time and the previous transmission time is equal to or less than the threshold β (No in step S53C), the packet transmission device 1C causes the fluctuation amount calculation unit 161C to perform the operations of steps S54C and S55C, that is, The reference RTT fluctuation amount is updated.
On the other hand, the storage means 18 (18 2) when the last RTT is not stored (No at step S51C), if the previous transmission time to the storage means 18 (18 2) is not stored (No at Step S52c) Alternatively, if the difference between the current transmission time and the previous transmission time is greater than the threshold (Yes in step S53C), the packet transmission device 1C advances the operation to step S56C.

そして、パケット送信装置1Cは、変動量算出手段161Cによって、今回の送信時刻を、前回の送信時刻として記憶手段18(18)に記憶する(ステップS56C)。また、パケット送信装置1Cは、変動量算出手段161Cによって、今回のRTTを、前回のRTTとして記憶手段18(18)に記憶する(ステップS57C)。 Then, the packet transmission device 1C stores the current transmission time in the storage unit 18 (18 2 ) as the previous transmission time by the fluctuation amount calculation unit 161C (step S56C). Further, the packet transmitting apparatus 1C stores the current RTT in the storage unit 18 (18 2 ) as the previous RTT by the fluctuation amount calculating unit 161C (step S57C).

以上説明したようにパケット送信装置1Cを構成し、動作させることで、パケット送信装置1Cは、パケット送信装置1の効果に加え、以下の効果を奏する。
すなわち、パケット送信装置1Cは、送信時刻判定手段163によって、パケットの送信時刻間隔が所定の時間長よりも長いか否かを判定することができ、基準RTT変動量算出手段によって、パケットの送信時刻間隔が長く二つのパケットそれぞれに発生するキューイング遅延が変化している場合のRTT変動量を基準RTT変動量の推定に用いないため、より正確に基準RTT変動量を推定することができる。これによって、パケット送信装置1Cは、CWNDをより適切に制御することができ、ネットワーク環境に応じた最適なスループットを維持することができる。
By configuring and operating the packet transmission device 1C as described above, the packet transmission device 1C has the following effects in addition to the effects of the packet transmission device 1.
That is, the packet transmitting apparatus 1C can determine whether or not the packet transmission time interval is longer than a predetermined time length by the transmission time determination unit 163, and the packet transmission time by the reference RTT fluctuation amount calculation unit. Since the RTT fluctuation amount when the interval is long and the queuing delay occurring in each of the two packets is changed is not used for estimating the reference RTT fluctuation amount, the reference RTT fluctuation amount can be estimated more accurately. Thus, the packet transmission device 1C can more appropriately control CWND, and can maintain an optimum throughput according to the network environment.

≪第4実施形態≫
〔パケット送信装置の構成〕
次に、図12を参照して、本発明の第4実施形態に係るパケット送信装置1Dの構成について説明する。
<< Fourth Embodiment >>
[Configuration of packet transmitter]
Next, the configuration of a packet transmission device 1D according to the fourth embodiment of the present invention will be described with reference to FIG.

パケット送信装置1Dは、遅延ベースの輻輳制御でパケットの送信を行うもので、図7で説明したパケット送信装置1Bと、図10で説明したパケット送信装置1Cとを併せた機能を有する。
すなわち、パケット送信装置1Dは、所定の時間区間におけるRTTジッタの最大値の移動平均を基準RTT変動量として、その時間区間で基準RTT変動量を更新するが、パケットの送信時刻間隔が予め定めた時間長よりも長い場合には、RTTジッタの最大値を更新しないこととする。
The packet transmission device 1D transmits packets by delay-based congestion control, and has a function that combines the packet transmission device 1B described in FIG. 7 and the packet transmission device 1C described in FIG.
That is, the packet transmission device 1D uses the moving average of the maximum value of the RTT jitter in a predetermined time interval as the reference RTT variation amount, and updates the reference RTT variation amount in the time interval, but the packet transmission time interval is predetermined. When it is longer than the time length, the maximum value of the RTT jitter is not updated.

図12に示すように、パケット送信装置1Cは、データ入力手段10と、データバッファ(一時記憶手段)11と、フロー制御手段12と、データ送信手段13と、送達確認応答受信手段14と、輻輳ウィンドウ制御手段15と、基準RTT変動量推定手段16Dと、RTT変動解析手段17と、記憶手段18と、を備える。   As shown in FIG. 12, the packet transmission device 1C includes a data input unit 10, a data buffer (temporary storage unit) 11, a flow control unit 12, a data transmission unit 13, a delivery confirmation response reception unit 14, a congestion A window control unit 15, a reference RTT variation estimation unit 16 </ b> D, an RTT variation analysis unit 17, and a storage unit 18 are provided.

基準RTT変動量推定手段16D以外の構成については、パケット送信装置1(図1)、パケット送信装置1B(図7)、パケット送信装置1C(図10)と同一の構成であるため、同一の符号を付して説明を省略する。   The configuration other than the reference RTT variation estimation means 16D is the same as that of the packet transmission device 1 (FIG. 1), the packet transmission device 1B (FIG. 7), and the packet transmission device 1C (FIG. 10). The description is omitted.

基準RTT変動量推定手段16Dは、RTT計測手段141で計測されるRTTの変動量を平滑化して、RTTの増加判定の基準となる基準RTT変動量を推定するものである。ここでは、基準RTT変動量推定手段16Dは、変動量算出手段161Dと、時間区間判定手段162と、送信時刻判定手段163と、を備える。
なお、時間区間判定手段162はパケット送信装置1B(図7)、送信時刻判定手段163はパケット送信装置1C(図10)とそれぞれ同じものであるため、説明を省略する。
The reference RTT fluctuation amount estimation means 16D smoothes the RTT fluctuation amount measured by the RTT measurement means 141, and estimates a reference RTT fluctuation amount that serves as a reference for RTT increase determination. Here, the reference RTT fluctuation amount estimation unit 16D includes a fluctuation amount calculation unit 161D, a time interval determination unit 162, and a transmission time determination unit 163.
The time interval determination unit 162 is the same as the packet transmission device 1B (FIG. 7), and the transmission time determination unit 163 is the same as that of the packet transmission device 1C (FIG. 10).

変動量算出手段(基準RTT変動量算出手段)161Dは、変動量算出手段161B(図7)と、変動量算出手段161C(図11)とを併せた機能を有するものである。
すなわち、変動量算出手段161Dは、TCPのコネクション確立中において、所定の時間区間における、パケットの送信時刻間隔が所定の時間長以下の場合に計測したRTTの変動量の最大値を用いて基準RTT変動量を更新する。
The fluctuation amount calculating means (reference RTT fluctuation amount calculating means) 161D has a function of combining the fluctuation amount calculating means 161B (FIG. 7) and the fluctuation amount calculating means 161C (FIG. 11).
That is, the fluctuation amount calculating unit 161D uses the maximum value of the RTT fluctuation amount measured when the packet transmission time interval is equal to or shorter than the predetermined time length during the TCP connection establishment. Update the fluctuation amount.

具体的には、変動量算出手段161Dは、時間区間判定手段162に時間区間が所定時間経過したか否かを問い合わせ、所定時間が経過した場合に、基準RTT変動量を更新する。さらに、変動量算出手段161Dは、送信時刻判定手段163に、パケットの送信時刻間隔が所定の時間長よりも長いか否かを問い合わせ、送信間隔が短い場合だけ、現区間最大変動量と比較し、RTT差分が現区間最大変動量より大きい場合に更新を行う。
このように、パケット送信装置1Dを構成することで、パケット送信装置1Dは、パケット送信装置1B(図7)の効果と、パケット送信装置1C(図10)の効果とを併せて持つことになる。
Specifically, the fluctuation amount calculation means 161D inquires of the time interval determination means 162 whether or not a predetermined time has elapsed, and updates the reference RTT fluctuation amount when the predetermined time has elapsed. Further, the fluctuation amount calculation means 161D inquires of the transmission time determination means 163 whether or not the packet transmission time interval is longer than a predetermined time length, and compares it with the current interval maximum fluctuation amount only when the transmission interval is short. When the RTT difference is larger than the current section maximum fluctuation amount, the update is performed.
Thus, by configuring the packet transmission device 1D, the packet transmission device 1D has both the effects of the packet transmission device 1B (FIG. 7) and the effects of the packet transmission device 1C (FIG. 10). .

〔パケット送信装置の動作〕
次に、図3および図13を参照(構成については適宜図12参照)して、本発明の第4実施形態に係るパケット送信装置1Dの動作について説明する。
図3に示したパケット送信装置1Dの動作は、ステップS5Dを除き、パケット送信装置1(図1参照)と同じ動作である。すなわち、パケット送信装置1Dの動作は、パケット送信装置1のステップS5をステップS5Dに替えただけである。
[Operation of packet transmission device]
Next, the operation of the packet transmission device 1D according to the fourth embodiment of the present invention will be described with reference to FIGS.
The operation of the packet transmission device 1D shown in FIG. 3 is the same as that of the packet transmission device 1 (see FIG. 1) except for step S5D. That is, the operation of the packet transmission device 1D is merely the step S5 of the packet transmission device 1 replaced with step S5D.

また、図13に示したパケット送信装置1DのステップS5Dの動作は、基本的に、図9で説明したパケット送信装置1B(図7)のステップS5Bの動作と、図11で説明したパケット送信装置1C(図10)のステップS5Cの動作とを併せたものである。
そこで、ここでは、図9および図11で説明した動作と同じステップについて、同一のステップ番号を用いることで、図13の説明を省略する。
The operation of step S5D of the packet transmission device 1D shown in FIG. 13 is basically the same as the operation of step S5B of the packet transmission device 1B (FIG. 7) described in FIG. 9 and the packet transmission device described in FIG. This is a combination of the operation of step S5C of 1C (FIG. 10).
Therefore, the description of FIG. 13 is omitted here by using the same step numbers for the same steps as the operations described in FIG. 9 and FIG.

以上説明したように、パケット送信装置1Dは、自身の持つ時刻解像度に対して、送信レートが大きくなりバースト的にパケットの送受信が発生する環境や、輻輳以外の遅延増加の頻度が低い環境であっても、CWNDの過剰な減少を防止して、高スループットを維持することができる。
さらに、パケット送信装置1Dは、パケットの送信時刻間隔が長く二つのパケットそれぞれに発生するキューイング遅延が変化している場合のRTT変動量を基準RTT変動量の推定に用いないため、より正確に基準RTT変動量を推定することができる。これによって、パケット送信装置1Dは、CWNDをより適切に制御することができ、ネットワーク環境に応じた最適なスループットを維持することができる。
As described above, the packet transmission device 1D has an environment in which the transmission rate is large and packet transmission / reception occurs in bursts with respect to its own time resolution, or an environment in which the frequency of delay increases other than congestion is low. However, excessive reduction of CWND can be prevented and high throughput can be maintained.
Furthermore, since the packet transmission device 1D does not use the RTT fluctuation amount when the packet transmission time interval is long and the queuing delay occurring in each of the two packets changes, for estimation of the reference RTT fluctuation amount, it is more accurate. The reference RTT fluctuation amount can be estimated. Thereby, the packet transmission device 1D can control the CWND more appropriately, and can maintain an optimum throughput according to the network environment.

以上、第1から第4実施形態に係るパケット送信装置の構成および動作について説明したが、これらパケット送信装置は、コンピュータを、前記した各手段として機能させるためのプログラム(パケット送信プログラム)で動作させることができる。   The configuration and operation of the packet transmission device according to the first to fourth embodiments have been described above. These packet transmission devices operate the computer with a program (packet transmission program) for causing the computer to function as each of the above-described means. be able to.

≪参考例の実施形態≫
〔パケット受信装置〕
最後に、図14を参照して、パケット送信装置1(1B,1C,1D)が送信するパケットデータを受信する一般的なパケット受信装置2について簡単に説明しておく。
パケット受信装置2は、データ受信手段20と、データバッファ(一時記憶手段)21と、データ出力手段22と、フロー制御手段23と、送達確認応答送信手段24と、を備える。
<< embodiments of reference examples >>
[Packet receiving device]
Finally, with reference to FIG. 14, a general packet receiver 2 that receives packet data transmitted by the packet transmitter 1 (1B, 1C, 1D) will be briefly described.
The packet receiving device 2 includes a data receiving unit 20, a data buffer (temporary storage unit) 21, a data output unit 22, a flow control unit 23, and a delivery confirmation response transmission unit 24.

データ受信手段20は、通信回線を介して、パケット送信装置1から送信されるパケットデータを受信するものである。このデータ受信手段20は、受信したパケットを逐次データバッファ21に書き込むとともに、フロー制御手段23に対して、パケットを受信した旨の通知を行う。   The data receiving unit 20 receives packet data transmitted from the packet transmission device 1 via a communication line. The data receiving means 20 sequentially writes the received packets in the data buffer 21 and notifies the flow control means 23 that the packets have been received.

データバッファ(一時記憶手段)21は、データ受信手段20を介して受信されたパケットデータを一時的に記憶しておくもので、例えば、半導体メモリ等の記憶媒体である。このデータバッファ21に記憶されたパケットデータは、データ出力手段22によって読み出され、データバッファ21は、FIFOとして機能する。   The data buffer (temporary storage means) 21 temporarily stores packet data received via the data receiving means 20, and is a storage medium such as a semiconductor memory. The packet data stored in the data buffer 21 is read by the data output means 22, and the data buffer 21 functions as a FIFO.

データ出力手段22は、データバッファ21に記憶されているパケットを、順次読み出して外部に出力するものである。なお、データ出力手段22は、パケットを読み出した旨をフロー制御手段23に通知する。   The data output means 22 sequentially reads out the packets stored in the data buffer 21 and outputs them to the outside. The data output means 22 notifies the flow control means 23 that the packet has been read.

フロー制御手段23は、パケット送信装置1との間でフロー制御を行うものである。
このフロー制御手段23は、データバッファ21の容量で予め定めた最大パケット数(受信ウィンドウサイズ)を管理し、データバッファ21に記憶されるパケット数が、受信ウィンドウサイズを超過しないように、フロー制御を行う。なお、データバッファ21に記憶されるパケット数は、データ受信手段20で受信されたパケットと、データ出力手段22で出力されるパケットの数で把握することができる。
ここで、フロー制御手段23は、データ受信手段20が受信したパケットに対して、受信した旨と、次に受信すべきパケットを特定する情報を含んだ送達確認応答(ACK)を送達確認応答送信手段24に出力する。
The flow control unit 23 performs flow control with the packet transmission device 1.
This flow control means 23 manages the maximum number of packets (reception window size) determined in advance by the capacity of the data buffer 21, and performs flow control so that the number of packets stored in the data buffer 21 does not exceed the reception window size. I do. Note that the number of packets stored in the data buffer 21 can be grasped by the number of packets received by the data receiving unit 20 and the number of packets output by the data output unit 22.
Here, for the packet received by the data receiving unit 20, the flow control unit 23 transmits a delivery confirmation response (ACK) including information indicating that the packet has been received and information specifying the next packet to be received. Output to means 24.

送達確認応答送信手段24は、フロー制御手段23から出力される送達確認応答(ACK)を、通信回線を介して、パケット送信装置1に送信するものである。
パケット送信装置1(1B,1C,1D)は、以上説明したように、一般的なパケット受信装置2に対して、パケットを送信する場合であっても、輻輳とは関係がない伝送遅延によるCWNDの必要以上の減少を防止することができ、ネットワーク環境に適したスループットを維持してパケットの送信を行うことができる。
The delivery confirmation response transmission unit 24 transmits the delivery confirmation response (ACK) output from the flow control unit 23 to the packet transmission device 1 via the communication line.
As described above, the packet transmission apparatus 1 (1B, 1C, 1D) transmits a packet to the general packet reception apparatus 2 even if the packet transmission apparatus 1 (1B, 1C, 1D) has a CWND due to a transmission delay unrelated to congestion. The packet can be transmitted while maintaining a throughput suitable for the network environment.

1 パケット送信装置
10 データ入力手段
11 データバッファ(一時記憶手段)
12 フロー制御手段
13 データ送信手段
131 送信時刻書込手段
14 送達確認応答受信手段
141 RTT計測手段
15 輻輳ウィンドウ制御手段
151 パケットロス検出手段
152 ロス発生用CWND処理手段
153 RTT変動用CWND処理手段
16 基準RTT変動量推定手段
161 変動量算出手段(基準RTT変動量算出手段)
162 時間区間判定手段
163 送信時刻判定手段
17 RTT変動解析手段
171 最小RTT更新手段
172 RTT増加判定手段
18 記憶手段
1 Packet transmission device 10 Data input means 11 Data buffer (temporary storage means)
DESCRIPTION OF SYMBOLS 12 Flow control means 13 Data transmission means 131 Transmission time writing means 14 Delivery confirmation response reception means 141 RTT measurement means 15 Congestion window control means 151 Packet loss detection means 152 Loss generation CWND processing means 153 RTT fluctuation CWND processing means 16 Reference RTT fluctuation amount estimation means 161 Fluctuation amount calculation means (reference RTT fluctuation amount calculation means)
162 Time interval determination means 163 Transmission time determination means 17 RTT fluctuation analysis means 171 Minimum RTT update means 172 RTT increase determination means 18 Storage means

Claims (5)

送達確認応答を受信するまで一度に送信可能なパケット数を示す輻輳ウィンドウサイズを、パケットの伝送遅延に応じて制御するパケット送信装置において、
受信した送達確認応答に対応したパケットの送信時刻と、当該送達確認応答の受信時刻とから当該パケットの往復遅延時間であるRTTを計測するRTT計測手段と、
このRTT計測手段で逐次計測されるRTTの最小RTTを更新して記憶手段に記憶する最小RTT更新手段と、
前記計測されるRTTの変動量を平滑化した変動量を算出し、基準RTT変動量として順次更新する基準RTT変動量算出手段と、
前記計測されたRTTが、前記最小RTTと前記基準RTT変動量とを加算した時間長よりも長くなったときにはRTTが増加したと判定し、前記時間長以下のときにはRTTが増加していないと判定するRTT増加判定手段と、
このRTT増加判定手段でRTTが増加したと判定された場合に、前記輻輳ウィンドウサイズを減少させ、RTTが増加していないと判定された場合に、前記輻輳ウィンドウサイズを増加させるように輻輳ウィンドウサイズを制御する輻輳ウィンドウ制御手段と、
を備えることを特徴とするパケット送信装置。
In a packet transmission device that controls a congestion window size indicating the number of packets that can be transmitted at one time until a delivery confirmation response is received, according to the transmission delay of the packet,
RTT measuring means for measuring RTT which is a round trip delay time of the packet from the transmission time of the packet corresponding to the received delivery confirmation response and the reception time of the delivery confirmation response;
A minimum RTT update means for updating the minimum RTT of the RTT sequentially measured by the RTT measurement means and storing it in the storage means;
A reference RTT fluctuation amount calculating means for calculating a fluctuation amount obtained by smoothing the measured RTT fluctuation amount and sequentially updating the fluctuation amount as a reference RTT fluctuation amount;
When the measured RTT is longer than the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount, it is determined that the RTT has increased. When the measured RTT is less than the time length, it is determined that the RTT has not increased. RTT increase determination means for
When the RTT increase determining means determines that the RTT has increased, the congestion window size is decreased, and when it is determined that the RTT has not increased, the congestion window size is increased. Congestion window control means for controlling
A packet transmission device comprising:
前記基準RTT変動量を更新した後、所定の時間区間が経過したか否かを判定する時間区間判定手段を備え、
前記基準RTT変動量算出手段が、前記時間区間における前記変動量の最大値を記憶し、当該時間区間経過後に、前記基準RTT変動量と前記変動量の最大値とを平滑化して、新たな基準RTT変動量として更新することを特徴とする請求項1に記載のパケット送信装置。
After updating the reference RTT fluctuation amount, comprising a time interval determination means for determining whether or not a predetermined time interval has elapsed,
The reference RTT fluctuation amount calculation means stores the maximum value of the fluctuation amount in the time interval, and smoothes the reference RTT fluctuation amount and the maximum value of the fluctuation amount after the time interval has elapsed, thereby obtaining a new reference The packet transmission device according to claim 1, wherein the packet transmission device is updated as an RTT fluctuation amount.
送達確認されたパケットの送信時刻の間隔が所定の時間長よりも長いか否かを判定する送信時刻判定手段を備え、
前記基準RTT変動量算出手段は、前記送信時刻判定手段において、前記送信時刻間隔が所定の時間長よりも長いと判定された場合、前記基準RTT変動量を更新せず、前記送信時刻間隔が所定の時間長以下と判定された場合、前記基準RTT変動量を更新することを特徴とする請求項1に記載のパケット送信装置。
A transmission time determination means for determining whether or not the transmission time interval of the packet whose delivery has been confirmed is longer than a predetermined time length;
The reference RTT fluctuation amount calculating means does not update the reference RTT fluctuation amount when the transmission time determining means determines that the transmission time interval is longer than a predetermined time length, and the transmission time interval is predetermined. 2. The packet transmission device according to claim 1, wherein the reference RTT fluctuation amount is updated when it is determined that the time length is equal to or less than a predetermined time length.
前記基準RTT変動量を算出した後、所定の時間区間が経過したか否かを判定する時間区間判定手段と、
送達確認されたパケットの送信時刻の間隔が所定の時間長よりも長いか否かを判定する送信時刻判定手段と、を備え、
前記基準RTT変動量算出手段が、前記時間区間において、前記送信時刻間隔が所定の時間長よりも短い場合だけ前記変動量の最大値を記憶し、当該時間区間経過後、前記基準RTT変動量と前記変動量の最大値とを平滑化して、新たな基準RTT変動量として更新することを特徴とする請求項1に記載のパケット送信装置。
Time interval determination means for determining whether or not a predetermined time interval has elapsed after calculating the reference RTT fluctuation amount;
Transmission time determination means for determining whether or not the transmission time interval of the packet confirmed for delivery is longer than a predetermined time length,
The reference RTT fluctuation amount calculating means stores the maximum value of the fluctuation amount only when the transmission time interval is shorter than a predetermined time length in the time interval, and after the time interval elapses, The packet transmission apparatus according to claim 1, wherein the maximum value of the fluctuation amount is smoothed and updated as a new reference RTT fluctuation amount.
送達確認応答を受信するまで一度に送信可能なパケット数を示す輻輳ウィンドウサイズを、パケットの伝送遅延に応じて制御するために、パケット送信装置のコンピュータを、
パケットのデータを入力してデータバッファに記憶するデータ入力手段、
前記データバッファに記憶されたパケットのデータを読み出し、通信回線を介して、送信するデータ送信手段、
前記送達確認応答を受信し、当該送達確認応答に対応したパケットの送信時刻と、当該送達確認応答の受信時刻とから当該パケットの往復遅延時間であるRTTを計測する送達応答確認受信手段、
前記輻輳ウィンドウサイズに基づいて、送信するパケットのデータ量を制御するフロー制御手段、
前記送達応答確認受信手段で逐次計測されるRTTの最小RTTを更新して記憶手段に記憶する最小RTT更新手段、
前記計測されるRTTの変動量を平滑化した変動量を算出し、基準RTT変動量として順次更新する基準RTT変動量算出手段、
前記計測されたRTTが、前記最小RTTと前記基準RTT変動量とを加算した時間長よりも長くなったときにはRTTが増加したと判定し、前記時間長以下のときにはRTTが増加していないと判定するRTT増加判定手段、
このRTT増加判定手段でRTTが増加したと判定された場合に、前記輻輳ウィンドウサイズを減少させ、RTTが増加していないと判定された場合に、前記輻輳ウィンドウサイズを増加させるように輻輳ウィンドウサイズを制御する輻輳ウィンドウ制御手段、
として機能させるためのパケット送信プログラム。
In order to control the congestion window size indicating the number of packets that can be transmitted at one time until a delivery confirmation response is received according to the transmission delay of the packet, the computer of the packet transmission device is
Data input means for inputting packet data and storing it in a data buffer;
Data transmission means for reading out the packet data stored in the data buffer and transmitting the data via a communication line;
A delivery response confirmation receiving means for receiving the delivery confirmation response and measuring an RTT that is a round trip delay time of the packet from a transmission time of the packet corresponding to the delivery confirmation response and a reception time of the delivery confirmation response;
Flow control means for controlling the data amount of the packet to be transmitted based on the congestion window size;
A minimum RTT updating means for updating a minimum RTT of RTT sequentially measured by the delivery response confirmation receiving means and storing the updated RTT in a storage means;
A reference RTT fluctuation amount calculating means for calculating a fluctuation amount obtained by smoothing the measured RTT fluctuation amount and sequentially updating it as a reference RTT fluctuation amount;
When the measured RTT is longer than the time length obtained by adding the minimum RTT and the reference RTT fluctuation amount, it is determined that the RTT has increased. When the measured RTT is less than the time length, it is determined that the RTT has not increased. RTT increase determination means for
When the RTT increase determining means determines that the RTT has increased, the congestion window size is decreased, and when it is determined that the RTT has not increased, the congestion window size is increased. Congestion window control means for controlling
Packet transmission program to function as
JP2013164133A 2013-08-07 2013-08-07 Packet transmission apparatus and program thereof Expired - Fee Related JP6173826B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013164133A JP6173826B2 (en) 2013-08-07 2013-08-07 Packet transmission apparatus and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013164133A JP6173826B2 (en) 2013-08-07 2013-08-07 Packet transmission apparatus and program thereof

Publications (2)

Publication Number Publication Date
JP2015033125A true JP2015033125A (en) 2015-02-16
JP6173826B2 JP6173826B2 (en) 2017-08-02

Family

ID=52518069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013164133A Expired - Fee Related JP6173826B2 (en) 2013-08-07 2013-08-07 Packet transmission apparatus and program thereof

Country Status (1)

Country Link
JP (1) JP6173826B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015185857A (en) * 2014-03-20 2015-10-22 日本放送協会 Packet transmission device, communication terminal, and congestion control method in packet communication
JP2017022520A (en) * 2015-07-09 2017-01-26 三菱電機株式会社 Communication device and communication system
US10367922B2 (en) 2015-03-02 2019-07-30 Huawei Technologies Co., Ltd. Method and apparatus for sending transmission control protocol TCP data packet and system
CN111835649A (en) * 2019-04-15 2020-10-27 深信服科技股份有限公司 Data sending method, device and related components

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011155406A (en) * 2010-01-26 2011-08-11 Nippon Hoso Kyokai <Nhk> Transmitter, transmission method and program
US20110261691A1 (en) * 2010-04-22 2011-10-27 Cheng Jin Congestion Window Control Based On Queuing Delay and Packet Loss
US20130058212A1 (en) * 2011-09-07 2013-03-07 Contextream Ltd. Optimization of the transmission control protocol particularly for wireless connections
JP2013085135A (en) * 2011-10-11 2013-05-09 Panasonic Corp Network terminal device and data transmission method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011155406A (en) * 2010-01-26 2011-08-11 Nippon Hoso Kyokai <Nhk> Transmitter, transmission method and program
US20110261691A1 (en) * 2010-04-22 2011-10-27 Cheng Jin Congestion Window Control Based On Queuing Delay and Packet Loss
US20130058212A1 (en) * 2011-09-07 2013-03-07 Contextream Ltd. Optimization of the transmission control protocol particularly for wireless connections
JP2013085135A (en) * 2011-10-11 2013-05-09 Panasonic Corp Network terminal device and data transmission method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
山本 嶺、他: "RTT駆動型ウィンドウ制御手法の特性分析", 電子情報通信学会技術研究報告, vol. 100, no. 326, JPN6017020219, 3 December 2009 (2009-12-03), JP, pages 0 - 81 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015185857A (en) * 2014-03-20 2015-10-22 日本放送協会 Packet transmission device, communication terminal, and congestion control method in packet communication
US10367922B2 (en) 2015-03-02 2019-07-30 Huawei Technologies Co., Ltd. Method and apparatus for sending transmission control protocol TCP data packet and system
JP2017022520A (en) * 2015-07-09 2017-01-26 三菱電機株式会社 Communication device and communication system
CN111835649A (en) * 2019-04-15 2020-10-27 深信服科技股份有限公司 Data sending method, device and related components
CN111835649B (en) * 2019-04-15 2023-11-07 深信服科技股份有限公司 Data transmission method, device and related components

Also Published As

Publication number Publication date
JP6173826B2 (en) 2017-08-02

Similar Documents

Publication Publication Date Title
CN107624232B (en) Apparatus and method for controlling downlink throughput in communication system
US8638686B2 (en) Buffer sizing for multi-hop networks
WO2017119408A1 (en) Transmit data volume control device, method, and recording medium
JP6274113B2 (en) Data transmission apparatus, data transmission method, and program thereof
JP6173826B2 (en) Packet transmission apparatus and program thereof
US20150189659A1 (en) Method and a device for low intrusive fast estimation of the bandwidth available between two ip nodes
US8565249B2 (en) Queue management system and methods
JP4831366B2 (en) Communication system, communication terminal, relay node, communication method used therefor, and program thereof
JP6101046B2 (en) Packet transmission apparatus and program thereof
JP5308364B2 (en) Transmission device, transmission method, and program
WO2014171543A1 (en) Data transmission device, data transmission method, and program therefor
WO2017077704A1 (en) Throughput measuring device and method, and recording medium
JP2009105662A (en) Multi-hop communication system, multi-hop communication method, terminal device and repeating device
JP6418169B2 (en) Minimum delay value calculation device, information transmission device, minimum delay value calculation method, and computer program
JP6280680B2 (en) Packet transmission apparatus, communication terminal and slow start control method in packet communication
WO2019124290A1 (en) Transmit data volume control device, method, and recording medium
JP6897769B2 (en) Data transmitters, methods and programs
JP6491521B2 (en) Packet transmission apparatus, communication terminal and congestion control method in packet communication
KR100915996B1 (en) Method and Terminal for Controlling Transmission according Bandwidth Change
Parvez et al. TCP Prairie: a sender-only TCP modification based on adaptive bandwidth estimation in wired-wireless networks
Lar et al. Modeling TCP NewReno slow start and congestion-avoidance using simulation approach
JP6280681B2 (en) Packet transmission apparatus, communication terminal and congestion control method in packet communication
JP6417225B2 (en) Packet transmission apparatus, communication terminal and slow start control method in packet communication
Chang et al. Dynamic Flow Control for Big Data Transmissions toward 5G Multi-hop Relaying Mobile Networks
Kim et al. Gateway strategies for VoIP traffic over wireless multihop networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170407

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170705

R150 Certificate of patent or registration of utility model

Ref document number: 6173826

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees