CN113422812B - 一种服务链部署方法及装置 - Google Patents

一种服务链部署方法及装置 Download PDF

Info

Publication number
CN113422812B
CN113422812B CN202110636179.XA CN202110636179A CN113422812B CN 113422812 B CN113422812 B CN 113422812B CN 202110636179 A CN202110636179 A CN 202110636179A CN 113422812 B CN113422812 B CN 113422812B
Authority
CN
China
Prior art keywords
service chain
deployment
vnf
server node
state
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
CN202110636179.XA
Other languages
English (en)
Other versions
CN113422812A (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.)
State Grid Corp of China SGCC
Beijing University of Posts and Telecommunications
Information and Telecommunication Branch of State Grid Liaoning Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Beijing University of Posts and Telecommunications
Information and Telecommunication Branch of State Grid Liaoning Electric Power Co Ltd
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 State Grid Corp of China SGCC, Beijing University of Posts and Telecommunications, Information and Telecommunication Branch of State Grid Liaoning Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202110636179.XA priority Critical patent/CN113422812B/zh
Publication of CN113422812A publication Critical patent/CN113422812A/zh
Application granted granted Critical
Publication of CN113422812B publication Critical patent/CN113422812B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种服务链部署方法及装置,上述方法包括:获取待部署服务链的当前服务链状态;基于当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定当前服务链状态对应的部署策略,作为备选部署策略;判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;如果满足,按照备选部署策略对待部署服务链进行VNF部署。采用该方法,实现了优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。

Description

一种服务链部署方法及装置
技术领域
本发明涉及物联网应用技术领域,特别是涉及一种服务链部署方法及装置。
背景技术
近些年来,随着智能家居、智能电网和车联网等物联网应用在日常生活的普及,物联网技术正以前所未有的速度进行发展。飞速发展的物联网急需一种高效、灵活的通信网络架构来处理其数量不断增长、需求多样化的物联网服务。
目前,物联网服务主要是将NFV(Network Function Virtualization,网络功能虚拟化技术)与云计算技术、边缘计算技术相结合,构建一种CECIoT(cloud-and-edge-collaborative IoT architecture,云边协同的物联网架构),可以通过综合的利用云和边缘的资源,为物联网流量以端到端的SFC(service function chain,服务功能链)的形式提供灵活的网络服务,以满足物联网的发展需求。其中,虚拟化后的网络功能被称为VNF(VirtualNetwork Functions,虚拟网络功能)。服务功能链SFC为一个确定的网络服务的实现方式,它是由一系列的VNF有序组成的。
然而,目前的物联网服务在该云边协同的物联网架构下,服务链的部署仍然存在许多急需解决的问题,例如,在调度云边协同网络的资源来优化服务链部署过程中的端到端时延和能量消耗的同时,难以保障物联网服务的可靠性。
发明内容
本发明实施例的目的在于提供一种服务链部署方法及装置,以实现优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。
为了达到上述目的,本发明实施例提供了一种服务链部署方法,包括:
获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行虚拟网络功能VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。
进一步的,所述对应关系的确定方式,包括:
获取所述目标服务链的服务链状态,作为第一服务链状态;
针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点;
判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件;
如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态;
将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本;
基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系。
进一步的,所述基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系,包括:
获取一组状态转移样本;
将该组状态转移样本分别输入第一神经网络和第二神经网络,得到:第一神经网络输入出的该组状态转移样本对应的动作价值函数的预测值,以及第二神经网络输入出的该组状态转移样本对应的动作价值函数的真实值;其中,第一神经网络与第二神经网络的结构相同,所述动作价值函数用于表示采用各部署策略对服务链进行VNF部署的价值;
基于所述真实值和所述预测值计算该组状态转移样本对应的损失值;
若所述损失值大于预设损失阈值,则确定完成一次训练并调整第一神经网络的参数;若所述损失值不大于所述预设损失阈值,则确定完成一次训练;
返回所述获取一组状态转移样本的步骤,直至完成预设次数的训练后,将第一神经网络的参数赋给第二神经网络;
针对所述目标服务链的每个服务链状态,基于第一神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略;
判断采用所述目标服务链的每个服务链状态对应的部署策略,对服务链状态为该服务链状态的所述目标服务链进行VNF部署后得到的服务链,是否满足所述预设部署资源约束条件和预设部署位置约束条件;若均满足,确定完成一次迭代;若存在不满足,确定完成一次迭代;
返回所述获取一组状态转移样本的步骤,直至迭代次数达到预设迭代次数后,确定第一神经网络为目标神经网络;
针对所述目标服务链的每个服务链状态,基于所述目标神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略。
进一步的,所述判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件,包括:
若当前VNF部署于该服务器节点满足以下公式,则确定将当前VNF部署于该服务器节点满足预设部署资源约束条件和预设部署位置约束条件:
Figure BDA0003105798250000041
Figure BDA0003105798250000042
Figure BDA0003105798250000043
Figure BDA0003105798250000044
Figure BDA0003105798250000045
Figure BDA0003105798250000046
其中,N表示能够以虚拟机承载VNF的服务器节点的集合;E表示服务器节点之间链路的集合;SRi表示第i条服务链;
Figure BDA0003105798250000047
Figure BDA0003105798250000048
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量;D(i,j)表示服务链SRi中每个VNF需要满足的计算资源需求;CRr(u)表示服务器节点u具有的计算资源;
Figure BDA0003105798250000049
为预设第一二进制变量,当
Figure BDA00031057982500000410
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure BDA00031057982500000411
为预设第二二进制变量,当
Figure BDA00031057982500000412
时表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点u∈N上;
Figure BDA00031057982500000413
为预设第三二进制变量,当
Figure BDA00031057982500000414
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure BDA00031057982500000415
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure BDA0003105798250000051
为预设第四二进制变量,当
Figure BDA0003105798250000052
时表示服务链SRi中的fi,j和fi,j对应的备份VNF之间的虚拟链路部署在(u,v)上;W(i)表示服务链SRi具有的带宽资源需求;Br(u,v)表示链路(u,v)∈E的剩余带宽资源;Q为只起转发作用的交换机节点的集合;T为指定服务器节点的集合,所述指定服务器节点用于部署特定VNF。
进一步的,所述确定将该VNF部署于该服务器节点后对应的部署成本,包括:
采用如下公式确定将该VNF部署于该服务器节点后对应的部署成本:
Figure BDA0003105798250000053
其中,r(s,a)表示将当前VNF部署于该服务器节点后对应的部署成本;N表示能够以虚拟机承载VNF的服务器节点的集合;V表示云边协同网络中节点的集合;
Figure BDA0003105798250000054
为预设第一二进制变量,当
Figure BDA0003105798250000055
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure BDA0003105798250000056
为预设第三二进制变量,当
Figure BDA0003105798250000057
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure BDA0003105798250000058
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure BDA0003105798250000059
为第五二进制变量,当
Figure BDA00031057982500000510
为1时表示SRi部署VNF导致服务器节点u从关闭状态进入了活跃状态;dtr(i,j)为传输时延,所述传输时延为服务器节点u∈V将服务链SRi中的fi,j需要处理的数据包传送到链路(u,v)所需的时间;dpp(u,v)为链路(u,v)的传播时延;dpr(i,j,u)为处理时延,所述处理时延为承载了fi,j的服务器节点u∈N对到来的数据包执行特定的网络功能所需的时间;dqq(i,j,u)为节点排队时延,所述节点排队时延为数据包滞留在服务器节点u∈N的等待时间;Pid(u)表示节点u∈V的空闲功耗;Ppr(i,j,u)表示服务器节点u∈N在运行fi,j时产生的计算能耗;Pse(i,j,u,v)表示节点u在发送经过服务链的数据包时产生的功率消耗;Pre(i,j,v)表示节点u在接收经过服务链的数据包L(I,j-1)时产生的功率消耗;s表示服务链状态;a表示将该VNF部署于该服务器节点的部署动作。
进一步的,在所述判断所确定的服务链部署方案是否满足预设的可靠性部署条件之后,还包括:
如果所确定的服务链部署方案不满足预设的可靠性部署条件,计算所述待部署服务链所包括的未备份过的VNF对应的可靠性;
查找可靠性最低的VNF的前置VNF和后置VNF之间的部署路径中,是否存在满足预设部署资源约束调节和预设部署位置约束条件,且部署成本最小的服务器节点,作为目标服务器节点;
基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本;其中,所述单路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点,以替换所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的备份部署策略;所述多路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点的部署策略,与所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的部署策略共存的备份部署策略;
选择对应的部署成本较小的部署策略,并判断按照所述部署成本较小的部署策略部署VNF后得到的服务链,是否满足所述预设的可靠性条件;
若满足,则确定所述部署成本较小的部署策略为目标部署策略;
若不满足,将所述可靠性最低的VNF对应的备份VNF部署于所述目标服务器节点,返回所述计算所述待部署服务链所包括的未备份过的VNF对应的可靠性的步骤。
进一步的,所述基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本,包括:
确定所述前置VNF和所述可靠性最低的VNF之间的第一备份服务器节点;其中,所述第一备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第一备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第一备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第一总成本;
确定所述后置VNF和所述可靠性最低的VNF之间的第二备份服务器节点;其中,所述第二备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第二备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第二备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第二总成本;
将较小的总成本确定为单路径备份部署策略的部署成本;
确定所述前置VNF、所述后置VNF和所述可靠性最低的VNF之间的第三备份服务器节点;其中,所述第三备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第三备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第三备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为多路径备份部署策略的部署成本。
进一步的,所述判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件,包括:
若采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链满足以下公式,则确定采用所述备选部署策略对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,满足预设的可靠性条件:
RA(i)≥R(i);
Figure BDA0003105798250000081
Figure BDA0003105798250000082
其中,RA(i)表示采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链可靠性;R(i)表示预设可靠性阈值;a1(i,j)表示服务链SRi中的fi,j的可靠性;A1(k)表示服务器节点k的可靠性;
Figure BDA0003105798250000083
为预设第六二进制变量,当
Figure BDA0003105798250000084
时表示服务链SRi中的fi,j部署在服务器节点k上。
为了达到上述目的,本发明实施例还提供了一种服务链部署装置,包括:
状态获取模块,用于获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
策略确定模块,用于基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行虚拟网络功能VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断模块,用于判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
部署模块,用于如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。
进一步的,还包括:对应关系确定模块,用于采用如下方式确定所述对应关系:
获取所述目标服务链的服务链状态,作为第一服务链状态;
针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点;
判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件;
如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态;
将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本;
基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系。
为了达到上述目的,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述服务链部署方法步骤。
为了达到上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的服务链部署方法步骤。
为了达到上述目的,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的服务链部署方法步骤。
本发明实施例有益效果:
采用本发明实施例提供的方法,获取待部署服务链的当前服务链状态,基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行虚拟网络功能VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。即通过采用本发明实施例提供的方法所确定的所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,在满足预设部署资源约束条件和预设部署位置约束条件的前提下,还能够满足预设的可靠性条件,实现了优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的服务链部署方法的一种流程图;
图2为本发明实施例提供的确定对应关系的一种流程图;
图3为本发明实施例提供的服务链部署方法的另一种流程图;
图4为四种算法的部署成本示意图;
图5为四种算法的端到端时延的示意图;
图6为四种算法的功率消耗的示意图;
图7为本发明实施例提供的服务链部署装置的一种流程图;
图8为本发明实施例提供的服务链部署装置的另一种流程图;
图9为本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例可以应用于云边协同物联网场景下的云边协同网络。
云边协同网络的结构G可表示为:G=(V,E),其中,V表示云边协同网络中节点的集合,E表示云边协同网络中服务器节点之间链路的集合。云边协同网络中的节点可包括两类节点:一类是能够以虚拟机承载VNF的服务器节点,另一类只起转发作用的交换机节点。N为能够以虚拟机承载VNF的服务器节点的集合,且
Figure BDA0003105798250000111
;Q为只起转发作用的交换机节点的集合,且
Figure BDA0003105798250000112
;且
Figure BDA0003105798250000113
云边协同网络中的服务器节点可以根据所部署的位置划分为边缘计算服务器节点和云服务器节点,其中,F为边缘计算服务器节点的集合,C为云服务器节点的集合,且
Figure BDA0003105798250000114
云边协同网络中的每一个服务器节点v(v∈N)都具有:一定的计算资源容量CR(v)(以CPU核数为计量单位),一定的处理能力PR(v)(代表其处理数据包的效率)和一定的可靠性A(v)。云边协同网络中的服务器节点之间每一条链路(u,v)都具有一定的带宽资源B(u,υ),其中,u和v均为云边协同网络中的服务器节点,且(u,v)∈E。
本发明实施例中,可以用集合SR表示服务链的集合。每一条服务链可以由随机数量的VNF组成,可以用SRi表示第i条服务链,且
Figure BDA0003105798250000121
Figure BDA0003105798250000122
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量。
每条服务链中的每个VNF都有需要满足的计算资源需求D(例如,服务链SRi中的每个VNF都有需要满足的计算资源需求为D(i,j))。部分特定的VNF可能只允许被部署在某些指定的服务器节点上,可以用T表示这类指定的服务器节点的集合。例如,若这部分特定的VNF只允许被部署在边缘计算服务器节点上,则可以有T=F。
每一条服务链具有一定的带宽需求W,例如,服务链SRi具有一定的带宽需求W(i)。每一条服务链具有一个源点O,源点O代表服务链接入边缘网络的位置,且O∈F。例如,服务链SRi具有一个源点O(i),源点O(i)代表服务链SRi接入边缘网络的位置,且O(i)∈F。
每条服务链均需要处理一定长度的数据包L,代表其要处理的任务。例如,对于服务链SRi,其需要处理的初始数据包长度为L(i,0),在经过第j个VNF处理后的数据包长度为L(i,j)。
每个服务链还有一定的可靠性需求R,以保证服务链的服务的安全性。例如,服务链SRi具有可靠性需求R(i)。
本发明实施例中可以规定如下多个二进制变量,以表示服务链在云边协同网络中的部署情况:
Figure BDA0003105798250000123
为预设第一二进制变量,当
Figure BDA0003105798250000124
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure BDA0003105798250000125
为预设第一二二进制变量,当
Figure BDA0003105798250000126
时表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点u∈N上;
Figure BDA0003105798250000127
为预设第三二进制变量,当
Figure BDA0003105798250000128
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1(或fi,j+1对应的备份VNF)部署在物理链路(u,v)上,且当
Figure BDA0003105798250000129
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure BDA0003105798250000131
为预设第四二进制变量,当
Figure BDA0003105798250000132
时表示服务链SRi中的fi,j和fi,j对应的备份VNF之间的虚拟链路部署在(u,v)上。
服务链的端到端时延包括:传播时延dpp、传输时延dtr、处理时延dpr和节点排队时延dqq。其中:
传播时延dpp取决于两个服务器节点之间的距离和服务器节点所处的网络层级;例如,链路(u,v)的传播时延dpp(u,v)取决于服务器节点u和服务器节点v之间的距离和服务器节点u与v所处的网络层级。
传输时延dtr可以定义为服务链中的服务器节点将VNF需要处理的数据包传送到外向链路所需的时间,其大小取决于服务链中的VNF需要处理的数据包的长度和具有的带宽资源需求;例如,服务链SRi的传输时延dtr(i,j)可以定义为服务链SRi中的服务器节点u(u∈V)将fi,j需要处理的数据包L(i,j)传送到外向链路(u,v)所需的时间,可表示为:dtr(i,j)=L(i,j)/W(i)。
处理时延dpr表示承载了VNF的服务器节点对接收的数据包执行特定的网络功能所需要的时间,其大小取决于所接收的数据包的长度、VNF的计算资源大小和服务器节点的处理能力;例如,处理时延dpr(i,j,u)表示承载了服务链SRi中fi,j的服务器节点u(u∈N)对接收的数据包执行特定的网络功能所需的时间,可表示为:
Figure BDA0003105798250000133
其中,L(i,j-1)为服务链SRi中fi,j的服务器节点u(u∈N)接收的数据包的长度;PR(u)为服务器节点u具有的处理能力;D(i,j)为服务链SRi中的每个VNF的计算资源需求大小。
节点排队时延dqq为数据包滞留在服务器节点的等待时间;其取决于服务链中的VNF部署到服务器节点之前,已经部署在服务器节点上的VNF的总处理时间;例如,服务链SRm中的节点排队时延dqq(i,j,u)代表数据包滞留在服务器节点u的等待时间,可表示为:
Figure BDA0003105798250000141
其中,SRm表示第m条服务链,处理时延dpr(m,n,u)为表示承载了服务链SRm中fm,n的服务器节点u(u∈N)对接收的数据包执行特定的网络功能所需的时间,fm,n为服务链SRm所部署的第n个VNF;
Figure BDA0003105798250000142
为预设第七二进制变量,当
Figure BDA0003105798250000143
时表示服务链SRm中的fm,n部署在服务器节点u∈N上。
本发明实施例中,云边协同网络的能耗可以包括计算能耗和传输能耗。其中,计算能耗是指服务器节点处理服务链的数据包产生的能耗,传输能耗是指服务器节点发送和接收服务链的数据包时产生的能耗。
本发明实施例中,可以定义服务器节点的三种状态:关闭状态、闲置状态和活跃状态,且服务器节点的各种状态之间的转换遵循以下四个状态转换规则:
状态转换规则1(关闭状态转换至活跃状态):服务器节点处于关闭状态时的能耗为0,当服务器节点开始承载VNF后或开始承担传输服务链的数据包的任务后,服务器节点进入活跃状态;
状态转换规则2(活跃状态转换至闲置状态):当活跃状态的服务器节点上的所有VNF都已被处理完毕、且服务器节点不再承担发送和接收服务链的数据包的任务后,服务器节点由活跃状态转换至闲置状态;服务器节点处于闲置状态时,会消耗固定数目的能量(称为空闲功耗),例如,可以用Pid(u)表示服务器节点u(u∈V)的空闲功耗;
状态转换规则3(闲置状态转换至关闭状态):当闲置状态的服务器节点在预设闲置时间内没有承载VNF或没有承担传输服务链的数据包的任务后,该服务器节点就会从闲置状态转换至关闭状态;预设闲置时间可以根据实际应用情况进行设定,此处不做具体限定;例如,当闲置状态的服务器节点u在预设闲置时间tcold(u)内没有承载VNF或没有承担传输服务链的数据包的任务后,服务器节点u就会从闲置状态转换至关闭状态;
状态转换规则4(闲置状态转换至活跃状态):当闲置状态的服务器节点承载新的VNF时或开始承担传输服务链的数据包的任务后,就会从闲置状态进入活跃状态;处于活跃状态的服务器节点的能耗不仅包括闲置能耗还包括计算能耗和传输能耗。
服务器节点的计算能耗与要处理的数据包的长度和为VNF分配的计算资源等因素相关。例如,可以用以下公式表示服务器节点u(u∈N)在运行fi,j(VNF)时产生的计算能耗:
Figure BDA0003105798250000151
其中,Ppr(i,j,u)表示服务器节点u在运行fi,i(VNF)时产生的计算能耗;ppr(u)表示服务器节点u每单位的计算资源所使用的功率;L(i,j-1)为fi,j的服务器节点u接收的数据包的长度;D(i,j)为fi,j的计算资源需求大小;R(u)为服务器节点u的可靠性。
针对服务器节点的传输能耗,可以使用Pse(i,j,u,v)表示节点u在发送经过服务链的数据包时产生的功率消耗,可以使用Pre(i,j,u)表示节点u在接收经过服务链的数据包L(I,j-1)时产生的功率消耗,计算公式如下:
Pse(i,j,u,v)=L(i,j-1)·pse(u,v)
Pre(i,j,u)=L(i,j-1)·pre(u)
其中,pse(u,v)表示节点u发送单位长度的数据包到节点v时的功率;pre(u)表示节点u接收单位长度的数据包的功率。
本发明实施例中,为了便于优化目标中能耗的计算,可以预设一个第八二进制变量
Figure BDA0003105798250000161
,用于表示服务链SRi在部署VNF后服务器节点u的状态变化;当
Figure BDA0003105798250000162
为1时表示SRi部署VNF导致服务器节点u从关闭状态进入了活跃状态。
本发明实施例中,可以认为每个VNF在被部署到了某个服务器节点后,就获得了该服务器节点的可靠性,即有
Figure BDA0003105798250000163
其中,a1(i,j)表示服务链SRi中的fi,j的可靠性;A1(k)表示服务器节点k的可靠性;
Figure BDA0003105798250000164
为预设第五二进制变量,当
Figure BDA0003105798250000165
时表示服务链SRi中的fi,j部署在服务器节点k上。
如果VNF使用了对应的备份VNF,则可靠性应为:
Figure BDA0003105798250000166
其中A1(m)表示服务器节点m的可靠性,A1(n)表示服务器节点n的可靠性;
Figure BDA0003105798250000167
为预设第九二进制变量,当
Figure BDA0003105798250000168
时表示服务链SRi中的fi,j部署在服务器节点m上;
Figure BDA0003105798250000169
为预设第十二进制变量,当
Figure BDA00031057982500001610
时表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点n上。
本发明实施例中,可以采用如下公式实现对服务链部署的总能耗和时延的加权优化:
Figure BDA0003105798250000171
其中,mincost(i)为服务链SRi部署VNF的总能耗和时延的加权优化目标;wenergy为服务链SRi部署VNF的总能耗的权重,wdelay为服务链SRi部署VNF的时延的权重;wenergy和wdelay可以根据实际应用进行设定,此处不做具体限定;N表示能够以虚拟机承载VNF的服务器节点的集合;V表示云边协同网络中节点的集合;SRi表示第i条服务链;
Figure BDA0003105798250000172
Figure BDA0003105798250000173
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量。
本发明实施例中,每一个VNF只能部署在一个服务器节点上,同一条服务链的每个VNF部署在不同的服务器节点上,每个VNF和其对应的备份VNF背书在不同的服务器节点上。
为了在实现优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求,本发明实施例提供了一种服务链部署方法及装置。图1为本发明实施例提供的服务链部署方法的一种流程,如图1所示,包括如下步骤:
步骤101,获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态。
步骤102,基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同。
步骤103,判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件。
步骤104,如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。
采用本发明实施例提供的方法,获取待部署服务链的当前服务链状态,基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。即通过采用本发明实施例提供的方法所确定的所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,在满足预设部署资源约束条件和预设部署位置约束条件的前提下,还能够满足预设的可靠性条件,实现了优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。
本发明实施例中,针对服务链部署定义了服务链状态、部署动作和部署成本等概念。具体的概念如下:
服务链状态包括:服务链部署状态和服务器节点的网络资源状态。其中,服务器节点的网络资源状态包括服务器节点上可用的资源状态和服务器节点组成的链路上资源状态;服务链部署状态包括该服务链上已经部署的VNF的数量和已经部署的VNF的部署方案。可以采用下述公式表示服务链状态:
Figure BDA0003105798250000191
其中,s表示服务链状态;N表示能够以虚拟机承载VNF的服务器节点;hm表示已经部署的VNF的个数,dp(i)表示第i个VNF所选择部署的服务器节点,dp(i)为0时代表该VNF还未被部署;Rr表示服务器节点的剩余资源,Br表示链路(u,v)的剩余带宽资源;SRi表示第i条服务链。
部署动作的定义为:将VNF部署到云边协同网络的一个服务器节点上。在部署服务链需要的VNF的过程中,每部署一个VNF之前,都需要为该VNF选择要部署的服务器节点,然后求解出该VNF到上一个已部署的VNF之间的部署成本最低的部署路径;直到该VNF部署失败或服务链所需要部署的所有VNF均被部署完毕后,确定完成一次部署。具体的,部署动作可以采用如下公式进行定义:
a∈T1(i,hm+1)
其中,当前已经部署的VNF的个数为hm,在当前部署的VNF的基础上再部署一个VNF(即将部署的VNF的个数变为hm+1)时,部署动作a可以为部署动作集合T1中包括的i个部署动作的任何一个。
部署成本可以定义为执行部署动作的成本的导数,具体可以采用如下公式表示:
Figure BDA0003105798250000192
其中,r(s,a)表示将当前VNF部署于该服务器节点后对应的部署成本;
Figure BDA0003105798250000193
为第五二进制变量,当
Figure BDA0003105798250000194
为1时表示SRi部署VNF导致服务器节点u从关闭状态进入了活跃状态;Pre(i,j,v)表示节点u在接收经过服务链的数据包L(I,j-1)时产生的功率消耗;s表示服务链状态;a表示将该VNF部署于该服务器节点的部署动作。
本发明实施例中,部署策略用于指导服务链处于某种服务链状态下时,应该执行何种部署动作,以实现VNF的部署。可以用状态价值函数Vπ(s)评估在服务链状态s下时,使用部署策略π对服务链进行VNF部署的价值:
Figure BDA0003105798250000201
其中,Eπ为期望值,γt为一个小于1的折扣系数,折扣系数γt越接近0,则表示越重视短期价值,折扣系数γt越接近1则表示越重视长期价值;s(t+1)为:在采取部署动作a(t)将待部署VNF部署到服务链状态为s(t)的服务链后,得到的服务链的服务链状态。
同时,本发明实施例中还可以用动作价值函数qπ(s,a)评估在服务链状态s下时,使用部署策略π对服务链进行VNF部署的价值(即评估在服务链状态s下时采取部署动作a的价值):
Figure BDA0003105798250000202
动作价值函数用来衡量针对某一状态下的服务链,执行某一部署动作的价值;状态价值函数用来服务链的某一服务链状态的价值。状态价值函数和动作价值函数之间的关系可以采用如下公式表示:
Figure BDA0003105798250000203
其中,π(a|s)是指在服务链状态为s情况下,依据部署策略π执行部署动作a的概率,A为部署动作的集合。
本发明实施例中,部署VNF之后的服务链状态只与部署该VNF之前的服务链状态和针对该VNF所执行的部署动作有关。基于此,状态价值函数、动作价值函数可分别被表示为:
Figure BDA0003105798250000211
Figure BDA0003105798250000212
其中,
Figure BDA0003105798250000213
表示在服务链状态s下执行部署动作a后,服务链状态跳转为s’的概率;π(s’/a’)是指在服务链状态为s’情况下,依据部署策略执行部署动作a’的概率;Vπ(s’)为服务链状态为s’下的状态价值函数;qπ(s’,a’)为在服务链状态s’下,使用部署策略π对服务链进行VNF部署的动作价值函数;r(s,a,s’)为:在服务链状态s下使用部署策略π对服务链进行VNF部署的部署成本;S为服务链状态的集合;γ为一个小于1的折扣系数,折扣系数γ越接近0,则表示越重视短期价值,折扣系数γ越接近1则表示越重视长期价值。
还可以定义最优状态价值函数V*(s)和最优动作价值函数q*(s,a):
Figure BDA0003105798250000214
Figure BDA0003105798250000215
其中,最优状态价值函数V*(s)描述了处于某个服务链状态的长期最优化价值,即在该服务链状态下考虑到所有可能发生的部署动作,并且都挑选最优的部署动作来执行的情况所对应的价值;最优动作价值函数q*(s,a)描述了处于某个服务链状态并执行某个部署动作后所带来的长期最优价值,即在该服务链状态下执行某一特定部署动作后得到的服务链的所有可能处于的服务链状态,并且在这些所有可能处于的服务链状态选取最优部署动作来执行所带来的长期价值;V*(s’)为服务链状态为s’下的最优状态价值函数;q*(s’,a’)为在服务链状态s’下,使用部署策略π对服务链进行VNF部署的最优动作价值函数。
本发明实施例中,可以基于最优状态价值函数V*(s)和最优动作价值函数q*(s,a),求解最佳的部署策略π*,最佳的部署策略π*应该满足公式:
Figure BDA0003105798250000221
Figure BDA0003105798250000222
,以及:
Figure BDA0003105798250000223
其中,π*(a|s)是指在服务链状态为s情况下,依据部署策略π执行部署动作a的概率,A为部署动作的集合;otherwise为其他情况,即当a=最优动作函数中最大的值时π*(a|s)=1,其他情况π*(a|s)=0。
图2为本发明实施例提供的确定对应关系的一种流程,如图2所示,上述步骤102中服务链状态与部署策略之间的对应关系可以采用如下步骤进行确定:
步骤201,获取所述目标服务链的服务链状态,作为第一服务链状态。
步骤202,针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点。
预设的部署动作确定规则具体可以为贪婪算法规则。本步骤中,针对目标服务链包括的每个VNF,可以根据第一服务链状态,通过贪婪算法选择一个部署该VNF的服务器节点。
具体的,基于第一服务链状态,可以针对该VNF生产一个随机值,如果所生成的随机值小于预设随机值阈值,则为该VNF随机选择一个部署动作;若所生成的随机值不要于预设随机值阈值,则为该VNF选择一个使得动作价值函数最大的部署动作。部署动作为将该VNF部署于所选择出的该VNF的服务器节点的操作。
步骤203,判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件。
本步骤中,若该VNF部署于该服务器节点满足以下公式,则确定将该VNF部署于该服务器节点满足预设部署资源约束条件和预设部署位置约束条件:
Figure BDA0003105798250000231
Figure BDA0003105798250000232
Figure BDA0003105798250000233
Figure BDA0003105798250000234
Figure BDA0003105798250000235
Figure BDA0003105798250000236
其中,N表示能够以虚拟机承载VNF的服务器节点的集合;E表示服务器节点之间链路的集合;SRi表示第i条服务链;
Figure BDA0003105798250000237
Figure BDA0003105798250000238
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量;D(i,j)表示服务链SRi中每个VNF需要满足的计算资源需求;CRr(u)表示服务器节点u具有的计算资源;
Figure BDA0003105798250000239
为预设第一二进制变量,当
Figure BDA00031057982500002310
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure BDA00031057982500002311
为预设第二二进制变量,当
Figure BDA00031057982500002312
时表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点u∈N上;
Figure BDA00031057982500002313
为预设第三二进制变量,当
Figure BDA00031057982500002314
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure BDA00031057982500002315
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure BDA00031057982500002316
为预设第四二进制变量,当
Figure BDA00031057982500002317
时表示服务链SRi中的fi,j和fi,j对应的备份VNF之间的虚拟链路部署在(u,v)上;W(i)表示服务链SRi具有的带宽资源需求;Br(u,v)表示链路(u,v)∈E的剩余带宽资源;Q为只起转发作用的交换机节点的集合;T为指定服务器节点的集合,所述指定服务器节点用于部署特定VNF。
本步骤中,上述公式1-公式6保证了该VNF只能部署在一个服务器节点上,同一条服务链的每个VNF部署在不同的服务器节点上。
步骤204,如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态。
具体的,本步骤中可以采用如下公式确定将该VNF部署于该服务器节点后对应的部署成本:
Figure BDA0003105798250000241
其中,r(s,a)表示将当前VNF部署于该服务器节点后对应的部署成本;N表示能够以虚拟机承载VNF的服务器节点的集合;V表示云边协同网络中节点的集合;
Figure BDA0003105798250000242
为预设第一二进制变量,当
Figure BDA0003105798250000243
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure BDA0003105798250000244
为预设第三二进制变量,当
Figure BDA0003105798250000245
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure BDA0003105798250000246
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure BDA0003105798250000251
为第五二进制变量,当
Figure BDA0003105798250000252
为1时表示SRi部署VNF导致服务器节点u从关闭状态进入了活跃状态;dtr(i,j)为传输时延,所述传输时延为服务器节点u∈V将服务链SRi中的fi,j需要处理的数据包传送到链路(u,v)所需的时间;dpp(u,v)为链路(u,v)的传播时延;dpr(i,j,u)为处理时延,所述处理时延为承载了fi,j的服务器节点u∈N对到来的数据包执行特定的网络功能所需的时间;dqq(i,j,u)为节点排队时延,所述节点排队时延为数据包滞留在服务器节点u∈N的等待时间;Pid(u)表示节点u∈V的空闲功耗;Ppr(i,j,u)表示服务器节点u∈N在运行fi,j时产生的计算能耗;Pse(i,j,u,v)表示节点u在发送经过服务链的数据包时产生的功率消耗;Pre(i,j,v)表示节点u在接收经过服务链的数据包L(I,j-1)时产生的功率消耗;s表示服务链状态;a表示将该VNF部署于该服务器节点的部署动作。
步骤205,将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本。
步骤206,基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系。
本步骤组中,具体可以采用如下步骤A1-步骤A9,基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系:
步骤A1,获取一组状态转移样本;
步骤A2,将该组状态转移样本分别输入第一神经网络和第二神经网络,得到:第一神经网络输入出的该组状态转移样本对应的动作价值函数的预测值,以及第二神经网络输入出的该组状态转移样本对应的动作价值函数的真实值;其中,第一神经网络与第二神经网络的结构相同,所述动作价值函数用于表示采用各部署策略对服务链进行VNF部署的价值;
步骤A3,基于所述真实值和所述预测值计算该组状态转移样本对应的损失值;
步骤A4,若所述损失值大于预设损失阈值,则确定完成一次训练并调整第一神经网络的参数;若所述损失值不大于所述预设损失阈值,则确定完成一次训练;
步骤A5,返回所述获取一组状态转移样本的步骤,直至完成预设次数的训练后,将第一神经网络的参数赋给第二神经网络;
步骤A6,针对所述目标服务链的每个服务链状态,基于第一神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略;
步骤A7,判断采用所述目标服务链的每个服务链状态对应的部署策略,对服务链状态为该服务链状态的所述目标服务链进行VNF部署后得到的服务链,是否满足所述预设部署资源约束条件和预设部署位置约束条件;若均满足,确定完成一次迭代;若存在不满足,确定完成一次迭代;
步骤A8,返回所述获取一组状态转移样本的步骤,直至迭代次数达到预设迭代次数后,确定第一神经网络为目标神经网络;
步骤A9,针对所述目标服务链的每个服务链状态,基于所述目标神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略。
本发明实施例中,可以利用QL(Q-learning)算法确定部署策略。QL算法是一种off-policy的强化学习算法,其主要基于动作价值函数来指导神经网络的的学习,并基于时序差分方法搜索最佳部署策略,即在不知道全局信息的情况下,在学习过程中利用后续服务链状态下的价值函数(包括:动作价值函数和状态价值函数)更新当前服务链状态下的价值函数。具体的,在神经网络的学习过程中,QL算法会基于当前的服务链状态s,使用贪婪算法选择部署动作a,然后得到部署成本r,并更新服务链状态进入新的服务链状态s’;基于新的服务链状态s’,QL算法可以直接使用贪婪算法从所有的部署动作中选择最优的部署动作a’,并采用如下的公式对动作价值函数进行更新:
Figure BDA0003105798250000271
其中,α为学习率,QL算法可以使用一个Q表格来记录所有部署状态和部署动作对应的动作价值函数;在神经网络的学习过程中,QL算法会不断的更新Q表格的值;在足够的学习步骤后,对于任意服务链状态可以基于Q表格确定出对应的部署动作使得长期价值最高,从而可以获得服务链从初始的服务链状态到结束时的服务链状态之间,长期价值最高的一系列部署动作的集合。
本发明实施例中,可以使用深度学习算法中的神经网络拟合动作价值函数。具体的,可以利用DQL(Double Q-learning)算法拟合动作价值函数。DQL算法包括经验回放和目标网络。其中,经验回放机制是指DQL算法在学习过程中会使用一个经验池来记录每一步学习的状态转换样本,在需要训练神经网络时就从经验池中随机抽取出一些状态转移样本来使用。经验回放机制使得DQL算法能够从先前的经验进行学习,并且能够减少各个状态转移样本间的相关性,从而可以更好地更新神经网络。目标网络机制同样能够消除状态转换样本间的相关性。DQL在学习过程中会使用两个结构完全相同但参数不同的神经网络:第一神经网络和第二神经网络。名为eval_net的第一神经网络用于预测动作价值函数的预测值。名为target_net的第二神经网络用于计算动作价值函数的真实值。
上述步骤103中,判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件,具体可以包括:若采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链满足以下公式,则确定采用所述备选部署策略对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,满足预设的可靠性条件:
RA(i)≥R(i);
Figure BDA0003105798250000272
Figure BDA0003105798250000273
其中,RA(i)表示采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链可靠性;R(i)表示预设可靠性阈值;a1(i,j)表示服务链SRi中的fi,j的可靠性;A1(k)表示服务器节点k的可靠性;
Figure BDA0003105798250000281
为预设第六二进制变量,当
Figure BDA0003105798250000282
时表示服务链SRi中的fi,j部署在服务器节点k上。
在一种可能的实施方式中,图3为本发明实施例提供的服务链部署方法的另一种流程,如图3所示,包括如下步骤:
步骤301-步骤303与步骤101-步骤103分别对应相同,此处不再赘述。
步骤304,如果所确定的服务链部署方案不满足预设的可靠性部署条件,计算所述待部署服务链所包括的未备份过的VNF对应的可靠性。
步骤305,查找可靠性最低的VNF的前置VNF和后置VNF之间的部署路径中,是否存在满足预设部署资源约束调节和预设部署位置约束条件,且部署成本最小的服务器节点,作为目标服务器节点。
本步骤中,可以在未进行过备份的VNF中选择可靠性最低的VNF,记为fselect;若fselect=0,则结束操作。若fselect≠0,则继续执行步骤306。
步骤306,基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本。
其中,所述单路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点,以替换所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的备份部署策略。所述多路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点的部署策略,与所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的部署策略共存的备份部署策略。
例如,若以fx表示需要备份的VNF,则单路径备份部署策略是指求解fx和其邻接的VNF之间的部署成本最低的路径来替代原始路径,并将备份VNF部署在替代原始路径的路径上。单路径备份部署策略引入的能耗较小。而多路径备份部署策略则是指在保留原始路径的基础上,在fx的前置VNF和后置VNF之间额外求解一条与成本最小的路径,然后将备份VNF部署到这条成本最小的路径上。使用多路径备份部署策略引入的时延会比较小。
本发明实施例中,为了减少备份VNF引入的时延和能耗,可以比较确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本,为备份VNF选择更优的备份部署策略。
本步骤中,可以采用步骤B1-步骤B4所述的方法,基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本:
步骤B1,确定所述前置VNF和所述可靠性最低的VNF之间的第一备份服务器节点。
其中,所述第一备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第一备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第一备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第一总成本。
步骤B2,确定所述后置VNF和所述可靠性最低的VNF之间的第二备份服务器节点。
其中,所述第二备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第二备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第二备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第二总成本。
步骤B3,将较小的总成本确定为单路径备份部署策略的部署成本。
步骤B4,确定所述前置VNF、所述后置VNF和所述可靠性最低的VNF之间的第三备份服务器节点;其中,所述第三备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第三备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第三备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为多路径备份部署策略的部署成本。
步骤307,选择对应的部署成本较小的部署策略,并判断按照所述部署成本较小的部署策略部署VNF后得到的服务链,是否满足所述预设的可靠性条件。
具体的,若采用对应的部署成本较小的部署策略部署VNF后得到的服务链满足以下公式,则确定满足预设的可靠性条件:
RA(i)≥R(i);
Figure BDA0003105798250000301
Figure BDA0003105798250000302
如果VNF使用了对应的备份VNF,则可靠性应为:
Figure BDA0003105798250000303
步骤308,若满足,则确定所述部署成本较小的部署策略为目标部署策略。
本发明实施例中,可以用所确定的目标部署策略替换所述备选部署策略,对待部署服务链进行VNF部署。
步骤309,若不满足,将所述可靠性最低的VNF对应的备份VNF部署于所述目标服务器节点,返回所述计算所述待部署服务链所包括的未备份过的VNF对应的可靠性的步骤。
采用本发明实施例提供的方法,以最优化云边协同物联网场景下服务链部署的能耗和时延为优化目标,以服务链的资源需求、可靠性需求等为基本的约束条件,确定出了一种服务链部署策略,实现了在优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。
下面为本发明实施例采用Python语言进行仿真验证的实施例:
参见表1,展示了服务链以及云边协同网络的各种参数。
表1:仿真的参数设置
Figure BDA0003105798250000311
本发明实施例选取了三种现有的算法与本发明实施例提供的DQL+MPB算法进行对比,求解服务链的部署策略。第一种算法为现有的TS+MMB(tabu search+multimodebackup,禁忌搜索算法);第二种算法为现有的DQL+SPB(deep Q-learning+single-pathbackup)算法,其在备份步骤中将优先使用单路径备份部署策略,以是降低备份的能耗;第三种算法现有的DQL+MPB(deep Q-learning+multi-path backup)算法,DQL+MPB算法在备份步骤中将优先使用多路径备份部署策略,以是降低备份的时延。
在进行四种算法的性能对比之前,我们测试了优化目标中能耗权重和时延权重对算法的性能影响,可以发现能耗和时延权重各为0.4和0.6时,本发明实施例提供的DQL+MMB算法可以更均衡的优化能耗和时延。具体的仿真结果如下所示:
第一点,可以对比四种算法的部署成本。图4为四种算法的部署成本示意图。如图4所示,本发明实施例提供的DQL+MMB算法可以更均衡的优化能耗和时延能取得最低的部署成本。当服务链请求个数数量到达200时,DQL+MMB算法比TS+MMB算法的部署成本低出16.7%,这是因为DQL+MMB算法能够更有效的学习服务链部署策略和部署成本之间的数学关系,并且在VNF备份阶段中,为备份VNF选择了单路径备份部署策略和多路径备份部署策略中成本更低的模式。
第二点,对比四种算法的端到端时延。图5为四种算法的端到端时延的示意图。如图5所示,四种算法的端到端时延都随着服务链请求的个数增加而增加,而本发明实施例提供的DQL+MMB算法的时延总是略微高于DQL+MPB算法。这是因为DQL+MPB算法在备份阶段中总是使用时延表现更好的多路径备份模式进行备份,而DQL+MMB算法则更加追求时延和能耗的均衡优化。
第三点,对比四种算法的功率消耗表现。图6为四种算法的功率消耗的示意图。如图6所示,TS+MMB算法和DQL+MPB的算法的功率消耗明显高于另外两种算法,这是因为TS+MMB算法所使用的禁忌搜索算法只是通过连续的搜索来优化服务链部署策略的成本,而没有系统性的学习部署成本与部署策略间的数学关系,而DQL+MPB算法在VNF备份阶段消耗了更多的功率,因为其使用的多路径备份部署策略会占用更加多的服务器节点和链路。我们还可以观察到,所有算法的功率消耗曲线都会呈现一定的波动。导致这种波动的原因是:云边协同网络中的服务器节点在部署过程中总会重复的开启和关闭,而转换产生的空闲功率消耗在节点的总功率消耗中又占据了相当大的一部分,这是难以避免的。
基于同一发明构思,根据本发明上述实施例提供的服务链部署方法,相应地,本发明另一实施例还提供了一种服务链部署装置,其结构示意图如图7所示,具体包括:
状态获取模块701,用于获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
策略确定模块702,用于基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断模块703,用于判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
部署模块704,用于如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。
进一步的,参见图8,上述装置还包括:对应关系确定模块801,用于采用如下方式确定所述对应关系:
获取所述目标服务链的服务链状态,作为第一服务链状态;
针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点;
判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件;
如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态;
将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本;
基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系。
采用本发明实施例提供的装置,获取待部署服务链的当前服务链状态,基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。即通过采用本发明实施例提供的装置所确定的所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,在满足预设部署资源约束条件和预设部署位置约束条件的前提下,还能够满足预设的可靠性条件,实现了优化服务链部署过程中的端到端时延和能量消耗的同时,保障物联网用户对服务的可靠性的基本需求。
本发明实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现如下步骤:
获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
如果满足,按照所述备选部署策略对待部署服务链进行VNF部署。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一服务链部署方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一服务链部署方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及存储介质而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (7)

1.一种服务链部署方法,其特征在于,包括:
获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行虚拟网络功能VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
如果满足,按照所述备选部署策略对待部署服务链进行VNF部署;
所述对应关系的确定方式,包括:
获取所述目标服务链的服务链状态,作为第一服务链状态;
针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点;
判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件;
如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态;
将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本;
基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系;
所述判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件,包括:
若当前VNF部署于该服务器节点满足以下公式,则确定将当前VNF部署于该服务器节点满足预设部署资源约束条件和预设部署位置约束条件:
Figure FDA0003602554300000021
Figure FDA0003602554300000022
Figure FDA0003602554300000023
Figure FDA0003602554300000024
Figure FDA0003602554300000025
Figure FDA0003602554300000026
其中,N表示能够以虚拟机承载VNF的服务器节点的集合;E表示服务器节点之间链路的集合;SRi表示第i条服务链;
Figure FDA0003602554300000027
Figure FDA0003602554300000028
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量;D(i,j)表示服务链SRi中每个VNF需要满足的计算资源需求;CRr(u)表示服务器节点u具有的计算资源;
Figure FDA0003602554300000029
为预设第一二进制变量,当
Figure FDA00036025543000000210
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure FDA00036025543000000211
为预设第二二进制变量,当
Figure FDA00036025543000000212
时表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点u∈N上;
Figure FDA0003602554300000031
为预设第三二进制变量,当
Figure FDA0003602554300000032
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure FDA0003602554300000033
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure FDA0003602554300000034
为预设第四二进制变量,当
Figure FDA0003602554300000035
时表示服务链SRi中的fi,j和fi,j对应的备份VNF之间的虚拟链路部署在(u,v)上;W(i)表示服务链SRi具有的带宽资源需求;Br(u,v)表示链路(u,v)∈E的剩余带宽资源;Q为只起转发作用的交换机节点的集合;T为指定服务器节点的集合,所述指定服务器节点用于部署特定VNF。
2.根据权利要求1所述的方法,其特征在于,所述基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系,包括:
获取一组状态转移样本;
将该组状态转移样本分别输入第一神经网络和第二神经网络,得到:第一神经网络输出的该组状态转移样本对应的动作价值函数的预测值,以及第二神经网络输出的该组状态转移样本对应的动作价值函数的真实值;其中,第一神经网络与第二神经网络的结构相同,所述动作价值函数用于表示采用各部署策略对服务链进行VNF部署的价值;
基于所述真实值和所述预测值计算该组状态转移样本对应的损失值;
若所述损失值大于预设损失阈值,则确定完成一次训练并调整第一神经网络的参数;若所述损失值不大于所述预设损失阈值,则确定完成一次训练;
返回所述获取一组状态转移样本的步骤,直至完成预设次数的训练后,将第一神经网络的参数赋给第二神经网络;
针对所述目标服务链的每个服务链状态,基于第一神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略;
判断采用所述目标服务链的每个服务链状态对应的部署策略,对服务链状态为该服务链状态的所述目标服务链进行VNF部署后得到的服务链,是否满足所述预设部署资源约束条件和预设部署位置约束条件;若均满足,确定完成一次迭代;若存在不满足,确定完成一次迭代;
返回所述获取一组状态转移样本的步骤,直至迭代次数达到预设迭代次数后,确定第一神经网络为目标神经网络;
针对所述目标服务链的每个服务链状态,基于所述目标神经网络确定该服务链状态的多个部署策略对应的动作价值函数,并将动作价值函数的值最大的部署策略确定为该服务链状态对应的部署策略。
3.根据权利要求1所述的方法,其特征在于,所述确定将该VNF部署于该服务器节点后对应的部署成本,包括:
采用如下公式确定将该VNF部署于该服务器节点后对应的部署成本:
Figure FDA0003602554300000041
其中,r(s,a)表示将当前VNF部署于该服务器节点后对应的部署成本;N表示能够以虚拟机承载VNF的服务器节点的集合;V表示云边协同网络中节点的集合;
Figure FDA0003602554300000042
为预设第一二进制变量,当
Figure FDA0003602554300000043
时表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure FDA0003602554300000044
为预设第三二进制变量,当
Figure FDA0003602554300000045
对表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure FDA0003602554300000046
时表示服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure FDA0003602554300000047
为第五二进制变量,当
Figure FDA0003602554300000048
为1时表示SRi部署VNF导致服务器节点u从关闭状态进入了活跃状态;dtr(i,j)为传输时延,所述传输时延为服务器节点u∈V将服务链SRi中的fi,j需要处理的数据包传送到链路(u,v)所需的时间;dpp(u,v)为链路(u,v)的传播时延;dpr(i,j,u)为处理时延,所述处理时延为承载了fi,j的服务器节点u∈N对到来的数据包执行特定的网络功能所需的时间;dqq(i,j,u)为节点排队时延,所述节点排队时延为数据包滞留在服务器节点u∈N的等待时间;Pid(u)表示节点u∈V的空闲功耗;Ppr(i,j,u)表示服务器节点u∈N在运行fi,j时产生的计算能耗;Pse(i,j,u,v)表示节点u在发送经过服务链的数据包时产生的功率消耗;Pre(i,j,v)表示节点u在接收经过服务链的数据包L(i,j-1)时产生的功率消耗;s表示服务链状态;a表示将该VNF部署于该服务器节点的部署动作。
4.根据权利要求1所述的方法,其特征在于,在所述判断所确定的服务链部署方案是否满足预设的可靠性部署条件之后,还包括:
如果所确定的服务链部署方案不满足预设的可靠性部署条件,计算所述待部署服务链所包括的未备份过的VNF对应的可靠性;
查找可靠性最低的VNF的前置VNF和后置VNF之间的部署路径中,是否存在满足预设部署资源约束调节和预设部署位置约束条件,且部署成本最小的服务器节点,作为目标服务器节点;
基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本;其中,所述单路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点,以替换所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的备份部署策略;所述多路径备份部署策略为:将所述可靠性最低的VNF对应的备份VNF部署到目标服务器节点的部署策略,与所述备选部署策略中将所述可靠性最低的VNF部署到服务器节点的部署策略共存的备份部署策略;
选择对应的部署成本较小的部署策略,并判断按照所述部署成本较小的部署策略部署VNF后得到的服务链,是否满足所述预设的可靠性条件;
若满足,则确定所述部署成本较小的部署策略为目标部署策略;
若不满足,将所述可靠性最低的VNF对应的备份VNF部署于所述目标服务器节点,返回所述计算所述待部署服务链所包括的未备份过的VNF对应的可靠性的步骤。
5.根据权利要求4所述的方法,其特征在于,所述基于所述前置VNF、所述后置VNF和所述可靠性最低的VNF以及所述目标服务器节点,确定单路径备份部署策略的部署成本和多路径备份部署策略的部署成本,包括:
确定所述前置VNF和所述可靠性最低的VNF之间的第一备份服务器节点;其中,所述第一备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第一备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第一备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第一总成本;
确定所述后置VNF和所述可靠性最低的VNF之间的第二备份服务器节点;其中,所述第二备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第二备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第二备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为第二总成本;
将较小的总成本确定为单路径备份部署策略的部署成本;
确定所述前置VNF、所述后置VNF和所述可靠性最低的VNF之间的第三备份服务器节点;其中,所述第三备份服务器节点满足:将所述待部署服务链中所述可靠性最低的VNF对应的备份VNF,部署于所述第三备份服务器节点后得到的服务链,满足预设部署资源约束条件和预设部署位置约束条件;并计算部署了所述前置VNF的服务器节点、部署了所述后置VNF的服务器节点、部署了所述可靠性最低的VNF的服务器节点和所述第三备份服务器节点之间的路径成本,与部署所述可靠性最低的VNF对应的备份VNF的部署成本之和,作为多路径备份部署策略的部署成本。
6.根据权利要求1所述的方法,其特征在于,所述判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件,包括:
若采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链满足以下公式,则确定采用所述备选部署策略对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,满足预设的可靠性条件:
RA(i)≥R(i);
Figure FDA0003602554300000071
Figure FDA0003602554300000072
其中,RA(i)表示采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链可靠性;R(i)表示预设可靠性阈值;a1(i,j)表示服务链SRi中的fi,j的可靠性;A1(k)表示服务器节点k的可靠性;
Figure FDA0003602554300000073
为预设第六二进制变量,当
Figure FDA0003602554300000074
对表示服务链SRi中的fi,j部署在服务器节点k上。
7.一种服务链部署装置,其特征在于,包括:
状态获取模块,用于获取待部署服务链的当前服务链状态,所述当前服务链状态包括:待部署服务链当前部署状态和待部署服务器节点的当前网络资源状态;
策略确定模块,用于基于所述当前服务链状态,根据预先确定的服务链状态与部署策略之间的对应关系,确定所述当前服务链状态对应的部署策略,作为备选部署策略;其中,所述对应关系用于指示采用部署策略对目标服务链进行虚拟网络功能VNF部署后,使得所述目标服务链满足预设部署资源约束条件和预设部署位置约束条件,所述目标服务链的服务链状态与该部署策略对应的服务链状态相同;
判断模块,用于判断采用所述备选部署策略,对服务链状态为所述当前服务链状态的服务链进行VNF部署后得到的服务链,是否满足预设的可靠性条件;
部署模块,用于如果满足,按照所述备选部署策略对待部署服务链进行VNF部署;
对应关系确定模块,用于采用如下方式确定所述对应关系:
获取所述目标服务链的服务链状态,作为第一服务链状态;
针对所述目标服务链包括的VNF,基于预设的部署动作确定规则确定出可部署该VNF的一个服务器节点;
判断将该VNF部署于该服务器节点后得到的服务链,是否满足所述预设部署资源约束条件和所述预设部署位置约束条件;
如果满足,确定将该VNF部署于该服务器节点后对应的部署成本,以及确定将该VNF部署于该服务器节点后得到的服务链的状态,作为第二服务链状态;
将所述第一服务链状态、该服务器节点的标识、该服务器节点对应的部署成本和所述第二服务链状态确定为一组状态转移样本;
基于各组状态转移样本训练目标神经网络,并根据所训练的目标神经网络确定服务链状态与部署策略之间的对应关系;
所述对应关系确定模块,具体用于若当前VNF部署于该服务器节点满足以下公式,则确定将当前VNF部署于该服务器节点满足预设部署资源约束条件和预设部署位置约束条件:
Figure FDA0003602554300000081
Figure FDA0003602554300000091
Figure FDA0003602554300000092
Figure FDA0003602554300000093
Figure FDA0003602554300000094
Figure FDA0003602554300000095
其中,N表示能够以虚拟机承载VNF的服务器节点的集合;E表示服务器节点之间链路的集合;SRi表示第i条服务链;
Figure FDA0003602554300000096
Figure FDA0003602554300000097
表示服务链SRi中的所部署的第|Si|个VNF;Si为服务链SRi需要部署的VNF的数量;D(i,j)表示服务链SRi中每个VNF需要满足的计算资源需求;CRr(u)表示服务器节点u具有的计算资源;
Figure FDA0003602554300000098
为预设第一二进制变量,当
Figure FDA0003602554300000099
对表示服务链SRi中的fi,j部署在服务器节点u∈N上;
Figure FDA00036025543000000910
为预设第二二进制变量,当
Figure FDA00036025543000000911
对表示服务链SRi中的fi,j对应的备份VNF部署在服务器节点u∈N上;
Figure FDA00036025543000000912
为预设第三二进制变量,当
Figure FDA00036025543000000913
时表示服务链SRi中的fi,j或fi,j对应的备份VNF,与fi,j+1或fi,j+1对应的备份VNF部署在物理链路(u,v)上,且当
Figure FDA00036025543000000914
时服务链SRi的源点和第一个VNF之间的虚拟链路部署在(u,v)上;
Figure FDA00036025543000000915
为预设第四二进制变量,当
Figure FDA00036025543000000916
时表示服务链SRi中的fi,j和fi,j对应的备份VNF之间的虚拟链路部署在(u,v)上;W(i)表示服务链SRi具有的带宽资源需求;Br(u,v)表示链路(u,v)∈E的剩余带宽资源;Q为只起转发作用的交换机节点的集合;T为指定服务器节点的集合,所述指定服务器节点用于部署特定VNF。
CN202110636179.XA 2021-06-08 2021-06-08 一种服务链部署方法及装置 Active CN113422812B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110636179.XA CN113422812B (zh) 2021-06-08 2021-06-08 一种服务链部署方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110636179.XA CN113422812B (zh) 2021-06-08 2021-06-08 一种服务链部署方法及装置

Publications (2)

Publication Number Publication Date
CN113422812A CN113422812A (zh) 2021-09-21
CN113422812B true CN113422812B (zh) 2022-07-29

Family

ID=77787969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110636179.XA Active CN113422812B (zh) 2021-06-08 2021-06-08 一种服务链部署方法及装置

Country Status (1)

Country Link
CN (1) CN113422812B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115250142B (zh) * 2021-12-31 2023-12-05 中国科学院上海微系统与信息技术研究所 一种基于深度强化学习的星地融合网络多节点计算资源分配方法
CN114615128B (zh) * 2022-03-08 2024-02-23 网易(杭州)网络有限公司 服务管理方法及系统、计算机存储介质和电子设备
CN115086175B (zh) * 2022-04-26 2023-06-30 北京邮电大学 资源优化的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015118875A1 (ja) * 2014-02-06 2015-08-13 日本電気株式会社 仮想ネットワーク機能の最適配置方法、ネットワーク制御装置、ネットワーク管理装置およびネットワークシステム
CN105242956A (zh) * 2015-09-15 2016-01-13 中国人民解放军信息工程大学 虚拟功能服务链部署系统及其部署方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015118875A1 (ja) * 2014-02-06 2015-08-13 日本電気株式会社 仮想ネットワーク機能の最適配置方法、ネットワーク制御装置、ネットワーク管理装置およびネットワークシステム
CN105242956A (zh) * 2015-09-15 2016-01-13 中国人民解放军信息工程大学 虚拟功能服务链部署系统及其部署方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Cost-and-Qos-based NFV Service Function Chain Mapping Mechanism;Yimin Li等;《NOMS 2020-2020 IEEE/IFIP Network Operations and Management Symposium》;20200608;第I,II节 *
Yimin Li等.Cost-and-Qos-based NFV Service Function Chain Mapping Mechanism.《NOMS 2020-2020 IEEE/IFIP Network Operations and Management Symposium》.2020,第I,II节. *
基于强化学习的服务链映射算法;魏亮等;《通信学报》;20180125(第01期);全文 *
移动网络SFC部署与计算资源分配联合算法;张天魁等;《北京邮电大学学报》;20210228;第2.2节 *

Also Published As

Publication number Publication date
CN113422812A (zh) 2021-09-21

Similar Documents

Publication Publication Date Title
CN113422812B (zh) 一种服务链部署方法及装置
CN109768940B (zh) 多业务sdn网络的流量分配方法及装置
WO2021254114A1 (zh) 构建多任务学习模型的方法、装置、电子设备及存储介质
CN113708972B (zh) 一种服务功能链部署方法、装置、电子设备及存储介质
Zhang et al. Toward edge-assisted video content intelligent caching with long short-term memory learning
US8005654B2 (en) Method, apparatus and computer program product for intelligent workload control of distributed storage
Wei et al. TRUST: A TCP throughput prediction method in mobile networks
US11784931B2 (en) Network burst load evacuation method for edge servers
CN112990423A (zh) 人工智能ai模型生成方法、系统及设备
WO2015149644A1 (en) Intelligent file pre-fetch based on access patterns
CN115066694A (zh) 计算图优化
CN117041330B (zh) 一种基于强化学习的边缘微服务细粒度部署方法及系统
CN115499376B (zh) 一种负载均衡方法、系统、电子设备及存储介质
Park et al. Machine learning-based optimal vnf deployment
Zhu et al. Differentiated transmission based on traffic classification with deep learning in datacenter
Wang et al. Dynamic multicast-oriented virtual network function placement with SFC request prediction
CN113114762B (zh) 一种数据缓存方法及系统
CN113946423A (zh) 基于图注意力网络的多任务边缘计算调度优化方法
Qadeer et al. DDPG-edge-cloud: A deep-deterministic policy gradient based multi-resource allocation in edge-cloud system
CN114912041A (zh) 信息处理方法、电子设备和计算机程序产品
Fan et al. Pa-cache: Learning-based popularity-aware content caching in edge networks
CN111465057A (zh) 一种基于强化学习的边缘缓存方法、装置及电子设备
TWI792784B (zh) 基於聯邦強化學習的邊緣計算卸載優化方法及通信系統
WO2022166348A1 (zh) 路由方法、路由装置、控制器和计算机可读存储介质
Leconte et al. Adaptive replication in distributed content delivery networks

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