It's time to do a deep dive on the packets and see what they have to say
about the PIM prune methods used in PIM dense mode.
I'm going to focus on the PIM options in this part,
although it is important to notice that a PIM Join/Prune is
sent to the ALL‑PIM‑ROUTERS multicast group.
All the routers involved with multicast delivery need to know
if another router has sent a message as a PIM join or prune
affects the whole shared segment.
The Type for this PIM message is 3, which is a Join/Prune.
PIM uses both Join and Prune in the same message because it is either inclusive
or exclusive of the requested multicast group and/or source.
Under PIM Options,
we can see that the Upstream neighbor is MCAST 4's PIM address
because it's the designated router for the segment.
Below that, we're requesting one group as part of this PIM Join/Prune message.
Group 0 refers to the first record of the message.
PIM Join/Prune messages organize the records by the requested multicast groups.
We can see the Group is 239.3.2.1, which is an IPv4 multicast address.
The number of joins is 0 because this is a PIM Prune.
There's 1 prune requested for the source 10.99.1.100,
which is the source sending to the group.
This prune is being sent because MCAST 3,
the router sending the prune message,
will not be the router delivering multicast to the segment.
Because of this,
it sends a PIM Prune so that its downstream interface can be pruned from
the outgoing interface list of the sending router.
Because MCAST 5 has a receiver downstream,
it needs to override that prune message,
so it sends a PIM join on to the shared segment,
asking to remain in the _____ of the router delivering multicast,
which will cancel the prune for this interface on MCAST 4. MCAST 3 will
still remove the downstream interface from its own _____,
which will keep a new prune from being sent again. Examining the
packet capture, we can see that it looks almost identical to the
prune sent by MCAST 3; this is because it is the same PIM message
with different options set.
The number of joins is 1, the sources requested is
10.99.1.100, which is the source that was flooded downstream to be learned by the multicast routers.