CN110417652B - 一种基于分段路由策略的软件定义网络路由方法 - Google Patents
一种基于分段路由策略的软件定义网络路由方法 Download PDFInfo
- Publication number
- CN110417652B CN110417652B CN201910522910.9A CN201910522910A CN110417652B CN 110417652 B CN110417652 B CN 110417652B CN 201910522910 A CN201910522910 A CN 201910522910A CN 110417652 B CN110417652 B CN 110417652B
- Authority
- CN
- China
- Prior art keywords
- particle
- iteration
- algorithm
- particles
- link
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于分段路由策略的软件定义网络路由算法及应用,属于通信技术领域。该路由算法采用多目标粒子群算法对链路的负载均衡和链路花费两个目标进行优化,从而得到最优链路权值。本发明中粒子的速度更新公式针对单目标粒子群的速度更新公式进行优化,增加了扰动速度项,这就保证了迭代后期粒子不会停止搜索而使算法陷入局部最优。优化了惯性权重的设置,既可以满足粒子初期有一个较大的速度,又可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标,最后通过最短路径算法计算出最优路径。
Description
技术领域
本发明属于通信技术领域,具体涉及一种基于分段路由策略的软件定义网络路由方法。
背景技术
近年来,软件定义网络(Software Defined Networking,SDN)受到广泛关注,作为一种最新的网络架构,它对网络设施的控制转发面以及应用层面的功能进行了再定义并抽象,这样就使得网络设施可以通过统一的接口进行编程。SDN从硬件中剥离出交换/路由设备的控制面,可以更好的掌控全局网络,同时网络可以进行编程,应用程序也可以通过一个统一的接口来操作网络。SDN这种逻辑控制和数据转发互相分离的思想,简化了现有的复杂网络控制面,使得控制面具有独立和创新发展的空间,网络面向应用可编程,实现了网络业务的自动化部署,提高了资源利用率,降低网络的建设和维护成本,促进了网络业务的创新发展,为研发网络新应用和未来互联网技术提供了一种新的解决方案,采用软件定义网络的方式可以灵活的满足不同用户的差异化需求。
SDN技术的典型代表协议如OpenFlow协议,当前面临流表的扩展性、硬件芯片技术制约网络转发性能、新旧设备共存及网络演进等问题。针对上述问题,分段路由(SegmentRouting,SR)这种分组转发机制被引入,SR通过在入口处的包头上加多协议标签交换(MPLS)机制的有序列表机制定义信息的路径,使SDN路由管理更加简单高效;SR也可以有效解决SDN中的一些可伸缩性问题。分段路由具有操作简单、易于部署、负载共享和快速恢复等优点,不需要对现有的网络进行较大的修改,从而有效的保护投资。
SDN与SR的结合使用,利于找到智能电网中分布式智能、集中优化和基于应用策略创建之间的平衡,SDN与SR结合可以快速的实现对业务的部署,从而应对智能电网多样化的业务、各种各样的需求等带来的挑战。
随着近年来网络规模的逐渐扩大,网络链路的负载均衡面临着多方面挑战。如果不能合理分配网络负载,就很容易造成网络拥塞,影响网络服务质量。链路负载均衡可以实现节点负载的均衡化,避免出现某些链路负载过重而其他链路闲置的情况。链路花费表示链路对网络资源的消耗,较少的链路花费有利于提高链路的利用率,减少对网络资源的消耗。当今网络中普遍存在着大量的路径冗余,导致非常大的能量消耗问题。所以对负载均衡和链路花费这两个指标的优化可以明显提高网络资源分配率和网络的可靠性。
而传统的路由算法一般只考虑到路径的跳数,或者链路的带宽等去优化单个目标,或者是将一个网络性能指标限制在一定范围内,去优化另一个目标。而且多目标优化问题通常存在几个优化目标互相冲突的问题。
发明内容
本发明的目的是为了解决现有技术的不足,提供一种基于分段路由策略的软件定义网络路由方法。该路由方法采用多目标粒子群算法对链路的负载均衡和链路花费两个目标进行优化,从而得到最优链路权值。本发明中粒子的速度更新公式针对单目标粒子群的速度更新公式进行优化,增加了扰动速度项,这就保证了迭代后期粒子不会停止搜索而使算法陷入局部最优。优化了惯性权重的设置,既可以满足粒子初期有一个较大的速度,又可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标,最后通过最短路径算法计算出最优路径。
为实现上述目的,本发明采用的技术方案如下:
一种基于分段路由策略的软件定义网络路由方法,包括如下步骤:
步骤(1),列链路负载平衡公式和链路花费公式,如式(1)和(2)所示;
式(2)中,cos t(p)表示链路花费;
步骤(2),根据链路负载平衡公式和链路花费公式确定适应度函数,适应度函数如式(4)和(5)所示;
其中,fitness1为定义的适应度函数1,fitness2为适应度函数2;
步骤(3),根据步骤(2)的适应度函数,利用多目标粒子群优化算法,同时优化链路花费和链路负载均衡两个目标,得到Pareto最优解集,之后从所述Pareto最优解集中选择链路最优权值,根据最优权值计算最短路径。
进一步,优选的是,步骤(3)具体包括如下步骤:
步骤(a),设置多目标粒子群优化算法初始化的相关参数,外部集设置为空,给定粒子种群,随机生成初始粒子的速度与位置,产生初始群体,计算得到初始群体中各粒子适应度函数值,并依据Pareto主导准则将初始种群中所有粒子相互比较完成后得到初始群体中Pareto较优解,并将较优解保存在非支配集中;
步骤(b),将每个粒子的个体最优极值设置为对应粒子的当前位置;更新外部集,将种群中所有的非支配集加入外部集,删除被支配的粒子;
步骤(c),从非支配集中随机选取百分之十的粒子作为全局最优值的待选解,再从待选解中随意选取一个粒子作为全局最优值;
步骤(d),更新粒子的速度和位置:把粒子当前的速度和位置代入到相应的速度位置更新公式中,然后计算出粒子下一时刻的速度和位置;
步骤(e),根据步骤(d)的计算结果,计算每个粒子的新的适应度函数值;
步骤(f),根据步骤(e)所得新的适应度函数值,更新粒子的个体极值及全局极值,并更新外部集;
步骤(h),之后继续进行迭代,根据终止条件进行判断,如果达到终止条件的要求,就停止迭代,得到Pareto最优解集,并输出最优权值,如果没有达到终止条件的要求,则继续迭代,直到满足要求为止;
所述的终止条件为达到了设定的最大迭代次数,或是已经得到了满足要求的最优解集;
步骤(i),根据最优权值计算最短路径。
进一步,优选的是,多目标粒子群优化算法中,惯性权重公式如下:
w(t)是惯性权重,t表示当前算法的迭代次数,Tmax表示算法的最大迭代次数。
进一步,优选的是,多目标粒子群优化算法中,粒子速度和位置更新的规则如下:
Xi(t+1)=Xi(t)+Vi(t+1) (8)
其中,Vi(t+1)为第i个粒子第t+1次迭代时的速度,Vi(t)为第i个粒子第t次迭代时的速度;Xi(t+1)为第i个粒子第t+1次迭代时的位置,Xi(t)为第i个粒子第t次迭代时的位置;t表示迭代次数;w(t)是惯性权重;c1,c2为学习因子,分别是粒子追踪自己过去的最优值的权重系数和粒子追踪群体最优值的权重系数,c1,c2的值都设成2;r1,r2是均匀分布在[0,1]区间内的随机数;Pbest是一个粒子当前的最优位置,也称个体最优位置、个体极值;Gbest是种群中所有粒子当前达到的最佳位置,也称全局最优位置、全局极值;a,b是随机数,取值在(0.0001,0.001)区间内,t,Tmax分别是当前迭代次数和算法最大迭代次数。
进一步,优选的是,多目标粒子群优化算法中,边界位置处理公式如下:
其中,[xmin,j,xmax,j]是第i个粒子在第j维的取值范围,xmin,j对应第j维的最小边界,xmax,j对应第j维的最大边界;Xij为第i个粒子在第j维的位置。
进一步,优选的是,多目标粒子群优化算法中,外部集更新具体方法是:
算法开始时,把外部集设置为空,第一个粒子无条件加入外部集中;
第二个粒子开始,即外部集不再为空时,每一个粒子都要和外部集中的所有粒子进行比较;任选非支配解中的一个粒子i,根据支配关系,把粒子i与外部集中的所有粒子逐个比较,如果i被外部集中的某个粒子支配,就不把i归入外部集中;如果粒子i不被外部集中所有粒子支配或者粒子i支配外部集的某个粒子或者多个粒子,则把粒子i加入到外部集中,然后把外部集中被粒子i支配的粒子进行标记,准备将它们从外部集中删除;重复上述比较步骤直到更新完毕。
进一步,优选的是,多目标粒子群优化算法中,假设外部集最大的承受量是W,当外部集的存储量大于W,则采用从大到小的排序方式,对粒子的拥挤情况进行排序,删除密度高的粒子,保留分散的粒子,至外部集的存储量不大于W。
进一步,优选的是,多目标粒子群优化算法中,根据新的适应度函数值,更新粒子的个体极值具体方法为:
若第i个粒子第t+1迭代时的新的适应度函数值≥第i个粒子的个体极值在第t次迭代时的适应度函数值,则第i个粒子第t+1次迭代时的个体极值为第i个粒子第t+1次迭代时的位置;
若第i个粒子第t+1迭代时的新的适应度函数值小于第i个粒子的个体极值在第t次迭代时的适应度函数值,则第i个粒子第t+1次迭代时的个体极值为第i个粒子第t次迭代时的个体极值。
本发明步骤(a)中,所述的参数包括链路、链路利用率和总负载值。
本发明是在单目标粒子群算法上进行改进,具体算法流程如图1所示,与传统单目标粒子群算法相比,改进部分体现在以下几个方面:
本发明采用多目标粒子群算法对链路的负载均衡和链路花费两个目标进行优化,从而得到最优链路权值。其中两个适应度函数分别表示链路的负载均衡和链路花费。
本发明中粒子的速度更新公式针对单目标粒子群的速度更新公式进行优化,增加了扰动速度项,这就保证了迭代后期粒子不会停止搜索而使算法陷入局部最优。
优化了惯性权重的设置,既可以满足粒子初期有一个较大的速度,又可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标。
本发明与现有技术相比,其有益效果为:
本发明算法对网络中路由选取时链路的负载均衡和链路花费两个目标进行优化,从而得到最优链路权值。本发明中粒子的速度更新公式针对单目标粒子群的速度更新公式进行优化,增加了扰动速度项,这就保证了迭代后期粒子不会停止搜索而使算法陷入局部最优。优化了惯性权重的设置,既可以满足粒子初期有一个较大的速度,又可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标,最后通过最短路径算法计算出最优路径。
本算法与现有算法相比优化了惯性权重的设置,既可以满足粒子初期有一个较大的速度,又可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标,最后通过最短路径算法计算出最优路径。
附图说明
图1为本发明算法流程图;
图2为使用SPF、WSP、SWP、MIRA和本发明算法的网络的链路花费比较结果;
图3为使用SPF、WSP、SWP、MIRA和本发明算法的网络的负载均衡比较结果;
图4为使用SPF、WSP、SWP、MIRA和本发明算法的网络的最大链路利用率比较结果。
具体实施方式
下面结合实施例对本发明作进一步的详细描述。
本领域技术人员将会理解,下列实施例仅用于说明本发明,而不应视为限定本发明的范围。实施例中未注明具体技术或条件者,按照本领域内的文献所描述的技术或条件或者按照产品说明书进行。所用材料或设备未注明生产厂商者,均为可以通过购买获得的常规产品。
1多目标粒子群算法
本发明采用多目标粒子群算法对链路的负载均衡和链路花费两个目标进行优化,从而得到最优链路权值。其中两个适应度函数分别表示链路的负载均衡和链路花费。通过最短路径算法对经过优化的链路权值计算最短路径,也就是最优路径,从而实现对链路的负载均衡和链路花费两个目标的优化。
负载平衡和链路花费公式分别如式(1)和(2)所示。
负载平衡公式:
链路花费:
用多目标粒子群算法同时优化链路花费和负载均衡两个目标,适应度函数分别是:
方案的核心是如何采用多目标粒子群算法对链路花费和负载均衡两个目标,具体实现如图1所示,步骤如下。
1.对粒子种群的相关参数进行初始化设置;
2.将种群中的各个粒子当前的位置代入适应度函数中,计算出各粒子适应度值;
3.初始化种群各个粒子的初始速度和位置,并把相关参数保存下来;
4.根据Pareto支配关系的定义要求,把较优解保存在非支配集中;
5.从非支配集中选取百分之十的粒子作为全局最优值的待选解,最终选出全局最优解;
6.更新粒子的速度和位置:把粒子当前的速度和位置代入到相应的速度位置更新公式中,然后计算出粒子下一时刻的速度和位置;
7.计算粒子新的适应度;
8.更新个体极值及全局极值;
9.更新外部集;
10.按公式进行迭代,根据终止条件进行判断,如果达到终止条件的要求,就停止迭代,输出最优权值,如果没有达到终止条件的要求,则继续迭代,直到满足要求为止;
11.根据最优权值计算最短路径。
2多目标粒子群算法主要算子
1)速度更新算子公式:
本发明中粒子的速度更新公式针对单目标粒子群的速度更新公式进行优化,增加了扰动速度项。
式(6)中,w(t)是惯性权重,惯性权重是保持原来速度的参数;c1,c2为学习因子,分别是粒子追踪自己过去的最优值的权重系数和粒子追踪群体最优值的权重系数,c1,c2的值都设成2;r1,r2是均匀分布在[0,1]区间内的随机数;Pbest是一个粒子当前的最优位置,也称个体最优位置;Gbest是种群中所有粒子当前达到的最佳位置,也称全局最优位置;a,b是随机数,取值在(0.0001,0.001)区间内,t,Tmax分别是当前迭代次数和算法最大迭代次数。
速度更新公式可以分成四个部分,第一部分为“惯性”部分,是粒子对上一次运动速度的延续值,是粒子的运动“习惯”;第二部分是粒子的“认知”部分,是粒子对自身历史经验的学习或回忆,是一个经验积累的参数,粒子会向自身历史最佳的位置靠近的趋势,是个体认知;第三部分是粒子“社会”学习部分,粒子向种群中所有粒子学习,反映了粒子间协同合作与信息共享的群体历史经验,属于全局认知;前三个部分是标准粒子群算法的速度更新公式,第四部分是本发明在标准粒子群算法的速度更新公式上添加一个扰动速度。在算法初期,粒子的速度比较大,添加的干扰项相较速度更新公式的前三个部分而言可以忽略,算法快速寻优;在算法迭代的后期,粒子速度快速收敛,此时粒子的速度主要由干扰速度决定,干扰速度可以使得粒子在算法迭代后期仍有一个小速度,这就保证了迭代后期粒子不会停止搜索而使算法陷入局部最优。
(2)惯性权重参数的设置
惯性权重的大小其实是表征粒子搜索范围大小的能力,惯性权重比较大则粒子具有比较大的搜索范围,相反惯性权重比较小则搜索的范围会比较小。在算法迭代初期,需要粒子能够进行大范围的搜索,所以在算法开始时需要有一个比较大的惯性权重;而在算法后期需要粒子在一个比较小的范围内进行精确搜索,所以算法后期的惯性权重要求要小一点。
根据这些要求,初步认定把惯性权重设置为一个负指数的函数,也就单调递减的函数,本发明提出的惯性权重。具体公式如下:
w(t)是惯性权重,t表示当前算法的迭代次数,Tmax表示算法的最大迭代次数,惯性权重的这样设置可以满足粒子初期有一个较大的速度,可以实现快速寻找到较优的粒子所在的区域,缩小搜索范围,随着粒子不断迭代,惯性权重会不断减小,可以实现后期精确寻优的目标。
3)位置更新公式:
Xi(t+1)=Xi(t)+Vi(t+1) (8)
4)边界位置的处理
对粒子的速度和位置进行更新之后,粒子就能在D维空间中进行搜素。但是仍然会出现一个问题,就是粒子可能会超出空间,这样就会得到不符合要求的结果,而且这种现象是很可能并且经常出现的,所有需要对边界进行处理。处理办法是把超出边界的粒子拉回搜索区域中,这就需要给超出搜索区域的粒子一个速度,让粒子改变飞行方向,同时降低粒子的飞行速度,并返回搜索区域继续搜索。具体边界位置处理公式如下:
其中,[xmin,j,xmax,j]是粒子在第j维的取值范围,xmin,j对应第j维的最小边界,xmax,j对应第j维的最大边界。
5)外部集
外部集设置可以在算法迭代过程中找到并保存ε支配解,使算法可以保持较好的分布性并且可以更快的找到最优解。全局极值可以直接从外部集的粒子中挑选,减少算法找到最优解的时间。外部集最终留下的粒子就是算法求解的结果。
具体的外部集归档的办法以及步骤是:根据支配关系,分别把非支配集中的每个粒子与外部集中的粒子依次比较,然后把不被外部集任何粒子支配的粒子归入外部集。具体的过程为:
算法开始时,把外部集设置为空,第一个粒子无条件加入外部集中;
第二个粒子开始,即外部集不再为空时,每一个粒子都要和外部集中的所有粒子进行比较。任选非支配解中的一个粒子i,根据支配关系,把粒子i与外部集中的所有粒子逐个比较,如果i被外部集中的某个粒子支配,就不把i归入外部集中;如果粒子i不被外部集中所有粒子支配或者i支配外部集的某个粒子或者多个粒子,则把粒子i加入到外部集中,然后把外部集中被i支配的粒子进行标记,准备将它们从外部集中删除;
一直重复前面两个步骤,直到归档完毕,算法结束。
6)拥挤距离
为了维护外部集,使外部集能够承受非支配解,这就必须对外部集进行管理,对外部集的大小规模进行设置和修剪,即采用从大到小的排序方式,对拥挤情况进行排序,把超出外部集的多余粒子删除掉,直到达到外部集所能承受的范围之内。假设外部集最大的承受量是W,那么随着算法不断的迭代,外部集的存储量会超过W,甚至会大于外部集的最大承受范围,为了可以把较好的粒子保存下来,就需要对外部集进行修剪,通过删除密度比较高的粒子,保留分散的粒子,避免粒子分布只局限在一个小范围内,这样就能把比较好的粒子保存下来。
应用实例
发明实例中,通过仿真将本发明算法与SPF、WSP、SWP、MIRA这4种常用算法从网络链路花费、网络负载均衡和网络最大链路利用率3个方面进行对比。
最短路径优先算法(SPF)
最短路径优先(SPF)是基于链路状态的路由协议,它的最短路径计算方法是Dijkstra算法。基本思路是根据拓扑信息构建最短路径生成树,然后将路由信息作为树上的叶子生成最终路由。
假设G=(V,E)是一个带有权值的有向图,V表示有向图的顶点集合,E表示有向图的边集合。把集合V分成两个集合,第一个集合是:已经求出最短路径的对应路径的顶点集合(用O表示,初始时O中只有一个点,也即为源点,之后每求得一条最短路径,就将他对应的顶点加入到集合O中,算法一直迭代,直到顶点全都加入到集合O中,算法就结束),第二个集合是除了集合O余下的未确定最短路径所对应的顶点集合(用D表示),按最短路径长度的升序逐个把第二个集合中的顶点加入O集合中。在添加的时候,一直维持从源点V到O集合中各顶点的最短路径长度小于等于从源点V到D集合中任何顶点的最短的路径长度。此外,每个顶点都会对应的一个距离,集合O中顶点的距离就是从V到此顶点的最短的路径长度,D集合中顶点的距离,是从V到该顶点并且只包括集合中间顶点是O集合中的顶点的当前最短的路径长度。
最小干扰路由(MIRA)算法
最小干扰路由(MIRA)算法是基于网络负载信息,连接请求带宽需求以及后续可能产生的连接请求对应的入口处节点对的位置信息,以当前这次路由对之后的路由连接请求干扰最小作为优化目标来设计算法,从而达到减少了网络连接的拒绝率,提高网络吞吐量,使得资源得到合理的分配,提高资源的利用率。
最短最宽路径(SWP)算法和最宽最短(WSP)算法
最短最宽路径(SWP)算法、最宽最短路径(WSP)算法基于网络负载信息,以本次路由使用网络负载均衡为优化目标计算路径,提高网络资源利用率。
图2显示了使用SPF、WSP、SWP、MIRA和本发明提出的算法的网络链路花费。链路花费表示链路对网络的资源的消耗,较少的链路花费有利于提高链路的利用率,减少对网络的资源的消耗。从图中可以看出MIRA算法的网络链路花费最大,也就是说在同样的请求包的次数的情况下,MIRA的网络链路花费更高,MIRA只考虑关键的链接,因此它可能导致选择许多非关键的链接,从而增加路径长度和消耗网络链接资源;其次是SPF算法,在请求包的次数小于等于两百的时候,SPF算法的网络链路花费差不多,当请求包的次数增加时,SPF算法优于MIRA算法,但是SPF总是选择最小跳数路径,而不考虑网络带宽的因素。所以随着请求包的次数增加,SPF肯定会迅速的消耗资源,相应的网络的链路花费也会更多;WSP比SPF更好,因为它是SPF的提高。SWP和WSP在请求的次数比较低时,网络的链路花费是差不多的,但是当请求的次数增多时,SWP优于WSP;然而,本发明提出的算法在网络链路花费方面明显优于这几种传统的路由算法,说明用多目标粒子群算法优化的路由算法达到了优化网路链路花费的目标。
图3显示了使用SPF、WSP、SWP、MIRA和本发明提出的算法的网络负载平衡。链路负载均衡是对网络负载进行合理分配,实现节点负载的均衡化,避免出现某些链路负载过重而其他链路闲置的情况造成网络拥塞,影响网络服务质量。在发送请求包的次数小于200时,SPF、WSP、SWP、MIRA算法和提出的算法的网络负载平衡效果是差不多的,当发送请求包逐渐增加时,几种算法表现出了差异性。SPF算法的表现最差,其次分别是WSP和SWP算法。因为SPF、WSP和SWP算法都是采用单一最佳路径来路由包,忽略链路实时状态从而造成负载过大。但是WSP和SWP明显优于SPF,因为WSP和SWP都是基于网络负载信息,以优化网络负载平衡为目标而设计的路由算法。MIRA算法的负载平衡方面优于SWP、WSP、SPF算法。因为MIRA算法不仅是基于网络的负载信息来设计算法,而且还会考虑本次路由对后续路由的影响,而WSP和SWP算法的负载均衡能力是有限的,因为该算法仍然局限于最短路径上的路由。但是,由图3可以清晰的看到,提出的算法在网络负载平衡方面优于其他几种传统路由算法,特别是当发送请求包的次数增多的时候,提出的算法的优越性更加的明显。
图4显示了使用SPF、WSP、SWP、MIRA和本发明提出的算法的网络最大链路利用率。从图4中可以明显看出提出的算法的最大链路利用率远小于SWP、WSP、SPF和MIRA这几种传统算法,特别是当发送请求包的次数比较多的时候,提出的算法的网络最大链路利用率明显小于其他几种传统算法。最大链路利用率比较低说明网络中的流量分布均匀,负载均衡做的比较好,消耗的网络能量小,网络的链路花费比较小,也不容易造成网络阻塞。由图4中可以看出SPF算法表现最差,因为SPF算法目标就是选出一条最短路径,它的负载均衡比较差,这从图4中就可以看出来;WSP和SWP算法比SPF算法更好,因为它们是SPF的提高。当存在多条路径时,它们会倾向选择带宽比较大的路径,这样可以避免拥塞,而且可以做到负载均衡,这样可以降低最大链路利用率。然而,WSP和SWP的负载均衡能力是有限的,因为算法仍然局限于最短路径上的路由;MIRA比SPF、WSP和SWP算法的最大链路利用率要小,这从它们负载均衡的比较中也可以知道更进一步说明了本发明提出的算法明显改善了网络的负载均衡和网络的链路花费。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (7)
1.一种基于分段路由策略的软件定义网络路由方法,其特征在于,包括如下步骤:
步骤(1),列链路负载平衡公式和链路花费公式,如式(1)和(2)所示;
式(2)中,cos t(p)表示链路花费;
步骤(2),根据链路负载平衡公式和链路花费公式确定适应度函数,适应度函数如式(4)和(5)所示;
其中,fitness1为定义的适应度函数1,fitness2为适应度函数2;
步骤(3),根据步骤(2)的适应度函数,利用多目标粒子群优化算法,同时优化链路花费和链路负载均衡两个目标,得到Pareto最优解集,之后从所述Pareto最优解集中选择链路最优权值,根据最优权值计算最短路径;
步骤(3)具体包括如下步骤:
步骤(a),设置多目标粒子群优化算法初始化的相关参数,外部集设置为空,给定粒子种群,随机生成初始粒子的速度与位置,产生初始群体,计算得到初始群体中各粒子适应度函数值,并依据Pareto主导准则将初始种群中所有粒子相互比较完成后得到初始群体中Pareto较优解,并将较优解保存在非支配集中;
步骤(b),将每个粒子的个体最优极值设置为对应粒子的当前位置;更新外部集,将种群中所有的非支配集加入外部集,删除被支配的粒子;
步骤(c),从非支配集中随机选取百分之十的粒子作为全局最优值的待选解,再从待选解中随意选取一个粒子作为全局最优值;
步骤(d),更新粒子的速度和位置:把粒子当前的速度和位置代入到相应的速度位置更新公式中,然后计算出粒子下一时刻的速度和位置;
步骤(e),根据步骤(d)的计算结果,计算每个粒子的新的适应度函数值;
步骤(f),根据步骤(e)所得新的适应度函数值,更新粒子的个体极值及全局极值,并更新外部集;
步骤(h),之后继续进行迭代,根据终止条件进行判断,如果达到终止条件的要求,就停止迭代,得到Pareto最优解集,并输出最优权值,如果没有达到终止条件的要求,则继续迭代,直到满足要求为止;
所述的终止条件为达到了设定的最大迭代次数,或是已经得到了满足要求的最优解集;
步骤(i),根据最优权值计算最短路径。
3.根据权利要求1所述的基于分段路由策略的软件定义网络路由方法,其特征在于,多目标粒子群优化算法中,粒子速度和位置更新的规则如下:
Xi(t+1)=Xi(t)+Vi(t+1) (8)
其中,Vi(t+1)为第i个粒子第t+1次迭代时的速度,Vi(t)为第i个粒子第t次迭代时的速度;Xi(t+1)为第i个粒子第t+1次迭代时的位置,Xi(t)为第i个粒子第t次迭代时的位置;t表示迭代次数;w(t)是惯性权重;c1,c2为学习因子,分别是粒子追踪自己过去的最优值的权重系数和粒子追踪群体最优值的权重系数,c1,c2的值都设成2;r1,r2是均匀分布在[0,1]区间内的随机数;Pbest是一个粒子当前的最优位置,也称个体最优位置、个体极值;Gbest是种群中所有粒子当前达到的最佳位置,也称全局最优位置、全局极值;a,b是随机数,取值在(0.0001,0.001)区间内,t,Tmax分别是当前迭代次数和算法最大迭代次数。
5.根据权利要求1所述的基于分段路由策略的软件定义网络路由方法,其特征在于,多目标粒子群优化算法中,外部集更新具体方法是:
算法开始时,把外部集设置为空,第一个粒子无条件加入外部集中;
第二个粒子开始,即外部集不再为空时,每一个粒子都要和外部集中的所有粒子进行比较;任选非支配解中的一个粒子i,根据支配关系,把粒子i与外部集中的所有粒子逐个比较,如果i被外部集中的某个粒子支配,就不把i归入外部集中;如果粒子i不被外部集中所有粒子支配或者粒子i支配外部集的某个粒子或者多个粒子,则把粒子i加入到外部集中,然后把外部集中被粒子i支配的粒子进行标记,准备将它们从外部集中删除;重复上述比较步骤直到更新完毕。
6.根据权利要求1所述的基于分段路由策略的软件定义网络路由方法,其特征在于,多目标粒子群优化算法中,假设外部集最大的承受量是W,当外部集的存储量大于W,则采用从大到小的排序方式,对粒子的拥挤情况进行排序,删除密度高的粒子,保留分散的粒子,至外部集的存储量不大于W。
7.根据权利要求1所述的基于分段路由策略的软件定义网络路由方法,其特征在于,多目标粒子群优化算法中,根据新的适应度函数值,更新粒子的个体极值具体方法为:
若第i个粒子第t+1迭代时的新的适应度函数值≥第i个粒子的个体极值在第t次迭代时的适应度函数值,则第i个粒子第t+1次迭代时的个体极值为第i个粒子第t+1次迭代时的位置;
若第i个粒子第t+1迭代时的新的适应度函数值小于第i个粒子的个体极值在第t次迭代时的适应度函数值,则第i个粒子第t+1次迭代时的个体极值为第i个粒子第t次迭代时的个体极值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910522910.9A CN110417652B (zh) | 2019-06-17 | 2019-06-17 | 一种基于分段路由策略的软件定义网络路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910522910.9A CN110417652B (zh) | 2019-06-17 | 2019-06-17 | 一种基于分段路由策略的软件定义网络路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417652A CN110417652A (zh) | 2019-11-05 |
CN110417652B true CN110417652B (zh) | 2021-07-16 |
Family
ID=68359232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910522910.9A Active CN110417652B (zh) | 2019-06-17 | 2019-06-17 | 一种基于分段路由策略的软件定义网络路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417652B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542115B (zh) * | 2020-04-22 | 2022-10-04 | 国家电网有限公司 | 基于sdn电力通信网络的数据路径确定方法、装置及系统 |
CN112260959A (zh) * | 2020-09-02 | 2021-01-22 | 中电积至(海南)信息技术有限公司 | 一种云数据中心sdn网络负载均衡实现的方法 |
CN112738049B (zh) * | 2020-12-23 | 2023-04-07 | 国网河北省电力有限公司电力科学研究院 | 一种扫描策略调整方法、装置、电子设备和存储介质 |
CN113472659B (zh) * | 2021-07-02 | 2023-04-18 | 中国电信股份有限公司 | 转发路径的确定方法、装置及sdn控制器 |
CN116720638B (zh) * | 2023-04-13 | 2024-03-26 | 广东工业大学 | 一种基于改进进化算法的逆最短路权重调整方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768536A (zh) * | 2012-07-20 | 2012-11-07 | 哈尔滨工程大学 | 一种基于多目标萤火虫算法的路径规划方法 |
CN103646278A (zh) * | 2013-11-14 | 2014-03-19 | 扬州西岐自动化科技有限公司 | 基于自适应策略的粒子群算法在机器人路径规划中的应用 |
CN106295880A (zh) * | 2016-08-10 | 2017-01-04 | 广东工业大学 | 一种电力系统多目标无功优化的方法及系统 |
CN108243428A (zh) * | 2016-12-27 | 2018-07-03 | 电子科技大学 | 基于混合多目标粒子群算法的无线传感网络中继节点部署算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150106323A1 (en) * | 2013-10-10 | 2015-04-16 | Abeeb Adebowale Awotunde | PSOAF System Parameter Estimator (PSOAF) |
-
2019
- 2019-06-17 CN CN201910522910.9A patent/CN110417652B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768536A (zh) * | 2012-07-20 | 2012-11-07 | 哈尔滨工程大学 | 一种基于多目标萤火虫算法的路径规划方法 |
CN103646278A (zh) * | 2013-11-14 | 2014-03-19 | 扬州西岐自动化科技有限公司 | 基于自适应策略的粒子群算法在机器人路径规划中的应用 |
CN106295880A (zh) * | 2016-08-10 | 2017-01-04 | 广东工业大学 | 一种电力系统多目标无功优化的方法及系统 |
CN108243428A (zh) * | 2016-12-27 | 2018-07-03 | 电子科技大学 | 基于混合多目标粒子群算法的无线传感网络中继节点部署算法 |
Non-Patent Citations (3)
Title |
---|
Maximizing Network Utilization for SDN Based on Particle Swarm Optimization;Xibo Yao; Hua Wang等;《 2016 IEEE 28th International Conference on Tools with Artificial Intelligence (ICTAI)》;20170116;全文 * |
基于改进的多目标粒子群在配电网重构中的应用;夏鹏;《信息记录材料》;20181231;全文 * |
基于改进的粒子群优化算法的 SDN 负载均衡研究;李瑞玲,易向阳;《研究与开发》;20171231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110417652A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110417652B (zh) | 一种基于分段路由策略的软件定义网络路由方法 | |
CN107094115B (zh) | 一种基于sdn的蚁群优化负载均衡路由算法 | |
CN108521375B (zh) | 一种基于SDN的网络多业务流量QoS的传输及调度方法 | |
CN108259367B (zh) | 一种基于软件定义网络的服务感知的流策略定制方法 | |
Shvedov et al. | Determining shortest paths between two arbitrary nodes in a composite transport network using segment routing | |
Ni et al. | Optimal and structured call admission control policies for resource-sharing systems | |
CN110461018B (zh) | 基于可计算ap的机会网络路由转发方法 | |
Kumar et al. | Using clustering approaches for response time aware job scheduling model for internet of things (IoT) | |
CN113315669B (zh) | 基于云边协同的吞吐量优化的机器学习推断任务部署方法 | |
Arkian et al. | FcVcA: A fuzzy clustering-based vehicular cloud architecture | |
CN110621052B (zh) | 一种多路径路由优化方法 | |
CN114567588B (zh) | 基于时延预测及双蚁群的软件定义网络Qos路由方法 | |
CN114727353A (zh) | 基于遗传算法的移动机会传感器网络自适应信息传输方法 | |
CN116170327A (zh) | 基于图神经网络和强化学习的分段路由网络增量部署方法 | |
Lu et al. | An SDN-based flow control mechanism for guaranteeing QoS and maximizing throughput | |
CN116405956A (zh) | 一种WiFi Mesh组网传播优化方法、系统及存储介质 | |
Prasad et al. | Energy efficient clustering in multi-hop wireless sensor networks using differential evolutionary MOPSO | |
CN113094857A (zh) | 一种节能的软件定义车辆网络的控制器布局方法 | |
WO2019183962A1 (zh) | 一种基于等长度和等密度切割的网络数据包分类的方法 | |
CN115809148B (zh) | 一种面向边缘计算的负载均衡任务调度方法及装置 | |
CN103841112A (zh) | 基于网包分类的分类规则处理方法及装置、匹配装置 | |
CN110881178A (zh) | 一种基于分支游走的物联网数据聚合方法 | |
Jlassi et al. | A Combination of K-means algorithm and optimal path selection method for lifetime extension in wireless sensor networks | |
Klymash et al. | A meta-heuristic data routing algorithm for networks with dynamically variable structure | |
CN113259263B (zh) | 一种深度报文检测集群中的数据包调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |