前 言
Gartner发布的2020年十大战略科技发展趋势中分别提及了边缘计算以及区块链技术。边缘计算是一种在信息来源、存储库及使用者附近进行信息处理、内容收集和交付的计算拓扑结构。它试图将网络流量与计算处理保留在本地以减少延迟、发挥边缘能力以及赋予边缘更大的自治性。而区块链可以通过提供交易透明度与可追溯性并将其记录在公共账本中实现信任。这两种看似不相关的概念能否在一定程度上结合从而产生更巨大的能量呢?让我们一探究竟!
什么是边缘计算
在过去的十年中,由于云计算能够提供海量的计算,存储和网络资源导致了许多新的基于云的应用程序以及许多互联网公司(例如亚马逊)的快速增长。云中心具有强大的处理性能,能够处理海量的数据,但云计算模型的系统性能瓶颈在于网络带宽的有限性以及信息处理效率问题。此外,云计算模型中传送及处理数据导致的时延问题进一步影响了用户体验。因此,近年来一种名为边缘计算的新的计算范式正在兴起。边缘计算本质上是分散计算机服务并将它们更接近数据源的过程。
由于减少传输的数据量及其传播距离,会大大降低延迟,并减少对带宽的浪费。一般来说,边缘计算的结构可分为三个级别:终端设备(前端),边缘服务器(近端)和核心云(远端)。此层次结构表示边缘计算元素的计算能力及其特征。前端的终端设备(例如传感器,执行器)为用户提供了更多的交互性和更好的响应能力。但是,由于设备容量有限,必须将资源的进一步需求转发到服务器。近端的边缘服务器可以支持网络中的大多数流量以及大量资源需求,例如实时数据处理,数据缓存和计算分流。因此,边缘服务器在延迟方面有少量增加的情况下为最终用户提供了更好的性能,而在远端的云服务器在传输延迟的情况下提供了更强大的计算能力(例如大数据处理)和更多的数据存储。边缘计算的基本结构如图1所示,此体系结构的目标是执行边缘网络中应用程序的计算密集型和延迟敏感部分,并且边缘服务器中的某些应用程序与核心云通信以进行数据同步。
图1 边缘计算基本架构
边缘计算的兴起主要由某些对延迟敏感的应用程序的(例如虚拟现实)需要,这些应用程序对延迟有严格的要求。因此,通过将云资源和服务推向边缘的计算范式可实现移动性支持,位置感知和低延迟。图二显示了边缘计算的典型特征。
图2 边缘计算的特征
- 位置感知和低延迟:在物理和逻辑意义上,边缘计算都支持比远程集中式的云能够更有效的对传感设备进行通信和信息分发。由于传播距离短,边缘计算有潜力在更多实时性要求高的应用中发挥更大的潜力。例如煤气泄漏事件,当IoT设备收集到数据时,首先要做的是关闭煤气阀门,而不是传到云端再去处理,这样的场景中边缘计算能够发挥巨大的价值。此外,由于边缘计算靠近终端,因此对设备的移动更敏感,边缘节点间的协同能够实现物联网的位置感知功能。
- 智能和自组织管理:现代边缘节点的性能足以满足一组本地用户的高速率传输,大数据存储和复杂的计算程序的需求。这为应用程序的自治管理和边缘协调开辟了道路,从而可以将本地设备的计算和存储卸载到本地边缘计算节点,或有选择地委派给其他节点或云核心。
- 分布式和隐私保护:许多边缘计算服务器可能是私有的Cloudlet,而这些较少的信息集中度将减轻因所有权和数据管理分离而导致的云计算中信息泄漏的担忧。例如,企业部署的边缘计算节点间会敏感地交换信息,分布式的架构具有增强隐私的潜力。
- 异构和可扩展:云计算满足不了目前大规模爆发的物联网数据计算需求。IoT联网设备和产生数据的增长量远大于云计算的增长。边缘节点由于其分布式架构,所以节点间可以大量扩展。因此,边缘计算是实现设备可扩展的一种可行的方法。此外,边缘节点能够提供标准化接口,从而消除物联网设备的异构型,进一步提供计算效率。
区块链是什么
区块链这个名词想来大家并不陌生了,国家强调要把区块链作为核心技术自主创新重要突破口,明确主攻方向,加大投入力度,着力攻克一批关键核心技术,加快推动区块链技术和产业创新发展。区块链的概念首次由中本聪在论文《一种点对点的电子现金系统》中提出,区块链是一种链条式的数据库,链条的主体是区块。每个区块(Block)可以分为区块头和区块体,区块头记录了前一区块的摘要,而区块体则是交易账本,包含大量交易内容、交易时间等。是后一区块绑定了前一区块的内容,多个区块集合起来,构成链条结构。为了更加直观的了解区块链,其实我们可以将区块链系统类比互联网架构进行层级划分,从下至上依次是数据,网络,共识,帐本拓扑,激励,智能合约和应用程序层,如图3所示。
图3 区块链基本架构
数据层封装了通过从不同应用程序以块或事务的形式生成的数据。两方之间的交易进行验证并装入一个区块中,下一个区块总是指向前一个区块,从而产生块的有序列表。网络层定义了区块链使用的网络机制。该层的目标是传播从数据层生成的数据。通常可以将网络建模为P2P网络,其中对等方是参与者,一旦生成交易,区块将被分发给邻居节点,并且仅转发有效的交易。共识层由共识算法组成,从而在分散环境中的不信任节点之间达成共识。
在现有系统中,存在三种主要的共识机制:工作量证明(PoW)权益证明(PoS)和实用拜占庭容错(PBFT)。账本拓扑层主要是存储共识层产生的认证数据。除了图3所示的传统区块链(主链)结构外,一些新的链拓扑能够大大增强区块链的可扩展性。例如,闪电网络可以提供小额支付渠道来发送交易,其价值转移发生在区块链之外。激励层集成了经济激励措施,以激励节点做出自己的努力来验证数据。这对于保持分散的区块链系统在没有中央授权的情况下整体运作至关重要。
在比特币和以太坊中,比特币和以太币将作为奖励,向在链中添加区块的节点进行奖励。除了奖励外,存款和罚款都被引入到区块链中以保护外包计算。智能合约层将可编程特性带入区块链。比特币脚本提供了多种花费硬币的方式。基本上,事务的每个输入都连接到先前的输出,并且在输入的输入给出给定签名的情况下,当输出的脚本评估为true时,该连接才有效。在以太坊中,作为功能强大的脚本的智能合约是一组状态响应规则,用于在用户之间自动转移数字资产,而不仅仅是货币。区块链的最高层是应用程序,包括加密货币,物联网(IoT),智能城市等,这些应用程序可能会革新金融,管理和制造等许多领域。然而,区块链仍处于起步阶段,学术界和行业都在尝试深化该技术以支持这些高级应用程序。区块链被认为是“下一代颠覆式创新技术”,作为分布式记账系统的核心技术,区块链被认为在金融、物联网、商业贸易、征信、资产管理等众多领域都拥有广泛的应用前景。
区块链技术尚处于快速发展的早期阶段,涉及分布式系统、密码学、博弈论、网络协议等诸多学科知识。其核心优势就是通过去中心化,运用数据加密、时间戳、分布式共识等手段,构建全新信任机制和高效协同机制,从而催生诸多全新的应用场景。
二者结合赋能新模式
2018年中科院计算技术研究所信息技术战略研究中心发布的《边缘计算技术研究报告》中提到的内容:“边缘计算目前的推进有一问题,海量的、分布式计算结果不用上传到云平台上,但云平台后期要追溯某个计算的数据,就没有办法实现。”此报告认为,区块链技术有望突破边缘计算这一技术瓶颈,并将加速物联网去中心化的趋势。区块链为什么可以和边缘计算结合?因为边缘计算面临着安全的挑战。我们知道,随着物联网的发展,大量部署在传统数据中心、云内的基础设施(存储、计算、网络)将不可避免的被推出机房,重新部署在边缘和终端设备上。这样发展的结果就是大量边缘设备缺少机房的物理屏障,并且部署在防火墙外,将面临以下严重的安全挑战:
- 很多边缘设备内部是计算能力较弱的嵌入式芯片系统,很难实现自我安全保护,容易成为黑客的接入点。
- 边缘或终端设备可自组织地加入某一物联网系统;
- 系统缺乏对设备的控制权,进而缺乏对恶意设备的识别及防范能力。
所以这个时候,区块链最显著的数据永久保存和防篡改就排上了用场。幸运的是,作为大规模分布式去中心化系统,区块链通过哈希链及共识算法,提供了数据永久保存及防篡改特性,可以有效地辅助解决物联网边缘计算环境中各类安全问题。此外,通过有效利用区块链的去中心化特性,亦可以构建去中心化文件系统、去中心化计算系统等,为物联网的发展提供有效支撑。边缘计算的网络,一般是分布式的,在这个网络之中也存在着不同的节点,而每个节点也运行着这样或者那样的运算服务,接入网络的设备不仅仅有专用设备,甚至有的边缘计算项目也提供了更多的小型设备专用软件,如小米、tplink等智能路由器可以刷的openwrt固件、各种品牌电视盒子使用的安卓系统、树莓派运行的Linux系统等等,而在这些小型系统之中完全可以根据设备实际网络、存储大小等分配一定的计算任务,这些计算设备利用一定的资源完成任务,最后获得一定的代币奖励,这也是最简单的边缘计算模式,再利用区块链的智能合约、分布式记账机制和token形式的通证,完全可以实现无人值守的经济网络,甚至一些特殊算法的挖矿设备也可以利用边缘计算的模式进行人工智能加速。图4展示了区块链在边缘计算中应用的简单示意图。
图4 区块链赋能边缘计算
智慧家居作为一个边缘计算的一个典型应用场景,利用区块链技术能够提升系统整体的安全性和可信性。如果要减少中心化的智慧家居的负面影响,就需要引入去中心化的区块链技术。因为智慧家居的设备都具有边缘计算能力,以区块链作为各设备彼此连接与交互的基础,可以保证所有设备在网络中的地位都是平等的,厂商们将专注于自家设备的精进而无需分心考虑争夺智慧家居的制高点,智慧家居的单一最高控制权也将完全回归用户手中。区块链的加密与共识机制,能够保障设备之间的连接与交互不以牺牲网络整体的最大利益为代价。因此,即使个别设备被人骇进控制,整个网络不会因此的沦陷,同时,也能够迅速将被渗透节点隔离出网络、不影响其他节点继续正常工作,更不会存在任何DDoS攻击的空间。
道阻且长
寻找边缘计算与区块链技术的关联与结合也许是一个新的突破口。然而,边缘计算和区块链的结合在目前并不是完美的。边缘计算和区块链在各自应用于物联网的过程中,虽成果可观,但也长期存在着大大小小的问题。边缘计算作为物联网领域对云计算的补充,除数据追溯问题外,在算力通用性、付费模式以及数据安全方面的问题着实令人头疼。区块链技术与物联网边缘计算的结合则始终面临着服务托管、计算性能、响应时间和海量存储等方面的困扰。在边缘计算的应用场景下,解决数据安全、计算资源分配不均等问题须尽快提上日程。针对边缘计算服务器实际计算力的局限性和物联网的私有性特质,相关研究表示,“白名单制”是现下较为现实可行的解决办法,即省略“挖矿”达成共识机制的过程。但这也意味着,一旦有其他设备冒充物联网终端白名单设备与移动边缘计算服务器进行交互,安全隐患也将大大增加。另外,由于移动物联设备本身PoW能力较弱,甚至不具备挖矿能力,这便要求移动边缘计算服务器的参与。然而,当众多物联终端委托统一的边缘计算服务器进行计算时,资源分配该如何实现?又该通过怎样的共识机制实现最优应用?“边缘计算+区块链”的尝试依然任重道远。
参考文献
[1] (Dorri, Kanhere et al. 2016, Li and Zhang 2017, Casado-Vara, de la Prieta et al. 2018, Liu, Yu et al. 2018, Seitz, Henze et al. 2018, Yang, Yu et al. 2019)
[2] Casado-Vara, R., et al. (2018). Blockchain framework for IoT data quality via edge computing. Proceedings of the 1st Workshop on Blockchain-enabled Networked Sensor Systems, ACM.
[3] Dorri, A., et al. (2016). "Blockchain in internet of things: challenges and solutions." arXiv preprint arXiv:1608.05187.
[4] Li, C. and L.-J. Zhang (2017). A blockchain based new secure multi-layer network model for Internet of Things. 2017 IEEE International Congress on Internet of Things (ICIOT), IEEE.
[5] Liu, M., et al. (2018). "Distributed resource allocation in blockchain-based video streaming systems with mobile edge computing." IEEE Transactions on Wireless Communications 18(1): 695-708.
[6] Seitz, A., et al. (2018). Fog Computing as Enabler for Blockchain-Based IIoT App Marketplaces-A Case Study. 2018 Fifth International Conference on Internet of Things: Systems, Management and Security, IEEE.
【本文为51CTO专栏作者“中国保密协会科学技术分会”原创稿件,转载请联系原作者】
[7] Yang, R., et al. (2019). "Integrated blockchain and edge computing systems: A survey, some research issues and challenges." IEEE Communications Surveys & Tutorials 21(2): 1508-1532.
[8] 洪学海, 汪洋, 郭树盛. 边缘计算技术研究报告[EB/OL] http://www.cnic.cas.cn/xwdt/yfdt/201811/P020181108393346075254.pdf. 2018,2