23
3/2/2001 Hanoch Levy, CS, TAU 1 QoS Routing Hanoch Levy March 2001

3/2/2001Hanoch Levy, CS, TAU1 QoS Routing Hanoch Levy March 2001

  • View
    217

  • Download
    3

Embed Size (px)

Citation preview

3/2/2001 Hanoch Levy, CS, TAU 1

QoS Routing

Hanoch Levy

March 2001

3/2/2001 Hanoch Levy, CS, TAU 2

What is Routing

Need to find a route from source to destination

source

Destination

b

c

f

e

3/2/2001 Hanoch Levy, CS, TAU 3

• Assign certain weights (additive, typically, hopefully) to edges of graph.

• Find “shortest” route from source to destination (the route for which the SUM of weights is minimal).

Single Objective Routing

S D

b

c

f

e

3/2/2001 Hanoch Levy, CS, TAU 4

S

D

b

c

f

e

1012

54 6

7

5

1. Shortest hop-count: S-b-D = 2

2. Shortest edge length: S-c-e-D = 17

3/2/2001 Hanoch Levy, CS, TAU 5

1. Marks are delay over edge:

– Delay is additive

– Yields minimum delay path

2. Marks are edge costs:– Cost is additive

– Yields minimum cost path

Use of Single objective Routing to achieve certain QoS

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 6

1. Marks are jitter over edge:

– Jitter is additive?• Depends on definition

• E.g. – if jitter is max delay difference between neighboring packets: additive.

– Yields minimum jitter path (if additive)

Use of Single objective Routing to achieve certain QoS

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 7

1. Marks are available bandwidth over edge:

• Is Bandwidth additive?– No – But: is subject to MIN

operation and can fit under this transformation to algorithms .

– Yields Maximum bandwidth path

Use of Single objective Routing to achieve certain QoS

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 8

1. Marks are Probability of loss over edge:

• Is loss additive?• No • Multiplicative:

1-L=(1-L1)(1-L2)

• Log is additive (or, can modify algorithm to deal with products)

• If loss is small, approximately additive

2. Can use algorithm for Minimal loss path.

Use of Single objective Routing to achieve certain QoS

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 9

1. Put all nodes in not-finalized with distance infinity.

2. Distance (S) 0.

3. v S

4. Add v to finalized

5. For all edges e from v to u (u in not) do:

1. Update distance(u) using MIN operation.

6. Select minimal weight node in not-finalized, denote it v, and go to 4.

Dijkstra’s Algorithm

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 10

1. Works for non-negative weights. 2. Complexity 1:

– Updating all edges : O(E)– Finding MIN, V times:

3. Complexity 2:• Implement binary heap:

4. Complexity 3: • Implement Fibonacci Heap• All operations but deletemin

are in O(1) amortized. Thus:

Dijkstra’s Algorithm: properties

SD

b

c

f

e

1012

54 6

75

)( 2 EVO

2V

)log)(( VVEO

)log( EVVO

3/2/2001 Hanoch Levy, CS, TAU 11

1. Centralized algorithm in nature

2. Hard to distribute.

3. Result is shortest path from S to D

4. With a little more effort (and same worst case) – get shortest path from S to ALL.

Dijkstra’s Algorithm: properties (cont)

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 12

1. Algorithm Bellman Ford:

2. For i=1 to |V| do– For each edge (v,u) do relax(u,v)

3. End

• Relax:= d(u) := min { d(u), d(v) + w((v,u))}

BellMan Ford Algorithm

3/2/2001 Hanoch Levy, CS, TAU 13

1. Complexity: O(VE)

2. Can conduct in a distributed mode on a graph:

1. Each node u performs:• For each edge e=v u do:

d(u):=min {d(u), d(v)+w(e)}

3. Distributed algorithms for network routing based on BF.

BellMan Ford Algorithm: Properties

3/2/2001 Hanoch Levy, CS, TAU 14

• Two weight functions, w1, w2.

• Problem: Find a path from S to D such that

• Problem is NP complete

• Heuristic solution in polynomial time

Multi Constraint Routing

2211 cwandcw

3/2/2001 Hanoch Levy, CS, TAU 15

• Due to: S. Chen, K.Nahrstedt, 1998, “On Finding Multi-Constrained Paths”, IEEE ICC ’98, June 1998.

• Problem Transformation: Make the second weight discrete: W2 can get only discrete values.

• Example: weights are only the integers. Costs in whole dollars.

• Note: practically it affects problem very little (depending on GRANULRITY of weights).

• Theorem 1: A solution to transformed problem is a solution to original problem.

• Reverse: If no solution found to transformed problem, there may exist a solution to the original problem.

Heuristic Solution

3/2/2001 Hanoch Levy, CS, TAU 16

1. We have two objectives: D1, D2.

2. During the algorithm each node is marked with two distances : (d1, d2).

3. D1 is continuous while D2 is discrete with g values.

4. Each real node v is represented by g virtual nodes, one for each value of the 2nd distance. We mark this node (v, g).

5. Initially we set D(v,g) = infinity. Put all nodes (v,g) in not-finalized.

6. D (S, 0) 0.7. (v,g) (S,0)8. Add (v,g) to finalized9. For all edges e from v to u do:

– Consider the node (u, g+g’) where g’ is the second weight of the edge e. Update the distance of (u, g+g’) to: Min {D(v,g) +D(e), D(u,g+g’}

10. Select minimal weight node in not-finalized, denote it (v,g), and go to 8.

Approach of Solution (Dijkstra version)

3/2/2001 Hanoch Levy, CS, TAU 17

Approach of Solution (Dijkstra version): cont

SD

b

c

f

e

1012

54 6

75

SD

b

c

f

e

1012

54 6

75

SD

b

c

f

e

1012

54 6

75

01

2

3/2/2001 Hanoch Levy, CS, TAU 18

1. Put all nodes in not-finalized with distance infinity.

2. Distance (S) 0.3. v S4. Add v to finalized5. For all edges e from v to u (u in not) do:

1. Generate a new node (u,g) where distance is sum of distances and g is sum of constraints.Update distance(u) using MIN operation

6. Select minimal weight node in not-finalized, denote it v, and go to 4.

Approach of Solution (Dijkstra version)

SD

b

c

f

e

1012

54 6

75

3/2/2001 Hanoch Levy, CS, TAU 19

• Time Complexity:

• Where g= granularity of constraint (the number of different values the constraint can get).

• If Fibonacci heap is used:

Complexity of Solution

)( 22 EgVO

))log(( EVgVgO

3/2/2001 Hanoch Levy, CS, TAU 20

• Use a similar approach (“virtual nodes at g layers) and run BF on it.

• Time Complexity:

• Where g= granularity of constraint (the number of different values the constraint can get).

BellMan Ford Version

)(gVEO

3/2/2001 Hanoch Levy, CS, TAU 21

• Alp´ar J¨uttner, Bal´azs Szviatovszki, Ildik´o M´ecs, Zsolt Rajk’o, INFOCOM 2001

• Consider the one objective to be minimized (cost) and one constraint (delay) to be met.

1. Each edge has two weights w1(e) and w2(e). 2. Want to minimize the two objectives (or minimize one while

constraining the other).3. Approach : consider an objective function of linear sum of

the two: w1 + w2. will be variable.4. For given , run Dijkstra and find shortest route.

1. If w2 constraint is met: OK. Done.– Otherwise: decrease x and go back to 4.

Lagrange Relaxation Based Method for the QoSRouting Problem

3/2/2001 Hanoch Levy, CS, TAU 22

• Procedure LARAC (s=source,t=tar,c=cost,d=delay,Ddel=max delay)

• Pc:=Dijkstra (s,t,c) /* path of min cost */

• If d(Pc) < Ddel then return Pc /* if legal – done */

• Pd:=Dijkstra (s,t,d) /* path on min delay */

• If d(Pd) > Ddel then return (“no solution”) /* not ok -> no chance */

• Repeat– Lam:= {c(Pc)-c(Pd)}/{d(Pd)-d(Pc)} /* diff(cost)/diff(delay) */

– r:= Dijkstra (s,t, Clam) /* Clam = c+ lam * d

– If Clam(r) = Clam (Pc) then return Pd:=r• Else if d(r) < Ddel then Pd:= r

• Else Pc:=r

• End repeat

• End procedure

Lagrange Relaxation :cont

3/2/2001 Hanoch Levy, CS, TAU 23

References

• S. Chen, K.Nahrstedt, 1998, “An Overview of Quality-of-Service Routing for the next generation High-Speed Networks: Problems and Solutions”, IEEE Network, Special Issue on Transmission and Distribution of Digital Video, Nov./Dec. 1998

• S. Chen, K.Nahrstedt, 1998, “On Finding Multi-Constrained Paths”, IEEE ICC ’98, June 1998.

• T. H. Cormen, C. E. Leiserson, R. L. Rivest, 1995, “Introduction To Algorithms”, MIT Press.

• H. de Neve, P. van Meighem, 2000, “TAMCRA: Tunable Accuracy Multiple Constraints Routing Algorithm”, Computer Communications, 23:667-679.

• R Guerin, A. Orda, 1997, “QoS-Based Routing in Networks with Inaccurate Information: theory and Algorithms”, IEEE INFOCOM ’97, Japan, April 1997.

• Alp´ar J¨uttner, Bal´azs Szviatovszki, Ildik´o M´ecs, Zsolt Rajk’o, “Lagrange Relaxation Based Method for the QoS Routing Problem”, IEEE INFOCOM’ 2001.