On 2/10/2016 12:42 PM, Eric van Gyzen wrote: > Author: vangyzen Date: Sun Oct 2 01:42:45 2016 New Revision: 306577 > URL: https://svnweb.freebsd.org/changeset/base/306577 > > Log: Add GARP retransmit capability > > A single gratuitous ARP (GARP) is always transmitted when an IPv4 > address is added to an interface, and that is usually sufficient. > However, in some circumstances, such as when a shared address is > passed between cluster nodes, this single GARP may occasionally be > dropped or lost. This can lead to neighbors on the network link > working with a stale ARP cache and sending packets destined for that > address to the node that previously owned the address, which may not > respond. > > To avoid this situation, GARP retransmissions can be enabled by > setting the net.link.ether.inet.garp_rexmit_count sysctl to a value > greater than zero. The setting represents the maximum number of > retransmissions. The interval between retransmissions is calculated > using an exponential backoff algorithm, doubling each time, so the > retransmission intervals are: {1, 2, 4, 8, 16, ...} (seconds). > > Due to the exponential backoff algorithm used for the interval > between GARP retransmissions, the maximum number of retransmissions > is limited to 16 for sanity. This limit corresponds to a maximum > interval between retransmissions of 2^16 seconds ~= 18 hours. > Increasing this limit is possible, but sending out GARPs spaced days > apart would be of little use. >
Thanks for this David & Eric I presume this is (or would be) quite complementary to D4111 [1] (Gratuitous ARP's for lagg(4) failover) when it lands? I'm thinking particularly given the various states upstream switch ports can have during topology changes. [1] https://reviews.freebsd.org/D4111 ./koobs _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"