我一直在阅读trickled
可用于限制上传和下载带宽:
# Throttle download and upload bandwidths to 100KB.
trickled -d 100 -u 100
trickled
但是我读过的所有文章/教程/示例都没有显示告诉的命令停止并将所有带宽释放回 100%。我怎样才能做到这一点?提前致谢!
答案1
这也是我想知道的。根据您的情况,这可能是一种解决方法。
前段时间,我需要模拟远程服务器的低带宽和/或高延迟。我想出了这个脚本:
iface=wlan0
rate=80kbit
delay=0ms
destHost=1.2.3.4
destPort=22
tc qdisc del dev $iface root
tc qdisc add dev $iface root handle 1: prio
tc qdisc add dev $iface parent 1:3 handle 30: tbf rate $rate buffer 1600 latency 50ms
tc qdisc add dev $iface parent 30:1 handle 31: netem delay $delay
tc filter add dev $iface protocol ip parent 1:0 prio 3 u32 match ip dport $destPort 0xffff match ip dst $destHost flowid 1:3
在这里,您可以调整特定主机上特定端口的带宽和延迟。您需要 root 权限才能输入这些命令。在我看来,目标主机需要是一个 IP 地址。您还应该检查接口名称:如果您使用无线,它可能是 wlan0,但如果您有有线连接,它可能是 eth0。这里的延迟参数为零,因此默认情况下没有延迟(这是为了我的测试目的,但我认为您不需要它)。还请注意,这里的单位是千比特/秒,而不是像 trickle 使用的千字节/秒。要将千字节转换为千比特,请乘以八。
要删除带宽限制,请输入:
tc qdisc del dev $iface root