基于安全感知的网络切片部署策略
2022-09-16姬伟峰李映岐申秀雨
吴 玄, 姬伟峰, 翁 江, 李映岐, 申秀雨, 孙 岩
(1.空军工程大学信息与导航学院,西安,710077;2.95007部队,广州,510080)
5G旨在使用相同的网络基础设施为每个垂直行业提供定制业务需求,实现“万物互联”的愿景[1]。为满足不同垂直行业的业务需求,提出了网络切片(network slicing ,NS)的概念,网络切片由多个异构虚拟网络构成,能够同时为多用户提供端到端定制化的虚拟网络服务。但网络切片在部署时,存在一系列安全问题,例如恶意节点对共享资源的网络切片发动侧信道攻击、存在漏洞的终端设备容易遭受底层网络攻击、网络切片服务在分布式拒绝服务攻击中变成中间跳板。同时,每个网络切片实例(network slice instance , NSI)都有资源配额,恶意用户可能会试图滥用资源配额,从而中断该切片的服务[2]。因此,网络切片安全部署策略研究对5G网络应用具有重要现实意义。
网络切片安全部署本质上是对NSI中的虚拟网络功能(virtual network f unction, VNF)进行部署与编排[3]。文献[4]提出了5G网络切片安全信任部署策略,采用网络切片安全部署的启发式算法有效解决了网络切片信任中的随机性、模糊性以及不确定性问题;文献[5]提出了基于信息熵的安全感知虚拟网络映射算法,利用信息熵TOPSIS(technique for order preference by similarity to an ideal solution)对物理节点的重要性进行排序,以部署成本作为最小优化目标,在长期平均收益、长期收益成本比与运行时长方面取得了较好的效果;文献[6]提出了一种基于全局资源能力(global resource capacity)的虚拟网络映射算法,该算法通过考虑节点的资源属性和全局拓扑属性对节点部署进行优化,并采用蒙特卡洛算法求解映射结果获得了更高的请求接受率与部署收益;文献[7]提出了一种基于强化学习的虚拟网络映射算法(virtual network Embedding-Reinforcement learning, VNE-RL),该算法未考虑部署过程中节点与链路的安全因素,根据节点的重要性程度进行排序与映射,在长期收益成本比与算法效率上得到了较好的提升,但其对全局资源感知程度不高;文献[8]提出了一种基于强化学习的安全虚拟网络映射算法(security virtual network embedding-Reinforcement learning, SVNE-RL),该算法考虑了节点的安全因素,利用强化学习求解节点映射过程,在长期平均收益、长期收益消耗率与请求接受率方面提升较大,但该算法未考虑链路安全约束条件,且对节点的安全性考虑不够充分。
目前网络切片部署的安全需求主要考虑节点的安全因素与资源的重要性程度,未考虑到链路对网络切片部署过程中的影响。并且部署方法主要采用启发式算法与强化学习方法,但传统的启发式算法易陷入局部最优解[9],无法感知底层物理资源变化情况,导致资源利用率低,而强化学习算法,存在评价策略时效率较低且方差较大等问题。
针对网络切片部署的安全需求与部署方法存在的问题,本文提出了一种基于强化学习的安全感知网络切片部署策略(security aware network slicing-reinforcement learning , SANS-RL)。在部署过程中利用安全等级与安全需求有效量化分析VNF和链路的安全性,采用带有基线算法的强化学习方法,对物理节点的安全性进行排序,实现对安全等级较高VNF的优先部署与重点保护。实验仿真表明本文所提出的SANS-RL策略比GRC、VNE-RL与SVNE-RL映射效率更高,同时保证了网络切片部署过程中的性能与安全需求。
1. 网络切片部署模型
1.1 安全部署需求描述
NSI是一个专用的虚拟网络,VNF按照一定约束顺序组成服务功能链(service function chain , SFC),不同SFC组合构成NSI,物理网络为NSI提供服务资源。NSI到物理网络的映射过程称为网络切片实例部署,即将VNF映射到物理节点上,将虚拟链路映射到一组物理链路上[10],图1为网络切片部署示意图。
图1 网络切片部署示意图
为了量化与描述网络切片的安全需求,引入安全等级这一概念。安全等级表示抽象的保护标准,由5G网络运营商分配,安全等级越高,其提供的安全机制越多。例如,支持数据加密和数字签名的物理节点将被分配更高的安全等级。因此,某些特殊的需求会被分配到同等或更高安全级别的资源上。
基于以上假设,本文得出以下4个抽象的安全约束。
1)物理节点的安全等级不能低于部署在其上的VNF安全需求。
2)VNF的安全等级不能低于其映射到物理节点的安全需求。
3)在已部署VNF的物理节点上部署新的VNF时,新VNF的安全需求不得低于已部署VNF的安全需求。
4)具有一定安全需求的虚拟链路应映射到具有足够安全级别的物理链路上。
图1中网络切片请求中A的属性值代表其所需CPU资源为20、自身的安全等级为5、需要物理节点对应的安全级别不低于2,A和B之间虚拟链路属性值代表其所需带宽资源为3,需要对应的物理链路安全级别不低于2,物理节点E的属性值代表其能够提供的CPU资源为75、自身的安全等级为3、需要部署在其上的VNF安全级别不低于2。VNF只能映射到满足其资源需求与安全需求的物理服务器上,虚拟链路只能映射到满足其带宽需求与安全需求的物理链路上。
1.2 安全部署模型描述
本文使用有权无向图GP=(NP,LP,NS,LS)来表示5G物理网络拓扑。物理网络中物理节点(物理服务器、交换机、路由器等设备集合)用NP表示,而LP表示节点之间的所有物理链路集合,NS与LS表示物理节点与物理链路的属性值。其中NS={cpu(ns),dem(ns),lev(ns)},LS={bw(lp),lev(lp)},dem表示物理节点的安全需求,lev表示物理节点与物理链路的安全等级,cpu表示物理节点可用的CPU资源,bw表示物理链路的可用的带宽资源。
1.3 网络切片部署过程描述
网络切片安全部署到基础设施网络中可以认为是典型的安全虚拟网络映射问题(secure virtual network embedding , SVNE)[11]。类似于SVNE问题,本文将网络切片部署过程分为2个阶段:VNF映射与虚拟链路映射。
(1)
物理节点所分配的CPU资源不能超过其自身拥有的CPU的资源,其中cpu(xi)表示第i个VNF所需的CPU资源,cpu(xk)表示物理节点k剩余的CPU资源,如式(2)所示:
(2)
(3)
上文中的安全约束条件如式(4~7)所示:
(4)
(5)
(6)
dem(lv)≤lev(lp)
(7)
1.4 评价指标
本文以VNF部署的长期安全收益成本比、请求接受率、长期网络资源利用率与长期带宽利用率等4个方面对算法进行评价[12]。
1.4.1.长期安全收益成本比
对于VNF的部署收益,用节点与链路的安全收益情况表示,如式(8)所示:
(8)
式中:dem(ns)cpu(nv)代表VNF的安全收益,VNF映射在安全需求越高的物理节点上,其部署安全收益越大;lev(ls)bw(lv)代表链路的安全收益,虚拟链路映射在安全等级越高的物理链路上,其部署安全收益越大;Tb表示VNF请求持续时长。
VNF部署成本如式(9)所示[13]:
(9)
式中:lev(nv)cpu(nv)代表VNF映射的部署成本,VNF映射所需cpu资源越多,安全等级越大,其部署成本越高。dem(lv)hop(p)bw(lv)表示虚拟网络链路能源消耗,其中Ps(lv)表示虚拟链路lv分配的路径集合,hop(p)表示路径p在物理网络上经过的跳数,虚拟链路映射所需带宽资源越多、链路跳数越大、虚拟链路的安全需求越高,其部署成本越大。
长期安全收益成本比可以表示为:
(10)
1.4.2 请求接受率
VNF请求接受率可以表示为:
(11)
式中:T表示在VNF请求持续时间Tb内VNF请求的总个数,而Ts表示在VNF请求持续时间Tb内VNF请求成功映射的个数。
1.4.3 长期网络资源利用率
长期网络资源利用率可以表示为:
(12)
式中:C表示物理网络总CPU资源;Cs表示在VNF请求持续时间内已消耗的CPU资源总量。
1.4.4 长期带宽资源利用率
长期带宽资源利用率可以表示为:
(13)
式中:B表示物理网络总带宽资源;Bs表示在VNF请求持续时间内已消耗的带宽资源总量。
2 基于强化学习的网络切片部署策略
在VNF映射到物理节点过程中,物理节点存在的安全风险将会影响整个网络切片的部署。因此,通过建立物理节点的安全特征矩阵,确保网络切片的安全部署。
2.1 节点安全特征矩阵
提取物理节点的安全特征属性,包括节点计算资源、节点的度、度中心性、节点中心度与节点的安全因子。
1)节点计算资源(node computing resources)。节点计算能力是表征节点效率重要属性之一,节点计算能力越强,其承受的VNF越多,被映射的概率就越大,物理节点nk计算资源如式(14)所示:
NCR(nk)=cpu(nk)
(14)
2)节点的度(the degree of node),节点的度表示连接到物理节点的链路数量,节点的度越大,其连接的节点就越多,更易于找到与其他节点之间较短的链路,物理节点nk的度如式(15)所示:
(15)
式中:Bij表示节点nk与其相邻节点的连接关系,如果互相连接则为1,否则为0。
3)度中心性(degree of centricity)[14],物理节点上所链接链路的带宽之和,总带宽越大,映射到物理节点的VNF链路选项越多,映射效果越好。物理节点nk度中心性如式(16)所示:
(16)
4)节点中心度[15](the centrality of node)能够全局网络结构反映物理节点的重要程度,物理节点nk中心度如式(17)所示:
(17)
式中:Okj表示物理节点nk与nj之间的跳数;NP表示为满足约束条件的所有物理节点,节点中心度越大,物理节点越接近网络中心,物理节点越重要。
5)节点的安全评估因子。节点的安全评估因子是衡量节点整体安全性的重要指标,由节点计算资源、节点的度、度中心性、节点中心度与节点的安全需求共同组成,节点的安全评估因子越高,其安全性越好,应考虑对对其优先部署,并防止安全性较低的网络切片共享节点而导致的同驻攻击,物理节点nk安全评估因子如式(18)所示:
SAF(nk)=(NCR(nk)+DN(nk)+)
DC(nk)+CN(nk))*dem(nk)/4
(18)
(19)
物理节点的安全特征矩阵SE(safety eigenmatrix ,SE)如式(20)所示:
SE=(sav1,sav2,…,savn)T
(20)
2.2 基于策略的网络切片部署建模
网络切片的部署问题是一个NP难问题,相比于传统启发式算法与精确式算法求解VNF映射过程,机器学习算法可以根据现有数据智能调整网络参数,并做出预测。而强化学习(reinforcement learning , RL)作为一种机器学习算法,具有自适应的特点,通过与Agent与环境的相互作用,执行特定的动作,更新状态获取奖励,RL能够充分感知VNF映射过程中的安全状态信息,在网络切片部署过程中取得更好的资源利用率。
本文将网络切片请求中的VNF映射过程建模为带有状态空间的MDPM(S,A,P,R)过程[16],具体表示为:利用物理节点的安全特征矩阵作为环境,Agent定义为一个能够输出物理节点映射概率的策略网络,Agent根据物理节点的安全特征矩阵输出物理节点映射概率,然后选择概率最大的物理节点作为动作,进行VNF映射,当VNF映射完成后,使用Dijkstra算法进行链路映射,以长期收入消费比作为奖励函数,根据学习策略情况给予Agent奖励,同时更新状态信息,VNF映射模型如图2所示。
图2 VNF映射模型
将环境、Agent、状态、动作、奖励具体说明如下:
1)环境(environment):
使用物理节点的安全特征矩阵作为部署过程中的环境。
2)Agent结构:
本文采用基于策略的RL方法解决连续动作的MDP问题,引入了一种策略网络来解决RL问题。策略网络本质上是一个神经网络,以某一环境状态作为输入,通过正向传播输出该环境状态下所有候选动作的概率分布[17]。使用MLP作为Agent的策略网络并进行参数化,策略网络由输入层、隐藏层、输出层与节点选择层组成, Agent结构如图3所示。
图3 Agent结构
输入层将物理节点的安全特征矩阵作为输入,由隐藏层输出每个物理节点的向量,用于映射某个虚拟节点,对于节点k,向量计算公式为:
hk=tanh(wn·savk+bn)
(21)
式中:wn为隐藏层的权重;bn为偏置;tanh为激活函数。
然后将该向量转移到Softmax层,利用Softmax Function生成节点概率分布,概率计算如式(22)所示:
(22)
此时,概率分布对应一个VNF映射到所有物理节点的可能性大小,即VNF映射到概率越大的物理节点上其映射效果越好[18]。
节点选择层需要在所有候选节点中选择一组满足约束条件的物理节点进行VNF的映射,将不满足约束条件的节点进行删除。
3)动作(Actions):
根据Agent输出节点的概率分布,选择概率最高的物理节点作为需要被映射的节点。当VNF映射完成后,在选择的物理节点和它的邻居节点之间运行Dijkstra算法,进行虚拟链路映射。
4)状态(States):
在进行动作选择后,环境需要对基础网络设施中的物理节点进行资源更新,根据当前物理节点的资源计算节点安全特征矩阵,使得Agent得到新的状态表示。
5)奖励(Rewards):
在RL模型中,Agent仅根据奖励来估计模型是否正确。较大的奖励表明代理当前的行动是有效的,应该继续下去;一个小的奖励表明当前的行为是不适当的,应该调整,因此如何设置合理的奖励十分关键[19]。本文以网络资源利用情况作为奖励信号,当链路映射成功时,Agent会收到奖励信号;当链路映射失败时,奖励值为0,以避免Agent下次选择该策略,奖励计算如式(23)所示:
(23)
式中:Cs(nv)代表VNF消耗的CPU资源;C(np)代表VNF映射到物理节点np的CPU总资源。如果部署策略网络资源利用高,则认为该部署策略较好,如果未部署成功,则设置奖励值为0,以避免下次选择该策略。
3 仿真实验
3.1 实验环境
本文使用GT-ITM工具生成物理网络拓扑及网络切片实例请求,实验平台采用Pycharm,采用python语言编写程序,利用TensorFlow构建策略网络,测试结果在Origin中绘图表示,网络参数设置表1。
表1 网络参数设置
3.2 SANS-RL模型性能评估
将本文提出的SANS-RL模型与文献[6]提出的GRC算法、文献[7]提出VNE-RL算法与文献[8]提出的SVNE-RL进行对比。
本文从请求接受率、长期安全收益成本比、长期网络资源利用率、长期带宽资源利用率与程序运行时间5个方面进行对比分析。
3.2.1 请求接受率与长期安全收益成本比
各算法VNF的请求接受率变化情况见图4。
图4 请求接受率
从请求接受率可以看出,SANS-RL高于SVNE-RL高于GRC高于VNE-RL。由于在初始时间时,由于物理资源丰富,可以满足更多的虚拟网络需求,所以各算法请求接受率都较高。随着物理网络资源的不断消耗,后期指标开始逐渐下降,而SANS-RL算法在测试阶段确定了Agent的最优化参数,使其能够更好地学习物理网络节点链路之间的关系,这更符合VNF的实际情况,所以其请求接受率最高。
而VNE-RL请求接受率最低,由于其考虑节点的拓扑属性较少,对于物理网络情形感知较差,VNE-RL模型不能充分发挥其优势,难以获得最合适的嵌入策略,故其请求接受率最低;而GRC使用启发式算法,综合考虑了全局资源拓扑属性,其算法效率与物理网络资源状态变化无关,故其请求接受率高于VNE-RL,而SVNE-RL对物理网络资源考虑较为全面,但其算法运行方差较大,导致算法效率低于SANS-RL,故其请求接受率低于SANS-RL。
长期安全收益成本比如图5所示,从图中可以看出,SANS-RL长期安全收益成本与SVNE-RL、GRC算法较为接近,都高于VNE-RL算法。因为长期收益消费比主要取决于算法效率与物理节点数量无关,由于SANS-RL算法的Agent是在具有较多物理节点特征的环境中训练,其对物理网络感知程度最高,故其映射效率最高效果最好,而VNE-RL对物理网络感知程度较低,其在映射过程中需要反复寻找最优映射结果,从而导致算法效率降低,效果较差。
图5 长期安全收益成本比
3.2.2 长期网络资源利用率与带宽利用率
长期网络资源利用率与长期带宽利用率见图6、图7。
图6 长期网络资源利用率
图7 长期带宽利用率
由图6与图7可得,在所有算法中,SANS-RL网络资源利用率与带框利用率最高,由于SANS-RL接收到的VNF请求最多,其请求接受率最高,则SANS-RL模型对带宽与网络资源的利用情况最好。而SVNF-RL、GRC与VNF-RL算法网络资源利用率与带宽利用率依次下降,与请求接受率实验结果相符,证明了SANS-RL算法效率的优越性与资源利用的高效性。
3.2.3 程序运行时间
图8显示了在相同的实验环境条件下,各算法的运行时长。
图8 各算法运行时长比较
由于各算法的程序运行时长受操作系统与实验环境的影响,不同算法的程序运行时长仅在实时操作系统环境中有效。其中VNF-RL算法运行时间最长,因其对物理网络资源感知较差,其需要不断学习映射的最佳策略,导致算法运行时间较长且效率较低。而GRC算法综合考虑了物理节点资源与全局拓扑情况,算法较为复杂,但使用蒙特卡洛树搜索提高了算法性能减少了运行时间,使得其运行时间比VNF-RL较好。而SVNE-RL与SANS-RL运行时长相近,由于SANS-RL模型梯度求解过程使用带有基线的REINFORCE算法,减少了强化学习过程中方差使其学习效率更快,效率更高故其运行时间优于SANS-RL。
4 结语
针对传统启发式算法解决网络切片部署问题易陷入到局部最优解,且部署过程中对网络切片节点与链路的感知程度不高的问题,本文提出了一种基于安全感知的网络切片部署策略,并通过仿真实验验证了部署模型的可行性与算法的高效性。在VNF映射部署阶段,首先利用安全等级量化了VNF的安全需求,然后提取物理节点的关键安全指标构建安全特征矩阵,利用策略网络输出安全特征矩阵的映射概率大小,实现VNF的安全部署。在虚拟链路部署阶段,采用最短路径方法进行虚拟链路映射。最终证明SANS-RL在满足安全约束的同时能够有效感知部署过程中的资源变化情况,获得较高的安全收益与部署收益。在后续研究中,将针对多层网络切片的安全部署进行研究,考虑复杂网络情况下的网络切片安全部署情形。