CN113225385B - 面向边缘计算环境的基于博弈理论的微服务请求分发方法 - Google Patents

面向边缘计算环境的基于博弈理论的微服务请求分发方法 Download PDF

Info

Publication number
CN113225385B
CN113225385B CN202110411844.5A CN202110411844A CN113225385B CN 113225385 B CN113225385 B CN 113225385B CN 202110411844 A CN202110411844 A CN 202110411844A CN 113225385 B CN113225385 B CN 113225385B
Authority
CN
China
Prior art keywords
edge
micro
representing
service
request
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
CN202110411844.5A
Other languages
English (en)
Other versions
CN113225385A (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.)
Tianjin University
Original Assignee
Tianjin University
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 Tianjin University filed Critical Tianjin University
Priority to CN202110411844.5A priority Critical patent/CN113225385B/zh
Publication of CN113225385A publication Critical patent/CN113225385A/zh
Application granted granted Critical
Publication of CN113225385B publication Critical patent/CN113225385B/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/10Protocols in which an application is distributed across nodes in the network
    • 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
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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/55Push-based network services
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Abstract

本发明涉及一种面向边缘计算环境的基于博弈理论的微服务请求分发方法,包括以下步骤:将边缘服务器从时延最小化的角度进行的微服务请求分发决策问题转换为优化问题;将边缘协作空间内边缘服务器之间微服务请求分发决策问题抽象为一个非合作博弈模型;各个边缘服务器作为博弈参与者采用同步轮转的方式,不断更新自己的策略,经过多个轮次的迭代最终实现纳什均衡状态,即没有任何一个边缘服务器可以在该状态通过更新自己的微服务请求分发策略来进一步的提高自己的效益;根据最终得到的纳什均衡解,制定每个边缘服务器的微服务请求分发决策。

Description

面向边缘计算环境的基于博弈理论的微服务请求分发方法
技术领域
本发明属于边缘计算技术领域,涉及博弈理论、排队理论和微服务架构技术,特别是网络边缘侧用户应用请求的任务分发与优化领域。
背景技术
传统的单体服务(Monolithic Service)受到架构的限制,在持续性、敏捷性、灵活性和可扩展性等方面,已经难以满足现代化软件服务的发展需求。在此背景下,微服务架构(Microservice Architecture)应运而生。微服务架构将复杂的软件服务拆分成细粒度的微服务,并对这些微服务采用分布式的方式进行开发、部署、管理和更新。相较于传统的单体服务,微服务架构具有高可扩展性、松散耦合、高弹性、易于部署和访问、敏捷开发等诸多优点。
边缘计算(Edge Computing)模式的提出,为微服务注入了新的活力,更进一步推动了微服务的发展与应用。边缘计算在网络的边缘增加了具有计算、存储、转发等功能的边缘设备,并以边缘设备为服务载体为用户提供服务,从而将服务从云服务中心迁移到距离用户更近的网络边缘。微服务小而自治的特点,使其正适合于独立部署在边缘设备上。如此一来,用户可以直接访问边缘设备上的微服务,而无需经过核心网与云服务中心进行交互,因此,与传统的云计算模式相比,极大地缩减了服务数据在核心网上传输所需的时间与能耗开销,提升了用户的服务体验质量;同时,还可以降低核心网的数据传输量,缓解核心网的数据传输压力;此外,由于服务数据直接在边缘设备上处理,故而降低了数据被窃听和篡改的风险,保护了用户的数据安全和隐私。
边缘计算环境中,网络边缘设备称为边缘服务器,如基站、增强型路由器等。边缘服务器可以为其覆盖范围内的用户提供微服务。然而,由于物理资源的限制,边缘服务器通常只能部署有限数量的微服务实例,处理有限种类的微服务请求,因此,不足以覆盖用户复杂多样的服务需求。当边缘服务器无法满足用户的微服务请求时,需要将服务请求转发给临近的可以满足该服务请求的边缘服务器,即边缘服务器之间组成一个协作空间,并在集群管理技术下,相互协作,资源共享。除此之外,一个基于微服务架构的应用程序是由几个逻辑上相关但功能上独立的微服务构建而成,一个微服务不会仅仅单独完成一个简单的任务,而是会按照一定的调用顺序,组成一个服务调用链,来共同完成更加复杂的应用请求。边缘协作空间内,在基于容器技术的帮助下,一个特定应用程序所包含的一组微服务实例可以很容易的部署在边缘服务器以及云服务器上,并且由于边缘服务器和云服务器具有不同的计算、存储和通信能力,微服务实例可以具有各种各样的部署方案(部署位置及个数)。对于一个微服务请求,可能会有多个边缘服务器或者云服务器提供所需的服务,因此,在已知微服务部署方案的前提下,如何为一个微服务调用链中不同微服务请求做出合理的分发决策以降低应用请求的响应时间成为亟待解决的关键问题。本发明将研究合理的微服务请求分发策略,达到最优化服务质量,即最小化应用响应时间的目的。
边缘计算环境中的微服务请求分发问题可以抽象为决策优化问题。在集中式的优化模型中,通常假定边缘计算系统中存在一个中心控制节点,该节点可以实时获取边缘计算系统中所有边缘服务器的实时服务执行状态、服务请求的到达速率以及边缘服务器之间的网络信息,从而基于这些信息制定微服务请求的分发决策。然而,这种模型对系统状态信息更新的实时性要求过高,在大规模的动态系统中,很难达到此要求;频繁的信息交互容易产生高昂的网络传输开销;此外,该模型过分依赖中心控制节点,单点故障瓶颈凸显,即中心控制节点一旦出现故障,会导致整个边缘计算系统的崩溃,因此,模型还存在易出错、难扩展、鲁棒性低等缺点。
发明内容
本发明提供一种面向边缘计算环境的灵活、易扩展、可靠性较高的微服务请求分发决策方法。本发明基于非合作博弈理论设计了面向边缘计算环境的微服务请求分发方法,该方法将边缘服务器之间的微服务请求分发问题建模为非合作博弈模型,边缘服务器作为博弈参与者通过多轮次的博弈和计算资源的竞争来为其收到的应用请求做出最优的分发策略,即最小化这些应用请求的平均响应时间,称其为MRDG算法。技术方案如下:
一种面向边缘计算环境的基于博弈理论的微服务请求分发方法,包括以下步骤:
步骤1:将边缘服务器ej从自身利益最大化即时延最小化的角度进行的微服务请求分发决策问题转换为如下的优化问题:
Figure BDA0003024169790000031
约束条件为:
Figure BDA0003024169790000032
Figure BDA0003024169790000033
Figure BDA0003024169790000034
Figure BDA0003024169790000035
λ′i≤Ωi·μi,1≤i≤m (6)
其中Tj表示边缘服务器ej将基于微服务架构的应用请求分发完毕后产生的平均响应时间;服务器集合表示为E∪{e0},E表示边缘服务器集合,边缘服务器个数为n,e0表示云服务器;定义基于微服务架构的应用请求是由m个微服务组成的调用链SC完成,即SC={ms1,ms2,…,msm};Φj=(j,Φ1,Φ2,…,Φi,…,Φm,j)表示边缘服务器ej上应用请求的生命周期,即各个微服务调用的顺序,Φi表示调用微服务msi时选择的边缘服务器;丑=(1,1,…,1),它表示阶为1×(n+1)的矩阵;o1表示阶为(n+1)×1的零矩阵;o2表示阶为(n+1)的零方阵;λ′i=(λ′i,0,λ′i,1,…,λ′i,j,…,λ′i,n)T表示微服务msi在不同服务器上的请求到达速率集合,其中λ′i,0表示微服务msi在云服务器e0上的请求到达速率,λ′i,j表示微服务msi在边缘服务器ej上的请求到达速率;μi=(μi,0,μi,1,…,μi,j,…,μi,n)T表示微服务msi在不同服务器上的请求处理速率集合,其中μi,0表示微服务msi在云服务器e0上的请求处理速率,μi,j表示微服务msi在边缘服务器ej上的请求处理速率;Ωi表示微服务msi的实例在服务器上的部署情况即:
Figure BDA0003024169790000036
其中Ωi,0表示微服务msi的实例在云服务器e0上的部署数量,Ωi,j表示微服务msi的实例在边缘服务器ej上的部署数量;
Figure BDA0003024169790000037
表示微服务请求路径为Φj的概率,定义
Figure BDA0003024169790000038
表示云服务器或边缘服务器ej分发关于微服务msi的请求到云服务器或边缘服务器ek的概率,则
Figure BDA0003024169790000039
表示为:
Figure BDA0003024169790000041
其中Π表示累乘,由于应用请求的响应结果总是会回传到源边缘服务器上然后返回给用户,所以
Figure BDA0003024169790000042
不会影响
Figure BDA0003024169790000043
值的大小,即:
Figure BDA0003024169790000044
Figure BDA0003024169790000045
表示边缘服务器ej对微服务ms1的请求分发策略,用
Figure BDA00030241697900000410
表示对微服务msi+1,1≤i≤m-1,的请求分发策略,即:
Figure BDA0003024169790000047
TΦ表示经过Φj路径所需要的延时时间。
步骤2:将边缘协作空间内n个边缘服务器之间微服务请求分发决策问题抽象为一个非合作博弈模型:
Figure BDA0003024169790000048
其中E表示博弈参与者即边缘服务器集合;
Figure BDA0003024169790000049
表示边缘服务器ej的策略集合;Tj(Sj,S-j)表示博弈参与者即边缘服务器ej的效益函数,即用来计算边缘服务器ej服务范围内收到的应用请求的平均响应时间的函数,其中Sj表示边缘服务器ej的微服务请求分发策略,S-j表示除边缘服务器ej外,剩余边缘服务器的微服务请求分发策略集合;
步骤3:n个边缘服务器作为博弈参与者采用同步轮转的方式,不断更新自己的策略,经过多个轮次的迭代最终实现纳什均衡状态,即没有任何一个边缘服务器可以在该状态通过更新自己的微服务请求分发策略来进一步的提高自己的效益;
步骤4:根据最终得到的纳什均衡解,制定每个边缘服务器ej的微服务请求分发决策Sj即:
Figure BDA0003024169790000051
进一步地,在每个边缘服务器更新自己策略并计算效益Tj的过程中考虑邻近边缘服务器服务重叠区域内对微服务ms1请求的分发优化,此优化的步骤如下:
步骤3.1:构成服务重叠区域的边缘服务器集合OE={e1,…,ek,…,el},
Figure BDA0003024169790000052
t表示重叠区域O内用户上传速率最大的边缘服务器et,设定重叠区域内微服务ms1的请求会优先分发给et处理,设定重叠区域O内的应用请求数量为Onum,边缘服务器et的应用请求到达速率为λt,边缘服务器et对微服务ms1的请求分发策略为
Figure BDA0003024169790000053
步骤3.2:初始化重叠区域内微服务ms1请求分发的优化策略
Figure BDA0003024169790000054
根据公式
Figure BDA0003024169790000055
计算用户直接将微服务ms1的请求分发给边缘服务器ek可以节省的时间,构成集合H={hu,1,hu,2,…,hu,k,…,hu,l},其中u表示某一用户,
Figure BDA0003024169790000056
表示微服务ms1的请求参数大小,
Figure BDA0003024169790000057
表示用户到边缘服务器et的上传速率,
Figure BDA0003024169790000058
表示边缘服务器et和边缘服务器ek之间的数据传输速率,
Figure BDA0003024169790000059
表示用户到边缘服务器ek的上传速率;
步骤3.3:对H降序排序;
步骤3.4:按照优先将微服务ms1的请求发送给最节省时间开销的边缘服务器的原则来分发重叠区域的请求,直至Onum分发完或没有可以再优化分发的边缘服务器为止;
步骤3.5:最后,若Onum还有剩余,直接按照原请求分发路径进行分发并返回优化策略向量
Figure BDA00030241697900000510
按照
Figure BDA00030241697900000511
对微服务ms1进行请求分发从而进一步的降低时延Tj
附图说明
图1是边缘计算系统架构。边缘计算系统由云服务中心、边缘服务器和用户三部分构成。每个边缘服务器都有自己的服务区域和资源限制,不同服务区域中的用户将连接到最近的边缘服务器来调用应用程序。
图2是基于微服务架构的应用程序的请求流程。图中1号请求过程表示用户对OnlineAid应用发起请求,并将服务请求发送到邻近的边缘服务器上;2、3、4号请求过程是对DataCollection、HealthQuery、AutoReport三种微服务的路由和调用过程;5号过程表示应用的执行结果回传到接收用户应用请求的源边缘服务器上;6号过程代表最后的检测结果返回给老人,至此整个微服务调用链的调用过程结束(OnlineAid是一款基于微服务架构的老年人在线检测应用程序)。
图3是基于微服务架构的应用程序的请求生命周期。按照微服务调用链中的服务执行顺序依次调用,同时为每个微服务请求选择合适的服务器(云服务器和边缘服务器)处理,直至应用执行结果返回给用户。
图4是服务重叠区域内请求分发优化。服务重叠区域内的应用请求可以借助用户直接上传给要路由的边缘服务器所带来的时延优势,从而进一步的降低其对应的平均响应时间。
图5是MRDG算法有效性评估。MRDG算法优于GA(遗传算法)和PRDA(按比例分配算法)并且非常接近Optimal(全局最优算法),这表明本发明所提算法的有效性。
图6和图7是MRDG算法的收敛性评估。表明MRDG算法可以收敛于一种稳定状态,即纳什均衡状态。
图8是MRDG算法对于服务重叠区域内请求分发优化的必要性评估。可以明显看出,重叠区域占比越大,考虑重叠区域请求分发优化的必要性就越明显。
具体实施方式
本发明设计了一种多边缘服务器之间去中心化的微服务请求分发博弈模型,并提出了一个去中心化的微服务请求分发算法MRDG来实现博弈的纳什均衡解。下面给出对博弈模型构建和算法设计的详细说明。
首先,将边缘服务器
Figure BDA0003024169790000061
从自身利益最大化角度出发(时延最小化)所进行的微服务请求分发决策问题转换为如下的优化问题:
Figure BDA0003024169790000062
约束条件为:
Figure BDA0003024169790000063
Figure BDA0003024169790000064
Figure BDA0003024169790000065
Figure BDA0003024169790000071
λ′i≤Ωi·μi,1≤i≤m (6)
其中Tj表示边缘服务器ej将基于微服务架构的应用请求分发完毕后产生的平均响应时间;服务器集合表示为E∪{e0},E表示边缘服务器集合,边缘服务器个数为n,e0表示云服务器;定义基于微服务架构的应用请求是由m个微服务组成的调用链SC完成,即SC={ms1,ms2,…,msm};Φj=(j,Φ1,Φ2,…,Φi,…,Φm,j)表示边缘服务器ej上应用请求的生命周期,即各个微服务调用的顺序,Φi表示调用微服务msi时选择的边缘服务器;丑=(1,1,…,1),它表示阶为1×(n+1)的矩阵;o1表示阶为(n+1)×1的零矩阵;O2表示阶为(n+1)的零方阵;λ′i=(λ′i,0,λ′i,1,…,λ′i,j,…,λ′i,n)T表示微服务msi在不同服务器(云服务器和边缘服务器)上的请求到达速率集合,其中λ′i,0表示微服务msi在云服务器e0上的请求到达速率,λ′i,j表示微服务msi在边缘服务器
Figure BDA0003024169790000072
上的请求到达速率;μi=(μi,0,μi,1,…,μi,j,…,μi,n)T表示微服务msi在服务器(云服务器和边缘服务器)上的请求处理速率集合,其中μi,0表示微服务msi在云服务器e0上的请求处理速率,μi,j表示微服务msi在边缘服务器
Figure BDA0003024169790000073
上的请求处理速率;Ωi表示微服务msi的实例在服务器(云服务器和边缘服务器)上的部署情况即:
Figure BDA0003024169790000074
其中Ωi,0表示微服务msi的实例在云服务器e0上的部署数量,Ωi,j表示微服务msi的实例在边缘服务器
Figure BDA0003024169790000075
上的部署数量;
Figure BDA0003024169790000076
表示微服务请求路径为Φj的概率,定义
Figure BDA0003024169790000077
表示服务器(云服务器和边缘服务器)ej分发关于微服务msi的请求到服务器(云服务器和边缘服务器)ek的概率,则
Figure BDA0003024169790000078
表示为:
Figure BDA0003024169790000079
其中Π表示累乘。因为应用请求的响应结果总是会回传到源边缘服务器ej上然后返回给用户,所以
Figure BDA00030241697900000710
不会影响
Figure BDA00030241697900000711
值的大小,即:
Figure BDA0003024169790000081
我们用
Figure BDA0003024169790000082
表示边缘服务器ej对微服务ms1的请求分发策略,用
Figure BDA0003024169790000083
表示对微服务msi+1(1≤i≤m-1)的请求分发策略,即:
Figure BDA0003024169790000084
最后,TΦ表示经过Φj路径所需要的延时时间,它包括Access time、Routingtime、Staying time和Backhaultime,即:
Figure BDA0003024169790000085
其中Taccess由两部分时间组成,首先是用户发起应用请求时,与接收应用请求的边缘服务器ej之间的上传时间,然后是边缘服务器ej将微服务ms1的请求参数发送到部署着微服务ms1的服务器(云服务器和边缘服务器)上的传输时间;Trouting表示服务链中各项微服务调用的路由时间;Tstaying表示微服务请求在每个服务器(云服务器和边缘服务器)上的逗留时间(包括排队等待的时间和服务执行的时间);Tbackhaul由两部分组成,首先是微服务msm完成应用请求后将响应结果回传到接收应用请求的源边缘服务器ej的时间,然后由边缘服务器ej将响应结果返回给终端用户的时间。
约束(2)(3)表示守恒约束,该约束保证源边缘服务器ej将每种微服务msi的请求分发到服务器(云服务器和边缘服务器)上的任务总和等于其收到的应用请求总数;约束(4)(5)保证了所有微服务请求的分发概率总是满足非负性;最后,约束(6)保证了服务器(云服务器和边缘服务器)的稳定性,因为根据排队理论,如果服务器当前可用的服务处理速率低于服务请求到达的速率,等待执行的任务队列将无限长,使得应用请求的响应时间也将是无限长的。
然后,将边缘协作空间内n个边缘服务器之间微服务请求分发决策问题抽象为一个非合作博弈模型:
Figure BDA0003024169790000086
其中E表示博弈参与者即边缘服务器集合;
Figure BDA0003024169790000091
表示边缘服务器ej的策略集合;Tj(Sj,S-j)表示博弈参与者即边缘服务器ej的效益函数,即用来计算边缘服务器ej服务范围内收到的应用请求的平均响应时间的函数,其中Sj表示边缘服务器ej的微服务请求分发策略,S-j表示除边缘服务器ej外,剩余边缘服务器的微服务请求分发策略集合。
接下来,执行MRDG算法,实现面向边缘计算环境的去中心化模式的最优化微服务请求分发决策方案,其具体执行步骤如下:
步骤1:n个边缘服务器作为博弈参与者采用同步轮转的方式,不断更新自己的策略,经过多个轮次的迭代最终实现纳什均衡状态,即没有任何一个边缘服务器可以在该状态通过更新自己的微服务请求分发策略来进一步的提高自己的效益。本发明为了进一步的降低微服务请求的响应时间,在每个边缘服务器更新自己策略并计算效益Tj的过程中特意考虑了邻近边缘服务器服务重叠区域内对微服务ms1请求的分发优化,其优化的步骤如下:
步骤1.1:构成服务重叠区域的边缘服务器集合OE={e1,…,ek,…,el},
Figure BDA0003024169790000092
其中0表示云服务器e0,t表示重叠区域O内用户上传速率最大的边缘服务器et,设定重叠区域内微服务ms1的请求会优先分发给et处理。设定重叠区域O内的应用请求数量为Onum,边缘服务器et的应用请求到达速率为λt,边缘服务器et对微服务ms1的请求分发策略为
Figure BDA00030241697900000912
步骤1.2:初始化重叠区域内微服务ms1请求分发的优化策略
Figure BDA0003024169790000094
根据公式
Figure BDA0003024169790000095
计算用户直接将微服务ms1的请求分发给边缘服务器ek可以节省的时间,构成集合H={hu,1,hu,2,…,hu,k,…,hu,l},其中u表示某一用户,
Figure BDA0003024169790000096
表示微服务ms1的请求参数大小,
Figure BDA0003024169790000097
表示用户到边缘服务器et的上传速率,
Figure BDA0003024169790000098
表示边缘服务器et和边缘服务器ek之间的数据传输速率,
Figure BDA0003024169790000099
表示用户到边缘服务器ek的上传速率。
步骤1.3:对H降序排序。
步骤1.4:按照优先将微服务ms1的请求发送给最节省时间开销的边缘服务器的原则来分发重叠区域的请求,直至Onum分发完或没有可以再优化分发的边缘服务器为止。
步骤1.5:最后,若Onum还有剩余,直接按照原请求分发路径进行分发并返回优化策略向量
Figure BDA00030241697900000910
按照
Figure BDA00030241697900000911
对微服务ms1进行请求分发从而进一步的降低时延Tj
步骤2:根据最终得到的纳什均衡解,制定每个边缘服务器ej的微服务请求分发决策Sj即:
Figure BDA0003024169790000101
步骤3:MRDG算法会定期重启或在系统参数发生变化时重新执行,一旦到达纳什均衡状态,所有的边缘服务器将保持自己的策略不变,这种均衡会一直保持,直到算法再次执行。
综上,从工程实践的角度来看,每个边缘服务器都有一个与之关联的调度代理(进程),由该代理为收到的应用请求做出分配决策,并与系统中其它边缘服务器的调度代理通信。MRDG算法就是由这组调度代理定期执行完成的。
为了验证本发明所提MRDG算法的有效性、收敛性和重叠区域内应用请求分发优化的必要性,本发明进行了一系列的实验来加以验证。如图5所示,这是MRDG算法有效性评估。可以看出,MRDG算法优于GA(遗传算法)和PRDA(按比例分配算法)并且非常接近Optimal(全局最优算法),这表明本发明所提算法的有效性。图6和图7是MRDG算法的收敛性评估。可以看到,每个边缘服务器的平均响应时间在最开始迭代阶段变化比较明显,但随着迭代次数的增加,所有边缘服务器的变化放缓,并最终达到一个稳定状态,在该状态所有边缘服务器都获得了一个相互满意的请求分发策略,已经没有进一步优化的必要了,表明MRDG算法可以收敛于一种稳定状态,即纳什均衡状态。图8是MRDG算法对于服务重叠区域内请求分发优化的必要性评估。可以看到,随着重叠区域请求占比的增加,考虑服务重叠区域请求分发优化的MRDG算法的平均响应时间在不断的下降,而不考虑服务重叠区域内请求分发优化算法的平均响应时间没有发生变化,因此,重叠区域占比越大,考虑重叠区域内请求分发优化的必要性就越明显。
总之,本发明研亢去中心模式来解决该问题。在去中心模式中,取消了中心节点的控制,而是由边缘服务器之间互相通讯、协商,以此获取系统中的边缘服务器状态和微服务请求信息,从而制定自身所持有应用请求的分发策略。因此,去中心模式可以克服集中式优化模型中的实时信息获取难以及中心控制节点单点故障等问题,具有灵活、易扩展、可靠性高等优点。采用基于博弈理论(Game Theory)的方法来解决上述提出的问题。

Claims (2)

1.一种面向边缘计算环境的基于博弈理论的微服务请求分发方法,包括以下步骤:
步骤1:将边缘服务器ej从自身利益最大化即时延最小化的角度进行的微服务请求分发决策问题转换为如下的优化问题:
Figure FDA0003024169780000011
约束条件为:
Figure FDA0003024169780000012
Figure FDA0003024169780000013
Figure FDA0003024169780000014
Figure FDA0003024169780000015
λ′i≤Ωi·μi,1≤i≤m (6)
其中Tj表示边缘服务器ej将基于微服务架构的应用请求分发完毕后产生的平均响应时间;服务器集合表示为E∪{e0},E表示边缘服务器集合,边缘服务器个数为n,e0表示云服务器;定义基于微服务架构的应用请求是由m个微服务组成的调用链SC完成,即SC={ms1,ms2,…,msm};Φj=(j,Φ12,…,Φi,…,Φm,j)表示边缘服务器ej上应用请求的生命周期,即各个微服务调用的顺序,Φi表示调用微服务msi时选择的边缘服务器;A=(1,1,…,1),它表示阶为1×(n+1)的矩阵;O1表示阶为(n+1)×1的零矩阵;O2表示阶为(n+1)的零方阵;λ′i=(λ′i,0,λ′i,1,…,λ′i,j,…,λ′i,n)T表示微服务msi在不同服务器上的请求到达速率集合,其中λ′i,0表示微服务msi在云服务器e0上的请求到达速率,λ′i,j表示微服务msi在边缘服务器ej上的请求到达速率;μi=(μi,0i,1,…,μi,j,…,μi,n)T表示微服务msi在不同服务器上的请求处理速率集合,其中μi,0表示微服务msi在云服务器e0上的请求处理速率,μi,j表示微服务msi在边缘服务器ej上的请求处理速率;Ωi表示微服务msi的实例在服务器上的部署情况即:
Figure FDA0003024169780000016
其中Ωi,0表示微服务msi的实例在云服务器e0上的部署数量,Ωi,j表示微服务msi的实例在边缘服务器ej上的部署数量;
Figure FDA0003024169780000021
表示微服务请求路径为Φj的概率,定义
Figure FDA0003024169780000022
表示云服务器或边缘服务器ej分发关于微服务msi的请求到云服务器或边缘服务器ek的概率,则
Figure FDA0003024169780000023
表示为:
Figure FDA0003024169780000024
其中∏表示累乘,由于应用请求的响应结果总是会回传到源边缘服务器上然后返回给用户,所以
Figure FDA0003024169780000025
不会影响
Figure FDA0003024169780000026
值的大小,即:
Figure FDA0003024169780000027
Figure FDA0003024169780000028
表示边缘服务器ej对微服务ms1的请求分发策略,用
Figure FDA0003024169780000029
表示对微服务msi+1,1≤i≤m-1,的请求分发策略,即:
Figure FDA00030241697800000210
TΦ表示经过Φj路径所需要的延时时间;
步骤2:将边缘协作空间内n个边缘服务器之间微服务请求分发决策问题抽象为一个非合作博弈模型:
Figure FDA00030241697800000211
其中E表示博弈参与者即边缘服务器集合;
Figure FDA00030241697800000212
表示边缘服务器ej的策略集合;Tj(Sj,S-j)表示博弈参与者即边缘服务器ej的效益函数,即用来计算边缘服务器ej服务范围内收到的应用请求的平均响应时间的函数,其中Sj表示边缘服务器ej的微服务请求分发策略,S-j表示除边缘服务器ej外,剩余边缘服务器的微服务请求分发策略集合;
步骤3:n个边缘服务器作为博弈参与者采用同步轮转的方式,不断更新自己的策略,经过多个轮次的迭代最终实现纳什均衡状态,即没有任何一个边缘服务器可以在该状态通过更新自己的微服务请求分发策略来进一步的提高自己的效益;
步骤4:根据最终得到的纳什均衡解,制定每个边缘服务器ej的微服务请求分发决策Sj即:
Figure FDA0003024169780000031
2.根据权利要求1所述的微服务请求分发方法,其特征在于,在每个边缘服务器更新自己策略并计算效益Tj的过程中考虑邻近边缘服务器服务重叠区域内对微服务ms1请求的分发优化,此优化的步骤如下:
步骤3.1:构成服务重叠区域的边缘服务器集合
Figure FDA0003024169780000032
t表示重叠区域O内用户上传速率最大的边缘服务器et,设定重叠区域内微服务ms1的请求会优先分发给et处理,设定重叠区域O内的应用请求数量为Onum,边缘服务器et的应用请求到达速率为λt,边缘服务器et对微服务ms1的请求分发策略为
Figure FDA0003024169780000033
步骤3.2:初始化重叠区域内微服务ms1请求分发的优化策略
Figure FDA0003024169780000034
根据公式
Figure FDA0003024169780000035
计算用户直接将微服务ms1的请求分发给边缘服务器ek可以节省的时间,构成集合H={hu,1,hu,2,…,hu,k,…,hu,l},其中u表示某一用户,
Figure FDA0003024169780000036
表示微服务ms1的请求参数大小,
Figure FDA0003024169780000037
表示用户到边缘服务器et的上传速率,
Figure FDA0003024169780000038
表示边缘服务器et和边缘服务器ek之间的数据传输速率,
Figure FDA0003024169780000039
表示用户到边缘服务器ek的上传速率;
步骤3.3:对H降序排序;
步骤3.4:按照优先将微服务ms1的请求发送给最节省时间开销的边缘服务器的原则来分发重叠区域的请求,直至Onum分发完或没有可以再优化分发的边缘服务器为止;
步骤3.5:最后,若Onum还有剩余,直接按照原请求分发路径进行分发并返回优化策略向量
Figure FDA00030241697800000310
按照
Figure FDA00030241697800000311
对微服务ms1进行请求分发从而进一步的降低时延Tj
CN202110411844.5A 2021-04-16 2021-04-16 面向边缘计算环境的基于博弈理论的微服务请求分发方法 Active CN113225385B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110411844.5A CN113225385B (zh) 2021-04-16 2021-04-16 面向边缘计算环境的基于博弈理论的微服务请求分发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110411844.5A CN113225385B (zh) 2021-04-16 2021-04-16 面向边缘计算环境的基于博弈理论的微服务请求分发方法

Publications (2)

Publication Number Publication Date
CN113225385A CN113225385A (zh) 2021-08-06
CN113225385B true CN113225385B (zh) 2022-05-06

Family

ID=77087862

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110411844.5A Active CN113225385B (zh) 2021-04-16 2021-04-16 面向边缘计算环境的基于博弈理论的微服务请求分发方法

Country Status (1)

Country Link
CN (1) CN113225385B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117041330B (zh) * 2023-10-10 2023-12-15 三峡高科信息技术有限责任公司 一种基于强化学习的边缘微服务细粒度部署方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495565A (zh) * 2018-11-14 2019-03-19 中国科学院上海微系统与信息技术研究所 基于分布式泛在计算的高并发服务请求处理方法和设备
CN111163178A (zh) * 2020-01-10 2020-05-15 中国地质大学(武汉) 一种边缘计算中基于博弈论的服务部署及任务卸载方法
CN112132202A (zh) * 2020-09-18 2020-12-25 嘉兴学院 一种基于综合信任评价的边缘计算协同盟员发现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495565A (zh) * 2018-11-14 2019-03-19 中国科学院上海微系统与信息技术研究所 基于分布式泛在计算的高并发服务请求处理方法和设备
CN111163178A (zh) * 2020-01-10 2020-05-15 中国地质大学(武汉) 一种边缘计算中基于博弈论的服务部署及任务卸载方法
CN112132202A (zh) * 2020-09-18 2020-12-25 嘉兴学院 一种基于综合信任评价的边缘计算协同盟员发现方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Power Optimization in Self-Organizing MEC Based Hetergeneous Small Cell Networks;Tan, Haifeng Feng, Zhiyong;《IEEE ACCESS》;20181015;全文 *
微服务技术发展的现状与展望;冯志勇等;《计算机研究与发展》;20200515;全文 *
车联网中基于边缘计算的感知决策技术;宋贤鑫等;《中国智能交通协会》;20191101;全文 *

Also Published As

Publication number Publication date
CN113225385A (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
CN111756812B (zh) 一种能耗感知的边云协同动态卸载调度方法
He et al. Blockchain-based edge computing resource allocation in IoT: A deep reinforcement learning approach
CN103810023B (zh) 一种云平台中分布式应用的智能部署方法及系统
Skarlat et al. Resource provisioning for IoT services in the fog
JP6864330B2 (ja) ブロックチェーンに基づく部屋在庫管理システム
Van Mieghem Price and service discrimination in queuing systems: Incentive compatibility of Gc μ scheduling
CN108509276A (zh) 一种边缘计算环境中的视频任务动态迁移方法
JP2015537307A (ja) コンポーネント指向ハイブリッドクラウドオペレーティングシステムのアーキテクチャ及びその通信方法
CN109358971B (zh) 动态网络环境中快速且负载均衡的服务功能链部署方法
CN106330987A (zh) 动态负荷均衡方法
Wang et al. BC-mobile device cloud: A blockchain-based decentralized truthful framework for mobile device cloud
Amalarethinam et al. An Overview of the scheduling policies and algorithms in Grid Computing
CN108616394A (zh) 一种虚拟网络功能备份和部署方法
CN100492282C (zh) 处理系统、通信系统及在处理系统中处理作业的方法
CN113225385B (zh) 面向边缘计算环境的基于博弈理论的微服务请求分发方法
CN113364831B (zh) 基于区块链的多域异构算网资源可信协同方法
Song et al. Load balancing for future internet: an approach based on game theory
CN110113406A (zh) 基于分布式的计算服务集群框架
Addya et al. CoMCLOUD: Virtual machine coalition for multi-tier applications over multi-cloud environments
Tran-Dang et al. Disco: Distributed computation offloading framework for fog computing networks
Tseng et al. An mec-based vnf placement and scheduling scheme for ar application topology
CN113190342A (zh) 用于云-边协同网络的多应用细粒度卸载的方法与系统架构
Nisha et al. A bilevel programming framework for joint edge resource management and pricing
Cheng et al. A novel task provisioning approach fusing reinforcement learning for big data
CN113377503A (zh) 一种协作式ai的任务调度方法、装置与系统

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