Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination...

36
Application Layer Multicast - Swati Agarwal
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    224
  • download

    1

Transcript of Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination...

Page 1: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Application Layer Multicast

- Swati Agarwal

Page 2: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

What Is Multicast?

• Unicast– One-to-one– Destination – unique

receiver host address• Broadcast

– One-to-all– Destination – address of

network• Multicast

– One-to-many– Multicast group must be

identified– Destination – address of

group

Key:

Unicast transfer

Broadcast transfer

Multicast transfer

Few slides are based on slides originally developed by (1) L. Armstrong, Univ of Delaware, (2) Rao - www.ibr.cs.tu-bs.de/events/netgames2002/presentations/rao.pdf

Page 3: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Example Applications

• Video / Audio broadcast (one sender)

• Conferencing (many senders)

• Real time news distribution

• Data distribution

Page 4: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

IP Multicast

•Invented by S. Deering

•Senders transmit IP datagrams to the group identified by a class D IP address

•Efficient bandwidth utilization

Berkeley

Gatech Stanford

CMU

Routers with multicast support

Page 5: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Key concerns with IP Multicast

• Deployment is difficult– Requires support from routers

• Scalability– Routers maintain per-group state

• Difficult to support higher level functionality– Reliability, congestion control

Page 6: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Application layer multicastStanford

CMU

Stan1

Stan2

Berk2

Overlay TreeGatech

Berk1

Berkeley

Gatech Stan1

Stan2

Berk1

Berk2

CMU

Page 7: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Benefits

• Scalability– Routers do not maintain per group state

• Easy to deploy– No change to network infrastructure

• Simplifies support for higher level functionality– Can utilize existing solutions for unicast

congestion control

Page 8: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

A few concerns..

• Performance penalty– Redundant traffic on physical links– Increase in latency

• Constructing efficient overlays– Application needs differ

• Adapting to changes– Network dynamics– Group membership – members can join and

leave

Page 9: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Enabling Conferencing Applications on the Internet using an Overlay Multicast

Architecture

-Y. Chu, S. Rao, S. Seshan and H. Zhang

Page 10: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

End System Multicast

• Prior work show promising performance results– Studies based on simulations, static metrics,

controlled environments

• Can End System Multicast support applications with demanding performance requirements on Internet?– Study in context of conferencing applications

Page 11: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

End System Multicast

• Characteristics of the target applications– Small number of users– Require high bandwidth– Latency sensitive

• Need for self-organizing protocols to adapt to dynamic latency and bandwidth metrics

• Study in context of Narada Protocol– Techniques apply to all self-organizing

protocols

Page 12: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Optimizing overlays for dual metrics

• Prioritize bandwidth over latency– Member picks highest bandwidth path to

every other member– If multiple paths with same bandwidth, pick

the lowest latency path among those

• Use exponential smoothing, discrete bandwidth levels to deal with instability due to dynamic metrics

Page 13: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Experimental Resultsstable Dip due to

congestion

Page 14: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Comparison of schemes

• Primary Set – 1.2 Mbps

• Primary Set – 2.4 Mbps

• Extended Set – 2.4 Mbps

• Primary Set contains well connected nodes

• Extended Set – more heterogeneous environment

Page 15: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Bandwidth – primary set, 1.2 Mbps

Page 16: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Bandwidth – extended set, 2.4 Mbps

Page 17: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

RTT – extended set, 2.4 Mbps

Page 18: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Results - summarized

• Enable optimized construction of efficient overlays

• Random overlays perform poorly

• Overlays adapting to static metrics perform poorly– Fail to react to network congestion

• Both bandwidth and latency metrics need to be considered

Page 19: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Conclusion

• Good performance for conferencing applications with stringent bandwidth and latency demands

• Issues– Scalability - large groups– Adapting to highly dynamic environments

Page 20: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Overcast: Reliable Multicast

• Provide scalable and reliable single-source multicast

• Motivated by problems faced by content providers– Distribution of bandwidth intensive content on

demand– Long-running content to many clients

• Goals– Overlay structured to maximize bandwidth– Utilize network topology efficiently

Page 21: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Contributions

• Storage at nodes for reliability and scalability

• Simple protocol for forming efficient and scalable distribution trees that dynamically adapts to changes

• Protocol allowing clients to join the group quickly

Page 22: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Components

• Root : central source (may be replicated)

• Node : internal overcast nodes with permanent storage– Organized into distribution tree

• Client : final consumers (HTTP clients)

R

Root Node Client

Page 23: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Bandwidth Efficient Overlay Trees

10 Mb/s

100

Mb/

s

100 Mb/s

R

1

2

R

1

2

R 1 2 R 12

“…three ways of organizing the root and the nodes into a distribution tree.”

Page 24: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Building Bandwidth Efficient Tree

• Goal – maximize bandwidth to root for all nodes

• Places a new node as far away from root as possible without sacrificing bandwidth

• Nodes equally good if measured bandwidth within 10%– Select closest node as determined by

traceroute

Page 25: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

The node addition algorithm

R

5

57

1

10

2

103

8

R

1 2

3

Overcast distribution tree

Page 26: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Dynamic Topology

• Overcast’s optimization metric will change over time• A node periodically reevaluates its position in the tree by

measuring the bandwidth between itself and– Its parent (baseline)– Its grandparent– All its siblings

• Node can relocate to become– Child of a sibling– Sibling of a parent

• Inherently tolerant of non-root failures– On dead parent a node can move up the ancestry tree

Page 27: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Interactions Between Node Adding And Dynamic Topology

R

1

10

2

20

R

1 2

Overcast network treeRound 1

15

R

2

1

Overcast network treeRound 2

Page 28: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

State tracking – the Up/Down protocol

• An efficient mechanism is needed to exchange information between nodes

• Assumes information either– changes slowly (E.g., Health status of nodes)

– can be combined efficiently from multiple children into a single description (E.g., Totals from subtrees)

• Each node maintains state about all nodes in its subtree

Page 29: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Management of information with the Up/Down protocol

• Each node periodically contacts its parent

• Parents assume a child (and all descendants) has died if the child fails to contact within some interval

• During contact, a node reports to its parent– Death certificates

– Birth certificates

– Extra information

– Information propagated from children

• Sequence numbers used to prevent race conditions

Page 30: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Scaling sublinearly in terms of network usage• A node (and descendants)

relocates under a sibling

• The sibling must learn about all the node’s descendants– Birth certificates

• The sibling passes this information to the (original node’s) parent

• The parent recognizes no changes and halts further propagation

1

1.1 1.2 1.3

1.2.1 1.2.31.2.2

1.2.2.1

Birth certificates for 1.2.2, 1.2.2.1

No change observed.

Propagation halted.

Page 31: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Is The Root Node A Single Point Of Failure?

• Root is responsible for handling all join requests from clients– Note: root does not deliver content

• Root’s Up/Down protocol functionality can not be easily distributed– Root maintains state for all Overcast nodes

• Solution: configure a set of nodes linearly from root before splitting into multiple branches– Each node in the linear chain has sufficient

information to assume root responsibilities– Natural side effect of Up/Down protocol

Page 32: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

The client side – how to join a multicast group

• Clients join a multicast group through a typical HTTP GET request

• Root determines where to connect the client to the multicast tree using– Pathname of URL (multicast group being joined)– Status of Overcast nodes– Location of client

• Root selects “best” server and redirects the client to that server

Page 33: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Client joins

R1

1

2

3

4

5

6

R2 R3

Key:

Content query (multicast join)

Query redirect

Content delivery

Page 34: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Evaluation

Page 35: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Results

Page 36: Application Layer Multicast - Swati Agarwal. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all.

Conclusions

• A simple and bandwidth-efficient tree-building protocol

• Dynamically adapt to changes

• Scales to large networks – based on simulation studies