边缘计算
- 序
- 第一章 什么是边缘计算
- 概念
- 章鱼说
- 应用场景
- 数据单位转换
- 边缘计算的前世今生
- CDN(Content Delivery Network)内容分发网络
- 微云(Cloudlet)
- 雾计算——雾是接近地面的云
- MEC
- 边缘计算大事记
- 边缘计算核心技术概述
- 1 网络技术
- 2 隔离技术
- 3 边缘操作系统
- 4 算法执行框架
- 5 安全和隐私保护技术
序
边缘计算的基本理念是将计算任务在接近数据源的计算资源上运行,是个连续统(定义:若A与实数集R等势,则称A为连续统。),可以有效减少数据传输带宽,减小计算系统的延迟,缓解云计算中心的压力,提高可用性,并能够有效保护数据安全和隐私。
第一章 什么是边缘计算
概念
- Edge Computing
- “Edge Computing: Vision and Challenges”
- ACM and IEEE 联合举办边缘计算会议(ACM/IEEE Symposium on Edge Computing, SEC)
章鱼说
多个小脑 + 一个大脑
应用场景
- VR/AR
- 智慧城市
- 车联网
- 移动边缘计算技术(Mobile-Edge Computing, MEC)
- 企业专网
- MEC服务器为企业提供一个虚拟的RAN(Radio Access Network)
- 网络视频优化加速
- 边缘部署可以给中心视频服务器提供动态网络分析信息,辅助TCP拥塞控制和码率适配,改善内容分发效率低下的情况。
- 工业互联网
- 改善性能
- 保证数据安全和隐私
- 减少操作成本
数据单位转换
边缘计算的前世今生
CDN(Content Delivery Network)内容分发网络
- 关键技术:内容存储、分发技术
- 原理:广泛采用各种缓存服务器
- MIT Leighton and Lewin
- 1998 Akamai 全球最大的CDN服务提供商
- CDN强调内容的备份和缓存,而边缘计算的基本思想则是功能缓存(Function Cache),这实际上是借鉴了CDN的基本思想。
- CDN是边缘计算的最初原型
微云(Cloudlet)
- 2009年
- “盒子里的数据中心”
- OEC(Open Edge Computing)的研究结果
- 卡内基梅隆大学发起
- 其源代码和搭建方式可以在OEC的官网获取
- 微云的主要技术支撑是虚拟机合成和OpenStack,虚拟机合成实现将计算任务卸载到微云,OpenStack提供虚拟计算和存储服务的资源
- 设计灵感:致力于实现信息的超低延时传输的触觉互联网(Tactile Network)
- 四个关键属性:
- 只有软状态
- 功能强大、连接良好且安全
- 临近性
- 扩展性
雾计算——雾是接近地面的云
- 为了解决面向数据传输、计算和存储过程中的计算负载和数据传输带宽的问题
- 雾计算(Fog Computing )、移动边缘计算(Mobile Edge Computing, MEC)
- 思科提出概念,定义为迁移云计算中心任务到网络边缘设备执行的一种高度虚拟化的计算平台
- 本地化的云计算
- 云计算强调计算的方式,雾计算强调计算的位置
- 2015年11月,思科、ARM、戴尔、英特尔、微软等联合成立开放雾联盟(OpenFog)
MEC
- 2014,欧洲电信标准协会(ETSI)给出的定义:MEC通过在无线接入侧部署通用服务器,从而为无线接入网提供 IT 和云计算的能力。
- 2017,M 被解释为”Multi-Access“,移动边缘计算 变成了 多接入边缘计算
边缘计算大事记
- 2016年11月。华为、中科院沈阳自动化研究所、英特尔、ARM等在北京成立边缘计算产业联盟(Edge Computing Consortium,ECC)
- 2017年7月。ETSI 多接入边缘计算(Multi-Access Edge Computing )行业规范工作组(ISG),发布了首套标准化应用程序接口(API),以支持边缘计算的互操作性
- 2018年1月。《边缘计算》出版,施巍松、刘芳、孙辉、裴庆祺
- 2018年9月17日。在上海召开世界人工智能大会,以【边缘计算,智能未来】为主题举办了边缘智能主题论坛,这是中国从政府层面上对边缘计算的发展进行了支持和探讨
- 2019年3月。两会期间,周鸿祎将【IMABCDE】写入提案,分别表示:IoT、移动通信、人工智能、区块链、云计算、大数据、边缘计算。
- 2019年5月11日。第三届边缘计算技术研讨会在杭州召开。
- 2019年9月。边缘计算开源项目
- StarlingX,一个专注于对低延迟和高性能应用进行优化的边缘计算及物联网云平台
- KubeEdge,将 Kubernetes 容器存储标准CSI 带到边缘。
- 2019年11月28日。边缘计算产业联盟(Edge Computing Consortium, ECC)发布三份白皮书:
- 《边缘计算安全白皮书》
- 《运营商边缘计算网络技术白皮书》
- 《边缘计算IT基础设施白皮书1.0》
边缘计算核心技术概述
1 网络技术
- 问题
- 1.1 服务发现
在边缘计算中,由于计算服务请求者的动态性,计算服务请求者的动态性,计算服务请求者如何知道周边的服务。
传统的基于 DNS 的服务发现机制,主要应对服务静态或者服务地址变化慢的场景下。 - 1.2 快速配置
从设备层支持服务的快速配置 - 1.3 负载均衡
边缘设备产生大量的数据,同时边缘服务器提供了大量的服务。根据边缘服务器以及网络状况,如何动态地对这些数据进行调度至合适的计算服务提供者
- 1.1 服务发现
- 针对问题,最简单就是,在所有中间节点上部署所有的计算服务,然而这将导致大量的冗余,同时也对边缘计算设备提出了较高的要求
- 命名数据网络(Named Data Networking, NDN)是一种将数据和服务进行命名和寻址,以 P2P 和中心化方式相结合自组织的一种数据网络。
- 大量的数据迁移
- 软件定义网络(Software Defined Networking, SDN)SDN是一种控制面和数据面分离的可编程网络,以及简单网络管理。
- 结合 NDN 和 SDN ,可以较好的对网络及其上的服务进行组织并进行管理,从而可以初步实现计算链路的建立和管理问题。
2 隔离技术
- 边缘设备需要有效的隔离技术来保证服务的可靠性和服务质量。
- 2.1 计算资源的隔离,即应用程序间不能相互干扰
- 2.2 数据的隔离,即不同应用程序应具有不同的访问权限
- 目前在云场景下主要使用VM虚拟机和Docker容器技术等方式保证资源隔离。
- 在云平台上普遍应用的Docker技术可以实现应用在基于OS级虚拟化的隔离环境中运行,Docker的存储驱动程序采用容器内分层镜像的结构,使得应用程序可以作为一个容器快速打包和发布,从而保证了应用程序间的隔离性。
3 边缘操作系统
- 向下需要管理异构的计算资源,向上需要处理大量的异构数据以及多用的应用负载,其需要负责将复杂的计算任务在边缘节点上部署、调度及迁移,从而保证计算任务的可靠性以及资源的最大化利用。
- 机器人操作系统(Robot Operating System. ROS)异构机器人集群的消息通信管理,现在逐渐发展成一套开源的机器人开发及管理工具。
- OPenVDAP 针对汽车场景设计的数据分析平台
- EdgeOSv 面向网联车场景的边缘操作系统
4 算法执行框架
- 边缘计算还需要一个边缘的执行框架,它可以动态地允许AI包在云端运行。
- 一些专门针对边缘设备的算法执行框架应运而生
- 2017谷歌发布 TensorFlow Lite,他通过优化移动应用程序的内核、预先激活和量化内核等方法来减少执行预测任务时的延迟和内存占有量。
- Caffe2 是一个轻量级的执行框架
- Pytorch 和 MXNet 也提供在边缘设备上的部署方式
5 安全和隐私保护技术
- 问题
- 应用安全:拒绝服务攻击、越权访问、软件漏洞、权限滥用、省份假冒
- 网络安全:恶意代码入侵、窃取、篡改、删除、伪造数据
- 信息安全:数据丢失或泄露、数据库破解、设备失效、隐私失密
- 系统安全:计算机硬件损坏、操作系统漏洞、恶意内部人员
- 通过基于密码学的方案来进行信息安全的保护、通过访问控制策略来对越权访问进行防护
- 使用机器学习来增强系统的安全防护
- 可信执行环境(Trusted Execution Environment, TEE)是指设备上一个独立于不可信操作系统而存在的可信的、隔离的、独立的执行环境,为不可信环境中的隐私数据和敏感计算,提供了安全而机密的空间,而 TEE 的安全性通常通过硬件相关的机制来保障。
- 常见的 TEE
- Intel 软件防护扩展
- Inter 管理引擎
- x86 系统管理模式
- AMD 内存加密技术
- AMD 平台安全处理器
- ARM TrustZone 技术