CN111741069B - 基于sdn和nfv分层式数据中心资源优化方法和系统 - Google Patents
基于sdn和nfv分层式数据中心资源优化方法和系统 Download PDFInfo
- Publication number
- CN111741069B CN111741069B CN202010439162.0A CN202010439162A CN111741069B CN 111741069 B CN111741069 B CN 111741069B CN 202010439162 A CN202010439162 A CN 202010439162A CN 111741069 B CN111741069 B CN 111741069B
- Authority
- CN
- China
- Prior art keywords
- population
- service chain
- controller
- mapping
- control layer
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SDN和NFV分层式数据中心资源优化方法和系统,MANO控制器对客户端发起的请求编排生成对应的服务链,以源目节点相同为特征分组;对分组后的服务链过滤出带宽要求高出设定阈值的部分并标注最高优先级,对剩余的服务链按照其对时延要求的高低降序排列注明优先级;对于每组服务链计算出源节点到目的节点之间的前K条最短路径;MANO控制器根据前K条最短路径使用协同进化的多种群竞争遗传算法制定每条服务链的映射策略;MANO控制器将制定的映射策略下发给基本控制层的SDN控制器,SDN控制器将映射策略转换成适合交换机处理的流表并下发给交换机执行。本发明服务链端到端的时延小和网络资源利用率高。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种基于SDN和NFV分层式数据中心资源优化方法和系统。
背景技术
随着互联网和移动互连网局势的迅猛发展,诸多新兴网络技术和新型网络应用逐渐兴起,云计算,移动边缘计算,大数据,数据中心,软件定义网络和网络虚拟化等成为研究的热点。随着物联网时代的到来,网络体系结构的不断扩张,网络功能的不断更新,这对于网络服务功能的管理和数据中心资源分配的要求变得更加严格。目前大多数的数据中心网络是基于传统的网络架构建立的,这种架构由极其复杂的交换机、路由器、终端以及其他设备组成,这些网络设备使用着封闭、专有的内部接口,并运行着大量的分布式协议;其局限性在于无法对网络设备做到统一的管理,同时无法对数据中心中的网络资源进行统一的调度因而无法最大限度的提高资源的利用率。
SDN(软件定义网络)架构的核心设计是控制平面和转发平面分离,NFV(网络功能虚拟化)技术可以实现网络功能的虚拟化,将功能与硬件设备解耦,易于服务链的编排和管理。且现有的服务链端到端的时延较大。
数据中心资源优化分配问题是一个NP-Hard问题,即说明该问题一般是无法在多项式时间内进行求解。通常会采用启发式算法来寻求问题的最优解,常用的现代启发式算法主要有:模拟退火法(SA)、遗传算法(GA)、列表搜索算法(ST)、蚁群算法(ACA)、人工神经网络(ANN) 等。由于在分布式环境中,服务规模广并且涉及高动态的网络资源调度,如何协调的组织和优化服务实例供应以实现数据中心资源利用最大化同时减少服务链端到端的时延是亟需解决问题。现有的大部分算法不能够在分布式环境中表现出高效的并行计算能力,且一些算法容易出现陷入局部最优解而造成算法的过早收敛的问题。
发明内容
为了解决现有技术中的不足,本发明提出一种基于SDN和NFV分层式数据中心资源优化方法和系统,解决了现有数据中心资源利用率不高、并行计算效率不高、服务链端到端的时延较大的问题。
本发明所采用的技术方案为:一种基于SDN和NFV的分层式数据中心资源优化方法,其特征在于,包括以下步骤:
步骤1,主控制层的编排与管理控制器MANO对客户端发起的请求编排生成对应的服务链,对编排生成的服务链以源目节点相同为特征进行分组;
步骤2,对分组后的服务链都过滤出带宽要求高出设定阈值的部分并标注为最高优先级,对剩余的服务链按照其对时延要求的高低降序排列并注明优先级;
步骤3,对于每组服务链计算出源节点到目的节点之间的前K条最短路径;
步骤4,主控制层的MANO控制器根据前K条最短路径制定每条服务链的映射策略;
步骤5,MANO控制器将制定的映射策略下发给基本控制层的SDN控制器,SDN控制器将映射策略转换成适合交换机处理的流表并下发给交换机执行。
进一步的,主控制层的MANO控制器根据前K条最短路径制定每条服务链的映射策略,包括:
对分组中最高优先级的服务链优先映射到源目节点之间的最短路径上,剩余服务链的映射策略按照其优先级顺序采用协同进化的多种群竞争遗传算法CE-GA来制定,CE-GA算法采用生态多种群捕获竞争模型,从源目节点之间的较短的路径开始计算映射策略。
进一步的,所述生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群Ni的环境负荷量,ri表示种群Ni的个体的最大瞬时增长率,aij是竞争系数,hi为从种群Ni中捕获的个体数量或向种群Ni中加入的个体数量。
进一步的,CE-GA算法,包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模,每条染色体代表一种映射方案,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据生态多种群捕获竞争模型调整各个种群的规模,如果种群Ni的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群Ni的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
交叉重组:染色体之间两两以给定的第一概率Pc,0<Pc<1进行单点交叉;
变异:每条染色体以给定的第二概率Pm,0<Pm<1进行变异;
步骤4-5)计算适应度,若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
进一步的,采用的适应度函数为:
fit(x)=α(Φmax-Φchip)+β(lx-Dp),α+β=1 (2)
其中,α,β为权重系数,Φmax表示底层网络剩余资源的最大值,Φchip为构成资源碎片的节点的剩余节点资源之和;lx表示第x条服务链的时延要求,Dp表示从前K短路径中的所选的物理映射路径的链路时延。
进一步的,对排序后的每组服务链利用A*算法计算出源节点到目的节点之间的前K条最短路径;
对剩余的服务链按照其对时延要求的高低利用三路快速排序算法降序排列。
一种基于SDN和NFV的分层式数据中心资源优化系统,包括分布式协调框架ZooKeeper、主控制层和基本控制层;
分布式协调框架ZooKeeper,用于完成主控制层的MANO控制器状态同步;
主控制层包括若干个MANO控制器,其中包括一个推举出的主控制器和若干个从控制器;主控制器用于与基础控制层交互,其他从控制器作为辅助的控制器;主控制器与从控制器数据和状态一致;
基本控制层包括若干个SDN控制器,用于向主控制层更新交换机的资源信息和链路信息,以及向交换机分发映射策略对应的流表。
进一步的,每个MANO控制器包括:服务链编排管理模块、全局网络拓扑资源管理模块、服务链映射策略生成模块;
每个SDN控制器包括:交换机节点资源监测模块、拓扑链路管理模块和交换机流表下发模块;
服务链编排管理模块:接收用户发起的请求,将用户的请求编排为对应逻辑服务链,对服务链按具有相同的源端点和目的端点进行分组,对分组后的服务链都过滤出带宽要求高出设定阈值的部分并标注为最高优先级,对剩余的服务链按照其对时延要求的高低降序排列并注明优先级;
全局网络拓扑资源管理模块:用于接收来自基本控制层的交换机节点资源监测模块上报的各交换机节点的剩余可用资源和接收拓扑链路管理模块上报的底层网络拓扑信息以及网络中链路的剩余带宽,获得全局的网络拓扑资源信息,将全局的网络拓扑资源的信息发送给服务链映射策略生成模块;
服务链映射策略生成模块:用于根据接收的全局的网络拓扑资源信息以及各用户请求的服务链及其对应的优先级生成服务链映射策略;
交换机节点资源监测模块:用于收集与SDN控制器直接交互的交换机节点剩余资源信息,并上传给MANO控制器的全局网络拓扑资源管理模块;
拓扑链路管理模块:负责收集端到端的链路拓扑信息和网络中链路的剩余带宽信息,并上传给MANO控制器的全局网络拓扑资源管理模块;
交换机流表下发模块:接收来自主控制层MANO控制器中服务链映射生成模块的服务链映射策略,并通过流表的形式将策略下发给与自己直接交互的交换机。
进一步的,服务链映射策略为:对分组中最高优先级的服务链优先映射到源目节点之间的最短路径上,剩余服务链的映射策略按照其优先级顺序采用协同进化的多种群竞争遗传算法 CE-GA来制定,CE-GA算法采用生态多种群捕获竞争模型,从源目节点之间的较短的路径开始计算映射策略。
进一步的,所述生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群Ni的环境负荷量,ri表示种群Ni的个体的最大瞬时增长率,aij是竞争系数,hi为从种群Ni中捕获的个体数量或向种群Ni中加入的个体数量。
CE-GA算法,包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模,每条染色体代表一种映射方案,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据生态多种群捕获竞争模型调整各个种群的规模,如果种群Ni的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群Ni的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
交叉重组:染色体之间两两以给定的第一概率Pc,0<Pc<1进行单点交叉;
变异:每条染色体以给定的第二概率Pm,0<Pm<1进行变异;
步骤4-5)计算适应度,若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
本发明的有益效果:本发明采用控制中心分层的结构,若干的MANO控制器(Management And Orchestration编排与管理控制器)作为主层的控制中心,统一进行服务链的筛选和优先级的分配,每个MANO控制器中运行一个CE-GA的种群,通过多个MANO控制器并行运行 CE-GA算法来制定合理的服务链映射策略。基本的SDN控制器集群作为基本层的设备来直接和大规模交换机交互,可以避免大规模交换机与单个主控制器交互而造成拥塞,导致端到端服务链的时延增大,严重时会导致控制器宕机和数据中心网络瘫痪的问题,故可以提高通信的可靠性;
当主层控制中心收到客户端发起的服务请求,MANO控制器会根据请求生成对应的逻辑服务链,过滤出高带宽的请求并对该请求的逻辑服务链分配最高优先级,然后利用三路快速排序算法对剩余的请求按照时延要求进行排序并分配优先级,大规模服务链中包含许多时延要求基本相同的对服务链,三路快速排序算法针对这一特点能够比一般的排序算法速度更快,可以明显的减少服务链端到端的时延,同时也减少对控制器资源的占用时间。在服务链的映射策略生成阶段采用协同进化的多种群竞争遗传算法(CE-GA),该算法采用生态种群捕获竞争模型对简单的单种群遗传算法进行改进,解决了传统的单种群遗传算法存在计算效率低、容易出现早熟而收敛于局部最优解等缺陷。因此本发明方法数据中心资源利用率高、并行计算效率高、服务链端到端的时延较小。
附图说明
图1为本发明具体实施方式中的一种基于SDN和NFV融合的整体系统框架图;
图2为本发明具体实施方式中的一种系统组件的具体模块图;
图3为本发明具体实施方式中的一种数据中心资源优化方法流程图;
图4为本发明具体实施方式中的一种CE-GA算法流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例1:
如图3所示,一种基于SDN和NFV的分层式数据中心资源优化方法,包括步骤:
步骤1,采用控制中心分层的分布式架构,主控制层的MANO控制器(编排与管理控制器) 对客户端发起的请求编排生成对应的服务链,对编排生成的服务链以源目节点相同为特征进行分组,这样每组服务链属于同一种端到端的请求;
步骤2,对分组后的每组服务链过滤出带宽要求高出阈值δ的部分并标注为最高优先级,对剩余的服务链按照其对时延要求的高低利用三路快速排序算法降序排列并注明优先级;
步骤3,对排序后的每组服务链利用A*(A-Star)算法计算出源节点到目的节点之间的前 K条最短路径;
步骤4,根据前K条最短路径由主控制层的MANO控制器制定每条服务链的映射策略,具体为:对分组中最高优先级的服务链优先映射到源目节点之间的最短路径上,剩余服务链的映射策略按照其优先级顺序采用协同进化的多种群竞争遗传算法(CE-GA)来制定,CE-GA 算法采用生态多种群捕获竞争模型,生态多种群捕获竞争模型使用精英保留策略,首先选取源目节点之间的最短的路径开始计算映射策略即取k=1,若k满足1≤k≤K则算法运行,否则拒绝当前服务链。如果算法运行后不能在当前路径上制定出合理的映射策略,则令k=k+1切换到下一条次短路径再进行映射策略制定。
步骤5,如果步骤4成功制定映射策略,MANO控制器将制定的映射策略下发给基本控制层的SDN-C,SDN-C将映射策略转换成适合交换机处理的流表并下发给交换机执行。
协同进化的多种群竞争遗传算法(CE-GA,Co-evolution multi-populationgenetic algorithm) 是一种快速高效的迭代算法,其主要特点是直接对问题的结果进行寻优,无需涉及求导和函数连续性的约束;具有内在的隐并行性和更好的全局寻优能力;其运用概率化的搜索方式,不需要指定搜寻规则就可以自动获取和指导优化的搜索空间,自适应地改变搜索区间以提高搜索效率。
所述生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群Ni的环境负荷量,ri表示种群Ni的个体的最大瞬时增长率,aij是竞争系数,hi为从种群Ni中捕获的个体数量或向种群Ni中加入的个体数量。
CE-GA算法,包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模,每条染色体代表一种映射方案,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据生态多种群捕获竞争模型调整各个种群的规模,如果种群Ni的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群Ni的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
交叉重组:染色体之间两两以给定的第一概率Pc,0<Pc<1进行单点交叉;
变异:每条染色体以给定的第二概率Pm,0<Pm<1进行变异;
步骤4-5)计算适应度,若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
采用的适应度函数为:
fit(x)=α(Φmax-Φchip)+β(lx-Dp),α+β=1 (2)
其中,α,β为权重系数,Φmax表示底层网络剩余资源的最大值,Φchip为构成资源碎片的节点的剩余节点资源之和;lx表示第x条服务链的时延要求,Dp表示从前K短路径中的所选的物理映射路径的链路时延。
实施例2:
如图1所示,一种基于SDN和NFV的分层式数据中心资源优化系统,包括分布式协调框架ZooKeeper、主控制层和基本控制层;
主控制层包括若干个MANO控制器,该控制器运行时会采用选举算法来推举出一个主控制器(Leader),其他控制器为作从控制器(Follower)。每个MANO控制器中包括服务链编排管理模块、全局网络拓扑资源管理模块、服务链映射策略生成模块,每个MANO控制器可以独立管理基础控制层,正常情况下通过主控制器Leader与基础控制层交互,其他作为辅助的控制器,主控制器Leader通过ZooKeeper的Zab协议(ZooKeeper Atomic Broadcastprotocol) 与从控制器Follower保持数据和状态的一致性。ZooKeeper是一个分布式协调框架,其主要是用来完成主控制层的MANO控制器状态同步,以实现整个系统数据的一致性。这种分层不仅避免了主控制层的控制器直接与大规模的交换机交互而造成拥塞,还能保证即使主控制器出现故障其他控制器可以直接代替主控制器进行工作。
基本控制层包括若干个基本SDN控制器(SDN-C),在主控制层与大规模交换机之间起着承上启下的作用,对上向主控制层更新交换机的资源信息和链路信息,对下向交换机分发映射策略对应的流表。每个SDN控制器包括交换机节点资源监测模块、拓扑链路管理模块和交换机流表下发模块,每个控制器一般只和距离自己较近的部分交换机交互,而将其他交换机作为备用交互对象,同理交换机在正常情况下只向与自己直接交互的控制器更新信息。这种模式可以减少服务链端到端的时延,同时也能提高通信的可靠性。
如图2所示,对主控制层的MANO控制器与基础控制层的SDN控制器中的模块进行说明,首先说明主控制层的模块:
服务链编排管理模块:接收用户发起的请求,将用户的请求编排为对应逻辑服务链,每条服务链用表示,其中,Sx表示第x条服务链,表示第x条服务链的源端点,表示第x条服务链的目的端点,X表示总服务链数,F表示 VNF(虚拟网络功能)集合,M表示该集合中VNF的个数,表示第x条服务链的第m个 VNF。对服务链按具有相同的源端点和目的端点进行分组。记第x条服务链Sx的带宽需求为bx,给定带宽阈值δ,筛选出bx>δ的服务链并标记为最高优先级,剩余服务链以时延要求为标准采用三路快速排序算法进行排序,按照排序结果对服务链分配优先级,将各用户请求的服务链及其对应的优先级发送给服务链映射策略生成模块。由于大规模服务链中包含许多时延要求相同服务链。三路快速排序算法针对这一特点能够比一般的排序算法速度更快,算法的时间复杂度稳定在O(X log X),可以明显的减少服务链端到端的时延,同时也减少对控制器资源的占用时间。
全局网络拓扑资源管理模块:用于接收来自基本控制层的交换机节点资源监测模块上报的各交换机节点的剩余可用资源y∈Y,Y表示网络资源的集合,如计算资源,存储资源等,表示第y种剩余可用资源,该模块还接收拓扑链路管理模块上报的底层网络拓扑信息以及网络中链路的剩余带宽Be(e∈E),Be表示第e个无向边剩余带宽;由此获得全局的网络拓扑资源的信息,将全局的网络拓扑资源的信息发送给服务链映射策略生成模块。整个交换机物理节点组成的全局网络拓扑用加权无向图G(V,E)来表示,V表示网络中的节点集合,E表示节点之间的无向边集合。
服务链映射策略生成模块:用于根据接收的全局的网络拓扑资源信息以及各用户请求的服务链及其对应的优先级生成服务链映射策略。该模块通过CE-GA(协同进化的多种群竞争遗传算法)算法,采用基于协同进化的生态多种群捕获竞争模型和精英保留策略,根据适应度函数对剩余低于带宽阈值的服务链进行映射策略的制定;
具体方法为:每个MANO控制器的服务链映射策略生成模块上都运行一个该算法的种群,主控制器Leader上的种群定为精英种群,它们一起协同进化,每个模块都将算法迭代过程中适应度高的子代个体捕获并加入到Leader的精英种群中,最终由Leader生成每条服务链的映射策略,将策略分发给基本控制层的基本SDN控制器。
如图4所示,CE-GA算法的生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群Ni的环境负荷量,ri表示种群Ni的个体的最大瞬时增长率,aij是竞争系数,表示种群Nj的每个个体对种群Ni的抑制作用,hi为从种群Ni中捕获的个体数量(hi>0)或向种群Ni中加入的个体数量(hi<0),因为引入了捕获量hi,使协同得到了改善,也为遗传算法中进化策略的改进提供了模型上的支持。CE-GA算法会设置一个精英种群,将从其它种群捕获到的精英个体加入到精英种群,使优良个体为各种群所复用,这在改善未成熟收敛和提高收敛速度两方面有明显的改善。算法初始化时会选择主控制层的Leader控制器作为精英种群的进化环境,其他Follower 控制器作为非精英种群的进化环境。
通过CE-GA算法对服务链制定出能使系统资源碎片最小化和平均时延较低的映射策略, CE-GA算法包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模。每条染色体都代表一种映射方案,采用0-1编码,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据捕获竞争模型(1)调整各个种群的规模,即具体调整策略为:如果种群Ni的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群Ni的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体,从而减少该种群的规模;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
1、交叉重组:染色体之间两两以给定的第一概率Pc(0<Pc<1)进行单点交叉。
2、变异:每条染色体以给定的第二概率Pm(0<Pm<1)进行变异。
步骤4-5)计算适应度:本算法采用的适应度函数为:
fit(x)=α(Φmax-Φchip)+β(lx-Dp),α+β=1 (2)
其中α,β为权重系数,Φmax表示底层网络剩余资源的最大值,Φchip为构成资源碎片的节点的剩余节点资源之和,若某个节点的剩余资源已经不能再映射任何的VNF,则称该节点的剩余资源为资源碎片;lx表示第x条服务链的时延要求,Dp表示此时从前K短路径中的所选的物理映射路径的链路时延,整个网络节点资源的碎片越少,说明资源利用率越高,链路的时延越小说明服务功能链端到端的时延会变小。
若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
对于上述流程,需要作两点说明:其一是步骤4-2),该步骤体现了一种进化优化策略,它让精英种群中聚集了各种群中的精英个体,即保存了各种群进化过程中产生的好的模式,从而能加速算法的收敛速度;除此而外,捕获操作还能有效打破进化过程中协同的弱化退化趋势, 破坏系统的平衡,使协同得到加强。其二是步骤4-3),从该步骤可以看出,若第i个种群的密度增大,算法将随机产生个染色体加入该种群,这样有利于提高该种群的多样性,从而在一定程度上提高了染色的全局分布性,改善未成熟收敛;若第i个种群的密度减小,则淘汰掉适应度最小的个个体,这在一定程度上提高了该种群的总体适应度,因此,在下一轮的循环中,可能显示出较强的竞争实力。
再说明基础控制层的模块:
交换机节点资源监测模块:用于收集与基本SDN控制器直接交互的交换机节点vz,vz∈V的剩余资源信息y∈Y,并上传给MANO控制器的全局网络拓扑资源管理模块;表示交换机节点vz第y种资源的剩余量,Y表示网络资源的集合,如计算资源,存储资源等。
拓扑链路管理模块:负责收集端到端的链路拓扑信息和网络中链路的剩余带宽Be(e∈E)信息,并上传给MANO控制器的全局网络拓扑资源管理模块。
交换机流表下发模块:接收来自主控制层MANO控制器中服务链映射生成模块的服务链映射策略,并通过流表的形式将策略下发给与自己直接交互的交换机。
综上所述,本发明通过采用数据中心分层的结构,可以有效的优化负载均衡,同时避免单控制器的“单点故障”从而提高服务的可靠性。服务链的映射策略采用CE-GA算法,该算法用生态种群捕获竞争模型对简单的单种群遗传算法进行改进,可以优化服务链端到端的时延和提高网络资源利用率,同时解决了传统的单种群遗传算法存在计算效率低、容易出现早熟而收敛于局部最优解等缺陷。
本发明综合考虑了SDN技术控制平面和数据转发平面分离的优点和NFV技术可以实现网络设备的虚拟化,将功能与硬件设备解耦的特点,将二者融合在一起来实现数据中心资源的灵活调度。本发明在SDN的控制中心采用分层式结构,部署分布式控制器的方案。第一层为主控制层,主要由若干的MANO(Management And Orchestration)控制器,该控制器具有SDN 主控制器和VNF(Virtual Network Function)编排器的作用,负责管理整个网络的拓扑信息,路由决策以及生成服务链的编排映射策略,其中服务链的映射策略采用协同进化的多种群竞争遗传算法(CE-GA,Co-evolution multi-population geneticalgorithm),该算法用生态种群捕获竞争模型对简单的单种群遗传算法进行改进,解决了传统的单种群遗传算法存在计算效率低、容易出现早熟而收敛于局部最优解等缺陷。第二层为基本控制层由基础SDN控制器(SDN-C, SDNController)集群组成,负责接收来自主控制层的转发策略并将策略下发到交换机,还负责收集物理映射节点的资源信息并上报到主控制层。控制中心的分层式结构可以有效的减少服务功能链端到端的时延,同时避免单控制器的“单点故障”从而提高服务的可靠性,CE-GA算法可以优化负载均衡和提高网络资源利用率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质 (包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/ 或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (4)
1.一种基于SDN和NFV的分层式数据中心资源优化方法,其特征在于,包括以下步骤:
步骤1,主控制层的编排与管理控制器MANO对客户端发起的请求编排生成对应的服务链,对编排生成的服务链以源目节点相同为特征进行分组;
步骤2,对分组后的服务链都过滤出带宽要求高出设定阈值的部分并标注为最高优先级,对剩余的服务链按照其对时延要求的高低降序排列并注明优先级;
步骤3,对于每组服务链计算出源节点到目的节点之间的前K条最短路径;
步骤4,主控制层的MANO控制器根据前K条最短路径制定每条服务链的映射策略;
步骤5,MANO控制器将制定的映射策略下发给基本控制层的SDN控制器,SDN控制器将映射策略转换成适合交换机处理的流表并下发给交换机执行;
主控制层的MANO控制器根据前K条最短路径制定每条服务链的映射策略,包括:
对分组中最高优先级的服务链优先映射到源目节点之间的最短路径上,剩余服务链的映射策略按照其优先级顺序采用协同进化的多种群竞争遗传算法CE-GA来制定,CE-GA算法采用生态多种群捕获竞争模型,从源目节点之间的较短的路径开始计算映射策略;
所述生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群i的环境负荷量,ri表示种群i的个体的最大瞬时增长率,aij是种群i和种群j的竞争系数,hi为从种群i中捕获的个体数量或向种群i中加入的个体数量;
CE-GA算法,包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模,每条染色体代表一种映射方案,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据生态多种群捕获竞争模型调整各个种群的规模,如果种群i的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群i的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
交叉重组:染色体之间两两以给定的第一概率Pc,0<Pc<1进行单点交叉;
变异:每条染色体以给定的第二概率Pm,0<Pm<1进行变异;
步骤4-5)计算适应度,若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
2.根据权利要求1所述的基于SDN和NFV的分层式数据中心资源优化方法,其特征在于,采用的适应度函数为:
fit(x)=α(Φmax-Φchip)+β(lx-Dp),α+β=1(2)
其中,α,β为权重系数,Φmax表示底层网络剩余资源的最大值,Φchip为构成资源碎片的节点的剩余节点资源之和;lx表示第x条服务链的时延要求,Dp表示从前K条最短路径中的所选的物理映射路径的链路时延。
3.根据权利要求1所述的基于SDN和NFV的分层式数据中心资源优化方法,其特征在于,对排序后的每组服务链利用A-Star算法计算出源节点到目的节点之间的前K条最短路径;
对剩余的服务链按照其对时延要求的高低利用三路快速排序算法降序排列。
4.一种基于SDN和NFV的分层式数据中心资源优化系统,其特征在于,包括分布式协调框架ZooKeeper、主控制层和基本控制层;
分布式协调框架ZooKeeper,用于完成主控制层的MANO控制器状态同步;
主控制层包括若干个MANO控制器,其中包括一个推举出的主控制器和若干个从控制器;主控制器用于与基本控制层交互,其他从控制器作为辅助的控制器;主控制器与从控制器数据和状态一致;
基本控制层包括若干个SDN控制器,用于向主控制层更新交换机的资源信息和链路信息,以及向交换机分发映射策略对应的流表;
每个MANO控制器包括:服务链编排管理模块、全局网络拓扑资源管理模块、服务链映射策略生成模块;
每个SDN控制器包括:交换机节点资源监测模块、拓扑链路管理模块和交换机流表下发模块;
服务链编排管理模块:接收用户发起的请求,将用户的请求编排为对应逻辑服务链,对服务链按具有相同的源节点和目的节点进行分组,对分组后的服务链都过滤出带宽要求高出设定阈值的部分并标注为最高优先级,对剩余的服务链按照其对时延要求的高低降序排列并注明优先级;
全局网络拓扑资源管理模块:用于接收来自基本控制层的交换机节点资源监测模块上报的各交换机节点的剩余可用资源和接收拓扑链路管理模块上报的底层网络拓扑信息以及网络中链路的剩余带宽,获得全局的网络拓扑资源信息,将全局的网络拓扑资源的信息发送给服务链映射策略生成模块;
服务链映射策略生成模块:用于根据接收的全局的网络拓扑资源信息以及各用户请求的服务链及其对应的优先级生成服务链映射策略;
交换机节点资源监测模块:用于收集与SDN控制器直接交互的交换机节点剩余资源信息,并上传给MANO控制器的全局网络拓扑资源管理模块;
拓扑链路管理模块:负责收集端到端的链路拓扑信息和网络中链路的剩余带宽信息,并上传给MANO控制器的全局网络拓扑资源管理模块;
交换机流表下发模块:接收来自主控制层MANO控制器中服务链映射策略生成模块的服务链映射策略,并通过流表的形式将策略下发给与自己直接交互的交换机;
服务链映射策略为:对分组中最高优先级的服务链优先映射到源目节点之间的最短路径上,剩余服务链的映射策略按照其优先级顺序采用协同进化的多种群竞争遗传算法CE-GA来制定,CE-GA算法采用生态多种群捕获竞争模型,从源目节点之间的较短的路径开始计算映射策略;
所述生态多种群捕获竞争模型如下:
其中,Ni是第i种群的大小,t表示进化的代数,Wi表示在不发生竞争的情况下,种群i的环境负荷量,ri表示种群i的个体的最大瞬时增长率,aij是种群i和种群j的竞争系数,hi为从种群i中捕获的个体数量或向种群i中加入的个体数量;
CE-GA算法,包括步骤:
步骤4-1)产生n个初始种群,初始种群包含N0个染色体,N0为常量,表示初始种群的规模,每条染色体代表一种映射方案,染色体的长度代表当前选取的最短路径上物理节点的个数;
步骤4-2)捕获操作:从非精英种群中捕获H个精英个体放入精英种群中;
步骤4-3)协同操作:根据生态多种群捕获竞争模型调整各个种群的规模,如果种群i的增长值为正值,通过随机产生个染色体加入种群来增大该种群的规模;如果种群i的增长值为负值,按照计算出来的适应度对种群排序,删除适应度量小的个染色体;
步骤4-4)遗传操作,n个种群分别进行以下两个操作:
交叉重组:染色体之间两两以给定的第一概率Pc,0<Pc<1进行单点交叉;
变异:每条染色体以给定的第二概率Pm,0<Pm<1进行变异;
步骤4-5)计算适应度,若算法达到最大的遗传迭代次数,则算法结束;否则转向步骤4-2),进行种群的下一代进化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439162.0A CN111741069B (zh) | 2020-05-22 | 2020-05-22 | 基于sdn和nfv分层式数据中心资源优化方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439162.0A CN111741069B (zh) | 2020-05-22 | 2020-05-22 | 基于sdn和nfv分层式数据中心资源优化方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111741069A CN111741069A (zh) | 2020-10-02 |
CN111741069B true CN111741069B (zh) | 2022-12-09 |
Family
ID=72647574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010439162.0A Active CN111741069B (zh) | 2020-05-22 | 2020-05-22 | 基于sdn和nfv分层式数据中心资源优化方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111741069B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860384A (zh) * | 2021-03-15 | 2021-05-28 | 南京邮电大学 | 一种面向多维资源负载均衡的vnf复用和迁移方法 |
CN114826782A (zh) * | 2022-06-28 | 2022-07-29 | 之江实验室 | 一种基于多目标优化算法的多模裁决负反馈系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173761A (zh) * | 2017-12-22 | 2018-06-15 | 南京邮电大学 | 一种sdn和nfv融合的资源优化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107770096B (zh) * | 2017-12-11 | 2021-07-30 | 国网河南省电力公司信息通信公司 | 一种基于负载均衡的sdn/nfv网络动态资源分配方法 |
-
2020
- 2020-05-22 CN CN202010439162.0A patent/CN111741069B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173761A (zh) * | 2017-12-22 | 2018-06-15 | 南京邮电大学 | 一种sdn和nfv融合的资源优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111741069A (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109818865B (zh) | 一种sdn增强路径装箱装置及方法 | |
CN108260169B (zh) | 一种基于QoS保障的服务功能链动态部署方法 | |
CN110297699B (zh) | 调度方法、调度器、存储介质及系统 | |
Huang et al. | Rlsk: a job scheduler for federated kubernetes clusters based on reinforcement learning | |
CN111741069B (zh) | 基于sdn和nfv分层式数据中心资源优化方法和系统 | |
CN110213363B (zh) | 基于软件定义网络的云资源动态分配系统及方法 | |
CN112260950B (zh) | 一种基于业务优先级区分的云存储网络组播流调度方法 | |
Ashouraei et al. | A new SLA-aware load balancing method in the cloud using an improved parallel task scheduling algorithm | |
CN105357124B (zh) | 一种MapReduce带宽优化方法 | |
CN112350949B (zh) | 软件定义网络中基于流调度的重路由拥塞控制方法及系统 | |
Liu | Intelligent routing based on deep reinforcement learning in software-defined data-center networks | |
Khaleel et al. | Optimization of computing and networking resources of a Hadoop cluster based on software defined network | |
CN112148381A (zh) | 一种基于软件定义的边缘计算优先级卸载决策方法及系统 | |
CN107103360B (zh) | 一种基于混合云的可靠应用分配分布式遗传方法 | |
CN116107692A (zh) | 动态融合遗传算法的边缘容器多目标蚁群优化调度方法 | |
CN115277574A (zh) | 一种sdn架构下数据中心网络负载均衡方法 | |
CN111199316A (zh) | 一种基于执行时间评估的云雾协同计算电网调度方法 | |
Perepelkin et al. | Research of Multipath Routing and Load Balancing Processes in Software Defined Networks Based on Bird Migration Algorithm | |
CN116302578A (zh) | 一种QoS约束的流应用延迟确保方法及系统 | |
Li et al. | An improved genetic algorithm for the scheduling of virtual network functions | |
CN107360483B (zh) | 一种用于软件定义光网络的控制器负载均衡算法 | |
CN112883526B (zh) | 一种任务延迟和可靠性约束下的工作负载分配方法 | |
CN114978913A (zh) | 一种基于切链的服务功能链跨域部署方法及系统 | |
CN112860384A (zh) | 一种面向多维资源负载均衡的vnf复用和迁移方法 | |
Hu et al. | Joint deployment and request routing for microservice call graphs in data centers |
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 |