• 文章搜索:
  • 目录

        • 分享到...

        • 新浪微博
        • 腾讯微博
        • 推荐到豆瓣 豆瓣空间
        • 分享到搜狐微博 搜狐微博
        • 分享到QQ空间 QQ空间
        • 分享到腾讯朋友 腾讯朋友
        • 网易微博分享 网易微博
        • 添加到百度搜藏 百度搜藏
        • 转贴到开心网 开心网
        • 转发好友 告诉聊友
    • 推荐
    • 打印
    • 收藏

    RSVP协议简介

    作者:  |  上传时间:2011-04-22  |  关键字:网络大爬虫4-QoS专题

    文/张志飞

    互联网是当今应用最广泛、发展最迅速的IP数据分组交换通信网络。基于IP的数据、音频和视频等业务以其低廉的费用、随处可接入性等优点越来越来引人注目,在电信业务中所占的比重也越来越大。网络的发展推动业务的发展,基于IP的多媒体通信异军突起,发展势头极为迅猛,随着多媒体技术的成熟以及计算能力的提高,已经能够在互联网上提供WWW浏览、IP电话、视频点播、视频会议、远程教学等多媒体业务。

    80年代中后期以来,在国际计算机网络研究领域广泛地开展了以支持实时多媒体通信传输为目标的新型网络体系结构。互联网工程任务组(IETF)在服务区分方面提出的第一个体系结构是集成服务体系结构,集成服务体系结构对传统互联网进行扩展以支持多媒体实时应用。它不仅可以提供无服务性能要求的传统尽力传输服务模式,还可以提供支持完全服务性能保证的服务模式。在服务层次上,它提供端到端的质量保证型服务或可控负载型服务。典型应用如远程教学、视频点播等交互式音频和视频应用。在实现层次上,它需要所有路由器在控制路径上处理每个流的信令消息并维护每个流的路径状态和资源预留状态,在数据路径上执行流的分类、调度和缓冲区管理。具体而言,集成服务依靠资源预留协议(RSVP)逐节点地建立或拆除每个流的资源预留软状态;依靠接纳控制决定链路或网络节点是否有足够的资源满足QoS要求;依靠传输控制将IP包分成传输流,并根据每个流的状态对分组的传输实施QoS路由、传输调度等控制。

    最早构思资源预留协议(RSVP)的是南加利弗尼亚大学(USC)信息科学院和施乐Palo Alto研究中心的研究人员。它提供了一种有效的资源预留方式,可以有效的描述应用程序对资源的需求。资源预留协议(RSVP)建立在IP协议之上,可以利用IP数据包传输RSVP消息;RSVP是一个单工协议,只在一个方向上预留资源;RSVP是一个面向客户端协议,由信宿负责资源预留;RSVP可以满足点到多点群通信中客户端异构的需求,每个客户端可以预订不同数量的资源,接收不同的数据流;RSVP还提供了动态适应成员关系变化、路由变化的能力。为了建立并维护分组数据传输通道中各个交换机的状态,RSVP建立了异构信宿树。简而言之,RSVP协议就是通过在中间结点传输预留信息以创建和维护预留状态,从而实现资源预留和释放。

    RSVP协议基本架构包含决策控制(Policy)、接纳控制(Admission)、分类控制器(Classifier)、分组调度器(Scheduler)与RSVP处理模块等几个主要成分。决策控制用来判断用户是否拥有资源预留的许可权;接纳控制则用来判断可用资源是否满足应用的需求,主要用来减少网络负荷;分类控制器用来决定数据分组的通信服务等级,主要用来实现分组过滤;分组调度器则根据服务等级进行优先级排序,主要用来实现资源配置以满足特定的QoS。当决策控制或接纳控制未能获得许可时,RSVP处理模块将产生预留错误消息并传送给收发端点;否则将由RSVP处理模块设定分类与调度控制器所需的通信服务质量参数。

    图1
    RSVP协议基本架构图

    流(Flow)是以单播或多播方式在信源和信宿间传输的数据码流,它为不同服务提供类似连接的逻辑通道。在RSVP协议中,发送端点简单地以多播方式传送数据;接收端点如欲接收数据,将由网络路由协议系统(IGMP协议等)负责形成在源宿间转发数据的路由,也就是由路由协议配合形成数据码流。流在RSVP协议中占有至关重要的位置,RSVP协议的所有操作几乎都是围绕流而进行的。

    RSVP支持四种基本的消息:资源预留请求消息、路径消息、错误和确认消息、拆链消息。

    资源预留请求消息(Reservation-Request Messages):一个资源预留请求消息由接收方主机向发送方主机发送。资源预留请求消息使用同数据报路由方向相反的方向传送,直至到达发送方主机。一个资源预留请求消息必须到达发送方主机,只有这样,发送方才能为传输的第一跳设置合适的控制参数;

    路径消息(Path Message):一个路径消息由发送方通过单播或组播路由向外发送。路径消息用于存储每个结点的路径状态(PS)。资源预留请求正是通过这些路径状态才能从相反方向回到发送方的;

    错误和确认消息(Error and Confirmation Messages):错误消息有两种类型:PathErr和ResvErr。PathErr由路径消息引起,并传送到发送者。ResvErr消息由预留消息引起,并传送到相关的接收者;

    拆链消息(Teardown Messages):RSVP拆链用于超时之前删除路径和预留状态。拆链消息有两种类型:PathTear和ResvTear。PathTear删除从消息发出的节点到所有的接收者路径上的预约状态,PathTear的路由和路径消息的路由严格一致。ResvTear删除从消息发出的节点到所有发送者路径上的预约状态,ResvTear的路由和预留消息的路由严格一致。ResvTear消息可以由一个接收者,或一个状态超时或预约被剥夺的节点产生。节点上状态的删除可能会引起本节点相关预约状态的更新。

    RSVP协议的基本工作原理如下:数据流的源主机为将要发送的数据流做出一个规范的描述Tspec,包括传输数据流所需要占用带宽的上限和下限,时间延迟和延迟抖动。主机中的RSVP信令模块则向目的主机发送Path消息,其中包括Tspec信息。在源主机到目的主机的下行线路上的每一个支持RSVP的路由器在收到Path消息时都在内部建立起链路状态标识。为使下游节点了解流的来源,上游节点将Path消息中Lasthop(上级节点)域改写为该节点的IP地址,Resv消息正是利用Path消息中Lasthop的信息实现逐级向上游节点预留资源。

    为建立起资源预留,目的端主机在上行线路上发送Resv消息,包括预留服务的种类及数据流描述符。当上行线路上的路由器收到Resv消息时,路由器上的许可控制器来验证是否有足够的资源来满足该请求,然后被送到策略控制器来判断用户是否有权预约资源。如果两个验证都成功,则分配给该请求资源,并把请求送给下一个节点,否则返回错误给提出请求的应用程序即发送错误信息至目的端主机;反之则向上行线路的下一跳路由器发送Resv消息。

    当上行线路上的最后一个路由器资源预留成功时,则向目的端主机发送确认信息。结束RSVP控制的基本工作原理与建立RSVP控制的基本工作原理类似。