Page 1 of 33
Transactions on Networks and Communications - Vol. 9, No. 5
Publication Date: October, 25, 2021
DOI: 10.14738/tnc.95.11231. Kjorveziroski, V., Canto, C. B., Roig, P J., Gilly, K., Mishev, A., Trajkovik, V., Filiposka, S. (2021). IoT Serverless Computing at the
Edge: Open Issues and Research Direction. Transactions on Networks and Communicaitons, 9(5). 1-33.
Services for Science and Education – United Kingdom
IoT Serverless Computing at the Edge: Open Issues and Research
Direction
Vojdan Kjorveziroski
Faculty of Computer Science and Engineering
Ss. Cyril and Methodius University, Skopje, North Macedonia
Cristina Bernad Canto
Department of Computer Engineering
Miguel Hernandez University of Elche, Elche, Spain
Pedro Juan Roig
Department of Computer Engineering
Miguel Hernandez University of Elche, Elche, Spain
Katja Gilly
Department of Computer Engineering
Miguel Hernandez University of Elche, Elche, Spain
Anastas Mishev
Faculty of Computer Science and Engineering
Ss. Cyril and Methodius University, Skopje, North Macedonia
Vladimir Trajkovik
Faculty of Computer Science and Engineering
Ss. Cyril and Methodius University, Skopje, North Macedonia
Sonja Filiposka
Faculty of Computer Science and Engineering
Ss. Cyril and Methodius University, Skopje, North Macedonia
ABSTRACT
Novel computing paradigms aim to enable better hardware utilization, allowing a
greater number of applications to be executed on the same physical resources.
Serverless computing is one example of such an emerging paradigm, enabling faster
development, more efficient resource usage, as well as no requirements for
infrastructure management by end users. Recently, efforts have been made to
utilize serverless computing at the network edge, primarily focusing on supporting
Internet of Things (IoT) workloads. This study explores open issues, outlines
current progress, and summarizes existing research findings about serverless edge
computing for IoT by analyzing 67 relevant papers published between 01.01.2015
and 01.09.2021. We discuss the state-of-the-art research in 8 subject areas relevant
to the use of serverless at the network edge, derived through the analysis of the
selected articles. Results show that even though there is a noticeable interest for
Page 2 of 33
2
Transactions on Networks and Communications (TNC) Vol. 9, Issue 5, October-2021
Services for Science and Education – United Kingdom
this topic, further work is needed to adapt serverless to the resource constrained
environment of the edge.
Keywords: Edge Computing; Cloud Computing; Function as a Service; Serverless
Computing; Internet of Things; Review.
INTRODUCTION
The cloud revolution has introduced the concept of * (anything) as a service [1], an abstraction
allowing users to think of computing infrastructure and software in general as just another
utility for which they pay monthly expenditures. While from the user perspective the Software
as a Service (SaaS) offerings unburden them from thinking about new features, upgrades, and
even security patches, developers still have to interact with lower-level abstractions. One of the
most popular developer-oriented products is Platform as a Service (PaaS), allowing them to
more easily publish and host applications. However, not all infrastructure related aspects are
abstracted to the desirable extent and the underlying programming models have not changed;
developers still need to provide a complete software package and decide what additional
components they would like to use, such as the database product, messages queues, or caching
systems.
The recent introduction of the serverless computing concept, comprised of Function as a
Service (FaaS) and Backend as a Service (BaaS) aims to alleviate these developer problems
allowing them to focus just on the core functionality of their product. Despite its name, there
are still servers involved in this paradigm, but they are not the concern of the developers, since
the provider deals with the scaling, deployment, and runtime configuration of not only the
developer's code but the associated backend services such as databases as well. The developer
simply provides the core functionality in terms of the necessary function code (Function as a
Service) and achieves statefulness, caching, user registration, and all other backend related
services by utilizing other managed products by the provider (Backend as a Service) [2].
Even though the first commercial serverless product has been published in 2015 [3] as a cloud
service aimed primarily at web developers, quickly alternative use-cases have been identified
as well. With the meteoric rise in the number of internet of things (IoT) devices, there is an
ever-growing need for increased compute and network capacity, as well as new product
features which would enable new usage scenarios. To lower the communication latency with
infrastructure located in the cloud, the trend of edge computing has emerged, moving
computing capacity closer to the data source, reducing delays. However, from the developers'
perspective, the programming practices have not changed, with a major difference being that
they also need to account for the more limited computing capacity when their applications are
deployed at the edge compared to the cloud.
In recent years the idea of utilizing serverless computing at the network edge has emerged, thus
allowing the deployment of lightweight functions across the infrastructure. Existing cloud
providers have quickly adapted their product portfolios [4], [5], allowing users to self-host the
serverless runtimes on their own hardware at the network edge. A number of existing open- source serverless projects have also published more lightweight versions of their products [6],
[7] and completely new platforms have been proposed as well [8]. Attempts to transparently
Page 3 of 33
3
Kjorveziroski, V., Canto, C. B., Roig, P J., Gilly, K., Mishev, A., Trajkovik, V., Filiposka, S. (2021). IoT Serverless Computing at the Edge: Open Issues
and Research Direction. Transactions on Networks and Communicaitons, 9(5). 1-33.
URL: http://dx.doi.org/10.14738/tnc.95.11231
bridge the divide between the edge and cloud by allowing cross-compatibility of the developed
functions have also been made, thus offering an edge-cloud continuum.
Although serverless edge computing is a new and dynamic research field with great potential
for event driven IoT workloads [9], there are a number of open challenges that hinder a wider
adoption. The aim of this paper is to describe these issues and outline recent efforts aimed at
solving them. To this effect, we have conducted a systematic analysis of 67 state-of-the-art
research papers published between 1st of January 2015 and 1st of September 2021, with the
intention of identifying the current research trends and open issues.
The rest of this paper is organized as follows: in section 0 we analyze related research to IoT
serverless computing at the network edge, and then continue to section 0 where we outline the
methodology for our survey. In section 0 we describe the identified open issues and discuss in
detail the relevant state-of-the-art research aimed at solving them. We conclude the paper with
section 0, focusing on next steps and future research directions.
Related Research Papers for Serverless IoT
Both serverless and IoT are active research topics, gathering sizeable interest from the
community because of the wide-ranging effects that they might have on people's everyday lives.
The full extent of IoT applications ranges from smart devices at home, to increased
manufacturing efficiency, and improvements to quality of life through better environmental
predictions and early warning systems. Combining this with the efficiency and easy scalability
of the serverless paradigm, augmented by the greatly reduced development effort and shorter
time to market, makes IoT and serverless an appropriate match for accommodating the
expected influx of new IoT devices.
These aspects are contributing factors to the existence of numerous review papers describing
open-research problems and disseminating existing findings either for serverless or IoT, but,
to the best of our knowledge, no paper focusing explicitly on both of those aspects has been
published yet. The aim of this review is to fill that gap and look at the serverless research
challenges associated when it is used primarily for event based IoT workloads, especially when
such workloads require low latency, and need to be performed at the network edge.
A common theme across existing literature is the consensus that the usage of serverless is
expected to skyrocket in the near future [10], [11], as solutions to the open problems are
emerging. Perhaps one of the more pressing issues for serverless computing is the difference
in the various implementations regarding the runtime environments and the variable
performance that they are offering as a result of the chosen architecture for function execution,
such as virtual machines, containers, or native execution [12], [13]. The authors of [12] propose
unikernels as a possible workaround for this problem, allowing a function to be packaged with
all of its library dependencies and hardware interaction frameworks, omitting requirements
for a base operating system or a hypervisor.
The introduced abstraction of BaaS, and its externalization in terms of the running functions is
identified as another area for improvement, resulting in poor performance for I/O bound
workloads that need to communicate with fast storage, which in this case is accessed through
network APIs, adding overhead and latency, leading to longer execution times [12], [14], [15].