JP6491521B2 - パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法 - Google Patents

パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法 Download PDF

Info

Publication number
JP6491521B2
JP6491521B2 JP2015081303A JP2015081303A JP6491521B2 JP 6491521 B2 JP6491521 B2 JP 6491521B2 JP 2015081303 A JP2015081303 A JP 2015081303A JP 2015081303 A JP2015081303 A JP 2015081303A JP 6491521 B2 JP6491521 B2 JP 6491521B2
Authority
JP
Japan
Prior art keywords
rtt
congestion
packet
round
congestion window
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
JP2015081303A
Other languages
English (en)
Other versions
JP2016201705A (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.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2015081303A priority Critical patent/JP6491521B2/ja
Publication of JP2016201705A publication Critical patent/JP2016201705A/ja
Application granted granted Critical
Publication of JP6491521B2 publication Critical patent/JP6491521B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、パケット通信によってデータを伝送するパケット通信におけるパケット送信装置、通信端末及び輻輳制御方法に関する。
品質の保証がされていないベストエフォートタイプのIP(Internet Protocol)ネットワークでは、ネットワーク機器内部でのバッファ溢れや、伝送中のビットエラー等によって送信パケットの廃棄が発生する。そのため、確実にデータを伝送するための送達確認を行うプロトコルとしてTCP(Transmission Control Protocol)が幅広く利用されている(例えば、非特許文献1参照)。
例えば、図4に示すように、TCPを利用して相互通信接続を行う通信端末10,20において、通信端末10にはパケット送信装置11及びパケット受信装置12が設けられ、通信端末20にはパケット受信装置21及びパケット送信装置22が設けられる。パケット送信装置11及びパケット受信装置21とパケット送信装置22及びパケット受信装置12はそれぞれ同様の機能を有し、代表してパケット送信装置11及びパケット受信装置21に注目して説明する。パケット送信装置11は、データ送信用パケットを所定の通信路を介してパケット受信装置21に送信すると、パケット受信装置21は、受信した旨の報告として送達確認応答パケットをパケット送信装置11に送信する。
より具体的には、TCPでは、パケット受信装置21がパケットを受信すると、受信した旨の報告として、次に送信を要求するパケットの番号をパケット送信装置11に通知する。そして、パケット送信装置11は、パケット受信装置21から通知される報告に基づいて、パケットが正常にパケット受信装置21に到達したことを確認する。パケット送信装置11は、パケット受信装置21から通知される報告に基づいて、送達確認応答なしに送出可能なパケットの数を表す輻輳ウインドウサイズ(CWND:Congestion Window Size)を調整する。例えばパケットが正常に受信された場合はCWNDを拡大し、パケットロスが検出された場合はCWNDを縮小する。
このCWNDを調整する技法は輻輳制御技法と呼ばれ、通信の状態によってその制御技法が切り替えられる。一般的には通信開始時やTCPタイムアウト後に適用される「スロースタートフェーズ」、通信が安定している際に適用される「輻輳回避フェーズ」、ロスパケットを再送するための「ロスリカバリフェーズ」といったフェーズに応じて輻輳制御技法を切り替える。
TCP NewRenoは、輻輳回避フェーズでは送達確認応答を受信する度に、式(1)によりCWNDを拡大する(例えば、非特許文献2参照)。尚、MSSはパケットに含まれるデータの最大バイト数である。
CWND = CWND + MSS/CWND (1)
また、パケットロスが発生した場合には式(2)によりCWNDを縮小する。
CWND = max(CWND_MIN, CWND/2) (2)
CWND_MINはCWNDが取りうる最小の値である。このように、パケットロスが発生するまでCWNDを拡大し続ける技法を一般に「ロスベース技法」と呼ぶ。
一方、TCP Vegasは、輻輳回避フェーズでは1往復遅延時間(RTT:Round Trip Time)毎に、式(3)によりCWNDを更新する(例えば、非特許文献3参照)。
diff = CWND/RTTbase − CWND/RTTmin (3)
if diff > β
then CWND = CWND − MSS
ssthresh = min(CWND, ssthresh)
else if diff <α
then CWND = CWND + MSS
else CWND = CWND
ここに、RTTbaseは通信を開始してから(但し、通信開始後にTCPタイムアウトが発生している場合は、直近のTCPタイムアウト後から)現時点までに計測した最小のRTT、RTTminは予め定めたパケット遅延量に関する計測期間内におけるRTTについて直前の1計測期間で計測した最小のRTTである。また、α,βは、予め定めたパラメータである。さらに、ssthreshは、スロースタートフェーズにおけるCWNDの拡大・縮小を決めるのに用いるスロースタート閾値である。このようにRTTを用いてCWNDを増減する技法を一般に「遅延ベース技法」と呼ぶ。
また、TCP Westwoodはロスベース技法と遅延ベース技法を組み合わせており、「ハイブリッド技法」と呼ばれる(例えば、非特許文献4参照)。TCP Westwoodは送達確認応答を受信すると、TCP NewRenoと同じようにCWNDを拡大する。パケットロスが発生した場合には式(4)によりCWNDを縮小する。
ssthresh = BWE × RTTbase (4)
CWND = min(CWND, ssthresh)
BWEは使用帯域であり、CWND/RTTで計算される。パケットロス発生時にCWNDを縮小する点はロスベース技法と同様だが、その縮小量は遅延ベース技法のようにRTTbaseを用いて決定する。
また、Vegasのように遅延増加時にもCWNDを縮小させることができるが、その縮小幅をWestwoodのように使用帯域とRTTbaseを用いて決定する技法が開示されている(例えば、特許文献1参照)。
これらの従来技術を総括するに、ロスベース技法においてはパケットロス発生時にCWNDの縮小幅を制御するためにRTTbaseを基準に用いるように構成することがあり、一方、遅延ベース技法においては、RTTbaseを遅延増加判定の閾値に用いるように構成する。例えば、ロスベース技法や遅延ベース技法における、そのパケット送信装置11の概略構成を示すと、図5のようになる。図5に示すパケット送信装置11は、後述する本発明との対比に係る機能ブロックのみを図示したものであり、送達確認を行うパケット通信方式のパケット送信装置としてその他の必要な機能は、従来から知られている既知の技術と同様の構成とすることができ、その詳細な説明は省略する。まず、図5に示す従来技術に基づくパケット送信装置11は、送信時刻書込部111、パケット送信部112、送達確認応答受信部113、輻輳ウインドウ制御部114、及び輻輳判定部115を備える。
送信時刻書込部111は、パケット送信時に送信時刻を記録する。この送信時刻は、パケット送信装置11の本体内メモリ(図示せず)にパケット番号とともに記録することができる。或いは、TCPのタイムスタンプオプションを用いて記録することもできる。
パケット送信部112は、パケット受信装置21に向けてパケットを送信する。その後、送達確認応答受信部113は、パケット受信装置21から通知される送達確認応答パケットを受信すると、次の処理を開始する。
送達確認応答受信部113は、送達確認応答パケットを受信すると、パケットロスが発生しているか否かの判定を行い、パケットロスの判定結果、及び送達確認応答パケットを輻輳ウインドウ制御部114へ通知する。パケットロスの判定には、例えば送達確認応答パケットに含まれる送達確認番号が同じパケットを3回受信した場合とする方法がある。
輻輳ウインドウ制御部114は、パケットロスの判定結果を基に、パケットロスが発生していた場合、式(1)〜(4)のいずれかによりCWNDを更新し、パケット送信部112におけるパケット送信の輻輳ウインドウを制御し、パケットロスが発生していない場合、パケット送信部112からのパケット送信から送達確認応答パケットを受信するまでにかかったRTTを計算する。RTTの計算は、本体内メモリに記録した送信時刻と受信時刻の差とすることができる。或いは、TCPタイムスタンプオプションを用いることができる。そして、輻輳ウインドウ制御部114は、RTTbaseを更新して(RTTminを用いる際には、RTT及び送達確認応答パケットを基にRTTminを更新して)、輻輳判定部115により、RTTbaseを遅延増加判定の閾値に用いて(或いはRTTminも用いて)パケット遅延量を判別して輻輳判定を行わせ、CWNDを更新する。このようにして、ロスベース技法や遅延ベースの輻輳制御を行う。
ロスベース技法はパケットロスが発生するまでCWNDを拡大するため、必ずパケットロスが発生する一方で、遅延ベース技法は遅延増加量を検出した時点でCWNDを減少するためパケットロスの発生を防ぐことが可能となるが、通信回線を共有するIPデータフロー間での公平性についての問題があり、この評価に関する文献が開示されている(例えば、非特許文献5参照)。
特許第4632874号明細書
"RFC793 Transmission Control Protocol"、[online]、昭和56(西暦1981)年9月策定、DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION、[平成27年3月9日検索]、インターネット〈URL:http://www.rfc-base.org/txt/rfc-793.txt〉 "RFC6582 The NewReno Modification to TCP’s Fast Recovery Algorithm"、[online]、平成24(西暦2012)年4月策定、Internet Engineering Task Force (IETF)、[平成27年3月9日検索]、インターネット〈URL:https://tools.ietf.org/html/rfc6582〉 Lawrence S. Brakmo, Larry L. Peterson,"TCP Vegas: End to End Congestion Avoidance on a Global Internet," [online]、 Selected Areas in Communications, IEEE Journal on Volume:13 , Issue: 8, pp.1465-1480, Oct. 1995,[平成27年3月9日検索]、インターネット〈URL:http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=464716&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D464716〉 M. Gerla, M. Y. Sanadidi, R. Wang, A. Zanella, C. Casetti and S. Mascolo, "TCP Westwood: congestion window control using bandwidth estimation," [online]、IEEE Global Telecommunications Conference 2001, vol.3, pp.1698-1702, 2001,[平成27年3月9日検索]、インターネット〈URL:http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=965869&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D965869〉 小山智史、青木勝典及び池田哲臣、"データリンクレイヤによる遅延を考慮したディレイベースTCPのスループット公平性の評価"、[online]、一般社団法人電子情報通信学会、電子情報通信学会総合大会講演論文集、電子情報通信学会総合大会講演論文集 2014年_通信(2), 153, 2014年03月04日、[平成27年3月9日検索]、インターネット〈URL:http://ci.nii.ac.jp/naid/110009849644〉
ロスベース技法はパケットロスが発生するまでCWNDを拡大するため、必ずロスが発生する。一方、遅延ベース技法は遅延の増加を検出した時点でCWNDを縮小するため、パケットロスの発生を防ぐことが可能である。しかし、回線を共有するIPデータフロー間での使用帯域の公平性について問題があった。
例えば、或る回線にまずIPデータフロー1(F1)が発生したとする。F1はこの回線を使い切り、遅延が増加するまでCWNDを拡大する。そして、遅延が少し増加したところでCWNDの拡大を止める。F1のRTTbase(F1_RTTbase)は回線が空いた状態で計測したRTTとなる。
次に、IPデータフロー2(F2)が発生したとする。F2は既にF1により遅延が増加した状態の回線にパケットを送信するため、F2のRTTbase(F2_RTTbase)はF1_RTTbaseよりも大きい値となる。従って、F1とF2で同じRTTminを計測したとしてもF1が先にCWNDを縮小するスレッショルドを超えるため、F1ばかりがCWNDを縮小することとなり、使用帯域に不公平が生ずる。
TCP Westwoodの場合も同様に、RTTbaseを基にCWNDを計算するため、上記のようにRTTbaseの値に不公平が生ずると、使用帯域にも不公平が生ずる。
特許文献1の技法も同様に、RTTbaseを用いた遅延増加判定とCWNDの更新を行うため、RTTbaseの値に不公平が生ずると使用帯域にも不公平が生ずる。
一方、非特許文献5では、RTTbaseをパケットロスの発生時、又は輻輳判定時にリセットするよう構成し、複数フロー間でRTTbaseを同一にして、使用帯域の不公平が生じないようにすることができる。しかしながら、この構成では、RTTbaseを増加させる方向に更新していくため、複数フロー存在時に、遅延が大きくなることがある。
本発明の目的は、上述の問題に鑑みて、送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行うパケット送信装置、通信端末及び輻輳制御方法を提供することにある。
本発明では、輻輳判定を行う際に、通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は、直近のTCPタイムアウト後から、現時点(換言すれば直近のRTTの算出時点)までに計測した最小のRTTであるRTTbaseを用いる代わりに、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点(RTTの算出時点)までに計測した最小のRTTであるRTTbaseTmpを用いることで、複数フロー存在時における遅延が大きくなることを抑制する。
従って、RTTbaseTmpは、輻輳ウインドウサイズ(CWND)の更新処理で、CWNDの減少を行う更新処理が発生する度に、予め定めた通信上の取りうる最大の値に初期化(リセット)されるものである。また、判定された輻輳時のCWNDの減少を行う更新処理の計算には、RTTbaseを用いることで、複数のIPデータフローの使用帯域の公平性を改善する。
即ち、本発明のパケット送信装置は、送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行うパケット送信装置であって、パケット送信の送達確認に基づく往復遅延時間(RTT)を算出する手段と、予め定めたパケット遅延量に関する計測期間内における当該往復遅延時間(RTT)に関して、直前の1計測期間内で計測した最小の値である計測期間内最小の往復遅延時間(RTTmin)、通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は直近のTCPタイムアウト後から、現時点までに計測した最小の値である輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点までに計測した最小の値である輻輳判定基準の往復遅延時間(RTTbaseTmp)と、を保持し、当該往復遅延時間(RTT)を算出する度に、前記計測期間内最小の往復遅延時間(RTTmin)、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を更新する手段と、パケットロスの未発生時に、当該往復遅延時間(RTT)を算出した現時点から2計測期間前のCWNDの値である輻輳ウインドウサイズの更新パラメータ(cwnd2)、前記計測期間内最小の往復遅延時間(RTTmin)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を用いた所定の輻輳判定式により、輻輳判定を行う手段と、パケットロスの未発生時、及び輻輳未発生時に、既定の計算式に基づいて輻輳ウインドウサイズを拡大可能に更新する、輻輳ウインドウサイズの第1の更新手段と、パケットロスの発生時、及び輻輳発生時に、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)を用いた予め定めた更新式により、前記減少イベントを含み輻輳ウインドウサイズを縮小可能に更新する、輻輳ウインドウサイズの第2の更新手段と、を備えることを特徴とする。
また、本発明のパケット送信装置において、前記輻輳判定を行う手段は、予め定めたパラメータ(a)を用いて、
cwnd2×(RTTmin−RTTbaseTmp)/RTTmin>a
を満たす場合に輻輳と判定することを特徴とする。
また、本発明のパケット送信装置において、前記第2の更新手段は、予め定めたパラメータ(b)を用いて、
cwnd=cwnd2×RTTbase/RTTmin×b
を満たすように輻輳ウインドウサイズを更新することを特徴とする。
更に、本発明の通信端末は、本発明のパケット送信装置を備えることを特徴とする。
更に、本発明の輻輳制御方法は、送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行う輻輳制御方法であって、パケット送信の送達確認に基づく往復遅延時間(RTT)を算出するステップと、予め定めたパケット遅延量に関する計測期間内における当該往復遅延時間(RTT)に関して、直前の1計測期間内で計測した最小の値である計測期間内最小の往復遅延時間(RTTmin)、通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は直近のTCPタイムアウト後から、現時点までに計測した最小の値である輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点までに計測した最小の値である輻輳判定基準の往復遅延時間(RTTbaseTmp)と、を保持し、当該往復遅延時間(RTT)を算出する度に、前記計測期間内最小の往復遅延時間(RTTmin)、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を更新するステップと、パケットロスの未発生時に、当該往復遅延時間(RTT)を算出した現時点から2計測期間前のCWNDの値である輻輳ウインドウサイズの更新パラメータ(cwnd2)、前記計測期間内最小の往復遅延時間(RTTmin)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を用いた所定の輻輳判定式により、輻輳判定を行うステップと、パケットロスの未発生時、及び輻輳未発生時に、既定の計算式に基づいて輻輳ウインドウサイズを拡大可能に更新するステップと、パケットロスの発生時、及び輻輳発生時に、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)を用いた予め定めた更新式により、前記減少イベントを含み輻輳ウインドウサイズを縮小可能に更新するステップと、を含むことを特徴とする。
本発明によれば、遅延増加を抑制しながら複数のフローの公平性を改善することができる。
本発明による一実施形態のパケット送信装置におけるブロック図である。 本発明による一実施形態のパケット送信装置における輻輳判定方法を示すフローチャートである。 (A),(B)は、本発明による一実施形態のパケット送信装置に係るパケット遅延量に関する計測期間の説明図である。 TCPを利用して相互通信接続を行う通信端末のネットワーク接続例を説明する図である。 従来技術に基づくパケット送信装置におけるブロック図である。
以下、図面を参照して、本発明による一実施形態のパケット送信装置、通信端末及び輻輳制御方法を説明する。
(装置構成)
図1は、本発明による一実施形態のパケット送信装置11aにおけるブロック図である。パケット送信装置11aは、図5に示すパケット送信装置11に置き換えて、図4に示す通信端末10に設ける装置である。同様に、通信端末20に対しても、パケット送信装置22に置き換えてパケット送信装置11aと同様の構成を設けることができる。したがって、図4に示すように、TCPを利用して相互通信接続を行う通信端末10,20において、パケット送信装置11aは、データ送信用パケットを所定の通信路を介してパケット受信装置21に送信すると、パケット受信装置21は、受信した旨の報告として送達確認応答パケットをパケット送信装置11aに送信する。尚、図1に示すパケット送信装置11aは、本発明に係る機能ブロックのみを図示したものであり、送達確認を行うパケット通信方式のパケット送信装置としてその他の必要な機能は、従来から知られている既知の技術と同様の構成とすることができ、その詳細な説明は省略する。
図1に示すように、本実施形態のパケット送信装置11aは、送信時刻書込部111、パケット送信部112、送達確認応答受信部113、輻輳ウインドウ制御部114a、輻輳判定部115a及び輻輳ウインドウ計算部116aを備える。尚、図5に示すパケット送信装置11と比較して、本実施形態のパケット送信装置11aは、輻輳ウインドウ制御部114及び輻輳判定部115を備える代わりに、輻輳ウインドウ制御部114a、輻輳判定部115a及び輻輳ウインドウ計算部116aを備える点で相違しており、同様な構成要素には同一の参照番号を付している。
送信時刻書込部111は、パケット送信時に送信時刻を記録する。この送信時刻は、パケット送信装置11の本体内メモリ(図示せず)にパケット番号とともに記録することができる。或いは、TCPのタイムスタンプオプションを用いて記録することもできる。
パケット送信部112は、パケット受信装置21に向けてパケットを送信する。その後、送達確認応答受信部113は、パケット受信装置21から通知される送達確認応答パケットを受信すると、次の処理を開始する。
送達確認応答受信部113は、送達確認応答パケットを受信すると、パケットロスが発生しているか否かの判定を行い、パケットロスの判定結果、及び送達確認応答パケットを輻輳ウインドウ制御部114aへ通知する。パケットロスの判定には、例えば送達確認応答パケットに含まれる送達確認番号が同じパケットを3回受信した場合とする方法がある。
輻輳ウインドウ制御部114aは、パケットロスの判定結果を基に、パケットロスが発生していた場合、後述する「CWNDの第2の更新処理」により、輻輳ウインドウ計算部116aにより新たなCWNDを計算させ、CWNDを更新する。このときの「CWNDの第2の更新処理」により、CWNDを縮小させることができる。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
また、輻輳ウインドウ制御部114aは、パケットロスの判定結果を基に、パケットロスが発生していなかった場合、RTTを計算する。RTTは本体内メモリに記録した送信時刻と受信時刻の差とすることができる。または、TCPタイムスタンプオプションを用いることができる。そして、輻輳ウインドウ制御部114aは、RTTbaseTmpと、RTTbase及びRTTminを更新する。ここに、従来技法と同様に、RTTbaseは通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は直近のTCPタイムアウト後から、現時点(換言すれば直近のRTTの算出時点)までに計測した最小のRTT、RTTminは予め定めたパケット遅延量に関する計測期間内におけるRTTについて直前の1計測期間で計測した最小のRTTである。
一方、RTTbaseTmpは、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点(RTTの算出時点)までに計測した最小のRTTであり、本発明に係る輻輳判定に用いられ、式(5)により更新される。
RTTbaseTmp = min(RTT, RTTbaseTmp) (5)
そして、輻輳ウインドウ制御部114aは、RTTbaseTmp、RTTbase及びRTTminの更新後、予め定めたパケット遅延量に関する計測期間における計測開始から1計測期間が経過したか否かを判定する。1計測期間が経過していない場合、輻輳ウインドウ制御部114aは、「CWNDの第1の更新処理」により、CWNDを更新する。「CWNDの第1の更新処理」は、既定の計算式、例えばTCP NewReno(式(1)参照)、TCP Vegas(式(3)参照)、或いはCUBICなど、その通信方式で採用する更新処理により、CWNDを更新する処理である。この「CWNDの第1の更新処理」により、CWNDを拡大させることができる。
計測期間に関して、例えば、図3(A)に示すように、通信端末10(パケット送信装置11a)が連続的に送信するデータ送信用パケットD1,D2,D3を通信端末20に向けて送信するとともに、データ送信用パケットD1,D2,D3の各々に対応する送達確認応答パケットACK1,ACK2,ACK3を受信する場合を考えたとき、1計測期間は、計測期間の計測の開始から通信端末10(パケット送信装置11a)が最初に送信するパケットに対する送達確認応答(ACK)が到着するまで、とすることができる。
或いは、図3(B)に示すように、1計測期間は、計測期間の計測の開始から所定時間(例えば、直前の計測期間における最小のRTT(RTTmin)経過時)まで、とすることができる。尚、計測期間は、IPデータフローに対して連続的に定めてもよいし、間欠的に定めてもよく、計測期間で求めたRTTminは少なくとも次回の計測期間でRTTminを求めるまで保持するように構成し、RTTminを用いるCWND等の更新にはその更新時点で保持するRTTminを用いるようにする。
一方、1計測期間が経過している場合、輻輳ウインドウ制御部114aは、輻輳判定部115aへRTTbaseTmp、RTTmin及び輻輳ウインドウサイズの更新パラメータcwnd2を通知する。cwnd2は、2計測期間前のCWNDの値であり、従って、輻輳ウインドウ制御部114aは、少なくとも2計測期間分のCWNDの値を保持するよう構成されている。
輻輳判定部115aは、輻輳ウインドウ制御部114aから通知されたRTTbaseTmp、RTTmin及びcwnd2を基に輻輳判定を行い、その輻輳判定結果を輻輳ウインドウ制御部114aに通知する。
より具体的には、輻輳判定部115aは、式(6)により輻輳判定を行う。尚、aはどこまでRTTの増加を許容するかを決定する予め定めたパラメータであり、0以上の整数である。
if cwnd2×(RTTmin−RTTbaseTmp)/RTTmin>a (6)
then 輻輳。
otherwise 輻輳でない。
このように、輻輳判定に関しては、RTTbaseではなく、RTTbaseTmpを用いて輻輳判定を行い、後述する「CWNDの第2の更新処理」によりCWNDを更新するよう構成することで、遅延増加を抑制しながら複数のIPデータフローの公平性を改善することができる。
輻輳ウインドウ制御部114aは、輻輳判定部115aから輻輳判定結果の通知を受けると、輻輳でない旨を示す輻輳判定結果の場合、輻輳ウインドウ制御部114aは、「CWNDの第1の更新処理」により、CWNDを更新する。
一方、輻輳である旨を示す輻輳判定結果の場合、輻輳ウインドウ制御部114aは、「CWNDの第2の更新処理」により、輻輳ウインドウ計算部116aにより新たなCWNDを計算させ、CWNDを更新する。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
「CWNDの第2の更新処理」では、輻輳ウインドウ制御部114aは、RTTbase及びRTTminと、cwnd2を輻輳ウインドウ計算部116aへ通知し、輻輳ウインドウ計算部116aにより新たなCWNDを計算させる。このときの「CWNDの第2の更新処理」により、CWNDが維持されることもあるが、パケットロスの発生前にCWNDを縮小させることができる。
より具体的には、輻輳ウインドウ計算部116aは、式(7)により輻輳ウインドウサイズ(CWND)を算出する。尚、bは複数のIPデータフローの収束速度を決定する予め定めたパラメータであり、0より大きく1以下の実数である。
cwnd=cwnd2×RTTbase/RTTmin×b (7)
このように、本発明による一実施形態のパケット送信装置11aでは、輻輳ウインドウ制御技法において、パケットロス発生時や輻輳発生時に送達確認に基づく新たな基準の遅延量を示すRTTbaseTmpを用いてCWNDを更新するように構成したことで、遅延増加を抑制しながら複数のIPデータフローの各々の間の使用帯域の公平性を改善することができる。
(装置動作)
次に、図2を参照して、本発明による一実施形態のパケット送信装置11aにおける輻輳制御方法について説明する。図2は、本発明による一実施形態のパケット送信装置11aにおける輻輳判定方法を示すフローチャートである。
パケット送信装置11aは、送達確認応答受信部113により、送達確認応答パケット(ACK)を受信すると(ステップS11)、パケットロスが発生しているか否かの判定を行い(ステップS12)、パケットロスの判定結果、及び送達確認応答パケットを輻輳ウインドウ制御部114aへ通知する。
続いて、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、パケットロスの判定結果を基に、パケットロスが発生していた場合(ステップS12:Yes)、前述の「CWNDの第2の更新処理」により、輻輳ウインドウ計算部116aにより新たなCWNDを計算させ、CWNDを更新する(ステップS18)。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
一方、パケットロスが発生していなかった場合(ステップS12:No)、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、RTTを算出し(ステップS13)、RTTbaseTmpと、RTTbase及びRTTminを更新する(ステップS14)。
続いて、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、1計測期間が経過したか否かを判定し(ステップS15)、1計測期間が経過していない場合(ステップS15:No)、前述の「CWNDの第1の更新処理」により、CWNDを更新する(ステップS16)。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
一方、1計測期間が経過している場合(ステップS15:Yes)、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、輻輳判定部115aへRTTbaseTmp、RTTmin及び輻輳ウインドウサイズの更新パラメータcwnd2を通知する。cwnd2は、2計測期間前のCWNDの値であり、従って、輻輳ウインドウ制御部114aは、少なくとも2計測期間分のCWNDの値を保持する。
続いて、パケット送信装置11aは、輻輳判定部115aにより、通知されたRTTbaseTmp、RTTmin及びcwnd2を基に前述した式(6)に従って輻輳判定を行い、その輻輳判定結果を輻輳ウインドウ制御部114aに通知する(ステップS17)。
続いて、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、輻輳でない旨を示す輻輳判定結果の場合(ステップS17:No)、前述の「CWNDの第1の更新処理」により、CWNDを更新する(ステップS16)。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
一方、輻輳である旨を示す輻輳判定結果の場合(ステップS17:Yes)、パケット送信装置11aは、輻輳ウインドウ制御部114aにより、前述の「CWNDの第2の更新処理」により、輻輳ウインドウ計算部116aにより新たなCWNDを計算させ、CWNDを更新する(ステップS18)。このCWNDの更新に伴い、式(4)と同様にssthreshも更新する。
また、輻輳ウインドウ制御部114aは、「CWNDの第2の更新処理」によりCWNDを更新すると、CWNDの減少を行う場合にのみ、RTTbaseTmpを予め定めた通信上の取りうる最大の値に初期化(リセット)する(ステップS19)。
このように、本発明に係る輻輳ウインドウ制御技法において、パケットロス発生時や輻輳発生時に送達確認に基づく新たな基準の遅延量を示すRTTbaseTmpを用いてCWNDを更新するように構成したことで、遅延増加を抑制しながら複数のIPデータフローの各々の間の使用帯域の公平性を改善することができる。
以上、特定の実施例を挙げて本発明を説明したが、本発明は前述の実施形態の例に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行うパケット送信装置であれば、如何なる態様の装置でもよい。
本発明によれば、遅延増加を抑制しながら複数のIPデータフローの使用帯域の公平性を改善することができるので、送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行う用途に有用である。
10 通信端末
11 従来技術に係るパケット送信装置
11a 本発明による一実施形態のパケット送信装置
12 パケット受信装置
20 通信端末
21 パケット受信装置
22 パケット送信装置
111 送信時刻書込部
112 パケット送信部
113 送達確認応答受信部
114,114a 輻輳ウインドウ制御部
115,115a 輻輳判定部
116a 輻輳ウインドウ計算部

Claims (5)

  1. 送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行うパケット送信装置であって、
    パケット送信の送達確認に基づく往復遅延時間(RTT)を算出する手段と、
    予め定めたパケット遅延量に関する計測期間内における当該往復遅延時間(RTT)に関して、直前の1計測期間内で計測した最小の値である計測期間内最小の往復遅延時間(RTTmin)、通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は直近のTCPタイムアウト後から、現時点までに計測した最小の値である輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点までに計測した最小の値である輻輳判定基準の往復遅延時間(RTTbaseTmp)と、を保持し、当該往復遅延時間(RTT)を算出する度に、前記計測期間内最小の往復遅延時間(RTTmin)、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を更新する手段と、
    パケットロスの未発生時に、当該往復遅延時間(RTT)を算出した現時点から2計測期間前のCWNDの値である輻輳ウインドウサイズの更新パラメータ(cwnd2)、前記計測期間内最小の往復遅延時間(RTTmin)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を用いた所定の輻輳判定式により、輻輳判定を行う手段と、
    パケットロスの未発生時、及び輻輳未発生時に、既定の計算式に基づいて輻輳ウインドウサイズを拡大可能に更新する、輻輳ウインドウサイズの第1の更新手段と、
    パケットロスの発生時、及び輻輳発生時に、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)を用いた予め定めた更新式により、前記減少イベントを含み輻輳ウインドウサイズを縮小可能に更新する、輻輳ウインドウサイズの第2の更新手段と、
    を備えることを特徴とするパケット送信装置。
  2. 前記輻輳判定を行う手段は、予め定めたパラメータ(a)を用いて、
    cwnd2×(RTTmin−RTTbaseTmp)/RTTmin>a
    を満たす場合に輻輳と判定することを特徴とする、請求項1に記載のパケット送信装置。
  3. 前記第2の更新手段は、予め定めたパラメータ(b)を用いて、
    cwnd=cwnd2×RTTbase/RTTmin×b
    を満たすように輻輳ウインドウサイズを更新することを特徴とする、請求項1又は2に記載のパケット送信装置。
  4. 請求項1から3のいずれか一項に記載のパケット送信装置を備えることを特徴とする通信端末。
  5. 送達確認に基づく遅延量を用いてパケット送信に関する輻輳ウインドウの制御を行う輻輳制御方法であって、
    パケット送信の送達確認に基づく往復遅延時間(RTT)を算出するステップと、
    予め定めたパケット遅延量に関する計測期間内における当該往復遅延時間(RTT)に関して、直前の1計測期間内で計測した最小の値である計測期間内最小の往復遅延時間(RTTmin)、通信を開始してから、又は通信開始後にTCPタイムアウトが発生している場合は直近のTCPタイムアウト後から、現時点までに計測した最小の値である輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び、通信を開始してから、又は最後の輻輳ウインドウサイズの減少イベントから、現時点までに計測した最小の値である輻輳判定基準の往復遅延時間(RTTbaseTmp)と、を保持し、当該往復遅延時間(RTT)を算出する度に、前記計測期間内最小の往復遅延時間(RTTmin)、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を更新するステップと、
    パケットロスの未発生時に、当該往復遅延時間(RTT)を算出した現時点から2計測期間前のCWNDの値である輻輳ウインドウサイズの更新パラメータ(cwnd2)、前記計測期間内最小の往復遅延時間(RTTmin)、及び前記輻輳判定基準の往復遅延時間(RTTbaseTmp)を用いた所定の輻輳判定式により、輻輳判定を行うステップと、
    パケットロスの未発生時、及び輻輳未発生時に、既定の計算式に基づいて輻輳ウインドウサイズを拡大可能に更新するステップと、
    パケットロスの発生時、及び輻輳発生時に、前記輻輳ウインドウサイズ調整基準の往復遅延時間(RTTbase)を用いた予め定めた更新式により、前記減少イベントを含み輻輳ウインドウサイズを縮小可能に更新するステップと、
    を含むことを特徴とする輻輳制御方法。
JP2015081303A 2015-04-10 2015-04-10 パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法 Expired - Fee Related JP6491521B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015081303A JP6491521B2 (ja) 2015-04-10 2015-04-10 パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015081303A JP6491521B2 (ja) 2015-04-10 2015-04-10 パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法

Publications (2)

Publication Number Publication Date
JP2016201705A JP2016201705A (ja) 2016-12-01
JP6491521B2 true JP6491521B2 (ja) 2019-03-27

Family

ID=57424623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015081303A Expired - Fee Related JP6491521B2 (ja) 2015-04-10 2015-04-10 パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法

Country Status (1)

Country Link
JP (1) JP6491521B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110460533B (zh) * 2019-07-12 2023-09-19 锐捷网络股份有限公司 基于rdma的数据传输方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3853784B2 (ja) * 2003-12-19 2006-12-06 エヌ・ティ・ティ・アドバンステクノロジ株式会社 データ通信管理方法
US7729249B2 (en) * 2007-07-16 2010-06-01 Microsoft Corporation Systems and methods for improving TCP-friendliness of delay-based congestion control

Also Published As

Publication number Publication date
JP2016201705A (ja) 2016-12-01

Similar Documents

Publication Publication Date Title
US7839859B2 (en) Voice adaptive gateway pacing methods and systems for wireless multi-hop networks
JP4147534B2 (ja) 通信装置および通信方法
US9548936B2 (en) Method and system for improved TCP performance over mobile data networks
US8854992B2 (en) Artificial delay inflation and jitter reduction to improve TCP throughputs
JP4708978B2 (ja) 高スループットを実現する通信システム、通信端末、セッション中継装置、及び通信プロトコル
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
US20050005207A1 (en) Method of improving the performance of a transmission protocol using a retransmission timer
US20130058212A1 (en) Optimization of the transmission control protocol particularly for wireless connections
JP6274113B2 (ja) データ送信装置、データ送信方法、及びそのプログラム
WO2012163305A1 (zh) 数据传输控制方法和设备
JP4328794B2 (ja) 通信システム、通信装置、及び送信制御方法
Braun et al. CCN & TCP co-existence in the future Internet: Should CCN be compatible to TCP?
JP5308364B2 (ja) 送信装置、送信方法及びプログラム
JP6173826B2 (ja) パケット送信装置およびそのプログラム
JP6491521B2 (ja) パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法
Sinky et al. Cross-layer assisted TCP for seamless handoff in heterogeneous mobile wireless systems
JP6280680B2 (ja) パケット通信におけるパケット送信装置、通信端末及びスロースタート制御方法
Bassil TCP congestion control scheme for wireless networks based on tcp reserved field and snr ratio
Lee et al. TCP-friendly congestion control for streaming real-time applications over wireless networks
JP6280681B2 (ja) パケット通信におけるパケット送信装置、通信端末及び輻輳制御方法
JP6417225B2 (ja) パケット通信におけるパケット送信装置、通信端末及びスロースタート制御方法
KR102131427B1 (ko) Sctp에서의 혼잡 제어 방법 및 장치
KR100915996B1 (ko) 대역폭변화에 따른 적응형 전송 제어 프로토콜을 이용한데이터 패킷 전송 방법 및 그를 위한 송신측 단말장치
Kim et al. Improving TCP performance for vertical handover in heterogeneous wireless networks
JP6544353B2 (ja) 送信データ量制御装置、制御システム、制御方法および制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190301

R150 Certificate of patent or registration of utility model

Ref document number: 6491521

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees