在 Linux 中使用 cgroup 和 tc 似乎并不完全符合我的要求:10 倍差异

在 Linux 中使用 cgroup 和 tc 似乎并不完全符合我的要求:10 倍差异

我正在使用在互联网上各处(包括 ServerFault)找到的“标准”方式来尝试限制进程的带宽,使用 cgroups 和 tc。

我在实践中看到,我设定的限制tc在实践中将会增加大约 10 倍,请看此屏幕截图:

在此处输入图片描述

我将 设置rateceil100kbit(不是 100kbps),因此我期望看到下面的 wget 显示大约 10 千字节每秒。但我看到的却是 500kBps。

如果我将 htp 速率更新为 100每秒(每秒 100 千字节)我看到我的速率飙升至 10兆字节/秒,是原来的 100 倍:

tc class change dev ens3 classid 1:1 htb rate 100kbps

# the curl in the other terminal now shoots up to 9.6MB/s
image.iso.1    53%[================>                ] 346,72M  **9,48MB/s**    tps 49s

我不明白为什么这与我的 htb 配置不一致。你知道我做错了什么吗?

答案1

使用 tc,您可以调整上传速度。使用 wget,您可以测试下载速度。在您的测试中,您正在调整客户端发送的 TCP ACK,因此我们可以得出结论,在您的案例中,数据/确认比率为 1:100。

您可以使用 tc 将入口流重定向到 ifb 接口并对其进行整形,从而调整下载速度。这里你有一个关于如何做到这一点的例子。

相关内容