Presentation is loading. Please wait.

Presentation is loading. Please wait.

Application-Layer Multicast -presented by William Wong.

Similar presentations


Presentation on theme: "Application-Layer Multicast -presented by William Wong."— Presentation transcript:

1 Application-Layer Multicast -presented by William Wong

2 Outline Introduction Multicast Tree Formation Performance Metrics Protocol Examples Conclusion

3 Outline Introduction  IP Multicast vs. Application-Layer Multicast  Limitations of IP Multicast  Advantages of application-Layer Multicast Multicast Tree Formation Performance Metrics Protocol Examples Conclusion

4 IP Multicast vs. Application-Layer Multicast End-host Router A 3 1 2 B 4 Packet A 3 1 2 B 4

5 Limitations of IP Multicast Difficult to support high level functionalities on upper layer  E.g. congestion control, reliability  Network and receiver heterogeneities Routers need maintain per-group state Limited multicast addresses ( class D only)

6 Advantages of Application-Layer Multicast Easy to support high level functionalities  Make use of end-host resource (e.g. memory, process power) to make a more sophisticated decision  Make use of the existing solutions for unicast congestion control and reliability Able to modify the content of data Does not need router support Unlimited multicast addresses

7 Outline Introduction Multicast Tree Formation  Tree-first approach  Mesh-first approach  Others Performance Metrics Protocol Examples Conclusion

8 Tree-first Approach Constructs a multicast tree directly. Members explicitly select their parents. Single multicast tree constructed.

9 Tree-first Approach Components Initial join  Learn other members’ locations Multicast tree formation  Loop avoidance and partition avoidance Multicast tree maintaince  Adaptive to network dynamics

10 Tree-first Approach Examples Overcast  Build a single source multicast tree that maximize the bandwidth from the source to the receivers Yoid  A tree is constructed for data delivery, while a mesh is constructed for control messages exchanging. Jungle Monkey  Build a single source multicast tree for file transferring ALMI  Build a single source multicast tree in single server and then distributes it.

11 Mesh-first Approach Members are connected to form a richer connected graph, termed a mesh Members exchange information on the mesh Construct shortest path spanning trees of the mesh with routing protocols e.g. DVMRP

12 Mesh-first Approach Components Initial join  Learns other members’ locations Mesh formation  Partition avoidance Mesh maintaince  Adaptive to network dynamics  Improve the mesh quality Multicast tree formation  Constructs per-source spanning tree with routing protocol

13 Other Mesh-first Examples Narada  Creates a mesh and then build multicast trees with DVMRP algorithm. Scattercast  Proxy servers are placed at strategic location. These proxy servers self-organize into multicast trees.

14 Other Approaches Completely ignores the network-layer infrastructure. Example:  Application-layer Multicast with Delaunay Triangulations Each nodes route multicast packet based on their geometric coordination only.

15 Outline Introduction Protocol Examples Performance Metrics  Application perspectives  Network perspectives  Adaptiveness to network dynamics  Failure Tolerance  Scalability Conclusion

16 Application Perspectives Directly affect the performance of application Examples:  Bandwidth and latency  Startup time  End-host resource usages

17 Bandwidth and Latency Measure the mean and the standard deviation versus rank Examples:  Experiment 1: 1200, 1200, 1000, 800.  Experiment 2: 1400, 1400, 600, 400.  Experiment 3: 1000, 800, 800, 600  Means: 1200, 1133, 800, 600

18 Startup Time Time required to stabilize the multicast tree Stabilized

19 End-host Resource Usages Memory Disk Storage Computation Power

20 Network perspectives Affect other network user indirectly Examples:  Resource usages  Stresses of physical links  Protocol overhead

21 Resource Usages Sum of the costs (e.g. delay) of the overlay links A 3 1 2 B 4 25 27 1 1 1 1 22 Resource Usages: 2 + 27 + 2 = 31

22 Stresses of Physical Links Number of identical copies of a packet traverse a physical link Stress of physical link 1-A is 2 A 3 B 4 2 1

23 Protocol overhead Protocol overhead = Total non-data traffic / total data traffic Non-data traffic Control messages Network measurement messages

24 Adaptiveness to Network Dynamics When some of the nodes/links are failure, the time required to discover, react and repair that

25 Discover, React and Repair Time Discover  Duration from nodes/links failure to detection of link degradation. React  Duration from detection of link degradation to the first change of multicast tree Repair  Duration from the first change of multicast tree to the change which fully recover the multicast tree quality Discover TimeReact TimeRepair Time Link failure Detected First attemptLast attempt

26 Failure Tolerance Single point of failure  E.g. rendezvous point (RP) Impact of large number of nodes/links failure  The fraction of hosts that correctly receive the data packets sent from the source

27 Scalability Time and resources used to construct a large multicast tree Scalability maybe limited by  Routing algorithm  Control message size  Protocol overhead

28 Outline Introduction Multicast Tree Formation Protocols Performance Metrics Existing Protocols  Overcast  Narada Conclusion

29 Overcast [Jannotti 88] It is motivated by real-world problems faced by content providers. Characteristics of the target applications  Millions of users  Requires high bandwidth  Not latency sensitive

30 Overcast: Multicast Tree Formation Single Source, which located at root Always contact the root of multicast tree first Use bandwidth as link-cost metric only. Move the newly joined node as far way from the root as possible without sacrificing bandwidth to the root

31 Overcast: Nodes repositioning Periodically reevaluates its position in the tree. Measure the network condition actively E send 10KB data to D (sibling), B (parent) and R (grandparent) to find the best parent. B A C F E G D R

32 Overcast: Nodes repositioning Each node keep their ancestor list. These ancestors serve as backup parents. B A C FE G D R B A C FE G D R B A C FE G D R

33 Overcast: Loop avoidance Keeps an ancestor list to avoid loop formation Reject any connection request from nodes in the ancestor list {R,B,E} B A C FE G D R

34 Overcast: Performance Application prespectives:  High bandwidth, long latency Network prespectives:  High protocol overhead due to active measure. Not adaptive to network dynamic well  Node moves locally. Low failure tolerance  Single Point of failure High scalability  Only local information need

35 Narada [Yang-hua Chu 2000] It is motivated by real-world problems faced by conferencing applications Characteristics of the target applications  Small number of users  Require high bandwidth  Latency sensitive

36 Narada: Mesh Formation No rendezvous point  Contact anyone of group member to join Learn the location of our member by exchanging control messages Randomly select a few group members to be its neighbor.

37 Narada: Mesh Maintance Measure the network condition actively and passively The bandwidth and latency are measured passively by monitoring the data flow along them. The bandwidth and latency are measured actively. Sent data through the link to determine its bandwidth and latency

38 Narada: Mesh Maintaince A mesh is a richer connected graph, such that it includes all members with cycles. The quality of mesh keep improving by adding “useful” link and drop “not useful” link. F E D The link A-G would be added. It improve the delay from A/B/C to E/F/G The link E-G is not very useful, not much packets would route though it It will be dropped C G B A

39 Narada: Utility of a link The degree of improvement to tree latency Algorithm Utility = 0 For each member m (m not i) begin CL = current latency between i and m along mesh NL = new latency between I and m along mesh if edge i-j were added If (NL < CL) then begin utility += ( CL – NL) / CL End Return utility

40 Narada: Consensus Cost of a link Frequency of being used Formal definition Cost i-j = number of members for which i uses j as next hopt for forwarding packets. Cost j-i = number of members for which j uses i as next hop for forwarding packets. Cost = max(cost i-j, cost j-i)

41 Runs a distance vector protocol on top of the mesh Narada: Multicast Tree Formation

42 Runs a distance vector protocol on top of the mesh The per-source trees are constructed from the reverse shortest paths between each recipient and the source. Narada: Multicast Tree Formation

43 Narada: Link Cost Use bandwidth and latency as link-cost metric at the same time  Shortest widest path algorithm used Pick the widest paths to every other member Then choose the shortest path among all widest path This path is selected

44 Narada: Performance Application prespectives  High bandwidth, short latency Network prespectives  Low resource usage, low stress of physical link Adaptiveness to network dynamics  Depends on the probing frequency Low scalability  A global information is need for the routing algorithm High failure tolerance  No single-point of failure

45 Outline Introduction Multicast Tree Formation Protocols Performance Metrics Existing Protocols Conclusion

46 Two multicast tree formation approaches  Tree-first approach  Mesh-first approach Five performance metrics  Application perspectives  Network perspectives  Adaptiveness to network dynamics  Failure Tolerance  Scalability

47 Q&A


Download ppt "Application-Layer Multicast -presented by William Wong."

Similar presentations


Ads by Google