Technical Presentation Series: Multicast for IP Networks
Multicast Multicast for for
IP Networks IP Networks 6th April 20006th April 2000
John A. ClarkJohn A. Clark - Technical Account Manager- Technical Account Manager
Technical Presentation Series: Multicast for IP Networks - Page 2
Agenda• Overview of IP Multicast
— IP Multicast Addressing
— IGMP
• IP Multicast Routing Protocols
— DVMRP
— MOSPF
— PIM-DM
— PIM-SM
— PGM
• Protocol Comparison
• Summary
Technical Presentation Series: Multicast for IP Networks
IP Multicast OverviewIP Multicast Overview
… … What is it & Why do we need it?What is it & Why do we need it?
Technical Presentation Series: Multicast for IP Networks - Page 4
What is Multicast?
Multicast is a method for sending identical
data streams to groups of multiple end-stations
• Delivers data only to interested users
• Enables mass data distribution without specialised processors
• Eases administration for data sources
• Efficient use of bandwidth for transport of common data
Technical Presentation Series: Multicast for IP Networks - Page 5
Why use Multicasting?
• Multicasting fits many of today’s business activities
• Multicast support on Operating Systems— Windows 98, NT, Solaris, Linux, etc.
• Nortel customers are using multicastapplications in production environments— Real-time data push – SIAC, Stock Ticker – NASA for Mission Critical satellite telemetry,command and control and shuttle mission data.— Multimedia broadcast distribution – Marshall Space Center, IP TV, – UC Davis, distance learning
Technical Presentation Series: Multicast for IP Networks - Page 6
An Endstations View
• To Send Multicast Data– Host Endstations simply transmit to a Class D Multicast Address
• To Receive Multicast Data– Receiving Endstations register interest in data stream associated
with a Class D Multicast address (group membership)
Technical Presentation Series: Multicast for IP Networks - Page 7
Multicast AddressingIANA defined 224.0.0.1 All Local Hosts
224.0.0.2 All Routers
DVMRP 224.0.0.4 Routing Protocol
OSPF 224.0.0.5 All OSPF Routers
224.0.0.6 Designated Routers
PIM Sparse 224.0.0.13 All PIM Routers
Applications
RFC 1700,“AssignedNumbers”
224.0.1.1224.0.1.11224.0.1.12224.0.1.7224.0.1.16224.0.13.000to224.0.13.255
Network Time ProtocolIETF-1-AudioIETF-2-VideoAudionewsMusic-Service
Net News
IANA defined 224.0.0.1 All Local Hosts
224.0.0.2 All Routers
DVMRP 224.0.0.4 Routing Protocol
OSPF 224.0.0.5 All OSPF Routers
224.0.0.6 Designated Routers
PIM Sparse 224.0.0.13 All PIM Routers
Applications
RFC 1700,“AssignedNumbers”
224.0.1.1224.0.1.11224.0.1.12224.0.1.7224.0.1.16224.0.13.000to224.0.13.255
Network Time ProtocolIETF-1-AudioIETF-2-VideoAudionewsMusic-Service
Net News
• Class D Addresses (starting 1110) Class D Addresses (starting 1110)
• 224.0.0.0 - 239.255.255.255224.0.0.0 - 239.255.255.255
• Multicast Addresses are also mapped to Ethernet addresses ……...Multicast Addresses are also mapped to Ethernet addresses ……...
Technical Presentation Series: Multicast for IP Networks - Page 8
Multicast Ethernet Addresses
• IANA (InterNet Assigned Numbers Authority) owns the reserved block 01-00-5E
• The low order 23 bits of the IP Address are mapped to the low order 23 bits of the Ethernet address
Class D Multicast IP Address 224 10 8 511100000 00001010 00001000 00000101
Multicast MAC Address 00000001 00000000 01011110 (starts with IANA Prefix) 1 0 5E 0A 08 05
Class D Multicast IP Address 224 10 8 511100000 00001010 00001000 00000101
Multicast MAC Address 00000001 00000000 01011110 (starts with IANA Prefix) 1 0 5E 0A 08 05
Technical Presentation Series: Multicast for IP Networks - Page 9
End-to-end Protocol Involvement
• Routers at both the source host LAN and receiving end-station LANs use IGMP to learn the existence of host group members on their directly attached subnets
• Routers use a Multicast routing protocol (e.g. DVMRP, MOSPF etc.) to establish DVMRP
MOSPF
IGMP
IGMP
• Routers know there is a receiver - not how many
• Receivers don’t know who the host sender is
• Senders don’t know who the receivers are
Technical Presentation Series: Multicast for IP Networks - Page 10
IGMP - Internet Group Management Protocol
MembershipsMemberships224.1.1.1224.1.1.1
224.100.1.1224.100.1.1
MembershipsMemberships228.1.1.1228.1.1.1224.1.2.1224.1.2.1224.1.90.5224.1.90.5
MembershipsMemberships228.1.1.1228.1.1.1224.1.2.1224.1.2.1
224.1.90.5224.1.90.5
MembershipsMemberships224.1.200.1224.1.200.1224.100.1.1224.100.1.1
MembershipsMemberships224.1.90.5224.1.90.5224.1.1.1224.1.1.1
224.100.1.1224.100.1.1
Host Membership Host Membership QueryQuery
Ho
st M
emb
ersh
ip R
epo
rts
Ho
st M
emb
ersh
ip R
epo
rts
22
4.1
00
.1.1
22
4.1
00
.1.1
22
4.1
.20
0.1
22
4.1
.20
0.1
22
4.1
.1.1
22
4.1
.1.1
22
4.1
.90
.52
24
.1.9
0.5
22
8.1
.1.1
22
8.1
.1.1
22
4.1
.2.1
22
4.1
.2.1
• Multicast router periodically sends a data link layer IGMP Host Membership Query to all nodes on its LAN
— query is sent to the all-hosts group (network address 224.0.0.1)
— TTL of 1 - queries are not propagated outside of the LAN
• Each host sends back one IGMP Host Membership Report message per host group
— sent to the group address i.e. only one member reports membership
Technical Presentation Series: Multicast for IP Networks - Page 11
IGMP Protocol Format
• Sends IGMP queries and IP hosts report their host group memberships.
• IGMP is loosely analogous to ICMP (rfc 1112)
• IGMP messages are encapsulated in IP datagrams.
• IGMP has only two kinds of packets: Host Membership Query and Host Membership Report,
• Simple fixed format - payload 1st word: control information 2nd word: class D address
Technical Presentation Series: Multicast for IP Networks - Page 12
Routers and Multicast
Multicast routers:
• Translate multicast addresses into host addresses (Class D addresses identify a multicast stream not a specific destination)
• Make copies of multicast frames to forward throughout the forwarding tree
• Use a choice of routing protocols to provide forwarding throughout the network (e.g. DVMRP, MOSPF etc.)
• Exchange information about neighboring routers
• Keep ‘state’ for all group memberships
• Elect a Designated Router for each LAN (via IGMP) to avoid duplication of multicast tables
Technical Presentation Series: Multicast for IP Networks - Page 13
The Forwarding Tree
Host sends single packet to Multicast GroupHost sends single packet to Multicast Group
Router table has members of this Group Router table has members of this Group Router forwards one copy of packetRouter forwards one copy of packet
Downstream Router table has members of this Group Downstream Router table has members of this Group Router forwards one copy of packet on eachRouter forwards one copy of packet on eachdownstream interfacedownstream interface
Router forwards a single copy of the packet onto the attached LAN Router forwards a single copy of the packet onto the attached LAN where a group member resideswhere a group member resides
Technical Presentation Series: Multicast for IP Networks - Page 14
Reverse Path Forwarding
Source of Multicast DataSource of Multicast Data
DestinationDestinationDestinationDestination
Data flows in the directionData flows in the directionof the destination endstationof the destination endstation
Routers consult the routingRouters consult the routingtable to the source to maketable to the source to makeforwarding decisionforwarding decision
Technical Presentation Series: Multicast for IP Networks - Page 15
Two Types of Multicast Routing Protocolsusing Two Types of Multicast Trees
• Dense Mode— Multicast group members are densely distributed
— Assumes many of the subnets contain at least one group member
— Uses Source Tree– Shortest path tree from source to all receivers
• Sparse Mode— Multicast group members are sparsely distributed
— May be many members - but assumes they are widely dispersed
— Uses Shared Tree– Core delivers data to receivers on shared tree
Technical Presentation Series: Multicast for IP Networks - Page 16
Dense Mode Protocols
campus
• Protocols that use a “Flood & Prune” mechanism for packet delivery
• Useful in campus and environments where bandwidth is plentiful
• Source Tree - Shortest Path
Technical Presentation Series: Multicast for IP Networks - Page 17
Sparse Mode Protocols
WANWAN WANWAN WANWAN
WANWAN
• Protocols that use Explicit routing and forwarding
• Useful in WANs and environments where bandwidth is not plentiful
• Shared Tree from Core (Rendezvous Point)
Technical Presentation Series: Multicast for IP Networks - Page 18
Source Tree
Red group source host
Blue group source host
• Shortest path tree from source
to all receivers
• Data flooded to all end-stations
where not pruned
• Dense Mode Protocols
— DVMRP, MOSPF, PIM-DM
Technical Presentation Series: Multicast for IP Networks - Page 19
Shared Tree
Shared tree
Rendezvous Point (Core)
Source to core
Core to receivers
– Receivers build shared trees to Core
– Source sends to Core– Core delivers data to receiver on shared tree
Blue group source host
Red group source host
• Data sent and received via Core (Rendezvous Point)
• Data explicitly forwarded to endstations
• Sparse Mode Protocols
— CBT, PIM-SM
Technical Presentation Series: Multicast for IP Networks - Page 20
no receiversno receivers
no receiversno receivers
Flooding, Pruning and Grafting
source host
leafleaf
leafleaf
leafleaf
leafleaf
leafleaf
pruningpruning
pruningpruningGraftingGrafting
new receivernew receiver
• Flooding— Sending multicast packets to all
router interfaces - except that on which the packet arrived
• Pruning— Explicitly removing router
interfaces for which there are no multicast group members
• Grafting— Reconnecting router interfaces to a
pruned multicast group
Source tree
Technical Presentation Series: Multicast for IP Networks
DVMRPDVMRP
Distance Vector Multicast Distance Vector Multicast Routing ProtocolRouting Protocol
Technical Presentation Series: Multicast for IP Networks - Page 22
Distance Vector Multicast Routing Protocol
• “RIP for IP Multicast” - defined in RFC 1075
• Separate Multicast routing protocol, in addition to unicast RIP
• Collects information about multicast group membership via IGMP
• State maintained on all routers
• Can tunnel multicast data through non-multicast networks using IP-in-IP
• Uses Reverse Path Multicasting
Technical Presentation Series: Multicast for IP Networks - Page 23
DVMRP Forwarding• Assumes initially every host is part of the
multicast group
• Designated router on source subnet transmits a multicast message to all adjacent routers
• Each router selectively forwards the message downstream, until it is passed to all multicast group members
• Receiving routers check unicast routing tables to determine shortest path back to the source
• Forwards multicast message to all adjacent routers, other than the one that sent the message
• Ensures loop-free tree with shortest paths from the source to all recipients
Technical Presentation Series: Multicast for IP Networks - Page 24
DVMRP Protocol Operation ...
• Routers send prune messages resulting in a source specific tree
• Graft messages are used to reconnect to the pruned tree
• DVMRP routing table shows reverse path tree from the router
• Leaf detection relies upon “poison reverse”
— Multicast source network advertised at infinity
— Advertisements not at infinity are for leaf networks
• Leaf timeout 200 seconds (default) - flooding and pruning follows
• Neighbor timeout 240 seconds (default) - DVMRP route flushing follows
Technical Presentation Series: Multicast for IP Networks
MOSPFMOSPF
Multicast Extensions Multicast Extensions
to OSPFto OSPF
Technical Presentation Series: Multicast for IP Networks - Page 26
Multicast Extensions to OSPF
• Link state Multicast routing protocol defined in rfc1584
• Utilizes the unicast OSPF link state database
• Can mix MOSPF and OSPF routers in the same network
• Routers indicate MOSPF capabilities by setting MC bit in Router-LSA
• Group membership LSAs are distributed throughout the OSPF area
• When data for a group arrives the forwarding tree is calculated by running the Dijkstra algorithm
Technical Presentation Series: Multicast for IP Networks - Page 27
• MOSPF routers collects information about multicast group membership via IGMP
• Routers update their internal link-state information based on information flooded by adjacent routers
• Each router can independently calculate a least-cost tree with the multicast source as the root and the group members as leaves
• All routers will calculate exactly the same tree, since they share link-state information
• A Dijkstra calculation is required to compute a shortest-path tree for each (source, destination group) pair.
MOSPF Protocol Operation
Technical Presentation Series: Multicast for IP Networks - Page 28
MOSPF Protocol Operation ...
• Wildcard multicast forwarders (ABRs) ensure that all multicast data is flooded into the backbone area
• All ABRs advertise group membership into the backbone area ensuring multicast data flows across areas
• Designated router selection is as per OSPF
• Designated routers solicit and listen to IGMP group membership messages. Backup Designated routers listen only
• In a mixed OSPF/MOSPF the designated must be an MOSPF router
Technical Presentation Series: Multicast for IP Networks
PIMPIM
Protocol Independent Protocol Independent MulticastMulticast
Technical Presentation Series: Multicast for IP Networks - Page 30
Protocol Independent Multicast/Dense Mode
• Similar to DVMRP - also employs Reverse Path Multicasting (RPM) to construct source trees.
• Uses pruning to create the Shortest Path tree
• Designate router is elected using PIM Router-Query messages transmitted every 30 seconds
• Introduces new message type call “assert” to resolve looping …..
Technical Presentation Series: Multicast for IP Networks - Page 31
PIM Dense Mode Assert Messages
• An assert message is sent indicating the metric to the source
• Upon receiving an assert metric value is compared - if lower the interface is pruned. Designate router wins equal cost
• Downstream routers must listen to asserts to ensure knowledge of the correct upstream router
Technical Presentation Series: Multicast for IP Networks - Page 32
Protocol Independent Multicast/Sparse Mode
• Uses unicast routing table
• Utilizes Rendezvous Points (RP) to build the forwarding tree
• Provides both native and encapsulated data transport
• Allows routers to bypass the RP when high data volumes are present
Technical Presentation Series: Multicast for IP Networks - Page 33
PIM Sparse Protocol Operation
• Transmitted data is forwarded to the RP for distribution to the RP-Tree
• If the data rate is warrants, the RP or end-point router can switch to the SPF tree
• Timers are used for tree maintenance
• Designate router election is identical to PIM/Dense (PIM Router-Query messages transmitted every 30 seconds)
• Assert messages are used for loop detection
Technical Presentation Series: Multicast for IP Networks
PGMPGM
Pragmatic General Pragmatic General MulticastMulticast
Technical Presentation Series: Multicast for IP Networks - Page 35
Introduction to PGM
• Reliable Multicast transport protocol
• Original title, Pretty Good Multicast
• Re-labeled PragmaticGeneralMulticast
• Provides ordered, duplicate free, multicast data delivery from multiple sources to multiple receivers.
• Guarantees that a receiver in a multicast group either receives all data from transmissions and retransmissions, or is capable of detecting unrecoverable data packet loss.
• Standard is in Internet-Draft status - future??
Technical Presentation Series: Multicast for IP Networks - Page 36
PGM Basic OperationSourceReceiver ReceiverReceiver
SPM Frame
Multicast Data Frame 1
Multicast Data Frame 2
Multicast Data Frame 3
NAK Frame 2
NCF Frame
Multicast Data Frame 2
• Group members & sources periodically interleave Source Path Messages (SPM’s) with multicast data
• Numbered data frames are used to detect missing data and issue No Acknowledgement (NAK) messages if data is lost
• Hosts will continue to send NAK messagesuntil they receive a NAK Confirmation (NCF)
• The source will then retransmit the requested frame
Technical Presentation Series: Multicast for IP Networks - Page 37
PGM Protocol Messages
• Source Path Messages (SPMs)— Destination Address; Multicast Group Address.
— Transmitted by Sources to establish source-path state
— Must send SPM, before sending Multicast Data Stream
• Negative Acknowledgement (NAK) — Destination Address; Unicast, PGM-hop by PGM-hop, back to the source
• Negative Acknowledgement Confirmation (NCF) — Destination Address; Multicast Group Address
— Transmitted by Network Elements and sources in response to NAKs
— Designated Local Transmitters (DLRs) may respond to a NCF with their own NCF making themselves available as a DLR (Redirection NCF)
Technical Presentation Series: Multicast for IP Networks - Page 38
PGM Network ElementSource
ReceiverReceiver
ReceiverReceiver
ReceiverReceiver
SPM Frame
ModifiedSPM
FRAME
ModifiedSPM
FRAME
McastData
McastData
McastData
NA
K F
ram
e
2
N
CF
Fra
me
Mc
as
t D
ata
Fra
me
2
NA
K F
ram
e
2
N
CF
Fra
me
Mc
as
t D
ata
F
ram
e
2
NA
K F
ram
e
2
N
CF
Fra
me
Mc
as
t D
ata
F
ram
e
2
Technical Presentation Series: Multicast for IP Networks - Page 39
Designated Local RetransmitterSource
ReceiverReceiver
ReceiverReceiver
Receiver
DLR
SPM Frame
ModifiedSPM
FRAME
ModifiedSPM
FRAME
McastData
McastData
McastData
Nu
ll N
AK
NC
F F
ram
e
NAK Frame 2
Rdata N
ull
NA
K
Redirecting NCF Frame
Technical Presentation Series: Multicast for IP Networks
Multicast Routing Protocol Multicast Routing Protocol
ComparisonComparison
Technical Presentation Series: Multicast for IP Networks - Page 41
Making the Protocol Decision
• DVMRP is the most widely implement Multicast routing protocol available today
• DVMRP tunnels can provide the connection between MOSPF networks
• MOSPF was the first multicast routing protocol to achieve full standard
• Multicast extensions to OSPF have the convergence and reliability characteristics of OSPF- proven OSPF technology for multicast forwarding
• MOSPF provides state for both Unicast and Multicast forwarding in a single database
• PIM-SM supports shared tree & source path trees
• PIM-SM can switch from shared tree to source tree
Technical Presentation Series: Multicast for IP Networks - Page 42
Multicasting and the Internet
• Multicasting is carried through the internet overlaid on the unicast network using DVMRP tunnels
• MBONE consist of around 2750 routes
• Because of the MBONE’s size, it suffers from reliability problems
• Public domain software is used in the internet for video, voice, shared text and whiteboard session
• A recommended set of TTL’s exist for use in the internet
Technical Presentation Series: Multicast for IP Networks - Page 43
Summary - IP Multicast in One Page
• IP Multicast is receiver oriented— Receivers & hosts “join” multicast groups
— Group is defined by a multicast address
— Uses Internet Group Mgmt Protocol (IGMP) to communicate group interest to serving router
— Routers know there is a receiver, not how many
— Receivers don’t know who the host sender is
— Senders don’t know who the receivers are
• IP Multicast routing is the “glue”— Transparently forwards data from sender to receivers
Technical Presentation Series: Multicast for IP Networks
Thank youThank you
Questions ?Questions ?