APP下载

基于云计算的软件定义网络在线实验平台设计研究

2021-05-19邢如意

电子元器件与信息技术 2021年2期
关键词:开源架构定义

邢如意

(江苏联合职业技术学院 徐州财经分院,江苏 徐州 221000)

0 引言

软件定义网络(Software Defined Networking,简称SDN)在近几年来逐渐成为网络技术领域的热门。运用软件定义网络技术对网络进行改造或设计,可实现对网络流量的灵活控制,实现对网络的智能化控制,为核心网络管理及应用创新提供了新平台。SDN技术还能有效降低设备负载和运营成本,极大推动下一代互联网发展。对于高校计算机网络工程技术专业而言,将SDN技术引入课程教学是必然趋势[1],结合已有计算机网络教学经验,研究软件定义网络实验课程建设和虚拟仿真平台建设,培养面向未来网络热点产业技术领域的创新型优秀人才具有重要现实意义。

软件定义网络虚拟仿真实验平台是软件定义网络技术与网络功能虚拟化(Network Function Virtualization,简称NFV)技术的综合运用。网络功能虚拟化技术能够实现分离专用硬件、在标准设备上通过软件方式模拟网络功能。NFV技术本质为虚拟化,在此之上开发具有特定功能的软件功,如NAT、负载均衡、路由等,实现硬软件功能解耦。SDN与NFV技术两者实现互相弥补、互相促进。

本文提出以云计算平台OpenStack作为底层基础设施,在其之上搭建以OpenDayLight、OVS等SDN软件为组合的在线实验平台,并对平台的技术架构和实现进行了阐述。

1 本文工作

由于软件定义网络专用交换机设备昂贵,难以大规模部署用于实验教学,因此在实验教学时采用模拟仿真方式进行。当前业界已经分别有面向软件定义网络架构中控制平面和数据平面的多个开源项目,例如开源控制器软件有OpenDayLight、Ryu、Floodlight,开源虚拟交换机软件有OpenVSwitch、Linux Bridge,开源路由软件有Quagga,BIRD。另外还有轻量级仿真平台―Mininet、面向运营商的软件定义网络操作系统―ONOS。

在已有面向仿真平台建设方案研究中,WANG S Y等[2]提出了基于EstiNet构建仿真平台,何荣希等[3]、黄家玮等[4]、李月溶等[5]提出了在VMWare虚拟机上搭建基于Mininet的仿真实验教学方案,魏亮等[6]提出了在利用SDN技术的基础上引入了NFV、网络服务编排等创新技术,自主设计开发了基于SDN/NFV的未来网络实验平台。申海杰等[7]提出了基于Mininet为仿真平台、Floodlight为控制器、OpenVirteX为网络虚拟化层设计多租户的实验教学方案。张栋等[8]提出了基于Mininet+OVS+OpenDayLight组合开展实验,并自行设计开发了可自动化评测的SDN仿真平台。综上研究可以看出,SDN实验环境基本上以Mininet为基础,结合开源控制器OpenDayLight等进行搭建,实验中使用Wireshark进行抓包分析OpenFlow协议,底层虚拟化环境使用VMWare虚拟机。

本文提出以云计算平台为底层基础构建软件定义网络虚拟实验平台,底层采用OpenStack作为基础设施,采用Mininet、OpenDayLight、Open vSwitch等开源框架搭建实验服务层,使用Spring开源框架和Beetl模板技术开发web层。平台基于B/S架构,教师和学生通过浏览器可直接使用,平台实现了实验环境的云端存储、使用YAML描述实验环境模板、支持同一实验包含多台虚拟机、学生之生实验环境隔离等功能。平台支持多用户同时访问,教师可灵活定制实验模板,可以对SDN控制器与交换机的灵活组合。

2 平台架构

面向SDN的控制层已经有较为成熟的开源框架,如OpenDayLight,Ryu等,在数据平面有Open vSwitch。当前面向SDN的实验仿真中绝大多数场景都采用以上开源框架。

本文所述基于云计算的SDN实验平台采用B/S架构,选择OpenStack作为底层基础设施,在OpenStack平台上使用开源SDN框架等搭建实验环境,使用Java Spring技术开发面向学生和教师的在线实验模块中间件,使用Beetl模板开发操作界面,使用noVNC/webssh技术实现对远程虚拟机在线操作。平台架构如图1所示。

图1 平台架构

平台在架构上可以分为三层:基础设施层、服务层和应用层。

基础设施层以云计算平台OpenStack为支撑,进行底层网络资源、存储资源、计算资源调度和管理。

中间服务层则是在OpenStack基础上搭建以Mininet、OpenDayLight、Open vSwitch为组合的实验服务环境。这些服务环境可以采用Qemu虚拟机或Docker容器方式运行。

应用层是面向学生和教师提供统实验操作和管理入口,具体功能为面向教师提供实验模板管理、面向学生提供实验环境操作界面。

3 平台应用分析

平台使用时首先由教师创建实验模板,实验模板中包括实验用到的硬软件配置和连接拓扑。硬件包括要使用的虚拟机数量及配置,软件包括使用的SDN控制器和交换机开源软件。连接拓扑则是PC与交换机、交换机与控制器之间的连接状态。图2展示了YAML格式描述的实验模板配置文件。

图2 实验模板YAML 配置文件

学生登录实验平台后,可以看到实验列表,点击某个实验标题后可看到实验文档、实验虚拟主机列表及主机下的相关SDN开源软件,点击虚拟机图标或SDN软件图标后将弹出新窗口显示目标主机SSH界面。图3展示了学生进入的主界面及虚拟机操作界面。

图3 学生操作界面

平台在测试应用中使用单台物理机部署,硬件配置如表1所示。实验内容包括Mininet基础实验、Open vSwitch实验、OpenDayLight实验,实验中使用的虚拟机包括3到6台,以30人班级进行开展教学,依靠OpenStack强大的底层支持,测试硬件能够支撑实验教学应用,保障实验顺利进行。平台使用用过程中在易用性、实用性、便捷性和性能上获得了教师和学生的一致好评。

表1 服务器配置

4 结语

随着OpenStack的版本更新迭代,OpenStack已成为构建私有云的首选。本文所述平台是基于OpenStack搭建软件定义网络虚拟仿真平台,为软件定义网络实验环境搭建提出了新思路。随着容器技术应用越来越广泛,未来可以研究以容器为底层架构的软件定义网络实验环境,从而构建轻量化的软件定义网络实验平台。

猜你喜欢

开源架构定义
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
五毛钱能买多少头牛
2019开源杰出贡献奖
WebGIS架构下的地理信息系统构建研究
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
成功的定义
一种基于FPGA+ARM架构的μPMU实现
修辞学的重大定义