[发明专利]有序IOT消息流的高度可用传递在审
申请号: | 202210114160.3 | 申请日: | 2022-01-30 |
公开(公告)号: | CN115119077A | 公开(公告)日: | 2022-09-27 |
发明(设计)人: | 朱利叶斯·吕克特;海科·科齐奥勒克;斯滕·格鲁纳 | 申请(专利权)人: | ABB瑞士股份有限公司 |
主分类号: | H04Q9/00 | 分类号: | H04Q9/00;H04L1/22;H04L45/24;H04L45/247;H04L67/10;H04L67/12;H04L67/61;G06F9/54 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 李辉 |
地址: | 瑞士*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 有序 iot 消息 高度 可用 传递 | ||
本公开涉及有序IOT消息流的高度可用传递。公开了一种用于在第一容器中的第一软件应用与第二容器中的第二软件应用之间传送消息的方法,包括以下步骤:通过与第一容器相关联的第一连接性服务接收由第一应用发送的消息的有序序列;通过第一连接性服务将每个消息的至少两个副本传输给与第二容器相关联的第二连接性服务,其中至少两个副本在至少部分冗余路径上路由,并且其中每个副本指示原始消息在原始有序序列中的位置;以及通过第二连接性服务按照由原始有序序列给出的次序将每个消息的至少一个副本转发给第二应用。
技术领域
本发明涉及物联网IoT应用中的有序消息流的传递,例如控制和/或监测工业设备上执行的工业过程。
背景技术
工业应用越来越多地采用专门为物联网设计的面向消息的中间件。此类中间件(例如使用MQTT代理)可用于对经由互联网协议发送的工业设备进行数据流处理,从而有可能在运行时间期间提供生产优化。MQTT在本文档中用作针对面向消息的中间件的示例,同时可以使用其他示例(例如AMQP、DDS、XMPP、JMS)。
MQTT为消息传递指定不同服务质量(QoS)水平。然而,代理实施方式的行为差异很大,特别是在代理实例故障的情况下。存在旨在最小化代理实例故障的影响的集群多实例代理实施方式。实验示出针对QoS 1(至少一次传递)消息,大多数实验无法实现可靠且有序消息传递(没有消息丢失,没有消息重新排序)。针对依赖可靠和有序消息传递的应用,例如在线流处理应用,应用开发人员有两种选择:(1)依赖特定代理实施方式并且在密集测试后信任其机制;(2)将附加机制实施为应用逻辑的一部分以补偿消息丢失和重新排序(例如通过引入应用层消息序列号并实施重传和重新排序机制)。针对选项(1),应用开发人员还需要信任代理的可靠消息传递,例如在代理的软件更新之后。由于缺少针对此类基于中间件传递的端到端监测概念,因此这需要与代理供应方进行广泛和重复的测试或签订合同协议。另一方面,选项(2)使应用的实施方式更加复杂,并迅速导致应用和数据传递逻辑的非期望混合。
发明内容
本发明提供了一种用于在第一容器中的第一软件应用与第二容器中的第二软件应用之间传送消息的方法。本文中,术语“容器”包括其中可以运行应用的任何合适的虚拟化和/或间隔化执行环境。举例来说,可以使用Kubernetes框架中的容器和吊舱。
在所述方法的过程中,与第一容器相关联的第一连接性服务接收由第一应用发送的消息的有序序列。这个第一连接性服务将每个消息的至少两个副本传输给与第二容器相关联的第二连接性服务。至少两个副本在至少部分冗余路径上路由。这意味着在从第一连接性服务到第二连接性服务的旅程的至少一个路段和/或至少一个站点上,至少两个副本由不同硬件和/或软件实体处理和/或传输,使得这类实体的故障不会导致两个副本都丢失。
部分冗余路径不需要完全不相交。举例来说,所述路径可能使用相同网络接口和网络连接性,但随后使用不同代理IP地址和代理实例来传递冗余消息。在非常严格的设置中,使用了两个不同的网络接口和物理网络。
消息的每个副本指示原始消息在原始有序序列中的位置。这意味着即使不同消息的副本不按序列到达第二连接性服务,第二连接性服务仍然知道需要以什么次序将所述消息转发给第二应用。
第二连接性服务按照由原始有序序列给出的次序将每个消息的至少一个副本转发给第二应用。是否可以将同一消息的多个副本转发到第二应用取决于具体使用情况的期望QoS水平。
在QoS水平的MQTT命名法中,QoS水平1意味着消息的至少一个副本被转发。因此,在转发原始有序序列中稍后的下一新消息的副本之前,可以将一个消息的多个副本转发给第二应用。但是一旦已经转发了新消息的这个副本,则不再转发可能较晚到达第二连接性服务的前一消息的其他副本。可能适合以QoS水平1传递的数据的一个示例是来自传感器的测量值流。重要的是每个测量值到达第二应用,并且测量值以正确次序到达,使得第二应用可以对包含时间趋势的测量值做出反应。但如果测量值重复到达第二应用,则这不会妨碍第二应用的工作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ABB瑞士股份有限公司,未经ABB瑞士股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210114160.3/2.html,转载请声明来源钻瓜专利网。