论文部分内容阅读
随着网络规模的快速增长,数据中心网络也大幅度扩张,由于传统数据中心网络具有可控性差、网络设备封闭等问题,研究者们考虑将软件定义网络(Software Defined Network,SDN)技术应用于数据中心网络。如何规避SDN集中的控制方式带来的一些问题,并且充分发挥SDN在流量调度方面的优势,成为研究的关键。本文从链路和交换机两个方向切入研究适用于当前数据中心网络的负载均衡策略,主要内容如下:1.针对传统方法调度大象流时会造成数据中心网络不稳定以及链路拥塞等问题提出了一种基于改进的人工蜂群算法的负载均衡算法(Load balancing algorithm based on improved artificial bee colony algorithm,IALB)。IALB算法基于人工蜂群算法设计,定义了链路稳定度的概念,基于链路实时剩余带宽、大流数目以及链路稳定度重定义人工蜂群算法的适应度函数f(xi),通过对人工蜂群算法的这种改进得到大象流的近似最优调度方案。仿真实验结果表明,本文提出的IALB算法在网络吞吐量与链路利用率性能指标上优于ECMP、Hedera和PureSDN算法,在随机模式(Random)和交错模式(Staggered)两种流量模式下都有明显的提升。2.针对现有算法无法充分地利用SDN网络中的流表资源和控制器资源的问题,提出了一种基于流表资源和控制器资源的负载均衡算法(Load balancing algorithm based on flow table resource and controller resource,FCLB)。FCLB算法使用流表项的无效时间来表示流表资源消耗,使用packet-in消息数量表示控制器资源消耗,并定义了资源偏好因子的概念,基于资源偏好因子建立了 idletimeout与资源消耗的关系式,算法通过动态设置idletimeout的值实现流表资源和控制器资源的均衡利用。仿真实验结果表明,FCLB算法在流表资源利用率和数据流命中率方面都优于原始方案,可见FCLB算法能够更好的利用流表资源和控制器资源,进而提高网络吞吐量。