1. Introduction
In recent years, network virtualization technology has mainly been of academic interest. It is not only a key technology to solve the ossification problem of the Internet [
1,
2,
3], but also a core technology in cloud computing [
4,
5,
6]. In the future Internet, through network virtualization, the current Internet service providers will be decoupled into two independent entities: infrastructure providers and service providers. Infrastructure providers are responsible for deploying and managing the physical network, while service providers are responsible for assembling, installing, and managing virtual networks and offering services through them. Such an Internet paradigm makes it possible to introduce new network architectures, protocols, and services without changing the existing network, effectively supporting the innovation of network technologies and overcoming the Internet ossification problem [
7]. In the cloud computing environment, through network virtualization, users can be provided with flexible, scalable, and self-service resource leasing services, which can effectively promote the development of cloud computing.
As a resource allocation problem in the process of network virtualization, virtual network embedding (VNE) is one of the major challenges in network virtualization [
8]. Because VNE is limited by node resource constraints, link resource constraints, access control conditions, and random arriving of virtual network requests (VNRs), the solution to the VNE problem is extremely complex. It has been proved that the VNE problem is NP-hard [
9]. Although the VNE problem can be solved by exact solutions [
10,
11], when the instances of the problem are large, it is difficult to solve it in a limited time.
In order to make a tradeoff between the solution quality and the execution time, most scholars decompose the VNE problem into two stages: node embedding and link embedding, and use heuristic-based algorithms to solve it. In these two-stage VNE algorithms, different kinds of heuristic approaches are usually used in the node embedding stage, which are also the main contributions of these algorithms; and the shortest path, k-shortest path or multiple commodity flow algorithm is usually adopted in the link embedding stage.
In the node embedding stage, most of the early scholars [
12,
13,
14] only adopted simple greedy strategies to embed virtual nodes onto the physical nodes with the highest local resource. Since these algorithms only consider the resources of the nodes themselves, the topology attributes of adjacent nodes are neglected, which results in poor coordination of node embedding and link embedding, thus decreasing the performances of the VNE algorithms.
In order to better solve the VNE problem, some scholars have recently proposed several coordinated two-stage VNE algorithms, which consider link embedding when solving node embedding. Zhao et al. [
15] take the neighborhood relationship between nodes into consideration in the node embedding stage, which can shorten the link embedding distance and improve the acceptance ratio and revenue to cost ratio. Ding et al. [
16] borrow the betweenness centrality in graph theory to rank the nodes in virtual networks, and sort the nodes of the physical network according to the correlation properties between the former selected and unselected nodes. In this way, node embedding and link embedding are well coordinated. Similar to literature of ref. [
16], Zhang et al. [
17] propose a novel node importance evaluating method with the purpose of choosing the most important physical node so as to facilitate the subsequent link embedding. The main contributions of their work are the definitions of the node degree and clustering coefficient information. Inspired by the successful PageRank algorithm used by Google’s search engine, the Markov Random Walk Model [
18] and the Markov Reward Model [
19] are introduced to measure the importance of nodes in a network. In their algorithms, each node is ranked based not only on its local resources but also on the resources of the nodes from which it can reach. In this way, the information about the links, necessary for the link embedding stage, is also considered during the node embedding stage. In recent years, multi-criteria decision analysis methods such as TOPSIS [
20] and ELECTRE [
21] have been introduced into VNE algorithms. In these algorithms, first, the authors define several attributes of nodes from both local and global perspectives, and then use a multi-criteria decision analysis method to rank the nodes in the network. In this way, the most appropriate physical nodes will be selected to host the virtual nodes, which will facilitate subsequent link embedding. Though, in all of the above methods, the network topology structure is used to evaluate the resource capabilities of nodes, which makes the results of node ranking more reasonable and improves the embedding performance of VNRs, in our opinion, some special topological attributes of nodes can be further explored and utilized to improve the embedding performance of VNRs.
Different from the above research, in this paper, we consider the topological importance of nodes in the network from a new perspective. In physics, the field represents the distribution of a physical quantity in space, which can be used to describe the interaction between non-contact objects. Gan et al. [
22] introduced field theory into abstract data space. In their paper, the importance of data objects can be clarified by describing the virtual interactions among data objects. Inspired by the above theory, we introduced the field theory into the VNE process and used the topology potential to measure the topology importance of nodes.
The main innovations and contributions of this paper can be summarized as follows:
- (1)
To describe the topology importance of a node in a network from a global perspective, a new topological attribute named “node topology potential” is defined, which can be utilized to further improve the embedding performance of VNRs.
- (2)
A novel virtual network embedding algorithm based on topology potential (VNE-TP) is proposed. The VNE-TP algorithm considers the importance of the nodes in terms of topology and resources in the node embedding stage, and considers the available bandwidth and path length in the link embedding stage.
- (3)
The simulation results are provided to validate the performance of the VNE-TP algorithm. It can be demonstrated that the VNE-TP algorithm outperforms the existing algorithms in terms of acceptance ratio and revenue to cost ratio.
The rest of this paper is organized as follows. In
Section 2, we present the network model and the evaluation indicators of VNE. In
Section 3, we give a multi-objective optimization integer linear programming formulation for the VNE problem. In
Section 4, we analyze the topology importance of each node in a network, and define the topology potential of a node and the topology potential entropy of the network. In
Section 5, we propose our novel algorithm. In
Section 6, we perform a broad simulation of the algorithms and discuss the simulation results. Finally, in
Section 7, we conclude this paper.
2. Network Model and Evaluation Indicators
2.1. Physical Network
The physical network can be modeled as a weighted undirected graph , where is the set of physical nodes, is the set of physical links, is the set of the attributes of physical nodes, and is the set of the attributes of physical links. For a given physical node , its attributes include the available CPU (Central Processing Unit) resource and location information, denoted as and , respectively. Similarly, for a given physical link , its attribute is the available bandwidth, denoted as .
2.2. Virtual Network Request
Similar to the physical network, the virtual network can also be modeled as a weighted undirected graph , where represents the set of virtual nodes, represents the set of virtual links, represents the set of the constraint attributes of virtual nodes, and represents the set of the constraint attributes of virtual links. For a given virtual node , its attributes include the required CPU resource and location information, denoted as and , respectively. For a given virtual link , its attribute is the required bandwidth, denoted as . Based on the virtual network model above, the k-th arrived VNR can be considered as , where represents the virtual network topology, represents the arrive time of the VNR, and represents the end time of the VNR.
2.3. Evaluation Indicators
The optimization goal of VNE is to efficiently and reasonably utilize the physical network resources in the entire VNE process. In this paper, we use acceptance ratio and revenue to cost ratio as the evaluation indicators for the VNE algorithm.
The VNE acceptance ratio is the ratio of the number of successfully embedded VNRs to the number of total arrived VNRs in a period of time, which can be defined as Formula (1).
where
represents the set of VNRs which have been successfully embedded during the time from 0 to
, and
represents the set of VNRs which have arrived during the time from 0 to
T. We can see that the higher the acceptance ratio, the more are VNRs embedded successfully in a certain period of time.
The revenue of accepting
at time
refers to the total resource it demands, which can be defined as Formula (2).
The cost of accepting
at time
is the total physical resource allocated to it, which can be defined as Formula (3).
where
is a binary variable denoting the embedding relation between the virtual node
and the physical node
, and
is a binary variable denoting the embedding relation between the virtual link
and the physical link
. The definitions of
and
are shown in Formulas (4) and (5).
The revenue to cost ratio is defined as the ratio of the embedding revenue to the embedding cost in a certain period of time, as shown in the Formula (6).
where we can see that
reflects the resource utilization efficiency of the physical network. The larger
, the higher is the utilization efficiency of the physical resource.
4. Node Topology Potential and Network Topology Potential Entropy
At present, there are many typical indicators to evaluate the topology importance of nodes in a network, such as betweenness centrality, degree centrality, and closeness centrality [
16,
20] etc. However, these indicators either have strong one-sidedness, or emphasize the role of a single node. In physics, the concept of field is used to describe the interaction between two non-contact objects, such as the gravity field and the electromagnetic field. Inspired by the idea above, the field theory was introduced into the abstract data field [
22], and the topology potential proposed to assess the importance of the nodes in complex networks [
23].
Based on the existing researches, in order to assess the topology importance of each node in a network, we assume that every node in the network creates a virtual field around itself, overlapping with fields of other nodes, so that each node has a different topology potential. Considering that the topology importance of each node is more affected by the performance of its neighboring nodes, we use the Gaussian function that is able to represent the short-range field well to describe the topology potential for each node in the space around it. The topology potential of node
in a network can be formalized as Formula (17).
where
represents the number of nodes in the network;
c(
) represents the topology weight of node
nk;
represents the shortest distance between node
and
; parameter
is used to control the influence region of each node, called distance factor. Considering that the bandwidth of the outgoing links of a node is larger, its influence on the surrounding nodes is stronger, so the node’s topology weight is defined as Formula (18).
where
represents the adjacent link set of node
.
According to the property of the Gaussian function, when the value of is large, the influence range of every node in the network is larger; when the value of is small, the influence range of every node in the network is smaller. In order to select an appropriate value of , the topology potential entropy of the network is defined as Formula (19), and the value of is obtained by setting the topology potential entropy to be minimum.
5. VNE-TP Algorithm Design
According to the literature [
24,
25], the multi-objective integer linear programming model constructed in
Section 3 belongs to the NP-hard problem. When the problem size is small, tools such as GLPK and CPLEX [
10,
11] can be used for an exact solution. When the problem size is large, it is difficult to find the optimal solution within a limited time. To solve this problem, a novel two-stage heuristic algorithm named VNE-TP was designed as in this section.
5.1. Node Embedding Algorithm
In the node embedding stage, firstly, the embedding sequence of virtual nodes is constructed according to the topology potential and resource requirement of virtual nodes, and then the virtual nodes are embedded sequentially onto the physical nodes with the best comprehensive ability. The specific steps of the node embedding algorithm are as follows.
Step 1: Calculate the embedding weight of the virtual nodes. Considering that the virtual node with higher topology potential and more resource requirement should be priority embedded because of the limited resource of the physical nodes, the embedding weight of a virtual node is defined as Formula (20).
where
represents the resource requirement of virtual node
. The definition of
is shown in Formula (21).
where
represents the adjacent link set of virtual node
.
Step 2: Construct the embedding sequence of virtual nodes. In order to make the virtual nodes near each other in the virtual network remain close to each other after embedding onto the physical nodes, which reduces the embedding cost in the link embedding stage, we construct the virtual node embedding sequence as follows. First, we select the virtual node with maximum embedding weight value as the root node and run the breadth-first search algorithm. Second, we sort the remaining virtual nodes by the distances from themselves to the root node in ascending order. Finally, if there are two virtual nodes with equal distance to the root node, then we sort them by the embedding weight in descending order.
Step 3: Calculate the set of candidate physical nodes for the virtual node to be embedded. For the i-th virtual node in the embedding sequence, according to the node constraints of Formulas ((9)–(13)), select its set of candidate physical nodes, that is .
Step 4: Complete the embedding of the i-th virtual node
. For
, considering the topology attribute, resource ability attribute, and adjacency relationship, we introduce the node embedding function (NEF) in this paper and embed the virtual node
to the physical node whose NEF value is maximum. The definition of NEF is as Formula (22).
where
represents the resource capability of the physical node
,
represents the hops from
to the physical nodes which have hosted the neighbors of
, and
is a parameter to prevent the dividend being zero. The definition of
is shown in Formula (23).
where
represents the adjacent link set of the physical node
.
The reasons why NEF is selected as the physical node selection metric are mainly due to the following points. First, a physical node with larger value indicates that its topology potential is higher, and selecting it for embedding the virtual node will facilitate the subsequent virtual link embedding. Second, a physical node with larger value indicates that the node’s available resource is higher, and embedding the virtual node onto it will balance the node stress of the physical network. Finally, a physical node with smaller value indicates that there are fewer hops between it and the physical nodes that have hosted virtual nodes, and the embedding virtual node onto it will reduce the embedding cost of the subsequent virtual link embedding.
Step 5: Skip to step 3 and continue if the embedding of all virtual nodes is not completed.
The detail pseudo-code of the node embedding algorithm is given by Algorithm 1.
Algorithm 1 Node Embedding Algorithm of VNE-TP |
Input: Physical network , virtual network Output: Node_Embedding_Listfor every virtual node do Calculate end for Construct the embedding sequence of virtual nodes by running the breadth-first search algorithm, and record the result into VirtualNodeList fordo Calculate for the virtual node in the VirtualNodeList if then return NODE_EMBEDDING_FAILED else for do Calculate for the physical node in end for Embed to with the largest NEF value, and record the result into Node_Embedding_List end if end for returnNode_Embedding_List |
5.2. Link Embedding Algorithm
In the link embedding stage, the embedding sequence of the virtual links is constructed according to the bandwidth requirement of the virtual links first in descending order, and then the virtual link is embedded onto the physical path with the best comprehensive capability. The specific steps of the link embedding algorithm are as follows.
Step 1: Construct the embedding sequence of the virtual links. According to the bandwidth requirements, the virtual links are arranged in descending order. Thus, it is possible to preferentially embed the virtual links which are difficult to be embedded.
Step 2: Calculate the set of candidate physical paths for the virtual link to be embedded. For the
virtual link
in the embedding sequence, first delete physical links that do not satisfy bandwidth constraint in the physical network, then select its set of candidate physical paths
by adopting the k-shortest path [
26] algorithm.
Step 3: Complete the embedding of the
virtual link
. Considering that the virtual link embedding should be helpful for coordinating the physical link resource consumption and reducing the embedding cost, we introduce the path embedding function (PEF) in this paper and embed the virtual link
to the physical path whose PEF value is maximum. The definition of PEF is as Formula (24).
where
represents the available bandwidth of the physical path
, and
represents the hops of the physical path
.
The reasons why PEF is selected as the physical path selection metric are as follows. First, the physical path with larger value indicates that the path’s available resource is higher, and the embedding virtual link onto it will balance the link stress of the physical network, thereby reducing the number of bottleneck links in the physical network. Second, the physical path with smaller value indicates that the path has fewer hops, and the embedding virtual link onto it will reduce the embedding cost.
Step 4: Skip to step 2 and continue if the embedding of all virtual links is not completed.
The detail pseudo-code of the link embedding algorithm is given by Algorithm 2.
Algorithm 2 Link Embedding Algorithm of VNE-TP |
Input: Physical network , virtual network , Node_Embedding_List Output: Link_Embedding_ListConstruct the embedding sequence of virtual links, and record the result into VirtualLinkList fordo Calculate for the virtual link in the VirtualLinkList if then return LINK_EMBEDDING_FAILED else for do Calculate for the physical path in end for Embed to with the largest PEF value, and record the result into Link_Embedding_List end if end for returnLink_Embedding_List |
7. Conclusions
In this paper, the VNE problem was investigated by introducing field theory in physics. A multi-objective integer linear programming model for VNE was constructed and a two-stage coordinated heuristic VNE algorithm, named VNE-TP, proposed. Simulation results show that the acceptance ratio and the revenue to cost ratio of the VNE-TP algorithm are about 10% higher than the existing VNE algorithms in all of the simulation conditions. The influence of the access control condition on the performance of VNE-TP algorithm was analyzed, and it was concluded that by selecting an appropriate revenue to cost threshold, the acceptance ratio and the revenue to cost ratio of the VNE-TP algorithm can be further improved.
However, we did not consider the reliability of the physical network in this paper. In the real world, the nodes and links of the physical network may fail during the working process. Therefore, in the next step, focusing on the sudden failure of the physical network, we will introduce reliability into the VNE process, and study the reliable VNE algorithm.