专利名称:一种基于虚拟路由器可迁移的虚拟网节能方法
技术领域:
本发明涉及到由一组根服务器(Root krver)、一组柔性网络配置代理(Flexible Network Configure Broker,FNCB)和一系列路由器(支持VR00M机制)组成的物理网,特别 是涉及一种动态重新映射虚拟网的逻辑结构,实现动态改变网络物理拓扑,从而达到节能 的目的。
背景技术:
互联网在过去的几十年中取得了巨大的成功,它为人们提供了一个全新的交换信 息、接受信息的平台。它的广泛普及,促进了网络技术的发展和应用。然而,规模巨大的网 络同时也限制了它将来的发展。比如,以当前的网络的规模和大小,部署新的网络技术无疑 十分困难。网络的虚拟化技术为允许网络的多体系结构提供了一个有力的解决方案。网络 虚拟化是指通过虚拟链路将虚拟路由器连接起来,在这个虚拟的网络拓扑上使用不同的协 议为用户提供一组服务。网络服务提供商所提供服务的多样化促进了虚拟网的发展。虚拟 网正被广泛部署在物理网。虚拟网在构建过程中,由于所选取的策略不同,导致逻辑网被杂 乱无章的映射到物理网。传统的网络节能技术是尽可能的将网络中的流量规划到一颗最小 生成树上,倘若该最小生成树不能够承载这些流量,就添加些链路,以增加承载这些流量的 带宽。由于当前网络的逻辑网拓扑和物理网拓扑是重叠的,他们的方案往往是根据计算出 来逻辑网拓扑结构,采用切断链路或关闭节点的方法实现对网络物理拓扑结构的改造。切 断链路无疑会造成相应链路的大量丢包和网络拓扑重构(0SPF协议学习)的延时(AS越大, 延时越长),这样对用户来讲,有一个比较明显的业务中断时间。VR00M(Virtual Router on the Move)是一种虚拟路由器的迁移方案,它保证了在 迁移路由器的过程中,不中断用户的数据转发,从而可以保证用户的QoS。利用这种机制,只 要链路条件允许,我们可以迁移路由器,同时保证虚拟网的逻辑网络拓扑是与迁移之前的 网络是同构的。利用VR00M机制,将负载相对较低的路由器上的虚拟路由器迁移到负载稍 微高的节点,同时保证其负载不要过高,进而关闭负载低的节点,进行节能。随着节能成为 全球关注的焦点,消耗巨大能量的互联网上的节能也越来越受到重视。
发明内容
本发明针对现有技术不足,提出一种基于虚拟路由器可迁移的虚拟网节能方法, 在已经映射了逻辑网的网络拓扑上,采用动态的虚拟路由器调整机制,使虚拟网被更映射 到更小范围的一个物理网上,然后关闭多余的节点实现节能。本发明所采用的技术方案
本发明是基于遗传算法和VR00M机制,对物理网上的虚拟网进行调整而达到节能的目 标。先定义一个可接受负载区间(low,high)。管理服务器对虚拟网的路由器负载进行探 测,然后找出负载(load〈low)的路由器节点。接着在该低负载节点周围搜索节点其负载 处于(low,high)之间的节点集合。然后,对该集合内的节点按负载由低到高进行排序,将低负载节点上的虚拟路由器进行依次迁移到该集合内的节点。当所选的节点的负责接近于 集合的上限时,按序选择集合内的下一个节点,进行负载迁移。一种基于虚拟路由器可迁移的虚拟网节能方法,通过下述步骤
(1)首先确定需迁移的虚拟路由器;
(2)对需迁移的轻负载虚拟路由器重新定位;
(3)对需迁移的重负载虚拟路由器重新定位;
(4)需迁移的虚拟路由器对应链路的重新映射过程;
实现对现有的虚拟网映射进行改造,使用最少的节点来承载所有的虚拟网,关闭多余 的节点。所述的基于虚拟路由器可迁移的虚拟网节能方法,所述需迁移虚拟路由器的确定 过程包括以下步骤
1)管理服务器接收各物理节点的消息RPN,获得全局的物理网拓扑信息;
2)定义一个路由器CPU可接受的负载范围(low,high),然后根据各节点的物理信息, 管理服务器将节点按CPU利用率分成三类集合低负载路由器集合,高负载路由器集合和 可接受负载的路由器集合;
3)管理服务器根据以上的划分,将低负载路由器装入一个队列,标识集合为S1,同时也 将高负载路由器装入另一个队列,标识集合为& ;可接受负载的路由器将放入第三个队列, 标识为集合&;
4)设置集合&的优先级为1,集合&的优先级为2;
5)将集合&中的元素以CPU利用率按由低到高进行排序,将集合&中的元素按CPU利 用率以由高到低的顺序排序。所述的基于虚拟路由器可迁移的虚拟网节能方法,需迁移的轻负载虚拟路由器的 重新定位过程包括以下步骤
1)对可接受负载的路由器集合&中每个节点根据其剩余资源定义一个权值H,
2)按权值H的从大到小将集合&中的元素进行排序;
3)依次选择优先级为2的集合&中的元素w;
4)再按序选择集合&的元素v,依次将w上的虚拟路由器调度VR到ν上 并测试ν的带宽是否满足VR的要求,并定义一个计数器;
5)若满足,则迁移,若计数器的值小于集合&的势,跳到步骤4);如果w中的虚拟路由 器被迁移完,那么就关闭节点;否则,将w放到集合&中;
6)如果队列&非空,那么就跳到步骤1),否则退出循环。所述的基于虚拟路由器可迁移的虚拟网节能方法,需迁移的重负载虚拟路由器的 重新定位过程包括以下步骤
1)对可接受路由器集合&中每个节点根据其剩余资源定义一个权值H;
2)按权值H将集合&中的元素进行排序;
3)依次选择优先级为1的集合&中的元素w;
4)再按序选择集合&的元素v,依次将w上的虚拟路由器调度VR到ν上,并测试ν的 带宽是否满足VR的要求,初始化计数器,记录循环次数;
5)若满足,则迁移,否则跳到步骤4),当计数器的值等于或者大于集合&的势时,跳出循环;
6)如果VR被迁移之后,路由器w的CPU利用率在范围(low,high)之内,则将该元素放 入集合&中;检查计数器的值,若大于集合&的势,那么也将元素放入集合& ;
7)如果队列&非空,那么就跳到步骤1),否则退出循环。所述的基于虚拟路由器可迁移的虚拟网节能方法,所述链路的重新映射过程包括 以下步骤
1)确定好要迁移的虚拟路由器后,管理服务器记录当前的虚拟路由器Vr与邻接虚拟 路由器集合VR之间的带宽;
2)选定新的物理路由器的物理节点;
3)按序到虚拟路由器集合VR选择某个虚拟路由器VRi,管理服务器计算虚拟路由器节 点vr’到虚拟路由器节点VRi之间所能够通过的流量是否大于原来vr与VRi之间的流量,定 义一个计数器;
4)如果虚拟路由器节点vr’到虚拟路由器节点VIii之间承载的流量大于原先的流量, 那么从集合VR删除虚拟路由器VRi,并在相应的支路流上用MPLS协议配置标签标识链路; 当虚拟路由器集合VR为空时,结束本过程;当计算器小于集合VR的势时,跳到步骤3);
5)如果虚拟路由器节点vr’到虚拟路由器节点VIii之间承载的流量小于原先的流量,则 需要对原先的流量进行分流处理;如果采用线性规划算法搜出的结果为空,则不能迁移虚 拟路由器,将该物理路由器节点放到集合&中,结束本过程;
6)若采用线性规划算法搜出的结果是成功的,则在相应的多支路流上用MPLS协议配 置标签标识链路;当虚拟路由器集合VR为空时,结束本过程,否则,跳到步骤3)。本发明的有益积极效果
1、本发明提出了一种基于虚拟路由器可迁移(VR00M机制)的虚拟网节能算法。它与其 他的网络节能方法相比,能够优化网络资源,而且节能效果良好。在节能的过程中不中断用 户的数据传输,保证用户的QoS不中断。2、本发明基于VROOM (Virtual ROuter On the Move)机制的虚拟路由器调整方 案,与传统的节能方案相比,扩展性好,能保持逻辑网拓扑结构同构,从而有效的提高了网 络的服务质量。
图1 映射了虚拟网的网络拓扑结构示意图; 图2 需迁移路由器的确定过程流程图3 需迁移的轻负载虚拟路由器的重新定位过程流程图; 图4 需迁移的重负载虚拟路由器的重新定位过程流程图; 图5 对应链路的重新映射过程流程图。
具体实施例方式实施例一参见图1,为一种映射了虚拟网的网络拓扑结构。本发明基于虚拟路由 器可迁移的虚拟网节能方法,通过下述步骤(1)首先确定需迁移的虚拟路由;(2)对需迁 移的轻负载虚拟路由器重新定位;(3)对需迁移的重负载虚拟路由器重新定位;(4)需迁移的虚拟路由器对应链路的重新映射过程;从而通过对现有的虚拟网映射进行改造,使用最 少的节点来承载所有的虚拟网,关闭多余的节点。实施例二 参见图2,本实施例与实施例一相比,具体提出了需迁移虚拟路由器的 确定过程。需迁移虚拟路由器的确定过程包括以下步骤
1)初始网络中所有物理路由节点都和管理服务器相连,所有物理路由节点都有一个 唯一的标志。这些节点承载着虚拟网,因此,它们都占用一定的CPU资源。2)所有的物理节点向邻居物理节点发送消息RNA (包括消息类型,节点ID,节点 端口 ID,节点端口 IP);
3)物理节点收到邻居物理节点的消息RNA(包括消息类型,节点ID,节点端口ID,节点 端口 IP),则将邻居物理节点的信息添加到邻居物理节点信息表(包括邻居节点ID,邻居节 点端口 ID,邻居节点端口 IP)中;
4)所有的物理节点向管理服务器发送消息RPN(包括消息类型,物理节点消息(节点 ID,节点端口 ID,节点端口 IP),邻接物理节点消息(邻居节点ID,邻居节点端口 ID,邻居节 点端口 IP)),管理服务器获得所有物理节点的消息RPN后,即获得全局的物理网拓扑消息 (包括物理节点信息(包括节点ID,节点端口 ID,节点端口 IP),物理链路信息(链路ID,链 路总带宽Totalbandwidth,链路可用带宽Freebandwidth,链路延时Delay),支持协议类型 ftOtocol),管理服务器管理虚拟网的构建和服务;
5)管理服务器根据定义的路由器CPU负载范围(low,high),将当前的路由器划分为 三个集合,一类路由器集合&,其元素的CPU负载处于(0,low),它们处于低负载行列,一类 路由器集合,其元素的CPU负载处于(high,100),它们处于高负载行列。另外的一类路由器 集合&,其元素的CPU负载处于该区间内。6)设置集合的优先级为1,集合的优先级为2 (其目的就是为了首先保证节能,然 后再考虑QoS,节能是本发明的主要目标)。7)将集合&中的元素以CPU利用率按由低到高进行排序,将集合中的元素按CPU 利用率以由高到低的顺序排序。实施例三参见图3,本实施例与实施例二相比,进一步具体提出了需迁移轻负载 虚拟路由器的确定过程。需迁移的轻负载虚拟路由器的重新定位过程包括如下步骤
1)对集合&中每个节点按式计算其权值,其中是节点剩余的CPU利用率,表示节点 的边的剩余带宽(权值就是该节点的可用资源)。2)按权值H将集合&中的元素进行排序。3)依次选择优先级为2的集合&中的元素w,并初始化一个计数器。4)再按序选择集合&的元素,依次将w上的虚拟路由器调度到上,增加计数器的值。5)比较计数器的值与集合&的势的大小,若计数器值较大,则将w放到集合& 中,跳到步骤8)。6)测试ν的带宽是否满足的要求,若满足,则迁移,否则,跳到步骤4)。7)如果w中的虚拟路由器被迁移完,那么就关闭节点。否则,将w放到集合&中。如果队列&非空,那么就跳到步骤1),否则退出循环,结束本过程。实施例四参见图4,本实施例与实施例三相比,进一步提出了需迁移的重负载虚拟路由器的重新定位过程。需迁移的重负载虚拟路由器的重新定位过程包括以下步骤
1)对集合&中每个节点按式计算其权值,其中是节点剩余的CPU利用率,表示节点 的边的剩余带宽(权值就是该节点的可用资源)。2)按权值H将集合&中的元素进行排序。3)依次选择优先级为1的集合中的元素W,并初始化一个计数器。4) 再按序选择集合&的元素V,依次将w上的虚拟路由器调度VR到ν上,增加 计数器的值。5) 比较计数器的值与集合Sa的势的大小,若计数器值较大,则将w放到集合& 中,跳到步骤8)。6)测试ν的带宽是否满足VR的要求,若满足,则迁移,否则跳到步骤4)。7)如果VR被迁移之后,路由器w的CPU利用率在范围(loW,high)之内,那么将 w放入集合&中。8)如果队列&非空,那么就跳到步骤1),否则退出循环。实施例五参见图5,本实施例与实施例三相比,进一步提出了对应链路的重新映 射过程。对应链路的重新映射过程包括以下步骤
1)确定好要迁移的虚拟路由器后,管理服务器记录当前的虚拟路由器与邻接虚拟路 由器集合的链路上的宽带集合。2)选定需迁移虚拟路由器的新的物理节点,初始化一个计数器。为了保证用户的 QoS,我们需要保证迁移之后的虚拟路由器与原来对应的邻接虚拟路由器集合的链路上的 带宽集合链路大于的带宽,即。3)按序到虚拟路由器集合VR中选择某个虚拟路由器,增加计数器的值。4)判断计数器与集合VR的势的大小,若计数器的值较大,则该虚拟路由器不可 迁移,终止本过程。5)管理服务器根据Dijstra算法搜索出VR和之间的具有最大瓶颈链路带宽(设 瓶颈链路带宽为)的链路,如果有多条这样的链路,那么再次调用Di jstra算法,选择一个具 有最短跳的支路(这样可以尽可能的减少对用户的QoS的影响)。6)如果〈,那么说明要对原来的流进行分流的处理,分流处理就类似于一个传统 的多商品流的问题(这类问题可以用一个经典的多项式时间的线性规划算法可以解决)。当 用线性规划算法,搜出的结果是空的,那么说明不能迁移虚拟路由器,返回值为false,结束 本过程。7)若线性规划算法搜出的结果是成功的,并在相应的多支路流上用MPLS协议配 置标签标识链路,从集合VR删除虚拟路由器。8)如果〉,那么从集合VR删除虚拟路由器,并在相应的链路流上用MPLS协议配 置标签标识该链路。当虚拟路由器集合VR为空时,则结束本过程,返回值为true,否则跳到步骤3)。
权利要求
1.一种基于虚拟路由器可迁移的虚拟网节能方法,其特征是通过下述步骤(1)首先确定需迁移的虚拟路由器;(2)对需迁移的轻负载虚拟路由器重新定位;(3)对需迁移的重负载虚拟路由器重新定位;(4)需迁移的虚拟路由器对应链路的重新映射过程;实现对现有的虚拟网映射进行改造,使用最少的节点来承载所有的虚拟网,关闭多余 的节点。
2.根据权利要求1所述的基于虚拟路由器可迁移的虚拟网节能方法,其特征是所述 需迁移虚拟路由器的确定过程包括以下步骤1)管理服务器接收各物理节点的消息RPN,获得全局的物理网拓扑信息;2)定义一个路由器CPU可接受的负载范围(low,high),然后根据各节点的物理信息, 管理服务器将节点按CPU利用率分成三类集合低负载路由器集合,高负载路由器集合和 可接受负载的路由器集合;3)管理服务器根据以上的划分,将低负载路由器装入一个队列,标识集合为S1,同时也 将高负载路由器装入另一个队列,标识集合为& ;可接受负载的路由器将放入第三个队列, 标识为集合&;4)设置集合&的优先级为1,集合&的优先级为2;5)将集合&中的元素以CPU利用率按由低到高进行排序,将集合&中的元素按CPU利 用率以由高到低的顺序排序。
3.根据权利要求2所述的基于虚拟路由器可迁移的虚拟网节能方法,其特征是需迁 移的轻负载虚拟路由器的重新定位过程包括以下步骤1)对可接受负载的路由器集合&中每个节点根据其剩余资源定义一个权值H,2)按权值H的从大到小将集合&中的元素进行排序;3)依次选择优先级为2的集合&中的元素w;4)再按序选择集合&的元素v,依次将w上的虚拟路由器调度VR到ν上并测试ν的带宽是否满足VR的要求,并定义一个计数器;5)若满足,则迁移,若计数器的值小于集合&的势,跳到步骤4);如果w中的虚拟路由 器被迁移完,那么就关闭节点;否则,将w放到集合&中;6)如果队列&非空,那么就跳到步骤1),否则退出循环。
4.根据权利要求2或3所述的基于虚拟路由器可迁移的虚拟网节能方法,其特征是 需迁移的重负载虚拟路由器的重新定位过程包括以下步骤1)对可接受路由器集合&中每个节点根据其剩余资源定义一个权值H;2)按权值H将集合&中的元素进行排序;3)依次选择优先级为1的集合&中的元素w;4)再按序选择集合&的元素v,依次将w上的虚拟路由器调度VR到ν上,并测试ν的 带宽是否满足VR的要求,初始化计数器,记录循环次数;5)若满足,则迁移,否则跳到步骤4),当计数器的值等于或者大于集合&的势时,跳出 循环;6)如果VR被迁移之后,路由器w的CPU利用率在范围(low,high)之内,则将该元素放入集合&中;检查计数器的值,若大于集合&的势,那么也将元素放入集合& ;7)如果队列&非空,那么就跳到步骤1),否则退出循环。
5.根据权利要求2或3所述的基于虚拟路由器可迁移的虚拟网节能方法,其特征是 所述链路的重新映射过程包括以下步骤1)确定好要迁移的虚拟路由器后,管理服务器记录当前的虚拟路由器vr与邻接虚拟 路由器集合VR之间的带宽;2)选定新的物理路由器的物理节点;3)按序到虚拟路由器集合VR选择某个虚拟路由器VI^,管理服务器计算虚拟路由器节 点vr’到虚拟路由器节点VRi之间所能够通过的流量是否大于原来vr与VRi之间的流量,定 义一个计数器;4)如果虚拟路由器节点vr’到虚拟路由器节点VIii之间承载的流量大于原先的流量, 那么从集合VR删除虚拟路由器VRi,并在相应的支路流上用MPLS协议配置标签标识链路; 当虚拟路由器集合VR为空时,结束本过程;当计算器小于集合VR的势时,跳到步骤3);5)如果虚拟路由器节点vr’到虚拟路由器节点VIii之间承载的流量小于原先的流量,则 需要对原先的流量进行分流处理;如果采用线性规划算法搜出的结果为空,则不能迁移虚 拟路由器,将该物理路由器节点放到集合&中,结束本过程;6)若采用线性规划算法搜出的结果是成功的,则在相应的多支路流上用MPLS协议配 置标签标识链路;当虚拟路由器集合VR为空时,结束本过程,否则,跳到步骤3)。
全文摘要
本发明涉及一种基于虚拟路由器可迁移的虚拟网节能方法,在已经映射了逻辑网的网络拓扑上,采用动态的虚拟路由器调整机制,使虚拟网被更映射到更小范围的一个物理网上,然后关闭多余的节点实现节能。基于遗传算法和VROOM机制,对物理网上的虚拟网进行调整。先定义一个可接受负载区间(low,high),管理服务器对虚拟网的路由器负载进行探测,然后找出负载(load<low)的路由器节点。接着在该低负载节点周围搜索节点其负载处于(low,high)之间的节点集合。然后,对该集合内的节点按负载由低到高进行排序,将低负载节点上的虚拟路由器进行依次迁移到该集合内的节点。当所选的节点的负责接近于集合的上限时,按序选择集合内的下一个节点,进行负载迁移。
文档编号H04L12/56GK102082732SQ20111004295
公开日2011年6月1日 申请日期2011年2月23日 优先权日2011年2月23日
发明者伊鹏, 吴春明, 姜明, 廖生权, 张建辉, 张栋, 王保进, 王婷, 黄万伟, 齐宁 申请人:中国人民解放军信息工程大学