可使用以下通用规则来学习Linux流量控制。可使用tcng 或 tc进行初始化配置Linux下的流量控制结构。html
qdisc
。当没有明确附加其余qdisc时会使用默认的qdisc( pfifo_fast
qdisc)。当一个链路已知带宽时,HTB是一个理想的qdisc,由于能够给最内层的(最根)类设置给定连接上的最大可用带宽。流量后续会被分割到子类中,用于保证特定类型的流量的带宽或容许优先选择特定类型的流量。linux
理论上,PRIO是一个理想的用于处理可变带宽的调度器,由于它是一个连续工做的qdisc(这意味着它不提供整流)。在带宽未知或波动的链路中,PRIO 调度器更喜欢优先将具备最高优先级的band中的全部报文出队列,而后再处理较低优先级的队列中。算法
在多种类型的网络带宽竞争中,这一般是比较容易处理的竞争类型之一。经过使用SFQ,特定队列中的流量能够分为多条流,而后公平地处理该队列中的每条流。表现良好的应用程序(和用户)会发现,使用SFQ和ESFQ足以知足大多数共享需求。网络
这些公平排队算法的致命弱点是没法抵御行为不端的用户或应用程序同时打开不少链接(例如,eMule, eDonkey, Kazaa)。经过建立大量独立的流,应用程序能够控制公平排队算法中的时间间隙。重申一下,公平排队算法不知道单个应用程序会生成大多数流,而且不会惩罚用户。 须要依赖其余方法。学习
对于许多管理员来讲,这是在用户之间划分带宽的理想方法。不幸的是,没有简单的解决方案,并且随着共享网络链接的机器数量的增长,它变得愈来愈复杂。.net
为了在N个IP地址之间公平地分配带宽,必须有N个类。code
更多参见 wondershaper.htm
myshaper
)更多参见myshaper.接口
htb.init
更多参见htb.init
.队列
tcng.init
更多参见 tcng.init
.
cbq.init
更多参见 cbq.init
.