CN113572697B - 一种基于图卷积神经网络与深度强化学习的负载均衡方法 - Google Patents
一种基于图卷积神经网络与深度强化学习的负载均衡方法 Download PDFInfo
- Publication number
- CN113572697B CN113572697B CN202110819823.7A CN202110819823A CN113572697B CN 113572697 B CN113572697 B CN 113572697B CN 202110819823 A CN202110819823 A CN 202110819823A CN 113572697 B CN113572697 B CN 113572697B
- Authority
- CN
- China
- Prior art keywords
- information
- network
- factor
- acquiring
- graph
- 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
- 230000002787 reinforcement Effects 0.000 title claims abstract description 41
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000009471 action Effects 0.000 claims abstract description 44
- 239000011159 matrix material Substances 0.000 claims abstract description 20
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000013527 convolutional neural network Methods 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 8
- BTCSSZJGUNDROE-UHFFFAOYSA-N gamma-aminobutyric acid Chemical compound NCCCC(O)=O BTCSSZJGUNDROE-UHFFFAOYSA-N 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000003068 static effect Effects 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于图卷积神经网络与深度强化学习的负载均衡方法。所述基于图卷积神经网络与深度强化学习的负载均衡算法包括:获取网络状态无向图,所述网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;获取流信息;获取训练后的DQN决策模型;将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作。本申请将深度强化学习与图卷积神经网络结合并应用在负载均衡算法之中,使得模型不仅能够根据状态信息做出决策,同时考虑了网络的拓扑结构作为决策的因素,使得模型能够根据更全面的网络状态做出决策,提高了模型决策的性能。
Description
技术领域
本申请涉及SDN数据中心网络技术领域,具体涉及一种基于图卷积神经网络与深度强化学习的负载均衡方法以及基于图卷积神经网络与深度强化学习的负载均衡装置。
背景技术
随着信息技术的发展越来越快,我们已经进入了一个数据大爆炸的时代,网络中的各种例如图像、视频、文字、语音等信息数据越来越多,而大的互联网公司们为互联网上的用户们提供各种各样的服务,而这些服务产生的数据交互都需要数据中心网络的支持。数据中心网络不同对主机之间存在多条路径,由于数据中心网络的动态性,不确定性较大,负载均衡算法通过选择合适的路径路由网络中的流,使得网络的数据链路负载均衡,保证网络的稳定性。
SDN是一种新型的网络架构,其中央控制器可以掌控网络全局信息的特性非常符合数据中心网络的特征。SDN近年来被广泛应用于数据中心网络的部署,在SDN架构下,负载均衡的工作得到了很大的提升。然而,受限于计算路由路径的开销,网络流量的动态性等问题,网络中的负载均衡算法仍然具有响应慢、计算量大等问题。
因此,希望有一种技术方案来克服或至少减轻现有技术的至少一个上述缺陷。
发明内容
本发明的目的在于提供一种基于图卷积神经网络与深度强化学习的负载均衡方法来克服或至少减轻现有技术的至少一个上述缺陷。
本发明的一个方面,提供一种基于图卷积神经网络与深度强化学习的负载均衡方法,用于SDN数据中心网络,所述基于图卷积神经网络与深度强化学习的负载均衡算法包括:
获取网络状态无向图,在本实施例中,所述网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;
获取流信息;
获取训练后的DQN决策模型;
将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作。
可选地,所述获取网络状态无向图包括:
获取网络的链路信息,所述链路信息包括链路负载信息;
获取交换机的负载信息、延迟信息以及丢包率信息;
根据所述网络的链路信息以及交换机的负载信息、延迟信息以及丢包率信息生成所述网络状态无向图。
在本实施例中,交换机的负载信息、延迟信息以及丢包率信息生成交换机的特征矩阵,链路信息生成数据链路负载权值信息。
可选地,所述网络的链路负载信息包括:
获取预设时间段内的网络的各时间点的链路负载平均信息;
所述交换机的负载信息、延迟信息以及丢包率信息包括:
获取预设时间段内的网络的各时间点的负载平均信息;
获取预设时间段内的网络的各时间点的延迟平均信息;
获取预设时间段内的网络的各时间点的丢包率平均信息。
可选地,所述DQN决策模型包括三层图卷积神经网络以及两层卷积神经网络。
可选地,所述DQN决策模型采用了多奖励因子评估奖励,其中,多奖励因子评估奖励包括链路利用率的变化信息、延迟信息,丢包率信息以及平均负载信息。
可选地,所述将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取分流决策动作包括:
将所述流信息以及所述网络状态无向图输入至所述DQN决策模型;
所述DQN决策模型根据所述流信息以及所述网络状态无向图获取Q值表;
获取流信息中的源交换机地址以及目标交换机地址;
根据所述源交换机地址以及目标交换机地址获取动作集;
根据所述Q值表以e贪心策略从动作集中选择动作作为决策动作。
可选地,在所述将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作之后,所述基于图卷积神经网络与深度强化学习的负载均衡方法进一步包括:
获取执行所述决策动作后的网络状态;
根据所述决策动作后的网络状态获取奖励信息;
将所述执行所述决策动作后的网络状态以及奖励信息存储至训练用数据库。
本申请还提供了一种基于图卷积神经网络与深度强化学习的负载均衡装置,所述基于图卷积神经网络与深度强化学习的负载均衡装置包括:
网络状态无向图获取模块,所述网络状态无向图获取模块用于获取网络状态无向图,所述网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;
流信息获取模块,所述流信息获取模块用于获取流信息;
模型获取模块,所述模型获取模块用于获取训练后的DQN决策模型;
决策动作获取模块,所述决策动作获取模块用于将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作。
本申请还提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于图卷积神经网络与深度强化学习的负载均衡方法。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时能够实现如上所述的基于图卷积神经网络与深度强化学习的负载均衡方法。
有益效果:
本申请的基于图卷积神经网络与深度强化学习的负载均衡方法具有如下优点:
1、本申请将深度强化学习与图卷积神经网络结合并应用在负载均衡算法之中,使得模型不仅能够根据状态信息做出决策,同时考虑了网络的拓扑结构作为决策的因素,使得模型能够根据更全面的网络状态做出决策,提高了模型决策的性能。
2、本发明考虑了历史状态信息,将前数个时刻的状态的平均作为当前时刻的状态,使得模型能够感知网络流量变化在时间尺度上的相关性,提高了模型的性能。
3、本发明使用了多奖励因子,使得模型不仅关注了网络的负载均衡,同时在延迟、丢包率等QoS指标上也能够达到比较好的程度。
附图说明
图1为本申请一实施例的基于图卷积神经网络与深度强化学习的负载均衡方法的流程示意图。
图2是一种电子设备,用于实现图1所示的基于图卷积神经网络与深度强化学习的负载均衡方法。
具体实施方式
为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本申请一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。下面结合附图对本申请的实施例进行详细说明。
需要说明的是,在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
图1为本申请一实施例的基于图卷积神经网络与深度强化学习的负载均衡方法的流程示意图。
如图1所示的基于图卷积神经网络与深度强化学习的负载均衡方法用于SDN数据中心网络,基于图卷积神经网络与深度强化学习的负载均衡算法包括:
步骤1:获取网络状态无向图,网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;
步骤2:获取流信息;
步骤3:获取训练后的DQN决策模型;
步骤4:将流信息以及网络状态无向图输入至DQN决策模型从而获取决策动作。
本申请的基于图卷积神经网络与深度强化学习的负载均衡方法具有如下优点:
1、本申请将深度强化学习与图卷积神经网络结合并应用在负载均衡算法之中,使得模型不仅能够根据状态信息做出决策,同时考虑了网络的拓扑结构作为决策的因素,使得模型能够根据更全面的网络状态做出决策,提高了模型决策的性能。
2、本发明考虑了历史状态信息,将前数个时刻的状态的平均作为当前时刻的状态,使得模型能够感知网络流量变化在时间尺度上的相关性,提高了模型的性能。
3、本发明使用了多奖励因子,使得模型不仅关注了网络的负载均衡,同时在延迟、丢包率等QoS指标上也能够达到比较好的程度。
在本实施例中,获取网络状态无向图包括:
获取网络的链路信息,所述链路信息包括链路负载信息;
获取交换机的负载信息、延迟信息以及丢包率信息;
根据网络的链路信息以及交换机的负载信息、延迟信息以及丢包率信息生成网络状态无向图。
在本实施例中,网络的链路负载信息包括:
获取预设时间段内的网络的各时间点的链路负载平均信息;
交换机的负载信息、延迟信息以及丢包率信息包括:
获取预设时间段内的网络的各时间点的负载平均信息;
获取预设时间段内的网络的各时间点的延迟平均信息;
获取预设时间段内的网络的各时间点的丢包率平均信息。
在本实施例中,对于网络状态我们进行了时间平滑处理,我们将前10个时刻的状态的平均作为当前时刻的状态,以此来保证模型能够感知网络流量变化中蕴含的时间尺度上的相关性。
具体而言,我们采用如下公式进行时间平滑处理:
如上式所示,我们将前十个时刻的(包括当前时刻)状态取平均作为当前时刻的state,我们输入进网络的数据就是根据平均出的state得到的。
其中链路负载,交换机负载等输入数据都是由前十个时刻的平均得到。式中state为输入的状态,HF为历史因子,我们的方案是取10,也就是前十个时刻。statei为往前第i个时刻的状态,其中state0为当前时刻状态。
在本实施例中,时刻监测整个网络的状态,通过对交换机下发各种询问报文,分析之后获得网络的各个链路以及交换机的负载、延迟以及丢包率等信息。
随后对收集的信息进行处理,使得整个网络状态抽象为一张无向图,图的状态以及结构由图的带权邻接矩阵以及结点特征矩阵表示,也就是交换机节点的特征矩阵以及以交换机之间的数据链路的负载作为权值的邻接矩阵。
每当一个新的流到达网络,就会将当前的流信息以及网络的状态信息发送至DQN决策模型。模型通过对这些信息进行分析之后,做出合理的决策,再根据这个决策来执行对当前流的路由。
在本实施例中,获取训练后的DQN决策模型包括:
生成DQN决策模型;
训练DQN决策模型。
在本实施例中,所述DQN决策模型包括三层图卷积神经网络以及两层卷积神经网络。
DQN决策模型中的深度神经网络我们使用了图卷积神经网络以及卷积神经网络的结合。我们设计3层的图卷积神经网络以及2层的卷积神经网络,网络的状态经过上述的处理后表现为一个邻接矩阵以及一个特征矩阵,正好作为图卷积神经网络的输入,再经过其余数层网络的处理之后,输出一个Q值表,模型根据这个Q值表做出决策。我们采用了多因素评估奖励,考虑最大链路利用率作为主要的指标,同时考虑延迟,丢包率以及平均负载作为辅助评估的指标。
具体而言,首先我们采用的深度强化学习算法为DQN,DQN采用深度神经网络拟合Q表,我们使用的网络结构为3层的GCN以及2层的CNN,其中由GCN的输入与普通的深度神经网络不同,普通的深度神经网络输入大都为向量,二维或者三维矩阵,而GCN的输入为图Graph的相关信息,我们将网络建模为一张图,其中输入为图的带权邻接矩阵以及图中节点的特征矩阵,我们使用链路的负载计算链路权值,将其作为边的权值得出邻接矩阵,并使用交换机流表利用率以及交换机负载两个特征得出网络节点(也就是交换机)的特征矩阵。
在本实施例中,所述DQN决策模型采用了多奖励因子评估奖励,其中,多奖励因子评估奖励包括链路利用率的变化信息、延迟信息,丢包率信息以及平均负载信息。
r=factor1*α+factor2*β+factor3*γ+factor4*θ (1)
factori=nori-(curFaci-lastFaci) (2)
具体而言,本申请采用如下公式获取奖励:
本方案的奖励采用多奖励因子评估奖励。RL的reward为环境给与agent的反馈,是模型能否达到理想的训练效果的重要因素。其他的负载均衡算法采用链路负载的变化作为奖励反馈,然而这样会导致模型忽略了用户的QoS而导致QoS变低。我们考虑了链路利用率(MLR)的变化作为评估reward的主要因素,同时考虑延迟(DE),丢包率(PL)以及平均负载(PL)作为评估reward的次要因素。
如式(1),我们使用4个factor分别乘上系数α,β,γ和θ来得出最终的奖励。对于每个factor,我们的计算步骤如公式(2),每个factor的计算都类似,factori代表第i个factor得奖励值,nori代表前面所有时刻factori变化值的均值,curFaci与lastFaci分别代表当前时刻与上个时刻该factor的实际值,我们用(curFaci-lastFaci)计算当前时刻factor的变化值,再用nori减去此变化值得到该factor的奖励数值factori。在公式(3)中,我们展示了如何计算nori,对每一个step,我们都根据该式更新每个factor的变化值均值(nori),最终我们的reward总计算公式如式(4)。在本实施例中,将流信息以及网络状态无向图输入至DQN决策模型从而获取分流决策动作包括:
将流信息以及所述网络状态无向图输入至DQN决策模型;
DQN决策模型根据所述流信息以及网络状态无向图获取Q值表;
获取流信息中的源交换机地址以及目标交换机地址;
根据源交换机地址以及目标交换机地址获取动作集;
根据Q值表以e贪心策略从动作集中选择动作作为决策动作。
在本实施例中,在将所述流信息以及网络状态无向图输入至DQN决策模型从而获取决策动作之后,基于图卷积神经网络与深度强化学习的负载均衡方法进一步包括:
获取执行决策动作后的网络状态;
根据决策动作后的网络状态获取奖励信息;
将执行所述决策动作后的网络状态以及奖励信息存储至训练用数据库。
下面以举例的方式对本申请进行进一步详细阐述,可以理解的是,该举例并不构成对本申请的任何限制。
我们使用Java实现了SDN的控制器,对于整个网络的控制、监测以及数据处理,都由控制器执行。每当一个流到达网络时,控制器就将网络的状态发送至模型,等待模型做出决策之后执行路由,再将下个时刻的状态以及计算出的执行动作的奖励发送到模型进行训练。
我们使用Python实现了深度强化学习的模型。模型在训练过程中,接收来自控制器的请求与网络状态数据。模型输入邻接矩阵A,特征矩阵F,度矩阵D,输入到图卷积神经网络层中进行训练,经过3层的图卷积,模型获取了网络的结构与状态信息,再经过两层的卷积神经网络处理,输出Q值表,模型根据请求的源交换机地址与目标交换机地址选择可行的动作集,再根据Q值表以e贪心策略从动作集中选择动作,将该动作也就是模型的决策发送至控制器进行对应的处理,控制器收到决策,执行路由之后将新的网络状态以及根据新的网络状态计算的奖励发送至模型。模型收到新的状态以及奖励之后,将(状态、动作、奖励、新状态)元组作为经验存储至经验池。在经验存储至一定规模之后,模型将随机取一定量的经验进行参数更新。
本申请还提供了一种基于图卷积神经网络与深度强化学习的负载均衡装置,所述基于图卷积神经网络与深度强化学习的负载均衡装置包括网络状态无向图获取模块、流信息获取模块、模型获取模块、决策动作获取模块,网络状态无向图获取模块用于获取网络状态无向图,网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;流信息获取模块用于获取流信息;模型获取模块用于获取训练后的DQN决策模型;决策动作获取模块用于将所述流信息以及网络状态无向图输入至DQN决策模型从而获取决策动作。
上述对方法的描述同样也适用于对装置的描述。
图2是能够实现根据本申请一个实施例提供的基于图卷积神经网络与深度强化学习的负载均衡方法的电子设备的示例性结构图。
如图2所示,电子设备包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505以及输出设备506。其中,输入接口502、中央处理器503、存储器504以及输出接口505通过总线507相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线507连接,进而与电子设备的其他组件连接。具体地,输入设备501接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到电子设备的外部供用户使用。
也就是说,图2所示的电子设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及一个或多个处理器,该一个或多个处理器在执行计算机可执行指令时可以实现结合图1描述的基于图卷积神经网络与深度强化学习的负载均衡方法。
在一个实施例中,图2所示的电子设备可以被实现为包括:存储器504,被配置为存储可执行程序代码;一个或多个处理器503,被配置为运行存储器504中存储的可执行程序代码,以执行上述实施例中的基于图卷积神经网络与深度强化学习的负载均衡方法。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动,媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数据多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
此外,显然“包括”一词不排除其他单元或步骤。装置权利要求中陈述的多个单元、模块或装置也可以由一个单元或总装置通过软件或硬件来实现。第一、第二等词语用来标识名称,而不标识任何特定的顺序。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包括一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地标识的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或总流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本实施例中所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现装置/终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在本实施例中,装置/终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。本申请虽然以较佳实施例公开如上,但其实并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此,本申请的保护范围应当以本申请权利要求所界定的范围为准。
虽然,上文中已经用一般性说明及具体实施方案对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (6)
1.一种基于图卷积神经网络与深度强化学习的负载均衡方法,用于SDN数据中心网络,其特征在于,所述基于图卷积神经网络与深度强化学习的负载均衡算法包括:
获取网络状态无向图;
获取流信息;
获取训练后的DQN决策模型;
将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作;
所述获取网络状态无向图包括:
获取网络的链路信息,所述链路信息包括链路负载信息;
获取交换机的负载信息、延迟信息以及丢包率信息;
根据所述网络的链路信息以及交换机的负载信息、延迟信息以及丢包率信息生成所述网络状态无向图;
所述网络的链路负载信息包括:
获取预设时间段内的网络的各时间点的链路负载平均信息;
所述交换机的负载信息、延迟信息以及丢包率信息包括:
获取预设时间段内的网络的各时间点的负载平均信息;
获取预设时间段内的网络的各时间点的延迟平均信息;
获取预设时间段内的网络的各时间点的丢包率平均信息;
所述DQN决策模型包括三层图卷积神经网络以及两层卷积神经网络;
所述DQN决策模型采用了多奖励因子评估奖励,其中,多奖励因子评估奖励包括链路利用率的变化信息、延迟信息,丢包率信息以及平均负载信息;其中,
r=factor1*α+factor2*β+factor3*γ+factor4*θ (1)
factori=nori-(curFaci-lastFaci) (2)
如式(1),我们使用4个factor分别乘上系数α,β,γ和θ来得出最终的奖励;对于每个factor,我们的计算步骤如公式(2),每个factor的计算都类似,factori代表第i个factor得奖励值,nori代表前面所有时刻factori变化值的均值,curFaci与lastFaci分别代表当前时刻与上个时刻该factor的实际值,我们用curFaci-lastFaci计算当前时刻factor的变化值,再用nori减去此变化值得到该factor的奖励数值factori;在公式(3)中,对每一个step,我们都根据该式更新每个factor的变化值均值(nori),最终我们的reward总计算公式如式(4)。
2.如权利要求1所述的基于图卷积神经网络与深度强化学习的负载均衡方法,其特征在于,所述将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取分流决策动作包括:
将所述流信息以及所述网络状态无向图输入至所述DQN决策模型;
所述DQN决策模型根据所述流信息以及所述网络状态无向图获取Q值表;
获取流信息中的源交换机地址以及目标交换机地址;
根据所述源交换机地址以及目标交换机地址获取动作集;
根据所述Q值表以e贪心策略从动作集中选择动作作为决策动作。
3.如权利要求2所述的基于图卷积神经网络与深度强化学习的负载均衡方法,其特征在于,在所述将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作之后,所述基于图卷积神经网络与深度强化学习的负载均衡方法进一步包括:
获取执行所述决策动作后的网络状态;
根据所述决策动作后的网络状态获取奖励信息;
将所述执行所述决策动作后的网络状态以及奖励信息存储至训练用数据库。
4.一种基于图卷积神经网络与深度强化学习的负载均衡装置,其特征在于,所述基于图卷积神经网络与深度强化学习的负载均衡装置包括:
网络状态无向图获取模块,所述网络状态无向图获取模块用于获取网络状态无向图,所述网络状态无向图包括交换机的特征矩阵以及各个交换机之间的数据链路负载权值信息;
流信息获取模块,所述流信息获取模块用于获取流信息;
模型获取模块,所述模型获取模块用于获取训练后的DQN决策模型;
决策动作获取模块,所述决策动作获取模块用于将所述流信息以及所述网络状态无向图输入至所述DQN决策模型从而获取决策动作;
所述获取网络状态无向图包括:
获取网络的链路信息,所述链路信息包括链路负载信息;
获取交换机的负载信息、延迟信息以及丢包率信息;
根据所述网络的链路信息以及交换机的负载信息、延迟信息以及丢包率信息生成所述网络状态无向图;
所述网络的链路负载信息包括:
获取预设时间段内的网络的各时间点的链路负载平均信息;
所述交换机的负载信息、延迟信息以及丢包率信息包括:
获取预设时间段内的网络的各时间点的负载平均信息;
获取预设时间段内的网络的各时间点的延迟平均信息;
获取预设时间段内的网络的各时间点的丢包率平均信息;
所述DQN决策模型包括三层图卷积神经网络以及两层卷积神经网络;
所述DQN决策模型采用了多奖励因子评估奖励,其中,多奖励因子评估奖励包括链路利用率的变化信息、延迟信息,丢包率信息以及平均负载信息;其中,
r=factor1*α+factor2*β+factor3*γ+factor4*θ (1)
factori=nori-(curFaci-lastFaci) (2)
如式(1),我们使用4个factor分别乘上系数α,β,γ和θ来得出最终的奖励;对于每个factor,我们的计算步骤如公式(2),每个factor的计算都类似,factori代表第i个factor得奖励值,nori代表前面所有时刻factori变化值的均值,curFaci与lastFaci分别代表当前时刻与上个时刻该factor的实际值,我们用curFaci-lastFaci计算当前时刻factor的变化值,再用nori减去此变化值得到该factor的奖励数值factori;在公式(3)中,对每一个step,我们都根据该式更新每个factor的变化值均值(nori),最终我们的reward总计算公式如式(4)。
5.一种电子设备,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述的基于图卷积神经网络与深度强化学习的负载均衡方法。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时能够实现如权利要求1至3中任一项所述的基于图卷积神经网络与深度强化学习的负载均衡方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110819823.7A CN113572697B (zh) | 2021-07-20 | 2021-07-20 | 一种基于图卷积神经网络与深度强化学习的负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110819823.7A CN113572697B (zh) | 2021-07-20 | 2021-07-20 | 一种基于图卷积神经网络与深度强化学习的负载均衡方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113572697A CN113572697A (zh) | 2021-10-29 |
CN113572697B true CN113572697B (zh) | 2023-09-22 |
Family
ID=78165732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110819823.7A Active CN113572697B (zh) | 2021-07-20 | 2021-07-20 | 一种基于图卷积神经网络与深度强化学习的负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113572697B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363677A (zh) * | 2021-12-02 | 2022-04-15 | 深圳市新田科技有限公司 | 基于深度学习的移动网络视频码率实时调整方法和装置 |
CN114422438B (zh) * | 2021-12-29 | 2023-05-09 | 广东电网有限责任公司 | 电力通信网络的链路调节方法及装置 |
CN114615183B (zh) * | 2022-03-14 | 2023-09-05 | 广东技术师范大学 | 基于资源预测的路由方法、装置、计算机设备及存储介质 |
CN114979033B (zh) * | 2022-06-13 | 2023-05-09 | 华北理工大学 | 一种基于可编程数据平面的网内神经计算系统 |
CN115102906A (zh) * | 2022-06-20 | 2022-09-23 | 电子科技大学 | 一种基于深度强化学习驱动的负载均衡方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108667734A (zh) * | 2018-05-18 | 2018-10-16 | 南京邮电大学 | 一种基于q学习和lstm神经网络的快速路由决策算法 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
CN111010294A (zh) * | 2019-11-28 | 2020-04-14 | 国网甘肃省电力公司电力科学研究院 | 一种基于深度强化学习的电力通信网路由方法 |
CN112822109A (zh) * | 2020-12-31 | 2021-05-18 | 上海缔安科技股份有限公司 | 一种基于强化学习的SDN核心网QoS路由优化算法 |
CN113132232A (zh) * | 2021-03-10 | 2021-07-16 | 清华大学 | 一种能量路由优化方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3871132A1 (en) * | 2018-12-04 | 2021-09-01 | Google LLC | Generating integrated circuit floorplans using neural networks |
US11416743B2 (en) * | 2019-04-25 | 2022-08-16 | International Business Machines Corporation | Swarm fair deep reinforcement learning |
-
2021
- 2021-07-20 CN CN202110819823.7A patent/CN113572697B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108667734A (zh) * | 2018-05-18 | 2018-10-16 | 南京邮电大学 | 一种基于q学习和lstm神经网络的快速路由决策算法 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
CN111010294A (zh) * | 2019-11-28 | 2020-04-14 | 国网甘肃省电力公司电力科学研究院 | 一种基于深度强化学习的电力通信网路由方法 |
CN112822109A (zh) * | 2020-12-31 | 2021-05-18 | 上海缔安科技股份有限公司 | 一种基于强化学习的SDN核心网QoS路由优化算法 |
CN113132232A (zh) * | 2021-03-10 | 2021-07-16 | 清华大学 | 一种能量路由优化方法 |
Non-Patent Citations (1)
Title |
---|
陈必康.基于 OpenFlow 协议的 SDN 路由算法的研究与实现.《全国优秀硕士学位论文全文数据库》.2020,第四章. * |
Also Published As
Publication number | Publication date |
---|---|
CN113572697A (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113572697B (zh) | 一种基于图卷积神经网络与深度强化学习的负载均衡方法 | |
WO2019114423A1 (zh) | 对模型预测值进行融合的方法、装置和设备 | |
CN110874648A (zh) | 联邦模型的训练方法、系统和电子设备 | |
CN101873224A (zh) | 一种云计算负载均衡方法和设备 | |
CN112083933A (zh) | 一种基于强化学习的服务功能链部署方法 | |
CN104951465A (zh) | 应用推荐方法及装置 | |
CN110995619B (zh) | 一种服务质量感知的虚拟网络映射方法和装置 | |
WO2017197330A1 (en) | Two-stage training of a spoken dialogue system | |
CN108009017A (zh) | 一种应用链路的扩容方法、装置和系统 | |
CN111106960B (zh) | 一种虚拟网络的映射方法、映射装置及可读存储介质 | |
CN115529316A (zh) | 一种基于云计算中心网络架构的微服务部署方法 | |
CN109948803A (zh) | 算法模型优化方法、装置和设备 | |
CN112737798A (zh) | 主机资源分配方法、装置及调度服务器、存储介质 | |
CN115102906A (zh) | 一种基于深度强化学习驱动的负载均衡方法 | |
Chandra et al. | A tunable mechanism for identifying trusted nodes in large scale distributed networks | |
Nasir et al. | Fast trust computation in online social networks | |
CN109981696A (zh) | 一种负载均衡方法、装置及设备 | |
CN113297310A (zh) | 一种物联网中区块链分片验证者选取的方法 | |
CN114493674A (zh) | 一种广告点击率预测模型及方法 | |
JP2019061338A (ja) | ニューラルネットワークの調整装置、デバイス及びプログラム | |
CN106600062A (zh) | 多区域交叉复杂网络图中单源最短路径的计算方法 | |
Skupa et al. | Survey of traffic prediction methods for dynamic routing in overlay networks | |
CN116108291B (zh) | 一种移动互联网流量服务推荐方法及系统 | |
CN114386533B (zh) | 一种gbdt模型的横向训练方法、装置、电子设备及系统 | |
CN108229748A (zh) | 用于合乘服务的匹配方法、装置及电子设备 |
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 |