LWM2M 简介

物联网热了几年,最基本以及广泛的铺开的应用还只是 Device Management. 基本功能包括: 软件/固件升级,应用程序升级,远程的参数监视告警


Lightweight M2M 基础

OMA是一家国际组织,最初定义了一套 OMA-DM的协议,用来远程管理移动终端设备,比如手机开户,版本升级,等等。OMA-DM有着非常广泛的应用,很多运营生比如Verizon Wireless, Sprint都有自己的OMA-DM服务并要求手机/模块入网的时候通过自定义的OMA-DM入网测试。因为物联网的兴起, OMA在传统的OMA-DM协议基础之上,提出了LWM2M协议。2013年底,OMA发布了LWM2M规范。

OMA Lightweight M2M 主要动机是定义一组轻量级的协议适用于各种物联网设备,因为M2M设备通常是资源非常有限的嵌入式终端,无UI, 计算能力和网络通信能力都有限。同时也因为物联网终端的巨大数量,节约网络资源变得很重要。


LWM2M 定义了三个逻辑实体:

  • LWM2M Server 服务器
  • LWM2M client 客户端 负责执行服务器 的命令和上报执行结果
  • LWM2M 引导服务器 Bootstrap server 负责 配置LWM2M客户端.

在这三个逻辑实体之间有4个逻辑接口:

  • Device Discovery and Registration
    这个接口让客户端注册到服务器并通知服务器客户端所支持的能力(简单说就是支持哪些资源Resource和对象Object
  • Bootstrap
    Bootstrap server通过这个接口来配置Clinet - 比如说LWM2M server的URL地址
  • Device Management and Service Enablement
    这个就是最主要的业务接口了。 LWM2M Server 发送指令给 Client 并受到回应.
  • Information Reporting
    这个接口是 LWM2M Client 来上报其资源信息的,比如传感器温度。上报方式可以是事件触发,也可以是周期性的。


Lightweight M2M 协议栈


LWM2M 简介_第1张图片
  • LWM2M Objects: 每个对象对应客户端的某个特定功能实体. LWM2M 规范定义了一下标准Objects,比如
    • urn:oma:lwm2m:oma:2; (LWM2M Server Object)
    • urn:oma:lwm2m:oma:3; (LWM2M Access Control Object)
    • 每个object下可以有很多resource. 比如Firmware object可以有Firmware版本号,size等resource.
    • Vendor可以自己定义object
  • LWM2M Protocol: 定义了一些逻辑操作,比如Read, Write, Execute, Create or Delete.
  • CoAP: 是IETF 定义的Constrained Application Protocol 用来做LWM2M的传输层,下层可以是 UDP 或SMS .UDP 是必须支持的,SMS是可选的。CoAP有自己的消息头,重传机制等。
  • DTLS: 是用来保证客户端和服务器间的安全性的.



你可能感兴趣的:(LWM2M,M2M,CoAP,IOT)