边缘计算第二版施巍松——第七章 边缘计算资源调度

news/2024/5/19 13:43:06 标签: 边缘计算, 人工智能

第7章 边缘计算资源调度

进行合理的边缘计算资源调度能够满足任务处理性能需求和利益最大化的目的

7.1 资源调度概述

7.1.1 背景

边缘计算场景下,用户会产生大量的数据或者应用请求,由于请求类型和需求的不同,边缘设备的计算和存储能力也不同,且通信和网络资源在不同应用场景下各异。
边缘计算的资源调度包括以下两个层面:

  • 1.以任务为中心的调度:用户的任务需要根据本身需求进行一个最优决策:本地处理还是调度到边缘服务器处理。由于任务的不同资源需求和目标需求,调度到边缘服务上要付出额外的能量、通信和时延等代价。
  • 2.以资源为中心的调度:由于边缘资源有限,且用户请求的负载动态变化,合理分配和配置边缘资源,包括边缘资源的部署、云边的协同计算、边缘之间的迁移计算以及边缘系统中服务的智能放置,以适应用户应用需求的变化并提高资源利用率和用户的服务质量需求,是边缘计算中的另一重要挑战。

7.1.2 应用场景

(1) 无人机:低成本四旋翼无人机:两个方向——将无人机视为用户,无人机在一些计算密集型应用中自身资源有限,无法满足任务需求,因此向无线网络边缘的蜂窝基站使用类似云的计算服务;将无人机视为边缘计算资源,利用无人机的移动便捷性改善地面边缘设备的连通性,与传统的边缘设备协作,形成无人机支持的边缘计算系统
(2)车联网:智能车的环境中有大量计算密集型的程序,本身的计算资源无法满足应用的低时延、高精度的需求,大量车辆数据也不能完全传到云端进行,因此边缘计算也是提高其计算能力的一种方式。两个方向——将车视为用户,将车辆上的任务调度到边缘上计算;将车辆视为边缘资源,吧车俩作为边缘计算资源的补充,或者在车辆额外配置边缘服务器
(3)视频业务:视频业务具有计算密集和数据量大等特点,由于智能设备体积小,存储和计算能力有限,如果在本地处理将是非常低效的,传到云端将容易耗尽网络带宽,并产生较大延迟。因此将视频业务调度到边缘——VideoEdge、GigaSight、LEAVEA都是将视频业务谢灶到边缘上计算
(4)智慧城市:用城市的数字资源来管理城市,其建设所依赖 的数据是多样性且异构化的,且涉及用户的隐私,将数据和应用请求在边缘计算模型中处理是一个很好的解决方案
(5)智慧健康
(6)智能制造
(7)智能家居

7.1.3 架构

1.“用户-边缘”架构
一般包含用户层和边缘层,各层可以进行层间通信,各层的组成决定了层级的计算能力和存储能力
(1)用户层:终端层,由各种IoT设备组成。在用户层IoTa设备不仅具备感知能力,还具有一定的存储和计算能力。IoT设备不断地收集各类数据,可以直接将数据上传,也可以进行一定的处理,然后作为应用服务的输入上传。
(2)边缘层:由网络边缘节点构成,广泛分布在终端设备与云计算中心之间。一般来说,边缘层 与接入点部署在一起。边缘曾的边缘节点比终端由更加强大的存储和计算能力。为了更加有效地利用边缘层地资源、如何对计算任务进行分配和调度是值得研究的问题。边缘计算层通过合理部署和调配网络边缘测的计算和存储能力,实现基础的服务响应

2."用户-边缘-云”架构
(1)用户层:IoT
(2)边缘层:边缘层接受、处理和转发来自用户层的数据流,边缘层包括边缘网关、边缘控制器、边缘云、边缘传感器、边缘云、边缘传感器等计算存储和时间敏感网络交换机、路由器等网络设备,封装了边缘侧的计算、存储和网络资源。
边缘层还包含边缘管理器软件、主要提供业务编排或直接调用的能力
(3)云计算层:云计算层由强大的计算中心和存储单元构成,边缘层通过核心网连入云计算层。在用户-边缘-云的联合计算架构中,云计算是最强大的数据处理中心,边缘层的上报数据将在云计算中心长期储存,边缘层无法处理的分析任务和综合全局信息的处理任务仍需要云计算中心完成。
云计算层提供决策支持服务,以及智能化生产、网络化协同、服务化延伸和个性化定制等特定领域的应用服务程序
云计算层从边缘层接受数据流,并向边缘层以及通过边缘层向用户层发出控制信息,从全局范围内对资源调度和现场生产过程进行优化。除此之外,云计算中心还可以根据网络资源分布动态调整边缘计算层的部署策略和算法

3.“边缘-云”架构
根据用户设备的环境可以确定数据分配和传输方法,采用基于边缘加速的网页平台改善传统云计算模型下较长响应时间的问题。
就解决云迁移在移动云环境中的能耗问题,边缘计算中,边缘计算设备借助其一定的计算资源,实现将云中心部分或者全部任务前置到边缘层执行。这种架构便是“边缘-云”
移动端的网购变得流形,因此缩短应用延时,改善用户体验的需求日益增加,如果将购物车内的产品视图的更新操作从云中心迁移到边缘节点,这样可以降低用户请求的响应延时,购物车的数据作为缓存放置在边缘节点。
大多数边缘应用,最优的处理结果不一定是必需的;反之,次优化的处理结果已经满足用户对该类应用的需求,为此提出了面向移动边缘计算的新优化维度——质量评价(quality-of-result,QoR),提出了MobiQoR架构,以期权衡边缘应用中对响应时间和额外能耗的需求,在该应用中降低部分QoR可以改善相应和能耗问题,QoR取决于相应算法,对于目标检测QoR可以定义为对对象或者模式的识别百分比

7.1.4 性能指标

边缘计算资源调度中,降低开销作为目标的研究也很多,这部分是将时延和能耗建模作为边缘系统开销,因此开销是一个综合性能指标,相依地,边缘效用和受益也是各种服务只想指标建模得到的综合指标,归根到底是为了提高用户的服务质量,减少边缘学习通的任务处理成本。

1.时延
包括三个部分:(1)任务从用户到边缘的传输时间(2)任务在边缘处理的时间(3)计算结果从边缘返回用户的时间,当前的研究思路一般是针对具体应用场景建立时延模型,并考虑各种限制条件,形成以降低时延为目标的优化问题

2.能耗
能耗包括三个部分:(1)任务在用户本地计算产生的能耗(2)任务传输到边缘产生的能耗(3)任务在边缘计算完成产生的能耗
有以降低能耗作为主要目标的研究,也有大量研究成果同时以降低时延和能耗为目标。还有部分工作考虑了用户设备可以进行无线能量采集,从而提高设备的工作时间

3.开销
在满足用户服务质量条件下建立的综合性能指标。当任务卸载处理时,其开销包括能耗开销(传输和处理任务)、利用通信信道进行传输的开销以及在边缘处理任务的开销

4.效用
概念一般指边缘用户在某一资源调度方案下,获得对所关心的性能指标的满意度,效用用效用函数来表示,根据不同的性能需求,效用函数由不同的服务质量参数来表示

5.收益
一般是从边缘服务商提供的角度来衡量的。边缘服务提供商位用户部署、分配和调度边缘资源,其利润收益是用户支付汇总和能耗等运营成本的差额,这一性能指标多为资源配置研究工作中。从边缘资源提供者的角度出发,在满足用户一定服务体验的条件下,建立最大化资源提供者的收益的问题模型。

6.资源利用率
也是从边缘资源提供商的角度进行衡量的。因为边缘服务器资源相对于云服务器资源是很有限的,随着用户的增加,边缘资源的利用率显得尤为重要。选择以资源使用量和资源总量的比值作为优化目标,结合具体应用场景,建立优化模型并解决。

7.2 资源调度的研究方向

7.2.1 卸载决策

用户层的设备大多是资源受限的,需要完全或者部分地将计算密集型任务卸载到资源更充足的地方进行处理,卸载的目的地可以是有空闲资源的其他用户设备,也是计算能力更加强大的边缘层中的服务器,或者更进一步卸载到云计算层的计算中心。计算卸载主要是解决用户层各种设备在资源存储、计算性能以及能效等方面的不足。
作为计算卸载问题中的重要研究方向之一,卸载决策研究是用户终端要不要卸载、卸载多少的问题。按照计算任务是否可分,卸载决策又分0/1卸载和部分卸载。
0/1卸载是指将计算任务要么全部在本地处理、要么全部卸载到其他地方处理,0表示任务全部在本地处理,1表示任务全部进行卸载处理。
当任务全部在本地处理时,任务完成的时间、能耗、开销仅仅由本地处理的时间、能耗、开销决定,并且仅仅受本地处理能力的影响。当任务全部卸载时,任务完成的时间通常包括数据传输时间和数据处理时间两部分。同样的,任务完成的能耗包括数据传输能耗和数据处理能耗。
部分卸载是指一部分在本地处理,另一部分卸载到其他地方处理。部分卸载的研究是确定一个完整任务中有多少可以卸载到其他地方进行处理,通常会设置一个百分比,称为“卸载率”,表示卸载任务数据量占整个任务数据量的比重。
部分卸载涉及两个部分任务处理,其一是本地处理部分,其二是卸载的目的地处理部分。

7.2.2 资源分配

作为计算卸载问题中另一个重要的研究问题,资源分配研究是在计算卸载的过程中,如好人合理分配边缘系统中的资源完成卸载、任务处理。因为在无线网络资源有限的条件下,其能承载的的业务能力也是有限的,通过高效的资源分配来提高边缘计算系统的网络吞吐量和资源利用率,实现为更多用户服务。
1.通信资源
通信资源是指边缘计算网络中的无线资源,在任务卸载中需要用其进行任务数据传输。对通信资源的研究一般分为功率控制、信道分配、带宽分配等。功率控制研究的是用户应该采用多大的发射功率进行数据传输和卸载。信道分配是研究每个用户可以得到多少无线信道进行任务数据传输。正交信道的传输信道之间不会相互影响,非正交反之。5G中这种干扰可以在接收端通过串行干扰消除技术消除。带宽分配是研究给一个无线信道分配 多大的带宽。

2.计算资源
用户的计算任务需要通过多少计算资源进行处理。研究计算资源分配即是决定对于用户的摸个计算任务到底要分配多少CPU周期数、多少计算资源块。 当处理计算任务时,分配的CPU周期数越多,处理越快,能耗就越高

3.存储资源
存储资源用于将一些热点内容缓存到网络边缘,可以减少服务响应时间以及减少网络负担。存储资源 对于扩展边缘计算在服务能力中的优势十分重要。多于存储资源的分配研究主要包括缓存内容选择和缓存位置选择。

7.2.3 资源配置

由于用户的请求负载随时间而变化,边缘计算系统经历者工作量的波动、这些波动的负载可能导致资源配置过度提供或者配置不足等问题。配置过度为特定用户分配的资源大于用户需求的事迹负载,此时边缘系统可能需要付出不必要的代价。或者用户体验差甚至无法完成用户任务,从而导致用户的损失。资源配置的研究可分为两类:任务分配,从用户角度出发进行被动的资源配置,边缘计算中任务分配问题是指用户任务和边缘资源之间的最佳放置和匹配计划;资源配置,从资源提供者的角度出发进行主动的资源配置。

1.任务分配
为了建立小规模的边缘计算服务缩短用户的任务延迟,Yang对边缘计算中任务完成建立时延模型,并分析不同设备的能耗,然后研究如何将Cloudlet,布置在边缘网络上,并将每个请求的任务分配给Cloudlet和公共云。这一类研究在边缘资源有线下多以减少任务延迟为目标,研究如何将资源分配给任务,以达到理想的用户体验。

2.资源放置
有一份研究重点是如何放置边缘服务或者边缘服务器。边缘服务的位置和数量对边缘计算网络的成本和用户的平均迟延都有至关重要的影响。根据上述研究工作,从性能度量的角度来看,大多数研究并不是同时考虑资源配置问题中的所有 OoS 参数,例如,一些方法侧重于延迟、能耗和成本,而另一些方法则侧重于吞吐量和资源利用率等。从研究技术来看,大多数资源配置方法采用集中式算特别是采用基于启发式算法的研究最多。从研究内容的角度来看,服务放置的研究最热随着无服务器计算架构的引人,未来应该会有更多研究投入到基于无服务器计算的边缘资源配置中

7.3 资源调度的主要技术

资源调度的主要方法是否需要控制中心收集全局信息分为集中式方法和分布式方法,集中式资源调度方法包括传统的凸优化、近似算法、启发式算法、智能算法、机器学习算法等。分布式资源调度用到的方法包括:博弈论、匹配理论、拍卖方法、联邦学习、区块链等。

7.4 边缘计算卸载模型 LabC

LabC模型联合考虑用户对于时延、计算加速、网络带宽和计算开销的需求,能知道IoT用户根据当前网络通信与计算资源状态及其QoE需求决定是否卸载计算任务。
L=latency 表示计算任务完成处理所需要的时间
a=acceleration,指当计算任务卸载到边缘服务器时带来的计算加速
b=bandwidth,指当前网络中可用的带宽资源
C=cost,指完成计算任务处理需要的开销,包括能量消耗、计算与通信资源消耗、处理成本等

7.4.1 LabC系统模型

在一个典型的边缘计算卸载场景中,IoT设备将产生各种各样的计算任务。

7.5 基于区块链的边缘资源分配问题

区块链是一个分布式账本,一种通过去中心化、去信任的方式集体维护一个可靠数据库的技术方案


http://www.niftyadmin.cn/n/5370509.html

相关文章

Thinkpad E550 安装 Ubuntu

参考:使用U盘安装Ubuntu20.04 Thinkpad E550 使用 enterf1进入 bios, 使用 f12 进入 boot 选项。不知道这个和系统有啥关系,感觉之前不是这样。。。 下载镜像 下载镜像 22.04 可以下载相应的 torrent 文件,然后用 百度网盘或者…

C++:哈希表的线性探测(模拟实现)

哈希表的增删查改的效率很高,是O(1),比搜索二叉树要快很多。那么他是怎么实现的呢?他与计数排序有点相似就是通过映射的方式实现。不过在哈希表中不需要开这么的数据,它只需要开一部分空间然后使用除留余数…

mysql 中文编码问题

前言 最近在学springboot整合mybatisplus技术,用到mysql数据库,然后发现在windows下插入数据表会出现中文乱码现象 (例如 “我是谁” 在数据库中就成了 “???”) windows show variables like %char%;建表时, 设置默认charset为gbk create table u…

P8772 [蓝桥杯 2022 省 A] 求和--2024蓝桥杯冲刺省一

点击跳转例题 思路&#xff1a;简单数乘法结合律&#xff0c;然后前缀和的模板题&#xff1a; 前缀和的知识&#xff1a; 本题的代码&#xff1a;前缀和知识--模板&#xff1b; #include <bits/stdc.h> #define int long long //(有超时风险) #define PII pair<in…

第九个知识点:内部对象

Date对象: <script>var date new Date();date.getFullYear();//年date.getMonth();//月date.getDate();//日date.getDay();//星期几date.getHours();//时date.getMinutes();//分date.getSeconds();//秒date.getTime();//获取时间戳&#xff0c;时间戳时全球统一&#x…

小程序配置服务器域名流程指南

一、前期准备 1. 注册并备案域名 注册域名:首先,您需要在合法合规的域名注册商处注册一个尚未被他人占用的域名,确保其易于记忆且与您的业务相关。 域名备案:在中国大陆地区运营的小程序,所使用的服务器域名必须完成ICP(互联网内容提供商)备案。这一步骤涉及到提交相关…

Android编程权威指南(第四版)- 第 4 章 UI状态的保存与恢复

文章目录 代码:依赖MainActivityQuizViewModelQuestion知识点代码: 大体是一样的,修改了一些 依赖 implementation("androidx.lifecycle:lifecycle-extensions:2.2.0")MainActivity package com.example.geoquizimport androidx.appcompat.app.AppCompatActivi…

【算法练习】leetcode算法题合集之其他篇

贪心算法 LeetCode376.摆动序列 LeetCode376.摆动序列 最后是向上幅度的摆动序列定义为up,最后是向下幅度的摆动序列定义为down。 如果数值相等,那么摆动序列的长度是不变的。 class Solution {public int wiggleMaxLength(int[] nums) {int n = nums.length;if (n < 2)…