一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种NFV资源调度方法、装置以及系统与流程

2021-10-24 08:24:00 来源:中国专利 TAG:调度 资源 装置 方法 系统

一种nfv资源调度方法、装置以及系统
技术领域
1.本技术涉及网络功能虚拟化技术领域,具体涉及一种nfv资源调度方法、nfv资源调度装置以及nfv资源调度系统。


背景技术:

2.网络功能虚拟化(nfv)通过虚拟化技术将网络功能软件化,使其与专有硬件设备分离,并能够运行在标准服务器虚拟化软件上。得益于nfv的灵活性,网络运营商能够节省大量成本,同时提高网络资源利用率。然而要想更深入挖掘nfv的潜能,一个重要的挑战是nfv中的网络资源分配问题(nfv

ra)。
3.nfv

ra可以分为vnfs链组成(vnfs

cc);vnf转发图嵌入(vnf

fge);vnfs调度(vnfs

sch)三个阶段。设计一个有效并协调地解决三个阶段的资源分配算法,是解决nfv

ra问题的关键。然而,目前大部分方案仅仅解决单一阶段,或者以非协调式的方法解决多于一个阶段的问题,并且没有考虑服务的在线到达模式。
4.因此,希望有一种技术方案来克服或至少减轻现有技术的至少一个上述缺陷。


技术实现要素:

5.本发明的目的在于提供一种nfv资源调度方法来克服或至少减轻现有技术的至少一个上述缺陷。
6.本发明的一个方面,提供一种nfv资源调度方法,所述nfv资源调度方法包括:
7.获取原始请求数据以及动态网络拓扑信息;
8.根据所述原始请求数据获取服务请求特征;
9.根据所述动态网络拓扑信息获取拓扑特征;
10.将所述服务请求特征以及所述拓扑特征融合从而形成融合特征;
11.获取训练后的资源分配调度模型;
12.将所述融合特征输入至所述资源分配调度模型从而获取调度处理动作信息。
13.可选地,所述根据所述原始请求数据获取服务请求特征包括:
14.通过多头自注意力机制获取原始请求数据中的服务请求特征。
15.可选地,所述根据所述动态网络拓扑信息获取拓扑特征包括:
16.通过双组件图卷积神经网络获取动态网络拓扑信息中的拓扑特征。
17.可选地,在所述将所述融合特征输入至所述资源分配调度模型从而获取调度处理动作信息之后,所述nfv资源调度方法进一步包括:
18.根据所述调度处理动作信息控制所述nfv资源对所述nfv环境进行调度并获取在通过该调度处理动作信息进行调度后nfv环境所返回的评价信息。
19.可选地,所述评价信息包括对所述调度处理动作信息的评价以及指标信息。
20.可选地,在获取在通过该调度处理动作信息进行调度后nfv环境所返回的评价信息后,所述nfv资源调度方法进一步包括:
21.根据获取的评价信息对资源分配调度模型中的参数进行调整。
22.本技术还提供了一种nfv资源调度装置,所述nfv资源调度装置包括:
23.原始请求数据获取模块,所述原始请求数据获取模块用于获取原始请求数据;
24.动态网络拓扑信息获取模块,所述动态网络拓扑信息获取模块用于获取动态网络拓扑信息;
25.服务请求特征获取模块,所述服务请求特征获取模块用于根据所述原始请求数据获取服务请求特征;
26.拓扑特征获取模块,所述拓扑特征获取模块用于根据所述动态网络拓扑信息获取拓扑特征;
27.融合模块,所述融合模块用于将所述服务请求特征以及所述拓扑特征融合从而形成融合特征;
28.模型获取模块,所述模型获取模块用于获取训练后的资源分配调度模型;
29.模型计算模块,所述模型计算模块用于将所述融合特征输入至所述资源分配调度模型从而获取调度处理动作信息。
30.本技术还提供了一种nfv资源调度系统,所述nfv资源调度系统包括多个所述nfv资源调度装置。
31.本技术还提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的nfv资源调度方法。
32.本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时能够实现如上所述的nfv资源调度方法。
33.有益效果:
34.本技术的nfv资源调度方法具有如下优点:
35.1、在nfv资源分配问题中,首次将三个子问题以协调式的方案进行解决,为nfv

ra问题研究提供了新的思路。
36.2、在nfv

ra问题中,首次使用图卷积神经网络,并进行改进,对节点和链路状态同时进行特征提取,有效感知拓扑变化。
37.3、对nfv

ra问题,以及传统深度强化学习对于该问题的不适应性,提出新的强化学习训练算法。
38.4、在nfv

ra问题中,首次使用多nfv资源调度装置进行在线处理。
39.5、在nfv

ra问题中,首次使用自注意力机制,加入位置编码,对服务请求进行特征提取。
40.6、nfv资源调度装置采用端到端训练,方便部署、调试。
附图说明
41.图1为本技术一实施例的nfv资源调度方法的流程示意图。
42.图2是一种电子设备,用于实现图1所示的nfv资源调度方法。
具体实施方式
43.为使本技术实施的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本技术一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。下面结合附图对本技术的实施例进行详细说明。
44.需要说明的是,在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
45.图1为本技术一实施例的nfv资源调度方法的流程示意图。
46.如图1所示的nfv资源调度方法包括:
47.步骤1:获取原始请求数据以及动态网络拓扑信息;
48.步骤2:根据原始请求数据获取服务请求特征;
49.步骤3:根据动态网络拓扑信息获取拓扑特征;
50.步骤4:将服务请求特征以及所述拓扑特征融合从而形成融合特征;
51.步骤5:获取训练后的资源分配调度模型;
52.步骤6:将融合特征输入至资源分配调度模型从而获取调度处理动作信息。
53.本技术的nfv资源调度方法具有如下优点:
54.1在nfv资源分配问题中,首次将三个子问题以协调式的方案进行解决,为nfv

ra问题研究提供了新的思路。具体而言,协调的方法试图在一个步骤中将多个阶段作为一个整体来执行。以往的技术采用的非协调的方式解决一个或两个子问题。非协调方式为将各个问题顺序解决,但不考虑每个问题之间的依赖关系,这个依赖关系即一个阶段的输出是下一个阶段的输入,如果采用顺序解决的方式,可能导致整体上有解决方案,但是因为先解决第一个问题产生的解作为下一个问题的输入后却不存在解。nfv资源分配问题可以视为一个映射:将代表服务请求的有向图映射到代表物理网络的无向图中去,并进行调度执行。因此,我们将得到的特征融合之后,获取的动作信息为一个物理网络的子图,其中包含了节点信息和链路信息。这样我们就以单步的方式即协调地方式解决了三个子问题。
55.2、在nfv

ra问题中,首次使用图卷积神经网络,并进行改进,对节点和链路状态同时进行特征提取,有效感知拓扑变化。
56.3、对nfv

ra问题,以及传统深度强化学习对于该问题的不适应性,提出新的强化学习训练算法。
57.4、在nfv

ra问题中,首次使用多nfv资源调度装置进行在线处理。
58.5、在nfv

ra问题中,首次使用自注意力机制,加入位置编码,对服务请求进行特征提取。
59.6、nfv资源调度装置采用端到端训练,方便部署、调试。
60.在本实施例中,根据所述原始请求数据获取服务请求特征包括:通过多头自注意力机制获取原始请求数据中的服务请求特征。
61.具体而言,利用自注意力机制对原始请求数据进行特征提取,充分挖掘原始请求
数据的服务请求特征。在nfv中,服务请求通常以服务功能链(sfc)的形式到来,链中vnf存在依赖关系,为了将不同位置的vnf联系起来以计算服务请求的表示形式,本算法在自注意力机制中引入了位置编码。同时,为了抽取不同表示子空间的信息,本方法使用多头自注意力,使用不同的线性映射将原请求投射到不同维度,并分别进行自注意力计算,最后进行多头串联,从而得到最终的服务请求特征。
62.在本实施例中,在自然语言处理nlp中,使用embedding算法将输入字符串的每个字变成向量。然而,本技术针对的是nfv,而nfv中服务请求存在不可忽略的特征,例如包含的模块数、类型、qos要求、到达的时间、请求的数据速率等等,本技术除了对服务请求进行编码之外还将上述模块数、类型、qos要求、到达的时间、请求的数据速率等特征融入后作为自注意力机制的输入;另外,在本实施例中,自注意力机制中引入了位置编码。nlp中,位置编码表示输入序列中单词顺序,然而服务请求不只是简单的顺序关系,还存在并行和分割模块,因此我们在位置编码的基础上将并行和分割模块的位置特殊编码。
63.在本实施例中,根据所述动态网络拓扑信息获取拓扑特征包括:通过双组件图卷积神经网络获取动态网络拓扑信息中的拓扑特征。
64.具体而言,进行动态拓扑的特征提取,引入双组件图卷积来显式地建模节点和链路的相关性,对非欧几里德域的网络拓扑进行自动特征提取。
65.在本实施例中,在将所述融合特征输入至资源分配调度模型从而获取调度处理动作信息之后,nfv资源调度方法进一步包括:
66.根据调度处理动作信息控制所述nfv资源对所述nfv环境进行调度并获取在通过该调度处理动作信息进行调度后nfv环境所返回的评价信息。
67.在本实施例中,评价信息包含两种:1.因为调度处理动作信息由生成对抗网络构成,生成器产生的动作不一定是真实的物理网络,因此需要判别器来判断是否为真实的物理网络,从而给出第一个评价信息;2.为了判断生成的动作的好坏程度,需要一个评价信息来指导。此评价信息在强化学习中称为奖励(reward),由环境执行动作之后返回。本发明中的reward是以nfv资源分配形式化的数学问题的目标和约束来设计的。
68.在本实施例中,评价信息包括对调度处理动作信息的评价以及指标信息。
69.在本实施例中,在获取在通过该调度处理动作信息进行调度后nfv环境所返回的评价信息后,所述nfv资源调度方法进一步包括:
70.根据获取的评价信息对资源分配调度模型中的参数进行调整。
71.在本实施例中,资源分配调度模型为由生成器与判别器组成的生成式对抗模型,将上述拓扑特征和服务请求特征作为输入,以真实的网络子拓扑作为样本,输入生成子拓扑。具体地,生成器从先验分布(即真实网络子拓扑)中获取样本,并生成表示拓扑的带节点和链路信息的拓扑g。g的节点和边分别与表示vnf要嵌入的节点以及节点中实例信息和链路承载信息以及流量信息。判别器从数据集和生成器中提取两个样本,并学习如何区分它们。使用改进的wgan对生成器和判别器进行训练,使生成器学习匹配经验分布,并最终输出有效拓扑。
72.在本实施例中,上述的多头自注意力机制、双组件图卷积神经网络以及资源分配调度模型组成了一个单个智能体。本技术考虑到以往的资源分配方法处理请求到来时,采用的是时隙模式,可能会导致请求等待处理的时间较长,因此本方法采用多智能体,具体智
能体的个数由服务请求到达的概率分布决定,这样基本可以保证服务请求到来之后可以零等待地处理。采用多智能体可以使得请求的等待时间缩短。
73.由于模型前期训练不稳定,不易收敛,而我们发现运用求解器对简化的模型进行求解而得到的数据可以加快前期训练,因此,采用模型辅助以及模仿学习的方式,可以较快地收敛到较优策略。
74.同时,考虑到智能体从环境中获得的经验通常会很慢,并且智能体必须在训练步骤之前等待环境执行操作。其次,一个轨迹中的状态和动作对高度相关,从而降低了训练过程的鲁棒性和效率。我们受到a3c的启发,使用并行训练来加快训练过程,同时增强其健壮性。我们使用多个worker智能体从他们自己的环境中分别收集经验,并将它们发送给一个中央智能体,该中心智能体负责训练和更新网络参数。举例来说,如果在上述的单智能体中用并行训练,则这个单智能体作为中央master智能体,之后复制此智能体数次,作为多个worker智能体;多智能体也是一样,只是中央master智能体就是多智能体了。
75.下面以举例的方式对本技术进行进一步详细阐述,可以理解的是,该举例并不构成对本技术的任何限制。
76.本实施例提出的nfv资源调度方法,其硬件平台选用dell precision t7920塔式工作站,使用python语言进行编程。
77.首先,资源调度系统进行相关接口的初始化,当接收到实时到达的服务请求后,开始对请求的处理流程。
78.服务请求解析函数request_parser()从挂载在工作站下的ddr3中提取原始请求数据;
79.得到解析后请求中的各子模块并利用初始特征提取函数init_feature()提取原始特征与各子模块的依赖关系;
80.之后将此特征与依赖关系作为self_attention()函数的输入,得到服务请求的提取后的特征,即服务请求特征;
81.与此同时,利用双组件图卷积神经网络对动态网络拓扑进行特征提取,得到拓扑特征;
82.将得到的拓扑特征与服务请求特征融合,作为资源分配调度模型的输入,得到针对此请求并结合考虑网络状态后的调度处理动作信息。
83.nfv环境对产生的调度处理动作信息进行处理后,返回对该动作的评价以及各项指标(如是否成功、延迟等),资源分配调度模型根据返回的值对神经网络参数进行调整。具体而言,参数进行调整是根据多智能体强化学习maddpg算法进行。
84.本技术还提供了一种nfv资源调度装置,所述nfv资源调度装置包括原始请求数据获取模块、动态网络拓扑信息获取模块、服务请求特征获取模块、拓扑特征获取模块、融合模块、模型获取模块以及模型计算模块,原始请求数据获取模块用于获取原始请求数据;动态网络拓扑信息获取模块用于获取动态网络拓扑信息;服务请求特征获取模块用于根据原始请求数据获取服务请求特征;拓扑特征获取模块用于根据所述动态网络拓扑信息获取拓扑特征;融合模块用于将服务请求特征以及所述拓扑特征融合从而形成融合特征;模型获取模块用于获取训练后的资源分配调度模型;模型计算模块用于将融合特征输入至资源分配调度模型从而获取调度处理动作信息。
85.本技术还提供了一种nfv资源调度系统,所述nfv资源调度系统包括多个所述nfv资源调度装置,每个nfv资源调度装置用于实现上述的nfv资源调度方法。
86.上述的nfv资源调度方法为每个nfv资源调度装置的处理流程,同样地,当采用本技术的nfv资源调度系统时,各个nfv资源调度装置除了处理各自请求外,还互相合作,考虑彼此的动作,增加请求处理的接受率。
87.上述对方法的描述同样也适用于对装置以及系统的描述。
88.图2是能够实现根据本技术一个实施例提供的nfv资源调度方法的电子设备的示例性结构图。
89.如图2所示,电子设备包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505以及输出设备506。其中,输入接口502、中央处理器503、存储器504以及输出接口505通过总线507相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线507连接,进而与电子设备的其他组件连接。具体地,输入设备501接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到电子设备的外部供用户使用。
90.也就是说,图2所示的电子设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及一个或多个处理器,该一个或多个处理器在执行计算机可执行指令时可以实现结合图1描述的nfv资源调度方法。
91.在一个实施例中,图2所示的电子设备可以被实现为包括:存储器504,被配置为存储可执行程序代码;一个或多个处理器503,被配置为运行存储器504中存储的可执行程序代码,以执行上述实施例中的nfv资源调度方法。
92.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
93.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
94.计算机可读介质包括永久性和非永久性、可移动和非可移动,媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数据多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
95.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
96.此外,显然“包括”一词不排除其他单元或步骤。装置权利要求中陈述的多个单元、模块或装置也可以由一个单元或总装置通过软件或硬件来实现。第一、第二等词语用来标识名称,而不标识任何特定的顺序。
97.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包括一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地标识的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或总流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
98.在本实施例中所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
99.存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现装置/终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
100.在本实施例中,装置/终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。
101.需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。本技术虽然以较佳实施例公开如上,但其实并不是用来限定本技术,任何本领域技术人员在不脱离本技术的精神和范围内,都可以做出可能的变动和修改,因此,本技术的保护范围应当以本技术权利要求所界定的范围为准。
102.虽然,上文中已经用一般性说明及具体实施方案对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜