Beruflich Dokumente
Kultur Dokumente
Introduction to IP
Multicast
Beau Williamson
CCIE R/S #1346 Emeritus
CiscoLive Distinguished Speaker
Twitter: @Mr_Multicast
BRKIPM-1261
Cisco Spark
Questions?
Use Cisco Spark to communicate
with the speaker after the session
How
1. Find this session in the Cisco Live Mobile App
2. Click “Join the Discussion”
3. Install Spark or go directly to the space
4. Enter messages/questions in the space
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Other IP Multicast Sessions @ CiscoLive
• BRKIPM-2264 – Troubleshooting Multicast
• Wednesday, Jun 28, 8:00 a.m. - 10:00 a.m. | Level 2, Mandalay Bay A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Session Goals
• 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 Multicast
enabled network.
• To prove that Multicast doesn’t
have to be:
• Hard
• Scary
BRKIPM-1261
Agenda
• Multicast Fundamentals Geekometer
BRKIPM-1261
Multicast Fundamentals
BRKIPM-1261 7
Why Multicast
Unicast vs. Multicast Scaling
Unicast
Server
Router
Number of Streams
Multicast
Server
Router
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Multicast Uses
• Any applications with multiple receivers • Server/Website replication
• One-to-many or many-to-many
• Reducing network/resource
• Live video distribution overhead
• More than multiple point-to-point flows
• Collaborative groupware
• Resource discovery
• Periodic data delivery—“push” technology
• Stock quotes, sports scores, magazines, • Distributed interactive simulation
newspapers, adverts (DIS)
• War games
• Inter Data Center L2 Underlay
• Virtual reality
• VXLAN, etc. for BUM
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
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 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
Multicast Fundamentals
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
Unicast vs. Multicast Addressing
12.1.1.1
11.1.1.1
src addr:
10.1.1.1
A unique packet
addressed to each 13.1.1.1
destination IP Address.
Multicast
Group
src addr: Address
10.1.1.1 e.g. 224.1.1.1
Same packet
addressed to “Group”
destination address...
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Unicast vs. Multicast Addressing
12.1.1.1
11.1.1.1
src addr:
10.1.1.1
A unique packet
addressed to each 13.1.1.1
destination IP Address.
Multicast
Group
src addr: Address
10.1.1.1 e.g. 224.1.1.1
..replicated at each
node along the
tree.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
Multicast
MulticastAddressing
Addressing
IPv4 Header
Version IHL Type of Service Total Length
Source
Source Source Always
Addressthe unique unicast origin address of
1.0.0.0 - 232.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 Range
Options Padding
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
Multicast Addressing
Class D Group addresses – 224/4
• Multicast Group addresses are NOT in the unicast route table.
• A separate multicast route table is maintained for active multicast trees.
• Multicast trees are initiated by receivers signaling their request to join a group.
• Sources do not need to join, they just send!
• Multicast routing protocols build the trees:
• Hop-by-hop, from the receivers (tree leaves) to the source (tree root).
• Tree path follows the unicast route table backward to the source using source address.
• i.e. Multicast relies on a dependable unicast infrastructure!
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
Multicast Addressing—224/4
• Reserved link-local addresses
• 224.0.0.0–224.0.0.255
• Transmitted with TTL = 1
• Examples
• 224.0.0.1 All systems on this subnet
• 224.0.0.2 All routers on this subnet
• 224.0.0.5 OSPF routers
• 224.0.0.13 PIMv2 routers
• 224.0.0.22 IGMPv3
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Multicast Addressing—224/4
• Administratively scoped addresses
• 239.0.0.0–239.255.255.255
• Private address space
• Similar to RFC1918 unicast addresses
• Not used for global Internet traffic—scoped traffic
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
Multicast Addressing
IP Multicast MAC Address Mapping
32 Bits
1110 28 Bits
239.255.0.1
5 Bits
Lost
01-00-5e-7f-00-01
25 Bits 23 Bits
48 Bits
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
Multicast Addressing
IP Multicast MAC Address Mapping
224.1.1.1
224.129.1.1
225.1.1.1
225.129.1.1 1–Multicast MAC Address
.
.
.
238.1.1.1 0x0100.5E01.0101
238.129.1.1
239.1.1.1
239.129.1.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
How are Multicast Flows Identified
• Every Multicast Flow can be identified by two components:
• Source IP Address
• The address of the Sender
Multicast Flow from Source 2.2.2.2 to
• Multicast Group Address Group 232.1.1.1
• 224/4 (Class D) IP Address
• Example
(2.2.2.2, 232.1.1.1), 3w1d/00:02:40, flags: s
Incoming interface: Ethernet 0/0, RPF nbr 207.109.83.33
Outgoing interface list:
Ethernet 1/0, Forward/Sparse, 3w1d/00:02:40
Ethernet 2/0, Forward/Sparse, 2w0d/00:02:33
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Host-Router Signaling: IGMP
• IGMP Version 3 is current version
• RFC3376 Oct 2002 (Over 10 years old!)
• Uses 224.0.0.22 (IGMPv3 routers) Link-Local Multicast Address
• All IGMP hosts send Membership Reports to this address
• All IGMP routers listen to this address
• Hosts do not listen or respond to this address (unlike previous IGMP versions)
• Membership Reports
• Sent by Hosts
• Contain list of Multicast (Source, Group) pairs to Include/Exclude (Join/Leave)
• Membership Queries
• Sent by Routers to refresh/maintain list of Multicast traffic to deliver.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
IGMPv3 – Membership Report Packet Format
7 15 31
Type = 0x22 Reserved Checksum 7 15 31
Record Type Aux Data Len # of Sources (N)
Reserved # of Group Records (M)
Multicast Group Address
Group Record [1]
Source Address [1]
Source Address [2]
Group Record [2] .
.
.
. Source Address [N]
.
Auxiliary Data
Group Record [M]
Record Type
Include, Exclude, Chg-to-Include,
# of Group Records (M) Chg-to-Exclude, Allow New Srcs,
Number of Group Records in Report Block Old Srcs
Group Records 1 - M
Group address plus list of zero or # of Sources (N)
more sources to Include/Exclude Number of Sources in Record
(See Group Record format) Source Address 1- N
Address of Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
IGMPv3 – Query Packet Format
Type = 0x11
IGMP Query 7 15 31
Group Address:
Multicast Group Address S QRV QQIC Number of Sources (N)
(0.0.0.0 for General Queries)
S Flag Source Address [1]
Suppresses processing by routers
QRV (Querier Robustness Value) Source Address [2]
Affects timers and # of retries
QQIC (Querier’s Query Interval) .
.
Same format as Max. Resp. Time
.
Number of Sources (N)
(Non-zero for Group-and-Source Query) Source Address [N]
Source Address
Address of Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 23
IGMPv3 – Joining Group “G” Source “S”
192.168.102.10 192.168.102.11 192.168.102.12
Interface: GigabitEthernet3/3
Group: 232.1.1.1
Flags: SSM
Uptime: 00:01:14
Group mode: INCLUDE
Member
Last reporter: 192.168.102.11
Group source list: (C - Cisco Src Report, U - URD, R - Remote, S - Static, Hn Group: 232.1.1.1
Source: 2.2.2.2
V - Virtual, M - SSM Mapping, L - Local,
Ac - Channel accounted towards access control limit) (Destination IP Address)
Source Address Uptime v3 Exp CSR Exp Fwd Flags
2.2.2.2 00:01:14 00:02:08 stopped Yes R
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
IGMPv3 – Maintaining State
192.168.102.10 192.168.102.11 192.168.102.12
(224.0.0.1)
Query
Group: 0.0.0.0
Source: {}
• Router sends periodic General Queries to All Hosts
• General Query: Group=0, #Srcs=0
Member
• All IGMP members respond Hn Group: 232.1.1.1
Source: 2.2.2.2
• Reports can contain multiple Group State records (Destination IP Address)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
IGMPv3 – Leaving Group “G” Source “S”
192.168.102.10 192.168.102.11 192.168.102.12
2
H1 1 H2 H3
Type: Block Old (6)
Group: 232.1.1.1
Source: {2.2.2.2}
Report
(224.0.0.22)
(232.1.1.1)
Query 3
Group: 232.1.1.1
Source: {2.2.2.2}
1. H2 leaves Group-Source
2. Sends “Block Old” Membership Report
3. Router sends Group-Source Query Member
Hn Group: 232.1.1.1
• Group-Source Query: Group=G, #Srcs=N Source: 2.2.2.2
(Destination IP Address)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 26
IGMPv3 – Leaving Group “G” Source “S”
192.168.102.10 192.168.102.11 192.168.102.12
H1 H2 H3
Type: Include
Group: 232.1.1.1
Source: {2.2.2.2} 4
Report
(224.0.0.22)
5
1. H2 leaves Group-Source
2. Sends “Block Old” Membership Report
3. Router sends Group-Source Query
4. A remaining member host sends report Hn
Member
Group: 232.1.1.1
Source: 2.2.2.2
5. Group-Source flow remains active
(Destination IP Address)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
IGMPv3 – Leaving Group “G” Source “S”
192.168.102.10 192.168.102.11 192.168.102.12
(232.1.1.1)
Query 8
Group: 232.1.1.1
Source: {2.2.2.2}
6. H3 leaves Group-Source
7. Sends “Block Old” Membership Report
8. Router sends Group-Source Query Member
Hn Group: 232.1.1.1
Source: 2.2.2.2
(Destination IP Address)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
IGMPv3 – Leaving Group “G” Source “S”
192.168.102.10 192.168.102.11 192.168.102.12
H1 H2 H3
6. H3 leaves Group-Source
7. Sends Remove Membership Report
8. Router sends Group-Source specific query Member
Hn Group: 232.1.1.1
9. State times out. Group-Source flow pruned. Source: 2.2.2.2
(Destination IP Address)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 29
Unicast vs. Multicast Routing/Forwarding
Unicast Routing/Forwarding
• Destination IP address directly indicates where to forward packet
• Unicast Routing protocols build a table of destination/interface/next-hop triples
• Unicast Forwarding is hop-by-hop simply based on these entries
• Unicast routing table determines interface and next-hop router to forward packet
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 30
Unicast vs. Multicast Routing/Forwarding
Multicast Routing & Forwarding
• Destination Group address doesn’t directly indicate where to forward packet.
• Forwarding State must be created to build trees to describe forwarding path.
• Multicast Routing is Backwards from Unicast Routing
• Multicast Routing builds a tree backwards from the receivers to the source.
• Concerned with “Where the packet will come from?”
• More specifically, “What’s the route back to the Source?”
• Trees are built via connection requests (Joins) “sent” toward the source.
• Joins follow the unicast routing table backwards toward the source.
• Joins create Multicast tree/forwarding state in the routers along the tree.
• Trees are rebuilt dynamically in case of network topology changes.
• Only when a tree is completely built from receiver backwards to the source can source
traffic flow down the tree to the receivers.
• Say that over and over to yourself when working with Multicast!
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 31
Unicast vs. Multicast Routing/Forwarding
Multicast Routing & Forwarding
• All of this can easily lead to “thinking with your Unicast Lizard Brain!”
• If you ever get confused by Multicast, just remember to . . .
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
Source-Specific Multicast (SSM)
BRKIPM-1261 33
Source Specific Multicast (SSM) Concepts
• Assumes one-to-many model
• Most Internet multicast fits this model
• IP/TV also fits this model
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
Multicast Tree Building
1. Multicast packet’s source address is checked against the unicast routing table
2. Determines interface & next-hop multicast router in the direction of the source
• This is where the Joins are to be sent
3. This interface becomes the “Incoming” interface
• Often referred to as the “RPF” (Reverse Path Forwarding) interface
• A router forwards a multicast datagram only if received on the Incoming/RPF interface
• A bit of History
• The term “RPF” is actually a left-over from early Dense mode Multicast days
• Multicast traffic was flooded everywhere (i.e. no explicit Join signaling to build trees)
• Traffic was only accepted on the “RPF” interface to avoid loops
• We still tend to use the term to indicate the calculation of the Incoming interface.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
Multicast Routing & Forwarding
Traffic to
232.1.1.1
Source
2.2.2.2
Receiver
Multicast Traffic
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
Multicast Routing & Forwarding
Traffic to
232.1.1.1
Source
2.2.2.2
IGMP “Join”
(2.2.2.2, 232.1.1.1)
Receiver
Forwarding State
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 37
Multicast Routing & Forwarding
Traffic to
232.1.1.1
Source
2.2.2.2
PIM Join
(2.2.2.2, 232.1.1.1)
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 38
Multicast Routing & Forwarding
Traffic to
232.1.1.1
PIM Join
(2.2.2.2, 232.1.1.1)
Source
2.2.2.2
Mroute Entry
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 39
Multicast Routing & Forwarding
Traffic to
232.1.1.1
Source
2.2.2.2
Mroute Entry
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 40
Multicast Routing & Forwarding
Traffic to
232.1.1.1
IGMP “Join”
(2.2.2.2, 232.1.1.1)
Source Receiver
2.2.2.2
Mroute Entry
Mroute Entry
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
Multicast Routing & Forwarding
Traffic to
232.1.1.1
PIM Join
(2.2.2.2, 232.1.1.1)
Source Receiver
2.2.2.2
Mroute Entry
Mroute Entry
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Multicast Routing & Forwarding
Traffic to
232.1.1.1
Source Receiver
2.2.2.2
Mroute Entry
Mroute Entry
Receiver
Forwarding State Mroute Entry
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
Multicast Routing & Forwarding
Mroute Entry
Source Receiver
2.2.2.2
Mroute Entry
Mroute Entry
Receiver
Forwarding State
Multicast Traffic
Mroute Entry
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Multicast Routing & Forwarding
Mroute Entry
Source Receiver
2.2.2.2
Receiver
Forwarding State
Multicast Traffic
This type of Multicast has a special name: Source Specific Multicast (SSM)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
Multicast Tree Building
RPF Calculation
• Based on source address 10.1.1.1
SRC
Join D
E0 E1
E
E2
Unicast Route Table
Network Interface R1
10.1.0.0/24 E0
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 46
Multicast Tree Building
RPF Calculation
• Based on source address 10.1.1.1
SRC
E0 E1
E
E2
R1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 47
Multicast Tree Building
RPF Calculation
• What if we have equal-cost paths? 10.1.1.1
SRC
• We can’t use both
• Tie-breaker A
D E
1.1.1.1 Join 1.1.2.1
E0 E1
F
Unicast Route Table E2
Network Intfc Nxt-Hop
10.1.0.0/24 E0 1.1.1.1 R1
10.1.0.0/24 E1 1.1.2.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 48
Multicast State
Multicast route entries are in (S,G) form.
rtr-a#show ip mroute 232.1.1.1
(2.2.2.2, 232.1.1.1), 3w1d/00:02:40, flags: s
Incoming interface: Ethernet 0/0, RPF nbr 207.109.83.33
Outgoing interface list:
Ethernet 1/0, Forward/Sparse, 3w1d/00:02:40
Ethernet 2/0, Forward/Sparse, 2w0d/00:02:33
Incoming interface points upstream
toward the root of the tree (i.e. Source)
OIL entries are refreshed by downstream Outgoing interface list (OIL) is where receivers
receivers roughly every 3 minutes or the have joined downstream and where packets
entry times out. [i.e. Soft State] will be replicated and forwarded downstream.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 49
Multicast State
ANSWER:
The best route to the Source IP Address
is looked up in the route table and the RPF
Neighbor is the next upstream PIM neighbor.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 51
Multicast State
ANSWER:
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 52
Basic SSM only Multicast Configuration
Assumes only 1:Many Multicast
• Enable Multicast Routing on every router
ip multicast routing
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 53
SSM Mapping – DNS Example
IGMPv2 join
Set Top
Box (STB)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 54
Multicast Routing & Forwarding
• Key Point
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 55
Multicast Fundamentals
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 56
Multicast Fundamentals
See there . . .
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 57
Multicast Fundamentals
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 58
Bidirectional Multicast
i.e. Bidir PIM
BRKIPM-1261 59
Bidirectional (BiDir) PIM Concepts
Idea:
• Use a common “Shared” Tree to connect all Sources and Receivers.
• Root this “Shared” Tree at a point in the network called the Rendezvous Point
(RP)
• Traffic flows up the tree from Sources to the RP and then down the tree to
Receivers
• Data traveling from Source toward RP is moving UPSTREAM
• Data traveling from RP toward Receivers is moving DOWNSTREAM
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 60
Bidirectional (BiDir) PIM Concepts
Implementation Details:
• Designated Forwarders (DF)
• One DF per link
• Router with best path to the RP is elected DF
• Election mechanism insures all routers on link agree on who is DF
• Prevents route loops from forming
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 61
How do hosts Join a Shared Tree
using IGMPv3?
BRKIPM-1261 62
IGMPv3 – Joining a Shared Tree for All Sources
192.168.102.10 192.168.102.11 192.168.102.12
Interface: GigabitEthernet3/3
Group: 239.1.2.21
Flags:
Uptime: 00:00:22
Group mode: EXCLUDE (Expires: 00:02:49)
Last reporter: 192.168.102.11
Source list is empty
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 63
Bidir Forwarding/Tree Building
RP
E0 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D IGMP (*,G)
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
Join
Receiver 1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 64
Bidir Forwarding/Tree Building
RP
E0 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
E0 E0
E F PIM (*,G)
E1 (DF) E1 (DF) Join
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
Arriving Traffic from Source causes Router “A” to create (*, G) State
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 68
Bidir Forwarding/Tree Building
RP
E0 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 69
Bidir Forwarding/Tree Building
RP
E0 (DF)
E0 E0
Bidir State in RP
E (*, 224.1.1.1),F 00:32:20/00:02:59, RP 172.16.21.1, flags: B
E1 (DF) E1 (DF)
Bidir-Upstream: Null, RPF nbr 0.0.0.0
Outgoing interface list:
E0 E0 E0
Ethernet0, E0
Forward/Sparse-Dense, 00:00:04/00:02:55
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
Source Receiver 1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 70
Bidir Forwarding/Tree Building
RP
E0 (DF)
E0 E0
E F
E1 (DF) E1 (DF)
E0 E0 E0 E0
A B C D
E1 (DF) E1 (DF) E1 (DF) E1 (DF)
Source Receiver 1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 72
Bidir RP Redundancy using Phantom RP
Static route config option
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 73
What Makes Multicast
Complicated?
BRKIPM-1261 74
Biggest Multicast Complicating Factor
Network-Based Source Discovery
• Lazy One-to-Many Application Developers
• “Let’s just let the Network do all the work to keep track of Sources.”
• Uses old and outdated IGMPv2 methods to join (*,G) only.
• Really!!!! IGMPv3 has been out for 10+ years!!
• Even Apple OS supports IGMPv3
• Suffers from Capt. Midnight stream hijacking
• Complicates Multicast Address management/allocation
• Now you have to worry about what application uses what Multicast Address
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 75
Multicast Complicating Factor
Network-Based Source Discovery
• Requires Any-Source Multicast (ASM)
• Much, much more complicated than SSM or Bidir
• Requires physical Rendezvous Point (RP) router(s) & RP Redundancy methods
• Uses Shortest-Path Trees (ala SSM) to first deliver traffic to RP
• Then uses a common “Shared Tree” rooted at RP to deliver all Multicast traffic
• Routers w/directly connected receivers then learn about new sources via Shared Tree
• Then join Shortest-Path Tree to all the sources.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 76
Any-Source Multicast
i.e. ASM PIM
BRKIPM-1261 77
PIM-SM Shared Tree Join
RP
Receiver
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 78
PIM-SM Sender Registration
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 79
PIM-SM Sender Registration
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 80
PIM-SM Sender Registration
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 81
PIM-SM SPT Switchover
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 82
PIM-SM SPT Switchover
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 83
PIM-SM SPT Switchover
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 84
PIM-SM SPT Switchover
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 85
PIM-SM SPT Switchover
RP
Source
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 86
Basic ASM-Only Multicast Configuration
• Enable Multicast Routing on every router
ip multicast routing
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 87
The default behavior of PIM-SM (ASM) is
that routers with directly connected
members will join the shortest path tree
as soon as they detect a new multicast
source.”
– PIM Frequently Forgotten Fact
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 88
But what about PIM Dense Mode??
“Fuggidaboudit!”
“Fuggidaboudit!”
Source: “Thesource
Click to edit Wiseguys’s Guide to IP Multicast”, ©2005, T. Soprano
BRKIPM-1261 90
MP-BGP Overview
MP-BGP: Multiprotocol BGP
• Originally defined in RFC 2858 (extensions to BGP)
• Can carry different types of routes
• Unicast
• Multicast
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 91
MP-BGP Overview
• Separate BGP tables maintained
• Unicast prefixes for Unicast forwarding
• Unicast prefixes for Multicast RPF calculation
• 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 Multicast RPF calculation
• Populated with BGP Multicast NLRI
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 92
MBGP Overview
MBGP Allows Divergent Paths and Policies
• Same IP address holds dual significance
• Unicast Routing information
• Multicast RPF information
• For same IPv4 address two different NLRI with different next-hops
• Can therefore support both congruent and incongruent topologies
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 93
Inter-domain Multicast – Simple. Use SSM!
Domain E
MP-BGP Peering
Domain C Receiver
Receiver Learns
S and G Out of
Domain B Band, i.e.,
Webpage
Domain D
Source in 232/8
Source “S” Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 94
Inter-domain Multicast – Simple. Use SSM!
Domain E
MP-BGP Peering
Multicast Traffic
Domain C Receiver
Domain D
Source in 232/8
Source “S” Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 95
Inter-domain Bidir? – Not really
Historical Issues:
• Deciding who (what SP/ASN) owns RP was problematic.
• Some SP’s wanted their own RP.
• Other SP’s didn’t want RP’s in their network.
• No consensus was ever reached.
• Inter-domain Bidir never got off the ground.
• Don’t hold your breath looking for Inter-domain Bidir support from Vendors/SPs
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 96
Inter-domain ASM
Issues
• Global Group Address Allocation/Management
• With ASM we have to make sure that we use unique Groups
• Otherwise we start mixing up the Multicast flows
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 97
Inter-domain ASM
Issues
• How do we do Inter-domain Source Discovery?
• Can we all agree on what domain “owns” the RP?
• And for which Global Multicast Group??
• GLOP Addressing?
• Why not have RP’s in each domain “share” Source information?
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 98
MSDP – Multicast Source Discovery Protocol
• RFC 3618 - Multicast Source Discovery Protocol (MSDP)
• PIM ASM only solution
• RPs knows about all Sources in their domain
• Sources cause a “PIM Register” to the RP
• RP tells RPs in other domains of it’s Sources
• Uses “MSDP SA” (Source Active) messages
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 99
MSDP Overview
MSDP Example
Domain E
Receiver
Domain C
RP
Domain B
RP
RP
ASN770 Domain D
GLOP: 233.3.2.0/24
RP
Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 100
MSDP Overview
MSDP Example
Domain E
MSDP Peers RP
Source Active SA SA
Receiver
Messages Domain C
RP
SA
Domain B SA
SA
RP
SA RP
SA ASN770 Domain D
SA Message SA Message
GLOP: 233.3.2.0/24
8.1.1.1, 233.3.2.1 RP 8.1.1.1, 233.3.2.1
Source Domain A
Register
8.1.1.1, 233.3.2.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 101
MSDP Overview
MSDP Example
Domain E
MSDP Peers RP
Receiver
Domain C
RP
Domain B
RP
RP
ASN770 Domain D
GLOP: 233.3.2.0/24
RP
Source Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 102
MSDP Overview
MSDP Example
Domain E
MSDP Peers RP
Multicast Traffic Receiver
Domain C
RP
Domain B
RP
RP
ASN770 Domain D
GLOP: 233.3.2.0/24
RP
Source Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 103
MSDP Overview
MSDP Example
Domain E
MSDP Peers RP
Multicast Traffic Receiver
Domain C
RP
Domain B
RP
RP
ASN770 Domain D
GLOP: 233.3.2.0/24
RP
Source Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 104
MSDP Overview
MSDP Example
Domain E
MSDP Peers RP
Multicast Traffic Receiver
Domain C
RP
Domain B
RP
RP
ASN770 Domain D
GLOP: 233.3.2.0/24
RP
Source Domain A
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 105
ASM Redundant RP Choices
BRKIPM-1261 106
Auto-RP – From 10,000 Feet
Announce
Announce
MA MA
A B
Announce
RP-Announcements Multicast to the
Cisco Announce (224.0.1.39) Group
Announce
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 107
Auto-RP – From 10,000 Feet
MA MA
A B
C D
C-RP C-RP
1.1.1.1 2.2.2.2
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 108
Auto-RP Configuration
Global Configuration Commands
• Candidate RPs
ip pim send-rp-announce <interface> scope <ttl> [group-list <acl>] [interval <rp-announce-interval>] [ bidir ]
• Primary address of <interface> is used as RP-address
• If <interface> goes down, C-RP messages are not sent (use Loopback)
• Mapping Agents
ip pim send-rp-discovery [<interface>] scope <ttl> [interval <interval>]
• Configure <interface> as Loopback Interface.
• Same reason recommended for C-RP
• Auto-RP Listeners
ip pim autorp listener
• Enable on all routers (even MA and C-RPs)
• Enables all routers to listen to (and forward) RP-Announce and RP-Discover messages
• Allowing us to move away from old IOS sparse-dense operation.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 109
BSR – From 10,000 Feet
C-BSR
C-BSR C-BSR
A
D F
B C
BSR Msgs
E
BSR Msgs Flooded Hop-by-Hop
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 110
BSR – From 10,000 Feet
Highest Priority C-BSR
Is Elected as BSR
BSR
A
D F
B C
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 111
BSR – From 10,000 Feet
BSR
A
D F
C-RP B C C-RP
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 112
BSR – From 10,000 Feet
BSR
A
D F
C-RP B C C-RP
BSR Msgs
E
BSR Msgs Containing RP-SET
Flooded Hop-by-Hop
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 113
BSR Configuration
Global Configuration Commands
• Candidate-BSR (C-BSR)
ip pim bsr-candidate <interface> <hash-length> <priority> [accept-rp-candidate <acl>]
• BSR election:
• C-BSR with highest <priority> becomes BSR
• Tie-breaker: Highest-IP-Address
• Preemption by better C-BSR at any time
• Candidate RP (C-RP)
ip pim rp-candidate <interface> [group-list <acl> | bidir | interval <rp-announce-interval> | priority <priority>]
• All parameters as in AutoRP C-RP – except <priority>
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 114
Anycast-RP w/MSDP: Intra-domain use of MSDP
• Anycast-RP w/MSDP
• 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
• First/Last hop Routers Join/Register with closest RP
• Closest RP determined from the unicast routing table
• Because RP is statically defined
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 115
Anycast RP w/MSDP – Overview
Src Src
RP1 RP2
MSDP
X
A SA SA B
10.1.1.1 10.1.1.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 116
Anycast RP w/MSDP – Overview
Src Src
RP1 RP2
X
A B
10.1.1.1 10.1.1.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 117
Anycast RP w/MSDP – Basic Configuration
Src Src
RP1 RP2
MSDP
A (Established via TCP) B
10.1.1.1 10.1.1.1
ip msdp peer 10.10.10.2 connect-source Loopback10 ip msdp peer 10.10.10.1 connect-source Loopback20
ip msdp originator-id Loopback2 ip msdp originator-id Loopback2
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 118
Anycast-RP w/PIM only
Goal: Anycast RP without using another protocol i.e. MSDP
• RFC4610 – Anycast-RP w/PIM only
• Redundant RP technique for ASM which uses PIM Registers 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
• First/Last hop Routers Join/Register with closest RP
• Closest RP determined from the unicast routing table
• Because RP is statically defined
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 119
Anycast RP w/PIM Registers – Overview
Src
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 120
Anycast RP w/PIM Registers – Overview
Src Src
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 121
Anycast RP w/PIM Registers – Overview
Src Src
RP1 RP2
X
A B
10.1.1.1 10.1.1.1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 122
Anycast RP w/PIM Registers – Basic Configuration
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 123
Multicast at Layer 2
BRKIPM-1261 124
L2 Multicast Frame Switching
Problem: Layer 2 Flooding of Multicast Frames
• Typical L2 switches treat multicast traffic as unknown or
broadcast and must “flood” the frame to every port PIM
• Static entries can sometimes be set to specify which ports
should receive which group(s) of multicast traffic
• Dynamic configuration of these entries would cut down on
user administration Multicast M
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 125
IGMP Snooping
• L2 switches now “listen to” and intercept IGMP & PIM packets
• Builds “multicast mac table”. Prevents flooding (like unicast)
• Mrouter Ports: Ports connected to a PIM Router
• Dynamically learned upon hearing IGMP Queries or PIM Hellos PIM
• Forward IGMP joins, leaves & mcast data to this port towards PIM router
Po1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 126
IGMP Snooping
• L2 switches now “listen to” and intercept IGMP & PIM packets
• Builds “multicast mac table”. Prevents flooding (like unicast)
• Mrouter Ports: Ports connected to a PIM Router
• Dynamically learned upon hearing IGMP Queries or PIM Hellos PIM
• Forward IGMP joins, leaves & mcast data to this port towards PIM router
• Member Ports: Ports that have received an IGMP join
• Vlan: Vlan in which the above Member Port belongs
• Multicast Group: Group the member port has joined.
e8/11
Switch# show ip igmp snooping groups
Type: S - Static, D - Dynamic, R - Router port
Vlan Group Address Ver Type Port list Po1
143 225.131.38.2 v2 D Po1
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 127
Multicast over MPLS with mLDP
The 60,000’ View
BRKIPM-1261 128
Multipoint Label Distribution Protocol – mLDP
Why mLDP?
• Customers running MPLS in their network want to run Multicast natively over
MPLS
• MPLS forwarding plane is shared between unicast and multicast
• i.e. unicast MPLS features are applied to multicast
• Separation of data plane and control plane has advantages
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 129
Multipoint Label Distribution Protocol – mLDP
Terminology
• P2MP - Point to Multi-point
• Like a PIM SSM tree
• MP2MP – Multi-Point to Multi-Point
• Like a PIM Bidir tree
• MP LSP – Multi-Point LSP, either P2MP or MP2MP
• Label Mapping
• Like a PIM Join
• Label Withdraw
• Like a PIM Prune
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 130
Multipoint Label Distribution Protocol – mLDP
Why mLDP?
• Simplification compared to PIM
• No shared tree / source tree switchover
• No (S,G,R) prune’s
• No DR election
• No PIM registers
• No Asserts
• No Periodic messaging
• No Auto-RP/BSR
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 131
Multipoint Label Distribution Protocol – mLDP
Extensions to LDP
• mLDP is an extension to the IETF LDP RFC 3036.
• Procedures are documented in IETF RFC 6388
• Joined effort by multiple vendors and customers.
• mLDP reuses LDP protocol packets and neighbor adjacencies.
• mLDP is a client of the LDP infrastructure.
• mLDP allows the creation of P2MP and MP2MP LSPs
• We refer to these as Multipoint LSPs (MP LSPs).
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 132
BIER –
Bit-Indexed Explicit Replication
BRKIPM-1261 133
BIER history
• A team was formed to investigate solutions for multicast in the context of
Segment Routing.
• Encoding a Sourced routed Multicast tree path using MPLS labels is difficult.
• The packet header would get very large, and its very hard to parse such header.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 134
The BIER Epiphany
• Only encode the end-receivers in the packet header.
• Not the intermediate nodes.
• Assign end-receivers a Bit Position from a Bit String.
• The smallest identifier possible.
• Encode the Bit String in the packet header.
• Using some sort of encapsulation.
• Create a Bit Forwarding Table on all BIER nodes to allow multicast packet
forwarding using the Bit String in the packet.
• Derived from the RIB, SPF based.
• We call it, Bit Indexed Explicit Replication (BIER).
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 135
BIER – Basic Idea
A/32
B/32
BIER Domain
D/32 6 5 4 3 2 1
BitString/BFR-ID
C/32
F/32
E/32
1. Assign a unique Bit Position/BFR-ID1 from a BitString to each BFER2 in the domain.
B/32
LSA
6 - A/32
LSA LSA
5 – B/32 BIER Domain 1 – E/32
LSA D/32 6 5 4 3 2 1
LSA LSA
4 – C/32
3 – E/32 2 – D/32
BitString/BFR-ID
C/32
F/32
E/32
1. Assign a unique Bit Position/BFR-ID1 from a BitString to each BFER2 in the domain.
2. BFERs flood their BFR-Id/BFR Prefix to the Domain using the IGP (OSPF, ISIS)
1Bit-Position = BIER Forwarding Router-ID
2BFER = Bit-Forwarding Egress Router
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 137
BIER – Basic Idea
A/32
B/32
BitMask Nbr
0011 A
0100 B
1000 C
D/32
C/32
F/32
E/32
3. Each router in the BIER Domain builds Bit-Mask to BFR Prefix mapping table
F
E
BFR-ID 2
BM Nbr BFR-ID 3 BS:0010
BS:0100
0011 C
B
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 139
Forwarding Packets
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 140
Forwarding Packets
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 141
Forwarding Packets
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 142
Forwarding Packets
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 143
Forwarding Packets
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 144
Failure to reset bits when Forwarding Packets
0111
Duplicate Packets!!
F
E
BFR-ID 2
Nbr BFR-ID 3 BS:0010
BS:0100
0011 C
AND
B
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 145
IPv6 Multicast
BRKIPM-1261 146
IPv4 vs. IPv6 Multicast
Protocol-Independent
Protocol-Independent
Routing All IGPs and BGP4+
All IGPs and GBP4+
with v6 Mcast SAFI
PIM-DM, PIM-SM:
Forwarding PIM-SM: ASM, SSM, BiDir
ASM, SSM, BiDir
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 147
IPv6 Multicast Addresses
per RFC 4291
128 bits
8 4 4
FF Flags Scope Group-ID
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 148
IPv6 Layer 2 Multicast Addressing Mapping
RFC 2464
IPv6 Multicast Address
112 Bits
8 4 4 80 32
FF Flags Scope High-Order Low-Order
80 Bits Lost
• Similar to IPv4: 5 bits are lost
• (28 significant L3 multicast bits are mapped into 23 L2 MAC bits) 33-33-xx-xx-xx-xx
48 Bits
• More than 1 multicast address (in fact 2^80) will map to the
Ethernet MAC Address
same MAC address.
• For example: FF02::1 33-33-00-00-00-01
FF3E::1 33-33-00-00-00-01
• Pick multicast group addresses that give distinct multicast MAC addresses
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 149
Unicast-based Multicast addresses
RFC 3306
8 4 4 8 8 64 32
FF Flags Scope Rsvd Plen Network-Prefix Group-ID
Multicast address
FF3E:0030:1234:5678:9abc::1 (hex “30” is 48 bits)
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 150
IPv6 Multicast Tree Building & Forwarding
• PIM-Sparse Mode (PIM-SM)
• RFC4601
• PIM Source Specific Mode (SSM)
• RFC3569 SSM overview (v6 SSM needs MLDv2)
• Unicast, prefix-based multicast addresses ff30::/12
• SSM range is ff3X::/96
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 151
RP Mapping Mechanisms for IPv6
• Static RP assignment
• BSR
• Embedded RP
• No Auto-RP!
• No current plans for Auto-RP at Cisco or IETF
• No Anycast RP w/MSDP!
• Because MSDP is not supported in IPv6
• No current plans for IPv6 MSDP at Cisco or IETF
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 152
Embedded RP Addressing
Multicast Address with Embedded RP address – RFC3956
8 4 4 4 4 8 64 32
FF Flags Scope Rsvd RPadr 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 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 153
Embedded RP Addressing – Example
Multicast Address with Embedded RP address
8 4 4 4 4 8 64 32
FF Flags Scope Rsvd RPadr Plen Network-Prefix Group-ID
FF76:0130:1234:5678:9abc::4321
1234:5678:9abc::1
Resulting RP address
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 154
Multicast Listener Discover—MLD
• MLD is equivalent to IGMP in IPv4
• MLD messages are transported over ICMPv6
• Version number confusion
• MLDv1 corresponds to IGMPv2
• RFC 2710
• MLDv2 corresponds to IGMPv3, needed for SSM
• RFC 3810
• MLD snooping
• RFC4541 – Considerations for IGMP & MLD Snooping Switches
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 155
Conclusion
BRKIPM-1261 156
Now You Know…
• Multicast Fundamentals
• Source-Specific Multicast (SSM)
• Bidirectional Multicast (Bidir)
• Any-Source Multicast (ASM)
• ASM Redundant RP Choices
• Multicast at Layer 2
• Multicast over MPLS – mLDP
• Bit-Indexed Explicit Replication – BIER
• Inter-domain IP Multicast
• IPv6 Multicast
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 157
Complete Your Online
Session Evaluation
• Give us your feedback to be
entered into a Daily Survey
Drawing. A daily winner will
receive a $750 gift card.
• Complete your session surveys
through the Cisco Live mobile
app or on www.CiscoLive.com/us.
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Continue Your Education
• Demos in the Cisco campus
• Walk-in Self-Paced Labs
• Lunch & Learn
• Meet the Engineer 1:1 meetings
• Related sessions
BRKIPM-1261 © 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 159
Please join us for the Service Provider Innovation Talk featuring:
Yvette Kanouff | Senior Vice President and General Manager, SP Business
Joe Cozzolino | Senior Vice President, Cisco Services
BRKIPM-1261