1 transport bw allocation, and review of network routing 11/2/2009

44
1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Upload: peter-cole

Post on 02-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

1

Transport BW Allocation, and Review of Network Routing

11/2/2009

Page 2: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Recap: Questions

Forward engineering: which allocation objective?

Reverse engineering: what are the objectives of TCP/Reno, TCP/Vegas?

2

Objective Allocation (x1, x2, x3)

TCP/Reno 0.26 0.74 0.74

TCP/Vegas 1/3 2/3 2/3

Max throughput 0 1 1

Max-min ½ ½ ½

Max sum log(x) 1/3 2/3 2/3

Max sum of -1/(RTT2 x) 0.26 0.74 0.74

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

Page 3: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

3

Recall: Resource Allocation Framework

Maximize aggregate utility, subject to capacity constraints

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

Page 4: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

4

A One-Slide Summary of Optimization Theory

Sx

xg

xf

over

0)(subject to

)(max

g(x)

f(x)

f(x) concaveg(x) linearS is a convex set

)()(max)( xqgxfqDSx

q1 q2S

-D(q) is called the dual;q (>= 0) are called prices in economics- Then according to optimization theory: when D(q) achieves minimum over all q (>= 0), then the optimization objective is achieved.

-D(q) provides an upper bound on obj.

Page 5: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

5

Decomposition

Assume each link l has non-negative congestion signal ql, consider the dual D(q)

f l

llfflff

xcxqxUqD

f

)()(max)( uses:

0

f l

lllllfff

xcqqxxU

f uses f :0

)(max

l

lllllfff

fx

cqqxxUf uses f :

0)(max

x1

x2 x31 1

Page 6: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

6

Distributed Optimization: User Problem

Given price signal per unit rate pf (=sum of ql along the path) flow f chooses rate xf to maximize:

Using the price signals, the optimization problem of each user is independent of each other

0over

max

x

pxxU

f

ffffx f

Page 7: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

7

Distributed Optimization: User Problem

0over

max

x

pxxU

f

ffffx f

0' fff pxU

At equilibrium (i.e., at optimal), xf satisfies:

How should flow f adjust xf locally?

ffff pxUx '

Page 8: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

8

Interpreting Congestion Measure

xf(t)

ql(t) q2(t)

l uses flf qp ffff pxUx '

Page 9: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

9

Distributed Optimization: Network Problem

The network (i.e., link l) adjusts the link signals ql (assume after all flows have picked their optimal rates given congestion signal)

l

lllllfff

fx

cqqxxUqDf uses f :

0)(max)(

l lf

fllq xcqqD uses f :

0 )()(~

min

Page 10: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

10

Distributed Optimization: Network Problem

lffl

l

xcqDq uses:

)(

lqqD

lq)(

how should link l adjust ql locally?

l lf

fllq xcqqD uses f :

)()(min

llffl cxq

uses:

Page 11: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

11

Decomposition

SYSTEM(U):

USERf:

NETWORK:

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

0over

max

x

pxxU

f

ffffx f

l lf

fllq xcqqD uses f :

0 )()(~

min

Page 12: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Outline

Bandwidth allocation framework framework Nash Bargaining Solution (NBS) distributed computation TCP/Reno, TCP/Vegas revisited

12

Page 13: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

13

fff pxU '

TCP/Reno Dynamics

)(x 22

2

2

2 pxRTT

x

2

' 2)(

RTTxxU

fff

ffff pxUx '

fff xRTTxU

2

2)(

Page 14: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

14

fff pxU '

TCP/Vegas Dynamics

xff xU )('

))(( min2 RTTRTTx xRTTx

)log()( fff xxU

ffff pxUx '

Page 15: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

15

Summary: TCP/Vegas and TCP/Reno

Pricing signal is queueing delay Tqueueing

queueingTfx

queueingff TxU )('

fff xxU

)('

)log()( fff xxU

pxU ff )('

2

' )(

RTTxxU

fff

pRTTfx

Pricing signal is loss rate p

fff xRTTxU

2

')(

Page 16: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

16

Summary: Global Network Bandwidth Allocation

Understand protocols, e.g., Reno, Vegas

Design new e2e congestion control and router queue management protocols e.g., FAST , XCP

Pointer: congestion control through game theory and economics http://www.statslab.cam.ac.uk/~frank/pf/

0over

subject to

max

x

CAx

xUFf

ff

Page 17: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Exam 1

Covers lectures 1-16 and the preceding part of today’s lecture

A one-page “cheat” sheet

17

Page 18: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

18

Recap: Network Layer: Protocols

forwarding

Network layer functions:

Routing protocols•path selection•e.g., RIP, OSPF, BGP

Network layer protocol (e.g., IP)•addressing conventions•packet format•packet handling conventions

Control protocols•error reporting e.g. ICMP

Transport layer

Link layer

physical layer

Networklayer

Control protocols- router “signaling” e.g. RSVP

Page 19: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

19

Recap: Routing Design Space

Routing has a large design space who decides routing? how many paths from source s to destination

d? will routing adapt to network traffic demand? …

We focus mostly on network-based, single-path, static routing

- Robustness- Optimality- Simplicity

Page 20: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Example: Cisco Proprietary  Recommendation on Link Cost

Link metric:

By default, k1=k3=1 and k2=k4=k5=0. The default composite metric for EIGRP, adjusted for scaling factors, is as follows:

EIGRP : Enhanced Interior Gateway Routing Protocol

Page 21: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

EIGRP Link Cost

BWmin is in kbps and the sum of delays are in 10s of microseconds.

Example The bandwidth and delay for an Ethernet

interface are 10 Mbps and 1ms, respectively. The calculated EIGRP BW metric is as follows:

256 × 107/BW = 256 × 107/10,000 = 256 × 10000 = 256000

Page 22: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

22

Recap: Synchronous Bellman-Ford (SBF)

Nodes update in rounds: there is a global clock; at the beginning of each round, each node

sends its estimate to all of its neighbors; at the end of the round, updates its

estimation ))((min)1( )( hddhd jijiNji

A

E D

CB7

810

2

1

2

A

B

E

C

D

?)0(d

Page 23: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

23

Recap: Properties of SBF

Monotonicity: if d(t) d’(t) => d(t+1) d’(t+1)

• i.e., each node has a higher estimate in one scenario (d) than in another scenario (d’), then each node has a higher estimate in d than in d’ after one round of synchronous update.

SBF/ computes the shortest path costs Bellman equation has a unique solution SBF/-1 also computes the shortest path

costs

))((min)1( )( hddhd jijiNji

Page 24: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Recap: Asynchronous Bellman-Ford (ABF)

No notion of global iterations each node updates at its own pace

Asynchronously each node i computes

using last received value dij from neighbor j.

Asyncrhonously node j sends its estimate to its neighbor i: there is an upper bound on the delay of

estimate packets (no worry for out of order)

)(min )(ijijiNji ddd

Page 25: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Distance Table: ExampleA

E D

CB7

8

10

2

1

2

d ()

A

B

C

D

E

distance tablesfrom neighbors

dest

inat

ions

computation E’sdistance

table

distance table E sends to its neighbors

A: 10

B: 8

C: 4

D: 2

E: 0

Below is just one step! The protocol repeats forever!

10 15

A B D

0 7

A B D

10 8 2

7 0

1 2

0

A: 10

B: 8

D: 4

D: 2

17 8

9 4

2

Page 26: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Recap: Asynchronous Bellman-Ford: Summary

Distributed: each node communicates its routing table to its directly-attached neighbors

Iterative: continues periodically or when link changes, e.g. detects a link failure

Asynchronous: nodes need not exchange info/iterate in lock step!

Convergence in finite steps, independent of initial condition if network is connected

Page 27: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Properties of Distance-Vector Algorithms

Good news propagate fast

Page 28: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Properties of Distance-Vector Algorithms Bad news propagate slowly

This is called the counting-to-infinity problem

Question: why does counting-to-infinity happen?

Page 29: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

What is a Routing Loop?

A routing loop is a global state (consisting of the nodes’ local states) at a global moment (observed by an oracle) such that there exist nodes A, B, C, … E such that A (locally) thinks B as down stream, B thinks C as down stream, … E thinks A as down stream

29

Page 30: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Backup Slides

30

Page 31: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

31

Network problem

As if the network maximizes a logarithmic utility function, but with constants (wf, fF) chosen by the users

0over

link any for subject to

max

link uses :

log

x

lcx

xw

lfflf

Ffff

Page 32: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

32

Three Optimization Problems

SYSTEM(Uf):

USERf(Uf; pf)

NETWORK(wf)

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

0over

max

x

pxxU

f

ffffx f

Page 33: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

33

Decomposition Theorem

There exist vectors p , w and x such that

1. wf = pfxf for f F

2. wf solves USERf(Uf; pf)

3. x solves NETWORK(w)

1. The vector x then also solves SYSTEM(U).

Page 34: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

34

Another Decomposition

SYSTEM(U):

USERf(Uf; pf)

NETWORK(wf)

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

0over

max

w

wU

f

fp

wf

x f

f

f

0over

link any for subject to

logmax

link uses :

x

lcx

w

lfflf

Fffxf f

Page 35: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

35

Decomposition Theorem

There exist vectors p , w and x such that

1. wf = pfxf for f F

2. wf solves USERf(Uf; pf)

3. x solves NETWORK(w)

1. The vector x then also solves SYSTEM(U).

Page 36: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

36

TCP/Reno: Equilibrium

Pricing signal is aggregated loss rate p

2

' 2)(

RTTxxU

fff

fff xRTTxU

2

2)(

pRTTfx

fff pxU '

Page 37: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

37

TCP/Vegas: Equilibrium

Pricing signal is queueing delay Tqueueing

queueingTfx

fff xxU

)('

)log()( fff xxU

fff pxU '

Page 38: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Summary: Network Bandwidth Allocation

Forward engineering: how to determine objective functions: “first-

principles” approach to derive utility functions given objective, how to design effective alg (?)

Reverse engineering: understand current protocols

Discussion: problems of the framework38

0over

link any for subject to

max

link uses :

x

lcx

xU

lfflf

Ffff

Page 39: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

39

Using Virtual Circuit to Implement Network Services

In order to provide some functionalities, a network may choose virtual circuit, e.g., Virtual Private Network (VPN)

Page 40: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

40

Using Datagram to Implement the Most Basic Network Service

A datagram network generally provides simple services: the forwarding of packets from src to dest.

We will focus on datagram networks which provide best effort service extensions to provide more services will be discussed

in the multimedia networking part of the course

Page 41: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

EIGRP Neighbor Discovery

EIGRP routers actively establish relationships with their neighbors

EIGRP routers establish adjacencies with neighbor routers by using small hello packets.

The Hello protocol uses a multicast address of 224.0.0.10, and all routers periodically send hellos.

Page 42: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

EIGRP Neighbor Discovery

On hearing hellos, the router creates a table of its neighbors.

The continued receipt of these packets maintains the neighbor table

By forming adjacencies, EIGRP routers do the following:

Dynamically learn of new routes that join their network

Identify routers that become either unreachable or inoperable

Rediscover routers that had previously been unreachable

Page 43: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

43

Neighbor Discovery - 3

Page 44: 1 Transport BW Allocation, and Review of Network Routing 11/2/2009

Default Hello Intervals and Hold Time for EIGRP