ovn: Send GARP on localnet.
authorRamu Ramamurthy <ramu.ramamurthy@gmail.com>
Tue, 26 Apr 2016 21:31:07 +0000 (17:31 -0400)
committerBen Pfaff <blp@ovn.org>
Mon, 16 May 2016 21:51:00 +0000 (14:51 -0700)
commit0ee8aaf658dde99144c5145eff81edc88ee018da
tree48adca9a738ca40c1b7e19058af36cd97713c55c
parent218351dd013213c64d7f0b8bd6df3315c9f1a4a4
ovn: Send GARP on localnet.

In some use cases such as VM migration or when VMs reuse IP addresses, VMs
become unreachable externally because external switches/routers on localnet
have stale port-mac or ARP caches. The problem resolves after some time
when the caches ageout which could be minutes for port-mac bindings or
hours for ARP caches.

To fix this, send some gratuitous ARPs when a logical port on a localnet
datapath gets added. Such gratuitous ARPs help on a best-effort basis to
update the mac-port bindings and ARP caches of external switches and
routers on the localnet.

Reported-at: https://bugs.launchpad.net/networking-ovn/+bug/1545897
Reported-by: Kyle Mestery <mestery@mestery.com>
Signed-off-by: Ramu Ramamurthy <ramu.ramamurthy@us.ibm.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
ovn/controller/ovn-controller.c
ovn/controller/pinctrl.c
ovn/controller/pinctrl.h
tests/ovn.at