当前位置: 首页 > 后端技术 > PHP

边缘计算七大核心技术

时间:2023-03-30 02:14:43 PHP

作者:史伟松团队(张兴洲、王一凡、张庆阳)计算模式的创新带来技术升级,边缘计算的快速发展也得益于技术进步。本节总结了推动边缘计算发展的7大核心技术,包括网络、隔离技术、架构、边缘操作系统、算法执行框架、数据处理平台、安全与隐私。1.网络边缘计算将计算推向靠近数据源的位置,甚至将整个计算部署在从数据源到云计算中心的传输路径上的节点上。这种计算部署对现有网络结构提出了三个挑战。新要求:1)服务发现。在边缘计算中,由于计算服务请求者的动态特性,计算服务请求者如何知道周围的服务将是网络层面边缘计算的核心问题。传统的基于DNS的服务发现机制主要处理静态服务或者服务地址变化缓慢的场景。当服务发生变化时,DNS服务器通常需要一定的时间来完成域名服务的同步,这期间会造成一定的网络抖动,因此不适合大规模、动态的边缘计算场景。2)快速配置。在边缘计算中,由于智能网联汽车等用户和计算设备的动态增加,以及用户切换导致计算设备的动态注册和注销,通常需要对服务进行相应的迁移,这会导致大量的突然的网络流量。与云计算中心不同,广域网的网络情况更为复杂,带宽可能有一定的限制。因此,如何从设备层支持服务的快速配置是边缘计算的核心问题。3)负载均衡。在边缘计算中,边缘设备产生大量数据,边缘服务器提供大量服务。因此,如何根据边缘服务器和网络状况,将这些数据动态调度到合适的计算服务商,将是边缘计算中的一个重要课题。核心问题。针对以上三个问题,一种最简单的方法是将所有计算服务部署在所有中间节点上,但这会导致大量的冗余,同时也对边缘计算设备提出了更高的要求。因此,我们以“建立从边缘到云端的计算路径”为例,首先面临的是如何找到服务来完成计算路径的建立。命名数据网络(NamedDataNetworking,NDN)是一种对数据和服务进行命名和寻址,并结合P2P和集中式方法进行自组织的数据网络。计算链路的建立在一定程度上也是数据关联的建立,即数据要从源头传输到云端。因此,NDN被引入到边缘计算中,通过它建立计算服务的命名和关联数据的流转。因此,可以很好地解决计算链路中的服务发现问题。随着边缘计算的兴起,特别是在用户移动的情况下,比如车载网络,计算服务的迁移比基于云计算的迁移更加频繁,同时也会造成大量的数据迁移时间,从而影响网络层提供动态要求。软件定义网络(softwaredefinednetwork,SDN)诞生于2006年美国GENI项目资助的斯坦福大学CleanSlate项目,是一种控制平面和数据平面分离、网络管理简单的可编程网络。由于控制平面和数据平面分离的特点,网络管理员可以快速配置路由器和交换机,减少网络抖动,支持快速流量迁移,因此可以很好地支持计算业务和数据迁移。同时,结合NDN和SDN,可以更好地组织和管理网络及其服务,从而初步实现计算链路的建立和管理。2.隔离技术隔离技术是支撑边缘计算稳步发展的研究技术。边缘设备需要使用有效的隔离技术来保证服务的可靠性和服务质量。隔离技术需要考虑两个方面:1)计算资源的隔离,即应用程序不能相互干扰;2)数据隔离,即不同的应用应该有不同的访问权限。在云计算场景下,某个应用程序的崩溃可能会导致整个系统的不稳定,造成严重的后果,而在边缘计算场景下,情况就变得更加复杂。比如在自动驾驶操作系统中,既要支持车载娱乐来满足用户的需求,又要运行自动驾驶任务来满足汽车本身的驾驶需求。这时候,如果车载娱乐任务干扰了自动驾驶任务或者影响了整个操作系统的性能,就会造成严重的后果。对生命财产安全造成直接损失。隔离技术还需要考虑第三方程序对用户隐私数据的访问权限。例如,不应允许汽车娱乐程序访问汽车控制总线数据。目前虚拟机主要应用于云计算场景。虚拟机和Docker容器技术确保资源隔离。边缘计算可以借鉴云计算发展的经验,研究适合边缘计算场景的隔离技术。广泛应用于云平台的Docker技术,基于OS级虚拟化,使应用程序运行在隔离的环境中。Docker的存储驱动在容器中采用了分层镜像的结构,使得应用可以作为容器快速打包发布。从而保证应用程序之间的隔离。李等。建立了基于Docker迁移的有效服务切换系统,利用Docker的分层文件系统支持,提出了一种适用于边缘计算的高效容器迁移策略,以减少包括文件系统、二进制内存映像和检查点在内的数据传输开销。哈等人。提出了VM切换技术,实现虚拟机VM计算任务的迁移,支持快速透明的资源放置,保证VM虚拟机封装用于对安全性和可管理性要求高的应用。这个多功能原语还提供了针对边缘优化的实时迁移功能。这种基于VM的隔离技术提高了应用程序的抗干扰性,从而增加了边缘计算系统的可用性。3.架构无论是高性能计算等传统计算场景,还是边缘计算等新兴计算场景,未来的架构都应该是通用处理器和异构计算硬件并存的模式。异构硬件牺牲部分通用计算能力,使用专用加速单元减少一种或多种负载的执行时间,显着提高性能功耗比。边缘计算平台通常是针对某一类特定计算场景设计的,处理的负载类型相对固定。因此,目前有很多针对特定计算场景设计边缘计算平台架构的前沿工作。时点脑首先提出将人工智能处理器放置在靠近图像传感器的位置,处理器直接从传感器读取数据,避免了图像数据访问DRAM中带来的能量消耗;同时,通过共享卷积神经网络(CNNs)权重,将模型完全放在SRAM中,避免了访问DRAM中的权重数据带来的能量消耗;由于计算能效大幅提升(60倍),可应用于移动设备。EIE:它是一种高效的稀疏神经网络推理引擎,通过稀疏矩阵的并行化和权重共享来加速稀疏神经网络在移动设备上的执行能效。Phi-Stack提出了一套面向边缘计算的技术栈,其中为物联网设备设计的PhiPU采用异构多核结构并行处理深度学习任务和普通计算任务(实时操作系统)。In-SituAI是一种自增式量化计算框架和架构,通过数据诊断选择数据移动最少的计算模式,将深度学习任务部署到物联网计算节点。除了专用计算硬件的设计,还有一类工作是探索FPGA在边缘计算场景中的应用。ESE[6]通过FPGA提高稀疏长短期记忆网络(LSTM)在移动设备上的执行能效,用于加速语音识别应用。通过负载均衡感知Compress的方法对LSTM进行剪枝,保证硬件的高利用率,同时在多个硬件计算单元调度LSTM数据流;它采用XilinxXCKU060FPGA进行硬件设计和实现,与CPU和GPU相比,分别实现了40倍和11.5倍的能效提升2倍。Bioookaghazadeh等人。通过对比FPGA和GPU在运行特定负载时的吞吐敏感度、结构适应性和计算能效,表明FPGA更适合边缘计算场景。面向边缘计算的计算体系结构设计仍然是一个新兴领域,还有很多挑战需要解决,如如何高效管理边缘计算的异构硬件,如何对此类体系结构进行公平、全面的评估等。.在TheWorkshoponEdgeComputingArchitecture中:ArchEdge首次在三边缘计算会议(SEC2018)上成立,鼓励学术界和工业界在该领域进行讨论和交流。4.边缘操作系统边缘计算操作系统向下需要管理异构计算资源,向上需要处理大量异构数据和多用途应用负载。它需要负责部署、调度和迁移,保证计算任务的可靠性,最大限度地利用资源。与物联网设备上传统的实时操作系统Contikt和FreeRTOS不同,边缘计算操作系统更倾向于数据、计算任务和计算资源的管理框架。机器人操作系统(robotoperatingsystem,ROS)最初是为异构机器人集群的消息通信管理而设计的,逐渐发展成为一套开源的机器人开发和管理工具,提供硬件抽象和驱动、消息通信标准,以及软件包。管理等一系列工具广泛应用于工业机器人、无人驾驶汽车(无人机等)等边缘计算场景。为了解决ROS中的性能问题,社区在2015年推出了ROS2.0数据分发服务(DDS),解决了ROS对主节点(masternode)的性能依赖,同时DDS提供共享内存机制,提高节点间的通信效率。EdgeOSH是专为智能家居设计的边缘操作系统,部署在家庭边缘网关中,通过3层功能抽象连接上层应用和下层智能家居硬件。提出针对各种边缘计算任务,服务管理层应具有差异化、可扩展性和隔离性。以及可靠性(reliability)要求。Phi-Stack提出了智能家居设备的边缘操作系统Phios,它引入了轻量级的REST引擎和LUA解释器,帮助用户在家庭边缘设备上部署计算任务。OPenVDAP是专为汽车场景设计的数据分析平台。它提出了一种用于联网车辆场景的边缘操作系统EdgeOSv。该操作系统提供任务弹性管理、数据共享、安全和隐私保护等功能。根据目前的研究现状,ROS和基于ROS的操作系统可能成为边缘计算场景的典型操作系统,但仍需要在各种真实计算场景中进行评估和测试。5.算法执行框架随着人工智能的快速发展,边缘设备需要执行越来越多的智能算法任务,比如家庭语音助手需要理解自然语言、智能驾驶汽车需要检测和识别街道物体、手持翻译等设备需要翻译实时语音信息等。在这些任务中,机器学习,尤其是深度学习算法占据了很大的比重。让硬件设备更好地执行以深度学习算法为代表的智能任务是研究的重点,也是实现边缘智能的重点。必要条件。为边缘计算场景设计高效的算法执行框架是一个重要的方法。目前针对机器学习算法的特点设计的执行框架有很多,比如2016年谷歌发布的TensorFloE,依托开源社区的力量开发的Caffe等,但是这些框架更多的运行在云数据中心,并且它们不能直接应用于边缘设备。如表2所示,云数据中心和边缘设备对算法执行框架的要求有很大不同。在云数据中心,算法执行框架执行更多的模型训练任务。他们的输入是一个大规模的批处理数据集,重点是训练时框架的迭代速度、收敛速度和可扩展性。边缘设备执行更多的预测任务,输入是实时的小规模数据。由于边缘设备的计算资源和存储资源相对有限,他们更加关注算法执行框架预测的速度、内存占用和能效。为了更好地支持边缘设备执行智能任务,一些专门针对边缘设备的算法执行框架应运而生。2017年,谷歌发布了TensorFlowLite,这是一个针对移动设备和嵌入式设备的轻量级解决方案。优化移动应用的内核,预激活和量化内核等,以减少执行预测任务时的延迟和内存占用。Caffe2是Caffe的更高级版本。它是一个轻量级的执行框架,增加了对移动端的支持。支持。此外,PyTorch、MXNet等主流机器学习算法执行框架也开始提供在边缘设备上的部署方式。张等。从延迟、内存占用等方面评估了TensorFlow、Caffe2、MXNet、PyTorch和TensorFlowLite在不同边缘设备(MacBookPro、IntelFogNode、NVIDIAJetsonTX2、RaspberryPi3ModelB+、HuawfiNexus6P)上的性能,经过比较分析能效等方面,最后发现没有一个框架可以在所有维度上都达到最好的性能,所以执行框架有比较大的性能提升空间。开展轻量级、高效化、可扩展性强的边缘设备算法执行框架的研究非常重要,也是实现边缘智能化的重要一步。6.在数据处理平台的边缘计算场景中,边缘设备无时无刻不在产生海量的数据,数据的来源和类型具有多样化的特点。这些数据包括环境传感器采集的时间序列数据、摄像头采集的图像和视频数据、点云数据等,大部分数据都具有时空属性。构建边缘数据管理、分析和共享平台非常重要。以智能网联汽车场景为例,汽车逐渐演化为移动计算平台,车载应用越来越多,车辆数据种类也越来越多。Zhang等人提出的OpenVDAP。是一个开放的车辆数据分析平台。如下图3所示,OpenVDAP分为异构计算平台(VCU)、操作系统(EdgeOSv)、驱动数据采集器(DDI)和应用库(libvdap)4个部分,平台可以安装部署在car完成车载应用的计算,实现车辆与云端、车辆与车辆、车辆与路侧计算单元的通信,从而保证车载应用的服务质量和用户体验。因此,在边缘计算的不同应用场景中,如何有效管理数据,提供数据分析服务,保证一定的用户体验是一个重要的研究课题。边缘计算虽然将计算推近了用户,但避免了将数据上传到云端,降低了隐私数据泄露的可能性。然而,与云计算中心相比,边缘计算设备通常位于靠近用户侧或传输路径上,被攻击者入侵的可能性更高。因此,边缘计算节点的安全性仍然是一个不容忽视的问题。.边缘计算节点的分布式异构类型也使得其难以统一管理,从而导致一系列新的安全问题和隐私泄露。边缘计算作为信息系统的一种计算方式,也存在着信息系统的通病。现有的常见安全问题包括:应用安全、网络安全、信息安全和系统安全等。在边缘计算环境中,通常仍然可以使用传统的安全解决方案进行保护,例如通过基于密码学的方案进行信息安全保护,以及访问控制策略来保护未经授权的访问。但需要注意的是,通常需要对传统的解决方案进行一些修改,以适应边缘计算的环境。同时,近年来,一些新兴的安全技术(如硬件辅助可信执行环境)可以应用于边缘计算,以增强边缘计算的安全性。此外,利用机器学习来增强系统的安全防护也是一种较好的解决方案。可信执行环境(trustedexecutionenvironment,TEE)是指在设备上独立于非可信操作系统而存在的可信、隔离、独立的执行环境,为非可信环境中的隐私数据和敏感计算,提供安全保密的空间,而TEE的安全性通常由硬件相关机制来保证。常见的TEE包括英特尔软件防护扩展、英特尔管理引擎、x86系统管理模式、AMD内存加密技术、AMD平台安全处理器和ARMTrustZone技术。通过在可信的执行环境中运行应用程序,并对使用的外部存储进行加密和解密,边缘计算节点的应用程序在边缘计算节点遭到破坏时仍然可以保证应用程序和数据的安全。更多资讯,尽在边缘计算社区!