 鲜花( 0)  鸡蛋( 0)
|
网吧用ROS的个人看法
. o, f: L' d) v9 X C- K# `0 f : {7 T: K9 g+ G3 o* ~) u
一直以来,都看论坛上的达人说ROS做软路由器效果是多么的强大,于是偶也搞一个试试看。找了一个2.9.27的完全 *** 版,用了2块D-LINK530的网卡,装完一用还真行。比我那1000的锐捷强多了,网吧120台机器,座满的时候那个锐捷的路由器登陆界面都打不开。用上以后问题就来了,我们30M的光纤,如果不限速,那些下载狂人把带宽全部给占用了,打游戏的顾客很有意见。于是我就做了个限速,每个机器下载最大2M.平均1M。但是群众还是不满意,都所卡。我又找资料,pps影音标准版2010下载,发现原来还有个叫智能动态限速的东西,好偶照做。做好以后,平时喊卡的人没有了,人多的时候一样都喊卡。& \' U, D; X5 G* p6 D! u$ p5 j
偶傻眼了,难道只能不限速。还好天无绝人之路,还有个“小包优先”的高级货,于是照做。结果用简单队列限速后,“小包优先”也是白搭,难道天要忘我。终于经过N次测试以后,魔兽改键精灵4.5下载,我明白了。网吧用简单队列做限速完全是扯蛋。网吧限速最好的办法应该是带宽均分,然后在用简单队列来限制上传。在利用小包优先来处理游戏卡的问题。经过2个网吧,一个月的测试,完全摆脱了到处喊卡的噩梦,现在把经验发来大家分享一下。
& s1 s9 D( G3 ]( { E2 tROS不要用简单队列来限速,什么智能动态限速也不要用。只需要用小包优先+带宽均分+简单队列限制上传速度,360安全卫士7.0下载。9 n4 A6 R% s* V; {/ @0 A0 r6 C
小包优先的脚本如下:) F/ `# c+ p! M# b
ip firewall mangle + r- J7 u, t) B$ n0 M7 k+ r
add chain=forward p2p=all-p2p action=mark-connection new-connection-mark=p2p_conn passthrough=yes comment="" disabled=no
* z: p: q/ ?4 V; S# `add chain=forward connection-mark=p2p_conn action=mark-packet new-packet-mark=p2p passthrough=yes comment="" disabled=no
1 y7 {; W6 F7 K: g; w" O B: eadd chain=forward connection-mark=!p2p_conn action=mark-packet new-packet-mark=general passthrough=yes comment="" disabled=no
0 @3 i& \2 w1 }( w$ e9 V4 Xadd chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small passthrough=yes comment="" disabled=no * ?5 _* L$ ~1 z5 g& |8 b& w
add chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big passthrough=yes comment="" disabled=no
) C# K: T9 `( o' R + s9 u7 m0 i- u; r0 p
/ queue tree
3 _& n* a+ @$ G5 _8 N, p- @add 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
* E' Y4 @% b. ^8 \* U8 m" Tadd 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 & W- f5 C9 m- D: _6 B4 {
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 1 j" Q, V7 D3 l/ C
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 5 Q& u3 F2 ?4 o U W% d8 A7 @
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
* L5 x6 ]9 F2 x0 Dadd 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
6 l* U1 E2 ~: k1 p( wadd 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
* J! A0 i* Q: u7 i然后是带宽均分:
/ b8 e# a% j4 I+ E9 D/ip firewall mangle add chain=forward src-address=192.168.0.0/24 \
* p4 k. j0 J; {$ Vaction=mark-connection new-connection-mark=users-con
`3 M! _7 k. S7 T3 z; x/ip firewall mangle add connection-mark=users-con action=mark-packet \
$ I& ^: N5 m" o g. z. knew-packet-mark=users chain=forward+ Z6 k- L9 y6 D" H& `: z5 m
/queue type add name=pcq-download kind=pcq pcq-classifier=dst-address& v! A- q" o2 R/ W
/queue type add name=pcq-upload kind=pcq pcq-classifier=src-address
. @& S6 C# q1 l' \$ X6 y1 c! I/queue tree add name=Download parent=lan max-limit=30M9 U& O0 D( I3 e8 r- F; }; w9 P6 m
/queue tree add parent=Download queue=pcq-download packet-mark=users4 t, b+ k) M; V( _. x$ R9 T
/queue tree add name=Upload parent=wan max-limit=28M; o U/ f3 S2 l" u: u# z9 E) K
/queue tree add parent=Upload queue=pcq-upload packet-mark=users
: t+ u# J0 G% f& u请根据直接实际修改IP地址段,下载最大速度,上传最大速度,lan为我连接内网的网卡,wan是我连接外网的网卡
4 k5 D9 N* v- u# V7 v* F限制上传速度的脚本:) M# ^& M9 ]7 s: R
: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}
* R2 i0 X( j' K: @3 }3 P1 ?如果是3.2版本的,这个脚本自己要修改下,5 W* @& }2 v5 W$ b
就用这3个部分,别的不需要的,绝对比什么智能动态限速好的多。 |
|