Multicast Control Protocols – Cisco Nexus Switch Routing
Multicast Control Protocols
The NX-OS software supports the following protocols to implement IP multicast routing:
- Internet Group Management Protocol (IGMP) is used between hosts on a LAN and the routers on that LAN to track the multicast groups of which hosts are members.
- Protocol-Independent Multicast (PIM) is used between routers so that they can track which multicast packets to forward to each other and to their directly connected LANs.
Internet Group Management Protocol (IGMP)
IGMP is used to dynamically register individual hosts in a multicast group on a particular LAN. Hosts identify group memberships by sending IGMP messages to their local multicast router. Under IGMP, routers listen to IGMP messages and periodically send out queries to discover which groups are active or inactive on a particular subnet. There are three versions of IGMP: IGMP version 1, IGMP version 2, and IGMP version 3.
IGMP Version 1
In Version 1, only the following two types of IGMP messages exist:
- Membership query
- Membership report
Hosts send out IGMP membership reports corresponding to a particular multicast group to indicate that they are interested in joining that group. The TCP/IP stack running on a host automatically sends the IGMP membership report when an application opens a multicast socket. The router periodically sends out an IGMP membership query to verify that at least one host on the subnet is still interested in receiving traffic directed to that group. When there is no reply to three consecutive IGMP membership queries, the router times out the group and stops forwarding traffic directed toward that group. IGMPv1 supports membership report suppression, which means that if two hosts on the same subnet want to receive multicast data for the same group, the host that receives a member report from the other host suppresses sending its report. Membership report suppression occurs for hosts that share a port.
IGMP Version 2
IGMPv1 has been superseded by IGMP Version 2 (IGMPv2). IGMPv2 is backward compatible with IGMPv1. In Version 2, the following four types of IGMP messages exist:
- Membership query
- Version 1 membership report
- Version 2 membership report
- Leave group
IGMP Version 2 works basically the same way as Version 1 and supports membership report suppression. The main difference is that there is a leave group message. With this message, the hosts can actively communicate to the local multicast router that they intend to leave the group. The router then sends out a group-specific query and determines if any remaining hosts are interested in receiving the traffic. If there are no replies, the router times out the group and stops forwarding the traffic. The addition of the leave group message in IGMP Version 2 greatly reduces the leave latency compared to IGMP Version 1. Unwanted and unnecessary traffic can be stopped much sooner.
IGMP Version 3
IGMPv3 adds support for “source filtering,” which enables a multicast receiver host to signal to a router the groups from which it wants to receive multicast traffic as well as from which sources this traffic is expected. This membership information enables Cisco NX-OS software to forward traffic from only those sources from which receivers requested the traffic.
In IGMPv3, the following types of IGMP messages exist:
- Version 3 membership query
- Version 3 membership report
IGMPv3 supports applications that explicitly signal sources from which they want to receive traffic.