Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

Vinllen Chen


To be a better coder

QoS浅析

  标准的网络QoS流程分为流量识别、流量标记和流量处理三个步骤。

1. 流量识别

  流量识别在传统的QoS文档中被称为Classification,目的是将混合在一起的数据流进行分类。流量识别的依据是数据包头的内容,比如目的ip+tcp端口+dscp值。
  QoS流量识别没有统一的公开标准,通常采用如下字段:

  • 物理层。物理端口、子接口、PVC接口。
  • 链路层。MAC地址、CoS值、MPLS EXP。
  • 网络层。IP值、DSCP值、IP优先级。
  • 传输层。TCP/UDP端口号。
  • 会话层以上。业务特定标签,如URL等。

  许多厂商退出了识别业务流程的功能。如NBAR是内置在CISCO路由器内的深度包检测功能,原理类似于IPS(Intrusion Prevention System--入侵检测设备)。NBAR会将每一个数据流的第一个包与一个特征文件库PDLM(Protocol Description Language Module--协议描述语言模块)进行对比,如果能够找到匹配的特征,则这个数据流的后续包归类为一个特定数据流。

2. 流量标记

  流量识别的下一步是为数据包打上标签,这些标签将随着数据包在网络内传输,转发路径上的网络设备根据数据包上的不同标签提供不同的服务质量等级。主流的标记方式根据标签位置不同分为二层标记和三层标记。

2.1 二层标记

  又称CoS,是基于IEEE P802.1p标准。IEEE在以太网数据帧头内预留了一个三维的标志位,称为PCP,在被赋予不同值的时候,PCP能表达8个等级的优先级别。二层标记能够表示的等级不多,而且同广泛使用的IP包头绑定关系不强。

2.2 三层标记

  RFC 2747中定义了一个DSCP标志位,一共有8位,最后2位预留,前6位可以表示64个不同的优先级通过设定DSCP,可以预设4个重要等级:AF、EF、Class Selector和Default。AF代表大部分需要质量保证的业务数据;EF一般被网管人员赋予最高的服务保障等级;Class Selector用于兼容早期使用IP优先级(IP Precedence)标志位的数据包,当路由器收到一台不支持DSCP标记的设备发出的IP包时,它也能够采用Class Selector格式进行处理;Default是DSCP的默认标签值,内容全0,当一个数据包无法归类到其他三个级别时,就被自动填入Default,该级别一般作为Best Effort等级的流量处理。

3. 流量处理

  流量处理包括局域网和广域网中的队列机制、流量整形等手段。一般需要注意以下几点:

  • 实时数据处理。实时业务数据应该打上EF标签,并放入优先队列,保证其享有足够的带宽。但是优先队列带宽保障不要超过整体带宽的三分之一,防止其他业务数据的带宽被过分占用。
  • EF和AF数据处理。分配给EF和AF的带宽不要超过整体带宽的三分之二,这样Default等级的数据和某些二层的信令包在任何时候都不会因为拥塞而无法传输。
  • 靠近源头限流。如果于鏊限制流量最低的Scavenger流量,尽量在靠近其数据源头的网络设备上部署相应策略,避免Scavenger流量在被强制丢弃前消耗了太多的链路资源。

参考

《腾云》

说明

转载请注明出处:http://vinllen.com/qosqian-xi/


About the author

vinllen chen

Beijing, China

格物致知


Discussions

comments powered by Disqus