PIM (Protocol Independent Multicast) is one of the multicast routing protocols used in networking. There are different types of PIM. One of these types is PIM-DM (PIM Dense Mode). What is PIM-DM and Why we use PIM-DM? We will learn the answer of these questions in this lesson.
Table of Contents
PIM Dense Mode (PIM-DM) is the PIM mode which uses Push Model. According to this model, firstly all the multicast traffic is flooded through the recipients. All the nodes in the network receives this traffic even if they are not related in that multicast traffic. Then, the nodes that are not interested with this traffic send prune requests. After that, these uninterested ports are pruned and the multicast traffic is sent only to the interested nodes. A Multicast Tree is built with such a flood and prune mechanism in PIM-DM.
Below, you can find an example topology, which summarizes PIM-DM Flood and Prune mechanism.
Firstly, source sends the traffic through downstream. Each of the router on the topology, floods this traffic to its downstream router.
After the traffic received by all the nodes, the uninterested nodes send prune messages. With these messages, they said that they do not want to get this multicast traffic.
After prune messages, the ports that do not want the multicast traffic is pruned. Multicast traffic is sent only to the interested nodes. With this flood and prune mechanism, an optimum source path is built from receiver to the multicast source.
PIM-DM uses only Source Tree. This is also called Source-Based Distribution Tree. Here, there is a Source Tree from multicast source to multicast receivers. This Source Tree is showed as (S, G). Here,
There is no Randevous-Point (RP) used with dense mode. RP is used with PIM Sparse Mode or PIm Sparse Dense Mode. By using it, an additional tree called Shared Tree is created beside Source Tree. We will discuss these details of Shared Tree in PIM Sparse Mode Lesson.
By the way, in PIM-DM mechanism, flood and prune process is repeated every 3 minutes. This means that, multicast source floods multicast data and prune messages also sent from uninterested receivers every three minutes.
PIM Dense mode can be used in a large multicast network in which many of the receivers use multicast data. But if many of them do not need multicast data, then using PIM Dense mode is not efficient. Because, although the receivers do not need the multicast data, multicast source flood this data to all the nodes firstly. And then a pruning process starts. This is an unnecessary process at such networks.
We have learned what is PIM-DM and how it works. Now, we will focus on the configuration of PIM Dense Mode. We will do Cisco PIM-DM Configuration. To do this, we will use the below multicast topology.
In this PIM-DM Configuration Example, firstly, we will configure IP addresses of the interfaces with the given IP addresses.
Router1(config)# interface fastEthernet 0/0
Router1(config-if)# ip address 10.0.0.1 255.255.255.0
Router1(config-if)# no shutdown
Router1(config-if)# interface fastEthernet 0/1
Router1(config-if)# ip address 20.0.0.1 255.255.255.0
Router1(config-if)# no shutdown
Router1(config-if)# exit
Router2(config)# interface fastEthernet 0/0
Router2(config-if)# ip address 10.0.0.2 255.255.255.0
Router2(config-if)# no shutdown
Router2(config-if)# interface fastEthernet 0/1
Router2(config-if)# ip address 30.0.0.1 255.255.255.0
Router2(config-if)# no shutdown
Router2(config-if)# interface loopback 0
Router2(config-if)# ip address 2.2.2.2 255.255.255.255
Router2(config-if)# exit
Router3(config)# interface fastEthernet 0/0
Router3(config-if)# ip address 20.0.0.2 255.255.255.0
Router3(config-if)# no shutdown
Router3(config-if)# interface fastEthernet 0/1
Router3(config-if)# ip address 30.0.0.2 255.255.255.0
Router3(config-if)# no shutdown
Router3(config-if)# exit
Agter ip address configuration, we will configure routing protocol to provide layer 3 reachability. We will use OSPF here.
Router1(config)# router ospf 1
Router1(config-if)# network 10.0.0.0 0.0.0.255 area 0
Router1(config-if)# network 20.0.0.0 0.0.0.255 area 0
Router1(config-if)# end
Router2(config)# router ospf 1
Router2(config-if)# network 10.0.0.0 0.0.0.255 area 0
Router2(config-if)# network 30.0.0.0 0.0.0.255 area 0
Router2(config-if)# network 2.2.2.2 0.0.0.0 area 0
Router2(config-if)# end
Router3(config)# router ospf 1
Router3(config-if)# network 20.0.0.0 0.0.0.255 area 0
Router3(config-if)# network 30.0.0.0 0.0.0.255 area 0
Router3(config-if)# end
After ip addressing and routing protocol configuration, we have provided layer 3 reachability. We will build multicast routing over layer 3. So, in this step, we will enable ip multicast routing with “ip multicast-routing” command on all the routers.
Router1(config)# ip multicast-routing
Router2(config)# ip multicast-routing
Router3(config)# ip multicast-routing
After enabling ip multicast routing, it is time to the exact step of this configuration lesson. Here, we will configure each interface to use PIM Dense Mode with “ip pim sparse-mode” command. We will use this command on all the interfaces on all the routers.
Router1(config)# interface fastEthernet 0/0
Router1(config-if)# ip pim dense-mode
Router1(config-if)# interface fastEthernet 0/1
Router1(config-if)# ip pim dense-mode
Router2(config)# interface fastEthernet 0/0
Router2(config-if)# ip pim dense-mode
Router2(config-if)# interface fastEthernet 0/1
Router2(config-if)# ip pim dense-mode
Router3(config)# interface fastEthernet 0/0
Router3(config-if)# ip pim dense-mode
Router3(config-if)# interface fastEthernet 0/1
Router3(config-if)# ip pim dense-mode
We have finished PIM-DM Configuration and we have configured our multicast network for PIM Dense mode with the required steps. Now, we can verify our configuration with the help of some ip multicast verification commands.
First of all, we can check our PIM neighbors with “show ip pim neighbor” command. This command will show us if PIM has configured correctly between neighbor routers.
Next, we can use “show ip mroute” command to check ip multicast routing table that is buld by PIM.
We can manually add a multicast receiver and do our controls on it. Let’s add a receiver with a manual IGMP Join message and check the information related with it.
Router(config)# interface GigabitEthernet 0/1
Router(config-if)# ip igmp join-group 239.1.2.3
We can check the routing information about this entrance with the below command:
Router# show ip mroute 239.1.2.3
Leave a Reply