资源预留协议ResourceReSerVationProtocol(RSVP)RSVP是一个IP信令协议,用以在主机和路由器中为每个流各自建立和维护状态表;(其作用就是预留资源)面向组播,单播也可为多点到多点的应用实现资源预留能适应组成员或路由的变化单播作为特例单向预留预留由发送方到接收方的传输资源双向的流需要在两个方向上进行预留由接收方发起和维护预留在中间路由器中维护“软状态”(软状态softstate--只在有限时间内有效,需及时更新,否则失效)可以有不同的预留“风格”(style)--用户可以指定如何将群的预留聚类支持IPv4(用IP包头中的ToS字段)和IPv6(流标签字段)ReSerVationProtocol(RSVP)流的发送方用现有的路由协议,以组播方式发送描述该数据流特性的“路径(PATH)消息”(建立路径)每一路由器存储前一路由器的地址,并在协议数据包的“最后一跳字段(lasthopfield)”插入自己的地址,再转发出去,以便为反向传输建立好路径;;R1R2R3SRxPATHRESVPATHRESVPATHRESVPATHRESV???接收器单播预留(RESV)消息进行资源预留(可以要求发回确认)(反向的预留请求沿原路返回)每个路由器执行准入控制和政策控制,判决该请求能否满足,如果拒绝,发回”路径错(PathErr)消息;在预留操作逐步向数据流的源端反向推进过程中,预留要求可能被修改或合并;资源预留过程流描述预留请求ReservationRequest中对数据流的描述流规格Flowspec要求的QoS服务类别,Rspec(reserve),Tspec(traffic)用以在节点的调度器中设置参数过滤器规格源地址,源端口用以识别为哪些数据包预留资源;RSVP处理政策控制准入控制分组调度-分类-应用RSVP处理政策控制准入控制调度分类路由处理DataDataDataRSVP主机路由器RSVP具有RSVP功能的主机和路由器的结构应用向RSVP处理要求QoSRSVP向路由器发预留请求消息“政策控制”决定该应用是否被允许提出请求“准入控制”判决资源是否够用;设置分类器和调度器路由器对会话的数据包的处理分组调度器提供QoS提供尽力而为服务一个会话的数据包通过过滤的数据包其他数据包过滤器规格流规格RSVP的预留请求包含以下内容:流规格Flowspec:流的通信量要求和性能要求RSVP携带流规格,将其安装在路径上的路由器中流规格激起准入控制和设置调度器过滤器规格Filterspec:指定哪些数据包可以使用预留的资源“通配过滤“Wildcardfilter:为会话中的所有发送器预留“固定过滤”Fixedfilter:为每个发送器单独预留”动态过滤“Dynamicfilter:为一个特定的发送器集合预留RSVP仅仅携带而不解释流规格和过滤器规格RSVPReservationsRequestR1R2R3Rx1PathPathPathPathResvResvResvResvR4Rx3PathResvRx2PathResvPathResvS预留的合并在路径分叉点以前的资源是分叉点以下各接收器共享的节点上的RSVP进程将把资源请求合并到已经预留的资源中去;资源预留请求的转发不超过合并点RSVP协议机制两种消息类型Resv预留请求由组播群的接收方发起预留向上游传播在适当地方合并在沿途路由器中产生“软状态”到达发送方路径Path提供上行路由信息由发送方主机发出通过生成树传送到所有目的地RSVP软状态预留只在一段时间内有效:“软”需要在超时前通过再发PATH和RESV更新预留状态,超时不更新,预留取消RSVP直接运行在IP上,type=46消息传送不可靠更新周期在0.5R,1.5R间随机选取(R通常取30秒),以避免同时更新;PathTear和ResvTear消息删除预留MultiprotocolLabelSwitching(MPLS)多协议标记交换什么是多协议标签交换(MPLS)?MultiprotocolLabelSwitching(MPLS)MPLS网络需要一系列协议的支持边缘路由器执行最长匹配的路由查找,并为数据包指配标签在MPLS网络内部,数据包沿”标签交换路径LSP(Label-SwitchedPath)用标签交换技术进行转发LSP(标签交换路径)可以在多种第二层链路上生成,如:ATM,Ethernet,PPP,framerelayLSPs可以支持多种第三层协议IPv4,IPv6等IPL1IPL2IPL3IPIPLERLERLSRLSRLSR:标记交换路由器LSP:标记交换路径LER:标记交换边界路由器为何MPLS?可以实现快速转发(第二层交换比第三层路由快得多,常可用硬件实现)第三层IP的最长前缀匹配费时;(虽然现在已经有所改善)MPLS提供新的能力支持QoS流量工程(Trafficengineering):为“集合流”指配不同的路径以满足不同的要求虚拟专网(Virtualprivatenetworks-VPR):通过在用户节点间建立隧道提供虚拟专网(VPR)服务。企业内部网的通信流利用隧道机制,透明地通过外部IP网络;利用外部公网构建内部专网;在外部公网中与其他通信流分开;性能有保证,安全有保证;支持多协议:MPLS可以用在不同的网络技术构建的网络上:如:第三层IP;第二层ATM、FR、Ethernet等MPLS在面向连接的基础上提供QoS支持MPLS如何工作?通信流区分成若干转发等价类(FEC);为每个FEC按路由协议建立一条转发路径(称为标签交换路径LSP)并根据标签分配协议LDP给数据包分配标签;一个FEC中的通信流沿同一“标签交换路径LSP”经过一个MPLS域数据包用只有本地意义的标签识别;此后,在标签交换路由器LSR中,打上标签的数据包依据标签进行转发,不再按IP地址查找路由表;(一次路由随后转发)LSR将输入标签换成输出标签,所以标签只有本地意义;每个流都必须要指配到一个FEC中路由协议根据网络拓扑和当前资源情况为FEC生成LSPMPLSOperationDiagram交换机构转发表LabeledpacketsLabeledpacketsRoutingtablesRoutingandsignalingRoutingandsignalingRoutingandsignaling控制部分转发部分SeparationofForwardng&Control标签交换路由器内部转发与控制分离在MPLS之前:转发和控制交织在一起CIDR(control)要求转发需作最长前缀匹配MPLS:转发与控制分离“一次路由,随后交换”,控制部分决定LSP路由和标签分发转发用标签交换控制与转发可以独立演进标签交换路径LSP的路由选择需为每个转发等价类选择一条LSP如何选路?其一:标签交换路由器独立选取下一跳路由用常规的路由协议,如OSPF不支持流量工程或政策路由其二:显式指定由入口(ingress)LSR或出口(egress)LSR为某个转发等价类指定LSP上的几个或全部标签交换路由器或通过配置选定LSP所经过的路由器,也可动态配置MPLS网络如何处理数据包:数据包通过边缘LSR进入MPLS域,处理后知其QoS要求LSR将数据包指配到某一转发等价类FEC,同时就决定了标签交换路径LSP可能需要设置新的LSP贴上标签沿LSP转发数据包:域内标签交换路器收到数据包,去除输入标签,贴上输出标签,转发;出口边缘路由器去除标签,根据IP包头IP地址转发;说明:转发等价类FEC可由下列参数判决.源/目的IP地址或网络IP地址;端口号;IP包头中载荷的协议识别码区分服务的码点;IPv6的流标签;转发时按标签查找转发表;标签映射为下一跳;对某一FEC可以在标签交换路由器中规定其所对应的逐跳行为PHB,以提供QoS;同一对端点间的数据包可能属于不同的FEC;标签堆栈:数据包可以携带几个标签--堆栈方式堆栈操作:LIFO后进先出按栈顶的标签进行处理任何LSR可以压入或弹出标签允许在部分路由上将几个标签合并为一个;例如:ATM虚路径中的虚信道;所有企业的通信流合并到一条LSP上供接入服务器处理;减小表格转发等价类FECFEC:以相同方式转发的数据包集合同一转发路径,相同的转发处理同一FEC中的数据包有相同的下一跳路由器同一FEC中的数据包可以有不同的网络层包头每个FEC在转发表中有单独一项粗颗粒FEC:如:目的网络地址与某一给定地址前缀匹配的所有数据包细颗粒FEC:运行在一对计算机间的某特定应用的数据包IP2L1IP2IP2LERLERLSRLSRL2IP2L3IP2L1IP1L2IP1L3IP1IP1IP1IP1IP2VPI/VCIATM信元中MPLSheaderLabelSExpTTL20bits3bits1bit8bitsPPPorLANframeLayer2headerLayer3headerMPLS的标签(Labels)放在何处?ATM信元头的VPT/VCI;FR头部的DLCI;PPP或LAN帧中位于第二层数据包头与第三层数据包头之间,长32bits20-bit标签+1-bit堆栈指示+8-bitTTL(寿命)3-bit“试验experimental”字段(可用于指定8种区分服务PHB)