一种基于历史数据实现拓扑感知的虚拟网络映射方法

文档序号:7865659阅读:185来源:国知局
专利名称:一种基于历史数据实现拓扑感知的虚拟网络映射方法
技术领域
本发明涉及一种实现虚拟网络映射的方法,属于计算机网络技术领域,特别是属于网络虚拟化技术领域。
背景技术
网络虚拟化是指将一个共用的物理网络基础设施从逻辑上划分为多个相互隔离的、具有不同网络拓扑的虚拟网络。虚拟网络一般包括多个虚拟节点和多条虚拟链路,每个虚拟节点和每条虚拟链路都具有不同的资源需求,如虚拟节点对中央处理单元CPU的资源需求,虚拟链路对物理链路带宽的需求。服务提供商SP通过租用底层物理网络的基础设施切片,充分利用底层物理网络基础设施上提供的访问控制权,能够在不需进行相关物理网络硬件的投入前提下,能够快速部署自定制的网络协议或架构即虚拟网络,给终端用户提供多样化的服务。 在虚拟网络向底层物理网络的映射过程中,由于需要同时满足节点和链路的资源需求,网络虚拟化的映射问题是一个NP-hard问题。目前与其相关的解决方案普遍基于启发式方法而设计,但目前的启发式虚拟网络映射方案存在如下问题(1)目前的资源评分标准是将物理节点的CPU能力值乘以该节点相邻链路带宽之和作为度量值,然而这种资源评分标准并不准确,导致方案有可能选择CPU能力强而链路弱的物理节点进行映射,以致虚拟网路映射在链路映射阶段失败;(2)总是使用贪婪算法选择评分最高的物理节点进行映射,而忽略了已经映射好的虚拟节点的位置即未考虑虚拟网络的拓扑。因此,在进行虚拟网络映射的过程中,如何更好的对底层物理网络资源能力进行评价,如何根据已经映射完毕的虚拟节点及其拓扑结构,实现下一步节点映射的优化选择是目前计算机网络工程领域一个急需要解决的技术难题。

发明内容
有鉴于此,本发明的目的是发明一种实现虚拟网络映射的方法,能够利用底层网络积累的大量的虚拟网络成功映射的历史数据集合,实现对底层物理网络资源能力的科学评价,并能够结合已经映射完毕的虚拟节点及其拓扑结构,实现下一步节点映射的优化选择。为了达到上述目的,本发明提出了一种基于历史数据实现拓扑感知的虚拟网络映射方法,所述方法包括下列操作步骤(I)根据底层物理网络积累的虚拟网络成功映射的历史数据集合,计算底层物理网络节点之间的依赖关系矩阵M ;(2)对于一个需要进行映射的虚拟网络,根据该虚拟网络中虚拟节点对CPU资源的需求大小,从大到小对该虚拟网络的所有虚拟节点进行排序;(3)根据所述的依赖关系矩阵M,按照设定的节点映射方法,对所述的虚拟网络中的虚拟节点按照已经排好的顺序依次进行虚拟节点到底层物理节点的节点映射;
(4)节点映射完毕之后,按照设定的链路映射方法实现虚拟网络的虚拟链路到底层物理网络的物理路径之间的映射。所述步骤I的具体内容是包括如下操作步骤(11)对底层物理网络的所有物理节点从I进行编号,直到编号n,n是一个自然数,等于底层物理网络的物理节点数目;(12)从底层物理网络积累的虚拟网络成功映射的历史数据集合中,取出每一个映射记录;对每一个映射记录,都构造一个η行η列的空矩阵P,初始时该矩阵P的每个元素值为O值;在该映射记录中,如果第i个底层物理节点至少被该映射记录中一个虚拟节点成功映射过,则让矩阵P的第i行第i列的元素an取值为I ;在该映射记录中,如果第i个底层物理节点和第j个底层物理节点之间的一条物理路径至少被该映射记录中的一条虚拟链路成功映射过,则让矩阵P的第i行第j列的元素au和第j行第i列的元素都取值为该条物理路径的跳数的倒数,其中i和j都是大于等于I、小于等于η的自然数,i和j必 须不相等;(13)把步骤12中所构造的所有矩阵P进行矩阵相加求和,得到一个新的η行η列矩阵S ;(14)对矩阵S进行归一化处理,得到底层物理网络节点之间的依赖关系矩阵M ;归
一化处理的具体方式是对于矩阵M第i行第i列的元素Mii取值为该元素表示底
1=1
层物理网络第i个物理节点的平均重要度因子;对于矩阵M第i行第j列的元素Mij取值为M=-L
,J’该元素表示底层物理网络第i个物理节点和第j个物理节点之间的平均关联度
1=1 J^i
因子;上述式中Sii表示矩阵S第i行第i列的元素,Sij表示矩阵S第i行第j列的元素,i和j都是大于等于I、小于等于η的自然数,i和j必须不相等。所述步骤3的具体内容是包括如下操作步骤(31)拿出当前排在最前面的还未进行节点映射的虚拟节点;(32)如果该虚拟节点没有父节点,则从所述的依赖关系矩阵M中找到当前能够满足该虚拟节点的CPU资源要求并且平均重要度因子最高的底层物理节点,把该虚拟节点映射到该物理节点上;如果该虚拟节点有e个父节点,则首先找出与该虚拟节点所有父节点有对应映射关系的e个底层物理节点;然后从所述的依赖关系矩阵M中找到一个当前能够满足该虚拟节点的CPU资源要求的底层物理节点,并且要求该物理节点分别到所述的e个底层物理节点的平均关联度因子的联乘积最大,于是把该虚拟节点映射到该物理节点上;e是一个大于等于I的自然数;所述的虚拟节点的父节点是指与该虚拟节点邻接并且排序排在该虚拟节点之前的虚拟节点,当该虚拟节点进行节点映射时,该虚拟节点的父节点已经完成节点映射了;(33)回到步骤31,直到所有虚拟节点完成映射。所述步骤4中所述的设定的链路映射方法是指k最短路径k-shortest path方法。本发明的有益效果在于本发明的虚拟网络映射方法,利用虚拟网络成功映射的历史数据实现了对底层物理网络资源能力的科学评价,并能够感知虚拟网络的拓扑结构,实现节点映射的优化选择;本发明的虚拟网络映射方法有效地提高了虚拟网络映射的长期平均成功率,给底层物理网络基础设施提供商带来了更多的长期平均收益。


图I是本发明方法的流程图。图2是一个虚拟网络的示意图。图3是一个底层物理网络的示意图。 图4是图2所示虚拟网络映射到图3所示底层物理网络的示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。参见图1,介绍本发明的一种基于历史数据实现拓扑感知的虚拟网络映射方法,所述方法包括下列操作步骤(I)根据底层物理网络积累的虚拟网络成功映射的历史数据集合,计算底层物理网络节点之间的依赖关系矩阵M ;(2)对于一个需要进行映射的虚拟网络,根据该虚拟网络中虚拟节点对CPU资源的需求大小,从大到小对该虚拟网络的所有虚拟节点进行排序;参见图2,图2所示虚拟网络包括3个虚拟节点,即a、b、c三个虚拟节点,节点旁边的方框内的数字表示该虚拟节点的CPU资源需求大小,节点之间虚拟链路上的数字表示该条虚拟链路的带宽资源需求大小,比如a虚拟节点的CPU资源需求是10个单位,a虚拟节点与b虚拟节点之间虚拟链路的带宽资源需求是8个单位。按照虚拟节点对CPU资源的需求大小,从大到小对a、b、c三个虚拟节点进行排序,排序结果是a、C、b。(3)根据所述的依赖关系矩阵M,按照设定的节点映射方法,对所述的虚拟网络中的虚拟节点按照已经排好的顺序依次进行虚拟节点到底层物理节点的节点映射;(4)节点映射完毕之后,按照设定的链路映射方法实现虚拟网络的虚拟链路到底层物理网络的物理路径之间的映射。所述步骤I的具体内容是包括如下操作步骤(11)对底层物理网络的所有物理节点从I进行编号,直到编号n,n是一个自然数,等于底层物理网络的物理节点数目;参见图3,图3所示的一个底层物理网络,共包括6个物理节点,依次进行了编号。图中节点用圆圈表示,圆圈内的数字就是该物理节点的编号,节点旁边的方框内的数字表示该物理节点的CPU资源能力,节点之间链路上的数字表示该条链路的带宽资源能力,比如I号物理节点的CPU资源能力是40个单位,I号物理节点与2号物理节点之间物理链路的带宽资源能力是20个单位。(12)从底层物理网络积累的虚拟网络成功映射的历史数据集合中,取出每一个映射记录;对每一个映射记录,都构造一个η行η列的空矩阵P,初始时该矩阵P的每个元素值为O值;在该映射记录中,如果第i个底层物理节点至少被该映射记录中一个虚拟节点成功映射过,则让矩阵P的第i行第i列的元素an取值为I ;在该映射记录中,如果第i个底层物理节点和第j个底层物理节点之间的一条物理路径至少被该映射记录中的一条虚拟链路成功映射过,则让矩阵P的第i行第j列的元素au和第j行第i列的元素都取值为该条物理路径跳数的倒数,其中i和j都是大于等于I、小于等于η的自然数,i和j必须不相等;比如,根据第一条映射记录,我们得到与图3所示底层物理网络对应的矩阵P1如下
权利要求
1.一种基于历史数据实现拓扑感知的虚拟网络映射方法,其特征在于所述方法包括下列操作步骤(1)根据底层物理网络积累的虚拟网络成功映射的历史数据集合,计算底层物理网络节点之间的依赖关系矩阵M ;(2)对于一个需要进行映射的虚拟网络,根据该虚拟网络中虚拟节点对中央处理单元CPU资源的需求大小,从大到小对该虚拟网络的所有虚拟节点进行排序;(3)根据所述的依赖关系矩阵M,按照设定的节点映射方法,对所述的虚拟网络中的虚拟节点按照已经排好的顺序依次进行虚拟节点到底层物理节点的节点映射;(4)节点映射完毕之后,按照设定的链路映射方法实现虚拟网络的虚拟链路到底层物理网络的物理路径之间的映射。
2.根据权利要求I所述的一种基于历史数据实现拓扑感知的虚拟网络映射方法,其特征在于所述步骤I的具体内容是包括如下操作步骤(11)对底层物理网络的所有物理节点从I进行编号,直到编号η,η是一个自然数,等于底层物理网络的物理节点数目;(12)从底层物理网络积累的虚拟网络成功映射的历史数据集合中,取出每一个映射记录;对每一个映射记录,都构造一个η行η列的空矩阵P,初始时该矩阵P的每个元素值为O值;在该映射记录中,如果第i个底层物理节点至少被该映射记录中一个虚拟节点成功映射过,则让矩阵P的第i行第i列的元素an取值为I ;在该映射记录中,如果第i个底层物理节点和第j个底层物理节点之间的一条物理路径至少被该映射记录中的一条虚拟链路成功映射过,则让矩阵P的第i行第j列的元素au和第j行第i列的元素都取值为该条物理路径的跳数的倒数,其中i和j都是大于等于I、小于等于η的自然数,i和j必须不相等;(13)把步骤12中所构造的所有矩阵P进行矩阵相加求和,得到一个新的η行η列矩阵S ;(14)对矩阵S进行归一化处理,得到底层物理网络节点之间的依赖关系矩阵M
3.根据权利要求I所述的一种基于历史数据实现拓扑感知的虚拟网络映射方法,其特征在于所述步骤3的具体内容是包括如下操作步骤(31)拿出当前排在最前面的还未进行节点映射的虚拟节点;(32)如果该虚拟节点没有父节点,则从所述的依赖关系矩阵M中找到当前能够满足该虚拟节点的CPU资源要求并且平均重要度因子最高的底层物理节点,把该虚拟节点映射到该物理节点上;如果该虚拟节点有e个父节点,则首先找出与该虚拟节点所有父节点有对应映射关系的e个底层物理节点;然后从所述的依赖关系矩阵M中找到一个当前能够满足该虚拟节点的CPU资源要求的底层物理节点,并且要求该物理节点分别到所述的e个底层物理节点的平均关联度因子的联乘积最大,于是把该虚拟节点映射到该物理节点上;e是一个大于等于I的自然数;所述的虚拟节点的父节点是指与该虚拟节点邻接并且排序排在该虚拟节点之前的虚拟节点,当该虚拟节点进行节点映射时,该虚拟节点的父节点已经完成节点映射了;(33)回到步骤31,直到所有虚拟节点完成映射。
4.根据权利要求I所述的一种基于历史数据实现拓扑感知的虚拟网络映射方法,其特征在于所述步骤4中所述的设定的链路映射方法是指k最短路径k-shortest path方法。
全文摘要
一种基于历史数据实现拓扑感知的虚拟网络映射方法,包括下列操作步骤(1)根据底层物理网络积累的虚拟网络成功映射的历史数据集合,计算底层物理网络节点之间的依赖关系矩阵M;(2)根据虚拟网络中虚拟节点对中央处理单元CPU资源的需求大小,从大到小对虚拟网络的所有虚拟节点进行排序;(3)根据依赖关系矩阵M,按照顺序依次进行虚拟节点到底层物理节点的节点映射;(4)节点映射完毕之后,按照设定的链路映射方法实现虚拟网络的虚拟链路到底层物理网络的物理路径之间的映射。本发明方法实现了对底层物理网络资源能力的科学评价,通过感知虚拟网络的拓扑结构,实现节点映射的优化选择,提高了虚拟网络映射的长期平均成功率。
文档编号H04L29/08GK102932479SQ20121046101
公开日2013年2月13日 申请日期2012年11月16日 优先权日2012年11月16日
发明者廖建新, 张磊, 卿苏德, 徐童, 沈奇威, 张乐剑, 戚琦 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1