论文部分内容阅读
随着移动互联网络的飞速发展,传统网络架构开始无法满足网络用户对高质量互联网络服务质量的要求。在此背景下,软件定义网络(Software Defined Network,SDN)被提了出来,用于针对现有网络的缺点对整个互联网络进行了架构上的改进。作为一种全新的网络架构,SDN是通过将网络设备中的数据平面与控制平面分离,使得控制器可以通过Openflow协议实现对基础网络设施中数据灵活调度。SDN控制层是SDN网络数据层和应用层之间的关键一层。其作用不仅在于对数据层进行灵活操作,还为网络中的应用层提供应用程序接口(API)。当前,现存的各种类型的控制器就是对这一平面的具体实现。而Openflow作为SDN最具代表性的协议,是实现SDN南向接口的核心技术之一,在SDN网络中规定了对控制层和数据层的通信方式和数据结构进行了规定。本文将研究重点集中于SDN网络中的控制器,重点做了一下几方面的工作。首先,对SDN的发展现状与Openflow协议以及当前SDN在数据中心、电信运营商以及数据中心的互联网络等方面的实际应用进行了调查研究,并深入分析了Openflow协议中流表的工作原理与Openflow消息的类型及其作用。而后,选择POX,Ryu和Floodlight三种常用的控制器,对其优缺点、特征、架构和性能进行了对比分析。在Linux系统中对三种控制器进行了实际部署,利用Mininet和Cbench软件工具对其性能进行测试和对比。其次,将研究重点放在了控制器的拓扑发现机制的改进上。通过对目前拓扑发现机制的缺陷分析,提出了改进的方向和具体方法,并进行了可行性分析。针对现有算法的缺点并制定了改进算法和方案。方案实现后,在不同拓扑结构下从CPU负载、发送数据包数目和占用带宽三个方面对改进前后的控制器性能进行了测试对比。最后,提出并实现了一种基于SDN的位于主机端内部的负载均衡的应用。通过研究分析负载均衡的方法,明确了方案要求,制定了设计原则,提出了负载均衡算法。利用GNS3网络仿真软件建立了实验测试平台,通过测试对比在网络接口数目不同时和网络接口容量是不一致的情况下的网络性能,完成了负载均衡效果的检验。试验表明,所提出的负载均衡方案时可行的,并表现出了良好的性能。