阿里云物联网平台技术解读与实践

​导读:阿里云物联网平台旨在为客户设备数字化转型升级提供物联网基础设施,让客户不需要关注设备连接和管理基础能力,更聚焦在自己的业务逻辑上。本次分享主要包括物联网平台的稳定连接、海量消息、物模型(设备建模)、大规模设备管理、监控运维等核心技术。

全文将从以下四方面展开:

  • 物联网平台定位
  • 物联网平台关键技术
  • 物联网平台高可用架构
  • 典型案例

分享嘉宾|熊益群 阿里云 物联网平台技术负责人

编辑整理|张淦 越亮传奇

出品社区|DataFun


01/物联网平台的定位

先看一下物联网平台的定位。

1. IoT 基础链路

一个普通的设备,以光伏逆变器为例。它通过 IoT 技术升级成为智能设备,要经过端、边、网、云 4 个关键步骤。在端、边、网都具备的前提下,物联网平台能进行设备连接和管理,帮助设备实现在线化和数字化。

接下来,我们看一下物联网平台的价值。

2. 物联网平台价值

我们以一个场景为例来说明,一个新能源企业,之前光伏变电站业务是线下的,现在希望业务上云。它需要面临如下几个问题:

  • 采集器接入问题。包括如何接入云端?数据传输协议怎么选型?连接后的安全性和稳定性怎么保障?
  • 电站管理问题。包括气象数据实时采集怎么建模?如何实现逆变器故障预警?如何实现风机远程维护?设备固件升级怎么搭建?
  • 电站管理的最终目标是实现智能发电,达到降本增效的目的。此时就面临着一些数据分析问题的挑战。比如分销商累计发电量怎么统计?电站的故障率怎么统计?同一城市的平均发电量是多少?等诸多问题。所有问题都解决后,才能实现企业的光伏监控应用。

由此可见,物联网平台提供了设备连接、设备管理和数据分析等功能。所以,物联网平台的价值就是作为客户业务上云的基础设施而存在。客户无需关心平台内部的一些数字化的关键技术及其细节,只需要将重点聚焦在光伏监控应用这样的核心业务上面。

3. 自建物联网平台的挑战

基于物联网平台产生的应用价值,我们可以思考一下,如果客户想自建一个物联网平台会面临哪些挑战呢?

一个简单的物联网平台包括几个基本模块:设备要连上云,需要连接Server模块;连上云后上报数据,需要消息转发模块和服务端的业务模块;业务模块包括设备数字化建模、设备管理、设备运维及数据分析等一些能力。几个模块构建好了,就可以开发 web、app 等应用。

① 面临的挑战

在进行连接、管理和建模的过程中,由于海量设备的出现,很容易出现一些问题。

举个例子:比如设备连接这个节点(模块),要保证设备实时在线,就需要采用长连接的方式。而长连接可能由于网络抖动造成设备批量下线而导致连接风暴,这是大部分物联网平台都面临的一个问题。实际上每个节点(模块)都会产生一些问题,在后面的核心技术环节中再分别展开介绍。这是从模块上我们看到面临的一些挑战。从架构上来看,我们也面临着容灾能力、弹性扩展能力以及全球化部署的一些挑战点。

② 阿里云的技术优势

基于以上的一些挑战,阿里云经过多年的技术沉淀也形成了 IoT 的一些优势:

  • 在 SDK 侧,提供了低资源消耗、易接入的 SDK,这是面向端侧的;
  • 在云上,我们达到安全、稳定、快速连接能力;
  • 消息队列上,达到可靠、低延时的消息队列;
  • 在设备建模上,除了支持简单设备,也支持复杂设备,复杂资产的建模能力;
  • 在设备管理和运维能力的构建上,能够应对大规模的场景;
  • 在整个架构能力上,支持隔离、容灾的架构能力;
  • 在交付部署上,我们在全球部署了 8 个 Region,能支持混合云、一体机的交付方式。

以上橙色部分就是对连接、消息、管理、运维、架构方面的技术介绍,下面第二部分对物联网平台的关键技术进行详细介绍。

02/物联网平台的关键技术

1. 连接

① 连接

物联网之所以难,就是因为物联网终端的特殊性,导致物联网在大规模的场景下面临一些技术挑战。

  • 碎片化

第一个挑战就是碎片化。物联网设备的碎片化严重程度远超于以前的移动互联网手机终端的情况。因为物联网设备的模组、芯片、操作系统、网络以及资源消耗情况都导致了设备碎片化及其严重。

应对这种碎片化,阿里云平台的连接层怎么帮客户将不同设备连上物联网平台?阿里云支持多种协议,如适用于低功耗场景的协议 CoAP、HTTP 等,还有 MQTT 协议是标准的低功耗场景连接协议。针对局域网场景,平台支持各种网关和边缘代理模型。如果客户自建物联网平台,采用标准的 MQTT 协议,阿里云支持一键存量迁移。这些能力都是应对碎片化挑战

  • 远程实时在线

第二个挑战就是物联网设备需要远程实时在线。物联网设备一旦上云,需要具备远程控制和远程监控能力。所以,大部分物联网设备都需要选择采用低功耗、长连接方式。这样可能因为设备批量故障、云平台发布、网络抖动等原因导致大规模设备集体上线、下线,从而触发整个雪崩。

在物联网的连接稳定上,阿里云实现了一些能力。在网络代理层,通过TLS 卸载、热更新、Session 转移等能力,实现了在发布过程中和网络抖动中,支持连接优雅下线,从而防止了连接风暴。同时在连接故障的时候,我们实现了整个连接 FailOver、能支持百万设备掉线 3 分钟故障转移目标。

  • 地域分布广

第三个挑战就是地域分布广。物联网设备可能位于地下、高空、动物身上,甚至在地球的每个角落。物联网设备分布广、规模大,其数量可能是移动互联网的几个量级,而且安全要求性也非常高。

基于这个特性,阿里云物联网平台在安全通道上做了一些加强手段。如高防系统、安全通道、数据安全等。平台支持 600Gbps DDoS 防御、通道采用 TLS 加密以及支持等保 2.0 认证(三级)。

阿里云在全球部署 8 大数据中心,根据IP地址就近选址,达到物联网设备接入,同时通过 DNS 智能选路和网络加速,从而使设备达到毫秒级接入的速率。

② 连接-核心技术

以上的连接特性基于下图的核心技术。

2. 消息

连接不是目的,设备连接后需要上报消息。上报消息是上行链路,客户通过物联网平台往设备下行消息,属于下行链路。

① 消息

所以,消息在 IoT 链路中至关重要。IoT 消息跟传统的消息又有很多不同点,也导致 IoT 消息在高可用建设上有很多挑战。

  • 第一挑战是可达率要求高。在传统消息传输中,消息丢失影响可能不是很大;IoT 应用场景非常广泛,消息传输中,丢失消息可能会面临影响民生安全的风险。
  • 第二个挑战实时消息优先。不同于传统的消息采用先进先出模型,尤其是消息积压的情况下。物联网消息要求保证实时的消息能优先被订阅、优先去获取。
  • 第三个挑战是海量 Topic。IoT 消息的 Topic 模型是跟设备的规模呈正相关的,都是亿级规模,跟传统的消息相比是非常大的量级。
  • 第四个挑战就是适配开源协议。IoT 消息有自己的特性,客户在自己服务器上通常会使用开源协议。
  • 第五个挑战就是规则引擎。这个在后面详细介绍。

所以,IoT 消息队列承载着日均百亿级消息的上下行流转,南向将上行数据通过规则引擎或 IoT AMQT 队列流转到用户服务器,北向为用户服务器提供同步控制、全量广播等多种下行控制能力。

阿里云平台有如下几个关键技术点:

  • 消息可达率高

通过消息全链路容灾、消息多维度隔离(包括通过租户隔离、设备隔离、实时与离线隔离、上下行隔离)等手段,使消息可靠率达到 99.99%。

  • 消息实时保障

通过推拉结合、实时优先、灵活路由管理来保障消息的实时性。

  • 海量 Topic

通过计算存储分离架构进行分布式存储、动态分片、广播等方式达到海量 Topic。

  • 协议网关解耦

可以适配面向端侧和应用侧的 MQTT、CoAP、AMQP 等多种开源协议,确保协议网关解耦。客户无需感知 IoT 消息队列的特性。

以上是关于消息的阐述,下面我们详细了解一下消息规则引擎。

② 消息——规则引擎

为什么会有规则引擎呢?因为,IoT 消息不同于传统消息,它具有海量、高频、数据密度非常低等特点。海量、高频、低密度的数据直接流转到客户的业务服务器会带来高风险、高成本、低价值的风险。

所以,IoT 消息规则引擎为用户提供了 Serverless 规则计算和流转能力,用户可以提前在物联网平台直接将设备数据经过解析、提取、过滤、加工,写入用户云产品或流转用户服务器。

阿里云的规则引擎具有如下特性:

  • 丰富的计算加工能力

规则引擎最关键的就是规则计算,需要丰富的计算加工能力,也就是算法。阿里云物联网平台支持 SQL 语法计算、支持类 JS 自定义脚本语言、扩展了大量函数及支持物模型加工、支持 8 种云产品富加工流转。

  • 弹性分配调度资源

由于它是计算密集型的规则任务,所以对计算资源的弹性分配就非常关键。阿里云平台通过一致性哈希调度、集群流量均衡、集群调度管控运维等,确保资源弹性分配,不会倾斜。

  • 隔离、容灾与重试

由于规则引擎是完全托管式的,客户规则也完全采用自定义方式,不太可控。为了防止规则执行带来的资源竞争,同时影响客户服务器的稳定性。阿里云平台在规则引擎的隔离、容灾与重试也是非常完备的。支持解析器与执行器分组隔离,包括 Action 级别隔离。当规则出现异常的时候,能落盘本地重试与容灾。

③ 消息——核心技术

以上介绍的 IoT 消息基于上图所示几项核心技术,由于时间关系,具体细节就不赘述了。

3. 物模型

我们对上百亿级的消息进行了处理,最终的目的就是要应用,这就涉及到了物模型。物模型是阿里云物联网平台为产品定义的数据模型,用于描述产品的功能

① 物模型——演进路径

前面讲的设备连接和消息,其核心还是帮助设备去进行在线化。物模型是帮助客户进行设备数字化。

阿里云平台 2017 年在业内提出物模型,当时只能应用于智能生活场景的一些简单设备,比如对灯泡、空调进行建模。近 2 年,为了应对复杂场景、复杂资产,比如工业领域、建筑领域,阿里云平台支持数字孪生建模和运算能力。针对数字孪生建模,阿里云平台以后会扩展 3D 模型展示和智能预测能力。

② 物模型——定义

现在我们看下物模型的定义。

物模型是可表达物理设备、资产、空间等实体的功能、关系、联动规则,从而使物可以被表达、被交互。

图左边是一个灯泡。它的物模型是属性、事件和服务,表达的是亮度、开关、高温、告警等。它只表达了其功能,非常简单。

图右边是一个智能园区的场景。其物模型不仅表达了每个节点的功能,比如电闸和功耗。也可以表达节点之间的关系和联动规则。

阿里云定义了一种物的描述语言来对物进行定义,称为 TSL(Thing Specification Language)。

③ 物模型——数字孪生建模

设备通过连接将数据上报到平台,其数据不是结构化的,是没有价值的。需要通过数字孪生建模,使其产生价值。

设备连接后,通过消息上报数据,再通过数据管道对数据进行加工,并映射到数字孪生构建的模型中。

举个例子,比如配电机房在数字孪生模型中有一个孪生结构。传感器采集到的数据,通过数据管道加工后映射到孪生结构里面。经过孪生结构里面的计算规则进行计算,形成联动。联动后产生的规则和数据可以通过 3D 可视化进行渲染,并结合算法帮助客户达到降本增效和预测性维护的目的。

下面是数字孪生建模的几个关键技术:

  • 第一是数据管道

数据管道是一个非常好的设备采集和业务建模解耦的模块,同时基于物模型灵活配置映射规则,配置方式非常简单。

  • 第二是灵活的模型表达能力

通过属性、事件、服务进行表达,同时可以 DAG 图数据库进行表达,而且模型可复制、可组合、可引用。

  • 第三是实时数据计算能力

可以用节点规则表达节点数据流的关系。目前已支持20多种函数,也可灵活扩展函数。所有运算在云上可完全托管。

  • 第四就是标准化生态

目前阿里云 ICA 标准联盟 350+ 成员提供 700+ 标准物模型,AIoT设备中心已认证设备 900 多种,已形成标准化生态。

④ 物模型——核心技术

数字孪生的核心技术如上图所示,不展开介绍。下面详细介绍设备管理。

4. 设备管理

对设备从开发、生产、运行、运营及运维整个全生命周期的管理,是设备数字化之后平台最基础的能力,需要建大量的基础设施。本次只介绍以下三个方面的能力。

① 海量异构数据检索

举个简单的例子:如果需要找出电量大于 80%,且地理位置在北京和上海的共享单车进行固件升级。那么,如何在海量设备中检索到这个设备是非常大的挑战!

阿里云的应对物联网检索设备的几个关键能力如下:

  • 第一:建模

首先将是将设备结构化,由物模型来完成。

  • 第二:高可靠数据传输和存储

平台采用了双备份异构容灾及读写分离的架构,写并发达到百万TPS。

  • 第三:海量数据多维度检索

数据导入进来,构建灵活的业务模型和索引,提供海量多维度检索能力。支持统一检索语法、同步时延秒级、动态静态检索任务等,为物联网用户提供了更好的体验。

② 设备远程升级(OTA)

无升级不智能。固件升级作为设备智能化的准入条件,是修复产品缺陷、安全漏洞、发布新功能的技术手段。固件升级需要保障可以远程升级、大批量规模化升级、升级不中断等要求。

阿里云的优势如下:

  • IoT 高性能任务框架
  • 海量设备圈选和高效设备通道
  • 升级过程诊断分析

基于这些优势,在端侧支持多版本、支持多模块、差分升级的能力。

在云端,通过对升级包和升级策略不断扩充,可以达到百万设备升级两小时的效果。平台支持动态可变推送速率、异常退避重试策略、弱网断网环境升级保障,使得升级成功率达到95%的效果。如果升级过程中出现时延或是其他风险,都可以通过可视化的方式进行分析和诊断。

③ 设备全球分发

为了解决设备生产地和售卖地不一致导致的无法提前备货问题,物联网平台提供的设备全球分发能力可以支持设备厂商的设备一地生产、多地售卖、全球激活。

举个例子:某客户设备在华东地区(上海)生产,最终销售到美东地区(美国),这时候设备分发能力就体现出来了。设备卖到美国后,需要就近接入到美东,设备元数据需要从上海分发到美东。这里面就有几个关键技术:

  • 跨域网络互通

设备从华东到美东就需要跨域网络互通。

  • 设备分发可靠性

大量的设备(可能有上百万)在跨域分发的过程中,可靠性保障的问题。平台通过高可靠任务框架、长任务异常恢复机制、系统资源自保护的技术手段,确保设备分发可靠性能达到 99.99%。

  • 设备全球加速

在设备接入的效率方面也有很多优化策略。通过 IP 地址的解析,使设备接入到最近的数据中心。采用智能 DNS、CDN 加速域名等手段,使得接入时延到达百毫秒级左右。

④ 大规模管理——核心技术

以上介绍了设备管理的 3 个能力,下图是几个关键技术指标。

5. 智能运维

智能运维是设备数字化后,对设备和客户业务稳定性保障的非常重要的基础设施。下面从 2 个方面来介绍:

① 自定义监控大盘

物联网平台将设备产生的状态,包括云平台全链路日志等所有相关数据采集,并同步到实时数仓。经过按维度分钟聚合,包括用户指标清洗,最终产出面向客户的监控指标。这些监控指标有几个特点:

  • 丰富的数据源

包括设备的全维度数据和云平台全链路日志数据。

  • 监控指标实时性

通过实时数仓、全局加速表、Flink实时计算等手段保证监控指标实时性。

  • 异常诊断的扩展

通过指标下鉆、根因分析模型等方法完成异常诊断的扩展。

阿里云的自定义监控大盘已服务于众多客户,帮助客户发现异常情况。

② 消息轨迹

前面介绍的设备上云的几个关键步骤,从连接、消息、物模型、管理等,整个链路都可以被追踪。消息轨迹解决了上下行链路中问题定位的难题,客户可根据 TraceID 或 MessageID,追踪任意一条消息在物联网平台流转的全路径,还可根据出现故障的节点快速分析、定位问题。消息轨迹具有如下特性:

  • 全链路覆蓋。平台通过消息全链路和时序保障确保消息全链路覆蓋。
  • 通过耗时分析、失败原因分析来确保消息质量。
  • 通过 SLS 索引加速、客户日志转储来达到查询加速的效果。

③ 核心技术

刚刚介绍了智能运维核心技术的前面 2 项,关于故障诊断和远程隧道方面的知识,大家有兴趣可以上官网了解。

03/物联网平台高可用架构

物联网平台要保障上百万级设备的同时上线、升级、故障诊断等,必须采用高可用架构。

1. IoT 高可用建设特殊性

物联网相对于传统互联网在高可用建设上存在一些特性:

  • 可靠性要求极高。物联网可能用在安防、工业制造、医疗、交通等各种影响民生安全的领域,如果出现故障,会对民生安全造成严重的影响。
  • 从接入来看,由于引入了设备端,使得端到端的链路非常长。
  • 从消息上看,上行消息写多读少,规模大、非常高频。下行控制指令实时性要求高,对失败的指令敏感性非常高。

以上几个关键模块上都从不同方面解决了稳定性的问题,下面从架构上来谈稳定性的问题。

2. 单元化架构

IoT 采用单元化架构,从架构上根本性解决物联网平台隔离、容灾、弹性问题,控制爆炸半径,降低故障影响范围,提升稳定性。

阿里云的整个架构是 Region 化架构,在 Region 架构的基础上,在Region 内将客户的资源进一步隔离、打散。隔离后有多个运行单元,每个运行单元也部署了 HA 单元,并进行故障转移。有几个核心技术展开介绍一下:

  • 故障感知。通过高可用运维服务实现故障快速检测,感知故障后进行单元流量切换。
  • 百万长连接分钟切换。出现故障后运行单元要切换到 HA 单元,对长连接是有很高要求的。IoT 统一接入层实现了百万长连接分钟级切换,采用的是智能路由和 Session 迁移能力的组合。
  • 双副本 HA。所有运行单元都配置了 HA 单元,当运行单元出现故障后,将流量无缝切入到 HA 单元,来达到故障转移。
  • 故障转移业务无感。故障转移过程中,南北向流量保持切流一致性,客户业务无感知。
  • 数据同步。通过流量标记方案,在业务侧无感情况下做到低延迟数据双向同步。

这些问题解决后,单元化架构能给客户提供很高可靠性,SLA 能达到99.99%

以上是关于技术的解读,接下来看 2 个简单的案例。

04/典型案例

1. 共享充电宝

以某充电宝客户为例:

  • 客户的痛点

某共享充电宝客户面对行业的竞争压力,从成本角度看很难投入大量人力去自建一个物联云平台,并且当业务量持续增长时,如何高效管理好海量充电宝,以最低的成本运维是一个初创企业需要优先考虑的问题。

客户使用阿里物联网平台搭建了共享充电宝的业务,其业务非常简单,无需关注设备认证、管理等基础性的实例,只需关注自己的业务。

  • 达到效果

本案例达到了海量连接、低延时、实时监控的效果。整个方案在行业和场景上都具有可复制性。

2. 电动车充电桩

以某充电桩客户为例:

  • 业务痛点

随着国家电动车保有量的持续增长,以及政府出台的充电桩行业政策推动,传统充电桩的智能化改造迫在眉睫。如何快速开发一套从端到云的智能充电管理平台,业务上降本增效成为企业重点考虑的问题。

设备连接管理能力都由阿里云构建,客户只需构建充电桩的核心业务。

  • 达到效果

充电桩规模大了以后,自建平台性能和稳定性面临严峻考验,使用物联网平台后保障了业务持续稳定发展。解决了老一代充电桩没有上云,后期维保都需要人到现场的问题。通过采集和分析充电桩的使用数据,实时优化运营策略,实现降本增效。

整个方案在行业和场景上都具有可复制性。

今天的分享就到这里,谢谢大家!


分享嘉宾

熊益群|阿里云 物联网平台技术负责人

2013年加入阿里巴巴,深耕阿里云物联网平台多年,支撑了阿里云物联网平台从0到1的建设。


关于DataFun

专注于大数据、人工智能技术应用的分享与交流。发起于2017年,在北京、上海、深圳、杭州等城市举办超过100+线下和100+线上沙龙、论坛及峰会,已邀请超过2000位专家和学者参与分享。其公众号 DataFunTalk 累计生产原创文章800+,百万+阅读,15万+精准粉丝。

发表回复

相关推荐

你以為《清華園日記》就寫瞭看大腿?那你確實低估瞭青年季羨林

1說起季羨林先生,首先浮現腦海的便是專屬於他的各種標簽:“學界泰鬥”、“國學大師”、“國寶”。關於季老先生的稱謂和榮譽羅列出...

· 11秒前

最簡單的正念訓練(附我的方法)

生活中,我們常常會被情緒的問題所困擾,也有許多人會有意識地去學習情緒管理的知識,希望自己能夠不被情緒牽著鼻子走,而是...

· 2分钟前

各个行业可以考的资格证书(超全)

18个不限专业就可以考取的证书,为以后转行、兼职做准备!

· 3分钟前

夏日之夢(作者:傅許)

一首純音樂。曲調其實蠻簡單,一個主要旋律貫穿全章,淡淡的。有點小歡喜,又是亦步亦趨,小心翼翼,又是輕盈的,悄悄的。就...

· 3分钟前

上映十六年後,《雙瞳》依然是我心中最好的華語恐怖片

今年的春節檔電影,《唐人街探案2》算是一匹黑馬。雖然豆瓣評分沒有超過前作,但累計32億的票房也給瞭陳思誠足夠的底氣拍完三...

· 6分钟前