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

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

Info

Publication number
CN111092821A
CN111092821A CN201811245884.1A CN201811245884A CN111092821A CN 111092821 A CN111092821 A CN 111092821A CN 201811245884 A CN201811245884 A CN 201811245884A CN 111092821 A CN111092821 A CN 111092821A
Authority
CN
China
Prior art keywords
controller
migration
load
load balancing
switch
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.)
Withdrawn
Application number
CN201811245884.1A
Other languages
English (en)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201811245884.1A priority Critical patent/CN111092821A/zh
Publication of CN111092821A publication Critical patent/CN111092821A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • 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协议,建流请求消息所占的比例最大,因此将建流消息的请求速率作为衡量控制器负载的主要因素。
CN201811245884.1A 2018-10-24 2018-10-24 一种基于动态迁移的sdn网络负载均衡方法 Withdrawn CN111092821A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811245884.1A CN111092821A (zh) 2018-10-24 2018-10-24 一种基于动态迁移的sdn网络负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811245884.1A CN111092821A (zh) 2018-10-24 2018-10-24 一种基于动态迁移的sdn网络负载均衡方法

Publications (1)

Publication Number Publication Date
CN111092821A true CN111092821A (zh) 2020-05-01

Family

ID=70391722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811245884.1A Withdrawn CN111092821A (zh) 2018-10-24 2018-10-24 一种基于动态迁移的sdn网络负载均衡方法

Country Status (1)

Country Link
CN (1) CN111092821A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111711576A (zh) * 2020-06-30 2020-09-25 西安电子科技大学 基于高效交换机迁移的控制器负载均衡系统与方法
CN114338537A (zh) * 2021-12-29 2022-04-12 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111711576A (zh) * 2020-06-30 2020-09-25 西安电子科技大学 基于高效交换机迁移的控制器负载均衡系统与方法
CN114338537A (zh) * 2021-12-29 2022-04-12 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统
CN114338537B (zh) * 2021-12-29 2024-01-19 安徽大学 基于预测的sdn负载均衡双重权重交换机迁移方法及系统

Similar Documents

Publication Publication Date Title
CN107612771B (zh) 一种基于动态迁移的sdn网络负载均衡方法
Zhou et al. Load balancing for multiple controllers in SDN based on switches group
CN110231976B (zh) 一种基于负载预测的边缘计算平台容器部署方法及系统
WO2023040022A1 (zh) 一种在随机网络中基于算网协同的分布式计算卸载方法
Xu et al. Enhancing kubernetes automated scheduling with deep learning and reinforcement techniques for large-scale cloud computing optimization
CN103188345A (zh) 分布式动态负载管理系统和方法
CN109936473B (zh) 基于深度学习预测的分布计算系统及其运行方法
JP5113093B2 (ja) ネットワークの管理システム及び管理方法
CN102622303A (zh) 一种内存过载控制的方法及装置
CN102857577A (zh) 一种集群存储自动负载均衡的系统及方法
CN110784366B (zh) Sdn中基于immac算法的交换机迁移方法
CN103944997B (zh) 结合随机抽样和虚拟化技术的负载均衡方法
CN113157459A (zh) 一种基于云服务的负载信息处理方法及系统
CN102480502B (zh) 一种i/o负载均衡方法及i/o服务器
CN114567598A (zh) 一种基于深度学习和跨域协作的负载均衡方法及装置
Gomathi et al. An efficient data packet scheduling schemes in wireless sensor networks
CN104539730A (zh) 一种hdfs中面向视频的负载均衡方法
CN111092821A (zh) 一种基于动态迁移的sdn网络负载均衡方法
CN105592156A (zh) 面向网络功能的分布式弹性控制方法
Zheng et al. Adaptive resource scheduling mechanism in P2P file sharing system
CN101867580B (zh) 一种分配网络流量的方法及装置
CN110990160A (zh) 一种基于负荷预测的静态安全分析容器云弹性伸缩方法
Xiaohuan et al. An aggregate flow based scheduler in multi-task cooperated UAVs network
Li et al. Load Balancing Algorithm of SDN Controller Based on Dynamic Threshold
Zhu et al. Deep reinforcement learning-based edge computing offloading algorithm for software-defined IoT

Legal Events

Date Code Title Description
DD01 Delivery of document by public notice

Addressee: Yang Chenxi

Document name: Notice of Preliminary Confirmation Opinion on Abnormal Patent Application

DD01 Delivery of document by public notice
PB01 Publication
PB01 Publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20200501

WW01 Invention patent application withdrawn after publication