950 likes | 1.08k Views
第å…ç« IP 网络的æœåŠ¡è´¨é‡. æœåŠ¡è´¨é‡ä½“系结构. æœåŠ¡è´¨é‡å®žçŽ°æŠ€æœ¯. IP 网络的æœåŠ¡è´¨é‡. 概述 ç»¼åˆæœåŠ¡ 区分æœåŠ¡ é˜Ÿåˆ—ç®¡ç† ä¸šåŠ¡ç›‘ç®¡. 主è¦å†…容. IP 网络的æœåŠ¡è´¨é‡. 概述 ç»¼åˆæœåŠ¡ 区分æœåŠ¡ é˜Ÿåˆ—ç®¡ç† ä¸šåŠ¡ç›‘ç®¡. 主è¦å†…容. IP 网络. 以太网ã€ä»¤ç‰ŒçŽ¯ç½‘ã€ IEEE 802.11 〠3G…. 1. 概述. æå‡ºå¸¦å®½ï¼Œå»¶è¿Ÿéœ€æ±‚. IP å°†æˆä¸ºæœªæ¥å„ç§ç½‘络技术和业务的èžåˆå¹³å° QoS: Quality of Service ,æœåŠ¡è´¨é‡. 背景. æ•°æ®ä¸šåŠ¡. 综åˆä¸šåŠ¡ (数æ®è§†é¢‘è¯éŸ³ï¼‰. æ— å¸¦å®½ï¼Œå»¶è¿Ÿä¿è¯. 尽力æœåŠ¡æ¨¡åž‹.
E N D
服务质量体系结构 服务质量实现技术 IP网络的服务质量 • 概述 • 综合服务 • 区分服务 • 队列管理 • 业务监管 主要内容
IP网络的服务质量 • 概述 • 综合服务 • 区分服务 • 队列管理 • 业务监管 主要内容
IP网络 以太网、令牌环网、IEEE 802.11、3G… 1. 概述 提出带宽,延迟需求 IP将成为未来各种网络技术和业务的融合平台 QoS: Quality of Service,服务质量 背景 数据业务 综合业务 (数据视频语音) 无带宽,延迟保证 尽力服务模型 支持服务质量模型
1. 概述 • ITU-T:QoS是一个综合指标,用于衡量一个服务的满意程度 • Cisco:QoS是指一个网络能够利用各种底层技术向选定的网络业务提供更好的服务的能力。这些底层技术包括:帧中继(Frame Relay)、异步传输模式(ATM)、以太网、SONET以及IP-路由网络等 • IETF:QoS是在传输一个“流”时,网络能够满足相应的服务需求 QoS定义
1. 概述 • 从一个源到一个目的的有序分组集合被称为一个流(Flow) • 一般来说,流是由特定于具有应用并且具有相同服务质量需求的分组所组成 • 在面向连接的网络中,属于同一个流的所有分组将会走相同的路径到达目的地 ,在无连接的网络中,属于同一个流的分组可能会走不通的路径到达目的地 流的概念 一个流和一个应用会话(Session)相对应,所以在后面叙述中有时将流的概念和会话的概念等同
1. 概述 • 带宽(bandwidth):给定介质、协议或连接的额定吞吐量,实际上指应用程序在网络中通信所需要的“管道大小”,也可以认为是用户对网络传输速率的要求 • 最小带宽(最小分组速率(Least Packet Rate)):传输中的最小瞬时速率,可用产生两个相邻分组的最大时间间隔的倒数来表示 • 峰值带宽(峰值分组速率(Peak Packet Rate)):传输中的最大瞬时速率,可用产生两个相邻分组的最短时间间隔的倒数来表示 • 平均带宽(平均分组速率(Sustained Packet Rate)):一段时间内分组传输的平均速率 QoS度量参数
1. 概述 • 延迟(delay):分组从发送端到达接收端的时间间隔 • 传输延迟:transmission delay):发送分组的第一个比特到发送最后一个比特的时间间隔,取决于发送接口的速率和分组的大小 • 传播延迟:(propagation delay):发送分组的一个比特到接收端接收到该比特的时间间隔,取决于传输介质和传输距离 • 处理延迟(processing delay):分组从到达节点到进入输出队列的时间间隔,包括对分组头标处理,路由查找等,取决于节点的处理能力和分组处理的复杂度 • 排队延迟(queuing delay):分组从进入输出队列到开始输出的时间间隔,取决于队列长度和调度策略 • 延迟抖动(delay jitter):端到端延迟的变化特性,由延迟的可变部分的变化导致的,流量的突发、不公平的队列调度算法都可能导致较大的延迟抖动 QoS度量参数
1. 概述 • 综合服务 • 区分服务 QoS体系结构 All Proposed by IETF
IP网络的服务质量 • 概述 • 综合服务 • 区分服务 • 队列管理 • 业务监管 主要内容
2. 综合服务模型 • 综合服务:IntServ • IETF的IntServ工作组于1994年提出 • 同时支持实时和非实时业务 • 在每个实时业务开始之前,由终端设备向网络发出请求,为它预留必要的网络资源(带宽、处理、存储) • 通过在网络中队列管理机制,使实时业务的带宽和延迟得到保证 • 通过分组调度机制,实现实时业务和非实时业务的分离 • “流”是IntServ中能识别的最小粒度 • 流是单向的,它具有单一的发送端和N个接收端 概述
资源预留Agent 接纳控制 后台执行代码 (信令) 分组转发路径 (数据) 分组分类器 分组调度器 资源预留:负责逐跳(hop-by-hop)建立或拆除每个流的资源预留软状态(soft state) 接纳控制:根据链路和网络节点的资源使用情况以及具体的QoS请求决定是否接受一个资源预留请求 分组分类器:对到达的数据分组进行分类,然后分别放入不同的输出队列 分组调度器:根据不同的策略和分配的资源对各个队列中的分组进行调度转发 QoS实现机制
版本 标记 类型 校验和 TTL 0 长度 2.1 资源预留协议 • RSVP: Resource ReSerVation Protocol ,用来在源和目的之间路径上预留资源 • 资源预留请求是单向的,也就是仅在一个方向上进行资源预留 • RSVP位于协议栈的传输层,但是不传输应用数据,更像一个Internet控制协议 概述 MAC头标 IP头标 RSVP头标 数据…. 1B 1B 2B • 消息类型 • 1 PATH:发送端对接收端提出QoS需求 • RESV:接收端响应,并且提出资源预留 • PATHErr:无法满足QoS需求 • RESVErr:无法实现资源预留
Path Path Path RESV RESV RESV DATA DATA DATA 2.1 资源预留协议 • PATH • 发送主机的IP地址,UDP/TCP端口号等参数组成的Template • 描述发送方发送的业务流特征的参数TSpec • 沿途节点QoS控制能力与需求信息的描述参数ADSpec • RESV • 接收端预留的资源参数FLOWSpec • 描述业务流特征的参数TSpec • 描述所要求服务的参数RSpec 运行机制 接收主机 发送主机 路由器 路由器
2.1 资源预留协议 • 面向接收(Receiver-Oriented):由接收主机根据需要预留 • 软状态(soft state):定期发送PATH和RESV消息维护 • 组播支持:1对多通信 特点 RESV 接收主机1 RESV (已合并) RESV (已合并) 发送主机1 路由器1 路由器1 接收主机2 RESV
2.2 接纳控制 • 接纳控制:Admission Control • 根据当前资源情况,判断是否同意接入一个新的流的QoS请求 • 接纳控制算法 • 基于资源预留参数的接纳控制:根据节点以前同意接入的所有请求的服务参数,用每个服务最坏情况的边界值来进行计算 • 基于资源实际使用情况的接纳控制:测量现有数据流的实际链路带宽利用率,据此来判定是否接纳一个新的流
2.3 服务类型 • 保证型服务(GS:Guaranteed Service ) • 提供完全保证的服务质量,用于要求低延时的业务,其最大延时和带宽能够得到定量保证 • 常用于话音、视频等实时业务 • 受控负载型服务(CLS:Controlled-Load Service ) • 能够提供一种相当于网络节点在低负载情况下的尽力服务 • 要求低的丢包率,可以接受一定范围内的延迟 • 常用于文件下载,Web访问等业务 • 尽力服务(Best Effort) 服务分离通过节点上的调度算法来实现
2.4 综合服务总结 • 提供端到端的QoS保证 • 基于流的细粒度资源分配 • 存在可扩展性问题 • 在路径上的每个节点必须建立和维护“每流”的预留状态信息 • 在路径上的每个节点需要对每个流进行接纳控制、分类调度等操作 存储、处理开销随着流的数量的增加而急剧增长
IP网络的服务质量 • 概述 • 综合服务 • 区分服务 • 队列管理 • 业务监管 主要内容
3. 区分服务模型 • 区分服务:DiffServ • IETF的DiffServ工作组于1998年提出 • 解决IntServ的可扩展性问题,在分组中携带的信息决定如何处理,而不需要使用RSVP协议 • 基于类的QoS保证,通常在核心网中使用 • 当业务到达区分服务区域(DS区域)的边缘时,边缘路由器使用分组头标中的区分服务标记域(DS field)对其进行聚类 • 网络对同类业务给予相同的QOS保证 概述 DS区域:连续的多个实现相同服务策略的DS路由器组成的组
DS区域:连续的多个实现相同服务策略的DS路由器组成的组 • 边缘路由器:业务量分类和调节,对分组头标中的DS域进行标记,标记值被称为DSCP • 中心路由器:根据IP分组DS域中所标记的DSCP值,来选择所对应的转发处理,即逐跳行为(PHB),从而对分组进行调度转发 • SLA(Service Level Agreement)协商:不同DS区域之间的分类规则、重新标记规则以及业务流应该符合的业务量配置文件
根据标记(DS域)对分组执行调度转发 边缘路由器 中心路由器 中心 路由器 边缘 路由器 DATA DATA DATA DATA 检查进入的数据流,看是否遵守配置 使得业务遵守预先的配置 业务量调节器 度量器 调度 分类器 标记器 整形/丢弃 行为汇聚分类器(BA):根据DS域对分组进行分类 多域分类器(MF):根据不同的头标域或者头标域的组合来分类分组 根据分类结果给分组打上标记(DS域)
3.1 DS域 • IPv4头标的TOS(Type of Service,TOS)域或IPv6头标的业务量等级(Traffic Class)域的前6比特 • DSCP:DS域中的具体值,节点根据DSCP选择特定的转发操作,从而实现资源分配 定义
3.2 逐跳行为 • 逐跳行为(PHB:Per Hop Behavior):在每个节点上描述根据DSCP对特定类进行资源分配的方式 • 具体由相应的队列调度算法来实现 • 四种PHB • BE(Best Effort ),缺省型PHB • CS (Class Selector ),兼容IP优先级的类选择型PHB • EF(Expedited Forwarding ),加速转发型PHB • AF(Assured Forwarding ),确定转发型PHB 概述
3.2 逐跳行为 • 加速转发型PHB: EF PHB • 提供低丢失率、低延时和低延时抖动的服务 • 严格限制EF分组到达路由器的速率小于路由器转发EF分组的速率 • 通过在DS域的边缘配置边缘路由器,使得进入到DS域内的EF分组不超过某一最大速率,从而实现对EF分组速率的限制 • EF由具体的调度算法来实现 • 推荐DSCP为101110 加速转发
3.2 逐跳行为 • 确定转发型PHB: AF PHB • 为用户提供不同级别的转发保证,定义了四个等级 • IP分组转发保证取决于: • 多少资源分配给此分组所属的AF等级 • 此AF等级当前的负载和拥塞情况 • 分组的丢弃优先级 • DSCP 确定转发型
3.3 区分服务总结 • 基于聚合类的粗粒度资源分配 • 具有较好的可扩展性。DS域只是规定了有限数量的业务级别,状态信息的数量正比于业务级别,而不是流的数量 • 易于实现。一般只在网络的边缘上才需要复杂的分类、标记、整形等操作 • 无法提供端到端的QoS保证
综合-区分服务模型 • IntServ模型:接入网络 • DiffSev模型:核心网络 • IntServ和DiffServ网络之间的映射机制 端到端QoS
IP网络的服务质量 • 概述 • 综合服务 • 区分服务 • 队列管理 • 业务监管 主要内容
Switch Fabric 4. 队列管理 • 路由器结构 • 队列管理主要是针对输出队列进行的 • 调度算法:属于不同流的分组可能汇聚在路由器输出队列中等待发送,当发送机会到来时,调度算法决定了选择队列中的哪一个分组发送 • 丢弃策略:当路由器的输出队列满或者将要满时,丢弃策略决定了在什么时候、选择队列中哪一个分组丢弃 概述
4. 队列管理 • 调度算法决定了分组在队列中的排队延迟,从而影响到流在网络中转发的端到端延迟、延迟抖动以及分配的带宽 • 丢弃策略决定了分组能否到达最终的目的地,从而影响到流在网络中传输时的丢包率 概述
4. 队列管理 • 分组调度算法 • 丢弃策略 • 聚类 主要内容
4.1 分组调度算法 • 分组调度用于缓存区中的多个分组竞争使用同一个输出链路时 • 使用什么样的策略来选择分组发送? • 该策略会对性能有什么影响? • 1990年代的一个热点研究领域 • 输出缓存和共享存储交换占主导 • 传输链路特别是骨干链路是稀缺的资源 概述 输出缓存以队列的方式进行组织,调度主要对输出队列进行
4.1 分组调度算法 • 在设计调度算法时,应该根据实际情况考虑三个因素 设计考虑因素 • 优先级(Priorization):如果不同的流具有不同的QoS需求,需要使用优先级来实现流区分。例如某些流可能需要更低的延迟,那么属于这些流的分组将被优先调度 • 公平性(Fairness):不同流能够平等地访问网络资源,也就是说这些流对于网络资源具有相同的权利 • 隔离(Protection):对于以超过其分配带宽发送分组的恶意流不应该影响到其它正常流的性能
4.1 分组调度算法 • 公平性和优先级 • 互补而不是互斥,公平性保证相同优先级的业务流接受相同的服务,并且确保低优先级的流不会由于所有的资源都被高优先级的流消耗而得不到任何服务 • 公平性和隔离 • 相关,公平性会自动地提供隔离,将恶意流限制在其所享有的资源范围内 设计考虑因素
4.1 分组调度算法 • 先到先服务 • 优先级调度 • Round Robin • 公平调度 分类 常用于具有QoS需求的场合
4.1.1 先到先服务 • 先到先服务(FCFS:First-Come-First Served) • 发送机会到来时,最先到达的分组具有最高的调度优先级 原理 缺点:无法实现流区分,不支持基于流的优先级,也无法保证公平性和隔离
4.1.2 优先级调度 • 优先级队列(PQ:Priority Queueing) • 到达输出队列的流被分成若干个具有不同优先级的队列 • 当发送机会到来时,选择最高优先级并且非空的队列中的分组来发送,对于属于同一个优先级队列的分组,采用FCFS调度机制 原理 高优先级队列:分组1,3,4低优先级队列:分组2,5 缺点:无法提供公平性和隔离,低优先级队列调度会出现“饥饿”现象,因为只有高优先级队列中无分组发送时,低优先级的分组才有发送机会
4.1.2 优先级调度 • 当有比当前正在发送分组优先级更高的分组到达时,如何处理? • 继续发送低优先级分组,直到发送完成后再处理高优先级分组 • 低优先级分组被停止服务,重新放回队列中或者被丢弃,开始发送高优先级分组 非抢占和抢占调度 非抢占式调度 抢占式调度
4.1.3 Round Robin • Round Robin调度 • 到达输出队列的流被分成不同的队列 • 当有发送机会到来时,采用轮询的方式选择队列,并且从队列中选择分组发送 原理 队列1:分组1,2,3队列2:分组3,5 缺点:当每个流的分组大小不同时,难以保证公平性
4.1.3 Round Robin • 在Round Robin调度的过程中,如果某个队列为空,如何处理? • 在分配给该队列的时间内链路保持空闲,也就是说即使队列中没有分组要发送,也在每一轮调度中都保留为该队列分配的资源 • 直接转到下一个队列。也就就是说,只要有分组在队列中等待发送,链路就不会空闲 Non-work-conversing和work-conversing调度 non-work-conversing调度 work-conversing调度
4.1.4 公平调度 • 公平(Fairness) • 不是指用户分配相同份额的资源,而是指每个用户对资源具有相同的访问权利 公平 问题:如果系统没有足够的资源满足所有用户的需求,并且某些用户可能比其他用户需要更少的资源。在保证公平的情况下如何分配资源? Max-Min公平共享:首先要满足那些需求小于它们可以得到部分的用户,然后将多余的资源在那些需求更大的用户之间平均分配 可以证明,在Round Robin调度算法中,如果每个队列中的分组大小都相等,则满足Max-Min公平共享
4.1.4 公平调度 • 定义 • 资源按照递增的顺序分配 • 没有用户获得大于其所需的资源 • 无法满足需求的用户获得相同的资源 • 分配过程 • 假设 • 系统总资源R • 用户集合1,2,…, n • 对应的资源需求r1,r2,…,rn,r1<r2<…<rn • 步骤 首先将R/n的资源分配给用户1,也就是具有最小资源需求的那个用户,R/n可能大于r1,也就是比用户1需求的要多,此时将r1分配给用户1,并且继续这个过程来,在剩余用户中分配剩下来的资源,直到出现第一个分配到的资源不比其需要的多为止,该用户的需求没有得到满足 Max-Min公平共享
4.1.4 公平调度 • 赋予某些用户比其它用户具有获取更大份额资源的权利 • 对每一个用户i都赋予相应的权重wi,以反应其获取资源的相对权利 • 加权Max-Min公平共享分配定义 • 对用户需求通过权重归一化,然后按递增顺序来分配资源。 • 没有用户获得大于其所需的资源 • 无法满足需求的用户获得与其权重成比例的资源份额 加权Max-Min公平共享
链路容量C=1Mbps=1,000,000bps 加权Max-Min公平共享例子 权重为:w1=0.5, w2=2, w3=1.75, w4=0.75
链路容量C=1Mbps=1,000,000bps 权重为:w1=0.5, w2=2, w3=1.75, w4=0.75 权重为:w1=0.5, w2=2, w3=1.75, w4=0.75 权重归一化后得到2/20, 8/20, 7/20, 3/20。第1轮分配结束后,3多出的145,200在1,2,4中进行分配,1得到145200*2/(2+8+3)=22338bps, 2得到145200*8/(2+8+3)=89354bps, 4得到145200*3/(2+8+3)=33508bps,需要注意的是,在分配时只用考虑剩下用户的权值