While there are differences between the IP Multicast configuration in the IOS and the Nexus OS, the Protocol Independent Multicast (PIM) protocol remains fundamentally the same. If you feel comfortable configuring Multicast in the IOS, you should be able to acclimate fairly easily to the changes in the Nexus OS.
Multicast is supported in the Cisco IOS, IOS XR, IOS XE, and in the Nexus OS. In this paper, the focus is on the differences between the IOS and the Nexus OS. The assumption for this paper is that the reader is familiar with Multicast routing and its associated protocols.
Since the purpose of this paper is to compare implementation of IP Multicast in the Cisco IOS and in the Nexus OS, some background on the evolution and challenges of implementing multicast in the IOS is appropriate.
History of IP Multicast with Cisco IOS
As a point of interest, the original RFC for IP addressing, RFC 791, defined Classes A, B, and C only. It did not formerly define Class D as a Multicast Address range. Class D was defined in a later RFC. Early implementations of IP Multicast utilized Distance Vector Multicast Routing Protocol (DVMRP). Some limitations of DVMRP are listed below. Also, the initial host extension protocol was defined in RFC 1112 as IGMP version 1. IGMPv1 allowed a host to join a group but there was no leave message. The initial PIM protocol was Cisco specific and later PIMv2 became an open standard.
PIMv2 became the most widely implemented multicast routing protocol because of the following limitations of DVMRP:
- DVMRP was based on RIP
- DVMRP does NOT support sparse mode
- The flooding mechanism used by DVMRP is not as optimal as PIM Dense Mode
- DVMRP uses a special unicast protocol that only works with other DVMRP routers whereas PIMv2 can utilize any unicast routing protocol for the RPF check
- DVMRP is an IGP protocol whereas PIM can be used between Autonomous Systems
The earlier implementations of PIM utilized PIM Dense Mode, which was ultimately not optimal in terms of router performance and network bandwidth utilization. Router performance was impacted by packet replication (at the time done in software) and bandwidth utilization by the constant flooding and pruning of multicast data. This constant flooding and re-flooding took place every three minutes.