《IETF 6TiSCH工业物联网研究综述:标准、关键技术与平台》阅读笔记
前言
工业物联网是物联网领域中最为重要的发展方向之一。目前的无线物联网接入技术主要分为短距离和长距离无线通信技术。
短距离无线通信技术标准主要包括:IEEE802.15.4标准协议、IEEE802.15.1标准协议以及IEEE802.11标准协议。
长距离无线通信技术如低功耗广域网(low-power wide-area network, LPWAN),代表性技术有窄带物联网NB-IoT和LoRa。
早期IEEE802.15.4—2006标准主要存在空闲监听和抗干扰能力差问题,无法满足工业无线应用对低功耗和高可靠的要求。2012年 4月,IEEE802.15.4e新标准正式发布,其采用时隙跳频(time synchronized channel hopping,TSCH)新技术。在 IEEE802.15.4e TSCH 网 络中,节点之间通过精确时间同步来协调工作状态,可以减少空闲监听时间,从而达到低功耗目的。
IETF 6TiSCH制订目标
制订一套完整的工业物联网协议栈,从而可以实现与远端的服务器进行相互通信。
IETF 6TiSCH工业物联网的总体框架图
特点:
- 在网络层引入了IPv6技术,可以解决海量的资源受限物联网节点无缝接入基于IP的互联网问题。
- 在链路层引入时隙跳频技术,可以解决复杂工业环境下无线通信的可靠性和低功耗问题。节点之间需要保持精确的时间同步,通过资源调度算法协调节点之间在何时使用哪个信道通信,网络空闲时节点可以进入休眠状态。
标准协议
IETF 6TiSCH工业物联网协议栈自顶向下包括:CoAP应用层协议、UDP传输层协议、IPv6网络层协议、IEEE802.15.4e链路层协议和IEEE802.15.4物理层协议。
CoAP应用层协议
2014年由IETF CoRE工作组发布,专用于资源受限网络。
(1)它基于REST架构,采用请求/相应通信模型,比HTTP协议更加轻量级,主要运行在UDP协议与DTLS协议之上。(2) 使用URI标识和定位网络资源。
- CoAP协议报文的头部长度为4Bytes,其中2bit为版本号Version,2bit为报文类型Type,4bit为CoAP标识符长度Token Length,1 Byte为功能码Code,2 Byte为信息编号Message ID。
- 头部后面紧跟Token,用于请求包和响应包之间的匹配。
- Options为报文选项,可以设置CoAP主机、CoAP URI、CoAP请求参数等。
- Payload为负载信息,以0xFF开始。
IPv6 网络层协议
IETF 6TiSCH 物联网中 IPv6 网络层协议比较复杂,其主要由 RPL、ICMPv6与 6LoWPAN等协议组成。
IPv6 数据报
RPL协议
距离矢量路由协议,应用于低功耗有损网络,通过使用目标函数和度量构建有向无环图,从而构建起从叶子节点到根节点的路径。
RPL构建有向无环图的过程如下:
具体的rpl协议理解见另一篇博文。
rpl协议仿真理解
ICMPv6
互联网控制信息协议第 6 版本(Internet control managemet protocol version 6,ICMPv6)是 IPv6 网络 层协议的重要组成部分,主要用于邻居节点发现、网络状态检测与差错报告。
邻居发现:能够实现地址解析,记录邻居Ipv6地址和物理地址的对应关系。
网络状态检测:判断节点是否能够通信。
差错报告:ICMPv6 中重要报文类型,其主要包括超时、目的不可达和数据包过长等。
自动配置地址:,ICMPv6 协议提供了无状态自动配置 IPv6 地址功能,从而使得IPv6终端设备可以方便地接入 IPv6网络。
6LoWPAN
对IPv6数据报头进行压缩,采用分组实现应用层对于物理层的透明传输,通过在包头中添加MESH字段实现基于IPv6的多条路由转发。
IEEE802.15.4e链路层协议
在 IEEE802.15.4e TSCH 链路层协议中,网络中节点需要保持精确时间同步。节点大部分时间处于休眠状态,仅在有数据包收发的时隙才打开射频模块。
IEEE802.15.4物理层协议
IEEE802.15.4 物理层主要任务是射频模块开启和关闭、通信信道的选择、链路质量预测以及数据发送和接收等。IEEE802.15.4 物理层使用了 868 MHz、915 MHz 和 2.4 GHz 三个公共频段,并且支持 ASK、BPSK 和 O- QPSK 多 种 调 制 方 法。
下表对比了IETF 6TiSCH、LoRa、NB-IoT三种技术物理层的性能指标。
从表中可以看到,IETF 6TiSCH支持短距离通信,其功耗低于LoRa和NB-IoT,数据传输速率较高。
关键技术
高精度时间同步技术
在 IETF 6TiSCH网络中,每个节点都需要保持精确的时间同步,从而可以在精确的时间去发送和接收数据包 。
网络时间同步的两个阶段:
(1) 新节点入网需要ASN时间同步
(2)节点入网后Device-to-Device时间同步:根据RPL协议使用网络树状结构作为时间同步树,子节点与父节点进行时间同步
网络同步过程中,需要周期性交换同步包,以维持高精度时间同步。为了降低同步过程中的能量开销,一些自适应时间同步算法被提出。
资源调度
资源调度方式主要分为集中式和分布式两大类。集中式资源调度适用于静态网络,分布式资源调度比较灵活,可以减少链路建立时间以及管理带来带宽消耗,并且更适用于动态网络。
集中式调度:流量感知算法、基于队列调度与机会选播调度
分布式调度:DeTAS、LLSF、CCR与ReSF等
OTF(on-the-fly)是IETF 6TiSCH工作组提出的第一个资源分配算法(个人感觉很像拥塞控制算法?)
OTF 算法中定义了三个参数 S、R、T ,其中 S 代表当前已分配cell 数量,R 代表当前实际需要的 cell 数量,T 代表阈值,其具体步骤如下:
- 判断 S 与 R 的大小关系,当S > R,并且超过了预设阈值 T ,说明当前已分配 cell 数量过多,需要调整S ,令S = (R + T/2);否则,进入步骤 2。
- 当S > R,但是没有超过预设阈值 T ,说明当前已分配 cell数量合适;否则,进入步骤 3。
- 当S < R,说明当前已分配 cell 数量不满足实际流量需求,需要分配更多 cell 才能满足需要,令S = (R + T/2);否则,报错处理。
安全相关
如IPv6RPL 路由协议容易遭受选择前向攻击、黑洞攻击、虫洞攻击等,建议采用安全的加入过程、轻量级的入侵检测方法与基于熵理论的信任模型等方案来抵御以上路由攻击。
平台
- OpenWSN 实测平台
OpenWSN 开 源 平 台 是IETF 6TiSCH 工作组核心成员开发的,完整实现了IEEE802.15.4e 标准、IPv6 RPL 标准以及 6TOP 协议。 - 6TiSCH 仿真平台
6TiSCH 模拟器是一套实现了 IETF 6TiSCH 标准的开源仿真平台,可以支持几千个节点的网络仿真。
参考文献:
杨伟, 汪浩, 万亚东, 等. IETF 6TiSCH 工业物联网研究综述:标准、关键技术与平台[J]. 计算机科学与探索,2020, 14(3): 361-376.