学习LwM2M协议

news/2024/11/24 10:52:07/

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


体系结构图如图1所示,有四个接口:
1)Bootstrap(引导),
2)Client Registration(客户注册),
3)Device Management & Service Enablement(设备管理和服务支持),
4)Information Reporting(信息报告)。
这四个接口的路由操作可分为上行链路操作和下行链路操作。
这里写图片描述


图3显示了“Bootstrap”接口的操作模型。对于这个接口,这些操作包括一个上行链路操作为“引导-请求”和下行操作为“发现”、“写入”,“删除”和“引导-完成”。
这些操作用于初始化LWM2M客户端所需的对象以与一个或多个LWM2M服务器进行注册。使用此接口上的“写入”操作,LwM2M客户端必须写入包含在有效负载中的值,而不考虑目标对象实例或资源和访问权限。在服务器将引导信息寻址到LwM2M客户端的模式中,当此传输结束时,服务器必须通过发送“Bootstrap-Finish”命令通知LwM2M客户端。
这里写图片描述

图4显示了接口“客户端注册”的操作模型。对于这个接口,这些操作是称为“注册”、“更新”和“注销”的上行链路操作。
这里写图片描述

图5显示了接口“设备管理和服务支持”的逻辑操作模型。对于这个接口,这些操作是名为“read(读取)”、“create(创建)”、“Delete(删除)”、“write(写入)”“EXECUTE(执行)”、“Write Attribute(写-属性)”和“Discover(发现)”的下行操作。这些操作用于与LwM2M客户端公开的资源、资源实例、对象实例和/或它们的属性进行交互。“读取”操作用于读取当前值;“发现”操作用于发现属性并发现在特定对象中实现的资源;“写入”操作替换用于更新值;“写-属性”操作用于更改属性值,而“执行”操作用于启动操作。“创建”和“删除”操作用于创建或删除实例。
这里写图片描述

图6显示了接口“信息报告”的操作模型。对于此接口,下行链路操作是“观察”或“取消观察”操作,以及上行链路“通知”操作。“此接口用于向LwM2MServer发送与LwM2M客户端上的资源相关的新值。
这里写图片描述
接口与操作之间的关系如下表所示:
这里写图片描述


协议栈如下图所示:
这里写图片描述
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
LM2M Protocol: 定义了一些逻辑操作,比如Read, Write, Execute, Create or Delete.
CoAP: 是IETF 定义的Constrained Application Protocol 用来做LWM2M的传输层,下层可以是 UDP 或SMS .UDP 是必须支持的,SMS是可选的。CoAP有自己的消息头,重传机制等。
DTLS: 是用来保证客户端和服务器间的安全性的




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

相关文章

matlab神经网络工具箱的使用

单变量 单变量取数据 data load(ex1data1.txt); X data(:, 1); y data(:, 2);多变量取数据 data load(ex1data2.txt); X data(:, 1:2); y data(:, 3);运行train后弹出 对应的图 比如simulink格式 graphics格式 导出的函数形式 function [Y,Xf,Af] myNeuralNetwo…

解决Matlab 调用训练好的BP网络的权值和阀值算出来的预测值和调用sim得到的值不一样的办法

解决方法 解决方法很简单:自己通过训练好的权值和阈值计算时,归一化和反归一化的范围应该设为(-1,1),而不是(0,1)。 也就是从原来的: [p_train, ps_input] mapminmax(Id,0,1); [t_train, ps_output] mapminmax(train_y,0,1);…

深入区块链层:L1 和 L2

深入区块链层:L1 和 L2 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AivxuuH0-1664858847219)(htTPS://tva1.sinaimg.cn/large/e6c9d24ely1h4r0auxvmxg20tr04ojug.gif)] L2解决方案是为了解决网络吞吐量问题而创建的。然而&#xff0c…

【LWE问题简介】

文章目录 解线性方程组问题LWE问题搜索LWE问题判定LWE问题两个LWE问题之间的规约LWE问题的复杂性结论平均情况下的复杂性结论其他版本的LWE问题其他信息论文索引 容错学习(learning with errors, LWE)问题就是求解带噪声的线性方程组问题, 由Oded Regev在[Reg05] 中提出, 他也因…

ensp 中的链路聚合Eth-trunk

链路聚合简介 链路聚合技术(Link Aggregation) 是在实际应用中非常实用的技术。它可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口,来达到增加链路带宽的目的。在增大带宽目的的同时。链路聚合采用备份链路的机制,可以有…

PLC滑动平均值滤波(SMART 200梯形图篇)

滑动平均值滤波的算法原理请参看《信号处理》专栏的其它文章,这里给出简单快速写法,以供参考。 S7-200 SMART PLC信号处理系列之滑动平均值滤波FB_RXXW_Dor的博客-CSDN博客_plc平均值滤波程序PLC相关滤波算法,专栏有很多详细讲解这里不再赘述。滑动平均值滤波和算术平均值滤…

单片机 数字电压表(ADC0809)

单片机 数字电压表(ADC0809) 一、简述 采用模数转换的芯片ADC0809实现设计数字电压表。例子中设计的数字电压表可以测量0~5V范围内的输入电压值,并且通过4位LED数码管显示采集的电压值,例子测量三个模拟值:4.995、2.5、0.005。 A…