基于蚁群算法的SDN负载均衡毕业论文
2021-04-21 21:23:53
摘 要
目前大数据、云计算时代的到来,使得我们对网络的性能有了更高的要求。传统网络架构开始暴露出了越来越多的问题,例如可扩展性差、负载不均衡等。软件定义网络(SDN)的出现成功地解决了这些棘手的问题,它将控制层和数据层分离,采用对网络设备全局控制的思想,增加可编程性的核心特征,开发者们可以根据用户需求和网络拓扑改变路由策略,尽量使链路负载均衡优化,极大地提高了网络应用的服务质量。因为网络的链路负载是否均衡将直接影响到整个网络的性能和稳定性,因此研究SDN负载均衡具有理论和实际应用意义。
本文尝试将具有正反馈性和自组织性的蚁群算法引入到新兴网络架构中,具体在控制器中的链路发现模块、拓扑管理模块、网络状态测量模块、路由计算模块和转发模块五个模块中实现。通过链路发现模块获取网络拓扑信息和网络状态测量模块收集网络状态信息,控制器中的路由计算模块计算规划数据流量的转发路径,然后由转发模块将其下发给交换机,交换机执行相应的数据转发操作,从而实现链路的负载均衡。在具体实现过程中,采用mininet和floodlight分别模拟网络数据转发层和控制层来搭建起SDN环境,在mininet中构建自定义网络拓扑,通过实验仿真测量客户端到服务机传送的流量所用时延和丢包率等参数。模拟分析结果表明,与Dijkstra算法相比,蚁群算法在SDN负载均衡上具有明显的优势。
关键词:软件定义网络;蚁群算法;floodlight
Abstract
With the arrival of the era of big data and cloud computing, we have higher requirements on the performance of the network. Traditional network architectures have begun to expose more and more problems, such as poor scalability and load imbalance. The emergence of Software-Defined Networking (SDN) has successfully solved these thorny problems.t will separate control and data planes, using the global network device control thought, increasing core programmability features. Developers can change routing policies based on user requirements and network topology to optimize link load balancing, which greatly improves the quality of service for network applications.Because network link load balancing will directly affect the performance and stability of the entire network, it is of theoretical and practical significance to study SDN load balancing.
In this paper, we try to introduce ant colony algorithms with positive feedback and self-organization to the emerging network architecture. This requires the link discovery module, topology management module, network state measurement module, route calculation module and forwarding module are implemented in five modules in the controller. The network topology information is acquired by the link discovery module and the network state information is collected by the network state measurement module. The route calculation module in the controller calculates the forwarding path of the planned data traffic, which is then forwarded by the forwarding module to the switch and the switch forwards the data. This achieves load balancing of links.In the specific implementation process,, we use mininet and floodlight to simulate the network data forwarding layer and control layer to set up the SDN environment. A custom network topology is built in the mininet. The parameters such as time delay and packet loss ratio are measured by experimental simulation.Simulation analysis results show that the ant colony algorithm has obvious advantages in SDN load balancing compared to Dijkstra's algorithm.
Key Words:Software-Defined Networking; Ant Colony Algorithm; floodlight
目 录
第1章 绪论 1
1.1 研究背景与意义 1
1.2 国内外研究现状 2
1.3 论文主要内容及章节安排 3
第2章 蚁群算法 5
2.1 蚁群算法介绍 5
2.2蚁群算法的基本流程 5
2.3本章小结 7
第3章 基于蚁群算法SDN负载均衡方案 8
3.1 Openflow 8
3.1.1 Openflow交换机 8
3.1.2 Openflow控制器 9
3.2 设计框架 10
3.3 路由策略 11
3.3.1 链路发现模块 11
3.3.2 拓扑管理模块 12
3.3.3 网络状态测量模块 12
3.3.4 路由计算模块 13
3.3.5 转发模块 15
3.4 本章小结 17
第4章 基于蚁群算法SDN负载均衡的仿真分析 18
4.1 基础实验环境 18
4.2 mininet及其环境搭建 19
4.2.1 mininet的相关介绍 19
4.2.2 mininet环境搭建 19
4.3 floodlight及其环境搭建 21
4.3.1 floodlight的相关介绍 21
4.3.2 floodlight的环境搭建 22
4.4 mininet和floodlight连接 23
4.5结果分析 25
4.6本章小结 26
第5章 总结 27
参考文献 28
致 谢 29
第1章 绪论
1.1 研究背景与意义
自计算机发明起至此已历经四十多年,网络发展速度非常之快,到现在网络已遍布整个世界。大数据和云计算时代到来,网络规模越来越大,用户需求与日俱增,访问量和数据流量爆炸性增长。传统网络架构在路由转发方式方面具有局限性,已经逐渐不能满足用户的性能要求,尤其是对于网络管理人员来说,网络底层设备越来越多,而在实施策略时必须了解网络底层设备的配置,因此管理负担非常重。其次,网络中的很多协议都互不相关,难于集中控制资源。传统网络受到极大挑战,我们必须想办法增加资源调度的灵活性、增强网络架构的可扩展能力并提高带宽的利用率。
在这样的情况下,软件定义网络(Software-Defined Networking,SDN)[[1]]应运而生并得到了极大关注。SDN即软件定义网络,是一种新型的网络创新架构。传统体系控制分散,比较难于掌控整个网络,而SDN改变了传统网络对数据流的控制方式,将设备的控制层面与数据层面分离,通过控制平面实现对网络流量的全局控制,数据层面只对数据进行转发传输,从而解决了传统网络的瓶颈问题,另外SDN还使网络具有了可编程性,这是SDN的核心特征,无需了解底层网的硬件设施,通过软件编程即可实现对网络的动态管理和控制,网络开发者们可以灵活快速地定制自己想要的网络功能,从而满足不同用户的不同需求,极大地提高了资源分配的灵活性,实现了网络的创新,推动了网络技术的进步。在各企业公司以及高校的支持下,SDN得到了迅速地发展。