5G/B5G环境下的虚拟网络功能通用调度方法

文档序号:27491894发布日期:2021-11-22 14:47阅读:250来源:国知局
5G/B5G环境下的虚拟网络功能通用调度方法
5g/b5g环境下的虚拟网络功能通用调度方法
技术领域
1.本发明属于5g/b5g环境下虚拟网络功能共享条件下的流量调度技术领域,特别涉及软件定义网络、网络功能虚拟化技术、vnf共享的概念、服务功能链、最小加代数理论以及 vnf调度方法。


背景技术:

2.在5g/b5g的大环境下,每种网元各自承担了通信网络中的某个网络功能(network function,nf)。然而面对大连接、巨流量这种状况,网络功能处理较为乏力,而这种问题对于每个网络功能都是存在的,所以通过虚拟化技术将这些网元虚拟化形成了虚拟网络功能 (virtual network function,vnf),提出一个共同的方法来解决各类网络功能的问题。在如今的5g/b5g大背景下,软件定义网络(software defined networking,sdn)和网络功能虚拟化 (networking function virtualization,nfv)技术带来众多优势的同时也提高了网络中流量的多样性和动态性,进而为服务功能链的优化带来一系列的挑战。通过引入vnf共享的概念既提高了vnf的利用率,又减少了网络中部署的vnf实例数量,从而极大程度上提高网络资源的利用率。然而,由于单个vnf实例对象可能同时被多条服务功能链所使用,那么就出现了以下问题:当这些服务功能链的流量在某一时刻同时到达,那么这些服务链共用的vnf 该如何处理这些不同的流量?
3.针对这个问题,本发明针对vnf提出了一个通用调度方法,对使用同一个vnf实例对象的不同流量进行合理的调度,从而最大化vnf的利用率。具体来说,即为使用当前vnf 对象且属于不同服务链的流量分配对应的时间片,用于对到达的流量进行相应的处理。针对共享vnf实例对象的服务功能链,基于最小加代数理论(min

plus algebra theory,mat)提出了新的服务链性能模型,该模型将vnf序列整合为一个串联的服务系统;在此基础上,提出了一个基于vnf共享的通用调度方法vnf

s,它根据服务链的大小进行资源分配,同时支持对已经分配的、但处于闲置状态的资源进行重新分配,从而起到最大化网络资源利用率的目的。


技术实现要素:

4.本发明的目的是解决在5g/b5g环境下,当多条服务功能链的流量在某一时刻同时到达时,这些服务功能链共用的vnf该如何处理这些不同的流量问题,也就是5g/b5g环境下 vnf共享条件下的流量调度问题。
5.本发明采用的技术方案是:
6.一种5g/b5g环境下的虚拟网络功能通用调度方法,将vnf的服务能力作为一种资源,为到达的且属于不同服务链的流量分配合理的执行时间片,实现资源的有效分配,最大化 vnf的利用率,包括建立新的服务功能链模型和在该模型基础上提出的vnf通用调度方法,其主要步骤包括:
7.步骤1建立网络拓扑模型;
之间不存在路由阻塞的情况,以这种假设为基础以及步骤2的阐述,可得到公式(8):
[0031][0032]
步骤3.3由于vnf是共享的,所以已经部署在网络中的vnf实例对象可以被多条不同的服务链使用,因此也需要对的服务能力进行分配,分配的服务能力使用符号表示。基于mat,具体表述如公式(9)所示:
[0033][0034]
其中表示表示的是任意服务功能链ψ
p
所分配到的服务能力,由组成。
[0035]
所述步骤4包括如下步骤:
[0036]
步骤4.1定义累计到达第一个vnf即的流量符号为离开最后一个vnf即的流量符号为引入一种广泛使用的受约束包络函数来定义的上边界,具体如公式(10)所示:
[0037][0038]
其中ρ(>0)表示数据流量的到达速率,σ是数据突发参数;
[0039]
步骤4.2基于步骤4.1中的边界函数,定义两种重要的性能指标模型,分别为数据积压和时延;数据积压指标的描述如公式(11)所示,服务功能链的时延指标如公式(12) 所示:
[0040][0041][0042]
其中ε表示偏移时间;
[0043]
步骤4.3根据步骤2.3中的公式(4)将数据积压和时延指标转化为最大上确界形式,分别如公式(13)和公式(14)所示:
[0044][0045][0046]
其中,公式(13)表示的是数据积压的最大上界形式,公式(14)表示的是时延的最大上界形式。
[0047]
所述步骤5包括如下步骤:
[0048]
步骤5.1为了合理公平地将vnf的服务处理能力分配给每条使用它的服务功能链,根据每条服务功能链的大小为其分配一个权值,分别使用ω1,ω2,

,ω
|ψ|
表示;
[0049]
步骤5.2将任意给定的vnf实例的服务能力(即)按照时间序列离散化,此时可将这种服务能力看作为一种资源,并分配给同时使用该vnf的服务链,所以的计算公
式如公式(15)所示:
[0050][0051]
步骤5.3如果一个实例对象中连续地发生积压现象,那么定义共同使用该vnf实例对象的两条服务链ψ
p
和ψ
p

的服务能力之间的关系如公式(16)所示:
[0052][0053]
步骤5.4由于很多服务功能链无法完全利用被分配的服务能力,所以将这部分没有被充分利用的资源进行重新分配,用于服务其他存在积压现象的服务功能链来最大化服务/资源利用率;
[0054]
步骤5.5根据服务链的权值,将vnf的服务能力平均分配或者重新分配给需要服务能力的每一条服务链。
[0055]
与现有技术相比较,本发明的有益效果是:通过引入vnf共享的概念,既能够提高vnf 的利用率,又可以减少网络中部署的vnf实例数量,能在极大程度上提高网络资源的利用率;并且针对vnf提出了一个通用的调度方法,来处理当服务功能链的流量在某一时刻同时到达时,这个vnf该如何处理这些不同的流量问题,对使用同一个vnf实例对象的不同流量进行合理的调度,从而最大化vnf的利用率,满足5g/b5g环境下巨连接、大流量的应用需求。
附图说明
[0056]
图1为本发明的架构图。
[0057]
图2为本发明的时延与数据积压示例图。
[0058]
图3为本发明的不同拓扑下的平均服务链时延示例图。
[0059]
图4为本发明的数据积压与吞吐量示例图。
[0060]
图5为本发明的服务链使用结论的流程图。
具体实施方式
[0061]
为了满足5g/b5g环境下巨连接、大流量的应用需求,其中必须要解决的一个问题就是 vnf共享条件下的调度问题。为了解决这个问题,本发明首先基于mat建立了新的服务功能链模型,该模型支持在不同服务链之间共享vnf;之后在服务功能链模型基础上,提出了一种针对vnf的通用调度方法,用于为到达的且属于不同服务链的流量分配合理的执行时间片,从而最大化vnf的利用率。
[0062]
请参阅图1所示的架构图,所述方法包括以下几方面的内容:
[0063]
1.虚拟网络功能vnf
[0064]
1.1建立流量模型
[0065]
1.1.1流入流量
[0066]
给定任意的vnf实例对象在时间间隔[0,t]内,累计到达该实例对象的流量(以bit 为单位)使用符号表示。显然,函数非负,且不存在递减的情况。在此基础上,
为了更加细粒度地描述到达的流量,需要对进行完善。于是,引入符号来表示时间间隔(τ,t]内累计到达的流量。其中,t>τ≥0。综合考虑这两个函数,得出公式(1):
[0067][0068]
1.1.2流出流量
[0069]
与流入流量类似,对于在时间间隔[0,t]内累计离开的流量使用符号表示。由于累计离开vnf的流量不可能超过累计到达的总流量,因此具有如公式(2)的结论:
[0070][0071]
对于公式(2),一方面,当时,流量到达的速度要快于离开的速度,从而导致来不及处理多余的数据,造成了数据的积压;另一方面,当时,则意味着中的数据积压继续保持平衡。
[0072]
1.1.3vnf的有效服务能力
[0073]
为了将和进行关联,本技术假设每个vnf都处于连续运转的状态,也就是说只要有数据流量等待处理,这些vnf就会一直工作下去。对于在时间间隔(τ,t]内,它所能提供的有效服务能力使用符号表示。根据公式(1),同样可以得出同样可以得出
[0074]
1.1.4关联模型
[0075]
对于给定任意的两个时间点τ和t(>τ),并且假设这两个时间点属于同一个繁忙周期。那么在此期间,将会以满负荷的状态运行。换言之,全部有效的服务能力将会被用于处理到达的数据流量。基于这种情况,建立与之间的关联模型,如公式(3) 所示;在公式(3)中,分别假设τ和t为上一个繁忙周期的开始和结束时间点,那么有公式(4) 结论;将公式(4)代入到公式(3)中,则得到公式(5):
[0076][0077][0078][0079]
由于τ通常是未知的,因此对式(5)进行转换,得到如公式(6)所示的通用形式:
[0080][0081]
另外,由于离开的总数据量不会超过到达的总数据量,即将其代入到公式(3)中,并对其进行通用化处理得到以下公式(7):
[0082][0083]
综合公式(6)和公式(7),则得到如公式(8)结论:
[0084][0085]
1.2最小加代数理论mat
[0086]
基于公式(8),引入mat的概念。具体而言,mat分别使用最小化操作来替换加法操作、使用加法操作替换乘法操作,于是基于mat,可以将公式(8)转换成公式(9):
[0087][0088]
在公式(9)中,表示mat中的卷积操作。
[0089]
2.基于mat建立服务功能链模型
[0090]
基于mat中的卷积操作,任意数量的子系统序列可以很容易被整合为一个完整的串联系统。从服务功能链的角度来说,它由若干个vnf按照特定顺序组成。如果将每个vnf 看作为一个单独的子系统,那么由它们组成的服务功能链则可以被看作是一个完整的串联系统。因此,本技术基于mat来建立服务功能链模型。
[0091]
网络中的服务功能链集合使用ψ={ψ
p
|p∈[1,|ψ|]}表示。对于任意服务功能链请求ψ
p
,它的vnf需求表示如下:
[0092][0093]
其中,与流量模型中介绍的具有一定的映射关系,前者表示服务链的vnf需求,后者表示已经部署在网络中的vnf实例对象。在公式(10)中,表示ψ
p
需要的第q个vnf。分别使用和表示在一定时间间隔内到达和离开的累计流量,且这些流量属于ψ
p
,由于本技术侧重于分析vnf的性能,因此对于任意服务链,假设两两邻接的vnf 之间不存在路由阻塞的情况,所以可以得到如公式(11)的结论:
[0094][0095]
根据特定的vnf部署策略,已经部署在网络中的vnf实例对象可能被多条不同的服务链使用,所以需要将的服务能力分配给使用它的每一条服务链,可以得到如下结论:给定任意服务功能链ψ
p
,其流量要按顺序通过假设ψ
p
所分配到的服务能力为它由组成,具体表述如公式(12):
[0096][0097]
整个结论的过程见图5中的流程图,其中,a
through
(t)表示属于当前服务链的流量,而 a
cross
(t)则表示属于其他服务链的流量。
[0098]
3.建立性能指标模型,其中包含数据积压和时延
[0099]
将服务功能链ψ
p
看作为一个由vnf组合的串联系统,那么在时间间隔(τ,t]内,累计到达第一个vnf(即)和离开最后一个vnf(即)的流量分别使用和表示。接下来基于一种广泛使用的受约束包络函数来定义的上边界,具体如公式(13):
[0100][0101]
其中ρ(>0)表示数据流量的到达速率,σ(≥0)是数据突发参数。
[0102]
基于以上边界函数,定义两种重要的性能指标模型,分别为数据积压和时延。数据
积压指标使用符号表示,而时延使用符号表示。图2给出了一条服务链的到达流量与离开流量随时间变化的曲线,其中,横着的箭头表示到达的流量,竖着的箭头表示离开的流量。
[0103]
3.1数据积压
[0104]
数据积压表示在队列中等待以及正在处理过程中的流量总和。在图2中,给定时刻t(对应坐标x轴),两条曲线的纵向之差即为当前滞留的数据总量。因此,将该指标描述成如公式(14),根据1.1.4中的公式(8),将其扩展成公式(15):
[0105][0106][0107]
其中公式(15)给出了积压指标的最大上确界,函数的上界由公式(13)给出,函数的计算将在后面给出介绍。
[0108]
3.2时延
[0109]
对于服务功能链的时延,在图2中,给定数据量(对应坐标y轴),那么,两条曲线的横向之差即为这些数据量从进入到离开所需要的时间。因此,将服务功能链的时延指标规划如公式(16),其中ε表示偏移时间。对于一定的流量,它从进入到完全离开vnf的这段时间被看作为vnf处理所需要的时延。同样,根据1.1.4中的公式(8),可以对公式(16)进行扩展,如公式(17)所示:
[0110][0111][0112]
4.基于服务功能链模型的vnf调度方法
[0113]
对于网络中的任意它可能被多条不同的服务功能链所共享,换句话说,可能有多个被映射到上。为了建立这种映射关系,定义以下变量:
[0114][0115]
其中,数值1表示被映射到上,0则表示没有。于是,存在以下约束条件:
[0116][0117]
为了合理公平地将vnf的服务处理能力分配给每条使用它的服务功能链,根据每条服务功能链的大小为其分配一个权值(呈正比关系),分别使用ω1,ω2,

,ω
|ψ|
表示。给定任意 vnf实例将其服务能力(即)按照时间序列离散化。那么,就可以将这种服务能力看作为一种资源,并分配给同时使用该vnf的服务链。由此,得出的计算如下:
[0118][0119]
给定任意它由两条服务功能链所共同使用,分别为ψ
p
的第q个vnf(即)以及
ψ
p

的第q

个vnf(即)。如果ψ
p
在时间间隔(τ,t]内、在中连续地发生积压现象,那么,分配给ψ
p
和ψ
p

的服务能力之间的关系描述如下:
[0120][0121]
为了不失一般性,假设所有使用的服务功能链都在一个集合中,使用符号表示。于是,对于所有的将公式化(21)一般化如下:
[0122][0123]
由于每个vnf可以被看作是一个持续工作的服务器,那么,假设它以一个固定的速率持续运转,于是:
[0124][0125]
将公式(20)和公式(23)代入到公式(22)中,将其展开可得到公式(24):
[0126][0127]
然而,公式(24)假设所有的服务功能链都能够完全使用分配到的服务能力,即它们会发生连续积压现象。事实上,很多服务功能链无法完全利用分配给它们的服务能力。因此,可以将这部分没有被充分利用的资源进行重新分配,用于服务其他存在积压现象的服务功能链,从而起到最大化服务/资源利用率的目的。基于这种考虑,给定任意它被多条不同的服务功能链同时使用,假设它们之中存在一部分连续积压的服务链,使用集合表示,那么对公式(24)进行完善,可得到公式(25):
[0128][0129]
基于以上规划,可以根据服务链的权值,将vnf的服务能力平均分配(或者重新分配) 给使用它的每一条服务链。
[0130]
5.用例评价
[0131]
本技术提出的vnf调度方法vnf

s采用python语言实现。
[0132]
5.1仿真拓扑
[0133]
本技术为了对vnf

s进行评估和验证,在仿真中使用三种网络拓扑:分别为小规模拓扑,有5个虚拟机和2条服务链,使用network i表示;中规模拓扑,有10个虚拟机和6 条服务链,使用network ii表示;大规模拓扑,有20个虚拟机和12条服务链,使用networkiii表示。
[0134]
5.2对比基准
[0135]
本技术在对vnf

s方法的性能进行评价时,选择两种基准方法与其进行对比:第一种为先到先服务(first come first serve,fcfs)方法,它严格按照数据流量的到达顺序来进行处理;第二种利用遗传算法(genetic algorithm,ga)来解决vnf调度问题。
[0136]
5.3评价指标
[0137]
采用了三种性能评价指标:调度时间、平均服务时延、数据积压与吞吐量。
[0138]
其中,平均服务时延由流量调度时延、数据处理时延、以及传播时延三部分组成,由于假设vnf实例已经部署在网络中,且服务功能路径已经设定,那么三种方法计算得到的传播时延一致,所以只需要比较调度与处理时延即可;由于在三个不同规模的拓扑中所得到的数据积压与吞吐量结果趋势大致相同,所以以network iii为仿真拓扑对vnf

s进行评估,并讨论数据积压与吞吐量之间的关系。
[0139]
前两个指标均是取值越小,vnf

s性能越好,最后一个指标是需要具有较高的吞吐量和较低的数据积压才能说明vnf

s性能的优越性。
[0140]
5.4评价结果
[0141]
5.4.1调度时间
[0142]
三种方法计算得到的调度时间请参阅表1测试结果。fcfs根据服务请求的到达顺序来处理对应的数据流量。然而一旦待处理的请求规模特别大(如大象流)时,fcfs需要花费较长的时间来处理该请求,并且fcfs只有在处理完这条请求之后,才能够去服务其他请求。对于诸如老鼠流这种较小的流来说,它们可能需要等待一段很长的时间。而这种情况的频繁发生将最终导致总的调度时间增加,所以fcfs的调度时间最长。基于ga的调度算法旨在通过迭代计算最小化等待时间,其复杂度小于fcfs,所以可以大概估计ga调度时间要小于fcfs。vnf

s的调度复杂度与ga相同,然而vnf

s允许在不同服务链之间共享相同的vnf实例,而且ga的调度时间同样还受到迭代次数和初始化种群规模的影响,而vnf

s 则没有此类约束。并且,迭代次数过少或者种群规模过小都会导致ga得不到预期的结果。所以vnf

s要优于ga。
[0143]
表1三种方法在不同网络中的调度时间(ms)
[0144][0145]
5.4.2平均服务时延
[0146]
平均时延的结果见图3所示。平均时延由流量调度时延、数据处理时延、以及传播时延三部分组成,其中三个方法的传播时延是一致的,调度时延见5.4.1中的结果,数据处理时延则主要由各自所采用的策略决定。fcfs简单地根据数据的到达顺序进行服务,因此耗时较长;ga优先为小规模数据流提供服务,因此降低了它们的等待时延,从而减少整体的处理时延,尽管如此,ga的处理时延仍然受到其固有特征(如基于编码和解码)的影响;vnf

s 支持在不同服务链之间共享相同的vnf实例,可以将同一个vnf的服务能力分配给使用它的服务功能链,除此之外,如果一条或者多条服务功能链没有充分使用分配到的服务资源,那么,vnf

s将会对这些闲置的资源进行重新分配,用于处理积压的数据。基于这种考虑, vnf

s可以较大程度地减小数据处理时延。因此,vnf

s所取得的平均时延最小。
[0147]
5.4.3数据积压与吞吐量
[0148]
数据积压与吞吐量的结果见图4所示。在图4中,第一个观察到的现象为当吞吐量增加较快时,数据积压的增长就较慢(如在时间点70之前),反之亦然(如在时间点80之后)。如果存在数据积压,那就意味着vnf处于满负荷工作的状态。这种情况下自然导致吞吐量稳定增长,因此,第一个现象是合理的;第二个观察到的现象为vnf

s相较于ga和fcfs,具有较高的吞吐量和较低的数据积压。一方面,同时具有较高的吞吐量和较低的数据积压现象是合理的;另一方面,vnf

s提出对部署的vnf实例进行共享。基于这种考虑,vnf

s 能够对闲置资源进行回收,并将其重新分配给存在数据积压的服务链,从而进一步提高了网络资源的利用率,相反,fcfs和ga并没有考虑资源的回收与重新分配,因此,它们的网络资源利用率和吞吐量相对于vnf

s要低。
[0149]
本发明在调度时间、平均服务时延、数据积压与吞吐量方面都较优于对比基准方法,说明了本发明在性能上的优越性。
[0150]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1