1. Introduction
Vehicular communications presently provide a support for a fruitful variety of safety (e.g., emergency electronic brake warning, lane change warning, forward collision warning, etc.), non-safety (e.g., traffic information systems), and infotainment (e.g., peer-to-peer gaming, IPTV, Internet content sharing, video streaming, etc.) vehicular applications [
1,
2,
3,
4,
5]. Since the expectations towards vehicular communications are increasing, and ultra-low latency is a primary and critical concern for autonomous driving as an ultimate goal, there is an urgent need to leverage on emerging technologies such as 5G and Multi-Access Edge Computing (MEC) to facilitate the performance of various vehicular applications (
Figure 1a). By jointly considering strict requirements for 5G networks, such as greater coverage, end-to-end latency less than 1ms, massive connectivity, and massive capacity, accompanied by enormous heterogeneity in network resources, technologies, vendors, operators, vehicles, etc., traditional manual network management becomes impossible to scale and to maintain. It is an utmost challenge to achieve high Quality of Service (QoS) and Quality of Experience (QoE) without sophisticated management and orchestration [
6], which are, at the same time, compliant to the standards. Hence, such heterogeneity presses an urgent need for transition from a poorly scalable network management to its automation. In short, bringing 5G and MEC to vehicular networks reduces data transmission time [
7] for latency-sensitive use cases such as autonomous driving, but requires automated network management in order to cope with aforementioned heterogeneity.
Therefore, in this paper, we study the automated closed-loop life-cycle management and orchestration of network services and resources within MEC, based on the three inter-coupled activities, i.e., orchestration, control, and monitoring (as shown in
Figure 1b). The recent advances in Software Defined Networking (SDN) and Network Function Virtualization (NFV) aim to facilitate network management automation to a great extent when incorporated in MEC architectures. In particular, SDN and NFV bring more flexibility, and programmability to wired and wireless communication networks, while enabling higher resource use, and lower costs [
8]. Yet, the full potential of such synergy is still to be discovered [
6].
Figure 1a illustrates a high-level architecture of MEC-enabled vehicular networks, thereby spanning the vehicles themselves (with On-board Units (OBUs) equipped with sensors), Radio Access Network (RAN), edge, and the NFV Management and Orchestration (MANO) entity. Providing storage and computational resources at the edge, MEC is intended to reduce latency for mobile users (i.e., vehicles) by using more efficiently the mobile backhaul as well as the core networks [
9]. The MANO manages and orchestrates MEC servers and the services deployed and running on top of these servers, and finally, the core network. The position of MEC platforms enables using resources exposed at the network edge to host, and to deploy numerous vehicular applications that can be easily instantiated, and terminated in a dynamic way. Furthermore, due to the opportunities to deploy vehicular services in a lightweight manner, MEC can also enable a migration of services from one machine that hosts the service to another if it is efficiently managed and orchestrated by a suitable MANO platform. In this way, a service migration tackles the low-latency requirements, since a new placement of services will ensure that low-latency can be achieved and maintained by responding to the vehicle movements in a proactive way.
The bottom level of the overall network snapshot depicted in
Figure 1a presents an in-vehicle infotainment use case [
3,
4,
5] in which vehicles exploit Content Delivery Network (CDN) as a service, with cache CDN servers placed within MEC in order to decrease the overall latency in accessing popular websites (e.g., Google maps). Such decentralized cloud architecture is going to be a cornerstone for vehicular communications, providing low latency services tailored to various 5G automotive use cases (e.g., active driving safety assistance, road traffic monitoring, cooperative manoeuvring, in-vehicle infotainment, emergency situations, etc.). Simultaneously, this cloud architecture assists in the offload of heavy computational tasks from autonomous vehicles to the edge.
In
Figure 1b, we illustrate orchestration, control, and monitoring, as three parallel and interconnected processes. In particular, orchestration is a joint process of: (i) automation, (ii) coordination, and (iii) managing deployment and operation of network services. The role of SDN is to provide connectivity, and to keep a centralized abstract view of the network topology [
8,
10]. In the other hand, NFV is in charge of managing the network functions. With both support of SDN, and NFV, orchestration allows network services to be automatically deployed and managed [
11]. In terms of control, we introduce existing MANO tools and exploit their control features. Finally, monitoring provides valuable input about available resources and network status to the orchestration entity, which can make decisions upon network services in a proactive and timely manner. Based on the decision made by orchestration entity, control tweaks the network service configuration, and performs resource re-allocation.
The synchronization between these three interconnected processes such as orchestration, control, and monitoring, is essential to enable automation for the resource and service management in strongly heterogeneous environments. Therefore, we map such closed-loop life-cycle automation onto the existing NFV MANO systems, and present perspectives on their incorporation within MEC-based vehicular networks.
Derived from the isolation of the most important Key Performance Indicators (KPIs) for automated management and orchestration, there are two major groups, i.e., feature-based and operational KPIs, which can be used to benchmark existing MANO solutions for supporting delay-sensitive vehicular applications. Accordingly, we summarize our contribution as follows:
We map the architecture of MANO solutions to the closed-loop life-cycle management and orchestration, pointing at its clear articulation in the research and industry fields.
A feature-based analysis: Taking into account the feature-based KPIs, i.e., key features of MANO tools (e.g., required resources needed to run a particular MANO, number of life-cycle management operations that MANO can effectively perform, etc.), we present a comprehensive overview of several MANO tools, developed within different research projects that recently increased the interest in network service orchestration. Due to their compliance to ETSI standards, and lightweight deployment opportunities, we see Open Source MANO (OSM) and Open Baton as suitable solutions for MANO operations within the resource-constrained network edge. Therefore, we bring their extensive performance analysis conducted in a real testbed setup as our next contribution.
A performance analysis: One of the common operational KPIs that is used to measure performance of MANO solutions is an overall instantiation delay. In particular, it refers to the time needed for a MANO solution to successfully instantiate a fully operational network service. Therefore, based on this KPI we evaluate the performance of Open Baton and OSM in a testbed environment, and discuss their comparison while providing instructions on their deployment in vehicular networks based on 5G and MEC. Besides this comparison, we showcase how in particular Open Baton responds to different virtualization technologies (i.e., containers and VMs) that are used for service virtualization. This extensive performance analysis is obtained in the high-performance testbed, mimicking the realistic features of edge computing in vehicular networks.
The paper is organized as follows: in the next section we present the background and related work. A thorough description on the closed-loop life-cycle management of network services in MEC-based vehicular networks is presented in
Section 3. This is followed by an in-depth analysis of the features of existing MANO tools in
Section 4, along with the performance analysis of Open Baton and OSM in
Section 5. Finally, we conclude the paper and discuss future works in
Section 6.
4. A Feature Based Analysis of Existing MANO Tools
As stated by our second contribution in the Introduction, in this section we present an extensive feature-based analysis of existing open source MANO tools, which are widely recognized in both academia and industry circles. Through a thorough examination and study of the available documentation and research papers that tackle a particular MANO tool, we isolated key features that need to be taken into account when studying these tools. We find such analysis as notably important for the future research in the field of resource and service orchestration, because it provides a summarized information on the tools which are likely to be used in the real deployment, and can be used as guidelines for future extensions of existing orchestrators. Each particular feature is essential to consider, as it highly affects the performance of the tools and their ability to get customized to different experimental environments.
Based on the work provided by Taleb et al. and de Sousa et al. [
9,
11], the open source tools that attracted significant attention in the past few years are Open Network Automation Platform (ONAP), Open Baton, Sonata (5GTango), OSM, Tacker, Cloudify, X-MANO, TeNoR, and Escape. Since the background information for each of these tools, such as the research projects in whose scope the tool was developed, is already presented in aforementioned work, here we do not present the specific project and tool details. Therefore, in
Table 3,
Table 4 and
Table 5, we map the feature types to their corresponding metrics for each MANO tool that we took into consideration, and the brief discussion based on each feature is presented as follows.
Resource footprint: It embodies one of the fundamental requirements prior to experimenting with a MANO tool, because it presents the amount of resources (such as number of virtual or physical machines, RAM, number of vCPUs, storage, etc.) needed for the installation and proper work. To make the result comprehensible, we present three categories, i.e., light, medium, and heavy, and map the required resources to them as presented in
Table 6. Concerning the resource footprint, the three categories presented within
Table 6 can help readers to resolve where is a certain MANO solution positioned on the scale from being lightweight to resource-hungry. The categories are based on the number of virtual CPUs that each MANO solution requires for its proper work, as well as the optimal values of RAM and storage. For example, the light MANO solutions can be successfully deployed inside a VM on the host, while medium, and especially heavy solutions, in most cases require dedicated resourceful bare-metal servers to efficiently perform their tasks.
In
Table 3 and its extension (
Table 4), the resource footprint is shown for each tool. It can be seen that ONAP is the heaviest in terms of all three resource components, which is expected due to its extensiveness, strong credibility, and relevance for the industry as well. On the other hand, Open Baton and OSM offer two installation possibilities, i.e., minimal and full, which differ in number of supported components (e.g., NFVO, VNFM, drivers for monitoring plugins, drivers for different VIMs, etc.). However, it should be noted that MANO tools that connect to VIMs such as OpenStack, require additional machines to install VIM, which in particular needs 4 vCPUs, 8 GB RAM, and more than 80 GB of disk space per se.
Messaging bus: This specific component is essential for enabling either synchronous or asynchronous communication between different MANO components, offering message exchange in a reliable way. The overview of two widely used messaging buses that are also used within MANO solutions, i.e., RabbitMQ and ZeroMQ, is presented in
Table 7.
Table 7 depicts the main differences between these two messaging buses in terms of the message exchange mode, message protocol, the mode of queueing, and their complexity. In particular, a complexity refers to the source code of the messaging bus, i.e., the number of lines of code needed to realize routing, load balancing, and persistent message queueing. As it can be seen from the
Table 3 and
Table 4, the great majority of tools use RabbitMQ messaging bus, due to its powerful and flexible operation. RabbitMQ is an open-source general purpose message broker that implements a variety of messaging protocols, with Advanced Message Queueing Protocol (AMQP) among them. In MEC-based MANO case, RabbitMQ provides MEC applications with a platform to send and receive messages, connect to each other, and scale. It is performed through different versions of point to point, request/reply, and pub-sub communication style patterns, which enable publishers to send messages to exchanges (central nodes), and consumers to retrieve messages from queues [
34]. Due to this simplistic operation mode which enables routing, load balancing, and persistent message queuing in terms of several lines of code, RabbitMQ is easy to use and deploy, and therefore, it is reasonable that most of the MANO solution developers opt for this messaging broker. However, it inevitably generates additional latency because of message queuing on a central node. In regards to that, ZeroMQ [
35], engaged by Escape, is a lightweight substitute for RabbitMQ, as it especially addresses latency constrained networking scenarios such as autonomous driving. However, the increased complexity of this solution is a significant disadvantage in comparison with RabbitMQ. Taking into account the importance of low-latency for vehicular applications, decision upon messaging system should be taken with a prominent attention, studying and benchmarking both RabbitMQ and ZeroMQ to find a trade-off.
Infrastructure adaptation: Using the term infrastructure adaptation, we consider the capability of the MANO tool to adapt to different types of VIM. The more VIM drivers supported by tool, the more flexibility in experimentation and deployment is provided. This is significantly important since different VIM types are more or less complex than the other, and if diverse set of VIM drivers can be easily installed within MANO, it expands the possibilities to combine resources from different virtualized infrastructures. All studied tools support OpenStack, as a widely used software platform which offers a plethora of virtualized servers and other resources to customers. However, due to the increased complexity in configuring OpenStack to work with a particular MANO tool, the support for additional VIM drivers that can be easily configured (e.g., AWS) should be more accentuated and motivated.
Virtualization environment: Despite the enormous popularity of Virtual Machines (VMs), the container-based virtualization is now gaining momentum, due to its capability to share the host kernel with user-space isolation. There is already a solid research conducted on capabilities of both VM and container-based virtualization, studying the benefits and limitations of both [
9,
11]. Tackling the resource availability within the MEC platforms, which is limited compared to the large and resourceful data-centers, the lightweight virtualization, and orchestration solutions for small-size programmable devices are required. Delivering a lightweight deployment of services and applications, containerization seems to be the best candidate for deployment of emerging 5G technologies such as NFV and MEC [
20]. Therefore, the MANO tools with support for a container-based virtualization are considered to be profoundly interesting for future MEC-oriented research. The aforementioned enables orchestration and management of the latency constrained applications, placed and deployed within the edge of the vehicular networks.
VNF life-cycle operations: Depending on the type of the MANO tool, a certain number of life-cycle management operations is supported. Keeping in mind ONAP’s superiority and extensiveness compared to other tools, a support for a plentiful set of operations is expected. If we tend to approach the study of tools with lower complexity and lighter installation, most of the remaining tools provide support for number of operations of similar scale. Importantly, all of the tools enable three fundamental actions, i.e., instantiation, scaling, and termination. In particular, instantiation and on-boarding operations are usually tightly coupled. On-boarding means transferring appropriate image file altogether with VNF Descriptor (VNFD) and Network Service Descriptor (NSD), from NFVO to VIM via VNFM. In that phase, VIM allocates resources required for such VNF and network service, based on the specified flavor. On the other hand, instantiation is represented as a phase of booting-up a system based on the received image, and installing all dependencies stated in descriptors, which are needed for VNF or network service to run properly. In case of scaling, more resources are needed than it was initially allocated by VIM. Thus, based on the instruction from NFVO, VIM re-allocates resources, and in case of termination it releases the resources.
VNF package: A VNF package includes a corresponding VNFD that will be used to describe a VNF, as a part of the service chain that orchestrator aims to launch on top of the virtualized infrastructure. Besides VNFD, which provides a broader communication compatibility among operators, there is an NSD as well, containing description of the whole network service. Depending on the tool, these descriptors are usually written following some of the well-known standards, such as: Topology and Orchestration Specification for Cloud Applications (TOSCA), Yet Another Next Generation (YANG), and Heat Orchestration Template (HOT). For instance, TOSCA is a standard used to specify services and their relations on a cloud computing view, while YANG represents a data modeling language for configuration and state data manipulated by the network configuration, designed by IETF. As with TOSCA, HOT in particular, describes the resources and the relationship among them. However, being much more generic and able to automate any application production process, TOSCA is widely used for describing VNFs and network services. Nevertheless, given the broad support and availability of all three standards, we consider TOSCA, YANG, and HOT suitable for the orchestration solutions that we tackle in this paper. Finally, besides descriptors, a VNF package usually includes a VNF image which needs to be available on the corresponding VIM, so that Element Management System (EMS) entities are provided with an adequate image type for launching VNF-customized VMs.
VNF healthy environment support: This feature is quite specific since it is only available in ONAP and Sonata, representing incorporation of VNF self-healing capabilities such as those provided by integrated validation tools. In case of large-scale usage of the tools in industry and production, such capability is essential.
Integrated monitoring system: Recalling the closed-loop life-cycle management, which was presented within
Section 3, and mapped to the ETSI NFV MEC architectural framework, there is a huge potential in integrating a monitoring system into the MANO solution. Such possibility decreases the delay in communication between monitoring and orchestration and control entities, therefore providing real-time information gathered from the measurements. Although some of the tools (e.g., ONAP, Sonata, and Cloudify) incorporate a tool-customized monitoring systems into their architectures, most of the studied MANO solutions still require installing plugins for external monitoring (such as Grafana, Zabbix, etc.).
Feature palette: It comprises different capabilities that MANO tool can provide to the users once it is properly installed. The palette is usually reached through some tool-specific Graphical User Interface (GUI), and in most cases it shows the actions that can be taken during the VNF life-cycle management.
Interfaces: Almost all of the encompassed MANO tools provide work on the resource and service orchestration, specific component configuration, actions from the life-cycle management set, and various activities from the feature palette, through both GUI—usually represented as a dashboard, and a Command Line Interface (CLI). Understanding of all the processes of VIM registration, creating VNFDs and NSDs, on-boarding VNFs, launching network services, etc., is facilitated by providing a corresponding GUI, as it is more representative than a usual CLI. Although the installation of each tool must be obtained through the CLI, representing the feature palette within a GUI-based dashboard is a plus.
Operating system: This feature only reflects the requirements based on the fundamental operating system, required for installation and proper work of the MANO tool.
ETSI NFV MANO compliance: In general, in order to expand the exploitability of any software tool, whether it is MANO or not, the standardization plays a key role as it assures that the tool meets certain requirements that guarantee the proper work in various conditions. Having ETSI NFV MANO framework (
Figure 2) as a reference, it is unlikely that a tool with no proper compliance will be considered to be a candidate for the resource and service orchestration in MEC-enhanced vehicular networks, because ETSI has a leader role in standardizing NFV and MEC. The necessity for standardization in aforementioned context is reasonable, especially because of the heterogeneity in MEC platforms. Therefore, although developed and deployed by different vendors/operators/application designers and developers, various MEC platforms and applications can be consolidated and able to cooperate if the standardization requirements are met.
Multi-domain support: The multi-domain capabilities represent a strong contributing factor to filter the orchestration solutions, being characterized by capabilities to establish a connection with MEC from the other domain using technologies such as OpenVPN, and to enable communication among the resources in different administrative and technological domains.
Multi-tenancy support: Due to the ubiquitous popularity of network slicing paradigm, being able to allocate different slices of network resources to different QoS and QoE requirements is useful for the experimentation.