JP4726978B2 - 輻輳制御装置及び輻輳制御方法 - Google Patents

輻輳制御装置及び輻輳制御方法 Download PDF

Info

Publication number
JP4726978B2
JP4726978B2 JP2009211957A JP2009211957A JP4726978B2 JP 4726978 B2 JP4726978 B2 JP 4726978B2 JP 2009211957 A JP2009211957 A JP 2009211957A JP 2009211957 A JP2009211957 A JP 2009211957A JP 4726978 B2 JP4726978 B2 JP 4726978B2
Authority
JP
Japan
Prior art keywords
mark
unit
packet
congestion control
buffer length
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
Application number
JP2009211957A
Other languages
English (en)
Other versions
JP2011061699A (ja
Inventor
亮介 横林
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/ja
Publication of JP2011061699A publication Critical patent/JP2011061699A/ja
Application granted granted Critical
Publication of JP4726978B2 publication Critical patent/JP4726978B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、輻輳制御装置及び輻輳制御方法に関し、さらに詳しくは、トラフィック変動予測を用いてパケットの廃棄率を低減する輻輳制御装置及び輻輳制御方法に関するものである。
TCP/IP通信(以下、単にTCPと呼ぶ)を利用した低コストの汎用通信機器は、インターネットのみならず、企業内のプライベートなネットワークへも適用が進んでいる。また、増加するトラフィックに対しては、ネットワーク帯域やパケット転送処理量等の設備容量増強を行うのが基本であるが、増強時期が遅れたり、故障による回線容量の減少時には、トラフィックが集中する箇所で輻輳が発生する。そのとき、通信速度を抑制し、設備容量内にトラフィックを抑えるために輻輳制御が行われる。輻輳制御は、大部分のアプリケーションで転送用プロトコルとして用いるTCPの機能により行われる。TCPは、ネットワークの輻輳によるルータのバッファ・オーバフローによるパケット廃棄を送信端で検出し、一度に送信できるパケット数を決めるウィンドウ・サイズを減少させることによって、ネットワークへのパケット送出を制御し、輻輳を抑制している。
一方、現在、ルータの多くは、輻輳制御としてTail Drop方式を採用している。しかしこの方式では、到着順にパケットをバッファーに蓄積し、バッファーが一杯になると、以降の到着するパケットを全て廃棄することから、トラフィック増加による輻輳時にはパケット廃棄が連続的に発生してしまう。このとき、複数フローに渡ってパケットを廃棄することによって、同期させてウィンドウ・サイズを増減させるTCP同期、およびRTO(Retransmission Time out)と呼ばれる、数秒間待ってから再送を開始する動作が生じ、スループットの低下を招くという問題がある。
このような問題を解決するため、従来からアクティブキュー管理方式が提案されている。その代表的なものにRED(Random Early Detection)がある。REDは、バッファー溢れでパケットが連続して廃棄されることを防止するために、バッファーが一杯になる前に、到着するパケットを確率的に廃棄する方法である。これによって、TCPのパケット送出速度が制御されるとともに、TCP同期等を回避できる。このため、Tail Drop方式に比較して、スループットを改善することができる。また、REDは多くの市販製品のルータに実装されており、使用可否を選択することができる。
しかし、REDにも課題がある。即ち、REDは、図6に示すように平均バッファー長の増加に伴い、パケット廃棄率を増加させる。パケット廃棄率は、平均バッファー長がMINthから増加を始め、平均バッファー長がMAXthのときに、MAXpとなる。そして、平均バッファー長がMAXpを超えると全てのパケットを廃棄する。図中のMINth、MAXth、MAXpの闘値は、REDのパラメータであり、パケット廃棄の程度を決定する。このREDのパラメータが過剰である場合、TCP同期等が多くなり、不足である場合、バッファー溢れによりやはりTCP同期等が多くなる。そのため、REDのスループット改善効果を十分に引き出すためには、REDのパラメータを最適に設定しなければならない。しかし、最適な設定は、トラフィック変動によって異なってくるため非常に困難である。
そこで、トラフィック変動に対応し、REDのパラメータを変動させるARED(Adaptive RED)等が提案されている。ARED等は、平均バッファー長の変化に応じてREDのパラメータを変化させる。しかし、あくまで平均バッファー長を検出した後に制御を行うため、ダイナミックなバッファー長の変動に対する追従性能に限界が生じる。
ここで、輻輳制御に関する従来技術として特許文献1には、ネットワークフィードバックを使用して、将来、いつ輻輳が起きる可能性が高いかを予測し、これらの予測に基づいて、システム内でのエンドユーザの行動を変更して輻輳を抑える技術について開示されている。
また、特許文献2には、トラフィック輻輳を予測するために、ハイパーリンク情報を抽出し、このハイパーリンク情報を集計してリンク情報をIPアドレスごとに生成し、ノード中のトラフィックをIPアドレスごとに測定してトラフィックパターンを生成する。また、トラフィック監視手段が、ノード中のトラフィックをIPアドレスごとに監視してトラフィックパターンと比較する。このトラフィックパターンと現在のトラフィックとの差が閾値以上となった場合に、リンクパターンを参照しつつ、輻輳が発生する可能性を判定することが開示されている。
また、特許文献3には、フロー制御サーバがネットワークのトラフィックの増減を予測して管理サーバにフロー制御指示を発行し、管理サーバは、このフロー制御指示に基づいて各ルータのルーティング情報を制御し、ルーティング制御指示を各ルータに送出し、ルータはルーティング制御指示に基づいて自己のルーティング情報を設定することが開示されている。
また、特許文献4には、輻輳の発生度合いに応じて送信レートを適切に変更し、送信中コネクション数を計測する。そして、予測されたコネクション数と実際の通信中コネクション数に基づいて係数が決定され、この係数を用いて次回のコネクション数を予測することが開示されている。
特開2002−124991公報 特開2004−343466公報 特開2005−110079公報 特開2005−245034公報
しかし、特許文献1に開示されている従来技術は、輻輳を予測するために、予測される輻輳が緩和されるような時刻まで、エンドユーザによって送信されるデータパケットを遅延させるものであり、予測の正確性が必ずしも高いとはいえず、適切な輻輳制御が行われない虞がある。
また、特許文献2に開示されている従来技術は、トラフィックパターンと現在のトラフィックとの差が閾値以上となった場合に、リンクパターンを参照しつつ、輻輳が発生する可能性を判定するため、輻輳制御のタイミングが遅くなるといった問題がある。
また、特許文献3に開示されている従来技術は、トラフィックの増減に関する情報をインターネット上で検索してトラフィックの増減を予測するものであり、トラフィックの増減に関する情報を正確に検索するのが難しいといった問題がある。
また、特許文献4に開示されている従来技術は、あくまでもコネクション数を予測するものであり、予測の正確性が必ずしも高いとはいえず、適切な輻輳制御が行われない虞がある。
本発明は、かかる課題に鑑みてなされたものであり、TCP開始で送信端末又はエッジルータから送信されたSYN/ACKを検出し、FINパケットの手前でデータパケットのヘッダー部に付加されたマークを検出するように構成し、SYN/ACKとマークの検出数に基づいて、トラフィックの変動を予測することにより、平均バッファー長の挙動を早い時期に予測するとともに、REDのパラメータを変動することで、その性能を十分に引き出すことができる輻輳制御装置及び輻輳制御方法を提供することを目的とする。
本発明はかかる課題を解決するために、請求項1は、トラフィック変動予測を用いたTCP/IP通信ネットワークにおける輻輳制御装置であって、接続側からの接続要求に対して送信端からの接続許可と接続要求を組み合わせたパケットを検出するSYN/ACK検出部と、前記送信端において通信終了の直前のデータパケットに付加されたマークを検出するマーク検出部と、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するパケット・マーク計数部と、該パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するトラフィック変動予測部と、該トラフィック変動予測部により予測した平均バッファー長がトラフィックの増減に連動することに鑑みて、該平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるREDパラメータ変動部と、前記各部を制御する制御部と、を備えたことを特徴とする。
本発明は、ルータにおけるトラフィック変動予測を用いてパケットの廃棄率を低減する輻輳制御装置及び輻輳制御方法に関する発明である。即ち、コアルータ内に送信端から送られたSYN/ACKパケットと、通信終了の数パケット手前のデータパケットに付加されたマークとを検出して夫々を計数しておき、この計数値の増減或いは差分に基づいてREDパラメータを変動させることにより、REDによるパケットの廃棄率の低減を図る発明である。これにより、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。また、平均バッファー長の挙動を従来より早い時期に予測することができれば、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。そこで本発明では、接続側において通信終了の直前のデータパケットにマークを付加して、送信端でそのマークを通信終了前に検出する。これにより、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。
請求項は、前記制御部は、前記パケット・マーク計数部により計数したパケット数が増加して前記マーク数が減少した場合は、前記平均バッファー長が増加すると予測して前記ランダム初期検知に係るパラメータを変動させることを特徴とする。
計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きい場合である。即ち、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させる。これにより、早い時期に平均バッファー長の大きさが予測できるので、適切な追従性能を実現することができる。
請求項は、前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値を超えた場合は、前記平均バッファー長が急増すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくすることを特徴とする。
計数したパケット数とマーク数の差分が所定の閾値を超えて大きくなるときは、平均バッファー長が急増すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、早めにパケット廃棄を促進することで、輻輳を制御し、バッファー溢れによる連続的な廃棄を回避することができる。
請求項は、前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値以下の場合は、前記平均バッファー長が急減すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくすることを特徴とする。
計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、早めにパケット廃棄を抑制することで、必要以上の過剰な廃棄を回避することができる。
請求項は、前記マークは、少なくともIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットであることを特徴とする。
送信端でヘッダー部に付加するマークは、受信端のTCPに何等影響を与えないものでなければならないことが本発明の必要条件であり、その必要条件を満たすための方法の一例として、付加するマークをIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットとする。これにより、受信端のTCPに影響を与えずに通信を行うことができる。
請求項は、複数の送信端の回線を集約しているルータをエッジルータとし、それ以外のルータをコアルータとした場合、前記送信端の代わりに前記エッジルータで前記マークを付加するように構成したことを特徴とする。
送信端(以下、サーバという)でマークを付けて、ルータでマークを読み取るという協調動作においては、サーバとルータの各メーカーが同一の技術仕様を採用することに合意する必要がある。これは、技術的要素以外の要素が絡むために、一般的には実現が難しくなりがちである。また、仮に合意できたとしても、サーバとルータを新規で導入する場合は良いが、既存の設備を逐次、更新していく場合は、サーバの数が多ければ多いほど、各サーバの更新タイミングに差があるため、実現が困難となる。そこで本発明では、サーバの代わりにエッジルータでマークを付けるようにすれば、エッジルータで付けたマークをコアルータで読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
請求項は、SYN/ACK検出部、マーク検出部、パケット・マーク計数部、トラフィック変動予測部、REDパラメータ変動部、及び制御部を備えた輻輳制御装置の輻輳制御方法であって、前記SYN/ACK検出部が、接続側からの接続要求に対して送信端からの接続許可と接続要求を組み合わせたパケットを検出するステップと、前記マーク検出部が、前記送信端において通信終了の直前のデータパケットに付加されたマークを検出するステップと、前記パケット・マーク計数部が、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するステップと、前記トラフィック変動予測部が、前記パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するステップと、前記REDパラメータ変動部が、前記トラフィック変動予測部により予測した平均バッファー長がトラフィックの増減に連動することに鑑みて、該平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるステップと、前記制御部が、前記各部を制御するステップと、
を備えたことを特徴とする。
本発明は請求項1と同様の作用効果を奏する。

本発明によれば、コアルータ内に送信端から送られたSYN/ACKパケットと、通信終了の数パケット手前のデータパケットに付加されたマークとを検出して夫々を計数しておき、この計数値の増減或いは差分に基づいてREDパラメータを変動させることにより、REDによるパケットの廃棄率の低減を図るので、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。
また、接続側において通信終了の直前のデータパケットにマークを付加して、被接続側でそのマークを通信終了前に検出するので、REDのパラメータの動的な設定に早くから取り掛かることができ、追従性能を向上させることができる。
また、計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きく、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させることにより、早い時期に平均バッファー長の大きさが予測でき、適切な追従性能を実現することができる。
また、計数したパケット数とマーク数の差分が所定の閾値を超えて大きくなるときは、平均バッファー長が急増すると予測でき、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、パケットの廃棄数を減少させるので、平均バッファー長が急増しても、全てのパケットを廃棄する数を抑制することができる。
また、計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測でき、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、パケットの廃棄数を減少させるので、平均バッファー長が急減した場合は、更にパケットを廃棄する数を抑制することができる。
また、マークは、IPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットとするので、受信端のTCPに影響を与えずに通信を行うことができる。
また、サーバの代わりにエッジルータでマークを付けるようにすれば、エッジルータで付けたマークをコアルータで読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
本発明の一実施形態に係る輻輳制御方法の概略を示すフロー図である。 ネットワーク図の一例を示す図である。 送信端と受信端の間で行われるパケットのやり取りの一例を示すシーケンス図である。 本発明の輻輳制御装置をコアルータ内に備えた場合の機能を説明するブロック図である。 本発明の輻輳制御装置の動作について説明するフローチャートである。 平均バッファー長とパケット廃棄率の関係を示す図である。
以下、本発明を図に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
図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)。
尚、送信端でヘッダー部に付ける印は、受信端のTCPに何ら影響を与えないものでなければならない。そのため、例えば、IPへッダーやTCPへッダー中のオプションフィールドに付加するビットや、TCPへッダー中に付加するURGビットがある。なお、付加した印は、ルータで認識後、除去してもよい。送信端でヘッダー部に印を付ける機能は、送信端末(サーバなど)に実装する必要があるが、端末数が多いほど、難しくなる場合がある。そこで、ルータ間で協調動作することで、ルータに実装するだけで済む方法について図2を参照して説明する。
図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)パケットの返信タイミングを調整したり、一度に受け取ることのできるパケット量の通知を増減することによって行われる。
また、エッジルータ2は、コアルータ4へ送信するパケットのヘッダー部に印を付ける機能を持ち、その印はコアルータ4によって読み取られ、REDの制御に用いられる。このような動作は、その必要性の生じる輻輳時に限って行う仕組みとしても良い。コアルータ4で輻輳が発生した場合、REDによってパケットが廃棄され、エッジルータ2は、これを検出してウィンドウ・サイズを減少させ、コアルータ4側の通信速度を下げる。同時に、送信端側の通信速度を下げる制御を行うこととなる。
即ち、送信端(以下、サーバという)でマークを付けて、ルータでマークを読み取るという協調動作においては、サーバとルータの各メーカーが同一の技術仕様を採用することに合意する必要がある。これは、技術的要素以外の要素が絡むために、一般的には実現が難しくなりがちである。また、仮に合意できたとしても、サーバとルータを新規で導入する場合は良いが、既存の設備を逐次、更新していく場合は、サーバの数が多ければ多いほど、各サーバの更新タイミングに差があるため、実現が困難となる。そこで本発明では、サーバの代わりにエッジルータ2でマークを付けるようにすれば、エッジルータ2で付けたマークをコアルータ4で読み取るというルータ間の協調動作となって、ルータのメーカーだけで技術仕様を採用すれば良くなるため、実現が容易となる。
図3は送信端と受信端の間で行われるパケットのやり取りの一例を示すシーケンス図である。この例では、送信端をエッジルータ、受信端をコアルータとして説明する。まず、接続側である受信端から接続要求(SYN)を接続される側(以下、被接続側と呼ぶ)である送信端に送信する。SYNを受信した送信端は接続許可(ACK)と接続要求(SYN)を組み合わせたパケットを受信端に返送する。受信端はSYN/ACKを検出して、接続許可(ACK)を送信端に返送する。これをスリーウェイ・ハンドシェイクと呼び、コネクションが確立する。これにより、送信端はデータの送信が可能となる。ここで、TCPでは、効率的に通信を行うために受信端が受信可能なウィンドウ・サイズを広告するが、いきなりウィンドウ・サイズでデータを送信するのではなく、最初はウィンドウ・サイズ以下のデータ量を送信する。そして、ACKを受信する度に送信するセグメント数を増加していくことで、帯域の有効活用が図れる。送信端は送信終了の数パケット手前のデータパケットにマークMを付加する。そのマークMは受信端で検出される。最後に送信端は通信終了を知らせるFINパケットを受信端に送り、受信端ではACK/FINを送信端に送り、送信端からACKを受信することにより通信が終了する。以上が1対1の送信端と受信端の間での1つのフローについて説明したが、図2のコアルータには複数のエッジルータからランダムにパケットが到達するため、SYN/ACKとマークMを検出するたびに、その数を計数しておき、計数した数に基づいてトラフィックの変動を予測する。
図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によるパケットの廃棄率の低減を図る。これにより、平均バッファー長の挙動を早い時期に予測することが可能となって、パケットの廃棄率を低減することができる。
図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)。
計数したパケット数が増加してマーク数が減少した場合は、ウィンドウ・サイズが大きい場合である。即ち、それにより平均バッファー長が増加すると予測されるので、その平均バッファー長に基づいた値にREDパラメータを変動させる。これにより、早い時期に平均バッファー長の大きさが予測できるので、適切な追従性能を実現することができる。
また、計数したパケット数とマーク数の差分が所定の閾値を超えて急激に大きくなるときは、平均バッファー長が急増すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくして、パケットの廃棄数を減少させる。これにより、平均バッファー長が急増しても、全てのパケットを廃棄することを抑制することができる。
また、計数したパケット数とマーク数の差分が所定の閾値以下になるときは、平均バッファー長が急減すると予測できる。このような時は、平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくして、パケットの廃棄数を減少させる。これにより、平均バッファー長が急減した場合は、更にパケットを廃棄することを抑制することができる。
1 送信端、2 エッジルータ、3 ネットワーク、4 コアルータ、5 インターフェース、6 SYN/ACK検出部、7 マーク検出部、8 パケット・マーク計数部、9 制御部、10 トラフィック変動予測部、11 REDパラメータ変動部、50 輻輳制御装置

Claims (7)

  1. トラフィック変動予測を用いたTCP/IP通信ネットワークにおける輻輳制御装置であって、
    接続側からの接続要求に対して送信端からの接続許可と接続要求を組み合わせたパケットを検出するSYN/ACK検出部と、
    前記送信端において通信終了の直前のデータパケットに付加されたマークを検出するマーク検出部と、
    前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するパケット・マーク計数部と、
    該パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するトラフィック変動予測部と、
    該トラフィック変動予測部により予測した平均バッファー長がトラフィックの増減に連動することに鑑みて、該平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるREDパラメータ変動部と、
    前記各部を制御する制御部と、
    を備えたことを特徴とする輻輳制御装置。
  2. 前記制御部は、前記パケット・マーク計数部により計数したパケット数が増加して前記マーク数が減少した場合は、前記平均バッファー長が増加すると予測して前記ランダム初期検知に係るパラメータを変動させることを特徴とする請求項に記載の輻輳制御装置。
  3. 前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値を超えた場合は、前記平均バッファー長が急増すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を大きくすることを特徴とする請求項に記載の輻輳制御装置。
  4. 前記制御部は、前記パケット・マーク計数部により計数したパケット数と前記マーク数の差分が所定の閾値以下の場合は、前記平均バッファー長が急減すると予測して、前記平均バッファー長が最大閾値に達したときにパケットを廃棄する割合を小さくすることを特徴とする請求項に記載の輻輳制御装置。
  5. 前記マークは、少なくともIPヘッダー又はTCPヘッダー中のオプションフィールドに付加するビット、又はTCPヘッド中に付加するURGビットであることを特徴とする請求項1乃至の何れか一項に記載の輻輳制御装置。
  6. 複数の送信端の回線を集約しているルータをエッジルータとし、それ以外のルータをコアルータとした場合、サーバの代わりに前記エッジルータで前記マークを付加するように構成したことを特徴とする請求項1乃至の何れか一項に記載の輻輳制御装置。
  7. SYN/ACK検出部、マーク検出部、パケット・マーク計数部、トラフィック変動予測部、REDパラメータ変動部、及び制御部を備えた輻輳制御装置の輻輳制御方法であって、
    前記SYN/ACK検出部が、接続側からの接続要求に対して送信端からの接続許可と接続要求を組み合わせたパケットを検出するステップと、
    前記マーク検出部が、前記送信端において通信終了の直前のデータパケットに付加されたマークを検出するステップと、
    前記パケット・マーク計数部が、前記SYN/ACK検出部により検出したパケット数及び前記マーク検出部により検出したマーク数を夫々計数するステップと、
    前記トラフィック変動予測部が、前記パケット・マーク計数部により計数した夫々の計数結果に基づいてトラフィックの変動を予測するステップと、
    前記REDパラメータ変動部が、前記トラフィック変動予測部により予測した平均バッファー長がトラフィックの増減に連動することに鑑みて、該平均バッファー長の変動量に基づいてランダム初期検知に係るパラメータを変動させるステップと、
    前記制御部が、前記各部を制御するステップと、
    を備えたことを特徴とする輻輳制御装置の輻輳制御方法。
JP2009211957A 2009-09-14 2009-09-14 輻輳制御装置及び輻輳制御方法 Expired - Fee Related JP4726978B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009211957A JP4726978B2 (ja) 2009-09-14 2009-09-14 輻輳制御装置及び輻輳制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009211957A JP4726978B2 (ja) 2009-09-14 2009-09-14 輻輳制御装置及び輻輳制御方法

Publications (2)

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

Family

ID=43948783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009211957A Expired - Fee Related JP4726978B2 (ja) 2009-09-14 2009-09-14 輻輳制御装置及び輻輳制御方法

Country Status (1)

Country Link
JP (1) JP4726978B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5919727B2 (ja) * 2011-10-26 2016-05-18 富士通株式会社 バッファ管理のためのプログラム、中継装置及び制御方法
JP5783632B2 (ja) * 2011-12-14 2015-09-24 Kddi株式会社 ネットワークトラヒック制御装置、制御方法、およびプログラム
CN104025519A (zh) * 2011-12-29 2014-09-03 汤姆逊许可公司 传送数据流的分组的网络网关和方法
JP5804992B2 (ja) * 2012-03-21 2015-11-04 株式会社日立製作所 パケット中継装置、及び方法
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
JP6014932B2 (ja) * 2013-01-08 2016-10-26 株式会社日立製作所 ネットワーク装置、性能制御方法及びネットワークシステム
WO2016157914A1 (ja) * 2015-04-02 2016-10-06 日本電気株式会社 ネットワークシステム、通信制御方法、及び、記録媒体

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1249972A1 (en) * 2001-04-09 2002-10-16 Telefonaktiebolaget L M Ericsson (Publ) Method of controlling a queue buffer
JP2005117131A (ja) * 2003-10-03 2005-04-28 Nippon Telegr & Teleph Corp <Ntt> Tcpトラヒック制御方法および制御装置
US8289851B2 (en) * 2007-04-30 2012-10-16 Alcatel Lucent Lightweight bandwidth-management scheme for elastic traffic

Also Published As

Publication number Publication date
JP2011061699A (ja) 2011-03-24

Similar Documents

Publication Publication Date Title
JP4726978B2 (ja) 輻輳制御装置及び輻輳制御方法
US7200111B2 (en) Method for improving TCP performance over wireless links
KR100918731B1 (ko) 큐 버퍼를 제어하는 방법
US7965738B2 (en) System and method for adaptive frame size management in a wireless multihop network
CN106062726B (zh) 用于数据中心交换机的流感知缓冲区管理
US20160057065A1 (en) Re-marking of packets for queue control
JP2006014329A (ja) 通信端末
EP2195980A1 (en) Method, system, and computer program product for adaptive congestion control on virtual lanes for data center ethernet architecture
JP2008507204A (ja) 二方向メッセージングネットワークでゾーン間帯域を管理する方法
WO2011102294A1 (ja) 高速通信システム及び高速通信方法
KR20200083582A (ko) 실시간 전송 네트워크 혼잡 조건에 기초하여 데이터 전송 네트워크 프로토콜을 가속 또는 감속하기 위한 시스템 및 방법
CN111224888A (zh) 发送报文的方法及报文转发设备
Jamali et al. An improvement over random early detection algorithm: a self-tuning approach
Ayar et al. A transparent reordering robust TCP proxy to allow per-packet load balancing in core networks
Ho et al. Performance improvement of delay-based TCPs in asymmetric networks
Shihada et al. Threshold-based TCP Vegas over optical burst switched networks
Felix et al. CD-ASM: A new queuing paradigm to overcome bufferbloat effects in HetNets
Cheng et al. Improving the ramping up behavior of TCP slow start
JP6417225B2 (ja) パケット通信におけるパケット送信装置、通信端末及びスロースタート制御方法
Zaman et al. Multimedia stream rate control over MANET based on router feedback
AL-Raddady et al. A new active congestion control mechanism for the Internet
Zaman et al. Explicit rate control for MANET
Magalhaes et al. Improving Performance of Rate-Based Transport Protocols in Wireless Environments
Han Performance research and improvement of TCP_SACK in wireless environment
Loureiro et al. What if the end systems knew the bandwidth available in the network?

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