When receiving a leave message – H3C Technologies H3C S10500 Series Switches User Manual
Page 32
17
•
If no forwarding table entry exists for the reported group, the switch creates an entry, adds the port
as a dynamic member port to the outgoing port list, and starts a member port aging timer for that
port.
•
If a forwarding table entry exists for the reported group but the port is not included in the outgoing
port list for that group, the switch adds the port as a dynamic member port to the outgoing port list
and starts an aging timer for that port.
•
If a forwarding table entry exists for the reported group and the port is included in the outgoing port
list, which means that this port is already a dynamic member port, the switch resets the aging timer
for that port.
NOTE:
A switch does not forward an IGMP report through a non-router port. The reason is that if the switch
forwards a report message through a member port, all the attached hosts that are monitoring the reported
multicast address suppress their own reports after receiving this report according to the IGMP report
suppression mechanism. This prevents the switch from determining whether the reported multicast group
still has active members attached to that port. For more information about the IGMP report suppression
mechanism, see the chapter “IGMP configuration.”
When receiving a leave message
When an IGMPv1 host leaves a multicast group, the host does not send an IGMP leave message, so the
switch cannot know immediately that the host has left the multicast group. However, as the host stops
sending IGMP reports as soon as it leaves a multicast group, the switch deletes the forwarding entry for
the dynamic member port that corresponds to the host from the forwarding table when its aging timer
expires.
When an IGMPv2 or IGMPv3 host leaves a multicast group, the host sends an IGMP leave message to
the multicast router.
When the switch receives an IGMP leave message on a dynamic member port, the switch first checks
whether a forwarding table entry for the group address in the message exists, and, if one exists, whether
the outgoing port list contains the port.
•
If the forwarding table entry does not exist or if the outgoing port list does not contain the port, the
switch discards the IGMP leave message instead of forwarding it to any port.
•
If the forwarding table entry exists and the outgoing port list contains the port, the switch forwards
the leave message to all router ports in the native VLAN. Because the switch does not know whether
any other hosts attached to the port are still listening to that group address, the switch does not
immediately remove the port from the outgoing port list of the forwarding table entry for that group.
Instead, it resets the aging timer for the port.
After receiving the IGMP leave message from a host, the IGMP querier resolves the multicast group
address in the message and sends an IGMP group-specific query to that multicast group through the port
that received the leave message. After receiving the IGMP group-specific query, the switch forwards it
through all its router ports in the VLAN and all member ports for that multicast group. The switch also
performs the following judgment on the port that received the IGMP leave message:
•
If the port (a dynamic member port supposed) receives any IGMP report in response to the
group-specific query before its aging timer expires, it indicates that some host attached to the port
is receiving or expecting to receive multicast data for that multicast group. The switch resets the
aging timer of the port.
•
If the port receives no IGMP report in response to the group-specific query before its aging timer
expires, it indicates that no hosts attached to the port are still listening to that group address: the