Notes for Lecture dated Nov 2, 1999

Papers Covered

1) Fundamental Design Issues for the Future Internet (Shenker)

2) Supporting Real-Time Applications in an Integrated Services Packet

Network: Architecture and Mechanism (Clark, Shenker and Zhang)

 

1st paper

Why we need different levels of service?

Concreteness

What is the goal?

The goal is to maximize benefits with utility functions.

Allocation among n users:

Vector S = { s1, s2 , …., sn}

Ui – utility function of client i

Ui = f(si)

Max V = S Ui(si)

Some points about this scheme:

This scheme does not achieve fairness.

Pricing incentives are missing.

Different traffic types have different utility functions.

Bulk: ftp, telnet

utility


bandwidth

Real Time(completely rigid)



utility

 

 

bandwidth

Completely rigid real-time applications don’t benefit until you reach a certain bandwidth.

 

Delay – Adaptive


utility

 

 

 

bandwidth

You need a certain B/W to be happy.

 

Rate-Adaptive

utility

 


bandwidth

 

 

Question of admission control?

Should we stop admitting flows at some point?

Max V = S Ui(si)

Is there a local maxima of V as flow increases?

 

Model

1 link: capacity B

n users

fair share: B/n

same utility function

V = n * U(B/n)

V(n) concave


n

For bulk, if we keep increasing users with concave utility function, then V keeps increasing.

 


<= Admission Control

V(n) Adaptive

 

 

n

Admission control makes sense for adaptive applications and not for bulk applications.

 

 

Example

Link M/M/1

2 users

U1 = 4 - 2d1

U2 = 4 – d2

V = U1 + U2 d1 + d2 = 2

If d1 = d2 = 1

Then U1=2 and U2=3 and V=5

So the idea is to prioritize d1 over d2 to maximize V. (FIFO is no good)

Who should specify the service requirements?

+ application simplicity

 

2nd Paper

1) Guaranteed Services Vs Predicted Services

2) Service Interface

3) Scheduling Discipline (FIFO, WFQ, FIFO+)

4)Admission Control

Packet Scheduling

FIFO: complete sharing

WFQ: complete isolation

WFQ has this problem that when there are many bulk flows and a delay inelastic busty flow, then that round robin would be bad on that flow.

Scheduling Mean 99.9 %ile

WFQ 3.16 53.86

FIFO 3.17 34.72

 

FIFO+ : keep jitter low for packets in the same class

Idea: If the jitter of a packet is high at a switch compared to its class avg., then the next switch inserts the packet in the queue in the order as if it arrived at the expected time and not according to the actual arrival time.