This chapter describes the multicast features of Cisco NX-OS.
This chapter includes the following sections:
For a complete explanation of Cisco NX-OS licensing recommendations and how to obtain and apply licenses, see the Cisco NX-OS Licensing Guide.
Information About Multicast
IP multicast is a method of forwarding the same set of IP packets to a number of hosts within a network. You can use multicast
in IPv4 networks to provide efficient delivery of data to multiple destinations.
Multicast involves both a method of delivery and discovery of senders and receivers of multicast data, which is transmitted
on IP multicast addresses called groups. A multicast address that includes a group and source IP address is often referred
to as a channel. The Internet Assigned Number Authority (IANA) has assigned 126.96.36.199 through 188.8.131.52 as IPv4 multicast
addresses. For more information, see http://www.iana.org/assignments/multicast-addresses.
The routers in the network listen for receivers to advertise their interest in receiving multicast data from selected groups.
The routers then replicate and forward the data from sources to the interested receivers. Multicast data for a group is transmitted
only to those LAN segments with receivers that requested it.
Figure 1 shows one source transmitting multicast data that is delivered to two receivers. In the figure, because the center
host is on a LAN segment where no receiver requested multicast data, no data is delivered to that receiver.
Consistency Checker Commands for Cisco Nexus 3500 Series Switch
Consistency checker compares the software state of the network system, with the hardware state of supported modules. This
helps to reduce increased troubleshooting time at a later period. Consistency checker supplements basic troubleshooting, and
helps to identify scenarios where inconsistent state between software and hardware tables are causing issues in the network,
thereby reducing the mean time to resolve the issue.
The following consistency checker commands are supported for Layer 2 from Cisco NX-OS Release 9.3(3):
show consistency-checker membership vlan <vlanid> [native-vlan] —Determines that the VLAN membership in the software is the
same as programmed in the hardware.
show consistency-checker membership port-channels [interface <ch-id>]—Checks for port-channel membership in the hardware in
all modules and validates it with the software state.
show consistency-checker stp-state vlan <vlan>—Determines whether the spanning tree state in the software is the same as programmed
in the hardware. This command is run only on interfaces that are operational (up).
show consistency-checker l2 module <modnum>—Verifies that learned MAC addresses are consistent between the software and the
hardware. It also shows extra entries that are present in the hardware but not in the software and missing entries in the
show consistency-checker link-state module <moduleID>—Verifies the programming consistency between software and hardware for
the link-state status of the interfaces.
The following consistency checker commands are supported for Layer 3 from Cisco NX-OS Release 9.3(3):
show consistency-checker l3-interface module <moduleid>—Verifies the programming consistency between software and hardware
for L3-interface ingress and egress forwarding tables.
test forwarding ipv4 [ unicast] inconsistency [suppress_transient] [ vrf vrf-name ] [stop] —Starts or stops a Layer 3 consistency
show forwarding ipv4 [unicast] inconsistency [ vrf vrf-name ] —Displays the results of a Layer 3 consistency check.
show consistency-checker forwarding single-route ipv4 <ip-prefix> vrf <vrf-name>—Displays the results of consistency check
for a single route.
clear forwarding [ipv4 | ip] [unicast] inconsistency—Clears the IP forwarding inconsistencies.
show consistency-checker gwmacdb —Displays the results of consistency check for Router MAC.
The following consistency checker commands are supported for Multicast from Cisco NX-OS Release 9.3(3):
show consistency-checker l2 multicast group <grp-address> source <src-address> vlan <vlan-id> [dump-debug-logs]—Verifies the
Layer 2 multicast consistency for L2 IGMP entries between the software and the hardware.
show consistency-checker l3 multicast group <grp-address> source <src-address> vrf <vrf-string> [dump-debug-logs]—Verifies
the Layer 3 multicast consistency for L3 multicast route entries between the software and the hardware.
Multicast Distribution Trees
A multicast distribution tree represents the path that multicast data takes between the routers that connect sources and receivers.
The multicast software builds different types of trees to support different multicast methods.
A source tree represents the shortest path that the multicast traffic takes through the network from the sources that transmit
to a particular multicast group to receivers that requested traffic from that same group. Because of the shortest path characteristic
of a source tree, this tree is often referred to as a shortest path tree (SPT). Figure 2 shows a source tree for group 184.108.40.206
that begins at host A and connects to hosts B and C.
The notation (S, G) represents the multicast traffic from source S on group G. The SPT in Figure 2 is written (220.127.116.11,
18.104.22.168). Multiple sources can be transmitting on the same group.
A shared tree represents the shared distribution path that the multicast traffic takes through the network from a shared root
or rendezvous point (RP) to each receiver. (The RP creates an SPT to each source.) A shared tree is also called an RP tree
(RPT). Figure 3 shows a shared tree for group 22.214.171.124 with the RP at router D. Source hosts A and D send their data to router
D, the RP, which then forwards the traffic to receiver hosts B and C.
The notation (*, G) represents the multicast traffic from any source on group G. The shared tree in Figure 3 is written (*,
Because multicast traffic is destined for an arbitrary group of hosts, the router uses reverse path forwarding (RPF) to route
data to active receivers for the group. When receivers join a group, a path is formed either toward the source (SSM mode)
or the RP (ASM mode). The path from a source to a receiver flows in the reverse direction from the path that was created when
the receiver joined the group.
For each incoming multicast packet, the router performs an RPF check. If the packet arrives on the interface leading to the
source, the packet is forwarded out each interface in the outgoing interface(OIF) list for the group. Otherwise, the router
drops the packet.
Figure 4 shows an example of RPF checks on packets coming in from different interfaces. The packet that arrives on E0 fails
the RPF check because the unicast route table lists the source of the network on interface E1. The packet that arrives on
E1 passes the RPF check because the unicast route table lists the source of that network on interface E1.
Cisco NX-OS PIM
Cisco NX-OS supports multicasting with Protocol Independent Multicast (PIM) sparse mode. PIM is IP routing protocol independent
and can leverage whichever unicast routing protocols are used to populate the unicast routing table. In PIM sparse mode, multicast
traffic is sent only to locations of the network that specifically request it. PIM dense mode is not supported by Cisco NX-OS.
In this publication, the term “PIM” is used for PIM sparse mode version 2.
To access multicast commands, you must enable the PIM feature. Multicast is enabled only after you enable PIM on an interface
of each router in a domain. You configure PIM for an IPv4 network. By default, IGMP runs on the system.
PIM, which is used between multicast-capable routers, advertises group membership across a routing domain by constructing
multicast distribution trees. PIM builds shared distribution trees on which packets from multiple sources are forwarded, as
well as source distribution trees, on which packets from a single source are forwarded.
The distribution trees change automatically to reflect the topology changes due to link or router failures. PIM dynamically
tracks both multicast-capable sources and receivers.
The router uses the unicast routing table and RPF routes for multicast to create multicast routing information.
In this publication, “PIM for IPv4” refer to the Cisco NX-OS implementation of PIM sparse mode. A PIM domain can include
an IPv4 network.
Figure 5 shows two PIM domains in an IPv4 network.
Figure 5 shows the following elements of PIM:
The lines with arrows show the path of the multicast data through the network. The multicast data originates from the sources
at hosts A and D.
The dashed line connects routers B and F, which are Multicast Source Discovery Protocol (MSDP) peers. MSDP supports the discovery
of multicast sources in other PIM domains.
Hosts B and C receive multicast data by using Internet Group Management Protocol (IGMP) to advertise requests to join a multicast
Routers A, C, and D are designated routers (DRs). When more than one router is connected to a LAN segment, such as C and E,
the PIM software chooses one router to be the DR so that only one router is responsible for putting multicast data on the
Router B is the rendezvous point (RP) for one PIM domain and router F is the RP for the other PIM domain. The RP provides
a common point for connecting sources and receivers within a PIM domain.
PIM supports two multicast modes for connecting sources and receivers:
Any source multicast (ASM)
Source-specific multicast (SSM)
Cisco NX-OS supports a combination of these modes for different ranges of multicast groups. You can also define RPF routes
Any Source Multicast (ASM) is a PIM tree building mode that uses shared trees to discover new sources and receivers as well
as source trees to form shortest paths from receivers to sources. The shared tree uses a network node as the root, called
the rendezvous point (RP). The source tree is rooted at first-hop routers, directly attached to each source that is an active
sender. The ASM mode requires an RP for a group range. An RP can be configured statically or learned dynamically by the Auto-RP
or BSR group-to-RP discovery protocols.
The ASM mode is the default mode when you configure RPs.
Source-Specific Multicast (SSM) is a PIM mode that builds a source tree that originates at the designated router on the LAN
segment that receives a request to join a multicast source. Source trees are built by sending PIM join messages in the direction
of the source. The SSM mode does not require you to configure RPs.
The SSM mode allows receivers to connect to sources outside the PIM domain.
By default, the Internet Group Management Protocol (IGMP) for PIM is running on the system.
The IGMP protocol is used by hosts that want to receive multicast data to request membership in multicast groups. Once the
group membership is established, multicast data for the group is directed to the LAN segment of the requesting host.
You can configure IGMPv2 or IGMPv3 on an interface. You will usually configure IGMPv3 to support SSM mode. By default, the
software enables IGMPv2.
IGMP snooping is a feature that limits multicast traffic on VLANs to the subset of ports that have known receivers. By examining
(snooping) IGMP membership report messages from interested hosts, multicast traffic is sent only to VLAN ports that interested
hosts reside on. By default, IGMP snooping is running on the system.
Cisco NX-OS provides several methods that allow multicast traffic to flow between PIM domains.
The PIM software uses SSM to construct a shortest path tree from the designated router for the receiver to a known source
IP address, which may be in another PIM domain. The ASM mode cannot access sources from another PIM domain without the use
of another protocol.
Once you enable PIM in your networks, you can use SSM to reach any multicast source that has an IP address known to the designated
router for the receiver.
The Cisco NX-OS IPv4 Multicast Routing Information Base (MRIB) is a repository for route information that is generated by
multicast protocols such as PIM and IGMP. The MRIB does not affect the route information itself. The MRIB maintains independent
route information for each virtual routing and forwarding (VRF) instance.
Figure 6 shows the major components of the Cisco NX-OS multicast software architecture:
The Multicast FIB (MFIB) Distribution (MFDM) API defines an interface between the multicast Layer 2 and Layer 3 control plane
modules, including the MRIB, and the platform forwarding plane. The control plane modules send the Layer 3 route update and
Layer 2 lookup information using the MFDM API.
The multicast FIB distribution process distributes the multicast update messages to the switch.
The Layer 2 multicast client process sets up the Layer 2 multicast hardware forwarding path.
The unicast and multicast FIB process manages the Layer 3 hardware forwarding path.
Troubleshooting Inconsistency Between SW and HW Multicast Routes
This section provides symptoms, possible causes, and recommended actions for when *, G, or S,G entries that are seen in the
MRIB with active flow, but are not programmed in MFIB.
The issue can be seen when numerous active flows are received beyond the hardware capacity. This causes some of the entries
not to be programmed in hardware while there is no free hardware index.
If the number of active flows are significantly reduced to free up the hardware resource, inconsistency may be seen between
MRIB and MFIB for flows that were previously affected when the hardware table was full until the entry, times out, repopulates,
and triggers programming.
There is currently no mechanism to walk the MRIB table and reprogram missing entries in HW after hardware resource is freed.
To ensure reprogramming of the entries, use the clear ip mroute * command.
For additional information related to implementing multicast, see the following sections:
Technical Assistance Center (TAC) home page, containing 30,000 pages of searchable technical content, including links to products,
technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more