Download presentation
Presentation is loading. Please wait.
1
CMPE 252A: Computer Networks
Lecture 13 CMPE252A Fall 2004
2
Multicast Routing CMPE252A Fall 2004
3
Unicast versus Multicast
Unicast: one to one. Multicast: many to many. General case. nXm. Two main functions: Efficient data distribution. Logical naming of a group. CMPE252A Fall 2004
4
Network-Supported Multicast
As opposed to application-layer multicast. What’s the difference? CMPE252A Fall 2004
5
Multicast through unicast
Src CMPE252A Fall 2004
6
Multicast through unicast
Src CMPE252A Fall 2004
7
Multicast through unicast
Src CMPE252A Fall 2004
8
Multicast through unicast
Src CMPE252A Fall 2004
9
Multicast through unicast
Src CMPE252A Fall 2004
10
Multicast Src CMPE252A Fall 2004
11
Multicast Src CMPE252A Fall 2004
12
Multicast Src CMPE252A Fall 2004
13
Multicast Src CMPE252A Fall 2004
14
Multicast Src CMPE252A Fall 2004
15
Multicast state CMPE252A Fall 2004
16
Multicast state Router:
Learns of existence of multicast groups through advertisements (IGMP). Identify links with group members. Establish state to route packets. Replicate packets on appropriate interfaces. Routing entry: Destination (mcast group) List of outgoing interfaces CMPE252A Fall 2004
17
Multicast groups Members are the intended receivers.
Senders may or may not be members. Destination address is class D IP address. Globally known portion of address space. Hosts may belong to many groups. Hosts may send to many groups. Support dynamic group membership. CMPE252A Fall 2004
18
Example applications Broadcast audio/video. Push-based systems.
Software distribution. Web-cache updates. Teleconferencing (audio, video, shared whiteboard, text editor). Multi-player games. Server/service location. CMPE252A Fall 2004
19
Components of the IP Multicast Architecture
service model hosts host-to-router protocol (IGMP) routers multicast routing protocols (various) CMPE252A Fall 2004
20
IP Multicast Service Model (RFC-1112)
Each group identified by single IP address. Groups may be of any size. Members of groups may be located anywhere in the Internet. Members of groups can join and leave at will. Senders need not be members. CMPE252A Fall 2004
21
Service model (cont’d)
Group membership not known explicitly. Analogy: Each multicast address is like a radio frequency, on which anyone can transmit, and to which anyone can tune-in. CMPE252A Fall 2004
22
IP Multicast Addresses
Class D IP addresses: in “dotted decimal” notation: — Two administrative categories: “Well-known” multicast addresses, assigned by ICANN. “Transient” multicast addresses, assigned and reclaimed dynamically, e.g., by “sdr” program. 1 group ID CMPE252A Fall 2004
23
IP Multicast Service — Sending
Uses normal IP-Send operation, with an IP multicast address specified as the destination. Application can: Specify IP time-to-live (TTL) on outgoing packet. Scope. Enable/disable loop-back if the sending host is/not a member of the destination group. CMPE252A Fall 2004
24
IP Multicast Service — Membership and Receiving
Two new operations: Join-IP-Multicast-Group ( group-address, interface ) Leave-IP-Multicast-Group ( group-address, interface ) Receive multicast packets for joined groups via normal IP-Receive operation. CMPE252A Fall 2004
25
IGMP CMPE252A Fall 2004
26
Components of the IP Multicast Architecture
service model hosts host-to-router protocol (IGMP) routers multicast routing protocols (various) CMPE252A Fall 2004
27
IGMP Protocol used by hosts to report their multicast group memberships to neighboring routers. Version 1, the current Internet Standard, is specified in RFC-1112. Operates over broadcast LANs and point-to-point links. Occupies similar position and role as ICMP in the TCP/IP protocol stack. CMPE252A Fall 2004
28
Relevant protocol layers
Upper-Layer Protocol Modules IP Service Interface ICMP IGMP IP Module Link-Layer Service Interface IP to link-layer address mapping (e.g., ARP) Link-Layer Modules (e.g., Ethernet) CMPE252A Fall 2004
29
IGMP messages Mcast routers send periodic IGMP query messages with TTL=1. One router per subnet is designated IGMP querier. Group address= 0. Hosts send 1 reply message per group. Random response timers. Suppression. Do routers need to know group membership? CMPE252A Fall 2004
30
How IGMP Works On each subnet, 1 router is elected the “querier”.
routers: hosts: On each subnet, 1 router is elected the “querier”. Querier periodically sends a query message to the all-systems group ( ), with TTL=1. On receipt, hosts start random timers (between 0 and 10 seconds) for each multicast group to which they belong. CMPE252A Fall 2004
31
How IGMP Works (cont’d)
Q G G G G When host’s timer for group G expires, it sends a Membership Report to group G, with TTL = 1. Other members of G hear the report and stop their timers. Routers hear all reports, and time out non-responding groups. CMPE252A Fall 2004
32
How IGMP Works (cont’d)
Ideally, only one report message per group sent in response to a query. (routers need not know who all the members are, only that members exist) Query interval is typically 60—90 seconds. When a host first joins a group, it sends one or two immediate reports, instead of waiting for a query. CMPE252A Fall 2004
33
Multicast routing CMPE252A Fall 2004
34
Multicast routing Multicast service model doesn’t require knowledge about group membership. Scalability. Anonymity. Dynamic join/leave. CMPE252A Fall 2004
35
Multicast routing trees
Span all receivers in a group. CMPE252A Fall 2004
36
Shared & source-based trees
Separate shortest path tree for each sender. Shared trees: Single tree shared by all members. Data flows on same tree regardless of sender. CMPE252A Fall 2004
37
Shared tree RP CMPE252A Fall 2004
38
Source-based trees S1 S2 CMPE252A Fall 2004
39
Source- versus shared trees
CMPE252A Fall 2004
40
Shared & source-based trees
Shortest path trees - low delay, better load distribution. More state at routers (per-source state). Efficient for dense-area multicast. Shared trees Higher delay. Traffic concentration. Per-group state at routers. Efficient for sparse-area multicast. CMPE252A Fall 2004
41
Routing protocol taxonomy
DVMRP - source-based trees. MOSPF - source-based trees. CBT- shared trees. PIM - shared (SM) and source-based (DM) trees CMPE252A Fall 2004
42
Distance-vector multicast routing protocol (DVMRP)
CMPE252A Fall 2004
43
Distance-Vector Multicast Routing Protocol
DVMRP consists of two major components: Routing: conventional distance-vector routing protocol. Forwarding: how to forward multicast packets, based on the routing table. CMPE252A Fall 2004
44
Multicast forwarding A DVMRP router forwards a packet if
The packet arrived from the link used to reach the source of the packet (reverse path forwarding - RPF). If downstream links have not been pruned from tree. CMPE252A Fall 2004
45
Example g g s g CMPE252A Fall 2004
46
Phase 1: Flood g g s CMPE252A Fall 2004 g
47
Phase 2: Prune g g prune (s,g) prune (s,g) s g CMPE252A Fall 2004
48
Phase 3: Graft g g g s g report (g) graft (s,g) graft (s,g)
CMPE252A Fall 2004
49
Phase 4: Steady State g g g s g CMPE252A Fall 2004
50
Multicast Routing: MOSPF
CMPE252A Fall 2004
51
Multicast OSPF (MOSPF)
Add-on to OSPF (Open Shortest-Path First). Link-state, intra-domain routing protocol. Multicast-capable routers flag link state routing advertisements. Each router indicates groups for which there are directly-connected members. CMPE252A Fall 2004
52
MOSPF (cont’d) Link-state advertisements augmented with multicast group addresses to which local members have joined. Link-state routing algorithm augmented to compute shortest-path distribution tree from any source to any set of destinations. CMPE252A Fall 2004
53
Link state: each router floods link state advertisement.
Multicast: add membership information to “link state”. Each router computes multicast tree for each active source, builds forwarding entry with outgoing interface list. S1 R1 R2 X Y Z CMPE252A Fall 2004
54
Z has network map, including membership at X and Y.
Z computes shortest path tree from S1 to X and Y. Z builds multicast entry with one outgoing interface. W, Q, R, each build multicast entries. S1 Z W Q X R R1 Y R2 CMPE252A Fall 2004
55
Link state advertisement with new topology may require
re-computation of tree and forwarding entry. S1 Z W Q X R R1 Y R2 CMPE252A Fall 2004
56
R3 T Link state advertisement (T) with new membership (R3) may
require incremental computation and addition of interface to outgoing interface list (Z) S1 Z R3 W Q T X R R1 Y R2 CMPE252A Fall 2004
57
Impact on route computation
Can’t pre-compute all source multicast trees. Compute on demand when first packet from a source S to a group G arrives. CMPE252A Fall 2004
58
Processing link-state advertisements
New link-state advertisement may lead to addition or deletion of outgoing interfaces if it contains different group addresses. New link-state advertisement may lead to re-computation of entire tree if routes between source and destinations are affected. CMPE252A Fall 2004
59
Evaluation Graceful add-on to OSPF and computes shortest-path trees.
Shares scaling benefits and limitations of OSPF. Other scaling questions re. dynamics of on-demand and re-computation for volatile groups. CMPE252A Fall 2004
60
Cores, centers, and rendezvous points
CMPE252A Fall 2004
61
Rendezvous With source-based trees senders and receivers meet by:
Flooding and pruning. LS distribution of group and receiver state. How do we solve the problem with shared trees? Establish a meeting place: center, core or rendezvous point. CMPE252A Fall 2004
62
Core-based trees (CBT)
Trees are receiver-based. Core: router from which branches emanate. Branches made up of other non-core routers. Branches are shortest-path between member hosts and core (reverse SPT). CMPE252A Fall 2004
63
Building shared tree Join Request Join ACK Join Request forwarded to
Core Join Request forwarded to next router on the path to core until it reaches core or router that is already in the tree. Join Request Join ACK CMPE252A Fall 2004
64
Sending data: sender near core
CMPE252A Fall 2004
65
Sending data: sender away from core
Data is unicast toward core; once it reaches core or non-core router, data is Multicast along shared tree. CMPE252A Fall 2004
66
Observations Core placement affects efficiency.
Finding the optimal core location is an NP-hard problem - use heuristics. For dynamic groups core location may have to be calculated frequently. Need multiple cores for robustness. CMPE252A Fall 2004
67
Protocol Independent Multicast (PIM)
CMPE252A Fall 2004
68
PIM PIM’s goal: address wide-area multicast by establishing efficient distribution trees both for dense and sparse groups. Router state. Control and data message processing. Unicast protocol independence: Use of routing tables independent of how they are computed. CMPE252A Fall 2004
69
Broadcast-and-Prune (DVMRP)
Simple, data-driven (dense-mode multicast). Broadcast first packets throughout network. Routers with no downstream members send prune messages and store prune state. Does not scale well as a long-term, general solution for internet-wide multicast Broadcast and prune has excessive bandwidth and state overhead for sparse groups in the wide area. CMPE252A Fall 2004
70
Broadcast-and-prune overhead
multicast distrib. tree broadcast-and-prune overhead R1 CMPE252A Fall 2004 R2
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.