If you aren't familiar with the basic query and join process, have no fear.
Let's walk through the high-level operation beginning with IGMP version 1.
This protocol is very simple, as it contains only two message types.
First,
the router issues an IGMP membership query onto the LAN
segment to ask who wants multicast?
It's a generic question targeted at all hosts for any multicast group.
Because all hosts listen to the link local group of 224.0 .0 .1,
the client opens the packet to process the message.
If the client doesn't want multicast, it simply doesn't reply.
More interestingly, if the client does want to receive multicast,
it issues an IGMP membership report, commonly called a join for short,
for each group it wants to receive.
The diagram shows two separate membership reports, which are identical, except for the group address.