Joining a multicast group (membership report), Staying in the multicast group (query message), Leaving the multicast group (leave message) – Allied Telesis AlliedWare Plus Operating System Version 5.4.4C (x310-26FT,x310-26FP,x310-50FT,x310-50FP) User Manual
Page 729

IGMP and IGMP Snooping Introduction
Software Reference for x310 Series Switches
C613-50046-01 REV A
AlliedWare Plus
TM
Operating System - Version 5.4.4C
30.3
Joining a multicast group (Membership report)
When a host wants to receive a stream, referred to as “joining a group”, it sends out an
IGMP packet containing the address of the group it wants to join. This packet is called an
IGMP Membership report, often referred to as a “join packet”. This packet is forwarded
through the LAN to the local IGMP querier, which is typically a router. Once the querier has
received an IGMP join message, it knows to forward the multicast stream to the host. If it is
not already receiving the stream, it must tell the devices between itself and the multicast
source, which may be some hops away from the querier, that it wishes to receive the
stream. This might involve a process of using Layer 3 multicast protocols to signal across a
WAN, or it might be as simple as receiving a stream from a locally connected multicast
server.
Staying in the multicast group (Query message)
The Query message is used by a querier to determine whether hosts are still interested in
an IGMP group. At certain time intervals (the default is 125 seconds), the querier sends an
IGMP query message onto the local LAN. The destination address of the query message is
a special “all multicast groups” address. The purpose of this query is to ask “Are there any
hosts on the LAN that wish to remain members of multicast groups?” After receiving an
IGMP query, any host that wants to remain in a multicast group must send a new join
packet for that group. If a host is a member of more than one group, then it sends a join
message for each group it wants to remain a member of. The querier looks at the
responses it receives to its query, and compares these to the list of multicast streams that
it is currently registered to forward. If there are any items in that list for which it has not
received query responses, it will stop forwarding those streams. Additionally, if it is
receiving those streams through a Layer 3 network, it will send a Layer 3 routing protocol
message upstream, asking to no longer receive that stream.
Leaving the multicast group (Leave message)
How a host leaves a group depends on the IGMP version that it is using. Under IGMP
version 1, when a host has finished with a data stream, the local querier continues to send
the stream to the host until it sends out the next query message and receives no reply
back from the host. IGMP version 2 introduced the Leave message. This allows a host to
explicitly inform its querier that it wants to leave a particular multicast group. When the
querier receives the Leave message, it sends out a group specific query asking whether
any hosts still want to remain members of that specific group. If no hosts respond with join
messages for that group, then the querier knows that there are no hosts on its LAN that
are still members of that group. This means that for that specific group, it can ask to be
pruned from the multicast tree. IGMP version 3 removed the Leave message. Instead a
host leaves a group by sending a join message with no source specified.