1、多层交换技术与应用 第五讲:多层交换的QoS,孙润元 ise_,回顾,传统的MLS 基于CEF的MLS,19.4.18,内容,IP网络QoS的基本概念 多层交换网络QoS的主要技术 拥塞控制 流量整型,19.4.18,IP网络QoS概述,IP网络传输问题,为什么需要QoS,以太网速度不匹配:当速度不同的网络设备进行通信的时候,就可能导致网拥塞。例如,吉比特以太网上的服务器将数据发送给100Mbit/s以太网上的服务器时,由于交换机的缓冲空间限制,可能导致100Mbit/s以太网上的服务器出站接口发生拥塞。 多对一交换矩阵:当采用多对一的方式聚集交换机时,就可能导致网络拥塞。例如,多台接入层交换
2、机连接到同一台分布层交换机的时候,这些接入层交换机的交换矩阵的带宽总和通常超过了分布层交换机的交换矩阵的能力。,为什么需要QoS,聚集:当多台以太网设备通过以太网进行通信或与单台网络设备/服务器通信的时候,就可能导致网络拥塞。 异常行为:异常行为和事件也可能导致网络拥塞。网络设备的硬件/软件故障可能导致广播风暴或其他类型的网络风暴,进而使多个接口发生拥塞。软件故障包括计算机蠕虫和病毒,它们可能导致数据包风暴,进而拥塞企业甚至服务提供商的网络。通过使用QoS,将能够缓解并控制这种异常行为发生时的网络行为,即使由于Internet蠕虫导致异常的数据包风暴,在异常解决之前,也能确保VoIP电话呼叫不
3、受影响。,19.4.18,IP网络QoS的提出,网络业务的变化 “Data over Voice” to “Voice over Data” 传统Internet体系结构无QoS保障 Best-Effort 用户和应用的需求 End-to-End QoS 特殊用户 关键应用,对于QoS问题有两种解决办法: 1)QoS的直接实现 2)流量工程(Traffic Engineering),19.4.18,IP网络QoS的定义,IP QoS :IP网络按照应用的要求成功传输IP数据包;用户通过应用来评价所获得的服务质量。 端到端的质量是关心的重点: QoS 依赖于网络中瓶颈链路所能提供的质量 QoS功
4、能可提供更好的和更可预测的网络服务: 支持专用带宽,改善损失特性; 避免并管理网络拥塞情况; 规定网络通信流量; 设置网络上的通信的优先权。,QoS技术分类,影响网络可用性和稳定性的因素,拥塞是影响网络可用性和稳定性的重要因素,但并非是唯一的因素。 所有网络都可能出现下述三种网络可用性和稳定性问题,包括那些不会发生拥塞的网络。 延迟(或时滞):数据包到达目标所需的时间。 延迟变化(或抖动):同一个流中不同数据包的延迟之间的差别。 丢包:数据包在信源和目标之间传输的过程中丢包的度量。,19.4.18,IP网络业务分类及对QoS的要求,弹性业务是指原有的Internet数据业务,对带宽和链路质量变
5、化适应能力强,只要求网络尽力将数据传送到目的地(Best-Effort)。 非弹性业务指实时业务,要求QoS保证。,不同业务对QoS侧重点也不同: 对于弹性业务来说,用户要求越快约好。 非弹性业务中,IP电话业务对延迟和抖动敏感度很高。延迟过大导致业务中断,抖动过大使编码器不能及时解码(一般会增加动态可调整缓冲区),因此抖动导致延迟进一步加大。 会议电视、动态图像点播等除了对延迟和抖动有一定要求外,还要求足够的带宽。 实时股票交易信息要求低网络延迟,对网络带宽和抖动要求并不高。,19.4.18,QoS的量化指标,分组传送时延 节点处理时延链路传输时延 分组传送时延抖动 分组丢失率 获取的带宽
6、Notes:不同应用的具体QoS指标会有所不同,Lack of bandwidth?: Multiple flows are contesting for a limited amount of bandwidth. Too much delay?: Packets have to traverse many network devices and links. Variable delay?: Sometimes there is a lot of other traffic, which results in more delay. Drops?: Packets have to be d
7、ropped when a link is congested.,What Causes .,Cisco IOS支持的QOS特性,控制对资源的使用 控制可以使用哪些网络资源(带宽、设备、WAN设施等)。例如,关键通信流(如语音、视频和数据)可能通过这样的链路进行传输,即不同类型的通信流彼此争用链路带宽。QoS帮助控制对资源的使用,如丢弃优先级低的通信流独占链路带宽,影响优先级高的通信流(例如语音通信流)。 更有效的利用网络资源 通过使用网络分析管理和统计工具,可以知道是如何被处理的,哪些通信流存在延迟、抖动和丢包等问题。如果通信流没有以最优的方式被处理,可以使用QoS来调整交换机对特定通信流的
8、处理方式。,Cisco IOS支持的QOS特性,定制服务(tailored service) QoS提供的控制能力和可见性让Internet服务提供商能够给客户定制不同的服务等级。例如,对于每天的访问量分别为3000-4000和200300的客户网站,服务提供商可以提供不同的SLA。 关键任务应用共存 Qos技术确保对企业来说最重要的关键任务应用能够优先使用网络,对时间敏感的多媒体和语音应用需要占用大量的带宽,且要求延迟尽可能小;而链路上的其他应用获得普通服务,不会影响关键任务通信流。,QoS解决方式,Cisco网络设备上支持下述组件和特性,QoS能够解决延迟、抖动和丢包等问题。 通过对通信流
9、进行标记和分类,能够使得网络设备区分不同的通信流。 通过流量调节(策略),能够使得通信流适应特定的行为和吞吐量。 将超过特定阈值的通信流标记为优先级(策略)。 当通信流速率达到特定阈值的时候,丢弃数据包(拥塞避免)。 通过对数据包进行调度,输出队列中先传输高优先级的数据包,然后再传输低优先级的数据包(拥塞管理)。 通过对输出队列进行管理,避免等待传输的低优先级数据包独占缓冲空间(拥塞管理)。,QoS解决方式,通过在企业或服务提供商网络中部署QoS组件和特性,可确保通信流的行为是确定的。换而言之,通过在基础设施中启用QoS,将能够: 预测端到端数据包传输、I/O操作、数据操作、事务处理等的响应时
10、间; 正确地管理和判断对抖动敏感的应用(例如音频和视频应用)的能力; 对延迟敏感的应用(例如VoIP)进行流处理; 控制拥塞发生时的丢包率; 在整个网络中配置通信流的优先级; 支持需要专用带宽的应用或网络需求; 监控和避免网络拥塞; 限制异常行为并维护网络稳定性(在发生恶意攻击的情况下)。,19.4.18,CASE:Available Bandwidth,Multiple flows are competing for the same bandwidth, resulting in much less bandwidth being available to one single appli
11、cation.,IP,IP,IP,IP,10 Mbps,256 kbps,512 kbps,100 Mbps,BWmax = min(10M, 256k, 512k, 100M)=256 kbps,BWavail = BWmax /Flows,Maximum available bandwidth equals the bandwidth of the weakest link.,19.4.18,CASE: End-to-End Delay,Propagation delay is fixed; processing and queuing delays are unpredictable i
12、n best-effort networks.,IP,Propagation Delay (P1),Processing and Queuing Delay (Q1),IP,IP,IP,Propagation Delay (P2),Processing and Queuing Delay (Q2),Propagation Delay (P3),Processing and Queuing Delay (Q3),Delay = P1 + Q1 + P2 + Q2 + P3 + Q3 + P4 = X ms,Propagation Delay (P4),End-to-end delay equal
13、s a sum of all propagation, processing, and queuing delays in the path.,19.4.18,CASE: Processing, Queuing, and Propagation Delay,Processing delay is the time it takes for a router to take the packet from an input interface and put it into the output queue of the output interface. Queuing delay is th
14、e time a packet resides in the output queue of a router. Propagation or serialization delay is the time it takes to transmit a packet.,IP,IP,IP,IP,Bandwidth,19.4.18,CASE: Packet Loss,Tail-drops occur when the output queue is full. These are the most common drops which happen when a link is congested
15、. There are also many other types of drops (input queue drop, ignore, overrun, no buffer, etc), which are not as common and which may require a hardware upgrade. These drops are usually a result of router congestion.,IP,IP,IP,IP,IP,Tail-drop,19.4.18,CASE: How to Increase Available Bandwidth?,Upgrade
16、 the linkthe best solution but also the most expensive.,FIFO queuing,IP,TCP,Data,19.4.18,CASE: How to Reduce Delay?,Upgrade the linkthe best solution but also the most expensive.,FIFO queuing,IP,UDP,Data,RTP,19.4.18,CASE: How to Prevent Packet Loss?,Upgrade the linkthe best solution but also the mos
17、t expensive.,FIFO queuing,IP,Data,QoS服务模型,尽力而为的服务:没有任何保证的标准连接方式。在Catalyst交换机中,这种服务使用先进先出(FIFO)队列,它按进入队列的顺序传输数据包,而不存在优先处理的概念。 集成服务(IntServ):又称为硬(hard)QoS,是一种严格的预定服务。换而言之,IntServ意味着所有中间系统和资源都显式地为流提供预定的服务。 区分服务:(DiffServ):又称为(Soft)QoS,它以类别为基础,一些类别的通信流优先于其他类别的通信流得到处理。区分服务使用统计优先(statistical preferences),
18、而不像集成服务那样提供严格的保证。换而言之,区分服务将通信流分类,然后将它们加入到效率不同的队列中。,QoS服务模型,在多层交换网路中,应根据下列因素选择使用何种服务类型: 应用支持; 技术升级速度和路径; 成本。,预留 带宽,网络 优先级,策略 服务器,Subnet或VLAN,应用 服务器,数据包分类,网络设备或者使用帧中的第2层CoS(Class of Service,服务类型)位来 进行分类。或者使用数据包中的第3层IP优先级/DSCP位来进行分类。,典型的以太网数据包,第2层ISL帧,第2层802.1Q帧,第3层IPv4数据包,3位用于CoS,IP优先级或DCSP,区分服务(Diffe
19、rentiated Services):8位。,前6位构成码点字段,使用两种不同方式: 这6位定义64种服务。分为三种类别,分别由下表指派机构确定其优先级。 当最右边三位为0,最左边的三位为数据报优先级别。,差分服务代码点(DSCP),DSCP、CoS、IP Precedences映射关系,如:默认的DSCP到CoS映射表,NE-CISCO-Core(config)#mls qos map ?cos-dscp cos-dscp map: eight dscp values for cos 0-7dscp-cos dscp-cos map keyworddscp-mutation dscp-mu
20、tation map keywordip-prec-dscp dscp values for ip precedences 0 - 7policed-dscp policed-dscp map keyword,Apr-19,PROVISIONING & MONITORING,Signaling Techniques (RSVP,DSCP*,ATM (UNI/NNI),Link Efficiency Mechanisms (Compression, Fragmentation),Congestion Avoidance Techniques (WRED),Congestion Managemen
21、t Techniques (PQ,CQ,WFQ,CBWFQ,LLQ),Classification & Marking Techniques (DSCP, IP Precedence, NBAR, etc.),POLICY-BASED NETWORKING,Traffic Conditioners (Policing, Shaping),IP QoS的体系结构,Policy Manager,QoS Manager,分类器识别信息流,策略管理器确定怎样处理信息流,即制订规则,QoS管理器执行规则,队列 1,队列 N,Scheduler,到输出端口,Classifier,物理 输入端口,单独 信息
22、流,QoS 体系结构,19.4.18,IP网络QoS技术,IP网络QoS的主要技术,流量整形,策略路由,拥塞控制,链路效率机制:压缩和链路分段与交叉 拥塞管理机制:PQ、CQ、WFQ、CBWFQ 拥塞调节机制:策略、整形 拥塞避免机制:WRED 分类标记技术:DSCP、IP优先级、NBAR 信令技术: RSVP、DSCP、ATM,19.4.18,拥塞管理,拥塞管理功能承担如下任务:创建队列,基于数据包的分类把数据包分配给相应的队列,调度队列中的数据包进行传输。 拥塞管理QoS功能提供四种排队协议: 先入先出队列(FIFO):不需要对数据包分类,所有路由器上默认FIFO。 加权公平队列(WFQ)
23、:提供动态、公平的排队方式。保证所有通信得到QoS服务。如:使交互性数据流(如Telnet)优先于文件传输数据流,以确保用户得到满意的时间响应。 优先级队列(PQ):可确保某一具体协议或类型的数据流被及时发送出去,即保证高优先级应用先得到服务。 可定制(custom)队列(CQ):对于各种应用(不同的流量类型)按照比例分配带宽。,19.4.18,拥塞管理,CISCO IOS队列操作,路由器首先需要检测是否产生了拥塞,如果没有拥塞产生,可以不需要使用排队技术。如果产生了冲突,而用户要求对拥塞进行控制,如果不需要严格的拥塞控制措施,可以采用加权公平队列。如果需要对拥塞进行严格的控制,则查看路由器上
24、是否设置了排队策略,如果没有设置排队策略,则检测分组的优先级,并判断延迟是否合适,使用PQ(优先级队列),如果对通信的延迟有严格要求,则使用CQ为每一类用户应用提供QoS。,19.4.18,拥塞管理,先入先出(FIFO)排队,FIFO是大多数路由器和交换机上采用的交换机制。该方式不对输入的数据包进行任何处理,延迟很小,但如果用于高速端口到低速端口的通信容易产生拥塞。,19.4.18,拥塞管理,加权公平随机队列(WFQ),数据流被划分为会话的标准基于:源和目标IP地址;源和目标MAC地址;源和目标套接字号;帧中继中DLCI值;服务质量/服务类型(QoS/ToS)值。,19.4.18,拥塞管理,W
25、FQ配置步骤配置公平队列建立加权公平队列 congestive-discard-threshold:拥塞丢弃值门限,用以设置各公平队列中允许进入的消息个数。有效值为14096,默认64。 show interface command, the output queue values 0/64/0 represents the size/threshold/drops,Switch(config-if)#fair-queue ?Congestive Discard Threshold,19.4.18,拥塞管理,PQ优先级队列概述 加权公平队列保证每个数据流公平的分配到带宽;优先级队列保证某种类型
26、数据流得到任其所需的带宽。 根据端口号划定优先级。,19.4.18,拥塞管理,PQ的操作优先级队列操作,19.4.18,拥塞管理,PQ的配置步骤优先级队列配置,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,PQ的配置任务优先级队列配置任务,19.4.18,拥塞管理,PQ的配置实例优先级队列配置示例1,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,PQ的配置实例优先级队列配置示例2,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,自定义队列(CQ) 为每个通信协议标识队列大小保证带宽,克服了低优先级队列可能无法传送的问题
27、。 可定制队列和优先级队列使用相同的分级过滤方式将数据包放入队列中。在放入之前,一系列过滤表条目应用到该消息。,19.4.18,拥塞管理,可定制队列操作,19.4.18,拥塞管理,可定制队列配置任务,19.4.18,拥塞管理,配置可定制队列,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,可定制队列配置示例1,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,可定制队列配置示例2,路由器配置示例,多层交换机配置示例见现场操作,19.4.18,拥塞管理,队列比较表,19.4.18,拥塞避免机制,拥塞避免技术主要用在骨干网络,监控网络通信量负载,并尽力
28、预测和避免公共网络上瓶颈处的拥塞现象发生。通过丢弃信息包可以达到避免拥塞的目的。 随机早期检测(Random Early Detection,RED) RED 的目的是控制平均队列大小,当通信量超过某个阈值时,采用尾部丢弃。通过这个机制,指示末端主机,暂时降低它们的信息包传输速度,从而减少网络拥塞发生。 加权随机早期检测( Weighted Random Early Detection,WRED ) 根据IP优先级进行有选择的尾部丢弃。,Switch6500(config-if)#wrr-queue ?bandwidth Configure WRR bandwidthcos-map Confi
29、gure cos-map for a queue thresholdqueue-limit Configure queue-limitrandom-detect Configure random-detect,19.4.18,流量整形技术,流量整形(Traffic Shaping) :调整数据传输的平均速率,是数据按照传输模式规定的速率进行传输,尽量避免突发性通信量导致的拥塞问题。 流量整形主要采用两种基本方法:漏桶(leaky bucket)算法和令牌桶(token bucket)算法。,从上图可以看出,漏桶可以看作是一个带有常量服务时间的单服务器队列,如果漏桶(包缓存)溢出,那么数据包会被
30、丢弃。,19.4.18,流量整形技术令牌桶,令牌桶算法的基本过程如下: 假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中; 假设桶最多可以存发b个令牌。如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃; 当一个n个字节的数据包到达时,就从令牌桶中删除n个令牌,并且数据包被发送到网络; 如果令牌桶中少于n个令牌,那么不会删除令牌,并且认为这个数据包在流量限制之外;,19.4.18,流量整形何时采用流量整形技术,多层交换网络中的QoS,第2层边缘(建筑物接入)交换机通常执行以下QoS功能:对每个数据包进行分类;标记;拥塞管理;拥塞避免。 通常情况下,因为主干设备收到的数据包已经
31、被分类和标记,所以第3层设备执行以下功能:拥塞管理;拥塞避免。,多层交换网络中的QoS,对于通过MAN或WAN连接到园区主干的边缘子模块,部署如下QoS特性:对每个数据包进行分类;流量策略和/或流量整型;分段;压缩;拥塞管理;拥塞避免。,QoS总结,分类给数据帧制定优先级值。 Catalyst交换机使用ACL支持基于接口和基于数据包的分类。 标记指的是在入站或出站时修改数据包的DSCP值或数据帧的COS值。Catalyst交换机使用流量策略或流量整型来调整通信流的速率。Catalyst交换机使用WRR、共享和整型等调度机制来支持拥塞管理。在Catalyst交换机上,拥塞避免使用WRED来提供T
32、CP流发生拥塞时链路的使用率。,QoS总结,在多层网络中部署QoS时,应遵循下述指导原则和建议。 在开始为Catalyst交换机配置QoS之前,首先制定一个QoS计划,明确地概述需要进行的通信流分类。 选择根据DSCP值(而不是CoS值)对通信流进行分类。 应当在尽可能靠近边缘的地方应用分类,最好是在建筑物接入子模块中。 信任已经配置分类的互联交换机的接口。 使用流量策略来有效地调节通信流的速率。 在所有接口上应用拥塞管理,并在传输VoIP通信流的接口上使用优先级排队。 在TCP流发生严重拥塞的接口上使用拥塞避免。,19.4.18,更多内容,上述未展开的内容,【作 者】 林闯 单志广 任丰原 【出版社】 清华大学出版社,【原书名】 Cisco Catalyst Qos:Quality of Service in Campus Networks 【原出版社】 Cisco Press 【作者】 (美)Michael Flannagan,Richard Froom,Kevin Turek 【译者】 尹敏 张卫 【出版社】 人民邮电出版社,更多内容: MPLS Traffic Engineering,上机,题目:多层交换的QoS实验 上机时间:5月5日 5-6节 网络0702 9-10节 网络0701 要求: 分组实验,4人/组。 2学时设备。,