兰巨龙:网络虚拟化技术综述

Posted 5G

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了兰巨龙:网络虚拟化技术综述相关的知识,希望对你有一定的参考价值。


兰巨龙:网络虚拟化技术综述

本文作者

兰巨龙:国家数字交换系统工程技术研究中心教授,博士生导师,主要研究方向为宽带信息网络与新一代信息网络关键理论与技术。


江逸茗,韩青,席孝强:国家数字交换系统工程技术研究中心。


石晓飞:江南计算技术研究所。


本文摘要

网络虚拟化的核心思想是在一个基础网络架构中实现多种异构的虚拟网络并存,该技术是未来网络的一个重要研究方向。


本文回顾了网络虚拟化技术的发展历程,对虚拟网的管理与映射算法进行了介绍,并对网络虚拟化的应用前景进行了展望。


关键词:网络虚拟化,虚拟网映射,动态适配,资源管理


引言


在当前的网络体系架构下,试验和应用一些网络新技术对网络进行升级改造,而互联网庞大的规模使得改造开销难以接受。现在的互联网是由很多异构的自治域构成,这些自治域的建设、管理、维护是由不同的互联网服务提供商负责,新型网络架构的部署将面临较多的现实困难。因此,与互联网应用层面的快速发展趋势相比,网络体系结构的发展进度显得较为缓慢。为了解决该问题,业内的学者提出了网络虚拟化的技术思路。


网络虚拟化的核心思想是在一个基础网络架构中实现多种异构的虚拟网络并存,网络虚拟化技术通过建立健壮、可信、可管的虚拟环境,使多个虚拟网络能够对物理链路和路由器等物理设备实现资源的复用,从而最大程度地提高基础网络设备的资源利用率,为物联网、云计算等新兴应用提供技术支撑。一些国内外的大型科研项目也围绕着网络虚拟化思想展开,例如FIND的两个子项目:多样化互联网体系结构项目和CABO项目、FP7下属的4WARD项目、日本的AKARI,以及国内的可重构信息通信基础网络和智慧协同网络等。


网络虚拟化的体系架构


在网络虚拟化的体系架构中,每个虚拟网都是由服务供应商进行设计和管理,虚拟网的基本组成单元包括虚拟节点和虚拟链路,其组成架构如图1所示。


兰巨龙:网络虚拟化技术综述

图1  网络虚拟化体系结构图


网络虚拟化环境是通过构建虚拟网为用户提供面向业务的服务,服务提供模式采用的是一种分层模式,具体包括资源层、服务层和应用层。在资源层,基础设施提供商负责提供底层物理网络资源,并对其进行管理维护。基础设施提供商将会对服务供应商开放多个标准的可编程接口,以便服务供应商对资源进行调用。不同的基础设施提供商在资源的可用量、资源租用价格、开放程度等方面提供差异化的服务。


在服务层,服务供应商可向基础设施提供商提出租赁或购买底层网络资源的申请,申请被成功接收后,服务供应商就可以构建出满足用户实际业务需求的虚拟网,虚拟网的组成要素和属性如表1所示。此外,服务供应商还负责终端用户的虚拟网接入,并通过基础设施提供商提供的操作接口对其构建的虚拟网进行维护与管理。网络虚拟化环境也支持每个终端用户同时与多个服务供应商建立连接,从而获取与其需求相匹配的服务。


表1  数据集

兰巨龙:网络虚拟化技术综述


虚拟网映射算法


在虚拟网的建立过程中,虚拟网的映射是最关键的步骤。虚拟网的映射指的是通过为虚拟网分配能够满足其需求的底层网络资源,使虚拟节点和虚拟链路能够运行在实际的底层节点和路径上。映射决策的优劣将对底层资源的利用效率、服务的传输质量、网络重构的实际效果等方面产生重要的影响。


3.1 问题模型


虚拟网映射的基本模型如下:


兰巨龙:网络虚拟化技术综述

兰巨龙:网络虚拟化技术综述

兰巨龙:网络虚拟化技术综述


兰巨龙:网络虚拟化技术综述

图2  虚拟网映射实例


虚拟网映射的主要目标在于充分利用有限的底层网络资源,基本评价指标包括请求接收率、运营收益开销比等等。根据应用场景与实际目标的不同,还可以增加可靠度"通信开销等评价指标!


3.2 算法分类


根据评判标准的不同,算法可以从不同的角度进行分类,比如:根据资源分配方式可将算法分为静态算法和动态算法,根据映射请求的处理方式,又可以将映射算法分为在线算法和离线算法。


如果根据应用场景区分,可以将映射算法分为单域映射算法和跨域映射算法两大类。单域映射算法是将虚拟网映射在某一个特定的底层网络域里,若这个域没有足够的资源,则拒绝该映射请求。跨域映射算法是可将一个虚拟网映射在多个底层网络域上。根据网络管理模式的不同,单域映射算法又可以分为集中式映射算法和分布式映射算法。因此,本文把虚拟网映射算法分为单域集中式"单域分布式和多域分布式三种类型。


(1)单域集中式


目前针对虚拟网映射算法的研究大部分是面向单域集中式的。集中式的映射环境指的是在底层网络中至少存在一个中心管理节点,该节点将负责收集和维护整个底层网络的状态信息,同时还将负责虚拟网的映射、撤销以及正常的运行维护。


单域集中式映射的解决思路一般包括两种:一种是基于贪心算法,如VNA算法;一种是基于线性规划,典型的是ViNEYard算法。


基于贪心思想的映射算法的基本流程是:


步骤一:将所有虚拟节点按照其资源需求由多到少进行排序;


步骤二:将所有底层网络节点按照可用资源的由多到少进行排序;


步骤三:先将需求最多的虚拟节点映射到可用资源最多的底层节点上,再将需求次多的虚拟节点映射到可用资源次多的底层节点上,依次类推,直到所有虚拟节点全部被映射,如果有虚拟节点找不到满足需求的底层节点,则映射失败;


步骤四:利用最短路径算法计算出连接各个虚拟节点的虚拟链路的映射路径,若找不到满足需求的路径,则映射失败。


ViNEYard算法以路径分割和节点位置约束为前提,以降低映射代价为目标,将映射问题转化为混合整数规划问题,设计了一种确定型映射算法(D-ViNE),以及随机型映射算法(R-ViNE)。为了使问题在多项式时间可解,该算法需要将整数规划问题松弛为混合整数规划问题,然后求出问题的近似解。当节点映射完成后,再调用多商品流算法进行链路映射。


(2)单域分布式


分布式映射算法是运行在分布式的网络管理环境中,相对于集中式环境而言,分布式映射环境存在以下不同:


①集中式环境中只有中心管理节点能够接收和处理映射请求。而在分布式环境中,底层网络的任意一个节点都可以接收并处理映射请求。


②集中式环境中,中心管理节点掌握了网络域内所有节点和链路的资源状态信息。在分布式环境中,每个节点只掌握本节点以及连接在本节点上所有链路的资源状态信息。若某个节点要想知道其他节点或链路的状态信息,需要通过发送状态查询消息实现。


③集中式环境中,虚拟网的映射策略是中心管理节点根据其维护的全网资源状态制定的。而分布式环境中,虚拟网的映射策略是通过各个节点之间的相互协商来制定的。


④在集中式映射环境下,映射请求是依次被处理的。但在分布式映射环境中,可能有多个虚拟网同时被映射,在各个并行的映射进程之间可能会产生冲突。


由于在这类环境中没有中心管理节点,分布式映射主要是依靠底层节点之间的协商和信息交换完成。但是节点之间过多的通信不但会加重网络的负担,还会影响映射请求的响应速度。因此,对于分布式映射算法而言,不但要实现底层资源的合理利用,还要尽量降低映射时的通信开销。


目前关于单域分布式映射算法的研究还较少。有学者提出了一种基于贪婪思想的分布式映射算法,该算法首先将虚拟网请求拓扑分解为多个星型子拓扑,然后对个星型子拓扑进行并行地映射,映射时先将子拓扑的中心节点映射到可用资源较多的底层节点上,然后再依次映射子拓扑中的剩余节点。链路映射采用最短路径算法实现。


(3)多域分布式


单个底层网络域内的资源是有限的,在底层网络负载较高或虚拟网规模较大时,单个域内的网络资源已无法满足新的映射请求,从而导致这些映射请求因为无法得到足够的资源而映射失败,而跨域映射能够有效地解决该问题!跨域映射实例如图3所示。


兰巨龙:网络虚拟化技术综述

图3  虚拟网跨域映射实例


在多域环境下,管理各个域的基础设施提供商之间会存在一定的利益冲突,每个基础设施提供商都会尽量实现自身利益的最大化,相互之间也不会公开网络拓扑等信息。这种基础设施提供商的自私性也是跨域映射策略必须考虑的因素之一。


目前关于虚拟网跨域映射方面的研究主要包括三方面:支持跨域映射的虚拟网平台或架构、跨域映射框架或策略、跨域映射算法。其中,虚拟网跨域映射框架包含了一套多域环境下的映射控制协议和映射策略,该映射策略的技术思路是将虚拟网中无法被单域映射的部分推送给相邻的底层网络域进行映射,但没有提出专门针对跨域映射的算法,从而导致多域映射时开销较高的问 题。另外,有学者通过求解MAX-2-SAT问题和3-Mutiway cut问题来实现虚拟网拓扑的分割,然后将跨域映射转化为混合整数规划问题进行求解。相比于单域映射算法ViNEYard,该模型不需要将混合整数规划问题进行松弛就可以求解。同时,有国内学者将虚拟网跨域问题转化为一个分层线性规划问题进行求解,并设计了相应的全局映射算法和本地映射算法,但上述算法都没有考虑运营商自私性问题。


虚拟网资源动态适配


在虚拟网运行的过程中,随着虚拟网的建立和撤销,使得原有的虚拟网映射方案将不再是最优方案,导致资源分配不均、服务质量下降等问题。因此,为了能够有效地对资源进行合理配置,提高映射请求的接收率,在虚拟网的运行过程中需要对资源分配方案进行动态地适配和调整。


虚拟网映射方案的动态调整会带来一定的计算开销和迁移开销。计算开销指运行动态调整算法所产生的时间开销。迁移开销包括:重新路由引起的丢包率上升、虚拟节点迁移带来的通信开销、重映射期间的服务中断所引发的用户体验质量下降。因此,为了使运营商的收益最大化,动态调整算法应尽可能地降低重映射虚拟网带来的开销。


虚拟网动态调整算法的触发条件可以分为三类:一种是周期性触发,是每隔一个固定的时间段就对虚拟网进行调整。第二种是过载触发,也就是当底层网络的负载不均衡并且部分节点和链路已经出现过载现象时,则触发动态调整算法。第三种是事件触发,比如底层网络中出现拓扑变化等事件时,则触发动态调整算法。周期性触发的优点是调整频率较为稳定,缺点是很难设定一个最优触发周期。过载触发和事件触发的优点是能及时根据网络的状态进行调整,缺点是可能触发虚拟网的频繁调整,从而带来较大的调整开销,并引起整个网络的震荡。


虚拟网的调整方法可以分为两类,一种是将整个虚拟网全部进行重映射,这种方法实现简单、调整效果较好,但调整开销太大。另一种是只对部分虚拟节点和链路进行迁移,这种方法开销较小,也是目前比较主流的调整手段。


虚拟网资源管理


在网络虚拟化环境中,如何对虚拟网进行管理将对整个网络系统的效率产生重要影响。虚拟网管理的核心问题是如何将有限的底层设备资源快速合理地分配给各个虚拟网,包括虚拟资源标识、虚拟资源监测、虚拟网生存性保障以及虚拟网故障监测等技术。一个优秀的管理框架应该能够有效提高底层设备的资源利用率,使底层网络能够承载更多的虚拟网,从而提高运营商的收益。


为了给虚拟网的管理框架提供技术支撑,Houidi等人提出了一种虚拟资源标识和快速检索机制,该机制将组成网络的元素分为四类,包括:节点、链路、接口、路径。每一种元素具有若干种属性,这些属性按照其变化频率可以分为静态属性和动态属性。静态属性通常指网络设备的某项资源的最大可用量或某项软硬件配置,比如某个节点的内存大小。除非对设备的硬件配置进行更改,否则静态属性在网络运行过程中是不会发生变化的。动态属性通常指网络设备的实时可用资源,比如某条链路的可用带宽。由于动态属性描述网络设备的实时状态,因此在网络运行过程中会经常变化。在查找符合需求的资源时如果要进行静态属性的匹配,则可以将所有网络设备按照树的方式组织起来,树的每一层代表一项静态属性,树上每个节点记录一个或多个设备在该项属性上的值。节点资源树的架构如图4所示。



图4  节点资源树


Soares和Miramura等人分别提出了具有自组织能力的分布式虚拟网管理框架。Ditrich提出了自组织的多域虚拟网映射框架AutoEmbed,包含了映射请求提交、虚拟网拓扑分割以及子网映射等一系列映射所需的基础功能。


此外,部分学者还将价格因素引入到虚拟网络的管理框架中,比如针对基础设施提供商的报价问题设计的一种多域环境下的竞价模型V-Mart。V-Mart首先按照映射代价最小的原则设计了一种启发式的虚拟网拓扑分割算法;然后设计了一种两阶段的 VicKrey竞价模型,在该模型的基础上进一步定义了基础设施提供商和服务提供商的定价策略和出价策略。Ghazar等人研究了如何通过引入网络资源的浮动价格机制来实现运营商利益的最大化。


在虚拟化环境下的资源感知方面,虚拟网管理架构Pressure提出了一整套集中式的资源状态信息监测/聚合与过滤策略,Pressure通过计算每个节点的压力值来制定信息汇聚节点的部署策略。而HotSpot框架则是通过计算每个节点的邻居节点数量来制定信息收集节点的部署策略。Pressure和HotSpot都无法自动获取信息收集节点的最优数量值,只能依靠管理员进行预先设定,且这两种方法都是将节点间的距离简单地定义为节点间的跳数,没有考虑时延等参数对状态监测和信息收集带来的影响。


展望


网络虚拟化技术不但在云计算、物联网等领域已经得到了广泛的运用,随着软件定义网络以及网络功能虚拟化等新技术的出现也给网络虚拟化的实现提供了新的平台,为网络虚拟化进一步广泛应用提供了强有力的技术支撑。


与此同时,这些新平台和技术的出现也给网络虚拟化的研究提出了很多挑战,如何在新平台上对底层网络资源进行划分、隔离和分配有待进一步深入研究。


综上所述,网络虚拟化技术势必会在未来网络体系架构中扮演更关键的作用。



喜欢
关注我们 ↓↓↓


请关注我们
我们是专门关注5G的第一大新媒体平台 :①5G标准化、技术、产品、业务、市场最新现状与趋势;②下一代广电无线网、广电融合网。


喜欢
分享本文 !

以上是关于兰巨龙:网络虚拟化技术综述的主要内容,如果未能解决你的问题,请参考以下文章

虚拟化下的网络安全监控技术应用

网络虚拟化技术与应用场景

Linux虚拟网络技术学习

常见的虚拟化技术

网络桥接

网络虚拟化技术对比