欢迎来到通信人在线![用户登录] [免费注册]

关于提高端到端QoS的IntServ/RSVP机制和DiffServ机制

浏览:5290  来源:通信人在线  日期:2010-04-17
 

Internet上承载实时业务对IP技术来说是一大挑战。这是因为,Internet是基于IP技术的,而IP网络承载实时应用有两大缺陷。首先,IP技术本身是面向无连接的技术,IP网络提供的业务仅是“尽力而为”的业务,网络本身是不保证传输可靠性的。其次,TCP/IP协议体系中的TCPUDP协议虽然对于Internet的传统应用可以提供一定的容错和纠错功能,但对于实时业务来说,TCP的重传机制显得苍白无力。抛开TCP建链和确认的时延不说,重传引入的时延对于这些对时延极其敏感的实时业务来说是不能忍受的。而UDP本身就是不可靠的。因此,必须找到一个能够在Internet上提供良好的QoS保证的方法。 

多方组织和团体都提出了自己的解决方案,其中最为著名的是由因特网工程任务组(IETFInternet Engineering Task Force)的IntServ 小组和DiffServ小组提出的IntServ/RSVP机制和DiffServ机制。

1IntServ/RSVP机制

IntServ/RSVP综合服务体系结构模型是IETF IntServ小组于1994年提出的。其基本思想是一个应用要想获得某种服务质量,必须在向网络传送流量之前请求网络为其预留所需资源。这就要求会话开始之前,源端和目的端之间首先要建立一条链路。因此从某种意义上来说,IntServ/RSVP实际上是提供了一种类似于电路级(circuit level)的服务质量,理论上是可以实现完全的端到端QoS

该模型中定义了三种服务类型:确保业务(Garanteed ServiceGS,对带宽、时延、丢包率提供定量的质量保证)、受控负载业务(Controlled_load ServiceCS,提供一种网络在欠载情况下的服务)和尽力而为业务(Best EffortBE,基本没有质量保证)。对于容许型实时业务属于GS,非容许型实时业务属于CS

为了实现上面的服务,IntServ定义了4个功能部件,网络中的每个路由器都要实现这4个功能部件:数据包分类器(Packet Classifier)、接入控制器(Admission Control)、分组调度器(Packet Scheduler)RSVP 协议处理器(RSVP Process),其作用详见下表1

1功能部件的作用

RSVP协议采用信令方式完成资源的预留。发送主机首先向接收主机发送PATH路径信息,该消息中包含了描述发送数据流的通信量规约Tspec。路由器接到PATH消息后直接转发给有路由协议决定的下一跳。当接收主机收到PATH消息后以RESV预留消息作为回应。分组所需的服务质量类型及中间节点转发分组所需的优先级参数都包含在RESV消息中。网络的中间节点路由器就以该RESV为依据,为该分组分配链路带宽和缓冲空间,同时维护该分组的状态信息。为了适应网络拓扑路由及QoS要求的变化,RSVP请求及路由器维护的状态信息要做周期性的刷新。至此,预留通路就建立起来了。具有RSVP的结点收到分组,将分组分类,按照RSVP控制通路建立资源预留时的分组分类标准将该分组送到相应的输出队列中,并由转发机制按一定的优先级算法转发出去。

IntServ/RSVP模型是对提高InternetQoS性能做出的最初尝试。随着基于Web的业务的出现,IntServ/RSVP逐渐暴露出弊端。第一,IntServ模型最初是为了保证视频会议此类长生存期(long_lasting)的实时应用。对于一些随机的突发性实时业务流来说,如果对每一个短暂的会话都启动资源预留就有些得不偿失了。第二,InterServ是典型的per_flow的模型,要求网络中的每个节点维护与每个流相关的状态信息,因而不利于网络的扩容,可扩展性差。但是,对于接近主机处的网络边缘,流量相对较低,IntServ机制将会发挥其特长。

IntServ/RSVP是上个世纪末IETF借鉴ATM思路提出的,它对每个微流进行端到端的资源分配,虽然可以确保业务的QoS,但是由于微流数量极其庞大,使其不适用于大规模的IP网络,为此IETF又提出了具有良好可扩展性的DiffServ技术,能以很小的开销提供对个类业务不同优先级的处理。

2DiffServ机制

DiffServ区分服务模型很好地解决了IntServ扩展性问题但机理和IntServ截然不同。DiffServ采用边缘监管、分配和业务优先级的结合,为不同QoS要求的应用分配不同的服务优先级,从而满足不同业务的QoS要求。其基本思想是在网络入口处,根据用户和服务商(Internet Service ProviderISP)签订的服务等级协定(Service  Level AgreementSLA),为应用的分组分配一个区分服务码点(DiffServ Code PointDSCP)。该机制重新命名了IPv4报头的TOS域和IPv6包头的TC域,统一定义为DS域。DS被分割为一个六比特的DSCP字段和一个两比特的未用字段(Current UnusedCU)字段。每个DSCP值就对应了一种特定的服务等级。在网络的核心处,路由器就根据该DSCP值来决定分组的逐跳行为(Per Hop BehaviorPHB)。具有相同DSCP值的数据包将接收相同的处理,这些处理构成行为聚合(Behavior AggragateBA)。

一个DiffServ域由许多路由器组成。处于域边缘的路由器称之为边缘路由器(Edge RouterER),处于域核心的路由器称之为核心路由器(Core RouterCR)。DiffServ将针对单一流的复杂处理推向网络的边缘,由ER来完成数据包的分类和流量调节;CR不再维护节点的状态信息,仅完成相应的PHB操作。因此,对于这种core-stateless方式的模型来说,具有很好的扩展性和伸缩性。

DiffServ中也定义了三种业务类型:快速转发(Expedited ForwardingEF,提供类似专线和租用线的业务,DSCP推荐值为101110);保证转发(Assured ForwardingAF,提供比besteffort尽量好的业务,分四类,每类又定义了三种不同的丢弃优先级,共有12种推荐的码点);尽力而为业务(Best EffortBEDSCP推荐值为000000)。显然,对于实时业务应采用EF类型。

欲进一步了解DS三种业务类型的请进入

DiffServ良好的伸缩性和易于实现的特点使其成为网络核心处的首选机制。但是,由于IETF 仅仅提出了DiffServ在一个子网域内实现QoS的框架,对于大多数的交互式实时业务来说将无法保证绝对的端到端的QoS

Int-ServDiff-Serv各自定义的3种业务含义详见下表2

2Int-ServDiff-Serv各自定义的3种业务含义

3IntServ over DiffServ

为了最大限度地利用两种机制的互补特性,IETF 提出了IntServ over DiffServ机制,试图解决DiffServ的端到端QoS支持。该模型在网络的边缘处采用IntServ/RSVP机制,而在网络的核心处采用DiffServ机制。

对于这种集成模型,关键在于域交界处的处理。这又将包括两个方面:第一是控制面的资源预留,第二是数据面的服务类型映射即如何把一个IntServ服务类型的数据包分类映射为一个DiffServPHB

首先来看资源预留的过程。有两种模式,一种是静态的资源供给,一种是动态的资源供给。在静态模式下,DiffServ域对PATH消息和回传的RESV消息做透明传输。只是RESV消息到达ER1时,将触发接纳控制,以决定DS域能否接收指定的flowspec。在动态模式下,Diffserv域中的每个节点都是标准的IntServ/RSVP节点,这样DiffServ网络是一个能感知RSVP的网络。同时采取一些策略来决定哪些数据包由RSVP处理,哪些数据包由DiffServ处理。但到目前为止,动态的资源供给还没有一个完善的解决方案。

对于服务类型的映射,IntServ中的GS业务可以完全映射为DiffServ中的EF PHB。对于CLS业务可映射为AF PHB。但是由于在DiffServAF又分为四类每类又有三种不同的丢包率。所以,需要在BR1处进行分类。可以根据RESV中的flowspec提供的参数漏桶深b和数据流的令牌速率r相比b/r分为四类,每一类和AF类相对应。

百度云服务器
© 2004-2023 通信人在线 版权所有 备案号:粤ICP备06113876号 网站技术:做网站