Intro To Multicast
Intro To Multicast
BRKIPM-1281
BRKIPM-1261
Cisco Public
Session Goal
To provide you with an understanding of the
concepts, mechanics and protocols used to
build IP multicast networks
To enable you to ask the right questions, and
make the correct architectural decisions in
deploying and maintaining an IP Mulitcast
enabled network.
BRKIPM-1261
Cisco Public
Agenda
Why Multicast?
Multicast at Layer 2
Interdomain IP Multicast
IPv6 Multicast
BRKIPM-1261
Cisco Public
Why Multicast?
Router
Multicast
Server
Router
BRKIPM-1261
Cisco Public
Cisco Public
BRKIPM-1261
Cisco Public
Cisco Public
BRKIPM-1261
Cisco Public
10
BRKIPM-1261
Cisco Public
11
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 Components
Cisco End-to-End Architecture
ISP A
ISP B
MSDP
RP
Multicast Source
X
Multicast Source
Y
DR
IGMP Snooping
PIM Snooping
ISP B
RP
ISP A
MBGP
DR
IGMP
PIM-SM: ASM,
SSM, BiDir
MVPN
AMT
DR
Campus Multicast
Interdomain Multicast
15
Multicast Fundamentals
src addr:
10.1.1.1
src addr:
10.1.1.1
BRKIPM-1261
A unique packet
addressed to each
destination.
13.1.1.1
Cisco Public
17
src addr:
10.1.1.1
src addr:
10.1.1.1
BRKIPM-1261
A unique packet
addressed to each
destination.
13.1.1.1
How do we
address one
packet to
different
destinations?
..replicated at
each node along
the tree.
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
18
Multicast Addressing
Addressing
Multicast
IPv4 Header
Version
IHL
Type of Service
Identification
Time to Live
Total Length
Flags
Protocol
Fragment Offset
Header Checksum
Source
Source
Source Always
Addressthe unique unicast origin address of
1.0.0.0 - 223.255.255.255 (Class A, B, C)
the packet same as unicast
Destination
Destination
Destination Address
224.0.0.0 - 239.255.255.255 (Class D) Multicast Group Address
Options
BRKIPM-1261
Range
Padding
Cisco Public
19
Multicast Addressing
Class D Group addresses 224/4
A separate route table is maintained for active multicast trees in the network.
Multicast state entries are initiated by receivers signaling their request to join a
group.
Sources do not need to join, they just send.
Multicast routing protocols build and maintain the trees, hop-by-hop, based on
receiver membership and source reach ability.
Source reach ability is derived from the unicast route table.
Multicast relies on a dependable unicast infrastructure.
BRKIPM-1261
Cisco Public
20
Multicast state
Class D Group addresses 224/4
Multicast route entries are in (S,G) form.
Cisco Public
21
Multicast Addressing224/4
Reserved link-local addresses
224.0.0.0224.0.0.255
Transmitted with TTL = 1
Examples
224.0.0.1
224.0.0.2
224.0.0.5
OSPF routers
224.0.0.13
PIMv2 routers
224.0.0.22
IGMPv3
224.0.1.1
224.0.1.32
Mtrace routers
224.0.1.78
Tibco Multicast1
BRKIPM-1261
Cisco Public
22
Multicast Addressing224/4
Administratively scoped addresses
239.0.0.0239.255.255.255
Private address space
Similar to RFC1918 unicast addresses
Not used for global Internet trafficscoped traffic
Cisco Public
23
Multicast Addressing
IP Multicast MAC Address Mapping
1110
5 Bits
Lost
32 Bits
28 Bits
239.255.0.1
01-00-5e-7f-00-01
25 Bits
23 Bits
48 Bits
BRKIPM-1261
Cisco Public
24
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
25
BRKIPM-1261
Cisco Public
26
Host-Router Signaling:
Internet Group Management Protocol (IGMP)
How hosts tell routers about group membership
Routers solicit group membership from directly connected hosts
RFC 1112 specifies version 1 of IGMP
Supported on Windows 95
BRKIPM-1261
Cisco Public
27
H1
224.1.1.1
H3
Report
BRKIPM-1261
Cisco Public
28
224.1.1.1
H2
H1
Suppressed
Report
224.1.1.1
H3
Suppressed
Query
BRKIPM-1261
Cisco Public
29
H2
#1
Leave to
224.0.0.2
Group Specific
Query to 224.1.1.1
#2
H3
Cisco Public
30
BRKIPM-1261
Cisco Public
31
No report suppression
All hosts on wire respond to queries
Hosts complete IGMP state sent in single response
BRKIPM-1261
Cisco Public
32
IGMPv3Joining a Group
1.1.1.10
1.1.1.11
H2
H1
v3 Report
(224.0.0.22)
H3
Group: 224.1.1.1
Include: (empty)
BRKIPM-1261
1.1.1.12
1.1.1.1
rtr-a
Cisco Public
33
1.1.1.11
H2
H1
v3 Report
(224.0.0.22)
H3
Group: 232.1.1.1
Include: 10.0.0.1
BRKIPM-1261
1.1.1.12
1.1.1.1
rtr-a
Cisco Public
34
IGMPv3Maintaining State
1.1.1.10
1.1.1.11
H1
1.1.1.12
H3
H2
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
35
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
36
BRKIPM-1261
Cisco Public
37
BRKIPM-1261
Cisco Public
38
BRKIPM-1261
Cisco Public
39
10.1.1.1
A
Join
B
D
Join
E1
E
E2
BRKIPM-1261
R1
Cisco Public
40
SRC
10.1.1.1
A
Join
C
Join
B
D
E0
R2
E1
E
E2
R1
BRKIPM-1261
Cisco Public
41
SRC
10.1.1.1
Tie-breaker
B
D
1.1.1.1
Join
E0
E
1.1.2.1
E1
F
E2
R1
Cisco Public
42
Notation: (S, G)
S = Source
G = Group
Source 2
A
BRKIPM-1261
Receiver 1
Receiver 2
Cisco Public
43
Notation: (S2, G)
S = Source
G = Group
Source 2
A
BRKIPM-1261
Receiver 1
Receiver 2
Cisco Public
44
BRKIPM-1261
D (RP)
Receiver 1
Receiver 2
(RP)
Cisco Public
45
Notation: (*, G)
* = All Sources
G = Group
Source 2
BRKIPM-1261
D (RP)
Receiver 1
Receiver 2
(RP)
Cisco Public
46
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
47
Shared trees
PIM control messages are sent toward RP
BRKIPM-1261
Cisco Public
48
SSM
Source Specific Multicast, no RP, SPT only
BiDir
Bidirectional PIM, no SPT, shared tree only
BRKIPM-1261
Cisco Public
50
RP
(*, G) Join
Shared Tree
Receiver
BRKIPM-1261
Cisco Public
51
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Register
(S, G) Join
BRKIPM-1261
(unicast)
Receiver
Cisco Public
52
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Register
(S, G) Register-Stop
BRKIPM-1261
(unicast)
(unicast)
Receiver
Cisco Public
53
RP
Source
Traffic Flow
Shared Tree
Source Tree
BRKIPM-1261
Cisco Public
54
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Join
BRKIPM-1261
Receiver
Cisco Public
55
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G)RP-bit Prune
BRKIPM-1261
Receiver
Cisco Public
56
RP
Source
Traffic Flow
Shared Tree
Source Tree
Receiver
BRKIPM-1261
Cisco Public
57
RP
Source
Traffic Flow
Shared Tree
Source Tree
(S, G) Prune
BRKIPM-1261
Cisco Public
58
RP
Source
Traffic Flow
Shared Tree
Source Tree
Receiver
BRKIPM-1261
Cisco Public
59
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
(sounds clever but it actually switches for all sources by default)
BRKIPM-1261
Cisco Public
61
Cisco Public
62
RP
Source
Source Tree
Receiver
BRKIPM-1261
Cisco Public
63
RP
Source
Shared Tree
Traffic Flow
Receiver
BRKIPM-1261
Cisco Public
64
SSMEvaluation
Ideal for applications with one source sending to many receivers
More secure
No Bogus source traffic
Cant consume network bandwidth
Not received by host application
BRKIPM-1261
Cisco Public
65
BRKIPM-1261
Cisco Public
66
Bidirectional PIMOverview
Sender/
Receiver
RP
Receiver
Shared Tree
Receiver
BRKIPM-1261
Cisco Public
67
Bidirectional PIMOverview
Sender/
Receiver
RP
Receiver
Cisco Public
68
Bidir PIMEvaluation
Ideal for many to many applications
Drastically reduces network mroute state
Eliminates all (S,G) state in the network
SPTs between sources to RP eliminated
Source traffic flows both up and down shared tree
BRKIPM-1261
Cisco Public
69
RP Choices
RP redundancy requirements
Eliminate any single point of failure
BRKIPM-1261
Cisco Public
71
AutoRP
Originally a Cisco solution
Facilitated PIM-SM early transition
BSR
draft-ietf-pim-sm-bsr
BRKIPM-1261
Cisco Public
72
Static RPs
Hard-configured RP address
When used, must be configured on every router
Command
ip pim rp-address <address> [group-list <acl>] [override]
Optional group list specifies group range
Default: range = 224.0.0.0/4 (includes auto-RP groups!)
BRKIPM-1261
Cisco Public
73
C-RP
1.1.1.1
Announce
MA
B
Announce
Announce
Announce
Announce
MA
D
Announce
Announce
Announce
C-RP
2.2.2.2
Cisco Public
74
MA
A
C-RP
1.1.1.1
MA
B
D
C-RP
2.2.2.2
Cisco Public
75
C-BSR
D
C-BSR
C-BSR
C
E
BSR Msgs
Cisco Public
76
BSR
D
C
E
BRKIPM-1261
Cisco Public
77
BSR
D
C-RP
C-RP
BRKIPM-1261
Cisco Public
78
BSR
D
C-RP
BSR Msgs
C-RP
Cisco Public
79
Multicast at Layer 2
PIM
BRKIPM-1261
Multicast M
Cisco Public
81
PIM
IGMP
IGMP
Cisco Public
82
BRKIPM-1261
Cisco Public
83
SummaryFrame Switches
IGMP Snooping
BRKIPM-1261
Cisco Public
84
Interdomain IP Multicast
MBGP Overview
MBGP: Multiprotocol BGP
Cisco Public
86
MBGP Overview
Separate BGP tables maintained
Unicast prefixes for unicast forwarding
AFI = 1, Sub-AFI = 1
Contains unicast prefixes for unicast forwarding
AFI = 1, Sub-AFI = 2
Contains unicast prefixes for RPF checking
BRKIPM-1261
Cisco Public
87
MBGP Overview
MBGP Allows Divergent Paths and Policies
For same IPv4 address two different NLRI with different nexthops
Can therefore support both congruent and incongruent
topologies
BRKIPM-1261
Cisco Public
88
BRKIPM-1261
Cisco Public
90
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
91
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Source Active
Messages
SA
SA
Domain C
Receiver
RP
Domain B
SA
SA
SA
RP
SA
SA
RP
SA Message
192.1.1.1, 224.2.2.2
Source
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
92
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Domain C
Receiver
RP
Domain B
RP
RP
Domain D
RP
Source
BRKIPM-1261
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
93
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Domain C
Receiver
RP
Domain B
RP
RP
Domain D
RP
Source
BRKIPM-1261
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
94
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Domain C
Receiver
RP
Domain B
RP
RP
Domain D
RP
Source
BRKIPM-1261
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
95
MSDP Overview
MSDP Example
Domain E
RP
MSDP Peers
Multicast Traffic
Domain C
Receiver
RP
Domain B
RP
RP
Domain D
RP
Source
BRKIPM-1261
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
96
RP
Multicast Traffic
Domain C
Receiver
Receiver Learns
S and G Out of
Band, i.e.,
Webpage
RP
Domain B
RP
RP
Domain D
Source in 232/8
Source
BRKIPM-1261
RP
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
97
RP
Multicast Traffic
Domain C
Receiver
RP
Domain B
RP
RP
Domain D
Source in 232/8
Source
BRKIPM-1261
RP
Domain A
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
98
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
99
Anycast RPOverview
Src
RP1
BRKIPM-1261
RP2
MSDP
A
10.1.1.1
Rec
Src
SA
Rec
B
10.1.1.1
SA
Rec
Cisco Public
Rec
100
Anycast RPOverview
Src
Src
RP2
A
10.1.1.1
B
10.1.1.1
RP1
Rec
BRKIPM-1261
Rec
Rec
Cisco Public
Rec
101
Internet IP Multicast
We can build multicast distribution trees.
PIM
BRKIPM-1261
Cisco Public
102
Whats Missing?
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
Deering had tunneling in the original solution
Cisco Public
103
BRKIPM-1261
Cisco Public
104
Content Owner
Mcast-Enabled ISP
Unicast-Only Network
Mcast Traffic
Mcast Join
Cisco Public
105
Content Owner
Mcast-Enabled ISP
Unicast-Only Network
Mcast Traffic
Mcast Join
Cisco Public
106
Content Owner
Mcast-Enabled ISP
Mcast Traffic
Once the Multicast Join
Times Out,
an AMT Join Is
Sent from the
Host Gateway Toward
the Global AMT Anycast
Address
BRKIPM-1261
Mcast Join
AMT Request
Mcast-Enabled Local Provider
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public
107
Content Owner
Mcast-Enabled ISP
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
108
Mcast-Enabled ISP
(S,G) Is Learned from the AMT Join
Message, Then (S,G) PIM Join Is Sent
Toward the Source
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
109
Content Owner
Mcast-Enabled ISP
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
110
Content Owner
Mcast-Enabled ISP
Unicast-Only Network
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
111
Content Owner
Mcast-Enabled ISP
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
112
Content Owner
Mcast-Enabled ISP
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
113
Content Owner
Mcast-Enabled ISP
Enables Multicast
Content to a Large
(Global) Audience
Mcast Traffic
Mcast Join
AMT Request
Ucast Stream
Mcast-Enabled Local Provider
BRKIPM-1261
Cisco Public
114
IPv6 Multicast
IPv4 Solution
IPv6 Solution
Address Range
32-Bit, Class D
Protocol-Independent
Routing
Protocol-Independent
Forwarding
PIM-DM, PIM-SM:
ASM, SSM, BiDir
Group Management
IBMPv1, v2, v3
MLDv1, v2
Domain Control
Boundary/Border
Scope Identifier
BRKIPM-1261
Cisco Public
116
4
4
Flags Scope
1111 1111
F
8 Bits
Flags
P T Scope
Flags =
8 Bits
Scope =
BRKIPM-1261
Interface-ID
2=
4=
Cisco Public
117
4
4
Flags Scope
80
High-Order
32
Low-Order
80 Bits Lost
33-33-xx-xx-xx-xx
48 Bits
BRKIPM-1261
Cisco Public
118
4
4
Flags Scope
8
Rsvd
8
Plen
64
Network-Prefix
32
Group-ID
Example
Content providers unicast prefix
1234:5678:9::/48
Multicast address
FF3x:0030:1234:5678:0009::0001
BRKIPM-1261
Cisco Public
119
BRKIPM-1261
Cisco Public
120
BRKIPM-1261
Cisco Public
121
BRKIPM-1261
Cisco Public
122
Embedded RP AddressingRFC3956
8
FF
4
4
4
4
Flags Scope Rsvd RPadr
8
Plen
64
Network-Prefix
32
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
123
Embedded RP AddressingExample
Multicast Address with Embedded RP Address
8
FF
4
4
4
4
Flags Scope Rsvd RPadr
8
Plen
64
Network-Prefix
32
Group-ID
FF76:0130:1234:5678:9abc::4321
1234:5678:9abc::1
Resulting RP Address
BRKIPM-1261
Cisco Public
124
MLD snooping
draft-ietf-magma-snoop-12.txt
BRKIPM-1261
Cisco Public
125
PIM protocols
RP choices
Multicast at Layer 2
Interdomain IP multicast
IPv6 Multicast bits
BRKIPM-1261
Cisco Public
126
Q&A
BRKIPM-1261
Cisco Public
128
More Information
White papers
Web and mailers
Cisco Press
RTFB
CCO multicast
http://www.cisco.com/go/ipmulticast
Cisco Public
129
Recommended Reading
Continue your Cisco Live learning
experience with further reading
from Cisco Press
Check the Recommended
Reading flyer for suggested
books
SM
Cisco Public
130
Cisco Public
131
Final Thoughts
Get hands-on experience with the Walk-in Labs located in World of
Solutions, booth 1042
Come see demos of many key solutions and products in the main Cisco
booth 2924
Visit www.ciscoLive365.com after the event for updated PDFs, ondemand session videos, networking, and more!
Follow Cisco Live! using social media:
Facebook: https://www.facebook.com/ciscoliveus
Twitter: https://twitter.com/#!/CiscoLive
LinkedIn Group: http://linkd.in/CiscoLI
BRKIPM-1261
Cisco Public
132
BRKIPM-1261
2012 Cisco and/or its affiliates. All rights reserved.
Cisco Public