linux QOS流量管理实例四
作者 佚名技术
来源 Linux系统
浏览
发布时间 2012-05-17
24 -d $PREFIX.0/24 -j MARK --set-mark 4
现在数据情况如下:
0: VoIP traffic 1: Database Replication 2: Remote DB Developers 3: Headquarters traffic 4: Everything else is Internet traffic mangle表中的POSTROUTING中的内容如下: Chain POSTROUTING (policy ACCEPT) target prot opt source destination MARK all -- 0.0.0.0/0 192.168.4.3 MARK set 0x1 MARK all -- 192.168.1.2 192.168.4.2 MARK set 0x2 MARK all -- 1.1.4.1 192.168.4.2 MARK set 0x3 MARK all -- 192.168.1.0/24 192.168.4.0/24 MARK set 0x4 接下来,通过下列脚本来创建HTB class. #!/bin/bash #Edit these lines to suit location TOTALBW=1024 #Total DOWNLOAD bandwidth for the location VBW=128 #Voice bandwidth in this location PREFIX=192.168.4 #IP addresses in this location #no more editing is required below this line let BW=$TOTALBW-$VBW #delete root qdisc - this will drop all classes
tc qdisc del root dev eth1 #create root qdisc tc qdisc add dev eth1 root handle 1: htb default 12 #create root class tc class add dev eth1 parent 1: classid 1:1 htb rate ${TOTALBW}kbit ceil ${TOTALBW}kbit #add class, Add Qdisc, Add Filter AC="tc class add dev eth1 parent" AQ="tc qdisc add dev eth1 parent" AF="tc filter add dev eth1 protocol ip parent 1:0 prio 1" #VoIP should have the highest priority $AC 1:1 classid 1:10 htb rate ${VBW}kbit ceil ${VBW}kbit prio 0 $AQ 1:10 handle 100: pfifo limit 5 $AF handle 1 fw classid 1:10 #Database Replication #we allow a minimum of 3/8 of total bandwidth for replication let DBW=3*$BW/8 $AC 1:1 classid 1:20 htb rate ${DBW}kbit ceil ${BW}kbit prio 1 $AQ 1:20 handle 200: pfifo limit 5 $AF handle 2 fw classid 1:20 #Remote DB application developers #we allow a minimum of 1/8 of total bandwidth for remote developers let RBW=$BW/8 $AC 1:1 classid 1:30 htb rate ${RBW}kbit ceil ${RBW}kbit prio 2 $AQ 1:30 handle 300: pfifo limit 5 $AF handle 3 fw classid 1:30 #traffic between HQ and this location #we allow a minimum of 1/4 of total bandwidth for traffic with HQ let I=$BW/4 $AC 1:1 classid 1:40 htb rate ${I}kbit ceil ${BW}kbit prio 3 $AQ 1:40 handle 400: pfifo limit 5 $AF handle 4 fw classid 1:40 #Internet Traffic for users #we allow a minimum of 1/4 of total bandwidth for internet traffic
$AC 1:1 classid 1:50 htb rate ${I}kbit ceil ${BW}kbit prio 4 $AQ 1:50 handle 500: pfifo limit 5 tc filter add dev eth1 protocol ip parent 1:0 prio 5 u32 match ip dst $PREFIX.0/24 flowid 1:50 used $TOTALBW (X in the earlier diagram) 1024 kbps = 1 Mbps, and $VBW (Y in the same diagram) 128 kbps 检验队列: sitec~# tc -s class show dev eth1 为了限制上传功能,我们将对mangle表下的POSTROUTING表中的数据打标记.将在防火墙上添加下列脚本. #mark packets from the Voip Device - value 0 $IPT -t mangle -A PREROUTING -s $PREFIX.3 -j MARK --set-mark 1 #mark packets for Database replication - value 1 $IPT -t mangle -A PREROUTING -d 192.168.1.2 -s $PREFIX.2 -j MARK --set-mark 2 #mark packets for remote DB developers - value 2 $IPT -t mangle -A PREROUTING -d 1.1.4.1 -s $PREFIX.2 |
||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Linux的权限屏蔽下一篇: SHELL编程实现批量Netatalk字符集文件名替换
关于linux QOS流量管理实例四的所有评论