# Patent

## Title
Joint optimization procedure for routing and wavelength assignment with combined dedicated shared protections in multi-cable multi-fiber optical WDM networks

## Abstract

A joint-optimization method addresses the generalized routing and wavelength assignment problem with variable number of combined 1+1 dedicated and shared connections. The inventive method enables a solution in time that is polynomial of the input size. Thus, the time complexity of the joint-optimization method is significantly less than that of existing methods.

## Background
RELATED APPLICATION INFORMATION
This application claims priority to provisional application No. 61/524,341 filed Aug. 17, 2011, the contents thereof are incorporated herein by reference


BACKGROUND OF THE INVENTION
The present invention relates generally to optical communications, and more particularly to a joint optimization procedure for routing and wavelength assignment with combined dedicated shared protections in multi-cable multi-fiber optical WDM networks.
With advance modulation schemes, each channel in optical WDM networks can support several hundred gigabits or more per second data rate. Any failure in such high capacity networks can cause large amounts of data and revenue losses. Thus, in order to meet the service level agreement to end users, provisioning survivability is an essential requirement in optical WDM networks. Failure of an optical channel is mainly caused by either a transponder failure or a fiber cable cut. Survivability to a transponder failure can be provisioned by deploying redundant transponders that are referred to as backup transponders at end nodes. Survivability to a fiber cable cut can be provisioned by allocating redundant channel resources along fiber cable-disjoint routes, where one of the routes is referred to as a working route and the others are referred to as backup routes. In order to minimize the channel switching time in case of a failure, data can simultaneously be transferred on both working and backup routes by allocating dedicated resources. Such protection mechanism is referred to as the 1+1 dedicated protection [JSimmons]. While provisioning survivability through 1+1 dedicated protection, the required number of wavelengths in the network is increased by at least the factor of the number of 1+1 dedicated protection routes requested by a traffic demand, and that cannot be used to support other network traffic. Thus, as the requested number of 1+1 dedicated protection routes increases, survivability of the traffic demand increases; however, the wavelength utilization decreases.
It is noted here that the term “fiber cable” (or simply “cable”) refers to the physical bundle of fibers within the same assembly, this is also called “fiber trunk” sometimes. Each cable can contain multiple optical fibers or just a single optical fiber. If they are n fibers between two optical network nodes, these fibers can be contained within the same fiber cable, or they can be distributed among n cables containing 1 fiber each, or they can be distributed among m cables where 1≦m≦n. Once a fiber cable is cut, all the fibers contained within the cable are disconnected, but other cables might not be affected.
Wavelength resource utilization can be improved if the backup wavelengths along the backup routes can be shared among multiple working connections that are routed on fiber cable-disjoint routes. Such protection mechanism is referred to as the shared protection. The connection switching time in the shared protection mechanism is increased by the port switching time and signal propagation time between end users compared to the 1+1 dedicated protection mechanism.
The survivability of time-critical applications can be increased in an efficient manner by provisioning a traffic demand with combined 1+1 dedicated and shared protections. The survivability of a traffic demand is improved exponentially with the number of total protection routes and the number of transponders, given the assumption that a failure of each fiber cable and a failure of each transponder are independent. Our invention here is an efficient method that addresses the routing and wavelength assignment problem that provisions survivability through combined dedicated and shared protection mechanism in multi-cable multi-fiber optical WDM networks. This is the first time such problem is addressed and solved. The problem is defined as follows.
We are given a network topology G(V, E), where V is a set of nodes and E is a set of edges. Nodes i and j are connected through Fij number of fiber cables. Let fijp denotes the number of fibers confined within pth fiber cable connecting nodes i and j. We need to establish a set of traffic demands A in the network, where a traffic demand R(s, d, x, y) is requesting a working live-connection, x number of 1+1 dedicated backup live-connections, and y number of shared backup connections between source s and destination d. For each traffic demand, x+1 number of dedicated transponders are provisioned at end nodes to support working and x number of 1+1 dedicated live-connections. The released transponder due to any failure of a live-connection can be used to establish a new backup live-connection along one of the shared backup connections. Thus, in case of failures of l live-connections, if l≦y, the network can guarantee x+1 number of live-connections for a given traffic demand, otherwise, the network can support (x+1+y−l) number of live-connections. We need to find working, 1+1 dedicated backup, and shared connections, routing of these connections over physical topology, and operating wavelength of each connection such that wavelength utilization of the network is maximized. The network is transparent, and does not have traffic grooming or wavelength conversion capabilities. We refer to this problem as routing and wavelength assignment with combined dedicated and shared protections in multi-cable multi-fiber optical WDM networks.
It is noted that a “connection” represents the reserved wavelength resources along the route. A “live-connection” represents a connection with live data transfers. A wavelength in a fiber cable is referred to as a wavelength link.
So far, there is no existing solution for the routing and wavelength assignment problem with variable number of 1+1 dedicated and shared connections in multi-cable multi-fiber WDM networks. Applicants are the first to propose an efficient procedure to solve it.
If one restricts x=0 and y=0, the problem is transformed into the conventional routing and wavelength assignment problem in multi-fiber WDM networks. When x=1 and y=0, the problem is transformed into routing and wavelength assignment with 1+1 dedicated path protection. On the other hand, when x=0, and y=1, the problem is transformed into routing and wavelength assignment with shared path protection.
In another work, there was proposed a routing and wavelength assignment procedure when x=1 and y=1. The addressed problem has an additional constraint that was found working, 1+1 dedicated, and shared connections must be not only link-disjoint but also node-disjoint. In another prior work, the authors propose routing and wavelength assignment procedure when x=2, y=0, and x=0, y=2. In both these prior works, the problem was formulated using an Integer Linear Programming (ILP). The required time to solve the problem using the proposed methods increases exponentially with the input size, and thus, the proposed ILP formulations are not realistic approaches to address the problem in real time.
So far, the above mentioned prior works address the specific sub-problems of the problem addresses in this invention record. Furthermore, the proposed solutions address only the case when each fiber is confined within a separate fiber cable, and do not applicable for the any other distribution of fibers within fiber cables.
Accordingly, there is a need for a joint optimization procedure for routing and wavelength assignment with combined dedicated shared protections in multi-cable multi-fiber optical WDM networks.
BRIEF SUMMARY OF THE INVENTION
The present invention is directed to a joint optimization method for finding a routing and wavelength assignment for a given set of traffic demands requiring variable number of dedicated and shared protections, including constructing a layered graph for finding fiber cable link disjoint routes in a multi-fiber cable; applying, jointly, a routing and first-fit wavelength assignment for finding x+1 number of fiber cable link disjoint routes operating on different wavelengths in the layered graph; modifying the layered graph to maximize sharing of wavelengths; applying, jointly, routing and wavelength assignment based on maximum sharing factor to find y number of fiber cable link-disjoint routes in the layered graph; finding working 1+1 dedicated connections and then shared connections; searching k different solutions of dedicated and shared connections operating on K different wavelengths; selecting one of the solutions requiring a minimum number of wavelength links; and modifying Bhandari's procedure to find link-disjoint routes in the layered graph.
These and other advantages of the invention will be apparent to those of ordinary skill in the art by reference to the following detailed description and the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIGS. 1(a) and 1(b) show an exemplary 6-node network and its corresponding layered graph, respectively;
FIGS. 2(a), 2(b) and 2(c) is are parts of a flow diagram of the joint optimization procedure, in accordance with the invention; and
FIG. 3 is a flow diagram of a modified Bhadari's procedure, in accordance with the invention.



DETAILED DESCRIPTION
The present invention is directed to a joint-optimization procedure for the first time to address the routing and wavelength assignment problem with combined dedicated and shared protections in multi-cable multi-fiber WDM networks. The inventive joint-optimization procedure addresses the generalized routing and wavelength assignment problem with variable number of combined 1+1 dedicated and shared connections for the first time. The invention technique provides a solution in time that is polynomial of the input size. Thus, the time complexity of the joint-optimization procedure is significantly less than that of existing methods.
In the joint-optimization procedure, the routing and wavelength assignment sub-problems are addressed jointly using a layered graph-based approach. Let, G(V, E) denotes a given physical topology, where V is a set of vertices and E is a set of edges. Fij denotes the number of fiber cables connecting vertices i and j, and fijp denotes the number of fibers confined within fiber cable p connecting nodes i and j. Each fiber cable between nodes i and j is assigned a unique identification p, where 1≦p≦Fij, and each fiber within a fiber cable p connecting nodes i and j is assigned a unique identification q, where 1≦q≦fijp. We are given a set of traffic demands A in which a traffic demand R(s, d, x, y) requests a survivable connection between source s and destination d with x number of 1+1 dedicated connections and y number of shared connections. Each request is identified by a unique identification r, where 1≦r≦|A|. End nodes are equipped with x number of dedicated transponders to provide survivability against transponder failures.
First, we construct a layered graph G′(N, L), where N is a set of nodes and L is a set of links. In the layered graph G′, the given graph G is replicated for max(i, j)εE Fij number of times, and each replication is identified by a layer l, where 1≦l≦max(i, j)εE Fij. A set of nodes in the lth layer is denoted as Nl, where |Nl|=|V|, UlNl=N, and a node i in the lth layer is denoted as nli. Node nli with nmi are connected, ∀l, m, where 1≦l, m≦max(i, j)εE Fij. A link (nli, nmi), ∀l, m, is referred to as a virtual link. An ith vertex in the given graph G is represented by a set of nodes {nli|∀l} which is referred as a virtual node. Links connecting nodes nli to nlj are removed at all layers with ID l that is greater than Fij. Thus, the number of times, nodes nli and nlj, ∀l, are connected in the layered graph, is equivalent to the number of fiber cables connecting nodes i and j in the given physical topology G, and a link connecting nodes nli and nlj represents a fiber cable with ID l connecting nodes i and j in the given graph. The link (nli, nlj), ∀l, in the layered graph is referred to as a fiber cable link. FIG. 1(a) shows a layered graph for 6-node network topology for further clarifications. A set of integers on each edge represents the number of fiber cables and the number of fibers within each fiber cable. The size of a set represents the number of fiber cables Fij connecting a pair of vertices i and j, and the pth element of a set represents the number of fibers fijp confined within pth fiber cable. The corresponding layered graph is illustrated in FIG. 1(b) in which the number of fiber cable links between a pair of nodes is equivalent to the number of fiber cables (the size of a set) between a pair of vertices.
A given set of traffic demands, A, are arranged into descending order of their minimum hop distance. Routing and wavelength assignment sub-problems are addressed jointly for each request one-by-one by modifying the constructed layered graph. For the selected request r the process finds K potential routing and wavelength assignment solutions as follows.
The process starts from the lowest wavelength w. If a wavelength w is available on at least one of the fibers confined into a fiber cable l connecting a pair of nodes nli and nlj, then a fiber cable link connecting nodes nli and nlj exists, and a unit cost is assigned to it, otherwise nodes nli and nlj are disconnected. All virtual links connecting nli and nmi, for l, m, where 1≦l, m≦max(i, j)εE Fij, a very negligible cost is assigned. In the modified layered graph, we apply modified Bhandari's optimal procedure, presented in FIG. 3, in which Pm denoted an mth route, where 1≦m≦Max (x+1, y)) to find x+1 number of link disjoint routes. The found x+1 number of link-disjoint routes represents one working route and x number of 1+1 dedicated backup routes operating on the same wavelength w. If x+1 number of fiber cable link-disjoint routes do not exist at the same wavelength w in the layered graph, then the procedure increments the wavelength w, and repeats the same process until either x+1 number of fiber cable link-disjoint routes is found, or all wavelengths are taken into account.
After considering all wavelengths, if x+1 number of link-disjoint routes is not available, then the procedure finds the link-disjoint routes operating on different wavelengths as follows. The procedure restarts the search from the lowest wavelength w, modifies the layered graph based on the availability of the selected wavelength as mentioned earlier, and finds up to x+1 number link disjoint routes using the modified Bhandari's procedure. Among the found routes, one of the routes is selected as a working route operating on wavelength w, and the rest of the routes are considered as 1+1 dedicated routes operating on wavelength w. If x+1 link-disjoint routes are not available at the same wavelength w, then the remaining link-disjoint routes are found by modifying the layered graph as follows. The procedure removes the links along the already found routes out of x+1 routes from the layered graph. The virtual links (nli, nmi)∀i, j along the already found routes are not removed. If a wavelength w is available on at least one of the fibers confined into a fiber cable l connecting a pair of nodes nli and nlj, then a fiber cable link connecting nodes nli and nlj exists, and a unit cost is assigned to it, otherwise nodes nli and nlj are disconnected. All virtual links connecting nli and nmi, for l, m, where 1≦l, m≦max(i, j)εE Fij, a very negligible cost is assigned. The procedure applies the modified Bhandari's procedure in the modified layered graph to find the remaining routes. The process is repeated until either x+1 link disjoint routes are found or all wavelengths are taken into account. In this approach, the 1+1 dedicated routes may operate on different wavelengths.
Among the found routes, the working route of a request r is recorded as kth solution in a set Wrk. The operating wavelength of the working route is recorded in Frk, and the corresponding set of fibers in which the wavelength w is available along the route Wrk is recorded in a set Urk. The 1+1 dedicated backup routes are recorded in sets Brkm, and corresponding wavelengths are recorded in Hrkm. A set of fibers in which the wavelength Hrkm is available along the routes Brkm is recorded in a set Zrkm, where 1≦m≦x. The procedure increments the k, and repeats the same process until K potential working and 1+1 dedicated connections are found.
For each wavelength w in a fiber q that is confined within fiber cable link l connecting nodes nli and nlj, the ID of all successfully established requests that use the wavelength w for shared protection is recorded in the conflict sets Qnlinljqw. The shared connections for a request r are found as follows.
The procedure selects one of the solution k out of K potential solutions of the request r. For all r1εQnlinljqw, ∀nli, nlj, q, w, if Wr1k and Br1km are fiber cable link-disjoint routes to the found solutions, Wrk and Brkm, of request r where 1≦m≦x, then the wavelength w in the qth fiber of lth fiber cable connecting nodes i and j can be shared by a request r. Find the number of fiber cables on which a wavelength w can be shared. We refer to this number as a sharing factor of a wavelength. Order all wavelengths in descending order of their sharing factor. Starting from a wavelength w with the maximum sharing factor, the procedure modifies the layered graph by removing those fiber cable links along which wavelength w is not available on any of the fibers confined within it. If a wavelength w is available on a fiber cable link, and it cannot be shared, then a cost |N|*(|N|−1) is assigned to the fiber cable link. If a wavelength w is available on a fiber cable link, and it can be shared, then a unit cost is assigned to a fiber cable link. All virtual links connecting nodes nli, and nmi, ∀m, l, a very negligible cost is assigned. All fiber cable links along the selected kth solution of working and 1+1 dedicated backup routes, Wrk and Brkm, are removed from the layered graph (the virtual links (nli, nmi) ∀l along the selected kth solution of working and 1+1 dedicated backup routes, Wrk and Brkm, are not removed), where 1≦m≦x. The procedure applies the modified Bhandari's procedure to find up to y number of link disjoint routes. If all y routes are not available at the same wavelength w, then the remaining link-disjoint shared routes are found by removing fiber cable links along the selected kth solution of working Wrk, 1+1 dedicated backup routes Brkm, and already found shared routes out of y routes from the layered graph (the virtual links (nli, nmi) ∀l along the selected kth solution of working Wrk, 1+1 dedicated backup routes Brkm, and already found shared routes out of y routes are not removed). The layered graph is modified by removing those fiber cable links along which the next wavelength w from the sorted pool of wavelengths is not available on any of the fibers confined within it. If a wavelength w is available on a fiber cable link, and it cannot be shared, then a cost |N|*(|N|−1) is assigned to the fiber cable link. If a wavelength w is available on a fiber cable link, and it can be shared, then a unit cost is assigned to a fiber cable link. All virtual links connecting nodes nli, and nmi, ∀m, l, a very negligible cost is assigned. The procedure applies the modified Bhandari's procedure in the modified layered graph to find the remaining routes. The process is repeated until either y number of fiber cable link disjoint routes is found or all wavelengths are taken into account. The found shared routes are recorded in sets Srkm, and corresponding wavelengths are recorded in Trkm. A set of fibers in which the wavelength Trkm is available is recorded in a set Orkm, where 1≦m≦x.
The procedure increments the k, and repeats the same process until y routes for all K potential solutions are found. Finally, out of K potential solutions, the procedure selects a solution k′ that requires minimum number of new wavelengths. For each wavelength w=Trk′m on the fiber qεOrk′m confined within the fiber cable links (nli, nlj)εSrk′m of the selected solution k′ the request ID r is recorded in the conflict sets Qnlinljqw. The found routing solutions can easily be mapped onto the original network G by removing all virtual links along the routes, and mapping virtual nodes to the vertices. The fiber cable link ID represents the ID of a fiber cable. The recorded wavelength and the recorded set of fibers are the operating wavelength and the fibers along the fiber cables.
In FIG. 2, there is shown a diagram of the flowchart of the joint-optimization procedure in accordance with the invention. The diagram is explained as follows:
At step 100, there is constructed a layered graph G′(N, L) from the given graph G(V, E). The procedure replicates the given graph G for max(i, j)εE Fij number of times that is the maximum number of fiber cables between any pair of nodes in the given graph. Each replication is identified as a layer l, where 1≦l≦max(i, j)εE Fij, and each node i in the graph G is identified as node nli at layer l of the graph G′. A node i across different layers are connected by establishing a link connecting nodes nli and nmi, ∀l, m, where 1≦l, m≦max(i, j)εE Fij. This links (nli, nmi) ∀l, m, are referred to as virtual links. A link connecting different nodes within the same layer is denoted as a fiber cable link. The procedure removes all links connecting nodes nli to nlj for layers with ID l that is greater than Fij. Thus, total number of links connecting nodes nli to nlj is equivalent to the number of fiber cables connecting nodes i and j in the given graph G.
At step 101, the procedure orders the given set of requests A in descending order of the minimum hop distance between end nodes. This ordering scheme increases the likelihood of accepting longer requests with wavelength continuity constraints, and also be fair in accommodating longer requests with respect to shorter requests. However, if different fairness levels is required (such as, giving priority to the shortest request to increase total network throughput), this order can be rearranged easily to reflect such fairness requirement (such as sorting the list in ascending order of the minimum hop distance between end nodes).
At step 102, the procedure picks a request r from the sorted pool of requests, initializes k to 1, and considers the wavelength w to the lowest wavelength 1.
At step 103, the procedure modifies the layered graph based on the availability of the selected wavelength w. Each fiber cable link in the layered graph is checked for the availability of a wavelength w. If wavelength w is available on at least one of the fibers confined within the fiber cable, then the fiber cable link exists in the layered graph, otherwise the fiber cable link is disconnected. A unit cost is assigned to all existing fiber cable links in the modified layered graph. A very negligible cost is assigned to all virtual links connecting nodes nli and nmi, ∀l, m. This modified layered graph can be used to address the routing and wavelength assignment sub-problems jointly.
At step 104, the procedure applies the modified Bhandari's procedure to find x+1 number of fiber cable link disjoint paths in the modified layered graph. Application of modified Bhandari's procedure guarantees to find x+1 number of fiber cable link disjoint routes operating on wavelength w with minimum cost that represents the number of required wavelength links. This procedure minimizes the number of required wavelength links in the network which can be used for other requests.
At step 105, there is a check of whether all x+1 number of fiber cable link disjoint routes operating on wavelength w are available. If the routes are available, then the procedure follows the step 106, otherwise the procedure follows the step 108.
At step 106, there is a check of whether all wavelengths are taken into consideration. If there is any wavelength which is not yet taken into consideration, then the procedure follows the step 107, otherwise the procedure follows the step 111.
At step 107, the procedure increments the wavelength w, and repeats the step 103.
At step 108, one of the routes among the found routes is recorded as a working route in a set Wrk, and corresponding wavelength w is recorded in Frk. A set of fibers in which wavelength w is available is recorded in a set Urk. The rest of the routes are recorded in sets Brkm, and corresponding wavelengths are recorded in Hrkm. A set of fibers in which the wavelength Hrkm is available is recoded in a set Zrkm, where 1≦m≦x.
At step 109, there is a check of whether all K potential solutions are found. If the number of potential solutions is less than the K, then the procedure follows step 110, otherwise the procedure follows the step 120.
At step 110, there is an increment of k, and then a repeat of step 107.
At step 111 the procedure reinitializes the wavelength w to the lowest wavelength 1.
At step 112, the procedure modifies the layered graph the same way as mentioned in step 103. Additionally, this step removes fiber cable links along the already found working route Wrk and backup routes Brkm of the kth solution of a request r (the virtual links (nli, nmi) ∀l along the already routes are not removed). This step is only visited if the previous steps (up to step 111) are not able to find exactly x+1 number of fiber cable link disjoint routes at the same operating wavelength w. When this step is visited for the first time (Immediately after step 111), the working route Wrk and backup routes Brkm are empty sets for 1≦m≦x.
At step 113, the procedure applies the modified Bhandari's procedure to find up to x+1 number of fiber cable link disjoint routes.
At step 114, among the found routes in Step 113, one of the routes is considered as a working route and stored in the set Wrk, corresponding wavelength w is recoded in Frk, and a set of fibers in which a wavelength Frk is available is recorded in a set Urk. The rest of the routes are considered as 1+1 dedicated backup routes and recorded into sets Brkm, corresponding wavelengths are recorded in Hrkm, and a set of fibers along which a wavelength Hrkm is available is recorded in a set Zrkm for 0<=m<=x.
At step 115, there is a check of whether all x+1 number of fiber cable routes are found so far. If the number of found routes is less than x+1, then the procedure follows step 116, otherwise the procedure follows step 118.
At step 116, there is a check of whether all wavelengths are taken into account. If a wavelength is still not considered, then the procedure follows step 117, otherwise the procedure follows step 118.
At step 117, the procedure increments a wavelength w, and repeats the step 111.
At step 118, the procedure checks whether all k potential solutions are found. If the number of found solutions is smaller than K, then the procedure follows step 119, otherwise the procedure follows the step 120.
At step 119, the procedure increments the k, and repeats step 117. At step 120, the procedure selects one of the K found potential solutions.
At step 121, the procedure finds the sharing factor of each wavelength w. The sharing factor of a wavelength is defined as the number of fiber cables on which the wavelength can be shared. If found working route Wrk and 1+1 dedicated backup routes Brkm of a request r are link disjoint to working routes Wr1k and Br1km for all r1εQnlinljqw, ∀nli, nlj, q, w, then the wavelength w on the qth fiber of the fiber cable link (nli, nlj) can be shared.
At step 122, the procedure arranges wavelengths according the descending order of the sharing factor. At step 123, the procedure selects a wavelength w from the top of the sorted pool of wavelengths in step 122.
At step 124 procedure modifies the layered graph. The procedure removes those fiber cable links along which wavelength w is not available on any of fibers confined within it. If a wavelength w is available on a fiber cable link, and it cannot be shared, then the procedure assigns a cost |N|*(|N|−1) to the fiber cable link. If a wavelength is available on a fiber cable link, and it can be shared, then the procedure assigns a unit cost to a fiber cable link. The procedure assigns a very negligible cost to all virtual links connecting nodes nli and nmi, ∀l, m. Finally, the procedure removes all the fiber cable links along the working route Wrk and backup route Brkm, where 1≦m≦x of the kth solution of a request r. The procedure also removes all fiber links along the already found shared routes Srkm of the kth solution, where 1≦m≦y. (the virtual links (nli, nmi) ∀l along the already found routes are not removed) This modification of a layered graph can be used to find routes that can maximize the sharing of allocated wavelengths in the network. When this step is visited for the first time (Immediately after step 123), the shared routes Srkm are empty sets for 1≦m≦y.
At step 125, the procedure finds up to y number of fiber cable link disjoint routes using the modified Bhandari's procedure, and records the found routes in sets Srkm, corresponding wavelengths in Trkm, and a set of fibers in which the wavelength Trkm is available in a set Orkm, where 1≦m≦y.
At step 126, the procedure checks whether all y routes are found. If less than y number of routes are found so far, then the procedure follows step 127, otherwise the procedure follows step 128.
At step 127, the procedure checks whether all wavelengths are taken into account. If any wavelength is still not taken into consideration from the sorted pool of wavelengths found in step 123, then the procedure follows step 123, otherwise the procedure follows step 128.
At step 128, the procedure checks whether all K potential solutions are taken into account so far. If any potential solution is still not taken into account, then the procedure follows step 120, otherwise the procedure follows step 129.
At step 129, the procedure finds a solution k′ out of K potential solution that require minimum number of novel wavelengths. For each wavelength w=Trk′m on the fibers qεOrk′m confined within the fiber cable links (nli, nlj)εSrk′m of the selected solution k′, the request ID r is recorded in the conflict sets Qnlinljqw.
At step 130, the procedure checks whether all requests are taken into account. If a solution for any request is still not found, then the procedure follows step 102, otherwise the process is terminated.
Referring now to FIG. 3, there is shown a flowchart of the 2-step-optimization procedure, in accordance with the invention, which is explained as follows.
At step 200, the procedure initializes a route Pm to an empty set, where 1≦m≦Max(x+1, y). Index m is initialized to 0. The first route P1 is initialized to Ik.
At step 201, the procedure finds the shortest route between source and destination nodes, and record the route in a set P1. At step 202, the procedure increments the index m.
At step 203, the procedure replaces each fiber cable link along the Pm routes in the modified layered graph by a single link directed towards the source node, and makes the length of each arc negative. Any virtual links (nli, nmi), ∀l, m along the routes are not changed.
At step 204, the procedure finds a shortest path between source s and destination d nodes in the modified layered graph.
At step 205, the procedure finds a shortest path between source s and destination d nodes in the modified layered graph. At step 206, the procedure records the found m+1 routes in sets P1 to Pm+1.
At step 207, the procedure step checks whether the number of routes found so far is equivalent to the requested routes. If the number of routes is not equivalent to the requested routes, then the procedure follows step 201, otherwise the procedure follows the step 207.
Lastly at step 208, the procedure returns the routes Pm, where m is the requested number of routes.
From the foregoing, it can be appreciated that the present invention provides a procedure to optimally configure survivable networks based on customer requirements. The inventive procedure is fast in that it finds the solution in time that is polynomial of the input size. The inventive procedure is quick, and results a solution in real time. Generalized for any required number of protection paths (any levels of survivability): The inventive procedure addresses the generalized routing and wavelength assignment problem with variable number of 1+1 dedicated and shared connections for the first time. Generalized for multi-cable and multi-fiber networks: The inventive procedure is applicable to multi-fiber networks with any distribution of fibers among given fiber cables. The inventive procedure is resource efficient in that it improves the wavelength utilization of networks. The inventive procedure is flexible in that it allows flexible setting to achieve different fairness levels of network resource utilization.
The foregoing is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. For example, those of ordinary skill in the art will recognize that multiple configurations for the optical processing path shown in FIG. 4 are possible to achieve the same signal transformation effect. It is to be understood that the embodiments shown and described herein are only illustrative of the principles of the present invention and that those skilled in the art may implement various modifications without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention.

## Claims

1. A joint optimization method for finding a routing and wavelength assignment for a given set of network traffic demands in a wavelength-division multiplexing network requiring variable number of dedicated and shared protections, said method comprising the steps of:
i) constructing with a processor a layered graph for finding fiber cable link-disjoint routes in a multi-fiber cable in the network;
ii) applying, jointly, a routing and first-fit wavelength assignment for finding x+1 number of fiber cable link-disjoint routes operating on different wavelengths in the layered graph;
iii) modifying the layered graph to maximize sharing of wavelengths;
iv) jointly applying routing and wavelength assignment based on maximum sharing factor to find y number of fiber cable link-disjoint routes in the layered graph;
v) finding working 1+1 dedicated connections and then shared connections, the connections being supported by one or more transponders provisioned at end nodes in the network;
vi) searching k different solutions of dedicated and shared connections operating on K different wavelengths;
vii) selecting one of said solutions requiring a minimum number of wavelength links; and
viii) through a modified Bhandari's procedure, finding link-disjoint routes in the layered graph by determining a shortest route between source and destination nodes, recording the route in a set P1 with an index m and replacing each fiber cable link along the Pm routes in the modified layered graph by a single link directed towards the source node, making a length of each arc negative, finding a shortest path between source s and destination d nodes in the modified layered graph and recording the found m+1 routes in sets P1 to Pm.

2. The method of claim 1, wherein said step i) comprises said layered graph being used for finding fiber cable link-disjoint routes in multi-fiber multi-cable networks with any distribution of fibers within fiber cables.

3. The method of claim 1, wherein said step ii) comprises constructing a layered graph starting from the lowest wavelength to the highest wavelength, and apply the modified Bhandari's procedure to find x+1 number of fiber cable link disjoint routes that require minimum wavelength links at a specific wavelength with found connections through this method operable on the same wavelength.

4. The method of claim 3, wherein said step ii) comprises finding x+1 number of fiber cable link disjoint routes in multiple iterations by constructing a layered graph at different wavelengths with found connections being operable on different wavelengths.

5. The method of claim 1, wherein said step iii) comprises assigning a cost to each fiber cable link for routing through fiber cable links within which a wavelength can be shared.

6. The method of claim 1, wherein said step iv) comprises based on the order of wavelengths that can be shared the most, a layered graph is modified, and y link disjoint routes are searched using the modified Bhandari's procedure for finding y number of fiber cable link disjoint routes requiring minimum new wavelength links.

7. The method of claim 1, wherein said step v) comprises finding working and 1+1 dedicated connections first, and then using routing information of the found working and 1+1 dedicated connections for finding shared connections such that the sharing of wavelengths can be maximized.

8. The method of claim 1, wherein said step vii) comprises by selecting a solution that requires minimum number of new wavelengths out of K potential solutions, the procedure maximizes the utilization of wavelength resources.

9. The method of claim 1, wherein said step i) comprises, for the layered graph, a fiber cable link representing a fiber cable connecting a pair of nodes, each fiber cable consisting of many fibers, each fiber consisting of certain number of wavelengths, and the layered graph being useable for finding fiber cable link-disjoint routes between a pair of nodes with any distribution of fibers, said constructing the layered being scalable as number of wavelengths increases in a network.

10. The method of claim 1, wherein said step ii) comprises modifying the layered graph starting from a lowest wavelength to a highest wavelength and applying the modified Bhandari's procedure to find exactly x+1 number of fiber cable link disjoint routes on a modified layered graph thus enabling finding exactly x+1 number of fiber cable link disjoint routes operable on a specific wavelength with minimum wavelength links.

11. The method of claim 1, wherein said step ii) comprises modifying the layered graph starting from a lowest wavelength to a highest wavelength, and applying the modified Bhandari's procedure to find up to x+1 number of fiber cable link-disjoint routes, wherein if exactly x+1 number of fiber cable link disjoint routes are not available, then finding remaining routes on a next wavelength by removing links along already found routes with found routes being operable on different wavelengths.

12. The method of claim 1, wherein said step iii) comprises assigning a cost to each fiber cable link for enabling sharing of wavelengths being maximized.

13. The method of claim 1, wherein said layered graph is modified in a descending order of a sharing factor of wavelengths, and then, using the modified Bhandari's procedure up to y number of fiber cable link-disjoint routes are searched, wherein if they number of fiber cable link-disjoint routes is not available at the same wavelength, then the remaining routes are searched by modifying the layered graph according to a next wavelength from a sorted pool of wavelengths and removing the links along from those already found working, backup, and shared routes, enabling finding y number of shared routes using minimum number of new wavelengths.

14. The method of claim 1, wherein said step v) comprises finding working and 1+1 dedicated fiber cable link disjoint connections at the same time in a first step, and shared connections separately in a second step, includes finding shared connections such that sharing of wavelengths can be maximized using those already found working and backup routing information in the first step.

15. The method of claim 1, wherein said step vi) comprises searching K potential working connections, x number of 1+1 dedicated connections, and y number of shared connections.

16. The method of claim 1, wherein said step vi) comprises enabling selecting a solution that requires minimum number of new wavelengths out of K potential solutions.