This chapter describes the Internet Group Management Protocol (IGMP) that is used to support multicast for hosts and routers
It lets all systems on a physical network know which multicast group the host is currently in. Multicast routers require this information to know that multicast datagrams should be forwarded to those interfaces.
Like ICMP, IGMP is also used as part of the IP layer, and IGMP packets are transmitted over an IP datagram.
IGMP messages
The IGMP type 1 description is a query message sent by the multicast router, and the 2 description is the report message sent by the host.
IGMP protocol
Join a multicast group
The basis of multicasting is the concept of a process that joins a multicast group on a given interface of a host.
IGMP Reports and Queries
The multicast router uses IGMP packets to record changes to the group members in the network connected to the router.
1. When the first process joins a group, the host sends an IGMP report.
2. When a process leaves a group, the host does not send IGMP reports. After the host knows that there are no more group members in the identified groups, the report message is no longer sent in the subsequent IGMP queries received.
3. The multicast router periodically sends IGMP queries to see if any hosts are included in the process that belong to the multicast group. The multicast router must send an IGMP query to each interface.
4. The host responds to an IGMP query by sending an IGMP report, and the IGMP report is sent back to each group that contains at least one process.
Two IGMP messages are displayed, one is the report sent by the host, and the other is the query sent by the router.
TCP/IP Detailed Volume One (13th Chapter Igmp:internet Group Management Protocol)