 鲜花( 0)  鸡蛋( 0)
|
网吧用ROS的个人看法2 p$ [# |: ~& c: |( v% G" k% `5 }
, m: W8 ~" r( T4 ~! P一直以来,都看论坛上的达人说ROS做软路由器效果是多么的强大,于是偶也搞一个试试看。找了一个2.9.27的完全 *** 版,用了2块D-LINK530的网卡,装完一用还真行。比我那1000的锐捷强多了,网吧120台机器,座满的时候那个锐捷的路由器登陆界面都打不开。用上以后问题就来了,我们30M的光纤,如果不限速,那些下载狂人把带宽全部给占用了,打游戏的顾客很有意见。于是我就做了个限速,每个机器下载最大2M.平均1M。但是群众还是不满意,都所卡。我又找资料,pps影音标准版2010下载,发现原来还有个叫智能动态限速的东西,好偶照做。做好以后,平时喊卡的人没有了,人多的时候一样都喊卡。! N1 g" L0 I, g) l
偶傻眼了,难道只能不限速。还好天无绝人之路,还有个“小包优先”的高级货,于是照做。结果用简单队列限速后,“小包优先”也是白搭,难道天要忘我。终于经过N次测试以后,魔兽改键精灵4.5下载,我明白了。网吧用简单队列做限速完全是扯蛋。网吧限速最好的办法应该是带宽均分,然后在用简单队列来限制上传。在利用小包优先来处理游戏卡的问题。经过2个网吧,一个月的测试,完全摆脱了到处喊卡的噩梦,现在把经验发来大家分享一下。
- l$ y9 `- z }3 }ROS不要用简单队列来限速,什么智能动态限速也不要用。只需要用小包优先+带宽均分+简单队列限制上传速度,360安全卫士7.0下载。2 ^0 P) a$ x. L/ I |1 p
小包优先的脚本如下:( `% X% V0 [) D! X1 n" ]
ip firewall mangle
1 i1 X- G: M8 ? L' d+ h. uadd chain=forward p2p=all-p2p action=mark-connection new-connection-mark=p2p_conn passthrough=yes comment="" disabled=no
, z( @5 h' y; T6 l8 j3 Uadd chain=forward connection-mark=p2p_conn action=mark-packet new-packet-mark=p2p passthrough=yes comment="" disabled=no
( `: X2 U3 f3 Q2 @' B2 wadd chain=forward connection-mark=!p2p_conn action=mark-packet new-packet-mark=general passthrough=yes comment="" disabled=no : D5 W8 R! l. T% B# @# Q4 i/ S
add chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small passthrough=yes comment="" disabled=no
6 P3 s# y e4 w& D1 `% P9 b# l' Eadd chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big passthrough=yes comment="" disabled=no- q# J5 n' e/ |9 Q+ m- n l
7 M* D0 b! g5 [# [4 G
/ queue tree 5 {; B" G) s; V. P! C
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
+ v% c5 y! c2 W, j! Fadd 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
* B: G$ r8 ]& w" V* `/ K- m6 g) Aadd 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
& o7 v! P8 p! O% 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
! i9 U- O3 h f: c8 |! | Y( hadd 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
' D3 s0 N& z K2 E' ?add 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 4 u+ W6 i( X2 o- S/ A u& Z h0 O
add 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
% B+ h1 V; y2 E' c然后是带宽均分:0 y3 g& K/ h2 P. b
/ip firewall mangle add chain=forward src-address=192.168.0.0/24 \/ d) ]3 O2 d: n3 X
action=mark-connection new-connection-mark=users-con9 q z, ]1 v1 q- [; C# G/ H9 z
/ip firewall mangle add connection-mark=users-con action=mark-packet \4 @. |6 E! z+ S# W, c
new-packet-mark=users chain=forward) u0 ~# s; h1 l
/queue type add name=pcq-download kind=pcq pcq-classifier=dst-address. F8 {% _( o& {5 U
/queue type add name=pcq-upload kind=pcq pcq-classifier=src-address1 B( F" [ ?/ q. j: E( J& u
/queue tree add name=Download parent=lan max-limit=30M
9 u: n7 C8 C- _- }8 C/queue tree add parent=Download queue=pcq-download packet-mark=users
1 g; t P- y, L' h7 I" L5 J/queue tree add name=Upload parent=wan max-limit=28M1 d% H3 y/ }( ]( Q
/queue tree add parent=Upload queue=pcq-upload packet-mark=users
; m& C, a7 W' w$ K4 T请根据直接实际修改IP地址段,下载最大速度,上传最大速度,lan为我连接内网的网卡,wan是我连接外网的网卡
9 X% A0 @7 p$ x# t& x2 Q: _限制上传速度的脚本:
9 P! }$ O' L* D9 U: `: x% d$ w: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}
* q9 z1 b. P: Z+ j7 b; \% s- j如果是3.2版本的,这个脚本自己要修改下,
/ C J) i& v1 a! ^! A6 U# I1 `, K就用这3个部分,别的不需要的,绝对比什么智能动态限速好的多。 |
|