编辑推荐: |
本文来自于sdnlab,文章主要介绍了边缘计算出现的原因,什么是边缘计算,边缘计算的发展历程以及一些开源项目等相关内容。 |
|
什么是边缘计算?
边缘计算的雏形是CDN,我们原本通常的做法是把数据挪到计算那头来进行处理。但是,由于数据越来越多,导致数据传输的速度越来越慢,且资源消耗巨大,因此,我们需要将计算挪到边缘处来处理,这就是边缘计算。
边缘计算有以下特点:
为什么会出现边缘计算?
5G是边缘计算的驱动力
5G的兴起恰逢与物联网(IoT)相关的连接设备和系统的爆炸式增长。智能监控系统、可穿戴设备、自动驾驶、虚拟现实和增强现实等等都带来了大量的数据,这些都是边缘计算产生的沃土。此外明年5G要落地了,网速会增加,万物互联,很多设备会连接在一起,人们开始思考能不能产生一些关键的应用场景来消耗这些带宽,适应5G的基础架构,这也是运营商很关心的一个突破点,边缘计算的出现正好迎合了5G的诞生。可以说,5G是边缘计算产生的最大驱动力。
随着应用的发展,高带宽低延时的需求也促进了边缘计算的发展。但是并不是说边缘计算只适用于高带宽低延迟的场景,像智能抄水电表这种对实时性不高的场景,也是边缘计算的应用。
5G是边缘计算的主要动力,若5G真的要发展起来,运营商是起推动作用的。从图中可以看到运营商的网络是分级的,他们有数据中心、端局、核心网,但在边缘侧(如基站、最后一公里的地方)是边缘计算小型机房产生的地方,它就需要高带宽,低延迟的接入网络,对于不同的应用需求,运营商会要求越来越低的延迟。
可以感觉得出,边缘计算的高要求都是为了电信级应用,低时延高速率,大部分都是跟电信运营商和电信设备制造商相关的技术和业务,所以电信运营商在边缘计算的发展过程中也起到了很大的推动作用。
边缘计算的应用案例
边缘计算的应用十分广泛,从智慧城市、智能小区智能楼宇、智慧家庭、智能医院、工厂自动化(织布机质量检测)、自动驾驶、无人机、智能制造、虚拟现实以及增强现实等等。而且新的应用、新的用户案例长在不断被挖掘出来。
2018年初的一则新闻《昆明机场首个“智能化”洗手间投入使用 将缓解如厕拥挤状况》就是边缘计算的一个简单应用案例,试点洗手间的智能系统目前具备多种创新功能:对洗手间厕位的占用情况进行一目了然的显示,为旅客寻找空位如厕提供便利;为旅客提供高峰时期寻找空余洗手间的智能引导,指引旅客前往附近最近的有空余厕位的洗手间如厕;厕位使用频率统计:包涵单个厕位的统计和整体洗手间的统计,并且可以进行科学分析得出某时段使用频率最高的洗手间或者某个厕位;洗手间使用评价系统;旅客可以在使用后扫描门口的二维码进行满意度评价。除了以上功能外,该系统还可以根据需求进行水电计量、气味监测、保洁管控、节能减排等进一步的完善升级,以满足更多的智能洗手间功能要求。
再比如另一个简单的应用——监控头判断交通违法信息。在马路监控头捕捉到了汽车交通违法视频之后,可以传到边缘站点,对视频进行图像提取、车牌定位、字符分割以及最终车牌识别。如果没有边缘计算,监控视频需要传到远程数据中心做违法判断以及车牌识别,而且随着时间的推移,需要传送的数据越来越多,对于网络高带宽和应用实时性提出了很大的挑战。然而,如果数据能在本地边缘站点处理掉了,那么就节省了数据传输的时间,节约了连接网络的带宽。做一个简单的比较,如果违法事件和违法车牌分别在本地监测和识别到了,只传送结果信息,这是边缘计算
;如果需要把视频传到数据中心处理计算,那是云计算。通过比较,边缘计算的优势一目了然。交通违法检测只是一个方面,我们国家的监控头用武之地实在太多了,人脸识别、烟雾报警、人口密度指数预警防踩踏事件、动态监测、双摄像头测距、森林防火、天气监测等等,边缘计算的优势就大大地发挥出来了。
除此之外,边缘计算还可以应用在一些更加复杂的场景里,比如体育场周边的在线视频直播和点播、工厂工业互联监测和自动化、运输快递行业冷链监测和管理、移动通信行业虚拟无线接入网(vRAN)和通用客户端设备(uCPE)等等。
边缘计算的发展历程
2014年10月,ETSI推出移动边缘计算(MEC)行业规范组(ISG),2016年9月,ETSI的移动边缘计算小组更改了MEC的名称,因为技术研究人员发现这种边缘计算技术的优势已经超越了移动,并进入了Wi-Fi和固定接入技术,MEC自此更名为多接入边缘计算(multi-access
edge computing)
MEC参考架构:目前大部分edge的实现都是用的这个架构
MEC的三个特点:
Multi-access:多种网络接入模式,比如LTE、无线WiFi、有线、ZigBee、LoRa、NB-IoT等各种物联网应用场景;
Edge:网络功能和应用部署在网络的边缘侧,尽可能靠近最终用户,降低传输时延;
Computing:即联合云计算和雾计算,充分有效利用计算、存储和网络等有限资源。
在MEC提出之后,第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)已经正式接受MEC作为5G架构关键议题。下一代移动通信网络(Next
Generation Mobile Networks,NGMN)也已经同意将MEC纳入到5G需求和架构中。5G是边缘计算场景主要推动技术之一。
2015年11月,思科、ARM、戴尔、英特尔、微软、普林斯顿大学等机构联合发起成立开放雾计算联盟OpenFog,定义了雾计算架构,将计算、存储、网络资源分布到更靠近用户边缘侧的地方,该联盟旨在加速采用与物联网和人工智能相关的边缘计算,建立最佳实践和架构框架,以及创建指南文档。
2016年9月,电信行业与汽车行业的全球跨行业产业联盟(5G Automotive Association,5GAA)成立,联盟的使命在于研发、实验和推动智能车联、智慧交通等万物互联所需的通信解决方案和应用,包括相关的标准化推进、商业机会挖掘,以及全球市场的拓展。5GAA发起方包括奥迪、宝马和戴姆勒以及爱立信、华为、英特尔、诺基亚、高通五家电信通讯公司,成立后该组织成员不断扩大。
2017年8月,爱立信、英特尔、日本NTT与丰田近日成立了一个名为汽车边缘计算联盟(Automotive
Edge Computing Consortium,AECC)的新联盟,以开发连接汽车的网络和计算生态系统,更多地关注使用边缘计算和高效网络设计来增加网络容量,以适应汽车大数据。它还将定义要求,开发用例并鼓励最佳实践。有了这,不论智能辅助驾驶也好,自动驾驶也好,亦或是无人驾驶,也可以利用边缘计算基础设施计算,实现人工智能驾驶。
在我国,2016年12月,华为、中科院沈自所、中国信通院、英特尔、ARM、软通动力等机构联合发起在北京成立边缘计算产业联盟(Edge
Computing Consortium,ECC)。该联盟旨在搭建边缘计算产业合作平台,推动OT和ICT产业开放协作,孵化行业应用最佳实践,促进边缘计算产业健康与可持续发展。
边缘计算开源项目
Akraino
Akraino Edge Stack是一个Linux基金会项目,支持针对边缘计算系统和应用程序优化的高可用性云服务,2018年9月宣布其从形成转变为“Execute(执行)”。
该项目成员有ARM、AT&T、戴尔EMC、爱立信、华为、英特尔公司、inwinSTACK、瞻博网络、诺基亚、高通、Radisys、红帽和风河等。(边缘计算的福音——Akraino来了!),更多内容可以访问Akraino官网:
https://www.akraino.org/
Akraino Edge Stack将为用户提供全新级别的灵活性,以便快速扩展边缘云服务,最大限度地提高每台服务器上支持的应用程序或用户数量,并帮助确保必须始终处于运行状态系统的可靠性。据他们说,虽然现有的开源项目比如OpenStack可以利用上,但目前没有任何项目能够满足边缘解决方案的需求。Akraino将有助于为运营商,提供商和物联网提供易用性高、可靠性强和性能高的服务。
Akraino说白了就是一把大伞,它既包括了顶层边缘应用程序或VNF,也包括了中间与底层基础架构框架交互的中间件和边缘API,当然也包括了管理底层基础架构的Edge
Stack,以及相应的生存周期管理、CI/CD和工具集。
在底下网络Edge层,有三种概念POD(Point of Delivery):一个叫Cruiser,第二个叫Tricycle,第三个叫Unicycle,在客户Edge,有Satellite和Rover之别。
Edge POD主要是分层级,Cruiser是大的POD,特点是里面POD机器多,控制面可以跑在容器里,控制面里可以有OpenStack和Ceph等,数据面主要以计算结点为主,整个网络是运行在5G核心网上的。再往下一级是Tricycle,由于POD数量少一点,里面的控制结点和计算结点相当少一些。它可以跑在IP服务上,也可以跑在5G接入网上。再往下叫Unicycle,到最后一公里就叫Satellite和Rover,这时候由于机器少,就那么一个两个的,数据面和控制面可能需要跑在一台服务器上,也就是All-in-one,此时机器上运行的主要就是边缘计算应用程序了。
在Akraino里还会看到一个概念,叫Blueprint。它与OpenStack开发里常说的Blueprint不一样,它更像是针对某种边缘计算应用场景,而提出的软硬件参考及配置方案。
StarlingX
StarlingX是一个完整的云基础架构软件堆栈,适用于工业物联网,电信,视频传输和其他超低延迟用例中要求最苛刻的应用程序。基于为关键任务应用程序部署的成熟软件,新开源的StarlingX代码是可扩展解决方案中边缘实现的基础,现在可以投入生产。
StarlingX项目是OpenStack基金会启动的另一个独立的开源项目,该项目将专注于边缘计算。
它不是OpenStack子项目。它本身就是一个完整的项目。同时,它使用了许多OpenStack服务来提供核心的计算、存储和网络功能。它基于英特尔和风河贡献的种子代码,并将自己的组件与OpenStack、Ceph和OVS等领先的开源项目结合在一起,组成一套完美的软件方案。(OpenStack:StarlingX
边缘计算项目首次发布)
更多内容可以访问StarlingX官网: https://www.starlingx.io/
虽然StarlingX也是在Akraino的框架下,但它大多基于OpenStack架构而来,并且向上层提供了一系列虚拟网络化功能(Virtual
Network Functions),方便上层的编排器来调用IaaS层的资源,而底层则是使用目前云计算平台的Best
Practice,即控制服务、计算服务(kvm)、网络服务(ovs)、存储服务(ceph)来完成。另外还会发现,StarlingX除了拥有OpenStack组件外,还增加了很多中间件如Software
Management Service,、Fault Management Service, Host
Management Service等,提供了更多的底层API,比OpenStack支持的功能点更多。
StarlingX与边缘计算
StarlingX说到底还是一个高端版的OpenStack,StarlingX的边缘部署还是基于熟悉的OpenStack多region的方式,但是它比多region功能更多,如可以部署和管理边缘的region,配置可以在全部的region生效,报错汇总到中心云,社区的patch可以在中心云和边缘云一键修复(联网同步社区patch,并通过界面一键修复平台bug),中心云和边缘云通过L3网络相互通信,边缘云也各自有一个portal,只不过这个portal功能较少,只能实现部分管理功能。
MEC的想法是把计算和存储资源部署在边缘,来满足某些应用严苛的延迟要求,并与蜂窝基站、5G等新兴技术结合,通过把终端计算量offloading到边缘,来实现真正的边缘计算。而StarlingX目前只是基于OpenStack技术把基础设施管理延伸到了边缘,不像Akriano那样提供了一整套的管理物理资源的云技术、容器技术、管理编排技术,也不像MEC那样面向终端计算量offloading到边缘的场景而提供的解决方案。
以下是王庆经理回答的有关边缘计算的相关内容(由sdnlab整理):
边缘计算现在有和云计算一体的解决方案吗?
开源的解决方案主要有:Akraino 里面的StarlingX、OPNFV里面有一个demo叫做vCO据说也可以、OpenCord等,华为也开源了它的项目叫KubeEdge,百度也刚刚开源了一个项目叫Open
Edge,等等。主要看成熟度和社区的活跃度。
边缘计算与思科提的雾计算有何异同?
各家有各家说法,从云下面到设备(device)全是雾计算,雾计算里面包含了边缘计算,MEC是边缘计算里一个很小的部分。总的来说是一个涵盖的关系。
边缘计算架构下做资源的动态迁移有前景吗?
动态迁移主要解决HA问题,HA的问题肯定是要解决的,比如说一个site节点的数据中心宕机了,需要其他的site节点或者是远程的云计算中心来恢复这个节点,保证业务不中断,所以需要动态迁移。
边缘计算的机房一般在什么环境?与传统的云端有什么本质区别吗?
现在很少有人能做边缘计算的机房,只有运营商在做,一般在运营商的接入网、一个小区或一片区域基站附近。传统的云端,如果指数据中心,管理的基站就几个,但数据中心会有几千台。
自动化维护不用人工干预可以实现吗?
这是一个理想的状态,AT&T提出的是零接触,但风河最早提的是hitless,即尽量少敲键盘,我们一直朝这个方向走,希望有一天能完全实现自动化。
目前有什么技术趋势在往这个方向进行(接上述自动化)?
1.ONAP项目主要负责VNF、CNF、PNF、 lifecycle
management;2. Airship负责基础架构部署、 lifecycle management。3.OpenStack的Helm部署工具,但目标还不是自动化工具。
AI对现有的网络管理有没有帮助?
有帮助,相关项目是基于OpenStack里有一个叫智能运维,但是是私有化的。ONAP项目里刚刚提了analytics
as a service,其目的是为了更多的监控、策略、智能化运维。
边缘计算的部署与NFV中的传统网络虚拟化有什么区别,是依托终端设备的独立子网吗?
边缘计算的部署依靠的是广域网,部署跟网络没有非常大的关系,主要是部署工具,ONAP是一个建议方案,希望用在边缘计算的部署,和NFV区别应该不会很大,重点应该是部署工具,部署的媒介还是靠广域网。
StarlingX中包括业务部署功能吗,比如SFC等?
不包括业务部署,只包含基础架构,业务部署不属于它的范畴,它只负责infrastructure
边缘计算对性能的要求高,但是不是不要求规模?
边缘计算站点规模要求很大,但每个site的规模要求不大
边缘计算的边缘节点通常定位到什么层面?是运营商的边缘设备还是接入的终端设备?
有的人认为是边缘端(IOT认为)比如说摄像头,也有的认为是边缘侧(是边缘端的延伸,运营商会这样认为)比如服务器,我们讲的是边缘侧,如果是IOT的话应该是指边缘端的设备。
StarlingX会考虑容器跟虚机跑在同一个host的场景吗?
会考虑,但是如果对于一个业务来说,运营商不建议业务一部分跑在容器里面,另一部分跑在虚机里,它们会建议所有的应用都跑在一个场景。但是StarlingX是支持这个应用的。
|