Looks good, Ethan
On Tue, Jan 24, 2012 at 13:44, Ben Pfaff <b...@nicira.com> wrote: > When Cisco (and other?) routers are configured in high-availability modes, > they use two different MAC addresses. The router uses MAC 1 only for ARP > replies. The router uses MAC 2 for forwarding IP packets to end hosts. > When a MAC learning switch is attached to the router, therefore, it will > only learn the location of MAC 1 from ARP replies. If the end host's ARP > cache refresh timer is longer than the switch's MAC learning timeout, then > packets to the router will be flooded from the MAC learning timeout until > the next ARP reply. > > This commit fixes the problem by increasing the MAC learning timeout from > 60 seconds to 300 seconds. According to research by Sanjay Sane, this is > always sufficient, even with operating systems that use ARP timeouts > longer than 300 seconds (such as FreeBSD and Mac OS, which have 1200 > seconds ARP timeouts) because the routers that cause this problem send > unsolicited ARP replies every 180 seconds. > > This issue arises in any situation where traffic between two hosts flows > only in one direction. The explanation above describes only one special > case. > > NICS-11. > Signed-off-by: Ben Pfaff <b...@nicira.com> > --- > lib/mac-learning.h | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/lib/mac-learning.h b/lib/mac-learning.h > index 0263e49..4bcf221 100644 > --- a/lib/mac-learning.h > +++ b/lib/mac-learning.h > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks. > + * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira Networks. > * > * Licensed under the Apache License, Version 2.0 (the "License"); > * you may not use this file except in compliance with the License. > @@ -27,7 +27,7 @@ > #define MAC_MAX 2048 > > /* Time, in seconds, before expiring a mac_entry due to inactivity. */ > -#define MAC_ENTRY_IDLE_TIME 60 > +#define MAC_ENTRY_IDLE_TIME 300 > > /* Time, in seconds, to lock an entry updated by a gratuitous ARP to avoid > * relearning based on a reflection from a bond slave. */ > -- > 1.7.2.5 > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev