热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

国内首个IoT物联网平台建设白皮书

中国物联网设备连接数在2016~2020年间,年同步增长率为46.1%,经历了高速增长,预计到2025年会达到80亿。阿里云物联网平台的核

中国物联网设备连接数在2016~2020年间,年同步增长率为46.1%,经历了高速增长,预计到2025年会达到80亿。

阿里云物联网平台的核心价值是帮助企业设备数字化、智能化,设备产生的海量数据与企业的业务数据融合之后会产生巨大的价值, 能够促进企业高效低成本地运营,进而提升整个社会生产效率。IoT在这波数字化浪潮中至关重要,让所有设备从孤立的变成有生命的智能设备。

互联网时代和移动互联网时代的本质都是人的在线化,物联网时代百亿规模设备的在线化和数字化将会对物理世界进行重塑, 尤其在5G网络的推动下会加速这个进程。

454f359e914790a690d5d2716076f5f5.png

设备连接和管理服务属于物联网平台最基础的能力,帮助客户设备实现在线化、数字化,让客户不需关心物联网基础设施,完全聚焦在自己的核心业务上。

碎片化设备接入

c27386bb0a555d5b03563fdb5e60ee2b.png

针对碎片化的接入问题,通过不同的接入方式来适配不同的设备场景。

  • 直连设备:对于广域网的设备,通过直连的方式直接上云。

  • 局域网设备:通过不同的局域网协议接入边缘网关,有边缘网关转换协议、然后做数据处理,再通 过MQTT协议接入物联网平台。

  • LoRa设备:先接入LoRa网关,然后由LoRa网关通过MQTT协议接入阿里云物联网平台。

  • NB-IoT设备:只能接入电信平台,阿里云物联网平台通过云云对接的方式,先对接电信平台,然后把设备接入到阿里云物联网平台。

  • 私有平台的设备:通过泛化接入的方式,把私有协议转成标准的MQTT协议,然后接入到阿里云物 联网平台。

  • 通道复用:对于边缘网关,其下的子设备可以通过通道复用的方式上线和消息上下行通信,这类子 设备与直连设备的能力对等。

  • 云网关: 针对采用了标准MQTT协议的设备,但自定义了设备身份信息和消息通信Topic的设备,通 过云网关接入方式解决身份和Topic的标准化。

海量设备的连接稳定性

8f05a50d99466a4bab870189f4c59b7d.png

1) 连接限流能力 

从外部请求限流和内部资源限流两个维度设计的接入层限流。针对外部限流,有并发建连限流,单连接流量限流,背压机制(结合业务层消费能力和TCP滑动窗口机制来实现),节流机制(溢出包丢弃)。针对内部 资源限流,限制单进程、单应用的TCP Session数量,针对TCP缓存的内存限制,针对单应用的CPU使用限制。通过内、外资源的限流策略来防止连接层的雪崩,同时减少对下游系统的冲击。

2) 应用热更新能力

在网络代理发布时,会导致设备的TCP长连接断开,对于设备而言,需要重建连接,同时在建连的过程中消息不能到达。对于长连接断开,阿里云物联网平台支持了平滑迁移和缓慢下线的能力。通过老进程关闭 listen fd,新进程接管listen fd,老进程维持24小时,让设备重连后自动迁移到新进程。对于长时间不重连 的设备,通过缓慢下线的策略逐步使设备下线重连,减少同时大量设备下线对用户业务的影响。通过上述两 个策略配合使用,可减少网络代理发布时对设备连接的影响。

3) Session转移

网络代理层跟协议层之间采用了TCP长连接,在协议层发布时会导致TCP长连接断开,在协议层保存了本地 Session信息,如果当前发布机器的Session信息丢失,连接断开后需要设备重连才能恢复。针对上述情况, 阿里云物联网平台设计了Session转移功能,在协议层发布时,可以把TCP长连接和设备的Session信息转移 到其他未发布的机器上,此时协议层的发布可以做到对设备无感。

4) 快速容灾

为了解决单故障导致的全平台问题,阿里云物联网平台针对协议层、消息层部署了多个集群,同时会把不同的用户放到不同的集群里,当某个集群的协议层或者消息层出现系统异常的时候,网络代理层可以通过路由 能力和Session转移能力把设备的连接转移到不同的集群,从而保障单集群故障能快速恢复。

设备的网络质量

59e5b70ba2a767c78a8df50745f74a27.png

设备网络是连接稳定性的保障,阿里云物联网平台为了让设备的网络质量更好,采用了全球分发技术,不论设备在哪里生产和注册,都可以在设备接入前把设备分发到离设备最近的地域,然后利用阿里云物联网平台的国内外8大地域部署的能力,让设备就近快速接入。同时为了解决不同地域设备快速获取就近接入点地址,物联网平台采用了全球加速的技术,在设备就近接入后,又采用BGP网络来解决地域内的网络质量问题。

设备的安全性

a565a36fb4a351a77df3c2856f27fae1.png

IoT平台基于四层安全设计和离线安全分析结合来保障设备的安全性。

1) 安全防御层 

借助阿里云的DDoS、高防等能力,防止SYN洪水攻击等,做到流量的有效清洗,可以防止1000Gbps以上的流量攻击。

2) 通道安全层

通过实现TLS、DTLS,X.509,ID2等安全加密技术,实现传输层的加密,防止数据在传输过程中 被篡改、伪造等,同时针对低功耗设备,提供PSK、SessionTicket等能力,解决TLS过程中的数 据传输量和网络RT的问题。

3) 身份安全 

支持三种类型的设备身份,不同IoT场景可以使用不同的身份,保障每个设备都有唯一身份,同时对设备认证做了加签,防止身份的伪造。

4) 数据安全 

按单元隔离不同集合的用户,然后再按用户维度和实例维度做更小粒度地隔离,保障数据在实例内、用户内、单元内闭环,做到每个用户只能看到自己的数据。

5) 离线数据分析 

利用设备行为数据结合平台的AI能力,分析每个设备的安全性,针对安全等级低的设备做预警,并且跟平台安全层结合,针对攻击类设备实现自动拦截的能力。

更多内容,回复"白皮书" 获取PDF完整版。

往期推荐

☞ 中国云计算第一股关停 IoT云服务

☞ 2022年IoT平台趋势:私有化部署

☞ 国内MCU行业发展研究报告

☞ 2021年4G通信模组企业排行

☞ 艾瑞 2021中国 IoT物联网平台研究

☞ 云厂商的[IoT物联网平台]不香了吗?

47b46f9dc712dc961d30983474ebf634.gif

16f719b6d1856b3230593990721b5b95.gif

f6aecf40e9ebc1b2c0b62ee41b93db6d.gif

d4cabb9cb113598770d939413e83662f.gif

1e9bf47b19e862ab41d4d57ad5e44e52.gif



推荐阅读
  • 本文介绍了进程的基本概念及其在操作系统中的重要性,探讨了进程与程序的区别,以及如何通过多进程实现并发和并行。文章还详细讲解了Python中的multiprocessing模块,包括Process类的使用方法、进程间的同步与异步调用、阻塞与非阻塞操作,并通过实例演示了进程池的应用。 ... [详细]
  • 本文探讨了六项Java特性,它们虽然强大,但在不当使用时可能会给应用程序带来严重问题。文章基于作者Nikita Salnikov Tarnovski多年的应用性能调优经验,提供了对这些特性的深入分析。 ... [详细]
  • 本文深入探讨了分布式文件系统的核心概念及其在现代数据存储解决方案中的应用,特别是针对大规模数据处理的需求。文章不仅介绍了多种流行的分布式文件系统和NoSQL数据库,还提供了选择合适系统的指导原则。 ... [详细]
  • 深入理解异步多线程编程模型
    现代计算机系统中的CPU通过并行处理提高效率,但所谓的并发处理实际上是一种基于轮询的模拟并行。本文探讨了现代处理器如何通过虚拟化技术实现更高的并发性能,以及在.NET框架中如何有效利用线程和异步编程模式。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 深入解析mt_allocator内存分配器(二):多线程与单线程场景下的实现
    本文详细介绍了mt_allocator内存分配器在多线程和单线程环境下的实现机制。该分配器以2的幂次方字节为单位分配内存,支持灵活的配置和高效的性能。文章分为内存池特性描述、内存池实现、单线程内存池实现、内存池策略类实现及多线程内存池实现等部分,深入探讨了内存池的初始化、内存分配与回收的具体实现。 ... [详细]
  • 本文介绍了Linux内核中TCP的三种接收队列:Prequeue、sk_receive_queue和Backlog。这些队列在数据包处理过程中扮演着重要角色,帮助提高系统性能和效率。 ... [详细]
  • 雨林木风 GHOST XP SP3 经典珍藏版 YN2014.04
    雨林木风 GHOST XP SP3 经典珍藏版 YN2014.04 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • Java高级工程师学习路径及面试准备指南
    本文基于一位朋友的PDF面试经验整理,涵盖了Java高级工程师所需掌握的核心知识点,包括数据结构与算法、计算机网络、数据库、操作系统等多个方面,并提供了详细的参考资料和学习建议。 ... [详细]
  • 在CentOS 7中部署Nginx并配置SSL证书
    本文详细介绍了如何在CentOS 7操作系统上安装Nginx服务器,并配置SSL证书以增强网站的安全性。适合初学者和中级用户参考。 ... [详细]
  • 本文深入探讨了MySQL中的高级特性,包括索引机制、锁的使用及管理、以及如何利用慢查询日志优化性能。适合有一定MySQL基础的读者进一步提升技能。 ... [详细]
  • 春季职场跃迁指南:如何高效利用金三银四跳槽季
    随着每年的‘金三银四’跳槽高峰期的到来,许多职场人士都开始考虑是否应该寻找新的职业机会。本文将探讨如何制定有效的职业规划、撰写吸引人的简历以及掌握面试技巧,助您在这关键时期成功实现职场跃迁。 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 本文详细探讨了 Android Service 组件中 onStartCommand 方法的四种不同返回值及其应用场景。Service 可以在后台执行长时间的操作,无需提供用户界面,支持通过启动和绑定两种方式创建。 ... [详细]
author-avatar
运儿0315
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有