LoRa网关设备接入

    H3C 绿洲与LoRa 网关之间的协议分管理链路和数据链路,管理链路负责对设备进行配置、升级、重启等相关操作,数据链路主要是协议数据交互,两者互不进行依赖。

非加密数据链路对接

    H3C绿洲和LoRa网关之间的数据传输基于semtech公司推荐的GWMP协议,GWMP协议是基于UDP传输的协议,具体可以参考附件《LoRa gateway to network server interface definition》。
    基于GWMP协议,H3C 绿洲开放1680为PULL报文传输端口,1682为PUSH报文传输端口。

加密数据链路对接

    GWMP协议基于UDP传输,数据未进行加密,在公网进行传输存在安全隐患,因此,H3C在GWMP协议基础上进行了改进,对传输的UDP数据进行加密传输。数据传输还是基于UDP链路,相比于TCP,UDP无连接的数据传输更适合物联网。

加密启动流程

    LoRa网关和H3C绿洲加密传输的流程图如下:

加密传输

第一步:H3C绿洲会开启1681端口,该端口作为TCP端口提供加密协商,同时开启1702端口,该端口作为UDP加密数据传输。  
第二步:网关配置触发GWMP数据加密,配置建议支持端口可配。  
第三、四步:本地创建TCP端口和绿洲的1681端口建立连接。  
第五步:跟绿洲建立SSL加密链路,H3C绿洲目前提供简单的SSL连接建立,不会对 client的身份进行认证。  
第六步:LoRa网关本地生成16字节的秘钥Key,建议用随机算法生成。  
第七步:LoRa网关发送秘钥通告报文Msg1给绿洲,报文中会携带秘钥Key。  
第八步:H3C绿洲会解析报文,存储秘钥Key。  
第九步:绿洲回复秘钥响应报文Msg2给LoRa网关。   
第十步:LoRa网关断开跟绿洲的TCP连接。  
第十一步:后续LoRa网关或绿洲NS有GWMP协议报文需要发送,建议在秘钥协商成功后,LoRa网关主动触发PULL保活报文发送,可以让网络建立新的路由。加密数据使用Key采用AES128算法的CBC模式对报文进行加密传输,绿洲NS开放1702端口用于加密报文的传输。    
    上面描述的是正常业务流程,LoRa网关实现时需要考虑异常情况的处理。在秘钥协商过程中,GWMP协议报文可以考虑仍然走非加密通道,在加密链路建立起来后,再进行切换到加密链路进行数据传输。
    如果要切换回非加密传输,直接关闭加密传输端口,使用非加密数据传输端口即可。  

加密协商报文格式

LoRa网关发送给H3C绿洲的秘钥通告报文Msg1,报文格式如下:

秘钥通过报文Msg1

 GMAC:网关的GMAC地址,同GWMP协议报文中定义。
 Flag:固定为1。
 Key:16字节秘钥,用于后续数据加密。
H3C绿洲回复给LoRa网关的秘钥响应报文Msg2,报文格式如下:

秘钥通过报文Msg2

 Flag:固定为1,表示协商成功。
备注:以上报文传输使用网络序。

加密报文格式

加密报文格式如下图所示:

H3C头格式

H3C Header是加密报文携带的头部,这部分数据不做加密。
 Type:固定值0
 Length:固定值8
 Value:固定GMAC值
GWMP Encrypted Data是经过AES128算法的CBC模式使用Key加密的数据。
备注:以上报文传输使用网络序。

管理链路对接

    管理链路主要负责对网关设备进行在线状态监控,对网关设备进行升级、重启和配置等运维操作,H3C绿洲支持第三方lora网关通过MQTT接入绿洲物联网平台。
注:后面附上的图片都是以文档编辑者的环境进行裁图,不同的环境可能存在差异。

注册设备型号

    在开发中中心点击“设备定制”,在设备型号管理页面点击“创建设备型号”按钮,配置如下:

LoRa网关型号定制

其中:
 设备类型:用于区分该设备型号是终端类型还是网关类型。
 型号模板标识:即为厂商型号模板。
 接入网关协议:即网关与物联网平台的通信协议。
 MQTT: 基于MQTT连接建立的通信机制,LoRa网关的GMAC通过MQTT Topic动态上报。
 MQTT_LoRa:基于MQTT连接建立的通信机制,在添加网关时GMAC通过静态配置的方式。
 数据格式:H3C JSON标准数据格式,请参考《H3C绿洲MQTT设备南向接入协议》。
 设备标识类型:标识设备的ID信息,请根据实际情况选择,这里配置的ID会在添加网关时需要添加。
 认证方式:
 证书认证要求MQTT建立时使用证书的方式,后续MQTT的数据都是基于TLS加密通信。
 密码认证要求MQTT建立时只需要用户密码即可建立连接,不对链路进行加密。

    点击“确定”后,如果“接入网关协议”选择为MQTT,系统会弹出弹窗,弹窗内的信息有:MQTT接入地址,接入地址的用户名和密码:

接入认证信息

配置设备型号

    在设备型号管理页面,可以查看注册的所有设备型号,点击设备型号卡片,可进入设备型号的开发空间,开发空间由“型号信息”、“功能信息”、“消息主题”、“接入配置信息”、“版本管理”等标签页组成,标签页的上方则分别显示了设备型号的名词和唯一标识(ProductKey)。

型号基本信息

该设备型号的基本信息,包含以下主要信息:

设备类型

绿洲物联网平台的设备型号主要分为两大类: 终端和网关。

厂商型号模板标识名词及topic

作为平台中的厂商身份信息标识,注册设备型号时需要绑定在某个模板标识上。

接入方式

MQTT协议

数据格式

    物联网平台支持的数据格式有:JSON数据格式、自定义数据格式。如果设备数据格式为自定义格式则需要在物联网平台上配置解析和编码方式。

认证信息

    物联网平台支持证书认证和用户名密码认证两种方式;也支持一型一密和一机一密两种认证级别。

功能信息

属性

    设备上报的相关设备属性,如当前CPU、内存、温度都可以是一个属性。

指令

    一般是设备可调用的方法,支持自定义指令参数,以满足执行某项任务的需要。比如重启等操作可以使用。

配置

    是指设备的配置信息,该功能可以实现在线更新设备的系统参数,支持双向配置。例如GWMP的端口配置。

消息主题

    由于该设备是以MQTT协议接入物联网平台,该标签页则显示了物联网平台为了建立与设备之间通信所生成MQTT topic,双方基于此topic进行通信。

消息主题

接入配置信息

    展示了设备与平台之间的连接信息(MQTT连接地址、用户名密码等)。

接入配置信息

版本管理

    绿洲物联网平台支持设备远程固件升级,开发者可在设备型号开发空间内上传该设备型号的版本文件。点击 “版本上传”,系统将会弹出“添加版本”弹窗。
    设置好各项参数,选择本地版本文件。点击“确定”,版本文件即可上传成功,每个设备型号可以上传多个版本文件。
注意:版本文件格式只限于:bin、zip、tar、gz格式,大小只限于200M内。

上传版本

添加网关

    设备型号配置完成后,设备的能力已经定义完成,接下来就可以在物联网设备管理平台进行设备的管理。
    登录绿洲平台首页,选择具体物联网场所,点击“网关管理”->“添加网关”,然后在添加网关页面填入各项参数:

添加网关2

配置网关

    网关的开发空间分别由:“设备信息”、“运行状态”、“在线调试”、“远程配置”、“子设备信息”、“子设备通道信息”、“消息主题”等标签组成。“子设备信息”、“子设备通道信息”对于LoRa网关不涉及,不做介绍,其他功能介绍如下。

设备信息

    “设备信息”展示设备当前的基本信息。

设备基本信息

运行状态

    “运行状态”展示由创建型号时定义的属性信息,设备上报的属性会在这里进行具体值的呈现,并查看历史数据。

在线调试

    “在线调试”展示创建型号时定义的指令,点击“在线调试”>“配置指令”,即可给设备下发相应的指令。在页面下方的列表里,显示该设备所有指令状态的详细信息和历史指令。

远程配置

    “远程配置”展示创建型号时定义的配置,具体可以对设备进行配置下发和展示设备当前的配置。

    网关配置查看支持“期望配置”和“上报配置”,“期望配置”即上一次平台配置的值,“上报配置”是设备上报的配置,设备在收到新的配置后,可以立刻上送配置,如果和“期望配置”不同,则说明之前配置下发失败。

消息主题

    “消息主题”呈现出此网关设备所拥有的主要的MQTT topic,网关可以通过这些topic来和iot平台进行通信,可以说这些消息主题是设备与iot平台约定的通信管道。“消息主题”可以说是型号的具体一个实例,对于LoRa网关,请使用具体的MQTT通配符来适配订阅TOPIC,发布消息请已具体的设备TOPIC进行发布。

设备上线

    注册网关型号时,平台便生成了该型号下设备的认证接入信息,该认证信息可以在设备型号的开发空间内,点击“接入配置信息”查看。设备厂商需要将认证接入信息烧录到设备中,配合MQTT client和平台建立连接。在平台添加完设备后,设备已经具有认证接入信息。设备上电后,MQTT连接建立起来,即设备上线。

固件升级

    进入绿洲物联网平台首页,点击“监控”>“物联网网关”>“批量升级”,进入固件升级模块。在“批量升级”页面,选择具体设备型号,点击“选择设备升级”,即可查看该型号所有设备信息。

固件升级

    选中升级的具体目标设备(可多选),然后点击“升级”。系统将弹出升级操作“确认提示”窗口,在该窗口内可以选择升级的目标版本号以及升级方式,并点击确认。如下图所示:

固件升级2

    注意:只有上报过当前版本号的设备才可以进行升级操作,因此建议设备上电启动后立即上报当前版本号。
可以在升级的设备列表中,查看设备的升级详细信息,包括升级进度以及升级状态。

升级进度

© H3C IoT all right reserved,powered by Gitbook更新时间: 2021-11-24 17:53:45

results matching ""

    No results matching ""