 鲜花( 0)  鸡蛋( 0)
|
网吧用ROS的个人看法
4 a6 \2 N5 X' m8 ^+ H! x ; l4 T+ M* k, b
一直以来,都看论坛上的达人说ROS做软路由器效果是多么的强大,于是偶也搞一个试试看。找了一个2.9.27的完全 *** 版,用了2块D-LINK530的网卡,装完一用还真行。比我那1000的锐捷强多了,网吧120台机器,座满的时候那个锐捷的路由器登陆界面都打不开。用上以后问题就来了,我们30M的光纤,如果不限速,那些下载狂人把带宽全部给占用了,打游戏的顾客很有意见。于是我就做了个限速,每个机器下载最大2M.平均1M。但是群众还是不满意,都所卡。我又找资料,pps影音标准版2010下载,发现原来还有个叫智能动态限速的东西,好偶照做。做好以后,平时喊卡的人没有了,人多的时候一样都喊卡。
# R3 N7 m4 X. q! r7 X# }. O偶傻眼了,难道只能不限速。还好天无绝人之路,还有个“小包优先”的高级货,于是照做。结果用简单队列限速后,“小包优先”也是白搭,难道天要忘我。终于经过N次测试以后,魔兽改键精灵4.5下载,我明白了。网吧用简单队列做限速完全是扯蛋。网吧限速最好的办法应该是带宽均分,然后在用简单队列来限制上传。在利用小包优先来处理游戏卡的问题。经过2个网吧,一个月的测试,完全摆脱了到处喊卡的噩梦,现在把经验发来大家分享一下。( Y1 b3 n1 j: w: G: g6 H$ x4 _( d
ROS不要用简单队列来限速,什么智能动态限速也不要用。只需要用小包优先+带宽均分+简单队列限制上传速度,360安全卫士7.0下载。$ L6 c$ w& O$ G3 M8 U p% P
小包优先的脚本如下:* L9 [" e W, T. A
ip firewall mangle ' d! K( C/ g8 x4 H
add chain=forward p2p=all-p2p action=mark-connection new-connection-mark=p2p_conn passthrough=yes comment="" disabled=no $ U2 C# j/ i- E8 R
add chain=forward connection-mark=p2p_conn action=mark-packet new-packet-mark=p2p passthrough=yes comment="" disabled=no
1 p6 H7 |- E7 R0 W+ f& r" ^add chain=forward connection-mark=!p2p_conn action=mark-packet new-packet-mark=general passthrough=yes comment="" disabled=no
) C/ q* X7 \0 ~; l* l( f5 S6 Gadd chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small passthrough=yes comment="" disabled=no
: h& i" i6 `5 u0 kadd chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big passthrough=yes comment="" disabled=no' h, A' G+ T7 g9 L7 r7 e
. r( R+ q' H7 h6 U2 V) P
/ queue tree
8 u( j. X6 ^" O% m radd 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 3 Q) J3 ?& ^: @& _. R6 ]
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 4 e: K( v- ]3 ~, Q( o1 Z: j# r
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 6 }) q5 e! l5 B. M& }
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 + R" \" l. v# F6 j
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
' u& y. m; g* S! h4 N9 E/ p0 f+ Badd 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
8 w9 ]8 y7 ~" D: ~/ Dadd 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
5 D' M% n4 x* ^5 @1 `' i: M" P然后是带宽均分:
3 l8 b& X1 X7 d/ip firewall mangle add chain=forward src-address=192.168.0.0/24 \0 f* c) [9 W- \4 s2 O
action=mark-connection new-connection-mark=users-con$ E! N/ C1 @6 F' H4 T* J
/ip firewall mangle add connection-mark=users-con action=mark-packet \/ B: y" j& p4 k6 t- b
new-packet-mark=users chain=forward6 z$ N- w9 f5 V9 C, z2 Y
/queue type add name=pcq-download kind=pcq pcq-classifier=dst-address
( [5 c4 n* n9 G7 {" m6 P/queue type add name=pcq-upload kind=pcq pcq-classifier=src-address9 w, Q1 A$ g! N- y. p
/queue tree add name=Download parent=lan max-limit=30M
; f0 a1 u3 D& F/ \( C3 C6 u6 j0 H/queue tree add parent=Download queue=pcq-download packet-mark=users
5 N( {0 l2 A8 a5 ?5 G/queue tree add name=Upload parent=wan max-limit=28M2 b( A$ g* u8 I* Y' N% e9 \
/queue tree add parent=Upload queue=pcq-upload packet-mark=users. f" M2 V" }+ I& P; Z" ]# L$ f
请根据直接实际修改IP地址段,下载最大速度,上传最大速度,lan为我连接内网的网卡,wan是我连接外网的网卡' b6 g& Z3 [8 A7 K
限制上传速度的脚本:) Q& H" N ]1 U3 ]. v, j! q) F3 ]
: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}% Q e# R' m$ e" |! d! v
如果是3.2版本的,这个脚本自己要修改下,
- m# L# y, O& D3 @/ }就用这3个部分,别的不需要的,绝对比什么智能动态限速好的多。 |
|