OpenStack加密链路节点分层方法与系统技术方案

技术编号:35439035 阅读:12 留言:0更新日期:2022-11-03 11:48
本发明专利技术公开了一种OpenStack加密链路节点分层方法与系统。本发明专利技术首先获取各节点两两之间的延迟,然后根据配置将中间节点按随机生成初始排列;再计算排列中每个中间节点的延迟指数,并在中间层内按照延迟指数大小将节点重新排序,将所有中间节点的延迟指数加和,作为全局延迟指数;通过模拟退火算法对节点排列进行扰动,优先扰动延迟指数大的节点,以降低全局延迟指数;最后满足算法终止条件时,即可获得中间节点自动分层的结果。本发明专利技术通过有限次的迭代,可以获得节点分层的近似最优解,可显著提高加密链路构建的成功率,降低加密链路的通讯延迟,节约给加密链路调试调优的人力。节约给加密链路调试调优的人力。节约给加密链路调试调优的人力。

【技术实现步骤摘要】
OpenStack加密链路节点分层方法与系统


[0001]本专利技术涉及一种基于模拟退火算法的OpenStack加密链路节点分层方法与系统,属于网络安全、计算机软件领域。

技术介绍

[0002]为了增强OpenStack集群中虚拟机的反跟踪、反溯源能力,专利CN110191105B提供了一种OpenStack加密链路实现方法及系统。加密链路由网络节点和若干个中间节点按顺序连接而成,相邻的节点间形成一条加密隧道,依次连通这些加密隧道,形成一条完整的加密链路。
[0003]为了提高OpenStack加密链路建立的成功率和可用性,专利CN113542077B公开了一种OpenStack加密链路管理方法和系统。如图1所示,该专利技术首先将网络节点与目标站点间的中间节点进行分层;再以网络节点为起点,目标站点为终点,应用A星算法选取合适的中间节点作为加密链路使用的中间节点,组成加密链路。
[0004]在上述方法中,中间节点的分层可由该系统随机分配,也可由用户人工配置。但这两种分层方法都存在不足:1、随机分配没有考虑节点之间的网络连接质量,可能导致相邻两层中的节点网络连接性差,组成的加密链路通讯延迟大、通讯质量低,甚至无法连通,在后续过程中也需要人工调试。2、人工配置的自动化程度低,为保证加密链路通讯质量,需要消耗大量人工工时对节点分层进行调试和调优。而且即使通过人工调试使得可以成功构建加密链路,也不能保证中间的节点分配处于使得加密链路延迟最小的最合理状态。

技术实现思路

[0005]专利技术目的:针对上述现有技术存在的问题,本专利技术目的在于提供一种OpenStack加密链路节点分层方法与系统,基于模拟退火算法自动给中间节点分层,以提高加密链路构建的成功率,降低加密链路的通讯延迟。
[0006]技术方案:为实现上述专利技术目的,本专利技术采用如下技术方案:
[0007]一种OpenStack加密链路节点分层方法,包括如下步骤:
[0008]步骤1、获取各节点两两之间的延迟,所述节点包括OpenStack网络节点、目标站点和加密链路中所有可用的中间节点;
[0009]步骤2、将中间节点按照设定的中间节点层数和各层中间节点个数随机生成初始排列,作为当前状态;设定初始退火温度T;
[0010]步骤3、计算排列中每个中间节点的延迟指数,并在每一个中间层内,按照延迟指数大小将中间节点重新排序;其中每个中间节点的延迟指数为该节点的左邻延迟指数和右邻延迟指数的算术平均,所述左邻延迟指数为该节点和其上一层所有节点的延迟的算术平均,所述右邻延迟指数为该节点和其下一层所有节点的延迟的算术平均;
[0011]步骤4、将所有中间节点的延迟指数加和,作为全局延迟指数DIG;
[0012]步骤5、随机选择两个中间层,在选中的两个中间层中各选出一个中间节点交换位
置,得到一个新的排列;其中优先选择中间层中延迟指数大的节点;
[0013]步骤6、按照步骤3至步骤4的方法重新计算全局延迟指数DIG
new

[0014]步骤7、若DIG
new
小于DIG,则接受扰动后的排列作为当前状态,否则按照概率接受扰动后的排列作为当前状态;
[0015]步骤8、循环步骤5至步骤7,直到达到设定的迭代次数;
[0016]步骤9、若满足终止条件,则将当前中间节点的排列状态作为自动分层的结果,结束;否则执行步骤10;
[0017]步骤10、降低退火温度T,并重置迭代次数,重复步骤5至步骤9。
[0018]作为优选,节点(x,y)的延迟指数DI
(x,y)
计算方式表示为:
[0019][0020]其中,x为中间层序号,y为节点在中间层中的序号,M
x
‑1、M
x+1
分别为第x

1、x+1中间层的节点个数,ND((x,y),(x

1,i))、ND((x,y),(x+1,j))分别表示节点(x,y)与其上一层中第i节点、下一层中第j节点的延迟。
[0021]作为优选,步骤5中根据如下方法选择中间层中的节点:每一个中间层内按照延迟指数从小到大将中间节点排序,生成一个范围内的随机数R,计算log
2 R,结果向上取整作为选中的节点次序;其中i为中间层序号,M
i
为第i中间层的节点总数。
[0022]作为优选,步骤9中终止条件为:连续扰动超过预设的次数而当前状态无更新。
[0023]作为优选,所述延迟为双向延迟,由ping等工具多次测量取均值。
[0024]基于相同的专利技术构思,本专利技术提供一种OpenStack加密链路节点分层系统,包括:
[0025]延迟采集模块,用于获取各节点两两之间的延迟,所述节点包括OpenStack网络节点、目标站点和加密链路中所有可用的中间节点;
[0026]初始化模块,用于将中间节点按照设定的中间节点层数和各层中间节点个数随机生成初始排列,作为当前状态;设定初始退火温度T;
[0027]延迟指数计算模块,用于计算排列中每个中间节点的延迟指数,并在每一个中间层内,按照延迟指数大小将中间节点重新排序;其中每个中间节点的延迟指数为该节点的左邻延迟指数和右邻延迟指数的算术平均,所述左邻延迟指数为该节点和其上一层所有节点的延迟的算术平均,所述右邻延迟指数为该节点和其下一层所有节点的延迟的算术平均;将所有中间节点的延迟指数加和,作为全局延迟指数;
[0028]扰动模块,用于随机选择两个中间层,在选中的两个中间层中各选出一个中间节点交换位置,得到一个新的排列;其中优先选择中间层中延迟指数大的节点;
[0029]扰动接受判定模块,用于通过延迟指数计算模块计算扰动后的排列的全局延迟指数DIG
new
,与扰动前的全局延迟指数DIG进行比较,若DIG
new
小于DIG,则接受扰动后的排列,否则按照概率接受扰动后的排列;
[0030]以及,模拟退火算法控制模块,用于循环对中间节点的排列状态进行扰动和判定,直到达到设定的迭代次数;若满足算法终止条件,则将当前中间节点的排列状态作为自动
分层的结果,否则降低退火温度T,并重置迭代次数,重复进行扰动和判定,直到算法终止。
[0031]基于相同的专利技术构思,本专利技术提供一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的OpenStack加密链路节点分层方法的步骤。
[0032]基于相同的专利技术构思,本专利技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述的OpenStack加密链路节点分层方法的步骤。
[0033]有益效果:与现有技术相比,本专利技术具有如下优点:1、充分考虑到加密链路中各节点两两之间的延迟,使用此种方法分层可显著提高加密链本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种OpenStack加密链路节点分层方法,其特征在于,包括如下步骤:步骤1、获取各节点两两之间的延迟,所述节点包括OpenStack网络节点、目标站点和加密链路中所有可用的中间节点;步骤2、将中间节点按照设定的中间节点层数和各层中间节点个数随机生成初始排列,作为当前状态;设定初始退火温度T;步骤3、计算排列中每个中间节点的延迟指数,并在每一个中间层内,按照延迟指数大小将中间节点重新排序;其中每个中间节点的延迟指数为该节点的左邻延迟指数和右邻延迟指数的算术平均,所述左邻延迟指数为该节点和其上一层所有节点的延迟的算术平均,所述右邻延迟指数为该节点和其下一层所有节点的延迟的算术平均;步骤4、将所有中间节点的延迟指数加和,作为全局延迟指数DIG;步骤5、随机选择两个中间层,在选中的两个中间层中各选出一个中间节点交换位置,得到一个新的排列;其中优先选择中间层中延迟指数大的节点;步骤6、按照步骤3至步骤4的方法重新计算全局延迟指数DIG
new
;步骤7、若DIG
new
小于DIG,则接受扰动后的排列作为当前状态,否则按照概率接受扰动后的排列作为当前状态;步骤8、循环步骤5至步骤7,直到达到设定的迭代次数;步骤9、若满足终止条件,则将当前中间节点的排列状态作为自动分层的结果,结束;否则执行步骤10;步骤10、降低退火温度T,并重置迭代次数,重复步骤5至步骤9。2.根据权利要求1所述的OpenStack加密链路节点分层方法,其特征在于,节点(x,y)的延迟指数DI
(x,y)
计算方式表示为:其中,x为中间层序号,y为节点在中间层中的序号,M
x
‑1、M
x+1
分别为第x

1、x+1中间层的节点个数,ND((x,y),(x

1,i))、ND((x,y),(x+1,j))分别表示节点(x,y)与其上一层中第i节点、下一层中第j节点的延迟。3.根据权利要求1所述的OpenStack加密链路节点分层方法,其特征在于,步骤5中根据如下方法选择中间层中的节点:每一个中间层内按照延迟指数从小到大将中间节点排序,生成一个范围内的随机数R,计算log2R,结果向上取整作为选中的节点次序;其中i为中间层序号,M
i
为第i中间层的节点总数。4.根据权利要求1所述的OpenStack加密链路节点分层方法,其特征在于,步骤9中终止条件为:连续扰动超过预设的次数而当前状态无更新。5.根据权利要求1所述的OpenStack加密链路节点分层方法,其特征在于,所述延迟为双向延迟,通过多次测量取均值。6.一种OpenStack加密链路节点分层系统,其特征在于,包括:延迟采集模块,用于获取各节点两两之间的延迟,所述节点包括OpenStack网络节点、

【专利技术属性】
技术研发人员:宋遥谢峥高庆官殷庆荣袁继锋卢成远
申请(专利权)人:南京赛宁信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1