书签 分享 收藏 举报 版权申诉 / 20

一种基于约束路由的绿色虚拟拓扑设计方法.pdf

  • 上传人:a1
  • 文档编号:4885552
  • 上传时间:2018-11-22
  • 格式:PDF
  • 页数:20
  • 大小:10.41MB
  • 摘要
    申请专利号:

    CN201310136979.0

    申请日:

    2013.04.19

    公开号:

    CN104113480A

    公开日:

    2014.10.22

    当前法律状态:

    撤回

    有效性:

    无权

    法律详情:

    发明专利申请公布后的视为撤回IPC(主分类):H04L 12/751申请公布日:20141022|||公开

    IPC分类号:

    H04L12/751(2013.01)I; H04L12/801(2013.01)I

    主分类号:

    H04L12/751

    申请人:

    成都赛恩泰科技有限公司

    发明人:

    郭兵; 沈艳; 伍元胜; 徐阔海; 刘凡; 罗标; 张强; 张俊涛

    地址:

    610000 四川省成都市高新区科园二路1号103B

    优先权:

    专利代理机构:

    代理人:

    PDF完整版下载: PDF下载
    内容摘要

    本发明涉及网络能耗优化技术领域,尤其是涉及一种基于约束路由的绿色虚拟拓扑设计方法,即GVTD方法。GVTD方法通过提高网络资源利用率、多粒度睡眠和动态建立网络虚拟拓扑来达到降低网络能耗的目的。由于GVTD方法的求解属NP难问题,本发明提出一个基于约束路由的启发式求解方法,即CBR-GVTD方法。CBR-GVTD方法在计算网络能耗下界的基础上动态建立网络的虚拟拓扑。CBR-GVTD方法为大业务需求建立点到点的传输通道并进行单跳路由,以减少网络资源的使用;对小业务需求进行多跳路由,以提高网络资源的利用率。实验表明,CBR-GVTD方法在业务非高峰期,对10和50个结点的网络最多可分别降低62%和90%的网络能耗,该比例随着网络规模的增大而上升。

    权利要求书

    权利要求书1.  一种基于约束路由的绿色虚拟拓扑设计方法,其特征在于建立该方法的步骤如下:1)GVTD(Green Virtual Topology Design,绿色虚拟拓扑设计)模型主要包括:◆网络功耗模型,即GVTD模型的目标函数,网络功耗模型同时考虑网络设备的静态功耗和动态功耗,静态功耗指网络设备独立于业务负载的那部分功耗(即空闲状态下的功耗),动态功耗指网络设备依赖业务负载的那部分功耗,根据网络设备的模块化结构,静态功耗可进一步细分为接口功耗、线卡功耗和机框功耗;◆业务路由,即GVTD模型的路由约束,为了避免多径路由引发的时延抖动,GVTD模型使用单径路由;◆资源配置,即GVTD模型的资源约束,该约束确定每个结点的活跃网络资源,并按照多粒度睡眠机制使空闲的网络资源睡眠;◆虚拟拓扑设计,对应于GVTD模型的链路容量约束,该约束确定网络中需要建立的传输通道,此外,通过设定接口最大利用率参数,实现了对网络拥塞的控制;2)GVTD模型的形式化描述如下:◆目标函数定义如下:MinΣi∈N[nc(i)·pc+nl(i)·pl+ni(i)·pi]+Σi,j∈N:i≠jt(i,j)·pt  (1)受限于:Σj∈N:j≠iiδ(ii,jj,ii,j)-Σj∈N:j≠iiδ(ii,jj,j,ii)=1∀ii,jj∈N:d(ii,jj)>0---(2b)]]>Σi∈N:i≠jjδ(ii,jj,i,jj)-Σi∈N:i≠jjδ(ii,jj,jj,i)=1∀ii,jj∈N:d(ii,jj)>0---(2c)]]>Σj∈N:j≠iδ(ii,jj,i,j)≤1∀ii,jj,i∈N:d(ii,jj)>0---(2d)]]>Σj∈N:j≠iδ(ii,jj,j,i)≤1∀ii,jj,i∈N:d(ii,jj)>0---(2e)]]>t(i,j)=Σii,jj∈N:d(ii,jj)>0δ(ii,jj,i,j)·d(ii,jj)∀i,j∈N:i≠j---(3)]]>t(i,j)≤d′(i,j)·α·C∀i,j∈N:i≠j---(4)]]>ni(i)≥Σj∈N:j≠id′(i,j)∀i∈N---(5a)]]>ni(i)≥Σj∈N:j≠id′(j,i)∀i∈N---(5b)]]>nl(i)·mi≥ni(i)∀i∈N---(6)]]>nc(i)·ml·mi≥ni(i)∀i∈N---(7)]]>各式中参数定义如下:N表示网络结点集合,i,j,ii,jj∈N表示网络结点,C表示接口的容量,α表示接口(或链路)所允许的最大利用率,pt表示网络资源处理单位(1Gbps)业务负载的动态功耗,pi,pl和pc分别表示单个接口、线卡和机框的功耗,mi,ml分别表示每个线卡具有的接口数量和每个机框可配备的线卡数量,D表示网络的业务需求集合,d(ii,jj)∈D表示从结点ii到结点jj的业务需求,目标函数(式(1))最小化整个网络的功耗,网络功耗由静态功耗和动态功耗两部分组成,静态功耗可进一步分为机框功耗nc(i)·pc、线卡功耗nl(i)·pl和接口功耗ni(i)·pi,使用线性函数近似动态功耗与业务负载的关系,即t(i,j)·pt,路由约束(式(2a)~(2e))为经典的多品种流守恒约束,业务需求d(ii,jj)经过单条路径从源结点ii到达目的结点jj,式(3)计算经过逻辑链路(i,j)的业务负载(即链路流量),链路的容量约束(式(4))确保链路的流量不超过链路的容量,IP层的链路(i,j)为逻辑链路,由下层网络提供的d′(i,j)条传输通道组成,每条传输通道的容量为C,并引入最大利用率α以应对IP业务的动态特性,IP层虚拟拓扑的确立过程即为决策变量d′(i,j)的值的确立过程,因此,式(4)在实现链路容量约束的同时还实现了IP层的虚拟拓扑设计,实现了IP层的逻辑链路与下层网络提供的传输通道的映射(即IP层与下层网络的层间约束),式(5)-(7)为资源约束,其中,式(5a)和(5b)可确保结点提供足够的活跃接口,即活跃接口不应该少于传输通道所需的发送端口(式(5a))和接收端口(式(5b)),式(6)和(7)确保结点能提供足够的活跃线卡和活跃机框,即活跃线卡和活跃机框提供的接口数不少于活跃接口数;◆GVTD模型的决策变量定义如下:δ(ii,jj,i,j)∈{0,1}:业务需求d(ii,jj)的路径是否经过逻辑链路(i,j),1表示经过,0表示不经过;d’(i,j)∈Z+:逻辑链路(i,j)包含的传输通道数量,其中,Z+表示正整数集合,传输通道由 下层网络提供,而且每条传输通道需要消耗一个发送端口和接收端口;t(i,j)∈R+:逻辑链路(i,j)上的总业务量,其中R+表示正实数集合;ni(i)∈Z+:网络结点i的活跃接口数量;nl(i)∈Z+:网络结点i的活跃线卡数量;nc(i)∈Z+:网络结点i的活跃机框数量,3)GVTD模型采用CBR-GVTD(Constraint-Based Routing Green Virtual Topology Design,基于约束路由的绿色虚拟拓扑设计)启发式方法求解4)CBR-GVTD方法需要用到的式子如下:◆ni(i),nl(i)和nc(i)的值由以下式子确定:ni(i)=max(Σj∈N:j≠id′(i,j),Σj∈N:j≠id′(j,i))∀i∈N---(8)]]>◆通过以下方式计算目标函数的下界值:Σi,j∈N:i≠jt(i,j)=Σi,j∈N:i≠jd(i,j)  (12)式(11)中,∑j∈N:j≠id(i,j)和∑j∈N:j≠id(j,i)分别表示结点i发送和接收的业务量的下界,α·C为每个接口允许的最大容量,将式(11)代入式(8)~(10)可以分别求得nl(i)lb和nc(i)lb,最后将这些决策变量代入目标函数式(1)中可得目标函数的下界为5)CBR-GVTD方法描述如下:◆输入包括N,D,α,C,pt,pi,pl,pc,mi,ml和H◆输出为网络功耗和步骤2)中定义的决策变量;◆CBR-GVTD方法步骤如下:①根据式(11)用下界值ni(i)lb初始化每个网络结点的接口数ni(i),②按照从大到小的顺序为每个业务需求d(i,j)建立从i到j的传输通道,并进行单跳路由,每个传输通道消耗源结点i的一个发送端口和目的结点j的一个接收端口,直到到接口耗尽、没有传输通道可以建立为止;③在步骤②建立的虚拟拓扑基础上,限制网络的最大跳数为H,利用单跳路由的剩余带宽,对剩余的业务需求按照从大到小的顺序进行CBR-Dijkstra(Constraint-Based Routing Dijkstra,基于约束路由的Dijkstra)路由;④如果对业务需求d(i,j)路由失败,则增加结点i和j的接口,为i到j建立传输通道并消耗相应的接口数,这表明网络的虚拟拓扑发生了变化;⑤如果网络虚拟拓扑发生变化,则迭代步骤①~④;⑥初始化链路集合E’为当前的逻辑链路集合E;⑦从E’中取出剩余带宽最大的逻辑链路(i,j)并将(i,j)从E’中去除;⑧尝试移除从i到j的1条传输通道,限制网络的最大跳数为H,对经过逻辑链路(i,j)的所有业务需求进行CBR-Dijkstra重路由,如果重路由成功,则释放该传输通道消耗的接口,否则恢复移除的传输通道;⑨若E′中还有链路,则更新链路的剩余带宽,转到步骤⑦;⑩移除每个结点剩余的接口,计算ni(i)的最终值,通过式(3)、(9)和(10)分别确定t(i,j)、nl(i)和nc(i),再通过式(1)计算整个网络的功耗;6)CBR-Dijkstra方法描述如下:◆输入包括业务需求d(i,j),网络结点集合N,网络链路集合E,网络链路的可用带宽集合B和网络的最大路由跳数H;◆输出为d(i,j)的路径;◆CBR-Dijkstra方法步骤如下:①从源结点i开始,计算源结点i的最短路径生成树,直到计算出到目标结点j的路径时停止;②只考虑可用带宽大于业务需求的路径,当跳数相同时,选择可用带宽最小的路径;③如果计算的最短路径小于网络的最大跳数H,则路由成功,计算结果为前驱结点表示的最短路径,否则结果为NIL,表示路由失败。

    说明书

    说明书一种基于约束路由的绿色虚拟拓扑设计方法
    所属技术领域
    本发明涉及网络能耗优化技术领域,尤其是涉及一种基于约束路由的绿色虚拟拓扑设计方法。
    背景技术
    近年来,Internet的流量逐年指数增长。从2007到2011年,Internet的流量和带宽的年平均增长率分别达到了56%和58%。流量和带宽的增长导致了Internet的能耗上升。据估计,2007年Internet的电力消耗达到了宽带接入国家(其平均接入带宽为30Mbps)总电量的1%,当平均接入带宽达到300Mbps时,这个比例将超过4%。按照目前的增长速度,到2050年网络领域的耗电量将达到2006年的13倍。Internet能耗的快速增长不仅导致电力成本的持续上升,同时也造成温室气体的加速排放。因此,提高能量效率和降低能耗已成为Internet面临的重大研究课题。目前,随着网络的扁平化发展,Internet的层次变得更加简单,逐渐演变成由接入网和核心网两部分组成。由于接入网的“光进铜退”以及核心网对接入网流量的汇聚,核心网正经历比接入网更快的能耗增长。研究表明到2017年核心网能耗将超过接入网。因此,在整个Internet中,核心网的节能研究正变得日益重要。
    在核心网中,IP网络层通常构建于高速的TDM(Time Division Multiplexing)网络层或者WDM(Wavelength Division Multiplexing)网络层之上,形成所谓的IP over SONET/SDH/OTN网络或IP over WDM网络。下层网络(即TDM层或WDM层)向IP层提供通道传输服务(即TDM电路服务和光路服务,电路和光路统称为传输通道),IP层通过使用下层提供的通道传输服务向其上层提供分组传输服务。IP层的链路由1条或多条具有相同源结点和目的结点的传输通道组成,这种链路不同于传统的物理链路,因此被称为逻辑链路,由逻辑链路构成的网络拓扑被称为虚拟拓扑(或逻辑拓扑)。根据给定的业务需求建立IP层逻辑链路的过程即为IP层的虚拟拓扑设计(VTD:Virtual Topology Design)过程。对于IP层,下层提供的传输通道组成了其逻辑链路;对于下层网络,IP层请求建立的传输通道形成了其业务需求。
    网络按照峰值业务需求超额供给网络资源,并通冗余设计来提高网络的可靠性,这导致了网络资源的平均利用率低下,而当前利用率对网络资源的功耗影响却较小,因此,提高网络资源利用率并将空闲的网络资源关闭(或转入低功耗睡眠状态)是目前降低网络能耗的一个重要途径。有研究者利用混合整数线性规划(MILP,Mixed Integer Linear Programming)技术建模功率感知的网络设计和路由问题,通过为网络节点选择合适数量和类型的线卡最小化IP 网络的功耗,但却没有设计有效的启发式方法来求解NP难的MILP模型。有研究者将IP网络的绿色流量工程形式化为一个MILP模型,并提出了一种启发式解法,通过预先为每对结点计算k条候选最短路径来降低MILP问题的解空间和求解时间,但是,解空间依然随结点对的数量指数增长。有研究者提出一种基于拉格朗日松弛的启发式方法,将建立的形式化模型分解为容易求解的子问题,为链路设定合适的权值进行动态路由,关闭尽多的链路以降低IP网络的能耗。与通常改变已有的网络拓扑不同,有学者研究如何确立网络拓扑,即虚拟拓扑设计问题。有学者考虑光收发器和电交换的功耗,将功率感知的虚拟拓扑设计的形式化为MILP问题,并提出一个简单的贪婪方法和遗传方法求解。该遗传方法并没有相应的机制保证得到的后代个体满足MILP模型的约束条件,而是简单的舍弃不满足约束的个体,这会导致方法有时找不到可行解。有学者只考虑线卡的功耗,将最小化能耗的虚拟拓扑设计问题形式化为一个简单的整数线性规划(ILP,Integer Linear Programming)模型,并提出了一个两阶段的启发式解法。由于作者只考虑了线卡的功耗,建立的ILP模型过于简单,网络倾向于建立一个星型虚拟拓扑,最小化链路的数量。
    现有工作存在以下不足。首次,都只考虑网络设备的部分组件的功耗,如链路、收发器或线卡,忽略了其它部分的功耗,这样使得最终得到的解只能使整个网络中的这些组件的功耗最低,而不是整个网络的功耗最低。其次,核心网络的网络设备通常采用模块化设计,现有的工作没有考虑网络设备的模块化结构。第三,由于问题的复杂性(NP问题),现有工作要么建立的形式化模型过于复杂,以至于不能有效求解,要么建立的模型过于简化而忽略重要特性,如有些只考虑链路或线卡功耗忽略了IP路由器处理流量的功耗。
    本发明以最小化网络功耗为目标的绿色虚拟拓扑设计(GVTD,Green Virtual Topology Design)问题。首先对GVTD进行形式化建模,该模型(即GVTD模型)通过业务路由实现对业务流的汇聚和疏导以提高网络资源利用率,根据网络资源的实际利用按需地配置网络资源以实现网络设备的多粒度睡眠,根据网络资源配置动态地建立虚拟拓扑,从而达到降低网络能耗目的。GVTD模型考虑整个网络设备的功耗,目的是降低整个网络的功耗。其次,GVTD模型考虑了网络设备的模块化结构,利用多粒度睡眠机制配置网络资源。第三,GVTD模型根据功耗与业务负载的依赖关系,同时考虑了不依赖业务负载的静态功耗和依赖业务负载的功态功耗。最后,GVTD模型是一个NP难的ILP问题,只能在问题规模很小时精确求解,本发明提出了一个基于约束路由的启发式解法,即CBR-GVTD(Constraint-Based Routing Green Virtual Topology Design,基于约束路由的绿色虚拟拓扑设计)方法。CBR-GVTD方法 以网络功耗的下界为基础构造GVTD问题的解,使用基于约束的路由方法以保证链路容量约束和网络最大路由跳数约束。CBR-GVTD方法按照从大到小的顺序处理网络的业务需求:对大的业务需求建立点到点的传输通道并进行单跳路由,从而确定网络的虚拟拓扑;对小的业务需求使用基于约束的路由方法在虚拟拓扑的剩余带宽上进行多跳路由,通过业务疏导提高网络资源利用率。CBR-GVTD方法按需配置网络资源,动态地建立虚拟拓扑,实现了虚拟拓扑对网络业务需求的动态适应,并且,可通过调节网络最大路由跳数来实现对路由性能的控制。
    发明内容
    1)GVTD模型的建立
    本发明根据核心网的网络设备的模块化结构把网络资源分成接口、线卡和机框3类:接口由一对发送/接收端口组成,每条传输通道起始于源结点的1个发送端口并终止于目的结点的1个接收端口;线卡由一组接口所共享,能够与这组接口同时处于空闲或活跃状态;除接口和线卡以外的部分全都归入机框的范畴。基于这种分类,本发明提出一种多粒度睡眠机制来配置网络资源:当接口空闲时让接口睡眠,当线卡的所有接口都空闲时则线卡睡眠,当所有线卡都空闲时则机框睡眠。
    GVTD模型假定网络资源按照峰值需求供给,即:每个网络结点具有充足的接口、线卡和机框;下层网络可以提供IP层所需的传输通道。GVTD模型主要包括以下几个部分:
    ◆网络功耗模型,即GVTD模型的目标函数。网络功耗模型同时考虑网络设备的静态功耗和动态功耗,静态功耗指网络设备独立于业务负载的那部分功耗(即空闲状态下的功耗),动态功耗指网络设备依赖业务负载的那部分功耗。根据网络设备的模块化结构,静态功耗可进一步细分为接口功耗、线卡功耗和机框功耗。
    ◆业务路由,即GVTD模型的路由约束,为了避免多径路由引发的时延抖动,GVTD模型使用单径路由。
    ◆资源配置,即GVTD模型的资源约束,该约束确定每个结点的活跃网络资源,并按照多粒度睡眠机制使空闲的网络资源睡眠。
    ◆虚拟拓扑设计,对应于GVTD模型的链路容量约束,该约束确定网络中需要建立的传输通道。此外,通过设定接口最大利用率参数,实现了对网络拥塞的控制。
    GVTD模型的输入参数定义如下。N表示网络结点集合,i,j,ii,jj∈N表示网络结点,C表示接口的容量,α表示接口(或链路)所允许的最大利用率,pt表示网络资源处理单位(1Gbps)业务负载的动态功耗,pi,pl和pc分别表示单个接口、线卡和机框的功耗,mi,ml分别表示每个线卡具有的接口数量和每个机框可配备的线卡数量,D表示网络的业务需求集合,d(ii,jj)∈D表示从结点ii到结点jj的业务需求。
    GVTD问题的决策变量定义如下:
    δ(ii,jj,i,j)∈{0,1}:业务需求d(ii,jj)的路径是否经过逻辑链路(i,j),1表示经过,0表示不经过;
    d’(i,j)∈Z+:逻辑链路(i,j)包含的传输通道数量,其中,Z+表示正整数集合,传输通道由下层网络提供,而且每条传输通道需要消耗一个发送端口和接收端口;
    t(i,j)∈R+:逻辑链路(i,j)上的总业务量,其中R+表示正实数集合;
    ni(i)∈Z+:网络结点i的活跃接口数量;
    nl(i)∈Z+:网络结点i的活跃线卡数量;
    nc(i)∈Z+:网络结点i的活跃机框数量。
    GVTD问题可以形式化描述为
    MinΣi∈N[nc(i)·pc+nl(i)·pl+ni(i)·pi]+Σi,j∈N:i≠jt(i,j)·pt  (1)
    受限于:

    Σj∈N:j≠iiδ(ii,jj,ii,j)-Σj∈N:j≠iiδ(ii,jj,j,ii)=1∀ii,jj∈N:d(ii,jj)>0---(2b)]]>
    Σi∈N:i≠jjδ(ii,jj,i,jj)-Σi∈N:i≠jjδ(ii,jj,jj,i)=1∀ii,jj∈N:d(ii,jj)>0---(2c)]]>
    Σj∈N:j≠iδ(ii,jj,i,j)1∀ii,jj,i∈N:d(ii,jj)>0---(2d)]]>
    Σj∈N:j≠iδ(ii,jj,j,i)1∀ii,jj,i∈N:d(ii,jj)>0---(2e)]]>
    t(i,j)=Σii,jj∈N:d(ii,jj)>0δ(ii,jj,i,j)·d(ii,jj)∀i,j∈N:i≠j---(3)]]>
    t(i,j)d(i,j)·α·C∀i,j∈N:i≠j---(4)]]>
    ni(i)≥Σj∈N:j≠id(i,j)∀i∈N---(5a)]]>
    ni(i)≥Σj∈N:j≠id(j,i)∀i∈N---(5b)]]>
    nl(i)·mi≥ni(i)∀i∈N---(6)]]>
    nc(i)·ml·mi≥ni(i)∀i∈N---(7)]]>
    目标函数(式(1))最小化整个网络的功耗。网络功耗由静态功耗和动态功耗两部分组成,静态功耗可进一步分为机框功耗nc(i)·pc、线卡功耗nl(i)·pl和接口功耗ni(i)·pi;我们使用线性函数近似动态功耗与业务负载的关系,即t(i,j)·pt。由于网络资源的睡眠功耗远远小于活跃功耗,本发明忽略网络资源的睡眠功耗。
    路由约束(式(2a)~(2e))为经典的多品种流守恒约束,业务需求d(ii,jj)经过单条路径从源结点ii到达目的结点jj。式(3)计算经过逻辑链路(i,j)的业务负载(即链路流量),链路的容量约束(式(4))确保链路的流量不超过链路的容量。IP层的链路(i,j)为逻辑链路,由下层网络提供的d′(i,j)条传输通道组成,每条传输通道的容量为C,并引入最大利用率α以应对IP业务的动态特性。IP层虚拟拓扑的确立过程即为决策变量d′(i,j)的值的确立过程,因此,式(4)在实现链路容量约束的同时还实现了IP层的虚拟拓扑设计,实现了IP层的逻辑链路与下层网络提供的传输通道的映射(即IP层与下层网络的层间约束)。式(5)-(7)为资源约束。其中,式(5a)和(5b)可确保结点提供足够的活跃接口,即活跃接口不应该少于传输通道所需的发送端口(式(5a))和接收端口(式(5b))。式(6)和(7)确保结点能提供足够的活跃线卡和活跃机框,即活跃线卡和活跃机框提供的接口数不少于活跃接口数。
    2)GVTD模型的求解
    GVTD模型是一个ILP模型,由于ILP是NP难问题,在计算资源有限的条件下,目前只可在问题规模很小时进行精确求解。为此,本发明提出一种快速有效的启发式方法,我们将该方法命名为CBR-GVTD。CBR-GVTD方法主要考虑和解决以下两个问题:
    ◆如何构造可行解,即构造解时应满足GVTD模型的所有约束条件。
    ◆如何提高解的质量,即构造的最终解尽可能的近似最优解。
    对于第一个问题,首先需要分析各个约束条件以及各个决策变量之间的依赖关系。在GVTD模型中,根据约束条件间的关系可知决策变量存在以下依赖关系:nl(i)和nc(i)都依赖ni(i),ni(i)依赖d′(i,j),d′(i,j)依赖t(i,j),t(i,j)依赖δ(ii,jj,i,j)。因此,根据以上依赖关系,本发明使用单跳路由和基于约束的路由(多跳路由)确立δ(ii,jj,i,j),t(i,j)和d′(i,j)的值,并同时满足路由约束(式(2a)~(2e)),式(3)和链路容量约束(式(4))。然后使用以下公式确立ni(i),nl(i)和nc(i)的值:
    ni(i)=max(Σj∈N:j≠id(i,j),Σj∈N:j≠id(j,i))∀i∈N---(8)]]>


    第二个问题涉及如何使目标函数(式(1))尽可能小。首先,只要我们能找到目标函数的一个足够大的下界值,通常情况下,可认为该下界值对应的解(不一定可行)与最优解十分接近,因此,在此基础上构造出的可行解通常质量较好。本发明通过以下方法计算目标函数 的下界值:

    Σi,j∈N:i≠jt(i,j)=Σi,j∈N:i≠jd(i,j)  (12)
    在式(11)中,∑j∈N:j≠id(i,j)和∑j∈N:j≠id(j,i)分别表示结点i发送和接收的业务量的下界,由于网络接口可以同时收发业务,所以需要取两者的较大者,然后除以每个接口允许的最大容量α·C,并向上取整即得到结点活跃接口的下界ni(i)lb。在式(12)中,整个网络的业务量的下界等于网络的总业务需求(即所有业务需求不经过中间结点转发单跳到达目的结点)。将式ni(i)lb代入式(8)~(10)可以分别求得nl(i)lb和nc(i)lb,最后将这些决策变量代入目标函数(式(1))即可求得目标函数的下界值。

    下面,我们考虑如何在目标函数下界值LB的基础上构造可行解。由于ni(i)、nl(i)和nc(i)都依赖d’(i,j),我们只需要在ni(i)lb的基础上构造可行的δ(ii,jj,i,j)、t(i,j)和d’(i,j),即解决业务路由和虚拟拓扑设计两个子问题。通常,网络的总业务量越大,网络需要的活跃接口越多,网络的静态功耗(包括接口、线卡和机框功耗)越大,网络的动态功耗也越大(与总业务量成正比)。因此,对业务需求进行路由时尽可能使用单跳路由,减少网络的总业务量。但是对于较小的业务需求,单跳路由会导致链路的利用率低,造成带宽资源的浪费,因此需要对较小的业务需求使用多跳路由,进行充分的业务疏导。在业务路由方面,本发明按从大到小的顺序对业务需求进行业务路由,对较大的业务需求使用单跳路由,对较小的业务需求使用基于约束的路由方法进行多跳路由,并对网络的最大路由跳数进行限制,以实现路由性能与网络功耗的折衷。在虚拟拓拓扑设计上,本发明根据业务路由动态按需建立网络的虚拟拓扑,实现虚拟拓扑对业务路由的适应。
    3)基于约束路由的Dijkstra方法CBR-Dijkstra
    基于约束路由的Dijkstra方法(CBR-Dijkstra,Constraint-Based Routing Dijkstra)计算满足链路容量约束和最大路由跳数约束的最短路径(即跳数最少的路径)。CBR-Dijkstra方法与标准的Dijkstra方法的不同之处有:(1)CBR-Dijkstra方法在网络的一个拓扑子图上,使用Dijkstra方法计算跳数最少的路径。该拓扑子图去除了网络中所有可用带宽小于业务需求所需带宽的链路,其中,链路去除是在路由计算过程中通过考虑被处理链路的可用带宽的方式实现。(2)在获得最短路径后,判定路径跳数是否小于网络的最大跳数,如果超过最大跳数则 表明路由失败。(3)当发现有多条跳数相同且都满足链路容量约束的路径时,方法将优先选择可用带宽最小的路径,以提高链路的利用率。CBR-Dijkstra方法的伪代码如下所示。:


    方法的输入包括业务需求d(i,j),网络结点集合N,网络链路集合E,网络链路的可用带宽集合B和网络的最大路由跳数H。方法输出为d(i,j)的路径。在方法中,predecessor(v)记录结点v的前驱结点,hops(v)记录从源结点i到结点v的最小跳数,visited(v)标识结点v是否已被访问,pb(v)表示从结点i到结点v的路径的可用带宽,b(u,v)∈B表示链路(u,v)的可用带宽,Q为候选结点列表。方法的1~7行首先进行一些初始化工作,然后从源结点i开始(第8行),计算源结点i的最短路径生成树,直到计算出到目标结点j的路径时停止(第9~25行)。方法只考虑可用带宽大于业务需求的链路(第12行),当跳数相同时,优先选择可用带宽最小的路径(第18~22行)。方法最后判定计算的最短路径是否小于网络的最大跳数H(第26行),如果路由成功,则返回前驱结点表示的最短路径(第27行),否则返回空值NIL(第28行)。
    4)基于约束路由的绿色虚拟拓扑设计方法CBR-GVTD
    基于约束路由的绿色虚拟拓扑设计方法(CBR-GVTD,Constraint-Based Routing Green Virtual Topology Design)的伪代码如下。


    方法的输入包括N,D,α,C,pt,pi,pl,pc,mi,ml和H,基中H为网络的最大路由跳数,其它符号已在第3节中定义。方法的输出为网络功耗和第3节定义的决策变量。CBR-GVTD方法分两个阶段,即:1)从目标函数下界值构造可行解(第1~16行);2)通过移除利用率低的传输通道对可行解进行优化(第17~27行)。
    在第1阶段,方法首先根据式(11)用下界值ni(i)lb初始化每个网络结点的接口数ni(i)(第1行),然后分两步建立网络的虚拟拓扑。第1步按照从大到小的顺序为每个业务需求d(i,j)建立从i到j的传输通道,并进行单跳路由(第4,5,7行)。每个传输通道消耗源结点i的 一个发送端口(sending port)和目的结点j的一个接收端口(receiving port)(第8行),该过程将持续到接口耗尽、没有传输通道可以建立为止(第6行)。第2步在第1步建立的虚拟拓扑基础上,利用单跳路由的剩余带宽,对剩余的业务需求(第1步中未能完成单跳路由的业务需求)按照从大到小的顺序进行CBR-Dijkstra路由(第9,10行)。该路由必然是多跳路由,为了防止路由跳数过大,我们限制网络的最大跳数为H。如果业务需求d(i,j)的路由失败(第11行),则增加结点i和j的接口(因为在第1步中已经耗尽)(第13行),为i到j建立传输通道并消耗相应的接口数(第12,15行),这也意味着网络的虚拟拓扑发生了变化(第14行)。通过第2步,所有的业务需求都成功完成路由,但是网络的虚拟拓扑可能发生了变化,我们通过反复迭代使这种虚拟拓扑对业务路由的适应性变化收敛(第2,3,14,16行)。
    在第2阶段,方法初始化链路集合E’为当前的逻辑链路集合E(第17行),然后每次从E’中取出剩余带宽最大的逻辑链路(i,j)(第18行)并将(i,j)从E’中去除(第19行),尝试移除从i到j的1条传输通道(第20行),并对经过逻辑链路(i,j)的所有业务需求进行CBR-Dijkstra重路由,如果重路由成功,则释放该传输通道消耗的接口(第21,22行),否则恢复移除的传输通道(第23行)。其中,链路的剩余带宽b(i,j)在每次路由后进行更新,最大的b(i,j)表明链路(i,j)的某条传输通道的利用率最低。至此,虚拟拓扑设计和业务路由已经完成,即δ(ii,jj,i,j)和d’(i,j)的值已经确定。方法移除每个结点剩余(即没用使用)的接口,确立ni(i)的最终值(第24行),通过式(3)、(9)和(10)分别确定t(i,j)、nl(i)和nc(i)(第25,26行),最后通过式(1)计算整个网络的功耗(第27行)。
    附图说明
    图1.10个结点的网络的功耗:CBR-GVTD与CPLEX、LR、LB和UB比较
    图2.不同规模的网络功耗:CBR-GVTD与LR、LB和UB比较
    图3.不同规模网络在业务非高峰期时的节省的最大功耗
    图4.网络资源利用率:CBR-GVTD与LR比较
    图5.路由跳数与业务需求的关系:CBR-GVTD与LR算法比较
    图6.路由跳数与网络规模的关系:CBR-GVTD与LR算法比较
    图7.CBR-GVTD算法在30个结点的网络的路由跳数分布
    图8.CBR-GVTD算法在H不同取值下的网络功耗
    具体实施步骤
    下面结合实例对本发明作进一步的说明。
    1)实验参数设置
    通过模拟实验从网络功耗、网络资源(即接口、线卡和机框)利用率和路由性能(即平均跳数和最大跳数)三个方面对CBR-GVTD方法进行性能评估,并将CBR-GVTD方法和其它方法的实验结果进行比较,包括:GVTD模型的精确解、网络功耗的下界和上界、以及基于拉格朗日松弛的启发式方法(即LR方法)。其中,使用数学工具GAMS/CPLEX求解GVTD模型的精确解,CPLEX是一种高性能的ILP求解器,采用分支定界方法求解ILP问题,由于ILP问题是NP难的,只能对规模较小的网络精确求解。网络功耗下界LB由式(11)和(12)求得,网络的功耗上界UB由式(13)和(14)求得。在式(13)中,每个业务需求d(i,j)通过条传输通道进行单跳路由,因此得到结点的接口上界ni(i)ub。与LB的计算类似,将ni(i)ub代入式(9)(10)可求得nl(i)ub和nc(i)ub,最后将这些值代入目标函数即得到上界值UB(即式(14))。LR方法使用拉格朗日松弛技术将ILP模型分解成容易求解的子问题,然后对每个子问题求解并使用次梯次方法求解拉格朗日对偶问题,最后对得到的解进行可行化处理。


    为了全面评估CBR-GVTD方法的性能,实验充分考虑了多种不同大小的网络、多种不同大小的业务需求和多种不同大小的网络最大跳数,实验参数设定如下:
    ◆网络规模。GVTD问题不涉及网络的物理拓扑,因此,只需结点数量即可表示各种大小的网络。实验网络的结点数量分别为10、20、30、40和50。
    ◆业务需求。Internet的流量具有重尾分布特性,本发明使用重力模型生成重尾分布的业务需求,网络结点间的平均业务需求分别为1Gbps、5Gbps、10Gbps、15Gbps、20Gbps、25Gbps、30Gbps、35Gbps和40Gbps。
    ◆网络设备的相关参数以Cisco CRS3-8/S路由器的规格说明为参考,具体设定如表1所示。
    ◆网络最大路由跳数H的取值分别为1、2、3、4、5和∞,其中,H=∞表示不限制网络的最大路由跳数。
    对网络规模、业务需求和网络最大路由跳数的多种取值的各种组合(共5×9×6=270种)分别进行实验。为了减小重力模型生成业务需求过程中随机因素可能对实验结果的影响,以上每种组合的实验重复进行10次(共2700次),每次实验的业务需求使用不同的随机数种子生成,结果取平均值。为了公平的比较CBR-GVTD与GAMS/CPLEX、LU、UB和LR的实验结果,这些方法都使用完全相同的实验参数(包括网络规模、业务需求和网络设备相关参数)。网络最大跳数H为CBR-GVTD方法所独有,在评估网络功耗和网络资源利用率的实验 中,网络最大跳数都不受限,即H=∞,在评估路由性能的实验中,将展示H的其它取值下的实验结果。
    表1网络设备的相关参数

    2)网络功耗
    GVTD的目标是最小化网络的功耗,考虑到网络业务需求的变化,在理想的情况下,网络功耗应该与网络业务需求成正比,即网络应该具有能量匀增特性。为了评估CBR-VTD方法求得的网络功耗与GVTD形式化模型最优值的差距,首先对规模较小(10个结点)的网络进行模拟实验,使用GAMS/CPLEX计算GVTD模型的最优解(相对误差限为2%),并将求得的网络功耗与CBR-VTD方法、LR方法以及网络功耗的下界LB和上界UB进行比较,结果如图1所示。在图1中,网络功耗的上界UB和下界LB,CBR-GVTD、LR方法和GAMS/CPLEX求得的网络功耗与业务需求呈现几乎线性增长的函数关系,即表现出一定的能量匀增特性。其中,网络功耗下界LB与最优解CPLEX比较接近,这表明LB作为网络功耗下界是十分紧致的,因此,在网络规模更大时(此时,无法用GAMS/CPLEX获得最优解)LB可用于评估CBR-GVTD方法的性能。在图1中,CBR-GVTD介于LR与CPLEX之间,这表明CBR-GVTD方法求得的网络功耗比LR方法的更低且更接近于GAMS/CPLEX求得的最优值。
    为了进一步评估在其它规模的网络上,CBR-GVTD方法求得的网络功耗的性能,分别在结点数为20、30、40和50的网络上进行模拟实验,实验结果如图2所示。由图2可知,无论网络结点数为多少,CBR-GVTD都位于LR与LB之间,这说明CBR-GVTD方法求得的网络功耗始终比LR方法的更低,更接近于网络功耗下界LB。总之,在网络功耗方面,图1和图2表明CBR-GVTD方法具有比LR方法更优的性能,能够获得接近最优值的网络功耗。Internet按照峰值需求供应网络资源(即超额供给)导致网络资源的平均利用率较低,因此,在大多数时间里业务需求都处于非高峰期,图3为各种规模的网络在业务非高峰期时CBR-GVTD方法节省的最大功耗,即CBR-GVTD方法在业务低峰期(1Gbps)时与业务高峰 期(40Gbps)时相比节省的网络功耗。由图3可知在业务非高峰期时,CBR-GVTD方法最多可节省62%~90%的网络功耗,且该比例随着网络规模的增大不断上升。
    3)网络资源利用率
    GVTD降低网络功耗的一个主要原因在于提高网络资源的利用率,下面从资源利用率方面评估CBR-GVTD方法的性能。图4为CBR-GVTD和LR方法在30个结点的网络上求得的网络资源平均利用率,由于结点数为10、20、40和50的网络的资源利率与图4类似,此处仅以30个结点的网络为例说明。在图4中,CBR-GVTD和LR方法求得的网络资源的平均利用率都随着网络业务需求的增加而增大,而且,接口和线卡的平均利用率都保持在较高的水平。对于机框和线卡的平均利用率,CBR-GVTD和LR方法差别不大,但是,CBR-GVTD方法对应的接口平均利用率比LR方法更高,基本维持在80%~90%的范围内,而LR方法对应的接口平均利用率基本在70%~80%的水平,这解释了为什么CBR-GVTD对应的网络功耗小于LR方法的。总之,图4表明在资源利用率方面,CBR-GVTD的性能也优于LR方法,CBR-GVTD方法可以获得很高的资源利用率。
    4)路由性能
    通常,业务的传输路径越长,端到端的网络时延也越大,因此,路径长度(即路由跳数)可用于评估CBR-GVTD方法的路由性能。图5为30个结点的网络使用CBR-GVTD和LR方法进行10次重复实验得到的平均跳数、最大跳数和每次实验的最大跳数的平均值(即平均最大跳数),图中分别用avgHop、maxHop和avgMaxHop标识。在图5中,CBR-GVTD和LR方法的平均跳数都很小(都小于3),其中CBR-GVTD的平均跳数略大于LR方法的,且都随着网络业务需求的增加而减小,表现出较好的路由性能。从图5可知,总体上,最大跳数也随网络业务需求的增加而减小。由于maxHop标识的为10次重复实验中的最大跳数,可能受随机因素的干扰,因而表现出较大的起伏;而avgMaxHop标识的是平均最大跳数,因此更加平滑,反映出最大跳数随网络业务需求增加而变小的驱势。此外,在图5中,CBR-GVTD方法的最大跳数在6~10的范围内变动,明显高于LR方法的最大跳数(变动范围为3~7)。图6为不同结点的网络在各种大小的业务需求下的平均跳数、最大跳数和平均最大跳数。在图6中,LR方法的平均跳数、最大跳数和平均最大跳数随网络结点数的增加而减小,CBR-GVTD方法的平均跳数随着网络结点数的增加几乎保持不变,但是最大跳数和平均最大跳数随着网络结点数增加而增大。
    从平均跳数看,图5和图6都表明CBR-GVTD方法具有接近LR方法的路由性能,但是 最大跳数却比LR方法的大,且随着网络结点数的增加而增大。图7进一步描述了30个结点的网络运行CBR-GVTD方法的跳数分布。在图7中,绝大部分路径的跳数都很小,只有极少数路径的跳数较大。随着网络业务需求的增加,跳数较小的路径所占比例逐渐增大。值得注意,在以上的实验中,CBR-GVTD方法的网络最大跳数都没有限制,即实验参数H=∞,因此,实验结果也代表了CBR-GVTD方法的最坏路由性能。通过参数H,可对CBR-GVTD方法的最大跳数进行控制。对结点数分别为10、20、…、50的网络,使用CBR-GVTD方法在H=1,2,3,4,5时进行实验,并用LR方法和下界LB作比较。由于不同结点的网络的实验结果相似,下面仅以30个结点的网络为例说明,网络功耗如图8所示。在图7中,CBR-GVTD方法在H=3,4,5,∞时的网络功耗基本相同,且小于LR方法的功耗。这表明CBR-GVTD方法可在网络功耗基本不变的情况下减小网络的最大跳数,同时获得比LR方法更低的网络功耗和更好的路由性能。
    当最大跳数H进一步减少时,通过图8可以知道,当H=2,网络结点间的平均业务需求为1Gbps和5Gbps时,CBR-GVTD方法的功耗比H=3,4,5,∞时略高,但随着网络业务需求的增大,H=2时的网络功耗与H=3,4,5,∞时的功耗基本相同。由图5可知,当H=∞,网络结点间的平均业务需求为1Gbps和5Gbps时,CBR-GVTD方法的平均跳数大于2,因此,在图8中,最大跳数限定为2(即H=2)时,网络功耗会有所增加。当H=1时,此时网络的所有业务都使用单跳路由,CBR-GVTD方法的网络功耗即为式(14)的网络功耗上界值UB。因此,通过调节参数H的取值,可以实现网络功耗与路由性能的折衷。

    关 键  词:
    一种 基于 约束 路由 绿色 虚拟 拓扑 设计 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:一种基于约束路由的绿色虚拟拓扑设计方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4885552.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1