Qos模型:
- Best Effort模型:尽力而为服务;所有流量平等对待,先入先出
- Diffserv模型:区分服务;对不同的数据流进行分类;按不同类别进行标记不同优先级,对不同优先级的数据流提供不同的服务
- 进入Qos管理范围时,对数据流分类、标记
- 在进入节点的出方向或下一跳的入方向对数据流整形、监管
- 在下一跳对不同标记的数据流提供PHB服务
- IntServ模型:综合服务;对数据流提供连续的跟踪的服务
- 分类:
- 简单分类:按照数据包的IP优先级或DSCP分类
- 复杂分类:按照数据流源和目的地址、源和目的端口、协议、发送接口来分类
- 分类工具:traffic-classifier
- 标记:
- IP优先级
- DSCP
- 标记工具:
- 边界行为:CAR(具备测速功能)
- traffic-behavior:
- IP Precedence: 0-7
- DSCP:兼容IP优先级,0-63,可以用纯数字或关键字方式来表达
- 测速:使用令牌桶算法对流量速度标识
- 单桶单速:以CIR速率每秒往令牌桶注入令牌,CBS为通容量;能取走令牌的数据标绿色,不能取走令牌的标红色
- 双桶单速:以CIR速率每秒往C桶注入令牌,C桶满后,令牌会注入到E桶,取C桶令牌的数据标绿色;取E桶令牌的数据标黄色;不能取走令牌的标红色,可有短暂突发流量
- 双桶双速:以CIR速率往C桶注入令牌,同时以PIR速率往P桶输入令牌;每个数据包会同时在两个桶取走令牌;同时取走两个桶令牌的流量标绿色;只能取走P桶令牌标黄色;不能取走令牌标红色;可有持续突发流量
边界行为:
- 流量监管:通过CAR实现
- CAR:
- 使用令牌桶算法测速
- 对不同颜色的流量可以采取放行、丢弃、重标记或转入下一监管等级的处理方式
- 默认绿色和黄色放行、红色丢弃
- 会增加丢包率、但降低传输延迟
- 流量整形:
- GTS:
- 绿色放行、黄色重新打回到队列、红色丢弃
- 降低丢包率、但增加传输延迟
- 接口限速:LR
- 流量整形把数据包打回到GTS自身队列
- LR把数据打回到用户队列
拥塞管理:一种PHB行为,把分类标记好的数据流放入不同队列实现区分服务
- FIFO:先进先出队列
- PQ队列:根据不同标记把流量分配到 top/middle/normal/bottom队列,按照从上到下的顺序优先转发队列报文;能够保证优先级高的流量占据绝对带宽;但会造成低优先级流量饿死的问题
- CQ队列:根据不同标记把流量分配到1-16号队列:按照队列号依次轮询调度;能够保证每组流量都得到一定的带宽;但无法保证高优先级流量得到更多带宽
- WFQ队列:根据不同的标记自动把流量分散在各个队列;根据每个队列报文优先级计算出该队列的发送权值比重;根据该权值比重依次轮询调度;既可以保证优先级高的流量占据更多带宽,也可以保证低优先级流量得到一定的带宽保证
- 只有在系统紧急队列空的情况下,才会去调用用户创建的队列
拥塞避免:
- RED:随机早期检测;当队列长度达到门限值后,自动在队列内随机丢弃报文,避免出现拥塞后的TCP全局同步
- WRED:对不同标记的流量配置不同的门限值和丢弃概率,实现不同数据流的区分处理
- 最低门限值:队列长度在最低和最高门限值之间,随机丢弃报文
- 最高门限值:队列长度超出最高门限值,后续报文全部丢弃
Qos policy:
- traffic-classifier:类 ;对数据流进行分类
- traffic-behavior:行为 ; 对匹配分类的流量进行的Qos动作
- qos policy:把类和行为进行绑定
- 接口调用