QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力, 是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。 在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,比如Web应用,或E-mail设置等。但是对关键应用和多媒体应用就十分必要。当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。在RFC 3644上有对QoS的说明。
通常QoS提供以下三种服务模型:
Best-Effort service(尽力而为服务模型)
Integrated service(综合服务模型,简称Int-Serv)
Differentiated service(区分服务模型,简称Diff-Serv)
1. Best-Effort服务模型是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对时延、可靠性等性能不提供任何保证。
Best-Effort服务模型是网络的缺省服务模型,通过FIFO(first in first out 先入先出)队列来实现。它适用于绝大多数网络应用,如FTP、E-Mail等。
2. Int-Serv服务模型Int-Serv是一个综合服务模型。该模型使用资源预留协议(RSVP),RSVP运行在从源端到目的端的每个设备上,以防止其消耗资源过多。这种体系能够明确区分并保证每一个业务流的服务质量,为网络提供最细粒度化的服务质量区分。
但是,Inter-Serv模型对设备的要求很高,当网络中的数据流数量很大时,设备的存储和处理能力会遇到很大的压力。Inter-Serv模型可扩展性很差,难以在Internet核心网络实施。
3. Diff-Serv服务模型Diff-Serv是一个多服务模型,它可以满足不同的QoS需求。与Int-Serv不同,它不需要通知网络为每个业务预留资源。区分服务实现简单,扩展性较好。
QoS的英文全称为"Quality of Service",中文名为"服务质量"。QoS是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。有QoS的网络能够识别哪种应用产生哪种数据包。没有分类,网络就不能确定对特殊数据包要进行的处理。所有应用都会在数据包上留下可以用来识别源应用的标识。分类就是检查这些标识,识别数据包是由哪个应用产生的。
所谓服务质量QoS,是指服务性能的聚集效应,它决定用户对特定服务的满意程度。需要指出两点:
这种主观性的定义把服务质量与用户所感知的服务联系在一起。 从网络提供的角度来说, 可以通过控制一些具体的、可度量的、可量化的参数来提供服务质量,如传输延迟、抖动、丢失率、带宽要求、吞吐量等指标。
服务质量不单单是网络的事情,而是应用程序、用户终端、网络、服务器各部分的综合效应。例如,一个用于远程视频播放的端到端活动,就可能由以下几部分组成:从媒体服务器获得视频,在源地进行压缩,通过Internet将其传送到目的地,在目的地进行解压缩,并根据播放窗口的大小对视频按比例进行调整,最后在视频窗口播放。在端到端路径上,任何一个环节不符合QoS的要求,都会影响播放的完整性。
服务质量控制
QoS的英文全称为"Quality of Service",中文名为"服务质量"。QoS是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。
在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,比如Web应用,或E-mail设置等。但是对关键应用和多媒体应用就十分必要。当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。
QoS具有如下功能:
1.分类
分类是指具有QoS的网络能够识别哪种应用产生哪种数据包。没有分类,网络就不能确定对特殊数据包要进行的处理。所有应用都会在数据包上留下可以用来识别源应用的标识。分类就是检查这些标识,识别数据包是由哪个应用产生的。以下是4种常见的分类方法。
(1)协议 有些协议非常“健谈”,只要它们存在就会导致业务延迟,因此根据协议对数据包进行识别和优先级处理可以降低延迟。应用可以通过它们的EtherType进行识别。譬如,AppleTalk协议采用0x809B,IPX使用0x8137。根据协议进行优先级处理是控制或阻止少数较老设备所使用的“健谈”协议的一种强有力方法。
(2)TCP和UDP端口号码 许多应用都采用一些TCP或UDP端口进行通信,如 HTTP采用TCP端口80。通过检查IP数据包的端口号码,智能网络可以确定数据包是由哪类应用产生的,这种方法也称为第四层交换,因为TCP和UDP都位于OSI模型的第四层。
(3)源IP地址 许多应用都是通过其源IP地址进行识别的。由于服务器有时是专门针对单一应用而配置的,如电子邮件服务器,所以分析数据包的源IP地址可以识别该数据包是由什么应用产生的。当识别交换机与应用服务器不直接相连,而且许多不同服务器的数据流都到达该交换机时,这种方法就非常有用。
(4)物理端口号码 与源IP地址类似,物理端口号码可以指示哪个服务器正在发送数据。这种方法取决于交换机物理端口和应用服务器的映射关系。虽然这是最简单的分类形式,但是它依赖于直接与该交换机连接的服务器。
2.标注
在识别数据包之后,要对它进行标注,这样其他网络设备才能方便地识别这种数据。由于分类可能非常复杂,因此最好只进行一次。识别应用之后就必须对其数据包进行标记处理,以便确保网络上的交换机或路由器可以对该应用进行优先级处理。通过采纳标注数据的两种行业标准,即IEEE 802.1p或差异化服务编码点(DSCP),就可以确保多厂商网络设备能够对该业务进行优先级处理。
在选择交换机或路由器等产品时,一定要确保它可以识别两种标记方案。虽然DSCP可以替换在局域网环境下主导的标注方案IEEE 802.1p,但是与IEEE 802.1p相比,实施DSCP有一定的局限性。在一定时期内,与IEEE 802.1p 设备的兼容性将十分重要。作为一种过渡机制,应选择可以从一种方案向另一种方案转换的交换机。
3.优先级设置
一旦网络可以区分电话通话和网上浏览,优先级处理就可以确保进行Internet上大型下载的同时不中断电话通话。为了确保准确的优先级处理,所有业务量都必须在网络骨干内进行识别。在工作站终端进行的数据优先级处理可能会因人为的差错或恶意的破坏而出现问题。黑客可以有意地将普通数据标注为高优先级,窃取重要商业应用的带宽,导致商业应用的失效。这种情况称为拒绝服务攻击。通过分析进入网络的所有业务量,可以检查安全攻击,并且在它们导致任何危害之前及时阻止。
在局域网交换机中,多种业务队列允许数据包优先级存在。较高优先级的业务可以在不受较低优先级业务的影响下通过交换机,减少对诸如话音或视频等对时间敏感业务的延迟事故。
为了提供优先级,交换机的每个端口必须有至少2个队列。虽然每个端口有更多队列可以提供更为精细的优先级选择,但是在局域网环境中,每个端口需要4个以上队列的可能性不大。当每个数据包到达交换机时,都要根据其优先级别分配到适当的队列,然后该交换机再从每个队列转发数据包。该交换机通过其排队机制确定下一步要服务的队列。有以下2种排队方式。
(1)严格优先队列(SPQ) 这是一种最简单的排队方式,它首先为最高优先级的队列进行服务,直到该队列为空,然后为下一个次高优先级队列服务,依此类推。这种方法的优势是高优先级业务总是在低优先级业务之前处理。但是,低优先级业务有可能被高优先级业务完全阻塞。
(2)加权循环(WRR) 这种方法为所有业务队列服务,并且将优先权分配给较高优先级队列。在大多数情况下,相对低优先级,WRR将首先处理高优先级,但是当高优先级业务很多时,较低优先级的业务并没有被完全阻塞。