[ieee 2010 19th international conference on computer communications and networks ( icccn 2010) -...

6
Finding maximum reliable path in mesh networks under multiple failures Shengli Yuan , Balaji Raghavachari , Ankitkumar Patel * Corresponding author. Email: [email protected] Department of Computer and Mathematical Sciences, University of Houston – Downtown One Main St, Houston, Texas 77002, USA Email: [email protected], * [email protected] Department of Computer Science University of Texas at Dallas 800 West Campbell Road, Richardson, TX 75080-3021 ABSTRACT In this work, we study the NP-hard problem of finding the path of maximum reliability between two end nodes in mesh networks against simultaneous failures of multiple links. The links belong to shared risk link groups (SRLGs) that have arbitrary failure probabilities. We propose a novel algorithm to find the optimal path with semi-polynomial running time and prove its correctness. Keywords -- Network reliability; maximum reliable path; multiple failures; Shared Risk Link Group (SRLG). 1. INTRODUCTION With the recent advances in optical networking technology, a communication path is now capable of transporting traffic at data rate up to 100 Gbits/s or even 160Gbits/s [1][2][3]. To prevent service disruption and data loss, the reliability of the communication paths should be maximized. Such challenge has traditionally been tackled by various protection schemes in which a link-disjoint protection path is pre-computed and reserved for each working path [4][5][6]. If a single network link fails at any given time, protection schemes provide 100% recovery. However, various complex factors such as natural and man-caused catastrophes introduce the possibility that when a network failure occurs, multiple links fail simultaneously. This complex issue has long been overlooked by network operators. The network links that fail simultaneously caused by a common factor are said to belong to the same shared risk link group (SRLG) [7][8][9][10]. In the case of multiple failures, only a working and a protection path that are SRLG-disjoint can guarantee 100% restoration of the traffic [11]. However, the study in [12] proved that it is NP-hard to find SRLG- disjoint working and protection paths. Consequently, attempts were made to minimize the probability of simultaneous failures of the pair. Yuan et al. proved this problem also NP- hard and proposed heuristic algorithms for the special cases in which all SRLGs have equal failure probabilities [13][14]. Various heuristic solutions were proposed for the general case in which the SRLGs have different failure probabilities [15][16][17]. For the protection schemes, shared protection may be used to improve resource utilization but it further increases the complexity of network management [17][18]. In this study, we investigate ways to maximize the reliability of a communication path without protection. Even though the reliability of the path may be less than that of the paths using protection, we avoid the drawbacks of protection schemes, i.e., low utilization and management complexity. Communication paths without protection may still be satisfactory for regular network users, while the paths with protection are more suitable for users who demand the highest level of reliability and for mission-critical applications. The remainder of the paper is organized as follows. In Section 2, we define the maximum reliable path problem and review the existing solutions for the problem. In Section 3, we propose a novel algorithm with semi-polynomial running time and prove its correctness. We then conclude the study in Section 4. 2. PROBLEM DESCRIPTION AND EXISTING WORK The maximum reliable path problem is defined as follows. Given network G = (N, L, S, P s ) where N is the set of nodes, L is the set of links (assume they are bidirectional), and S is the set of SRLGs in the network, P s = {p 1 , p 2 , p 3 , …, p i , …p |S| } is the set of non-failure probabilities of each SRLG s i S and 0 < p i < 1, also given S l l L, where S l S is the set of SRLGs 978-1-4244-7116-4/10/$26.00 ©2010 IEEE

Upload: ankitkumar

Post on 24-Feb-2017

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

Finding maximum reliable path in mesh networks under multiple failures

Shengli Yuan†, Balaji Raghavachari‡, Ankitkumar Patel*

†Corresponding author. Email: [email protected] Department of Computer and Mathematical Sciences, University of Houston – Downtown

One Main St, Houston, Texas 77002, USA

Email: ‡[email protected], *[email protected] Department of Computer Science

University of Texas at Dallas 800 West Campbell Road, Richardson, TX 75080-3021

ABSTRACT

In this work, we study the NP-hard problem of finding the path of maximum reliability between two end nodes in mesh networks against simultaneous failures of multiple links. The links belong to shared risk link groups (SRLGs) that have arbitrary failure probabilities. We propose a novel algorithm to find the optimal path with semi-polynomial running time and prove its correctness.

Keywords --- Network reliability; maximum reliable path;

multiple failures; Shared Risk Link Group (SRLG).

1. INTRODUCTION

With the recent advances in optical networking technology, a communication path is now capable of transporting traffic at data rate up to 100 Gbits/s or even 160Gbits/s [1][2][3]. To prevent service disruption and data loss, the reliability of the communication paths should be maximized. Such challenge has traditionally been tackled by various protection schemes in which a link-disjoint protection path is pre-computed and reserved for each working path [4][5][6]. If a single network link fails at any given time, protection schemes provide 100% recovery.

However, various complex factors such as natural and man-caused catastrophes introduce the possibility that when a network failure occurs, multiple links fail simultaneously. This complex issue has long been overlooked by network operators. The network links that fail simultaneously caused by a common factor are said to belong to the same shared risk link group (SRLG) [7][8][9][10]. In the case of multiple failures, only a working and a protection path that are SRLG-disjoint can guarantee 100% restoration of the traffic [11]. However, the study in [12] proved that it is NP-hard to find SRLG-disjoint working and protection paths. Consequently, attempts

were made to minimize the probability of simultaneous failures of the pair. Yuan et al. proved this problem also NP-hard and proposed heuristic algorithms for the special cases in which all SRLGs have equal failure probabilities [13][14]. Various heuristic solutions were proposed for the general case in which the SRLGs have different failure probabilities [15][16][17].

For the protection schemes, shared protection may be used to improve resource utilization but it further increases the complexity of network management [17][18]. In this study, we investigate ways to maximize the reliability of a communication path without protection. Even though the reliability of the path may be less than that of the paths using protection, we avoid the drawbacks of protection schemes, i.e., low utilization and management complexity. Communication paths without protection may still be satisfactory for regular network users, while the paths with protection are more suitable for users who demand the highest level of reliability and for mission-critical applications.

The remainder of the paper is organized as follows. In Section 2, we define the maximum reliable path problem and review the existing solutions for the problem. In Section 3, we propose a novel algorithm with semi-polynomial running time and prove its correctness. We then conclude the study in Section 4.

2. PROBLEM DESCRIPTION AND EXISTING WORK

The maximum reliable path problem is defined as follows. Given network G = (N, L, S, Ps ) where N is the set of nodes, L is the set of links (assume they are bidirectional), and S is the set of SRLGs in the network, Ps = {p1, p2, p3, …, pi, …p|S|} is the set of non-failure probabilities of each SRLG si∈S and 0 < pi < 1, also given Sl l∈L, where Sl ⊆ S is the set of SRLGs

978-1-4244-7116-4/10/$26.00 ©2010 IEEE

Page 2: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

to which link l belongs, and there exists at least one SRLG si that contains more than one link, find one path P from source node s to destination node t such that P has the maximum reliability.

The reliability of a path is defined as follows. Let SP be the set of all SRLGs to which the links of path P belong. Then the reliability of P is:

rP = ∏∈ PP

i Ss

pi , pi ∈ Ps and pi is the non-failure

probability of SRLG Pis (Eq. 1)

In this study, we are only considering link failures and not node failures because nodal devices in modern transport networks often have built-in redundancies and are located in well-controlled facilities, which make them very much less likely to fail than the links do.

A single SRLG may contain multiple links while a link may belong to multiple SRLGs. However, we can transform a link belonging to multiple SRLGs into multiple links each belonging to a single SRLG without altering the reliabilities of the paths in the network. This is explained as follows.

Let the set of SRLGs to which l belongs be Sl = { ls1 , ls2 , …

, lis ,… } and |Sl | > 1. The non-failure probability of l is:

rl = ∏∈ ll

i Ss

pi , pi ∈ Ps , and pi is the non-failure

probability of SRLG lis (Eq. 2)

Now replace l with |Sl| concatenating links l1, l2, …, li, … ,

each belonging to a unique SRLG ls1 , ls2 , … , lis ,… from Sl,

as shown in Fig. 1. The reliability of li is the non-failure probability of l

is , i.e., pi . Thus the reliability of the combined

links l1, l2, …, li, … is p1×p2× …×pi×…, which is the same as rl. Also because there are no other links branching off from these links, a path going through one of the links must also go through all of them. Therefore their effects on the reliabilities of paths are the same as that of l. Consequently, without loss of generality, we assume for the remainder of the paper, all links each belongs to a single SRLG, i.e., | Sl | = 1 l∈L.

For networks with only single failures, finding the maximum reliable path is equivalent to the Minimum-Cost- Path problem and can be easily solved [19]. However, simultaneous multiple failures complicate the matter and make the task NP-hard [13][14]. Thus it is important to develop efficient algorithms to solve the problem.

Two heuristic solutions (HA-1 and HA-2) were developed in [19]. The first one is similar to Dijkstra’s Algorithm. In this

solution, during the process of choosing links for path P from node s to t, let SP be the set of SRLGs to which the known portion of P belongs, if the SRLG l

is of a link li is already in

SP, then higher preference is given to li because adding li to P does not introduce new SRLG to SP and lower P’s reliabilities. The complexity of the algorithm is O(|N|log|N|).

a. Link l between nodes n1 and n2 belonging to multiple

SRLGs: ls1 , ls2 , … , lis ,…

b. Multiple concatenating links each belonging to a single

SRLGs: l1 tols1 , l2 to

ls2 , … , li tolis ,…

Fig. 1. Transforming a link that belongs to multiple SRLGs into multiple links each belonging to a single SRLG.

The second heuristic solution iteratively runs the first

solution. In each iteration, all links belonging to one SRLG are given the highest preference. If the resulting path has a higher reliability than the one obtained in the previous iteration does, then the SRLG is retained for the remaining iterations. The complexity of this algorithm is O(|S||N|log|N|).

Based on the fact that the problem of finding the maximum reliable path is reducible to the Minimum Set-Covering problem [13], a heuristic solution (HA-2) was proposed in [20] which modified Chvatal’s O(log|N|)-approximation algorithm for the Set-Covering problem [21]. The complexity of this algorithm is O(|S|(|L|+|N|log|N|)). The simulations in [19] and [20] show that the algorithm HA-2 in [19] generates paths with superior reliability than the other two algorithms do.

Due to the NP-hardness of the problem, unless P = NP, there can be no solution that finds the optimal path with polynomial running time. For the special case in which all SRLGs have the same non-failure probabilities, an integer linear programming (ILP) formulation was developed in [13] and [14] which took hours to solve for connections between all node-pairs on 40-node networks. For the general case in which the SRLGs have arbitrary non-failure probabilities, two

n2 n1 l

{ ls1 , ls2 , … , lis ,…}

n2 n1 l1

{ ls2 }

l2 li { ls1 } { l

is }

Page 3: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

optimal algorithms (OA-1 and OA-2) were proposed in [19]. Their running time are exponential to the number of SRLGs of the network. Since in many mesh networks, the number of SRLGs is often much less than the number of nodes or the number of links, thus the two solutions may be feasible for deployment. The computer simulations in [19] reported running time of approximately half a minute to generate the optimal paths between all node-pairs on 40-node networks.

The first optimal algorithm OA-1 in [19] starts by generating all non-empty subsets of S. Then for each subset Sx in S, it computes the product of the non-failure probabilities of the SRLGs in Sx. It then sorts the subsets in the descending order of the products. Then starting from the first SRLG subset in the sorted list, the algorithm creates a sub-network that consists of all the nodes and only the links belonging to the SRLGs in that subset. It then runs a Minimum-Cost Path algorithm for the two end nodes s and t. If a path is obtained, then the algorithm returns the path and quits. Otherwise it goes to a new iteration with the next SRLG subset. Because this algorithm must first generate all non-empty subsets of S and sort them, the complexity is O(2|S|(|S|+|N|log|N|)).

The second optimal solution OA-2 in [19] excludes certain subsets of SRLGs from the sorting operation and further consideration, thus obtained a reduced running time of

O(( ||2 S - ||2sSS− - ||2

tSS− + ||2ts SSS −− )|N|log|N|) where Ss is the set

of SRLGs to which the links incident to s belong, and St is the set of SRLGs to which the links incident to t belong.

Both algorithms require obtaining all the subsets of a SRLG set, then computing the product of the non-failure probabilities of the SRLGs in each subset, and sorting the subsets based on the products. These operations lead to the exponential running time, even if in the subsequent operation, we may obtain the optimal path in the very first sub-network and quit the remaining ones.

Another algorithm (HA-3) was proposed in [20] to eliminate the need to first generate all the subsets. Instead, sorting is performed on the SRLGs rather than on the SRLG subsets, thus its running time is semi-polynomial to |S|. A SRLG subset is generated only when needed, so is the product of the non-failure probabilities of the SRLGs in the subset. However, the correctness of this algorithm can be proven only when the network satisfies a hard-to-verify condition. When used on other networks, this algorithm is treated as a heuristic solution.

3. SOLUTIONS AND PROOFS

In the first part of this section, we develop a novel algorithm to solve the Minimum k-Subset-Sums problem with polynomial running time. In the second part of section, we modify the algorithm to solve the maximum reliable path problem.

3.1. Solving the Minimum k-Subset-Sums Problem Problem definition: Given a set R of positive numbers in

sorted order (0 ≤ r1 ≤ r2 ≤ … ≤ rn ), and given an integer k: 0 < k < 2n , find the k nonempty subsets of R that have the least sums among all subsets of R.

This problem may appear similar to the NP-complete Subset Sum problem and the Knapsack problem [22]. A naïve solution is to generate all non-empty subsets of R then sort them based on their sums and output the k subsets with the minimum sums. However, because the number of non-empty subsets of R is 2|R| - 1, this approach has a running time that is exponential to |R| regardless the value of k. Instead, we develop a solution that finds the k subsets without generating all the subsets. The details are as follows:

Algorithm 3-1

Step 1: Create a binary heap B with a single subset {r1}. Step 2: Repeat the following steps k times: a. Remove and output the set T from B using the

Extract-Min operation. Let its sum be m and the maximum index of any element in it be j.�

b. If j ≠ n, add to the heap the subset T1 = T ∪ {rj+1} – {rj}, whose sum is m1 = m + rj+1 - rj .

c. If j ≠ n, add to the heap the subset T2 = T ∪ {rj+1}, whose sum is m2 = m+ rj+1.

Proof of correctness of Algorithm 3-1:

Following the algorithm, at the end of each iteration of Step 2, one set is removed from heap B and output while up to two new sets may be inserted into B. Thus at the end of the i-th iteration of Step 2, there are at most i+1 sets remaining in B. It is also easy to see that the sets are all unique, and the maximum number of sets ever generated and inserted into B is 1 + 2 + 4 +…+ 2n-1 = 2n -1 when k = 2n -1, which is the number of all non-empty subsets of R.

When i = 1, {r1} is removed and output, which is clearly correct. The remaining sets in B are {r1 , r2} and {r2} .

Now assume that up to the i-th iteration, this algorithm has correctly produced i minimum-sum sets. We argue that the

Page 4: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

(i+1)-th minimum-sum set must be among the sets currently in B. This is explained as follows.

Following Step 2.b or 2.c, when two new sets are inserted into B in a future iteration, their sums will be m1 = m + rj+1 - rj and m2 = m+ rj+1. From 0 ≤ r1 ≤ r2 ≤ … ≤ rn , we have m1 ≥ m and m2 ≥ m . Thus the sums of the new sets must be no lesser than the sum of at least one of the existing sets in B. Hence the (i+1)-th minimum-sum set must be among the existing sets, rather than any sets inserted into B in a future iteration.

Thus the algorithm correctly produces k nonempty subsets of R that have the least sums. □

The complexity of the Extract-Min operation in Step 2.a is O(logk). Hence the complexity of the entire algorithm is O(klogk), which is polynomial to k. Next, we are going to modify Algorithm 3-1 to solve the maximum reliable path problem. 1

3.2. Solving the Maximum Reliable Path Problem Here are the details of our solution:

Algorithm 3-2

Step 1: For every SRLG si ∈ S, compute the logarithm value ri = |logpi| where pi is the non-failure probability of SRLG si .

Step 2: Sort the logarithm values into a sequence r1, r2, … ri … r|S| such that r1 ≤ r2 ≤ …≤ ri ≤… ≤ r|S| .

Step 3: Create a binary heap B with a single subset {r1}. Step 4: line* line**

Repeat for 2|S|-1 times: a. Remove and output the set T from B using the

Extract-Min operation. Let its sum be m and the maximum index of any element in it be j.�

b. If j ≠ |S|, add to the heap the subset T1 = T ∪ {rj+1} – {rj}, whose sum is m1 = m + rj+1 - rj .

c. If j ≠ |S|, add to the heap the subset T2 = T ∪ {rj+1}, whose sum is m2 = m+ rj+1.

d. ST ← ∅ . For every ri in T, ST = ST ∪ {si} where si is the corresponding SRLG whose logarithm value of its non-failure probability is ri .

e. Remove all links in G whose SRLGs ∉ ST . run a Minimum-Hop-Count path PT between s and t. [23] Restore the links that were removed in line*. If succeed in obtaining PT

1 It is worth noting that, like many set problems, the Minimum k-Subset-Sums problem and Algorithm 3-1 may have a wide range of applications in areas besides network reliability, such as data mining.

return PT and quit.

Step 5: Output “No path exist” and quit;

Even though the first line in Step 4 states 2|S| -1 iterations, the loop may terminate earlier in line** once a path is obtained.

Proof of correctness of Algorithm 3-2:

Step 3 and Step 4.a, 4.b and 4.c are identical to the steps of Algorithm 3-1. Hence they generate the logarithm value set T with the minimum sum in each iteration of the loop in Step 4.

Let T = { rT1 , rT2 , …, rTi , …}. From Step 1, rTi = |logpTi| where pTi is the non-failure probability of SRLG sTi . Hence the product of the corresponding non-failure probabilities, pT1 , pT2 , …, pTi , … of the SRLG subset {sT1 , sT2 , …, sTi , …} is maximized.

The rest of the algorithm is the same as algorithms OA-1 of [19]. Thus the path obtained by this algorithm is the optimal path with the maximum reliability possible. □

The complexity of Step 1 is O(|S|); That of Step 2 is O(|S|log|S|); That of Step 3 is O(k(logk + |N|log|N|)) where k is a value between 1 and 2|S|-1. Hence the total running time is O(|S|log|S| + k(logk + |N|log|N|)). If a path is obtained early in the loop of Step 3, then the value of k is small and the algorithm terminates early. Otherwise k may approach 2|S| -1 and the algorithm takes longer to terminate. The worst case may occur when the maximum reliable path does not exist, or the optimal path consists of links belonging to many SRLGs.

There are some similarities between this algorithm and the optimal algorithms (OA-1 and OA-2) of [19]. They all go through the SRLG subsets in the descending order of the products of their non-failure probabilities. For each SRLG subset, the algorithms create a sub-network that consists of all the nodes and only the links belonging to the SRLGs in that subset. They then run a shortest-path algorithm or its variation for a path between the two end nodes s and t. If a path is obtained, the algorithms return the path and quit. Otherwise they go to a new iteration with the next SRLG subset.

However, this algorithm has a clear improvement over the two previous algorithms of [19] because it does not list all SRLG subsets and sort them before the main loop starts. Instead, it creates a new SRLG subset only when necessary. This is the reason that its running time can be much shorter while those of the two algorithms of [19] are constantly exponential to |S|. We expect that the average running time of Algorithm 3-2 is about half of those of (OA-1 and OA-2) of [19], which was verified by computer simulations. The

Page 5: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

algorithm is also superior to the algorithm (HA-3) of [20] in that it does not have any constraints on the network.

4. CONCLUSIONS

In this paper we studied the problem of finding the maximum reliable path between two end nodes under multiple failures. We developed a novel algorithm to solve the Minimum k-Subset-Sums problem with polynomial running time. We then modified the algorithm and solved the maximum reliable path problem. We proved that the result is optimal and the complexity is semi-polynomial.

Compared to the previous solutions, this new solution eliminates the need to always generate all SRLG subsets and to sort them. Instead, a SRLG subset is generated only when needed. An optimal path may be obtained well before all SRLGs have been generated. The average saving on running time over the previous optimal solutions is around 50%. In addition, this solution does not impose any constraints on the networks and can be used on any networks that have multiple link failures. Therefore this solution may be suited for practical deployment.

For future study on the subject, we may investigate more efficient solutions for certain special types of networks. We may also explore better heuristic solutions as well.

REFERENCES

[1] T. Wuth, M.W. Chbat and V.F. Kamalov, “Multi-rate (100G/40G/10G) Transport over Deployed Optical Networks,” Proceedings, Optical Fiber communication/National Fiber Optic Engineers Conference 2008, pp. 1-9. February, 2008.

[2] D.C. Lee, “100G and DWDM: Application Climate, Network and Service Architecture,” Proceedings, Optical Fiber communication/National Fiber Optic Engineers Conference, 2008, pp. 1-3. February, 2008.

[3] R. Akimoto, S. Gozu, T. Mozume, K. Akita, G. W. Cong, T. Hasama, and H. Ishikawa, “All-optical wavelength conversion at 160Gb/s by intersubband transition switches utilizing efficient XPM in InGaAs/AlAsSb coupled double quantum well,” Proceedings, 35th European Conference on Optical Communication (ECOC '09), pp. 1-2. September, 2009.

[4] L. Ruan and Z. Liu, “A Capacity Efficient Local Protection Scheme for Bandwidth Guaranteed Connections,” Proc. of the IEEE International

Conference on Communications 2007 (ICC’07), pp. 6368-6373, Glasgow, Scotland, June 2007.

[5] J. Wang, V. M. Vokkarane, R. Jothi, X. Qi, B. Raghavachari, and J. P. Jue, “Dual-Homing Protection in IP-over-WDM Networks,” IEEE/OSA Journal of Lightwave Technology (JLT), Special Issue on Optical Networks, vol. 23, no. 10, pp.3111-3124, Oct. 2005.

[6] Y. Wen and W. S. Chan, “ Ultra-Reliable Communication Over Vulnerable All-Optical Networks Via Path Diversity,” IEEE Journal on Selected Areas in Communications, vol. 23, no. 8, pp. 1572-1587 (2005)

[7] I. P. Kaminow and T. L. Koch, Optical Fiber Telecommunications IIIA, (Academic Press, 1997).

[8] S. Ramamurthy and B. Mukherjee, “Survivable WDM mesh networks,” Journal of Lightwave Technology, vol. 21, pp. 870–883 (2003).

[9] J. Strand, A. L. Chiu, and R. Tkach, “Issues for routing in the optical layers,” IEEE Communication Magazine, vol. 39(2), pp. 81–87 (2001).

[10] W. D. Grover, Mesh-based Survivable Transport Networks: Options and Strategies for Optical, MPLS, SONET and ATM Networking. (Prentice Hall PTR, 2003).

[11] P. Sebos, J. Yates, G. Hjalmtysson, and A. Greenberg, “Auto-discovery of shared risk link groups,” in Optical Fiber Communication Conference, 2001 OSA Technical Digest Series (Optical Society of America, 2001), paper WDD3.

[12] S. Yuan and J. P. Jue, “Dynamic path protection in WDM mesh networks under risk disjoint constraint,” Proceedings of IEEE Globecom 2004, pp. 1770–1774, Dallas, TX, November 2004.

[13] S. Yuan, S. Varma and J. P. Jue, “Path Routing for Maximum Reliability in Optical Mesh Networks,” Journal of Optical Networking (OSA), vol. 7, no. 5, pp. 449-466, May 2008.

[14] S. Yuan, S. Varma and J. P. Jue, “Minimum Color Problem for Reliability in Mesh Networks,” Proceedings, IEEE INFOCOM 2005, vol. 4, pp. 2658- 2669, Miami, FL, March 2005.

[15] C. Huang, M. Li and A. Srinivasan, “A Scalable Path Protection Mechanism for Guaranteed Network Reliability under Multiple Failures”, IEEE Transactions on Reliability, vol.56, Issue 2, pp. 254-267, June 2007.

[16] Q. She, X. Huang and J. P. Jue, “Maximum

Page 6: [IEEE 2010 19th International Conference on Computer Communications and Networks ( ICCCN 2010) - Zurich, Switzerland (2010.08.2-2010.08.5)] 2010 Proceedings of 19th International Conference

Survivability under Multiple Failures,” Proceedings, IEEE/OSA Optical Fiber Communication Conference 2006, Anaheim, CA, March 2006.

[17] L. Guo, “Heuristic Survivable Routing Algorithm for Multiple Failures in WDM Networks,” 2nd IEEE/IFIP International Workshop on Broadband Convergence Networks, BcN '07, Munich, Germany, May 2007.

[18] S. Yuan and J. P. Jue, “Shared protection routing algorithm for optical network,” Optical Networks Magazine, vol. 3(3), pp. 32–39 (2002).

[19] S. Yuan, “Reliable lightpath routing in optical mesh networks under multiple link failures,” Proceedings, IEEE International Conference on Networking, Architecture, and Storage, pp. 114-120, July 2009.

[20] S. Yuan, W. Waller and E. Delavina, “Heuristic algorithms for finding reliable lightpath under multiple failures,” Proceedings, IEEE International Conference on Ultra Modern Telecommunications, October 2009.

[21] V. Chvatal, “A greedy heuristic for the set-covering problem,” Mathematics of Operations Research, vol. 4(4), pp. 233-235 (1979).

[22] M. R. Garey, D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman.

[23] T. Cormen, C. Leiserson, R. Rivest, and C. Stein, Introduction to Algorithms, 2nd ed. (McGraw Hill, 2001).