QoS技术之HQoS基本原理

1.QoS和HQoS

传统QoS技术可以满足语音、视频以及数据等业务的不同服务需求,可以针对不同的业务提供不同的服务。但是随着网络设备的高速发展,接入用户数量和每个用户的业务量不断增多,传统的QoS在应用中遇到了新问题:

  • 传统QoS是基于端口带宽进行调度的,因此流量管理可以基于服务等级进行业务区分,却很难基于用户进行区分,因此比较适合部署在网络核心侧,但不适合部署在业务接入侧。

  • 传统QoS无法做到同时对多个用户的多个业务进行流量管理和调度。

HQoS(Hierarchical Quality of Service)采用多级队列调度的方式为多用户多业务提供精细化的QoS服务。HQoS通过多级队列进一步细化区分业务流量,对多个用户、多种业务等传输对象进行统一管理和分层调度,在现有的硬件环境下使设备具备内部资源的控制策略,既能够为高级用户提供质量保证,又能够从整体上节约网络建设成本。

HQoS基于队列实现层次化调度,目前设备支持流队列(Flow Queue)和用户队列(Subscriber Queue)。队列以树状结构汇聚,流队列为叶子节点,用户队列为根节点。报文做层次化调度时,首先进入叶子节点,经过调度后,从根结点发送出去,同时可以进行下一步操作比如端口队列调度等。同时设备还支持从流队列到端口队列的映射功能,实现对不同用户的同一种业务的流量调度。

2. HQoS基本原理

随着用户规模的扩大,业务种类的增多,要求以太网设备不仅能够进一步细化区分业务流量,而且还能够对多个用户、多种业务、多种流量等传输对象进行统一管理和分层调度。显然,这些应用对于传统的QoS技术来说,是很难实现的。

为了达到分层调度的目的,HQoS(Hierarchical Quality of Service,分层 QoS)技术将调度策略组装成了分层次的树状结构。树状结构的节点类型共有三种:根节点、 分支节点和叶子节点。根节点是流量的汇聚点,与一个调度器(Scheduler)相对应; 处于最底层的每个叶子节点都分别与一个调度队列(Queue)相对应;处于中间层次的每个分支节点都分别与一个调度器相对应。调度器可以对多个调度队列或者多 个调度器进行调度。每个节点上还需要配置分类规则和控制参数。分类规则决定了 流量的走向;控制参数决定了对于通过此节点的流量所作的控制动作。

关于HQoS的基本原理H3C(华三)和华为的官方描述有所不同,以下列出同作参考。

2.1 H3C 官方描述

由于存在分层次的树状结构,也就会存在具有嵌套关系的父子节点,父节点是多个子节点的流量汇聚点。这样,子节点上配置的分类规则和控制参数将会对流量进行 一次分类和流量管理,父节点上配置的分类规则和控制参数将会对汇聚的流量进行 再一次分类和流量管理。由于为父节点配置的分类规则和为子节点配置的分类规则 可以面向不同的分类需求(如用户、业务、流量类型等),并且在不同的节点上还 可以对分流流量做不同的控制动作,从而实现了对流量进行多层次、多用户、多业 务的流量管理。

HQoS的原理如图 1所示,图中每个节点旁边标识的VLAN范围就是该节点的分类规则,指向上游节点的箭头中的SP(Strict Priority,严格优先级)、WRR(Weighted Round Robin,加权轮询)、GTS(Generic Traffic Shaping,通用流量整形)表示该节点的控制参数,当图中最上方的调度策略应用到接口后,就可以对进入接口的流量进行多次分类和管理了。

图1 HQoS基本原理示意图

image-20200722144904889

分层QoS与传统的一层QoS相比,最大的区别是可以将调度队列划分为如物理级别、逻辑级别、应用或业务级别等多个调度级别,每一级别可以使用不同的特征进行流量管理。例如,物理级别用于管理整个物理接口的带宽,而逻辑级别可以用于管理接口上各用户的带宽,业务级别可以用于管理某一用户各种不同业务的带宽。 这样通过不同级别的队列调度,实现了多层次的流量管理,从而可以更好地帮助运营商实现多用户、多业务的服务管理。

HQoS基本概念

1.转发类

转发类(FC,Forwarding Class)是调度策略树中的一个调度实体,对应于树中的一个叶子节点。一个转发类与一个调度队列相对应

2.转发组

转发组(FG,Forwarding Group):是调度策略树中的一个调度实体,对应于树中的一个分支节点。一个转发组可以嵌套多个转发组或转发类。一个转发组与一个调度器相对应。与转发组对应的参数信息将决定该转发组可获得的调度优先级与带宽资源等信息。一个转发组对应一部分带有特定特征(VLAN ID或本地优先级值)的流量,具备这种特征的流量将通过该转发组参与调度和转发;

3.转发策略

转发策略(FP,Forwarding Profile):对转发组的流量采用的控制动作,包括调度算法、调度权重、流量整形等。将转发组与转发策略进行关联,即可决定该转发组可获得的调度优先级与带宽资源。

4.调度策略

调度策略(SP,Scheduler policy):通过将各个转发组与不同转发策略进行关联,并将这些关联关系进行组合,形成一套转发策略集,便称为调度策略。将调度策略应用至端口,即可实现HQoS功能。

5.调度分层

调度层次(Layer)是用来表示调度实体在调度策略中所处的嵌套层次。转发组必须在相应的调度层次中匹配分类规则。

6.实例化

实例化是指将流量按匹配规则划分到不同转发组的过程。实例化的对象是转发组,每次实例化将会生成一个实例化实体。同一个转发组可以多次实例化,每个实例化实体单独使用一个调度器,同一个转发组的不同实例化实体之间仅有实例化规则的区别。

H3C的S5800系列交换机支持的HQoS技术能够在传统队列调度功能的基础上增加对于不同VLAN报文的调度过程,即:在端口要发送的流量中,首先对部分VLAN的报文进行调度,调度完成后的流量再与其他流量进行再次的调度,从而实现对流量的两层调度过程,保证高优先级用户的流量传输。在HQoS中,使用“转发组”的概念来代替传统QoS中的“队列”,转发组之间可以通过SP或WRR方式实现类似于队列调度的调度过程。

图2 HQoS实现方式示意图

image-20200722142744027

假设端口可以发送VLAN1~VLAN20的报文,其中VLAN1~VLAN10为优先级较高的用户,他们的流量希望被优先发送。我们可以首先将VLAN1~VLAN10的流量分别划分到10个转发组中(上图中的FG I_1~FG I_10),并在这10个转发组之间进行调度,调度后的报文汇集到另一个转发组中(上图中的FG I),这个过程我们称为第二层调度。

对于端口上剩余10个VLAN(VLAN11~VLAN20)的流量,我们将其按本地优先级划分到8个转发组(上图中的FG A~FG H)。此时端口上将存在9个转发组,我们可以在这9个转发组之间再次进行调度,这个过程称为第一层调度。在第一层调度过程中,通过提高转发组FG I的调度优先等级,便可以实现对VLAN1~VLAN10的报文进行优先发送,而其余VLAN的报文将仅根据报文优先级进行调度。

在上面的举例中,FG I的流量是根据其他转发组经过调度汇集而来,这种转发组称为父转发组,而相应的FG I_1~FG I_10称为子转发组,二者之间的关系称为转发组的嵌套。为便于理解HQoS的调度机制,可将图2中描述的实现过程简化为如图3的树形示意图。

图3 HQoS基本原理示意图

image-20200722144227297

2.2 华为官方描述

HQoS基于队列实现层次化调度,目前设备支持流队列(Flow Queue)和用户队列(Subscriber Queue)。队列以树状结构汇聚,流队列为叶子节点,用户队列为根节点。报文做层次化调度时,首先进入叶子节点,经过调度后,从根结点发送出去,同时可以进行下一步操作比如端口队列调度等。同时设备还支持从流队列到端口队列的映射功能,实现对不同用户的同一种业务的流量调度。

图 4 HQoS队列调度示意图

image-20200721202430466

流队列

HQoS以DiffServ解决方案为基础,报文根据映射后的内部优先级进入对应的流队列,从而实现对业务的区分。每个用户都有8个流队列,分别对应8个业务优先级(BE、AF1、AF2、AF3、AF4、EF 、CS6、CS7),8个流队列可以配置PQ(优先级队列)或WFQ(加权公平队列)调度;每个流队列支持WRED(加权随机早期检测)以及流量整形,保证高优先级的业务能够得到优先调度和更高的带宽。HQoS以DiffServ解决方案为基础,报文根据映射后的内部优先级进入对应的流队列,从而实现对业务的区分。

用户队列

用户队列主要用来区分不同的用户。这里的用户通常是指一个VLAN(虚拟局域网)、VPN(虚拟私人网络)等,用户的划分主要通过ACL进行。每个用户有一个用户队列,它由8个流队列聚合而来。用户队列可以配置流量整形,限制每个用户的总带宽。

端口队列

端口队列与流队列类似,8个端口队列对应8种业务类型。8个队列可以配置PQ或WDRR队列调度;每个队列支持配置WRED以及流量整形。具体配置可以参考配置拥塞管理配置拥塞避免配置流量整形。设备支持配置流队列到端口队列的映射,队列映射是流队列的8个优先级队列(BE、AF1、AF2、AF3、AF4、EF、CS6、CS7)在入8个端口队列(BE、AF1、AF2、AF3、AF4、EF、CS6、CS7)时的一个入队列映射功能,通过建立流队列->端口队列的映射,可以灵活的控制流队列某一服务等级队列中的业务流量进入端口队列的某一服务等级队列。

目标端口

目标端口即设备的物理接口,数据最终通过目标端口转发出去,设备支持在完成上面的流队列和用户队列HQoS调度以及端口队列调度后还可以为每个目标端口配置流量整形。具体配置可以参考配置出方向的接口限速

3.HQoS应用场景

以下介绍HQoS在企业网络中的典型应用。

企业园区网中多个用户都有数据,语音和视频等多种不同的业务。受带宽限制,分别为接入VLAN10的用户和接入VLAN20的用户提供不同的带宽,同时为每个用户的三种业务提供不同的调度优先级,首先是语音业务,其次是视频业务,最后是数据业务,通过在园区网中部署HQoS可以实现上述需求,如图5所示。

图 5 HQoS应用组网图

image-20200722192642851

业务部署

  • 部署优先级映射实现将不同业务的报文优先级映射为本地优先级并给报文标记颜色。
  • 部署ACL区分不同的用户。
  • 部署HQoS实现为不同用户的不同业务提供差分服务。

4.HQoS设备支持

4.1华为支持HQoS的软件版本如[表10-1所示。

image-20200721210639034

4.2 华为设备HQoS的规格如表10-2所示。

image-20200721210755305

4.3 H3C的HQoS设备支持

S5800系列交换机支持的HQoS技术能够在传统队列调度功能的基础上增加对于不同VLAN报文的调度过程,即:在端口要发送的流量中,首先对部分VLAN的报文进行调度,调度完成后的流量再与其他流量进行再次的调度,从而实现对流量的两层调度过程,保证高优先级用户的流量传输。 在S5800系列交换机中,不同款型设备上支持应用调度策略的端口如下表所示。除这些端口外,其余端口均不能实现HQoS功能。目前S5800系列交换机仅支持在端口的出方向应用调度策略。

image-20200722155413798

5.HQoS配置

5.1 HQoS配置思路

HQoS的配置过程就是一个树状调度策略模型的组装过程。您需要先创建组装树的元素——转发组;然后创建转发组的嵌套关系,并为每个转发组关联转发策略;最后为各个转发组配置分类规则(实例化),从而决定转发组所对应的流量。

HQoS的配置过程分为如下几个阶段:

(1) 创建转发组和转发策略。

(2) 建立转发组的嵌套关系并为子转发组关联转发策略。

(3) 创建调度策略,将参与第一层调度的转发组嵌套进调度策略,并为这些转发组关联相应的转发策略。

(4) 转发组的实例化,即为转发组配置流量分类规则的过程(例如,在第一层调度中将本地优先级为0的流量匹配到转发组A1,按转发策略A1的动作进行处理;在第二调度中层将VLAN1的流量匹配到转发组B1,按转发策略B1的动作进行处理)。

(5) 在端口上应用调度策略,即在端口上实现HQoS调度功能。

5.2 HQoS典型配置举例

Service-VLAN方式是一种较为常见的城域网组网方式,主要特点是以运营商VLAN来区分不同的用户群,每个用户的多种业务都在一个VLAN内承载。接入广域网设备的用户基本分为两种用户类型:个人用户和企业用户。个人用户的业务类型一致,流量管理要求也基本一致。企业用户的业务类型有很大不同,并且要求能够区分不同的企业用户,并进行不同的流量管理。

5.2.1 组网需求

image-20200722161007570

图6 HQoS典型配置举例组网示意图

image-20200722143253309

5.2.2 配置方案

根据组网需求,对于企业网用户数据不区分数据类型,都要求优先发送;而对于个人用户数据则要根据报文优先级进行调度,因此需要采用HQoS功能来实现需求。

对于企业网用户的流量,可以将其配置为父转发组,其中嵌套6个子转发组,分别对应A组和B组企业用户的共6个VLAN的数据,然后为分属不同用户的转发组配置WRR调度权重,实现按比例进行调度的需求。最后,为父转发组关联SP转发策略,使企业网用户流量得到优先调度,并通过流量整形和最小带宽保证实现流量速率的控制。

对个人用户的各种流量,根据其802.1p优先级映射到不同的本地优先级,并匹配到8个转发组中。为VoIP业务的转发组关联SP转发策略、配置最小带宽保证,使其优先被调度。其余队列则采用WRR队列调度,并配置相应的权重值,实现不同的调度比例。

经过以上的配置思路分析,针对本举例的HQoS功能实现结构图可表现如下图所示:

图7 HQoS方案实现结构图

image-20200722161525493

6.HQoS典型应用

简单QoS流分类参照RFC4594标准分类,复杂流分类可通过对网络报文的首部信息(如源地址、目的地址、MAC地址、IP协议或应用程序的端口号等信息)和ACL访问控制列表生产匹配规则,结合流行为形成流策略,最终对网络流进行精细分类。最后面向政务网络结合传统QoS策略和HQoS策略对政府的多用户多业务进行精细的业务流分类。

6.1 QoS简单流分类

广域网业务的分类标准

按照广域网流量的行政属性划分,如基于客户的地域分布、网络结构和部门构成等行政特点进行划分,一般基于设备、端口、源和目的IP进行区分,进而实施不同的QoS带宽策略。基于行政属性划分的业务流量一般不会有优先级保证要求,而主要关注各行政单位的带宽分配。按照流量的业务属性划分,根据RFC4594标准分类,主要分为以下几类:

image-20200722155003086

6.2 QoS复杂流分类

复杂流分类的规则匹配项支持如下所示:

image-20200712115536997

6.3 HQoS典型应用

图8 HQoS典型组网示意图

image-20200720204053642

参考资料

H3C HQoS配置

HQoS技术介绍

QoS and HQoS

广域网QoS设计思路

S7700, S9700 V200R010C00 配置指南-QoS

原文地址:https://www.cnblogs.com/jianhaoscnu/p/13376883.html