LwM2M协议学习

news/2024/11/24 13:42:45/
LwM2M全称lightweight Machine to Machine,是OMA(open Mobile Alliance)定义的物联网协议,主要可以使用在资源受限(包括存储、功耗等)的嵌入式设备上。其官方网站 http://www.openmobilealliance.org ,协议的下载地址 http://openmobilealliance.org/release/LightweightM2M/ 。主要理解下LwM2M协议实现功能及网络框架,对具体的实现定义、加密处理等流程还是参考协议比较清晰(基于V1.0.1版本)。具体内容参考协议说明文档<<OMA-TS-LightweightM2M-V1_0_1-20170704-A.pdf>>。
名词解释
OMA- open Mobile Alliance
CoAP- Constrained Application Protocol
LwM2M- Lightweight Machine to Machine
DTLS-Datagram Transfer Layer Security
SMS-Short Messaging Service
TLV-Type-Length-Value
JSON- JavaScript Object Notation
网络基本框架

协议定义了四种接口,并对应不同的功能:Bootstrap、Client Registration、Device managment and Service Enablement及Information Report。这些接口的操作对象为:对象Object,对象实例Object Instance及资源Resources。为实现不同功能划分,协议定义了八种对象,ID及命名分别为0.Security Object、1. Server Object、2. Access Control Object、3. Device Object、4. Connectivity Monitoring Object、5. Firmware Update Object、6. Location Object、7. Connectivity Statistics Object。对象和对象实例比较好理解,资源协议的说明为逻辑概念,相当于一个对象实现一个功能所占用的资源。资源可以配置不同的权限: 只读、或读写,可由操作Access Control对象进行维护。在接口对元素进行操作时,可以在不同属性级别上进行操作:O、OI、R,概要讲优先级R>OI>O。
服务器客户端网络关系
一个终端至少可以接入一个服务商服务器,也可以接入多个服务服务器,多个服务器时需要进行选择操作,依据为bootstrap引导时获取的相关信息。而服务商可以和网络商属于同一家,亦可是不同家,其大概关系。

协议的流程及操作
主要流程:需要先进行Bootstrap获取相应信息,完成后进行Client Registration处理,只有成功在服务器端注册相关信息后,才可通过Device managment and Service Enablement及Information Report接口来控制和传送相关需要的信息。

协议定义的相关接口的操作和操作方向如下:Uplink表示客户端到服务器端的传送,而Downlink表示服务器端到客户端的传送。理解上LwM2M的消息没有对称的反馈消息,由于LwM2M承载在CoAP协议上,使用CoAP的get、post、put、delete方式(协议详细说明每种operation对应的CoAP操作方式),对于相应消息成功或失败的反馈是通过CoAP协议本身的交互来实现的。LwM2M载荷支持四种格式 plain text、Opaque、TLV、JSON,这四种协议要求服务器端必须都要支持,而在客户端必须支持TLV格式。
Bootstrap属于逻辑功能,不一定存在真实交互,流程可以分为四种:Factory Bootstrap:厂家存储相应信息在设备中;Bootstrap from Smartcard:信息存储在Smartcard中;Client Initiated Bootstrap:客户端请求服务器引导信息数据;Server Initiated Bootstrap:服务器发起引导程序,前提是bootstrap server已经确定客户端可以访问。而在Bootstrap过程实现的尝试流程:Smartcard mode => Factory Bootstrap mode =>采用存储的信息进行register=> Server Initiated Bootstrap ClientHoldOffTime内=>发起重新bootstrap流程。
在Bootstrap完成后进行Registration操作,这个过程有一些能力信息。如终端服务器交互工作模式:U(UDP)、UQ(UDP with Queue Mode)、S(SMS)、SQ、US、UQS(UDP with Queue Mode and SMS),而UQSQ and USQ 在V1.0.1版本中不支持。理解上这些需要和客户端的工作模式设置一致,如在NB的PSM模式下无法使用实时接收服务器侧数据,则需要启用Q模式进行Buffer相应数据。
在Registration完成后,才可启用Device Management and Service Enablement及Information Report的接口服务,而这两类接口服务的主控方为服务器端。如Information Reporting接口,网络可以通过Observe、Cancel Observation来进行客户端Notify信息上报开关的控制。
协议层次结构
LwM2M属于应用层协议,位于CoAP协议之上,而CoAP可以进行DTLS加密处理,最后通过UDP或SMS方式传送。


http://www.ppmy.cn/news/633469.html

相关文章

华为ENSP综合实验:eth-trunk、vlan底层、vrrp负载分担、MSTP、DHCP中继

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、实验目的&#xff1a;在局域网内实验&#xff0c;dhcp服务器负责地址分配、核心交换机做链路聚合增加带宽二、使用步骤 1、eth-trunk配置2、VLAN二层配置3、…

LWM2M 简介

物联网热了几年&#xff0c;最基本以及广泛的铺开的应用还只是 Device Management. 基本功能包括: 软件/固件升级&#xff0c;应用程序升级&#xff0c;远程的参数监视告警 Lightweight M2M 基础 OMA是一家国际组织&#xff0c;最初定义了一套 OMA-DM的协议&#xff0c;用来远…

LwM2M简介

1、LwM2M是什么 官方文档&#xff1a;http://www.openmobilealliance.org/release/LightweightM2M/ release: http://openmobilealliance.org/wp/index.html LwM2M的全称是Lightweight Machine-To-Machine&#xff0c;由OMA&#xff08;Open Mobile Alliance&#xff09;提出…

VRRP实验

一、什么是vrrp&#xff1f; 虚拟路由器冗余协议&#xff08;VRRP&#xff09;是一种选择协议&#xff0c;它可以把一个虚拟路由器的责任动态分配到局域网上的VRRP路由器中的一台。控制虚拟路由器IP地址的VRRP路由器称为主路由器&#xff0c;它负责转发数据包到这些虚拟IP地址…

Valhalla LW2的进展–内联类型

过去几周&#xff08;2019年6月/ 2019年7月&#xff09;&#xff0c; 瓦尔哈拉计划的LW2阶段/原型最初于2018年10月提出&#xff0c;在面向公众的方面取得了重大进展。 在这篇文章中&#xff0c;我简要总结了最近发布的一些消息&#xff0c;文档和Valhalla Early Access Build。…

4 测试分类

文章目录 总结:课程笔记 总结: 课程笔记

EventLog Analyzer:助力企业完成等保2.0的关键帮助

在当今数字化时代&#xff0c;企业面临着越来越多的网络安全威胁和数据泄露风险。为了保护敏感信息和维护业务的连续性&#xff0c;许多企业正在积极采取措施来实施等保2.0标准。在这一过程中&#xff0c;EventLog Analyzer作为一种全面的安全信息与事件管理解决方案&#xff0…

MT5搭建多账户PAM/MAN系统

PAM/man系统通常适用于基金/外汇领域。 技术部署于manage后台、MT4/MT5白标、主标皆可适用。 PAMMM系统以跟单社区的模式&#xff0c;设置好主账号&#xff0c;类似于followme、信号源会发出一定的信号&#xff0c; 跟随者按照指定的逻辑程序&#xff0c;占有比例去实时跟进…