IPV6 Presentation2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 102

IPv6 Multicast Deployment

BRKRST-3301

IPv6 at CiscoLive
IPv6 over WLAN for 4 years thanks to
Google whitelisted www.cisco-live6.com for statistics

Other IPv6 sessions include:


BRKSPG-2184 IPv4 Exhaustion, NAT, and IPv6 Transition Techniques for SP Subscriber Networks LABIPM-2007 IPv6 Hands on Lab BRKUCC-2061 IPv6 in Enterprise Unified Communications Networks ITMCCS-2943 IPv6 Rapid Deployment (6rd) at Swisscom BRKIPM-3010 Advanced Which Routing Protocol - IPv4 and IPv6 Perspective BRKCRS-2301 Enterprise IPv6 Deployment BRKSEC-3020 Advanced ASA and FWSM Firewalls BRKSEC-2202 Understanding and Preventing Layer 2 Attacks in IPv4 and IPv6 networks BRKRST-3300 Service Provider IPv6 Deployment

BRKSEC-2003 IPv6 Security Threats and Mitigations


BRKRST-3301 Advanced IPv6 Multicast Deployment BRKSEC-3012 Advanced Concepts of Dynamic Multipoint VPN PNLCRS-2303 Panel: Experiences with Deploying IPv6 BRKSEC-3003 Advanced IPv6 Security: Securing Link Operations at First Hop LABRST-3540 Advanced Carrier Grade IPv4 to IPv6 Transition
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

Abstract
Due to the depletion of the IPv4 address space, IPv6 addresses are becoming the only viable option when deploying new services, such as IPTV. In addition, IPv6 multicast addressing has the added benefit that any organization which owns IPv6 unicast address space, automatically owns IPv6 multicast address space. This session will discuss IPv6 multicast from the ground-up: IPv6 multicast protocol, deployment models (ASM, SSM, etc), similarities and differences with IPv4 multicast, co-existence with the deployment models for IPv6 unicast (dual-stack, MPLS 6PE / 6VPE, tunnelling). This session is suited for both service providers and enterprises. The audience is assumed to have a basic understanding of IPv6 addressing and IPv4 Multicast operation.

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

Agenda
Introduction

IPv6 Multicast Fundamentals


Multicast Tree Building PIM Rendezvous Points Source Specific Multicast SSM Multicast Data Forwarding

Conclusions

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

Introduction

IANA IPv4 Pool Combined View

http://inetcore.com/project/ipv4ec/index_en.html Update to: http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_8-3/ipj_8-3.pdf Exhaustion of the central IANA pool - orange Exhaustion of the collective RIR pools - magenta Relative distribution rates between the RIRs Time depth of collective RIR pools on pub date - white Time depth between exhaustion events - diff between orange & magenta

Tony Hain

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

IPv6 Multicast Fundamentals

Elements of Multicast Technology


Protocols to build multicast distribution trees
PIM

Protocols for receivers to signal to the network which multicast group/source they want to receive
IGMP (IPv4), MLD (IPv6)

Protocols and mechanisms for receivers to discover sources


ASM-SM, ASM-BiDir, SSM

Protocols and mechanisms for receivers and sources to discover RPs


Static, embedded RP (IPv6-only), BSR, auto-RP (IPv4-only)

Mechanism for multicast forwarding with loop avoidance


RPF
9

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

Multicast Control Plane and Forwarding Components


PIM Specification (RFC 4601)
TIB (Tree Information Base) Stores the state of all multicast distribution trees created by PIM / MLD messages (PIM J/P, PIM Assert, MLD)

IOS Implementation
PIM Topology Table. Displayed through show ipv6 pim topology. IOS MRIB: multicast routing information describing multicast distribution trees used for traffic forwarding. Displayed through show ipv6 mrib route. Currently only PIM Topology Table (TIB) is used to create the MRIB. Separation of TIB/MRIB provides flexibility to implement future multicast routing protocols. Show ipv6 mroute provides same information (IPv4 Multicast compatible). There is currently no equivalent data structure in IOS. IOS uses unicast RIB + Multicast BGP + Multicast Static Routes

MRIB (Multicast Routing Information Base)

Multicast topology table. Like RIB for unicast, but it contains routing information used for RPF check and PIM J/P sending. Also PIM Assert metric information Multicast forwarding information used to perform packet forwarding. Derived from the TIB. Implementation specific
Cisco Public

MFIB (Multicast Forwarding Information Base)


BRKRST-3301

Multicast forwarding information used to perform actual multicast data forwarding. Displayed through show ipv6 mfib
10

2011 Cisco Systems, Inc. All rights reserved.

IPv4 and IPv6 Multicast Comparison


IPv4 Multicast Addressing Range 32-bit, Class D Static multicast, all IGPs and MBGP PIM-DM, PIM-SM, PIM-SSM, PIM-BiDir IGMPv1, v2, v3 Administrative boundary Static, auto-RP, BSR IPv6 Multicast 128-bit (112-bit Group) Static multicast, all IGPs and MBGP with IPv6 mcast SAFI PIM-DM, PIM-SM, PIM-SSM, PIM-BiDir MLDv1, v2 Scope boundary Static, BSR, embedded RP SSM, embedded RP, shared RP between independent PIM domains
11

Routing Sources for RPF

Multicast Distribution Trees


Group Management Domain Control RP Discovery

Interdomain Multicast
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved.

SSM, MSDP across independent PIM domains


Cisco Public

IPv6 Addresses
128 bits (IPv6) vs. 32 bits (IPv4)
2001:0DB8:0000:130F:0000:0000:087C:140B or

2001:DB8:0:130F::87C:140B (same address)

Prefix representation the same


2001:DB8:10::/48

Interfaces have multiple addresses (Global, Link Local, ULA, Multicast)! These addresses have scope associated
No broadcast address! Routing protocols pretty much the same as in IPv4 Use of multicast is ubiquitous
Neighbor discovery (L2 address resolution, router discovery)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

12

IPv6 Multicast Addresses - RFC 4291


128 Bits
8 FF 4 4 Group-ID Flags Scope

1111 1111

Flags R P T Scope

F 8 Bits

Flags =

8 Bits

Scope =

T or Lifetime, 0 if Permanent, 1 if Temporary P for Unicast-based Assignments R for Embedded RP Others Are Undefined and Must Be Zero 1 = interface-local 2 = link 4 = admin-local 5 = site 8 = organization E = global 0, 3, F = reserved

Note: other scopes (6, 7, 9-D) are unassigned but can be used
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

13

Some Well Known Multicast Addresses - RFC 2375


Address FF01::1 FF02::1 FF01::2 FF02::2 Scope Node-Local Link-Local Node-Local Link-Local Meaning All Nodes All Nodes All Routers All Routers

FF05::2 FF02::1:FFXX:XXXX

Site-Local Link-Local

All Routers Solicited-Node

Note that 02 means that this is a permanent address and has link scope Use of Link Local multicast addresses is ubiquitous in IPv6 link operations: RS, RA, NS, NA (ICMPv6) More details at http://www.iana.org/assignments/ipv6-multicastaddresses
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

14

Unicast-Based Multicast Addresses - RFC 3306


8
FF

8
Plen

64
Network-Prefix

32
Group-ID

Flags Scope Rsvd

RFC 3306unicast-based multicast addresses


Similar to IPv4 GLOP addressing (233/8 + ASN = 256 group addresses) Solves IPv6 global address allocation problem (2^32 multicast group addresses per (up to /64) unicast prefix you own) Flags = 00PT: P = 1, T = 1 Unicast-based multicast address

Example
Content providers unicast prefix
1234:5678:9abc::/48 Multicast address FF3E:0030:1234:5678:9abc::1 (0x30 is 48 bits)

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

15

Source Specific Multicast (SSM) Addresses RFC 3306


8
FF

8
Plen

64
Network-Prefix

32
Group-ID

Flags Scope Rsvd

Based on unicast-based multicast addresses (RFC 3306) Flags = 00PT: P=T=1 Scope = any valid address scope value (>=3) Plen = 0 Network-Prefix = 0 Range = FF3x::/32 (x = any valid address scope value) SSM ranges are hardcoded
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

R1#show ipv6 pim range-list Static SSM Exp: never Learnt from : :: FF33::/32 Up: 1d02h FF34::/32 Up: 1d02h FF35::/32 Up: 1d02h FF36::/32 Up: 1d02h FF37::/32 Up: 1d02h FF38::/32 Up: 1d02h FF39::/32 Up: 1d02h FF3A::/32 Up: 1d02h FF3B::/32 Up: 1d02h FF3C::/32 Up: 1d02h FF3D::/32 Up: 1d02h FF3E::/32 Up: 1d02h FF3F::/32 Up: 1d02h

16

Embedded RP Addressing RFC 3956


8 FF 4 4 4 4 8 Plen 64 Network-Prefix 32 Group-ID Flags Scope Rsvd RPadr

Based on unicast-based multicast addresses (RFC 3306) RP address is embedded in multicast address Flag bits = 0RPT
R = 1, P = 1, T = 1 Embedded RP address

RP address = Network-Prefix::RPadr Range = FF70::/12

For each unicast prefix (up to /64) 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)

Deployment choices: network-prefix is max. 64 bits but can be smaller RPs per /64, per /48, etc
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

17

Embedded RP Addressing - Example


Multicast Address with Embedded RP Address
8 FF 4 4 4 4 8 Plen 64 Network-Prefix 32 Group-ID

Flags Scope Rsvd RPadr

FF7E:0130:1234:5678:9abc::4321

1234:5678:9abc::1
Resulting RP Address
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

18

IPv6 Layer 2 Multicast Addressing Mapping RFC 2464


IPv6 Multicast Address
112 Bits 8 FF 4 4 80 High-Order 32 Low-Order Flags Scope

80 Bits Lost

More than 1 multicast address (in fact 2^80) will map to the same MAC address

33-33-xx-xx-xx-xx
48 Bits

Pick multicast group addresses that give distinct multicast MAC addresses
For example: FF02::1 33-33-00-00-00-01 FF3E::1 33-33-00-00-00-01 Similar to IPv4: 5 bits are lost (28 significant L3 multicast bits are mapped into 23 L2 MAC bits)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

Ethernet MAC Address

19

IPv6 Multicast Address Type Summary


Multicast Address Types Multicast

Generic Multicast Addresses


Unicast Based Multicast Addresses Source Specific Multicast Addresses Multicast Addresses with Embedded RP

FF00::/8
FF30::/12 FF3x::/32 (x = any valid address scope value >=3) FF70::/12

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

20

IPv6 Multicast and IPv6 Unicast Transition Mechanisms

21

IPv6 Multicast and IPv4/IPv6 Transition Mechanism Considerations


IPv4 / IPv6 Unicast Transition Mechanism Dual Stack 6to4 Tunnel Manual Tunnel (IPv6oIPv4 or GRE) ISATAP Tunnel IPv6 Multicast Support Yes No Yes No

6PE (MPLS)
6rd

No
No

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

22

Multicast Listener Discovery - MLD

23

Multicast Listener Discovery MLD


Multicast Host Membership Control
MLD is equivalent to IGMP in IPv4 MLD messages are ICMPv6 type messages: Report, Done, Query MLD messages use IPv6 link-local source addresses

MLD messages use IPv6 link-local multicast destination addresses


MLD packets use Router Alert option in IPv6 Hop-by-Hop Options extension header (RFC 2711) with Hop Limit =1
Required for routers to examine MLD messages sent to multicast addresses in which they normally have no interest
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

Host Multicast Control via MLD

24

Multicast Listener Discovery MLD


Multicast Host Membership Control
Version number confusion:
MLDv1 (RFC 2710) like IGMPv2 (RFC 2236) MLDv2 (RFC 3810) like IGMPv3 (RFC 3376)

MLDv2 router side fully compatible with MLDv1 hosts

SSM transition through SSM mapping for MLDv1 messages static or DNS: 12.4T, 7600 (33)SRA, 6500 (18)SXE
MLD snooping: 7600 (33)SRA, 6500 (18)SXE, 3560/3750 (25)SED, 4500 12.2SG
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

Host Multicast Control via MLD

25

MLDv1: Joining a Group (REPORT)


FE80::209:5BFF:FE08:A674 FE80::250:8BFF:FE55:78DE

H1

H2

1
1
Destination: FF3E:40:2001:DB8:C003:1109:1111:1111 ICMPv6 Type: 131

2 2 Destination:
FF3E:40:2001:DB8:C003:1109:1111:1111 ICMPv6 Type: 131

1 2

H1 sends a REPORT for the group


H2 sends a REPORT for the group

rtr-a

FE80::207:85FF:FE80:692

Source
Group:FF3E:40:2001:DB8:C003:1109:1111:1111
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

26

MLDv1: Leaving a Group (DONE and Group-Specific Query)


FE80::209:5BFF:FE08:A674 FE80::250:8BFF:FE55:78DE

H1
3 REPORT to group
1 1 Destination:
FF02::2 ICMPv6 Type: 132 ICMPv6 Type: 131

H2

2 Destination:

FF3E:40:2001:DB8:C003:1109:1111:1111 ICMPv6 Type: 130

1 H1 sends DONE to FF02::2 2 RTR-A sends Group-Specific Query 3 H2 sends REPORT for the group

rtr-a

FE80::207:85FF:FE80:692

Source
Group:FF3E:40:2001:DB8:C003:1109:1111:1111

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

27

Other MLD Operations


DONE
Last host leavessends DONE (ICMPv6 Type 132) Router will respond with Group-Specific Query (ICMPv6 Type 130) lowest IPv6 address becomes Querier Router will set Maximum Response Delay to the Last Listener Query Interval (Default=1 sec) for each query

Query is sent twice (Last Listener Query Count) and if no reports occur then entry is removed (2 seconds)

General Query (ICMPv6 Type 130)


Sent to learn of listeners on the attached link
Sets the multicast address field to zero Sent every 125 seconds (configurable) to FF02::1 (All Nodes)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

28

MLDv2 (RFC 3810)


MLDv2 enhances MLDv1 by enabling a host to join a specific multicast source

Supports SSM deployment model


2 message types: Report (Type 143) and Query (Type 130)

3 types of Query messages: General, Group-specific, Group/Source-Specific


General Query message sent to FF02::1

MLDv2 is backwards compatible and interoperable with MLDv1 and therefore also supports the MLDv1 messages Type 131 (Report) and Type 132 (Done)

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

29

MLDv2 (RFC 3810)


Capabilities of Report Message (Type 143) enhanced for MLDv2 to include a concatenated set of Multicast Address Records detailing the multicast sources in which the receiver is/is not interested determines router filter mode INCLUDE / EXCLUDE Report Message sent to All-MLDv2 Routers multicast address (FF02::16) iso group address in MLDv1 (facilitates MLD snooping on L2 switches) Report Message (Type 143) also performs function of MLDv1 Done message (Type 132)

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

30

MLD in IOS
MLD is automatically enabled on all interfaces with ipv6 multicast-routing Routers implement MLDv2 with MLDv1 compatibility mode for MLDv1 hosts. The compatibility mode is maintained based on the multicast group address. MLD can be disabled on a per interface basis (e.g. for core interfaces or access interfaces without receivers) by no ipv6 mld router MLD ACLs allow access only to specific multicast groups and/or sources using ipv6 mld access-group SSM transition through SSM mapping for MLDv1 messages static or DNS
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

31

MLD - Generic
R2#show ipv6 mld groups detail Interface: Ethernet1/0 Group: FF1E::1 Uptime: 06:07:58 Router mode: EXCLUDE (Expires: 00:02:29) Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA00 Source list is empty Interface: Ethernet1/0 Group: FF7E:430:2001:DB8:10::2 Uptime: 06:07:58 Router mode: EXCLUDE (Expires: 00:02:31) Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA00 Source list is empty Interface: Ethernet2/0 Group: FF1E::1 Uptime: 06:07:57 Router mode: INCLUDE Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA01 Group source list: Source Address Uptime Expires Fwd 2001:DB8:30:1::1234 06:07:57 00:02:31 Yes (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1 Flags Remote 4

R2

Ethernet 1/0 has MLDv1 hosts SM


Ethernet 2/0 has MLDv2 hosts SSM
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

MLDv1

MLDv2

32

MLD - Generic
(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) R2#show ipv6 mld interface ethernet 1/0 Ethernet1/0 is up, line protocol is up Internet address is FE80::A8BB:CCFF:FE00:6601/10 MLD is enabled on interface Current MLD version is 2 MLD query interval is 125 seconds MLD querier timeout is 255 seconds MLD max query response time is 10 seconds Last member query response interval is 1 seconds MLD activity: 10 joins, 1 leaves MLD querying router is FE80::A8BB:CCFF:FE00:6601 (this system) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

33

MLD - Generic
R2#show ipv6 mld traffic MLD Traffic Counters Elapsed time since counters cleared: 06:10:22 Received 2206 359 1847 0 0 Sent 2069 899 1170 0 0 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

Valid MLD Packets Queries Reports Leaves Mtrace packets Errors: Malformed Packets Martian source Non link-local source Hop limit is not equal to 1

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3 0 16 0 0
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

34

Reverse Path Forwarding - RPF

35

IPv6 RPF Sources of Information


IPv6 Unicast RIB: all IPv6 IGPs (ISIS, OSPFv3, EIGRPv6, RIPng, static) IPv6 Static Multicast Routes
ipv6 route ipv6-prefix/prefix-length {ipv6-address | interface-type interface-number [ipv6-address]} [administrative-distance] [administrative-multicast-distance | unicast | multicast] [tag tag]
Same behaviour as IPv4 static routes (except for new options) Unicast-only static routes Equal or less configuration lines than in IPv4 (ip route / ip mroute)

IPv6 Multicast BGP Table (AFI=2, SAFI=2) see next slide (but NOT IPv6 Unicast BGP Table)

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

36

IPv6 RPF Sources of Information


Multiprotocol Extensions for BGP-4: RFC 2545 / RFC 4760 (obsoletes RFC 2858)
New BGP-4 attributes: MP_REACH_NLRI (attribute 14), MP_UNREACH_NLRI (attribute 15)
AFI=1 (IPv4), AFI=2 (IPv6), SAFI=1 (unicast), SAFI=2 (multicast). See IANA: http://www.iana.org/assignments/safinamespace

IPv6 Multicast BGP Table (AFI=2, SAFI=2) used as an IPv6 RPF check source. This is a route only usable for IPv6 multicast, NOT for IPv6 unicast. SAFI=2 must be used in transit ISP scenarios (peering neighbor does not know BGP route is really usable for multicast or not)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

37

IPv6 RPF Sources of Information


IPv6 Multicast BGP Configuration
router bgp 1 no synchronization bgp log-neighbor-changes neighbor 2001::2 remote-as 2 no auto-summary ! address-family ipv6 multicast neighbor 2001::2 activate exit-address-family

For BGP peers that do not support IPv6 Multicast BGP


router bgp 1 ! address-family ipv6 neighbor 2001::2 activate neighbor 2001::2 translate-update ipv6 multicast unicast exit-address-family ! address-family ipv6 multicast neighbor 2001::2 activate exit-address-family

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

38

Reminder IPv4 Reverse Path Forwarding (RPF) Algorithm


Consider the following tables for RPF information
1. IPv4 Multicast BGP Table (AFI=1, SAFI=2) 2. IPv4 Static Multicast Routes (ip mroute) 3. IPv4 DVMRP RIB 4. IPv4 Unicast RIB (all IGPs + Unicast BGP (AFI=1, SAFI=1))

Select route with lowest administrative distance across these tables (within each table, longest-prefix match is performed) If 2 or more table have routes with same distance, select according to the order above Allows a route with a shorter-prefix match to be selected above a route with a longer-prefix match
Overriding unicast RIB with static mroute(s) Overriding Unicast BGP entries with Multicast BGP entries (presence in Unicast BGP does not guarantee multicast reachability!)
39

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

IPv6 RPF Algorithm


Select route with longest-prefix match from the following sources
1. IPv6 Static Multicast Routes 2. IPv6 Multicast BGP Table 3. IPv6 Unicast RIB (all IGPs, NOT IPv6 Unicast BGP)

If multiple longest-prefix matches exist, select the the route with the lowest administrative distance If multiple routes still exist, select according to the order above Essentially the same as unicast route selection with the difference that the Multicast RIB result is virtual, while for unicast the selected routes are merged in a real RIB. BGP IPv6 Unicast routes are NOT used in the RPF selection process
In IOS, command to override this (ipv6 multicast rpf use-bgp). This is not advised

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

40

RPF Interface vs. Neighbor (RFC 4601)


RPF Interface: chosen by the RPF algorithm (MRIB) tp reach the multicast source (SPT) or RP (shared tree) RPF Neighbor: PIM neighbor residing on the RPF Interface towards the multicast source (SPT) or RP (shared tree). PIM J/P messages can ONLY be sent to the RPF neighbor. Note: existence of an RPF Interface (but without an actual RPF Neighbour) is NOT enough to forward PIM J/P messages over that interface and a multicast distribution tree to be built

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

41

Multicast Tree Building PIM

42

PIM-SM Shared Tree Join

RP

(*, G) Join Shared Tree Receiver

(*, G) State Created Only Along the Shared Tree

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

43

PIM-SM Sender Registration

Source

RP

Traffic Flow Shared Tree Source Tree (S, G) Register (S, G) Join

(S, G) State Created Only Along the Source Tree

(unicast)

Receiver

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

44

PIM-SM Sender Registration

Source

RP

Traffic Flow Shared Tree Source Tree (S, G) Register (S, G) Register-Stop

(S, G) Traffic Begins Arriving at the RP via the Source Tree RP Sends a Register-Stop Back to the First-Hop Router to Stop the Register Process
45

(unicast) (unicast)

Receiver

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

PIM-SM Sender Registration

Source

RP

Traffic Flow Shared Tree Source Tree Receiver

Source Traffic Flows Natively Along SPT to RP From RP, Traffic Flows Down the Shared Tree to Receivers

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

46

PIM-SM SPT Switchover

Source

RP

Traffic Flow Shared Tree Source Tree (S, G) Join

Last-Hop Router Joins the Source Tree Additional (S, G) State Is Created Along New Part of the Source Tree

Receiver

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

47

PIM-SM SPT Switchover

Source

RP

Traffic Flow Shared Tree Source Tree (S, G)RP-bit Prune

Traffic Begins Flowing Down the New Branch of the Source Tree Additional (S, G) State Is Created Along the Shared Tree to Prune Off (S, G) Traffic

Receiver

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

48

PIM-SM SPT Switchover

Source

RP

Traffic Flow Shared Tree Source Tree Receiver

(S, G) Traffic Flow Is Now Pruned Off of the Shared Tree and Is Flowing to the Receiver via the Source Tree

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

49

PIM-SM SPT Switchover

Source

RP

Traffic Flow Shared Tree Source Tree (S, G) Prune

(S, G) Traffic Flow Is No Longer Needed by the RP so It Prunes the Flow of (S, G) Traffic Receiver

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

50

PIM-SM SPT Switchover

Source

RP

Traffic Flow Shared Tree Source Tree Receiver

(S, G) Traffic Flow Is Now Only Flowing to the Receiver via a Single Branch of the Source Tree

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

51

IPv6 Multicast Configuration - Basic


! ipv6 unicast-routing ipv6 cef ipv6 multicast-routing ! interface Loopback0 no ip address ipv6 address 2001:DB8:10::1/128 ipv6 ospf 1 area 0 ! interface Ethernet0/0 no ip address ipv6 address 2001:DB8:20:1::1/64 ipv6 ospf 1 area 0 ! ipv6 router ospf 1 router-id 1.1.1.1 log-adjacency-changes passive-interface Ethernet3/0 passive-interface Ethernet4/0 passive-interface Loopback0 ! ipv6 pim rp-address 2001:DB8:10::3 ! (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

With SSM or Embedded RP, only IPv6 multicast-routing is required


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

52

Enabling PIM for IPv6 Multicast


ipv6 multicast-routing enables PIM on all interfaces (IPv4) ipv6 multicast-routing enables MLDv2 on all interfaces (IPv4) PIM / MLDv2 can be turned off on per interface basis
no ipv6 pim no ipv6 mld router
e1/0

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e2/0

e4/0

PIM neighbor discovery and PIM hellos use link local addresses only. PIM hellos are sent to a link local multicast address FF02::D
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

R1

R2

MLDv1

MLDv2

53

PIM Neighbors

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0

SRC2

PIM neighbors are identified through link-local addresses

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2 R1#sh ipv6 pim interface ethernet 0/0 Interface PIM Nbr Hello DR Count Intvl Prior Ethernet0/0 on 1 30 1 Address: FE80::A8BB:CCFF:FE00:6500 DR : FE80::A8BB:CCFF:FE00:6600 R1
e1/0 e2/0

e4/0

R2

MLDv1
R1#sh ipv6 pim neighbor ethernet 0/0 Neighbor Address Interface FE80::A8BB:CCFF:FE00:6600 Ethernet0/0

MLDv2

Uptime
00:35:56

Expires DR pri Bidir


00:01:31 1 (DR) B

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

54

Interface Joined Multicast Groups


R1#show ipv6 interface ethernet 0/0 Ethernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::A8BB:CCFF:FE00:6500 No Virtual link-local address(es): Global unicast address(es): 2001:DB8:20:1::1, subnet is 2001:DB8:20:1::/64 Joined group address(es): FF02::1 FF02::2 FF02::5 FF02::6 FF02::D FF02::16 FF02::1:FF00:1 FF02::1:FF00:6500 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds ND advertised reachable time is 0 milliseconds ND advertised retransmit interval is 0 milliseconds ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses.

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

FF02::D All PIM routers

MLDv1

MLDv2

FF02::16 All MLDv2 routers


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

55

Immediate vs. Inherited OILs


New in the updated RFC 4601 (vs. RFC 2362) PIM States have Outgoing Interface Lists (OILs)

Immediate OIL: Built directly from the state of the relevant type
For example, immediate OIL for (S,G) state is the OIL that would be built if the router only had (S,G) state and no (*,G) or (S,G,rpt) state. This requires explicit PIM Joins / MLD Reports.

show ipv6 pim topology

Inherited OIL: Inherits state from other state types


For example, immediate OIL of parent (*,G) state is copied to inherited OIL for (S,G) state show ipv6 mrib route

show ipv6 mroute shows BOTH Immediate and Inherited OILs

Generally speaking, Inherited OILs are used for forwarding, Immediate OILs are used to make decisions about state maintenance
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

56

Immediate vs. Inherited OILs


R1#show ipv6 pim topology FF1E::1 IP PIM Multicast Topology Table Entry state: (*/S,G)[RPT/SPT] Protocol Uptime Info Entry flags: KAT - Keep Alive Timer, AA - Assume Alive, PA - Probe Alive, RA - Really Alive, LH - Last Hop, DSS - Don't Signal Sources, RR - Register Received, SR - Sending Registers, E - MSDP External, DCC - Don't Check Connected Interface state: Name, Uptime, Fwd, Info Interface flags: LI - Local Interest, LD - Local Disinterest, II - Internal Interest, ID - Internal Disinterest, LH - Last Hop, AS - Assert, AB - Admin Boundary (2001:DB8:30:1::1234,FF1E::1) SM SPT UP: 1d00h JP: Join(never) Flags: KAT(00:01:31) RA RPF: Ethernet3/0,2001:DB8:30:1::1234* Ethernet0/0 18:40:01 fwd Join(00:02:32) R1#show ipv6 mrib route FF1E::1 IP Multicast Routing Information Base e Entry flags: L - Domain-Local Source, E - External Source to the Domain, C - Directly-Connected Check, S - Signal, IA - Inherit Accept, K - Keepalive Interface flags: F - Forward, A - Accept, IC - Internal Copy, NS - Negate Signal, DP - Don't Preserve, SP - Signal Present, II - Internal Interest, ID - Internal Disinterest, LI - Local Interest, LD - Local Disinterest (2001:DB8:30:1::1234,FF1E::1) RPF nbr: 2001:DB8:30:1::1234 Flags: Ethernet3/0 Flags: A Ethernet0/0 Flags: NS BRKRST-3301 2011 F Cisco Systems, Inc. All rights reserved. Cisco Public (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

57

Immediate vs. Inherited OILs


R1#show ipv6 mroute FF1E::1 Multicast Routing Table Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, I - Received Source Specific Host Report, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT Timers: Uptime/Expires Interface state: Interface, State (2001:DB8:30:1::1234, FF1E::1), 1d00h/00:02:18, flags: SFT Incoming interface: Ethernet3/0 RPF nbr: 2001:DB8:30:1::1234 Immediate Outgoing interface list: Ethernet0/0, Forward, 18:39:15/00:03:19 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

58

Immediate vs. Inherited OILs


(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) R2#show ipv6 mld groups FF1E::1 detail Interface: Ethernet1/0 Group: FF1E::1 Uptime: 1d00h Router mode: EXCLUDE (Expires: 00:03:32) Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA00 Source list is empty SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

On R2: only MLDv1 clients active at the moment no source-specific MLD Reports (MLDv2 R2 receiver is dormant) No Immediate OIL created for (S,G) state
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

R2
e1/0 e2/0

e4/0

(*, FF1E::1) R1 R2

MLDv1

MLDv2

59

Immediate vs. Inherited OILs


R2#show ipv6 pim topology FF1E::1 IP PIM Multicast Topology Table (output truncated) (*,FF1E::1) SM UP: 23:28:23 JP: Join(00:00:21) Flags: LH RP: 2001:DB8:10::3 RPF: Ethernet3/0,FE80::A8BB:CCFF:FE00:6703 Ethernet1/0 23:28:23 fwd LI LH (2001:DB8:30:1::1234,FF1E::1) SM SPT UP: 18:39:12 JP: Join(00:00:01) Flags: KAT(00:03:16) RA RPF: Ethernet0/0,FE80::A8BB:CCFF:FE00:6500 No interfaces in immediate olist R2#show ipv6 mrib route FF1E::1 IP Multicast Routing Information Base (output truncated) (*,FF1E::1) RPF nbr: FE80::A8BB:CCFF:FE00:6703 Flags: C Ethernet1/0 Flags: F LI NS Ethernet3/0 Flags: A NS (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

(*, FF1E::1) R1 R2

(2001:DB8:30:1::1234,FF1E::1) RPF nbr: FE80::A8BB:CCFF:FE00:6500 Flags: Ethernet0/0 Flags: A Ethernet1/0 Flags: F NS

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

60

Immediate vs. Inherited OILs


R2#show ipv6 mroute FF1E::1 Multicast Routing Table (output truncated) (*, FF1E::1), 23:31:28/never, RP 2001:DB8:10::3, flags: SCJ Incoming interface: Ethernet3/0 RPF nbr: FE80::A8BB:CCFF:FE00:6703 Immediate Outgoing interface list: Ethernet1/0, Forward, 23:31:28/never (2001:DB8:30:1::1234, FF1E::1), 18:42:17/00:00:11, flags: SJT Incoming interface: Ethernet0/0 RPF nbr: FE80::A8BB:CCFF:FE00:6500 Inherited Outgoing interface list: Ethernet1/0, Forward, 23:31:28/never (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

(*, FF1E::1) R1 R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

61

Immediate vs. Inherited OILs


R2#show ipv6 mld groups FF1E::1 detail Interface: Ethernet1/0 Group: FF1E::1 Uptime: 00:02:26 Router mode: EXCLUDE (Expires: 00:03:22) Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA00 Source list is empty Interface: Ethernet2/0 Group: FF1E::1 Uptime: 00:02:25 Router mode: INCLUDE Host mode: INCLUDE Last reporter: FE80::A8BB:CCFF:FE00:CA01 Group source list: Source Address Uptime Expires Fwd Flags 2001:DB8:30:1::1234 00:02:25 00:03:27 Yes Remote 4 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

On R2: both MLDv1/MLDv2 clients active at the moment source-specific MLD Reports Immediate OIL created for (S,G) state
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

(*, FF1E::1) R1

(2001:DB8:30:1::1234, FF1E::1) R2

MLDv1

MLDv2

62

Immediate vs. Inherited OILs


R2#show ipv6 pim topology FF1E::1 IP PIM Multicast Topology Table (output truncated) (2001:DB8:30:1::1234,FF1E::1) SM SPT UP: 00:04:27 JP: Join(00:00:20) Flags: RPF: Ethernet0/0,FE80::A8BB:CCFF:FE00:6500 Ethernet2/0 00:04:26 fwd LI LH R2#show ipv6 mroute FF1E::1 Multicast Routing Table (output truncated) (2001:DB8:30:1::1234, FF1E::1), 00:07:23/never, flags: STI Incoming interface: Ethernet0/0 RPF nbr: FE80::A8BB:CCFF:FE00:6500 Immediate Outgoing interface list: Ethernet2/0, Forward, 00:07:22/never Inherited Outgoing interface list: Ethernet1/0, Forward, 00:07:23/never (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

(*, FF1E::1) R1

(2001:DB8:30:1::1234, FF1E::1) R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

63

Rendezvous Point (RP)

64

Multicast Group to RP Mapping Mechanisms


Static RP Embedded RP BootStrap Router (BSR)

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

65

IPv6 Multicast Configuration Embedded RP


! ipv6 unicast-routing ipv6 cef ipv6 multicast-routing ! interface Loopback0 no ip address ipv6 address 2001:DB8:10::4/128 ipv6 ospf 1 area 0 ! ipv6 router ospf 1 router-id 4.4.4.4 log-adjacency-changes passive-interface Loopback0 ! ipv6 pim rp-address 2001:DB8:10::3 ipv6 pim rp-address 2001:DB8:10::4 ERP ! ipv6 access-list ERP permit ipv6 any FF7E:430:2001:DB8:10::/80 ! (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

RP to be used as Embedded RP needs to be configured with address group range Other non-RP routers require no special configuration Embedded RP does not yet support PIM-Bidir
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

MLDv1

MLDv2

66

Display Multicast Group Modes / Ranges / RP Information


R1#show ipv6 pim range-list Static SSM Exp: never Learnt from : :: FF33::/32 Up: 01:04:42 FF34::/32 Up: 01:04:42 FF35::/32 Up: 01:04:42 FF36::/32 Up: 01:04:42 FF37::/32 Up: 01:04:42 FF38::/32 Up: 01:04:42 FF39::/32 Up: 01:04:42 FF3A::/32 Up: 01:04:42 FF3B::/32 Up: 01:04:42 FF3C::/32 Up: 01:04:42 FF3D::/32 Up: 01:04:42 FF3E::/32 Up: 01:04:42 FF3F::/32 Up: 01:04:42 Static SM RP: 2001:DB8:10::3 Exp: never Learnt from : :: FF00::/8 Up: 01:04:41 Embedded SM RP: 2001:DB8:10::4 Exp: never Learnt from : :: FF7E:430:2001:DB8:10::/80 Up: 01:00:35 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

No configuration for embedded RP (RP2) on R1 R1 has learned the embedded RP from SRC2 transmitting to an Embedded RP Group Address (learned through actual data, PIM / MLD joins)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

R1

R2

MLDv1

MLDv2

67

Display Actual Multicast Group to RP Mappings


R1#show ipv6 pim group-map IP PIM Group Mapping Table (* indicates group mappings being used) FF7E:430:2001:DB8:10::/80* SM, RP: 2001:DB8:10::4 RPF: Et2/0,FE80::A8BB:CCFF:FE00:6802 Info source: Embedded Uptime: 01:01:21, Groups: 1 FF33::/32* SSM Info source: Static Uptime: 3d01h, Groups: 0 FF34::/32* SSM Info source: Static Uptime: 3d01h, Groups: 0 FF00::/8* SM, RP: 2001:DB8:10::3 RPF: Et1/0,FE80::A8BB:CCFF:FE00:6701 Info source: Static Uptime: 3d01h, Groups: 1 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

68

BootStrap Router (BSR) Overview


Multiple candidate BSRs (C-BSR), single BSR is elected from CBSR announcements, other C-BSR are backup
Uses BSR priority (highest=best), IP address as tie breaker (higher=best), pre-emptive BootStrap messages (BSMs) flooded hop-by-hop to FF02::D (All-PIM routers) controlled by RPF check

Multiple candidate RPs (C-RP) send unicast announcements to BSR, BSR stores all C-RP announcements in RP-Set RP-Set flooded hop-by-hop to FF02::D (All-PIM routers) controlled by RPF check

BSM filtering at border through ipv6 pim bsr border


All routers select RP from the RP-Set, using same algorithm
Ensures consistency

Uses C-RP priority (lowest=best), hash function value (highest=best) and IP address as tie breaker (highest=best)
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

69

BSR Configuration
RP2#show run | i bsr ipv6 pim bsr candidate bsr 2001:DB8:10::4 priority 20 ipv6 pim bsr candidate rp 2001:DB8:10::4 priority 20
(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

RP1#show run | i bsr ipv6 pim bsr candidate bsr 2001:DB8:10::3 priority 10 ipv6 pim bsr candidate rp 2001:DB8:10::3 priority 10

e1/0

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

RP2 will become the BSR


e1/0

R2
e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

70

BSR Operation - BSR


RP2#show ipv6 pim bsr election PIMv2 BSR information BSR Election Information Scope Range List: ff00::/8 This system is the Bootstrap Router (BSR) BSR Address: 2001:DB8:10::4 Uptime: 00:07:18, BSR Priority: 20, Hash mask length: 126 RPF: FE80::A8BB:CCFF:FE00:6800,Loopback0 BS Timer: 00:00:43 This system is candidate BSR Candidate BSR address: 2001:DB8:10::4, priority: 20, hash mask length: 126 RP2#show ipv6 pim bsr rp-cache PIMv2 BSR C-RP Cache BSR Candidate RP Cache Group(s) FF00::/8, RP count 2 RP 2001:DB8:10::3 SM Priority 10, Holdtime 150 Uptime: 00:08:34, expires: 00:01:57 RP 2001:DB8:10::4 SM Priority 20, Holdtime 150 Uptime: 00:08:34, expires: 00:01:57

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

IPv6 BSR: Received C-RP Advertisement from 2001:DB8:10::3, priority 10 holdtime 150, prefix count 1 IPv6 BSR: Updating C-RP cache for 2001:DB8:10::4 IPv6 BSR: Updated received range FF00::/8, mode Sparse IPv6 BSR: Originating BSM for 2001:DB8:10::4, priority 20 hash mask length 126 IPv6 BSR: Adding Group prefix FF00::/8, RP count 2, Frag RP count 2 IPv6 BSR: Adding RP 2001:DB8:10::3, Priority 10, Holdtime 150 IPv6 BSR: Adding RP 2001:DB8:10::4, Priority 20, Holdtime 150 IPv6 BSR: Sending BSR message on interface Ethernet2/0 IPv6 BSR: Sending BSR message on interface Ethernet4/0 71 Cisco Public

BSR Operation - Other


R1#show ipv6 pim group-map info-source bsr IP PIM Group Mapping Table (* indicates group mappings being used) FF00::/8* SM, RP: 2001:DB8:10::3 RPF: Et1/0,FE80::A8BB:CCFF:FE00:6701 Info source: BSR From: 2001:DB8:10::4(00:02:09), Priority: 10 Uptime: 00:10:22, Groups: 1 FF00::/8 SM, RP: 2001:DB8:10::4 RPF: ,:: Info source: BSR From: 2001:DB8:10::4(00:02:09), Priority: 20 Uptime: 00:10:22, Groups: 0

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

IPv6 BSR: Received BSR message from FE80::A8BB:CCFF:FE00:6802 for 2001:DB8:10::4, BSR priority 20 hash mask length 126 IPv6 BSR: Recieved Group range FF00::/8, RP count 2 Fragment RP count2 IPv6 BSR: Update RP 2001:DB8:10::3, Holdtime 150, Priority 10 IPv6 BSR: Update RP 2001:DB8:10::4, Holdtime 150, Priority 20 IPv6 BSR: Received BSR message from FE80::A8BB:CCFF:FE00:6600 for 2001:DB8:10::4, BSR priority 20 hash mask length 126 IPv6 BSR: BSR message from FE80::A8BB:CCFF:FE00:6600/Ethernet0/0 for 2001:DB8:10::4 RPF failed, dropped IPv6 BSR: Received BSR message from FE80::A8BB:CCFF:FE00:6701 for 2001:DB8:10::4, BSR priority 20 hash mask length 126 IPv6 BSR: BSR message from FE80::A8BB:CCFF:FE00:6701/Ethernet1/0 for 2001:DB8:10::4 RPF failed, dropped
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

72

Source Registering DR
IOS automatically creates unidirectional virtual tunnel interfaces One virtual tunnel for each active RP in the network IOS maintains tunnel as long as RP is known Virtual tunnel interface is UP automatically, line protocol is UP only when a valid RPF interface to the RP exists PIM Register messages are sent through tunnel. PIM Register-Stop messages are sent directly (NOT through tunnel)
R1
e1/0

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

73

Source Registering DR
R1#show ipv6 pim tunnel Tunnel0* Type : PIM Encap RP : 2001:DB8:10::3 Source: 2001:DB8:10::1 Tunnel1* Type : PIM Encap RP : Embedded RP Tunnel Source: 2001:DB8:10::1 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0

SRC2

Tu0
e1/0

Tu1

R1
e0/0

e2/0

RP1 2001:DB8:10::3

RP2 2001:DB8:10::4

Tunnel0: statically-defined RP Tunnel1: for all embedded RPs (multipoint)


R1

e3/0

e0/0

R2
e1/0 e2/0

e4/0

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

74

Source Registering DR
R1#show interfaces tunnel 0 Tunnel0 is up, line protocol is up Hardware is Tunnel MTU 1514 bytes, BW 9 Kbit/sec, DLY 500000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 2001:DB8:10::1 (Loopback0), destination 2001:DB8:10::3 Tunnel protocol/transport PIM/IPv6 Tunnel TTL 255 Tunnel is transmit only Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input never, output 3d02h, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 1 packets output, 88 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0

SRC2

Tu0
e1/0

Tu1

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

Unidirectional transmit-only tunnel


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

MLDv1

MLDv2

75

Source Registering DR - Statistics


R1#show ipv6 pim traffic PIM Traffic Counters Elapsed time since counters cleared: 08:36:22 Received 4447 2531 840 0 0 1076 0 0 Sent 6284 6252 0 1074 0 0 0 (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0 e1/0

Valid PIM Packets Hello Join-Prune Data Register Null Register Register Stop Assert Bidir DF Election

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

Errors: Malformed Packets Bad Checksums Send Errors Packet Sent on Loopback Errors Packets Received on PIM-disabled Interface Packets Received with Unknown PIM Version

e0/0

0 0 0 1042 0 0 R1

R2
e1/0 e2/0

e4/0

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

76

Source Registering RP
Automatically creates at least 2 unidirectional virtual tunnel interfaces on the RP First is a transmit-only tunnel used for registering sources locally connected to the RP Second is a receive-only tunnel used for decapsulating PIM Register messages from all DRs There is only a single PIM Decap tunnel to decapsulate ALL PIM Register messages from ALL DRs
(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

77

Source Registering RP
RP1#show ipv6 pim tunnel Tunnel0* Type : PIM Encap RP : 2001:DB8:10::3* Source: 2001:DB8:10::3 Tunnel2* Type : PIM Encap RP : Embedded RP Tunnel Source: 2001:DB8:10::3 Tunnel1* Type : PIM Decap RP : 2001:DB8:10::3* Source: (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
Tu0 e3/0 e4/0 e1/0 Tu2

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
Tu1 e3/0

RP2 2001:DB8:10::4

e0/0

Tunnel 0: for sending Register messages for locally attached sources to itself (transmitonly) Tunnel 2: for sending Register messages to all embedded RPs (1 multipoint tunnel, transmit-only) Tunnel 1: for receiving Register messages from all DRs (single, receive-only) PIM registers can be restricted at RP through ipv6 pim accept-register
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

78

RP is single point of failure and therefore redundancy is an operational requirement MSDP-Anycast-RP is not possible: no MSDP for IPv6

RP Redundancy Mechanisms

BSR provides RP redundancy


Slower convergence than MSDP-anycast-RP Active protocol operations required in all routers

Prefixlength-Anycast-RP (aka PriorityCast-RP)


2 (or more) RPs with same IPv6 address, but different masks PIM Registers and (*,G) Joins forwarded to RP with longest-prefix match Slower convergence due to periodic register messages Topology considerations (RP-on-a-stick)

PIM-Anycast-RP (RFC 4610)


Basically Anycast-RP without MSDP through extending the PIM Register mechanism Implementation being planned
BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

79

Source Specific Multicast (SSM)

80

PIM Source Specific Mode


Source
Receiver Learns of Source, Group/Port Receiver Sends MLDv2 (S,G) Join First-Hop Send PIM (S,G) Join Directly Toward Source

A (S, G) Join

D Out-of-Band Source Directory Example: Web Server

D MLDv2 (S, G) Join Receiver 1

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

81

PIM Source Specific Mode


Source
Result: Shortest Path Tree Rooted at the Source, with No Shared Tree

Receiver 1

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

82

SSM
PIM, Topology Table, MRIB, MFIB all apply to SSM, of course without (*,G) state and RPs. PIM SSM is just a subset of PIM SM.

Only required configuration ipv6 multicast-routing


Requires MLDv2 on the receiver side SSM transition through SSM Mapping for MLDv1 messages static or DNS
When MLDv2 is not available on the endpoint

SSM Mapping will map MLDv1 Reports to a multicast source


This mapping can be done statically or though DNS

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

83

SSM Mapping
(2001:DB8:30:1::1234, FF3E::1) SRC1 ! ipv6 mld ssm-map enable ipv6 mld ssm-map static SSM_MAP 2001:DB8:30:1::1234 no ipv6 mld ssm-map query dns ! ipv6 access-list SSM_MAP permit ipv6 any host FF3E::1 ! SRC2

R1 RP1 2001:DB8:10::3
e3/0 e0/0

RP2 2001:DB8:10::4

R2
e1/0 e2/0

e4/0

Client: MLDv1 only DNS Mapping is the default


R1 R2

MLDv1

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

84

SSM Mapping
R2#show ipv6 pim topology FF3E::1 IP PIM Multicast Topology Table (output truncated) (2001:DB8:30:1::1234,FF3E::1) SSM SPT UP: 05:38:16 JP: Join(00:00:28) Flags: RPF: Ethernet0/0,FE80::A8BB:CCFF:FE00:6500 Ethernet1/0 05:38:16 fwd LI LH R2#show ipv6 pim group-map FF3E::1 IP PIM Group Mapping Table (* indicates group mappings being used) FF3E::/32* SSM Info source: Static Uptime: 05:44:46, Groups: 1 (2001:DB8:30:1::1234, FF3E::1) SRC1 SRC2

R1 RP1 2001:DB8:10::3
e3/0 e0/0

RP2 2001:DB8:10::4

R2
e1/0 e2/0

e4/0

(*, FF1E::1) R1 R2

No (*,G) state
MLDv1

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

85

Inter Domain IPv6 Multicast


Problem: how to allow receivers to discover sources? Remember: there is no Multicast Source Discovery Protocol (MSDP) which (in IPv4 multicast) provides Source Active announcements between RPs Option 1: SSM
Straightforward

Clients require MLDv2 capability / use SSM Mapping

Option 2: ASM with single shared RP between multicast domains


Not practical, requires co-ordination between multicast domains

Option 3: ASM with Embedded RP


Straightforward Requires all routers in the path to support Embedded RP mechanism

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

86

Multicast Data Forwarding

87

Multicast Forwarding Information Base (MFIB)


MFIB is like FIB (CEF) for unicast MFIB maintains next-hop address information based on the information in the MRIB Can be distributed (dMFIB) to forward multicast IPv6 packets on distributed platforms (e.g. 7600, GSR, CRS-1)

Implemented in hardware on hardware based forwarding platforms (e.g. 7600, GSR, CRS-1)
MFIB is automatically enabled with ipv6 multicast-routing Note: the exact output of the following commands may vary by hardware platform

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

88

MFIB Status
R1#show ipv6 mfib interface IPv6 Multicast Forwarding (MFIB) status: Configuration Status: enabled Operational Status: running MFIB interface Ethernet0/0 Ethernet1/0 Ethernet2/0 Ethernet3/0 Ethernet4/0 Loopback0 Tunnel0 Tunnel1 status up up up up up up up up CEF-based output [configured,available] [yes ,yes ] [yes ,? ] [yes ,? ] [yes ,? ] [yes ,? ] [yes ,? ] [yes ,? ] [yes ,? ] (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

89

MFIB Forwarding Entry


A-flag: RPF interface for (S,G) or (*,G) F-flag: outgoing forwarding interface

(2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1


e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3 R1#show ipv6 mfib FF1E::1 verbose IP Multicast Forwarding Information Base Entry Flags: C - Directly Connected, S - Signal, IA - Inherit A flag, AR - Activity Required, K - Keepalive Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kbits per second Other counts: Total/RPF failed/Other drops Interface Flags: A - Accept, F - Forward, NS - Negate Signalling IC - Internal Copy, NP - Not platform switched SP - Signal Present Interface Counts: FS Pkt Count/PS Pkt Count (2001:DB8:30:1::1234,FF1E::1) Flags: K Forwarding: 37269/10/40/3, Other: 1396/0/1396 Ethernet3/0 Flags: A Ethernet0/0 Flags: F NS Pkts: 0/37231 MAC: 333300000001AABBCC00650086DD
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

MLDv1

MLDv2

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

90

MFIB Active Sources and Packet Counts


R1#show ipv6 mfib FF1E::1 active 0 Active IPv6 Multicast Sources - sending >= 0 kbps Group: FF1E::1 Source: 2001:DB8:30:1::1234 Rate: 10 pps/3 kbps(1sec), 3 kbps(last 4301 sec) (2001:DB8:30:2::5678, FF7E:0430:2001:DB8:10::2) (2001:DB8:30:1::1234, FF1E::1) SRC1
e3/0 e4/0 e1/0

SRC2

R1
e0/0

e2/0

RP1 2001:DB8:10::3 R1#show ipv6 mfib FF1E::1 count IP Multicast Statistics 61 routes, 12 groups, 0.16 average sources per group Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc) Group: FF1E::1 Source: 2001:DB8:30:1::1234, Forwarding: 42907/10/40/3, Other: 1396/0/1396 Tot. shown: Source count: 1, pkt count: 42907
e3/0

RP2 2001:DB8:10::4

e0/0

R2
e1/0 e2/0

e4/0

R1

R2

Similar information as show ipv6 mfib verbose


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

MLDv1

MLDv2

91

Conclusions

92

Conclusions
IPv6 multicast technology advantages
Large address space / owned multicast address space

Built-in scope
Embedded RP No NAT required

Innovative production IPv6 multicast services exist


Hikari-TV (NTT): TV broadcast (SD/HD), 10000+ VoDs, 13000+ karaoke titles Earthquake Early Warning System (NTT Communications): estimated earthquake intensity, #seconds countdown based on location. Estimated 1 sec reaction time.

Widely deployed in NRENs, GEANT, Internet2, TEIN2, CERNET, etc


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

93

IPv6 Multicast Based Multimedia Services (NTT-East)


NTT-East rolled out native IPv6 multicast services instead of IPv4 offering IPTV, music and games:
http://www.ipv6style.jp/en/action/20040902/index.shtml
http://www.networkworld.com/news/2009/010809-ntt-ipv6tv.html

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

94

Deployment References
NTT
http://www.afrinic.net/meeting/afrinic7/presentations/26/AFRINIC7_JPNIC%20IPv6_Deployment.pdf

CESNET
http://www.cesnet.cz/doc/techzpravy/2007/cesnet-ipv6-multicast/

JANET
http://www.ja.net/documents/publications/technical-guides/ipv6multicast-web.pdf

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

95

References
CCO:
http://www.cisco.com/ipv6

IOS:
http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6roadmap.html

IOS-XR:
http://www.cisco.com/en/US/docs/routers/crs/software/crs_r3.9/multic ast/configuration/guide/mc39mcst.html

IPv6 Multicast and MPLS


http://www.computer.org/portal/web/csdl/doi/10.1109/ICCGI.2006.65 http://ieeexplore.ieee.org/xpl/RecentCon.jsp?punumber=4124012

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

96

Multicast Applications
Microsoft Windows Media Server/Player (911) http://www.microsoft.com/windows/windowsmedia/ default.aspx

VideoLAN www.videolan.org
DVTS (Digital Video Transport System) http://www.sfc.wide.ad.jp/DVTS/http://www.dvts.jp/en/ dvts.html Internet radio stations over IPv6 http://www.ipv6.ecs.soton.ac.uk/virginradio/
Supported on iTunes 4.5, Windows Media Player, XMMS 1.2.8, etc.

Many more applicationsGoogle is your friend :-)


BRKRST-3301 2011 Cisco Systems, Inc. All rights reserved. Cisco Public

97

Q&A

98

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

99

Recommended Reading BRKRST-3301

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

100

Recommended Reading BRKRST-3301

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

101

Recommended Reading BRKRST-3301


Deploying IPv6 in Broadband Networks - Adeel Ahmed, Salman Asadullah ISBN0470193387, John Wiley & Sons Publications

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

102

BRKRST-3301

2011 Cisco Systems, Inc. All rights reserved.

Cisco Public

112

You might also like