近年来,边缘计算(edge computing)越来越多地在学术界、工业界乃至大众媒体中被提及。谷歌数据显示,在2014—2019年间,边缘计算的搜索热度增长超过10倍。2015年,卡内基梅隆大学的研究员们联合沃达丰(Vodafone)、英特尔(Intel)和华为三家公司开始了边缘计算启动项目(open edge computing initiative,OEC)。随后,威瑞森(Verizon)、德国电信(Deutsche Telekom)和诺基亚(Nokia)等众多著名公司纷纷参与边缘计算的研究。与此同时,传统云计算服务提供商(如亚马逊和微软)也不甘示弱,陆续推出了面向边缘计算的产品,大有取代云计算之势。
边缘计算到底是何方神圣?
在今天的网络体系中,占主导地位的是少数拥有超强计算能力、超大存储量和超高内部带宽的云计算中心(云计算中心一般包含云计算数据中心、云计算集群、云平台运维等)。这些庞大的数据中心成为绝大部分数据(文字、图片、视频、传感器数据等)的最终存储地。通过高速可靠的有线网络基本建设,云计算中心经过骨干网、广域网、局域网,逐级向外延展到我们桌面上的一台台个人电脑。边缘是一个与中心相对应的概念,这就意味着边缘计算离用户越来越近。
目前,大家对边缘计算的准确定义还有所争论,但对边缘的定义还是一致的,边缘是指整个网络基建的边界,有时候还包括通用外接移动设备。基于边缘的定义,边缘计算就是将对数据的处理功能部署在边缘设备上,进而为移动终端提供服务。这些边缘设备可以有多种物理形式,如个人电脑、智能家居控制器、办公室里的小型服务器(图2-1),以及未来可能出现的无人驾驶车载电脑、内置通用计算能力的移动通信基站和智能摄像机等。边缘计算(或称边缘节点)还有一些五花八门的别称,比如微云(cloudlet)、微数据中心(micro data center)、雾计算(fog computing)、雾节点(fog node)等。总之,给用户一种云雾迷蒙的感觉。确实,相对于较少的云计算中心,边缘设备的数量庞大。
图2-1 Canonical推出的小型服务器
边缘计算的特点是低时延、高带宽。由于靠近用户端,边缘计算与移动设备之间具有低时延和高带宽连接的特征。边缘计算拉近了云计算服务与我们的距离。“云”在天上,离我们很远。“雾”环绕周围,触手可及。
与物理世界的“近”不同,边缘计算的“近”特指网络距离的近。假设一个办公室里的两个人通过手机网络聊天,他们之间的网络包可能会先被路由至另一个城市,在那里从运营商的网络上载到互联网,经过聊天软件的服务器,再下载回运营商的网络传输给对方。虽然两个用户之间的物理距离也许只有数米,但他们手机之间的网络距离却很远。相反地,如果铺设了专用的直连光纤,即使相隔几十千米,两个设施之间的网络距离也很近。
边缘和云的延时差别有多大?实验显示,一般用户与云计算中心的延时平均为100 ms,而边缘节点则只有5 ms [15] ,未来5G技术普及后,甚至可能降低到1 ms。
通常认为,从2005年左右到今天的大数据时代,“云—移动端”是最常见的计算模式。许多手机上的应用(比如谷歌助手、苹果Siri等)都通过连接到遥远的云端为用户提供可移动的智能服务。
我们会问:“为什么要这样设计?”
众所周知,移动设备一般体积小、质量轻、发热少、功耗低,无法持续地支持复杂算法的快速运行。为了解决这个问题,可以把数据先传往云计算中心,云计算中心处理完后,再传到移动设备即可。
但是,这种设计也有问题。绝大部分数据在网络边缘产生,然后由传感器收集(移动用户拍摄或输入),而云计算数据中心却在网络深处。原始数据需要多次周转和长途跋涉才能到达数据中心。这一过程不但消耗了整个网络基建中大量宝贵的带宽,还会处理大量垃圾数据,用户会感觉到明显的延时,这对于沉浸式体验用户来说常常不可接受。
而边缘计算针对性地改善了上述问题。边缘计算可尽早地过滤和抛弃无关数据,从而减少网络深处的带宽消耗。同时,边缘节点与移动用户之间的低时延也大大缩短了交互式应用的响应时间,优化了沉浸式应用的体验效果。对于游戏玩家来说,这极大地优化了游戏体验。
有了边缘计算,网络就变成“云—边缘—移动端”三层计算模式(图2-2) [16] 。各层之间相互协作,同时各自拥有其他层不可替代的特性。云拥有接近无限的存储和计算能力,有高度弹性(elasticity)和可扩展性(scalability),适合数据的永久保存、数据的批量处理及神经网络的训练。移动端既是数据进入计算系统的第一站,又是将反馈呈现给用户的界面。但是,它们对于体积、功耗、散热和硬件成本都有较高要求。边缘有连接到云的可靠网络,无须担心电源和散热问题。边缘上的计算能力足够运行神经网络的推理(inference)和各种复杂的人工智能算法,并以毫秒级延时将结果传回给用户。这些相互独立又相互支持的特点,使得三层计算模式更适合当代网络发展。
图2-2 “云—边缘—移动端”三层计算模式
在边缘节点上运行的复杂算法生成了高质量、高清晰度、高频率、高准确率的结果。由于减少了大量运算,移动设备得以延长电池的续航时间和减少发热。云计算被用来批量学习用户偏好,训练和更新人工智能模型,并将新模型推送到边缘。边缘计算所带来的低时延使这一类应用从不可能变成可能,从不可用变成可用。
边缘计算可应用于可穿戴认知辅助(wearable cognitive assistance)和其他一些方面。
让我们回想一下电影《007》里的眼镜和《钢铁侠》里的头盔。这些可穿戴设备上的传感器(摄像头、麦克风、陀螺仪等)可实时感应物理世界,见用户之所见,闻用户之所闻。在极短时间内,系统用人工智能算法处理完传感器数据后,向用户呈现反馈信息并提供行动指导。
边缘计算、基于神经网络的人工智能算法以及可穿戴硬件技术的发展,正在使科学幻想成为可能。可穿戴认知辅助被认为是边缘计算技术和商业模式的“杀手级应用”(killer App)。例如,阿尔茨海默病患者的智能眼镜能帮助他们识别熟人的脸,在他们耳边悄声提醒熟人的名字,从而改善他们的生活和社交质量;乒乓球初学者依照3D虚拟轨迹练习击球方向;人们在乘坐无人驾驶汽车通勤的途中使用无线VR设备玩虚拟现实游戏。
除了可穿戴认知辅助,边缘计算还可以在很多独特的环境下发挥作用。通过在边缘进行视频分析(video analytics),可以节省大量视频数据进入云的宝贵带宽。虽然单个边缘节点的计算能力和带宽与云计算数据中心比起来往往微不足道,但是边缘节点数量多,地理分散,距离数据源近,整个边缘的计算能力的总和及它们访问数据带宽的总和可以远超过云计算数据中心。包含敏感信息的传感器数据可以先在边缘上脱敏(数据去隐私化)和变形(比如模糊人脸),再传输到云,从而更好地保护隐私。当网络基建由于故障、自然灾害等原因断开连接时,边缘可以替代其提供一定质量的服务,降低广域网上的故障影响,让网络服务更稳健。
边缘计算正在改变我们的生活!
冯自强,美国卡内基梅隆大学计算机科学博士在读,师从Mahadev Satyanarayanan教授。研究领域包括分布式系统、边缘计算、移动计算、数据库和视频分析系统。曾经在微软研究院(西雅图)进行研究实习。是香港裘槎基金会(Croucher Foundation)博士奖学金获得者。
唐博,南方科技大学计算机科学与工程系助理教授,香港理工大学博士。主要研究方向为大数据分析技术与数据库系统。曾访问并做研究于微软亚洲研究院和荷兰国家数学与计算机科学研究中心。研发成果广泛应用于商业产品Microsoft Power BI和MonetDB系统中。