Bug 6786: L3VPN is not honoring VTEP add or delete in operational cloud 10/46110/6
authorHANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Thu, 22 Sep 2016 14:12:07 +0000 (19:42 +0530)
committerHANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Tue, 4 Oct 2016 14:30:42 +0000 (20:00 +0530)
commit4f39458cc3001aa94468217eddac5f8b8d08d73b
tree9f08c3a0aafa315a2427507d1eded339f9f4c747
parent0962fb6c6e246f440929df1e1f34f8e62c3730c1
Bug 6786:  L3VPN is not honoring VTEP add or delete in operational cloud

Whenever VTEP IP on a DPN is added or deleted , the next-hop IP of VMs in
FIB entries on that DPN needs to be updated appropriately.

To know which all VM FIB entries to be modified , a new DpnToInterfaceList
operational datastore (DS) is being introduced in InterfaceManager.
InterfaceManager will update the DpnToInterfaceList  operational DS , when
VM is booted or deleted.

Whenever VTEP IP is added/deleted on a DPN , VPN would get a VxLAN tunnel
event. VPN will query the InterfaceManager using RPC for a given DPNId to
retrieve the list of VpnInterfaces(VM ports).

Change-Id: Ia9fcc97712d6f2592d53ea98b106bbca0d2a1bf7
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
18 files changed:
interfacemanager/interfacemanager-api/src/main/yang/odl-interface-meta.yang
interfacemanager/interfacemanager-api/src/main/yang/odl-interface-rpc.yang
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/IfmUtil.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/InterfacemgrProvider.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/commons/InterfaceManagerCommonUtils.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/listeners/InterfaceInventoryStateListener.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/renderer/ovs/statehelpers/OvsInterfaceStateAddHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/renderer/ovs/statehelpers/OvsInterfaceStateRemoveHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/rpcservice/InterfaceManagerRpcService.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/config/helpers/FlowBasedIngressServicesConfigBindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/config/helpers/FlowBasedIngressServicesConfigUnbindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/state/helpers/FlowBasedEgressServicesStateBindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/state/helpers/FlowBasedEgressServicesStateUnbindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/state/helpers/FlowBasedIngressServicesStateBindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/state/helpers/FlowBasedIngressServicesStateUnbindHelper.java
interfacemanager/interfacemanager-impl/src/main/java/org/opendaylight/genius/interfacemanager/servicebindings/flowbased/utilities/FlowBasedServicesUtils.java
interfacemanager/interfacemanager-impl/src/test/java/org/opendaylight/genius/interfacemanager/test/IfmUtilTest.java
interfacemanager/interfacemanager-impl/src/test/java/org/opendaylight/genius/interfacemanager/test/StateInterfaceTest.java