What is IGMP and how does it work?

What is IGMP and how does it work?

IGMP, or Internet Group Management Protocol, is a communications protocol used by hosts and adjacent routers on IP networks to establish and manage multicast group memberships. It is used primarily in IPv4 networks and enables efficient delivery of data to multiple receivers without the need to send multiple copies of the same data. IGMP is critical for streaming video, online gaming, and other services that require the transmission of data to multiple users simultaneously.

What is IGMP used for?

Multicast traffic management

IGMP is designed for managing multicast group memberships in IPv4 networks. Multicast is a method of communication where data is sent from one source to multiple destinations using a single transmission stream. This contrasts with unicast (one-to-one) and broadcast (one-to-all) methods. IGMP allows a device (such as a computer, smart TV, or set-top box) to report its interest in receiving multicast traffic to the local router.

Multicast groups and IP ranges

Multicast addresses range from 224.0.0.0 to 239.255.255.255. Each multicast group is identified by a specific IP address within this range. Devices that want to receive a particular multicast stream must join the corresponding multicast group using IGMP.

How IGMP works

When a host wants to join a multicast group, it sends an IGMP Membership Report message to the multicast address. The local router listens for these reports and updates its multicast forwarding table accordingly. The router also sends IGMP queries to determine which hosts still want to receive the multicast stream. If no hosts respond, the router stops forwarding traffic for that group, conserving bandwidth.

The communication typically happens as follows:

  • A host sends an IGMP Membership Report to join a multicast group
  • The router adds the port to its forwarding table for that multicast group
  • Periodically, the router sends IGMP General Queries
  • If no Membership Report is received in response, the router removes the port from the multicast group

IGMP versions

IGMPv1

The original version. Hosts could only join groups, and routers assumed a group was no longer needed after a timeout period unless refreshed.

IGMPv2

Introduced Leave Group messages, allowing hosts to notify routers when they no longer wanted multicast traffic. This improved efficiency and reduced unnecessary traffic.

IGMPv3

Supports source-specific multicast (SSM), where hosts can specify not only the group they want to join but also which sources they accept data from. This allows more fine-grained control and improves security and performance in multicast environments.

Applications and importance

IGMP is widely used in IPTV, video conferencing, online gaming, and financial trading platforms—any service that benefits from sending the same data to many clients simultaneously. Routers and switches that support IGMP snooping can optimize traffic within the LAN by only forwarding multicast packets to ports with interested clients, preventing network flooding.

In enterprise networks, IGMP helps ensure multicast data (such as a video stream) is only delivered to devices that explicitly request it, maintaining network efficiency and avoiding overload.

IGMP is a crucial protocol for scalable multicast delivery in IPv4 networks, allowing dynamic group membership management and helping minimize unnecessary bandwidth usage. Its interaction with switches (via IGMP snooping) and with multicast routing protocols (like PIM) makes it foundational in modern multicast networking.