锐捷QoS.docx
- 文档编号:4456726
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:22
- 大小:152.22KB
锐捷QoS.docx
《锐捷QoS.docx》由会员分享,可在线阅读,更多相关《锐捷QoS.docx(22页珍藏版)》请在冰豆网上搜索。
锐捷QoS
7.4交换网络的QoS
服务质量(QualityofService,QoS)是指网络通信过程中,允许用户业务在丢包率、延迟、抖动和带宽等方面获得可预期的服务水平。
传统的交换机不具备QoS功能,它同等对待所有的转发数据流,并不保证某一特殊的数据流会受到特殊的转发待遇。
当网络带宽充裕的时候,所有的数据流都得到了较好的处理,当网络拥塞发生的时候,所有的数据流都有可能被丢弃。
这种转发策略是尽最大能力转发数据,它只能尽可能充分的利用交换机本身的带宽,因此不具有提供传输品质服务的能力。
在网络中配置QoS的目标是避免并管理网络拥塞、减少报文的丢失率、调控网络的流量、为特定用户或特定业务提供专用带宽和支持网络上的实时业务。
QoS要根据具体网络环境和业务需要选择实施。
图7.47常见网络应用环境
在图7.47所示的三种网络应用环境中,图A有远远超出需求的链路带宽,完全没有QoS需要;图C链路严重超载,在这种情况下,QoS有一定的作用,但不显著,最好升级带宽;图B只有少量的拥塞,此时QoS配置最有效。
7.4.1流量限速和QoS分类实验
在进一步了解交换网络的QoS配置之前,我们先学习一些最基本的相关概念。
1.QoS基本概念
(1)QoS的三种模型
•Best-Effort模型:
是目前Internet的缺省服务模型,主要实现技术是先进先出队列(FIFO)。
•IntServ模型:
Intergratedservice(整合服务)业务通过信令向网络申请特定的QoS服务,网络在流量参数描述的范围内,预留资源以承诺满足该请求。
•DiffServ模型:
Differentiatedservice(区分服务)当网络出现拥塞时,根据业务的不同服务等级约定,有差别地进行流量控制和转发来解决拥塞问题。
在上面提到的三种模型中,Best-Effort是目前Internet的缺省服务模型,其特点为网络尽最大可能发送报文,对时延、可靠性等性能不提供任何保障;而DiffServ则是为现代网络及解决方案量身打造的一种Qos实现形式,它采用基于类别的数据流处理,应用程序在发出报文前,不需要通知路由器,网络也不需要为每个流维护状态,它根据每个报文指定的QoS,来提供特定的服务(包括报文的分类、流量整形、流量监管和排队)。
(2)QoS的内容
相对于具体的网络元素而言,QoS可以由拥塞管理、队列管理、链路效率和整形/管制工具提供。
•拥塞管理
网络中的视频/音频/数据流量存在突发性,有时这些流量会超出链路速度,此时网络设备是选择将流量缓冲在一个队列中,然后让最先来的数据最先转发?
还是将数据流送入不同的队列,并给某些队列提供优先的服务?
这些问题就是由拥塞管理来解决,具体包括先入先出排队(FIFO)、优先级排队(PQ)、自定义排队(CQ)、基于流的加权公平排队(WFQ)和基于类别的加权公平排队(CBWFQ)。
•队列管理
由于队列长度是有限的,所以存在填满溢出的情况。
当队列已满时,任何额外的数据流量(既便是优先级更高的数据)都不能进入队列并将被丢弃。
显而易见,这种尾部丢弃的管理方式是没有QoS保证的。
为建立更好的管理机制,队列管理应当完成两个工作:
其一是试图保证队列不会被填满,这样就有空间容纳更高优先级的数据了;其二是允许一些标准来保证丢弃高优先级数据之前先丢弃低优先级的数据。
•链路效率
很多时候低速链路处理实时数据流时会有问题。
例如,1500字节的数据包在56kbit/s上的传输延迟是214ms。
如果语音数据包排在这个大数据包之后,那么在转发语音数据之前,它就可能已经超时了。
链路分片和交织技术允许把大数据包分成小片,然后和语音数据包交织发送。
链路效率的另一种管理机制是去除过多的开销比特,例如对实时协议数据包的头部进行压缩,将数据减小到一个适合管理的尺寸。
•流量整形和管制
整形是指创建一个具有带宽限制的流量,超过配置速率的流量被缓存并在以后发送,由此可以有效的防止远程链路缓冲队列溢出的问题。
管制则类似于整形,区别在于超过匹配速率的流量不会被缓存(通常被丢弃)。
2.报文分类及标记
配置了QoS的网络环境,增加了网络的性能可预知性,并能够有效地分配网络带宽,更加合理地利用网络资源。
这种传输品质服务的实现,是通过为某种类别的数据流赋予某个级别的传输优先级、标识它的相对重要性,并使用交换机所提供的各种分优先级转发策略、拥塞避免等机制,从而使这些数据流获得特殊传输服务的。
DiffServ体系规定每一个传输报文将在网络中被分类到不同的类别,IETF规定使用IP报文中的ToS(TypeofService)字段中的前6个比特来携带报文的分类信息,当然分类信息也可以被携带在链路层帧头上。
图7-48常用的报文分类信息
如图7-48所示,附带在报文中的分类信息包括:
•UserPrioritybits
携带在802.1Q帧头的TagControlInformation中的前3个比特,它包含了8个类别的优先级信息。
•IPprecedence(IP优先级)
携带在IP报文头中的ToS字段前3个比特。
•DSCP(DifferentiatedServicesCodePoint区分服务代码点)
携带在IP报文头中的ToS字段前6个比特。
交换机或路由器可以根据报文所携带的类别信息,可以为各种数据流提供不同的传输优先级,为某种数据流预留带宽,适当的丢弃一些重要性较低的报文或者采取其他一些操作。
3.基于DiffServ体系的QoS模型
RGNOS提供的是以DiffServ体系为基础的QoS模型,数据处理流程如图7.49所示:
图7.49基于DiffServ模型的数据处理流程
QoS入口端动作首先是分类,其过程是根据信任策略或者根据分析每个报文的内容来确定将这些报文归类到以CoS值来表示的各个数据流中,因此分类动作的核心任务是确定输入报文的CoS值。
分类发生在端口接收输入报文阶段,当某个端口关联了一个表示QoS策略的policy-map后,分类就在该端口上生效,它起作用于所有从该端口输入的报文。
对于一般非IP报文,交换机将根据以下准则来归类报文:
(1)如果报文本身不包含QoS信息,也就是说报文的第二层报文头中不包含UserPrioritybits,那么可以根据报文输入端口的缺省CoS值来获得报文的QoS信息。
端口的缺省CoS值和报文的UserPrioritybits一样,取值范围为0~7。
(2)如果报文本身包含QoS信息,也就是说报文的第二层报文头中包含UserPrioritybits,那么可以直接从报文中获得CoS值。
注意以上两种归类准则只有当端口的QoS信任模式打开的时候才起作用。
(3)如果端口存在关联的policy-map,使用了基于macaccess-listextended的ACLs归类,那么在该端口上,将通过提取报文的源MAC地址、目的MAC地址以及Ethertype域来匹配关联的ACLs,以确定报文的DSCP值。
上面三种归类准则可能会同时作用于一个端口上。
在这种情况下,上面三种归类准则按3、2、1的优先级起作用。
即:
先根据ACLs归类,在归类失败的情况下,才有可能选择归类准则2、1,在这个时候,如果端口的QoS信任模式打开,则根据准则2和1直接从报文中或者从端口上获得QoS信息;如果端口的QoS信任模式关闭,那么那些归类失败的报文将被赋予DSCP的缺省值0。
对于IP报文,可以将根据以下准则来归类报文:
(1)如果端口信任模式为trustip-precedence,则直接从IP报文的IPprecedence字段(3个比特)提取出来,填充到输出报文的CoS字段(3个比特)。
(2)如果端口信任模式为trustcos,则将报文的CoS字段(3个比特)直接提取出来覆盖报文IPprecedence字段(3个比特)。
(3)如果端口关联的policy-map中使用了基于ipaccess-list(extended)的ACLs归类,那么该在该端口上,将通过提取报文的源IP地址、目的IP地址、Protocol字段、以及第四层TCP/UDP端口字段来匹配相关联的ACLs,以确定报文的DSCP值,然后根据DSCP到CoS的映射确定报文的CoS值。
和非IP报文归类准则一样,以上几种归类准则同样可以同时作用于一个端口上。
在这种情况下,上面的归类准则按照3、2、1的优先级起作用。
有关上面提到的CoS-to-DSCPmap、IP-precedence-to-DSCPmap映射表的详细内容将在下节实验具体介绍。
4.QoS分类和流量限制的配置
(1)设置接口的QoS信任模式
缺省情况下,交换机的QoS功能是关闭的,即交换机对所有的报文同等处理。
只有将一个PolicyMap关联到某一个接口上,或设置了接口的信任模式时,该接口的QoS功能才被打开。
RGNOS中,配置接口的QoS信任模式的命令如下:
Switch(config-if)#mlsqostrust[cos|dscp]
取消接口的QoS信任的命令为:
Switch(config-if)#nomlsqostrust
(2)设置接口的缺省CoS值
配置接口的缺省CoS值的命令如下:
Switch(config-if)#mlsqoscosdefault-cos
default-cos的取值访问为0~7,缺省值为0。
(3)配置QoSACL
可以根据需要设置配置匹配访问控制列表,基于命名的IP标准、扩展ACL和MACACL均可。
Switch(config-if)#ipaccess-liststandard{name}
…
Switch(config-if)#ipaccess-listextended{name}
…
Switch(config-if)#macaccess-listextended{name}
…
(4)配置ClassMap
创建匹配ACL的具体数据分类,命令步骤如下:
Switch(config)#class-mapclass-map-name
Switch(config-cmap)#matchaccess-groupacl-name
Switch(config-cmap)#exit
其中class-map-name是要创建的classmap的名字,acl-name是已创建的用于匹配的访问控制列表。
(5)配置PolicyMap
创建端口策略规则,命令步骤如下:
Switch(config)#policy-mappolicy-map-name
Switch(config-pmap)#classclass-map-name
Switch(config-pmap-c)#setipdscpnew-dscp
Switch(config-pmap-c)#policerate-bpsburst-byte[exceed-action{drop|dscpdscp-value}]
其中,policy-map-name是要创建的策略规则PolicyMap的名字,class-map-name是一个已经创建的数据分类classmap的名字。
在该数据分类下,setipdscp命令用于为该数据流中的IP报文设置新的IPDSCP值,对于非IP报文,该设置不起作用;其中new-dscp是要设置的新DSCP值,它的取值范围是0,8,10,16,18,24,26,32,34,40,46,48,56。
Police命令用于为该数据流定义策略动作,支持限制该数据流的带宽和为带宽超限部分指定处理动作。
rate-bps是每秒钟的带宽限制量,对于10/100M以太网接口来说取值范围是1~100Mbsp(必须为1M的倍数),对于1000M以太网接口来说取值范围是8~1000Mbsp(必须为8M的倍数);burst-byte是猝发流量限制值,对于百兆接口,支持的值为4096、8192、16384、32768、65536,对于千兆接口,支持的值为4096、8192、16348、32768、65536、131072、262144及524288。
命令中指定关键字drop用来设置丢弃带宽超限部分的报文;也可以在使用指定dscpdscp-value来改写带宽超限部分报文的DSCP值。
(6)在接口应用PolicyMap
将创建的policymap应用到接口上使用service-policy命令,格式如下:
Switch(config-if)#service-policyinputpolicy-map-name
关于PolicyMap的配置,应当主意:
•一个接口最多关联1个policy-map
•一个policy-map可以拥有多个class-map
•一个class-map最多关联1个ACL,
(7)检测和调试命令
本次实验使用的QoS基本检测和调试命令如下:
showmlsqosinterface[interface-id][policers]!
查看接口的QoS配置
showaccess-lists!
查看QoSACL的配置
showclass-map[class-map-name]!
查看ClassMap的配置
showpolicy-map[policy-map-nameclassclass-name]!
查看PolicyMap的配置
5.实验环境与说明
(1)实验目的
了解以DiffServ体系为基础的QoS基本概念,掌握交换机QoS数据分类和带宽约束的基本配置方法。
(2)实验设备和连接
实验设备和连接如图7.50所示:
三层交换机S3550和S2126通过Trunk接口F0/1相互连接;S2126设置VLAN10和VLAN20并分别连接PC1和PC2;PC3运行嗅探软件,监控F0/1接口数据。
图7.50PIM-SM配置实验
(3)实验分组
每四名同学为一组,两人一小组,协同完成实验。
6.实验步骤
步骤1:
按照图7.50完成设备连接,配置设备标识和计算机IP地址。
步骤2:
完成S2126和S3550的VLAN配置,实现PC1和PC2之间的连通。
S2126的参考配置为:
S2126(config)#vlan10
S2126(config-vlan)#exit
S2126(config)#vlan20
S2126(config-vlan)#exit
S2126(config)#interfacefastEthernet0/3
S2126(config-if)#switchportaccessvlan10
S2126(config-if)#exit
S2126(config)#interfacefastEthernet0/4
S2126(config-if)#switchportaccessvlan20
S2126(config-if)#exit
S2126(config)#interfacefastEthernet0/1
S2126(config-if)#switchportmodetrunk
S2126(config-if)#end
S3550的参考配置为:
S3550(config)#vlan10
S3550(config-vlan)#exit
S3550(config)#vlan20
S3550(config-vlan)#exit
S3550(config)#interfacefastEthernet0/1
S3550(config-if)#switchportmodetrunk
S3550(config-if)#exit
S3550(config)#interfacevlan10
S3550(config-if)#ipaddress172.16.10.1255.255.255.0
S3550(config-if)#exit
S3550(config)#interfacevlan20
S3550(config-if)#ipaddress172.16.20.1255.255.255.0
S3550(config-if)#end
完成配置后,使用showvlan和showipinterface命令验证配置结果。
在PC1和PC2上完成IP地址设置,并使用ping命令验证连通。
步骤3:
在PC3上捕获PC1和PC2之间的ICMP数据包:
首先完成S2126的端口镜像配置,参考如下:
S2126(config)#monitorsession1sourceinterfacefastEthernet0/1both
S2126(config)#monitorsession1destinationinterfacefastEthernet0/2
在PC3上运行Ethereal开始抓包,关于Ethereal的使用,在本书第五章中有详细介绍,这里不复赘言。
在PC1上执行ping172.16.20.100–n1,可以截获一组ICMP的回显请求和应答报文,将结果保存为undo_qos.cap文件。
步骤4:
配置交换机QoS,实现对ICMP报文的分类报文标记的设置,并对HTTP流量进行限速。
参考配置如下:
(1)指定接口开启QoS信任:
S2126(config)#interfacefastEthernet0/3
S2126(config-if)#mlsqostrustcos
(2)设置用于分类筛选的ACL:
S2126(config)#ipaccess-listextendedicmp
S2126(config-ext-nacl)#permiticmpanyany
S2126(config-ext-nacl)#exit
S2126(config)#ipaccess-listextendedhttp
S2126(config-ext-nacl)#permittcpanyanyeq80
S2126(config-ext-nacl)#exit
(3)配置关联ACL的分类规则:
S2126(config)#class-map1
S2126(config-cmap)#matchaccess-groupicmp
S2126(config-cmap)#exit
S2126(config)#class-map2
S2126(config-cmap)#matchaccess-grouphttp
S2126(config-cmap)#exit
(4)配置QoS策略,分类规则1(ICMP流量)设置DSCP值为48,分类规则2(HTTP流量)限速1M,猝发流量为4096,超限报文丢弃。
S2126(config)#policy-mapqos_test
S2126(config-pmap)#class1
S2126(config-pmap-c)#setipdscp48
S2126(config-pmap-c)#exit
S2126(config-pmap)#class2
S2126(config-pmap-c)#police10000004096exceed-actiondrop
S2126(config-pmap-c)#exit
S2126(config-pmap)#exit
(5)在S2126的F0/3和F0/4接口启用已配置的Policy-map:
S2126(config)#interfacerangefastEthernet0/3-4
S2126(config-if-range)#service-policyinputqos_test
S2126(config-if-range)#end
步骤5:
验证和调试:
(1)查看指定接口的QoS状态,请写出执行的命令:
S2126#__________________________________________
参考信息如下:
Interface:
Fa0/3
Attachedpolicy-map:
qos_test
Truststate:
cos
DefaultCOS:
0
(2)查看分类规则的配置信息,请写出执行的命令:
S2126#__________________________________________
参考信息如下:
ClassMapName:
1
Matchaccess-groupname:
icmp
ClassMapName:
2
Matchaccess-groupname:
http
(3)查看关联ACL的配置信息,请写出执行的命令:
S2126#__________________________________________
参考信息如下:
ExtendedIPaccesslist:
http
permittcpanyanyeqwww
ExtendedIPaccesslist:
icmp
permiticmpanyany
(4)查看policy-map的配置信息,请写出执行的命令:
S2126#__________________________________________
参考信息如下:
PolicyMapName:
qos_test
ClassMapName:
1
Setipdscp:
48
ClassMapName:
2
Ratebpslimit(bps):
1000000
Burstbytelimit(byte):
4096
Exceed-action:
drop
步骤6:
按照步骤3的方法再次捕获PC1和PC2之间的ICMP数据包,将结果保存为do_qos.cap文件。
对比undo_qos.cap和do_qos.cap中的报文,查看802.1Q和IP报头中用于实现分类的标记字段,
报文1中,802.1Q帧UserPriority字段值为_______,IP报头DSCP字段值为:
______;
报文2中:
802.1Q帧UserPriority字段值为_______,IP报头DSCP字段值为:
______;
思考:
二层的CoS和三层的DSCP之间有什么关系?
步骤7:
在S2126上查看QoS映射表,执行命令如下:
S2126#showmlsqosmaps
根据设备显示信息,完成表7.13和表7.14,记录S2126中默认的DSCP-CoS和CoS-DSCP的映射关系。
表7.13Dscp-cos映射
DSCP
CoS
DSCP
CoS
值
6位二进制
值
3位二进制
值
6位二进制
值
3位二进制
8
32
10
34
16
40
18
46
24
48
26
56
表7.14Cos-dscp映射
C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 锐捷 QoS
![提示](https://static.bdocx.com/images/bang_tan.gif)