CN107979540A - 一种sdn网络多控制器的负载均衡方法及系统 - Google Patents
一种sdn网络多控制器的负载均衡方法及系统 Download PDFInfo
- Publication number
- CN107979540A CN107979540A CN201710954226.9A CN201710954226A CN107979540A CN 107979540 A CN107979540 A CN 107979540A CN 201710954226 A CN201710954226 A CN 201710954226A CN 107979540 A CN107979540 A CN 107979540A
- Authority
- CN
- China
- Prior art keywords
- learning
- controller
- load
- mrow
- qos
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 210000004556 brain Anatomy 0.000 claims abstract description 8
- 230000009471 action Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract 1
- 239000012141 concentrate Substances 0.000 abstract 1
- 238000013480 data collection Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 230000011664 signaling Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2466—Traffic characterised by specific attributes, e.g. priority or QoS using signalling traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种SDN网络多控制器的负载均衡方法及系统,所述方法包括:S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。本发明提供的SDN网络多控制器的负载均衡方法及系统,通过在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM能够基于QoS进行自主学习,从而自主的进行负载分配,避免了频繁的数据交换所产生的时延。
Description
技术领域
本发明涉及网络信息技术领域,更具体地,涉及一种SDN网络多控制器的负载均衡方法及系统。
背景技术
传统网络在TCP/IP协议体系下,当前网络得到了前所未有的发展,但是随着信息通信技术(Information Communications Technology,ICT)的发展,对网络的需求更趋向于灵活性和可扩展性。为了适应用户的需求,未来网络技术应运而生,其中软件定义网络(Software Defined Networking,SDN)被当成其中最具影响力的未来网络架构之一。SDN解耦了网络的控制平面和数据平面;将网络的底层硬件加以抽象,抽象成为可以由控制平面进行统一调度的物理资源;向网络增加了可编程能力,可以通过简单的软件方式对网络进行管理和操作等等。
但是SDN作为新兴的未来网络架构仍处于最初的发展阶段,一些关键问题还没有得到妥善的解决,其中之一就包括控制平面的可扩展性问题,单一控制器已经成为SDN进一步发展的瓶颈。当一个全新的数据包到达交换机时,由于交换机缺少路由和选路能力,因此需要通过Packet-In消息向控制器上传这一数据包,由控制器下发流表从而实现对该数据包的转发,但是一旦网络规模增大,交换机上传的Packet-In消息的个数也急剧增加,那么单一控制器将会产生巨大的处理问题。许多研究就解决这一问题达成了广泛的共识,那就是采用多控制器的方式实现逻辑上集中、物理上分布的多控制器控制模式。
但是,现有技术的SDN网络多控制器的负载均衡采用的是先得到当前状态下控制器的负载情况之后,再对负载方案进行调整从而达到负载均衡的目的,这种负载均衡方法需要在多个控制器之间进行频繁的信令交换,但频繁的信令交换会引入大量的额外时延,从而影响应用的服务质量(Quality of Service,QoS)。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的一种SDN网络多控制器的负载均衡方法,包括:
S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;
S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
其中,步骤S3之前所述方法还包括:
对所述待处理数据集中各个数据进行优先级标记;
基于所述优先级标记,对所述待处理数据集中各个数据进行排序。
其中,步骤S3之后所述方法还包括:
基于预设的服务质量QoS学习模块,对负载分配后所述SDN网络的控制平面发送的各个控制器负载反馈信息再次学习。
其中,步骤S2之前所述方法还包括:
获取所述各个控制器负载反馈信息的QoS消息的等待时间和普通消息的丢包率;
基于所述QoS消息的等待时间和普通消息的丢包率,建立所述QoS学习模块。
其中,所述QoS学习模块包括学习主体,所述学习主体为:
subject to
i=1,2,...N1,
其中,表示QoS消息i在t时刻的等待时间,分别表示普通消息k和QoS消息i在t时刻的丢包率,T表示系统的运行时间,N1和N2分别表示QoS消息和普通消息的总个数,k1和k2表示加权因子并且k1+k2=1。
其中,所述QoS学习模块还包括状态空间、动作空间和奖励函数,步骤S2具体包括:
基于所述各个控制器负载反馈信息,更新所述状态空间;
将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间;
基于更新后的动作空间,确定所述各个控制器的负载分配方式。
其中,所述将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间包括:
将所述状态空间和所述奖励函数输入所述学习主体;
基于预设的Q-learning算法对所述学习主体进行学习,当所述各个控制器负载反馈信息中QoS丢包率为零时学习结束,以更新所述动作空间。
根据本发明的第二方面,提供一种SDN网络多控制器的负载均衡系统,在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM包括信息数据库模块和学习模块;
所述信息数据库模块获取所述SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
所述信息数据库模块将所述负载反馈信息发送至所述CM的学习模块,以使所述CM的学习模块进行学习;
基于所述学习模块的学习结果,所述信息数据库模块将所述待处理数据集中各个数据分配至所述SDN网络的控制平面中各个控制器,以使所述各个控制器之间负载均衡。
根据本发明的第三方面,提供一种计算机程序产品,包括程序代码,所述程序代码用于执行上述一种SDN网络多控制器的负载均衡方法。
根据本发明的第四方面,提供一种非暂态计算机可读存储介质,用于存储如前所述的计算机程序。
本发明提供的SDN网络多控制器的负载均衡方法及系统,通过在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM能够基于QoS进行自主学习,从而自主的进行负载分配,避免了频繁的数据交换所产生的时延。
附图说明
图1是本发明实施例提供的一种SDN网络多控制器的负载均衡方法流程图;
图2是本发明实施例提供的一种SDN网络示意图;
图3是本发明实施例提供的不同消息到达速率的情况下,与其他方案在负载抖动方面的性能差异示意图;
图4是本发明实施例提供的不同消息到达速率的情况下,与其他传统方案在Qos消息等待时间方面的性能差异示意图;
图5是本发明实施例提供的SDN网络多控制器的负载均衡系统结构图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1是本发明实施例提供的一种SDN网络多控制器的负载均衡方法流程图,如图1所示,所述方法包括:
S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;
S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
现有技术中,对于多控制器负载均衡的研究几乎都需要与控制器进行频繁的信令交换,得到当前状态下控制器的负载情况之后,再对负载方案进行调整从而达到负载均衡的目的。
但是,通过实时的信令交换来获得控制器的当前负载,虽然可以大大提高负载均衡的可靠性,但是信令的频繁交换会引入大量的额外时延,这对于要求QoS的应用来说是不可容忍的,并且使用传统的负载均衡方法,在额外时延和负载均衡效果方面存在此消彼长的权衡问题。
具体的,当算法频繁的进行了信令的交互,这就直接导致了较好的负载均衡效果,但是也因为引入了较高的额外时延,反之亦然。
针对上述现有技术的问题,本发明实施例通过在SDN网络的控制平面和数据平面之间设置有控制器大脑(controller mind,CM),所述CM能够基于QoS进行自主学习,从而自主的进行负载分配,避免了频繁的数据交换所产生的时延。
可以理解的是,传统的SDN网络为三层网络结构,分别为数据平面、控制平面以及应用平面,所述数据平面主要生成SDN网络中的必要数据,并将数据发送至控制平面供控制平面中的多个控制器进行处理,最后控制器将处理结果发送至应用平面完成数据通信。
图2是本发明实施例提供的一种SDN网络示意图,如图2所示,本发明实施例在SDN网络的控制平面和数据平面之间设置了一个控制器大脑CM,从而数据平面需要上传的Packet-in数据包和其他的消息首先需要通过CM的透明处理再上传到控制平面上。
具体的,所述CM包括了信息数据库模块(Info-base)和学习模块(learningmodule),步骤S1中,所述获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息为信息数据库模块执行,所述信息数据库模块记录了每个控制器的负载变化情况,并将这些数据提供给学习模块进行训练学习。
进一步的,本发明实施例以所述各个控制器负载反馈信息中QoS丢包率为零为约束条件进行学习,并基于不同条件设置相应的学习次数,每一次学习过程完成一次迭代,直至达到预设的学习次数。步骤S2中,即在所述学习模块中设置有QoS学习模块,根据信息数据库模块提供的各个控制器的负载反馈信息,进行强化学习,其中,所述负载反馈信息主要包括:Flow-mod消息。
可以理解的是,使用强化学习的方法对来自于信息数据库模块的负载反馈信息进行训练学习,可以得到基于QoS的负载分配策略并将该学习结果提供给信息数据库模块,从而指导消息在多控制器之间的分配。
步骤S3中,信息数据库模块得到学习模块的学习结果,从而将数据平面发送的数据进行分配。
可以理解的是,由于经过了强化学习过程,因而分配的结果将会考虑到QoS消息,从而避免了频繁的数据交换所产生的时延。
在上述实施例的基础上,步骤S3之前所述方法还包括:
对所述待处理数据集中各个数据进行优先级标记;
基于所述优先级标记,对所述待处理数据集中各个数据进行排序。
需要说明的是,本发明实施例提供的控制器大脑还包括重新排队模块(re-queuing module),所述重新排队模块主要将对所述待处理数据集中各个数据进行优先级标记;基于所述优先级标记,对所述待处理数据集中各个数据进行排序。
进一步的,所述重新排队模块包括:标记模块(Mark)、分类模块(Classify)以及加权平均排队模块(WFQ)。
其中,所述标记模块从数据平面到达的Packet-in消息根据优先级进行标记,标记的依据包括:Packet-in消息包头的源/目的MAC地址、IP地址、TCP/UDP端口号等。
所述分类模块对标记好的消息进行分类,分类的标准根据存在优先级别的数量进行确定,一般的,有多少中优先级别即有多少种类别。
所述加权平均排队模块是对标记以及分类好的消息进行重新排队,重新排队时遵循的方法的加权平均排队法。所述加权平均排队法为:为每一个分类好的队列i分配一个权重wi,每个队列按顺序依次把队首的分组发送到链路中,遇到队列空就跳过去,但是根据各自的优先级不同,每个队列被分配到的服务时间也不同,每个队列的服务时间为其中分母为所有非空队列的权重求和。
可以理解的是,所述重新排队模块能够将重新排队后的待处理数据集发送至信息数据库模块,信息数据库模块再将重新排队候的消息上传到控制平面。
在上述实施例的基础上,步骤S3之后所述方法还包括:
基于预设的服务质量QoS学习模块,对负载分配后所述SDN网络的控制平面发送的各个控制器负载反馈信息再次学习。
可以理解的是,学习模块和信息数据库模块的过程是一个循环过程,信息数据库模块不断从控制平面获得负载反馈信息,以指导学习模块进行学习,学习模块不断改变学习结果,从而指导信息数据库模块分配。
通过本发明实施例提供的不断学习的过程,能够不断更新负载分配的方案,从而取得更佳的学习效果,使得负载分配更加均衡。
在上述实施例的基础上,步骤S2之前所述方法还包括:
获取所述各个控制器负载反馈信息的QoS消息的等待时间和普通消息的丢包率;
基于所述QoS消息的等待时间和普通消息的丢包率,建立所述QoS学习模块。
需要说明的是,本发明实施例提供的QoS学习模块主要针对于现有技术中未能考虑应用的服务质量,从而造成的影响,所以为了提高应用的服务质量,本发明实施例优选的将QoS消息的丢包率为零作为学习模块的约束条件。
具体的,建立QoS学习模块的学习主体如下式所示:
subject to
i=1,2,...N1,
其中,表示QoS消息i在t时刻的等待时间,分别表示普通消息k和QoS消息i在t时刻的丢包率,T表示系统的运行时间,N1和N2分别表示QoS消息和普通消息的总个数,k1和k2表示加权因子并且k1+k2=1。
进一步的,QoS消息i在t时刻的丢包率通过下式计算可得:
其中,Q1(t)表示t时刻QoS消息的个数,Q2(t)表示t时刻普通消息的个数,Ci表示控制器i可容纳的最大排队个数,CN表示系统中控制器的总数。
那么,通过本发明实施例上述设置的约束条件,能够保证QoS消息的丢包率为零,即此时应用的服务质量可以判定为最佳。
在上述实施例的基础上,所述QoS学习模块还包括状态空间、动作空间和奖励函数,步骤S2具体包括:
基于所述各个控制器负载反馈信息,更新所述状态空间;
将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间;
基于更新后的动作空间,确定所述各个控制器的负载分配方式。
其中,所述状态空间的表达式为:
S={s=[Qincom,lc,qc],|Qincom∈Qlevel,lc∈Lc,qc∈Qc}、
Qlevel={Qos,best-effort}
其中,Qincom为到底消息的优先等级,Qlevel表示系统中所有优先等级的集合,Lc表示所有控制器当前负载情况的向量,Qc表示每个控制器上QoS消息的个数,best-effort表示尽力而为的消息,一般指代为低优先级。
所述动作空间的表达式为:
其中,A中的每一行表示动作空间中的一个动作,当A的值为1时表示将消息分配给该控制器,当A的值为0时表示不将消息分配给该控制器。
所述奖励函数的表达式为:
其中,Qqueue为队列中每个消息的优先级,k1和k2表示加权因子并且k1+k2=1。
具体的,将所述各个控制器负载反馈信息输入学习模块,从而更新状态空间的参数值,将对应状态空间和奖励函数输入学习主体,以对所述学习主体进行学习,从而更新所述动作空间,根据动作空间的更新结果获取学习后的各个控制器的负载分配方式。
在上述实施例的基础上,所述将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间包括:
将所述状态空间和所述奖励函数输入所述学习主体;
基于预设的Q-learning算法对所述学习主体进行学习,当所述各个控制器负载反馈信息中QoS丢包率为零时学习结束,以更新所述动作空间。
所述Q-learning算法即为传统的迭代学习算法,其伪代码如下:
初始化Q矩阵,并且设定其他参数、学习次数k0、终止状态s;
for k=1:k0do;
随机选择初始状态st;
While st!=s;
根据ε-贪婪准则选择动作at,得到立即回报rt和下一状态st+1
对Q矩阵进行更新:
st+1赋值给st;
end while;
end for。
进一步的,本发明实施例提供的基于QoS学习模型的负载分配方案能够有效的降低负载抖动,并且很大程度上提高的时间效率。
具体的,将本发明实施例提供的方案与其他传统方案进行比对,被比较的对象包括:基于动态权重的提供Qos的负载均衡方案、只提供Qos的方案、不提供Qos但是基于最小连接数的负载均衡方案。
图3是本发明实施例提供的不同消息到达速率的情况下,与其他方案在负载抖动方面的性能差异示意图,如图3所示,本发明实施例提供的方案的负载抖动最小,进而证明本发明实施例所提供的负载均衡效果是最好的。
图4是本发明实施例提供的不同消息到达速率的情况下,与其他传统方案在Qos消息等待时间方面的性能差异示意图,如图4所示,本发明实施例提供的方案中Qos消息的等待时间也是最小,进而证明本发明实施例提供的方案在时间效率方面也达到了最好。
图5是本发明实施例提供的SDN网络多控制器的负载均衡系统结构图,如图5所示,所述系统在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM包括信息数据库模块1和学习模块2;
所述信息数据库模块1获取所述SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
所述信息数据库模块1将所述负载反馈信息发送至所述CM的学习模块2,以使所述CM的学习模块2进行学习;
基于所述学习模块2的学习结果,所述信息数据库模块1将所述待处理数据集中各个数据分配至所述SDN网络的控制平面中各个控制器,以使所述各个控制器之间负载均衡。
具体的,信息数据库模块1和学习模块2的工作方法可以参见上述实施例,本发明在此不再赘述。
本发明提供的SDN网络多控制器的负载均衡系统,通过在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM能够基于QoS进行自主学习,从而自主的进行负载分配,避免了频繁的数据交换所产生的时延。
本发明实施例提供一种SDN网络多控制器的负载均衡系统,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令以执行上述各方法实施例所提供的方法,例如包括:S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种SDN网络多控制器的负载均衡方法,其特征在于,包括:
S1、获取SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
S2、基于预设的服务质量QoS学习模块,对所述各个控制器负载反馈信息进行预设次数的学习,以得到所述各个控制器的负载分配方式;
S3、将所述待处理数据集中各个数据,按照所述各个控制器的负载分配方式进行负载分配。
2.根据权利要求1所述的方法,其特征在于,步骤S3之前所述方法还包括:
对所述待处理数据集中各个数据进行优先级标记;
基于所述优先级标记,对所述待处理数据集中各个数据进行排序。
3.根据权利要求1所述的方法,其特征在于,步骤S3之后所述方法还包括:
基于预设的服务质量QoS学习模块,对负载分配后所述SDN网络的控制平面发送的各个控制器负载反馈信息再次学习。
4.根据权利要求1所述的方法,其特征在于,步骤S2之前所述方法还包括:
获取所述各个控制器负载反馈信息的QoS消息的等待时间和普通消息的丢包率;
基于所述QoS消息的等待时间和普通消息的丢包率,建立所述QoS学习模块。
5.根据权利要求4所述的方法,其特征在于,所述QoS学习模块包括学习主体,所述学习主体为:
<mfenced open = "" close = "">
<mtable>
<mtr>
<mtd>
<mi>min</mi>
</mtd>
<mtd>
<mrow>
<msub>
<mi>k</mi>
<mn>1</mn>
</msub>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>t</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>T</mi>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>N</mi>
<mn>1</mn>
</msub>
</munderover>
<msubsup>
<mi>TQ</mi>
<mi>i</mi>
<mn>1</mn>
</msubsup>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msub>
<mi>k</mi>
<mn>2</mn>
</msub>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>t</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>T</mi>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>N</mi>
<mn>2</mn>
</msub>
</munderover>
<msubsup>
<mi>PLQ</mi>
<mi>k</mi>
<mn>2</mn>
</msubsup>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
subject to
<mrow>
<msubsup>
<mi>PLQ</mi>
<mi>i</mi>
<mn>1</mn>
</msubsup>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>t</mi>
<mo>,</mo>
<mi>a</mi>
<mi>n</mi>
<mi>d</mi>
<mo>,</mo>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>...</mn>
<msub>
<mi>N</mi>
<mn>1</mn>
</msub>
<mo>,</mo>
</mrow>
其中,表示QoS消息i在t时刻的等待时间,分别表示普通消息k和QoS消息i在t时刻的丢包率,T表示系统的运行时间,N1和N2分别表示QoS消息和普通消息的总个数,k1和k2表示加权因子并且k1+k2=1。
6.根据权利要求5所述的方法,其特征在于,所述QoS学习模块还包括状态空间、动作空间和奖励函数,步骤S2具体包括:
基于所述各个控制器负载反馈信息,更新所述状态空间;
将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间;
基于更新后的动作空间,确定所述各个控制器的负载分配方式。
7.根据权利要求6所述的方法,其特征在于,所述将所述状态空间和所述奖励函数输入所述学习主体中,并设置所述学习主体的学习次数,以更新所述动作空间包括:
将所述状态空间和所述奖励函数输入所述学习主体;
基于预设的Q-learning算法对所述学习主体进行学习,当所述各个控制器负载反馈信息中QoS丢包率为零时学习结束,以更新所述动作空间。
8.一种SDN网络多控制器的负载均衡系统,其特征在于,在SDN网络的控制平面和数据平面之间设置有控制器大脑CM,所述CM包括信息数据库模块和学习模块;
所述信息数据库模块获取所述SDN网络的数据平面发送的待处理数据集以及所述SDN网络的控制平面发送的各个控制器负载反馈信息;
所述信息数据库模块将所述负载反馈信息发送至所述CM的学习模块,以使所述CM的学习模块进行学习;
基于所述学习模块的学习结果,所述信息数据库模块将所述待处理数据集中各个数据分配至所述SDN网络的控制平面中各个控制器,以使所述各个控制器之间负载均衡。
9.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如权利要求1至7任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710954226.9A CN107979540B (zh) | 2017-10-13 | 2017-10-13 | 一种sdn网络多控制器的负载均衡方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710954226.9A CN107979540B (zh) | 2017-10-13 | 2017-10-13 | 一种sdn网络多控制器的负载均衡方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107979540A true CN107979540A (zh) | 2018-05-01 |
CN107979540B CN107979540B (zh) | 2019-12-24 |
Family
ID=62012449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710954226.9A Active CN107979540B (zh) | 2017-10-13 | 2017-10-13 | 一种sdn网络多控制器的负载均衡方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107979540B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109496305A (zh) * | 2018-08-01 | 2019-03-19 | 东莞理工学院 | 连续动作空间上的纳什均衡策略及社交网络舆论演变模型 |
CN111694662A (zh) * | 2020-05-26 | 2020-09-22 | 西安工程大学 | 基于强化学习的dids中低负载与丢包率的平衡方法 |
CN114500386A (zh) * | 2022-01-18 | 2022-05-13 | 南京邮电大学 | 一种基于强化学习和sdn的负载均衡系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468390A (zh) * | 2014-11-28 | 2015-03-25 | 北京邮电大学 | 软件定义网络中基于分布—集中式架构模型的多控制负载均衡的方法和系统 |
CN106549805A (zh) * | 2016-11-02 | 2017-03-29 | 北京邮电大学 | 一种sdn网络架构及其通信方法 |
CN106572170A (zh) * | 2016-10-28 | 2017-04-19 | 中国电子科技集团公司第五十四研究所 | 一种控制器及sdn分层多控制器下的动态负载均衡方法 |
CN107105455A (zh) * | 2017-04-26 | 2017-08-29 | 重庆邮电大学 | 一种基于自回程感知的用户接入负载均衡方法 |
-
2017
- 2017-10-13 CN CN201710954226.9A patent/CN107979540B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468390A (zh) * | 2014-11-28 | 2015-03-25 | 北京邮电大学 | 软件定义网络中基于分布—集中式架构模型的多控制负载均衡的方法和系统 |
CN106572170A (zh) * | 2016-10-28 | 2017-04-19 | 中国电子科技集团公司第五十四研究所 | 一种控制器及sdn分层多控制器下的动态负载均衡方法 |
CN106549805A (zh) * | 2016-11-02 | 2017-03-29 | 北京邮电大学 | 一种sdn网络架构及其通信方法 |
CN107105455A (zh) * | 2017-04-26 | 2017-08-29 | 重庆邮电大学 | 一种基于自回程感知的用户接入负载均衡方法 |
Non-Patent Citations (3)
Title |
---|
FEDERICO CIMORELLI,ET AL.: "A Distributed Load Balancing Algorithm for the Control Plane in Software Defined Networking", 《24TH MEDITERRANEAN CONFERENCE ON CONTROL AND AUTOMATION (MED)》 * |
NGUYEN TIEN HAI, DONG-SEONG KIM: "Efficient Load Balancing for Multi-Controller in SDN-based Mission-critical Networks", 《2016 IEEE 14TH INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS(INDIN)》 * |
赵季红 等: "SDN中基于Q-learning的动态交换机迁移算法", 《电视技术》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109496305A (zh) * | 2018-08-01 | 2019-03-19 | 东莞理工学院 | 连续动作空间上的纳什均衡策略及社交网络舆论演变模型 |
CN109496305B (zh) * | 2018-08-01 | 2022-05-13 | 东莞理工学院 | 一种社交网络舆论演变方法 |
CN111694662A (zh) * | 2020-05-26 | 2020-09-22 | 西安工程大学 | 基于强化学习的dids中低负载与丢包率的平衡方法 |
CN111694662B (zh) * | 2020-05-26 | 2023-04-25 | 陕西森印多西网络科技有限责任公司 | 基于强化学习的dids中低负载与丢包率的平衡方法 |
CN114500386A (zh) * | 2022-01-18 | 2022-05-13 | 南京邮电大学 | 一种基于强化学习和sdn的负载均衡系统 |
CN114500386B (zh) * | 2022-01-18 | 2023-05-30 | 南京邮电大学 | 一种基于强化学习和sdn的负载均衡系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107979540B (zh) | 2019-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10805804B2 (en) | Network control method, apparatus, and system, and storage medium | |
CN110505099B (zh) | 一种基于迁移a-c学习的服务功能链部署方法 | |
CN109104373B (zh) | 网络拥塞的处理方法、装置及系统 | |
CN112486690B (zh) | 一种适用于工业物联网的边缘计算资源分配方法 | |
CN110708259B (zh) | 自动调整队列阈值的信息无感知Coflow调度系统及其调度方法 | |
CN107979540B (zh) | 一种sdn网络多控制器的负载均衡方法及系统 | |
Otokura et al. | Application of evolutionary mechanism to dynamic virtual network function placement | |
US20220240157A1 (en) | Methods and Apparatus for Data Traffic Routing | |
CN107431667A (zh) | 在网络设备中调度数据包 | |
CN108684046A (zh) | 一种基于随机学习的接入网服务功能链部署方法 | |
Villota-Jacome et al. | Admission control for 5G core network slicing based on deep reinforcement learning | |
CN115314399B (zh) | 一种基于逆强化学习的数据中心流量调度方法 | |
CN116489104A (zh) | 一种基于动态优先级的流量调度方法与系统 | |
Yu et al. | Deep reinforcement learning-based deterministic routing and scheduling for mixed-criticality flows | |
KR20220042927A (ko) | 인공지능을 이용하여 복수의 단말들의 작업들과 관련된 복수의 패킷들을 스케줄링하는 방법 및 이를 수행하는 전자 장치 | |
WO2022062648A1 (zh) | 一种自动驾驶仿真任务调度方法、装置、设备及可读介质 | |
CN117082008B (zh) | 虚拟弹性网络数据传输调度方法、计算机装置及存储介质 | |
CN110971451B (zh) | Nfv资源分配方法 | |
US20220345377A1 (en) | Control apparatus, control method, and system | |
Forero et al. | Active queue-management policies for undersea networking via deep reinforcement learning | |
CN108040018B (zh) | 一种网络功能虚拟化下的细粒度网络流调度方法及系统 | |
CN107360483B (zh) | 一种用于软件定义光网络的控制器负载均衡算法 | |
Wang et al. | Towards adaptive packet scheduler with deep-q reinforcement learning | |
Pan et al. | Deep reinforcement learning-based dynamic bandwidth allocation in weighted fair queues of routers | |
Sedaghat et al. | R2T-DSDN: reliable real-time distributed controller-based 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 |