基于SDN的路径优化与仿真

2020-04-01 20:15金海峰孔珊珊
计算机与网络 2020年20期
关键词:软件定义网络负载均衡路径优化

金海峰 孔珊珊

摘要:针对传统网络面临的组网灵活性差、资源规模扩展有限,以及星型拓扑网络极易引发的单点故障问题,提出了基于软件定义网络(SDN)的冗余网络架构方案。介绍了SDN技术,详细阐述了SDN数据选路优化策略,借助Mininet仿真软件和ODL控制器。仿真研究了SDN建模和网络流表集中控制,以及数据选路优化等,对SDN的实现提供了有效方法。

关键词:软件定义网络;路径优化;负载均衡;OpenFlow

中图分类号:TP393文献标志码:A文章编号:1008-1739(2020)20-71-3

0引言

传统网络是分布式控制的架构,每台设备都包含独立的控制平面和数据平面。软件定义网络(SDN)是在物理上將网络的控制平面与数据转发平面进行分离,控制平面控制多个设备,通过控制器中的软件平台去控制底层硬件,实现对网络资源灵活的按需调配[1]。在SDN中,网络设备只负责单纯的数据转发。SDN架构的网络具有直接可编程、资源分配更合理、数据转发更敏捷,以及统一控制、集中部署等优点[2]。

1 SDN

SDN的目标在于使得网络的开发者、运维人员无需过多了解底层网络的情况,只需通过集中化控制平台对网络进行快速部署与实时调整,以迅速适应变化的业务需求。SDN架构由SDN应用层、SDN控制器、SDN交换机,以及SDN北向接口、SDN南向接口组成。SDN控制器是整个SDN网络的核心,网络管理员通过SDN控制器来控制网络的运行,如数据转发、流量控制等。SDN控制器已经比较成熟,种类繁多,主流的SDN控制器包括开源控制器和商业控制器,常见开源SDN控制器有RYU、Floodlight、OpenDaylight等。其中OpenDaylight最具影响力、活跃度最高,不少商业控制器由ODL改造生成[3]。

2双核心网络架构模型及路径优化策略

2.1网络建模

园区网接入设备选用RG-S2928G-E V3系列交换机,支持千兆网络和OpenFlow,可以和SDN Controller相互配合,搭建大规模二层架构网络。园区网核心层设备选用RG-S5750C系列交换机,支持千兆网络、VSU、OpenFlow、链路聚合等技术,和SDN Controller相互配合搭建大规模二/三层架构网络,2台核心交换机分别与接入交换机互联。园区网出口网关选用RG-EG2000,支持静动态路由、二三层链路聚合,以及NAT、上网行为管理等技术。园区网SDN Controller选用RG-ONC系列智能开放网络控制器,RG-ONC通知其采用Java OSGi模块化技术架构,可支持整网数千个网络设备节点的集中管理调度,上千条流表和上万个子网可以适应各种规模的SDN网络控制需求。

SDN网络包括业务子网和管理子网两部分,业务子网包括终端设备、接入交换机、核心交换机及出口网关等,主要实现园区网络业务数据通信、Internet互联等。管理子网包括SDN控制器和SDN交换机,主要功能包括SDN控制器下发流表给SDN交换机,以及SDN交换机向SDN控制器请求数据转发规则,具体网络拓扑如图1所示。

2.2路径优化策略

图2描述了主机H1访问H5时的数据走向,报文首先由sw1发送至sw3,再由sw3转发给H5,H5响应报文则由sw5转发给了sw4,最终报文由sw4转发给sw1。相应地,交换机sw2上的主机报文参照此策略设计,整个传送过程充分利用了链路,实现了链路的负载均衡。

3在Mininet平台中仿真测试

3.1 Mininet平台

Mininet是一款网络仿真平台,是斯坦福大学Nick McKeown的研发小组基于Linux Container架构研发而成,Mininet支持OpenFlow,Openv Switch,RYU,Floodlight,OpenDaylight等多种控制器,与Linux完全兼容,因此在Mininet上开发和测试的代码可快捷迁移到真实的硬件平台上[4]。

3.2定制仿真拓扑

①建立脚本文件mytopo.py

②编辑脚本文件[5],参照下列方法,定义类、主机、交换机,并实现网络互连。

3.3查看端口互联信息

查看方法:mininet> links。

执行命令links后,可以得知网络端口互联信息。比如,“h1-eth0<->sw1-eth3 (OK OK)”代表含义是:主机h1的端口eth0与交换机sw1的端口eth3互联,并且链路正常。

3.4设计数据转发规则

交换机sw1,sw3,sw5上的数据转发规则如表1、表2和表3所示。

3.5测试验证

(1)通过Wireshark软件获取交换机sw1的eth3上的数据包。

(2)通过Wireshark软件获取交换机sw3的eth1上的数据包。

(3)通过Wireshark软件获取交换机sw4的eth3上的数据包。

分析图3、图4和图5,可以得出主机H1 ping H5的数据包,从交换机sw1出发后,自交换机sw3转发给交换机sw5;从交换机sw5返回的数据包,自交换机sw4转发给交换机sw1,发送数据的选路与接收数据的选路不同路,实现了链路的负载均衡。

4结束语

在Mininet搭建的仿真网络中,通过Python进行仿真网络建模,ODL控制器集中下发交换机流表,优化数据包的链路选择,一方面实现了网络控制平面和数据通信平面的分离,同时也实现了链路上数据的负载均衡,为后续SDN网络的研究提供了良好的技术参考。

参考文献

[1]程丽明.SDN环境部署与OpenDaylight开发入门[M].北京:清华大学出版社,2018.

[2]刘果,陈凡,李剑锋,等.构建SDN仿真实验平台的探讨与实践[J].软件,2015,36(6):103-108.

[3]滕步煒.Mininet模拟环境中实现OpenFlow交换机流表控制[J].连云港职业技术学院学报,2019,32(1):22-24.

[4]李宁,郝志安,李艳,等.OpenFlow网络架构实现与仿真研究[J].计算机与网络,2014,40(17):60-62.

[5]黄家玮,刘敬玲,徐文茜,等.软件定义网络的实验教学方案设计[J].计算机教育,2017(3):152-154.

[6]张俊.基于Mininet和Open Day Light的SDN构建[J].无线互联科技,2015(18):5-7.

猜你喜欢
软件定义网络负载均衡路径优化
业务功能链技术及其应用探析
针对大规模软件定义网络的子域划分及控制器部署方法
一种新的SDN架构下端到端网络主动测量机制
异构环境下改进的LATE调度算法
经济发展方式转变背景下流通体系路径优化策略探讨
山西省异地就医直接结算路径优化研究
CVRP物流配送路径优化及应用研究
超高吞吐率Wi—Fi融合应用新技术分析
基于负载均衡的云资源调度策略研究
基于意义建构视角的企业预算管理优化路径探究