最近在看云计算,雾计算、边缘计算和露计算,结合区块链产生了一些新的思考。
毕竟年纪大了,有重要的东西就只能抓紧记下来,以免今晚睡一觉就什么也记不得了。
以下有是我根据各大网站、论文、书籍整理的相关内容。(如若侵权,请邮件联系我!)
云计算
云计算是一种利用互联网实现随时随地、按需、便捷地使用共享计算设施、存储设备、应用程序等资源的计算模式。云计算系统由云平台、云存储、云终端、云安全四个基本部分组成。云平台从用户的角度可分为公有云、私有云、混合云等。通过从提供服务的层次可分为基础设施即服务(Iaas)、平台即服务(Paas)和软件即服务(Saas),目前还出现了区块链即服务(BaaS)。
开发者将应用部署到云端后,可以不必再关注那些令人头疼的硬件和软件问题,它们会由云服务提供商的专业团队去解决。使用的是共享的硬件,这意味着像使用一个工具一样去利用云服务。只需要按照你的需要来支付相应的费用,而关于软件的更新,资源的按需扩展都能自动完成。但是现阶段云计算存在计算延迟、拥塞、低可靠性、安全攻击等问题,为了应对这些问题,提出雾计算和露计算等概念。
雾计算
雾计算旨在终端(个人电脑,手机等)和数据中心之间再加一个网络边缘层(例如再加一个带有存储器的小服务器或路由器),把一些不需要放到“云”上的数据在这一层直接处理和存储,以减少“云”的压力,提高了效率,也提升了传输速率,减低了时延。
雾计算并非是些性能强大的服务器,而是由性能较弱、更为分散的各种功能计算机组成,雾计算是介于云计算和个人计算之间的,是半虚拟化的服务计算架构模型,强调数量,不管单个计算节点能力多么弱都要发挥作用。与云计算相比,雾计算所采用的架构更呈分布式,更接近网络边缘。雾计算将数据、数据处理和应用程序集中在网络边缘的设备中,而不像云计算那样将它们几乎全部保存在云中,数据的存储及处理更依赖本地设备,而非服务器。雾计算是新一代分布式计算,符合互联网的“去中心化”特征。自从思科提出了雾计算,已经有ARM、戴尔、英特尔、微软等几大科技公司以及普林斯顿大学加入了这个概念阵营,并成立了非盈利性组织开放雾联盟,旨在推广和加快开放雾计算的普及,促进物联网发展。雾计算是以个人云,私有云,企业云等小型云为主。从上面的描述中可以看出雾计算已经出现分布式的特点。
云计算重点放在研究计算的方式,雾计算更强调计算的位置,它们在网络拓扑中的位置不同。雾计算介于云计算和个人计算之间的,是半虚拟化的服务计算架构模型。此外,雾计算实际上并没有强力的计算能力,雾计算是将物理上分散的计算机联合起来,形成较弱的计算能力,不过这样的计算能力对于中小型的数据中心,完全够用了,雾计算弥补云计算本地化计算问题。
说了这么多抽象的理论,到底雾计算有哪些应用呢?雾计算通常和物联网技术结合实现落地。物联网发展的最终结果就是将所有的电子设备,移动终端,家用电器等一切都互联起来,这些设备不仅数量巨大,而且分布广泛,只有雾计算才能满足,有了雾计算才使得很多业务可以部署。例如智能交通灯,针对移动性和位置信息的计算,计算量不大,但是对时延要求高,显然只有雾计算最适合。试想如果城市中的所有交通灯都需要有数据中心云计算来统一计算而指挥所有交通灯,这样不仅不及时也容易出错。智能交通灯本意是根据车流量来自动指挥车辆通行,那么实时计算非常重要,雾计算使得每个交通灯自己都有计算能力,从而自行完成智能指挥。
边缘计算(MEC)
目前还处于概念阶段,乍一看雾计算和边缘计算好像是一个东西,翻阅很多资料我发现,边缘计算概念出现时间上早于雾计算,处理能力更靠近数据源。雾计算可以进行边缘计算,但除了边缘网络,雾计算也可以拓展到核心网络,也就是边缘和核心网络的组件都可以作为雾计算的基础设施,而边缘计算更多地专注于终端设备端;雾计算在节点之间具有广泛的对等互连能力,边缘计算在孤岛中运行其节点,需要通过云实现对等流量传输。
以吸尘器为例说明,集中化的雾节点(或者IoT网关)继续从家中的传感器收集信息,检测到垃圾的话就启动吸尘器;边缘计算的解决方案里传感器各自判断有没有垃圾,来发送启动吸尘器的信号。
雾计算与边缘计算都是将智能和计算能力推向靠近数据来源的位置,因此他们常常被混用。他们的区别也正是计算能力所处的位置:
1)雾计算将计算能力推向局域网,在雾节点或物联网的网关处完成数据处理;
2)边缘计算将边缘网关的智能,处理能力和通信能力直接推送到诸如可编程自动化控制器的设备;
下图可以看出两者区别
以下是从网络上copy的边缘计算优缺点:
优点
1)接近实时的数据处理:因为数据是在边缘结点进行分析,降低了延迟,提升应用的响应速度;
2)减少数据传输:数据不需要推送到遥远的云端,减少智能设备和数据中心传输的数据量,节省带宽成本,同时还能减小核心网络的拥堵。比如facebook等社交软件的用户上传的照片在边缘调整到合适的分辨率再上传到云端;
3)数据安全:一些比较敏感的数据直接在边缘进行分析,不用当心数据泄漏;
4)提高可用性:分担(offload)了中心服务器的计算任务,一定程度上消除了主要的瓶颈,并且降低了出现单点故障的可能;
缺点
任何东西都是有缺点的,如果只看到优点说明理解的不够深入。边缘计算还处于概念阶段,同样存在很多问题,比如:
1)使边缘设备具有处理能力意味着更高的成本和更容易被入侵的危险;
2)在大量的边缘设备上进行应用部署和服务监控会成为一个棘手的问题;
3)在边缘进行分布式计算并与云端协调任务会让应用编程变得更加复杂;
和区块链的一些思考
区块链作为一种分布式计算范式,发展的历程也是经受很多坎坷。想象一下假如可以利用区块链技术帮助云计算、雾计算和边缘计算获得更高的性能是不是很棒呢!在IOT中所有的设备都可以无人工干预的情况下连接到区块链中,这些设备成为区块链中的结点,其中产生的数据直接传到区块链网络中,这样每个IOT设备都可以扩展自己本身的能力,例如加入数据分析能力,利用其余设备传上链的数据直接在终端中进行数据分析从而做出更好的决策。
以智能交通等为例,假如所有交通灯都可以看作一个IOT设备,同时也可以看作一个区块链结点,一个城市所有的交通灯构成区块链系统的结点,每个结点之间贡献数据,同时这个网络有一定的数据分析能力。当A道路拥挤时,与之相连的B和C道路可以获得从A交通灯收集的数据快速分析后可以实时调整B和C交通灯的时长,从而自动缓解交通压力。
当然,目前这仅仅是想法,但是我相信随着IOT和区块链技术的发展,此想法终究会实现。拭目以待!