作者:chen人气:0来源:网吧系统下载站2014-04-01 10:19:16
前言:
PCQ限速对于某些带宽不是很足的网吧来说,确实有点问题,必须你网吧只有15M的光纤,如果你做PCQ限速2M吧(我想2M对于100台机器来说的网吧已经是最大限度了),PCQ开启设置为14M吧,关闭设置为6M!如果有一个人用讯雷下载东西的话。网吧15马上占满,PCQ就会开启,但一旦开启后。你网速就会变到6M以下,那么PCQ就在那里不停的关闭和开启了,这样不单达不到智能限速的效果。还会增加ROS的负担!CPU占用。。所以我就一直想把智能和普通限速做在一起,让讯雷或者其他下载不会乱触发PCQ的流量,但最终还是失败了!启发,我想出了一个既可以动态限速,也可以静态限速的方法!例如,还是15M的光纤,100台机器的网吧。我静态设置为3M,这样的话,正常来说。4个人下载东西的话,也只占12M,那么还剩3M,足够其他玩Q和打网游的机器了!
但如果5个人下载的话?怎么办?带宽马上到了15M了。呵呵,那其他玩网游的肯定会卡死!
不用怕,我智能设置为大于14M触发另一个脚本,脚本的内容大概就是关闭原来的3M静态限速,开启1.5M的静态限速,这样一算,1.5*5=7.5M了,再加上玩网游的人,基本上就稳定在10M左右了!
然后再设置一个脚本,当总流量少于6M的话(也就算没那么多人下载了,流量下来了)那么1.5M的静态限速脚本就会自动关闭,又打开了本来3M的限速了!
基本上原理就是这样。通过这个原理,网吧宽带利用就会越来越合理!
:for aaa from 1 to 254 do={/queue simple add name=(PC . $aaa) dst-address=(192.168.0. . $aaa) limit-at=500000/500000 max-limit=3000000/3000000}
/ ip firewall mangle
add chain=prerouting action=mark-packet new-packet-mark=all-mark
passthrough=yes comment="" disabled=no
/ queue type
add name="PCQ-up" kind=pcq pcq-rate=1500000 pcq-limit=50
pcq-classifier=src-address pcq-total-limit=2000
add name="PCQ-down" kind=pcq pcq-rate=1500000 pcq-limit=50
pcq-classifier=dst-address pcq-total-limit=2000
/ queue simple
add name="PCQ" target-addresses=192.168.0.0/24 dst-address=0.0.0.0/0
interface=all parent=none packet-marks=all-mark direction=both priority=1
queue=PCQ-up/PCQ-down limit-at=0/0 max-limit=15000000/15000000
total-queue=default-small disabled=yes
/ system script
add name="PCQON" source=":if ([ /queue sim get [/queue sim find
name="PCQ"] disable ]=true ) do={/queue sim enable PCQ}"
policy=ftp,reboot,read,write,policy,test,winbox,password
add name="PCQOFF" source=":if ([ /queue sim get [/queue sim find
name="PCQ"] disable ]=false ) do={/queue sim disable PCQ}"
policy=ftp,reboot,read,write,policy,test,winbox,password
/ tool traffic-monitor
add name="PCQON" interface=WAN traffic=received trigger=above
threshold=14800000 on-event=PCQON comment="" disabled=no
add name="PCQOFF" interface=WAN traffic=received trigger=below
threshold=5000000 on-event=PCQOFF comment="" disabled=no
上面是完整脚本,直接把每一段复制进去就可以了。需要修改的看下面的说明!
下面是注释:
15M为例 静态是3M,达到14.8M后启用动态是1.5M!
:for aaa from 1 to 254 do={/queue simple add name=(PC . $aaa) dst-address=(192.168.0. . $aaa) limit-at=500000/500000 max-limit=3000000/3000000}
这个是建立静态限速,1to254 改为你内网的IP!比如 2 to 120! 192.168.0. 这里改为你的IP段! limit-at=500000/500000 是平均网速500K,max-limit=3000000/3000000 是普通限速3M!
注意一下,这里,包括很多高手都把ROS的算法搞错了,在这里我纠正一下,ROS不是1KB=8Kbit! 而是 1000=1K 1000000=1M
/ ip firewall mangle
add chain=prerouting action=mark-packet new-packet-mark=all-mark
passthrough=yes comment="" disabled=no
这个是固定脚本!
/ queue type
add name="PCQ-up" kind=pcq pcq-rate=1500000 pcq-limit=50
pcq-classifier=src-address pcq-total-limit=2000
add name="PCQ-down" kind=pcq pcq-rate=1500000 pcq-limit=50
pcq-classifier=dst-address pcq-total-limit=2000
这里把1500000改为你动态限速时的全网上传速度和下载速度!其他不要改!这里是1.5M!
/ queue simple
add name="PCQ" target-addresses=192.168.0.0/24 dst-address=0.0.0.0/0
interface=all parent=none packet-marks=all-mark direction=both priority=1
queue=PCQ-up/PCQ-down limit-at=0/0 max-limit=15000000/15000000
total-queue=default-small disabled=yes
到这里就是建立动态限速的策略了!192.168.0.0/24 改为你IP段!max-limit=15000000/15000000 这里是你总宽带,电信给你多少就填多少!其他不用改,,因为需要转跳到上面的!
/ system script
add name="PCQON" source=":if ([ /queue sim get [/queue sim find
name="PCQ"] disable ]=true ) do={/queue sim enable PCQ}"
policy=ftp,reboot,read,write,policy,test,winbox,password
add name="PCQOFF" source=":if ([ /queue sim get [/queue sim find
name="PCQ"] disable ]=false ) do={/queue sim disable PCQ}"
policy=ftp,reboot,read,write,policy,test,winbox,password
这个是启发脚本,就是启发动态和关闭动态的脚本!直接复制!
/ tool traffic-monitor
add name="PCQON" interface=WAN traffic=received trigger=above
threshold=14800000 on-event=PCQON comment="" disabled=no
add name="PCQOFF" interface=WAN traffic=received trigger=below
threshold=5000000 on-event=PCQOFF comment="" disabled=no
这个是流量监控,我有15M设置是14.8M启发,足够了。不会延时或者怎么的,不建议改得太少。threshold=5000000是少于5M时关闭动态!这个自己掌握好!多试试!
另外注意的是!interface=WAN 把WAN改成你外网的网卡!
上面的每一段都需要,少一段这个脚本就不完整!不然没效果不要说我!
时间段来启发脚本,只需要改最后一段就OK了!
======================================================
/system scheduler add name=timeon interval=24h start-time=08:00:00 on-event={PCQON} disabled=no
/system scheduler add name=timeoff interval=24h start-time=23:59:59 on-event={PCQOFF} disabled=no
==============================================================
把最后一段替换成这段就是由时间段控制开关PCQ了!
2017-09-11Microsoft Office 2007 SP3 三合一绿色精简版下载
2017-08-31Icaros(资源管理器视频扩展插件) v3.02 绿色汉化版
2017-08-27Microsoft Visual C++ 运行库合集安装包64位完整版
2017-08-27Microsoft Visual C++ 运行库合集安装包32位完整版
2017-05-05Microsoft .net framework 4.7 64位 简体中文版
2017-05-04Microsoft Office 2007三合一 中文绿色破解版