Bug 8188: L3VNI without configured UC handled for EVPN
Problem Description:
==================
L3VNI without configured in Internet VPN needs to be handled for EVPN in
NAT feature.
Currently Internet(External) VPN with L3VNI use case only handled for
external VXLAN network (EVPN) in NAT feature.
Internet(External) VPN without L3VNI use case also needs to be handled for
external VXLAN in NAT feature. Since Openstack Operator may configure L3VNI or
may not configure L3VNI.
Solution:
=========
Unconfigured of L3VNI value in Internet(External) VPN, will carve-out
the L3VNI value from OpenDaylight VXLAN VNI Pool to use SNAT and DNAT
flows.
The following UCs are handled based on the L3VNI configured/unconfigured
for GRE and VXLAN provider type.
Ext-Net-Type || Internet-VPN-L3VNI || External and Internal VXLAN uses
===============================================================================
GRE Configured Ignore L3VNI, allocate VNI from pool and
use it for Intra-DC only
--------------------------------------------------------------------------------
GRE Not Configured A VNI taken from ODL Pool and used for
Intra-DC communication
---------------------------------------------------------------------------------
VXLAN Configured Internet-VPN-L3VNI used for both
Intra-Inter-DC communication
---------------------------------------------------------------------------------
VXLAN Not Configured A VNI taken from ODL Pool and used for both intra-
inter-DC communication
---------------------------------------------------------------------------------
Note: If VNI value is unable to get from ODL VNI Pool, router-id will be
used as tunnel-id for external network provider type as VXLAN
Change-Id: I3c3f21e026303edf7eb2ad88bfd33622523085f0
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>