CN112631717A - 基于异步强化学习的网络服务功能链动态部署系统及方法 - Google Patents

基于异步强化学习的网络服务功能链动态部署系统及方法 Download PDF

Info

Publication number
CN112631717A
CN112631717A CN202011514515.5A CN202011514515A CN112631717A CN 112631717 A CN112631717 A CN 112631717A CN 202011514515 A CN202011514515 A CN 202011514515A CN 112631717 A CN112631717 A CN 112631717A
Authority
CN
China
Prior art keywords
neural network
service function
function chain
network
virtual
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
CN202011514515.5A
Other languages
English (en)
Other versions
CN112631717B (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.)
Chongqing University
Original Assignee
Chongqing University
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 Chongqing University filed Critical Chongqing University
Priority to CN202011514515.5A priority Critical patent/CN112631717B/zh
Publication of CN112631717A publication Critical patent/CN112631717A/zh
Application granted granted Critical
Publication of CN112631717B publication Critical patent/CN112631717B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/29Graphical models, e.g. Bayesian networks
    • G06F18/295Markov models or related models, e.g. semi-Markov models; Markov random fields; Networks embedding Markov models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开基于异步强化学习的网络服务功能链动态部署系统及方法。系统包括信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块和数据库;方法步骤为:1)获取服务功能链请求;2)生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置;3)判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则接受所述服务功能链请求;否则,拒绝所述服务功能链请求,释放已占用的资源。本发明将单个服务功能链部署问题建模为一个有限步数的马尔科夫决策过程,优化目标为最大化接受率和长期平均收益,以此来适应强化学习方法架构。

Description

基于异步强化学习的网络服务功能链动态部署系统及方法
技术领域
本发明涉及服务功能链领域,具体是基于异步强化学习的网络服务功能链动态部署系统及方法。
背景技术
网络功能虚拟化(Network Function Virtualization,NFV)是一种很有前景的技术,它利用软件中间盒来执行多样的网络功能,克服了传统方法中直接使用专用服务器来运行各种网络功能的缺点。NFV技术不仅提高物理网络的资源利用率和网络服务收益,还降低了网络提供商的管理难度,提高了灵活度。
得益于NFV技术,一个复杂的网络服务(Network Service,NS),也称为服务功能链(Service Function Chain,SFC),由一系列有序的虚拟网络功能(VirtualNetworkFunction,VNF)组成。在线场景中,网络提供商需要在多种资源限制条件下,将动态到达的SFC请求实时放置在物理网络中。
在NFV框架下,网络服务的质量依赖于服务功能链的部署效果。已有的部署算法有:基于数学的部署方法,它们利用特定的优化目标来寻找最佳规划的方案,但这种方法需要消耗很大的计算量,不能很好地适应在线部署的场景;还有一些基于启发式和元启发式的部署算法,虽然它们能够解决在线部署问题,但受场景设定影响大,易于陷入局部最优解;还有一些基于强化学习的部署方法,但它们不仅搜索空间巨大,而且对物理网络结构的限制严格,适应性低。
发明内容
本发明的目的是提供基于异步强化学习的网络服务功能链动态部署系统,包括信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块和数据库。
所述信息获取模块获取服务功能链请求。
所述服务功能链请求的信息包括虚拟网络功能集Nv={VNF1,VNF2,VNF3,…,VNFT}。VNFT表示第T个虚拟网络功能。T为所述服务功能链请求的虚拟网络功能数量。相邻虚拟网络功能之间存在虚拟链路(VirtualLink,VL)。所有虚拟链路组成虚拟链路集Lv={VL1,VL2,VL3,…,VLT-1}。VLn包括第n条虚拟链路的带宽请求信息,下标n表示其虚拟链路序号。n=1,2,…,T-1。
所述神经网络训练模块建立神经网络,并对神经网络模型进行训练,得到训练好的神经网络模型。
所述神经网络包括图卷积神经网络和若干GRU单元。
所述图卷积神经网络的输入为一个图的邻接矩阵A和图中节点的特征矩阵X,输出为提取图中特征后的新表示向量Zt
其中,新表示向量Zt如下所示:
Figure BDA0002847301970000021
式中,σ(·)是激活函数,W是可训练参数;
Figure BDA0002847301970000022
表示图数据结构的卷积操作;
Figure BDA0002847301970000023
是图的邻接矩阵与单位矩阵之和;
对于任意时间步长t,GRU单元的输入为当前服务功能链的特征
Figure BDA0002847301970000024
上一个时间步幅的隐藏状态向量et-1,输出为当前时间步幅的隐藏状态向量et
隐藏状态向量et如下所示:
Figure BDA0002847301970000025
式中,zt为遗忘门。
Figure BDA0002847301970000026
为候选的隐藏状态。
其中,遗忘门zt和候选的隐藏状态
Figure BDA0002847301970000027
分别如下所示:
Figure BDA0002847301970000028
Figure BDA0002847301970000029
式中,rt表示重置门。σ(·)是sigmoid激活函数。⊙表示元素的乘法。Wz、We、Vz、Ve表示权重。bz、be表示偏置。
Figure BDA00028473019700000210
式中,Wr、Vr表示重置门。br表示偏置。
对神经网络模型进行训练的步骤包括:
1)建立Actor神经网络和Critic神经网络;Actor神经网络和Critic神经网络均包括图卷积神经网络和若干GRU单元,且具有相似的结构;其中,Critic神经网络输出层输出单数值;
设置N个智能体,并初始化所述智能体的参数为全局神经网络参数。所述智能体包括神经网络模型行动者Actor和评论家Critic。
2)第n个智能体读取当前服务功能链信息。n初始值为1。
3)第n个智能体对服务功能链请求中的每个虚拟网络功能进行放置,其中,Actor神经网络利用∈-贪心策略生成放置概率策略。
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率为(1-∈)的当前状态选择具有最高估计Q值动作at
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率∈随机选择动作at
4)根据服务功能链放置结果,第n个智能体获得奖励reward,即:
Figure BDA0002847301970000031
式中,ξ是奖励折扣因子。
其中,当前服务功能链被成功部署时的收益rev如下所示:
Figure BDA0002847301970000032
式中,μk代表k类节点资源容量的成本,η代表链路资源容量的单价,
Figure BDA0002847301970000033
代表节点ni的k类资源容量,
Figure BDA0002847301970000034
代表链路li的带宽。
5)第n个智能体对Actor神经网络和Critic神经网络进行训练。
其中,Critic神经网络参数ω更新如下:
Figure BDA0002847301970000035
式中,εω是学习率,(st,at)代表状态-动作对。A(at,st)=rt+γVω(st+1)-Vω(st)是优势函数。Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值。ω’为更新后的参数。
Actor神经网络参数θ更新如下:
Figure BDA0002847301970000036
式中,πθ表示参数θ下的放置策略π。θ’为更新后的参数。
6)判断n是否大于N,若是,则进入步骤7),否则,令n=n+1,返回步骤2)。
7)使用各个智能体的梯度对全局神经网络参数进行更新。
所述虚拟网络功能放置模块将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置。
生成虚拟网络功能放置方式的步骤包括:
1)利用训练好的神经网络模型的编码器捕获当前服务功能链的虚拟网络功能间时序关系。
2)读取当前的物理网络状态信息,并利用训练好的神经网络模型提取网络拓扑的特征。所述物理网络拓扑信息包括物理节点的各项资源的总容量、物理节点各项资源的当前剩余量信息、物理链路带宽资源的总容量和当前剩余量信息。
3)提取当前放置的虚拟网络功能VNFt的特征,步骤包括:
3.1)以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入,得到当前隐藏层输出dt,即:
Figure BDA0002847301970000041
3.2)计算对齐权重αt,j,即:
Figure BDA0002847301970000042
式中,
Figure BDA0002847301970000043
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值。[dt;ej]表示向量dt和向量ej串联。
Figure BDA0002847301970000044
和Wa是可训练的变量。
3.3)以每个编码器隐藏状态ej作为输入,用对齐权重αt,j对输入序列进行加权求和,得到上下文向量ct,即:
Figure BDA0002847301970000045
4)利用训练好的神经网络模型融合当前放置的虚拟网络功能和实时物理网络的状态特征,并输入至Softmax,得到当前虚拟网络功能放置在每个物理网络节点的概率π[·∣{a1,…,at-1},dt,ct,Zt],即:
Figure BDA0002847301970000046
式中,状态特征
Figure BDA0002847301970000047
Figure BDA0002847301970000048
和Wb为可训练的参数。
5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤6)。否则,进入步骤9)。存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量大于当前VNF的资源请求量。
6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤7)。否则,进入步骤9)。所述特定物理链路表示连通放置有当前VNF的物理节点与放置有上一VNF的物理节点的物理链路。所述特定物理链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量。所述特定物理链路的寻找方法为Dijkstra最短路径算法。
7)利用虚拟链路带宽请求量更新所述特定物理链路带宽资源剩余量信息。
8)判断所有VNF是否被依次放置成功,若是,则进入步骤3.10),否则,返回步骤2)。
9)当前服务功能链部署失败,中止放置。
10)当前服务功能链部署成功,中止放置。
所述放置校验模块判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则接受所述服务功能链请求,否则拒绝所述服务功能链请求,释放已占用的资源。
所述数据库存储信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块的数据。
基于异步强化学习的网络服务功能链动态部署方法,包括以下步骤:
1)获取服务功能链请求。
所述服务功能链请求的信息包括虚拟网络功能集Nv={VNF1,VNF2,VNF3,…,VNFT}。VNFT表示第T个虚拟网络功能。T为所述服务功能链请求的虚拟网络功能数量。相邻虚拟网络功能之间存在虚拟链路(VirtualLink,VL)。所有虚拟链路组成虚拟链路集Lv={VL1,VL2,VL3,…,VLT-1}。VLn包括该虚拟链路的带宽请求信息,下标n表示其虚拟链路序号。VirtualLink表示虚拟链路。
2)建立神经网络模型,并对神经网络模型进行训练,得到训练好的神经网络模型。
所述神经网络包括图卷积神经网络和若干GRU单元。
图卷积神经网络:图卷积神经网络的输入为一个图的邻接矩阵A和图中节点的特征矩阵X,输出为提取图中特征后的新表示向量Zt
Figure BDA0002847301970000051
式中,σ(·)是激活函数,W是可训练参数;
Figure BDA0002847301970000052
表示图数据结构的卷积操作;
Figure BDA0002847301970000053
是图的邻接矩阵与单位矩阵之和;
应用于图卷积神经网络的图由虚拟链路组成。
GRU单元:对于任意时间步长t,GRU单元的输入为当前服务功能链的特征
Figure BDA0002847301970000054
上一个时间步幅的隐藏状态向量et-1,输出为当前时间步幅的隐藏状态向量et
隐藏状态向量et如下所示:
Figure BDA0002847301970000061
式中,zt为遗忘门。
Figure BDA0002847301970000062
为候选的隐藏状态。GRU()表示图卷积操作。
其中,遗忘门zt和候选的隐藏状态
Figure BDA0002847301970000063
分别如下所示:
Figure BDA0002847301970000064
Figure BDA0002847301970000065
式中,rt表示重置门。σ(·)是sigmoid激活函数。⊙表示元素的乘法。Wz、We、Vz、Ve表示权重。bz、be表示偏置。
Figure BDA0002847301970000066
式中,Wr、Vr表示重置门。br表示偏置。
对神经网络模型进行训练的步骤包括:
2.1)建立Actor神经网络和Critic神经网络;Actor神经网络和Critic神经网络均由图卷积神经网络和若干GRU单元组成,且具有相似的结构;其中,Critic神经网络输出层输出单数值;
设置N个智能体,并初始化所述智能体的参数为全局神经网络参数。所述智能体包括神经网络模型行动者Actor和评论家Critic。
2.2)第n个智能体读取当前服务功能链信息。n初始值为1。
2.3)第n个智能体对服务功能链请求中的每个虚拟网络功能进行放置,其中,Actor神经网络利用∈-贪心策略生成放置概率策略。
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率为(1-∈)的当前状态选择具有最高估计Q值动作at
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率∈随机选择动作at
2.4)根据服务功能链放置结果,第n个智能体获得奖励reward,即:
Figure BDA0002847301970000067
式中,ξ是奖励折扣因子。
其中,当前服务功能链被成功部署时的收益rev如下所示:
Figure BDA0002847301970000071
式中,μk代表k类节点资源容量的成本,η代表链路资源容量的单价,
Figure BDA0002847301970000072
代表节点ni的k类资源容量,
Figure BDA0002847301970000073
代表链路li的带宽。
2.5)第n个智能体对Actor神经网络和Critic神经网络进行训练。其中,Critic神经网络参数ω更新如下:
Figure BDA0002847301970000074
式中,εω是学习率,(st,at)代表状态-动作对。A(at,st)=rt+γVω(st+1)-Vω(st)是优势函数。Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值。ω’为更新后的参数。γ为估测系数。
Figure BDA0002847301970000075
为梯度。
Actor神经网络参数θ更新如下:
Figure BDA0002847301970000076
式中,πθ表示参数θ下的放置策略π。θ’为更新后的参数。
Figure BDA0002847301970000077
为梯度。εθ是学习率。
2.6)判断n是否大于N,若是,则进入步骤7),否则,令n=n+1,返回步骤2.2)。
2.7)使用各个智能体的梯度对全局神经网络参数进行更新。
3)将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置。
生成虚拟网络功能放置方式的步骤包括:
3.1)利用训练好的神经网络模型的编码器捕获当前服务功能链的虚拟网络功能间时序关系。
3.2)读取当前的物理网络状态信息,并利用训练好的神经网络模型提取网络拓扑的特征。所述物理网络拓扑信息包括物理节点的各项资源的总容量、物理节点各项资源的当前剩余量信息、物理链路带宽资源的总容量和当前剩余量信息。
3.3)提取当前放置的虚拟网络功能VNFt的特征,步骤包括:
3.3.1)以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入,得到当前隐藏层输出dt,即:
Figure BDA0002847301970000078
3.3.2)计算对齐权重αt,j,即:
Figure BDA0002847301970000081
式中,
Figure BDA0002847301970000082
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值。[dt;ej]表示向量dt和向量ej串联。
Figure BDA0002847301970000083
和Wa是可训练的变量。
3.3.3)以每个编码器隐藏状态ej作为输入,用对齐权重αt,j对输入序列进行加权求和,得到上下文向量ct,即:
Figure BDA0002847301970000084
3.4)利用训练好的神经网络模型融合当前放置的虚拟网络功能和实时物理网络的状态特征,并输入至Softmax,得到当前虚拟网络功能放置在每个物理网络节点的概率π[·∣{a1,…,at-1},dt,ct,Zt],即:
Figure BDA0002847301970000085
式中,状态特征
Figure BDA0002847301970000086
Figure BDA0002847301970000087
和Wb为可训练的参数。
3.5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤3.6)。否则,进入步骤3.9)。存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量大于当前VNF的资源请求量。
3.6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤3.7)。否则,进入步骤3.9)。所述特定物理链路表示连通放置有当前VNF的物理节点与放置有上一VNF的物理节点的物理链路。所述特定物理链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量。所述特定物理链路的寻找方法为Dijkstra最短路径算法。
3.7)利用虚拟链路带宽请求量更新所述特定物理链路带宽资源剩余量信息。
3.8)判断所有VNF是否被依次放置成功,若是,则进入步骤3.10),否则,返回步骤3.2)。
3.9)当前服务功能链部署失败,中止放置。
3.10)当前服务功能链部署成功,中止放置。
4)判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则进入步骤6)。否则,进入步骤5)。
5)拒绝所述服务功能链请求,释放已占用的资源,返回步骤1)。
6)接受所述服务功能链请求,返回步骤1)。
本发明的技术效果是毋庸置疑的,本发明将单个服务功能链部署问题建模为一个有限步数的马尔科夫决策过程,优化目标为最大化接受率和长期平均收益,以此来适应强化学习方法架构。
本发明使用图卷积神经网络和序列到序列等高效特征提取器构建神经网络模型,充分提取了物理网络和服务功能链的状态信息,提高了模型预测的性能。
本发明使用异步的优势行动者评论家来加速训练神经网络模型,提高了模型的优化上限和适用范围。
附图说明
图1是本发明一种服务功能链部署方法的总算法流程图;
图2是本发明一种服务功能链部署方法的VNF放置策略生成流程图;
图3是本发明一种服务功能链部署方法的神经网络模型结构图;
图4是本发明一种服务功能链部署方法的A3C训练算法流程图。
具体实施方式
下面结合实施例对本发明作进一步说明,但不应该理解为本发明上述主题范围仅限于下述实施例。在不脱离本发明上述技术思想的情况下,根据本领域普通技术知识和惯用手段,做出各种替换和变更,均应包括在本发明的保护范围内。
实施例1:
基于异步强化学习的网络服务功能链动态部署系统,包括信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块和数据库。
所述信息获取模块获取服务功能链请求。
所述服务功能链请求的信息包括虚拟网络功能集Nv={VNF1,VNF2,VNF3,…,VNFT}。VNFT表示第T个虚拟网络功能。T为所述服务功能链请求的虚拟网络功能数量。相邻虚拟网络功能之间存在虚拟链路(VirtualLink,VL)。所有虚拟链路组成虚拟链路集Lv={VL1,VL2,VL3,…,VLT-1}。VLn包括该虚拟链路的带宽请求信息,下标n表示其虚拟链路序号。
所述神经网络训练模块建立神经网络,并对神经网络模型进行训练,得到训练好的神经网络模型。
所述神经网络包括图卷积神经网络和若干GRU单元。
图卷积神经网络和GRU单元是并列关系,其中图卷积神经网络提取实时的物理网络的特征,一个GRU单元提取所输入的服务功能链的特征,另一个带有Attention机制的GRU单元用于融合信息来生成放置策略。它们共同组成神经网络模型,结构包括:
I)GRU单元1:捕获所输入的服务功能链的虚拟网络功能间的时序关系
I)图卷积神经网络:捕获实时物理网络的特征
II)带有Attention机制的GRU单元2:
III)计算对齐向量,生成上下文向量
a)融合虚拟网络功能和实时物理网络状态特征
b)输出Softmax产生最终概率
图卷积神经网络:图卷积神经网络的输入为一个图的邻接矩阵A和图中节点的特征矩阵X,输出为提取图中特征后的新表示向量:
Figure BDA0002847301970000101
式中,σ(·)是激活函数,W是可训练参数;
Figure BDA0002847301970000102
表示图数据结构的卷积操作;
Figure BDA0002847301970000103
是图的邻接矩阵与单位矩阵之和;
GRU单元:对于任意时间步长t,GRU单元的输入为当前服务功能链的特征
Figure BDA0002847301970000104
上一个时间步幅的隐藏状态向量et-1,输出为当前时间步幅的隐藏状态向量et
隐藏状态向量et如下所示:
Figure BDA0002847301970000105
式中,zt为遗忘门。
Figure BDA0002847301970000106
为候选的隐藏状态。
其中,遗忘门zt和候选的隐藏状态
Figure BDA0002847301970000107
分别如下所示:
Figure BDA0002847301970000108
Figure BDA0002847301970000109
式中,rt表示重置门。σ(·)是sigmoid激活函数。⊙表示元素的乘法。Wz、We、Vz、Ve表示权重。bz、be表示偏置。
Figure BDA00028473019700001010
式中,Wr、Vr表示重置门。br表示偏置。
对神经网络模型进行训练的步骤包括:
1)建立Actor神经网络和Critic神经网络;Actor神经网络和Critic神经网络均由图卷积神经网络和若干GRU单元组成,且具有相似的结构;其中,Critic神经网络输出层输出单数值;
在神经网络训练过程中,搭建了两个具有相似结构的神经网络模型Actor和Critic,即如上面I)、II)、III)描述的神经网络模型。神经网络训练和生成实际部署策略的区别在于:训练时多个Actor和Critic同时在工作,且进行参数更新;而在生成实际部署策略时,仅一个Actor进行对服务功能链的部署。
设置N个智能体,并初始化所述智能体的参数为全局神经网络参数。所述智能体包括神经网络模型行动者Actor和评论家Critic。
2)第n个智能体读取当前服务功能链信息。n初始值为1。
3)第n个智能体对服务功能链请求中的每个虚拟网络功能进行放置,其中,Actor神经网络利用∈-贪心策略生成放置概率策略。
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率为(1-∈)的当前状态选择具有最高估计Q值动作at
4)根据服务功能链放置结果,第n个智能体获得奖励reward,即:
Figure BDA0002847301970000111
式中,ξ是奖励折扣因子。
其中,当前服务功能链被成功部署时的收益rev如下所示:
Figure BDA0002847301970000112
式中,μk代表k类节点资源容量的成本,η代表链路资源容量的单价,
Figure BDA0002847301970000113
代表节点ni的k类资源容量,
Figure BDA0002847301970000114
代表链路li的带宽。
5)第n个智能体对Actor神经网络和Critic神经网络进行训练。
其中,Critic神经网络参数ω更新如下:
Figure BDA0002847301970000115
式中,εω是学习率,(st,at)代表状态-动作对。A(at,st)=rt+γVω(st+1)-Vω(st)是优势函数。Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值。ω’为更新后的参数。γ为估测系数。
Figure BDA0002847301970000116
为用于更新参数ω的梯度。
Actor神经网络参数θ更新如下:
Figure BDA0002847301970000121
式中,πθ表示参数θ下的放置策略π。θ’为更新后的参数。
Figure BDA0002847301970000122
为用于更新参数θ的梯度。εθ是学习率。
6)判断n是否大于N,若是,则进入步骤7),否则,令n=n+1,返回步骤2)。
7)使用各个智能体的梯度对全局神经网络参数进行更新。
所述虚拟网络功能放置模块将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置。
生成虚拟网络功能放置方式的步骤包括:
1)利用训练好的神经网络模型的编码器捕获当前服务功能链的虚拟网络功能间时序关系。
2)读取当前的物理网络状态信息,并利用训练好的神经网络模型提取网络拓扑的特征。所述物理网络拓扑信息包括物理节点的各项资源的总容量、物理节点各项资源的当前剩余量信息、物理链路带宽资源的总容量和当前剩余量信息。
将物理网络状态
Figure BDA0002847301970000123
输入训练好的神经网络模型中,输出图数据特征Zt,即:
Figure BDA0002847301970000124
式中,σ(·)是激活函数,W是可训练参数。
Figure BDA0002847301970000125
表示图数据结构的卷积操作。
Figure BDA0002847301970000126
是图的邻接矩阵与单位矩阵之和。
3)提取当前放置的虚拟网络功能VNFt的特征,步骤包括:
3.1)以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入,得到当前隐藏层输出dt,即:
Figure BDA0002847301970000127
式中,
Figure BDA0002847301970000128
为空。
3.2)计算对齐权重αt,j,即:
Figure BDA0002847301970000129
式中,
Figure BDA0002847301970000131
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值。[dt;ej]表示向量dt和向量ej串联。
Figure BDA0002847301970000132
是当前隐藏层输出dt和每个编码器隐藏状态ej′之间相关性的分值。[dt;ej′]表示向量dt和向量ej′串联。
Figure BDA0002847301970000133
和Wa是可训练的变量。ej′为表示编码器隐藏状态。
3.3)以每个编码器隐藏状态ej作为输入,用对齐权重αt,j对输入序列进行加权求和,得到上下文向量ct,即:
Figure BDA0002847301970000134
4)利用训练好的神经网络模型融合当前放置的虚拟网络功能和实时物理网络的状态特征,并输入至Softmax,得到当前虚拟网络功能放置在每个物理网络节点的概率π[·∣{a1,…,at-1},dt,ct,Zt],即:
Figure BDA0002847301970000135
式中,状态特征
Figure BDA0002847301970000136
Figure BDA0002847301970000137
和Wb为可训练的参数。
5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤6)。否则,进入步骤9)。存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量大于当前VNF的资源请求量。
6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤7)。否则,进入步骤9)。所述特定物理链路表示连通放置有当前VNF的物理节点与放置有上一VNF的物理节点的物理链路。所述特定物理链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量。所述特定物理链路的寻找方法为Dijkstra最短路径算法。
7)利用虚拟链路带宽请求量更新所述特定物理链路带宽资源剩余量信息。
8)判断所有VNF是否被依次放置成功,若是,则进入步骤3.10),否则,返回步骤2)。
9)当前服务功能链部署失败,中止放置。
10)当前服务功能链部署成功,中止放置。
所述放置校验模块判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则接受所述服务功能链请求,否则拒绝所述服务功能链请求,释放已占用的资源。
所述数据库存储信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块的数据。
实施例2:
参见图1至图4,基于异步强化学习的网络服务功能链动态部署方法,包括以下步骤:
1)获取服务功能链请求。
所述服务功能链请求的信息包括虚拟网络功能集Nv={VNF1,VNF2,VNF3,…,VNFT}。VNFT表示第T个虚拟网络功能。T为所述服务功能链请求的虚拟网络功能数量。相邻虚拟网络功能之间存在虚拟链路(VirtualLink,VL)。所有虚拟链路组成虚拟链路集Lv={VL1,VL2,VL3,…,VLT-1}。VLn包括该虚拟链路的带宽请求信息,下标n表示其虚拟链路序号。
2)建立神经网络模型,并对神经网络模型进行训练,得到训练好的神经网络模型。
所述神经网络包括图卷积神经网络和若干GRU单元。
图卷积神经网络:图卷积神经网络的输入为一个图的邻接矩阵A和图中节点的特征矩阵X,输出为提取图中特征后的新表示向量:
Figure BDA0002847301970000141
式中,σ(·)是激活函数,W是可训练参数;
Figure BDA0002847301970000142
表示图数据结构的卷积操作;
Figure BDA0002847301970000143
是图的邻接矩阵与单位矩阵之和;
GRU单元:对于任意时间步长t,GRU单元的输入为当前服务功能链的特征
Figure BDA0002847301970000144
上一个时间步幅的隐藏状态向量et-1,输出为当前时间步幅的隐藏状态向量et
隐藏状态向量et如下所示:
Figure BDA0002847301970000145
式中,zt为遗忘门。
Figure BDA0002847301970000146
为候选的隐藏状态。
其中,遗忘门zt和候选的隐藏状态
Figure BDA0002847301970000147
分别如下所示:
Figure BDA0002847301970000148
Figure BDA0002847301970000149
式中,rt表示重置门。σ(·)是sigmoid激活函数。⊙表示元素的乘法。Wz、We、Vz、Ve表示权重。bz、be表示偏置。
Figure BDA0002847301970000151
式中,Wr、Vr表示重置门。br表示偏置。
对神经网络模型进行训练的步骤包括:
2.1)建立Actor神经网络和Critic神经网络;Actor神经网络和Critic神经网络均由图卷积神经网络和若干GRU单元组成,且具有相似的结构;其中,Critic神经网络输出层输出单数值;
设置N个智能体,并初始化所述智能体的参数为全局神经网络参数。所述智能体包括神经网络模型行动者Actor和评论家Critic。
2.2)第n个智能体读取当前服务功能链信息。n初始值为1。
2.3)第n个智能体对服务功能链请求中的每个虚拟网络功能进行放置,其中,Actor神经网络利用∈-贪心策略生成放置概率策略。
优选的,利用∈-贪心策略生成放置概率策略的方式为:以概率∈随机选择动作at
2.4)根据服务功能链放置结果,第n个智能体获得奖励reward,即:
Figure BDA0002847301970000152
式中,ξ是奖励折扣因子。
其中,当前服务功能链被成功部署时的收益rev如下所示:
Figure BDA0002847301970000153
式中,μk代表k类节点资源容量的成本,η代表链路资源容量的单价,
Figure BDA0002847301970000154
代表节点ni的k类资源容量,
Figure BDA0002847301970000155
代表链路li的带宽。
2.5)第n个智能体对Actor神经网络和Critic神经网络进行训练。其中,Critic神经网络参数ω更新如下:
Figure BDA0002847301970000156
式中,εω是学习率,(st,at)代表状态-动作对。A(at,st)=rt+γVω(st+1)-Vω(st)是优势函数。Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值。ω’为更新后的参数。
Actor神经网络参数θ更新如下:
Figure BDA0002847301970000157
式中,πθ表示参数θ下的放置策略π。θ’为更新后的参数。
2.6)判断n是否大于N,若是,则进入步骤7),否则,令n=n+1,返回步骤2.2)。
2.7)使用各个智能体的梯度对全局神经网络参数进行更新。
3)将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置。
生成虚拟网络功能放置方式的步骤包括:
3.1)利用训练好的神经网络模型的编码器捕获当前服务功能链的虚拟网络功能间时序关系。
3.2)读取当前的物理网络状态信息,并利用训练好的神经网络模型提取网络拓扑的特征。所述物理网络拓扑信息包括物理节点的各项资源的总容量、物理节点各项资源的当前剩余量信息、物理链路带宽资源的总容量和当前剩余量信息。
将物理网络状态
Figure BDA0002847301970000161
输入训练好的神经网络模型中,输出图数据特征Zt,即:
Figure BDA0002847301970000162
式中,σ(·)是激活函数,W是可训练参数。
Figure BDA0002847301970000163
表示图数据结构的卷积操作。
Figure BDA0002847301970000164
是图的邻接矩阵与单位矩阵之和。
3.3)提取当前放置的虚拟网络功能VNFt的特征,步骤包括:
3.3.1)以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入,得到当前隐藏层输出dt,即:
Figure BDA0002847301970000165
3.3.2)计算对齐权重αt,j,即:
Figure BDA0002847301970000166
式中,
Figure BDA0002847301970000167
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值。[dt;ej]表示向量dt和向量ej串联。
Figure BDA0002847301970000168
和Wa是可训练的变量。
3.3.3)以每个编码器隐藏状态ej作为输入,用对齐权重αt,j对输入序列进行加权求和,得到上下文向量ct,即:
Figure BDA0002847301970000169
3.4)利用训练好的神经网络模型融合当前放置的虚拟网络功能和实时物理网络的状态特征,并输入至Softmax,得到当前虚拟网络功能放置在每个物理网络节点的概率π[·∣{a1,…,at-1},dt,ct,Zt],即:
Figure BDA0002847301970000171
式中,状态特征
Figure BDA0002847301970000172
Figure BDA0002847301970000173
和Wb为可训练的参数。
3.5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤3.6)。否则,进入步骤3.9)。存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量大于当前VNF的资源请求量。
3.6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤3.7)。否则,进入步骤3.9)。所述特定物理链路表示连通放置有当前VNF的物理节点与放置有上一VNF的物理节点的物理链路。所述特定物理链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量。所述特定物理链路的寻找方法为Dijkstra最短路径算法。
3.7)利用虚拟链路带宽请求量更新所述特定物理链路带宽资源剩余量信息。
3.8)判断所有VNF是否被依次放置成功,若是,则进入步骤3.10),否则,返回步骤3.2)。
3.9)当前服务功能链部署失败,中止放置。
3.10)当前服务功能链部署成功,中止放置。
4)判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则进入步骤6)。否则,进入步骤5)。
5)拒绝所述服务功能链请求,释放已占用的资源,返回步骤1)。
6)接受所述服务功能链请求,返回步骤1)。
实施例3:
一种基于异步强化学习的服务功能链部署方法,包括如下步骤:
1)初始化程序,读取服务功能链请求信息。
服务功能链请求包括虚拟网络功能集记为Nv={VNF1,VNF2,VNF3,…,VNFT},且相邻VNF间存在虚拟链路VL,虚拟链路集为Lv={VL1,VL2,VL3,…,VLT-1}。其中,T为所述服务功能链请求的虚拟网络功能数量;
2)使用已训练的神经网络模型依次生成虚拟网络功能的放置策略并进行放置,步骤包括:
2.1)如图4所示,通过异步的优势行动者评论家(Asynchronous AdvantageActor-Critic,A3C)方法来训练神经网络,具体方法包括如下步骤:
2.1.1)初始化N个智能体的参数为全局神经网络参数。每个智能体包括两个神经网络模型行动者Actor和评论家Critic,Actor神经网络即步骤B中所述模型,Critic神经网络除最终输出层的输出结果为单数值外,其余结构与Actor神经网络相同。
2.1.2)第n个智能体(初始化n为1)读取当前服务功能链信息。
2.1.3)该智能体对服务功能链中的每个虚拟网络功能进行放置。Actor神经网络生成放置概率策略,根据∈-贪心策略以概率为(1-∈)的当前状态选择动作at,选择具有最高估计Q值的动作,或者以概率∈随机选择动作。
2.1.4)根据服务功能链放置结果,智能体获得相应奖励。奖励计算公式如下:
Figure BDA0002847301970000181
式中,ξ是奖励折扣因子,rev是指当前SFC被成功部署时的收益,计算公式如下:
Figure BDA0002847301970000182
式中,μk代表k类节点资源容量的单价(如中央处理器、内存和存储容量等),η代表链路资源容量的单价,
Figure BDA0002847301970000183
代表节点ni的k类资源容量,
Figure BDA0002847301970000184
代表链路li的带宽;
2.1.5)该智能体对Actor和Critic进行训练并获得梯度。Critic神经网络参数ω更新的梯度策略如下:
Figure BDA0002847301970000185
其中εω是学习率,(st,at)代表状态-动作对。A(at,st)是优势函数,可以通过A(at,st)=rt+γVω(st+1)-Vω(st)计算得到,其中Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值。
Actor神经网络参数θ更新的梯度策略为:
Figure BDA0002847301970000191
其中,πθ表示参数θ下的放置策略π。
2.1.6)判断n是否大于N,若是,则进入步骤2.1.7),否则,令n=n+1,进入步骤2.1.2)。
2.1.7)使用各个智能体的梯度对全局神经网络参数进行更新。异步的优势行动者评论家(Asynchronous Advantage Actor-Critic,A3C)方法是一种并行训练的强化学习算法。
2.2)如图2、图3所示,生成策略,包括如下步骤:
2.2.2)利用基于门控神经单元(Gate Recurrent Unit,GRU)的编码器捕获当前服务功能链的虚拟网络功能间时序关系。
GRU可以描述为一个包含多个乘法门单元的封装单元。对于某个时间步长t,GRU单元将当前服务功能链的特征
Figure BDA0002847301970000192
以及上一个时间步幅的隐藏状态向量et-1作为输入,然后输出当前时间步幅et的隐藏状态向量,即
Figure BDA0002847301970000193
具体可描述为:
Figure BDA0002847301970000194
Figure BDA0002847301970000195
Figure BDA0002847301970000196
Figure BDA0002847301970000197
式中,rt、zt
Figure BDA0002847301970000198
分别表示重置门、遗忘门和候选的隐藏状态,Wr、Vr、br、Wz、Vz、bz、We、Ve、be是相应单元的参数;σ(·)是sigmoid激活函数;⊙表示元素的乘法。
2.2.2)读取当前的物理网络状态信息,并利用图卷积神经网络(GraphConvolutionalNetwork,GCN)提取网络拓扑的特征。其中实时的物理网络拓扑信息包括物理节点的各项资源的总容量及当前剩余量信息和物理链路的带宽资源的总容量和当前剩余量信息。
GCN是一种适应图数据结构的卷积神经网络,它以物理网络状态
Figure BDA0002847301970000199
作为输入,然后输出利用卷积运算提取得到的图数据特征:
Figure BDA00028473019700001910
式中,σ(·)是激活函数,W是可训练参数,
Figure BDA00028473019700001911
是一种图数据结构的卷积操作,
Figure BDA00028473019700001912
是图的邻接矩阵与单位矩阵的和。
2.2.3)利用GRU和注意力机制(Attention mechanism)来充分提取当前放置的虚拟网络功能VNFt的特征。
GRU以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入:
Figure BDA0002847301970000201
注意力机制可以获取当前放置的虚拟网络功能VNFt与整体服务功能链所有虚拟网络功能序列的相关性,它以每个编码器隐藏状态ej作为输入,然后用对齐权重αt,j对输入序列进行加权求和得到上下文向量ct
Figure BDA0002847301970000202
式中,对齐权重αt,j计算公式为
Figure BDA0002847301970000203
其中,
Figure BDA0002847301970000204
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值。“;”表示两个向量的串联,
Figure BDA0002847301970000205
和Wa是可训练的变量。
2.2.4)融合提取的特征并生成当前虚拟网络功能放置在每个物理网络节点的概率。通过全连接神经网络融合当前放置的虚拟网络功能和实时物理网络的状态特征,然后输入至Softmax得到最终的概率输出。放置概率的策略生成可表示为:
Figure BDA0002847301970000206
式中,
Figure BDA0002847301970000207
Figure BDA0002847301970000208
和Wb为可训练的参数。
2.2.5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤2.2.6);否则,进入步骤2.2.9)。存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量必须大于当前VNF的资源请求量;
2.2.6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤2.2.7);否则,进入步骤2.2.9);
其中特定物理链路是指可以连通放置着当前VNF的物理节点与放置着上一VNF的物理节点之间的物理链路,且链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量。该特定物理链路是利用Dijkstra最短路径算法进行寻找的。
2.2.7)更新物理网络的链路信息。利用虚拟链路带宽请求量更新物理网络中步骤2.2.6)找到的特定物理链路带宽资源剩余量信息;
2.2.8)判断所有VNF是否被依次放置成功,若是,则进入步骤2.2.10),否则,进入步骤2.2.2).
2.2.9)当前服务功能链部署失败,中止放置;
2.2.10)当前服务功能链部署成功,中止放置;
3)判断是否服务功能链中所有虚拟网络功能均放置成功,若是,则进入步骤5);否则,进入步骤4)。
4)拒绝该服务功能链请求,释放已占用的资源,返回步骤1);
5)接受该服务功能链请求,返回步骤1);
本发明提出一种基于异步强化学习的网络服务功能链动态部署方法,它主要用于在线情景下进行网络服务功能链的动态部署。本发明将服务功能链部署问题建模为马尔科夫决策过程(Markov Decision Process,MDP),利用强化学习(Reinforcement Learning,RL)方法和深度学习(DeepLearning)技术构建神经网络模型来生成服务功能链在底层网络中的放置决策,并使用异步的优势行动者评论家(Asynchronous Advantage Actor-Critic,A3C)算法来加速模型训练,以实现高质量的网络服务功能链动态部署。

Claims (10)

1.基于异步强化学习的网络服务功能链动态部署系统,其特征在于,包括信息获取模块、所述神经网络训练模块、虚拟网络功能放置模块、放置校验模块和数据库。
所述信息获取模块获取服务功能链请求;
所述服务功能链请求的信息包括虚拟网络功能集Nv={VNF1,VNF2,VNF3,...,VNFT};VNFT表示第T个虚拟网络功能;T为所述服务功能链请求的虚拟网络功能数量;
所述神经网络训练模块建立神经网络,并对神经网络模型进行训练,得到训练好的神经网络模型;
所述虚拟网络功能放置模块将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置;
所述放置校验模块判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则接受所述服务功能链请求,否则拒绝所述服务功能链请求,释放已占用的资源;
所述数据库存储信息获取模块、神经网络训练模块、虚拟网络功能放置模块、放置校验模块的数据。
2.基于异步强化学习的网络服务功能链动态部署方法,其特征在于,包括以下步骤:
1)获取服务功能链请求;
2)建立神经网络模型,并对神经网络模型进行训练,得到训练好的神经网络模型;
3)将服务功能链请求信息输入到训练好的神经网络模型中,生成虚拟网络功能的放置方式,并完成虚拟网络功能的放置;
4)判断服务功能链请求中所有虚拟网络功是否均放置成功,若是,则进入步骤6);否则,进入步骤5)。
5)拒绝所述服务功能链请求,释放已占用的资源,返回步骤1);
6)接受所述服务功能链请求,返回步骤1)。
3.根据权利要求2所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于:相邻虚拟网络功能之间存在虚拟链路(Virtual Link,VL);所有虚拟链路组成虚拟链路集Lv={VL1,VL2,VL3,...,VLT-1};VLn包括第n条虚拟链路的带宽请求信息,下标n表示其虚拟链路序号;n=1,2,...,T-1。
4.根据权利要求2所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,所述神经网络包括图卷积神经网络和若干GRU单元;
所述图卷积神经网络的输入为一个图的邻接矩阵A和图中节点的特征矩阵X,输出为提取图中特征后的新表示向量Zt
其中,新表示向量Zt如下所示:
Figure FDA0002847301960000021
式中,σ(·)是激活函数,W是可训练参数;
Figure FDA0002847301960000022
表示图数据结构的卷积操作;
Figure FDA0002847301960000023
是图的邻接矩阵与单位矩阵之和;
对于任意时间步长t,GRU单元的输入为当前服务功能链的特征
Figure FDA0002847301960000024
上一个时间步幅的隐藏状态向量et-1,输出为当前时间步幅的隐藏状态向量et
隐藏状态向量et如下所示:
Figure FDA0002847301960000025
式中,zt为遗忘门;
Figure FDA0002847301960000026
为候选的隐藏状态;
其中,遗忘门zt和候选的隐藏状态
Figure FDA0002847301960000027
分别如下所示:
Figure FDA0002847301960000028
Figure FDA0002847301960000029
式中,rt表示重置门;σ(·)是sigmoid激活函数;⊙表示元素的乘法;Wz、We、Vz、Ve表示权重;bz、be表示偏置;
Figure FDA00028473019600000210
式中,Wr、Vr表示重置门;br表示偏置。
5.根据权利要求2所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,对神经网络模型进行训练的步骤包括:
1)建立Actor神经网络和Critic神经网络;Actor神经网络和Critic神经网络均包括图卷积神经网络和若干GRU单元;其中,Critic神经网络输出层输出单数值;
设置N个智能体,并初始化所述智能体的参数为全局神经网络参数;所述全局神经网络参数包括Actor神经网络和Critic神经网络的参数;所述智能体包括神经网络模型行动者Actor和评论家Critic;
2)第n个智能体读取当前服务功能链信息;n初始值为1;
3)第n个智能体对服务功能链请求中的每个虚拟网络功能进行放置,其中,Actor神经网络利用∈-贪心策略生成放置概率策略;
4)根据服务功能链放置结果,第n个智能体获得奖励reward,即:
Figure FDA0002847301960000031
式中,ξ是奖励折扣因子;
其中,当前服务功能链被成功部署时的收益rev如下所示:
Figure FDA0002847301960000032
式中,μk代表k类节点资源容量的成本,η代表链路资源容量的单价,
Figure FDA0002847301960000033
代表节点ni的k类资源容量,
Figure FDA0002847301960000034
代表链路li的带宽;
5)第n个智能体对Actor神经网络和Critic神经网络进行训练;其中,Critic神经网络参数ω更新如下:
Figure FDA0002847301960000035
式中,εω是学习率,(st,at)代表状态-动作对;A(at,st)=rt+γVω(st+1)-Vω(st)是优势函数;Vω(st)、Vω(st+1)是Critic在不同状态下输出的估测值;γ为估测系数;ω’为更新后的参数;
Figure FDA0002847301960000036
为梯度;
Actor神经网络参数θ更新如下:
Figure FDA0002847301960000037
式中,πθ表示参数θ下的放置策略π;θ’为更新后的参数;
Figure FDA0002847301960000038
为梯度;εθ是学习率;
6)判断n是否大于N,若是,则进入步骤7),否则,令n=n+1,返回步骤2);
7)使用各个智能体的梯度对全局神经网络参数进行更新。
6.根据权利要求5所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,利用∈-贪心策略生成放置概率策略的方式为:以概率为(1-∈)的当前状态选择具有最高估计Q值动作at
7.根据权利要求5所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,利用∈-贪心策略生成放置概率策略的方式为:以概率∈随机选择动作at
8.根据权利要求2所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,生成虚拟网络功能放置方式的步骤包括:
1)利用训练好的神经网络模型的编码器捕获当前服务功能链的虚拟网络功能间时序关系;
2)读取当前的物理网络状态信息,并利用训练好的神经网络模型提取网络拓扑的特征;
3)提取当前放置的虚拟网络功能VNFt的特征,步骤包括:
3.1)以编码器最后一时间步幅的隐藏状态eT或者上一步时间步幅动作结果at-1和隐藏状态dt-1作为输入,得到当前隐藏层输出dt,即:
Figure FDA0002847301960000041
3.2)计算对齐权重αt,j,即:
Figure FDA0002847301960000042
式中,
Figure FDA0002847301960000043
是当前隐藏层输出dt和每个编码器隐藏状态ej之间相关性的分值;[dt;ej]表示向量dt和向量ej串联;
Figure FDA0002847301960000044
和Wa是可训练的变量;
3.3)以每个编码器隐藏状态ej作为输入,用对齐权重αt,j对输入序列进行加权求和,得到上下文向量ct,即:
Figure FDA0002847301960000045
4)利用训练好的神经网络模型融合当前放置的虚拟网络功能和实时物理网络的状态特征,并输入至Softmax,得到当前虚拟网络功能放置在每个物理网络节点的概率π[·|{a1,...,at-1},dt,ct,Zt],即:
Figure FDA0002847301960000046
式中,状态特征
Figure FDA0002847301960000047
Figure FDA0002847301960000048
和Wb为可训练的参数;
5)判断是否存在可放置当前VNF的物理节点,若是,则进入步骤6);否则,进入步骤9);存在可放置当前VNF的物理节点的判断标准为:物理节点的各项资源剩余量大于当前VNF的资源请求量;
6)判断是否存在满足带宽约束的特定物理链路,若是,则进入步骤7);否则,进入步骤9);所述特定物理链路表示连通放置有当前VNF的物理节点与放置有上一VNF的物理节点的物理链路;所述特定物理链路中的每条边剩余带宽资源必须大于当前VNF与上一VNF间虚拟链路的资源请求量;
7)利用虚拟链路带宽请求量更新所述特定物理链路带宽资源剩余量信息;
8)判断所有VNF是否被依次放置成功,若是,则进入步骤10),否则,返回步骤2);
9)当前服务功能链部署失败,中止放置;
10)当前服务功能链部署成功,中止放置。
9.根据权利要求8所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,所述特定物理链路的寻找方法为Dijkstra最短路径算法。
10.根据权利要求8所述的基于异步强化学习的网络服务功能链动态部署方法,其特征在于,所述物理网络拓扑信息包括物理节点的各项资源的总容量、物理节点各项资源的当前剩余量信息、物理链路带宽资源的总容量和当前剩余量信息。
CN202011514515.5A 2020-12-21 2020-12-21 基于异步强化学习的网络服务功能链动态部署系统及方法 Active CN112631717B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011514515.5A CN112631717B (zh) 2020-12-21 2020-12-21 基于异步强化学习的网络服务功能链动态部署系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011514515.5A CN112631717B (zh) 2020-12-21 2020-12-21 基于异步强化学习的网络服务功能链动态部署系统及方法

Publications (2)

Publication Number Publication Date
CN112631717A true CN112631717A (zh) 2021-04-09
CN112631717B CN112631717B (zh) 2023-09-05

Family

ID=75318103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011514515.5A Active CN112631717B (zh) 2020-12-21 2020-12-21 基于异步强化学习的网络服务功能链动态部署系统及方法

Country Status (1)

Country Link
CN (1) CN112631717B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113490254A (zh) * 2021-08-11 2021-10-08 重庆邮电大学 一种基于联邦学习双向gru资源需求预测的vnf迁移方法
CN113507411A (zh) * 2021-06-10 2021-10-15 中国联合网络通信集团有限公司 一种路径选择方法、装置、设备及存储介质
CN113535399A (zh) * 2021-07-15 2021-10-22 电子科技大学 一种nfv资源调度方法、装置以及系统
CN114172820A (zh) * 2021-11-26 2022-03-11 广东技术师范大学 跨域sfc动态部署方法、装置、计算机设备及存储介质
CN114172937A (zh) * 2022-01-19 2022-03-11 重庆邮电大学 基于深度强化学习的动态服务功能链编排方法及系统
CN115037628A (zh) * 2022-05-23 2022-09-09 郑州轻工业大学 一种基于深度强化学习的自适应服务功能链映射方法
CN115314394A (zh) * 2022-06-30 2022-11-08 国网河南省电力公司信息通信公司 一种面向智能电网的资源分配方法
CN115686846A (zh) * 2022-10-31 2023-02-03 重庆理工大学 边缘计算中融合图神经网络和强化学习的容器集群在线部署方法
CN116760777A (zh) * 2023-08-22 2023-09-15 无锡车联天下信息技术有限公司 一种基于abea3c的多路径拥塞控制方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111335A (zh) * 2017-12-04 2018-06-01 华中科技大学 一种调度和链接虚拟网络功能的方法及系统
WO2018203780A1 (en) * 2017-05-05 2018-11-08 Telefonaktiebolaget Lm Ericsson (Publ) Manager node and method performed therein for handling one or more network functions in a communication network
CN110505099A (zh) * 2019-08-28 2019-11-26 重庆邮电大学 一种基于迁移a-c学习的服务功能链部署方法
CN111147307A (zh) * 2019-12-30 2020-05-12 重庆邮电大学 基于深度强化学习的服务功能链可靠部署方法
CN111538587A (zh) * 2020-03-06 2020-08-14 重庆邮电大学 一种基于负载均衡的服务功能链重配置方法
CN111669291A (zh) * 2020-06-03 2020-09-15 北京理工大学 基于深度强化学习的虚拟化网络服务功能链部署方法
CN111935724A (zh) * 2020-07-06 2020-11-13 天津大学 基于异步深度强化学习的无线传感器网络拓扑优化方法
CN112083933A (zh) * 2020-08-27 2020-12-15 重庆大学 一种基于强化学习的服务功能链部署方法
CN112087329A (zh) * 2020-08-27 2020-12-15 重庆大学 一种网络服务功能链部署方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018203780A1 (en) * 2017-05-05 2018-11-08 Telefonaktiebolaget Lm Ericsson (Publ) Manager node and method performed therein for handling one or more network functions in a communication network
CN108111335A (zh) * 2017-12-04 2018-06-01 华中科技大学 一种调度和链接虚拟网络功能的方法及系统
CN110505099A (zh) * 2019-08-28 2019-11-26 重庆邮电大学 一种基于迁移a-c学习的服务功能链部署方法
CN111147307A (zh) * 2019-12-30 2020-05-12 重庆邮电大学 基于深度强化学习的服务功能链可靠部署方法
CN111538587A (zh) * 2020-03-06 2020-08-14 重庆邮电大学 一种基于负载均衡的服务功能链重配置方法
CN111669291A (zh) * 2020-06-03 2020-09-15 北京理工大学 基于深度强化学习的虚拟化网络服务功能链部署方法
CN111935724A (zh) * 2020-07-06 2020-11-13 天津大学 基于异步深度强化学习的无线传感器网络拓扑优化方法
CN112083933A (zh) * 2020-08-27 2020-12-15 重庆大学 一种基于强化学习的服务功能链部署方法
CN112087329A (zh) * 2020-08-27 2020-12-15 重庆大学 一种网络服务功能链部署方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
PAN PAN等: "GCN-TD: A Learning-based Approach for Service Function Chain Deployment on the Fly", 《GLOBECOM 2020 - 2020 IEEE GLOBAL COMMUNICATIONS CONFERENCE》, pages 1 - 6 *
PHAM TRAN ANH QUANG等: "Evolutionary Actor-Multi-Critic Model for VNF-FG Embedding", 《2020 IEEE 17TH ANNUAL CONSUMER COMMUNICATIONS & NETWORKING CONFERENCE (CCNC)》, pages 1 - 6 *
TIANFU WANG等: "DRL-SFCP: Adaptive Service Function Chains Placement with Deep Reinforcement Learning", 《ICC 2021 - IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS》, pages 1 - 6 *
VOLODYMYR MNIH等: "Asynchronous Methods for Deep Reinforcement Learning", 《ICML\'16: PROCEEDINGS OF THE 33RD INTERNATIONAL CONFERENCE ON INTERNATIONAL CONFERENCE ON MACHINE LEARNING 》, vol. 48, pages 1928 *
周钰: "基于流量感知的虚拟网络功能智能编排算法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, pages 136 - 782 *
唐伦等: "基于强化学习的5G网络切片虚拟网络功能迁移算法", 《电子与信息学报》, vol. 42, no. 3, pages 669 - 677 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113507411A (zh) * 2021-06-10 2021-10-15 中国联合网络通信集团有限公司 一种路径选择方法、装置、设备及存储介质
CN113507411B (zh) * 2021-06-10 2022-10-18 中国联合网络通信集团有限公司 一种路径选择方法、装置、设备及存储介质
CN113535399A (zh) * 2021-07-15 2021-10-22 电子科技大学 一种nfv资源调度方法、装置以及系统
CN113490254B (zh) * 2021-08-11 2022-03-29 重庆邮电大学 一种基于联邦学习双向gru资源需求预测的vnf迁移方法
CN113490254A (zh) * 2021-08-11 2021-10-08 重庆邮电大学 一种基于联邦学习双向gru资源需求预测的vnf迁移方法
CN114172820A (zh) * 2021-11-26 2022-03-11 广东技术师范大学 跨域sfc动态部署方法、装置、计算机设备及存储介质
CN114172820B (zh) * 2021-11-26 2024-03-05 广东技术师范大学 跨域sfc动态部署方法、装置、计算机设备及存储介质
CN114172937A (zh) * 2022-01-19 2022-03-11 重庆邮电大学 基于深度强化学习的动态服务功能链编排方法及系统
CN114172937B (zh) * 2022-01-19 2023-12-29 广州市宝思信息科技有限公司 基于深度强化学习的动态服务功能链编排方法及系统
CN115037628B (zh) * 2022-05-23 2023-08-22 郑州轻工业大学 一种基于深度强化学习的自适应服务功能链映射方法
CN115037628A (zh) * 2022-05-23 2022-09-09 郑州轻工业大学 一种基于深度强化学习的自适应服务功能链映射方法
CN115314394A (zh) * 2022-06-30 2022-11-08 国网河南省电力公司信息通信公司 一种面向智能电网的资源分配方法
CN115314394B (zh) * 2022-06-30 2023-06-20 国网河南省电力公司信息通信公司 一种面向智能电网的资源分配方法
CN115686846A (zh) * 2022-10-31 2023-02-03 重庆理工大学 边缘计算中融合图神经网络和强化学习的容器集群在线部署方法
CN116760777A (zh) * 2023-08-22 2023-09-15 无锡车联天下信息技术有限公司 一种基于abea3c的多路径拥塞控制方法
CN116760777B (zh) * 2023-08-22 2023-10-20 无锡车联天下信息技术有限公司 一种基于abea3c的多路径拥塞控制方法

Also Published As

Publication number Publication date
CN112631717B (zh) 2023-09-05

Similar Documents

Publication Publication Date Title
CN112631717B (zh) 基于异步强化学习的网络服务功能链动态部署系统及方法
WO2022083624A1 (zh) 一种模型的获取方法及设备
CN109948029B (zh) 基于神经网络自适应的深度哈希图像搜索方法
CN110717627B (zh) 一种基于对偶图框架的全量交通预测方法
CN111079931A (zh) 一种基于图神经网络的状态空间概率性多时间序列预测方法
CN114817663B (zh) 一种基于类别感知图神经网络的服务建模与推荐方法
CN112685165B (zh) 一种基于联合强化学习策略的多目标云工作流调度方法
CN112465120A (zh) 一种基于进化方法的快速注意力神经网络架构搜索方法
CN111506835A (zh) 一种融合用户时间特征和个性特征的数据特征提取方法
CN111723910A (zh) 构建多任务学习模型的方法、装置、电子设备及存储介质
CN113762595A (zh) 通行时间预测模型训练方法、通行时间预测方法及设备
Chen A hybrid SOM-BPN approach to lot output time prediction in a wafer fab
CN111737826B (zh) 一种基于增强学习的轨道交通自动仿真建模方法及装置
CN114912357A (zh) 基于用户模型学习的多任务强化学习用户运营方法及系统
CN105260746A (zh) 一种可扩展的多层集成多标记学习系统
CN113590958B (zh) 基于样本回放的序列推荐模型的持续学习方法
CN116975686A (zh) 训练学生模型的方法、行为预测方法和装置
CN103886169A (zh) 一种基于AdaBoost的链路预测算法
CN115577757A (zh) 基于图卷积网络节点标签异构图的社区发现方法
CN115544307A (zh) 基于关联矩阵的有向图数据特征提取与表达方法和系统
Huo et al. Tensor-based cooperative control for large scale multi-intersection traffic signal using deep reinforcement learning and imitation learning
CN113377884A (zh) 基于多智能体增强学习的事件语料库提纯方法
CN113360772A (zh) 一种可解释性推荐模型训练方法与装置
Kang et al. Learning scalable and transferable multi-robot/machine sequential assignment planning via graph embedding
Gital et al. LSTM network for predicting medium to long term electricity usage in residential buildings (Rikkos Jos-City, Nigeria)

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