Internet Group Management Protocol (IGMP) | 363Sending an Unsolicited IGMP ReportA host does not have to wait for a general query to join a group. It may send an unsolicited IGMPMembership Report, also called an IGMP Join message, to the querier.Leaving a Multicast Group1. A host sends a membership report of type 0x17 (IGMP Leave message) to the all routers multicastaddress 224.0.0.2 when it no longer cares about multicast traffic for a particular group.2. The querier sends a Group-Specific Query to determine whether there are any remaining hosts in thegroup. There must be at least one receiver in a group on a subnet for a router to forward multicasttraffic for that group to the subnet.3. Any remaining hosts respond to the query according to the delay timer mechanism (see AdjustingQuery and Response Timers on page 368). If no hosts respond (because there are none remaining inthe group) the querier waits a specified period, and sends another query. If it still receives no response,the querier removes the group from the list associated with forwarding port and stops forwardingtraffic for that group to the subnet.IGMP version 3Conceptually, IGMP version 3 behaves the same as version 2. There are differences:• Version 3 adds the ability to filter by multicast source, which helps multicast routing protocols avoidforwarding traffic to subnets where there are no interested receivers.• To enable filtering, routers must keep track of more state information, that is, the list of sources thatmust be filtered. An additional query type, the Group-and-Source-Specific Query, keeps track of statechanges, while the Group-Specific and General queries still refresh existing state.• Reporting is more efficient and robust: hosts do not suppress query responses (non-suppression helpstrack state and enables the immediate-leave and IGMP Snooping features), state-change reports areretransmitted to insure delivery, and a single membership report bundles multiple statements from asingle host, rather than sending an individual packet for each statement.The version 3 packet structure is different from version 2 to accommodate these protocol enhancements.Queries (Figure 18-2) are still sent to the all-systems address 224.0.0.1, but reports (Figure 18-3) are sentto the all IGMP version 3-capable multicast routers address 244.0.0.22.Figure 18-2. IGMP version 3 Membership Query Packet FormatfnC0070mpType(0x11)Max. ResponseCodeGroup AddressChecksumCode: 0x11: Membership QueryMaximum Response Timederived from this valueReserved S Querier RobustnessValue(2)Querier's QueryInterval CodeNumber ofSourcesSource AddressesBit flag that when set to1 suppresses router queryresponse timer updatesNumber of times that arouter or receiver transmitsa query or report to insurethat it is receivedQuery Interval derivedfrom this valueNumber of source addressesto be filteredSource addresses to befiltered