How IGMP operates

IGMP is used by IP hosts to report their multicast group memberships with neighboring multicast routers. It is an internal protocol of the IP suite. IGMP messages are encapsulated in IP datagrams, with an IP protocol number of 2. When enabled, IGMP operates in VLAN context. As a result, there is no need of a multicast routing protocol as long as the communication between IP hosts and multicast source is on the same network. If IP hosts and the multicast source are on different network segments, multicast routing is essential.

Multicast routers use IGMP to identify the groups having members on each of their attached physical networks. A multicast router or a switch enabled with IGMP can operate in any of the two roles:

  • Querier

  • Non Querier

Generally, only one Querier is available per physical network. When you enable IGMP, Querier election takes place and one of the devices perform the role of a Querier. The Querier is responsible for:
  • Sending out IGMP group membership queries in a timed interval

  • Retrieving IGMP membership reports from an active member

  • Allowing to update the group membership table

The multicast group running version 2 of IGMP uses three fundamental types of messages to communicate:

Membership Query (Query)

The message sent always by the Querier to all the devices on the attached network enabled with IGMP. The Membership Query message is of two types:
  • General Query — Used to learn the groups which have members on the attached network.

  • Group-specific Query — Used to learn if a particular group has any members on the attached network.

The above message types are differentiated by the Group Address. The Membership Query messages are referred as Query messages. To disable the querier feature, use the IGMP configuration CLI commands. For more information about the CLI commands, see Configuring the querier function.

Report (Join)

The message sent by a host to the querier to indicate that the host wants to be or is a member of a given group indicated in the report message.

Leave group

The message sent by a host to all routers is to indicate that the host has ceased to be a member of a specific multicast group.

An IP multicast packet includes the multicast group (address) to which the packet belongs. When an IGMP client connected to a switch port needs to receive multicast traffic from a specific group, it joins the group by sending an IGMP report (join request) to the network. (The multicast group specified in the join request is determined by the requesting application running on the IGMP client.) When a network device with IGMP enabled receives the join request for a specific group, it forwards any IP multicast traffic it receives for that group through the port on which the join request was received. When the client is ready to leave the multicast group, it sends a Leave Group message to the network and ceases to be a group member. When the leave request is detected, the appropriate IGMP device ceases transmitting traffic for the designated multicast group through the port on which the leave request was received (as long as there are no other current members of that group on the affected port.)

Thus, IGMP identifies members of a multicast group (within a subnet) and allows IGMP-configured hosts (and routers) to join or leave multicast groups.

To display IGMP data showing active group addresses, reports, queries, querier access port, and active group address data (port, type, and access), see section "Internet Group Management Protocol (IGMP) Status" in appendix B, "Monitoring and Analyzing Switch Operation" of the Management and Configuration Guide for your switch.