Feedback

Faculté des Sciences appliquées
Faculté des Sciences appliquées
MASTER THESIS
VIEW 113 | DOWNLOAD 629

Master thesis : MQTT broker with in-line, real-time data visualiser for the Internet of Things (IoT)

Download
Detienne, Martin ULiège
Promotor(s) : Leduc, Guy ULiège ; Tychon, Emmanuel
Date of defense : 27-Jun-2022/28-Jun-2022 • Permalink : http://hdl.handle.net/2268.2/14496
Details
Title : Master thesis : MQTT broker with in-line, real-time data visualiser for the Internet of Things (IoT)
Author : Detienne, Martin ULiège
Date of defense  : 27-Jun-2022/28-Jun-2022
Advisor(s) : Leduc, Guy ULiège
Tychon, Emmanuel 
Committee's member(s) : Donnet, Benoît ULiège
Boigelot, Bernard ULiège
Language : English
Number of pages : 72
Keywords : [en] MQTT
[en] Viewer
[en] Broker
[en] Visualiser
[en] IoT
[en] Debug
[en] Analyse
[en] Tool
[en] JavaScript
[en] NodeJS
[en] Aedes
[en] React
Discipline(s) : Engineering, computing & technology > Computer science
Target public : Researchers
Professionals of domain
Complementary URL : https://gitlab.com/mqtt-broker-sniffer
Institution(s) : Université de Liège, Liège, Belgique
Degree: Master en sciences informatiques, à finalité spécialisée en "computer systems security"
Faculty: Master thesis of the Faculté des Sciences appliquées

Abstract

[en] Internet of Things (IoT) devices are more and more used in our today's life. However, as the amount of connected devices increases, the communications between them are more and more difficult to scale. The MQTT communication protocol has come to solve this issue. The MQTT protocol is a communication protocol between IoT devices that aims to centralise the communications inside one broker. However, a typical MQTT communication involves hundreds of messages per minute. This is then hard to analyse an MQTT communication with packet sniffer tools like Wireshark. The goal of this master thesis is to provide an appropriate and publicly available tool to visualise and analyse MQTT communications for debugging purposes. This report reviews the goals of this project: create several MQTT broker environments on the same system, display the set of published messages, the state of a broker, filter the published messages, and display telemetry on the number of published messages. This thesis report then goes through the MQTT protocol and its various types of packets. The high-level architecture is discussed with the first decisions for the role of each component that will be developed: a broker to record the MQTT data and a viewer to visualise it. We then decide on the type of database to store the recorded data persistently, the kind of data to record which is interesting to display to the user, and how this data should be stored. The architecture of the broker is reviewed as well as the technique used to manage the several independent MQTT broker environments. With this, we discuss how to save the events that happen in an MQTT broker and the techniques used to scale the project with a big amount of MQTT messages. To conclude the discussion about the architecture, we discuss the plugin system that allows extending the viewer, how the MQTT data should be stored and represented in the viewer, and how the user should have access to the required features. We then review how complex filters can be built into the viewer. We then discuss the development methodology of this project. The implementation details are then reviewed with the different technologies used in this project. We will talk about the difficulties encountered during the deployment and explanations on how to deploy this project easily. The results of this project are finally reviewed with the latencies encountered when the broker faces a lot of traffic and some screenshots of the viewer. A discussion is made about the further possible improvements on this project. Additional documents and documentation are provided at the end of this report.


File(s)

Document(s)

File
Access MQTT_Visualiser.pdf
Description:
Size: 1.86 MB
Format: Adobe PDF
File
Access MQTT_Visualiser_Summary.pdf
Description:
Size: 64.15 kB
Format: Adobe PDF

Annexe(s)

File
Access Viewer.zip
Description:
Size: 71.45 kB
Format: Unknown
File
Access Broker.zip
Description:
Size: 13.87 kB
Format: Unknown

Author

  • Detienne, Martin ULiège Université de Liège > Master sc. informatiques, à fin.

Promotor(s)

Committee's member(s)

  • Donnet, Benoît ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Algorithmique des grands systèmes
    ORBi View his publications on ORBi
  • Boigelot, Bernard ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Informatique
    ORBi View his publications on ORBi
  • Total number of views 113
  • Total number of downloads 629










All documents available on MatheO are protected by copyright and subject to the usual rules for fair use.
The University of Liège does not guarantee the scientific quality of these students' works or the accuracy of all the information they contain.