 鲜花( 0)  鸡蛋( 0)
|
网吧用ROS的个人看法$ p1 T* a; {4 L
) A- v8 F' Z) g; {) k: H8 D8 l一直以来,都看论坛上的达人说ROS做软路由器效果是多么的强大,于是偶也搞一个试试看。找了一个2.9.27的完全 *** 版,用了2块D-LINK530的网卡,装完一用还真行。比我那1000的锐捷强多了,网吧120台机器,座满的时候那个锐捷的路由器登陆界面都打不开。用上以后问题就来了,我们30M的光纤,如果不限速,那些下载狂人把带宽全部给占用了,打游戏的顾客很有意见。于是我就做了个限速,每个机器下载最大2M.平均1M。但是群众还是不满意,都所卡。我又找资料,pps影音标准版2010下载,发现原来还有个叫智能动态限速的东西,好偶照做。做好以后,平时喊卡的人没有了,人多的时候一样都喊卡。
' i( i. n) ~) J; [; E6 p& s& Y偶傻眼了,难道只能不限速。还好天无绝人之路,还有个“小包优先”的高级货,于是照做。结果用简单队列限速后,“小包优先”也是白搭,难道天要忘我。终于经过N次测试以后,魔兽改键精灵4.5下载,我明白了。网吧用简单队列做限速完全是扯蛋。网吧限速最好的办法应该是带宽均分,然后在用简单队列来限制上传。在利用小包优先来处理游戏卡的问题。经过2个网吧,一个月的测试,完全摆脱了到处喊卡的噩梦,现在把经验发来大家分享一下。3 y* W$ N b# l* j0 c; _, Q
ROS不要用简单队列来限速,什么智能动态限速也不要用。只需要用小包优先+带宽均分+简单队列限制上传速度,360安全卫士7.0下载。% u# z% I6 ^+ C5 m5 {5 v0 g
小包优先的脚本如下:8 A, @& j$ Q4 ~) R7 Y( O. W
ip firewall mangle ; l0 J6 [ }/ K# C( ^1 } X5 B& F
add chain=forward p2p=all-p2p action=mark-connection new-connection-mark=p2p_conn passthrough=yes comment="" disabled=no ( s' N/ |8 U5 X
add chain=forward connection-mark=p2p_conn action=mark-packet new-packet-mark=p2p passthrough=yes comment="" disabled=no * f; j1 H& n" q. @# k( }
add chain=forward connection-mark=!p2p_conn action=mark-packet new-packet-mark=general passthrough=yes comment="" disabled=no
/ A! z5 n- B, }" ]: Eadd chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small passthrough=yes comment="" disabled=no
$ p& [8 l$ P& W2 Badd chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big passthrough=yes comment="" disabled=no! D$ X; l0 {9 a% u
6 X' B2 c; f/ v: c1 ^+ M
/ queue tree
+ K. t+ ^8 A4 t: m* ?8 Gadd name="p2p1" parent=wan packet-mark=p2p limit-at=2000000 queue=default priority=8 max-limit=6000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no \( k7 \* t3 d& K/ n! u% @
add name="p2p2" parent=lan packet-mark=p2p limit-at=2000000 queue=default priority=8 max-limit=6000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no / t& u' P. X M, P+ B
add name="ClassA" parent=lan packet-mark="" limit-at=0 queue=default priority=8 max-limit=100000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no / w$ g g- H4 ^; B1 ~* l! R3 E7 N, I
add name="ClassB" parent=ClassA packet-mark="" limit-at=0 queue=default priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no 9 C) p- u# L4 @9 t: @
add name="Leaf1" parent=ClassA packet-mark=general limit-at=0 queue=default priority=7 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
7 y& N7 d( P; M# C% x/ o: hadd name="Leaf2" parent=ClassB packet-mark=small limit-at=0 queue=default priority=5 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
5 J* `1 }5 c% z7 C/ ~4 Jadd name="Leaf3" parent=ClassB packet-mark=big limit-at=0 queue=default priority=6 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
& k% K) P& i1 b. a然后是带宽均分:
/ i' O% g. T, r' B# m( s O* U/ip firewall mangle add chain=forward src-address=192.168.0.0/24 \
; u2 T, A9 _* W" R4 Xaction=mark-connection new-connection-mark=users-con
4 j( o3 X& l" `) Z3 b/ip firewall mangle add connection-mark=users-con action=mark-packet \4 L& M, j3 e& d1 l9 _
new-packet-mark=users chain=forward- u1 G5 C& r. x3 t/ y0 X9 T- ~5 w
/queue type add name=pcq-download kind=pcq pcq-classifier=dst-address
" d% R, t+ F: |/ l/queue type add name=pcq-upload kind=pcq pcq-classifier=src-address0 `$ y( D( ]9 ~5 y
/queue tree add name=Download parent=lan max-limit=30M7 h; e" F: e& n1 b8 `9 i; J$ Y1 g) R
/queue tree add parent=Download queue=pcq-download packet-mark=users
2 Q% m- L3 H* D6 i( L/queue tree add name=Upload parent=wan max-limit=28M
) f! W! k( X4 f% E/queue tree add parent=Upload queue=pcq-upload packet-mark=users
/ i6 A$ x0 i' x. Y3 @% [! @请根据直接实际修改IP地址段,下载最大速度,上传最大速度,lan为我连接内网的网卡,wan是我连接外网的网卡
# I( x' W, S. U% L限制上传速度的脚本:: I3 W2 u6 D$ g5 _# }8 S
:for aaa from 2 to 180 do={/queue simple add name=(PC . $aaa) dst-address=(192.168.0. . $aaa) limit-at=10000000/3000000 max-limit=30000000/3000000}3 h/ ]) t" l' z0 B0 y) U6 j% \. A# @
如果是3.2版本的,这个脚本自己要修改下,' ` }, R4 W5 r) A, C$ Z
就用这3个部分,别的不需要的,绝对比什么智能动态限速好的多。 |
|