Next Article in Journal
Could an Internet-Based Foot–Ankle Therapeutic Exercise Program Modify Clinical Outcomes and Gait Biomechanics in People with Diabetic Neuropathy? A Clinical Proof-of-Concept Study
Next Article in Special Issue
Solving the Static Resource-Allocation Problem in SDM-EONs via a Node-Type ILP Model
Previous Article in Journal
Adaptive Bidirectional Gray-Scale Center of Gravity Extraction Algorithm of Laser Stripes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Resource and Task Scheduling Based Multi-Objective Optimization Model and Algorithms in Elastic Optical Networks

1
School of Science, Xi’an Technological University, Xi’an 710021, China
2
School of Computer Science and Technology, Xidian University, Xi’an 710071, China
*
Authors to whom correspondence should be addressed.
Sensors 2022, 22(24), 9579; https://doi.org/10.3390/s22249579
Submission received: 2 November 2022 / Revised: 2 December 2022 / Accepted: 2 December 2022 / Published: 7 December 2022
(This article belongs to the Special Issue Adaptive Resource Allocation for Internet of Things and Networks)

Abstract

:
The elastic optical network (EON) adopting virtual network function (VNF) is a new type of network, in which the routing, spectrum, and data center allocation are key and challenging problems, and solving these three problems simultaneously can not only improve the network efficiency for network providers, but also let users obtain better service. However, few existing works handle these three problems simultaneously. To tackle the three problems simultaneously, given a set of network function chains (i.e., a set of tasks), we set up a new multi-objective optimization model in which the total length of paths for all tasks is minimized, the totally occupied spectrums are minimized, and the loads on all data centers are most balanced, simultaneously. To solve the model, we design two new evolutionary algorithms. The experiments are conducted on 16 cases of 4 widely used types of networks, and the results indicate that the proposed model and algorithms are effective.

1. Introduction

With the development of internet and network technology, a wavelength division multiplexing (WDM) network can not satisfy the requirement of real world problems due to its spectrum allocation mode of fixed grid and low spectrum utilization. Elastic optical network (EON) is a potential direction for developing the future network due to flexible spectrum allocation and high spectrum utilization. However, the routing and spectrum allocation (RSA) problem in EON is more complex. RSA has become one of the hottest and key problems in EON [1]. It needs to handle multiple issues simultaneously (e.g., select the best route, use the least spectrum resource, make the communication efficient, etc.). Although many researchers have studied these kinds of problems, most of them only can handle one or two issues simultaneously. For example, Ref. [2] proposed an adaptive scheme which only tackles the routing and spectrum allocation problems based on reducing the relative cost of network flow and the probability of communication block. Ref. [3] proposed a RSA strategy which only improves the quality of transmission (QoT) based on both the link state advertisement (LSA) and the risk reduction of quality of transmission (QoT). To improve the communication quality by tackling unbalanced distribution of network flows in EON, Ref. [4] proposed two algorithms based on the OTTM model to improve bandwidth efficiency. To handle routing and spectrum issues, Ref. [5] proposed an adaptive RSA algorithm which tried to select the routing of the lowest relative cost and design the efficient spectrum scheme by estimating both the transient effect of call admission on a given set of routing/spectrum and the relative cost of reaching the forward destination of the calls. To handle the spectrum problem, Ref. [6] set up an integer linear programming model for spectrum allocation problems by analyzing the characteristic of network data flow of three kinds of elastic optical networks, and proposed two meta heuristic algorithms based on particle swarm optimization and tabu search. However, these works did not consider how to tackle more than two issues simultaneously and cannot complete a series of function service chains (FSC).
In addition, with the fast increase of the number of network users, it becomes more difficult to handle multiple issues simultaneously, and it is required to continuously update the network hardware with the increase of tasks and users. However, the hardware update speed can not catch the speed of increase of tasks and users. Therefore, it is impossible to solve this problem by only updating the hardware. The virtual network function (VNF) is to realize the function of special hardware by using software without the need for updating hardware. VNF can increase the number of tasks/users and enhance the network resource utilization without increasing network hardware. Thus, VNF is a potential technique in the environment of fast increase of users/tasks for elastic optical networks. Moreover, the elastic optical network with VNF provides an efficient tool to possibly handle multiple issues simultaneously in the RSA problem and complete a series of function service chains (FSC). Each FSC (can be seen as a task) consists of a sequential functions (e.g., data encryption, data decryption, deep packet inspection, data monitoring, etc.) to be successively completed. However, this flexibility and adaptability will result in more complexity for setting up models and designing algorithms. The existing models and algorithms for elastic optical networks can only handle one or two issues simultaneously, and cannot tackle multiple (more than two) issues simultaneously. In fact, the current models and algorithms for elastic optical networks face many challenges. One of the most difficult challenges is how to tackle the following four problems on EON simultaneously:
(1) How to reasonably make the routing (select reasonable path for each task/FSC) such that data can be quickly transmitted; (2) how to efficiently allocate spectrums such that the spectrum resource is conserved the most; (3) how to make the loads most balanced among the data centers such that the network communication is more efficient and stable; and (4) how to deploy VNF efficiently.

2. Related Works

Currently, there have been some research works in this field. For example, in order to handle two problems (i.e., reduce the cost and improve the quality of service (QoS)), Ref. [7] proposed an integrated algorithm based on VNF migration strategy, which aims at reducing the income loss of network service provider due to both data lost during the transmission and decreasing of quality of service (QoS), but it did not consider how to balance the loads among the data centers. To solve VNF and physical function allocation problems in network and cloud environments, Ref. [8] proposed a heuristic algorithm based on a self-defined greedy strategy to improve the performance and ability of feature decomposition method, but it did not consider the spectrum allocation and load balance. Ref. [9] surveyed the current research progress on VNF allocation problems. Ref. [10] proposed a new virtualization method on network functions, but it did not consider the load balance and routing. In order to balance the load of the data center nodes, Ref. [11] proposed a highly efficient switch migration (HESM) method for controlling load balance via minimizing migration cost, but it did not consider the routing and spectrum allocation. To increase spectral efficiency for the routing and spectrum assignment (RSA) in elastic optical networks (EON), Ref. [12] proposed a novel technique for resource planning and consumption estimation by the optimal utilization of already existing resources, but it did not consider the load balance. In order to enhance the efficiency of routing and resource allocation, Ref. [13] proposed a prediction-based dynamic slicing mechanism (PDSM) for heterogeneous elastic fiber wireless networks, but it also did not consider the load balance. To obtain a better resource allocation scheme, Ref. [14] proposed a novel constrained deep reinforcement learning algorithm for the resource allocation problem. Aiming at improving the efficiency of both wireless resource management and computation resource management within network slices in edge computing systems, Ref. [15] proposed an efficient approximation algorithm based on the game theory, which minimizes the completion time of task execution in the system. These algorithms also did not consider the load balance. Ref. [16] investigated static routing, VNF, and spectrum allocation (RMSTA) of advanced reservation (AR) requests in elastic optical networks. They formulated a two-objective optimization model by minimizing the occupied spectrum and time resources, and proposed a heuristic algorithm based on three sorting strategies. However, this study focused only on sorting requests and neglected the effect of routing and spectrum allocation on the model and algorithm. Furthermore, solving the formulated multi-objective problem by minimizing the weighted sum of two objectives cannot obtain a set of solutions, which failed to satisfy users with different preferences. Ref. [17] investigated the routing and content replication placement in elastic optical networks. They built a mixed integer linear programming model and proposed a heuristic optimization method. However, this study focused on content replication and neglected the impact of routing policies on designing algorithms in large-scale networks and short-term re-optimization scenarios. Ref. [18] proposed an ILP model that takes into account the multicast routing, spectrum, and transceivers for multicast requests, with the goal of minimizing the spectrum consumption and transceivers required for the subtree in an elastic optical data center network (EODCNs). However, this study did not give a method to determine the weight coefficients for each optimization objective in the ILP model and did not consider the load balance. Ref. [19] used a physical slicing technique that supports an end-to-end optical path on a combination of multiple discontinuous spectral slots in order to enhance the spectrum allocation, and proposed a scheme to determine the splitting position and required number of slots for each slice component in an EON network. They built a mixed integer linear programming (MILP) model by making the trade-off among the slicers availability, spectrum utilization, and bandwidth blocking probability. Although the physical slicing technology has improved the spectrum utilization rate in EON, this study did not consider the network load balance. Ref. [20] studied the allocation of data center and spectrum for VNF service chain in inter-datacenter elastic optical networks. To minimize the total network cost and balance the utilization of resources, the authors set up a model with three optimization objectives first, and then transformed it into a single-objective optimization model by using the weight sum method. Finally, they proposed a heuristic algorithm to reduce the congestion in both data centers and links. However, this work ignored the communication quality (e.g., quality of service). To deploy VNF effectively, Ref. [21] proposed a deep reinforced learning based algorithm to minimize the spectrum utilization ratio and the number of deployed VNFs jointly. A trade-off between spectrum utilization ratio and number of deployed VNFs was made by assigning a weight to each of the objectives. However, this method did not carefully take into account both routing and load balance of data centers. Instead, it only used a simple heuristic strategy to make the routing.
By summary, the existing works mainly focus on tackling only one or two issues of the four aforementioned issues. There have been few works tackling the four problems above simultaneously. To overcome this shortcoming, the main contributions in this paper are as follows: (1) We set up a new multi-objective model for solving all these problems simultaneously, i.e., select reasonable routes for each task such that data can be quickly transmitted; efficiently allocate spectrums such that the spectrum resource is conserved the most; make the loads most balanced among the data centers such that the network communication is more efficient and stable; and deploy VNF efficiently. (2) We propose two new evolutionary algorithms for solving this model. (3) We conduct a lot of experiments (including 16 cases of 4 types of widely used networks) to test the effectiveness and efficiency of the proposed model and algorithms.
The rest of the paper is arranged as follows: In Section 3, we first briefly introduce the problem considered in this paper, and then set up a new optimization model for the problem. Finally, we design two new evolutionary algorithms for the model. In Section 4, we conduct the experiments and conduct the analysis of experimental results. In Section 5, we make the discussion on the paper and point out the future work. Conclusions are made in Section 6.

3. Problem Description, Optimization Model, and Algorithm

3.1. Problem Description

A scheduling problem of the elastic optical network using virtual network functions can be described as follows: The elastic optical network using virtual network functions can be represented by an undirected graph  G ( V , E ) , where the set  V = { v 1 , v 2 , , v N v } of the vertexes in the graph represents the set of nodes of the network, the set of nodes of data centers is denoted by V D = { v 1 , v 2 , , v N d } , and the set  E = { L i j | v i , v j V } of edges of graphs represents the set of links of networks. The set of tasks is denoted by FSC = { r 1 , r 2 , , r k , , r N R } , where each task is a function service chain (FSC), and the k-th function service chain (also called the k-th task) is represented as r k = ( s k , d k , b k , t k ) , where s k is source node, d k is the destination node, t k is the function sequence  t k = { t k 1 , t k 2 , , t k i , , t k F k } required to be realized sequentially by task r k , where  t k i { 1 , 2 , , N T } is the index of the i-th virtual network function to be realized by the k-th task r k (for convenience, the virtual network function is briefly called the function in the following). t k i are different each other in t k . F k is the number of the functions contained in the k-th FSC. N T is the total number of all different functions in all N R tasks. b k is the number of slots to be occupied by the k-th task r k . N F is the maximal number of slots which are available in the path.
The problem considered in this paper is to tackle the following issues: (1) how to select a proper path from the source node to the destination node for each task such that the total length of all paths is minimized; (2) how to assign the slots in the selected path for each task such that the slot assumption is minimized; (3) how to make the loads most balanced among the data centers such that the network communication is more efficient and stable; and (4) how to deploy VNF efficiently.

3.2. A Multi-Objective Optimization Model

3.2.1. Determining Variables for the Model

A. Path variables:
Let P k = ( s k , x k 1 , x k 2 , , x k l k , d k ) denote the path to be chosen for the task r k , where x k i { 1 , 2 , , N v } , x k 1 is the first node of the path to reach from the start node s k , and x k i is the i-th node of the path to reach from the start node s k for i = 1 , 2 , , l k . Finally, node x k l k directly reaches the destination node d k . That is, path P k is as follows:
s k x k 1 x k 2 x k l k d k
and has to pass through at lest one data center node. For example, path P k = ( 5 , 3 , 6 , 1 , 8 , 7 , 2 ) for task r k means that the source node is node 5; then, the first node to reach from source node 5 is node 3, and the second node to reach from source node 5 is node 6. Similarly, the later nodes in the path are sequentially node 1, node 8, node 7, and finally to the destination node 2.
Let x k = ( x k 1 , x k 2 , , x k l k ) denote path variables, and let V v i denote the set of nodes connected to node v i in the network. Then, x k 1 V s k , x k 2 V x k 1 , x k 3 V x k 2 , , x k l k V x k l k 1 , d k V x k l k , and D c { s k , x k 1 , x k 2 , , x k l k , d k } , where D c is the set of nodes of data centers.
In the following, we shall design the following Algorithm 1 to look for such a path
P k = ( s k , x k 1 , , x k l k , d k )
in which at least one node is a data center node, and to determine the path variables.    
Algorithm 1 Path search algorithm
Step 1: Select x k 1 . For s k , if V s k contains any data center node, randomly select one data center node as x k 1 ; otherwise, randomly select a node in V s k as x k 1 , and let i = 1
Step 2: Select x k i + 1 in V k i / { s k , x k 1 , , x k i } according to the following two cases, where V k i represents V x k i for notation convenience:
Case I: { s k , x k 1 , , x k i } contains a data center node. If d k V k i , select d k as x k i + 1 ; otherwise, randomly select a node in V k i as x k i + 1 .
Case II: { s k , x k 1 , , x k i } does not contain any data center node. If V k i contains any data center node, randomly select one data center node in V k i as x k i + 1 , let i = i + 1 , go to step 2; otherwise, randomly select one node in V k i as x k i + 1 , go to step 3. 
Step 3: If x k i + 1 d k , let i = i + 1 , go to step 2 (the current path neither contains any data center node nor reaches d k ), otherwise, go to step 4 (the current path does not contain any data center node but reaches d k . This is not a feasible path, and we have to select another path). 
Step 4: Re-select the nodes after node x k i until selecting node d k by using the previous steps. If the new path is still an infeasible path (containing no data center node), re-select nodes after x k i 1 until selecting d k . Repeat this process until one feasible path is found.
B. Slot variables:
Let y k = ( y k 1 , y k 2 , , y k N F ) denote the slot assignment on path P k for task r k , where each y k i is a boolean variable. y k i = 1 represents that task r k uses the i-th slot of each edge of path P k , and y k i = 0 means that task r k does not use the i-th slot on path P k . Let U k represent the set of tasks whose paths share a common link with path y k , i.e.,
U k = { v | P k P v , 1 v N R } .
y k must satisfy the following conditions: (1) The number of slots used in slot assignment y k should be equal to the number of slots required by task r k ; (2) For the same slot, it should be used by at most one task. That is,
i = 1 N F y k i = b k , k = 1 , 2 , , N R v U k y v i 1 , i = 1 , 2 , , N F
C. Function variables:
Suppose the data center nodes passed successively through by P k are:
V k 1 , V k 2 , , V k i k
The numbers of functions in r k assigned to data center nodes V k 1 , V k 2 , , V k i k on path P k are
z k = ( z k 1 , z k 2 , , z k i k ) ,
respectively, where z k j is the number of functions assigned to data center V k j to be realized, and the sequence of these functions assigned to the data center nodes is the same as that in r k . We call z k the function variables, which should satisfy the following conditions: The total number of assigned functions should be equal to the number of functions required to be realized in r k , i.e.,
j = 1 i k z k j = F k , k = 1 , , N R
where F k is the number of functions required to be realized by r k .

3.2.2. Objective Function Determination

A. Minimize the total length of all paths:
Note that path P k corresponding to task r k has ( l k + 1 ) edges, and its length is ( l k + 1 ) . Then, the total length of all paths is k = 1 N R ( l k + 1 ) .
Thus, the first objective is to minimize the following total length:
f 1 ( x 1 , , x N R ) = k = 1 N R ( l k + 1 )
Denote x = ( x 1 , , x N R ) . Then, we have f 1 ( x ) = k = 1 N R ( l k + 1 ) .
B. Minimize the total number of slots used:
The number of slots in each link of path P k for task r k is b k , and the number of links of path P k is l k (excluding the shared common links and the shared links are not computed repeatedly). Thus, the total number of slots used by all tasks is
f 2 ( x , y 1 , y 2 , , y N R ) = k = 1 N R b k l k
Denote y = ( y 1 , , y N R ) . Then, the second objective is to minimize the following function f 2 ( x , y ) = k = 1 N R b k l k .
C. Optimize the balance of loads on all data center nodes:
To optimize the balance of loads on all data center nodes, the number of functions of all N R tasks should be assigned to these data center nodes as equally as possible. The index set of the data center nodes passed through by path P k is denoted by { k 1 , k 2 , , k i k } . Let
D c ˜ = k = 1 N R { k 1 , k 2 , , k i k }
denote the index set of data center nodes used by all tasks.
For c D c ˜ , the number of functions handled by data center node c is
q c ( z 1 , , z N R ) = k D c ˜ z k c
The standard deviation of the numbers of functions handled by all data center nodes is
f 3 ( x , y , z 1 , z 2 , , z N R ) = 1 | D c ˜ | c D c ˜ [ q c ( z 1 , , z N R ) N T | D c ˜ | ] 2
Denote z = ( z 1 , , z N R ) . Then, optimizing the balance of load of data centers is equal to minimizing the following objective:
f 3 ( x , y , z ) = 1 | D c ˜ | c D c ˜ [ q c ( z ) N T | D c ˜ | ] 2
Now our goal is to minimize the above three objectives simultaneously, i.e.,
min { f 1 ( x ) , f 2 ( x , y ) , f 3 ( x , y , z ) }

3.2.3. Constraints

A. The path variable constraints:
Path P k selected for task r k should pass through at least one data center node, i.e.,
D c { s k , x k 1 , x k 2 , , x k l k , d k } , k = 1 , , N R
B. Slot constraints:
i = 1 N F y k i = b k , k = 1 , , N R
v U k y v i 1 , i = 1 , 2 , , N F
C. Function assignment constraints:
j = 1 i k z k j = F k , k = 1 , , N R

3.2.4. Multi-Objective Optimization Model

By summary, we can set up the following multi-objective optimization model:
min { f 1 ( x ) , f 2 ( x , y ) , f 3 ( x , y , z ) } s . t . ( 1 ) D c { s k , x k 1 , x k 2 , , x k l k , d k } , k = 1 , , N R ( 2 ) i = 1 N F y k i = b k , k = 1 , , N R ( 3 ) v U k y v i 1 , i = 1 , 2 , , N F ( 4 ) j = 1 i k z k j = F k , k = 1 , , N R

3.3. Two Evolutionary Algorithms for Solving the Model

Note that the above model is a nonlinear integer multi-objective optimization model. There is no existing algorithm for this model. We shall design two evolutionary algorithms to solve this model in this section.
The framework of the first algorithm is as follows: First, design a strategy to generate the initial population. Second, design a mutation operator. Finally, evolve the population iteratively and obtain a set of the approximate solutions. In the following, we shall introduce each part of the algorithm, respectively.

3.3.1. A Strategy for Generating the Initial Population

Given the population size N p o p , any individual ( x , y , z ) in the initial population P O P 0 is generated by the following Algorithm 2:
Algorithm 2 A strategy for generating the initial population
Step 1: Generate each x by using Algorithm 1. 
Step 2: Generate each y = ( y 1 , y 2 , , y N R ) T as follows: denote
y = y 1 y 2 y N R = y 1 1 y 1 2 y 1 N F y 2 1 y 2 2 y 2 N F y N R 1 y N R 2 y N R N F
Set initial matrix y = 0 . Let y w 1 , y w 2 , y w N R be a random sequence of y 1 , y 2 , , y N R and y w denote the matrix whose rows are y w 1 , y w 2 , y w N R , respectively. Set y w 1 1 = y w 1 2 = = y w 1 b w 1 = 1 , and y w 1 j = 0 for j 1 , 2 , , b w 1 . If path P w 2 for task r w 2 shares a link with path P w 1 for task r w 1 , set y w 2 j = 1 for b w 1 + 1 j b w 1 + b w 2 and y w 2 j = 0 for other j. Otherwise, set y w 2 1 = y w 2 2 = = y w 2 b w 2 = 1 , and y w 2 j = 0 for j 1 , 2 , , b w 2 . Generally, for each k { 2 , 3 , , N R } , if path P w k for task r w k does not share a link with any previous path P w j for 1 j k 1 , set y w k 1 = y w k 2 = = y w k b w k = 1 , and y w k j = 0 for j 1 , 2 , , b w k . Otherwise, let U w k denote the set of tasks whose paths share a link with path P w k for task w k . Compute
y ¯ w k = v U w k y v
Let
k 0 = min { k 0 | i = k 0 k 0 + b w k 1 y ¯ w k i = 0 f o r k 0 { 1 , 2 , , N F b w k } }
Assign the slots k 0 , k 0 + 1 , , k 0 + b w k 1 to path P w k for task r w k , i.e, let y w k k 0 = y w k k 0 + 1 = = y k 0 + b w k 1 = 1 , and y w k j = 0 for j k 0 , k 0 + 1 , , k 0 + b w k 1 .
Then, y satisfies the constraints:
i = 1 N F y k i = b k , k = 1 , , N R
v U k y v i 1 , i = 1 , 2 , , N F
Step 3: Suppose the data center nodes passed successively through by path P k are:
V k 1 , V k 2 , , V k i k
The numbers of functions in task r k assigned to data center nodes V k 1 , V k 2 , , V k i k are denoted by z k 1 , z k 2 , , z k i k , respectively, where z k j is the number of functions assigned to data center V k j for j = 1 , 2 , , i k . Denote
z k = ( z k 1 , z k 2 , , z k i k )
For each task r k , we can generate z k by randomly taking i k non-negative integers z k 1 , z k 2 , , z k i k [ 0 , F k ] such that j = 1 i k z k j = F k , k = 1 , , N R .
Step 4: Repeat Step 1 to Step 3 for N p o p times to obtain P O P 0 .

3.3.2. Mutation Operator

For any individual ( x , y , z ) in the current population P O P t , the mutation operator for it is as follows:
(1) Scheme of mutation for x:
1. For each x k , generate x ¯ k 1 . For s k , randomly select a node in V s k / x k 1 as x ¯ k 1 .
2. Generate x ¯ k i + 1 in V k i / { s k , x ¯ k 1 , , x ¯ k i } according to the following two cases:
Case I: { s k , x ¯ k 1 , , x ¯ k i } contains a data center node. If
{ { x k 1 , x k 2 , , d k } { x ¯ k 1 , , x ¯ k i } } V k i ,
select one node
x k i { { x k 1 , x k 2 , , d k } { x ¯ k 1 , , x ¯ k i } } V k i ,
and let x ¯ k = ( s k , x ¯ k 1 , , x ¯ k i , x k i , , d k ) . We obtain the mutation offspring x ¯ k of x k ; otherwise, randomly select a node in V k i as x ¯ k i + 1 . Go to step 3.
Case II: { s k , x ¯ k 1 , , x ¯ k i } does not contain any data center node. If V k i contains any data center node, randomly select one data center node in V k i as x ¯ k i + 1 . Let i = i + 1 , go to step 2; otherwise, randomly select one node in V k i as x ¯ k i + 1 , and go to step 3.
3. If x ¯ k i + 1 { x k 1 , x k 2 , , d k } , let i = i + 1 , and go to step 2; otherwise, go to step 4.
4. Select
i { v | x k v = x ¯ k i + 1 , x k v { x k 1 , x k 2 , , d k } } ,
and let x ¯ k = ( s k , x ¯ k 1 , , x ¯ k i + 1 , x k i + 1 , , d k ) . If x ¯ k does not contain any data center node, go to step 5; otherwise, we obtain the mutation offspring x ¯ k of x k .
5. Re-select the nodes after node x ¯ k i until selecting node d k by using the previous steps. If the new path is still an infeasible path (containing no data center node), re-select nodes after x k i 1 until selecting d k . Repeat this process until one feasible path is found.
(2) Scheme of mutation for y: Randomly change two elements of y w 1 , y w 2 , y w N R , and obtain the mutation offspring y ¯ of y by step 2 of Algorithm 2.
(3) Scheme of mutation for z: Generate the mutation offspring z ¯ of z by step 3 of Algorithm 2.
Note that the offspring ( x ¯ , y ¯ , z ¯ ) of ( x , y , z ) generated by the above schemes satisfies all constraints of the model. Let O t denote the set of offspring of P O P t .

3.3.3. Selection Operator

We select the next generation population P O P t + 1 among P O P t O t by using the selection operator in NSGA-II [22].

3.3.4. The First Evolutionary Algorithm for the Model

The first proposed algorithm is the following Algorithm 3:
Algorithm 3 An evolutionary algorithm for the model
Step 1: Given the maximum generation number N g e n and population size N p o p
Step 2: Generate initial population P O P 0 by using Algorithm 2, and set t = 0
Step 3: Mutation. For each individual ( x , y , z ) in the current population P O P t , execute the mutation operator on it to generate its offspring ( x ¯ , y ¯ , z ¯ ) . All offspring ( x ¯ , y ¯ , z ¯ ) form an offspring population O t
Step 4: Selection. Select the best N p o p individuals among P O P t O t to form the next generation population P O P t + 1 by selection operator. Set t = t + 1
Step 5: If t N g e n , the non-dominated set of P O P t is the approximate Pareto optimal solution set. Stop. Otherwise, go to Step 2.

3.3.5. The Second Evolutionary Algorithm for the Model

The second proposed algorithm is the following Algorithm 4:
Algorithm 4 Another evolutionary algorithm for the model
The steps of Algorithm 4 are the same as those of Algorithm 3 except for the replacement of Algorithm 1 in Algorithm 3 by the following Algorithm 5 to generate path variable  
The proposed algorithm for generating path variavles in Algorithm 4 is as follows:
Algorithm 5 Strategy for generating path variable x
Step 1: For each task r k , randomly select i k data center nodes, and their random sequence is denoted by D k = k 1 , k 2 , , k i k .  
Step 2: Use the Dijkstra algorithm [23] to obtain the shortest path from s k to k 1 , recorded as P a t h 1 : s k k 1 .  
Step 3: Use the Dijkstra algorithm to obtain the shortest path from k i k to d k , recorded as P a t h 3 : k i k d k .  
Step 4: Use the Dijkstra algorithm to obtain the shortest path between each pair of two adjacent data centers k i and k i + 1 for i = 1 , 2 , , i k 1 . This path is denoted by p ( k i , k i + 1 ) for i = 1 , 2 , , i k 1 . Connect these paths successively to obtain a path through data center node sequence D k = k 1 , k 2 , , k i k :
P a t h 2 = { p ( k 1 , k 2 ) p ( k 2 , k 3 ) , , p ( k i , k i + 1 ) , , p ( k i k 1 , k i k ) }
Step 5: Connect the tail node of P a t h 1 with the head node of P a t h 2 , connect the tail node of P a t h 2 with the head node of P a t h 3 , and then obtain the path { P a t h 1 P a t h 2 P a t h 3 } of task r k . Denote this path by ( s k , x k 1 , x k 2 , , x k n k , d k ) , and briefly denoted as x k = ( x k 1 , x k 2 , , x k n k ) T by removing start node s k and end node d k . Let x = ( x 1 , x 2 , , x N R ) T denote the matrix whose rows are all paths for all tasks.

4. Experiments and Results

4.1. Experimental Environment and Parameters

All experiments are conducted on Windows 11 with 16 GB memory, R7-5800H 8 core CPU, 3.2 GHz by using Python 3.7. The experimental tool is PyCharm IDE. Four types of networks are used in the experiments: USANET [10], NSFNET [24], CHNNET [25], and ARPANET [25]. For the details of network topology and other information, please refer to [10,24,25]. The parameters are given in Table 1.
The experiments are divided into four groups. Each group is for one type network and contains four cases according to different numbers of tasks denoted by N R and the number of VNF denoted by N T :
Case 1. The number of tasks N R = 50 and the number of VNF N T = 100 .
Case 2. N R = 100 and N T = 100 .
Case 3. N R = 150 and N T = 100 .
Case 4. N R = 200 and N T = 100 .
To test the stability of the model and algorithms, for each case, the experiments are conducted 10 times, and the mean results are recorded and compared. In the experiments, the population size N p o p = 50 and the maximum generations N g e n = 100 .

4.2. Comparison of Algorithms 3 and 4

Because the proposed model is a novel one, there is no existing algorithms for the proposed model, we cannot find any suitable existing algorithm as the compared algorithm. We compare the proposed Algorithms 3 and 4 in the experiments.

4.3. Performance Measures and Results

In the experiments, we adopt two performance measures: U-measure and C-measure.
1) U-measure [26]:
This metric represents the uniformity and wideness of the Pareto front, which is usually a surface in three-dimensional space. This measure can be calculated by the following three steps:
(1) Determine the boundary of Pareto front.
(2) Determine the nearest neighbors of each Pareto solution in objective space.
(3) Calculate the standard deviation of the distances among the nearest neighbors.
Note that the smaller the U-measure, the better the solution set. For the detail of U-measure, please refer to reference [26].
2) C-measure [27]:
This metric compares the convergent quality of two solution sets. It represents the percentage of solutions in solution set B dominated by solutions in solution set A. Its definition is as follows:
C ( A , B ) = | { u B | v A : v d o m i n a t e s u } | | B |
where the numerator represents the number of solutions in B dominated by at least one solution in A, and the denominator is the number of solutions in B.
C ( A , B ) = 1 means all solutions in B are dominated by at least one solution in A and C ( A , B ) = 0 means no solution in B is dominated by solutions in A. If C ( A , B ) > C ( B , A ) , then the solution set A has better convergence than solution set B.
In the C-measure, for notation convenience, we use A to represent the solution set obtained by Algorithm 3 and B the solution set obtained by Algorithm 4, respectively. In addition, use C A B and C B A to represent C ( A , B ) and C ( B , A ) , respectively, where
C A B = C ( A , B ) = | { u B | v A : v d o m i n a t e s u } | | B |
C B A = C ( B , A ) = | { u A | v B : v d o m i n a t e s u } | | A |
For each case of one type network, the mean value and standard deviation of each metric in 10 independent runs are recorded. These results are given in Table 2 and Table 3, where each table records the results for one measure on 16 cases of 4 types of networks.
For U-measure, it can be seen from Table 2 that Algorithm 3 generally performs better than Algorithm 4. Among 16 cases of 4 types of networks, Algorithm 3 has the better performance than Algorithm 4 on 12 cases in which Algorithm 3 obtains the smaller values of U-measure. For three cases ( N T , N R ) = ( 100 , 100 ) , ( N T , N R ) = ( 100 , 150 ) and ( N T , N R ) = ( 100 , 200 ) of NSFNET, the values of U-measure of Algorithm 3 are 1.0093, 1.0118, and 1.0065, respectively, which are smaller than the values 1.0119, 1.011, and 1.0079 of U-measure of Algorithm 4. For all four cases of USANET, the values of U-measure of Algorithm 3 are 1.0168, 1.0105, 1.0042, and 1.0047, respectively, while the values of U-measure of Algorithm 4 are 1.0181, 1.0119, 1.0077, and 1.0073, respectively. Thus, the values of U-measure of Algorithm 3 are smaller than those of Algorithm 4 for all cases of USANET. Similarly, it can be seen from Table 2 that, for all four cases of ARPANET, the values of U-measure of Algorithm 3 are smaller than those of Algorithm 4, which indicates that Algorithm 3 performs better than Algorithm 4 on U-measure. Only for four cases (one case of NSFNET and three cases of CHNNET) does Algorithm 4 obtain smaller values of U-measure. For the case ( N T , N R ) = ( 100 , 50 ) of NSFNET, the value of U-measure of Algorithm 3 is 1.0164 which is larger than that (i.e., 1.0147) of Algorithm 4. For three cases of CHNNET with a smaller number of tasks, the values of U-measure of Algorithm 3 are a little bit larger than the corresponding values of U-measure of Algorithm 4, while for the larger number of tasks (i.e., N R = 200 ), Algorithm 3 outperforms Algorithm 4. Anyhow, both algorithms obtain relatively small values of U-measure on all 16 cases of all types of networks. This illustrates that both algorithms perform well. In addition, note that the standard deviation values for two algorithms are relatively small. This indicates that both algorithms are robust and perform stably.
For C-measure, it can be seen from Table 3 that Algorithm 3 performs completely better than Algorithm 4 with respect to the convergent ability. For all four cases of NSFNET, about 77.27 % , 47.25 % , 52.6 % , and 47.05 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, respectively, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4. For USANET, for case ( N T , N R ) = ( 100 , 50 ) , 70.39 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 100 ) , 69.52 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 4.88 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 150 ) , 42.16 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 9.95 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 200 ) , 53.64 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 0.83 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For ARPANET, for case ( N T , N R ) = ( 100 , 50 ) , 86.9 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 2.87 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 100 ) , 68.71 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 5.0 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 150 ) , 58.37 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 1.33 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 200 ) , 44.62 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while 2.14 % solutions obtained by Algorithm 3 are dominated by solutions obtained by Algorithm 4. For CHNNET, for case ( N T , N R ) = ( 100 , 50 ) , 93.32 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 100 ) , 85.53 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 150 ) , 95.36 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4. For case ( N T , N R ) = ( 100 , 200 ) , 97.78 % solutions obtained by Algorithm 4 are dominated by solutions obtained by Algorithm 3, while no solution obtained by Algorithm 3 is dominated by solutions obtained by Algorithm 4.
By summary, Algorithm 3 performs better than Algorithm 4 in most cases for all types of networks by using two performance metrics. However, both algorithms can obtain well distributed solution sets.

5. Discussion and Future Works

Task scheduling and resource allocation in an elastic optical network is an important and challenging problem. Different providers and customers may have different requirements. With the increase of numbers of tasks and VNF, the problems will become more and more difficult. This is very challenging to design efficient algorithm for the model. However, the proposed multi-objective optimization model in this paper can well satisfy these multiple requirements of both providers and customers as most as possible, and the designed algorithms can solve the model well. In addition, it seems that the proposed algorithm is still effective and efficient with the increase of the numbers of tasks and VNF. However, the limitation of this work is mainly that, when the links of networks are sparse and there are too many tasks, the performance of the proposed model and algorithm will decrease. In addition, the task scheduling and resource allocation in the elastic optical network involves too many issues except for routing, spectrum allocation, VNF deployment, and load balance of data centers. In the future work, it is necessary to study how to set up a new model with more objectives (many objective optimization model) to tackle more issues and satisfy more requirements for service providers and customers in addition to how to design more efficient algorithms for the multi-objective optimization model.

6. Conclusions

In this paper, we set up a new multi-objective optimization model for task scheduling and resource allocation problem in elastic optical networks. By using this model, both the total length of paths for all tasks and the totally occupied spectrums can be minimized, which illustrates that the lowest amount of resources are consumed. In addition, the loads on all data centers can be mostly balanced, which illustrates that the efficiency of the network is the highest. Thus, the new model is effective and efficient. To solve the model, we design two new effective evolutionary algorithms. The experiments conducted on up to 16 cases of 4 types of widely used networks have indicated that the proposed algorithms are effective.

Author Contributions

Conceptualization, Y.W. and X.G.; methodology, Y.W. and X.G.; software, Q.Y.; validation, Q.Y.; formal analysis, Y.W. and X.G.; data curation, Q.Y.; writing—original draft preparation, Y.W.; writing—review and editing, X.G. and Q.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by NSFC of Grant Nos. 62102304 and 62272367.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

For the network framework data, please refer to [18,19,20].

Acknowledgments

This research was supported by the National Natural Science Foundation of China with Grant Nos. 62102304 and 62272367.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Abkenar, F.S.; Rahbar, A.G. Study and analysis of routing and spectrum allocation (RSA) and routing, modulation and spectrum allocation (RMSA) algorithms in elastic optical networks (EONs). Opt. Switch. Netw. 2017, 23, 5–39. [Google Scholar] [CrossRef]
  2. Alyatama, A. Multi-path routing based on relative cost in elastic optical networks. In Proceedings of the 2020 7th International Conference on Electrical and Electronics Engineering (ICEEE), Virtual Conference, 14–16 April 2020. [Google Scholar]
  3. Zhou, Y.; Sun, Q.; Lin, S. Link state aware dynamic routing and spectrum allocation strategy in elastic optical networks. IEEE Access 2020, 8, 45071–45083. [Google Scholar] [CrossRef]
  4. Yan, B.; Zhao, Y.; Yu, X.; Wang, W.; Wu, Y.; Wang, Y.; Zhang, J. Tidal-traffic-aware routing and spectrum allocation in elastic optical networks. J. Opt. Commun. Netw. 2018, 10, 832–842. [Google Scholar] [CrossRef]
  5. Al-Yatama, A. Relative cost routing and spectrum allocation in elastic optical networks. J. Opt. Commun. Netw. 2020, 12, 38–49. [Google Scholar] [CrossRef]
  6. Gocień, R. Two metaheuristics for routing and spectrum allocation in cloud-ready survivable elastic optical networks. Swarm Evol. Comput. 2019, 44, 388–403. [Google Scholar] [CrossRef]
  7. Eramo, V.; Miucci, E.; Ammar, M.; Lavacca, F.G. An approach for service function chain routing and virtual function network instance migration in network function virtualization architectures. IEEE/ACM Trans. Netw. 2017, 25, 2008–2025. [Google Scholar] [CrossRef]
  8. Mechtri, M.; Ghribi, C.; Zeghlache, D. A scalable algorithm for the placement of service function chains. IEEE Trans. Netw. Serv. Manag. 2016, 13, 533–546. [Google Scholar] [CrossRef] [Green Version]
  9. Herrera, J.G.; Botero, J.F. Resource allocation in NFV: A comprehensive survey. IEEE Trans. Netw. Serv. Manag. 2016, 13, 518–532. [Google Scholar] [CrossRef]
  10. Assis, K.D.R.; Santos, A.F.; Almeida, R.C.; Reed, M.J.; Jaumard, B.; Simeonidou, D. Virtualization of elastic optical networks and regenerators with traffic grooming. J. Opt. Commun. Netw. 2020, 12, 428–442. [Google Scholar] [CrossRef]
  11. Liu, Y.; Gu, H.; Yan, F.; Calabretta, N. Highly-efficient switch migration for controller load balancing in elastic optical inter-datacenter networks. IEEE J. Sel. Areas Commun. 2021, 39, 2748–2761. [Google Scholar] [CrossRef]
  12. Mesquita, L.; Assis, K.; Pinho, L.; Almeida, R.; Filho, E.; Alencar, M. Resource planning on elastic optical networks using traffic matrix prediction. Int. J. Electron. Commun. 2021, 134, 153615. [Google Scholar] [CrossRef]
  13. Yin, S.; Zhang, Z.; Yang, C.; Chu, Y.; Huang, S. Prediction-based end-to-end dynamic network slicing in hybrid elastic fiber-wireless networks. J. Light. Technol. 2021, 39, 1889–1899. [Google Scholar] [CrossRef]
  14. Xu, Y.; Zhao, Z.; Cheng, P.; Chen, Z.; Ding, M.; Vucetic, B.; Li, Y. Constrained reinforcement learning for resource allocation in network slicing. IEEE Commun. Lett. 2021, 25, 1554–1558. [Google Scholar] [CrossRef]
  15. Josilo, S.; Dsn, G. Joint wireless and edge computing resource management with dynamic network slice selection. IEEE-ACM Trans. Netw. 2022, 30, 1865–1878. [Google Scholar] [CrossRef]
  16. Zhao, Y.; Zhang, Q.; Xin, X.; Li, Y.; Gao, R.; Tao, Y.; Tian, Q.; Tian, F.; Chen, D.; Cao, G. Static resource allocation of advanced reservation requests in elastic optical networks. Appl. Opt. 2020, 59, 1420–1429. [Google Scholar] [CrossRef] [PubMed]
  17. Miyamura, T.; Misawa, A. Improving Efficiency of Network Resources in Elastic Optical Transport Network by Using In-Network Cache Functions. Opt. Switch. Netw. 2021, 42, 100629. [Google Scholar] [CrossRef]
  18. Tang, Y.; Li, X.; Gao, T.; Zhang, L.; Huang, S. Cost-adaptive multi-class multicast service aggregation based on distributed sub-trees in elastic optical data center networks. Opt. Fiber Technol. 2021, 66, 102661. [Google Scholar] [CrossRef]
  19. Kitsuwan, N.; Pavarangkoon, P.; Nag, A. Elastic optical network with spectrum slicing for fragmented bandwidth allocation. Opt. Switch. Netw. 2020, 38, 100583. [Google Scholar] [CrossRef]
  20. Khatiri, A.; Mirjalily, G.; Luo, Z.Q. Balanced resource allocation for VNF service chain provisioning in inter-datacenter elastic optical networks. Comput. Netw. 2022, 203, 108717. [Google Scholar] [CrossRef]
  21. Zhu, M.; Chen, Q.; Gu, J.; Gu, P. Deep Reinforcement Learning for Provisioning Virtualized Network Function in Inter-Datacenter Elastic Optical Networks. IEEE Trans. Netw. Serv. Manag. 2022, 19, 3341–3351. [Google Scholar] [CrossRef]
  22. Kalyanmoy, D.; Pratap, A.; Agrawal, S. A fast and elitist multi-objective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 2002, 6, 182–197. [Google Scholar]
  23. Hershberger, J. Finding the k shortest simple paths: A new algorithm and its implementation. ACM Trans. Algorithms 2007, 3, 1–5. [Google Scholar] [CrossRef]
  24. Gong, L.; Zhou, X.; Liu, X.; Zhao, W.; Lu, W.; Zhu, Z. Efficient resource allocation for all-optical multicasting over spectrum-sliced elastic optical networks. IEEE/OSA J. Opt. Commun. Netw. 2013, 5, 836–847. [Google Scholar] [CrossRef]
  25. Xuan, H.; Wang, Y.; Xu, Z.; Hao, S.; Wang, X. New bi-level programming model for routing and spectrum assignmentin elastic optical network. Opt. Quantum Electron. 2017, 49, 186. [Google Scholar] [CrossRef]
  26. Leung, Y.W.; Wang, Y. U-measure: A quality measure for multiobjective programming. IEEE Trans. Syst. Man Cybern 2003, 33, 337–343. [Google Scholar] [CrossRef] [Green Version]
  27. Zitzler, E.; Deb, K.; Thiele, L. Comparison of multiobjective evolutionary algorithms: Empirical results. Evol. Comput. 2000, 8, 173–195. [Google Scholar] [CrossRef]
Table 1. Parameters for four types of networks.
Table 1. Parameters for four types of networks.
Network TopologyNSFNETCHNNETARPANETUSANET
Number of Nodes14152024
Number of links21273243
Number of spectrum358358358358
Table 2. Comparison of U-measure.
Table 2. Comparison of U-measure.
Networks( N T , N R )Algorithm 3Algorithm 4
U mean U std U mean U std
NSFNET(100,50)1.01640.00731.01470.0078
(100,100)1.00930.00301.01190.0040
(100,150)1.01180.00601.01100.0029
(100,200)1.00650.00321.00790.0029
USANET(100,50)1.01680.00721.01810.0077
(100,100)1.01050.00891.01190.0045
(100,150)1.00420.00111.00770.0042
(100,200)1.00470.00241.00730.0029
ARPANET(100,50)1.01340.00651.01580.0064
(100,100)1.00780.00561.01020.0052
(100,150)1.00690.00351.00950.0043
(100,200)1.00590.00311.00720.0018
CHNNET(100,50)1.01910.00851.01510.0055
(100,100)1.01100.00481.00910.0042
(100,150)1.00960.00461.00800.0031
(100,200)1.00590.00221.00680.0035
Table 3. Comparison of C-measure.
Table 3. Comparison of C-measure.
Networks( N T , N R ) C AB C BA
C mean C std C mean C std
NSFNET(100,50)0.77270.144900
(100,100)0.47250.176000
(100,150)0.52600.167100
(100,200)0.47050.113100
USANET(100,50)0.70390.241000
(100,100)0.69520.12790.04880.0804
(100,150)0.42160.20870.09950.0832
(100,200)0.53640.14520.008300264
ARPANET(100,50)0.86900.08720.02870.0607
(100,100)0.68710.13560.05000.1208
(100,150)0.58370.15440.01330.0422
(100,200)0.44620.14840.02140.0678
CHNNET(100,50)0.93320.073700
(100,100)0.85530.113500
(100,150)0.95360.081300
(100,200)0.97780.070300
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wang, Y.; Yang, Q.; Guo, X. A Resource and Task Scheduling Based Multi-Objective Optimization Model and Algorithms in Elastic Optical Networks. Sensors 2022, 22, 9579. https://doi.org/10.3390/s22249579

AMA Style

Wang Y, Yang Q, Guo X. A Resource and Task Scheduling Based Multi-Objective Optimization Model and Algorithms in Elastic Optical Networks. Sensors. 2022; 22(24):9579. https://doi.org/10.3390/s22249579

Chicago/Turabian Style

Wang, Yuping, Qingdong Yang, and Xiaofang Guo. 2022. "A Resource and Task Scheduling Based Multi-Objective Optimization Model and Algorithms in Elastic Optical Networks" Sensors 22, no. 24: 9579. https://doi.org/10.3390/s22249579

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop