CN114124818B - 一种sdn网络中多播传输的新增功能节点部署优化方法 - Google Patents
一种sdn网络中多播传输的新增功能节点部署优化方法 Download PDFInfo
- Publication number
- CN114124818B CN114124818B CN202111334075.XA CN202111334075A CN114124818B CN 114124818 B CN114124818 B CN 114124818B CN 202111334075 A CN202111334075 A CN 202111334075A CN 114124818 B CN114124818 B CN 114124818B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- deployment
- network
- function
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000005540 biological transmission Effects 0.000 title claims abstract description 21
- 238000005457 optimization Methods 0.000 title claims abstract description 9
- 238000010586 diagram Methods 0.000 claims abstract description 35
- 230000002068 genetic effect Effects 0.000 claims abstract description 21
- 238000003672 processing method Methods 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 89
- 230000007704 transition Effects 0.000 claims description 45
- 238000012545 processing Methods 0.000 claims description 19
- 210000000349 chromosome Anatomy 0.000 claims description 15
- 230000008901 benefit Effects 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 4
- 125000003275 alpha amino acid group Chemical group 0.000 claims 1
- 230000009466 transformation Effects 0.000 abstract description 10
- 230000035772 mutation Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 108090000623 proteins and genes Proteins 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000005520 cutting process Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 206010028980 Neoplasm Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 201000011510 cancer Diseases 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000004808 supercritical fluid chromatography Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
Images
Classifications
-
- 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/16—Multipoint routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Genetics & Genomics (AREA)
- Physiology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明针对现有技术的局限性,提出了一种SDN网络中多播传输的新增功能节点部署优化方法,对于待处理SDN网络,根据其网络拓扑关系图,运用最小割处理方法获得功能节点候选集,然后,以一种启发式算法:基于遗传搜索的新增功能节点部署算法,在功能节点候选集的基础上,进行遗传编码,寻找出最佳的节点转变组合方案和服务器部署方案。通过节点转变组合方案和服务器部署方案,进行优化新增功能节点的部署,从而达到优化SDN网络中多播传输的目的。
Description
技术领域
本发明涉及SDN/NFV技术领域,具体涉及一种通过在网络拓扑关系图中优化新增功能节点的部署,从而优化SDN网络中多播传输的方法。
背景技术
网络功能虚拟化(Network Function Virtualization,NFV)技术的出现,将传统的基于专用硬件的网络功能转移到可以在商用硬件上运行的虚拟机(VM),从而减少了网络服务提供商的运营成本和资本支出。基于服务功能的要求,每个用户请求都要求其流量在达到目的地之前经过一系列功能节点,称为服务功能链(SFC,Service Function Chain)。在SDN/NFV网络中包含两类物理节点,一类是交换节点,一类是功能节点。其中,交换节点主要根据软件定义网络(Software Defined Network,SDN)的控制信号负责节点间的数据传输;功能节点不仅负责节点间的数据传输,还具有部署虚拟网络功能(Virtual NetworkFunction,VNF)处理网络流和数据包的功能。
公告日为2020.03.17的中国申请专利:一种路径计算方法、装置及计算机可读存储介质,其同样旨在通过找到合适的路由路径从而降低业务开发的复杂度和开发成本。由于SDN网络中新增功能节点与VNF的部署有直接关系,直接影响服务多播请求rk的服务功能链(SFC)路径选择,而不同路径的SFC会直接影响多播请求rk的实现成本。在某些SDN网络中实现多播传输的请求成本过高,因此仍有一定的局限性。
发明内容
针对现有技术的局限,本发明提出一种SDN网络中多播传输的新增功能节点部署优化方法,本发明采用的技术方案是:
一种SDN网络中多播传输的新增功能节点部署优化方法,包括以下步骤:
S1,获取待处理SDN网络的网络拓扑关系图以及多播请求集合,所述多播请求集合包括待处理SDN网络的多播请求;
S2,根据所述网络拓扑关系图,运用最小割处理方法,获得用于为部署功能节点提供参考的功能节点候选集;
S3,以最小化实现多播请求的成本作为目标函数,根据所述功能节点候选集,运用基于遗传搜索的新增功能节点部署算法,获得效益最优的新增功能节点部署方案。
相较于现有技术,本发明对于待处理SDN网络,根据其网络拓扑关系图,运用最小割处理方法获得功能节点候选集,然后,以一种启发式算法:基于遗传搜索的新增功能节点部署算法,在功能节点候选集的基础上,进行遗传编码,寻找出最佳的节点转变组合方案和服务器部署方案。通过节点转变组合方案和服务器部署方案,进行优化新增功能节点的部署,从而达到优化SDN网络中多播传输的目的。
作为一种优选方案,所述步骤S2包括以下步骤:
S21,计算所述网络拓扑关系图中各节点的流经流量及邻接边数;
S22,根据所述流经流量由大到小的顺序对各节点进行排序,将前若干个节点作为节点集合Vflow;
S23,根据所述邻接边数对所述节点集合Vflow进行最小割处理,获得用于为部署功能节点提供参考的功能节点候选集。
进一步的,在所述步骤S23中,通过以下公式获得功能节点候选集VSH:
VSH=VSH∪{p*};
其中,MC(G)表示所述网络拓扑关系图G中各边的集合,MC(G\(VSH∪{p}))表示所述网络拓扑关系图G去掉(VSH∪{p})所包含节点后剩余边的集合。
作为一种优选方案,所述目标函数按以下公式表示:
wu,v∈Z,u∈V,v∈V (5)
在式(1)中,VM,rk表示用于在多播请求rk的SCk中实现虚拟网络功能的一组功能节点集;SCk表示将多播请求rk的流量从源节点转发到目的节点所需要经过的服务功能链;Tk表示获得的实现多播请求rk的多播树,用于路由rk的数据流量;式(2)表示各虚拟网络功能部署在不同的功能节点时,所需要的成本代价不一样;式(3)表示对功能节点部署能力的约束;式(4)表示一条边上的总流量不能超过其容量,即容量约束;式(5)表示权重是整数,并且链路上的流量必须是非负的。
更进一步的,所述基于遗传搜索的新增功能节点部署算法通过以下方式实现:对以节点转变组合方案、节点转变组合方案处理多播请求的实现成本以及服务器部署方案为属性的染色体的种群迭代进行染色体排序、父代选择、交叉变异以及更新后代;在最后一次迭代中,对获得的最优染色体进行handle处理,获得效益最优的新增功能节点部署方案。
更进一步的,所述基于遗传搜索的新增功能节点部署算法中,通过以下方式计算获得处理多播请求rk的实现成本:计算执行SCk所需的服务器的所有可能排列,并把排列对应的节点有向连接起来,生成功能节点间有向网络图,所述功能节点间有向网络图中节点间的边的权值等价于所述网络拓扑关系图中的对应节点间的最短路径;把源节点加入所述功能节点间有向网络图,并把源节点与所述功能节点间有向网络图的第一列节点相连接,连接边的权值等价于所述网络拓扑关系图中中的对应节点间的最短路径;从源节点到所述功能节点间有向网络图中最后一列上的节点,使用最短路径算法找出一条实现SCk所需的路径,同时按执行顺序记录该路径上的所有服务器与节点编号的映射关系,并把这种关系保存在服务器部署方案中;从最后一个部署虚拟网络功能的节点vlast_f开始,寻找一棵斯坦纳树覆盖节点vlast_f和所有目的节点,找出处理多播请求rk的最小实现成本的方案,返回实现成本以及节点转变组合方案对应的服务器部署方案。
附图说明
图1为本发明实施例提供的SDN网络中多播传输的新增功能节点部署优化方法的步骤示意图;
图2为本发明实施例步骤S2的步骤示意图;
图3为本发明实施例中SDN网络中多播传输的新增功能节点图示例;
图4为本发明实施例中功能节点间网络有向图示例;
附图说明:图3中A是源节点,B是功能节点,d1和d2是目的节点,其余节点C,D是普通交换节点,图3(a)中E是普通交换节点,图3(b)中E转变为功能节点。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
应当明确,所描述的实施例仅仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请实施例保护的范围。
在本申请实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请实施例。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。以下结合附图和实施例对本发明做进一步的阐述。
为了解决现有技术的局限性,本实施例提供了一种技术方案,下面结合附图和实施例对本发明的技术方案做进一步的说明。
请参考图1,一种SDN网络中多播传输的新增功能节点部署优化方法,包括以下步骤:
S1,获取待处理SDN网络的网络拓扑关系图以及多播请求集合,所述多播请求集合包括待处理SDN网络的多播请求;
S2,根据所述网络拓扑关系图,运用最小割处理方法,获得用于为部署功能节点提供参考的功能节点候选集;
S3,以最小化实现多播请求的成本作为目标函数,根据所述功能节点候选集,运用基于遗传搜索的新增功能节点部署算法,获得效益最优的新增功能节点部署方案。
相较于现有技术,本发明对于待处理SDN网络,根据其网络拓扑关系图,运用最小割处理方法获得功能节点候选集,然后,以一种启发式算法:基于遗传搜索的新增功能节点部署算法,在功能节点候选集的基础上,进行遗传编码,寻找出最佳的节点转变组合方案和服务器部署方案。通过节点转变组合方案和服务器部署方案,进行优化新增功能节点的部署,从而达到优化SDN网络中多播传输的目的。
具体的,新增功能节点部署(New function node deployment,NFND)问题的定义为将原网络中的交换节点转变为功能节点。该目标是在考虑经济效益的前提下,通过在网络中新增加部署一些功能节点,使启用NFV的多播请求rk,k=1,2,…,n实现成本最小化。新增功能节点部署相当于将某些普通交换节点转变为功能节点,需要在这些节点进行服务器部署,这会造成运营成本的增加。接下来将对功能节点如何新增部署进行具体描述。
首先对所有普通交换节点进行编号。假设有n个交换节点,用VS来表示交换结点集。然后用一个具有n个元素的数组表示:一种在普通交换节点部署服务器的节点转变方案,表示方式为:S=(bn,bn-1,…,b2,b1),其中bi为二进制数0或1,且有i=1,2,…,n。而,S的右边起第一位是编号为1的交换节点,以此类推,bn对应的是编号为n的交换节点。如果,bi=0,意味着在本实施例中,编号为i的交换节点没有转变为功能节点;否则,编号为i的交换节点转变为功能节点。用T=(tn,tn-1,…,t2,t1)表示:S的节点转变组合方案相应节点的服务器部署方案,当bi=0时,ti=0;否则ti为服务器编号,且服务器编号从2开始。例如,有n种服务器,则服务器群(SMn,SMn-1,…,SM2,SM1)对应的编号为(n+1,n,…,3,2)。
对于每个多播请求rk,k=1,2,…n,都会有种不同的转变方案S,其中:/>为了更好的评估在该多播请求rk下,哪个节点转变方案S的性能更优,本实施例将通过设置NFND问题的目标函数/>的方式进行评估。其中,目标函数/>表示实现启用NFV的多播请求rk所需要的成本代价。当目标函数/>越小时,针对该多播请求的节点转变方案越优,本实施例只取/>最小时的节点转变方案。但这只是一个满足该多播请求的转变方案,不一定适合其他的多播请求。因此,本实施例还要求出其他多播请求的节点转变方案,最后再综合处理所有的方案得出最终节点转变方案Sopt。接下来是在一个多播请求下,对NFND问题的目标函数/>所需变量进行定义和分析。
给定一个无向的网络拓扑图G=(V,E),其中,V表示图中所有顶点集,且有V=VM∪VS,VM代表带有服务器的功能节点,VS代表普通交换节点。E表示图中边集合。用一个由4部分组成的变量rk=(sk,Dk;bk,SCk)来表示一个启用NFV的多播请求,其中有:sk∈V表示源节点,Dk∈V表示请求rk的目的节点集,bk表示请求rk的数据流量大小,SCk表示将请求rk的流量从源节点转发到目的节点所需要经过的服务功能链,该链由VNFs组成。
对于任意一个节点v∈VM,用c(v)表示在节点v上计算资源的使用成本。用cap(v)表示节点v的VNF部署容量,可以通过其拥有的资源(例如CPU、内存和IO)来衡量。另外,作为在节点v∈VM上部署功能fi所需要的成本代价。二进制变量/>表示是否在功能节点v上部署新的VNF实例fi。
wu,v∈Z,u∈V,v∈V (5)
在式(1)中,VM,rk表示用于在多播请求rk的SCk中实现虚拟网络功能的一组功能节点集;SCk表示将多播请求rk的流量从源节点转发到目的节点所需要经过的服务功能链;Tk表示获得的实现多播请求rk的多播树,用于路由rk的数据流量;式(2)表示各虚拟网络功能部署在不同的功能节点时,所需要的成本代价不一样;式(3)表示对功能节点部署能力的约束;式(4)表示一条边上的总流量不能超过其容量,即容量约束;式(5)表示权重是整数,并且链路上的流量必须是非负的。
本实施例会先对n个普通交换节点进行预处理,即判断哪些节点更有可能转变为功能节点。在步骤S3基于遗传搜索的新增功能节点部署算法执行过程中,如果没有这一步预处理操作,则节点转变组合有2n种可能,计算量很大。但是,经过对交换节点预处理后,挑选出可能性较大的节点,然后,在基因编码的时候,将这些节点编号对应的值设置为1,其余节点编号对应的值随机0或1组合。理论上来说,这样的转变组合方案的适应度函数会更高,也减少了寻找优越基因的次数,能更快地找到最优转变组合方案。预处理的目标即为SDN网络选择出满足需求的、适合部署的功能节点候选集;当SDN网络需要重新部署或新增功能节点时,即可根据本实施例提供的优化SDN网络中多播传输的新增功能节点部署方法挑选出符合预期目标的功能节点候选集。
作为一种优选方案,请参阅图2,所述步骤S2包括以下步骤:
S21,计算所述网络拓扑关系图中各节点的流经流量及邻接边数;
S22,根据所述流经流量由大到小的顺序对各节点进行排序,将前若干个节点作为节点集合Vflow;
S23,根据所述邻接边数对所述节点集合Vflow进行最小割处理,获得用于为部署功能节点提供参考的功能节点候选集。
上述步骤既可以针对未部署功能节点的SDN网络,也可以用于已部署功能节点的SDN网络。根据网络拓扑关系图计算所述网络拓扑关系图中各节点的流经流量及邻接的边数,再通过流经流量排序以及最小割处理获得功能节点候选集,从而能够选择出满足需求的、适合部署的候选功能节点,提升SDN网络效益。
具体的,在本实施例中,上述步骤的目标即为步骤S3基于遗传搜索的新增功能节点部署算法初始化种群时,选择出可能满足需求的、适合部署的功能节点候选集,减少需要考虑的个体基因种类。
所述网络拓扑关系图一般包含各个节点的特征:如邻接边数量、边长、在节点部署服务器的成本等。
一般而言,流经流量多和邻接边较多的节点,都在这个网络中扮演着数据转发、联络中枢的角色;本实施例提供的SDN网络中多播传输的新增功能节点部署优化方法实际上就是在设法将这些节点挖掘出来作为候选功能节点。当SDN网络需要重新部署或新增功能节点时,即可参考所述功能节点候选集进行选择,从而能够在一定程度上减少需要部署的功能节点数量,并保证所部署的功能节点可带来最佳系统效益。
因此,本实施例将筛选候选功能节点的问题转化为查找k个节点的问题,以便在删除这些节点之后,将显著减少网络G中的最小割,换言之,要在移除这些节点后的最小割的减少最大化;在一种可选的实施例中,相对于需要预部署功能节点的数量n,n<k<2n。
因此,本实施例首先根据流经各节点的流量大小,挑选出前O(k)个流量大的的节点作为节点集合Vflow,O(k)=k+δ,0<δ<k;再从节点集合Vflow中计算出最小割减少最大化的节点。
进一步的,在所述步骤S23中,通过以下公式获得功能节点候选集VSH:
VSH=VSH∪{p*};
其中,MC(G)表示所述网络拓扑关系图G中各边的集合,MC(G\(VSH∪{p}))表示所述网络拓扑关系图G去掉(VSH∪{p})所包含节点后剩余边的集合。
通过上述公式,即可对节点集合Vflow中的节点进行遍历,得到k个候选节点。
具体示例,请参阅图2,图2为网络拓扑关系图示例,假设需要在图中将1个普通交换节点转变为功能节点:
由图中可知,从源节点A向目的节点{d1、d2}发出两个请求;假设每个流量所占带宽是一样的,结合流经节点的流量计算:在单位时间内,流经节点C、D、E的流量个数分别是1、1、2。因此,根据流量大小可以得到节点集合Vflow={C、D、E};
然后,再对上述节点集合Vflow进行最小割处理:显然,节点C、D和E的邻接边是较多的,分别为2条、2条和4条;所以,在去掉E这个节点后,图中最小割的减少是最大化的;因此,节点E可以作为候选功能节点考虑对象。因此,对图3(a)执行一遍准备工作中相关操作,即可以得到用于初始化种群提供参考的功能节点候选集{E}。
更具体的,遗传算法是受到自然进化而启发的技术,优胜劣汰,基因通过继承、变异、选择和交叉方式,让优良的基因传承下去,更适应大自然的生存,可以用于解决优化问题。
更进一步的,所述基于遗传搜索的新增功能节点部署算法通过以下方式实现:对以节点转变组合方案、节点转变组合方案处理多播请求的实现成本以及服务器部署方案为属性的染色体的种群迭代进行染色体排序、父代选择、交叉变异以及更新后代;在最后一次迭代中,对获得的最优染色体进行handle处理,获得效益最优的新增功能节点部署方案。
接下来将详细展示所述基于遗传搜索的新增功能节点部署算法:
Nran表示最大随机解决方案的数目,Nite表示最大迭代次数,且两者都是常数,取值一般为n~2n之间。由于处理每个多播请求r所需的VNFs有差异,而不同的VNFs所能部署的服务器也会有差异。这种特性导致了需要进行多个不同的多播请求处理,最终才能确定最优的节点转变组合方案。设有多播请求其中/>是所有多播请求的集合。
初始化种群:首先,根据候选功能节点,先初始化一些个体,在这些个体染色体中,这些候选功能节点编号对应的二进制值为1,其余节点编号对应的二进制值进行0或1随机变化。然后,为了防止陷入局部最优解,再额外随机生成一些由n个节点转变组合成的数组来初始化种群,丰富了种群。用chroms[i]表示个体i,即一种转变组合方案,且有|chroms[i]|=n。例如,4个交换节点的随机转变组合可以是[1,0,0,1],表示将1号和4号普通交换节点转变为功能节点。给定转变组合,可以通过Compute_achi_cost算法计算每种转变组合方案的处理多播请求成本,从而获得的值,并返回节点转变组合方案对应的服务器部署方案T[i](第7行)。每条染色体有三个属性,chroms.c表示转变组合,/>表示每个chroms.c对应的/>的值,chroms.t表示每个服务器部署方案。接着根据初始化的种群进行迭代,繁殖后代,过程包括:
染色体排序(个体排序):本实施例利用堆排序方法对染色体的值进行递增排序。根据它的/>值,本实施例将转变组合解决方案分为三类:高级、中级和低级(第12行)。根据遗传算法经验,我们选择三个级别的比例分别为总人口的10%、80%、10%。
父代选择:本实施例从高级(high_chroms)中选择一个父代,从中级(mid_chroms)中选择另一个父代。本实施例选择的父代的数量规模与中级的数量规模相同。紧接着,开始交叉和变异。
交叉和变异:本实施例交叉两个父代以生成新的转变组合解决方案,并根据预设的概率对新的解决方案进行变异。
·本实施例交叉的方法选用部分匹配交叉。即:chl1从par1的节点转变组合中,继承数组chroms[par1]的中间部分(长度为,剩余没有被继承的部分前后对称),然后继承par2中对应位置的前后部分(par2的前中后划分方式与par1相同);而chl2则继承par1的前后部分和par2的中间部分。例如,如果一条父代染色体的节点转变组合是[0,1,1,0],另一条亲本染色体的序列是[1,0,1,0],那么生成的染色体是[1,1,1,0]和[0,0,1,0]。
·在变异中,本实施例采用二进制编码,每一个个体的每一位(每个普通交换节点)都是离散化的,设每一位都有ρb的概率发生变异。因此每个个体不发生变异的概率等于这n个位都不发生变异的概率,其概率等于(1-ρb)n。根据一阶泰勒公式,当ρb足够小时,有(1-ρb)n≈1-n·ρb成立。在本方法中,设ρb=0.001,则有变异概率为0.001n。对于变异操作,本实施例采用的是倒序变异。对于给定个体编码,随机生成两位随机数k1和k2(1≤k1<k2≤n),将k1-k2之间共(k2+1-k1)位编码倒置顺序,完成变异。例如:对于个体[1,0,1,0,1,0,1],产生k1=2,k2=5,则变异后的个体编码为[1,0,0,1,0,1,1]。
更新后代:更新当前种群,将high_chroms放入下一代;然后,通过交叉和变异产生的新的解决方案被继承给下一代;最后,一些随机生成的个体(转变组合)也加入了下一代以逃避局部最优。本实施例利用新一代继续繁殖直到达到终止条件。
在最后一次迭代中,排序后的种群顶部的组合是我们正在寻找实现多播请求rk的最佳节点转变组合方案和服务器部署方案。但这种方案只适合请求rk,不一定适合其他多播请求,所以,还需要对其他多播请求进行与rk一样的操作处理。最后,对不同多播请求的总解决方案进行handle(S[],T[])处理得出效益最优的节点转变组合,handle(S[],T[])的处理步骤如下:
·由于数组S[]保存的每一个元素是针对每一个多播请求的最优转变组合,因此,可将数组S[]的每个元素都转换成二进制数,进行按位与运算,从而得知哪些交换节点是可以转换为功能节点且是公共的,并将结果保存在Sopt中;
·根据上一步得出的转变节点,可以知道转变节点的编号。由于S与T的每个元素是一一对应关系,即每个元素的位置就是原交换节点编号,所以通过节点编号可以在T中找出节点上部署的服务器类型;
·根据上一步得到的结果,在每个转变节点上筛选出部署次数最多的服务器类型,并将这种节点编号与服务器编号的映射关系保存在Topt中;
·返回Sopt和Topt的值,结合这两者,就可以知道新增部署功能节点的可靠解。
更进一步的,Compute_achi_cost算法用于计算多播请求rk的实现成本并通过该算法得知多播请求rk的流量所流经的功能节点顺序和每个功能节点上所部署的服务器类型。每个功能部署在不同的服务器上成本是不同的,在计算实现多播请求的成本时,本实施例用矩阵P来表示每个VNF部署在服务器上的资源消耗,列表示服务器,行表示VNFs。但是,在遗传算法的节点转变组合中,只是提及了在哪些交换节点部署服务器,使其成为功能节点,没有说明该功能节点上部署的是什么类型服务器,这样不方便计算/>。因此,Compute_achi_cost算法的提出,既可以解决/>的计算问题,又可以求出新增转变的功能节点上应该部署什么服务器。如图3(a)所示网络图已经存在功能结点B,有服务器SM1部署在B节点上。现在打算在普通交换节点E上部署服务器,使其转变为功能节点,部署在其上的服务器有三种可以选择:SM1、SM2、SM3。在这三种服务器上部署功能的资源消耗如公式(6)的矩阵P所示。
该矩阵P表示在服务器SM1上部署VNF功能f1,f2,f3的消费分别是1,4,3。同理,服务器SM2和SM3上部署的功能f1,f2,f3的消费分别是2,3,2和3,1,3。假设在一个启用NFV的多播请求rk中,流量从源节点出发,在抵达目的节点之前,都需要经过一系列的VNF处理,在这个例子中,服务功能链(SFC)的执行顺序是f1,f2,f3。为了研究在节点E上部署哪种服务器可以带来最佳效益,且将该研究更加清晰可视化,本实施例更改了图3(a)的拓扑关系,如图3(b)所示。更改策略如下:由于有三种服务器可以选择,我们将功能节点E虚拟化成三个功能节点:E′,E″,E″′,设与节点E相连接的节点集为VE,然后将E′,E″,E″′这三个节点分别与VE中的所有节点连接上边,更改完毕。当有多个交换节点转变为功能节点时,亦是如此更改网络拓扑图。接着,在更改后的拓扑图中,执行一遍Compute_achi_cost算法,即可计算出实现多播请求rk所需要的成本和求出转变节点应该部署什么服务器,在本例子中就是求出节点E上部署什么服务器。
具体Compute_achi_cost算法步骤如下:
步骤1:计算执行SCk所需的服务器的所有可能排列,并把排列对应的节点有向连接起来,边的权值等价于原网络拓扑图中的对应节点间的最短路径。特殊情况,舍弃节点相同但部署服务器不同的排列情况,比如:图3(b)中,E′,E″,E″′这三个节点互相组合的排列。且在图3(b)中成立的排列情况是:(B,B,B)、(B,E′,E′)、(B,E″,B)、(E″′,E″′,B)等组合,一共有22种组合。根据图3(b)可以构造执行SCk所需的功能节点间有向网络图,如图4所示。
步骤2:把源节点s加入功能节点间有向网络图,并把源节点s与该图的第一列节点相连接,连接边的权值等价于原网络拓扑图中的对应节点间的最短路径。针对图3(b),即将源节点A分别与B,E′,E″,E″′相连接,并用最短路径算法求出对应边的权值。
步骤3:从源节点到功能节点间有向网络图中最后一列上的节点,使用最短路径算法(比如迪杰斯特拉算法)找出一条实现SCk所需的路径,同时按执行顺序记录该路径上的所有服务器与节点编号的映射关系,并把这种关系保存在T[i]中。
步骤4:从最后一个部署VNF的节点vlast_f开始,寻找一棵Steiner tree覆盖vlast_f和所有目的节点。从而找出实现rk成本最小的方案,返回实现成本和节点转变组合方案对应的服务器部署方案T[]。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (4)
1.一种SDN网络中多播传输的新增功能节点部署优化方法,其特征在于,包括以下步骤:
S1,获取待处理SDN网络的网络拓扑关系图;
S2,根据所述网络拓扑关系图,运用最小割处理方法,获得用于为部署功能节点提供参考的功能节点候选集;
S3,以最小化实现多播请求的成本作为目标函数,根据所述功能节点候选集,运用基于遗传搜索的新增功能节点部署算法,获得效益最优的新增功能节点部署方案;
其中,新增功能节点部署(Newfunctionnodedeployment,NFND)问题的定义为将原网络中的交换节点转变为功能节点;目标是在考虑经济效益的前提下,通过在网络中新增加部署一些功能节点,使启用NFV的多播请求rk,k=1,2,…,n实现成本最小化;
首先对所有普通交换节点进行编号;假设有n个交换节点,用VS来表示交换结点集;然后用一个具有n个元素的数组表示:一种在普通交换节点部署服务器的节点转变方案,表示方式为:S=(bn,bn-1,…,b2,b1),其中bi为二进制数0或1,且有i=1,2,…,n;而S的右边起第一位是编号为1的交换节点,以此类推,bn对应的是编号为n的交换节点;如果bi=0,则编号为i的交换节点没有转变为功能节点;否则,编号为i的交换节点转变为功能节点;用T=(tn,tn-1,…,t2,t1)表示:S的节点转变组合方案相应节点的服务器部署方案,当bi=0时,ti=0;否则ti为服务器编号,且服务器编号从2开始;若有N种服务器,则服务器群(SMN,SMN-1,…,SM2,SM1)对应的编号为(N+1,N,…,3,2);
所述基于遗传搜索的新增功能节点部署算法通过以下方式实现:对以节点转变组合方案、节点转变组合方案处理多播请求的实现成本以及服务器部署方案为属性的染色体的种群迭代进行染色体排序、父代选择、交叉变异以及更新后代;在最后一次迭代中,对获得的最优染色体进行处理,获得效益最优的新增功能节点部署方案;
所述基于遗传搜索的新增功能节点部署算法中,通过以下方式计算获得处理多播请求的实现成本:计算执行/>所需的服务器的所有可能排列,并把排列对应的节点有向连接起来,生成功能节点间有向网络图;把源节点加入所述功能节点间有向网络图,并把源节点与所述功能节点间有向网络图的第一列节点相连接,从源节点到所述功能节点间有向网络图中最后一列上的节点,使用最短路径算法找出一条实现/>所需的路径,同时按执行顺序记录该路径上的所有服务器与节点编号的映射关系,并把这种关系保存在服务器部署方案中;从最后一个部署虚拟网络功能的节点/>开始,寻找一棵斯坦纳树覆盖节点/>和所有目的节点,找出处理多播请求/>的最小实现成本的方案,返回实现成本/>以及节点转变组合方案对应的服务器部署方案;SCk表示将请求rk的流量从源节点转发到目的节点所需要经过的服务功能链;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111334075.XA CN114124818B (zh) | 2021-11-11 | 2021-11-11 | 一种sdn网络中多播传输的新增功能节点部署优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111334075.XA CN114124818B (zh) | 2021-11-11 | 2021-11-11 | 一种sdn网络中多播传输的新增功能节点部署优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114124818A CN114124818A (zh) | 2022-03-01 |
CN114124818B true CN114124818B (zh) | 2023-07-04 |
Family
ID=80378482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111334075.XA Active CN114124818B (zh) | 2021-11-11 | 2021-11-11 | 一种sdn网络中多播传输的新增功能节点部署优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114124818B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115226044B (zh) * | 2022-07-15 | 2023-07-18 | 重庆邮电大学 | 一种nfv网络中的多播路由方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017107127A1 (en) * | 2015-12-24 | 2017-06-29 | Orange | Method and system for optimisation of virtual network functions under network function virtualisation environment |
WO2018000240A1 (en) * | 2016-06-29 | 2018-01-04 | Orange | Method and system for the optimisation of deployment of virtual network functions in a communications network that uses software defined networking |
CN108494685A (zh) * | 2018-06-05 | 2018-09-04 | 中国人民解放军国防科技大学 | 服务链在多播路由中的最优嵌入方法 |
CN111669291A (zh) * | 2020-06-03 | 2020-09-15 | 北京理工大学 | 基于深度强化学习的虚拟化网络服务功能链部署方法 |
CN111770070A (zh) * | 2020-06-22 | 2020-10-13 | 中国电子科技集团公司第五十四研究所 | 一种基于sdn的安全服务链聚合部署方法 |
CN112083933A (zh) * | 2020-08-27 | 2020-12-15 | 重庆大学 | 一种基于强化学习的服务功能链部署方法 |
CN113535381A (zh) * | 2021-06-08 | 2021-10-22 | 广西综合交通大数据研究院 | 基于改进遗传算法的服务功能链映射方法、装置及设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9628380B2 (en) * | 2015-03-06 | 2017-04-18 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for routing a network function chain |
CN108322333B (zh) * | 2017-12-28 | 2021-03-02 | 广东电网有限责任公司电力调度控制中心 | 一种基于遗传算法的虚拟网络功能的放置方法 |
CN108400940B (zh) * | 2018-02-27 | 2019-11-05 | 西南交通大学 | 一种基于分布估计算法的组播虚拟网络功能部署方法 |
EP3830693A1 (en) * | 2018-07-30 | 2021-06-09 | Telefonaktiebolaget LM Ericsson (publ) | Joint placement and chaining of virtual network functions for virtualized systems based on a scalable genetic algorithm |
CN110166304A (zh) * | 2019-05-31 | 2019-08-23 | 北京邮电大学 | 一种跨域sfc的编排方法、装置、电子设备及存储介质 |
CN111901170B (zh) * | 2020-07-29 | 2022-12-13 | 中国人民解放军空军工程大学 | 可靠性感知的服务功能链备份保护方法 |
-
2021
- 2021-11-11 CN CN202111334075.XA patent/CN114124818B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017107127A1 (en) * | 2015-12-24 | 2017-06-29 | Orange | Method and system for optimisation of virtual network functions under network function virtualisation environment |
WO2018000240A1 (en) * | 2016-06-29 | 2018-01-04 | Orange | Method and system for the optimisation of deployment of virtual network functions in a communications network that uses software defined networking |
CN108494685A (zh) * | 2018-06-05 | 2018-09-04 | 中国人民解放军国防科技大学 | 服务链在多播路由中的最优嵌入方法 |
CN111669291A (zh) * | 2020-06-03 | 2020-09-15 | 北京理工大学 | 基于深度强化学习的虚拟化网络服务功能链部署方法 |
CN111770070A (zh) * | 2020-06-22 | 2020-10-13 | 中国电子科技集团公司第五十四研究所 | 一种基于sdn的安全服务链聚合部署方法 |
CN112083933A (zh) * | 2020-08-27 | 2020-12-15 | 重庆大学 | 一种基于强化学习的服务功能链部署方法 |
CN113535381A (zh) * | 2021-06-08 | 2021-10-22 | 广西综合交通大数据研究院 | 基于改进遗传算法的服务功能链映射方法、装置及设备 |
Non-Patent Citations (5)
Title |
---|
《Dynamic VNF Placement to Manage User Traffic Flow in Software‑Defined Wireless Networks》;Tahira Mahboob,Young Rok Jung,Min Young Chung;《SpringerLink》;全文 * |
《Efficient NFV-Enabled Multicasting in SDNs》;Zichuan Xu,Weifa Liang,Meitian Huang,Mike Jia,Song Guo,Alex Galis;《IEEE Transactions on Communications》;第67卷(第3期);全文 * |
《SDN and NFV enabled service function multicast mechanisms over hybrid infrastructure》;Bo Yi,Xingwei Wang,Min Huang,Lianbo Ma;《SpringerLink》;全文 * |
《Two-Phase Virtual Network Function Selection and Chaining Algorithm Based on Deep Learning in SDN/NFV-Enabled Networks》;jianing pei,peilin hong,kaiping xue,defang li,david S.L Wei;《IEEE》;第38卷(第6期);全文 * |
Sai Qian Zhang ; Ali Tizghadam ; Byungchul Park ; Hadi Bannazadeh ; Alberto Leon-Garcia.《Joint NFV placement and routing for multicast service on SDN》.《IEEE》.2016,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN114124818A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105430707B (zh) | 一种基于遗传算法的无线传感网多目标优化路由方法 | |
Mao et al. | A tensor based deep learning technique for intelligent packet routing | |
Bhatele et al. | Identifying the culprits behind network congestion | |
Chitra et al. | A nondominated sorting genetic algorithm solution for shortest path routing problem in computer networks | |
Brameier et al. | Explicit control of diversity and effective variation distance in linear genetic programming | |
CN112585585A (zh) | 基于可扩展遗传算法的虚拟化系统的虚拟网络功能的联合放置和链接 | |
CN106610867B (zh) | 一种片上网络任务调度方法及装置 | |
CN114124818B (zh) | 一种sdn网络中多播传输的新增功能节点部署优化方法 | |
CN112633457A (zh) | 一种基于多目标水稻育种算法的高光谱图像波段选择方法 | |
CN113472671B (zh) | 组播路由的确定方法、装置和计算机可读存储介质 | |
CN110163255B (zh) | 一种基于密度峰值的数据流聚类方法及装置 | |
Nakamura | A ucb-like strategy of collaborative filtering | |
Ordóñez et al. | Genetic Approach for Optimizing Ensembles of Classifiers. | |
Choe et al. | Classification of edge-dependent labels of nodes in hypergraphs | |
US20080154809A1 (en) | Use and construction of categorical interactions using a rule gene in a predictive model | |
CN113033709A (zh) | 链路预测方法和装置 | |
JP2011091751A (ja) | マルチエージェントシステムを用いた候補トポロジ生成方法とトポロジ生成方法およびトポロジ生成システムならびにプログラム | |
CN112995032B (zh) | 一种基于受限最宽路径的段路由流量工程方法及装置 | |
Liu et al. | Real-time graph partition and embedding of large network | |
CN111178529B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
Punhani et al. | Optimal extra links placement in mesh interconnection network using improved environmental adaptation method | |
Sagawa et al. | Learning variable importance to guide recombination on many-objective optimization | |
CN106713165B (zh) | 网络编码环境下优化负载均衡的方法 | |
Joldos et al. | A parallel evolutionary approach to community detection in complex networks | |
Paiva et al. | Unsupervised strategies to network topology reconfiguration optimization with limited link addition |
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 |