CN116545857A - 一种服务链的动态放置方法及系统 - Google Patents
一种服务链的动态放置方法及系统 Download PDFInfo
- Publication number
- CN116545857A CN116545857A CN202310468689.XA CN202310468689A CN116545857A CN 116545857 A CN116545857 A CN 116545857A CN 202310468689 A CN202310468689 A CN 202310468689A CN 116545857 A CN116545857 A CN 116545857A
- Authority
- CN
- China
- Prior art keywords
- node
- column
- array
- risk
- dimension
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000005540 biological transmission Effects 0.000 claims abstract description 42
- 230000035515 penetration Effects 0.000 claims description 83
- 239000011159 matrix material Substances 0.000 claims description 65
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 abstract description 42
- 230000006870 function Effects 0.000 description 14
- 230000008901 benefit Effects 0.000 description 7
- 241001269524 Dura Species 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- AYFVYJQAPQTCCC-GBXIJSLDSA-N L-threonine Chemical compound C[C@@H](O)[C@H](N)C(O)=O AYFVYJQAPQTCCC-GBXIJSLDSA-N 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 101001072091 Homo sapiens ProSAAS Proteins 0.000 description 2
- 102100036366 ProSAAS Human genes 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种服务链的动态放置方法及系统,获取多个等长的VNF链,获取VNF链中各节点的带宽和存储余量以及节点用时,当出现慢速节点,将VNF链中的各节点进行并向式排布,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点,VNF链避开超风险节点进行动态配置。本发明所述方法根据节点的传输延迟上限、带宽和存储余量以及节点用时等信息,对节点进行计算超风险节点,从而避免了服务链出现瓶颈和系统风险。
Description
技术领域
本发明属于大数据处理、分布式优化的领域,具体涉及一种服务链的动态放置方法及系统。
背景技术
近年来,随着云计算和网络功能虚拟化(NFV)技术的迅速发展,越来越多的应用需要通过服务链实现。其中最为典型的就是虚拟网络功能链(VNF链)。然而,传统的服务链放置方法存在一些不足之处,如固定规则和策略限制了其适用范围和效率,没有考虑任务之间的依赖关系和资源分配的动态性,不能满足对服务链高效的部署和配置需求。目前很多服务链放置方法采用贪心、遗传算法等基于静态规划的方法来寻求节点优化的顺序,但这些方法无法真正反映节点间资源的动态变化和任务执行效率的需求,容易导致部分优化失效。强调实时性的服务、如数据分析和人工智能等,对执行时间要求非常高。传统的服务链放置方法在实现实时服务时,往往需要依靠硬件设备的加速,加重了开销。而当网络资源不足时,现有的服务链放置方法无法从异构的计算或存储资源中获得更好的解决方案,只能进行简单的搜索或调整。无法充分利用异构计算、存储、传输等资源的优势。
发明内容
本发明的目的在于提出一种服务链的动态放置方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
本发明提供了一种服务链的动态放置方法及系统,获取多个等长的VNF链,获取VNF链中各节点的带宽和存储余量以及节点用时,当出现慢速节点,将VNF链中的各节点进行并向式排布,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点,VNF链避开超风险节点进行动态配置。
为了实现上述目的,根据本发明的一方面,提供一种服务链的动态放置方法,所述方法包括以下步骤:
S100,获取多个等长的VNF链;
S200,获取VNF链中各节点的带宽和存储余量以及节点用时;
S300,当出现慢速节点,将VNF链中的各节点进行并向式排布;
S400,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点;
S500,VNF链避开超风险节点进行动态配置。
进一步地,在S100中,所述多个等长的VNF链中的VNF链的方向相同。
进一步地,所述VNF链由多个作为其中的节点的VNF构成,
节点的存储余量表示该个节点中空余的能够存储数据的容量,
VNF链的传输延迟上限为该任务对应的VNF链中从首个节点到末个节点的数据传输的耗费时间的上限,
每个节点所在的VNF链中传输到该节点的用时称为该个节点的节点用时。
进一步地,在S300中,当出现慢速节点,将VNF链中的各节点进行并向式排布的方法为:
将所述多个等长的VNF链按照同样的方向进行排列以此组成一个矩阵,所述矩阵中的一行为一个VNF链,所述矩阵中的一列包括各VNF链中相同序号的节点,例如,将任务集合中各个任务的VNF链,各条VNF链横着排作为所述矩阵中的各行,每条VNF链按照每行从左到右顺序地排列VNF链中的各个节点,所述矩阵中顺序第3的列是由任务集合的各任务中分别第3个的节点所构成,所述矩阵中顺序第3的列中的各节点的排列顺序与任务集合的各任务的排列顺序保持一致,由此称所述矩阵为并向式排布矩阵;
并向式排布矩阵记作Binmat,并向式排布矩阵为n行m列的矩阵,并向式排布矩阵中行的序号为i,i∈[1,n],并向式排布矩阵中列的序号为j,j∈[1,m],并向式排布矩阵中第i行第j列的位置上的节点即为任务集合中序号为i的任务对应的VNF链中序号为j的节点,并向式排布矩阵中第i行第j列的位置上的节点记为Binm(i,j),并向式排布矩阵中第i行的节点记作Binm(i,),并向式排布矩阵中第i行的节点记作Binm(,j),以j-1表示j减少1的数值即序号j的上一个序号,以j+1表示j增加1的数值即序号j的下一个序号;在并向式排布矩阵中,节点Binm(i,j)的带宽的数值为bdw(i,j),节点Binm(i,j)的存储余量的数值为rest(i,j),节点Binm(i,j)的节点用时为dura(i,j);
根据节点Binm(i,j)中的序号i确定所述节点Binm(i,j)处于并向式排布矩阵中序号为i的行Binm(i,),Binm(i,)对应的任务的传输延迟上限记为limit(i);
若当并向式排布矩阵中存在有一个节点出现数据传输速度变慢的现象,将出现数据传输速度变慢的现象的节点称为慢速节点,则对所述慢速节点进行动态配置;这样的好处是,在出现慢速节点时,该方法采用并向式排布来优化节点的配置,可以更快速地完成节点部署,提高任务执行效率。
进而,对所述慢速节点所在的列中的各节点进行计算穿透特征:
若一个节点要计算其穿透特征,则该节点需要处于一个存在后一列的列中,根据该节点的带宽和存储余量的数值以及该节点所在列的下一列中各节点的带宽和存储余量的数值,计算该节点的穿透特征,具体实施方式可为:在称为慢速节点所在的列中,对其中的各节点Binm(i,j),记其中各节点Binm(i,j)的穿透特征为thro(i,j),其中各节点Binm(i,j)的穿透特征的数值计算公式为:
可优选地,以Prob_bdw(i,j)表示并向式排布矩阵中第i行第j列位置的节点的带宽的数值相对于第j+1列中各节点的带宽的数值的分布概率,可以先计算第j+1列中各节点的带宽的数值的指数化结果的累加求和作为Prob_bdw(i,j)计算公式的分母,再计算第i行第j列位置的节点的带宽的数值的指数化结果作为Prob_bdw(i,j)计算公式的分子,然后可计算分子除以分母得到Prob_bdw(i,j)计算公式的输出数值,指数化函数exp可为以自然常数e为底的指数函数;
可优选地,以Prob_rest(i,j)表示并向式排布矩阵中第i行第j列位置的节点的存储余量的数值相对于第j+1列中各节点的存储余量的数值的分布概率,可以先计算第j+1列中各节点的存储余量的数值的指数化结果的累加求和作为Prob_rest(i,j)计算公式的分母,再计算第i行第j列位置的节点的存储余量的数值的指数化结果作为Prob_rest(i,j)计算公式的分子,然后可计算分子除以分母得到Prob_bdw(i,j)计算公式的输出数值;
而1-dura(i,j)/limit(i)是通过对节点用时占任务的传输延迟上限的比重来衡量当前节点的数据传输情况,这样计算的好处是dura(i,j)占limit(i)比值越大则1-dura(i,j)/limit(i)越小,若dura(i,j)/limit(i)数值越大则表示当前节点耗费的时间已经趋于传输延迟上限了,Prob_bdw(i,j)*Prob_rest(i,j)越小表示了慢速节点所在的列中的各节点的资源(带宽、存储余量等)相对下一列(或别的列)显得越是处于劣势,这样配合乘以Prob_bdw(i,j)*Prob_rest(i,j)可以更好地衡量一个节点在全部的任务中需要得到数据的支援的迫切程度,从而更好地对各任务中各节点的计算资源进行优化调度;
值得注意的是,根据各节点Binm(i,j)的穿透特征的数值计算公式可知,一个节点的穿透特征的数值计算公式只要该节点所在的列不是最后一列便可成立,所以选用了节点Binm(i,j)这样以变量序号i和j来标识的方式可以更有效地进行普适的标记;
接着,计算所述慢速节点的下一列中各节点的反向穿透特征:
若要对其中一个节点计算该节点的反向穿透特征,则需要确保该节点所在的列不是在并向式排布矩阵中的第一个列,根据该节点的带宽和存储余量的数值以及该节点所在列的上一列中各节点的带宽和存储余量的数值,计算该节点的反向穿透特征,具体实施方式可为:
所述节点Binm(i,j)在其所在任务对应的行Binm(i,)中的下一个节点Binm(i,j+1),并获取所述节点Binm(i,j+1)所在的列Binm(,j+1),由此获取列Binm(,j+1)中的各节点Binm(i,j+1)及其带宽的数值bdw(i,j+1)和存储余量的数值rest(i,j+1),此处值得注意的是,若要对一个节点计算其反向穿透特征,则需要确保该节点所在的列不是在并向式排布矩阵中的第一个列,即该节点所在的列存在前一个列,计算各节点Binm(i,j+1)的反向穿透特征thro`(i,j+1)的公式为:
可优选地,以Prop_bdw(i,j+1)表示并向式排布矩阵中第i行第j+1列位置的节点的带宽的数值相对于第j列(即所述第j+1列的前一列)中各节点的带宽的数值的分布概率,可以先计算第j列中各节点的带宽的数值的指数化结果的累加求和作为Prop_bdw(i,j+1)计算公式的分母,再计算第i行第j+1列位置的节点的带宽的数值的指数化结果作为Prop_bdw(i,j+1)计算公式的分子,然后可计算分子除以分母得到Prop_bdw(i,j+1)计算公式的输出数值,指数化函数exp可为以自然常数e为底的指数函数;
可优选地,以Prop_rest(i,j)表示并向式排布矩阵中第i行第j+1列位置的节点的存储余量的数值相对于第j列中各节点的存储余量的数值的分布概率,可以先计算第j列中各节点的存储余量的数值的指数化结果的累加求和作为Prop_rest(i,j+1)计算公式的分母,再计算第i行第j+1列位置的节点的存储余量的数值的指数化结果作为Prop_rest(i,j+1)计算公式的分子,然后可计算分子除以分母得到Prop_bdw(i,j+1)计算公式的输出数值;
依此可得,所述节点Binm(i,j)所在的列中各节点的穿透特征以及所述节点Binm(i,j)的下一列中各节点的反向穿透特征,将所述节点Binm(i,j)所在的列中各节点的穿透特征的数值按照其对应的节点的顺序组成一个数组称作第一数组(因为原本列中各节点的穿透特征对应的节点就是一个列里面序号为i∈[1,n]的n个节点,所以第一数组里面也是有相应的n个数值且对应的序号也保持了一致),所述节点Binm(i,j)的下一列中各节点的反向穿透特征的数值也按照其对应的节点的顺序组成一个数组称作第二数组(同样地,因为所在列中各节点的反向穿透特征对应的节点就是一个列里面序号为i∈[1,n]的n个节点,所以第二数组里面也是有相应的n个数值且对应的序号也保持了一致,第一数组和第二数组中各维度的数值也需记录并保存其对应的节点在并向式排布矩阵中的行列序号位置,由此可知,第一数组和第二数组中各维度的数值都是同为i∈[1,n]的,即各维度的序号与一列中各行的序号是保持一致的,第一数组和第二数组中同一序号的维度上的数值对应了并向式排布矩阵中处于同一行但处于前后相邻两列的两个节点,第一数组中的各维度对应了同样顺序的慢速节点所在的列中的各节点,第二数组中的各维度对应了同样顺序的慢速节点所在的列的下一列中的各节点,能够使用第一数组和第二数组中各维度与并向式排布矩阵中节点的对应关系找出对应的节点)。
进一步地,在S400中,计算超风险节点的方法为:
记所述第一数组为数组Barr,第一数组中序号为i的维度的数值为Barr(i),记所述第二数组为数组Parr,第二数组中序号为i的维度的数值为Parr(i),(由于同一列中各节点间的数据在传输至下一列时能够互相交换下一个节点,各任务的节点是能够动态分配的,同一列中的各节点可以在列中调整顺序,同时,由于第一数组与第二数组中序号相同的维度的数值对应了并向式排布矩阵中处于同一行但处于前后相邻两列的两个节点,并且这两个节点是处于同一任务中具有传输先后关系的,(例如,第一数组与第二数组中序号同为i等于2的维度的数值对应了并向式排布矩阵中序号为2的行,)
分别计算第一数组中各个维度相对于第二数组的穿透风险,具体为:
对第一数组中的各维度,分别计算第一数组中该维度的数值减去第二数组中各个维度的数值之差,在得到第一数组中该维度的数值分别减去第二数组中各个维度的数值之差后,将第一数组中该维度的数值分别减去第二数组中各个维度的数值之差进行连乘并将连乘得到的积作为第一数组中该维度相对于第二数组的穿透风险,(例如,对第一数组中序号为2的维度Barr(2),若此时n具体等于6,则Barr(2)需要分别减去第二数组中的n个维度的数值,即Barr(2)分别减去第二数组中的6个维度的数值得到6个差,再将这6个差进行连乘得到第一数组中该维度相对于第二数组的穿透风险);在其数学表达上,由于要表示第一数组中各个维度分别与第二数组中各个维度的相减再连乘,而第一数组中各个维度与第二数组中各个维度都是相同的序号i,为了避免第一数组中各个维度与第二数组中各个维度标识不清,在计算穿透风险的过程中,为第一数组中各个维度的序号i加上标`作为i`以示区别第二数组中相同的序号i,第一数组中各个维度的序号i`跟i一样属于[1,n],但是区分标记为i`的好处是计算连乘符号中的Barr(i`)-Parr(i)时Barr(i`)的序号i`与Parr(i)的序号i可以有所区分并且在遍历过程中变量的具体数值互相独立,由此第一数组中序号为i的维度加上标后以i`区分可记为Barr(i`),Barr(i`)相对于第二数组的穿透风险记为Risk(i`),Risk(i`)的公式可记为:
选出所述慢速节点对应的穿透风险,(由于第一数组中各维度对应了所述慢速节点所在列中各节点,所述慢速节点对应的第一数组中的维度相对于第二数组的穿透风险,即为所述慢速节点对应的穿透风险,所述慢速节点在其所在列中行的序号为2,则所述慢速节点对应的穿透风险为Risk(2),)这样的计算方式不同于现有技术,一次的穿透风险的计算是对第一数组中一个维度对于第二数组中各维度的数据特征上的遍历采样,由于在计算穿透特征及反向穿透特征的过程中已经计算了列与上一列、列与前一列间的数值的分布概率(例如可见,并向式排布矩阵中第i行第j+1列位置的节点的带宽的数值相对于第j列中各节点的带宽的数值的分布概率、并向式排布矩阵中第i行第j+1列位置的节点的存储余量的数值相对于第j列中各节点的存储余量的数值的分布概率),计算穿透风险更有利于在全面的跨维度的数据特征上的遍历采样的基础上识别出使得节点传输出现传输中断或大程度延时的节点;
分别对比所述慢速节点对应的穿透风险与第一数组中各个维度相对于第二数组的穿透风险,选出第一数组中的穿透风险数值大于所述慢速节点对应的穿透风险的维度作为超风险维度,记录超风险维度的序号为超风险序号,将在所述慢速节点的下一列中行序号对应所述超风险序号的节点作为超风险节点进行输出,由此根据节点的传输延迟上限、带宽和存储余量以及节点用时等信息,对节点进行计算超风险节点,从而避免了服务链出现瓶颈和系统风险。
进一步地,在S500中,VNF链避开超风险节点进行动态配置的方法为:
可优选地,可以使用SAAS对所述超风险节点进行网络监控,当所述慢速节点需要向下一个节点进行数据传输时,从所述慢速节点的下一列中各节点中选择不是超风险节点的节点进行动态地配置为所述慢速节点的下一个节点,这样有利于提早发现网络数据传输的拥堵现象,及时预防数据传输变慢的发生。
本发明还提供了一种服务链的动态放置系统,所述一种服务链的动态放置系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种服务链的动态放置方法中的步骤,所述一种服务链的动态放置系统可以运行于桌上型计算机、笔记本电脑、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群,所述处理器执行所述计算机程序运行在以下系统的单元中:
链路获取单元,用于获取多个等长的VNF链;
数据获取单元,用于获取VNF链中各节点的带宽和存储余量以及节点用时;
并向式排布单元,用于当出现慢速节点,将VNF链中的各节点进行并向式排布;
超风险节点计算单元,用于在进行并向式排布后,对VNF链中的各节点进行计算超风险节点;
动态配置单元,用于VNF链避开超风险节点进行动态配置。
本发明的有益效果为:本发明提供了一种服务链的动态放置方法及系统,获取多个等长的VNF链,获取VNF链中各节点的带宽和存储余量以及节点用时,当出现慢速节点,将VNF链中的各节点进行并向式排布,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点,VNF链避开超风险节点进行动态配置。本发明所述方法在放置服务链节点时,充分考虑了节点之间的依赖关系和资源需求的变化,可以动态调整节点的配置,从而提高配置效率和资源利用率;在出现慢速节点时,本发明所述方法采用并向式排布来优化节点的配置,可以更快速地完成节点部署,提高任务执行效率;本发明所述方法根据节点的传输延迟上限、带宽和存储余量以及节点用时等信息,对节点进行计算超风险节点,从而避免了服务链出现瓶颈和系统风险,具有更高的灵活性、效率和可靠性,可以适应不同场景下的任务需求和资源配置。
附图说明
通过对结合附图所示出的实施方式进行详细说明,本发明的上述以及其他特征将更加明显,本发明附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:
图1所示为一种服务链的动态放置方法的流程图;
图2所示为一种服务链的动态放置系统的系统结构图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
如图1所示为根据本发明的一种服务链的动态放置方法的流程图,下面结合图1来阐述根据本发明的实施方式的一种服务链的动态放置方法及系统。
本发明提出一种服务链的动态放置方法,所述方法具体包括以下步骤:
S100,获取多个等长的VNF链;
S200,获取VNF链中各节点的带宽和存储余量以及节点用时;
S300,当出现慢速节点,将VNF链中的各节点进行并向式排布;
S400,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点;
S500,VNF链避开超风险节点进行动态配置。
进一步地,在S100中,所述多个等长的VNF链中的VNF链的方向相同。
进一步地,所述VNF链由多个作为其中的节点的VNF构成,
节点的存储余量表示该个节点中空余的能够存储数据的容量,
VNF链的传输延迟上限为该任务对应的VNF链中从首个节点到末个节点的数据传输的耗费时间的上限,
每个节点所在的VNF链中传输到该节点的用时称为该个节点的节点用时。
进一步地,在S300中,当出现慢速节点,将VNF链中的各节点进行并向式排布的方法为:
将所述多个等长的VNF链按照同样的方向进行排列以此组成一个矩阵,所述矩阵中的一行为一个VNF链,所述矩阵中的一列包括各VNF链中相同序号的节点(,例如,将任务集合中各个任务的VNF链,各条VNF链横着排作为所述矩阵中的各行,每条VNF链按照每行从左到右顺序地排列VNF链中的各个节点,所述矩阵中顺序第3的列是由任务集合的各任务中分别第3个的节点所构成,所述矩阵中顺序第3的列中的各节点的排列顺序与任务集合的各任务的排列顺序保持一致),由此称所述矩阵为并向式排布矩阵;
并向式排布矩阵记作Binmat,并向式排布矩阵为n行m列的矩阵,并向式排布矩阵中行的序号为i,i∈[1,n],并向式排布矩阵中列的序号为j,j∈[1,m],并向式排布矩阵中第i行第j列的位置上的节点即为任务集合中序号为i的任务对应的VNF链中序号为j的节点,并向式排布矩阵中第i行第j列的位置上的节点记为Binm(i,j),并向式排布矩阵中第i行的节点记作Binm(i,),并向式排布矩阵中第i行的节点记作Binm(,j),以j-1表示j减少1的数值即序号j的上一个序号,以j+1表示j增加1的数值即序号j的下一个序号;在并向式排布矩阵中,节点Binm(i,j)的带宽的数值为bdw(i,j),节点Binm(i,j)的存储余量的数值为rest(i,j),节点Binm(i,j)的节点用时为dura(i,j);
根据节点Binm(i,j)中的序号i确定所述节点Binm(i,j)处于并向式排布矩阵中序号为i的行Binm(i,),Binm(i,)对应的任务的传输延迟上限记为limit(i);
若当并向式排布矩阵中存在有一个节点出现数据传输速度变慢的现象,将出现数据传输速度变慢的现象的节点称为慢速节点,则对所述慢速节点进行动态配置;这样的好处是,在出现慢速节点时,该方法采用并向式排布来优化节点的配置,可以更快速地完成节点部署,提高任务执行效率。
进而,对所述慢速节点所在的列中的各节点进行计算穿透特征:
若一个节点要计算其穿透特征,则该节点需要处于一个存在后一列的列中,根据该节点的带宽和存储余量的数值以及该节点所在列的下一列中各节点的带宽和存储余量的数值,计算该节点的穿透特征,具体实施方式可为:在称为慢速节点所在的列中,对其中的各节点Binm(i,j),记其中各节点Binm(i,j)的穿透特征为thro(i,j),其中各节点Binm(i,j)的穿透特征的数值计算公式为:
可优选地,以Prob_bdw(i,j)表示并向式排布矩阵中第i行第j列位置的节点的带宽的数值相对于第j+1列中各节点的带宽的数值的分布概率,可以先计算第j+1列中各节点的带宽的数值的指数化结果的累加求和作为Prob_bdw(i,j)计算公式的分母,再计算第i行第j列位置的节点的带宽的数值的指数化结果作为Prob_bdw(i,j)计算公式的分子,然后可计算分子除以分母得到Prob_bdw(i,j)计算公式的输出数值,指数化函数exp可为以自然常数e为底的指数函数,Prob_bdw(i,j)计算公式可为:
可优选地,以Prob_rest(i,j)表示并向式排布矩阵中第i行第j列位置的节点的存储余量的数值相对于第j+1列中各节点的存储余量的数值的分布概率,可以先计算第j+1列中各节点的存储余量的数值的指数化结果的累加求和作为Prob_rest(i,j)计算公式的分母,再计算第i行第j列位置的节点的存储余量的数值的指数化结果作为Prob_rest(i,j)计算公式的分子,然后可计算分子除以分母得到Prob_bdw(i,j)计算公式的输出数值,Prob_rest(i,j)的计算公式可为:
而1-dura(i,j)/limit(i)是通过对节点用时占任务的传输延迟上限的比重来衡量当前节点的数据传输情况,这样计算的好处是dura(i,j)占limit(i)比值越大则1-dura(i,j)/limit(i)越小,若dura(i,j)/limit(i)数值越大则表示当前节点耗费的时间已经趋于传输延迟上限了,Prob_bdw(i,j)*Prob_rest(i,j)越小表示了慢速节点所在的列中的各节点的资源(带宽、存储余量等)相对下一列(或别的列)显得越是处于劣势,这样配合乘以Prob_bdw(i,j)*Prob_rest(i,j)可以更好地衡量一个节点在全部的任务中需要得到数据的支援的迫切程度,从而更好地对各任务中各节点的计算资源进行优化调度;
值得注意的是,根据各节点Binm(i,j)的穿透特征的数值计算公式可知,一个节点的穿透特征的数值计算公式只要该节点所在的列不是最后一列便可成立,所以选用了节点Binm(i,j)这样以变量序号i和j来标识的方式可以更有效地进行普适的标记;
接着,计算所述慢速节点的下一列中各节点的反向穿透特征:
若要对其中一个节点计算该节点的反向穿透特征,则需要确保该节点所在的列不是在并向式排布矩阵中的第一个列,根据该节点的带宽和存储余量的数值以及该节点所在列的上一列中各节点的带宽和存储余量的数值,计算该节点的反向穿透特征,具体实施方式可为:
所述节点Binm(i,j)在其所在任务对应的行Binm(i,)中的下一个节点Binm(i,j+1),并获取所述节点Binm(i,j+1)所在的列Binm(,j+1),由此获取列Binm(,j+1)中的各节点Binm(i,j+1)及其带宽的数值bdw(i,j+1)和存储余量的数值rest(i,j+1),此处值得注意的是,若要对一个节点计算其反向穿透特征,则需要确保该节点所在的列不是在并向式排布矩阵中的第一个列,即该节点所在的列存在前一个列,计算各节点Binm(i,j+1)的反向穿透特征thro`(i,j+1)的公式为:
可优选地,以Prop_bdw(i,j+1)表示并向式排布矩阵中第i行第j+1列位置的节点的带宽的数值相对于第j列(即所述第j+1列的前一列)中各节点的带宽的数值的分布概率,可以先计算第j列中各节点的带宽的数值的指数化结果的累加求和作为Prop_bdw(i,j+1)计算公式的分母,再计算第i行第j+1列位置的节点的带宽的数值的指数化结果作为Prop_bdw(i,j+1)计算公式的分子,然后可计算分子除以分母得到Prop_bdw(i,j+1)计算公式的输出数值,指数化函数exp可为以自然常数e为底的指数函数,Prop_bdw(i,j+1)计算公式可为:
可优选地,以Prop_rest(i,j)表示并向式排布矩阵中第i行第j+1列位置的节点的存储余量的数值相对于第j列中各节点的存储余量的数值的分布概率,可以先计算第j列中各节点的存储余量的数值的指数化结果的累加求和作为Prop_rest(i,j+1)计算公式的分母,再计算第i行第j+1列位置的节点的存储余量的数值的指数化结果作为Prop_rest(i,j+1)计算公式的分子,然后可计算分子除以分母得到Prop_bdw(i,j+1)计算公式的输出数值,Prop_rest(i,j+1)的计算公式可为:
依此可得,所述节点Binm(i,j)所在的列中各节点的穿透特征以及所述节点Binm(i,j)的下一列中各节点的反向穿透特征,将所述节点Binm(i,j)所在的列中各节点的穿透特征的数值按照其对应的节点的顺序组成一个数组称作第一数组(因为原本列中各节点的穿透特征对应的节点就是一个列里面序号为i∈[1,n]的n个节点,所以第一数组里面也是有相应的n个数值且对应的序号也保持了一致),所述节点Binm(i,j)的下一列中各节点的反向穿透特征的数值也按照其对应的节点的顺序组成一个数组称作第二数组(同样地,因为所在列中各节点的反向穿透特征对应的节点就是一个列里面序号为i∈[1,n]的n个节点,所以第二数组里面也是有相应的n个数值且对应的序号也保持了一致,第一数组和第二数组中各维度的数值也需记录并保存其对应的节点在并向式排布矩阵中的行列序号位置,由此可知,第一数组和第二数组中各维度的数值都是同为i∈[1,n]的,即各维度的序号与一列中各行的序号是保持一致的,第一数组和第二数组中同一序号的维度上的数值对应了并向式排布矩阵中处于同一行但处于前后相邻两列的两个节点,第一数组中的各维度对应了同样顺序的慢速节点所在的列中的各节点,第二数组中的各维度对应了同样顺序的慢速节点所在的列的下一列中的各节点,能够使用第一数组和第二数组中各维度与并向式排布矩阵中节点的对应关系找出对应的节点);
将所述第一数组和所述第二数组一并作为双向穿透特征数组,所述双向穿透特征数组代表了一种对于出现数据传输缓慢的节点步骤进行的数据的剖析和检测的插入,因为当把多个VNF链当做并向式排布矩阵进行看待时,按着行的顺序观测各列的数据的传输实际上即是多个VNF链在各节点间传输方向上的流动趋势,若单从一个方向进行穿透特征的数据分析不足以拟合数据传输变缓慢的列与列之间的数据特征分布,而对所述慢速节点所在的列及其下一列进行计算的穿透特征及反向穿透特征则有利于从数据上双向地捕捉数据的节点传输在并向式排布矩阵中的流动趋势并对其进行数据的分析。
进一步地,在S400中,计算超风险节点的方法为:
根据所述双向穿透特征数组,记所述第一数组为数组Barr,第一数组中序号为i的维度的数值为Barr(i),记所述第二数组为数组Parr,第二数组中序号为i的维度的数值为Parr(i),(由于同一列中各节点间的数据在传输至下一列时能够互相交换下一个节点,各任务的节点是能够动态分配的,同一列中的各节点可以在列中调整顺序,同时,由于第一数组与第二数组中序号相同的维度的数值对应了并向式排布矩阵中处于同一行但处于前后相邻两列的两个节点,并且这两个节点是处于同一任务中具有传输先后关系的,(例如,第一数组与第二数组中序号同为i等于2的维度的数值对应了并向式排布矩阵中序号为2的行,)
分别计算第一数组中各个维度相对于第二数组的穿透风险,具体为:
对第一数组中的各维度,分别计算第一数组中该维度的数值减去第二数组中各个维度的数值之差,在得到第一数组中该维度的数值分别减去第二数组中各个维度的数值之差后,将第一数组中该维度的数值分别减去第二数组中各个维度的数值之差进行连乘并将连乘得到的积作为第一数组中该维度相对于第二数组的穿透风险,(例如,对第一数组中序号为2的维度Barr(2),若此时n具体等于6,则Barr(2)需要分别减去第二数组中的n个维度的数值,即Barr(2)分别减去第二数组中的6个维度的数值得到6个差,再将这6个差进行连乘得到第一数组中该维度相对于第二数组的穿透风险);在其数学表达上,由于要表示第一数组中各个维度分别与第二数组中各个维度的相减再连乘,而第一数组中各个维度与第二数组中各个维度都是相同的序号i,为了避免第一数组中各个维度与第二数组中各个维度标识不清,在计算穿透风险的过程中,为第一数组中各个维度的序号i加上标`作为i`以示区别第二数组中相同的序号i,第一数组中各个维度的序号i`跟i一样属于[1,n],但是区分标记为i`的好处是计算连乘符号中的Barr(i`)-Parr(i)时Barr(i`)的序号i`与Parr(i)的序号i可以有所区分并且在遍历过程中变量的具体数值互相独立,由此第一数组中序号为i的维度加上标后以i`区分可记为Barr(i`),Barr(i`)相对于第二数组的穿透风险记为Risk(i`),Risk(i`)的公式可记为:
选出所述慢速节点对应的穿透风险,(由于第一数组中各维度对应了所述慢速节点所在列中各节点,所述慢速节点对应的第一数组中的维度相对于第二数组的穿透风险,即为所述慢速节点对应的穿透风险,所述慢速节点在其所在列中行的序号为2,则所述慢速节点对应的穿透风险为Risk(2),)这样的计算方式不同于现有技术,一次的穿透风险的计算是对第一数组中一个维度对于第二数组中各维度的数据特征上的遍历采样,由于在计算穿透特征及反向穿透特征的过程中已经计算了列与上一列、列与前一列间的数值的分布概率(例如可见,并向式排布矩阵中第i行第j+1列位置的节点的带宽的数值相对于第j列中各节点的带宽的数值的分布概率、并向式排布矩阵中第i行第j+1列位置的节点的存储余量的数值相对于第j列中各节点的存储余量的数值的分布概率),计算穿透风险更有利于在全面的跨维度的数据特征上的遍历采样的基础上识别出使得节点传输出现传输中断或大程度延时的节点;
分别对比所述慢速节点对应的穿透风险与第一数组中各个维度相对于第二数组的穿透风险,选出第一数组中的穿透风险数值大于所述慢速节点对应的穿透风险的维度作为超风险维度,记录超风险维度的序号为超风险序号,将在所述慢速节点的下一列中行序号对应所述超风险序号的节点作为超风险节点进行输出,由此根据节点的传输延迟上限、带宽和存储余量以及节点用时等信息,对节点进行计算超风险节点,从而避免了服务链出现瓶颈和系统风险。
进一步地,在S500中,VNF链避开超风险节点进行动态配置的方法为:
可优选地,可以使用SAAS对所述超风险节点进行网络监控,当所述慢速节点需要向下一个节点进行数据传输时,从所述慢速节点的下一列中各节点中选择不是超风险节点的节点进行动态地配置为所述慢速节点的下一个节点,这样有利于提早发现网络数据传输的拥堵现象,及时预防数据传输变慢的发生。
所述一种服务链的动态放置系统运行于桌上型计算机、笔记本电脑、掌上电脑或云端数据中心的任一计算设备中,所述计算设备包括:处理器、存储器及存储在所述存储器中并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种服务链的动态放置方法中的步骤,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群。
本发明的实施例提供的一种服务链的动态放置系统,如图2所示,该实施例的一种服务链的动态放置系统包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种服务链的动态放置方法实施例中的步骤,所述处理器执行所述计算机程序运行在以下系统的单元中:
链路获取单元,用于获取多个等长的VNF链;
数据获取单元,用于获取VNF链中各节点的带宽和存储余量以及节点用时;
并向式排布单元,用于当出现慢速节点,将VNF链中的各节点进行并向式排布;
超风险节点计算单元,用于在进行并向式排布后,对VNF链中的各节点进行计算超风险节点;
动态配置单元,用于VNF链避开超风险节点进行动态配置。
其中,优选地,本发明中所有未定义的变量,若未有明确定义,均可为人工设置的阈值;优选地,对于单位不同的物理量之间的数值计算,可进行无量纲化处理、归一化处理,以统一不同物理量之间的数值关系。
所述一种服务链的动态放置系统可以运行于桌上型计算机、笔记本电脑、掌上电脑及云端数据中心等计算设备中。所述一种服务链的动态放置系统包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种服务链的动态放置方法及系统的示例,并不构成对一种服务链的动态放置方法及系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种服务链的动态放置系统还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立元器件门电路或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种服务链的动态放置系统的控制中心,利用各种接口和线路连接整个一种服务链的动态放置系统的各个分区域。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种服务链的动态放置方法及系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明提供了一种服务链的动态放置方法及系统,获取多个等长的VNF链,获取VNF链中各节点的带宽和存储余量以及节点用时,当出现慢速节点,将VNF链中的各节点进行并向式排布,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点,VNF链避开超风险节点进行动态配置。本发明所述方法在放置服务链节点时,充分考虑了节点之间的依赖关系和资源需求的变化,可以动态调整节点的配置,从而提高配置效率和资源利用率;在出现慢速节点时,本发明所述方法采用并向式排布来优化节点的配置,可以更快速地完成节点部署,提高任务执行效率;本发明所述方法根据节点的传输延迟上限、带宽和存储余量以及节点用时等信息,对节点进行计算超风险节点,从而避免了服务链出现瓶颈和系统风险,具有更高的灵活性、效率和可靠性,可以适应不同场景下的任务需求和资源配置。
尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。
Claims (7)
1.一种服务链的动态放置方法,其特征在于,所述方法包括以下步骤:
S100,获取多个等长的VNF链;
S200,获取VNF链中各节点的带宽和存储余量以及节点用时;
S300,当出现慢速节点,将VNF链中的各节点进行并向式排布;
S400,在进行并向式排布后,对VNF链中的各节点进行计算超风险节点;
S500,VNF链避开超风险节点进行动态配置。
2.根据权利要求1所述的一种服务链的动态放置方法,其特征在于,在S100中,所述多个等长的VNF链中的VNF链的方向相同。
3.根据权利要求1所述的一种服务链的动态放置方法,其特征在于,所述VNF链由多个作为其中的节点的VNF构成,节点的存储余量表示节点中空余的能够存储数据的容量,VNF链的传输延迟上限为任务对应的VNF链中从首个节点到末个节点的数据传输的耗费时间的上限,
每个节点所在的VNF链中传输到该节点的用时称为该个节点的节点用时。
4.根据权利要求1所述的一种服务链的动态放置方法,其特征在于,在S300中,当出现慢速节点,将VNF链中的各节点进行并向式排布的方法为:
将所述多个等长的VNF链按照同样的方向进行排列以此组成一个矩阵,所述矩阵中的一行为一个VNF链,所述矩阵中的一列包括各VNF链中相同序号的节点,由此称所述矩阵为并向式排布矩阵;
若当并向式排布矩阵中存在有一个节点出现数据传输速度变慢的现象,将出现数据传输速度变慢的现象的节点称为慢速节点,则对所述慢速节点进行动态配置;
进而,对所述慢速节点所在的列中的各节点进行计算穿透特征:若一个节点要计算其穿透特征,则该节点需要处于一个存在后一列的列中,根据该节点的带宽和存储余量的数值以及该节点所在列的下一列中各节点的带宽和存储余量的数值,计算该节点的穿透特征;
接着,计算所述慢速节点的下一列中各节点的反向穿透特征:若要对其中一个节点计算该节点的反向穿透特征,则需要确保该节点所在的列不是并向式排布矩阵中的第一个列,根据该节点的带宽和存储余量的数值以及该节点所在列的上一列中各节点的带宽和存储余量的数值,计算该节点的反向穿透特征;
将慢速节点所在的列中各节点的穿透特征的数值按照其对应的节点的顺序组成一个数组称作第一数组,所述慢速节点的下一列中各节点的反向穿透特征的数值也按照其对应的节点的顺序组成一个数组称作第二数组。
5.根据权利要求4所述的一种服务链的动态放置方法,其特征在于,在S400中,计算超风险节点的方法为:
分别计算第一数组中各个维度相对于第二数组的穿透风险,具体为:对第一数组中的各维度,分别计算第一数组中该维度的数值减去第二数组中各个维度的数值之差,在得到第一数组中该维度的数值分别减去第二数组中各个维度的数值之差后,将第一数组中该维度的数值分别减去第二数组中各个维度的数值之差进行连乘并将连乘得到的积作为第一数组中该维度相对于第二数组的穿透风险,;
分别对比所述慢速节点对应的穿透风险与第一数组中各个维度相对于第二数组的穿透风险,选出第一数组中的穿透风险数值大于所述慢速节点对应的穿透风险的维度作为超风险维度,记录超风险维度的序号为超风险序号,将在所述慢速节点的下一列中行序号对应所述超风险序号的节点作为超风险节点进行输出。
6.根据权利要求1所述的一种服务链的动态放置方法,在S500中,VNF链避开超风险节点进行动态配置的方法为:
当慢速节点需要向下一个节点进行数据传输时,从所述慢速节点的下一列中各节点中选择不是超风险节点的节点进行动态地配置为所述慢速节点的下一个节点。
7.一种服务链的动态放置系统,其特征在于,所述一种服务链的动态放置系统运行于桌上型计算机、笔记本电脑或云端数据中心的任一计算设备中,所述计算设备包括:处理器、存储器及存储在所述存储器中并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的一种服务链的动态放置方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310468689.XA CN116545857A (zh) | 2023-04-27 | 2023-04-27 | 一种服务链的动态放置方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310468689.XA CN116545857A (zh) | 2023-04-27 | 2023-04-27 | 一种服务链的动态放置方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116545857A true CN116545857A (zh) | 2023-08-04 |
Family
ID=87456996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310468689.XA Withdrawn CN116545857A (zh) | 2023-04-27 | 2023-04-27 | 一种服务链的动态放置方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116545857A (zh) |
-
2023
- 2023-04-27 CN CN202310468689.XA patent/CN116545857A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515739B (zh) | 深度学习神经网络模型负载计算方法、装置、设备及介质 | |
CN105022670B (zh) | 一种云计算平台中的异构分布式任务处理系统及其处理方法 | |
US8875153B2 (en) | Routing workloads based on relative queue lengths of dispatchers | |
CN112068957B (zh) | 资源分配方法、装置、计算机设备及存储介质 | |
WO2021042748A1 (zh) | 一种基于概率分布的轴承工况稳定性评估方法及装置 | |
CN112035571A (zh) | 一种数据同步方法、装置、设备和存储介质 | |
CN111814957B (zh) | 神经网络运算方法及相关设备 | |
CN117785480B (zh) | 处理器、归约计算方法及电子设备 | |
CN116089051A (zh) | 一种任务分配方法、装置及系统 | |
CN111813517B (zh) | 任务队列的分配方法、装置、计算机设备及介质 | |
CN111949681A (zh) | 数据的聚合处理装置、方法和存储介质 | |
CN112749072B (zh) | 一种对存储训练数据的云存储系统的测试方法及装置 | |
CN114401239A (zh) | 元数据传输方法、装置、计算机设备和存储介质 | |
CN116545857A (zh) | 一种服务链的动态放置方法及系统 | |
CN114968603B (zh) | 一种支持多档负载平衡的容量检测方法及装置 | |
CN116009889A (zh) | 深度学习模型的部署方法、装置、电子设备及存储介质 | |
CN110674165A (zh) | 采样率调整的方法、装置、存储介质和终端设备 | |
CN107329813B (zh) | 一种面向众核处理器的全局感知数据主动预取方法及系统 | |
US8966483B2 (en) | Method and device for optimizing execution of software applications in a multiprocessor architecture comprising several input/output controllers and secondary computing units | |
CN115221174A (zh) | 基于人工智能的数据分级存储方法、装置、设备及介质 | |
CN114546652A (zh) | 一种参数预估方法、装置及电子设备 | |
CN112764935A (zh) | 大数据处理方法、装置、电子设备及存储介质 | |
CN115705497A (zh) | 一种量子计算机操作系统和量子计算机 | |
CN112948758B (zh) | 数据处理方法、装置以及芯片 | |
CN112486402A (zh) | 一种存储节点及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20230804 |