Académique Documents
Professionnel Documents
Culture Documents
Bernard 2021
Bernard 2021
M. A NTOINE B ERNARD
Composition du Jury :
Laurent Toutain
Professeur, École nationale supérieure Mines-Télécom
Rapporteur
Atlantique Bretagne Pays de la Loire
Président
André-Luc Beylot
Professeur, École nationale supérieure d’électrotechnique,
d’électronique, d’informatique, d’hydraulique et des Rapporteur
télécommunications
Monique Becker
Professeur émérite, Télécom SudParis Examinatrice
Philippe Cola
Senior Core Network Architect, Bouygues Telecom Examinateur
Ahmed Kamal
Professor, Iowa State University Examinateur
Michel Marot
Professeur, Télécom SudParis Directeur de thèse
626
Sandoche Balakrichenan
Responsable recherche en partenariat, Association Française
Co-encadrant de thèse
pour le Nommage Internet en Coopération
Benoit Ampeau
Directeur Partenariat & Innovation, Association Française pour le
Invité
Nommage Internet en Coopération
Co-encadrant de thèse
iii
Abstract
Télécom SudParis
by Antoine BERNARD
iv
The Internet of Things (IoT) evolved from its theoretical possibility to connect anything and
everything to an ever-increasing market of goods and services. Its underlying technologies
diversified and IoT now encompasses various communication technologies ranging from
short-range technologies as Bluetooth, medium-range technologies such as Zigbee and long-
range technologies such as Long Range Wide Area Network.
IoT systems are usually built around closed, siloed infrastructures. Developing interoper-
ability between these closed silos is crucial for IoT use-cases such as Smart Cities. Working
on this subject at the application level is a first step that directly evolved from current prac-
tice regarding data collection and analysis in the context of the development of Big Data.
However, building bridges at the network level would enable easier interconnection be-
tween infrastructures and facilitate seamless transitions between IoT technologies to im-
prove coverage at low cost.
The Domain Name System (DNS) basically developed to translate human-friendly computer
host-names on a network into their corresponding IP addresses is a known interoperability
facilitator on the Internet. It is one of the oldest systems deployed on the Internet and was
developed to support the Internet infrastructure’s growth at the end of the 80s. Despite its
old age, it remains a core service on the Internet and many changes from its initial specifica-
tions are still in progress, as proven by the increasing number of new suggestions to modify
its standard.
DNS relies on simple principles, but its evolution since its first developments allowed to
build complex systems using its many configuration possibilities. This thesis investigates
possible improvements to IoT services and infrastructures. Our key problem can be formu-
lated as follow: Can the DNS and its infrastructure serve as a good baseline to support IoT
evolution as it accompanied the evolution of the Internet?
We address this question with three approaches. We begin by experimenting with a feder-
ated roaming model IoT networks exploiting the strengths of the DNS infrastructure and
its security extensions to improve interoperability, end-to-end security and optimize back-
end communications. Its goal is to propose seamless transitions between networks based
on information stored on the DNS infrastructure. We explore the issues behind DNS and
application response times, and how to limit its impact on constrained exchanges between
end devices and radio gateways studying DNS prefetching scenarios in a city mobility con-
text. Our second subject of interest consists of studying how DNS can be used to develop
availability, interoperability and scalability in compression protocols for IoT. Furthermore,
we experimented around compression paradigms and traffic minimization by implement-
ing machine learning algorithms onto sensors and monitoring important system parameters,
particularly transmission performance and energy efficiency.
.
v
Résumé
Télécom SudParis
L’Internet des Objets (IdO) a évolué depuis cette possibilité théorique de connecter tous les appareils
à un réel marché de biens et de services en constante expansion. Les technologies sous-jacentes ont
évolué et l’IdO repose aujourd’hui sur de nombreuses technologies de communication différentes:
Des technologies à courte portée comme Bluetooth, moyenne portée comme Zigbee ou longue portée
comme la technologie LoRa (Long-Range).
Les systèmes de l’IdO sont habituellement construits autour d’infrastructures fermées basées sur
des systèmes en silo. Créer de l’interopérabilité entre ces silos fermés est un enjeu pour certains
cas d’usages cruciaux dans le déploiement des technologies de l’IdO comme les villes intelligentes.
Développer la problématique au niveau applicatif est une première étape directement inspirée des
pratiques courantes en matière de collecte et d’analyse de données dans le cadre du développement
des technologies de traitement de données massives. Cependant, construire des ponts au niveau
réseau permettrait de faciliter l’interconnexion entre infrastructures et faciliterait la transition fluide
entre technologies de l’IdO afin d’améliorer à bas coût la couverture réseau.
Le Système de Nom de Domaine (Domain Name System, DNS), initialement développé pour traduire
les noms, lisibles et compréhensibles par les utilisateurs en adresses IP, utilisées par les appareils con-
nectés, est reconnu comme un facilitateur sur les question d’interopérabilité sur Internet. C’est l’un
des systèmes les plus anciens déployés sur Internet, développé à la fin des années 1980 pour supporter
la croissance de l’infrastructures Internet. Bien qu’ayant beaucoup évolué ces dernières années, en té-
moignent les nombreuses propositions de modifications au standard publié à son sujet, le DNS reste
aujourd’hui l’une des infrastructures les plus centrales du réseau Internet.
Le DNS repose sur des principes simples, mais son évolution depuis ses premiers développements
ont permis de construire des systèmes complexes grâce à ses nombreuses possibilités de configuration.
Dans le cadre cette thèse, qui étudie les possibles améliorations aux services et infrastructures de l’IdO,
nous étudions la problématique suivante : Le DNS et son infrastructure peuvent-ils servir de support
efficace à l’évolution de l’IdO de la même manière qu’il a accompagné l’évolution d’Internet ?
Dans cette optique, nous étudions de possibles améliorations de systèmes de l’IdO sous trois angles.
Nous testons tout d’abord un modèle d’itinérance pour réseaux de l’Internet des Objets au travers de la
construction d’une fédération reposant sur l’infrastructure du DNS et ses extensions pour en assurer
l’interopérabilité, la sécurité de bout-en-bout et optimiser les communications entre infrastructures.
Son objectif est de proposer des transitions fluides entre réseaux sur base d’informations stockées à
l’aide de l’infrastructure DNS. Nous explorons également les problématiques introduites par le DNS,
notamment en termes de latence et d’influence sur les temps de réponse des applications, et comment
en limiter l’impact sur les échanges, déjà grandement contraints, entre objet connecté et passerelle
radio. Pour cela nous étudions les conséquences de l’utilisation de requêtes DNS anticipées dans un
contexte de mobilité en milieu urbain. Nous étudions ensuite la façon dont le Système de Nom de
Domaine peut renforcer l’interopérabilité, la disponibilité de ressources et le passage à l’échelle de
systèmes de compression de paquets de l’IdO. Enfin, nous explorons la question de la minimisation de
trafic en implantant des algorithmes d’apprentissage sur des capteurs et en mesurant les paramètres
du système final, en particulier en terme de performances de transmissions et d’efficacité énergétique.
.
vii
Acknowledgements
Looking back on this adventure, now comes the time to thank all those who believed
in me and accompanied me for these three years.
First of all, I would like to express my sincere gratitude to my director Michel Marot,
who followed this work as closely as possible. I was fortunate to have the opportu-
nity to work with him. I learned a lot from our discussions; I won’t forget his advice
for the years to come.
I also thank Sandoche Balakrichenan, who supervised my day-to-day work within
Afnic, pushed me to move forward with my work, challenged me about the propo-
sitions I made and helped improve them with his knowledgeable comments.
My thanks also go to Benoit Ampeau, our boss at Afnic, who accompanied the ex-
ecution of our projects, offered his expertise when necessary and contributed to the
valorization of our experiments and results. And I thank the Afnic, and its director
Pierre Bonis, for financing my work for these three years.
I thank Laurent Toutain, whose work was a real inspiration for this thesis, who ac-
cepted the task to review it and who presided the defense jury. I also thank him for
his comments to improve the present manuscript.
I also thank André-Luc Beylot, who agreed to preside my mini-defence and shoulder
this manuscript’s review. In both these instances, his advice and critics helped me
improve.
My thanks also go to Philippe Cola and Ahmed Kamal, who agreed to participate to
my defence as jury. And to Monique Becker, who, on top of her participation in the
jury, put her experience to use by reviewing my work.
I also thank all my colleagues from Telecom SudParis, namely Aicha Dridi and Mo-
hamed Laroui, for our joint work in our shared office, Hossam Afifi for his advice,
his insight and his answers when working together on machine learning, back when
I was a complete novice on the subject, Vincent Gauthier for his insight and advice
that taught me a lot about possible solutions to the issues I encountered, Hassine
Moungla for his advice on how to valorize our work. I thank Bruno Defudes, who
was tasked to review my first year’s work and check that everything was doing fine
and Hind Castel, who accompanied André-Luc in my mini-defence. My thanks to
Véronique Guy, Ydalia Garcia, Sandra Gchweinder and Valérie Mattheus, each for
accompanying my work for these years, be it assisting with conference registration
or for accompanying my teachings. Speaking about teachings, I would also like to
thank Olivier Paul for accepting me as a part of his networking course’s teachers. I
viii
also thank Cedric Adjih and Alexandre Abadie for their insight when discovering
IoT technologies.
The remaining people to thank are, of course, my friends: Adrien, Paul, Victor, Er-
wan, Pierre, Fabien, Lauriane, Mockie and Mad, to acknowledge a few, for so much
but I’ll only mention our games periods, behind a computer screen or around a ta-
ble. A thought to all my former colleagues, schoolmates and teachers, with special
thanks to Dominique Chiaroni for introducing me to research through my internship
with him at Nokia Bell Labs and to MiNET’s members, past, present or future, who
are doing formidable work and with whom I discovered networking.
Last but not least, I would like to thank my family: my grandparents, parents and
brothers for supporting me throughout all my life or theirs and Clara, who sup-
ported me during our, already, four years together.
This work was partly financed by the French National Research Agency through the
CIFRE program [2018/0668].
This work benefited from the support of the Energy4Climate Interdisciplinary Cen-
ter (E4C) of IP Paris and Ecole des Ponts ParisTech. It was supported by 3rd Pro-
gramme d’Investissements d’Avenir [ANR-18-EUR-0006-02].
ix
Contents
Abstract iv
Résumé vi
Acknowledgements vii
1 Introduction 1
1.1 Research issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 IoT Roaming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2 Header Compression . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.3 Data compression . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Structure of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6 Conclusion 99
xi
Bibliography 129
xiii
List of Figures
2.1 Making the things smart by tagging carrier devices such as sensors,
RF-ID, barcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
List of Tables
3.1 Fictional representation of how DevEUI and JoinEUI 64 bits are par-
titioned, wherein certain bit blocks are allocated for OUI, certain bits
for the batch (e.g. ABBB) & the remaining bits at the serial level . . . . 64
List of Abbreviations
Chapter 1
Introduction
From the early development of the Internet, identifying machines inside the net-
work has been a necessity. One of the first systems to identify and design machines
on the network was a single file (called the host.txt file) shared across the network,
which contained all the identifier/name tuples. As the number of machines grew,
the identification system moved away from this single shared file to the newly de-
veloped Domain Name System (DNS).
The DNS is a hierarchical system that allows users to generate names for their de-
vices on the network. DNS is often presented as the phone book for the Internet,
allowing users to remember domains, URLs and email addresses instead of the cor-
responding IP addresses. With its roots spread in various locations, the DNS tree
proved to be a resilient distributed system, easy to access from anywhere on the
planet and support interoperability and services discovery on the network.
The DNS is a massively deployed and scalable system supporting worldwide com-
munications on the Internet. Its deployment was a valuable tool to accompany the
increase in the number of machines on the network. Additionally, the ease of use
and registration of domain names helped create new markets on the Internet, one of
which was the popularization of Web technologies. The system has many uses and
is regularly improved by continuous development and standardization efforts.
The DNS is sometimes exploited to develop new uses such as Apple’s Hello, pro-
posed for standardization as DNS Service Discovery (DNS-SD). This sort of hacking
to the DNS principal goal, exploiting its main characteristics (interoperability, global
repartition) to create new uses of the DNS paradigms and architecture, is precisely
the kind of possible uses we aim to develop in this thesis.
This thesis aims to study and develop such transverse uses of DNS regarding the
Internet of Things (IoT) and its infrastructure. We hypothesize that the DNS might
prove a useful tool as it would permit developing new IoT uses without specific
overcost; that the DNS might improve solutions linked to IoT and help build a Web
of Things through registries containing devices information. Building such a system
should help IoT evolve the same way as the Internet, building interoperable systems
and networks backed by cloud servers sharing actions and data. Moreover, reusing
existing technology such as the DNS should prove an efficient way to accompany
IoT integration toward the rest of the Internet.
This thesis focuses on wireless communication in Wide Area Networks.
Most IoT, among those Low Power Wide Area Networks (LPWANs), systems are
now built as incompatible isolated data silos with each technology transmitting over
2 Chapter 1. Introduction
its waves, using its infrastructure and centralizing data in data warehouses for ex-
ploitation. Nowadays, around 99% of these Things are not connected to the Internet
[1]. Using the DNS to break data and communication silos would allow infrastruc-
tures and devices to communicate freely and build interoperable networks between
IoT technologies.
Another key similarity between the Internet and the Internet of Things comes from
the similarity in their problems. IoT is riddled with scalability, interoperability, mo-
bility and roaming, transmission efficiency, availability, reliability and other security
issues such as privacy. The DNS contributes to solving many of these issues on the
Internet, hence our interrogation on possible improvements to IoT systems backed
by the DNS infrastructure.
This thesis studies IoT systems regarding the following key aspects: Naming, Roam-
ing, Header Compression and Payload Compression. Though security aspects will
be detailed in various part of the thesis, security weaknesses of IoT End Devices
(EDs) is outside the scope of this thesis.
We focused our studies on LPWANs; LPWANs are constrained networks built, in
general, as star typologies supporting a massive quantity of EDs around a single
antenna. Among these LPWAN, our work focuses on Long-Range Wide Area Net-
work (LoRaWAN) as the network is open and easy to access, provides interesting
constraints but necessitate no additional cost. It is easy to build LoRaWAN networks
and participate in the evolution of the specifications.
• DNS which has been conceived for the Internet is considered not to be appro-
priate for constrained IoT requirements.
DNS is a naming service wherein the basic use of DNS is to map the identifier to its
specific service over heterogeneous applications/services in the decentralized Inter-
net. Since the IoT systems are mostly siloed and centralized, the usage of DNS as a
naming service is still not well studied. Based on these observations, studying DNS
through academic work as a possible tool to break IoT silos and support IoT infras-
tructures seems an interesting subject. Considering our third requirement described
above, our goal is not to embark DNS protocols onto sensors but instead use DNS on
the infrastructure side to support IoT improvements. Proposing such improvements
is our first goal.
The IoT research community would also benefit from additional experimental work
with IoT systems to verify the experimental feasibility of its solutions. Thus our sec-
ond goal is to run experiments to test hypothesis for IoT based on DNS. This exper-
imental approach introduces additional constraints such as working with reference
implementations of the solutions, generating actual IoT traffic for measurements and
analysis, respecting airtime constraints or device lifecycle.
1.2 Motivation
1.2.1 IoT Roaming
Roaming requires an interconnection agreement between network operators. In-
terconnection in IoT becomes possible by establishing a direct ’One-to-One’ inter-
connection or building an interconnection ’Hub’ for operators. Establishing an in-
terconnection agreement with a single hub makes it possible to exchange traffic with
the other operators connected to that hub. Both the hub and the One-to-One inter-
connection models evolve as independent Silos wherein the device in the coverage
area of a Visited Network (VN) can connect to its service only if there is a prior in-
terconnection agreement between its Home Network (HN) and the VN or between
the HN and the interconnection hub.
The interconnection agreement serves as a basis for mutual authentication and au-
thorization between the operators. In the ’One-to-One’ interconnection model, boot-
strapping trust is a key security concern. The ED needs to be cryptographically
authenticated by the VN based on credentials such as its identifier and a Pre-Shared
Key (PSK). Cryptography-based authentication usually relies on one or more trust
anchors [2]. In the proprietary silo scenarios, the trust anchor information may be
preset on the ED or established out of band.
Also, interconnection agreements define how operators should communicate be-
tween themselves, including setting up mutual authentication between backend el-
ements to secure backend exchanges on the network. In the ’Hub’ scenario, the
operators are asked to ultimately trust the centralized hub, whereas, in a ’One-to-
One’ model, the agreement usually defines the specific backend authentication and
authorization method to be used between the operators.
The goal of the first part of this thesis is to address these issues by proposing an
architecture, IoTRoam, federating different organizations to allow flexible, mutual
authentication and authorization between any backend element in a roaming situa-
tion, without a direct and explicit roaming agreement (e.g. for the LoRaWAN case,
4 Chapter 1. Introduction
Internet Engineering Task Force (IETF) to compress, decompress, fragment and re-
assemble packets transmitted over LPWANs.
Compressing data using SCHC relies on realizing a pattern matching on the packet
header before transmitting it over a constrained network, from the ED to its backend
or from the Radio Gateway (RG) to the ED. In order to compress the data sent and
received between the ED and the backend, SCHC uses a predefined group of rules
called Context, which is deployed on both the ED and on the backend.
For every Context, there could be a single or multiple rules. When sending data from
the ED to its RG, the SCHC Context rule enables compression by suppressing redun-
dant, superficial, predictable or most used data inside an IPv6 header and replacing
them with a Rule Identifier chosen in a given set of predefined rules. For instance,
the ED’s IP address may be added to the Context allowing it to avoid transmitting
128 bits IP address data if all the packets sent by a sensor have the same IP address.
When using SCHC, one element from the backend should realize SCHC operation
(compression, decompression, fragmentation, reassembly) for all associated EDs.
That is why we propose that the RG, the Network Server (NS) or the Application
Server (AS) retrieve the Context dynamically from a remote server. Thus, the owner
of the rules could easily modify them. Only the Rule IDs and versions are stored in
either the RG, the NS or the AS.
Also, storing all SCHC rules, considering they might be unique for each ED, might
introduce scalability issues to the system. We can consider around 20 rules per ED
when working with such rules (as the rule ID + rule length is encoded on 1 byte),
with thousands of EDs around a single antenna and multiple antennas for a given
server (as LoRaWAN is built as a star of stars topology). When considering hundreds
of thousands of EDs around a single server with up to 10kb per Context rule, we end
up storing gigabytes of data to enable SCHC on a given LoRaWAN infrastructure.
At last, the current way to store the SCHC Context rules statically does not allow to
roam easily. It lacks the necessary flexibility which would enable to development of
roaming capabilities when using SCHC. The use of an Administration Management
System (AMS) as proposed by [4] could be a solution. It is a proposition to super-
vise roaming agreements and manage the use, generation and exchange of SCHC
Contexts. However, such roaming accords would prove experimentally tricky when
working with multiple operators, thus building accords between each LoRaWAN
AMS, considering that operating a LoRaWAN network is possible at low cost with-
out paying licenses for emitting data over the air.
There are multiple options for storing these Context rules. For example, it could be
done in a private server, stored in the cloud or directly embedded within the oper-
ator’s server. However, we think that it could be wise to use an open, distributed
mechanism to find the location of the server where the Context rules are stored.
We propose to experiment possible use of DNS as a way to support SCHC com-
pression/decompression mechanism. As an optimized, hierarchical and distributed
database, DNS could enable identifying the server’s location where the Context rules
are stored feasibly on the Internet. Hopefully, using such a mechanism would allow
for a seamless transition, from preconfiguring the information needed on the back-
end to building it dynamically, on the fly, based on actual needs when operating the
network.
6 Chapter 1. Introduction
DNS would prove an efficient solution to introduce more flexibility and improve
scalability when using SCHC. Our solution would provide open access to SCHC pa-
rameters as a way to support roaming capabilities. Considering these three aspects
of the SCHC framework, namely improving its flexibility, scalability, and assisting
SCHC when an ED is roaming, and how DNS might help, we ask ourselves if it
is possible to host rules outside the scope of the ED’s NS without hindering the
transmissions. To solve this problem, we deployed a dynamic Context resolution
architecture based on DNS for SCHC compression/decompression and studied the
consequences of such mechanism on the system latency and other possible conse-
quences on LoRaWAN communications.
sense to try minimizing the memory size by shortening the number of digits the
weights are coded with. In this case, what is the impact of weights quantization on
the algorithm’s accuracy, and in fine the compression efficiency?
Lastly, we aim to study possible uses of the DNS infrastructure to back such com-
pression mechanism by embarking the weights directly on the DNS. With DNS being
an efficient open distributed database, using DNS would permit to open the access
to ML models and weights, for example, when an ED is roaming. Three scenarios
are studied about publishing ML weights in the DNS, each with its own strengths
and weaknesses:
• one of them relies on asking the backend to publish the ML weights in the
DNS.
• a second consists is to rely on the DNS to store the address of a given API
which would allow to retrieve and modify ML algorithm
• a last possibility consists of learning the lessons from the DNS-SD paradigm
[5] in a dual connectivity infrastructure to support discovery and advertising
of ML model within a given local coverage, for example, as a way to support
compressed LoRa Mesh communication.
1.3 Contributions
Our work mainly consists in breaking the silo between multiple LoRaWAN de-
ployments, but as mentioned above, we expect similar results when working with
less constrained networks.
Our work with LoRaWAN led us to collaborate with various parties from the com-
munity and contribute to the LoRaWAN Specifications, and collaborate with the lead
developer of the ChirpStack open-source software, which is the most massively used
and reference LoRaWAN infrastructure backend solution. Our focus when working
with ChirpStack mostly consisted of providing insight on the interconnection be-
tween the ChirpStack Solution and the DNS infrastructure regarding the actual use
of DNS in the LoRaWAN specifications.
This work also leads us to reflect on a possible use of DNS prefetching to reduce
the impact from usual DNS querying in a mobility use case. When querying infor-
mation necessary for device’s functionalities, prefetching the necessary information
beforehand allows interesting improvements in terms of DNS cache hit. We provide
simulation results based on a comparison between three querying scenarios based
on mobility traces in an urban area.
After extending roaming capabilities in a LoRaWAN network, we worked on com-
pressing headers to develop IP connectivity in LPWANs. Our contribution relies on
extending the existing SCHC standard by leveraging the DNS infrastructure in its
capability to increase connectivity and accompany application scalability.
Thus we proposed an experiment to measure the time delay induced by using the
SCHC compression/decompression framework, then extended the time delay study
by adding new interfaces to SCHC, enabling remote context querying. We also pro-
vide experimental measurements on DNS querying time to improve the quality of
our time measurements by studying actual resolution time outside our lab scope.
8 Chapter 1. Introduction
Chapter 2
F IGURE 2.1: Making the things smart by tagging carrier devices such
as sensors, RF-ID, barcode
2b6f0cc904d137be2e1730235f5664094b831186
Provisioning both identifiers types; EPC and UDID could be included into the In-
ternet via the DNS namespace. Then it is up to the client libraries to make the con-
version and add the specific sub-domain suffix ("udid.apple" for UDID and "gs1" for
EPC) to the identifiers. Once the identifier is converted to a fully qualified domain
name as follows:
2b6f0cc904d137be2e1730235f5664094b831186.udid.apple.
3.1.3.1.6.2.3.3.9.3.4.0.3.gs1. (supposing that there is a TLD called ’gs1’)
They will follow the standard DNS resolution to resolve their associated resource,
ED or metadata.
We hypothesize is that DNS is the only infrastructure that could scale to billions
of EDs in the context of IoT interconnection, similar to how it has withstood the
meteoric rise from hundreds of domains at the beginning of the Internet to billions
currently [14]. Thus, we propose using DNS infrastructure as a scalable solution to
satisfy the requirements outlined by Wireless Broadband Alliance (WBA)[15].
2.2 Querying
Querying in IoT raises many research issues: data storage and database compar-
ison, temporal and spatial retrieval, the architecture of IoT, data and query distri-
bution (and, subsequently, caching mechanisms), interoperability, data contextual-
ization (and what is related that is discovery), and query performance. Concerning
the used methods, they are numerous, for example, probabilistic ones, machine-
learning-based ones or, of course, graph-based ones and blockchains.
2.2. Querying 13
structure, L-index, and a matching approach, L-match, for the constraint normal-
ized subsequence matching problem ([33]), which is a two-layer structure and built
on the simple series synopsis, the mean values of the disjoint windows. Using dis-
joint windows is faster to update than sliding ones. The constraint normalized sub-
set matching problem provides a knob to control the offset shifting and amplitude
scaling flexibly. When storing event data in existing Time-Series Databases (TSDBs),
the retrieval may have performance problems. Also, existing TSDBs do not have a
specific query language defined for event analysis. [34] develops a model for event
specifications and use it to specify abnormal system states to be captured to allow
timely mitigation. The event model is integrated into the TSDB by translating them
to continuous queries defined in some TSDBs. The authors of [34] develop a model
of event specification since TSDBs do not have specific query language. In [35], the
authors study the approximate range emptiness problem, which answers an empti-
ness query of the form "S ∩ [ a; b] = 0?" for an interval [a;b] of length L ( a, b ∈ U ),
over sliding windows in the IoT data streams. [36] designs a real-time and historical
multi-view IoT trend system. Using an information graph, it displays the relation-
ship between different sensor data and, using the method combining real-time and
history, it proposes a buffered batch data loading algorithm to form a dual-display
mode system. About data quality validation, the contribution of [37] is to enhance
the stream processing system such as C-SPARQL with production rules, instead of
statistical approaches, to achieve a Continuous Time-Aware reasoning. It is used to
provide stream validation for the quality problem relating to inconsistencies in sen-
sor streams. Errors in measurements may cause bad procedure (and even sometimes
dangerous) triggers.
Spatio(-temporal) retrieval
[38] aims at designing a distributed framework of massive trajectory data analysis
based on Hbase to realize spatio-temporal query more efficiently for urban comput-
ing scenarios. They design a temporal-based pre-partitioning strategy to improve
the performance of data written. Then they develop a Multi-Level Index to speed up
the process of spatio-temporal query. [39] consider the case of IoT databases along
roads to organize the storage according to road segment, instead of the cell, as the
unit of space mapping and data storage so that data requested in a road query can
be stored together to enable efficient I/O. Then, one can efficiently found the units
covered in a road query, which is usually concerned only about data on a few seg-
ments of roads. [40] offers location-aware services based on data messaging and ag-
gregation techniques. Its authors design a taxonomy for the classification of the IoT
devices based on their mobility frequency and leverage it to design a priority scheme
to address the co-located devices that offer similar services. In [41], considering that
stream processing must not be limited to the temporal dimension but also consider
the spatial one, a query language is developed to process temporal and geographi-
cal data, based on an index taking into account both dimensions. With in-network
processing, generated queries are routed to the nodes belonging to the specific re-
gion of interest, mainly using standard WSN (Wireless Sensor Network) geographic
routing algorithms. The IoT IETF standard routing algorithm RPL (Routing Protocol
for Low-Power and Lossy Networks) builds a tree-like routing topology that is in-
efficient for a spatial type of query because it floods the message to all nodes either
inside or outside the target region. The authors of [42] improve RPL in particular
by considering spatial partitioning. IoT applications use more or less two kinds of
data: either time-series or contextual information (or graph), mainly stored through
2.2. Querying 15
2.2.4 Interoperability
The authors of [67] describe a semantic data model, rules, and a reasoning
platform taking SPARQL queries as rules to enable high-level data abstraction
and knowledge extraction. [68] integrates existing ontologies to provide semantic
interoperability among heterogeneous devices and users in the healthcare domain.
[69] focuses on facilitating the understanding of messages exchanges between
artefacts founded in different ontologies by semantic translation based on ontology
alignment. In [70], the authors leverage semantic technologies like Linked Data
to disseminate data to relevant data consumers. Time-series databases are used to
store IoT data, but they lack a good semantic model to support data sharing. That
is why [34] proposes a monitoring data annotation model to guide the systematic
specification of monitoring data streams. In [71], the authors propose IoT-Directory,
which makes it possible to manage packet brokers using different communication
technologies and formats in an ontology-based way, and in particular, to ingest data
from them in the IoT-Directory. Another issue is the necessity for processing IoT
data from multiple heterogeneous data stores: in [72], a multi-store query system
for IoT data is proposed. The IoT is characterized by a wide variety of data sources,
large scale and heterogeneous structures. However, those characteristics bring great
difficulties to the storage and rapid retrieval of IoT data. By considering the com-
mon attributes of IoT data, based on plug-in ideas, combined with Redis and HBase,
the paper [73] proposes a framework named HSFRH-IoT, which solves the problem
of efficient storage and retrieval of massive heterogeneous IoT. [74] presents an
ontological model which improves semantic searching and querying capabilities
by hiding the heterogeneity of entities and their produced data. [75] addresses the
issue of semantic relationships between the data over data/event streams using
Complex Event Processing to derive time-annotated RDF data from the basic events
streams and C-SPARQL for processing online queries over a domain ontology for
property inference. In [76] an agent-based server system approach, which improves
the resource sharing between heterogeneous WSNs in IoT/CPS (Cyber Physical
Systems) providers, is proposed. [77] presents a versatile architecture of a broker
named X2CBBR and based on XML-base publication data and Xpath-based sub-
scription data that can operate in IoT with different publish/subscribe systems. The
EPC network is a collection of industrial standards designed to build an Internet
of physical objects. ONS, a directory based on the DNS, is one of the important
components of the EPC network. ONS provides a connection between the product
code and Information Services in IoT systems. [78] proposes an extension of ONS
architecture to support heterogeneous object code identification dynamically.
present an application that allows users to look back on their memories by priori-
tizing photographs that were taken in contexts that are similar to the current con-
text. It is built on a contextual database middleware that provides context storage
and context-sensitive queries that determine the similarity between pairs of contexts.
Reminisce uses the contextual database to store the contexts of a user’s photos, in-
cluding location, time, neighboring devices, and weather conditions. Later, the app
identifies the photos whose stored contexts are most similar to the user’s current
context by querying the contextual database.
2.2.7 Methods
Probabilistic approaches
[101] address the issue of aggregation query (e.g. give the maximum pollution
level in an area) via probabilistic sampling. Reverse Nearest Neighbors query finds
the objects that have the query as the nearest object and plays an important in many
applications. [102] thus studies probabilistic Reverse Nearest Neighbors query over
the uncertain data streams. IoT is used to monitor natural phenomena, but spatial
queries are costly. Efficient sampling-based approaches are proposed in [103]. To
balance the retrieval efficiency and the maintenance cost, [104] adapts the probabil-
ity that a thing property is indexed to its change frequency and also to its query fre-
quency. [105] uses a probabilistic flood search algorithm to find devices distributed
in heterogeneous and dynamic environments. Sampling-based approximate data
analytics are the most widely used, which trade the output quality for efficiency.
[106] proposes a real-time data flow system for edge computing and analysis.
Fuzzy approaches
[107] uses fuzzy ontology query and reasoning to generate complex event
query plans, and context-aware queries are rewritten into context-independent
sub-queries. Data windows are partitioned according to different event patterns
and contexts. The sub-queries are optimized and executed in parallel based on data
partitioning.
Machine-learning methods
[108] consider a neuronal approach to minimize storing and processing of image
data in IoT using neural networks to extract relevant information. To achieve effi-
cient storage management, [109] classifies and reduces data using a Support Vector
2.3. Scalability 19
Graph methods
In recent years, the Social IoT paradigm, where objects establish social-like rela-
tionships, has become popular as it presents several interesting features to improve
network navigability and implement efficient discovery methods ([110], [111]). Us-
ing social relationships can help to accumulate experience knowledge and also opti-
mize the network traffic load ([112]). In [113] various graph algorithms are used to
respond to the user’s queries smartly. In [114], graph databases in clouds are used to
represent data. [115] addresses the problem of community search in social IoT, which
is beneficial to resource/service discovery, from the viewpoint of a dense subgraph
query. In [116], the issue of faster query processing of data is addressed. It presents
a Log Based Method (LBM) to store and query IoT data in Resource Description
Framework RDF format. LBM exploits skewness in access patterns of records by
analyzing query workload and partitions the basic triple table into hot and cold sec-
tions. To facilitate data retrieval and analytic, [117] ranks the web pages where the
information is stored in function of the quality of the content and the interconnection
between the web pages.
Blockchain
[118] designs a distributed IoT blockchain ledger for managing the metadata
needed to describe IoT devices and the data they produce. It is not controlled by any
individual or organization. The paper also proposes a marketplace that provides
the functionality needed for IoT device registration, query, integration, payment
and security via the proposed blockchain. [119] proposes a solution called Semantic
Smart Contracts (SSC), which integrates RESTful semantic web technologies in
smart contracts, deployed on the Ethereum Blockchain platform, for indexing,
browsing and annotating smart contracts. The solution also exposes the relevant
distributed ledgers as Linked Data for enhancing the discovery capability.
2.3 Scalability
IoT faces well-known scalability issues. EDs hardware have small power resource,
limited memories and processing capabilities, bandwidth is either sparse or it may
be overloaded due to the huge quantity of transmitted data. Legal regulations im-
pose limitations on the spectrum usage (e.g. respect of duty cycle constraints). Most
of the problems arise at the network front-end but also in the back end since all the
data are finally routed to servers or clouds on which they are stored and processed
([120], [121]). Thus, economising bandwidth, batteries, memory, storage and pro-
cessing are ways to increase IoT scalability. Compression techniques are solution but
also subtle tradeoff between information loss, energy, storage, time and bandwidth
minimisation ([122]). Most of the time these efforts lead to design new compres-
sion methods ([123], [124], ([125], [126], [127], [128], [129], [130], [131], [132], [133],
[134],[135], [136], [137], [138], [139], [140], [141], [142], [143], [144], [145], [146], [147],
[148]). Some are lossy while others are lossless. Deleting redundancy, data aggre-
gation, quantization, approximation by simpler functions, use of dictionary-based
methods, entropy coding, transform methods, compressed sensing and neural net-
work approaches have been applied for IoT.
20 Chapter 2. State of the Art
has not to be transmitted. Neural networks (NNs) and, more specifically, LSTMs are
proposed to perform predictions.
ML can simplify signal detection by training a general data-driven signal detection
model. However, fully connected neural networks would introduce processing la-
tency and extra power consumption, making them unsuitable for deployment on
IoT devices. That is why neural networks themselves must be compressed. There-
fore, the motivation of [159] is to investigate different neural network compression
schemes for system simplification. Three compression strategies are studied, in-
cluding topology compression, weight compression and quantization compression.
These methods show efficient neural network compression with tradeoffs between
computational complexity and bit error rate (BER) performance. Also, compression
technology through pruning research has gained momentum and is an important
tool for improving performance during inference. [140] focuses on pruning un-
wanted filters and nodes in all layers of a network. The network is pruned itera-
tively during training, and a significant number of filters/nodes are removed while
ensuring any loss in accuracy is within a predetermined range. Other methods exist
like efficient convnets, ThiNet and Cross-Entropy Pruning.
Most of the time, IoT solutions are scenario-specific and application-specific and rely
on standard layer-2 solutions like LoRaWAN or IEEE 802.15.4. One example of such
application-specific solution is [148] that proposes improvements to LoRaWAN com-
munications by fine-tuning the communications parameters to the device’s situation
(location, number of RGs, scheduling...). However, for interoperability purposes,
IPv6 is an obliged interconnection solution, and it raises the issue of header over-
load. Header compression algorithms like Robust Header Compression version 2
(ROHCv2) from Request For Comments (RFC) 5225 may solve this problem. It sends
context information packets like "initialization and refresh" to transmit persistent in-
formation to the receiver and consecutive compressed "sequential" packets, which
can be decoded from the previously transmitted context. Nevertheless, if context
packets are lost due to transmission errors or overflows, sequential packets cannot be
decoded. Also, most classical compression algorithms (e.g. delta compression, LSB
compression, table-based compression...) assume that an up-to-date reference value
exists on the decompressor side; thus, they face the same problem in case of possible
packets losses. The solution the authors of [160] is to prepend context information
onto sequential packets using Random Linear Network Coding. Another solution is
SCHC [3] which is a framework that provides both compression and fragmentation
functionalities. It is being standardized by the lpwan [161] working group at the
IETF. RFC 8724 and its related works [161] at the IETF are also closely followed by
other SDOs such as IEEE 802.15, LoRa Alliance. It is considered an efficient solution
to connecting the LPWANs using IPv6, thus enabling end-to-end IP connectivity.
With the help of the SCHC framework, it is possible to compress an IPv6 header
from its original size of sixty bytes down to two bytes, thus reducing bandwidth us-
age and increasing communication efficiency. In [162], SCHC is used as a unifying
transport layer for multimodal LPWAN solutions. The main drawback of SCHC is
that it works under the assumption that LPWANs are preprogrammed with known
data flows, thus uses a static context. However, this assumption is not always valid
in an IoT context, where devices should be accessible from any IPv6 address. In
[163] a dummy mapping technique that can effectively compress/decompress some
header fields of unknown flows is proposed. The dummy mapping creates a fixed-
size list of dummy values mapped dynamically at the gateway compressor to the
values of headers fields.
2.4. Security 23
2.4 Security
2.4.1 Generic Approach
Security of IoT devices and infrastructures is an extensively studied subject; there
are articles and surveys regarding many aspects of security in IoT, taking into ac-
count the strengths, weaknesses and specificities of IoT devices to point out new
research opportunities and concerns to improve security.
[165] highlights various needs regarding security for IoT and points out the need to
build tailor-made security measures adapted to devices resources, embedded proto-
cols and system specifications. An embedded security framework is also provided to
propose a co-design methodology that helps design security features by considering
their hardware and software constraints. [166] responds to a need for standardiza-
tion and documentation regarding general points of vigilance when building IoT
solutions. It provides a state of the art regarding security threats and risks for IoT as
well as security guidelines.
[167] studies the vulnerability introduced by bridges between the Internet and non-
IP devices connected to a HN. By introducing new hardware or protocols into the
network, the system creates attack and defense scenarios that need to be extensively
studied as devices need to handle attacks from more powerful attackers. [168] uses
a similar approach, compares security threats in the IoT, discuss IoT scenarios, anal-
yses possible attacks, and provides insight on security threats and vulnerabilities in
the IoT environments. One of the most documented in such IoT environment are
sinkhole attacks[169]; these attacks rely on the trust built among devices in a wire-
less network to build their routing strategy. [167] already evokes them, but an exten-
sive study of sinkhole attacks and how to defend against them is provided by [170].
[170] documents how to detect and mitigate these attacks, how to balance security
and usability for devices and which tradeoffs are necessary for these scenarios.
[171] and [172] document LoRa and LoRaWAN security vulnerabilities and various
attack scenarios. [171] focuses on the LoRa technology, studies the LoRa network
stack and provides attack scenarios built on existing hardware and technology. [172]
tackles LoRaWAN and points out its vulnerability to replay, man-in-the-middle and
battery exhaustion attacks by analyzing the packet exchange between LoRaWAN
devices and backend. The attacks scenarios mentioned are put into test through
various proof-of-concept.
Rather than focusing on attack scenarios or building security countermeasures spe-
cific to given hardware, other papers focus on generic security approaches built re-
gardless of the underlying technology. [173] proposes an All-IP IoT architecture to
support a complete IP adaptation method for IoT applications around four key top-
ics: mobility, web enablement, time synchronization, and security. [174] indicates
that IPv6 will become the de-facto standard for interoperability in IoT and point out
security challenges related to processing power in the context of lightweight cryp-
tographic algorithms and standardization. The paper studies the complete IP stack
at large regarding IoT constraints and provides an overview of possible solutions to
24 Chapter 2. State of the Art
improve IoT systems at each layer. [174] also evokes issues regarding authorization
and privacy concerns which will be detailed furtherly.
2.4.2 Authentication
[175] proposes a key management solution to handle the IPsec key exchange as
well as support 802.15.4 channel securitization.
[176] details specific needs for medical IoT regarding authorization, privacy require-
ments or data confidentiality, taking into account specific constraints from resource-
constrained devices. The paper proposes a context-aware security architecture han-
dling access control and privacy-preserving data silos and provides an access control
engine running on resource-constrained sensor nodes.
[177] details key exchange scenarios in WSN to establish a secure channel to protect
the data transmitted over the air. Various scenarios are described, such as public-key
cryptography and PSK. Backend considerations are also considered. [178] studies
identity management systems to support data integrity protection and proposes a
framework for authentication suited for IoT environments.
[179] propose an authentication mechanism based that uses multicast communi-
cations to save transmission during the authentication handshake for resource-
constrained devices, evaluating its performances and analyzing the security
paradigms in place to support IoT development despite its constraints. [180] is a
reflection on authentication, authorization and accounting on constrained devices
by leveraging the PANA (Protocol for carrying Authentication for Network Access)
paradigm, which was ongoing work at IETF back in 2013. The paper provides a
study of the EAP/PANA paradigm in constraint devices and an implementation
that serves as a proof of concept to both the IETF standardization community
and the scientific community. The paper is based on a Contiki implementa-
tion of EAP/PANA called PANATIKI based on simulations and results from an
experimental testbed.
[181] presents a two-way authentication scheme based on the Datagram Transport
Layer Security (DTLS) protocol. The authors provide a solution based on existing
standards and protocol to embark the algorithm on 6LoWPAN EDs and evaluate the
solution through experiments. [182] targets V2X communications building a delay-
aware, reliable, scalable and secure network. The paper aims to provide insight on
the handshake mechanism to build for such systems considering their constraints
(mobile devices, protocol overhead, transmission delays) while keeping the system
reliable. The proposed mechanism reduces delays in the handshake mechanism by
leveraging the capabilities of edge infrastructure to reduce delays and improve the
efficiency and reliability of vehicular communications.
[183] uses the CoAP protocol to propose an authorization framework that can build
authorization based on an external OAuth authorization service (OAS). The pro-
posed scenario benefits from the OAS’s strength while keeping the solution with
IoT’s usual constraints: low processing load, customizable and easily scalable. The
solution is not energy efficient due to the multiple transmission necessary to frag-
ment the messages but is efficient regarding other primordial aspects such as mem-
ory footprint. The solution is also efficient for developers as OAuth is a well known,
well-documented technology and the solution benefits from the existing implemen-
tation of the OAS paradigm.
2.4. Security 25
Authentication at IETF :
IETF worked on designing authentication frameworks, one of them was the Protocol
for Carrying Authentication for Network Access (PANA) [189] designed by the pana
working group. According to its charter[190], the pana working group aims to build
generic frameworks to support authentication in various scenarios around mobile IP
networks. The working group proposed 6 Standard RFCs detailing each component
necessary to build such a security framework as part of its work.
Authentication frameworks were also proposed for adoption to other working
groups, [191] proposed to the Constrained RESTful Environments (core) working
26 Chapter 2. State of the Art
2.4.3 Trust
Trusting a third party or a communication peer is an important issue when dis-
cussing security in general and IoT security in particular. IoT’s constraints regarding
processing power and needs for energy efficiency usually come with a necessity to
rely on others to delegate certain operations. Building and evaluating trust frame-
works when working with constrained devices has been a subject of interest since
the beginning of IoT research.
[192] summarizes the issues and requirements for building trust within heteroge-
neous networks. The main topic studied is building trust regarding routing proto-
cols and trusting peers when bridging the connection. Another studied aspect of
building trust to decide where to route the traffic consists in creating a network trust
model to decide which level of trust a device gives to another peer. In trust delega-
tion models, another critical aspect is deciding on a key exchange and management
policy; the paper evokes possible protocols to exchange keys and negotiate trusted
channels.
[193] proposes a trust management model based on building a fuzzy reputation
system within the IoT network. The article extensively studies trust in networks,
then uses the NS-3 simulator to generate traffic and build trust within the IoT
network. The proposed mechanism, TRM-IoT, performs better regarding routing
performances, packet loss and other network metrics while keeping the system
lightweight and within IoT specific constraints but seems less reliable when attacked
by malicious third parties. [194] proposes to establish trust models by building
social reputations between devices the same way reputation is built within human
social networks. Contrary to [193], the simulations from [194] show many benefits
regarding excluding malicious nodes within the network based on a feedback
system that evaluates trust level based on nodes centrality.
[195] studies WSNs in a countryside environment, builds a trust framework and
experiments upon it. The model shows interesting results regarding data reliability
and isolation of malicious nodes.
[196] identifies trust issues within heterogeneous network environments and builds
a trust consensus based on social IoT paradigms in a similar way to [194] but fo-
cusing on other key aspects on building trust within a network such as handling
large scale infrastructure and taking into account devices capabilities in terms of
storage and processing power. The approach is studied furtherly in [197] with addi-
tional analysis regarding trust assessment and trust convergence time. The tradeoff
between these two is studied and show significant results compared to non-trust-
optimized systems.
[198] concerns itself with building reliable IoT infrastructure while keeping the sys-
tem privacy-preserving and building trust into the network. Their system relies
on a trust policy handler that defines operations between devices, a key manage-
ment component that assists in securing communications, an identity manager and
2.5. Coverage and Roaming 27
a reputation manager that assists in trust management within the network. Their
system provides a generic approach to IoT security but, as they point out, lacks an
actual proof-of-concept. [199] described extensively the issues and solutions regard-
ing trust management in IoT and [200] surveys trust establishment in IoT.
2.4.4 Privacy
[201] proposes a framework to measure possible invasion of privacy in protocols
using a mathematical method. However, this method does not apply to all protocol
as the protocol need to fit certain algebraic properties but should apply to IoT specific
solutions. [202] proposes a technical solution to enforce privacy protection using a
middleware system as a privacy broker. [203] sums up many challenges within IoT
systems regarding privacy protection and security. [204] aims to improve privacy
protection in IoT using a solution that gives control to the user and then designing
complex privacy policies and filters. Such a solution aims to identify finely all the
elements that need access to personal data and which specific access they need.
The question of privacy is not only a technical issue to monitor but a transverse is-
sue to address from various experts, not only from the computer science field. [205]
is a multi-disciplinary approach study that reflects on privacy and security of IoT
hardware, software and protocols from a regulation point of view. It extensively
studies sensors networks and the possibility of break privacy protections, creating
discrimination, or making more secure devices with a combined juridic and techni-
cal approach.
[206] proposes a novel approach around Quantum Lifecycle Management (QLM)
that allows devices to keep communicating, bypassing firewalls. Such a solution,
should it work, would prove interesting regarding access to information from iso-
lated devices but also pose real threats regarding security from a generic point of
view, especially with regards to the issues discussed by [205].
To support all threats identified in the previous papers, [207] proposes a conditional
privacy-preserving authentication with access linkability (CPAL) for roaming ser-
vice. The idea behind CPAL is to offer a secure roaming service that respects user’s
privacy using a multi-layer approach to information access within the system. The
system and its performances are also studied to prevent the solution from being too
heavy for IoT solutions. [208] also defines a roaming protocol for IoT solutions ex-
ploiting the strength of edge computing to authenticate the devices. The solution
seems to protect against various known attacks, and simulations underline interest-
ing authentication delays and energy consumption results.
Coverage evolution is a well documented subject (cf. [209] [210] [211] [212] [213]
[214] [215], [216]). As IoT developed outside of its small scale industrial use, the
need for coverage became prominent and new technologies were introduced [217]
to increase the scale from which to connect things [218]. Consumer IR, Bluetooth,
Wi-Fi, which are still developed as of today. But also long coverage communication
([211] [213]) ranging up to tens of kilometers such as LoRaWAN (cf. [219] [220]), Sig-
fox, Narrow-Band IoT (NB-IoT). Network topology may also change the way mobil-
ity is handled. [209] gives a unique perspective on the way to improve coverage and
mobility, though Machine-to-Machine Technologies, listing the then-emerging Un-
licensed LPWAN and evolutions to the 3GPP Standard (also known as LTE-M and
NB-IoT). Vehicular networks are an excellent example of the evolution of M2M net-
works and how mobile M2M networks can use their environment’s infrastructure as
good support to mobility [221]. [210] after an overview on various IoT technologies,
from short-range technologies such as ZigBee, Bluetooth and Wi-Fi to long-range
such as GSM, LTE and Satellite, provides a complete overview of LPWANs offers in
the context of Industrial IoT and listing their strength and limitations. LPWANs are
presented as a good opportunity regarding coverage, with an evolving community
developing interesting standards and with increasing deployment. LPWANs also
enable new channels to communicate as a substitute or a complement to the existing
GSM networks [211]. Coverage was also studied through simulations, [222] pro-
vides an extensive study on LoRaWAN performances through a study on packet de-
livery in a realistic context and aim to provide reference assumptions and numbers
for people willing to modelize a LoRaWAN infrastructure. [216] expands this work
by providing numerous measurements on link quality based on actual LoRaWAN
payloads, studying Packet Reception Ratio based on Packet Length, Spreading Frac-
tor (SF) or Signal to Noise Ratio. Their experiments show that the most significant
impact on LoRaWAN communication comes with the scalability of the solution as
the recommendation is to group data transmit long payload instead of short chirps
to prevent packet losses from interferences from other devices. [212] studies theoret-
ical LoRaWAN and NB-IoT coverage for connecting smart meters. The solution aims
to cover a whole population with various population densities (urban, suburban, ru-
ral) and device positioning (deep indoor, indoor and outdoor). This document also
points out the importance of network deployment to enable an efficient service.
On the other hand, development on roaming was less significant compared to cov-
erage. Roaming is an essential factor if one wants to improve its mobility. While
coverage is important when considering small scale mobility (neighborhood, ware-
houses... ), roaming is the technology to develop to improve coverage for things
moving far from their HN. Roaming allows building a network of interconnected
antennas from various partners to provide universal access to the network.
This lack of development regarding roaming in IoT-enabling technologies is pointed
out by [209] as roaming seems to be an excellent way to improve coverage in Smart
Cities. This is especially important in a dense area where antennas might interfere
a lot.[210] while providing many details regarding coverage, data rates and energy
consumption, does not provide much input regarding roaming. Only pointing out
that each technology handles roaming. [223] draws a comprehensive view on con-
necting WSN to the IP world and provides a lot of insight on mobility manage-
ment for devices. The authors point out that key improvements to develop new
efficient IoT systems are energy efficiency, security and operational autonomy of
mobile nodes.
2.5. Coverage and Roaming 29
Roaming improvement might also come from enabling dual connectivity for a de-
vice. Thus [214] provides insight on various projects worldwide improve LPWA
communications by plugging it into a satellite network as a backup link. [215] pro-
vides a complete comparative study of various LPWAN technologies, providing
numbered information on mobility support, deployment cost comparison, packet
loss, energy management, mobility latency. The study also put the solutions stud-
ied into perspective with other operated mobile networks (GSM, LTE) and provides
insight on various possible use cases from asset tracking to healthcare. Vangelista et
al. in [220] sums up recent LoRaWAN Standards evolution regarding roaming and
other improvements. LoRaWAN is presented as the most promising candidate for
worldwide interoperability and connectivity.
In this context, researchers have proposed various solution to mobility issues allow-
ing for a user to access its data wherever his device is located. Most of them focus on
gathering the user data using various solution, from data aggregation [224] [225] to
publish/subscribe mechanisms [226] [227]. Researchers also looked for ways to trace
devices in order to fit the network to their movements [228] [229] [230]. Finally im-
provements to the infrastructure were also studied from implementing a blockchain-
based mechanism [231] [232], devices improvements were proposed [233] and inter-
operability solution were evoked [212] [4].
[224] uses aggregation and clustering to search services in a pool of IoT devices. It
uses a semantic-based approach to explore heterogeneous networks using a decen-
tralized approach to aggregate information fast and precisely. Their method the-
oretically ensures an accurate search system and shows good experimental results
regarding time efficiency. In [225], Almajali et al. study mobile edge computing
under the scope of mobility. They focus on highly mobile devices and solutions to
improve device connectivity in unusual mobility cases.
[227] proposes a solution that consists in improving the MQTT to fit better to mobile
scenarios. By managing data using an MQTT internal buffer, devices can re-deliver
all their messages in the correct order even when some packets are lost or the con-
nection is interrupted.
[226] explores how Software-Defined Networking paradigms might work in accord
with a Data Distribution Service to create an efficient publish/subscribe mechanism
as network backend to IoT infrastructures while addressing some key challenges to
IoT infrastructures such as interconnectivity with an existing and standard network,
mobility, service discovery and scalability.
[228] also builds an infrastructure based on Software-Defined Networking, which
is used to divide the territory spatially in order to follow the devices and adapt the
backend infrastructure based on its movements. Their solution also presents a global
view on the network, which is acceptable for home networks but might present is-
sues in a fully interoperable infrastructure with multiple actors and solutions. [229]
uses Software Defined Networking to manage flows in order to efficiently forward
data to a given location thanks to an efficient path estimator and flow manager. The
solution tries to predict the path taken by a flow based on prior observations, thus
reducing message overhead and energy consumption for flow tables. [230], with
AFIRM (Adaptive Forwarding based Link Recovery for Mobility support) tries to
use Named Data networks as a middle layer to support IoT mobility. Through an ex-
tensive study on routing, Meddeb et al. compare their solution to other approaches
by studying data availability in a sensor mobility context.
30 Chapter 2. State of the Art
2.6 DNS
2.6.1 How it works
DNS is a distributed lookup service used to translate between domain names and
IP addresses. It already exists and is global. It is the most efficient, open and scalable
system for name resolution. There can be no massive communication on the Web like
email or web page resolution without DNS. At the beginning of the Internet, a simple
host.txt file located on a single computer was responsible for the translation between
IP addresses (such as 192.134.5.37) and domain names (Such as "www.afnic.fr"). As
Internet grew Paul Mockapetris designed a more suitable distributed database (RFC
1034 [9] and RFC 1035 [10]) which is the DNS.
A host who wishes to access the web page of "www.afnic.fr" uses a client application
such as web browsers or mail clients on the host computer. Such applications send
a request to the local DNS resolver in the local Operating System (OS). The DNS
resolver will invariably have a cache containing recent DNS lookups. If the cache can
answer the request, the resolver will return the value in the cache to the application
that made the request. If the cache does not contain the answer, the resolver will
send the request to one or more designated DNS servers.
Assuming that the answer is not found in the local cache of the hosts computer,
the resolver (client) sends a UDP recursive query to one of its configured local
nameservers. In the case of home users, it will mostly be their Internet Service
Provider(ISP). The local nameserver, in turn, looks for the answer in its local cache
and, if an appropriate record is found, returns the cached address to the client.
On the contrary, if the answer is not found in the cache of the local nameserver, then
the burden of finding the response for the resolver’s query becomes the responsi-
bility of the local name servers. The local nameserver queries the root nameserver
for the address of www.afnic.fr. There are 13 root servers (from a.root servers.net to
m.root servers.net). The root server process the query, and even though it does not
2.6. DNS 31
know the address of www.afnic.fr, it knows that the information should be under
the control of the "Top Level Domain (TLD)" fr servers. In this case, one of the root
servers will refer the query to the .fr nameservers. The local nameserver asks the
.fr nameserver the same question and is referred to the "afnic.fr" nameservers. Fi-
nally, the local nameserver asks "afnic.fr" nameserver for the queried domain name
address and gets the answer.
DNS has been studied since its first RFCs were published. [234], the reference paper
within the ecosystem, first documented DNS effectiveness compared to its concur-
rent solutions, as well as DNS latency and DNS cache hit rate within a university
campus. [235] provides additional insight regarding caching efficiency within a net-
work, [235] also documents the quantity of DNS queries and responses observed
compared to the overall traffic within their campus. [236] is a greater study that
evaluates the responses from the .net and .com TLDs. The article also drafts a defini-
tion of a "normal" DNS resolver, leading them to study DNS "top-talkers", the 40000
resolvers that account for 90% of the traffic DNS in 2012. [237] studies DNS wrong
configuration and its consequences (packet loss, NX domain, increase in latency ...)
by studying various configurations (random sampling, zone transferred, 500 most
popular web servers...) based on a custom DNS resolver.
2.6.2 Standards
The IETF is responsible for DNS-related standardization in RFCs. Initial discus-
sion about having a structure such as the DNS started with [238] based on the do-
main concept. [239] discusses how the domain concept could be used for mail rout-
ing. [9] defines the concepts and [10] describes how the concepts could be imple-
mented. There have been several RFCs focus on the type of Resource Records (RRs)
used in the DNS starting with [240] which specifies the five new DNS types for ex-
perimental purposes, [241] for specifying the location services, [242] to specify the
type on how the URIs could use the DNS and so on.
Another category of DNS standardization is on clarification of existing standards,
such as [243] clarifying the initial DNS specifications in [9] and [10]. There are num-
ber of standards on DNS Operational issues such as [244] on common DNS data file
configuration errors, [245] on common DNS operational and configuration errors,
[246] on operational criteria for Root Name servers and [247] on use of DNS aliases
for Network Services.
As per Bert Hubert [248] there are about 297 RFCs related to DNS. Hence it is im-
possible to provide an exhaustive list of all DNS related standardization documents.
There have been even efforts from the DNS community to limit the number of Stan-
dards in the DNS [249]. The reason being with the growth in the DNS standards
over the past three decades, it has become nearly impossible for DNS developers
and users to read thousands of pages of standards work before any DNS related
implementation could be done.
• the evolution to the transport of data over the network: DNS over DTLS, DNS
over TLS, DNS over HTTPS and DNS over QUIC; that secures the link between
the server and the user.
• the signature of DNS authoritative zone, with DNSSEC, which authenticates
the integrity of the data sent from the server.
• the integrity check enabled by the use of DANE to countersign data and cer-
tificates
• the new paradigms introduced by the development of DNS-SD to improve
local network self-configuration
All these aspects will be studied in the following part of the chapter.
TLS or DTLS. The current version of the DNS over QUIC draft is accessible through
([254]).
These standards were also backed by performance measurements, tests and con-
siderations by the research community. [255] studies the tradeoff from the loss in
response time and packets that comes from securing and improving reliability when
navigating the Web by comparing the response times from classic DNS (DNS over
UDP or Do53), DoT and DoH. [256] provides additional information regarding DoT
resolution with RTTs around 15ms for traditional DNS resolution and RTTs over
100ms for DoT use. They observe that securing DNS resolution with DoT comes
with a 100ms tradeoff and multiplies the DNS response time by a 7-factor.
/ Multicast DNS (mDNS) Extensions [274], Selecting Labels for Use with Conven-
tional DNS and Other Resolution Systems in DNS-Based Service Discovery [275] and
DNS-Based Service Discovery (DNS-SD) Privacy and Security Requirements [276] to
pave the way for possible implementations of DNS-SD applications from anyone on
the market.
zeroconf working group published a single RFC [277] that paved the way for de-
vices’ self-configuration on the network. Their Dynamic Configuration of IPv4 Link-
Local Addresses provides a method for hosts to automatically configure their IP in-
terface with an IPv4 address for Link-Local communications. This solution uses the
169.254/16 IPv4 prefix registered for this specific purpose and is not routed on the
Internet.
Then RFC 6763 [5] provides the first insight on using DNS for services discovery; it
provides insight on structuring DNS resource records to facilitate service discovery.
The document describes the necessary tools to deploy a self-configuration mecha-
nism and support it within a local network, then describes a standardized syntax
for devices to provide their identity and describe their services within the network.
Finally, the document describes service discovery and how devices may access the
data advertised by their network peers.
Evolutions to RFC 6763 were necessary to improve the solution’s scalability, solve se-
curity concerns and extend the work from the RFC’s author. Thus the dnssd working
group came to provide these extensions.
RFC7558 [274] paved the way by providing the requirement to improve the scala-
bility of DNS-SD extensions, and RFC 8222 [275] provided standardized labels to
use when designing, advertising and researching a service using DNS-SD. RFC 8765
[272] is a first step to improve scalability by standardizing updates to a DNS-SD
database, by updating a local DNS zone of authority and by reversing the standard
use of DNS from its polling principle where users request information to a notifica-
tion, publish/subscribe approach. RFC8766 [273] specifies a proxy mechanism that
uses Multicast DNS to discover records and push them into a DNS namespace, thus
providing a localized and centralized point within the local network that contains
advertised services from other devices instead of asking them to listen to every ad-
vertisement and save them in their memory. This proves especially interesting in the
IoT scope, where devices are not always listening to all communications.
DNS-Based Service Discovery (DNS-SD) Privacy and Security Requirements[276]
provides advice and insight on implementing secure DNS-SD services. The RFC
analyzes different scenarios, the RFC proposes various requirements to implement
secure and privacy-preserving mechanisms to support DNS-SD-enabled communi-
cation. The document does not provide many solutions to its scenarios but asks all
the questions necessary in a DNS-SD context regarding client and server security
requirements to support new contributions in the DNS-SD community.
DNS-SD was also studied by the scientific community ([278], [279], [280], [281], [282],
[283], [284], [285])
[278] listed the first requirements for DNS-SD in IoT applications. Requirements that
were expanded and studied in a thesis [285] that proposed to connect the Smart Ob-
jects to the IP world using a combination of XMPP for messages and mDNS/DNS-
SD for service discovery. [285], in his PhD defense, proposed various adaptation
2.7. Machine Learning and IoT 35
layers for IoT, including a lightweight Bonjour implementation called uBonjour and
a lightweight XMPP Stack called uXMPP2.
[279] developed a discovery protocol based on DNS-SD in Contiki OS and identified
issues to solve in order to propose an efficient and interoperable service discovery
for IoT. [280] also proposed such a solution for constrained devices based on Ap-
ple’s mDNS/DNS-SD implementation and extended their work in [281] to propose
scalability improvements to their solution to support large scale IoT deployments.
In [282], an extension to DNS-SD paradigms for Industrial IoT is proposed, and its
reliability, efficiency and latency is tested extensively and show promising results.
[283] proposed enhancements to the DNS-SD standard by exploiting the capabilities
of DNS caches using techniques from the stateless DNS (sDNS) community. [284]
continues the work on Service Discovery for IoT by leveraging the capabilities from
DNS Name Autoconfiguration (DNSNA) implemented with a CoAP stack to sup-
port user configuration, monitoring and remote control.
sensors and actuators to manage the water infrastructure according to the needs de-
tected by the combination of real-time measurements and predictions. [293] also
exploits edge computing infrastructures to process videos, manager fertilizers sup-
ply and treat plant diseases and pests.
[294] exploits data collected in a museum from IoT devices to classify users be-
haviour to provide insight regarding customers to the museum stakeholders. [295]
summarizes a lot of these approaches and provides a framework to exploit federated
learning between IoT applications and exploit sensor data and behavior from other
applications to kickstart IoT applications based on ML data analysis.
Many approaches for empowering IoT devices exploiting the strengths of AI consist
of security enhancements, in [296] proposes to embark a ML component within an
IoT gateway to detect traffic anomalies. [297] investigates attack models in IoT sys-
tems and present various machine-learning (ML) techniques for authentication or
access control to protect users and data privacy. [298] analyses network traffic from
IoT devices in a smart city environment to propose an Anomaly Detection system for
IoT devices to detect compromised devices and mitigate attacks. [299] exploits ML
capabilities to improve LoRa communications security and avoid security threats at
the cost of scalability.
The LIMITS (LIghtweight Machine Learning for IoT Systems) [300] open-source
framework is an interesting tool that proposes to validate and assist in integrating
ML models in IoT applications. Such a solution helps developers and researchers to
design embedded trained ML models onto sensors by estimating the feasibility of
their project. Unfortunately, it cannot take into account framework-specific depen-
dencies and keeps a generic approach.
Our approach differs from the approaches from this section as our work consists in
embedding ML algorithms directly onto devices and realize ML-based calculations
despite their constrained storage and processing power.
2.8 Discussion
Our readings regarding IoT, naming and its related applications lead us to work
on various subjects. The general state of the IoT and its expected growth within the
next years justify our approach to focus on interoperability and other performances
challenges within IoT ecosystems, such as scalability or mobility support. These
challenges lead us to study the possibility offered by querying mechanisms for IoT
solutions, and their associated systems such as ONS [13], ORS or the Handle system.
The issue of querying mechanism is vast; thus, we focus on data storage, data re-
trieval, caching and discovery. Query performances and query approaches are also
studied. Data storage usually rely on databases, from SQL to NoSQL, but also
linked to other technologies, blockchain being one of them, the DNS another. Spatio-
temporal data retrieval raise concerns regarding the location of databases and the
cache expiration. Caching is a concern when working with mobile devices or chang-
ing information, for which cache duration, renewal or expiration are an operational
focus. Various architectures can be discussed for querying; some are built within
cloud approaches, while others rely on edge storage for lower response time. The
DNS provides an efficient middle ground between cloud-centric solutions and edge
approaches. A key necessity with querying is also discovery, various approaches
2.8. Discussion 37
were studied, and DNS provides its own solution to the problem. Finally, we pro-
vide insight on query performances and approaches; recent work focused on new,
innovative technologies, but DNS, as old as it is, remains the most used on the Inter-
net.
Improving the scalability of IoT solutions might come with different approaches, we
chose to focus on compression techniques to reduce payload size or network conges-
tion. However, other approaches were mentioned, such as improving transmission
scheduling or fine-tuning transmission parameters.
One of the major concerns within IoT is security. IoT solutions notoriously offer
poor security qualities and rely on outdated authentication paradigms and crypto-
graphic algorithms. Our focus regarding security relied on working with authen-
tication, trust and privacy. We studied various authentication approaches for IoT,
their strengths and weaknesses, from the research community and the SDOs such as
IETF’s work on authentication as part of the pana working group. Key concerns with
trust are also addressed on building secure and efficient handshakes to bootstrap
trust in IoT scenarios, which is a key concern for our work on IoTRoam. Finally, pri-
vacy preservation techniques are studied. In an all-connected world, privacy threats
are a key concern to the security research community and evaluating the invasion of
privacy and surfaces of attacks are essential to users’ acceptance of IoT solutions.
Mobility management is one of the most important points when designing an IoT
system. The devices studied within this thesis, such as sensors, watches, phones,
luggage or cars, are highly mobile and supporting mobility is a key factor to improve
IoT solutions. Mobility is, for example, a major concern in smart city environments.
We studied mobility support through two aspects, coverage and roaming. Cover-
age is well documented; building solutions to improve coverage include developing
new modulation techniques, developing new hardware or improving its knowledge
of existing techniques to fine-tune the transmissions parameters. Roaming is a more
organizational approach that rely on globally accessible RGs; within IoT ecosystems
and its various network operators, roaming needs to rely on easy-to-deploy solu-
tions, with collaboration inside an open ecosystem and communication in-between
parties. Our focus on the LoRaWAN technology, and its open backend solution and
specifications, is directly linked to this observation.
DNS, and its 297 RFCs, is a reference solution for information querying and discov-
ery within the Internet. We detailed its functioning as well various DNS-linked stan-
dards that participate in the improvement of the global DNS ecosystem, including
building trust through signed resources, securing transport channels and discover-
ing resources.
Finally, we provided relevant information with regards to ML implementations for
IoT ecosystems. ML is a popular subject that encompasses various approach section
5.2 will detail more specific information regarding compression techniques for IoT
traffic. Thus, we provided insight into the way IoT solutions usually interact with
the ML world. We observed that ML is often used to improve users’ knowledge
of their studied datasets or to support and complement existing solutions such as
placement solutions or tracking solutions.
39
Chapter 3
3.1 Introduction
Roaming is an ED’s capability to transmit and receive data on a VN. A classic ex-
ample is cellular roaming, wherein a subscriber can use the VN infrastructure (such
as the radio spectrum, base station) - when the subscriber’s HN does not provide
coverage. Roaming between the HN and the VN needs to consider three broad cri-
teria: technical, economic and regulatory. Technically, roaming requires an intercon-
nection between the HN and the VN directly or via a third party. Economically, the
interconnections between different network operators are governed by agreements,
which define the terms of interconnection. There should be an external body (such
as governments) which regulates these agreements so that the terms and conditions
are beneficial both to subscribers and network operators. Our work focuses only on
interconnection from the technical perspective.
Interconnection in IoT becomes possible either by establishing a direct ’One-to-One’
interconnection or using a ’Hub’ model. The ’One-to-One’ interconnection is similar
to the Internet peering model wherein two IoT networks interconnect. ’Hub’ is sim-
ilar to an Internet transit model, wherein by establishing an interconnection with a
40 Chapter 3. IoTRoam, an IoT roaming federation
single hub, it is possible to exchange traffic with the networks connected to that hub
as well as with the networks connected to its peers. Both the ’Hub’ and the ’One-
to-One’ interconnection models evolve as independent Silos wherein the ED in the
coverage area of a VN can connect to its service only if there is a prior interconnec-
tion agreement between its HN and the VN or between the HN and the ’Hub’. The
’One-to-One’ or ’Hub’ interconnection deployments have been done following out-
of-band mechanisms, and to our knowledge, there are no standardized interconnec-
tion procedures for interconnecting different IoT networks for roaming. In the inde-
pendent silo scenario, when an IoT ED onboards to a VN, bootstrapping trust [301]
is a crucial security concern. The ED needs to be cryptographically authenticated
by the VN based on credentials such as its identifier and a PSK. Cryptography-based
authentication usually relies on one or more trust anchors [2]. In the proprietary silo
scenarios, the trust anchor information may be preset with the ED or established out
of band.
We started with the idea of setting up an open roaming federated platform inte-
grating all IoT connectivity technologies. We debated this idea by discussing it with
the IETF IoT onboarding mailing list [302]. This discussion made us realize that
we should focus on a specific IoT connectivity technology and, if possible, extend
the concept to other IoT technologies. IoT connectivity technologies could be clas-
sified broadly into three categories [15]: short-range (Bluetooth, Zigbee, Zwave),
medium-range (Wi-Fi) and long-range (LoRa, NB-IoT, Wi-Sun, Sigfox). We elimi-
nated from our focus technologies that cannot support roaming, such as Short-range
technologies and closed networks such as Sigfox, which do not require the roam-
ing feature, as it is a single network. Narrowing our focus based on requirements,
we short-listed LoRaWAN [303], which falls under the LPWAN Technologies [304]
category. Compared to other IoT connectivity technologies, the LoRaWAN ecosys-
tem provides freedom to its stakeholders to choose the ED manufacturers, network
service providers and application service providers. Since the radio connectivity
uses a license-free spectrum, the freedom of choice in LoRaWAN also extends to
deployment options. There are public LoRaWAN having nationwide coverage; pri-
vate LoRaWAN focusing on specific use-cases and community networks that can be
used for free by end-users.
We intend to test the federated platform with academic institutions as an open and
accessible interconnected IoT network without considering economic factors. We
started roaming testings using this platform with research and academic institu-
tions. This initiative was presented to the LoRa Alliance (the SDO responsible for
LoRaWAN specifications) and will be included as part of their academic outreach
program.
Architectures proposing solutions to the technology barriers mentioned earlier
should consider the constrained characteristics of IoT environments. If the pro-
posed architecture is validated with LoRaWAN having constraints such as the
maximum frame size of 51 bytes (or 222 bytes for lower SFs) and latency require-
ments of two seconds for default uplink/downlink exchange, we hypothesize
that architecture is extendable to other IoT networks. Mobility between the three
different types of LoRaWAN networks (public, private, community) is a significant
issue. A company may use LoRaWAN to monitor the battery level of vehicles in its
fleet, an agricultural cooperative may use LoRaWAN to monitor the stock flows of
its associates, or an emergency service may use LoRaWAN to coordinate its teams
3.1. Introduction 41
in the field. Most existing studies on LoRaWAN consider scenarios where the EDs
are mobile, but remain under the umbrella of the same NS [305].
We labeled this platform IoTRoam and its objective is to achieve, with IoT con-
nectivity technologies the same interconnection functionalities that eduroam [306]
proposes with Wi-Fi connection. In eduroam, an end-user who has credentials to
connect to a particular eduroam Wi-Fi network for Internet access can access the In-
ternet from any other eduroam network seamlessly. The first requirement is that an
ED having credentials to connect to a particular IoTRoam network should be able
to access its service seamlessly (with minimum prior configuration requirements) in
the event of finding itself in the coverage area of the VN. The second requirement
is that the proposed federated model should be operationally feasible. The vision is
to start with LoRaWAN and extend the design to apply them to other IoT networks.
The IoTRoam architecture aims to enable interoperability between the silos in the
IoT domain by leveraging the DNS protocol, its security extensions (DNSSEC [307])
and a PKI using self-signed X.509 digital certificates, thus bringing in the following
contributions:
• The proposed architecture enables roaming between different LoRaWAN net-
works without the need of having any prior interconnection agreement
• The architecture includes an AA framework based on PKI enabling secure
onboarding of the IoT ED;
• The architecture satisfies basic IoT operational requirements such as scaling,
viability by not incurring additional costs, ease of deployment, interoper-
ability between different IoT networks involving multiple stakeholders;
• Experiences from the implementation as a Proof of Concept (PoC) has enabled
us to propose three accepted change requests (Change request is the procedure
to provide modifications to the LoRaWAN specifications);
• With this PoC, we tested different LoRaWAN roaming scenarios with two In-
stitutions in France - IMT Atlantique and Telecom SudParis (TSP). We ran
measurements to assess whether the additional overhead introduced by the
proposed architecture meets the constrained requirements of LoRaWAN;
Accounting was kept out of the scope of this project but devising device classes
and monitoring roaming user’s band use could be interesting to study afterwards.
IoTRoam’s added value is the possibility of using core Internet infrastructures such
as DNS and PKI to enable interconnection and security of IoT ED onboarding. The
objective is to extend Internet resolution and security infrastructure services to be
adapted to IoT, thus enabling seamless interoperability.
The remaining parts of this chapter are structured as follows: Based on the litera-
ture, Section 3.2 identifies the requirements for a secure and seamless interconnec-
tion architecture. Section 3.3 summarize LoRaWAN key aspects regarding autho-
rization and authentication, section 3.4 presents our design choices and section 3.5
describes our integration of PKI paradygmes in the network. Then section 3.6 de-
scribes our experimental setup to validate our proposed architecture for LoRaWAN
passive roaming. In Section 3.7, we evaluate whether the proposed mechanisms sat-
isfy LoRaWAN constraints. We propose to extend this solution by provisionning the
DNS queried information beforehand using a combination of prefetching techniques
and mobility prediction algorithms (3.8). Finally, we sum up our contributions in 3.9
and conclusion in 3.10.
42 Chapter 3. IoTRoam, an IoT roaming federation
The JS acting as the AA server control the terms on how the ED gets activated (i.e.
onboarded) to a selected LoRaWAN. There are two types of ED activation: Over
the Air Activation (OTAA) and Activation by Personalization (ABP). With ABP, the
ED is directly connected to a LoRaWAN by hardcoding the cryptographic keys and
other parameters required for secured communication, Roaming would not be pos-
sible in this first case. With OTAA, the parameters necessary to create a secured
session between the ED and the servers on the Internet are dynamically created for
a session. This is similar to TLS handshake. OTAA is preferred over ABP since it is
dynamic, decouples the ED and the backend infrastructure and does not need con-
figuration parameter hardcoding. This chapter will focus only on the OTAA process.
In the HN scenario, the ED performs a Join procedure with the JS during OTAA by
sending the JR. The JR payload contains the ED’s unique identifier (DevEUI), the
associated application identifier (App EUI) and JoinEUI (unique identifier pointing
to the JS).
The JS associated with the ED also has prior information such as the ED’s DevEUI,
the cryptographic keys: NwkKey and AppKey required for generating session keys
to secure the communication between the ED and the NS and AS. These are the pre-
shared information between the ED and JS (the AA server) on the Internet, which
we proposed not to modify. Once the JS authenticates the ED, it responds with a
JoinAns message to the NS. The JoinAns message contains different session keys
derived from the root keys: one set of cryptographic keys for securing the ED <-–>
NS interface and another for securing the communication between the ED <-–> AS
interface, for a particular session.
In the VN scenario, a non-activated ED should first activate itself and then trans-
mit/receive the payload. Roaming scenarios in LoRaWAN are classified into passive
3.3. LoRaWAN Interconnection with regards to Authentication and Authorization
45
and handover roaming. We limit ourselves to passive roaming since handover roam-
ing is still in the testing stage and an open LoRaWAN software stack for handover
roaming is not yet available.
In passive roaming, the MAC layer control of the ED is maintained by the home NS,
which becomes the serving NS (sNS), as shown in Figure 3.2. The roaming ED uses
the NS of the VN named forwarding NS (fNS) to send messages to its sNS. The fNS
forwards messages between the sNS and the ED. If the ED is not yet activated, then
it has to get activated using passive roaming activation process as shown in Figure
3.2. When the fNS does not have prior information about the sNS, the fNS SHALL
use the DNS to find the roaming ED’s JS IP address.
As per the LoRaWAN backend specifications, the LoRa Alliance has allocated a
DNS Zone file (joineuis.lorawan.net) for provisioning the information mapping the
JoinEUI to its corresponding JS operator. Each nibble of the JoinEUI represented in
the hexadecimal format "0x00005E100000002F" is first reversed. Then periods are
inserted between each nibble and the domain name joineuis.lorawan.net is con-
catenated as the suffix (JoinEUIs are theoretically hierarchical values based on IEEE
OUIs tables). The final result is a domain name that can be provisioned in the DNS
zone file joineuis.lorawan.net pointing to their respective JS as follows:
f.2.0.0.0.0.0.0.0.1.e.5.0.0.0.0.joineuis.lorawan.net. IN A 192.168.1.1
Thus the fNS, by running a standard DNS resolution, can retrieve the IP address
of the JS corresponding to the JoinEUI and kickstart the Join procedure. The fNS
then queries and obtains the NetID (i.e. the 24 bit Unique Network Identifier of
the sNS represented in the hexadecimal format: "0x60050A") from the JS. Similar to
46 Chapter 3. IoTRoam, an IoT roaming federation
JoinEUI, the LoRaWAN backend specifications has allocated a specific DNS Zone
file (netids.lorawan.net) for mapping the NetID’s to their corresponding NS. Any
LoRaWAN operator(either private, public or community) needs to obtain from the
LoRa Alliance a unique NetID (which is a flat identifier) and provision it in the DNS
zone file "netids.lorawan.net", a standardized DNS resource record pointing the al-
located NetID to its sNS as follows:
60050a.netids.lorawan.net. IN A 192.168.1.2
Thus for a fNS, it is possible to resolve the sNS of an ED by querying the NetIDs
DNS zone file, even if there is no prior roaming agreement. The sNS and the fNS
exchange data, and finally, the ED is activated once the ED receives the JoinAccept
(JAccept) with the session keys for transmitting uplink or downlink messages. The
DNS provisioning mechanism has ensured that both JoinEUI and NetID could be
provisioned or updated by different entities in their respective DNS Zones (Servers);
they are unique in the global scope and cannot be duplicated. The DNS resolution
mechanism ensures that both the JS and the NS can be accessed from anywhere
on the Internet with a simple DNS resolution. Figure 3.2 demonstrates how multi-
stakeholders interconnection complexities are solved due to DNS provisioning and
resolution since for a single ED onboarding, the JS could be operated by a differ-
ent entity than the NS operator. Thus, the LoRaWAN architecture design by itself
provides a partial solution to the WBA requirements described in section 3.2.
data provisioned in the DNS database. The Signatures and public keys come in the
form of new DNS records that provide authentication. With DNSSEC, the origin and
integrity of received data can be verified using one or more key pairs associated with
the DNS zone.
DNS is a time-tested infrastructure and had scaled from hundreds of domains
from the Internet’s beginning to billions currently [14]. These factors influenced
our choice to use the DNS infrastructure, its security extensions and a PKI in
the LoRaWAN roaming architecture. A DNS infrastructure, similar to the LoRa
Alliance’s lorawan.net, was set up under the domain iotreg.net for provisioning
the JoinEUIs and NetIDs, as shown in Figure 3.3. Each nibble of the JoinEUI
represented in the hexadecimal format 0x00005E100000002F is first reversed. Then,
periods are inserted between each nibble and the domain name joineuis.iotreg.net
is concatenated as the suffix. The final result is a domain name provisioned in the
DNS database pointing to their respective JS as follows:
f.2.0.0.0.0.0.0.0.1.e.5.0.0.0.0.joineuis.iotreg.net. IN A 192.168.1.1
Similar to the JoinEUI, the NetID represented in the hexadecimal format are pro-
visioned into the DNS without reversing and adding periods between each digit,
pointing the allocated NetID to its NS is as follows:
c0002f.netids.iotreg.net. IN A 192.168.1.2
The JoinEUI is reversed, and periods are added since it benefits from a hierarchical
model and the NetID is based on the flat model. The DNS provisioning mechanism
has ensured that both JoinEUI and NetID could be provisioned or updated by dif-
ferent entities in their respective DNS Zones; they are unique in the global scope
and cannot be duplicated. Both JS and the NS can be accessed from anywhere on
the Internet, and with a simple DNS resolution, the JoinEUI can be resolved to its
JS and NetID to its NS dynamically without any prior interconnection agreements
shared in advance. The JS and the NS DNS resolution information are secured from
being spoofed on the wire and modified at the DNS database since the DNS infras-
tructure is signed by DNSSEC. We developed and provided a secure, automatized
48 Chapter 3. IoTRoam, an IoT roaming federation
DNS provisioning platform that could be used by the community. With a secured
API key, any authorized user can access the User Interface (UI) (via web or API).
The UI enables authorized users to do multiple operations (creation, modification,
deletion) of only their data in the DNS database. To make it easy for the commu-
nity to understand and use the interface, a video tutorial [317] is provided. While
testing the UI with some LoRa Alliance community members, we encountered op-
erational issues such as validating that the data provisioned in the DNS is done
by the rightful owner. The need to validate the JoinEUI (an IEEE EUI-64 identifier
provisioned by the IEEE and has Organizational Unique Identifier (OUI) in the IEEE
EUI-64) with the IEEE OUI database, were identified and implemented, thanks to the
PoC. The implemented solution has been provided as feedback to the LoRa Alliance,
which could be integrated when the DNS service operated by the LoRa Alliance is
deployed.
There was no existing off-shelf or open-source LoRaWAN network stack software
that uses DNS for ED onboarding or roaming. We collaborated with the open-source
Chirpstack network stack [318] author to update the software to integrate both func-
tionalities. The NS, JS and the AS in our PoC are installed with appropriate software
from Chirpstack, thus enabling DNS resolution.
and generating the leaf certificates are documented [315]. We further simplified the
process, wherein the institutions can generate the leaf certificates by just running a
makefile after customizing their JSON configuration files and adding the provided
leaf certificates information into each of the backend elements configuration files.
Figure 3.5 shows that the ED configured with TSP as HN uses the RG in Afnic’s
coverage area to onboard (Step 1). The RG forwards (Step 2) the incoming JR to the
Afnic NS, which in turn uses the DNS infrastructure (Step 3) to retrieve the TSP-JS IP
address (based on the JoinEUI in the JR) since the ED is unknown to it. Afnic-NS and
the TSP- JS runs a TLS handshake for mutual authentication (Step 4). During mutual
authentication testing, we identified that combining the intermediate and the server
50 Chapter 3. IoTRoam, an IoT roaming federation
leaf certificate (a combined trust chain) during a TLS handshake could bypass the
need for having a certificate store with all intermediate certificates and store only
the Root CA certificate. The certificate validation process is done by sending the
combined trust chain to the server’s IP address. On receiving the combined trust
chain, the server first verifies the leaf certificate in the combined trust chain. When
the leaf certificate is unknown, it checks the following certificate in the chain, the
intermediate certificate. Since the Root CA signs the intermediate certificate, the
combined certificate chain becomes trusted. Thus, the backend network elements
(NS, AS and the JS) could be mutually authenticated even if they are in different
networks since they have a common Root CA at the top of the chain of trust.
On a successful mutual authentication between the Afnic-NS and the TSP-JS, Afnic-
NS retrieves the NetID of the ED from the TSP-JS (Step 4). Using the retrieved NetID,
the IP address of the ED’s NS (i.e., TSP-NS) is obtained (Step 5) via DNS resolution,
and mutual authentication is established between the Afnic-NS and TSP-NS (Step
6). Once the mutual authentication is established between the different servers in
the IP interface, the JR is sent to the TSP-JS to create the cryptographic session keys.
The cryptographic session keys are sent back to the ED via the PKI secured mutual
authentication channel as Join Answer (JAns) and Join Accept (JAccept) (Step 7).
Finally, a secured session between the ED and the associated servers on the Internet
using the generated session keys (Step 8).
Following an uplink, a Class ’A’ ED in LoRaWAN opens a receive window for one
second (default value), and if no downlink is received during the period, it opens a
second receive window after another second (default value) as shown in the figure
3.6a. If no downlink communications are received from the server between the two-
receiver window, it must wait until the ED triggers the next uplink and opens a
receive window. For the ED onboarding process (i.e. OTAA), in the EU 868 Mhz
channel, the default Join Delay window, as described in [304], and illustrated on
Figure 3.6b, is five seconds meaning the RG will transmit the downlink JAccept
exactly five seconds after the uplink.
3.7. Performance evaluation 51
To ensure that the measurement is precise and get rid of any synchronization error
between the ED and the backend network elements, the measurements were realized
directly on the ED. We ran the measurements for around 30 hours of transmissions
and gathered more than 2000 measurements for each scenario.
Figure 3.7 shows the time-to-join for the three scenarios obtained by monitoring
the delay between the JR and the "Join Success" message received at the ED. In the
EU 868 Mhz channel plan for LoRaWAN, the Join Delay window is 5 seconds [304]
meaning the RG will transmit the downlink JAccept exactly 5s after the uplink (Fig-
ure 3.6b). The RG may receive the downlink JAccept well in advance, but it will
stay in the queue until the requested TX time. This means that the ED will receive
the JAccept after 5s. Our measurements show that the device receives its JAccept
around 90% of the time in all scenarios, around 5.2s after sending its JR. The ED
can onboard as soon as possible independently of using DNS or experimenting with
a roaming ED. Therefore, DNS seems to have no significant impact on the activation
delay. A fact that can be explained considering that the ED’s Join Delay is signifi-
cantly lower than the standard times for DNS resolutions (usually around 300ms).
Figure 3.8 shows the first delay for end-to-end communication after activation. Once
52 Chapter 3. IoTRoam, an IoT roaming federation
again, we see that our data is gathered around two values, 1.2s and 2.4s, which cor-
respond to the two receive windows available when class A LoRaWAN ED com-
municate and illustrated on Figure 3.6a. The ED can receive the acknowledgement
within the receive window’s time limit regardless of the scenario studied.
These measurements lead us to believe that introducing DNS and PKI to the Lo-
RaWAN system would not significantly add to the latency in LoRaWAN commu-
nications. It is of note that our measurements show no significant packets losses
as our testbed is quite optimal. Additionnal measurements varying interferences
should be of interest to enhance this work. Also, we configured our infrastructure
to work without DNS caching. A regular infrastructure would further benefit from
DNS caching as a way to reduce the impact of DNS[234]. However, we propose
to expand our reflection on the impact of DNS by studing possible prefetching and
caching scenarios for DNS data in a mobile environment.
DoH would add another supplementary cost up to 150ms as outlined by [255] mea-
surements on public resolvers. Adding an integrity check with DNSSEC would in-
crease the requests even further. Overall, sending two complete DNS requests com-
pleted with integrity check and secured with DoH would cumulate up to 1.1s of
queries done within the first exchange between the ED and the RG. Our problem is
as such: "Would it be possible to reduce that delay in a mobility context to reduce
the impact from DNS querying on channel establishment?"
This work provides a few insights on possible solutions based on Machine-Leaning-
based mobility predictions and information prefetching from DNS servers.
We consider mobility traces from devices moving within the city of Roma; Figure 3.9
shows part of the studied traces traced as a function of latitude and longitude.
We virtually place antenna within the movement perimeter. These antennas, reg-
ularly placed, provide independent coverage for our vehicles. Figure 3.10 shows
a vehicular trace with the antenna disposition within its sector. Regularly placed
antennas help us realize the closest one at glance, which is helpful when trying to
infer the results and prototype. Our test antenna positioning algorithm places the
antennas regularly in squares; thus, each antenna has 8 immediate neighbor for all
scenarios.
3.8. Prefetching of mobile devices information to reduce DNS impact 55
In our simulated fog LoRaWAN deployment, each antenna would act independently
and provide access to its devices. To cover a city the size of our perimeter (200
km x 170km), a regular deployment will need around 520 independent antennas
deployed.
Figure 3.11 provides insight on vehicle to antennas distances. With a regular antenna
placement and about 8 km between two antennas at most, the vehicle-to-antenna
distance will always be bounded between 0 and 4 km.
Based on our IoTRoam use case 3.6, we infer that each independent antenna will
provide roaming access to devices within its reach. As described in the IoTRoam
section, this means that the antenna will request the device’s key from its HN and
establish its connection to the ED thanks to them.
We separated our study into three scenarios. In the first scenario, no prefetching
is realized, and the device uses the standard DNS query mechanism. In the second
scenario, we improve the mechanism with a basic prefetching mechanism realized
by nearby antennas. Finally, in the third scenario, we run mobility predictions,
using ML, for our devices, plan their possible future location and prefetch the in-
formation based on the predictions.
56 Chapter 3. IoTRoam, an IoT roaming federation
As signalled above, the first DNS query for each vehicle is put on the side as "First
DNS Query" as these DNS queries cannot be anticipated.
Figure 3.13 describes our results. As above, for the 10 locations of our 6992 vehicles,
the antenna either query the DNS as part of the vehicle’s first localization, query the
DNS as part of an antenna change for the device or query its own cache as the device
was already known through low mobility or prefetching.
The simulations show that prefetching permits us to prevent on-the-fly DNS query-
ing. The DNS is still queried but at a time where the information is not yet necessary.
The DNS cache handles all queries necessary for device communication, preventing
additional DNS query time during handshakes. Nearby prefetching permits us to
attain an important hit rate on our cache, whether filled by our first classic DNS
query, DNS refreshes or prefetched DNS queries. A similar situation would be as
described in the introduction of section 3.8, where prefetching every DNS zone en-
countered within web page URLs allow to quicken load time by pre-filling the DNS
cache with prefetched DNS queries.
58 Chapter 3. IoTRoam, an IoT roaming federation
to one of these antennas, but not antennas B to E, our prediction was a failure,
but the actual corresponding prediction was correct with a time shift. Further-
more, the prefetching for these antennas was realized; thus, the information
is still present in the gateway’s cache, and despite the prediction failure for
this exact timestamp, we hit our gateway’s cache as the information was not
purged yet.
• Antennas P to S are a similar case ( f T −i ( T + j), i ∈ [[1, 5]], j ∈ [[1, 4]], i − j <
0 ), our prediction was a failure, but the predicted antennas was correct con-
sidering a time shift (and would probably be correct for future device posi-
tions). Furthermore, the prefetching for these antennas was realized; thus, the
information is present in the gateway’s cache, and despite the prediction fail-
ure for this exact timestamp, we hit our gateway’s cache as the information
was not purged yet.
• Finally, antennas V to Z
are the actual antennas solicited for the device in pre-
vious moments in time ( f T −i ( T ), i ∈ [[1, 5]] ). Should all other prediction fail
but antenna A correspond any antennas from V to Z, the prediction is a failure
and so is the prefetching as the other prefetched information expired, but the
information corresponding to these antennas are still present in the DNS cache
from previous requests, we labelled this result "DNS Cache - No Prefetch"
• In the case where antenna A ( f T ( T ) ) does not correspond to any antenna
between B and Z, prefetching was a failure, and a new antenna was solicited;
thus, it must realize a DNS request (labelled "DNS Query")
• Additionally, we separated from these DNS queries the DNS query for the first
device’s location as antenna B to Z constitute an empty ensemble for this given
location.
Figure 3.15 combines the results from the 69920 vehicle location based on the sce-
nario breakdown from figure 3.14.
60 Chapter 3. IoTRoam, an IoT roaming federation
Results are, satisfying compared to the first scenario. Successful prediction lead to
hitting an antenna linked to a correctly predicted position in 63.4% of cases. Cache
hit rate linked to predictions, whether correct predictions or incorrect prediction by
lateness or earliness, would add up to 77.4% of requests. The remaining 22.6% are
divided between the first query (10%), DNS cache after prediction error (10.3%) and
actual DNS queries (2.3%).
• The second scenario activates as whole 393 antennas, a bit over twice more
antennas than in the first scenario. The ’nearby case’ shows excellent results
but would probably create congestion within the network should these results
confirm at a larger scale.
• Finally, the third scenario activates 380 antennas, globally around the same
amount as the antennas solicited as part of the second scenario, figure 3.16
gives us more insight on the distribution of these antennas.
Figure 3.16 shows the comparison of the number of activated antennas between sce-
nario 2 and scenario 3.
7 and 12. This result fits with the moderate mobility from our values as devices
that move within 3 antennas would activate within to 15 through their movement in
Scenario 2. The predictor performs better than the simple nearby prefetching, with
more than 75% of its values under the median for Scenario 2. Also, Scenario 2 has
many outliers with over 21 antennas solicited per device on highly mobile roads, in
which the predictor performs better.
3.9 Contributions
The IoTRoam experience enabled us to set up a federated platform that has been
documented and the software provided as open-source to the community. It also
helped us to identify operational issues that have not been encountered earlier since
there is no LoRaWAN operational infrastructure using DNS for OTAA and Roaming.
The PoC tests proposed solutions to some of the operational issues and also led
to three change requests adopted by the LoRaWAN backend specifications. This
section will detail the contributions.
3.9.1 Contribution 1
The networks based on ’One-to-One’ interconnection or hub drop the incoming
packet from an ED if it is not part of its network or its partners. With the IoTRoam
federated model, these networks could make a DNS resolution to identify the HN of
the ED. Thus, the IoTRoam federated model caters to the whole ecosystem wherein
networks based on the ’Hub’ or ’One-to-One’ interconnection could co-exist.
3.9.2 Contribution 2
In the cellular model, portability between operators becomes possible since there
is a human subscriber involved, which is not the case in LoRaWAN. In LoRaWAN,
the EDs with a battery life spanning for a decade are supposed to be set up in
remote places and not readily accessible in the necessity of a network operator
change. IoTRoam enables portability between different operators; thanks to the
DNS database, the JS pointing to a JoinEUI can be modified without making any
modification at the ED level.
To understand the importance of operator portability, a brief background of how the
ED is provisioned with the JoinEUI and DevEUI are needed. The JoinEUI 64 bit ad-
dress could be divided into three broad ranges: OUI of the manufacturer, the Batch
ID of the manufacturer and the JoinEUI value assigned to the batch. The DevEUI
is also a unique IEEE EUI-64 bit address divided in the same categorization as the
JoinEUI. The difference is - for every ED there is a unique DevEUI, but thousands of
EDs could be assigned a single JoinEUI as shown in the table 3.1:
During the JoinEUI assigning process, the ED manufacturer is not yet aware of who
will be the buyer. If a client is buying only 500 EDs from a batch of 1000, the remain-
ing 500 EDs’ JoinEUI need to be re-provisioned with a new JoinEUI if a new buyer
wants the remaining 500 EDs to point to a different JS. Similarly, if the buyer who has
bought 500 EDs from a batch needs to assign a different JS for a set of 100 EDs, the
JoinEUI needs to be modified in each ED. This modification is done by re-flashing
the EDs with the new JoinEUI and thus is operationally time-consuming and costly.
64 Chapter 3. IoTRoam, an IoT roaming federation
DevEUI JoinEUI
OUI-ABBB-0001 OUI-ABBB-FFF1
OUI-ABBB-0002 OUI-ABBB-FFF1
OUI-ABBB-0003 OUI-ABBB-FFF1
.... ...
OUI-BBBB-0001 OUI-BBBB-FFF2
OUI-BBBB-0002 OUI-BBBB-FFF2
OUI-BBBB-0003 OUI-BBBB-FFF2
.... ...
3.9.3 Contribution 3
The second change request that was adopted into the LoRaWAN backend
specification includes modifying the subdomains for join and roaming from
lora-alliance.org to lorawan.net, thus separating the LoRa Web and DNS service.
3.9.4 Contribution 4
A third change request that was adopted into the LoRaWAN backend specifica-
tion consists of updating the DNS provisioning and resolution section to enable the
usage of any DNS resource record for OTAA and roaming functionalities. Before
the change request, the LoRaWAN backend specifications were normalized using a
NAPTR DNS resource record, which is considered quite complex (Explained in RFC
3401, 3402 & 3403) for operational purposes.
3.10. Conclusion 65
3.9.5 Contribution 5
We developed and provided a secure, automatized DNS provisioning platform
that could be used by the community. With a secured API key, any authorized user
can access the User Interface (UI) (via web or API). The UI enables authorized users
to do multiple operations (creation, modification, deletion) of only their data in the
DNS database.
While testing the UI with some LoRa Alliance community members, we encountered
operational issues such as validating that the data provisioned in the DNS is done by
the rightful owner. The need to validate the JoinEUI (an IEEE EUI-64 identifier pro-
visioned by the IEEE and has OUI in the IEEE EUI-64) with the IEEE OUI database,
were identified and implemented, thanks to the PoC. The implemented solution has
been provided as feedback to the LoRa Alliance, which could be integrated when
the DNS service operated by the LoRa Alliance is deployed.
3.10 Conclusion
Our objective with IoTRoam is to achieve the same service as cellular or Wi-Fi
roaming built on a global resolution and security infrastructure, namely the DNS
and PKI. We added a hard requirement that the infrastructure or technologies used
to achieve this vision should be viable, operationally feasible and could be integrated
into existing IoT infrastructures with minimum changes. To achieve our vision, we
followed the WBA guidelines for open roaming and satisfied the requirements out-
lined by employing open standards used on the Internet, such as DNS and PKI.
We chose LoRaWAN, an evolving standard, and demonstrated that seamless IoT
roaming with minimum prior configuration is possible using the IoTRoam architec-
ture. In this process, we have deployed a PoC and provided all necessary building
blocks (documentation, software, UI, video tutorial) so that each one in the commu-
nity could make use of them to implement his own network.
This experience has also helped us to propose three Change Requests that have been
adopted into the LoRaWAN Backend Interface Specification. The first one includes
the possibility of using any DNS resource record ED activation and roaming func-
tionalities. The second is creating a combination of the DevEUI (which is unique
for each ED) and JoinEUI and provision them in the DNS. This solution was pro-
posed to resolve the device manufacturer’s issue of providing the ED’s configured
in the same batch with same the JoinEUI and different DevEUI to be sold to different
buyers. The third includes modifying the domain names for join and roaming from
lora-alliance.org to lorawan.net, thus segregating the LoRa Alliance Web and DNS ser-
vice.
The IoTRoam initiative was advertized through various press releases and with aca-
demic partners. We discussed running interoperable testing using the federated
platform with several institutions in France, Denmark, and Italy. We also discussed
with network operators to run experiments with massive public network infrastruc-
tures. Running additional tests with these institutions would help us study the im-
pact of heterogeneous backend infrastructures and their effect on the quality of the
communication channel. It would also allow us to gather additional data on the
impact of DNS complete resolution on the LoRaWAN/IoT traffic.
66 Chapter 3. IoTRoam, an IoT roaming federation
Chapter 4
TABLE 4.1: Max Frame size from the main LPWANs technologies
68 Chapter 4. DNS-based dynamic context resolution for SCHC
rule defined in the context. When an ED receives a SCHC compressed packet, the
reverse operation is realized to build the IP header back, allowing the applications
to communicate on the network without considering the underlying IoT specificities.
To prove the operational feasibility of SCHC, members of the lpwan working group
at the IETF designed a PoC implementation called OpenSCHC ([323]). OpenSCHC
is a reference Python codebase for the SCHC protocol, which we used in our ex-
periments. SCHC works as follow: when sending data from the ED to its RG,
the SCHC context rules enable compression by suppressing redundant, superficial,
predictable or most used data inside an IPv6 header and replacing them with a Rule
Identifier (Rule ID) chosen in a given set of predefined rules. Among multiple rules
hosted on the devices, a single rule is selected to fit as precisely as possible to the
corresponding application that needs to transmit its data. All the rules associated
with a given ED are hosted on its corresponding backend to realize the opposite
operation and decompress the data received over the air.
Our interrogation regarding SCHC can be summarized as follow: SCHC is a protocol
built on static information. It relies on identical information stored on both the ED
and the network backend. This identical information, the context, usually consists of
multiple rules corresponding to the associated ED. When using SCHC, one element
from the backend is supposed to realize SCHC operation (compression, decompres-
sion, fragmentation, reassembly) for all associated EDs. Allowing the owner to host
his rules and to modify them quickly at a later date, storing only a piece of informa-
tion on either the RG, the NS or the AS such as the Rule Identifier or Version might
help to introduce more flexibility to the SCHC protocol and simplify the user’s main-
tenance. Also, storing all SCHC rules, considering they might be unique for each ED,
might introduce scalability issues to the system. We can consider around 20 rules per
ED when working with such rules, with thousands of EDs around a single antenna
and multiple antennae for a given server. LoRaWAN, built as a star of star topology,
is a good example where multiple RGs, each handling multiple EDs, can be con-
nected to a single NS. When considering hundreds of thousands of EDs around a
single server with up to 5 kb per context rule, we end up storing gigabytes of data
to enable SCHC on a given LoRaWAN infrastructure. Finally, considering SCHC’s
static design, building a system supporting both SCHC and roaming might prove
70 Chapter 4. DNS-based dynamic context resolution for SCHC
previous subsection and permit SCHC rules to be easily shared across the network,
for example, in a roaming context.
Fig. 4.2 presents such a context rule whereas the experimental testbed and its com-
ponents is described in 4.2.3.
In order to prevent synchronization issues, a frequent issue when working with con-
strained devices such as LPWAN-enabled devices, the delays are always measured
on either the ED (e.g. full round trip time) or the backend (e.g. DNS resolution)
For our experiments, we chose not to focus on transmitting the rules to the devices
over the air and considered that the rules would already be on the devices as the
current standard proposes it.
server on which the corresponding rule might be stored. An HTTP server is used to
store the rules themselves. The rules can be uniquely linked to the tuple (DevEUI,
RuleID). This tuple is constructed by extracting the DevEUI from the LoRa frame
and the RuleID using the first bits from the LoRa payload compressed by SCHC.
The AS stores the rules corresponding to the device under its coverage in a rules
cache for a set duration. The rules in the AS are indexed in a hash table. When the
AS receives data, it constructs the tuple (DevEUI, RuleID) as indicated above, then
uses the DNS to retrieve the hash of the corresponding rule and search for this rule
in its rules cache. If it is not found because it is a new tuple (DevEUI, RuleID), a
new rule must be stored in the cache, and the HTTP server where the rule is stored
is interrogated to get it. Then, the rule is inserted into the cache. Note that even
when a rule is present in the cache, the DNS is systematically queried because the
freshness of the information must be checked to ensure that the rule has not been
modified since its last cache insertion.
Finally, the data can be decompressed. Once the data are decompressed, the server
may send a response back depending on the application’s needs. Fig. 4.3 presents
the interactions between the AS, the DNS and the HTTP server in the case where a
new rule is needed.
• Scenario 2: The second measurement adds the SCHC mechanism for the com-
munication over LoRaWAN. The ED sends the data compressed using the
SCHC context, and the received data are decompressed using the same con-
text rule stored in a file locally on the AS. We measure t1 − t0 (cf. Fig. 4.5)
We also measure the AS Response Time t10 − t00 . The comparison with results
from Scenario 1 allows us to estimate the decompression time.
• Scenario 3: The third measurement is the key scenario of our study. It aims to
74 Chapter 4. DNS-based dynamic context resolution for SCHC
add the mechanism presented at the beginning of 4.2 and illustrated by Fig.
4.3 to provide the AS with the SCHC context that is stored in a remote server.
In this measurement, instead of using a locally stored context rule for decom-
pression, the AS is asked to download the context file from a remote HTTP
server with a request such as "HTTP GET myschcrules.net/DevEUI/RuleID".
We measure the total RTT t1 − t0, the AS Response Time t10 − t00 , the RTT of
the DNS query t100 − t000 and the RTT of the HTTP Request t1000 − t0000 (cf. Fig.
4.6)
• Scenario 4: In most cases, EDs will be static (e.g. water meters) and well known
by the AS, so their context rules will always be present in the AS cache of rules.
In this case, the DNS is still queried to check that there has been no change to
the rule, but there is no need to interrogate the HTTP server as the rule is still
present in the cache. The third measurement corresponds to this scenario. We
measure the total RTT t1 − t0, the AS Response Time t10 − t00 and the RTT of
the DNS Query t100 − t000 (cf. Fig. 4.7)
the data using the ChirpStack AS or subscribe to the MQTT broker hosted on the
NS to retrieve the data sent and decompress it based on the same context used for
decompression. The SCHC implementation used to decompress data is OpenSCHC
[323]. OpenSCHC is developed by the authors of the SCHC draft as a PoC. It serves
as the base reference for other SCHC implementations.
FiPy cards are Class A compliant devices as defined by the LoRa Standard [326];
hence they respect a strict emission/reception schedule. Our experimentation is
realized respecting the EU regulations on duty cycle, communicating in the EU 868
MHz frequency, and all communications are done using SF7 considering that, for our
experiment, it is the one we expect to include most constraints regarding latency. If
our system works without hindering RTT for SF7, it has no reason to hinder the RTT
for higher latency SF.
100%
80%
60%
40%
20%
0%
0,1 1 10
Time in ms
Application Server Response Time without decompression
Application Server Response Time with decompression
Fig. 4.9 shows the cumulative distribution functions of the Server-side Response
Time t10 − t00 for all the studied scenarios, thus including also context remote query-
ing for the non-local solutions (HTTP, DNS).
100%
80%
60%
40%
20%
0%
0,1 1 10 100 1000
Time in ms
Application Server Response Time without decompression
Application Server Response Time local context
Application Server Response Time http requested context
Application Server Response Time dns queried context
We observe that the order of magnitude of the AS Response Time is for the worst-
case (HTTP-base mechanism) around 0.6s.
Note that the DNS response time in our case (between 5 ms and 15 ms) is faster
than the usual DNS response time due to DNS caching [234] from our local net-
work’s DNS resolver. We keep interrogating our resolver with data already in its
DNS cache, so the DNS Response Time is cut down. This caching will remain in a
wide LoRa deployment, but considering the frequency with which the LoRa devices
are expected to communicate on the network, the cache will probably be emptied
from the necessary data.
In order to provide a more realistic model to study the influence of adding DNS
queries in an IoT system, we decided to gather additional data on DNS response
time. We used RIPE Atlas [327] which is a system that assists in performing Inter-
net measurements through a set of probes available all over the world. RIPE Atlas
is a global network of probes deployed under the scope of RIPE NCC. Its 12000
probes enable Internet connectivity testing throughout the globe, resources avail-
ability testing, and real-time measurements of the state of the Internet. RIPE Atlas
4.3. Experimental results 77
is a valuable and powerful tool for troubleshooting, monitoring, testing, and ex-
perimenting over the network. While most of the probes are in Europe, we realized
measurements asking for interrogations from all other continents (Oceania, Ameri-
cas, Asia and Africa) to test the responses for a single DNS query from multiple
locations worldwide. The measurements performed using RIPE Atlas allow us to
determine the DNS Response Time in a more realistic case, as it allows us to query
when the DNS cache is expired.
100%
80%
60%
40%
20%
0%
50 100 150 200 250 300 350 400
Time in ms
Fig. 4.10 provides a comparison between DNS response time for our DNS Queries
and DNS response time obtained through measurements from RIPE Atlas interro-
gations. According to this figure, DNS Response will be slower in a real case than
with our platform, but a time within 200ms is still in the margins with regards to
the response times we measured for our platform.
This observation is consistent with data from the literature, [234] provides additional
information regarding latency distribution through a study of the Massachusetts In-
stitute of Technology’s DNS resolver. In their study, DNS lookups range from a few
milliseconds (when accessing from the cache) up to 120 seconds, with most domains
resolved within a 1s timeframe (and 70% within 200ms). The study also provides ad-
ditional information linking latency to the number of referrals, with more referrals
linked to more lookups and thus more latency observed.
78 Chapter 4. DNS-based dynamic context resolution for SCHC
Our case can be correlated with their 1-referral resolution. In 2001, when the study
was realized, 60% of the resolutions were made within a 200 ms timeframe. Consid-
ering the evolution of DNS deployments, such as the deployment for massive DNS
resolvers such as Google’s or Cloudflare’s, and the improvements linked to the host-
ing of DNS zones, such as the massive use of anycast and the development of cloud
technologies, a 200ms latency seems coherent.
This timeframe would be further increased with the use of newly developed DoT
or DoH, [255] and [256] provide insight by comparing the technologies through the
same tool as ours, RIPE Atlas probes. [255] concludes that DoT and DoH indeed
increase response time, an observation that can be linked to the use of TCP instead
of UDP and the additional cost from encryption. The tradeoff from this loss in re-
sponse time comes from securing and improving reliability when navigating the
Web. Our use case is fairly different from web navigation and does not necessar-
ily require additional encryption, thus relying on traditional DNS seems acceptable.
[256] provides additional information regarding DoT resolution with RTTs around
15ms for traditional DNS resolution and RTTs over 100ms for DoT use. Securing
DNS resolution with DoT seems to come with a 100ms tradeoff.
100%
80%
60%
40%
20%
0%
3800 3900 4000 4100 4200 4300 4400 4500
Time in ms
No Decompression HTTP Request
Local Decompression DNS Query
F IGURE 4.11: Cumulative distribution function of the RTT t1 − t0 (in
%) against time in ms for all scenarios (all the curves are the super-
posed)
Fig. 4.11 presents the measured U-RTT (From ED to AS, then back to ED) t1 − t0. We
measure at least about 4s for 99% of the packets transmitted through our platform
for all the studied scenarios. Considering the case of LoRa Class A devices [326], a
downlink frame from the RG can only be sent during a given time interval called "re-
ceive window" (cf. [328] & Fig. 4.12). The RG implementation we are working with
4.3. Experimental results 79
does not allow a frame to be transmitted to the device unless it has been en-queued
before the RG receives an uplink frame from the device (cf. Fig. 4.6). The last receive
window is opened two seconds after the last uplink frame has been transmitted. It
lasts twice the transmission time, which depends on the SF. In our case, we use SF7
and our transmission time is around 100ms. For the majority of our measurements,
our total measured RTT is around 4.2s, as illustrated in Fig. 4.13. Note that we use
the OpenSource ChirpStack implementation, the reference solution for LoRaWAN
OpenSource deployments. We would expect the same behaviour for class B devices,
whereas Class C would allow an immediate response and a shorter RTT.
4.4 Conclusion
SCHC can efficiently compress headers from the 44-octets IPv6+CoAP header
down to a few octets, which leads to reduce header size up to a 22-factor and en-
able the use of IPv6 over networks that would be unable to support it, such as Sig-
Fox and its 29 octets frame or LoRaWAN which ranges from 59 octets to 250 octets.
Using SCHC to send IPv6 packets over LPWAN is proven to be an efficient way
to account for the scarcity of radio resources. SCHC is also able to work within
a reliable timeframe. Querying time within a large database was not studied and
would need additional data regarding actual SCHC usage on LPWAN to provide
interesting insight, but when working with a few devices, SCHC can decompress
data consistently with a few microseconds; an operation that is almost transparent
with regards to other mechanisms specific to LPWAN, such as LoRaWAN’s recep-
tion delays.
In our experiment, we deployed all the components of a LoRaWAN infrastructure in
order to build a SCHC-enabled LoRa network. Because of the expected large number
of devices and the variety of possible things profiles, it seems necessary to envisage
a mechanism to retrieve SCHC context rules dynamically. DNS is a globally and
well-known system that is a fundamental stepping stone when designing a dynamic
system.
Thus our method proposes to accompany the SCHC mechanism with a context
querying system to support device mobility and network scalability. Using DNS,
one can query the context signature within a satisfying timeframe (between 30 and
100 milliseconds) and fall back onto the associated context storage API within 650
ms. In a best-case scenario, the 650 ms delay would be reduced furtherly by caching
the information; our Atlas probes measurements lead us to believe that using a DNS-
only mechanism and building a context cache would reduce the 650ms delay down
to tens of milliseconds. These results concerning the DNS-only system and its per-
formances are consistent with results measured in other studies. Such a mechanism
does not hinder the communication as it is kept under the delay of the first recep-
tion windows and benefits from the information caching should the answer need a
different SCHC rule. Should we need to respond to the device within the first recep-
tion window, we are left with around 350ms of data handling in the worst-case to
enqueue our response onto the RG.
Regarding LoRaWAN RTT, working with SF7 measurements, we only observe a 4.1s
mean RTT when considering the listening window used by the device to receive
communication from the RG. This observation is consistent for all scenarios and is
easily explained by the prevalence of the delay linked to data reception. We found
out that ChirpStack’s NS does not handle responding to the device after information
treatment unless we consider the Join procedure, which leads us to propose RTT
measurements based on sending two information within two successive transmis-
sion windows to acknowledge and respond to the data sent from the device.
Problems may arise considering upper-layer protocols such as CoAP. This question
was asked at the IETF by C. Gomez and J. Crowcroft in their draft RTO consider-
ations in LPWAN [328] for which the authors signal that "LoRaWAN policies may
lead to U-RTT up to 282 seconds in the worst-case" (SF12). SCHC should not hin-
der CoAP, as packet handling is done within a few microseconds. However, as our
mechanism may induce additional treatment up to 650 ms, additional measurements
linked to CoAP compression/decompression considering CoAP handling on top of
4.4. Conclusion 81
Chapter 5
5.1 Introduction
In the previous chapter, we’ve seen how SCHC improves LPWANs by offering
them interconnection with the rest of the Internet, circumventing the high con-
straints and notably the limited payload size. In LPWANs, traffic compressing is
of the utmost importance, our previous approach revolved around header com-
pression mechanisms, this chapter will dive into minimizing traffic by compressing
LoRaWAN traffic, more precisely by reducing its data payload, using a ML-based
compression scheme.
Many IoT applications consist of monitoring: power grid or water distribution net-
work metering, electric vehicle battery level monitoring, meteorological, tempera-
ture, or humidity monitoring. In most cases, the observed time series are highly
correlated and can be forecast easily unless unexpected events occur. Thus, it is
not necessary to transmit the data in most cases, but only of unexpected events.
With a good time-series predictor both on the sensor and on the network backend,
the data can be deduced at the backend without sensors transmissions. However,
if the sensor, using the same predictor, observes that the measured data is differ-
ent from the predictor’s forecast, if it notes an unexpected event, then the sensor
must send the data. With such a mechanism, we can avoid many transmissions and
produce highly compressed traffic. Our compression approach differs from usual
compression methods, based on pattern frequency analysis, as our studied compres-
sion proposal suppresses transmission entirely instead of compressing the payload.
However, those two approaches can be complementary, suppressing unnecessary
transmission and compressing the remaining transmission payload.
Our goal is precisely to test to what extent such an approach is well suited for IoT,
particularly in LoRaWAN. We want to observe the efficiency in network perfor-
mance (e.g. compression ratio) and power consumption since it is essential to save
the batteries of sensors that are expected to have a long life. We also want to test
whether our solution is feasible practically by setting up an experiment with actual
sensors.
Different predictors may be envisioned, but ML, particularly neural networks, is
well suited to model any repeated pattern. Here, we use an LSTM neural network
84 Chapter 5. Network traffic minimization based on Machine Learning predictors
(as described in [330] and Figure 5.2) for two scenarios: power production and con-
sumption metering and cellular base station load monitoring. We trained the neural
network model on a powerful computer, and then we injected the trained model
into the sensors. We measured the compression ratio and the sensor’s electric con-
sumption, considering the transmission and the computation cost. We run our ex-
periments with real measured data and LoRaWAN equipment.
This work also presents insights on LSTMs’ accuracy and how the device’s compres-
sion capabilities are impacted by LSTM accuracy.
In part 5.2, the related works are reviewed. Then, in part 5.3 we present our exper-
iment setup, tools and software, implementation choices and the walls we encoun-
tered. Lastly, in part 5.4, we present our results and discuss possible improvements
to the system. 5.6 sums up our experiments and conclusions.
number of samples that are required—below the Nyquist rate and still be able to re-
cover the signal (under appropriate conditions) perfectly. This framework suggests
compressing the data while sensing it; hence the name compressed sensing. Never-
theless, on the one hand, compressed sensing reduces the number of measurements
and the sampling rate. However, on the other hand, it increases the computational
complexity of the signal recovery ([156]). The signal is recovered approximately by
solving a convex relaxation of a non-convex optimization problem. [134] proposes a
unified approach for compression and authentication of smart-meter reading in ad-
vanced metering infrastructure. In [133] an algorithm is designed which combines
the accuracy of standard lossless compression with the efficiency of a compressive
sensing framework. Given the sensor node battery state, the algorithm balances each
technique’s tradeoff and optimally selects the best compression mode by minimizing
reconstruction errors.
Recently, Neural network-based techniques entered the landscape of IoT data com-
pression techniques. In [144], data are compressed by their regression curve ob-
tained from a neural network. In [157], biomedical signals are compressed using
autoencoders. These neural networks are three-stage networks with the same input
and output dimensions, while the hidden stage has a smaller dimension. Thus, the
first stage’s output has a reduced dimension compared to the input and constitutes
the compressed data.
Another part of transmission compression is header compression, recent work from
IETF develops possible ways to improve payload efficiency by compressing packet
headers such as ROHC [331], or SCHC [3].
Prediction methods are also used. Neural networks are known as universal function
approximators with the capability to learn arbitrarily complex mappings, and
in practice, show excellent performance in prediction tasks. In such context, a
sufficiently well trained neural network shows better results than more classic
approaches[332]. Thus, the authors of [147] train a RNN predictor followed by
encoding with a traditional arithmetic coder block using the probabilities generated
by the trained neural network. The decompression is performed symmetrically and
requires the trained model for arithmetic decoding. In [158] a prediction scheme
is implemented on cluster nodes and cluster heads to reduce data transmission. If
the measured data corresponds to the predicted one, it has not to be transmitted.
LSTMs are proposed to perform predictions. We decided to push the subject
further by implementing the algorithm directly on the sensors instead of relying on
simulation. Our PoC experiment aims to back these simulations or disprove them
should the system prove unreliable.
On the subject of traffic data prediction, some articles propose to use a similar ap-
proach using large LSTMs such as [333]. Their multi-feature approach allows them
to correlate data and obtain interesting results regarding traffic prediction. We hope
to obtain similar results with our curves as we work with network traffic. How-
ever, our approach differs in our decision to focus on the effect of predictions on
transmission: improvements to LSTM capabilities are out of our scope.
This approach was also tested with energy production forecasting. LSTMs are pre-
sented as a possible candidate for energy production forecasting in [334]; the solu-
tion seems adaptative enough for our approach to be reliable enough when using
LSTM as a forecasting tool, [335] validates this approach by comparing it to other
neural networks.
86 Chapter 5. Network traffic minimization based on Machine Learning predictors
Thus, many compression techniques appeared for many years. Nevertheless, if the
"classical" methods present efficient compression ratios, they do not avoid transmit-
ting data. Actually, periodically a sensor senses data, may compress it and then send
the compressed payload. Nevertheless, compressed data payloads (plus header) are
still sent. New neural network-based techniques appeared, and they avoid sending
data at all in some situations where the prediction is good, but to our knowledge,
they have not been tested with actual data and on real equipment. The goal of our
test is precisely to propose a validation in real conditions.
For this approach, the prediction algorithms used rely on the approach from[335].
We aim to have a reliable data prediction based on an LTSM neural network and
run the predictor on both the sensor and the network infrastructure. As we can ex-
pect prediction performance reliable within a 10% Mean Absolute Percentage Error
(MAPE) (equation 5.1), we might expect a complementary compression coefficient
up to 90% for our experiment. Such a compression ratio would allow us to build sen-
sor networks where each device consumes less bandwidth, thus further improving
the scalability of LPWANs solutions.
MAPE in this experiment was calculated as follow:
1 n Ci − Mi
MAPE = ∑ (5.1)
n i =1 Ci
5.3 Experiment
We embarked an LSTM algorithm similar to the ones studied in [158] and [335]
onto an electronic device as a way to test the experimental feasibility of these solu-
tions. These articles propose to use LSTMs that are sufficiently simple to be imple-
mented and embarked onto devices.
The devices used for this experiment are STM32L476 [336] as measurement and cal-
culation device which generates prediction data and compares it to measurements,
Semtech’s SX1276MB1MAS [337] as LoRa transmission board, and STM32 Nucleo
Expansion Board [338] to measure the energy consumption of LoRaWAN transmis-
sions.
The datasets we used are occupancy data of cellular base stations for the 1st dataset
and power consumption of a smart building for the 2nd one, in function of the time.
We used the 1st dataset for all experiments except for those presented Figure 5.5.
For these experiments, all experiment are realised with 16-bits operations except for
5.7 where 32-bit operations are realised through simulation in Python using the Ten-
sorFlow library and 8-bit operations are realised onto the device. All experiments
with fixed threshold are run on sensors with transmission minimisation and all vari-
able thresold are simulated.
5.3. Experiment 87
f t = σ (W f · [ h t − 1 , x t ] + b f ) (5.2)
where W f and b f are the weights for the forget gate, determined during training, and
h is the cell’s previous output (which can be a vector considering multiple hidden
cells in parallel).
Then we input new information into the memory by combining the sigmoïd input
gate with a cell candidate determination function input gate is
These operations flush part of the input information and select which part of the
data is to be kept as long term information by adding it to the amended previous
cell value.
The new cell state ct is determined by combining the previous cell state ct−1 , forget
gate output f t , input gate output it and cell candidate c̃t , and will pass onto the
following iteration of the LSTM. The associated operation based on the previous
variables is as follow:
Finally, the cell outputs its results by combining an output gate and the new cell
state:
ht serves as output to the system, and input to the next iteration for our calculation.
As mentioned above, EdgeImpulse did not support this kind of LSTM. By studying
the source code of the program generated by EdgeImpulse, we constated that the
basic library used to execute the ML algorithm was the TensorFlow Lite (TFLite)
[341] library. So, we built an mbed OS firmware that embarks the TFLite exported
neural network and transmits data based on the predictions but could not exploit
5.3. Experiment 89
the strength of the TFLite for microcontrollers library as the LSTM operations are
not supported yet.1
We trained our LSTM network with TensorFlow [342] and exported the LSTM
weights and parameters necessary to our implementations (weights, bias and
hidden layers’ state). We ported the LSTM code successfully onto basic STM32
boards. We injected the parameters into our own implementation of the LSTM
network, developed in C, and embarked the LSTM network directly on the sensor.
Our implementation is available following [343]. This implementation was built
thanks to the explanations from Christopher Olah [340], and the following tutorial
on weights and parameters extraction [344].
On the backend side, we monitor data reception and aggregate the data predicted
from the neural network on the infrastructure side with the data received from the
sensors, allowing us to plot on a graph the combination of the actual measured data,
for which we consider that the information is 100% reliable, and the predicted data
which was inferred by the neural network and not disproved by sensor transmis-
sion (which is reliable up to a certain threshold). The effect of this threshold will
also be studied. In this experiment, our LoRaWAN RG is accessible through SF7
communications and is a part of TheThingsNetwork [347] community LoRaWAN
Network. Figure 5.1 sums up our experimental setup and illustrates the various
hardware components we use.
Alongside this real experimental setup, we studied the effect of changing the sys-
tem’s variables through extensive simulations allowing us to shorten the experi-
mental exploration, find interesting parameters for our embedded experiment and
confront simulation results to experiments.
We also studied the system’s reliability. We defined the system’s reliability as the
MAPE of the data perceived by the backend compared to the real values. This re-
liability study investigates the consequences of a bounded lossy compression on
the values obtained at the system’s output. Our compression is lossy because the
data recorded by the backend is not the measured one but the predicted one as long
as the predicted one is within the tolerated threshold interval, and thus defining a
threshold means we study the tradeoff between accepting a given error on our data
and improving the compression ratio. Our compression is bounded because we set
it back to the actual data if the loss exceeds the given threshold.
With this experiment, we aim to evaluate:
• the energy cost added by the ML-based compression scheme at the device side;
• the energy saved on the transmission card thanks to data prediction;
• the compression ratio expected with regards to a given neural network size
and data prediction threshold;
• the bounded loss introduced by the solution compared to transmitting all val-
ues;
• the impact of quantizing the weights of the neural network predictor by run-
ning these experiments with quantized parameters instead of floating-point
numbers to improve neural network complexity, memory size and finally en-
ergy efficiency.
5.4. Discussion 91
F IGURE 5.3: Energy (in W) passing through the calculation card and
the transmission card (Sample)
5.4 Discussion
5.4.1 Energy
The comparison of the consumption of our cards (Table 5.1 & 5.2) shows a save of
around 40% on transmission cards. Considering IoT systems similar to our own with
measurements stating that calculation and transmission consume about the same,
this would represent savings of around 20% on both transmission and battery life.
Considering the card we are using, an LR6 battery with a 1200mAh charge would
power our device for around ten months without embedded ML calculations and
about a year with ML calculations.
Figure 5.3 presents the energy passing through both our network card and calcula-
tion card, measured using STM32CubeMonitor, which permits us to measure and
log instantaneous consumption for our device, in function of the time. The device
lifecycle follows a two-step routine. Most of the device’s life is spent in a sleeping
state with low energy consumption. Here in our illustration, the device’s sleeping
state is around 9s long to respect LoRaWAN’s duty cycle. The device will, exception-
ally or regularly, transmit data based on its measurements. Transmitting is the other
step in the routine. Transmissions translate in power consumption as three trans-
mission spikes corresponding to data emission and the opening of two LoRaWAN
92 Chapter 5. Network traffic minimization based on Machine Learning predictors
Figure 5.4 presents the MAPE and the Compression Ratio we can expect with re-
gards to the size of the neural network and the decision threshold. We observe that,
as expected, the compression ratio improves with the threshold but that the MAPE
worsens. The consequences of the number of hidden layers is not significant.
Experimenting with different datasets (Figure 5.5) show how the performances of
the neural network in its prediction greatly influence the quality of the compression
scheme. With a better overall MAPE, one might achieve around 60% compression
accepting as little as 1% error in its transmissions.
5.4. Discussion 93
The questions that come with these curves need to be addressed directly by the user.
A user with concern with precision will prefer a lower MAPE, thus obtaining a lower
compression ratio. If a user accepts a 1% error on its global data, setting its trans-
mission threshold around 8%, He would end up with a 30% compression ratio for
our first dataset and 85% compression ratio for the second one. Accepting more er-
rors would permit compression ratios up to 90%. We note that the compression ratio
is low with a strict threshold, but remember that contrary to classical compression
methods where at least a header is sent, no packet is sent with our method when we
compress. Thus, for a strict threshold of 10%, we decrease the overall traffic by one
packet over five (20%) while keeping a global error on our overall data around 2%.
5.4.4 Quantization
Figure 5.7 presents our backend-side time-series as a function of the time index,
combining calculated data and received measurements. The three curves on this
figure differ by the number of bits necessary to code the LSTM weights, hidden
layer parameters, cell state and input data. The dotted blue curve is obtained by
running the dual prediction algorithm in a Python simulated environment and op-
erating with 32-bits-encoded floats. The plain orange curve is obtained by directly
running the dual prediction algorithm on the device with an LSTM operating with
5.5. Storing and sharing ML weights 95
16-bits-encoded floats. The dash-dot green curve is obtained by directly running the
dual prediction algorithm on the device with an LSTM operating with quantized
parameters encoded on 8-bits integers.
Measurements of the compression ratio for the three above curves show no signifi-
cant degradation between the three systems (the compression ratio almost does not
change and remains around 70% for the three curves). 8-bit quantization is a well-
documented solution to reduce the operations’ complexity while working with neu-
ral networks on constrained devices. This also proves to be confirmed with our im-
plementation of LSTM. Efficient quantization is essential when working with Neu-
ral Networks; it reduces the complexity of the operations, which might, in turn,
allow for savings in processing power and battery life. Further works would be
necessary on quantization efficiency once the LSTM operation is ported to the TFLite
for microcontrollers library.
The LoRa modulation allows for such a communication solution as it can work with
mesh topologies. Using ML compressed communication would allow to upscale
LoRa mesh networks by limiting interferences between communicating devices.
However, how would a device transmit the details for its ML model to its peers?
We propose to learn the lessons from the DNS-SD paradigm in a dual connectivity
infrastructure to support the discovery and advertising of ML model within a given
local coverage.
In this case, a LoRa device would transmit its ML data to its peers as a service ad-
vertisement which would be saved by its peers to process its time series and follow
the variations from its parameters, increasing the knowledge of its peer within the
network.
In the case of a newly arrived device, the overall ML parameters could be forwarded
from the RG, which could serve as a DNS proxy as described in [273].
The ML parameters would need to be encoded as base-64 values, allowing for easier
transmission of the 8-bit quantified values instead of fitting to the 3-byte-per-value,
text-readable constraint from the DNS TXT record.
Additional information can also be advertized through DNS-SD, such as the nature
of the sensor, its version, its functionality, or listening cycle, making DNS-SD an
interesting candidate for weight advertising in mesh communications.
5.6 Conclusion
We built an experimental testbed to check the capabilities of on-boarding LSTM
algorithm on-sensor to forecast data, achieve dual prediction, and eventually com-
press data traffic and save energy. An LSTM algorithm was developed and inte-
grated into small, constrained hardware to obtain these results; its source code is
accessible following [343]. Our findings show that it can efficiently minimize traffic
while preventing non-relevant transmissions to occur with a significant impact on
energy consumption. We observed the impact of the neural network size and the
decision threshold on the compression ratio and the MAPE. Our system allows ef-
ficient compression while keeping the user within a reasonable error margin. It can
be customized depending on precision and compression tradeoff requirements. We
also check the impact of the quantization of the LSTM parameters because of device
constraints and decrease the algorithm’s complexity. We observed no significant
degradation in the system when using 8-bit quantization.
Compressing data with this kind of Bounded Lossy Compression allows to expend
battery lifetime depending on the accepted margin of error. Our results show an
excellent compression ratio compared to the state-of-the-art. Note that our scheme
avoids sending any data while classical compression mechanisms at least send a
frame header every time some compressed data is sent. Moreover, an extensive
energy consumption study proves that our algorithm saves an important energy
ratio that can be used in further communication.
Storing the ML weights in the DNS seems feasible once we run the number seem
possible. We presented three approach for storing and sharing the ML weights
98 Chapter 5. Network traffic minimization based on Machine Learning predictors
Chapter 6
Conclusion
roaming situations, without a direct and explicit roaming agreement (by intercon-
necting Network, Application and Join Servers between operators). The intercon-
nection agreement is implicitly given when the organization joins the IoTRoam fed-
eration.
By experimenting with LoRaWAN, our architecture proposes a solution that consid-
ers the constrained characteristics of IoT environments. Our approach to building
our roaming architecture was to use the combination of the DNS infrastructure and
a PKI to build a secure open roaming infrastructure accessible to public and private
LoRaWAN operators. We leverage the possibility to freely set up private LoRaWAN
networks. We designed, built and deployed a proof of concept architecture to test
the Roaming capabilities offered by the ChirpStack solution and test roaming be-
tween private and public LoRaWAN. The infrastructure was validated by testing
LoRaWAN connectivity for devices in a roaming context by studying various on-
boarding scenarios, measuring onboarding time and communication delays.
We studied the consequences of caching and prefetching DNS information with mo-
bile devices in a city through simulations of communications between mobile de-
vice and IoT infrastructure. DNS prefetching is an efficient tool to reduce on-the-fly
DNS queries necessary for devices communication. Prefetching the information on
nearby antennas can completely prevent DNS queries by performing them in ad-
vance around the closest antennas, but at a cost, as devices request more antennas,
especially in a highly mobile environment.
Our combination of an ML predictor and prefetching allow for an interesting reduc-
tion of DNS requests realized compared to a standard caching-only solution and a
reduction in the number of gateways realizing prefetching operation compared to
soliciting the closest nearby antennas. Using DNS allow us to exploit its strength as
a known distributed database solution to fill localized caches to provide information
as soon as needed as well as purge it through time when mobile devices leave the
antennas’ coverage.
Our simulations were realized within the frame of providing roaming connectivity
information to devices, but could be applicable when querying other information
necessary for device communication such as certificates stored with DANE, com-
pression parameters or any device specific information stored in the DNS such as
pointers to additional servers.
We built a viable and operationally feasible infrastructure that could be integrated
into existing IoT infrastructures with minimum changes. We followed the WBA
guidelines for open roaming and satisfied the requirements outlined by employing
open standards used on the Internet to achieve our vision. We deployed a PoC in-
frastructure and provided all the necessary building blocks so that the community
could make use of them. These experiments lead to three adopted Change Requests
after submission to the LoRa Alliance.
We discussed the IoTRoam initiative with several institutions to run interoperable
testing using the federated platform; running additional tests with these institutions
would help us study the impact of heterogeneous backend infrastructures and their
effect on the quality of the communication channel and would also allow us to gather
additional data on the impact of DNS complete resolution on the LoRaWAN/IoT
traffic. As the objective is to interconnect networks using different IoT technologies,
the next steps consist of testing roaming interoperability with NB-IoT, 5G or Wi-Fi.
For ED onboarding, we are also working on integrating DANE with DNSSEC since
Chapter 6. Conclusion 101
the certificate data itself can be stored in the DNS, possibly replacing or completing
the PKI.
Complementary to our work with interconnecting IoT infrastructure, we experi-
mented with SCHC remote rules management and sharing as a solution to improve
the scalability of LPWANs solutions. Providing a way to exchange rules informa-
tion between backend would offer new possibilities to provide more flexibility to the
network, thus improving the flexibility of IoT solutions in contexts such as roaming
devices. The proposed mechanism exploits the DNS infrastructure as a solution to
leverage DNS performances and improve rules querying capabilities within the net-
work. Unfortunately, rules are too heavy to be embedded directly as DNS Resource
Records; thus, a fallback mechanism was designed based on APIs and exploit DNS
caching mechanism to store rules identifiers and version numbers. DNS, as an opti-
mized, hierarchical and distributed database, could assist in identifying the location
of the server where the context rules are stored feasibly on the Internet. Hopefully,
using such a mechanism would allow for a seamless transition, from pre-configuring
the information needed on the backend to building it dynamically, on the fly, based
on actual needs when operating the network.
DNS would prove an efficient solution to introduce more flexibility and improve
scalability when using SCHC. Our solution would provide open access to SCHC
parameters as a way to support roaming capabilities. Improving SCHC flexibility,
scalability and assisting SCHC when a device is roaming are key considerations to
increase the technology’s adoption, and DNS might help by hosting rules outside the
scope of the ED’s associated backend without hindering the transmissions. To assist
with this problem, we deployed a dynamic context resolution architecture based on
DNS for SCHC compression/decompression and studied the consequences of such
mechanism on the system latency and other possible consequences on LoRaWAN
communications.
For this experiment, we built a SCHC-enabled LoRaWAN infrastructure. SCHC was
able to efficiently compress headers from the 44-octets IPv6+CoAP header down to
a few octets, which leads to reduce header size up to a 22-factor and enable the use
of IPv6 over networks that would be unable to support it, such as SigFox and its 29
octets frame or LoRaWAN which ranges from 59 octets to 250 octets. Using SCHC
to send IPv6 packets over LPWAN is proven to be an efficient way to consider the
scarcity of radio resources. SCHC is also able to work within a reliable timeframe.
Querying time within a huge database was not studied and would need additional
data regarding actual SCHC usage on LPWAN to provide interesting insight, but
when working with a few devices, SCHC can decompress data consistently with
a few microseconds; an operation that is almost transparent with regards to other
mechanisms specific to LPWAN, such as LoRaWAN’s reception delays.
By exploiting the DNS infrastructure, one can query the context signature within a
satisfying timeframe (between 30 and 100 milliseconds) and fall back onto the asso-
ciated context storage API within 650 ms. In a best-case scenario, the 650 ms delay
would be furtherly reduced by caching; our Atlas probes measurements lead us to
believe that using a DNS-only mechanism and building a context cache would lead
to reducing the 650ms delay down to tens of milliseconds. These results concerning
the DNS-only system and its performances are consistent with results measured in
other studies. Such a mechanism does not hinder the communication as it is kept
under the delay of the first reception windows and benefits from the information
caching should the answer need a different SCHC rule. Should we need to respond
102 Chapter 6. Conclusion
to the device within the first reception window, 350ms of data handling are left in
the worst-case to enqueue the response onto the RG.
Further work regarding the SCHC protocol would require additional data from the
actual use of the SCHC protocol. Studying SCHC uses would help to define the re-
search direction by putting them into contrast with the production issues introduced
by the protocol. Studying SCHC context rules outside their theoretical construction,
but rather based on actual rules used in production, would help further identify
eventual new constraints introduced by the protocol and define useful research di-
rection. Improving the compression capabilities of LPWANs is a crucial concern
for the technology. Reducing packet size reduces airtime, which is an efficient way
to improve the scalability of LPWAN solutions. Another solution to reduce air-
time of LPWANs transmissions is transmission minimization. Our approach with
transmission minimization is complementary to compressing header using SCHC.
SCHC relies on suppressing and optimizing predictable data within the transmis-
sion’s header. But what if the actual relevant data from the payload is predictable.
In this case, would it be possible to study transmission minimization paradigms in
which compressing communications would rely on predicting a device’s transmis-
sion payload and preventing its transmission if it is unnecessary?
We decide to further our approach regarding transmission efficiency by compress-
ing data. The easiest way to reduce data transmission is to delete redundancies
or to round them to near values. When working with sensors, data is often
time-correlated. For example, the temperature may vary slowly. Recently, Neural
network-based techniques entered the landscape of IoT data compression tech-
niques. Data can be compressed by their regression curve inferred from a neural
network. More complex prediction methods can also be used. Neural networks are
known as universal function approximators with the capability to learn arbitrarily
complex mappings, and in practice, show excellent performance in prediction tasks.
Nevertheless, if the "classical" methods present efficient compression ratios, they
do not avoid transmitting data. Actually, periodically a sensor senses data, may
compress it and then send the compressed payload, but compressed data payload
and its associated header are still sent.
New neural network-based techniques appeared, and they avoid sending data in
situations where the prediction is good. A neural network-based predictor is im-
plemented in the ED and also in the backend. If the sensed data is well predicted,
no data is sent, and the backend uses the prediction. Otherwise, it is sent. We ex-
perimented around these approaches by testing them in real experiments. Thus an
actual LSTM implementation was developed and embedded on sensors to back or
disprove the results obtained through simulations by the scientific community.
Our experiment studied the parameters to deploy such a neural network-based ap-
proach by experimenting with various use-cases such as varying the transmission
decision threshold, the size of the neural network and the number of digits neces-
sary to encode the weights and the variables. These parameters lead us to study the
subsequent compression ratio and error rate, the energy consumption of the algo-
rithm, the effect of quantization.
We built an experimental testbed to check the capabilities of onboarding LSTM algo-
rithm on-sensor to forecast data, achieve dual prediction, and eventually compress
data traffic and save energy. A deep LSTM algorithm was developed and integrated
into small, constrained hardware to obtain these results; its source code is accessible
Chapter 6. Conclusion 103
following [343]. Our findings show that it can efficiently minimize traffic while pre-
venting non-relevant transmissions to occur with a significant impact on energy con-
sumption. The overall system shows no significant impact from varying the neural
network size and studied the impact from the decision threshold on the compres-
sion ratio and the MAPE. Our system allows efficient compression while keeping
the user within a reasonable error margin. It can be customized depending on pre-
cision and compression trade-off requirements. The impact of the quantization of
the LSTM parameters is checked because of device constraints and also to decrease
the algorithm’s complexity. No significant degradations in the system are observed
when using 8-bit quantization. Our experiment shows that these machine learning
algorithms can be easily embarked onto EDs, their performances are not lacking,
and their storage size and energy consumption does not hinder the device’s usual
functioning.
Compressing data with this kind of Bounded Lossy Compression allows expand-
ing battery lifetime depending on the accepted margin of error. Our results show
an excellent compression ratio compared to the state-of-the-art. It is to note that
our scheme avoids sending any data, while classical compression mechanisms at
least send a frame header every time compressed data is sent. Moreover, these two
approaches are complementary, and data can be compressed using classical com-
pression mechanisms once the irrelevant information was suppressed. An exten-
sive energy consumption study proved that our algorithm saves a portion of the
device’s energy that can be used in further communication. We developed argu-
ments regarding ML weights storage capabilities for IoT infrastructure backed by
DNS approaches. Such a solution seem feasible with regards to the binary size of
the parameter file, but would require experimental work to back our assumptions
with numbers.
Further approach would consist of selecting multiple features on multiple values to
attain more precision in the calculation with a more complex recalibration. Works
are carried by contributing to the actual TensorFlow Lite community to propose a
complete port of the LSTM libraries from the global TensorFlow project to the Ten-
sorFlow Lite for microcontrollers community. Other works include studying the
maximum supported size for neural networks to further our knowledge of small
size neural networks and their performances.
In a nutshell, backing the DNS as a core service for interconnecting networks, host-
ing communication protocol rules to enhance IoT solution architecture in our dif-
ferent experimentation showed relevant results. We worked on building a roaming,
easy to use, federated infrastructure to interconnect LoRaWAN networks as a solu-
tion to improve interoperability between IoT infrastructure backed by the DNS. We
developed improvements to the SCHC protocol by hosting rules on the DNS infras-
tructure and allowing backend elements to query a global DNS zone that hosts the
rules IDs and version number. Finally, we developed a transmission minimization
algorithm by embedding a machine learning algorithm based on the LSTM algo-
rithm onto LPWANs sensors and studied its impact on the underlying data and
infrastructure. The results presented in this thesis show that the DNS, despite being
one of the oldest protocols used on the Internet, can propose relevant improvements
to infrastructure deployments and accompany new IoT use cases. The latest and on-
going work from the DNS community might assist in securing the aforementioned
applications, such as switching from classical DNS to its more secure, latest imple-
mentations, as well as confirm information authenticity or assist in service discovery
104 Chapter 6. Conclusion
Appendix A
Appendix B
B.1 Introduction
L’Internet des Objets (IdO ou Internet of Things, IoT) a évolué depuis cette pos-
sibilité théorique de connecter tous les appareils à un réel marché de biens et de
services en constante expansion. Les technologies sous-jacentes ont évolué et l’IoT
repose aujourd’hui sur de nombreuses technologies de communication différentes:
Des technologies à courte portée comme Bluetooth, moyenne portée comme Zigbee
ou longue portée comme la technologie LoRa (Long-Range).
Les systèmes de l’IoT sont habituellement construits autour d’infrastructures
fermées basées sur des systèmes en silo. Créer de l’interopérabilité entre ces
silos fermés est un enjeu pour certains cas d’usages cruciaux dans le déploiement
des technologies de l’IoT comme les villes intelligentes. Développer la problé-
matique au niveau applicatif est une première étape directement inspirée des
pratiques courantes en matière de collecte et d’analyse de données dans le cadre du
développement des technologies de traitement de données massives. Cependant,
construire des ponts au niveau réseau permettrait de faciliter l’interconnexion entre
infrastructures et faciliterait la transition fluide entre technologies de l’IoT afin
d’améliorer à bas coût la couverture réseau.
Le Système de Nom de Domaine (Domain Name System, DNS), initialement
développé pour traduire les noms, lisibles et compréhensibles par les utilisateurs en
adresses IP, utilisées par les appareils connectés, est reconnu comme un facilitateur
sur les question d’interopérabilité sur Internet. C’est l’un des systèmes les plus
anciens déployés sur Internet, développé à la fin des années 1980 pour supporter
la croissance des infrastructures d’Internet. Bien qu’ayant beaucoup évolué ces
dernières années, en témoignent les nombreuses propositions de modifications au
standard publié à son sujet, le DNS reste aujourd’hui l’une des infrastructures les
plus centrales du réseau Internet.
Le DNS repose sur des principes simples, mais son évolution depuis ses premiers
développements ont permis de construire des systèmes complexes grâce à ses nom-
breuses possibilités de configuration. Dans le cadre cette thèse, qui étudie les possi-
bles améliorations aux services et infrastructures de l’IoT, nous étudions la prob-
lématique suivante : Le DNS et son infrastructure peuvent-ils servir de support
efficace à l’évolution de l’IoT de la même manière qu’il a accompagné l’évolution
d’Internet ?
108 Appendix B. Résumé en français de la thèse
Ce manuscrit présente les travaux réalisés dans le cadre de la thèse de doctorat Con-
tributions à la résolution de problèmes de performances et d’interopérabilité des
réseaux IoT hétérogènes par l’utilisation du standard ouvert DNS et de services
d’infrastructure. Cette thèse est réalisée en collaboration entre Télécom SudParis et
l’Association Française pour le Nommage Internet en Coopération (AFNIC) dans le
cadre d’une convention CIFRE. La thèse vise à proposer de nouvelles utilisations de
l’infrastructures DNS permettant à celle-ci de servir de support aux diverses évo-
lutions de l’Internet des Objets et ses systèmes. L’infrastructure DNS étant une in-
frastructure répartie déployée partout dans le monde, résiliente, supportée par la
totalité des systèmes connectés à Internet et permettant aux utilisateurs d’Internet
un accès facilité à un ensemble de services, exploiter une telle infrastructure plutôt
que de redéployer des systèmes dédiés à l’Internet des Objets semble être une solu-
tion intéressante à considérer pour des usages étendus.
Dans cette optique, nous étudions de possibles améliorations de systèmes de l’IoT
sous trois angles. Nous testons tout d’abord un modèle d’itinérance pour réseaux
de l’Internet des Objets au travers de la construction d’une fédération reposant sur
l’infrastructure du DNS et ses extensions pour en assurer l’interopérabilité, la sécu-
rité de bout-en-bout et optimiser les communications entre infrastructures. Son ob-
jectif est de proposer des transitions fluides entre réseaux sur base d’informations
stockées à l’aide de l’infrastructure DNS. Nous explorons également les probléma-
tiques introduites par le DNS, notamment en termes de latence et d’influence sur les
temps de réponse des applications, et comment en limiter l’impact sur les échanges,
déjà grandement contraints, entre objet connecté et passerelle radio. Pour cela nous
étudions les conséquences de l’utilisation de requêtes DNS anticipées dans un con-
texte de mobilité en milieu urbain. Nous étudions ensuite la façon dont le Système
de Nom de Domaine peut renforcer l’interopérabilité, la disponibilité de ressources
et le passage à l’échelle de systèmes de compression de paquets de l’IoT. Enfin, nous
explorons la question de la minimisation de trafic en implantant des algorithmes
d’apprentissage sur des capteurs et en mesurant les paramètres du système final, en
particulier en terme de performances de transmissions et d’efficacité énergétique.
B.2. IoTRoam, une fédération supportant l’itinérance pour l’IoT 109
Dans la suite des tests de notre infrastructure, nous avons évalué les performances
du système d’itinérance en étudiant les conséquences de l’utilisation du DNS sur le
système de communication LoRaWAN.
Nous avons pour cela étudié trois scénarios pour nos mesures :
• Scénario 1: L’appareil est au sein de son réseau mais sans latence introduite
par le DNS ou l’infrastructure à clef publique.
• Scénario 2: L’appareil est au sein de son réseau mais les adresses du serveur
réseau et du serveur d’activation sont résolus par le DNS.
• Scénario 3: L’appareil est au sein d’un réseau visité, les adresses du serveur
réseau et du serveur d’activation d’origine sont résolus par le DNS et
l’infrastructure à clef publique est utilisée pour sécuriser le trafic.
Les courbes ci dessous (Figures B.3 et B.4) présentent la répartition cumulées des
temps d’activation et des délais aller-retour de communication pour nos appareils,
réalisés directement sur ces derniers
Nos mesures nous laissent à penser qu’introduire le système DNS et une infrastruc-
ture à clef publique dans le fonctionnement de LoRaWAN n’ajoute pas de délais
signifiants pouvant dégrader les communications. Notre système est configuré pour
vider le cache DNS entre chaque requête, aussi un infrastructure réelle profiterait
des bénéfices de celui-ci. Pour compléter cette étude nous avons également étudié
les conséquence du pré-chargement d’informations à l’aide du DNS pour les ap-
pareils mobiles.
112 Appendix B. Résumé en français de la thèse
Nous émettons l’hypothèse dans ce travail qu’il serait possible d’exploiter les mé-
canismes de base du pré-chargement d’information DNS pour récupérer les infor-
mations de connexion au niveau de serveurs embarqués dans des antennes.
La méthode de prévision associée peut être basée sur du provisionnement de prox-
imité, ou alors sur de la prédiction de trajectoire. Nous étudions ces deux approches
afin de comparer leurs forces et leurs faiblesses.
Nos scénarios IoTRoam introduisent deux requêtes DNS dans le processus de négo-
ciation de canal entre appareil mobile et serveur. Notre questionnement pour cette
partie est le suivant : "Est-il possible de réduire le délai introduit par nos requêtes
DNS dans un contexte de mobilité ?"
Nous basons nos travaux sur des traces de mobilité de véhicules dans la ville
de Rome. La figure B.5 illustre les traces étudiées en fonction de la position des
véhicules (latitude et longitude).
F IGURE B.6: répartition des sollicitations des caches entre les requêtes
transférées aux antennes pour les différents scénarios étudiés
Les résultats, présentés sur la figure B.6 sont satisfaisant. Une prédiction est réalisée
avec succès dans 70.4% des cas. Les requêtes au cache sur base d’échec de prédiction
(décalage temporel dans la position prédite) liées à notre mécanisme permettrait
également de supporter jusqu’à 86% des requêtes. Les 14% restants sont répartis
entre les requêtes au cache classique (11.4%) et des requêtes DNS complètes sans
pré-chargement (2.5%)
Nous avons également étudié la répartition de la sollicitation des antennes (Figure
B.7). Nous constatons que le prédicteur entraine une sollicitation d’antennes moins
importante que la distribution de proximité, mais plus que de ne pas réaliser de
pré-chargement.
Nous en concluons que le pré-chargement d’information à l’aide du DNS con-
stituerait une solution efficace capable de réduire les temps d’activation dans 86%
des situations rencontrées, il se trouve moins efficace que le système basé sur les
antennes de proximité mais plus qu’un système sans pré-chargement. Au niveau
du nombre d’antennes sollicité, le système basé sur le prédicteur de trajectoires
est cependant capable de réduire la charge en sollicitant moins d’antennes que le
prédicteur de proximité.
Des études additionnelles sur base d’autres positionnement d’antennes, étudiant
leur montée en charge ou étudiant d’autres traces de mobilité seraient intéressantes
pour compléter ce travail. Une telle application du pré-chargement d’informations
DNS est intéressante également dans le contexte de la récupération d’autres infor-
mations comme celles présentées en B.3 ou B.4.
B.3. Système de résolution de Contexte pour le protocole SCHC à l’aide du
115
protocole DNS
100%
80%
60%
40%
20%
0%
0,1 1 10 100 1000
Time in ms
Application Server Response Time without decompression
Application Server Response Time local context
Application Server Response Time http requested context
Application Server Response Time dns queried context
d’un cache pour le stockage des règles. Nous avons comparé les variations au niveau
de la latence du système due à l’ajout dans le processus de décompression SCHC
d’une requête DNS et d’une requête HTTP réalisée sur une API (Figure B.8). Cette
comparaison montre que les délais ajoutés sont acceptables au regard des délais du
protocole (par exemple les durées d’ouvertures des fenêtres illustrées figure B.9). En
utilisant le système DNS, un système déjà utilisé par de nombreux développeurs et
accessible mondialement, nous avons proposé un système de récupération distant
de règles SCHC permettant aux infrastructures LoRaWAN de récupérer de manière
dynamique les règles de compression et fragmentation SCHC. Ce mécanisme ajoute,
certes, un délai dans la communication dû au mécanisme de résolution DNS mais ce
délai est parfaitement acceptable si l’on prend en considération les règles de trans-
mission propres aux contraintes des appareils de classe A (Figure B.9) que toutes les
solutions à base de LoRaWAN sont obligées de supporter.
Cette étude a également permis d’étudier la latence induite par la compression
SCHC sur un système, en réalisant des mesures comparatives entre notre premier
scénario à compression statique et un scénario de test sans compression, ce qui
n’avait jamais été réalisé auparavant.
118 Appendix B. Résumé en français de la thèse
STM32 en le compilant depuis ses sources et en y ajoutant une solution pour trans-
mettre sur un réseau LoRaWAN à l’aide de notre carte de développement. La solu-
tion TensorFlow Lite nous permet de construire un réseau de neurones pré-entrainé
à l’aide de TensorFlow, puis d’extraire les poids nécessaires à son fonctionnement et
d’embarquer ces derniers dans un appareils contraint. Cependant, le réseau de neu-
rone, LSTM B.10, mis en œuvre dans le cadre de la génération de séries temporelles
n’est à ce jour pas supporté par TensorFlow Lite.
Une fois que nous avons mis en œuvre le réseau LSTM, nous avons embarqué notre
algorithme sur des cartes électroniques et mesuré leur consommation énergétique
ainsi que divers paramètres au niveau logiciel (nombre de neurones dans le réseau,
performances de compression, taux d’erreur, seuil de transmission et quantification
des poids).
Les courbes ci-dessous représentent les différentes mesures effectuées pour ce tra-
vail/ La figure B.11 présente la consommation énergétique de notre carte électron-
ique. On y observe des différences de consommation marquées entre repos et activ-
ité. On constate que lorsque nos opérations sont réalisées, on peut observer les pics
d’activités classiques pour la carte de transmission, ou aucun pic, correspondant à
une transmission évitée par notre algorithme. Dans le cas usuel, nous observerions
des pics de consommations réguliers pour nos deux cartes mais avec notre méth-
odes, ces pics sont complètement supprimés.
Les figures B.12a et B.12b présentent le MAPE (Mean Absolute Percentage Error,
Équation B.1) et le taux de compression observé pour nos algorithme selon différents
scénarios (variation dans le nombre de neurones ou dans le jeu de données étudié).
Nous n’observons pas de différence significative en fonction de la taille des réseaux
de neurones. Par contre, la figure B.12b nous montre l’importance du choix du jeu
de données dans la performance de l’algorithme de prédiction, et donc dans les con-
séquences de la compression et du taux d’erreur observé.
120 Appendix B. Résumé en français de la thèse
1 n Ci − Mi
MAPE = ∑ (B.1)
n i =1 Ci
Les figures suivantes (B.13a et B.13b) présentent un échantillon des données afin
d’illustrer un comparatif entre données ainsi que les conséquences de la quantifica-
tion.
La figure B.13a est illustrative, elle présente la courbe finale consolidée vue au niveau
du serveur déterminée en combinant les données calculées par le serveur et les don-
nées transmises par le capteur.
B.4. Réduction de trafic réseau assisté par Apprentissage Machine 121
Dans le cadre de cette expérience, nous nous demandons également si les poids
permettant la compression à l’aide d’un réseau de neurones peuvent être ajoutés au
DNS afin qu’ils soient résolus par les infrastructures et qu’ils puissent être facilement
partagés dans un contexte, par exemple, de mobilité des capteurs. La solution Ten-
sorFlow Lite, permettant d’extraire toutes les informations nécessaires au fonction-
nement d’un réseau de neurones en respectant les spécificités des objets contraints
(notamment la taille des structures de données), semble fournir les outils adaptés à
la réalisation d’une telle démarche.
Utiliser ainsi DNS serait aussi possible dans le cadre de modèles de réseaux de neu-
rones basés sur la classification, comme ceux utilisés par EdgeImpulse, ceux-ci ayant
un poids de quelques Ko. Cependant les modèles utilisés pour la prédiction étant
plus complexes, les poids en résultant le sont également, l’extraction de ceux-ci nous
laissant avec un fichier d’une centaine de Ko.
Stocker les poids de notre algorithme sur mesure serait cependant faisable. Le car-
actère statique de celui-ci enlevant une grande quantité d’information, assez lourde,
des données exportées par TensorFlow Lite. Nous détaillons dans ce manuscrit dif-
férents scénario de stockage de poids de réseaux de neurones dans le DNS suiv-
ant 3 paradigmes : Usage classique du DNS, utilisation combinée avec un système
de stockage plus conséquent ou exploitation des fonctionnalités DNS-SD en réseau
"mesh".
Nous avons, par ce travail, été en mesure de construire un banc de test expérimental
nous permettant de mesurer les performance de notre système de minimisation de
trafic IoT pour les réseaux de capteurs. Nos mesures montrent que le système est
capable de réduire de manière efficace le trafic observé, mais que cette efficacité est
122 Appendix B. Résumé en français de la thèse
relative au cas d’usage des utilisateurs. Nous avons étudié le sujet sous divers angles
comme le nombre de neurones dans le réseau, les performances de compression, le
taux d’erreur, le seuil de transmission et la quantification des poids du réseau.
Utiliser un tel system permettrait d’augmenter la durée de vie des batteries des cap-
teurs. Il faut également noter que notre mécanisme supprime complètement le trafic
réseau associé et peut donc être utilisé de manière complémentaire à d’autres mé-
canismes de compression basé sur l’analyse des données binaires transmises ou des
en-têtes.
B.5. Conclusions 123
B.5 Conclusions
Cette thèse a présenté diverses approches pour améliorer l’interopérabilité et les
performances des solutions IoT basées sur LoRaWAN en exploitant l’infrastructure
DNS existante comme terrain d’entente pour les développeurs d’applications et les
chercheurs. Le DNS est un protocole connu de la communauté Internet, avec di-
verses implémentations open-source pour les clients, les serveurs ou au sein de
frameworks. Des outils ont été déployés pour mesurer ses performances et moduler
son utilisation. Sa communauté est ouverte et propose de nouveaux cas d’usage et
des améliorations qui permettent de maintenir la communauté DNS à jour des nou-
veaux développements, protocoles et paradigmes réseau développés par le monde
industriel ou la communauté de recherche.
Au sein de l’écosystème IoT, LoRaWAN est flexible ; soutenu par une communauté
toujours plus importante d’acteurs industriels et une communauté académique
officielle nouvellement créée, l’Alliance LoRa et son protocole LoRaWAN se pose
comme un acteur majeur de l’écosystème IoT. Les évolutions issues des discussions
de l’Alliance LoRa sont suivies de près par les développeurs d’applications Lo-
RaWAN, puisque la pile LoRaWAN open-source de référence, ChirpStack, a connu
17 versions mineures et 1 version majeure au cours des 3 dernières années.
Les applications IoT rencontrent, avec leur dernier développement, les mêmes prob-
lèmes que les applications Internet. Les technologies IoT sont confrontées à des
problèmes d’évolutivité, d’interopérabilité, de mobilité et d’itinérance, d’efficacité
de transmission, de disponibilité, de fiabilité et d’autres problèmes de sécurité tels
que la confiance et la confidentialité. Le DNS contribue à résoudre nombre de ces
problèmes sur Internet, d’où notre interrogation sur les améliorations possibles des
systèmes IoT soutenus par l’infrastructure DNS.
Cette thèse a étudié les systèmes IoT en ce qui concerne les aspects clés suivants :
Le nommage, l’itinérance, la compression des en-têtes et la compression des don-
nées utiles. Cette étude ne visait pas à mettre en œuvre le protocole DNS sur les
capteurs mais plutôt à utiliser le DNS du côté de l’infrastructure pour soutenir les
améliorations de l’IoT. Cette thèse a présenté un travail expérimental sur LoRaWAN
concernant divers scénarios pour tester des solutions, des applications et des cas
d’utilisation IoT. Cette approche expérimentale a introduit des contraintes supplé-
mentaires telles que travailler avec des implémentations de référence des solutions,
générer un trafic IoT réel pour les mesures et l’analyse, respecter les contraintes de
temps d’antenne ou le cycle de vie des appareils.
L’expérimentation de l’itinérance nécessite un accord d’interconnexion entre les
opérateurs de réseau, généralement basé sur une interconnexion "One-to-One"
ou par la construction d’un "Hub" d’interconnexion. Nous avons exploité une
approche fédérée de l’interconnexion IoT en proposant l’architecture IoTRoam,
fédérant différentes organisations pour permettre une authentification et une
autorisation mutuelles flexibles entre n’importe quel élément de l’infrastructure
dans des situations d’itinérance, sans accord d’itinérance direct et explicite (en inter-
connectant les serveurs de réseau, d’application et de jointure entre les opérateurs).
L’accord d’interconnexion est implicitement donné lorsque l’organisation rejoint la
fédération IoTRoam.
124 Appendix B. Résumé en français de la thèse
Notre architecture propose une solution qui prend en compte les contraintes car-
actéristique des environnements IoT. Notre approche pour construire notre archi-
tecture d’itinérance a été d’utiliser la combinaison de l’infrastructure DNS et d’une
PKI pour construire une infrastructure d’itinérance ouverte sécurisée accessible aux
opérateurs LoRaWAN publics et privés. Nous tirons parti de la possibilité de créer
librement des réseaux LoRaWAN privés. Nous avons conçu, construit et déployé
une architecture de preuve de concept pour tester les capacités d’itinérance offertes
par la solution ChirpStack et tester l’itinérance entre les réseaux LoRaWAN privés
et publics. L’infrastructure a été validée en testant la connectivité LoRaWAN pour
les appareils dans un contexte d’itinérance en étudiant différents scénarios de con-
nexion, en mesurant le temps d’établissement de connexion et les délais de commu-
nication.
Nous avons étudié les conséquences de la mise en cache et du pré-chargement
d’informations DNS avec des appareils mobiles dans une ville par des simulations
de communications entre l’appareil mobile et l’infrastructure IoT. Le pré-chargement
DNS est un outil efficace pour réduire les requêtes DNS à la volée nécessaires à
la communication entre les appareils. Le pré-chargement des informations sur les
antennes proches peut complètement éviter les requêtes DNS en les exécutant à
l’avance autour des antennes les plus proches, mais cela a un coût, car les appareils
demandent plus d’antennes, surtout dans un environnement très mobile.
Notre combinaison d’un prédicteur ML et du pré-chargement permet une réduc-
tion intéressante des requêtes DNS réalisées par rapport à une solution standard
de mise en cache uniquement et une réduction du nombre de passerelles réalisant
l’opération de pré-chargement par rapport à la sollicitation des antennes les plus
proches. L’utilisation du DNS nous permet d’exploiter son positionnement en tant
que solution de base de données distribuée connue pour remplir des caches localisés
afin de fournir des informations dès que nécessaire et de les purger au fil du temps
lorsque les appareils mobiles quittent la couverture des antennes.
Nos simulations ont été réalisées dans le cadre de la fourniture d’informations
de connectivité itinérante aux dispositifs, mais pourraient être applicables lors de
l’interrogation d’autres informations nécessaires à la communication des dispositifs,
comme les certificats stockés avec DANE, les paramètres de compression ou toute
information spécifique au dispositif stockée dans le DNS.
Nous avons construit une infrastructure viable qui pourrait être intégrée dans les in-
frastructures IoT existantes avec un minimum de changements. Nous avons suivi les
directives de la WBA pour l’itinérance ouverte et satisfait aux exigences décrites en
employant des normes ouvertes utilisées sur Internet pour réaliser notre vision. Ces
expériences ont conduit à trois "Change Requests" adoptées après avoir été soumises
à l’Alliance LoRa.
Nous avons discuté de l’initiative IoTRoam avec plusieurs institutions afin
d’effectuer des tests d’interopérabilité à l’aide de la plateforme fédérée ; l’exécution
de tests supplémentaires avec ces institutions nous aiderait à étudier l’impact des
infrastructures hétérogènes et leur effet sur la qualité du canal de communication
et nous permettrait également de recueillir des données supplémentaires sur
l’impact de la résolution complète du DNS sur le trafic LoRaWAN. L’objectif étant
d’interconnecter des réseaux utilisant différentes technologies IoT, les prochaines
étapes consistent à tester l’interopérabilité de l’itinérance avec NB-IoT, 5G ou
Wi-Fi. Pour la connexion des appareils connectés, nous travaillons également à
B.5. Conclusions 125
ses performances sont cohérents avec les résultats mesurés dans d’autres études. Un
tel mécanisme n’entrave pas la communication car il est maintenu sous le délai des
premières fenêtres de réception et bénéficie de la mise en cache des informations si la
réponse nécessite une règle SCHC différente. Si nous devons répondre au dispositif
dans la première fenêtre de réception, il reste 350 ms de traitement des données dans
le pire des cas pour mettre la réponse en file d’attente sur la passerelle radio.
Des travaux supplémentaires concernant le protocole SCHC nécessiteraient des
données additionnelles provenant de l’utilisation réelle du protocole SCHC. L’étude
des utilisations de SCHC aiderait à définir l’orientation de la recherche en les
mettant en contraste avec les problèmes de production introduits par le protocole.
L’amélioration des capacités de compression des LPWANs est une préoccupation
cruciale pour cette technologie. La réduction de la taille des paquets permet de
réduire le temps d’occupation des antennes. Une autre solution pour réduire ces
délais d’occupation est la minimisation des transmissions. Notre approche de
la minimisation des transmissions est complémentaire aux autres méthodes de
compression.
Nous décidons d’approfondir notre travail sur l’amélioration dans l’efficacité de
transmission en compressant les données. La façon la plus simple de réduire la
transmission des données est de supprimer les redondances ou de les arrondir à des
valeurs proches. Or, lorsque l’on travaille avec des capteurs, les données sont sou-
vent corrélées dans le temps ; par exemple, la température peut varier lentement.
Récemment, les techniques basées sur les réseaux neuronaux ont été proposées pour
compresser les données de l’IoT. Les données peuvent par exemple être compressées
par leur courbe de régression déduite d’un réseau de neurone. Des méthodes de
prédiction plus complexes peuvent également être utilisées. Les réseaux de neurone
sont reconnus comme des approximateurs de fonctions universelles efficaces capa-
bles d’apprendre des motifs complexes et, en pratique, ils affichent d’excellentes
performances dans les tâches de prédiction. Néanmoins, si les méthodes "classiques"
présentent des taux de compression efficaces, elles n’évitent pas la transmission des
données. En effet, un capteur capte périodiquement des données, peut les com-
presser puis envoyer la charge utile compressée, mais la charge utile compressée et
son en-tête associée sont toujours envoyées.
De nouvelles techniques basées sur les réseaux neuronaux sont apparues, et elles
évitent d’envoyer des données dans les situations où la prédiction est bonne. Un
prédicteur basé sur un réseau de neurone est mis en œuvre dans l’appareil connecté
et également dans l’infrastructure applicative. Si les données détectées sont bien
prédites, aucune donnée n’est envoyée et l’application utilise la prédiction. Dans le
cas contraire, les données sont envoyées. Nous avons expérimenté ces approches en
les testant à l’aide d’expérimentations en situations réelles. Ainsi, une implémenta-
tion réelle de LSTM a été développée et embarquée sur des capteurs pour confirmer
ou infirmer les résultats obtenus par les simulations de la communauté scientifique.
Notre expérience a étudié les paramètres de déploiement d’une telle approche basée
sur un réseau de neurones en expérimentant divers cas d’utilisation tels que la vari-
ation du seuil de décision de transmission, la taille du réseau de neurones et le nom-
bre de bits nécessaires pour encoder les poids et les variables. Ces paramètres nous
amènent à étudier le taux de compression et le taux d’erreur, la consommation én-
ergétique de l’algorithme, l’effet de la quantification.
B.5. Conclusions 127
Nous avons construit un banc d’essai expérimental pour vérifier les capacités de
l’algorithme LSTM embarqué sur le capteur à prédire les données, réaliser une
double prédiction, et finalement compresser le trafic de données et économiser
de l’énergie. Un algorithme LSTM a été développé et intégré dans un appareil
contraint pour obtenir ces résultats ; son code source est accessible à l’adresse
suivante : [343]. Nos résultats montrent qu’il peut minimiser efficacement le trafic
tout en empêchant les transmissions non pertinentes de se produire avec un impact
significatif sur la consommation d’énergie. Le système global ne montre aucun
impact significatif de la variation de la taille du réseau de neurone et nous avons
pu étudier l’influence du seuil de décision sur le taux de compression et le MAPE.
Notre système permet une compression efficace tout en maintenant une marge
d’erreur raisonnable pour l’utilisateur. Il peut être personnalisé en fonction des
exigences de précision et de compression. L’impact de la quantification sur les
paramètres du LSTM a été étudié en raison des contraintes du dispositif et aussi
pour diminuer la complexité de l’algorithme. Aucune dégradation significative
du système n’est observée en utilisant une quantification 8-bits. Notre expérience
montre que ces algorithmes d’apprentissage automatique peuvent être facilement
embarqués sur des appareils connectés, que leurs performances ne font pas défaut
et que leur taille et leur consommation d’énergie n’entravent pas le fonctionnement
habituel de l’appareil.
La compression des données avec ce type de méthodes de compression avec pertes
bornées permet d’étendre la durée de vie de la batterie en fonction de la marge
d’erreur acceptée. Nos résultats montrent un excellent taux de compression par rap-
port à l’état de l’art. Il est à noter que notre schéma évite d’envoyer toute donnée,
alors que les mécanismes de compression classiques envoient au moins un en-tête de
trame à chaque fois que des données compressées sont envoyées. De plus, ces deux
approches sont complémentaires, et les données peuvent être compressées à l’aide
des mécanismes de compression classiques une fois que les informations non per-
tinentes ont été supprimées. Une étude approfondie de la consommation d’énergie
a prouvé que notre algorithme économise une partie de l’énergie du dispositif qui
peut être utilisée pour d’autres communications. Nous avons développé des argu-
ments concernant les capacités de stockage de poids ML pour les infrastructures
IoT soutenues par des approches DNS. Une telle solution semble réalisable en ce qui
concerne la taille du fichier de paramètres, mais nécessiterait un travail expérimental
pour étayer nos hypothèses par des mesures chiffrées.
Une autre approche consisterait à sélectionner plusieurs caractéristiques sur
plusieurs valeurs pour atteindre une plus grande précision dans le calcul avec un
recalibrage plus complexe. Des travaux sont menés en contribuant à la commu-
nauté TensorFlow Lite actuelle pour proposer un portage complet des bibliothèques
LSTM du projet global TensorFlow vers la communauté TensorFlow Lite pour
microcontrôleurs. D’autres travaux incluent l’étude de la taille maximale supportée
pour les réseaux de neurones afin d’approfondir notre connaissance des réseaux de
neurones de petite taille et leurs performances.
En bref, l’utilisation du DNS comme service de base pour l’interconnexion des
réseaux, l’hébergement de règles de protocole de communication pour améliorer
l’architecture de la solution IoT dans nos différentes expérimentations ont montré
des résultats pertinents. Nous avons travaillé à la construction d’une infrastructure
d’itinérance, facile à utiliser et fédérée pour interconnecter les réseaux LoRaWAN
comme solution pour améliorer l’interopérabilité entre les infrastructures IoT
128 Appendix B. Résumé en français de la thèse
Bibliography
[1] How Many Things Are Currently Connected To The "Internet of Things" (IoT)?
https://www.forbes.com/sites/quora/2013/01/07/how- many- things-
are-currently-connected-to-the-internet-of-things-iot/. Jan. 2013.
[2] Susan Symington, William Polk, and Murugiah Souppaya. Trusted Internet of
Things (IoT) Device Network-Layer Onboarding and Lifecycle Management (Draft).
Sept. 2020. DOI: 10 . 6028 / NIST . CSWP . 09082020 - draft. URL: https : / /
nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.09082020-draft.pdf.
[3] A. Minaburo et al. “SCHC: Generic Framework for Static Context Header
Compression and Fragmentation - RFC 8724”. In: IETF lpwan working group
(Apr. 2020). https://www.rfc-editor.org/info/rfc8724. DOI: 10.17487/
RFC8724.
[4] Wael Ayoub et al. “SCHC-Based Solution for Roaming in LoRaWAN”. In:
International Conference on Broadband and Wireless Computing, Communication
and Applications. Springer. Nov. 2019, pp. 162–172. DOI: 10.1007/978-3-030-
33506-9_15.
[5] S. Cheshire and M. Krochmal. “DNS-Based Service Discovery - RFC 6763”.
In: IETF Independant RFC (Feb. 2013). https://www.rfc-editor.org/info/
rfc6763. DOI: 10.17487/RFC6763.
[6] IoT use-case: The Connected Cow! Yes, really. https://www.basvankaam.com/
2017/04/04/iot-use-case-the-connected-cow-yes-really/. Apr. 2017.
[7] Computer network naming scheme. https : / / en . wikipedia . org / wiki /
Computer_network_naming_scheme. 2021.
[8] K. Hubbard et al. “INTERNET REGISTRY IP ALLOCATION GUIDELINES
- RFC 2050”. In: IETF Legacy Historic RFC (Nov. 1996). https : / / www . rfc -
editor.org/info/rfc2050. DOI: 10.17487/RFC2050.
[9] P. Mockapetris. “Domain names - concepts and facilities - STD 13 - RFC 1034”.
In: IETF Legacy Internet Standard RFC (Nov. 1987). https://www.rfc-editor.
org/info/rfc1034. DOI: 10.17487/RFC1034.
[10] P. Mockapetris. “Domain names - implementation and specification - STD
13 - RFC 1035”. In: IETF Legacy Internet Standard RFC (Nov. 1987). https :
//www.rfc-editor.org/info/rfc1035. DOI: 10.17487/RFC1035.
[11] DINR - (DNS and Internet Naming Research Directions) Workshop. https : / /
ant.isi.edu/events/dinr2016/P/p72.pdf. Nov. 2016.
[12] J. Peterson. “Telephone Number Mapping (ENUM) Service Registration for
Presence Services - RFC 3953”. In: IETF enum working group (Jan. 2005). https:
//www.rfc-editor.org/info/rfc3953. DOI: 10.17487/RFC3953.
[13] Object Naming Service. https://www.gs1.org/sites/default/files/docs/
epc/ons_2_0_1-standard-20130131.pdf. 2013.
[14] Approximative number of websites. https : / / www . internetlivestats . com /
total-number-of-websites/. 2018.
130 Bibliography
IEEE International Conference on Big Data (Big Data). 2017, pp. 445–452. DOI:
10.1109/BigData.2017.8257956.
[30] Zhou Zhang et al. “RadixKV: A Memory Efficient and High Perfor-
mance Key-Value Store”. In: 2019 IEEE 21st International Conference
on High Performance Computing and Communications; IEEE 17th Interna-
tional Conference on Smart City; IEEE 5th International Conference on Data
Science and Systems (HPCC/SmartCity/DSS). 2019, pp. 2774–2781. DOI:
10.1109/HPCC/SmartCity/DSS.2019.00389.
[31] Yong Jin et al. “A Lightweight and Secure IoT Remote Monitoring Mecha-
nism Using DNS with Privacy Preservation”. In: 2019 16th IEEE Annual Con-
sumer Communications Networking Conference (CCNC). 2019, pp. 1–2. DOI: 10.
1109/CCNC.2019.8651860.
[32] Kefeng Feng et al. “L-Match: A Lightweight and Effective Subsequence
Matching Approach”. In: IEEE Access 8 (2020), pp. 71572–71583. DOI:
10.1109/ACCESS.2020.2987761.
[33] Jiaye Wu et al. “KV-Match: A Subsequence Matching Approach Supporting
Normalization and Time Warping”. In: 2019 IEEE 35th International Conference
on Data Engineering (ICDE). 2019, pp. 866–877. DOI: 10 . 1109 / ICDE . 2019 .
00082.
[34] Wenxi Zeng et al. “Monitoring Data Management Services on the Edge Using
Enhanced TSDBs”. In: 2019 IEEE 12th Conference on Service-Oriented Comput-
ing and Applications (SOCA). 2019, pp. 9–16. DOI: 10.1109/SOCA.2019.00010.
[35] Xiujun Wang et al. “Near-Optimal Data Structure for Approximate Range
Emptiness Problem in Information-Centric Internet of Things”. In: IEEE Ac-
cess 7 (2019), pp. 21857–21869. DOI: 10.1109/ACCESS.2019.2897154.
[36] Chuyang Gao, Shuai Zhao, and Bo Cheng. “Design and Implementation of
Real Time and History multi-view IoT trend Display and Control System”. In:
2019 IEEE 8th Joint International Information Technology and Artificial Intelligence
Conference (ITAIC). 2019, pp. 1078–1083. DOI: 10.1109/ITAIC.2019.8785795.
[37] Oluwaseun Bamgboye, Xiaodong Liu, and Peter Cruickshank. “Semantic
Stream Management Framework for Data Consistency in Smart Spaces”.
In: 2019 IEEE 43rd Annual Computer Software and Applications Conference
(COMPSAC). Vol. 2. 2019, pp. 85–90. DOI: 10.1109/COMPSAC.2019.10188.
[38] Shiqiang Li et al. “An Effective Spatio-Temporal Query Framework for Mas-
sive Trajectory Data in Urban Computing”. In: 2019 IEEE 25th International
Conference on Parallel and Distributed Systems (ICPADS). 2019, pp. 586–593.
DOI : 10.1109/ICPADS47876.2019.00089.
[39] Xingsheng Zhao et al. “A Road-Aware Spatial Mapping for Moving Objects”.
In: 2018 IEEE 37th International Performance Computing and Communications
Conference (IPCCC). 2018, pp. 1–8. DOI: 10.1109/PCCC.2018.8710770.
[40] Santosh Pattar et al. “Location-aware IoT Search Framework based on Data
Messaging and Aggregation Techniques”. In: 2019 Women Institute of Technol-
ogy Conference on Electrical and Computer Engineering (WITCON ECE). 2019,
pp. 138–145. DOI: 10.1109/WITCONECE48374.2019.9092903.
[41] Sungkwang Eom, Sangjin Shin, and Kyong-Ho Lee. “Spatiotemporal query
processing for semantic data stream”. In: Proceedings of the 2015 IEEE 9th In-
ternational Conference on Semantic Computing (IEEE ICSC 2015). 2015, pp. 290–
297. DOI: 10.1109/ICOSC.2015.7050822.
[42] Karim Fathallah, Mohamed Amine Abid, and Nejib Ben Hadj-Alouane.
“Routing Of Spatial Queries Over IOT Enabled Wireless Sensor Networks”.
132 Bibliography
[68] Sondes TITI, Hadda BEN ELHADJ, and Lamia CHAARI. “An ontology-
based healthcare monitoring system in the Internet of Things”. In: 2019 15th
International Wireless Communications Mobile Computing Conference (IWCMC).
2019, pp. 319–324. DOI: 10.1109/IWCMC.2019.8766510.
[69] Maria Ganzha et al. “Streaming semantic translations”. In: 2017 21st Inter-
national Conference on System Theory, Control and Computing (ICSTCC). 2017,
pp. 1–8. DOI: 10.1109/ICSTCC.2017.8107003.
[70] Yongrui Qin, Quan Z. Sheng, and Edward Curry. “Matching Over Linked
Data Streams in the Internet of Things”. In: IEEE Internet Computing 19.3
(2015), pp. 21–27. DOI: 10.1109/MIC.2015.29.
[71] Sara Bonfitto et al. “On the Bulk Ingestion of IoT Devices from Heterogeneous
IoT Brokers”. In: 2019 IEEE International Congress on Internet of Things (ICIOT).
July 2019, 189–195. DOI: 10.1109/ICIOT.2019.00039.
[72] Hani Ramadhan et al. “MusQ: A Multi-Store Query System for IoT Data Us-
ing a Datalog-Like Language”. In: IEEE Access 8 (2020), pp. 58032–58056. DOI:
10.1109/ACCESS.2020.2982472.
[73] Shanshan Wu et al. “Storage and retrieval of massive heterogeneous IoT data
based on hybrid storage”. In: 2017 13th International Conference on Natural
Computation, Fuzzy Systems and Knowledge Discovery (ICNC-FSKD). 2017,
pp. 2982–2987. DOI: 10.1109/FSKD.2017.8393258.
[74] Samir Berrani et al. “A Semantic Model for Service Description in the Internet
of Things”. In: 2018 International Conference on Smart Communications in Net-
work Technologies (SaCoNeT). 2018, pp. 49–54. DOI: 10.1109/SaCoNeT.2018.
8585679.
[75] Ruhan Dos Reis et al. “A Soft Real-Time Stream Reasoning Service for the
Internet of Things”. In: 2019 IEEE 13th International Conference on Semantic
Computing (ICSC). 2019, pp. 166–169. DOI: 10.1109/ICOSC.2019.8665668.
[76] Güngör Yıldırım and Yetkin Tatar. “Simplified Agent-Based Resource Shar-
ing Approach for WSN-WSN Interaction in IoT/CPS Projects”. In: IEEE Ac-
cess 6 (2018), pp. 78077–78091. DOI: 10.1109/ACCESS.2018.2884741.
[77] Fadi T. El-Hassan and Dan Ionescu. “Design and Implementation of a Hard-
ware Versatile Publish-Subscribe Architecture for the Internet of Things”. In:
IEEE Access 6 (2018), 31872–31890. ISSN: 2169-3536. DOI: 10 . 1109 / ACCESS .
2018.2842706.
[78] Duo Ding, Minbo Li, and Zhu Zhu. “Object Naming Service Supporting Het-
erogeneous Object Code Identification for IoT System”. In: 2018 IEEE 42nd
Annual Computer Software and Applications Conference (COMPSAC). Vol. 01.
July 2018, 545–554. DOI: 10.1109/COMPSAC.2018.00084.
[79] Willian T. Lunardi et al. “Context-based search engine for industrial IoT: Dis-
covery, search, selection, and usage of devices”. In: 2015 IEEE 20th Confer-
ence on Emerging Technologies Factory Automation (ETFA). 2015, pp. 1–8. DOI:
10.1109/ETFA.2015.7301477.
[80] Dimitrios Georgakopoulos et al. “Towards a RISC Framework for Efficient
Contextualisation in the IoT”. In: 2017 IEEE 37th International Conference on
Distributed Computing Systems (ICDCS). 2017, pp. 1993–1996. DOI: 10.1109/
ICDCS.2017.308.
[81] Alexey Medvedev et al. “Situation Modelling, Representation, and Querying
in Context-as-a-Service IoT Platform”. In: 2018 Global Internet of Things Sum-
mit (GIoTS). 2018, pp. 1–6. DOI: 10.1109/GIOTS.2018.8534571.
[82] Agung Prasetio, Sabriansyah Rizqika Akbar, and Bayu Priyambadha. “Im-
plementation of semantic system in the smart home lights device based on
Bibliography 135
[96] Maria Bermudez-Edo et al. “IoT-Lite: A Lightweight Semantic Model for the
Internet of Things”. In: 2016 Intl IEEE Conferences on Ubiquitous Intelligence
Computing, Advanced and Trusted Computing, Scalable Computing and Commu-
nications, Cloud and Big Data Computing, Internet of People, and Smart World
Congress (UIC/ATC/ScalCom/CBDCom/IoP/SmartWorld). July 2016, 90–97. DOI:
10.1109/UIC-ATC-ScalCom-CBDCom-IoP-SmartWorld.2016.0035.
[97] Charbel El Kaed et al. “SQenloT: Semantic query engine for industrial
Internet-of-Things gateways”. In: 2016 IEEE 3rd World Forum on Internet of
Things (WF-IoT). Dec. 2016, 204–209. DOI: 10.1109/WF-IoT.2016.7845468.
[98] Muhammad Shahzad and Anirudh Ganji. “IoTm: A Lightweight Framework
for Fine-Grained Measurements of IoT Performance Metrics”. In: 2018 IEEE
26th International Conference on Network Protocols (ICNP). 2018, pp. 12–22. DOI:
10.1109/ICNP.2018.00012.
[99] Jie Ding, Rui Wang, and Xiao Chen. “Performance modeling and evaluation
of real-time traffic status query for intelligent traffic systems”. In: 2016 22nd
Asia-Pacific Conference on Communications (APCC). 2016, pp. 238–242. DOI: 10.
1109/APCC.2016.7581503.
[100] Stefano Rinaldi et al. “Impact of Data Model on Performance of Time Series
Database for Internet of Things Applications”. In: 2019 IEEE International In-
strumentation and Measurement Technology Conference (I2MTC). 2019, pp. 1–6.
DOI : 10.1109/I2MTC.2019.8827164.
[101] Ji Li et al. “Approximate data aggregation in sensor equipped IoT networks”.
In: Tsinghua Science and Technology 25.1 (2020), pp. 44–55. DOI: 10.26599/TST.
2019.9010023.
[102] Lin-Ru Feng, Chuan-Ming Liu, and Chuan-Chi Lai. “Probabilistic reverse
nearest neighbors on uncertain data streams”. In: 2018 7th International Sym-
posium on Next Generation Electronics (ISNE). 2018, pp. 1–4. DOI: 10 . 1109 /
ISNE.2018.8394733.
[103] Isam Mashhour Al Jawarneh et al. “Spatial-Aware Approximate Big Data
Stream Processing”. In: 2019 IEEE Global Communications Conference (GLOBE-
COM). 2019, pp. 1–6. DOI: 10.1109/GLOBECOM38437.2019.9014291.
[104] Mingliu Liu et al. “Sensor Information Retrieval From Internet of Things:
Representation and Indexing”. In: IEEE Access 6 (2018), pp. 36509–36521. DOI:
10.1109/ACCESS.2018.2849865.
[105] Sobhan Jit Muni and Umamani Subudhi. “Selective Harmonic Elimination
in Single Phase Inverter using Artificial Neural Network”. In: 2018 Interna-
tional Conference on Applied Electromagnetics, Signal Processing and Communica-
tion (AESPC). Vol. 1. Oct. 2018, 1–6. DOI: 10.1109/AESPC44649.2018.9033365.
[106] Jianwen Ding and Dan Fan. “Edge Computing for Terminal Query Based on
IoT”. In: 2019 IEEE International Conference on Smart Internet of Things (Smar-
tIoT). 2019, pp. 70–76. DOI: 10.1109/SmartIoT.2019.00020.
[107] Yongheng Wang and Kening Cao. “Context-aware Complex Event Process-
ing for event cloud in Internet of Things”. In: 2012 International Conference
on Wireless Communications and Signal Processing (WCSP). 2012, pp. 1–6. DOI:
10.1109/WCSP.2012.6542861.
[108] Irfan Mehmood et al. “Efficient Image Recognition and Retrieval on
IoT-Assisted Energy-Constrained Platforms From Big Data Reposito-
ries”. In: IEEE Internet of Things Journal 6.6 (2019), pp. 9246–9255. DOI:
10.1109/JIOT.2019.2896151.
Bibliography 137
[109] Tae-Yeun Kim, Sang-Hyun Bae, and Young-Eun An. “Design of Smart Home
Implementation Within IoT Natural Language Interface”. In: IEEE Access 8
(2020), pp. 84929–84949. DOI: 10.1109/ACCESS.2020.2992512.
[110] Michele Nitti, Virginia Pilloni, and Daniele D. Giusto. “Searching the social
Internet of Things by exploiting object similarity”. In: 2016 IEEE 3rd World
Forum on Internet of Things (WF-IoT). 2016, pp. 371–376. DOI: 10 . 1109 / WF -
IoT.2016.7845506.
[111] Younggi Kim and Younghee Lee. “Automatic Generation of Social Relation-
ships between Internet of Things in Smart Home Using SDN-Based Home
Cloud”. In: 2015 IEEE 29th International Conference on Advanced Information
Networking and Applications Workshops. 2015, pp. 662–667. DOI: 10 . 1109 /
WAINA.2015.93.
[112] Chang-Su LEE et al. “Design and Implementation of Autonomous Collabo-
ration System of Smart Things using accumulated Experience knowledge”.
In: 2019 21st International Conference on Advanced Communication Technology
(ICACT). 2019, pp. 305–313. DOI: 10.23919/ICACT.2019.8701947.
[113] M Mazhar Rathore et al. “Exploiting real-time big data to empower smart
transportation using big graphs”. In: 2016 IEEE Region 10 Symposium (TEN-
SYMP). 2016, pp. 135–139. DOI: 10.1109/TENCONSpring.2016.7519392.
[114] Gaurav Tripathi, Bhawna Sharma, and Sonali Rajvanshi. “A combination of
Internet of Things (IoT) and graph database for future battlefield systems”.
In: 2017 International Conference on Computing, Communication and Automation
(ICCCA). 2017, pp. 1252–1257. DOI: 10.1109/CCAA.2017.8230010.
[115] Yuhai Zhao, Xiangjun Dong, and Ying Yin. “Effective and Efficient Dense
Subgraph Query in Large-Scale Social Internet of Things”. In: IEEE Trans-
actions on Industrial Informatics 16.4 (2020), pp. 2726–2736. DOI: 10.1109/TII.
2019.2955144.
[116] Anubha Jain, Trupti Padiya, and Minal Bhise. “Log based method for faster
IoT queries”. In: 2017 IEEE Region 10 Symposium (TENSYMP). 2017, pp. 1–4.
DOI : 10.1109/TENCONSpring.2017.8070066.
[117] Aaisha Makkar et al. “QAIR: Quality Assessment Scheme for Information Re-
trieval in IoT Infrastructures”. In: 2018 IEEE Global Communications Conference
(GLOBECOM). 2018, pp. 1–6. DOI: 10.1109/GLOCOM.2018.8647180.
[118] Dimitrios Georgakopoulos. “A Global IoT Device Discovery and Integration
Vision”. In: 2019 IEEE 5th International Conference on Collaboration and Internet
Computing (CIC). 2019, pp. 214–221. DOI: 10.1109/CIC48465.2019.00035.
[119] Hamza Baqa et al. “Semantic Smart Contracts for Blockchain-based Services
in the Internet of Things”. In: 2019 IEEE 18th International Symposium on Net-
work Computing and Applications (NCA). 2019, pp. 1–5. DOI: 10 . 1109 / NCA .
2019.8935016.
[120] A. Moon et al. “Lossy compression on IoT big data by exploiting spatiotem-
poral correlation”. In: 2017 IEEE High Performance Extreme Computing Confer-
ence (HPEC). Sept. 2017, pp. 1–7. DOI: 10.1109/HPEC.2017.8091030.
[121] A. Ukil et al. “Adaptive Sensor Data Compression in IoT systems: Sensor data
analytics based approach”. In: 2015 IEEE International Conference on Acous-
tics, Speech and Signal Processing (ICASSP). Apr. 2015, pp. 5515–5519. DOI:
10.1109/ICASSP.2015.7179026.
[122] S. Hamdan, A. Awaian, and S. Almajali. “Compression Techniques Used in
Iot: A Comparitive Study”. In: 2019 2nd International Conference on new Trends
in Computing Sciences (ICTCS). Oct. 2019, pp. 1–5. DOI: 10.1109/ICTCS.2019.
8923112.
138 Bibliography
[136] A. Iikubo and S. Lo. “Design of Power Saving Schemes for the IoT”. In: 2019
International Conference on Information Networking (ICOIN). Jan. 2019, pp. 316–
319. DOI: 10.1109/ICOIN.2019.8718179.
[137] C. J. Deepu, C. Heng, and Y. Lian. “A Hybrid Data Compression Scheme
for Power Reduction in Wireless Sensors for IoT”. In: IEEE Transactions on
Biomedical Circuits and Systems 11.2 (Apr. 2017), pp. 245–254. ISSN: 1940-9990.
DOI : 10.1109/TBCAS.2016.2591923.
[138] T. L. Le and M. Vo. “Lossless Data Compression Algorithm to Save Energy
in Wireless Sensor Network”. In: 2018 4th International Conference on Green
Technology and Sustainable Development (GTSD). Nov. 2018, pp. 597–600. DOI:
10.1109/GTSD.2018.8595614.
[139] M. Vecchio, R. Giaffreda, and F. Marcelloni. “Adaptive Lossless Entropy
Compressors for Tiny IoT Devices”. In: IEEE Transactions on Wireless
Communications 13.2 (Feb. 2014), pp. 1088–1100. ISSN: 1558-2248. DOI:
10.1109/TWC.2013.121813.130993.
[140] B. Browne, G. Giering, and P. Prestwich. “Pulse-Net: Dynamic Compression
of Convolutional Neural Networks”. In: 2019 IEEE 5th World Forum on Inter-
net of Things (WF-IoT). Apr. 2019, pp. 346–351. DOI: 10.1109/WF-IoT.2019.
8767300.
[141] A. Ukil, S. Bandyopadhyay, and A. Pal. “IoT Data Compression: Sensor-
Agnostic Approach”. In: 2015 Data Compression Conference. Apr. 2015,
pp. 303–312. DOI: 10.1109/DCC.2015.66.
[142] A. K. M. Al-Qurabat, C. Abou Jaoude, and A. K. Idrees. “Two Tier Data
Reduction Technique for Reducing Data Transmission in IoT Sensors”. In:
2019 15th International Wireless Communications Mobile Computing Conference
(IWCMC). June 2019, pp. 168–173. DOI: 10.1109/IWCMC.2019.8766590.
[143] O. Sarbishei. “Refined Lightweight Temporal Compression for Energy-
Efficient Sensor Data Streaming”. In: 2019 IEEE 5th World Forum on
Internet of Things (WF-IoT). Apr. 2019, pp. 550–553. DOI: 10 . 1109 / WF -
IoT.2019.8767351.
[144] J. Park, H. Park, and Y. Choi. “Data compression and prediction using ma-
chine learning for industrial IoT”. In: 2018 International Conference on Informa-
tion Networking (ICOIN). Jan. 2018, pp. 818–820. DOI: 10.1109/ICOIN.2018.
8343232.
[145] K. MATSUDA and M. KUBOTA. “Compound Compression Method for
Gathering Traffic of IoT/CPS Data”. In: 2019 IEEE 5th World Forum on
Internet of Things (WF-IoT). Apr. 2019, pp. 761–766. DOI: 10 . 1109 / WF -
IoT.2019.8767326.
[146] C. Hsu, Y. Fang, and F. Yu. “Content-Sensitive Data Compression for IoT
Streaming Services”. In: 2017 IEEE International Congress on Internet of Things
(ICIOT). June 2017, pp. 147–150. DOI: 10.1109/IEEE.ICIOT.2017.25.
[147] M. Goyal et al. “DeepZip: Lossless Data Compression Using Recurrent
Neural Networks”. In: 2019 Data Compression Conference (DCC). Mar. 2019,
pp. 575–575. DOI: 10.1109/DCC.2019.00087.
[148] Valentina Di Vincenzo, Martin Heusse, and Bernard Tourancheau. “Improv-
ing Downlink Scalability in LoRaWAN”. In: May 2019, pp. 1–7. DOI: 10.1109/
ICC.2019.8761157.
[149] Jessica Lin et al. “A Symbolic Representation of Time Series, with Implica-
tions for Streaming Algorithms”. In: Proceedings of the 8th ACM SIGMOD
Workshop on Research Issues in Data Mining and Knowledge Discovery. DMKD
’03. Association for Computing Machinery, 2003, 2–11. ISBN: 9781450374224.
140 Bibliography
[194] Michele Nitti et al. “A subjective model for trustworthiness evaluation in the
social Internet of Things”. In: 2012 IEEE 23rd International Symposium on Per-
sonal, Indoor and Mobile Radio Communications - (PIMRC). Sept. 2012, 18–23.
DOI : 10.1109/PIMRC.2012.6362662.
[195] Zhou Quan et al. “Trusted architecture for farmland wireless sensor net-
works”. In: 4th IEEE International Conference on Cloud Computing Technology
and Science Proceedings. Dec. 2012, 782–787. DOI: 10.1109/CloudCom.2012.
6427496.
[196] Fenye Bao and Ing-Ray Chen. “Trust management for the internet of things
and its application to service composition”. In: 2012 IEEE International Sympo-
sium on a World of Wireless, Mobile and Multimedia Networks (WoWMoM). June
2012, 1–6. DOI: 10.1109/WoWMoM.2012.6263792.
[197] Fenye Bao, Ing-Ray Chen, and Jia Guo. “Scalable, adaptive and survivable
trust management for community of interest based Internet of Things sys-
tems”. In: 2013 IEEE Eleventh International Symposium on Autonomous Decen-
tralized Systems (ISADS). Mar. 2013, 1–7. DOI: 10.1109/ISADS.2013.6513398.
[198] Dennis Gessner et al. “Trustworthy Infrastructure Services for a Secure and
Privacy-Respecting Internet of Things”. In: 2012 IEEE 11th International Con-
ference on Trust, Security and Privacy in Computing and Communications. June
2012, 998–1003. DOI: 10.1109/TrustCom.2012.286.
[199] Zheng Yan, Peng Zhang, and Athanasios V. Vasilakos. “A survey on trust
management for Internet of Things”. In: Journal of Network and Computer Ap-
plications 42 (June 2014), 120–134. ISSN: 1084-8045. DOI: 10 . 1016 / j . jnca .
2014.01.014.
[200] Tigist Abera et al. “Invited - Things, trouble, trust: on building trust in
IoT systems”. In: Proceedings of the 53rd Annual Design Automation Con-
ference. DAC ’16. Association for Computing Machinery, June 2016, 1–6.
ISBN: 978-1-4503-4236-0. DOI : 10 . 1145 / 2897937 . 2905020. URL : https :
//doi.org/10.1145/2897937.2905020.
[201] Yi-Ting Chiang et al. “Secrecy of Two-Party Secure Computation”. In: Data
and Applications Security XIX. Ed. by Sushil Jajodia and Duminda Wijesekera.
Lecture Notes in Computer Science. Springer, 2005, 114–123. ISBN: 978-3-540-
31937-5. DOI: 10.1007/11535706_9.
[202] Georgios V. Lioudakis et al. “A Proxy for Privacy: the Discreet Box”. In: EU-
ROCON 2007 - The International Conference on “Computer as a Tool”. Sept. 2007,
966–973. DOI: 10.1109/EURCON.2007.4400521.
[203] Diego M. Mendez, Ioannis Papapanagiotou, and Baijian Yang. “Internet of
Things: Survey on Security and Privacy”. In: Information Security Journal: A
Global Perspective 27.3 (May 2018). arXiv: 1707.01879, 162–182. ISSN: 1939-
3555, 1939-3547. DOI: 10.1080/19393555.2018.1458258.
[204] Xin Huang et al. “User interactive Internet of things privacy preserved access
control”. In: 2012 International Conference for Internet Technology and Secured
Transactions. Dec. 2012, 597–602.
[205] Scott R. Peppet. Regulating the Internet of Things: First Steps Toward Manag-
ing Discrimination, Privacy, Security and Consent. ID 2409074. Mar. 2014. URL:
https://papers.ssrn.com/abstract=2409074.
[206] Sylvain Kubler, Kary Främling, and Andrea Buda. “A standardized approach
to deal with firewall and mobility policies in the IoT”. In: Pervasive and Mobile
Computing 20 (July 2015), 100–114. ISSN: 1574-1192. DOI: 10.1016/j.pmcj.
2014.09.005.
144 Bibliography
[219] Lorenzo Vangelista, Andrea Zanella, and Michele Zorzi. “Long-Range IoT
Technologies: The Dawn of LoRa™”. en. In: Future Access Enablers for Ubiqui-
tous and Intelligent Infrastructures. Ed. by Vladimir Atanasovski and Alberto
Leon-Garcia. Lecture Notes of the Institute for Computer Sciences, Social
Informatics and Telecommunications Engineering. Cham: Springer Interna-
tional Publishing, 2015, pp. 51–58. ISBN: 978-3-319-27072-2. DOI: 10 . 1007 /
978-3-319-27072-2_7.
[220] Lorenzo Vangelista and Marco Centenaro. “Worldwide Connectivity for the
Internet of Things Through LoRaWAN”. en. In: Future Internet 11.3 (Mar.
2019), p. 57. ISSN: 1999-5903. DOI: 10.3390/fi11030057. URL: https://www.
mdpi.com/1999-5903/11/3/57 (visited on 12/04/2019).
[221] Vartika Agarwal, Sachin Sharma, and Piyush Agarwal. “IoT Based Smart
Transport Management and Vehicle-to-Vehicle Communication System”. In:
Computer Networks, Big Data and IoT. Singapore: Springer Singapore, 2021,
pp. 709–716. ISBN: 978-981-16-0965-7.
[222] Andrzej Duda and Martin Heusse. “Spatial Issues in Modeling LoRaWAN
Capacity”. In: Proceedings of the 22nd International ACM Conference on Model-
ing, Analysis and Simulation of Wireless and Mobile Systems. MSWIM ’19. Miami
Beach, FL, USA: Association for Computing Machinery, Nov. 2019, pp. 191–
198. ISBN: 978-1-4503-6904-6. DOI: 10.1145/3345768.3355932. URL: https:
//doi.org/10.1145/3345768.3355932 (visited on 03/11/2020).
[223] Safwan M. Ghaleb et al. “Mobility management for IoT: a survey”. In:
EURASIP Journal on Wireless Communications and Networking 2016.1 (July
2016), p. 165. ISSN: 1687-1499. DOI: 10 . 1186 / s13638 - 016 - 0659 - 4. URL:
https://doi.org/10.1186/s13638-016-0659-4 (visited on 02/18/2020).
[224] Sameh Ben Fredj et al. “A Scalable IoT Service Search Based on Clustering
and Aggregation”. In: 2013 IEEE International Conference on Green Computing
and Communications and IEEE Internet of Things and IEEE Cyber, Physical and So-
cial Computing. ISSN: null. Aug. 2013, pp. 403–410. DOI: 10.1109/GreenCom-
iThings-CPSCom.2013.86.
[225] Sufyan Almajali et al. “A framework for efficient and secured mobility of IoT
devices in mobile edge computing”. In: 2018 Third International Conference on
Fog and Mobile Edge Computing (FMEC). ISSN: null. Apr. 2018, pp. 58–62. DOI:
10.1109/FMEC.2018.8364045.
[226] Akram Hakiri et al. “Publish/subscribe-enabled software defined network-
ing for efficient and scalable IoT communications”. In: IEEE Communications
Magazine 53.9 (Sept. 2015), pp. 48–54. ISSN: 1558-1896. DOI: 10.1109/MCOM.
2015.7263372.
[227] Jorge E. Luzuriaga et al. “Handling mobility in IoT applications using the
MQTT protocol”. In: 2015 Internet Technologies and Applications (ITA). ISSN:
null. Sept. 2015, pp. 245–250. DOI: 10.1109/ITechA.2015.7317403.
[228] Di Wu et al. “UbiFlow: Mobility management in urban-scale software de-
fined IoT”. In: 2015 IEEE Conference on Computer Communications (INFOCOM).
ISSN: 0743-166X. Apr. 2015, pp. 208–216. DOI: 10 . 1109 / INFOCOM . 2015 .
7218384.
[229] Samaresh Bera, Sudip Misra, and Mohammad S. Obaidat. “Mobility-Aware
Flow-Table Implementation in Software-Defined IoT”. In: 2016 IEEE Global
Communications Conference (GLOBECOM). ISSN: null. Dec. 2016, pp. 1–6. DOI:
10.1109/GLOCOM.2016.7841995.
[230] Maroua Meddeb et al. “AFIRM: Adaptive forwarding based link recovery for
mobility support in NDN/IoT networks”. en. In: Future Generation Computer
146 Bibliography
[244] P. Beertema. “Common DNS Data File Configuration Errors - RFC 1537”. In:
IETF dns working group (Oct. 1993). https://www.rfc- editor.org/info/
rfc1537. DOI: 10.17487/RFC1537.
[245] D. Barr. “Common DNS Operational and Configuration Errors - RFC 1912”.
In: IETF Legacy Informational RFC (Feb. 1996). https://www.rfc-editor.org/
info/rfc1912. DOI: 10.17487/RFC1912.
[246] B. Manning and P. Vixie. “Operational Criteria for Root Name Servers - RFC
2010”. In: IETF Legacy Informational RFC (Oct. 1996). https : / / www . rfc -
editor.org/info/rfc2010. DOI: 10.17487/RFC2010.
[247] M. Hamilton and R. Wright. “Use of DNS Aliases for Network Services - BCP
17 - RFC 2219”. In: IETF ids working group (Oct. 1997). https : / / www . rfc -
editor.org/info/rfc2219. DOI: 10.17487/RFC2219.
[248] Bert Hubert. DNS Camel Viewer. https://powerdns.org/dns-camel/. Aug.
2021.
[249] Bert Hubert. Herding the DNS Camel. https://www.ietf.org/blog/herding-
dns-camel/. Nov. 2018.
[250] Z. Hu et al. “Specification for DNS over Transport Layer Security (TLS) - RFC
7858”. In: IETF dprive working group (May 2016). https://www.rfc-editor.
org/info/rfc7858. DOI: 10.17487/RFC7858.
[251] T. Reddy, D. Wing, and P. Patil. “DNS over Datagram Transport Layer Se-
curity (DTLS) - RFC 8094”. In: IETF dprive working group (Feb. 2017). https:
//www.rfc-editor.org/info/rfc8094. DOI: 10.17487/RFC8094.
[252] S. Bortzmeyer. “DNS Privacy Considerations - RFC 7626”. In: IETF dprive
working group (Aug. 2015). https://www.rfc- editor.org/info/rfc7626.
DOI : 10.17487/RFC7626.
[253] P. Hoffman and P. McManus. “DNS Queries over HTTPS (DoH) - RFC 8484”.
In: IETF doh working group (Oct. 2018). https://www.rfc-editor.org/info/
rfc8484. DOI: 10.17487/RFC8484.
[254] Christian Huitema, Sara Dickinson, and Allison Mankin. “Specification of
DNS over Dedicated QUIC Connections - Draft”. In: IETF dprive working
group (July 2021). https : / / datatracker . ietf . org / doc / draft - ietf -
dprive-dnsoquic/03/.
[255] Austin Hounsel et al. “Comparing the Effects of DNS, DoT, and DoH on Web
Performance”. In: Proceedings of The Web Conference 2020. WWW ’20. Associ-
ation for Computing Machinery, Apr. 2020, 562–572. ISBN: 978-1-4503-7023-3.
DOI : 10.1145/3366423.3380139. URL : https://doi.org/10.1145/3366423.
3380139.
[256] Trinh Viet Doan, Irina Tsareva, and Vaibhav Bajpai. “Measuring DNS over
TLS from the Edge: Adoption, Reliability, and Response Times”. In: Passive
and Active Measurement. Ed. by Oliver Hohlfeld, Andra Lutu, and Dave Levin.
Vol. 12671. Lecture Notes in Computer Science. Springer International Pub-
lishing, 2021, 192–209. ISBN: 978-3-030-72581-5. DOI: 10.1007/978- 3- 030-
72582 - 2 _ 12. URL: https : / / link . springer . com / 10 . 1007 / 978 - 3 - 030 -
72582-2_12.
[257] R. Arends et al. “DNS Security Introduction and Requirements - RFC 4033”.
In: IETF dnsext working group (Mar. 2005). https://www.rfc- editor.org/
info/rfc4033. DOI: 10.17487/RFC4033.
[258] R. Arends et al. “Resource Records for the DNS Security Extensions - RFC
4034”. In: IETF dnsext working group (Mar. 2005). https://www.rfc-editor.
org/info/rfc4034. DOI: 10.17487/RFC4034.
148 Bibliography
[259] R. Arends et al. “Protocol Modifications for the DNS Security Extensions -
RFC 4035”. In: IETF dnsext working group (Mar. 2005). https : / / www . rfc -
editor.org/info/rfc4035. DOI: 10.17487/RFC4035.
[260] S. Josefsson. “Storing Certificates in the Domain Name System (DNS) - RFC
4398”. In: IETF dnsext working group (Mar. 2006). https://www.rfc-editor.
org/info/rfc4398. DOI: 10.17487/RFC4398.
[261] B. Laurie et al. “DNS Security (DNSSEC) Hashed Authenticated Denial of
Existence - RFC 5155”. In: IETF dnsext working group (Mar. 2008). https://
www.rfc-editor.org/info/rfc5155. DOI: 10.17487/RFC5155.
[262] P. Hoffman. “Cryptographic Algorithm Identifier Allocation for DNSSEC -
RFC 6014”. In: IETF dnsext working group (Nov. 2010). https : / / www . rfc -
editor.org/info/rfc6014. DOI: 10.17487/RFC6014.
[263] R. Barnes. “Use Cases and Requirements for DNS-Based Authentication of
Named Entities (DANE) - RFC 6394”. In: IETF dane working group (Oct. 2011).
https://www.rfc-editor.org/info/rfc6394. DOI: 10.17487/RFC6394.
[264] P. Hoffman and J. Schlyter. “The DNS-Based Authentication of Named Enti-
ties (DANE) Transport Layer Security (TLS) Protocol: TLSA - RFC 6698”. In:
IETF dane working group (Aug. 2012). https://www.rfc-editor.org/info/
rfc6698. DOI: 10.17487/RFC6698.
[265] O. Gudmundsson. “Adding Acronyms to Simplify Conversations about
DNS-Based Authentication of Named Entities (DANE) - RFC 7218”. In:
IETF dane working group (Apr. 2014). https://www.rfc- editor.org/info/
rfc7218. DOI: 10.17487/RFC7218.
[266] V. Dukhovni and W. Hardaker. “The DNS-Based Authentication of Named
Entities (DANE) Protocol: Updates and Operational Guidance - RFC 7671”.
In: IETF dane working group (Oct. 2015). https://www.rfc-editor.org/info/
rfc7671. DOI: 10.17487/RFC7671.
[267] V. Dukhovni and W. Hardaker. “SMTP Security via Opportunistic DNS-
Based Authentication of Named Entities (DANE) Transport Layer Security
(TLS) - RFC 7672”. In: IETF dane working group (Oct. 2015). https://www.rfc-
editor.org/info/rfc7672. DOI: 10.17487/RFC7672.
[268] T. Finch, M. Miller, and P. Saint-Andre. “Using DNS-Based Authentication of
Named Entities (DANE) TLSA Records with SRV Records - RFC 7673”. In:
IETF dane working group (Oct. 2015). https://www.rfc- editor.org/info/
rfc7673. DOI: 10.17487/RFC7673.
[269] P. Wouters. “DNS-Based Authentication of Named Entities (DANE) Bindings
for OpenPGP - RFC 7929”. In: IETF dane working group (Aug. 2016). https:
//www.rfc-editor.org/info/rfc7929. DOI: 10.17487/RFC7929.
[270] Extensions for Scalable DNS Service Discovery (dnssd) Working Group. https :
//datatracker.ietf.org/wg/dnssd/about/. 2021.
[271] Zero Configuration Networking (zeroconf) (Concluded Working Group). https :
//datatracker.ietf.org/wg/zeroconf/about/. 2005.
[272] T. Pusateri and S. Cheshire. “DNS Push Notifications - RFC 8765”. In: IETF
dnssd working group (June 2020). https : / / www . rfc - editor . org / info /
rfc8765. DOI: 10.17487/RFC8765.
[273] S. Cheshire. “Discovery Proxy for Multicast DNS-Based Service Discovery -
RFC 8766”. In: IETF dnssd working group (June 2020). https : / / www . rfc -
editor.org/info/rfc8766. DOI: 10.17487/RFC8766.
[274] K. Lynn et al. “Requirements for Scalable DNS-Based Service Discovery
(DNS-SD) / Multicast DNS (mDNS) Extensions - RFC 7558”. In: IETF dnssd
Bibliography 149
working group (July 2015). https : / / www . rfc - editor . org / info / rfc7558.
DOI : 10.17487/RFC7558.
[275] Sullivan, A. “Selecting Labels for Use with Conventional DNS and Other Res-
olution Systems in DNS-Based Service Discovery - RFC 8222”. In: IETF dnssd
working group (Sept. 2017). https://www.rfc- editor.org/info/rfc8222.
DOI : 10.17487/RFC8222.
[276] C. Huitema and D. Kaiser. “DNS-Based Service Discovery (DNS-SD) Privacy
and Security Requirements - RFC 8882”. In: IETF dnssd working group (Sept.
2020). https : / / www . rfc - editor . org / info / rfc8882. DOI: 10 . 17487 /
RFC8882.
[277] S. Cheshire, B. Aboba, and E. Guttman. “Dynamic Configuration of IPv4
Link-Local Addresses - RFC 3927”. In: IETF zeroconf working group (May 2005).
https://www.rfc-editor.org/info/rfc3927. DOI: 10.17487/RFC3927.
[278] Antonio J. Jara, Pedro Martinez-Julia, and Antonio Skarmeta. “Light-Weight
Multicast DNS and DNS-SD (lmDNS-SD): IPv6-Based Resource and Service
Discovery for the Web of Things”. In: 2012 Sixth International Conference on In-
novative Mobile and Internet Services in Ubiquitous Computing. IEEE, July 2012,
731–738. ISBN: 978-1-4673-1328-5. DOI: 10.1109/IMIS.2012.200. URL: http:
//ieeexplore.ieee.org/document/6296945/.
[279] Badis Djamaa and Mark Richardson. “Towards Scalable DNS-Based Service
Discovery for the Internet of Things”. In: Ubiquitous Computing and Ambient
Intelligence. Personalisation and User Adapted Services. Ed. by Ramón Hervás
et al. Lecture Notes in Computer Science. Springer International Publishing,
2014, 432–435. ISBN: 978-3-319-13102-3. DOI: 10 . 1007 / 978 - 3 - 319 - 13102 -
3_70.
[280] Milosh Stolikj et al. “Proxy support for service discovery using mDNS/DNS-
SD in low power networks”. In: Proceeding of IEEE International Symposium on
a World of Wireless, Mobile and Multimedia Networks 2014. June 2014, 1–6. DOI:
10.1109/WoWMoM.2014.6918925.
[281] Milosh Stolikj et al. “Context based service discovery in unmanaged net-
works using mDNS/DNS-SD”. In: 2016 IEEE International Conference on
Consumer Electronics (ICCE). Jan. 2016, 163–165. DOI: 10.1109/ICCE.2016.
7430565.
[282] Ahmed Ismail and Wolfgang Kastner. “Discovery in SOA-governed indus-
trial middleware with mDNS and DNS-SD”. In: 2016 IEEE 21st International
Conference on Emerging Technologies and Factory Automation (ETFA). Sept. 2016,
1–8. DOI: 10.1109/ETFA.2016.7733529.
[283] Daniel Kaiser et al. “User-Friendly, Versatile, and Efficient Multi-link DNS
Service Discovery”. In: 2016 IEEE 36th International Conference on Distributed
Computing Systems Workshops (ICDCSW). June 2016, 146–155. DOI: 10.1109/
ICDCSW.2016.34.
[284] Seokhwa Kim, Keuntae Lee, and Jaehoon Paul Jeong. “DNS naming services
for service discovery and remote control for Internet-of-Things devices”. In:
2017 International Conference on Information and Communication Technology Con-
vergence (ICTC). IEEE, Oct. 2017, 1156–1161. ISBN: 978-1-5090-4032-2. DOI: 10.
1109/ICTC.2017.8190884. URL: http://ieeexplore.ieee.org/document/
8190884/.
[285] Ronny Klauck. “Seamless Integration of Smart Objects into the Internet Using
XMPP and mDNS/DNS-SD”. In: (), p. 152.
150 Bibliography
[286] Wen Sun, Jiajia Liu, and Yanlin Yue. “AI-Enhanced Offloading in Edge Com-
puting: When Machine Learning Meets Industrial IoT”. In: IEEE Network 33.5
(Sept. 2019), 68–74. ISSN: 1558-156X. DOI: 10.1109/MNET.001.1800510.
[287] Seraphin B. Calo et al. “Edge computing architecture for applying AI to
IoT”. In: 2017 IEEE International Conference on Big Data (Big Data). Dec. 2017,
3012–3016. DOI: 10.1109/BigData.2017.8258272.
[288] He Li, Kaoru Ota, and Mianxiong Dong. “Learning IoT in Edge: Deep Learn-
ing for the Internet of Things with Edge Computing”. In: IEEE Network 32.1
(Jan. 2018), 96–101. ISSN: 1558-156X. DOI: 10.1109/MNET.2018.1700202.
[289] Zhihan Lv et al. “AI-enabled IoT-Edge Data Analytics for Connected Liv-
ing”. In: ACM Transactions on Internet Technology 21.4 (July 2021), 104:1–104:20.
ISSN : 1533-5399. DOI : 10.1145/3421510.
[290] Purnendu Shekhar Pandey. “Machine Learning and IoT for prediction and
detection of stress”. In: 2017 17th International Conference on Computational Sci-
ence and Its Applications (ICCSA). July 2017, 1–5. DOI: 10.1109/ICCSA.2017.
8000018.
[291] Dr. Sivaganesan D. “DESIGN AND DEVELOPMENT AI-ENABLED EDGE
COMPUTING FOR INTELLIGENT-IOT APPLICATIONS”. In: Journal of
Trends in Computer Science and Smart Technology 2019.02 (Dec. 2019), 84–94.
ISSN : 2582-4104. DOI : 10.36548/jtcsst.2019.2.002.
[292] Olivier Debauche et al. “A new Edge Architecture for AI-IoT services de-
ployment”. In: Procedia Computer Science. The 17th International Conference
on Mobile Systems and Pervasive Computing (MobiSPC),The 15th Interna-
tional Conference on Future Networks and Communications (FNC),The 10th
International Conference on Sustainable Energy Information Technology 175
(Jan. 2020), 10–19. ISSN: 1877-0509. DOI: 10.1016/j.procs.2020.07.006.
[293] Olivier Debauche et al. “Edge AI-IoT Pivot Irrigation, Plant Diseases, and
Pests Identification”. In: Procedia Computer Science. The 11th International
Conference on Emerging Ubiquitous Systems and Pervasive Networks
(EUSPN 2020) / The 10th International Conference on Current and Future
Trends of Information and Communication Technologies in Healthcare
(ICTH 2020) / Affiliated Workshops 177 (Jan. 2020), 40–48. ISSN: 1877-0509.
DOI : 10.1016/j.procs.2020.10.009.
[294] Francesco Piccialli et al. “A machine learning approach for IoT cultural data”.
In: Journal of Ambient Intelligence and Humanized Computing (Sept. 2019). ISSN:
1868-5145. DOI: 10.1007/s12652-019-01452-6. URL: https://doi.org/10.
1007/s12652-019-01452-6.
[295] Erwin Adi et al. “Machine learning and data analytics for the IoT”. In: Neural
Computing and Applications 32.20 (Oct. 2020), 16205–16233. ISSN: 1433-3058.
DOI : 10.1007/s00521-020-04874-y.
[296] Janice Cañedo and Anthony Skjellum. “Using machine learning to secure IoT
systems”. In: 2016 14th Annual Conference on Privacy, Security and Trust (PST).
Dec. 2016, 219–222. DOI: 10.1109/PST.2016.7906930.
[297] Liang Xiao et al. “IoT Security Techniques Based on Machine Learning: How
Do IoT Devices Use AI to Enhance Security?” In: IEEE Signal Processing Mag-
azine 35.5 (Sept. 2018), 41–49. ISSN: 1558-0792. DOI: 10 . 1109 / MSP . 2018 .
2825478.
[298] Ibrahim Alrashdi et al. “AD-IoT: Anomaly Detection of IoT Cyberattacks in
Smart City Using Machine Learning”. In: 2019 IEEE 9th Annual Computing and
Communication Workshop and Conference (CCWC). Jan. 2019, 0305–0310. DOI:
10.1109/CCWC.2019.8666450.
Bibliography 151
[299] Zhihan Lv et al. “AI-empowered IoT Security for Smart Cities”. In: ACM
Transactions on Internet Technology 21.4 (July 2021), 99:1–99:21. ISSN: 1533-5399.
DOI : 10.1145/3406115.
[300] Benjamin Sliwa, Nico Piatkowski, and Christian Wietfeld. “LIMITS:
Lightweight Machine Learning for IoT Systems with Resource Limitations”.
In: ICC 2020 - 2020 IEEE International Conference on Communications (ICC).
June 2020, 1–7. DOI: 10.1109/ICC40277.2020.9149180.
[301] M. Sethi, B. Sarikaya, and D. Garcia-Carrillo. “Secure IoT Bootstrapping: A
Survey”. In: IETF T2TRG Draft (2021). URL: https://tools.ietf.org/html/
draft-sarikaya-t2trg-sbootstrapping-11.
[302] IoT Onboarding Mail Archive discussion. https : / / mailarchive . ietf . org /
arch/browse/iot-onboarding/?gbt=1&index=XHSahBLvpUU8Sasvt77QLX43OhQ.
December 2019.
[303] LoRaWAN Backend Specifications. https : / / lora - alliance . org / sites /
default/files/2018-04/lorawantm_specification_-v1.1.pdf.
[304] Farrell, S., Ed. “Low-Power Wide Area Network (LPWAN) Overview - RFC
8376”. In: IETF lpwan working group (May 2018). https://www.rfc-editor.
org/info/rfc8376. DOI: 10.17487/RFC8376.
[305] Jansen Liando et al. “Known and UnknownFacts of LoRa: Experiences from
a Large-scale Measurement Study”. In: ACM Transactions on SensorNetworks
(2019). DOI: 10.1145/3293534.
[306] Eduroam Website. https://www.eduroam.org/.
[307] D. Eastlake 3rd. “Domain Name System Security Extensions - RFC 2535”. In:
IETF dnssec working group (Mar. 1999). https://www.rfc-editor.org/info/
rfc2535. DOI: 10.17487/RFC2535.
[308] E. M. Torroglosa-Garcia et al. “Enabling Roaming Across Heterogeneous
IoT Wireless Networks: LoRaWAN MEETS 5G”. In: IEEE Access 8 (2020),
pp. 103164–103180.
[309] OpenRoaming, Wireless Broadband Alliance. https : / / wballiance . com /
openroaming/. 2020.
[310] "IoT New Vertical Value Chains and Interoperability", Wireless Broadband Alliance
(WBA). https://www.wballiance.com/wp-content/uploads/2017/03/IoT-
New-Vertical-Value-Chains-and-Interoperability-v1.00.pdf. 2020.
[311] Alliance for Internet of Things Innovation (AIOTI). Identifiers in Internet
of Things. https : / / aioti . eu / wp - content / uploads / 2018 / 03 / AIOTI -
Identifiers_in_IoT-1_0.pdf.pdf. Feb. 2018.
[312] Haris Aftab et al. “Analysis of identifiers in IoT platforms”. In: Digital
Communications and Networks 6.3 (2020), pp. 333–340. ISSN: 2352-8648.
DOI : https : / / doi . org / 10 . 1016 / j . dcan . 2019 . 05 . 003. URL : https :
//www.sciencedirect.com/science/article/pii/S2352864818300671.
[313] GS1. EPC Tag Data Standard. https://www.gs1.org/sites/default/files/
docs/epc/GS1_EPC_TDS_i1_11.pdf.
[314] GSMA. EPS Roaming Guidelines Version 22.0. 2020. URL: \url{https://www.
gsma.com/newsroom/wp-content/uploads/IR.88-v22.0-2.pdf}.
[315] IoTRoam Proof of Concept. https://github.com/afnic/IoTRoam-Tutorial/.
2020.
[316] IoTRoam QuickStart Tutorial. https : / / github . com / AFNIC / IoTRoam -
Tutorial/blob/master/QuickStart.md.
[317] Video Afnic. https://iot.rd.nic.fr/Video/version3.mp4. 2020.
[318] Chirpstack Website. https://chirpstack.io. 2021.
152 Bibliography
[319] Kazunori Fujiwara, Akira Sato, and Kenichi Yoshida. “DNS Traffic Analysis
— CDN and the World IPv6 Launch”. In: Journal of Information Processing 21.3
(2013), 517–526. DOI: 10.2197/ipsjjip.21.517.
[320] Mark Allman. “Putting DNS in Context”. In: Proceedings of the ACM Internet
Measurement Conference. IMC ’20. Association for Computing Machinery, Oct.
2020, 309–316. ISBN: 978-1-4503-8138-3. DOI: 10.1145/3419394.3423659. URL:
https://doi.org/10.1145/3419394.3423659.
[321] DNS Prefetching - The Chromium Projects. http : / / www . chromium . org /
developers/design-documents/dns-prefetching..
[322] Acklio. IPv6 over IoT networks. https://www.ackl.io/technology/schc/.
Aug. 2021.
[323] OpenSCHC. https://openschc.github.io/openschc.
[324] Ali Ghodsi et al. “Information-centric networking: seeing the forest for the
trees”. In: Proceedings of the 10th ACM Workshop on Hot Topics in Networks -
HotNets ’11. ACM Press, 2011, 1–6. ISBN: 978-1-4503-1059-8. DOI: 10.1145/
2070562.2070563. URL: http://dl.acm.org/citation.cfm?doid=2070562.
2070563.
[325] Rehmat Ullah, Syed Hassan Ahmed, and Byung-Seo Kim. “Information-
Centric Networking With Edge Computing for IoT: Research Challenges and
Future Directions”. In: IEEE Access 6 (2018), 73465–73488. ISSN: 2169-3536.
DOI : 10.1109/ACCESS.2018.2884536.
[326] LoRa Alliance, Inc. LoRaWAN Specifications. https://lora- alliance.org/
about-lorawan. Oct. 2019.
[327] RIPE Atlas. https://atlas.ripe.net/. 2019.
[328] Carles Gomez and Jon Crowcroft. “RTO considerations in LPWAN”. In: IETF
lpwan working group (July 4, 2019). https://www.ietf.org/id/draft-gomez-
lpwan-rto-considerations-01.txt.
[329] Z. Shelby, K. Hartke, and C. Bormann. “The Constrained Application Pro-
tocol (CoAP) - RFC 7252”. In: IETF core working group (June 2014). https :
//www.rfc-editor.org/info/rfc7252. DOI: 10.17487/RFC7252.
[330] Sepp Hochreiter and Jürgen Schmidhuber. “Long Short-term Memory”. In:
Neural computation 9 (1997), pp. 1735–80. DOI: 10.1162/neco.1997.9.8.1735.
[331] C. Bormann et al. “RObust Header Compression (ROHC): Framework and
four profiles: RTP, UDP, ESP, and uncompressed - RFC 3095”. In: IETF lpwan
working group (July 2001). https : / / www . rfc - editor . org / info / rfc3095.
DOI : 10.17487/RFC3095.
[332] Akhil Kumar, Vithala R. Rao, and Harsh Soni. “An empirical comparison of
neural network and logistic regression models”. In: Marketing Letters 6.4 (Oct.
1995), 251–263. ISSN: 1573-059X. DOI: 10.1007/BF00996189.
[333] Zheng Zhao et al. “LSTM network: a deep learning approach for short-term
traffic forecast”. In: IET Intelligent Transport Systems 11.2 (2017), pp. 68–75.
[334] A. Gensler et al. “Deep Learning for solar power forecasting — An approach
using AutoEncoder and LSTM Neural Networks”. In: 2016 IEEE International
Conference on Systems, Man, and Cybernetics (SMC). 2016, pp. 002858–002865.
DOI : 10.1109/SMC.2016.7844673.
[335] Aicha Dridi et al. “An Artificial Intelligence Approach for Time Series Next
Generation Applications”. In: 2020, pp. 1–6. DOI: 10.1109/ICC40277.2020.
9148931.
[336] STM32L476 Microcontroller. https://www.st.com/en/microcontrollers-
microprocessors/stm32l476rg.html. 2021.
Bibliography 153
Titre : Contributions à la résolution de problèmes de performances et d’interopérabilité des réseaux IoT hétérogènes par
l’utilisation du standard ouvert DNS et de services d’infrastructure
Mots clés : Internet des Objets, DNS, Interoperability, Compression, Itinérance, Apprentissage Machine
Résumé : L’Internet des Objets (IdO) a évolué depuis cette possi- Le DNS repose sur des principes simples, mais son évolution
bilité théorique de connecter tous les appareils à un réel marché depuis ses premiers développements ont permis de construire
de biens et de services en constante expansion. Les techno- des systèmes complexes grâce à ses nombreuses possibilités
logies sous-jacentes ont évolué et l’IdO repose aujourd’hui sur de configuration. Dans le cadre cette thèse, qui étudie les pos-
de nombreuses technologies de communication différentes: Des sibles améliorations aux services et infrastructures de l’IdO, nous
technologies à courte portée comme Bluetooth, moyenne portée étudions la problématique suivante : Le DNS et son infrastructure
comme Zigbee ou longue portée comme la technologie LoRa peuvent-ils servir de support efficace à l’évolution de l’IdO de la
(Long-Range). même manière qu’il a accompagné l’évolution d’Internet ?
Les systèmes de l’IdO sont habituellement construits autour d’in- Dans cette optique, nous étudions de possibles améliorations de
frastructures fermées basées sur des systèmes en silo. Créer de systèmes de l’IdO sous trois angles. Nous testons tout d’abord un
l’interopérabilité entre ces silos fermés est un enjeu pour certains modèle d’itinérance pour réseaux de l’Internet des Objets au travers
cas d’usages cruciaux dans le déploiement des technologies de de la construction d’une fédération reposant sur l’infrastructure du
l’IdO comme les villes intelligentes. Développer la problématique DNS et ses extensions pour en assurer l’interopérabilité, la sécurité
au niveau applicatif est une première étape directement inspirée de bout-en-bout et optimiser les communications entre infrastruc-
des pratiques courantes en matière de collecte et d’analyse de tures. Son objectif est de proposer des transitions fluides entre
données dans le cadre du développement des technologies de réseaux sur base d’informations stockées à l’aide de l’infrastructure
traitement de données massives. Cependant, construire des ponts DNS. Nous explorons également les problématiques introduites par
au niveau réseau permettrait de faciliter l’interconnexion entre in- le DNS, notamment en termes de latence et d’influence sur les
frastructures et faciliterait la transition fluide entre technologies de temps de réponse des applications, et comment en limiter l’impact
l’IdO afin d’améliorer à bas coût la couverture réseau. sur les échanges, déjà grandement contraints, entre objet connecté
Le Système de Nom de Domaine (Domain Name System, et passerelle radio. Pour cela nous étudions les conséquences de
DNS), initialement développé pour traduire les noms, lisibles et l’utilisation de requêtes DNS anticipées dans un contexte de mo-
compréhensibles par les utilisateurs en adresses IP, utilisées par bilité en milieu urbain. Nous étudions ensuite comment le Système
les appareils connectés, est reconnu comme un facilitateur sur les de Nom de Domaine peut renforcer l’interopérabilité, la disponibilité
question d’interopérabilité sur Internet. C’est l’un des systèmes les de ressources et le passage à l’échelle de systèmes de compres-
plus anciens déployés sur Internet, développé à la fin des années sion de paquets de l’IdO. Enfin, nous explorons la question de la
1980 pour supporter la croissance de l’infrastructures Internet. Bien minimisation de trafic en implantant des algorithmes d’apprentis-
qu’ayant beaucoup évolué ces dernières années, en témoignent sage sur des capteurs et en mesurant les paramètres du système
les nombreuses propositions de modifications au standard publié final, en particulier en terme de performances de transmissions et
à son sujet, le DNS reste aujourd’hui l’une des infrastructures les d’efficacité énergétique.
plus centrales du réseau Internet.