GAONE: A Novel Approach For Online One-Stage Virtual Functions Placement
GAONE: A Novel Approach For Online One-Stage Virtual Functions Placement
Recently, Network Function Virtualization (NFV) has gained a lot of attention as an enabling technology of the future
inter-networking paradigm. By decoupling substrate network equipment from network functions that run on them, NFV helps
Telecommunication Service Providers reduce Operating Expenses (OPEX) and Capital Expenses (CAPEX). One of the main challenges
of NFV deployment is the optimal Virtual Network Function (VNF) placement in the network infrastructure in a suitable way.
This is called a VNF-Forwarding Graph Embedding (VNF-FGE) problem, which is considered as a generalization of the virtual
network embedding (VNE) problem. [1]. Previous research formulates VNF placement as a mixed integer linear programming
problem that has been proved to be N P-hard. On the other hand, some heuristic approaches are proposed to simplify the VNF
placement into two separate stages. However, this separation overlooks the coordination between virtual functions and associated
virtual links, thereby resulting in low acceptance ratio and inefficient substrate resource utilization. To address the limitations of
previous approaches, we propose a distributed parallel Genetic Algorithm that is combined with graph theory for solving VNF
placement in one-stage. Extensive simulations have shown that our proposed algorithm achieves better performances compared to
previous baseline solutions, while meeting the stringent time requirements for online VNF placement applications.
Index Terms—Network Function Virtualization, VNF placement, Virtual Network Embedding, Genetic Algorithm, Graph Theory,
Parallel Distributed Algorithm.
I. I NTRODUCTION B
A C
RADITIONAL networks are rooted in fixed-function
T physical infrastructure (e.g. switches or routers). There
are certain functions largely implemented in these dedicated
SP
polynomial time by sacrificing some degrees of optimality. plement the k-shortest path mechanism for link mapping,
To simplify the allocation of virtual resources, the contem- no matter what the objectives are. The k-shortest path is a
porary research proposals mostly decouple the VNE problem greedy approach that likely produces a good solution but it
into two separate stages: mapping VNFs as virtual nodes into cannot efficiently handle the rigid multiple objectives such as
substrate nodes – virtual node mapping (VNoM) and mapping accumulated long-term revenue, low network cost, improved
virtual links into substrate paths with multiple connected resource utilization, high acceptance ratio and so on. In our
substrate links – virtual link mapping (VLiM). proposed algorithm, the coordination between node and link
The two-step decomposition approaches can simplify the mappings are object-oriented. Only the solution with highest
algorithmic complexity. However, the complexity is still N P fitness value can "survive" in the GA’s procedures. Besides,
hard. Moreover, these two-stage algorithms might result in the during the evolutionary process, the embedding solution of
situation that virtual neighbouring nodes are mapped onto the virtual nodes combined with associated link mapping can be
substrate nodes that are probably far from each other. The generated in the crossover and mutation operations in GA,
long distance between substrate nodes may lead to unexpected which is able to avoid local optima.
longer substrate paths and network defragmentations. This fact Secondly, a number of heuristic/metaheuristic algorithms
is consequently caused by an inefficient VNE solution that simplify VNE problems by separating steps, even for some
declines the substrate resource utilisation and the acceptance one-stage algorithms. These algorithms solve the partial prob-
ratio in the long term. Although some approaches [5] are lem by separating node and link stages or iterating virtual
claimed to consider the coordination between VNoM and nodes. We will discuss this part in detail in Section II. In this
VLiM stages, the achieved results are still far from the optimal. paper, we consider the whole embedding solution as a single
A VNE approach can be classified into either splittable or feasible solution and then evolve feasible solutions through
unsplittable. VNE under splittable and unsplittable configura- GA operations. The fitness value of each feasible solution is
tions is a principle research topic in Software Defined Network calculated with the coordination of all virtual nodes and links.
(SDN), NFV and Future Edge Clouds. A splittable mapping Last but not least, one-stage solutions usually accompany
allows to split a virtual node/link over multiple substrate with the cost of time complexity due to their complicated
nodes/paths in the SN. Indeed, splitting mapping enables better mathematical models. Our proposal tackles this severe prob-
resource utilization in theoretical analysis by gathering small lem by a distributed and parallel scheme. The distributed
pieces of available substrate resources, thereby increasing the and parallel computing has recently emerged as an effective
acceptance ratio. However, such method has many imple- mechanism to handle large and complex problems with less
mentation issues in practice [6]. On the other hand, there time consuming and lower cost. However, a VNR includes
are limited research on the unsplittable mapping. In most several VNFs and virtual links that are highly dependent
previous work, unsplittable mapping algorithms, formulated as on each other making parallelism complicated, so finding
Integer Programming problems, are still N P-hard. The major an efficient one-stage VNE algorithm is literally challenging.
challenge of unsplittable embedding is again its complexity In our proposed GA, the genetic operations are conducted
issue. Several VNE algorithms apply a heuristic approach for among different feasible solutions that are independent and
VNoM and the k-shortest path for VLiM stage. Although such mutually exclusive. GA generally seeks for the best solution by
decomposition can compromise the time complexity, these evaluating and improving multiple feasible solutions through
heuristic solutions cannot guarantee optimal or even near- its evolution processes.
optimal mapping results. In this paper, we propose a one-stage In summary, our main objective is to propose a coordinated
solution to address previous unsplittable embedding limitation one-stage VNE strategy in the NFV environment to improve
on time complexity. resource utilization and deploy our approach in a distributed
Recently, some online VNE approaches claim that their and parallel framework to meet the time requirement in an
approaches [7], [8] could complete in polynomial time. How- online scenario. The rest of this article is organized as below:
ever, the approaches still take longer time than the industry the related work is described in Section II. The network
expectations on an online embedding system. Current VNE model and objective function are presented in Section III. In
approaches have to make a compromise between the mapping Section IV, our proposed GAOne is detailed. We illustrate our
performance (e.g., acceptance ratio and network utilization) performance evaluation results and discussions in Section V
and the embedding execution time. Based on the above con- and finally we conclude the paper in Section VI.
cerns, an unsplittable, one-stage, heuristic and efficient online
VNE solution is in sore need of further study. In this paper, II. R ELATED WORK
by introducing the augmented graph and combining graph
theory, we propose a tailored Genetic Algorithm (GA) that A. Previous literature
coordinately solves the VNE problem in one-stage as well VNE problems have attracted many researchers’ attention in
as reducing the embedding time complexity by deploying a the past decade. Since VNE is known as a N P-hard problem,
distributed parallel architecture. To the best of our knowledge, some exact methods formulated VNE problems as integer lin-
this is the first paper that applies a novel metaheuristic GA, ear programming (ILP) or mixed integer linear programming
namely GAOne, for tackling the VNE problem in one-stage. (MILP), bringing an exponential run-time cost. Consequently,
We conclude our contributions as follows: most of the prior studies have proposed heuristic solutions
First of all, most of the VNE heuristic algorithms im- to reduce the time complexity. Existing literature experiences
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 3
several heuristic VNE algorithms proposed to achieve global flow (MCF) algorithms (splittable-support). This two-stage
optimality as well as embed each given VN in polynomial mapping would certainly restrict the solution spaces for the
time. However, the majority of these approaches address the link mapping stage. To our best knowledge, most of the GA-
VNE problem in two stages consisting of embedding all virtual based VNE solutions are conducted in two separate stages,
nodes and virtual links separately. Each stage tends to get a specializing for node mapping [16] [17] [18]. Even in our
partial solution without any performance guarantee. previous study [19], a GA is merely focused on the link
Generally, two-stage unsplittable VNE algorithms involve mapping stage, that leaves the node mapping solved separately
a greedy node embedding and a subsequent k-shortest path by a greedy algorithm.
(SP) link mapping [9], [10], or a ranking-based node embed-
ding and again the k-shortest path (SP) link mapping [11], B. Summary
[12], [13]. Some metaheuristic methods are also proposed in To summarize, most heuristic algorithms solve the VNE
VNE problems, for example, [14] presents a particle swarm problem in two separate stages, using relaxed ILP model or
optimization to achieve a better local selection strategy for greedy methods in node mapping stage and deploying the
VNoM by adjusting possible VNE solutions and then the k- link mapping by k-shortest path approach. The two-stage
shortest path (SP) is deployed for VLiM stage. methods provide sub-optimal solutions for each stage. This
In terms of one-stage proposals, [5] formulated the VNE separation lead to an unguaranteed result. Even some one-stage
problem as a pure MILP model. Due to the computing heuristic algorithms still deploy the k-shortest path approach
complexity, the authors applies an integer relaxation so that the for link mapping; however, these approaches still solve the
solution could be obtained in polynomial time. However, the VNE problem in separate steps. For exact VNE algorithms,
relaxation variant is executed in two stages and the embedding they are realized in a pure one-stage operation and the majority
results of the relaxed model are considered as node mapping of them usually utilize the MILP/ILP model, causing a non-
outcome. polynomial execution time. Previous pure one-stage solution
Di et al. in [15] proposes a one-stage VNE solution that cannot meet the time requirement for an online scenario.
coordinates node mapping and link mapping. At each step,
a virtual node is mapped according to the already-mapped III. N ETWORK M ODEL
HIS section elaborates on the VNE network model and
virtual nodes and the connecting virtual links among mapped
virtual nodes. Therefore, the link embedding is considered dur-
ing node mapping. Besides, this approach allows backtracking
T VNE problem descriptions. The main index notations
throughout this paper are listed in Table I.
steps that can improve the probability of successful mapping
by iterating over more possible mappings. A. Network Model Description
The authors in [8] deployed a heuristic method (CAN- 1) Substrate Network
A) to construct the candidate substrate node subset and the In VNE problem, researchers usually model the underlying
candidate substrate path subset before conducting the ILP- SN by using the bidirectional weighted graph Gs = (N s , E s ).
based mapping. Through the time complexity analysis in [8], The SN infrastructure is composed of a set of substrate nodes
the approach reduces the execution time compared with the N s (e.g. hosts, routers) and a set of substrate bidirectional
pure MILP solution. However, it takes longer time than the links denoted as E s (e.g. twisted pairs).
mentioned approaches [5]. Hence, these one-stage solutions Each substrate node ns ∈ N s is characterized by its node
can be gained for small problem instances. With the network capacity C(ns ), and its geographic location loc(ns ). The
scales increase, the embedding time still grows exponentially, location of a substrate node is defined on x and y coordinates
which is impractical for the online VNE problem. in this paper. The substrate link esmn ∈ E s indicating the
Similarly, [7] deploys an one-stage heuristic mapping al- link between substrate node ms and ns has a finite bandwidth
gorithm (VNE-RTOS). For each VNR, VNE-RTOS adopts a B(esmn ). B(esmn ) is always equal to B(esnm ) due to the
node ranking for both VN and SN, then conducts the greedy nature of bidirectional substrate graphs. In addition, we use
embeddings for the first two highest ranked-value virtual nodes P s (ms , ns ) to represent the set of all substrate path from
and eventually maps the corresponding virtual links between node ms to ns . pmn is one path selected from the path set
these nodes using SP method. This procedure iterates untill P s (ms , ns ).
all virtual nodes and links have been mapped. Indeed, these 2) Virtual Network
approaches [15], [7] perform the coordinated mapping between Conventionally, a VN consists of a set of dedicated network
virtual nodes and virtual links. However, they neglect the co- service boxes such as firewall, load balancers and application
ordinations between virtual nodes. They map one virtual node delivery controllers that are concatenated together to support a
at a time in accordance with specific heuristic node ranking specific application [20]. The VNR is modeled as a weighted
methods. In fact, these method still separate the mapping graph, denoted by Gv (ta , td , D) = (N v , E v , ta , td , D). N v is
procedure into multiple virtual nodes’ stages. Hence, these are a set of virtual nodes, whilst E v denotes a set of virtual links.
not pure one-stage algorithms in essence. ta is arrival time of the VNR. td is the duration of the VNR and
With respect to metaheuristic algorithms proposed to tackle D represents the maximum distance between a virtual node
VNE problems, most embedding solutions are only focused and its associated substrate node. Each virtual node nv ∈ N v
on node mapping stage, and leaving link mapping stage in a VNR has a CPU capacity requirement C(nv ) and a desired
for k−shortest path (unsplittable-support) or multi-commodity virtual node location loc(nv ). The distance between a substrate
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 4
Variable Description
Ns a set of substrate nodes
E s a set of substrate links
ms , ms a substrate node
esmn a substrate link
C(ns )/C(nv ) the CPU capacity of ns / the CPU requirement of nv
B(esmn )/B(evmn ) the bandwidth capacity of esmn / the bandwidth requirement of evmn
loc(ns ) geographical location of ns
P s (ms , ns ) a set of substrate paths from ms to ns
pmn a substrate path from ms to ns
nv , m v a virtual node
evmn a virtual link between mv and nv
Nv a set of virtual nodes
Ev a set of virtual links
D maximum distance between a virtual node and its associated substrate node
dis(loc(nv ), loc(ns )) the distance between two nodes
N vl the number of virtual links in current request virtual network
µ(nv ) the meta node of nv
N c (nv ) the set of all candidate substrate nodes of nv
M(nv ) the substrate node mapping of nv
n
R () the current remaining node capacity function
M(evnm ) the substrate link mapping of evnm
e
R () the current remaining link capacity function
Ecv the set of all virtual links belonging to current allocated VNRs
rb remaining bandwidth ratio
ra VNR acceptance ratio
node and the virtual node is denoted by dis(loc(nv ), loc(ns )). meta edges, which in turn increases the number of variables
Each link evmn ∈ E v has bandwidth requirement value and constraints in the linear program.
B(evmn ) that indicates the required bandwidth between virtual In this paper, we still adopt this augmentation idea but
node mv and nv . We also denote N vl as the number of virtual applied it in the crossover and mutation operations of the GA.
links. The novel approach not only keeps the integrity of the VNE
3) Augmented Network problems in one stage, but also improves the mapping speed
Inspired by the approach adopted in [5], we also create meeting online dynamic placement constraints.
0 0 0
an augmented substrate graph Gs = (N s , E s ) for the
s s s v v
graph G = (N , E ). For each n ∈ N , a corresponding B. Constraints of Embedding VNR
meta-node µ(nv ) is created. Each candidate substrate node When a VNR arrives, the SN is supposed to decide whether
of nv ∈ N v is connected to the meta-node through a such request is accepted or not based upon current remaining
0
bidirectional meta-link with infinite bandwidth. We set N s = resources (CPU and bandwidth). If SN has enough network
0
N s ∪ {µ(nv )|nv ∈ N v } and E s = E s ∪ {(µ(nv ), ns )|nv ∈ resources, this request will be assigned to specific substrate
N v , ns ∈ N c (nv )}. N c (nv ) denotes the set of all candidate nodes (VNoM) and corresponding substrate paths (VLiM)
nodes for nv . The augmented graph for the example in Fig. 1 is with adequate resource requirements. The assignment is re-
shown in Fig. 2. With the augmented graph, the node mapping leased and the substrate resources are returned after the request
and link mapping phases of the VNE problems can be solved expires.
coordinatedly in one stage. 1) Constraints of VNoM
We define M(nv ) as the substrate node mapping from a
B virtual node nv . First, each virtual node of the same VNR
A must be assigned to a different substrate node as shown in
b d
f
(1). Rn (M(nv )) represents the residual CPU capacity of the
a C substrate node. Therefore, Rn (M(nv )) is less than or equal
g
to the original node capacity C(M(nv ))). The the remaining
Substrate Layer c e CPU capacity of the mapped substrate node should have
enough CPU capacity as described in (2). Eventually, (3)
Meta nodes Meta links Candidate nodes sets ensures that the deviation between the virtual node nv and the
selected substrate node M(nv )) must not exceed the radius D
Fig. 2: The augmented graph of the example in Fig 1.
of the VNR. All of above three expressions must be fulfilled
at the same time to make sure the successful VNoM.
Previous research [5] deploys the augmented graph to solve
the one-stage mapping problem by MILP, which has been
M(nv ) 6= M(mv ) (1)
observed to take too much time. This is because this technique
inflates the substrate graph by introducing meta nodes and C(nv ) 6 Rn (M(nv )) (2)
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 5
operation. Before the children chromosomes are generated Sorting Population Sorting Population
problems, which has a good performance. Second, Meta- Fig. 3: Parallel execution flow chart
heuristic algorithms have great potential for online dynamic
VNE problems since they provide near-optimal solutions as
well as meeting strict time requirements. Besides, the paper function described in (8), their offspring have a better chance
[23] reveals that the GA metaheuristic has better performance to "survive". This process keeps iterating until the number of
than ant colony metaheuristic, which inspires us to develop a predefined iterations have been reached and at the end, the
GA decision-making approach for VNE. Finally, by utilizing fittest individuals are achieved.
the exclusive features among feasible solutions, GA is such
an approach to be naturally implemented in parallel [24]. A. Refine the sets of candidate nodes
The easy-composition peculiarity makes GA applicable in a
As described in Section III, we represent the set of all
distributed and parallel framework, thus further reducing the
candidate nodes for a virtual node as N c (nv ). This set includes
execution time.
all substrate nodes within the distance limitation of the virtual
To tailor GA in VNE problems, we refine the GA repre-
node. Moreover, there are additional rigorous constraints of
sentation in a distributed parallel architecture. As mentioned
mapping a virtual node as shown in (1) and (2). In this step, we
above, SPs cares much on the execution time of online VNE
check all the node constraints with current available resources,
problems. With the decreasing cost of computing devices and
and later process the candidate nodes sets. Its initiative is to
the rapid development of cloud technology, distributed and
avoid infeasible substrate nodes forming the population and
parallel computing has recently emerged as an effective mech-
make the following genetic productions more effective.
anism to tackle large and complex problems. As illustrated
in Fig. 3, our proposed GA can be run in several machines
in a distributed manner. Except the first step refining the B. Parallel slave procedure
set of candidate nodes and the last synchronization step, the After the candidate nodes have been refined by node map-
other procedures can be conducted by slave node machines in ping constraints, the slave nodes begin the GA procedures
parallel. These machines operate GA algorithm independently independently. In EC, the primary step is to design a proper
to achieve feasible VNE embedding solutions that coordinate genetic representation for a specific problem. Consequently,
nodes and links in the same pace. In our framework, only we present the genetic representation and feature the genetic
the original requests with refined constraints and the mapping operations as below.
results are transmitted between the master and slave machines. 1) Genetic representation
There is no extra communication cost during the slave proce- The representation scheme determines the way of repre-
dures. Therefore, the benefits of parallel working scheme is far senting solutions in EC methods. GA terminology is usually
beyond the extra cost between the master and slave machines. analogous with natural genetics, using linear binary encoding
In detail, each slave machine starts with the selection of an and fixed length representations. In this paper, a candidate
initial population. Then it deploys the crossover and mutation solution is called a chromosome which consists of several
operators to reproduce offspring. These produced offspring genes. In NV, a VNR can consist of several virtual links which
are added and sorted for the next generation. If parents have connect virtual nodes together. The number of virtual links are
better fitness values which are calculated through our objective variable, and the path length of each link embedding is also
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 7
inconstant. Therefore, we proposed variable length represen- because if all initial populations are chosen by a deterministic
tations that are more complicated than the most general case. method, all parallel working machines will work with the same
Our proposed GA encoding method denotes each gene as a population, which makes parallel running meaningless.
VNR link mapping solution based on an augmented graph. After a chromosome is formed, we do check the feasibility
That is to say, a gene is started and ended by meta links and of the chromosome as described in Section III-B. If the SN
each chromosome acts as a VNR mapping solution. has enough resources to allocate all genes of the chromosome,
Specifically, the procedure begins with a set of chromo- such chromosome is regarded as a feasible solution. Generally,
somes which are called a population. A chromosome ci only the feasible chromosome is added to the population.
denoted by (11) represents a feasible solution for mapping a
VNR to a SN. Since N vl indicates the number of virtual links
c1 g11 ... g1j ... g1N vl
for a request, there are totally N vl genes in a chromosome. A c2 g21 ... g2j ... g2N vl
gene gij is a mapping solution for the corresponding virtual
.. .. .. .. ..
link. The first subscript i indicates its chromosome whereas
. . . . .
P =
= (14)
ci
gi1 ... gij ... giN vl
the second subscript j denotes the jth virtual link in the
. . .. .. ..
chromosome. Similarly, a node denoted by nijk can represent .. ..
. . .
a substrate/meta node. The first two subscripts indicate its gene cM gM 1 ... gM j ... gM N vl
while the third one denotes its position in the gene. Moreover,
a gene can be denoted by (12) with a variable length dij . Otherwise, if the chromosome candidate does not pass the
The first and the last links in a gene are the meta links that feasibility measurement, we will go back to step 1 to select and
represent the node mapping result while the intermediate links check another candidate chromosome again. This process con-
indicate the link mapping solutions. Therefore the first and the tinues until a feasible chromosome is selected. In some special
last nodes of a gene should be meta nodes. Each gene gij can cases, the randomly initialization process could not find a
be divided into two partial paths as (13): head Hijk and tail feasible chromosome due to the exhausted available resources.
Tijk , where k is the index of node in the gene. Instead of rejecting the VNR directly, we select and stamp
some infeasible chromosomes into the population. Therefore,
ci = {gi1 , gi2 , ..., gij , ..., giN vl } (11) the VNR still have chance to enter crossover and mutation
operations to produce feasible children chromosomes. After
gij = {nij1 , ..., nijk , ..., nijdij } (12) initialization, the population P in Equation (14) basically has
M chromosomes, and each chromosome has N vl virtual links.
gij = Hijk , Tijk , ∀k ∈ (0, dij ) (13) Thus, the size of P is M × N vl .
where, 3) Selection and Crossover
Hijk = nij1 , nij2 , . . . , nijk Selection operation is conducted to choose parent chromo-
Tijk = nij(k+1) , nij(k+2) , . . . , nijdij somes from the initial population for the crossover operation.
In general, one or several pairs of parent chromosomes can be
2) Initial Population chosen from this step. Each selected parent pair then performs
Setup an initial population is the first step in the GA process. crossover operation. In this paper, to improve the degree of
The population P is composed of a set of chromosomes, parallelism, we only choose one-pair parents. We arrange the
where each chromosome is a feasible solution for embedding selection scheme based on random selection with replacement
a VNR. There are two steps to constitute a chromosome. The as paper [19]. The replacement means the parent chromosomes
first step is to randomly choose the substrate nodes for each will be put back into the population after crossover.
virtual node from the set of candidate nodes. After all the The crossover operation based on genes operates each gene
substrate nodes have been selected, all the meta links are set with its corresponding gene in the other parent chromosome.
in a chromosome. The second step is to find a substrate path Let take two selected parent chromosomes are cs and cr
for each gene. We need to come up with some "good" potential as an example. We use c(M +1) and c(M +2) to denote the
substrate paths in the SN for mapping virtual links. Eventually, two new children chromosomes generated from the parent
shortest paths based on hop count factor are certainly more chromosomes. The genes inside parent chromosomes can be
favorable because they tend to consume fewer resources. We denoted as gsj and grj , where j indicates the jth virtual link
identify K shortest paths for each source-destination pair in of a request. Obviously gsj and grj have the same starting
the SN. Existing K shortest path algorithm (e.g. Dijkstra’s and ending meta nodes. Each chromosome should exchange
algorithm) can be reliably deployed to build the path pool. partial genes with its counterpart through a crossover point.
The path pool is only dependent on the SN topology that can For each pair of genes, we first identify a common node. If
be constructed before any online VNR arrives, and it can be there is a node nsju in gsj is equivalent to a node nrjv in
also reusable during the mapping procedure. Therefore, we do grj , where u and v are not the indices of source or destination
not count the time for this process as part of the time for our node, we denote the node as a common node. As a result, there
online embedding procedure. are two scenarios in the crossover operation:
According to the path pool, we finish the second step by a) : There are more than one common node in parental
uniformly selecting a path for each gene. We use uniform genes. Thus, one common node is selected to become the
selection for both steps instead of another specific order crossover point. With the common node known as the demar-
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 8
cation point, we swap the second parts of two corresponding in Fig. 4, after crossover the genes A − B and B − C, the
genes to generate two children genes. Apparently, such chil- children genes could be integrated into children chromosomes
dren generated in this fashion are still valid paths. The children without node mapping disorder.
genes (15) and (16) are defined as below:
Meta links in parent chromosome Cs Meta links in parent chromosome Cr
g(M +1)j = Hsju , Trjv (15)
A-a A-c
g(M +2)j = Hrjv , Tsju (16)
B-d B-e
whose nodes can be divided into two disjoint and independent C-f C-g
sets, and every link connects a node from a set to one in the
other set. Determining whether or not the graph is bipartite is Fig. 5: Node mapping results disordered after crossover
computable in linear time using breadth-first search or depth-
first search. 4) Mutation
Taking Fig. 1 as an example, the VN is a bipartite graph. We Mutation operation aims to expand the solution space and
select the meta links in parent chromosomes as demonstrated broaden the search, thereby avoiding local optima. In this
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 9
paper, the mutation operation is relied on genes as the same the 5) Sorting population
crossover operation. Each gene in the children chromosomes After crossover and mutation operations, two children chro-
c(M +1) and c(M +2) goes through the mutation operation mosomes are created. Then, it is the time to update the
with a fixed probability called mutation rate. The traditional population for the next generation. The new chromosomes are
method is to choose two nodes called mutation points in sorted by their fitness values together with other chromosomes.
a gene and the partial path between these two nodes will Only the best M (population size) chromosomes are saved
be replaced by an alternative path from our path pool [19]. as in the updated population. A new iteration starts with the
In our proposed algorithm, a gene based on the augmented updated population that goes to the selection procedure to
graph represents both virtual node and link mapping results. figure out parents for another crossover and mutation forming
If the node mapping result is mutated, all genes in a children the succeeding generation. This procedure will be ultimately
chromosome have to be updated. The mutation procedure is stopped when the maximum count is reached or there are no
shown in Algorithm 1. different children chromosomes available.
The first step is to check if a meta link is included between
the mutated nodes, which means one of the mutation points is C. Synchronization and Allocation
a meta node. In addition, a meta link represents the mapping
of a virtual node to a substrate node; as a result, we have The synchronization starts when all slave working nodes
to update the node mapping over the whole chromosome if have terminated their GA procedures. The best chromosomes
meta link mutation occurs. To mutate a node mapping of nv , from each slave working nodes are synchronized and could
an alternative nodes ms from our refined candidate node set become the initial population for the next round slave pro-
N c (nv ) is selected. Consequently, ms will replace the current cedure. Finally, the best chromosome after synchronization is
mapping node ns . We evaluate the new node ms and the non- the final VNE solution. The last step is to allocate the VNR,
meta mutated node as the updated mutation points. Finding then the residual resources of the SN get updated.
all other genes including the node µ(nv ) and updating all
corresponding meta links by the new substrate node mapping
result are a must. As we know that the genes are valid paths D. Execution time analysis
in the augmented graph; hence, if we change one node in the In terms of execution time in online VNE problems, SPs
gene, we have to make sure the gene is still a connected path. expects to achieve rapid and efficient online embedding. By
The new node ms is an intermediate node which connects to utilizing the parallel distributed framework, the execution
a meta node and a substrate node. time can be extremely reduced with sufficient computing
Accordingly, we replace the new node ms as the updated resources. In this paper, we define the number of slave working
mutation point for the next step. Then the mutation operation procedures as the parallel level. The parallel level can be
goes to the second step: path mutation. An alternative path tuned according to the trade-off between available computing
chosen from the path pool substitutes current partial route and resources and the expected performance.
connects two updated mutation points. To analyse how much time could be saved in the proposed
distributed parallel architecture, we firstly need to consider the
time spending without a parallel structure. It means all slave
procedures running sequentially. The total time consuming for
Algorithm 1 Mutation Operation
sequential running can be calculated by the sum of each par-
1: procedure M UTATION allel slave procedure. Therefore, the complexity for sequential
2: for a gene in a chromosome do running grows linearly along with the parallel level.
3: Generating mutation points In parallel running paradigm as shown in Fig. 3, there
4: Selecting two nodes in the gene as mutation points are two procedures running sequentially: refining the set of
5: if a selected node is a meta node µ(nv ) candidate nodes (Tcs ), synchronization (Tsyn ), and allocat-
6: goto node mapping mutation ing VNR(Tm ). These procedures, through simulation, only
7: else: accounts for 0.9% of the total parallel execution time on
8: goto path mapping mutation average as depicted in Fig. 10. Therefore, we approximate the
9: procedure NODE MAPPING MUTATION total parallel execution time as the execution time of parallel
10: Selecting an alternative node ms from N c (nv ) running procedures. In terms of parallel running procedures,
11: make M(nv )= ms the execution time is equal to the maximum execution time
12: for all genes contain µ(nv ) do amongst all parallel nodes because the synchronization pro-
13: Replace M(nv ) as the mutation point cedure should wait until the slowest parallel node finishes its
14: goto path mapping mutation task.
15: procedure PATH MAPPING MUTATION Furthermore, we evaluate the upper bound of the mean
16: choosing an alternative path between two mutation value of the total parallel execution time according to Cramer-
points from path pool Chernoff method and Jensen’s inequality. Finally, we found
that the parallel running scheme can improve the execution
time from linear time to logarithmic time. The detailed deriva-
tion can be found in [19].
JOURNAL OF NETWORKING AND NETWORK APPLICATIONS 10
0.85
4.5
GAOne GAOne
0.80 SBGA SBGA
PBGA PBGA
4.0 G-SP
0.75 G-SP
D-ViNE
Average Accept ance Rat io
D-ViNE
0.65
3.0
0.60
0.55
2.5
0.50
0.45 2.0
4 5 6 7 8 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0
Arrival Rat e Arrival Rat e
Fig. 6: Average acceptance ratio over arrival rates Fig. 8: Average path length analysis
300
0.70
GAOne
SBGA
250
0.65 PBGA
G-SP
D-ViNE 200
0.60
R-ViNE
150
0.55
100
0.50
50
0.45
0
0.40 GAOne SBGA PBGA G-SP D-ViNE R-ViNE
4 5 6 7 8
Arrival Rat e
Fig. 7: Average remaining bandwidth over arrival rates Fig. 9: Total execution time over different algorithms
[10] P. Zhang, H. Yao, C. Qiu, and Y. Liu. Virtual network embedding using
node multiple metrics based on simplified electre method. IEEE Access,
6:37314–37327, 2018.
[11] X. Cheng, S. Su, Z.Zhang, H. Wang, F.Yang, Y. Luo, and J. Wang.
Tm 0.0079
Virtual network embedding through topology-aware node ranking. ACM
SIGCOMM Computer Communication Review, 41(2):38–47, 2011.
[12] Haotong Cao, Yongxu Zhu, Longxiang Yang, and Gan Zheng. A efficient
Tsyn 0.1256 mapping algorithm with novel node-ranking approach for embedding
Procedures