20
L13. Shortest path routing D. Moltchanov, TUT, Spring 2014

L13. Shortest path routing D. Moltchanov, TUT, Spring 2008 D. Moltchanov, TUT, Spring 2014

Embed Size (px)

Citation preview

L13. Shortest path routing

D. Moltchanov, TUT, Spring 2008

D. Moltchanov, TUT, Spring 2014

OutlineNetwork dimensioning problems

Delay optimizationShortest-path routing problemsFair networksTopological designRestoration design

NDP: delay optimization

Packet delay on a single linkExample: let

Average packet size: KbyteLink rate: MbpsThe service rate of a link (how many packets per second)

Now consider single node performanceMean delay in M/M/1 queue as we know is

For arrival rate packets per second (pps) delay is

1 1( , )

1D

100

[ ] 1E P 1.54C

1.54 6190

[ ] 8000

C epps

E P

1 100(100,190) 11.11 ., 0.555

190 100 190D ms

Packet delay on a single linkImportant observations

Delay bound 15ms: utilization should be less than 64%!Delay is highly non-linearUtilization determine delayWe may work with just link utilization not delays!

Packet delay on a single link11 ms is really small! Should we care?First reason: a lot of hops!

16*11 = 176ms. + propagation delay (D/C) + protocols

Second reason: this is just queuing delay…Other delay components are unavoidable, e.g. propagation delay

Packet delay on a single linkAll these hypotheses

Self-similar trafficLong-range depends traffic Non-stationary trafficPareto distribution of transfer sizesHeavy-tailed distributions of transfer sizes…Are having one thing in-common: high variability

High variabilityTraffic no longer smoothes our like Poisson trafficStatistical multiplexing gains are not that hugePoisson is still a good approximation

Packet delay on a single linkThe following are really important

M/M/1 is just an approximationOften M/M/1 is too optimistic (mean=variance for Poisson traffic)Keep utilization less than 50% (not 64%) to get within 15ms. delay

NDP: delay minimizationUncapacitated

minimize subject to

Capacitated

minimize subject to

Solution: convex solvers, e.g. Mathlab, CPLEX, Maple, etc.

1

1E

e e e

Fc y

1

, 1,2, ,dP

dp dp

x h d D

1 1

, 1,2, ,dPD

edp dp ed p

x y e E

0, 0y x

1

, 1,2, ,dP

dp dd

x h d D

1 1

, 1,2, ,dPD

edp dp ed p

x c e E

0x

1

1E

e e e

Fc y

NDP: getting rid of convexityPiecewise linear approximation

1( ) ( ) , , 1,2, ,k k k k kf z f x a z b s z s k k

Shortest path routing

SPR: shortest path routingShortest path routing (SPR) is what IGP do

Intermediate system to intermediate system (IS-IS)Open shortest path first (OSPF)Do not confuse with shortest path first allocation of NDP

Shortest path routingFor each demand its volume is realized over SPSP is with respect to some link weight systemNot with respect to the minimum number of hops!Values are sometimes called “link costs”

Why the difference?Routing cost is not the same as routing over SPsYou’ll see it in what followsMajor one: in SPR rules are enforced by SPR protocols (e.g. OSPF)

d dh

1 2( , , , )Ew w w w

, 1,2, ,iw i E

SPR: four nodesLet link weights in our example to be

then the following path are will be used for entire demands

while the rest of unique as SPs are uniquehappens to be non-bifurcatedThis is what OSPF will do!

Solution is denoted asTo highlight dependence on

(1,3,1,2,4)w

w1=1w2=3

w4=2

w5=4

w3=1

13 13

21 21

32 32

1: (1,3,4) 4 15

2 : (1) 1 10

3: (3,4) 3 10

d P weight x

d P weight x

d P weight x

0ijx

( )x w

w

SPR: four nodes single path SPRAre there any problems with solution,

Recall the link rates we used: Link load vector

It does not fit the network at all What if you’ll run OSPF?

Trivial solution: make

not always possible…

This is single path SPR problem

w1=1w2=3

w4=2

w5=4

w3=1

13 21 3215, 10, 10x x x

(5,10,10,5,30)c

c1=5c2=10

c3=10

c5=30

c4=5

13 21 32(1,3,4), (1), (3,4)P P P

( ) (25,0,35,35,0)y w

( ) (25,0,35,35,0)c y w

SPR: four nodes single path SPRSingle path SPA allocation problem

Demand constraints:

Capacity constraints:

Non-negativity:

Very complex problemNon-bifurcated single path solution may not existHard to get even when existsAlso: the weight system inducing the solution may not exist!!!

1

, 1,2, ,dP

dp dd

x h d D

1 1

, 1,2, ,dPD

edp dp ed p

x c e E

0x

SPR: special problemConsider the following problem

Demand d = 1 between nodes 1 and 7Demand d = 2 between nodes 2 and 6Demands volumesLink capacities are all 1,

Analyzing the problemTwo path for each demand

Solution is evident: allocate

Is there a link weight system inducing it? No!Not possible for single shortest path!What is about splitting flows?

1 2 1h h 1,ec e

11 12(1,3,5,7), (1,3,4,5,7)P P

21 22(2,3,4,5,6), (2,3,5,6)P P

11 12 21 221, 0, 1, 0x x x x w

SPR: four nodes ECMP ruleLet’s get back to four nodes example

Assume the link weight system isShortest path with respect to the number of hops now!Very natural for networks

Consider demand d = 1 Two shortest paths!

Which path should OSPF use?

ECMP (Equal Cost Multipath Rule)Split between shortest pathHalf to Half to

(1,1,1,1,1)w

w1=1w2=1

w4=1

w5=1

w3=1

c1=5c2=10

c3=10

c5=30

c4=5

11 12(2,4), (1,5)P P

11 (2,4)P

12 (1,5)P

SPR: ECMP ruleConsider the problem on the right

Demand d = 1 from node 6 to 7,Link weight system: Three shortest path from 6 to 7

What is the allocation according to OSPF?

What is about d = 2, from 7 to 6, ?Same three pathsAllocation

Think why they are different…

1,ew e 1 1h

11 12 13(6,1,3,7), (6,1,4,7), (6,2,5,7)P P P

11 12 130.25, 0.25, 0.5x x x

2 1h

21 22 23

1 1 1, ,3 3 3

x x x

SPR: special problemAnalyzing the problem

Two path for each demand

Solution is evident: allocate

No weight system inducing single path!

ECMP rule allocation?Weight 1 to links 3-4, 4-5Weight 2 to other linksCosts become 6 for all pathsECMP of OSPF can be enforced

11 12(1,3,5,7), (1,3,4,5,7)P P

21 22(2,3,4,5,6), (2,3,5,6)P P

11 12 21 221, 0, 1, 0x x x x w

2

1

1

2

2

2

2

SPR: general problemsForward problem:

Given a set of link weights Find the shortest path(s) from one node to anotherClassic graph theory problem you already studied

Dijkstra and Bellman-Ford algorithmsAlgorithms for all shortest path (for ECMP)

Backward problemFor given link capacities and demand volumesFind a link weight systemSuch that flow allocation is feasibleSetting up link weights

The latter is what we are going to study