字体:  

哈啤猫:cl中关于上传带宽问题

a99456820 发表于: 2005-6-10 19:02 来源: 软件路由论坛

在cl 中我设了下载带宽,很好用,能用
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 10240kbit burst 10k
tc class add dev eth0 parent 1:1 classid 1:11 htb rate 6144kbit burst 10k prio 1
tc class add dev eth0 parent 1:1 classid 1:12 htb rate 2048kbit burst 10k prio 2
tc class add dev eth0 parent 1:1 classid 1:13 htb rate 1024kbit burst 10k prio 3
tc qdisc add dev eth0 parent 1:11 handle 10: sfq perturb 10
tc qdisc add dev eth0 parent 1:12 handle 20: sfq perturb 10
tc qdisc add dev eth0 parent 1:13 handle 30: sfq perturb 10
tc filter add dev eth0 parent 1: protocol ip prio 1 u32 match ip dst 192.168.1.0/24 flowid 1:11
tc filter add dev eth0 parent 1: protocol ip prio 1 u32 match ip dst 192.168.0.0/24 flowid 1:12
tc filter add dev eth0 parent 1: protocol ip prio 1 u32 match ip dst 192.168.2.0/24 flowid 1:13


现在我想限上传带宽,如下
tc qdisc add dev eth1 root handle 2: htb r2q 1
tc class add dev eth1 parent 2: classid 2:2 htb rate 1600kbit burst 10k
tc class add dev eth1 parent 2:2 classid 2:21 htb rate 800kbit burst 10k prio 1
tc class add dev eth1 parent 2:2 classid 2:22 htb rate 480kbit burst 10k prio 2
tc class add dev eth1 parent 2:2 classid 2:23 htb rate 320kbit burst 10k prio 3
tc qdisc add dev eth1 parent 2:21 handle 40: sfq perturb 10
tc qdisc add dev eth1 parent 2:22 handle 50: sfq perturb 10
tc qdisc add dev eth1 parent 2:23 handle 60: sfq perturb 10
tc filter add dev eth1 parent 2: protocol ip prio 1 u32 match ip src 192.168.1.0/24 flowid 2:21
tc filter add dev eth1 parent 2: protocol ip prio 1 u32 match ip src 192.168.0.0/24 flowid 2:22
tc filter add dev eth1 parent 2: protocol ip prio 1 u32 match ip src 192.168.2.0/24 flowid 2:23

怎么不起作用呀,上传带宽一点限制作用也不起呀,为什么呀

我查了一些资料,真得不知什么原因呀?


请指教

最新回复

DreamCat at 2005-6-11 11:18:43
你用一个 parent 做。你的parent 2 有问题。
而且只有一条线路,没必要用两个parent。
henrt at 2005-6-11 11:49:38
上传带宽控制要结合iptables的MARK Target来控制
a99456820 at 2005-6-11 16:05:57
QUOTE(henrt @ Jun 11 2005, 11:49 AM)
上传带宽控制要结合iptables的MARK Target来控制
[right][snapback]50838[/snapback][/right]

感谢,我现在已解了


tc qdisc add dev eth1 root handle 2: htb r2q 1
tc class add dev eth1 parent 2: classid 2:2 htb rate 3200kbit burst 10k
tc class add dev eth1 parent 2:2 classid 2:21 htb rate 2080kbit burst 10k prio 1
tc class add dev eth1 parent 2:2 classid 2:22 htb rate 560kbit burst 10k prio 2
tc class add dev eth1 parent 2:2 classid 2:23 htb rate 240kbit burst 10k prio 3
tc qdisc add dev eth1 parent 2:21 sfq perturb 10
tc qdisc add dev eth1 parent 2:22 sfq perturb 10
tc qdisc add dev eth1 parent 2:23 sfq perturb 10
tc filter add dev eth1 parent 2: protocol ip prio 1 handle 4 fw flowid 2:21
tc filter add dev eth1 parent 2: protocol ip prio 1 handle 5 fw flowid 2:22
tc filter add dev eth1 parent 2: protocol ip prio 1 handle 6 fw flowid 2:23
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.1.1/24 -j MARK --set-mark 4
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.1.1/24 -j RETURN
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.1/24 -j MARK --set-mark 5
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.1/24 -j RETURN
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.2.1/24 -j MARK --set-mark 6
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.2.1/24 -j RETURN
a99456820 at 2005-6-12 09:22:53

根据 fwmark进行上传流量限制

你可以使用 ipchains/iptables 给数据包做上标记,并且这个标记会在穿过
网卡的路由过程中保留下来。如果你希望对来自 eth0 并从 eth1 发出的数据包做整形,
这就很有用了。语法是这样的:

tc filter add dev eth1 protocol ip parent 1:0 prio 1 handle 6 fw flowid 1:1
注意,这不是一个 u32 匹配! 你可以象这样给数据包打标记:

iptables -A PREROUTING -t mangle -i eth0 -j MARK --set-mark 6

数字 6 是可以任意指定的。
DreamCat at 2005-6-12 09:59:46
不错,此帖稍后进精华(还是先置顶?)。。
玫瑰在滴血 at 2006-5-11 13:11:26
精华!!