基于分配优先级的虚拟资源调度模型
2023-12-20李伟群常朝稳刘路瑶
李伟群,常朝稳,刘路瑶
(信息工程大学 密码工程学院,河南 郑州 450001)
0 引 言
网络功能虚拟化(network function virtualization,NFV)和软件定义网络(software-defined networking,SDN)[1]技术将5G网络分割成不同的虚拟网络,该虚拟网络为网络切片(network slicing,NS),为实施专门性业务而创建的网络切片称为网络切片实例(network slice instance,NSI)[2]。因虚拟网络的复杂性,NSI之间的恶意攻击者,通过建立与受攻击目标用户的隐蔽信道,窃取重要信息[3]。侧信道攻击是导致切片信息传输泄露的主要途径[4]。针对侧信道的攻击,众多研究者提出不同资源调度的策略,以防御侧信道攻击带来的威胁。Han Y等[5]定义安全指标重新评估侧信道攻击的能力,提出了一种新的虚拟资源调度策略,减轻侧信道攻击效果,同时兼顾负载均衡与低功耗要求。Jia H等[6]聚焦于调度安全有效的虚拟资源,提出基于虚拟机最小数量选择策略,减少不同切片用户共存的概率。Naik B等[7]基于多目标测度选择虚拟资源,采用博弈论策略实现虚拟资源调度,实现效率、覆盖率、最大链路利用率等综合性能指标优于现在方法。当前研究对于资源调度策略的选择,多以降低攻击者窃取用户隐私信息可能性为目标,忽视虚拟资源调度方的实际收益与NSI的安全需求。因此,本文提出基于分配优先级的虚拟资源调度模型,设计“网络切片用户-移动虚拟运营商-基础服务提供商”三层资源调度结构,均衡NSI用户的安全需求和优质NSI用户资源需要,通过分配优先级依次调度资源,增加侧信道攻击成本,最大化移动运营商的收益。
1 问题描述及资源调度结构
1.1 问题描述
移动虚拟运营商通过SDN与NFV技术租用物理层的基础物理设施形成虚拟网络资源,出租给NSI获得收益。一方面,多个NSI共享底层物理资源,NSI之间虽存在逻辑隔离[8],但恶意NSI基于共享的底层物理资源发起跨虚拟机的侧信道攻击[9],导致NSI信息泄露。另一方面,在目前的虚拟资源调度上,移动虚拟运营商占据主导地位,忽视了NSI对传输信息安全的需求。如NSI不能定性所传输信息的重要程度,单方面提高传输安全等级,体验质量(QoE)与服务质量(QoS)将会相应地下降[10]。
1.2 资源调度结构
资源调度结构由上至下分成3层[11],第一层为网络切片用户(network slice user,NSU),第二层为移动虚拟运营商(mobile virtual network operator,MVNO),第三层为基础设施提供商(infrastructure provider,InP)。在这调度结构下,InP提供切片所需的服务器和物理链路资源,可用有权无向图Gs=(CN,CL) 表示,CN={ccpu,cmey,cnet} 表示服务器提供的物理资源,ccpu代表计算资源,cmey代表存储资源,cnet代表网络资源[12],CL={cband} 代表物理链路资源。MVNO层从InP中租用物理网络服务器和链路资源形成虚拟网络资源,再将虚拟网络资源提供给NSU层中的NSI,通过向NSI收取虚拟资源租用费用而获得收益。
2 虚拟资源调度模型
2.1 资源调度策略
本文采用半静态资源调度策略[14],对NSU层中的NSI实例,预分配一定资源以满足NSI的基本业务需求,其余资源由MVNO动态调度。由于基本资源的调度收益固定,因而不在本文提出的资源调度策略中考虑。其余资源采取分配优先级的策略,根据NSI分配优先级高低依次调度虚拟资源,优先满足级别高的NSI用户。显然,该策略会引起NSI用户调度的虚拟资源高于其实际需求,造成虚拟资源的浪费。但该调度策略有3个明显的优势。①MVNO依照资源分配优先级调度虚拟资源,有效平衡NSI安全需求与优质用户的资源调度,并增加其收益。②切片权重值综合评估NSI历史资源调度与使用情况,减少了临时NSI用户恶意仿冒优质用户进行侧信道攻击可能性,降低目标NSI的安全风险。③NSI确定的安全等级与其信息重要性相对应,并为其支付更高的虚拟资源租用价格。
2.2 虚拟资源分配优先级确定
2.2.1 安全等级
2.2.2 切片的权重
在MVNO有限的虚拟资源调度上,基于最大化收益,MVNO会优先保障优质的NSI用户的虚拟资源需求。评判NSI用户的重要性用权重值Φ表示,权重Φ大小由NSI的效用函数πj量化。NSI在某一时刻的效用大小[15]
(1)
(2)
其中,πj是NSI在某时刻的虚拟资源调度率,Yj表示NSI历史虚拟资源调度量的平均值,Y0表示NSI依据SLA(服务等级协议)确定的虚拟资源需求量,α表示根据SLA确定的加权系数,N0表示传输过程中虚拟资源的总量,πj-1表示j-1之间的历史虚拟资源利用率。根据Φj的大小确定NSI的虚拟资源分配优先级。
2.2.3 分配优先级
MVNO层依据NSI的安全等级与切片权重确定虚拟资源的调度等级,NSU中vj的资源分配优先级为Hj
Hj=β1wj+β2Secj
(3)
式中:β1,β2∈[0,1], 且β1+β2=1。 MVNO根据β1,β2的数值调配确定NSI的资源分配优先级。
2.3 调度模型建立
2.3.1 变量说明
(4)
式中:ε1,ε2,ε3,ε4为各虚拟资源占调度资源的比例,且ε1+ε2+ε3+ε4=1,ε1,ε2,ε3,ε4∈(0,1)。
2.3.2 约束条件
当MVNO向NSU中的NSI调度虚拟资源,k个NSI租用的虚拟计算资源、虚拟存储资源、虚拟网络资源与虚拟链路资源的总量不大于MVNO向InP租用的资源,如式(5)所示
(5)
历史虚拟资源调度平均值比例系数ε1,ε2,ε3,ε4服从(0,1)区间上的均匀分布。资源调度等级系数β1,β2服务[0,1]区间上的均匀分布。满足式(6)、式(7)的约束
(6)
(7)
NSI的虚拟资源需求设置为MVNO租用资源的1/k与2/k之间,减少因随机生成的NSI资源需求过大或过少,导致仿真结果与实际差距过大,影响实验结果。满足式(8)的约束
(8)
2.3.3 目标函数
MVNO向NSU层调度资源时,主要存在两方面收益,一是出租物理资源,二是出租物理链路资源。因此,MVNO向NSU出租资源获得收益为Ω1,如式(9)所示
(9)
NSI在物理链路资源利用上,不存在安全级别的划分,因而不会造成资源的浪费,无需扩大资源的租用价格。因此,MVNO向InP租用资源支出的成本为Ω2,如式(10)所示
(10)
MVNO向NSU出租虚拟资源的净收益为Ζ=Ω1-Ω2。 为追求收益最大化,将净收益最大化作为目标函数,如式(11)所示
(11)
3 算法描述
本文选取5G资源调度策略与IGADS基于切片权重等级资源调度策略作为对照组。参数说明见表1,表1为算法中各参数代表的意义,其中Mink是不同种调度策略下,MVNO所能满足的NSI数量;虚拟资源调度量D为不同种调度策略下,MVNO租用的虚拟资源调度消耗量。
为3种调度策略的常量的赋值如以下步骤(1)~步骤(6)。步骤(1)~步骤(5)为基本参数的生成,步骤(6)为MVNO租用虚拟资源的成本。
(2)P、W=常量;
(3)K=常量;
(4)α=常量;
(5)Y0=常量
为3种调度策略的初始化赋值如以下步骤(1)~步骤(12)。vj所需的虚拟资源数量,如步骤(1)、步骤(2)。步骤(3)~步骤(5)为权重εj生成代码。步骤(6)~步骤(10)为vj切片权重与安全需求的比例、租赁资源价格倍数、安全需求、历史虚拟资源调度平均值和某时刻的虚拟资源调度率等参数生成。步骤(11)、步骤(12)为vj的切片权重与资源分配优先级的初始化。
表1 参数说明
(3)εj-temp=round(rand(1,k) * k);
(5)εj=εj-temp/sum_ep;
(6)βj=rand(1,k);
(7)aj={aH,aM,aN}
(10)πj=Yj/Y0
(11)Wj=(1-α)*πj+(2*α-1)*πj-1
(12)Hj=β1*wj+β2*Secj
3.1 基于分配优先级资源调度策略
基于分配优先级资源调度策略如以下步骤(1)~步骤(23),步骤(1)~步骤(5)为各参数依据分配优先级重新排序。步骤(6)~步骤(19)为排序后,虚拟计算资源、存储资源、网络资源与链路资源所能满足NSI的数量。步骤(20)为4种资源满足NSI数量的最小值,即为Mink。 依据求得的Mink值计算MVNO的收益Z, 同时,计算取得虚拟资源调度量D为步骤(21)~步骤(22)。
基于资源分配优先级调度策略:输出Mink、Z、D
(4)Sec′j=Secj(hindex);
(5)a′j=aj(hindex);
(7)sums = 0;
(11) fk = j-1;
(12) return;
(14)sums = 0;
(18) fk = j-1;
(19) return;
(20)Mink= minvalue(kcpu,kmey,knet,kbands);
3.2 5G资源调度策略
5G资源调度策略如以下步骤(1)~步骤(8)。步骤(1)~步骤(5)为虚拟计算资源、存储资源、网络资源与链路资源所能满足NSI的数量,步骤(6)为4种虚拟资源满足NSI数量的最小值,即为Mink。 依据求得的Mink值计算MVNO的收益Z, 同时虚拟资源调度量D为步骤(7)~步骤(8)。
5G资源调度策略:输出Mink、Z、D
(4) fk = j-1;
(5) return;
(6)Mink=minvalue(kcpu,kmey,knet,kbands);
3.3 基于切片权重等级资源调度策略
基于切片权重等级资源调度策略如以下步骤(1)~步骤(11),步骤(1)~步骤(3)为虚拟物理资源与虚拟链路资源依据切片权重重新排序。步骤(4)~步骤(8)为排序后,虚拟计算资源、存储资源、网络资源与链路资源所能满足NSI的数量。步骤(9)为4种资源满足NSI数量的最小值,即为Mink。 依据求得的Mink值计算MVNO的收益Z, 同时,计算虚拟资源调度量D为步骤(10)~步骤(11)。
基于切片权重等级资源调度策略:输出Mink、Z、D
(7) fk=j-1;
(8)return;
(9)Mink=minvalue(kcpu,kmey,knet,kband);
4 仿真分析
4.1 实验环境
本文实验环境为AMD R5-3500 CPU2.1 GHz、16 GB RAM的PC机,采用MATLAB R2015b软件搭建仿真系统。MATLAB仿真的网络参数设置见表2。共同基础参数(如待调度虚拟资源、出租租赁价格)的数值设置不影响实验对比结果,为减少人为设置对实验结果影响,MVNO出租与租用单位虚拟资源差价为0.05。仿真参数设置见表3。参数设置说明:①安全等级Secj的取值,将影响MVNO服务NSU中的NSI的数量,随着数值的增加,服务NSI数量减少,为便于数据分析,本文以等差数列5,3,1为安全等级对应的数值。②加权系数α影响NSI的切片权重结果,但对MVNO的收益及资源调度不产生数值方面的影响,假定NSI的类型一致,基于SLA确定的加权系数α为0.8。③增加NSU层中NSI请求数量梯度,增强实验结果的可信度。④NSI的实际资源需求由仿真软件随机生成,为减少随机因素对仿真实验造成的影响,以100次仿真实验结果的平均值作为最终实验结果。⑤租赁价格倍数设置应满足不同安全需求类型之间的差异,为便于计算,本文设置为等差数列1.6,1.3,1。
表2 网络参数设置
表3 仿真参数设置
4.2 结果分析
本文采用的虚拟资源调度策略(方法1)与5G资源调度策略(方法2)及IGADS[15]采用的切片资源动态调度算法(方法3)进行比较。方法2中,MVNO根据NSI资源请求先后顺序调度NSI所需的虚拟资源。方法3中,IGADS采用改进式贪婪算法实现切片与用户的最优匹配,同时实现虚拟资源调度效用最佳。从MVNO收益、MVNO服务NSI数量与虚拟资源消耗量这3个指标对比3种资源调度策略。
MVNO收益变化情况如图1所示。从图中可看出,方法2和方法3随着NSU中请求资源调度的NSI数量增加,MVNO的收益基本固定,且两者收益水平相近。但方法3中,充分考虑切片权重大的NSI资源调度,从MVNO收益角度分析,该方法可维护用户的忠诚度,利于长期收益的稳定。同时,方法3基于历史资源使用情况确定用户切片权重,可以减少临时恶意用户假冒长期正常用户进行攻击,整体性能优于方法2。本文提出的基于分配优先级的资源调度策略,MVNO的收益随着NSU中NSI请求数量增加而大幅提高,最后趋于稳定。初始,NSU层请求资源调度NSI数量少,在部分客户较高的安全需求情况下,MVNO优先满足分配优先级客户的资源需求,剩余资源难以满足其余NSI的资源需求,造成资源浪费。因而MVNO收益较低,从而印证增加资源价格倍数的必要性。相较于方法2与方法3,方法1更利于提高MVNO的收益,同时兼顾NSI的安全需求与增加优质用户的粘度。
MVNO服务NSI数量如图2所示,该图反映了不同资源调度方式下,随着NSU中NSI请求数量的增加,方法2与方法3服务NSI数量呈现线性增长,增长幅度相似。方法1服务NSI的数量增长比例较小,这是因为,在方法1的资源调度方式下,MVNO根据NSI提出的安全需求增加虚拟资源调度数量,因而减少了服务服务NSI的数量。但方法1提出的调度模型,增加恶意NSI的攻击成本,以此减少侧信道攻击的可能性,提高了安全性。与此同时,MVNO服务NSI数量减少,但通过分配优先级的排序,确保优质NSI用户的资源调度,确保了长期的利益。
图2 服务NSI数量
虚拟资源消耗情况如图3所示,方法2与方法3的虚拟物理资源与虚拟链路资源随着NSU中的NSI请求数量增加而不变,资源调度率能达到99%左右。方法1的虚拟物理资源调度率随着NSU中的NSI请求数量增加而增大,在NSI数量为200后趋于稳定,资源调度率达到99%左右,方法1与方法2、方法3在虚拟物理资源消耗水平相当。而虚拟链路资源随着NSI数量增加而小幅度增长,最后趋于稳定,相较于方法2、方法3,方法1服务的NSI数量因为虚拟物理资源量有限而减少,从而导致虚拟链路资源调度较少。相较于较高的收益,虚拟链路资源的浪费在可接受范围内。
图3 虚拟资源消耗量
5 结束语
本文对移动虚拟运营商MVNO的虚拟资源调度策略存在忽视用户安全需求的问题进行描述,分析了恶意用户跨虚拟机侧信道攻击的问题,提出了基于MVNO收益的虚拟资源调度模型。本文以提高MVNO收益为目标,设计基于安全需求与切片权重的半静态资源调度策略,在满足所有用户的基本资源需求,动态调度剩余资源,并完成算法的设计,在MATLAB软件搭建的仿真环境下进行实验。从实验数据分析,本文提出的策略相较于现有的5G资源调度策略与IGADS资源调度策略,大幅度提高了移动虚拟运营商的收益,增加了侧信道攻击成本,兼顾用户安全需求与维护优质用户。