Analytical Modeling for Virtualized Network Functions
Abstract
Network Function Virtualization (NFV) is considered one of the key technologies for the 5G mobile networks. In NFV, network functions are implemented in software components denominated Virtual Network Functions (VNFs) running on commodity hardware. In this paper, we propose an analytical model based on an open queuing network of G/G/m queues to model VNFs with several components, and chains of VNFs. Our model is flexible and generic enough to capture the behavior of such systems. We validate our model by simulation. Specifically, we validate it for an LTE virtualized Mobility Management Entity with a threetiered architecture use case. We also compare our model with the estate of the art, in terms of computational complexity and estimation error. The results show that our model has a computational complexity similar to the method for analyzing Jackson’s networks. Additionally, our model exhibits an estimation error, measured as the relative error for the estimation of the mean response time, approximately equal to 10%, whereas for the considered baseline systems it ranges roughly from 60% to 90%.
IEEEexample:BSTcontrol
14 October 2016
I Introduction
Fifth Generation (5G) mobile networks are expected to be an unprecedented revolution in broadband wireless communications. Compared to its predecessor, the Long Term Evolution (LTE) technology, demanding requirements for 5G systems include, among many others, higher network flexibility and scalability, as well as x100 increase in cost effectiveness and energy efficiency [1].
These requisites compel to revisit the design of the whole system, that is to rearchitect the mobile network. In this sense, paradigms such as Network Function Virtualization (NFV) and Software Defined Networking (SDN) are envisaged as cornerstones to build the next 5G mobile network generation.
Network Functions (NFs) are functional blocks within a network infrastructure that has welldefined external interfaces and welldefined functional behavior [2]. Traditionally, most of the NFs have been implemented on specialpurpose hardware with strongly coupled vendordependent software; NFV breaks this approach by disjointing software components from vendordependent hardware.
Under the NFV approach, commodity hardware executes software components, so called as Virtual Network Functions (VNF), to provide network functionality. NFV technology entails numerous advantages, among others: i) lower costs, ii) greater flexibility and scalability, iii) easier and accelerated deployment of new services.
In NFV, multiple VNFs might be connected to form a service chain. For example, the virtualization of Evolved Packet Core (EPC) and IP Multimedia Subsystem (IMS) is one of the major use cases of NFV [2], [3]. And each VNF of a service chain, in turn, might consist of one or more components (VNFCs) working together. A VNFC provides part of the VNF’s functionality. Moreover, while a VNF has standardized external interfaces, it admits varying internal designs and operations. This yields complex systems with many design options, where it is necessary an agile method for analyzing its performance. As stated in [4], there is a need for analytical models for such systems.
For this goal, this paper proposes a generic mathematical model based on an open queuing network for VNFs with a single or multiple VNFCs, which can be easily extended for chains of VNFs. This model provides closedform expressions to estimate the system response time. As discussed in [5] and [6], such a model has the following applications: i) dynamic resource provisioning, which enables a system to adapt its computational resources autonomously depending on the current workload; ii) performance prediction, which provides a performance metric for a given workload and a VNF setup; iii) identifying bottlenecks for purposes of tuning; iv) request policing, which allows VNFs to decline excess requests during temporary overloads.
In our model, each queue represents a VNFC of a VNF running on a VM. Please note that in this work we do not consider the containerization which is an OSlevel virtualization method. Each queue in the model might be attended by multiple severs, each one stands for an instance of the computational resource acting as the bottleneck of the VM working in parallel (e.g., CPU cores or I/O disks).
Furthermore, we make no assumptions on the distribution of the packet arrival process or service time at any queue. It is assumed probabilistic routing, where the interconnection between queues is specified by a routing matrix containing the transitions probabilities. This approach is general enough to capture any packet flow through VMs.
To analyze the queuing network, we adapt the methodology proposed in [7] which is an approximate method to derive the performance metrics of a network of G/G/m queues.
The main advantages of our approach are the following: i) its computational complexity depends on the number of queues , , ii) it provides exact results for Jackson’s networks, iii) it is easy to use and employs a reduced set of input parameters. Moreover, our method considers a parameter for each queue to capture the creation or combination of packets at the nodes. This parameter can be used, for instance, to model packet dropping in a virtualized firewall.
As a result, we provide simple closedform expressions to estimate the mean response time of the system with a reduced set of input parameters (see Table I).
We validate our model by simulation. Specifically, we consider a particular use case of a virtualized Mobility Management Entity (vMME) following a threetiered architectural option, i.e., it has three VNFCs. The operation assumed for the vMME is similar to that one presented in [8]. For that purpose, we developed a vMME simulator in ns3 environment that includes the interactions with other EPC entities (e.g., SGW and eNB). In the evaluation, we generate the signaling workload at the vMME according to the compound traffic model of [6].
The estimation error of the proposed model is compared to baseline schemes. Specifically, results show that the relative error for the estimation of the mean response time of our model for the considered use case is approximately equal to 10%, whereas the estimation error of baseline methods ranges roughly from 60% to 90%.
The remainder of the paper is organized as follows. Section II provides some background and briefly describe related works. Section III describes the system model. In Section IV we propose the queuing model for a VNF design including system response time expressions. In Section V we particularize our model to a specific vMME use case. Section VI includes numerical results for model validation. Finally, Section VII draws the main conclusions.
Ii Background and Related Works
This section briefly reviews the proposed designs for virtualizing NFs and revises the related literature.
Iia VNF desings
The design of the VNFs is substantial when exploiting all the advantages NFV offers. Accordingly, the 1:N mapping (or multitiered) architecture, inspired by the web services designs, has been proposed for VNFs due to its robustness, flexibility and scalability [9]. In such design every network function is split into multiple VNFCs or tiers of the following three types [9]: i) FrontEnd (FE), which might act as an interface to the outside world and load balancer; ii) Worker (W), which implements the logic of the network function; and iii) state DataBase (DB) that contains the state information.
There are several works that consider this architecture to virtualize EPC entities such as MME [8], [10], [6]. It is also be applied to virtualize the IMS [11].
In the opposite direction, N:1 mapping design groups several NFs into one virtual component. This design minimizes the number of interfaces and offers a highly lowdelay processing [9]. In [12], the authors propose the use of this architectural option to deploy lightweight virtualized EPCs tailored for each particular Machinetomachine service.
IiB Related works
In [5], the authors propose a closed queuing network tailored to model Multitier Internet Services. This substantial work has served as a basis for many other works. To calculate the mean response time, the authors use the iterative algorithm Mean Value Analysis (MVA). Therefore, no closedform expressions are provided to compute performance metrics. And their proposed MVA algorithm has a time complexity depending on the number of active sessions. In mobile networks scenarios, typically characterized by a large number of active sessions, MVA execution might be longer than the simulation of the scenario, as shown in Sec. VI.
In [13] and [14], the authors address the dynamic resource provisioning problem. For that, they employ open queuing networks to model multitier applications. In [13], each tier is modeled independently as a G/G/1 queue, but in this case, the model does not capture the operation of the system. Moreover, they do not provide a method to compute the internal flows parameters from the external arrival process. In [14], the authors assume an M/M/m queue to model the first tier and M/M/1 queues for the rest of the tiers. This model offers limited flexibility because it considers a Jackson’s network and, consequently, the arrival and service processes are fixed.
In our previous work [6], we propose a model for vMME dimensioning. That work also provides a scalability analysis of a vMME. To that end, we used a model based on an open Jackson Network for a vMME with a 1:3 mapping architecture. We show that the proposed vMME model provides fairly good results for resource dimensioning. In this work, we enhance that model by extending its generality in the following points:

We extend its scope of application to chains of VNFs, and VNFs with multiple VNFCs and an arbitrary design.

We improve its capacity to capture different behaviors of the system (e.g., feedback, generic load balancers, caching effects at any stage, hardware heterogeneity,…).
Iii System Model
In this work, without loss of generality, we consider a VNF with a 1:3 mapping architecture (see Fig. 1). Specifically, the VNF is decomposed into three VNFCs: the FrontEnd (FE) ii) Workers (Ws), and iii) the state DataBase (DB). The FE is the communication interface with other network entities and balances the load among the Ws. Each worker implements the logic of the VNF functionality, and the DB contains the user session state making the Ws stateless.
Let us now describe the general operation of a VNF with a 1:3 mapping design, whose main steps are depicted in Fig. 1. Since the FE acts as the communication interface with the outside world, all packets enter the VNF at the FE with a mean rate . Then, the FE sends the packet to the corresponding W according to its loadbalancing scheme (labeled as ”1”). Once the packet arrives at the W, the W parses the packet and checks whether the required data for processing the packet are stored in its cache memory (labeled as ”2.1”). This cache memory could be implemented inside the RAM allocated to the Virtual Machine (VM), where the W is running on. If a cache mismatch occurs, then the W forwards a query to the DB to retrieve the data from it (labeled as ”2.2”). Please note that this data retrieval leads a preemption in the packet processing at the W, during which the W might process other packets. When the W has the necessary data, it immediately keeps processing the packet (labeled as ”2.3”). After processing finishes, it might be necessary to update some data in the DB (labeled as ”2.4”). Then, the W generates a response packet and forwards it to the FE (labeled as ”3”). Finally, the packet exits the VNF.
We assume that the VNF is run in a data center. We also consider that all VMs, hosted on the same physical machine, do not share any computational resource. Then, any VM does not experiment dynamic changes in performance at runtime (noDCR assumption) [15].
In general, each VNFC (e.g., FE, W, and DB) can scale horizontally and might, therefore, have several instances deployed in separate VMs. Two different VMs might offer distinct performance, even if they implement the same element. Reasons may be because a given VM was scaled vertically, which is achieved through live migration in current clouds, or due to the heterogeneity of hardware in the data center.
It is assumed that every element instance serves the packets following a FirstCome, FirstServed (FCFS) discipline. The service rate for an instance is given by its computational resource acting as the bottleneck. The tasks on VMs, mostly, might be CPU, I/O, or communicationintensive [15]. For instance, the Ws are CPUbound, whereas DB applications are primarily I/Obound. Let be the number of instructions to be executed for a given task, and the CPU power. The execution time of the task, under noDCR assumption, can be estimated as . Similarly, the task execution time can be estimated for an I/Obound task from its number of I/O operations and the performance of the VM disk (measured as I/O operations per second ).
By way of example, let us consider a W instance, where the processing of the packets is CPUintensive. And let us suppose there are different types of packets, each one with an associated frequency of occurrence . And a W executes instructions to process each packet type. Then, the mean and the variance of the W’s service time, denoted as and , can be estimated as:
(1) 
(2) 
Finally, the VNF has to meet a given performance requirement. The performance requisite considered in this work is a bound on the mean response time that is acceptable to the VNF. The VNF can adapt its capacity as a function of the workload. For instance, when the processing capacity assigned to the VNF cannot withstand with the current workload, it will be necessary to increase the capacity of the VNFC that currently represents the bottleneck of the system. This can be achieved by scaling up some instances of the component (vertical scaling) or by scaling out the component (horizontal scaling). In the same way, when the computational resources allocated to a given element are underused, some instances of the element are scaled down or removed.
Iv Analytical Model for VNFs
This section explains the queuing model for a VNF and the methodology of analysis considered to derive the system response time from the model.
Notation  Description 

Mean external arrival rate at queue .  
SCV of the external arrival process at queue .  
Number of servers at queue .  
Average service rate at queue .  
SCV of the service process at queue .  
Number of instances of the th stage.  
Routing probability matrix.  
Multiplicative factor for the flow leaving . 
Iva Queuing Model
Let us consider a VNF chain with stages, where a stage is a VNFC. To model this system we employ an open network of G/G/m queues (see Fig. 2). Since every stage can be scaled horizontally, each queue represents an VNFC instance (or replica) running on a VM.
Let denote the number of instances per stage. Then, . The set of queue indexes for a given stage verifies that if , and if .
Moreover, each queue might have servers which may represent, for instance, different CPU cores processing messages in parallel.
Every queue is assumed to operate under FistCome, FirstServed (FCFS) discipline.
Regarding the external arrival process to each queue , it is assumed to be a generalized interarrival process, which is characterized by its mean and its squared coefficient of variation () .
We consider that all servers of the same queue have an identical and generalized service process, which is also characterized by its mean (service rate) and its SCV . However, servers belonging to different queues may have distinct service processes, even if they pertain to the same tier. This feature is useful to model the heterogeneity of the physical hardware, underlying the provisioned VMs, inherent to nonuniform infrastructures like computational clouds [15].
Furthermore, every queue has associated a parameter , which is a multiplicative factor for the flow leaving that models the creation or combination of packets at the nodes. That means that if the total arrival rate to queue is , then the output rate of this queue would be .
For the transitions between queues, we assume probabilistic routing where the packet leaving is next moved to queue with probability or exits the network with probability . We also assume that the routing decision is made independently for each packet leaving queue .
The transition probabilities are gathered in the routing matrix denoted as . This approach allows to define any arbitrary feedback between stages, and to model caching effects and different loadbalancing strategies at any stage.
IvB System Response Time
To compute the system response time, we use the approximation technique proposed in [7] for the Queueing Network Analyzer (QNA). This technique, hereinafter referred as the QNA method, uses two parameters, the mean and the SCV, to characterize the arrival and service time processes for every queue. Then the different queues are analyzed in isolation as standard GI/G/m queues.
Finally, to compute the global performance parameters, the QNA method assumes that the queues are stochastically independent, even though the queuing network might not have a productform solution. Thus, QNA method can be seen as a generalization of the open Jackson’s network of M/M/m queues to an open Jackson’s network of GI/G/m queues [7].
As we will show in Section VIC, although the QNA method is approximate, it provides a remarkably good approximation to the values obtained by simulation. We describe the main steps of the QNA method in the following paragraphs.
IvB1 Internal Flows Parameters Computation
The first step of the QNA method is to compute the mean and the SCV of the arrival process to each queue.
Let denote the total arrival rate to queue . As in the case of Jackson’s networks, we can compute by solving the following set of linear flow balance equations:
(3) 
Let be the SCV of the arrival process to each queue . To simplify the computation of the , the QNA method employs approximations. Specifically, it uses a convex combination of the asymptotic value of the SCV and the SCV of an exponential distribution (), i.e., . The asymptotic value can be found as , where is the proportion of arrivals to that came from . That is, . And is a function of the server utilization and the arrival rates. This approximation yields the following set of linear equations, which may be solved to get :
(4) 
(5) 
(6) 
(7) 
(8) 
(9) 
IvB2 Response Time Computation
Once we have found and for all internal flows, we can compute the performance parameters for each queue, which are analyzed in isolation (i.e., considering that the queues are independent of each other).
Let be the mean waiting time at queue . If is a GI/G/1 queue ( has only one server), can be approximated as:
(10) 
with
(11) 
If, by contrast, is a GI/G/m queue, can be estimated as:
(12) 
where is the mean waiting time for a M/M/m queue, which can be computed as:
(13) 
and represents the Erlang’s C formula which has the following expression:
(14) 
Let denote the visit ratio for which is defined as the average number visits to node by a packet during its lifetime in the network. That is, . Finally, the overall mean response time will be given by
(15) 
V Particular Use Case: a ThreeTier vMME
In this section, we particularize our model to a vMME with a 1:3 mapping design whose operation is presented in [8]. Specifically, we provide analytical expressions to compute the input parameters of the model for this use case.
Va Signaling Workload for the vMME
The MME is the main control entity of the LTE/EPC. It interacts with the evolved NodeB (eNB), Serving Gateway (SGW), and Home Subscriber Server (HSS) within the EPC to realize functions such as nonaccess stratum (NAS) signaling, user authentication and authorization, mobility management (e.g. paging, user tracking), and bearer management, among many others [6].
The User Equipments (UEs) run the users’ applications that generate or consume network traffic, which, in turn, trigger the LTE network control procedures. These signaling procedures allow the control plane to manage the UE mobility and the data flow between the UE and PDNGW. These control procedures yield several messages to be processed by the vMME.
Here, we only consider the signaling procedures that generate most signaling load [16], e.g., Service Request (SR), Service Release (SRR), and X2Based Handover (HR).
Let and respectively be the average procedure rate per UE and the number of packets to be processed by the MME for each control procedure . Specifically, and . Then, we can compute the average number of packets per signaling procedure as
(16) 
Let us assume a Poisson arrival process for each control procedure , which is reasonable since we will have a large number of independent UEs attached to the LTE network generating signaling workload. Then, the overall mean rate and SCV of the vMME external arrival process are given by:
(17) 
(18) 
VB Model Particularization for a vMME
Let us consider a vMME with a 1:3 mapping design as described in Sec. III. Let , , and respectively denote the number of frontend, workers, and database instances. Consequently, .
We assume perfect load balancing for all tiers [5]. That is, each FE, W, and DB instance respectively processes , , and fraction of the total workload of the tier they belong to.
The operation assumed for the vMME is similar to [8] and [10]. In this use case, the main differences between the assumed vMME behavior and those described in Sec. III are explained bellow.
On the one hand, the FE tier balances signaling workload equally among the W instances on a per control procedure basis. The FE sends to the same W instance all control messages associated with a given control procedure and UE. It is assumed that the W instance has enough memory to store all the required state data (e.g., UE context) to handle a control procedure during its lifetime.
On the other hand, when the initial message of a procedure arrives at any W instance and after the W parses the packet, the W retrieves the UE context from DB. Moreover, when the W instance finishes processing the last message of a signaling procedure, it saves the updated UE context into the DB.
To summarize, there are two DB accesses per control procedure. Therefore, the visit ratio per packet at each DB and W instance will respectively be . and
Since the FE maintains 3GPP standardized interfaces towards other entities of the network (e.g., eNBs, HSS, and SGW), all control messages from outside arrive at the FE tier. For the same reason, the vMME sends all response messages generated by W instances out on FE tier. Then, the visit ratio at each FE instance is given by , i.e., each packet visits the FE tier two times. Furthermore, a packet served at any FE instance leaves the vMME (queuing network) with probability .
Taking all the above into account and, for simplicity, assuming only one instance for the FE () and DB (), the routing matrix will be:
(19) 
Vi Numerical Results
In this section, we present our experimental setup and numerical results. It aims at validating the described analytical model based on the QNA method [7] of a VNF with a 1:N mapping architecture. In addition, we compare our model with baseline models in terms of accuracy and execution time.
Via Experimental Setup
To validate the proposed model, we use two software tools both implemented in the ns3 simulation environment. The first one is the generator of LTE control procedure calls for humantype communications, more details are provided in [6]. The traffic model setup and the Radio Access Network (RAN) scenario are also described in the same work. Consequently, Table II shows the signaling rates per user.
The second one is a simulator of a vMME behavior described in Sec. V and III, and its interactions (i.e., control messages exchange) with other network entities (e.g. SGW and eNB). As discussed in [6], the service time at a W instance might be different for each control message type. In the simulator, is estimated as . The interaction of the vMME with SGW and eNB is simulated as constant delays.
Our analytical model, which uses QNA method, was implemented in GNU Octave. The external arrival process characteristics was computed by using (16), (17), and (18). And the routing matrix is given by (16) and (19) with .
For the use case considered . Since we consider that service rates at FE and DB tiers are deterministic (see Table II), for the corresponding queues.
The mean and variance of the service time at any W instance was computed by using (1) and (2). Then, the SCV of the service process at any W is given by .
For comparison purposes, we employed the Queueing Network Package for GNU Octave [17]. This package includes functions to solve queuing networks by using Jackson’s networks assumptions (e.g., qnos function) and MVA algorithm (e.g., qncsmva function). It shall be noted that the input parameters of our model can also be used to these other methodologies for analyzing queuing networks.
All the experiments were carried out on a machine with 4 GB RAM and Intel Xeon CPU X3330 @ 2.66GHz x 4 processor. The machine ran Linux Ubuntu 12.04 LTS operating system.
Signaling Rates per UE  
(Poisson)  0.0045 procedures/second 
(Poisson)  0.0045 procedures/second 
(Poisson)  0.0012 procedures/second 
EPC Delays  
Oneway delay (eNB vMME)  4.5 ms 
Twoway delay (vMME [eNB SGW])  9 ms 
Service Rates  
FE service rate ()  120000 packets per second 
DB service rate ()  100000 transactions per second 
W CPU power ()  
( , , , , , , , [6]  (1.45, 1.07, 1.06, 1.07, 1.07, 1.06, 1.07, 1.07) 
ViB Execution Time Comparison
Jackson  QNA  MVA  Simulation  

100000  3  6.667 ms  8.000 ms  9.740 s  224.280 s 
500000  4  6.000 ms  9.340 ms  48.691 s  241.100 s 
1000000  5  5.333 ms  10.667 ms  97.162 s  252.880 s 
2000000  8  7.000 ms  21.335 ms  194.884 s  251.660 s 
We assessed the time complexity of our analytical model and compared it with Jackson, MVA, and simulation approaches (see Table III). We repeated each measurement three times and average it.
As can be observed, our model has a time complexity that depends on the number of queues in the network , . While the model based on MVA algorithm [5] exhibits a time complexity that is a linear function of the number of active user sessions .
Since may be high in cellular scenarios, the MVA algorithm might even take longer than the simulation of the scenario. For all the simulations, the system has to process packets as the stop condition. We checked that this achieves simulation convergence. The chosen stop condition explains that the simulation execution time does not depend strongly on .
ViC Model Validation
We computed the mean response time versus the number of users (see Fig. 3).
When equals the target mean response time, , a new W instance with a single CPU core is added.
For , the FE utilization and from this point, the FE should be scaled to verify that . Noteworthy, Jackson and MVA methods give similar results for the case studied.
From the data showed in Fig. 3, we computed the relative error for the different analytical models considered as . In this case, and are respectively the mean response time obtained by simulation and computed by using the corresponding model.
We observed that our model is more accurate than those considered as baseline approaches (see Fig. 4).
Vii Conclusions and Future Work
In this paper, we propose an analytical model based on an open queuing network to estimate the mean response time of a VNF with several VNFCs. This model can be easily extended to be applied to chains of VNFs. The proposed model is sufficiently general to capture the complex behavior of such systems. To analyze the queuing network, we adapt the methodology proposed in [7] which is an approximate method to derive the performance metrics of a network of G/G/m queues.
We validate our model by simulation. Specifically, we validate it for an LTE virtualized Mobility Management Entity with a threetiered architecture use case. We also compare our model with the estate of the art, in terms of computational complexity and estimation error. The results show that our model has a computational complexity similar to the method for analyzing Jackson’s networks. Additionally, our model exhibits an estimation error, measured as the relative error for the estimation of the mean response time, approximately equal to 10%, whereas for the considered baseline systems it ranges roughly from 60% to 90%.
Regarding the future work, several challenges lie ahead. One of the main challenges is to conduct a field evaluation of the proposed model to carry out a stronger validation of it. Another challenge is to extend the model to make it more generic. On the one hand, the model should be able to capture the performance degradation due to the sharing of physical machine resources by the different VMs running on it. On the other hand, other virtualization scenarios should be considered, like VNFs implemented using microservices architectures.
Acknowledgement
This work is partially supported by the Spanish Ministry of Economy and Competitiveness and the European Regional Development Fund (Projects TIN201346223P, and TEC201676795C64R), and the Spanish Ministry of Education, Culture and Sport (FPU Grant 13/04833).
References
 [1] 5G Vision and Requirements, White paper, IMT2020 (5G) Promotion Group, May 2014.
 [2] ETSI GS NFV 001 V1.1.1. (2013, oct.) Network Functions Virtualisation (NFV); Use Cases.
 [3] H. Hawilo, A. Shami, M. Mirahmadi, and R. Asal, “Nfv: State of the art, challenges, and implementation in next generation mobile networks (vepc),” IEEE Network, vol. 28, no. 6, pp. 18–26, 2014.
 [4] D. Bhamare, R. Jain, M. Samaka, and A. Erbad, “A survey on service function chaining,” Journal of Network and Computer Applications, vol. 75, pp. 138–155, 2016.
 [5] B. Urgaonkar, G. Pacifici, P. Shenoy, M. Spreitzer, and A. Tantawi, “An Analytical Model for Multitier Internet Services and Its Applications,” ACM SIGMETRICS Performance Evaluation Review, vol. 33, no. 1, pp. 291–302, Jun. 2005.
 [6] J. PradosGarzon, J. RamosMunoz, P. Ameigeiras, P. AndresMaldonado, and J. LopezSoler, “Modeling and Dimensioning of a Virtualized MME for 5G Mobile Networks,” IEEE Trans. Veh. Technol., vol. PP, no. 99, pp. 1–1, 2016.
 [7] W. Whitt, “The queueing network analyzer,” Bell System Tech. J., vol. 62, no. 9, pp. 2779–2815, Nov. 1983.
 [8] Y. Takano, A. Khan, M. Tamura, S. Iwashina, and T. Shimizu, “VirtualizationBased Scaling Methods for Stateful Cellular Network Nodes Using Elastic Core Architecture,” in IEEE 6th Int. Conf. on Cloud Computing Technology and Science (CloudCom), 2014, pp. 204–209.
 [9] T. Taleb, M. Corici, C. Parada, A. Jamakovic, S. Ruffino et al., “EASE: EPC as a service to ease mobile core network deployment over cloud,” IEEE Network, vol. 29, no. 2, pp. 78–88, March 2015.
 [10] G. Premsankar, K. Ahokas, and S. Luukkainen, “Design and Implementation of a Distributed Mobility Management Entity on OpenStack,” in IEEE 7th Int. Conf. on Cloud Computing Technology and Science (CloudCom), 2015, pp. 487–490.
 [11] G. Carella, M. Corici, P. Crosta, P. Comi, T. M. Bohnert et al., “Cloudified ip multimedia subsystem (ims) for network function virtualization (nfv)based architectures,” in 2014 IEEE Symposium on Computers and Communications (ISCC). IEEE, 2014, pp. 1–6.
 [12] H. Baba, M. Matsumoto, and K. Noritake, “Lightweight virtualized evolved packet core architecture for future mobile communication,” in 2015 IEEE Wireless Communications and Networking Conference (WCNC). IEEE, 2015, pp. 1811–1816.
 [13] B. Urgaonkar, P. Shenoy, A. Chandra, P. Goyal, and T. Wood, “Agile dynamic provisioning of multitier internet applications,” ACM Trans. Auton. Adapt. Syst., vol. 3, no. 1, pp. 1:1–1:39, Mar. 2008.
 [14] J. Bi, Z. Zhu, R. Tian, and Q. Wang, “Dynamic provisioning modeling for virtualized multitier applications in cloud data center,” in IEEE 3rd Int. Conf. on Cloud Computing (CloudCom), 2010, pp. 370–377.
 [15] M. Bux and U. Leser, “Dynamiccloudsim: Simulating heterogeneity in computational clouds,” Future Generation Computer Systems, vol. 46, pp. 85–99, 2015.
 [16] B. Hirschman et al., “Highperformance evolved packet core signaling and bearer processing on generalpurpose processors,” IEEE Network, vol. 29, no. 3, pp. 6–14, May 2015.
 [17] M. Marzolla, “The Qnetworks Toolbox: A Software Package for Queueing Networks Analysis,” in Proc. 17th Int. Conf. on Analytical and Stochastic Modeling Techniques and Applications (ASMTA). Berlin, Heidelberg: SpringerVerlag, 2010, pp. 102–116.