软件定义网络中基于拍卖理论的多控制器负载均衡研究
【摘要】:软件定义网络(Software Defined Network,SDN)的提出,满足了网络设备和数据规模的急剧增长的需求。伴随着网络规模爆炸式的增长,应用程序的不断迭代,SDN控制平面承载越来越重的负荷。由于控制器过载导致的负载不均衡问题时有发生,控制平面存在的瓶颈问题也愈发严重,这都严重影响SDN网络性能。所以如何分配好控制器资源,最大程度地提高网络性能,已经成为研究控制器的重点问题。本文针对SDN多控制器负载不均衡问题,提出两种解决方案:在单控制器过载的情况,本着最小化网络平均时延和网络开销的原则,提出基于逆向拍卖的SDN多控制器负载均衡算法SMLBRA。当网络中的多个控制器同时过载时,SMLBRA算法会降低交换机迁移效率并增加网络开销成本,因此提出一种基于双向拍卖的SDN多控制器负载均衡算法SMLBDA。(1)设计和实现基于逆向拍卖的SDN多控制器负载均衡算法(SDN multi-controller load balancing algorithm based on reverse auction,SMLBRA)。首先,对SMLBRA算法进行模型设计,将逆向拍卖理论与SDN多控制器架构相结合建立“一对多”逆向拍卖模型,模型中将过载的单控制器视为买方,轻载的多个控制器视为卖方,拍卖师由负载监控模块、负载整合模块和负载决策模块三个模块构成。其次,对SMLBRA算法进行详细算法分析与设计,负载决策模块中拍卖师根据卖方竞价选出合适的卖方作为目标控制器,并结合模拟退火算法以最小化平均时延和网络开销为优化目标,求解得到控制器与交换机的重映射,使控制器资源得到合理分配。最后进行实验仿真,从控制器资源利用率、系统响应时延和负载迁移完成时间等方面,将SMLBRA算法与STATIC、ECSM和SMDM算法进行实验对比分析。(2)设计和实现基于双向拍卖的SDN多控制器负载均衡算法(SDN multi-controller load balancing algorithm based on double auction,SMLBDA)。首先根据“多对多”控制器过载问题构建基于双向拍卖的SDN多控制器模型,由买方——过载控制器、卖方——轻载控制器和拍卖师构成。然后将SMLBDA算法分为多控制器资源分配阶段和交换机迁移阶段两个阶段。其中,在多控制器资源分配阶段,模型中的负载监控模块周期性地对控制器负载状况进行监控,并根据其过载程度进行排序同时提出竞价,过载程度越高竞价越高,同理轻载控制器根据其剩余资源提出售价。结合遗传算法以网络效益最大化为目标,使过载控制器与目标控制器对应匹配。在交换机迁移阶段,通过最小化交换机迁移对网络性能的影响完成交换机迁移过程,从而达到控制平面负载均衡。最后通过对算法的实验分析,将SMLBDA算法与PASMM、DALB算法进行对比,从控制器资源利用率、负载均衡度和负载均衡时间等方面验证算法有效性。通过Mininet仿真实验表明,本文提出的SMLBRA算法在降低控制器资源利用率和响应时延方面性能有所提升,SMLBDA算法在降低负载均衡时间等方面性能有所提升。