340 likes | 767 Views
Multicast Routing. Introduction (uses, definitions, etc.)Group ManagementRouting AlgorithmsRouting ProtocolsOther Considerations (ATM, scalability, security). Terminology. Unicast: Traditional point-to-point network communicationMulticast: Node(s) can send to members of a group (one-to-many or many-to-many)Broadcast: Blast the packet to everybody on the network.
E N D
1. Multicast Routing
2. Multicast Routing Introduction (uses, definitions, etc.)
Group Management
Routing Algorithms
Routing Protocols
Other Considerations (ATM, scalability, security)
3. Terminology Unicast: Traditional point-to-point network communication
Multicast: Node(s) can send to members of a group (one-to-many or many-to-many)
Broadcast: Blast the packet to everybody on the network
4. The Basic Idea IP Multicast traffic for a (source, destination group) pair is transmitted from the source to the receivers via a spanning tree that connects all hosts in the group. Different routing protocols use different techniques to build the trees. Once constructed all multicast traffic is distributed through the tree
5. Communication Tiers Locally: host informs local multicast router of desire to join the group (using IGMP)
Globally: local routers interact with other routers to receive multicast packets (using DVMRP, MOSPF, PIM)
6. Introduction: Uses Bulk data transfer (software updates, mailing list distribution, stock updates)
Streamed Continuous Media (audio/visual conferences)
Shared Application Data (shared whiteboard)
Interactive Gaming or Simulations (very intensive)
7. The Mbone Collection of multicast subnetworks(islands) interconnected (tunneled) through the Internet for faster multicast deployment
Started in 1992 with 40 subnets; up to 2800 subnets in 1996
Based primarily on UDP for end-to-end transmission, IGMP for group management, and DVMRP for routing
Use sd (session directory) to get a listing of active multicast sessions
8. Multicast Propertiess Must service a variety of applications (some have specific timing needs)
The overall group should not be effected by individual join/leave operations
Connectionless
Current Best-effort service
9. Two Scenarios Dense Mode
Group members are densely distributed throughout network (i.e. Many subnets contain at least one group member)
Bandwidth is plentiful
Uses flooding to propogate information
Protocols include: DVMRP, MOSPF, PIM-DM
Sparse Mode
Group members are sparsely distributed throughout network
Bandwidth is restricted (such as ISDN, home users)
Uses selective techniques to set up and maintain multicast trees
Protocols include: CBT, PIM-SM
10. What defines a group? Network Group: logical grouping to control membership in local group (group address, group identifier, group properties, and group management)
Social Group: participants in the communication
Group management procedures advertise groups to potential members, broadcast routing information to multicast nodes, and control various group properties
11. IGMP The host sends IGMP report when an application joins the multicast group
IP_ADD_MEMBERSHIP socket option
host not required to explicitly "unjoin" group when leaving
The router sends IGMP query at regular intervals which hosts belonging to the multicast group are obligated to reply
12. IGMP Evolution IGMPv1:
Router sends Host Membership Query msg broadcast on LAN
Host replies to indicate group membership
Randomized delay before responding
Implicit leave via no reply to Query(timeout)
RFC 1112 IGMPv2:
Added Group-Specific Query
Elected router queries to see if any hosts left in group
Leave Group Message
Last host replying to query can send explicit Leave Group msg
RFC 2236
13. IGMP Evolution (cont.) IGMPv3:
Lets source know if nobody is listening
Receivers can selectively choose sources to listen to (source pruning)
Still being designed
14. Virtual Circuit Group Mgmt Group of endpoints named at cirtuit setup time
Master may be able to later add new receivers or senders to multicast circuit
Challenges in reducing state information required when adding new receivers
15. Routing Algorithms: The Requirements Minimize network load. Need to optimize network resources while avoiding loops and concentrated traffic
Reliable transmission: data delivery shouldn't be affected by routing changes, link failures, etc.
Use optimal routes as determined by resource availability, bandwidth, node connectivity, price paid
Minimize router state (especially for larger groups)
16. The Building Blocks Most routing protocols use these basic tree algorithms
Reverse Path Forwarding (one tree per source)
Flood and prune
Steiner Trees (a minimal spanning tree, which is shared for entire group)
Core-based Trees (one tree per group)
17. Desirable Characteristics Flooding can be danagerous in heterogeneous networks. Have to periodically flood if new receiver appears
Recall the challenges for routing algorithms:
Evolve with group membership. Algorithm should uniquely identify group members
Minimize state information in the nodes
Optimize routing given cost considerations
Avoid traffic concentration
18. Reverse Path Forwarding Rely on router's existing knowledge of unicast routing table (shortest path from self to sender)
Best for densely distributed receivers
Result of algorithm is are directed graphs: source-rooted delivery trees emanating from the subnet directly connected to source
Efficient and easy to implement but doesn't use group membership information to build the tree so packets may hit subnets without members
19. RPF with Pruning Use RPF technique plus record group membership.
Timer controlled; have to periodically flood and re-prune to capture new members
Requires state information per source and per group to be kept at each node (leads to scalability problems)
20. Steiner Trees Minimum cost tree connecting all routers with attached group members; network resources are globally optimized
NP-complete problem; but good heuristics exist
Forms an undirected tree ==> symmetric links
Generally not used in practice:
computational complexity
requires knowledge of entire network topology
must be rerun when a router needs to leave/join
21. Core-Based Trees Single tree shared by everybody (multiple sender / multiple receiver)
One router is labeled as center of tree (but finding center is NP-complete)
Receiver based approach; packets naturally limited to group members
Best for sparse receiver distribution
State only kept per group (not for source/group pairs)
Can lead to traffic congestion
22. Algorithms Summary Most algorithms include challenging parameters (network topology, group dynamics, member location, other routing algorithms)
Requirements for the optimal algorithm:
Should be transparent to the members that remain in a group
Should maintain properties of the original route
Should not perturb ongoing data transfers
Should be receiver driven (so it adapts well to changing group membership)
23. Routing Protocols Distance-vector multicast routing protocol (DVMRP): flood and prune
Multicast Open Shortest Path First (MOSPF): source-based trees (RPF)
Protocol-Independent Multicast - Dense Mode (PIM-DM): flood and prune
Protocol-Independent Multicast - Sparse Mode (PIM-SM): core-based trees
Inter-domain Multicast Routing (IDMR): border gateway multicast protocol
24. DVMRP RFC 1075 (original RFC)
An extension to RIP: multicast routers share reverse path distances to build the (source-based) delivery tree for each group then use pruning
Use TTL to define distance packet will travel
Hierarchical DVMRP in the works: define regions within which any protocol can be used and DVMRP is used between regions (not yet deployed)
25. MOSPF RFC 1584
Designed for a single routing domain; depends on OSPF for unicast routing
Routers build efficient shortest path source-based trees without initially flooding
Higher link effieiency (routers can discard packets immediately based on TTL values
Computation on demand (only when the first packet from source to group is received)
26. PIM-DM Used when group membership is plentiful within a region of an internet
Like DVMRP but imports unicast routes instead of calculating for self (thus the independence)
27. PIM-SM Used when group members are spread thinly across regions of an internet
Join messages are sent to rendezvous points to meet new sources
Uses shared trees
28. Mobile Hosts When mobile unit wants to send to group, it uses RPF-based approach from the mobile support router
When mobile unit wants to receive a multicast packet, the packet is sent to the wired address of the mobile unit then forwarded to the mobile address
Main Problems: 1. Mobile source packets may not reach all group members; 2. Mobile host may see delays as enters a new cell; 3. TTL can limit cell reachability
29. ATM Environments Introduced point-to-multipoint in UNI for audio conferences
Multigroup address concept doesn't exist in ATM; sender has to know all members of the group
Only VC root node may add or remove leaf nodes
Various Approaches: MPOA(multi-protocol over ATM), VC mesh (sender to all members), MCS per cluster, SMART, MARS, Lan Emulation
30. Traffic Control Problems introduced by multicast:
Retaining capabilities for heterogeneity
Defining fairness and relative fairness between unicast and multicast
Timescales for congestion control
Scaling of control traffic and techniques
Design Issues include:
Scalable feedback mechanism
Congestion detection by receivers not senders
Probabilistic query/reply schemes, random delay responses
Number control packets fixed WRT data packets
RTP, RLM (receiver-driven layered multicast)
31. End to End Concerns Reliability: don't want every receiver to ACK the sender; better solution is to use NACK
Reliability protocols include: Virtual token ring-based protocol, XTP, SRM
QoS options for group communication:
Parameters defined by sender with no negociation
Parameters equal to minimum of each group member
Senders send with higher QoS and each receiver controls for self
Resource reservation very complex
QoS overall not an easy problem
32. Scalability Need to make join and leave operations as efficient as possible
Hierarchical group addressing (and routing) schemes are being developed
33. Finally, security! Efficient key distribution scheme for multiple recipients
Group communication leads to greater opportunity for traffic analyzers, denial of service attacks, covert channel signaling
May become too complex to understand link usage (for filtering rules)
34. Final Thoughts.... Lots of new applications are now becoming a reality with multicast
Further research is needed in many areas:
Multicast in different types of networks (satellite, SMDS)
Lots to work out with congestion control issues
Fairness and billing issues...everybody needs to make $$$
Still need better tests for really large groups (scalability!)