1 Algorithms for Computing QoS Paths with...

23
1 Algorithms for Computing QoS Paths with Restoration Yigal Bejerano, Yuri Breitbart, Ariel Orda, Rajeev Rastogi, Alexander Sprintson Abstract There is a growing interest among service providers to offer new services with Quality of Service (QoS) guaranties that are also resilient to failures. Supporting QoS connections requires the existence of a routing mechanism, that computes the QoS paths, i.e., paths that satisfy QoS constraints (e.g., delay or bandwidth). Resilience to failures, on the other hand, is achieved by providing, for each primary QoS path, a set of alternative QoS paths used upon a failure of either a link or a node. The above objectives, coupled with the need to minimize the global use of network resources, imply that the cost of both the primary path and the restoration topology should be a major consideration of the routing process. We undertake a comprehensive study of problems related to finding suitable restoration topologies for QoS paths. We consider both bottleneck QoS constraints, such as bandwidth, and additive QoS constraints, such as delay and jitter. This is the first study to provide a rigorous solution, with proven guaranties, to the combined problem of computing QoS paths with restoration. It turns out that the widely used approach of disjoint primary and restoration paths is not an optimal strategy. Hence, the proposed algorithms construct a restoration topology, i.e., a set of bridges, each bridge protecting a portion of the primary QoS path. This approach guaranties to find a restoration topology with low cost when one exists. In addition to analysis, we test our approach also by way of simulations. The simulation results demonstrate that our proposed approximation algorithms identify QoS restoration paths whose cost is significantly smaller than those provided by alternative approaches. Index Terms Restoration, OoS routing, Approximation algorithms. I. I NTRODUCTION There is a growing interest among service providers to offer their customers new revenue-generating services with Quality of Service (QoS) guarantees. This is facilitated by current efforts to provide resource reservations and explicit path routing, e.g., MultiProtocol Label Switching (MPLS). A key requirement for such services is that they also be resilient to failures. This goal can be achieved by provisioning primary and restoration paths that satisfy the QoS constraints. The primary QoS path is used during normal network operation; upon failure of a network element (node or link) in the primary path, the traffic is immediately switched to a restoration path. To facilitate this seamless recovery to a restoration path in the event of a failure, it is necessary to reserve network resources (e.g., bandwidth) on both the primary and restoration QoS paths. Thus, since optimizing the utilization of network resources is an important requirement for service providers, it is crucial that the cost of the computed primary and restoration QoS paths be as small as possible, where the cost of a path is some measure related to the characteristics of its links, their degree of utilization, etc. QoS constraints occur naturally in a number of practical settings involving bandwidth and delay sensitive applications such as voice over IP, audio and video conferencing, multimedia streaming etc. For instance, voice (e.g., telephone conversations) requires a certain bandwidth allocation along the connection path (cur- rently, around 16–64 Kbs) and the end-to-end path delay to be below a certain threshold (typically between 100 and 300 ms). QoS constraints can be divided into bottleneck constraints, such as bandwidth and additive constraints, such as delay or jitter. Bell Labs, Lucent Technologies, email: [email protected] Bell Labs, Lucent Technologies, email:[email protected] Department of Electrical Engineering, Technion, Israel, email: [email protected] Bell Labs, Lucent Technologies, email: [email protected] Correspondence author, Department of Electrical Engineering, Technion, Israel, email: [email protected]

Transcript of 1 Algorithms for Computing QoS Paths with...

Page 1: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

1

Algorithms for Computing QoS Paths withRestoration

Yigal Bejerano, Yuri Breitbart, Ariel Orda, Rajeev Rastogi, Alexander Sprintson

Abstract

There is a growing interest among service providers to offer new services with Quality of Service (QoS) guaranties that are alsoresilient to failures. Supporting QoS connections requires the existence of a routing mechanism, that computes the QoS paths, i.e.,paths that satisfy QoS constraints (e.g., delay or bandwidth). Resilience to failures, on the other hand, is achieved by providing, foreach primary QoS path, a set of alternative QoS paths used upon a failure of either a link or a node. The above objectives, coupledwith the need to minimize the global use of network resources, imply that the cost of both the primary path and the restorationtopology should be a major consideration of the routing process.

We undertake a comprehensive study of problems related to finding suitable restoration topologies for QoS paths. We considerboth bottleneck QoS constraints, such as bandwidth, and additive QoS constraints, such as delay and jitter. This is the first study toprovide a rigorous solution, with proven guaranties, to the combined problem of computing QoS paths with restoration. It turns outthat the widely used approach of disjoint primary and restoration paths is not an optimal strategy. Hence, the proposed algorithmsconstruct a restoration topology, i.e., a set of bridges, each bridge protecting a portion of the primary QoS path. This approachguaranties to find a restoration topology with low cost when one exists.

In addition to analysis, we test our approach also by way of simulations. The simulation results demonstrate that our proposedapproximation algorithms identify QoS restoration paths whose cost is significantly smaller than those provided by alternativeapproaches.

Index Terms

Restoration, OoS routing, Approximation algorithms.

I. INTRODUCTION

There is a growing interest among service providers to offer their customers new revenue-generatingservices with Quality of Service (QoS) guarantees. This is facilitated by current efforts to provide resourcereservations and explicit path routing, e.g., MultiProtocol Label Switching (MPLS). A key requirement forsuch services is that they also be resilient to failures. This goal can be achieved by provisioning primaryand restoration paths that satisfy the QoS constraints. The primary QoS path is used during normal networkoperation; upon failure of a network element (node or link) in the primary path, the traffic is immediatelyswitched to a restoration path. To facilitate this seamless recovery to a restoration path in the event of afailure, it is necessary to reserve network resources (e.g., bandwidth) on both the primary and restorationQoS paths. Thus, since optimizing the utilization of network resources is an important requirement forservice providers, it is crucial that the cost of the computed primary and restoration QoS paths be as smallas possible, where the cost of a path is some measure related to the characteristics of its links, their degreeof utilization, etc.

QoS constraints occur naturally in a number of practical settings involving bandwidth and delay sensitiveapplications such as voice over IP, audio and video conferencing, multimedia streaming etc. For instance,voice (e.g., telephone conversations) requires a certain bandwidth allocation along the connection path (cur-rently, around 16–64 Kbs) and the end-to-end path delay to be below a certain threshold (typically between100 and 300 ms). QoS constraints can be divided into bottleneck constraints, such as bandwidth and additiveconstraints, such as delay or jitter.

Bell Labs, Lucent Technologies, email: [email protected] Labs, Lucent Technologies, email:[email protected] of Electrical Engineering, Technion, Israel, email: [email protected] Labs, Lucent Technologies, email: [email protected] author, Department of Electrical Engineering, Technion, Israel, email: [email protected]

Page 2: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

2

QoS routing has been the subject of several recent studies and proposals (see, e.g., [3], [13], [15], [16] andreferences therein). However, none of the prior studies on QoS routing consider the problem of provisioningQoS paths with restoration. Similarly, path restoration and routing over alternate paths has also attracted alarge body of research (see, e.g., [7], [8], [9], [10], [11]). Most of the proposed solutions, however, consideronly bottleneck QoS constraints. The few studies that do consider additive constraints, focus on heuristicapproaches and do not provide proven performance guarantees.

Bottleneck QoS constraints can be efficiently handled by pruning infeasible links. However, additive QoSconstraints are more difficult to handle. Indeed, the basic problem of finding an optimal path that satisfiesan additive QoS constraint is

���-hard [5]. Moreover, it turns out that, in the presence of additive QoS

constraints, the widely used approach of disjoint primary and restoration paths is not an optimal strategy.A better solution is to provide a restoration topology, i.e., a set of bridges, with each bridge protecting aportion of the primary path. The advantage of the disjoint paths strategy is its ability to switch promptlyfrom the primary path to the backup path in the event of a failure. While a restoration topology requiresmore sophisticated switching with a proper signaling mechanism, it has several advantages over the disjointpaths strategy. First, it provides a cheaper solution in terms of resource consumption. Second, it may find asolution when one does not exist for the disjoint paths strategy [10]. Third, a restoration topology strategyuses fewer backup links upon a failure, which facilitates more efficient sharing of backup bandwidth [9].Finally, the restoration topology strategy enables the network to recover from a failure by simply activatinga local bridge, rather than switching to a completely new path.

Accordingly, this study investigates the problem of provisioning primary and restoration paths that satisfyQoS constraints. Since this problem is

���-hard, we present solutions that are guaranteed to be within a

certain factor of the optimum. The paper makes two major contributions. First, we address the issue of linksharing by different bridges, which complicates the process of finding the set of optimal bridges, and weprove that there is an optimal restoration topology in which each link is shared by at most two bridges, bothin directed and undirected graphs. This enables us to identify restoration topologies whose cost is at most �times more than the optimum. The second contribution is the novel concept of adjusted delay, which allowsus to represent the set of bridges that compose a restoration topology as a single walk1 between the sourceand the destination nodes. This concept makes it possible to adapt standard schemes such as Bellman-Ford’sShortest Path algorithm [12] for identification of restoration topologies. To further illustrate the effectivenessof our proposed solutions, we conduct some simulation experiments. The simulation results demonstrate thatour proposed algorithms perform well in practice, and in a number of cases, return a restoration topologyeven when prior approaches fail to do so.

The remainder of the paper is organized as follows. In Section II, we present the network model andformulate the main problems considered in this paper. In Section III, we discuss a fundamental propertyof optimal restoration topologies, namely, the sharing of links by several bridges. In Section IV, we in-troduce the basic concepts of adjusted delay and feasible walk. In Section V, we provide approximationschemes for provisioning of the restoration topologies. In Section VI, we extend our results for directednetworks. Simulation results are presented and discussed in Section VII. Finally, conclusions are presentedin Section VIII.

II. MODEL AND PROBLEM FORMULATION

In this section, we describe the network model and the two problems addressed in this paper. For sim-plicity of exposition, we use the terms bandwidth and delay requirements in order to generically refer tobottleneck QoS constraints and additive QoS constraints, respectively.

A. The Network ModelWe respesent the network by an undirected graph ����� ��� , where � is the set of nodes and � is the

set of links. We denote by � and � the number of network nodes and links, respectively, i.e., � ��������In contrast to a path, a walk may include loops.

Page 3: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

3

and � � ����� . An ������� -walk is a finite sequence of nodes � ���� ��!�"#$!&%'#()()(*��+��!-,&� , such that, for.0/�1�/325476, �8!-9:$!-9<;=%��?>@� . Here,

2 �A� �B� is the hop count of � . Note that nodes and links may appearin a walk several times. An ������� -path

�is an ������� -walk whose nodes are distinct. The subwalk (subpath)

of � (�

) that extends from !C9 to !ED is denoted by ��FHG:IKJ GKL�M (� FHGNIKJ GKL�M ). Let �3% be a �K!O�PQ� -walk and �SR be a�8PT$UV� -walk; then, ��%TWX�SR denotes the �8!Y$UV� -walk formed by the concatenation of �Z% and �[R .

Each link \?>]� offers a bandwidth guarantee ^E_ (which is typically the available bandwidth on \ ), and adelay guarantee `a_ . The bandwidth b5�K�c� of a walk � is identical to the bandwidth of its worst link, i.e.,b5�8�c�d�cegfihj_lkEmonC^ _8p . The delay q@�8�c� of a walk � is the sum of the QoS requirements of its links, i.e.,q@�8�c�r�ts _lkEm `&_ .

In order to satisfy QoS constraints, certain resources such as bandwidth and buffer space must be reservedalong QoS paths. In order to optimize the global resource utilization, we need to identify QoS paths thatconsume as few network resources as possible. Accordingly, we associate with each link \ a nonnegativecost u'_ , which estimates the quality of the link in terms of resource utilization. The link cost may dependon various factors, e.g., the link’s available bandwidth and its location. The cost v��8�c� of a walk � �n-!w"x#()()(*$!-,yp is defined to be the sum of the costs of its links, i.e., vz�K�c�{�|s ,w}~%9<��" u FHGNIKJ GNI�� � M .

In order to model networks with nodes connected by asymmetric or unidirectional links, we also considerdirected network graphs in this paper (see Section VI). For instance, in such networks, for a pair of connectednodes �8!C9$!xDE� , the bandwidth provisioned on the link in the direction from !�9 to !ED may be much larger thanthe allocated bandwidth in the opposite direction. In addition, the delay and cost characteristics of link�8!-9:$!EDE� may be very different from those of link �8!#DC$!-9K� .B. QoS paths

A fundamental problem in QoS routing is to identify a minimum cost path between a source � and adestination � that satisfies some delay and bandwidth constraints. Bandwidth requirements can be efficientlyhandled by simply pruning infeasible links from the graph, i.e., links \ whose bandwidth ^#_ is lower than theconstraint. Thus, in the rest of the paper, we only consider delay requirements. Accordingly, the fundamentalproblem is to find a minimum cost path that satisfies a given delay constraint. This can be formulated as theRestricted Shortest Path problem.

Problem RSP (Restricted Shortest Path): Given a source node � , a destination node � and a delay con-straint �` , find an ������� -path �� such that

1) q@� �� � / �` , and2) v�� �� � / v�� � � for every other ������� -path

�that satisfies q@� � � / �` .

In general, Problem RSP is intractable, i.e.,���

-hard [5]. However, there exist pseudo-polynomial solu-tions, which give rise to fully polynomial approximation schemes2 (FPAS), whose computational complexityis reasonable (see [4], [6], [12]). The most efficient algorithm, presented in [12], has a computational com-plexity of �o���t�]� %�r�������r�i��� �@��� , and computes a path with delay at most �` and cost at most � 6 ��� � timesthe optimum. We refer to this algorithm as Algorithm RSP.

C. Bridges and a Restoration TopologyAs mentioned earlier, our study focuses on provisioning QoS paths with restoration. The QoS path that is

used during normal network operation is referred to as the primary path. Upon failure of a network element(node or link) in the primary path, the traffic is immediately switched to a restoration path. Thus, we requirethat in addition to the primary path, the restoration paths also satisfy the delay constraint �` . In this paper,we primarily focus on link failures, but our results can be easily extended to deal with node failures by usingstandard node splitting techniques (see, e.g., [17]).�

A Fully Polynomial Approximation Scheme (FPAS) provides a solution whose cost is at most ���~����� times more than the optimum with atime complexity that is polynomial in the size of the input and ����� .

Page 4: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

4

s 1 v 2 v 3 v 4 v 5 v 6 v 7 v 8 v 10 v 9 v t

1 B

2 B

3 B

4 B

5 B

6 B

Fig. 1. An example of a network. The delay of all links is �N� , except for bold links whose delay is � .A common approach for path restoration is to provision two disjoint paths that satisfy the delay constraint.

However, as we illustrate below (see also [10]), in some cases, such disjoint paths do not exist, although itis possible to provision a primary path with a set of restoration paths. Consider the network depicted inFig. 1. Here, the delay of all links is

6)., except for the links marked by bold lines, whose delay is

6. The

only two disjoint paths between the source node � and the destination node � are� %���nw��$!&%�$!-�)$!C�)$!C�#$!C #�� p

and� R¡�¢nw��$!CR#$!C£#$!C¤)$!w¥x$!&%8")�� p . For a delay constraint �`z��� . , � % and

� R cannot be used as primary andrestoration paths, because q@� � %��¦��q§� � R��¨�|©ª©z«Z� . . However, it is possible to provision a primary path�� and a set of restoration paths that satisfy the delay constraint �`¬�B� . . Specifically, we use the primarypath �� �|nw��$!&%�$!CR##()()(­�!®%8"#�� p and restoration paths n �� %�x()()(­ �� ¤xp defined as follows. Upon failure of links���$!&%�� or �K!®%�$!CR'� we use restoration path �� %¯�B°¨%�W �� F�G � J ±²M with q@� �� %��¯� 6#³

, while upon failure of link�8!CR#$!C£'� path �� R � �� Fµ´�J G � M Wd°�RrW �� F�GN¶$J ±²M with q§� �� R��X� 6#·is used. Similarly, we construct restoration paths�� £)#()()(* �� ¤ . As demonstrated in the example above, a restoration path comprises of portions of the primary

path and a bridge, which serves as a backup for the failed segment of the primary path. For example, inFig. 1, the restoration paths �� % and �� R include the bridges °?%{�¸nw��$!wREp and °�R?�|n-!®%��!C�)p , respectively.

Definition 1 (Bridge for a link failure): Let �� �¹nw�5�º!w")#()()(Q����»!C,ap be a QoS path and �� FHGNIKJ GKL¼M be asubpath of �� . A path ° between !w9½> �� and !EDV> �� that has no common links with �� F�GNI¾J GKL�M is referred to asa bridge. We say that bridge °[�|n-!w9:#()()(*$!ED#p protects the subpath �� F�GNI¾J GKL�M of �� .

Recall that each restoration path must satisfy the delay constraint �` . This implies that the delay q@�K°X� ofa bridge ° must also be constrained. Specifically, the delay of a bridge °¦9{�ºnw�x9:#()()(*��N9p must be at mostq@� �� Fl´8I¾J ±<I�M8� � �` 4 q§� �� � , where �� Fµ´�I�J ±<IiM is the subpath of �� protected by ° . We denote the quantity �` 4 q§� �� �by ¿ . Clearly, for larger values of ¿ , it is possible to find cheaper bridges °¦9À�Ánw�x9#()()(*��N9�p that satisfyq@�8°+9¾� / q@� �� Fµ´�I�J ±<I�M8� � ¿ .

A set of bridges that provides a restoration path for the failure of any link \Â> �� is referred to as arestoration topology.

Definition 2 (Restoration topology for link failures): Let �` be a QoS constraint and �� � nw� �!w")x()()(*$!-,�� � p be a QoS path that satisfies �` (i.e., q@� �� � / �` ). Then, a restoration topology à for( �� �` ) is a set of bridges n-°?%'$°�R)#()()(*�°�Ä�p such that:

1) for each bridge °�9Q��nw�x9#()()(*��N9�p , it holds that q@�K°�9¾� / q§� �� Fµ´�I�J ±<I�M�� � �` 4 q@� �� � , and2) for each link \X> �� , there exists a bridge °�9r�ºnw�x9:#()()(*��N9p that “protects” \ , i.e., \ is included in the

subpath �� Fµ´�I¾J ±<I²M of �� protected by °�9 .We refer to à as a feasible restoration topology, in order to emphasize that each restoration path satisfies

the delay constraint �` .Let �z�KÃ�� be the set of links that belong to bridges of à , i.e., �z�KÃ��d�ºnC\ � \?>Å°{9N$°+9¦>ÅÃÆp . The cost of

a restoration topology is defined as the total cost of links in �z�KÃ�� , i.e., vz�¾Ã��¡� s _lk#Ç F�ÈÉM u'_ . Note that thecost of each link is counted only once, even if it belongs to several bridges. We denote by � ÃÊ�ª�Ë� �o�¾Ã��-� thenumber of links in the restoration topology.

We seek restoration topologies that minimize the usage of network resources. Since the cost of a link isa measure of its desirability for routing (with lower cost links being more desirable), our goal is to find a(feasible) restoration topology à with minimum cost vz�¾Ã�� . We will denote by �ÍÌÏÎ the minimum cost

Page 5: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

5

of a restoration topology for � �� �`®� . Note that, depending on how costs are assigned to links, our approachenables a wide range of restoration topologies to be selected. For example, associating unit costs with alllinks would translate into computing restoration topologies with a minimum number of links. Also observethat in an optimal restoration topology, the subpaths of �� protected by two bridges °r9 and °TD are not nested,one within the other. Thus, for any two bridges °{9Q�|nw�x9:#()()(­��N9p and °TDX��nw� D)#()()(*��8D-p in à , if �x9 precedes� D in �� then ��9 also precedes ��D in �� , and vice versa. For clarity of presentation, we assume that the bridges inà are enumerated such that the source �)9 of bridge °�9 is either identical to or a predecessor of the destination�N9i}~% of bridge °+9i}~% in �� .

D. Problem StatementWe are now ready to formulate the two problems that we consider in this study. The first problem seeks

to compute a suitable restoration topology for a given QoS path.Problem RT (Restoration topology for a QoS Path): Given an ������� -path �� and a QoS constraint �` , such

that q@� �� � / �` , find a minimum cost restoration topology à for � �� �`®� .Next, we consider the problem of provisioning a QoS path with a restoration topology.Problem P+RT (QoS Path and Restoration topology): Given a source � , a destination � and a QoS con-

straint �` , find an �������� -path �� that satisfies q@� �� � / �` and a restoration topology à for � �� �`®� such that theirtotal cost vz�½�� � � v��KÃ�� is minimum.

Each of the above problems, namely RT and P+RT, includes Problem RSP as a special case; hence, theyare both

���-hard. Furthermore, as discussed below, in most cases we cannot provide an efficient solution

without violating the delay constraint in the restoration paths. Accordingly, we introduce the followingdefinition of �8Ц$ѽ� -approximations.

Definition 3 ( ��Ð{$ѽ� -approximation): For constants Ð and Ñ , an ��Ð{$ѽ� -approximate solution to, eitherProblem RT or Problem P+RT is a solution, for which:

1) the cost is at most Ð times more than the optimum;2) the primary path satisfies the delay constraint;3) each restoration path violates the delay constraint by a factor of at most Ñ .

E. Our resultsIn the following table, we summarize the approximation ratios that we obtain for the above two problems.

Below, � is a constant that captures the trade-off between the quality of the approximations and the runningtime of the algorithms. Specifically, the time complexity of the algorithms is proportional to %� ; thus smallervalues of � yield better approximate solutions at the expense of higher running times.

Problem Undirected DirectedRT ��V(a� 6 �Å� �� 6 � ��V(a� 6 �]� ������P+RT ��©Ò(a� 6 �]� ������ ��©Ò(a� 6 �]� �' ©&�

The solution of Problem P+RT is the main contribution of this paper. We emphasize that our solutionsmay violate the delay constraint only for restoration paths, while the primary paths always satisfy the QoSconstraints. Therefore, such delay violations have no effect during normal network operation. Moreover,many time-sensitive applications can tolerate short-term delay violations (until the failed link is repaired),e.g., by way of buffering.

III. PROPERTIES OF RESTORATION TOPOLOGIES

Finding an optimal restoration topology is a complicated problem due to the fact that bridges may sharelinks. However, in this section we establish the existence of an optimal restoration topology in which the

Page 6: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

6

4 P P ˆ

k s k t 1 s 1 t

3 P 1 P 2 P

v

v B 1 v k B

Fig. 2. Node Ó is shared by bridges ÔjÕ�QÖ�× �ªØ × � and ÔyÕÙTÖ�×~Ú Ø × ¶ .number of appearances of a node or a link is bounded by � . This bound is then used to obtain an approximatescheme within a factor of �V(a� 6 �Å� � of the optimal solution.

Lemma 1: Given an undirected graph � , a delay constraint �` , an ������� -path �� , q@� �� � / �` , and a restora-tion topology à for � �� +�`®� , there exists a restoration topology �à for � �� +�`a� such that vz� �Ã�� / v��KÃ�� , andeach node !�> �à or link \Û> �à is included in at most two bridges.Proof: Let �à be a restoration topology for � �� �`®� such that �z� �ÃÂ�XÜ3�z�KÃ�� and � �Ã]� is minimum. We provethat each node of �à is included in at most two bridges.

By way of contradiction, let n-° G % �° GR #()()(*$° GÝ p , ÞSߺ© be the set of bridges of �à that contain ! , sortedaccording to their indexes. Since � �Ã]� is minimum, it follows that the subpaths �� Fµ´ � J ± � M and �� Fµ´ Ù J ± Ù M of ��protected by bridges ° G % and ° GÝ , respectively, are disjoint (i.e., ��% is a predecessor of � Ý in �� ), otherwise wecan omit from �à the bridges ° GR #()()(Q$° GÝ }~% . We denote the subpaths nw��%�#()()(Q$!~p and n-!Y#()()(*��$% p of ° G % by� % and

� R , respectively (see Fig. 2). The subpaths nw� Ý #()()(Q$!~p and n-!Y#()()(*�� Ý p of ° GÝ are denoted by� £ and� � , respectively.

The delay of each bridge ° exceeds the delay of the subpath of �� protected by ° by at most ¿ , i.e.:

q@� � %�� � q§� � R'� / q@� �� Fl´ � J ± � M � � ¿q@� � £'� � q@� � �'� / q@� �� Fl´ Ù J ± Ù M�� � ¿It is easy to verify that one of the following two conditions must hold:

q@� � %�� � q§� � £'� / q@� �� Fl´ � J ± � M � � ¿q@� � R'� � q@� � �'� / q@� �� Fl´ Ù J ± Ù M � � ¿If the first condition holds, then the substitution of ° G % in �à by

� %*W � £ yields a valid restoration topologywith fewer links than in �à which contradicts our assumption that � �ÃÊ� is minimum. Note that this substitutionyields a restoration topology with fewer links even if

� R has common links with� £ or

� � . Similarly, we canshow a contradiction if the second condition holds.

We thus conclude that each node !5> �à is shared by at most two bridges. It follows that each link \+> �Ãis also shared by at most two bridges.

In Section VI, we derive a similar bound of 2 on the degree of sharing for each link in a directed net-work graph. But first, in the following two sections, we focus on developing approximation algorithms forProblems RT and P+RT for the undirected graph scenario.

IV. ADJUSTED DELAY AND FEASIBLE WALK CONCEPTS

In this section, we introduce the basic concepts of adjusted delay and feasible walk, which lay the foun-dations for our efficient approximation algorithms for Problems RT and P+RT, presented in Section V.

A. A Simple AlgorithmIn order to set the stage for the concept of adjusted delay, we first present a simple algorithm for Prob-

lem RT. The algorithm, at a high level, consists of the following steps. First, we compute for each node pair�8!-9:$!EDE� in �� , the cheapest bridge ° F 9 J D M �cn-!-9:#()()(*�!xD#p whose delay is at most q@� �� FHG:IKJ GKL¼M � � ¿ . For this endwe delete all the links of the path �� from � and apply Algorithm RSP [12] to the resulting graph. Next, we

Page 7: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

7

construct a restoration topology by selecting a subset of bridges n-°dF 9 J D M�p such that each link of �� is protectedand the total cost is minimum. To achieve this, we construct an auxiliary directed graph à� whose nodes areessentially the nodes of �� . Further, for each link �K!w9:�!C9<;=%��X> �� we add to à� a link �8!C9l;=%'$!C9¾� and assign it azero cost. Also, for each pair �8!w9:�!xD'� of nodes of �� , such that á« 1 , we add to à� a link \+�â�8!C9N�!xD'� whosecost is identical to the cost of the bridge ° F 9 J D M . We now show that each ������� -path in à� corresponds to a fea-sible restoration topology. Consider an ������� -path

�in à� , and let ã be the set of bridges that correspond to

links in�

. Consider two successive bridges °r9*�|nw�#9��N9p and °�9l;=%r��nw�x9<;=% ��N9<;=% p in ã . Note that �x9<;=% eitherprecedes �N9 or else coincides with ��9 , while ��9<;=% succeeds ��9 in the path �� . This ensures that every link in ��is protected by a bridge, and thus ã corresponds to a feasible restoration topology. Hence, a near-optimalrestoration topology can be determined by finding the shortest ������� -path in à� . Specifically, Lemma 1 andthe fact that Algorithm RSP returns a � 6 ��� � -approximation for each °ÀF 9 J D M , jointly imply that a shortest pathalgorithm (run on à� ) provides a ��V(a� 6 �]� �� 6 � -approximate solution.

The above algorithm, while conceptually simple, is computationally expensive, because it applies Al-gorithm RSP [12] for each pair of nodes in �� . Since the time complexity of the RSP algorithm is�o���t�Ê� 6-ä �¯�|�����r�i��� �Æ��� , it requires a total of �o���t� £ � 6-ä �¯�Z�i���r����� �§��� time. In the following sec-tions, we describe Algorithm RT, which employs similar ideas, but whose computational complexity iscomparable to that of Algorithm RSP.

B. The Adjusted Delay ConceptThe algorithm presented in the previous section exploited the relationship between the shortest path in an

auxiliary graph and the restoration topology. In this section, we use this idea again, but for devising a moreefficient algorithm. We construct a directed auxiliary graph �Íå from � by reversing each link \Ï> �� andassigning it a zero cost. We denote by �� å , the path in � å formed from �� by reversing its links. In addition,we also substitute each link \X�æ�8PT$!y�Í>7�ç \ ä> �� by two directed links \�%Ò�¹�KPT$!y� and \iR¯�æ�8!Y$P=� suchthat u�_ � �èu�_ � �¢u'_ and `&_ � �è`&_ � �è`&_ . Clearly, each ������� -walk in the auxiliary graph �Íå corresponds to aset of bridges that protects each link \�>��� . For example, Fig. 3 depicts the auxiliary graph for the networkdepicted in Fig. 1 and the primary path �� �»nw��$!&%'$!CR##()()(*�� p . The walk � �ºnw��$!wR#$!&%'$!-�)$!C£##()()(*�� p inauxiliary graph corresponds to a set of bridges n-°À%'x()()(*$°�¤xp . In general, however, as explained below, notevery ������� -walk in the auxiliary graph corresponds to a feasible restoration topology, i.e., one that satisfiesthe delay constraint.

One of the key contributions of this study is an efficient method for verifying, during its construction,whether a given walk represents a feasible restoration topology. This method is used as a basic buildingblock in our algorithm, and enables us to find a low-cost feasible restoration topology. In order to identify awalk in �Ïå that corresponds to a feasible restoration topology, we introduce the notion of adjusted delay fora walk � in � å .

Consider a walk � �cnw�Ò�ZPO"##()()(Q$P Ý }~% $P Ý #()()(*�� p in � å that defines a set ãé�cn-°�9­�cnw�#9#()()(*��N9�p&p ofbridges, and let

� 9 be the restoration path obtained by activating the bridge °¦9 ; thus,� 9Q� �� Fµ´�J ´8I�MxWT°+9EW �� F�±<IKJ ±²M .

We refer to nodes �)9 and �N9 as the start-point and termination-point of bridge °r9 , respectively. Recall that abridge °+9 satisfies the delay constraint only if q§�8°r98� / q§� �� Fµ´�I¾J ±<I²M � � ¿ , or, equivalently,

q@� � 9 Fµ´�J ±<I�M � / q@� �� Fµ´�J ±<I�M � � ¿5ê (1)

Furthermore, every subwalk ��Fµ´�J ëEM of � corresponds to a subset ã¨å of complete bridges in ã and, possibly,a subpath of an additional bridge °½Dz>ìã . The adjusted delay àq§�8� Fµ´�J ëEM � of the walk � Fµ´�J ëEM maintains thefollowing invariant: if all the bridges in ã?å satisfy the delay constraint, then àq@�8� Fl´NJ ëxM � represents the delaybetween the source node � and the node P§>Æ°ÛD along

� D , i.e., àqÆ�8� Fl´NJ ëxM �r��q@� � D Fl´NJ ëxM � . Otherwise, if thereis a bridge in ã¦å that does not satisfy the delay constraint, àq§�K� Fµ´�J ëEM � is set to infinity, thus indicating that therestoration topology formed by the walk � Fµ´�J ëEM is infeasible. Thus, by applying Condition (1), the adjusted

Page 8: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

8

s 1 v 2 v 3 v 4 v 5 v 6 v 7 v 8 v 10 v 9 v t

1 B

2 B

3 B

4 B

5 B

6 B

Fig. 3. An auxiliary graph for the network depicted on Fig. 1.

s t 3 u 2 u 4 u v

1 B

1 u

a B 2

b B 2

2 1

5

1

Fig. 4. An example of a walk in the auxiliary graph í*î .delay enables us to check easily whether bridge °ÛD satisfies the delay constraint, when its termination-point�8D is reached.

The adjusted delay àq@�8�c� of a walk � ��nw���ïPO"E#()()(­$P Ý }~% �P Ý #()()(*�� p is calculated in a recursivemanner. The adjusted delay of an empty walk is zero, that is àq§�Nnw��pw�X� . . Now, let us turn to compute theadjusted delay of ��Fl´NJ ë Ù M and suppose that we have already calculated the adjusted delay of the sub-walk��Fµ´�J ë Ù¼ð � M . Let qâ� àq@�8�3Fl´NJ ë Ù¼ð � M�� � `jF�ë Ù¼ð � J ë Ù M , where `�F�ë Ù¼ð � J ë Ù M is the delay of the link �KP Ý }~%$$P Ý � . Generallyspeaking, the adjusted delay àq@�8� Fl´NJ ë Ù M ���æq , except for the case when P Ý > �� . In this case, a specialprocedure is required for verifying if node P Ý is the termination-point of a bridge and whether the newlyformed bridge satisfies the delay constraint. Recall that P Ý > �� is not necessarily a termination-point of abridge, since a bridge may have several common nodes with the primary path. For instance, in Fig. 4, bridge°�R comprises of the two segments °rRNñ and °�RNò , and node PY�§> �� is not a termination-point of a bridge.However, if for link �8P Ý $P Ý ;=%¼� of � , it holds that �8P Ý $P Ý ;=%¼�¨> �� å , then P Ý must be the termination-point ofa bridge since a bridge cannot share links with the primary path. Recall that �� å >Ê� å is a path from path ��by reversing its links. As illustrated in Fig. 4, node PQR must be the termination-point of the bridge °À% , sinceits successor node in the walk, node P=£ , is also included in �� .

Based on the above observations, the adjusted delay of a walk ending at node P Ý > �� is defined as follows.(Below, qA� àq@�K� Fµ´�J ë Ù¼ð � M � � ` F�ë Ù¼ð � J ë Ù M ).ó Case 1: If P Ý }~%Íô> �� , P Ý > �� and qõ«tq§� �� Fµ´�J ë Ù M8� � ¿ , then node P Ý cannot be the termination-point

of a valid bridge and it may only be an internal node of a bridge. Thus, àq@�K� Fµ´�J ë Ù M �r�tq .ó Case 2: If P Ý }~%Vô> �� , P Ý > �� and q / q@� �� Fµ´�J ë Ù M � � ¿ then node P Ý may be either the termination-pointor an internal node of a bridge. As a result, since P Ý may be the starting-point of a new bridge, we setàq@�8�3Fl´NJ ë Ù M����e�f�hOnCq@� �� Fµ´�J ë Ù M8�'$qÂp .ó Case 3: If �8P Ý }~% $P Ý ��> �� å , and àq@�K� Fµ´�J ë Ù¼ð � M � / q@� �� Fµ´�J ë Ù¼ð � M � , then it follows that node P Ý is not atermination-point of a bridge and all the bridges included by the walk satisfy the delay constraint. SinceP Ý may be the starting-point of a new bridge, its adjusted delay àq§�K� Fµ´�J ë Ù M �r��q@� �� Fl´NJ ë Ù M � .ó Case 4: If �8P Ý }~% $P Ý �¯> �� å , and àq@�8� Fl´NJ ë Ù¼ð � M �¯«¢q@� �� Fµ´�J ë Ù¼ð � M � � ¿ , then it follows that, if node P Ý }~%is the termination-point of a bridge (that is, the predecessor of P Ý }~% in walk � does not belong to �� ),then the bridge ending at P Ý }~% does not satisfy the delay constraint (due to Condition (1)). On the otherhand, if P Ý }~% is not the termination-point of a bridge, then an induction argument can be used to showthat some bridge preceding P Ý }~% in walk � does not satisfy the delay constraint. Hence, àq§�K� Fµ´�J ë Ù M � isset to ö .

We proceed to present a formal definition of adjusted delay that considers the four cases mentioned above.

Page 9: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

9

Definition 4 (Adjusted Delay): The adjusted delay àq§�K�c� of a walk � �Anw�¯�|PO"##()()(Q$P Ý }~% $P Ý p in theauxiliary graph ��å is defined recursively as follows:

1) The adjusted delay of an empty walk (i.e., Þ�� . ) is.: àq@�Nnw��pw��� . ;

2) Otherwise, the adjusted delay àqÆ�8�c� of a walk � �|n-PO"x#()()(*$P Ý }~%$$P Ý p is

àq@�8�c�r�÷øøù øøúegfihOnCq@� �� Fµ´�J ë Ù M�� qÂp if P Ý }~% ä> �� CP Ý > ��Zû 2 `�q / q@� �� Fl´NJ ë Ù M�� � ¿5q@� �� Fµ´�J ë Ù M8� if �8P Ý }~%��P Ý �¨> �� å û 2 `tàq@�K��Fµ´�J ë Ù¼ð � M� / q@� �� Fl´NJ ë Ù¼ð � M8��ö if �8P Ý }~%��P Ý �¨> �� å û 2 ` àq@�K� Fµ´�J ë Ù¼ð � M �¨«7q§� �� Fµ´�J ë Ù¼ð � M ��q ü-��ý~þ#ÿCU 1 �-þ�

where qº� àq§�8��Fµ´�J ë Ù¼ð � M�� � `jFHë Ù¼ð � J ë Ù M and �� åQ>§�Ïå is a path formed from �� by reversing its links.We illustrate the calculation of the adjusted delay using the walk shown in bold in Fig. 4. Here, the

primary path �� � nw��$PY£E$PYR#$P~�#$!Y�� p . The delay of every link \¯> �� is `®_?� 6and the delay constraint�` � �

. Thus, q§� �� �¯��� and ¿ � � . The delay of every other link \gô> �� is depicted in the figure. Letus calculate the adjusted delay of the walk �tFµ´�J ±²M and its various prefixes. At the base of the recursion,àq@��nw�ªpw�5� .

. Since, node P­%Êô> �� , àq@�8�3Fl´NJ ë � M�5� � . For computing the adjusted delay of node PQR wecalculate the value q»� àq@�8�3Fl´NJ ë � M� � `jF�ë � J ë � MÛ�Z© . Since q / q@� �� Fl´NJ ë � M�� � ¿A��� , node POR may be eitherthe termination-point of a bridge that satisfies the delay constraint or an internal node of a bridge. To allowthese two possibilities, we set àq§�8� Fµ´�J ë � M �Ò�AegfihOnCq@� �� Fl´NJ ë � M �� qÂpo�AegfihYnw�y ©ypz�»� . Since �8PORx$PY£ ��> �� å ,node PYR must be the termination-point of the bridge °X% . Since the bridge °?% satisfies the delay constraint,we have àq§�K� Fµ´�J ë Ú M �?�¸q@� �� Fl´NJ ë Ú M �¦� 6

. Now, to compute àqÆ�8� Fl´NJ ëE¶�M � , we calculate the corresponding valueq � àq@�K� Fµ´�J ë Ú M � � ` F�ë Ú J ëE¶:M � � . Because q «�q§� �� Fl´NJ ëE¶:M � � ¿ � © � �3� � , node P~� can only bean internal node inside a bridge and its adjusted delay is àq@�8� Fl´NJ ë ¶ M �z��� . Finally, when computing theadjusted delay of ��Fl´NJ ±²M , q � àq@�K��Fµ´�J ë'¶NM�� � `jF�ë'¶�J ±²MX� �

. Node � is the termination-point of a valid bridge°�R and àq@�8� Fl´NJ ±²M �{�tegfih=nCq§� �� �' qÂpÒ��� . We conclude that the given walk represents a feasible restorationtopology.

C. Feasible Walk ConceptAn ���&���� -walk whose adjusted delay does not exceed the delay q§� �� � of the primary path �� is referred to

as a feasible �������� -walk. From Lemma 2 below, it follows that there is a one-to-one correspondence betweenfeasible walks and feasible restoration topologies.

Lemma 2:1) Let à �Án-°?% $°�R)#()()(*$°�Ä�p , °+9d�ïnw�x9�#()()(­��N9p , be a feasible restoration topology for � �� �`®� and let� be an ������� -walk in � å that corresponds to à , i.e., � � n-°X%rW��� F�± � J ´ � M WÏ°�RXWç()()(aW�°�Ä�p . Then,àq@�K��� / q@� �� � .2) Let � be an �������� -walk in �Ïå such that àq@�K�c� / q@� �� � . Then, it is possible to decompose � into a

set of bridges n-°¨%�#()()(­$°�Īp that forms a feasible restoration topology.Proof: See Appendix.

In general, there may be more than one way to decompose a walk into a set of bridges, i.e., there are severalsets of bridges that can be constructed out of a single walk. For example, in Fig. 4 there are two sets of bridges % and

R that correspond to walk � : % is formed by bridges n-°?%�$°�RNñC$°�RNò$p , while in

R , the bridges °rRNñand °�RNò are combined into a single bridge °{R . Note that only some of these sets constitute feasible restorationtopologies. One can construct a feasible restoration topology from a feasible walk by simply choosing asthe termination-point for a bridge, the first node P Ý > �� in the bridge for whom àq@�K� Fµ´�J ë Ù M ���tq@� �� Fl´NJ ë Ù M � .

We denote by �� � ± the minimum cost feasible ���&���� -walk in the auxiliary graph � å and by u� � ± the costof � �� ± . There is a relationship between � �� ± and the optimum restoration topology (whose cost is denotedby �¯ÌÒÎ ). Indeed, by Lemmas 1 and 2, there exists a feasible walk � such that vz�K��� / �Ï(C�¯ÌÒÎ . Thus,

Page 10: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

10

u �� ± / �Ï(-�ÍÌÏÎ . Further, note that the cost of a restoration topology constructed from a walk never exceedsthe cost of the walk itself. Thus, if we could compute the optimal feasible walk, then we could compute a(2,1)-approximation to the optimal restoration topology.

V. APPROXIMATION SCHEMES FOR PROVISIONING OF RESTORATION TOPOLOGIES

We are now in a position to present efficient approximation schemes for Problems RT and P+RT. Webegin with a pseudo-polynomial algorithm for Problem RT, which serves as the basic building block for theapproximation scheme for Problem RT presented in Section V-B. Finally, in Section V-C we present theapproximation scheme for Problem P+RT.

A. Pseudo-polynomial Solution for Problem RTThe fundamental concepts of adjusted delay and feasible �������� -walk give rise to a pseudo-polynomial

algorithm for Problem RT, i.e., an algorithm whose running time is proportional to the cost of the optimalsolution. The algorithm, referred to as Algorithm PP is presented in this section. Because of its simplicity,the algorithm can be easily implemented in practice. However, in the worst case, its running time can bevery high.

The purpose of Algorithm PP is to check, for a given value of upper bound � , whether there existsan ������� -walk � in �Ïå , such that àq§�8�c� / q@� �� � and vz�K�c� / � , and if so, to find a minimum cost������� -walk � such that àq@�8�c� / q§� �� � and the corresponding restoration topology. The algorithm is anatural extension of the well-known Bellman-Ford algorithm and uses the dynamic-programming techniqueof relaxation [2]. The algorithm assumes that the costs of links are integer values greater than

., and an

upper bound � on the cost of the solution is given.We first describe the relaxation technique used by Algorithm PP. For each node !&9Ï>t� , we maintain

an array q G:I�� u�� of minimum delay estimates. The array q GNI�� u�� stores, for each cost u , the minimum adjusteddelay of an ����$!C9K� -walk, whose cost is at most u . Initially, q GNI�� u��É��ö for every !C9r>]�Òå��=� and uÍß . . Weonly relax links whose cost does not exceed the current budget restriction u . The process of relaxing a link�8!-9:$!EDE� consists of testing whether we can improve the best ���$!)DE� -walk (i.e., the walk whose adjusted delayis minimum) found so far to !#D by going through !C9 without exceeding the current budget restriction u and ifso, updating q GKL�� u�� . The relaxation technique is implemented by Procedure RELAX (see Fig. 5).

Next, we proceed to describe Algorithm PP, whose pseudo-code appears in Fig. 5. We start with a zerobudget for u and increment it by a value of

6in each iteration until either q ±�� u�� / q@� �� � , i.e., there exists a

walk between � and � whose adjusted delay is at most q@� �� � , or else u¯��� . In each iteration, we processeach node !xD >§�Ïå by relaxing all links entering !#D .

As discussed below, in our approximation scheme, Algorithm PP is applied to graphs in which u-_¡ß 6for each link \ . Thus, the cost of each link \�>t� å is at least

6, except for links in � å that originate from

the primary path �� . Note that for each link �8!w9$!EDE� with zero cost, node !w9 must be processed before !#D .Accordingly, the nodes !#DÒ>¬�Ïå are processed in an order such that !)D is before !xD î if !xD is a successor of !xD îin �� .

Also, in Step 15, the algorithm identifies a walk � �Ánw�Â�BPQ"##()()(Q$P Ý �»� p whose adjusted delay isat most q@� �� � using backtracking. Suppose that u is the value at which Algorithm PP breaks out of the forloop (in Step 16), that is, q ±�� u�� / q@� �� � . Then, beginning with node � , for each node P=9 , the backtrackingprocedure adds to the returned walk, the link �KP=9i}~%��PY9�� that resulted in the value q ë'I�� u 9 � until node � isreached, where the u'9 values for P~9 are computed as follows: for the initial node P Ý ���� u Ý �tu and for everysubsequent node PY9i}~% , u�9i}~%���u 9 4 u#F�ëEI ð � J ë'I²M . Thus, the cost of the walk � can be shown to be at most u . Thecomputational complexity of Algorithm PP is �o��� (��Ò� .

Theorem 1: Let u �� ± denote the minimum cost of a feasible ���&���� -walk in �Íå . If � ßõu � ± then Algo-rithm PP returns a minimum cost feasible walk � .Proof: See Appendix.

Page 11: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

11

Algorithm PP �&�z���r �¯�' �� +�`����� :parameters:íÛ���! #"½� - network,$&%�' #( '�)*',+�- - delays and costs of the network links,.×�Ö $�/ Ö Ó�0� ¾Ó � 2131313 54 Ö Ó�6 ) - QoS path,.%

- delay constraint,7- the upper bound on the cost of 8 .

1 9;: .%=<?> � .× �2 "­î@:A"3 for each link B Ö �lÓ I ¾Ó I�� � �DC .× do4 "­î@:E"­î�F $ �lÓ I ¾Ó IH� � �GC .× )5 "­î@:E"­î�H $ �lÓ IH� � ¾Ó I �GC .× ) , (�I ÕKJMLON&P Õ5J�Q :[�6 for all Ó I CR� do7

> ÕKJ&S ��TU:WV8>YX S ��TZ:[�

9 for ( Ö �� �[� 2131\13 7 do10 for each Ó L C]� in order such that Ó L is before Ó L�^ ifÓ L is a successor of Ó L ^ in

.× do11

> Õ#_ S (�T@: > Õ#_ S ( < ��T12 for each link B Ö �lÓ I ¾Ó L �GC`"­î do13 RELAX �aBi�lÓ I ¾Ó L �� #(� K9+�14 if

>Yb S (�Tdc > � .× � then15 determine walk e by backtracking16 return e .17 return FAIL

Procedure RELAX �aB Ö �lÓ I ¾Ó L �� #(� �9+�1 if Ó L C .× and Ó I C .× then2 if

> ÕKJ S (5Tdc > � .× I X P Õ5JfQ � then3

> Õ#_�S (�T@:hgji3k $*> Õ#_�S (5Ta > � .× I X P Õ _ Q � )4 else5 if ( ' cl( then6

> Õ#_�S (�T@:hgji3k $*> Õ#_�S (5Ta > ÕKJ&S ( < ( ' T � %�' � )7 if Ó L C .× and

> Õ#_�S (�T�c > � .× I X P Õ _ Q �C�l9then

8> Õ _�S (�T@:hgji3k $*> Õ _�S (5Ta > � .× I X P Õ#_�Q � )

Fig. 5. Algorithm PP

B. Approximation scheme for Problem RTIn this section, we develop an FPAS for computing the minimum cost feasible ������� -walk, and use this

near-optimal walk to construct a near-optimal restoration topology. The technique we use is similar to theone presented in [12].

We begin with a high-level overview of the approximation scheme. A basic building block of the schemeis Procedure SCALE (Fig. 6), which uses scaling and rounding in order to efficiently find an approximatesolution. The efficiency of Procedure SCALE depends on the tightness of the lower and upper bounds, m ,� , on the cost of the optimal solution. Thus, to compute sufficiently tight lower and upper bounds, we relyon two procedures, namely Procedure BOUND and Procedure TEST. The former is used for obtaining initialvalues of m , � such that � ä m�nB�0(®� , while the latter performs iterations to tighten the bounds further.Finally, we combine all the ideas in Procedure RT.

1) Scaling and Rounding: We proceed to describe Procedure SCALE (see Fig. 6). The main idea is toscale and round the cost uE_ of each link \½>@� , replacing it by u å _ , as follows:

u å _ ��o u'_qp � 6

Page 12: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

12

where � r �R*s . Then, we apply Algorithm PP on the resulted graph. Clearly, with the new costs u#å_ , there

must exist a feasible walk with cost at most oZt#u#v bw p � �w� and no more than �ª� links (due to Lemma 1). Thus,

by Theorem 1 the actual cost of the path returned by Algorithm PP is no more than uU�� ± � �ª� / � 6 ��� �-(�u� � ± .We summarize this discussion in the following lemma:

Lemma 3: If Procedure SCALE is invoked with valid upper bound, i.e., u � ± / � , then it returns a walkwhose cost is at most � 6 �Å� � times more than the optimum.

We note that Procedure SCALE might return a feasible walk even if it is invoked with non valid upperbound, i.e., u � ± «x� . However, we show that the cost of a walk � returned by the algorithm alwayssatisfies v��8�c� / m �X� � . We use this property later to compute tight lower and upper bounds on u � ± .

Lemma 4: Any walk � returned by Procedure SCALE is feasible and satisfies v��8�c� / m �X� � .Proof: Let �� be a walk returned by Procedure SCALE. Note that �� was returned by Algorithm PP. ByTheorem 1 (Part 1), �� is a feasible walk. Since v�å¾� ��c� / à���zy�{w}| � �ª� , and since u'_ / u å_ ( for each\Û>@� , we have v�� ��è� / � � �ª� �~m�( �X� � .

The running time of Procedure SCALE is �o�O� s {� r � . Thus, if we can compute tight lower and upper boundson u �� ± such that the ratio � ä m is a constant, then we can reduce the computation time of Procedure SCALE to�o� � s� � . We next show how to compute these tight bounds.

2) Lower and upper bounds: In this subsection, we present Procedure BOUND (see Fig. 6), which iden-tifies lower and upper bounds mX�� on the minimum cost u � ± of a feasible walk u � ± such that � ä m / �w� .

We denote by u % n�u R n�()()(�nZu�� the distinct costs values of the links. Our goal is to find the maximumcost value u��d>ÊnCu 9 p such that the graph �Ïå å derived from �Ïå by omitting all links whose cost is greater thanu � , does not contain a feasible ������� -walk. Clearly, a feasible ������� -walk contains at least one link whose costis u � or more, hence u � is a lower bound on u � ± . In addition, there exists a feasible ���&���� -walk that comprisesof links whose cost is uZ� or less, and whose hop count is, by Lemma 1, at most �ª� . We conclude that �ª�|(�u@�is an upper bound on u � ± .

Procedure BOUND performs a binary search on the values u % u R #()()(* u � . At each iteration, we need tocheck whether u / u � , where u is the current estimate of u � . For this purpose, we remove from � all linkswhose cost is more than u , and assign the unit cost to the remaining links. Then, we apply Algorithm PPon the resulting graph, with the parameter ���¢�ª� . If Algorithm PP returns a feasible walk, then u0ß�u�� ;otherwise, uqnéu � . The computational complexity of Procedure BOUND is �z��t� ����� �§� .

3) A testing procedure: In order to tighten the bounds further, we make use of Procedure TEST (shownin Fig. 6). Procedure TEST performs the following 2-approximation test: if the procedure returns a positiveanswer, then definitely u � ± n7�ªb ; otherwise, it is the case that u �� ± ß3b .

Procedure TEST is implemented by invoking Procedure SCALE with ����m]�tb and � � 6 .Lemma 5: If Procedure TEST returns a positive answer, then u � ± / b5� 6 �Å� � . Otherwise, u � ± «Sb .

Proof: If Procedure TEST returns a positive answer, then Procedure SCALE does not fail. Thus, byLemma 4, Procedure SCALE returns a feasible walk �� , for which v�� ���� / b5� 6 �|� � , hence u �� ± /vz� ��c� / bo� 6 �Å� � .

We proceed to prove the second part of the lemma. By way of contradiction, assume that u � ± / b . ByLemma 3, Procedure SCALE does not return FAIL, hence Procedure TEST returns a positive answer, whichcontradicts the condition of the lemma.

4) Putting it all together: We are now in a position to combine the results of the previous subsections inorder to present our final approximation algorithm, referred to as Algorithm RT (see Fig. 6).

The algorithm begins by applying Procedure BOUND, which provides the lower and upper bounds mand � on u �� ± such that � ä m / �ª� . Then, we iteratively apply Procedure TEST to improve these boundsuntil the ratio � ä m falls below

·. In each iteration, we invoke Procedure TEST with b � � m�(�� . If

Procedure TEST returns a positive answer, then, u � ± n¸�ªb , hence � is set to �ªb . Otherwise, it is the casethat u � ± «Zb , hence m is set to b . Note that, if the ratio � ä m is equal to � at the beginning of an iteration,

Page 13: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

13

then at the end of the iteration we have �2� ä m{� / � � � . Thus, since the above process terminates once� ä m /3· , the number of iterations performed can be shown to be �z� �������i��� �Æ� .Having obtained lower and upper bounds m , � such that � ä m /â·

, we use Procedure SCALE to find afeasible walk � , whose cost is at most � 6 ��� �-(�u � ± . Finally, we return the restoration topology correspondingto � . The computational complexity of Algorithm RT is �z��t��� 6-ä �X�ì����� �§��� .Algorithm RT �a����� �¯�' �� �`� � � :

1 �� 7 : BOUND �²íÛ���! "½�� .× .% �2 do3 ��:�� �Y��( u v b ��� 7 ��( u#v b �4 if TEST( íÛ���! �"½�� .× .% #�� ¾� ) returns YES then5 ��:E�6 else7

7 :E[��*�8 until

7 ����c�� .9 e�: SCALE �²íÛ���� �"É�� .× .% K�� 7 ����

10 return the restoration topology that corresponds to e .

Procedure SCALE �²íÛ���! f"É�� .× .% K�� 7 ¾���1 ��:�����#�2 for each link BdC]" do3 ( î ' :��&� � G¡ ���4 ¢7 : ��£  ¡ �¤[�¥5 return PP �²íÛ���! �"É�� $*%�' #( î ' )�',+¦- .× .% ¢7 �Procedure TEST �²íÛ���� �"É�� .× .% K�½�1 Apply Procedure SCALE for �²íÛ���� K"É�� .× .% #�� K�j 5[��2 if Algorithm SCALE returned FAIL then3 return NO4 else5 return YES

Procedure BOUND �²íÛ���� "É�� .× .% �1 let ( ��§ ( ��§ �¨�2� § (2© the distinct costs values of the

links.2 B,ª�«¬:ì� ; ­Z®�¯�­�:A°3 while B,ª�« § ­�®a¯�­ < �4 ±²:�³��a­Z®�¯�­É�¤B,ª�«Q�¾��[*´5 " î : $ B µ ( ' cl( L )6 set ( ' :�� for each B�CR" î7 apply Algorithm PP on �²íQîi���! K"­îH�� .× .% 5[�¥X�8 if Algorithm PP returned FAIL then9 ­Z®�¯�­�:¶±

10 else11 B,ª�«¬:¶±12

7 :W[�¥·�¨(&¸ I\¹ ¸ ; �q:h(&¸ I\¹ ¸ ;13 return � ,

7;

Fig. 6. Algorithm RT

Lemma 6: The computational complexity of Algorithm RT is �o����]� 6-ä �X�Å�i��� �§��� .Proof: Procedure BOUND requires �o���t� �i��� �Æ� time; the execution of Procedure SCALE in line 9 requires�o���t� ä � � time.

We proceed to analyze the computational complexity of the loop of lines 2-8. We denote by �*9 theratio � ä m at the beginning of iteration

1. Initially, we have �É% / �w� . As discussed above at iteration

1,�~9 / � � �~9i}~% . It follows that

�~9 / � (C� %�º:R (C� %�º� (&()()(ª(C� %�º:R I (a��w�§� %�º:R I / ��(a���ª�§� %�º:R I ê

Page 14: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

14

At iteration Þo� �i���r�i�ª� ��ª�Æ� we have � Ý /�· . We conclude that the loop performs �o� �i��������� �§� iterations.At each iteration we execute Procedure TEST, which requires �¢�¢�z��t� ä � � time. We conclude that thetotal running time of the loop is �o���t� �i�ª�{����� �§� .

We conclude that the total running time of Algorithm RT is �z��t��� 6-ä �?�ì����� �§��� .Theorem 2: Given an undirected graph � , a primary QoS path �� > � , a delay constraint �` and an

approximation ratio � , Algorithm RT identifies, a feasible restoration topology à for � �� �`®� , whose cost isat most �V(a� 6 �]� � times more than the optimum.Proof: By Lemma 5, lines 4-7 ensure that at each iteration m and � are valid bounds, i.e., m / u � ± / � .Thus, Procedure SCALE is called at line 9 with valid bounds, hence by Lemma 3 it finds a feasible walk� whose cost vz�K�c� / � 6 �3� �X(au � ± . Further, from Lemmas 1 and 2, it follows that u � ± / �g(y�¯ÌÒÎ .Thus, vz�K��� / ��� 6 �7� �¨(®�ÍÌÏÎ and the cost of the restoration topology à corresponding to � satisfiesvz�¾Ã�� / ��� 6 �]� �É(-�¯ÌÒÎ .

C. Approximation Scheme for Problem P+RTThe approximation scheme for simultaneous provisioning of a primary QoS path and the restoration topol-

ogy is implemented as follows. First, using Algorithm RSP, we identify a �` -delay constrained ���&���� - path�� in � whose cost is at most � 6 �ì� � times the optimum. Then we apply Algorithm RT with parameters � ,�� , � �` � q@� �� ��� and � . The resulting algorithm is referred to as Algorithm P+RT.Theorem 3: Algorithm P+RT identifies, in �o���t�]� 6-ä �Ï�t����� �§��� time, a ��©ç(Q� 6 ��� ������ -approximate

solution for Problem P+RT.Proof: The computational complexity of Algorithm P+RT is identical to that of Algorithm RT.

For a path�

we denote by �o� � � the set of links in�

. Similarly, �o�K°X� denotes the set of links in bridge° .Let � �� �Ã�� be the output of Algorithm P+RT and let � �� � ± �à � ± � be the optimal solution to Prob-

lem P+RT. We prove that there exists a restoration topology à å for � �� +�` � q@� �� ��� such that �o�¾Ã å �ÆÜ�o� �� � ± �=»��o� �à � ± � .For each link \Û> �� we identify a bridge °r_Y�¸nw�#_8x()()(*���_¾p such that °r_ protects \ and �z�8°r_��?Ü3�o� �� �� ± �¼»�o� �à � ± � . We consider the following two cases.ó Case 1. If \­���K!C9N$!-9<;=%��¨> �� and \ ä> �� � ± then we choose °r_ to be the subpath �� � ±Fµ´ ' J ± ' M of �� � ± for which

�)_K���_T> �� , �#_ is a predecessor of !w9 in �� and ��_ is a successor of !C9<;=% in �� (see Fig. 7 (a)). If more thanone such subpath exists, then we choose the one with minimum hop count.ó Case 2. If \��»�K!C9:$!-9<;=%��V> �� and \¨> �� � ± then let ° å �¢nw� å #()()(­�� å p be a bridge of �à � ± that protects\ . We denote by

� å the path �� � ±´NJ ´ î WÀ°{å&W �� �� ±±�J ± î , i.e., the restoration path for link \ in the optimal solution.Then, we choose °r_ to be the subpath

� åFl´ ' J ± ' M of� å for which �)_K���_�> �� , �#_ is a predecessor of !C9 in ��

and ��_ is a successor of !C9<;=% in �� (see Fig. 7 (b)). If more than one such subpath exists, then we choosethe one with minimum hop count.

Let Ãoå be a restoration topology formed by bridges n-°¦_���\0> �� p . We observe that each link \0> � isprotected by a bridge in Ã�å , and for each bridge °r_d>7Ãoå it holds that q@�K°r_�� / �` , hence Ãoå is a feasiblerestoration topology for � �� �` � q@� �� ��� .

We also note that vz�¾Ã5å²� / vz� �� � ± � � vz� �à � ± � , since, Ãoå contains only links from �� � ± and �à � ± . ByTheorem 2, the cost vz�{�ÃÂ� of �à is at most ��(Y� 6 �é� � times more than the cost of the optimal restorationtopology for � �� �` � q@� �� ��� , thus vz� �Ã�� / �j� 6 �V� �'(lvz�¾Ãoåµ� . As a result, v�� �ÃÂ� / ��� 6 �Ò� �E��v�� �� � ± � � vz� �à � ± ��� .Since v�� �� � / � 6 �Æ� ��v�� �� � ± � , we have vz� �� � � v�� �Ã�� / ©~� 6 �Æ� �E��v�� �� � ± � � v�� �à � ± ��� . Since �` � q§� �� � /�V( �` , it follows that �à is a ��©Ò(a� 6 �]� ������ -approximate solution for Problem P+RT.

Page 15: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

15

l s l

i v l t

opt P ˆ

P ˆ

(a)

l B

(b)

l s s l

i v l t

opt P ˆ

P ˆ

' B opt R ˆ

' s ' t

i v +1 i v +1

Fig. 7. The optimal solution � .× u v b .8 u v b � to Problem P+RT and an � / 4K� -path.×

0

8 9 1 2

0 0 0 0

7 6 3 4

0 0 0 0 v s 1 v 2 v

3 v 4 v 5 v 6 v t v 7

P ̂

v u l

Fig. 8. An example of a restoration topology 8 formed by bridges Ô � Ö $ Ó�0¦ ¾ÓO #½� ¾Ó ¶ ) , Ô � Ö $ Ó � ¾ÓO ½d ¾Ó�¾ ) , Ô Ú Ö $ Ó � �ÓO #½d KÓ�¿ ) andÔ ¶ Ö $ Ó Ú ¾ÓO ½d ¾Ó�À ) . Link Bi�lÓO #½-� is shared by bridges Ô � 2�2�&�@ KÔ ¶ .VI. DIRECTED NETWORKS

In this section, we extend our results from the previous sections for directed networks, which we model asa directed graph �z���r �¯� . In such networks, for a pair of connected nodes �8!�9:�!xDE� , the bandwidth provisionedon the link in the direction from !w9 to !ED may be much larger than the allocated bandwidth in the oppositedirection. In addition, the delay and cost characteristics of link �K!�9N$!EDE� may be very different from those oflink �8!ED)$!C9K� .

We observe that, with such asymmetric links, it is possible that a node or a link is shared by severalbridges, which constitutes a major obstacle for identifying efficient solutions. For example, consider thenetwork depicted on Fig. 8. The numbers show delays of the links. For delay constraint �`S� 6).

, thereexists only one feasible restoration topology ÃB�cn-°À%'$°�R#�°�£)$°+�#p , °¨%¦�cn-!C"#$!Y$PT$!-�xp , °�RÀ�cn-!&%�$!Y$PT$!C�Ep ,°�£d�cn-!wR)�!O�PÉ�!w¤'p and °+�¡�èn-!C£#$!Y$PT$!w¥'p . Note that nodes ! , P and link �8!Y$P=� are shared by all bridges ofà .

We overcome this obstacle by combining bridges. Specifically, let à be an optimal restoration topologyfor � �� +�`a� and let n-°¨%�$°�R)#()()(Q$° Ý p , Þ5ß3© be the set of à ’s bridges that contain the node ! , sorted accordingto their indexes, where °�9{�ânw�x9:#()()(Q��N9:p . We combine the bridges °X% and ° Ý into a single bridge ° , suchthat °Z�è°?% Fµ´ � J G�M W ° Ý F�G J ± Ù M , as depicted in Fig. 9. Since the subpaths of �� protected by the bridges °?% and° Ý are disjoint, the delay of bridge ° may exceed the delay of the subpath of �� protected by ° by at most�ª¿õ�â��� �` 4 q@� �� ��� . We use this idea in order to prove the following lemma, which is the counterpart ofLemma 1 for undirected networks.

Lemma 7: Given a directed graph � , a delay constraint �` and an ������� -path, q@� �� � / �` , there exists arestoration topology �à for � �� �� �` 4 q§� �� ��� such that vz� �Ã�� / �¯ÌÒÎ , and each node !o> �à or link \+> �à is

1 s P ̂

k s 1 t

v

k t

1 B k B

(a) (b)

1 s P ̂

k s 1 t

v

k t

B

Fig. 9. (a) Node Ó is shared by bridges Ô � and Ô Ù . (b) Bridges Ô � and Ô Ù are replaced by a single bridge Ô .

Page 16: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

16

shared by at most two bridges.Proof: See Appendix.

Note that in the above lemma �à is a feasible restoration topology with respect to ¿¢�t� �` 4 q§� �� � . Thus,in order to achieve an efficient solution we relax the delay constraint and use ¿ � � �` 4 q@� �� � and not¿ � �` 4 q@� �� � , as in the case of undirected networks. For example, the (simple) algorithm presented inSection IV-A is invoked with ¿õ�º�j� �` 4 q@� �� ��� . By Lemma 7, the algorithm provides a ���(Y� 6 �é� �'���� -approximate solution for Problem RT.

In this section we denote by � � ± the optimal walk with respect to ¿æ�Ë� �` 4 q@� �� � . The cost of � � ±denoted by u �� ± .

Generally, the approximation scheme for directed networks is similar to undirected network case, exceptfor the following:

1) The adjusted delay is defined with respect to ¿¢�t�j�*�` 4 q@� �� ��� .2) Algorithm PP is applied with ¿¢�Z�j� �` 4 q@� �� ��� (instead of ¿¢� �` 4 q@� �� � ).3) A more elaborate procedure is required for finding the lower and upper bounds m , � on u � ± . We

provide more details below.

A. Approximation scheme for Problem RTRecall that our approach for the undirected case was first to identify lower and upper bounds m and � on

the cost of an optimum walk u �� ± such that � ä m / �ª� , and then to iteratively improve the these bounds byusing scaling of link costs. For directed networks, however, computing lower bound m on u � ± incurs highcomplexity. This is because any optimum walks might have high hop count(recall that in the undirected caseby Lemma 1 there exists an optimum walk whose hop count is at most �ª� ). Our approach is to consider, forthe purpose of computing lower bound, only walks whose hop count do not exceed �ª� . More specifically,we denote by � � ±R*s the feasible walk of minimum cost whose hop count is at most �w� and by u � ±R*s the cost of� � ±R*s . We then use the lower bound mrå on u � ±R*s instead of m . The bounds mrå and � are iteratively improved tilleither a suitable walk is found or � ä m å /|· . In the latter case we apply Procedure SCALE with parametersm+å and � to find a suitable walk.

Our algorithm is based on the two following lemmas.Lemma 8: u �� ±R*s / � (-�ÍÌÏÎ .

Proof: By Lemmas 7 and 2, there exists a feasible walk �� such that � ��B� / �ª� and v�� ��è� / �Í(ª�¯ÌÒÎ .Hence, u � ±R*s / v�� ��c� / �V(-�¯ÌÒÎ .

Lemma 9: If u � ±R*s / � then Procedure SCALE returns a feasible walk � whose cost is at most � 6 �7� �times more than u � ±R*s , i.e., v��8�c� / � 6 �Å� �Û(-u � ±R*s .Proof: Similar to the proof of Lemma 3, but using Lemma 8 instead of Lemma 1.

We proceed to describe the FPAS in more detail. First, we invoke Procedure BOUND with parameters�z���r$���' �� �`�å . It is easy to verify that the procedure returns lower and upper bounds m¨å and �då on u � ±R*ssuch that �då ä m+å / �ª� . Next, we set �»���¡å and use the following iterative process in order to improveimprove the bounds � and mrå . At each iteration we compute bÂÁ � m å (�� and apply Procedure SCALE form]������b . There are several possible cases.ó Case 1: Procedure SCALE returns FAIL. Then, due to Lemma 9, there exists no feasible walk � suchvz�K��� / b and � �B�aß��ª� . Accordingly, we set mråDÁ b .ó Case 2: Procedure SCALE returns a feasible walk � such that v��8�c� / m å . Then, the algorithm halts

and returns the walk � . Note that v��8�c� / u � ±R*s / �Ò(#�¯ÌÒÎ .ó Case 3: Procedure SCALE returns a feasible walk � such that m{å=n�vz�K�c� / �wb . Since it is possiblethat � �B�®«3�ª� , we set �ÃÁ b .

Note that by Lemma 4, if Procedure SCALE does not fail, it returns a feasible walk � , whose cost is atmost �ªb , hence all possible cases are covered. The process stops when a suitable walk is found or � ä m?å /3· .

Page 17: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

17

Having obtaining lower bound mrå on u � ±R*s and upper bound � on u � ± such that � ä m+å /�·, we apply

Procedure SCALE for mZ�Äm�å and �¢�Å� . If the algorithm fails then mrå�«Ä� , hence we return a walk �due to which the upper bound � was assigned its current value. Note that due to Lemma 8, vz�K�c� / m?å /u �� ±R*s / �+(��ÍÌÏÎ . Otherwise, due to Lemma 9, Procedure SCALE returns a walk � such v��8�c� / � 6 ��� ��u � ±R*s .In both cases we identify a feasible restoration topology �à that corresponds to � . It follows that v�� �Ã�� /��� 6 �@� �¼�¯ÌÒÎ . The FPAS is implemented by Algorithm DRT, whose formal description appears on Fig. 10.

Algorithm DRT �&����� ���� �� Û�`� � � :parameters:íÛ���! #"½� - network.×�Ö $�/ Ö Ó � ¾Ó � 2131313 54 Ö Ó�6 ) - QoS path,.%

- delay constraint� - approximation ratio

1.% î :E[ .%Æ<q> � .× �

2 �®îf 7 : BOUND �²íÛ���� "É�� .× .% îH�3 do4 ��:WÇ � î � 75 Apply Procedure SCALE for íÛ���! #"½�� .× .% î� K�� #�� ¾� )6 if Procedure SCALE return FAIL then7 � î :E�8 else9 Set e be the walk returned by Procedure SCALE

10 if ÈÛ��ez��c�� î then11 return the restoration topology 8 that corresponds to e .12 else13

7 :W[��&� ,14 until

7 ���aî�c�� .15 Apply Procedure SCALE for �²íÛ���� K"É�� .× .% î� K�®î� 7 ����16 if Procedure SCALE does not fail then17 Set e be the walk returned by Procedure SCALE

18 return the restoration topology 8 that corresponds to e .Fig. 10. Algorithm DRT

We summarize our results in the following theorem.Theorem 4: Given are a directed graph � , a primary QoS path �� > � , a delay constraint �` and an

approximation ratio � . Then, Algorithm DRT identifies, in �o����Ê� 6)ä �Í�Z�i��� �Æ��� a feasible restorationtopology à for � �� ��¡�` 4 q@� �� ��� , whose cost is at most ��� 6 �ì� � times more than OPT, i.e., a ����� 6 �[� �' ��� -approximate solution to Problem RT.

B. Approximation scheme for Problem P+RTThe approximation scheme for of primary QoS path and the restoration topology is similar to the undi-

rected case. Namely, we first identify a �` -delay constrained ���&���� - path �� in � whose cost is at most � 6 � � �times more than the optimum. Then, we apply Algorithm DRT with parameters � , �� , � �` � q@� �� ��� and � .

Theorem 5: The above algorithm identifies, in �z��t�Ê� 6-ä �¡�S����� �§��� time, a ��©~� 6 �S� �' ©�� -approximatesolution for Problem P+RT in directed graphs.Proof: The proof follows similar lines as in Theorem 3. Let � �� �Ã�� be the output of Algorithm P+RTand let � �� � ± �à �� ± � be the optimal solution to Problem P+RT. By Theorem 4, Algorithm DRT returns arestoration topology �à for � �� �� �` � q@� �� ��� such that v�� �Ã�� / ��� 6 �¬� �=(�v�� �à � ± � . Since � �` � q@� �� � / ©X( �` ,� �� �Ã�� is a ��©~� 6 �Å� �' ©�� -approximate solution for Problem P+RT.

The running time of the algorithm is dominated by Algorithm DRT, hence it is �z��t��� 6-ä �½�Æ����� �§��� .

Page 18: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

18

VII. SIMULATION RESULTS

In order to further illustrate the efficiency of our proposed solutions, we conducted simulation experi-ments. We compared the following two algorithms for undirected networks (with respect to the total cost ofthe computed primary and restoration paths):É Algorithm 1 - Two Disjoint Paths. Provision a �` -delay constrained path

� % , which serves as the primarypath, then delete all its links from the graph, and finally, provision a �` -delay constrained path

� R in theresulting graph, which serves as the restoration path. Both paths are provisioned using Algorithm RSP of[12].É Algorithm 2 - Algorithm P+RT with Ñt� 6

. Provision the primary path� % satisfying �` (using Algo-

rithm RSP of [12]), then use Algorithm RT to provision the restoration topology à for � � %' �`®� . Note thatthe delay constraint is strictly satisfied for both the primary and restoration paths.

Recall that Algorithm RSP returns a � 6 �é� � -approximation to the minimum cost path satisfying delayconstraints. In both algorithms, we choose � to be a fairly small constant.

A. Network Generation ModelsWe used two different methods for generating the undirected network topologies using the BRITE topol-

ogy generation tool [14]. The first is Waxman’s method [18], and the second is Barabasi and Albert’s [1],described below. Both network generators assign delays to links based on the distance between the link’sendpoints. Further, we assigned costs to links uniformly and randomly from a fixed interval.É Waxman model [18]. In this model, nodes are placed on a plane; the probability of interconnecting twonodes decreases exponentially with the Euclidean distance between them. We set the value for parameters Ðand Ñ to

. ê 6 � and. êµ� , respectively.É Barabasi-Albert model [1]. In this model, the node connectivity follows a power-law rule: very few

nodes have high connectivity, and the number of nodes with lower connectivity increases exponentially asthe connectivity decreases.

B. Experimental ResultsIn our experiments, we compared the provisioning costs (i.e., the total cost of the primary path and the

restoration topology) computed by the two algorithms for a randomly selected source and destination nodepair. We studied the effect of varying the delay constraint. More specifically, let the delay ratio be �5� �` ä ` ´ � ,where ` ´ � is the minimum delay of an �������� -path. Fig. 11 depicts the provisioning costs for Algorithms 1and 2 for the (a) Waxman and (b) Barabasi-Albert models in a network of 7000 nodes, and as the delay ratiois increased from 1.2 to 1.6.

The findings of our study can be summarized as follows:É In many cases, for which Algorithm 1 fails to find a pair of disjoint paths, Algorithm 2 still computes a(feasible) primary path and restoration topology solution with a low cost. For example, for the Barabasi-Albert model, for values �Â� 6 êÊ� and �Â� 6 ê,� Algorithm 1 fails, while Algorithm 2 still provides a feasiblelow-cost solution. The same occurs for �è� 6 êH� in the Waxman model. This clearly demonstrates thesuperiority of the restoration topology strategy over the disjoint path approach.É Algorithm P+RT (even with Ñ[� 6

!) always exhibits superior performance (i.e., finds paths with lowercost) compared to Algorithm 1.É The cost benefits due to Algorithm 2 are particularly significant (around 15-20%) when delay constraintsare tight, i.e., closer to the minimum delay of an �������� -path.

VIII. CONCLUSION

In this paper, we investigated the problem of provisioning QoS paths with restoration. Specifically, wedeveloped algorithms that compute a primary QoS path and a restoration topology comprising of a set ofbridges, each of which protects a different part of the primary QoS path.

Page 19: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

19

Waxman Model

50

55

60

65

70

75

80

85

1 . 2 1 . 3 1 . 4 1 . 5 1 . 6 x (delay ratio)

(a) (a)

Algorithm 1 - disjoint paths

Algorithm 2 - restoration topology

to

tal

cost

Barabasi - Albert Model

50

55

60

65

70

75

1 . 5 1 . 6 1 . 7 1 . 8 1 . 9 2 x (delay ratio)

(b) (b)

to

tal

cost

Algorithm 1 - disjoint paths

Algorithm 2 - restoration topology

Fig. 11. Effect of delay ratio on the algorithm performance

A major contribution of this paper is the concept of adjusted delays, which allows existing path algorithms(e.g., Bellman-Ford [2], Hassin’s [6]) to be adapted in order to identify suitable restoration topologies. Thisenabled us to devise efficient approximation schemes with proven performance guarantees. Specifically, wepresented an �z��t�]� 6-ä �+�¬����� �§��� approximation scheme (Algorithm P+RT) that provides ��©?(-� 6 �@� �' ��� -approximate solutions for link failures. We extended the scheme for directed networks and achieved a��©{(#� 6 �Â� �' ©�� -approximate solution. We emphasize that, in our schemes, the delay violation may occur onlyin the restoration paths, while the primary path always satisfies the QoS constraint.

The simulation results indicate that in many cases, for which the disjoint path strategy fails, Algo-rithm P+RT still computes a (feasible) primary path and a low-cost restoration topology. This clearlydemonstrates the superiority of the restoration topology strategy over the disjoint path approach. The costbenefits due to Algorithm P+RT are particularly significant (around 15-20%) when delay constraints aretight.

REFERENCES[1] A. Barabasi and R. Albert. Emergence of scaling in random networks. Science, 286:509–512, 1999.[2] T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to Algorithms. MIT Press, Cambridge, MA, 1990.[3] E. Crawley, R. Nair, B. Rajagopalan, and H. Sandick. A Framework for QoS-based Routing in the Internet – RFC No. 2386. Internet RFC,

August 1998.[4] L. Zhang F. Ergun, R. Sinha. An Improved FPTAS for Restricted Shortest Path. In Technical Report, Bell Labs, 2001.[5] M.R. Garey and D.S. Johnson. Computers and Intractability. Freeman, San Francisco, 1979.[6] R. Hassin. Approximation schemes for the restricted shortest path problem. Mathematics of Operations Research, 17(1):36–42, February

1992.[7] G. Italiano, R. Rastogi, and B. Yener. Restoration Algorithms for Virtual Private Networks in the Hose Model. In Proceedings of IEEE

INFOCOM’02, New York, NY, June 2002.[8] K. Kar, M. Kodialam, and T. V. Lakshman. Routing restorable bandwidth guaranteed connections using maximum 2-route flows. In

Proceedings of IEEE INFOCOM’02, New York, NY, June 2002.[9] Murali S. Kodialam and T. V. Lakshman. Dynamic routing of bandwidth guaranteed tunnels with restoration. In Proceedings of IEEE

INFOCOM’2000, Tel-Aviv, Israel, March 2000.[10] G. Krishna, M. Pradeep, and C. Ram Murthy. A segmented backup scheme for dependable real time communication in multihop networks.

In Proceedings of Workshop on Parallel and Distributed Real-Time Systems (WPDRTS’2000), Cancun, Mexico, May 2000.[11] G. Li, D. Wang, C. Kalmanek, and R. Doverspike. Efficient distributed path selection for shared restoration connections. In Proceedings

of IEEE INFOCOM’02, New York, NY, June 2002.[12] D.H. Lorenz and D. Raz. A Simple Efficient Approximation Scheme for the Restricted Shortest Path Problem. Operations Research

Letters, 28(5):213–219, June 2001.[13] Q. Ma and P. Steenkiste. Quality of Service Routing for Traffic with Performance Guarantees. In Proceedings of International Workshop

on Quality of Service (IWQoS’97), Columbia University, New York, NY, May 1997.

Page 20: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

20

[14] A. Medina, A. Lakhina, I. Matta, and J. Byers. Brite: Universal topology generation from a user’s perspective. In Proceedings ofWorkshop the International Workshop on Modeling, Analysis and Simulation of Computer and Telecommunications Systems (MASCOTS’01), Cincinnati, OH, August 2001.

[15] A. Orda. Routing with end to end QoS guarantees in broadband networks. IEEE/ACM Transactions on Networking, 7(3):365–374, June1999.

[16] J. Sobrinho. Algebra and Algorithms for Qos Path Computation and Hop-by-Hop Routing in the Internet. In Proceedings of IEEEINFOCOM’01, Anchorage, Alaska, April 2001.

[17] J. Suurballe. Disjoint Path in Networks. Networks, 4:125–145, 1974.[18] B. M. Waxman. Routing of multipoint connections. IEEE Journal on Selected Areas in Communications, 6(9):1671–1622, 1988.

APPENDIX

Lemma 2:1) Let à �Án-°?% $°�R)#()()(*$°�Ä�p , °+9d�ïnw�x9�#()()(­��N9p , be a feasible restoration topology for � �� �`®� and let� be an ������� -walk in �Ïå that corresponds to à , i.e., � � n-°X%rW �� F�± � J ´ � MTWÏ°�RXWç()()(aW�°�Ä�p . Then,àq@�K��� / q@� �� � .2) Let � be an �������� -walk in � å such that àq@�K�c� / q@� �� � . Then, it is possible to decompose � into a

set of bridges n-°¨%�#()()(­$°�Īp that forms a feasible restoration topology.Proof: (1) We first prove that if àq§�K��Fµ´�J ´�I²M�� / q@� �� Fl´NJ ´�I²M� for

1Í/ ý then àq@�8�3Fl´NJ ±<I�M�� / q@� �� Fl´NJ ±<I�M�� . Sinceno link in bridge °�9 belongs to �� å , for each link �8PyD�}~%$$PaD'�d> °+9 it holds that àq§�8��Fµ´�J ë�L¼M� / àq§�K��Fµ´�J ë�L ð � M� �` FHë�L ð � J ë�L�M . As a result, for the immediate predecessor P}� of �N9 in °+9 it follows that àq@�K� Fµ´�J ëZËNM � / àq§�8� Fµ´�J ´8I²M � �q@�8� Fl´8I�J ëOËNM � . The feasibility of à implies that q§�8� Fl´8I�J ±<IiM � / q@� �� Fµ´�I¾J ±<I²M � � ¿ . Thus, àq@�K� Fµ´�J ëZËNM � � ` FHëZË�J ±<I²M /àq@�8� Fl´NJ ´�I²M � � q@�K� Fµ´�I¾J ±<I²M � / q@� �� Fl´NJ ±<I²M � � ¿ . Hence, according to the definition of adjusted delay, àqÆ�8� Fµ´�J ±<I�M � /q@�É�� Fl´NJ ±<I�M � .

Next, we show that if àq@�8� Fl´NJ ±<IiM � / q@� �� Fµ´�J ±<I²M � for1{/ ý then àq@�8� Fl´NJ ´�I�� � M � / q@� �� Fl´NJ ´�I�� � M � . Note that each

link �8PaD-�PyD�;=%¼� of the subwalk � FH±<I¾J ´�I�� � M of � belongs to �� å . Thus, since àq@�K� Fµ´�J ±<I�M � / q@� �� Fµ´�J ±<I²M � , for eachnode PÂ>§� F�±<IKJ ´8IH� � M it holds that àq@�8� Fl´NJ ëxM � / q@� �� Fl´NJ ëEM � . We conclude that àq@�8� Fl´NJ ´�I�� � M � / q@� �� Fµ´�J ´�I�� � M � .

Next, we show, by induction on1, that àq@�K� Fµ´�J ´�I²M � / q@� �� Fl´NJ ´�I²M � for

1¦/ ý . Clearly, àq@�8� Fl´NJ ´ � M �¦� . formsthe base case. If àq§�8� Fl´NJ ´�I²M � / q@�½�� Fµ´�J ´8I²M � for some

1 n�ý , then, as proven above, àq§�K� Fµ´�J ±<I�M � / q§�É�� Fµ´�J ±<I²M � ,which in turn implies that àq§�K� Fµ´�J ´8IH� � M � / q§� �� Fµ´�J ´8IH� � M � .

We proved that àqÆ�8� Fµ´�J ´ ¸ M � / q@�É�� Fµ´�J ´ ¸ M � , hence àqÆ�8� Fl´NJ ± ¸ M � / q@�½�� Fl´NJ ± ¸ M � , which completes the proof ofpart (1).

(2) We enumerate the nodes of � by PT% , POR , etc, i.e., � �|n-P­%�#()()(*$P~,®p .Let

%' R# £ be subsets of � ’s nodes, as follows: %���n-P~9T>§�B�<�KPY9�}~%�$P~9¾�?> �� å -�KP~9$P~9<;=%¼� ä> �� å p , R¨��n-P~9T>§�B�<�KPY9�}~%�$P~9¾� ä> �� å¾-�KP~9$P~9<;=%¼�¨> �� åip , £¨�|n-P~9T>§�B� P~9É> �� å -�8P~9i}~% $P~9¾� ä> �� å -�KP~9:$P~9<;=%�� ä> �� å àq§�8� Fl´NJ ë'I�M �r��q@� �� Fµ´�J ë'I²M � p .The restoration topology à is then formed by taking the portions of the walk. More specifically, we

decompose � into a set of bridges à , each bridge °r9­�¸nw�#9#()()(*��N9�p�>Æà is a subwalk of � such that:1) �x9É>�nw�ªp]» %Æ» £ ;2) �N9É>�n)� pR» RY» £ ;3) °+9 does not contain nodes that belong to

% , R or £ , except for �#9 and �N9 .

We prove that à is a feasible restoration topology. First, we show that for each P*9Í> % it holds thatàq@�8� Fl´NJ ë'I�M �r�tq@� �� Fµ´�J ë'I<M � . Indeed, according to the definition of adjusted delay, for each PQ9T> % , àq§�8� Fµ´�J ë'I²M �can be either q@� �� Fµ´�J ë'I²M� or ö . If àq@�8�3Fl´NJ ëEI²M�� is set to ö , it stays at ö for any extension of ��Fl´NJ ëEI²M , whichwould lead to a contradiction. Similarly, for each P=9�> R we have àq@�K��Fµ´�J ë'I²M� / q@� �� Fl´NJ ë'I�M8� , otherwise,according to the definition, the adjusted delay of the successor �a�KPQ9K� of P~9 in � would be set to ö , resultingin a contradiction.

Page 21: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

21

We proceed to show that the delay of each bridge °{9¨� nw�x9:#ê²ê²ê���N9�pÆ>[à exceeds the delay of the corre-sponding subpath �� Fµ´�I¾J ±<IiM of �� by at most ¿ . Since °�9 does not contain nodes that belong to

% , R or £ ,

except for �x9 and �N9 , it follows that, for each link \X�æ�8PO9$P~9<;=%¼��>é°+9 , except for the last one, it holds thatàq@�8�3Fl´NJ ë'IH� � M8�¡� àq@�8�3Fl´NJ ëEI²M�� � `jF�ëEI ð � J ëEI²M . Clearly, this condition holds if PO9<;=% ä> �� . If P~9<;=% > �� , then eitheràq@�8�3Fl´NJ ë'IH� � M8�ÌnAq@� �� Fl´NJ ëEI�� � M8� or àq@�8�3Fl´NJ ë'IH� � M��g«Aq@� �� Fl´NJ ëEI�� � M� , otherwise PY9<;=% would belong to £ . Hence,

according to the definition àq@�K��Fµ´�J ë'IH� � M���� àq@�8�3Fl´NJ ëEI²M�� � `�F�ë'I ð � J ë'I�M . Let P � be the immediate predecessorof �N9 . It follows that àq§�K� Fµ´�J ë Ë M �Â� àq§�8� Fµ´�J ´8I²M � � q@�K� Fµ´�I¾J ë Ë M � . Since �#9o> nw�ªpÍ» %`» £ it holds thatàq@�8�3Fl´NJ ´�I²M8�À�cq@� �� Fl´NJ ´�I<M�� , hence àq§�8�3Fl´NJ ë Ë M��X�cq§� �� Fµ´�J ´8I�M�� � q@�8�3Fl´8IKJ ë Ë M�� . Since �N9{>Sn)� pλ Rj» £ , it holdsthat àq@�8�3Fl´NJ ±<IiM8� / q@� �� Fl´NJ ±<I²M� , hence àqÆ�8�3Fl´NJ ë Ë M�� � `jFHë'I ð � J ë'I<M / q@� �� Fµ´�J ±<I�M�� � ¿ . Substituting àq@�K��Fµ´�J ë Ë M�� ,yields q@� �� Fµ´�J ´8I<M� � q@�8�3Fl´8IKJ ±<I²M�� / q@� �� Fl´NJ ±<IiM8� � ¿ , or q@�K��Fl´8IKJ ±<I²M�� / q@� �� Fl´8I¾J ±<I²M�� � ¿ . We conclude that therestoration topology is feasible, i.e., delay of each bridge exceeds the delay of the corresponding subpath of�� by at most ¿ .

Finally, we show that each link \��»�K!w9:$!-9<;=%��V> �� is protected by a bridge in à . Let !#D be the last nodebefore !C9 or !C9 itself that belongs to nw�ªpR» %Æ» £ . Also, let ! Ý be the first node after !C9<;=% or !-9<;=% itself thatbelongs to n)� pR» RY» £ . Then °�9Q��n-!ED)#ê�ê²ê²$! Ý p¯>Âà is a bridge that protects \ .Theorem 1: Let u � ± denote the minimum cost of a feasible ������� -walk in � å . Then, the following twoconditions hold:

1) Any walk � returned by Algorithm PP is feasible.2) If u �� ± / � then Algorithm PP returns a minimum cost feasible walk � .

Proof: (1) We prove by induction of1

that, for1 � . #ê²ê�ê²�Þ , àq@�8�3Fl´NJ ëEI²M���� q ë'I�� u 9 � , where u'"§� .

andu�9Q��u�9i}~% � u#F�ëEI ð � J ë'I²M . Since q ±�� u Ý � / q@� �� � , this implies that àq@�K�c� / q§� �� � .For

1 � ., we have àqÆ�8��Fµ´�J ´�M��� .

, which forms the base step. Suppose that àq@�K��Fµ´�J ë'I²M���»q ëEI�� u 9�� for1 « . . We show that àq@�8�3Fl´NJ ëEI�� � M8�{��q ë'I�� � � u 9<;=%&� . We consider the following three cases (recall that �� å=>@�Òåis the path formed from �� by reversing its links).ó �8P~9:$P~9<;=%¼�@> �� å : in this case, u�9<;=%���u 9 . Also, since �KPY9:$P~9<;=%�� results in the value for q ëEI�� � � u�9<;=%*� ,

it must be the case that q ë'I�� u�9f� / q@� �� Fµ´�J ë'I²M8� and q ë'IH� � � u�9l;=%*� is set to q@� �� Fl´NJ ëEI�� � M� . Clearly, sinceàq@�8�3Fl´NJ ëEI²M��Â� q ë'I�� u 9�� , it follows that àq@�8�3Fl´NJ ë'I�M�� / q@� �� Fl´NJ ë'I<M� and so by the definition of adjusteddelay, àq@�8� Fl´NJ ë'IH� � M �{��q@� �� Fl´NJ ëEI�� � M � . Thus, àq@�K� Fµ´�J ë'IH� � M �r��q ë'IH� � � u�9l;=%*� .ó �8P~9:$P~9<;=%¼� ä> �� å , q ë'I�� � � u 9<;=%*�½��q ë'I�� u 9�� � `jFHë'I�J ë'IH� � M : in this case, either PY9<;=% ä> �� , or PY9l;=%V> �� and oneof the following holds: q ë'I�� u 9 � � `jF�ë'I¾J ë'I�� � M¡«cq@� �� Fµ´�J ë'I�� � M�� � ¿ or q ëEI�� u�9f� � `jFHë'I�J ë'IH� � M / q@� �� Fl´NJ ëEI�� � M�� .In all of the cases, àq@�8� Fl´NJ ë'IH� � M �X� àq§�K� Fµ´�J ë'I�M � � ` FHë'I�J ë'IH� � M , and thus àqÆ�8� Fl´NJ ëEI�� � M �X��q ëEI�� � � u�9<;=%*� (sinceàq@�8� Fl´NJ ëEI²M ���tq ë'I�� u 9 � ).ó �8P~9:$P~9<;=%¼� ä> �� å , q ë'IH� � � u�9<;=%2��n»q ë'I�� u 9�� � `jF�ë'I¾J ë'I�� � M : in this case PY9<;=%g> �� , q@� �� Fl´NJ ë'IH� � M8�Ïn»q ë'I�� u 9�� �` F�ë'IKJ ë'I�� � M / q@� �� Fµ´�J ë'I�� � M � � ¿ . Since àq§�8� Fl´NJ ë'IiM �é� q ë'I�� u 9 � , the definition of adjusted delay im-plies that àq@�K� Fµ´�J ë'I�� � M �z�ïq@� �� Fl´NJ ë'IH� � M � and since q ë'I�� � � u 9<;=%&� is also set to q@� �� Fµ´�J ë'IH� � M � , it holds thatàq@�8�3Fl´NJ ëEI�� � M����q ë'I�� � � u 9<;=%*� .

(2) Let �� � nw�z�âPY"#x()()(*$P Ý �Ë� p be a feasible ������� -walk of minimum cost, i.e., v�� ��c���Au �� ± . Weshow by induction on

1that, for

1 � . #ê²ê²ê��Þ , q ë'I�� u�9f� / àq@� �� Fµ´�J ë'I²M � , where u'"¡� . and u 9½��u 9i}~% � u F�ë'I ð � J ëEI<M .Since q ±�� u Ý � / q§� �� Fµ´�J ±²M � / q@� �� � , this implies that the algorithm breaks out of the loop (in Step 16) atu / u Ý . Hence, the algorithm returns a walk � whose cost is most u Ý , i.e., vz�K�c� / u Ý ��vz� ���� .

The basis is trivially true since q ´�� . �X� .. Assume that for

1 ß ., it holds that q ë'I�� u�9f� / àq§� ���Fµ´�J ë'I²M�� .

We show that for1 � 6 it holds that q ë'IH� � � u�9l;=%&� / àq@� ��3Fl´NJ ëEI�� � M8� . We need to consider the following three

cases:ó �8P~9:$P~9<;=%¼�Ò> �� å : if àq§� ���Fµ´�J ë'I²M8� / q@� �� Fµ´�J ë'I²M� , then àq@� ���Fµ´�J ë'IH� � M��À�èq@� �� Fµ´�J ë'I�� � M�� and also q ë'IH� � � u�9l;=%*� /q@� �� Fµ´�J ë'I�� � M � (since q ë'I�� u�9 � / àq@� �� Fl´NJ ëEI²M � and P~9 is processed before PY9<;=% for cost u�9 ). Thus,

Page 22: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

22

q ë'I�� � � u 9<;=%&� / àq@� ���Fµ´�J ë'IH� � M8� . If àq§� ��3Fl´NJ ë'IiM8�¡«�q@� �� Fl´NJ ë'I�M8� , then àq@� ��3Fl´NJ ëEI�� � M�¦�cö , hence q ë'I�� � � u 9<;=%*� /àq@� ��3Fl´NJ ëEI�� � M� .ó �8P~9:$P~9<;=%¼� ä> �� å , P~9<;=% ä> �� or PY9l;=%�> �� and one of the following holds: àq@� ��3Fl´NJ ë'I�M�� � `jF�ë � J ë'IH� � M /q@� �� Fµ´�J ë'I²M � or àq§� �� Fµ´�J ë'I²M � � ` FHë � J ë'I�� � M «Áq@� �� Fµ´�J ë'I²M � � ¿ . In this case àq@� �� Fµ´�J ë'I�� � M �5� àqÆ� �� Fl´NJ ëEI�M � �` F�ë � J ë'IH� � M . Thus, since q ë'I�� u 9 � / àq@� �� Fl´NJ ëEI²M � , it follows that q ëEI�� � � u 9<;=%&� / àq§� �� Fµ´�J ë'IiM � � ` F�ë � J ëEI�� � M �àq@� �� Fl´NJ ëEI�� � M � .ó �8P~9:$P~9<;=%¼� ä> �� å , P~9<;=%[> �� and q@� �� Fl´NJ ë'I�M �En àq§� �� Fl´NJ ë'I�M � � ` FHë'I¾J ëEI�� � M / q§� �� Fµ´�J ë'I²M � � ¿ . In thiscase àq@� �� Fl´NJ ë'IH� � M ���æq@� �� Fµ´�J ë'IH� � M � . Since q ë'I�� u 9�� / àqÆ� �� Fl´NJ ëEI�M � , it follows that q ë'I�� u�9�� � ` FHë'I�J ë'IH� � M /q@� �� Fµ´�J ë'I²M � � ¿ , and q ë'IH� � � u 9<;=%&� is set to be q@� �� Fµ´�J ë'I�� � M � . As a result, it follows that q ëEI�� � � u 9<;=%&� /àq@� �� Fl´NJ ëEI�� � M � .

We conclude that if u � ± / � then the algorithm returns a feasible walk � in �Íå for which v��8�c� / u � ±and the theorem follows.

Lemma 7: Given a directed graph � , a delay constraint �` and an ���&���� -path, q@� �� � / �` , there exists arestoration topology �à for � �� �� �` 4 q§� �� ��� such that vz� �Ã�� / �¯ÌÒÎ , and each node !o> �à or link \+> �à isshared by at most two bridges.Proof: First, we introduce several definitions. Let ! and P be two nodes of �� �¸nw�&x()()(*�� p , such that !@ô�3Pand ! is a predecessor of P . We say that P is more right on �� than ! , and that ! is more left on �� than P .

Let �cn-°?%'x()()(*$° Ý p be a set of bridges, we denote by �z� � the set of nodes that belong to bridges °¦9 ,

i.e., �z� ����n-!­� !g>@°�9$°+9É> p . For a node !o>@�z� � , we denote by ° G a bridge in

such that !z>@° G andthe source node � G of ° G is most left on �� . Similarly, we denote by °¨åG a bridge in

such that !Â>]°¨åG and

the destination node ��åG of °{åG is most right on �� . The hyper-bridge �° G for � �!j� is a concatenation of paths° G Fl´ Õ J G�M and °¦åG FHG J ± î Õ M . Note that if ° G �3°¦åG then �° G ��° G .We show that the delay of each hyper-bridge �° G exceeds the delay of its protected segment by at most� �` 4 q@� �� � . Suppose that hyper-bridge �° G was formed by combining bridges ° G and ° åG . First, we note thatq@� �° G � / q@�8° G � � q@�K°¦åG � . Then, we observe that the the protected segment of �° G is a union of protected

segments of ° G and ° åG . We also note that the delays of bridges ° G and ° G exceed the delays of their protectedsegments by at most ¿ . Next, we observe that protected segments of ° G and ° åG may overlap, but the delayof their intersection is at most `O� �� � . From the above observations it follows that the delay of hyper-bridge�° G exceeds the delay of its protected segment by at most �ª¿ � `=�+�� � .

Let ù�¢n-°?%'�°�R)#()()(*$°�Ä�p be an optimal restoration topology for � �� �`®� , i.e., v��KÃ��À�c�ÍÌÏÎ . We provethe lemma by constructing a restoration topology �à for � �� �� �`®� , such that v�� �Ã�� / vz�¾Ã�� and no node isincluded in more than two hyper-bridges of �à .

The restoration topology �à is constructed in an iterative fashion. We maintain set

of bridges and set� of hyper-bridges. Initially,

includes all bridges of à and � is empty. At iteration1,1 � 6 ��y#()()( , we

first identify, for each node !]>7�o� � , the hyper-bridge �° G �ænw� G x()()(*�� G p for � $!y� . Next, we choose ahyper-bridge �°+9r�Anw�x9#()()(*��N9�p5>én �° G � !§>ì�o� ��p such that �x9 is no more right on �� than ��9�}~% ( � if

1 � 6)

and �N9 is most right on �� . Next, we add �°+9 to � and delete from

all bridges whose protected segment iscovered by �� Fµ´�J ± Õ I M . If

in nonempty, we proceed to the next iteration. Finally, the restoration topology �à is

formed from hyper-bridges in � .Since the protected segment of each bridge °{9 deleted from

is covered by the protected segments of

hyper-bridges in � , each link \À> �� belongs to a protected segment of a hyper-bridge in � . In addition, asshowed above, the delay of each hyper-bridge �°+9½> � exceeds the delay of its protected segment nw� G #()()(*�� G pby at most � �` 4 q@�½�� � . Thus, and since �z�¦�ÃÂ�dÜt�o�¾Ã�� , it follows that �à is a feasible restoration topologyfor � �� �� �`a� and vz� �ÃÂ� / vz�¾Ã�� .

Let PÊ>ì�z� � � , we prove that P is included in at most two hyper-bridges of � . Let1

be the first iteration

Page 23: 1 Algorithms for Computing QoS Paths with Restorationsuraj.lums.edu.pk/~te/cspf/bejerano02algorithms.pdf · 2 QoS routing has been the subject of several recent studies and proposals

23

at which a hyper-bridge that includes P was added to � . We denote by �°+90� nw�x9#()()(*��N9�p and �°+9<;=%Æ�nw�x9<;=%�#()()(*��N9<;=% p the hyper-bridges that were inserted to � at iterations1

and1 � 6 , respectively. We now

consider set

at iteration1 � 6 . If P ä>[��� � , then each hyper-bridge added to � after iteration

1does not

contain P . Otherwise we denote by �° ë �ânw� ë #()()(*�� ë p the hyper-bridge for � $P=� . Since P]> �°+9 , � ë is nomore right on �� than ��9 . Further, hyper-bridge �°+9<;=% was selected in iteration

1 � 6 such that ��9<;=% is mostright on �� , hence � ë is no more right on �� than �N9<;=% . If follows that the protected segment of any bridge thatcontains P is covered by �� Fµ´�J ±<I�� � M . Thus, at iteration

1 � 6 all bridges that contain P are deleted from

, and nohyper-bridge added to � at iteration áz« 1 � 6 contains P . Hence, P is included in at most two hyper-bridgesof � . It follows that each link \½> �à is included in at most two bridges of �à .