«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (7): 140-145, 154  DOI: 10.19678/j.issn.1000-3428.0058226
0

引用本文  

赵季红, 乔琳琳, 曲桦, 等. 基于业务类型的网络切片可靠性映射算法[J]. 计算机工程, 2021, 47(7), 140-145, 154. DOI: 10.19678/j.issn.1000-3428.0058226.
ZHAO Jihong, QIAO Linlin, QU Hua, et al. Reliability Mapping Algorithm for Network Slicing Based on Service Type[J]. Computer Engineering, 2021, 47(7), 140-145, 154. DOI: 10.19678/j.issn.1000-3428.0058226.

基金项目

国家自然科学基金(61531013);国家科技重大专项(2018ZX03001016)

作者简介

赵季红(1963-), 女, 教授、博士生导师, 主研方向为带宽通信网、新一代网络管理与控制;
乔琳琳, 硕士研究生;
曲桦, 教授、博士生导师;
张文娟, 硕士研究生

文章历史

收稿日期:2020-05-03
修回日期:2020-07-15
基于业务类型的网络切片可靠性映射算法
赵季红1,2 , 乔琳琳1 , 曲桦2 , 张文娟1     
1. 西安邮电大学 通信与信息工程学院, 西安 710121;
2. 西安交通大学 电子信息工程学院, 西安 710049
摘要:网络切片是5G网络的基础架构技术,为在多个切片共享同一底层网络资源的同时保证切片的可靠性,提出一种区分业务类型的网络切片可靠性映射算法,解决底层网络链路故障、网络切片可靠性与资源利用率相互矛盾的问题。通过区分切片承载业务类型,对高可靠低时延切片请求的链路提前构建备份路径,并采用基于最大生成树链路的备份资源共享保护方法,对高带宽切片请求则采用基于链路可靠性的重映射算法恢复故障链路。仿真结果验证了该算法的有效性,与SVNE1+1和DPS-VNRA算法相比,其在切片成功运行率、长期收益开销比、物理链路利用率和故障恢复率方面均具有优势。
关键词网络切片    底层网络链路故障    区分业务类型    链路保护    重映射    
Reliability Mapping Algorithm for Network Slicing Based on Service Type
ZHAO Jihong1,2 , QIAO Linlin1 , QU Hua2 , ZHANG Wenjuan1     
1. School of Communication and Information Engineering, Xi'an University of Post and Telecommunications, Xi'an 710121, China;
2. School of Electronic and Information Engineering, Xi'an Jiaotong University, Xi'an 710049, China
Abstract: Network slicing is the basic architecture technology of 5G networks.In order to ensure the reliability of slices sharing the same underlying network resources, a reliability mapping algorithm for network slicing that distinguishes service types is proposed to solve the conflicts between the underlying network link failures, network slicing reliability and resource utilization.By distinguishing the types of services that slices bear, a backup path is constructed in advance for the links requested by high-reliability and low-latency slices.The backup resource sharing protection method based on maximum spanning tree link is adopted, and the remapping algorithm based on link reliability is adopted for the request of high-bandwidth slices.In this way, the failed link can be restored.The simulation results verify the effectiveness of the algorithm, and its advantages over SVNE1+1 and DPS-VNRA algorithms in the successful operation rate of slices, ratio of long-term benefits to costs, physical link utilization rate, and failure restoration rate.
Key words: Network Slicing(NS)    underlying network link failure    distinguish service type    link protection    remapping    

开放科学(资源服务)标志码(OSID):

0 概述

网络切片(Network Slicing,NS)是5G网络中的关键架构技术[1]。软件定义网络(Software Defined Network,SDN)和网络功能虚拟化(Network Function Virtualization,NFV)使网络切片能够以经济高效的方式满足5G业务多样性的需求[2-4],但与此同时也存在一些问题[5],其中关键问题之一是如何确保网络切片对底层网络软件和硬件故障的恢复能力。在网络运行过程中,当底层网络发生故障时,保障网络切片上的多样性业务正常运行是非常必要的,然而现阶段SDN/NFV网络切片中的弹性和可靠性问题尚未得到较好解决[6]

目前,关于网络切片可靠性问题的研究较少。文献[7]考虑到每个切片的流量需求是随机的并且流量的剧烈变化可能会导致切片重新配置,从重映射恢复切片和重新配置切片两个角度设计切片的弹性机制。本文从底层链路故障出发,基于可生存性虚拟网络映射(Survivable Virtual Network Embedding,SVNE)[8]来解决网络切片可靠性问题。网络虚拟环境中对链路故障的研究主要分为恢复策略和保护策略[9]。恢复策略不预备任何备份资源,在链路故障时重映射故障链路,在底层资源有限的情况下,并不能保证恢复所有的故障链路[10]。保护机制又可分为专用保护[11]和共享保护[12]。文献[13]针对链路故障,为每条链路采用1∶1保护方法,尽管使虚拟网的生存性得到了保障,但这样的备份方法在网络正常工作时浪费了大量的底层资源。文献[14-15]在为链路备份资源时虽然引入了资源共享机制,快速了恢复故障,但是资源消耗依然很大。文献[16]将网络编码和p圈保护相结合,对核心链路提供1+N保护。该方法虽然能够提高底层资源利用率并且保证虚拟网的可靠性,但过程相对复杂。以上解决链路故障问题的方法大都在共享保护策略上加以改进,并未对业务类型进行分类。

单一的应对故障的方法不能有效处理网络切片业务类型多需求的问题。在实际网络环境下,当一条物理链路发生故障时,引起失效的多个切片可能承载不同的业务类型。在承载自动驾驶、远程控制、远程医疗手术等对时延和可靠性极其敏感的业务时,发生故障应立即处理;而在承载高清视频等高带宽通信业务时,则可给予此类故障一定的恢复时延。因此,当链路发生故障时,应先判断失效切片的类型,再选取适当的方法应对故障。

本文提出一种区分业务类型的网络切片可靠性映射方法。针对单链路故障失效的切片请求,遵循区分业务原则对其进行划分。若故障链路承载高可靠性低时延业务类型,则将其直接迁移到备份链路,映射时对该切片请求中的最大生成树链路(Maximum Spanning Tree Link,MSTL)进行备份,在提供共享保护的同时减少备份资源消耗;若故障链路承载高带宽业务类型,则为其寻找满足约束条件的高可靠性链路进行重映射,以此来提高故障恢复率。

1 问题描述与系统模型 1.1 物理平面和网络切片请求

物理底层网络(Substrate Network,SN)定义为加权无向图$ {G}^{\mathrm{S}}=\left({N}^{\mathrm{S}}, {E}^{\mathrm{S}}\right) $。其中,$ {N}^{\mathrm{S}} $为物理节点集合,$ {E}^{\mathrm{S}} $为物理链路集合。每个节点$ {n}^{\mathrm{s}}\in {N}^{\mathrm{S}} $的节点属性包括节点CPU资源$ c\left({n}^{\mathrm{s}}\right) $和每个物理链路$ {l}^{\mathrm{s}}\in {E}^{\mathrm{S}} $的带宽资源$ b\left({l}^{\mathrm{s}}\right) $。网络切片同样定义加权无向图$ {G}^{\mathrm{V}}=({N}^{\mathrm{V}}, {E}^{\mathrm{V}}) $。每个虚拟节点$ {n}^{\mathrm{v}}\in {N}^{\mathrm{V}} $的节点CPU资源需求用$ c\left({n}^{\mathrm{v}}\right) $表示,每个虚拟链路$ {l}^{\mathrm{v}}\in {E}^{\mathrm{V}} $的带宽需求用$ b\left({l}^{\mathrm{v}}\right) $表示。

1.2 切片映射描述

本节针对网络切片可靠性问题构建一个混合整数规划模型,对约束条件和目标函数进行表述。

1.2.1 切片基本映射过程

分节点映射和链路映射两部分介绍切片的基本映射过程。

1)节点映射

本文主要关注链路映射,节点映射采取贪婪的算法[17],这种算法与递归算法和元优化算法(例如模拟退火算法)相比既简单又高效。贪婪算法将节点映射到底层资源最充足的节点上,有利于映射成功。约束条件包括:

$ \forall {n}^{\mathrm{v}}\in {N}^{\mathrm{V}}, \forall {n}^{\mathrm{s}}\in {N}^{\mathrm{S}} $
$ x\left({n}^{\mathrm{v}}, {n}^{\mathrm{s}}\right)=\left\{\begin{array}{l}1, \mathrm{虚}\mathrm{拟}\mathrm{节}\mathrm{点}{n}^{\mathrm{v}}\mathrm{映}\mathrm{射}\mathrm{至}\mathrm{物}\mathrm{理}\mathrm{节}\mathrm{点}{n}^{\mathrm{s}}\\ 0, \mathrm{否}\mathrm{则}\end{array}\right. $ (1)
$ x\left({n}^{\mathrm{v}}, {n}^{\mathrm{s}}\right)\times c\left({n}^{\mathrm{v}}\right)\le c\left({n}^{\mathrm{s}}\right) $ (2)
$ \sum \limits_{{n}^{\mathrm{v}}\in {N}^{\mathrm{V}}}x\left({n}^{\mathrm{v}}, {n}^{\mathrm{s}}\right)\le 1 $ (3)

式(2)表示虚拟节点CPU需求不得超过底层节点的CPU资源,式(3)保证底层节点最多承载来自同一切片中的一个节点。

2)链路映射

将已完成映射的节点作为端点进行链路映射。底层网络的物理链路的带宽资源必须满足所承载虚拟链路的带宽需求,约束条件包括:

$ \forall {l}^{\mathrm{v}}\in {E}^{\mathrm{V}}, \forall {l}^{\mathrm{s}}\in {E}^{\mathrm{S}} $
$ y\left({l}^{\mathrm{v}}, {l}^{\mathrm{s}}\right)=\left\{\begin{array}{l}1, \mathrm{虚}\mathrm{拟}\mathrm{链}\mathrm{路}{l}^{\mathrm{v}}\mathrm{映}\mathrm{射}\mathrm{至}\mathrm{物}\mathrm{理}\mathrm{链}\mathrm{路}{l}^{\mathrm{s}}\\ 0, \mathrm{否}\mathrm{则}\end{array}\right. $ (4)
$ \sum \limits_{{l}^{\mathrm{s}}\in {E}^{\mathrm{S}}}y\left({l}^{\mathrm{v}}, {l}^{\mathrm{s}}\right)\times b\left({l}^{\mathrm{v}}\right)\le b\left({l}^{\mathrm{s}}\right) $ (5)
1.2.2 切片可靠性问题描述

网络切片可靠性映射本质上与可生存性虚拟网映射[7]类似,即在映射过程中加入故障恢复策略以确保底层网络故障时NS能够快速恢复,并保证网络服务的连续性。图 1是切片请求映射示意图,下文分别描述2种业务类型切片的可靠性问题。

Download:
图 1 切片请求映射示例 Fig. 1 Example of slice request mapping

1)高可靠性低时延切片请求可靠性映射

对于这一类请求,在映射工作路径的同时,设计一种基于最大生成树链路的备份资源共享保护方法。如图 1所示,将虚拟链路分为最大生成树(Maximum Spanning Tree,MST)链路(a,b)、(a,c)和非最大生成树(Non-Maximum Spanning Tree,NMST)链路(b,c)。虚拟链路映射方案为{(a,b)→(B,C),(a,c)→(B,E),(b,c)→(C,E)},MST链路备份保护方案为{(a,b)→(B,A,C),(a,c)→(B,D,E)}。NMST链路通过与MST链路共享备份资源获得间接保护:{(b,c)→(C,A,B,D,E)}。

在映射过程中,不仅要避免将MST链路和NMST链路映射到同一SN路径,而且还要避免主要路径和备份路径重合,约束条件包括:

$ \forall {l}^{\mathrm{v}}\in {E}_{\mathrm{M}\mathrm{S}\mathrm{T}}^{\mathrm{V}}, \forall {l}^{\mathrm{s}}\in {E}^{\mathrm{S}}, z({l}^{\mathrm{v}}, {l}^{\mathrm{s}})=1 $ (6)
$ \forall {l}^{\mathrm{v}\mathrm{'}}\in {E}_{\mathrm{N}\mathrm{M}\mathrm{S}\mathrm{T}}^{\mathrm{V}}, \forall {l}^{\mathrm{s}}\in {l}^{\mathrm{s}\mathrm{'}}, z({l}^{\mathrm{v}\mathrm{'}}, {l}^{\mathrm{s}\mathrm{'}})=1 $ (7)
$ \begin{array}{l}\mathrm{if}\ z({l}^{\mathrm{v}}, {l}^{\mathrm{s}})=1\\ z({l}^{\mathrm{v}}, {l}^{\mathrm{s}})+z({l}^{\mathrm{v}\mathrm{'}}, {l}^{\mathrm{s}\mathrm{'}})\le 1\end{array} $ (8)

式(6)表示切片请求中MST的虚拟链路$ {l}^{\mathrm{v}} $映射至物理链路$ {l}^{\mathrm{s}} $,式(7)表示切片请求中NMST的虚拟链路$ {l}^{\mathrm{v}\mathrm{'}} $映射至物理链路$ {l}^{\mathrm{s}\mathrm{'}} $,式(8)表示同一切片请求中的MST链路和NMST链路不能映射至同一条物理链路。

$ \forall {l}^{\mathrm{v}}\in {E}^{\mathrm{V}}, \forall {l}_{\mathrm{b}}^{\mathrm{s}}\in {E}^{\mathrm{S}}, o({l}^{\mathrm{v}}, {l}_{\mathrm{b}}^{\mathrm{s}})=1 $ (9)
$ y({l}^{\mathrm{v}}, {l}^{\mathrm{s}})+y({l}^{\mathrm{v}}, {l}_{\mathrm{b}}^{\mathrm{s}})\le 1 $ (10)

式(9)中的$ {l}_{\mathrm{b}}^{\mathrm{s}} $表示虚拟链路$ {l}^{\mathrm{v}} $的备份链路,式(10)表示备份映射路径与主路径映射不能重合。

2)高带宽切片请求可靠性映射

如果要恢复因底层链路故障而失效的高带宽切片请求,就需要为其重新分配资源。给定底层网络$ {G}^{\mathrm{S}} $以及失效的这一类切片请求,对于图 1中的切片映射关系,若底层链路(D,F)发生故障,则将虚拟故障链路(d,e)重映射至底层链路(D,E,F)。

3)链路可靠性定义

将高带宽请求中故障链路映射在高可靠性底层链路能够提高恢复率。链路发生故障的次数以及可用资源都是影响底层链路可靠性的因素。链路可靠性与其发生故障次数以及所承载的虚拟链路成反比,与链路剩余资源成正比。借鉴文献[18]定义节点可靠性的思想,将链路可靠性定义如下:

$ r\left({l}^{\mathrm{s}}\right)=\frac{{b}_{\mathrm{r}}\left({l}^{\mathrm{s}}\right)}{\left(f\right({l}^{\mathrm{s}})+1)\times \left(m\right({l}^{\mathrm{s}})+1)} $ (11)

其中:$ {b}_{\mathrm{r}}\left({l}^{\mathrm{s}}\right) $表示物理链路$ {l}^{\mathrm{s}} $剩余带宽资源;$ f\left({l}^{\mathrm{s}}\right) $表示物理链路$ {l}^{\mathrm{s}} $的失效次数;$ m\left({l}^{\mathrm{s}}\right) $表示物理链路$ {l}^{\mathrm{s}} $所承载虚拟链路的数量。

1.3 目标函数

由于要对部分切片请求采取备份,为提高物理资源利用率,用最少的物理资源接受更多的切片请求,以最大化底层剩余资源为映射目标。

$ \mathrm{m}\mathrm{a}\mathrm{x}\left\{\alpha \sum \limits_{{n}^{\mathrm{s}}\in {N}^{\mathrm{S}}}{c}_{\mathrm{r}}\left({n}^{\mathrm{s}}\right)+\beta \sum \limits_{{l}^{\mathrm{s}}\in {E}^{\mathrm{S}}}{b}_{\mathrm{r}}\left({l}^{\mathrm{s}}\right)\right\} $ (12)

其中:$ \alpha $$ \beta $分别表示节点资源和链路资源的价值转换权重;$ {c}_{\mathrm{r}}\left({n}^{\mathrm{s}}\right) $表示节点剩余资源;$ {b}_{\mathrm{r}}\left({l}^{\mathrm{s}}\right) $表示链路剩余带宽资源。剩余资源越大表示有更多的可用资源去承载更多的切片请求。

1.4 问题复杂性分析

混合整数规划问题在本质上是一个NP-hard问题,这使得在大规模网络环境中不能直接使用此模型来求解。为解决这个问题,本文提出一种基于上述数学模型快速恢复故障链路的启发式算法。

2 区分业务类型的网络切片故障恢复策略

本文根据不同的切片承载业务类型,提出对故障切片采取不同的故障恢复策略。该策略对高可靠低时延业务请求提供备份,对高带宽切片请求故障链路采取重映射,这样既能满足故障的快速修复,又能减少资源消耗。该策略包括区分失效切片请求以及完成高可靠性低时延切片备份链路构建。整个策略的算法描述如下:

算法1  区分业务类型的链路故障恢复

输入  $ {G}^{\mathrm{S}} $,受影响NS请求$ \overline{{G}_{\mathrm{R}}}=\left(\overline{{G}_{1}}, \overline{{G}_{2}}, \cdots , \overline{{G}_{i}}\right) $,底层故障链路$ {l}_{\mathrm{f}}^{\mathrm{s}} $

输出  恢复路径$ {P}_{\mathrm{W}} $

1.for all $ \overline{{\mathrm{G}}_{\mathrm{i}}}\in \overline{{\mathrm{G}}_{\mathrm{R}}} $ do

2.判断受影响切片请求类型

3.if type-1 then

4.判断虚拟故障链路$ {\mathrm{l}}_{\mathrm{f}}^{\mathrm{v}} $备份路径$ {\mathrm{P}}_{\mathrm{W}} $是否可用

5.if $ {\mathrm{P}}_{\mathrm{W}} $可用

6.将故障链路$ {\mathrm{l}}_{\mathrm{f}}^{\mathrm{v}} $迁移到备份链路

7.return $ {\mathrm{P}}_{\mathrm{W}} $

8.else

9.return failed

10.else

11.删除$ {\mathrm{G}}^{\mathrm{S}} $中故障链路$ {\mathrm{l}}_{\mathrm{f}}^{\mathrm{s}} $并更新网络邻接矩阵

12.通过k-shortest算法为故障链路$ {\mathrm{l}}_{\mathrm{f}}^{\mathrm{v}} $寻找满足带宽约束$ \mathrm{w}\left({\mathrm{l}}_{\mathrm{f}}^{\mathrm{s}}\right)\le {\mathrm{b}}_{\mathrm{r}}\left({\mathrm{l}}^{\mathrm{s}}\right) $的路径集合$ \mathrm{\Omega }\left({\mathrm{l}}_{\mathrm{f}}^{\mathrm{v}}\right) $

13.for each path in $ \mathrm{\Omega }\left({\mathrm{l}}_{\mathrm{f}}^{\mathrm{v}}\right) $ do

14.根据式(11)所示约束条件计算链路可靠性$ \mathrm{r}\left({\mathrm{l}}^{\mathrm{s}}\right) $

15.$ {\mathrm{P}}_{\mathrm{W}}\leftarrow \mathrm{m}\mathrm{a}\mathrm{x}\left\{\mathrm{r}\right({\mathrm{l}}^{\mathrm{s}}\left)\right\} $

16.end for

17.更新路径$ {\mathrm{P}}_{\mathrm{W}} $各链路带宽$ {\mathrm{b}}_{\mathrm{r}}\left({\mathrm{l}}^{\mathrm{s}}\right)={\mathrm{b}}_{\mathrm{r}}\left({\mathrm{l}}^{\mathrm{s}}\right)-\mathrm{w}\left({\mathrm{l}}_{\mathrm{f}}^{\mathrm{s}}\right) $

18.end for

2.1 业务类型区分

通过自适应分类算法将失效的网络切片请求划分为高可靠性低时延业务和高带宽业务2种类型,根据带宽阈值BW对切片进行分类,具体过程如下:

子算法1  区分网络切片请求

输入  受影响NS请求$ \overline{{G}_{\mathrm{R}}}=\left(\overline{{G}_{1}}, \overline{{G}_{2}}, \cdots , \overline{{G}_{i}}\right) $BW

输出  切片类型

1.for all $ \overline{{\mathrm{G}}_{\mathrm{i}}}\in \overline{{\mathrm{G}}_{\mathrm{R}}} $ do

2.$ \overline{{\mathrm{G}}_{\mathrm{i}}} $故障虚拟链路的带宽$ \to \overline{\mathrm{b}} $

3.end for

4.按照$ \overline{\mathrm{b}} $$ \overline{{\mathrm{G}}_{\mathrm{i}}}\in \overline{{\mathrm{G}}_{\mathrm{R}}} $进行升序排列$ \to \overline{\mathrm{G}\mathrm{'}} $

5.for all $ \overline{{\mathrm{G}}_{\mathrm{i}}}\in \overline{\mathrm{G}\mathrm{'}} $ do

6.if $ \overline{\mathrm{b}}\le {\mathrm{B}}_{\mathrm{W}} $

7.type-1

8.else

9.type-2

10.end if

11.end for

2.2 备份路径构建

本文考虑底层单链路失效问题,基于节点映射完成链路映射过程。对高可靠性低时延切片请求,如1.2.2节链路映射所述,采取Kruskal算法[19]获取其最大生成树链路,为保证备份资源能够共享,应确保满足以下约束条件:1)主链路和备份链路不能重叠;2)若不同切片请求的虚拟链路的备份链路为同一底层路径,则不能共享备份资源;3)如果底层备份资源满足新到达的备份请求,则可以共享备份链路资源。在满足上述约束条件的情况下,通过最短路径算法分别完成主备份路径映射,具体过程如下:

子算法2  高可靠性低时延切片备份链路构建

输入  type-1切片请求$ {G}^{\mathrm{V}} $$ {G}^{\mathrm{S}} $,MST,节点映射

输出  链路映射LinkMappingList

1.for all $ {\mathrm{l}}^{\mathrm{v}}\in \mathrm{M}\mathrm{S}\mathrm{T} $ do

2.采用k-shortest算法计算路径候选集合$ \mathrm{\Omega }\left({\mathrm{l}}^{\mathrm{v}}\right) $

3.if $ \mathrm{\Omega }\left({\mathrm{l}}^{\mathrm{v}}\right)=\mathrm{\varnothing } $ then

4.拒绝NS请求

5.else

6.for path in $ \mathrm{\Omega }\left({\mathrm{l}}^{\mathrm{v}}\right) $ do

7.选择带宽最小路径映射主路径$ {\mathrm{l}}_{\mathrm{p}}^{\mathrm{s}}\to {\mathrm{L}}_{1} $

8.end for

9.采用k-shortest映射备份路径$ {\mathrm{l}}_{\mathrm{b}}^{\mathrm{s}} $且不与$ {\mathrm{l}}_{\mathrm{p}}^{\mathrm{s}} $重合$ \to {\mathrm{L}}_{2} $

10.if $ \mathrm{b}\left({\mathrm{l}}_{\mathrm{b}}^{\mathrm{s}}\right)\ge {\mathrm{b}}^{\mathrm{n}\mathrm{e}\mathrm{w}} $

11.资源$ \mathrm{b}\left({\mathrm{l}}_{\mathrm{b}}^{\mathrm{s}}\right) $可以共享

12.else

13.重映射$ {\mathrm{l}}_{\mathrm{b}}^{\mathrm{s}} $且重新分配SN资源

14.end if

15.end for

16.for all $ {\mathrm{l}}^{\mathrm{v}}\in ({\mathrm{E}}^{\mathrm{V}}-\mathrm{M}\mathrm{S}\mathrm{T}) $ do

17.重复第2步~第8步完成映射$ \to {\mathrm{L}}_{3} $

18.end for

19.LinkMappingList$ ={\mathrm{L}}_{1}\bigcup {\mathrm{L}}_{2}\bigcup {\mathrm{L}}_{3} $

3 仿真与性能分析 3.1 实验环境配置

本文实验的底层网络拓扑和网络切片请求拓扑均由GT-ITM[20]工具生成,通过Matlab R2018a进行仿真结果分析,具体参数如表 1所示。在仿真中,物理故障链路的到达服从泊松分布,参数为0.05,对于区分切片请求的阈值,根据实验所设切片带宽需求变化范围,选取变化范围的中间值8作为阈值。每次实验运行30 000个时间单元,每1 500个单位对数据做统计,取10次实验的平均值作为最终结果。

下载CSV 表 1 实验配置参数 Table 1 Experimental configuration parameters
3.2 性能分析 3.2.1 评价指标

通过平均成功运行率、长期收益开销比和故障恢复率这3项指标,评估本文算法性能。

1)平均成功运行率

平均成功运行率反映了NS可靠性映射以及对链路故障恢复的有效性,计算公式为:

$ {\eta }_{\mathrm{a}\mathrm{c}\mathrm{c}\mathrm{e}\mathrm{p}\mathrm{t}}=\mathop {\lim }\limits_{T \to \infty } \frac{{N}_{\mathrm{s}\mathrm{u}\mathrm{c}}\left(T\right)}{N\left(T\right)+\delta } $ (13)

其中:$ N\left(T\right) $T时刻所有到达NS的数量集合;$ {N}_{\mathrm{s}\mathrm{u}\mathrm{c}}^{}\left(T\right) $表示成功运行的NS数量,成功运行的NS数量既包括映射成功的NS请求,又包括恢复成功的NS请求;$ \delta $是趋近于0的变量。

2)长期收益开销比

对于切片请求$ {G}^{\mathrm{V}}=({N}^{\mathrm{V}}, {E}^{\mathrm{V}}) $,长期收益与接受虚拟请求的收入和故障产生的惩罚金相关,定义收入$ R({G}^{\mathrm{V}}, T) $、惩罚金$ P\left({G}^{\mathrm{V}}\right) $和成本开销$ C({G}^{\mathrm{V}}, T) $为:

$ R({G}^{\mathrm{V}}, T)=\mu \sum \limits_{{n}^{\mathrm{v}}\in {N}^{\mathrm{V}}}c\left({n}^{\mathrm{v}}\right)+\sum \limits_{{l}^{\mathrm{v}}\in {E}^{\mathrm{V}}}b\left({l}^{\mathrm{v}}\right) $ (14)
$ P({G}^{\mathrm{V}}, T)=\sum \limits_{f\in A\left({G}^{\mathrm{V}}\right)}\omega b\left(f\right) $ (15)
$ C({G}^{\mathrm{V}}, T)=\upsilon \sum \limits_{{n}^{\mathrm{v}}\in {N}^{\mathrm{V}}}c\left({n}^{\mathrm{v}}\right)+\sum \limits_{{l}^{\mathrm{v}}\in {E}^{\mathrm{V}}}h\left({l}^{\mathrm{v}}\right)b\left({l}^{\mathrm{v}}\right) $ (16)

其中:$ \mu $$ \upsilon $分别是用于平衡CPU和带宽资源的加权系数,本文假设$ \mu =\upsilon =1 $,表明CPU和带宽的重要性相似;$ A\left({G}^{\mathrm{V}}\right) $表示无法恢复的链路集合;$ \omega $为惩罚系数,假设为5;$ h\left({l}^{\mathrm{v}}\right) $是对应于虚拟链路的底层路径的跳数,本文设为4。因此,长期收益开销比的计算公式为:

$ \frac{R\mathrm{'}}{C}=\mathop {\lim }\limits_{T \to \infty } \frac{\sum \limits_{{G}^{\mathrm{V}}\in {N}_{\mathrm{s}\mathrm{u}\mathrm{c}\left(T\right)}}\left(R\right({G}^{\mathrm{V}}, T)-P({G}^{\mathrm{V}}, T))}{\sum \limits_{{G}^{\mathrm{V}}\in {N}_{\mathrm{s}\mathrm{u}\mathrm{c}\left(T\right)}}C({G}^{\mathrm{V}}, T)} $ (17)

3)物理链路利用率

物理链路利用率表示一段时间内映射的所有物理链路已占用带宽资源与底层网络链路带宽资源总和之比,计算公式为:

$ \xi =\frac{\sum \limits_{{l}^{\mathrm{s}}\in {E}^{\mathrm{S}}}b\left({l}^{\mathrm{s}}\right)-{b}_{\mathrm{r}}\left({l}^{\mathrm{s}}\right)}{\sum \limits_{{l}^{\mathrm{s}}\in {E}^{\mathrm{S}}}b\left({l}^{\mathrm{s}}\right)} $

4)故障恢复率

故障恢复率用于反映切片映射算法的可靠性,计算公式为:

$ \gamma =\mathop {\lim }\limits_{T \to \infty } \frac{{N}_{\mathrm{r}\mathrm{e}\mathrm{c}}\left(T\right)}{{N}_{\mathrm{f}\mathrm{a}\mathrm{i}\mathrm{l}}\left(T\right)+\delta } $ (18)

其中:$ {N}_{\mathrm{f}\mathrm{a}\mathrm{i}\mathrm{l}}\left(T\right) $T时刻所有失效的NS数量集合;$ {N}_{\mathrm{r}\mathrm{e}\mathrm{c}}\left(T\right) $表示NS重映射成功的数量;$ \delta $是趋近于0的变量。故障恢复率越高,表示这段时间内恢复的NS数量就越多,则切片映射算法的可靠性就越高。

3.2.2 结果分析

将本文提出的DST-NSRE算法与SVNE1+1[13]和DPS-VNRA[21]算法进行对比。SVNE1+1算法节点采取随机映射,利用最短路径为每条链路都采取备份,且备份资源不共享。DPS-VNRA算法将故障链路按带宽大小降序排列,采用路径分割法为故障链路重新选路。本节从网络切片请求成功运行率、长期收益开销比、链路利用率和平均故障恢复率这4个方面来评估算法应对故障的能力,验证区分业务类型切片可靠性映射方法的有效性。

3种算法的平均成功运行率如图 2所示。可以看出,随着NS请求的到达和链路故障的增多,平均成功运行率逐步下降。本文DST-NSRE算法此项指标较高的原因在于该算法属于部分备份,仅对高可靠切片类型进行备份,采取基于最大生成树链路的方法尽可能减少备份资源,从而使更多的底层资源接受NS请求,而且在恢复另一类型切片故障链路时用较可靠性高的底层链路进行承载,使恢复成功的NS数量增多,从而提高了平均成功运行率。DPS-VNRA算法对所有的故障链路采取路径分裂进行重映射,由于故障链路的增多会影响NS的运行,因此导致平均成功运行率较低。SVNE1+1保护算法为每条链路都进行备份,造成了大量的链路资源浪费,同时拒绝了大量的虚拟请求,因此,其成功运行率最低。

Download:
图 2 平均成功运行率 Fig. 2 Average success operating rate

3种算法的长期平均收益开销比如图 3所示。可以看出,长期平均收益开销比随着时间的增长出现不同程度的下降,最终趋于稳定。DST-NSRE算法能够获得更高的收益开销比,这是因为该算法对故障的虚拟链路按带宽进行排列,优先恢复价值更高的高可靠性低时延切片,增加了网络收益,并且对备份资源的合理共享减少了资源消耗,使网络资源开销减少。此外,算法在重映射时选择可靠性高的底层链路,提高了恢复率,减少了因故障恢复失败而产生的罚款,从而提高了长期收益开销比。

Download:
图 3 长期收益开销比 Fig. 3 Long-term income-cost ratio

3种算法物理链路利用率的变化情况如图 4所示。可以看出:SVNE1+1算法的链路资源利用率远低于其他两种算法,这是因为该算法占用了大量链路作为备份路径;本文DST-NSRE算法在切片映射时综合考虑可靠性和资源利用率的因素,以最大化底层资源作为映射目标,通过链路备份共享的方式,使得有大量的底层资源用以恢复,以此提高切片请求的成功映射,因此具有较高的链路利用率。

Download:
图 4 物理链路利用率 Fig. 4 Physical link utilization rate

3种算法的平均故障恢复率如图 5所示。可以看出:DPS-VNRA算法故障恢复率最低,因为它在故障发生后才寻找可替代路径,当切片请求逐渐增多时,就没有多余的可用资源用来恢复故障链路,所以平均故障恢复率最低;其他两种算法都有备份链路资源;本文DST-NSRE算法切片类型1的平均故障恢复率稳定在0.88左右,备份资源的共享与算法SVNE1+1相比既能减少冗余备份同时又满足了切片高可靠性需求,切片类型2即高带宽类型故障恢复率高于重映射DPS-VNRA算法,这得益于本文算法将故障链路重映射至高可靠性的底层链路,提高了恢复率,稳定在0.84左右。

Download:
图 5 平均故障恢复率 Fig. 5 Average failure recovery rate
4 结束语

本文研究单链路故障下网络切片的可靠性映射问题,提出一种基于业务类型的网络切片可靠性映射算法。仿真结果表明,与SVNE1+1和DST-VNRA算法相比,该算法具有较高的切片成功运行率、长期收益比、物理链路利用率和故障恢复率。本文只是将切片类型简单地根据带宽阈值分为两类,而目前网络切片有三大应用场景。因此,下一步将继续完善区分切片业务类型的评价方案,并设计更好的启发式可靠性映射算法,以此来平衡可靠性与资源利用率之间的关系。

参考文献
[1]
5G Initiative Team. 5G white paper[M]. Frankfurt, Germany: NGMN Alliance, 2015.
[2]
TANG J H, WEN R H, QUEK T Q S, et al. Fully exploiting cloud computing to achieve a green and flexible C-RAN[J]. IEEE Communications Magazine, 2017, 55(11): 40-46. DOI:10.1109/MCOM.2017.1600922
[3]
TANG J H, TAY W P, QUEK T Q S, et al. System cost minimization in cloud RAN with limited fronthaul capacity[J]. IEEE Transactions on Wireless Communications, 2017, 16(5): 3371-3384. DOI:10.1109/TWC.2017.2682079
[4]
WANG Z Z, ZHENG Q, CHEN C, et al. Virtual network mapping algorithm based on network simplex[J]. Computer Engineering, 2019, 45(4): 13-17, 24. (in Chinese)
王志臻, 郑烇, 陈晨, 等. 基于网络单纯形的虚拟网络映射算法[J]. 计算机工程, 2019, 45(4): 13-17, 24.
[5]
KIM J, KIM D, CHOI S. 3GPP SA2 architecture and functions for 5G mobile communication system[J]. ICT Express, 2017, 3(1): 1-8. DOI:10.1016/j.icte.2017.03.007
[6]
TALEB T, KSENTINI A, SERICOLA B. On service resilience in cloud-native 5G mobile systems[J]. IEEE Journal on Selected Areas in Communications, 2016, 34(3): 483-496. DOI:10.1109/JSAC.2016.2525342
[7]
WEN R H, FENG G, TANG J H, et al. On robustness of network slicing for next-generation mobile networks[J]. IEEE Transactions on Communications, 2019, 67(1): 430-444. DOI:10.1109/TCOMM.2018.2868652
[8]
HUANG L P, YANG L X. A survey on survivable virtual network embedding algorithm[J]. Computer Technology and Development, 2018, 28(7): 144-148. (in Chinese)
黄丽萍, 杨龙祥. 可生存性虚拟网络映射算法的研究[J]. 计算机技术与发展, 2018, 28(7): 144-148. DOI:10.3969/j.issn.1673-629X.2018.07.031
[9]
LI R Z, WU Q B, TAN Y S, et al. On the optimal approach of survivable virtual network embedding in virtualized SDN[J]. IEICE Transactions on Information and Systems, 2018, D(3): 698-708.
[10]
LU B, HUANG T, SUN X C, et al. Dynamic recovery for survivable virtual network embedding[J]. The Journal of China Universities of Posts and Telecommunications, 2014, 21(3): 77-84. DOI:10.1016/S1005-8885(14)60304-6
[11]
CHOWDHURY S R, AHMED R, KHAN M M A, et al. Dedicated protection for survivable virtual network embedding[J]. IEEE Transactions on Network & Service Management, 2016, 13(4): 913-926.
[12]
AYOUBI S, CHEN Y H, ASSI C. Towards promoting backup-sharing in survivable virtual network design[J]. IEEE/ACM Transactions on Networking, 2016, 24(5): 3218-3231. DOI:10.1109/TNET.2015.2510864
[13]
RAHMAN M R, BOUTABA R. SVNE: survivable virtual network embedding algorithms for network virtualization[J]. IEEE Transactions on Network and Service Management, 2013, 10(2): 105-118. DOI:10.1109/TNSM.2013.013013.110202
[14]
LIU X R. Research on virtual network mapping strategy based on survivability[D]. Beijing: Beijing University of Posts and Telecommunications, 2018. (in Chinese)
刘祥如. 基于可生存性的虚拟网络映射策略的研究[D]. 北京: 北京邮电大学, 2018.
[15]
KHAN M M A, SHAHRIAR N, AHMED R, et al. Multi-path link embedding for survivability in virtual networks[J]. IEEE Transactions on Network and Service Management, 2016, 13(2): 253-266. DOI:10.1109/TNSM.2016.2558598
[16]
SU Y Z, MENG X R, KANG Q Y, et al. Survivable virtual network link protection method based on network coding and protection circuit[J]. IEEE Access, 2018, 6: 67477-67493. DOI:10.1109/ACCESS.2018.2878797
[17]
HERRERA J D J G, VEGA J F B. Network functions virtualization: a survey[J]. IEEE Latin America Transactions, 2016, 14(2): 983-997. DOI:10.1109/TLA.2016.7437249
[18]
ZHAO S Y, CHEN J, GONG S Q. Virtual SDN mapping algorithm based on node reliability[J]. Computer Application Research, 2017, 34(7): 2134-2139. (in Chinese)
赵思逸, 陈靖, 龚水清. 基于节点可靠度的虚拟SDN映射算法[J]. 计算机应用研究, 2017, 34(7): 2134-2139. DOI:10.3969/j.issn.1001-3695.2017.07.047
[19]
LU Z Y, AN C J, JIAO B, et al. Group AHP judgment matrix aggregation algorithm based on spanning tree set setter[J]. Acta Electronica Sinica, 2015, 43(12): 2449-2454. (in Chinese)
鲁智勇, 安成锦, 焦波, 等. 基于生成树集结算子的群组AHP判断矩阵集结算法[J]. 电子学报, 2015, 43(12): 2449-2454. DOI:10.3969/j.issn.0372-2112.2015.12.015
[20]
LU M L, GU Y, LIU T. SDN-ScaSVNE: scalable SDN survivability virtual network mapping algorithm[J]. Journal of Beijing University of Posts and Telecommunications, 2018, 41(3): 75-80. (in Chinese)
卢美莲, 顾云, 刘通. SDN-ScaSVNE: 可伸缩的SDN生存性虚拟网络映射算法[J]. 北京邮电大学学报, 2018, 41(3): 75-80.
[21]
XIE F, MENG X R, MENG Q W, et al. Virtual network reconstruction algorithm for dynamic path splitting[J]. Firepower and Command Control, 2019, 44(11): 29-34, 40. (in Chinese)
谢枫, 孟相如, 孟庆微, 等. 动态路径分裂的虚拟网络重构算法[J]. 火力与指挥控制, 2019, 44(11): 29-34, 40.