Subject: Re: Bonding ALB sends bogus packets

From: Stephen Hemminger <[email-masked]>
Date: Thu, 30 Jul 2009 13:35:45 -0700

On Thu, 30 Jul 2009 13:28:19 -0700
Jay Vosburgh <[email-masked]> wrote:

> Stephen Hemminger <[email-masked]> wrote:
> 
> >The bonding ALB mode builds packets with type, ETH_P_LOOP.
> >
> >Well ETH_P_LOOP is defined as 0x0060 which looks completely bogus.
> >All Ethernet types less than 1536 are interpreted as 802.2 frames.
> >The result is that the resulting packet looks like a bogus 802.2
> >frame to the other host (or switch).  I have no idea what the 
> >initial design was or what the purpose of this code is, but it
> >should either send a real packet or nothing at all.
> 
> 	I've looked at that code before, too, although I hadn't noticed
> that ETH_P_LOOP is under the limit for interpretation as a length
> instead of a type.
> 
> 	I believe the purpose of the code is to update the switch's MAC
> address table for the port and insure it's correct, since the alb mode
> can move MAC addresses around amongst the set of slaves.
> 
> 	-J

Then it ought to send an ARP or at least a real-looking 802.2 packet.
Also, if the purpose was to update switch MAC table, why does it need
to do it so often, rather than only when MAC address is swapped.