物联网
- 设备和人的互联网
- 通过传感器设备监测数据,基于信息实现设备联动控制
- 云计算平台是物联网的重要基础设施
- 应用场景:智能家居、工业、农业、交通、物流等
通信技术
PLC
Power Line Communication,电力载波通信
WIFI配网
做两件事:
- 物联网设备需要连接上路由器
- 要获取到物联网设备的MAC地址,与用户账户进行绑定
一键配网:
通过手机或 Wi-Fi 路由器发送 UDP 广播包将 Wi-Fi 的 SSID 和密码广播出去。物联网设备在进入配网模式后,会将接收到的广播包进行解析,从而获取到 Wi-Fi 的 SSID 和密码,然后连接上路由器。同样地,物联网设备连接上路由器后,也会广播自己的 MAC 地址
设备热点配网:
让物联网设备先进入 Wi-Fi AP 的模式,让手机连接到这个热点,接着把路由器 Wi-Fi 的 SSID 和密码发送给物联网设备,同时手机也可以直接获取到设备的 MAC 地址
BLE
Bluetooth Low Energy 的缩写,Bluetooth 4.0 / 4.1 / 4.2 的统称
基于广播包和 GATT 协议,连接参数包括广播间隔、最大连接间隔、最小连接间隔和连接监听时间等,广播间隔会影响扫描的响应速度,也会对设备的功耗有影响
2G
在传输数据量不大的场景中还有一些应用,已经在退网中
LTE-Cat1 & NB-IoT
二者都是属于蜂窝网络
特性 | LTE- Cat1 | NB- IoT |
---|---|---|
带宽 | 20MHz | 180KHz |
速率 | 下载10Mbps,上载5Mbps | 下载26Kbps上载66Kbps(多频),16.9Kbps( 单频) |
功耗 | <40uA @ Poweroff,<1.5mA @ Sleep,<12mA @ ldle | <5uA @ PSM,<2mA @ ldle mode(DRX=1.28S),<300mA @ Tx(23dBm/15KHzST),<50mA @ Rx |
双工模式 | 全双工 | 半双工 |
MIMO | 支持 | 不支持 |
移动性 | 完全移动性 | 无移动性 |
模组成本 | 40~60元 | 20~30元 |
网络设施 | 可直接使用现有4G基站 | 需要升级基站的软硬件 |
网络协议
因为设备很大可能工作在不可靠、高延迟的网络环境,数量多,而且交互复杂,设备经常需要根据实际使用环境做增加、减少等调整,所以在选择网络通信的协议时,一般采用发布订阅的通信模式
在一些需要设备端可靠反馈的场景下,诸如HTTP之类请求响应模式的协议也会被用到
MQTT
- 二进制编码格式
- 协议头很紧凑,协议交互也简单
- 支持 3 种 QoS(Quality of Service,服务质量)级别
- QoS 0,消息只发送一次,消息可能丢失
- QoS 1 ,发送方会接收反馈,保证消息的送达,但是可能消息会重复
- QoS 2 ,通过发送方和接收方的多次交互,保证消息有且只有一次
Keepalive 机制:Keepalive 时间长度是在 Client 建立连接时设置的,如果超出这个时间长度,双方没有收到新的数据包,那么就判定连接断开,就需要重新建立连接,使用了 PINGREQ 和 PINGRESP 这两种消息类型来保活
安全机制:有用户名 / 密码的机制,支持 SSL/TLS 加密通信方式,类似于HTTP与HTTPS
AMQP
不适合计算资源有限、对功耗要求严苛的物联网设备,但是它可以满足后台系统对于可靠性和可扩展性的要求
也是基于 TCP 协议,采用二进制消息格式,也支持 3 个 QoS 级别
HTTP
CoAP
跟 HTTP 协议类似,但是设计轻量,可以用于资源受限的物联网设备,传输层协议是 UDP,更省电
LwM2M
- Lightweight M2M
定义在 CoAP 协议之上,不过它在消息传输的基础上更进一步。因为它基于 IPSO (IP-base Smart Object)对设备模型进行了标准化,提供了一组轻量级设备管理和交互接口协议
物模型
TSL,Thing Specification Language,说清楚这个产品是什么、能做什么事情,以及可以提供哪些信息
- 属性:产品设备运行时的某种状态,可读可写
- 事件:产品设备在运行过程中产生的信息、告警和故障等
- 动作:设备可以被调用的能力或者方法
设备影子:用于缓存设备状态,应用程序可以通过设备影子直接获取设备最后一次更新的属性值,而无需每次都访问设备
数字孪生:集成了物理实体的各类数据,那就是物理实体的忠实映射,即物理设备的一个数字化描述,在物理实体的整个生命周期中,它会和实体一起进化,积累各种信息和知识,并且促进物理实体的优化
零配置组网
- IP获取:[DHCP](/计算机网络/应用层.html#DHCP)协议
- 设备发现:UPnP 协议
自动发现和解析设备与自动传播和发现各网络设备提供的服务都是基于 SSDP 协议
mDNS:允许设备在本地的 DNS 名字空间,设置一个本地的域名。之后被询问的时候,它就通过 UDP 把 IP 地址广播出来
DNS-SD:一般是和 mDNS 一起使用的。它使用三种 DNS 协议的记录类型来定义协议内容,三个记录分别是:PTR 记录、SRV 记录和 TXT 记录
网关
- 作为物联网设备与云平台之间的桥梁
网关的功能:
- 协议转换
- 设备数据存储
- 身份认证、传输加密
- 专网接入、VPN
边缘计算
将云平台上的部分计算服务,下沉到靠近数据发生地的“边缘设备”上进行
边缘设备,比如物联网网关,完成初步的数据处理,和需要及时响应的计算任务;而云平台负责需要大规模数据和复杂计算的数据分析工作,以及完成整体的协调和控制
优点:延迟低、降低带宽消耗、可用性、隐私性
数据处理
数据存储
设备接入层
- IoT Hub
隐私
重点关注国内以及出海隐私法律法规不同,要提前了解
实践:
- 保证用户有知情权和选择权
- 收集、使用信息时要采用最小必要原则
- 确保个人信息存储和使用的安全
安全
安全管理规范
开发安全
基于安全开发生命周期(SDL,Security Development Lifecycle)来建立企业的安全开发流程
- 提供安全培训
- 定义安全需求
- 确定安全设计
- 构建实现安全
- 进行安全测试
- 建立标准事件响应流程
生产安全
保证指出厂设备的安全
部署安全
- 软件的安全部署:防火墙、端口等的安全
- 硬件的安全部署:一定的物理防护措施、操纵人员的可信度
运营安全
监控、硬件运维、建立应急响应中心
安全技术保障
- 分析产品的安全需求
- 基于模型列出潜在的安全问题
- 逐层进行防护:设备层、网络层、应用层