李 宁,杨红伟,李 艳,王永欣,王 静,李 俊
(1.中国电子科技集团公司第五十四研究所,河北 石家庄 050081; 2.北华航天工业学院,河北 廊坊065000)
基于SDN的网络虚拟化仿真研究
李 宁1,杨红伟2,李 艳1,王永欣1,王 静1,李 俊1
(1.中国电子科技集团公司第五十四研究所,河北 石家庄 050081; 2.北华航天工业学院,河北 廊坊065000)
软件定义网络的集中控制和可编程能力解决了传统网络虚拟化技术的弊端。为了进一步研究网络虚拟化技术,采用Mininet、OpenVirteX和Floodlight等软件,提出一种基于SDN的网络虚拟化仿真平台实现方案。总结了SDN网络和网络虚拟化特性,介绍了基于SDN的网络虚拟化仿真平台的系统架构,验证了其功能和隔离特性。提出的仿真平台为基于SDN技术的网络虚拟化创新提供了良好的平台支撑。
软件定义网络;网络虚拟化;OpenVirteX
Abstract The centralized control and programmable ability of Software Defined Network solve the disadvantage of traditional network virtualization technology.In order to further research the network virtualization technology,a network virtualization platform based on SDN network architecture is presented by employing Mininet,OpenVirteX and Floodlight.The paper summarizes SDN network and network virtualization features,introduces the system architecture based on SDN network simulation platform virtualization,and verifies its function and isolation features.The simulation platform puts forward good support for network virtualization innovation based on SDN.
Key words software-defined network;network virtualization;OpenVirteX
近年来,网络正朝着虚拟化和移动化的方向发展,网络虚拟化技术在云计算和物联网等领域已经得到了广泛的运用。而传统的网络虚拟化技术存在弊端,如GENI[1]通过划分VLAN 的方式提供不同试验网络的隔离,不过这使试验拓扑受限于网络的拓扑而不够灵活;PlanetLab[2]通过隧道叠加的方式实现相互隔离的环境,不过切片的开通需要复杂的隧道配置。
软件定义网络(Software Defined Networking,SDN)技术的出现克服了以上弊端,SDN将整个网络架构分为控制平面和转发平面,用户可以在控制器上对网络进行集中、灵活地控制[3]。SDN由于其灵活的特性引发了广泛关注,为网络虚拟化进一步广泛应用提供了强有力的技术支撑,推动了网络技术的创新。
本文以SDN网络架构为基础研究网络虚拟化实现,并对网络虚拟化的隔离机制进行研究与分析,提供一整套基于SDN的网络架构仿真实现方案,为网络虚拟化的实现提供了新的手段。
网络虚拟化[4]是指在同一物理网络基础设施上允许多个虚拟网络共存、独立运行的网络技术。每个虚拟网络包括虚拟节点和虚拟链路。实际上,每个虚拟网络都是底层物理网络资源的一个子集,通过创建虚拟网络,可以提供端到端的网络服务[5]。
网络虚拟化的核心是共享物理网络资源和隔离机制[6]。所谓共享物理网络,就是说每个虚拟网络所使用的物理资源来自同一个物理网络,虚拟网络分时或者分片使用同样的物理资源[7];所谓隔离机制,就是要求共享同样物理网络资源的虚拟网络,运行时互不影响,互相隔离[8]。由于虚拟网络工作的层次不同,其共享和隔离机制也都不尽相同。网络虚拟化架构示意如图1所示。
图1 网络虚拟化架构示意
通过网络虚拟化带来的好处[9]:
① 用户只需要操作属于自己的逻辑网络,而不用关心底层网络的实现细节,屏蔽了物理网络的差异性;
② 多个用户共享同一物理网络资源,提高网络资源的利用率;
③ 用户网络间相互隔离,彼此不受对方的影响,有助于提高网络的安全性。
而传统的网络虚拟化技术,如 VLAN[10]和VPN[11],需要分别对每一台设备进行操作,网络虚拟化的配置和操作通常是非常复杂的。当虚拟网络发生变化时,更改原来配置的工作量也将十分巨大。
ONF(Open Networking Foundation)提出的SDN架构如图2所示[12]。
SDN的核心思想主要体现在3个方面[13]:
集中控制:逻辑上的集中控制能够获得底层网络资源的全部信息并根据业务需求对资源进行灵活调配和优化。同时,远程的集中控制无需对物理设备进行现场配置,从而提升了网络控制的便捷性。
可编程能力:在控制平面编程,通过开放的南向和北向接口,使得应用能告知底层网络如何运行才能更好地满足应用的需求,能够实现应用和网络的无缝集成。
网络虚拟化:逻辑网络和物理网络分离后,逻辑网络可以根据业务需要进行配置、迁移,不再受具体设备物理位置的限制。
SDN的集中控制和可编程能力则恰好解决了传统网络虚拟化配置复杂的问题,即可以在集中式架构的适当位置引入网络虚拟化平台,按照一定的策略实现虚拟逻辑资源与真实物理资源间的映射[14],在SDN架构下管理多个虚拟网络变得更加容易,使网络虚拟化技术更具灵活性[15]。
图2 ONF提出的SDN架构
3.1 OpenVirteX体系架构
OpenVirteX[16]是ON.LAB开发的一个网络虚拟化平台,可以实现多租户的网络虚拟化。OpenVirteX可以根据租户的需求,将租户的网络拓扑映射到具体的物理拓扑上,完成网络的连通。而OpenVirteX的位置相当于一个介于租户控制器和交换机之间的转换平台。面对租户,OpenVirteX就是一个物理的网络,而面对交换机,OpenVirteX就是控制器。对于租户而言,看到的是一个虚拟的网络,无法看到真实的物理拓扑,也不需要关心,即租户“认为”得到了一个属于自己的真实网络[17]。OpenVirtex体系架构如图3所示。
OpenVirteX作为中间层代理的角色,是连接网络操作系统(Network Operate System,NOS)和物理网络的重要转换枢纽,能够同时感知底层的物理网络全局拓扑和每个租户的虚拟网拓扑,真正做到了虚拟网络与物理网络的解耦。
OpenVirteX它能在单一的物理网络之上创建多个虚拟的可编程网络,采用流量隔离的方式,让租户可以使用全部的编址空间、定义租户自己的拓扑并且部署自己的控制器。
图3 OpenVirtex体系架构
3.2 OpenVirteX隔离性原理
具体隔离性原理如图4所示。
图4 OpenVirteX隔离性原理
虚拟组件是面向租户的,其中每一个租户拥有一个由若干虚拟交换机和虚拟链路组成的虚拟网络,此部分负责虚拟交换机与NOS之间的OpenFlow通信,而物理组件是面向交换机的,管理OpenVirteX与物理交换机的OpenFlow通信。虚拟组件和物理组件之间的映射关系存储在Global Map中,存储了全部网络映射数据,这允许租户通过简单地修改这个映射关系就能够重新配置、停止和初始化网络,并且不同虚拟网络映射关系保持相互独立。OpenVirteX利用虚拟组件和物理组件之间的映射关系创建相互隔离的虚拟网络。
本方案整体架构如图5所示。
图5 OpenVirteX支持的网络虚拟化
系统从下至上分为3层:第1层为数据平面,通过Mininet[18-19]提供虚拟化网络底层的物理网络,用户创建的虚拟网络最终映射至此网络;第2层为虚拟化平面,OpenVirteX通过其隔离机制提供网络虚拟化功能;第3层为控制平面,是整个网络的核心控制层,OpenVirteX能够将用户的虚拟网络连接在用户指定的Floodlight控制器上,控制数据平面的数据包逻辑转发行为。
基于Mininet创建如图6所示的物理网络拓扑,一共有9个交换机,每个交换机连接4个主机。
由于还未配置OpenVirteX,执行h_A_1 ping h_C_2主机之间不能互通,如图7所示。
图7 OpenVirteX配置之前,终端之间无法互通
创建虚拟网1,包含主机h_A_1和h_C_2,通过创建虚拟交换机、虚拟端口和虚拟连接,配置虚拟网络。
在Floodlight控制器上,可以看到虚拟网创建成功,如图8所示。
图8 虚拟网1拓扑图
此时执行h_A_1 ping h _C_2,实现互通,如图9所示。
图9 创建虚拟网络后,终端之间可以互通
基于如图6所示的物理网络拓扑,创建2个虚拟网络:虚拟网1包含主机h_A_1和h_C_2,虚拟网2包含主机h_F_3和h_H_4。分别从虚拟网1和虚拟网2中选择一个主机进行互通测试,如图10所示。
图10 不同虚拟网络间主机互通测试
由图10可以看出,不同虚拟网络的主机之间不能互通,验证了不同虚拟网络之间的隔离性。
基于SDN的网络虚拟化仿真平台弥补了传统网络虚拟化技术的弊端[20],实现了不同虚拟网络之间的隔离性,并实现多个虚拟网络对物理链路和路由器等物理资源的复用,从而最大程度地提高物理网络设备的资源利用率。
随着网络虚拟化技术的不断发展,基于SDN的网络虚拟化平台将更加成熟,从而为上层应用提供更好的服务。
[1] ELLIOTT C.GENI-global Environment for Network Innovations[C]∥LCN.c2008.
[2] CHUN B N,CULLER D E,ROSCOE T.Planet-Lab:An Overlay Testbed for Broad Coverage Services[J].Computer Communication Review CCR,2003,33(3):3-12.
[3] 魏亮,王健,刘江,等.基于SDN的虚拟化平台设计[J].电信技术,2014(6):47-52.
[4] 马赛.云计算中网络虚拟化技术的异构互通[D].上海:上海交通大学,2015.
[5] 江逸茗,兰巨龙,韩青,等.网络虚拟化技术综述[J].网络新媒体技术,2016,5(4):1-7.
[6] CHOWDHURY N,BOUTABA R.A Survey of Network Virtualization[J].Computer Networks,2010,54:862-876.
[7] 杨磊,高飞,江玮.网络虚拟化试验平台研究[J].信息技术,2013(5):102-104.
[8] 吕品.无线Mesh网络虚拟化关键技术研究[D].长沙:国防科学技术大学,2012.
[9] 修长虹,梁建坤,辛艳.虚拟化技术综述[J].网络安全技术与应用,2016(5):22-23.
[10] IEEE Std 802.1Q-2005 COMMITTEE L S.IEEE Standard for Local and Metropolitan Area Networks Virtual Bridged Local Area Networks[S],2006.
[11] JACOB B.Virtual Private Network[J].Advisory Editors,1998,31(6):211.
[12] Open Networking Foundation.Operator Network Monetization Through OpenFlow Enabled SDN[S],2013.
[13] 雷葆华,王峰,王茜,等.SDN核心技术剖析核心指南[M].北京:电子工业出版社,2013.
[14] 刘江,黄韬,张晨,等.SDN 试验床网络虚拟化切片机制综述[J].通信学报,2016,37(4):159-171.
[15] 陈星,王俊芳,陈立水,等.基于链路带宽检测的虚拟网络映射算法[J].计算机与网络,2016,42(2):60-63.
[16] SHABIBI A,LEENHEER M,GEROLA M,et al.OpenVirteX:Make Your Virtual SDNs Programmable[C]∥Proceedings of the Third Workshop on Hot Topics in Software Defined Networking(HotSDN),New York,NY,USA:ACM,2014:25-30.
[17] AL-SHABIBI A,DE LEENHEER M,GEROLA M,et al.OpenVirteX:Make Your Virtual SDN Programmable[C]∥The Third Workshop onHot Topics in Software Defined Networking.ACM,2014:25-30.
[18] 李艳,郝志安,李宁,等.基于mininet的SDN架构仿真研究[J].计算机与网络,2014,40(5):58-59.
[19] 江国龙,付斌章,陈明宇,等.SDN控制器的调研和量化分析[J].计算机科学与探索,2014,8(6):653-664.
[20] 刘文懋,裘晓峰,陈鹏程,等.面向SDN环境的软件定义安全架构[J].计算机科学与探索,2015(1):67-74.
The Simulation Research Based on OpenFlow
LI Ning1,YANG Hong-wei2,LI Yan1,WANG Yong-xin1,WANG Jing1,LI Jun1
(1.The54thResearchInstituteofCETC,ShijiazhuangHebei050081,China; 2.NorthChinaInstituteofAerospaceEngineering,LangfangHebei065000,China)
10.3969/j.issn.1003-3106.2017.08.01
李宁,杨红伟,李艳,等.基于SDN的网络虚拟化仿真研究[J].无线电工程,2017,47(8):1-4.[LI Ning,YANG Hongwei,LI Yan,et al.The Simulation Research Based on OpenFlow[J].Radio Engineering,2017,47(8):1-4.]
2016-12-16
河北省重点研发计划基金资助项目(16210327D)。
TP393
A
1003-3106(2017)08-0001-04
李 宁 女,(1986—),硕士,工程师。主要研究方向:网络虚拟化、软件定义网络、云计算。
杨红伟 女,(1987—),硕士,讲师。主要研究方向:未来网络架构、云计算。