You are currently viewing a new version of our website. To view the old version click .
Electronics
  • Article
  • Open Access

30 January 2021

Efficient Placement of Service Function Chains in Cloud Computing Environments

,
and
1
Electronics and Communications Engineering Department, Faculty of Engineering, Ain Shams University, Cairo 11517, Egypt
2
Computer and Systems Engineering Department, Faculty of Engineering, Ain Shams University, Cairo 11517, Egypt
*
Authors to whom correspondence should be addressed.
This article belongs to the Special Issue Cloud Computing and Applications

Abstract

The widespread adoption of network function virtualization (NFV) leads to providing network services through a chain of virtual network functions (VNFs). This architecture is called service function chain (SFC), which can be hosted on top of commodity servers and switches located at the cloud. Meanwhile, software-defined networking (SDN) can be utilized to manage VNFs to handle traffic flows through SFC. One of the most critical issues that needs to be addressed in NFV is VNF placement that optimizes physical link bandwidth consumption. Moreover, deploying SFCs enables service providers to consider different goals, such as minimizing the overall cost and service response time. In this paper, a novel approach for the VNF placement problem for SFCs, called virtual network functions and their replica placement (VNFRP), is introduced. It tries to achieve load balancing over the core links while considering multiple resource constraints. Hence, the VNF placement problem is first formulated as an integer linear programming (ILP) optimization problem, aiming to minimize link bandwidth consumption, energy consumption, and SFC placement cost. Then, a heuristic algorithm is proposed to find a near-optimal solution for this optimization problem. Simulation studies are conducted to evaluate the performance of the proposed approach. The simulation results show that VNFRP can significantly improve load balancing by 80% when the number of replicas is increased. Additionally, VNFRP provides more than a 54% reduction in network energy consumption. Furthermore, it can efficiently reduce the SFC placement cost by more than 67%. Moreover, with the advantages of a fast response time and rapid convergence, VNFRP can be considered as a scalable solution for large networking environments.

1. Introduction

Network functions are commonly provided through middleboxes that are used in conventional networks. The functions provided by these middleboxes range from firewalls to proxies, and even to intrusion detection systems. These functions are implemented using dedicated hardware appliances that lead to inflexible management and costly capital expenditure (CAPEX) and operating expenditure (OPEX) [1,2].
The emergence of network function virtualization (NFV) [3,4] and software-defined networking (SDN) [5,6] provides the ability to lead to more agile and flexible networks. NFV is a viable networking paradigm for moving traffic processing from dedicated hardware appliances to flexible software applications, known as virtual network functions (VNFs) [7]. Each VNF is placed on commercial off-the-shelf (COTS) servers or on a virtual machine (VM) located in a virtualization environment, such as the cloud. NFV enables network operators to achieve a high degree of flexibility and cost-saving, resulting in simplified and extensible placement and management, the efficient utilization of network functions, and a reduction in power usage. Moreover, VNFs leverage the virtualization technology to provide performance and security enhancements in the network [8]. Chaining and steering traffic flows through an ordered sequence of VNFs to comply with security and performance policies while delivering a service is commonly referred to as service function chain (SFC) [9,10]. Consequently, SFC shapes the VNF forwarding graph (VNF-FG) [11].
The NFV approach provides various benefits, such as the reduction of capital and operating expenditures [4]. These expenditures include license fees and redundant resources that provide a greater degree of automation during disaster recovery and software upgrades [12,13]. Additionally, using NFV leads to the ability to process high-bitrate traffic streams by promoting the concept of service chaining [14,15]. Hence, this leads to flexible support of real-time streaming applications that represent the majority of traffic in today’s networks. At the same time, NFV alleviates the reliance on network devices such as firewalls and proxies to provide network functionality. Therefore, for many users, NFV is considered an economically appealing platform that allows users to pay only for the services they use, according to the pay-as-you-go payment model [16,17]. Due to these capabilities, many cloud service providers have recently migrated their network services and applications to NFV.
Meanwhile, SDN [5] is a networking technology that decouples network control from forwarding functions. It consolidates network control functions into a logically centralized controller. The capabilities of SDN and cloud technologies have been proven to be highly complementary to the NFV paradigm for handling the revolutionary increase of data traffic in today’s networks [1]. An SDN controller can manage networks as well as network functions (typically VNFs). It handles this process whether these functions run on VMs in a single data center or in multiple data centers to manipulate traffic flows through appropriate network functions. Thus, the overall network service delivery platform becomes easily scalable. Additionally, the flexibility of cloud computing [18] makes it the best candidate for deploying VNFs on dedicated VMs. Furthermore, NFV and SDN are mutually beneficial to each other. For example, SDN can accelerate NFV deployment by offering a flexible and automated approach to chaining functions, configuring network connectivity and bandwidth, and automating the security and policy control [19,20,21]. Additionally, it can be used to support SFC to reduce both the management complexity and the operational cost. Meanwhile, handling SFC requests necessitates directing their traffic through an ordered sequence of VNFs. Since these SFC requests are dynamic, they cause differences in the network load [22]. Moreover, placing VNFs in cloud datacenters can minimize the deployment cost. However, it typically causes churns in the network load that increase network delay due to the distance between the users and the datacenters. Therefore, optimally placing heterogeneous VNFs while dynamically observing SFC requests is a challenging problem [23,24,25].
Several research efforts have been conducted for optimizing the placement of VNFs and steering traffic in the network to satisfy SFC requests. A set of objectives has been adopted, such as reducing the network cost [26] or reducing resource utilization [27]. The VNF placement problem has been proven to be NP-hard [28,29]. It can be solved using classic mathematical algorithms that require a prohibitive computational cost, due to the exponential time complexity with respect to network size [30]. Hence, it can lead to the slow deployment of VNFs in cloud datacenters. Meanwhile, several heuristic algorithms [31,32,33] were introduced to provide near-optimal solutions with small execution times. Therefore, they could be suitable for cloud datacenters that represent real environments of scalable networks.
There are limitations of physical resources (e.g., CPU, memory, storage, bandwidth, etc.) and other constraints of VNFs. Consequently, VNF placement in cloud datacenters should be optimized. The objectives of this optimization are to achieve load balancing and reduce energy consumption, resource consumption, and the overall cost. Furthermore, the time required to calculate the placement should be kept as short as possible to provide continuous service chains. Hence, the effective deployment of VNFs faces conflicting objectives, such as reducing link bandwidth utilization and minimizing energy consumption, mainly because the consolidation of resource usage can cause congestion in the physical network. For example, minimizing the number of active servers leads to increasing the additional bandwidth used for all embedded SFC physical links [34]. Meanwhile, less effort has been made to address the network load balancing issue with VNF placement.
This paper addresses VNF placement for SFCs using replica concept in software-defined cloud computing environments. It introduces a novel approach to the VNF placement problem for SFCs called virtual network functions and their replica placement (VNFRP). It formulates the VNF placement problem as an integer linear programming (ILP) optimization problem. The objective of this ILP problem is to minimize the link bandwidth utilization, energy consumption, and SFC placement cost. The optimization of VNF placement is more challenging mainly because the centralized controller should have a complete picture of the sequence of network service requests and the physical resource constraints. Additionally, the processing of SFC requests takes into consideration not only the individual VNF constraints, but also the chaining order restrictions of the entire flow, along with the required virtual functions. Meanwhile, most of the current VNF placement research considers only a portion of the problem by optimizing either the host or network resources but does not provide a holistic view of computing the solution. Hence, this paper sheds light on placing VNFs for the service chain, which requires the allocation of both server resources and network resources. Server resources are used to host the VNFs, while network resources are used to route the traffic flow from one VNF to the next in the service chain.
The rest of this paper is organized as follows. Section 2 presents the related work, followed by Section 3, which details the system model and problem formulation. Meanwhile, Section 4 explains the heuristic solution of the problem, followed by Section 5, which describes the experimental results. Finally, the paper is concluded in Section 6.

3. System Model and Problem Formulation

It is important to pass the traffic of SFC requests through a sequence of VNFs in a specific order. The flexibility of placing VNFs at various network locations can achieve this goal. Moreover, path selection can affect resource consumption on network links. Providing the concept of replicas increases the number of admissible paths. Therefore, how to concatenate VNFs using replicas for each SFC request should be considered to achieve load balancing and reduce network resource bottlenecks, especially over the core links. Thus, the network energy consumption and SFC placement cost can be decreased. Hence, in this section, the system model is presented, in addition to formulating the mathematical representation of the problem.

3.1. System Model

The physical network is represented by a directed graph G = (N, L), where N denotes the set of nodes and L denotes the set of links. N is given by the union of four sets of nodes in the network. The first set is NE for the edge switch nodes, which are responsible for forwarding the data from servers to other neighboring nodes. The second set is ND for the distribution switch nodes, which are responsible for data forwarding and serve as intermediate nodes between the edge and core switches. The third set is NC for the core switch nodes, which are responsible for data forwarding among the distribution switch nodes. Finally, the set NS is for the server nodes, which provide virtualized platforms to run VNFs while simultaneously processing the traffic of SFC requests. Each server node ns has the resource capacity in terms of CPU, memory, and storage denoted by RCPU, RRAM, and RStg, respectively. Meanwhile, each link in the network is characterized by the bandwidth of the link BL.
The set of service chains is represented by S = {s1, s2, ..., sn}, where n is the number of service chains of VNFs that are provisioned in the physical network. Additionally, the set of VNFs in the service chain s is represented by F = {f1, f2, ..., fm}, where m is the number of VNFs in the service chain. Each VNF fF has a resource demand in terms of CPU, memory, storage, and bandwidth, denoted by df = (dCPU, dRAM, dStg, dBW). Moreover, each network service request j is sent to the cloud as SFC sj = {Fj, dCPUj, dRAMj, dStgj, dBWj}, where Fj denotes the ordered sequence of VNFs requested in the SFC, with the first VNF in the chain being the source while the last VNF in the chain is the destination. Meanwhile, dCPUj, dRAMj, dStgj, and dBWj denote the resource demand of VNFs belonging to sj in terms of CPU, memory, storage, and bandwidth, respectively.
The traffic flow of the SFC request j is transferred according to its VNF-FG Gj = (Nj, Lj). The VNF-FG is a directed graph where the directions of the links should satisfy the order constraint of the VNF request. In a VNF-FG, the parameters f1j, f2jNj denote two VNFs and f1j f2jLj denote the virtual link connecting VNF f1j and f2j in Gj. If fjFj is assigned to server node nsNS, then Lj captures the placement constraints of the network functions—specifically, the bandwidth requirement—of the VNF-FG.

3.2. Problem Formulation

It is assumed in the context of formulating the problem that the service request has already been submitted to the cloud environment as SFC. Meanwhile, the SDN controller is designed to find the optimal placement of the VNFs with their replicas on the physical infrastructure. Optimal placement of the VNFs and their replicas can provide the optimal locations in cloud networks, which can be responsible for load balancing in the network. Ultimately, this leads to a reduction in network energy consumption. The optimal placement of VNFs to satisfy an SFC request can be formulated as an ILP problem with a set of constraints, which can be mathematically expressed as follows:
f j F j d C P U j · X n s f j   R C P U m a x
f j F j d R A M j · X n s f j   R R A M m a x
f j F j d S t g j · X n s f j   R S t g m a x
where
X n s f j { 0 , 1 } ,     n s N S ,     f j F j
f j F j   n s N S X n s f j = 1
where Equations (1)–(3) represent the constraints of the server nodes for SFC request j. Equation (1) ensures that the total CPU utilization of all VNFs placed on the same server node ns should not exceed its maximum CPU capability. Similarly, Equations (2) and (3) indicate that the total memory utilization and storage requirements of all VNFs consolidated on the same server node ns should not exceed the maximum memory and storage capability of the server. Meanwhile, Equation (4) denotes a Boolean variable, which is equal to 1 when any VNF f j   F j belongs to SFC sj placed on the server node n s N S ; otherwise, it is 0. Moreover, Equation (5) ensures that each VNF fj of SFC sj can be merely placed on exactly one server node.
The constraint in Equation (6) guarantees that the bandwidth of each virtual link f 1 j f 2 j of the SFC request j (in the path between the two VNFs f1j and f2j) does not exceed the maximum bandwidth of the physical path p:
  l L :   f 1 j f 2 j L j d B W j Y j , l 1 l 2 f 1 j f 2 j B W p
where l1l2 is the physical link of the physical path p connecting the two server nodes ns1 and ns2. B W p is the maximum bandwidth of the physical path connecting the two server nodes ns1 and ns2 when deploying VNFs on VMs in the cloud environment. Y j , l 1 l 2 f 1 j f 2 j denotes a Boolean variable, which is equal to 1 when the virtual link f 1 j f 2 j L j from f1j to f2j uses the physical link l1l2; otherwise, it is 0.
The constraint in Equation (7) guarantees that each virtual link between two adjacent VNFs f1j and f2j of SFC sj can be mapped on exactly one physical link l1l2:
s j S :   f 1 j , f 2 j F j Y j , l 1 l 2 f 1 j f 2 j 1 ,   n s 1 , n s 2 N S   ,   f 1 j f 2 j
Equation (8) ensures that the sequence order of the VNFs forming the service chain is preserved in the selected physical path p. This means that the function fmj cannot be allocated in the server node ns if the previous function f(m−1)j is not already assigned to any of the previous server nodes of the same path:
( i = 1 n s 1 Z s j ,   f ( m 1 ) j i )   Z s j ,   f m j n s   R p , s j ,     n s p , f m j F j   ,   s j S
where Z s j ,   f m j n s is a Boolean variable, which is equal to 1 when the VNF fmj from SFC sj is allocated in server node ns; otherwise, it is 0. R p , s j is a Boolean variable which is equal to 1 if the SFC sj utilizes the physical path p; otherwise, it is 0.
To achieve the maximum load balancing that reduces the bandwidth consumption of the network using VNF replicas, an additional constraint is provided as follows:
n s N S Z s j , f m j n s r a · R e p f m j , s j S ,     f m j F j
where R e p f m j is a Boolean variable, which is equal to 1 when the VNF f m j from SFC s j can be replicated (otherwise, it is 0), and r a is the number of allowed replicas per service chain. In Equation (9), if the VNF f m j can be replicated, then the allowed number of replicas is constrained by r a . Otherwise, the VNF f m j will be set once in the cloud for each service chain s j . Based on these constraints, an effective model for the multi-objective VNF placement problem is proposed with the goal of minimizing link bandwidth utilization, network energy, and the overall SFC placement cost, as shown in the following equations:
minimize w 1   .     l L U l + w 1   .   l L       N     Q l + w 1   .   f j F j C t
where w 1 , w 2 , and w 3 are weighting parameters that represent the relative importance of each objective. They must satisfy Equation (11):
w 1 + w 2 + w 3 = 1
The link utilization U l is given by Equation (12):
U l = s j S l 1 l 2 p d B W j · Y j , l 1 l 2 f 1 j f 2 j · V p l 1 l 2 B W p
where V p l 1 l 2 is a Boolean variable, which is equal to 1 if the physical link l1l2 belongs to the physical path p; otherwise, it is 0. The costs C S associated with the placement of SFC and the corresponding placement of the VNFs can be computed as follows:
C S = ρ · C N W + σ · C n s
C N W = U l · μ l
C n s = ( n s N S           s j S   f j F j ( α d C P U j R C P U m a x + β d R A M j R R A M m a x + γ d S t g R S t g m a x ) · X n s f j ) · μ n s
where C N W represents the cost of network resources, C n s represents the cost of the server node resources, α, β, and γ represent the types of CPU, memory, and storage in different server nodes, respectively, μ n s is the cost of consuming one unit of the server node resources, and μ l is the cost of consuming one unit of bandwidth via one cloud network link. The relative importance of network bandwidth and active server nodes are captured by ρ and σ . The higher the value of ρ , the more important the network bandwidth in the overall SFC placement cost.
The objective function in Equation (10) aims to minimize the utilization of physical links, which will result in a reduced consumption of network bandwidth. Additionally, it reduces network energy consumption and the overall cost of VNF placement.
Using ILP to find the optimal solution of this problem will lead to a scalability problem. Hence, the ILP model is only feasible for small networks. Moreover, due to the NP-hardness of the above problem, it cannot be solved in polynomial time. Hence, a heuristic solution is introduced in the next section to solve this problem. It has the advantage of offering a near-optimal solution for this optimization problem.

4. Heuristic Solution

In this section, the virtual network functions and their replica placement (VNFRP) algorithm is introduced. It is a heuristic algorithm that practically solves the VNF placement problem and provides a near-optimal solution, as shown in Figure 1. The proposed heuristic algorithm should decrease the computational overhead while providing sufficient quality in computing a near-optimal VNF placement using the replication concept. Additionally, to achieve the required goals, the proposed algorithm should be aware of the properties and capabilities of the VNFs and the physical resources.
Figure 1. The architecture of the virtual network functions and their replica placement (VNFRP) algorithm.
The proposed algorithm assumes that the service chain requests are delivered dynamically based on customer needs. Each service chain is characterized by an ordered sequence of VNFs to be used in addition to the CPU, memory, storage, and bandwidth requirements for each VNF in the same service chain. The SDN controller periodically discovers the current state of the network where the previous SFCs are deployed, including the corresponding provisioned bandwidth for each VNF in the SFCs. Then, it selects the set of the best admissible routes using Dijkstra’s shortest path algorithm [61]. The proposed algorithm is responsible for deploying the VNFs in the incoming SFC request while satisfying their resource requirements. In other words, a VNF service chain is mapped to the VMs hosted on the server nodes in the cloud datacenters. Meanwhile, it preserves the sequence order for the chosen admissible route, where the SDN controller is responsible for routing the traffic according to a predefined sequence in the cloud computing environment.
The proposed algorithm aims to replicate already-deployed SFCs to achieve load balancing and save network bandwidth and energy consumption. This means that the proposed algorithm replicates all VNFs composing the service chain with one replica. This must be performed under the condition that a new replica must be deployed on the route using lower network levels (lower network cost) compared with the unreplicated situation [61]. Then, depending on the predefined order of the VNFs in the SFC, the SDN controller routes the traffic through the original and the new replica. If the proposed algorithm improves load balancing effectively, then the consumed network bandwidth on the links is going to be reduced. The details of the proposed heuristic algorithm are shown in Algorithm 1. As shown in Algorithm 1, the proposed algorithm attempts to deploy the second replica while testing whether the load balancing is improved more than the previous state using only one replica. It adds the number of replicas incrementally until the improvement of load balancing becomes constant or the placement constraints cannot be met. The idea of deploying the original SFC and inserting allowed replicas is to find an iteration number of the available alternative parallel routes suitable for forwarding inter-VNF traffic; hence the decrease of the number of overloaded links and network bandwidth consumption. For all replicated chains, the proposed algorithm attempts to avoid intermediate core switches among the replicated chains as much as possible, mainly to reduce the network energy consumption.
Algorithm 1 VNFRP
Input:N, L, S, Fj, dCPUj, dRAMj, dStgj, dBWj
Constraint: R C P U m a x , R R A M m a x , R S t g m a x , B W p , r a
 forl = 1 to L do
  Compute the admissible routes using Dijkstra’s shortest path algorithm
 end for
 for s = 1 to S do
  for fj = 1 to Fj do
   Place fj on server node
   Route dBWj over the admissible routes
   R←1
   While Choose number of replicas (R) do
    Place fj replicated on server node
    for dBWj = 0 to L j do
     Route dBWj over all alternative parallel routes
     if R < r a then
      RR + 1
     end if
    end for
   end while
  end for
   end for
   end for
Output: The solution X n s f j , Y j , l 1 l 2 f 1 j f 2 j , Z s j ,   f m j n s , R e p f m j of the original problem.

5. Experimental Results

In this section, the results of the conducted experimental studies for the proposed solution are presented. The CloudSimSDN-NFV simulator [62] was used in these studies. The results collected from the proposed algorithm are compared against the least full first (LFF) strategy [62]. The LFF strategy tries to place the VNF on the least loaded server node, which has the least amount of resources allocated in terms of computing energy and network bandwidth. In this strategy, VNFs are distributed across the server nodes in the cloud environment, where server nodes that host more VNFs have a lower priority than server nodes that host few VNFs or do not host any VNFs. This results in spreading the traffic across the links and switches of all network levels.

5.1. Simulation Setup

The proposed VNF placement algorithm was implemented using Java programming language and incorporated with the CloudSimSDN-NFV simulator. The physical network topology used in the simulation was a fat tree topology [63] with 64 server nodes, 104 bidirectional links, and the traffic has been generated with 769 demands, as shown in Figure 2. The bandwidth of each higher link (between the core and the distribution switches) was assumed to be 10 Gbps. Meanwhile, the bandwidth of each lower link (between the edge switches and the server nodes) was set to 1 Gbps. There were 66 service chains created in the system. Each service chain consisted of two VNF endpoints (source and destination) and one intermediate VNF. The SDN controller was primarily responsible for controlling the network resources and VNFs, analyzing the information gathered, and making adaptive solutions and comprehensive management in large-scale complex networks [1,4]. Therefore, it was rational to run the proposed algorithm on the SDN controller to improve the network performance based on the information gathered. Additionally, the implementation of the proposed algorithm on the SDN controller allowed for doing the calculation of the shortest forwarding candidate paths based on the smallest link weight [61] and placing the VNF replicas accordingly.
Figure 2. Physical network topology of the cloud computing environment adopted in the simulation.
Each server node had its available computing resources, while each physical link had its available bandwidth. Similarly, the required resources for each VNF in the service chain were set, and the required bandwidth of each virtual link in the service chain was set too. Moreover, the sum of the required resources should have never exceeded its maximum available capacity. It was assumed that the physical network contained a variety of service chains, while the required resources and bandwidth of each service chain were different. In order to ensure adequate service chain performance, it became essential to track the computing and network resources to place the VNFs and virtual links on the server nodes and the physical links accordingly.

5.2. Performance Evaluation

During the experimental studies, comprehensive simulations were examined through a series of different iterations. The number of replicas was increased by one for each iteration. Then, in each scenario, a set of traffic demands was generated, corresponding to the first iteration. The effectiveness of the proposed algorithm was analyzed in terms of four metrics:
  • Network load balancing and link bandwidth utilization;
  • Network energy consumption;
  • Service response time;
  • SFC placement cost.
At the beginning of the experiments, where there was no replica, VNFs were randomly placed on any physical machine that could host VNFs. After the random placement of VNFs, the algorithm increased the number of replicas until reaching the allowed number of them. Meanwhile, the SDN controller searched for the smallest weight-admissible candidate paths that could traverse the VNFs in a predefined order for each traffic demand.

5.2.1. Network Load Balancing and Link Bandwidth Utilization

Link bandwidth utilization represents the percentage of the utilized link capacity across the physical links. The links are used to host the service chain virtual paths while meeting the required computing resources of VNFs in the service chain. The link bandwidth utilization was decreased while the network load balancing increased when changing the replica from 0 to 7 with traffic consisting of 769 demands. The load balancing ratio is represented by the percentage of the gap between the initial bandwidth utilization in the absence of a replica and the enhancement bandwidth utilization in each iteration when the replica is increased from 0 to 7 with the same constant traffic demands.
Figure 3 shows the average link bandwidth utilization of each level when the VNFRP algorithm was adopted and the corresponding values for the LFF strategy [62]. Both algorithms were evaluated using different VNF replicas. Initially, when no replicas were used, the VNFRP algorithm randomly placed VNFs on any physical machine that could host VNFs, which resulted in increased bandwidth utilization across all links. More replicas produced better improvements in minimizing link bandwidth utilization, which gradually resulted in much better load balancing, as shown in Figure 4. It is obvious that the decrease in link bandwidth utilization was induced by the increase in network load balancing. The explanation behind such a phenomenon is that as the number of VNF replicas increases, the number of admissible paths over the lower links is proportionally increased. Thus, the remaining available bandwidth will increase as well, which increases the volume of traffic that can pass. The load balancing ratios for all replicas were computed for both the VNFRP algorithm and the LFF strategy, and they are represented in Figure 5. The load balancing ratio decreased significantly in the VNFRP algorithm and the LFF strategy as the number of replicas increased. Nevertheless, in the VNFRP algorithm, the load balancing ratio decreased uniformly on all levels from 80% to 27%, while in the LFF strategy, it decreased differently on each level from 85% to 22.7%. The reduction in the load balancing ratio proves the fact that the improvement of load balancing was relatively high at the first replica and gradually decreased. Moreover, the maximum reduction in link utilization in the VNFRP algorithm was observed in the lowest network level, while it was observed in the highest network level in the LFF strategy. This observation is attributed to the fact that the VNFRP algorithm has a greater probability to choose server nodes that have fewer remaining resources to host VNFs of SFC when compared with the LFF strategy. Meanwhile, the VNFRP algorithm tried to reduce the link bandwidth utilization; hence, its advantage became more pronounced as the number of replicas increased.
Figure 3. Link utilization when adopting the VNFRP algorithm and the corresponding values when adopting the least full first (LFF) strategy: (a) Level 1, (b) Level 2, and (c) Level 3.
Figure 4. Load balancing when adopting the VNFRP algorithm and the corresponding values when adopting the LFF strategy: (a) Level 1, (b) Level 2, and (c) Level 3.
Figure 5. Load balancing ratio: (a) When adopting the VNFRP algorithm, and (b) The corresponding values when adopting the LFF strategy.

5.2.2. Network Energy Consumption

The proposed algorithm places SFC and its replicas by utilizing the resources of the nodes that communicate with the smallest possible number of active network nodes (the smallest weight). Moreover, the SDN controller switches off the unused hosts and switches to reduce energy consumption. The network energy consumption was measured by using a built-in monitoring tool for energy consumption included in the CloudSimSDN-NFV simulator. A Java interface was defined to record the energy consumption of each server node and each switch over a specified period of time, based on the linear models represented in [64,65].
The network energy consumption was almost the same for both the VNFRP algorithm and the LFF strategy at the initial placement without replicas, as shown in Figure 6. This was due to the deployment of VNFs across the cloud network in the LFF strategy contributing to the utilization of more physical hosts. Meanwhile, VNFs were spread randomly around the cloud network in the proposed algorithm, resulting in more physical hosts to be used. Additionally, in both placement algorithms, when the network traffic volumes increased, more network energy was consumed. Figure 6 also shows that the network energy consumption of the cloud network could be saved when the replica was applied to both placement algorithms. The increased number of VNF replicas increased the number of admissible paths that had the smallest possible number of active network nodes, which were used to connect the VNFs on different server nodes. Meanwhile, Figure 6 shows that the improvement of the network energy consumption was higher in the VNFRP algorithm compared with the LFF strategy. The VNFRP algorithm was clearly focused on optimizing link utilization more than server node utilization. Hence, the VNFRP algorithm could reduce the network energy consumption by more than 54% when the number of replicas was increased from 0 to 7. Meanwhile, it decreased the energy consumption by 6% on average compared with the LFF strategy. Moreover, the difference between VNFRP and LFF in network energy consumption became higher as the number of replicas increased. As depicted in Figure 6, the gap in network energy consumption between VNFRP and LFF increased remarkably from about 152 Wh to 612 Wh when the number of replicas was increased.
Figure 6. Network energy consumption in the cloud network when adopting the VNFRP algorithm and the corresponding values when adopting the LFF strategy.

5.2.3. Service Response Time

The service response time was measured as the average end-to-end delay of all requests submitted to the cloud network. It included the processing time of the application server nodes and network delays along the SFCs. The service response time was correlated with the number of replicas and requests. To demonstrate the effectiveness of the VNFRP algorithm, the number of replicas was increased while the number of requests was fixed. As shown in Figure 7, when the number of replicas increased, the service response time decreased, which resulted in a rapid convergence of the VNFRP algorithm and the LFF strategy. Additionally, Figure 7 shows that the service response time of the LFF strategy was slightly longer than the corresponding one in the VNFRP algorithm, but it was still acceptable. Moreover, the observed difference was not significant between the LFF strategy and the VNFRP algorithm in each replica except for the initial placement, where the replica was not applied. The service response time could be reduced in the VNFRP algorithm by more than 16% in the best case and by more than 4% in the worst case, compared with the LFF strategy, as shown in Figure 7. This occurred because VNFs were deployed over server nodes connected to the lower network levels. Therefore, it led to routing the traffic among the VNFs of the SFC through these small weight shortest paths, which resulted in a corresponding reduction in end-to-end delay. Additionally, when the number of replicas was more than 4, the service response time of both VNFRP and LFF was nearly constant. With the advantages of the fast response time and rapid convergence, the VNFRP algorithm had an effective impact on practical networks that had thousands of nodes and VNFs. Therefore, the VNFRP algorithm could be applied to NFV-enabled environments with heterogeneous nodes and workloads.
Figure 7. Service response time when adopting the VNFRP algorithm and the corresponding values when adopting the LFF strategy.

5.2.4. SFC Placement Cost

All VNFs of each SFC and its replicas occupied one node or a set of nodes that were connected through the smallest weight. Hence, they could utilize a lot of active nodes with an increased number of replicas, as shown in Figure 8. Meanwhile, Figure 9 shows the overall SFC placement cost, as defined in Equation (13). As shown in this figure, it was affected by applying the replica concept. The parameters ρ and σ were adjusted to 10 and 0.1, respectively, to capture the relative importance of the cost of network resources and the cost of server node resources. When ρ was higher than σ , the cost of network resources became more relevant than the cost of server node resources. It is clear that the LFF strategy provided a higher SFC placement cost compared with the VNFRP algorithm. Furthermore, the difference in SFC placement cost between the VNFRP algorithm and the LFF strategy increased when the number of replicas was increased. As shown in Figure 9, the VNFRP algorithm reduced the SFC placement cost by more than 67%, while the LFF strategy reduced the SFC placement cost by no more than 36% when the number of replicas increased from 0 to 7. Meanwhile, the average SFC placement cost gap between the VNFRP algorithm and the LFF strategy increased from 14% to 57%. As shown in Figure 8, the increase in the number of active server nodes was relatively the same in both VNFRP and LFF. Therefore, the cost of network resources only affected the SFC placement cost. As a result, the VNFRP algorithm could be implemented to allocate sophisticated SFCs consisting of multiple VNFs more efficiently than the LFF strategy. Moreover, the results in Figure 9 demonstrate that when the number of replicas increased, the SFC placement cost decreased. Additionally, more flexibility and efficiency were guaranteed in the VNFRP algorithm than the LFF strategy in terms of SFC placement and network bandwidth utilization. This is attributed to the fact that shorter paths could be used to direct VNF traffic in the VNFRP algorithm. Figure 9 shows that it is efficient and significant in the context of VNF and SFC placement problems to jointly and dynamically control the network and the server node resources.
Figure 8. Number of active server nodes when adopting the VNFRP algorithm and the corresponding values when adopting the LFF strategy.
Figure 9. Service function chain (SFC) placement cost when adopting the VNFRP algorithm and the corresponding values when adopting the LFF strategy.

6. Conclusions

This paper studied the problem of VNF placement for SFCs using an effective replica technique in software-defined cloud computing environments. The problem was first formulated using an ILP model with the objective to reduce the link bandwidth utilization, energy consumption, and SFC placement cost. Then, a heuristic algorithm, named VNFRP, was designed to find a near-optimal solution for this problem. The VNFRP algorithm exploits the SDN controller knowledge about the smallest weight-admissible candidate paths to traverse the traffic of VNFs in a predefined order for each SFC and its replicas. The experimental results revealed the effectiveness of the VNFRP algorithm. It could achieve an improvement in load balancing by 80% when replicas were increased. Moreover, the VNFRP algorithm provided better network performance in terms of network energy consumption. Additionally, it could efficiently reduce the VNF placement cost. Furthermore, its service response time could be kept sufficiently low, which makes it applicable for large networking environments. While these findings are encouraging, this work can be seen as a significant move toward SFC placement, mainly because it deals with the volatility of network traffic among VNFs in cloud computing environments and their requirements. This is accomplished using an efficient replica strategy that provides a new methodology for load balancing.
Exploring the performance of the VNFRP algorithm across different network architectures can be considered as one of the main future perspectives. Moreover, tuning the parameters of the VNFRP algorithm for complex traffic models that have more variability and uncertainty could be another potential area of interest.

Author Contributions

Conceptualization, M.A.A., G.A.E. and W.R.A.; formal analysis, M.A.A.; methodology, M.A.A.; supervision, G.A.E. and W.R.A.; validation, G.A.E. and W.R.A.; writing—original draft, M.A.A.; writing—review and editing, G.A.E. and W.R.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Mijumbi, R.; Serrat, J.; Gorricho, J.-L.; Bouten, N.; De Turck, F.; Boutaba, R. Network function virtualization: State-of-the-art and research challenges. IEEE Commun. Surv. Tutor. 2015, 18, 236–262. [Google Scholar] [CrossRef]
  2. Herrera, J.G.; Botero, J.F. Resource allocation in NFV: A comprehensive survey. IEEE Trans. Netw. Serv. Manag. 2016, 13, 518–532. [Google Scholar] [CrossRef]
  3. Laghrissi, A.; Taleb, T. A survey on the placement of virtual resources and virtual network functions. IEEE Commun. Surv. Tutor. 2018, 21, 1409–1434. [Google Scholar] [CrossRef]
  4. Han, B.; Gopalakrishnan, V.; Ji, L.; Lee, S. Network function virtualization: Challenges and opportunities for innovations. IEEE Commun. Mag. 2015, 53, 90–97. [Google Scholar] [CrossRef]
  5. Kreutz, D.; Ramos, F.M.; Verissimo, P.E.; Rothenberg, C.E.; Azodolmolky, S.; Uhlig, S. Software-defined networking: A comprehensive survey. Proc. IEEE 2014, 103, 14–76. [Google Scholar] [CrossRef]
  6. Nunes, B.A.A.; Mendonca, M.; Nguyen, X.-N.; Obraczka, K.; Turletti, T. A survey of software-defined networking: Past, present, and future of programmable networks. IEEE Commun. Surv. Tutor. 2014, 16, 1617–1634. [Google Scholar] [CrossRef]
  7. Shiomoto, K. Research challenges for network function virtualization-re-architecting middlebox for high performance and efficient, elastic and resilient platform to create new services. IEICE Trans. Commun. 2018, 101, 96–122. [Google Scholar] [CrossRef]
  8. Sherry, J.; Hasan, S.; Scott, C.; Krishnamurthy, A.; Ratnasamy, S.; Sekar, V. Making middleboxes someone else’s problem: Network processing as a cloud service. ACM SIGCOMM Comput. Commun. Rev. 2012, 42, 13–24. [Google Scholar] [CrossRef]
  9. Halpern, J.; Pignataro, C. Service function chaining (SFC) architecture, RFC 7665; Internet Engineering Task Force (IETF) Service Function Chaining (SFC) Working Group (WG): Fremont, CA, USA, 2015. [Google Scholar]
  10. Bhamare, D.; Jain, R.; Samaka, M.; Erbad, A. A survey on service function chaining. J. Netw. Comput. Appl. 2016, 75, 138–155. [Google Scholar] [CrossRef]
  11. Cao, J.; Zhang, Y.; An, W.; Chen, X.; Sun, J.; Han, Y. VNF-FG design and VNF placement for 5G mobile networks. Sci. China Inf. Sci. 2017, 60, 040302. [Google Scholar] [CrossRef]
  12. Li, D.; Hong, P.; Xue, K.; Pei, J. Availability aware VNF deployment in datacenter through shared redundancy and multi-tenancy. IEEE Trans. Netw. Serv. Manag. 2019, 16, 1651–1664. [Google Scholar] [CrossRef]
  13. Fischer, A.; Botero, J.F.; Beck, M.T.; De Meer, H.; Hesselbach, X. Virtual network embedding: A survey. IEEE Commun. Surv. Tutor. 2013, 15, 1888–1906. [Google Scholar] [CrossRef]
  14. Kulkarni, S.; Arumaithurai, M.; Ramakrishnan, K.; Fu, X. Neo-NSH: Towards scalable and efficient dynamic service function chaining of elastic network functions. In Proceedings of the 2017 20th Conference on Innovations in Clouds, Internet and Networks (ICIN), Paris, France, 7–9 March 2017; pp. 308–312. [Google Scholar] [CrossRef]
  15. Reddy, V.S.; Baumgartner, A.; Bauschert, T. Robust embedding of VNF/service chains with delay bounds. In Proceedings of the 2016 IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), Palo Alto, CA, USA, 7–10 November 2016; pp. 93–99. [Google Scholar] [CrossRef]
  16. Yang, S.; Pan, L.; Wang, Q.; Liu, S.; Zhang, S. Subscription or pay-as-you-go: Optimally purchasing iaas instances in public clouds. In Proceedings of the 2018 IEEE International Conference on Web Services (ICWS), San Francisco, CA, USA, 2–7 July 2018; pp. 219–226. [Google Scholar] [CrossRef]
  17. Zhang, S.; Yuan, D.; Pan, L.; Liu, S.; Cui, L.; Meng, X. Selling reserved instances through pay-as-you-go model in cloud computing. In Proceedings of the 2017 IEEE International Conference on Web Services (ICWS), Honolulu, HI, USA, 25–30 June 2017; pp. 130–137. [Google Scholar] [CrossRef]
  18. Prajapati, A.G.; Sharma, S.J.; Badgujar, V.S. All about cloud: A systematic survey. In Proceedings of the 2018 International Conference on Smart City and Emerging Technology (ICSCET), Mumbai, India, 5 January 2018; pp. 1–6. [Google Scholar] [CrossRef]
  19. vineel Anvith, P.; Gunavathi, N.; Malarkodi, B.; Rebekka, B. A Survey on Network Functions Virtualization for Telecom Paradigm. In Proceedings of the 2019 TEQIP III Sponsored International Conference on Microwave Integrated Circuits, Photonics and Wireless Networks (IMICPW), Tiruchirappalli, India, 22–24 May 2019; pp. 302–306. [Google Scholar] [CrossRef]
  20. Nguyen, V.-G.; Brunstrom, A.; Grinnemo, K.-J.; Taheri, J. SDN/NFV-based mobile packet core network architectures: A survey. IEEE Commun. Surv. Tutor. 2017, 19, 1567–1602. [Google Scholar] [CrossRef]
  21. Chiosi, M.; Wright, S.; Erfanian, J.; Smith, B.; Briscoe, B.; Reid, A.; Willis, P. Network functions virtualisation: Network operator perspectives on industry progress. In Proceedings of the SDN and OpenFlow World Congress, Dusseldorf, Germany, 14–17 October 2014. [Google Scholar]
  22. Pei, J.; Hong, P.; Xue, K.; Li, D. Efficiently embedding service function chains with dynamic virtual network function placement in geo-distributed cloud system. IEEE Trans. Parallel Distrib. Syst. 2018, 30, 2179–2192. [Google Scholar] [CrossRef]
  23. Liu, Y.; Zhang, H.; Guan, H.; Wang, Y. A method for adaptive resource adjustment of dynamic service function chain. IEEE Access 2018, 6, 69988–70004. [Google Scholar] [CrossRef]
  24. Rankothge, W.; Le, F.; Russo, A.; Lobo, J. Optimizing resource allocation for virtualized network functions in a cloud center using genetic algorithms. IEEE Trans. Netw. Serv. Manag. 2017, 14, 343–356. [Google Scholar] [CrossRef]
  25. Zhang, B.; Hwang, J.; Wood, T. Toward online virtual network function placement in software defined networks. In Proceedings of the 2016 IEEE/ACM 24th International Symposium on Quality of Service (IWQoS), Beijing, China, 20–21 June 2016; pp. 1–6. [Google Scholar] [CrossRef]
  26. Liu, Y.; Pei, J.; Hong, P.; Li, D. Cost-efficient virtual network function placement and traffic steering. In Proceedings of the ICC 2019–2019 IEEE International Conference on Communications (ICC), Shanghai, China, 20–24 May 2019; pp. 1–6. [Google Scholar] [CrossRef]
  27. Schneider, S.; Dräxler, S.; Karl, H. Trade-offs in dynamic resource allocation in network function virtualization. In Proceedings of the 2018 IEEE Globecom Workshops (GC Wkshps), Abu Dhabi, UAE, 9–13 December 2018; pp. 1–3. [Google Scholar] [CrossRef]
  28. Bari, F.; Chowdhury, S.R.; Ahmed, R.; Boutaba, R.; Duarte, O.C.M.B. Orchestrating virtualized network functions. IEEE Trans. Netw. Serv. Manag. 2016, 13, 725–739. [Google Scholar] [CrossRef]
  29. Cohen, R.; Lewin-Eytan, L.; Naor, J.S.; Raz, D. Near optimal placement of virtual network functions. In Proceedings of the 2015 IEEE Conference on Computer Communications (INFOCOM), Kowloon, Hong Kong, China, 26 April–1 May 2015; pp. 1346–1354. [Google Scholar] [CrossRef]
  30. Moens, H.; De Turck, F. VNF-P: A model for efficient placement of virtualized network functions. In Proceedings of the 10th International Conference on Network and Service Management (CNSM) and Workshop, Rio de Janeiro, Brazil, 17–21 November 2014; pp. 418–423. [Google Scholar] [CrossRef]
  31. Askari, L.; Hmaity, A.; Musumeci, F.; Tornatore, M. Virtual-network-function placement for dynamic service chaining in metro-area networks. In Proceedings of the 2018 International Conference on Optical Network Design and Modeling (ONDM), Dublin, Ireland, 14–17 May 2018; pp. 136–141. [Google Scholar] [CrossRef]
  32. Soualah, O.; Mechtri, M.; Ghribi, C.; Zeghlache, D. A green VNFs placement and chaining algorithm. In Proceedings of the NOMS 2018–2018 IEEE/IFIP Network Operations and Management Symposium, Taipei, Taiwan, 23–27 April 2018; pp. 1–5. [Google Scholar] [CrossRef]
  33. Mechtri, M.; Ghribi, C.; Zeghlache, D. Vnf placement and chaining in distributed cloud. In Proceedings of the 2016 IEEE 9th International Conference on Cloud Computing (CLOUD), San Francisco, CA, USA, 27 June–2 July 2016; pp. 376–383. [Google Scholar] [CrossRef]
  34. Bouet, M.; Leguay, J.; Combe, T.; Conan, V. Cost-based placement of vDPI functions in NFV infrastructures. Int. J. Netw. Manag. 2015, 25, 490–506. [Google Scholar] [CrossRef]
  35. Mehraghdam, S.; Keller, M.; Karl, H. Specifying and placing chains of virtual network functions. In Proceedings of the 2014 IEEE 3rd International Conference on Cloud Networking (CloudNet), Luxembourg, 8–10 October 2014; pp. 7–13. [Google Scholar] [CrossRef]
  36. Xia, M.; Shirazipour, M.; Zhang, Y.; Green, H.; Takacs, A. Network function placement for NFV chaining in packet/optical datacenters. J. Lightwave Technol. 2015, 33, 1565–1570. [Google Scholar] [CrossRef]
  37. Tavakoli-Someh, S.; Rezvani, M.H. Multi-objective virtual network function placement using NSGA-II meta-heuristic approach. J. Supercomput. 2019, 75, 6451–6487. [Google Scholar] [CrossRef]
  38. Sang, Y.; Ji, B.; Gupta, G.R.; Du, X.; Ye, L. Provably efficient algorithms for joint placement and allocation of virtual network functions. In Proceedings of the IEEE INFOCOM 2017-IEEE Conference on Computer Communications, Atlanta, GA, USA, 1–4 May 2017; pp. 1–9. [Google Scholar] [CrossRef]
  39. Gu, S.; Li, Z.; Wu, C.; Huang, C. An efficient auction mechanism for service chains in the NFV market. In Proceedings of the IEEE INFOCOM 2016-The 35th Annual IEEE International Conference on Computer Communications, San Francisco, CA, USA, 10–14 April 2016; pp. 1–9. [Google Scholar] [CrossRef]
  40. Sekar, V.; Egi, N.; Ratnasamy, S.; Reiter, M.K.; Shi, G. Design and implementation of a consolidated middlebox architecture. In Proceedings of the Presented as part of the 9th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 12), San Jose, CA, USA, 25–27 April 2012; pp. 323–336. [Google Scholar]
  41. Beloglazov, A.; Buyya, R. OpenStack Neat: A framework for dynamic consolidation of virtual machines in openstack clouds—A blueprint. In Proceedings of the Cloud Computing and Distributed Systems (CLOUDS) Laboratory, Melbourne, Australia, 14 August 2012; pp. 1–18. [Google Scholar]
  42. Rankothge, W.; Ma, J.; Le, F.; Russo, A.; Lobo, J. Towards making network function virtualization a cloud computing service. In Proceedings of the 2015 IFIP/IEEE International Symposium on Integrated Network Management (IM), Ottawa, ON, Canada, 11–15 May 2015; pp. 89–97. [Google Scholar] [CrossRef]
  43. Ma, W.; Medina, C.; Pan, D. Traffic-aware placement of NFV middleboxes. In Proceedings of the 2015 IEEE Global Communication Conference (GLOBECOM), San Diego, CA, USA, 6–10 December 2015; pp. 1–6. [Google Scholar] [CrossRef]
  44. Bhamare, D.; Samaka, M.; Erbad, A.; Jain, R.; Gupta, L.; Chan, H.A. Optimal virtual network function placement in multi-cloud service function chaining architecture. Comput. Commun. 2017, 102, 1–16. [Google Scholar] [CrossRef]
  45. Gember-Jacobson, A.; Viswanathan, R.; Prakash, C.; Grandl, R.; Khalid, J.; Das, S.; Akella, A. OpenNF: Enabling innovation in network function control. ACM SIGCOMM Comput. Commun. Rev. 2014, 44, 163–174. [Google Scholar] [CrossRef]
  46. Kawashima, R. vNFC: A virtual networking function container for SDN-enabled virtual networks. In Proceedings of the 2012 Second Symposium on Network Cloud Computing and Applications, London, UK, 3–4 December 2012; pp. 124–129. [Google Scholar] [CrossRef]
  47. Sama, M.R.; Contreras, L.M.; Kaippallimalil, J.; Akiyoshi, I.; Qian, H.; Ni, H. Software-defined control of the virtualized mobile packet core. IEEE Commun. Mag. 2015, 53, 107–115. [Google Scholar] [CrossRef]
  48. Deric, N.; Varasteh, A.; Basta, A.; Blenk, A.; Pries, R.; Jarschel, M.; Kellerer, W. Coupling VNF orchestration and SDN virtual network reconfiguration. In Proceedings of the 2019 International Conference on Networked Systems (NetSys), Munich, Germany, 18–21 March 2019; pp. 1–3. [Google Scholar] [CrossRef]
  49. OpenStack. Available online: http://docs.openstack.org/ (accessed on 4 October 2020).
  50. ETSI, OpenStack Liason Statement: NFV Requirements. Available online: https://wiki.openstack.org/w/images/c/c7/NFV(14)000154r2_NFV_LS_to_OpenStack.pdf (accessed on 4 October 2020).
  51. Fu, J.; Li, G. An Efficient VNF Deployment Scheme for Cloud Networks. In Proceedings of the 2019 IEEE 11th International Conference on Communications Software and Networks (ICCSN), Chongqing, China, 12–15 June 2019; pp. 497–502. [Google Scholar] [CrossRef]
  52. Sallam, G.; Ji, B. Joint placement and allocation of virtual network functions with budget and capacity constraints. In Proceedings of the IEEE INFOCOM 2019-IEEE Conference on Computer Communications, Paris, France, 29 April–2 May 2019; pp. 523–531. [Google Scholar] [CrossRef]
  53. Pei, J.; Hong, P.; Pan, M.; Liu, J.; Zhou, J. Optimal VNF placement via deep reinforcement learning in SDN/NFV-enabled networks. IEEE J. Sel. Areas Commun. 2019, 38, 263–278. [Google Scholar] [CrossRef]
  54. Zhong, X.; Wang, Y.; Qiu, X. Cost-aware service function chaining with reliability guarantees in NFV-enabled Inter-DC network. In Proceedings of the 2019 IFIP/IEEE Symposium on Integrated Network and Service Management (IM), Washington, DC, USA, 8–12 April 2019; pp. 304–311. [Google Scholar]
  55. Ananth, M.; Sharma, R. Cost and performance analysis of network function virtualization based cloud systems. In Proceedings of the 2017 IEEE 7th International Advance Computing Conference (IACC), Hyderabad, India, 5–7 January 2017; pp. 70–74. [Google Scholar] [CrossRef]
  56. Assi, C.; Ayoubi, S.; El Khoury, N.; Qu, L. Energy-aware mapping and scheduling of network flows with deadlines on VNFs. IEEE Trans. Green Commun. Netw. 2018, 3, 192–204. [Google Scholar] [CrossRef]
  57. Zhang, X.; Xu, Z.; Fan, L.; Yu, S.; Qu, Y. Near-Optimal Energy-Efficient Algorithm for Virtual Network Function Placement. IEEE Trans. Cloud Comput. 2019. [Google Scholar] [CrossRef]
  58. Farkiani, B.; Bakhshi, B.; Mirhassani, S.A. A Fast Near-Optimal Approach for Energy-Aware SFC Deployment. IEEE Trans. Netw. Serv. Manag. 2019, 16, 1360–1373. [Google Scholar] [CrossRef]
  59. Carpio, F.; Jukan, A. Improving reliability of service function chains with combined VNF migrations and replications. arXiv 2017, arXiv:1711.08965. [Google Scholar]
  60. Carpio, F.; Bziuk, W.; Jukan, A. Replication of virtual network functions: Optimizing link utilization and resource costs. In Proceedings of the 2017 40th Int. Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 22–26 May 2017; pp. 521–526. [Google Scholar] [CrossRef]
  61. Abdelaal, M.A.; Ebrahim, G.A.; Anis, W.R. A scalable network-aware virtual machine allocation strategy in multi-datacentre cloud computing environments. Int. J. Cloud Comput. 2019, 8, 183–206. [Google Scholar] [CrossRef]
  62. Son, J.; He, T.; Buyya, R. CloudSimSDN-NFV: Modeling and simulation of network function virtualization and service function chaining in edge computing environments. Softw. Pract. Exp. 2019, 49, 1748–1764. [Google Scholar] [CrossRef]
  63. Al-Fares, M.; Loukissas, A.; Vahdat, A. A scalable, commodity data center network architecture. ACM SIGCOMM Comput. Commun. Rev. 2008, 38, 63–74. [Google Scholar] [CrossRef]
  64. Wang, X.; Yao, Y.; Wang, X.; Lu, K.; Cao, Q. CARPO: Correlation-aware power optimization in data center networks. In Proceedings of the 2012 IEEE INFOCOM, Orlando, FL, USA, 25–30 March 2012; pp. 1125–1133. [Google Scholar] [CrossRef]
  65. Pelley, S.; Meisner, D.; Wenisch, T.F.; Vangilder, J.W. Understanding and abstracting total data center power. In Proceedings of the WEED 2009: Workshop on Energy-Efficient Design, Austin, TX, USA, 20 June 2009. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.