简单tc流量控制使用

显示规则
/sbin/tc -s qdisc show

删除根规则
/sbin/tc qdisc del dev eth0 root tbf

//限制带宽
    /sbin/tc qdisc add dev eth0 root tbf rate 50kbit latency 50ms burst 1000
    sleep 20
    /sbin/tc qdisc del dev eth0 root tbf


//netem
    /sbin/tc qdisc add dev eth0 root netem CMD
    其中CMD为延迟、丢包、重包、错包、乱序等
    //丢包 loss 10%
    //重包 duplicate 10%
    //错包 corrupt 10%
    //乱序 delay 10ms reorder 25% 50% (25%(50%相关)不延迟,其他包延迟10ms)
    //延迟 delay 10ms
    //删除root规则 /sbin/tc qdisc del dev eth0 root
    

///////////////////////////////////////////////////////////////////////////////////////////////////////
设置流量规则过滤
tc qdisc add dev eth0 root handle 1: htb default 30                                        //设置root规则
tc class add dev eth0 parent 1: classid 1:1 htb rate 6mbit burst 15k                    //设置父类
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 5mbit burst 15k                    //设置子类10
tc class add dev eth0 parent 1:1 classid 1:20 htb rate 3mbit ceil 6mbit burst 15k        //设置子类20
tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit ceil 6mbit burst 15k        //设置子类30

//设置子类队列规则
tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10

//添加子类
U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
$U32 match ip dport 80 0xffff flowid 1:10                                                //子类10过滤规则(直接导向类)
$U32 match ip sport 25 0xffff flowid 1:20                                                //子类20过滤规则


///////////////////////////////////////////////////////////////////////////////////////////////////////    

/**********************************/
tc qdisc add dev eth0 root handle 1: htb default 30                                        //设置root规则
tc class add dev eth0 parent 1: classid 1:1 htb rate 8kbit burst 15k                    //设置父类
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 5050 0xffff flowid 1:1
/**********************************/

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tc qdisc del dev eth0 root htb
tc qdisc add dev eth0 root handle 1: htb default 30
tc class add dev eth0 parent 1: classid 1:10 htb rate 8kbit burst 15k
tc qdisc add dev eth0 parent 1:10 handle 10: netem corrupt 50%
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip sport 5050 0xffff flowid 1:10
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

你可能感兴趣的:(简单tc流量控制使用)