HQoS的基本原理目前计算机网络的高速发展,使得对带宽、延迟、抖动敏感的语音、图像、重要数据越来越多地在网上 传输。为了能够对数据传输性能提供不同的承诺和保证,广泛使用了QoS(Quality of Service,服务质量)技术来保证网络传输质量。
随着用户规模的扩大,业务种类的增多,要求以太网设备不仅能够进一步细化区分业务流量,而且还能够对多个用户、多种业务、多种流量等传输对象进行统一管理 和分层调度。显然,这些应用对于传统的QoS技术来说,是很难实现的。
为了达到分层调度的目的,HQoS(Hierarchical Quality of Service,分层QoS)技术将调度策略组装成了分层次的树状结构。树状结构的节点类型共有三种:根节点、分支节点和叶子节点。根节点是流量的汇聚 点,与一个调度器(Scheduler)相对应;处于最底层的每个叶子节点都分别与一个调度队列(Queue)相对应;处于中间层次的每个分支节点都分别 与一个调度器相对应。调度器可以对多个调度队列或者多个调度器进行调度。每个节点上还需要配置分类规则和控制参数。分类规则决定了流量的走向;控制参数决 定了对于通过此节点的流量所作的控制动作。
由于存在分层次的树状结构,也就会存在具有嵌套关系的父子节点,父节点是多个子节点的流量汇聚点。这样,子节点上配置的分类规则和控制参数将会对流量进行 一次分类和流量管理,父节点上配置的分类规则和控制参数将会对汇聚的流量进行再一次分类和流量管理。由于为父节点配置的分类规则和为子节点配置的分类规则 可以面向不同的分类需求(如用户、业务、流量类型等),并且在不同的节点上还可以对分流流量做不同的控制动作,从而实现了对流量进行多层次、多用户、多业 务的流量管理。
HQoS的原理如图1所示,图中每个节点旁边标识的VLAN范围就是该节点的分类规则,指向上游节点的箭头中的SP(Strict Priority,严格优先级)、WRR(Weighted Round Robin,加权轮询)、GTS(Generic Traffic Shaping,通用流量×××)表示该节点的控制参数,当图中最上方的调度策略应用到接口后,就可以对进入接口的流量进行多次分类和管理了。


图1 HQoS原理示意图
分层QoS与传统的一层QoS相比,最大的区别是可以将调度队列划分为如物理级别、逻辑级别、应用或业务级别等多个调度级别,每一级别可以使用不同的特征 进行流量管理。例如,物理级别用于管理整个物理接口的带宽,而逻辑级别可以用于管理接口上各用户的带宽,业务级别可以用于管理某一用户各种不同业务的带 宽。这样通过不同级别的队列调度,实现了多层次的流量管理,从而可以更好地帮助运营商实现多用户、多业务的服务管理。
HQoS的基本概念(1)
转发类
转发类(FC,Forwarding Class)是调度策略树中的一个调度实体,对应于树中的一个叶子节点。一个转发类与一个调度队列相对应。报文会根据一定的映射关系进入不同的调度队列。 与转发类对应的参数信息将决定该队列的行为。
系统共有8种预定义转发类:BE、L2、AF、L1、H2、EF、H1、NC,如表1所示。
表1 预定义转发类
                                转发类简称
                                    转发类名称
                                    转发类对应的业务类型
                                    转发类的类型
                                                            NC
                                    Network Control
                                    最高优先级的转发业务,如网络控制报文的传输
                                    高优先级的业务
                                                    H1
                                    High-1
                                    优先级介于NC和EF之间,未明确定义业务类型
                                                    EF
                                    Expedited
                                    对延时/抖动敏感的业务,如语音、视频报文的传输
                                                    H2
                                    High-2
                                    优先级略低于EF,未明确定义业务类型
                                                    L1
                                    Low-1
                                    优先级略高于AF,未明确定义业务类型
                                    传输质量有保证的业务
                                                    AF
                                    Assured
                                    对传输质量有保证的业务,如×××、数据报文的传输
                                                    L2
                                    Low-2
                                    优先级略高于BE,未明确定义业务类型
                                    尽力而为的业务
                                                    BE
                                    Best Effort
                                    尽力而为的业务,如普通网络浏览
                    
(2)
转发组
转发组(FG,Forwarding Group)是调度策略树中的一个调度实体,对应于树中的一个分支节点。一个转发组可以嵌套多个转发组或转发类。一个转发组与一个调度器相对应。与转发组 对应的参数信息将决定该转发组可获得的调度优先级与带宽资源等信息。
(3)
转发策略
转发策略(FP,Forwarding Profile)是调度策略中为每个调度实体配置的调度规则。此调度规则包括调度优先级、调度权重、×××参数和丢弃参数等。这些规则将决定对流经相匹配的 转发类或转发组的流量所做的行为。
(4)
丢弃策略
丢弃策略(DP,Drop Profile)是为队列中的报文制定的丢弃规则。对队列中的报文进行的丢弃操作是流量管理行为的一种,因此,丢弃策略需要嵌套在转发策略中使用。
(5)
调度策略
调度策略(SP,Scheduler policy)是调度实体的集合。调度策略通过嵌套转发组,转发组再嵌套转发组或转发类,形成树状的调度实体组织结构。调度策略将调度实体有规律的组合起 来从而形成多级分层队列调度。
(6)
调度分层
调度层次(Layer)是用来表示调度实体在调度策略中所处的嵌套层次。转发组必须在相应的调度层次中匹配分类规则。
(7)
实例化
实例化是一种特殊的分类匹配操作,是调度实体使用分类规则的一种体现。实例化的对象是转发组,每次实例化将会生成一个实例化实体。同一个转发组可以多次实 例化,每个实例化实体单独使用一个调度器,同一个转发组的不同实例化实体之间仅有实例化规则的区别。
实例化操作有match和group两种方式:
l
match方式:需要为被实例化的转发组明确指定实例化规则;
l
group方式:不需要为被实例化的转发组明确指定实例化规则,但对于被实例化的转发组嵌套的子转发组则必须明确指定实例化规则。