马上注册成为ROSABC会员,随时发帖回复。
您需要 登录 才可以下载或查看,没有账号?会员注册
x
前言:
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了!
2.
add name="Down_5M" kind=pcq pcq-rate=5000000 pcq-limit=100 pcq-classifier=dst-address pcq-total-limit=10000
3.
add name="Down_4M" kind=pcq pcq-rate=4000000 pcq-limit=80 pcq-classifier=dst-address pcq-total-limit=9000
4.
add name="Down_3M" kind=pcq pcq-rate=3000000 pcq-limit=60 pcq-classifier=dst-address pcq-total-limit=7000
5.
add name="Down_2M" kind=pcq pcq-rate=2000000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=5000
6.
add name="Down_1M" kind=pcq pcq-rate=1000000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=5000
7.
add name="Down_768k" kind=pcq pcq-rate=768000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=4000
8.
add name="Down_512k" kind=pcq pcq-rate=512000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=3000
9.
add name="Down_384k" kind=pcq pcq-rate=384000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=2000
10.
add name="Down_256k" kind=pcq pcq-rate=256000 pcq-limit=20 pcq-classifier=dst-address pcq-total-limit=2000
11.
add name="Down_128k" kind=pcq pcq-rate=128000 pcq-limit=10 pcq-classifier=dst-address pcq-total-limit=1000
12.
add name="Down_64k" kind=pcq pcq-rate=64000 pcq-limit=10 pcq-classifier=dst-address pcq-total-limit=1000
13.
add name="Up_5M" kind=pcq pcq-rate=5000000 pcq-limit=100 pcq-classifier=src-address pcq-total-limit=10000
14.
add name="Up_4M" kind=pcq pcq-rate=4000000 pcq-limit=80 pcq-classifier=src-address pcq-total-limit=9000
15.
add name="Up_3M" kind=pcq pcq-rate=3000000 pcq-limit=60 pcq-classifier=src-address pcq-total-limit=7000
16.
add name="Up_2M" kind=pcq pcq-rate=2000000 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=5000
17.
add name="Up_1M" kind=pcq pcq-rate=1000000 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=5000
18.
add name="Up_768k" kind=pcq pcq-rate=768000 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=4000
19.
add name="Up_512k" kind=pcq pcq-rate=512000 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=3000
20.
add name="Up_384k" kind=pcq pcq-rate=384000 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=2000
21.
add name="Up_256k" kind=pcq pcq-rate=256000 pcq-limit=20 pcq-classifier=src-address pcq-total-limit=2000
22.
add name="Up_128k" kind=pcq pcq-rate=128000 pcq-limit=10 pcq-classifier=src-address pcq-total-limit=1000
23.
add name="Up_64k" kind=pcq pcq-rate=64000 pcq-limit=10 pcq-classifier=src-address pcq-total-limit=1000
26.
add name="256k" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
27.
interface=LAN parent=none direction=both priority=8
28.
queue=Up_128k/Down_256k limit-at=0/0 max-limit=0/0
29.
total-queue=default-small disabled=yes
30.
add name="512k" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
31.
interface=LAN parent=none direction=both priority=8
32.
queue=Up_384k/Down_512k limit-at=0/0 max-limit=0/0
33.
total-queue=default-small disabled=yes
34.
add name="768k" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
35.
interface=LAN parent=none direction=both priority=8
36.
queue=Up_512k/Down_768k limit-at=0/0 max-limit=0/0
37.
total-queue=default-small disabled=yes
38.
add name="1M" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
39.
interface=LAN parent=none direction=both priority=8 queue=Up_768k/Down_1M
40.
limit-at=0/0 max-limit=0/0 total-queue=default-small disabled=yes
41.
add name="2M" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
42.
interface=LAN parent=none direction=both priority=8 queue=Up_1M/Down_2M
43.
limit-at=0/0 max-limit=0/0 total-queue=default-small disabled=yes
44.
add name="3M" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
45.
interface=LAN parent=none direction=both priority=8 queue=Up_2M/Down_3M
46.
limit-at=0/0 max-limit=0/0 total-queue=default-small disabled=yes
47.
add name="4M" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
48.
interface=LAN parent=none direction=both priority=8 queue=Up_3M/Down_4M
49.
limit-at=0/0 max-limit=0/0 total-queue=default-small disabled=yes
50.
add name="5M" target-addresses=192.168.0.0/22 dst-address=0.0.0.0/0
51.
interface=LAN parent=none direction=both priority=8 queue=Up_4M/Down_5M
52.
limit-at=0/0 max-limit=0/0 total-queue=default-small disabled=no
55.
add name="d256"source="/queue sim disable 256k"
56.
policy=ftp,reboot,read,write,policy,test,winbox,password
57.
add name="e256"source="/queue sim enable 256kn/queue sim enable 512kn/queue sim enable 768kn/queue sim enable 1Mn/queue sim enable 2Mn/queue sim enable 3Mn/queue sim enable 4M"
58.
policy=ftp,reboot,read,write,policy,test,winbox,password
59.
add name="d512"source="/queue sim disable 512kn/queue sim disable 256k"
60.
policy=ftp,reboot,read,write,policy,test,winbox,password
61.
add name="e512"source="/queue sim enable 512kn/queue sim enable 768kn/queue sim enable 1Mn/queue sim enable 2Mn/queue sim enable 3Mn/queue sim enable 4M"
62.
policy=ftp,reboot,read,write,policy,test,winbox,password
63.
add name="d768"source="/queue sim disable 768kn/queue sim disable 512kn/queue sim disable 256k"
64.
policy=ftp,reboot,read,write,policy,test,winbox,password
65.
add name="e768"source="/queue sim enable 768kn/queue sim enable 1Mn/queue sim enable 2Mn/queue sim enable 3Mn/queue sim enable 4M"
66.
policy=ftp,reboot,read,write,policy,test,winbox,password
67.
add name="d1M"source="/queue sim disable 1Mn/queue sim disable 768kn/queue sim disable 512kn/queue sim disable 256k"
68.
policy=ftp,reboot,read,write,policy,test,winbox,password
69.
add name="e1M"source="/queue sim enable 1Mn/queue sim enable 2Mn/queue sim enable 3Mn/queue sim enable 4M"
70.
policy=ftp,reboot,read,write,policy,test,winbox,password
71.
add name="d2M"source="/queue sim disable 2Mn/queue sim disable 1Mn/queue sim disable 768kn/queue sim disable 512kn/queue sim disable 256k"
72.
policy=ftp,reboot,read,write,policy,test,winbox,password
73.
add name="e2M"source="/queue sim enable 2Mn/queue sim enable 3Mn/queue sim enable 4M"
74.
policy=ftp,reboot,read,write,policy,test,winbox,password
75.
add name="d3M"source="/queue sim disable 3Mn/queue sim disable 2Mn/queue sim disable 1Mn/queue sim disable 768kn/queue sim disable 512kn/queue sim disable 256k"
76.
policy=ftp,reboot,read,write,policy,test,winbox,password
77.
add name="e3M"source="/queue sim enable 3Mn/queue sim enable 4M"
78.
policy=ftp,reboot,read,write,policy,test,winbox,password
79.
add name="d4M"source="/queue sim disable 4Mn/queue sim disable 3Mn/queue sim disable 2Mn/queue sim disable 1Mn/queue sim disable 768kn/queue sim disable 512kn/queue sim disable 256k"
80.
policy=ftp,reboot,read,write,policy,test,winbox,password
81.
add name="e4M"source="/queue sim enable 4M"
82.
policy=ftp,reboot,read,write,policy,test,winbox,password
84.
/ tool traffic-monitor
85.
add name="256kon" interface=WAN18M traffic=received trigger=above
86.
threshold=18000000 on-event=e256 comment="" disabled=no
87.
add name="256koff" interface=WAN18M traffic=received trigger=below
88.
threshold=17000000 on-event=d256 comment="" disabled=no
89.
add name="512kon" interface=WAN18M traffic=received trigger=above
90.
threshold=16000000 on-event=e512 comment="" disabled=no
91.
add name="512koff" interface=WAN18M traffic=received trigger=below
92.
threshold=15000000 on-event=d512 comment="" disabled=no
93.
add name="768kon" interface=WAN18M traffic=received trigger=above
94.
threshold=14000000 on-event=e768 comment="" disabled=no
95.
add name="768koff" interface=WAN18M traffic=received trigger=below
96.
threshold=13000000 on-event=d768 comment="" disabled=no
97.
add name="1Mon" interface=WAN18M traffic=received trigger=above
98.
threshold=12000000 on-event=e1M comment="" disabled=no
99.
add name="1Moff" interface=WAN18M traffic=received trigger=below
100.
threshold=11000000 on-event=d1M comment="" disabled=no
101.
add name="2Mon" interface=WAN18M traffic=received trigger=above
102.
threshold=10000000 on-event=e2M comment="" disabled=no
103.
add name="2Moff" interface=WAN18M traffic=received trigger=below
104.
threshold=9000000 on-event=d2M comment="" disabled=no
105.
add name="3Mon" interface=WAN18M traffic=received trigger=above
106.
threshold=8000000 on-event=e3M comment="" disabled=no
107.
add name="3Moff" interface=WAN18M traffic=received trigger=below
108.
threshold=7000000 on-event=d3M comment="" disabled=no
109.
add name="4Mon" interface=WAN18M traffic=received trigger=above
110.
threshold=6000000 on-event=e4M comment="" disabled=no
111.
add name="4Moff" interface=WAN18M traffic=received trigger=below
112.
threshold=5000000 on-event=d4M comment="" disabled=no
复制代码 |