论文部分内容阅读
MPLS概念的提出最初的为了提升转发效率,但是随着IP转发领域新技术的产生,比如硬件转发和网络处理器,MPLS的速度优势无法体现。随着网络中新的应用需求的出现,依靠纯IP转发难以满足实际需求,但如果利用MPLS灵活的拓展性,并结合其它技术,那么可以很好的满足新应用的需求。网络电视、视频会议等应用需要一种点到多点的数据传输方式,并且需要为不同级别的用户提供不同等级的服务。在现有技术下,依靠RSVP协议和MPLS技术建立的P2P隧道可以实现这些需求,但是会使大量的重复数据报文在网络中传播,严重浪费网络资源,降低转发效率。因此本文设计并实现了基于RSVP协议的P2MP功能来解决这些问题。在基于RSVP协议的P2MP功能实现过程中,针对隧道建立的问题,采用RSVP协议中Path和Resv消息的交互来完成隧道建立,在头节点中,根据目的地址来构建Path消息,然后根据CSPF计算的路径向下游发送,当头节点收到Resv消息后完成对隧道的建立;针对建立隧道过程中,CRLSP最佳路径选择问题,采用了CSPF算法去计算最佳路径,通过该算法建立的LSP不仅需要考虑最低代价,同时,还必须满足隧道对链路带宽、亲和属性等属性的约束性条件;针对路径重优化的问题,会定时的感知网络中的拓扑变化,重新对目的地址进行CSPF路径计算,当得知到达目的地址的最佳路径发生变化时,基于Make-before-break机制对转发数据流量的隧道进行无缝切换,先将数据流量切换至新的隧道,然后等到流量在旧的隧道中传输完成时对旧隧道进行移除;针对隧道稳定性问题,采用FRR技术对关键设备和关键链路进行保护,当发生故障时,可以及时的切换到提前准备好的FRR备用隧道上,尽可能减少数据流量的丢失,同时,为了尽快的检测到故障的发生,设计和实现了hello机制来检测链路故障,通过配置hello检测功能,能够大大提高故障检测速度,加快报文的收敛。本论文根据上述方案,设计并实现了基于RSVP协议的P2MP功能。该功能的实现可以通过HCL模拟器来验证,HCL模拟器具有可编程性,我们把带有本文设计和实现的基于RSVP协议的P2MP功能的debug版本文件放在HCL version文件夹下,这样HCL模拟器就可以支持P2MP功能。为了对功能点进行验证,本文在HCL虚拟平台上使用多台simware虚拟机来模拟P2MP的组网环境并进行测试,分别进行了P2MP隧道建立测试、FRR保护测试、基于make-before-break的路径重优化测试以及hello检测测试,测试结果达到预期,进一步证实了基于RSVP协议的P2MP功能的可行性。