QOS
QoS概述 QoS两种服务模型的实现:DiffServ&IntServ QoS功能组件 QoS应用
QOS的具体概念 QOS(Quality of Service)服务质量:通信网络在各种情况下都能保证可预期的可用性、吞吐量(带宽)、时延、时延抖动、丢包率等方面的服务水平。使用户或应用的请求和响应满足一致的可预知的服务级别.
QoS关键参数 可用性(Availability):用户与IP业务连接的可靠性,包括建立时间、保持时间等 时延(Latency):在两个参考点间,某一IP包从发送到接收间的时间间隔 时延抖动(Jitter):沿同一路径传输的一个数据流(Stream)中,不同分组传输延迟的变化 带宽(Bandwidth):一个网络中IP包的传输速率,可用平均速率或峰值速率来表征 包丢失率(Packet Loss):某一业务在网络中传输时,可允许的最大丢包率。丢包主要是由网络拥塞引起的
为什么要QoS 当前的Internet状况是: “尽力而为”的模型,报文的吞吐量、时延、时延抖动、丢包率不能预期,一切视网络当时的情况而定。 的原因调查结果 "Congestion-related performance degradation has been found to cause the majority of network downtime costs" -------Infonetics调查公司总裁 Michael Howard
信令技术 (RSVP, ATM UNI/NNI) 分类和标记技术(DSCP, MPLS EXP, ...) QoS 架构 基于策略的网络互连 VPNs Multimedia Mission Critical Services VoIP 部署与监控 Hybrid MPLS DiffServ IntServ 信令技术 (RSVP, ATM UNI/NNI) 分类和标记技术(DSCP, MPLS EXP, ...) 拥塞避免技术 (WRED) 流量调节 (CAR, 整形) 拥塞关联技术 (WFQ, CBWFQ,...) 链路效率机制 (压缩, 分段...) Frame Relay PPP HDLC POS ATM FE/GE/ 10GE Wireless Fixed,Mobile BroadBand Cable,xDSL
QoS三种服务模型概述 尽力而为服务(Best-Effort Service) :“尽力而为”的工作方式,不保证服务质量----无QoS 差别服务(DiffServ--Differentiated Service):把有相似要求的业务分为类,按类提供不同的服务质量的方式。不需要专门信令的支持,可根据处于边缘网络还是核心网络,采取不同的工作方式相协调----预先部署的QoS 集成服务(IntServ--Integrated Service):采用信令机制,通知数据流所经由的路径上预留资源,可以实现很好的质量保证。但当网络规模很大时开销也很大,一般适于在网络边缘使用----信令化/动态的QoS
QoS概述 QoS两种服务模型的实现:DiffServ&IntServ QoS功能组件 QoS应用 HOS QOS的配置
IntServ与DiffServ之间的简单比较 IntServ基于单个的流,需要信令(RSVP)支持 DiffServ基于流的聚合,不需要信令支持,更具可扩展性,可在大型网络上应用 IntServ服务基于事先发出并得到网络设备允许的服务请求。 DiffServ服务基于由每一个数据包所指定的QoS ,这种指定能够以多种不同的方式体现,例如,在IP数据包中使用IP优先权位设置、或者源和目的地址。
差别服务DiffServ 差别服务(DiffServ) 通过报文分类机制(如设置IP报文中的TOS域的6个bit)将数据流分成优先级不同的几类,并对不同类的数据流进行有差别的对待,满足不同的业务需求 支持多种QoS功能,如拥塞管理,拥塞避免,流量限制,报文标记,流量整形等 相对于集成服务(IntServ),差别服务的实现相对简单,并且能够满足目前网络中的绝大多数业务需求
DiffServ模型的实现步骤 1、将网络的流量按照应用需求进行分类(语音、WWW浏览、FTP等) 2、将分类的流量按照级别进行标识(对报文着色) 3、每个级别实现一种策略满足各级别的需求(最小保证带宽、最大带宽限制、优先级)
流量分类和标识
IP报文标识的具体位置
标识报文的过程 基于应用类型来标识级别 在网络的边缘进行标识 避免主机应用程序使用该标识位
DiffServ模型完整的解决方案
DiffServ 模型的优越性 在网络中不需要维护每个业务流(per- flow)的信令或状态 可以为一个由许多单个流汇聚映射成的服务类型提供具有优先级的服务: 使得网络操作者能够轻松为所有可能使用网络的潜在终端用户及应用程序提供一种数量较少但又有所区别的服务级别。通过将多个单独的流汇聚成较少的一些特殊业务流,可以使这种模型能够比那些每个业务流的技术能够更高效地扩展和升级。这种技术也叫做CoS 。
DiffServ 存在的问题 DiffServ所提供的服务在带宽和时延方面可能得不到AT M 那样的保证,除非网络能够直接提供这种保证,而实际上这是由构成互连网络的各个独立网络所决定的。 如何在潜在数量很大的边缘组件上进行分类器状态的管理:可能的解决方案包括人工配置、SNMP、LDAP及RSVP等 如何给这些服务确定价格,以便只能有一部分的消费者或用户能够访问:如果提供的高优先级服务与传统的尽力而为的服务之间只有一个名义上的、无实际意义的价格差,可以想像每个人都会去申请高优先级的服务,这将破坏提出差分模型的初衷
QoS概述 QoS两种服务模型的实现:DiffServ&IntServ QoS功能组件 QoS应用 HOS QOS的配置
QoS功能组件 报文分类:一般在网络边缘把不同QoS要求的业务分类。在核心网络根据分类进行相应QoS级别处理 拥塞管理:在接口发生拥塞时,提供多种队列机制对拥塞的报文进行缓存和调度 拥塞避免:可预测网络的拥塞情况,采取措施避免拥塞,以减少报文丢失率,提高网络使用效率 流量监管:对单个、多个流或所有报文进行流量控制。提供对业务质量的可裁剪性 流量整形:对不规则或不符合预定流量特性的流量进行整形,以利于带宽匹配。可对接口上每个流或所有报文进行整形 物理接口总速率限制:对物理接口的带宽进行裁剪,丰富对网络带宽的管理手段
拥塞管理 网络拥塞了怎么办? 增加网络的带宽-使拥塞不发生 但增加带宽有成本,建设时间等因素的限制。 采用队列机制-管理、化解拥塞 队列机制:如FIFO、PQ、CQ、WFQ、CBWFQ 队列机制:当拥塞发生时,报文在路由器出口处按一定的策略入队缓存;在接口可以发送时,再按照一定的调度策略决定报文出队发送的次序。
拥塞管理--拥塞的例子
拥塞管理--队列机制 FIFO(First In First Out):先进先出队列 PQ(Priority Queue) :优先级队列 CQ(Custom Queue) :定制队列 WFQ(Weighted Fair Queue):加权公平队列 CBWFQ(Class Based WFQ) :基于类的加权公平队列
拥塞管理 -- FIFO队列 FIFO:通常的先进先出队列,报文的入队顺序和报文的出队顺序相同。
拥塞管理 -- PQ队列 PQ:优先队列,能够保证高优先级队列的带宽和时延 共分4个队列:High、Medium、Normal和Low 较高优先级的队列优先调度(绝对优先) 4个队列长度可配置
拥塞管理 -- CQ队列 CQ(定制队列),用户可配置队列间占用的带宽比例关系 共分17个队列:0号为系统队列,优先调度;1-16号为用户队列,根据带宽配额轮询调度 带宽比例满足统计规律 各队列长度及带宽配额可配置
拥塞管理 -- WFQ队列 WFQ:加权公平队列,保证不同数据流之间的公平,同时体现权值; 队列数目预先配置(16-4096) 采用HASH算法,尽量将不同的流分入不同的队列,用户无法配置 在保证公平(带宽、延迟)的基础上体现权值,权值依赖于IP报文头中携带的IP优先级 队列长度和带宽配额可配置 低速线路缺省配置
拥塞管理 --WFQ队列 WFQ的实现机制
拥塞管理小结 队列技术比较
拥塞避免 -- RED/WRED RED(Random Early Detection) 技术的基础是,假定大多数在数据传输应用中进行的通信对丢失很敏感。 传统尾丢弃方式造成TCP全局同步,使线路的上的流量总在极少和饱满之间波动。 WRED与RED区别是后者引入IP优选权,区别丢弃策略
什么是TCP全局同步 由于内存资源的有限,传统的拥塞处理方法是,当队列的长度达到规定的最大长度时,所有到来的报文都被丢弃。 大量的TCP报文被丢弃,将造成TCP超时,引发TCP的慢启动和拥塞避免机制,使TCP减少报文的发送。当队列同时丢弃多个TCP连接的报文时,将造成多个TCP连接同时进入慢启动和拥塞避免,称为“TCP全局同步”:多个TCP连接发向队列的报文将同时减少,回避一段时间后,又同时增加发送流量,使得网络上的流量忽大忽小,网络上的流量总在极少和饱满之间波动。降低了线路带宽的利用率。
拥塞避免--WRED WRED(Weighted Random Early Detection),加权随机早期检测 WRED可以根据当前队列深度来预测拥塞情况,采取抑制部分TCP连接的方式,控制拥塞程度。 WRED由于采用随机丢弃的方式,避免了传统尾丢弃方式引起的TCP全局同步现象发生。提高了线路带宽的利用率。
拥塞避免--WRED 用户可以设定队列的低限和高限。 当队列的长度小于低限时,不丢弃报文。 当队列的长度大于高限时,丢弃所有的数据包。
拥塞管理--加权随机早期丢包(W-RED) Weighted Random Early Detection
报文分类与流量监管--CAR 为什么要报文分类? 在网络边缘对报文进行分类,方便网络内部节点实现Diff-Serv。 为什么要流量监管? 控制网络的负载: 对于ISP来说,对用户送入网络中的流量进行控制是十分必要的 对于企业网,如果能对某些应用的流量进行控制,必将也是一个控制网络状况的有效手段
报文分类与流量监管--CAR CAR(Committed Access Rate),约定访问速率 对报文的流量进行限制, 并可以进行数据包的标记(mark)或重新标记(re-mark) 对报文进行分类,方便网络内部节点实现DIFFSERV
报文分类与流量监管--CAR 报文行分类与流量监管的图示说明: Token Bucket算法
流量整形--GTS GTS, Generic Traffic Shaping 可以使接口上的流量符合设定的流量特性,有利于确保各个业务之间相互配合,上下游节点之间的配合,降低包丢失率,提高服务质量。 实现的方法:对报文的流量进行限制,对超出流量约定的报文进行缓冲,然后在合适的时候将缓冲的报文发送出去。
流量整形--GTS Token Bucket算法+缓冲队列
流量监管和流量整形
物理接口总速率限制 LR(Line Rate),物理接口总速率限制 网络建设时,可以根据中长期需求预测适当超前,实际运营时根据用户购买的带宽进行裁剪,从而保护了投资者的利益。增强可控制,可管理的手段
QoS概述 QoS两种服务模型的实现:DiffServ&IntServ QoS功能组件 QoS应用
QoS应用策略--端到端的DiffServ 策略: 在网络边缘对每个packet进行分类,骨干网对分类过的packet提供有区别的服务。 在网络的边缘,通过CAR对数据流进行分类及限流,对超过流量的数据报文进行丢弃或是设置更低的优先级。 在骨干网络节点上,对不同优先级的数据报文区别对待,实施拥塞管理和拥塞避免策略。 在边缘路由器的出口进行流量整形。