1

TCP Reno、HSTCP、STCP、または高速 TCP? それとも、現在人気のあるカーネルでアルゴリズムを変更できますか?

4

1 に答える 1

7

最近のカーネル (3.14.0 が私が調べているソース バージョンです) は、いくつかの輻輳制御アルゴリズムを提供します。

  1. バイナリ増加輻輳 (BIC) 制御
  2. BIC-TCP のバージョン 2.0
  3. TCP Westwood+ (Reno の修正版)
  4. H-TCP (Reno の別の変更)
  5. Sally Floyd の高速 TCP (RFC 3649) 輻輳制御
  6. TCPハイブラ
  7. TCPベガス
  8. スケーラブルな TCP
  9. TCP 低優先度 (TCP-LP)
  10. TCPベノ
  11. YeAH-TCP (これは Reno の変更だと思います)
  12. TCP-Illinois (Reno の修正版)

実際に使用しているもの、または利用できるものは、カーネルがコンパイルされたときに選択されたオプションによって異なります。ファイルをいじることで、で利用可能なものを確認しcat /proc/sys/net/ipv4/tcp_available_congestion_control、実際に使用されるものを制御できます/proc/sys/net/ipv4/tcp_congestion_control

実行中のカーネルへのカーネル構成の組み込みを有効にした場合は、 でコンパイルされたものも確認できますzcat /proc/config.gz | grep CONG。たとえば、カーネル構成にmake menuconfigは、各アルゴリズムのより詳細な説明がありますが、もちろん、カーネル ソース ツリーの下にあるソースを読むことに勝るものはありませんnet/ipv4/(files を参照してください。ファイルtcp_*.c名は一目瞭然です)。

于 2014-04-04T16:50:42.303 に答える