You are on page 1of 28

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


4

Internet Multicast Outline


Motivation and challenges Support strategy IP multicast service model Multicast in the Internet Routing Review of ELAN techniques Multicast routing Limitations
5

Multicast
Unicast: one destination Broadcast: all destinations Multicast: subset of destinations When is multicast useful ?
Send data to multiple receivers at once Videoconferencing, video-on-demand, telecollaboration Software update to group of customers Limited broadcast/self-defined 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 LANs (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 self-definition) 7

Multicast Support Strategy


IPv4 used as basis for experimental solutions
Use class D addresses (1110 <28 bits>) Demonstrated with MBone Uses tunneling

Multicast integrated into IPv6


Internet Group Management Protocol (IGMP)

Several routing/forwarding schemes:


Distance-vector Link-state Protocol-independent
8

IP Multicast Service Model


Each group uses a single address Class D addresses (1110 <28 bits>) Some are well-known, 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
9

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 10 (by exposing IP TTL)

IP Multicast Service Model


Multicast reception requires membership in group Internet Group Management Protocol (IGMP), RFC 1112 New operations to join and leave group LAN routers track local membership Forwarding depends on routing scheme Last hop typically uses LAN broadcast Packet reception same as IP unicast
11

Internet Multicast Backbone - MBone


Existing infrastructure for multicast in the Internet Multicast route propagation using DVMRP Problem: most IP routers do not support multicast Solution: tunneling by multicast-capable routers
Encapsulate multicast traffic in IP packets Send to other multicast-capable routers Recipients unpack & forward original multicast packet

Passes through multicast-incapable areas of Internet

12

ELAN Multicast Techniques


Direct support (Ethernet) Application subscribes to group IP layer notifies Ethernet card to listen to packets with group address Support through broadcast (LANE) Flooding in ELANs Each packet sent on all but incoming link Switches must remember each packet! Spanning tree: every host gets one copy
13

ELAN Multicast Techniques


Spanning tree selection
Elect a leader; spanning tree is shortest path to leader (Perlman) Distribute topology everywhere, compute in parallel (link-state)

Problems with spanning trees


Bandwidth wasted for groups with few receivers; Solution: prune LANs with no receivers from tree For very large ELANs, 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) Distance-Vector Multicast Routing Protocol (DVMRP, used in MBONE) Protocol-Independent Multicast (PIM)
Deals with scalability issues of above protocols Dense Mode (PIM-DM) 16 Sparse Mode (PIM-SM)

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, PIM-DM) Agree on set of rendezvous points (PIM-SM)

Types of distribution trees


Separate tree from each sender (DVMRP, MOSPF, PIM-DM, PIM-SM) Tree rooted at rendezvous point (PIM-SM)
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 Dijkstras algorithm Computes shortest-path spanning tree for sourcegroup pairs Forward packet on local portion of tree
18

Link State Multicast (MOSPF)


Tree computation
Cant precompute for all source-group pairs Compute on demand when first packet from a source S to a group G arrives Cache trees for active source-group pairs Recompute when link-state changes

Scalability limitations
Reasonable intra-AS scalability But meaningless for inter-AS Source-group pairs scale with sources (needs to 19 be hierarchical)

Distance Vector Multicast (DVMRP)


Idea Graph of directed next-hop 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 LANs 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 G

RPM from S to G Member of M multicast group G

RPB from S

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 self-identify 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 off-tree routers maintain pruning state And periodically retransmit
24

Protocol Independent Multicast (PIM)


Approach
Define rendezvous points (RP) for each group Need multiple RPs to handle failures

Two versions
Dense mode
Explicit prune messages Shared tree

Sparse mode
Explicit join messages Shared or source-specific tree
25

Protocol Independent Multicast (PIM)


Rendezvous points (RP) for each multicast group
Specific multicast tree RP

RP

RP

S
26

Protocol Independent Multicast


Joins
Receiver: send packet to one RP Source: send to all RPs

Tree selection
Rooted at rendezvous points Shared for infrequent traffic Source-specific 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

You might also like