これは非常に広い質問です。
いいえ、これは基本的にも必ずしもCUBICではありません。
再送は、TCP "basic" RFC 793(1981)、セクション3.7データ通信、段落 "再送タイムアウト"で最初に指定されます。
それ以来、多くの(実際には多くの [*])拡張がありました。非常に目立つのは、RFC 5681で最後に指定された「スロースタート」ですが、ルーツは1997 RFC 2001、「TCPスロースタート、輻輳回避、高速再送、および高速回復アルゴリズム」に戻ります。
このドメインには「1つのサイズがすべて適合」はありません。常にトレードオフがあります。プラスの「スマート」アルゴリズムは、アプリケーションに応じて使用される場合と使用されない場合と使用可能な場合があります(組み込み機器と考える)ために、より多くのフットプリント(ソフトウェア+ CPU使用)を持ちます。そして、これらのものは実装のです(つまり、ホスト間の交換データには見られません)。たとえば、セグメントにTCPウィンドウのサイズとスケールが表示されますが、どのアルゴリズムによって管理されているかは分かりません。
Linuxの場合、PRRにはがデフォルトで、3.2以降となっています。それ以前はCUBIC、それ以前のBICでした。
デフォルトでは、利用可能な唯一のものではありません。
[email protected]:~$ cat /proc/sys/net/ipv4/tcp_allowed_congestion_control
cubic reno
...とで利用できるダースがあります:
[email protected]:~$ cat /proc/sys/net/ipv4/tcp_congestion_control
cubic
もののリノがあまりにも利用可能である:私のdebian株式4.4.0カーネルでは、それはCUBICだ「TCPは:高度な輻輳制御」セクションカーネル構成の
*: https://en.wikipedia.org/wiki/TCP_congestion-avoidance_algorithm
出典
2016-04-04 14:57:16
jbm
これは、*非常に*幅広い質問(私の答えを参照)です。 **あなたはより具体的になりたいかもしれません。**あなたの質問は、「あまりにも広すぎる」、または話題にならない(直接関連するプログラミングではないため)とフラグを立てて保留にすることがあります。 – jbm