本文作者:kaifamei

支持数据处理的MQTT通讯协议方法、设备和存储装置与流程

更新时间:2025-03-23 03:15:40 0条评论

支持数据处理的MQTT通讯协议方法、设备和存储装置与流程


支持数据处理的mqtt通讯协议方法、设备和存储装置
技术领域
1.本发明涉及数据通讯技术领域,特别涉及一种支持数据处理的mqtt通讯协议方法、设备和存储装置。


背景技术:



2.mqtt(message queuing telemetry transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的轻量级协议。该协议构建于tcp/ip协议之上,mqtt最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
3.mqtt支持三种消息发布服务质量:"至多一次",消息发布完全依赖底层tcp/ip网络,会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次数据记录不会造成数据丢失,因为不久后还会有第二次发送。这一种方式主要普通app的推送,倘若智能设备在消息推送时未联网,推送过去没收到,再次联网也就收不到了。"至少一次",确保消息到达,但消息重复可能会发生。"只有一次",确保消息到达一次。在一些要求比较严格的计费系统中,可以使用此级别。在计费系统中,消息重复或丢失会导致不正确的结果。这种最高质量的消息发布服务还可以用于即时通讯类的app的推送,确保用户收到且只会收到一次。
4.由于mqtt通讯协议构建于tcp/ip协议之上,因此沿用了以报文的方式进行消息传输;mqtt报文的构成:固定报头、可变报头和有效载荷;
5.表1固定报头:每个报文都具备
[0006][0007]
表2可变报头:部分报文具备
[0008]
[0009][0010]
有效载荷(部分报文包含):一般都是长度+具体信息的十六进制表示;其最大长度受固定报头中剩余长度4个字节的限制(即一次携带信息的最大信息量为4个字节:256mb);不同报文携带不同有效载荷,例如connect报文则是:用户id长度+用户id+用户名长度+用户名+用户密码长度+用户密码。
[0011]
表3mqtt通讯协议中现有的控制报文
[0012]
[0013][0014]
表4现有mqtt通讯协议中,针对可变报文及有效载荷的规定
[0015][0016]
下面以一个具体实例进行说明:
[0017][0018]
[0019]
publish报文展示(16进制表示形式):
[0020]
mqtt控制报文类型:30
[0021]
剩余长度:11
[0022]
主题长度:00 04
[0023]
主题详细内容:74 65 73 74
[0024]
携带有效信息:68 65 6c 6c 6f 20 77 6f 72 6c 64
[0025]
整体报文:30 11 00 04 74 65 73 74 68 65 6c 6c 6f 20 77 6f 72 6c 64
[0026]
随着物联网技术的不断发展,mqtt通讯协议的应用也越来越广泛;原有的mqtt通讯协议仅能满足物联网中数据原样的转发服务,无法满足一些需要支持数据处理及数据转发的个性化应用场景。
[0027]
基于此,本发明提出了一种支持数据处理的mqtt通讯协议方法、设备和存储装置。


技术实现要素:



[0028]
本发明为了弥补现有技术的缺陷,提供了一种简单高效的支持数据处理的mqtt通讯协议方法、设备和存储装置。
[0029]
本发明是通过如下技术方案实现的:
[0030]
一种支持数据处理的mqtt通讯协议方法,其特征在于:mqtt broker角新增数据处理功能,并通过新增反馈控制报文将数据处理结果反馈给mqtt发布者角;
[0031]
所述mqtt broker角在具备现有mqtt通讯协议的基础功能外,新增数据处理模块,所述数据处理模块用于实现脏数据过滤、数据转换和反馈功能;
[0032]
在mqtt broker底层实现代码中新增数据处理包,采用模块化整合的处理方式,用户导入数据处理配置文件;mqtt broker角根据用户配置的数据处理文件决定是否开启相关数据处理功能;若不开启数据处理功能,则为现有mqtt通讯协议;若开启数据处理功能,则自定义配置脏数据过滤规则及相应数据转换规则;
[0033]
mqtt broker角在完成数据处理后,利用mqtt的数据转发功能,将处理后的数据转发给mqtt订阅者角;同时通过新增反馈报文feedback将数据处理的结果反馈给mqtt发布者角,mqtt发布者角收到反馈信息后对脏数据进行调整,并重新进行数据上报。
[0034]
所述mqtt发布者角,部署在mqtt客户端,为物联网中路由器,其下连接智能边缘设备,采集智能边缘设备相关数据,作为mqtt数据传输的原始数据进行上报;
[0035]
所述mqtt订阅者角部署在mqtt客户端,通过订阅与mqtt发布者约定的主题topic接收从mqtt broker转发的数据。
[0036]
所述反馈报文feedback的构成包括固定报文头部和有效载荷,报文展示为f0+剩余长度+有效载荷;同时新增一个反馈标志位,以决定发布者是否接收反馈报文。
[0037]
包括如下步骤:
[0038]
步骤s01、mqtt客户端连接服务器
[0039]
安装mqtt客户端的发布者与mqtt broker建立网络连接后,发布connect报文请求与服务器建立连接;
[0040]
在同一个网络连接中,客户端只能发送一次connect报文,如果出现第二个connect报文,按照协议标准,服务器将第二个connect报文当作协议违规处理并断开客户
端的连接;对于正常的连接请求,服务器必须产生应答报文connack,如果无法建立会话,服务器则在应答报文中报告对应的错误代码;
[0041]
在客户端与服务器成功建立连接后,为了维持连接,按照connect报文中keep alive设置的时间值t秒,每隔t秒客户端向服务器发送一个心跳请求报文pingreq;同样服务器端接收客户端心跳请求时回复一个心跳响应报文pingresp;
[0042]
步骤s02、mqtt订阅主题
[0043]
mqtt订阅者在安装mqtt客户端后,向服务器发送subscribe报文用于创建一个或多个订阅,subscribe报文中包含订阅主题及服务器向客户端发送应用消息所允许的最大服务质量qos等级:0、1或2;服务器端收到subscribe报文后,回复suback确认报文;同时在服务器中,记录每个客户关注的一个或者多个主题,当服务器收到这些主题的publish报文时,将分发应用消息到与之匹配的客户端;
[0044]
步骤s03、mqtt发布主题
[0045]
mqtt发布者在安装mqtt客户端后,向服务器发送publish报文用于数据上报,publish报文包含固定报文头、有效载荷和消息服务质量qos等级:0、1或2;根据消息服务质量等级与用户是否开启数据处理功能进行消息传输;
[0046]
步骤s04、mqtt主题转发
[0047]
首先在现有的mqtt服务器(broker)底层采用基础功能模块整合原有的功能,接收来自客户端的网络连接,并处理客户端的消息订阅和消息发布请求,同时把mqtt发布者发布的消息转发给消息订阅客户端,并新加入数据处理功能;
[0048]
步骤s05、当mqtt broker接收mqtt发布者上传的数据后,根据用户导入的数据处理配置文档,决定是否开启数据处理功能;
[0049]
若不开启数据处理功能,则为现有的mqtt通讯协议,按照publish报文中qos值进行相应的消息传输;
[0050]
步骤s06、若开启数据处理功能,则用户自定义配置数据处理规则,包括脏数据过滤规则和数据转换规则,并根据数据处理规则对从mqtt发布者接收的数据进行处理,调用mqtt通讯协议将正常数据转发到消息订阅客户端;
[0051]
步骤s07、mqtt取消订阅主题,安装mqtt客户端的订阅者向服务器发送unsubscribe报文,用于取消订阅主题;
[0052]
步骤s08、mqtt断开连接
[0053]
mqtt客户端向服务器发送disconnect报文,表示客户端正常断开连接。
[0054]
所述步骤s03中,若用户开启了数据处理功能,服务器根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过反馈报文feedback反馈给mqtt发布者;若接收到反馈标志位则发回反馈信息,否则不反馈。
[0055]
所述步骤s06中,首先,mqtt broker根据用户配置的脏数据过滤规则对从mqtt发布者接收的数据进行处理,将过滤出的脏数据反馈报文feedback方式通知mqtt发布者,提供信息反馈的功能;其次,针对过滤出的正常数据,根据用户配置的数据转换规则对其进行数据转换;最后,调用mqtt通讯协议,将按照用户配置的数据转换规则转化的数据,转发到消息订阅客户端。
[0056]
所述unsubscribe报文中包含取消订阅的主题信息。
[0057]
一种设备,其特征在于:包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现上述的方法步骤。
[0058]
一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法步骤。
[0059]
本发明的有益效果是:该支持数据处理的mqtt通讯协议方法、设备和存储装置,不仅能够避免每个mqtt订阅者做重复的数据处理工作,还能避免脏数据在整个mqtt传输过程的时间消耗,将脏数据及时反馈给发布者,从而能够以有限的带宽为连接远程设备提供数据处理服务及实时可靠的数据传输服务,有效满足用户的个性化mqtt应用场景需求。
附图说明
[0060]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0061]
附图1为现有mqtt通讯协议的流程图
[0062]
附图2为本发明一种支持数据处理的mqtt通讯协议流程图
[0063]
附图3为本发明针对现有mqtt通讯协议的新增数据处理模块的具体流程图
[0064]
附图4为本发明一种支持数据处理的mqtt通讯协议具体工作流程图
具体实施方式
[0065]
为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0066]
该支持数据处理的mqtt通讯协议方法,mqtt broker角新增数据处理功能,并通过新增反馈控制报文将数据处理结果反馈给mqtt发布者角;
[0067]
所述mqtt broker角在具备现有mqtt通讯协议的基础功能(接收来自客户端的网络连接,并处理客户端的消息订阅和消息发布请求,同时把mqtt发布者发布的消息转发给消息订阅客户端)外,新增数据处理模块,所述数据处理模块用于实现脏数据过滤、数据转换和反馈功能;
[0068]
在mqtt broker底层实现代码中新增数据处理包,采用模块化整合的处理方式,用户导入数据处理配置文件;mqtt broker角根据用户配置的数据处理文件决定是否开启相关数据处理(脏数据过滤、数据转换)功能;若不开启数据处理功能,则为现有mqtt通讯协议;若开启数据处理功能,则自定义配置脏数据过滤规则及相应数据转换规则;
[0069]
mqtt broker角在完成数据处理后,利用mqtt的数据转发功能,将处理后的数据转发给mqtt订阅者角;同时通过新增反馈报文feedback将数据处理的结果反馈给mqtt发布者角,mqtt发布者角收到反馈信息后对脏数据进行调整,并重新进行数据上报。
[0070]
所述反馈报文feedback参照publish报文的构成,包括固定报文头部和有效载荷;具体数值采用表3mqtt通讯协议中现有的控制报文中预留字段(reserved):15,则反馈报文
feedback的报文展示为:f0+剩余长度+有效载荷;同时对现有的发布报文publish新增一个标志位:决定发布者是否接收反馈报文(修改后发布报文格式:固定报头+是否接收反馈标志+有效负荷)。
[0071]
所述mqtt发布者角,部署在mqtt客户端,为物联网中具备特定功能的路由器,其下连接智能边缘设备,如智能传感器、智能汽车、智能充电桩、智能光伏设备、智能厨具等;采集智能边缘设备相关数据,作为mqtt数据传输的原始数据进行上报;
[0072]
所述mqtt订阅者角部署在mqtt客户端,通过订阅与mqtt发布者约定的主题topic接收从mqtt broker转发的数据。
[0073]
mqtt broker转发的数据一般为物联网中某个系统的数据输入模块,其上连一些数据处理平台系统,如数字化能源管理平台等。
[0074]
包括如下步骤:
[0075]
步骤s01、mqtt客户端连接服务器
[0076]
安装mqtt客户端的发布者与mqtt broker建立网络连接后,发布connect报文请求与服务器建立连接;
[0077]
在同一个网络连接中,客户端只能发送一次connect报文,如果出现第二个connect报文,按照协议标准,服务器将第二个connect报文当作协议违规处理并断开客户端的连接;对于正常的连接请求,服务器必须产生应答报文connack,如果无法建立会话,服务器则在应答报文中报告对应的错误代码;
[0078]
在客户端与服务器成功建立连接后,为了维持连接,按照connect报文中keep alive设置的时间值t秒,每隔t秒客户端向服务器发送一个心跳请求报文pingreq;同样服务器端接收客户端心跳请求时回复一个心跳响应报文pingresp;
[0079]
步骤s02、mqtt订阅主题
[0080]
mqtt订阅者在安装mqtt客户端后,向服务器发送subscribe报文用于创建一个或多个订阅,subscribe报文中包含订阅主题及服务器向客户端发送应用消息所允许的最大服务质量qos等级:0、1或2;服务器端收到subscribe报文后,回复suback确认报文;同时在服务器中,记录每个客户关注的一个或者多个主题,当服务器收到这些主题的publish报文时,将分发应用消息到与之匹配的客户端;
[0081]
步骤s03、mqtt发布主题
[0082]
mqtt发布者在安装mqtt客户端后,向服务器发送publish报文用于数据上报,publish报文包含固定报文头、有效载荷(主题名称及上报数据集)和消息服务质量qos等级:0、1或2;根据消息服务质量等级与用户是否开启数据处理功能进行消息传输;
[0083]
步骤s04、mqtt主题转发
[0084]
首先在现有的mqtt服务器(broker)底层采用基础功能模块整合原有的功能,接收来自客户端的网络连接,并处理客户端的消息订阅和消息发布请求,同时把mqtt发布者发布的消息转发给消息订阅客户端,并新加入数据处理功能;
[0085]
步骤s05、当mqtt broker接收mqtt发布者上传的数据后,根据用户导入的数据处理配置文档,决定是否开启数据处理功能;
[0086]
若不开启数据处理功能,则为现有的mqtt通讯协议,按照publish报文中qos值进行相应的消息传输;
[0087]
步骤s06、若开启数据处理功能,则用户自定义配置数据处理规则,包括脏数据过滤规则和数据转换规则,并根据数据处理规则对从mqtt发布者接收的数据进行处理,调用mqtt通讯协议将正常数据转发到消息订阅客户端;
[0088]
步骤s07、mqtt取消订阅主题,安装mqtt客户端的订阅者向服务器发送unsubscribe报文,用于取消订阅主题;
[0089]
步骤s08、mqtt断开连接
[0090]
mqtt客户端(发布者/订阅者)向服务器发送disconnect报文,表示客户端正常断开连接。
[0091]
所述步骤s03中,若用户开启了数据处理功能,服务器根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过反馈报文feedback反馈给mqtt发布者;若接收到反馈标志位则发回反馈信息,否则不反馈。
[0092]
消息服务质量qos等级为0的publish控制报文进行消息传输的过程如下:
[0093]
i:如附图1所示,现有的mqtt通讯协议中针对qos0的publish报文;服务器不会发送响应,发布者也不会重试,它在发出这个消息的时候就立马将消息丢弃,这个消息可能送达一次也可能根本没送达;
[0094]
ii:如附图2所示,若用户开启了数据处理功能,服务器根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过feedback报文反馈给mqtt发布者。
[0095]
消息服务质量qos等级为1的publish控制报文进行消息传输的过程如下:
[0096]
i:如附图1所示,现有的mqtt通讯协议中针对qos1的publish报文;服务器会对该报文回复一个puback发布确认报文,mqtt发布者接收到服务器回复的puback发布确认报文后,才删除该消息
[0097]
ii:如附图2所示,若用户开启了数据处理功能,服务器在给出puback报文发布确认后,根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过feedback报文反馈给mqtt发布者。
[0098]
消息服务质量qos等级为2的publish控制报文进行消息传输的过程如下:
[0099]
i:如附图1所示,现有的mqtt通讯协议中针对qos2的publish报文;mqtt发布者在向服务器发送该publish报文之前,会在本地存储该消息;服务器在接收到publish报文后,会回复一下pubrec报文,表示已经收到该消息;mqtt发布者在接收到pubrec报文后,会发送一个pubrel释放报文,服务器接收到pubrel释放报文后,回复一个pubcom完成报文,mqtt发布者接收到完成报文pubcom后,才删除该消息表示本次发布行为结束。
[0100]
ii:如附图2所示,若用户开启了数据处理功能,mqtt发布者在向服务器发送publish报文之前在本地存储该消息;服务器在接收到publish报文后,通过回复pubrec报文表示已经收到该消息;mqtt发布者在接收到回复的pubrec报文后,发送一个pubrel释放报文;服务器接收到pubrel释放报文后,回复pubcom完成报文,mqtt发布者在接收到完成报文pubcom后删除该消息;服务器根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过feedback报文反馈给mqtt发布者。
[0101]
所述步骤s06中,首先,mqtt broker根据用户配置的脏数据过滤规则对从mqtt发布者接收的数据进行处理,将过滤出的脏数据反馈报文feedback方式通知mqtt发布者,提供信息反馈的功能;其次,针对过滤出的正常数据,根据用户配置的数据转换规则对其进行
数据转换;最后,调用mqtt通讯协议,将按照用户配置的数据转换规则转化的数据,转发到消息订阅客户端。
[0102]
所述unsubscribe报文中包含取消订阅的主题信息。
[0103]
实施例1:
[0104][0105]
修改后publish报文展示(16进制表示形式):
[0106]
mqtt控制报文类型:30
[0107]
剩余长度:12
[0108]
是否接收反馈标志(00表示接收,01表示不接受):00
[0109]
主题长度:00 04
[0110]
主题详细内容:74 65 73 74
[0111]
携带有效信息:68 65 6c 6c 6f 20 77 6f 72 6c 64
[0112]
整体报文:30 12 00 00 04 74 65 73 74 68 65 6c 6c 6f 20 77 6f 72 6c 64
[0113][0114][0115]
mqtt控制报文类型:f0
[0116]
剩余长度:11
[0117]
主题长度:00 04
[0118]
主题详细内容:74 65 73 74
[0119]
携带有效信息:68 65 6c 6c 6f 20 77 6f 72 6c 64
[0120]
整体报文:f0 11 00 04 74 65 73 74 68 65 6c 6c 6f 20 77 6f 72 6c 64
[0121]
该设备包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现上述的方法步骤。
[0122]
该可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法步骤。
[0123]
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

技术特征:


1.一种支持数据处理的mqtt通讯协议方法,其特征在于:mqtt broker角新增数据处理功能,并通过新增反馈控制报文将数据处理结果反馈给mqtt发布者角;所述mqtt broker角在具备现有mqtt通讯协议的基础功能外,新增数据处理模块,所述数据处理模块用于实现脏数据过滤、数据转换和反馈功能;在mqtt broker底层实现代码中新增数据处理包,采用模块化整合的处理方式,用户导入数据处理配置文件;mqtt broker角根据用户配置的数据处理文件决定是否开启相关数据处理功能;若不开启数据处理功能,则为现有mqtt通讯协议;若开启数据处理功能,则自定义配置脏数据过滤规则及相应数据转换规则;mqtt broker角在完成数据处理后,利用mqtt的数据转发功能,将处理后的数据转发给mqtt订阅者角;同时通过新增反馈报文feedback将数据处理的结果反馈给mqtt发布者角,mqtt发布者角收到反馈信息后对脏数据进行调整,并重新进行数据上报。2.根据权利要求1所述的支持数据处理的mqtt通讯协议方法,其特征在于:所述mqtt发布者角,部署在mqtt客户端,为物联网中路由器,其下连接智能边缘设备,采集智能边缘设备相关数据,作为mqtt数据传输的原始数据进行上报;所述mqtt订阅者角部署在mqtt客户端,通过订阅与mqtt发布者约定的主题topic接收从mqtt broker转发的数据。3.根据权利要求1所述的支持数据处理的mqtt通讯协议方法,其特征在于:所述反馈报文feedback的构成包括固定报文头部和有效载荷,报文展示为f0+剩余长度+有效载荷;同时新增一个反馈标志位,以决定发布者是否接收反馈报文。4.根据权利要求1~3任意一项所述的支持数据处理的mqtt通讯协议方法,其特征在于:包括如下步骤:步骤s01、mqtt客户端连接服务器安装mqtt客户端的发布者与mqtt broker建立网络连接后,发布connect报文请求与服务器建立连接;在同一个网络连接中,客户端只能发送一次connect报文,如果出现第二个connect报文,按照协议标准,服务器将第二个connect报文当作协议违规处理并断开客户端的连接;对于正常的连接请求,服务器必须产生应答报文connack,如果无法建立会话,服务器则在应答报文中报告对应的错误代码;在客户端与服务器成功建立连接后,为了维持连接,按照connect报文中keep alive设置的时间值t秒,每隔t秒客户端向服务器发送一个心跳请求报文pingreq;同样服务器端接收客户端心跳请求时回复一个心跳响应报文pingresp;步骤s02、mqtt订阅主题mqtt订阅者在安装mqtt客户端后,向服务器发送subscribe报文用于创建一个或多个订阅,subscribe报文中包含订阅主题及服务器向客户端发送应用消息所允许的最大服务质量qos等级:0、1或2;服务器端收到subscribe报文后,回复suback确认报文;同时在服务器中,记录每个客户关注的一个或者多个主题,当服务器收到这些主题的publish报文时,将分发应用消息到与之匹配的客户端;步骤s03、mqtt发布主题mqtt发布者在安装mqtt客户端后,向服务器发送publish报文用于数据上报,publish
报文包含固定报文头、有效载荷和消息服务质量qos等级:0、1或2;根据消息服务质量等级与用户是否开启数据处理功能进行消息传输;步骤s04、mqtt主题转发首先在现有的mqtt服务器(broker)底层采用基础功能模块整合原有的功能,接收来自客户端的网络连接,并处理客户端的消息订阅和消息发布请求,同时把mqtt发布者发布的消息转发给消息订阅客户端,并新加入数据处理功能;步骤s05、当mqtt broker接收mqtt发布者上传的数据后,根据用户导入的数据处理配置文档,决定是否开启数据处理功能;若不开启数据处理功能,则为现有的mqtt通讯协议,按照publish报文中qos值进行相应的消息传输;步骤s06、若开启数据处理功能,则用户自定义配置数据处理规则,包括脏数据过滤规则和数据转换规则,并根据数据处理规则对从mqtt发布者接收的数据进行处理,调用mqtt通讯协议将正常数据转发到消息订阅客户端;步骤s07、mqtt取消订阅主题,安装mqtt客户端的订阅者向服务器发送unsubscribe报文,用于取消订阅主题;步骤s08、mqtt断开连接mqtt客户端向服务器发送disconnect报文,表示客户端正常断开连接。5.根据权利要求4所述的支持数据处理的mqtt通讯协议方法,其特征在于:所述步骤s03中,若用户开启了数据处理功能,服务器根据publish报文是否接收反馈标志位,决定是否将数据处理后的信息通过反馈报文feedback反馈给mqtt发布者;若接收到反馈标志位则发回反馈信息,否则不反馈。6.根据权利要求4所述的支持数据处理的mqtt通讯协议方法,其特征在于:所述步骤s06中,首先,mqtt broker根据用户配置的脏数据过滤规则对从mqtt发布者接收的数据进行处理,将过滤出的脏数据反馈报文feedback方式通知mqtt发布者,提供信息反馈的功能;其次,针对过滤出的正常数据,根据用户配置的数据转换规则对其进行数据转换;最后,调用mqtt通讯协议,将按照用户配置的数据转换规则转化的数据,转发到消息订阅客户端。7.根据权利要求4所述的支持数据处理的mqtt通讯协议方法,其特征在于:所述unsubscribe报文中包含取消订阅的主题信息。8.一种设备,其特征在于:包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现如权利要求1至7任意一项所述的方法步骤。9.一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的方法步骤。

技术总结


本发明特别涉及一种支持数据处理的MQTT通讯协议方法、设备和存储装置。该支持数据处理的MQTT通讯协议方法、设备和存储装置,MQTT Broker角新增数据处理模块,并通过新增反馈控制报文将数据处理结果反馈给MQTT发布者角;所述数据处理模块用于实现脏数据过滤、数据转换和反馈功能;MQTT发布者角收到反馈信息后对脏数据进行调整,并重新进行数据上报。该支持数据处理的MQTT通讯协议方法、设备和存储装置,不仅能够避免每个MQTT订阅者做重复的数据处理工作,还能避免脏数据在整个MQTT传输过程的时间消耗,将脏数据及时反馈给发布者,从而能够有效满足用户的个性化MQTT应用场景需求。需求。需求。


技术研发人员:

王中明 金伟毅 郭春杰 陈洪鑫 李胜

受保护的技术使用者:

苏州思萃工业互联网技术研究所有限公司

技术研发日:

2022.09.28

技术公布日:

2023/1/17


文章投稿或转载声明

本文链接:http://www.wtabcd.cn/zhuanli/patent-1-84207-0.html

来源:专利查询检索下载-实用文体写作网版权所有,转载请保留出处。本站文章发布于 2023-01-28 09:06:56

发表评论

验证码:
用户名: 密码: 匿名发表
评论列表 (有 条评论
2人围观
参与讨论