It can be observed that the LZ4 algorithms,
configured in its high-compression mode (LZ4-HC)
offers a decompression speed up to 5 times faster
than GZIP, the runner-up in decompression speed,
with a compression ratio a 27% worse than XZ,
which has the best compression ratio.
5.2 Compression Algorithms
Choosing LZ4 as the best compression algorithm
candidate, we performed different experiments with
it. The total deployment time of CiaB is depicted in
Fig. 1 for the different performed tests, as well as for
a raw deployment. The “Ship” time is “omitted” for
the BSR tests because it is assumed that the CORD
backup is placed in a local repository and the
transfer speed between this repository and the target
server is larger than the decompression speed of the
VMs (371.8 MBps), which reduces the shipping
time to the decompression time. This is a reasonable
assumption since, for example, SATA II (up to 3
Gbps (Serial ATA International Organization,
2007)) and USB 3.0 (up to 5 Gbps (Hewlett Packard,
2008)) support higher transfer speeds. If the backup
was to be obtained from an online repository, the
time to download it should be added into the
presented results.
As a first approach, both the CORD source tree
and the CORD VM images are first packed into a
file with tar (Gilmore, 2008), and then these files are
compressed with LZ4. The use of tar is necessary
since LZ4 only supports the compression of files,
and not folders or groups of files. However, since
CORD consists in only five VM images, we also
tested how our approach worked when
compressing/decompressing the CORD images
individually. These two approaches (called “LZ4 +
tar” and “LZ4”, respectively) are compared in Fig. 1,
where it can be seen that the decompression time
when not using tar for the VM images is clearly
lower. A third approach was also tested based on the
“LZ4” approach, i.e., without using tar for the
images. In this third approach, some images
(specifically, the “qcow2” format ones), are shrunk
with a “qemu-img” (Bellard, 2014) command before
being compressed. This reduces the disk space of the
image, deleting actual information/data. As depicted
in Fig. 1, this approach (called “LZ4 + shrink”) also
reduced the decompression time compared to the
previous ones, whereas the VMs’ firing up time kept
constant. Moreover, it can be seen that the total
deployment time of CiaB using the “LZ4 + shrink”
BSR approach is around 7 times faster than using a
raw installation, at about 12 minutes. The achieved
deployment time, is well below the threshold of 90
minutes imposed by 5G-PPP (Kennedy, 2017).
Figure 1: Results comparing a raw CiaB deployment time
with the time obtained using different BSR approaches.
6 CONCLUSIONS
This paper investigated the use of compressed, pre-
configured VM snapshots for the deployment of the
CORD platform. The proposed deployment
workflow follows a Build-Ship-Run approach and
allows for much faster deployment times (7x) while
also allowing for zero-touch configuration.
Moreover, the BSR approach increases the reliability
when deploying CiaB, meaning that the CORD
code-base will not change from deployment to
deployment, as it might happen among different raw
deployments. Finally, the presented approach is also
useful to save the state of a running CiaB
deployment, i.e., to create a backup of the entire
system. Then this backup can be restored at any time
in the same machine or a remote one. In addition to
the proposed workflow, this paper also investigated
the effects of different compression algorithms, with
respect to the final size of the archives and their
decompression times. The presented results show
that “trimming” the VM images and then using the
LZ4 compression provides with the best results. As
future work, the presented approach will be
extended to support newer CORD versions, as the
focus has been given to CORD 4.1 so far.