nus.soc.cs5248 ooi wei tsang previously, on cs5248

58
NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248..

Upload: anthony-dickerson

Post on 01-Jan-2016

230 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Previously, on CS5248..

Page 2: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

IP Multicast

Page 3: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

New Model: IP Multicast

sender

receivers

Page 4: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Question 1

Router

G?

should I forward this packet to my

subnet?

Page 5: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

IGMP v2.0

JOIN messageA : “I want to join group G.”

QUERY messageR : “Which group have you joined ?”

Page 6: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

IGMP v2.0

LEAVE message“I want to leave group G”

Group-Specific Query“Anybody else belongs to group G ?”

Page 7: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Rate Adaptations

Page 8: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Layered Video

Layer 1 Layer 2 Layer 3

Page 9: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

TCP-Equation

Window size behavior in TCP/IP with constant loss probability T. Ott, J. Kemperman, and M. MathisJune 1997, HPCS 1997

Page 10: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Heterogeneity

Page 11: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Internet Heterogeneity

2 Mbps

40kbps

56kbps

Page 12: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Two Simple Solutions

one stream to fit them all

send multiple streams

Page 13: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Network

Encoder

Sender

Middlebox

Receiver

Decoder

Page 14: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Receiver-Driven Layered Multicast

Steve McCanne, Van Jacobson, Martin VetterliSIGCOMM 1996

Page 15: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Layered Multicast

1 Layer : 1 Multicast Group

Receiver subscribes to as many layers as desired

Page 16: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

RLM Example

S R1

R2

R3R4

Page 17: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Questions

How many layers are enough?

Page 18: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Join Experimenthighest layer = 1join layer 1while no packet loss

highest layer ++join next layer

leave highest layerhighest layer --

Page 19: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Details

Tjoin

Time between join experiments

Tdetect

Time taken to detect packet loss

Page 20: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Effects of Tjoin

Need to converge to the right level quickly Tjoin should be small

Repeated failed experiments congest networks Tjoin should be large

Page 21: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Adapting Tjoin(i)

One Tjoin per layer

if join experiment for layer k fails

Tjoin(k) = Tjoin(k)*2

Page 22: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Example

1

2

3

4

Page 23: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Adapting Tdetect

Set Tdetect to large initial value

Estimate Tdetect with mean and deviationMeasure time between join and packet loss occur

Page 24: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Two Problems

Interference Scalability

Page 25: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problem 1: Interference

Page 26: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problem 1: Interference

I see, layer 2 is bad for me..

I see, layer 2 is bad for me..

Page 27: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problem 2: Scalability

Lots of receivers Lots of experimentsLots of congestions

Page 28: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Shared Learning

I am joining

layer 2, do not

disturb!

I am joining

layer 2, do not

disturb!

Page 29: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Shared Learning

Page 30: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Shared Learning

I am joining

layer 3, do not

disturb!

I am joining

layer 3, do not

disturb!

Page 31: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Shared Learning

I see, layer 3 is bad for me..

I see, layer 3 is bad for me..

Page 32: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Solution: Shared Learning

I see, layer 3 is bad for me..

I see, layer 3 is bad for me..

Page 33: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problem

Reducing interference decrease convergence time

Solution:

Page 34: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Evaluation

Session Size

Convergence Time (s)

20

100

2 100

40

60

Page 35: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

EvaluationLoss Rate (%)

Session Size

1

100

Page 36: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problems with RLM

Not TCP Friendly

Share learning is “clumsy”

Failed join experiments is bad for the network

Page 37: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Thin Streams: An Architecture for Multicasting Layered Video

L. Wu, R. Sharma., B. SmithNOSSDAV 97

Page 38: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

How bad is failed experiment?

R : sending rate of a layerTj : IGMP join latency

Tl : IGMP leave latency

Tdetect: time before drop

Buffer space at the router =

Page 39: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

How big is IGMP Leave Latency?

Page 40: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

What To Do?

Buffer space at the router = R(Tj + Tl + Tdetect)

Proposal of ThinStreamReduce RReduce Tdetect

Page 41: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Reducing Tdetect

Detect congestion before it happens

Page 42: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Calculating A & E

R : bandwidth of one layer I : measurement interval N : number of bytes received in I

G : number of layers joined

A =

E =

Page 43: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

ThinStreams Algorithm

if (E - A > leave_threshold)leave

else if (at least Tjoin since last join)

and (E - A < join_threshold)

join

Page 44: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Fairness

Improve fairnessleave_threshold as a function of G

Page 45: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problems with ThinStreamSmall R

Still not TCP friendly

Page 46: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

TCP-Like Congestion Control for Layered Multicast Data Transfer

L. Vicisano, J. Crowcroft, L. RizzoINFOCOM 98

Page 47: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

The RLC Protocol

1. Try to emulate TCP2. Synchronize join3. “Probe” before join

Page 48: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Recall TCP’s Behavior

AIMD

Page 49: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Recall Layered Multicast

1

2

3

4

Page 50: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

1. Emulating TCP

Idea: By finding appropriate Bi and Tjoin(i)

Page 51: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Idea

12

3

4

Page 52: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

2. Synchronizing Join

Idea: send special packets in data stream to signal join

Distance between synchronization point for layer i is Tjoin(i)

Page 53: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Sync Point

1

2

3

4

Page 54: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

3. Probe before Join

Emulate joining the next layer

If this causes packet drop, don’t join

Page 55: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Sender-Based Probing

baselayer

layeri

Page 56: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Sender-Based Probing

baselayer

layeri

Page 57: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Problems with RLC

Burst too short

No fine grain increment

Page 58: NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248

NUS.SOC.CS5248Ooi Wei Tsang

Summary

Receiver Driven Layered Multicast

Lots of ProblemsNo Perfect Solutions