The invention discloses a message filtering method, apparatus, equipment and storage medium, wherein the method comprises: receiving DDS message; judging DDS message types; if it is issued according to the preset message theme, theme strategy table topic filtering the DDS message; if the message data, according to the theme of strategy table and marking strategy table the relationship between DDS and the message publisher identification information, processing information in the DDS message theme strategy table to find the corresponding data processing, and data filtering of the DDS message according to the field data; theme strategy table and corresponding relation identification policy table for table index address storage strategy table theme theme publisher in the identification of identification information corresponding strategies in the table. According to the theme strategy table, the identification strategy table and the corresponding relationship between the two, the invention assists users in filtering DDS messages that satisfy the requirements of subject conditions or data fields, and satisfies users' diversified demand for publish and subscribe.
【技术实现步骤摘要】
报文过滤方法、装置、设备及存储介质
本专利技术实施例涉及报文处理技术,尤其涉及一种报文过滤方法、装置、设备及存储介质。
技术介绍
数据分发服务(DataDistributionService,DDS)用于在分布式应用程序的参与者之间分发数据,例如在发布/订阅模式下完成消息的发布与订阅。发布/订阅(Publish–Subscribe)是一种消息传播模式,消息的发送者(即发布者)不会将消息直接发送给特定的接收者(即订阅者),而是将发布的消息按特征分类,无需对订阅者有所了解;同样的,订阅者可以表达对一个或多个类别的兴趣,只接收感兴趣的消息,无需对发布者有所了解。在发布/订阅模型中,订阅者通常只接收所有发布消息的一个子集,由此涉及到消息的过滤,即对需要接收和处理的消息做出选择的过程。目前,较为通用的消息过滤方式是基于主题实现过滤。在基于主题的系统中,所有消息均被发布到“主题”(Topic),订阅者将收到其订阅的主题上的所有消息,而且同一主题的所有订阅者将接收到同样的消息;发布者负责定义订阅者可以订阅的消息类别。仅基于主题进行过滤,难以满足用户多样化的发布订阅需求,尤其是对消息内容的需求。另外,还存在基于订阅方ID实现过滤的方法,基于响应方ID和请求方ID进行消息过滤,确保响应方仅接收到以自己为目标的请求消息,以及确保请求方仅收到以自己为目标的响应消息。该方法仅能实现基于订阅方ID的过滤,同样难以满足用户多样化的发布订阅需求。
技术实现思路
本专利技术提供一种报文过滤方法、装置、设备及存储介质,能够基于主题和/或数据字段对DDS报文进行过滤,以满足用户多样化的发布订阅需 ...
【技术保护点】
一种报文过滤方法,其特征在于,包括:接收数据分发服务DDS报文;判断所述DDS报文的类型;如果所述DDS报文是发布主题报文,根据预设的主题策略表对所述DDS报文进行主题过滤;如果所述DDS报文是数据报文,根据所述主题策略表与标识策略表的对应关系以及所述DDS报文的发布者标识信息,在所述主题策略表中查找所述DDS报文对应的数据处理信息,并按照所述数据处理信息对所述DDS报文进行数据字段过滤;其中,所述主题策略表与所述标识策略表的对应关系为:所述主题策略表中主题的索引地址存储在所述标识策略表中发布者标识信息对应的表项中。
【技术特征摘要】
1.一种报文过滤方法,其特征在于,包括:接收数据分发服务DDS报文;判断所述DDS报文的类型;如果所述DDS报文是发布主题报文,根据预设的主题策略表对所述DDS报文进行主题过滤;如果所述DDS报文是数据报文,根据所述主题策略表与标识策略表的对应关系以及所述DDS报文的发布者标识信息,在所述主题策略表中查找所述DDS报文对应的数据处理信息,并按照所述数据处理信息对所述DDS报文进行数据字段过滤;其中,所述主题策略表与所述标识策略表的对应关系为:所述主题策略表中主题的索引地址存储在所述标识策略表中发布者标识信息对应的表项中。2.根据权利要求1所述的方法,其特征在于,根据预设的主题策略表对所述DDS报文进行主题过滤包括:在所述主题策略表中查找所述DDS报文的主题的匹配项;如果所述主题策略表中存在所述主题的匹配项,控制所述DDS报文通过;如果所述主题策略表中不存在所述主题的匹配项,按照第一默认动作处理所述DDS报文。3.根据权利要求1或2所述的方法,其特征在于,如果所述DDS报文是发布主题报文,所述方法还包括:将所述DDS报文的发布者标识信息和所述DDS报文的主题在所述主题策略表中的主题表索引地址写入所述标识策略表中的表项。4.根据权利要求3所述的方法,其特征在于,将所述DDS报文的发布者标识信息和所述DDS报文的主题在所述主题策略表中的主题表索引地址写入所述标识策略表中的表项,包括:记录所述DDS报文的主题的匹配项在所述主题策略表中的主题表索引地址;对所述DDS报文的发布者标识信息进行哈希运算,得到第一运算结果;在所述标识策略表中查找与所述第一运算结果相同的标识表索引地址,将所述发布者标识信息和所述主题表索引地址,写入所述标识策略表中所述标识表索引地址对应的表项,其中,所述发布者标识信息写入所述标识表索引地址对应表项中的标识项,所述主题表索引地址写入所述标识表索引地址对应表项中的索引项。5.根据权利要求1所述的方法,其特征在于,根据所述主题策略表与标识策略表的对应关系以及所述DDS报文的发布者标识信息,在所...
【专利技术属性】
技术研发人员:包鹏飞,
申请(专利权)人:北京东土军悦科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。