network teleology damon wischik

21
Network teleology Damon Wischik http://www.cs.ucl.ac.uk/staff/D.Wischik/Talks/teleology.html

Upload: francis-richards

Post on 21-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Network teleology Damon Wischik

Network teleology

Damon Wischikhttp://www.cs.ucl.ac.uk/staff/D.Wischik/Talks/teleology.html

Page 2: Network teleology Damon Wischik

What is teleology?

• Teleology (noun). The doctrine or study of ends or final causes, especially as related to the evidences of design or purpose in nature; also transf. such design as exhibited in natural objects or phenomena.– Greek - from , end

Page 3: Network teleology Damon Wischik

Macroscopic description of TCP• Let x be the mean bandwidth of a flow [pkts/sec]

Let RTT be the flow’s round-trip time [sec]

Let p be the packet loss probability• The TCP algorithm increases x at rate 1/RTT2 [pkts/sec]

and reduces x by x/2 for every packet loss• average increase in rate = average decrease in rate:

1/RTT2 = (p x) x/2

Page 4: Network teleology Damon Wischik

Macroscopic description• Let x be the mean bandwidth of a flow [pkts/sec]

Let RTT be the flow’s round-trip time [sec]

Let p be the packet loss probability• The TCP algorithm increases x at rate 1/RTT2 [pkts/sec]

and reduces x by x/2 for every packet loss• average increase in rate = average decrease in rate:

1/RTT2 = (p x) x/2

• Consider a link with N identical flowsLet NC be the capacity of the link [pkts/sec]

• packet loss ratio = fraction of work that exceeds service rate:p = (Nx-NC)+/Nx = (x-C)+/x

Page 5: Network teleology Damon Wischik

Teleological description

• Consider several TCP flows sharing a single link

• Let xr be the mean bandwidth of flow r [pkts/sec]

Let y be the total bandwidth of all flows [pkts/sec]

Let C be the total available capacity [pkts/sec]

• TCP and the network act so as to solvemaximise r U(xr) - P(y,C) over xr0 where y=r

xr

x

U(x

)

y

P(y

,C)

C

Page 6: Network teleology Damon Wischik

Teleological description

little extra valued attached to high-bandwidth flowssevere penalty for

allocating too little bandwidth

x

U(x

)

Page 7: Network teleology Damon Wischik

Teleological description

x

U(x

)

flows with largeRTT are satisfied with little bandwidth

flows with small RTT want more bandwidth

Page 8: Network teleology Damon Wischik

Teleological description

y

P(y

,C)

C

no penalty unlesslinks are overloaded

Page 9: Network teleology Damon Wischik

Teleological description

• The network distributes resources as if it’ssolving an optimization problem

• Is this what we want the Internet to optimize?• Does it make good use of the network?• Can it deliver high bandwidth and good quality?• Is it a fair allocation?• Can we design a better allocation?

x

U(x

)

yC

P(y

,C)

Page 10: Network teleology Damon Wischik

Input-queued switches

Every timestep, the switch 1. chooses a matching from inputs to outputs, then

2. offers service to those queues involved in the matching.

output port 1input port 1

input port 2

queue X32

matching

Page 11: Network teleology Damon Wischik

The MWM matching algorithm• How does the switch decide which matching to use?

• Let the weight of a matching be·X = i,j Xi j i j

• Let the maximum weight bemax ·X

• The MWM (Maximum Weight Matching) algorithm chooses, at every time step, some matching which achieves the maximum weight.

Page 12: Network teleology Damon Wischik

Simulation trace

X

queu

e le

ngth

s [0

-50p

kts]

time [0-500]

Page 13: Network teleology Damon Wischik

Simulation trace

W

Workload w1.Sum of queue sizes at input port 1

Workload w.2

Sum of queue sizes for output port 2

Page 14: Network teleology Damon Wischik

Simulation trace

D

Inferred queue sizes,estimated from input and output workloads

Page 15: Network teleology Damon Wischik

Simulation trace

D

X

Inferred queue sizes,estimated from input and output workloads

Actual simulated queue sizes

Page 16: Network teleology Damon Wischik

Teleological description

• The switching algorithm distributes the workload among the input queuesso as to solve an optimization problem

• Is this an optimization problem we want to solve?

• Would a different switching algorithm reduce the buffer overflow probability? D

X

Page 17: Network teleology Damon Wischik

Routing choice in road networks

• A road network• The delay on a road is a function of the flow f• Drivers choose the quickest route• How will traffic distribute itself?

10f

10f

50+f

50+fTotal delay 10*3+50+3=83for all users

Page 18: Network teleology Damon Wischik

Braess’ example

• An extra road is built.How does the traffic flow change?

10f

10f

50+f

50+fTotal delay 10*3+50+3=83for all users

10f

10f

50+f

50+f

6f

Page 19: Network teleology Damon Wischik

Braess’ paradox

• Building an extra road makes delays worse for everyone!

10f

10f

50+f

50+fTotal delay 10*3+50+3=83for all users

10f

10f

50+f

50+fTotal delay10*4+50+2=10*4+6*2+10*4=92for all users

6f

Page 20: Network teleology Damon Wischik

Wardrop equilibrium

• The allocation of flows satisfies an optimization problem

• The objective function is not the natural one (i.e. minimize average delay)

• How can we encourage drivers to choose socially optimal routes?

Page 21: Network teleology Damon Wischik

Conclusion

• A network algorithm is usually specified at the microscopic level (i.e. by code)

• The code may have an implicit teleology

• The teleological view can

– give insight into the algorithm

– suggest tweaks