一种基于学习和推理的虚拟网络映射方法,包括下列操作步骤:(1)根据历史数据生成底层物理网络节点之间的依赖关系矩阵M;(2)根据虚拟节点对CPU计算资源的需求大小,从大到小对虚拟节点进行排序;(3)根据依赖关系矩阵M、虚拟节点映射的先后顺序和当前待映射虚拟节点与已完成映射的虚拟节点的拓扑关系,采用贝叶斯推理判决选择当前待映射虚拟节点对应的最佳底层物理节点,进行虚拟节点到底层物理节点的节点映射;(4)按照设定的链路映射算法实现虚拟网络上虚拟节点之间的虚拟链路到底层物理网络上物理路径之间的链路映射。
【技术实现步骤摘要】
本专利技术涉及一种实现虚拟网络映射的方法,属于计算机网络
,特别是属于网络虚拟化
技术介绍
网络虚拟化是指将一个共用的物理的基础设施网络从逻辑上划分为多个相互隔离的、异质、具有各自特定拓扑结构的虚拟网络。虚拟网络通常由多个虚拟节点以及多条虚拟链路组成逻辑拓扑,每个虚拟节点和每条虚拟链路都有各自不同的需求,如虚拟节点对CPU计算能力的需求和所处地理位置的要求(虚拟节点需要映射在处于一定地理位置范围之内的底层物理节点上,以满足一定的拓扑结构或者提供一定范围的服务),虚拟链路对带宽能力的需求。服务提供商通过租用基础设施提供商提供的底层物理网络上的虚拟资源切片,充分利用底层物理网络基础设施的访问控制权,能够在无需进行相关物理网络硬件投入的条件下,快速部署自定义的网络协议或架构(即虚拟网络),向终端用户提供多样化的服务。在上层虚拟网络向底层物理网络的映射过程中,由于需要同时满足节点和链路的资源需求,导致虚拟网络映射问题是一个NP困难问题。如何有效且高效的实现虚拟网络映射是网络虚拟化技术发展的关键挑战。目前相应的虚拟网络映射解决方案大多基于启发式算法而设计,然而目前的启发式虚拟网络映射方案存在如下问题:(1)普遍使用贪婪匹配策略为每个待映射节点选择当前排序最高的物理节点进行映射,而忽略了先前已经映射好的虚拟节点与当前待映射虚拟节点的关系和影响,未考虑虚拟网络的拓扑,因此极易导致更高的带宽资源消耗、增加网络资源的碎片化程度,并最终导致网络映射性能的降低;(2)节点排序算法对于虚拟网络映射的性能,特别是采用贪婪匹配策略的虚拟网络映射的性能具有重要影响,而目前节点排序算法中普遍采用的资源评价指标是将节点自身的CPU计算能力乘以其相邻链路带宽之和作为一个节点资源能力的衡量标准。这种资源评价指标并不全面准确,有可能在节点映射中选择CPU能力强但链路带宽资源不足的物理节点,进而导致后续链路映射的失败。因此,在进行虚拟网络映射的过程中,如何更好的对底层物理网络节点的资源能力进行评价,如何参考已经映射完毕的虚拟节点及其拓扑结构,实现节点映射的优化选择是目前计算机网络工程领域一个亟待解决的技术难题。
技术实现思路
有鉴于此,本专利技术的目的是专利技术一种实现虚拟网络映射的方法,能够从统计学的角度利用先前虚拟网络请求在底层物理网络上成功映射的历史数据,实现对底层物理网络资源能力的科学评价,进而结合已完成映射虚拟节点与待映射虚拟节点的拓扑关系,运用学习和推理技术实现节点映射和链路映射的优化选择。为了达到上述目的,本专利技术提出了基于学习和推理的虚拟网络映射方法,所述方法包括下列操作步骤:(1)根据虚拟网络请求在底层物理网络上成功映射的历史数据集合,统计生成底层物理网络节点之间的依赖关系矩阵M,具体过程包括如下操作子步骤:(101)对底层物理网络的所有物理节点进行编号,编号从1开始直到n,n是一个自然数,其大小等于该底层物理网络的物理节点总数;(102)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一条映射记录,都构造一个n行n列的节点映射矩阵Ik,其中每个元素初始值均为零值,下标k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点被该映射记录中的一个虚拟节点成功映射过,则让所述的节点映射矩阵Ik的第i行第i列的元素aii取值更新为等于该虚拟节点的CPU计算资源需求值,这里i是大于等于1、小于等于n的自然数;把前面得到的所有的节点映射矩阵进行矩阵求和,得到节点映射总矩阵I,即其中Q表示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;(103)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一条映射记录,都构造一个n行n列的链路映射矩阵Rk,其中每个元素初始值均为零值,下标k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点和编号为j的底层物理节点之间的一条物理路径被该映射记录中的一条虚拟链路成功映射过,则让所述的链路映射矩阵Rk的第i行第j列的元素bij取值为物理节点i的节点度数值除以该条物理路径的跳数值,让所述的链路映射矩阵Rk的第j行第i列的元素bji取值为节点j的节点度数值除以该条物理路径的跳数值;其中i和j都是大于等于1、小于等于n的自然数,i和j不能相等;把前面得到的所有的链路映射矩阵进行矩阵求和,得到链路映射总矩阵R,即其中Q表示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;(104)将所述的节点映射总矩阵I和链路映射总矩阵R进行归一化处理,得到底层物理网络节点之间的依赖关系矩阵M;归一化处理的具体方式是:依赖关系矩阵M的第i行第j列的元素Mij取值为式中Iij表示节点映射总矩阵I的第i行第j列元素,Rij表示链路映射总矩阵R第i行第j列元素,i和j都是大于等于1、小于等于n的自然数;这样当i等于j时,元素Mii是底层物理网络中编号为i的物理节点的节点重要程度值,而当i不等于j时,元素Mij是底层物理网络中编号为i的物理节点到编号为j的物理节点的链路紧密程度值;(2)对于当前等待进行映射的虚拟网络请求,根据该虚拟网络中虚拟节点对CPU计算资源的需求大小,从大到小对该虚拟网络的所有虚拟节点进行排序,此顺序即为虚拟节点映射的先后顺序;(3)根据前述所生成的依赖关系矩阵M和所述的虚拟节点映射的先后顺序,根据当前待映射虚拟节点与已完成映射的虚拟节点的拓扑关系,采用贝叶斯推理判决选择当前待映射虚拟节点对应的最佳底层物理节点,进行虚拟节点到底层物理节点的节点映射;(4)节点映射全部成功完成之后,按照设定的链路映射算法实现虚拟网络上虚拟节点之间的虚拟链路到底层物理网络上物理路径之间的链路映射。所述步骤3的具体内容是包括如下操作子步骤:(301)按照所述的虚拟节点映射的先后顺序,取出当前还未进行映射的排在最前面的虚拟节点;(302)如果该虚拟节点没有父节点,则找出当前能够满足该虚拟节点的CPU计算资源要求的所有候选底层物理节点,然后从中选出节点重要程度值最高的那个底层物理节点进行节点映射,即从依赖关系矩阵M中选出候选底层物理节点所对应的Mii值最高的那个物理节点,将该虚拟节点映射到此物理节点上,其中下标i表示所述的候选底层物理节点的编号;转步骤(304);(303)如果该虚拟节点有m个父节点,则首先确定与该虚拟节点所有父节点有对应映射关系的m个底层物理节点,并找出当前能够满足该虚拟节点的CPU计算资源要求的所有候选本文档来自技高网...
【技术保护点】
一种基于学习和推理的虚拟网络映射方法,其特征在于:所述方法包括下列操作步骤:(1)根据虚拟网络请求在底层物理网络上成功映射的历史数据集合,统计生成底层物理网络节点之间的依赖关系矩阵M,具体过程包括如下操作子步骤:(101)对底层物理网络的所有物理节点进行编号,编号从1开始直到n,n是一个自然数,其大小等于该底层物理网络的物理节点总数;(102)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一条映射记录,都构造一个n行n列的节点映射矩阵Ik,其中每个元素初始值均为零值,下标k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点被该映射记录中的一个虚拟节点成功映射过,则让所述的节点映射矩阵Ik的第i行第i列的元素aii取值更新为等于该虚拟节点的CPU计算资源需求值,这里i是大于等于1、小于等于n的自然数;把前面得到的所有的节点映射矩阵进行矩阵求和,得到节点映射总矩阵I,即其中Q表示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;(103)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一条映射记录,都构造一个n行n列的链路映射矩阵Rk,其中每个元素初始值均为零值,下标k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点和编号为j的底层物理节点之间的一条物理路径被该映射记录中的一条虚拟链路成功映射过,则让所述的链路映射矩阵Rk的第i行第j列的元素bij取值为物理节点i的节点度数值除以该条物理路径的跳数值,让所述的链路映射矩阵Rk的第j行第i列的元素bji取值为节点j的节点度数值除以该条物理路径的跳数值;其中i和j都是大于等于1、小于等于n的自然数,i和j不能相等;把前面得到的所有的链路映射矩阵进行矩阵求和,得到链路映射总矩阵R,即其中Q表示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;(104)将所述的节点映射总矩阵I和链路映射总矩阵R进行归一化处理,得到底层物理网络节点之间的依赖关系矩阵M;归一化处理的具体方式是:依赖关系矩阵M的第i行第j列的元素Mij取值为式中Iij表示节点映射总矩阵I的第i行第j列元素,Rij表示链路映射总矩阵R第i行第j列元素,i和j都是大于等于1、小于等于n的自然数;这样当i等于j时,元素Mii是底层物理网络中编号为i的物理节点的节点重要程度值,而当i不等于j时,元素Mij是底层物理网络中编号为i的物理节点到编号为j的物理节点的链路紧密程度值;(2)对于当前等待进行映射的虚拟网络请求,根据该虚拟网络中虚拟节点对CPU计算资源的需求大小,从大到小对该虚拟网络的所有虚拟节点进行排序,此顺序即为虚拟节点映射的先后顺序;(3)根据前述所生成的依赖关系矩阵M和所述的虚拟节点映射的先后顺序,根据当前待映射虚拟节点与已完成映射的虚拟节点的拓扑关系,采用贝叶斯推理判决选择当前待映射虚拟节点对应的最佳底层物理节点,进行虚拟节点到底层物理节点的节点映射;(4)节点映射全部成功完成之后,按照设定的链路映射算法实现虚拟网络上虚拟节点之间的虚拟链路到底层物理网络上物理路径之间的链路映射。...
【技术特征摘要】
1.一种基于学习和推理的虚拟网络映射方法,其特征在于:所述方法包括下列操作步骤:
(1)根据虚拟网络请求在底层物理网络上成功映射的历史数据集合,统计生成底层物理
网络节点之间的依赖关系矩阵M,具体过程包括如下操作子步骤:
(101)对底层物理网络的所有物理节点进行编号,编号从1开始直到n,n是一个自
然数,其大小等于该底层物理网络的物理节点总数;
(102)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一
条映射记录,都构造一个n行n列的节点映射矩阵Ik,其中每个元素初始值均为零值,下标
k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点被该映射记录中的一
个虚拟节点成功映射过,则让所述的节点映射矩阵Ik的第i行第i列的元素aii取值更新为等
于该虚拟节点的CPU计算资源需求值,这里i是大于等于1、小于等于n的自然数;把前面
得到的所有的节点映射矩阵进行矩阵求和,得到节点映射总矩阵I,即其中Q表
示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;
(103)从虚拟网络请求在底层物理网络上得以成功映射的历史数据集合中,取出每一
条映射记录,都构造一个n行n列的链路映射矩阵Rk,其中每个元素初始值均为零值,下标
k表示第k条映射记录;在该映射记录中,如果编号为i的底层物理节点和编号为j的底层物
理节点之间的一条物理路径被该映射记录中的一条虚拟链路成功映射过,则让所述的链路映
射矩阵Rk的第i行第j列的元素bij取值为物理节点i的节点度数值除以该条物理路径的跳数
值,让所述的链路映射矩阵Rk的第j行第i列的元素bji取值为节点j的节点度数值除以该条
物理路径的跳数值;其中i和j都是大于等于1、小于等于n的自然数,i和j不能相等;把前
面得到的所有的链路映射矩阵进行矩阵求和,得到链路映射总矩阵R,即其中Q
表示所述的虚拟网络请求在底层物理网络上得以成功映射的历史数据集合的大小;
(104)将所述的节点映射总矩阵I和链路映射总矩阵R进行归一化处理,得到底层物
理网络节点之间的依赖关系矩阵M;归一化处理的具体方式是:依赖关系矩阵M的第i行第
j列的元素Mij取值为式中Iij表示节点映射总矩阵I的第i行第j列
元素,Rij表示链路映射总矩阵R第i行第j列元素,i和j都是大于等于1、小于等于n的自
\t然数;这样当i等于j时,元素Mii是底层物理网络中编号为i的物理节点的节点重要程度值,
而当i不等于j时,元素Mij是底层物理网络中编号为i的物理节点到编号为...
【专利技术属性】
技术研发人员:廖建新,王敬宇,丰旻,卿苏德,戚琦,樊利民,
申请(专利权)人:北京邮电大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。