JP4915415B2 - Communication terminal, communication system, congestion control method, and congestion control program - Google Patents
Communication terminal, communication system, congestion control method, and congestion control program Download PDFInfo
- Publication number
- JP4915415B2 JP4915415B2 JP2008325547A JP2008325547A JP4915415B2 JP 4915415 B2 JP4915415 B2 JP 4915415B2 JP 2008325547 A JP2008325547 A JP 2008325547A JP 2008325547 A JP2008325547 A JP 2008325547A JP 4915415 B2 JP4915415 B2 JP 4915415B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- communication
- delay time
- round
- transmission
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Description
本発明は、通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラムに関し、特に、広帯域回線を使用して低遅延の通信を行う通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラムに関する。 The present invention relates to a communication terminal, a communication system, a congestion control method, and a congestion control program, and in particular, a communication terminal, a communication system, a congestion control method, and a congestion control program that perform low-delay communication using a broadband line. About.
ネットワークを介した通信において、送受信端末間で低遅延な通信を行うためには、ネットワーク内でのキュー遅延による遅延時間を短くすることが求められる。送受信端末間での遅延の最小値は、送受信端末間の伝播遅延時間であり、これより短い遅延での通信はできないものと考えられる。そして、ネットワーク内で輻輳が発生すると、輻輳が発生したノードにおいてパケット出力待ち合わせのためのキューができ、このキューを通過する時間分だけ送受信端末間の遅延が増加する。また、キューが長くなり、輻輳しているノードのバッファ容量を超えると、パケット廃棄が発生するため、送受信端末間の遅延時間はパケット再送にかかわる分だけ大幅に増加する。このように、低遅延な通信を行うためには、ネットワーク内ノードにおけるキュー遅延を小さくすることが求められる。 In order to perform low-latency communication between transmitting and receiving terminals in communication via a network, it is required to shorten the delay time due to queue delay in the network. The minimum value of the delay between the transmission / reception terminals is the propagation delay time between the transmission / reception terminals, and it is considered that communication with a shorter delay is not possible. When congestion occurs in the network, a queue for waiting for packet output is created at the node where the congestion has occurred, and the delay between the transmitting and receiving terminals increases by the time that passes through this queue. Further, when the queue becomes long and exceeds the buffer capacity of a congested node, packet discarding occurs, so that the delay time between the transmitting and receiving terminals greatly increases by the amount related to packet retransmission. Thus, in order to perform low-latency communication, it is required to reduce the queue delay in the nodes in the network.
キュー遅延を小さくする方式として最も効果の高い方式は、ネットワーク内ノードにおいて、低遅延な通信のみ特別に優先度の高いキューに格納して優先的にパケット出力を行う方式である。例えば、Differentiated Service (Internet Engineering Task Force, Request For Comments 2475)による方式などがあげられる。しかしながら、この方式では、ネットワーク内のノードにおいて特別な仕組みが必要であり、また低遅延な通信が複数同時に行われるとやはりキュー遅延は発生する。 The most effective method for reducing the queue delay is a method for preferentially outputting a packet by storing only a low-delay communication in a queue having a particularly high priority at a node in the network. For example, a method based on Differentiated Service (Internet Engineering Task Force, Request For Comments 2475) can be mentioned. However, this scheme requires a special mechanism in the nodes in the network, and a queue delay still occurs when a plurality of low-delay communications are performed simultaneously.
また、別の方式としては、ネットワーク内のノードから送信端末に対して輻輳情報を明示的に通知する方式がある。この方式としては、ECN (Explicit Congestion Notification、Internet Engineering Task Force, Request For Comments 3168)方式のようにノードの輻輳度をパケットヘッダに記入して送信端末に通知する方式や、非特許文献1に示されている方式のようにノードにおいて各通信の最適な送信帯域を計算しこれを送信端末に通知する方式などが存在する。しかしながら、これらの方式もネットワーク内のノードにおいて特別な仕組みが必要であり、既存ノードを取り替えるなどのコストがかかる。
As another method, there is a method of explicitly notifying congestion information from a node in the network to a transmitting terminal. As this method, as in ECN (Explicit Congestion Notification, Internet Engineering Task Force, Request For Comments 3168) method, the node congestion degree is entered in the packet header and notified to the transmitting terminal, or
上記の各方式と異なる技術としては、送受信端末間の輻輳制御によって低遅延通信を実現する以下に説明する技術がある。 As a technique different from each of the above-described methods, there is a technique described below that realizes low-delay communication through congestion control between transmitting and receiving terminals.
第一の従来技術は、ネットワークの回線容量に応じて送信帯域の最大値を設定する技術である。この技術では、回線容量を超えて過大な送信帯域を設定することを防ぐことにより、不必要なキュー遅延やパケット廃棄を防ぐことが出来る。例えば、特許文献1に示される方式では、TCP通信中に最適な通信帯域を推定し、送信帯域がこの帯域を越えないように輻輳制御することで、不必要な輻輳を防いでデータ転送遅延時間を短くする。
The first conventional technique is a technique for setting the maximum value of the transmission band according to the line capacity of the network. In this technique, unnecessary queue delay and packet discard can be prevented by preventing an excessive transmission band from being set exceeding the line capacity. For example, in the method disclosed in
第二の従来技術は、送信端末で計測した片道遅延時間や往復遅延時間を元に送信帯域を決定する技術である。この技術では、遅延時間が増加すると送信帯域を減少することにより、キュー遅延を短く保つように送信端末において輻輳制御を行う。例えばTCP-FAST方式(From Theory to Experiments, C. Jin, D. X. Wei, S. H. Low, G. Buhrmaster, J. Bunn, D. H. Choe, R. L. A. Cottrell, J. C. Doyle, W. Feng, O. Martin, H. Newman, F. Paganini, S. Ravot, S. Singh. IEEE Network, 19(1):4-11, January/February 2005)では、ネットワークの往復伝播遅延時間を計測し、その最小値と現在の値の差分に現在の送信帯域を乗じた値(この値はノード内のキューで待たされている該通信のデータ量に相当する)を用い、この値をあらかじめ定められた目標値に誘導するように送信帯域を制御することで、送信帯域を最適な帯域へと制御する。 The second conventional technique is a technique for determining a transmission band based on a one-way delay time or a round-trip delay time measured by a transmission terminal. In this technique, when the delay time increases, the transmission band is decreased, thereby performing congestion control at the transmission terminal so as to keep the queue delay short. For example, TCP-FAST (From Theory to Experiments, C. Jin, DX Wei, SH Low, G. Buhrmaster, J. Bunn, DH Choe, RLA Cottrell, JC Doyle, W. Feng, O. Martin, H. Newman, F. Paganini, S. Ravot, S. Singh. IEEE Network, 19 (1): 4-11, January / February 2005) measures the round-trip propagation delay time of the network, and the difference between the minimum value and the current value. Is multiplied by the current transmission band (this value corresponds to the amount of communication data waiting in the queue in the node), and this value is guided to a predetermined target value. By controlling this, the transmission band is controlled to the optimum band.
本発明に関連する技術として、特許文献2、特許文献3、特許文献4、特許文献5がある。
第一の従来技術の問題点は、複数のセッションが存在する場合、個々のセッションの制限帯域は回線容量以下であっても、それらのセッションの制限帯域の合計は回線容量を上回ってしまうことである。そのため、複数セッションが存在する場合には、キュー遅延が長くなってしまう。 The problem with the first prior art is that when there are multiple sessions, even if the bandwidth limit of each session is less than the line capacity, the total bandwidth limit of those sessions will exceed the line capacity. is there. Therefore, when there are multiple sessions, the queue delay becomes long.
第二の従来技術の問題点は、設定されたデータ量のパケットが定常的にキュー内に滞留することであり、滞留するパケット数が大きく振動することで遅延時間の変動が激しいことである。低遅延な通信を行うためには、最適な送信帯域に早期に達する必要があり、そのためには送信帯域の増加幅を大きく設定しなければならない。しかしながら、送信帯域の増加幅を大きく設定すると、短期間で大量のパケットがネットワークノードに到着するため、キュー長が短期間で大幅に大きくなるが、キュー遅延の増加によって輻輳が送信端末に通知されるまでの時間も長くなる。結果として、急激に送信帯域を増加させたときには、輻輳の発生からそれに対応して送信帯域を減少させるまでの時間が長くなり、結果としてキュー長が不安定になってしまう。また、第一の従来技術では、定常的にキュー内に滞留するパケット数はセッション数の増加に伴って線形に増加するという問題もある。 A problem of the second prior art is that a packet having a set data amount stays in the queue constantly, and the fluctuation of the delay time is severe because the number of staying packets greatly oscillates. In order to perform low-delay communication, it is necessary to reach the optimal transmission band at an early stage. For this purpose, it is necessary to set a large increase in the transmission band. However, if a large increase in the transmission bandwidth is set, a large amount of packets arrive at the network node in a short period of time, so the queue length increases significantly in a short period of time, but congestion is notified to the transmitting terminal due to an increase in queue delay. It takes longer to complete. As a result, when the transmission bandwidth is suddenly increased, the time from the occurrence of congestion until the transmission bandwidth is reduced correspondingly becomes longer, and as a result, the queue length becomes unstable. In addition, the first conventional technique has a problem that the number of packets constantly staying in the queue increases linearly as the number of sessions increases.
そこで、本発明の第一の目的は、複数のセッションが存在する場合でもその合計帯域を回線容量以下に抑えることであり、その結果として送受信端末間の遅延時間を短くすることである。 Therefore, a first object of the present invention is to suppress the total bandwidth to a line capacity or less even when there are a plurality of sessions, and as a result, to shorten the delay time between transmitting and receiving terminals.
本発明の第二の目的は、送信帯域の増加幅を大きくした場合でも、またセッション数が多い場合でも、キュー遅延を振動させずに小さな値に収束させることであり、その結果として送受信端末間の遅延時間を短くすることである。 The second object of the present invention is to converge the queue delay to a small value without oscillating even when the increase width of the transmission band is increased or when the number of sessions is large. Is to shorten the delay time.
上記目的を達成するため、本発明の通信端末は、ネットワークを介し複数の通信端末間で通信セッションを設定してデータの送受信を行う通信システムに用いる通信端末であって、
受信したデータに基づいて、送受信を行う前記通信端末間の往復遅延時間を計測する手段と、受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する計測手段と、
前記往復遅延時間の値を少なくとも前記受信帯域を用いて補正する補正手段と、
前記補正手段により補正された往復遅延時間によって送信帯域を決定する決定手段と、
送信中のデータ量を計測する手段とを有し、
前記補正手段は、該送信中のデータ量を前記受信帯域で割った値を、前記往復遅延時間の補正した値として用いることを特徴とする。
In order to achieve the above object, a communication terminal of the present invention is a communication terminal used for a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting and receiving data,
Means for measuring a round trip delay time between the communication terminals performing transmission and reception based on the received data; and a measurement means for measuring a reception band in the receiving terminal among the plurality of communication terminals based on the received data. ,
Correction means for correcting the value of the round-trip delay time using at least the reception band;
Determining means for determining a transmission band according to the round trip delay time corrected by the correcting means;
Means for measuring the amount of data being transmitted,
The correcting means uses a value obtained by dividing the amount of data being transmitted by the reception band as a corrected value of the round trip delay time .
また本発明の通信端末は、ネットワークを介し複数の通信端末間で通信セッションを設定してデータの送受信を行う通信システムに用いる端末であって、
送信中のデータ量を計測する手段と、
受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する計測手段と、
計測された前記送信中のデータ量を前記受信帯域で割った値を、往復遅延時間とする推定手段と、
前記推定手段により推定された前記往復遅延時間によって送信帯域を決定する決定手段と、を有することを特徴とする。
The communication terminal of the present invention is a terminal used for a communication system that sets a communication session between a plurality of communication terminals via a network and transmits and receives data.
A means of measuring the amount of data being transmitted;
Measuring means for measuring a reception band in a receiving terminal among the plurality of communication terminals based on the received data;
An estimation means that takes a value obtained by dividing the measured amount of data being transmitted by the reception band as a round-trip delay time ;
And having a determination means for determining a transmission band by said round trip time estimated by the estimating means.
本発明の輻輳制御方法は、ネットワークを介し複数の通信端末間で通信セッションを設定してデータの送受信を行う通信システムの通信端末における輻輳制御方法であって、
受信したデータに基づいて、送受信を行う前記通信端末間の往復遅延時間を計測するとともに前記複数の通信端末のうちの受信端末における受信帯域を計測する第1ステップと、
前記往復遅延時間の値を少なくとも前記受信帯域を用いて補正する第2ステップと、
前記第2ステップで補正された往復遅延時間によって送信帯域を決定する第3ステップと、
送信中のデータ量を計測する第4ステップを有し、
前記第2ステップでは、該送信中のデータ量を前記受信帯域で割った値を、前記往復遅延時間の補正した値として用いることを特徴とする。
The congestion control method of the present invention is a congestion control method in a communication terminal of a communication system that performs communication transmission and reception by setting a communication session between a plurality of communication terminals via a network,
A first step of measuring a round trip delay time between the communication terminals performing transmission and reception based on the received data and measuring a reception band in the reception terminal of the plurality of communication terminals;
A second step of correcting the value of the round-trip delay time using at least the reception band;
A third step of determining a transmission band based on the round trip time corrected in the second step;
A fourth step of measuring the amount of data being transmitted;
In the second step, a value obtained by dividing the amount of data being transmitted by the reception band is used as a corrected value of the round trip delay time .
また本発明の輻輳制御方法は、ネットワークを介し複数の通信端末間で通信セッションを設定してデータの送受信を行う通信システムの通信端末における輻輳制御方法であって、
送信中のデータ量を計測する第1ステップと、
受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する第2ステップと、
計測された前記送信中のデータ量を前記受信帯域で割った値を、往復遅延時間とする第3ステップと、
前記往復遅延時間によって送信帯域を決定する第4ステップと、を有することを特徴とする。
The congestion control method of the present invention is a congestion control method in a communication terminal of a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting and receiving data,
A first step of measuring the amount of data being transmitted;
A second step of measuring a reception band in a receiving terminal among the plurality of communication terminals based on the received data;
A third step in which a value obtained by dividing the measured amount of data being transmitted by the reception band is a round-trip delay time ;
And a fourth step of determining a transmission band based on the round trip delay time.
本発明によれば以下に述べる効果が達成される。 According to the present invention, the following effects are achieved.
第一に、キュー遅延の増大に対応して、キューイングされているデータ量を減少させることで、複数のセッションが存在する場合でもその合計帯域を回線容量以下に抑えることであり、その結果として送受信端末間の遅延時間を短くすることができる。 First, in response to the increase in queue delay, the total amount of bandwidth is kept below the line capacity even when there are multiple sessions by reducing the amount of queued data. The delay time between the transmitting and receiving terminals can be shortened.
第二に、計測RTTが変化するより早く送信帯域の制御を行うことが出来るため、キュー遅延を振動させずに小さな値に収束させることができ、その結果として送受信端末間の遅延時間を短くすることができる。 Second, because the transmission bandwidth can be controlled faster than the measured RTT changes, the queue delay can be converged to a small value without oscillating, and as a result, the delay time between the transmitting and receiving terminals is shortened. be able to.
以下、本発明の実施の形態について図面を用いて詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[実施形態1]
本発明の第1の実施形態について図面を参照して説明する。
[Embodiment 1]
A first embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図1は本実施形態による通信端末1の構成を示すブロック図である。送信端末となる通信端末1は送信データを発生するデータ発生部1-1と、通信データをネットワークに出力するパケット送信部1-2、通信端末1と通信を行う他の通信端末(受信端末)からの応答確認パケット(ACKパケット)を受信するパケット受信部1-3、パケット送信部1-2に対して送信帯域を指示する輻輳制御部1-4で構成される。
(Description of configuration)
FIG. 1 is a block diagram showing a configuration of a
輻輳制御部1-4は、ACKパケットを受信する毎に往復遅延時間を計測するRTT(Round Trip Time)計測部1-6、送信帯域を計測する送信帯域計測部1-8、受信帯域を計測する受信帯域計測部1-9、送信帯域および受信帯域の値を用いて計測したRTTを補正するRTT補正部1-7、RTTを元に送信帯域を決定する送信帯域決定部1-5で構成される。ここで、RTTとは、ネットワーク通信において、1つのパケットが送信元から宛先まで行き、再び戻ってくるまでの時間をいう。 Congestion control unit 1-4 measures round trip time RTT (Round Trip Time) 1-6 every time an ACK packet is received, transmission band measurement unit 1-8 measures the transmission band, and measures the reception band Reception band measurement unit 1-9, RTT correction unit 1-7 that corrects the RTT measured using the values of the transmission band and the reception band, and a transmission band determination unit 1-5 that determines the transmission band based on the RTT Is done. Here, RTT refers to the time required for one packet to go from the source to the destination and back again in network communication.
(動作の説明)
図1及び図2を参照して、本実施形態の動作について説明する。図2は通信端末1の動作を示すフローチャートである。
(Description of operation)
The operation of this embodiment will be described with reference to FIGS. FIG. 2 is a flowchart showing the operation of the
データ発生部1-1において送信データが発生すると(ステップS11)、輻輳制御部1-4の送信帯域決定部1-5が指定する送信帯域に従って、パケット送信部1-2が送信データをパケット化して送信する(ステップS12)。その際、送信帯域計測部1-8では、送信帯域の計測を行う(ステップS12)。これは、例えば以下の式のように一定時間に送信したデータ量をその受信時間で割ったものとしても良い。 When transmission data is generated in the data generation unit 1-1 (step S11), the packet transmission unit 1-2 packetizes the transmission data according to the transmission band specified by the transmission band determination unit 1-5 of the congestion control unit 1-4. (Step S12). At that time, the transmission band measuring unit 1-8 measures the transmission band (step S12). This may be, for example, a value obtained by dividing the amount of data transmitted in a fixed time by the reception time as in the following equation.
計測送信帯域 = (時刻t1から時刻t2の間に送信したデータ量) / (t2-t1)
また、以下の式のように、パケットを送信する毎に指数平均を取って計算した計測送信帯域でも良い。
Measurement transmission bandwidth = (Amount of data transmitted between time t1 and time t2) / (t2-t1)
Further, as shown in the following expression, a measured transmission band calculated by taking an exponential average every time a packet is transmitted may be used.
計測送信帯域 =(前回計算した送信帯域 × 係数) +((今回送信したデータ量) / (今回のパケット送信時刻 - 前回のパケット送信時刻)) × (1 - 係数)
また、送信帯域計測部1-8では、計測送信帯域ではなく、送信帯域決定部1-5で求めた送信帯域の値を用いても良い。
Measured transmission band = (previously calculated transmission band x coefficient) + ((data amount transmitted this time) / (current packet transmission time-previous packet transmission time)) x (1-coefficient)
The transmission band measuring unit 1-8 may use the value of the transmission band obtained by the transmission band determining unit 1-5 instead of the measured transmission band.
送信したパケットに対するACKパケットがパケット受信部1-3に到着すると、RTT計測部1-6は、該パケットに関する往復遅延時間(RTT)と、送信開始からのその最小値(RTTmin)を計測する(ステップS13)。 When the ACK packet for the transmitted packet arrives at the packet receiving unit 1-3, the RTT measuring unit 1-6 measures the round-trip delay time (RTT) related to the packet and its minimum value (RTTmin) from the start of transmission (RTTmin) ( Step S13).
なお、本実施形態においては、遅延として往復遅延時間(RTT)を用いるが、代わりに片道遅延時間を用いても良い。片道遅延時間の導出方法としては、例えば、送信端末がパケット送信時にパケットヘッダ中に送信時刻を書き込み、このパケットを受信した受信端末が前記送信時刻とパケット受信時刻の差分を片道遅延として計算し、この計算値をACKパケットに書き込んで送信端末に通知するといった方法等が利用可能である。 In this embodiment, a round trip delay time (RTT) is used as a delay, but a one way delay time may be used instead. As a method for deriving the one-way delay time, for example, the transmission terminal writes the transmission time in the packet header at the time of packet transmission, and the reception terminal receiving this packet calculates the difference between the transmission time and the packet reception time as a one-way delay, A method of writing the calculated value in an ACK packet and notifying the transmitting terminal can be used.
受信帯域計測部1-9ではACKパケットによって受信確認されたデータ量から、受信端末における受信帯域を計測する(ステップS13)。これは、例えば以下の式のように一定時間に受信確認されたデータ量をその受信時間で割ったものとしても良い。 The reception band measuring unit 1-9 measures the reception band at the receiving terminal from the amount of data confirmed to be received by the ACK packet (step S13). This may be, for example, a value obtained by dividing the amount of data confirmed to be received in a certain time by the reception time as in the following equation.
受信帯域 = (時刻t1から時刻t2の間に受信確認されたデータ量) / (t2-t1)
また、以下の式のように、ACKパケットを受信する毎に指数平均を取って計算した受信帯域でも良い。
Receive band = (Amount of data confirmed to be received between time t1 and time t2) / (t2-t1)
Further, as shown in the following expression, a reception band calculated by taking an exponential average every time an ACK packet is received may be used.
受信帯域 = (前回計算した受信帯域 × 係数) + ((今回のACKパケットによって受信確認されたデータ量) / (今回のACKパケット到着時刻 − 前回のACKパケット到着時刻)) × (1 − 係数)
次に、RTT補正部1-4において、計測送信帯域と受信帯域のバランスによってRTTの補正を行う (ステップS14)。例えば、以下の式のように求めればよい。
Receive Band = (Receive Band Calculated Previously x Coefficient) + ((Amount of Data Acknowledged by Current ACK Packet) / (Current ACK Packet Arrival Time-Previous ACK Packet Arrival Time)) x (1-Coefficient)
Next, the RTT correction unit 1-4 corrects the RTT based on the balance between the measured transmission band and the reception band (step S14). For example, what is necessary is just to obtain | require like the following formula | equation.
補正RTT = max(計測RTT × (計測送信帯域/受信帯域), 計測RTTmin)
つまり、補正RTTは、計測RTT × (計測送信帯域/受信帯域)と計測RTTminのうち大きい値となる。
Correction RTT = max (Measurement RTT × (Measurement transmission bandwidth / Reception bandwidth), Measurement RTTmin)
That is, the correction RTT is a larger value of measurement RTT × (measurement transmission band / reception band) and measurement RTTmin.
また、以下のような式で求めても良い。 Moreover, you may obtain | require with the following formula | equation.
補正RTT = max(計測RTT × (計測送信帯域/受信帯域), 計測RTT)
つまり、補正RTTは、計測RTT × (計測送信帯域/受信帯域)と計測RTTのうち大きい値となる。
Correction RTT = max (Measurement RTT × (Measurement transmission bandwidth / Reception bandwidth), Measurement RTT)
That is, the correction RTT is a larger value of the measurement RTT × (measurement transmission band / reception band) and the measurement RTT.
ここでは、計測送信帯域と受信帯域は、それぞれ最新の計測値を用いたが、計測送信帯域を1RTT過去の計測値を用いることで同一パケットに対する計測送信帯域の計測時刻と受信帯域の計測時刻をあわせても良い。 Here, the latest measured values are used for the measured transmission band and the received band, respectively, but the measured transmission band and the measured time of the received band for the same packet can be obtained by using the measured value of the measured transmission band for 1 RTT. May be combined.
送信帯域決定部1-5は、前記補正RTTの値を用いて送信帯域の制御を行う(ステップS15)。制御された送信帯域はステップS12の指定された送信帯域となる。送信帯域の制御方式はRTTを用いる制御方式であれば任意である。例えば、以下のような式で計算すればよい。 The transmission band determining unit 1-5 controls the transmission band using the corrected RTT value (step S15). The controlled transmission band becomes the transmission band designated in step S12. The transmission bandwidth control method is arbitrary as long as it is a control method using RTT. For example, it may be calculated by the following formula.
送信帯域 = 前回計算の送信帯域 +
(α/RTT − (RTT-RTTmin)/RTT×前回計算の送信帯域) × 時定数
時定数としては、例えば、(今回計算する時刻 - 前回計算した時刻) * RTTなどの値を用いる。αの値は送信帯域の増加速度を決定するパラメータである。上記の式は、以下のような式を用いても同様の結果が得られる。なお、上式の「*」は「×」を意味する(すなわち、上式の「*」は乗算を意味する)。以下の式においても同様である。
Transmission band = Transmission band of the previous calculation +
(α / RTT − (RTT-RTTmin) / RTT × transmission bandwidth of previous calculation) × time constant
As the time constant, for example, a value such as (time calculated this time−time calculated last time) * RTT is used. The value of α is a parameter that determines the increase rate of the transmission band. The above formula can be obtained by using the following formula. Note that “*” in the above expression means “×” (that is, “*” in the above expression means multiplication). The same applies to the following equations.
送信帯域 = 前回計算の送信帯域 +
(α/RTT − (前回計算の送信帯域 − 受信帯域)) × 時定数
以上では、送信帯域の制御による輻輳制御方式について説明したが、以上の方式はTCP(Transmission Control Protocol)のようなウインドウフロー制御による輻輳制御方式に対しても適用可能である。この場合、上記の送信帯域の計算式は、以下のように変更される。
Transmission band = Transmission band of the previous calculation +
(α / RTT-(previous transmission bandwidth-reception bandwidth)) x time constant In the above, the congestion control method by controlling the transmission bandwidth has been described. However, the above method is a window flow such as TCP (Transmission Control Protocol). It can also be applied to a congestion control method based on control. In this case, the transmission band calculation formula is changed as follows.
送信ウインド = 前回計算の送信ウインド +
(α − (RTT-RTTmin)/RTT×前回計算の送信ウインド)/前回計算の送信ウインド
ネットワークの輻輳度が大きくなると、一時的に受信帯域が送信帯域よりも小さくなる。また、送信帯域が最適な値よりも大きくなると、一時的に送信帯域が受信帯域よりも大きくなる。このように、送信帯域を下げる必要がある場合には、送信帯域と受信帯域の比率が一時的に変化し、その後キューイング遅延が伸び始めてRTTが増大する。すなわち、前記比率の変化はRTTの変化よりも先に現象として現れるため、前記比率の変化をもって輻輳制御を行うことで、あるいは前記比率の変化をもってRTTの値を補正することで、輻輳に対してより早期に制御を行うことが出来る。
Send window = Send window of previous calculation +
(α − (RTT-RTTmin) / RTT × previous calculation transmission window) / previous calculation transmission window
When the degree of network congestion increases, the reception band temporarily becomes smaller than the transmission band. Further, when the transmission band becomes larger than the optimum value, the transmission band temporarily becomes larger than the reception band. Thus, when it is necessary to lower the transmission band, the ratio between the transmission band and the reception band temporarily changes, and then the queuing delay starts to increase and the RTT increases. That is, since the change in the ratio appears as a phenomenon prior to the change in RTT, by performing congestion control with the change in the ratio, or by correcting the RTT value with the change in the ratio, Control can be performed earlier.
[実施形態2]
本発明の第2の実施形態について図面を参照して説明する。
[Embodiment 2]
A second embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図3は本実施形態による通信端末2の構成を示すブロック図である。実施形態1との違いは、送信帯域計測部の代わりに送信中データ量計測部が設けられている点である。
(Description of configuration)
FIG. 3 is a block diagram showing the configuration of the communication terminal 2 according to the present embodiment. The difference from the first embodiment is that a transmitting data amount measuring unit is provided instead of the transmission band measuring unit.
通信端末2は送信データを発生するデータ発生部2-1と、通信データをネットワークに出力するパケット送信部2-2、受信端末からの応答確認パケット(ACKパケット)を受信するパケット受信部2-3、パケット送信部2-2に対して送信帯域を指示する輻輳制御部2-4で構成される。 The communication terminal 2 includes a data generation unit 2-1 that generates transmission data, a packet transmission unit 2-2 that outputs communication data to the network, and a packet reception unit 2- that receives a response confirmation packet (ACK packet) from the reception terminal. 3. Consists of a congestion control unit 2-4 for instructing the transmission bandwidth to the packet transmission unit 2-2.
輻輳制御部2-4は、ACKパケットを受信する毎に往復遅延時間を計測するRTT計測部2-6、ACK未受信の送信中データ量を計測する送信中データ量計測部2-8、受信帯域を計測する受信帯域計測部2-9、受信帯域と送信中データ量の値を用いて計測したRTTを補正するRTT補正部2-7、RTTを元に送信帯域を決定する送信帯域決定部2-5で構成される。 Congestion control unit 2-4, RTT measurement unit 2-6 that measures the round-trip delay time every time an ACK packet is received, Transmitting data amount measurement unit 2-8 that measures the amount of transmitting data that has not yet been received, and reception Reception band measurement unit 2-9 that measures the band, RTT correction unit 2-7 that corrects the RTT measured using the value of the reception band and the amount of data being transmitted, and a transmission band determination unit that determines the transmission band based on the RTT Consists of 2-5.
(動作の説明)
図3及び図4を参照して、本実施形態の動作について説明する。
(Description of operation)
The operation of this embodiment will be described with reference to FIGS.
図4は通信端末2の動作を示すフローチャートである。 FIG. 4 is a flowchart showing the operation of the communication terminal 2.
データ発生部2-1において送信データが発生すると(ステップS11)、輻輳制御部2-4の送信帯域決定部2-5が指定する送信帯域に従って、パケット送信部2-2が送信データをパケット化して送信する(ステップS22)。その際、実施形態1と異なり、送信帯域の計測は行われない。送信したパケットに対するACKパケットがパケット受信部2-3に到着すると、RTT計測部2-6 においてRTTおよびRTTminを計測し、受信帯域計測部2-9において受信帯域を計測する(ステップS23)。また、送信中データ量計測部2-8では、最後に送信したパケットのシーケンス番号と、ACKで受信確認されたシーケンス番号の差分から送信中のデータ量を求める(ステップS23)。 When transmission data is generated in the data generation unit 2-1 (step S11), the packet transmission unit 2-2 packetizes the transmission data according to the transmission band specified by the transmission band determination unit 2-5 of the congestion control unit 2-4. (Step S22). At that time, unlike the first embodiment, the transmission band is not measured. When the ACK packet corresponding to the transmitted packet arrives at the packet receiving unit 2-3, the RTT measuring unit 2-6 measures RTT and RTTmin, and the receiving band measuring unit 2-9 measures the receiving band (step S23). In addition, the data amount measuring unit 2-8 during transmission obtains the amount of data being transmitted from the difference between the sequence number of the last transmitted packet and the sequence number confirmed to be received by ACK (step S23).
次に、RTT補正部2-7において、送信中データ量と送信帯域を用いてRTTの補正を行う(ステップS24)。例えば、以下の式のように求めればよい。 Next, the RTT correction unit 2-7 corrects the RTT using the amount of data being transmitted and the transmission band (step S24). For example, what is necessary is just to obtain | require like the following formula | equation.
補正RTT = max(送信中データ量 / 受信帯域), 計測RTTmin)
また、以下のような式で求めても良い。
Correction RTT = max (Amount of data being sent / Receive band), Measurement RTTmin)
Moreover, you may obtain | require with the following formula | equation.
補正RTT = max(送信中データ量 / 受信帯域, 計測RTT)
ここでは、送信中データ量と受信帯域は、それぞれ最新の計測値を用いたが、送信中データ量の計測値を1RTT過去の計測値を用いることで同一パケットに対する送信中データ量の計測時刻と受信帯域の計測時刻をあわせても良い。
Correction RTT = max (Amount of data being sent / Receive band, Measurement RTT)
Here, the latest measured values are used for the data amount being transmitted and the reception band, respectively, but the measurement value of the data amount being transmitted is used as the measurement time of the data amount being transmitted for the same packet by using the measured value of 1 RTT past. The measurement time of the reception band may be adjusted.
送信帯域決定部2-5は、前記補正RTTの値を用いて送信帯域の制御を行う (ステップS15)。その制御方式はRTTを用いる制御方式であれば任意である。例えば、以下のような式で計算すればよい。 The transmission band determining unit 2-5 controls the transmission band using the value of the correction RTT (Step S15). The control method is arbitrary as long as it is a control method using RTT. For example, it may be calculated by the following formula.
送信帯域 = 前回計算の送信帯域 +
(α/RTT − (RTT-RTTmin)/RTT×前回計算の送信帯域) × 時定数
上記の式は、以下のような式を用いても同様の結果が得られる。
Transmission band = Transmission band of the previous calculation +
(α / RTT − (RTT-RTTmin) / RTT × transmission bandwidth of previous calculation) × time constant
The above formula can be obtained by using the following formula.
送信帯域 = 前回計算の送信帯域 +
(α/RTT − (送信中のデータ量/RTTmin − 受信帯域)) × 時定数
[実施形態3]
本発明の第3の実施形態について図面を参照して説明する。
Transmission band = Transmission band of the previous calculation +
(α / RTT − (data amount during transmission / RTTmin − reception band)) × time constant [Third embodiment]
A third embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図5は本実施形態による端末3の構成を示すブロック図である。通信端末3は、第1の実施形態による通信端末1の構成に加えて、送信帯域増加幅変更部3-10を加えた構成である。
(Description of configuration)
FIG. 5 is a block diagram showing the configuration of the
通信端末3は送信データを発生するデータ発生部3-1と、通信データをネットワークに出力するパケット送信部3-2、通信端末3と通信を行う他の通信端末からの応答確認パケット(ACKパケット)を受信するパケット受信部3-3、パケット送信部3-2に対して送信帯域を指示する輻輳制御部3-4で構成される。
The
輻輳制御部3-4は、ACKパケットを受信する毎に往復遅延時間を計測するRTT(Round Trip Time)計測部3-6、送信帯域を計測する送信帯域計測部3-8、受信帯域を計測する受信帯域計測部3-9、送信帯域および受信帯域の値を用いて計測したRTTを補正するRTT補正部3-7、RTTを元に送信帯域を決定する送信帯域決定部3-5、計測したRTTに基づき送信帯域の増加幅を変更する送信帯域増加幅変更部3-10で構成される。 Congestion control unit 3-4, RTT (Round Trip Time) measurement unit 3-6 that measures the round trip delay time every time an ACK packet is received, transmission band measurement unit 3-8 that measures the transmission band, and measurement of the reception band Receiving band measuring unit 3-9, RTT correcting unit 3-7 for correcting RTT measured using values of transmission band and receiving band, transmission band determining unit 3-5 for determining transmission band based on RTT, measurement The transmission band increase width changing unit 3-10 changes the transmission band increase width based on the RTT.
(動作の説明)
図5及び図6を参照して、本実施形態の動作について説明する。図6は通信端末3の動作を示すフローチャートである。ここでは図2の動作を同じ動作については同一符号を付して動作説明を省略する。
(Description of operation)
The operation of this embodiment will be described with reference to FIGS. FIG. 6 is a flowchart showing the operation of the
パケット送信時の動作(ステップS11,S12)は、第1の実施形態と同様である。 The operation at the time of packet transmission (steps S11 and S12) is the same as in the first embodiment.
パケット受信時の動作は、補正RTTを計算するまでは(ステップS13,S14)、第1の実施形態と同様である。 The operation at the time of packet reception is the same as that in the first embodiment until the corrected RTT is calculated (steps S13 and S14).
本実施形態においても、送信帯域を計算方法は、以下のような従来からの一般的な方式を基礎としている。 Also in the present embodiment, the method for calculating the transmission bandwidth is based on the following conventional general method.
一般的に、ネットワーク内でのキュー遅延を制御指標とした輻輳制御方式においては、キューに蓄えられているデータ量を推定し、このデータ量によって送信帯域の制御を行う。すなわち、キューに蓄えられているデータ量があらかじめ設定した目標値よりも大きい場合には、ネットワークが輻輳していると判断して送信帯域を小さくし、逆にキューに蓄えられているデータ量が少ない場合にはネットワークが輻輳していないと判断して送信帯域を大きくする。 In general, in a congestion control method using a queue delay in a network as a control index, the amount of data stored in the queue is estimated, and the transmission bandwidth is controlled based on this amount of data. In other words, if the amount of data stored in the queue is larger than the target value set in advance, it is determined that the network is congested and the transmission bandwidth is reduced. Conversely, the amount of data stored in the queue is If it is less, it is determined that the network is not congested and the transmission bandwidth is increased.
キューに蓄えられているデータ量は、一般的に、次のように推定することが出来る。計測したRTTの最小値(RTTmin)はネットワーク内のキューに全くデータが蓄えられていないときの遅延時間であり、これはすなわちネットワーク回線上での物理的な伝播遅延時間であるとみなすことができる。そして、計測したRTTがこの値よりも大きくなれば、その差分、すなわち(RTT-RTTmin)はキュー内において待たされていた時間であるとみなすことが出来る。キュー内に蓄えられているデータ量は、キューで待たされていた時間に送信帯域をかけたものであるため、(RTT-RTTmin)×送信帯域、がキューに蓄えられているデータ量であると推定できる。 Generally, the amount of data stored in the queue can be estimated as follows. The measured minimum value of RTT (RTTmin) is the delay time when no data is stored in the queue in the network, which can be regarded as the physical propagation delay time on the network line. . If the measured RTT is larger than this value, the difference, that is, (RTT-RTTmin) can be regarded as the time that has been waited in the queue. The amount of data stored in the queue is the amount of data stored in the queue, because (RTT-RTTmin) x transmission bandwidth is the amount of time spent waiting in the queue multiplied by the transmission bandwidth. Can be estimated.
キューに蓄えられているデータ量の目標をαとし、RTTが長いほど制御利得を小さくして制御を安定化することを考慮に入れると、ネットワーク内でのキュー遅延を制御指標とした輻輳制御方式は、一般的に、以下のような式で表すことができる。 If the target of the amount of data stored in the queue is α, and the longer the RTT, the smaller the control gain and the more stable control is taken into account, the congestion control method uses the queue delay in the network as a control index. Can generally be represented by the following equations.
送信帯域 = 前回計算の送信帯域 +
(α/RTT - (RTT-RTTmin)/RTT×前回計算の送信帯域) × 時定数
以上の方式においては、キューに蓄えられているデータ量の目標値αが大きいほどキュー遅延が増大するため、キュー遅延を削減するためにはαの値を適切に設定する必要がある。一方、αの値が小さいと送信帯域の増加速度が遅くなるという問題がある。
Transmission band = Transmission band of the previous calculation +
(α / RTT-(RTT-RTTmin) / RTT x previously calculated transmission bandwidth) x time constant
In the above method, since the queue delay increases as the target value α of the data amount stored in the queue increases, the value of α needs to be set appropriately in order to reduce the queue delay. On the other hand, if the value of α is small, there is a problem that the increase rate of the transmission band becomes slow.
そこで、本実施例においては、αの値を固定値とするのではなく、ネットワークの状況に応じて動的に変更することにより、最適な制御を行う。キュー遅延を削減するためには、キュー遅延が大きくなるほどαの値が小さくなるような関数を用いればよいため、αの値は、計測したRTT、もしくは補正RTTの値を元に動的に変更する。従って、本実施例においては、αの値を (RTT-RTTmin)に対する減少関数として定義する。例えば、以下のような関数を用いる。 Therefore, in this embodiment, optimal control is performed by dynamically changing the value of α in accordance with the network conditions, instead of setting the value of α to a fixed value. In order to reduce the queue delay, it is sufficient to use a function that reduces the value of α as the queue delay increases. Therefore, the value of α is dynamically changed based on the measured RTT value or the corrected RTT value. To do. Therefore, in this embodiment, the value of α is defined as a decreasing function with respect to (RTT−RTTmin). For example, the following function is used.
(式1) α = 1/e(RTT-RTTmin)×a、もしくは
(式2) α = 1/e(RTT-RTTmin)/(最大RTT-RTTmin)×b、もしくは
(式3) α = max(c - (RTT-RTTmin)*d, e) 、もしくは
(式4) α = f * B / e(RTT-RTTmin)×a、もしくは
(式5) α = f * B / 送信帯域 / e(RTT-RTTmin)×a、もしくは
(式6) α = f * B / 送信帯域 * RTT / e(RTT-RTTmin)×a、もしくは
(式7) α = f * B / 送信帯域 * RTTmin / e(RTT-RTTmin)×a
ここでa、b、c、d、e、fはそれぞれ0以上の定数である。Bは回線帯域の値であり、あらかじめ設定された値や、特願2005-027684号に示される推定方式を用いて求めた値を使用する。ここで、式(1)および式(2)は目標値αとしてキュー遅延の指数的減少関数を用いた場合、式(3)はキュー遅延の線形的減少関数を用いた場合、式(4)は目標値に回線帯域を乗じた場合、式(5)は目標値に回線帯域を送信帯域で割った値をかけた場合、式(6)は式(5)に往復遅延時間をかけた場合、式(7)は式(5)に往復遅延時間の最小値をかけた場合、をそれぞれ表す。
(Equation 1) α = 1 / e (RTT-RTTmin) × a , or
(Equation 2) α = 1 / e (RTT-RTTmin) / (maximum RTT-RTTmin) x b , or
(Equation 3) α = max (c-(RTT-RTTmin) * d, e), or
(Equation 4) α = f * B / e (RTT-RTTmin) × a , or
(Equation 5) α = f * B / transmission band / e (RTT-RTTmin) × a , or
(Equation 6) α = f * B / Transmission band * RTT / e (RTT-RTTmin) × a , or
(Equation 7) α = f * B / Transmission band * RTTmin / e (RTT-RTTmin) × a
Here, a, b, c, d, e, and f are constants of 0 or more, respectively. B is a value of the line bandwidth, and uses a preset value or a value obtained by using an estimation method disclosed in Japanese Patent Application No. 2005-027684. Here, when Equation (1) and Equation (2) use an exponential decrease function of the queue delay as the target value α, Equation (3) shows an equation (4) when using a linear decrease function of the queue delay. When the target value is multiplied by the line bandwidth, Equation (5) is multiplied by the target value divided by the line bandwidth and the transmission bandwidth, Equation (6) is when Equation (5) is multiplied by the round-trip delay time Equation (7) represents the case where Equation (5) is multiplied by the minimum value of the round-trip delay time.
式(6)-(7)ではαの値に往復遅延時間をかけたが、この代わりの手段として、αの値に往復遅延時間をかけるのではなく、推定したデータ量を往復遅延時間で割ってもよい。すなわち、以下のような式となる。 In equations (6)-(7), the value of α is multiplied by the round-trip delay time, but as an alternative, instead of multiplying the value of α by the round-trip delay time, the estimated amount of data is divided by the round-trip delay time. May be. That is, the following equation is obtained.
送信帯域 = 前回計算の送信帯域 +
(α/RTT - (RTT-RTTmin)/RTT×前回計算の送信帯域 / RTT) × 時定数
送信帯域 = 前回計算の送信帯域 +
(α/RTT - (RTT-RTTmin)/RTT×前回計算の送信帯域 / RTTmin) × 時定数
また、上記計算式おいて、(RTT-RTTmin)/RTT×前回計算の送信帯域、の項は、(RTT-RTTmin)/定数g×前回計算の送信帯域、としても良い。
Transmission band = Transmission band of the previous calculation +
(α / RTT-(RTT-RTTmin) / RTT x transmission band of previous calculation / RTT) x time constant transmission band = transmission band of previous calculation +
(α / RTT-(RTT-RTTmin) / RTT x previous transmission band / RTTmin) x time constant Also, in the above formula, the term (RTT-RTTmin) / RTT x previous transmission band is (RTT-RTTmin) / Constant g × Transmission bandwidth of previous calculation may be used.
さらに、上記計算式における時定数も、ネットワークでキューイングされているデータ量に応じて動的に変更してもよい。これは前記データ量が多いほど輻輳状態が激しいと判断し、時定数を大きく変更することで早く輻輳を解消するためである。従って、前記時定数は、前記差分の絶対値に対する増加関数として定義すればよい。例えば、以下のような関数を用いる。 Furthermore, the time constant in the above formula may also be dynamically changed according to the amount of data queued in the network. This is because it is judged that the congestion state becomes more severe as the amount of data increases, and the congestion is quickly eliminated by greatly changing the time constant. Therefore, the time constant may be defined as an increasing function with respect to the absolute value of the difference. For example, the following function is used.
時定数 = max(f×|A|, g)
ここでfとgはそれぞれ0以上の定数であり、Aは前記差分の値、|A|はその絶対値である。
Time constant = max (f × | A |, g)
Here, f and g are constants of 0 or more, A is the difference value, and | A | is its absolute value.
以上の、αの計算、および送信帯域増加幅、すなわち、/RTT - (RTT-RTTmin)/RTT×前回計算の送信帯域) × 時定数、の計算は送信帯域増加幅変更部で行われる。 The calculation of α and the transmission bandwidth increase width, that is, / RTT− (RTT−RTTmin) / RTT × transmission bandwidth of the previous calculation) × time constant are performed by the transmission bandwidth increase width changing unit.
複数セッションが存在する場合にはキュー遅延が長くなるが、このキュー遅延の増大に応じて前記目標値を小さく設定することにより、個々のセッションでキューイングされているデータ量が減少し、全体のセッションでキューイングされているデータ量が減少する。 When there are multiple sessions, the queue delay becomes longer. By setting the target value to a smaller value as the queue delay increases, the amount of data queued in each session decreases, and the overall The amount of data queued in the session is reduced.
[実施形態4]
本発明の第4の実施形態について図面を参照して説明する。
[Embodiment 4]
A fourth embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図7は本実施形態による通信端末4の構成を示すブロック図である。通信端末4は送信データを発生するデータ発生部4-1と、通信データをネットワークに出力するパケット送信部4-2、受信端末からの応答確認パケット(ACKパケット)を受信するパケット受信部4-3、パケット送信部4-2に対して送信帯域を指示する輻輳制御部4-4で構成される。
(Description of configuration)
FIG. 7 is a block diagram showing the configuration of the
輻輳制御部4-4は、ACK未受信の送信中データ量を計測する送信中データ量計測部4-8、受信帯域を計測する受信帯域計測部4-9、受信帯域と送信中データ量の値を用いてRTTを推定するRTT推定部4-7、RTTを元に送信帯域を決定する送信帯域決定部4-5で構成される。 The congestion control unit 4-4 includes a transmission data amount measurement unit 4-8 that measures the amount of transmission data that has not been received by an ACK, a reception band measurement unit 4-9 that measures a reception band, a reception band and a transmission data amount. An RTT estimation unit 4-7 that estimates an RTT using a value and a transmission band determination unit 4-5 that determines a transmission band based on the RTT.
(動作の説明)
図7及び図8を参照して、本実施形態の動作について説明する。図8は通信端末4の動作を示すフローチャートである。
(Description of operation)
The operation of this embodiment will be described with reference to FIGS. FIG. 8 is a flowchart showing the operation of the
パケット送信時の処理(ステップS11,S22)は第2の実施形態と同様であるため、ここでは説明を省略する。 Since processing at the time of packet transmission (steps S11 and S22) is the same as that of the second embodiment, description thereof is omitted here.
送信したパケットに対するACKパケットがパケット受信部4-3に到着すると、受信帯域計測部4-9において受信帯域を計測する(ステップS23)。また、送信中データ量計測部4-6では、最後に送信したパケットのシーケンス番号と、ACKで受信確認されたシーケンス番号の差分から送信中のデータ量を求める(ステップS23)。 When the ACK packet corresponding to the transmitted packet arrives at the packet receiving unit 4-3, the reception band measuring unit 4-9 measures the reception band (step S23). The data amount measuring unit 4-6 during transmission obtains the amount of data being transmitted from the difference between the sequence number of the last transmitted packet and the sequence number confirmed to be received by ACK (step S23).
次に、RTT推定部4-4において、送信中データ量と送信帯域を用いてRTTの推定を行う(ステップS44)。例えば、以下の式のように求めればよい。 Next, the RTT estimator 4-4 estimates the RTT using the data amount being transmitted and the transmission band (step S44). For example, what is necessary is just to obtain | require like the following formula | equation.
推定RTT = 送信中データ量 / 受信帯域
また、RTTminは最小の推定RTTとして求める。
Estimated RTT = amount of data being transmitted / reception band RTTmin is determined as the minimum estimated RTT.
次に、求めたRTTを元にして送信帯域の制御を行うが(ステップS45)、その方法は第2の実施形態と同様であるため、ここでは説明を省略する。 Next, the transmission band is controlled based on the obtained RTT (step S45). Since the method is the same as in the second embodiment, the description thereof is omitted here.
[実施形態5]
本発明の第5の実施形態について図面を参照して説明する。
[Embodiment 5]
A fifth embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図9は本実施形態による通信端末5の構成を示すブロック図である。通信端末5は送信データを発生するデータ発生部5-1と、通信データをネットワークに出力するパケット送信部5-2、通信端末5と通信を行う他の通信端末からの応答確認パケット(ACKパケット)を受信するパケット受信部5-3、パケット送信部5-2に対して送信帯域を指示する輻輳制御部5-4で構成される。
(Description of configuration)
FIG. 9 is a block diagram showing the configuration of the communication terminal 5 according to the present embodiment. The communication terminal 5 includes a data generation unit 5-1 that generates transmission data, a packet transmission unit 5-2 that outputs communication data to the network, and a response confirmation packet (ACK packet) from another communication terminal that communicates with the communication terminal 5. ) And a congestion control unit 5-4 that instructs the packet transmission unit 5-2 on the transmission band.
輻輳制御部5-4は、ACKパケットを受信する毎に往復遅延時間を計測するRTT(Round Trip Time)計測部5-6、受信帯域を計測する受信帯域計測部5-9、受信帯域の値を用いて計測したRTTを補正するRTT補正部5-7、RTTを元に送信帯域を決定する送信帯域決定部5-5で構成される。第1の実施形態における輻輳制御部1-4と比較して、送信帯域計測部1-8がない構成であり、その他は同様である。 The congestion control unit 5-4 includes an RTT (Round Trip Time) measurement unit 5-6 that measures a round trip delay time every time an ACK packet is received, a reception band measurement unit 5-9 that measures a reception band, and a value of the reception band The RTT correction unit 5-7 corrects the RTT measured by using the RTT, and the transmission band determination unit 5-5 determines the transmission band based on the RTT. Compared with the congestion control unit 1-4 in the first embodiment, the transmission band measurement unit 1-8 is not provided, and the others are the same.
(動作の説明)
図9及び図10を参照して、本実施形態の動作について説明する。図10は通信端末5の動作を示すフローチャートである。以下では、本実施形態における補正RTTの導出について記述し、その他の動作については第1の実施形態と同様なので説明を省略する。
(Description of operation)
The operation of the present embodiment will be described with reference to FIGS. FIG. 10 is a flowchart showing the operation of the communication terminal 5. In the following, the derivation of the corrected RTT in this embodiment will be described, and the other operations are the same as those in the first embodiment, and the description thereof will be omitted.
本実施形態では、送信帯域を計測せず、受信帯域のみを用いてRTTの補正を行う。RTT補正部5-7では、現在の受信帯域と、過去に計測した受信帯域を用い、その比率によってRTTの補正を行う(ステップS54)。例えば、以下の式のように求めればよい。 In the present embodiment, the RTT is corrected using only the reception band without measuring the transmission band. The RTT correction unit 5-7 uses the current reception band and the reception band measured in the past, and corrects the RTT according to the ratio (step S54). For example, what is necessary is just to obtain | require like the following formula | equation.
補正RTT = max(計測RTT × (過去に計測した受信帯域/現在の受信帯域), RTTmin)
[実施形態6]
本発明の第6の実施形態について図面を参照して説明する。
Correction RTT = max (Measured RTT x (Received bandwidth measured in the past / Current received bandwidth), RTTmin)
[Embodiment 6]
A sixth embodiment of the present invention will be described with reference to the drawings.
(構成の説明)
図11は本実施形態によるシステムの構成を示すブロック図である。本システムは、送信端末となる通信端末6-1、受信端末となる通信端末6-2、ネットワーク6-3で構成される。通信端末6-1の構成は、第1の実施形態における通信端末1と同様であるため、ここでは説明を書略する。なお、第2〜第5に示した通信端末のいずれかを用いることもできる。通信端末6-2は、受信パケットから通信データを再構成するデータ再構成部6-5、再構成されたデータを受信し処理するデータ受信部6-4、ACKパケットを生成して通信端末6-1に返送するACK生成部6-6、で構成される。
(Description of configuration)
FIG. 11 is a block diagram showing the configuration of the system according to this embodiment. This system includes a communication terminal 6-1 serving as a transmission terminal, a communication terminal 6-2 serving as a reception terminal, and a network 6-3. Since the configuration of the communication terminal 6-1 is the same as that of the
(動作の説明)
図11を参照して、本実施形態の動作について説明する。
(Description of operation)
The operation of this embodiment will be described with reference to FIG.
送信端末5-1から送信されたパケットは、ネットワーク5-3を介して、受信端末5-3に到着する。 The packet transmitted from the transmission terminal 5-1 arrives at the reception terminal 5-3 via the network 5-3.
データ再構成部6-5は、受信したパケットからデータを取り出し、元のデータを再構成し、データ受信部6-4へと送る。データ受信部6-4は、受け取ったデータを様々な受信アプリケーションによって処理する。 The data reconstruction unit 6-5 extracts data from the received packet, reconstructs the original data, and sends it to the data reception unit 6-4. The data receiving unit 6-4 processes the received data by various receiving applications.
データ再構成部6-5は、受信完了したデータの番号をACK生成部6-6に通知する。そして、ACK生成部6-6は前記番号に基づいてACKパケットを生成し、通信端末6-1へと送信する。ACKパケットによって通知されるデータの番号は、通信端末6-2によって受信確認されたデータの番号であり、この番号およびこの番号以前のデータは通信端末6-2で確かに受信されたこととなる。従って、通信端末6-1がACKパケットを受信すると、このパケットに書かれている番号までのデータを再送することはないため、これらのデータは通信端末6-1側で破棄してもよい。送信経路上でパケット廃棄が発生すると、通信端末6-2は同じデータの番号を複数のACKに対して書き込むことで、この番号以降のデータを受信していないことを通信端末6-1に通知し、再送を促す。また、別の方法として、通信端末6-2側から通信端末6-1側に対して明示的にパケット廃棄があったことを示すNACK (Negative ACK)を送信しても良い。 The data reconstruction unit 6-5 notifies the ACK generation unit 6-6 of the number of the data that has been received. Then, the ACK generation unit 6-6 generates an ACK packet based on the number and transmits it to the communication terminal 6-1. The number of the data notified by the ACK packet is the number of the data confirmed by the communication terminal 6-2, and this number and data before this number are surely received by the communication terminal 6-2. . Therefore, when the communication terminal 6-1 receives the ACK packet, the data up to the number written in the packet is not retransmitted, so that the data may be discarded on the communication terminal 6-1 side. When packet discard occurs on the transmission path, the communication terminal 6-2 writes the same data number to multiple ACKs to notify the communication terminal 6-1 that data after this number has not been received. And prompts for retransmission. As another method, a NACK (Negative ACK) indicating that a packet is explicitly discarded may be transmitted from the communication terminal 6-2 side to the communication terminal 6-1 side.
以上説明した各実施形態の通信端末は、専用IC等を用いたハードウエアで構成できるが、コンピュータを用いたソフトウエアで実現することができる。すなわち、例えば、図12に示すようなコンピュータで図1、図3、図5、図7、図9のいずれかの通信端末を構成し、図2、図4、図6、図8、図10のいずれかのフローを記述したプログラムにより通信端末の機能を実現することができる。図2、図4、図6、図8、図10のいずれかのフローを記述したプログラムをハードディスク装置等のディスク装置103やROM等の記憶装置(ここではディスク装置を示している)に記憶し、CPU105により通信端末の機能を実現するプログラムが実行される。入力部102はキーボード等の入力デバイスとなる。送受信部101はパケット送信部とパケット受信部に対応するものである。LCD(液晶表示装置)107は情報処理状況や判定結果を表示するものである。104はデータバス等のバス、106はCPU105の情報処理に必要な情報を記憶するDRAM等のメモリを示す。
Although the communication terminal of each embodiment described above can be configured by hardware using a dedicated IC or the like, it can be realized by software using a computer. That is, for example, the communication terminal shown in FIG. 1, FIG. 3, FIG. 5, FIG. 7, or FIG. The function of the communication terminal can be realized by a program describing any one of the flows. The program describing any of the flows in FIGS. 2, 4, 6, 8, and 10 is stored in a
本発明は、通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラムに関し、特に、広帯域回線を使用して低遅延の通信を行う通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラムに適用できる。 The present invention relates to a communication terminal, a communication system, a congestion control method, and a congestion control program, and in particular, a communication terminal, a communication system, a congestion control method, and a congestion control program that perform low-delay communication using a broadband line. Applicable to.
1-1, 2-1,3-1,4-1,5-1 データ発生部
1-2, 2-2,3-2,4-2,5-2 パケット送信部
1-3, 2-3,3-3,4-3,5-3 パケット受信部
1-4,2-4,3-4,4-4,5-4 輻輳制御部
1-5,2-5,3-5,4-5,5-5 送信帯域決定部
1-6,2-6,3-6,5-6 RTT(Round Trip Time)計測部
1-7,2-7,3-7,5-7 RTT補正部
4-7 RTT推定部
1-8,3-8 送信帯域計測部
2-8,4-8 送信中データ量計測部
1-9,2-9,3-9,4-9,5-9 受信帯域計測部
3-10 送信帯域増加幅変更部
6-1,6-2 通信端末
6-3 ネットワーク
6-4 データ受信部
6-5 データ再構成部
6-6 ACK送信部
1-1, 2-1,3-1,4-1,5-1 Data generator
1-2, 2-2,3-2,4-2,5-2 Packet transmitter
1-3, 2-3,3-3,4-3,5-3 Packet receiver
1-4,2-4,3-4,4-4,5-4 Congestion controller
1-5,2-5,3-5,4-5,5-5 Transmission band decision part
1-6,2-6,3-6,5-6 RTT (Round Trip Time) measurement unit
1-7,2-7,3-7,5-7 RTT correction part
4-7 RTT estimation part
1-8,3-8 Transmission band measurement part
2-8, 4-8 Transmitting data volume measurement unit
1-9,2-9,3-9,4-9,5-9 Receive Band Measurement Unit
3-10 Transmission bandwidth increase width change section
6-1,6-2 Communication terminal
6-3 Network
6-4 Data receiver
6-5 Data reconstruction unit
6-6 ACK transmitter
Claims (9)
受信したデータに基づいて、送受信を行う前記通信端末間の往復遅延時間を計測する手段と、
受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する計測手段と、
前記往復遅延時間の値を少なくとも前記受信帯域を用いて補正する補正手段と、
前記補正手段により補正された往復遅延時間によって送信帯域を決定する決定手段と、
送信中のデータ量を計測する手段とを有し、
前記補正手段は、該送信中のデータ量を前記受信帯域で割った値を、前記往復遅延時間の補正した値として用いることを特徴とする通信端末。 A communication terminal used in a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting / receiving data,
Means for measuring a round trip delay time between the communication terminals performing transmission and reception based on the received data;
Measuring means for measuring a reception band in a receiving terminal among the plurality of communication terminals based on the received data;
Correction means for correcting the value of the round-trip delay time using at least the reception band;
Determining means for determining a transmission band according to the round trip delay time corrected by the correcting means;
Means for measuring the amount of data being transmitted,
The communication device according to claim 1, wherein the correction means uses a value obtained by dividing the amount of data being transmitted by the reception band as a corrected value of the round-trip delay time.
送信中のデータ量を計測する手段と、
受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する計測手段と、
計測された前記送信中のデータ量を前記受信帯域で割った値を、往復遅延時間とする推定手段と、
前記推定手段により推定された前記往復遅延時間によって送信帯域を決定する決定手段と、を有することを特徴とする通信端末。 A terminal used in a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting and receiving data,
A means of measuring the amount of data being transmitted;
Measuring means for measuring a reception band in a receiving terminal among the plurality of communication terminals based on the received data;
An estimation means that takes a value obtained by dividing the measured amount of data being transmitted by the reception band as a round-trip delay time ;
Communication terminal, comprising a determination means for determining a transmission band by said round trip time estimated by the estimating means.
受信したデータに基づいて、送受信を行う前記通信端末間の往復遅延時間を計測するとともに前記複数の通信端末のうちの受信端末における受信帯域を計測する第1ステップと、
前記往復遅延時間の値を少なくとも前記受信帯域を用いて補正する第2ステップと、
前記第2ステップで補正された往復遅延時間によって送信帯域を決定する第3ステップと、
送信中のデータ量を計測する第4ステップを有し、
前記第2ステップでは、該送信中のデータ量を前記受信帯域で割った値を、前記往復遅延時間の補正した値として用いることを特徴とする輻輳制御方法。 A congestion control method in a communication terminal of a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting and receiving data,
A first step of measuring a round trip delay time between the communication terminals performing transmission and reception based on the received data and measuring a reception band in the reception terminal of the plurality of communication terminals;
A second step of correcting the value of the round-trip delay time using at least the reception band;
A third step of determining a transmission band based on the round trip time corrected in the second step;
A fourth step of measuring the amount of data being transmitted;
In the second step, a value obtained by dividing the amount of data being transmitted by the reception band is used as a corrected value of the round-trip delay time.
前記第2ステップでは、補正後の前記往復遅延時間の値と、計測した前記往復遅延時間の値とのうち、より大きい方の値を、前記補正された往復遅延時間とすることを特徴とする輻輳制御方法。 In the congestion control method according to claim 5,
In the second step, a larger value of the corrected round-trip delay time value and the measured round-trip delay time value is set as the corrected round-trip delay time. Congestion control method.
前記第2ステップでは、補正後の前記往復遅延時間の値と、前記受信端末で応答確認パケットを受信する毎に計測した複数個の前記往復遅延時間の最小値とのうち、より大きい方の値を、前記補正された往復遅延時間として前記決定手段に出力することを特徴とする輻輳制御方法。 In the congestion control method according to claim 5,
In the second step, the larger one of the corrected round-trip delay time value and the plurality of minimum round-trip delay time values measured each time the receiving terminal receives a response confirmation packet. Is output to the determining means as the corrected round-trip delay time.
送信中のデータ量を計測する第1ステップと、
受信した前記データに基づいて前記複数の通信端末のうちの受信端末における受信帯域を計測する第2ステップと、
計測された前記送信中のデータ量を前記受信帯域で割った値を、往復遅延時間とする第3ステップと、
前記往復遅延時間によって送信帯域を決定する第4ステップと、を有することを特徴とする輻輳制御方法。 A congestion control method in a communication terminal of a communication system for setting a communication session between a plurality of communication terminals via a network and transmitting and receiving data,
A first step of measuring the amount of data being transmitted;
A second step of measuring a reception band in a receiving terminal among the plurality of communication terminals based on the received data;
A third step in which a value obtained by dividing the measured amount of data being transmitted by the reception band is a round-trip delay time ;
And a fourth step of determining a transmission band based on the round trip delay time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008325547A JP4915415B2 (en) | 2008-12-22 | 2008-12-22 | Communication terminal, communication system, congestion control method, and congestion control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008325547A JP4915415B2 (en) | 2008-12-22 | 2008-12-22 | Communication terminal, communication system, congestion control method, and congestion control program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007024525A Division JP4407700B2 (en) | 2007-02-02 | 2007-02-02 | Communication terminal, communication system, congestion control method, and congestion control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009077442A JP2009077442A (en) | 2009-04-09 |
JP4915415B2 true JP4915415B2 (en) | 2012-04-11 |
Family
ID=40611905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008325547A Expired - Fee Related JP4915415B2 (en) | 2008-12-22 | 2008-12-22 | Communication terminal, communication system, congestion control method, and congestion control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4915415B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015045080A1 (en) * | 2013-09-26 | 2015-04-02 | 富士通株式会社 | Measurement apparatus, communication apparatus, relay apparatus, measurement method, and measurement program |
JP6082413B2 (en) * | 2015-02-26 | 2017-02-15 | アンリツ株式会社 | Bandwidth determination device and method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000216811A (en) * | 1999-01-22 | 2000-08-04 | Chokosoku Network Computer Gijutsu Kenkyusho:Kk | Flow controlling method |
JP3768902B2 (en) * | 2002-03-01 | 2006-04-19 | 日本電信電話株式会社 | Bandwidth allocation circuit |
JP4061643B2 (en) * | 2002-12-11 | 2008-03-19 | ソニー株式会社 | Information processing system, information processing apparatus and method, recording medium, and program |
-
2008
- 2008-12-22 JP JP2008325547A patent/JP4915415B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009077442A (en) | 2009-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4407700B2 (en) | Communication terminal, communication system, congestion control method, and congestion control program | |
US9961010B2 (en) | Communications scheduler | |
Dukkipati et al. | Processor sharing flows in the internet | |
US9112799B2 (en) | Network packet loss processing method and apparatus | |
JP4147534B2 (en) | Communication apparatus and communication method | |
JP4367505B2 (en) | Communication terminal, communication system, congestion control method, and congestion control program | |
JP5146725B2 (en) | Communication apparatus and communication method | |
US20050220097A1 (en) | Expedited data transmission in packet based network | |
JP2006014329A (en) | Communication terminal | |
JP2004538719A (en) | Method for providing a non-linear, highly scalable increase-decrease congestion control mechanism | |
US9674101B2 (en) | Communication device, transmission data output control method, and program for same | |
CN106789702B (en) | Method and device for controlling transmission performance of TCP (Transmission control protocol) | |
CN112118191A (en) | Multipath transmission congestion control method, device, control equipment and storage medium | |
JP4831366B2 (en) | Communication system, communication terminal, relay node, communication method used therefor, and program thereof | |
US8279756B2 (en) | Communication terminal, communication control method, and communication control program | |
CN113242183A (en) | Data stream sending control method and device, intelligent terminal and storage medium | |
US11588736B2 (en) | Communication apparatus, communication method, and program | |
JP4435817B2 (en) | Communication terminal, communication control method, and communication control program | |
EP1730903A2 (en) | Expedited data transmission in packet based network | |
JP4915415B2 (en) | Communication terminal, communication system, congestion control method, and congestion control program | |
JP2007097144A (en) | Communication system, communication terminal, relay node, communication method for use therein and program thereof | |
JP3853784B2 (en) | Data communication management method | |
WO2023119511A1 (en) | Communication device, communication system, and communication method | |
JPH11177618A (en) | Congestion control method | |
JPH1168845A (en) | Data transfer system and transmission rate control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100720 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101004 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101015 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110307 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110506 |
|
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: 20111227 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150203 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4915415 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |