JP2011061699A - Congestion control apparatus and congestion control method - Google Patents

Congestion control apparatus and congestion control method Download PDF

Info

Publication number
JP2011061699A
JP2011061699A JP2009211957A JP2009211957A JP2011061699A JP 2011061699 A JP2011061699 A JP 2011061699A JP 2009211957 A JP2009211957 A JP 2009211957A JP 2009211957 A JP2009211957 A JP 2009211957A JP 2011061699 A JP2011061699 A JP 2011061699A
Authority
JP
Japan
Prior art keywords
mark
packet
unit
congestion control
traffic
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
JP2009211957A
Other languages
Japanese (ja)
Other versions
JP4726978B2 (en
Inventor
Ryosuke Yokobayashi
亮介 横林
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.)
Chugoku Electric Power Co Inc
Original Assignee
Chugoku Electric Power Co Inc
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 Chugoku Electric Power Co Inc filed Critical Chugoku Electric Power Co Inc
Priority to JP2009211957A priority Critical patent/JP4726978B2/en
Publication of JP2011061699A publication Critical patent/JP2011061699A/en
Application granted granted Critical
Publication of JP4726978B2 publication Critical patent/JP4726978B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a congestion control apparatus capable of reducing a packet discarding rate by enabling a behavior of an average buffer length to be predicted in early timing, and to provide a congestion control method. <P>SOLUTION: A congestion control apparatus 50 includes: a SYN/ACK detecting part 6 for detecting a packet, in response to a connection request from a connecting side, obtained by combining a connection permission from a connected side and the connection request; a mark detecting part 7 for detecting a predetermined mark included in a data packet; a packet/mark counting part 8 for counting the number of packets and the number of marks; a traffic variation-predicting part 10 for predicting variation of traffic based on the results counted by the packet/mark counting part 8, respectively; a RED parameter-varying part 11 for varying a parameter relating to random initial detection based on an amount of variation of the average buffer length predicted by the traffic variation predicting part 10; and a control part 9 for controlling the respective parts. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、輻輳制御装置及び輻輳制御方法に関し、さらに詳しくは、トラフィック変動予測を用いてパケットの廃棄率を低減する輻輳制御装置及び輻輳制御方法に関するものである。   The present invention relates to a congestion control device and a congestion control method, and more particularly to a congestion control device and a congestion control method for reducing a packet discard rate using traffic fluctuation prediction.

TCP/IP通信(以下、単にTCPと呼ぶ)を利用した低コストの汎用通信機器は、インターネットのみならず、企業内のプライベートなネットワークへも適用が進んでいる。また、増加するトラフィックに対しては、ネットワーク帯域やパケット転送処理量等の設備容量増強を行うのが基本であるが、増強時期が遅れたり、故障による回線容量の減少時には、トラフィックが集中する箇所で輻輳が発生する。そのとき、通信速度を抑制し、設備容量内にトラフィックを抑えるために輻輳制御が行われる。輻輳制御は、大部分のアプリケーションで転送用プロトコルとして用いるTCPの機能により行われる。TCPは、ネットワークの輻輳によるルータのバッファ・オーバフローによるパケット廃棄を送信端で検出し、一度に送信できるパケット数を決めるウィンドウ・サイズを減少させることによって、ネットワークへのパケット送出を制御し、輻輳を抑制している。   A low-cost general-purpose communication device using TCP / IP communication (hereinafter simply referred to as TCP) has been applied not only to the Internet but also to private networks in companies. In addition, for increasing traffic, it is basic to increase the capacity of the network bandwidth, packet transfer throughput, etc., but when the increase is delayed or the line capacity is reduced due to a failure, the traffic is concentrated. Causes congestion. At that time, congestion control is performed in order to suppress the communication speed and suppress the traffic within the equipment capacity. Congestion control is performed by a TCP function used as a transfer protocol in most applications. TCP detects packet discard due to router buffer overflow due to network congestion at the sending end, and controls the packet transmission to the network by reducing the window size that determines the number of packets that can be transmitted at one time. Suppressed.

一方、現在、ルータの多くは、輻輳制御としてTail Drop方式を採用している。しかしこの方式では、到着順にパケットをバッファーに蓄積し、バッファーが一杯になると、以降の到着するパケットを全て廃棄することから、トラフィック増加による輻輳時にはパケット廃棄が連続的に発生してしまう。このとき、複数フローに渡ってパケットを廃棄することによって、同期させてウィンドウ・サイズを増減させるTCP同期、およびRTO(Retransmission Time out)と呼ばれる、数秒間待ってから再送を開始する動作が生じ、スループットの低下を招くという問題がある。
このような問題を解決するため、従来からアクティブキュー管理方式が提案されている。その代表的なものにRED(Random Early Detection)がある。REDは、バッファー溢れでパケットが連続して廃棄されることを防止するために、バッファーが一杯になる前に、到着するパケットを確率的に廃棄する方法である。これによって、TCPのパケット送出速度が制御されるとともに、TCP同期等を回避できる。このため、Tail Drop方式に比較して、スループットを改善することができる。また、REDは多くの市販製品のルータに実装されており、使用可否を選択することができる。
On the other hand, many routers currently employ the tail drop method for congestion control. However, in this method, packets are accumulated in the buffer in the order of arrival, and when the buffer is full, all subsequent packets are discarded, and therefore packet discarding occurs continuously during congestion due to traffic increase. At this time, by discarding packets over multiple flows, TCP synchronization that synchronizes and increases / decreases the window size, and RTO (Retransmission Time out), an operation that starts retransmission after waiting for a few seconds, There is a problem that the throughput is reduced.
In order to solve such a problem, an active queue management method has been conventionally proposed. A typical example is RED (Random Early Detection). RED is a method of probabilistically discarding arriving packets before the buffer is full in order to prevent packets from being continuously discarded due to buffer overflow. Thereby, the TCP packet transmission speed is controlled, and TCP synchronization or the like can be avoided. For this reason, the throughput can be improved as compared with the tail drop method. Also, RED is mounted on many commercially available routers and can be used or not.

しかし、REDにも課題がある。即ち、REDは、図6に示すように平均バッファー長の増加に伴い、パケット廃棄率を増加させる。パケット廃棄率は、平均バッファー長がMINthから増加を始め、平均バッファー長がMAXthのときに、MAXpとなる。そして、平均バッファー長がMAXpを超えると全てのパケットを廃棄する。図中のMINth、MAXth、MAXpの闘値は、REDのパラメータであり、パケット廃棄の程度を決定する。このREDのパラメータが過剰である場合、TCP同期等が多くなり、不足である場合、バッファー溢れによりやはりTCP同期等が多くなる。そのため、REDのスループット改善効果を十分に引き出すためには、REDのパラメータを最適に設定しなければならない。しかし、最適な設定は、トラフィック変動によって異なってくるため非常に困難である。
そこで、トラフィック変動に対応し、REDのパラメータを変動させるARED(Adaptive RED)等が提案されている。ARED等は、平均バッファー長の変化に応じてREDのパラメータを変化させる。しかし、あくまで平均バッファー長を検出した後に制御を行うため、ダイナミックなバッファー長の変動に対する追従性能に限界が生じる。
However, RED also has problems. That is, RED increases the packet discard rate as the average buffer length increases as shown in FIG. The packet discard rate becomes MAXp when the average buffer length starts to increase from MINth and the average buffer length is MAXth. When the average buffer length exceeds MAXp, all packets are discarded. The threshold values of MINth, MAXth, and MAXp in the figure are RED parameters and determine the degree of packet discard. When this RED parameter is excessive, TCP synchronization and the like increase, and when it is insufficient, TCP synchronization and the like increase due to buffer overflow. Therefore, in order to sufficiently bring out the effect of improving the throughput of RED, the RED parameter must be set optimally. However, the optimal setting is very difficult because it varies depending on traffic fluctuations.
Therefore, ARED (Adaptive RED) or the like that changes the RED parameter in response to traffic fluctuations has been proposed. ARED etc. change the parameter of RED according to the change of average buffer length. However, since control is performed only after the average buffer length is detected, there is a limit to the tracking performance with respect to dynamic buffer length fluctuations.

ここで、輻輳制御に関する従来技術として特許文献1には、ネットワークフィードバックを使用して、将来、いつ輻輳が起きる可能性が高いかを予測し、これらの予測に基づいて、システム内でのエンドユーザの行動を変更して輻輳を抑える技術について開示されている。
また、特許文献2には、トラフィック輻輳を予測するために、ハイパーリンク情報を抽出し、このハイパーリンク情報を集計してリンク情報をIPアドレスごとに生成し、ノード中のトラフィックをIPアドレスごとに測定してトラフィックパターンを生成する。また、トラフィック監視手段が、ノード中のトラフィックをIPアドレスごとに監視してトラフィックパターンと比較する。このトラフィックパターンと現在のトラフィックとの差が閾値以上となった場合に、リンクパターンを参照しつつ、輻輳が発生する可能性を判定することが開示されている。
また、特許文献3には、フロー制御サーバがネットワークのトラフィックの増減を予測して管理サーバにフロー制御指示を発行し、管理サーバは、このフロー制御指示に基づいて各ルータのルーティング情報を制御し、ルーティング制御指示を各ルータに送出し、ルータはルーティング制御指示に基づいて自己のルーティング情報を設定することが開示されている。
また、特許文献4には、輻輳の発生度合いに応じて送信レートを適切に変更し、送信中コネクション数を計測する。そして、予測されたコネクション数と実際の通信中コネクション数に基づいて係数が決定され、この係数を用いて次回のコネクション数を予測することが開示されている。
Here, as a conventional technique related to congestion control, Patent Document 1 uses network feedback to predict when congestion is likely to occur in the future, and based on these predictions, end users in the system. A technology for suppressing congestion by changing the behavior of the system is disclosed.
In Patent Document 2, in order to predict traffic congestion, hyperlink information is extracted, the hyperlink information is aggregated to generate link information for each IP address, and traffic in a node is classified for each IP address. Measure and generate a traffic pattern. The traffic monitoring means monitors the traffic in the node for each IP address and compares it with the traffic pattern. It is disclosed that when the difference between the traffic pattern and the current traffic is equal to or greater than a threshold value, the possibility of congestion occurring is determined while referring to the link pattern.
In Patent Document 3, the flow control server predicts an increase or decrease in network traffic and issues a flow control instruction to the management server. The management server controls the routing information of each router based on the flow control instruction. It is disclosed that a routing control instruction is sent to each router, and the router sets its own routing information based on the routing control instruction.
In Patent Document 4, the transmission rate is appropriately changed according to the degree of occurrence of congestion, and the number of connections during transmission is measured. It is disclosed that a coefficient is determined based on the predicted number of connections and the actual number of connections in communication, and the next number of connections is predicted using this coefficient.

特開2002−124991公報JP 2002-124991 A 特開2004−343466公報JP 2004-343466 A 特開2005−110079公報JP-A-2005-110079 特開2005−245034公報JP 2005-245034 A

しかし、特許文献1に開示されている従来技術は、輻輳を予測するために、予測される輻輳が緩和されるような時刻まで、エンドユーザによって送信されるデータパケットを遅延させるものであり、予測の正確性が必ずしも高いとはいえず、適切な輻輳制御が行われない虞がある。
また、特許文献2に開示されている従来技術は、トラフィックパターンと現在のトラフィックとの差が閾値以上となった場合に、リンクパターンを参照しつつ、輻輳が発生する可能性を判定するため、輻輳制御のタイミングが遅くなるといった問題がある。
また、特許文献3に開示されている従来技術は、トラフィックの増減に関する情報をインターネット上で検索してトラフィックの増減を予測するものであり、トラフィックの増減に関する情報を正確に検索するのが難しいといった問題がある。
また、特許文献4に開示されている従来技術は、あくまでもコネクション数を予測するものであり、予測の正確性が必ずしも高いとはいえず、適切な輻輳制御が行われない虞がある。
本発明は、かかる課題に鑑みてなされたものであり、TCP開始で送信端末又はエッジルータから送信されたSYN/ACKを検出し、FINパケットの手前でデータパケットのヘッダー部に付加されたマークを検出するように構成し、SYN/ACKとマークの検出数に基づいて、トラフィックの変動を予測することにより、平均バッファー長の挙動を早い時期に予測するとともに、REDのパラメータを変動することで、その性能を十分に引き出すことができる輻輳制御装置及び輻輳制御方法を提供することを目的とする。
However, the prior art disclosed in Patent Document 1 delays a data packet transmitted by an end user until a time when the predicted congestion is alleviated in order to predict congestion. Is not necessarily highly accurate, and appropriate congestion control may not be performed.
In addition, the prior art disclosed in Patent Document 2 determines the possibility of congestion while referring to the link pattern when the difference between the traffic pattern and the current traffic is greater than or equal to the threshold. There is a problem that the timing of congestion control is delayed.
In addition, the related art disclosed in Patent Document 3 searches for information on traffic increase / decrease on the Internet and predicts traffic increase / decrease, and it is difficult to accurately search information on traffic increase / decrease. There's a problem.
The prior art disclosed in Patent Document 4 merely predicts the number of connections, and the accuracy of the prediction is not necessarily high, and there is a possibility that appropriate congestion control will not be performed.
The present invention has been made in view of such a problem, and detects a SYN / ACK transmitted from a transmission terminal or an edge router at the start of TCP, and adds a mark added to the header of the data packet before the FIN packet. It is configured to detect, by predicting the traffic fluctuation based on the number of detected SYN / ACK and marks, the behavior of the average buffer length is predicted at an early stage, and the RED parameter is changed, It is an object of the present invention to provide a congestion control device and a congestion control method that can sufficiently bring out the performance.

本発明はかかる課題を解決するために、請求項1は、トラフィック変動予測を用いたTCP/IP通信ネットワークにおける輻輳制御装置であって、接続側からの接続要求(SYN)に対して被接続側からの接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを検出するSYN/ACK検出部と、前記接続側からのデータパケットに含まれる所定のマークを検出するマーク検出部と、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するパケット・マーク計数部と、該パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するトラフィック変動予測部と、該トラフィック変動予測部により予測した平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるREDパラメータ変動部と、前記各部を制御する制御部と、を備えたことを特徴とする。
本発明は、ルータにおけるトラフィック変動予測を用いてパケットの廃棄率を低減する輻輳制御装置及び輻輳制御方法に関する発明である。即ち、コアルータ内に送信端から送られたSYN/ACKパケットと、通信終了の数パケット手前のデータパケットに付加されたマークとを検出して夫々を計数しておき、この計数値の増減或いは差分に基づいてREDパラメータを変動させることにより、REDによるパケットの廃棄率の低減を図る発明である。これにより、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。
In order to solve such a problem, the present invention provides a congestion control apparatus in a TCP / IP communication network using traffic fluctuation prediction, which is connected to a connection request (SYN) from a connection side. A SYN / ACK detection unit that detects a packet that combines a connection permission (ACK) and a connection request (SYN) from the network, a mark detection unit that detects a predetermined mark included in the data packet from the connection side, and the SYN A packet mark counter for counting the number of packets detected by the / ACK detector and the number of marks detected by the mark detector, and traffic fluctuations based on the respective counting results counted by the packet mark counter Traffic fluctuation prediction unit to be predicted, and fluctuation amount of average buffer length predicted by the traffic fluctuation prediction unit Based characterized by comprising a RED parameter changer for changing the parameter of the random early detection, and a control unit for controlling the respective sections.
The present invention relates to a congestion control device and a congestion control method for reducing a packet discard rate by using traffic fluctuation prediction in a router. That is, the SYN / ACK packet sent from the transmitting end in the core router and the mark added to the data packet several packets before the end of communication are detected and counted, and the increase or decrease or difference of this count value is counted. In this invention, the RED parameter is changed based on the above, thereby reducing the packet discard rate due to RED. As a result, the behavior of the average buffer length can be predicted at an early stage, and the packet discard rate can be reduced.

請求項2は、前記マークは、前記接続側において通信終了の直前のデータパケットに付加されることを特徴とする。
平均バッファー長の挙動を従来より早い時期に予測することができれば、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。そこで本発明では、接続側において通信終了の直前のデータパケットにマークを付加して、被接続側でそのマークを通信終了前に検出する。これにより、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。
請求項3は、前記制御部は、前記パケット・マーク計数部により計数したパケット数が増加して前記マーク数が減少した場合は、前記平均バッファー長が増加すると予測して前記ランダム初期検知に係るパラメータを変動させることを特徴とする。
計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きい場合である。即ち、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させる。これにより、早い時期に平均バッファー長の大きさが予測できるので、適切な追従性能を実現することができる。
According to a second aspect of the present invention, the mark is added to a data packet immediately before the end of communication on the connection side.
If the behavior of the average buffer length can be predicted earlier than before, the dynamic setting of the RED parameter can be started early, and the follow-up performance can be improved. Therefore, in the present invention, a mark is added to the data packet immediately before the end of communication on the connection side, and the mark is detected before the end of communication on the connected side. As a result, the dynamic setting of the RED parameter can be started from an early stage, and the follow-up performance can be improved.
According to a third aspect of the present invention, the control unit predicts that the average buffer length increases when the number of packets counted by the packet mark counting unit increases and the number of marks decreases, and relates to the random initial detection. The parameter is varied.
When the number of counted packets increases and the number of marks decreases, the window size is large. That is, since it is predicted that the average buffer length will increase, the RED parameter is changed to a value based on the average buffer length. Thereby, since the magnitude | size of average buffer length can be estimated at an early stage, appropriate follow-up performance can be realized.

請求項4は、前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値を超えた場合は、前記平均バッファー長が急増すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくすることを特徴とする。
計数したパケット数とマーク数の差分が所定の閾値を超えて大きくなるときは、平均バッファー長が急増すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、早めにパケット廃棄を促進することで、輻輳を制御し、バッファー溢れによる連続的な廃棄を回避することができる。
請求項5は、前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値以下の場合は、前記平均バッファー長が急減すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくすることを特徴とする。
計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、早めにパケット廃棄を抑制することで、必要以上の過剰な廃棄を回避することができる。
The control unit predicts that the average buffer length rapidly increases when a difference between the number of packets counted by the packet mark counting unit and the number of marks exceeds a predetermined threshold, and the average The ratio of discarding packets when the buffer length reaches the maximum threshold is increased.
When the difference between the counted number of packets and the number of marks exceeds a predetermined threshold, it can be predicted that the average buffer length will increase rapidly. In such a case, when the average buffer length reaches the maximum threshold, the rate of discarding packets is increased, and packet discarding is promoted early to control congestion and prevent continuous discarding due to buffer overflow. It can be avoided.
According to a fifth aspect of the present invention, the control unit predicts that the average buffer length rapidly decreases when a difference between the number of packets counted by the packet mark counting unit and the number of marks is equal to or less than a predetermined threshold, and the average buffer The ratio of discarding packets when the length reaches the maximum threshold is reduced.
When the difference between the counted number of packets and the number of marks falls below a predetermined threshold, it can be predicted that the average buffer length will decrease rapidly. In such a case, excessive discards more than necessary can be avoided by reducing the rate of discarding packets when the average buffer length reaches the maximum threshold and suppressing packet discards early.

請求項6は、前記マークは、少なくともIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットであることを特徴とする。
送信端でヘッダー部に付加するマークは、受信端のTCPに何等影響を与えないものでなければならないことが本発明の必要条件であり、その必要条件を満たすための方法の一例として、付加するマークをIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットとする。これにより、受信端のTCPに影響を与えずに通信を行うことができる。
請求項7は、複数の送信端の回線を集約しているルータをエッジルータとし、それ以外のルータをコアルータとした場合、前記送信端の代わりに前記エッジルータで前記マークを付加するように構成したことを特徴とする。
送信端(以下、サーバという)でマークを付けて、ルータでマークを読み取るという協調動作においては、サーバとルータの各メーカーが同一の技術仕様を採用することに合意する必要がある。これは、技術的要素以外の要素が絡むために、一般的には実現が難しくなりがちである。また、仮に合意できたとしても、サーバとルータを新規で導入する場合は良いが、既存の設備を逐次、更新していく場合は、サーバの数が多ければ多いほど、各サーバの更新タイミングに差があるため、実現が困難となる。そこで本発明では、サーバの代わりにエッジルータでマークを付けるようにすれば、エッジルータで付けたマークをコアルータで読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
According to a sixth aspect of the present invention, the mark is at least a bit added to an option field in an IP header or a TCP header, or a URG bit added in a TCP head.
It is a necessary condition of the present invention that the mark added to the header part at the transmission end must have no influence on the TCP at the reception end, and is added as an example of a method for satisfying the requirement. The mark is a bit added to the option field in the IP header or TCP header, or a URG bit added in the TCP head. As a result, communication can be performed without affecting the TCP at the receiving end.
According to a seventh aspect of the present invention, when the router that aggregates a plurality of transmission end lines is an edge router and the other routers are core routers, the mark is added by the edge router instead of the transmission end. It is characterized by that.
In the cooperative operation of marking at the transmitting end (hereinafter referred to as a server) and reading the mark at the router, it is necessary to agree that each manufacturer of the server and the router adopts the same technical specifications. In general, this is likely to be difficult to realize due to the involvement of elements other than technical elements. Even if agreement is reached, it is good to introduce new servers and routers. However, when updating existing equipment sequentially, the more servers there are, the more the update timing of each server will be. Because of the difference, it is difficult to realize. Therefore, in the present invention, if a mark is attached by an edge router instead of a server, the core router reads the mark attached by the edge router, and the router manufacturer only adopts the technical specifications. Therefore, it is easy to implement.

請求項8は、SYN/ACK検出部、マーク検出部、パケット・マーク計数部、トラフィック変動予測部、REDパラメータ変動部、及び制御部を備えた輻輳制御装置の輻輳制御方法であって、前記SYN/ACK検出部が、接続側からの接続要求(SYN)に対して被接続側からの接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを検出するステップと、前記マーク検出部が、前記接続側からのデータパケットに含まれる所定のマークを検出するステップと、前記パケット・マーク計数部が、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するステップと、前記トラフィック変動予測部が、前記パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するステップと、前記REDパラメータ変動部が、前記トラフィック変動予測部により予測した平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるステップと、前記制御部が、前記各部を制御するステップと、を備えたことを特徴とする。
本発明は請求項1と同様の作用効果を奏する。
Claim 8 is a congestion control method of a congestion control device comprising a SYN / ACK detection unit, a mark detection unit, a packet mark counting unit, a traffic fluctuation prediction unit, a RED parameter fluctuation unit, and a control unit, wherein the SYN A step of detecting a packet in which a connection request (SYN) from a connected side is combined with a connection request (SYN) in response to a connection request (SYN) from the connection side; A step of detecting a predetermined mark included in the data packet from the connection side, and a packet number counting unit detecting the number of packets detected by the SYN / ACK detection unit and the number of marks detected by the mark detection unit, respectively. Counting and the traffic fluctuation prediction unit based on the respective counting results counted by the packet mark counting unit. Predicting traffic fluctuations, changing the parameters related to random initial detection based on the fluctuation amount of the average buffer length predicted by the traffic fluctuation prediction part by the RED parameter fluctuation part, and the control part And a step of controlling each part.
The present invention has the same effect as that of the first aspect.

本発明によれば、コアルータ内に送信端から送られたSYN/ACKパケットと、通信終了の数パケット手前のデータパケットに付加されたマークとを検出して夫々を計数しておき、この計数値の増減或いは差分に基づいてREDパラメータを変動させることにより、REDによるパケットの廃棄率の低減を図るので、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。
また、接続側において通信終了の直前のデータパケットにマークを付加して、被接続側でそのマークを通信終了前に検出するので、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。
また、計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きく、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させることにより、早い時期に平均バッファー長の大きさが予測でき、適切な追従性能を実現することができる。
According to the present invention, the SYN / ACK packet sent from the transmitting end in the core router and the mark added to the data packet several packets before the end of communication are detected and counted, respectively. By changing the RED parameter based on the increase / decrease or difference, the packet discard rate due to RED can be reduced, so that the behavior of the average buffer length can be predicted at an early stage, and the packet discard rate can be reduced. Can be reduced.
In addition, since a mark is added to the data packet immediately before the end of communication on the connection side and the mark is detected before the end of communication on the connected side, the dynamic setting of the RED parameter can be started from an early stage. Performance can be improved.
Also, if the number of counted packets increases and the number of marks decreases, the window size is large, which is expected to increase the average buffer length. Therefore, the RED parameter is changed to a value based on the average buffer length. By doing so, the size of the average buffer length can be predicted at an early stage, and appropriate tracking performance can be realized.

また、計数したパケット数とマーク数の差分が所定の閾値を超えて大きくなるときは、平均バッファー長が急増すると予測でき、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、パケットの廃棄数を減少させるので、平均バッファー長が急増しても、全てのパケットを廃棄する数を抑制することができる。
また、計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測でき、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、パケットの廃棄数を減少させるので、平均バッファー長が急減した場合は、更にパケットを廃棄する数を抑制することができる。
また、マークは、IPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットとするので、受信端のTCPに影響を与えずに通信を行うことができる。
また、サーバの代わりにエッジルータでマークを付けるようにすれば、エッジルータで付けたマークをコアルータで読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
In addition, when the difference between the counted number of packets and the number of marks increases beyond a predetermined threshold, the average buffer length can be predicted to increase rapidly, and the rate at which packets are discarded when the average buffer length reaches the maximum threshold is increased. Since the number of discarded packets is reduced, the number of discarded all packets can be suppressed even if the average buffer length increases rapidly.
When the difference between the counted number of packets and the number of marks falls below a predetermined threshold, the average buffer length can be predicted to decrease rapidly, and the rate of discarding packets when the average buffer length reaches the maximum threshold is reduced. Since the number of discarded packets is decreased, the number of discarded packets can be further suppressed when the average buffer length rapidly decreases.
Further, since the mark is a bit added to the option field in the IP header or TCP header or a URG bit added in the TCP head, communication can be performed without affecting the TCP at the receiving end.
If the edge router is marked instead of the server, it becomes a cooperative operation between routers in which the core router reads the mark added by the edge router, and it is only necessary to adopt the technical specifications only by the router manufacturer. Therefore, realization becomes easy.

本発明の一実施形態に係る輻輳制御方法の概略を示すフロー図である。It is a flowchart which shows the outline of the congestion control method which concerns on one Embodiment of this invention. ネットワーク図の一例を示す図である。It is a figure which shows an example of a network diagram. 送信端と受信端の間で行われるパケットのやり取りの一例を示すシーケンス図である。It is a sequence diagram which shows an example of the exchange of the packet performed between a transmission end and a receiving end. 本発明の輻輳制御装置をコアルータ内に備えた場合の機能を説明するブロック図である。It is a block diagram explaining the function at the time of providing the congestion control apparatus of this invention in a core router. 本発明の輻輳制御装置の動作について説明するフローチャートである。It is a flowchart explaining operation | movement of the congestion control apparatus of this invention. 平均バッファー長とパケット廃棄率の関係を示す図である。It is a figure which shows the relationship between average buffer length and a packet discard rate.

以下、本発明を図に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。   Hereinafter, the present invention will be described in detail with reference to embodiments shown in the drawings. However, the components, types, combinations, shapes, relative arrangements, and the like described in this embodiment are merely illustrative examples and not intended to limit the scope of the present invention only unless otherwise specified. .

図1は本発明の一実施形態に係る輻輳制御方法の概略を示すフロー図である。平均バッファー長の挙動を従来よりも早い時期に予測することができれば、REDのパラメータの動的な設定に早くから取りかかることができ、追従性能を向上させることが出来る。このため、本発明では、以下のとおり、平均バッファー長の挙動を予測する。
(1)TCP通信を開始すると、送信端でウィンドウ・サイズが徐々に開くとともに通信速度が上昇していくため、ある程度の時間をもってバッファー量の増加に影響する。そのため、TCP通信を開始する際に下り方向へ送信されるSYN/ACKパケットをルータで検出する(S1)。
(2)通信中は、ウィンドウ・サイズを徐々に開き、送信速度を増加させる(S2)。
(3)TCP通信を終了すると、送信端でウィンドウ・サイズを一気に閉じるので、すぐにバッファー量の減少に影響する。つまり、ある程度の時間をもって予測を行うためには、工夫が必要である。そのため、TCP通信を終了する際に下り方向に送信されるFINパケットの一歩手前で、送信中のデータパケットのヘッダー部に終了を知らせるための印を付けルータで検出する(S3)。即ち、平均バッファー長の挙動を早い時期に予測することができれば、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。そこで本実施形態では、接続する側(以下、接続側と呼ぶ)において通信終了の直前のデータパケットにマークを付加して、そのマークを通信終了前に検出する。これにより、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。また、送信端でヘッダー部に付加するマークは、受信端のTCPに何等影響を与えないものでなければならない。そこで本実施形態では、マークは、IPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットとする。これにより、受信端のTCPに影響を与えずに通信を行うことができる。
(4)そして通信終了でウィンドウ・サイズを閉じて送信速度をゼロにする(S4)。
(5)最後にFINパケットを送信して終了する(S5)。
(6)ステップS1及びステップS3で検出したパケットと印の数をカウントし、その数に基づいてトラフィック変動を予測する(S6)。例えば、パケットの検出数が増加し、印の検出数が減少すれば、平均バッファー長は増加することが予測される。また、検出数の差分が大きいほど、急激な増加が予測されることになる。予測精度を高めるために、フロー毎に、ウィンドウ・サイズ、バケット到着間隔、および廃棄・再送パケットを管理してもよい。なお、フローは、ヘッダー部の送受信IPアドレスやポート番号より識別でき、ウィンドウ・サイズは、送信端でウィンドウ・サイズの切れ目となるデータパケットのヘッダー部に印を付けることで、ルータで検出できる。
(7)ステップS6で予測したトラフィック変動に基づいてREDのパラメータを変動させる(S7)。即ち、トラフィックが急増する場合は図6のMAXpを大きくし、トラフィックが急減する場合はMAXpを小さくする。
(8)そして、REDパラメータに基づいてパケットの廃棄を実行する(S8)。
FIG. 1 is a flowchart showing an outline of a congestion control method according to an embodiment of the present invention. If the behavior of the average buffer length can be predicted earlier than before, the dynamic setting of the RED parameter can be started from an early stage, and the follow-up performance can be improved. For this reason, in the present invention, the behavior of the average buffer length is predicted as follows.
(1) When TCP communication is started, the window size is gradually opened at the transmission end and the communication speed is increased, which affects the increase in the buffer amount with a certain amount of time. Therefore, the router detects a SYN / ACK packet transmitted in the downstream direction when starting TCP communication (S1).
(2) During communication, the window size is gradually opened to increase the transmission speed (S2).
(3) When the TCP communication is terminated, the window size is closed at a stretch at the transmission end, which immediately affects the reduction of the buffer amount. In other words, in order to make a prediction in a certain amount of time, a device is necessary. For this reason, a mark for informing the end of the header of the data packet being transmitted is detected by the router immediately before the FIN packet transmitted in the downstream direction when the TCP communication is terminated (S3). That is, if the behavior of the average buffer length can be predicted early, the dynamic setting of the RED parameter can be started from an early stage, and the follow-up performance can be improved. Therefore, in the present embodiment, a mark is added to the data packet immediately before the end of communication on the connecting side (hereinafter referred to as the connecting side), and the mark is detected before the end of communication. As a result, the dynamic setting of the RED parameter can be started from an early stage, and the follow-up performance can be improved. In addition, the mark added to the header portion at the transmission end must have no influence on the TCP at the reception end. Therefore, in this embodiment, the mark is a bit added to the option field in the IP header or TCP header, or a URG bit added in the TCP head. As a result, communication can be performed without affecting the TCP at the receiving end.
(4) When the communication is completed, the window size is closed and the transmission speed is set to zero (S4).
(5) Finally, a FIN packet is transmitted and the process ends (S5).
(6) Count the number of packets and marks detected in step S1 and step S3, and predict traffic fluctuations based on the number (S6). For example, if the number of detected packets increases and the number of detected marks decreases, the average buffer length is expected to increase. In addition, the larger the difference in the number of detections, the more sudden increase is predicted. In order to improve the prediction accuracy, the window size, the bucket arrival interval, and the discard / retransmission packet may be managed for each flow. The flow can be identified from the transmission / reception IP address and the port number of the header portion, and the window size can be detected by the router by marking the header portion of the data packet that becomes the window size break at the transmission end.
(7) The RED parameter is changed based on the traffic fluctuation predicted in step S6 (S7). That is, MAXp in FIG. 6 is increased when traffic increases rapidly, and MAXp is decreased when traffic decreases rapidly.
(8) The packet is discarded based on the RED parameter (S8).

尚、送信端でヘッダー部に付ける印は、受信端のTCPに何ら影響を与えないものでなければならない。そのため、例えば、IPへッダーやTCPへッダー中のオプションフィールドに付加するビットや、TCPへッダー中に付加するURGビットがある。なお、付加した印は、ルータで認識後、除去してもよい。送信端でヘッダー部に印を付ける機能は、送信端末(サーバなど)に実装する必要があるが、端末数が多いほど、難しくなる場合がある。そこで、ルータ間で協調動作することで、ルータに実装するだけで済む方法について図2を参照して説明する。   It should be noted that the mark attached to the header part at the transmission end must be one that does not affect the TCP at the reception end. Therefore, for example, there are a bit added to an option field in an IP header or TCP header, and a URG bit added in a TCP header. The added mark may be removed after being recognized by the router. The function of marking the header portion at the transmission end needs to be implemented in a transmission terminal (such as a server), but it may become more difficult as the number of terminals increases. Therefore, a method of performing the cooperative operation between the routers and simply mounting on the routers will be described with reference to FIG.

図2はネットワーク図の一例を示す図である。送信端1の回線を集約しているルータをエッジルータ2、それ以外をコアルータ4とする。エッジルータ2はネットワーク3中に複数存在する。エッジルータ2は、送信端1からパケットを受け取ると、すぐに確認応答(ACK)パケットを送信端1に返信する。一方、エッジルー2タが受け取ったパケットは、コアルータ4へ送られ、受信端へ到着すると、受信端から確認応答(ACK)パケットを受け取る。つまり、エッジルータ2でTCPコネクションが張りなおされる形となる。このとき、エッジルータ2から見て、送信端1側のネットワークはRTT(Round Trip Time)が小さいので通信速度は速く、逆にコアルータ側のネットワークは(特に輻輳時には)RTTが大きいので通信速度は遅い。そのため、この速度差によってエッジルータ2のバッファーには自然にパケットが蓄積される。これは、送信端1が持っていた送信データがエッジルータ2のバッファーに引っ張り出されるイメージとなる。このような原理上、バッファーにパケットが蓄積されていても、通信遅延は発生していない。また、このバッファーは、TCPコネクションで繋がったパケットを蓄積するものではないので、たとえ保持時間が長い場合でも、タイムアウトでTCPが切断されることはない。バッファーは、FINパケットが届く一歩手前のパケット(どのくらい手前かは設定値による)に印を付けるために利用される。そのため、それ以上のパケットは蓄積する必要がなく、エッジルータ2は、送信端1側とコアルータ4側の通信速度を一致させる制御を行い、バッファーにパケットが過剰に蓄積されないようにする。
エッジルータ2のバッファーの所要量は、基本的には(FINパケットが届く手前のパケット数(設定値))×(同時発生コネクション数)となる。エッジルータ2による送信端1側の通信速度の制御は、送信側への確認応答(ACK)パケットの返信タイミングを調整したり、一度に受け取ることのできるパケット量の通知を増減することによって行われる。
FIG. 2 is a diagram illustrating an example of a network diagram. The router that aggregates the lines at the transmission end 1 is the edge router 2, and the other router is the core router 4. A plurality of edge routers 2 exist in the network 3. When the edge router 2 receives the packet from the transmission end 1, it immediately returns an acknowledgment (ACK) packet to the transmission end 1. On the other hand, the packet received by the edge router 2 is sent to the core router 4, and upon arrival at the receiving end, an acknowledgment (ACK) packet is received from the receiving end. That is, the TCP connection is re-established by the edge router 2. At this time, when viewed from the edge router 2, the network on the transmitting end 1 side has a small RTT (Round Trip Time), so the communication speed is fast. Conversely, the network on the core router side has a high RTT (particularly during congestion), so the communication speed is high. slow. Therefore, packets are naturally accumulated in the buffer of the edge router 2 due to this speed difference. This is an image in which the transmission data held by the transmission end 1 is pulled out to the buffer of the edge router 2. Based on such a principle, no communication delay occurs even if packets are accumulated in the buffer. In addition, since this buffer does not accumulate packets connected by a TCP connection, even if the holding time is long, TCP is not disconnected due to timeout. The buffer is used to mark a packet one step before the FIN packet arrives (how much is before the set value). Therefore, there is no need to accumulate more packets, and the edge router 2 performs control to match the communication speeds on the transmitting end 1 side and the core router 4 side so that excessive packets are not accumulated in the buffer.
The required amount of the buffer of the edge router 2 is basically (the number of packets before the FIN packet arrives (setting value)) × (the number of simultaneous connections). Control of the communication speed on the transmitting end 1 side by the edge router 2 is performed by adjusting the reply timing of the acknowledgment (ACK) packet to the transmitting side or increasing / decreasing the notification of the amount of packets that can be received at one time. .

また、エッジルータ2は、コアルータ4へ送信するパケットのヘッダー部に印を付ける機能を持ち、その印はコアルータ4によって読み取られ、REDの制御に用いられる。このような動作は、その必要性の生じる輻輳時に限って行う仕組みとしても良い。コアルータ4で輻輳が発生した場合、REDによってパケットが廃棄され、エッジルータ2は、これを検出してウィンドウ・サイズを減少させ、コアルータ4側の通信速度を下げる。同時に、送信端側の通信速度を下げる制御を行うこととなる。
即ち、送信端(以下、サーバという)でマークを付けて、ルータでマークを読み取るという協調動作においては、サーバとルータの各メーカーが同一の技術仕様を採用することに合意する必要がある。これは、技術的要素以外の要素が絡むために、一般的には実現が難しくなりがちである。また、仮に合意できたとしても、サーバとルータを新規で導入する場合は良いが、既存の設備を逐次、更新していく場合は、サーバの数が多ければ多いほど、各サーバの更新タイミングに差があるため、実現が困難となる。そこで本発明では、サーバの代わりにエッジルータ2でマークを付けるようにすれば、エッジルータ2で付けたマークをコアルータ4で読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
The edge router 2 has a function of marking a header portion of a packet to be transmitted to the core router 4, and the mark is read by the core router 4 and used for RED control. Such an operation may be performed only when congestion occurs. When congestion occurs in the core router 4, the packet is discarded by RED, and the edge router 2 detects this to reduce the window size and lower the communication speed on the core router 4 side. At the same time, control for reducing the communication speed on the transmission end side is performed.
That is, in the cooperative operation of marking at the transmitting end (hereinafter referred to as a server) and reading the mark at the router, it is necessary to agree that each manufacturer of the server and the router adopts the same technical specifications. In general, this is likely to be difficult to realize due to the involvement of elements other than technical elements. Even if agreement is reached, it is good to introduce new servers and routers. However, when updating existing equipment sequentially, the more servers there are, the more the update timing of each server will be. Because of the difference, it is difficult to realize. Therefore, in the present invention, if the mark is added by the edge router 2 instead of the server, the core router 4 reads the mark added by the edge router 2, and the inter-router cooperative operation is performed. Since it becomes better to adopt, it is easy to realize.

図3は送信端と受信端の間で行われるパケットのやり取りの一例を示すシーケンス図である。この例では、送信端をエッジルータ、受信端をコアルータとして説明する。まず、接続側である受信端から接続要求(SYN)を接続される側(以下、被接続側と呼ぶ)である送信端に送信する。SYNを受信した送信端は接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを受信端に返送する。受信端はSYN/ACKを検出して、接続許可(ACK)を送信端に返送する。これをスリーウェイ・ハンドシェイクと呼び、コネクションが確立する。これにより、送信端はデータの送信が可能となる。ここで、TCPでは、効率的に通信を行うために受信端が受信可能なウィンドウ・サイズを広告するが、いきなりウィンドウ・サイズでデータを送信するのではなく、最初はウィンドウ・サイズ以下のデータ量を送信する。そして、ACKを受信する度に送信するセグメント数を増加していくことで、帯域の有効活用が図れる。送信端は送信終了の数パケット手前のデータパケットにマークMを付加する。そのマークMは受信端で検出される。最後に送信端は通信終了を知らせるFINパケットを受信端に送り、受信端ではACK/FINを送信端に送り、送信端からACKを受信することにより通信が終了する。以上が1対1の送信端と受信端の間での1つのフローについて説明したが、図2のコアルータには複数のエッジルータからランダムにパケットが到達するため、SYN/ACKとマークMを検出するたびに、その数を計数しておき、計数した数に基づいてトラフィックの変動を予測する。   FIG. 3 is a sequence diagram showing an example of packet exchange performed between the transmitting end and the receiving end. In this example, the transmission end is described as an edge router and the reception end is described as a core router. First, a connection request (SYN) is transmitted from a receiving end which is a connection side to a transmission end which is a connected side (hereinafter referred to as a connected side). The transmitting end that has received SYN returns a packet that combines connection permission (ACK) and connection request (SYN) to the receiving end. The receiving end detects SYN / ACK and returns a connection permission (ACK) to the transmitting end. This is called a three-way handshake and a connection is established. As a result, the transmission end can transmit data. Here, in TCP, in order to communicate efficiently, the receiving end advertises the window size that can be received, but instead of transmitting data at the window size suddenly, the amount of data below the window size is initially set. Send. By increasing the number of segments to be transmitted each time an ACK is received, the bandwidth can be effectively used. The transmitting end adds a mark M to a data packet several packets before the end of transmission. The mark M is detected at the receiving end. Finally, the transmitting end sends a FIN packet informing the end of communication to the receiving end, the receiving end sends ACK / FIN to the transmitting end, and receives the ACK from the transmitting end, thereby completing the communication. The above describes one flow between the one-to-one transmission end and reception end. However, since packets arrive at the core router in FIG. 2 randomly from a plurality of edge routers, SYN / ACK and mark M are detected. Each time, the number is counted, and the traffic fluctuation is predicted based on the counted number.

図4は本発明の輻輳制御装置をコアルータ内に備えた場合の機能を説明するブロック図である。この輻輳制御装置50は、接続側からの接続要求(SYN)に対して被接続側からの接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを検出するSYN/ACK検出部6と、接続側からのデータパケットに含まれる所定のマークを検出するマーク検出部7と、SYN/ACK検出部6により検出したパケット数及びマーク検出部7により検出したマーク数を夫々計数するパケット・マーク計数部8と、パケット・マーク計数部8により計数した夫々の計数結果に基づいてトラフィックの変動を予測するトラフィック変動予測部10と、トラフィック変動予測部10により予測した平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるREDパラメータ変動部11と、各部を制御する制御部9と、コアルータ4とインターネット3を接続するインターフェース5と、を備えて構成されている。
本実施形態は、ルータにおけるトラフィック変動予測を用いてパケットの廃棄率を低減する輻輳制御装置及び輻輳制御方法に関する発明である。即ち、コアルータ4内に送信端から送られたSYN/ACKパケットと、通信終了の数パケット手前のデータパケットに付加されたマークとを検出して夫々を計数しておき、この計数値の増減或いは差分に基づいてREDパラメータを変動させることにより、REDによるパケットの廃棄率の低減を図る。これにより、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。
FIG. 4 is a block diagram for explaining functions when the congestion control apparatus of the present invention is provided in the core router. The congestion control device 50 includes a SYN / ACK detection unit 6 that detects a packet that combines a connection request (SYN) and a connection request (SYN) from a connected side with respect to a connection request (SYN) from the connection side, A mark detection unit 7 for detecting a predetermined mark included in a data packet from the connection side, and a packet mark count for counting the number of packets detected by the SYN / ACK detection unit 6 and the number of marks detected by the mark detection unit 7 Unit 8, a traffic fluctuation prediction unit 10 that predicts traffic fluctuations based on the respective counting results counted by the packet mark counting part 8, and a fluctuation amount of the average buffer length predicted by the traffic fluctuation prediction part 10 A RED parameter changing unit 11 for changing a parameter related to random initial detection, and a control unit 9 for controlling each unit It is configured to include an interface 5 for connecting the core router 4 and the Internet 3.
The present embodiment is an invention relating to a congestion control device and a congestion control method for reducing a packet discard rate by using traffic fluctuation prediction in a router. That is, the SYN / ACK packet sent from the transmission end in the core router 4 and the mark added to the data packet several packets before the end of communication are detected and counted, and the count value is increased or decreased. By changing the RED parameter based on the difference, the packet discard rate due to RED is reduced. As a result, the behavior of the average buffer length can be predicted at an early stage, and the packet discard rate can be reduced.

図5は本発明の輻輳制御装置の動作について説明するフローチャートである。通信が開始されると、接続側である受信端から接続要求(SYN)を被接続側である送信端に送信する。SYNを受信した送信端は接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを受信端に返送する。そのパケットはインターフェース5を介してSYN/ACK検出部6により検出される(S10)。それによりパケット・マーク計数部8によりSYN/ACKを計数する(S11)。その後、データの送信が開始される。送信端は送信終了の数パケット手前のデータパケットにマークMを付加する。そのマークMはマーク検出部7により検出され(S12)、それによりパケット・マーク計数部8によりマークMが計数される(S13)。最後に送信端は通信終了を知らせるFINパケットを受信端に送るので、FINパケットを受信すると(ステップS14でY)、制御部9はパケット・マーク計数部8により計数した夫々の計数結果から、SYN/ACKパケットが増加してマークMが減少した場合は(ステップS15でY)平均バッファー長が増加すると予測して(S16)、予測値に基づいてREDパラメータを変動させる(S17)。その変動量に応じたREDによるパケットが廃棄される(S18)。また、ステップS15でSYN/ACKパケットが増加してマークMが減少せず(ステップS15でN)、SYN/ACKパケットとマークMとの差分が大きい場合は(ステップS19でY)、平均バッファー長が急増すると予測して(S20)、図6のMAXpを大きくする(S21)。その変動量に応じたREDによるパケットが廃棄される(S18)。また、ステップS19でSYN/ACKパケットとマークMとの差分が大きくない場合は(ステップS19でN)、平均バッファー長が急減すると予測して(S22)、図6のMAXpを小さくする(S23)。その変動量に応じたREDによるパケットが廃棄される(S18)。   FIG. 5 is a flowchart for explaining the operation of the congestion control apparatus of the present invention. When communication is started, a connection request (SYN) is transmitted from the receiving end on the connection side to the transmission end on the connected side. The transmitting end that has received SYN returns a packet that combines connection permission (ACK) and connection request (SYN) to the receiving end. The packet is detected by the SYN / ACK detector 6 via the interface 5 (S10). Thus, SYN / ACK is counted by the packet mark counting unit 8 (S11). Thereafter, data transmission is started. The transmitting end adds a mark M to a data packet several packets before the end of transmission. The mark M is detected by the mark detection unit 7 (S12), whereby the mark M is counted by the packet mark counting unit 8 (S13). Finally, since the sending end sends a FIN packet notifying the end of communication to the receiving end, when receiving the FIN packet (Y in step S14), the control unit 9 determines the SYN from each count result counted by the packet mark counting unit 8. When the / ACK packet increases and the mark M decreases (Y in step S15), the average buffer length is predicted to increase (S16), and the RED parameter is changed based on the predicted value (S17). A packet by RED corresponding to the fluctuation amount is discarded (S18). If the SYN / ACK packet increases and the mark M does not decrease in step S15 (N in step S15), and the difference between the SYN / ACK packet and the mark M is large (Y in step S19), the average buffer length Is increased rapidly (S20), and MAXp in FIG. 6 is increased (S21). A packet by RED corresponding to the fluctuation amount is discarded (S18). If the difference between the SYN / ACK packet and the mark M is not large in step S19 (N in step S19), it is predicted that the average buffer length will decrease rapidly (S22), and MAXp in FIG. 6 is decreased (S23). . A packet by RED corresponding to the fluctuation amount is discarded (S18).

計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きい場合である。即ち、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させる。これにより、早い時期に平均バッファー長の大きさが予測できるので、適切な追従性能を実現することができる。
また、計数したパケット数とマーク数の差分が所定の閾値を超えて急激に大きくなるときは、平均バッファー長が急増すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、パケットの廃棄数を減少させる。これにより、平均バッファー長が急増しても、全てのパケットを廃棄することを抑制することができる。
また、計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、パケットの廃棄数を減少させる。これにより、平均バッファー長が急減した場合は、更にパケットを廃棄することを抑制することができる。
When the number of counted packets increases and the number of marks decreases, the window size is large. That is, since it is predicted that the average buffer length will increase, the RED parameter is changed to a value based on the average buffer length. Thereby, since the magnitude | size of average buffer length can be estimated at an early stage, appropriate follow-up performance can be realized.
In addition, when the difference between the counted number of packets and the number of marks exceeds a predetermined threshold value, the average buffer length can be predicted to increase rapidly. In such a case, when the average buffer length reaches the maximum threshold, the rate of discarding packets is increased to reduce the number of discarded packets. As a result, even if the average buffer length increases rapidly, discarding of all packets can be suppressed.
Further, when the difference between the counted number of packets and the number of marks is equal to or less than a predetermined threshold, it can be predicted that the average buffer length will rapidly decrease. In such a case, the ratio of discarding packets when the average buffer length reaches the maximum threshold is reduced to reduce the number of discarded packets. As a result, when the average buffer length rapidly decreases, it is possible to further suppress discarding of packets.

1 送信端、2 エッジルータ、3 ネットワーク、4 コアルータ、5 インターフェース、6 SYN/ACK検出部、7 マーク検出部、8 パケット・マーク計数部、9 制御部、10 トラフィック変動予測部、11 REDパラメータ変動部、50 輻輳制御装置   1 sending end, 2 edge router, 3 network, 4 core router, 5 interface, 6 SYN / ACK detection unit, 7 mark detection unit, 8 packet mark counting unit, 9 control unit, 10 traffic fluctuation prediction unit, 11 RED parameter fluctuation , 50 Congestion Control Device

Claims (8)

トラフィック変動予測を用いたTCP/IP通信ネットワークにおける輻輳制御装置であって、
接続側からの接続要求に対して被接続側からの接続許可と接続要求を組み合わせたパケットを検出するSYN/ACK検出部と、
前記接続側からのデータパケットに含まれる所定のマークを検出するマーク検出部と、
前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するパケット・マーク計数部と、
該パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するトラフィック変動予測部と、
該トラフィック変動予測部により予測した平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるREDパラメータ変動部と、
前記各部を制御する制御部と、
を備えたことを特徴とする輻輳制御装置。
A congestion control apparatus in a TCP / IP communication network using traffic fluctuation prediction,
A SYN / ACK detection unit for detecting a packet in which a connection request from the connected side and a connection request are combined in response to a connection request from the connection side;
A mark detection unit for detecting a predetermined mark included in the data packet from the connection side;
A packet mark counter for counting the number of packets detected by the SYN / ACK detector and the number of marks detected by the mark detector;
A traffic fluctuation prediction unit that predicts traffic fluctuations based on the respective counting results counted by the packet mark counting unit;
A RED parameter variation unit that varies a parameter related to random initial detection based on a variation amount of an average buffer length predicted by the traffic variation prediction unit;
A control unit for controlling each unit;
A congestion control apparatus comprising:
前記マークは、前記接続側において通信終了の直前のデータパケットに付加されることを特徴とする請求項1に記載の輻輳制御装置。   The congestion control apparatus according to claim 1, wherein the mark is added to a data packet immediately before the end of communication on the connection side. 前記制御部は、前記パケット・マーク計数部により計数したパケット数が増加して前記マーク数が減少した場合は、前記平均バッファー長が増加すると予測して前記ランダム初期検知に係るパラメータを変動させることを特徴とする請求項1又は2に記載の輻輳制御装置。   When the number of packets counted by the packet / mark counting unit increases and the number of marks decreases, the control unit predicts that the average buffer length will increase and varies the parameter for the random initial detection. The congestion control device according to claim 1, wherein 前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値を超えた場合は、前記平均バッファー長が急増すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくすることを特徴とする請求項1又は2に記載の輻輳制御装置。   The control unit predicts that the average buffer length rapidly increases when the difference between the number of packets counted by the packet mark counting unit and the number of marks exceeds a predetermined threshold, and the average buffer length is a maximum threshold. The congestion control apparatus according to claim 1, wherein a rate of discarding packets when the threshold is reached is increased. 前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値以下の場合は、前記平均バッファー長が急減すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくすることを特徴とする請求項1又は2に記載の輻輳制御装置。   The control unit predicts that the average buffer length suddenly decreases when the difference between the number of packets counted by the packet mark counting unit and the number of marks is equal to or less than a predetermined threshold, and the average buffer length becomes the maximum threshold. The congestion control apparatus according to claim 1, wherein a rate of discarding the packet when it reaches is reduced. 前記マークは、少なくともIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットであることを特徴とする請求項1乃至5の何れか一項に記載の輻輳制御装置。   The congestion control according to any one of claims 1 to 5, wherein the mark is at least a bit added to an option field in an IP header or a TCP header, or a URG bit added in a TCP head. apparatus. 複数の送信端の回線を集約しているルータをエッジルータとし、それ以外のルータをコアルータとした場合、サーバの代わりに前記エッジルータで前記マークを付加するように構成したことを特徴とする請求項1乃至6の何れか一項に記載の輻輳制御装置。   The router is configured so that the mark is added by the edge router instead of a server when a router that aggregates a plurality of transmission end lines is an edge router and the other routers are core routers. Item 7. The congestion control device according to any one of Items 1 to 6. SYN/ACK検出部、マーク検出部、パケット・マーク計数部、トラフィック変動予測部、REDパラメータ変動部、及び制御部を備えた輻輳制御装置の輻輳制御方法であって、
前記SYN/ACK検出部が、接続側からの接続要求に対して被接続側からの接続許可と接続要求を組み合わせたパケットを検出するステップと、
前記マーク検出部が、前記接続側からのデータパケットに含まれる所定のマークを検出するステップと、
前記パケット・マーク計数部が、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するステップと、
前記トラフィック変動予測部が、前記パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するステップと、
前記REDパラメータ変動部が、前記トラフィック変動予測部により予測した平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるステップと、
前記制御部が、前記各部を制御するステップと、
を備えたことを特徴とする輻輳制御装置の輻輳制御方法。
A congestion control method for a congestion control device comprising a SYN / ACK detection unit, a mark detection unit, a packet mark counting unit, a traffic variation prediction unit, a RED parameter variation unit, and a control unit,
The SYN / ACK detection unit detecting a packet that combines a connection request from a connected side and a connection request with respect to a connection request from a connection side;
The mark detection unit detecting a predetermined mark included in a data packet from the connection side;
The packet mark counting unit counting the number of packets detected by the SYN / ACK detection unit and the number of marks detected by the mark detection unit;
The traffic fluctuation prediction unit predicting traffic fluctuations based on respective counting results counted by the packet mark counting unit;
The RED parameter changing unit changing a parameter related to random initial detection based on a fluctuation amount of an average buffer length predicted by the traffic fluctuation predicting unit;
The control unit controlling each unit;
A congestion control method for a congestion control apparatus, comprising:
JP2009211957A 2009-09-14 2009-09-14 Congestion control device and congestion control method Expired - Fee Related JP4726978B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009211957A JP4726978B2 (en) 2009-09-14 2009-09-14 Congestion control device and congestion control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009211957A JP4726978B2 (en) 2009-09-14 2009-09-14 Congestion control device and congestion control method

Publications (2)

Publication Number Publication Date
JP2011061699A true JP2011061699A (en) 2011-03-24
JP4726978B2 JP4726978B2 (en) 2011-07-20

Family

ID=43948783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009211957A Expired - Fee Related JP4726978B2 (en) 2009-09-14 2009-09-14 Congestion control device and congestion control method

Country Status (1)

Country Link
JP (1) JP4726978B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013093761A (en) * 2011-10-26 2013-05-16 Fujitsu Ltd Buffer management program, relay device and control method
JP2013126062A (en) * 2011-12-14 2013-06-24 Kddi Corp Network traffic control device, control method and program
JP2013197956A (en) * 2012-03-21 2013-09-30 Hitachi Ltd Packet relay device, and method
JP2014135533A (en) * 2013-01-08 2014-07-24 Hitachi Ltd Network device, performance control method, and network system
JP2015509310A (en) * 2011-12-29 2015-03-26 トムソン ライセンシングThomson Licensing Network gateway and method for transmitting packets of a data stream
US9112804B2 (en) 2012-05-31 2015-08-18 International Business Machines Corporation Network congestion notification preservation and modification during transmission of network data between physical network and virtual network
WO2016157914A1 (en) * 2015-04-02 2016-10-06 日本電気株式会社 Network system, communication control method, and recording medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004532566A (en) * 2001-04-09 2004-10-21 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Queue buffer control method
JP2005117131A (en) * 2003-10-03 2005-04-28 Nippon Telegr & Teleph Corp <Ntt> Tcp traffic control method and control apparatus
US20080267068A1 (en) * 2007-04-30 2008-10-30 Lakshman Tirunell V Lightweight bandwidth-management scheme for elastic traffic

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004532566A (en) * 2001-04-09 2004-10-21 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Queue buffer control method
JP2005117131A (en) * 2003-10-03 2005-04-28 Nippon Telegr & Teleph Corp <Ntt> Tcp traffic control method and control apparatus
US20080267068A1 (en) * 2007-04-30 2008-10-30 Lakshman Tirunell V Lightweight bandwidth-management scheme for elastic traffic

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013093761A (en) * 2011-10-26 2013-05-16 Fujitsu Ltd Buffer management program, relay device and control method
JP2013126062A (en) * 2011-12-14 2013-06-24 Kddi Corp Network traffic control device, control method and program
JP2015509310A (en) * 2011-12-29 2015-03-26 トムソン ライセンシングThomson Licensing Network gateway and method for transmitting packets of a data stream
JP2013197956A (en) * 2012-03-21 2013-09-30 Hitachi Ltd Packet relay device, and method
US9112804B2 (en) 2012-05-31 2015-08-18 International Business Machines Corporation Network congestion notification preservation and modification during transmission of network data between physical network and virtual network
US9166923B2 (en) 2012-05-31 2015-10-20 International Business Machines Corporation Network congestion notification preservation and modification during transmission of network data between physical network and virtual network
US9712451B2 (en) 2012-05-31 2017-07-18 International Business Machines Corporation Network congestion notification preservation and modification during transmission of network data between physical network and virtual network
JP2014135533A (en) * 2013-01-08 2014-07-24 Hitachi Ltd Network device, performance control method, and network system
WO2016157914A1 (en) * 2015-04-02 2016-10-06 日本電気株式会社 Network system, communication control method, and recording medium

Also Published As

Publication number Publication date
JP4726978B2 (en) 2011-07-20

Similar Documents

Publication Publication Date Title
JP4726978B2 (en) Congestion control device and congestion control method
US7965738B2 (en) System and method for adaptive frame size management in a wireless multihop network
KR100918731B1 (en) Method of controlling a queue buffer
US9054973B2 (en) Method and system for Ethernet congestion management
JP4822343B2 (en) COMMUNICATION DEVICE CONTROLLING LOAD AND COMMUNICATION NETWORK HAVING THE SAME
WO2002019654A2 (en) Method for improving tcp performance over wireless links
CN111316605A (en) Layer 3 fair rate congestion control notification
JP2006014329A (en) Communication terminal
JP2007060494A (en) Network system, transmitting side sorting device, packet communication method and packet communication program
JP2008507204A (en) How to manage inter-zone bandwidth in a two-way messaging network
WO2011102294A1 (en) High-speed communication system and high-speed communication method
KR20200083582A (en) Systems and methods for accelerating or decelerating data transmission network protocols based on real-time transmission network congestion conditions
CN111224888A (en) Method for sending message and message forwarding equipment
Man et al. ImTCP: TCP with an inline measurement mechanism for available bandwidth
Utsumi et al. A new explicit congestion notification scheme for satellite IP networks
JP4267988B2 (en) Packet transmission amount control method, communication system, communication apparatus, and program
JP2010130329A (en) Communication apparatus and relay apparatus
Ho et al. Performance improvement of delay-based TCPs in asymmetric networks
JP6417225B2 (en) Packet transmission apparatus, communication terminal and slow start control method in packet communication
Cheng et al. Improving the ramping up behavior of TCP slow start
Zaman et al. Multimedia stream rate control over MANET based on router feedback
Ceco et al. Performance comparison of different TCP versions designed for networks with high speeds and over long distances
Magalhaes et al. Improving Performance of Rate-Based Transport Protocols in Wireless Environments
Zaman et al. Explicit Rate Control for MANET
AL-Raddady et al. A new active congestion control mechanism for the Internet

Legal Events

Date Code Title Description
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: 20110405

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

R150 Certificate of patent or registration of utility model

Ref document number: 4726978

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees