Advanced Computer Networks: Lecture 27. This lecture will cover the following: multicast and multicast support strategy; multicast integrated into IPv6; internet group management protocol (IGMP); IP multicast service model; internet multicast backbone - MBone;...
CS716 Advanced Computer Networks By Dr. Amir Qayyum 1 Lecture No. 27 Multicast Internetworking • Basics of internetworking (heterogeneity) – IP protocol, address resolution, control messages … • Routing • Global internets (scale) – Virtual geography and addresses – Hierarchical routing • Future internetworking: IPv6 • Multicast traffic • MPLS Internet Multicast Outline • • • • • Motivation and challenges Support strategy IP multicast service model Multicast in the Internet Routing – Review of ELAN techniques – Multicast routing • Limitations Multicast • • • • Unicast: one destination Broadcast: all destinations Multicast: subset of destinations When is multicast useful ? – Send data to multiple receivers at once • Videoconferencing, videoondemand, telecollaboration • Software update to group of customers – Limited broadcast/selfdefined multicast • Send question to unknown receiver • Resource discovery; Distributed database Multicast • Why not just use broadcast/unicast ? – Broadcast not supported outside of LAN – Unicast sends multiple copies across common links • Multicast support – Often supported by hardware in LAN’s (as broadcast, if not multicast) – But difficult to extend in scalable manner • Multicast challenges – Efficient distribution on an internetwork – Specification of recipient group (abstraction must support selfdefinition) Multicast Support Strategy • IPv4 used as basis for experimental solutions – Use class D addresses (1110 ) – Demonstrated with MBone – Uses tunneling • Multicast integrated into IPv6 • Internet Group Management Protocol (IGMP) • Several routing/forwarding schemes: – Distancevector – Linkstate – Protocolindependent IP Multicast Service Model • Each group uses a single address – Class D addresses (1110 ) – Some are wellknown, some are dynamically assigned • Group membership – Members located anywhere in the Internet – Number of receivers is arbitrary – Members can join/leave dynamically – Hosts can belong to more than one group IP Multicast Service Model • Senders simply use group address as destination – Sender need not be in group – LAN loopback needed for sender in group • Multicast scope – LAN (local scope) – Administrative scope (e.g. campus), may overlap, can assign group addresses dynamically – TTL scope (no more than N hops) • Scope is exposed to protocols and applications (by exposing IP TTL) 10 ELAN Multicast Techniques • Spanning tree selection – Elect a leader; spanning tree is shortest path to leader (Perlman) – Distribute topology everywhere, compute in parallel (linkstate) • Problems with spanning trees – Bandwidth wasted for groups with few receivers; Solution: prune LAN’s with no receivers from tree – For very large ELAN’s, no single tree is efficient; Solution: define tree per group or tree per source • The same solutions are used in the Internet! 14 Spanning Tree Tradeoffs • Tree per group or tree per source ? • Per group advantage – One routing entry per group • Per source advantages – More efficient distribution – Spreads load better across links – Leverage unicast routing tables 15 Multicast Routing in the Internet • Multicast Open Shortest Path First (MOSPF) • DistanceVector Multicast Routing Protocol (DVMRP, used in MBONE) • ProtocolIndependent Multicast (PIM) – Deals with scalability issues of above protocols – Dense Mode (PIMDM) – Sparse Mode (PIMSM) 16 Multicast Routing in the Internet • How do senders find receivers? – Receivers inform all senders of interest (MOSPF) – Send to all receivers; uninterested receivers prune (DVMRP, PIMDM) – Agree on set of rendezvous points (PIMSM) • Types of distribution trees – Separate tree from each sender (DVMRP, MOSPF, PIMDM, PIMSM) – Tree rooted at rendezvous point (PIMSM) 17 Link State Multicast (MOSPF) • Each host on a LAN – Periodically announces its group memberships, via Internet Group Management Protocol (IGMP) • Extend LSP to include set of groups with members on a given LAN • MOSPF routing extends OSPF – Uses Dijkstra’s algorithm – Computes shortestpath spanning tree for source group pairs – Forward packet on local portion of tree 18 Link State Multicast (MOSPF) • Tree computation – Can’t precompute for all sourcegroup pairs – Compute on demand when first packet from a source S to a group G arrives – Cache trees for active sourcegroup pairs – Recompute when linkstate changes • Scalability limitations – Reasonable intraAS scalability – But meaningless for interAS – Sourcegroup pairs scale with sources (needs to be hierarchical) 19 Distance Vector Multicast (DVMRP) • Idea – Graph of directed nexthop edges to a destination S form a tree – Use reverse edges to broadcast from S • Implementation (Reverse Path Broadcast, or RPB) – Forward multicast packet on all links – If and only if packet came from next hop for packet source • Avoid repetition on LAN’s – Assign parent router for each LAN – Has shortest path to source, ties broken by ID – Track parenthood via vector exchanges 20 RPB and RPM M M M M G M M M M Member of multicast group G RPM from S to G RPB from S SS Unicast route to S Pruned 21 RPB to RPM (reverse path multicast) • Identify leaf networks – Only one router on network – Thus no distance packets received on interface • Prune leaf networks – Without hosts in a group – Hosts must selfidentify using IGMP • Forward pruning information – Extend distance vector with group information – Forward packets only to interested parties – Only when multicast source active 22 Distance Vector Multicast RPM Implementation • Assume that everyone is interested • Respond to unwanted packets with prune requests • Prune requests – Canceled by graft request – Time out periodically • Need ARQ for prune or graft ? 23 Distance Vector Multicast Scalability • Packets are periodically broadcast (thus guaranteed to reach all interested members) • High overhead for sparse groups, consider: – Multicast group of 10 members – Scattered around the world – Packets periodically reach all routers in Internet • High overhead for routers – All offtree routers maintain pruning state – And periodically retransmit 24 Protocol Independent Multicast (PIM) • Approach – Define rendezvous points (RP) for each group – Need multiple RP’s to handle failures • Two versions – Dense mode • Explicit prune messages • Shared tree – Sparse mode • Explicit join messages • Shared or sourcespecific tree 25 Protocol Independent Multicast (PIM) • Rendezvous points (RP) for each multicast group RP RP RP RP Specific multicast tree RP RP SS 26 Protocol Independent Multicast • Joins – Receiver: send packet to one RP – Source: send to all RP’s • Tree selection – Rooted at rendezvous points – Shared for infrequent traffic – Sourcespecific if merited by traffic level 27 Limitations on Multicast • Scalability (addressed to some extent by PIM) – Explosive growth of the Internet population – Explosive growth of multicast, multimedia applications • Control of network resources – Applications have different performance needs – Different resource commitments by clients and/or organizations – Different ASs provide different QoS … 28 .. .Lecture? ?No.? ?27? ? Multicast Internetworking • Basics of internetworking (heterogeneity) – IP protocol, address resolution, control messages …... Rooted at rendezvous points – Shared for infrequent traffic – Sourcespecific if merited by traffic level 27 Limitations on Multicast • Scalability (addressed to some extent by PIM) – Explosive growth of the Internet population