课时1:IoT设备接入基础(五)

简介: IoT设备接入基础

阿里云物联网平台入门训练营:课时1:IoT设备接入基础(五)

课程地址https://developer.aliyun.com/trainingcamp/5fe77ddd74f743ebad9dbc8c5f47be9a?spm=a2c6h.26142516.J_2566289780.2.37c67cbd7bCsFs

课时1:IoT设备接入基础(五)

比如我支持PUB支持QOSPUB只是支持比较简单的发布消息,就是说我发的消息的的时候,那我就不管你是什么以QOS为准。

我们还支持了另外一个特性,就是说在业务服务器往设备调用的时候,我们支持了一个RRPC,,RRPC模式类似于HTTP

就是我在业务服务器,如果我要获取设备的一个特性,我通过类似于HTTP调用我们就会整条链路同步的等到设备结果返回,其实就是response的一种模式。

MQTT5.0的特性

现在的话阿里云还支持MQTT5.0的一些特性,特性的话主要是主要是有5个。

第一个:是报文长度的一个设置。

第二个:是UserProperly,就是用户属性MQTT5.0,这个主要是为了解决,因为比如说像MQTT3.0假如说你要设备上面要传一些特性或者一些东西上来其实没法传上来,你只能在ID里面做扩展,但是ID里面其实扩展起来不适合,就是做起来会比较麻烦,所以说我们这次就是5.0的话,支持就是UserProperly的话,可以以Key的形式来填各种属性数据。

第三点:新增了一个响应模式,比如说响应主题就是让设备端支持RQSRSBS。原来说MQTT都是通过PUB,SUB来做一些。假如说你要通过一个PABE消息要等服务器返回一个消息的话,那其实你要做RQSRSBS,你要请求相应的这种模式只能通过业务上层去保障这个你的PUB,SUB在同一个里面你才能做这种请求响应模式,MQTT5.0支持直接在协议上面原生支持,就是这种请求响应的一种模式是设备响应的请求下那种一种通信方式。

第四点:增加了一些返回码,就是说更多的一些返回码。比如说我们以前在设备界面在MQTT界面失败的时候,其实MQTT它其实返回的错误码是很少的,只有只有那么四五个。然后MQTT5.0针对错误做了细分基本上能包含现阶段所有功能的一些错误信息,相对来说会更好一点。

第五点:主要是用来解决就是TAOPEKE话,因为TAOPEKE比如说像阿里云现在MQTT TAOPEKE都是比较长的,它里面包含了PK DN这种东西都整个 TAOPEKE就比较长,然后5.0的话可以把TAOPEKE转成一个一个整形数字,这样在传输的过程当中可以减少MQTT的暴露一个长度,主要就是为了解决网络的流量问题。

好,这个的话就是阿里云MQTT的一个能力的介绍。

 image.png

 设备接入-接入模式

然后说一下,我们怎么来用这些能力,我们总共提供了核心的有六种接入模式。

第一种:一机一密

一机一密就是相当于你需要每个设备都烧录一个平台身份,一个设备身份。安全性会比较高,但是他在烧录的时候,因为你每一个设备都要烧录不同的身份,那在烧录的时候对厂商来说就相当于你要有自己一套程序去管理这个设备。

比如说我不能把同一个设备,同一个身份烧到不同的设备里面,那可能到时候就会有一些设备之间的护体,可能会引起一些安全性的问题。

比如说我两个设备都是摄像头设备,那你如果把同一个身份烧到两个设备里面去,但到时候可能就会有一些隐私方面的问题,所以说对烧录的要求会比较高。但是它一机一密相对来说安全性会会比较高一点,但是对厂商来说烧录的要求会比较高。

第二种:一型一密

一型一密就是所有的设备都烧录同一个PK和同一个PS,那就相当于是我所有的一批同一产品下面的所有设备我都用同一个产品型号,同一个密码,我通过这种方式我在烧录的时候很方便,在认证的时候就相当于通过一些动态注册的方式,就是说我在每次认证的时候我通过我在设备上面我自己生成一个DN,然后在你认证的时候,你通过PK PS对这个通道加密,然后把这个DN注册到平台上面来,然后平台就会把设备对应的DS返回给你。

这样就相当于你最终还是用了平台的身份包括PK DS,就相当于是你在烧录的时候会简化很多,就相当于你在烧录只要烧录PK PS,但是这种方式的话也会对一些安全性带来隐患,因为就相当于所有设备都是烧录的是同一个PK PS,一旦一个设备被破解了那可能就是整一批设备可能会被破解,就是在安全性上面还是有一定的隐患。

适用于那种对安全性要求不高的设备,可能会采用一型一密,因为在烧录的时候比较简单。

第三种:直连:x.509证书

就是相当于设备上面不烧录平台的身份了,就烧录的是一张x.509的证书,这个的话会安全性会比较高。

因为x.509x证书是通过双向认证,双向认证对整个安全来说其实是相当于是我服务端要认证设备端,设备端也要认证我服务端。这个整个TOS对现有的安全保障还是比较高的,现在x.509基本上可能会用在一些支付产品上面,或者对安全性要求非常高的一些东西。但是他的代价也会比较大,就是在建联的时候你传输要传输两份数据,相当于证书也要传输两份证书,然后对整个设备的一些内存,RAM或者对CPU都会有比较高的要求,相对来说X.509只适用于在安全性要求非常高的一些场景。

第四种:直连:ID2

是它其实跟X.509也差不多,但是它唯一的区别就是可以在设备建立连接的时候可以不用传证书,就说不管是设备还是服务端是不用传证书,在网络开销上面会低一点,它的安全性跟X.509基本上是同一级的。

第五种:分直联和网关

直联身份就是直联的时候怎么去预知设备上面的身份,包括机密,x.509ID2都是可以直连的。

网关它其实本身也是直连的,就说网关也是直接连到我们的平台,但是网关做的更多的事情是局域网的一些子设备上线。

然后子设备的话,我们现在子设备上线是通过消息,就相当于我是我是通过MQTTPAP来支持子设备的上线,子设备上线也支持一机一密和一型一密。

网关它其实是直连的,它其实支持上面说的四种所有所有的身份类网关都是可以支持的。就是但是子设备的话,它是只支持这两种一机一密和一型一密。

因为像ID2x.509这两种模式都是其实在建通道的时候做了一个认证,然后子设备我们不是建通道,是通道建完以后发pabe消息的时候才能子设备上线,子设备上线都是在pabe消息里面做的,所以说他其实跟通道已经没关系了,所以说子设备只支持这两种模式一机一密和一型一密。

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
4月前
|
传感器 物联网 网络架构
ENS、IoT设备、X86、ARM
ENS(Enterprise Name Service)是企业名称服务,是一种为物联网设备提供命名和寻址服务的技术。ENS通过为物联网设备分配唯一的名称和地址,使得物联网设备可以被网络中的其他设备和服务所识别和访问。 IoT设备(Internet of Things device)是连接到互联网的物理设备,可以收集和共享数据,用于监测、控制和优化各种业务流程和操作。IoT设备包括各种传感器、执行器、网关和路由器等。
40 2
|
2月前
|
网络协议 物联网 5G
K3S 系列文章 -5G IoT 网关设备 POD 访问报错 DNS 'i/o timeout' 分析与解决
K3S 系列文章 -5G IoT 网关设备 POD 访问报错 DNS 'i/o timeout' 分析与解决
|
7月前
|
监控 物联网 Java
|
7月前
|
存储 监控 物联网
|
7月前
|
物联网 API 开发工具
|
7月前
|
网络协议 物联网 大数据
|
7月前
|
网络协议 物联网 网络性能优化
|
7月前
|
安全 物联网 物联网安全
|
7月前
|
弹性计算 负载均衡 网络协议
|
7月前
|
编解码 小程序 JavaScript
阿里云IoT小程序应用开发和组件实践
通过实验,了解阿里云IoT小程序的应用开发的方法,了解其内置的基础组件使用,以及基于Vue.js实现可复用的自定义组件的方法。
341 1