基于SDN的光网络虚拟化技术研究
2018-06-22◆邵华
◆邵 华
基于SDN的光网络虚拟化技术研究
◆邵 华
(南京邮电大学电子与光学工程学院 江苏 210023)
由于技术的发展和业务类型的不断丰富,光网络得到了飞速发展。新兴应用和未来互联网业务(如超高清视频流)的特点是基于网络的高性能应用在高容量动态光网络上进行全球性的交付。光网络虚拟化使网络运营商能够根据用户/应用的需求,将其物理基础设施划分为虚拟网络,并将其作为基础设施服务提供给用户。随着软件定义网络(SDN)的出现,在动态异构底层网络上实现网络虚拟化更为容易,也让网络虚拟化具备更高的灵活性与高效性。本文首先对SDN技术和光网络虚拟化进行了概述,介绍了基于SDN技术的光网络虚拟化的实现,然后对主流的基于SDN的虚拟化平台进行了简单的介绍。
SDN;光网络;网络虚拟化;虚拟化平台
0 引言
光网络虚拟化使网络运营商可以依据用户的需求,将其物理基础设施划分为虚拟网络,并将其作为基础设施服务提供给用户。网络虚拟化与网络可编程性相结合,提供了一个共享的核心基础设施,可用于多种目的,具有简单且可预测的运营模式。
随着SDN的出现,在动态异构底层网络上实现网络虚拟化更为容易。SDN将控制平面从数据平面中分离出来,并将控制平面合并,以便单个控制程序可以控制多个数据平面元素。SDN的能力使其成为网络虚拟化的一种支持技术。
利用光网络虚拟化技术和软件定义网络,网络运营商能够以最少量的人工干预、硬件部署和工程复杂性,高效、动态地重新配置网络,部署更多容量并支持新服务。
1 SDN技术和光网络虚拟化概述
1.1 SDN技术
SDN(Software Defined Networking,软件定义网络)是一种新型网络模式,它通过将网络的控制逻辑(控制平面)与转发流量(数据平面)的下层路由器和交换机分开来打破垂直整合。其次,网络交换机通过控制平面与数据平面的分离,成为简单的转发设备,控制逻辑在逻辑集中的控制器中实现,简化策略执行和网络配置,并提供灵活的可编程能力。
图1 SDN基本架构
SDN的基本架构分为三层——基础设施层、控制层和业务层,如图1所示。基础设施层包括以太网交换机、路由器、光交换机、虚拟交换机和无线接入点等物理网元,它构成了数据平面,没有控制能力,仅仅是用来对数据进行转发和处理的。控制层则处于中间位置,由负责建立和拆除网络中的流和路径的控制器组成,是基础设施层和业务层的桥梁,向上层开放设备,数据和事件,向底层解释需求。业务层包括各种SDN 应用,经过北向接口与SDN控制器进行交互,即这些应用可以通过可编程的形式把需要请求的网络行为提交给控制器。
1.2光网络虚拟化
虚拟光网络是一组相互连接的虚拟光节点组成,这些虚拟光节点共享一个共同的管理框架。光学节点虚拟化通常通过分离或聚合实现的抽象模型来创建光学网络节点的虚拟表示。在虚拟光网络中,虚拟连接被定义为虚拟网络元件的一个端口到另一个虚拟网络元件的端口之间的连接。其中,抽象使物理基础设施提供商(物理基础设施提供商指的是光网络基础设施的所有者或运营商)隐藏其物理网络资源技术的特定细节,同时将其表示为一组必要的统一属性、特性和功能。抽象是为资源虚拟化机制提供通用性的关键机制。分离使物理基础设施提供商能够将其物理资源划分为多个独立的片(虚拟资源),每个虚拟资源完全模仿真实物理资源片的功能和性能。应该注意的是,在这个虚拟化范例中,分片之间的隔离是特别关键的。聚合是指将多个互相连接的实际物理资源聚合成一个虚拟资源。
2 SDN实现光网络虚拟化
2.1SDN网络虚拟化设计思想
虚拟化过程的基本要素是在真实物理网络和虚拟物理网络之间映射标识符的转换单元,类似于计算机中的内存管理单元或虚拟主机上使用的多种管理程序中的一种。与这些管理程序一样,在转换单元的实现方式和位置上有许多不同的选项,但必须位于应用程序逻辑和物理硬件之间。图2展示了五种SDN虚拟化的设计思路。
图2 几种SDN虚拟化的设计思想
(1)转换单元部署在交换机和控制器之间的一个独立硬件设备上,作为二者的协议代理,在多个交换机和多个控制器之间共享,根据配置信息把不同网络流交付给相应的控制器和交换机处理。
(2)转换单元放置在交换机中,每个物理交换机连接到多个控制器,根据配置信息把相应的流交付给对应的控制器处理。
(3)与方案2相同,转换单元放置在交换机中,每一个交换机运行多个OpenFlow实例,每一个实例与一个控制器相连接,并且在每个OpenFlow实例和快速路径转发硬件之间执行转换。
(4)与上一步不同在于,每台交换机运行多个OpenFlow实例,并将交换机的数据路径分区为几个并行数据路径,每个实例一个。通过影响端口如何连接到不同的并行数据路径来执行转换。
(5)一个具有多个转换单元的模型,一个负责在交换机级别进行虚拟化,另一个负责连接多个虚拟交换机并创建虚拟网络。可以通过由虚拟拓扑转换单元管理的隧道来创建虚拟链路,并且以物理链路的形式呈现。
2.2基于SDN的网络虚拟化平台研究现状
近年来,国内外学者通过不断的研究探索,先后提出了多种SDN 网络虚拟化平台。这里将简单介绍几种主流的虚拟化平台。
(1)FlowVisor
就像管理程序驻留在PC上的软件和硬件之间一样,FlowVisor使用OpenFlow作为硬件抽象层,在逻辑上位于网络设备上的控制和转发路径之间。我们可以把FlowVisor看作是一个OpenFlow控制器,被实现为OpenFlow代理,部署在OpenFlow控制器和交换机之间,用于拦截启用OpenFlow的交换机和OpenFlow控制器之间的消息。通过OpenFlow协议,FlowVisor在控制器和交换机之间进行通信,FlowVisor能够根据虚拟网规则进行消息的拦截、修改、转发等操作,而实现普通OpenFlow控制器只能接受其控制的虚网的流,并不知道这些流被FlowVisor进行了过滤操作。
FlowVisor的设计过程中遵循如下几个原则:
①FlowVisor对网络控制器和交换机应该是透明的;
②网络片之间应该有强大的隔离;
③FlowVisor的虚网划分策略应该是丰富和可扩展的。
(2)OpenVirteX
与FlowVisor一样,OpenVirteX (后面简称OVX)在控制通道内扮演着代理角色,向租户呈现OpenFlow网络,同时通过南向OpenFlow接口控制底层物理基础设施。通过公开OpenFlow网络,允许租户使用自己的网络操作系统(NOS)来控制与其虚拟网络相对应的网络资源。换句话说,OVX创建了多个虚拟软件定义的网络。与FlowVisor不同,FlowVisor通过流空间为网络划分切片,使租户使用网络的一部分,OVX为每个租户提供了一个完全虚拟化的网络,该网络具有租户指定的拓扑结构和完整的header space。
同时,OVX允许租户为其终端主机选择地址分配,允许多个可能重叠的IP地址块存在于相同的物理网络中。为了分配主机,OVX为每个租户生成全局唯一的租户ID,并为每个主机生成一个使用租户ID对主机成员进行编码的物理地址。通过安装流规则来重写网络边缘交换机处的地址,从入口边缘处的租户分配地址到物理IP地址,以及出口边缘处的物理IP地址,避免地址冲突。
(3)VeRTIGO
VeRTIGO是一款基于OpenFlow 的网络虚拟化平台,是对FlowVisor的功能扩展,它可以将不同的视图暴露给不同的控制器,以满足客户的特定需求。它支持由虚拟链路和任意拓扑节点组成的虚拟网络,将整个虚拟网络折叠成单个路由器或交换机实例的抽象节点。VeRTIGO提供物理网络抽象实例(即虚拟网络或抽象节点)的能力是基于两个基本的虚拟元素:虚拟链接和虚拟端口。这两个元素既用于实例化任意网络拓扑,包括不相邻交换机之间的虚拟链路,也用于互连抽象节点的远程访问端口。 在第一种情况下,虚拟链路和端口作为网络的一部分暴露给OpenFlow控制器。 在后者中, OpenFlow控制器只能看到这个虚拟交换机的虚拟端口,而不知道底层是如何映射的。虚拟链路在逻辑上集合了物理链路和OpenFlow节点,而虚拟端口只是具有虚拟端口号的物理端口。
3 总结
鉴于新兴应用和未来互联网服务,网络运营商正在寻求网络虚拟化方法,以有效共享其网络基础设施。软件定义网络和OpenFlow协议提供了形成分组和光电路交换域的虚拟化机制和统一控制平面所需的机制。由于OpenFlow协议最初设计是为IP网络服务的,没有考虑到光网络的一些特殊性质,所以想要控制由光节点组成的虚拟网络,需要对OpenFlow协议进行一定的扩展,这是下一步的工作。
[1] Nick Feamster, Jennifer Rexford, and Ellen Zeg-ura. 2014. The road to SDN: an intellectual history of programmable networks[J].SIGCOMM Comput. Commun. Rev.44, 2 (April 2014).
[2]Juliano Araujo Wickboldt; Wanderson Paim De Jesus; Pedro Heleno Isolani; Cristiano Bonato Both; Juergen Rochol; Lisandro Zambenedetti Granville. 2015. Software-defined net-working: Management requirements and challenges[J]. I-EEE Communications Magazine 53, 1 (2015).
[3]耿永强.光网络虚拟化技术[J]. Silicon Va11ey,2012.
[4]Pontus Sköldström,Kiran Yedavalli. Network virtualization and resource allocation in OpenFlow-based wide area networks. 2012 IEEE International Conference on Communications (ICC), Ottawa, ON,2012.
[5]Rob Sherwood, Glen Gibb, Kok-Kiong Yap,et al.Flowvisor:A Network Virtualization Layer[R].Open Flow Switch Consortium,2009.
[6]Victor T. Costa, Luís Henrique M. K. Costa. Vulnerabilities and solutions for isolation in FlowVisor-based virtual network environments[J]. Journal of Internet Services and Applications,2015.
[7] Ali Al-Shabibi, Marc De Leenheer, Matteo Gerola, et al.Open Virte X:Make Your Virtual SDN Programmable[C].The Third Workshop on Hot Topics in Software Defi-ned Networking ACM,2014.
[8]Doriguzzi Corin R, GerolaM, Riggio R, et al, VeRTIGO:Network Virtualization and Beyond[C], Software Defined Networking (EWSDN), 2012 European Workshop on. IEEE,2012.