[ovs-dev] [PATCH] bridge: Filter some gratuitous ARPs on bond slaves.
Jesse Gross
jesse at nicira.com
Fri Jun 4 02:58:10 UTC 2010
On Thu, Jun 3, 2010 at 10:06 AM, Ben Pfaff <blp at nicira.com> wrote:
> On Wed, Jun 02, 2010 at 07:43:49PM -0700, Jesse Gross wrote:
> > Normally we filter out packets received on a bond if we have
> > learned the source MAC as belonging to another port to avoid packets
> > sent on one slave and reflected back on another. The exception to
> > this is gratuitous ARPs because they indicate that the host
> > has moved to another port. However, this can result in an additional
> > problem on the switch that the host moved to if the GARP is reflected
> > back on a bond slave. In this case, we incorrectly relearn the
> > slave as the source of the MAC address. To solve this, we lock the
> > learning entry for 5 seconds after receiving a GARP against further
> > updates caused by GARPs on bond slaves.
>
> I don't like the name GARP. It makes me think that this is related to
> GARP, the Generic Attribute Registration Protocol, which someday OVS
> might want to handle.
>
I guess, it is short though...
>
> The mac_learning_lookup_tag() interface is starting to get unwieldy.
> Maybe we should return the mac_entry and let the caller deal with it
> directly. Then we could drop the output arguments. (But that's not
> necessary in this commit.)
>
We can do it in the future if necessary. We currently only use this
function in two places and they are pretty clear, so it doesn't really
bother me.
>
> "parameter" is misspelled, as "paramater", twice.
>
Thanks, fixed.
>
> Please initialize garp_lock to TIME_MIN instead of to 0. I have
> actually had to debug OVS problems on systems where the clock started
> out with a negative value, probably due to a bad RTC battery. (We
> should really use clock_gettime(CLOCK_MONOTONIC) in the long run.)
>
OK, that's fine. However, as you point out, the real problem is that we are
using the wrong time source.
I pushed the updated version out.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-dev/attachments/20100603/b3b25ade/attachment-0003.html>
More information about the dev
mailing list