基于门限式负载的混合虚网映射方法与流程

文档序号:11778070阅读:463来源:国知局
基于门限式负载的混合虚网映射方法与流程

本发明属于卫星通信网络技术领域,具体说是一种基于门限式负载的混合虚网映射方法。



背景技术:

随着信息技术的发展,以卫星网络为核心的空间信息系统成为了目前世界各国的研究热点。卫星网络可以不受地面地理位置、气象、自然灾害等因素影响,具有全球全时的覆盖能力。但同时又由于卫星网络资源呈现异构性、分布性、自治性、可扩展性和动态性等特征,使得传统的卫星网络资源管理技术无法满足不断增加且特征差异明显的多种业务需求。

在卫星网络中,由于卫星节点的高速运行及其卫星环境的拓扑尺度大,使得卫星节点的cpu、星间链路的带宽等稀缺资源难以得到较高利用。



技术实现要素:

鉴于上述问题,为了更好地配合层次型的资源管理体系架构进行虚网映射,本发明引入一种负载分解的方法来设计虚网划分,提高了卫星资源利用率。

为均衡了部分关键卫星星间链路的负载,使卫星物理网络负载分布较为均衡,同时也提高了卫星资源的利用率,本发明的技术方案是这样实现的:

基于门限式负载的混合虚网映射方法,包括如下步骤:

步骤1:判断是否有请求剩余,若有剩余,前进至步骤2;若无剩余,则映射完毕,算法结束;

步骤2:判断当前请求是否有全局虚节点剩余,若有剩余,前进至步骤3;若无剩余,跳至步骤8;

步骤3:在物理节点中选出满足全局节点需求的物理节点集合,若该集合为空,则跳至步骤7;否则前进至步骤4;

步骤4:计算该物理节点集合的平均链路负载,若物理节点集合的平均链路负载小于链路负载静态丢弃门限值,前进至步骤5;若物理节点集合的平均链路负载大于等于链路负载静态丢弃门限值且小于最大综合负载优先映射的静态逆变门限值,或物理节点集合的平均链路负载大于等于最大综合负载优先映射的静态逆变门限值,跳至步骤6;

步骤5:若物理节点集合的平均链路负载小于最大综合负载优先映射的静态逆变门限值,从物理节点集合中选择最小卫星节点综合负载,完成该全局节点的映射,完成后跳至步骤2;若物理节点集合的平均链路负载大于等于最大综合负载优先映射的静态逆变门限值,从物理节点集合中选择最大卫星节点综合负载来映射该全局节点;映射完成后,跳至步骤2;

步骤6:调用丢弃函数,若取值为0,跳至步骤5;否则前进至步骤7;

步骤7:将包含该全局节点的虚网请求送至等待队列,虚网请求重新排队的次数delay已预先设置,超过delay则拒绝该请求;跳至步骤1;

步骤8:采用回溯法映射该请求中回溯节点及其链路。

进一步地,物理节点集合的平均链路负载为:

se(t,es)为物理链路es在时刻t的利用率,表示该节点的m条链路的平均链路负载;为物理节点集的平均链路负载。

进一步地,星间链路负载公式为:

其中ev↑es表示虚链路ev映射到物理链路es上,b(es)表示物理链路的总带宽,b(ev)表示已映射虚链路请求的带宽。

进一步地,最小卫星节点综合负载公式为:其中p表示一个物理节点集合,sc为卫星节点综合负载,公式为sn(t,ns)为卫星节点的负载,公式为其中nv↑ns表示虚节点nv映射到物理节点ns上,c(ns)表示物理节点的总cpu,c(nv)表示已映射虚节点请求的cpu。

进一步地,最大卫星节点综合负载公式为:

更进一步地,基于卫星网络分层分域的虚拟资源管理架构下,采用k-负载进行负载分解来设计节点划分与虚网划分。

更进一步地,采用门限式负载的混合虚网映射方法时,首先需要统计物理节点的剩余cpu资源,并设置链路负载静态丢弃门限值γ和最大综合负载优先映射的静态逆变门限值η。

更进一步地,映射收益为基础设施提供商映射成功虚网可获得的利润,计算公式为:式中b(ev)是映射成功的虚网带宽,c(nv)是映射成功的虚网节点cpu资源,λ和μ是用于调节带宽和cpu的权重系数;

映射成本为基础设施提供商成功映射虚网所提供的资源,计算公式为:b(ls)是物理路径提供给虚链路的带宽。

作为更进一步地,虚网请求的丢弃概率为一个时间窗内的虚网请求,将虚网请求按照映射收益r(gv)排序,选择出rmax(gv),计算公式为:

作为更进一步地,丢弃函数的公式为:

本发明的有益效果是:通过引入基于k核分解的思想来划分虚网,从而降低虚网整网映射的复杂度;将卫星节点负载与星间链路负载综合考虑,设立链路负载静态丢弃门限值和链路负载静态逆变门限值,从而提高虚网的映射收益,最终达到提高卫星资源利用率的目的。

附图说明

本发明共有附图6幅:

图1为本发明基于门限式负载的混合虚网映射方法的流程图;

图2为门限式负载混合虚网映射算法原理图;

图3为映射成功率(时间)分布图;

图4为映射成功率(速率)分布图;

图5为收益/成本比(时间)分布图;

图6为收益/成本比(速率)分布图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。

在详细说明基于门限式负载的混合虚网映射方法之前,先介绍本方法所需的相关参数以及相关计算公式。

首先,需要将卫星通信网络所包含的物理资源进行提出与量化。本方法需要以下参数:物理链路的总带宽和剩余带宽;物理节点的总cpu资源和剩余cpu资源数量;链路负载静态丢弃门限值和链路负载静态逆变门限值。

其次,本方法涉及了相关指标参数及其计算公式。

(1)根据物理节点ns总的cpu资源c(ns)和已映射使用的cpu资源定义时刻t该物理节点的剩余cpu资源如下:

其中nv↑ns表示虚节点nv映射到物理节点ns上,c(ns)表示物理节点的总cpu,c(nv)表示已映射虚节点请求的cpu。

(2)卫星节点负载:物理节点ns在时刻t的负载sn(t,ns)为该物理节点映射已使用的cpu与节点cpu总量的比值:

(3)星间链路负载:物理链路es在时刻t的利用率se(t,es),即该物理链路已映射使用的带宽与链路总带宽的比值:

其中ev↑es表示虚链路ev映射到物理链路es上,b(es)表示物理链路的总带宽,b(ev)表示已映射虚链路请求的带宽。

(4)卫星节点综合负载:

(5)最小卫星节点综合负载:其中p表示一个物理节点集合,该集合中的每个物理节点剩余cpu资源均满足虚节点的cpu请求。

(6)最大卫星节点综合负载:

(7)映射收益是指基础设施提供商映射成功虚网可获得的利润,根据映射成功的虚网带宽和cpu定义:

其中,b(ev)是映射成功的虚网带宽,c(nv)是映射成功的虚网节点cpu资源,λ和μ是用于调节带宽和cpu的权重系数,也可以理解为它们的单价,本文中设置λ=μ=1,不影响其一般性。

(8)映射成本是指基础设施提供商成功映射虚网所提供的资源,根据映射的物理节点与物理路径定义为:

其中,b(ls)是物理路径提供给虚链路的带宽。

(9)对于一个时间窗内的虚网请求,将虚网请求按照映射收益(revenue)r(gv)排序,选择出r(gv),那么每一个虚网请求的丢弃概率为:

(10)丢弃函数定义为:

该表达式值若为1,则将请求送至等待队列或拒绝请求;若为0,则允许映射。其中rand(x)表示一个(0.00~0.99)的一个随机数,也即x的取值范围。

实施例1

本方法对划分后的每一个虚拟子网,首先采用二阶段全局最优的思想,以卫星节点综合负载为标准,执行最小综合负载优先的节点映射算法,来映射虚拟子网中的全局节点。同时,考虑到卫星星间链路带宽资源的稀缺,为了提高虚网映射收益,该算法在全局节点映射过程中,设立链路负载静态丢弃门限值γ,若所选取的满足全局节点cpu要求的物理节点集的平均链路负载不小于该丢弃门限,即则采用服从一定概率丢弃的算法选择是否映射,其中若丢弃函数f(ev)为1,则送至等待队列或者丢弃。另外,该算法针对在虚网请求不断增加的情况下,由于映射算法的成功率会越来越差,大量资源空闲得不到利用,因此在该算法中为了完成后续大规模虚拟网络的映射,设置链路负载静态逆变门限值η,该值与虚网请求的规模有关,其中η>γ,即当f(ev)=0且执行最大综合负载优先的节点映射算法。

参照图1所示,基于门限式负载的混合虚网映射方法的具体实施步骤如下:

s1:根据卫星节点的请求队列,判断是否有请求剩余,若有剩余,前进至步骤s2;若无剩余,则映射完毕,算法结束。

s2:通过搜索虚网,判断当前请求是否有全局虚节点剩余若,有剩余,前进至步骤s3;若无剩余,跳至步骤s8。

s3:在物理节点中选出满足全局节点需求的物理节点snode集合,若该集合为空,则跳至步骤s7;否则前进至步骤s4。

s4:计算该物理节点集合的平均链路负载,若前进至步骤s5;否则(即跳至步骤s6。

s5:若从物理节点集合中选择最小节点综合负载smin,完成该全局节点的映射,完成后跳至步骤s2;若从物理节点集合中选择最大节点综合负载smax来映射该全局节点。映射完成后,跳至步骤s2。

s6:调用丢弃函数,若取值为0,跳至步骤s5;否则前进至步骤s7。

s7:将包含该全局节点的虚网请求送至等待队列,虚网请求重新排队的次数delay已预先设置,超过delay则拒绝该请求。跳至步骤s1。

s8:采用回溯法映射该请求中回溯节点及其链路,跳至步骤s1。

实施例2

作为对实施例1的进一步限定:基于卫星网络分层分域的虚拟资源管理架构下,采用k-负载进行负载分解来设计节点划分与虚网划分。

负载分解

在网络中若一个节点u满足某一条链路e的端点,则称u和e互为关联,和该节点u关联的链路个数称为u的连接度。假设对于每个虚网请求用一个无向图g=(n,e)来表示,其中有|n|个节点和|e|条边。那么负载分解定义为:

(1)无向图即虚网请求的k-负载可以通过迭代地删除所有连接度小于k的节点,直到图中所有剩余节点连接度至少为k时得到。

(2)如果一个节点属于k-负载,而不属于(k+1)-负载,那么这个节点的负载指数为k。

节点划分定义如下:

定义1:对拓扑图进行k-负载处理,其中负载指数为k的节点描述为全局节点;

定义2:对拓扑图进行k-负载处理,将负载指数小于k的节点描述为回溯节点。

虚网划分规则:

规则1:划分后的每个虚拟子网,至多包含两个全局节点,保证虚拟子网的规模不至于过大;

规则2:划分后的每个虚拟子网,至少包含一个全局节点且不存在单个回溯节点或全局节点,保证每个节点(无论回溯还是全局节点)均属于其中一个虚拟子网,且避免了子网数目过多而导致无法映射到物理网络中的问题。

无论是一阶段的回溯法虚网映射算法还是二阶段的虚网映射都无法满足卫星网络的特性,所以本文针对卫星网络利用率低的特点,结合卫星节点负载与星间链路负载,建立门限式负载混合虚网映射方法。

为了更清楚地解释本文所提映射算法,我们以图2为例。图2右侧表示物理网络,线条上方的数字表示物理链路的剩余带宽,括号内的数字表示物理链路的总带宽,节点上方的数字表示物理节点的剩余cpu资源,物理节点的cpu资源均设为100。设置链路负载静态丢弃门限值γ,本例中取值为0.5;以及在该算法实现负载均衡的条件下,为了避免大规模虚拟请求的映射失败,设置最大综合负载优先映射的静态逆变门限值η,其中η>γ,本例中取值为0.7。图2左侧表示两个虚拟网请求,其中虚节点a和c为核心节点,b、d为普通节点。由于此时,满足a的节点集合的平均链路负载小于门限γ,根据卫星节点综合负载公式,此时节点c拥有最小的综合负载,因此将核心虚节点a映射到物理节点c上。对于虚节点b,采用一阶段映射回溯法来完成映射,在本例中,由于物理节点f、g均在c的一跳范围内,且g具有最小的综合负载,故而将节点g来映射虚节点b,物理链路(c,g)来映射虚链路(a,b)。此时,对于虚网请求vn-2,满足核心虚节点c需求的物理节点集合的平均链路负载为0.53,介于γ和η之间,因此采用服从一定概率丢弃的算法选择物理节点来映射虚节点a,若丢弃函数f(ev)为1,则送至等待队列或者丢弃。这样做不仅均衡了部分关键卫星链路的负载,同时也使卫星物理网络负载分布较为均衡,提高了底层物理网络资源的利用率流。

实施例3

该实施例针对本申请提出的方法进行仿真分析:

算法衡量指标:

(1)映射成功率

映射成功率(mappingsuccessratio,msr)定义为已映射的虚网请求个数vnmap与虚网请求总数vnsum的比值:

(2)收益/成本比

收益/成本比(revenue/costratio)作为映射算法的一个重要衡量指标,表示着物理网络资源的使用效率。该值为0到1之间浮动的比值,1表示算法达到最优化:

仿真环境与结果:

仿真中网络设置为66个节点和450条链路,其中,每个分域的节点个数服从[1012]的均匀分布,节点的cpu资源统一为100mhz,链路条数服从[80120]的均匀分布,链路带宽资源服从[2050]的均匀分布,单位为mb/s,利用matlab工具生成m×m,m∈[10,12]的对称矩阵,对角线上的值代表节点cpu,其余值表示两节点间的带宽,若值为0,则表示该节点间无法通信。虚网请求的到达过程模拟为在每个时间窗服从期望值为5的泊松过程,每个虚网请求的生存时间为10个时间窗,虚网请求的容忍delay值设为3个时间窗,每个时间窗定为100个时间单位。虚网请求的节点个数服从[28]的均匀分布,划分后的虚拟子网的节点个数及cpu需求分别服从[25]和[515]的均匀分布,虚链路条数及其带宽请求分别服从[15]和[313]的均匀分布,对于每次实验,仿真时间设为1200个时间单位,仿真实例运行10次,计算算术平均值,记为仿真试验结果。

为保证虚网映射的成功率,取链路负载的中间值作为链路负载静态丢弃门限值,即γ设为0.5;由于虚网规模链路最大带宽需求为13mb/s,故将切换最大综合负载优先映射算法的静态逆变门限值η设为0.74(即37/50)。

本节将门限式负载虚网混合算法(thresholdstresswithhybridvirtualnetworkmappingalgorithm,ts-hybrid-vnm)与以下两种方法进行仿真比较:

(1)minns-sp-vnm——该算法属于两阶段映射算法。节点映射采用最小节点负载优先算法(minimumnodestresspriority),链路映射采用k最短路径映射方法(kshortestpath)。

(2)back-vnm——该算法属于一阶段映射算法。首节点映射选择贪婪算法,通过试错回溯法(backtrackingalgorithm)的思想,完成整个虚拟网络的映射。其中探测阈值定为3。

图3和图4均表示虚网映射的成功率。其中图3的横轴为时间,图中用时间窗来表示(每100个时间单位为一个时间窗)。由于虚网请求的生存周期为10个时间窗,所以在第十个时间之前,随着虚网请求的数量不断增加,这三种算法的映射成功率均呈现下降趋势,但由于在第六个时间窗时,物理网络的链路负载达到丢弃门限,故本文的ts-hybrid-vnm算法的映射成功率有所降低。在第九个时间窗时,物理网络负载达到峰值,三种算法的映射成功率均达到最低点,但由于本文采用丢弃门限,使物理网络的负载减小,且采用最大负载优先算法,使得这段时间的虚网映射成功率高于其他两种算法。在第十个时间窗之后,由于存在虚拟网络生存周期结束,故释放资源,使得虚网映射成功率获得提升。图4横轴为每时间窗虚网到达的速率,可以看出随着虚网速率增加,本文算法同样获得较高映射成功率。本文算法虽然在早期阶段会造成较小的虚网丢弃,但当虚网到达趋于稳定时,最终使得虚网的成功率有明显的提升,而且在物理网络负载过大时,增加了大规模虚网请求映射成功的可能性。

图5和图6分别描述了在时间和虚网到达速率因素影响下的虚网映射的收益/成本比。随着虚网个数的增加,虚链路需要多条物理链路组成的物理路径来完成映射,故3种算法的re/cost比都呈下降趋势。但由于本文算法ts-hybrid-vnm采用了丢弃门限,更大限度地保证收益相对高的虚网请求,故而在图5中第六时间窗时出现re/cost比升高的现象。从图6中也可以看出在虚网到达速率逐渐增高下,本文算法的平均re/cost比也相对较高。相对其他两种算法,该算法最终提高了虚网收益,降低了虚网映射成本。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1