模拟器:eNSP

报文分类的目的:

大多数的QoS工具都能对进来的业务流分类,分类的目的是对进来的不同流量实施不同级别的QoS服务。在当前的网络中,分类和打标记在网络的边缘发挥了重要的作用,而在网络的核心根据标记来分类并实施相应的QoS动作,这是实现差分服务的前提和基础。分类的工具有多种,可在接口下应用ACL或由MQC使用traffic classifer定义具备复杂匹配能力的流分类。

传统的工具进行分类:

也就是接口下使用ACL进行分类,这种分类方法多和传统的QOS工具,如Remark (打标记)、CAR (监管) 一起使用,它最大的特征是把全局定义的用于匹配数据报文的ACL直接在接口下调用,其匹配进入或离开接口的流量,对ACL所允许的报文做限速或过滤等处理。

此种分类方式的特点是实现简单、匹配能力有限,需要和其他传统QoS配置工具一起使用。例如:

acl number 2000
rule 0 permit source 192.168. 1.0 0.0.0.255
#acl2000,允许源地址为192.168.1.0网段的报文通过
acl number 2001
rule 0 permit source 192. 168.2.0 0.0.0.255
#acl2001,允许源地址为192.168.2.0 网段的报文通过
interface GigabitEthernet3/0/0
ip address 1.2.0.2 255.255.255.0
qos car outbound acl 2000 cir 512 cbs 32000 pbs 432000 green pass yellow pass red discard
#在接口下直接调用qos car监管命令,其对在接口出方向对符合ACL 2000规则的报文做流量监管,指定承诺信息速
率为512kbit/s
qos car outbound acl 2001 cir 128 cbs 8000 pbs 72000 green pass yellow pass red discard
#同样,接口出方向对符合ACL 2001规则的报文做流量监管,指定承诺信息速率为128kbit/s

MQC方式进行分类:

概述:
MQC是灵活性很强的配置工具,其可使用trfficclassifer定义复杂的匹配规则,可以匹配报文的LI/L2/L3/L4甚至L7。匹配规则通过识别报文头中的一层、二层、三层及高层相应字域的内容。


常见的分类依据如下:

识别报文是分类阶段的职责。使用MQC方式进行分类,也被称为复杂流分类。

华为设备上配置命令:
执行命令traffic classifier classifier-name [ operator { and | or } ],创建一个流分类,进入流分类视图。
• and:报文只有匹配了类中的所有的规则,设备才认为报文属于此类。当流分类中有ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则才属于该类。当流分类中没有ACL规则时,则报文必须匹配所有非ACL规则才属于该类。
• or:报文只要匹配了类中的一个规则,设备就认为报文属于此类。
if-match 匹配条件
if-match 匹配条件

报文标记:

本地优先级和报文优先级:
标记是对分类的流量打上不同的标签,据此分级别对待不同的数据,称为优先级标记。根据优先级标记的作用,华为设备可分为设备内部优先级(又称为本地优先级)和报文优先级(又称外部优先级)。设备内部优先级是对进到设备内部的数据报文给予的一个内部优先级标记值,根据该值可在设备内部分配或优化资源分配,如选择队列。

设备内部优先级和报文优先级的关系:
●设备内部优先级是用于内部资源分配和调度使用的值,每个进到设备的报文一定都会得到一个值,该值根据入接口配置的信任或Remark功能而生成。
●报文优先级是报文本身所携带的OoS标记值。两层报文使用802.1p或EXP而三层报文多使用IP Precedence和DSCP。报文在离开设备时,报文优先级可能会被重写,把内部优先级作为报文优先级携带出去。

优先级分类:

优先级映射是在交换机或路由器内部把报文携带的QoS优先级与设备内部优先级做转换,从而使设备根据内部优先级提供有差别的QoS服务质量的过程。

不同的网络技术,QoS 优先级标记会不同,用户可以根据网络规划在相应网络上使用相应的QoS优先级标记。例如,以太网络上(802.1Q 链路)使用802.1p, IP网络中使用IP Precedence或DSCP,MPLS 网络中使用EXP等。

华为设备在其入口根据接口信任的信任关系配置映射表生成内部优先级。在出口,根据内部优先级或802.1p选择出队列,并映射到报文优先级。

当报文经过不同网络时,为了保持报文的优先级,需要在连接不同网络的设备上配置这些优先级字段的映射关系。当数据报文进入设备时,其外部优先级字段(802.1p 或DSCP或MPLS EXP)被映射为内部优先级:报文离开设备时,将内部优先级映射为外部优先级字段。

二层标记:

Vlan tag中和MPLS报文中的表示优先级的字段都是3bit,0-7,越大越优先。默认情况下都是0,做尽力而为的转发。7为系统的报警字段,6一般为协议相关的控制信息,如OSPF报文,5一般为语音流量,4一般为网帧流量(视频),优先级为0也叫做cs0。

以太网帧上的802.1p标记又常被称为CoS (Classification of Service)。

三层标记:
在IP报文里,我们使用的是8bit来表示优先级,在最初的时候,只使用了前面3个bit,也就是和二层标记一样,0-7来表示流量的优先级,但是因为流量种类很多,0-7完全无法满足真实的需要,所以后将后面三个字节划分作为优先级的标识,只是最后2个字节没有使用。这也被称为了DSCP。

IPP:
IP Precedence也是IP报又上的一个标记,占Tos子域的头3位,同CoS相似,值越大,代表的优先级别就越高,是比较老的一种QoS标记,在一 些传统的QoS工具中使用较多。IPP 值和名字的对应关系如下图所示:

DSCP:
IETF DiffServ工作组目前定义了四种PHB( Per-Hop Behaviors,下一跳行为)。

  1. Default PHB:提供best-effort服务,数值为0。
  2. Class-Selector PH:后3位数值为0,头三位非0的DSCP,用来和IPP兼容。
  3. Expedited Forwarding PHB:服务于低延迟应用,数值为46。
  4. Assured Forwarding PHB:用于提供带宽保证,数值请参考下图。

如果前面三个字段为111,后三个字段为000,向下兼容ip优先级的,表示为CS7,同样前三个字段110,后三个字段为000,表示为CS6。EF表示当前面三个字段为101,后面三个字段为110,也就是总体为46,表示加速转发。

AF字段只用了前面的5个bit,前三个bit作为x,后两个bit作为y,x取值范围1-4,越大表示转发的优先级越大,后两个bit范围为1-3越大表示拥塞时丢弃的优先级越大,转发和丢弃的优先级是互相独立的。

注意,第6位没有使用到就会保持为0,当y为0的时候,AF4表示的也就是CS4,AF3表示的也就是CS3,AF2表示的也就是CS2,AF1表示也就是CS1。最后BE表示的是6位全部为0的情况,也就是表示CS0。

内部优先级使用同DSCP一样的取值范围,可以做到同DSCP一致的精细化控制。

生成内部优先级工具一:信任关系

当报文进入设备内部时,根据接口配置的信任状态决定设备内部的优先级,在报文的入端口上设置信任关系,会影响内部优先级和报文优先级。使用命令: trust { 8021p[ override ]| dscp [ override ]| exp},设备可选择其中一种进行配置。

1.信任报文的802.1p优先级——trust 8021p

  1. 对于带VLANTag的报文,设备根据报文携带的802.1p优先级查找优先级映射表,生成内部优先级,确定报文进入的队列,并修改报文的优先级值。
  2. 对于不带VLAN Tag的报文,设备将使用端口优先级作为802.1p 优先级,查找优先级映射表,确定报文进入的队列,并可以修改报文的优先级值。
  3. 建议LAN中使用信任802.1p生成内部优先级。
  4. 进到设备的802.1p为3的报文,在设备内部使用内部优先级AF31。同理, 802.1p为5的报文。在设备内部分配内部优先级EF。
  5. 当报文从出口离开设备时,报文优先级没有被改写。

相关配置:

 #配置优先级映射在路由器A上#配置Eth2/0/0和Eth2/0/1接口信任报文的802.1p优先级[RouterA] interface ethernet 2/0/0[RouterA-Ethernet2/0/0] trust 8021p[RouterA-Ethernet2/0/0] quit[RouterA] interface ethermnet 2/0/1[RouterA-Ethernet2/0/1] trust 8021p[RouterA-Ethernet2/0/1] quit#配置优先级映射关系[RouterA] qos map-table dot1p-dscp[RouterA-maptbl-dot1p-dscp] input 3 output 26[RouterA-maptbl-dot1p-dscp] input 5 output 46#验证配置结果#查看RouterA上的优先级映射信息<RouterA> display qos map-table dot1p-dscpInput Dotlp        DSCP0                   01                   82                   163                   264                   325                   466                   487                   56
#trust 802.1p后 ,根据802.1p生成内部优先级

2.信任的报文的DSCP优先级一一trust dscp
设备按照报文携带的DSCP值查找DSCP优先级映射表,生成内部优先级。默认情况下,报文的DSCP优先级和内部优先级是一一对应的关系,可以使用命令qos map-tab1e dscp-dscp进行修改。

相关配置:

#配置优先级映射关系,修改默认映射表
[RouterA] qos map-table dscp-dscp
[RouterA-maptbl-dscp-dscp] input 24 output 26
[RouterA-maptbl-dscp-dscp] input 40 output 46
#配置Eth2/0/0和Eth2/0/1接口信任报文的dscp优先级
[RouterA] interface ethernet 2/0/0
[RouterA-Ethernet2/0/0] trust dscp
[RouterA-Ethernet2/0/0] quit
[RouterA] interface ethernet 2/0/1
[RouterA-Ethernet2/0/1] trust dscp
[RouterA-Ethernet2/0/1] quit

3.信任的报文的exp优先级一一trust exp
设备按照报文携带的exp值查找DSCP优先级映射表,生成内部优先级。eNSP模拟器上无法修改其与内部优先级的对应关系,但是可以在接口上设置信任。

4.设置override参数——trust dscp override和trust 8021p override
配置override与否,不影响内部优先级的生成,但会影响经过设备的报文优先级,报文优先级会被改写成内部优先级。

未配置override关键词时,进入的报文按照指定优先级映射生成内部优先级,但离开时报文优先级并不修改,报文优先级透传。

配置override关键词后,离开设备的报文的802.1p值、DSCP值均被修改成内部优先级。

例:设备在报文入口配置trust 8021p,报文优先级中802.1p为3,而DSCP为24。内部映射表802.1p-to-dscp修改后802.1p值3所对应的DSCP为26, dscp-to-dscp映射表中24映射为24,在设备的入口配置trust 8021p override。则离开设备时,报文优先级802.1p值和DSCP值分别是多少?
同样的场景,如果在设备入口配置trust dscp override,则离开设备时,报文优先级中802.1p和dscp值分别是多少?

答:进入设备后,根据映射表生成内部优先级
配置trust 8021p override后,离开设备的报文优先级为802.1p=3,dscp=26。(dscp 26=16+8+2=011010,前三位依旧是011=3,所以802.1p=3)
配置trust dscp override后,离开设备的报文优先级为802.1p=3,dscp=24。

802.1p=3根据dscp-to-802.1p映射而生成。内部优先级DSCP=24,会有对应的内部优先802.1p=3。报文离开时用内部优先级802.1p和dscp修改报文优先级。

5.端口优先级
每个进入设备的报文都需要内部优先级,如果端口信任802.1p,但报文本身没有对应的Vlan Tag, 此种情况下,会使用到端口优先级。每个端口的默认端口优先级为0,使用规则如下:

  1. 端口处于信任802.1p状态时,若收到不带Vlan Tag的报文,设备将根据端口优先级生成内部优先级并转发。
  2. 端口处于不信任状态时,即没有配置任何Trust 命令,所有报文都将根据端口优先级进入一个队列,无法实现差分服务。

相关配置:
端口G0/0/0下,使进入的报文(没有Vlan Tag)离开设备时使用队列1。同理,使端口G0/0/1进来的任何报文都进入队列2。
#G0/0/0端口修改端口优先级为1,同理,修改G0/0/1端口优先级为2

[RouterA]interface G0/0/0
[RouterA-Ethernet0/0/0] port priority 1
[RouterA-Ethernet0/0/0] quit
[RouterA]interface G0/0/1
[RouterA-Ethernet0/0/1] port priority 2
[RouterA-Ethernet0/0/1] quit
#G0/0/0和G0/0/1端口默认处于非信任状态

6.信任边界
华为设备可以在接口上设置4种信任状态一不信任、 信任802.1p、信任DSCP、信任EXP。

如果接口处于不信任状态,设备在报文离开时重写或清除原有报文优先级,重新生成的报文优先级在网络中继续使用。建议在网络边缘设备上对进入的报文不做信任,而在网络中间设备上重新标记报文优先级。我们把信任报文优先级的设备所组成的网络区域称为信任域,而第三方设备或外部网络或终端等设备所代表的区域称为非信任域。服务质量工程师在设计QoS时会在接入层交换机或企业边缘设备入口上设置不信任状态。

对报文优先级做不信任处理,可在设备内部生成符合企业服务规范的报文优先级,并在企业网络内部信任域中使用。这种不信任设备( 或非信任域)和信任域的边界称为信任边界。

如下图所示,在企业网络的边缘设备上,如接入层交换机、内外网络的边缘、企业与第三方网络的边界互联设备都是外部业务报文进来的位置,此位置建议重新打标记(上色),信任边界不信任任何外部网络进来的报文优先级。

生成内部优先级工具二:MQC的Remark工具

在报文进入设备时,除配置信任外,接口还有其他方式生成内部优先级,如MQC和CAR等Remark工具,使用这些机制在报文进入设备时生成的QoS标记即是内部优先级,同时也是报文离开设备时的报文优先级。

若接口同时配置信任和其他Remark工具,Remark配置优于信任起作用。

例:在企业网络边界,把进入企业网络内部的所有RTP报文打,上DSCP EF标记。

[huawei]traffic classifier voip
[huawei]classifer-voip]if match rtp start-port 16384 end-port 32767
[huawei]classifier-voip]quit
[huawei]traffic behavior b1
[huawei-behavior-b1]remark dscp ef
[huawei-behavior-b1]quit
[huawei]traffic policy p1
[huawei-trafficpolicy-p1]classifier voip behavior b1
[huawei-trafficpolicy-p1]quit
#在入方向调用MQC
[huawei]int g0/0/0
[huawei-GigabitEthernet/0/0]traffic-policy p1 inbound
[huawei-GigabitEthernet0/0/0]quit
#MQC remark修改报文优先级,该报文优先级也是内部优先级

注意:如果使用MQC或CAR Remark为报文设置优先级,则离开的报文优先级就是在报文入口配置的优先级。

整理资料来源:《HCIE路由交换学习指南》、HCIE培训资料

Qos报文分类和标记原理与实验相关推荐

  1. 六、QOS实现报文分类与标记

    报文分类与标记 报文分类与标记 1.1.优先级映射是什么? 1.2.802.1P优先级 1.3.IP Precedence优先级 1.4.DSCP优先级 1.5.服务等级 1.6.服务等级规范定义 1 ...

  2. CCNP13:QOS【分类、队列、标记、丢弃】技术

    文章目录 CCNP13:QOS[分类.队列.标记.丢弃]技术 一.浅谈网络通讯: 二.QOS的工具概述: 1.分类: 2.队列: 3.标记: 4.丢弃机制: 三.分类: 四.标记: 1.优先级: 2. ...

  3. QoS的流分类与标记

    如果你因为一个人生气,那么就是说,你给了这个人过高的尊严. 文章目录 一.拓扑 二.基础配置 三.策略配置 四.观察 五.总结 5.1 三种服务模型对比 5.2 网络时延 5.3 小知识 QoS(Qu ...

  4. QoS服务质量二令牌桶算法及QoS业务分类

    QoS服务质量二令牌桶算法及QoS业务分类 2.3.3.DiffServ模型令牌桶算法 2.3.4.基于DiffServ模型的QoS组成 2.3.3.DiffServ模型令牌桶算法 令牌桶算法是网络流 ...

  5. 思科SPCCIE必考QOS流量整形traffic shaping原理及配置方法-ielab网络实验室

    思科SPCCIE必考QOS流量整形traffic shaping原理及配置方法-ielab网络实验室 流量整形(traffic shaping)典型作用是限制流出某一网络的某一连接的流量与突发,使这类 ...

  6. 区分服务之分类和标记

    DiffServ四要素 对于QoS区分服务模型(DiffServ),我们可以从以下四个要素展开理解: 流分类和标记(classification & marking) 基于QoS优先级流分类 ...

  7. 编译原理:实验一练习

    编译原理:实验一练习 词法分析器 编译原理实验报告 上面的第一个链接中的词法分析器有一点问题,修改后的代码如下: #include "string.h"#include " ...

  8. 基于Matlab的模拟通信实验平台设计,【通信原理仿真实验】通信原理虚拟实验仿真平台的设计和实现_玛雅作文网...

    作文「通信原理虚拟实验仿真平台的设计和实现」共有 4564 个字,其中有 2704 个汉字,1316 个英文,162 个数字,382 个标点符号.作者佚名,请您欣赏.玛雅作文网荟萃众多优秀学生作文,如 ...

  9. 第19节 HSRP-热备份路由协议原理及实验演示—基于Cisco Packet Tracer

    HSRP-热备份路由协议原理及实验-基于Cisco Packet Tracer 0 引言 1 HSRP协议概述 2 工作原理 2.1 核心原理 2.2 工作流程 3 相关命令 4 实验 4.1 实验要 ...

  10. 解读模拟摇杆原理及实验

    解读模拟摇杆原理及实验 Interpreting Analog Sticks 当游戏支持控制器时,玩家可能会一直使用模拟摇杆.在整个体验过程中,钉住输入处理可能会对质量产生重大影响.让来看一些核心概念 ...

最新文章

  1. 吴恩达:初学者如何进入深度学习领域?
  2. usb转ttl模块与matlab,USB接口转TTL小板的自检测试
  3. 热血江湖战无止境与服务器连接不稳定,《热血江湖》V14.0“战无止境”新版玩不停...
  4. 用友BIP|YonBuilder+APICloud 双平台,“1+1>N”的低代码战略
  5. linux postgresql默认安装目录,postgresql - 三种安装方式(示例代码)
  6. Java | 使用对数器判断自己的程序是否正确(generateRandomArray)
  7. Python 批量重命名文件
  8. UML建模:学习笔记(1)
  9. copula 重现期 matlab,合肥市干旱识别及基于Copula的特征值重现期分析
  10. Muu云课堂V2v2.5.8
  11. Win 10-jdk 8 下载和安装步骤
  12. DIY制作高精度低温漂电阻箱0.1~9.9GΩ(1)-- 项目介绍
  13. python数字求和菜鸟教程_Python Number(数字) | 菜鸟教程
  14. 《用于自动越野导航的实时语义映射》论文笔记
  15. c++数据结构小助手 : 可视化树与图工具
  16. python 搜索引擎 词位置加权_网站搜索引擎推广公司,360关键词推广
  17. 死宅BALBALBA的奇妙冒险(0)——C语萌新的新手村
  18. innobackup 备份还原原理和操作
  19. Newton-Cotes求积公式(一) | 一般形式 +公式稳定性 +截断误差与代数精度
  20. 2022-2028全球与中国移动网络电话(mVOIP)市场现状及未来发展趋势

热门文章

  1. maven install报The forked VM terminated without saying properly goodbye. VM crash or System.exit call
  2. 网页设计理论知识(色彩搭配)
  3. 中线提取算法_一种应用Visual Graph算法提取道路中线的专利_专利查询 - 天眼查...
  4. 计算机右键括号内的字母,电脑操作中菜单后面括号里的字母的介绍
  5. SAP 获取不同币种间的汇率 RFC BAPI_EXCHANGERATE_GETDETAIL
  6. Beamer编译排错
  7. JVM报错GC overhead limit exceeded
  8. Unity多屏幕设置细节
  9. canvas图片合成
  10. vue中yarn install报错:info There appears to be trouble with your network connection. Retrying…