OcNOS-SP : Multicast Guide : Multicast Configuration Guide : PIM Source-Specific Multicast Configuration
PIM Source-Specific Multicast Configuration
PIM source-specific multicast (SSM) uses a subset of PIM sparse mode and IGMP version 3 (IGMPv3) for ipv4 and MLDv2 for ipv6 to allow a client to receive multicast traffic directly from the source. PIM SSM uses the PIM sparse-mode functionality to create an SPT between the receiver and the source, but builds the SPT without the help of an RP.
PIM-SSM Configuration
The required steps to configure PIM-SSM are the following:
Enable IP multicast on each PIM router (see Enabling IP Multicast Routing)
Enable PIM-SM on the desired interfaces (see Enable PIM-SM on an Interface)
Configure PIM-SSM on router.
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-SSM feature. Configuration steps and examples are used for two relevant scenarios.
Topology
The following figure displays the network topology used in these examples.
PIM-SSM Configuration Topology
Enable IP Multicast Routing on all Routers
#configure terminal
Enter configure mode.
(config)#ip multicast-routing
Enable IP multicast routing.
(config)#ipv6 multicast-routing
Enable IPv6 multicast routing.
(config)#commit
Commit the transaction.
Enable PIM SSM Default on all Routers
 
(#configure terminal
Enter configure mode.
(config)# ip pim ssm default
Enable IP pim ssm.
(config)# ipv6 pim ssm default
Enable IPv6 pim ssm.
(config)#commit
Commit the transaction.
Enable PIM-SSM configuration on Router A
In the following sample configuration, both eth1 and eth2 are enabled for PIM-SSM 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 address 10.1.1.1/24
Configure the IP address for eth1.
(config-if)#ipv6 address 001::1/64
Configure the IPv6 address for eth1.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3
(config-if)#ipv6 mld version 2
Enable mld version2
(config-if)#exit
Exit interface mode.
(config)#interface eth2
Specify the interface (eth2) to be configured
and Enter interface mode.
(config-if)#ip address 100.1.1.1/24
Configure the IP address for eth2.
(config-if)#ipv6 address 2001::1/24
Configure the IPv6 address for eth2.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3.
(config-if)#ipv6 mld version 2
Enable mld version2.
(config-if)#commit
Commit the transaction.
Enable PIM-SSM configuration on Router B
In the following sample configuration, both eth1 and eth2 are enabled for PIM-SSM on the router.
 
#configure terminal
Enter configure mode.
(config)#interface eth2
Specify the interface (eth2) to be configured and enter interface mode.
(config-if)#ip address 10.1.1.2/24
Configure the IP address for eth2.
(config-if)#ipv6 address 3001::2/64
Configure the IPv6 address for eth2.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3
(config-if)#ipv6 mld version 2
Enable mld version2
(config-if)#exit
Exit interface mode.
(config)#interface eth1
Specify the interface (eth1) to be configured and enter interface mode.
(config-if)#ip address 11.1.1.1/24
Configure the IP address for eth1.
(config-if)#ipv6 address 4001::1/24
Configure the IPv6 address for eth1.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3.
(config-if)#ipv6 mld version 2
Enable mld version2.
(config-if)#commit
Commit the transaction.
Enable PIM-SSM configuration on Router C
In the following sample configuration, both eth1 and eth2 are enabled for PIM-SSM on the router.
 
#configure terminal
Enter configure mode.
(config)#interface eth2
Specify the interface (eth2) to be configured and enter interface mode.
(config-if)#ip address 11.1.1.2/24
Configure the IP address for eth2.
(config-if)#ipv6 address 4001::2/64
Configure the IPv6 address for eth2.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3
(config-if)#ipv6 mld version 2
Enable mld version2
(config-if)#exit
Exit interface mode.
(config)#interface eth1
Specify the interface (eth1) to be configured and enter interface mode.
(config-if)#ip address 101.1.1.1/24
Configure the IP address for eth1.
(config-if)#ipv6 address 5001::1/24
Configure the IPv6 address for eth1.
(config-if)#ip pim sparse-mode
Enable PIM sparse mode on the interface.
(config-if)#ipv6 pim sparse-mode
Enable ipv6 PIM sparse mode on the interface.
(config-if)#ip igmp version 3
Enable igmp version3.
(config-if)#ipv6 mld version 2
Enable mld version2.
(config-if)#commit
Commit the transaction.
Validation
Enter the commands listed in this section to confirm the previous configurations.
Interface Details
The show ip pim interface command displays the interface details for Router_C, and shows that Router_C is the Designated Router on Subnet 1.
Router_C#show ip pim interface
Address Interface VIFindex Ver/ Nbr DR DR
Mode Count Prior
192.168.1.10 eth1 0 v2/S 1 1 192.168.1.10
172.16.1.10 eth2 2 v2/S 1 1 172.16.1.10
 
 
 
ROUTER C#show ipv6 pim interface
Total number of PIM interfaces:2
Interface VIFindex Ver/ Nbr DR
Mode Count Prior
eth2 0 v2/D 1 1
Address : fe80::eac5:7aff:fea8:7cb9
Global Address: 3001::1
eth1 1 v2/D 0 1
Address : fe80::eac5:7aff:fea8:7cc3
Global Address: 2001::1
 
 
 
ROUTER C#sh ipv6 pim neighbor
 
Total number of PIM neighbors:2
 
Neighbor Address Interface Uptime/Expires DR
Pri/Mode
fe80::eac5:7aff:fea8:7cb9 eth1 01:29:52/00:01:18 1 /
fe80::eac5:7aff:feb1:6b13 eth2 01:29:49/00:01:28 1 /
 
Validation on IP Multicast Routing Table
Note: The multicast routing table displays for an S,G entries.
The show ip pim mroute command displays the IP multicast routing table. In this table, the following fields are defined:
LHR#sh ip pim mroute
IP Multicast Routing Table
 
(*,*,RP) Entries: 0
G/prefix Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 1
FCR Entries: 0
 
(101.1.1.2, 239.1.1.1)
RPF nbr: 10.1.1.2
RPF idx: xe14
SPT bit: 1
Upstream State: JOINED
Local ..i.............................
Joined ................................
Asserted ................................
Outgoing ..o.............................
 
(101.1.1.2, 239.1.1.1, rpt)
RP: 0.0.0.0
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: RPT NOT JOINED
Local ................................
Pruned ................................
Outgoing ................................
 
LHR#sh ipv6 pim mroute
IPv6 Multicast Routing Table
 
(*,*,RP) Entries: 0
G/prefix Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 1
FCR Entries: 0
 
(5001::2, ff06::2)
RPF nbr: fe80::36ef:b6ff:fe94:3ddd
RPF idx: xe14
SPT bit: 0
Upstream State: JOINED
Local ..i.............................
Joined ................................
Asserted ................................
Outgoing ..o.............................
 
(5001::2, ff06::2, rpt)
RP: ::
RPF nbr: ::
RPF idx: None
Upstream State: RPT NOT JOINED
Local ................................
Pruned ................................
Outgoing ................................
 
The ip igmp group detail and ipv6 mld group detail shows the source included (SSM)
 
LHR#sh ip igmp groups
IGMP Instance wide G-Recs Count is: 1
IGMP Connected Group Membership
Group Address Interface Uptime Expires State Last Reporte
r
239.1.1.1 xe26 00:00:26 stopped Active 100.1.1.2
 
LHR#sh ip igmp groups detail
IGMP Instance wide G-Recs Count is: 1
IGMP Connected Group Membership Details
 
Flags: (M - SSM Mapping, R - Remote, L - Local,
SG - Static Group, SS - Static Source)
Interface: xe26
Group: 239.1.1.1
Flags: R
Uptime: 00:00:28
Group mode: Include ()
State: Active
Last reporter: 100.1.1.2
Group source list: (R - Remote, M - SSM Mapping, S - Static, L - Local)
 
Include Source List :
Source Address Uptime v3 Exp Fwd Flags
101.1.1.2 00:00:28 00:03:56 Yes R
 
LHR#sh ipv6 mld groups
MLD Connected Group Membership
Group Address Interface Uptime Expires S
tate Last Reporter
ff06::2 xe26 00:00:31 stopped A
ctive fe80::1
 
LHR#sh ipv6 mld groups detail
MLD Connected Group Membership Details
 
Flags: (M - SSM Mapping, R - Remote,
SG - Static Group, SS - Static Source)
Interface: xe26
Group: ff06::2
Flags: R
Uptime: 00:00:32
Group mode: Include ()
State: Active
Last reporter: fe80::1
Group source list: (R - Remote, M - SSM Mapping, S - Static )
 
Include Source List :
Source Address Uptime v2 Exp Fwd Flags
5001::2 00:00:32 00:03:49 Yes R