我是靠谱客的博主 标致黑裤,最近开发中收集的这篇文章主要介绍CBWFQ——基于类的加权公平队列,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CBWFQ能够用于提供固定带宽保证
CBWFQ扩展了标准WFQ功能,提供用户自定义流量类别的支持。
可以基于用户定义的匹配条件进行分类;
数据包满足匹配条件构成了流量的类别。
队列是保留给每一个类,属于同一类的流量被引导到优先级队列。
CBWFQ architecture 体系结构
在这里插入图片描述可以认为定义类的内容,然后采取WFQ的方式进行分类。比如把ICMP流量放到class1,协议流量放置class2,没有规定的放置到class-default。CBWFQ支持多个类(取决于平台)

CBWFQ architecture:classification
分类采用class maps;
某些分类选项的可用性取决于Cisco IOS版本;
一些分类选项取决于使用服务策略的接口和封装的类型;
for example:
帧中继上的匹配丢弃符合条件的位元只能用在具有帧中继封装的接口上。
如果MPLS不被启用,在MPLS EXP位上的匹配没有影响。
如果不使用ISL,则对ISL优先级位的匹配没有影响。
CBWFQ architecture:insertion policy插入策略
每个队列可以容纳的包的最大数量(队列大小)。最大队列大小与平台相关。
包被分类到一个队列后,如果没有达到队列限制(tail-drop within each class,尾丢弃),路由器将对包进行排队。
WRED可以与CBWFQ结合使用,以防止类——CBWRED的拥塞

CBWFQ architecture:scheduling调度
CBWFQ根据分配给流量类的权重来保证带宽,可以通过指定来定义权重,以下三种分配方式:
带宽(in kbps)
带宽百分比(可用接口带宽百分比)
剩余可用带宽的百分比
一个服务策略不能有混合类型的权重,比如说第一个class map 1匹配的是带宽,class map 2也必须匹配带宽。
show interface命令可以用来显示可用的带宽。

CBWFQ architecture:available bandwidth 可用带宽
可用带宽的计算公式如下
在这里插入图片描述可用带宽=接口带宽*百分比(75%,不推荐调大)-SUM(已经分配出去的)

75 percent rule
在这里插入图片描述结果必须小于或等于接口带宽的75%(或帧中继、DLCI、CIR)
是为开销流量(如第2层保持和类默认流量的带宽)留下空间。
75%法则是保守法则,最大保留带宽命令超过75%的限制,但很少推荐。

注意:
*接口未指定带宽:接口实际带宽*百分比
接口指定带宽:设置的带宽 * 75%百分比
(默认指定带宽了,采取75%的保护机制,可以设置这个数值,如果设置100%则计算方式和上述一致。)
max-reserved-bandwidth 100 在接口下指定带宽的利用率达到100%

配置CBWFQ
在这里插入图片描述为一个类分配固定数量的带宽,可以设置以kbps为单位的值。
在这里插入图片描述为一个类分配一定百分比的带宽,配置(或默认)的接口带宽用于计算保证的带宽。
在这里插入图片描述将可用带宽的百分比分配给一个类。
在这里插入图片描述设置此队列可以容纳的最大数据包数,默认的最大值是64
在这里插入图片描述可以将“class-default”类配置为使用WFQ。动态队列的数量是16到4096之间的2的幂,指定动态队列的数量。

Router(config)# access-list 101 permit udp host 10.10.10.10 host 10.10.10.20 range 16384 20000
Router(config)# access-list 102 permit udp host 10.10.10.10 host 10.10.10.20 range 53000 56000
Router(config)# class-map class1
Router(config-cmap)# match access-group 101
Router(config-cmap)# exit
Router(config-cmap)# class-map class2
Router(config-cmap)# match access-group 102
Router(config-cmap)# exit

Router(config)# policy-map policy1
Router(config-pmap)# class class1
Router(config-pmap-c)# bandwidth 3000
Router(config-pmap-c)# queue-limit 30
Router(config-pmap-c)# exit
Router(config-pmap)# class class2
Router(config-pmap-c)# bandwidth 2000
Router(config-pmap-c)# exit

显示CBWFQ的参数和统计信息

router#show policy-map interface
 FastEthernet0/0

  Service-policy output: Policy1

    Class-map: Class1 (match-any)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any
      Weighted Fair Queueing
        Output Queue: Conversation 265
        Bandwidth remaining 20 (%) Max Threshold 64 (packets)
        (pkts matched/bytes matched) 0/0
        (depth/total drops/no-buffer drops) 0/0/0
    Class-map: class-default (match-any)
      42 packets, 4439 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any

先access-list抓取流量,采用class-map匹配流量,policy-map进行调度(设置队列最大数据包,带宽等),最后接口调用。

最后

以上就是标致黑裤为你收集整理的CBWFQ——基于类的加权公平队列的全部内容,希望文章能够帮你解决CBWFQ——基于类的加权公平队列所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部