首页> 中国专利> 一种端云协同计算架构及任务调度装置及方法

一种端云协同计算架构及任务调度装置及方法

摘要

本发明公开了一种端云协同计算架构及任务调度装置及方法,本发明提出的边缘云计算平台下的端云协同计算架构和该架构下的任务调度方法,旨在解决快速发展的云应用时代,现有的边缘云平台负载大,任务提交至远端通信开销大的问题。区别于传统的云计算平台,本发明将已安全认证接入系统中且具有一定计算能力的终端也加入计算资源池中,组成终端集群,终端集群具有较强的扩展性,增加了云的扩展性,终端集群与静态云中的服务节点集群共同完成之前的单一云平台所要计算的任务,优化了传统云平台,有效减少了云端的负载。该架构兼具边缘云的实时快速的特点,又能提供物联网等大数据应用更加强大和稳定的服务。

著录项

  • 公开/公告号CN107087019A

    专利类型发明专利

  • 公开/公告日2017-08-22

    原文格式PDF

  • 申请/专利权人 西安电子科技大学;

    申请/专利号CN201710148795.4

  • 申请日2017-03-14

  • 分类号H04L29/08(20060101);G06F9/50(20060101);G06F9/48(20060101);G06F9/455(20060101);

  • 代理机构61227 西安长和专利代理有限公司;

  • 代理人黄伟洪

  • 地址 710071 陕西省西安市太白南路2号西安电子科技大学

  • 入库时间 2023-06-19 03:06:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-07-07

    授权

    授权

  • 2017-09-15

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20170314

    实质审查的生效

  • 2017-08-22

    公开

    公开

说明书

技术领域

本发明涉及计算机技术领域,尤其涉及一种端云协同计算架构及任务调度装置及方法。

背景技术

云时代使得各种服务快速发展,各种智能应用也随之而来。当众多行业向数字化迈进,存储、计算都越来越依赖于云端,云端成为构筑信息社会的枢纽。在大数据时代,如果所有数据都依靠云数据中心统一处理,不但给云增加了太多的负载,而且任务提交至远端云中心存在一定的通信开销,传统云平台将会面临很多问题,因此产生了以数据为中心的边缘云。在快速发展的云应用的时代,边缘云计算平台负载会逐渐过大,需要加入一些就近的智能终端及设备实时地进行资源的扩充,保证边缘云的稳定和高效率,保证物联网等大数据应用正常的提供服务,从而产生了边缘云计算平台下的端云协同计算架构。

云计算是以网络技术和虚拟化技术为基础,以提高计算、存储等资源使用率为目的发展出来的一种资源使用模式。任务调度直接决定了资源的有效利用,是云计算最重要和最关键的问题之一。

端云协同区别于传统的单一云计算平台,将提供一定计算能力的终端也加入资源池中,共同完成计算任务。此时由于资源的异构性,终端资源计算能力和云的差异性,大大增加了任务调度的复杂性。

目前关于云计算的任务调度算法的研究更多的是建立在网格计算的基础上,通过对传统经典算法进行改进以适应云计算平台,但是由于资源的异构性,终端资源计算能力和云的差异性,并不适合边缘云计算平台下的端云协同计算。

发明内容

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种端云协同计算架构及任务调度装置及方法,以减少传统虚拟化无用开销,提高资源的利用率和分配效率。

为实现上述目的,本发明提供了一种端云协同计算架构及任务调度装置,其特征在于,包括:

云端集群,包括边缘云下的静态云中的服务节点和虚拟机节点,边缘云下的静态云中的服务节点一般由虚拟机计算节点构成,虚拟机计算节点是云端管理服务器中动态生成的虚拟机,虚拟机节点可由云端管理服务器动态生成、管理和销毁;

端云协同中间件,一方面负责终端资源的可信安全认证接入,另一方面为端云协同计算架构提供合理的任务分配及调度策略,保证任务合理高效地在终端和云端之间协同计算;

终端集群,由各种硬件终端组成,以安全的方式接入云平台,提供一定的计算资源。

上述的一种端云协同计算架构及任务调度装置,其特征在于,所述端云协同中间件包括自动发现和扩展模块、终端资源监测及同步模块、端云任务调度模块。

上述的一种端云协同计算架构及任务调度装置,其特征在于,所述终端集群的各种硬件终端分为有线连接的PC、无线连接的PC、以Android为主要操作系统的各种终端设备。

一种端云协同计算架构及任务调度方法,其特征在于,包括以下步骤:

步骤一、用户提交任务至任务队列,并提出任务的优先级;

步骤二、根据任务的优先级和任务的实时性将用户提交的任务入队,通过队列策略控制选择出队的任务,如果出队的任务是实时的,直接将任务发送至静态云中的服务节点,如果任务是非实时的,将该任务发送至端云协同服务器;

步骤三、端云协同服务器将任务队列发送的非实时任务分为可分任务与不可分任务,然后进行任务调度,将不可分任务分发给静态云中的单一服务节点处理,对可分任务依照端云协同计算任务分配算法分发给静态云中的服务节点集群和终端集群处理;

步骤四、静态云中的服务节点集群和终端集群与端云协同服务器建立心跳机制,静态云中的服务节点集群和终端集群向端云协同服务器汇报任务完成情况、CPU速率、节点负载、空闲资源、网络传输速率,以便在任务分发的时候根据当前资源状态进行资源的分配和调度。

上述的一种端云协同计算架构及任务调度方法,其特征在于,所述步骤三不可分任务是不可再分的或者子任务间存在依赖关系,需要串行执行。

上述的一种端云协同计算架构及任务调度方法,其特征在于,所述步骤三对于发送给终端集群的任务,先在云端备份,由于终端的网络和资源情况较为复杂,若终端计算出现问题,该任务可以在静态云中的服务节点处理。

本发明的有益效果是:

本发明提出的边缘云计算平台下的一种端云协同计算架构及任务调度装置及方法,旨在解决快速发展的云应用时代,现有的边缘云平台负载大,任务提交至远端通信开销大的问题。区别于传统的云计算平台,本发明将已安全认证接入系统中且具有一定计算能力的终端也加入计算资源池中,组成终端集群,终端集群具有较强的扩展性,增加了云的扩展性,终端集群与静态云中的服务节点集群共同完成之前的单一云平台所要计算的任务,优化了传统云平台,有效减少了云端的负载。该架构兼具边缘云的实时快速的特点,又能为物联网等大数据应用提供更加强大和稳定的服务。

以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。

附图说明

图1是端云协同计算架构图

图2是端云协同计算流程图

图3是本发明的端云协同计算任务调度方法流程图

具体实施方式

如图1所示,一种端云协同计算架构及任务调度装置,其特征在于,包括:

云端集群:包括边缘云下的静态云中的服务节点和虚拟机节点,边缘云下的静态云中的服务节点一般由虚拟机计算节点构成,虚拟机节点可由云端管理服务器动态生成、管理和销毁。

端云协同中间件:端云协同中间件包括自动发现和扩展模块,终端资源监测及同步模块,端云任务调度模块。端云协同中间件一方面负责终端资源的可信安全认证接入,另一方面为端云协同计算架构提供合理的任务分配及调度策略,保证任务合理高效地在终端和云端之间协同计算。

终端集群:终端集群由各种硬件终端组成,这些终端可分为有线连接的PC,无线连接的PC,以Android为主要操作系统的各种终端设备例如手机和平板等,这些终端数量众多,可以随时随地进行扩展,同时这些终端以安全的方式接入云平台,提供一定的计算资源。

端云协同中间件主要包括以下几大功能模块:

1、自动发现和扩展模块

端云协同计算架构建立在本地边缘云的基础上,不存在跨域跨网访问等问题。处于该区域内的终端可以通过有线、无线网络连接的方式,与整个云进行交互。

自动发现是端云协同服务器的基本功能,是一种云平台扩展终端资源的动态方法。端云协同服务器使用主动探测的方法,用于及时发现可用的终端资源。端云协同服务器主动向终端接入的网络中定时发送相应的数据包,此时若可提供计算资源的终端接收到该数据包,则使用相应的安全认证协议,再使用一定格式的数据包传送给端云协同服务器进行资源可信认证。端云协同器收到数据包后按照规定数据格式进行解析,判断是否认证成功。若认证成功,协同服务器立即将该终端视为可信的计算资源节点,加入实时计算资源池中,并记录数据包中MacAddr字段作为可信终端的唯一标识,若终端无线网络不稳定导致IP地址发生变化而断开连接,系统可通过记录的终端MacAddr进行ARP请求,获取终端的网络地址,进行重新连接。

2、终端资源监测及同步模块

端云协同服务器在任务分发的时候根据当前系统中的资源状态和任务属性进行资源的分配和调度,因此端云协同服务器需要维护一个实时计算的资源池,记录当前已加入云平台的每个云端或者终端节点的计算资源信息。

终端资源监测模块在终端成功接入云平台后,调用相应服务,将计算资源配置信息发往端云协同服务器。端云协同服务器会定时向终端下发资源信息请求,终端收到请求继续调用资源监控模块及时反馈给端云协同服务器,尽可能保证与实时计算资源池中的记录同步。

3、端云任务调度模块

端云任务调度模块,由任务队列和端云协同服务器配合完成。首先任务队列将按照任务属性或者优先级进行分类,然后端云协同服务器取出需要处理的相应任务,根据当前实时资源信息结合一定的任务分配算法,进行任务和资源的调度。最终保证任务合理的分配到云端和终端计算,保持任务在端云直接计算协同进行和整个系统的负载均衡。

一种端云协同计算架构及任务调度方法,其特征在于,包括以下步骤:

步骤一、用户提交任务至任务队列,并提出任务的优先级。

步骤二、根据任务的优先级和任务的实时性将用户提交的任务入队,通过队列策略控制选择出队的任务,如果出队的任务是实时的,直接将任务发送至静态云中的服务节点,如果任务是非实时的,将该任务发送至端云协同服务器。

步骤三、端云协同服务器将任务队列发送的非实时任务分为可分任务与不可分任务,然后进行任务调度,不可分任务是不可再分的或者子任务间存在依赖关系,需要串行执行,将不可分任务分发给静态云中的单一服务节点处理,对可分任务依照端云协同计算任务分配算法分发给静态云中的服务节点集群和终端集群处理,对于发送给终端集群的任务,先在云端备份,由于终端的网络和资源情况较为复杂,若终端计算出现问题,该任务可以在静态云中的服务节点处理。

步骤四、静态云中的服务节点集群和终端集群与端云协同服务器建立心跳机制,静态云中的服务节点集群和终端集群向端云协同服务器汇报任务完成情况、CPU速率、节点负载、空闲资源、网络传输速率等,以便在任务分发的时候根据当前资源状态进行资源的分配和调度。

如图2、3所示,为本发明的端云协同计算任务调度方法流程图,整个过程如下所示:

1、根据任务的实时性和用户提出的任务的优先级对任务进行入队,然后通过队列策略控制决定队列中任务出队的顺序。

2、对出队任务进行实时性判断。

a.若是实时,立即发送至静态云中的服务节点。

b.若是非实时,将出队的非实时任务发送至端云协同服务器。

3、对非实时任务进行可分性判断。

a.若任务不可分,将任务发送给静态云中的服务节点。

b.若任务可分,依照任务分配算法计算各节点应分配的任务量,然后分发给静态云中的服务节点和终端集群处理,若任务发送至终端集群的节点,同时在云端安全备份,以备出现错误时进行恢复。

任务分配算法如下所示:

定义1:任务调度由调度节点,网络、端或云计算节点三部分组成。将端和云计算节点看作一个整体进行统一处理,所有计算节点的集合为M,资源的计算节点为d,其中M={d1,d2,…,dn},n为计算节点的总个数。计算节点di对单位任务的传输时间和计算时间分别为bi和ci

定义2:当前需要处理的用户提交的任务大小总量为A,本算法的目的在于将总量为A的任务分成n个子任务(为所有计算节点的个数)并将其分到每一个计算节点上运行。这些子任务为独立任务,且与其他任务之间没有依赖关系。

定义3:计算节点di处理子任务ai的完成时间为Ti。任务完成的最短时间即为所有子任务同时完成的时间即T1=T2=…=Tn,如果最短时间不是所有子任务同时运行完成,那么还未完成运行的计算节点上的任务分给已经完成运行的计算节点可以得到更短的运行时间。

步骤一、确定所有计算节点的最佳调度顺序,最优的计算节点调度顺序是带宽递减顺序,这是因为先向带宽高的计算节点调度任务就可以让任务尽快到达计算节点运行。因为用户提交任务是直接提交到本地边缘云的,云端网络带宽相对较优,且云端计算的可靠性更高,综合通信开销和安全性等问题,即大体上先分发给云任务,再分发给端任务。设d1,d2,…,dn已按照调度顺序排序好。

步骤二、计算节点di处理子任务ai的完成时间为Ti,等于任务的传输时间加上计算时间即Ti=aibi+aici,又因为任务完成的最短时间为所有子任务同时完成的时间即T1=T2=…=Tn,根据以上等式计算各个计算节点分到任务大小之间的关系ai=βia1,其中

步骤三、根据各个计算节点分到任务大小之间的关系ai=βia1和任务总量A=a1+a2+…+an,求出第一个计算节点分到任务大小

步骤四、根据各个计算节点分到任务大小之间的关系ai=βia1和第一个计算节点分到任务大小计算出每个计算节点分到任务大小按照求解结果分发给系统中每一个云端或终端计算节点进行计算。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号