CN111510381B - 一种多域网络环境中基于强化学习的服务功能链部署方法 - Google Patents

一种多域网络环境中基于强化学习的服务功能链部署方法 Download PDF

Info

Publication number
CN111510381B
CN111510381B CN202010325982.7A CN202010325982A CN111510381B CN 111510381 B CN111510381 B CN 111510381B CN 202010325982 A CN202010325982 A CN 202010325982A CN 111510381 B CN111510381 B CN 111510381B
Authority
CN
China
Prior art keywords
network
node
domain
sub
chain
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
Application number
CN202010325982.7A
Other languages
English (en)
Other versions
CN111510381A (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202010325982.7A priority Critical patent/CN111510381B/zh
Publication of CN111510381A publication Critical patent/CN111510381A/zh
Application granted granted Critical
Publication of CN111510381B publication Critical patent/CN111510381B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种多域网络环境中基于强化学习的服务功能链部署方法,根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,方便多服务提供商合作组网,也符合大型多域网络的使用情景;基于强化学习的递归迭代算法对网络路径按顶层网络和子域网络分层训练,解决了现有技术伴有的多域网络中部署服务功能链时运算时间长、资源消耗大的问题,且不受网络规模限制,不受服务器性能限制;通过能耗的量化和最低耗能方案的寻优,使得服务功能链部署的总利润比传统启发式算法更高。

Description

一种多域网络环境中基于强化学习的服务功能链部署方法
技术领域
本发明涉及计算机网络领域,具体涉及一种多域网络环境中基于强化学习的服务功能链部署方法。
背景技术
在计算机网络领域中,从网络虚拟化技术被提出开始,学术界就有了大量针对网络功能虚拟化方方面面的研究,其中服务功能链(Service Function Chain,SFC)的部署问题就是一个热门方向,在拿到用户需求后,如何结合自身的服务网络定出一条对用户和自己都有利的SFC,是一个急切等待解决的问题。这个问题可能涉及到网络结构、服务器性能、网络传输性能、网络能源消耗以及多运营方协作。目前对于多域网络下动态SFC部署的研究也有很多,比如利用传统启发式算法求解和其他类型启发式算法求解。
传统启发式求解算法,避免了复杂的数学计算,算法的部署效率较高。但为了方便问题求解,求解过程中对于多域网络的设定是全网信息共享,这不适合现实中的某些特定情况,比如多运营商合作下的多域协同,这无法保护子域内的隐私信息。而且对于启发式算法,部署成功率不高也是它的一个问题。
其他类型启发式算法,考虑了子域的隐私保护,其主要思想是把支持需要部署功能的子域内节点分级,用域间节点形成抽象网络,先在抽象网络形成路径,再具体化各子域内路径。但由于算法需要考虑在抽象路径相关子域依次判断虚拟网络功能部署条件,造成运算时间稍长,再加上对网络节能能力的关注,往往不能得到整个动态SFC部署问题的获取利润的最优解决方案。
发明内容
针对现有技术中的上述不足,本发明提供的一种多域网络环境中基于强化学习的服务功能链部署方法解决了现有技术在多域网络中部署服务功能链时运算时间长、资源消耗大、域内隐私保护能力不强以及不能使得服务功能链获取利润最优的问题。
为了达到上述发明目的,本发明采用的技术方案为:一种多域网络环境中基于强化学习的服务功能链部署方法,包括以下步骤:
S1、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,按服务器节点所在域进行网络分层,得到包括1个顶层网络和N个子域网络的两层网络,N为正整数;
S2、通过域间Q强化学习训练算法训练得到顶层网络四维记忆矩阵Qtop
S3、通过域间Q强化学习决策算法从顶层网络四维记忆矩阵Qtop中抽取顶层网络备选路径集PAtop
S4、通过域内Q强化学习训练算法训练得到各个子域网络的五维记忆矩阵
Figure BDA0002463237320000021
其中n为子域编号,其值在闭区间[1,N]中;
S5、根据顶层网络备选路径集PAtop,通过域内Q强化学习决策算法从各个子域网络的五维记忆矩阵
Figure BDA0002463237320000022
中抽取各个子域网络的备选路径集
Figure BDA0002463237320000023
其中n为子域编号,其值在闭区间[1,N]中;
S6、根据顶层网络备选路径集PAtop和各个子域网络的备选路径集
Figure BDA0002463237320000024
形成具体路径,通过网络节能评分算法,采用栈式结构对具体路径进行决策,得到最优节能路径,实现服务功能链部署。
进一步地,所述步骤S1包括以下分步骤:
S11、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络;
S12、将多域网络中的服务器节点组成的网络拓扑G依域分为N个子域网络拓扑,得到N个子域网络,记子域网络拓扑为
Figure BDA0002463237320000031
其中n为子域编号,其值在闭区间[1,N]中;
S13、将每个子域抽象成顶层网络节点,将每个子域中具有域间通信能力的服务器形成的通信链路抽象成顶层网络节点间通路,构成顶层网络拓扑Gtop,得到顶层网络。
进一步地,所述步骤S2包括以下分步骤:
S21、初始化顶层网络四维记忆矩阵Qtop,设定其四个下标分别为now_h、now_node、action_node和end_node,所有元素均设为0;
S22、初始化顶层网络四维奖励矩阵Rtop,设定其四个下标分别为now_h、now_node、action_node和end_node,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
S23、选取顶层网络拓扑Gtop中的任一个服务器节点作为节点v;
S24、判断节点v是否曾被选取,若是,则跳转至步骤S23,若否则跳转至步骤S25;
S25、初始化链路chain为空列表;
S26、在链路chain的尾部添入节点v;
S27、根据顶层网络四维奖励矩阵Rtop、顶层网络拓扑Gtop和添入节点v的链路chain,通过递归算法,训练顶层网络四维记忆矩阵Qtop
S28、判断顶层网络拓扑Gtop中的节点是否都已被选取作为节点v,若是,则结束,此时的顶层网络四维记忆矩阵Qtop训练完成,若否,则跳转至步骤S23。
进一步地,所述步骤S27包括以下分步骤:
A1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
A2、设置一个节点标识v0,标记链路chain当前的最后一个元素;
A3、判断v0节点在顶层网络拓扑Gtop是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A4,若否,则结束;
A4、在顶层网络拓扑Gtop中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
A5、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤A3,若否,则跳转至步骤A6;
A6、将节点v2存入到临时列表chain_tmp的尾部;
A7、将临时列表chain_tmp的元素倒序,根据顶层网络四维奖励矩阵Rtop通过下式更新顶层网络四维记忆矩阵Qtop
Qtop(s,a)=0.8(r+maxa,Qtop(s′,a′)) (1)
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp倒序后的元素而定,r为顶层网络四维奖励矩阵Rtop中的元素;
A8、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A3,若否则跳转至步骤A9;
A9、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,并跳转至步骤A3。
进一步地,所述步骤S3包括以下分步骤:
S31、初始化顶层网络备选路径集pAtop
S32、读取用户请求列表RE,并判断用户请求列表RE中的用户请求是否都已处理,若是,则结束,若否,则跳转至步骤S33;
S33、在用户请求列表RE中未处理的用户请求中任选一个用户请求作为用户请求re;
S34、根据用户请求re指示的起止节点,从顶层网络四维记忆矩阵Qtoh中获取备选路径,存入顶层网络备选路径集pAtop
S35、判断顶层网络备选路径集pAtop是否为空集,若是,则跳转至步骤S32,若否,则标记用户请求re指向的用户请求列表RE中的用户请求为已处理的用户请求,并跳转至步骤S32。
进一步地,所述步骤S4中每一个子域网络的域内Q强化学习训练算法均包括以下分步骤:
B1、初始化该子域网络的五维记忆矩阵
Figure BDA0002463237320000051
设定其五个下标分别为now_h、now_node、action_node、end_node和h,所有元素均为0;
B2、初始化该子域网络的五维奖励矩阵
Figure BDA0002463237320000052
设定其五个下标分别为now_h、now_node、action_node、end_node和h,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
B3、设置迭代阈值imax,并初始化迭代参数i为0;
B4、选取该子域网络拓扑
Figure BDA0002463237320000053
中的具有跨域功能的服务器节点作为节点v;
B5、判断节点v是否曾被选取,若是,则跳转至B4,若否则跳转至步骤B6;
B6、初始化链路chain为空列表;
B7、在链路chain的尾部添入节点v;
B8、根据该子域网络的五维奖励矩阵
Figure BDA0002463237320000054
该子域网络拓扑
Figure BDA0002463237320000055
迭代阈值imax、迭代参数i和添入节点v的链路chain,通过递归算法,训练该子域网络的五维记忆矩阵
Figure BDA0002463237320000056
B9、判断该子域网络拓扑
Figure BDA0002463237320000057
中的具有跨域功能的服务器节点是否都已被选取作为节点v,若是,则结束,此时的矩阵
Figure BDA0002463237320000058
训练完成,若否,则跳转至步骤B4。
进一步地,所述步骤B8包括以下分步骤:
C1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
C2、设置一个节点标识v0,标记链路chain当前的最后一个元素,并将迭代参数i的值加1;
C3、判断迭代参数i的值是否小于迭代阈值imax,若是则跳转至步骤C4,若否则结束;
C4、判断v0节点在该子域网络拓扑
Figure BDA0002463237320000061
中是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C5,若否,则结束;
C5、在该子域网络拓扑
Figure BDA0002463237320000062
中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
C6、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤C4,若否,则跳转至步骤C7;
C7、将节点v2存入到临时列表chain_tmp的尾部;
C8、将临时列表chain_tmp的元素倒序,根据各子域网络五维奖励矩阵
Figure BDA0002463237320000063
通过下式更新矩阵
Figure BDA0002463237320000064
Figure BDA0002463237320000065
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp的当前顺序的元素而定,r′为该子域网络的五维奖励矩阵
Figure BDA0002463237320000066
中的元素;
C9、将临时列表chain_tmp的元素正序,根据各子域网络五维奖励矩阵
Figure BDA0002463237320000067
通过式(2)更新矩阵
Figure BDA0002463237320000068
C10、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C4,若否则跳转至步骤C11;
C11、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,将迭代参数i的值加1,并跳转至步骤C3。
进一步地,所述步骤S5包括以下分步骤:
S51、初始化该子域网络域内备选路径集
Figure BDA0002463237320000071
S52、读取用户请求列表RE和顶层网络备选路径集pAtop
S53、针对顶层网络备选路径集PAtop中的每一条路径pa,获取其经过的所有子域网络拓扑
Figure BDA0002463237320000072
S54、针对用户请求列表RE中的所有用户请求re,根据顶层网络备选路径集pAtop中的每一条路径pa与子域网络拓扑
Figure BDA0002463237320000073
的关系获得各个子域网络的备选路径集
Figure BDA0002463237320000074
S55、通过下式对
Figure BDA0002463237320000075
中的每一条路径
Figure BDA0002463237320000076
进行初步筛选,并在
Figure BDA0002463237320000077
中剔除不满足该式条件的路径:
Figure BDA0002463237320000078
其中,j为路径编号,
Figure BDA0002463237320000079
表示子域n的第j路径,
Figure BDA00024632373200000710
表示子域n的最大带宽,
Figure BDA00024632373200000711
为路径
Figure BDA00024632373200000712
的带宽,BSFC为服务功能链SFC整体带宽;
S56、通过下述两式计算
Figure BDA00024632373200000713
中每条路径
Figure BDA00024632373200000714
的上报模糊值
Figure BDA00024632373200000715
并将
Figure BDA00024632373200000716
中的路径按
Figure BDA00024632373200000717
增序排序:
Figure BDA00024632373200000718
Figure BDA00024632373200000719
其中,
Figure BDA00024632373200000720
为路径
Figure BDA00024632373200000721
所需能量,Energybase为新开机服务器节点基础耗能,numnew_power_on为该路径内新开机服务器节点数,Energyvnf为服务器虚拟网络功能VNF耗能,numnode_power_on为该路径服务器节点总数量;
S57、记录
Figure BDA0002463237320000081
中每条路径
Figure BDA0002463237320000082
的可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure BDA0002463237320000083
进一步地,所述步骤S6包括以下分步骤:
S61、根据顶层网络备选路径集pAtop和各个子域网络的备选路径集
Figure BDA0002463237320000084
通过栈式结构形成具体路径,构成整条服务功能链SFC;
S62、采用服务功能链SFC的评分值score指标评价服务功能链的节能情况,通过调节各个子域的使用量,在服务功能链SFC中可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure BDA0002463237320000085
满足用户需求的情况下,使得SFC的评分值score最低,评分值score的计算表达式如式(6)所示:
Figure BDA0002463237320000086
其中,
Figure BDA0002463237320000087
为子域网络拓扑
Figure BDA0002463237320000088
的使用权重值,子域网络拓扑
Figure BDA0002463237320000089
使用量越大,权重值越大;评分值score越低能耗越小。
本发明的有益效果为:本方法根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,方便多服务提供商合作组网,也符合大型多域网络的使用情景;基于强化学习的递归迭代算法对网络路径按顶层网络和子域网络分层训练,解决了现有技术伴有的多域网络中部署服务功能链时运算时间长、资源消耗大的问题,且既能使用在多服务提供商协作的多域网络上,也可以使用在同一服务提供商的不同地域的网络上,不受网络规模限制,不受服务器性能限制;通过能耗的量化和最低耗能方案的寻优,使得服务功能链部署的总利润比传统启发式算法更高。
附图说明
图1为一种多域网络环境中基于强化学习的服务功能链部署方法流程示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,在本发明的一个实施例中,一种多域网络环境中基于强化学习的服务功能链部署方法,包括以下步骤:
S1、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,按服务器节点所在域进行网络分层,得到包括1个顶层网络和N个子域网络的两层网络,N为正整数;
S2、通过域间Q强化学习训练算法训练得到顶层网络四维记忆矩阵Qtop
S3、通过域间Q强化学习决策算法从顶层网络四维记忆矩阵Qtop中抽取顶层网络备选路径集PAtop
S4、通过域内Q强化学习训练算法训练得到各个子域网络的五维记忆矩阵
Figure BDA0002463237320000091
其中n为子域编号,其值在闭区间[1,N]中;
S5、根据顶层网络备选路径集PAtop,通过域内Q强化学习决策算法从各个子域网络的五维记忆矩阵
Figure BDA0002463237320000092
中抽取各个子域网络的备选路径集
Figure BDA0002463237320000093
其中n为子域编号,其值在闭区间[1,N]中;
S6、根据顶层网络备选路径集PAtop和各个子域网络的备选路径集
Figure BDA0002463237320000094
形成具体路径,通过网络节能评分算法,采用栈式结构对具体路径进行决策,得到最优节能路径,实现服务功能链部署。
其中,步骤S1包括以下分步骤:
S11、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络;
S12、将多域网络中的服务器节点组成的网络拓扑G依域分为N个子域网络拓扑,得到N个子域网络,记子域网络拓扑为
Figure BDA0002463237320000101
其中n为子域编号,其值在闭区间[1,N]中;
S13、将每个子域抽象成顶层网络节点,将每个子域中具有域间通信能力的服务器形成的通信链路抽象成顶层网络节点间通路,构成顶层网络拓扑Gtop,得到顶层网络。
步骤S2包括以下分步骤:
S21、初始化顶层网络四维记忆矩阵Qtop,设定其四个下标分别为now_h、now_node、action_node和end_node,所有元素均设为0;
S22、初始化顶层网络四维奖励矩阵Rtop,设定其四个下标分别为now_h、now_node、action_node和end_node,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
S23、选取顶层网络拓扑Gtop中的任一个服务器节点作为节点v;
S24、判断节点v是否曾被选取,若是,则跳转至步骤S23,若否则跳转至步骤S25;
S25、初始化链路chain为空列表;
S26、在链路chain的尾部添入节点v;
S27、根据顶层网络四维奖励矩阵Rtop、顶层网络拓扑Gtop和添入节点v的链路chain,通过递归算法,训练顶层网络四维记忆矩阵Qtop
S28、判断顶层网络拓扑Gtop中的节点是否都已被选取作为节点v,若是,则结束,此时的顶层网络四维记忆矩阵Qtop训练完成,若否,则跳转至步骤S23。
步骤S27包括以下分步骤:
A1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
A2、设置一个节点标识v0,标记链路chain当前的最后一个元素;
A3、判断v0节点在顶层网络拓扑Gtop是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A4,若否,则结束;
A4、在顶层网络拓扑Gtop中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
A5、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤A3,若否,则跳转至步骤A6;
A6、将节点v2存入到临时列表chain_tmp的尾部;
A7、将临时列表chain_tmp的元素倒序,根据顶层网络四维奖励矩阵Rtop通过下式更新顶层网络四维记忆矩阵Qtop
Qtop(s,a)=0.8(r+maxa′Qtop(s′,a′)) (1)
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp倒序后的元素而定,r为顶层网络四维奖励矩阵Rtop中的元素;
A8、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A3,若否则跳转至步骤A9;
A9、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,并跳转至步骤A3。
步骤S3包括以下分步骤:
S31、初始化顶层网络备选路径集PAtop
S32、读取用户请求列表RE,并判断用户请求列表RE中的用户请求是否都已处理,若是,则结束,若否,则跳转至步骤S33;
S33、在用户请求列表RE中未处理的用户请求中任选一个用户请求作为用户请求re;
S34、根据用户请求re指示的起止节点,从顶层网络四维记忆矩阵Qtop中获取备选路径,存入顶层网络备选路径集pAtop
S35、判断顶层网络备选路径集PAtop是否为空集,若是,则跳转至步骤S32,若否,则标记用户请求re指向的用户请求列表RE中的用户请求为已处理的用户请求,并跳转至步骤S32。
步骤S4中每一个子域网络的域内Q强化学习训练算法均包括以下分步骤:
B1、初始化该子域网络的五维记忆矩阵
Figure BDA0002463237320000121
设定其五个下标分别为now_h、now_node、action_node、end_node和h,所有元素均为0;
B2、初始化该子域网络的五维奖励矩阵
Figure BDA0002463237320000122
设定其五个下标分别为now_h、now_node、action_node、end_node和h,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
B3、设置迭代阈值imax,并初始化迭代参数i为0;
B4、选取该子域网络拓扑
Figure BDA0002463237320000123
中的具有跨域功能的服务器节点作为节点v;
B5、判断节点v是否曾被选取,若是,则跳转至B4,若否则跳转至步骤B6;
B6、初始化链路chain为空列表;
B7、在链路chain的尾部添入节点v;
B8、根据该子域网络的五维奖励矩阵
Figure BDA0002463237320000124
该子域网络拓扑
Figure BDA0002463237320000125
迭代阈值imax、迭代参数i和添入节点v的链路chain,通过递归算法,训练该子域网络的五维记忆矩阵
Figure BDA0002463237320000131
B9、判断该子域网络拓扑
Figure BDA0002463237320000132
中的具有跨域功能的服务器节点是否都已被选取作为节点v,若是,则结束,此时的矩阵
Figure BDA0002463237320000133
训练完成,若否,则跳转至步骤B4。
步骤B8包括以下分步骤:
C1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
C2、设置一个节点标识v0,标记链路chain当前的最后一个元素,并将迭代参数i的值加1;
C3、判断迭代参数i的值是否小于迭代阈值imax,若是则跳转至步骤C4,若否则结束;
C4、判断v0节点在该子域网络拓扑
Figure BDA0002463237320000134
中是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C5,若否,则结束;
C5、在该子域网络拓扑
Figure BDA0002463237320000135
中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
C6、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤C4,若否,则跳转至步骤C7;
C7、将节点v2存入到临时列表chain_tmp的尾部;
C8、将临时列表chain_tmp的元素倒序,根据各子域网络五维奖励矩阵
Figure BDA0002463237320000136
通过下式更新矩阵
Figure BDA0002463237320000137
Figure BDA0002463237320000138
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp的当前顺序的元素而定,r′为该子域网络的五维奖励矩阵
Figure BDA0002463237320000141
中的元素;
C9、将临时列表chain_tmp的元素正序,根据各子域网络五维奖励矩阵
Figure BDA0002463237320000142
通过式(2)更新矩阵
Figure BDA0002463237320000143
C10、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C4,若否则跳转至步骤C11;
C11、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,将迭代参数i的值加1,并跳转至步骤C3。
步骤S5包括以下分步骤:
S51、初始化该子域网络域内备选路径集
Figure BDA0002463237320000144
S52、读取用户请求列表RE和顶层网络备选路径集pAtop
S53、针对顶层网络备选路径集pAtop中的每一条路径pa,获取其经过的所有子域网络拓扑
Figure BDA0002463237320000145
S54、针对用户请求列表RE中的所有用户请求re,根据顶层网络备选路径集pAtop中的每一条路径pa与子域网络拓扑
Figure BDA0002463237320000146
的关系获得各个子域网络的备选路径集
Figure BDA0002463237320000147
S55、通过下式对
Figure BDA0002463237320000148
中的每一条路径
Figure BDA0002463237320000149
进行初步筛选,并在
Figure BDA00024632373200001410
中剔除不满足该式条件的路径:
Figure BDA00024632373200001411
其中,j为路径编号,
Figure BDA00024632373200001412
表示子域n的第j路径,
Figure BDA00024632373200001413
表示子域n的最大带宽,
Figure BDA00024632373200001414
为路径
Figure BDA00024632373200001415
的带宽,BSFC为服务功能链SFC整体带宽;
S56、通过下述两式计算
Figure BDA00024632373200001416
中每条路径
Figure BDA00024632373200001417
的上报模糊值
Figure BDA00024632373200001418
并将
Figure BDA00024632373200001419
中的路径按
Figure BDA00024632373200001420
增序排序:
Figure BDA00024632373200001421
Figure BDA0002463237320000151
其中,
Figure BDA0002463237320000152
为路径
Figure BDA0002463237320000153
所需能量,Energybase为新开机服务器节点基础耗能,numnew_power_on为该路径内新开机服务器节点数,Energyvnf为服务器虚拟网络功能VNF耗能,numnode_power_on为该路径服务器节点总数量;
S57、记录
Figure BDA0002463237320000154
中每条路径
Figure BDA0002463237320000155
的可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure BDA0002463237320000156
步骤S6包括以下分步骤:
S61、根据顶层网络备选路径集pAtop和各个子域网络的备选路径集
Figure BDA0002463237320000157
通过栈式结构形成具体路径,构成整条服务功能链SFC;
S62、采用服务功能链SFC的评分值score指标评价服务功能链的节能情况,通过调节各个子域的使用量,在服务功能链SFC中可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure BDA0002463237320000158
满足用户需求的情况下,使得SFC的评分值score最低,评分值score的计算表达式如式(6)所示:
Figure BDA0002463237320000159
其中,
Figure BDA00024632373200001510
为子域网络拓扑
Figure BDA00024632373200001511
的使用权重值,子域网络拓扑
Figure BDA00024632373200001512
使用量越大,权重值越大;评分值score越低能耗越小。
本发明根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,方便多服务提供商合作组网,也符合大型多域网络的使用情景;基于强化学习的递归迭代算法对网络路径按顶层网络和子域网络分层训练,解决了现有技术伴有的多域网络中部署服务功能链时运算时间长、资源消耗大的问题,且既能使用在多服务提供商协作的多域网络上,也可以使用在同一服务提供商的不同地域的网络上,不受网络规模限制,不受服务器性能限制;通过能耗的量化和最低耗能方案的寻优,使得服务功能链部署的总利润比传统启发式算法更高。

Claims (1)

1.一种多域网络环境中基于强化学习的服务功能链部署方法,其特征在于,包括以下步骤:
S1、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络,按服务器节点所在域进行网络分层,得到包括1个顶层网络和N个子域网络的两层网络,N为正整数;
步骤S1包括以下分步骤:
S11、根据网络中的服务器所处的网络环境及服务器所需解决的现实问题,将网络设定为具有子域隐私保护能力的多域网络;
S12、将多域网络中的服务器节点组成的网络拓扑G依域分为N个子域网络拓扑,得到N个子域网络,记子域网络拓扑为
Figure FDA0002814961770000011
其中n为子域编号,其值在闭区间[1,N]中;
S13、将每个子域抽象成顶层网络节点,将每个子域中具有域间通信能力的服务器形成的通信链路抽象成顶层网络节点间通路,构成顶层网络拓扑Gtop,得到顶层网络;
S2、通过域间Q强化学习训练算法训练得到顶层网络四维记忆矩阵Qtop
步骤S2包括以下分步骤:
S21、初始化顶层网络四维记忆矩阵Qtop,设定其四个下标分别为now_h、now_node、action_node和end_node,所有元素均设为0;
S22、初始化顶层网络四维奖励矩阵Rtop,设定其四个下标分别为now_h、now_node、action_node和end_node,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
S23、选取顶层网络拓扑Gtop中的任一个服务器节点作为节点v;
S24、判断节点v是否曾被选取,若是,则跳转至步骤S23,若否则跳转至步骤S25;
S25、初始化链路chain为空列表;
S26、在链路chain的尾部添入节点v;
S27、根据顶层网络四维奖励矩阵Rtop、顶层网络拓扑Gtop和添入节点v的链路chain,通过递归算法,训练顶层网络四维记忆矩阵Qtop
步骤S27包括以下分步骤:
A1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
A2、设置一个节点标识v0,标记链路chain当前的最后一个元素;
A3、判断v0节点在顶层网络拓扑Gtop是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A4,若否,则结束;
A4、在顶层网络拓扑Gtop中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
A5、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤A3,若否,则跳转至步骤A6;
A6、将节点v2存入到临时列表chain_tmp的尾部;
A7、将临时列表chain_tmp的元素倒序,根据顶层网络四维奖励矩阵Rtop通过下式更新顶层网络四维记忆矩阵Qtop
Qtop(s,a)=0.8(r+maxa′Qtop(s′,a′)) (1)
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp倒序后的元素而定,r为顶层网络四维奖励矩阵Rtop中的元素;
A8、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤A3,若否则跳转至步骤A9;
A9、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,并跳转至步骤A3;
S28、判断顶层网络拓扑Gtop中的节点是否都已被选取作为节点v,若是,则结束,此时的顶层网络四维记忆矩阵Qtop训练完成,若否,则跳转至步骤S23;
S3、通过域间Q强化学习决策算法从顶层网络四维记忆矩阵Qtop中抽取顶层网络备选路径集PAtop
步骤S3包括以下分步骤:
S31、初始化顶层网络备选路径集PAtop
S32、读取用户请求列表RE,并判断用户请求列表RE中的用户请求是否都已处理,若是,则结束,若否,则跳转至步骤S33;
S33、在用户请求列表RE中未处理的用户请求中任选一个用户请求作为用户请求re;
S34、根据用户请求re指示的起止节点,从顶层网络四维记忆矩阵Qtop中获取备选路径,存入顶层网络备选路径集PAtop
S35、判断顶层网络备选路径集PAtop是否为空集,若是,则跳转至步骤S32,若否,则标记用户请求re指向的用户请求列表RE中的用户请求为已处理的用户请求,并跳转至步骤S32;
S4、通过域内Q强化学习训练算法训练得到各个子域网络的五维记忆矩阵
Figure FDA0002814961770000031
步骤S4中每一个子域网络的域内Q强化学习训练算法均包括以下分步骤:
B1、初始化该子域网络的五维记忆矩阵
Figure FDA0002814961770000032
设定其五个下标分别为now_h、now_node、action_node、end_node和h,所有元素均为0;
B2、初始化该子域网络的五维奖励矩阵
Figure FDA0002814961770000041
设定其五个下标分别为now_h、now_node、action_node、end_node和h,将下标为now_node和end_node的元素值设为1000,其余下标的元素值设为0;
B3、设置迭代阈值imax,并初始化迭代参数i为0;
B4、选取该子域网络拓扑
Figure FDA0002814961770000042
中的具有跨域功能的服务器节点作为节点v;
B5、判断节点v是否曾被选取,若是,则跳转至B4,若否则跳转至步骤B6;
B6、初始化链路chain为空列表;
B7、在链路chain的尾部添入节点v;
B8、根据该子域网络的五维奖励矩阵
Figure FDA0002814961770000043
该子域网络拓扑
Figure FDA0002814961770000044
迭代阈值imax、迭代参数i和添入节点v的链路chain,通过递归算法,训练该子域网络的五维记忆矩阵
Figure FDA0002814961770000045
步骤B8包括以下分步骤:
C1、设置一个临时列表chain_tmp,并拷贝链路chain的当前数据至临时列表chain_tmp;
C2、设置一个节点标识v0,标记链路chain当前的最后一个元素,并将迭代参数i的值加1;
C3、判断迭代参数i的值是否小于迭代阈值imax,若是则跳转至步骤C4,若否则结束;
C4、判断v0节点在该子域网络拓扑
Figure FDA0002814961770000046
中是否存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C5,若否,则结束;
C5、在该子域网络拓扑
Figure FDA0002814961770000047
中寻取v0节点的任一未被选取作为节点v2的邻接节点作为节点v2
C6、判断临时列表chain_tmp中是否存有节点v2,若是,则跳转至步骤C4,若否,则跳转至步骤C7;
C7、将节点v2存入到临时列表chain_tmp的尾部;
C8、将临时列表chain_tmp的元素倒序,根据各子域网络五维奖励矩阵
Figure FDA0002814961770000051
通过下式更新矩阵
Figure FDA0002814961770000052
Figure FDA0002814961770000053
其中,s为状态集合,a为动作集合,s′为未来状态集合,a′为未来动作集合,s、a、s′和a′由临时列表chain_tmp的当前顺序的元素而定,r′为该子域网络的五维奖励矩阵
Figure FDA0002814961770000054
中的元素;
C9、将临时列表chain_tmp的元素正序,根据各子域网络五维奖励矩阵
Figure FDA0002814961770000055
通过式(2)更新矩阵
Figure FDA0002814961770000056
C10、判断v0节点是否还存在未被选取作为节点v2的邻接节点,若是,则跳转至步骤C4,若否则跳转至步骤C11;
C11、更新节点标识v0,令其标记临时列表chain_tmp当前的最后一个元素,将迭代参数i的值加1,并跳转至步骤C3;
B9、判断该子域网络拓扑
Figure FDA0002814961770000057
中的具有跨域功能的服务器节点是否都已被选取作为节点v,若是,则结束,此时的矩阵
Figure FDA0002814961770000058
训练完成,若否,则跳转至步骤B4;
S5、根据顶层网络备选路径集PAtop,通过域内Q强化学习决策算法从各个子域网络的五维记忆矩阵
Figure FDA0002814961770000059
中抽取各个子域网络的备选路径集
Figure FDA00028149617700000510
其中n为子域编号,其值在闭区间[1,N]中;
步骤S5包括以下分步骤:
S51、初始化该子域网络域内备选路径集
Figure FDA00028149617700000511
S52、读取用户请求列表RE和顶层网络备选路径集PAtop
S53、针对顶层网络备选路径集PAtop中的每一条路径pa,获取其经过的所有子域网络拓扑
Figure FDA0002814961770000061
S54、针对用户请求列表RE中的所有用户请求re,根据顶层网络备选路径集PAtop中的每一条路径pa与子域网络拓扑
Figure FDA0002814961770000062
的关系获得各个子域网络的备选路径集
Figure FDA0002814961770000063
S55、通过下式对
Figure FDA0002814961770000064
中的每一条路径
Figure FDA0002814961770000065
进行初步筛选,并在
Figure FDA0002814961770000066
中剔除不满足该式条件的路径:
Figure FDA0002814961770000067
其中,j为路径编号,
Figure FDA0002814961770000068
表示子域n的第j路径,
Figure FDA0002814961770000069
表示子域n的最大带宽,
Figure FDA00028149617700000610
为路径
Figure FDA00028149617700000611
的带宽,BSFC为服务功能链SFC整体带宽;
S56、通过下述两式计算
Figure FDA00028149617700000612
中每条路径
Figure FDA00028149617700000613
的上报模糊值
Figure FDA00028149617700000614
并将
Figure FDA00028149617700000615
中的路径按
Figure FDA00028149617700000616
增序排序:
Figure FDA00028149617700000617
Figure FDA00028149617700000618
其中,
Figure FDA00028149617700000619
为路径
Figure FDA00028149617700000620
所需能量,Energybase为新开机服务器节点基础耗能,numnew_power_on为该路径内新开机服务器节点数,Energyvnf为服务器虚拟网络功能VNF耗能,numnode_power_on为该路径服务器节点总数量;
S57、记录
Figure FDA00028149617700000621
中每条路径
Figure FDA00028149617700000622
的可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure FDA00028149617700000623
S6、根据顶层网络备选路径集PAtop和各个子域网络的备选路径集
Figure FDA00028149617700000624
形成具体路径,通过网络节能评分算法,采用栈式结构对具体路径进行决策,得到最优节能路径,实现服务功能链部署;
步骤S6包括以下分步骤:
S61、根据顶层网络备选路径集PAtop和各个子域网络的备选路径集
Figure FDA0002814961770000071
通过栈式结构形成具体路径,构成整条服务功能链SFC;
S62、采用服务功能链SFC的评分值score指标评价服务功能链的节能情况,通过调节各个子域的使用量,在服务功能链SFC中可部署需求资源最多的虚拟网络功能VNF的节点数量
Figure FDA0002814961770000072
满足用户需求的情况下,使得SFC的评分值score最低,评分值score的计算表达式如式(6)所示:
Figure FDA0002814961770000073
其中,
Figure FDA0002814961770000074
为子域网络拓扑
Figure FDA0002814961770000075
的使用权重值,子域网络拓扑
Figure FDA0002814961770000076
使用量越大,权重值越大;评分值score越低能耗越小。
CN202010325982.7A 2020-04-23 2020-04-23 一种多域网络环境中基于强化学习的服务功能链部署方法 Active CN111510381B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010325982.7A CN111510381B (zh) 2020-04-23 2020-04-23 一种多域网络环境中基于强化学习的服务功能链部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010325982.7A CN111510381B (zh) 2020-04-23 2020-04-23 一种多域网络环境中基于强化学习的服务功能链部署方法

Publications (2)

Publication Number Publication Date
CN111510381A CN111510381A (zh) 2020-08-07
CN111510381B true CN111510381B (zh) 2021-02-26

Family

ID=71876316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010325982.7A Active CN111510381B (zh) 2020-04-23 2020-04-23 一种多域网络环境中基于强化学习的服务功能链部署方法

Country Status (1)

Country Link
CN (1) CN111510381B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172820B (zh) * 2021-11-26 2024-03-05 广东技术师范大学 跨域sfc动态部署方法、装置、计算机设备及存储介质
CN115314397B (zh) * 2022-08-05 2023-07-21 中科计算技术西部研究院 用于分布式训练的网络模拟方法、系统、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107395501A (zh) * 2017-08-29 2017-11-24 电子科技大学 一种网络服务功能链的跨域部署方法
CN109358971A (zh) * 2018-10-30 2019-02-19 电子科技大学 动态网络环境中快速且负载均衡的服务功能链部署方法
CN110166304A (zh) * 2019-05-31 2019-08-23 北京邮电大学 一种跨域sfc的编排方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998563B2 (en) * 2015-10-12 2018-06-12 Fujitsu Limited Vertex-centric service function chaining in multi-domain networks
US10419530B2 (en) * 2015-11-02 2019-09-17 Telefonaktiebolaget Lm Ericsson (Publ) System and methods for intelligent service function placement and autoscale based on machine learning
CN108040008B (zh) * 2017-12-08 2020-02-07 电子科技大学 在线服务功能链的跨域部署方法
CN110022230B (zh) * 2019-03-14 2021-03-16 北京邮电大学 基于深度强化学习的服务链并行部署方法及装置
CN110460465B (zh) * 2019-07-29 2021-10-26 天津大学 面向移动边缘计算的服务功能链部署方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107395501A (zh) * 2017-08-29 2017-11-24 电子科技大学 一种网络服务功能链的跨域部署方法
CN109358971A (zh) * 2018-10-30 2019-02-19 电子科技大学 动态网络环境中快速且负载均衡的服务功能链部署方法
CN110166304A (zh) * 2019-05-31 2019-08-23 北京邮电大学 一种跨域sfc的编排方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Cost-Efficient Service Function Chain Orchestration for Low-Latency Applications in NFV Networks";孙罡等;《IEEE SYSTEMS JOURNAL》;20181206;第13卷(第4期);3877-3888 *
"基于强化学习的5G网络切片虚拟网络功能迁移算法";唐伦等;《电子与信息学报》;20200331;第42卷(第3期);669-677 *

Also Published As

Publication number Publication date
CN111510381A (zh) 2020-08-07

Similar Documents

Publication Publication Date Title
CN111147307B (zh) 基于深度强化学习的服务功能链可靠部署方法
CN111510381B (zh) 一种多域网络环境中基于强化学习的服务功能链部署方法
CN108040008B (zh) 在线服务功能链的跨域部署方法
CN109358971B (zh) 动态网络环境中快速且负载均衡的服务功能链部署方法
CN108684046A (zh) 一种基于随机学习的接入网服务功能链部署方法
CN105978713B (zh) 虚拟网络映射中基于弹性光网络的资源分配方法
CN109347657B (zh) Sdn模式下支撑科技业务的虚拟数据域构建方法
CN104301305A (zh) 信息中心网络下兴趣包转发的方法和转发终端
Aguilar-Fuster et al. A novel evaluation function for higher acceptance rates and more profitable metaheuristic-based online virtual network embedding
Risso et al. Metaheuristic approaches for IP/MPLS network design
Dawadi et al. Evolutionary gaming approach for decision making of Tier‐3 Internet service provider networks migration to SoDIP6 networks
Davis et al. Learning a scalable algorithm for improving betweenness in the lightning network
CN107948070B (zh) 一种基于QoS的移动P2P网络虚拟链路选取方法
Li et al. A virtual network embedding algorithm based on double-layer reinforcement learning
Przewozniczek et al. Empirical problem decomposition—the key to the evolutionary effectiveness in solving a large-scale non-binary discrete real-world problem
CN116389347A (zh) 一种基于强化学习的动态sdn路由优化算法
Pathak et al. A model for virtual network embedding using artificial bee colony
CN109831346A (zh) 网络功能虚拟化环境下服务功能链的部署方法
Di et al. Quality of service aware virtual network mapping across multiple domains
Dietrich et al. Policy-compliant virtual network embedding
Liu et al. A Deep Reinforcement Learning-Based Approach for Adaptive SFC Deployment in Multi-Domain Networks
Errea et al. Deep Reinforcement Learning-aided Fragmentation-aware RMSA Path Computation Engine for Open Disaggregated Transport Networks
Papafili et al. A novel game-theoretic framework for modeling interactions of ISPs anticipating users' reactions
CN102142972B (zh) 一种ip网络的组网方法和装置
Kianpisheh et al. A genetic based workflow scheduling considering data transmission time

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