On Tue, Sep 08, 2015 at 08:52:56AM -0700, Stephen Hemminger wrote:
Why doesn't the client resend a IGMP when it notes a connection change?
Good question, I actually had expected that too. My guess is that the network stack might be interpreting the RFCs in a "conservative way". RFC3376 ("Internet Group Management Protocol, Version 3" in section 5 only describes the following two cases where a report should be send:
----- * a change of the interface reception state, caused by a local invocation of IPMulticastListen [!= interface link state].
* reception of a Query. -----
Seems like another case where no one @IETF had thought about layer 2 multicast snooping :(.
The only entity in this scenario that knows that it has changed state is (c).
Hm, (B) should know so too as (c) authenticates to an 802.11 access point first before using it. So the mac80211 on (B) should be aware of the new host immediately.
I'm wondering whether it'd be sufficient to change multicast listener behaviour in Linux or whether the majority of wifi capable devices would still experience multicast packetloss on roaming. Anyone having an Apple or Microsoft device :)?
Cheers, Linus