CN116684939A - 消息处理方法、装置、计算机设备和计算机可读存储介质 - Google Patents
消息处理方法、装置、计算机设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN116684939A CN116684939A CN202310962137.4A CN202310962137A CN116684939A CN 116684939 A CN116684939 A CN 116684939A CN 202310962137 A CN202310962137 A CN 202310962137A CN 116684939 A CN116684939 A CN 116684939A
- Authority
- CN
- China
- Prior art keywords
- message
- target
- equipment
- current level
- target message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 16
- 238000004891 communication Methods 0.000 claims abstract description 162
- 238000000034 method Methods 0.000 claims abstract description 39
- 238000004458 analytical method Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000004590 computer program Methods 0.000 claims description 24
- 230000000644 propagated effect Effects 0.000 claims description 11
- 239000003795 chemical substances by application Substances 0.000 description 25
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000004044 response Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001902 propagating effect Effects 0.000 description 3
- 208000033748 Device issues Diseases 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/246—Connectivity information discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种消息处理方法、装置、计算机设备和计算机可读存储介质。方法包括:将近域多跳网络中本级设备的消息通信代理与下级设备的消息通信客户端建立直接连接,并通过下级设备的消息通信客户端向本级设备的消息通信代理订阅主题;通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;通过目标设备解析目标消息,得到目标消息的解析结果;解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。采用本方法能够提高近域多跳网络中消息处理的效率。
Description
技术领域
本申请涉及通信技术领域,特别是涉及消息处理方法、装置、计算机设备和计算机可读存储介质。
背景技术
随着通信技术的发展,出现了多跳组网技术,通过无线设备已有的无线通讯方式组建多跳网络,以解决无线设备在无线网络覆盖薄弱或无覆盖场景下的通信问题。
目前,尽管近域多跳网络内的设备具备访问互联网的功能,但在近域多跳网络内,设备间的通信面临诸多挑战。近域多跳网络内的设备间消息通信仍然是一个亟需解决的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高效率的消息处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种消息处理方法。方法包括:
将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,并通过下级设备的消息通信客户端向本级设备的消息通信代理订阅至少一个主题;
通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;
通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;
通过目标设备解析目标消息,得到目标消息的解析结果;
其中,解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。
在一些实施例中,至少一个主题包括第一主题和第二主题;下级设备订阅的第一主题包括本级设备订阅的第二主题;
通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,包括:
在目标消息中的消息类型信息表征树播类型的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备订阅的第二主题;
通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端,包括:
通过本级设备的消息通信代理将目标消息发送至本级设备的下级设备的消息通信客户端。
在一些实施例中,不同的下级设备订阅的第一主题不同;通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题,包括:
在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的下级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为目的设备订阅的第一主题;
通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端,包括:
通过本级设备的消息通信代理将目标消息发送至目的设备的消息通信客户端。
在一些实施例中,通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题,包括:
在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的情况下,通过本级设备处理目标消息并停止继续发布目标消息;
在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备为本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
在一些实施例中,方法还包括:
在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备并非本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;其中,近域多跳网络中不存在订阅第三主题的设备;
通过本级设备的消息通信客户端将目标消息发送至本级设备的上级设备的消息通信代理。
在一些实施例中,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题,包括:
在近域多跳网络中存在本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;
在近域多跳网络中不存在本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
在一些实施例中,目标消息包括消息类型信息、源节点信息、目的节点信息和目标消息内容;源节点信息,用于表征首个发布目标消息的源节点设备;目的节点信息,用于表征目标消息传播至的目的设备;
其中,消息类型信息为树播消息类型信息和单播消息类型信息中的任意一种;树播消息类型信息,用于指示从源节点设备起对目标消息进行树状传播直至将目标消息传播至近域多跳网络的叶本级设备;单播消息类型信息,用于指示将目标消息从源节点设备传播至目的设备。
第二方面,本申请还提供了一种消息处理装置。装置包括:
组建模块,用于将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,并通过下级设备的消息通信客户端向本级设备的消息通信代理订阅至少一个主题;
发布模块,用于通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;
发送模块,用于通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;
解析模块,用于通过目标设备解析目标消息,得到目标消息的解析结果;其中,解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。
第三方面,本申请还提供了一种计算机设备。计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述的方法中的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法中的步骤。
第五方面,本申请还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法中的步骤。
上述消息处理方法、装置、计算机设备、存储介质和计算机程序产品,将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,实现近域多跳网络中各节点设备之间的级联。通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;消息类型信息用于指示目标消息的传播范围;通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;通过发布/订阅的模式实现近域多跳网络内的多级消息处理,将目标消息准确地传播至订阅了相应主题的目标设备。进而,通过目标设备解析目标消息,得到目标消息的解析结果;解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息,能够灵活有效地控制目标消息的传播范围,提高了消息处理的效率。
附图说明
图1为本申请实施例提供的一种消息处理方法的应用环境图;
图2为本申请实施例提供的一种消息处理方法的流程示意图;
图3为本申请实施例提供的一种组建近域多跳网络的时序图;
图4为本申请实施例提供的一种近域多跳网络中传播树播消息的时序图;
图5为本申请实施例提供的一种近域多跳网络中传播单播消息的时序图;
图6为本申请实施例提供的一种消息处理装置的结构框图;
图7为本申请实施例提供的一种计算机设备的内部结构图;
图8为本申请实施例提供的另一种计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的消息处理方法,可以应用于如图1所示的应用环境中。其中,本级设备102分别与下级设备104和上级设备106通过近域多跳网络进行通信。近域多跳网络中本级设备102的消息通信代理与下级设备104的消息通信客户端建立直接连接。通过下级设备104的消息通信客户端向本级设备102的消息通信代理订阅至少一个主题;通过本级设备102确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;通过本级设备102的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;可以理解,目标设备可以为下级设备104或上级设备106中的任意一种。通过目标设备解析目标消息,得到目标消息的解析结果;其中,解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。
其中,近域多跳网络中的任意节点设备可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。近域多跳网络中的任意节点设备也可以是服务器,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种消息处理方法,以该方法应用于近域多跳网络中的多个节点设备为例进行说明,包括以下步骤:
S202,将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,并通过下级设备的消息通信客户端向本级设备的消息通信代理订阅至少一个主题。
其中,近域多跳网络是一种无线网状网络,由一组相互连接的节点设备组成,这些节点设备通过无线链路进行通信,并使用多跳路由来传输数据。近域多跳网络一般用于城市或园区的小规模局部网络,例如智能家居或智能办公室。近域多跳网络可以用于Wi-Fi覆盖面不足或局部无法接入Wi-Fi的情况下,提供局部网络覆盖,支持节点设备之间的即时通信和数据传输。近域多跳网络中的根节点设备是有网络覆盖的设备,而子节点设备和叶节点设备是无网络覆盖的设备。主题可以被理解为消息的标识符,用于作为消息通信代理转发消息的依据。消息通信代理会将消息通信客户端订阅主题下的所有消息转发至该消息通信客户端。消息通信客户端用于发布和订阅消息。消息通信代理用于接收和转发消息,以便消息通信客户端之间进行通信。本级设备的下级设备是指与本级设备相邻的下一级的节点设备。本级设备的上级设备是指与本级设备相邻的上一级的节点设备。
示例性地,在至少两个节点设备组建近域多跳网络的过程中,每个节点设备可以作为本级设备并启动自身的消息通信客户端,之后连接本级设备的上级设备的消息通信代理。本级设备的下级设备启动自身的消息通信客户端并连接本级设备的消息通信代理。
可以理解,近域多跳网络中本级设备的消息通信客户端和消息通信代理之间互相连接,本级设备的消息通信代理与本级设备的下级设备的消息通信客户端互相连接,本级设备的消息通信客户端与本级设备的上级设备的消息通信代理互相连接,从而实现级联。
下级设备的消息通信客户端可以向本级设备的消息通信代理订阅至少一个主题。本级设备的消息通信客户端可以向上级设备的消息通信代理订阅至少一个主题。本级设备订阅的第一主题与上级设备订阅的第二主题之间存在交集,以及本级设备订阅的第二主题与下级设备订阅的第一主题之间也存在交集,并且同级的各设备订阅的第二主题不同。这些重叠的订阅主题是实现近域多跳网络中多级节点设备之间消息的树播提供了基础,同级的各设备订阅的不同第二主题为消息的正向单播提供了基础。
在一些实施例中,在多个节点设备组建近域多跳网络的过程中,本级设备在建组后启动本端的消息通信代理,开始监听。在下级设备与本级设备建立点对点连接后,下级设备启动自身的消息通信客户端并连接本级设备的消息通信代理。
在一些实施例中,节点设备可以为终端。近域多跳网络内每台终端同时作为MQTT代理和MQTT 客户端,本级终端以MQTT 客户端的身份与上级终端MQTT 代理连接,以MQTT代理的身份允许下级终端MQTT 客户端接入,从而实现级联。其中,MQTT(Message QueuingTelemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议, MQTT 客户端通过MQTT 代理彼此通信。
需要说明是,MQTT协议并没有内置多跳网络的功能,因此需要依赖专用的传输层来实现多跳网络,专用的传输层可以为ZigBee或Thread等。而本申请提供的实施例中,将近域多跳网络中本级设备同时作为代理和客户端,以及将本级设备的代理与下级设备的客户端相连接,进而基于上述的连接方式和发布/订阅主题的模式在近域多跳网络中灵活地进行消息的传递。
在一些实施例中,如图3所示,提供了组建近域多跳网络的时序图。
1、有网络覆盖的设备设置虚拟互联网协议地址,启动虚拟专用网服务。
2、有网络覆盖的设备建组。
3、有网络覆盖的设备启动消息通信代理,开始监听。
4、无网络覆盖的设备1完成无线直连设备发现。
其中,无线直连是指Wi-Fi Direct。
5、无网络覆盖的设备1发起服务发现请求。
6、有网络覆盖的设备向无网络覆盖的设备1发送服务发现响应,携带虚拟互联网协议地址。
7、无网络覆盖的设备1收到响应,完成连接。
其中,无网络覆盖的设备1完成连接时,作为近域多跳网络的子节点设备。
8、无网络覆盖的设备1设置虚拟互联网协议地址,设置代理地址,启动虚拟专用网服务。
9、无网络覆盖的设备1启动消息通信客户端,连接上级设备的消息通信代理。
10、无网络覆盖的设备1向上级设备订阅主题。
11、无网络覆盖的设备1建组。
12、无网络覆盖的设备1启动消息通信代理,开始监听。
13、无网络覆盖的设备2完成无线直连设备发现。
14、无网络覆盖的设备2发起服务发现请求。
15、无网络覆盖的设备1向无网络覆盖的设备2发送服务发现响应,携带虚拟互联网协议地址。
16、无网络覆盖的设备2收到响应,完成连接。
其中,无网络覆盖的设备2完成连接时作为近域多跳网络中的子节点设备。
17、无网络覆盖的设备2设置虚拟互联网协议地址,设置代理地址,启动虚拟专用网服务。
18、无网络覆盖的设备2启动消息通信客户端,连接上级设备的消息通信代理。
19、无网络覆盖的设备2向上级设备订阅主题。
20、无网络覆盖的设备2建组。
21、无网络覆盖的设备2启动消息通信代理,开始监听。
22、无网络覆盖的设备3完成无线直连设备发现。
23、无网络覆盖的设备3发起服务发现请求。
24、无网络覆盖的设备2向无网络覆盖的设备3发送服务发现响应,携带虚拟互联网协议地址。
25、无网络覆盖的设备3收到响应,完成连接。
其中,无网络覆盖的设备3完成连接时作为近域多跳网络中的叶节点设备。
26、无网络覆盖的设备3设置虚拟互联网协议地址,设置代理地址,启动虚拟专用网服务。
27、无网络覆盖的设备3启动消息通信客户端,连接上级设备的消息通信代理。
28、无网络覆盖的设备3向上级设备订阅主题。
其中,有网络覆盖的设备、无网络覆盖的设备1、无网络覆盖的设备2和无网络覆盖的设备3依次为上下级的关系。比如,网络覆盖的设备2的上级设备为无网络覆盖的设备1,下级设备为无网络覆盖的设备3。
S204,通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题。
其中,消息类型信息用于指示目标消息的传播范围。
示例性地,通过本级设备的消息通信代理或消息通信客户端中的至少一种确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题。
在一些实施例中,源节点设备可以通过消息通信客户端创建目标消息以及指定目标消息的目标主题,并通过源节点设备的消息通信代理将目标消息发布到目标主题。可以理解,消息通信客户端可以是消息的发布者,负责创建和发布消息。消息生成后被消息通信客户端发送到消息通信代理,消息通信代理接收到消息后,根据订阅规则将消息传递给订阅者。
在一些实施例中,目标消息是按照预设消息结构生成的。预设消息结构用于指示消息中消息头和消息体。
在一些实施例中,本级设备的消息通信代理与本级设备的消息通信客户端以及下级设备的消息通信客户端直接通信,故而本级设备的消息通信代理可以获取自身或下级设备的消息通信客户端发送的携带相应主题的目标消息,进而本级设备的消息通信代理可以将目标消息发布至相应主题。
在一些实施例中,消息头可以包括消息类型字段、源节点字段或目的节点字段等中的至少一种消息属性字段。可以理解,消息类型字段下的字段值为消息类型信息。源节点字段下的字段值为源节点信息。目的节点字段下的字段值为目的节点信息。
在一些实施例中,本级设备可以获取与目标消息的消息类型信息相匹配的目标主题。近域多跳网络中本级设备的下级设备的第一主题包括节点设备的第二主题。在消息类型信息为树播消息类型信息时,目标消息为树播消息,本级设备可以将自身订阅的第二主题作为目标主题。
在一些实施例中,在消息类型信息为单播类型信息时,目标消息为单播消息。在目标消息的目的设备处于本级设备的下级时,本级设备的消息通信代理可以将目的设备的第二主题作为目标主题。在目标消息的目的设备未处于节点设备的下级时,节点设备的消息通信代理可以将节点设备对应的第三主题作为目标主题。
在一些实施例中,第三主题用于指示通过节点设备的消息通信客户端将目标消息发送至上级设备的消息通信代理。可以理解,本级设备订阅的至少一个主题中不包括第三主题。将目标消息发布到本级设备对应的第三主题可以实现本级设备无法继续向下传播目标消息时,通过向上级发布的方式,由上级设备再向上或向下发布以将目标消息传播至目的设备。近域多跳网络中每个节点设备无需订阅第三主题。
在一些实施例中,近域多跳网络中不存在订阅任意第三主题的节点设备,故而本级设备在接收到携带任意第三主题的单播消息时,无需将该单播消息携带的第三主题修改为本级设备对应的第三主题。即,对于反向传播的单播消息来说,从源节点设备至目的设备,该单播消息携带的主题可以一直是源节点设备对应的第三主题。
S206,通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端。
示例性地,本级设备的消息通信代理可以确定订阅了目标主题的目标设备,并将目标消息发送至目标设备的通信消息客户端。
在一些实施例中,本级设备的消息通信代理可以将自身已发布的目标消息传播至订阅目标主题的下级设备的通信消息客户端。
S208,通过目标设备解析目标消息,得到目标消息的解析结果;其中,解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。
示例性地,目标设备的消息通信客户端可以依据预设消息结构解析目标消息的消息头,确定消息类型字段下的消息类型信息、源节点字段下的源节点信息以及目的节点字段下的目的节点信息,得到下级解析结果。
在一些实施例中,目标设备可以作为本级设备,执行通过本级设备确定与目标消息中的消息类型信息匹配的目标主题及后续步骤。可以理解,收到目标消息的任意节点设备都可以作为本级设备以进一步处理或传播目标消息。
在一些实施例中,在解析到的消息类型信息表征树播类型的情况下,目标设备的消息通信客户端可以解析目标消息的消息体,得到目标消息的消息内容。消息体是指消息的具体内容。目标设备可以按照执行与消息内容相匹配的操作。比如,消息内容用于指示目标设备断开与目标设备的上级设备间的连接,则目标设备可以按照消息内容的指示断开与自身的上级设备的连接。
在一些实施例中,在解析到的消息类型信息表征单播类型、且解析到的目的节点信息表征的目的设备为自身的情况下,目标设备的消息通信客户端可以解析目标消息的消息体,得到目标消息的消息内容,并执行相应的操作。此时,目标消息已经传播至目的地,目标设备无需再对目标消息进行发布。
上述消息处理方法中,将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,实现近域多跳网络中各节点设备之间的级联。通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;消息类型信息用于指示目标消息的传播范围;通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;通过发布/订阅的模式实现近域多跳网络内的多级消息处理,将目标消息准确地传播至订阅了相应主题的目标设备。进而,通过目标设备解析目标消息,得到目标消息的解析结果;解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息,能够灵活有效地控制目标消息的传播范围,提高了消息处理的效率。
在一些实施例中,至少一个主题包括第一主题和第二主题;下级设备订阅的第一主题包括本级设备订阅的第二主题;通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,包括:在目标消息中的消息类型信息表征树播类型的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备订阅的第二主题;通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端,包括:通过本级设备的消息通信代理将目标消息发送至本级设备的下级设备的消息通信客户端。
在一些实施例中,近域多跳网络中每个节点设备被分配有唯一的设备标识。本级设备订阅的第一主题可以为本级设备的上级设备标识。可以理解,本级设备可以接收主题为本级设备的上级设备标识的消息。本级设备订阅的第二主题可以为本级设备的本端设备标识,即,本级设备自身的设备标识。本级设备可以接收主题为本级设备的本端设备标识的消息。
在目标设备解析到的消息类型信息表征树播类型的情况下,目标设备可以作为本级设备,通过本级设备的消息通信代理将目标消息发布至本级设备订阅的第二主题,并通过本级设备的消息通信代理将目标消息发送至本级设备的下级设备的消息通信客户端。可以理解,通过多级的节点设备不断的发布目标消息直至将目标消息传播至叶节点设备,实现了目标消息的树状传播。其中,叶节点设备不具有下级设备。
在一些实施例中,树播消息的传播范围为从首个发布树播消息的源节点设备起的后续所有更下级的节点设备。在树播消息的传播过程中,将源节点设备作为本级设备,通过本级设备的通信网络代理将目标消息发布至本级设备订阅的第二主题,本级设备的通信网络代理可以将已发布的目标消息发送至订阅了本级设备的第二主题的下级设备,继续将下级设备作为本级设备,并返回通过本级设备的通信网络代理将目标消息发布至本级设备的第二主题的步骤继续执行,直至目标消息被传播至叶节点设备,停止树播消息的发布。可以理解,对于每个接收到树播消息的节点设备都可以解析树播消息的消息体,依据解析到的消息内容执行相应的操作,以实现对树播消息的处理。
在一些实施例中,消息通信客户端可以将携带主题的目标消息发送至消息通信代理,由消息通信代理将目标消息发布至相应主题。
在一些实施例中,节点设备的通信网络代理可以无需与通信网络客户端交互,直接发布目标消息。
在一些实施例中,如图4所示,提供了近域多跳网络中传播树播消息的时序图。子节点设备1为子节点设备2的上级设备,子节点设备3为子节点设备2的下级设备。
1、子节点设备1的消息通信代理向子节点设备1的本端设备标识发布树播消息。
2、子节点设备1的消息通信代理向子节点设备2的消息通信客户端发送树播消息。
3、子节点设备2的消息通信客户端解析接收到的消息为树播消息。
4、子节点设备2的消息通信客户端通知本端的消息通信代理发布树播消息。
5、子节点设备2的消息通信代理将树播消息发布至子节点设备2的本端设备标识。
6、子节点设备2的消息通信代理向子节点设备3的消息通信客户端发送树播消息。
7、子节点设备2的消息通信客户端处理接收到的消息。
8、子节点设备3的消息通信客户端解析并处理接收到的消息。
本实施例中,在目标消息中的消息类型信息表征树播类型的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备订阅的第二主题,而近域多跳网络中本级设备的下级设备的第一主题包括本级设备的第二主题,即,对于树播消息来说,通过多级的节点设备不断的发布,实现消息的树状传播,将目标消息准确地在源节点设备至叶节点设备的范围内进行传播,实现了对消息传播范围的有效控制。
在一些实施例中,不同的下级设备订阅的第一主题不同;通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题,包括:在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的下级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为目的设备订阅的第一主题;通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端,包括:通过本级设备的消息通信代理将目标消息发送至目的设备的消息通信客户端。
示例性地,本级设备可以确定目标消息中的消息类型信息和目的节点信息。在目标消息中的消息类型信息表征单播类型的情况下,说明目标消息是单播消息。只需将单播消息传播至目的设备即可停止继续发布。故而在单播消息中的目的节点信息表征目的设备处于本级设备的下级的情况下,本级设备的消息通信代理可以将单播消息发布至目的设备订阅的第一主题。
可以理解,目的设备订阅的第二主题是本级设备的所有下级设备都订阅的主题,而目的设备订阅的第一主题区别于本级设备的其他下级设备订阅的主题,故而将单播消息发布到目的设备订阅的第一主题,能够准确地将目标消息单播至目的设备,保证对目标消息传播范围的有效控制。
本实施例中,在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的下级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为目的设备订阅的第一主题,通过本级设备的消息通信代理将目标消息发送至目的设备的消息通信客户端,能够准确地将目标消息单播至目的设备,保证对目标消息传播范围的有效控制。
在一些实施例中,通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题,包括:在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的情况下,通过本级设备处理目标消息并停止继续发布目标消息;在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备为本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
示例性地,在目标消息为单播消息、且目标消息的目的设备为本级设备的情况下,本级设备可以解析目标消息的消息体,并依据解析到的消息内容执行相应的操作。在目标消息为单播消息、目标消息的目的设备并非本级设备、且目标消息的源节点设备为本级设备的上级设备的情况下,本级设备可以丢弃该消息。
本实施例中,在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的情况下,通过本级设备处理目标消息并停止继续发布目标消息,避免目标消息的继续传播,有效地保证消息的安全以及控制消息传播范围;在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备为本级设备的上级设备的情况下,通过本级设备丢弃目标消息,能够避免无效消息浪费计算资源的问题。
在一些实施例中,方法还包括:在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备并非本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;其中,近域多跳网络中不存在订阅第三主题的节点设备;通过本级设备的消息通信客户端将目标消息发送至本级设备的上级设备的消息通信代理。
示例性地,本级设备对应的第三主题是基于本级设备的第一主题和第二主题确定的。在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备并非本级设备的上级设备时,代表目标消息需要反向单播至目的设备,故而通过本级设备的消息通信代理将目标消息待发布至本级设备对应的第三主题或源节点设备对应的第三主题。通过本级设备的消息通信客户端将目标消息发送至本级设备的上级设备的消息通信代理,将上级设备作为本级设备并执行通过本级设备确定与目标消息中的消息类型信息匹配的目标主题及后续步骤,直至将目标消息传播至目标消息的目的节点信息表征的目的设备,从而实现目标消息的反向单播。
在一些实施例中,本级设备对应的第三主题可以由本级设备订阅的第一主题和第二主题构成。比如,第三主题可以是上级设备标识-本端设备标识。
在一些实施例中,如图5所示,提供了近域多跳网络中传播单播消息的时序图。子节点设备6为子节点设备5的下级设备,子节点设备4为子节点设备5的上级设备。
1a、若单播消息的目的设备为子节点设备6,子节点设备5的消息通信代理向目的设备标识发布该单播消息。
其中,子节点设备5可以是该单播消息的源节点设备。
2a、子节点设备5的消息通信代理向子节点设备6发送单播消息。
可以理解,在未达到1a中的条件时,执行1b及后续步骤。
1b、若单播消息的目的设备未处于子节点设备5的下级,子节点设备5的消息通信客户端可以向子节点设备4的消息通信代理发送携带子节点设备5对应的第三主题的单播消息。
2b、子节点设备4的消息通信代理解析接收到的消息为单播消息。
3b、若解析到单播消息的目的设备标识为子节点设备4的标识,则处理该单播消息。
3c、若解析到单播消息的目的设备标识并非子节点设备4的设备标识,通知本端的消息通信客户端发送携带子节点设备5对应的第三主题的单播消息。
4c、子节点设备4的消息通信客户端向子节点设备4的上级设备发送单播消息。
本实施例中,在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备并非本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;通过本级设备的消息通信客户端将目标消息发送至本级设备的上级设备的消息通信代理,能够将目标消息反向单播至目的设备,有效地控制目标消息的传输范围。
在一些实施例中,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题,包括:在近域多跳网络中存在本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;在近域多跳网络中不存在本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
可以理解,在近域多跳网络中不存在本级设备的上级设备的情况下,代表无法继续实现目标消息的反向单播,故而本级设备可以丢弃该目标消息。而在近域多跳网络中存在本级设备的上级设备的情况下,可以继续实现目标消息的反向单播,故而本级设备可以将目标消息发布到本级设备对应的第三主题,实现目标消息反向单播至目的设备。
本实施例中,在近域多跳网络中存在本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;在近域多跳网络中不存在本级设备的上级设备的情况下,通过本级设备丢弃目标消息,能够有效地控制目标消息的传播范围。
在一些实施例中,目标消息包括消息类型信息、源节点信息、目的节点信息和目标消息内容;源节点信息,用于表征首个发布目标消息的源节点设备;目的节点信息,用于表征目标消息传播至的目的设备;其中,消息类型信息为树播消息类型信息和单播消息类型信息中的任意一种;树播消息类型信息,用于指示从源节点设备起对目标消息进行树状传播直至将目标消息传播至近域多跳网络的叶节点设备;单播消息类型信息,用于指示将目标消息从源节点设备传播至目的设备。
在一些实施例中,任意节点设备可以通过解析目标消息的消息头,从目标消息中获取出消息类型信息、源节点信息和目的节点信息。对于树播消息,接收到树播消息的节点设备可以解析树播消息的消息体得到消息内容。对于单播消息,只有单播消息的目的设备可以解析单播消息的消息体得到消息内容。
在一些实施例中,任意节点设备可以依据预设消息结构从目标消息中解析出消息类型信息、源节点信息、目的节点信息和目标消息内容。
在一些实施例中,表1示出了预设消息结构。
表1
其中,MsgType代表消息类型字段。srcUserId代表源节点字段。dstUserId代表目的节点字段。content代表消息体。
在一些实施例中表2示出了单播消息的数据结构。
表2
其中,UNICAST表征单播消息的消息类型信息。UserB表征单播消息的源节点信息。UserD表征单播消息的目的节点信息。xxx表征单播消息的消息内容。
对于单播消息的源节点设备:若目的节点信息为源节点设备的下级设备标识,源节点设备的消息通信代理向源节点设备的下级设备标识这一主题发布该单播消息。否则,使用源节点设备的消息通信代理向第三主题“上级设备标识-本端设备标识”发布该单播消息。
对于单播消息传播过程中的中间节点设备:若中间节点设备的消息通信客户端接收消息,解析消息头;若解析到目的节点信息为中间节点设备的本端设备标识,则解析消息体;否则,遗弃该单播消息。
若中间节点设备的消息通信代理接收消息,解析消息头;若解析到目的节点信息为中间节点设备的本端设备标识,则解析消息体;若解析到目的节点信息为中间节点设备的下级设备标识,向该下级设备标识这一主题发布该单播消息;否则,中间节点设备的消息通信代理通知本端的消息通信客户端向第三主题“上级设备标识-本端设备标识”发布该单播消息;若无上级终端,则遗弃该单播消息。
表3示出了树播消息的数据结构。
表3
其中,UNICAST表征树播消息的消息类型。UserA表征树播消息的源节点设备。xxx表征树播消息的消息内容。/表征树播消息不需要指定目的设备。
对于树播消息的源节点设备:源节点设备发布主题为本端设备标识的树播消息。对于树播消息传播过程中的中间节点设备:中间节点设备的消息通信客户端接收到树播消息,解析并处理该消息,通知本端的消息通信代理向本端设备标识这一主题发布该树播消息。
在一些实施例中,消息类型信息用于指示目标消息为树播消息还是单播消息。在消息类型信息为树播消息类型信息时,节点设备可以确定目标消息为树播消息。在消息类型信息为单播消息类型信息时,节点设备可以确定目标消息为单播消息。
本实施例中,目标消息包括消息类型信息、源节点信息、目的节点信息和目标消息内容;消息类型信息为树播消息类型信息和单播消息类型信息中的任意一种,目标消息结构的设置和消息类型的设置是在近域多跳网络中实现消息的正向单播、树播和反向单播的基础,能够实现对消息传播的有效控制。
可以理解,正向单播是指从处于上级的节点设备传播至处于下级的节点设备的单播。反向单播是指从处于下级的节点设备传播至处于上级的节点设备的单播。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的消息处理方法的消息处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个消息处理装置实施例中的具体限定可以参见上文中对于消息处理方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种消息处理装置600,包括:组建模块602、发布模块604、发送模块606和解析模块608,其中:
组建模块602,用于将近域多跳网络中本级设备的消息通信代理与本级设备的下级设备的消息通信客户端建立直接连接,并通过下级设备的消息通信客户端向本级设备的消息通信代理订阅至少一个主题;
发布模块604,用于通过本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将目标消息发布到目标主题;消息类型信息用于指示目标消息的传播范围;
发送模块606,用于通过本级设备的消息通信代理将目标消息发送至订阅目标主题的目标设备的消息通信客户端;
解析模块608,用于通过目标设备解析目标消息,得到目标消息的解析结果;其中,解析结果用于指示是否通过目标设备的消息通信客户端处理目标消息,以及是否通过目标设备的消息通信代理继续发布目标消息。
在一些实施例中,至少一个主题包括第一主题和第二主题;下级设备订阅的第一主题包括本级设备订阅的第二主题;发布模块604,用于在目标消息中的消息类型信息表征树播类型的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备订阅的第二主题;发送模块606,用于通过本级设备的消息通信代理将目标消息发送至本级设备的下级设备的消息通信客户端。
在一些实施例中,不同的下级设备订阅的第一主题不同;发布模块604,用于在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的下级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为目的设备订阅的第一主题;发送模块606,用于通过本级设备的消息通信代理将目标消息发送至目的设备的消息通信客户端
在一些实施例中,发布模块604,用于在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备为本级设备的情况下,通过本级设备处理目标消息并停止继续发布目标消息;在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备为本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
在一些实施例中,发布模块604,用于在目标消息中的消息类型信息表征单播类型、且目标消息中目的节点信息表征的目的设备并非本级设备、以及目标消息中的源节点信息表征的源节点设备并非本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;其中,近域多跳网络中不存在订阅第三主题的节点设备;通过本级设备的消息通信客户端将目标消息发送至本级设备的上级设备的消息通信代理。
在一些实施例中,发布模块604,用于在近域多跳网络中存在本级设备的上级设备的情况下,通过本级设备确定目标消息待发布至的目标主题为本级设备对应的第三主题;在近域多跳网络中不存在本级设备的上级设备的情况下,通过本级设备丢弃目标消息。
上述消息处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储节点设备标识。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种消息处理方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种消息处理方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7或图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric RandomAccess Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccessMemory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种消息处理方法,其特征在于,所述方法包括:
将近域多跳网络中本级设备的消息通信代理与所述本级设备的下级设备的消息通信客户端建立直接连接,并通过所述下级设备的消息通信客户端向所述本级设备的消息通信代理订阅至少一个主题;
通过所述本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将所述目标消息发布到所述目标主题;
通过所述本级设备的消息通信代理将所述目标消息发送至订阅所述目标主题的目标设备的消息通信客户端;
通过所述目标设备解析所述目标消息,得到所述目标消息的解析结果;
其中,所述解析结果用于指示是否通过所述目标设备的消息通信客户端处理所述目标消息,以及是否通过所述目标设备的消息通信代理继续发布所述目标消息。
2.根据权利要求1所述的方法,其特征在于,所述至少一个主题包括第一主题和第二主题;所述下级设备订阅的第一主题包括所述本级设备订阅的第二主题;
所述通过所述本级设备确定与目标消息中的消息类型信息匹配的目标主题,包括:
在所述目标消息中的消息类型信息表征树播类型的情况下,通过所述本级设备确定所述目标消息待发布至的目标主题为所述本级设备订阅的第二主题;
所述通过所述本级设备的消息通信代理将所述目标消息发送至订阅所述目标主题的目标设备的消息通信客户端,包括:
通过所述本级设备的消息通信代理将所述目标消息发送至所述本级设备的下级设备的消息通信客户端。
3.根据权利要求1所述的方法,其特征在于,不同的下级设备订阅的第一主题不同;所述通过所述本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将所述目标消息发布到所述目标主题,包括:
在所述目标消息中的消息类型信息表征单播类型、且所述目标消息中目的节点信息表征的目的设备为所述本级设备的下级设备的情况下,通过所述本级设备确定所述目标消息待发布至的目标主题为所述目的设备订阅的第一主题;
所述通过所述本级设备的消息通信代理将所述目标消息发送至订阅所述目标主题的目标设备的消息通信客户端,包括:
通过所述本级设备的消息通信代理将所述目标消息发送至所述目的设备的消息通信客户端。
4.根据权利要求1所述的方法,其特征在于,所述通过所述本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将所述目标消息发布到所述目标主题,包括:
在所述目标消息中的消息类型信息表征单播类型、且所述目标消息中目的节点信息表征的目的设备为所述本级设备的情况下,通过所述本级设备处理所述目标消息并停止继续发布所述目标消息;
在所述目标消息中的消息类型信息表征单播类型、且所述目标消息中目的节点信息表征的目的设备并非所述本级设备、以及所述目标消息中的源节点信息表征的源节点设备为所述本级设备的上级设备的情况下,通过所述本级设备丢弃所述目标消息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述目标消息中的消息类型信息表征单播类型、且所述目标消息中目的节点信息表征的目的设备并非所述本级设备、以及所述目标消息中的源节点信息表征的源节点设备并非所述本级设备的上级设备的情况下,通过所述本级设备确定所述目标消息待发布至的目标主题为所述本级设备对应的第三主题;其中,所述近域多跳网络中不存在订阅所述第三主题的节点设备;
通过所述本级设备的消息通信客户端将所述目标消息发送至所述本级设备的上级设备的消息通信代理。
6.根据权利要求5所述的方法,其特征在于,所述通过所述本级设备确定所述目标消息待发布至的目标主题为所述本级设备对应的第三主题,包括:
在所述近域多跳网络中存在所述本级设备的上级设备的情况下,通过所述本级设备确定所述目标消息待发布至的目标主题为所述本级设备对应的第三主题;
在所述近域多跳网络中不存在所述本级设备的上级设备的情况下,通过所述本级设备丢弃所述目标消息。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述目标消息包括消息类型信息、源节点信息、目的节点信息和目标消息内容;所述源节点信息,用于表征首个发布所述目标消息的源节点设备;所述目的节点信息,用于表征所述目标消息传播至的目的设备;
其中,所述消息类型信息为树播消息类型信息和单播消息类型信息中的任意一种;所述树播消息类型信息,用于指示从所述源节点设备起对所述目标消息进行树状传播直至将所述目标消息传播至所述近域多跳网络的叶节点设备;所述单播消息类型信息,用于指示将所述目标消息从所述源节点设备传播至所述目的设备。
8.一种消息处理装置,其特征在于,所述装置包括:
组建模块,用于将近域多跳网络中本级设备的消息通信代理与所述本级设备的下级设备的消息通信客户端建立直接连接,并通过所述下级设备的消息通信客户端向所述本级设备的消息通信代理订阅至少一个主题;
发布模块,用于通过所述本级设备确定与目标消息中的消息类型信息匹配的目标主题,并将所述目标消息发布到所述目标主题;
发送模块,用于通过所述本级设备的消息通信代理将所述目标消息发送至订阅所述目标主题的目标设备的消息通信客户端;
解析模块,用于通过所述目标设备解析所述目标消息,得到所述目标消息的解析结果;其中,所述解析结果用于指示是否通过所述目标设备的消息通信客户端处理所述目标消息,以及是否通过所述目标设备的消息通信代理继续发布所述目标消息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310962137.4A CN116684939B (zh) | 2023-08-02 | 2023-08-02 | 消息处理方法、装置、计算机设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310962137.4A CN116684939B (zh) | 2023-08-02 | 2023-08-02 | 消息处理方法、装置、计算机设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116684939A true CN116684939A (zh) | 2023-09-01 |
CN116684939B CN116684939B (zh) | 2023-11-07 |
Family
ID=87784058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310962137.4A Active CN116684939B (zh) | 2023-08-02 | 2023-08-02 | 消息处理方法、装置、计算机设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116684939B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180167476A1 (en) * | 2016-12-12 | 2018-06-14 | Sap Se | Meta broker for publish-subscribe-based messaging |
US20190173951A1 (en) * | 2017-12-01 | 2019-06-06 | GM Global Technology Operations LLC | Vehicle communication using publish-subscribe messaging protocol |
CN112789872A (zh) * | 2018-07-20 | 2021-05-11 | 施耐德电子系统美国股份有限公司 | 低能量工业无线仪器网络 |
CN113254233A (zh) * | 2021-06-07 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 一种数据传输方法、装置、设备及可读存储介质 |
CN115242805A (zh) * | 2022-06-11 | 2022-10-25 | 北京网聚云联科技有限公司 | 基于gossip的分布式MQTT消息传递方法、传递系统及存储介质 |
CN116264570A (zh) * | 2022-10-28 | 2023-06-16 | 中移(苏州)软件技术有限公司 | 基于mqtt协议的去中心化网络论坛通信方法及系统 |
-
2023
- 2023-08-02 CN CN202310962137.4A patent/CN116684939B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180167476A1 (en) * | 2016-12-12 | 2018-06-14 | Sap Se | Meta broker for publish-subscribe-based messaging |
US20190173951A1 (en) * | 2017-12-01 | 2019-06-06 | GM Global Technology Operations LLC | Vehicle communication using publish-subscribe messaging protocol |
CN112789872A (zh) * | 2018-07-20 | 2021-05-11 | 施耐德电子系统美国股份有限公司 | 低能量工业无线仪器网络 |
CN113254233A (zh) * | 2021-06-07 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 一种数据传输方法、装置、设备及可读存储介质 |
CN115242805A (zh) * | 2022-06-11 | 2022-10-25 | 北京网聚云联科技有限公司 | 基于gossip的分布式MQTT消息传递方法、传递系统及存储介质 |
CN116264570A (zh) * | 2022-10-28 | 2023-06-16 | 中移(苏州)软件技术有限公司 | 基于mqtt协议的去中心化网络论坛通信方法及系统 |
Non-Patent Citations (1)
Title |
---|
逯鹏等: "面向电子政务的发布订阅中间件设计与实现", 计算机工程, no. 09 * |
Also Published As
Publication number | Publication date |
---|---|
CN116684939B (zh) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10601947B2 (en) | Application service delivery through an application service avatar | |
US9578081B2 (en) | System and method for providing an actively invalidated client-side network resource cache | |
CN108141404A (zh) | 可扩展的实时消息传递系统 | |
CN107852428A (zh) | 可扩展的实时消息传递系统 | |
JP2006294009A (ja) | ピアツーピアメッセージングアプリケーションを構築するためのapi | |
US8903972B2 (en) | Method and apparatus for sharing contents using information of group change in content oriented network environment | |
CN108028796A (zh) | 可扩展的实时消息传递系统 | |
WO2014190118A1 (en) | Method, apparatus and computer program product providing performance and energy optimization for mobile computing | |
WO2019079971A1 (zh) | 群组的通信方法及装置、计算机存储介质、计算机设备 | |
Kim et al. | Cost modeling for analyzing network performance of IoT protocols in blockchain-based IoT | |
CN116684939B (zh) | 消息处理方法、装置、计算机设备和计算机可读存储介质 | |
CN112491935B (zh) | 一种用于区块链的水波式广播方法及系统 | |
WO2017173989A1 (zh) | 组播的分发处理方法、装置、系统及存储介质 | |
WO2017032110A1 (zh) | 一种应用消息的处理系统、方法及应用设备 | |
CN114422581A (zh) | 服务创建方法、装置、计算机设备和存储介质 | |
Lombera et al. | Peer-to-peer publication, search and retrieval using the Android mobile platform | |
CN109600431B (zh) | 面向移动通信网路的内容增量传输方法、移动通信系统 | |
EP3040931A1 (en) | Application service delivery through an application service avatar | |
US10785121B2 (en) | Device discovery using discovery nodes | |
CN111274042A (zh) | 一种fpga异构加速系统及其同步调度方法和相关设备 | |
CN111866759A (zh) | 群组通信方法及装置 | |
Ananthakrishnan et al. | Group based publisher-subscriber communication primitives for ndnSIM | |
CN113271229B (zh) | 设备控制方法及装置、存储设备、安全设备、交换机、路由器及服务器 | |
CN114827097B (zh) | 通信网络构建方法、装置及计算机设备 | |
Alves et al. | Radiator-efficient message propagation in context-aware systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20230901 Assignee: Tianyiyun Technology Co.,Ltd. Assignor: CHINA TELECOM Corp.,Ltd. Contract record no.: X2024110000020 Denomination of invention: Message processing methods, devices, computer equipment, and computer-readable storage media Granted publication date: 20231107 License type: Common License Record date: 20240315 |
|
EE01 | Entry into force of recordation of patent licensing contract |