A Hybrid Virtual Network Function Placement Strategy for Maximizing the Profit of Network Service Deployment Over Time-Varying Workloads

The emergence of network function virtualization (NFV) has revolutionized the infrastructure and service management of network architecture. It allows network operators to reduce costs and improve the agility of network service deployment. But finding the best VNF placement is a well-known NP-complete problem. Hence, many previous studies either formulate the problem as an Integer Linear Programming (ILP) Problem or propose greedy algorithms. However, solving ILP is time-consuming, while greedy algorithms could be far from optimal solutions. As a result, neither ILP nor greedy can make quick and accurate placement decisions for dynamic traffic workloads. Therefore, we propose a hybrid method that uses less time to maximize the overall profit of network service deployment. Our evaluations based on real backbone network traffic and topology show that our hybrid approach can achieve up to 36% profit improvement compared to a pure greedy approach, while achieving x30 times computation time speedup over a pure ILP approach.


I. INTRODUCTION
The emergence of network function virtualization (NFV) has revolutionized the infrastructure and service management of network architecture. NFV is a technique that virtualizes proprietary hardware-based appliances, such as firewall, load balancer, switch etc. into softwarized Virtual Network Function (VNF) that can be containerized and hosted on commodity servers. The VNF can then be used as the building blocks to form a service function chain (SFC) to provide network services to users. Through NFV, network operators not only can reduce their cost on Capital expenditures (CAPEX), operating expenses (OPEX) and power consumption, but also improve the time and flexibility of network service deployment. Therefore, it has been actively studied by industry [1] and research communities [2] in recent years.
One of the key challenges of NFV orchestration is the VNF placement problem, which places the VNFs of a set of service The associate editor coordinating the review of this manuscript and approving it for publication was Guangjie Han . function chain requests (SFCRs) on physical nodes in order to satisfy the resource and traffic demand of SFCRs. The goal of the placement problem is to minimize the deployment cost and maximize the service quality of the SFCRs. In general, the deployment cost includes the resource consumption from computing power and network bandwidth, and service quality is measured by the end-to-end latency delay of the user requests passing through the whole SFC. The VNF placement significantly impacts the deployment cost and service quality because the same type of network functions (NFs) placed on the same physical node can share the same VNF instance, and the location of NFs can affect the routing path of SFCRs. However, finding the optimal VNF placement is difficult, and proven to be a NP-complete problem [3]- [5].
A common approach is to formulate the VNF placement problems as Integer Linear Programming (ILP) or Mixed Integer Linear Programming (MILP) problems [6]- [8], and solve the problem using ILP solvers, like CPLEX [9]. But ILP solvers are time-consuming, especially for larger problem sizes. Considering the workload of SFCRs could change VOLUME 9, 2021 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ rapidly over time, it is infeasible to use ILP solvers to find new placements frequently. Therefore, other studies [10]- [13] proposed greedy algorithms that aim to reconfigure placements in response to large-scale problem size and time-varying workloads. But in the end, neither ILP nor greedy algorithms can make quick and accurate placement decisions for large-scale networks and time-varying workloads in a timely manner.
To address the aforementioned problem, we investigate the idea of combining the two approaches (ILP and greedy algorithms) together, and proposed a hybrid solution as follows. First, by studying the network traffic of backbone networks, we observe that the traffics with greater volume tend to have more stable demand over time, while the traffics with less volume tend to be less stable. So we classify SFCRs according to their workload variations over time. Then we use an ILP solver to find the initial placement for the stable SFCRs, and use a greedy algorithm to place the remaining unstable SFCRs. Finally, we propose another greedy reconfiguration algorithm to migrate existing VNFs or initiate new VNFs when the time-varying workload cause insufficient resource on servers or links. Our evaluations show that our hybrid approach can achieve up to 36% profit improvement compared to a pure greedy approach, while achieving x30 times computation time speedup over a pure ILP approach. Comparing to a state-of-the-art algorithm proposed in [14], Hybrid increases its profit by 18%, while taking hundreds of times shorter computation time.
The rest of the paper is structured as follows. Section II defines our VNF placement problem. Section III describes our proposed hybrid solution including the ILP formulation and greedy algorithms. Our experiment setup and result are presented in Section IV and Section V, respectively. Section VI describes related work, and Section VII concludes the paper.

II. VNF PLACEMENT PROBLEM
In this section, we first define our VNF placement problem, and illustrate it with an example. Then the formal formulation of our problem objective is given.

A. PROBLEM DEFINITION
We consider the problem from a network operator point of view with several requests of network service (NS) that must be served. A network service is composed of network functions (NF), such as Firewall, IDS, Load Balancer, etc. The chain of NFs is called a Service Function Chain (SFC), and the NFs of a SFC must be executed in order. A request of network service is called a Service Function Chain Request (SFCR). To service SFCRs, network operators have to initiate virtual network functions (VNF) on physical machines (PM). We consider VNFs have multitenancy, so the traffic of the same type of NF from different SFCRs can be served by a single VNF. The traffic of SFCRs also needs to be routed through the VNFs, and the profit of serving a SFCR will depend on its end-to-end routing latency.
Since the traffic workload can change over time intervals, the placement decision needs to be reconfigured when the resource consumption of SFCRs exceeds the resource capacity of physical machines or links. The reconfiguration can be realized by either redirecting traffic to other VNF instances or initiating new VNF instances. These reconfiguration operations have associated costs because they may cause service interruptions and consume additional time delay or resource consumption. Therefore, the objective of our problem is to decide the VNF placement at each time interval, so that the net profit (considering service revenue, deployment cost, and redirection cost) can be maximized under the constraints of nodes/links resource capacity, and SFCR service latency requirement. Figure 1 illustrates our VNF placement problem with 2 SFCRs and 4 PMs. Each SFCR is denoted by a service function chain and a pair of ingress node and egress node. For instance, SFCR1 is from PM4 to PM2, and it is composed of NF a, NF b and NF d; SFCR2 is from PM1 to PM4, and it is composed of NF c, NF a and NF b. We assume the latency delay for each link is 1, and the latency threshold for both SFCRs is 1. As defined in Eq 8, the resource consumption on a node can be divided into base and workload-dependent. Here, we assume the base consumption of a VNF is 2 units of resource, and the workload-dependent consumption of each NF is indicated by the numbers in the brackets. Each PM has 15 units of node capacity. For simplicity, we do not consider the link usage and capacity in this example yet.  Figure 1 shows two feasible solutions to the above VNF placement problem.

Placement (a) & (b) in
In placement (a), we only deploy one VNF instance for each type of NFs. VNF a and VNF b are on PM4, VNF c is on PM1, and VNF d is on PM2. The pink line indicates the routing path for SFCR1 from PM4 to PM2, while the blue line indicates the routing path for SFCR2 from PM1 to PM4. The VNF a and VNF b are shared by both SFCR1 and SFCR2. Both routing paths pass through the requested NFs of their SFCRs, and the path lengths are within their latency thresholds (i.e., 1). The resource consumption on a node is the sum of the base consumption of its hosted VNFs, and the workload-depending consumption of all the SFCRs passing 99984 VOLUME 9, 2021 through. As shown in the figure, the resource consumption on all the nodes are less than their node capacity (i.e., 15). In comparison, placement (b) deploys one VNF instance for each NF of SFCR1 and SFCR2. The requirements of resource constraint and latency threshold are still satisfied under the placement. But the total number of VNFs and the amount of resource consumption from placement (b) are clearly higher than placement (a). So placement (a) is a better solution. Also, we can observe traffic changes can easily trigger reconfiguration. For instance, if the traffic of SFCR2 is double for the next time interval, the resource consumption of its VNFs will be doubled as well. As a result, the total resource consumption on PM4 in placement (a) will increase from 13 to 16, and the total resource consumption on PM1 in placement (b) will increase from 12 to 18. Therefore, loading must be reduced on the violation nodes by rerouting the traffic to VNFs deployed on other nodes.

B. OPTIMIZATION OBJECTIVE
Here, we formally define the problem inputs/outputs and optimization objective. The problem inputs are a physical network, G, and a set of SFCRs, S, consisted of different types of network function, F. G = (N , L) is a graph, where N indicates the set of physical machines and L indicates the set of network links. Each n ∈ N has a node capacity denoted as C n . Each l ∈ L, between two nodes n and m, has a bandwidth capacity and latency delay denoted by B n,m , E n,m , respectively.
For each s ∈ S, its service latency threshold is denoted as θ s and its traffic is denoted as D s , routing from s.s to s.d. The network functions of a SFCR is denoted by binary variable V s,i,f , so that V s,i,f = 1 means the type of i th NF of a SFCR s is f ∈ F. We use two dummy network functions to represent the ingress and egress nodes. We assume a SFCR does not have the same type of NFs, so the length of SFCR is bounded by |F| + 2. We also use FC s,i to denote the node resource consumption of the i-th NF of SFC s, and use FL s,i to denote the link resource consumption for routing the traffic between the the i-th and i + 1-th NFs of SFC s.
The problem output is a placement decision denoted by three binary variables: X , Y , Z . x t s,i,n ∈ X indicates whether i-th NF of SFCR s is hosted on physical node n at time t. y t s,i,n,m ∈ Y indicates whether i-th virtual link in SFCR s is mapped on the physical link from the physical node n to m at time t. z t f ,n ∈ Z indicates whether the f type VNF is deployed on the physical node n at time t.
Servicing SFCRs receive revenue, while deploying SFCRs results in costs, including resource consumption cost (CC), service deployment cost (DC), and redirection cost (RC). Our objective is to maximize the net profit of the network operator for deploying and providing network services to users. From a network operator point of view, the revenue is from the SFCRs it services, while the cost can consist of resource consumption cost (CC), service deployment cost (DC), and redirection cost (RC). In this work, we formally define the net profit as the equation below, and explain each of the terms in the rest of the section with the notations in Table 1.
where α, β, γ are the weights to balance the three costs.
• Revenue: Most of the network services are latencysensitive, hence the revenue of a SFCR is strongly correlated to its end-to-end delay [15]. Therefore, we use a utility function, Utility(d s ), to represent the revenue from servicing a unit of demand of SFCR s with delay d s as: Eq. (2) is the delay of a SFCR s which is calculated by the aggregated network delay of all the links along the routing path of s. Eq. (3) is the utility function defined by a set of given parameters: , η, ζ . The function value must be between 0 and 1, so if the d s is less than a delay threshold θ s , the utility value is set to 1. Finally, Eq. (4) is the total revenue from serving all the SFCRs.
• CC: The main operating cost for a network operator is often proportional to the resource consumption from servers and network equipment. Resource consumption is related to energy consumption. The energy consumption model for a PM is based on its CPU utilization [16], [17], which can be calculated as shown in Eq. (5). where U n represents the CPU utilization of the PM n, A n indicates whether the PM n is active and Emin n , Emax n are the energy consumption when the utilization of n is 0%, 100% respectively. The CPU utilization can be calculated as the ratio between the total CPU resources consumed and the available CPU resources in the server, as shown in Eq. (7). The resource consumption on servers is caused by the VNF hosted on the servers. As shown in Eq. (8), the computing resource consumption of a VNF can be further divided into basic [18] and workload-dependent resource consumption. The basic resource consumption is the minimum resource consumption to host a VNF on a server, while the workload-dependent resource consumption will be proportional to the traffic demand served by the VNF. Since multiple SFCs can share the same VNF if they require the same type of NF, the workload of a VNF is the aggregated demand from the SFCRs routed through the VNF.
On the other hand, the network resource consumption of a link can be measured by its bandwidth usage, so it can be computed by the aggregated demand from the SFCRs routed through the link as shown in Eq. (9).
In order to calculate total resource consumption cost, we first normalize server power consumption and network resource consumption. We divide the total power consumption by the total maximum power consumption and divide the total network resource consumption by the total link bandwidth respectively as shown in Eq. (10) and Eq. (11).
Emax n ), n ∈ P (10) Therefore, we formulate the total cost of resource consumption cost by Eq. (12).
where ω is a weighted ratio between the two resource consumption costs.
• DC & RC: A new VNF placement means we have to move the location of existing VNFs and create new VNFs. All these operations can cause service interruption and delay to the SFCR, so there should be a penalty cost associated with these operations in our profit formulation.
Specifically, we define deployment cost as the service delay penalty from creating a new VNF instance, and this penalty is proportional to the amount of traffic demand as shown in Eq. (13). We also define the redirection cost as the service delay penalty from traffic redirection between VNFs, and this penalty is proportional to the amount of redirected traffic demand as shown in Eq. (14). Eq. (15) indicates whether a reconfiguration has occurred by comparing the mapping with the mapping of the previous time interval. 99986 VOLUME 9, 2021

A. APPROACH OVERVIEW
It is possible to solve the placement problem using an ILP solver. However, ILP solver is time-consuming, especially for larger problem scales. Specially with the time-varying traffic demand in the real world, it is infeasible to recompute the configuration for every time interval using an ILP solver. Hence, many researchers have proposed greedy algorithms that aim to get a solution quickly [3], [11] and reconfigure placements in response to the violation caused by time-varying traffic [19], [20]. However, the optimality of greedy algorithms can still be far from the ILP solvers. As a result, neither of these approaches can make quick and accurate placement decisions to deal with the time-varying workloads in practice. To overcome the drawbacks of ILP and greedy, we propose a hybrid approach that combines the two approaches together. Our approach is motivated by the traffic characteristics observed from several backbone networks in the US and Germany, including Abilene, Nobel-Germany, Germany50, and Brain. The traffic measurements of these networks are made available by [21], [22], which reports the traffic matrix of every pair of ingress and egress routers in the network at periodic time intervals over an extended time period. For instance, Abilene is collected every 5 mins for 6 months, and Nobel-Germany is collected every 5 mins for 1 day. From our study, we found that most connections between ingress and egress routers have small traffic volumes with high traffic variations, but only a few connections with high volumes tend to be stable with little traffic variation. As shown in Figure 2, we plot the correlation between the mean and relative standard deviation (RSD) of the traffic for each pair of ingress and egress routers. Clearly, the distribution of the mean is unbalanced. Most connections have small mean values, while only a few connections have large mean values. Furthermore, the RSD of connections with large mean values are really small which means their traffic variation is stable. In contrast, all the connections with unstable traffic and large RSD values have small traffic volumes. This traffic behavior can somehow be expected and explained because connections or services with higher traffic volume often contributed by more users, and the multiplexing of traffic from more users can lead to less traffic variation.
Based on the above observation, we propose to combine ILP and greedy methods in the following way. We classify SFCRs into stable ones and unstable ones according to their workload variations over time. At the initial time interval, we only use an ILP solver to allocate the stable SFCRs, and then use a greedy algorithm to determine the placement of the remaining SFCRs with the residual node and link capacity. The intuition is that stable SFCRs should be scheduled optimally first so that network operators can always obtain the maximum profit from this part of SFCRs. Since the number of stable SFCRs should also be relatively small compared to the total number of SFCRs, so the problem size of our ILP can also be reduced greatly. On the other hand, unstable SFCRs can only obtain limited benefits from ILP because they are likely to be migrated over time due to traffic variations. Therefore, we use a greedy algorithm to allocate the remaining unstable SFCRs.
After the above initial placement, we then propose another greedy reconfiguration algorithm to refine the placement at each of the following time intervals for two objectives. One is to resolve resource violations caused by the time-varying traffic demand, so the number of SFCR rejections can be minimized. The other one is to consolidate VNFs onto a smaller number of servers, so the resource and energy consumption can be minimized.
In the rest of the section, we first introduce the ILP formulation for finding the optimal placement for stable traffic. Then we explain the greedy placement algorithm for unstable traffic. Finally, we propose the greedy reconfiguration algorithm for refining the placement of every following time interval. Noted, the placement algorithms can also be applied periodically when the traffic demand has more dramatic changes.

B. ILP FORMULATION
The inputs and outputs of our problem have been mentioned in Section II-B, and the objective function is defined in Eq. (1). Hence, an ILP solver can be used to find an optimal placement with subject to the following constraints. All the variables used in the formulation are summarized in Table 1 as well. x t s,|F|+1,n = 0, s ∈ S, n = s.d, t ∈ T (18) Eq. (17) to Eq. (20) mean the source and the destination of s can be only mapped at the specific node.
Eq. (21) ensures the total CPU consumption cannot exceed the available CPU usage on each physical node. We introduce a ratio to reserve some node capacity for two purposes. One is for handling the traffic variation among time intervals. The other is that sharing VNF can reduce the basic resource consumption and the deployment cost of VNF, so we reserve some capacity for other SFCRs to use in the greedy algorithm.
Eq. (22) means that a type f VNF is deployed on the physical node n when there is at least one f type NF mapped to the node n. Eq. (23) means, on each physical link, the total link consumption cannot exceed the available link usage.
is the reserve ratio of link capacity.
Eq. (24) means if there is one SFCR traffic flow into physical node n, the traffic is only just from one physical node m. Eq. (25) means if there is one SFCR traffic flow out physical node n, the traffic only flows into one physical node m. Both of them describe a virtual link that cannot be mapped on more than one physical link. In short, traffic cannot be split. After ILP processing stable SFCRs, we use a greedy algorithm to map remaining SFCRs based on the following scheduling principles. First, we make the placement decision of SFCRs with higher traffic demand with higher priority because the SFCRs with higher traffic demand can contribute more revenue, and they are more likely to be rejected when residual capacity becomes scarce. Second, we reuse the deployed VNFs if the remaining capacity on the server is sufficient in order to reduce the basic resource consumption and the deployment cost. Finally, we try to place the NFs of a SFC as close to each other as possible to minimize the endto-end delay and maximize the revenue of a SFC.
Algorithm 1 is our greedy algorithm. Our algorithm contains the following steps. Step1: find the SFCR s ∈ S with the highest traffic demand based on the first principle. In line 5 to 14, we iteratively find placement locations for each NF based on the placement location of its predecessor NF (f prev ) according to the policy below. Step2: If the VNF of f has been deployed on some nodes (Candidate), place the NF on the VNF with the closest distance with sufficient link capacity to the placement location of f prev , and route the traffic from f prev to f through the shortest path in line 8. Otherwise, deploy a new VNF instance on the node which is the closest distance to f prev and has sufficient node capacity, and route the traffic from f prev to f through the shortest path in line 10. Step3: find the shortest path connecting the last NF with the destination of s in line 15. Step4: compare the mapping result with the one without mapping the s to ensure our profit increase in line 16. If a SFCR cannot find a valid placement, the SFCR is rejected and the M is not changed.

D. RECONFIGURATION ALGORITHMS
Due to the time-varying workload, we apply placement reconfiguration at each time interval to resolve resource violations and reduce resource consumption. Our reconfiguration strategy consists of three algorithms: (1) NF migrations algorithm aims to resolve node capacity violation by migrating NFs on the node to the same type VNFs on another node. (2) Traffic re-routing algorithm aims to resolve link capacity violation by re-routing the traffic away from the links without sufficient capacity. (3) VNF Consolidation algorithm aims to shut down the node with less loading by migrating its VNFs to other nodes.
The NF migrations algorithm is shown in Algorithm 2. For each time interval, we first find out all the nodes with insufficient capacity in line 1. Then, in the for-loop we iterate n_violation to process each violation node n. We iteratively migrate the NFs on node n with the following steps until the violation on node n is resolved. Step1: Find an unstable SFCR s routing through the node n with the least traffic demand and Traffic re-routing algorithm is shown Algorithm 3. When resource violation occurs on a link, we first find out all the violation links in line 1. Then, in the for-loop we iterate l_violation to process each violating link l. We iteratively redirect the traffic of these mapped SFCRs from the link l with the following steps until the traffic on link l is less than its link capacity. Step1: Find a unstable SFCR s from the link l with the least traffic demand and find the NF f i in s that uses the link l to route the traffic to its next NF f i+1 in s in line 4.
Step2: Re-route the traffic from f i to f i+1 through the shortest path between their node locations without using link l in line 8. If we cannot find any unstable SFCRs, we select a stable SFCR with the smallest traffic and then reject it in line 5 to 7.
Finally, VNF Consolidation algorithm is shown in Algorithm 4. The algorithm attempt to shut down nodes for saving resource and energy with the following steps. Step1: Select the node n with the lowest utilization as the shutdown candidate. Step2: For each NF mapped on the node n, we try to move it to a node with the same VNF type. The best candidate node is the one that can result in the highest net profit according to our definition. Step3: Since migrating NFs could result in longer routing paths and lower revenue, we will not shut down the candidate node if the consolidation done in Step2 cannot improve the overall net profit.

IV. EXPERIMENT SETUP A. NETWORK TOPOLOGY
Our experiments are conducted based on the network and topology information of two backbone networks, Abilene and GÉANT, from SNDlib [21], [22]. Abilene (i.e., also known as Internet2 Network) is a high-performance backbone network connecting several universities and their affiliate institutions in the US. The Abilene network consists of 12 nodes and 15 10 Gbit/s links. GÉANT is a European data network for the research and education community connecting over 50 million users in over 10,000 institutions. Its backbone network consists of 22 nodes and 36 links. Both networks have been widely used for performance evaluation in the research literature. In the rest of the section, we also refer to Abilene as the small-scale network and GÉANT as the large-scale network.
For our evaluation, we consider each node in the network topology as a server with computing capacity to host VNFs. The computing capacity of these servers is considered to be different with resource units randomly generated within a range. The bandwidth of each link in the topology is identical because 10 Gbit/s links are used by both networks. We also generate synthetic networks with a given number of nodes using the k-means clustering algorithm to merge nodes within a neighborhood in the real networks, and aggregate the link bandwidth of merged nodes.

B. SFCR WORKLOAD
We use the method described in the previous VNF placement study [23] to generate the workload of SFCR in our experiment according to the traffic characteristics observed from the real traffic matrix collected in SNDlib [21], [22]. The traffic matrix is generated for every hour over 24 hours. The traffic demand of a SFCR over time intervals is generated using a sinusoidal signal. The demand of each time interval is added with a noise value generated by a Poisson distribution function. To distinguish stable and unstable SFCRs, the variance of noise and sinusoidal signal are much larger for the unstable SFCRs than the stable SFCRs. According to the 80-20 rule, we let only 20% of the SRFCs have stable traffic, but their aggregated traffic demand is counted for roughly 80% of the total network traffic.
Four types of NFs are considered in our experiment, and the number of NFs in each SFCRs is between 2 and 4. Every VNF type has the same basic resource consumption unit for simplicity, but every NFs has a different workload-dependent resource consumption ratio. The delay threshold θ of each SFCR is given randomly between 1 and the network topology diameter. The ingress and egress nodes of a SFCR are randomly assigned according to the probability of traffic demand ratio between each pair of nodes in the original traffic matrix collected from real systems.

C. COMPARED METHODS
Following four VNF placement algorithms are compared in our evaluation.

1) GREEDY
It simply uses the greedy placement algorithm described in Algorithm 1 to decide the placement decision at the initial time interval. Then apply the NF migrations algorithm, traffic re-routing algorithm, and the VNF consolidation algorithm for the rest of the following time intervals.

2) ILP
It represents an optimal solution that maximizes the net profit including the reconfiguration cost across time intervals. In order to include the reconfiguration cost in ILP, we extend our ILP formulation in Section III-B by giving the placement of the previous time interval as a problem input and adding the cost equation for deployment and redirection in the formulation. The CPLEX ILP solver is used to find the new placement for the current time interval. To restrict the computation time of the ILP solver, the solver is stopped when it reaches a certain percentage of the optimal solution or the result is converged.

3) VITERBI
It represents a state-of-the-art reconfiguration-aware VNF placement solution. The algorithm is proposed by [14], and we briefly describe its algorithm as follows. First, it finds the placement without considering reconfiguration cost at each time interval using the ILP solver. Then it constructs a state transition graph between the placement found from the ILP solvers, where each state of the graph represents the profit from applying a placement decision on the traffic of 99990 VOLUME 9, 2021 a time interval, and the weight on a state transition edge is the reconfiguration cost from one placement to another placement. Finally, it aims to maximize the net profit across all the time intervals by applying the Viterbi algorithm to find a path from the first time interval to the last time interval in the state transition graph with the maximum aggregated values. As shown in our evaluation results, this approach can achieve better net profit than Greedy, but it still needs to solve the ILP problem at each time interval, and assume the traffic demands of all the time intervals are known in prior.

4) HYBRID
It is our proposed approach, which determines the placement at the initial time interval using ILP solver for stable SFCRs and using the greedy placement algorithm for unstable SFCRs. Then, apply the NF migrations algorithm, traffic re-routing algorithm, and the VNF consolidation algorithm for the rest of the following time intervals.

V. EXPERIMENT RESULTS
Our evaluation consists of three parts. The first is to analyze the benefits from only considering stable traffic in ILP formulation. The second is to compare the results of different algorithms using the small-scale network, Abilene. The third is to exam the scalability and the benefit of consolidation strategy using the large-scale network, GÉANT.

A. ILP SOLUTION ANALYSIS
This set of experiments aims to analyze the results of the ILP solver from our formulation given in Section III-B. The experiments are conducted with 20 SFCRs (4 stable SFCRs, 16 unstable SFCRs) on a 8 nodes network which is generated through k-means clustering based on the GÉANT topology. First of all, we know the strength of ILP is that the ILP solver can always optimize the result according to any given objective function, while greedy algorithms normally are ad-hoc strategies designed for a single objective or intuition. That is important to the network operators because the objective functions can be affected by many factors, such as system environment, user experience, etc. For instance, the value of ω in our objective function represents the cost ratio between computing resource and network bandwidth. According to Eq. (12), if ω increases, computation cost becomes more important than network cost and vice versa. Hence, the network operator can easily adjust the objective function of ILP to adapt to these changes on finding the placement decision. In Figure 3, we present the placement results from the ILP solver then the settings of ω is varied from 0 to 1. The results include the bandwidth consumption (BW), CPU consumption (CPU), number of VNFs (VNF) and, number of active PMs (Active PM). As observed, under larger value of ω, computation cost becomes more expensive, so the ILP solver will try to reduce the CPU consumption by reducing the number of VNF and active PM. On the other hand, under smaller value of ω, the placement decision will try to reduce the bandwidth consumption by deploying more VNFs in a   near neighborhood, so the routing path and bandwidth consumption can be reduced. Most greedy algorithms, including our proposed algorithm, are oblivious or insensitive to the changes of objective function. Therefore, ILP approach is still necessary to obtain better and more adaptive results.
However, the biggest weakness of ILP approach is its computation complexity. Figure 4 shows the computation time of ILP solver as we increase the number of SFCRs in ILP formulation. The y-axis of the plot is in log scale, so the computation time actually increases exponentially to the problem size (i.e., the number of SFCRs). Therefore, the computation time can be significantly decreased if we can reduce the problem size. Our Hybrid approach did that by only considering the stable SFCRs in ILP. The reason we only consider stable SFCRs for three reasons. (1) The traffic demand of stable SFCRs changes little over time, so their VNF placements don't need to be reconfigured. Hence, the solution from ILP solver can be reused with good results over multiple time intervals, and computation cost can be amortized over time intervals. (2) Traffic demand of stable SFCRs is counted for the majority of the overall network traffic demand, so maximizing the net profit of stable SFCRs can lead to a close-to-optimal result. (3) Only a small percentage of SFCRs are stable, so considering only the stable SFCRs in ILP can greatly reduce problem size and computation time.
As shown in Figure 5, we plot the profit from ILP solver as we gradually increase the number of SFCRs in ILP formulation according to three different SFCR selection strategies.  Stable-first is our proposed strategy that chooses more stable SFCRs with higher priority. In contrast, Unstable-first chooses the least stable SFCRs first. Lastly, Random chooses the SFCRs to be considered in ILP randomly. The rest of SFCRs not chosen in ILP will be placed with the greedy placement algorithm. As observed from the plot, more SFCRs in ILP can improve the overall profits for all three strategies. But Stable-first strategies only needs 4 SFCRs to reach the best result when all the stable SFCRs are selected. On the other hand, other strategies need to include a lot of SFCRs to get improvements. Interestingly, we also found that including unstable SFCRs in ILP can cause worse results in some cases. This is because the initial placement of unstable SFCRs decided by ILP is not guaranteed to be the best decision for the following time intervals once traffic demand changes. Even worse, stable SFCRs are sacrificed if unstable SFCRs are chosen first which also likely leads to lower overall profits. Therefore, our proposed strategy to only consider stable SFCRs in ILP can generate more profit while lower computation time.

B. SMALL-SCALE NETWORK EVALUATION
Next, we compare the profits and computation time of four different VNF algorithms (Greedy, ILP, Viterbi, Hybrid) introduced in Section IV-C. Because ILP algorithm takes too much time for large-scale networks, we use small-scale networks generated based on Abilene network for this set of experiment. Figure 6 plots the profit under different scale networks. As expected, Greedy has the lowest profits, while ILP has the highest profits. Specifically, the profits of ILP is 30% ∼ 38% more than Greedy. In contrast, our Hybrid algorithm achieves very close results to ILP with less than 1% differences for 4-node and 6-node networks, and less than 6.8% differences for 5-node network. Comparing to Viterbi, Hybrid algorithm also increases the profit by 5% ∼ 18%. Therefore, Hybrid approach clearly can achieve much better results than existing greedy and state-of-the-art ILP approaches.
More importantly, Hybrid approach can achieve nearoptimal results with much less computation time. As shown in Figure 6b, as the scale of networks increases, the profit results are not affected too much, but the computation time of all the algorithms, except Greedy, increase greatly. This can be expected, because ILP, Vertibi, and Hybrid are all ILP-based algorithms, so computation time grows exponentially to the problem size, including the number of SFCRs and network nodes. But the computation time of Hybrid is significantly smaller than ILP and Viterbi over any network scale. Furthermore, the growing rate of Hybrid is also much lower than ILP and Viterbi. The y-axis in Figure 6b is in log scale, so the computation time reduction of Hybrid is significant. Specifically, Hybrid is faster than ILP and Viterbi up to a factor of x30 and x415, respectively. Hybrid is much faster because it reduces the problem size by considering a smaller number of SFCRs in its ILP solver. Interestingly, we found that Viterbi is slowest among all, and slower than ILP by a factor of x6 ∼ x14. As explained in Section IV-C, ILP introduces more equations to capture the reconfiguration cost, and the previous placement decision is given as input. We believe the additional equations and input variables actually help to limit the search space of the optimization problem. Furthermore, Viterbi needs additional time to run the Viterbi algorithm after solving the ILP problem at every time interval, so Viterbi becomes the slowest among all. Although Hybrid is still slower than Greedy, especially with a larger network scale, it can still be computed in a few seconds with the given network scales.
Overall, our Hybrid approach can achieve near-optimal results with significantly less computation time. Its computation time is x30 times faster than the ILP, and its profit result is 36% higher than the Greedy. Comparing to the state-ofthe-art Viterbi algorithm, Hybrid increases the profit by 18%, while taking hundreds of times shorter computation time.

C. LARGE-SCALE NETWORK EVALUATION
Finally, we evaluate the results on large-scale networks with 12 to 16 nodes generated from the GÉANT network. Over 400 time intervals were simulated for considering 20 SFCRs. We are not able to obtain the results of Viterbi and ILP algorithms due to their high computation complexity, so only the results of Hybrid and Greedy are compared in this set of experiments. For both approaches, we also include their results with and without applying our proposed consolidation algorithm. Again, we compare the profit and  Similar to the results for small-scale network, Hybrid can improve the profit of Greedy by 20% ∼ 35% while taking longer computation time. But even with a network as large as 16 nodes, Hybrid only took 7.5 minutes to compute the result. Especially, Hybrid only needs to run the ILP solver once in a few hours or days. So the computation overhead should be acceptable in practice. In addition, we observe the consolidation algorithm indeed can further increase the profit up to 7% for both Hybrid and Greedy approaches, and the computation time of the consolidation algorithm is much shorter than the greedy placement algorithm. So our proposed consolidation algorithm is quite efficient.
To analyze the impact of our consolidation algorithm and Hybrid strategy, we summarize several measurement statics from the experiment in Figure 8. We can find the following observations. Hybrid has higher profits than Greedy because its resource consumption (both CPU and BW) is lower, and its revenue from accepted SFCRs (Accept Rate) is also higher. The deployment cost of Hybrid is higher than Greedy mainly because it accepts more SFCRs and creates more VNFs to minimize the latency delay of SFCRs to obtain higher revenue. Finally, consolidation algorithm clearly can reduce the number of active PMs, but also has to pay the price for redirection. So the effectiveness of our consolidation strategy depends on the cost ratio between reconfiguration and power consumption. If the power consumption is more expensive or the redirection cost is cheaper, consolidation is more likely to occur. Because our consolidation algorithm only applies its changes if the overall profit can be improved, the results with consolidation are guaranteed to be better than without it.

VI. RELATED WORK
Many different methods are proposed to solve the VNF placement problem either by ILP formulations [6]- [8] or greedy algorithms [10]- [13]. To the best of our knowledge, none of works proposes the approach of combining ILP and greedy algorithms. In addition, our work consider not only the VNF placement or the SFC deployment but also the reconfiguration. In comparison, [18] aims to minimize the number of used physical nodes and consider two factors, which are the time-varying workload and basic resource consumption when running VNFs on physical nodes. They propose ILP first and then propose the two-stage greedy algorithm. However, unlike us, they do not consider the end-to-end delay of SFCRs. Reference [24] formulated a problem on SFC deployment to reduce energy consumption and maximize the provider's profit. They offer an effective profit-driven service chain provisioning scheme for large-scale infrastructures spanning different geographically-distributed sites. However, they do not consider the time-varying workload.
Some of them only focus on the reconfiguration to improve service performance because of dynamic changes in resource requirements [19], [20], [23], [25]. There are three methods to solve violations, such as VNF migration, VNF replication, and the flow redirection of SFC. Reference [23] propose a real-time VNF migration algorithm based on the deep belief network to predict future resource requirements. Reference [25] aims to minimize network latency in rapidly changing network environments. They design a model to migrate VNFs for low latency. Reference [19] propose an idea of replication VNF to reduce the number of migrations and discuss the trade-off between replication and migration by using Linear Programming (LP) model. Reference [20] propose a priority-aware flow migrating scheme and minimize the impact of flow-migration using a greedy algorithm.

VII. CONCLUSION
This work proposed a hybrid VNF placement approach to maximize the net profit of a network service provider. To overcome the time complexity problem of ILP solutions under the time-varying workload and large scale, our hybrid approach only applies ILP on stable traffic, and uses the greedy algorithm for placing the unstable traffic on residual network capacity. To resolve resource violations caused by workload, a greedy reconfiguration strategy is designed to re-route traffic. To reduce the resource consumption cost, a greedy consolidation strategy is designed. Our evaluations based on real backbone network traffic and topology show that our hybrid approach can achieve up to 36% profit improvement compared to a pure greedy approach, while achieving x30 times computation time speedup over a pure ILP approach. Comparing to the state-of-the-art Viterbi algorithm, Hybrid increases the profit by 18%, while taking hundreds of times shorter computation time. Therefore, we prove that a hybrid approach combining ILP and greedy is capable to make quick and accurate placement decisions to deal with the time-varying workloads in real system scaled networks.