Professional Documents
Culture Documents
BRKIPM-1261
Greg Shepherd
Distinguished Engineer, Technical Marketing
BRKIPM-1261
Cisco Public
Introduction to IP Multicast
BRKIPM-2008
BRKIPM-2262
Multicast Security
BRKIPM-2264
Multicast Troubleshooting
BRKIPM-3061
BRKIPM-3686
TECIPM-1008
BRKIPM-1261
Cisco Public
Session Goal
To provide you with a thorough
understanding of the concepts,
mechanics and protocols used
to build IP multicast networks
BRKIPM-1261
Cisco Public
Agenda
Why Multicast?
Multicast Fundamentals
PIM Protocols
RP Choices
Multicast at Layer 2
Interdomain IP Multicast
Some Latest Additions
BRKIPM-1261
Cisco Public
Why Multicast?
BRKIPM-1261
Cisco Public
Number of Streams
Router
Multicast
Server
Router
BRKIPM-1261
Cisco Public
Cisco Public
Cisco Public
BRKIPM-1261
Cisco Public
BRKIPM-1261
Cisco Public
10
Cisco Public
11
BRKIPM-1261
Cisco Public
12
Multicast Uses
Any applications with multiple receivers
One-to-many or many-to-many
Server/Website replication
Reducing network/resource overhead
More than multiple point-to-point flows
Resource discovery
Distributed interactive simulation (DIS)
War games
Virtual reality
BRKIPM-1261
Cisco Public
13
Multicast Considerations
Multicast Is UDP-Based
Best effort delivery: Drops are to be expected; multicast
applications should not expect reliable delivery of data and should be
designed accordingly; reliable multicast is still an area for much
research; expect to see more developments in this area; PGM, FEC,
QoS
No congestion avoidance: Lack of TCP windowing and slow-start
mechanisms can result in network congestion; if possible, multicast
applications should attempt to detect and avoid congestion conditions
Duplicates: Some multicast protocol mechanisms (e.g., asserts,
registers, and SPT transitions) result in the occasional generation of
duplicate packets; multicast applications should be designed to
expect occasional duplicate packets
Out of order delivery: Some protocol mechanisms may also result
in out of order delivery of packets
BRKIPM-1261
Cisco Public
14
Multicast Fundamentals
BRKIPM-1261
Cisco Public
15
Multicast Components
Cisco End-to-End Architecture
ISP A
ISP B
MSDP
RP
Multicast Source
X
DR
ISP B
RP
IGMP Snooping
PIM Snooping
Multicast Source
Y
ISP A
MBGP
DR
IGMP
PIM-SM: ASM,
SSM, BiDir
MVPN
Campus Multicast
Switches (Layer 2 optimization)
IGMP snooping PIM snooping
DR
Interdomain Multicast
Multicast source discover
MSDP with PIM-SM
16
1. You must be a
member of a group
to receive its data
2. If you send to a group
address, all members
receive it
Group
Member 1
Receiver
BRKIPM-1261
Cisco Public
D Non-Group
Member
E
Group
Member 2
Receiver
17
Multicast Addressing
IPv4 Header
e
B
r
e
v
e
N
n
a
C
s
s
s
e
s
r
e
d
r
d
d
d
A
A
p
u
e
c
o
r
r
u
G
o
t
S
s
a
c
i
t
l
u
M
D
s
s
a
l
C
Version
IHL
Type of Service
Total Length
Identification
Time to Live
Source
Source
Flags
Protocol
Fragment Offset
Header Checksum
Source Address
1.0.0.0 - 223.255.255.255 (Class A, B, C)
Destination
Destination
Destination Address
224.0.0.0 - 239.255.255.255 (Class D) Multicast Group Address
Options
BRKIPM-1261
Range
Padding
Cisco Public
18
Multicast Addressing224/4
Reserved link-local addresses
224.0.0.0224.0.0.255
Examples
224.0.0.1
224.0.0.2
224.0.0.5
OSPF routers
224.0.0.22 IGMPv3
224.0.1.0224.0.1.255
Examples
224.0.1.1
BRKIPM-1261
Cisco Public
19
Multicast Addressing224/4
Administratively scoped addresses
239.0.0.0239.255.255.255
Private address space
BRKIPM-1261
Cisco Public
20
Multicast Addressing
IP Multicast MAC Address Mapping
32 Bits
1110
5 Bits
Lost
28 Bits
239.255.0.1
25 Bits
23 Bits
48 Bits
BRKIPM-1261
Cisco Public
21
Multicast Addressing
IP Multicast MAC Address Mapping
Be Aware of the 32:1 Address Overlap
32IP Multicast Addresses
224.1.1.1
224.129.1.1
225.1.1.1
225.129.1.1
.
.
.
238.1.1.1
238.129.1.1
239.1.1.1
239.129.1.1
BRKIPM-1261
0x0100.5E01.0101
Cisco Public
22
BRKIPM-1261
Cisco Public
23
BRKIPM-1261
Cisco Public
24
H2
H1
H3
Report
Cisco Public
25
H1
Suppressed
224.1.1.1
224.1.1.1
H2
Report
H3
Suppressed
Query
Cisco Public
26
H2
H1
#1
H3
Leave to
224.0.0.2
Group Specific
Query to 224.1.1.1
#2
Cisco Public
27
BRKIPM-1261
Cisco Public
28
No report suppression
All hosts on wire respond to queries
BRKIPM-1261
Cisco Public
29
IGMPv3Joining a Group
1.1.1.10
1.1.1.11
1.1.1.12
H1
H2
H3
v3 Report
(224.0.0.22)
Group: 224.1.1.1
Exclude: <empty>
1.1.1.1
rtr-a
BRKIPM-1261
Cisco Public
30
1.1.1.11
1.1.1.12
H1
H2
H3
v3 Report
(224.0.0.22)
Group: 224.1.1.1
Include: 10.0.0.1
1.1.1.1
rtr-a
Cisco Public
31
IGMPv3Maintaining State
1.1.1.10
1.1.1.11
1.1.1.12
H1
H2
H3
v3 Report
(224.0.0.22)
v3 Report
(224.0.0.22)
v3 Report
(224.0.0.22)
1.1.1.1
Query
Cisco Public
32
Multicast L3 Forwarding
Multicast Routing is Backwards from Unicast Routing
Unicast routing is concerned about where the packet
is going
Multicast routing is concerned about where the packet came from
Initially
BRKIPM-1261
Cisco Public
33
BRKIPM-1261
Cisco Public
34
BRKIPM-1261
Cisco Public
35
BRKIPM-1261
Cisco Public
36
Join
C
Join
E0
BRKIPM-1261
10.1.1.1
Cisco Public
E1
E
E2
R1
37
10.1.1.1
A
Join
Join
R2
E1
E
E2
R1
BRKIPM-1261
Cisco Public
38
10.1.1.1
Tie-breaker
Use highest next-hop IP address
B
D
1.1.1.1
Join
E0
BRKIPM-1261
Cisco Public
E
1.1.2.1
E1
F
E2
R1
39
Notation: (S, G)
S = Source
G = Group
Source 2
A
Receiver 1
BRKIPM-1261
Receiver 2
Cisco Public
40
Notation: (S2, G)
S = Source
G = Group
Source 2
A
Receiver 1
BRKIPM-1261
Receiver 2
Cisco Public
41
D (RP)
Receiver 1
BRKIPM-1261
(RP)
Receiver 2
Cisco Public
42
Notation: (*, G)
* = All Sources
G = Group
Source 2
D (RP)
(RP)
Receiver 1
BRKIPM-1261
Receiver 2
Cisco Public
43
Shared trees
Uses less memory O(G) but you may get suboptimal paths
from source to all receivers; may introduce extra delay
BRKIPM-1261
Cisco Public
44
Shared trees
PIM control messages are sent toward RP
BRKIPM-1261
Cisco Public
45
BRKIPM-1261
Cisco Public
46
SSM
Source Specific Multicast, no RP, SPT only
BiDir
BRKIPM-1261
Cisco Public
47
RP
(*, G) Join
Shared Tree
Receiver
BRKIPM-1261
Cisco Public
48
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Register
(unicast)
Receiver
(S, G) Join
BRKIPM-1261
Cisco Public
49
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Register
(S, G) Register-Stop
BRKIPM-1261
(unicast)
Receiver
(unicast)
Cisco Public
RP Sends a Register-Stop
Back to the First-Hop
Router to Stop the Register
Process
50
RP
Source
Traffic Flow
Shared Tree
Source Tree
BRKIPM-1261
Cisco Public
51
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Join
BRKIPM-1261
Receiver
Cisco Public
52
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G)RP-bit Prune
BRKIPM-1261
Receiver
Cisco Public
53
RP
Source
Traffic Flow
Shared Tree
Source Tree
Receiver
BRKIPM-1261
Cisco Public
54
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Prune
BRKIPM-1261
Receiver
Cisco Public
55
RP
Source
Traffic Flow
Shared Tree
Source Tree
Receiver
BRKIPM-1261
Cisco Public
56
BRKIPM-1261
Cisco Public
57
PIM-SMEvaluation
Effective for sparse or dense distribution of multicast receivers
Advantages
Traffic only sent down joined branches
Can switch to optimal source-trees for high traffic sources dynamically
BRKIPM-1261
Cisco Public
58
BRKIPM-1261
Cisco Public
59
Source
Out-of-Band Source
Directory
Example: Web Server
(S, G) Join
BRKIPM-1261
Cisco Public
60
Source
Receiver 1
BRKIPM-1261
Cisco Public
61
SSMEvaluation
Ideal for applications with one source sending to many receivers
Uses a simplified subset of the PIM-SM protocol
Simpler network operation
BRKIPM-1261
Cisco Public
62
BRKIPM-1261
Cisco Public
63
Bidirectional PIMOverview
RP
Receiver
Sender/
Receiver
Shared Tree
Receiver
BRKIPM-1261
Cisco Public
64
Bidirectional PIMOverview
RP
Receiver
Sender/
Receiver
Cisco Public
65
Bidir PIMEvaluation
Ideal for many to many applications
Drastically reduces network mroute state
Eliminates all (S,G) state in the network
BRKIPM-1261
Cisco Public
66
RP Choices
BRKIPM-1261
Cisco Public
67
RP redundancy requirements
Eliminate any single point of failure
BRKIPM-1261
Cisco Public
68
AutoRP
Originally a Cisco solution
Facilitated PIM-SM early transition
BSR
draft-ietf-pim-sm-bsr
BRKIPM-1261
Cisco Public
69
Static RPs
Hard-configured RP address
When used, must be configured on every router
All routers must have the same RP address
RP failover not possible
Command
ip pim rp-address <address> [group-list <acl>] [override]
Optional group list specifies group range
BRKIPM-1261
Cisco Public
70
C-RP
1.1.1.1
A
Announce
B
Announce
Announce
MA
Announce
Announce
MA
D
Announce
Announce
Announce
C-RP
2.2.2.2
Cisco Public
71
MA
Disc
Disc
ove
ry
ove
MA
ry
Disc
ove
ry
C-RP
1.1.1.1
Disc
ove
ry
C-RP
2.2.2.2
Cisco Public
72
C-BSR
D
C-BSR
C-BSR
A
C
E
BSR Msgs
Cisco Public
73
BSR
D
C
E
BRKIPM-1261
Cisco Public
74
BSR
D
C-RP
C-RP
BRKIPM-1261
Cisco Public
75
BSR
D
C-RP
BSR Msgs
C-RP
Cisco Public
76
Multicast at Layer 2
BRKIPM-1261
Cisco Public
77
PIM
BRKIPM-1261
Cisco Public
78
PIM
IGMP
IGMP
BRKIPM-1261
Cisco Public
79
BRKIPM-1261
Cisco Public
80
SummaryFrame Switches
IGMP Snooping
Switches with Layer 3-aware hardware/ASICs
High-throughput performance maintained
Increases cost of switches
Switches without Layer 3-aware hardware/ASICs
Suffer serious performance degradation or
even meltdown!
Shouldnt be a problem when IGMPv3 is implemented
BRKIPM-1261
Cisco Public
81
Interdomain IP Multicast
BRKIPM-1261
Cisco Public
82
MBGP Overview
MBGP: Multiprotocol BGP
Defined in RFC 2858 (extensions to BGP)
Can carry different types of routes
Unicast
Multicast
BRKIPM-1261
Cisco Public
83
MBGP Overview
Separate BGP tables maintained
Unicast prefixes for unicast forwarding
Unicast prefixes for multicast RPF checking
AFI = 1, Sub-AFI = 1
Contains unicast prefixes for unicast forwarding
Populated with BGP unicast NLRI
AFI = 1, Sub-AFI = 2
Contains unicast prefixes for RPF checking
Populated with BGP multicast NLRI
BRKIPM-1261
Cisco Public
84
MBGP Overview
MBGP Allows Divergent Paths and Policies
Same IP address holds dual significance
Unicast routing information
Multicast RPF information
BRKIPM-1261
Cisco Public
85
MSDP
RFC 3618
ASM only
RPs knows about all sources in their domain
BRKIPM-1261
Cisco Public
86
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Domain C
RP
Domain B
RP
RP
Domain D
RP
Domain A
BRKIPM-1261
Cisco Public
87
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Source Active
Messages
SA
SA
Domain C
RP
SA
Domain B SA
SA
RP
SA
SA
RP
RP
SA Message
192.1.1.1, 224.2.2.2
Domain D
Domain A
Register
192.1.1.1, 224.2.2.2
BRKIPM-1261
Cisco Public
88
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
r
Jo
(S, 224 in
.2.2.2)
Domain C
RP
Domain B
RP
RP
Domain D
BRKIPM-1261
RP
Domain A
Cisco Public
89
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Domain C
RP
Domain B
RP
RP
Domain D
BRKIPM-1261
RP
Domain A
Cisco Public
90
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Join
.2)
(S, 224.2.2
Domain C
RP
Domain B
RP
RP
Domain D
BRKIPM-1261
RP
Domain A
Cisco Public
91
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Domain C
RP
Domain B
RP
RP
Domain D
BRKIPM-1261
RP
Domain A
Cisco Public
92
RP
Domain C
Receiver Learns
S and G Out of
Band, i.e.,
Webpage
RP
Domain B
RP
RP
Domain D
Source in 232/8
BRKIPM-1261
RP
Domain A
Cisco Public
93
Anycast RPOverview
Redundant RP technique for ASM which uses MSDP
for RP synchronization
Uses single defined RP address
Two or more routers have same RP address
RP address defined as a loopback interface
Loopback address advertised as a host route
Senders and receivers join/register with closest RP
Closest RP determined from the unicast routing table
Because RP is statically defined
BRKIPM-1261
Cisco Public
94
Anycast RPOverview
Src
RP1
X
BRKIPM-1261
RP2
MSDP
A
10.1.1.1
Rec
Src
SA
SA
Rec
Rec
B
10.1.1.1
Cisco Public
Rec
95
Anycast RPOverview
Src
Src
RP2
A
10.1.1.1
B
10.1.1.1
RP1
Rec
BRKIPM-1261
Rec
Rec
Cisco Public
Rec
96
Recent Additions
BRKIPM-1261
Cisco Public
97
CE
CE
CE
CE
CE
BRKIPM-1261
CE
MPLS
Core
CE
Cisco Public
98
BRKIPM-1261
Cisco Public
99
BRKIPM-1261
Cisco Public
100
IPv4 Solution
IPv6 Solution
Address Range
32-Bit, Class D
Routing
Protocol-Independent
Protocol-Independent
Forwarding
PIM-DM, PIM-SM:
ASM, SSM, BiDir
Group Management
IBMPv1, v2, v3
MLDv1, v2
Domain Control
Boundary/Border
Scope Identifier
Interdomain Source
Discovery
BRKIPM-1261
Cisco Public
101
FF
Flags Scope
1111 1111
F
8 Bits
Flags
P T Scope
Flags =
8 Bits
Scope =
BRKIPM-1261
Interface-ID
Cisco Public
102
Flags Scope
80
112 Bits
High-Order
32
Low-Order
80 Bits Lost
33-33-xx-xx-xx-xx
48 Bits
BRKIPM-1261
Cisco Public
103
64
32
Plen
Network-Prefix
Group-ID
Example
Content providers unicast prefix
1234:5678:9::/48
Multicast address
FF3x:0030:1234:5678:0009::0001
BRKIPM-1261
Cisco Public
104
BRKIPM-1261
Cisco Public
105
BRKIPM-1261
Cisco Public
106
BRKIPM-1261
Cisco Public
107
Embedded RP AddressingRFC3956
8
FF
64
32
Plen
Network-Prefix
Group-ID
Network-Prefix::RPadr = RP address
For each unicast prefix you own, you now also own:
16 RPs for each of the 16 multicast scopes (256 total) with 2^32 multicast
groups assigned to each RP (2^40 total)
BRKIPM-1261
Cisco Public
108
Embedded RP AddressingExample
Multicast Address with Embedded RP Address
8
FF
64
32
Plen
Network-Prefix
Group-ID
FF76:0130:1234:5678:9abc::4321
1234:5678:9abc::1
Resulting RP Address
BRKIPM-1261
Cisco Public
109
RFC 2710
RFC 3810
MLD snooping
draft-ietf-magma-snoop-12.txt
BRKIPM-1261
Cisco Public
110
Internet IP Multicast?
BRKIPM-1261
Cisco Public
111
Internet IP Multicast
We can build multicast distribution trees.
PIM
BRKIPM-1261
Cisco Public
112
Internet IP Multicast
What worked?
What didnt work?
Whats being done to fix it?
BRKIPM-1261
Cisco Public
113
What Worked?
As Long as IP Multicast Is
Enabled on Every Router
from the Source to the
Receivers, the Benefits of
IP Multicast Are Realized
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Mcast Join
Cisco Public
114
What Worked?
The Benefits Being an
Unlimited Number of Receivers
Can Be Served with a Single
Stream of Content at No
Additional Costs
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Mcast Join
Cisco Public
115
What Didnt?
Even Though the Content
Owner and Core Provider Are
IP Multicast-Enabled, the
Majority of Edge Networks
Are Still Unicast-Only
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
..tick
..tick
..tick
Timeout
Mcast Join
Cisco Public
116
What Didnt?
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
To Gain Maximum
Audience Size,
Unicast Fallback
Streams (i.e., Servers)
Are Deployed
Mcast Traffic
Session Description
File Defines Mcast
Timeout, and the
Backup Unicast
Transport
BRKIPM-1261
Mcast Join
Ucast Request
Cisco Public
117
What Didnt?
More Receivers Consumes
More Resources and Costs the
Content Owner More Money
Content Owner
Mcast-Enabled ISP
$$$$
Unicast-Only Network
$$$$
Mcast Traffic
Mcast Join
Ucast Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
118
Whats Wrong?
Without an overlay mechanism, Multicast in the Internet is an
all or nothing solution
Each receiver must be on an IP multicast-enabled path
Many core networks have IP multicast-enabled, but few
edge networks accept multicast transit traffic
BRKIPM-1261
Cisco Public
119
BRKIPM-1261
Cisco Public
120
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Once the Multicast
Join Times Out,
an AMT Join Is
Sent from the
Host Gateway Toward
the Global AMT
Mcast-Enabled Local Provider
Anycast Address
BRKIPM-1261
Cisco Public
Mcast Join
AMT Request
121
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Cisco Public
122
Content Owner
Mcast Traffic
Mcast Join
AMT Request
Cisco Public
123
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
124
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
125
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Enables Multicast
Content to a Large
(Global) Audience
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
126
Mcast-Enabled ISP
Content Owner
Unicast-Only Network
Enables Multicast
Content to a Large
(Global) Audience
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
127
Mcast-Enabled ISP
Content Owner
Enables Multicast
Content to a Large
(Global) Audience
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
128
BRKIPM-1261
Cisco Public
129
Q&A
BRKIPM-1261
Cisco Public
130
BRKIPM-1261
Cisco Public
131
More Information
White papers
Web and mailers
Cisco Press
RTFB
CCO multicast
http://www.cisco.com/go/ipmulticast
Cisco Public
132
Recommended Reading
Continue your Cisco Live learning
experience with further reading from
Cisco Press
Check the Recommended Reading
flyer for suggested books
Cisco Public
133
BRKIPM-1261
Cisco Public
134
BRKIPM-1261
Cisco Public
135
BRKIPM-1261
Cisco Public
136
Thank you.
BRKIPM-1261
Cisco Public
137