PIM Sparse-Dense Mode Configuration
PIM-SMDM is an integrated protocol which handles both sparse groups and dense groups at the same time. In sparse-dense mode, if the group is in dense mode, the interface will be treated as dense mode. If the group is in sparse mode, the interface will be treated in sparse mode. The group is sparse if the router knows about an RP for that group.
Note: PIM-SMDM is not supported for ZebIC releases.
Configuration Steps
The required steps to configure PIM-SMDM are the following:
• Example for the group operating in dense-mode having no RP
All multicast group states are dynamically maintained as the result of IGMP Report/Leave and PIM Join/Prune messages.
This section provides the steps to configure the PIM-SMDM feature. Configuration steps and examples are used for two relevant scenarios. The following figure displays the network topology used in these examples:
Enabling IP Multicast Routing
Enable IP multicast routing on all of the PIM routers inside the PIM domain:
#configure terminal | Enter configure mode. |
(config)#ip multicast-routing | Enable IP multicast routing. |
(config)#exit | Exit Configure mode. |
Enabling PIM-SMDM
Enable PIM-SMDM on all participating interfaces within each of routers inside the PIM domain on which you want to run PIM. In the following sample configuration, both eth1 and eth2 are enabled for PIM-SMDM on the router.
#configure terminal | Enter configure mode. |
(config)#interface eth1 | Specify the interface (eth1) to be configured and Enter interface mode. |
(config-if)#ip pim sparse-dense-mode | Enable PIM sparse-dense mode on the interface. |
(config-if)#exit | Exit interface mode. |
(config)#interface eth2 | Specify the interface (eth2) to be configured and Enter interface mode. |
(config-if)# ip pim sparse-dense-mode | Enable PIM sparse -dense mode on the interface. |
(config-if)#exit | Exit interface mode. |
Validation
Here is the sample configuration for Router_C:
hostname Router_C
!
interface eth0
!
interface eth1
ip pim sparse-dense-mode
!
interface eth2
ip pim sparse-dense-mode
!
interface lo
!
!
ip multicast-routing
The show ip pim interface command displays the interface details for Router_C.
Router_C#show ip pim interface
Address Interface VIFindex Ver/ Nbr
Mode Count
192.168.1.10 eth1 0 v2/SD 0
172.16.1.10 eth2 2 v2/SD 1
Sparse Mode Operation versus Dense Mode Operation
The following examples differentiates the group operating in sparse mode versus dense mode:
• Sparse mode operation when the RP is present for the group
• Dense mode operation when there is no RP for the group
Sparse Mode Operation
Configuring Rendezvous Point Statically for PIM-SMDM
Every PIM multicast group needs to be associated with the IP address of a Rendezvous Point (RP), which is a router that resides in a multicast network domain. The address of the RP is used as the root of a group-specific distribution tree. All nodes in the domain that want to receive traffic sent to the group are aware of the address of the RP. For all senders to reach all receivers within a group, all routers in the domain must be able to map to the RP address configured for the group. There can be several RPs configured in a network deploying PIM-SM, each serving a different group.
You can statically configure a RP by specifying the RP address in every router in the PIM domain. The use of statically configured RPs is ideal for small network environments or ones that do not require many RPs and/or require changing the assignment of the RPs often. Changing the assignment of an RP requires the re-configuration of the RP address in all of the routers in the PIM domain.
In static RP configurations, RP failover is not available.
When configuring the RP statically, do the following:
• On every router, include the ip pim rp-address A.B.C.D statement even if a router does not have any source or group member attached to it
• Assign only one RP address for a multicast group in the PIM domain
Using the topology depicted in
Figure 9-11,
Router_C is the RP, and all routers are statically configured with RP information. Host_1 and Host_2 join group 224.0.1.3 for all the sources. They send the IGMP membership report to Subnet 1. Two routers are attached to Subnet 1,
Router_E and
Router_F; both have default DR priority on
eth1. Since
Router_E has a higher IP address on interface
eth1, it becomes the Designated Router, and is responsible for sending Join messages to the RP (
Router_C).
Topology
PIM-SMDM Configuration Topology (a)
Configure Static RP
#configure terminal | Enter configure mode. |
(config)#ip pim rp-address 10.10.1.5 | Statically configure an RP address for multicast groups. |
(config)#exit | Exit Configure mode. |
Validation
Here is the sample configuration for Router_D:
hostname Router_D
!
interface eth0
!
interface eth1
ip pim sparse-dense-mode
!
interface eth2
ip pim sparse-dense-mode
!
interface lo
!
!
ip multicast-routing
ip pim rp-address 10.10.1.5
!
RP Details
At Router_D, the show ip pim rp mapping command shows that 10.10.1.5 is the RP for all multicast groups 224.0.0.0/4, and is statically configured. All other routers will have a similar output:
Router_D#sh ip pim rp mapping
PIM Group-to-RP Mappings
Override RP cnt: 0
Group(s): 224.0.0.0/4, Static
RP: 10.10.1.5
Uptime: 00:01:45
At Router_D, use the show ip pim rp-hash command to display the selected RP for a specified group (224.0.1.3):
Router_D#show ip pim rp-hash 224.0.1.3
RP: 10.10.5.37
Interface Details
The show ip pim interface command displays the interface details for Router_E, and shows that Router_E is the Designated Router on Subnet 1.
Router_E#show ip pim interface
Address Interface VIFindex Ver/ Nbr DR DR
Mode Count Prior
192.168.1.10 eth1 0 v2/SD 1 1 192.168.1.10
172.16.1.10 eth2 2 v2/SD 1 1 172.16.1.10
IP Multicast Routing Table
Note: The multicast routing table displays for an RP router are different from other routers.
The show ip pim mroute command displays the IP multicast routing table. In this table, the following fields are defined:
RPF nbr
Displays the unicast next-hop to reach RP.
and mask length.
RPF idx
Displays the incoming interface for this (*, G) state.
RP
Displays the IP address for the RP router
B
Displays the bidirectional pim mode
The leading dots ....
Stand for VIF index
Router_E#show ip pim mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
(*, 224.0.1.3)
RP: 10.10.1.5
RPF nbr: 172.16.1.2
RPF idx: eth2
Upstream State: JOINED
Local ................................
Joined j...............................
Asserted ................................
Outgoing o...............................
At Router_E, eth2 is the incoming interface of the (*, G) entry, and eth1 is on the outgoing interface list of the
(*, G) entry. This means that there is a group member through eth1, and the RP is reachable through eth2.
The 0 position on this 32-bit index is for eth1 (as illustrated in the interface display above). The j on the 0 index indicates that the Join has come from eth1.
Since Router_C is the RP, and the root of this multicast tree, the show ip pim mroute command on Router_C shows RPF nbr as 0.0.0.0 and RPF idx as none.
Router_C#show ip pim mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
(*, 224.0.1.3)
RP: 10.10.1.5
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: JOINED
Local ................................
Joined j...............................
Asserted ................................
Outgoing o...............................
Dense-mode Operation
Topology
In this network topology, the Source_1 address is 10.10.1.52 and the group address is set to 224.0.1.3.
PIM-SMDM Configuration Topology (b)
In this network topology, the Source_1 address is 10.10.1.52 and the group address is set to 224.0.1.3
In this example all routers are running PIM-SMDM
1. Host_1 sends an IGMP membership report to Subnet 1
2. After Router_C receives this report, it associates its receiving interface, eth1, with the group reported in the IGMP message, for example, group1.
3. Source_1 then sends a data packet for group1.
4. Every router creates an (S,G) entry in the multicast routing table.
5. When the data packet reaches Router_C, it forwards via the interface, eth1, because there is a local member on this interface for this group. Router_C has a downstream receiver, so it does not send a prune message to its upstream neighbor router, Router_E.
Validation
Enter the commands listed in this section to confirm the previous configurations.
IP Multicast Routing Table
The show ip pim mroute command displays the IP multicast routing table.
Router_C#show ip mroute
IP Multicast Routing Table
Flags: I - Immediate Stat, T - Timed Stat, F - Forwarder installed
Timers: Uptime/Stat Expiry Interface State:
Interface (TTL) (10.10.1.52, 224.0.1.3), uptime 00:00:15
Owner PIM-DM, Flags: F
Incoming interface: eth2
Outgoing interface list:
eth1 (1)
IP PIM-SMDM Multicast Routing Table
The show ip pim dense-mode mroute command displays the IP PIM-DM multicast routing table
Router_C#show ip pim mroute
PIM-DM Multicast Routing Table (10.10.1.52, 224.0.1.3)
RPF Neighbor: 172.16.1.2, Nexthop: 172.16.1.2, eth2
Upstream IF: eth2
Upstream State: Forwarding
Assert State: NoInfo
Downstream IF List:
eth1, in 'olist': Downstream State: NoInfo Assert State: NoInfo