ACI L3 Multicast Troubleshoot – Part-3: Source and Receiver inside ACI – Topology 1
Topology:
Contents
I- Receiver sends out IGMP Report
1- Receiver on leaf-3-4 sends IGMP Join:
- IGMP entry added to leaf-3-4:
leaf3# show ip igmp groups vrf bameur_MC:VRF-MC3
Type: S - Static, D - Dynamic, L - Local, T - SSM Translated
IGMP Connected Group Membership for VRF "bameur_MC:VRF-MC3"
Group Address Type Interface Uptime Expires Last Reporter
239.252.1.1 D vlan1 00:02:38 00:04:18 172.16.30.100
Code language: CSS (css)
- (*,G) installed to leaf-3-4:
leaf3# show ip mroute vrf bameur_MC:VRF-MC3
IP Multicast Routing Table for VRF "bameur_MC:VRF-MC3"
(*, 239.252.1.1/32), uptime: 00:02:28, igmp ip pim
Incoming interface: Tunnel29, RPF nbr: 10.0.48.64
Outgoing interface list: (count: 1)
Vlan1, uptime: 00:02:28, igmp
2- IGMP Join interest Published to COOP:
Leaf-3-4 which received IGMP join will publish it to COOP:
spine1# show coop internal info repo mgroup
Repo Hdr Checksum : 31107
Repo Hdr record timestamp : 04 01 2024 17:18:52 546072850
Repo Hdr last pub timestamp : 04 01 2024 17:18:52 546357630
Repo Hdr last dampen timestamp : 01 01 1970 00:00:00 0
Repo Hdr dampen penalty : 0
Repo Hdr flags : IN_OBJ EXPORT
VRF Vnid : 2359298
mgroup src ip : 0.0.0.0
mgroup group ip : 239.252.1.1
Flags : 0x0x1 afi 0
Local leafs 2 (active: 2 deleted: 0)
Leaf 0 Info :
Leaf Repo Hdr Checksum : 0
Leaf Repo Hdr record timestamp : 04 01 2024 17:18:52 545181961
Leaf Repo Hdr last pub timestamp : 04 01 2024 17:18:52 545607110
Leaf Repo Hdr last dampen timestamp : 01 01 1970 00:00:00 0
Leaf Repo Hdr dampen penalty : 0
Leaf Repo Hdr flags : IN_OBJ
Leaf tep ip : 10.0.168.65
Leaf Flags : 0x0
Leaf 1 Info :
Leaf Repo Hdr Checksum : 0
Leaf Repo Hdr record timestamp : 04 01 2024 17:18:52 546072850
Leaf Repo Hdr last pub timestamp : 04 01 2024 17:18:52 546357630
Leaf Repo Hdr last dampen timestamp : 01 01 1970 00:00:00 0
Leaf Repo Hdr dampen penalty : 0
Leaf Repo Hdr flags : IN_OBJ
Leaf tep ip : 10.0.168.70
Leaf Flags : 0x0
oldest local publish timestamp: 04 01 2024 17:18:52 545607110
MPOD Pub id : 0.0.0.0
MPOD leafs 0 (active: 0 deleted: 0)
MSITE Pub id : 0.0.0.0
MSITE leafs 0 (active: 0 deleted: 0)
Hash: 3941556330 owner: 10.0.168.66
Code language: CSS (css)
spine1# acidiag fnvread | grep 10.0.168.65
103 1 leaf3 10.0.168.65/32 leaf active 0
spine1# acidiag fnvread | grep 10.0.168.70
104 1 leaf4 10.0.168.70/32 leaf active 0
Code language: PHP (php)
3- COOP Notify the border leafs about the IGMP Interest for the group:
# log_trace_bl_print_tool coop_trace.bl | egrep "239.252.1.1" | egrep "10.0.48.65|10.0.48.64"
[2024-04-01T18:43:52.903181000+02:00:Q:coop_lazy_obj_debug_print:12083] TID 02:[DBG_COOP_TRACE_OBJ]: addChunk SUCCEEDED: chunkId=32bb priKey {classId=a
22, key=f03b} dn=sys/coop/inst/dom-overlay-1/db-mgrpmbr/mgv4-0-mgv4-0.0.0.0-mgv4-239.252.1.1-mgv4-2359298/rsmcgrp2Leaf-[sys/coop/inst/dom-overlay-1/db-leaf
/leaf-10.0.48.64]
[2024-04-01T18:43:52.904356000+02:00:M:coop_oracle_publish_mgroup_rmt_preprocess:952] TID 29:[DBG_COOP_TRACE_DETAIL_MC]:<2359298, V0, 0.0.0.0, 239.252.1.1>
MGROUP record Op:Add received: return offset:76 ACTION:Forward
[2024-04-01T18:43:52.904359000+02:00:M:coop_oracle_process_publish_mgroup_add:1129] TID 29:[DBG_COOP_TRACE_DETAIL_MC]:<2359298, V0, 0.0.0.0, 239.252.1.1> (
1711989836:496853947) STORE message with trans_id 293 : Get MGROUP record 0xe0017628 from hash table (hash=7fd0) publish from -353410966.10.0.48 nleafs=65
flags=1 repo_hdr.flags=1
[2024-04-01T18:43:52.904363000+02:00:D:coop_objs_add_mgroup_link_generic:9460] TID 29:[DBG_COOP_TRACE_DETAIL]:Add mgv4 <1, 0.0.0.0, 239.252.1.1, 240002> to
leaf 10.0.48.65 linkage
Code language: HTML, XML (xml)
4- Stripe Winner Border leaf install (*,G):
- Leaf-1 stripe winner:
leaf1# show ip pim internal stripe-winner 239.252.1.1 vrf bameur_MC:VRF-MC3
PIM Stripe Winner info for VRF "bameur_MC:VRF-MC3" (BL count: 2)
(*, 239.252.1.1)
BLs:
Group hash 995921891 VNID 2359298
1.1.1.1 hash: 636258822 (local)
2.2.2.2 hash: 139927411
Winner: 1.1.1.1 best_hash: 636258822
Code language: CSS (css)
- leaf-1 Installed (*,G):
leaf1# show ip mroute vrf bameur_MC:VRF-MC3
IP Multicast Routing Table for VRF "bameur_MC:VRF-MC3"
(*, 239.252.1.1/32), uptime: 00:20:38, ngmvpn ip pim
Incoming interface: Ethernet1/19.187, RPF nbr: 192.168.50.2
Outgoing interface list: (count: 1) (Fabric OIF)
Tunnel17, uptime: 00:20:38, ngmvpn
5-Stripe winner leaf-1 sends (*,G) PIM join to RP:
The RP received the (*,G) from Leaf-1 and build the (*,G) tree to the receiver:
RP1# show ip mroute
(*, 239.252.1.1/32), uptime: 00:22:46, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 1)
Ethernet1/3.1058, uptime: 00:22:46, pim
II- Source start sending Multicast traffic
6-Source starts sending multicast traffic:
Source (in our example is locally learned on leaf-1-2 as well) start sending multicast traffic for the group 239.251.1.1:
leaf1# show system internal epm endpoint ip 172.16.31.12
MAC : 0050.56a0.aab2 ::: Num IPs : 1
IP# 0 : 172.16.31.12 ::: IP# 0 flags : host-tracked| ::: l3-sw-hit: Yes ::: flags2 :
Vlan id : 139 ::: Vlan vnid : 8400 ::: VRF name : bameur_MC:VRF-MC3
BD vnid : 15335397 ::: VRF vnid : 2359298
Phy If : 0x16000000 ::: Tunnel If : 0
Interface : port-channel1
Flags : 0x80005c05 ::: sclass : 49161 ::: Ref count : 5
EP Create Timestamp : 04/01/2024 00:38:46.895396
EP Update Timestamp : 04/01/2024 19:44:25.795808
EP Flags : local|vPC|IP|MAC|host-tracked|sclass|timer|
7-FHMR Register to the RP
checked via ELAM that multicast traffic from source 172.16.31.12 hit leaf-2 (bashed on vPC hash):
Leaf-2 acting as FHMR will send out PIM Register to RP 192.168.30.10:
leaf2# show ip route 192.168.30.10 vrf bameur_MC:VRF-MC3
192.168.30.10/32, ubest/mbest: 1/0
*via 192.168.60.2%bameur_MC:VRF-MC3, [20/0], 19:36:27, bgp-65001, external, tag 65033
recursive next hop: 192.168.60.2/32%bameur_MC:VRF-MC3
Code language: PHP (php)
- RP install (S,G) and send (S,G) PIM join to the source:
RP# show ip mroute
(*, 239.252.1.1/32), uptime: 04:47:06, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 1)
Ethernet1/3.1058, uptime: 04:14:56, pim
(172.16.31.12/32, 239.252.1.1/32), uptime: 05:14:02, pim mrib ip
Incoming interface: Ethernet1/7.1058, RPF nbr: 192.168.60.1, internal
Outgoing interface list: (count: 0)
Next steps may not be applicable for our design where BL (Stripe winner is also FHMR connected to the source), but for different topology, it would apply:
8-LHMR (Leaf-1) send (S,G) to the source:
Multicast traffic will flow through the (*,G) built from RP to the LHMR (which is represented by leaf-1 the Stripe winner for this multicast group), Once Leaf-1 receive the multicast traffic from source, it will by default activate LHMR functionality and send join to (S,G) and source is reachable via the fabric (as endpoint).
9-LHMR receives multicast traffic via (S,G) and send (S,G) Prune to the RP:
Once the (LHMR, Leaf-1) receives multicast traffic on the (S,G) tree, the switchover is complete and we can say LHMR joined the SPT to the source.
A (S,G) Prune message is sent from Leaf-1 toward the RP indicating that it has switched to the SPT.
Final mroute state:
Leaf-3 (Receiver leaf):
leaf3# show ip mroute vrf bameur_MC:VRF-MC3
IP Multicast Routing Table for VRF "bameur_MC:VRF-MC3"
(*, 239.252.1.1/32), uptime: 05:23:35, ip pim igmp
Incoming interface: Tunnel29, RPF nbr: 10.0.48.64
Outgoing interface list: (count: 1)
Vlan1, uptime: 04:51:26, igmp
Leaf-1 (BL stripe winner and FHMR):
leaf1# show ip mroute vrf bameur_MC:VRF-MC3
IP Multicast Routing Table for VRF "bameur_MC:VRF-MC3"
(*, 239.252.1.1/32), uptime: 05:24:54, ip pim ngmvpn
Incoming interface: Ethernet1/19.187, RPF nbr: 192.168.50.2
Outgoing interface list: (count: 1) (Fabric OIF)
Tunnel17, uptime: 04:52:44, ngmvpn
(172.16.31.12/32, 239.252.1.1/32), uptime: 04:57:34, mrib ip pim
Incoming interface: Tunnel17, RPF nbr: 10.0.128.65 (pervasive)
Outgoing interface list: (count: 1)
Tunnel17, uptime: 04:52:44, mrib, (RPF)
Leaf-2 (BL, non stripe winner and FHMR):
leaf2# show ip mroute vrf bameur_MC:VRF-MC3
IP Multicast Routing Table for VRF "bameur_MC:VRF-MC3"
(172.16.31.12/32, 239.252.1.1/32), uptime: 04:55:43, ip pim mrib
Incoming interface: Tunnel17, RPF nbr: 10.0.128.65 (pervasive)
Outgoing interface list: (count: 0)