QOS-CBQ概述

Posted good-study

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QOS-CBQ概述相关的知识,希望对你有一定的参考价值。

CBQ(基于类的对列)是一种基于QOS policy实现的拥塞管理技术。

  • CBQ中包含一个LLQ(低延迟队列),用来支撑EF(快速转发)类业务被绝对优先发送,保证延迟。
  • CBQ中最大包含64个BQ(带宽保证队列),用来支撑AF(确保转发)类业务,保证每一个队列的带宽及可控的延迟。
  • CBQ中还包含一个默认队列,对应一个默认分类,用于为默认的BE(尽力传送)类业务提供服务。其使用WFQ队列调度,利用接口剩余带宽进行发送。

 

CBQ入队列处理:

 技术分享图片

 

EF 队列:(LLQ队列)

  • CBQ最多包含64个EF类,每类EF流量都对应一个虚拟的EF队列,每个EF队列都有自己的配置带宽。(实际上EF队列的报文进入同一个LLQ队列)
  • 拥塞发生时,各EF类的流量按自己的配置带宽进行流量监管,超出配置带宽范围的流量被丢弃。
  • LLQ丢弃策略为尾丢弃,BQ、BE可以为尾丢弃或WRED

 

AF队列:(BQ队列)

  • CBQ最多包含64个AF类,每个AF类对应一个AF队列。每个AF队列实际上是一个BQ,每个BQ都有自己的配置带宽(最低保证带宽)
  • 拥塞发生时,BQ至少可以获得此配置带宽量。BQ使用尾丢弃或WRED丢弃

 

EF类和AF类配置的带宽之和称为CBQ的总配置带宽。

CBQ将默认流量作为BE类对待,送入BE队列。BE内部实际上使用WFQ队列调度,可以使用尾丢弃或WRED丢弃。

 

CBQ队列调度:

 技术分享图片

 

  • 当所有BQ队列为空,或者BQ队列的出列报文会导致LLQ和BQ的出队列报文所占带宽总和超过CBQ的总配置带宽时,停止BQ队列调度,开始调度WFQ队列。
  • LLQ队列在数据队列中具有绝对高优先级,所以EF类的延迟和抖动都可以降到最低,这为延迟敏感的应用(VoIP业务)提供了良好的服务质量保证
  • 当LLQ和BQ队列流量都不足时,WFQ可以使用剩余全部带宽

 技术分享图片

  • 队列势能与队列中当前报文长度成正比,与队列的保证带宽成反比。
  • BQ队列既可以根据用户需求分配队列的保证带宽,又优先照顾了小报文的利益。

 

QOS最大可用带宽:

  • 接口的QOS最大可用带宽,是指在此接口上CBQ可能占用的最大带宽
  • QOS最大可用带宽并非接口实际带宽,允许手工配置
  • 配置接口QOS最大可用带宽:

 技术分享图片

 

  • 不配置时,使用如下缺省值:
    • 对于物理接口,其取值为物理接口实际的波特率或速率
    • 对于T1/E1、MFR等通过绑定生成的逻辑串口,其取值为绑定通道的总带宽
    • 对于VT、Dialer、BRI、PRI等模板类型的接口,取值为1000000kbps
    • 对于其它虚接口(如Tunnel接口),取值为0kbps

QOS预留带宽:

  • 为了避免缺省类的数据流被“饿死”,CBQ队列中LLQ和BQ队列配置带宽的总和不得超过QOS预留带宽
  • QoS预留带宽计算公式:
    • 预留带宽=QOS最大可用带宽*QoS预留百分比
  • QoS预留百分比配置命令

 技术分享图片

  • QoS预留带宽建议不要超过接口实际带宽的80%

 

QoS配置过程:

 技术分享图片

 

系统定义的CBQ:

  • Default策略是系统定义的CBQ,用户可以使用,但不能修改和删除该策略
  • Default策略使用系统定义的分类和系统定义的队列行为,提供缺省的CBQ服务

 技术分享图片

CBQ队列配置:

  • 配置EF队列:
    • 可用绝对值和百分比两种方式配置分配带宽
    • 绝对值方式:可以直接配置CBS,支持突发
    • 百分比方式:通过配合突发因子计算CBS
      • CBS=QoS预留带宽*percentage*ratio/100/100
      • 不支持队列长度配置
      • 不能使用系统缺省类:

 技术分享图片

  • 配置AF队列:
    • 可用绝对值和百分比两种方式配置保证带宽
    • 可以配置WRED或尾丢弃策略

技术分享图片

 

  • 配置CBQ缺省类使用的WFQ队列
    • 可以配置WRED或尾丢弃策略

技术分享图片

 

  • 配置最大队列长度:

技术分享图片

 

  • 显示与维护:

技术分享图片

  • Available:指尚能继续给CBQ分配的带宽。即接口预留带宽和当前CBQ配置的带宽之差

 

 

 

以上是关于QOS-CBQ概述的主要内容,如果未能解决你的问题,请参考以下文章

3.2 OpenFlow 概述

Hive入门概述

蓝牙核心技术概述

Ansible-基本概述

TCP通信的概述(上)和TCP通信的概述(下)

NIO的概述