摘要:

服务功能链(SFC)是未来Internet的一项关键技术。 它旨在克服当前部署模型的僵化和静态限制。 该技术的应用依赖于可以将SFC最佳映射到衬底网络的算法。 这类算法称为“服务功能链资源分配(SFC-RA)”算法或“ VNF放置(VNFP)”算法。 本文介绍了SFCRA算法的最新研究概况。 介绍了公式和相关问题后,总结了SFC-RA问题的几种变体。 最后,我们讨论了几个未来的研究方向

I 介绍

随着Internet和网络服务的快速发展,出于技术原因,增值原因等原因,越来越多的中间箱被部署在网络中。最近的一篇论文表明,中间箱的数量与企业网络中的路由器数量相当[ 1]。 但是,中间盒意味着较高的资本支出(CAPEX)和运营支出(OPEX),此外,中间盒的部署或重新部署需要专业知识,这会增加OPEX并降低灵活性。
出现其他问题的事实是,通常需要流以特定顺序通过一系列中间盒,这通常称为服务功能链(SFC)[2]。 例如,当前的服务功能链部署模型是拓扑相关的和特定于设备的; 因此,添加,删除和修改服务功能链可能很麻烦且容易出错,更糟糕的是,这些任务可能无法完成。 所有这些功能都显示了当前部署模型的不足之处
在本文中,我们遵循IETF服务功能链工作组(IETF SFC WG)的约定使用术语“服务功能链”,其中SFC表示NFV和SDN上下文中的新型服务链部署模型。

未来的SFC部署模型将遵循NFV和SDN的理念。

SFC意味着数据流经过一个有序的实例功能进行处理,服务功能链的当前实现通常基于VLAN,基于策略的路由,单个VRF(虚拟路由和转发)等。

当前迫切需要动态,灵活和灵活的服务链部署模型。 这引起了业界和学术界的关注。 OpenDayLight [4]创建了一个有关SFC的项目,该项目旨在提供ODL在网络中提供服务链所需的基础结构(链接逻辑,API)以及用于定义此类链的最终用户应用程序。 同样,OpenStack [5]引入了扩展,以提供API和实现以支持SFC。 此外,IETF SFC WG有一些草案,它们演示了数据中心[6]和移动网络[7]中的SFC用例,以及RFC讨论了体系结构[8]和问题陈述。
此外,Quinn和Elzur[9]提出了一种封装,该封装被称为网络服务标头以实现SFC。 关于SFC的文献很多,例如,从故障中恢复[10],资源分配[11],服务功能规范。

SFC体系结构由四个逻辑构建块构成:分类器,服务功能转发器(SFF),服务功能(SF)和SFC代理。 图1说明了遍历SFC启用域的流程的基本过程(不包括SFC代理)。 当流进入启用SFC的域时,将对其进行分类,以定义流应穿越的服务功能路径(SFP)。 然后,将对该流进行封装,从而在必要时启用SFP选择和元数据信息共享。 封装之后,该流程将遍历封装定义的所有服务功能。 所有工作完成后,将删除封装,并且流程将离开启用SFC的域并继续其传输[8]。

NFVI中的服务功能映射问题是SFC实施中的主要挑战。 通过将VNF动态映射到物理硬件,可以使从现有硬件服务获得的优势最大化。 动态优化的资源分配是未来网络的主要特征,对于提供按需,节省成本和环保的网络服务至关重要。

这就需要有效的算法来确定将NFVI当前点(NFVI-PoP)VNF放置在哪个位置,以及由于故障,负载平衡等原因如何实现VNF迁移。SFC中的资源分配工作与虚拟环境密切相关。 网络嵌入(VNE),可以始终表述为优化问题,相关示例为[13、14、15、16]。例如,Mehraghdam等, [13]提出了一个混合整数二次约束程序(MIQCP),Addis等人,[14]提出了一个混合整数线性规划(MILP),而Moens和De Turck [15]将这个问题表述为一个整数线性规划(ILP)。 同样,古普塔等, [16]给出了没有算法的ILP公式。

但是,SFC-RA问题可以简化为两个众所周知的NP硬性优化问题-设施位置问题和广义分配问题(GAP)。 因此,SFC-RA问题也是NP难题[17],因此对于大实例来说是棘手的。 因此,需要启发式或近似算法,例如[18、17、19]。例如,Bari等, [18]利用ILP提出了一种基于Viterbi算法的启发式解决方案,该解决方案提供的解决方案在最佳解决方案的1.3倍之内。 此外,科恩等, 文献[17]表明,SFC-RA问题引入了一种新型的优化问题,并提供了近乎最佳的近似算法,从而保证了具有理论验证性能的布局。 夏等, [19]用二进制整数程序(BIP)将VNF放置在分组/光学数据中心中的问题公式化,并提出了一种启发式算法,但是这种公式和算法不适用于一般情况。

Xin和Chen [20]最近进行的一项调查提出了网络功能编排框架,尤其是网络功能放置策略。 此外,作者比较了不同的框架,并提出了不同的VNF放置方法的优缺点。 本文超越了上述文章提供的内容:对SFC-RA问题的所有变体进行了讨论,并对学术界提出的当前方法进行了分类,并对文献进行了更全面的调查。 此外,我们讨论了两个与SFC-RA问题密切相关的众所周知的问题,值得我们借鉴。 此外,我们提出了SFC-RA问题的正式和基本表述,该表述涵盖了所有变体的一般性,并且该表述可以用作研究SFC-RA问题的指南。 还提出了未来的研究方向。

II 基本配方和优化策略

NFV的应用引入了以下问题:如何通过NFVI实现虚拟资源,以及在SFC术语中如何放置服务功能链。 大量论文提出了基于场景的SFC-RA问题公式。 在本节中,提出了SFC-RA的基本公式。 该表述基于Bari等人的工作[18]。 特别是,我们不考虑在两个VNF之间映射虚拟链接,我们将在II-D节中进行讨论。

A 物理网络

物理网络是VNF实例化的地方。 在虚拟环境中,软件和硬件是分离的,这意味着网络功能在当前情况下与物理元素无关,我们可以更改软件以在单个物理元素上实现不同的服务功能。 因此,可以将物理网络元素视为具有处理,存储,通信等功能的构件。物理网络被建模为无向图G =(S,L),其中S和L分别表示节点和链路的集合。 假定所有节点都是NFVI-PoP。 但是,实际情况可能会有所不同,因为并非网络中的所有节点都已虚拟化,因此我们为简单起见。

B 虚拟网络功能

VNF是网络功能的虚拟版本,在当前的非虚拟化网络中通常称为中间盒。 例如,技术原因的网络元素,例如网络地址转换(NAT),防火墙(FW),动态主机配置协议(DHCP); 增值网络元素,例如恶意软件检测(MWD),合法拦截(LI); 和移动网络元素,例如TCP优化,视频优化器等[7,21]。 网络中存在不同种类的VNF,并且不同种类的VNF需要不同种类的资源和不同数量的资源。 例如,NAT不需要太多的计算资源,但是DPI可能需要更多的计算资源。

C.服务请求

在到达目的地的途中,必须通过网络功能实例的有序列表来引导流。 例如,图2所示的NAT,FW和IDS链。启用的服务功能链集代表运营商的服务,并根据运营商和最终用户之间就网络策略达成的服务协议构建。 集合T代表服务请求。 服务请求是从源到目的地的具有服务功能的有序列表路径。

D.SFC资源分配

在SFC-RA问题中,我们获得了物理网络,VNF规范和一组服务请求,因此,SFC-RA包含三个步骤:1计算所需的VNF类型的最佳数量,以及应该实例化的所有VNF,为了简化表示,VNF p∈P也表示p的类型。

我们将优化过程分为三个步骤,但是,这三个步骤不是独立的。 实际上,我们可能不遵循提出的建议。 例如,根据求解数学程序,不同的VNF放置和服务请求分配可以更改P的数量,并且我们可以同时获得三个步骤的所有解决方案。 我们这样做是为了使SFC-RA问题更加生动和易于理解.

一些文献假设两个VNF之间的路径由两个VNF的物理位置确定,这在当前的网络范式中是合理的。 另外,虚拟链接可能包含多个物理链接,这使我们的基本公式复杂化。 因此,为了简单起见,我们不考虑在我们的公式中映射虚拟链接。 但是,随着软件定义网络(SDN)的灵活性,一些文献操纵了VNF之间的路由路径,从而共同优化了SFCRA问题中的布局和路由问题[20]。 研究人员在必要时应考虑这一点。

E 优化方法

SFC-RA问题是NP难题[17]。因此,对于较大的问题(即较大的服务链和物理网络大小),解决该问题的成本变得难以承受。考虑到这种硬度,已经使用了几种方法来解决SFC-RA问题。确切的解决方案可以找到全局最优解,但是,它们始终会遇到较大的问题。因此,精确解决方案通常用于解决小实例,并为启发式解决方案提供最佳绑定参考。近似算法找到可以证明质量和运行时范围的近似解。 Heristic算法试图利用特定于问题的知识,而我们无法保证它们会找到最佳解决方案[22]。元启发法被正式定义为一种迭代生成过程,该过程通过组合智能的不同概念来探索和探索研究空间来引导从属启发法,并采用学习策略来构造信息,以便有效地找到接近最优的解决方案[23]。

1)精确解和逼近解:SFC-RA问题总是可以表述为优化问题,更确切地说,可以是整数线性规划(ILP)或混合整数线性规划(MILP)等。ILP通常是NP难的,但是,我们可以 使用几种精确的算法来求解ILP,例如分支定界,动态规划,切平面方法等。逼近解在最优解和算法复杂度之间进行权衡,因此,可以根据多项式的折衷找到一个多项式时间 最优性算法。

例如,Taleb等。 [24]使用ILP制定VNF
放置在移动网络中,并使用CPLEX,MATLAB和CVX解决该问题。 科恩等。 文献[17]给出了一个ILP公式,并提出了一种具有经过验证的性能并通过将问题简化为广义分配问题(GAP)来约束的近似算法。

2)启发式解决方案:服务链部署应该是低延迟或实时的,因此,在SFC-RA中首选快速启发式。因此,有大量针对SFC-RA问题的启发式解决方案。例如,Bari等。 [18]提出了一种基于动态规划的启发式算法来解决大型实例,它提供的解决方案是使用CPLEX解决ILP所获得的最优解决方案的1.3倍。 Mohammadkhan等。文献[25]给出了一种MILP公式和一种启发式算法,可以逐步解决该问题,从而可以解决传入流的问题而不影响现有流。

3)元启发式解决方案:元启发式算法是另一种克服SFC-RA问题难度的方法。许多元启发法可用于找到更好的解决方案,例如,模拟退火,禁忌搜索,遗传算法等。 [26]考虑在NFV环境中动态部署深度数据包检查(DPI)的问题。作者提出了一种基于遗传算法的方法,该方法在引擎数量和网络负载之间进行权衡,以最大程度地降低部署的总体成本。 Mijumbi等。 [27]考虑网络功能在NFV中的放置和调度。然后提出了贪婪算法和基于禁忌搜索的算法来有效解决该问题。

III. 相关问题

适当的资源分配是一个非常老的问题。 并且它具有不同学科中的大量实例,例如经济学[28],无线网络[29]等。在本节中,我们提出了计算机网络中的两个资源分配问题,它们与SFC-RA问题密切相关, 例如,VM在云计算和虚拟网络嵌入中的放置。 我们可以从两个经过充分研究的问题中汲取灵感。 我们还将讨论SFC-RA问题与每个问题之间的异同。

A.虚拟机放置

根据美国国家标准技术研究院(NIST)的定义,云计算是“一种模型,用于使人们能够对共享的可配置资源池(例如,网络,服务器)进行普遍,方便,按需的网络访问。 ,存储,应用程序和服务),可以用最少的管理工作或服务提供者的互动来快速地调配和发布[30]。” 在过去的几十年中,云计算被视为计算机科学中最有前途的技术之一[31]。

1)虚拟机放置简介:

从云数据中心向用户提供了资源(例如,计算,存储,网络等)作为服务,但用户并不拥有这些资源。因此,虚拟化被引入到云计算中,其中用户的请求在虚拟机(VM)上实现,而多个VM在物理机(PM)上实现。在PM内部,一层称为管理程序的软件控制着所有VM。由于Internet的动态功能,VM所需的资源会随时间变化。因此,为了确保服务水平协议(SLA),引入了VM迁移来克服此问题。例如,当流量增长时,VM进程会将流量迁移到具有足够资源的另一个VM。 VM迁移包括四个步骤。首先,选择要从中迁移VM的PM;其次,选择要迁移的VM;第三,选择将要放置虚拟机的PM;四,传输VM [32]。

选择适合宿主VM的合适PM的第三步(也称为VM放置)是一项艰巨的任务,因为云计算的性能直接受到VM放置的影响。由于VM放置的重要性,文献[33,34,35,36]提出了大量的VM放置方法。例如,孟等人。 [33]使用可感知流量的虚拟机布局来改善数据中心的网络可扩展性。作者将VM放置问题公式化为一个优化问题并证明其难度,并提出了两层近似算法来有效克服非常大的问题。

通常,VM放置是为虚拟机选择最合适的物理机的过程。根据[37],VM放置的共同目标是最大化资源利用率,可靠性和可用性等。 VM放置有多种变体,例如动态放置,多云放置等。

2)SFC-RA与VM放置之间的关系:

这两个问题具有相似之处,它们都试图将虚拟对象放置在适当的位置,这可以视为资源分配问题的两个变体。但是,不同的方案会导致不同的问题。

通常,SFC起源于电信行业,因此网络功能的性能和可靠性要求是电信级的。因此,SFC的性能应该是电信级的,这意味着SFC的部署应达到或超过五个九个高可用性标准,并通过冗余提供非常快速的故障恢复[38]。但是,由于云计算最常用于IT应用程序,因此云计算对性能和可靠性的要求较低。不同的性能要求导致不同的部署方案。例如,SFCRA可能需要更多的冗余以提高可靠性。由于云计算中的虚拟机托管在数据中心(DC)中,因此虚拟机放置的基础结构是同质的。但是,SFC-RA中的基础结构是异构的,可能涉及光网络,以太网,无线等。因此,这两个问题中的物理拓扑可能不同。另一个区别是SFC具有顺序要求,这意味着必须引导流量穿越预定义的有序网络功能[2]。表II总结了这两个问题的主要区别。

B.虚拟网络嵌入

网络虚拟化使基础架构与传统ISP中的服务脱钩,这导致了两个主要实体:基础架构提供商(InP)和服务提供商(SP)。 在此业务模型中,InP维护物理网络(基础结构),而SP从InP租用基础结构以构成其虚拟网络(VN)。 这种方法允许在一个物理网络中实例化多个VN,并且这些VN通常彼此独立[39、40]。

1)虚拟网络嵌入简介:

在网络虚拟化中,物理网络(也称为基础网络(SN))由InP拥有和维护。另外,物理网络由物理节点和物理链路组成。相反,虚拟网络由虚拟节点和虚拟链接组成。多个VN的共存导致了物理网络如何实现虚拟网络的问题,这是网络虚拟化的主要挑战,被称为虚拟网络嵌入(VNE)问题。正如我们提到的,VN和SN抽象都是由节点和链接组成的图。因此,在某种程度上,VNE问题是在物理网络拓扑中找到与虚拟网络拓扑同构的子图。图3给出了虚拟网络的示例。但是,由于虚拟链接可能是由几个物理节点和物理链接组成的物理路径,因此上述说明并非严格正确。由于VNE在网络虚拟化中的关键作用,学术界提出了很多建议,例如[41、42、43、44]。例如,Cheng等。 [41]应用马尔可夫随机游走模型基于其资源和拓扑属性对节点进行排名。然后,提出了两种算法。首先,根据虚拟节点的等级映射虚拟节点,并基于最短路径和不可拆分路径以及多商品流问题与可拆分路径映射虚拟链接。其次,基于广度优先搜索的回溯VNE算法。此外,也有一些关于VNE问题的调查[45,46]。

2)SFC-RA与VNE之间的关系:

ETSI NFV ISG使用术语虚拟网络功能转发图(VNF-FG)[47]代替了IETF SFC WG使用的服务功能链(SFC)[2]。在此术语中,VNF-FG由一组虚拟网络功能和一组虚拟链接组成,类似于虚拟网络。确实,VNF-FG和虚拟网络是相似的,但是,也存在一些重大差异。如第一节所述,在SFC-RA问题中,流量必须流经预定义的有序网络功能。但是,VNE没有此顺序要求。此外,虚拟网络功能可以由多个流共享。但是,不同的虚拟网络通常是独立的,即,虚拟网络A的流不遍历另一个虚拟网络B的虚拟节点(该流可以遍历承载B的虚拟节点的物理节点)。特别是,不同网络功能的数量是SFC-RA程序的结果,但是,我们事先知道虚拟网络的虚拟节点和虚拟链接的数量。表III总结了这两个问题的主要区别。

IV 不同形式的SFC问题

我们在第二部分介绍了一个基本的数学公式。 但是,在SFC-RA问题的不同变体中,有必要对基本配方进行修改。 例如,在对延迟敏感的网络中,我们必须考虑由VNF引起的处理延迟和由链路引起的传播延迟。 因此,在这种情况下,我们应该向模型添加延迟约束。 另外,在任何其他变体中,我们也应该修改基本公式。 在本节中,我们介绍SFC-RA问题的几种变体。 我们在表IV中总结了有关不同变体的文献。


A.基本

在基本表述中,我们不考虑SFC-RA问题的不同变体,例如动态,在线,多个提供者等。基本公式捕获了SFC-RA问题的变体所具有的共有特征。在本小节中,我们总结了基本的SFC-RA问题。例如,Riera等。 [48]提出了一种用于VNF转发图的分析模型,旨在优化部署的网络服务的执行时间。这项工作提出了最佳SFC-RA的配方;此外,引入了通用的经济指标,绩效指标等,以评估和比较不同的方法。因此,该分析模型可以用于不同的变体。 Ghaznavi等。 [49]将SFC-RA问题建模为混合整数编程(MIP),与基本模型不同,作者考虑了分布式VNF和工作负载平衡,因此其制定要比基本制定复杂得多。因此,提出了局部搜索启发式算法。同样,Luizelli等。 [50]将问题分解为树状阶段:(i)VNF的放置,(ii)将VNF分配给服务请求,(iii)链接VNF,这种见解与[18]中提出的想法相似。作者使用ILP对此问题建模并提出启发式方法。科恩等。 [17]声称SFC-RA问题可以简化为两个NP-hard问题,即设施位置问题和广义分配问题(GAP),这意味着SFC-RA问题也是NP-hard问题。因此,作者提出了一种基于求解GAP,然后将计算出的分数解舍入为整数解的近似算法。

B.动态

在上一节中,我们回顾了有关SFC-RA问题的大量文献。但是,文献假设网络是静态的。相反,如何在运行时分配资源是一个非常复杂的问题。尽管此问题与基本SFC-RA问题相似,但实时SFC-RA由于其动态功能而面临着重大的新挑战。首先,由于动态流量,VNF拥有的资源可能会扩展。例如,当流量减少时,DPI需要较少的计算资源。其次,由于服务请求的变化,VNF的QoS需求可能会发生变化。例如,当已建立的服务请求要求低延迟时,需要重新分配VNF。第三,我们应该监视VNF的可靠性问题。例如,当VNF发生故障时,我们需要为相应的服务请求重新分配VNF [51]。因此,为了克服这些挑战,我们应该重新考虑SFC-RA问题并提出新的解决方案。 Callegati等。 [52]使用OpenFlow正确地引导流量。根据案例研究和概念验证,作者声称第2层和第3层方法在功能上都可以实现动态SFC。 Shi等。 [51]有一个洞察力,即VNF资源不会同时分配。因此,提出了一种抢占式资源分配策略。为了实现该策略,作者将SFC-RA问题建模为马尔可夫决策过程(MDP)。另外,贝叶斯学习用于预测未来资源的可靠性。利用异步分区的概念[53],作者提出了一种基于MDP的算法。

C.在线

我们有时会考虑在线的服务请求,这意味着服务请求是一一到达的,并在到达时被嵌入。这些解决方案通常属于在线算法[54]。在这种情况下,由于新请求的到来,可能需要迁移VNF。 Mohammadkhan等。 [25]给出了一个MILP公式来确定SFC的位置,同时最小化节点和链接的资源利用率,以减少延迟。本文的重点是作者开发了一种启发式方法来逐步解决问题,它支持大型实例,并且可以解决传入流的问题而不影响现有流。 Lukovszki和Schmid [11]提出了一种确定性在线算法,该算法可实现竞争比为O(logl),其中节点容量至少为对数。此外,作者证明了该算法在确定性和随机情况下都是渐近最优的。最后,提出了一个ILP公式来表明问题是NP完全的。 Mijumbi等。 [27]考虑VNF的在线映射和调度问题。在这种情况下,将在需要时创建并嵌入每个服务,并且VM可以由多个VNF共享。此外,作者提出了三种贪婪算法和基于禁忌搜索的启发式算法。

D 多个服务提供者

服务功能可能取决于位置,例如,代理和缓存应放置在企业网络附近。因此,单个网络功能提供商(NFP)可能无法满足服务链中的位置限制,这需要多个NFP的协调[55]。此外,这种协调还有更多好处,例如改善客户体验,节省成本等。由于NFP在信息披露,互操作性等方面的限制,在多个NFP情况下出现了新的挑战。 Abujoda和Papadimitriou [56]提出了一种架构,称为MIDAS,用于在每个NFP中使用集中式middblebox控制器来协调处理设置。 MIDAS具有三个基本步骤:中间盒信令,控制器链接和多方计算(MPC)。首先,MIDAS使用信令协议来发现合并的中间盒(CoMB)。然后,MIDAS在发现的CoMB的控制器之间建立一条链。然后,MIDAS在每个NFP中选择CoMB,并通过其控制器的协作分配NFP。最后,在选择CoMB时,控制器指示分配的CoMB安装和配置所需的处理模块(PM)。 Dietrich等。 [55]首先介绍了一种新的服务模型,以简化服务请求的规范和带宽需求的估计。此外,作者提出了针对SFC-RA问题的拓扑抽象,其中隐藏了NFP的机密信息。然后,提出了一个嵌入服务请求的系统,称为Nestor。内斯特有三个主要步骤。图形渲染:使用每个NFP生成的拓扑抽象,构建涵盖所有NGP的抽象拓扑。请求分区:在NFP之间对服务请求进行分区。 NF子图映射:将NF子图映射到相应的NFP。

E.调度

在NFV术语中,资源节省是通过按需分配资源来实现的。另外,为了提高资源利用率,使用调度技术允许VNF共享资源是可行的。 McGrath等。 [57]展示了一个使用资源感知调度方法的演示,以确保在NFV上下文中资源的最佳使用和性能。 Ferrer Riera等。 [58,59]将VNF调度问题表述为资源受限项目调度问题(RCPSP)。同样,Mijumbi等。 [27]使用MILP来制定在线虚拟功能映射和调度问题。并且作者提出了三种贪婪算法和基于禁忌搜索的启发式算法。 Li和Qian [60]提出了一种新颖的多资源公平调度算法Myopia,它支持诸如NFV的多资源环境。利用Internet流量由大象流和老鼠流组成的事实,近视精确地调度了大象流,并使用先进先出(FIFO)处理老鼠流。因此,近视被认为是一种低复杂度和节省空间的分组调度算法。

F.移动网络

移动网络与Internet有很多差异,在服务链部署中应考虑这些差异。例如,与固定网络相比,无线接入网络中的节点具有另一种资源,即无线电资源[61]。但是,在演进的分组核心(EPC)中,节点没有无线电资源。但是我们通常假设每个节点在固定网络中都具有各种资源。在EPC中,存在固定类型的网络功能和服务功能链,比固定网络更简单。 EPC的一个示例如图4所示。此外,用户移动性是固定网络和移动网络之间最大的差异之一。用户数据的移动性可能导致服务网关(SGW)或移动性管理实体(MME)的重新定位,这会增加成本并影响整体QoE [62]。此外,移动网络具有比Internet更多的服务功能,例如TCP优化器,视频优化器,头扩展等,在分配资源时应考虑这些功能。 Taleb等。 [63]演示了按需创建基于云的弹性移动核心网络的可行性,并提出了EPC即服务(EPCaaS)的要求和挑战。然后,作者讨论了几种实现方案。鲍姆加特纳(Baumgartner)等。 [64]提出了一个MILP,以针对延迟范围对虚拟移动核心网络嵌入进行建模。 Taleb和Ksentini [62]考虑到由于用户移动性而需要避免或最小化网关的重定位,并提出了一种有效的网络功能放置算法来实现移动云。 Taleb等。 [63]演示了按需创建基于云的弹性移动核心网络的可行性,并提出了EPC即服务(EPCaaS)的要求和挑战。然后,作者讨论了几种实现方案。鲍姆加特纳(Baumgartner)等。 [64]提出了一个MILP,以针对延迟范围对虚拟移动核心网络嵌入进行建模。 Taleb和Ksentini [62]考虑到由于用户移动性而需要避免或最小化网关的重定位,并提出了一种有效的网络功能放置算法来实现移动云。 Taleb等。文献[24]考虑了在移动核心网中部署VNF的两个相互矛盾的目标,即通过将数据锚定网关更靠近用户放置来保证QoE,以及通过将VNF放置得离用户足够远来避免移动锚定网关的重定位。提出了三种解决方案,两种解决方案偏向于一个目标,而第三种试图通过纳什理论在两个目标之间寻求公平的权衡。

V. 将来的研究工作和方向

在对有关SFC-RA问题的文献进行调查之后,我们对这个问题有了全面的了解。 尽管已经发表了大量论文,在前面的章节中进行了讨论,但是SFC-RA仍处于早期阶段。 我们之前提到的作品需要更全面的研究。 而且,仍然存在重要的研究方向需要研究。 本节讨论未来的研究方向。

A.弹性

A.弹性由于云计算和网络虚拟化的发展,虚拟化数据中心已部署在云提供商的基础架构中。但是,在电信领域,还没有广泛的部署。 IT和电信的最大区别之一是性能要求:电信的性能要求为五个九,而IT领域则没有这样的严格要求。电信的其他性能要求是自动服务恢复,受中断困扰的数量有限的用户等[94]。在处理SFC中的弹性问题时,解决方案可以利用MAC或IP级别的冗余机制,例如虚拟路由器冗余协议(VRRP)。同样,特别是对于SF故障,与SFF并置或作为服务功能交付机制一部分的负载平衡器可以提供这种鲁棒性[8]。 Lee和Shin [10]考虑了由于服务功能故障而导致的服务功能路径恢复。作者提出了一种方案,该方案通过将故障中的服务功能的职责转移到具有数据平面信令的另一服务功能来从故障中临时恢复业务路径。另外,作者打算研究最佳选择远程SFF的算法。范等。 [78]考虑可用性感知SFC映射的问题。作者提出了一种新颖的增强型联合保护(JP)方法,该方法优于传统的专用保护(DP)和共享保护(SP)。在证明可用性感知SFC映射的NP硬度后,作者提出了一种具有理论下界的近似算法。 Schöller等。 [95]介绍了一种在云基础架构上部署VNF的架构。作者还利用OpenStack中的可用区概念来确保服务部署的弹性。尤其是,有很多关于弹性虚拟网络嵌入的文献,例如[96,97,98],值得借鉴。例如,Rahman和Boutaba [96]认为InP网络并非始终处于运行状态。为了解决这种情况下的VNE问题,作者提出了一种主动的混合策略启发式方法。混合策略基于快速重新路由策略,并利用预先保留的配额在每个物理链路上进行备份

B.分布式SFC-RA

我们提到的大多数文献都提出了集中式方法,这意味着单个节点可以计算所有资源分配。集中式方法存在可伸缩性问题,此外,在某些情况下,例如多个提供者和多个管理域,集中式算法可能不可行。因此,分布式方法似乎是克服这些挑战的可行解决方案。此外,ETSI NFV ISG还提供了有关分布式NFV的PoC提案,该提案被称为多供应商分布式NFV1。正如我们在第IV-D节中讨论的那样,由于位置限制和节省成本等多种原因,我们应该考虑在多个提供商的情况下考虑SFC-RA问题,在这种情况下,多个网络功能提供商合作以组成服务链。在这种情况下,分布式SFC-RA是必需的,因为我们无法计算单个节点中所有的VNF嵌入。因此,Nestor [55],MIDAS [56]和DistNSE [83]提出了SFC-RA的分布式方法。在上述情况下,不同的网络功能提供者是同质的,这意味着提供者具有相同的网络功能。罗莎等。 [99]考虑了一种异构环境,在该环境中,服务链跨越了多个管理域,即数据中心,运营商和CPE。作者声称,优化VNF在不同位置的位置具有多个优势,例如,通过使VNF更加贴近用户来最大化QoE,以及通过在数据中心整合更多的VNF来最大限度地降低成本。此外,作者讨论了多域分布式NFV的三个用例,即管理和编排(MANO),带宽协商和可靠性。总之,我们需要新颖的算法来处理分布式NFV环境中的SFCRA问题,以进行优化考虑。

C.数据中心中的SFC-RA

数据中心(DC)上下文中有两种主要的流量类型:南北和东西方。南北流量来自DC外部,通常与用户相关联。东西方流量起源于一个DC,最后一个DC终止,这是当今数据中心的主要流量。因此,在DC环境中有两种SFC:DC内部SFC和DC间SFC [6]。 DC的最大特征之一就是物理拓扑的规律性,其典型架构是多层树,胖树,BCube,DCell等[92]。另外,DC通常是同质的,这意味着服务器具有相同的计算,存储和通信能力。利用DC的功能,我们可以设计适合DC环境的SFC-RA算法。例如,Herker等。 [92]考虑将网络功能链嵌入到DC中。利用不同的备份策略和算法,提出了在DC中嵌入弹性服务链。此外,作者研究了DC体系结构对SFC嵌入可用性的影响。从本文的结果来看,两层树形拓扑是实现SFC嵌入的高可用性的最佳拓扑。方新等。 [91]考虑带宽保证的VNF在DC中的放置和缩放。利用DC网络的树状拓扑,作者提出了一种在线启发式算法,该算法可实现近似最优分配。

VI结论

服务功能链资源分配是在NFV环境中部署服务功能链要解决的关键问题。计算最佳分配解决方案的问题是NP难题,因此对于大问题规模无法解决。因此,强烈需要有效的算法来解决该问题。迄今为止,文献中已经提出了大量的方法。在本文中,我们对当前在该研究方向上的工作进行了概述。提出了正式的公式和几种优化策略。我们讨论了SFC-RA问题与虚拟机放置问题和虚拟网络嵌入问题之间的关系。然后,我们介绍了几种变体,并总结了解决问题的不同方法。在这个领域有很多未来工作的机会。服务功能链的高弹性要求是其主要功能之一,在部署阶段应引起高度重视。值得注意的是,很少有文献关注分布式SFC-RA问题。这是未来工作的有希望的一点,因为集中化方法遭受可伸缩性问题,并且在某些情况下(例如,多个提供商)可能是不可行的。此外,利用数据中心的专有功能,可以为数据中心环境设计更合适的算法

Service Function Chaining Resource Allocation: A Survey的更多相关文章

  1. 服务链(Service Chaining,or Service Function Chaining,SFC,功能服务链)

    Software-configured  service  chaining  provides  the  capability  to  dynamically include best-of-b ...

  2. Traffic Steering for Service Function Chaining

    Introduction 目前通过vlan标签来把流量引向对应的sfc 以前的sfc静态(SFs相邻组成SFC),有了sdn之后具有动态性.(SFs不需要彼此相邻.将流量动态地导向所需的SFs.) 流 ...

  3. [1-2] Dependence-Aware Service Function Chain Design and Mapping

    文献名称:Dependence-Aware Service Function Chain Design and Mapping 文献类型(期刊.硕论.博论):会议:Globecom 发表年份:2017 ...

  4. Spark动态资源分配-Dynamic Resource Allocation

    微信搜索lxw1234bigdata | 邀请体验:数阅–数据管理.OLAP分析与可视化平台 | 赞助作者:赞助作者 Spark动态资源分配-Dynamic Resource Allocation S ...

  5. hdu 3288 Resource Allocation

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3288 Resource Allocation Description HDU-Sailormoon i ...

  6. Hadoop Aggregate Resource Allocation解释

    1.在hadoop里面运行程序的时候,查看某个任务的具体信息如下: [hadoop@master monitor]$ yarn application -list 如上图,这里面的Aggregate ...

  7. Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier、@scope

    以下内容摘自部分网友的,并加上了自己的理解 @Service用于标注业务层组件(我们通常定义的service层就用这个) @Controller用于标注控制层组件(如struts中的action.Sp ...

  8. Spring注解 @Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier 解析

    @Repository.@Service.@Controller 这几个是一个类型,其实@Component 跟他们也是一个类型的 Spring 2.5 中除了提供 @Component 注释外,还定 ...

  9. 关于Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier 解析

    1.Spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service和 @Controller 其实这三个跟@Com ...

随机推荐

  1. DataPipeline如何实现数据质量管理?

    数据质量管理已经成为数据治理的重要组成部分.高质量的数据是企业进行决策的重要依据. DataPipeline数据质量平台整合了数据质量分析.质量校验.质量监控等多方面特性, 以保证数据质量的完整性.一 ...

  2. nepenthes用法

    安装 # apt-get install nepenthes 配置文件 # vi submit-file.conf submit-file { path "/var/lib/nepenthe ...

  3. Unity shader error: “Too many texture interpolators would be used for ForwardBase pass”

    Unity shader error: "Too many texture interpolators would be used for ForwardBase pass" 解决 ...

  4. Jmeter计数器的使用-转载

    说一下jmeter中,配置元件-计数器的使用. 如果需要引用的数据量较大,且要求不能重复或者需要自增,那么可以使用计数器来实现. 1.启动jmeter,添加线程组,右键添加配置元件——计数器,如下图: ...

  5. Flask--登录验证(多个装饰器)

    登录验证(多个装饰器) from flask import Flask,url_for,session,render_template import functools app = Flask(__n ...

  6. 蓝桥杯-基础练习 :java 数列排序问题

    问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列.1<=n<=200 输入格式 第一行为一个整数n. 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000. 输 ...

  7. VS Code好用到飞起的配置设置

    Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows,macOS和Linux.它内置了对JavaScript,TypeScript和Node. ...

  8. 性能测试基础---URL和HTTP协议

    ·URL和HTTP协议: ·URL构成: URL是web应用进行资源访问的主要方式.一般来说,由五个部分构成: 示例:http://192.168.2.212/phpwind1/searcher.ph ...

  9. The Tower(HDU6559+2018年吉林站+数学)

    题目链接 传送门 题意 告诉你圆锥的底部圆的半径和圆锥的高,再给你一个点的坐标及其运动向量,问你这个点什么时候会与这个圆锥相撞. 思路 比赛场上二分一直没过但是有人二分过了,今天再写这题想再试下二分, ...

  10. requireJS的基本使用

    requireJS的基本使用 一.总结 一句话总结: requireJS是js端模块化开发,主要是实现js的异步加载,和管理模块之间的依赖关系,便于代码的编写和维护 1.页面加载的js文件过多的缺点是 ...