Subject: Re: [PATCH] bonding: fix to rejoin multicast groups immediately

From: Flavio Leitner <[email-masked]>
Date: Tue, 5 Oct 2010 11:34:30 -0300

On Tue, Oct 05, 2010 at 12:13:38AM -0700, David Miller wrote:
> From: Flavio Leitner <[email-masked]>
> Date: Wed, 29 Sep 2010 04:12:07 -0300
> 
> > It should rejoin multicast groups immediately when
> > the failover happens to restore the multicast traffic.
> > 
> > Signed-off-by: Flavio Leitner <[email-masked]>
> 
> I suspect the IGMPv3 handling via a delayed action, as is currently
> implemented, is on purpose and is done so to follow the specification
> of the IGMPv3 RFCs.
> 
> Therefore you have to explain why your new behavior is so desirable
> and in particular why something as undesirable as violating the RFCs
> is therefore warranted.

That patch only changes the behavior for bonding during a link
failure, so if we have a bonding in active-backup or any other mode
with current-active-slave, the initialization will happen just fine
following IGMP specs.

However, neither the backup slave interface nor the backup switch
connected to backup slave knows about mcast. Thus when a link failure
happens, we shouldn't rely on timers to not stay out of the mcast
group losing traffic.

E.g. The V1 specs says that we shouldn't send any membership report
if it has been one in the last minute because that means the switch
is notified and the system will receive mcast traffic for that group. 
Therefore, if it sees one and a link failure happens right after that,
the backup slave will send another membership report only one minute
later. During this time the system loses traffic.

-- 
Flavio