380 likes | 587 Views
第七章 IP 网络的服务质量. Resource. Xiao Xipeng, Lionel M Ni. Internet QoS:The Big Picture. IEEE Network Magazine, 1999,13(2) :8-18 R. Braden, D. Clark, and S. Shenker. Integrated services in the Internet architecture: an overview. RFC 1633, July, 1994
E N D
Resource • Xiao Xipeng, Lionel M Ni. Internet QoS:The Big Picture. IEEE Network Magazine, 1999,13(2) :8-18 • R. Braden, D. Clark, and S. Shenker. Integrated services in the Internet architecture: an overview. RFC 1633, July, 1994 • S. Blake, D. Black, M. Carlson. An Architecture for Differentiated Services. RFC 2475, December 1998 • Y. Bernet, P. Ford, etc. A Framework for Integrated Services Operation over Diffserv Networks, RFC 2998, November 2000 • IETF NSIS (Next Steps in Signaling) Working Group • Standardizing an IP signaling protocol with QoS signaling as the first use case • G. Armitage, Revisiting IP QoS: why do we care, what have we learned ? ACM SIGCOMM 2003 RIPQOS workshop report, Computer Communication Review • X. Masip-Bruin, M. Yannuzzi, etc. Research challenges in QoS Routing, Computer Communications 29(2006) 563-581
背景 IP将成为未来各种网络技术和业务的融合平台 QoS: Quality of Service,服务质量 数据业务 综合业务 (数据视频语音) 尽力服务模型 支持服务质量模型 IP网络 以太网、令牌环网、IEEE 802.11、3G…
路由器 LAN交换机 帧中继交换机 ATM交换机 时分复用设备 RTSP、数据压缩等 应用层 RTP+RTCP TCP流控 带宽控制设备 带宽控制设备 传输层 R RSVP R L4 R L4 R TCP/UDP端口号 网络层 COS、Diff-serv R R IEEE 802.1p标记 SW SW 链路层 帧分片(FRF.12) FR FR 业务类型(CBR、VBR等) ATM ATM 物理层 带宽分割 TDM TDM 按层次对QoS技术分类 高层: QoS参数 协商和 状态维护 底层: 真正的 QoS实现 CBR:Constant Bit Rate VBR:Variable Bit Rate UBR:Unspecified Bit Rate FRF:Frame Relay Forum TOS:Type Of Service Diff-serv:Differentiated service RTP:Real-time Transport Protocol RTCP:RTP Control Protocol RTSP:Real Time Streaming Protocol
服务质量 定义 • ITU-T:QoS是一个综合指标,用于衡量一个服务的满意程度。 • IETF:QoS是在传输一个“流”时,网络能够满足相应的服务需求 • Cisco:QoS是指一个网络能够利用各种底层技术向选定的网络业务提供更好的服务的能力。这些底层技术包括:帧中继(Frame Relay)、异步传输模式(ATM)、以太网、SONET以及IP-路由网络等
QoS的度量参数 • 带宽(bandwidth):给定介质、协议或连接的额定吞吐量,实际上指应用程序在网络中通信所需要的“管道大小”,也可以认为是用户对网络传输速率的要求。 • 最小带宽(最小分组速率(Least Packet Rate)):传输中的最小瞬时速率,可用产生两个相邻分组的最大时间间隔的倒数来表示 • 峰值带宽(峰值分组速率(Peak Packet Rate)):传输中的最大瞬时速率,可用产生两个相邻分组的最短时间间隔的倒数来表示; • 平均带宽(平均分组速率(Sustained Packet Rate)):一段时间内分组传输的平均速率; • 延时(delay):分组从发送端到达接收端的时间间隔 • 传输延时:transmission delay):发送分组的第一个比特到发送最后一个比特的时间间隔,取决于发送接口的速率和分组的大小。 • 传播延时:(propagation delay):发送分组的一个比特到接收端接收到该比特的时间间隔,取决于传输介质和传输距离。 • 处理延时(processing delay):分组从到达节点到进入输出队列的时间间隔,包括对分组头标处理,路由查找等,取决于节点的处理能力和分组处理的复杂度。 • 排队延时(queuing delay):分组从进入输出队列到开始输出的时间间隔,取决于队列长度和调度策略。 • 延时抖动(delay jitter):端到端延时的变化特性,由延时的可变部分的变化导致的,流量的突发、不公平的队列调度算法都可能导致较大的延时抖动。
QoS模型 • 综合服务(IntServ)模型 • 区分服务(DiffServ)模型 • Diff-IntServ综合模型 All Proposed by IETF
IntServ模型 • 概述 • 参考实现框架 • 业务量控制机制 • 服务类型 • 资源预留协议(RSVP:Resource Reservation Protocol) • IntServ和IPv6 • IntServ特点
概述 • IETF的IntServ工作组于1994年提出 • 同时支持实时和非实时业务 • 在每个实时业务开始之前,由终端设备向网络发出请求,为它预留必要的网络资源(带宽、存储),通过在网络中使用拥塞控制和队列调度机制,使实时业务的带宽和延迟得到保证 • “流”:来自单一用户具有相同QoS需求,且可识别的数据分组 • IntServ中能识别的最小粒度 • 流是单向的,它具有单一的发送端和N个接收端。
参考实现框架 后台执行代码 分组转发路径 资源预留协议负责逐跳(hop-by-hop)建立或拆除每个流的资源预留软状态(soft state) 接纳控制根据链路和网络节点的资源使用情况以及具体的QoS请求决定是否接受一个资源预留请求 分组分类器对到达的数据分组进行分类,然后分别放入不同的输出队列 分组调度器根据不同的策略对各个队列中的分组进行调度转发
业务量控制机制:概述 • 传统的Internet分组转发 • FIFO:First In First Out • 业务无区分 • 业务量控制机制为流提供不同的服务质量 • 分组分类(Packet Classify) • 接纳控制(Admission Control) • 分组调度 (Packet Schedule) • 分组丢弃(Packet Drop)
业务量控制机制:分组分类 • 将输入分组映射到某个类,放入不同的输出队列 • 一个类可能包含有多个流 • 多字段(MF:Multi-Field)分类器 • 源/目的IP地址、源/目的端口、协议类型 • 原则:考虑分类粒度和处理开销之间的平衡 • 用于分类的字段越多,处理开销越大
业务量控制机制:接纳控制 • 根据当前资源情况,判断是否同意接入一个新的流的QoS请求 • 两种接纳控制算法 • 基于资源预留参数的接纳控制:根据节点以前同意接入的所有请求的服务参数,用每个服务最坏情况的边界值来进行计算 • 基于资源实际使用情况的接纳控制:测量现有分组流的实际链路带宽利用率,据此来判定是否接纳一个新的流
业务量控制机制:分组调度 • 从多个输出队列中选择下一个要转发的分组 • 分组调度算法 • 严格优先级调度(Strict Priority Scheduling) • 队列按优先级递减排序,只有在高优先级的队列为空时,才服务下一个优先级的队列 • 低优先级队列的分组可能被完全阻止发送(处于饥饿状态) • 映射到高优先权队列的业务量不超出允许的局部输出链路的容量 • 加权公平队列WFQ(Weighted Fair Queuing) • 根据权重来确定每个队列所获得的链路带宽的百分比 • FQ:Fi = Max(Fi-1,Ai) + Pi
业务量控制机制:分组丢弃 • 当路由器队列(缓冲区)时将开始丢弃分组 • 被动丢弃:队尾丢弃(Drop Tail) • 主动丢弃:随机早期检测(RED:Random Early Detection )丢弃 Qavg=(1-Wq)× Qavg+Qinst × Wq
服务类型 • 保证型服务(GS:Guaranteed Service ) • 提供完全保证的服务质量,用于要求低延时的业务,其最大延时和带宽能够得到定量保证 • 受控负载型服务(CLS:Controlled-Load Service ) • 没有固定的时延保证,能够提供一种相当于网络节点在低负载情况下的尽力服务 • 受控负载业务与其它业务分离:WFQ调度算法 • 链路上的受控负载业务总量:接纳控制 • 尽力服务(Best Effort)
资源预留协议:处理模型 • RSVP不在分组转发路径上,并不是一个路由协议 • IPv4基于UDP实现 • IPv6基于IP实现 • 资源预留请求是单向的,也就是仅在一个方向上进行资源预留
资源预留协议:运行机制 • PATH • 描述业务流特征的参数TSpec • 沿途节点QoS控制能力与需求信息的描述参数ADSpec • RESV • 接收端预留的资源参数FLOWSpec • 描述业务流特征的参数TSpec • 描述所要求服务的参数RSpec Path Path Path 发送者 路由器 路由器 接收者 RESV RESV RESV DATA DATA DATA
资源预留协议:特点 • 面向接收(Receiver-Oriented):由接收方根据需要预留 • 软状态(soft state):定期发送PATH和RESV消息维护 • 组播支持 RESV 接收方1 RESV (已合并) PATH 发送方1 路由器1 路由器1 接收方2 RESV
IntServ和IPv6 • 流的源端可以用流标记来标识流 • 路由器可以根据分组头中的流标记对分组进行快速处理
IntServ特点 • 提供端到端的QoS保证 • 基于流的细粒度资源分配 • 存在可扩展性问题 • 必须建立和维护“每流”的预留状态信息 • 需要对每个流进行接纳控制、分类等操作 存储、处理开销随着流的数量的增加而急剧增长
DiffServ模型 • 概述 • 结构模型 • 区分服务域(DS Field)定义与区分服务码点( DSCP: Differentiated Service CodePoint) • 逐跳行为(PHB:Per-Hop Behavior) • DiffServ与IPv6 • DiffServ特点
概述 • IETF的DiffServ工作组于1998年提出 • 解决IntServ的可扩展性问题,在分组中携带的信息决定如何处理,而不需要使用RSVP协议 • 基于类的QoS保证,通常在核心网中使用 • 当业务到达区分服务区域的边界时,边缘路由器使用分组头标中的区分服务标记域(DS field)对其进行聚类,网络对同类业务给予相同的QOS保证
结构模型(1) • 边缘路由器:业务量分类和调节,对分组头标中的DS域进行标记,标记值被称为DSCP • 中心路由器:根据IP分组DS域中所标记的DSCP值,来选择所对应的转发处理,即逐跳行为(PHB),从而对分组进行调度转发 • SLA(Service Level Agreement)协商:不同DS区域之间的分类规则、重新标记规则以及业务流应该符合的业务量配置文件
结构模型(2) DS字段分类器 调度器 边缘路由器 核心路由器 核心 路由器 边缘 路由器 DATA DATA DATA DATA 流量调节器 度量器 传输调度 分类器 标记器 整形/丢弃
DS域定义与DSCP • DS域定义 • IPv4头标的TOS(Type of Service,TOS)域或IPv6头标的业务量等级(Traffic Class)域的前6比特 • DSCP:DS域中的具体值,DS节点根据DSCP选择特定的PHB
逐跳行为 • 描述根据DSCP对特定类进行资源分配的方式 • 具体由相应的队列调度算法例如WFQ来实现 • 四种PHB • BE(Best Effort ),缺省型PHB • EF(Expedited Forwarding ),加速转发型PHB • AF(Assured Forwarding ),确定转发型PHB • CS (Class Selector ),兼容IP优先级的类选择型PHB
EF PHB: 加速转发型PHB • 为某种业务量集合提供低丢失率、低延时和低延时抖动的服务 • 需要以下两部分功能模块: • 调节这个集合的业务量(通过监控和整形)使它在任意节点上的到达速率总是小于那个节点配置的最小离开速率。 • 配置节点,使得某个集合的业务量有一个独立于节点其他业务量的离开速率(配置速率)。 • 推荐DSCP为101110 流量调节器完成,丢弃超过预定带宽的业务量 调度算法(WFQ)来实现
AF PHB:确定转发型PHB • 为用户提供不同级别的转发保证,定义了四个等级 • IP分组转发保证取决于: • 多少资源分配给此分组所属的AF等级 • 此AF等级当前的负载和拥塞情况 • 分组的丢弃优先级 • DSCP
兼容IP优先级的类选择型PHB: CS PHB • 向后兼容IP优先级队列,历史上IPv4 TOS域的前3比特曾作为优先级队列调度的标志,共定义了8个优先级 • 可通过严格优先级、循环优先级队列等较为粗略的调度机制实现 • DSCP: xxx000
DiffServ与IPv6 • 流标记 • 根据流标记进行快速分类
DiffServ特点 • 基于聚合类的粗粒度资源分配 • 具有较好的可扩展性。DS字段只是规定了有限数量的业务级别,状态信息的数量正比于业务级别,而不是流的数量 • 易于实现。只在网络的边界上才需要复杂的分类、标记、整形等操作 • 无法提供端到端的QoS保证
Diff-IntServ综合模型 • IntServ模型:接入网络 • DiffSev模型:核心网络 • IntServ和DiffServ网络之间的映射机制 端到端QoS
Mobility and QoS • 移动节点选择满足QoS需求的网络 • 移动节点切换导致分组传输路径改变 • 快速重新建立QoS路径 • 移动节点转交地址地址变化 • 刷新路由器上的软状态
QoS:Is it really necessary? • No • QoS guarantee by traffic control and resource management is too complicated to be practical • Over-provision of bandwidth will provide QoS • Yes • Traffic growth is always faster than bandwidth growth • Bandwidth available can not be infinite, especially at the edge (including wireless access) • QoS control should be end-to-end, otherwise must move the problem elsewhere • Seamless handover and roaming of mobile hosts need strict QoS • Qos differentiation and tariff need QoS guarantee
QoS: Research Issues • QoS技术的应用和开发 • 无线环境下的QoS研究 • MAC层机制 • 网络层 • 传输层 • 自组织网络(Ad Hoc)中的QoS研究