Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 18

Flow in Packet Networks

Professor Joseph Hui


jhui@asu.edu (480) 965 5188
Goldwater Room 411, ASU Tempe, AZ 85287

The Bellman SP Algorithm Revisited


B

Objective: Find shortest path from A to B


63

Bellmans Equation

Dn = min j Dj + dnj
40

40 C D

63

What if there are 2 shortest paths? Answer: Take either paths

Routing and Flow Assignment


Coupling Between Congestion and Routing:
Packets choose shortest path to route Route chosen becomes more congested
X+60 B

Notation
xl: Flow on link l (Packets/second) Delay on link l (second/packet) 10X+10 Delay linear in flow (D(x)=10x+10 on red links) (D(x)=x+60 on green links)
10X+10

C
D

D(xl):
E.g.

X+60 A

Problem:
How do we route traffic flows?

Problem of Flow Assignment


Problem: Want to route a total of x1 + x2 = 6 (packets/sec) from A to B through paths: ACB with flow x1 ADB with flow x2
10X+10 Objective: Packet routes via shortest path (Selfish or individualistic) B

X+60

10X+10 C

x1
D

x2

X+60

Solution to Flow Assignment


Network is symmetrical! Solution:
x1=3 gives D1= 40+63 = 103 x2=3 gives D2= 63+40 = 103
C

B
X+60=63

x1
D

10X+10 =40

Why solution good?


If we deviate from solution with 10X+10=40 x1=3+ and x2=3- (while x1 + x2 = 6) then D1 and D2
A

x2

X+60=63

So Path 2 is now shorter and flow shifts from to path 2! (Solution is a stable equilibrium!)

Conditions for Individual Optimality


Assumption: Delay on links are increasing function of flows on link Optimality Conditions: For paths p, p, p connecting the same end-points Dp = Dp if xp , xp > 0

Dp Dp

if xp = 0, xp > 0

Explanation for Individual Optimality


Non-zero flow paths have equal delay. (If Dp> Dp shifting flow from p p would reduce delay on p)

Zero flow paths have equal or larger delay than non-zero flow path for similar reason

Problem: Want to route from A to B a total of x1 + x2 = 6 (packets/sec) through


ACB with delay D1 = (10x1+10)+(x1+60)
ADB with delay D2 = (x2+60) +(10x2+10)

Social (Not Selfish) Routing


B

X+60

10X+10 C

x1
D

Objective: Minimize total delay: 10X+10 min x1x2 D(x1,x2)=x1D1 +x2D2 subject to x 1 + x 2 = 6 ; x1 , x 2 0

x2

X+60

Optimization Problem Minimize total delay: min x1x2 D(x1,x2)= x1D1 +x2D2 subject to x 1 + x 2 = 6 ; x1 , x 2 0 Socially Optimal Solution: Symmetry again!
x1 = x 2 = 3 Solution is stable also!

Solution for Socially Optimal Routing

Socially Optimality = Individual Optimality!

Conditions for Individual Optimality


Assumption: Delay on links are increasing and convex function of flows on link Optimality Conditions: For paths p, p, p connecting the same end-points D/xp = D/xp if xp , xp > 0 D/xp D/xp if xp = 0, xp > 0

Explanation for Individual Optimality


Non-zero flow paths have equal differential delay. If Dp> Dp shifting flow from p p would reduce total delay on p and p

Zero flow paths have equal or larger differential delay than non-zero flow path for similar reason

Is Social Optimality
always the same as Individual Optimality?

Socialism versus Capitalism

The Braess Paradox


Add a new fast link CD Delay x+10 only!
X+60
B

Objective: Route x1 + x2 + x3 = 6 from A to B through paths: ACB with flow x1 ADB with flow x2 10X+10 ACDB with flow x3

10X+10 C

x1 X+1 0 x2

x3
D

X+60

The Braess Paradox (Selfish Solution)


Individually Optimal Condition:
B

D1 = D2= D3 if x1 , x2 , x3 > 0
Lets make a guess! x1 = x2 = x 3 = 2 Path delays for ACB: D1=50+62=112 10X+10 ADB: D2=62+50=112 ACDB: D3=50+12+50=112

X+60

10X+10 C

x1 X+1 0 x2

x3
D

X+60

Solution is optimal since D1 = D2= D3 !

Socially optimal solution: x1 = x2 = 3; x3 = 0 Why? Check conditions: x1 = x2 > 0 and x3 = 0 implies D/x1 = D/x2

Socialist Solution
B

X+60

10X+10 C

x1 X+1 0 x2

x3
D

D/x3 D/x1

10X+10

X+60

Adding Link Made Things Worse!


Without additional link x1=x2=3 gives D1= D2 = 103 With additional link x1 = x2 = x3 = 2 gives D1 = D2= D3 = 112 > 103 !
WHY? WHY?? (Per Enron)
A C

B
X+60=63

x1
D

10X+10 =40

10X+10=40

x2

X+60=63

Selfish Solution is stable and bad! Though delay = 113, no incentive B to shift from x1 = x 2 = x 3 = 2 X+60 But Socialism is good but not stable! Socially optimal solution: 10X+10 x1 = x2 = 3; x3 = 0 C x1 x3 Consider the delays for: D X+1 0 x2 ACB: D1 = 103 10X+10 ADB: D2 = 103 ACDB D3 = 90<103! X+60 If packets (or men) are free, A those on ACB or ADB would flee to route ACDB!

Socialism Beats Capitalism!

The invisible hand of God may not work! Freedom to choose gives us tragedy of the commons!

Adam Smith versus Karl Marx

Maximizing total or social welfare is not fair! Some animals are more equal than other animals!

Government can be solution to the problem! Tax individuals for the congestion they cause!

You might also like