Professional Documents
Culture Documents
Multi Cast
Multi Cast
Outline
Multicast Introduction and Motivation RIP-based and Protocol Independent Multicast Routing
IP multicast
R
R
CS 640
R
R
2
Why Multicast
When sending same data to multiple receivers
better bandwidth utilization less host/router processing quicker participation
Application
Video/Audio broadcast (One sender) Video conferencing (Many senders) Real time news distribution Interactive gaming
CS 640
RFC1112 : Host Extensions for IP Multicasting - 1989 Senders transmit IP datagrams to a "host group" Host group identified by a class D IP address Members of host group could be present anywhere in the Internet Members join and leave the group and indicate this to the routers Senders and receivers are distinct: i.e., a sender need not be a member Routers listen to all multicast addresses and use multicast routing protocols to manage groups
CS 640 4
Example : R joins to Group 224.2.0.1 R sends IGMP Membership-Report to 224.2.0.1 DR receives it. DR will start forwarding packets for 224.2.0.1 to Network A DR periodically sends IGMP Membership-Query to 224.0.0.1 (ALL-SYSTEMS.MCAST.NET) R answers IGMP MembershipReport to 224.2.0.1
CS 640 7
R Network A DR Network B
Data to 224.2.0.1
Example : R leaves from a Group 224.2.0.1 Network A R sends IGMP Leave-Group to 224.0.0.2 (ALL-ROUTERS.MCAST.NET)
DR Network B
Data to 224.2.0.1
DR receives it.
DR stops forwarding packets for 224.2.0.1 to Network A if no more 224.2.0.1 group members on Network A.
CS 640 8
CS 640
IP multicast routing
Purpose: share Group information among routers, to implement better routing for data distribution Distribution tree structure
Source tree vs shared tree
S
Notation: (S, G) S = Source G = Group
R
Receiver 1
R
Receiver 2
CS 640 11
S1
Notation: (*, G) * = all sources G = Group Shared Root
S2
R
Receiver 1
R
Receiver 2
CS 640 12
good for
small number of senders, many receivers such as Radio broadcasting application
CS 640
13
good for
Environments where most of the shared tree is the same as the source tree Many senders with low bandwidth (e.g. shared whiteboard)
CS 640
14
CS 640
15
Protocol types
Dense mode protocols
assumes dense group membership Source distribution tree and NACK type DVMRP (Distance Vector Multicast Routing Protocol) PIM-DM (Protocol Independent Multicast, Dense Mode) Example: Company-wide announcement assumes sparse group membership Shared distribution tree and ACK type PIM-SM (Protocol Independent Multicast, Sparse Mode) Examples: Futurama or a Shuttle Launch
CS 640 16
DVMRP
exchange distance vectors
Each router maintains a multicast routing table by exchanging distance vector information among routers
First multicast routing protocol ever deployed in the Internet
Similar to RIP
Constructs a source tree for each group using reverse path forwarding
Tree provides a shortest path between source and each receiver
Once tree is created, it is used to forward messages from source to receivers If all routers in the network do not support DVMRP then unicast tunnels are used to connect multicast enabled networks
CS 640 17
DVMRP
broadcast & prune
Flood multicast packets based on RPF (Reverse path forwarding) rule to all routers. Leaf routers check and sends prune message to upstream router when no group member is on their network Upstream router prune the interface with no dependent downstream router. Graft message to create a new branch for late participants Restart forwarding after prune lifetime (standard : 720 minutes) draft-ietf-idmr-dvmrp-v3-09.txt (September 1999)
CS 640 18
3.
DVMRP (1)
form a source tree by exchanging metric
source tree S
Source
DF
R1
Receiver 1
CS 640 20
DVMRP (2)
broadcast
Source
DF
R1
Receiver 1
CS 640 21
DVMRP (3)
prune
Source
DF
R1
Receiver 1
CS 640 22
DVMRP (4)
X and Y pruned
Source
DF
Y
R1
Receiver 1
CS 640 23
DVMRP (4)
New member
Source
DF
Y
R1
Receiver 1
CS 640
R2
Receiver 2
24
DVMRP (4)
New branch
Source
DF
Y
R1
Receiver 1
CS 640
R2
Receiver 2
25
Cons: may cause more broadcast-and-prunes (in dense mode) Most popular multicast routing protocol today
Main difference with DVMRP independence from underlying unicast routing mechanism PIM supports both dense (DM) and sparse (SM) mode operation
You can locally use either or both modes
CS 640 26
PIM DM overview(1)
Assumes that you have lots of folks who want to be part of a group Based on broadcast and prune
Ideal for dense group
Source tree created on demand based on RPF rule If the source goes inactive, the tree is torn down Easy plug-and-play configuration Branches that dont want data are pruned
CS 640 27
PIM DM overview(2)
Grafts used to join existing source tree Asserts used to determine the forwarder for multiaccess LAN Non-RPF point-2-point links are pruned as a consequence of initial flooding
CS 640
28
PIM DM Forwarding
PIM DM interfaces are placed on an downstream list for a multicast group if:
PIM neighbor is heard on interface Host on this interface has just joined the group Interface has been manually configured to join group
CS 640
30
Interface prune state times out causing periodic reflooding and pruning
could be as little as 210 seconds
CS 640
31
PIM-DM(1)
Initial flood of data
Source
A C
B G D F H
E
R1
Receiver 1
I
R2
CS 640
Receiver 2
32
PIM-DM(2)
prune non-RPF p2p link
Source
IGMP PIM-Prune
A C
B G D F H
E
R1
Receiver 1
I
R2
CS 640
Receiver 2
33
PIM-DM(3)
C and D Assert to Determine Forwarder for the LAN, C Wins
Source
A C
B G D F H
E
R1
Receiver 1
I
R2
CS 640
Receiver 2
34
PIM-DM(4)
I, E, G send Prune H send Join to override Gs Prune
Source
A C
B G D F H
E
R1
Receiver 1
I
R2
CS 640
Receiver 2
35
PIM-DM(5)
I Gets Pruned Es Prune is Ignored (since R1 is a receiver) Gs Prune is Overridden (due to new receiver R2)
Source
A C
B G D F H
E
R1
Receiver 1
I
R2
CS 640
Receiver 2
36
PIM-DM(6)
New Receiver, I send Graft
Source
IGMP PIM-Graft
A C
B G D F H
E
R1
Receiver 1
I
R2 R3
Receiver 3
CS 640
Receiver 2
37
PIM-DM(6)
new branch
Source
IGMP PIM-Graft
A C
B G D F H
E
R1
Receiver 1
I
R2 R3
Receiver 3
CS 640
Receiver 2
38