LoRaWAN Backend Interface 后端协议解析 第13章 DevAddr 分配

前言

DevAddr 标识入网设备地址,v1.1 的核心规范开始关注网络漫游,联盟将DevAddr管控起来,高级别成员享受到较多的设备地址数量。

《LoRaWAN-Backend-Interfaces-v1.0》,即LoRaWAN后端接口协议规范 V1.0 版本( 2017 年 10 月 11 日定稿)。我正在陆续对协议的各个章节解析,详细点此查看

本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/

1 NetID 与 DevAddr前缀的关系

联盟分配24bit_NetID
TYPE+ID
DevAddr前缀

2 NetID 介绍

联盟给不同级别的LoRa联盟成员分配不同的ID。

24bit NetID 格式如下:

3 bits 21-N bits N bits
Type RFU ID

这里的 Type 及 N 的定义在这里:

3 DevAddr 介绍

DevAddr 格式如下:

L bits M bits N bits
Type Prefix NwkID NwkAddr

详细的位数定义如下:

举几个示例

例如某 Sponsor 成员分配的ID是3,那么 NetID 是 0x000003,它的 DevAddr 是 0x06000000 ~ 0x07ffffff。

实验/私有网络比较特殊,它的NetID是 0x000000 ~ 0x000001,它的 DevAddr 是 0x00000000 ~ 0x03ffffff

再比如腾讯,在使用腾讯云 IoT Explorer平台时,发现设备分配的 DevAddr 是 0x6a 打头。那么就可以推断,腾讯使用 Type0 ID为 53 的 NetID = 0x000035,它的 DevAddr 范围是 0x6a000000 ~ 0x6bffffff。

阿里云LinkWAN分配的 DevAddr 是 0x67~0x68 打头,那么可以推断阿里使用 Type0 ID为 51 的 NetID = 0x000033。

号段整理

小能手整理了一个表格,直观看下各个成员对应的号段。

成员级别 DevAddr 地址范围 拥有的设备地址数量
实验/私有网络 0x00000000~0x03ffffff 全体共享 ‭‭67,108,864‬
Type0 Sponsor 0x04000000~0x7fffffff 单独拥有 33,554,432
Type1 0x80000000~0xbfffffff 单独拥有 16,777,216
Type2 0xc0000000~0xdfffffff 单独拥有 1,048,576
Type3 Contribute 0xe0000000~0xefffffff 单独拥有 262,144
Type4 0xf0000000~0xfbffffff 单独拥有 65,536
Type5 0xf0000000~0xfbffffff 单独拥有 8,192
Type6 Institutional 0xfc000000~0xfdffffff 单独拥有 1,024
Type7 0xfe000000~0xfeffffff 单独拥有 128

所以我们可以从设备地址上看出来目前设备是属于哪个级别成员的网络。

  • 00~03打头的是实验和私有网络
  • 04到7f打头的是联盟Sponsor的网络
  • e打头的是联盟贡献者的网络

4 小结

32bit的DevAddr标识入网设备的地址,早期 v1.0.x 的核心规范中,其规定比较粗犷,不同网络运营商瓜分7bit的前缀,后25位由运营商自己分配给设备,这样每个运营商拥有2^25个设备地址数量。

但从 v1.1.0 的核心规范开始注意网络漫游,将 DevAddr 管控起来,前缀不再使用高7bit,变得更加灵活,高级别成员才能享受到较多的设备地址数量。

End


发布了237 篇原创文章 · 获赞 226 · 访问量 79万+

猜你喜欢

转载自blog.csdn.net/iotisan/article/details/102602937