CN114048018B - 基于区块链的云原生任务分配系统、方法和装置 - Google Patents

基于区块链的云原生任务分配系统、方法和装置 Download PDF

Info

Publication number
CN114048018B
CN114048018B CN202210040260.6A CN202210040260A CN114048018B CN 114048018 B CN114048018 B CN 114048018B CN 202210040260 A CN202210040260 A CN 202210040260A CN 114048018 B CN114048018 B CN 114048018B
Authority
CN
China
Prior art keywords
task
service
equipment
initial
devices
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
CN202210040260.6A
Other languages
English (en)
Other versions
CN114048018A (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.)
Shenzhen Smart City Technology Development Group Co ltd
Surfilter Network Technology Co ltd
Zhaoshang Xinzhi Technology Co ltd
Peking University Shenzhen Graduate School
Kingdee Software China Co Ltd
Original Assignee
Shenzhen Smart City Technology Development Group Co ltd
Surfilter Network Technology Co ltd
Zhaoshang Xinzhi Technology Co ltd
Peking University Shenzhen Graduate School
Kingdee Software China 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 Shenzhen Smart City Technology Development Group Co ltd, Surfilter Network Technology Co ltd, Zhaoshang Xinzhi Technology Co ltd, Peking University Shenzhen Graduate School, Kingdee Software China Co Ltd filed Critical Shenzhen Smart City Technology Development Group Co ltd
Priority to CN202210040260.6A priority Critical patent/CN114048018B/zh
Publication of CN114048018A publication Critical patent/CN114048018A/zh
Application granted granted Critical
Publication of CN114048018B publication Critical patent/CN114048018B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于区块链的云原生任务分配系统、方法和装置,获取预设时间段内的任务集合,获取初始设备集合,初始设备集合中包含至少一个服务设备;从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行迭代处理,得到目标分配方案:基于多方服务提供商的多个服务设施的非完全信息,根据设备集合中的所有设备的综合资源利用率、服务提供商的收益及所有设备的部署成本,确定设备集合,在设备集合中进行任务分配,综合考虑用户和服务提供商的多项优化目标,将任务分配问题抽象为一个非完全信息博弈问题,既保护各方隐私权益信息,也基于联盟去中心化方式完成用户任务高效分配,并最大程度地提升各服务提供方的效用,实现整体效用最大化。

Description

基于区块链的云原生任务分配系统、方法和装置
技术领域
本申请涉及云计算技术领域,具体涉及基于区块链的云原生任务分配系统、方法和装置。
背景技术
随着网络基础设施例如5G的商用落地、计算类型与云计算提供主体的日趋多样化,集中式云计算存在着单个站点的计算能力受限、传输时延过长、边缘计算能力浪费等技术瓶颈,已不能很好的满足计算服务的要求,需要多站点协作提供云计算服务。
云计算与边缘计算的方案中对于用户任务如何分配给服务提供商的设施提供相应的服务,大多采用启发式的算法求解,即通常默认用户任务分配问题的求解方拥有全局信息和全局部署能力,即中心化进行任务分配。
然而,算力服务网络是一个多方参与、复杂合作的场景,多个服务提供商在服务提供中存在着复杂的竞争、合作与相互交互,在进行决策的时候可能无法获知到所需的全部信息,也难以对于任务卸载调度的合作轻易达成一致,从而使得任务分配不能高效合理的进行。
发明内容
本申请主要解决的技术问题是在云计算场景中的任务分配无法高效合理的进行。
根据第一方面,一种实施例中提供一种基于区块链的云原生任务分配系统,其特征在于,所述系统包括:
用户的区块链代理节点,用于向区块链中发布用户任务;
区块链,用于向服务设施节点发送接收到的用户任务;
服务设施节点,用于获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;获取初始设备集合,所述初始设备集合中包含至少一个服务设备;从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:基于智能合约,确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;基于智能合约,确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的;在用户任务完成之后,向区块链提交用户任务完成交易。
根据第二方面,一种实施例中提供一种基于区块链的云原生任务分配方法,所述方法包括:
获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;
获取初始设备集合,所述初始设备集合中包含至少一个服务设备;
从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:
基于智能合约,确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;
基于智能合约,确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;
在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的。
可选的,根据如下公式得到所述设备集合的效用值:
Figure 468167DEST_PATH_IMAGE001
其中,U(C)是设备集合的效用值,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T,S,F)根据设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
可选的,根据如下公式得到所述设备集合中的所有设备对应的服务提供商的收益:
Figure 650886DEST_PATH_IMAGE002
其中,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
可选的,根据如下公式得到所述设备的资源利用率:
Figure 758519DEST_PATH_IMAGE003
其中,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Re i 是第i个用户任务耗费的资源,RT是能提供的资源,其中,T表示任务集合,F表示设备集合。
可选的,所述确定所述任务集合在所述初始设备集合的第一分配方案,包括:
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述初始设备集合中分配,得到第一分配方案;
所述确定所述任务集合在合并设备集合的第二分配方案,包括:
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述合并设备集合中分配,得到第二分配方案。
可选的,所述根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述初始设备集合中分配,得到第一分配方案,包括:
按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成多个任务队列,其中,每个任务队列中的用户任务按照预算价值从高到低排列;
对于每个队列,从队列中第一个用户任务开始,到最后一个用户任务结束,在所述初始设备集合中能够为所述用户任务提供服务的服务设备中,确定完成所述用户任务的传输时间最小的服务设备;将所述用户任务分配给所述完成所述用户任务的传输时间最小的服务设备。
可选的,所述确定将所述用户任务分配给完成所述用户任务的传输时间最小的服务设备,包括:
基于贝叶斯合作联盟博弈,确定所有服务设备的信念,其中,服务设备的信念用于指示所述服务设备的类型,所述服务设备的类型用于预测所述服务设备的可用资源;
根据所有服务设备的信念,确定将所述用户任务分配给能够为所述用户任务提供服务,且完成所述用户任务的传输时间最小的服务设备。
根据第三方面,一种实施例中提供一种基于区块链的云原生任务分配装置,包括:
获取模块,用于获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;获取初始设备集合,所述初始设备集合中包含至少一个服务设备;
处理模块,用于从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的。
根据第四方面,一种实施例中提供一种计算机可读存储介质,所述介质上存储有程序,所述程序能够被处理器执行以实现如上述第二方面任一项所述的方法。
依据上述实施例的基于区块链的云原生任务分配系统、方法和装置,系统基于区块链构建,区块链作为一种面向点对点去中心化功能而提出的工具,区块链以其账本多方同步状态、安全共识确认、智能合约可编程的自动化交互的特征,被认为是泛中心场景下的信任构建、可信交互的有效工具。在有用户任务需要分配时,基于多方服务提供商的多个服务设施的非完全信息,根据设备集合中的设备的资源利用率、部署成本和设备集合中的设备对应的服务提供商的收益,确定设备集合,在设备集合中进行任务分配,组成设备集合和在设备集合中进行任务分配是一个不断迭代的处理过程,针对云原生多供应方、复杂合作,多类型资源容器管理,同时综合考虑用户和服务提供商的多项优化目标,将任务分配问题抽象为一个非完全信息博弈问题,当达到纳什平衡以后,得到了任务分配结果,从而实现了在分布式、动态、云计算供应方之间存在信息不完全的场景中,且不引入第三方带来的单点故障和信任问题,既保护各方隐私权益信息,也基于联盟去中心化方式完成用户任务高效分配,并最大程度地提升参与各方的效用,做到了相对公平的分配。
附图说明
图1为本申请实施例提供的一种基于区块链的云原生任务分配系统架构示意图;
图2为本申请实施例提供的一种基于区块链的云原生任务分配方法的流程示意图;
图3为本申请实施例提供的一种基于区块链的云原生任务分配装置的结构示意图。
具体实施方式
下面通过具体实施方式结合附图对本申请作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
下面介绍本申请中用到的术语定义。
云原生(CloudNative)架构是指在云计算时代一种构建和运行应用程序的方法,充分利用和发挥云平台的弹性自动化优势,以往企业面对的是传统和静态的集中式架构,现在开始面对云原生、动态化的网络分布式架构:从以往云端、单一集中数据中心中的部署,开始转向多云、混合云、边缘云部署。
算力服务网络是一种网络架构,将算力资源与网络进行结合,整合网络中无处不在、动态分布的计算、网络、存储等算力资源,并将其进行统一的之后能化的调度。具体的,算力服务网络指路由器、交换机和网关之类的设备得到了扩展,可以执行诸如数据处理等网络功能,网络内计算、存储等资源称为“泛在的”,网络会根据业务的需求,整合网内资源与服务,在云、边、端按需灵活分配和调度的网络架构。
区块链被认为是在跨域/开放网络中更好地构建信任、促进网络中众多“自私”的节点分享、交换与协作的有效方案:首先,区块链是为分布式架构而构建的,其机制中不含有中心权威节点,而跨域开放网络也存在大量归属于多域的分散节点;其次,区块链共识机制及加密货币可以成为一种促进各节点相互协作的有效激励手段,如进行存储交易、信息共享等等。而区块链的智能合约有助于构建信息相互分享交易的市场。更重要的是,依托区块链技术建立起的信息共享交换市场是安全可靠的,发生的交易经由全网/或者主要权威节点的验证与确认。
在本申请实施例中,基于区块链,在有任务需要分配时,基于多方服务提供商的多个服务设施的非完全信息,根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本,确定设备集合,即组成了由服务提供商的服务设备组成的合作联盟,在设备集合中进行任务分配,组成设备集合和在设备集合中进行任务分配是一个不断迭代的处理过程,从而将任务分配问题抽象为一个非完全信息博弈问题的求解过程,当达到纳什平衡以后,得到了任务分配结果,从而实现了在云计算供应方之间存在信息不完全的情况,且不引入第三方带来的单点故障和信任问题,既保护各方隐私权益信息,也基于联盟去中心化方式完成用户任务高效分配,做到了相对公平的任务分配。
下面以具体的实施例进行详细的说明。
实施例一:
本申请提供的方法应用于基于区块链的云原生任务分配系统中,下面以图1所示的系统进行详细说明。
请参考图1,图1为本申请实施例提供的一种基于区块链的云原生任务分配系统架构示意图。基于区块链的云原生任务分配系统也可以称为算力服务网络交易系统,该系统包括:一个或多个用户的区块链代理节点(图1中示例性示出了一个用户的区块链代理节点1)、区块链2、多个服务设施节点(图1中示例性示出了两个服务设施节点服务设施节点3和服务设施节点4)。其中,一个或多个用户的区块链代理节点和多个服务设施节点组成了区块链。区块链中包含智能合约。
用户的区块链代理节点1,用于向区块链中发布用户任务。
区块链2,用于向服务设施节点发送接收到的用户任务。
服务设施节点3和服务设施节点4,用于获取预设时间段内的任务集合,任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,容器运行在服务设备上;获取初始设备集合,初始设备集合中包含至少一个服务设备;从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:基于智能合约,确定任务集合在初始设备集合的第一分配方案;确定初始设备集合的效用值;基于智能合约,确定任务集合在合并设备集合的第二分配方案;确定合并设备集合的效用值,合并设备集合包括初始设备集合和待合并设备集合;在合并设备集合的效用值大于初始设备集合的效用值的情况下,更新初始设备集合为合并设备集合,返回执行确定任务集合在初始设备集合的第一分配方案和初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的;在用户任务完成之后,向区块链提交用户任务完成交易。
在实际应用中,用户是具有计算、存储、网络通信等需求的算力服务请求方,希望通过算力服务网络交易系统获得特定的服务,可以为企业、学校或者机构等个人或组织。用户是通过同样在区域中分散布置的区块链代理节点接入区块链的。区块链代理节点主要用于将用户需要的相应算力服务以用户任务的形式在区块链中发布。用户设备及用户的区块链代理节点共同组成了用户域。用户通过在区域中分散布置的区块链代理节点接入区块链,用户可以分为多个区域,区域之间身份不直接认证。
服务提供商可以部署一个或多个服务设施节点(本文中可以称为服务设备)以提供算力服务,服务设备中运行了一个或多个容器,这些服务设施节点共同组成了一个或者多个服务提供商的域。服务提供商可以有多个,从而不同服务提供商之间的服务设备的信息并不是完全公开的。
其中,在每个服务提供商域中,可以有一个或多个权限较高的节点,其对附近的服务设施节点拥有管理权限,这种节点也是区块链的部署节点(例如,图1中的服务设施节点3和服务设施节点4,其分别与同一个服务提供商的服务设施相连),其余的服务设施节点可以部署在区块链上,也可以本身不直接部署在区块链上,利用已经部署的服务设施节点使用区块链功能。
区块链可以包括:上述用户的区块链代理节点和服务提供商部署在区块链的服务设施节点。各服务设施节点身份上具有一定的可信度与可验证性,每次用户任务完成之后,都会把相关的交易上链。
可选的,由于不同服务提供商之间的商业秘密是隐瞒的,即不同服务提供商之间的服务设施之间并不能完全了解对方的情况,因此,该区块链可以为联盟链,而不设计为完全开放环境下的公有链,从而提高区块链的效率。
智能合约用于身份跨域验证,交易匹配后,关联分配与收益结算上报到区块链上,作为凭证,并由结算模块维护、更新计算各个服务提供商的收益增减情况,为下一轮次的统筹再分配提供决策依据。
其中,运行的智能合约可以有多种,例如,任务分配智能合约、身份验证智能合约和收易结算智能合约等。
上述任务分配智能合约将用户任务分配给服务设施,分配结束后将该分配结果列表返回。
上述身份验证智能合约是赋予随机M个经过区块链初始化交易的节点验证权,并且接收其验证结果,其中,M为大于1的整数。如多数节点验证结果为真,则身份验证通过。收易结算智能合约负责自动将提供服务得到的权益分配给参与服务的服务设施的服务提供商(本文中也称为供应方)。由于此信息是显示在区块链上的,因此,虽然买方和供应方具体服务过程是链下完成的,但是双方不必担心服务交易没有完成服务任务就提出结算申请,因为资金的流向均可验证、追溯和追回。
在实际应用中,当用户需要服务的时候,用户可以通过用户的区块链代理节点声明其服务需求,本文中将用户的服务需求称为用户任务,用户任务可以包括:最晚完成时间、所需资源要求和预算价值。
其中,最晚完成时间为该用户任务需求的最晚的完成时间,即该用户任务需要在最晚完成时间之前完成。
其中,所需资源要求可以包括但不限于:对存储、网络等资源的需求。
其中,预算价值用于指示当前用户任务用户支付的最高金额。
在用户的区块链代理节点发布了用户任务以后,该用户任务被区块链确认后,会被相关的一个或者多个服务设施节点加入到自身的任务列表中,该任务对其他运营商的服务设施是可见的,但是在确定设备集合之前,其他服务设施没有为其服务的权限。
对用户任务在服务设施节点中进行分配,该分配方式可以为区块链的智能合约所规定的,可以为当前加入区块链的任一服务设备来进行用户任务分配,在任务分配的过程中,每个服务设施节点不断更新设备集合的服务设备,通过任务分配智能合约获取当前设备集合下的任务分配结果,并且相关交互的过程中通过身份验证智能合约完成身份验证,当合作联盟达到纳什均衡的稳定之后,任务分配也随之完成,得到任务分配的结果,即完成了将用户任务分配给与其匹配的服务设备,从而由该服务设备中运行的容器执行该用户任务。
得到的分配方案将会在区块链上显示为一个连接之前历史交易的交易,并由服务的需求方和服务的提供方进行签名。
在任务执行并完成的过程中,在链下服务设备完成相应分配的用户任务,在链下的交易计算服务完成之后,服务设施节点向区块链发送服务完成的信息,可以由收易结算智能合约检验是否存在该相关的任务,并且已经完成交易,以及进行最终收益的转账。
下面以具体的实施例进行详细介绍服务设施节点基于智能合约进行任务分配的方法。
实施例二
请参见图2,图2为本申请实施例提供的一种基于区块链的云原生任务分配方法的流程示意图,本实施例提供的方法由服务设备执行,该服务设备可以是上述图1所示系统中的区块链中的服务设施节点,方法包括:
S201:获取预设时间段内的任务集合。
其中,任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,容器运行在服务设备上。
其中,容器的类型本申请不做限定,容器的类型可以包括多种。不同类型的容器能提供的存储、带宽和算力不同。
其中,预设时间段可以为预先设置的,可以根据实际需要进行设置。
其中,用户任务为无法再进行分割的服务请求,即该服务请求由一个服务设施提供服务。若服务请求需要多个服务设施共同提供服务,即该服务请求可以再分解,则可以先对服务请求进行分解,得到用户任务。
S202:获取初始设备集合,初始设备集合中包含至少一个服务设备。
其中,初始设备集合可以为随机获取的包含一个或多个服务设备的集合,
S203:从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行迭代处理,得到目标分配方案。
其中,待合并设备集合与初始设备集合没有交集。待合并设备集合为随机获取的,待合并设备集合中包含一个或多个设备集合。
S203的迭代处理包括如下S2031-S2034:
S2031:基于智能合约,确定任务集合在初始设备集合的第一分配方案;确定初始设备集合的效用值。
将用户任务在初始设备集合中进行分配,可以得到第一分配方案。其中,第一分配方案用于指示任务集合中每个用户任务分配给的初始设备集合中的服务设备的方案。
根据第一分配方案,可以得到初始设备集合的效用值。其中,初始设备集合的效用值用于指示按照第一分配方案将任务集合分配给初始设备集合以后,初始设备集合中所有的服务设备的综合效益。效用值考虑了所有的服务设备的情况,从而综合考虑不同服务提供商的服务设备的效用。
S2032:基于智能合约,确定任务集合在合并设备集合的第二分配方案;确定合并设备集合的效用值。
其中,合并设备集合包括初始设备集合和待合并设备集合。
将初始设备集合中的服务设备与待合并设备集合中的服务设备进行合并,从而得到合并设备集合。将任务集合在合并设备集合中进行分配,得到第二分配方案。其中,第二分配方案用于指示任务集合中每个用户任务分配给的合并设备集合中的服务设备的方案。
其中,设备集合的效用值为根据设备集合中的设备的资源利用率、部署成本和设备集合中的设备对应的服务提供商的收益得到的。即设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的。
可以理解,初始设备集合的效用值为根据初始设备集合中的所有设备的资源利用率、初始设备集合中的所有设备对应的服务提供商的收益及初始设备集合中的所有设备的部署成本得到的。
可以理解,合并设备集合的效用值为根据合并设备集合中的所有设备的资源利用率、合并设备集合中的所有设备对应的服务提供商的收益及合并设备集合中的所有设备的部署成本得到的。
S2033:判断合并设备集合的效用值是否大于初始设备集合的效用值。
若是,则继续执行S2034。若否,则继续执行S2035。
S2034:更新初始设备集合为合并设备集合,返回执行S2031,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案。
S2035:更新待合并设备集合为下一个待会合并设备集合,返回执行S2031,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案。
在合作联盟的建立和任务分配的过程中,目标是使得服务质量和服务设施的资源利用率尽可能高,同时尽量考虑服务设施之间的合作,使得一个任务不考虑仅在同一个服务提供商的服务设备之间进行分配。
本实施例提供的方法所应用的系统,基于区块链构建,区块链作为一种面向点对点去中心化功能而提出的工具,区块链以其账本多方同步状态、安全共识确认、智能合约可编程的自动化交互的特征,被认为是泛中心场景下的信任构建、可信交互的有效工具。在有用户任务需要分配时,基于多方服务提供商的多个服务设施的非完全信息,根据设备集合中的设备的资源利用率、设备集合中的设备对应的服务提供商的收益及设备集合中的设备的部署成本,确定设备集合,在设备集合中进行任务分配,组成设备集合和在设备集合中进行任务分配是一个不断迭代的处理过程,针对云原生多供应方、复杂合作,多类型资源容器管理,同时综合考虑用户和服务提供商的多项优化目标,将任务分配问题抽象为一个非完全信息博弈问题的求解过程,当达到纳什平衡以后,得到了任务分配结果,从而实现了在分布式、动态、云计算供应方之间存在信息不完全的场景中,且不引入第三方带来的单点故障和信任问题,既保护各方隐私权益信息,也基于联盟去中心化方式完成用户任务高效分配,并最大程度地提升参与各方的效用,做到了相对公平的分配。
在图2所示实施例的基础上,进一步地,S2031和S2032中,可以根据如下公式(1)得到设备集合的效用值:
Figure 310986DEST_PATH_IMAGE004
公式(1)
其中,U(C)是设备集合的效用值,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T,S,F)根据设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
对于S2031来说,公式(1)中,U(C)是初始设备集合的效用值,UR(T,F)是任务集合分配到初始设备集合以后设备的资源利用率,Eco ser (T,S,F)是初始设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T,S,F)根据初始设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示初始设备集合,S表示初始设备集合中服务设备对应的服务提供商的集合。
对于S2032来说,公式(1)中,U(C)是合并设备集合的效用值,UR(T,F)是任务集合分配到合并设备集合以后设备的资源利用率,Eco ser (T,S,F)是合并设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T,S,F)根据合并设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示合并设备集合,S表示合并设备集合中服务设备对应的服务提供商的集合。
本实施例,为设备集合的效用值的确定提供了具体的方式。
在上述实施例的基础上,进一步地,根据如下公式(2)得到设备集合中的所有设备对应的服务提供商的收益:
Figure 656516DEST_PATH_IMAGE005
公式(2)
其中,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
对于S2031来说,公式(2)中,Eco ser (T,S,F)是初始设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示初始设备集合,S表示初始设备集合中服务设备对应的服务提供商的集合。
对于S2032来说,公式(2)中,Eco ser (T,S,F)是合并设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示合并设备集合,S表示合并设备集合中服务设备对应的服务提供商的集合。
本实施例,通过合并设备集合中的服务提供商部署服务设备的成本、服务提供商的收益和通过完成用户任务所得的报酬,得到设备集合中的所有设备对应的服务提供商的收益。
在上述实施例的基础上,进一步地,根据如下公式(3)得到设备的资源利用率:
Figure 633306DEST_PATH_IMAGE003
公式(3)
其中,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Re i 是第i个用户任务耗费的资源,RT是能提供的资源,其中,T表示任务集合,F表示设备集合。
本实施例,通过用户任务消耗的资源与设备所能提供的资源的比值,可以得到设备的资源利用率。
在上述任一实施例的基础上,进一步地,在步骤S2031和S2032的一种可能的实现方式中,根据任务集合中的用户任务的相关信息,进行用户任务分配。下面以具体的实施例进行详细说明。
S2031的一种可能的实现方式中可以通过如下步骤实现:
S2031a:根据每个用户任务中包含的最晚完成时间、所需资源要求和预算价值,将至少一个用户任务在初始设备集合中分配,得到第一分配方案。
任务分配时,充分考虑用户任务的要求,在满足用户任务的要求的情况下,对用户任务进行分配。
任务分配是一个多项式复杂程度的非确定性问题(Non-deterministicPolynomial,简称NP),因此,在有限的时间内求得其最优解是不现实的,可以通过一些启发式的方法求解最优解的近似解。
在进行任务分配的过程中,可以使用多种方式进行任务分配,下面介绍使用最小-最小算法(Min-Min)进行任务分配的方法。
可选的,S2031a可以通过如下方式实现:
按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成多个任务队列,其中,每个任务队列中的用户任务按照预算价值从高到低排列。
对于每个队列,从队列中第一个用户任务开始,到最后一个用户任务结束,在初始设备集合中能够为用户任务提供服务的服务设备中,确定完成用户任务的传输时间最小的服务设备;将用户任务分配给完成用户任务的传输时间最小的服务设备。
示例性的,预设区间范围可以为两个,从而,可以按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成两个任务队列。
其中,每个用户任务到各个服务设备之间的传输时间可以认为是已知的先验知识。
本实施例,通过最小-最小方式,按照用户任务的最晚完成时间和任务收益设定其分配的优先级队列,按照最高优先级的任务分配给最近的服务设施的原则进行分配,以尽可能保障用户任务得到满足、收益尽可能高且用户服务时间较短。
进一步地,在上述确定完成用户任务的传输时间最小的服务设备时,可以基于贝叶斯合作联盟博弈,确定所有服务设备的信念,其中,服务设备的信念用于指示服务设备的类型,服务设备的类型用于预测服务设备的可用资源。
根据所有服务设备的信念,确定将用户任务分配给能够为用户任务提供服务,且完成用户任务的传输时间最小的服务设备。
S2032的一种可能的实现方式中可以通过如下步骤实现:
S2032a:根据每个用户任务中包含的最晚完成时间、所需资源要求和预算价值,将至少一个用户任务在合并设备集合中分配,得到第二分配方案。
可选的,S2032a可以通过如下方式实现:
按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成多个任务队列,其中,每个任务队列中的用户任务按照预算价值从高到低排列。例如,可以将用户任务分成两个队列。
对于每个队列,从队列中第一个用户任务开始,到最后一个用户任务结束,在合并设备集合中能够为用户任务提供服务的服务设备中,确定完成用户任务的传输时间最小的服务设备;将用户任务分配给完成用户任务的传输时间最小的服务设备。
在进行任务分配的过程中,可以使用多种方式进行任务分配,下面介绍使用最小-最小算法(Min-Min)进行任务分配的方法。
进一步地,在上述确定完成用户任务的传输时间最小的服务设备时,可以基于贝叶斯合作联盟博弈,确定所有服务设备的信念,其中,服务设备的信念用于指示服务设备的类型,服务设备的类型用于预测服务设备的可用资源。
根据所有服务设备的信念,确定将用户任务分配给能够为用户任务提供服务,且完成用户任务的传输时间最小的服务设备。
其中,每个用户任务到各个服务设备之间的传输时间可以认为是已知的先验知识。
本实施例,通过最小-最小方式,按照用户任务的最晚完成时间和任务收益设定其分配的优先级队列,按照最高优先级的任务分配给最近的服务设施的原则进行分配,以尽可能保障用户任务得到满足、收益尽可能高且用户服务时间较短。
需要说明的是,上述步骤S203将会达到均衡稳态。
合作联盟的稳定状态可以被描述为:在当前和合作联盟划分的情况下,合作联盟内没有一个服务设施会选择离开该合作联盟,因为任何加入其他联盟或者改变合作联盟的行为都无法提高其收益。
假设所获得的合作联盟划分结果不是一个均衡下的稳定状态,即,存在一个新的联盟,使得其收益比当前情况更高,即具有更高的资源利用率和更低的服务提供商经济性,而只有新的合作联盟会使得任务的分配发生变化之后才会影响资源利用率和经济性。然而对于用户任务来说,只要联盟划分包含了满足资源需求的最近的服务设备,其不再发生变化,因此所提出的和合作联盟组建方式将收敛与一个均衡的稳定划分状态。
下面以具体的实施例进行说明上述实施例的方法的效果。
实施例三:
对于上述基于区块链的云原生任务分配系统而言,其目标是将用户任务合理的分配给各个服务设备,使得服务用户的服务质量(服务水平)和服务设备的资源利用率都尽可能高,然而,服务用户的服务质量(服务水平)和服务设备的资源利用率之间存在竞争矛盾。因此,本申请实施例提供一种形式化的表达优化目标函数的方式,优化目标函数如下公式(4):
Figure DEST_PATH_IMAGE006
公式(4)
其中,Re i 是第i个用户任务耗费的资源,n表示用户任务的数量,RT是能提供的资源,t(T i )是第i个用户任务的最晚完成时间,C sj 是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
基于贝叶斯合作联盟博弈,优化目标函数中的各个组成量进行说明如下:
其中,
Figure 228236DEST_PATH_IMAGE007
为服务设施的资源利用率(Utilization Rate,简称UR)。
其中,
Figure 584393DEST_PATH_IMAGE009
为用户任务的平均最晚完成时间。
其中,
Figure 581168DEST_PATH_IMAGE011
为当前系统的总收益。
其中,
Figure 105690DEST_PATH_IMAGE012
为效用值。
可以基于上述优化目标函数进行测评本申请实施例提出的基于区块链的云原生任务分配方法。
下面以3个不同的服务提供商共计10个服务设施为例进行说明。假设服务提供商分别为A、B和C,10个服务设施中A拥有3个服务设施,分别为A1、A2和A3,B拥有3个服务设施,分别为B1、B2和B3,C拥有4个服务设施,分别为C1、C2、C3和C4,该10个服务设施的部署可以被看成一个5*5的方格。假设当前预设时间段内存在15个待分配的用户任务,每5个用户任务分别归属于不同的服务提供商,任务随机出现在上述5*5的方格内,符合均匀分布,每个用户任务的收益符合1到10之内的随机分布。用户任务出现的位置按照距离各服务设施的远近排出1-10的顺序,例如,用户任务1到服务设施B1的距离最近,到服务设施C2的距离最远,则假设为,用户任务1到服务设施B1的用时为1,到服务设施C2的用时为10。
考虑根据本申请的进行任务分配(形成合作联盟)和不考虑合作的情况进行对比。请参见表1,表1为本申请实施例提供的一种实验结果。表1中,经济性为效用值。
表1 本申请实施例提供的一种实验结果
Figure 14347DEST_PATH_IMAGE013
相较于不考虑合作的情况,本申请实施例提供的基于区块链的云原生任务分配的方法使得全局收益提升,且有利于提升服务质量。
实施例四:
请参见图3,图3为本申请实施例提供的一种基于区块链的云原生任务分配装置的结构示意图,本实施例提供的装置包括:
获取模块301,用于获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;获取初始设备集合,所述初始设备集合中包含至少一个服务设备;
处理模块302,用于从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的所有设备的资源利用率、设备集合中的所有设备对应的服务提供商的收益及设备集合中的所有设备的部署成本得到的。
可选的,处理模块302具体用于:
根据如下公式得到所述设备集合的效用值:
Figure 610413DEST_PATH_IMAGE014
其中,U(C)是设备集合的效用值,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T,S,F)根据设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
可选的,处理模块302具体用于:
根据如下公式得到所述设备集合中的所有设备对应的服务提供商的收益:
Figure DEST_PATH_IMAGE015
其中,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
可选的,处理模块302具体用于:
根据如下公式得到所述设备的资源利用率:
Figure 822214DEST_PATH_IMAGE003
其中,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Re i 是第i个用户任务耗费的资源,RT是能提供的资源,其中,T表示任务集合,F表示设备集合。
可选的,所述处理模块302具体用于:
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述初始设备集合中分配,得到第一分配方案;
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述合并设备集合中分配,得到第二分配方案。
可选的,处理模块302具体用于:
按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成多个任务队列,其中,每个任务队列中的用户任务按照预算价值从高到低排列;
对于每个队列,从队列中第一个用户任务开始,到最后一个用户任务结束,在所述初始设备集合中能够为所述用户任务提供服务的服务设备中,确定完成所述用户任务的传输时间最小的服务设备;将所述用户任务分配给所述完成所述用户任务的传输时间最小的服务设备。
可选的,处理模块302具体用于:
基于贝叶斯合作联盟博弈,确定所有服务设备的信念,其中,服务设备的信念用于指示所述服务设备的类型,所述服务设备的类型用于预测所述服务设备的可用资源;
根据所有服务设备的信念,确定将所述用户任务分配给能够为所述用户任务提供服务,且完成所述用户任务的传输时间最小的服务设备。
本实施例的实现原理和技术效果与上述实施例二类似,此处不再赘述。
实施例五:
本实施例提供一种计算机可读存储介质,所述介质上存储有程序,所述程序能够被处理器执行以实现如上述实施例二中任一项的方法。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在容器的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地容器的存储器中,或对本地容器的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
以上应用了具体个例对本申请进行阐述,只是用于帮助理解本申请,并不用以限制本申请。对于本申请所属技术领域的技术人员,依据本申请的思想,还可以做出若干简单推演、变形或替换。

Claims (10)

1.一种基于区块链的云原生任务分配系统,其特征在于,所述系统包括:
用户的区块链代理节点,用于向区块链中发布用户任务;
区块链,用于向服务设施节点发送接收到的用户任务;
服务设施节点,用于获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;获取初始设备集合,所述初始设备集合中包含至少一个服务设备;从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:
基于智能合约,确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;基于智能合约,确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的设备的资源利用率、部署成本和设备集合中的设备对应的服务提供商的收益得到的;在用户任务完成之后,向区块链提交用户任务完成交易。
2.一种基于区块链的云原生任务分配方法,其特征在于,所述方法包括:
获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;
获取初始设备集合,所述初始设备集合中包含至少一个服务设备;
从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:
基于智能合约,确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;
基于智能合约,确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;
在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的设备的资源利用率、部署成本和设备集合中的设备对应的服务提供商的收益得到的。
3.如权利要求2所述的方法,其特征在于,根据如下公式得到所述设备集合的效用值:
Figure DEST_PATH_IMAGE001
其中,U(C)是设备集合的效用值,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,其中,Eco ser (T, S,F)根据设备集合中的所有设备的部署成本得到,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
4.如权利要求2或3所述的方法,其特征在于,根据如下公式得到所述设备集合中的所有设备对应的服务提供商的收益:
Figure 597836DEST_PATH_IMAGE002
其中,Eco ser (T,S,F)是设备集合中的所有设备对应的服务提供商的收益,C s j是第S个服务提供商部署第j个设备的成本,R SP 是第S个服务提供商的收益,Rev i 是第i个用户任务的报酬,k是服务提供商的数量,其中,T表示任务集合,F表示设备集合,S表示服务提供商的集合。
5.如权利要求2或3所述的方法,其特征在于,根据如下公式得到所述设备的资源利用率:
Figure DEST_PATH_IMAGE003
其中,UR(T,F)是任务集合分配到设备集合以后设备的资源利用率,Re i 是第i个用户任务耗费的资源,RT是能提供的资源,其中,T表示任务集合,F表示设备集合。
6.如权利要求2所述的方法,其特征在于,所述确定所述任务集合在所述初始设备集合的第一分配方案,包括:
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述初始设备集合中分配,得到第一分配方案;
所述确定所述任务集合在合并设备集合的第二分配方案,包括:
根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述合并设备集合中分配,得到第二分配方案。
7.如权利要求6所述的方法,其特征在于,所述根据每个所述用户任务中包含的最晚完成时间、所需资源要求和预算价值,将所述至少一个用户任务在所述初始设备集合中分配,得到第一分配方案,包括:
按照每个用户任务的最晚完成时间所在的预设区间范围,将用户任务分成多个任务队列,其中,每个任务队列中的用户任务按照预算价值从高到低排列;
对于每个队列,从队列中第一个用户任务开始,到最后一个用户任务结束,在所述初始设备集合中能够为所述用户任务提供服务的服务设备中,确定完成所述用户任务的传输时间最小的服务设备;将所述用户任务分配给所述完成所述用户任务的传输时间最小的服务设备。
8.如权利要求7所述的方法,其特征在于,所述在所述初始设备集合中能够为所述用户任务提供服务的服务设备中,确定完成所述用户任务的传输时间最小的服务设备,包括:
基于贝叶斯合作联盟博弈,确定所有服务设备的信念,其中,服务设备的信念用于指示所述服务设备的类型,所述服务设备的类型用于预测所述服务设备的可用资源;
根据所有服务设备的信念,确定将所述用户任务分配给能够为所述用户任务提供服务,且完成所述用户任务的传输时间最小的服务设备。
9.一种基于区块链的云原生任务分配装置,其特征在于,包括:
获取模块,用于获取预设时间段内的任务集合,所述任务集合中包含至少一个用户任务,每个用户任务中包含最晚完成时间、所需资源要求和预算价值,每个用户任务由一个容器提供服务,所述容器运行在服务设备上;获取初始设备集合,所述初始设备集合中包含至少一个服务设备;
处理模块,用于从获取的第一个待合并设备集合开始,到最后一个待合并设备集合结束,进行如下迭代处理,其中待合并设备集合与初始设备集合没有交集:确定所述任务集合在所述初始设备集合的第一分配方案;确定所述初始设备集合的效用值;确定所述任务集合在合并设备集合的第二分配方案;确定所述合并设备集合的效用值,所述合并设备集合包括初始设备集合和待合并设备集合;在所述合并设备集合的效用值大于所述初始设备集合的效用值的情况下,更新初始设备集合为所述合并设备集合,返回执行所述确定所述任务集合在所述初始设备集合的第一分配方案和所述初始设备集合的效用值,直到没有合并设备集合的效用值大于初始设备集合的效用值,确定目标分配方案为第一分配方案;其中,设备集合的效用值为根据设备集合中的设备的资源利用率、部署成本和设备集合中的设备对应的服务提供商的收益得到的。
10.一种计算机可读存储介质,其特征在于,所述介质上存储有程序,所述程序能够被处理器执行以实现如权利要求2-8中任一项所述的方法。
CN202210040260.6A 2022-01-14 2022-01-14 基于区块链的云原生任务分配系统、方法和装置 Active CN114048018B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210040260.6A CN114048018B (zh) 2022-01-14 2022-01-14 基于区块链的云原生任务分配系统、方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210040260.6A CN114048018B (zh) 2022-01-14 2022-01-14 基于区块链的云原生任务分配系统、方法和装置

Publications (2)

Publication Number Publication Date
CN114048018A CN114048018A (zh) 2022-02-15
CN114048018B true CN114048018B (zh) 2022-04-15

Family

ID=80196541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210040260.6A Active CN114048018B (zh) 2022-01-14 2022-01-14 基于区块链的云原生任务分配系统、方法和装置

Country Status (1)

Country Link
CN (1) CN114048018B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110380904A (zh) * 2019-07-23 2019-10-25 腾讯科技(深圳)有限公司 带宽分配方法、装置、电子设备及存储介质
CN111860867A (zh) * 2020-07-24 2020-10-30 苏州浪潮智能科技有限公司 一种混合异构系统的模型训练方法、系统及相关装置
CN112131006A (zh) * 2020-09-27 2020-12-25 腾讯科技(深圳)有限公司 业务请求分配方法、装置、计算机设备和存储介质
CN113037876A (zh) * 2021-05-25 2021-06-25 中国人民解放军国防科技大学 基于合作博弈的云下行任务边缘节点资源分配方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150293783A1 (en) * 2014-04-09 2015-10-15 International Business Machines Corporation Scheduling identity manager reconciliation to execute at an optimal time
US10620950B2 (en) * 2016-09-07 2020-04-14 International Business Machines Corporation Message parsing in a distributed stream processing system
CN112860422B (zh) * 2019-11-28 2024-04-26 伊姆西Ip控股有限责任公司 用于作业处理的方法、设备和计算机程序产品

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110380904A (zh) * 2019-07-23 2019-10-25 腾讯科技(深圳)有限公司 带宽分配方法、装置、电子设备及存储介质
CN111860867A (zh) * 2020-07-24 2020-10-30 苏州浪潮智能科技有限公司 一种混合异构系统的模型训练方法、系统及相关装置
CN112131006A (zh) * 2020-09-27 2020-12-25 腾讯科技(深圳)有限公司 业务请求分配方法、装置、计算机设备和存储介质
CN113037876A (zh) * 2021-05-25 2021-06-25 中国人民解放军国防科技大学 基于合作博弈的云下行任务边缘节点资源分配方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Policy Gradient Method based Energy Efficience Task Scheduling in Mobile Edge Blockchain;Yin Yufeng 等;《2020 IEEE 6th International Conference on Computer and Communications (ICCC)》;20210212;第2224-2229页 *
区块链网络中边缘计算资源分配机制与优化;林邦;《中国优秀硕士学位论文全文数据库(电子期刊)信息科技辑》;20210515(第5期);第I138-624页 *

Also Published As

Publication number Publication date
CN114048018A (zh) 2022-02-15

Similar Documents

Publication Publication Date Title
KR102254809B1 (ko) 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치
KR102107115B1 (ko) 스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치
Liu et al. P2P trading in social networks: The value of staying connected
Sujana et al. Smart PSO-based secured scheduling approaches for scientific workflows in cloud computing
CN113364831B (zh) 基于区块链的多域异构算网资源可信协同方法
Rebai et al. Improving profit through cloud federation
Addya et al. CoMCLOUD: Virtual machine coalition for multi-tier applications over multi-cloud environments
Khan et al. A blockchain token-based trading model for secondary spectrum markets in future generation mobile networks
Comi et al. A qos-aware, trust-based aggregation model for grid federations
Merizig et al. A multi-agent system approach for service deployment in the cloud
Hu et al. Blockchain enabled federated slicing for 5G networks with AI accelerated optimization
Ayachi et al. Cooperative game approach to form overlapping cloud federation based on inter-cloud architecture
de Lucena Falcão et al. Enhancing fairness in P2P cloud federations
Khan et al. A distributed auctioneer for resource allocation in decentralized systems
CN114048018B (zh) 基于区块链的云原生任务分配系统、方法和装置
KR102221925B1 (ko) 블록체인에 기반한 분산형 컴퓨팅 자원 공유 시스템 상에서, 머신러닝과 병행하여 채굴을 수행하는 방법 및 그러한 채굴을 지원하는 방법
KR102193890B1 (ko) 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상에서의 워킹 그룹별 동일한 키를 사용하는 보안 통신 제공 방법
Bataineh et al. Cloud as platform for monetizing complementary data for AI-driven services: A two-sided cooperative game
Sherzer et al. Resource allocation in the cloud with unreliable resources
Hussien et al. An improved Henry gas optimization algorithm for joint mining decision and resource allocation in a MEC-enabled blockchain networks
US11348167B2 (en) Method and storage medium for private edge-station auction house
Tchernykh et al. Toward digital twins' workload allocation on clouds with low-cost microservices streaming interaction
Kumar et al. Fair resource allocation policies in reverse auction-based cloud market
Dhillon et al. Ethereum tokens: high-performance computing
de Lucena Falcao et al. Incentivising resource sharing in federated clouds

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
CB03 Change of inventor or designer information

Inventor after: Lei Kai

Inventor after: Xu Ting

Inventor after: Chen Peishu

Inventor after: Zhang Liangjie

Inventor after: Li Qi

Inventor after: Shan Jinxiao

Inventor after: Zhang Yapeng

Inventor after: Jing Xiaojun

Inventor after: Su Wenyi

Inventor after: Yu Xiquan

Inventor after: Guo Chen

Inventor before: Lei Kai

Inventor before: Xu Ting

Inventor before: Chen Peishu

Inventor before: Zhang Liangjie

Inventor before: Li Qi

Inventor before: Shan Jinxiao

Inventor before: Zhang Yapeng

Inventor before: Jing Xiaojun

Inventor before: Su Wenyi

Inventor before: Yu Xiquan

Inventor before: Guo Chen

CB03 Change of inventor or designer information