流量来源有两个
其中第一个不应该受到任何阻碍,它应该能够吸引尽可能多的可用流量。
另一方面,第二个源应该受到限制,以使它们两者加起来不能超过某个限制。也就是说,它们可以超过这个限制,但这不应该是第二个源的“错误”——在这种情况下,所有流量都由第一个源吸引。
可以用 来做到这一点吗tc
?
目前有一个解决方案可以限制两者的流量:
tc qdisc add dev eth0 root handle 1: htb default 101
tc qdisc add dev eth1 root handle 1: htb default 101
tc class add dev eth0 parent 1: classid 1:1 htb rate 50000kbit
tc class add dev eth1 parent 1: classid 1:1 htb rate 50000kbit
tc class add dev eth0 parent 1:1 classid 1:101 htb rate 49500kbit ceil 50000kbit prio 0 quantum 16000
tc qdisc add dev eth0 parent 1:101 handle 101: sfq perturb 10
tc filter add dev eth0 parent 1:0 protocol ip prio 0 handle 1 fw classid 1:101
tc class add dev eth1 parent 1:1 classid 1:101 htb rate 49500kbit ceil 50000kbit prio 0 quantum 16000
tc qdisc add dev eth1 parent 1:101 handle 101: sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 0 handle 1 fw classid 1:101
tc class add dev eth0 parent 1:1 classid 1:102 htb rate 500kbit ceil 50000kbit prio 1 quantum 16000
tc qdisc add dev eth0 parent 1:102 handle 102: sfq perturb 10
tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle 2 fw classid 1:102
tc class add dev eth1 parent 1:1 classid 1:102 htb rate 500kbit ceil 50000kbit prio 1 quantum 16000
tc qdisc add dev eth1 parent 1:102 handle 102: sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 1 handle 2 fw classid 1:102
答案1
删除ceil
第一个类的参数应该可以解决问题。没有它,您的第一个流量来源就不会受到任何硬性限制。