LWM2M 协议是 OMA 组织制定的轻量化的 M2M 协议,主要面向基于蜂窝的窄带物联网(Narrow Band Internet of Things, NB-IoT)场景下物联网应用,聚焦于低功耗广覆盖(LPWA)物联网(IoT)市场,是一种可在全球范围内广泛应用的新兴技术。具有覆盖广、连接多、速率低、成本低、功耗低、架构优等特点。
移动 OneNET 平台采用的是基于 NB-IOT 的 LWM2M 协议和 CoAP 协议实现 UE 与平台的通信,其中 LWM2M 协议为应用层协议,CoAP 协议为传输层协议。
1、LWM2M 协议逻辑实体与逻辑接口
(1)LwM2M 定义了三个逻辑实体:
LWM2M Server :接入机,平台服务器接口;
LWM2M client : 客户端,负责执行服务器 的命令和上报执行结果;
Bootstrap server :引导机,负责 配置 LWM2M 客户端。
(2)这三个逻辑实体之间有4个逻辑接口:
Bootstrap:Bootstrap Server 通过这个接口来配置 Clinet - 比如说 LWM2M server 的 URL 地址;
Device Discovery and Registration:客户端注册到服务器并通知服务器客户端所支持的能力;
Device Management and Service Enablement: LWM2M Server 发送指令给 Client 并受到回应.;
Information Reporting:LWM2M Client 来上报其资源信息的,比如传感器温度。
这三个逻辑实体与四个逻辑接口之间的关系如下图:
2、LWM2M 协议栈
Lightweight M2M 协议栈结构如下图所示:
2.1 LWM2M Objects
每个 object(对象)对应客户端的某个特定功能实体。 LWM2M 规范定义了一些标准 Objects,比如:
urn:oma:lwm2m:oma:2; (LWM2M Server Object,其中‘2’为object ID)。
urn:oma:lwm2m:oma:3; (LWM2M Access Control Object,其中‘3’为object ID)。