Controla cómo se crean y destruyen los grupos multicast.
El IGMP se utiliza entre un host y su router multicast, que por definición debe de estar en su red.
Funcionamiento:
El router multicast envía periódicamente un mensaje del tipo membership_query a la(s) red(es) conectada(s) para preguntar si existe al menos un host suscrito a un grupo multicast.
Todos los hosts suscritos a algún grupo multicast contestan (esperando un tiempo aleatorio máximo establecido en el mensaje membership_query) con mensajes del tipo membership_report,indicando en cada uno de ellos las dirs IP multicast correspondientes. Esperan un tiempo aleatorio altes de contestar porque si durante la espera escuchan un membership_report de otro hostde la sub-red indicando que está suscrito a ese grupo multicast, se ahorran la contestación.
Si el router no recibe ningún membership_report en un cierto tiempo después de un membership_query, deja de participar en las transmisiones multicast (pruning del árbol multicast).
El anterior estado también puede conseguirse enviando al router un mensaje opcional llamado leave_group.