随着网络的发展,互联网流量迅速增加,网络产生拥塞,延时增加,有时还会造成丢包,导致业务质量下降。当网络出现拥塞时,如何保证重要数据的带宽和实时性数据能够快速转发呢?

  • QOS应用需求
    1.QOS概述
    随着网络的高速发展,接入网络的用户越来越多,网络提供的服务也越来越多。网络普及,业务多样化,使得网络流量迅速增大,导致网络带宽不能满足网络的需求,这时就出现了网络拥塞现象。
    由于网络拥塞导致报文产生不能预期的传达,延迟抖动,丢包等现象,将造成业务质量的下降甚至不可使用。为了应对网络拥塞,最直接的方式就是扩大网络带宽,但是由于技术或经济等方面的限制,有时不能通过增加带宽的方法来解决,这时就需要一种技术能够在有限的带宽上保证报文的带宽以免延迟,丢包,这种技术就是QOS技术。
    2.网络拥塞
    1)网络拥塞的产生
    数据从高速端口进入设备,从低速端口转发出去。
    流量汇聚,流量由多个端口进入设备,从一个端口转发出去,并且进入设备端口的速率之和大于转发接口的速率。
    浅谈QOS服务访问质量
    2)网络拥塞的影响
    当网络出现拥塞时,可能对网络造成以下一些影响
    报文传输延迟,延迟抖动和丢包率增加
    由于过高的延迟和丢包导致报文重传,增加网络负担。
    由于网络拥塞,报文重传导致网络的有效吞吐量降低。
    3)网络拥塞的解决方法
    在无法提高网络带宽的情况下,解决网络拥塞有效的方法是合理利用网络带宽,在网络发生拥塞时,根据业务的性质和需要使用QOS技术合理分配现有带宽,降低网络拥塞的影响。
  • QOS服务模型
    QOS在网络中的服务模型一共分为三种
    1)Best-effort service:尽力而为的服务模型
    模式工作模型,先到先转发,后到后转发不区分优先级
    2)Integrated service:综合服务模型,简称Intserv
    需要提前将带宽资源进行保留,配置复杂灵活性差,带宽用完后不能归还预留资源
    3)Differentiated service:区分服务模型,简称Diffserv
    不需要预留带宽资源,能够针对源目标协议IP地址端口号进行识别,自动设置数据包的优先级,优先级高的到设备优先转发。
  • QOS操作模型
    QOS涉及四大组件,分别是分类和标记,×××和监管,拥塞避免,拥塞管理。
    浅谈QOS服务访问质量
    浅谈QOS服务访问质量
    1.分类和标记
    QOS是一个整体的设计框架,不局限于一台设备,整个网络中设备相互配合,最终达到流量优化的目的,QOS的核心是保证重要的流量优先通过网络设备,默认情况下,网络设备对任何报文都一视同仁,为了可以让任何设备都可以识别重要的流量,在网络的边界,也就是任何进入网络的流量都应该根据重要程度被分类,并打上不同的标记,后续设备基于这些标记来识别哪些流量是相对比较重要的。
    分类
    流分类是进行区别服务的基础,流分类可以使用报文的优先级来识别不同优先级特征的流量,也可以使用源地址,目的地址,MAC地址,协议或端口等信息来识别不同流量,流分类完全由网络管理人员定义,不同的网络,流量重要性也不同,例如,对于小型公司而言,HTTP流量可能是比较重要的,而对于大型公司而言,语音流量才是比较重要的,重要是相对而言的,任何流量都应该通过网络,QOS只是优先保证重要的流量,流分类必须与某种流量控制或带宽分配的动作关联起来才有意义。流分类一般通过ACL区分不同的流量,尤其是扩展ACL,基本上可以定义大部分流量,如下命令定义了网络中所有的HTTP流量
    R1(config)#access-list 101 permit tcp any any eq 80
    标记
    在QOS技术的diffserv服务模型中,对于IP报文中的DS字段使用DSCP作为QOS优先级描述
    浅谈QOS服务访问质量
    DS字段一共八位,在Diffserv中使用DS的前八位,即DS0~DS5定义了0~63共64个优先级。QOS也可以使用DS字段中的IP优先级,使用DS的前三位IP,优先级共八个等级,其中0表示正常流量,遵循尽力发生原则。
    默认情况下在实际的网络通信中,如果不做任何设置,正常的数据优先级都是0,而像RIP或OSPF报文,默认的优先级是6.
    1)定义匹配类
    通过class map来定义匹配的流量,相当于一个增强型的 ACL。首先,定义class map来匹配一种流量或协议
    浅谈QOS服务访问质量
    其中,class-map-name为创建的class map的名称,match-all表示匹配class-map定义的所有条件,是默认配置,match-any表示至少匹配class-map定义的一个条件
    2)定义流量控制策略
    通过policy map调用class map,然后分别为每一个class map配置策略
    首先,定义policy map并调用class map,命令如下
    浅谈QOS服务访问质量
    然后,在调用的class map中配置策略,配置的策略包括标记流量,流量×××,CAR等,使用set命令标记流量的优先级,命令如下
    浅谈QOS服务访问质量
    3)在接口上应用策略
    浅谈QOS服务访问质量
    4)查看配置
    可以使用show policy-map[policy-map-name]命令查看策略配置,
    使用show policy-map interface[interface-type interface-number]命令查看端口策略应用和流量信息。
  • ×××和监管
    为了避免网络拥塞的出现,可以对流量进行控制,通过采用一定策略控制流量的大小,以减少网络拥塞的出现,主要的流量管理技术是×××和监管。
    为了更好地利用网络资源,避免大量用户产生突发流量导致网络拥塞,需要对网络中的用户进行限速,当端口接收到某一流量超出限额时,就需要采取一定的措施(降低优先级或丢弃)。例如,限制每个用户的带宽,当用户产生突发流量时采取丢弃的措施,这样可以避免由于过多的突发流量导致的网络拥塞。
    在对流量进行监控时一般可以设定三个参数,承诺平均速率,突发量,额外突发量。
    承诺平均速率:允许流量通过的平均速率
    突发量:允许突发产生流量的大小,设置的大小必须大于最大报文长度。
    额外突发量:表示流量超出突发量后还可以转发的流量的大小。
    1)流量策略
    转发:对于合规流量和违规流量都可以设置策略为转发
    丢弃:对于合规流量和违规流量都可以设置策略为丢弃
    标记:标记报文的优先级,例如,将合规流量报文的IP优先级设定为5,而将违规流量报文的IP优先级设定为0。
    进入下一级流量策略:流量策略可以多级处理,可以将流量提交给下一级流量策略来进行控制
    2)×××与监管
    流量×××是一种调节输出速率的措施,流量×××使用缓冲区使流量均匀地进行转发。流量进入设备进行分类,不需要进行×××的流量直接通过设备转发,需要进行×××的流量根据配置分为合规流量和违规流量,当流量速率超过设定时,设备将多余的流量缓存到GTS队列,然后按照配置的CIR,将报文均匀地转发出去,以保证网络流量平稳。
    浅谈QOS服务访问质量
    浅谈QOS服务访问质量
    CIR表示速率,Bc和Be表示大小
    不同的设备和技术手册规定的Bc和Be数值的配置可能不同,一般推荐使用如下公式:Bc=2 X RTT X CIR/8其中,RTT表示流量往返的时间,可以使用ping命令测试,Be流量一般等于Bc。
  • 拥塞管理
    拥塞管理技术
    FIFP:先进先出队列
    默认网络使用
    PQ:优先级队列
    传输优先级高的后传优先级低的数据
    CQ:定制队列
    需要管理配置ACL抓取指定的流量
    WFQ加权公平队列
    根据源目标IP地址区分流量,根据访问量平均分配
    CBWFQ:基于类的加权公平队列
    管理员指定特定的流量优先传输,只能应用在out方向