Sie sind auf Seite 1von 9

APMEC: An Automated Provisioning Framework

for Multi-access Edge Computing


Technical Report

Tung V. Doan∗ , Giang T. Nguyen∗ † , Alexander Kropp∗ , and Frank H. P. Fitzek∗


∗ DeutscheTelekom Chair of Communication Networks
† SFB-912 HAEC, Technische Universität Dresden, Germany
Email: {firstname.lastname}@tu-dresden.de
arXiv:1805.09251v1 [cs.NI] 9 May 2018

Abstract—Novel use cases and verticals such as connected cars still been at horizon. Additionally, to maximize the interoper-
and human-robot cooperation in the areas of 5G and Tactile ability to support users’ mobility, such MEC framework has
Internet can significantly benefit from the flexibility and reduced to support heterogeneous computation platforms with open
latency provided by Network Function Virtualization (NFV)
and Multi-Access Edge Computing (MEC). Existing frameworks and clearly defined interfaces to enable a variety of NFV
managing and orchestrating MEC and NFV are either tightly frameworks. Significant efforts have been done to define a
coupled or completely separated. The former design is inflexible clear and open architecture for MEC frameworks [5]. The
and increases the complexity of one framework. Whereas, the functional separation between manager, orchestrator as well
latter leads to inefficient use of computation resources because as virtualization infrastructure manager makes it easer to
information are not shared. We introduce APMEC, a dedicated
framework for MEC while enabling the collaboration with the design modular software solutions. However, a flexible design
management and orchestration (MANO) frameworks for NFV. considering the interaction between MEC and MANO frame-
The new design allows to reuse allocated network services, thus works and a practical implementation and careful evaluation of
maximizing resource utilization. Measurement results have shown such framework are still missing. The challenge is, therefore,
that APMEC can allocate up to 60% more number of network complex and significant, especially because the development
services. Being developed on top of OpenStack, APMEC is an
open source project, available for collaboration and facilitating workload of such a framework is enormous.
further research activities. In this paper, we design APMEC, a flexible and independent
framework for MEC applications, yet allowing for the collab-
I. I NTRODUCTION oration with NFV frameworks. To proactively orchestrate the
Tactile Internet [1], promisingly supports ultra-responsive resource allocation as well as life cycle related operations on
and ultra-reliable applications such as steering and control of both frameworks, we introduce the concept of a MEC service
vehicles and industrial automation [2] by providing extremely as the combination of a MEC application and its respective
low latency. However, latency reduction is limited by physical network service (NS). This allows APMEC to bind new MEC
constraints such as geographical distance between clients applications to allocated yet underloaded network services to
and application server normally hosted at a faraway cloud avoid creating additional network services, thus increasing
platform. If application servers can be allocated in a close computation resource utilization. Subsequently, APMEC in-
proximity to end users, at the mobile network edges, the cludes a global orchestration module, namely MEC Service
latency can be significantly reduced. This solution implies Orchestrator (MESO), which provides a common API to man-
to equip base stations with cloud computing capability to age the MEC services. The design of our developed framework
significantly increase its computation power to host applica- APMEC follows closely the MEC reference architecture of
tions. That is the basic idea behind mobile edge computing, ETSI, with clearly defined interfaces to MANOs.
and later evolved into other access technologies, such as The contributions of this paper are threefold: First, APMEC
WiFi, becoming Multi-access Edge Computing (MEC). The is a dedicated and flexible framework for MEC applications.
challenges for MEC lies not only on hardware deployment APMEC’s modular design follows closely ETSI’s reference ar-
at network edges and managing the virtualized resource, but chitecture for MEC, facilitating future extensions and support-
also on software solutions to automatically orchestrate MEC ing interoperability with other frameworks. Furthermore, AP-
applications and services and to coordinate with NFV frame- MEC’s clearly-defined API to MANO modules support multi-
works responsible for virtualized network functions at the site and multi-VIMs (Virtualization Infrastructure Managers).
network core, which has been gathered significant momentum Second, the framework is ready to collaborate with existing
in research communities. and future MANO frameworks, such as Tacker, via a global
Even though management and orchestration (MANO) orchestration module, increasing the number of allocated net-
frameworks for NFV, such as Tacker [3] and OpenBaton [4] work services by 60%, thus gaining resource utilization. Third,
has been developed and tested, a counterpart for MEC has being developed on OpenStack, a carrier-grade VIMs and one
of the most used OCCI [6] implementations, APMEC can B. Related work
potentially maximize its potential to be further developed or Considering the significant similarity between functional
tested in real-world environment as well as open for research blocks of the MEC architecture and MANO for NFV [7],
activities. a MEC framework should benefit from services offered by
The rest of the paper is organized as follows. We discuss the MANO. Several prior approaches have been proposed to man-
background and related work in Section II, while Section III age and orchestrate MEC applications. Reusing MANO’s man-
elaborates the architecture of the APMEC framework. Then, ager and orchestrator for MEC applications is the approach
we present the optimization problem of resource allocation and proposed by Carella et al. [8]. The extension is mainly at
our heuristic algorithm in Section IV. Afterwards Section VI the VIM entity to support container-based infrastructure. The
describes experiment setups and discusses evaluation results. small footprint of containers make them a viable candidate for
Finally, we concludes the paper and sketch our future work in deployment at edge nodes. The work is developed specifically
Section VII. on OpenBaton but similar extension can also be implemented
for other MANO implementations such as Tacker [3] and
II. BACKGROUND AND R ELATED WORK ONAP [9]. This approach, however, has several drawbacks:
In order to run applications at the network edge, Multi- First, OpenBaton has not been tested widely in large scales.
access Edge Computing (MEC) needs to equip with cloud Second, the MEC framework is locked in a specific MANO
computing capability for application developers and content implementation and less flexible for future MEC, thus hin-
providers. Thus, MEC needs to manage and orchestrate at dering it from multi-MANO support. Third, even though a
the edge hosts all resources such as compute, storage and prototype has been developed, no quantitative evaluation has
networking not only at host-level but also at system-level in an been conducted. In a different approach, NFV and MEC
automated manner. The latter serves a central role and consists use separate managers and orchestrators, assuming that a
of four main building blocks as defined by ETSI’s reference common VIM is responsible for the virtualized infrastructure
architecture [5]. The Virtualization Infrastructure Manager of both areas [10], [11]. MEC applications, therefore, can be
(VIM) is responsible for managing, allocating and releasing flexibly provisioned either independently or in coordination
virtualized resources to run software images of the MEC with NFV. However, it is uncertain whether the architecture
applications. The Mobile Edge Platform Manager supervises supports multiple MANOs. More importantly, the framework
the life cycle of applications, rules and service authentica- is not designed to efficiently provision resources in MANO
tion. Mobile Edge Orchestrator maintains an oversight of the framework. Finally, there is neither prototype nor performance
whole MEC systems, including topology, hosts’ resources and evaluation of the proposed architecture.
assigns MEC applications to appropriate mobile edge hosts Orthogonal to the above approaches, a significant number
satisfying constraints on latency, available resources and ser- of studies has been solving the challenge of service placement.
vices. The fourth building block, Operations Support System Yang et al. [12] addresses the challenge of MEC orchestrator
(OSS), is the entry point receiving requests for application and manager to optimally place MEC applications to physical
instantiation and termination, checks the validity of requests hosts in the presence of a constantly changing workload.
and forwards granted ones to the orchestrator. Nevertheless, Also tackling the placement optimization, Solozabal et al.
the realization of such framework to orchestrate and manage [13] chooses to modify the VIM entity, considering the mixed
MEC applications, especially in coordination with network radio-cloud environment at the edge. Even though acknowl-
functions is still an open question. edging the significance of those solutions, it is difficult to
achieve optimal solution without considering both NFV and
A. Requirements for a MEC provisioning framework MEC.
All in all, is still an open research question w.r.t. an ar-
To automatically and efficiently manage and orchestrate
chitecture and implementation to provision MEC applications
MEC applications alongside existing MANO systems, the
in coordination with NFV in a resource-efficient manner.
framework has to meet the following objectives:
Furthermore, the framework has to support multi-VIM as well
R1 Automation: To automatically process the deployment as multiple MANOs to cover the heterogeneity of the under-
requests, from translating them to deciding placement lying networks. In the following we will describe APMEC,
strategy, monitoring and deploying virtualized instances our automated provisioning framework for MEC applications
for MEC applications and network services. addressing the above challenges.
R2 Maximizing resource utilization: efficiently use the over-
all computation resources by collaboration with MANOs. III. APMEC: F RAMEWORK D ESIGN
R3 Interoperability: To allows the framework to work with APMEC’s hybrid approach is i) to separate the orchestration
a wide range of different VIMs. and management between MEC applications and NS and ii)
R4 Flexibility: To operate either as a standalone entity or in to maintain a loose coupling with the MANO framework.
collaboration with one or even multiple MANOs. This allows for independently developing the two frameworks
R5 Small footprint: To maintain a small and optimized code while keeping APMEC a small footprint by focusing only on
base by keeping only functionalities dedicated for MEC. MEC functionalities. At the same time, this enables APMEC
Operations
/Business
Layer
Operations/Business support systems (OSS/BSS)

End users Deep Packet APMEC


Firewall Video Caching
Inspection (DPI) MEC Orchestrator (MEO)
MEC Service Orchestrator

Orchestration
(MESO) MEO Multi-VIM
NFV Network service MEC application

Service

Layer
Coordinator Management

MEC service MANO Live Migration State


Management Management
Fig. 1. The concept of a MEC serice (MES), consisting of a Network NFV Orchestrator(s)
service (NS) and a MEA (MEA) with an example of (Firewall-DPI) and
Video Caching. MEC Manager (MEM)

Management
MEM MEM

Platform

Layer
VNF Manager(s) Coordinator Monitoring

MEA
to flexibly and efficiently decide connections between MEC MEA
Management Alarming
applications and its respective network services. In the fol-
lowing we elaborate our hybrid approach with ideas, concepts

Manager (VIM)
Infrastructure
Virtualization
of APMEC and then its architectural design.
(potential support)
A. Ideas and concepts
To loosely couple MEC applications and network services, Fig. 2. Architecture design of APMEC, in connection with Managment and
we introduce the concept of a MEC service (MES) which is a Orchestration (MANO) and Virtual Infrastructure Manager (VIM).
combination of i) a MEC application (MEA) and ii) a service
function chain (SFC) consisting of a set of VNFs, represented
by their identifiers. Fig. 3 illustrates an example of a MES
into a VIM’s understandable format. Finally, MEM converts
consisting of a video cache as MEC application and a NS
requests into VIM’s function calls to actually instantiate MEA
which includes a Firewall and a Deep Packet Inspection (DPI).
instances.
The NS lies between users and the MEC application.
To support the automated management and orchestration of MEA Management: is in charge of configuring MEAs
MES, we introduce a unified data model to formulate resource after they are launched. This normally involves the setting
requirements and orchestration scenarios. Data objects of of parameters’ values for bootstrap process. For instance, a
the same format is then used for communication between video caching server needs to know addresses of the original
users and APMEC as well as internally between APMEC’s content server and other caching instances for collaboration. In
components. This eliminates manual tasks and data conver- addition to that, MEA Manager is also in charge of automated
sion, thus reducing errors, overhead and latency. Additionally, scaling and healing. When MEA tends to be overloaded due
APMEC advocates an open and clearly design of its Appli- to e.g. a surge in requests, MEA manager duplicates MEA
cation Programming Interface (API) to ensure interoperability instances using the stored information from the data objects.
between management and orchestration modules of APMEC Similarly, MEA manager relaunches MEA instances when the
and MANO frameworks. Subsequently, different MANOs can running ones fail.
potentially communicate with APMEC via its API. MEM Monitoring and MEM Alarming: To automate the
scaling and healing process, MEM monitoring and MEM
B. Architectural Design alarming components are introduced. APMEC receives from
In accordance with the bottom-up approach when designing its users monitoring parameters and alarm configurations i.e.
APMEC, we describe first its management and orchestration metrics, threshold, actions, etc. and the type of notification
modules of MEC applications. The design of those modules for each alarm. When an alarm signal is trigger, due to e.g. a
follows closely ETSI’s reference architecture for MEC [5]. certain metric approaches its predefined threshold, the MEA
Afterwards we elaborate the interaction between APMEC and alarming module calls appropriate procedures to react to the
MANO frameworks and finally the interaction with the virtual event. Monitoring and alarming functionalities directly benefit
infrastructure manager (VIM). the automated scaling and healing ones.
1) Management of MEC applications: MEC Manager MEM Coordinator: is in charge of the direct cooperation
(MEM) is in charge of MEA instances’ life cycle, which between a MEA and VNF instances to improve efficiency.
includes automated provisioning, monitoring, configuration, MEM Coordinator can request MANO to update the configu-
healing, and scaling. They are managed by several modules rations of a specific network function. E.g., via MEM coordi-
as follows. The automated provisioning functionality is in nator video caching can directly request firewall–managed by
charge of receiving and dispatching users’ requests for MEC VNFM–to add or update access rule or network policies.
applications. MEM provides an API for APMEC users to send 2) Orchestration of MEC applications: MEC Orchestra-
their requests on MEC application’s resources (CPU, memory, tor (MEO): is mainly responsible for coordinating resources
network, etc.). Then, the module translates those requests across various VIMs and deciding where to deploy MEAs.
Through the API provided by MEM, MEO can make requests
for the life cycle of the MEAs (initiation, deletion, update,
etc.). Since MEO has global view of resources across multiple Soffer Sreq
VIMs, MEM can also make a request to obtain VIM access
from MEO so that the life cycle of the MEAs can be performed
on the specific infrastructure. Such a design helps MEO to
Maximize ()
avoid bottleneck when managing the life cycle of the MEAs
accross multiple VIMs. Fig. 3. MEC service placement optimization problem which aims to maximize
Multi-Vim Management (MM): is in charge of commu- the overlapping area between the offered NSs Soffer and the requested NSs
Sreq .
nicating with multiple VIMs to support MEO’s operation.
This module should answer MEO’s request on a list of VIMs
satisfying a certain criteria, e.g. about distance or resource.
MEO Coordinator: is responsible for coordinating the To summarize, this section presents APMEC framework
operations between NFV and the MEA. MEA can directly that includes MEM and MEO to respectively manage and or-
make an urgent request to update the NFV NS so that it chestrate the MEC applications and MESO to coordinate both
helps improve the performance of the MEA immediately. MEA and NS. To efficiently allocate computation resources for
In particular, through APIs provided by the NFV Orches- MEC services, MESO has to decide an optimized placement
trator, MEO Coordinator can directly make a request for strategy whose algorithm will be detailed in the next section.
NFV functionalities. A particular MEA can directly make an IV. P LACEMENT OPTIMIZATION OF MEC SERVICES
urgent request to update the NS policy to quickly response
Due to the fact that an NS is the combination of multiple
to an incidence. For example, the MEO coordinator can help
NFs, the provisioning of the NSs could lead to the high deploy-
MEC applications i.e. caching servers to request MANO’s
ment cost. It is worth noting that the MES includes the NSs
orchestrator to update its configuration to divert clients request
and MEAs, therefore we solve the MES placement problem by
through DPI when they observe a surge in request traffic.
reusing the NSs for multiple MEC applications. In this section,
Live Migration Management (LMM) and State Manage- we first formulate the MES placement problem in terms of
ment (SM): are essential future modules for the live migration deployment cost optimization. We then propose a heuristic
of running MEAs. To ensure the uninterrupted operation of algorithm to minimize the number of virtual machines that
MEA during migration process, their states require proper are used for the MES initiation.
management. Let assume that N F = {N F1 , N F2 , ..., N FN } is the set
3) Service Orchestrator (MESO): is responsible for jointly of N network functions. For each i ∈ {1, 2, ..., N }, N Fi
coordinating the operations of MEO’s and MANO’s orchestra- denotes the ith network function and yi denotes the number
tors. This module becomes the unique entry points to APMEC of instances of N Fi . Let Soffer = {s1 , s2 , ..., sM } be the set of
for user requests on resource of both MEC application and M NSs that are offered by the MANO framework. For each
NS. Without MESO, users need to interact with two frame- m ∈ {1, 2, ..., M }, sm denotes the mth NS.
works for provisioning a service. MESO’s single interface In order to initiate the offered NS sm , the number of NF
simplifies further the operations of APMEC’s users. MESO instances could be formulated as:
provides dispatching functionalities to forward separately the
N
requirements for APMEC and MANO modules. Since MESO X
has a broader view on both MEC and NFV, it is responsible Fm = xmi yi ∀m ∈ [1, M ] (1)
i=1
for smart decisions on the placement of MEC applications as
well as NSs to optimize for a set of requirements. The use where: 
of MESO also make it simpler for APMEC to interact with 1 if N Fi ∈ sm ,
xmi = (2)
different MANOs. For each additional MANO framework, 0 if N Fi ∈
/ sm .
MESO might need to develop an adapted interface, while
Let K be the number of NSs Sreq = {s1 , s2 , ..., sK } that
keeping the internal operations unchanged. Using a unified
are requested to support K MEAs A = {a1 , a2 , ..., aK },
data model, MESO allows users to describe the MES whose
repsectively. For each k ∈ {1, 2, .., K}, sk and ak denote the
description contains information for both the requested NS and
k th requested NS and the k th MEA, respectively. The number
MEA.
of NF instances requested by NS sk is calculated as:
4) Other functionalities: An important functionality is the
interaction of APMEC with Virtual Infrastructure Managers N
X
(VIMs). In our design, APMEC and MANO frameworks can, Fk = xki yi ∀k ∈ [1, K] (3)
but not necessarily, share the same infrastructure to leverage i=1

hardware resources. Additionally, APMEC might also need


where: 
to communicate with OSS/BSS module to coordinate its 1 if N Fi ∈ sk ,
operations with legacy systems. xki = (4)
0 if N Fi ∈
/ sk .
Let assume Fkm is the number of NF instances in the have best fit to the number of NF instances in the requested
offered NS sk that are also re-used by the requested NS sk . For NS sk .
each k ∈ [1, K], m ∈ [1, M ], and i ∈ [1, N ], ykmi represents In order to comply with the first condition, the NS candidate
the number of NF instances of NF i in the offered NS sm sm could be used to serve the requested NS sk , given by:
that could be re-used by the requested NS sk . Fkm could be
formulated as: N
X
m = argm max xkmi ∀k ∈ [1, K], ∀m ∈ [1, M ] (14)
N i=1
X
Fkm = xkmi ykmi ∀k ∈ [1, K], ∀m ∈ [1, M ] (5)
where: 
i=1 1 if ymi − yki ≥ 0,
xkmi = (15)
0 if ymi − yki < 0.
where:
 Eq. 14 implies that the set of NFs in the requested NS
1 if N Fi ∈ sk ∩ sm ,
xkmi = (6) sk should be mostly listed in the selected NS sm under the
0 if N Fi ∈
/ sk ∩ sm .
constrain of the number of NF instances as shown in (15). The
From Eq. 3 and Eq. 5, without any placement optimization Eq. 14 could result in a set of NS candidates.
the total number of NF instances Tmax in the system could In order to optimize the number of NF instances, the number
be given by: of NF instances in the NS candidate sm∗ have best fit to the
number of NF instances in the requested NS sk , given by:
M
X K
X
Tmax = Fm + Fk (7)
Fk
m=1 k=1 m∗ = argm max ∀k ∈ [1, K], ∀m ∈ [1, M ] (16)
Fm
In this paper, we solve the placement optimization problem
by minimizing the total number of NF instances T in the
system. This problem could be expressed as: Algorithm 1 The propsed algorithm for the MES placement
Input: N, M, K, Cmax
T ≤ Tmax (8) Output: m∗
1: k ← 1
In order to solve the problem (8), we consider to reuse the // Phase 1: Finding the NS candidate that has the best fit
offered NSs. Thus, the total number of NF instances T could to the numer of NFs in the requested NS sk .
be formulated as: 2: while k ≤ K do
3: m←1
M
X K
X K X
X M
4: while m ≤ M do
T = Fm + Fk − Fkm (9)
5: Find P NSs that are satisfied with Eq. 14.
m=1 k=1 k=1 m=1
6: m←m+1
For each i ∈ [1, N ], let assume that ci is the reuse capacity 7: end while
of N Fi . Consequently, the problem (8) could be traformed to: // Phase 2: Finding the NS candidate that has the best
K X
X M fit to the numer of NF in the requested NS sk .
max Fkm (10) 8: while m ≤ P do
k,m
k=1 m=1 9: Find NS m∗ according to Eq. 16
s.t. xki ∈ {0, 1}, ∀k ∈ K, ∀i ∈ N, (11) 10: m←m+1
11: end while
xkmi ∈ {0, 1}, ∀k ∈ K, ∀m ∈ M, ∀i ∈ N, (12)
12: k ←k+1
ci ≤ Cmax , ∀i ∈ N. (13) 13: end while

where Cmax is the maximum reuse capacity that each NF can V. R EALIZATION OF APMEC
obtain. In this section, we describe the realization of the APMEC
We acknowledge that the problem (10) is a non-convex framework, including the modeling of data objects for inter-
optimization problem since constraint (11) and constraint module communication, the initiation process andthe imple-
(12) are binary variables. Therefore, we proposed a heuristic mentation of APMEC.
algorithm to solve the aforementioned problem. We detail the
proposed algorithm as follows. A. Data modeling for MEC services
To find the NS candidate, there are two conditions that need To unify the description of computation resources for
to be satisfied: i) the number of NFs in the NS candidate sm the MEC application and those of the network services as
must be closest to the number of NFs in the requested NS sk , well as their deployment scenarios, we need a unified data
and ii) the number of NF instances in the NS candidate sm model. The candidate data model has to be generic enough
to support different kind of underlying VIMs. TOSCA [14], MESO MEO MEM NFVO VNFM

standing for Topology and Orchestration Specification for Create a MES


Cloud Applications, is a promising candidate that satisfies (ex: FW-NAT-
Cache)
our requirements. It supports automated management, i.e. Deploy NS

automatically deploying the management plan of a service Deploy MEA(s) Spawn NS


and portability, meaning to formalize the application and Set MEA Deploy VNF(s)
its management in a self-contained way so that it can be placement policy

deployed on another VIM. TOSCA, widely adopted by the Deploy MEA(s)


Spawn VNF(s)
well-known MANO frameworks as elaborated in [15], [16], Spawn
and [17], provides a powerful language model to describe MEA(s)
MEA(s) are
VNF(s) are
various NFV specifications including NSs, their topologies and active
active

requirements. Subsequently, we use TOSCA to define an MEC Complete MEA(s)


Service Descriptor (MESD) to represent a set of requirements. MEA(s) are active
Complete NS

The descriptor consists of two parts: MEA Descriptor (MEAD) NS is active

and NS Descriptor (NSD) describing resource requirements Complete MES

of MEC application’s and Network service respectively. An


example of a MESD template based on TOSCA profile could
Fig. 4. Initiation procedure for MEC services that shows the interoperability
be expressed as following: between APMEC and the MANO framework.
1 tosca_definitions_version:
2 tosca_simple_profile_for_mec_1_0_0
3 import:
4 meads: # MEA Descriptors C. Implementation
5 - MEA_Descriptor_1
6 nsds: # NS Descriptors There are two options to implement APMEC, which is either
7 - NS_Descriptor_1 starting from scratch or leveraging an existing framework. The
8 vnffgds: # VNF Forwarding Graphs former approach would provide more degree of freedom in the
9 - vnf_forwarding_graph_1
10 topology: development process. However, an extensive effort has to be
11 node_templates: done to develop all the functionalities, including interfaces to
12 MEA_1: various VIMs. APMEC follows the latter approach to lever-
13 type: tosca.nodes.nfv.MEA_1
aging the OpenStack framework [18]. OpenStack is the most
In the above example, the items after the keyword import used implementation of OCCI [6], a specification aiming at
list the definitions for MEA and NS description as well as smooth migrating cloud applications between cloud providers.
the connectivity between VNFs described via NFV forwarding Several operators have been planning to use OpenStack to
graph and topology. manage resource their infrastructure to coordinate NS services
[19], [20]. Building APMEC directly on top of OpenStack will
increase the performance while leveraging the wide variety
B. The Initiation Procedure for MEC services
of supporting projects such as for monitoring and alarming
When APMEC receives via MESO a request for a MEC among others.
service, MESO parses the data model object in the request, In accordance with OpenStack’s architecture, APMEC’s
break it into data segments for the MEA and network services. code base is organized into three Python-based repositories: i)
After running the placement algorithm, it performs the initia- Two APMEC Clients [21], [22] to support user interaction with
tion procedure as follows. First, MESO calls APMEC’s MEO the framework, either via command-line and web-based inter-
and MANO’s NFVO to deploy MEA and network services faces; and ii) An APMEC Server [23] which is responsible for
respectively. For MEC applications, MEO sets the placement internal processing of requests, implementing functionalities
policy, which is the mapping of the virtual machines to phys- detailed in the design section. Management and orchestration
ical hosts. Afterwards, MEO requests MEM to instantiate the modules such as MESO, MEO, and MEM are implemented
MEAs. After validating the the validity of MEA description as code modules of APMEC server. Each of those modules
(i.e., by using openStack Tosca-parser to parse the MEA de- includes three elements: i) an API handler, which validates
scription), MEM calls the appropriate translator to convert the and dispatches user requests to the corresponding modules, ii)
description from TOSCA format VIM’s understandable format driver modules, which include libraries and APIs to perform
and then sends to VIM. Subsequently, VIM launches the MEA specific functionalities (e.g., monitoring, alarming, etc.), and
instances. For network services, MESO requests NFVO to iii) a plug-in module between the API handler and the driver,
initiate the NS. NFVO, then, calls VNFM to instantiate the which processes user requests and calls appropriate drivers.
set of NFs included in the NS. The MES initiation is finished This pluggable design allows developers to easily add new
when both the MEAs and NS are successfully initiated. The features to the framework (i.e., by adding the new drivers and
complete procedure of initiating MEC services is illustrated connect them to the plug-in module).
in Fig. 4. The subsequent challenge is to translate this template into
the formats understood by the underlying VIM managers. for the experiment. The use of x86 CPU architecture simplifies
However, they mostly based on either JSON or YAML format the deployments due to the available of driver and software
and there exists tools to convert from one format to another. support for that CPU architecture. On top of the Ubuntu
Since APMEC is build on top of OpenStack, it has to translate 16.04 LTS operating system, we then deployed OpenStack
TOSCA template into HOT template understood by OpenStack (version Pico). Tacker–the MANO framework for OpenStack–
Heat [24], the orchestrator for various services within Open- and APMEC were deployed afterwards. Tacker was used to
Stack such as Nova for compute, Neutron for network, and deploy network services while APMEC was used for to deploy
Ceilometer for monitoring services etc. Specifically, APMEC MEC alone or in combination with network services. All VMs
uses Heat Translator [25] for the translation between TOSCA running network functions have identical configuration with 1
and HOT templates. Future translators to support different vcpu, 10 GB hard disk and 500 MB RAM.
VIMs, such as Amazon AWS or Microsoft Azure can be added After verifying the functional operation of APMEC on
with minor efforts. the practical testbed, we reverted to simulation to study its
APMEC’s monitoring functionality implements two ser- performance in a larger scale. Subsequently, we developed
vices. The fundamental one performs ping tests to confirm the a lightweight simulator in Python, implementing only the
reachability of a MEA instance. The advanced service allows NS placement algorithms of APMEC. Initially, the system is
for APMEC to collect a variety of metrics from a MEC ap- empty without any network service. The simulation starts with
plication such as CPU workload and memory usage. APMEC the first network service’s request. Any subsequent request for
leverages the available OpenStack Ceilometer [26] projects for a new network service is generated one after another when the
this functionality, implementing wrapper functions, facilitating previous request had been allocated. Each requested network
the abstraction and extensions of new services. service was generated with a random size. The process stops
To take advantage of the monitoring function, APMEC also when the system has no capacity to allocate a new request.
includes alarming functionality that promptly informs APMEC We fixed the system capacity to 100 VMs.
about various events (e.g.,the MEAs get overloaded or halt). We ran the simulation to compare two approaches repre-
To enable the alarming functions, users first need to describe senting the interaction between MEC and NFV frameworks:
alarm configuration (e.g., CPU and memory threshold, metrics, i) separated frameworks and ii) cooperated frameworks. The
etc.) for the specific MEA. Afterwards, APMEC generates an two approaches are referred to as separation approach and
HTTP URI that contains the MEA identity corresponding to cooperation approach hereafter.
the alarm configuration through the alarm drivers. They are
a set of libraries offered by the alarming tools. The alarm A. Impacts of the sizes of network services
configuration and the corresponding URI are forwarded to We would like to investigate the impact of the size of
Heat. In turn, Heat calls the API offered by the alarming tool to network services, meaning the number of contained network
set alarm configuration. APMEC leverages OpenStack’s Aodh functions, to the two approaches. Subsequently, we fixed the
project to provide the alarming services. number of NF instances and the VM capacity to three while
The auto scaling/healing of APMEC is implemented on top varying the maximum size of requested network service be-
of the OpenStack Heat project. APMEC stores all the deployed tween one and six. The number of allocated network services
Heat stacks defining resources for a certain application as for both approaches were collected and plotted in Fig. 5(a). As
well as its orchestration. They will be retrieved to recreate the maximum sizes of network services increases, the number
or duplicate instances up on request. of number of allocated network services for both approaches
In our current implementation, APMEC – especially MESO decreases. However, the magnitude of decrease slows down
and MEO modules – works closely with OpenStack Tacker as the size increases. In all settings, the cooperation approach
as the backend manager and orchestrator for NS. However, outperforms the separation one. In intuitively, the reason for
APMEC is not bound to Tacker, but instead can potentially this achievement is that the separation approach does not
work with any MANO implementation given its API. consider to reuse the NSs, therefore it rapidly consumes the
hardware resources in terms of VMs. Subsequently, it results in
VI. P ERFORMANCE E VALUATION the reduction of the number of allocated network services. In
In this section, the developed APMEC framework and its contrast, the cooperation approach leverages the running VMs
best-fit heuristic algorithm for NS placement are assessed of deployed newly arriving NSs, reserving more available VMs
w.r.t its capability to efficiently utilize computation resource. for later network services.
Toward that goal we are interested in the number of allocated
network services given a specific system capacity in terms of B. Impacts of the NF instance and VM capacity
the number of virtual machines. In this part of the experiments, we would like to investigate
To verify the functional operation of APMEC, we first the impact of NF instance and VM capacity to the two
deploy the framework on a physical server with 32-core Intel approaches. Subsequently, we fixed the maximum size of net-
Xeon CPU at 2.4 GHz and 128 GB of RAM spread across two work service to three while varying the NF instance between
NUMA nodes. The large amount of memory allows for the one and six and the VM capacity between one and nine with
concurrent deployment of multiple VMs which is necessary a step of three. The number of allocated network services
Comparison between 2 approaches where Comparison between 2 approaches where
NF instance = 3 and VM capacity = 3 NF instance = 3
120
Cooperation 200 Cooperation with VM capacity = 1
Separation Cooperation with VM capacity = 3
100 175 Cooperation with VM capacity = 5
Number of Accepted Requests

Number of Accepted Requests


Cooperation with VM capacity = 7
150
80 Cooperation with VM capacity = 9
125 Separation
60 100
75
40
50
20 25
0
1 2 3 4 5 6 0 1 2 3 4 5 6
The size of Network Service The number of NF instances per NF in Network service
(a) The number of accepted requests versus NS size. (b) The number of accepted requests versus NF instances.

Fig. 5. The number of accepted requests are used for the MES creation compared between Cooperation and Separation approaches.

for both approaches were collected and plotted in Fig. 5(b). R EFERENCES
As NF instance increases, the number of allocated network [1] G. P. Fettweis, “The tactile internet: Applications and challenges,” IEEE
services for all systems’ configuration decreases. However, Vehicular Technology Magazine, vol. 9, no. 1, pp. 64–70, March 2014.
in all settings, the cooperation approach outperforms the [2] M. Simsek, A. Aijaz, M. Dohler, J. Sachs, and G. Fettweis, “5g-enabled
tactile internet,” IEEE Journal on Selected Areas in Communications,
separation one. Additionally, as the VM capacity increase, the vol. 34, no. 3, pp. 460–473, March 2016.
number of allocated network services in cooperation approach [3] “OpenStack Tacker: https://wiki.openstack.org/wiki/Tacker/. Accessed
is significantly larger than that of the separation approach. February 2018.”
[4] G. A. Carella and T. Magedanz, “Open baton: a framework for virtual
With a reasonable NS size of three and the VM capacity network function management and orchestration for emerging software-
of five, meaning five network services can share one VM based 5g networks,” Newsletter, vol. 2016, 2015.
of a particular network function, the cooperation approach [5] E. I. S. G. (ISG), “Mobile Edge Computing (MEC); Framework and Ref-
erence Architecture,” European Telecommunications Standards Institute
and allocate almost 60% more number of network service as (ETSI), March 2016.
compare to the separation approach. [6] “Open Cloud Computing Interface (OCCI): occi-wg.org/. Accessed
February 2018.”
[7] E. I. S. G. (ISG), “Network Functions Virtualisation (NFV); Man-
VII. C ONCLUSION agement and Orchestration,” European Telecommunications Standards
Institute (ETSI), December 2014.
In this paper, we design APMEC, a novel and dedicated [8] G. A. Carella, M. Pauls, T. Magedanz, M. Cilloni, P. Bellavista, and
L. Foschini, “Prototyping nfv-based multi-access edge computing in 5g
framework for automated provisioning of MEC applications. ready networks with open baton,” in 2017 IEEE Conference on Network
The design of APMEC allows for jointly collaborating with Softwarization (NetSoft), July 2017, pp. 1–4.
MANO frameworks. Subsequently, we introduce the concept [9] “Open Network Automation Platform (ONAP): https://www.onap.org/.
Accessed February 2018.”
of a MEC service, consisting of a MEC application and a [10] V. Sciancalepore, F. Giust, K. Samdanis, and Z. Yousaf, “A double-
Network Service (NS), allowing for reusing allocated network tier mec-nfv architecture: Design and optimisation,” in 2016 IEEE
services for new requests, thus maximizing computation re- Conference on Standards for Communications and Networking (CSCN),
Oct 2016, pp. 1–6.
sources. After modeling the network service placement as an [11] B. LI, Y. ZHANG, and L. XU, “An mec and nfv integrated network
optimization problem, the paper proposes a best-fit heuristic. architecture,” ZTE COMMUNICATIONS, vol. 15, no. 2, p. 1, 2017.
APMEC and its heuristic are developed on top of OpenStack. [12] B. Yang, W. K. Chai, G. Pavlou, and K. V. Katsaros, “Seamless support
of low latency mobile applications with nfv-enabled mobile edge-
Experiment results have shown that APMEC can allocate up cloud,” in Cloud Networking (Cloudnet), 2016 5th IEEE International
to 60% more number of network services. Conference on. IEEE, 2016, pp. 136–141.
The framework paves the way for several future research [13] R. Solozabal, B. Blanco, J. O. Fajardo, I. Taboada, F. Liberal, E. Jimeno,
and J. G. Lloreda, “Design of virtual infrastructure manager with
directions, including: i) the implementation of more compre- novel vnf placement features for edge clouds in 5g,” in International
hensive optimization to further improve resource utilization Conference on Engineering Applications of Neural Networks. Springer,
and ii) the live migration of MEC applications. 2017, pp. 669–679.
[14] OASIS, “Topology and Orchestration Specification for Cloud
Applications, 2016. Accessed: 2017/01/08, available: http://docs.oasis-
ACKNOWLEDGMENT open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/csprd02/TOSCA-
Simple-Profile-YAML-v1.0-csprd02.pdf.”
This work is supported in part by the German Research [15] “OpenStack Tacker: https://wiki.openstack.org/wiki/Tacker. Accessed
January 2018.”
Foundation (DFG) within the Collaborative Research Center [16] “ETSI OSM: https://osm.etsi.org/. Accessed January 2018.”
SFB 912 (HAEC) and BMBF-Project FAST. [17] “Open Baton: https://openbaton.github.io/. Accessed January 2018.”
[18] “OpenStack: https://www.openstack.org/. Accessed February 2018.”
[19] “OpenStack for TELECOM and NFV:
https://www.openstack.org/telecoms-and-nfv/. Accessed April 2018.”
[20] “Deustsche Telekom Terastream - A Network
Functions Virtualization (NFV) using OpenStack:
https://www.a10networks.com/sites/default/files/case-study-files/A10-
CS-80103-EN.pdf. Accessed April 2018.”
[21] “OpenStack Apmec Client: https://github.com/openstack/python-
apmecclient. Accessed May 2018.”
[22] “OpenStack Apmec Horizon: https://github.com/openstack/apmec-
horizon. Accessed May 2018.”
[23] “OpenStack Apmec Server: https://github.com/openstack/apmec. Ac-
cessed May 2018.”
[24] “OpenStack Heat: https://wiki.openstack.org/wiki/Heat. Accessed Febru-
ary 2018.”
[25] “OpenStack Heat Translator: https://wiki.openstack.org/wiki/Heat-
Translator. Accessed February 2018.”
[26] “OpenStack Heat: https://wiki.openstack.org/wiki/Telemetry. Accessed
February 2018.”

Das könnte Ihnen auch gefallen