PIM Sparse Mode Introduction
PIM-SM is just like PIM-DM mode which uses unicast routing to perform RPF to forward the multicast traffic.
PIM-SM Explicit Join model:
This model ensure that multicast traffic can only be sent to those location of that network that specifically request for it and this can be easily done by PIM-SM joins which are sent hop by hop towards root node of the tree which is RP and as join are sent hop by hop the tree is created and by help of this tree multicast traffic can be forwarded down to host.
When any multicast traffic is not needed, PIM-SM will send the prune message up the tree towards root node to prune off all unnecessary traffic and likewise the interface will be removed from OIL list.
There are two type of tree PIM-SM follows:
- PIM-SM Shared Tree
- PIM-SM shortest path tree
We will discuss each of the scenario when these trees are used under which circumstances.
PIM-SM Shared Trees
PIM-SM mode works on unidirectional tree model where multicast traffic flows from Source to RP and from RP it is sent down to shared tree members, that is why this type of tree is also called as RPT (RP trees). To make this happen the Source must get registered to RP and all members of the Tree who wants the multicast traffic must sent join to RP to form shared tree and after this from source multicast traffic can flow to destination.
PIM-SM Shared Tree Joins
We can understand this by following example, that in below figure H1 has just joined the multicast group G via IGMP membership report.
As soon as R5 received the IGMP report, it will create (*, G) entry and in outgoing list it will enter fa0/0 marked RED and will send the (*, G) join to RP to join the shared tree.
R3 being the RP does not have (*, G) entry, so it will create the (*, G) entry and update its OIL with fa0/1 of R3 towards R5 marked RED.
Now from RP the shared tree has been formed and if RP receives the Multicast traffic for group G, the host H1 will receive it. Now let’s suppose another receiver H2 join at R6 and send the IGMP membership report to join group G.
Now if R6 does not have (*, G) entry R6 will create it and update its OIL with fa0/0 of R6 marked RED and will send the (*, G) join to R3.
Now when R5 receives the (*, G) I will find that it already has (*, G) entry for Group G so it will simply add its fa0/0 interface in OIL list marked RED.
The above figure will be the final shared tree which will be created and tree branches are red marked Lines includes R3 and R5 and R6.