for the IoT framework keywords in Google Scholar
returns them as prominent, so they are likely to be
representative of the state-of-the-art.
Some (Gelogo et al., 2015; Pasha and Shah, 2018)
concentrate on healthcare systems, a kind of appli-
cation with a remarkable social impact. It is go-
ing to gain momentum in the coming years, also be-
cause of the COVID-19 epidemic event. The term
of u-health is introduced (Gelogo et al., 2015) to in-
dicate the ubiquitous availability of medical assis-
tance. The system has three components: a Body
Area Network (BAN), made of networked sensors, an
Intelligent Medical System that filters data from the
BAN to identify emergency conditions, and an Hos-
pital System that manages patients data and takes care
of detected emergencies. Another paper on e-health
IoT systems (Pasha and Shah, 2018) reveals the role
of specific protocols for network management, high-
lighting the role played by those explicitly designed
for constrained devices. Both papers stress the im-
portance of security issues in e-health systems but fail
to outline a solution. The former announces a future
prototype implementation, while the second reports
about the network utilization obtained from a proto-
type implementation using the Contiki operating sys-
tem (Dunkels et al., 2004).
Security issues are the focus of other papers, also
applying to a blockchain system called EdgeChain
(Pan et al., 2019). Falling in the category of permis-
sioned blockchain systems, it is more suitable to IoT
systems, characterized by constrained devices. The
IoT framework contains specific modules in charge
of implementing the blockchain service (Ethereum)
as well as a mechanism for implementing smart con-
tracts that are useful to regulate access to computing
and networking resources. The paper is exhaustive
regarding the specific issue but disregarding the pres-
ence of constrained devices and energy-saving poli-
cies. The authors report an experimental testbed using
RaspberryPi 3 Model B as edge devices and a Cisco
3850 switch.
Smart-cities are another frequently found use case
for IoT systems. The provision of open-source results
is regarded as relevant in a paper from the Univer-
sity of Bologna (Calderoni et al., 2019), which pro-
vides a reference platform that is useful as a testbed
for smart-city prototypes. The platform integrates
the networking and application functionalities, giving
the designer full access to configuration details. The
paper discusses the details of security policies intro-
duced by AWT and Microsoft Azure, but the testbed
in itself does not address the issue. Likewise, the au-
thors do not address power-saving mechanisms.
Long Sun et al. (Sun et al., 2017) propose an ab-
stract model that makes use of microservices for the
implementation of the middleware of an IoT system,
managing each of them independently. The paper de-
tails the architecture of an IoT system from the sen-
sor/actuator layer, where microservices are special-
ized to interact with a hardware device, up to the data
management layer. The paper highlights the role of
communication protocols in the interaction between
microservices and edge devices. One of the services
is in charge of managing security aspects. The model
does not take into account energy aspects. The paper
reports an experiment and illustrates the operation of
a REST API that is part of it. To this end, it provides
the source code of two functions: one to create a new
device and another to add a trigger to an edge device.
Compared to the above articles, the present pa-
per shares the intent of discussing the relevant fea-
tures of an IoT system. In contrast, the result of such
a discussion is not the generation of a collection of
modules and specifications to address a specific issue
but the identification of the basic non-functional fea-
tures that the system must exhibit. Then we outline
an abstract architecture that can be used as a refer-
ence for many use cases. The final step is a detailed
description of an instance of such an abstract architec-
ture. The implementation makes use of conventional
technologies and is exhaustively defined and publicly
available. One way to take advantage of such result is
to inject in the testbed the non-conventional solutions
under evaluation, siding, or replacing, the provided
ones in a way that has much in common with the de-
pendency injection used in software engineering.
3 SYSTEM MODEL
This section explores the abstract requirements of an
IoT testbed without reference to a specific technology.
Although experimental results strongly depend on the
adopted technology, the fundamental features of the
testbed, related to the specificity of IoT applications,
are to some extent invariant. In this sense, adopting
a shared testbed simplifies the comparison of imple-
mentations that use different technologies.
This section contains dedicated subsections for
each of the non-functional requirements that needs to
be present in the testbed for IoT.
3.1 Layered Architecture
A layered infrastructure is a widely adopted model to
ensure the scalability of an IoT system. This model
envisions edge units, sensors, and actuators as orga-
nized into clusters, each containing an infrastructure
WEBIST 2021 - 17th International Conference on Web Information Systems and Technologies
398