论文部分内容阅读
当今社会,互联网已成为人们生活中不可或缺的部分,互联网规模越来越大,相关技术也日益复杂。在当今高度复杂的网络环境下,网络上数据传输的安全性和网络的可扩展性是人们高度关注的问题。对于前者,VPN——虚拟专用网络一直是一种被广泛采用的解决方案,而在众多的VPN技术中,MPLS VPN由于其自身具有的优势,得到了大范围的部署,并且被认为是VPN技术的发展方向;对于后者,SDN的出现为网络的发展指明了一个新的方向,SDN是一种更加灵活的网络体系结构,它的主要思想是将网络的数据转发平面与控制平面分离开来,这不仅能够提高网络的扩展性,同时还带来了很多其它方面的优势。本文旨在在SDN架构下实现VPN服务,并选择采用MPLS来实现三层VPN。在SDN架构下,数据转发平面上只做简单的转发操作,而所有的协议都在SDN控制器上以应用的形式进行实现,MPLS与SDN的结合如今已经吸引了一些研究者。相比传统的MPLS网络,基于SDN架构的MPLS摒弃了复杂的分布式路由协议,在这种架构下,实现各种传统MPLS网络服务所需要的代码量大大减少,而且使得网络具有扩展性强、易维护、可编程、开放的特点,并使得在这一基础上开发MPLS相关的服务和应用更简单。本文讨论了采用SDN架构给MPLS网络带来的特点和优势,同时详细分析了前人在早期的NOX控制器上实现的MPLS TE网络的架构,对各模块进行了划分和详细解析,并基于这些工作开发了MPLS L3VPN应用。本文实现的MPLS VPN支持多种MPLS TE特性,例如自动调整带宽、针对不同类型流量实行有差别的服务等功能。相比传统的VPN,实现基于SDN架构的MPLS VPN更加简单,所需的代码量大大减少,易于配置,并便于在其上进行扩展。本文首先简要地介绍了课题的背景与任务,接着对本课题的相关理论知识做了详细说明。然后着重阐述了基于SDN架构的MPLS网络的特点和优势,并对基于NOX控制器上的MPLS TE网络架构进行了详细分析。接下来按功能模块详细介绍了MPLS VPN应用的设计和实现,最后搭建了环境对MPLS VPN应用的各个特性进行了测试。