CN113301143A - 一种基于稳定匹配的sdn分布式控制平面负载均衡方法 - Google Patents
一种基于稳定匹配的sdn分布式控制平面负载均衡方法 Download PDFInfo
- Publication number
- CN113301143A CN113301143A CN202110558671.XA CN202110558671A CN113301143A CN 113301143 A CN113301143 A CN 113301143A CN 202110558671 A CN202110558671 A CN 202110558671A CN 113301143 A CN113301143 A CN 113301143A
- Authority
- CN
- China
- Prior art keywords
- controller
- load
- migrated
- switch
- light
- 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.)
- Granted
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
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- 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
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种基于稳定匹配的SDN分布式控制平面负载均衡方法,监控每个交换设备的Packet‑In消息请求数量;周期性收集统计分布式控制平面中各控制器的负载情况,并发现控制平面中的过载控制器以及负载不均衡状态;对过载控制器筛选出用于迁移以卸除负载的交换机;通过SDN全局状态视图机制,选举出最轻载的控制器;对于最轻载控制器,执行集中式任务处理,最后将稳定匹配过程中输出的匹配结果输入至SDN控制器的交换机迁移执行模块以完成负载均衡过程。本发明通过分布式计算框架减轻过载控制器的计算压力,将主要计算任务集中在最轻载控制器中统一执行,减小网络整体的负载均衡过程执行时间,从而减小负载均衡对于网络性能的影响。
Description
技术领域
本发明属于负载均衡技术,具体涉及一种基于稳定匹配的SDN分布式控制平面负载均衡方法。
背景技术
SDN是一种新型网络架构,其特点是将传统网络中数控一体的分布式网络设备解耦出集中式的控制平面与仅具有转发能力的数据平面。集中式的控制平面通过部署控制器实现对数据平面中转发设备的可编程控制、全局网络视图能力、全局监控能力以及可定制化的业务编排。SDN的运作机制可以概括为:当网络数据包到达数据平面中的转发设备(即交换机)时,交换机检查自身存储的流表中有没有对应该数据包的转发规则,若有,则执行响应的转发决策,若没有,则向控制器发送Packet-In请求该数据包在数据平面中的转发路径;由于控制平面中的控制器具备整个网络的全局拓扑视图,它能够通过可编程的决策制定方法并结合数据平面中各个转发设备的状态来定制优质的转发规则,并安装至交换机的流表中指导数据包的转发。因此,SDN网络相比于传统网络具备更灵活的特点。SDN的架构图如图1所示。
然而,由于单一部署控制器对控制平面带来稳定性、安全性和可扩展性的挑战,部署物理分布而逻辑同一的分布式多控制器控制平面成为了控制平面的新特性,每个控制器分别管理一部分的交换机,并通过收敛的方式获取全局视图。由于数据平面中流量的分布不均,对于控制平面的Packet-In请求也会分布不均,因此,为了让控制平面实现更优秀的性能表现,利用交换机迁移技术的动态负载均衡成为了当下控制平面负载均衡的主要技术。
但是上述现有技术的计算压力较大,整体的平均负载均衡处理时间较长,因此需要进一步克服该缺陷。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种基于稳定匹配的SDN分布式控制平面负载均衡方法,本发明能够极大地减少过载控制器在负载均衡过程中的计算压力。
技术方案:本发明的一种基于稳定匹配的SDN分布式控制平面负载均衡方法,包括以下步骤:
步骤S1、网络初始化
控制平面的控制器集合为C={c1,c2,...,cM},数据平面的交换机集合为S={s1,s2,...,sN};SDN控制器中设有监控模块,该监控模块搜集所有交换机向各控制器发送Packet-In请求的数量,并统计这些Packet-In请求对各控制器带来的负载压力,然后识别出控制平面中过载的控制器,进而形成过载控制器集合Coverloaded;
步骤S2、在过载控制器集合coverloaded={c′1,c′2,...,c′U}中,每个控制器均执行分布式的计算任务,即待迁移交换机筛选,进而各自筛选出自身的待迁移交换机,最终得到数据平面中待迁移交换机总集合Smigrated={s′1,s′2,...,s′V},其中U≤M,V≤N;
步骤S3、在轻载控制器集合Clight={c″1,c2″,...,c″M-U},即在{C-Coverloaded}中选出最轻载控制器clightest,并执行集中式计算任务以得到匹配结果,包括以下步骤:
S3.1、资源块分割;
S3.2、确定待迁移交换机与轻载控制器之间的偏好列表;
S3.3、G-S稳定匹配;
步骤S4、所得最轻载控制器clightest将匹配结果分配到各个轻载控制器与待迁移交换机中,执行最终的交换机迁移以完成负载均衡过程。
进一步地,所述步骤S2中待迁移交换机筛选的具体方法为:
S2.2、计算当前过载控制器与负载均衡基准之间的超出负载值diff;
diff=loadcurrent-avg,其中loadcurrent表示当前控制器的负载;
S2.3、通过队列的方式,筛选出当前过载控制器所管理交换机列表中的负载总和与diff相近且彼此之间负载相近的待迁移交换机,并加入待迁移交换机总集合Smigrated集合中。
进一步地,所述步骤S3.1中资源块分割的具体方法为:
S3.1.1、收集所有轻载控制器的剩余资源,所述剩余资源即所有轻载控制器的与负载均衡基准avg相比的可接收负载量,并整理为控制平面的资源集合A={α1,α2,...,αM-U};
S3.1.2、根据如下公式,将轻载控制器中的所有资源切分为与待迁移交换机集合数量|Smigrated|相同的资源块,并定义为“资源”;
其中,αk表示第k个控制器具备的资源,即所能够接受迁移负载的能力;
S3.1.3、在轻载控制器集合Clight中平均分配出V块近似大小的“资源”,V是指待迁移交换机的数量。
进一步地,所述步骤S3.2中确定待迁移交换机与轻载控制器之间的偏好列表基的具体步骤为:
S3.2.1、对于待迁移交换机对于轻载控制器的偏好基于如下公式:
其中,si表示第i个交换机,rh∈cj,即第h个资源rh来自于第j个控制器cj,qk表示该轻载控制器ck所持有的资源数量,dij表示第i个待迁移交换机si与第j个目标轻载控制器之间cj的距离,ω表示在待迁移交换机对轻载控制器偏好中轻载控制器所持有资源数量与迁移距离之间的权重;
进一步地,所述步骤S3.3中G-S稳定匹配是基于G-S稳定匹配算法,输入待迁移交换机的集合Smigrated与轻载控制器资源的集合R,以及彼此之间的偏好列表Ps[][]与Pr[][](即二维数组/矩阵),通过O(n2)时间复杂度的稳定匹配过程,输出待迁移交换机与轻载控制器资源的匹配结果并根据资源编号查找对应轻载控制器,完成待迁移交换机与轻载控制器之间的匹配。
有益效果:与现有技术相比,本发明具有以下优点:
(1)本发明聚焦的目标是控制平面中的过载控制器性能表现,故该发明的主要手段是降低过载控制器在负载均衡过程中处理任务带来的计算压力,通过设计分布式算法,使过载控制器只需要负责待迁移交换机筛选任务以及一些基本的数据通信任务,而将其他任务(包括轻载控制器的资源库分割、待迁移交换机与轻载控制器的偏好列表决定、稳定匹配)都被设计为集中式算法,并运行在控制平面中被选举出的最轻载控制器运行,从而使系统整体的平均负载均衡处理时间得到有效降低;
(2)本发明使用G-S稳定匹配算法作为待迁移交换机与轻载控制器相互选择的机制,通过设计控制器剩余接收负载能力为与待迁移交换机等量的资源块的方式,达到稳定匹配的条件,实现时间复杂度为O(n2)的稳定匹配结果。
附图说明
图1为现有技术中的SDN架构图;
图2为本实施例的流程示意图;
图3为实施例中正常网络流量环境下收集的各个控制器的负载情况对比图;
图4为实施例中极端网络负载环境下收集的各个控制器的负载情况对比图;
图5为实施例中调整后正常网络流量环境下的负载均衡效果图;
图6为实施例中调整后极端网络负载环境下的负载均衡效果图;
图7为实施例的系统架构图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图2所示,本发明聚焦过载控制器参与负载均衡的状态对于整体网络负载均衡过程性能表现的影响,设计了分布式计算框架以减轻过载控制器的计算压力,将主要计算任务集中在最轻载控制器中统一执行,减小了网络整体的负载均衡过程执行时间,从而减小负载均衡对于网络性能的影响,优化了网络表现。
本实施例的一种基于稳定匹配的SDN分布式控制平面负载均衡方法,包括以下步骤:
(1)网络初始化
对于控制平面,设控制器集合C={c1,c2,...,cM};对于数据平面,设交换机集合S={s1,s2,...,sN}。SDN控制器中设有监控模块,监控模块收集数据平面中每个交换机向每个控制器发送Packet-In请求的数量,并统计这些请求对各控制器带来的负载压力,根据设备性能测试得出的数据,发现控制平面中的过载控制器,进而形成过载控制器集合Coverloaded;
(2)在过载控制器集合Coverloaded={c′1,c′2,...,c′U}中,每个控制器执行分布式的计算任务——待迁移交换机筛选,各自筛选出自身的待迁移交换机,并得到数据平面中待迁移交换机总集合Smigrated={s′1,s′2,...,s′V};
(3)在轻载控制器集合Clight={c″1,c′2,...,c″M-U}中选举出最轻载控制器clightest,并执行集中式计算任务,包括:
(3.1)资源块分割;
(3.2)待迁移交换机与轻载控制器之间的偏好列表决定;
(3.3)G-S稳定匹配;
(4)clightest将匹配结果分配到各个控制器与待迁移交换机中,执行最终的交换机迁移以完成负载均衡过程。
本实施例步骤(2)中过载控制器筛选待迁移交换机的算法如算法1所示:
算法1:待迁移交换机筛选算法
本实施例步骤(3.1)中资源块分割算法如算法2所示:
算法2:资源块分割算法
本实施例步骤(3.3)中G-S稳定匹配算法如算法3所示:
算法3:G-S稳定匹配算法
实施例
实验环境:SDN控制器使用Floodlight,网络拓扑使用Mininet工具搭建,SDN控制器的测试工具使用CBench,网络流量使用iPerf工具生成,总体实验在Java环境中进行数据模拟。
实验参数:控制平面控制器数量为5台,各自连接10台交换机,CBench测试出的每台控制器的负载能力在40000packets/s为上限。
实施过程:
1.在SDN仿真环境下分别运行控制器与Mininet数据平面拓扑,并在各个交换机的虚拟主机下使用iPerf工具生成Packet-In请求,并由Java程序统计收集数据。
2.在Java项目中,分别运行了两种情况下的负载,分别为正常网络流量环境与极端网络负载环境,其中,正常网络流量环境下收集的各个控制器的负载情况如图3所示,极端网络负载环境下收集的各个控制器的负载情况如图4所示。
3.通过调整步骤(3.2)中待迁移交换机与轻载控制器的偏好比例,即轻载控制器所持有资源数量q与交换机迁移距离d之间的比例(ω的大小),执行负载均衡算法,得到在正常网络流量环境下的负载均衡效果如图5所示,在极端网络负载环境下的负载均衡效果如图6所示。
4.对于整体系统的各个控制器执行计算任务所造成的时延,通过计算得出的结果与其他方案进行对比,表1展示了正常网络流量与极端网络负载下各个控制器的执行时间。
表1
实例的结果表明,本发明在正常网络流量环境下以及极端网络负载环境下,都能够实现良好的负载均衡效果,基于对轻载控制器持有资源数量以及交换机迁移距离的权衡中,会对负载均衡的均衡度与交换机迁移的时间产生轻微的影响,这是一个偏重权衡的结果。
对于系统整体的控制器执行计算任务的时间造成的时延上来看,本发明能够有效减少过载控制器执行计算任务的压力,减少系统整体的平均时延。
Claims (5)
1.一种基于稳定匹配的SDN分布式控制平面负载均衡方法,其特征在于:包括以下步骤:
步骤S1、网络初始化
控制平面的控制器集合为C={c1,c1,…,cM},数据平面的交换机集合为S={s1,s2,…,sN};SDN控制器中设有监控模块,该监控模块搜集所有交换机向各控制器发送Packet-In请求的数量,并统计这些Packet-In请求对各控制器带来的负载压力,然后识别出控制平面中过载的控制器,进而形成过载控制器集合Coverloaded;
步骤S2、在过载控制器集合Coverloaded={c′1,c′2,…,c′U}中,每个控制器均执行分布式的计算任务,即待迁移交换机筛选,进而各自筛选出自身的待迁移交换机,最终得到数据平面中待迁移交换机总集合Smigrated={s′1,s′2,…,s′V},其中U≤M,V≤N;
步骤S3、在轻载控制器集合Clight={c″1,c″2,…,c″M-U},即在{C-Coverloaded}中选举出最轻载控制器clightest,并执行集中式计算任务,具体包括以下步骤:
S3.1、资源块分割;
S3.2、确定待迁移交换机与轻载控制器之间的偏好列表;
S3.3、G-S稳定匹配;
步骤S4、所得最轻载控制器clightest将匹配结果分配到各个轻载控制器与待迁移交换机中,执行最终的交换机迁移以完成负载均衡过程。
3.根据权利要求1所述的基于稳定匹配的SDN分布式控制平面负载均衡方法,其特征在于:所述步骤S3.1中资源块分割的具体方法为:
S3.1.1、收集所有轻载控制器的剩余资源,所述剩余资源即所有轻载控制器的与负载均衡基准avg相比的可接收负载量,并整理为控制平面的资源集合A={α1,α2,…,αM-U};
S3.1.2、根据如下公式,将轻载控制器中的所有资源切分为与待迁移交换机集合数量|Smigrated|相同的资源块,并定义为“资源”;
其中,αk表示第k个控制器具备的资源,即所能够接受迁移负载的能力;
S3.1.3、在轻载控制器集合Clight中平均分配出V块近似大小的“资源”,V是指待迁移交换机的数量。
4.根据权利要求1所述的基于稳定匹配的SDN分布式控制平面负载均衡方法,其特征在于:所述步骤S3.2中确定待迁移交换机与轻载控制器之间的偏好列表基的具体步骤为:
S3.2.1、对于待迁移交换机对于轻载控制器的偏好基于如下公式:
其中,si表示第i个交换机,rh∈cj,即第h个资源rh来自于第j个控制器cj,qk表示该轻载控制器ck所持有的资源数量,dij表示第i个待迁移交换机si与第j个目标轻载控制器之间cj的距离,ω表示在待迁移交换机对轻载控制器偏好中轻载控制器所持有资源数量与迁移距离之间的权重;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558671.XA CN113301143B (zh) | 2021-05-21 | 2021-05-21 | 一种基于稳定匹配的sdn分布式控制平面负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558671.XA CN113301143B (zh) | 2021-05-21 | 2021-05-21 | 一种基于稳定匹配的sdn分布式控制平面负载均衡方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113301143A true CN113301143A (zh) | 2021-08-24 |
CN113301143B CN113301143B (zh) | 2022-07-12 |
Family
ID=77323744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110558671.XA Active CN113301143B (zh) | 2021-05-21 | 2021-05-21 | 一种基于稳定匹配的sdn分布式控制平面负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113301143B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103795805A (zh) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | 基于sdn的分布式服务器负载均衡方法 |
CN106941456A (zh) * | 2017-05-17 | 2017-07-11 | 华中科技大学 | 一种软件定义网络中控制平面的负载均衡方法及系统 |
CN107612771A (zh) * | 2017-09-07 | 2018-01-19 | 广东工业大学 | 一种基于动态迁移的sdn网络负载均衡方法 |
CN107819695A (zh) * | 2017-10-19 | 2018-03-20 | 西安电子科技大学 | 一种基于sdn的分布式控制负载均衡系统与方法 |
US20180139272A1 (en) * | 2016-11-15 | 2018-05-17 | Microsoft Technology Licensing, Llc | Live migration of load balanced virtual machines via traffic bypass |
CN108900428A (zh) * | 2018-06-26 | 2018-11-27 | 南京邮电大学 | 基于交换机动态迁移的控制器负载均衡方法 |
WO2019012546A1 (en) * | 2017-07-11 | 2019-01-17 | Telefonaktiebolaget Lm Ericsson [Publ] | EFFICIENT CHARGE BALANCING MECHANISM FOR SWITCHES IN A SOFTWARE-DEFINED NETWORK |
CN111711576A (zh) * | 2020-06-30 | 2020-09-25 | 西安电子科技大学 | 基于高效交换机迁移的控制器负载均衡系统与方法 |
CN112039682A (zh) * | 2019-06-03 | 2020-12-04 | 艾福荣·艾尼瓦尔 | 软件定义数据中心在运营商网络中的运用及实践的方法 |
-
2021
- 2021-05-21 CN CN202110558671.XA patent/CN113301143B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103795805A (zh) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | 基于sdn的分布式服务器负载均衡方法 |
US20180139272A1 (en) * | 2016-11-15 | 2018-05-17 | Microsoft Technology Licensing, Llc | Live migration of load balanced virtual machines via traffic bypass |
CN106941456A (zh) * | 2017-05-17 | 2017-07-11 | 华中科技大学 | 一种软件定义网络中控制平面的负载均衡方法及系统 |
WO2019012546A1 (en) * | 2017-07-11 | 2019-01-17 | Telefonaktiebolaget Lm Ericsson [Publ] | EFFICIENT CHARGE BALANCING MECHANISM FOR SWITCHES IN A SOFTWARE-DEFINED NETWORK |
CN107612771A (zh) * | 2017-09-07 | 2018-01-19 | 广东工业大学 | 一种基于动态迁移的sdn网络负载均衡方法 |
CN107819695A (zh) * | 2017-10-19 | 2018-03-20 | 西安电子科技大学 | 一种基于sdn的分布式控制负载均衡系统与方法 |
CN108900428A (zh) * | 2018-06-26 | 2018-11-27 | 南京邮电大学 | 基于交换机动态迁移的控制器负载均衡方法 |
CN112039682A (zh) * | 2019-06-03 | 2020-12-04 | 艾福荣·艾尼瓦尔 | 软件定义数据中心在运营商网络中的运用及实践的方法 |
CN111711576A (zh) * | 2020-06-30 | 2020-09-25 | 西安电子科技大学 | 基于高效交换机迁移的控制器负载均衡系统与方法 |
Non-Patent Citations (4)
Title |
---|
KAI-WUN LAI,ETC: "Using the depository buffer to mitigate the communications load between SDN switches and the controller", 《IEEE》 * |
李娜等: "基于SDN的控制器迁移负载均衡算法研究", 《国外电子测量技术》 * |
胡涛等: "SDN中基于分布式决策的控制器负载均衡机制", 《电子学报》 * |
胡涛等: "SDN中基于可靠性评估的多控制器均衡部署策略", 《通信学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113301143B (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Islam et al. | A survey on task offloading in multi-access edge computing | |
CN108901046B (zh) | 面向移动边缘计算的协同任务卸载算法及系统设计方案 | |
US11620163B2 (en) | Controlling resource allocation in a data center by monitoring load on servers and network links | |
Li et al. | SSLB: self-similarity-based load balancing for large-scale fog computing | |
Saraswat et al. | Challenges and solutions in software defined networking: A survey | |
Gao et al. | Traffic load balancing schemes for devolved controllers in mega data centers | |
WO2022252496A1 (zh) | 软件定义云边协同网络能耗优化方法和系统 | |
CN111835849B (zh) | 增强接入网服务能力的方法和装置 | |
Mahmoudi et al. | SDN-DVFS: an enhanced QoS-aware load-balancing method in software defined networks | |
CN116760771A (zh) | 一种在线监测数据多通道传输控制策略处理方法 | |
CN113301143B (zh) | 一种基于稳定匹配的sdn分布式控制平面负载均衡方法 | |
Qin et al. | Research on nginx dynamic load balancing Algorithm | |
KR20190078453A (ko) | 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법 | |
KR102129389B1 (ko) | 클라우드 컴퓨팅 환경에서의 다목적 가상머신 배치 방법 및 장치 | |
Abdi Seyedkolaei et al. | Multi-criteria decision-making for controller placement in software-defined wide-area networks | |
Ma et al. | SE-PSO: resource scheduling strategy for multimedia cloud platform based on security enhanced virtual migration | |
Banerjee et al. | EXPRL: experience and prediction based load balancing strategy for multi-controller software defined networks | |
Vani et al. | An Intelligent Server load balancing based on Multi-criteria decision-making in SDN | |
Hongvanthong | Novel four-layered software defined 5g architecture for ai-based load balancing and qos provisioning | |
Wei et al. | SDN-based multi-controller optimization deployment strategy for satellite network | |
He et al. | A density algorithm for controller placement problem in software defined wide area networks | |
Mohamed et al. | Dynamic resource allocation in cloud computing based on software-defined networking framework | |
CN113872673A (zh) | 一种卫星星座仿真的容器云资源调度系统及其调度方法 | |
CN112860384A (zh) | 一种面向多维资源负载均衡的vnf复用和迁移方法 | |
Zhang et al. | A novel, efficient, green and real-time load balancing algorithm for 5G network measurement report collecting clusters |
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 |