我正在三台连接10G ig 接口且 RTT 为100 微秒的计算机之间进行实验。假设这些是机器 A、B 和 C。机器 A 正在与 B 和 C 通信。机器 B 和 C 不相互通信。
我想限制带宽,使机器 A 和 B 具有5G bps 带宽和 100毫秒延迟。而机器 A 和 C 没有任何带宽和延迟限制。我的目标是模拟具有大带宽可用的广域网。
我尝试使用 HTB 和 prio 来限制带宽和延迟。但是,达到的最大带宽约为 350 Mbps。我通过iperf进行了测试。我的理解是,我们使用 TC 的带宽不能超过 1Gig。
有什么方法或工具可以将带宽限制在 1Gig 以上?
我正在使用以下 TC 命令:
sudo tc qdisc del dev p4p1 root
sudo tc qdisc add dev p4p1 handle 1: root htb r2q 1000
sudo tc class add dev p4p1 parent 1: classid 1:3 htb rate 1000Mbps
sudo tc qdisc add dev p4p1 parent 1:3 handle 23: netem delay 50ms limit 100000000
sudo tc filter add dev p4p1 protocol ip prio 9 u32 match ip dst 10.96.0.1 flowid 1:3
我遇到了和你一样的麻烦。最终,我发现了一些可以在我需要节流的 2Gbps 下工作的东西。这是脚本。根据需要进行修改。