跨组织环境下 MQTT 桥接架构的评估

news/2025/2/5 6:51:00/

论文标题

中文标题: 跨组织环境下 MQTT 桥接架构的评估
英文标题: Evaluation of MQTT Bridge Architectures in a Cross-Organizational Context

作者信息

Keila Lima, Tosin Daniel Oyetoyan, Rogardt Heldal, Wilhelm Hasselbring
Western Norway University of Applied Sciences, Norway
Email: {keila.lima, rogardt.heldal, tosin.daniel.oyetoyan}@hvl.no
Kiel University, Kiel, Germany
Email: hasselbring@email.uni-kiel.de

摘要

本文对物联网(IoT)平台中使用的 MQTT 桥接架构进行了初步研究,重点关注实时数据处理的基准配置选项。研究识别了系统组件部署中的相关 MQTT 可配置参数和指标,并以一个真实世界的 IoT 平台为基准,评估了在跨组织环境中数据传输的延迟和可靠性。研究结果表明,桥接组件的数量、MQTT 数据包大小和主题名称会对使用 MQTT 协议的 IoT 架构的质量属性产生影响。

1. 引言

随着 IoT 设备数量的快速增长(预计到 2025 年将达到 160 亿台),数据作为服务的提供方式变得越来越普遍。然而,这种跨组织的数据共享带来了互操作性和信任边界等问题。MQTT 协议作为一种轻量级的发布/订阅通信协议,被广泛应用于 IoT 系统中。本文研究了在跨组织环境中,MQTT 桥接架构的部署选项对延迟和可靠性的影响,并评估了主题名称和负载大小对性能的影响。

2. MQTT 在 IoT 架构中的角色

IoT 架构通常分为感知层、网络层、处理层、应用层和业务层。MQTT 协议因其轻量级和可靠性而被广泛应用于网络层。MQTT 采用发布/订阅模型,支持三种服务质量(QoS)级别:最多一次(QoS 0)、至少一次(QoS 1)和恰好一次(QoS 2)。本文还讨论了 MQTT 桥接架构的三种部署选项:单个代理、代理集群和代理桥接。

3. 方法论

本研究采用基准测试方法,评估了两种 MQTT 桥接架构部署选项(AUT 1 和 AUT 2)在跨组织环境下的延迟和可靠性。实验设置包括数据提供者、源代理、转换器(桥接组件)、目标代理和数据消费者。实验中考虑了不同的主题名称、QoS 级别和负载大小。实验使用真实传感器数据生成负载,并在不同的网络环境中进行测试。

 

4. 结果与讨论

实验结果显示,较小的负载大小(如 1.5 KB)在 QoS 0 级别下可以可靠传输,而较大的负载大小(如 35 KB 和 125 KB)则会遭受较高的消息丢失率。对于所有负载大小,QoS 1 和 QoS 2 级别在延迟和可靠性之间存在权衡。AUT 1 架构(每个数据提供者部署一个桥接组件)在延迟方面表现更好,而 AUT 2 架构(每个传感器中心部署一个桥接组件)在小负载大小下表现出更高的可靠性。此外,主题名称的长度对延迟有一定影响,但这种影响相对较小。

5. 有效性威胁

本文讨论了研究的构建有效性和可靠性。实验中使用了端到端延迟作为延迟指标,并通过在不同网络环境中部署客户端和代理来评估消息丢失情况。实验重复了 10 次以减少云基础设施和网络变化的影响。然而,由于实验仅考虑了有限的负载大小和部署选项,因此无法推广到其他配置。

6. 相关工作

本文回顾了其他关于 MQTT 性能评估的研究,这些研究主要关注 MQTT 代理的延迟、可扩展性和 QoS 级别。与以往研究不同,本文引入了主题名称长度作为基准参数,并使用真实传感器数据进行测试。此外,本文还讨论了网络局部性和负载大小对 MQTT 性能的影响。

7. 结论与未来工作

本文得出结论,MQTT 的负载大小和 QoS 级别对延迟和可靠性有显著影响。对于小负载大小,QoS 0 级别可以实现可靠传输,但对于大负载大小,应避免使用 QoS 0 级别。未来的研究可以进一步探索不同负载大小和网络条件下的 MQTT 性能,并考虑数据传输的能效作为质量属性。


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

相关文章

【Java】位图 布隆过滤器

位图 初识位图 位图, 实际上就是将二进制位作为哈希表的一个个哈希桶的数据结构, 由于二进制位只能表示 0 和 1, 因此通常用于表示数据是否存在. 如下图所示, 这个位图就用于标识 0 ~ 14 中有什么数字存在 可以看到, 我们这里相当于是把下标作为了 key-value 的一员. 但是这…

自动化软件测试的基本流程

一、自动化测试的准备 1.1 了解测试系统 首先对于需要测试的系统我们需要按照软件需求说明书明确软件功能。这里以智慧养老系统作为案例进行测试,先让我们看看该系统的登录界面和用户管理界面。 登录界面: 登录成功默认界面: 用户管理界面…

网站快速收录:如何优化网站音频内容?

本文转自:百万收录网 原文链接:https://www.baiwanshoulu.com/60.html 为了优化网站音频内容以实现快速收录,以下是一些关键的策略和步骤: 一、高质量音频内容创作 原创性: 确保音频内容是原创的,避免使…

前端力扣刷题 | 6:hot100之 矩阵

73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 法一: var setZeroes function(matrix) {let setX new Set(); // 用于存储需要置零的行索引let setY new Set(); //…

【hot100】刷题记录(8)-矩阵置零

题目描述: 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2…

正则表达式超详细讲解

欢迎并且感谢大家指出我的问题,由于本人水平有限,有些内容写的不是很全面,只是把比较实用的东西给写下来,还有对一些常用的正则表达式进行收集整理,如果有写的不对的地方,还希望大家多多指教!谢…

50【Windows与Linux】

大家可能有些人听过Linux系统,很多初学者被灌输的理念就是服务器必须要装Linux系统 什么是系统? 比如你的电脑是Windows系统的,你手机是Android系统的,物理设备都需要系统,系统你可以理解成直接控制物理设备的一个东…

Mac上的虚拟化软件推荐

在Mac上运行虚拟化软件是一个非常实用的选择,可以满足不同用户的需求,包括运行Windows操作系统、Linux系统或开发环境等。以下是几款推荐的虚拟化软件及其特点: 1. Parallels Desktop 适用平台:Intel和Apple M系列Mac电脑。功能:支持Windows、Linux和macOS等多种操作系统…