RouterOS技术分享

ROS用简单限速做小包优先

发布于2017年10月13日 | 暂无评论 | 6阅读 | 未分类

内网管理中,一般的简单限速,当客户机把带宽用完时,会造成整个客户机玩游戏、PING等也会丢包,我们知道PING、游戏一般数据包都是用小包,在此我们用简单限速做小包优先。
1.首先,标记低于512为小包,名字为YX,,我们用forward,不区分上传下载:
/ip firewall mangle add chain=forward action=mark-packet new-packet-mark=YX passthrough=no  packet-size=0-512
2.生成每个客户机的总带宽,限制最大带宽上传下载都是5M:
:for edcwifi from=2 to=254 do={queue simple add name=("PC" . $edcwifi) target=("192.168.9.". $edcwifi) max-limit=5M/5M}
3.调用小包,生成每个客户机标记为YX的总带宽为上传下载为1M,优先级为1,并设置父为上面总限制:
:for edcwifi from=2 to=254 do={queue simple add name=("PCXB" . $edcwifi) target=("192.168.9.". $edcwifi) max-limit=1M/1M packet-mark=YX parent=("PC" . $edcwifi) priority=1/1}
4.生成每个客户机没有数据包标记(512以上的大包)的最大带宽为上传下载4M,优先级为8,并设置父为上面总限制:
:for edcwifi from=2 to=254 do={queue simple add name=("PCDB" . $edcwifi) target=("192.168.9.". $edcwifi) max-limit=4M/4M packet-marks=no-mark parent=("PC" . $edcwifi)  priority=8/8}
 欢迎测试,不足之处,敬请留言指出,上面脚本只适用于6.0后的版本,6.0以前的版本,需要修改脚本。当然,你也可以根据你的网络环境,调整上面判断小包大小的参考值,也可以调整为0-1024。
复制脚本记得把脚本中的IP改成你的内网IP,就是把192.168.9改成你的内网网段。
效果:不管客户机,下载,看电影等,差不多都只能用到4M,始终会保留1M给此客户机做其它小包应用,解决了同时下载看电影,玩游戏的问题。不足之处是,比较费CPU。

暂无评论

发布评论