Conference PaperPDF Available

Abstract and Figures

Network Function Virtualization (NFV) enables operators to flexibly deploy network services on commodity servers in an on-demand and agile manner. This has recently attracted significant attention from industry and academia. However, there are important challenges for NFV deployment, including performance bottlenecks, degraded fault tolerance, upgrading complexities, and security threats. To overcome these challenges, the microservice approach, which has been applied successfully in cloud computing, has motivated the research communities to apply its principles in NFV domains. In this paper, we first compare the challenges of employing the microservices approach in both the cloud computing and the NFV domains and then discuss the need for AI-enabled microservices architecture for NFV. Performance evaluation of the microservices approach in NFV is performed on bare-metal machine setups. The results compare the pros and cons of the microservice approach and show the need for AI to handle the complex decisions associated with decomposing network functions into microservices or vice versa. We also propose an AI-enabled microservice architecture and present its potential use cases for personalized live streaming , smart public safety, and enterprise VPN (Virtual Private Network). Open questions and future work are also presented.
Content may be subject to copyright.
Towards AI-enabled Microservice Architecture for
Network Function Virtualization
Maziar Nekovee1, Sachin Sharma2, Navdeep Uniyal3, Avishek Nag4, Reza Nejabati3, Dimitra Simeonidou3
University of Sussex1, National College of Ireland2, University of Bristol3, University College Dublin4
Abstract—Network Function Virtualization (NFV) enables op-
erators to flexibly deploy network services on commodity servers
in an on-demand and agile manner. This has recently attracted
significant attention from industry and academia. However,
there are important challenges for NFV deployment, including
performance bottlenecks, degraded fault tolerance, upgrading
complexities, and security threats. To overcome these challenges,
the microservice approach, which has been applied successfully
in cloud computing, has motivated the research communities to
apply its principles in NFV domains. In this paper, we first
compare the challenges of employing the microservices approach
in both the cloud computing and the NFV domains, and then
discuss the need for AI-enabled microservices architecture for
NFV. Performance evaluation of the microservices approach in
NFV is performed on bare-metal machine setups. The results
compare the pros and cons of the microservice approach and
show the need for AI to handle the complex decisions associated
with decomposing network functions into microservices or vice
versa. We also propose an AI-enabled microservice architecture
and present its potential use cases for personalized live stream-
ing, smart public safety, and enterprise VPN (Virtual Private
Network). Open questions and future work are also presented.
Index Terms—NFV, Cloud Computing, Artificial Intelligence,
In future telecom networks, most of the control and man-
agement is software-defined [1], and network functions such
as firewall, deep packet inspection, encryption, intrusion de-
tection system, etc. are deployed as software entities running
as virtual machines in cloud data centres [2] (as opposed
to traditional hardware middleboxes). These Virtual Network
Functions (VNF) in the current state-of-the-art are mostly built
as a single piece of software code capturing all functional-
ities of the network function and are known as monoliths.
Some initial investigations are though going on to explore
the concepts of microservices in telecom networks domain
as discussed in [3]. Further, some telecom service providers
like BT, AT&T, Telefonica are also looking forward to the
microservices-based architecture for their virtualised network
function infrastructures [4].
The microservices approach decomposes a large application
into its sub-components (i.e., microservices) and deploys them
in a network, facilitating a more flexible, lightweight system,
as smaller components are easier to process. This approach
is common in cloud applications which are decomposed into
loosely coupled sub-components (called microservices). The
978-1-7281-5320-9/20/$31.00 ©2020 IEEE
approach brings for them the benefits in terms of scalabil-
ity, up-gradation, fault tolerance, and simplified testing [5].
However, it also comes up with the shortcomings such as
decomposition, orchestration, communications, and integration
testing overheads [5].
The problem is that cloud applications can be quiet different
from VNF. In addition, both follow different architectures.
Therefore, the concept of microservices cannot be applied in
VNF without comparing cloud applications and virtual net-
work functions. In this paper, we first compare cloud applica-
tions and VNFs with respect to their ability to be disaggregated
into microservices. We also compare the architectures of cloud
applications and Network Function Virtualization (NFV). We
argue and show using our experimentation that the introduction
of microservices in network services (i.e., in a chain of virtual
network functions) creates additional complexity (compared to
cloud applications) in terms of deployments and architectures.
Furthermore, it is been an impending and tough question
to answer as which is the right approach to start with while
deploying an application: monolith (i.e., deploying an appli-
cation as a single program) or microservices? Going directly
to a microservices architecture is not always pragmatic, as
it comes with its own shortcomings (mentioned before). In
fact, if the network services do not require those it is better
not to use the microservices-based approach. Therefore, to
answer this question which is purely dependent on network
users’ behaviour and the network’s behaviour to follow up,
an artificial intelligence based engine is required which can
monitor the network’s behaviour from the data generated in
the network and make intelligent decisions based on that.
Recently, applications of artificial intelligence (AI) to solve
telecom network decision problems have been an emerging
area and AI/machine learning algorithms have been effectively
used to solve complex networking decision problems involving
many interdependent parameters [6]–[9]. Therefore, the deci-
sion to decompose the network functions into microservices
and deploy them in a network can also be done by applying
AI or more specifically, machine learning algorithms to decide
when, how, and in what granularity, a piece of software that
is used for control and management of a telecom network,
can be decomposed into microservices. Applying AI can also
answer in which network edge nodes (sometimes termed as fog
nodes as compared to the cloud) these microservices instances
will be initiated to serve certain 5G use cases. Note that, the
decomposed microservices can be deployed anywhere in cloud
servers as well as in edge nodes and even in standalone servers
(or in private clouds) at the customer premises.
The contributions of this paper therefore, are threefold: (1)
Present a feasibility analysis of applicability of the microser-
vices approach in NFV as compared to cloud applications;
(2) Propose an AI-based microservice architecture for NFV.
The primary goal of this architecture is to apply artificial
intelligence or machine learning algorithms to decide when,
how, and in what granularity, a piece of software that is
used for control and management of telecom networks, can
be decomposed into smaller software entities called microser-
vices; (3) Provide several use cases where our proposed
architecture could be applied. The considered use-cases are:
(a) personalized live streaming, (b) smart public safety and (c)
enterprise VPN (Virtual Private Network).
In the remainder of this paper, we first compare cloud
applications and virtual network functions with respect to their
(potential) microservice architectures in Section II. We then
analyze each of the aforementioned advantages and disadvan-
tages of microservices with respect to NFV and therefore,
open up new challenges and opportunities for deploying NFV
using the microservice approach in Section III. The AI-
based architecture for microservices is provided in Section IV.
Finally, we apply the microservice approach to several NFV
use-case scenarios and discuss pros and cons of implementing
the approach into those scenarios in Section V.
Cloud applications are generally based on client-server
architecture, whereas NFV is generally a chain of virtualized
middleboxes. In the following section, we consider this differ-
ence as a basis for comparison.
A. Microservices network comparison
Currently, we have two different network functions: (1)
simple network functions and (2) complex network functions.
Simple network functions are network functions which are
small in size and simple in functionality. Examples of such
network functions are forwarder, Intrusion Detection System
(IDS), firewall and routers. Large network functions are large
in size and complex in functionality (due to diverse function-
alities) e.g., IP Multimedia System (IMS) and virtual Evolved
Packet Core (EPC).
Cloud Computing applications are generally large applica-
tions which are complex in functionality. Examples of such
applications are Online Shopping System, Google Apps, and
Online Microsoft office. These applications are very similar
to complex network functions explained above. Therefore, the
research on the microservice approach of cloud computing
applications and large network functions could be quiet sim-
ilar for scalability, fault tolerance, troubleshooting, security,
and decomposition. However, it may be different for simple
network functions. In the section below, we take an example
of an Online Shopping System as a cloud application and
IDS as a network function. We then try to differentiate the
microservices with respect to simple network functions and
cloud computing applications.
Engine 1
Engine 2
(A) An online shopping microservices (µService)
network [a cloud application example]
(B) An IDS microservice network [an
NFV example]
Fig. 1. Microservice network comparison
In Fig. 1, the online shopping system (OSS) and IDS are
decomposed into microservices according to different func-
tions of different components of software. For the OSS cloud
application, Fig. 1A shows that the frontEnd microservice
takes an order from a customer, the inventory microservice
verifies the requested inventory of the order, the account
microservice checks the balance in the customer credit card,
and the shipping microservice ships the inventory to the
customer. In addition, it also shows that the inventory, account,
and shipping microservices are highly independent services,
as they do not need to directly communicate with each other.
However, only the front-end microservice depends on the other
microservices for the required work done.
Fig. 1B depicts a microservice network for an IDS (as an
NFV example), whose role is to monitor and detect a network
or systems for malicious activities or policies violations.
The network in Fig. 1B is drawn according to the modular
way of IDS implementations (e.g., SNORT). It shows the
following microservices of the IDS: (a) Header Translator,
which translates incoming data into packet header fields, (b)
pre-processor, which converts incoming data into the output
in which other microservices can detect a malicious activity,
and (c) detection engines (detection engine 1 and 2), which
contain rules to detect malicious activities.
Using the above microservice example of OSS and IDS, we
conclude the following differences between the microservice
approach towards NFV and cloud computing:
1) Topology: As microservices in network functions are
highly dependent on each other, the topology of the
microservice network in network functions is highly
meshed compared to the topology in cloud applications.
2) Network Load: Due to the load a microservice gen-
erates on other microservices, the average load QoS
requirements will be manifold higher in the network
of microservices in the network functions compared to
the cloud applications. Therefore, meeting QoS in case
of network functions is challenging compared to cloud
3) Communication Frequency: Due to the high depen-
dency of microservices in network functions, communi-
cation frequency of microservices in network functions
is higher than in cloud applications.
4) Microservice Function Chain: Currently, in literature,
we have a significant amount of research on Service
function Chain (SFC). SFC makes a linear chain of
network functions. The IETF is the main standard or-
ganization that is dealing with SFC, stating the SFC
problem in RFC 7498, and defining the architecture of
an SFC system in RFC7665. Several issues are tackled
such as traffic classification and encapsulation protocols.
Moreover, the Network Service Header (NSH) has been
proposed by IETF in order to enhance current SFC
techniques and provide more flexibility (e.g., traffic re-
classification) or enabling more granular policy enforce-
However, with the decomposition of network functions into
microservices, there will be a microservice function chain
which will be meshed in topology (compared to a linear
service function chain). Therefore, several new challenges with
respect to building such a microservice network will be needed
to be overcome. It is an open question that which chaining
techniques to be used for deployment of micro-VNFs.
B. Architectural comparison
1) Cloud applications architecture: The most widely used
microservice architecture for cloud applications is the API-
Gatway architecture [5] (depicted in Fig. 2). The key driver
behind this architecture is to keep front-end communication
(client-Gateway in Fig. 2) simple and to add efficient and
diverse functionality at the back end (Gateway-microservice).
(A) The same network is used for client
and inter-microservices communication
Client Inventory
Client Account
Client- µService
(B) Separate networks are used for client and
inter-microservices communication
Fig. 2. The API-Gateway architecture - the online shopping cloud application
Fig. 2 maps the OSS cloud application (depicted in Fig. 1A)
into the API-Gateway architecture. In this architecture, either
the same API Gateway network (Fig. 2A) could be used for all
communications (i.e., client-to-microservice and microservice-
to-microservice communications) or separate networks (Fig.
2B) could be used between client and microservices, and for
inter-microservices communications. In case the interaction
between microservices increases performance degradation, a
separate network may be deployed for microservices commu-
nication (see Fig. 2).
2) NFV architecture: There are two major concerns of
the API-gateway architecture in NFV: (1) packet reordering
and (2) orchestration cost. The API Gateway performs asyn-
chronous communication with microservices in which it does
not block while waiting for a response and the response (if
any) is not necessarily sent immediately. This is an issue in
NFV because packet reordering can happen and the order of
packets may decide a network function behaviour. Secondly,
the same API gateway or its network is used for control traffic
(e.g., for orchestration) and for data traffic communication
[10]. Again, this concern is more prevalent in NFV, where the
orchestration cost (e.g., configuration and monitoring cost) of
deploying VNFs (Virtual Network Functions) is substantially
higher than a cloud application. This can be compared with the
configuration/monitoring cost of a highly meshed microservice
network (in case of NFV) and a sparse microservice network
(in case of a cloud application).
Currently, several architectures [11], [12], such as ETSI
MANO, SDN (Software Defined Networking) and UNIFY
(UNIFYing cloud and carrier networks) are available for NFV
with which control (e.g., orchestration traffic) and data traffic
can be separated.
In this section, we provide the analysis of microservices in
NFV based on our emulations and on the related works listed
in the literature. For emulations, we use the Intrusion Detection
System - SNORT - as a VNF and deployed it on our test-bed
machines. Each machine in our test-bed runs Ubuntu 16.04 on
Intel Xeon Processor E5-2640 with 16 CPU Cores, 2.4GHz
and 125Gb RAM. SNORT contains the number of rules to
detect a malicious activity. We have added a 200 such rules in
a single SNORT VNF (which is deployed on a single Docker
container). To evaluate the resource utilization by SNORT
VNF, we used 2 settings, with single and dedicated CPUs,
the SNORT VNF is decomposed into nsub-components (n
= 1 to 16), where each sub-component (i.e., microservice) is
deployed in a separate docker container with 200
nrules and
connected with another microservices in a tandem network.
The experiments are performed on bare metal machines of
our test-bed, where the sender, the receiver, and the SNORT
VNF’s microservices are on separate machines. The sender
transmits to the SNORT VNF at the rate of 0.97 per ms (Pois-
son distributed), considering no packet loss due to network link
A. Performance
1) Full Resource Usage: On deploying SNORT IDS as
a VNF with 200 rules on a single monolith container, we
see the CPU is under utilized at approximately 34%. On
the same CPU, decomposing the VNF into 16 microservices
by diving the ruleset into equal parts, we found results in
Fig. 3 showing CPU utilization increase up to approximately
90%. Similarly, in our second experiment, we pinned each
microservice to a decicated vCPU and performed the same
experiment. However, in this case we found the average CPU
utilization started decreasing after 2 microservices as shown
in Fig. 4. This is due to the fact that in latter case the
CPU Utilization (%)
# Microservices
Fig. 3. Average CPU utilization: Single CPU
amount of traffic processing is same compared to available
resources while in former case, the resources are being shared
by the microservices. The most important takeaway from these
results is the behaviour of such VNFs where we can increase
and improve the resource utilization just by decomposing a
monolith VNF into microservices. But on the other hand,
it is complex to decide the level of decomposition and the
resource allocation to these micro-VNFs. For such scenarios,
it is increasingly more relevant and useful to deploy VNFs
using Artificial Intelligence and Machine Learning frameworks
which could result in further resource optimization and better
VNF performance.
Average CPU Utilization (%)
# Microservices
Fig. 4. Average CPU utilization: Different CPUs
2) Communication Overheads: Running micro-VNFs as
separate instances on a single node or separate nodes may
result into a significant performance penalty compared to
a single VNF process (the monolithic version) running on
a single node. In [16], this performance drop is compared
between a chain of VNFs running on separate virtual machines
(and containers) and the chain running as a single process.
It is shown that running chained VNFs as separate virtual
machines is up to 11 times slower than a case when the chain
of VNFs runs as a single process. Therefore, this performance
drop (e.g., due to communication overheads) needs to be
minimized in the micro-VNFs network in order to process
packets at high speed. However, optimizing this behavior is
still an open research issue in NFV which is evident from
from the discussions in [17] and the results reported in [18]
for deployment, orchestration, and provisioning delays of
microservices in a content-delivery network.
B. Upgradation Time
We also measured induced delay while upgrading the VNFs.
We replicated SNORT VNF monolith (with 200 rules) into 2,
4 and 8 instances using a load balancer to divide the traffic
among those. As we observed in Fig. 5, scaling monolith
SNORT on a single CPU induced significant up-gradation
time compared to that while deploying monolith SNORT in
multiple CPUs. On comparing, we found the average delay
in 8 monolith SNORT in a single CPU is approximately 45
ms compared to 3 ms when each of the 8 monoliths are
provided separate CPUs. The results are as expected as each
monolith is overloading the CPU to process all 200 rules.
However, on decomposing the SNORT into multiple micro-
VNFs or microservices (each with equally divided less number
of rules), we observed the up-gradation time is reduced even
while using the same CPU. Since all microVNFs are not
parsing the complete set of 200 rules, we see the up-gradation
time in 8 microVNFs compared to 8 monoliths is reduced
by significantly. Further, the average delay in 8 microVNFs
is reduced by a small margin from 0.5ms to 0.35ms, when
different CPUs are used.
Fig. 5. Monolith and Microservices Scaling Comparison
The above aspect of fast scale-up and upgrade for a
microservice-based NFV is evidenced by Cisco in a recent
demo [19].
C. Software reusability
Like cloud applications, advantages of software reusability
can also be leveraged into micro-VNFs. Here, reusability
means that reusing the functionality without replicating it
across other VNFs in a service function chain. Experimental
results for CoMb (Consolidated Middleboxes) [20], an archi-
tecture for middlebox deployment, show that reusing low level
modules such as packet capture, header parser and session
state reconstruction could improve the resource utilization in a
service function chain and save the deployment cost by 38.8%
compared to traditional deployments. Similar work [21] shows
that we can achieve an improvement of 90% in throughput
and a reduction of 50% in latency, while reusing the common
packet processing tasks in a service function chain (i.e., by
removing redundancies). These studies open up new design
parameters for VNF decomposition, where common function-
alities can be separated and reused, reducing deployment cost
and improving the performance.
D. Fault Tolerance
The microservice approach shrinks the failure domain and
improves fault isolation, facilitating high availability. This can
be explained using the micro-VNF IDS topology shown in
Fig. 1B. In this topology, if a failure happens in the prepro-
cessor micro-VNF, only a subset of flows will be affected,
as not all the traffic needs pre-processor to detect intrusion
(shown in Fig. 1B). Secondly, as the micro-VNFs are small,
it will take short time to replace the micro-VNF without
substantially affecting the complete service. It is shown in [23]
that using the micro-VNF approach, we can recover from
failures in a short time interval (e.g., in a few hundreds of ms),
while processing traffic at a maximum speed (e.g., 10Gb/s). In
[24] also, a centralised and a distributed MANO framework
based on microservices is envisaged and both of them are
demonstrated to have high availability and fast fault recovery.
E. Monitoring
Currently, several tools [25] are available for monitoring
VNFs. Some tools such as HSA (Header Space Analysis),
Anteater, and VeriFlow test networks by verifying the config-
uration of the network. The other tools such as ATPG (Auto-
matic Test Packet Generation tool) and Verification of Flow-
Matching Functionality [26] test the network by transmitting
test packets in the network.
These tools can repressively test the network when deployed
network functions are small. Hence, testing using these tools
can verify each sub-component when microservices are de-
ployed in the networks.
F. Orchestration overheads
Orchestration is the automated arrangement, coordination, and
management of services. Therefore, the orchestrator should
be able to instantiate micro-VNFs in right locations at right
time, dynamically allocate and scale resources for them, and
interconnect them to achieve service chaining.
As explained in the previous section, the orchestration
overheads of the network of micro-VNFs are more than the
overheads in the cloud applications (due to a highly mesh
topology of NFV compared to cloud applications). Currently,
several NFV architectures such as NFV MANO [11] provide
an orchestration framework to automatically deploy, coordi-
nate, and manage VNFs. We can leverage the same framework
for orchestrating micro-VNFs. However, in orchestrating these
micro-VNFs, the orchestrator will be posed with an additional
question of whether to instantiate new micro-VNFs or reuse
already deployed ones. This is because the implementation of a
VNF using micro-VNFs could be build upon reusable service
blocks (i.e., already deployed micro-VNFs) which might be
used by various other services [20]. Hence, not only the
number of components to be orchestrated increases but addi-
tional decisions to either spawn new micro-VNFs (potentially
spawning additional services) or reuse existing ones must be
made. In fact, because of this aspect orchestration delays can
be high in a microservice-based NFV deployment [18] and
would need significant research attention. AI based methods
can be useful in decreasing these delays and optimizing the
orchestration cost.
In this section we present the scenarios for AI and machine
learning based decomposition and aggregation of network
services and present our proposed architecture for NFV.
A. Scenarios of AI based decomposition and aggregation
AI and Machine learning can further help in deciding
decomposition and aggregation in following ways:
1) Predicting a heavily used sub-component: Telecom
network services can be classified into different cate-
gories in terms of their QoS requirements. A service
belonging to a particular QoS class may need to be
served by a set of VNFs. The total number of VNFs and
hence the length of the service function chain might be
different for different services classes. But then some
common VNFs will always be there which might be
used by many services and hence the traffic served by
these particular common VNFs will be heavy. Further-
more, within these heavily loaded VNFs there might be
some components or sub-functions which might create
bottlenecks because of the heavy traffic and the way
these sub-functions are logically tied with the rest of the
VNF. These bottleneck sub-functions can be identified
by a supervised learning algorithm from historical data
and can hence be separated as a candidate microservice.
2) Identifying a faulty/vulnerable sub-component: Sim-
ilar to the above scenario, a faulty sub-component can
also be identified using supervised learning techniques
from the network data. A sub-component that fails often
can also be identified as a vulnerable one and can
be isolated as a microservice so that troubleshooting
becomes easy.
3) Anomaly detection: Using machine learning algorithms
like deep learning and decision trees, one can make
decisions on whether a sudden burst of packets in the
network is due to some anomalies or attacks like the
Distributed Denial of Service (DDoS) attacks or due to
a normal surge in network traffic [13]. This information
can then be used to update different filtering rules
in the VNFs associated with intrusion detection and
deep packet inspection. In fact, based on the machine
learning module’s classification, one can define a new
and independent microservice with fresh set of rules to
mitigate attacks like DDoS.
4) Optimal embedding of Microservices Function
Chains: It is already a difficult problem to optimally
embed a service function chain on a physical network
infrastructure [14]. Considering decomposition of mi-
croservices might make the problem further intractable
[14]. Therefore, using a reinforcement learning based
solution can be employed, similar to [15] where there
will be a reward if a particular service function chain
embedding, with possible decompositions into microser-
vices, yields improvements in latency and throughput.
Note that, at times it might also be advantageous to aggregate
some of the relatively simpler VNFs or microservices into
one larger functional unit depending on the nature of the
service and its present state. Those decisions of aggregating
the VNFs can also be taken using AI and machine learning
algorithms. The overall AI based microservices decomposition
and aggregation framework is schematically described in the
next subsection.
B. Proposed AI based Architecture for NFV
Expecting the potential significant benefits of decomposition
and aggregation of network services in future networks, we are
developing AI based intelligent and optimal implementation of
the microservices concepts for software-defined 5G networks.
Our AI engine collects and analyse a large volume of real
data to predict QoS and security effects, and take decisions
on intelligently aggregating/decomposing services, following
an observe-analyse-learn- and act cognitive cycle. We define
Fig. 6. AI-based VNF decomposition/aggregation architecture
a three-layer architecture, as depicted in Fig. 6, composing of
service layer, orchestration layer, and infrastructure layer. The
service layer will be responsible for turning user’s require-
ments into a SFC graph and giving the SFC graph output to
the orchestration layer to deploy it into the infrastructure layer.
In addition to the orchestration layer, components specified
by NFV MANO [12], the orchestration layer will have the
AI assisted engine which will be responsible for analysing
network conditions/data and decompose the SFC graph or
network functions into a microservice graph depending on
future predictions. The microservice graph is then deployed
into the infrastructure layer using the orchestration frame
work proposed by NFV-MANO. Other components such as
monitoring framework, service mapping database and compo-
sition/decomposition tools are also shown in Fig. 6.
With the advent of 5G technologies, there has been a change
in kind of use-case deployments. Nowadays, the focus is more
on the deployment of use-cases involving heavy network and
cloud processing and the use of MEC (Multi-access Edge
Computing) and FOG in 5G architecture rather than focusing
on the processing capabilities of end-user devices [22]. In
addition, low latency use-case deployments across network
domains is also opening new opportunities to various verticals
[27]. In this section we will discuss some of the use-cases
which can further gain performance benefits using the dis-
aggregated VNF techniques and the AI/ML frameworks.
A. Case 1: Personalised Live Streaming
Personalised Live Streaming High Definition/ Ultra High
Definition Video transmission is realized with video-
transmitting drones carrying wireless IP connected UHD or
VR cameras all sending a video of portions of the considered
area. Video transmitter drones are wirelessly connected to
the network to access the drone video streaming platform.
Receivers of the video streaming service provided by the above
platform are offered personalized/premium aerial views of
sporting events such as a football match (Fig. 7). To this end,
they have a receiver device, which can be either a smartphone
or tablets or a smart TV with a client application installed.
From this client application, a user is able to dynamically
select the area portions of the event s/he is interested to view
by choosing them from a map of the event venue. Based on
the number of users connected to the platform, and the access
points related to their current geographical positions, the
video monitoring platform provider sets up and dynamically
manages the number of nodes and resources involved in the
service. This can be done through a software-based VNF front-
When clients access the service through their devices, they
directly communicate with the front-end which forwards the
clients’ requests to an NFV orchestrator residing in MANO
segment to be processed and implemented on the drone fleet’s
video broadcasting infrastructure. On the other hand, when
new transmitting drones are attached to the backbone or some
transmitting drones are grounded (e.g., to charge the battery),
Fig. 7. Personalised live streaming.
the platform front end notifies this to the NFV orchestrator
to reconfigure the network and the video broadcasting infras-
tructure. Furthermore, a Virtualized Infrastructure Manager
(VIM) sends rules to the hardware and software nodes of
the NFV infrastructure about port forwarding, and chooses
optimal paths for application data delivery; in addition, it
decides the number of resources, in terms of bandwidth,
computing, and memory, that each node has reserved to
support each elementary service. The orchestrator collects data
from the network (topology, number of connected clients,
required contents, availability of backbone node drones, etc.)
and, according to specific AI algorithms and policies, decides
how to manage resources, whether to decompose a network
function into microservices, and how to update the network
state as a result of this decomposition.
B. Case 2: Smart Public Safety
Smart Public Safety Digital interventions can be very
effective in enhancing public safety and raising confidence
on the public security sectors [22]. For example, security
agencies can make use of specially designed Over the Top
(OTT) networks in case of emergencies like violent attacks
or natural disasters. Moreover, a 24/7 communication channel
can be offered to citizens of smart cities in the form of online
applications. 5G networks will play a fundamental role in
enhancing public safety, by providing reliable mission-critical
communications, such as push-to-talk voice communications
and use of unlicensed spectrum. The underlying infrastructure
can be used to run applications to equip safety agencies with
live video feeds and safety alerts, along with the provisions
of voice and face detection, offering public safety agencies
capabilities to improve their responses to emergencies.
In such use-cases, as shown in Fig. 8, the network in the
larger area (e.g. city, locality) can use the cameras deployed
across the area (or movable like on cyclists headgear) cap-
turing the video in 360-degree format. Using the edge and
cloud orchestration the Virtualized Network Services can be
Wireless (SDN) Network
Cloud Network and
Cloud Network and
Edge Compute
Fig. 8. Smart Public Safety use-case
deployed in the available computing resources. Such use-
cases involves the heavy processing Network functions (for
e.g. 360-degree video transcoder) and applications like face
and audio detection and recognition. The NFVO can be used
to deploy and manage the VNFs in cloud and the edge
nodes. Additionally to keep the performance of the VNFs and
continuous connection to the network, monitoring frameworks
can be deployed which will allow the ML algorithms to
predict the placement and the composition/decomposition of
the VNFs. In such a scenario, we can utilize the benefits of
the microservice architecture by deploying the disaggregated
VNFs in the mix of cloud and edge nodes to achieve robust-
ness, dynamicity, and the desired performance. For such highly
dynamic and demanding use-cases, the microservices approach
can be a good fit for the service orchestration in a mobile-edge-
computing-based SPS system [28].
C. Case 3: Enterprise VPN Service
We now take an example of an enterprise VPN service to
show benefits of reusability with the microservice approach.
These services generally use many network functions to ensure
a secure data flow between a user and enterprise network.
Shaper IDS
Filter Firewall
control list
Fig. 9. Redundant micro-functions in a VPN service
Fig. 9 shows such a VPN service consisting of traffic shaper,
IDS, content filter, and firewall as VNFs. If we functionally
decompose these VNFs, we find huge overlapping set of
functions which can be reused in the service function chain.
In Fig. 9, traffic shaper and IDS have following micro-VNFs
in common: (1) header classifier, (2) buffer memory (for
queuing packets), and (3) packet reordering. Furthermore, the
decomposed IDS could have overlapping micro-VNFs (such as
access control list) with the decomposed firewall. Therefore,
we can reduce redundancy by reusing the common micro-
VNFs across all the VNFs in the service chain, decreasing op-
erational cost. Reusing common processing tasks in a service
function chain could also help achieving high performance as
shown in [21].
The AI component may help in finding the number of
reusable components required in order to deal with issues such
as fault tolerance, scalability and troubleshooting. There could
be several challenges associated with this use-case such as (1)
decomposition parameters could differ for different network
services, (2) the decomposed microservices might need to
communicate at the line rate, and (3) high management and
orchestration costs.
In this paper we have described the rationale for introducing
a microservice based NFV architecture. We have investigated
the benefits and implementation challenges of this new ap-
proach through analysis and emulation on an actual testbed.
By providing emulations results for the performance of the mi-
croservices approach under some KPIs we have set the context
for applicability of the same in NFV. We have also analysed
some of the complexities that microservices might bring in
telecom network orchestration. Next, we have proposed the
use of AI-based architecture to address the complex decision-
making processes that might incur if the microservices-based
approach is widely deployed for NFV. Finally, we discussed
three telecom use cases that might be benefited by applying
the synergy between AI and microservices for NFV.
Our future work in this area would be: (1) analyse the
networks deeply and understand the requirements of the NFV
architecture that are driven by the many use cases that the
network would support; (2) understand, if the virtual network
functions need to be decomposed or into microservices (or
aggregated) based on this analysis; and finally (3) use AI
to decide when, how, and in what degree this decomposi-
tion/aggregation needs to be done.
This work has received partial funding from the EPSRC
project INITIATE (EP/P003974/1).
[1] D. Kreutz et al., “Software-Defined Networking: A Comprehensive
Survey,” Proceedings of the IEEE, vol. 103, no. 1, pp. 14-76, Jan. 2015.
[2] R. Mijumbi et al., “Network Function Virtualization: State-of-the-Art
and Research Challenges,” IEEE Communications Surveys & Tutorials,
vol. 18, no. 1, pp. 236-262, First quarter 2016.
[3] S. Sharma, et al., “On Monolithic and Microservice Deployment of
Network Functions,” IEEE Conference on Network Softwarization (Net-
Soft), Paris, France, pp. 387-395, 2019
[4] Microservice Architecture for Cloud and Telecom companies:
[5] D. Namiot, et al., “On Micro-services Architecture,” International Jour-
nal of Open Information Technologies, Vol. 2(9), pp. 24-26, 2014.
[6] F. Musumeci et al., “An Overview on Application of Machine Learning
Techniques in Optical Networks”, IEEE Communications Surveys and
Tutorials, vol. 21, no. 2, Second quarter 2019.
[7] P. V. Klaine et al., “A Survey of Machine Learning Techniques Applied
to Self-Organizing Cellular Networks,” IEEE Communications Surveys
& Tutorials, vol. 19, no. 4, pp. 2392-2431, Fourth quarter 2017.
[8] R. Li, et al., “Intelligent 5G: When Cellular Networks Meet Artificial
Intelligence,” IEEE Wireless Communications, vol. 24, no. 5, pp. 175-
183, October 2017.
[9] M. Nekovee et. al., “AI for Mobile Networks”, IEEE Cosmos Newslet-
ters, August, 2019
[10] S. Newman, “Building Microservices Designing Fine-Grained Systems”,
O’Reilly Media, 2015.
[11] Robert Szabo, et al., “Elastic network functions: opportunities and
challenges”, IEEE Network, 29(3), pp. 15–21, 2015.
[12] Network Transformation;(Orchestration, Network and Service Manage-
ment Framework), ETSI White Paper No#13, ISBN No. 979-10-92620-
29-0, October 2019.
[13] A. Abdelkefi, et al., “SENATUS: An Approach to Joint Traffic Anomaly
Detection and Root Cause Analysis,” 2nd Cyber Security in Networking
Conference (CSNet), Paris, pp. 1-8, 2018.
[14] S. Sahhaf, et al., “Network service chaining with optimized network
function embedding supporting service decompositions,” Computer Net-
works, vol. 93, part 3, December 2015, pp 492-505.
[15] J. Sun, et al., “A Q-Learning-Based Approach for Deploying Dynamic
Service Function Chains,” Symmetry 2018, 10(11), 646.
[16] A. Panda, et. al., “NetBricks: Taking the V out of NFV”, 12th USENIX
Conference on Operating Systems Design and Implementation (OSDI),
pp. 203-216, 2016.
[17] S. R. Chowdhury, et. al., “Re-architecting NFV Ecosystem with Mi-
croservices: State-of-the-art and Research Challenges,” IEEE Network,
January 2019, DOI: 10.1109/MNET.2019.1800082.
[18] N. T. Jahromi, et al., “An NFV and Microservice Based Architecture
for on-the-fly Component Provisioning in Content Delivery Networks,
in Proc. IEEE CCNC 2018.
[19] “Leveraging Microservices to Fulfill the NFV Promise
in Service Provider Networks,” Available online:
[20] V. Sekar et al., “Design and Implementation of a Consolidated Mid-
dlebox Architecture”, Proceedings of the 9th USENIX Conference on
Networked Systems Design and Implementation, 2012.
[21] A. Bremler-Barr, Y. Harchol, and D. Hay, “OpenBox: A Software-
Defined Framework for Developing, Deploying, and Managing Network
Functions”, ACM SIGCOMM, pp. 511-524, 2016.
[22] Da Silva et al., “An Open 5G NFV Platform for Smart City Applications
Using Network Softwarization,” IEEE future networking workshop for
5g and beyond testbed and trials, 2019.
[23] T. Dietz et al., “Enhancing the BRAS through virtualization,” 1st IEEE
Conference on Network Softwarization (NetSoft), pp. 1-5, 2015.
[24] T. Soenen, et al.,“Optimising microservice-based reliable NFV manage-
ment & orchestration architectures,” in Proc. 9th International Workshop
on Resilient Networks Design and Modeling (RNDM), 2017.
[25] G. Marchetto et al., “Final Service Provider DevOps
Concept and Evaluation,” CoRR, vol. abs/1610.02387, 2016; (accessed Oct. 12, 2016).
[26] S. Sharma et al., “Verification of Flow Matching Functionality in the
Forwarding Plane of OpenFlow Networks”, IEICE TRANSACTIONS
on Communications Vol.E98-B No.11 pp.2190-2201, 2015.
[27] M. Z. Shakir, et. al., “5GUK Trials: Distributing a Live Orchestra over
5G,”, Global Communications, 2019.
[28] R. Xu et al., “BlendMAS: A BLockchain-ENabled Decentralized Mi-
croservices Architecture for Smart Public Safety,” arXiv:1902.10567.
... The loosely coupled micro-VNFs (mVNF), give the freedom of migration, scalability, maintenance, and software update without disrupting the neighbouring VNFs, which is a significant advantage over monolithic architectures. It also has a higher fault tolerance [4], [11]. However, these benefits come with new costs and constraints. ...
... However, these benefits come with new costs and constraints. Deployment and architectural complexity intensify when this microservice concept is implemented on the VNF-Forwarding Graph (FG) embedding problem [4] as the decomposed micro-functionalities seek more resources like bandwidth and latency. For example, Figure 1 illustrates an SFC composed of 5 VNFs and 7 Virtual Links (VLs) ((0,4), (1,4), (2,1), (2,3), (3,1), (4,0), (4,1)), based on the granularity criteria (which is explained later in Section IV-G) this SFC is further disintegrated at a finer-granular level, as shown in Figure 2. In the given example, each monolithic VNF (hereafter, the standard VNFs will be defined as monolithic VNFs) is decomposed into 5 independent and modular deployable micro-functionalities, generating in a total of 25 mVNFs, and 100 micro-VLs (mVLs) driving a higher amount of resource consumption. ...
... Deployment and architectural complexity intensify when this microservice concept is implemented on the VNF-Forwarding Graph (FG) embedding problem [4] as the decomposed micro-functionalities seek more resources like bandwidth and latency. For example, Figure 1 illustrates an SFC composed of 5 VNFs and 7 Virtual Links (VLs) ((0,4), (1,4), (2,1), (2,3), (3,1), (4,0), (4,1)), based on the granularity criteria (which is explained later in Section IV-G) this SFC is further disintegrated at a finer-granular level, as shown in Figure 2. In the given example, each monolithic VNF (hereafter, the standard VNFs will be defined as monolithic VNFs) is decomposed into 5 independent and modular deployable micro-functionalities, generating in a total of 25 mVNFs, and 100 micro-VLs (mVLs) driving a higher amount of resource consumption. As a result, the decomposition of all VNFs is an ineffective approach; hence, identifying the best decomposing scenario for each SFC is vital. ...
Full-text available
The Internet of Things (IoT) universe will continue to expand with the advent of the sixth generation of mobile networks (6G), which is expected to support applications and services with higher data rates, ultra-reliability, and lower latency compared to the fifth generation of mobile networks (5G). These new demanding 6G applications will introduce heavy load and strict performance requirements on the network. Network Function Virtualization (NFV) is a promising approach to handling these challenging requirements, but it also poses significant Resource Allocation (RA) challenges. Especially since 6G network services will be highly complicated and comparatively short-lived, network operators will be compelled to deploy these services in a flexible, on-demand, and agile manner. To address the aforementioned issues, microservice approaches are being investigated, in which the services are decomposed and loosely coupled, resulting in increased deployment flexibility and modularity. This study investigates a new RA approach for microservices-based NFV for efficient deployment and decomposition of Virtual Network Function (VNF) onto substrate networks. The decomposition of VNFs involves additional overheads, which have a detrimental impact on network resources; hence, finding the right balance of when and how much decomposition to allow is critical. Thus, we develop a criterion for determining the potential/candidate VNFs for decomposition and also the granularity of such decomposition. The joint problem of decomposition and efficient embedding of microservices is challenging to model and solve using exact mathematical models. Therefore, we implemented a Reinforcement Learning (RL) model using Double Deep Q-Learning, which revealed an almost 50% more normalized Service Acceptance Rate (SAR) for the microservice approach over the monolithic deployment of VNFs.
... After that, the devices communicate their models to a centralized server, which averages them to create a single integrated model. This procedure is performed multiple times until a high-quality model is produced [1][2][3][4]. The decentralized blockchain is the technology that encourages IIoT applications to execute at different nodes in the fog-cloud network [4]. ...
... Recently, decentralized-federated learning has solved the aggregated training and testing models of traditional machine learning algorithm models and methods. Where decentralized-Federated-Learning trained the various models at local devices and shared with the global server [1,2]. The main goal of these studies is to train the multiple models of applications on mobile devices and offload these models to the global server for further processing in the network. ...
The work devises the Blockchain-Enabled Federated Learning Algorithm Framework (DLEBAF) with different strategies. The first strategy is deadline-efficient task sequencing and scheduling (DETS), which allocates all applications (workloads) according to their deadline. The second strategy is latency-efficient task scheduling (LETS) to minimize the latency of workloads. The third strategy is energy-efficient task scheduling (EETS), which reduces the energy of fog nodes. The blockchain-enabled fog-cloud (BEFC) scheme ensures the blockchain validation, hashing, previous hash, and time of applications in the system. The results will compare the optimal energy results and delay existing studies with the proposed work. Results showed that the proposed method improves by 30% energy and 50% training delay of all applications.
As a newly emerged promising computing paradigm, Multi-access Edge Computing (MEC) is capable of energizing massive Internet-of-Things (IoT) devices around us and novel mobile applications, especially the computing-intensive and latency-sensitive ones. Meanwhile, featured by the rapid development of cloud-native technologies in recent years, delivering Artificial-Intelligence (AI) capabilities in a microservice way in the MEC environments comes true nowadays. However, currently MEC systems are still restricted by the limited computing resources and highly dynamic network topology, which leads to high service deployment/maintenance cost. Therefore, how to cost-effectively and robustly deploy edge AI microservices in failure-prone MEC environments has become a hot issue. In this study, we consider an edge AI microservice that can be implemented by composing multiple Deep Neural Networks (DNN) models, in this way, features of different DNN models are aggregated and the deployment cost can be further reduced while fulfilling the Quality-of-Service (QoS) constraint. We propose a Three-Dimension-Dynamic-Programming-based algorithm (TDDP) to yield cost-effective multi-DNN orchestration and load allocation plans. For the robust deployment of the yield orchestration plan, we also develop a robust microservice instance placement algorithm (TLLB) by considering the three levels of load balance including applications, servers, and DNN models. Experiments based on real-world edge environments have demonstrated that the proposed orchestration and placement methods can achieve lower deployment costs and less QoS loss when faced with edge node failures than traditional approaches.
In the Internet of Vehicles (IoV), the Internet of Things (IoT) is integrated with Vehicular Ad hoc NETworks (VANET). This enables gathering, processing and sharing of lots of information (regarding vehicles, roads and their surroundings) through the Internet and hence, helps in making intelligent decisions. On the other hand, Software Defined Networking (SDN) has the capability of designing a flexible programmable IoV network that can foster innovation and reduce complexity. Applying SDN in IoV will be useful, as SDN enabled IoV devices can be controlled seamlessly from an external server (called a controller) which can be located in the cloud and may have computational resources to run resource-intensive algorithms, making intelligent decisions. This chapter provides an introduction about SDN, describes the benefits of integrating SDN in IoV and reports the recent advances. It also presents an Artificial Intelligence (AI) based architecture and open challenges. Finally, the chapter presents an automatic configuration method with which SDN can be deployed automatically in IoV without any manual configuration. The experiments are performed on a publicly available European testbed using an emulator for wireless SDN networks. Experiments are conducted for automatic configuration of SDN in IoV network’s topologies and for data collection in SDN enabled IoV. The results show the effectiveness of the proposed automatic configuration method. Furthermore, AI-assisted intelligent decisions supported by SDN enabled IoV are introduced. The challenges and solutions presented in this chapter may have a huge impact on the speed at which IoV infrastructure can efficiently evolve with market evolution.
Conference Paper
Full-text available
Network Function Virtualization (NFV) refers to the process of running network functions in virtualized IT infrastructures as softwarized Virtual Network Functions (VNFs). Several telecom service providers are currently benefiting from this concept, as it enables a faster introduction of new network services, thereby meeting changing requirements. Following a trend initially adopted by cloud service providers, telecom service providers are also adopting de-aggregation of the VNFs into microservices (services). However, a service-based architecture that can manage a large set of diverse and sensitive network functions requires new Artificial Intelligence (AI)-based methodologies to cope with the complexity of the service-based NFV paradigm. This paper focuses on the use of explainable AI (XAI) for gradually migrating towards a services-based architecture in NFV. The paper first establishes the need for XAI to transform the NFV architecture to a µservice-based architecture and then describes some of our research objectives. Afterwards, our preliminary approach and long-term visions are provided.
Conference Paper
Full-text available
Thanks to rapid technological advances in the In-ternet of Things (IoT), smart public safety (SPS) system has become feasible by integrating heterogeneous computing devices to collaboratively provide public safety services. While the service oriented architecture (SOA) has been adopted in the IoT and cyber-physical systems (CPS), it is difficult for a monolithic architecture to provide scalable and extensible services in a large-scale distributed IoT based SPS system. Furthermore, traditional security solutions rely on a centralized authority, which can be the perform bottleneck or single point failure. Inspired by microser-vices architecture and blockchain technology, this paper proposed a BLockchain-ENabled Decentralized Microservices Architecture for Smart public safety (BlendMAS). Within a permissioned blockchain network, a microservices based security mechanism is introduced to secure data access control in SPS system. The functionality of security services are decoupling into separate containerized microservices that are built on smart contract, and deployed on edge and fog computing nodes. An extensive experimental study verified that the proposed BlendMAS is able to offer a decentralized, scalable and secured data sharing and access control solution to distributed IoT based SPS system.
Conference Paper
Full-text available
Network Function Virtualization (NFV) has recently attracted telecom operators to migrate network functionalities from expensive bespoke hardware systems to virtualized IT infrastructures where they are deployed as software components. Scalability, up-gradation, fault tolerance and simplified testing are important challenges in the field of NFV. In order to overcome these challenges, there is significant interest from research communities to scale or decompose network functions using the monolithic and microservice approach. In this paper, we compare the performance of both approaches using an analytic model and implementing test-bed experiments. In addition, we calculate the number of instances of monoliths or microservices in which a network function could be scaled or decomposed in order to get the maximum or required performance. Single and multiple CPU core scenarios are considered. Experimentation is performed by using an open source network function, SNORT and running monoliths and microservices of SNORT as Docker containers on bare metal machines. The experimental results compare the performance of monolith and microservice approaches and are used to estimate the validity of the analytic model. The results also show the effectiveness of our approach in finding the number of instances (monoliths or microservices) required to maximize performance.
Full-text available
Network Functions Virtualization (NFV), considered a key enabler of Network "softwarization", promises to reduce the capital and operational expenditure for network operators by moving packet processing from purpose-built hardware to software running on commodity servers. However, the state-of-the-art in NFV is merely replacing monolithic hardware with monolithic Virtual Network Functions (VNFs), the software that realizes different network functions (e.g., Firewalls, WAN Optimizers, etc). Although this is a first step towards deploying NFV, common functionality is repeatedly implemented in monolithic VNFs. Repeated execution of such redundant functionality introduces processing overhead when VNFs are chained to realize Service Function Chains and leads to sub-optimal usage of infrastructure resources. This stresses the need for re-architecting the NFV ecosystem, from VNFs to their orchestration, through modular VNF design and flexible service composition. In that perspective, we make the case for using the microservice software architecture, proven to be effective for building large scale cloud applications from reusable and independently deployable components, to re-architect the NFV ecosystem. We also discuss the state-of-the-art in realizing modular VNFs from both industry and academia. Finally, we outline a set of research challenges for microservice-based NFV platforms.
Full-text available
As the size and service requirements of today’s networks gradually increase, large numbers of proprietary devices are deployed, which leads to network complexity, information security crises and makes network service and service provider management increasingly difficult. Network function virtualization (NFV) technology is one solution to this problem. NFV separates network functions from hardware and deploys them as software on a common server. NFV can be used to improve service flexibility and isolate the services provided for each user, thus guaranteeing the security of user data. Therefore, the use of NFV technology includes many problems worth studying. For example, when there is a free choice of network path, one problem is how to choose a service function chain (SFC) that both meets the requirements and offers the service provider maximum profit. Most existing solutions are heuristic algorithms with high time efficiency, or integer linear programming (ILP) algorithms with high accuracy. It’s necessary to design an algorithm that symmetrically considers both time efficiency and accuracy. In this paper, we propose the Q-learning Framework Hybrid Module algorithm (QLFHM), which includes reinforcement learning to solve this SFC deployment problem in dynamic networks. The reinforcement learning module in QLFHM is responsible for the output of alternative paths, while the load balancing module in QLFHM is responsible for picking the optimal solution from them. The results of a comparison simulation experiment on a dynamic network topology show that the proposed algorithm can output the approximate optimal solution in a relatively short time while also considering the network load balance. Thus, it achieves the goal of maximizing the benefit to the service provider.
Full-text available
Today’s telecommunication networks have become sources of enormous amounts of widely heterogeneous data. This information can be retrieved from network traffic traces, network alarms, signal quality indicators, users’ behavioral data, etc. Advanced mathematical tools are required to extract meaningful information from these data and take decisions pertaining to the proper functioning of the networks from the network-generated data. Among these mathematical tools, Machine Learning (ML) is regarded as one of the most promising methodological approaches to perform network-data analysis and enable automated network self-configuration and fault management. The adoption of ML techniques in the field of optical communication networks is motivated by the unprecedented growth of network complexity faced by optical networks in the last few years. Such complexity increase is due to the introduction of a huge number of adjustable and interdependent system parameters (e.g., routing configurations, modulation format, symbol rate, coding schemes, etc.) that are enabled by the usage of coherent transmission/reception technologies, advanced digital signal processing and compensation of nonlinear effects in optical fiber propagation. In this paper we provide an overview of the application of ML to optical communications and networking. We classify and survey relevant literature dealing with the topic, and we also provide an introductory tutorial on ML for researchers and practitioners interested in this field. Although a good number of research papers have recently appeared, the application of ML to optical networks is still in its infancy: to stimulate further work in this area, we conclude the paper proposing new possible research directions.
Full-text available
In this paper, a survey of the literature of the past fifteen years involving Machine Learning (ML) algorithms applied to self organizing cellular networks is performed. In order for future networks to overcome the current limitations and address the issues of current cellular systems, it is clear that more intelligence needs to be deployed, so that a fully autonomous and flexible network can be enabled. This paper focuses on the learning perspective of Self Organizing Networks (SON) solutions and provides, not only an overview of the most common ML techniques encountered in cellular networks, but also manages to classify each paper in terms of its learning solution, while also giving some examples. The authors also classify each paper in terms of its self-organizing use-case and discuss how each proposed solution performed. In addition, a comparison between the most commonly found ML algorithms in terms of certain SON metrics is performed and general guidelines on when to choose each ML algorithm for each SON function are proposed. Lastly, this work also provides future research directions and new paradigms that the use of more robust and intelligent algorithms, together with data gathered by operators, can bring to the cellular networks domain and fully enable the concept of SON in the near future.