A New Proposal of an Efficient Algorithm for Routing and Wavelength Assignment in Optical Networks

The routing and wavelength assignment (RWA) algorithms used in optical networks are critical to achieve good network performance. However, despite several previous studies to optimize the RWA, which is classified as an NP-Hard, it seems that there is not, a priori, any solution that would lead to standardization of this process. This article presents the proposed RWA algorithm based on a Generic Objective Function (GOF) which aims to establish a base from which it is possible to develop a standard or multiple standards for optical networks. The GOF algorithm introduces the concept of implicit constraint, which guarantees a simple solution to a problem not as trivial as the RWA. Index Terms GOF, optical networks, RWA, static traffic.


I. INTRODUCTION
T HE increasing demand for services which requires more bandwidth, speed and quality of service of telecommunication networks, makes optical networks a major choice among the networking solutions available nowadays.What ensures this notability is mainly its cabling, since the optical fibers allow a large geographical reach and the use of various optical paths in the same physical link.However, optical networks have very different characteristics from electronic networks and these characteristics influence directly the way resources should be managed in this type of network.Among these characteristics, we highlight the process of forwarding packets between the transmitter and receiver.While in electronic networks it is only necessary to find the shortest path between the source node and destination node in optical networks there is an additional step, the allocation of wavelengths on the path established.This process is known as routing and wavelength assignment (RWA).
The RWA process is thoroughly studied, and many solutions have been proposed to solve it.These efforts can be divided considering the type of traffic demand used: dynamic or static.Some works consider only the dynamic traffic ([1]- [3]), whose main characteristic is the absence of information about the overall state of the network, making the routing process to be done in real time.Other works are devoted solely to static traffic( [4]- [6]), where there is prior knowledge about the state of the network, enabling policies to address the RWA process to be prepared in accordance with the environment that we are dealing with.Some other works offer solutions considering both traffics.
Whereas the solutions for networks with dynamic traffic are or have been developed for networks where the prior knowledge of the global state of the network is not required and considering that the networks operating today are still largely opaque networks, i.e., perform the conversion optoelectro-opto on intermediate nodes, it was decided to treat in this article only issues relating to networks with static traffic.
In solutions for the RWA process with static traffic that take into account the conversion opto-electro-opto in the intermediate nodes, the consensus is that this conversion is a major obstruction to the performance of routing and wavelength assignment in optical networks.Thus, the studies tend to focus on the search for optimization of RWA, which is defined as a non-linear numerical optimization, where in many cases probabilistic methods classified as evolutionary or purely random are used.Among the evolutionary probabilistic methods used, we can mention among others: a genetic algorithm (GA), fuzzy logic, based on ants colony (ANT), evolutionary by particle swarm optimization (EPSO), artificial neural networks (ANN) and Bayesian networks (Bayes).Among the purely random probabilistic methods, we can mention among others: the tabu search (TS), Simulated Annealing and Markov decision process (LDCs).Some of these methods have been applied to the RWA process, for example, genetic algorithm ( [7], [8]), tabu search( [9], [10]), particle swarm( [11], [12]), ant( [13], [14]) fuzzy logic [15] and Markov decision process [16].
Regardless of the method used, among the factors inherent to the optimization, the objective function stand out, since all other elements are directly or indirectly connected to it as for example [17]: free or independent variables, dependent variables, constraints and solution space.In the optimization methods used in the RWA process so far, it is observed that the objective function is different in all cases, regardless of the problem being the same, in this case the RWA, or that the technique itself also is the same as the solutions presented by [18] and [19], where both use AG in the RWA process.It can be considered natural when the method used to solve a problem is different, depending on the characteristics of the method employed.When the problem and the method used are the same, initially, the objective function should be similar, but it is not what happens in most cases.
When the objective function is the same, it is usually the simplest task, i.e., a function of only one variable that needs to be maximized or minimized, followed by many constraints.In non-trivial cases such as the RWA, which itself contains two sub-processes, leading to the tendency to use at least two variables, the objective function becomes more complex.This complexity increases even more when it is decided to insert the objective function in the constraints you want to consider.On the one hand, there is the advantage of optimizing the whole process of RWA only once for a given situation, i.e., the RWA process and constraints of the environment analyzed.On the other hand, there are disadvantages of having an objective function for each situation and the need to change it at every change occurring in the system environment.Knowing that the systems are certainly changeable over its life cycle, it may not be the best option.
One can assume that, due to the different ways of working with the objective function, it is not trivial to propose a resolution of the RWA process applicable to any environment.However, one can try to minimize the effort to reach a desired objective function, starting from a common point.This paper proposes an algorithm based on a Generic Objective Function (GOF) to solve the RWA problem, considering only the basic constraints contained in an optical network, here called implicit constraints, and the discussion about the possibility of using it as a default option.It is important to remark that, despite the name, the analytical model that gave rise to the algorithm GOF is not a traditional objective function, i.e., the goal is not to minimize it or maximize it, but simply use it to solve the RWA problem, which itself is a way to optimize the resolution of the problem, which is not trivial.

II. RWA Problem
The routing and wavelength assignment comprise the subproblems of the problem called RWA, which is essential for efficient management of an optical network.The routing subproblem has already been extensively explored during the development of electronic networks, with classical solutions such as Dijkstra's algorithm [20].In optical networks, despite the importance of routing, the action wavelength assignment is considered critical [21] because it determines the acceptance or rejection of a request.In the wavelength assignment subproblem, it is necessary to define a wavelength considering the chosen route in the routing sub-problem.In the case of static traffic, considered in this article, you must ensure that this wavelength is available on all links of the route, a condition which is defined as wavelength-continuity constraint and is considered an implicit constraint.To solve the RWA problem it is necessary to identify what are the restrictions imposed on it, which are numerous and can be treated in many different ways, in general, according to the network environment being considered.
One way to facilitate the modeling of the RWA problem and create a simple mathematical model is to consider only the essential features of the system, i.e., those features whose absence implies the inexistence or not functioning.Based on this principle it is observed that there are two categories of constraints: those which correspond to the essential features of the system and to other restrictions.The first category will be called here implicit constraint and the second explicit constraint.
Implicit constraint consists of all that is part of the modeling developed considering only the normal or common system, i.e.only the minimum requirements for operating the system are considered as a constraint.
Explicit constraint consists of all that is related to aspects that are not part of the minimum operating system, or aspects that the system dispenses to its operation.Thus, we can consider that, only with implicit constraints, the system operation is ensured regardless of its performance being efficient or not.With explicit constraints, it is ensured that the system works and that its performance may be higher or lower depending on the explicit constraints considered.An example of the latter would be the use of wavelength converter, where the simple use of a converter reduces the blocking probability thus increasing system performance, regardless of its location on the network.However, if that same drive is put in the more critical place considering the network traffic, this performance will certainly be better.

III. GOF Algorithm
The development of GOF algorithm, to ensure simplicity, took into consideration the basic mathematical operations addition, multiplication and division.Considering all the candidate routes between a source-destination pair in an optical network, with their links and they with their respective wavelengths available, we have: For each route, the calculation is made of a label considering each wavelength used in their bindings.The calculation of the label is done as follows: whereas, • L is the label that connects a route (R) to a wavelength (λ).If the result equals 1, it means that, at that route, the wavelength exists in every link; that is, the communication between origindestination may be done without using wavelength converters.Whichever amounts different from 1 means that the communication is not possible without wavelength converters.• R is a route that is formed by one or more links.
• j identifies a specific route, varying from 1 to N, where N is the amount of positive whole numbers, that is, {1,2,3,...,N}.• λ is a wavelength, whose quantity to be used in the network may vary either upward or downward.
we obtain the following results: • x identifies a specific wavelength • i identifies the number of links at a route.
• w is the weight attributed to each wavelength.If it has been established in 4, the number of wavelengths, the number of weights is also 4, thus the weight may vary from 1 to 4.
For Route 1 (1-3-9-10-12-14) shown in Figure 2 • l is the link, which is the connection between two nodes in the network.A group of links form a route.
• n indicates the number of interactions to calculate links and wavelength weights in these links.
Applying the GOF algorithm in the network NSFNet, North American network of NSF (National Science Foundation), consisting of 14 nodes, 21 links and using four wavelengths, as shown in Figure 1 the labels are, ( ) Thus, based on the results, it can be stated that a candidate route can be used as long as the wavelength lambda is allocated 1 λ , because its label is ( ) where each wavelength is associated with a weight as shown in Table 1, For Route 2 (1-6-11-12-14) shown in Figure 3 ( ) When there is more than one wavelength available, the choice can be made by considering the lower weight or simply using a classic algorithm as the first-fit algorithm.The complexity of the Generic Objective Function (GOF) algorithm was determined through a methodology based on the structure of the algorithm shown in [22].The methodology aims to achieve the complexity of the algorithm, step by step, through the complexities of the basic components and their consequent combinations.The analysis followed the essence of the developing idea of GOF and is therefore made by considering the worst-case complexity or pessimistic complexity ( ) p c .Thus, based on the results, it can be stated that the candidate route 2 cannot be used, as every wavelengths have label ( ) For Route 3(1-2-4-14) show in Figure 4 The algorithmic structures used in the methodology are contained in Table 2.The GOF algorithm can be described as shown in table 3.  3, the logical blocks of the GOF algorithm would be willing as shown in Figure 5: .The second block (b2) is a condition where it is checked whether or not the wavelength exists, i.e. it is equivalent to determine if the value of a variable i , whose complexity is Θ .The third block (T3) is a conditional structure involving the blocks S1 and b2, whose complexity, in the worst case, has a linear order: ( ) The fourth block (S4) has the same block structure from S1, so its complexity is also ( ) 1 Θ .The fifth block (b5) is a double award for the comparison of lists, equivalent to an assignment of transference, transferring each element of the list v , and having complexity ( ) n O to a list u with length : u n v ← {transfer list}.The sixth block (S6) has a conditional structure like: If b then S else T end up, which involves computing efforts associated with: 1) assessment of the condition b, and 2) execution of a segment of the algorithm S or T, as appropriate.Thus, the pessimistic complexity of the block (S6) is .
The seventh block (b7) is composed of an interaction of the type integer variable i, whose complexity has constant order 10.1: ( ) As blocks (S9) and (S10) are similar to blocks (S7) and (S8), we can conclude that the complexity of the GOF algorithm is: The complexity analysis of GOF algorithm shows that it has a complexity consistent with what is proposed to solve the RWA problem, mainly because the solution is achieved in one step and the problem is complex.In the classical solutions it is achieved through two steps, for example, Dijkstra's routing algorithm with complexity equal to

V. SIMULATION MODEL
This section details the model used to evaluate the blocking probability in a WDM network.In this study we have used the NSFNET network topology and the model has the following characteristics: • The requests are generated randomly and sequentially.• Requests that fail to allocate a wavelength are considered blocked.
• The blocking probability is calculated by dividing the number of requests not served by the number of requests generated.
• All links are bidirectional.
• Once a request is given a wavelength, this will have to be used at all links.
• If there is no availability of a particular wavelength in a link of the route, a queue is not formed and the request is blocked.
• The wavelength assignment algorithms analyzed are: first fit, middle channel, end channel, random and GOF.
• No routing algorithm was used because there is always the route from one node to another network node, i.e. no choice of shortest paths for routing purposes, not to affect the performance of wavelength assignment algorithms tested.Thus, the blocking probability is measured by the number of nodes.
• The routing algorithms analyzed are: Dijkstra and WLCR (Weighted Least-Congestion Route).
• The wavelength assignment algorithms analyze dare : first fit and random.
• The routing and wavelength assignment algorithms are used in all possible combinations, i.e., each routing algorithm was tested with all the wavelength assignment algorithms and vice versa.
• The GOF algorithm is used in both steps: routing and wavelength assignment, always acting alone, since it addresses problems simultaneously.
• The charge used follows a Poisson distribution and is given in Erlang-B, whose formula is [23]: where is the blocking probability for a load L and λ wavelengths.
The choice of algorithms for the simulation was done considering some aspects: 01) For routing, Dijkstra's algorithm was adopted as one of the most widely used algorithms and WLCR algorithm for being an efficient algorithm and comparable to GOF algorithm regarding simplicity.
The WLCR algorithm [24] is designed to work with the first-fit and therefore is also called RWA WLCR-FF algorithm, but here is referred to only as WLCR.In the WLCR algorithm a set of routes is pre-computed for each source-destination pair.These routes are recomputed if the network topology changes.If you get a connection request from a pair of nodes, a route must be chosen from the set of pre-computed routes being allocated a free wavelength for the selected route afterwards.Arriving a connection request of the pair of nodes, a route of candidate routes is selected.The WLCR algorithm will select the route as outlined below.
A weight where ( ) R F is the number of free wavelengths on route R and ( ) R h is the length of route R .
After calculating the values of all weights, the route with the largest weight is selected.If no wavelength is available in any route, i.e., ( ) 0 = R F for all routes, the connection request is blocked.Once the route is set, the allocation scheme will be employed first-fit in each segment of the route selected.For each segment, the free wavelength with the smallest label will be allocated to all links in that segment.It should be noted that when the decision for a route is taken, two important factors are considered:

)
The number of free wavelengths; The length of the routes.
The idea is simple, the route with more wavelengths should be selected while the length of the route will not be so long.If there is no conversion of wavelengths, these two factors are related: a short route is more likely to have longer wavelengths than the long routes.Anyway, if your network has the ability to convert the wavelength, the correlation between the number of free wavelengths and the length of the route is not convincing: a long route is likely to have more wavelengths than a short route.If the preference is for routes with the highest number of free wavelengths, it is possible that many long routes may be selected, resulting in higher blocking probability.At first, the weight function should be directly proportional to the number of free wavelengths and inversely proportional to the length of the route.02) For the allocation of wavelengths, it was decided to use the first-fit and random algorithms, because they are known to be effective, besides being classics.

VI. RESULTS OBTAINED
The simulations were performed using Matlab 7.  Despite the wavelength assignment algorithms first-fit and random being effective, the result of its numerous use with the Dijkstra's algorithm leads the process to a high blocking probability for the other combinations tested.What is apparent is that Dijkstra's algorithm may not be a good choice to use in optical networks.The blocking probability at low load can be high due to the recursiveness of Dijkstra's algorithm combined with algorithms (first fit and random) originally developed for optical networks with dynamic traffic.Figure 8 shows the same simulation results shown in Figures 6 and 7 on a smaller scale.We can observe that the blocking probability occurs at low load when using Dijkstra's algorithm, while it is zero for WLCR and GOF algorithms.For WLCR and GOF algorithms blocks begin to appear around 8 Erlangs load, which is expected considering that they are being used eight wavelengths on each link.The WLCR algorithm can be the proof of the previous statement about Dijkstra's algorithm, because the combinations of WLCR with the same first-fit and random have shown much better results.
The GOF algorithm showed average performance similar to WLCR algorithm, but with one advantage: the GOF algorithm solves two stages of RWA simultaneously while the WLCR algorithm only solves the routing step, always needing to be accompanied by an wavelength assignment algorithm, which is a more complex step.Depending on the wavelength assignment algorithm that is chosen, it may decrease considerably the WLCR performance, considering a network with static traffic, network type for which the GOF algorithm was developed.

VII. CONCLUSION
In this paper we have presented a new type of routing and wavelength assignment (RWA) algorithm, called GOF (Generic Objective Function), for networks with static traffic.The simulation results have shown that the algorithm GOF has good performance, despite being a single algorithm to solve a multi-objective problem as RWA.
The solutions to the RWA problem try to cover different situations called constraints, as a way to solve specific problems such as: resource reservation, multiple requests for the same pair of source-destination nodes, location of wavelength converters etc.Furthermore, another aspect point out such solutions: the resolution of the RWA problem in two steps, in order to decrease the complexity of the problem so that the solution may be achieved more easily.Thus, this article seeks to draw attention to two basic matters: Discuss specific problems is important, but does not lead to standardization, which is still one of the problems of optical networks.Bringing together the resolution of dozens of localized problems, if possible, would generate a solution with high complexity, and would leave out solutions that address the same subject, whose exclusion criteria would have to be well explained.The resulting solution, due to its complexity, would not be commercially viable and in fact not feasible, since the different solutions use various optimization techniques, which would not allow, a priori, the complete compatibility.
The division of a multi-objective problem in a problem of one objective, certainly helps to reduce the complexity of the problem, making it easier, in theory, its resolution.However, in the case of RWA, dividing it or not, the result has to be unique, i.e., allow the best route to be chosen and the most appropriate wavelength to be allocated at that point, for the chosen route.If the result is unique, regardless of how the system was treated, the analysis of complexity of the algorithm that treated it must also be unique, regardless of the number of algorithms used.However, there is not such discussion about the solutions presented to solve the RWA problem.Thus, the analysis of complexity of the solutions that divide the RWA problem, should be the result of the sums of the complexities of the algorithms that are used and not just the technique that is used to solve the main problem, which is the allocation of wavelengths.
Given these two key issues, the algorithm GOF was developed and its usage model considers that: No restriction point is considered, i.e. no explicit restrictions are considered.The goal is to solve the RWA problem considering only the restrictions implied.This guarantees that the RWA is solved and creates the possibility that the algorithm GOF serve as a standard for optical WDM networks.
If you can solve a multi-objective problem, such as RWA problem, with an integrated solution with low complexity, it is not justifiable to divide the problem into smaller issues.Thus, the GOF algorithm does not seeks to diminish the complexity of the problem but to reduce the complexity of the solution.
The fact that the function of GOF is of generic goal and solve the RWA problem in pure form, allows it to be used, for example, as wavelength assignment algorithm WA, as a fitness function on genetic algorithms (GA) and other optimization techniques that use the cost function.

Fig. 1 .
Fig. 1.NSFNet using four wavelengths on the results, it is observed that the candidate route 3 can be used, allocating the lambda 2

Table 3 :
GOF Algorithm Procedure FindValueRoute (route,wavelength); Begin code(route,list);///insert nodes of the route in the list sum = 0; hop = 0; while p < number of items in list do begin while b < number of line array CompLamb do begin If CompLamb[0,b]=list[p] and CompLamb[1,b]=list[p+1] then increase(hop); else if thereisLamb(b,lambda) then sum = sum + lambda end end end Considering Table

1 O
. Block S8 is the startup vector type of integers whose complexity has constant order .1:n .Whereas the complexity of the block S6 is ( ) algorithm, allocation, with complexity equal to (1O . 1 and considering the NSFNET network whose topology is shown in Figure 1.The NSFNET is composed of 14 nodes and 21 links.The number of channels ( 8 = λ and the number of links ( ) 13 = l were fixed, varying the load in Erlang.The results are as follows:

Table 1 :
Lambdas and associated weights