CN109669768A - 一种面向边云结合架构的资源分配和任务调度方法 - Google Patents

一种面向边云结合架构的资源分配和任务调度方法 Download PDF

Info

Publication number
CN109669768A
CN109669768A CN201811515898.0A CN201811515898A CN109669768A CN 109669768 A CN109669768 A CN 109669768A CN 201811515898 A CN201811515898 A CN 201811515898A CN 109669768 A CN109669768 A CN 109669768A
Authority
CN
China
Prior art keywords
task
edge server
server
energy consumption
edge
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.)
Granted
Application number
CN201811515898.0A
Other languages
English (en)
Other versions
CN109669768B (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.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
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 Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201811515898.0A priority Critical patent/CN109669768B/zh
Publication of CN109669768A publication Critical patent/CN109669768A/zh
Application granted granted Critical
Publication of CN109669768B publication Critical patent/CN109669768B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/484Precedence
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开一种面向边云结合的资源分配和任务调度方法,首先在边缘服务器中记录与其相临近的边缘服务器的相关信息,当任务到达与其相临近的边缘服务器后,由该服务器计算将任务发送至各个服务器的预计计算时间和能耗成本,从满足任务所需计算时间的服务器中选择能耗成本最低的边缘服务器作为任务执行的位置,若没有服务器满足要求,则任务将在本地执行,若所有服务器处于满载状态,任务将在满足最大延迟时间的条件下发往云服务器执行。最后任务到达处理位置后,将由边缘服务器依照任务的截止时间对任务进行任务执行顺序调度和数据传输调度,从而达到在保证任务延迟要求的前提下,降低整体系统能耗成本和整体边缘服务器负载均衡的目的。

Description

一种面向边云结合架构的资源分配和任务调度方法
技术领域
本发明属于边缘计算领域,具体涉及设计并实现一种面向边缘计算与云计算相结合结构下的资源分配和任务调度方法。
背景技术
随着物联网相关技术的发展,我们正在从物联网时代走入万物互联的时代,其突出特点是任何“物”都将具有环境感知的功能、更强的计算能力和感知能力,网络将具有数十亿甚至数百亿的连接节点。在提供更复杂的功能的同时,网络中也将产生海量的数据,对海量数据的处理,将是未来物联网发展的突出问题。传统基于云计算的解决方案,将数据的处理任务发送到云计算中心,利用云计算中心的超强计算能力来集中解决这些数据的计算和存储问题。基于云计算的集中式处理方法,虽然解决了资源的限制,但由于物联网终端设备和远程云服务器之间的高延迟,对于需要较短延迟时间的任务,可能会带来巨大的延迟时间从而导致任务中断。在这种情况下,基于云计算的集中式处理方法不能高效的支持基于万物互联的应用服务,而边缘计算则可以较好地解决这些问题。
在边缘计算架构下,与数据相关的操作(包括数据的存储和处理)被放置在网络边缘的一组小型服务器(cloudlet)中进行处理,而不是远程云端服务器。大量数据将在接近数据产生源头的边缘服务器中进行,从而降低网络的使用,减少了任务处理的延迟时间。与云计算相比,边缘计算所采用的架构呈分布式,更接近网络边缘,数据的存储、处理和应用程序将集中在网络边缘的服务器中,将会极大地减少这些过程中的网络延迟,同时在保护用户隐私数据,提升数据安全性方面与云计算相比较也有很大的优势。
边缘计算与云计算的结合将是物联网网络架构发展的趋势,借助边缘服务器接近数据生产者的优势和云服务器的强大的计算、存储能力,将对未来物联网环境所产生的海量数据进行有效的存储和处理。然而边云结合的网络架构,也带来了新的挑战,与云计算架构不同,在边云结合的网络架构内,任务处理的位置也有了选择,对于不同特性的任务,其所适合处理的位置也不同,以往云计算中使用的调度策略将不再适用于当前边云结合的计算架构。不同的资源分配与任务调度算法则在对任务处理位置和顺序的安排中,起到不同的作用。寻找到合适于边云结合架构的资源分配与任务调度算法,将为边缘计算的发展做出重要贡献。
发明内容
为上述解决边云结合架构下任务处理位置分配及边缘服务器内的任务调度问题,本发明提出了一种基于边云结合架构的资源分配与任务调度算法。首先每个任务都有其相对应的临近边缘服务器,在其临近边缘服务器和与服务器中存储着与其相关联的一段数据。每个任务在达到与其相临近的边缘服务器时,都会生成关于任务的相关信息,包括任务的到达时间,任务处理的截止时间,任务的计算量和数据量,以及任务的临近边缘服务器。由任务的到达时间和截止时间,以及在任务处理期间所产生的能耗,以及周边边缘服务器的运行情况,为任务选择合适的边缘服务器或者将任务发送至云服务器进行处理,任务到达服务器后,依照任务的截止时间和任务数据传输的时间,对任务的处理顺序和数据传输顺序进行调度,以达到在保证任务处理延时时间的前提下,减少整体能耗的目的。当所有边缘服务器都已处于满负载或者能耗不优于云服务器的情况下,任务将被传输至云端处理。
为达到上述目的,本发明采用以下技术方案。
一种基于边云结合架构的资源分配与任务调度算法,其特征在于,包括以下步骤:
步骤(1)边缘服务器及任务信息配置:
(1.1)边缘服务器列表信息配置:边缘服务器e所在子网中的所有边缘服务器构成一个集合E={e1,e2,……,em},边缘服务器ei∈E,其信息包括:最大计算能力Ci,最大下载、上传带宽Bi in和Bi out,完成单位计算量的能耗成本Pi,下载和上传单位数据量的能耗成本Qi in和Qi out,所有边缘服务器的信息存储为矩阵EInfm×7,m表示集合E中边缘服务器的个数,7表示信息的个数;
矩阵EInfm×7分别存储在集合E中的各个边缘服务器中,除此之外云服务中心的信息也将存储在上述各个边缘服务器中,所述云服务中心的信息包括:所有边缘服务器与云服务器之间的距离,以及数据传输速度v,其中边缘服务器ei与云服务器之间的距离记为lencloud,i
(1.2)任务信息配置:所有需要在边缘服务器中处理的任务组成任务集合J={j1,j2,……,jn},任务jj∈J,其信息包括:任务直接传输到的边缘服务器fej,任务ji到达边缘服务器fej的时间和任务ji的最大截止时间tj begin与tj end,任务jj的计算量lj,任务jj的数据量dj,任务jj的以上信息组成列表Infj,则Infj=<tj begin,tj end,lj,dj,fej>,Infj跟随任务jj到达其直接传输到的边缘服务器ej
步骤(2)任务集合中的某一任务jj到达其直接传输到的边缘服务器fej后,分析任务jj在不同服务器中的延迟和能耗,其中任务jj的具体分析方法如下:
当任务jj到达其直接传输到的边缘服务器fej中后,该服务器将结合任务信息列表Infj,和边缘服务器信息矩阵EInfm×7中的信息,计算任务jj在边缘服务器矩阵中,不包括fej的各个边缘服务器中的预计时间T和预计能耗W,其中任务jj在边缘服务器ei中的预计时间Tij和预计能耗Wij的计算公式如下:
时间Tij:
能耗成本Wij:
其中lj表示任务jj的计算量,Ci表示边缘服务器信息矩阵EInfm×7中边缘服务器ei的最大计算能力,dj表示任务jj的数据量,Bj out表示任务jj直接传输到的边缘服务器fej的上传带宽,Bi in表示边缘服务器ei的下载带宽,Pi表示边缘服务器ei计算每单位计算量的能耗成本,服务器Qj out表示fej上传每单位数据量的能耗成本,Qi in表示边缘服务器ei下载每单位数据量的能耗成本;
计算结果存储为矩阵Ejm×3,其中m表示集合E中边缘服务器的个数,3表示信息的个数,即边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij,进入步骤(3);
步骤(3)任务处理位置选择策略,其中任务jj的具体选择策略如下:
(3.1)首先计算任务jj在其直接传输到的边缘服务器fej中计算所需的能耗Wj,和任务的最大延迟时间Tj,计算公式如下:
最大延迟时间Tj
能耗Wj:Wj=lj·Pj
其中,tj end表示任务jj的最大截止时间,tj begin表示任务jj到达边缘服务器fej的时间,lj表示任务jj的计算量,Pj表示任务jj到达其直接传输到的边缘服务器fej计算每单位计算量的能耗成本;
(3.2)适合任务集合中各任务计算的边缘服务器分析,其中任务jj的具体分析方法如下:
(3.2.1)通过Tj与矩阵Ejm×3中各个边缘服务器预计处理任务jj所需时间Tij的比较,选择出Tij<Tj的边缘服务器,组成矩阵ETjk×3,其中k表示矩阵Ejm×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数,即边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij
若ETjk×3为空,则进入(3.3.2);
否则进入步骤(3.2.2);
(3.2.2)通过Wj与矩阵ETjk×3中各个边缘服务器预计处理任务jj需要的能耗成本的比较,选择出Wij<Wj的边缘服务器,组成矩阵EWjn×3,其中n表示ETjk×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数:边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij
(3.2.3)若EWjn×3为空,则进入(3.3.2),否则进入步骤(3.3.1)
(3.3)为任务集合中各任务,选取适合计算的最佳边缘服务器,其中对任务jj的选取方法具体如下:
(3.3.1)首先在矩阵EWjn×3中,选择预计产生能耗成本Wij最小的边缘服务器ej,任务jj直接传输到的边缘服务器fej向ej发送任务jj信息列表Infj=<tj begin,tj end,lj,dj,fej>,边缘服务器ej根据自身计算量剩余情况返回是否允许将任务jj发送至本地的信息;
若ej返回为否定,则将边缘服务器ej从矩阵EWjn×3中去除,重新进入步骤(3.2.3);
若ej返回为肯定,则边缘服务器ej为最终计算任务jj的位置,本步骤结束,进入步骤4;
(3.3.2)首先判断边缘服务器fej是否剩余足够计算资源,若剩余足够计算资源,则任务jj将在边缘服务器fej中执行,本步骤结束,进入步骤4;
如果fej处于满载状态,计算将任务jj发送给云服务器的时间Tj cloud,计算方式如下:
其中lencloud,j表示任务jj直接传输到的边缘服务器fej距离云服务器的距离,v表示数据传输速度,dj表示任务jj的数据量,Bj out表示边缘服务器fej的上传带宽;
若将任务jj发送至云端处理的时间小于任务jj在本地处理的时间Tj,即由步骤3.1得到的最大延迟时间Tj,即满足公式Tj cloud<Tj,则任务jj将发送至云服务器执行;否则将选择把在边缘服务器fej等待执行任务列表中、任务最大截止时间tj end最大的任务发送至云服务器执行,本步骤结束;
步骤(4)边缘服务器中的任务调度和数据传输调度策略,包括以下步骤:
(4.1)边缘服务器中的任务调度,当任务信息到达在步骤(3)中为任务jj选择的边缘服务器ei中时,将进入边缘服务器的待处理任务列表首先根据任务列表的截止时间tj end,由小到大进行排序,边缘服务器首先处理任务列表中排名在前且任务数据在本地的任务;数据不在本地的任务,边缘服务器将对其数据传输进行调度,在这类任务数据到达边缘服务器ei后,将抢占正在执行的任务中,最大截止时间大于本任务最多的任务进行执行,被抢占任务重新进入等待队列等待执行;
(4.2)边缘服务器中的数据传输调度,在步骤(4.1)中为任务确定了执行顺序,则每个任务开始执行的时间便成为了该任务进行数据传输的最大截止时间Dtj end,根据等待数据传输的任务列表中的从小到大进行排序,生成任务数据传输调度的顺序,系统按照此顺序进行数据接收,直到所有任务都已安排时,方法终止。
有益效果
本项目面向边缘计算与云计算结合的物联网架构,应对任务处理位置的多种可能,考虑到不同处理位置所产生的能耗成本不同的现实情况,在保证任务处理延迟时间要求的前提下,为任务分配产生能耗成本最小的位置。在为任务选择处理位置的过程中,也考虑到边缘服务器子网中的负载均衡问题,结合了子网中其他空闲边缘服务器和云服务器的计算能力,避免了单一服务器陷入满负载所造成的大量任务延迟。在边缘服务器的任务调度方面,本项目选择基于任务最大截止时间的抢占式调度,进一步保证总体任务的延迟要求。
附图说明
为使本发明的目的、方案更加通俗易懂,下面将结合附图对本发明进一步说明。
图1为边云结合架构图
图2为某一项任务选择处理位置流程图
图3为任务调度过程示意图
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施进行详细说明。
本发明所涉及的是一种面向边云结合架构的资源分配与任务调度的算法,所适应的整体架构图如图1所示,网络边缘部分由边缘服务器组成相互连接的网络,相临近的边缘服务器各自连接为一个网络,通过核心网络与云服务器相连接,所有终端设备都有与其相临近的边缘服务器用于接受其可能传输的任务。边缘服务器的计算能力、存储能力、上传带宽、下载带宽以及计算单位计算量的能耗成本各自不同,云服务器的计算能力与存储能力与边缘服务器相比,远远超越后者。算法具体步骤如下:
步骤(1)、边缘服务器及任务信息配置:
(1.1)边缘服务器列表信息配置:边缘服务器e所在子网中的所有边缘服务器构成一个集合E={e1,e2,……,em}。边缘服务器ei∈E,其信息包括:最大计算能力为Ci,最大下载、上传带宽分别为Bi in和Bi out,完成单位计算量的能耗成本为Pi,下载和上传单位数据量的能耗成本Qi in和Qi out。所有边缘服务器的信息存储为矩阵EInfm×7,m表示集合E中边缘服务器的个数,7表示信息的个数。
矩阵EInfm×7分别存储在集合E中的各个边缘服务器中,除此之外云服务中心的信息也将存储在各个边缘服务器中,这些信息包括:边缘服务器ei与云服务器之间的距离lencloud,i,数据传输速度v。
例如图1所示,在边缘服务器所组成的子网中,由边缘服务器e1,e2,e3,e4组成,在各个边缘服务器中都存储着所有边缘服务器的上述信息矩阵EInfm×7,以及边缘服务器自身与云服务器之间的距离和数据传输速度,同时各个边缘服务器各自与云服务器之间的距离lencloud,i和数据传输速度v也记录在该边缘服务器之中。
(1.2)任务信息配置:所有需要在边缘服务器中处理的任务组成任务集合J={j1,j2,……,jn}。任务jj∈J,其信息包括:任务直接传输到的边缘服务器fej,任务ji到达边缘服务器ej的时间和任务的最大截止时间tj begin与tj end,任务jj的计算量lj,任务jj的数据量dj。任务jj的以上信息组成列表Infj,则Infj=<tj begin,tj end,lj,dj,fej>,Infj跟随任务jj到达其直接传输到的边缘服务器ej
例如图1所示,在边缘服务器所组成的子网中,某一终端设备所产生的任务j1,其相关信息Inf1=<t1 begin,t1 end,l1,d1,fe1>,此处,fe1为子网中的边缘服务器e1,Inf1将跟随任务发送至其直接传输到的边缘服务器fe1,以供后续的分析计算。
步骤(2)当任务到达与其临近的边缘服务器ei后,该服务器依照其上所存储的关于边缘服务器相关信息的矩阵EInfm×7,和任务的相关信息列表Infj,计算任务在边缘服务器矩阵中不包括fej的各个边缘服务器中的的各个边缘服务器中的预计时间T和预计能耗W,其中任务jj在边缘服务器ei中的预计时间Tij和预计能耗Wij的计算公式如下:
时间Tij:
能耗成本Wij:
预计时间Tij和预计能耗Wij分别由计算和传输两个过程组成。其中,lj表示任务jj的计算量,Ci表示边缘服务器信息矩阵EInfm×7中任意边缘服务器ei的最大计算能力,dj表示任务jj的数据量,Bj out表示任务jj直接传输到的边缘服务器fej的上传带宽,Bi in表示边缘服务器ei的下载带宽,Pi表示边缘服务器ei计算每单位计算量的能耗成本,服务器Qj out表示fej上传每单位数据量的能耗成本,Qi in表示边缘服务器ei下载没单位数据量的能耗成本。
计算结果存储为矩阵Ejm×3,进入步骤(3)。
步骤(3)任务处理位置选择策略,任务的处理位置将在矩阵Ejm×3中的边缘服务器以及云服务器之间选择,整体流程如图2所示。
(3.1)首先计算任务jj在其直接传输到的边缘服务器fej中计算所需的能耗Wj,和任务的最大延迟时间Tj,计算公式如下:
最大延迟时间Tj
能耗Wj:Wj=lj·Pj
其中,tj end表示任务jj的最大截止时间,tj begin表示任务jj到达边缘服务器ej的时间,lj,表示任务jj的计算量,Pj表示任务jj到达其直接传输到的边缘服务器fej计算每单位计算量的能耗成本。
(3.2)
(3.2.1)通过Tj与矩阵Ejm×3中各个边缘服务器预计处理任务jj所需时间Tij的比较,选择出Tij<Tj的边缘服务器,组成矩阵ETjk×3。其中k表示矩阵Ejm×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数:边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和产生功耗Wij
若ETjk×3为空,则进入(3.3.2);
否则进入步骤(3.2.2)。
(3.2.2)通过Wj与矩阵ETjk×3中各个边缘服务器预计处理任务jj需要的能耗成本的比较,选择出Wij<Wj的边缘服务器,组成矩阵EWjn×3。其中n表示ETjk×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数:边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和产生功耗Wij
(3.2.3)若EWjn×3为空,则进入(3.3.2),否则进入步骤(3.3.1)
(3.3)在完成上述步骤后,任务在各个边缘服务器计算的情况和适合计算的边缘服务器已经分析完成。接下来将在适合任务计算的边缘服务器中为任务jj选取最佳处理位置:
(3.3.1)首先在矩阵EWjn×3中,选择预计产生能耗成本Wij最小的边缘服务器ej,任务jj直接传输到的边缘服务器fej向ej发送任务jj信息列表Infj=<tj begin,tj end,lj,dj,fej>,边缘服务器ej根据自身计算量剩余情况返回是否允许将任务jj发送至本地的信息。
若ej返回为否定,则将边缘服务器ej从矩阵EWjn×3中去除,重新进入步骤(3.2.3);
若ej返回为肯定,则边缘服务器ej为最终计算任务jj的位置。
(3.3.2)首先判断边缘服务器fej是否剩余足够计算资源,若剩余足够计算资源,则任务将在边缘服务器fej中执行。如果fej处于满载状态,计算将任务jj发送给云服务器的时间Tj cloud,计算方式如下:
其中lencloud,j表示任务jj直接传输到的边缘服务器fej距离云服务器的距离,v表示数据传输速度,dj表示任务jj的数据量,Bj out表示边缘服务器fej的上传带宽。
若将任务jj发送至云端处理的时间小于任务在本地处理的时间,即Tj cloud<Tj,则任务将发送至云服务器执行;
否则将选择在边缘服务器fej等待执行任务列表中,任务最大截止时间tj end最大的任务发送至云服务器执行。
至此,为任务选择处理位置的操作完成
步骤4,在上一步骤为任务分配了合适的处理位置后,选择接受任务的边缘服务器便接收到了任务的相关信息,将在该服务器上进行任务处理顺序调度和数据传输顺序调度,包括以下步骤:
(4.1)任务调度
首先根据边缘服务器中的待处理任务列表,将任务的截止时间Tj end进行排序,首先处理队列中任务数据在本地且截止时间最小的的任务,调度方式采用抢占式,即当队列中数据不在本地的任务,所需要的数据到达时,将会抢占服务器正在处理的任务中截止时间Tj end大于该任务最多的任务的计算资源,使得该任务进行处理。如图3所示,左侧为边缘服务器计算资源,右侧为当前服务器的待处理任务队列,A、B、C、D四块分别表示四个任务,块的长短代表任务截止时间Tj end的大小,长度越短,代表其截止时间越接近,字母后面的0和1,代表任务数据是否在本地边缘服务器,如图中时间节点(1)时,A、C任务的数据在本地,B、D任务的数据不在本地。边缘服务器首先选择数据在本地,且任务截止时间最接近的任务进行处理,直到计算资源分配完毕。在时间节点(3)中,任务B的数据传输到了本地,而任务B的截止时间比正在计算两个任务A、C的截止时间接近,则任务B将抢占截止时间较远的任务A,先进行计算。
(4.2)数据传输调度
在上一步骤任务调度阶段确定了任务执行的顺序,则每个任务开始执行的时间便成为了该任务进行数据传输的最晚截止时间DTj end,根据等待数据传输的任务列表中任务的最晚截止时间DTj end由小到大进行排序,系统根据该序列进行数据传输,直到所有任务都已安排时,算法终止。
本发明面向边云结合的计算架构,对该架构中任务的资源分配和调度算法做出了优化,充分利用边缘服务器的计算能力,将任务在边缘服务器中就近处理,同时充分考虑了不同的边缘服务器计算成本的不同,在保证架构中的任务计算要求时间的前提下,将降低整体系统中任务处理的能耗成本作为目标。此外,周边服务器将被充分利用,为某一边缘服务器繁忙时分担处理任务,使用云服务器作为整体系统繁忙时处理任务的备选,避免了边缘服务器繁忙时所造成的负载集中,达到了负载均衡的目的。

Claims (1)

1.一种基于边云结合架构的资源分配与任务调度方法,其特征在于,包括以下步骤:
步骤(1)边缘服务器及任务信息配置:
(1.1)边缘服务器列表信息配置:边缘服务器e所在子网中的所有边缘服务器构成一个集合E={e1,e2,……,em},边缘服务器ei∈E,其信息包括:最大计算能力Ci,最大下载、上传带宽Bi in和Bi out,完成单位计算量的能耗成本Pi,下载和上传单位数据量的能耗成本Qi in和Qi out,所有边缘服务器的信息存储为矩阵EInfm×7,m表示集合E中边缘服务器的个数,7表示信息的个数;
矩阵EInfm×7分别存储在集合E中的各个边缘服务器中,除此之外云服务中心的信息也将存储在上述各个边缘服务器中,所述云服务中心的信息包括:所有边缘服务器与云服务器之间的距离,以及数据传输速度v,其中边缘服务器ei与云服务器之间的距离记为lencloud,i
(1.2)任务信息配置:所有需要在边缘服务器中处理的任务组成任务集合J={j1,j2,……,jn},任务jj∈J,其信息包括:任务直接传输到的边缘服务器fej,任务ji到达边缘服务器fej的时间和任务ji的最大截止时间tj begin与tj end,任务jj的计算量lj,任务jj的数据量dj,任务jj的以上信息组成列表Infj,则Infj=<tj begin,tj end,lj,dj,fej>,Infj跟随任务jj到达其直接传输到的边缘服务器ej
步骤(2)任务集合中的某一任务jj到达其直接传输到的边缘服务器fej后,分析任务jj在不同服务器中的延迟和能耗,其中任务jj的具体分析方法如下:
当任务jj到达其直接传输到的边缘服务器fej中后,该服务器将结合任务信息列表Infj,和边缘服务器信息矩阵EInfm×7中的信息,计算任务jj在边缘服务器矩阵中,不包括fej的各个边缘服务器中的预计时间T和预计能耗W,其中任务jj在边缘服务器ei中的预计时间Tij和预计能耗Wij的计算公式如下:
时间Tij:
能耗成本Wij:
其中lj表示任务jj的计算量,Ci表示边缘服务器信息矩阵EInfm×7中边缘服务器ei的最大计算能力,dj表示任务jj的数据量,Bj out表示任务jj直接传输到的边缘服务器fej的上传带宽,Bi in表示边缘服务器ei的下载带宽,Pi表示边缘服务器ei计算每单位计算量的能耗成本,服务器Qj out表示fej上传每单位数据量的能耗成本,Qi in表示边缘服务器ei下载每单位数据量的能耗成本;
计算结果存储为矩阵Ejm×3,其中m表示集合E中边缘服务器的个数,3表示信息的个数,3代表三个参数,即边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij,进入步骤(3);
步骤(3)任务处理位置选择策略,其中任务jj的具体选择策略如下:
(3.1)首先计算任务jj在其直接传输到的边缘服务器fej中计算所需的能耗Wj,和任务的最大延迟时间Tj,计算公式如下:
最大延迟时间Tj
能耗Wj:Wj=lj·Pj
其中,tj end表示任务jj的最大截止时间,tj begin表示任务jj到达边缘服务器fej的时间,lj表示任务jj的计算量,Pj表示任务jj到达其直接传输到的边缘服务器fej计算每单位计算量的能耗成本;
(3.2)适合任务集合中各任务计算的边缘服务器分析,其中任务jj的具体分析方法如下:
(3.2.1)通过Tj与矩阵Ejm×3中各个边缘服务器预计处理任务jj所需时间Tij的比较,选择出Tij<Tj的边缘服务器,组成矩阵ETjk×3,其中k表示矩阵Ejm×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数,即边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij
若ETjk×3为空,则进入(3.3.2);
否则进入步骤(3.2.2);
(3.2.2)通过Wj与矩阵ETjk×3中各个边缘服务器预计处理任务jj需要的能耗成本的比较,选择出Wij<Wj的边缘服务器,组成矩阵EWjn×3,其中n表示ETjk×3中满足Tij<Tj的边缘服务器的数量,3代表三个参数:边缘服务器ei的序号,任务jj在ei上计算预计所需时间Tij和能耗成本Wij
(3.2.3)若EWjn×3为空,则进入(3.3.2),否则进入步骤(3.3.1)
(3.3)为任务集合中各任务,选取适合计算的最佳边缘服务器,其中对任务jj的选取方法具体如下:
(3.3.1)首先在矩阵EWjn×3中,选择预计产生能耗成本Wij最小的边缘服务器ej,任务jj直接传输到的边缘服务器fej向ej发送任务jj信息列表Infj=<tj begin,tj end,lj,dj,fej>,边缘服务器ej根据自身计算量剩余情况返回是否允许将任务jj发送至本地的信息;
若ej返回为否定,则将边缘服务器ej从矩阵EWjn×3中去除,重新进入步骤(3.2.3);
若ej返回为肯定,则边缘服务器ej为最终计算任务jj的位置,本步骤结束,进入步骤4;
(3.3.2)首先判断边缘服务器fej是否剩余足够计算资源,若剩余足够计算资源,则任务jj将在边缘服务器fej中执行,本步骤结束,进入步骤4;
如果fej处于满载状态,计算将任务jj发送给云服务器的时间Tj cloud,计算方式如下:
其中lencloud,j表示任务jj直接传输到的边缘服务器fej距离云服务器的距离,v表示数据传输速度,dj表示任务jj的数据量,Bj out表示边缘服务器fej的上传带宽;
若将任务jj发送至云端处理的时间小于任务jj在本地处理的时间Tj,即由步骤3.1得到的最大延迟时间Tj,即满足公式Tj cloud<Tj,则任务jj将发送至云服务器执行;
否则将选择把在边缘服务器fej等待执行任务列表中、任务最大截止时间tj end最大的任务发送至云服务器执行;
步骤(4)边缘服务器中的任务调度和数据传输调度策略,包括以下步骤:
(4.1)边缘服务器中的任务调度,当任务信息到达在步骤(3)中为任务jj选择的边缘服务器ei中时,将进入边缘服务器的待处理任务列表首先根据任务列表的截止时间tj end,由小到大进行排序,边缘服务器首先处理任务列表中排名在前且任务数据在本地的任务;数据不在本地的任务,边缘服务器将对其数据传输进行调度,在这类任务数据到达边缘服务器ei后,将抢占正在执行的任务中,最大截止时间大于本任务最多的任务进行执行,被抢占任务重新进入等待队列等待执行;
(4.2)边缘服务器中的数据传输调度,在步骤(4.1)中为任务确定了执行顺序,则每个任务开始执行的时间便成为了该任务进行数据传输的最大截止时间Dtj end,根据等待数据传输的任务列表中的从小到大进行排序,生成任务数据传输调度的顺序,系统按照此顺序进行数据接收,直到所有任务都已安排时,方法终止。
CN201811515898.0A 2018-12-11 2018-12-11 一种面向边云结合架构的资源分配和任务调度方法 Active CN109669768B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811515898.0A CN109669768B (zh) 2018-12-11 2018-12-11 一种面向边云结合架构的资源分配和任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811515898.0A CN109669768B (zh) 2018-12-11 2018-12-11 一种面向边云结合架构的资源分配和任务调度方法

Publications (2)

Publication Number Publication Date
CN109669768A true CN109669768A (zh) 2019-04-23
CN109669768B CN109669768B (zh) 2023-03-14

Family

ID=66144156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811515898.0A Active CN109669768B (zh) 2018-12-11 2018-12-11 一种面向边云结合架构的资源分配和任务调度方法

Country Status (1)

Country Link
CN (1) CN109669768B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110380891A (zh) * 2019-06-13 2019-10-25 中国人民解放军国防科技大学 一种边缘计算服务资源配置方法、装置与电子设备
CN110471621A (zh) * 2019-07-29 2019-11-19 东南大学 一种异构边缘环境下面向实时数据处理应用的边缘协同存储方法
CN110888745A (zh) * 2019-11-29 2020-03-17 中国石油大学(华东) 一种考虑任务传输到达时间的mec节点选择方法
CN111090507A (zh) * 2019-11-25 2020-05-01 南京航空航天大学 基于云边融合服务器网络架构的任务调度方法及应用
CN111404729A (zh) * 2020-03-04 2020-07-10 腾讯科技(深圳)有限公司 边云协同系统管理方法、装置
CN111427679A (zh) * 2020-03-25 2020-07-17 中国科学院自动化研究所 面向边缘计算的计算任务调度方法、系统、装置
CN111475301A (zh) * 2020-04-09 2020-07-31 清华大学 卫星资源分配方法、装置和电子设备
CN111539863A (zh) * 2020-03-26 2020-08-14 重庆特斯联智慧科技股份有限公司 一种基于多源任务线的智能城市运行的方法和系统
CN111611062A (zh) * 2020-05-06 2020-09-01 南京邮电大学 云边协同分层计算方法及云边协同分层计算系统
CN111651276A (zh) * 2020-06-04 2020-09-11 杭州海康威视系统技术有限公司 一种调度方法、装置及电子设备
CN111928334A (zh) * 2020-07-30 2020-11-13 瑞纳智能设备股份有限公司 基于边云协同框架的供热控制方法、系统及计算机设备
CN111966496A (zh) * 2020-08-21 2020-11-20 浪潮(北京)电子信息产业有限公司 数据处理方法、装置、系统及计算机可读存储介质
CN111984383A (zh) * 2020-08-18 2020-11-24 薛东 基于云网融合和人工智能的业务数据处理方法及云端平台
CN112217879A (zh) * 2020-09-24 2021-01-12 江苏方天电力技术有限公司 一种基于配电物联网的边缘计算技术和云边协同方法
CN112351213A (zh) * 2019-08-08 2021-02-09 辉达公司 用于有效信号处理的芯片资源上的系统动态分配
CN112379985A (zh) * 2020-11-16 2021-02-19 深圳供电局有限公司 一种云边缘计算环境下的计算任务分配方法及装置
CN112468533A (zh) * 2020-10-20 2021-03-09 安徽网萌科技发展股份有限公司 一种面向农产品种植的边缘学习模型在线分割方法和系统
CN116708451A (zh) * 2023-08-08 2023-09-05 广东奥飞数据科技股份有限公司 一种边云协同调度方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104767810A (zh) * 2015-04-07 2015-07-08 中国海洋大学 云-端协同服务系统及云-端协同工作方法
US20180103013A1 (en) * 2016-10-11 2018-04-12 Fujitsu Limited Edge server, encryption communication control method thereof, and terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104767810A (zh) * 2015-04-07 2015-07-08 中国海洋大学 云-端协同服务系统及云-端协同工作方法
US20180103013A1 (en) * 2016-10-11 2018-04-12 Fujitsu Limited Edge server, encryption communication control method thereof, and terminal

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YONG XIAO 等: ""QoE and Power Efficiency Tradeoff for Fog Computing Networks with Fog Node Cooperation""" *
于博文 等: ""移动边缘计算任务卸载和基站关联协同决策问题研究"" *

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110380891B (zh) * 2019-06-13 2022-04-05 中国人民解放军国防科技大学 一种边缘计算服务资源配置方法、装置与电子设备
CN110380891A (zh) * 2019-06-13 2019-10-25 中国人民解放军国防科技大学 一种边缘计算服务资源配置方法、装置与电子设备
CN110471621A (zh) * 2019-07-29 2019-11-19 东南大学 一种异构边缘环境下面向实时数据处理应用的边缘协同存储方法
CN112351213A (zh) * 2019-08-08 2021-02-09 辉达公司 用于有效信号处理的芯片资源上的系统动态分配
US11321798B2 (en) 2019-08-08 2022-05-03 Nvidia Corporation Dynamic allocation of system on chip resources for efficient signal processing
CN112351213B (zh) * 2019-08-08 2022-07-01 辉达公司 用于有效信号处理的芯片资源上的系统动态分配
US11682100B2 (en) 2019-08-08 2023-06-20 Nvidia Corporation Dynamic allocation of system of chip resources for efficient signal processing
CN111090507B (zh) * 2019-11-25 2023-06-09 南京航空航天大学 基于云边融合服务器网络架构的任务调度方法及应用
CN111090507A (zh) * 2019-11-25 2020-05-01 南京航空航天大学 基于云边融合服务器网络架构的任务调度方法及应用
CN110888745A (zh) * 2019-11-29 2020-03-17 中国石油大学(华东) 一种考虑任务传输到达时间的mec节点选择方法
CN111404729A (zh) * 2020-03-04 2020-07-10 腾讯科技(深圳)有限公司 边云协同系统管理方法、装置
CN111404729B (zh) * 2020-03-04 2021-08-31 腾讯科技(深圳)有限公司 边云协同系统管理方法、装置
CN111427679B (zh) * 2020-03-25 2023-12-22 中国科学院自动化研究所 面向边缘计算的计算任务调度方法、系统、装置
CN111427679A (zh) * 2020-03-25 2020-07-17 中国科学院自动化研究所 面向边缘计算的计算任务调度方法、系统、装置
CN111539863A (zh) * 2020-03-26 2020-08-14 重庆特斯联智慧科技股份有限公司 一种基于多源任务线的智能城市运行的方法和系统
CN111475301A (zh) * 2020-04-09 2020-07-31 清华大学 卫星资源分配方法、装置和电子设备
CN111611062B (zh) * 2020-05-06 2022-10-25 南京邮电大学 云边协同分层计算方法及云边协同分层计算系统
CN111611062A (zh) * 2020-05-06 2020-09-01 南京邮电大学 云边协同分层计算方法及云边协同分层计算系统
CN111651276A (zh) * 2020-06-04 2020-09-11 杭州海康威视系统技术有限公司 一种调度方法、装置及电子设备
CN111928334A (zh) * 2020-07-30 2020-11-13 瑞纳智能设备股份有限公司 基于边云协同框架的供热控制方法、系统及计算机设备
CN111984383B (zh) * 2020-08-18 2021-05-14 上海悟景信息科技有限公司 基于云网融合和人工智能的业务数据处理方法及云端平台
CN111984383A (zh) * 2020-08-18 2020-11-24 薛东 基于云网融合和人工智能的业务数据处理方法及云端平台
CN111966496A (zh) * 2020-08-21 2020-11-20 浪潮(北京)电子信息产业有限公司 数据处理方法、装置、系统及计算机可读存储介质
CN111966496B (zh) * 2020-08-21 2022-06-10 浪潮(北京)电子信息产业有限公司 数据处理方法、装置、系统及计算机可读存储介质
CN112217879A (zh) * 2020-09-24 2021-01-12 江苏方天电力技术有限公司 一种基于配电物联网的边缘计算技术和云边协同方法
CN112217879B (zh) * 2020-09-24 2023-08-01 江苏方天电力技术有限公司 一种基于配电物联网的边缘计算技术和云边协同方法
CN112468533B (zh) * 2020-10-20 2023-01-10 安徽网萌科技发展股份有限公司 一种面向农产品种植的边缘学习模型在线分割方法和系统
CN112468533A (zh) * 2020-10-20 2021-03-09 安徽网萌科技发展股份有限公司 一种面向农产品种植的边缘学习模型在线分割方法和系统
CN112379985B (zh) * 2020-11-16 2022-10-14 深圳供电局有限公司 一种云边缘计算环境下的计算任务分配方法及装置
CN112379985A (zh) * 2020-11-16 2021-02-19 深圳供电局有限公司 一种云边缘计算环境下的计算任务分配方法及装置
CN116708451A (zh) * 2023-08-08 2023-09-05 广东奥飞数据科技股份有限公司 一种边云协同调度方法及系统
CN116708451B (zh) * 2023-08-08 2023-10-20 广东奥飞数据科技股份有限公司 一种边云协同调度方法及系统

Also Published As

Publication number Publication date
CN109669768B (zh) 2023-03-14

Similar Documents

Publication Publication Date Title
CN109669768A (zh) 一种面向边云结合架构的资源分配和任务调度方法
Meng et al. Online deadline-aware task dispatching and scheduling in edge computing
Shu et al. Multi-user offloading for edge computing networks: A dependency-aware and latency-optimal approach
Meng et al. Dedas: Online task dispatching and scheduling with bandwidth constraint in edge computing
Ge et al. GA-based task scheduler for the cloud computing systems
CN103309738B (zh) 用户作业调度方法及装置
CN107710200A (zh) 用于并行化smp数据库中的基于散列的运算符的系统和方法
CN114338504A (zh) 一种基于网络边缘系统的微服务部署和路由方法
Tan et al. Joint online coflow routing and scheduling in data center networks
CN112000388B (zh) 基于多边缘集群协同的并发任务调度方法及装置
Mohammed et al. A novel approach of reducing energy consumption by utilizing enthalpy in mobile cloud computing
Mahato et al. On scheduling transactions in a grid processing system considering load through ant colony optimization
CN113472597B (zh) 分布式卷积神经网络细粒度的参数传输调度方法及装置
Tang et al. Dependent task offloading for multiple jobs in edge computing
CN109947574A (zh) 一种基于雾网络的车辆大数据计算卸载方法
CN113015216B (zh) 一种面向边缘服务网络的突发任务卸载与调度方法
Zhao et al. Joint reducer placement and coflow bandwidth scheduling for computing clusters
Xu et al. Online learning algorithms for offloading augmented reality requests with uncertain demands in MECs
CN113190342B (zh) 用于云-边协同网络的多应用细粒度卸载的方法与系统架构
CN109976873A (zh) 容器化分布式计算框架的调度方案获取方法及调度方法
CN112162837B (zh) 一种基于软件定义的边缘计算调度方法及系统
Li et al. Co-Scheduler: A coflow-aware data-parallel job scheduler in hybrid electrical/optical datacenter networks
CN107918676A (zh) 结构化查询的资源优化方法及数据库查询系统
CN106776032A (zh) 分布式块存储的io请求的处理方法和装置
Zheng et al. Joint scheduling of overlapping MapReduce phases: Pair jobs for optimization

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