lagg Interfaces - don't do Gratuitous ARP?
Steven Hartland
killing at multiplay.co.uk
Thu Sep 22 07:23:13 UTC 2016
On 22/09/2016 02:12, Ryan Stone wrote:
>
>
> On Wed, Sep 21, 2016 at 7:57 PM, Gleb Smirnoff <glebius at freebsd.org
> <mailto:glebius at freebsd.org>> wrote:
>
> IMHO, the original patch was absolutely evil hack touching multiple
> layers, for the sake of a very special problem.
>
> I think, that in order to kick forwarding table on switches, lagg
> should:
>
> - allocate an mbuf itself
> - set its source hardware address to its own
> - set destination hardware to broadcast
> - put some payload in there, to make packet of valid size. Why
> should it be
> gratuitous ARP? A machine can be running IPv6 only, or may even
> use whatever
> higher level protocol, e.g. PPPoE. We shouldn't involve IP into
> this Layer 2
> problem at all.
> - Finally, send the prepared mbuf down the lagg member(s).
>
> And please don't hack half of the network stack to achieve that :)
>
>
> The original report in this thread is about a system where it takes
> almost 15 minutes for the network to start working again after a
> failover. That does not sound to me like a switch problem. That
> sounds to me like the ARP cache on the remote system. To fix such a
> case we have to touch L3.
15mins is a long time however we don't do ARP correctly in this case,
which is almost certainly the cause.
More information about the freebsd-net
mailing list