heal.abstract |
Serverless architecture is a modern cloud-computing paradigm. In collaboration with
Function-as-a-Service applications, it promises high utilization of the resources provided by
data centers through the allocation of resources on demand. An interesting application of the
Serverless architecture is the use of Internet of Things devices, which are constantly
increasing.
A major limitation of the Serverless architecture is the delay resulting from the activation of
the underlying infrastructure (microVM, container, unikernel) of each Function-as-a-Service
application, in order to serve a request. The cold-start process, as it is called, refers to cases
where our application in the Serverless environment has not been invoked recently and thus,
the virtual machine in which it is running is not in an idle state, nor activated. So when an
invocation to that function is made, the microVM must be set up entirely from scratch,
which adds a delay to the service of the request.
A potential solution that has been studied thoroughly by the scientific community is the use
of snapshots, through which we can store the current state of the underlying infrastructure
and restore it (when needed) with negligible overhead. Previous research work has shown
that we can achieve a reduction in cold-start latency through different snapshotting
techniques. In this paper we studied the SnapFaas protocol which uses new techniques to
implement snapshots and which promises fast End-to-End request servings.
Based on the growing trend of IoT devices that primarily use ARM processors, we inspected
the porting of SnapFaas system to ARM-based computing systems. We will analyze the
changes needed to achieve this and also quote some code snippets from the implementation.
Additionally, we will study how snapshots are taken by SnapFaas, capturing as efficiently as
possible the memory and the various devices attached to the microVM. Accordingly, we
will examine how these snapshots are used to restore the microVM, both in the memory
part, as well as the part of the connected devices.
In the last part of the thesis, a client for the Firecracker tool (a well-known microVMs
startup tool) is presented, in order to simulate the operation of SnapFaas. Through this new
system we were able to obtain a comparison tool for SnapFaas, throughout all the
experiments that were showcased. Through them we proved that SnapFaas is faster for cold-
start, as well as for lukewarm-start (when there is an imprint of the microVM inside the
page cache of the memory) regarding the End-to-End latency. |
en |