netvirt.git
8 years agoBug: 7422 Resolve checkstyle errors 78/50078/2
Janki [Wed, 21 Dec 2016 15:07:56 +0000 (20:37 +0530)]
Bug: 7422 Resolve checkstyle errors

Fix checkstyle errors at multiple places

Change-Id: I94d424dd9ee773ba65f4c31e51642e3c800c873a
Signed-off-by: Janki <jchhatba@redhat.com>
8 years agoBUG:7426 Adding elantag along with mac-address as key to synchronized block 53/49953/3
epgoraj [Thu, 22 Dec 2016 10:40:17 +0000 (16:10 +0530)]
BUG:7426 Adding elantag along with mac-address as key to synchronized block

Change-Id: I7d9e677ec071730233b925f9eec0652285cb42a2
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
8 years agoBug 7444 : External routes are not getting populated 02/49902/2
karthikeyan [Tue, 27 Dec 2016 06:05:11 +0000 (11:35 +0530)]
Bug 7444 : External routes are not getting populated

Description:
External routes are not getting populated in fib after recreating vpn and
associating to extnet as well as enable-snat true or false use cases

Solution:

Existing Behaviour:
======================
when disable the SNAT in neutron router, exiting implementation
will get the primary (NAPT) switch id from the DS. When re-enable the
SNAT existing code still it is fetching the primary (NAPT) switch id from
DS. Which leads to get the invalid value (zero) which was set during
disable SNAT.

Changed Behaviour:
====================
When re-enable the SNAT, it invokes the Update() code for re-election process for
getting primary (NAPT) switch id instead of directly querying to DS. Since
DS contains the Invalid (zero) Primary NAPT switch id.

Patch-Set 3: Changes:
==========================
Observed class cast exception when floatingIPHandler.cleanupFibEntries()
method. Changes has been done to declare this method in FloatingIPHandler
Interface to avoid this casting exception.

Change-Id: I8c5cf5fafc79f9933fedbbaad31d9c672696421e
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
(cherry picked from commit 4131f6bb123d53712e91bd892e8af7f96b477f00)

8 years agoBug 7463: nexthop in leaked routes is wrongly set 75/50075/2
Miguel Perez [Fri, 30 Dec 2016 11:39:53 +0000 (12:39 +0100)]
Bug 7463: nexthop in leaked routes is wrongly set

 + It is being set as nexthop the String representation of
   the Ipv4Address object instead of the value of the Ipv4Address as
   a String

Change-Id: Ife91ac823709a80c88b8aacaa03451f2ecac8831
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 6866 - missed NAPT rules for second router 04/50004/2
Olga Schukin [Wed, 21 Dec 2016 07:55:44 +0000 (09:55 +0200)]
Bug 6866 - missed NAPT rules for second router

Fix the race causing missed NAPT rules while the router creation.

Depends-On: https://git.opendaylight.org/gerrit/49420/

Change-Id: Ica0db89a5de8800090c7cdfc38a0bab2ad1bf12c
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
(cherry picked from commit 1915fd2063b17a1a330e31fa97b3de0112eca3e1)

8 years agoBug 7142 - all VpnPortIpToPort entries are lost from ODL cache after 09/50009/2
Gobinath [Fri, 4 Nov 2016 02:31:35 +0000 (08:01 +0530)]
Bug 7142 - all VpnPortIpToPort entries are lost from ODL cache after
reboot.

As part of this fix we ensure that control path information mapping
a vpn to fixed-neutron-port (gleaned from openstack configuration by
the tenant) is persistently retained inside Config Datastore and so
it will be accessible immediately after ODL cluster reboot.

In addition to that we created a new Operational DS that will
hold discovered IPs from the cloud. In more detail, this review
encompasses:

1. Create a new LearntVpnVipToPort OPERATIONAL Datastore which
will contain discovered IP addresses via GARP/ARP responses.

2. The existing NeutronVpnPortIpToPort will be changed as a pure Config
only Datastore as it will store all Neutron Port and their IP and
MAC Addresses.  This datastore will continue to be used
for lookup during ARP resolution and SubnetRoute handling.

3. Decoupling of the mymac changes(subnetMac) from Arp cache feature.
Mymac changes would still be listening to the VpnPortipToPort DS.

4. The ArpNotificationHandler would now modify the LearntVpnVipToPort DS which
the ArpMonitoringHandler would listen to.

The feature which initiates periodic ARP-based location discovery of
non-neutron IPs from the controller brought in via the earlier review
here: https://git.opendaylight.org/gerrit/#/c/45410/

Co-Authored-By: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Change-Id: Ic96517f4a57fe547d42495274a74ec5aa32b7d9e
Signed-off-by: Gobinath <gobinath@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
(cherry picked from commit 4c03872b35d29da2066e8924f8ffcf7337f6a599)

8 years agoBug 7321: ELAN Pseudo-port flows not installed on new DPNs 25/49425/4
Miguel Perez [Wed, 7 Dec 2016 11:23:39 +0000 (12:23 +0100)]
Bug 7321: ELAN Pseudo-port flows not installed on new DPNs

 + Stateful info about the Elan for cloud-sc was being stored in
   CONFIG but it was trying to read it from OPERATIONAL

 + I took the chance of migrating it from AbstractDataChangeListener
   to AsyncDataTreeChangeListener since the former is deprecated. This
   change seems to fix the problem and now the listener is getting the
   DCNs

Change-Id: Ib5b4fad79d7557a9a8d2805fe84f5c42087c51ad
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
(cherry picked from commit 66245b390c32c179c8293377bcc94c74c0a479c7)

8 years agoBug 7439: Discard internal VPNs for InterVpnLink purposes 83/49883/2
Miguel Perez [Tue, 20 Dec 2016 15:04:02 +0000 (16:04 +0100)]
Bug 7439: Discard internal VPNs for InterVpnLink purposes

 + At InterVpnLink creation, the code must check if there is any
   router with a static route pointing to any of InterVpnLink
   endpoints. For each router, the VPN to which the router is
   attached must be retrieved. However, internal VPNs must be
   discarded here.

Change-Id: I9763bf5187fae41d21be1757b49534435ba35071
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 7409 - Traffic Drop from NFip VM to FIP VM 82/49882/3
cgowdru [Wed, 21 Dec 2016 13:12:32 +0000 (18:42 +0530)]
Bug 7409 - Traffic Drop from NFip VM to FIP VM

Description : when an Non-FIP VM try to reaches FIP, the packet is
forwarded to the DPN1->DPN2 and DPN2(Primary-NAPT) has the SNAT flows.
After going though the SNAT flows, the packet will be sent back to
DPN1 via same vxvlan tunnel-port .

Since the packet entered DPN2 on Tunnel-port and again sent back to same
port(out_port == in_port), because of default OVS split-horizon behaviour
, the packet is dropped.

Changes done in NAPT_PFIB(47) table to add extra action
(load:0->NXM_OF_IN_PORT[]) which nullifes the in_port value thereby
disabling split-horizon-protection.

Change-Id: I7cf80527587114812af992e8c23f88c1164fc9f5
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
(cherry picked from commit c508fb6cf9be5b01f33e3b92461ab31e916fc7c2)

8 years agosubnet-op-data and port-op-data is empty after cluster reboot 55/49955/2
Suraj Ranjan [Mon, 14 Nov 2016 10:53:10 +0000 (16:23 +0530)]
subnet-op-data and port-op-data is empty after cluster reboot

Change-Id: If7e0b5d3109c53eb58505e69a389d15d2f7a6d1e
Signed-off-by: Suraj Ranjan <suraj.ranjan@ericsson.com>
(cherry picked from commit 3beb9903a1b344f90fb059ed2efad5691e790388)

8 years agoBug 7377, Bug 7383: handling unnecessary error log 11/50011/1
Periyasamy Palanisamy [Tue, 20 Dec 2016 09:47:37 +0000 (15:17 +0530)]
Bug 7377, Bug 7383: handling unnecessary error log

* There is no need of quering ElanInterface from config DS since
its reference is already part of the method argument
* Due to faster addition/removal of elan interface, elan interface is deleted
when its queried from installEntriesForElanInterface which caused 7377.
Now this is solved by directly passing elanInterface without querying
config DS.
* potential fix 7383 if mac is already deleted in elan-mac container.
This might occur when same mac is learned again on VLAN provider port

Change-Id: I7ed776a3b9a679ee22427b6f13e5e1a9adce57aa
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
(cherry picked from commit b4c8027e430521030b37cfde799f42b0228ba4dd)

8 years agoBug 7260: no rules in table 26 for default route 19/49419/2
Olga Schukin [Tue, 13 Dec 2016 05:53:40 +0000 (07:53 +0200)]
Bug 7260: no rules in table 26 for default route

* the model of router gateway wasn't written to mdsal due to NPE
* fix the race cond when add router gateway port done after handling ext network for this router

Change-Id: Ide2e5d6bb8e90d1d13effb8456aeaed395c9675a
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agoBUG 7359: duplicate local broadcast group backets 17/49417/2
David Goldberg [Wed, 14 Dec 2016 08:12:41 +0000 (10:12 +0200)]
BUG 7359: duplicate local broadcast group backets

In a setup with more than two switches, when creating a network with one
port on each switch, sometimes the remote broadcast group has more than
one bucket directing to the local broadcast group.
because the list was initiated outside the for loop of the switches, the
local brodcast bucket was added to it more than once, hence the
duplication.

Change-Id: Ifa1decd5b238f45f97770e03eb10bd781c24cbfc
Signed-off-by: David Goldberg <gdavid@hpe.com>
8 years agoBumping versions by 0.0.1 for next dev cycle 02/49602/1
Anil Belur [Tue, 20 Dec 2016 04:18:47 +0000 (14:18 +1000)]
Bumping versions by 0.0.1 for next dev cycle

Change-Id: I06dcd7290b953a98ef11f616cd4dbe8fdec419ab
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
8 years agoBug 7368: VPN Engine unable to process external interfaces 85/49385/1
Vivekanandan Narasimhan [Wed, 14 Dec 2016 17:46:09 +0000 (23:16 +0530)]
Bug 7368: VPN Engine unable to process external interfaces

The external network interfaces were not serviced by
VPNEngine due to an NPE that came in via review [1].

Here we fix that NPE and in addition to that
optimize code in VPNEngine to reduce MD-SAL reads.

[1] https://git.opendaylight.org/gerrit/#/c/48991

Change-Id: Ife0091b2bdd6674cc994aca084a9641e81a670ea
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoBug 7343 - NETVIRT Boron Autorelease Breaking 56/49256/1
Sam Hague [Mon, 12 Dec 2016 16:56:41 +0000 (11:56 -0500)]
Bug 7343 - NETVIRT Boron Autorelease Breaking

Change-Id: I296cf0590377361832af80772a05560e451c66d0
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoCleanup ArpNotificationHandler code 15/49215/3
Koby Aizer [Sat, 10 Dec 2016 21:30:22 +0000 (23:30 +0200)]
Cleanup ArpNotificationHandler code

 * Remove code duplication between ArpRequestReceived & ArpResponseReceived
 * Remove unused functions
 * Remove unused imports
 * Remove unused deps

Change-Id: Ic2122e7610a42c20ba2ac8c58c991f0a2f166d57
Signed-off-by: Koby Aizer <koby.aizer@hpe.com>
8 years agoBug 7077 - NAPT inbound rules never Expire 20/49220/2
Tali [Sun, 11 Dec 2016 09:57:05 +0000 (11:57 +0200)]
Bug 7077 - NAPT inbound rules never Expire

OFP do not send flow removed notifications via SwitchFlowRemoved but FlowRemoved

Change-Id: I9499412c1d6121d57248de68ec95c75236219ca0
Signed-off-by: Tali <tali.ben-meir@hpe.com>
8 years agoBug 7333: Fix for Arp flows were not deleted for DHCP port in Control node. 81/49181/4
hari.pr [Fri, 9 Dec 2016 19:03:55 +0000 (00:33 +0530)]
Bug 7333: Fix for Arp flows were not deleted for DHCP port in Control node.

    * Problem: when network is removed, arp flows were not deleted for DHCP port in control node.
    * Fix: fixed Ips for Dhcp port has been retrieved from local cache and used for deletion.

Change-Id: I6617a9a29f6be5e77d0362f112e38cb74c08df48
Signed-off-by: hari.pr <hari.pr@hcl.com>
8 years agoBug 7319: thread.sleep in group installation 10/49210/3
Tomer [Wed, 7 Dec 2016 17:00:13 +0000 (19:00 +0200)]
Bug 7319: thread.sleep in group installation

Full BC group installation delay is at least 300ms times number of DPNS in the ELAN.
This has devastating effects in scale setups, which is described in the bug ticket.

Moving the sleep outside of the loop.

Change-Id: I6d0f20a7b9c196fc7118b8d579c53013d4f5cce6
Signed-off-by: Tomer <tomer.pearl@hpe.com>
8 years agoBUG 7305: DHCP fails for Dual stack ports 05/49205/2
Vishal Thapar [Thu, 8 Dec 2016 08:20:59 +0000 (13:50 +0530)]
BUG 7305: DHCP fails for Dual stack ports

For VM ports configured as dual-stack i.e. having both IPv6 and Ipv4
addresses, DHCP Service fails to resolve DHCP.

Issue is with current code that assumes IPv4 only and returns the first
fixed-ip. If IPv6 is the first IP, it doesn't work. Fix is to find and use
the first IPv4 address.

Change-Id: I3a9baa6f3e8fd675c07423050ff44630417cf414
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
8 years agoBUG 7312: modify param reference of AclNodeListener 99/49199/2
wangqianyu [Wed, 7 Dec 2016 05:26:49 +0000 (13:26 +0800)]
BUG 7312: modify param reference of AclNodeListener

    delete not exist param of lportTag
    add descriptions of param dispatcherTableId tableId

Change-Id: I502d56c7d69f23b6bcb50e76893b2d51dc6f26a5
Signed-off-by: wangqianyu <wang.qianyu@zte.com.cn>
8 years agoNetvirt IT: Assert return value of ping in Netvirt IT tests 00/49200/2
Sridhar Gaddam [Mon, 28 Nov 2016 12:28:11 +0000 (17:58 +0530)]
Netvirt IT: Assert return value of ping in Netvirt IT tests

Change-Id: I4c1ab298233ec128ce711f4603418407ab0b2040
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
8 years agoFixed BGP AS number field size 01/49201/2
Sumanth MS [Thu, 8 Dec 2016 16:54:29 +0000 (22:24 +0530)]
Fixed BGP AS number field size

In the doExecute(), one of the asn
number assignment was still happening
in the int format. Fixed it by changing
the data type to Long, keeping in line
with changes done in :
https://git.opendaylight.org/gerrit/#/c/48845/3

Change-Id: I62d63f959c0b3e027d0869f2e1e2650142672e61
Signed-off-by: Sumanth MS <sumanth.ms@ericsson.com>
8 years agoBUG 7331: CLI command to create VPNs allows creation of two VPNs with the 02/49202/2
eupakir [Fri, 9 Dec 2016 07:14:57 +0000 (12:44 +0530)]
BUG 7331: CLI command to create VPNs allows creation of two VPNs with the
same RD

Two VPNs with the same RDs cannot be handled by the VPN Engine. Hence this
will not be allowed.

Change-Id: I4955ba73ed928a8ba9b671e772da3e7c644035e6
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
8 years agoBug 6589 Adding retry mechanism to listener 97/49197/2
Akash [Wed, 7 Dec 2016 07:13:57 +0000 (12:43 +0530)]
Bug 6589 Adding retry mechanism to listener

Added retry mechanism to HwvtepNodeBaseListener listner
registration

Change-Id: I6f879e65f2ae64e9b2bc5a6e4efa8c4edb5eb0df
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoBUG 7264 Fix missing flows for Remote SG rule 09/49109/3
Vinh Nguyen [Wed, 7 Dec 2016 19:50:11 +0000 (11:50 -0800)]
BUG 7264 Fix missing flows for Remote SG rule
  Problem: Missing SG remote flows to the first VM associated
  with the SG. The sample reproduction scenario as below:
    1. create empty SG1
    2. create VM1 with the SG1
    3. add custom TCP rule to SG1 with remote group id as SG1
    4. create VM2 with the SG1
  There is flow for TCP rule added for VM1 to VM2 but the flow
  from VM2 to VM1 is missing

  Solution: In this problem when in step 3), VM1 is not added to
  the remote SG cache as a first member of the remote SG.
  As a result, in step 4 VM1 is not seen as not associating with
  SG1 and therefore flow to it is not created.
  The fix is to add the VMport-SG association to the remote SG
  cache when the first rule is created for a VM with empty SG

Change-Id: I9f4c500a8ec87659d44801474a92227420a789e2
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
8 years agoBug 7324: Stale FIB Entries are not getting Removed 78/49178/2
karthikeyan [Thu, 8 Dec 2016 08:34:10 +0000 (14:04 +0530)]
Bug 7324: Stale FIB Entries are not getting Removed

Added code to remove Stale FIB entries after NAPT switch over

Change-Id: Ic97e3bc52dc7e1a492cc4c39ebcfdc7cb645d91d
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
8 years ago7280 - ARP Responder fix for Floating Ips (extension of bug 6726) 62/49162/4
Hari Krishna [Thu, 8 Dec 2016 00:45:42 +0000 (06:15 +0530)]
7280 - ARP Responder fix for Floating Ips (extension of bug 6726)

This fix introduces the ability to automatically respond to ARP
requests coming for Floating IPs from the external network.  The fix
builds further on the ARP responder infrastructure brought in via review
https://git.opendaylight.org/gerrit/#/c/46231 which addressed Bug 6726

Change-Id: Ib8a39644ae52c46e76a6d3893af9a0396d0b678a
Signed-off-by: Hari Krishna <hari.i.krishna@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoBug 7236: handle high rate of src mac learning packet-ins 65/49165/2
Olga Schukin [Mon, 5 Dec 2016 14:54:22 +0000 (16:54 +0200)]
Bug 7236: handle high rate of src mac learning packet-ins

ElanPacketInHandler now uses DataStoreJobCoordinator in order to handle
packetins from table 50, and freeing the notification thread
(Author - Tomer P.)

Depends-On: https://git.opendaylight.org/gerrit/48987

Change-Id: I81f50bdeaca75ac24a4702a3b4f2da5fd99d80d7
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agoBug 7081 - NAPT is not functional 83/49183/2
Tali [Wed, 7 Dec 2016 09:12:50 +0000 (11:12 +0200)]
Bug 7081 - NAPT is not functional

This is the second patchset attempting to fix NAPT feature breakage.
It is independent of the first one https://git.opendaylight.org/gerrit/#/c/48867
and contains the following changes:

* PSNAT_TABLE -> output to tunnel is not installed on tunnel creation
* NPE thrown from VpnInterfaceManager and InterfaceStateChangeListener when VpnInterface
non-mandatory fields are missing

Change-Id: I5ce692f18d0aa7eec42555a5fc6717c9816aedbc
Signed-off-by: Tali <tali.ben-meir@hpe.com>
8 years agoBug 7081 - NAPT is not functional 82/49182/2
Tali [Sun, 20 Nov 2016 09:56:28 +0000 (11:56 +0200)]
Bug 7081 - NAPT is not functional

This is the first patchset attempting to fix NAPT feature breakage.
It contains the following changes:

* Installation of the router-gw flow in MY_MAC table on the NAPT switch
* ARP responder flows for the router-gw IPs on the NAPT switch
* Split-horizon bit is reset on ARP responder flows for router-GW and NAPT_PFIB table
before egress to ext-net group
* Fix NaptFlowRemovedEventHandler BP definition
* Send external GW ARP resolution requests only from the NAPT switch with the router GW MAC

Open issues to be covered in the next patchset:

* PSNAT_TABLE -> output to tunnel is not installed on all the compute nodes
* INBOUND_NAPT_TABLE/OUTBOUND_NAPT_TABLE flows per sessions are not always installed

Change-Id: Ie8b92ed2a3d71938829cafb568e21c35e4a96b32
Signed-off-by: Tali <tali.ben-meir@hpe.com>
8 years agoBug-7253: Added learn support for other protocols rule (protocol Number) 49/49149/3
VinothB [Thu, 8 Dec 2016 19:32:43 +0000 (01:02 +0530)]
Bug-7253: Added learn support for other protocols rule (protocol Number)

  *This patch supports user option to create a security rule for
  other protocol with protocol number.
  *learn rule will be created for TCP,UDP and ICMP protocol Numbers.
  *Remaining  Protocol Numbers rule will be create with "goto_table" action.

Change-Id: I011d8672ed4a6460ec25c556c6b99954456f005f
Signed-off-by: VinothB <vinothb@hcl.com>
8 years agoBug-7128: Added learn support for other protocols rule (ANY) 20/48720/11
VinothB [Mon, 7 Nov 2016 19:30:40 +0000 (01:00 +0530)]
Bug-7128: Added learn support for other protocols rule (ANY)

This patch supports user option to create a security rule for
other protocol and no protocol number (ANY).
It treats such a rule as TCP(ALL)+ICMP(ALL)+UDP(ALL)+other.

Change-Id: I542d149ce8375ecad6727732a2eb063a8bc1db57
Signed-off-by: VinothB <vinothb@hcl.com>
8 years agoBug 7250: Add IPv6 integration tests 26/49126/2
Sridhar Gaddam [Mon, 28 Nov 2016 09:35:41 +0000 (15:05 +0530)]
Bug 7250: Add IPv6 integration tests

This patch implements the following.
1. Enhances the current Netvirt IT tests to support IPv6 subnets,
   security groups etc.
2. Validates IPv6 L2 connectivity between two VMs on the same
   tenant network.
3. Validates IPv6 East-West Routing support via Neutron tenant
   router.
4. Fixes an issue in IPv6 LLA generation API.

Change-Id: Ic605cb0b1ef0791c889ca0d7f6852b93299118ff
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
(cherry picked from commit 53c4f80d4558662aaa441db8b503be378e705020)

8 years agoBug 6998: Fix for VM Instance . Ip Address Not Assigned 30/48930/8
hari.pr [Fri, 2 Dec 2016 21:42:47 +0000 (03:12 +0530)]
Bug 6998: Fix for VM Instance . Ip Address Not Assigned

    * Problem: Bulk creation of VMs results in VM not acquiring IP.
    * Fix: Optimized the reduntant write calls in DistributedArp Service.

Change-Id: I7a2bb8ab4d79362455ea71ebb4bfcdc78dfb3e40
Signed-off-by: hari.pr <hari.pr@hcl.com>
8 years agoBug 7302: Enable Ping Responder for router interface IPs , on a BGPVPN 52/49152/1
HANAMANTAGOUD V Kandagal [Fri, 2 Dec 2016 14:13:11 +0000 (19:43 +0530)]
Bug 7302: Enable Ping Responder for router interface IPs , on a BGPVPN
that has this router associated.

Multiple fixes for this issue :

(a) When router is associated to BGPVPN , the route gateway IP (x.x.x.1)
is not moved from internal VPN to BGPVPN.

(b) When a network , subnet , router is created and VM is booted , ARP
RESPONDER table (81) contains router gateway MAC in eth_src field.
When router is associated to BGPVPN , eth_src filed in table=81 , entry is
replaced with VM's connected MAC address.

It leads to ping failures.

(c) A network , subnet , router is created and VM is booted. MY MAC table
(19) contains router gateway MAC address . When the router is associated
with BGPVPN , VM's MAC address is added into MY MAC table (19) which is
incorrect.
When router is disassociated , VM's MAC address entry remains in table=19
(stale entry)

Change-Id: Ifd19bdbda90a082bd6f7e21df29d8257ce9eb534
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoIT for provider network 08/49108/3
Josh [Sun, 30 Oct 2016 15:10:06 +0000 (17:10 +0200)]
IT for provider network

Ping between ports on different nodes
Uses a docker image that:
a) expects two networks, one for mgmt traffic and one for the provider
network
b) binds ovsdb-server to the mgmt nic only
c) sets the provider nic in provider_mappings

Details about the image can be found here:
https://github.com/jhershberg/docker-centos-ovs/tree/two-nics

This commit depends on:
https://git.opendaylight.org/gerrit/#/c/47757/

Change-Id: Ia912dd12ed44769df3c94708712ddeda3f59d669
Signed-off-by: Josh <jhershbe@redhat.com>
(cherry picked from commit 382c823fd7225e383813a649d11bae5115a0272b)

8 years agocleanup unused dependencies for ipv6 14/49114/2
Sam Hague [Wed, 7 Dec 2016 21:09:27 +0000 (16:09 -0500)]
cleanup unused dependencies for ipv6

Change-Id: I8762913def90f147996f8066bda0942d287d57b0
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agocleanup unused dependencies for it 13/49113/2
Sam Hague [Wed, 7 Dec 2016 21:10:02 +0000 (16:10 -0500)]
cleanup unused dependencies for it

Change-Id: Id209d623fff18037815fb6f6f87a524f2896e9b5
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agocleanup from previous cherry-picks 05/49105/1
Sam Hague [Wed, 7 Dec 2016 19:26:00 +0000 (14:26 -0500)]
cleanup from previous cherry-picks

Change-Id: I82b67b1ed037bba6bb6e18da3e31c54344e76658
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 7236: Add temporary SMAC learning table 95/49095/2
Olga Schukin [Wed, 30 Nov 2016 14:46:10 +0000 (16:46 +0200)]
Bug 7236: Add temporary SMAC learning table

Temporary source MAC learning introduces two new tables to the ELAN
service, for OVS-based source MAC learning using a learn action,
to reduce a large scale of packets punted to the controller for an
unlearned source MAC.

Spec: https://git.opendaylight.org/gerrit/48835
Depends-On: https://git.opendaylight.org/gerrit/48834

Change-Id: I5b9351c4fde39e12f8062d5df3ec582c24077b44
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agoBug 7239 : Multiple FIB entries for extra route get created when neutron 60/49060/2
ehvkand [Fri, 25 Nov 2016 08:42:17 +0000 (14:12 +0530)]
Bug 7239 : Multiple FIB entries for extra route get created when neutron
route-update is done

When a router is updated with extra route for a given destination IP and
nexthop IP (VM-IP=IP1) , even before VM is booted, FIB entry doesnt get
created because VM is interface itself is not yet available. When VM (IP1)
is booted , FIB entry for IP1 alone gets created.
When next VM (IP2) is booted , FIB entry for extra route gets created
twice along with FIB entry of IP2.

Change-Id: I62ebe661169931b5d4e74050c07d5839859e6be4
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 7298: NPE in vpn manager 42/49042/2
David Goldberg [Wed, 23 Nov 2016 10:38:51 +0000 (12:38 +0200)]
Bug 7298: NPE in vpn manager

NPE in vpn manager when configuring layer 3 services directly without
using neutron.

Change-Id: Ife4d422807141ee0766bfe10fc9eaccaff44952e
Signed-off-by: David Goldberg <gdavid@hpe.com>
8 years agoBug 7294: Use delete_learned flag on learn flows 40/49040/2
Alon Kochba [Mon, 5 Dec 2016 08:17:40 +0000 (10:17 +0200)]
Bug 7294: Use delete_learned flag on learn flows

Change-Id: Ifa9ae8da0537f444835021280db8652f874d360c
Signed-off-by: Alon Kochba <alonko@hpe.com>
8 years agoRevert "Bug 7239 : Multiple FIB entries for extra route get created when neutron" 45/49045/1
Vivekanandan Narasimhan [Tue, 6 Dec 2016 16:53:28 +0000 (22:23 +0530)]
Revert "Bug 7239 : Multiple FIB entries for extra route get created when neutron"

This reverts commit c3ee9c6b8257d21e050c3c5476f36306c46e4535.

Change-Id: I8ee81d8b21a0dd1a95b878d7d78760e7affcf21d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoBug 6589 Logging exception 32/49032/1
Akash [Tue, 6 Dec 2016 06:49:36 +0000 (12:19 +0530)]
Bug 6589 Logging exception

Made changes to log exception submitted to job scheduler

Change-Id: I7988b5dda55d2e192e7a6ee8213f1ce293c02b04
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoFcaps: changing alarm text parameter to be same while raising and clearing 06/49006/2
gowri [Wed, 30 Nov 2016 08:53:19 +0000 (14:23 +0530)]
Fcaps: changing alarm text parameter to be same while raising and clearing

Change-Id: I92e8b2d202779f0df3fa4d90868e36c52a9b95ec
Signed-off-by: gowri <gowri.r@ericsson.com>
(cherry picked from commit 96e9465bf5cd49600a74f10c6ad4d9c39220cec1)

8 years agoBug 7239 : Multiple FIB entries for extra route get created when neutron 58/48958/2
ehvkand [Fri, 25 Nov 2016 08:42:17 +0000 (14:12 +0530)]
Bug 7239 : Multiple FIB entries for extra route get created when neutron
route-update is done

When a router is updated with extra route for a given destination IP and
nexthop IP (VM-IP=IP1) , even before VM is booted, FIB entry doesnt get
created because VM is interface itself is not yet available. When VM (IP1)
is booted , FIB entry for IP1 alone gets created.
When next VM (IP2) is booted , FIB entry for extra route gets created
twice along with FIB entry of IP2.

Change-Id: I8e1b1f28cbefb2278a5b3ce2eb33b0a92aa2fde1
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
8 years agoFix Bug #7289 Set delete_learned flag to Acl Learn flow Entries 50/48950/4
gvrangan [Sat, 3 Dec 2016 01:04:51 +0000 (01:04 +0000)]
Fix Bug #7289 Set delete_learned flag to Acl Learn flow Entries

* The learnt entries will get deleted as soon as the
 flows that created them get deleted.

Change-Id: I55cc9c09421e05abd1d4bf7ecacaf2485b45b376
Signed-off-by: gvrangan <venkatrangang@hcl.com>
8 years agoBug 7263: Spread InterVpnLinks among available DPNs 51/48951/2
Miguel Perez [Mon, 28 Nov 2016 15:30:51 +0000 (16:30 +0100)]
Bug 7263: Spread InterVpnLinks among available DPNs

 + Avoids as much as possible to place InterVpnLinks
   in the same DPNs.

 + This way, BGP router will not overload one specific DPN

Change-Id: I99fccd3542d5a904369d8de91b6b4117cd070acd
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 6589 adding support for hwvtep devices ha 40/48940/2
Akash [Mon, 28 Nov 2016 13:48:49 +0000 (19:18 +0530)]
Bug 6589 adding support for hwvtep devices ha

Deletion of Elan-Instance was not deleting associated L2gwconnection .
Also L2gwdeletion was dependent on Elan-Instance which was removed and can
be deleted independently now.
Introduced new Listner ELanInstanceListner which will listen to deletion
of elan instance and will delete corresponding l2gwatewayConnection .
Added l2GwConnection reset CLI to reset all connections object.

Change-Id: Ieedad9ad290c56e9b811d4ee419ad3a20dd369ec
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoBug 6589 adding support for hwvtep devices ha 46/48946/2
Akash [Thu, 1 Dec 2016 09:41:53 +0000 (15:11 +0530)]
Bug 6589 adding support for hwvtep devices ha

Adding ElanGroupListner to handle cluster reboot scenario .
Under cluster reboot scenario elan l2gw cache will not be
getting filled in all the cluster nodes as that job is part of runonly in
leader node task. Hence if Dpn's got updated later at another leader node
then Mcast Mac and broadcast group in l2gw devices and DPNs will not be
updated (Race condition ) . To handle that scenrio this listner has been
introduced.

Change-Id: Ic741e7e6b9e3b5a888517582e9a88a1a978d2e10
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoBug 6668 - Security Groups (all implementations) - port_security 41/48941/2
Aswin Suryanarayanan [Thu, 1 Dec 2016 18:23:12 +0000 (23:53 +0530)]
Bug 6668 - Security Groups (all implementations) - port_security
extension and default DHCP/ICMP drop rules

Changed getPortSecurityEnabled to check the device Owner

Change-Id: I69058c6465f1745c9c6d7dacaf9a07b8f0b13510
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
8 years agoBug 6833: InterVpnLink FIB routes not populated when no VM on VPN 47/48947/1
Miguel Perez [Wed, 21 Sep 2016 13:41:37 +0000 (15:41 +0200)]
Bug 6833: InterVpnLink FIB routes not populated when no VM on VPN

 + FIB table's flow that send the packet to BGP router for BGP-exported
   route is not being populated when there is an InterVpnLink
   but there are no VMs in the included VPNs.

 + At InterVpnLink creation, it checks if the VPN Operational data is
   ready, and wait 20 seconds for it to be ready.

 + Fix is based on calling method fibManager.populateFibOnNewDpn()
   when the InterVpnLink is created. Even if there are no real VPN
   Interfaces installed on any DPNs, the InterVpnLink installs 2 fake
   VpnInterfaces on the selected DPN(s). This wasn't triggering the
   'createFibEntries' as real VpnInterfaces did.

 + Also, solves the problem of creating an InterVpnLink when the
   Operational Data of a VPN is not ready yet

    - New class VpnOpDataNotifier that offers methods like waitForXXXX,
      to which other classes like VpnInterfaceManager or
      InterVpnLinkListener can subscribe to. There must be only object
      of this type per module, and it must be injected to the interested
      classes via Constructor

Change-Id: Ib3fdcfe5946288b288ab3453bdcb9f2e68bdcb6e
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 7283: Fix exception in VpnInterfaceManager for IPv6 subnets 43/48943/2
Sridhar Gaddam [Thu, 1 Dec 2016 15:31:58 +0000 (21:01 +0530)]
Bug 7283: Fix exception in VpnInterfaceManager for IPv6 subnets

Commit cb7992e6bfe76535933e5c111dea56b230f30dd5 implements Arp
responder for internal subnet GW addresses. Arp equivalent in IPv6
is Neighbor discovery and currently there is no support in OpenFlow
to program rules to auto-respond to Neighbor Solicitation requests.
So, this patch updates the code to program arp responderer rules
only for IPv4 subnets.

Change-Id: Id7f8d506d38f5acbf075402656d3dae10802fc64
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
8 years ago Bug 7233: Multiple VLAN external network communication failed while using compute... 51/48851/4
vinoth [Thu, 1 Dec 2016 13:00:55 +0000 (18:30 +0530)]
 Bug 7233: Multiple VLAN external network communication failed while using compute nodes.

   * Previously when compute node is connected into ODL, that time data path id return from compute node.
   * Compute node doesn't have any patch port details.
   * Currently modify the logic that data path id read from control node which has patch port value details.

Change-Id: I4e41e9ff8d1fb2ecd999da2625d71c15638b4fee
Signed-off-by: vinoth <m.vinoth@hcl.com>
8 years agoBug 7247-The BGP configuration is getting configured as "router bgp 0" 39/48939/2
Sumanth MS [Wed, 30 Nov 2016 21:04:20 +0000 (02:34 +0530)]
Bug 7247-The BGP configuration is getting configured as "router bgp 0"

Incorporates following changes:
1) Support for 4 byte AS number from the
existing 2 byte.
2) Fix for bgp display commands to work in COMCLI
3) Additionally added debug statement in the code
4) Method onUpdateWithdrawRoute added with nexthop
information. Currently the nexthop information is
not considered when route is withdrawn.

Change-Id: I045f8901869e7c94b3a8039b993c8062751aa63c
Signed-off-by: Sumanth MS <sumanth.ms@ericsson.com>
8 years agoBug 7233: Multiple VLAN external network communication failed while using compute... 42/48942/1
vinoth [Thu, 1 Dec 2016 12:43:11 +0000 (18:13 +0530)]
Bug 7233: Multiple VLAN external network communication failed while using compute nodes.

  * Previously when compute node is connected into ODL, that time data path id is return from compute node.
  * Compute node doesn't have any patch port details.
  * Currently modify the logic that data path id read from control node which has patch port value details.

Change-Id: I4215cba6688675d5977339a57f50fa74162cf467
Signed-off-by: vinoth <m.vinoth@hcl.com>
8 years agoBug 7278 - SC to Elan handover flows priority is wrong 63/48863/3
Miguel Perez [Tue, 29 Nov 2016 16:34:57 +0000 (17:34 +0100)]
Bug 7278 - SC to Elan handover flows priority is wrong

 + The flow that takes the traffic comming from ServiceChaining and
   handovers it to Elan is being set with default priority. However,
   it must be set to ServiceChaining priority

Change-Id: I0add87af0fafc1de2d7eb2ddb2890f4a8aa7503c
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
8 years agoBug 7170: ARP thread is sleeping 2s 87/48887/2
Olga Schukin [Sun, 27 Nov 2016 10:01:35 +0000 (12:01 +0200)]
Bug 7170: ARP thread is sleeping 2s

ARP thread is sleeping 2s each time MAC migration occurs

1. Koby: every time a MAC migration occurs (i.e. ArpNotificationHandler
notices a MAC change), instead of removing the entry & sleeping for 2s,
it will remove the entry & add that "VPNInstance+IP" to a "dirty IPs"
hashmap with timestamp. Now, each time ArpNotificationHandler is about
to learn a new IP, it will compare against that "dirty IPs" hashmap
and will ignore the learn in case 2s hasn't passed yet.
This will make sure the notification thread is not blocked.

2. Learn from GARP and ARP Responses only.

Change-Id: Ic3d6f58bd1a8ff5b9e29abd9280c3954fd7c7fb3
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agoBug 7282 - The egress table flows(table 220) are not deleted on port 88/48888/2
Aswin Suryanarayanan [Thu, 1 Dec 2016 12:46:50 +0000 (18:16 +0530)]
Bug 7282 - The egress table flows(table 220) are not deleted on port
delete.

Changed the flow removal from interface state listener to interface
listener.

Change-Id: I8b7920de826a58b0ba25c08a42636b127f36bc51
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
8 years agoBug 6589 adding support for hwvtep devices ha 01/48601/6
Akash [Tue, 22 Nov 2016 13:05:01 +0000 (18:35 +0530)]
Bug 6589 adding support for hwvtep devices ha

Updating existing Listners to adher the changes done for HA changes and
extend newly introduced base listner class.
Updated newly added listners in Bulprint xml file
Added new Cli to give info on HA and L2gw device

Change-Id: Ib7a5d06a4b2d390e8ce7b0237ddba04ba0e07a51
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoAdd configurable timeouts for acl security groups in Legacy NetVirt. 21/48821/2
Bertrand [Wed, 30 Nov 2016 09:10:32 +0000 (01:10 -0800)]
Add configurable timeouts for acl security groups in Legacy NetVirt.
Also sync up default timeout values with those in current new
NetVirt (see aclservice-config.yang)

Change-Id: I310e7c34c75ee0c16d503c974e0284c076f473c0
Signed-off-by: Bertrand <bertrand.low@hcl.com>
8 years agoBug 6589 adding support for hwvtep devices ha 50/48750/2
Akash [Thu, 24 Nov 2016 06:55:50 +0000 (12:25 +0530)]
Bug 6589 adding support for hwvtep devices ha

HWVTEPPhysicalSwitchListner changes to sycn with changes required for
supporting HA feature. If new physical switch got connected , based on if
HA enabled node or not rest of actions are taken.

Change-Id: I282256bea20cc82462184a62db7462ae244951c5
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agolegacy netvirt: forcibly disable port security for network port 93/48693/3
balakrishnan [Sun, 6 Nov 2016 19:24:21 +0000 (00:54 +0530)]
legacy netvirt: forcibly disable port security for network port

   *Security group applies to only VM port. Not to internal used port.
   *Even openstack sends port security enabled true ODL should not apply
    SG for router interface port, dhcp port and floating ip port.

Change-Id: If73116661a1b20f06c36ce935330b01e76cf5a82
Signed-off-by: balakrishnan <balakrishnan.ka@hcl.com>
8 years agoListen on Topology Node instead of Inventory's 47/48747/2
Miguel Perez [Mon, 21 Nov 2016 18:37:55 +0000 (19:37 +0100)]
Listen on Topology Node instead of Inventory's

 + Topology Node under "flow:1" raises less DCNs than Inventory
   Node under "openflow:1" and serves same purpose here

 + This is a change analogous to change [1]

 + Changes the name of the class from "NodeListener" to
   "VpnToElanFallbackNodeListener" to differentiate it from some
   other "NodeListener"s

 [1] https://git.opendaylight.org/gerrit/#/c/47542/

Change-Id: Iaaba48c443d0d7e268052c09139aba3512df1cc7
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 7234 : Placeholder for BGP minor fixes 56/48756/2
Vyshakh Krishnan CH [Mon, 28 Nov 2016 08:21:04 +0000 (13:51 +0530)]
Bug 7234 : Placeholder for BGP minor fixes

Issue 1:
Modified BGP-Util MD-SAL read, not to supress the exception.
As this exception is used for BGP configuration retry mechanism.

Issue 2:
BGP stale path timer will be shown as default.

Issue 3:
BGP replay mechanism: Publishes internal VRF's & prefixes before
neighborship configuration.
6windQuagga EOR(End of Rib) marker: EOR Marker sent immediately after the
neighborship establishment.
So in case of BGP-restart scenario, 6windQuagga sends EOR immediately
after the session establishment,
in this scenario, the prefixes which are published earlier (before
restart) will be purged till CSC
replays them. Due to this there will be impact in datapath between
local-VM's to external DC-Gwy.

Change-Id: I6fababd4f8b5f8a96bc2f1e72fefdaf089f75d50
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
8 years agoBug 6786: L3VPN is not honoring VTEP add or delete in operational cloud 55/48755/1
ehvkand [Mon, 21 Nov 2016 06:03:15 +0000 (11:33 +0530)]
Bug 6786: L3VPN is not honoring VTEP add or delete in operational cloud

As part of making L3VPN honor VTEP add-delete operation , this is a third
set of changes.

This code review contains following fixes :

1. When tunnel UP event is received upon TEP add , VpnInterfaces Adj and
VRF entry is updated as a part of DJC. There exists a race condition
between DJC and populateInternalRoutesOnDpn . In
populateInternalRoutesOnDpn , if remote NH list is empty , remote route is
not populated. With the fix , handleRemoteRoute is called with
updateVpnInterfaceOnTepAdd method to populate the route on remote DPN.

2. When tunnel EP is deleted on a DPN , VPN gets two deletion event. One
for a DPN on which tunnel EP was deleted and another for other-end DPN.
Update the adj for the vpninterfaces for a DPN on which TEP is deleted.
Dont update the adj for vpninterfaces for a DPN on which TEP is not
deleted. DPN on which TEP is deleted , endpoint IP will be null.

3. When tep is added on a DPN , tunnelinterfacestatechange listener gets
event with srcDpn , destDpn. When a FIB entries of srcDpn are being
programmed on destDpn , get egress action failed because tunnel interface
on destDPN may not be created yet. Hence FIB entry creation logic is
modified. FIB entries of destDPN are populated on srcDpn.

4. When TEP is deleted on DPN1 , 2 TEP delete events are received. One for
a DPN1 and another for DPN2. For DPN2 , TEP configuration is intact , but
tunnel is down. Only VRF entries of prefixes on DPN1 will be modified.

Change-Id: I4f9dc18f211464dc80874c944f5c200622a3feb3
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
8 years agoBUG 6726 : Arp Responder for Internal Subnet Gateway IPAddress 78/48678/3
karthik.prasad [Fri, 11 Nov 2016 07:34:38 +0000 (13:04 +0530)]
BUG 6726 : Arp Responder for Internal Subnet Gateway IPAddress

Since all ARP Requests for Gateway IP are punted to controller,
when controller reboots these ARP requests are lost and so
they are not processed. This results in datapath traffic failure
during controller outage duration.

This enhancement introduces a new ARP Responder Table on the
OVS Datapath which will be used to service ARP requests without
the intervention of the controller.   Thereby it enables a
highly available datapath even during controller outage.

This enhancement attempts to address the following 3 usecases:
1. Responding to ARP request for router interface ip address.
2. Responding to ARP request for subnet gateway ip address in case
there is no router interface to serve that subnet gateway ip address.
3. VLAN Tagged ARP packets.

The MYMAC Table (or GWMAC Table) matches on ARP Requests and sends
that same packet to DISPATCHER, CONTROLLER and the new ARP RESPONDER
TABLE.  As of this enhancement, the ARP RESPONDER TABLE is numero 81.

In table 81 an entry is created per gateway IP and lPortTag for an ARP, on
match of the entry an ARP reply packet is created with macaddress of
either the router gateway interface (or) connected macaddress
(in case of direct network association) and forwarded to table 220,
from where packets are sent back to IN_PORT.

This enhancement review also depends on NICIRA ARP actions introduced in
Genius project (refer ActionType.java in Genius repository).
Sample flow entry of ARP Responder Table is attached below.

cookie=0x1c361405, duration=27.172s, table=81, n_packets=1, n_bytes=42,
priority=100,arp,metadata=0x60000300000222e0/0xffffff00fffffffe,arp_tpa=20.20.20.1,arp_op=1
actions=move:NXM_OF_ETH_SRC[]->NXM_OF_ETH_DST[],set_field:fe:16:3e:32:29:64->eth_src,
load:0x2->NXM_OF_ARP_OP[],move:NXM_NX_ARP_SHA[]->NXM_NX_ARP_THA[],move:NXM_OF_ARP_SPA[]->NXM_OF_ARP_TPA[],
load:0xfe163e322964->NXM_NX_ARP_SHA[],load:0x14141401->NXM_OF_ARP_SPA[],
load:0->NXM_OF_IN_PORT[],load:0x300->NXM_NX_REG6[],resubmit(,220)

Change-Id: I1e6d60982e0d474c33cfa89a90737f2e7735f1a3
Depends-On: Ida59553187ba20b10bbc4e08d20e491d5dd72200
Signed-off-by: karthik.prasad <karthik.p@altencalsoftlabs.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoBug 6589 adding support for hwvtep devices ha 42/48342/3
Akash [Tue, 8 Nov 2016 07:29:53 +0000 (12:59 +0530)]
Bug 6589 adding support for hwvtep devices ha

Added listners for corresponding mergers and commands added earlier.
Added Handlers to handle event triggred from listners.
Listners -
HAConfigNodeListener : Listenes to HA node on config data tree and
add/delete/update corresponding HA child config node when triggred.
HAOpClusteredListener : Listenes to HA node on operational data tree in
cluster and update the cache based on connect/reconnect of HA node or
update of non-node to HA node .
HAOpNodeLsitener : Listners to HA child node on operational data tree and
add/delete/update corresponding HA node Operational when triggred .
HwvtepNodeBaseListener : Basic listners which is extended by rest listners
specially for HA feature .
Handlers -
ConfigNodeUpdatedHandler : Handles event from HAConfigNodeListener such as
copying HA ps node data to HA child ps node and HA global Node data to HA
child global node in Config data tree .
OpNodeUpdatedHandler : Handles event from  HAOpNodeLsitener such as copying
HA child ps node data to HA ps node and HA child global Node data to HA
global node in Operational data tree .

Change-Id: I01789c7d783b104095c914ea95d14b52f720a051
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoBug 6589 adding support for hwvtep devices ha 29/48229/8
Akash [Thu, 6 Oct 2016 10:11:24 +0000 (15:41 +0530)]
Bug 6589 adding support for hwvtep devices ha

Added 4 merger classes to merge the data between ha child and parent node.
GlobalNodeMerger – takes care of merging the Node attributes
GlobalNodeAugmentationMerger – takes care of merging augmentation
attributes
PSNodeMerger – takes care of merging Physical Switch Node attributes.
PSAugmentationMerger – takes care of merging physical switch augmentation
attributes

NodeConnectedHandler takes care of merging the data when a node gets
connected.
When a ha child node gets connected , we perform the following.
Merge the ha parent config data to child node.
Merge the ha parent physical node config data to child physical node.
Merge the child operational data to parent operational data.
Merge the child physical switch node operational data to parent physical
switch operational node

Change-Id: I4defbe942b39bc05b3f5b9815a11e722ddc3991b
Signed-off-by: Akash <a.k.sahu@ericsson.com>
8 years agoBug 7096: After disassociation/association of Router to VPN , it takes 80/48580/3
ehvkand [Mon, 7 Nov 2016 10:34:39 +0000 (16:04 +0530)]
Bug 7096:  After disassociation/association of Router to VPN , it takes
2minutes to update in FIB table

When router is associated to VPN or dis-associated , VpnInterface update
is triggered which will remove vpninterface from old VPN and add it into
new VPN after waiting for FIB to remove VpnInterface from Operational DS.
If config and operational shard are on different PL , the java
notification mechanism used to notify will not work . Hence VpnInterface
update thread will wait for maximum time before adding vpn interface.

To solve it , VpnInterface Op DS and VpnInstance Op DS cache manager is
introduced. Also timer task will not wait on java notification. It will
poll periodically to check whether vpnInterface is removed from old VPN.

Change-Id: I5878e86e80ffe602cd1a4a683fc1458c808aff87
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoBug 6786: L3VPN is not honoring VTEP add or delete in operational cloud 33/48633/1
HANAMANTAGOUD V Kandagal [Thu, 3 Nov 2016 16:22:23 +0000 (21:52 +0530)]
Bug 6786: L3VPN is not honoring VTEP add or delete in operational cloud

As part of making L3VPN honor VTEP add-delete operation , this is a second
set of changes.

This code review contains a Tunnel state listner which listens on VTEP
add/remove events. When VTEP add event is received , interface manager
is queried for list of VpnInterfaces for a DPN on which VTEP is added.
For all those VpnInterfaces , adjacency is updated with a valid VTEP IP as
nexthop IP and also corresponding VRF entry is updated. Similarly on
receiving VTEP delete event , VpnInterface adjacency and VRF entry is
updated.
Also flow rules on DPN are updated accordingly on DPN.

Change-Id: Idca8e0ea674e1c9cfee2ba97b06ed1ae8b17297e
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
8 years agoRefactor the code that updates the vpn-to-dpn list 48/48548/4
Miguel Perez [Wed, 16 Nov 2016 14:30:59 +0000 (15:30 +0100)]
Refactor the code that updates the vpn-to-dpn list

 + This is a prerrequisite for fixing bug 6833 [1]

 + Code that updates the vpn-to-dpn data is being taking out
   of VpnInterfaceManager so that it can also be invoked from
   other places.

 + It is now implemented by the VpnFootprintService

 + It is also offered to other modules, like cloud-servicechain,
   via IVpnManager

 + It is the first step of refactoring this gerrit change that
   had grown too big and complex [2]

 [1] Bug 6833: InterVpnLink FIB routes not populated when no VM on VPN
 [2] https://git.opendaylight.org/gerrit/#/c/45979/

Change-Id: I069c539e5b958f958665b51142404de8f1be7b10
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 7192 - Inter-VPN link routes BGP leaking not working 94/48594/1
Miguel Perez [Thu, 27 Oct 2016 09:15:14 +0000 (11:15 +0200)]
Bug 7192 - Inter-VPN link routes BGP leaking not working

 + The error was setting the original vrfEntry's nexthop as the
   nexthop of the leaked route. This nexthop must be the other
   L3VPN's endpoint address

Change-Id: I37003321a595185afcf4e5df6f5d6d48e7fd4a62
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoAdded default Security Group to test modes other than transparent. 44/48544/2
Aswin Suryanarayanan [Tue, 18 Oct 2016 09:18:46 +0000 (14:48 +0530)]
Added default Security Group to test modes other than transparent.

The default SG enables communication between the VM spawned in default
SG, but does not allow external traffic.

Change-Id: I8c7735e8ddeeb1df65dabffa56382825abd4f697
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
(cherry picked from commit 53532c567667951e888eba47b94ca03c5f5abcee)

8 years agoApply checkstyle fixes on cloud-servicechain 49/48549/2
Miguel Perez [Thu, 17 Nov 2016 14:19:19 +0000 (15:19 +0100)]
Apply checkstyle fixes on cloud-servicechain

 + Fixes JUnit: some stubbing needed after removing the
   catches of Exception

 + Removes unnecessary dependency to other 'impl' project

Change-Id: Iff66093d3f01b09f7087a2ea75fe494873a62335
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
8 years agoBug 7208: Import-Export RT feature is not working on stable-boron 33/48533/2
HANAMANTAGOUD V Kandagal [Fri, 18 Nov 2016 16:51:26 +0000 (22:21 +0530)]
Bug 7208: Import-Export RT feature is not working on stable-boron

On sfi_boron , import-export RT feature is not working. The reason being,
VpnTarget type is referenced from wrong yang model.

Change-Id: Ieede4e63771ae1a589e560781f4e6ca1f133099d
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
8 years agoBug 7119: gw arp didn't resolve 42/48542/1
Olga Schukin [Wed, 16 Nov 2016 10:35:38 +0000 (12:35 +0200)]
Bug 7119: gw arp didn't resolve

Unbind service was not done while removing an external network
Fix - add vpn interface to the operational models for the external nw.

VpnInterface of the provider network port for flat/vlan network has no associated adjacencies but
still needs to be created in order to bind L3VPN service to traffic originated from ext-net.
As a result of not having VpnInterface in OPER DS we discovered there are leftovers in the service
bindings DS after VpnInterface removal (on ext-net delete).
An attempt to create new ext-net will fail to rebind to a new L3VPN service as this interface is already bound.
This fix will allow to clean up the service binding leftovers after ext-net delete operation.

Change-Id: I933052538e7ccd4b90ce5e499e56affdd83219c7
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agoBug 7188: VpnInterface creation is delayed for 90s 92/48492/2
Olga Schukin [Wed, 16 Nov 2016 10:21:23 +0000 (12:21 +0200)]
Bug 7188: VpnInterface creation is delayed for 90s

VpnInterface creation is delayed for 90s in case vpn instance was not
created first.
- Remove a dependency of task notifying on the router distinguisher value which is not set in case of vlan provider external network

Change-Id: I88f72b010c092ecfa79f920cf879bc7c4a34d9db
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
8 years agolegacy netvirt: forcibly disable port security for network port 83/48383/2
Isaku Yamahata [Tue, 15 Nov 2016 10:41:50 +0000 (02:41 -0800)]
legacy netvirt: forcibly disable port security for network port

Security group applies to only VM port. Not to internal used port.
router interface port, dhc port and floating ip port.
which can be identified by its device owner.
"network:{routerxxx, dhcp, floatingip}"
It can be realized by forcibly disabling port security on those port.

With port security extension enabled, neutron disabled port security.
The extension is, however, optional, so ODL shouldn't depend on it.

Partial-bug: #7128
Change-Id: I3295ebc0e77d387cdfb80be318ef048ba9763994
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
(cherry picked from commit 5da83fc96656d5be54b3451a2f221a2e780e52d4)

8 years agoCheckstyle for dhcpservice-impl 80/48380/1
Sam Hague [Tue, 15 Nov 2016 23:07:40 +0000 (18:07 -0500)]
Checkstyle for dhcpservice-impl

Change-Id: Ifb7faabc533ce5f397e9b5b84f040c3f684785d4
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 7168 - MAC Learning from ARP to be allowed on Ext-Interfaces 77/48377/1
Vivekanandan Narasimhan [Tue, 15 Nov 2016 03:56:16 +0000 (09:26 +0530)]
Bug 7168 - MAC Learning from ARP to be allowed on Ext-Interfaces

An earlier fix to make sure that Neutron configured IPs are not
learned here https://git.opendaylight.org/gerrit/#/c/48054/, has
broken the ability to learn MAC Addresses on external network
via external interfaces.

With this fix, we open the gate to allow MAC learning on all
packets coming from external interface.  This is not the best
possible fix for the problem, but this tentatively allows
the openstack use-case of external network access to continue to
be functional.

Closes-Bug: 7168
Change-Id: Ief6f8bfe26111e07e280a9245a44032a8f32f09d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
8 years agoSwitch the NeutronFloatingIP listener to DTCL 66/48366/1
Stephen Kitt [Thu, 9 Jun 2016 14:16:19 +0000 (16:16 +0200)]
Switch the NeutronFloatingIP listener to DTCL

This patch also adds a unit test to verify that the listener
registration works, and migrates to the standard Blueprint pattern of
two-phase listener creation and registration.

Change-Id: I57928b4258f5ef783dde93879136dbd9e148e820
Signed-off-by: Stephen Kitt <skitt@redhat.com>
8 years agoCheckstyle for dhcpservice-api 44/48344/1
Sam Hague [Mon, 14 Nov 2016 22:19:32 +0000 (17:19 -0500)]
Checkstyle for dhcpservice-api

Change-Id: I250b7c5c890e83cb1dfe392097e35b2b8d80dfec
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoFix version warning 41/48341/1
Sam Hague [Mon, 14 Nov 2016 20:28:55 +0000 (15:28 -0500)]
Fix version warning

Change-Id: I278cdb6dd6d0fb50db54e368f1c80aa2e7fc2b42
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 6089:Add support for All ICMP code and type in SG using learn 24/47824/4
hari.pr [Wed, 2 Nov 2016 15:29:38 +0000 (20:59 +0530)]
Bug 6089:Add support for All ICMP code and type in SG using learn

Change-Id: Iba3bab5d04976dfbf22ef5221a33d6d0cd4602cb
Signed-off-by: hari.pr <hari.pr@hcl.com>
8 years agoAdd aggregator pom for commons 39/48339/3
Sam Hague [Mon, 14 Nov 2016 19:19:46 +0000 (14:19 -0500)]
Add aggregator pom for commons

Change-Id: Ib999b7034a95be8a89d72d94dbf2fcd8e2df3404
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoMake aggregator poms consistent 37/48337/1
Sam Hague [Mon, 14 Nov 2016 15:38:00 +0000 (10:38 -0500)]
Make aggregator poms consistent

Change-Id: I24616e5c23b4d7e99697787dd2b07e6540feab6f
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoImplement InterVpnLink update operation 93/48293/2
Miguel Perez [Thu, 10 Nov 2016 16:07:06 +0000 (17:07 +0100)]
Implement InterVpnLink update operation

 + An update consists in removing the InterVpnLink and create it
   again with the new data.

 + Its important to ensure that there is no trace of the old
   InterVpnLink before persisting the new one

Change-Id: I025d454e76ba8063e3bf2e98e8eb8e1c8ccb662a
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
8 years agoBug 7162 - legacy netvirt: null pointer exception 98/48298/2
Isaku Yamahata [Sun, 13 Nov 2016 07:30:04 +0000 (23:30 -0800)]
Bug 7162 - legacy netvirt: null pointer exception

provider network type is optional so that it can be null. which causes
null pointer exception.
By default, legacy netvirt interprets network type as flat type.

> java.lang.NullPointerException
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.handleInterfaceDelete(SouthboundHandler.java:126)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processPortDelete(SouthboundHandler.java:190)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processPortEvent(SouthboundHandler.java:332)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processEvent(SouthboundHandler.java:274)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.dispatchEvent(EventDispatcherImpl.java:96)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.lambda$start$0(EventDispatcherImpl.java:58)[337:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_111]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_111]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]

Change-Id: I9c70552ba9faa7db86ceae31996db0ff287e8c78
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
(cherry picked from commit 8edd900883fcbe4e4be1a7c408268caf3b634f66)

8 years agoBug 7105: Fix learned matches for all TCP/UDP SG 19/48319/2
Alon Kochba [Tue, 8 Nov 2016 18:02:26 +0000 (20:02 +0200)]
Bug 7105: Fix learned matches for all TCP/UDP SG

Fixes learned matches for security rules allowing all
TCP/UDP to properly match the connection.
Refactor common learn implementation logic into common functions.

Change-Id: Ib94cb56cf8c026b85059f336ae042d0f1593e484
Signed-off-by: Alon Kochba <alonko@hpe.com>
8 years agoBug 7075: AlivenessMonitor skip non-neutron ports 18/48318/1
Alon Kochba [Mon, 7 Nov 2016 18:27:45 +0000 (20:27 +0200)]
Bug 7075: AlivenessMonitor skip non-neutron ports

Remove interface utilities from ElanUtils and use Genius.
Skip processing of non-neutron ports in aliveness monitor,
current code just assumes these are neutron ports and hits
an exception.

Depends-On: https://git.opendaylight.org/gerrit/#/c/48157

Change-Id: I1515b40876ad1859f7b9ae4eac384efe169a3eab
Signed-off-by: Alon Kochba <alonko@hpe.com>
8 years agoBUG-7093 24/48024/3
Bertrand [Sat, 5 Nov 2016 01:15:25 +0000 (18:15 -0700)]
BUG-7093

Do not add hw_addr configuration for integration
bridge creation when the bridge already exists on
the OVS node as this will cause the dpid on the OVS
node to change.

Change-Id: I11273e0e262c1135a351ea33e3e030116fb71cb5
Signed-off-by: Bertrand <bertrand.low@hcl.com>
8 years agoBug 7127 - legacy netvirt: null pointer exception SecurityServicesImpl 50/48150/4
Isaku Yamahata [Wed, 9 Nov 2016 04:21:11 +0000 (20:21 -0800)]
Bug 7127 - legacy netvirt: null pointer exception SecurityServicesImpl

With openstack CI, the following null pointer exception occurs
getDhcpServerPort() can return null.

> 2016-11-08 09:19:17,013 | ERROR | ntDispatcherImpl | EventDispatcher | 336 - org.opendaylight.netvirt.openstack.net-virt - 1.4.0.SNAPSHOT | Exception in dispatching event NorthboundEvent [handler=NEUTRON_PORT, action=UPDATE, port=NeutronPort [portUUID=7b5ef356-7384-466b-9fd0-36366bdfd9eb, networkUUID=f1c4b809-62e3-45bc-8eec-df5ef15cb017, name=, adminStateUp=true, status=null, macAddress=fa:16:3e:be:eb:b4, fixedIPs=[Neutron_IPs{ipAddress='10.1.0.21', subnetUUID='e4b5081c-b081-47c4-af47-f5b6bb28a2de'}], deviceID=613810e5-cb2b-4c19-b7e1-f8ead6cd303b, deviceOwner=compute:None, tenantID=7cdf7d5664f143eab4ea7f3a127ff704, securityGroups=[], bindinghostID=ubuntu-xenial-osic-cloud1-s3500-5245939, bindingvnicType=normal, bindingvnicType=normal, portSecurityEnabled=false], subnet=null, router=null, routerInterface=null, floatingIP=null, network=null, loadBalancer=null, loadBalancerPool=null, loadBalancerPoolMember=null, neutronsecurityRule=null]
> java.lang.NullPointerException
>         at org.opendaylight.netvirt.openstack.netvirt.impl.SecurityServicesImpl.syncFixedSecurityGroup(SecurityServicesImpl.java:462)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.NeutronL3Adapter.processPortSecurityEnableUpdated(NeutronL3Adapter.java:936)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.NeutronL3Adapter.handleNeutronPortEvent(NeutronL3Adapter.java:440)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.PortHandler.doNeutronPortUpdated(PortHandler.java:126)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.PortHandler.processEvent(PortHandler.java:208)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.dispatchEvent(EventDispatcherImpl.java:96)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.lambda$start$0(EventDispatcherImpl.java:58)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_91]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_91]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_91]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_91]
>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_91]

Change-Id: I22a50533f4e7270badefb3614147a5656e93b352
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
(cherry picked from commit 8ff29e702bdc59d65c640886e2fdc7b0e3b7b7bd)

8 years agoSupport for IPv6 East-West Routing 65/48265/3
Sridhar Gaddam [Tue, 25 Oct 2016 13:21:49 +0000 (18:51 +0530)]
Support for IPv6 East-West Routing

This patch supports IPv6 east-west communication using OpenFlow rules.

Use-cases verified:
-------------------
1. IPv6 East-West Routing (for dual-stack and IPv6 only network)
   on an all-in-one setup as-well-as multi-node setup.
2. Above use-case in transparent mode and Stateful SG mode.

Sample setup:
-------------
1. Create a Neutron router with two networks (say network1 and network2).
2. Create an IPv6 subnet (or dual-stack) in each network.
3. Associate all the subnets to the router.
4. Spawn VMs on network1 and network2.
5. Verify that ping6 from VM1 (on network1) to VM2 (on network2) is
   successful.
6. ODL virtual router should be able to support routing between the two
   networks using OpenFlow rules.

Change-Id: I7dff4dcccf9e746656ca04cb09f99b31f585fcd8
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
8 years agoBug 7126 - legacy netvirt: null pointer exception NeutronSubnetInterface.fromMd 49/48149/3
Isaku Yamahata [Wed, 9 Nov 2016 03:55:32 +0000 (19:55 -0800)]
Bug 7126 - legacy netvirt: null pointer exception NeutronSubnetInterface.fromMd

With openstack CI, legacy netvirt spits the following null pointer
exception.

> 2016-11-08 09:15:31,792 | ERROR | ntDispatcherImpl | TenantNetworkManagerImpl         | 336 - org.opendaylight.netvirt.openstack.net-virt - 1.4.0.SNAPSHOT | getDHCPServerPort:getDHCPServerPort failed due to
> java.lang.NullPointerException
>         at org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl.NeutronSubnetInterface.fromMd(NeutronSubnetInterface.java:178)
>         at org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl.NeutronSubnetInterface.getSubnet(NeutronSubnetInterface.java:84)
>         at org.opendaylight.netvirt.openstack.netvirt.impl.SecurityServicesImpl.getDhcpServerPort(SecurityServicesImpl.java:164)
>         at org.opendaylight.netvirt.openstack.netvirt.providers.openflow13.OF13Provider.programLocalSecurityGroupRules(OF13Provider.java:1056)
>         at org.opendaylight.netvirt.openstack.netvirt.providers.openflow13.OF13Provider.programLocalRules(OF13Provider.java:814)
>         at org.opendaylight.netvirt.openstack.netvirt.providers.openflow13.OF13Provider.handleInterfaceUpdate(OF13Provider.java:1194)
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.handleInterfaceUpdate(SouthboundHandler.java:101)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processPortUpdate(SouthboundHandler.java:343)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processPortEvent(SouthboundHandler.java:329)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.SouthboundHandler.processEvent(SouthboundHandler.java:274)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.dispatchEvent(EventDispatcherImpl.java:96)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at org.opendaylight.netvirt.openstack.netvirt.impl.EventDispatcherImpl.lambda$start$0(EventDispatcherImpl.java:58)[336:org.opendaylight.netvirt.openstack.net-virt:1.4.0.SNAPSHOT]
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_91]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_91]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_91]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_91]
>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_91]

Change-Id: Id02d8e4f76c2394b6e765e7dfb92e66693051769
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
(cherry picked from commit 97990d76bb26431039295f3d7d9c1b31512ee959)

8 years agoBUG-7016 flows fix the bug that flows is not corrrect after the 91/48291/2
wangqianyu [Thu, 10 Nov 2016 00:41:26 +0000 (08:41 +0800)]
BUG-7016 flows fix the bug that flows is not corrrect after the
reconnection of ovs

Fixes bug 7016
    1. do the all neutron port add when reconnect to ovs
    2. when dpip changed, change the action to add

Change-Id: I8a16c40078019096ef25b62253c47fc5bc562482
Signed-off-by: wangqianyu <wang.qianyu@zte.com.cn>
8 years agoBug 7157: Modify inter-VPN link model to enable route leaking 82/48282/2
Marcos López Samaniego [Tue, 8 Nov 2016 11:44:41 +0000 (12:44 +0100)]
Bug 7157: Modify inter-VPN link model to enable route leaking

Change-Id: I82ee50acb9c1d9b6b6a8a548d2b484d32fe9d787
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>