[发明专利]一种跨数据中心的虚拟网络映射方法有效

专利信息
申请号: 201310576720.8 申请日: 2013-11-18
公开(公告)号: CN104038400A 公开(公告)日: 2014-09-10
发明(设计)人: 廖丹;孙罡;肖克祥;狄浩;虞红芳;孙健 申请(专利权)人: 电子科技大学
主分类号: H04L12/46 分类号: H04L12/46;H04L29/06
代理公司: 成都行之专利代理事务所(普通合伙) 51220 代理人: 温利平
地址: 611731 四*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明跨数据中心的虚拟网络映射方法,虚拟网络在保证生存能力需求和可靠性条件下,先通过虚拟节点分组算法VNGP将虚拟网络中的虚拟节点进行分组,并基于当前分组寻找不同分组间的所有节点对集合,确定出最终分组,再通过GVNM子算法将分组后的虚拟网络映射到底层数据中心网络上。在保证生存能力需求下将虚拟节点映射到同一数据中心,从而节约了通信资源,还采用数据中心内部的可靠性增强方法,从而保证了虚拟网络的可靠性,同时具有高效性。
搜索关键词: 一种 数据中心 虚拟 网络 映射 方法
【主权项】:
一种跨数据中心的虚拟网络映射方法,其特征在于,包括以下步骤:(1)、确定虚拟网络的生存能力需求sV:虚拟节点nV映射在物理节点nS上表示为:nV→nS:M(nV)=nS,nV∈VV,nS∈VS当M(nV)=nS时x(nV,nS)为1,否则x(nV,nS)为0,则生存能力约束为:<mrow><munder><mi>&Sigma;</mi><mrow><msub><mi>n</mi><mi>V</mi></msub><mo>&Element;</mo><msub><mi>V</mi><mi>V</mi></msub></mrow></munder><mi>x</mi><mrow><mo>(</mo><msub><mi>n</mi><mi>V</mi></msub><mo>,</mo><msub><mi>n</mi><mi>S</mi></msub><mo>)</mo></mrow><mo>&le;</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>*</mo><mo>|</mo><msub><mi>V</mi><mi>V</mi></msub><mo>|</mo><mo>,</mo><msub><mrow><mo>&ForAll;</mo><mi>n</mi></mrow><mi>S</mi></msub><mo>&Element;</mo><msub><mi>V</mi><mi>S</mi></msub></mrow>其中,VV为虚拟节点集合,VS为物理节点集合;(2)、确定虚拟网络中虚拟节点的最终分组:(2、1)、通过虚拟节点分组算法VNGP(Virtual Node Group Partition)将虚拟网络中的虚拟节点进行分组:将虚拟节点集合VV放入到N(sV)个分组中,N(sV)为VV的分组数目,即VV=G1∪G2∪…∪Gi,第i个分组Gi内的虚拟节点数目|Gi|≤[(1‑sV)*|VV|],分组数目N(sV)≤|VV|,其中,i=1,2,…N(sV),[]表示向下取整;(2、2)、在虚拟节点集合VV中增加辅助节点,使N(sV)个分组中都有[(1‑sV)*|VV|]个节点;(2、3)、基于当前分组Gi寻找不同分组间的所有节点对集合U:定义所有节点对之间的权值为y(m,n)或y(n,m),m≠n,y(m,n)的表达式为:则集合<mrow><mi>U</mi><mo>=</mo><mo>{</mo><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>|</mo><mo>&ForAll;</mo><mi>m</mi><mo>&Element;</mo><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><mo>&ForAll;</mo><mi>n</mi><mo>&Element;</mo><msub><mi>G</mi><mi>j</mi></msub><mo>,</mo><mo>&ForAll;</mo><mi>i</mi><mo>&Element;</mo><mo>&lsqb;</mo><mn>1</mn><mo>,</mo><mi>N</mi><mrow><mo>(</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>-</mo><mn>1</mn><mo>&rsqb;</mo><mo>,</mo><mo>&ForAll;</mo><mi>j</mi><mo>&Element;</mo><mo>&lsqb;</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>N</mi><mrow><mo>(</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>}</mo></mrow>那么在已知各个分组大小的条件下,VV中的虚拟节点以最小化组间虚拟链路的总需求带宽为:<mrow><munder><mi>min</mi><mrow><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><mi>i</mi><mo>&Element;</mo><mo>&lsqb;</mo><mn>1</mn><mo>,</mo><mi>N</mi><mrow><mo>(</mo><msub><mi>n</mi><mi>S</mi></msub><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></munder><munder><mi>&Sigma;</mi><mrow><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&Element;</mo><mi>U</mi></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow></mrow>其中,由于每个分组的大小确定为[(1‑sV)*|VV|],因此可以得到集合U的大小为:<mrow><mo>|</mo><mi>U</mi><mo>|</mo><mo>=</mo><mfrac><mrow><mi>N</mi><mrow><mo>(</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>N</mi><mrow><mo>(</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow><mn>2</mn></mfrac><mo>*</mo><msup><mrow><mo>&lsqb;</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>s</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>*</mo><mo>|</mo><msub><mi>V</mi><mi>V</mi></msub><mo>|</mo><mo>&rsqb;</mo></mrow><mn>2</mn></msup></mrow>(2、4)、在确定每个分组大小和分组数目条件下,通过交换不同分组内的虚拟节点和辅助节点来寻找最终分组:将分组Gi中的第a,a≤|Gi|个虚拟节点nVa和第j个分组Gj中的第b,b≤|Gj|个虚拟节点nVb交换,且nVa和nVb的交换不影响其它分组相关的权值y(m,n),最小化组间虚拟链路的总需求带宽所减小的差值Δ为:<mrow><mi>&Delta;</mi><mo>=</mo><mrow><mo>(</mo><munder><mi>&Sigma;</mi><mrow><mi>n</mi><mo>&Element;</mo><msub><mi>G</mi><mi>j</mi></msub><mo>,</mo><mi>n</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>)</mo></mrow><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mi>m</mi><mo>&Element;</mo><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><mi>m</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup><mo>)</mo></mrow><mo>)</mo></mrow><mo>-</mo><mrow><mo>(</mo><munder><mi>&Sigma;</mi><mrow><mi>m</mi><mo>&Element;</mo><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><mi>m</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>)</mo></mrow><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mi>n</mi><mo>&Element;</mo><msub><mi>G</mi><mi>j</mi></msub><mo>,</mo><mi>n</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup><mo>)</mo></mrow><mo>)</mo></mrow></mrow>定义不同分组的节点对之间的资源需求w(nVa,Gi,nVb,Gj)的计算公式为:<mrow><mi>w</mi><mrow><mo>(</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup><mo>,</mo><msub><mi>G</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mrow><munder><mi>&Sigma;</mi><mrow><mi>m</mi><mo>&Element;</mo><msub><mi>G</mi><mi>j</mi></msub><mo>,</mo><mi>m</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>)</mo></mrow><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mi>n</mi><mo>&Element;</mo><msub><mi>G</mi><mi>i</mi></msub><mo>,</mo><mi>n</mi><mo>&NotEqual;</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>a</mi></msup><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup></mrow></munder><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>,</mo><msup><msub><mi>n</mi><mi>V</mi></msub><mi>b</mi></msup><mo>)</mo></mrow></mrow></mrow>其中,nVa,nVb∈VV,i,j∈[1,N(sV)],i≠j;逐一从U中选择一对(m,n),m∈Gi,n∈Gj代入w(nVa,Gi,nVb,Gj)计算w(m,Gi,n,Gj)和w(n,Gi,m,Gj),ε为准确度,如果w(m,Gi,n,Gj)<w(m,Gi,n,Gj)/(1+ε),将n转移至Gi并将m转移至Gj,同时更新U后转至步骤(2、3),如果(m,n)不是遍历的最后一个节点对,继续步骤(2、4)否则,算法结束;(2、5)、删除虚拟节点集合VV中增加的辅助节点;(3)、虚拟网络在满足生存能力需求条件下,通过GVNM(Grouped Virtual Network Mapping)子算法将分组后的虚拟网络映射到底层数据中心网络上:(3、1)、定义集合M,且初始化为空集,用于记录已映射的虚拟节点;(3、2)、若M不为空,选择与M中虚拟节点间的虚拟链路总需求带宽最大的未映射分组Gi,进入步骤(3、3),若M为空,则选取按资源需求降序排列的第一个分组Gi,直接对Gi进行映射;(3、3)、遍历未映射其它分组的物理节点,从中寻找令Gi中的虚拟节点和相关虚拟链路的映射成本最小的可映射物理节点ns,其中,EV为虚拟链路集合,如果找到物理节点ns,则映射Gi和相关虚拟链路,并将Gi中的虚拟节点放入集合M中,如果没有找到可映射的物理节点ns,此次映射失败;(3、4)、逐一映射完所有分组,完成映射,否则返回步骤(3、2);(4)、对跨数据中心虚拟网络做增强性可靠设计:定义虚拟网络所需的可靠性为rV,物理节点ns∈VS上数据中心内的服务器失效概率为p(ns),分组Gi的可靠性为r(Gi),当分组Gi内没有备份虚拟节点且映射在物理节点ns上时,r(Gi)为(1‑p(nS))^|Gi|,虚拟网络的实际可靠性为当每个分组Gi的可靠性r(Gi)都不小于rV^(1/N(sV))时,虚拟网络所需的可靠性为rV可以得到保证;在本地的数据中心内,定义分组Gi的本地备份虚拟节点集合为Bi,映射在物理节点ns上的分组Gi所需的本地备份虚拟节点数目|Bi|的计算公式为:<mrow><mo>|</mo><msub><mi>B</mi><mi>i</mi></msub><mo>|</mo><mo>=</mo><munder><mrow><mi>arg</mi><mi> </mi><mi>min</mi></mrow><mrow><mi>x</mi><mo>&Element;</mo><mi>N</mi></mrow></munder><mo>{</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mi>x</mi></munderover><mrow><mo>(</mo><munder><mrow><mi>x</mi><mo>+</mo><mo>|</mo><msub><mi>G</mi><mi>i</mi></msub><mo>|</mo></mrow><mi>i</mi></munder><mo>)</mo></mrow><mi>p</mi><msup><mrow><mo>(</mo><msub><mi>n</mi><mi>S</mi></msub><mo>)</mo></mrow><mi>i</mi></msup><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>p</mi><mrow><mo>(</mo><msub><mi>n</mi><mi>S</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mrow><mo>|</mo><msub><mi>G</mi><mi>i</mi></msub><mo>|</mo><mo>+</mo><mi>x</mi><mo>-</mo><mi>i</mi></mrow></msup><mo>&GreaterEqual;</mo><msub><mi>r</mi><mi>V</mi></msub><mo>^</mo><mrow><mo>(</mo><mn>1</mn><mo>/</mo><mi>N</mi><mrow><mo>(</mo><msub><mi>n</mi><mi>s</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>}</mo></mrow>每个本地备份虚拟节点所需的计算容量为组内工作虚拟节点所需计算容量的最大值,定义为:<mrow><msub><mi>C</mi><mi>V</mi></msub><mrow><mo>(</mo><msub><mi>n</mi><mi>B</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>max</mi><mrow><msub><mi>n</mi><mi>V</mi></msub><mo>&Element;</mo><msub><mi>G</mi><mi>i</mi></msub></mrow></msub><msub><mi>C</mi><mi>V</mi></msub><mrow><mo>(</mo><msub><mi>n</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>,</mo><msub><mrow><mo>&ForAll;</mo><mi>n</mi></mrow><mi>B</mi></msub><mo>&Element;</mo><msub><mi>B</mi><mi>i</mi></msub><mo>.</mo></mrow>
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201310576720.8/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top