mching 发表于 2010-1-27 23:50:32

写给想做HTB限速,又没有成功的朋友!

本帖最后由 mching 于 2010-1-28 09:43 编辑

本文完全来自于自己的经验,仅供参考~!转载请注明出处!~

要想做限速,必须要知道以下几点:
首先要知道自己要限制什么的速度,谁的速度,于是需要用的标记,即Mangle。
其次要知道怎么限速,是限制上传,还是下载?
最后要知道所做的限速是否成功,即需要知道如何检查!

1、标记(mangle)
这是很有学问的一件事情,ros对数据包的标记不是很好,必须要通过标记连接以后再来标记数据包!
即,先通过mark connection,再通过connection来mark packet!(问:为什么非要标记成packet,不能直接用connection?)
mark的时候需注意passthrough,前面标记过的connection且勾选了passthrough,后面条件符合该连接的时候就会标记成后面的连接。
每个连接只会有一个标记!切记,切记!

2、Parent(父节点)
个人感觉很有意思的意见事情,因为ros的帮助文档中明确说明了,ros是管出不管入,而前面标记的都是整个连接的数据包(既有上行,又有下行!)
在设置htb的时候,父节点设置为wan口就为上行的流量,父节点为lan口就为下行的流量。
此外,父节点仅负责流量的整形与优先级的排队,并不存储任何数据包,即它是不存在任何队列的!

3、firewall(防火墙)
通过ros所有的连接都是掌控在firewall的法眼中的,通过connection的标签可以很容易的观察到所有用户的连接情况。
在connection mark中很容易看到某条连接是被自己标记成了什么,最好的情况是所有的连接均被标记,这样后面的htb才比较准确!
这是至关重要的一步,如果connection都没有被打上标记,限速注定是失败的!

4、Queue Tree
只需要说一点,某个节点只要被其他节点认成parent,它就失去了packet mark的权利!
这也是第一点中为什么标记成packet而不直接用connection的原因!
只要叶子节点在packet mark中选中标记的packet才有效!

5、Limit At & Max Limit
很多人误解Max Limit是最好的限速工具,其实不然,在HTB中最重要的是limit At(个人简介)!
ros总是保证了Limit At以后才有闲心去检测Max Limit!

说的比较笼统,理解靠个人!

希望对那些学了一点又有些困惑的朋友有些帮助,一无所知的就当是来打了酱油!

7851858b1 发表于 2010-1-28 00:25:13

:lol说的不错做个朋友一交流下7851858

WGHBOY 发表于 2010-1-28 01:32:19

我来打酱油

cool525000 发表于 2010-1-28 13:22:10

我的限速 某一个面.

WGHBOY 发表于 2010-1-28 17:55:24

图上的是光纤的

kisswen 发表于 2010-1-28 22:53:52

mark~
明天认真看一下
现在睡觉了

xxwt2004 发表于 2010-2-18 11:40:07

说的不错

47771885 发表于 2010-2-18 13:23:44

。。。

本帖最后由 47771885 于 2010-2-18 13:25 编辑

说的很好 很详细、、、、不过还 是欠缺了一点。。。。

g1325 发表于 2010-3-21 03:42:15

打水来了。

phenix3344 发表于 2010-3-28 10:13:07

嗯不错,可以看得出来楼主对htb和queue tree有研究
没有实践过和系统学习过理论的朋友,只能来打酱油了,呵呵

supermp3 发表于 2010-3-28 10:27:01

打电话的经过!

maudaban 发表于 2010-4-6 21:34:53

打酒來了......:lol

userhxc 发表于 2010-4-6 22:01:17

路 过看看

zhanwu007 发表于 2010-4-9 13:41:15

路 过看看

WangTC 发表于 2010-4-9 18:32:20

让我们也学习一下这么牛的东西一定要看
页: [1] 2 3 4 5
查看完整版本: 写给想做HTB限速,又没有成功的朋友!