一种基于节点属性的虚拟网络映射方法与流程

文档序号:14305107阅读:554来源:国知局
一种基于节点属性的虚拟网络映射方法与流程

本发明涉及计算机通信技术领域,特别是涉及一种基于节点属性的虚拟网络映射方法。



背景技术:

随着越来越多的互联网新型应用和业务的出现,传统的ip网络架构渐渐不适应这种发展趋势,互联网的发展呈现出一种僵化现象。而网络虚拟化技术是一种解决互联网僵化问题的有效手段。网络虚拟化技术对底层基础网络设施进行抽象并提供统一的可编程接口,将多个彼此隔离且具有不同拓扑的虚拟网络(virtua1network,vn)映射到公用的基础设施网络(substratenetwork,sn)上,为用户提供差异化服务。

图1是虚拟网络映射示意图。如图1所示,虚拟网络映射包括虚拟节点映射和虚拟链路映射。因为不同的虚拟网络可以映射到同一个物理网络中,提高网络资源的利用率和接受更多的虚拟网络请求,映射方法和策略的选择显得尤为重要。即使提前知道所有的虚拟网络请求,但由于虚拟节点、虚拟链路对于网络资源及地理位置等条件的约束,使得虚拟网络映射问题成为np-hard问题。目前大多数的方法的建议使用贪心算法进行虚拟节点映射,然后再使用k-shortest-path或者mcf方法进行虚拟链路映射。由于在节点映射阶段未考虑对链路映射的关系与影响,往往限制了解决方案,使得映射效果较差。所以目前使用的虚拟映射算法,在虚拟节点映射时候,尽可能考虑对接下来链路映射的因素。

虚拟网络映射过程中,尤其是在虚拟节点映射阶段,当一个虚拟节点的资源能力值大于物理网络中任意一个节点的资源能力值的时候,考虑将其中几个物理网络节点为该虚拟节点提供网络资源,以满足该虚拟节点的虚拟网络请求。

目前很多虚拟网络映射算法中衡量一个网络中的节点资源能力值,节点的资源能力值不仅与自身的计算资源有关,而且还与节点相连的邻边带宽资源有关。即一般采用节点cpu值与该节点相连接的带宽之和的乘积。但是该衡量方法仍存在着一些不足:(1)该衡量方法未考虑该节点的邻居节点的计算资源能力,该方法没有考虑到网络拓扑,有时候不能显示出映射节点的重要性;(2)该衡量方法未考虑物理节点的带宽条件约束,邻边带宽资源的简单相加,有时候不能真实的反映出一个节点的重要性;(3)该衡量方法未考虑物理网络拓扑,节点的邻居节点越多,则相邻链路带宽资源就越多,映射成功的可能性就越大。



技术实现要素:

为了克服上述现有技术的不足,本发明提供了一种基于节点属性的虚拟网络映射方法,旨在能够在虚拟网络节点映射阶段尽可能考虑链路带宽因素,减少链路映射的难度,同时减少路径损耗,提高网络资源利用率。

为了实现上述发明的目的,本发明提供了了一种基于节点属性的虚拟网络映射方法,包括以下步骤:

s1:对到达的每一个虚拟网络请求按照网络收益值从大到小依次排序,其具体公式为其中α∈(0,1),c(nv)为网络中的cpu资源,b(lv)为网络中链路带宽资源,并选取收益最大的网络请求进行映射;

s2:对虚拟网络请求中的每个节点按照节点属性公式计算,其具体公式为h(nv)=rc(nv).bw(nv).n(nv),其中为映射节点的相邻节点个数其中为nv的邻居节点,

并将节点按照计算所得数值从大到小进行排序;

s3:对物理网络节点按照s2中公式计算,并进行降序排序,选出最大值作为第一个映射的物理节点;

s4:第一个虚拟节点映射成功后,首选选择刚刚映射过的物理节点进行映射,当不满足虚拟网络映射要求,则将虚拟网络中第二个映射节点的资源能力值与该物理节点邻居节点进行比较,当符合映射要求;则将虚拟节点映射到该物理节点的邻居节点,否则将从s3的队列中选取最大满足要求的节点,并将其映射到该物理节点上;

s5:重复上述s4的步骤,直到所有节点映射完毕。

s6:在完成上述节点映射阶段之后,在完成链路映射。

进一步地,步骤s1中所述的网络收益值,选取网络中的节点cpu资源和链路带宽资源的值,作为计算的参数和衡量标准;

进一步地,步骤s2中的节点计算公式中参数包括网络中节点自身cpu资源与邻居节点cpu资源、节点相邻带宽资源和节点的邻居节点的个数;

进一步地,步骤s4中所述如果物理节点中最大值无法满足虚拟网络中资源能力值最大的节点,可采用将几个物理节点结合使用满足虚拟网络请求的网络资源要求;

进一步地,步骤s6所述的虚拟链路映射,采用k最短路径方法或者多商品流方法进行链路映射。

本发明基于节点属性的虚拟网络映射算法,对到达的虚拟网络请求按照收益值的大小依次进行虚拟网络映射,在虚拟节点映射时,按照节点属性的依次计算出各个资源能力值,按照从大到小排列,同时使用同样的方法计算出物理网络中的节点资源能力值。将虚拟网络中节点最大值映射到物理网络中节点最大值;当本次节点映射成功后,将下一个映射虚拟节点与上一个映射完成的物理节点的邻居节点进行比较,如果满足要求将其映射到其邻居节点上,在完成节点映射的基础上再进行链路映射。

本发明具有以下有益效果:

(1)对虚拟网络中的节点映射,充分考虑邻居节点的资源属性,更符合实际网络;

(2)在虚拟网络映射中,尤其是在节点映射阶段,将一个虚拟网络请求中的节点尽可能映射到一个相邻区域内,减少链路带宽资源的损耗,同时尽量重复使用已经映射过的物理节点,也有利于节约链路资源,从而提高网络资源利用率,增加虚拟网络请求的数量,有效降低链路映射成本,最终提升网络基础设施提供商的收益。

附图说明

图1是网络虚拟化示意图;

图2是虚拟网络映射示意图;

图3是虚拟网络示意图;

图4是物理网络示意图。

具体实施方式

下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解发明。

本发明提供了一种基于节点属性的虚拟网络映射方法,其具体实现步骤:

s1:对到达的每一个虚拟网络请求按照网络收益值进行计算,并按照数值从大到小排序,并放入队列中;

图2是虚拟网络示意图。如图2中所示,本实例中同时到达的虚拟网络有2个,分别是vn1、vn2,其中vn1中有3个虚拟节点,vn2中有2个虚拟节点。图3是物理网络示意图,图中物理网络sn中7个物理节点,此处假定每个节点资源都有足够虚拟节点的映射。以图示为例,按照s1中网络收益值计算公式可得,vn1的收益比vn2高,所以优先映射vn1的虚拟网络,其次就是vn2。

s2:对虚拟网络请求中的每个节点按照节点属性公式计算,并将节点按照计算所得数值从大到小进行排序,并放入队列中;

s3:对物理网络中物理节点按照s2中公式计算,并进行降序排序,选出最大值作为第一个映射的物理节点;

本实施案例中,先对vn1中各节点进行计算资源能力计算,得出降序队列节点b,节点c,节点a;同时对物理网络中的各节点同样进行计算,得出各节点计算资源能力,并进行降序排列,得出节点g,节点e,节点a,节点d,节点b,节点f,节点c,取出节点最大值即节点g作为第一个映射的物理节点。将虚拟网络节点b和物理网络节点g进行比较,节点g满足节点b映射约束条件,所以将节点b映射到节点g上,则第一个虚拟节点映射成功。

s4:第一个虚拟节点映射成功后,优先选择刚刚映射过的物理节点进行映射,如果不满足虚拟网络映射要求,则将虚拟网络中第二个映射节点的资源能力值与该物理节点邻居节点进行比较,如果符合映射要求;则将虚拟节点映射到该物理节点的邻居节点,否则将从s3的队列中选取最大满足要求的节点,并将其映射到该物理节点上;

s5:重复上述s4的步骤,直到所有节点映射完毕。

本实施案例中,接着vn1中第二个虚拟节点c进行映射,首先节点c与上一个映射成功的节点g的资源能力值比较,满足节点c的资源约束条件,则将节点c映射到物理节点g上;最后进行vn1中的最后一个虚拟节点a的映射,同时首先将节点a与上一个映射成功的物理节点g比较,节点g满足节点a的资源约束条件,则将节点a映射到节点g上,则完成vn1中的所有节点映射。

s6:在完成上述节点映射阶段之后,在完成链路映射。

本实施案例中,由于vn1中的3个虚拟节点都映射到物理网络中的节点g上,由于同一个物理节点内部通信带宽远远高于链路带宽,满足虚拟链路映射约束条件,从而链路映射成功。

在实际应用中虚拟网络请求会更多,同时虚拟网络的规模会更大,虚拟网络映射过程的并非每个物理节点都会满足虚拟节点的网络资源,要考虑将几个物理节点共同使用满足一个虚拟网络节点的资源约束条件。

尽管上面对本发明的说明性的具体实施方案进行描述,以便于本领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施的范围,对本领域的普通技术人员来讲,只要变化在所附的权利要求限定和确定本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

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