multicast1.ppt

advertisement
Multicast
Outline
Multicast revisited
Protocol Independent Multicast - SM
Future Directions
Multicast Revisited
• Motivation: multiple hosts wish to receive the same data from
one or more senders
• Multicast routing defines extensions to IP routers to support
broadcasting data in IP networks
– Until now IP has only facilitated a point to point routing
• Multicast data is sent and received at a multicast address which
defines a group
– Simple notion of a group is a TV channel
• Data is sent and received in multicast groups via routing trees
from sender(s) to receivers.
– Protocols are principally concerned with setting up and maintaining trees
• Note: All multicast messaging is sent via unicast
Fall, 2001
CS 640
2
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
• Sparse mode protocol
–
–
–
–
Fall, 2001
assumes sparse group membership
Shared distribution tree and ACK type
PIM-SM (Protocol Independent Multicast, Sparse Mode)
Examples: a Shuttle Launch
CS 640
3
PIM-SM overview (1)
• Developed due to scaling issues
– Flooding is generally a real bad idea
• Based on creating routing tree for a group with Rendezvous
Point (RP) as a root for the tree
– RP is a focus for both senders and receivers
• Explicit join model
– Receivers send Join towards the RP
– Sender send Register towards the RP
• Supports both shared (default) and source trees
• RPF check depends on tree type
– For shared tree (between RP and receivers), uses RP address
– For source tree (between RP and source), uses Source address
Fall, 2001
CS 640
4
PIM-SM overview(2)
• Only one RP is chosen for a particular group
• RP statically configured or dynamically learned (Auto-RP,
PIM v2 candidate RP advertisements)
• Data forwarded based on the source state (S, G)
if it exists, otherwise use the shared state (*, G)
– (*,G) means all senders
• RFC2362 – “PIM Sparse Mode Protocol Spec”
(experimental)
• Internet Draft: draft-ietf-pim-v2-sm-00.txt (October 1999)
Fall, 2001
CS 640
5
PIM-SM Basics
•
•
•
•
•
•
•
•
PIM Neighbor Discovery
PIM SM Forwarding
PIM SM Joining
PIM SM Registering
PIM SM SPT-Swichover
PIM SM Pruning
PIM SM Bootstrap
PIM SM State Maintenance
Fall, 2001
CS 640
6
PIM SM Tree Maintenance
• Periodic Join/Prunes are sent to all PIM neighbors
• Periodic Joins refresh interfaces in a PIM neighbor’s
downstream list
• Periodic Prunes refresh pruned state of a PIM neighbor
– There is a designated router (DR) for each local network and
all other routers get pruned
• Received multicast packets reset (S,G) entry expiration
timers.
– (S,G) entries are deleted if timers expire
Fall, 2001
CS 640
7
PIM-SM(1)
S
Source
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
8
PIM-SM(2)
S
Receiver 1 Joins Group G
C Creates (*, G) State, Sends
(*, G) Join to the RP
Source
A
B
RP
D
Join
C
R1
Fall, 2001
E
Receiver 1
CS 640
R2
Receiver 2
9
PIM-SM(3)
S
RP Creates (*, G) State
Source
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
10
PIM-SM(4)
S
Source
Register
Source Sends Data
A Sends Registration to the RP
IP tunnel between A and RP since
multicast tree is not established
Data
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
11
PIM-SM(5)
S
RP decapsulates Registration
Forwards Data Down the Shared Tree
Sends Joins Towards the Source
Source
join
A
join
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
12
PIM-SM(6)
S
RP Sends Register-Stop Once
Data Arrives Natively
Source
Register-Stop
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
13
PIM-SM(7)
SPT Switchover
S
C Sends (S, G) Joins to Join the
Shortest Path Tree (SPT)
Source
A
B
RP
D
join
C
R1
Fall, 2001
E
Receiver 1
CS 640
R2
Receiver 2
14
PIM-SM(8)
S
C starts receiving Data natively
Source
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
15
PIM-SM(9)
S
C Sends Prunes Up the RP tree for
the Source. RP Deletes (S, G) OIF and
Sends Prune Towards the Source
Source
Prune
A
Prune
B
RP
D
Prune
C
R1
Fall, 2001
E
Receiver 1
CS 640
R2
Receiver 2
16
PIM-SM(10)
S
B, RP pruned
Source
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
17
PIM-SM(11)
S
New receiver2 joins
E Creates State and Sends (*, G) Join
Source
A
B
RP
C
D
E
join
R1
Fall, 2001
Receiver 1
CS 640
R2
Receiver 2
18
PIM-SM(12)
S
C Adds Link Towards E to the OIF
List of Both (*, G) and (S, G)
Data from Source Arrives at E
Source
A
B
RP
C
R1
Fall, 2001
D
E
Receiver 1
CS 640
R2
Receiver 2
19
Inter-Domain Multicast Routing
• BGP4+ (Multicast BGP) for short-term solution
– Tweeks to BGP4 to support multicast
• Multicast Address Set and Claim (MASC)
– Hierarchical multicast address allocation at domain level
– Dynamic allocation (not permanent) of addresses by “set
and claim with collision”
• Border Gateway Multicast Protocol (BGMP)
– Use a PIM-like protocol between domains (“BGP for
multicast”)
Fall, 2001
CS 640
20
MASC
• Assume Addr(A) is allocated to domain A and domains B and C
sit “below” A in a domain hierarchy
• B selects Addr(B) which is subset of Addr(A) and send claim
(addr(B)) message to A and C
• A forwards claim to all children except B.
• If any of A’s children is already using Addr(B) they will report a
collision to A.
• A will notify B of the collision and B will select other address
space.
• Address space information is used to create distribution tree using
BGMP.
• Stored in M-RIB (Multicast Routing Information Base)
Fall, 2001
CS 640
21
BGMP
• BGMP builds shared tree of domains for a group
– Uses a rendezvous mechanism at the domain level
– Shared tree is bidirectional
– Root of shared tree of domains is at root domain
•
•
•
•
•
Runs in routers that border a multicast routing domain
Runs over TCP
Joins and prunes travel across domains
Can build unidirectional source trees
M-IGP (multicast Intra-Gateway Protocol) tells the
borders about group membership
Fall, 2001
CS 640
22
Multicast Routers
• mrouted (Xerox PARC) : DVMRP
• GateD (Merit) : DVMRP, PIM-DM, PIM-SM
• Cisco IOS : DVMRP, PIM-DM, PIM-SM
Fall, 2001
CS 640
23
M-Bone
• Wide area IP multicast test bed using IP-in-IP tunneling
• Routing protocol
– DVMRP is used
– Transition to PIM (DM, SM) is ongoing
• Started in March 1992 for audio broadcasting of IETF meeting
(San Diego)
• Latest tolopology
– ftp://ftp.parcftp.xerox.com/pub/net-research/mbone/maps/mbone-map-big.ps
– About 6000 (S,G) entries
• Discussion list: mbone@isi.edu
Fall, 2001
CS 640
24
Session Directory
Fall, 2001
CS 640
25
Example Session
Fall, 2001
CS 640
26
M-BONE in 1994
Fall, 2001
CS 640
27
M-BONE in 1996
Fall, 2001
CS 640
28
M-BONE in 1998
Fall, 2001
CS 640
29
Future Mulicast Service
• Current multicast service - latency and packet
drop
• Research for “Reliable multicast” is actively going
on for;
– large scale interactive gaming on the Internet
– Distributed databases
– large scale news distribution etc.
Fall, 2001
CS 640
30
Reliable multicast technology
• SRM ( Scalable Reliable Multicast)
– multicast with re-transmit (with random back-off)
– All nodes can re-transmit datagram (Multicast/Unicast)
• MTP (Multicast Transport Protocol: RFC1301)
• FEC (Forward Error Correction)
– error packet recovery by redundant packets
Fall, 2001
CS 640
31
Download