CN107612771A - 一种基于动态迁移的sdn网络负载均衡方法 - Google Patents

一种基于动态迁移的sdn网络负载均衡方法 Download PDF

Info

Publication number
CN107612771A
CN107612771A CN201710800852.2A CN201710800852A CN107612771A CN 107612771 A CN107612771 A CN 107612771A CN 201710800852 A CN201710800852 A CN 201710800852A CN 107612771 A CN107612771 A CN 107612771A
Authority
CN
China
Prior art keywords
controller
load
migration
interchanger
decision
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
Application number
CN201710800852.2A
Other languages
English (en)
Other versions
CN107612771B (zh
Inventor
凌捷
黄盛�
罗玉
谢锐
柳毅
龚怡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yilingke Network Security Co ltd
Original Assignee
Guangdong University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201710800852.2A priority Critical patent/CN107612771B/zh
Publication of CN107612771A publication Critical patent/CN107612771A/zh
Application granted granted Critical
Publication of CN107612771B publication Critical patent/CN107612771B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于动态迁移的SDN网络负载均衡方法,设计了一个负载均衡系统架构,该架构主要包含迁移规划系统和控制平面子系统,通过控制平面子系统中控制器主动将自身状态信息通告给迁移规划系统以及迁移规划系统主动返回轻度负载(负载低于阈值φ即视为轻度负载)控制器列表和路由代价信息以降低控制器的决策时延和计算存储资源的消耗;通过询问消息机制防止多个过载控制器同时决策将交换机迁移至同一个目的控制器造成迁移冲突;通过滑动窗口机制减少控制器负载瞬时波动较大带来的不必要的迁移操作。

Description

一种基于动态迁移的SDN网络负载均衡方法
技术领域
本发明涉及SDN网络中多控制器的负载均衡技术研究领域。在采用分布式控制器的SDN控制平面中,由于控制器与交换机的静态映射关系,易导致在网络中流量不均衡或变化时,控制器负载不均的问题。据此提出一种动态的负载均衡方法,该方法通过交换机在控制器间的动态迁移使得控制器与交换机维持动态映射关系而达到负载均衡的目的。
背景技术
软件定义网络SDN是一种新型的网络架构,其主要特点是将网络的控制平面和数据平面解耦,通过控制平面的控制器实现网络的集中化的管理和配置,以及把握全网资源视图;与传统网络的转发设备不同,数据平面的转发设备(如交换机)仅提供简单的数据转发功能,其转发数据的依据是由控制平面的控制器下发的流表;OpenFlow协议是一种典型的控制平面与数据平面的通信接口协议,控制器可通过该协议动态地改变交换机的状态,如安装流表、删除流表和配置交换机等。
在SDN网络中,到达交换机的每个流的第一个数据包都会触发”packet-in”消息,即向控制器发送”packet-in”消息,控制器通过全网视图计算路由、下发并安装流表,此外控制器与交换机之间还有”port-status”和”flow-removed”等消息交互。当交换机上的流量发生巨大变化时,负责控制该交换机的控制器很可能在短时间内收到大量的消息而导致过载。经典的SDN网络架构由一个控制器和若干个交换机共同构成,然而随着SDN网络规模的不断扩大,单个控制器的SDN网络架构出现了性能不足、扩展困难和单点故障等问题。对此问题,一方面可通过降低交换机对控制器的依赖来减少控制器的对消息的处理负载,如DIFANE(Yu M,Rexford J,Freedman M J,et al.Scalable flow-based networking withDIFANE[J].ACM SIGCOMM Computer Communication Review,2010,40(4):351-362.)通过控制器主动向交换机发送流表的方式以减少通信量,从而降低了控制器的负载。目前主要的方法是通过扩展控制器的数量,即将多个控制器部署到多个控制域内,形成一个物理上分布式,逻辑上保持集中式的管理控制平面,且各控制器之间相互协作。目前已经有一些控制平面的分布式架构技术,Onix(Koponen T,Casado M,Gude N,et al.Onix:adistributed control platform for large-scale production networks[C]//UsenixConference on Operating Systems Design and Implementation.USENIX Association,2010:351-364.)是一种水平分布式控制器架构,NIB(Network Informarion Base)是Onix网络的核心,其将数据平面的物理网络状态存储在NIB中,各控制器通过交互NIB信息而获取全网视图,HyperFlow(Tootoonchian A,Ganjali Y.HyperFlow:A distributed controlplane for OpenFlow[C]//Proceedings of the 2010internet network managementconference on Research on enterprise networking.2010:3-3.)网络是一种基于事件的水平分布式控制器架构,各控制器之间通过分发网络事件副本使得各自获得的网络视图是一致的。
但以上的分布式架构都是建立在控制器与交换机的映射关系是静态的基础上,即交换机只能被固定的某一个控制器所控制。但网络流量是动态变化的,在大规模网络中,每个交换机上的数据流速往往存在较大的差异,这就容易导致网络中控制器的负载不均。对此,文献(Dixit A,Hao F,Mukherjee S,et al.Towards an elastic distributed SDNcontroller[C]//ACM SIGCOMM Computer Communication Review.ACM,2013,43(4):7-12.)提出了名为ElastiCon的弹性分布式控制器架构,一方面通过考虑因素综合判定控制器过载的标准,另一方面通过负载均衡算法选出负载较轻的控制器,最后通过迁移机制将过载的控制器下的交换机迁移至负载较轻的控制器下,其实现基础是在OpenFlow1.3版本以后对多控制器的支持,即允许交换机同时与多个控制器连接。对交换机而言,控制器可以存在Equal、Slave、Master状态,交换机通过更改所连接控制器的角色而达到迁移的效果。ElastiCon架构的分布式控制器并不完善,ElastiCon是一种集中式决策的架构,其通过一个中心控制器周期性收集其他各个普通控制器的负载信息,并在普通控制器的负载超过设定的阈值时,由中心控制器作出交换机的迁移决策,并发送迁移的命令;收集普通控制器的负载信息以及作出迁移决策和发送命令增加了负载均衡的时延。文献(Zhou Y,Zhu M,XiaoL,et al.A load balancing strategy of sdn controller based on distributeddecision[C]//Trust,Security and Privacy in Computing and Communications(TrustCom),2014IEEE 13th International Conference on.IEEE,2014:851-856.)提出了DALB分布式控制器架构,DALB是一个完全的分布式决策架构,不存在中心控制器,每个控制器可以独立作出负载均衡决策,但在作出决策前,该控制器需要向其他控制器请求负载信息,生成全网视图,并选择目的控制器,带来了决策时延,同时当网络规模较大的时候,将耗费较多的计算和存储资源。文献(张敏敏,章韵,段元新.基于软件定义网络的多控制器负载均衡架构[J].计算机工程,2016,(09):26-32.)提出了一种新的负载均衡架构,其借助传统的负载均衡架构的思想,将控制层分为负载均衡层和控制系统层,负载均衡层使用多个负载均衡器,并通过负载均衡算法选取在控制系统层中负载较小的控制器,控制系统层的控制器负责转发数据,该架构需要负载均衡器来作出负载均衡决策,也带来了决策时延,且其负载均衡算法只考虑了控制器的CPU、内存和请求连接数三方面因素,并不能真正反映控制器的负载以及网络状况。
基于此,本发明提出一种基于动态迁移的SDN网络负载均衡方法,该方法可减少控制器的决策时延和计算和存储资源以及瞬时流量波动较大带来的不必要迁移操作,同时避免多个控制器同时过载时多交换机迁移至同一目的控制器而造成迁移冲突。
发明内容
本发明针对当前SDN网络中的多控制器架构因控制器与交换机静态映射关系而造成负载不均匀的问题,提出了一种基于动态迁移的SDN网络负载均衡方法。
本发明设计了一个负载均衡系统架构,该架构主要包含迁移规划系统和控制平面子系统,迁移规划系统包含迁移规划模块、全网视图生成模块、控制器状态信息存储模块、与控制器通信接口模块;控制平面子系统由各个控制器组成,每个控制器包含北向接口、东西向通信接口、信息存储模块、状态信息(包括控制器负载信息以及链路信息)收集测量与发送模块、评估与决策模块、南向接口模块。该系统架构与DALB类似,也是一种完全分布式决策架构,但与DALB不同的是,每个控制器周期性地将自己的收集的状态信息主动通告给迁移规划系统。迁移规划系统负责存储以及生成全网控制器负载信息以及交换机到各控制器的路由代价信息,以降低对控制器计算和存储资源消耗;迁移规划系统依据全网控制器的负载信息推举出负载较轻(负载低于阈值φ即视为轻度负载)的控制器列表,然后将列表和交换机迁移的路由代价信息提前通告给各个控制器,以降低控制器的决策时延。过载控制器在作出迁移交换机决策前,向负载较轻的控制器列表中的控制器发送询问消息,询问其是否处于迁移周期内,以防止多个过载控制器同时决策将交换机迁移至同一个目的控制器。控制器的评估和决策模块引入滑动窗口的机制,该滑动窗口中储存了过去一定时间内每个周期采集的控制器负载信息,根据滑动窗口中储存的数值,计算滑动窗口时间内控制器的平均负载,并以该平均负载是否大于所设定的负载阈值作为是否过载的判定条件,以减少控制器负载瞬时波动较大带来的不必要的迁移操作。由于控制器负载主要来自于对交换机消息的处理,根据OpenFlow协议,建流请求(Packet-In)消息所占的比例最大,因此将建流消息的请求速率作为衡量控制器负载的主要因素。
与现有技术相比,本发明具有如下优点:
本方法降低了对控制器计算和存储资源的消耗以及决策时延,同时可防止多个过载控制器同时决策将交换机迁移至同一个目的控制器造成迁移冲突;在目的控制器选取上综合考虑了目的控制器的负载情况以及交换机路由代价。控制器负载将建流消息的请求速率作为主要衡量因素,且引入滑动窗口的机制,以减少控制器负载瞬时波动较大带来的不必要的迁移操作。
附图说明
图1:负载均衡系统结构图
图2:迁移规划系统结构图
图3:控制器结构图
图4:具体流程图
具体实施方式
下面结合附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
1.构建如图1的负载均衡系统
该系统主要包含迁移规划系统和控制平面子系统,迁移规划系统(如图2)包含迁移规划模块、全网视图生成模块、控制器状态信息存储模块、与控制器通信接口模块;控制平面子系统由各个控制器组成,每个控制器(如图3)包含北向接口、东西向通信接口、信息存储模块、状态信息(包括控制器负载信息以及链路信息)收集测量与发送模块、评估与决策模块、南向接口模块
2.具体流程如图4,以下是具体描述
(1)设定参数:设定各个控制器的过载阈值overload_thri和迁移阈值migra_thri,其中i为第i控制器,迁移阈值表示当负载到达迁移阈值时,不再接受新的交换机迁移,overload_thri的值比migra_thri略大;设定状态信息采集周期T1,滑动窗口时间跨度T2;系统中共有K个控制器C={C1,C2,…,Ck}以及P个交换机P={S1,S2,S3,…,Sp}。
(2)各个控制器在每个周期T1后采集状态信息,包含CPU利用率Ucpu、内存使用率Umem、各建流(Packet-In)消息的请求速率Rj,j表示第j个交换机;链路时延(delay),链路带宽(bandwidth),链路负载(load)。
(3)各控制器在周期T1后计算其负载,计算如下:
Lserver(Ci)=K1*Ucpu+K2*Umem+K3*Rij*Ni
其中K1+K2+K3=1,Rij表示第i个控制器的第j个交换机的建流请求速率,Ni表示第i个控制器下共有Ni个交换机。
将Lserver(Ci)加入到时间跨度为T2滑动窗口,计算T2时间内的平均负载:
Lserver(Ci)T2=(Lserver(Ci)*M)/T2,M为T2时间内采集的次数。
(4)各控制器将在周期T1采集信息发送给迁移规划系统,迁移规划系统作以下处理:
①生成控制器负载全局矩阵mat_load:
Lserver(Ci)T2=(Lserver(Ci)*M)/T2,M为T2时间内采集的次数并对该矩阵按照负载的大小升序排序,负载低于阈值φ的控制器生成一个新的轻度负载控制器列表Lload_light
②生成路由代价全局矩阵mat_root,将K个控制器与P个交换机构成路由代价全局矩阵,路由代价表示迁移至新的控制器后,packet_in消息从交换机路由至新控制器的代价,其计算如下:
migra_price=α*delay+β*bandwidth+γ*load,其中α+β+γ=1
③对于控制器Ci,迁移规划系统发送的轻度负载控制器列表Lload_light至Ci,同时从路由代价全局矩阵抽取Ci控制器下各交换机到Lload_light列表中各控制器的路由代价矩阵mat_routei
(5)当控制器Ci的过载时,执行负载均衡过程,过程描述如下:
while(Loadcurrent>overload_thri)
创建空闲控制器列表idlecontroller
while(idlecontroller为空)
向Lload_light列表中各个控制器发送消息,询问是否空闲将空闲控制器加入到列表idlecontroller
选择建流消息的平均请求速率最大的交换机作为待迁移交换机Sj根据待迁移交换机到空闲控制器的路由代价选择目的控制器Ci+1执行迁移。

Claims (6)

1.一种基于动态迁移的SDN网络负载均衡方法,其特征在于,使用一个负载均衡系统架构以进行所述基于动态迁移的SDN网络负载均衡,所述架构包括迁移规划系统和控制平面子系统,其中迁移规划系统包含迁移规划模块、全网视图生成模块、控制器状态信息存储模块和控制器通信接口模块;控制平面子系统由至少一个控制器组成,每个所述控制器包含北向接口、东西向通信接口、信息存储模块、状态信息收集测量与发送模块、评估与决策模块以及南向接口模块。
2.根据权利要求1所述的基于动态迁移的SDN网络负载均衡方法,其特征在于:每个控制器周期性地将自己的收集的状态信息主动通告给迁移规划系统;迁移规划系统负责存储以及生成全网控制器负载信息以及交换机到各控制器的路由代价信息,以降低对控制器计算和存储资源消耗。
3.根据权利要求2所述的基于动态迁移的SDN网络负载均衡方法,其特征在于:迁移规划系统依据全网控制器的负载信息推举出负载较轻的控制器列表,然后将列表和交换机迁移的路由代价信息提前通告给各个控制器,以降低控制器的决策时延。
4.根据权利要求3所述的基于动态迁移的SDN网络负载均衡方法,其特征在于:过载控制器在作出迁移交换机决策前,向负载较轻的控制器列表中的控制器发送询问消息,询问其是否处于迁移周期内,以防止多个过载控制器同时决策将交换机迁移至同一个目的控制器。
5.根据权利要求4所述的基于动态迁移的SDN网络负载均衡方法,其特征在于:控制器的评估和决策模块引入滑动窗口的机制,该滑动窗口中储存了过去一定时间内每个周期采集的控制器负载信息,根据滑动窗口中储存的数值,计算滑动窗口时间内控制器的平均负载,并以该平均负载是否大于所设定的负载阈值作为是否过载的判定条件,以减少控制器负载瞬时波动较大带来的不必要的迁移操作。
6.根据权利要求1所述的基于动态迁移的SDN网络负载均衡方法,其特征在于:由于控制器负载主要来自于对交换机消息的处理,根据OpenFlow协议,建流请求消息所占的比例最大,因此将建流消息的请求速率作为衡量控制器负载的主要因素。
CN201710800852.2A 2017-09-07 2017-09-07 一种基于动态迁移的sdn网络负载均衡方法 Active CN107612771B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710800852.2A CN107612771B (zh) 2017-09-07 2017-09-07 一种基于动态迁移的sdn网络负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710800852.2A CN107612771B (zh) 2017-09-07 2017-09-07 一种基于动态迁移的sdn网络负载均衡方法

Publications (2)

Publication Number Publication Date
CN107612771A true CN107612771A (zh) 2018-01-19
CN107612771B CN107612771B (zh) 2020-11-17

Family

ID=61062327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710800852.2A Active CN107612771B (zh) 2017-09-07 2017-09-07 一种基于动态迁移的sdn网络负载均衡方法

Country Status (1)

Country Link
CN (1) CN107612771B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108848513A (zh) * 2018-05-07 2018-11-20 清华大学 通信网络中用户终端与控制器的匹配方法、装置及系统
CN110099126A (zh) * 2019-05-13 2019-08-06 广东工业大学 一种多控制器共识方法、装置及系统
CN110365543A (zh) * 2019-08-01 2019-10-22 北京邮电大学 一种角色变更方法及装置
CN111565214A (zh) * 2020-03-06 2020-08-21 国网重庆市电力公司南岸供电分公司 一种软件定义网络负载均衡方法、系统及装置
CN113301143A (zh) * 2021-05-21 2021-08-24 河南工学院 一种基于稳定匹配的sdn分布式控制平面负载均衡方法
CN113328889A (zh) * 2021-05-31 2021-08-31 河南财政金融学院 一种软件定义网络中控制层架构分布式优化方法
CN114143209A (zh) * 2021-11-08 2022-03-04 浙江大学 一种网络测量中控制通道弹性扩展系统和方法
CN114338537A (zh) * 2021-12-29 2022-04-12 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统
CN115629717A (zh) * 2022-12-08 2023-01-20 四川汉唐云分布式存储技术有限公司 一种基于分布式存储的负载均衡方法和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503826A (zh) * 2015-01-04 2015-04-08 中国联合网络通信集团有限公司 一种云计算数据中心的虚拟机映射方法及装置
CN106027410A (zh) * 2016-07-28 2016-10-12 北京邮电大学 一种控制器负载均衡的方法及装置
CN106657416A (zh) * 2017-03-02 2017-05-10 北京邮电大学 一种控制器负载均衡方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503826A (zh) * 2015-01-04 2015-04-08 中国联合网络通信集团有限公司 一种云计算数据中心的虚拟机映射方法及装置
CN106027410A (zh) * 2016-07-28 2016-10-12 北京邮电大学 一种控制器负载均衡的方法及装置
CN106657416A (zh) * 2017-03-02 2017-05-10 北京邮电大学 一种控制器负载均衡方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHAMIM AHMED等: "《Orchestration Algorithms for Network-assisted》", 《PROCEEDINGS OF INTERNATIONAL CONFERENCE ON ELECTRICAL INFORMATION AND COMMUNICATION TECHNOLOGY》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108848513A (zh) * 2018-05-07 2018-11-20 清华大学 通信网络中用户终端与控制器的匹配方法、装置及系统
CN110099126A (zh) * 2019-05-13 2019-08-06 广东工业大学 一种多控制器共识方法、装置及系统
CN110365543A (zh) * 2019-08-01 2019-10-22 北京邮电大学 一种角色变更方法及装置
CN111565214A (zh) * 2020-03-06 2020-08-21 国网重庆市电力公司南岸供电分公司 一种软件定义网络负载均衡方法、系统及装置
CN113301143A (zh) * 2021-05-21 2021-08-24 河南工学院 一种基于稳定匹配的sdn分布式控制平面负载均衡方法
CN113328889A (zh) * 2021-05-31 2021-08-31 河南财政金融学院 一种软件定义网络中控制层架构分布式优化方法
CN113328889B (zh) * 2021-05-31 2022-06-28 河南财政金融学院 一种软件定义网络中控制层架构分布式优化方法
CN114143209A (zh) * 2021-11-08 2022-03-04 浙江大学 一种网络测量中控制通道弹性扩展系统和方法
CN114338537A (zh) * 2021-12-29 2022-04-12 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统
CN114338537B (zh) * 2021-12-29 2024-01-19 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统
CN115629717A (zh) * 2022-12-08 2023-01-20 四川汉唐云分布式存储技术有限公司 一种基于分布式存储的负载均衡方法和存储介质

Also Published As

Publication number Publication date
CN107612771B (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
CN107612771A (zh) 一种基于动态迁移的sdn网络负载均衡方法
Zhou et al. Load balancing for multiple controllers in SDN based on switches group
Liang et al. Scalable and crash-tolerant load balancing based on switch migration for multiple open flow controllers
Wang et al. Load-balancing routing in software defined networks with multiple controllers
JP5324637B2 (ja) 動的フローレットスケジューリングシステム、フロースケジューリング方法、及びフロースケジューリングプログラム
CN108900428A (zh) 基于交换机动态迁移的控制器负载均衡方法
CN109062668B (zh) 一种基于5g接入网络的多优先级的虚拟网络功能迁移方法
CN114567598A (zh) 一种基于深度学习和跨域协作的负载均衡方法及装置
Liu Intelligent routing based on deep reinforcement learning in software-defined data-center networks
CN113645146B (zh) 基于新流密度的软件定义网络控制器负载均衡方法及系统
CN104468390A (zh) 软件定义网络中基于分布—集中式架构模型的多控制负载均衡的方法和系统
CN109286528A (zh) 一种基于时延的sdn网络多控制器部署方法
Zhao et al. PLOFR: An online flow route framework for power saving and load balance in SDN
CN104539744A (zh) 一种两阶段协作的媒体边缘云调度方法及装置
CN102480502B (zh) 一种i/o负载均衡方法及i/o服务器
Liu et al. Service resource management in edge computing based on microservices
Zhong et al. Dynamic load-balancing vertical control for a large-scale software-defined Internet of Things
US10474644B2 (en) Systems and methods for optimizing selection of a replication data node in a distributed file system
CN111092821A (zh) 一种基于动态迁移的sdn网络负载均衡方法
Li et al. Energy consumption averaging and minimization for the software defined wireless sensor networks with edge computing
Wu Deep reinforcement learning based multi-layered traffic scheduling scheme in data center networks
CN106879022B (zh) 无线接入网的基带单元池的资源分配方法和装置
Wu et al. Optimization design and realization of ceph storage system based on software defined network
Yang et al. Dynamic load balancing of multiple controller based on intelligent collaboration in sdn
CN108011838B (zh) 基于响应时间的sdn多控制器负载均衡方法

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
TR01 Transfer of patent right

Effective date of registration: 20240410

Address after: 518057 room 501-7, building 8, Shenzhen Software Park, No. 2, Gaoxin Zhonger Road, Maling community, Yuehai street, Nanshan District, Shenzhen, Guangdong

Patentee after: Shenzhen yilingke Network Security Co.,Ltd.

Country or region after: China

Address before: 510062 Dongfeng East Road, Yuexiu District, Guangzhou, Guangdong 729

Patentee before: GUANGDONG University OF TECHNOLOGY

Country or region before: China

TR01 Transfer of patent right