如何在 Ubuntu 中检查 TCP 拥塞控制算法风格

Uma*_*mar 5 linux tcp ubuntu

我正在使用 Ubuntu 14.04 LTS 和 Linux 内核版本 3.13.0-34。

如何找出默认值或当前使用的 TCP 拥塞控制算法是什么?

谢谢。

use*_*686 7

没有 TCP 变体;有 TCP拥塞控制算法

sysctl net.ipv4.tcp_congestion_control

cat /proc/sys/net/ipv4/tcp_congestion_control
Run Code Online (Sandbox Code Playgroud)

默认值通常是cubicreno,尽管还有很多其他可用的,并且程序可以为各个连接设置首选算法(例如,lp如果可用,则启用传输)。

(尽管名称相同,但相同的旋钮会影响 IPv4 和 IPv6。)


Guy*_*ham 6

添加到@grawity答案,可以使用以下命令检查所有可用的 TCP 拥塞控制算法:

sysctl net.ipv4.tcp_available_congestion_control
Run Code Online (Sandbox Code Playgroud)

一些可能的输出(即可用的口味)的列表是:

reno:几乎所有其他操作系统都使用传统 TCP。(默认)

立方:CUBIC-TCP

bic : BIC-TCP

htcp : 汉密尔顿 TCP

维加斯: TCP 维加斯

westwood:针对有损网络进行优化

YeAH:延迟感知/状态启用,使管道保持在或低于阈值

注意:如果您这样做时未列出cubic和/或htcp'sysctl net.ipv4.tcp_available_congestion_control',请尝试以下操作,因为大多数发行版都将它们作为可加载内核模块包含在内:

/sbin/modprobe tcp_htcp
/sbin/modprobe tcp_cubic
Run Code Online (Sandbox Code Playgroud)

欲了解更多详细信息,您可以查看这里:

TCP调优详情

希望能帮助到你。

干杯,

盖伊。