资讯

新闻中心

NEWS

首页 > 资讯 > 慧联应用研究 | 浅谈LoRaWAN组播技术原理(技术篇)

查看其它板块

慧联应用研究 | 浅谈LoRaWAN组播技术原理(技术篇)

来源:慧联无限 | 2020.02.22



在2月27日发布的《浅谈LoRaWAN组播技术和应用(市场篇)》一文中,我们谈到了LoRaWAN组播的概念,为什么要用组播,并列举了几个组播典型的应用场景。今天,本文通过介绍组播的控制命令和工作时序来进一步理解其实现原理。



 1.组播命令 

LoRaWan组播功能只适用于ClassB/C模式,这是因为所有的控制、配置命令都必须通过网络服务器的主动下行命令来实现。通过网络服务器来配置节点的组播分发窗口、使组内的节点暂时进入ClassB/C模式、以及关闭、分发窗口退回到正常模式这些操作使节点完成组播功能。而设置节点组播的相关的消息命令都是通过单播的形式PORT=202端口传输的,只有下行的组播消息才使用组播组应用会话密钥进行加密传输,组播组内的所有节点拥有相同的组播会话密钥。

远程组播消息命令有以下几种:
(1)远程组播版本请求/应答命令,由应用服务器发起来获取节点端的远程组播的版本信息;

(2)请求组播组状态命令/应答,由应用服务器发起来查询终端节点的配置的所有组播组的状态;

(3)请求设置组播组命令/应答,由应用服务器发起来设置节点加入组播组的必要的信息,组播组ID,组播组地址,组播组加密密钥以及组播组最小和最大计数值;

(4)请求删除组播组命令/应答,由应用服务器请求删除节点的组播组,节点根据组播组ID删除对应的组播组;

(5)请求节点创建ClassC组播会话命令/应答,由应用服务器发起来设置节点进入ClassC组播会话的信息。节点根据组播组ID、组播会话开始时间、组播会话、超时时间、ClassC组播下的频点以及速率来创建Class C组播会话;

(6)请求节点创建ClassB组播会话命令/应答,由应用服务器发起来设置节点进入ClassB组播会话的信息。


命令格式如下:
其中payload 字段的可以携带命令内容,也可以是空。
节点最多支持4个组播组,每个组播组都有不同的组播ID,组播地址,以及组播加密密钥。组播加密密钥(McKey_encrypted)用于生成组播应用会话密钥(McAppSKey)和组播网络会话密钥(McNetSKey)。组播密钥由节点的GenAppKey、组播加密密钥、组播地址生成,生成方式如下:
McRootKey = aes128_encrypt(GenAppKey, 0x00 | pad 16 )
McKEKey = aes128_encrypt(McRootKey, 0x00 | pad 16 )
McKey = aes128_encrypt(McKEKey, McKey_encrypted)
McAppSKey = aes128_encrypt(McKey, 0x01  |  McAddr | pad 16 )
McNetSKey = aes128_encrypt(McKey, 0x02  |  McAddr | pad 16 )
流程图如下:


2.组播工作时序 

创建组播会话需要应用服务器和节点进行多次交互进行设置,该组播会话的创建过程都是通过单播来完成。其主要是组播组ID的设置、组播组密钥的传输、组播地址,组播密钥的定义设置以及最终组播会话的创建。以下是一个ClassC 的终端从单播切换到组播,再从组播返回单播模式的创建会话的时序图:
(1)应用服务器请求设置组播组,此步骤主要是设置组播组的ID、组播组地址、组播组密钥、以及组播组的组播下行最小和最大计数值;

(2)应用服务器请求设置组播组会话,此步骤主要请求节点根据服务器提供的组播组ID,组播会话类型,组播会话开始时间,组播会话超时结束时间,组播会话频点以及速率进行创建组播会话。如果是要创建ClassB 会话则需要根据提供的ClassB参数(pingslot频点,pingslot周期,pingslot速率)进行创建ClassB组播会话;

(3) 终端收到组播会话请求McClassCSessionReq后,根据组播会话开始时间来切换到Class C,完成组播会话的创建以及进入组播状态;

(4)网络服务器会根据相应的组播配置进行组播的数据下发,终端根据其组播组ID、组播秘钥、组播会话开始时间、组播会话、超时时间、ClassC组播下的频点以及速率进行接收,终止时间到则退出组播接收模式;

(5)如还有新的组播数据要发送,则回到2)启动一次新的组播会话创建,在新的窗口进行数据传输;

(6)退出组播模式,服务器下发McGroupDeleteReq命令,将终端从一个组播组中删除,终端收到后回复McGroupDeleteAns,则终端退出组播回到单播模式。


慧联应用研究 | 浅谈LoRaWAN组播技术和应用(市场篇)
(点击进入阅读页面)