2024年1月12日发(作者:)

PCQ即per connection queuing(每次连接排序)。踏实唯一一种能无等级排序的限流策略。

PCQ会根据pcq-classifier参数产生子队列。每个子队列都有一个pcq-rate的数据率限制和pcq-limit大小的数据包。PCQ总大小不能大于PCQ-total-limit。

为什么需要配置PCQ呢?

比如在局域网中总带宽为20M的带宽,如果不做流控一个用户可能把带宽资源全部霸占掉,从而影响掉其他用户的带宽。如果做每个带宽限制在1M,那么内网只有几个用户上网时,从而会浪费带宽。

所以我们做一个PCQ,限制下载为4M,上传为2M。这样当用户为2台时,他们的下载为4M,上传为2M。当用户为5台时下载为4M,上传为2M。当用户超过5个时,那门所以的用户就共享20M的带宽了。

PCQ实例 单线接入

首先做好一个网络连通的基本配置步骤:

外网连接:固定IP接入或者PPPOE-client拨号

NAT配置

DNS配置

内网配置,一般设置DHCP

其他设置就是路由器的时间设置

能正常连通外网后,就可以设置其他的策略了。

PCQ设置步骤:

抓取内外网的数据

对抓取到的数据做PCQ策略

1.抓取内外网数据:

Mangle配置

通过mangle的prerouting链表抓取tel口和lan口的数据

标记电信接口,即网络的下载,in-interface=ether2-tel,passthrough=no

(passthrough=no意思是标记的该条规则的数据不传递给下一条规则。也就可以这样说,把这条数据标记出来然后提取后就交给相应的规则处理,其他的规则就不能处理该条规则了)

标记电信接口,即网络的上传,in-interface=ether1-lan,passthrough=no

2. 对抓取到的数据做PCQ策略

总带宽12Mbps,主机120台

为每台主机下载分配总带宽的1/3,即down规则的pcq-rate=4M

通过计算total-limit=limit*120=6000

下载通过dst-address分类,上传通过src-addre分类

配置queue tree

在queue tree中添加规则,配置下行流量控制,取名为down

配置下行数据时注意总带宽为12M,需要保留部分缓冲带宽大概在1-2M,这里保留1.5M,