EN JA
CC_CHD(4)
CC_CHD(4) FreeBSD Kernel Interfaces Manual CC_CHD(4)

名称

cc_chdCHD 輻輳制御アルゴリズム

解説

CHD は、 cc_hd(4) で実装された HD アルゴリズムを強化します。それは、特に、ボトルネックリンクが軽くマルチプレックスされるとき、輻輳しない関連するパケットの損失への許容範囲と伝統的な損失ベースの TCP フローとの共存への改良を提供します。

HD のように、アルゴリズムは、特定の閾値 (queue_threshold) の下でネットワークキューを保持することを目的とし、ネットワークキューの遅延の見積りで輻輳ウィンドウ (cwnd) の確率ベースを削減することに決めます。

次の 3 つの重要な側面が HD と異なっています:

  • 輻輳のために cwnd の削減のの確率は、 cc_hd(4) によって行われるように、承認が受け付けられるたびでなく、ラウンドトリップ時間毎に一度計算されます。
  • キューの遅延が queue_threshold 以下の間に起こるパケット損失は、 cwnd を減少させません。
  • CHD は、損失ベースの TCP フローと競争しているとき、失われた転送の機会を取り戻すことを助けるために、影のウィンドウを使用します。

MIB 変数

アルゴリズムは、 sysctl(3) MIB の net.inet.tcp.cc.chd ブランチで次の調整変数を公開します:
queue_threshold
チック (tick) 単位で輻輳閾値 (qth) をキューに入れます。デフォルトは、20 です。
pmax
RTT の最大の backoff 毎の割合としての確率。デフォルトは、50 です。
qmin
チック (tick) 単位の最小のキュー遅延閾値 (qmin)。デフォルトは、5 です。
loss_fair
1 であるなら、cwnd は、輻輳関連の損失が検出されるとき、影のウィンドウを使用して調整されます。デフォルトは、1 です。
use_max
1 であるなら、測定期間内に見られる最大の RTT は、アルゴリズムのための基本的な遅延測定として使用され、そうでなければ、サンプルの RTT 測定が使用されます。デフォルトは、1 です。

関連項目

cc_cubic(4), cc_hd(4), cc_htcp(4), cc_newreno(4), cc_vegas(4), h_ertt(4), mod_cc(4), tcp(4), khelp(9), mod_cc(9) D. A. Hayes and G. Armitage, Improved coexistence and loss tolerance for delay based TCP congestion control, in 35th Annual IEEE Conference on Local Computer Networks, 24-31, October 2010.

謝辞

このソフトウェアの開発とテストは、Community Foundation Silicon Valley において FreeBSD Foundation と Cisco University Research Program Fund からの助成金によって一部可能となりました。

歴史

cc_chd 輻輳制御モジュールは、 FreeBSD 9.0 ではじめて登場しました。

このモジュールは、 Advanced Internet Architectures、Melbourne、Australia のために Swinburne University of Technology の Centre において NewTCP 研究プロジェクトに従事している間に、David Hayes によって 2010 年に始めてリリースされました。その他の詳細は、次で利用可能です:

http://caia.swin.edu.au/urp/newtcp/

作者

cc_chd 輻輳制御モジュールとこのマニュアルページは、 David Hayes <david.hayes@ieee.org>によって書かれました。
September 15, 2011 FreeBSD