- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
QoS使用样例其效果
流量控制自测报告
1 测试环境
测试环境为96358GW经过添加了Traffic Control以后的板子。把eth1.2网卡端口配置成wan口,其他端口为br0的lan口。wan口ip为192.168.36.8,lan口ip为网关192.168.1.1。在wan口外接一台主机,ip设置成192.168.36.86,网关设置为192.168.36.8。lan口接观察流量的主机,网关设置为192.168.1.1,ip设置为192.168.1.2。板子串口同样接到观察流量的主机,host1用Ix观察流量。如下图:
2 测试htb规则
2.1 htb测试步骤
初始流量
host1上使用Ix对host2的10000、20000、30000、40000端口发送10M的流量。
命令
为目的端口为10000、20000、30000、40000的数据包分别标记mark值为0x1、0x2、0x3、0x4:
iptables -t mangle -A PREROUTING -p udp --dport 10000 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -p udp --dport 20000 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p udp --dport 30000 -j MARK --set-mark 0x3
iptables -t mangle -A PREROUTING -p udp --dport 40000 -j MARK --set-mark 0x4
为eth1.2挂载一个HTB根节点:
tc qdisc add dev eth1.2 root handle 1:0 htb
为这个根节点分类,提供给每个ip使用:
tc class add dev eth1.2 parent 1:0 classid 1:1 htb rate 5000kbit
tc class add dev eth1.2 parent 1:0 classid 1:2 htb rate 4000kbit
tc class add dev eth1.2 parent 1:0 classid 1:3 htb rate 3000kbit
tc class add dev eth1.2 parent 1:0 classid 1:4 htb rate 2000kbit
为每个类挂载分离器,过滤每个ip的流量:
tc filter add dev eth1.2 parent 1:0 protocol all prio 1 handle 0x1 fw classid 1:1
tc filter add dev eth1.2 parent 1:0 protocol all prio 1 handle 0x2 fw classid 1:2
tc filter add dev eth1.2 parent 1:0 protocol all prio 1 handle 0x3 fw classid 1:3
tc filter add dev eth1.2 parent 1:0 protocol all prio 1 handle 0x4 fw classid 1:4
流控结果
2.2 htb测试结论
htb可以进行流量速率的控制。
3 测试prio规则
3.1 prio测试步骤
初始流量
由于96368GW上使用的是百兆网卡,远小于百兆速率的时候,QoS不会体现,而当速率接近百兆的时候,波动非常大,所以先使用一个htb来稳定限制一个速率上限为10M。
host1上使用Ix对host2的10000、20000、30000、40000端口发送10M的流量。
命令
上面以已经用iptables打好标签了,这里不再重复。
给网卡挂载一个根队列,使用htb,默认进入类1:1,并把速率限制为10M:
tc qdisc add dev eth1.2 root handle 1:0 htb default 1
tc class add dev eth1.2 parent 1:0 classid 1:1 htb rate 10000kbit
为这个htb节点替换叶子队列,替换为prio,并设置4个带,优先级表为0、1、2、3:
tc qdisc add dev eth1.2 parent 1:1 prio bands 4
输出这个prio类的ID:
tc class show dev eth1.2
把流量过滤到这4个带上(根据之前输出的类ID):
tc filter add dev eth1.2 parent 8001:0 protocol all pr
文档评论(0)