Протокол IGMP используется для динамической регистрации отдельных узлов в многоадресной группе локальной сети. Узлы сети определяют принадлежность к группе, посылая IGMP-сообщения на свой локальный многоадресный маршрутизатор. Маршрутизаторы (коммутаторы L3) получают IGMP-сообщения и периодически посылают запросы, чтобы определить, какие группы активны или неактивны в данной сети.
В общем случае протокол IGMP определяет следующие типы сообщений:
· запрос о принадлежности к группе (Membership Query);
· ответ о принадлежности к группе (Membership Report);
· сообщение о выходе из группы (Leave Group Message).
В настоящее время существуют три версии протокола IGMP:
· IGMP версии 1 (IGMP v1, описан в RFC 1112);
· IGMP версии 2 (IGMP v2, описан в RFC 2236);
· IGMP версии 3 (IGMP v3, описан в RFC 3376).
Протокол IGMP используется только в сетях с адресацией IPv4, так как в сетях с адресацией IPv6 групповая передача пакетов реализована по-другому.