论文部分内容阅读
SDN (Software Defined network, SDN)网络是近些年新兴的网络架构,它实现了网络控制和数据转发功能的分离,分成控制平面和转发平面,这两个平面构成了开放可编程的网络架构体系。控制平面通过OpenFlow南向接口获取网络拓扑和状态信息,制定相关路由策略实现对转发平面的控制管理,同时抽象底层网络用于上层应用的数据获取。SDN网络由于控制器的瓶颈,注定了单个SDN网络的规模不会太大。数据显示,SDN控制器最多可以支持1000个交换机和250000个主机,因此需要一种扩展性更强的网络架构模式,即控制器水平交互方式。控制器水平交互方式需要将SDN网络划分为多个子SDN网络,在本文中又称为SDN区域,通过每个区域的控制器交互完成基本的域间路由。为了保证运行在分布式计算节点的控制器的数据同步和共享,本文采用分布式协调模块ZooKeeper完成控制器的状态信息同步和域间路径信息一致性保证,实现域间路由。通过基于跳数的最短路径完成域间路由有着明显的问题,难以满足复杂的流量特性,造成网络网络部分资源利用率不均衡,影响服务质量。通过业务量矩阵估计可以实现网络地负载均衡和路由算法地优化,因此业界针对业务量矩阵估计也有多种实现,本文比较SDN网络业务量矩阵的非直接测量方式和直接测量方式的优缺点,并结合业界一些实现提出了基于直接测量方式的一种启发式算法,相对精确地完成业务量矩阵测量。本文最终通过所有区域控制器同时维护统一的全局拓扑,并结合业务量矩阵测量和区域内虚连接的带宽测量,虚拟化更为细粒度的虚拟全局拓扑,由源端控制器完成全局的最短路径计算,并通过流路径共享使其他控制器协作完成域间路径的路由,下发相应流表项。本文第一章介绍了控制器水平架构下的相关技术,第二章结合ZooKeeper实现基本的域间路由,第三章介绍了业务量矩阵测量的几种方式,第四章则实现区域间不完备信息的路由,第五章搭建仿真平台,完成相关数据测量和对比,最后则针对全文总结并计划下一步工作方向。