Determining the Optimum Number of Paths for Realization of Multi-path Routing in MPLS-TE Networks

Multi-Protocol Label Switching for Traffic Engineering (MPLS-TE) technology is an intelligent and advanced tool for handling traffic through the core networks and implementing new services based on virtual transport. Since MPLS-TE combines channel and network layer mechanisms, network administrators can optimally integrate and allocate the traffic loads while maintaining the speed of technologies such as Asynchronous Transfer Mode (ATM) technology. In this paper, the problem of the developed algorithm of multi-path routing which allows us to determine the optimum number of independent shortest paths is theoretically solved. In details, the article proposes a way for finding the set of shortest paths using Dijkstra's algorithm, and then determination of the maximum flow for each of the shortest paths based on the mathematical concepts and finally, introducing the solution of the multi-criteria optimization problem for a set of shortest paths. According to our approach, optimizing the use of resources in the core networks is possible with using the MPLS-TE technology.


Introduction
Multi-Protocol Label Switching (MPLS) is a technology for integrating the different types of data such as internet text, audio (voice), video and etc. from various sources, e.g., Ethernet, WLANs and ATM; in the other words, it allows the MPLS lines to extend the traffic managing capabilities of the second layer (according to Open System Interconnection (OSI) model), e.g., ATM and Frame Relay networks. Therefore, MPLS traffic technology is very important for multimedia service providers and generally Internet Service Providers (ISPs) [1][2]. Since backbone or core networks must support an available high bandwidth for these usages, so the networks must be very stable, reliable and Quality of Service (QoS) guaranteed in which they can withstand communication link or node failures. QoS may have many different types of meanings in each application, for example a network can be delay-aware (for real-time usages), bit rate-aware and so on. The MPLS Traffic Engineering (MPLS-TE) technology provides an integrated approach for developing and solving the traffic challenges. With MPLS-TE, capabilities for traffic handling are integrated into the third layer of OSI (the network layer) which optimizes the routing of IP-based traffic (the traffic which imposed several network constraints based on the bandwidth and topologic type of the trunk). In continuation, we wish to review some developments of MPLS for the traffic management: i. It improves standard IGPs, such as OSPF, to automatically bind packets to the appropriate traffic flows. ii. Transporting the traffic flows over the network using MPLS redirection. iii. It defines paths for traffic flows over the network based on the resources required for the traffic flow, and available resources on the network. iv. It uses constraint-based routing in which the path for the traffic flow is the shortest one that meets the requirements for traffic flow resources and restrictions. In the MPLS traffic infrastructure, the traffic flow provides the required bandwidth, multimedia requirements, priority over other threads, and so on. 1702 v. It links the malfunctioning nodes using change of topology of the trunk, i.e., adaptation to a new set of constraints. The current step in development of telecommunication systems is characterized by the rapid improvement of information and communication technologies towards providing the QoS requirements. This development is towards the creation of the Next Generation Networks (NGNs) which are packaged networks with differentiated transport and service functions. To provide transport functions in NGNs, MPLS technology can be used. In [3], the traffic engineering (TE) technology was proposed for segment routing (SR) resulting to simplification in the control plane operations. Moreover, the integer linear programming (ILP) was applied to achieve the TE performance based on the segment packet routing networks, unlike the proposed work in this paper where the way of finding the shortest paths using Dijkstra's algorithm is obtained and the theoretical limit has been determined. In [4], the flexible MPLS-TE was implemented in SR combined with Link-State routing protocols to improve the TE and hence provides the optimization of network resources utilization, and congestion avoidance using the label switching paths. In [5], optimizing the Quality of Service (QoS) was achieved through the optimization of routing protocols, by developing the adaptive rutting models and methods. This paper is organized as follow, in the second section; we generally introduce our approach in order to optimal multi-path routing. The third section is allocated to detailed computations of the proposed approach. Forth section is about experimental results and evaluations and the fifth section is the conclusion on the work.

Algorithm for Optimal Multi-path Routing
The current paper is going to propose a multi-path routing strategy for solving the problem of traffic engineering, described in Figure 1. At the first step of our algorithm, network graph is constructed. Neighboring routers exchange routing information in order to obtain a complete view on the network topology towards the fact that all the connections in the network are reflected. Each channel has several parameters which are used for reserving the channel, bandwidth sharing and determining the channel attributes. On the constructed graph, a search is done for finding a set of shortest paths between the terminal nodes with using the Dijkstra's algorithm. To find the set of independent shortest paths between any pair of nodes, a graph or a network structural matrix can be used [6]. Then, the structural matrix is successively squared or cubed until the matrix ceases to the change, namely it becomes a characteristic matrix. To find the paths of a matrix with a rank more than r, the matrix should be raised to the r-power. It can be shown that in the worst case, when r n-1  , the computational complexity of the algorithm is estimated by the value () ON 4 , where N is the order of the matrix. For the case of a fully connected network, the computational complexity of the proposed procedure for finding independent shortest paths using Dijkstra's algorithm is estimated by the value of () ON 3 , where the time for solving the problem is significantly reduced.

Details of the Proposed Algorithm
This section contains three sub-sections, as follows, which completely represent the details of the proposed algorithm.

The Optimal Number of Independent Shortest Paths
In this sub-section, we want to determine the optimal number of independent shortest paths for implementation of the Dijkstra's algorithm in order to the realization of the multi-path routing. As a result of the recursive execution of the Dijkstra's algorithm, there is a set of independent shortest paths on the graph which can be used for load distribution. In order to achieve uniform load, it is necessary to choose such a set of shortest paths (in each subnet) which allows us to maximize the total stream transmitted through the subnet. Based on the set of independent shortest paths obtained, it is necessary to form a set of solutions for representing all possible ordered subsets; namely, each subset has a multi-path including 2, 3 or more independent shortest paths. Each obtained path from the set is characterized by two criteria, value of the maximum flow that can be transmitted over the given set of paths, and the Where ij X denotes flow over the multi-path () ij , l,n x is minimum throughput of the independent path, & ln show two adjacent nodes on a multipath, and M is a set of nodes constituting the multipath. The obtained set allows the total flow that can be transmitted becomes a maximized value in order to achieve a uniform network load. Figure 1. Algorithm for optimal multi-path routing

Delay Issue
Another important network feature is packet delay. In some researches, it has been shown that the main component of the delay is determined by the packet processing time in the node q t , as well as when the distance between nodes is long (thousands of kilometers), it is a propagation delay t t . Consequently, the delay value will be increased with varying the number of nodes through the packet passes, and it will finally increase the path length. This parameter is included in the cost metric and should be used as one of the parameters when determining the optimal set of independent shortest paths [7].
Thus, in order to determine the optimal number of paths, it is necessary to reconcile two contradictory conditions to maximize the total flow transmitted across the network, or on the one hand, to minimize the cost (delay). The problem of choosing an effective solution under these conditions is known as the problem of multi-criteria optimization, which consists in choosing a compromise solution (with trade-off between two objects) and requires justification of the principle of trade-off. The problem of choosing the optimal solution in the multi-criteria situation, regardless of the choice of the criterion, there are possible solutions for a set of partial local criteria in ranking. In the general case, it can be formulated as follows [8]. Let x is a solution

Local Criteria for Solving the Problem Based on MPLS
It is necessary that the utility function of the partial criteria becomes universal and welladapted to take into account the features of networks with the MPLS. For this aim, it must meet the following requirements [9], as follows.
-To have a single solution interval as (0, 1). -To be invariant to form the extremum of a partial criterion (min or max), namely, the value 1 should be corresponded to the best value, and the value 0 to the worst value. The function in the following type justifies the requirement as Equation (3).
Where i K is the value of the i-partial criterion for the variant of the system; iнл K and iнx K are its best and worst value, respectively, which are corresponding to the boundaries of the range of permissible variations of the corresponding parameters of the system, or to the programs of the approximate region of compromise; i  is a non-linearity index. When i  is equal to 1, a linear dependence is obtained, when it is between 0 and 1, a concave dependence is obtained, and when it is bigger than 1, a convex dependence is obtained. Therefore, the curvature is depended on i  as Figure 2.
Take into account that the design time of any telecommunication system is short, compared to the evolutionary cycle and using the approximation of the so-called S-shaped curve ( Figure 5), so we will chose i  is equal to 1. Eq. (3) shows that the difference between the system variants criteria with the best value, and the difference between the best value with the worst value, determines the local criteria of the utility function, namely, when the difference is increased between the system criteria or the difference between the best and the worst criteria is decreased, the local criteria of the utility function shows an increase. Moreover, the best proposed value of the non-linearity index is expected to be equal to 1, which is justified to make the relation of the utility function and the best and worst value to be linear and well identified.
To determine the boundaries of the approximate region of compromises P X , i.e., the values mнх K and mнл K , the following method is used. On the set of admissible solutions X , optimization is carried out for each of the partial criteria The type of global criterion for quality essentially depends on the type of problem which is being solved. In this problem, the global quality of an alternative can be described by the sum of local qualities. Take into account that the local qualities (maximum flow and delay) uniformly vary on an admissible set of solutions. As a result of the calculations, the maximum of the generalized coefficient will determine a certain set of paths while using the optimization (by the given criteria, it is achieved as Eq. (6)). Where ij C is the cost (delay) of transmission over the path, and ij X is also the maximum flow defined by the form ij, and n is a number of independent paths in a given network. Take into account that in the accepted utility function, the following criterion can be used as a general criterion for evaluating effectiveness.
describes a number of the partial criterion, As a result, the optimal set of paths that are used for routing in the MPLS-TE network is found. In the next section, we evaluate the proposed solution.

Evaluations and Results Analysis
The proposed algorithm has been tested on several networks, modeled by a graph with sizes of 30, 50 and 100 nodes. For each graph, the search for the optimal path consisted of three actions: -Finding the set of the shortest paths using Dijkstra's algorithm.
-Determination of the maximum flow for each of the shortest paths by the Eq. (1).
-The solution of the multi-criteria optimization problem for a set of shortest paths.
According to Figures 4 and 6, the curves are given for the graphs with sizes of 30, 50 and 100 nodes, respectively. It can be seen from the figures that for each of these graphs, there is a maximum that determines the set of the optimal paths, where the weights of the partial criteria were taken to be 0.5. In practice, the values of the partial criteria are defined by the traffic service policy (user-or ISP-dependent).
For each of the graphs under the mentioned considerations, the optimization problem was solved at different types of connectivity. In each experiment, the network connectivity changed from 10% (except for a graph Figure 4) to 100%, relative to the number of nodes in the network, namely, if a graph consisting of 50 nodes is given and connectivity is of 40%, then there are 20 independent paths from a node to another one. Although the connectivity determines the number of paths between the terminal nodes, the analysis of the curves shows that the optimal number of paths does not depend on connectivity and is determined by Equation (8)  According to the results shown in the Figures 4, 5 and 6, it is clear that the shortest path number depends on the network connectivity, however, it is shown that the number of nodes used in the network plays an important rule in the behavior of the shortest path number; so, at few number one nodes (30 for example in Figure 4), it is clear that the shortest paths at 60% of connectivity has higher impact than 20% and 40% connectivity, while at high number of nodes, the number of the shortest paths are more regular and tidy in its dependence to the connectivity. In fact, this behavior means that the connectivity is not the only effective factor in determining the shortest paths, though it is the factor to determine the number of total paths, which is justified by Eq. (8). Eq. (8) states that the shortest number of paths depends on which is in the range of 0.5 and 0.7. So, the connectivity factor determines the total number of the paths to connect the network and determines the shortest number of paths depending on the connectivity factor. By joining these two factors together ( and connectivity factor) with the number of the nodes in the network, we come up with a clearer picture of the network. Larger number of nodes means larger total number at a certain level of the connectivity factor, and with certain shortest number of paths which is determined by .

Conclusion
This article proposes a way for finding the set of shortest paths using Dijkstra's algorithm, and then determination of the maximum flow for each of the shortest paths based on the mathematical concepts, and finally, to introduce the solution of the multi-criteria optimization problem for a set of shortest paths. The developed algorithm includes some exact methods of solution, which does not contain any heuristic components. Therefore, it allows us to find a solution in a finite number of steps, namely, it guarantees the convergence of the algorithm. The performed calculation of computational complexity shows that the algorithm can be used even under a greater quantity of nodes (size of 100 and more), and also even in the case of connectivity of 50% in practice. Also with using this approach, the decision time does not exceed than the permissible one (50 ms). For a future work, we can apply the approach in other types of communication networks such as cisco networks, commercial wireless networks [13], sensor networks [11], [14][15], and other types of TE networks [16] for communication of multimedia contents [17][18][19] and netted radars [20][21][22].