一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

边缘节点任务调度方法、装置、计算机设备和存储介质与流程

2022-05-27 00:51:43 来源:中国专利 TAG:


1.本技术涉及物联网技术领域,特别是涉及一种边缘节点任务调度方法、装置、计算机设备和存储介质。


背景技术:

2.随着物联网技术的发展,人们可以通过将终端智能设备接入物联网实现“万物互联”,显著提高了生活的便利性。由于设备本身有物理存储空间的限制,通过物联网设备采集的数据,无法长久存储在设备本地,需要通过适当的远距离通信方式,将大量感知数据上传至处理中心。
3.近年来,随着5g(5th generation mobile communication technology,第五代移动通信技术)的发展,移动边缘计算等被应用在了物联网领域中,主要应用方向包括数据存储以及用户任务处理等。如在物联网中,大量终端感知设备将其所获得的感知数据,就近的上传至边缘服务器中。另外,边缘服务器也承担了部分计算任务,与云计算中心实现了分工。云计算中心主要处理计算量巨大且耗时的任务,而边缘端则更适合处理分散且规模有限的用户任务请求。例如,在车联网等应用中,终端主要负责感知数据的采集,而对感知数据的进一步处理,则交由边缘服务器。
4.由于面向物联网的感知数据对传输量、实时性等要求各有不同,在传感信息多样化及大数据量传输条件下,建立高效灵活的边缘计算通信调度模型,保障事件触发类通信中突发敏感数据的实时传输与处理,是工业物联网无线通信领域亟待解决的重要问题。
5.在实现过程中,发明人发现传统技术中至少存在如下问题:目前的边缘节点任务调度方式或者传统方法,存在效率低下等问题。


技术实现要素:

6.基于此,有必要针对上述技术问题,提供一种能够提高效率的边缘节点任务调度方法、装置、计算机设备和存储介质。
7.为了实现上述目的,一方面,本技术实施例提供了一种边缘节点任务调度方法,方法应用于边缘服务器中的调度器;方法包括步骤:
8.获取各终端的待处理边缘节点任务,对各待处理边缘节点任务进行优先级排序,根据优先级排序的结果获取任务调度队列;
9.根据本地计算资源,获取资源调度队列;资源调度队列为多个用于计算卸载的边缘服务器经排序得到;
10.根据预设匹配规则,将任务调度队列和资源调度队列进行匹配,获取待处理边缘节点任务和边缘服务器的匹配结果;预设匹配规则为基于优先级排序的结果、任务预计完成时间、任务截止处理时间和边缘服务器的运行状态确定;
11.根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配。
12.在其中一个实施例中,根据预设匹配规则,将任务调度队列和资源调度队列进行
匹配的步骤包括:
13.将任务调度队列中的各待处理边缘节点任务分别依次与资源调度队列中的边缘服务器匹配;其中,任务调度队列中的待处理边缘节点任务按照优先级依次降序排列;资源调度队列中的边缘服务器按照计算能力依次降序排列。
14.在其中一个实施例中,根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配的步骤还包括:
15.根据匹配结果将完成匹配的任务调度队列中的待处理边缘节点任务卸载到资源调度队列中的边缘服务器中。
16.在其中一个实施例中,将任务调度队列中的各待处理边缘节点任务分别依次与资源调度队列中的边缘服务器匹配的步骤之后还包括步骤:
17.若任务调度队列中存在剩余的待处理边缘节点任务,则获取资源调度队列中运行状态为空闲的边缘服务器;根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器,并将待分配边缘服务器与待卸载边缘节点任务匹配,直至任务调度队列中的待处理边缘节点任务清空;待卸载边缘节点任务为剩余的待处理边缘节点任务中优先级最高的待处理边缘节点任务。
18.在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤包括:
19.将任务预计完成时间小于待卸载边缘节点任务的任务截止处理时间的边缘服务器,确定为待分配边缘服务器。
20.在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤还包括:
21.若满足任务预计完成时间小于任务截止处理时间的边缘服务器的数量为多个,选取任务预计完成时间小于任务截止处理时间、且处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器。
22.在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤还包括:
23.若不存在任务预计完成时间小于任务截止处理时间的边缘服务器,从任务调度队列中删除待卸载边缘节点任务。
24.本技术实施例提供了一种边缘节点任务调度装置,装置应用于边缘服务器中的调度器;装置包括:
25.任务调度队列获取模块,用于获取各终端的待处理边缘节点任务,对各待处理边缘节点任务进行优先级排序,根据优先级排序的结果获取任务调度队列;
26.资源调度队列获取模块,用于根据本地计算资源,获取资源调度队列;资源调度队列为多个用于计算卸载的边缘服务器经排序得到;
27.匹配模块,用于根据预设匹配规则,将任务调度队列和资源调度队列进行匹配,获取待处理边缘节点任务和边缘服务器的匹配结果;预设匹配规则为基于优先级排序的结果、任务预计完成时间、任务截止处理时间和边缘服务器的运行状态确定;
28.调度分配模块,用于根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配。
29.本技术实施例提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述方法的步骤。
30.本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法的步骤。
31.上述技术方案中的一个技术方案具有如下优点和有益效果:
32.通过合理区分任务事件的优先级,提出与任务事件的优先级需求相符合的边缘节点任务调度方法,并根据任务的优先级、边缘服务器的状态等,优化边缘节点的边缘服务器端资源分配,进一步对任务事件进行调度并分配计算资源,降低了处理任务的总消耗时间,在满足时间时间延迟容忍度的前提下提高任务处理的成功率,保障了物联网中任务的实时性处理和边缘节点有限计算资源的合理分配。
附图说明
33.为了更清楚地说明本技术实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
34.图1为一个实施例中边缘节点任务调度方法的应用环境图;
35.图2为一个实施例中边缘节点任务调度方法的第一示意性流程示意图;
36.图3为一个实施例中边缘节点任务调度方法的流程示意图;
37.图4为另一个实施例中边缘节点任务调度步骤的流程示意图;
38.图5为一个实施例中计算机设备的结构示意图。
具体实施方式
39.为了便于理解本技术,下面将参照相关附图对本技术进行更全面的描述。附图中给出了本技术的实施例。但是,本技术可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使本技术的公开内容更加透彻全面。
40.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术。
41.可以理解,本技术所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
42.空间关系术语例如“在...下”、“在...下面”、“下面的”、“在...之下”、“在...之上”、“上面的”等,在这里可以用于描述图中所示的一个元件或特征与其它元件或特征的关系。应当明白,除了图中所示的取向以外,空间关系术语还包括使用和操作中的器件的不同取向。例如,如果附图中的器件翻转,描述为“在其它元件下面”或“在其之下”或“在其下”元件或特征将取向为在其它元件或特征“上”。因此,示例性术语“在...下面”和“在...下”可包括上和下两个取向。此外,器件也可以包括另外地取向(譬如,旋转90度或其它取向),并且在此使用的空间描述语相应地被解释。
43.需要说明的是,当一个元件被认为是“连接”另一个元件时,它可以是直接连接到
另一个元件,或者通过居中元件连接另一个元件。此外,以下实施例中的“连接”,如果被连接的对象之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
44.在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。同时,在本说明书中使用的术语“和/或”包括相关所列项目的任何及所有组合。
45.需要说明的是,边缘节点指在靠近用户的网络边缘侧构建的业务平台,边缘节点可以提供存储、计算、网络等资源,并将部分关键业务应用下沉到接入网络边缘,以减少网络传输和多级转发带来的带宽和时间延迟损耗。计算卸载指将计算量大的任务合理分配给计算资源充足的代理服务器进行处理,再把任务处理结果从代理服务器取回。
46.目前,关于边缘节点任务调度的研究一般是将任务事件设定为彼此平等的关系,但在实际中不同类型的任务的优先级可能具有高低之分,进一步的,任务的调度处理也具有相应的优先级。在低时延场景下处理时间敏感型任务,如灾难突发事件感知、工业场景紧急情况处理等,时间敏感数据流传输时延的可接受范围低于数十毫秒。在这些场景中,可根据任务的紧迫程度划分优先级。本技术考虑任务事件的优先级问题,提出了一种基于任务事件级别判定的边缘节点任务调度方法。本技术通过对任务进行合理的优先级划分,根据任务的优先级、边缘服务器的运行状态等参数,对任务进行调度并分配计算资源,保障任务在截止时间内完成处理的同时平衡了边缘节点的计算负载,能有效降低任务处理的总时间。
47.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
48.本技术提供的边缘节点任务调度方法,可以应用于如图1所示的应用环境中。其中,终端通过网络与边缘服务器通信。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以是多个服务器组成的服务器集群。
49.在一个实施例中,如图2所示,提供了一种边缘节点任务调度方法,方法应用于边缘服务器中的调度器;方法包括步骤:
50.s210,获取各终端的待处理边缘节点任务,对各待处理边缘节点任务进行优先级排序,根据优先级排序的结果获取任务调度队列;
51.具体的,调度器包括任务调度器和资源调度器;在多设备终端、多移动边缘计算节点的场景下,每个终端有一个需要进行计算卸载的待处理边缘节点任务,根据各个终端上待处理边缘节点任务的紧迫程度(例如,任务平均计算价值量)划分优先级并排序;本技术从任务事件具有优先级区分的场景出发,通过将需要上传数据进行计算卸载的待处理边缘节点任务区分重要性,将更重要或者更紧迫的待处理边缘节点任务设定为较高的优先级进行优先上传处理,保证各待处理边缘节点任务在任务截止处理时间内完成任务数据的传输处理;能够使得边缘节点任务调度方法与优先级需求相符合。
52.在一些示例中,终端将需要进行计算卸载的待处理边缘节点任务传输至边缘服务
器端时,将待处理边缘节点任务存储在任务调度器中;任务调度器可以根据待处理边缘节点任务的任务截止处理时间划分优先级,任务截止处理时间越长,任务的优先级越低;将任务截止处理时间短的待处理边缘节点任务设定为较高优先级,并将待处理边缘节点任务按照优先级从高到低排序,获取包含了按优先级排序的各待处理边缘节点任务的任务调度队列;
53.在一些示例中,优先级可以用任务平均计算价值量pn来衡量,任务平均计算价值量pn为待处理边缘节点任务的任务计算价值与任务数据量的比值,即为待处理边缘节点任务的任务计算价值与任务数据量的比值,即为待处理边缘节点任务的任务计算价值与任务数据量的比值,即为任务计算价值,指的是任务处理完成后对解放本地计算资源(边缘服务器)的贡献度;为任务数据量;待处理边缘节点任务在单位时间内需要处理的任务平均计算价值量越大,优先级越高;
54.s220,根据本地计算资源,获取资源调度队列;资源调度队列为多个用于计算卸载的边缘服务器经排序得到;
55.具体的,资源调度器将用于计算卸载的各边缘服务器的服务器计算能力按降序排列,获取资源调度队列,便于后续计算资源的匹配和任务的调度;
56.在一些示例中,对本地计算资源中的边缘服务器排序,例如,根据边缘服务器的服务器计算能力排序,获取资源调度队列s

pma
,其中,0《a≤l,a∈n

,a的数值越小,表示边缘服务器的服务器计算能力越强;s

pm1
表示服务器计算能力最强的边缘服务器;s

pml
表示服务器计算能力最弱的边缘服务器。
57.s230,根据预设匹配规则,将任务调度队列和资源调度队列进行匹配,获取待处理边缘节点任务和边缘服务器的匹配结果;预设匹配规则为基于优先级排序的结果、任务预计完成时间、任务截止处理时间和边缘服务器的运行状态确定;
58.具体的,任务调度队列的待处理边缘节点任务可以依次与资源调度队列中排序的边缘服务器匹配;匹配完成后,任务调度器将任务调度队列中已获得计算资源的待处理边缘节点任务删除;
59.进一步的,若任务调度队列中还存在待处理边缘节点任务,则可以基于优先级排序的结果、任务预计完成时间、任务截止处理时间和边缘服务器的运行状态将任务调度队列和资源调度队列进行匹配,预设匹配规则可以包括:根据优先级排序的结果,可以优先处理优先级高的待处理边缘节点任务,将其确定为待卸载边缘节点任务;将运行状态为空闲的边缘服务器确定为待分配边缘服务器,与待卸载边缘节点任务匹配;待分配边缘服务器处理待卸载边缘节点任务的任务预计完成时间小于任务截止处理时间;在一些示例中,待分配边缘服务器为理完成待处理边缘节点任务次数最少的边缘服务器;通过与优先级需求相符合的任务调度队列和资源调度队列的匹配方式,优化边缘节点的计算资源分配,降低任务处理消耗的时间,提高任务处理的效率;
60.在一些示例中,对于第n个终端的待处理边缘节点任务tn,可以用集合,可以用集合来表示任务信息参数;其中,为任务标志编号;为任务数据量;为待处理边缘节点任务的任务截止处理时间;为待处理
边缘节点任务进行计算卸载时需要请求的通信链路传输带宽;为任务计算价值,指的是任务处理完成后对解放本地计算资源(边缘服务器)的贡献度;为待处理边缘节点任务传输至边缘节点后在任务调度队列中的等待时间。进行优先级排序后的任务调度队列中的待处理边缘节点任务t

pnx
的任务信息参数可以表示为:
[0061][0062]
其中,优先级为x,x∈(0,k)且x∈n

;x的数值越小,任务的优先级越高。依据任务标志编号可将任务处理结果传输回相应的终端。
[0063]
对于集合s中的任一边缘服务器sm,可以用集合,可以用集合表示服务器信息参数;其中,表示服务器编号标志,可以用于区分各边缘服务器;表示服务器计算能力;表示边缘服务器将任务处理结果传回至终端时所提供的发射功率;表示边缘服务器的运行状态,时表示边缘服务器处于繁忙的运行状态,时表示边缘服务器处于空闲的运行状态;表示边缘服务器处理完成待处理边缘节点任务次数(即边缘服务器的被调用次数);根据服务器信息参数,边缘服务器可以获取处理待处理边缘节点任务tn所需的时间(即任务预计完成时间),即对边缘服务器的服务器计算能力降序排列,获取资源调度队列
[0064]
每个待处理边缘节点任务的处理过程是相互独立的,可以视为独立离散事件,在资源约束的条件下最小化边缘计算过程中的时间延迟t,即为单目标条件下的多约束优化问题;根据任务调度队列、资源调度队列、任务预计完成时间et

pnx
和任务截止处理时间等进行待处理边缘节点任务的调度与边缘服务器的分配:
[0065][0066]
其中,边缘计算过程中的时间延迟t可以表示为:
[0067]
t=max{et

pn1
,et

pn2


,et

pnk
}
[0068]
边缘计算过程中的时间延迟t为任务预计完成时间et

pnx
的最大值,其中,忽略了获取et

pnx
的时间及任务调度时间;可以将运行状态为空闲的边缘服务器确定为待分配边缘服务器;待分配边缘服务器处理待卸载边缘节点任务的任务预计完成时间et

pnx
小于任务截止处理时间可以将处理完成待处理边缘节点任务次数最少的边缘服务器
确定为待分配边缘服务器;
[0069]
在一些示例中,将任务调度队列中优先级排序为前l的待处理边缘节点任务依次与资源调度队列中按服务器计算能力降序排列的l个边缘服务器匹配。匹配完成后,任务调度器将获得计算资源的待处理边缘节点任务从任务调度队列中删除,获得更新后的任务调度队列。若任务调度队列中还存在待处理边缘节点任务,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确认为待卸载边缘节点任务;对资源调度队列中的边缘服务器进行运行状态检测;若检测到资源调度队列中存在唯一运行状态为空闲的边缘服务器(即待分配边缘服务器)时,获取待卸载边缘节点任务的任务预计完成时间,判断任务预计完成时间是否在任务截止处理时间范围之内,若任务预计完成时间小于任务截止处理时间,即:
[0070][0071]
则将待卸载边缘节点任务与待分配边缘服务器匹配;待卸载边缘节点任务被调度至待分配边缘服务器处理时即从任务调度队列中删除;
[0072]
进一步的,对资源调度队列中的边缘服务器进行运行状态检测,若检测到资源调度队列中存在多个运行状态为空闲的边缘服务器,分别获取各运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间;在任务预计完成时间小于任务截止处理时间的条件下,即:
[0073][0074]
选取处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器,将待卸载边缘节点任务与待分配边缘服务器匹配;
[0075]
进一步的,若任务预计完成时间大于任务截止处理时间,则将待卸载边缘节点任务仍置于任务调度队列中,对资源调度队列中的边缘服务器进行运行状态检测,并将运行状态为空闲的边缘服务器的任务预计完成时间与任务截止处理时间比较,直至选取满足任务预计完成时间小于任务截止处理时间的边缘服务器为待分配边缘服务器并完成匹配;若所有运行状态为空闲的边缘服务器都不满足任务预计完成时间小于任务截止处理时间,则放弃待卸载边缘节点任务的处理并从任务调度队列中删除;
[0076]
进一步的,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,用于下一轮匹配;将任务调度队列和资源调度队列进行匹配,直至清空任务调度队列中的待处理边缘节点任务。
[0077]
s140,根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配。
[0078]
具体的,待处理边缘节点任务的任务数据传输到匹配的边缘服务器后,边缘服务器开始待处理边缘节点任务的处理;边缘服务器将待处理边缘节点任务处理完成后,获取任务处理结果并将任务处理结果传输回相应的终端。
[0079]
在一些示例中,可以用边缘服务器sm的服务器编号标志区分各边缘服务器;任务调度队列中的待处理边缘节点任务和资源调度队列中的边缘服务器匹配后,任务调度器将任务调度队列中已获得计算资源的待处理边缘节点任务删除,获得更新后的任务调度队列,继续匹配待处理边缘节点任务和边缘服务器,直至清空任务调度队列中的待处理边
缘节点任务;可以依据待处理边缘节点任务tn的任务标志编号获取任务处理结果并将任务处理结果传输回相应的终端;
[0080]
在其中一个实施例中,根据预设匹配规则,将任务调度队列和资源调度队列进行匹配的步骤包括:
[0081]
将任务调度队列中的各待处理边缘节点任务分别依次与资源调度队列中的边缘服务器匹配;其中,任务调度队列中的待处理边缘节点任务按照优先级依次降序排列;资源调度队列中的边缘服务器按照计算能力依次降序排列。
[0082]
具体的,任务调度队列的待处理边缘节点任务可以依次与资源调度队列中服务器计算能力降序排列的边缘服务器匹配;
[0083]
在一些示例中,各终端一共有k个待处理边缘节点任务;集合t={t1,t2,t3,

,tn,

,tk}可以表示k个待执行计算卸载至边缘服务器端的待处理边缘节点任务,其中参数n满足0《n≤k,n∈n

;集合s={s1,s2,

,sm…
,s
l
}可以表示边缘节点的l个边缘服务器;任务调度器对由终端发送来的待处理边缘节点任务按照优先级递减的顺序进行排列,形成待处理的任务调度队列d{t

pn1
,t

pn2


,t

pnn


,t

pnk
},其中下角标pnk代表对应于第n个终端的任务,其优先级排序为k;t

pn1
代表优先级最高的待处理边缘节点任务,即任务平均计算价值量pn最高的任务;t

pnk
代表优先级最低的待处理边缘节点任务,即任务平均计算价值量pn最低的任务;经过优先级排序的待处理边缘节点任务原有的参数值不受影响。进行优先级排序后的任务t

pnx
的优先级为x,x∈(0,k)且x∈n

;x的数值越小,任务的优先级越高;根据边缘服务器的服务器计算能力降序排列,获取资源调度队列s

pma
;其中,0《a≤l,a∈n

,a的数值越小,表示边缘服务器的服务器计算能力越强;s

pm1
表示服务器计算能力最强的边缘服务器;s

pml
表示服务器计算能力最弱的边缘服务器;任务调度队列中优先级排序为前l的待处理边缘节点任务可以依次与资源调度队列中按服务器计算能力降序排列的边缘服务器匹配。
[0084]
在其中一个实施例中,将任务调度队列中的各待处理边缘节点任务分别依次与资源调度队列中的边缘服务器匹配的步骤之后还包括步骤:
[0085]
若任务调度队列中存在剩余的待处理边缘节点任务,则获取资源调度队列中运行状态为空闲的边缘服务器;根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器,并将待分配边缘服务器与待卸载边缘节点任务匹配,直至任务调度队列中的待处理边缘节点任务清空;待卸载边缘节点任务为剩余的待处理边缘节点任务中优先级最高的待处理边缘节点任务。
[0086]
具体的,任务预计完成时间包括:待处理边缘节点任务在任务调度队列中的等待时间,待处理边缘节点任务卸载到待分配边缘服务器的通信时间,待分配边缘服务器处理待处理边缘节点任务的任务处理时间;其中,待处理边缘节点任务在任务调度队列中的等待时间指的是待处理边缘节点任务传输至边缘节点后处于任务调度队列中的等待时间;待处理边缘节点任务卸载到待分配边缘服务器的通信时间指的是数据由终端传输至边缘服务器的通信过程中消耗的传输时间;待分配边缘服务器处理待处理边缘节点任务的任务处理时间指的是从待分配边缘服务器开始处理待处理边缘节点任务到处理完成所需的时间;
[0087]
进一步的,可以通过数据传输链路模型获取待处理边缘节点任务卸载到待分配边
缘服务器的通信时间:根据终端将待处理边缘节点任务的任务数据传输至边缘服务器时提供的发射功率,获取任务数据的传输速率,进一步获取即待处理边缘节点任务卸载到待分配边缘服务器的通信时间;
[0088]
在一些示例中,在任务数据的传输过程中需要通过无线信道进行通信传输,通信链路传输带宽为b,同一时刻传输的数据所请求的传输带宽不超过通信链路的最大带宽,即根据香农定理,在有限带宽、具有噪声干扰的信道环境下,数据传输速率极限值v
max
可表示为:
[0089]vmax
=blog2(1 s/n0)
[0090]
式中,s/n0为信噪比,s为信道内信号传输功率,n0为信道内噪声功率;待处理边缘节点任务tn在通信过程中由终端传输至边缘计算服务器的传输速率可表示为:
[0091][0092]
式中,β为待处理边缘节点任务tn所处的第n个终端与边缘节点间的信道增益,β为一个随机的独立同分布变量;为第n个终端将第n个待处理边缘节点任务传输至边缘服务器时提供的发射功率;m
p
为终端所能提供的最大发射功率,待处理边缘节点任务卸载到待分配边缘服务器的通信时间t
rans
可以表示为任务数据在通信链路中的传输速率会受到发射功率的影响,由于边缘服务器的发射功率较大,边缘服务器将任务处理结果传输回终端的过程中的传输速率较大,所消耗的时间可以忽略不计。在整个计算卸载的过程中待处理边缘节点任务卸载到待分配边缘服务器的通信时间为:
[0093][0094]
任务预计完成时间et

pnx
可以表示为:
[0095][0096]
式中,为优先级为x的待处理边缘节点任务t

pnx
在任务调度队列中的等待时间,为待处理边缘节点任务t

pnx
的任务数据量;s

pma
为资源调度器将各边缘服务器的计算能力降序排列后获取的资源调度队列,资源调度队列中包含服务器计算能力根据边缘服务器处理待处理边缘节点任务tn所需的时间为待分配边缘服务器处理待处理边缘节点任务t

pnx
的任务处理时间为
[0097]
在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤包括:
[0098]
将任务预计完成时间小于待卸载边缘节点任务的任务截止处理时间的边缘服务器,确定为待分配边缘服务器。
[0099]
具体的,将满足任务预计完成时间小于任务截止处理时间的边缘服务器与待卸载边缘节点任务匹配,能够满足边缘节点任务调度的时间延迟容忍度;
[0100]
在一些示例中,获取待分配边缘服务器处理任务调度队列中优先级排序第一的待
处理边缘节点任务(即待卸载边缘节点任务)的任务预计完成时间,判断任务预计完成时间是否在任务截止处理时间范围之内,若任务预计完成时间小于任务截止处理时间,即:
[0101][0102]
则将待卸载边缘节点任务与待分配边缘服务器匹配;
[0103]
在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤还包括:
[0104]
若满足任务预计完成时间小于任务截止处理时间的边缘服务器的数量为多个,选取任务预计完成时间小于任务截止处理时间、且处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器。
[0105]
具体的,对资源调度队列中的边缘服务器进行运行状态检测,若检测到资源调度队列中存在多个运行状态为空闲的边缘服务器,分别获取各运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间;在任务预计完成时间小于任务截止处理时间的条件下,选取处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器,将待卸载边缘节点任务与待分配边缘服务器匹配;能够在满足边缘节点任务调度的时间延迟容忍度的前提下,充分利用本地计算资源,提高任务处理的成功率。
[0106]
在一些示例中,在满足任务预计完成时间小于任务截止处理时间的条件下,选择处理完成待处理边缘节点任务次数最少的边缘服务器处理待卸载边缘节点任务。即检测到同时有多个边缘服务器的运行状态为空闲状态,选取的待分配边缘服务器应满足:
[0107][0108]
在一些示例中,若任务预计完成时间大于任务截止处理时间,则将待卸载边缘节点任务仍置于任务调度队列中,对资源调度队列中的边缘服务器进行运行状态检测,并将运行状态为空闲的边缘服务器的任务预计完成时间与任务截止处理时间比较,直至选取满足任务预计完成时间小于任务截止处理时间的边缘服务器为待分配边缘服务器并完成匹配。
[0109]
在其中一个实施例中,根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器的步骤还包括:
[0110]
若不存在任务预计完成时间小于任务截止处理时间的边缘服务器,从任务调度队列中删除待卸载边缘节点任务。
[0111]
具体的,对于待卸载边缘节点任务,若所有边缘服务器匹配后都不满足任务预计完成时间小于任务截止处理时间,则放弃待卸载边缘节点任务的处理并从任务调度队列中删除,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,用于下一轮匹配;
[0112]
在一些示例中,对于待卸载边缘节点任务,若所有边缘服务器都不满足任务预计完成时间小于任务截止处理时间,即不满足下式:
[0113][0114]
则放弃待卸载边缘节点任务的处理并从任务调度队列中删除,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,开始下一轮匹
配;
[0115]
在其中一个实施例中,根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配的步骤还包括:
[0116]
根据匹配结果将完成匹配的任务调度队列中的待处理边缘节点任务卸载到资源调度队列中的边缘服务器中。
[0117]
具体的,根据匹配结果将完成匹配的任务调度队列中的待处理边缘节点任务传输到资源调度队列中的边缘服务器中,并将已获得计算资源的待处理边缘节点任务从任务调度队列中删除;边缘服务器获取待处理边缘节点任务的任务数据后进行处理;将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为用于下一轮匹配的待卸载边缘节点任务,对资源调度队列中的边缘服务器的运行状态进行检测,以循环根据任务的优先级、边缘服务器的运行状态、任务预计完成时间与任务截止处理时间的关系进行待处理边缘节点任务的调度与边缘服务器的分配。
[0118]
在一些示例中,任务调度器根据匹配结果将完成匹配的任务调度队列中的待处理边缘节点任务传输到资源调度队列中的边缘服务器中,并将已获得计算资源的待处理边缘节点任务从任务调度队列中删除;
[0119]
在一些示例中,任务调度队列中降序排列的待处理边缘节点任务可以依次与资源调度队列中服务器计算能力降序排列的边缘服务器匹配;匹配完成后,任务调度器将任务调度队列中已获得计算资源的待处理边缘节点任务删除;若任务调度队列中还存在待处理边缘节点任务,对资源调度队列中的边缘服务器进行运行状态检测;若检测到资源调度队列中存在唯一运行状态为空闲的边缘服务器(即待分配边缘服务器)时,获取待分配边缘服务器处理任务调度队列中优先级排序第一的待处理边缘节点任务(即待卸载边缘节点任务)的任务预计完成时间,判断任务预计完成时间是否在任务截止处理时间范围之内,若任务预计完成时间小于任务截止处理时间,则将待卸载边缘节点任务与待分配边缘服务器匹配;待卸载边缘节点任务被调度至待分配边缘服务器处理时即从任务调度队列中删除,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,用于下一轮匹配;
[0120]
进一步的,对资源调度队列中的边缘服务器进行运行状态检测,若检测到资源调度队列中存在多个运行状态为空闲的边缘服务器,分别获取各运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间;在任务预计完成时间小于任务截止处理时间的条件下,选取处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器,将待卸载边缘节点任务与待分配边缘服务器匹配;
[0121]
进一步的,若任务预计完成时间大于任务截止处理时间,则将待卸载边缘节点任务仍置于任务调度队列中,对资源调度队列中的边缘服务器进行运行状态检测,并将运行状态为空闲的边缘服务器的任务预计完成时间与任务截止处理时间比较,直至选取满足任务预计完成时间小于任务截止处理时间的边缘服务器为待分配边缘服务器并完成匹配;若所有运行状态为空闲的边缘服务器都不满足任务预计完成时间小于任务截止处理时间,则放弃待卸载边缘节点任务的处理并从任务调度队列中删除,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,用于下一轮匹配;
[0122]
进一步的,根据更新后的任务调度队列和资源调度队列,继续匹配待处理边缘节
点任务和边缘服务器,直至清空任务调度队列中的待处理边缘节点任务。通过在边缘节点的边缘服务器侧设置任务调度器和资源调度器,任务调度器将传输至边缘节点一侧的任务按照优先级由高至低排序,暂存于任务调度队列中;资源调度器获取本地计算资源,将边缘服务器进行排序,用于后续将计算资源分配给相应的任务。根据任务的优先级、边缘服务器调用次数、任务预计完成时间和任务截止处理时间等参数为依据进行任务调度,合理地为各个待处理边缘节点任务分配计算资源,从而降低待处理边缘节点任务的处理时间,在满足时间延迟容忍度的前提下提高任务处理的成功率。
[0123]
在一些示例中,如图3所示,终端设备通过无线通信链路向边缘节点的边缘服务器发送卸载请求,设定发射功率,发送任务(待处理边缘节点任务),并接收任务处理结果;无线通信链路能够在终端设备和边缘服务器端之间进行数据传输,获取传输时延(即计算过程中的时间延迟);边缘服务器端能够将接收的任务与本地计算资源(边缘服务器)分别暂存于任务调度队列及资源调度队列进行优先级排序,任务与本地计算资源按照优先级、服务器调度次数等参数进行循环匹配,根据匹配结果处理任务,并回传任务处理结果。
[0124]
在一些示例中,如图4所示,对待处理边缘节点任务进行优先级排序获取任务调度队列,对边缘服务器进行服务器计算能力排序获取资源调度队列;将任务调度队列中的待处理边缘节点任务和资源调度队列中的边缘服务器匹配;将获得计算资源的待处理边缘节点任务从任务调度队列中删除,更新任务调度队列;
[0125]
若任务调度队列为空,则结束边缘节点任务调度;否则,将更新后的任务调度队列中优先级最高的待处理边缘节点任务确定为待卸载边缘节点任务,检测资源调度队列中边缘服务器的服务器状态;若检测到运行状态为空闲的边缘服务器,获取任务预计完成时间;若任务预计完成时间小于任务截止处理时间,则判断运行状态为空闲的边缘服务器是否唯一;若运行状态为空闲的边缘服务器唯一,则将唯一运行状态为空闲的边缘服务器与待卸载边缘节点任务匹配,否则选择被调用次数最少的运行状态为空闲的边缘服务器与待卸载边缘节点任务匹配;返回将获得计算资源的待处理边缘节点任务从任务调度队列中删除,更新任务调度队列;
[0126]
若任务预计完成时间大于任务截止处理时间,则检测资源调度队列中的其他边缘服务器,若其他边缘服务器任务预计完成时间小于任务截止处理时间,则将待处理边缘节点任务保留在任务调度队列中;若其他边缘服务器任务预计完成时间均大于任务截止处理时间,将待卸载边缘节点任务从任务调度队列中删除,更新任务调度队列;
[0127]
回到上述判断任务调度队列是否为空的步骤,循环执行其后的边缘节点任务调度过程,直至若任务调度队列为空。
[0128]
应该理解的是,虽然图2和图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0129]
本技术实施例提供了一种边缘节点任务调度装置,装置应用于边缘服务器中的调
度器;装置包括:
[0130]
任务调度队列获取模块,用于获取各终端的待处理边缘节点任务,对各待处理边缘节点任务进行优先级排序,根据优先级排序的结果获取任务调度队列;
[0131]
资源调度队列获取模块,用于根据本地计算资源,获取资源调度队列;资源调度队列为多个用于计算卸载的边缘服务器经排序得到;
[0132]
匹配模块,用于根据预设匹配规则,将任务调度队列和资源调度队列进行匹配,获取待处理边缘节点任务和边缘服务器的匹配结果;预设匹配规则为基于优先级排序的结果、任务预计完成时间、任务截止处理时间和边缘服务器的运行状态确定;
[0133]
调度分配模块,用于根据匹配结果进行待处理边缘节点任务的调度与边缘服务器的分配。
[0134]
在其中一个实施例中,匹配模块用于将任务调度队列中的各待处理边缘节点任务分别依次与资源调度队列中的边缘服务器匹配;其中,任务调度队列中的待处理边缘节点任务按照优先级依次降序排列;资源调度队列中的边缘服务器按照计算能力依次降序排列。
[0135]
在其中一个实施例中,调度分配模块还用于根据匹配结果将完成匹配的任务调度队列中的待处理边缘节点任务卸载到资源调度队列中的边缘服务器中。
[0136]
在其中一个实施例中,匹配模块还用于若任务调度队列中存在剩余的待处理边缘节点任务,则获取资源调度队列中运行状态为空闲的边缘服务器;根据运行状态为空闲的边缘服务器处理待卸载边缘节点任务的任务预计完成时间,选取出待分配边缘服务器,并将待分配边缘服务器与待卸载边缘节点任务匹配,直至任务调度队列中的待处理边缘节点任务清空;待卸载边缘节点任务为剩余的待处理边缘节点任务中优先级最高的待处理边缘节点任务。
[0137]
在其中一个实施例中,匹配模块还用于将任务预计完成时间小于待卸载边缘节点任务的任务截止处理时间的边缘服务器,确定为待分配边缘服务器。
[0138]
在其中一个实施例中,匹配模块还用于若满足任务预计完成时间小于任务截止处理时间的边缘服务器的数量为多个,选取任务预计完成时间小于任务截止处理时间、且处理完成待处理边缘节点任务次数最少的边缘服务器为待分配边缘服务器。
[0139]
在其中一个实施例中,匹配模块还用于若不存在任务预计完成时间小于任务截止处理时间的边缘服务器,从任务调度队列中删除待卸载边缘节点任务。
[0140]
关于边缘节点任务调度装置的具体限定可以参见上文中对于边缘节点任务调度方法的限定,在此不再赘述。上述边缘节点任务调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0141]
本技术实施例提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述方法的步骤。
[0142]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是边缘服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接
口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储边缘节点任务调度数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种边缘节点任务调度方法。
[0143]
本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0144]
本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法的步骤。
[0145]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0146]
在本说明书的描述中,参考术语“有些实施例”、“其他实施例”、“理想实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特征包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性描述不一定指的是相同的实施例或示例。
[0147]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0148]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献