|
在Tomato中文网上看到许多新手询问设置[url=]QoS[/url]的问题,比如为什么作者不开设置个限IP网速等问题。其实QoS的真谛在于共享网速的同时又能快速响应,看起来冲突的两件事,却让QoS很好的平衡起来(网络负载平衡)。
2 w5 b3 z3 b0 R9 w D8 q4 ]首先让大家了解一下QoS必要知识:
1 e v7 P% j% \9 D3 V" U网络协议:TCP/UDP,一个完整的TCP协议需要经过三次握手才能完成,这是目前主流的应用,比如看网页、上QQ、用迅雷……全都会用到这些协议。- J |" {) n- k9 I" ]* z
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议2 W, w9 {. ]8 m( P5 ^# [- C
TCP简单演示如下:
0 W3 F& n5 `) `! lPC1向PC2发出连接请求---> PC2回应请求(协商发送时间)--->PC1收到同意后发送数据
4 y4 ^3 ]2 d1 vUDP(User Data Protocol,用户数据报协议); |& }. m: h' G0 c
是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!我们经常使用“ping”原理就是向对方主机发送UDP数据包,对方主机如果返回确认收到数据包,那么网络就是通的。因为UDP协议没有连接的过程及基天点对点传送,所以它的通信效率高;但也正因为如此,它的可靠性不如TCP协议高。QQ就使用UDP发消息,因此有时会出现收不到消息的情况。- A; [! t- v+ X( _1 t/ H1 Y
IPP2P协议:分析每个包的具体特征,过虑P2P特征码。但效率不高,所以在下面设置QoS教程中,我用多重方法准确控制BT。% J& w4 s {9 `3 E Q5 R/ x
Layer7协议,基于正则式分析内容。通过顶层分析技术判断出是哪个[url=]程序[/url]发出的数据而加以控制,这也是[url=]linux[/url]的优势。缺点是要分析较多的数据包,效率低下,影响效能,同时存在误杀其它程序的可能。
: \ a" ~ c R协议简单介绍到这里,说说QoS主要拦截目标:
# ~7 \+ [+ `$ C8 Z1、基于MAC: X- {% [& Z" m" X: {9 a
2、基于端口$ S- l, H% ~% J
3、基于IP; Y# x! e2 @( L8 c0 B6 U' z
4、基于协议
* L1 x0 w8 U4 a$ x+ p) K( [$ u设置过程(图1):! ~+ p: Q) k& e9 r8 e, A

; w8 U0 g u2 x' D# X' JQoS 基本设置, q( T0 ~: `$ {/ z; K
开启带宽管理QoS 启用# i, { G; y; v$ Z/ P
给予优先权标志 ACK SYN FIN RST - \$ L' B8 O. ]& s& e
在这里我全都不选,P2P软件会产生大量的ACK数据包,如果启用会对其它程序产生干扰。' g& |# w$ l7 p4 t) a
$ E0 F% y' ?8 Y+ z" m$ C4 N; r% F
ICMP 给予优先权 不选,作网络测试用,响应快些,没什么帮助。反而担心一些程序不断发送ICMP数据干扰网络。3 N m( a$ A6 B! I1 i0 y
; f3 c6 O1 m/ ^1 ~# F
Strict Rule Ordering 严格按照规QoS则顺序执行,这个在1.18版本里已经没有了,如果使其它版本请先上。# a: Y# c& B. Z. `5 {: x
' q/ K# |+ \( ]
设置值改变时自动更新分级机制 启用,这样才能实时看到修改效果。1 q* m' f5 ~6 X1 J: d% Y4 J
' D* J; a; J N2 z' S8 B
优先权默认为 (等级): 选最低级 缺省QoS级别,这个指的是所有未被定义的协议的优先级。这个要配合分类设置里面的设置来决定,默认是低级,我改为最低级。) x/ B4 c, l4 n/ k! T
3 L3 A: S8 d3 J( x& t) L, }上传速率 / 限制其实数据参考营运商给你的套餐,以我的为例1M下行,512k上传! D3 \# Y/ Y+ A% G/ Y3 p4 f
最大速率 320 kbit/s& m0 o/ }9 \" U+ |# b0 B
" X& P1 g& i( \( Z6 p
千万不能乱填,它直接决定了qos是否能够正常工作。填得太大的话QoS就会发送比你的网络能承受的更多的数据,从而使网络阻塞,QoS也失去作用了。
1 o: L. p$ c0 y; h4 R5 t$ ^, I' ]; R一般[url=]ADSL[/url]上传是理论值是512kbit实际使用中损耗约10%,取它的90%到70%即可。
( g+ N4 M l, K4 K7 }# E) ?你如果不清楚,就用迅雷和BT高速下载,然后看看“带宽监控-实时流量图表”就知道了。
9 w0 _, S0 ^0 q0 Z! r3 p* E- _/ K 4 `( S+ Q! I2 G6 }0 a g6 J
下行速率限制 1200 kbit/s 这个正好相反,下行的速度总是愈快愈好,1M的下行对于100M内网来说真是小巫见大巫,也有网友建议设很大的值,但为更好的控制我在这里设1200kbit/s
6 {1 \% n3 v. Q- J0 H @
; H6 J8 C* g& }* c% j5 [ , Y* N) ^# |* J# f* L% v
最高级 100%5 B8 ~0 c Z/ \" M: d
高级 90%& n/ J t( X! n% Y" }% P
中级 80%' ~4 A, I; f6 ^! |$ B% v. r( f g
低级 70%
& k; U9 _1 z; ?+ U) j最低级 60%# m4 U- q8 z* ~# Y- B0 ?
A级 50%
0 F- e* f. a, K( v0 h& C! KB级 40%2 E& Y) h, y4 g, d2 u
C级 30%7 H$ V' h5 _! n) {1 z
D级 20%: q; l& R* K: N
E级 10%& i5 x/ C$ x4 c7 v
+ A. V( ^8 j! e, Q3 b5 F; O8 T- |这样的设置是为了让优先级高的应用尽快下行,并不限制低级别程序使用网速。
! v& ^0 \7 {/ p0 e * x/ ?0 m; s. T' }. q3 ]% Y
保存设置,进入分类设置
/ S/ O; M& O' e4 ETCP/UDP7 H7 |1 r2 b- X+ f& v( M
Dst Port: 53' ^- E2 }& y, [; l
Transferred: 0 - 2KB 最高级 DNS
9 F3 ~7 ?, W' KDNS非常重要,一定要设置为最高,并且放在最前面。不这样的话在大量下载的时候,DNS数据包可能会因为网络阻塞发送不出去,导致网页无法访问。$ L" w G9 J" l
) _! h8 x# Q: O% `+ ]2 L" I8 x$ U
/ Z; K" i$ x, i' Q
TCP/UDP2 o7 ?9 p: z! q4 q. F# ^
Src Port: 5800 高级 [url=]VPN[/url]
0 G1 v9 A; U9 I3 R# d' G \我偶尔用用VPN,为保证顺利设为高级, k) s; n* M$ v4 D# N; Z* ^6 W
. I" w' V# P$ c& i$ v8 QTCP W" M# z v1 u: o: l7 P' A- X
Src Port: 2782,2752 高级 Tdxw
/ L6 Y2 x @+ F- z4 f4 b0 M& s7 U9 l0 v: `这是股票软件端口,设为高级。
( |9 l. f A& E6 ~9 F u+ G
' J+ ~( h$ i/ V( @ ]TCP2 G) U& F0 i% L1 H6 F3 E' Q
Dst Port: 80
1 M! J4 ]' y# thttp# T3 q) t. k" C
Transferred: 0 - 512KB 中级 WWW
7 F, w/ x6 ~% T- ?TCP
9 T' V8 w7 \5 m/ B& C- i4 gDst Port: 443! D/ }, C, K, Y G6 D8 j! }) f* o
https
' k, \, i; a2 \- \8 F" O- ^ Y6 [Transferred: 0 - 512KB 中级 WWW
1 J* n+ p# r8 j当WWW应用低于512KB时中级响应,高于512KB降为低级见下* M1 l. K$ U7 r
6 q, y( m! [ b0 p" L2 r
TCP/UDP% S9 l% ]. U- n( s
L7: qq' V$ e/ M0 K0 |" b) X: |& |
Transferred: 0 - 512KB 低级 QQ/ [* L8 f& p" g
基于L7协议QQ低于512KB时低级响应。+ `- s6 ?. o- p1 x
) u- `0 Y' g6 q s; i' C4 G1 Y/ Y
UDP
( h! i/ M, r5 ]+ p3 X" FSrc Port: 6000-6020,8000 低级 QQ
) c6 m' `* p) O; w' M这是QQ常用源端口,当L7不准确时再次保证QQ运行于低级$ U7 i) x- I) M7 Q% e6 Y5 u
2 M5 O8 f$ q! F9 y
TCP
* V; R6 B# U% l* {4 X& I- JDst Port: 80. s% O( M/ c( f2 ?9 T
http! ?* y t; S8 e) S4 Y: U
Transferred: 512KB+ 低级 WWW (512K+): |8 S; a) W* |2 [5 v5 R, j+ r
现在伪装80端口下载的非常多,当流量在512K以上时降为低级: ~* p+ o5 s+ ]+ _8 j M
1 Y& o7 I9 W. w
TCP/UDP, G% R# x7 Z6 Z0 M3 d
Dst Port: 53
& ?$ `$ [$ L2 w$ tTransferred: 2KB+ 最低级 DNS (2K+)! I9 J- z" ^' W& L8 S
DNS的封包一般不大,所以把2KB以上的放入最低级
' i n) t$ d" r. j2 J M% [
' ?8 S$ \6 ]# Q1 t3 MTCP/UDP% m; J- W8 ?( V% E# L# i5 C
Port: 21 最低级 [url=]FTP[/url]- F9 T6 V* V+ W' C d) K
把FTP应用放最低级: {1 F- j5 S: o$ B
( e0 `1 _! y6 STCP/UDP
" r! ^$ X( ?# V6 x& {' W& Jipp2p: xunlei A级 xunlei' y' c. ~ r& n7 Q: H9 E6 w: }
基于IPP2P协议分析xunlei 设为A级响应。
! D4 ?8 f' v; ?2 \2 Y6 r
`; Q+ u( b1 BUDP
, f* Y% W' W% Q+ b( VSrc Port: 3500,4863,4867,4881,4883,15000,26411 A级 xunlei
" i. C1 ]9 M. x8 D" ^2 H% f/ m这是xunlei常用源端口,当IPP2P不准确时再次保证xunlei运行于低级2 u# r/ \9 x# S& s, c
记住这里和QQ都选源端口" ?0 y0 `$ i8 ~
TCP) ` U; Y4 m" I1 ?4 O
Src Port: 8000,36897 A级 xunlei1 `6 q' a! _ b" B
刚才控的是UDP现在控TCP端口,如果刚才选TCP/UDP的话会误伤很多程序。4 [2 A _7 ^0 y7 W2 k' Z
8 M" I0 u/ _. W4 E
TCP/UDP8 s1 }! I7 Z: D- J$ C
L7: bittorrent C级 BT
% W/ y7 O5 e; Y$ u基于L7协议分析BT 设为C级响应。
( E( `* C+ O' m* {
! M& x# s3 q% z0 j* rTCP/UDP
( x7 Z K; {( I5 v8 c! sSrc Port: 25000,6881-6889 C级 BT, C5 s: I2 W: O5 r/ v. z
基于端口协议分析BT 设为C级响应。* Y( c6 O0 e/ s+ s9 \" O
9 X7 S# ^$ ?1 b7 u# y$ i8 O
TCP/UDP/ [9 T, T5 \/ V F, v5 d. Q
Dst Port: 36898-65535 B级 Bulk Traffic
& i6 ^" l& D4 ~6 O+ v- D6 O8 n7 q # s, t0 ?( T! K* a8 p. ?4 T
0 @- }4 I+ M. U' E$ j很多网友说Bulk Traffic这条规划设置后,自己的其它设置都是无效的。其实L7协议是优先执行,且原规则端是1024—65535,通用式控制。所以在这里我调到36898-65535,设为B级。
" \6 q# \ g8 t以上的设置完成后,上网与下载BT就两不误了。大家可以根据需要进行调整。
8 H9 ?% T) c( NZhuang完成于2008-4-17 部份资料来自网络。
9 w. _9 W1 w3 `) [% F9 Y8 h% `发布完了,给大家发几张实测图上来:
& V# C" n5 t! Q% c9 R+ f, ~
( Z7 p1 J4 g6 k1 }' r$ I实时流量图
. p) W$ D2 `4 w' I1 M
, ^& y$ P5 {8 A4 g, A 1 n' m+ ?6 W' W; k( K6 z
24小时流量图
! f, x* |: V4 r; c* B 3 \' R: c7 N$ s; d+ I! j; d
' [5 B0 I2 t$ Z' o" f1 m# L
连接分布图6 L, t6 @0 ]! r, S* }2 o$ ]$ ?' v* E

/ T( B+ A! k; H/ K+ I/ V
) M! E, w* ]& L9 a# {, l带宽分布图
) E5 ?, g# D0 k" f+ S4 a; t( A. L
1 z" Z6 x' n- k: V |
|