The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes Overview of Any-Source Multicast (ASM) with Single Rendezvous point (RP) in Software-Defined Access (SD-Access) Environment.
It is recommnded that you have knowledge of Locator ID Separation Protocol (LISP) and multicast.
This document is not restricted to specific software and hardware versions.
The information in this document was created from devices in a specific lab environment. If your network is live, make sure that you understand the potential impact of any command.GUI
Devices used for this Article
Digital Network Architecture Controller (DNAC) - Version 1.2.1
Edge and Border - Cat3k Cisco Switch
Fusion - Cisco Router with Support for Inter-VRF(Virtual Route Forwarding) leaking
Topology used for this article consists of two Border Routers both bonfigured as External Borders, and two Fusion Routers with a connection to each respective Border Router. Border-1 is configured as RP, Multicast Source is connected to Fusion-2 and Multicast Receiver is connected to Edge-1.
This article doesn't cover steps to configure Fabric in Software-Defined Access (SDA) environment and starts with an explanation of steps to configure Multicast in Fabric domain for a Specific VN.
In DNAC Graphical User Interface (GUI), Under Provision -> Fabric Workflow. Multicast is configured by option "Enable Rendezvous point " on SDA-BORDER-1 device.
Then choose an Internet Protocol (IP) Pool to be used for Multicast Configuration under specifc VN. "Campus" in this example.
This Section covers verification of Multicast configuration on Fabric Devices.
SDA-BORDER-1
interface Loopback4099 <<<<<<<<<<<< Loopback Interface is created and assigned an IP from Pool selected
vrf forwarding Campus
ip address 192.168.50.1 255.255.255.255
ip pim sparse-mode <<<<<<<<<<< PIM is enabled on Interface
end
interface LISP0.4099 <<<<<<<<<<< PIM is enabled on LISP interface
ip pim sparse-mode
end
SDA-Border1#sh run | in pim|multicast ip multicast-routing <<<<<<<<<<< Multicast Routing is enabled for Global ip multicast-routing vrf Campus <<<<<<<<<<< Multicast Routing is enabled for Campus VN ip pim ssm default <<<<<<<<<< PIM SSM mode is enabled for Global for default address range ip pim vrf Campus rp-address 192.168.50.1 <<<<<<<<<< BORDER-1 Loopback4099 is configued as RP
ip pim vrf Campus register-source Loopback4099
ip pim vrf Campus ssm default <<<<<<<<<< PIM SSM mode is enabled for vrf Campus for default address range
SDA-Border1#sh run | s address-family ipv4 vrf Campus
address-family ipv4 vrf Campus
.....
network 192.168.50.1 mask 255.255.255.255 <<<<<<<<<<< RP Address is injected into BGP Table
aggregate-address 192.168.50.0 255.255.255.0 summary-only <<<<<<<<<<< Aggregate for Multicast Pool is advertised
.....
SDA-BORDER-2
interface Loopback4099 vrf forwarding Campus ip address 192.168.50.3 255.255.255.255 ip pim sparse-mode end interface LISP0.4099 ip pim sparse-mode end SDA-Border2#sh run | in pim|multicast ip multicast-routing ip multicast-routing vrf Campus ip pim ssm default ip pim vrf Campus rp-address 192.168.50.1 <<<<<<<<<< BORDER-1 Loopback4099 is configued as RP ip pim vrf Campus register-source Loopback4099 ip pim vrf Campus ssm default
SDA-Border2#sh run | s address-family ipv4 vrf Campus
address-family ipv4 vrf Campus
.....
network 192.168.50.1 mask 255.255.255.255
aggregate-address 192.168.50.0 255.255.255.0 summary-only
.....
SDA-EDGE-1
interface Vlan1021
description Configured from apic-em
mac-address 0000.0c9f.f45c
vrf forwarding Campus
ip address 172.16.10.1 255.255.255.0
ip helper-address 10.10.10.100
no ip redirects
ip local-proxy-arp
ip pim sparse-mode <<<<<<<<<<< PIM is enabled on all SVI-s under Campus VN
ip route-cache same-interface
ip igmp version 3
no lisp mobility liveness test
lisp mobility 172_16_10_0-Campus
end
interface Loopback4099 vrf forwarding Campus ip address 192.168.50.2 255.255.255.255 ip pim sparse-mode end interface LISP0.4099 ip pim sparse-mode end SDA-Edge1#sh run | in pim|multicast ip multicast-routing ip multicast-routing vrf Campus ip pim ssm default ip pim vrf Campus rp-address 192.168.50.1 <<<<<<<<<< BORDER-1 Loopback4099 is configued as RP ip pim vrf Campus register-source Loopback4099 ip pim vrf Campus ssm default
Multicast Source is connected outside the Fabric to Fusion-2 in this example. For the Multicast Stream to flow, ensure there is a PIM path from RP to Source and Receiver to Source (paths might be different!).
PIM Peering Between SDA-BORDER-1 and SDA-FUSION-1
SDA-BORDER-1 ------------------------------------------------ interface Vlan3002 <<<<<<<< Enable PIM on Handover link in Campus VN description vrf interface to External router vrf forwarding Campus ip address 10.50.50.5 255.255.255.252 no ip redirects ip pim sparse-mode ip route-cache same-interface end SDA-FUSION-1 ------------------------------------------------ ip multicast-routing ip multicast-routing vrf Campus <<<<<<<<< Enable Multicast Routing in vrf Campus
ip pim vrf Campus rp-address 192.168.50.1 <<<<<<<<< Configure BORDER-1 Loopback4099 as RP
interface Vlan3002 <<<<<<<<< Enable PIM on Fusion Interface towards Border vrf forwarding Campus ip address 10.50.50.6 255.255.255.252 ip pim sparse-mode end
PIM Peering Between SDA-BORDER-2 and SDA-FUSION-2
SDA-BORDER-2 ------------------------------------------------ interface Vlan3007 description vrf interface to External router vrf forwarding Campus ip address 10.50.50.25 255.255.255.252 no ip redirects ip pim sparse-mode ip route-cache same-interface end SDA-FUSION-2 ------------------------------------------------ ip multicast-routing distributed ip multicast-routing vrf Campus distributed ip pim vrf Campus rp-address 192.168.50.1 interface GigabitEthernet0/0/0.3007 encapsulation dot1Q 3007 vrf forwarding Campus ip address 10.50.50.26 255.255.255.252 ip pim sparse-mode no cdp enable end
PIM Peering Between SDA-FUSION-1 and SDA-FUSION-2
SDA-FUSION-1 ------------------------------------------------ interface Vlan100 description Muticast_Campus vrf forwarding Campus ip address 10.40.40.5 255.255.255.252 ip pim sparse-mode end SDA-FUSION-2 ------------------------------------------------ interface GigabitEthernet0/0/2.100 encapsulation dot1Q 100 vrf forwarding Campus ip address 10.40.40.6 255.255.255.252 ip pim sparse-mode end
Enable PIM on the interface connecting to the Source
SDA-FUSION-2 ------------------------------------------------- interface GigabitEthernet1/0/2 vrf forwarding Campus ip address 10.40.40.2 255.255.255.252 ip pim sparse-mode load-interval 30 negotiation auto end
At some point Multicast Receiver sends an Internet Group Management Protocol (IGMP) Join to Last Hop Router(LHR) in order to receive the Stream for a specific group, and Muticast Source (Server) starts sending the Multicast Stream to First Hop Router(FHR). In our case FHR is SDA-FUSION-2 and LHR is SDA-EDGE-1 and Control Plane Process is explained in the scenario where the Receiver requests a stream first, and Source starts streaming for that group afterwards.
Multicast Receiver sends an IGMP Report (Join) to LHR for Group 239.1.1.1. Receiver is connected to Gi1/0/1 (SVI 1021) on SDA-EDGE-1.
SDA-Edge1#debug ip igmp vrf Campus 239.1.1.1 IGMP debugging is on *Aug 14 23:53:06.445: IGMP(4): Received v2 Report on Vlan1021 from 172.16.10.10 for 239.1.1.1 *Aug 14 23:53:06.445: IGMP(4): Received Group record for group 239.1.1.1, mode 2 from 172.16.10.10 for 0 sources *Aug 14 23:53:06.445: IGMP(4): MRT Add/Update Vlan1021 for (*,239.1.1.1) by 0 *Aug 14 23:54:07.445: IGMP(4): Received v2 Report on Vlan1021 from 172.16.10.10 for 239.1.1.1 <<<<<<< one minute apart
SDA-Edge1#show ip igmp vrf Campus group
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter
239.1.1.1 Vlan1021 00:49:10 00:02:45 172.16.10.10 <<<<<<< Receiver is present
SDA-Edge1#
The new Mutlicast Route Watch Service determines the Reverse Path Forwarding (RPF) information towards the RP (for shared tree) and towards the Source (for Shortest Path Tree(SPT)). For LISP-reachable adresses, the next hop neighbor is represented by the remote Routing locator (RLOC) address of the upstream site.
SDA-Edge1#show ip pim vrf Campus rp mapping 239.1.1.1 PIM Group-to-RP Mappings Group(s): 224.0.0.0/4, Static RP: 192.168.50.1 (?) <<<<<<<<<<< RP is 192.168.50.1 SDA-Edge1# SDA-Edge1# SDA-Edge1#show lisp eid-table vrf Campus ipv4 map 192.168.50.1/32 <<<<<<<<< check Reachability towards the RP address LISP IPv4 Mapping Cache for EID-table vrf Campus (IID 4099), 4 entries 192.168.50.1/32, uptime: 2w5d, expires: 23:10:58, via map-reply, complete Sources: map-reply State: complete, last modified: 2w5d, map-source: 192.168.10.1 Active, Packets out: 171704(3435172 bytes) (~ 00:00:43 ago) Locator Uptime State Pri/Wgt Encap-IID 192.168.10.1 2w5d up 10/10 - <<<<<<<<<<< RLOC is 192.168.10.1 Last up-down state change: 2w5d, state change count: 1 Last route reachability change: 2w5d, state change count: 1 Last priority / weight change: never/never RLOC-probing loc-status algorithm: Last RLOC-probe sent: 00:49:02 (rtt 3ms) SDA-Edge1#show ip cef vrf Campus 192.168.50.1/32 192.168.50.1/32 nexthop 192.168.10.1 LISP0.4099 <<<<<<<<<<< RP is reachable via LISP interface SDA-Edge1#show ip mroute vrf Campus 239.1.1.1 IP Multicast Routing Table (*, 239.1.1.1), 00:50:06/00:02:57, RP 192.168.50.1, flags: SJC <<<<<<<<<<< (*,G) entry is created Incoming interface: LISP0.4099, RPF nbr 192.168.10.1 <<<<<<<<<<< Incoming interface is set as LISP interface Outgoing interface list: Vlan1021, Forward/Sparse, 00:50:06/00:02:57 <<<<<<<<<<< Outgoing Interface is set towards Receiver
Next, the LHR sends a PIM (*,G) Join Towards the RP (at one minute intervals) - if LHR is DR for that segment.
SDA-Edge1#debug ip pim vrf Campus 239.1.1.1 PIM debugging is on *Aug 15 00:03:44.592: PIM(4): Building Periodic (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Aug 15 00:03:44.593: PIM(4): Insert (*,239.1.1.1) join in nbr 192.168.10.1's queue *Aug 15 00:03:44.593: PIM(4): Building Join/Prune packet for nbr 192.168.10.1 *Aug 15 00:03:44.594: PIM(4): Adding v2 (192.168.50.1/32, 239.1.1.1), WC-bit, RPT-bit, S-bit Join *Aug 15 00:03:44.594: PIM(4): Adding LISP Unicast transport attribute in join/prune to 192.168.10.1 (LISP0.4099) *Aug 15 00:03:44.594: PIM(4): Send v2 join/prune to 192.168.10.1 (LISP0.4099) <<<<<<< PIM (*,G) Join is sent towards the RP
*Aug 15 00:04:42.892: PIM(4): Building Periodic (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Aug 15 00:04:42.892: PIM(4): Insert (*,239.1.1.1) join in nbr 192.168.10.1's queue *Aug 15 00:04:42.892: PIM(4): Building Join/Prune packet for nbr 192.168.10.1 *Aug 15 00:04:42.892: PIM(4): Adding v2 (192.168.50.1/32, 239.1.1.1), WC-bit, RPT-bit, S-bit Join *Aug 15 00:04:42.892: PIM(4): Adding LISP Unicast transport attribute in join/prune to 192.168.10.1 (LISP0.4099) *Aug 15 00:04:42.892: PIM(4): Send v2 join/prune to 192.168.10.1 (LISP0.4099) SDA-Edge1#
Once the RPF information is obtained pointing to the LISP interface, PIM has to explicitly create a neighbor structure for the corresponding RLOC. This is necessary because the upstream Tunnel Router (xTR) does not send hello messages. The new neighbor block expires when no join/prune messages have been sent to the neighbor after 2 times the standard interval time between join/prunes.
In our case, the SDA-EDGE-1 creates a PIM neighbor using the upstream/RPF RLOC address.
SDA-Edge1#show ip pim vrf Campus neighbor PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 192.168.10.1 LISP0.4099 1w5d/00:01:27 v2 0 / <<<<<<< RLOC address used for the neighbor SDA-Edge1#debug ip pim vrf Campus timers <— chatty! PIM-TIMERS debugging is on
*Aug 15 00:08:37.992: PIM(4): Building Periodic (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Aug 15 00:08:37.993: PIM(4) Twheel Start: Neighbor Timer for Nbr: 192.168.10.1. idb LISP0.4099. delay: 120000 ms. jitter 0. ...
PIM join is received on the RP(SDA-BORDER-1) from LHR(SDA-EDGE-1) over the LISP Interface
SDA-Border1#debug ip pim vrf Campus 239.1.1.1 PIM debugging is on *Aug 18 01:47:14.812: PIM(4): J/P Transport Attribute, Transport Type: Unicast *Aug 18 01:47:14.813: PIM(4): Join-list: (*, 239.1.1.1), RPT-bit set, WC-bit set, S-bit set *Aug 18 01:47:14.813: PIM(4): Check RP 192.168.50.1 into the (*, 239.1.1.1) entry *Aug 18 01:47:14.813: PIM(4): Adding register decap tunnel (Tunnel1) as accepting interface of (*, 239.1.1.1). *Aug 18 01:47:14.813: PIM(4): Add LISP0.4099/192.168.10.3 to (*, 239.1.1.1), Forward state, by PIM *G Join <<<<<< (*,G) join received from RLOC of LHR over LISP Interface *Aug 18 01:48:14.267: PIM(4): J/P Transport Attribute, Transport Type: Unicast *Aug 18 01:48:14.267: PIM(4): Join-list: (*, 239.1.1.1), RPT-bit set, WC-bit set, S-bit set *Aug 18 01:48:14.267: PIM(4): Update LISP0.4099/192.168.10.3 to (*, 239.1.1.1), Forward state, by PIM *G Join
SDA-Border1#show ip mroute vrf Campus 239.1.1.1 IP Multicast Routing Table (*, 239.1.1.1), 00:01:38/00:02:51, RP 192.168.50.1, flags: S Incoming interface: Null, RPF nbr 0.0.0.0 <<<<<<<<<<<< RP is myself hence RPF Neighbor is Null Outgoing interface list: LISP0.4099, 192.168.10.3, Forward/Sparse, 00:01:38/00:02:51 <<<<<<<<<<<< Outgoing Interface is set towards LHR RLOC
The RP(Border1) does not send any joins over the LISP interface, hence no PIM Neighbor is created on the RP over the LISP interface.
In our case, the only PIM neighbor is towards Fusion-1 over a non-LISP interface, and formed as a result of the periodic PIM Hello packets received.
SDA-Border1#debug ip pim vrf Campus hello
PIM-HELLO debugging is on
SDA-Border1#
*Aug 24 00:02:19.944: PIM(4): Received v2 hello on Vlan3002 from 10.50.50.6
*Aug 24 00:02:19.944: PIM(4): Neighbor (10.50.50.6) Hello GENID = 1315387214
SDA-Border1#
*Aug 24 00:02:49.396: PIM(4): Received v2 hello on Vlan3002 from 10.50.50.6
*Aug 24 00:02:49.397: PIM(4): Neighbor (10.50.50.6) Hello GENID = 1315387214
SDA-Border1#show ip pim vrf Campus neigh PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 10.50.50.6 Vlan3002 2w0d/00:01:31 v2 1 / DR S P G
PIM Neighbors on Fusion Routers are over non-LISP interfaces and hence are also created based on the periodic PIM Hello-s received.
SDA-FUSION-1 SDA-Fusion1#show ip pim vrf Campus neighbor PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 10.40.40.6 Vlan100 5d00h/00:01:41 v2 1 / S P G 10.50.50.5 Vlan3002 2w4d/00:01:44 v2 1 / S P G SDA-FUSION-2 SDA-Fusion2#show ip pim vrf Campus neighbor PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 10.50.50.25 Gi0/0/0.3007 2w5d/00:01:36 v2 1 / S P G 10.40.40.5 GigabitEthernet0/0/2.100 5d00h/00:01:23 v2 100/ DR S P G
When the Source starts to send traffic for the group, the FHR (SDA-FUSION-2) registers the (S,G) with the RP once it receives the first multicast packet from the Source - and if FHR is the DR on that segment.
SDA-Fusion2#show ip pim vrf Campus rp mapping 239.1.1.1 PIM Group-to-RP Mappings Group(s): 224.0.0.0/4, Static RP: 192.168.50.1 (?) <<<<<<<< RP for the Group SDA-Fusion2#show ip cef vrf Campus 192.168.50.1 192.168.50.1/32 nexthop 10.40.40.5 GigabitEthernet0/0/2.100 <<<<<<<< Next-hop Interface towards RP SDA-Fusion2#debug ip mrouting vrf Campus IP multicast routing debugging is on SDA-Fusion2#debug ip pim vrf Campus PIM debugging is on *Aug 22 21:59:42.601: PIM(2): Check RP 192.168.50.1 into the (*, 239.1.1.1) entry *Aug 22 21:59:42.601: MRT(2): (*,239.1.1.1), RPF change from /0.0.0.0 to GigabitEthernet0/0/2.100/10.40.40.5 <<<<<<<< RPF Interface is determined *Aug 22 21:59:42.601: PIM(2): Building Triggered (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Aug 22 21:59:42.601: MRT(2): Create (*,239.1.1.1), RPF (GigabitEthernet0/0/2.100, 10.40.40.5, 1/0) *Aug 22 21:59:42.602: MRT(2): (10.40.40.1,239.1.1.1), RPF install from /0.0.0.0 to GigabitEthernet1/0/2/0.0.0.0 *Aug 22 21:59:42.602: PIM(2): Adding register encap tunnel (Tunnel0) as forwarding interface of (10.40.40.1, 239.1.1.1). <<<<< Register Tunnel is created *Aug 22 21:59:42.602: MRT(2): Set the F-flag for (*, 239.1.1.1) *Aug 22 21:59:42.602: MRT(2): Set the F-flag for (10.40.40.1, 239.1.1.1) <<<<<<< Register(F) flag is set *Aug 22 21:59:42.602: MRT(2): Create (10.40.40.1,239.1.1.1), RPF (GigabitEthernet1/0/2, 0.0.0.0, 0/0) <<<<<<< (S,G) is created *Aug 22 21:59:42.602: MRT(2): Set the T-flag for (10.40.40.1, 239.1.1.1) <<<<<<< SPT (T) flag is set *Aug 22 21:59:42.629: PIM(2): Received v2 Join/Prune on GigabitEthernet0/0/2.100 from 10.40.40.5, to us *Aug 22 21:59:42.629: PIM(2): Join-list: (10.40.40.1/32, 239.1.1.1), S-bit set <<<<<<< (S,G) join is received *Aug 22 21:59:42.629: MRT(2): WAVL Insert interface: GigabitEthernet0/0/2.100 in (10.40.40.1,239.1.1.1) Successful *Aug 22 21:59:42.630: MRT(2): set min mtu for (10.40.40.1, 239.1.1.1) 18010->1500 *Aug 22 21:59:42.630: MRT(2): Add GigabitEthernet0/0/2.100/239.1.1.1 to the olist of (10.40.40.1, 239.1.1.1), Forward state - MAC built *Aug 22 21:59:42.630: PIM(2): Add GigabitEthernet0/0/2.100/10.40.40.5 to (10.40.40.1, 239.1.1.1), Forward state, by PIM SG Join *Aug 22 21:59:42.630: MRT(2): Add GigabitEthernet0/0/2.100/239.1.1.1 to the olist of (10.40.40.1, 239.1.1.1), Forward state - MAC built *Aug 22 21:59:42.630: MRT(2): Set the PIM interest flag for (10.40.40.1, 239.1.1.1)
SDA-Fusion2#show ip mroute vrf Campus 239.1.1.1
IP Multicast Routing Table
(*, 239.1.1.1), 00:01:17/stopped, RP 192.168.50.1, flags: SPF
Incoming interface: GigabitEthernet0/0/2.100, RPF nbr 10.40.40.5
Outgoing interface list: Null
(10.40.40.1, 239.1.1.1), 00:01:17/00:02:14, flags: FT
Incoming interface: GigabitEthernet1/0/2, RPF nbr 0.0.0.0 <<<<<<<< RPF neighbor is 0.0.0.0 as the Source is directly connected
Outgoing interface list:
Gi0/0/0.3007, Forward/Sparse, 00:01:17/00:03:10
SDA-Fusion2# SDA-Fusion2#show interface tunnel 0 <<<<<<<< Register Tunnel is created between FHR and RP Tunnel0 is up, line protocol is up Hardware is Tunnel Description: Pim Register Tunnel (Encap) for RP 192.168.50.1 on VRF Campus Interface is unnumbered. Using address of GigabitEthernet0/0/2.100 (10.40.40.6) MTU 9972 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel linestate evaluation up Tunnel source 10.40.40.6 (GigabitEthernet0/0/2.100), destination 192.168.50.1
RP (BORDER-1) receives the Register from the FHR, which triggers a (S,G) Join to be sent towards the FHR, and also a Register-Stop towards the FHR - once stream is received natively on the RP.
SDA-Border1#debug ip mrouting vrf Campus 239.1.1.1 IP multicast routing debugging is on *Aug 18 02:29:05.186: PIM(4): Received v2 Register on Vlan3002 from 10.40.40.6 <<<<<<< PIM Register is received from FHR *Aug 18 02:29:05.186: for 10.40.40.1, group 239.1.1.1 *Aug 18 02:29:05.187: PIM(4): Adding register decap tunnel (Tunnel1) as accepting interface of (10.40.40.1, 239.1.1.1). <<<<<<< Register tunnel is created *Aug 18 02:29:05.187: MRT(4): (10.40.40.1,239.1.1.1), RPF install from /0.0.0.0 to Vlan3002/10.50.50.6 *Aug 18 02:29:05.188: MRT(4): Create (10.40.40.1,239.1.1.1), RPF (Vlan3002, 10.50.50.6, 20/0) <<<<<<< (S,G) is created and RPF is resolved *Aug 18 02:29:05.188: MRT(4): WAVL Insert LISP interface: LISP0.4099 in (10.40.40.1,239.1.1.1) Next-hop: 192.168.10.3 Outer-source: 0.0.0.0 Successful *Aug 18 02:29:05.188: MRT(4): set min mtu for (10.40.40.1, 239.1.1.1) 18010->17892 *Aug 18 02:29:05.189: MRT(4): Add LISP0.4099/192.168.10.3 to the olist of (10.40.40.1, 239.1.1.1), Forward state - MAC not built <<<<<< LISP OIF is inherited from (*,G) *Aug 18 02:29:05.189: PIM(4): Insert (10.40.40.1,239.1.1.1) join in nbr 10.50.50.6's queue *Aug 18 02:29:05.189: PIM(4): Building Join/Prune packet for nbr 10.50.50.6 *Aug 18 02:29:05.189: PIM(4): Adding v2 (10.40.40.1/32, 239.1.1.1), S-bit Join *Aug 18 02:29:05.189: PIM(4): Send v2 join/prune to 10.50.50.6 (Vlan3002) <<<<<<< (S,G) join is sent towards the Source *Aug 18 02:29:05.272: PIM(4): J/P Transport Attribute, Transport Type: Unicast *Aug 18 02:29:05.272: PIM(4): Join-list: (*, 239.1.1.1), RPT-bit set, WC-bit set, S-bit set *Aug 18 02:29:05.272: PIM(4): Update LISP0.4099/192.168.10.3 to (*, 239.1.1.1), Forward state, by PIM *G Join *Aug 18 02:29:05.272: MRT(4): Update LISP0.4099/192.168.10.3 in the olist of (*, 239.1.1.1), Forward state - MAC not built *Aug 18 02:29:05.272: PIM(4): Prune-list: (10.40.40.1/32, 239.1.1.1) RPT-bit set *Aug 18 02:29:05.273: PIM(4): Prune LISP0.4099/192.168.10.3 from (10.40.40.1/32, 239.1.1.1) <<<<<<< (S,G) Prune is received from Edge1 *Aug 18 02:29:05.273: MRT(4): Delete LISP0.4099/192.168.10.3 from the olist of (10.40.40.1, 239.1.1.1) *Aug 18 02:29:05.273: PIM(4): Insert (10.40.40.1,239.1.1.1) prune in nbr 10.50.50.6's queue - deleted *Aug 18 02:29:05.273: PIM(4): Building Join/Prune packet for nbr 10.50.50.6 *Aug 18 02:29:05.273: PIM(4): Adding v2 (10.40.40.1/32, 239.1.1.1), S-bit Prune *Aug 18 02:29:05.273: PIM(4): Send v2 join/prune to 10.50.50.6 (Vlan3002) *Aug 18 02:29:05.439: PIM(4): J/P Transport Attribute, Transport Type: Unicast *Aug 18 02:29:07.193: PIM(4): Received v2 Register on Vlan3002 from 10.40.40.6 *Aug 18 02:29:07.193: for 10.40.40.1, group 239.1.1.1 *Aug 18 02:29:07.194: PIM(4): Send v2 Register-Stop to 10.40.40.6 for 10.40.40.1, group 239.1.1.1 <<<<<<< Register-Stop is sent towards FHR SDA-Border1#show ip mroute vrf Campus 239.1.1.1 IP Multicast Routing Table (*, 239.1.1.1), 00:51:28/00:02:44, RP 192.168.50.1, flags: S Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: LISP0.4099, 192.168.10.3, Forward/Sparse, 00:51:28/00:02:44 (10.40.40.1, 239.1.1.1), 00:09:37/00:01:24, flags: P <<<<<<<<<<<< (S,G) is created but Pruned flag is set Incoming interface: Vlan3002, RPF nbr 10.50.50.6 <<<<<<<<<<<< Incoming interface and RPF neighbor Outgoing interface list: Null
SDA-Border1#show ip rpf vrf Campus 10.40.40.1
RPF information for ? (10.40.40.1)
RPF interface: Vlan3002 <<<<<<<<<< RPF interface towards the Source
RPF neighbor: ? (10.50.50.6) <<<<<<<<<< RPF neighbor - must be a PIM neighbor
RPF route/mask: 10.40.40.0/30
RPF type: unicast (bgp 65005) <<<<<<<<<< RPF information coming from unicast RIB/BGP
Doing distance-preferred lookups across tables
RPF topology: ipv4 multicast base, originated from ipv4 unicast base
SDA-Border1#
SDA-Border1#show ip route vrf Campus 10.40.40.1
Routing Table: Campus
Routing entry for 10.40.40.0/30
Known via "bgp 65005", distance 20, metric 0
Tag 65004, type external
Last update from 10.50.50.6 2w6d ago
Routing Descriptor Blocks:
* 10.50.50.6, from 10.50.50.6, 2w6d ago
Route metric is 0, traffic share count is 1
AS Hops 1
Route tag 65004
MPLS label: none
MPLS Flags: NSF
SDA-Border1#
SPT is being pruned by the Edge-1 - let's go to the LHR to see why.
After receiving the multicast data forwarded by the RP, (S,G) entry is created on the LHR.
Next, the LHR will switch over to Shortest Path Tree (SPT) by sending a (S,G) Join towards the Source. This is sent on the RPF interface towards the Source.
SDA-Edge1# *Aug 18 02:19:53.759: MRT(4): Create (10.40.40.1,239.1.1.1), RPF (unknown, 0.0.0.0, 0/0) <<<<<<<<< (S,G) is created on LHR *Aug 18 02:19:53.759: MRT(4): WAVL Insert interface: Vlan1021 in (10.40.40.1,239.1.1.1) Successful *Aug 18 02:19:53.759: MRT(4): set min mtu for (10.40.40.1, 239.1.1.1) 18010->1500 *Aug 18 02:19:53.759: MRT(4): Add Vlan1021/239.1.1.1 to the olist of (10.40.40.1, 239.1.1.1), Forward state - MAC not built <<<<<<< OIL is inherited from (*,G) *Aug 18 02:19:53.759: MRT(4): Set the J-flag for (10.40.40.1, 239.1.1.1) <<<<<<<< SPT Join Flag is set *Aug 18 02:19:53.762: MRT(4): (10.40.40.1,239.1.1.1), RPF change from /0.0.0.0 to LISP0.4099/192.168.10.2 <<<<<<<< RPF interface is resolved *Aug 18 02:19:53.762: MRT(4): Set the T-flag for (10.40.40.1, 239.1.1.1) *Aug 18 02:19:53.763: PIM(4): Insert (10.40.40.1,239.1.1.1) join in nbr 192.168.10.2's queue *Aug 18 02:19:53.763: PIM(4): Building Join/Prune packet for nbr 192.168.10.2 *Aug 18 02:19:53.763: PIM(4): Adding v2 (10.40.40.1/32, 239.1.1.1), S-bit Join *Aug 18 02:19:53.763: PIM(4): Adding LISP Unicast transport attribute in join/prune to 192.168.10.2 (LISP0.4099) *Aug 18 02:19:53.763: PIM(4): Send v2 join/prune to 192.168.10.2 (LISP0.4099) <<<<<<<< (S,G) Join towards the Source is sent *Aug 18 02:19:53.826: PIM(4): Building Periodic (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Aug 18 02:19:53.826: PIM(4): Insert (*,239.1.1.1) join in nbr 192.168.10.1's queue *Aug 18 02:19:53.826: PIM(4): Insert (10.40.40.1,239.1.1.1) sgr prune in nbr 192.168.10.1's queue *Aug 18 02:19:53.826: PIM(4): Building Join/Prune packet for nbr 192.168.10.1 *Aug 18 02:19:53.826: PIM(4): Adding v2 (192.168.50.1/32, 239.1.1.1), WC-bit, RPT-bit, S-bit Join *Aug 18 02:19:53.827: PIM(4): Adding v2 (10.40.40.1/32, 239.1.1.1), RPT-bit, S-bit Prune *Aug 18 02:19:53.827: PIM(4): Adding LISP Unicast transport attribute in join/prune to 192.168.10.1 (LISP0.4099) *Aug 18 02:19:53.827: PIM(4): Send v2 join/prune to 192.168.10.1 (LISP0.4099) <<<<<<<<< (S,G) Prune towards the RP is sent *Aug 18 02:20:08.323: MRT(4): Update (*,239.1.1.1), RPF (LISP0.4099, 192.168.10.1, 1/1) *Aug 18 02:20:08.323: MRT(4): Update Vlan1021/239.1.1.1 in the olist of (*, 239.1.1.1), Forward state - MAC not built *Aug 18 02:20:08.323: MRT(4): Update Vlan1021/239.1.1.1 in the olist of (10.40.40.1, 239.1.1.1), Forward state - MAC not built SDA-Edge1#show ip mroute vrf Campus 239.1.1.1 IP Multicast Routing Table (*, 239.1.1.1), 00:43:35/stopped, RP 192.168.50.1, flags: SJC Incoming interface: LISP0.4099, RPF nbr 192.168.10.1 Outgoing interface list: Vlan1021, Forward/Sparse, 00:43:35/00:02:29 (10.40.40.1, 239.1.1.1), 00:01:45/00:01:14, flags: JT <<<<<<<<<<<< (S,G) is created Incoming interface: LISP0.4099, RPF nbr 192.168.10.2 <<<<<<<<<<<< Border-2 is the RPF neighbor towards the Source Outgoing interface list: Vlan1021, Forward/Sparse, 00:01:47/00:02:27 SDA-Edge1#show lisp eid-table vrf Campus ipv4 map 10.40.40.1 <<<<<<<< LISP lookup for the Source LISP IPv4 Mapping Cache for EID-table vrf Campus (IID 4099), 5 entries 0.0.0.0/1, uptime: 2w1d, expires: 18:05:53, via map-reply, forward-native Sources: map-reply State: forward-native, last modified: 2w1d, map-source: 192.168.10.1 Active, Packets out: 106458(41136237 bytes) (~ 00:00:38 ago) Encapsulating to proxy ETR <<<<<<<<< No specific entry is known, forwarding to Proxy ETR SDA-Edge1#show ip cef vrf Campus 10.40.40.1 detail 0.0.0.0/1, epoch 0, flags [subtree context, check lisp eligibility], per-destination sharing SC owned,sourced: LISP remote EID - locator status bits 0x00000000 LISP remote EID: 106468 packets 41140303 bytes fwd action encap LISP source path list nexthop 192.168.10.1 LISP0.4099 <<<<<<<<<< Load balancing towards 2 Proxy ETR-s nexthop 192.168.10.2 LISP0.4099 2 IPL sources [no flags] nexthop 192.168.10.1 LISP0.4099 nexthop 192.168.10.2 LISP0.4099 SDA-Edge1#show ip cef vrf Campus exact-route 192.168.50.2 10.40.40.1 <<<<<<<<< CEF hashing points towards Border-2 192.168.50.2 -> 10.40.40.1 =>IP adj out of GigabitEthernet1/0/11, addr 192.168.23.2 SDA-Edge1#show ip rpf vrf Campus 10.40.40.1
RPF information for ? (10.40.40.1)
RPF interface: LISP0.4099
RPF neighbor: ? (192.168.10.2) <<<<<<<<<< Hence SPT Join is sent towards Border-2
RPF route/mask: 0.0.0.0/1
RPF type: unicast ()
Doing distance-preferred lookups across tables
RPF topology: ipv4 multicast base
SDA-Edge1#
Since the (S,G) Join is sent towards Border-2 over the LISP Interface, a new PIM neighbor is created on Edge-1
SDA-Edge1#show ip pim vrf Campus neighbor PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 192.168.10.2 LISP0.4099 00:07:32/00:01:22 v2 0 / <<<<<<<< Neighbor towards Border-2 is created 192.168.10.1 LISP0.4099 2w1d/00:01:58 v2 0 /
As Border-2 is in the Data Path for the multicast stream, it has to perform Explicit RLOC Tracking to track the RLOC of Downstream XTR-s for Unicast Replication of the packets.
SDA-Border2#show ip mroute vrf Campus 239.1.1.1 IP Multicast Routing Table (*, 239.1.1.1), 00:23:00/stopped, RP 192.168.50.1, flags: SP Incoming interface: LISP0.4099, RPF nbr 192.168.10.1 Outgoing interface list: Null (10.40.40.1, 239.1.1.1), 00:12:35/00:02:52, flags: T <<<<<<< SPT flag is set Incoming interface: Vlan3007, RPF nbr 10.50.50.26 <<<<<<< RPF neighbor is based on RPF towards the Source - must be a PIM neighbor Outgoing interface list: LISP0.4099, 192.168.10.3, Forward/Sparse, 00:12:35/00:02:45 <<<<<<< OIL created from (S,G) join received from LHR and containing LHR's RLOC info which has to be tracked
SDA-Border2#show ip mfib vrf Campus 239.1.1.1 10.40.40.1
Entry Flags: C - Directly Connected, S - Signal, IA - Inherit A flag,
ET - Data Rate Exceeds Threshold, K - Keepalive
DDE - Data Driven Event, HW - Hardware Installed
ME - MoFRR ECMP entry, MNE - MoFRR Non-ECMP entry, MP - MFIB
MoFRR Primary, RP - MRIB MoFRR Primary, P - MoFRR Primary
MS - MoFRR Entry in Sync, MC - MoFRR entry in MoFRR Client.
I/O Item Flags: IC - Internal Copy, NP - Not platform switched,
NS - Negate Signalling, SP - Signal Present,
A - Accept, F - Forward, RA - MRIB Accept, RF - MRIB Forward,
MA - MFIB Accept, A2 - Accept backup,
RA2 - MRIB Accept backup, MA2 - MFIB Accept backup
Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kbits per second
Other counts: Total/RPF failed/Other drops
I/O Item Counts: FS Pkt Count/PS Pkt Count
VRF Campus
(10.40.40.1,239.1.1.1) Flags: HW
SW Forwarding: 0/0/0/0, Other: 0/0/0
HW Forwarding: 176/0/122/0, Other: 0/0/0 <<<<<<< Multicast stream is forwarded in h/w
Vlan3007 Flags: A
LISP0.4099, 192.168.10.3 Flags: F NS
Pkts: 0/0
SDA-Border2#sh ip mfib vrf Campus 239.1.1.1 10.40.40.1 count
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)
VRF Campus
6 routes, 2 (*,G)s, 3 (*,G/m)s
Group: 239.1.1.1
Source: 10.40.40.1,
SW Forwarding: 0/0/0/0, Other: 0/0/0
HW Forwarding: 182/0/122/0, Other: 0/0/0 <<<<<<<< Counter is incrementing
Totals - Source count: 1, Packet count: 182
Groups: 1, 1.00 average sources per group
SDA-Border2#