The IP communication traditionally defines the unicast communication, when there is a host to host communication, or 1:1, and the broadcast type of communication where one host sends to all other hosts. When there is the need to communicate with multiple, but not all, hosts the broadcast communication is not effective as all hosts will receive it, and this also consumes more resources. This gap in the functionality was closed by the introduction of the multicast communication. With the multicast communication bandwidth and resources are saved as IP datagrams are sent to a group of receiving hosts in a single transmission.
In a multicast communication there are senders, this is the source of the IP datagrams, and receivers. The sender send one copy of the data to a multicast receivers, which are organized in a multicast group. The multicast group is assigned a group IP address, which are in the prefix of 224.0.0.0/4 for the IPv4 multicast and from the ff00:://8 for IPv6 multicast. These are officially defined IP address ranges by the Internet Assigned Numbers Authority (IANA). The group address is used by both the senders and the receivers. The senders use it as a destination address to send data to the multicast group of receivers without knowing who the specific receivers are. And the receivers use the group address to state their interest in receiving multicast traffic by registering to the group at the first-hop router by using either the Internet Group Management Protocol (IGMP) for IPv4 or Multicast Listener Discovery for IPv6.
Once a receiver has registered with a multicast group, then the routers use the Protocol Independent Multicast (PIM) protocol to construct the multicast distribution tree for this group, which defines how the routers on the path will replicate and forward the datagrams of the communication.
Figure 1-9 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.
Figure 1-9 Multicast Traffic from One Source to Two Receivers
The Internet Group Management Protocol (IGMP) 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.
IGMP is an IPv4 protocol that a host uses to request multicast data for a particular group. Using the information obtained through the IGMP, the software maintains a list of multicast group or channel memberships on a per-interface basis. The systems that receive these IGMP packets send multicast data that they receive for requested groups or channels out the network segment of the known receivers.
NX-OS supports IGMPv2 and IGMPv3. By default, NX-OS enables IGMPv2 when it starts the IGMP process. You can enable IGMPv3 on interfaces where you want its capabilities.