Upload
calvin-cameron
View
220
Download
0
Tags:
Embed Size (px)
Citation preview
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
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)
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
Outline
Introduction Multicast Tree Formation
Tree-first approach Mesh-first approach Others
Performance Metrics Protocol Examples Conclusion
Tree-first Approach
Constructs a multicast tree directly. Members explicitly select their parents. Single multicast tree constructed.
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
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 cons
tructed 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.
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
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
Other Mesh-first Examples
Narada Creates a mesh and then build multicast trees wit
h DVMRP algorithm.
Scattercast Proxy servers are placed at strategic location. The
se proxy servers self-organize into multicast trees.
Other Approaches
Completely ignores the network-layer infrastructure.
Example: Application-layer Multicast with Delaunay Triangul
ations Each nodes route multicast packet based on their geom
etric coordination only.
Outline
Introduction Protocol Examples Performance Metrics
Application perspectives Network perspectives Adaptiveness to network dynamics Failure Tolerance Scalability
Conclusion
Application Perspectives
Directly affect the performance of application Examples:
Bandwidth and latency Startup time End-host resource usages
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
Network perspectives
Affect other network user indirectly Examples:
Resource usages Stresses of physical links Protocol overhead
Resource Usages
Sum of the costs (e.g. delay) of the overlay links
A
3
1 2
B
4
25
271
1
1
1
2 2
Resource Usages: 2 + 27 + 2 = 31
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
21
Protocol overhead
Protocol overhead = Total non-data traffic / total data traffic
Non-data traffic Control messages Network measurement messages
Adaptiveness to Network Dynamics When some of the nodes/links are failure, the time
required to discover, react and repair that
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 Time React Time Repair Time
Link failure
DetectedFirst attempt Last attempt
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
Scalability
Time and resources used to construct a large multicast tree
Scalability maybe limited by Routing algorithm Control message size Protocol overhead
Outline
Introduction Multicast Tree Formation Protocols Performance Metrics Existing Protocols
Overcast Narada
Conclusion
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
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
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.
BA C
F
E
G
D
R
Overcast:Nodes repositioning Each node keep their ancestor list. These
ancestors serve as backup parents.
BA C
FE
G
D
R
BA C
FEG
D
R
BA C
FE
G
D
R
Overcast:Loop avoidance Keeps an ancestor list to avoid loop formation
Reject any connection request from nodes
in the ancestor list {R,B,E}
BA C
FE
G
D
R
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
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
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.
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
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
Narada:Utility of a link The degree of improvement to tree latency Algorithm
Utility = 0For each member m (m not i) begin
CL = current latency between i and m along meshNL = new latency between I and m along mesh if edge i-j were addedIf (NL < CL) then begin
utility += ( CL – NL) / CLEnd
EndReturn utility
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)
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
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
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
Outline
Introduction Multicast Tree Formation Protocols Performance Metrics Existing Protocols Conclusion
Conclusion
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