Distributed QoS Routing with Imprecise State Information - CiteSeerX

10 downloads 683 Views 260KB Size Report
We propose a distributed routing scheme, called ticket- based probing, which searches multiple paths in parallel for a quali ed one. The scheme is based on a ...
Distributed QoS Routing with Imprecise State Information  Shigang Chen, Klara Nahrstedt y Department of Computer Science University of Illinois at Urbana-Champaign fs-chen5, [email protected]

Abstract

1 Introduction

The goal of Quality-of-Service (QoS) routing is to nd a network path which has sucient resources to satisfy certain constraints on metrics such as delay and bandwidth. The state information maintained at every node is often imprecise in a dynamic network because of non-negligible propagation delay of state messages, periodic updates due to overhead concern, and hierarchical state aggregation. The information imprecision makes QoS routing dicult. The traditional shortest-path routing algorithm does not provide satisfactory performance when the state information is imprecise, and the ooding algorithm has an excessively high overhead. We propose a distributed routing scheme, called ticketbased probing, which searches multiple paths in parallel for a quali ed one. The scheme is based on a realistic imprecision state model. The number of paths searched is determined in a exible way, which allows the dynamic tradeo between the overhead and the routing performance. The proposed routing algorithms collectively utilize the state information of the intermediate nodes to guide the routing messages along the most appropriate paths, so that the success probability is maximized with limited overhead. The algorithms consider not only the QoS requirement but also the optimality of the routing path. Low-cost paths are given preference in order to improve the overall network performance.

The up-coming Gbps high-speed networks are expected to support a wide range of communication-intensive, real-time multimedia applications. The quality-of-service (QoS) requirements for the timely delivery of digitized audio-visual information raise new challenges for the development of integrated-service broadband networks. One of the key issues is QoS routing, which select network routes with the requested resources. The goal of routing solutions is twofolded: satisfying the QoS requirements for every admitted connection and achieving global eciency in resource utilization. Routing consists of two basic tasks. The rst task is to collect the state information and keep it up-to-date. The second task is to nd a satisfactory low-cost path for a new connection based on the collected information. In most proposed source or distributed routing schemes, every node is required to maintained a global state by either a distancevector protocol [9, 12] or a link-state protocol [11, 16]. Such global state is however inheritly imprecise in a dynamic environment where the trac load changes constantly. The imprecision is especially noticeable in large networks due to the following reasons. First, it takes non-negligible propagation time for a local state change to be broadcasted to other nodes. Second, a distance-vector (or link-state) protocol updates the state information periodically or upon triggering when signi cant state change is detected. There exists a tradeo between the update frequency and the overhead involved. In order to cope with the dynamics of network parameters such as bandwidth and delay, the state informa-

 This work was supported by the Airforce grant under contract number F30602-97-2-0121 and the National Science Foundation Career grant under contract number NSF CCR 96-23867. y Please address all correspondences to Klara Nahrstedt at Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL 61801, phone: (217) 244-6624, fax: (217) 244-6869.

1

tion has to be updated frequently enough, but that makes the communication overhead excessively high for large scale networks. Third, the hierarchical approach is likely to be used to solve the scalability problem of routing in large networks. However, the state aggregation in hierarchical routing increases the level of imprecision [7]. In this paper, we propose a distributed QoS routing scheme that works with imprecise state information. Two routing problems are studied. They are delay-constrained least-cost routing and bandwidth-constrained least-cost routing. The rst one is NP-complete [6]. A path which satis es a given delay constraint (or bandwidth constraint) is called a feasible path. The design goal of our heuristic algorithms is to nd a low-cost feasible path by only using imprecise state information available. The most closely related work was done by Guerin and Orda [7] and by Lorenz and Orda [8]. There are several important di erences which distinguish our work from theirs. First, the imprecision model in [7, 8] is based on the probability distribution functions. For instance, every node maintains, for every link l, the probability pl (w) of link l having a delay of d units, where d ranges from zero to maximum possible value. The problem of how to maintain the probability distributions was not discussed. If the distribution is collected over time, it ignores the current, speci c trac context that may be very useful to nd the best path. Our imprecision model is much simpler. Take the delay metric as example. A node i maintains two values for every possible destination t: (1) an estimation of the end-to-end delay from i to t, denoted as Di (t), and (2) an estimation of the maximum change of Di (t) for the next update period, denoted as Di (t), which can be easily computed from the recent state history.

Third, the algorithms in [7, 8] are source algorithms. The routing path is locally computed at the source node. Our algorithms are distributed algorithms. The path is computed by a restricted-di usion computation. It avoids the expensive centralized computation at the source, and collectively utilizes the state information kept at intermediate nodes to nd a path. Multi-path parallel routing is used to increase the probability of nding a low-cost feasible path. A technique, called ticket-based probing, is used to exibly bound the overhead. The rest of the paper is organized as follows. The imprecise state model is given in Section 2. The idea of ticket-based probing is brie y described in Section 3. Delayconstrained routing and bandwidth-constrained routing are studied in Sections 4 and 5, respectively. Simulation results are presented in Section 6. Finally, Section 7 concludes the paper.

2 System Models 2.1 Network model A network is modeled as a set V of nodes that are interconnected by a set E of full-duplex, directed communication links. Each node i keeps the up-to-date local state about all outgoing links. The state information of link (i; j) includes (1) the delay, delay(i; j), consisting of the queueing delay at node i and the propagation delay along the link, (2) the residual (unused) bandwidth, bandwidth(i; j), and (3) the cost, cost(i; j), which can be simply one as a hop count or a function of the link utilization. The delay, bandwidth and cost of a path P = i ! j ! :::k ! l are de ned as follows delay(P) = delay(i; j) + ::: + delay(k; l) bandwidth(P) = minfbandwidth(i; j); :::; bandwidth(k; l)g cost(P) = cost(i; j) + ::: + cost(k; l)

Second, the goal of [7, 8] is to maximize the probability of nding a feasible path. The optimality of such a path, which is probably equally important for high-performance networks, is ignored. On the contrary, the goal of our algoGiven a source node s, a destination node t and a delay rithms is to nd a low-cost feasible path. requirement D, the problem of delay-constrained routing is 2

from i to t is expected to be between Di (t) ? Di(t) and Di (t) + Di (t) in the next update period. b) Bandwidth Variation: Bi(t) keeps the estimated maximumchange of Bi (t) before the next update. The actual maximum bandwidth from i to t is expected to be between Bi (t) ? Bi (t) and Bi (t)+Bi (t) in the next update period. We describe a possible way to calculate Di (t) in the following. Bi (t) can be computed similarly. Di (t) is updated periodically together with Di (t). Consider an arbitrary update of Di(t) and Di (t). Let Diold (t) and Dinew (t) be the values of Di (t) before and after the update, respectively. Similarly, let Diold (t) and Dinew (t) be the 2.2 Imprecise state model values of Di (t) before and after the update, respectively. new new The following information is required to be maintained by Di (t) is provided by a distance-vector protocol. Di (t) either a distance-vector protocol or a link-state protocol at is calculated by every node i for every possible destination t. Dinew (t) =  Diold (t) + (1 ? )  jDinew (t) ? Diold (t)j 1) Connectivity: Ri(t) is a routing table entry, keeping a subset of adjacent nodes that can be used to route data The above formula is similar to the one used by TCP to trac to t. estimate the round-trip delay. The factor (< 1) deter2) Delay: Di(t) keeps the minimum end-to-end delay mines how fast the history information (Diold (t)) is forfrom i to t, i.e., the delay of the least-delay path. gotten, and (1 ? ) determines how fast Dinew (t) converges 3) Bandwidth: Bi (t) keeps the maximum end-to-end to jDinew (t) ? Diold (t)j. bandwidth from i to t, i.e., the bandwidth of the largestWith Di (t) updated periodically by the above formula, bandwidth path. it is still possible for the actual delay to be out of the range 4) Cost: Ci(t) keeps the least end-to-end cost of the paths [Di(t) ? Di(t); Di(t) + Di(t)]. One way to make such from i to t, i.e., the cost of the least-cost path. probability negligibly small is to enlarge Di (t). Hence, The above information, especially Di (t) and Bi (t), is in- we shall modify the formula and introduce another factor heritly imprecise in a dynamic network because of non- (> 1). negligible propagation delay of state messages, periodic updates due to overhead concern, hierarchial state aggregation, Dinew (t) =  Diold (t)+(1 ? )  jDinew (t) ? Diold (t)j etc., as detailed in Section 1. The imprecision model proposed by Guerin and Orda [7] is based on probability dis- Dinew (t) converges to  jDinew (t) ? Diold (t)j at a speed tribution functions. In contrast, we propose a much simpler determined by (1 ? ). model which can be easily implemented. Two additional For the purpose of simplicity, we do not apply the imprestate variables are required. cise model on Ri(t) and Ci (t). Such a simpli cation will a) Delay Variation: Di(t) keeps the estimated maxi- not degrade the routing performance signi cantly because of mum change of Di (t) before the next update. That is, based the following reasons. (1) The topology (Ri (t)) of the neton the recent history, the actual minimum end-to-end delay work can change, but is relatively infrequent comparing to 3

to nd a feasible path P from s to t s.t. delay(P)  D. When there are multiple feasible paths, we want to select the one with the least cost. Finding the delay-constrained least-cost path is NP-complete [6]. We shall propose a heuristic algorithm for this problem, which nds a delayconstrained path with low cost in a dynamic environment where only imprecise state information is available. Another problem is bandwidth-constrained routing, i.e., nding a path P satisfying bandwidth(P)  B, where B is the bandwidth requirement. When there are multiple such paths, the one with the least cost is selected.

the QoS state such as bandwidth and delay. (2) The cost metric (Ci(t)) is used for optimization, in contrast to the delay or bandwidth metric used for QoS constraints. Since there is not a strict cost bound requirement, certain degree of imprecision for Ci (t) is tolerable.

P 1 (1)

i

P 1 (1)

l

t

s P 4 (1) P 2 (2)

P 3 (1) j

3 Routing by Ticket-Based Probing

Figure 1: Two probes, P1 and P2, are sent from s. The number between the paratheses following a probe is the number of tickets carried. At node j, P2 is split into P3 and P4, each of which has one ticket. There are at most three probes at any time. Three paths are searched and they are s ! i ! t, s ! j ! t and s ! j ! k ! t. How many tickets/probes are generated at s initially and how to propagate the tickets/probes are discussed in Sections 4 and 5.

We propose a multi-path 1 distributed routing scheme, called ticket-based probing. The basic idea is outlined in this section while the operational details about delay-constrained routing and bandwidth-constrained routing are discussed in Sections 4 and 5, respectively. Probes (routing messages) are sent from the source s toward the destination t to search for a low-cost path which satis es the delay (or bandwidth) requirement. Certain number of tickets are issued at the source according to the contention level of network resources. Each probe is required to contain at least one ticket. Hence, the maximum number of probes at any time is bounded by the total number of tickets. Since each probe searches a path, the maximum number of paths searched from s to t is also bounded by the number of tickets. See Figure 1 for an example. The algorithm utilizes the state information at intermediate nodes to guide the limited tickets (the probes carrying them) along the best possible paths to the destination, so that the probability of nding a low-cost feasible path is maximized. A number of nice properties of the ticket-based probing are outlined below. 1) The routing overhead is controlled by the number of tickets in a very exible way, which allows the dynamic tradeo between the overhead and the routing performance. For those QoS requirements that can be easily satis ed according to the current state condition, a few or even one ticket are sucient to nd a feasible path. For other requirements that are harder to be satis ed, more tickets are issued. 2) The proposed scheme is designed to work with imprecise state information. The level of imprecision (information 1

k P 3 (1)

uncertainty) has an direct impact on the number of tickets issued. Multi-path parallel search increases the chance of nding a feasible path and thus provides a means to tolerate information imprecision. 3) Our scheme considers not only the QoS requirement but also the optimality of the selected path. Low-cost paths are given preference in order to improve the overall network performance. 4) A distributed routing process is used to avoid any centralized path computation, which could be very expensive and includes the execution of a shortest path algorithm (possibly multiple times) for every connection request.

4 Delay-Constrained Routing We propose a heuristic algorithm for the NP-complete delay-constrained least-cost routing problem based on ticketbased probing. When a connection request arrives at the source node, a certain number N0 of tickets are generated and probes are sent toward the destination. Each probe carries one or more tickets. Since no new tickets are allowed to be created by the intermediate nodes, the total number of tickets is always N0 and the total number of probes is at most N0 at any time. When a node receives a probe p with N(p) tickets, it makes at most N(p) copies of p, dis-

Search multiple paths for a feasible one.

4

tributes the tickets among the new probes, and then forwards them along selected outgoing links toward t. Probes can only travel along the paths that satisfy the delay requirement. Hence, any probe arriving at the destination detects a feasible path. There are two problems: (1) how to determine N0 , and (2) how to distribute the tickets of a received probe among the new probes. The rst problem is solved in Section 4.1 and the second problem is solved in Section 4.2.

4.1 Yellow tickets and green tickets

tickets to nd a low-cost feasible path with relatively low success probability and to use the yellow tickets as a backup to guarantee a high success probability of nding a feasible path which may however have a high cost.

4.1.1 Number of yellow tickets, Y0 Consider a connection request whose source, destination and delay requirement are s, t and D, respectively. Y0 is determined by Ds (t), Ds (t) and D. The curve of Y0 with respect to D is shown in Figure 2 (upper gure), which is explained in the following.

The N0 tickets are colored either yellow or green. The reason 1. If D  Ds (t)+Ds (t), then Y0 = 1. Because D is equal to or greater than the worst expected end-to-end delay for having two types of tickets is that they have di erent (Ds (t) + Ds (t)), a single yellow ticket is sucient to purposes. nd a feasible path. 1) The purpose of yellow tickets is to maximize the probability of nding a feasible path. Hence, yellow tickets (more 2. If Ds (t) + Ds (t) > D  Ds (t) ? Ds (t), then Y0 = D (t)?D precisely, probes carrying them) prefer paths with smaller d D (t2)+ D (t)  e, where  is a system paramedelays, so that the chance of satisfying a given delay requireter specifying the maximum allowable number of yellow ment is higher. tickets. increases. The number of yellow tickets, Y0 , is determined by the 3. If D < Ds (t) ? Ds (t), then Y0 = 0. Because D current network state and the delay requirement D (Figure is even less than the best expected end-to-end delay 2, upper gure). If D is very large and can be surely satis ed, (Ds (t) ? Ds (t)), the connection request is rejected and a single yellow ticket will be sucient to nd a feasible path. the QoS negotiation process is activated for a loosed deIf D is too small to be possibly satis ed, no yellow ticket is lay bound. necessary and the connection is rejected. Otherwise, more than one yellow tickets are issued to search multiple paths 4.1.2 Number of green tickets, G 0 for a feasible one. A detailed explanation is provided in in The curve of G0 with respect to D is shown in Figure 2 (lower Section 4.1.1. 2) The purpose of green tickets is to maximize the prob- gure), which is explained in the following. ability of nding a low-cost path. Green tickets prefer the 1. If D    (Ds (t) + Ds(t)), then G0 = l , where paths with smaller costs, which may however have larger  (> 1) and l ( 1) are system parameters.  specidelays and have thus less chance to satisfy the delay require es a threshold,   (Ds (t) + Ds (t)), beyond which D ment. is considered to be suciently large. When D is suThe number of green tickets, G0, is also determined by the ciently large, the minimum number ( l ) of green tickets current network state and the delay requirement (Figure 2, is assigned. Note that green tickets prefer the least-cost lower gure). A detailed explanation on how to calculate G0 paths whose delay may be larger than Ds (t) + Ds (t), is provided in in Section 4.1.2. which is the worst-case delay of the least-delay paths. It is generally an engineering issue to determine the most The overall strategy is to use the more aggressive green 5 s

s

s

Y0

Y0

1

1

D D s (t) -

0

D s (t)

D s (t)

D s (t) + D s (t)

0

G0

D D s (t) -

D s (t)

D s (t)

D s (t) + D s (t)

D s (t) -

D s (t)

D s (t)

D s (t) + D s (t)

G0 h

h

l

l

D s (t) -

0

D s (t)

D s (t)

D s (t) + D s (t)

(D s(t) +

D D s (t))

0

Figure 2: Curves of Y0 and G0 with respect to B

(D s(t) +

D D s (t))

Figure 3: Other possible curves for Y0 and G0

appropriate values for  and l .  = 2 and l 2 [1::3] There can be many other curves for Y0 and G0 (Figure work ne in our simulation (Section 6). 3), depending on the tradeo objective between the routing 2. If   (Ds (t) + Ds (t)) > D  Ds (t), then G0 = performance and the overhead. (t)+D (t))?D  ( h ? l )e + l , where h is d (D(D(t)+ D (t))?D (t) 4.2 Ticket-based probing the maximum allowable number of green tickets. 3. If Ds (t) > D  Ds (t) ? Ds (t), then G0 = If Y0 + G0 = 0, the connection request is rejected. OtherD (t) d D?D(Dt)+  h e. As D approaches to Ds (t) ? wise, probes carrying the tickets are sent from s toward t. (t) Ds (t), the delay requirement becomes increasingly A probe proceeds only when the path has a delay no more harder to be satis ed. Hence, the emphasis of rout- than D. Hence, once the probe reaches t, it detects a delaying shifts from minimizing the cost to maximizing the constrained path. Each probe accumulates the delay of the path it has traprobability of nding a feasible path. G0 is decreased in order to leave more room for yellow tickets. (Y0 is versed so far. More speci cally, a data eld, denoted as delay(p), is maintained in a probe p. Initially, delay(p) := 0; increased at the mean time.) whenever p proceeds for another link (i; j), delay(p) := 4. If D < Ds (t) ? Ds (t), G0 = 0. The connection request delay(p) + delay(i; j). is rejected. The source node s activates the routing process by sending Theoretically,  and h can be +1, which makes the itself a probe with Y0 yellow tickets and G0 green tickets. ticket-based probing a ooding scheme. In practice, a value The distribution and propagation of the tickets is described of 10 or less should be sucient according to our simulation, as follows: Suppose a node i, which may or may not be s, though it is generally an engineering issue to determine the receives a probe p with G(p) green tickets and Y (p) yellow best value. We can also take the source-destination distance tickets. Suppose k is the sender of the probe p. Let Rpi (t) = into account |  and h are larger when the distance is fj j delay(p)+delay(i; j)+Dj (t) ? Dj (t)  D; j 2 Ri(t) ? larger. fkgg. There is no need to send any ticket to j 2 Ri(t)?Rpi (t), s

s

s

s

s

s

s

s

6

because the best expected delay from j to t, Dj (t) ? Dj (t), plus delay(p) and delay(i; j) violates the delay requirement. If Rpi (t) = ;, invalidate all received tickets and discard them. Otherwise, for every j 2 Rpi (t), i makes a copy of p, denoted as pj , with Y (pj ) yellow tickets and G(pj ) green tickets, so that  Y (pj ) = Y (p) and  G(pj ) = G(p). We j 2R (t) j 2R (t) show how to determine Y (pj ) and G(pj ) in the following. Note that pj will be actually sent to j only if Y (pj )+G(pj ) > 0.

In the above scheme, tickets may cycle around loops. Three possible approaches to avoid cycling in nitely are: (1) At most one probe is allowed to be sent to every outgoing link, 2 (2) the number of hops a probe can traverse is bounded, i.e., over-aged probes will be discarded, or (3) a probe records its path to detect the possible loops. We have discussed two types of tickets. The distribution of yellow tickets is solely based on delay, and the distribution of green tickets is solely based on cost. Another type of tickets may be introduced, whose distribution is based on a 4.2.1 Distributing yellow tickets: combination of delay and cost. We omit the discussion on Y (pj ); j 2 Rpi (t), is determined based on an intuitive ob- the third type of tickets due to the space limitation. Our ticket-based probing algorithm nicely reduces to the servation: A probe sent toward the direction with a smaller traditional shortest-path routing algorithm when the impredelay should have more yellow tickets. cise model is not used. Suppose Di (t) = 0; 8i; t 2 V . Our ? 1 j) + Dj (t)) algorithm reduces to, if D  Ds (t), the source node issues a Y (pj ) = (delay(i; 0 ) + Dj (t))?1  Y (p) (delay(i; j j 2R (t) single yellow ticket, which traverses along the least-delay path to t, and in addition, several ( l ) green tickets are issued, Y (pj ) calculated by the above formula may not be an intrying to nd a feasible path with a lower cost. teger. Larger Y (pj )'s have the priority to be rounded to dY (pj )e, and smaller Y (pj )'s will be rounded to bY (pj )c, so 4.3 Termination and path selection that j 2R (t)Y (pj ) = Y (p). In order to calculate Y (pj ), i must maintain the value of In order to detect the termination of the routing process, Dj (t), for every adjacent node j 0 , which can be easily re- we require the intermediate nodes to send the invalidated 3 alized in either distance-vector or link-state algorithm. An- tickets directly to the destination t, instead of discarding other possible implementationis to inquire Dj (t) from j 0 and them. Therefore, all tickets will arrive at t eventually. The cache the value locally. The same thing is true for Cj (t) and routing process is terminated after t receives all (Y0 + G0) tickets. 4 Timeout is used to handle the problem of message Bj (t). (tickets) losses. If only invalidated tickets are received, t sends a message to s to inform the rejection of the request; 4.2.2 Distributing green tickets: otherwise, at least one feasible path is found. Recall that the purpose of green tickets is to nd a lowWhenever t receives a probe with a valid ticket, a feasicost feasible path. A probe sent toward the direction with a ble path is found, which is the one the probe has traversed. smaller cost should have more green tickets. Given j 2 Rpi (t), There are two ways to record the path: one is to record the path in the probe itself, and the other is to record the j) + Cj (t))?1 G(pj ) = (cost(i; (cost(i; j 0 ) + Cj (t))?1  G(p) p i

p i

0

0

p i

p i

0

0

0

0

2 ()

j 0 Rpi t

0

2 An intermediate node must record which outgoing links probes have been sent to. When a new probe is received, pi is re-de ned as f j ( )+ ( ) + j( ) ?  j( )  2 i( ) ? f g a probe has not been sent from to before.g p 3 The tickets in a received probe are invalidated if ( ) = ; (Section i 4.2, Page 7). 4 The number ( 0 + 0 ) is included in one of the probes sent to . i

R

Larger G(pj )'s have the priority to be rounded to dG(pj )e. Finally, if Y (pj ) + G(pj ) > 0, pj is sent to j, carrying Y (pj ) yellow tickets and G(pj ) green tickets.

j

delay p

delay i; j

k ;

D

t

i

D

t

D; j

R

Y

7

G

R

t

j

t

t

Y0 path at the intermediate nodes on a hop-by-hop basis. The rst approach requires larger size probes, and thus consumes more communication bandwidth and more memory space to store the probes when they are waiting in the queues. The second approach, however, requires memory space at the in1 termediate nodes to store the path. The second approach B B s(t) - B s (t) B s(t) B s(t) + B s (t) is appropriate for an ATM network where a probe with a G0 constant, smaller size is more likely to be able to t into a h single cell. A probe accumulates the cost of the path it traverses. If multiple probes arrive at the destination, the path with the least cost is selected. The path selection is made when the l B routing process is terminated or can be made earlier. When (B s(t) - B s (t)) B s(t) - B s (t) B s(t) B s(t) + B s (t) t receives a probe, it checks the cost carried by the probe. If Figure 4: Curves of Y0 and G0 with respect to B the quality of the corresponding path is good, for example, the cost is close to Cs (t), the path is selected immediately. there can be at most Y (p) + G(p) new probes descending Otherwise, t waits for more probes until one with good cost from p, among which (1) probes with yellow tickets choose is received or the routing process is terminated. paths based on delay, (2) probes with green tickets choose paths based on cost and (3) probes with both yellow and 4.4 Data Structure green tickets choose paths based on both delay and cost. The data structure of a probe p is as follows.

s: the source node

5 Bandwidth-Constrained Routing

t: the destination node Y0 + G0 : the total number of tickets

The probing algorithm of the bandwidth-constrained routing is similar to that of the delay-constrained routing. We shall brie y describe it in this section.

Cs(t): the expected minimum end-to-end cost

5.1 Determining the number of tickets

D: the delay requirement

k: the sender of p

Consider a connection request whose source, destination and bandwidth requirement are s, t and B, respectively. Let the number of yellow tickets be Y0 and the number of green tickets be G0. Figure 4 shows the curves of Y0 and G0 .

Y (p): the number of yellow tickets carried by p G(p): the number of green tickets carried by p delay(p): the accumulated delay of the path traversed so far

5.1.1 Number of yellow tickets, Y0

cost(p): the accumulated cost of the path traversed so far

1. If B  Bs (t) ? Bs (t), then Y0 = 1.

The last ve elds, k, Y (p), G(p), delay(p) and cost(p), are subject to modi cation as the probe traverses. Tickets are logical tokens and only the number of tickets is important:

2. If Bs (t) ? Bs(t) < B  Bs (t) + Bs(t), then Y0 = B (t)  e. d B?B2(t)+ B (t) s

s

s

8

5.2.2 Distributing green tickets:

3. If B > Bs (t) + Bs (t), then Y0 = 0.

A probe sent toward the direction with a smaller cost should have more green tickets. Given j 2 Rpi (t),

5.1.2 Number of green tickets, G0 1. If B    (Bs (t) ? Bs(t)), then G0 = l , where 0 <  < 1. 2. If   (Bs (t) ? Bs (t)) < B  Bs (t), then G0 = d B B(?t)?(B(B(t)(?t)?B B(t())t))  ( h ? l )e + l . s

s

s

s

s

3. If Bs (t) < B  Bs (t) + Bs (t), then G0 = d B?BB ((tt)) 

h e.

G(pj ) =

(cost(i; j) + Cj (t))?1  (cost(i; j 0 ) + Cj (t))?1  G(p)

2 ()

j 0 Rpi t

0

Larger G(pj )'s have the priority to be rounded to dG(pj )e. Only if Y (pj ) + G(pj ) > 0, pj is sent to j, carrying Y (pj ) yellow tickets and G(pj ) green tickets.

s

s

6 Simulation and Results

Extensive simulations were done to evaluate the proposed ticket-based probing algorithms. The results about the If Y0 +G0 > 0, s sends itself a probe with Y0 yellow tickets delay-constrained routing is presented in this section. Three performance metrics, success ratio, average message overand G0 green tickets to activate the routing process. head and average path cost, were de ned as follows. 4. If B > Bs (t) + Bs (t), then G0 = 0.

5.2 Ticket-based probing Suppose a node i receives a probe p with Y (p) yellow tickets and G(p) green tickets. For every j 2 Ri(t), i makes a copy of p, denoted as pj , with Y (pj ) yellow tickets and G(pj ) green tickets. Let k be the sender of p. De ne Rpi (t) = fj j bandwidth(i; j)  B ^ Bj (t) + Bj (t)  B; j 2 Ri(t) ? fkgg. Y (pj ) = G(pj ) = 0; 8j 2 Ri (t) ? Rpi (t). If Rpi (t) = ;, invalidate all the tickets and send them to t for the purpose of termination dection. The case Ri (t) 6= ; is considered in the following.

number of connections accepted success ratio = total number of connection requests total number of messages sent avg. msg. overhead = total number of connection requests total cost of all established paths average path cost = number of established routing paths

Sending a probe over a link is counted as one message. Hence, for a probe having traversed a path of l hops, l messages are counted. The network topology used in our simulation is shown in Figure 5, which expends the major circuits in ANSNET [4] by inserting additional links to increase the connectivity. The source node, the destination node and the de5.2.1 Distributing yellow tickets: lay requirement (D) of each connection request are ranp Given a node j 2 Ri (t), Y (pj ) is determined based on an domly generated. D is uniformly distributed in the range of intuitive observation: A probe sent toward the direction with [30; 160ms]. The cost of each link is uniformly distributed in a larger residual bandwidth should have more yellow tickets. [0; 200]. Each link (j; k) is associated with two delay values: delay-old(j; k) and delay-new(j; k). delay-old(j; k) is the last fbandwidth(i; j); Bj (t)g  Y (p) Y (pj ) = minmin delay value advertised by the link to the network. Note that fbandwidth(i; j 0); Bj (t)g j 2R (t) Di (t); 8i; t 2 V , is calculated based on the delay-old values Larger Y (pj )'s have the priority to be rounded to dY (pj )e. of all links. delay-new(j; k) is the actual delay of the link at 9 0

p i

0

the time of routing. delay-old(j; k) is uniformly distributed in [0; 50ms], while delay-new(j; k) is uniformly distributed in [(1 ? )  delay-old(j; k); (1 + )  delay-old(j; k)], where  is a simulation parameter, called imprecision rate, specifying the largest percentage di erence of delay-new(j; k) from delay-old(j; k).

20 23

18

1

10 19

11 7 2

12

13

25

3 15 5

Three algorithms are simulated: the ooding algorithm, the ticket-based probing algorithm (TBP), and the shortest-path algorithm (SP). The ooding algorithm is equivalent to TBP with in nite yellow tickets and zero green tickets. It oods routing messages from the source to the destination. Each routing message accumulates the delay of the path it has traversed, and the message proceeds only if the accumulated delay does not exceed the delay bound. As shown by Shin and Chou [15], when certain scheduling policies are used and the routing messages are set to appropriate priority, the routing messages travel at speeds according to the link delays. Hence, the routing message travels along the minimum-delay path arrives rst. With this assumption, an intermediate node needs only to propagate the rst received message and discard all successively received ones. There will be at most one message sent along every link. The algorithm nds a feasible path whenever there exists one and thus is the optimal algorithm in terms of success ratio. The ooding algorithm does not have an ecient mechanism for termination detection. It selects the routing path when the destination receives the rst routing message. The advantage of the ooding algorithm is that it does not need to maintain any global state. The disadvantage is that too many routing messages are sent. The system parameters of the TBP algorithms are shown in Table 1. See Section 4 for an explanation about each parameter. The SP algorithm maintains a state vector at each node i by a distance-vector protocol. The vector has an entry for every possible destination t, containing two elements, Di (t)

28 27

4

delay-old(j; k)

24 26

14

6 8

imprecision rate = superbf jdelay-new(j; k) ? delay-old(j; k)j g

21 22

17

9

0

16

30

29

31

Figure 5: network topology  

l

h

4 1.5 2 6

Table 1: System parameters for TBP and i(t). Di (t) is the delay of the least-delay path from i to t, and i (t) is the next hop on the least-delay path. Di (t) and i (t) may be imprecise since they are calculated based on the last advertised delay values (delay-old) of all links. When a request arrives at s with D  Ds (t), the algorithm sends out one routing message along the least-delay path to check the current resource availability for possible connection establishment.

6.1 Success ratio Figures 6-9 compare the success ratios of the three algorithms. The success ratio is a function of both average delay requirement and imprecision rate. The form is represented by the x axis and the later is shown by di erent gures. In each gure, as the delay requirement becomes larger, it is easier to satisfy the requirement and thus the success ratio becomes higher. The ooding algorithm, as expected, has the best success ratio. The TBP algorithm has a very close success ratio, even when the imprecision rate is as high as 50%. This is because TBP searchs multiple paths and the number of paths searched are adjusted according to how hard it will be to nd a feasible path. In addition, the state information of the intermediate nodes is collectively used to direct the probes along the most appropriate paths. The SP 10

of TBP is lower than that of SP.

algorithm performs much worse when the imprecision rate becomes high. Figures 10-11 show the success ratios of BFP and SP relative to that of the ooding algorithm. For an imprecision rate of 10%, BFP performs as good as the ooding algorithm, while SP is up to 4% worse than the ooding algorithm. For an imprecision rate of 50%, BFP is up to 7% worse than the

ooding algorithm, while SP is up to 52% worse than the

ooding algorithm.

6.4 Reduce the message overhead of SP Two heuristics can be used to reduce the message overhead of SP. One is to bound the maximum number of hops a probe can traverse. We set it to be twice the source-destination distance, 2  ds;t. The other is to make a restricted routing table (Ri (t)). In the previous simulations, we let Ri (t) be the set of all adjacent nodes of i. In the following simulation, we use a topology-depended routing table and de ne

6.2 Message overhead Figures 12-15 compare the average message overhead of the three algorithms. The ooding algorithm has a very high message overhead. SP has the lowest overhead. TBP has an overhead higher than that of SP but much lower than that of the ooding algorithm. The overhead of TBP increases as the imprecision rate increases. We will see in Section 6.4 that some simple heuristics signi cantly cut the message overhead of TBP.

Ri (t) = fj j di;t = dj;t + 1 _ di;t = dj;t; 8(i; j) 2 E g The ticket-based probing algorithm with the above heuristics is denoted as TBP2, in contrast to the original algorithm TBP. TBP2 signi cantly reduces the average message overhead, as shown in Figures 21-22. When the imprecision rate is 50%, the overhead is reduced by more than half. TBP2 has lower success ratio due to more restricted probe forwarding. However, the success ratio is reduced by a very small factor as shown in Figures 23-24.

6.3 Average path cost Figures 16-19 compare the average path cost of the three algorithms. TBP has a much lower path cost than the ooding algorithm and SP. This is because TBP uses both the delay metric and the cost metric to make the routing while the other two algorithms use only the delay metric. Recall that the green tickets are designed to nd the low-cost feasible paths. There is one exception in Figure 19 that the average path cost of TBP is higher than that of SP when D is relatively low. That can be explained as follows: TBP has a much higher success ratio when the imprecision rate is 50%. Those connections, that TBP is able to establish but SP is not able to, tend to have relatively long routing paths, as observed in the simulation. They also tend to have higher cost, which brings the average path cost up. A fairer comparison is made in Figure 20, where only the connections which can be established by SP are considered. The average path overhead

7 Related Work Much work has been done on the unicast QoS routing recently. Wang and Crowcroft [18] used the Dijkstra's algorithm in their bandwidth-delay-constrained source routing. Ma and Steenkiste [10] studied and compared four bandwidth-constrained source-routing algorithms which select the widest-shortest path, the shortest-widest path, the dynamic-alternative path and the shortest-dist(P, 1) path, respectively. The Tenet's dynamic resource management scheme [13] provides source routing by using the BellmanFord algorithm that nds a delay-bounded path with the least hops. Guerin and Orda [7] studied the bandwidthconstrained and delay-constrained source routing with imprecise network states based on probability distributions. A further study was done done by Lorenz and Orda recently 11

imprecision rate: 10% 1

0.9

0.9

0.8

0.8

Success ratio

Success ratio

imprecision rate: 5% 1

0.7

0.6

0.5

0.7

0.6

0.5

0.4

0.4 Flooding TBP SP

0.3 40

60 80 100 120 140 average delay requirement D (ms)

Flooding TBP SP

0.3 160

40

Figure 6: success ratio (imprecision rate: 5%)

60 80 100 120 140 average delay requirement D (ms)

160

Figure 7: success ratio (imprecision rate: 10%)

imprecision rate: 25%

imprecision rate: 50%

1

1

0.9

0.9 0.8

0.8

0.7

Success ratio

Success ratio

0.7

0.6

0.6 0.5

0.5 0.4 0.4

0.3

0.3

0.2

Flooding TBP SP

0.2 40

60 80 100 120 140 average delay requirement D (ms)

Flooding TBP SP

0.1 160

40

Figure 8: success ratio (imprecision rate: 25%)

60 80 100 120 140 average delay requirement D (ms)

Figure 9: success ratio (imprecision rate: 50%)

12

160

imprecision rate: 10%

imprecision rate: 50%

1

Success ratio relative to the flooding algorithm

Success ratio relative to the flooding algorithm

1 0.995 0.99 0.985 0.98 0.975 0.97

0.9

0.8

0.7

0.6

0.5 0.965 TBP SP

0.96 40

60 80 100 120 140 average delay requirement D (ms)

TBP SP

0.4 160

40

60 80 100 120 140 average delay requirement D (ms)

160

Figure 10: relative success ratio (imprecision rate: 10%)

Figure 11: relative success ratio (imprecision rate: 50%)

[8]. Chen and Nahrstedt proposed a source routing heuristic for the NP-complete multi-constrained routing problem [2]. Wang and Crowcroft's distributed shortest-widest path algorithm [18] nds a path with the maximum bandwidth (widest path). If multiple widest paths exist, the algorithm chooses the shortest one. The delay-constrained least-cost (DCLC) routing problem, i.e., nding a delay-bounded path with the minimum cost, is NP-complete [6]. A centralized algorithm was reported by Widyono [19] which solves the DCLC problem with an exponential time complexity. Salama et al [14] proposed a distributed algorithm as a heuristic solution to the DCLC problem. Sun and Langendorfer [17] improved the worst-case performance of the Salama's algorithm. PNNI (Private Network-Network Interface) [5] is a hierarchical link-state routing protocol. The source routing is used on each level of the hierarchy. If the selected route does not have sucient resources for the connection, the routing process is cranked back to the source (entry switch) node of the closest hierarchy level and an alternative path is selected. In contrast to the sequential fail-and-retry crankback approach, our proposed algorithms search multiple paths in parallel. The non-QoS multi-path routing strategies based on controlled ooding were studied in [1, 20]. The QoS-aware multi-

path routing algorithms proposed by Cidon et al [3] combine the process of routing and resource reservation. Resources are reserved in parallel along multiple paths called a diroute, and the destination chooses the best one if the reservation succeeds on more than one paths.

8 Discussion In this paper, we proposed a ticket-based distributed QoS routing scheme which works for dynamics networks where the global state information at every node is inheritly imprecise. Our simulations show that the scheme achieves high success ratio and low-cost feasible paths with modest overhead. It can tolerate high degree of imprecision. The idea of distributed probing can also be used together with the existing source routing algorithms. A source routing algorithm selects a primary routing path and several secondary paths based on the global network state which may be inaccurate. The number of secondary paths depends on the load conditions. A probe is sent along every selected path to the destination and checks the resource availability along the way. Resources can be tentatively reserved on the primary path. The primary path is chosen if it has sucient resources. Otherwise, the best secondary path is used. No 13

imprecision rate: 5% 80

Flooding TBP SP

Flooding TBP SP

70

No. of messages per connection request

70

No. of messages per connection request

imprecision rate: 10% 80

60

50

40

30

20

60

50

40

30

20

10

10

0

0 40

60 80 100 120 140 average delay requirement D (ms)

160

40

Figure 12: messages overhead (imprecision rate: 5%)

60 80 100 120 140 average delay requirement D (ms)

Figure 13: message overhead (imprecision rate: 10%)

imprecision rate: 25% 80

Flooding TBP SP

70

No. of messages per connection request

No. of messages per connection request

imprecision rate: 50% 80

Flooding TBP SP

70

160

60

50

40

30

20

10

60

50

40

30

20

10

0

0 40

60 80 100 120 140 average delay requirement D (ms)

160

40

Figure 14: messages overhead (imprecision: 25%)

60 80 100 120 140 average delay requirement D (ms)

160

Figure 15: message overhead (imprecision rate: 50%)

14

imprecision rate: 10% 400

imprecision rate: 5% 400

380 380

Average cost per established path

360

Average cost per established path

360 340 320 300 280

340 320 300 280 260

260 240 240

Flooding TBP SP

220 40

60 80 100 120 140 average delay requirement D (ms)

Flooding TBP SP

220 40 160

60 80 100 120 140 average delay requirement D (ms)

160

Figure 17: cost per established path (imprecision rate: Figure 16: cost per established path (imprecision rate: 5%) 10%) imprecision rate: 25%

imprecision rate: 50%

400

500

380 450

Average cost per established path

Average cost per established path

360 340 320 300 280

400

350

300

260 250 240

Flooding TBP SP

220 40

60 80 100 120 140 average delay requirement D (ms)

Flooding TBP SP

200 160

40

Figure 18: cost per established path (imprecision rate: 25%)

60 80 100 120 140 average delay requirement D (ms)

160

Figure 19: cost per established path (imprecision rate: 50%)

15

imprecision rate: 50% 450

Average cost per established path

400

350

300

250 Flooding TBP SP

200 40

60 80 100 120 140 average delay requirement D (ms)

160

Figure 20: Comparing average cost of the same set of established paths (imprecision rate: 50%) tickets are needed, but each probe must carry the path it [10] Q. Ma and P. Steenkiste. Quality-of-service routing with performance guarantees. Proceedings of the 4th Internaexplores. tional IFIP Workshop on Quality of Service, May 1997. [11] J. Moy. Ospf version 2. Network Working Group Internet Draft, November 1992. [12] International Standards Organization. Protocol for exchange of inter-domain routing information among intermediate systems to support forwarding of iso 8473 pdus. ISO/IEC/JTC1/SC6 CD10747. [13] C. Parris, H. Zhang, and D. Ferrari. Dynamic management of guaranteed performance multimedia connections. Multimedia Systems Journal, 1:267{283, 1994. [14] H. F. Salama, D. S. Reeves, and Y. Viniotis. A distributed algorithm for delay-constrained unicast routing. INFOCOM'97, Japan, April 1997. [15] K. G. Shin and C.-C. Chou. A distributed routeselection scheme for establishing real-time channel.

References [1] Y. Azar, J. Naor, and R. Rom. Routing strategies for fast networks. IEEE Infocom'92, pages 170{179, 1992. [2] S. Chen and K. Nahrstedt. On nding multi-constrained paths. IEEE International Conference on Communications, June 1998. [3] I. Cidon, R. Rom, and Y. Shavitt. Multi-path routing combined with resource reservation. Infocom'97, Japan, pages 92{100, April 1997. [4] D. E. Comer. Internetworking with TCP/IP, Volume I, Principles, Protocols, and Architecture. Prentice Hall, 1995. [5] ATM Forum. Private network network interface (pnni) v1.0 speci cations. May 1996. [6] M. Garey and D. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. New York: W.H. Freeman and Co., 1979. [7] R. Guerin and A. Orda. Qos-based routing in networks with inaccurate information: Theory and algorithms. Infocom'97, Japan, April 1997. [8] D. H. Lorenz and A. Orda. Qos routing in networks with uncertain parameters. Infocom'98, March 1998. [9] K. Lougheed and Y. Rekhter. Border gateway protocol 3 (bgp-3). RFC 1267, SRI International, Menlo Park, CA, October 1991.

Sixth IFIP Int'l Conf. on High Performance Networking Conf. (HPN'95), pages 319{329, Sep. 1995.

[16] M. Steenstrup. Inter-domain policy routing protocol speci cation: Version 1. Internet Draft, May 1992. [17] Q. Sun and H. Langendorfer. A new distributed routing algorithm with end-to-end delay guarantee. Unpublished paper, 1997. [18] Z. Wang and J. Crowcroft. Qos routing for supporting resource reservation. JSAC, September 1996. [19] R. Widyono. The design and evaluation of routing algorithms for real-time channels. Technical Report, ICSI TR-94-024, University of California at Berkeley International Computer Science Institute, June 1994.

16

imprecision rate: 50% 18

16

16

14

14

No. of messages per connection request

No. of messages per connection request

imprecision rate: 10% 18

12 10 8 6 4 2

12 10 8 6 4 2

TBP TBP2

0 40

60 80 100 120 140 average delay requirement D (ms)

TBP TBP2

0 160

40

Figure 21: relative success ratio (imprecision rate: 10%)

60 80 100 120 140 average delay requirement D (ms)

160

Figure 22: relative success ratio (imprecision rate: 50%)

imprecision rate: 10%

imprecision rate: 50%

1

1

0.9

0.9

0.8 0.8

Success ratio

Success ratio

0.7 0.7

0.6

0.6

0.5 0.5 0.4 0.4

0.3 TBP TBP2

0.3 40

60 80 100 120 140 average delay requirement D (ms)

TBP TBP2

0.2 160

40

Figure 23: success ratio (imprecision rate: 10%)

60 80 100 120 140 average delay requirement D (ms)

Figure 24: success ratio (imprecision rate: 50%)

17

160

[20] W. T. Zaumen and J. J. Garcia-Luna-Aceves. Shortest multipath routing using generalized di using computations. Proc. IEEE INFOCOM 98, San Francisco, California, March 29 { April 2 1998.

18