AAP stops working when VM is restarted 81/91681/10
authorKarthikeyan Krishnan <karthikeyangceb007@gmail.com>
Mon, 27 Jul 2020 10:57:12 +0000 (16:27 +0530)
committerKarthikeyan Krishnan <karthikeyangceb007@gmail.com>
Wed, 16 Sep 2020 10:26:42 +0000 (10:26 +0000)
commite19a17366cd51fe59dbb8d450e75250d2837efa1
treeb10a6e195718d5ac58496db7801e0014656149d8
parentd7ffb857ecf195de95cd6700be49c1af519c0b3c
AAP stops working when VM is restarted

Issue:
========
When VM's are having a static-ip without VRRP
configuration. When such VMs are rebooted, L3VPN will get interface-state
as DOWN. L3VPN service removed the adjacency from config-vpn-interface.
This triggers update of VpnInterface listener and eventually FIB is
removed for the static-ip. When VM comes-up , if static-ip is pinged ,
L3VPN service tries to learn the static-ip again by sending ARP Broadcast.
When it receives the ARP Response, it sees that NeutronVpnPortIpToPort
entry is present and mac-addr/interface is same. Hence no action taken.
So discovery of this static-ip fails and FIB is already removed before.
So eventually traffic for the static-ip fails either way.

Solution:
==========
When VM is rebooted, upon receiving interface-state DOWN, L3VPN will not
remove static-ip adjacency and FIB. Only when interface-state remove is
received, L3VPN will remove the static-ip adj, FIB, NeutronVpnPortIp etc.

Signed-off-by: Karthikeyan Krishnan <karthikeyangceb007@gmail.com>
Change-Id: I8198f9bc8099818ec9a3f45836246fe2b89a5778
vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/InterfaceStateChangeListener.java