论文部分内容阅读
随着互联网的发展,互联网正暴露出越来越多的问题。由于TCP/IP网络体系结构设计之初的固有缺陷,修补现行网络体系结构无法从根本上解决问题,甚至会产生更多的新问题。因此,向下一代互联网演进在业界已经达成共识。在此背景下,如何在现有互联网环境下进行下一代网络的研究已成为当今网络界面临的一个重要课题。OpenFlow是斯坦福大学的clean slate项目的最新研究成果,提供了在真实网络环境中部署、测试创新的网络体系和协议的平台。与传统的网络架构不同,OpenFlow提供了一种新型的将控制与转发分离的架构。OpenFlow交换机的流表负责转发功能,外部的OpenFlow控制器提供网络的控制和管理功能。通过编写OpenFlow控制器应用程序就能部署验证新的协议、算法和研究成果,其优势还在于不仅可以处理现有的互联网协议和服务,而且能够在不影响现有互联网协议和服务运行的情况下部署、测试创新的网络体系和协议。总之,OpenFlow提供了一个可控、可编程、可定制、可扩展的网络研究平台,对网络技术的创新性研究起到了推波助澜的作用。本文研究OpenFlow网络的路由技术,设计能够提供OpenFLow网络路由功能的OFRP(OpenFlow Routing Protocol)路由协议,并在OpenFlow平台下完成OFRP路由组件的开发和测试。首先,研究OpenFlow网络的拓扑结构,发现任何OpenFlow网络可以归结为两种基本类型:单控制器网络和多控制器网络。其中,多控制器网络实际上是多个单控制器网络的组合。因此,研究OpenFlow网络的路由问题就转化为研究这两种OpenFlow网络的路由技术。然后,考虑到单控制器网络中所有的节点都受控于同一个控制器,如果OpenFlow网络规模较大,控制器很容易成为性能瓶颈。因此,在设计单控制器网络时,通常其网络规模比较小。针对单控制器网络规模小、集中控制的特点,设计集中式的OFRP_SCN路由协议。OFRP_SCN路由协议实现网络拓扑信息的动态感知、区域内路由表的生成与维护、流表的下发与维护、数据包路由等功能。接着,鉴于单控制器网络是OpenFlow网络的基本网络单元,将多控制器网络根据网络基本单元划分为单控制器区域。多控制器网络的路由就分为两个层次:单控制器区域内的路由和单控制器区域之间的路由。单控制器区域内的路由问题就是解决单控制器网络的路由。单控制器区域间路由的关键问题在于如何交换彼此的路由信息,OFRP_MCN路由协议通过在控制器之间交换路由信息分组来解决。针对多控制器网络规模大、控制器多的特点,OFRP_MCN路由协议设计成分布式的。OFRP_MCN路由协议实现单控制器区域间路由信息的交换、区域间路由表的生成与维护、流表的下发与维护、区域间数据包路由等功能。最后,在OpenFlow平台下完成ARP组件、ICMP组件、链路信息收集组件、OFRP路由组件的开发和测试。ARP组件提供解析ARP数据包的功能。ICMP组件提供解析ICMP数据包的功能,使得在OpenFlow网络中能够使用ping命令测试网络的连通性。链路信息收集组件使用LLDP协议收集OpenFlow网络中的链路信息。OFRP组件依赖于链路信息收集组件实现OpenFlow网络的路由功能。实验证明OFRP路由组件能较好地提供OpenFlow网络的路由功能。本文实现的OFRP路由协议为现有的OpenFlow平台添加了具有OpenFlow网络路由功能的组件。后续的研究人员若想获得OpenFlow网络的路由功能,可以直接调用该组件。对于OpenFlow网络路由更进一步的研究也可以在此基础上进行。