物联网平台的技术挑战

IoT时代的技术又遇到怎样的不同与挑战,简单总结一下阿里云IoT场景中咱们面临的问题与挑战。数据库

多样的链接

万物的互联,链接的形态也在悄然的发生变化,从WIFI,3G/4G,BLE到NB-loT,LoRa,传统的RS232,RS485, CAN BUS等等也登上新的舞台,本来相互无关的网络形态,交织在一块儿,异构的网络构建着统一通信。编程

面对着智能生活,智能工业,智能城市,智能园区,有的场景追求低功耗,有的场景追求低延迟,有的场景追求吞吐量,面对着不一样的需求,单一的网络形态以及网络协议很难知足不一样的场景需求。
举例来讲,在协议方面:缓存

MQTT协议

具备轻巧的特性,简洁优雅的PUB/SUB模型很是适合消息驱动的场景,短小精致的特色同时对弱网环境以及资源受限环境的十分友好。安全

CoAP协议

CoAP主要基于UDP,与HTTP类似的模型为嵌入式资源受限的场景提供了REQ&RSP的能力,这种模型更适合多数开发者的习惯,这种模型更适合多数开发者的习惯。UDP面临最大的就是下行寻址的问题,但在局域网本地通讯很是适用,同时在IPv6时代也会迎来一些新的思考。另外 COAP over TCP也是很是值得看好的。网络

HTTP/2

HTTP/2的多流特性,天生就是为复杂场景而设计的,数据报与双向流能力的支持,极大的扩展了应用场景,多流的特性也能够为其余协议提供良好的封装能力,可谓是有潜力的的全能通道,在大数据场景以及流数据场景驾轻就熟。架构

AMQP协议

AMQP适合吞吐量极大的云云消息流转场景,多信道支持,同时具有良好的开源生态,也是被普遍用于在构建云云,云边(边缘端)场景。运维

其余协议

还有大量传统的协议,例如J1939, Modbus,OPC等等,不一样的接入方式,不一样的网络链路,不一样的链接协议,构建了史无前例的繁荣与复杂。
链接不止于此,也留给咱们更多的思考:编程语言

  1. TCP长连保活模式能够被颠覆吗?
  2. SDN在IoT时代能够从新被定义吗?
  3. 下一代网络会是什么样的?

技术链路长

一个经典的IoT闭环应用不只仅涉及传感器,芯片,模组,OS,主控程序,网络以及链接协议等等,还有云平台的数据建模与结构化,存储,加工,分析到应用分布式

链路长的挑战在于一是不容易看到全貌,二是不容易把控各点。模块化

链路长更大考验的是分工,协做以及整合,这种分工不只仅是公司内的分工,更可能是合做伙伴的分工,行业的分工,生态的协做。

loT时代的全面来临,正是各类技术积累的必然结果。

从技术视角,从单点看,每一个技术链路上的点也充满着巨大的挑战。例如

  • 传感器-如何提开精度,下降成本,带来持绠的硬件技术红利...
  • 芯片组-如何持续提高性能,不断提开工艺,研发新协处理器...
  • OS-如何在碎片化的格局下作好通用性,良好的可移植性,还有确保资源占用足够小...
  • 网络-如何知足低功耗,传输距离,传输性能,稳定性...
  • 从全局上看,也充满着挑战。例如
  • 稳定性一随着路的增加,全局的稳定性4.jpg

会持续降低,确保全链路的可靠性就值得深刻的思考与践行

终端碎片化

移动互联网时代早期,你们必定对手机不一样系统的适配的繁杂记忆犹新,在应用层,你可能会面临奇奇怪怪的兼容问题,当你接触到 native或者framework/层,有些适配的问题更是让你疲意不堪

对于IoT,如今的终端不只仅是手机,还有冰箱,彩电,空调,汽车,水表,吊车...,

面临的不只仅是 Android,iOS,有 Linux,RAM, FreeRTOS,uCOS,Mbed,QNX等等,还有大量没有OS的:)

你会面临接入的终端可能TCP的协议栈存在各类bug,你可能会面临永远也没法升级并且死循环在链接你的设备,你可能会面临DNS永久被缓存的场景....

海量链接

今天IM链接了人,达到了数十亿的规模,但实际的在线长链接数会少不少,对于支持这样的链接规模,已经很了不得,咱们的支付宝也同样。

但不久后的IoT链接的是数百数千亿设备,会是十亿百亿在线规模,这里面面临的挑战更是巨大,这样的规模也是IT工程史上史无前例的,充满了未知。

例如网络抖动,时钟溢出,或者是一批设备的故障,都是巨大的共振,会对平台以及基础设施产生极大的冲击,如何防御以及快速的恢复?

海量链接不只仅关乎稳定,例如如何有效的就近接入,让信息经过最短的路径投递,提高效率以及节省成本?

保障海量链接的稳定,安全,高性能,低成本,每个都是很大的话题。

巨量数据

移动互联网时代今天大量的数据来源于C端场景,数据已经可谓是海量。对于常规以人为核心的应用,日活比例也不会过高。

但物联网设备的特征与人仍是有还大差别,以典型的生活场景为例,若是是1亿设备,在线大于可能在3千万,关键是这些设备还不时的会上报数据,对于平台几乎时时都在秒杀,产生着巨量的数据。

若是是10亿设备呢,若是是100亿设备呢?100亿的设备并不遥远。

如此大量的loT数据会迫切的引起对数据质量的思考,数据的信息密度的思考。怎样治理数据质量?数据怎样分级存储?数据如何更高效的清洗与萃取?

在咱们都在讨论大数据的时候,举个有趣的例子。当你到IoT工业场景中,你会发现有不少都是个性化的设备,这些设备会产生很多数据,可是还算不上大数据,咱们大数据的分析平台与技术在解决个体设备的数据分析时,就是杀鸡用了牛刀,成本的问题又突显出来。因此又可能引入小数据的从新思考。

还有,以聚合计算为主体的分析引擎,在面对CEP( Complex Event Processing)场景的计算时,又每每不那么有效。
面对IoT场景,数据分析,存储需求都面临了一些变革,其根源来自于场景的多样型。

云端一体

各类迹象都在代表将来去中心的趋势。孙正义2017年在一次演讲中说起,末来鞋子的一块芯片的计算力会超越人脑,那真正是无处不在的计算。

当计算触手可得的时候,就再也不须要用时间换计算力,随时随地计算,并且更加的自治。

这说的有点大,从小的角度来讲,在不少特定的场景,例如工厂数字化采用云端集中式会存在可靠(例如断网风险,成本(例如带宽成本),性能(例如须要更快响应),安全(例如不但愿数据被扩散)的需求,这种场景最佳的方案就是边缘计算。

但今天的边缘计算不一样与之前的本地或单机系统,是大网络中的小网络,是大协做中的小自治。

今天的边缘计算的核心是云端一体的协同,云端提供了更强的控制力与计算力,边缘端提供更实时的执行力。

在技术的架构上,云与端也愈来愈趋于类似,因此,云端的一体一是指工做的协同,另外一方面也是架构的趋同。

边缘计算是云计算能力的延展,会覆将来的技术格局,也会对互联网的中间件带来新的创新机遇。例如,若是把边缘看做一个单元,那也会是无处不在的单元化。例如,将来也会出现异构网络下的通信中间件等等。

那个时代,可能会从新定义分布式!

数字世界建模

咱们在说物理化数字世界,loT的核心使命是把物理世界投影到数字世界,创建物理世界与数字时间的双向同步机制。如何在数字世界描述物理世界呢?这就是咱们物的建模,这种建模充满着遐想。

经过对物理世界的数字化,咱们就能够在数字世界从新认识物理世界,甚至能够四维导航,或是展示如今,或是导航到历史的截面,或是预测到模糊的将来。

若是建模的太通用,相似数据库的ER( EntityRelationship)模型,或者编程语言的OO( Object Oriented)模型,仿佛又回到过去,建模太定制,又难以有足够的表达力。

从OCF,OMA,W3C到咱们发起的ICA,都在制定相应的物模型,如何让模型成为落地标准,成为构建数字世界的基石,成为数字世界被此感知以及互操做的基础,也是一件不容易的事情。

如何恰如其分的在数字世界去表达物联世界,而后驱动数字世界,改变物理世界,带给咱们无尽的想象以及变革的机会。

部暑多样性

回到最现实的地方,IoT的PaaS会面临各类应用场景,衍生出各类部署场景,例如公有云,专有云,混合云,边缘云,网关等等,将来的百亿链接必定不会只在数个集群,面对如何繁多的环境,如何作到快速部署,便捷的运维,也是留给咱们要去克服的课题。

对于部署,

先看架构问题,平台须要良好的伸缩性以及模块化,例如须要有云原生应用的特性。

再看依赖问题,依赖的各类中间件就很难带到各个环节中,咱们须要SAL( Service Abstract Layer),须要具备不挑环境的中间件,须要保持系统的最小依赖...

再看发布问题,环境如何快速部署,如何确保及时更新,如何让集群快速复制?

再看运维问题,在异构的形态上构建统一的运维体系,还有众多细节问题须要去解決。

安全问题

引用 Thoughtworks 2018年技术雷达报告中对IoT的描述:物联网(IoT)生态系统持续稳步发展,关键成功因素包括安全和成熟的工程实践。

安全对于物联网相当重要,也是不少业务初期容易忽略的。在过往的几年,业内物联网的安全事故也是层出不穷。物联网赋予了设备以及业务更大的空间,一样不若是不守护好安全这扇门,帯来的灾难也是致命的,不只仅是财务损失,甚至涉及到人身安全。

举些具体安全的例子:

  • 如何防范设备身份可能被盗取或者被破解?
  • 如何防范固件可能被截获,甚至是纂改?
  • 如何防范设备中间人攻击?
  • 如何防范云平台的DDOS攻击或进一步的CC攻击?
  • 如何防范设备的越权访问?
  • 如何防范设备数据被截取,被簒改?
  • 如何防御设备不会被非受权控制?
  • 如何防范平台数据不泄漏?
  • 如何包含我的信息安全?
  • 如何保障漏洞被及时修复?
  • 如何保障数据中心被非法闯入?

物联网的链路长,碎片化严重,合做方多,安全危害大,这些特色让安全问题变得特别的突出。

保障安全也是一项体系化的工做,不只仅是技术层面的,还包括相关制度以及人员管理。

在技术层面,既有端的安全,网络安全,也有云平台的安全,除了系统自己的安全,也有业务层面的安全。相对其余系统,物联网有不少新的安全挑战。例如终端的身份发放以及保存,固件的保护,异构网络下传输安全,双向鉴权,传输加密套件的精细化选择问题,采集的信息脱敏处理等

结语

总结一下loT平台面临的工程技术挑战,也是咱们正遇到的,以及正在努力解決的。实现一个平台的基本功能其实看似不难,可是真正保障高可用,高性能,高安全以及可伸缩性其突挑战是巨大的。


本文做者:问途

原文连接

本文为阿里云内容,未经容许不得转载。

相关文章
相关标签/搜索