一种基于电力通信软交换网关的负载平滑抑制方法转让专利

申请号 : CN201310552868.8

文献号 : CN103581037A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 夏泳马伟哲孟凡博赵宏昊金鑫王芝茗葛维春赵庆杞鲍鑫奚庆哲曹莹范继平林志超刘杨

申请人 : 国家电网公司国网辽宁省电力有限公司本溪供电公司辽宁省邮电规划设计院有限公司辽宁省医疗器械检验所

摘要 :

本发明一种基于电力通信软交换网关的负载平滑抑制方法,属于电力通信网络的负载均衡与资源优化技术领域,通过考虑负载抑制方法的公平性和有效性,以软交换网关业务过载为抑制条件,检测软交换网关的CPU利用率和服务缓存空间利用率,确定软交换网关是否处于业务过载,并建立多目标优化模型,利用蚁群群集智能优化获得该模型的最优可行解,实现对不同业务的平滑抑制;本发明创新性地提出通过蚁群智能优化获得多目标能效优化模型的最优可行解来对不同可能过载业务进行有效而公平的抑制;本发明提出采用平滑抑制的方式防止软交换网关负载出现突变情况,从而能有效改善系统性能。

权利要求 :

1.一种基于电力通信软交换网关的负载平滑抑制方法,其特征在于,包括以下步骤:步骤1、根据该检测周期内业务数量、不同业务的到达速率和处理速率,获得CPU的利用率,并根据服务缓存空间的空闲空间,获得服务缓存空间利用率;

步骤2、判断软交换网关是否过载,即判断CPU的利用率是否大于根据需求所设定的门限值,同时判断服务缓存空间利用率是否大于根据需求所设定的门限值,若上述两者同时大于门限值,则软交换网关过载,停止接收下一周期的业务并执行步骤3,否则,延长检测周期并返回执行步骤1;

步骤3、根据网关的总吞吐量和处理全部业务所消耗的总能耗,结合不同业务控制速率的限制条件,采用蚁群算法获得能效最大时的不同业务控制速率;

步骤3-1、设定在过载控制过程中不同业务控制速率的限定条件,包括不同业务控制速率要大于其控制速率的下限,CPU利用率小于或等于所设定的门限值;

步骤3-2、根据该网关的业务处理周期和该周期内业务数量,建立该网关总吞吐量与不同业务控制速率的关系;

步骤3-3、根据该网关的业务处理周期、该周期内业务数量、该网关链路容量和链路中基本能耗功率所占比例,建立该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系;

步骤3-4、结合不同业务控制速率的限制条件、网关总吞吐量与不同业务控制速率的关系、该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系,建立能效优化模型;

步骤3-5、采用蚁群算法获得能效最大时的不同业务控制速率;

步骤3-6、采用平滑抑制方法对能效最大时的不同业务控制速率进行过载控制,获得不同业务的最终控制速率;

步骤4、根据获得的不同业务的最终控制速率,设置计数器,即设定下一周期内接收业务的数量,实现对实际网关过载的控制;

步骤5、判断本周期内所有业务是否均处理完成,若是,则缩短检测周期,等待接收新业务,并返回执行步骤1;否则继续对剩余业务进行处理。

2.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤1所述的根据业务数量、不同业务的到达速率和处理速率,获得CPU的利用率;

CPU利用率ρ公式如下:

其中,n表示业务数量, 表示该周期内业务i的到达速率,A表示Arrive,1≤i≤n,表示业务i的处理速率,P表示process;

所述的根据服务缓存空间的空闲空间,获得服务缓存空间利用率η,公式如下:η=(Po-Pc)/Po (2)

其中,Po为服务缓存队列总长度;Pc表示服务缓存空间的空闲空间。

3.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤3-4所述的建立能效优化模型,公式如下:其中, 表示业务i的控制速率,C表示Control, 表示业务i的最小控制速率;

*

n表示业务数量;ρ 表示CPU利用率阈值, 表示业务i的处理速率,P表示process;

Ptatal表示周期内网关的总吞吐量,Etotal表示处

理该周期所有业务所消耗的总能耗;ce表示链路容量,β表示链路中基本能耗功率所占比例,0<β<1。

4.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤3-5所述的采用蚁群算法获得能效最大时的不同业务控制速率,具体包括以下步骤:步骤3-5-1、对蚁群算法进行初始化,即设置总的迭代次数为A,解向量的个数M,所述的每个解向量由某一次迭代中所有业务的处理速率构成;

设置迭代次数a=1,在满足能效优化模型中的限制条件下,随机得出一组不同业务的控制速率向量作为算法的初始解,解向量矩阵为 表示为:其中, 表示第一到第M组解向量; 表示第a次迭代

中,第一组解向量第一个业务的控制速度到第M组解向量第n个业务的控制速率,n表示业务数量;

设置M个解向量的信息素强度为Q,初始信息素矩阵Plista为:其中,ρ1,...,ρm,..,ρM分别表示第一个解向量至第M个解向量的信息素;

对应矩阵的能效矩阵Ja为:

此时迭代次数a为1;

步骤3-5-2、选择能效矩阵Ja中能效最小值所对应的控制速率,对解向量矩阵VM×n中其余的M-1组解进行高斯变异,若变异后的解向量所得能效值大于原解向量的能效值,则对a解向量矩阵VM×n 进行更新,将变异后的解向量替换原解向量;若变异后的解向量所得能效值小于或等于原来解向量的能效值,则根据轮盘赌算法按概率Pm对解向量进行更新,即若a轮盘赌算法得出的值小于或等于Pm,则对解向量矩阵VM×n 进行更新替换,若大于Pm则不进行更新替换,最终得到更新后的解向量矩阵;

步骤3-5-3、根据能效矩阵Ja中能效最大值和能效最小值,获得每个解向量中的信息素更新系数μm,更新后的M个解向量的信息素ρm′为:ρm′=ρm(1-Rho)+Qμm (7)

其中,μm=(J(Vm)-Jmin)/(Jmax-Jmin),Jmax表示能效最大值,Jmin表示能效最小值,J(Vm)表示解向量Vm对应的能效值,Rho表示信息素挥发系数,0<Rho<1;并对信息素矩阵Plista进行更新,获得更新后的信息素矩阵,同时对能效矩阵进行更新,获得更新后的能效矩阵;

步骤3-5-4、在更新后的解向量矩阵中,随机选取x组解向量进行变异:组数x公式如下:

x=M×(A+a)/2A (8)

根据更新后的信息素矩阵选择x组解向量中信息素值最大的解向量所对应的控制速率,根据如下公式对选取的x个解向量进行变异:其中,0<w<1; 表示变异后的解向量, 表示x组解向量中信息素值最大的解向量所对应的控制速率;

若变异后的解向量所得能效值大于原解向量的能效值,则对更新后的解向量矩阵进行再一次更新,即将变异后的解向量替换原解向量,若变异后的解向量所得能效值小于原来解向量的能效值,则采用轮盘赌算法按概率进行更新,并对更新后的能效矩阵和更新后的信息素矩阵进行再一次更新;

步骤3-5-5、判断迭代次数是否达到设定值,若是,则获得最终能效矩阵并执行步骤

2-5-6;否则返回执行步骤2-5-2;

步骤3-5-6、在最终能效矩阵中,选择能效值最大时所对应的不同业务控制速率,即获得该网关能效最大的不同业务控制速率 公式如下:

5.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤3-6所述的采用平滑抑制方法对能效最大时的不同业务控制速率进行过载控制,公式如下:其中, 表示业务i的控制速率,C表示Control, 表示该周期内业务i的到达速率,A表示Arrive,1≤i≤n,n表示业务数量,e表示平滑抑制系数,

6.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤1所述的检测周期为αT0,α∈[1,Tm/T0],其中,T0为最小测量时间周期,Tm为最大测量时间周期。

7.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤2所述的延长检测周期,即对检测周期最大值进行调节,具体为:将检测周期最大值乘以调节系数,获得新的检测周期最大值,调节系数的取值范围为1~2,若调节后的检测周期最大值大于检测周期最大值上限值,则将检测周期最大值延长为检测周期最大值上限值。

8.根据权利要求1所述的基于电力通信软交换网关的负载平滑抑制方法,其特征在于,步骤5所述的缩短检测周期,即对检测周期最大值进行调节,具体为:将检测周期最大值乘以调节系数,获得新的检测周期最大值,调节系数的取值范围为T0/Tm~1,其中,T0为最小测量时间周期,Tm为最大测量时间周期。

说明书 :

一种基于电力通信软交换网关的负载平滑抑制方法

技术领域

[0001] 本发明属于电力通信网络的负载均衡与资源优化技术领域,具体涉及一种基于电力通信软交换网关的负载平滑抑制方法。

背景技术

[0002] 随着电力通信技术的不断发展,下一代电力通信网络已发展为业务驱动型、开放性、分布性和综合性的多业务多数据传输网络。下一代电力通信网络由于业务与呼叫控制分离、呼叫与承载分离,其业务能够真正独立于承载网络,并且下一代电力通信网络本身也能灵活有效地提供多业务多数据,从而将第三方业务提供商加入到新业务的定义、设计和运营当中。作为下一代电力通信网络提供的针对业务开发、运行和管理的支撑平台,软交换网关将自己所运营的网络向第三方业务提供商开放,新的业务可以独立于网络外部进行开发和运行。软交换网关作为下一代电力通信网络体系结构的重要组成部分,在对网络中不同实体的呼叫请求进行处理的同时,还要对第三方业务提供商的应用需求提供业务处理功能。所以大量的业务处理请求很容易导致软交换网关出现高负载甚至出现业务过载,从而降低了软交换网关的业务处理能力。因此,软交换网关负载的有效控制已成为国内外研究的热点主题。
[0003] 现在已有大量研究人员对软交换网关的负载控制展开了研究,Zhang等人提出一种基于软交换网关服务器的自适应控制算法,通过利用最早优先处理原则来处理业务请求,并利用漏桶算法控制业务到达速率,通过最新业务的队列等待时间来判断是否过载,从而使该算法简单可行。Liu等人研究了负载控制的公平性,提出了能有效解决软交换网关过载控制公平性的方法。Deng等人以软交换网关中CPU利用率作为负载过载门限,提出了基于银行票据控制机制的过载控制算法,通过考虑过载控制的公平性,研究了控制不同过载业务的有效控制方法。
[0004] 以上这些方法对于解决高负载或者业务过载在一定程度上是有效的,能够满足一定的公平性与有效性,但其控制结果对业务影响较大,常常导致被处理业务请求波动较大,负载控制效果并不理想,而且也没有考虑软交换网关的高能耗、低效率即低能效的实际问题。

发明内容

[0005] 针对现有技术的不足,本发明提出一种基于电力通信软交换网关的负载平滑抑制方法,以达到改善现有电力通信网络中软交换网关能效的目的。
[0006] 一种基于电力通信软交换网关的负载平滑抑制方法,包括以下步骤:
[0007] 步骤1、根据该检测周期内业务数量、不同业务的到达速率和处理速率,获得CPU的利用率,并根据服务缓存空间的空闲空间,获得服务缓存空间利用率;
[0008] 步骤2、判断软交换网关是否过载,即判断CPU的利用率是否大于根据需求所设定的门限值,同时判断服务缓存空间利用率是否大于根据需求所设定的门限值,若上述两者同时大于门限值,则软交换网关过载,停止接收下一周期的业务并执行步骤3,否则,延长检测周期并返回执行步骤1;
[0009] 步骤3、根据网关的总吞吐量和处理全部业务所消耗的总能耗,结合不同业务控制速率的限制条件,采用蚁群算法获得能效最大时的不同业务控制速率;
[0010] 步骤3-1、设定在过载控制过程中不同业务控制速率的限定条件,包括不同业务控制速率大于其控制速率的下限,CPU利用率小于等于所设定的门限值;
[0011] 步骤3-2、根据该网关的业务处理周期和该周期内业务数量,建立该网关总吞吐量与不同业务控制速率的关系;
[0012] 步骤3-3、根据该网关的业务处理周期、该周期内业务数量、该网关链路容量和链路中基本能耗功率所占比例,建立该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系;
[0013] 步骤3-4、结合不同业务控制速率的限制条件、网关总吞吐量与不同业务控制速率的关系、该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系,建立能效优化模型;
[0014] 步骤3-5、采用蚁群算法获得能效最大时的不同业务控制速率;
[0015] 步骤3-6、采用平滑抑制方法对能效最大时的不同业务控制速率进行过载控制,获得不同业务的最终控制速率;
[0016] 步骤4、根据获得的不同业务的最终控制速率,设置计数器,即设定下一周期内接收业务的数量,实现对实际网关过载的控制;
[0017] 步骤5、判断本周期内所有业务是否均处理完成,若是,则缩短检测周期,等待接收新业务,并返回执行步骤1;否则继续对剩余业务进行处理。
[0018] 步骤1所述的根据业务数量、不同业务的到达速率和处理速率,获得CPU的利用率;
[0019] CPU利用率ρ公式如下:
[0020]
[0021] 其中,n表示业务数量, 表示该周期内业务i的到达速率,A表示Arrive,1≤i≤n, 表示业务i的处理速率,P表示process;
[0022] 所述的根据服务缓存空间的空闲空间,获得服务缓存空间利用率η,公式如下:
[0023] η=(Po-Pc)/Po (2)
[0024] 其中,Po为服务缓存队列总长度;Pc表示服务缓存空间的空闲空间。
[0025] 步骤3-4所述的建立能效优化模型,公式如下:
[0026]
[0027] 其中, 表示业务i的控制速率,C表示Control, 表示业务i的最小控制速*率;n表示业务数量;ρ 表示CPU利用率阈值, 表示业务i的处理速率,P表示process;
Ptatal表示周期内网关的总吞吐量,Etotal表示处
理该周期所有业务所消耗的总能耗;ce表示链路容量,β表示链路中基本能耗功率所占比例,0<β<1。
[0028] 步骤3-5所述的采用蚁群算法获得能效最大时的不同业务控制速率,具体包括以下步骤:
[0029] 步骤3-5-1、对蚁群算法进行初始化,即设置总的迭代次数为A,解向量的个数M,所述的每个解向量由某一次迭代中所有业务的处理速率构成;
[0030] 设置迭代次数a=1,在满足能效优化模型中的限制条件下,随机得出一组不同业务的控制速率向量作为算法的初始解,解向量矩阵为 表示为:
[0031]
[0032] 其中, 表示第一到第M组解向量; 表示第a次迭代中,第一组解向量第一个业务的控制速度到第M组解向量第n个业务的控制速率,n表示业务数量;
[0033] 设置M个解向量的信息素强度为Q,初始信息素矩阵Plista为:
[0034]
[0035] 其中,ρ1,...,ρm,..,ρM分别表示第一个解向量至第M个解向量的信息素;
[0036] 对应矩阵的能效矩阵Ja为:
[0037]
[0038] 此时迭代次数a为1;
[0039] 步骤3-5-2、选择能效矩阵中能效最小值所对应的控制速率,对解向量矩阵中其余的M-1组解进行高斯变异,若变异后的解向量所得能效值大于原解向量的能效值,则对解向量矩阵进行更新,将变异后的解向量替换原解向量;若变异后的解向量所得能效值小于等于原来解向量的能效值,则根据轮盘赌算法按设定概率对解向量进行更新,即若轮盘赌算法得出的值小于等于设定概率,则对解向量矩阵进行更新替换,若大于设定概率则不进行更新替换,最终得到更新后的解向量矩阵;
[0040] 步骤3-5-3、根据能效矩阵Ja中能效最大值和能效最小值,获得每个解向量中的信息素更新系数μm,更新后的M个解向量的信息素ρm′为:
[0041] ρm′=ρm(1-Rho)+Qμm (7)
[0042] 其中,μm=(J(Vm)-Jmin)/(Jmax-Jmin),J(Vm)表示解向量Vm对应的能效值,Jmax表示能效最大值,Jmin表示能效最小值,Rho表示信息素挥发系数,0<Rho<1;并对信息素矩阵Plista进行更新,获得更新后的信息素矩阵,同时对能效矩阵进行更新,获得更新后的能效矩阵;
[0043] 步骤3-5-4、在更新后的解向量矩阵中,随机选取x组解向量进行变异:
[0044] 组数x公式如下:
[0045] x=M×(A+a)/2A (8)
[0046] 根据更新后的信息素矩阵选择x组解向量中信息素值最大的解向量所对应的控制速率,根据如下公式对选取的x个解向量进行变异:
[0047]
[0048] 其中,0<w<1; 表示变异后的解向量, 表示x组解向量中信息素值最大的解向量所对应的控制速率;
[0049] 若变异后的解向量所得能效值大于原解向量的能效值,则对更新后的解向量矩阵进行再一次更新,即将变异后的解向量替换原解向量,若变异后的解向量所得能效值小于原来解向量的能效值,则采用轮盘赌算法按概率进行更新,并对更新后的能效矩阵和更新后的信息素矩阵进行再一次更新;
[0050] 步骤3-5-5、判断迭代次数是否达到设定值,若是,则获得最终能效矩阵并执行步骤2-5-6;否则返回执行步骤2-5-2;
[0051] 步骤3-5-6、在最终能效矩阵中,选择能效值最大时所对应的不同业务控制速率,即获得该网关能效最大的不同业务控制速率 公式如下:
[0052]
[0053] 步骤3-6所述的采用平滑抑制方法对能效最大时的不同业务控制速率进行过载控制,公式如下:
[0054]
[0055] 其中, 表示业务i的控制速率,C表示Control, 表示该周期内业务i的到达速率,A表示Arrive,1≤i≤n,n表示业务数量,e表示平滑抑制系数,[0056] 步骤1所述的检测周期为αT0,α∈[1,Tm/T0],其中,T0为最小测量时间周期,Tm为最大测量时间周期。
[0057] 步骤2所述的延长检测周期,即对检测周期最大值进行调节,具体为:将检测周期最大值乘以调节系数,获得新的检测周期最大值,调节系数的取值范围为1~2,若调节后的检测周期最大值大于检测周期最大值上限值,则将检测周期最大值延长为检测周期最大值上限值。
[0058] 步骤5所述的缩短检测周期,即对检测周期最大值进行调节,具体为:将检测周期最大值乘以调节系数,获得新的检测周期最大值,调节系数的取值范围为T0/Tm~1,其中,T0为最小测量时间周期,Tm为最大测量时间周期。
[0059] 本发明的优点:
[0060] 本发明一种基于电力通信软交换网关的负载平滑抑制方法,通过考虑负载抑制方法的公平性和有效性,以软交换网关业务过载为抑制条件,检测软交换网关的CPU利用率和服务缓存空间利用率,确定软交换网关是否处于业务过载,并建立多目标优化模型,利用蚁群群集智能优化获得该模型的最优可行解,实现对不同业务的平滑抑制;本发明创新性地提出通过蚁群智能优化获得多目标能效优化模型的最优可行解来对不同可能过载业务进行有效而公平的抑制;本发明提出采用平滑抑制的方式防止软交换网关负载出现突变情况,从而能有效改善系统性能。

附图说明

[0061] 图1为本发明一种实施例的基于电力通信软交换网关的负载平滑抑制方法流程图;
[0062] 图2为本发明一种实施例的负载平滑抑制系统框图;
[0063] 图3为本发明一种实施例的负载平滑抑制迭代次数对能效的影响;
[0064] 图4为本发明一种实施例的负载平滑抑制CPU利用率;
[0065] 图5为本发明一种实施例的负载平滑抑制多业务能效分析。

具体实施方式

[0066] 下面结合附图对发明一种实施例做进一步说明。
[0067] 一种基于电力通信软交换网关的负载平滑抑制方法,方法流程图如图1所示,包括以下步骤:
[0068] 步骤1、根据该检测周期内业务数量、不同业务的到达速率和处理速率,获得CPU的利用率,并根据服务缓存空间的空闲空间,获得服务缓存空间利用率;
[0069] 如图2所示,本发明实施例中以软交换网关为例,服务器通过软交换网关对不同业务的服务请求进行处理;其中在服务器端,服务缓存队列总长度为200;实施例中在160个业务处理时间单位T(T=1s)内对软交换网关的不同业务进行业务控制,设置在周期20T~100T内业务出现过载,设置T0=100ms,设置Tm的范围为1~3s,初始Tm=2s;设置三个不同的业务S1,S2,S3进行过载控制,在不过载的时间段三个业务的到达速率都为5个/秒,在过载的时间段20T~100T中三个业务的到达速率都为100个/秒,其处理速率分别为 为满足公平性与有效性的条件在过载控制时设置三种业务
的到达速率都满足
[0070] 本发明实施例中,采用动态抽样测量软交换网关CPU利用率ρ和服务缓存空间利用率η;以测量步长αT0动态随机测量软交换网关的CPU利用率ρ,同时测量服务缓存队列空间的空闲空间Pc,并得出服务缓存空间利用率η;
[0071] CPU利用率ρ公式如下:
[0072]
[0073] 获得服务缓存空间利用率η,公式如下:
[0074] η=(Po-Pc)/Po (2)
[0075] 步骤2、判断软交换网关是否过载,即判断CPU的利用率是否大于根据需求所设定的门限值,同时判断服务缓存空间利用率是否大于根据需求所设定的门限值,若上述两者同时大于门限值,则软交换网关过载,停止接收下一周期的业务并执行步骤3,否则,延长检测周期并返回执行步骤1;
[0076] 本发明实施例中,设定对应于CPU的利用率ρ、服务缓存空间利用率η的过载门* * * *限ρ 和η,ρ =0.9,η=0.9;初始化变量lρ=0和lη=0,执行如下满负载程度判断* *
过程:若ρ ≤ρ,软交换网关CPU负载过载,则lρ=1;若η ≤η,服务缓存空间负载过载,则lη=1。最后,做如下判决:若(lρ&lη)=1,则软交换网关过载;
[0077] 本发明实施例中,延长检测周期,即对检测周期最大值进行调节,具体为:
[0078] Tm′=βTm (12)
[0079] 其中,Tm′表示调节后检测周期最大值;β为调节系统,且1<β<2;若Tm′>TU,其中,TU为最大测量时间周期上限,令Tm′=TU,其中TU=3;
[0080] 步骤3、根据网关的总吞吐量和处理全部业务所消耗的总能耗,结合不同业务控制速率的限制条件,采用蚁群算法获得能效最大时的不同业务控制速率;
[0081] 步骤3-1、设定在过载控制过程中不同业务控制速率的限定条件,包括不同业务控制速率大于最小控制速率,CPU利用率小于等于所设定的门限值;
[0082] 根据公平性原则设定在负载抑制过程中不同业务控制速率的取值范围:
[0083]
[0084] 根据有效性原则,必须有CPU利用率不能大于其门限值,所以不同业务的控制速率还需要满足:
[0085]
[0086] 步骤3-2、根据该网关的业务处理周期和该周期内业务数量,建立该网关总吞吐量与不同业务控制速率的关系;
[0087] 公式如下:
[0088]
[0089] 其中,T为处理业务周期;
[0090] 步骤3-3、根据该网关的业务处理周期、该周期内业务数量、该网关链路容量和链路中基本能耗功率所占比例,建立该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系;
[0091]
[0092] 步骤3-4、结合不同业务控制速率的限制条件、网关总吞吐量与不同业务控制速率的关系、该网关处理所有业务所消耗的总能耗与不同业务控制速率的关系,建立能效优化模型;
[0093] 能效优化模型公式如下:
[0094]
[0095] 其中,
[0096] 步骤3-5、采用蚁群算法获得能效最大时的不同业务控制速率,具体包括以下步骤:
[0097] 步骤3-5-1、对蚁群算法进行初始化,即设置总的迭代次数为A,解向量的个数M,所述的每个解向量由某一次迭代中所有业务的处理速率构成;
[0098] 本发明实施例中,设置总的迭代次数为25次,蚂蚁(解向量)个数为20个,所以对应的20只蚂蚁的解向量为20×3矩阵;
[0099] 设置迭代次数a=1,在满足能效优化模型中的限制条件下,随机得出一组不同业务的控制速率向量作为算法的初始解,解向量矩阵为 表示为:
[0100]
[0101] 其中, 表示第a次迭代中,第一组解向量第一个业务的控制速度到第20组解向量第3个业务的控制速率;
[0102] 设置M个解向量的信息素强度为Q=1,初始信息素矩阵Plista为:
[0103]
[0104] 对应矩阵的能效矩阵Ja为:
[0105]
[0106] 此时迭代次数a为1;
[0107] 步骤3-5-2、选择能效矩阵Ja中能效最小值所对应的控制速率,对解向量矩阵中其余的M-1组解进行高斯变异,若变异后的解向量所得能效值大于原解向量的能效值,则对解向量矩阵 进行更新,将变异后的解向量替换原解向量;若变异后的解向量所得能效值小于等于原来解向量的能效值,则根据轮盘赌算法按概率Pm(0<Pm<0.1)对解向量进行更新,本实施例中Pm=0.08,即若轮盘赌算法得出的值小于等于Pm,则对解向量矩阵 进行更新替换,若大于Pm则不进行更新替换,最终得到更新后的解向量矩阵;
[0108] 步骤3-5-3、根据能效矩阵Ja中能效最大值和能效最小值,获得每个解向量中的信息素更新系数μm,更新后的M个解向量的信息素ρm′为:
[0109] ρm′=ρm(1-Rho)+Qμm (7)
[0110] 其中,信息素挥发系数为Rho=0.5;并对信息素矩阵Plista进行更新,获得更新后的信息素矩阵,同时对能效矩阵进行更新,获得更新后的能效矩阵;
[0111] 步骤3-5-4、在更新后的解向量矩阵中,随机选取x组解向量进行变异:
[0112] 组数x公式如下:
[0113] x=M×(A+a)/2A (8)
[0114] a=1时,即第一次迭代时,从更新后的解向量矩阵中随机选择出x=10组解向量,根据更新后的信息素矩阵选择出这10组解向量中信息素值最大的解向量所对应的控制速率,根据如下公式对选取的这10个解向量进行变异:
[0115]
[0116] 其中,w=0.6;
[0117] 若变异后的解向量所得能效值大于原解向量的能效值,则对更新后的解向量矩阵进行再一次更新,即将变异后的解向量替换原解向量,若变异后的解向量所得能效值小于原来解向量的能效值,则采用轮盘赌算法按概率进行更新,并对更新后的能效矩阵和更新后的信息素矩阵进行再一次更新;
[0118] 步骤3-5-5、判断迭代次数是否达到设定值,若是,则获得最终能效矩阵并执行步骤2-5-6;否则返回执行步骤2-5-2;
[0119] 步骤3-5-6、在最终能效矩阵中,选择能效值最大时所对应的不同业务控制速率,即获得该网关能效最大的不同业务控制速率 公式如下:
[0120]
[0121] 步骤3-6、采用平滑抑制方法对能效最大时的不同业务控制速率进行过载控制,获得不同业务的最终控制速率;公式如下:
[0122]
[0123] 其中, 表示该周期内业务i的到达速率,A表示Arrive,1≤i≤n,n表示业务数量,e表示平滑抑制系数, 经过多个过载控制周期的迭代,平滑抑制系数e趋近于零,业务的到达速率也趋近于公式(10)中的值;
[0124] 判断平滑抑制系数是否满足e<0,如满足,则停止抑制并执行步骤4;否则,返回执行步骤3-6继续执行平滑抑制。
[0125] 步骤4、根据获得的不同业务的最终控制速率,设置计数器,即设定下一周期内接收业务的数量,实现对实际网关过载的控制;
[0126] 不同业务的最终控制速率反馈给软交换网关中的计数器,计数器根据这些反馈的控制速率值设定对应每种业务可以进入软交换网关的不同业务的数量,从而对不同业务进行速率控制:当某种业务在对应计数器中的值不为零时,就让该业务请求从软交换网关通过并由服务器进行处理,并且每从软交换网关通过一个业务计数器中对应的值就对应的减一,如果当某种业务在对应的计数器中的值为零时,在这个处理周期内软交换网关不会继续接收此业务;
[0127] 步骤5、判断本周期内所有业务是否均处理完成,若是,则缩短检测周期,等待接收新业务,并返回执行步骤1;否则继续对剩余业务进行处理。
[0128] 缩短检测周期,即对检测周期最大值进行调节,具体为:将检测周期最大值乘以调节系数Tm=zTm,其中z为调节系统,且T0/Tm<z<1,获得新的检测周期最大值。
[0129] 如图3所示,该负载平滑抑制方法仅需要迭代25次左右,就能得出能效目标函数的最优解,所以该方法有很好的收敛性。
[0130] 如图4所示,该负载平滑抑制方法有很好的有效性,能够满足其不过载的限制条件;并且可以看出利用该平滑抑制方法,在过载控制时CPU利用率是缓慢上升直到其门限值,这样对服务器起到了很好的保护作用。
[0131] 如图5所示,三种业务在负载平滑抑制过程中的能效变化,在满足公平性的原则下三种业务的能效都达到了最优,类似于图4平滑抑制的效果也在图5中得到展现。