netvirt.git
7 years agoBug 7045: ACL: Default flows are not programmed in Cluster environment 73/47673/5
Shashidhar Raja [Thu, 27 Oct 2016 13:15:46 +0000 (18:45 +0530)]
Bug 7045: ACL: Default flows are not programmed in Cluster environment

AclNodeListener (which is a DataTreeListener) had ACL service entity owner
check. Because of this check, default flows were not pushed to the switch
in clustered environment. As a fix for the issue, this check has been
removed now

Change-Id: Ia33d22dbf65db28c4963a9375a341702af2c5503
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
7 years agoBug 7055: Interface removals donot keep Op DS and Cfg DS consistent. 15/47715/3
Vivekanandan Narasimhan [Fri, 28 Oct 2016 07:01:33 +0000 (12:31 +0530)]
Bug 7055: Interface removals donot keep Op DS and Cfg DS consistent.

Southbound driven interface removals (if northbound
port-delete gets delayed), fail to keep the
operational and config DS in sync.

This fix makes sure the missing operTxn submission
happens and it happens before the config DS submission.

Change-Id: I3a1e404c5eee12c0d69dea4eddd7d202efb72d69
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBUG 6940 - Avoid TZ subnet per neutron subnet 15/48015/2
Jaime Caamaño Ruiz [Fri, 14 Oct 2016 13:14:42 +0000 (15:14 +0200)]
BUG 6940 - Avoid TZ subnet per neutron subnet

Before this patch, each neutron subnet was being mapped to a transport
zone subnet. This is not correct, as the transport zone subnets relate
to the provider subnet each TEP belongs to and not to overlay subnets.
The observed problem is that the same TEP could be configured multiple
times on different transport zone subnets. This would result on ITM
getting confused and thinking that some TEPs are not longer needed and
removing them.

Since at this point there is not particular reason to group the TEPs by
subnets, this change proposes to configure the TEPs on the 0.0.0.0/0
subnet.

Change-Id: Id869fae5417aa9bff292b9bb1e738e05c7ea9bd1
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
(cherry picked from commit 8f0fabb08def29f6568ea74a6828491221be0e1c)

7 years agoRemove unnecessary page headings 94/47994/2
Thanh Ha [Fri, 4 Nov 2016 14:14:04 +0000 (10:14 -0400)]
Remove unnecessary page headings

Otherwise "Indices and tables" will appear in the list of documentation
on the main docs.opendaylight.org page.

Change-Id: Id2433e24c28e8d66dcf2be9a00c98567d61499da
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
7 years agoclarify log message and reduce dbg level on rx of ARP requests 05/47805/7
Alon Kochba [Tue, 1 Nov 2016 19:18:37 +0000 (21:18 +0200)]
clarify log message and reduce dbg level on rx of ARP requests

Change-Id: Ib0d915010e2de93965c0c6dc62fd073f420bb8b1
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoBUG-6341: use common Coda Hale Metrics 37/43737/4
Stephen Kitt [Thu, 11 Aug 2016 15:13:13 +0000 (17:13 +0200)]
BUG-6341: use common Coda Hale Metrics

This depends on https://git.opendaylight.org/gerrit/43717

Change-Id: I5b9ae630df2b06567b382fb32939bb1b7a3930ab
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoAdd Docs for netvirt 69/47969/2
Vishal Thapar [Fri, 4 Nov 2016 05:41:42 +0000 (11:11 +0530)]
Add Docs for netvirt

This patch just initializes sphinx for netvirt.

Refer: https://git.opendaylight.org/gerrit/#/c/39142/

Change-Id: Idd3bd2c1a78e9e19d3a783758ab43d188d50f67f
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoClean up to convert tabs to spaces in *.xtend 75/47975/1
Michael Vorburger [Fri, 4 Nov 2016 09:20:03 +0000 (10:20 +0100)]
Clean up to convert tabs to spaces in *.xtend

Checkstyle (in odlparent) is about to enforce space-instead-tab control
for *.xtend just like it does for *.java

Change-Id: I06e9519f073307af9379a33064137fb3ff4bab9f
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoBug 6992 - legacy: ignore IPv6 router interface 75/47175/5
Isaku Yamahata [Tue, 18 Oct 2016 19:18:02 +0000 (12:18 -0700)]
Bug 6992 - legacy: ignore IPv6 router interface

Since NeutronL3Adapter doesn't know ipv6, it should ignore
ipv6 router interface. Especially floating ip doesn't work
depending on the situation.

Neutron Router can be attached with both of IPv6 only port and IPv4 only
port. IPv6 only port should be ignored when programming for floatingip.
Otherwise networkIdToRouterMacCache can populated with mac address of
IPv6 only port, and programFlowsForNeutronRouterInterface() may program
flow with IPv4 address with mac address of IPv6 port. It should use
mac address of the IPv4 port. Otherwise floatingip is broken.

Change-Id: I87ec4e2537666f5db6826ca93be8be1793157ec7
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
7 years agoBump SFC dependency version 97/47897/1
Vratko Polak [Thu, 3 Nov 2016 14:33:33 +0000 (15:33 +0100)]
Bump SFC dependency version

SFC has bumped their versions in:
https://git.opendaylight.org/gerrit/47001

Change-Id: I6e1141467d8786209c8d74a136bb68379df7024f
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
7 years agoFix for Bug 7059 61/47761/1
gvrangan [Sat, 29 Oct 2016 01:06:33 +0000 (01:06 +0000)]
Fix for Bug 7059

Included Offset in the table numbers for resubmit and the learn rules

Change-Id: Ibaed3da431de62d1583d9463cd5cdbc06c9d0720
Signed-off-by: gvrangan <venkatrangang@hcl.com>
7 years agoFix for ACL UT failure 34/47734/1
Somashekar Byrappa [Fri, 28 Oct 2016 12:05:54 +0000 (17:35 +0530)]
Fix for ACL UT failure

+ In Genius, MetaDataUtil.METADATA_MASK_LPORT_TAG was updated recently.
Hence updated the same in ACL UT.

Change-Id: I059a9036481b5264e99bc00a8987e7f4cfea4e1f
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
7 years agoDisable SG IT test until learn test is included 40/47640/2
Sam Hague [Wed, 26 Oct 2016 20:50:04 +0000 (16:50 -0400)]
Disable SG IT test until learn test is included

Change-Id: I6a64dd4f02cfa65f2145d2c687189aa0dd34a1fe
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoIT - L3 tests 78/45578/13
Oded Shvartz [Wed, 7 Sep 2016 12:30:48 +0000 (15:30 +0300)]
IT - L3 tests

Added new tests to validate L3 connectivity:
- create 2 different networks with 2 ports.
- validate that ping between the ports is not working.
- create a router and connect the networks to it.
- validate that ping is working.

Change-Id: Ie9f5fa9b4cb10447fd15b313cfbee47ab29e718f
Signed-off-by: Oded Shvartz <oshvartz@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Author: Sam Hague <shague@redhat.com>

7 years agoDo not log frequest NeutronHostConfig updates 24/47524/2
Sam Hague [Tue, 25 Oct 2016 13:43:22 +0000 (09:43 -0400)]
Do not log frequest NeutronHostConfig updates

Change-Id: Ic56df1bee3d2cc2c2dbb175ff974a7f4c99a7846
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoDo not add br-int when manually deleted 23/47523/2
Sam Hague [Mon, 24 Oct 2016 16:09:48 +0000 (12:09 -0400)]
Do not add br-int when manually deleted

Change-Id: I87f9acad3c42d0fce81c411917b331052a99a913
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7024: When router is associated to L3VPN , VRF entry creations takes 40/47540/3
HANAMANTAGOUD V Kandagal [Tue, 25 Oct 2016 15:36:52 +0000 (21:06 +0530)]
Bug 7024: When router is associated to L3VPN , VRF entry creations takes
long time

When router is associated to L3VPN and dis-associated it takes long time
for VRF entries to get created and also for table=21 entries to appear on
DPN.

When swap from internal-to-external VPN or vice-versa happens,
VpnInterfaceManager waits on notify task for 50sec eventhough FIB has
already cleaned up. This is due to notification not fired from VpnInterface
Oplistner.

Change-Id: Ic16febd1f322f5c79d17e428a8f95133e7fef227
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
7 years agoBug 6089: Fix the wrong implementation for ICMPV6 22/47422/2
hari.pr [Fri, 21 Oct 2016 23:22:10 +0000 (04:52 +0530)]
Bug 6089: Fix the wrong implementation for ICMPV6

  * As of now learn supports only ICMPV4 code(0) and types(8,13,15,17)
  * reverting the ICMPV6 changes

Change-Id: I621eccf7707b5a9cba835d35df3446568158efd5
Signed-off-by: hari.pr <hari.pr@hcl.com>
7 years agoBug 7031: Implement ping responder for router interfaces 34/45634/15
Olga [Sun, 4 Sep 2016 09:13:07 +0000 (12:13 +0300)]
Bug 7031: Implement ping responder for router interfaces

Trello task:
https://trello.com/c/z19VUYoU/151-ping-responder-for-router-interfaces-ipv4

Required for several tempest tests that ping the router interface.

This change depends on the following reviews:
[1] https://git.opendaylight.org/gerrit/45192
[2] https://git.opendaylight.org/gerrit/45632
[3] https://git.opendaylight.org/gerrit/46219

Change-Id: Iac9ad2d70fecba823630281142b632757c3a48c2
Signed-off-by: Olga <olga.schukin@hpe.com>
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
Author: Sam Hague <shague@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 6476 : After configuring NAPT, table 26 and table 46 are not programmed 22/47222/3
Satish Dutt [Thu, 20 Oct 2016 20:15:58 +0000 (01:45 +0530)]
Bug 6476 : After configuring NAPT, table 26 and table 46 are not programmed

Issue was observed when interfaces were added to router, after the VM was
spawned, due to the timing between two threads. Addressed this issue

Change-Id: I5171bd98df28a4fe59daace7c1a2ad444e1bb1e0
Signed-off-by: Satish Dutt <satishd@altencalsoftlabs.com>
Author: Sam Hague <shague@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoChanged the AsyncDataChangeListenerBase to 32/47132/9
Satish Dutt [Wed, 19 Oct 2016 14:56:51 +0000 (20:26 +0530)]
Changed the AsyncDataChangeListenerBase to
AsyncDataTreeChangeListenerBase in the NAT reated files

Addressed the review comments

Change-Id: I9fa06d9d230839ab8b812470469e14f247b7d8f5
Signed-off-by: Satish Dutt <satishd@altencalsoftlabs.com>
Author: Sam Hague <shague@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 6778 - VPN interface for external port is deleted when clearing router gw interface 03/46003/21
Tali [Wed, 21 Sep 2016 18:19:24 +0000 (21:19 +0300)]
Bug 6778 - VPN interface for external port is deleted when clearing router gw interface

This patch fixes several external VPN interface issues
1) VPN interface will be created for each newly created external ELAN interface
and deleted on ELAN interface deletion
2) External VPN interfaces + VPN instance will be deleted only after ext-net was deleted

Change-Id: Ie358c214afcea1f894db6c46fe9827e637f52863
Signed-off-by: Tali <tali.ben-meir@hpe.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Author: Sam Hague <shague@redhat.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoFix missing init for VpnPseudoPortListener 81/47381/2
Sam Hague [Sat, 22 Oct 2016 15:26:55 +0000 (11:26 -0400)]
Fix missing init for VpnPseudoPortListener

2016-10-21 17:21:27,920 | ERROR | rint Extender: 1 | BlueprintContainerImpl           | 15 - org.apache.aries.blueprint.core - 1.6.1 | Unable to start blueprint container for bundle org.opendaylight.netvirt.cloud-servicechain-impl/0.4.0.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Component 'vpnPseudoPortListener' does not have init-method: init
    at org.apache.aries.blueprint.container.BeanRecipe.getInitMethod(BeanRecipe.java:645)[15:org.apache.aries.blueprint.core:1.6.1]
        at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:833)[15:org.apache.aries.blueprint.core:1.6.1]
            at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:811)[15:org.apache.aries.blueprint.core:1.6.1]
                at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[15:org.apache.aries.blueprint.core:1.6.1]
                    at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_102]
                        at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[15:org.apache.aries.blueprint.core:1.6.1]
                            at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:255)[15:org.apache.aries.blueprint.core:1.6.1]
                                at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:186)[15:org.apache.aries.blueprint.core:1.6.1]
                                    at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:724)[15:org.apache.aries.blueprint.core:1.6.1]
                                        at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:411)[15:org.apache.aries.blueprint.core:1.6.1]
                                            at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[15:org.apache.aries.blueprint.core:1.6.1]
                                                at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_102]
                                                    at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_102]
                                                        at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106)[15:org.apache.aries.blueprint.core:1.6.1]
                                                            at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48)[15:org.apache.aries.blueprint.core:1.6.1]
                                                                at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_102]
                                                                    at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_102]
                                                                        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)[:1.8.0_102]
                                                                            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.8.0_102]
                                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_102]
                                                                                    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_102]
                                                                                        at java.lang.Thread.run(Thread.java:745)[:1.8.0_102]

Change-Id: I94825cd3e8ec6a33cc17a4ac76e26663ba1afe22
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 6717 - Output to external network group entry is not installed on NAPT FIB table... 63/46163/19
Tali [Sun, 25 Sep 2016 09:02:14 +0000 (12:02 +0300)]
Bug 6717 - Output to external network group entry is not installed on NAPT FIB table for new DPN

Change-Id: Ic76eaba6b6840315513830cbf846ebc0cef42a7a
Signed-off-by: Tali <tali.ben-meir@hpe.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Author: Sam Hague <shague@redhat.com>

7 years agoBug 6831: support for l3 directly connected subnet 60/47060/9
Konsta Pozdeev [Tue, 18 Oct 2016 09:53:04 +0000 (11:53 +0200)]
Bug 6831: support for l3 directly connected subnet
After the fix only  unique mac values will be stored in the vpn interface adjacency.
This values will be used for the group programming.
No duplicate groups will be created.

Change-Id: I73c0e726c28e258eed3f3559e114003887a391a6
Signed-off-by: Konsta Pozdeev <konsta.pozdeev@hpe.com>
7 years agoBug-6395: Fixed the Problems in using ODL and neutron-l3-agent in Openstack 21/47221/3
vinoth [Fri, 21 Oct 2016 00:30:48 +0000 (06:00 +0530)]
Bug-6395: Fixed the Problems in using ODL and neutron-l3-agent in Openstack

  * Added following flow is missed out,
      cookie=0x0, duration=7451.336s, table=100, n_packets=147, n_bytes=6230, idle_age=6506,
      priority=4,in_port=5,dl_src=fa:16:3e:74:a9:2e actions=output:3

Change-Id: I240db06a703124320b5658685226d4d2c858061a
Signed-off-by: vinoth <m.vinoth@hcl.com>
7 years agoBug 6089:Fix for TCP/UDP and ICMP communication between VM's using learn Action accor... 33/47233/2
hari.pr [Mon, 17 Oct 2016 23:02:29 +0000 (04:32 +0530)]
Bug 6089:Fix for TCP/UDP and ICMP communication between VM's using learn Action according to SG

    *Introduced new tables(31,39) in the netvirt pipeline.
    *Table 30 default pipeline rule is modified to forward the packets to table 31.
    *Table 31 is used for double resubmit action [actions=resubmit(,39),resubmit(,40)].
    *Table 39 is used for learned flows.
    *Flows matching in Table 39 will load reg6=0x1.
    *table 40 and 90 will use reg6 value to forward the packets to next pipeline.
    *Learn rule will be created in table 40 and 90
    *once user apply ingress/egress on VM instance.

Change-Id: Idb71bbf9ae53d53db1197622eef02047f0e86e18
Signed-off-by: hari.pr <hari.pr@hcl.com>
7 years agoInterVpnLink cache 29/46229/12
Miguel Perez [Wed, 7 Sep 2016 17:15:01 +0000 (19:15 +0200)]
InterVpnLink cache

 + This is only a first step, there are many other MDSAL readings
   related to InterVpnLink that will be replaced later on

 + Since InterVpnLink is rarely modified (almost never) and
   very frequently queried, it is the perfect candidate for being
   cached.

 + This cache is placed in vpnmanager-api and accessed from
   vpnmanager, neutronvpn, fibmanager and bgpmanager. However
   it is only feeded from vpnmanager.

 + There are 2 new Clustered DCN listeners in charge of feeding
   the cache, one listener for InterVpnLink and another for
   InterVpnLinkState objects.

Change-Id: I2582784650bd8fafbd311c103669928e5bd2fb97
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoBug 6934: VpnPseudoPort flows not moved to a new DPN 79/46779/4
Miguel Perez [Wed, 5 Oct 2016 10:44:36 +0000 (12:44 +0200)]
Bug 6934: VpnPseudoPort flows not moved to a new DPN

 + when a VM is moved to a new DPN, VpnPseudoPort flows that
   moves traffic from VPN to SCF (tables 20 and 17) were not being
   installed on the new DPN

Change-Id: I8fb6daee68ec6203397c4096259a531401b109df
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoBug 6863 - Router interfaces incorrectly include network interfaces 71/46571/2
Vivekanandan Narasimhan [Wed, 5 Oct 2016 17:53:08 +0000 (23:23 +0530)]
Bug 6863 - Router interfaces incorrectly include network interfaces

When a network is associated after a router is associated
to a given VPN, interfaces on that network gets queued
as though they are on the router.

This change fixes that problem by making sure that
NeutronRouterInterfacesMap is populated/deleted only
with the correct interfaces available on that router
alone regardless of other networks that may be present
on the same VPN as the router.

Change-Id: Ib436e608f7fee398f1cc51b5ae24ac4c7de3d87a
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoAclServiceTest with http://immutables.org "depluralize" option 67/47167/2
Michael Vorburger [Wed, 19 Oct 2016 19:06:42 +0000 (21:06 +0200)]
AclServiceTest with immutables.org "depluralize" option

Change-Id: I3bde1f5d5373d4b9fc64f5b530f7820d5780acb8
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoCleanup: remove unnecessary boxing/unboxing 77/47077/3
Stephen Kitt [Tue, 18 Oct 2016 15:15:40 +0000 (17:15 +0200)]
Cleanup: remove unnecessary boxing/unboxing

Change-Id: I5b5cbb5879d12f3cc285624e489cc0544af8080c
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoinfrautils.inject.guice.testutils should be <scope>test 30/47130/2
Michael Vorburger [Wed, 19 Oct 2016 14:07:00 +0000 (16:07 +0200)]
infrautils.inject.guice.testutils should be <scope>test

and mycila-guice-jsr250 is now transitive by
infrautils.inject.guice.testutils

Noticed this while writing some more documentation about all this stuff
on https://wiki.opendaylight.org/view/BestPractices/DI_Guidelines#Tests

Change-Id: I85c96205168dafb975652ee8876e52a291f510b4
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoCleanup: use Java 8 lambdas 76/47076/2
Stephen Kitt [Tue, 18 Oct 2016 15:05:10 +0000 (17:05 +0200)]
Cleanup: use Java 8 lambdas

Where appropriate, use Java 8 lambdas instead of old-style
predicates. Simplify surrounding code where relevant.

Change-Id: Id39da6bcdcae15ff2fed8cdd2327f6e25d79fcc3
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoBug 6482: ERROR Log Observations - CSIT (Boron-Legacy) 63/47163/2
priya.ramasubbu [Fri, 14 Oct 2016 18:44:02 +0000 (00:14 +0530)]
Bug 6482: ERROR Log Observations - CSIT (Boron-Legacy)

   * This exception is from CSIT logs when external interface with matching Neutronport found.
   * While users verifying CSIT logs sometimes misunderstood of this error.
   * It's better we can change this error message to warn message.

Change-Id: Ia7fe5606cd18c17c4ee2dd8a4f4feb21c41a524a
Signed-off-by: priya.ramasubbu <priya.ramasubbu@hcl.com>
7 years agoFixes Bug 6909 02/46902/3
Aswin Suryanarayanan [Thu, 13 Oct 2016 14:58:04 +0000 (20:28 +0530)]
Fixes Bug 6909
ACLs TCP/UDP port ranges for the case of all ports 1-65535) should not
use port masking at all

Added check to handle all port case.

Patch 2 Added UT.

Change-Id: Ifb972c338c9cd27885a58bcff9d11969bb62cd2a
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agofix learn security groups 84/46884/5
Shlomi [Wed, 12 Oct 2016 08:54:18 +0000 (10:54 +0200)]
fix learn security groups

Change-Id: I9377e5cc4c2b7623baef922e3dc1bead1cf3d2f5
Signed-off-by: Shlomi <shlomi.alfasi@hpe.com>
7 years agoArp cache feature changes 10/45410/20
Gobinath [Thu, 8 Sep 2016 14:31:48 +0000 (20:01 +0530)]
Arp cache feature changes

Change the implementation of Arp Cache feature so that
the Arp entries learnt for the VMs are removed only when
those VMs are no longer accessible to the gateway.

1) Remove the old implementation where as soon as a VM's mac
is learnt, it is enqueued in a queue with a timer and this entry
is removed after the timer expires. After the removal from queue,
the mac and FIB entries of the VM were removed.

2) When a VM's arp is learnt, use the Aliveness Monitor module to
monitor the VM's by sending out ARP packets from gateway to the
VM periodically. The aliveness monitor module should listen to the
VpnPortIpData which would contain the ports present in the vpn.

3) Unless the monitor event "down" is received,ie,the VM is no
longer accessible from the gateway, the Mac entries for the VM are
to be retained.

4) When the monitor event "down" is received, the mac entries for
that VM and their FIB entries are to be removed.

Change-Id: I4c29e4390a1c5be0609e8ee1d682728ab0762588
Signed-off-by: Gobinath <gobinath@ericsson.com>
7 years agobug 6643 fixed broken l2gw functionality 63/47063/5
K.V Suneelu Verma [Tue, 18 Oct 2016 10:46:04 +0000 (16:16 +0530)]
bug 6643 fixed broken l2gw functionality

some parts of the code were commented during blueprint migration.
fixed the same.

Change-Id: I50601948a97dc66a60c87d943458a87dab12b43d
Signed-off-by: K.V Suneelu Verma <k.v.suneelu.verma@ericsson.com>
7 years agoBug 6816: NAT breakage fix for GRE provider type 81/46681/6
Yugandhar Sarraju [Fri, 7 Oct 2016 14:32:16 +0000 (20:02 +0530)]
Bug 6816: NAT breakage fix for GRE provider type

Recent changes in NAT to support transparent vpn caused issues
for existing NAT usecase which works on GRE provider type. Fix is
provided so that provider type is checked when external network is
created.

https://git.opendaylight.org/gerrit/#/c/45133/3
https://git.opendaylight.org/gerrit/#/c/43130/

Change-Id: I0be43018dd681572496ddf7c9fa29dbfc8da2dcf
Signed-off-by: Yugandhar Sarraju <yugandhar.s@altencalsoftlabs.com>
7 years agoBug 6831: Retain subnetroute with l3 directly-connected subnet 18/46618/4
Vivekanandan Narasimhan [Thu, 6 Oct 2016 13:12:39 +0000 (18:42 +0530)]
Bug 6831: Retain subnetroute with l3 directly-connected subnet

The following review :

https://git.opendaylight.org/gerrit/#/c/46292/

was reverted via:
https://git.opendaylight.org/gerrit/#/c/46575/

The revert was done in order to maintain sanity of the
subnetroute feature which enables auto-discovery of
Non-Neutron IP addresses on an enterprise network by using
the datacenter as the proxy.

The revert however resulted in use-case breakage where rewrite of
MACAddresses held behind a directly connected subnet ceased
to happen.

With this fix, we bring back the use-case of rewrite of mac-addresses
for hosts behind a directly connected l3 subnet.  In addition to that
we attempt to maintain a working subnetroute functionality.

Change-Id: I89a61396d62e38cf9756cbd0bdb2b845b5e8e44f
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 6843 : NPE in router-add leading to failure of router related cases 38/46338/5
Abhinav Gupta [Mon, 3 Oct 2016 07:27:03 +0000 (12:57 +0530)]
Bug 6843 :  NPE in router-add leading to failure of router related cases

The commit https://git.opendaylight.org/gerrit/#/c/45511/1 introduced an
NPE due to parameter original being null

Have added required additional null checks.

Also, tweaked the snatSettingChanged() and externalFixedIpsChanged() to
truly indicate a change and not only upon a router update when external
network is present as was the earlier behaviour.

Change-Id: Ibfd25bc0e2106d450b9045c92e887464447e2d91
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoBug 6779 -After a Cluster Reboot, 10 VPNintfs seen 98/45998/11
Vivekanandan Narasimhan [Wed, 21 Sep 2016 17:01:58 +0000 (22:31 +0530)]
Bug 6779 -After a Cluster Reboot, 10 VPNintfs seen

After a Cluster Reboot, only 10 VPN Interfaces are configured
out of 1500 VPN Interfaces.

Upon cluster reboot , VpnInterface add may fail due to
vpnInstance unavailability. VpnInstance creation might lag
VpnInterface add event.

So we have introduced a synchronization mechanism for
VpnInterfaceManager to synchronize with VPNInstance
creation driven by VpnManager.  The same concept applies
to the VpnSubnetRouteHandler engine.

With this fix VpnInterfaceManager/VpnSubnetRouteHandler
will wait for 90 seconds for VpnManager to provide complete
VpnInstance information before proceeding to plumb the
VpnInterfaces/SubnetRoutes that are part of that VPNInstance.

These waits will be removed in Carbon as we refactor and will
build a parent first processing logic around the
VpnInstanceListener.

Change-Id: I912fda5aef4b4c50d897cd293dee6f49c429eea6
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 6824 - floating IP rules deleted upon unrelated neutron port delete 39/46939/5
Abhinav Gupta [Fri, 14 Oct 2016 09:29:38 +0000 (14:59 +0530)]
Bug 6824 - floating IP rules deleted upon unrelated neutron port delete

Change-Id: Id3f9c3df057efaddb34628c3df389485a5d99584
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoIncrease AclServiceTest coverage significantly (from 66% to 84%) 06/46206/19
Michael Vorburger [Tue, 27 Sep 2016 05:51:27 +0000 (00:51 -0500)]
Increase AclServiceTest coverage significantly (from 66% to 84%)

Incl. new DataBroker Tx infra utils (to be moved elsewhere later)

Incl. (first use of) http://immutables.github.io - very cool.

Change-Id: Iaf649800d3da5aa2081e129bb03ecdf604e06075
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoBug 6921 - SFC-Translation-Layer : Skip acl classifier 09/46809/2
Anil Vishnoi [Tue, 11 Oct 2016 16:56:27 +0000 (09:56 -0700)]
Bug 6921 - SFC-Translation-Layer : Skip acl classifier
write before chain creation

Currently SFC translation layer, converts the networking-sfc
flow classifier to acl classifier and write it to data store.
The way current net-virt works, it should be written once the
chain is created. In the current translation layer implementation,
 it writes both the time and second write become no-op and
netvirt don't install the flow classifier rules.

Change-Id: I92e5065492e4c269c0b0d5f9f23afde2de516335
Signed-off-by: Anil Vishnoi <vishnoianil@gmail.com>
7 years agoBug 6922 - sfc-translation-layer : Do not explictly set RSP name 94/46794/2
Anil Vishnoi [Tue, 11 Oct 2016 17:16:40 +0000 (10:16 -0700)]
Bug 6922 - sfc-translation-layer : Do not explictly set RSP name

SFC translation layer currently set the RSP name to SFP name
and that results in flow installation with two different nsp
flows. Given that RSP RPC returns the RSP name, translation
layer should use that name.

Change-Id: I23a88866c1348575b9a40911dbb573e6ef0f5344
Signed-off-by: Anil Vishnoi <vishnoianil@gmail.com>
7 years agoBug 6923 - sfc-translation-layer : OVS data path 95/46795/2
Anil Vishnoi [Tue, 11 Oct 2016 17:07:51 +0000 (10:07 -0700)]
Bug 6923 - sfc-translation-layer : OVS data path
locator options (nsp,nsi,nshc*) are not required.

Apart form the netvirt expect data path locator name
to be vxgpe. This hardcoded dependency needs to be removed.
Following bug tracks the issue
https://bugs.opendaylight.org/show_bug.cgi?id=6924

Change-Id: Ic08cd65a547a93d1e878fcf8bce7d5f66a894b9b
Signed-off-by: Anil Vishnoi <vishnoianil@gmail.com>
7 years agoBug-6395: Fixed the Problems in using ODL and neutron-l3-agent in Openstack 71/45771/17
vinoth [Sun, 18 Sep 2016 10:32:27 +0000 (16:02 +0530)]
Bug-6395: Fixed the Problems in using ODL and neutron-l3-agent in Openstack

  * Now we can use ODL for L2 and neutron-l3-agent for all L3. This can help covering more use cases with ODL integration.
  * invoke patch port creation during set-manager if ovsdb.l3.multiple.network.enabled flag enabled.
  * Create patch-ports in br-int and br-ex
  * create flow entries in br-int(table 100) to handle packets coming through patch port via external bridge.
  * create flows in external bridge to push vlan based on vlan provider network segmentation_id

Change-Id: I0edf0751a72df97f77576b757b2c2145a5406543
Signed-off-by: vinoth <m.vinoth@hcl.com>
7 years agoRely on odlparent for Blueprint DI 90/45090/6
Stephen Kitt [Fri, 2 Sep 2016 16:07:06 +0000 (18:07 +0200)]
Rely on odlparent for Blueprint DI

This requires https://git.opendaylight.org/gerrit/44502

Change-Id: I44a6d95d22ca10df78d75d05de08cc5587cde763
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoUse new AbstractGuiceJsr250Module, which simplifies AclServiceModule 23/46723/2
Michael Vorburger [Mon, 10 Oct 2016 11:41:49 +0000 (13:41 +0200)]
Use new AbstractGuiceJsr250Module, which simplifies AclServiceModule

Change-Id: Id9fc5fccbb12e721ad8197afeacfe05dc6d9eed3
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoBug 6920 : Fix for ACL portSecurityUpdate to work with DjC + listed fixes 81/46781/2
Abhinav Gupta [Tue, 11 Oct 2016 16:48:12 +0000 (22:18 +0530)]
Bug 6920 : Fix for ACL portSecurityUpdate to work with DjC + listed fixes

1. Fixes conflicting modification exceptions at interfaces/interface level
due to portVifType update and securityGroupUpdate writing at same time.

2. Includes fix for Lock API for sync in NeutronVpnUtils causing
concurrent modf exception : Bug 6902 :
https://git.opendaylight.org/gerrit/#/c/46663/

3. Synchronize on writes to router-interfaces map, not using DjC

Change-Id: I74bf6dd7bd80539e483bdf233a6d91ea39031190
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoDe-static-ify aclservice utility classes methods and fields 40/46640/2
Michael Vorburger [Thu, 6 Oct 2016 21:00:47 +0000 (23:00 +0200)]
De-static-ify aclservice utility classes methods and fields

Don't ever use static methods and fields, but instead just use
@Singleton and proper dependency injection (DI).  Ask me if you are
unclear how to do this right.

This change isn't just for fun, but will avoid an ugly work-around we
needed to do in the new component tests, to reset a cache hidden in a
static via a (temporary, hack, yes) AclDataUtil.clearCaches(); in
AclServiceTest in https://git.opendaylight.org/gerrit/#/c/46206/

Change-Id: I1d1ba36739784a08001d66faa6f9641551a9036e
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoRemove unneeded alivenessmonitor-xml css dependency 82/46782/2
Sam Hague [Tue, 11 Oct 2016 16:53:48 +0000 (12:53 -0400)]
Remove unneeded alivenessmonitor-xml css dependency

Change-Id: I325139a6d9075ab63439b65d18f54b8b876e32f7
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug-6474 : Fixed the issue when using ODL with VXLAN Gateway 85/46785/1
Hideyuki Tai [Fri, 16 Sep 2016 10:08:04 +0000 (03:08 -0700)]
Bug-6474 : Fixed the issue when using ODL with VXLAN Gateway

    Problem: The ARP request from a VLAN host can reach the VM
    but ARP reply is dropped because it is an unknown unicast.

    Solution: Add metaflow in OVS that creates learned flow
    for convert the source MAC to Dest MAC and send the packet
    back to the tunnel where the packet was received.

    To enable this feature, please add the following line
    into the file "etc/custom.properties".

        ovsdb.remotemac.learn.enabled=yes

Change-Id: I05b3a0fa63d71ea733ad0de53fc1ad37ed20f785
Signed-off-by: Hideyuki Tai <Hideyuki.Tai@necam.com>
7 years agoAdd clear ping status 90/46690/3
Sam Hague [Fri, 7 Oct 2016 21:05:00 +0000 (17:05 -0400)]
Add clear ping status

Change-Id: Id51ebc3d033389ff229a4ec864ac12bef7b5faa1
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoAclServiceTest with JUnit @Rule GuiceRule 77/46677/2
Michael Vorburger [Fri, 7 Oct 2016 13:52:36 +0000 (15:52 +0200)]
AclServiceTest with JUnit @Rule GuiceRule

see https://git.opendaylight.org/gerrit/#/c/46041/

Change-Id: I7e8165d44c2c1b748485f471bb0a3244d05bbf2d
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoDrop Maven prerequisite 97/46597/3
Stephen Kitt [Thu, 6 Oct 2016 07:53:29 +0000 (09:53 +0200)]
Drop Maven prerequisite

The Maven versions are enforced by odlparent, projects no longer need
to care about them (unless a particular project-specific plugin
requirement crops up).

Change-Id: Iffc2f96e29ce0b5e5a1b5f91ff7280895f15eb16
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoipv6: Use versions from odlparent 35/46635/2
Sam Hague [Thu, 6 Oct 2016 18:55:51 +0000 (14:55 -0400)]
ipv6: Use versions from odlparent

Change-Id: If055af1a68e53edabf9a90c04aac9df90a4325ba
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoFixes logging exceptions, plus few formatting changes 20/46620/6
Miguel Perez [Thu, 6 Oct 2016 13:43:52 +0000 (15:43 +0200)]
Fixes logging exceptions, plus few formatting changes

 + Logging exceptions now comply with [1]

 + Adds some 'final' qualifiers

 + Also adds some missing braces for 'if' blocks

 + Removes some unused imports

 [1] https://wiki.opendaylight.org/view/BestPractices/Logging_Best_Practices

Change-Id: Idf860e0e8b87dfa740e5d0f3d6e1dfe14cce564d
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoRevert "Bug 6831: support for l3 directly connected subnet" 75/46575/2
Sam Hague [Wed, 5 Oct 2016 19:19:19 +0000 (15:19 -0400)]
Revert "Bug 6831: support for l3 directly connected subnet"

This reverts commit 53edd46eb630dcc069c8378e2800b326f04c4239.

Change-Id: I9ad7cac6311ee2515528edf34f112588c19b8d65
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoRemove duplicate lockmanager bean 83/46583/2
Sam Hague [Wed, 5 Oct 2016 22:02:02 +0000 (18:02 -0400)]
Remove duplicate lockmanager bean

Change-Id: Ib31218a64410d3180b1e4d01912410c6ea738b5c
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBUG 6840: New karaf CLI commands 71/46271/4
Suraj Ranjan [Thu, 29 Sep 2016 04:42:44 +0000 (10:12 +0530)]
BUG 6840: New karaf CLI commands

This review creates 4 new CLI command:
1> vpn-show
2> subnet-show
3> neutronvpn-ports-show
4> vpninstance-op-show

Change-Id: I18405b8888d0e46c378d17b557b9e1eb328e0648
Signed-off-by: Suraj Ranjan <suraj.ranjan@ericsson.com>
7 years agoModification cloud-servicechain-state.yang key 20/46020/8
Julian Reyes Romero [Wed, 13 Jul 2016 14:57:39 +0000 (16:57 +0200)]
Modification cloud-servicechain-state.yang key

Due to elan-service-chain-state is an augmentation of
elan-instance, elan-instance-name can be removed from
elan-to-pseudo-port-data list key. The new key will be
composed with elanLportTag and scfTag.

ScfTag is now defined as an unsigned 32-bit number

Change-Id: I153910b5e8a105818fc3a2a3480399efd4b78086
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
7 years agoBug 6861 : Fix for proper tableId in punt action 38/46538/3
Kency Kurian [Wed, 5 Oct 2016 09:56:39 +0000 (15:26 +0530)]
Bug 6861 : Fix for proper tableId in punt action

- Changed the InstructionType from write_actions to apply_actions

Change-Id: I04f71945c71025c28815bfd057f3fb4bd72dae81
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoClean up logging tests 45/46545/2
Stephen Kitt [Wed, 5 Oct 2016 11:37:27 +0000 (13:37 +0200)]
Clean up logging tests

In most cases, checking whether a logger is enabled before logging
isn't necessary: the first thing the logger does is to check whether
it's enabled, before processing SLF4J tokens. It's only useful if the
construction of the logged information requires expensive operations
(joining list items, formatting ARP messages...).

This patch includes some minor drive-by clean-up.

Change-Id: I413b080e583ff677ca0c79c7f6549ea81a5c3769
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoFixes bgpmanager-api folder structure 46/46346/5
Miguel Perez [Mon, 3 Oct 2016 09:29:04 +0000 (11:29 +0200)]
Fixes bgpmanager-api folder structure

 + My eclipse didn't like it. Me neither

Change-Id: I86bd0464a9c87d69c475122938e7a67407967fb8
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoBUG 6841: Few Remote flows not deleted on DPNs 60/46160/6
Suraj Ranjan [Sat, 24 Sep 2016 09:12:19 +0000 (14:42 +0530)]
BUG 6841: Few Remote flows not deleted on DPNs

Few Remote flows not deleted on DPNs after migration from
internal to external VPN.
For a vpn associate/dissociate, the vpn interface update event wait was
getting accumulated for every interface across vpns. So, vpn manger was
getting removed before interfaces were cleaned.
A label of 0 was being used to create unique ids across vpn engine if
IdManager failed to return a valid label.
Java Synchronize has been replaced by LockManager to handle events
gracefully across PLs during simultaneous northbound and southbound
events for subnet routes.

Change-Id: I3cf1d1553bd6b6b025a9cedbc860b7af246f1afe
Signed-off-by: Suraj Ranjan <suraj.ranjan@ericsson.com>
7 years agoBug 6589 adding support for hwvtep devices ha 77/45577/5
Akash [Wed, 14 Sep 2016 11:23:10 +0000 (16:53 +0530)]
Bug 6589 adding support for hwvtep devices ha

Added template code to copy the data between ha and child nodes.
When a child node connects copy its operational data to its ha operational
node.
When operational update is received on child node , copy that operational
update to its ha operational node.
When some config update happens on ha node, copy that config update to
child node.

An add/delete Macs.PhysicalLocator,TerminationPoint,Switch update from
child is immediately pushed to parent ha node.
Duplicate updates from childs is properly filtered out while copying to
the parent ha node.

Depends-On: I7ad598fe9604aae9ad1df71270f1cba5b212a634
https://git.opendaylight.org/gerrit/#/c/44670/
Patch was reverted until netvirt catches up.

Change-Id: I091ab1f1fa8b82445918e1030f20136421286299
Signed-off-by: Akash <a.k.sahu@ericsson.com>
7 years agoBug 6842 : Incorrect error msg upon associating router to VPN with non-existing... 37/46337/2
Abhinav Gupta [Mon, 3 Oct 2016 07:13:55 +0000 (12:43 +0530)]
Bug 6842 :  Incorrect error msg upon associating router to VPN with non-existing VPN-ID

Corrected to indicate absence of VPN and/or router as per the input
supplied.

Change-Id: Ice0cb86e0fd13410a8049d7171137783cb721649
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoBug 6823 : Performance improvement in DHCP 55/46255/3
Kency Kurian [Wed, 28 Sep 2016 12:41:23 +0000 (18:11 +0530)]
Bug 6823 : Performance improvement in DHCP

- Making use of the API provided by interface manager to fetch the
  interface object from config Datastore. This will avoid unecessary reads
  on DS which is time consuming.
- Majority of the diff is in adding an if check before logging so that
  string formation can be avoided.

Change-Id: I9595732506ec3e143a1ff6ed84039279eda92b09
Depends-On: I03a5ed6af26a2f110b0712a6c1ced160a5cdebf0
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBug 6770 - Fixes DjC for NPortCL + snmaps serialized + listed changes 69/45969/4
Abhinav Gupta [Wed, 21 Sep 2016 11:26:40 +0000 (16:56 +0530)]
Bug 6770 - Fixes DjC for NPortCL + snmaps serialized + listed changes

Dependent review on top of
https://git.opendaylight.org/gerrit/#/c/44708/2.

1. Fixes the following in the parent review:
a) reducing reads/writes
b) done away with djc for reads since if data is being upfront and
used/changed much later, it will fail concurrency as the data can be
changed in between.
c) used the correct keys
d) improved/corrected logging
e) djc on port, enabling parallelism

2. Concurrency changes for calls made via add/remove/update for
neutronportchangelistener, except router interface add/remove

3. Added support for neutron port update to have new fixedIP across a
subnet

4. Eliminated unnecessary snmaps update and sending out notif for port
update with no change in params

5. Localized addtoNeutronRouterInterfacesMap calls within create/delete
VPN interface, called from 1 place now instead of 4 each.

6. Synchronized subnetmaps reads/writes to attain serialization.

7. Fixes extra route functionality for internal vpn.
Earlier router id was read from vpnmaps and used to determine if extra
route is to be added or not, but vpnmaps updated routerid only upon
router assc to vpn, now instead snmaps which is populated upon router
interface add is used to figure out the same.

8. Added djc for create/delete vpninterface

9. Optimized createL3InternalVpn - eliminated routerinfmap population.

10. Fixed network and router cache population upon add/remove/update.

11. Removes lockmanager dependency from neutronvpn and function signature
for lock/unlock utility to not use lockmanagerservice.

Change-Id: Ib51782fa67776c45d527092262524f46eeaca98a
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoBug 6825:- "BgpManager not started" error when trying to configure Bgp peer 78/46278/3
SivaKumar Perumalla [Thu, 29 Sep 2016 04:57:03 +0000 (04:57 +0000)]
Bug 6825:- "BgpManager not started" error when trying to configure Bgp peer
For commands class, bgpmanager not supplied as parameter

Change-Id: I385869448c86cb8927d9d4479bcb3620ce17e67f
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agominor fixes related to BGP 76/46276/2
SivaKumar Perumalla [Mon, 26 Sep 2016 11:38:54 +0000 (11:38 +0000)]
minor fixes related to BGP
- command output: F-bit always set to true and fetch Stale-path time from config,
      show GR-stalepathTime as default in case not-configured.

Change-Id: Ibf7a535075c9b0b02a5868c50f05d669c51d499a
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agoset FBIT for bgp to true (always), as we expect to keep the 75/46275/3
SivaKumar Perumalla [Mon, 26 Sep 2016 11:03:51 +0000 (11:03 +0000)]
set FBIT for bgp to true (always), as we expect to keep the
forwarding state (of CSS) eventhough the controller goes down.

Change-Id: I25d151a56c035aea1d70bf3edbc83488ccbed820
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agomodified stale route cleanup timer to 600Sec, in case nothing configured. 77/46277/4
SivaKumar Perumalla [Thu, 29 Sep 2016 04:52:34 +0000 (04:52 +0000)]
modified stale route cleanup timer to 600Sec, in case nothing configured.
enabled route removal on stale-path timer expiry

Change-Id: I5f19a026c5ac76a215b8d0de73bd0386ef435b32
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agoBGP networks update callback is triggered even if the content remain same 74/46274/3
SivaKumar Perumalla [Mon, 26 Sep 2016 07:40:45 +0000 (07:40 +0000)]
BGP networks update callback is triggered even if the content remain same
Fix: On Update callback, verify old and new values and act on it

Change-Id: I75918e2f25f56e78f70dc4f43254fe6f02380dd3
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agoBUG 6839: Fixes for import/export RT and router dissociation in L3Vpn 53/46053/9
eupakir [Mon, 29 Aug 2016 06:04:49 +0000 (11:34 +0530)]
BUG 6839: Fixes for import/export RT and router dissociation in L3Vpn

A label of 0 was being used to create unique ids across vpn engine if
IdManager failed to return a valid label.
Java Synchronize has been replaced by LockManager to handle events
gracefully across PLs during simultaneous northbound and southbound
events for subnet routes.
To find out all the vpns who import routes of a particular vpn, we were
dependent on the configurational datastore of that Vpn Instance. On a vpn
instance deletion, this config data is lost. Hence, this data has to also
be stored in an operational datastore

Dependent on https://git.opendaylight.org/gerrit/#/c/45220/

Change-Id: I317a543bbc46c6b388962182075bbe112428b648
Signed-off-by: Suraj Ranjan <suraj.ranjan@ericsson.com>
7 years agoBug 6673: DCN to DTCN changes 05/45405/10
Vyshakh Krishnan CH [Wed, 21 Sep 2016 15:01:43 +0000 (20:31 +0530)]
Bug 6673: DCN to DTCN changes

DCN to DTCN changes for NeutronVPn, VPNmanager and FIBmanager

Change-Id: I4f78888148a228ed2938dc995b5b1ed1180d83eb
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agoBGP-configuration read is failing as shard leader is not available 73/46273/2
SivaKumar Perumalla [Mon, 26 Sep 2016 06:47:58 +0000 (06:47 +0000)]
BGP-configuration read is failing as shard leader is not available
implemeted retry mechanism in bgp-get-config (100Seconds) for MDSAL read

Change-Id: Ieb2cfd3135e5fb3dc5d83b26fc50e750247205f8
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agoBUG 6725: fix contains below issues 23/45623/12
epgoraj [Thu, 15 Sep 2016 11:47:47 +0000 (17:17 +0530)]
BUG 6725: fix contains below issues

        1) Broadcast group buckets are not properly programmed for l2gw
2) Delete dpn interface is not cleaning up other dpns bc groups.

Change-Id: I8cd4df83777bb8ca8113a7eb7b214333f14536e7
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoBug 6691: Fix exceptions in natservice for a dual-stack network 72/45472/6
Sridhar Gaddam [Mon, 12 Sep 2016 06:54:34 +0000 (12:24 +0530)]
Bug 6691: Fix exceptions in natservice for a dual-stack network

This patch also updates some debug messages.

Change-Id: I840b0782d3e6b5978df63d8885cdc7c3b6c8cc9e
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoBug 6831: support for l3 directly connected subnet 92/46292/2
Konsta Pozdeev [Wed, 28 Sep 2016 13:08:11 +0000 (16:08 +0300)]
Bug 6831: support for l3 directly connected subnet

The directly connected subnet case has limitation of mandatory GW.
The ARP request is produced as well to each new target belongs to subnet.
The ARP reply should to add new route to existing VPN port.
It should use received new MAC in case of directly connected network.
Existing algorithm does it in wrong way by importing mac from old entries.

Change-Id: I3df5496d97cf5bb8c68ed6ce301fb95f2449f781
Signed-off-by: Konsta Pozdeev <konsta.pozdeev@hpe.com>
7 years agoFlow Entries to match ARP packets in GwMacTable(19) 09/46109/5
eceghkl [Fri, 23 Sep 2016 06:51:04 +0000 (12:21 +0530)]
Flow Entries to match ARP packets in GwMacTable(19)

* ARP packets matched in L3_GW_MAC_TABLE instead of L3_INTERFACE_TABLE
* Matched packets are punted to controller and resubmitted to 17.
* Arp pipeline flow will be now as follows :
* 0->17>19->punt_to_ctrl,resubmit(17)

Change-Id: I04ce9d49eea17cb4e15ba289af19d4a6702bb8c7
Signed-off-by: eceghkl <manu.b@ericsson.com>
7 years agoBug 6721: first few ping requests to a floating IP are receiving multiple responses 96/46096/9
Vivekanandan Narasimhan [Thu, 22 Sep 2016 17:23:59 +0000 (22:53 +0530)]
Bug 6721: first few ping requests to a floating IP are receiving multiple responses

This fix attempts to prevent multiple Datapaths replicating
an IP response from external network to floating ip hosted
inside the cloud.

As part of this fix, we install floatingipportmac into
MyMac Table (Table 19 at the time of this commit),
only on those hypervisors where that floating-ip hosted
VM is present.

Please note that the duplicate IP response packets
replication problem does not exists when external network
uses tunnels (instead of VLANs) as the floatingip destined
response packets from external network will be directed
to only one hypervisor (ie., only one datapath).

The fix also makes sure that when a floatingip is
disassociated the corresponding floatingipportmac entry
is removed from MyMac Table.

There are still general bugs where floatingip rules in some
tables (including MyMac table) are not removed when:

a. Floating IP is deleted
b. VM hosting the Floating IP is deleted (without disassociating).

The workaround for both the above is to disassociate floatingip
first before embarking on a (or) b . Issue a and b will
be addressed with a different bug, as it needs a more deeper
fix.

Change-Id: Ic0eb7994a9829aa89aee5d8400e0d0be94dfac36
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 6773: Floating IP response answered from all 94/45994/3
Olga [Wed, 21 Sep 2016 16:00:11 +0000 (19:00 +0300)]
Bug 6773: Floating IP response answered from all

don't answer to ARP request if it arrives from different dpn.

Change-Id: I50942db1ef198ab919a34513775983d7683303d3
Signed-off-by: Olga <olga.schukin@hpe.com>
7 years agoPerforms a residual cleanup of ElanPseudoPort flows 00/45800/7
Marcos López Samaniego [Fri, 16 Sep 2016 06:08:42 +0000 (08:08 +0200)]
Performs a residual cleanup of ElanPseudoPort flows

 + When an ElanPseudoPort is removed on the Northbound, we
   must ensure that no elanPseudoPort related flow is left
   behind in any DPN.

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

Change-Id: Ib2bdebfe03f574d5bc89abac989505ef81f0f381
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
7 years agoBug 6758: Remove inter-VPN link state even if error 89/45889/6
Alvaro Gonzalez ARROYO [Tue, 20 Sep 2016 13:21:48 +0000 (15:21 +0200)]
Bug 6758: Remove inter-VPN link state even if error

When an inter-VPN link in error state is removed, the
inter-VPN link is removed from MDSAL but not the state.
The bug was due because, when the state is error, it has
not any attribute with the endpoint states.

Change-Id: Ic8324c6ed5a5b5b3cf9a65694aff7ff137f3ae40
Signed-off-by: Alvaro Gonzalez ARROYO <alvaro.gonzalez.arroyo@ericsson.com>
7 years agoBug 6673 : DCN to DTCN Changes for various modules 08/46108/3
Kency Kurian [Fri, 23 Sep 2016 06:03:48 +0000 (11:33 +0530)]
Bug 6673 : DCN to DTCN Changes for various modules

- Moved all DCN in DHCP module to DTCN.
- Also added DhcpSubnetListener and DhcpHwvtepListener to blueprint xml.
- Moved bind and unbind method from DhcpManager to DhcpServiceUtils.

Change-Id: I03a5ed6af26a2f110b0712a6c1ced160a5cdebf0
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBug-6446: Concurrency changes related to NeutronPortChangeListener 08/44708/4
SivaKumar Perumalla [Fri, 26 Aug 2016 09:40:15 +0000 (09:40 +0000)]
Bug-6446: Concurrency changes related to NeutronPortChangeListener

In the current commit, we seperated MDSAL reads/writes into different
DataStoreJobCoOrdinator (which will offload job from listener to
pool of thread based on key-Port).

Change-Id: Ide49674ff76fb5bc929f6f0126ba72292667dd34
Signed-off-by: SivaKumar Perumalla <sivakumar.perumalla@ericsson.com>
7 years agoMask IPv6Prefix in ACL flows 28/45728/5
Sridhar Gaddam [Fri, 16 Sep 2016 10:44:37 +0000 (16:14 +0530)]
Mask IPv6Prefix in ACL flows

When programming an OVS flow that includes an IPv6 prefix
(like in allowed_address_pairs), the IPv6 prefix has to be
properly masked, without which the flow is not programmed
and it results in an OFPT_ERROR.

example:
IPv6 prefix 2001:db8::111f:c0cf/64 has to be masked as
2001:db8::/64 in the flow that is programmed on the switch.

Change-Id: I162bd6e20ae513f103d0e50d9c0fa60085152bd5
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoBug 6668 - Security Groups (all implementations) - port_security extension and defau... 18/45418/4
Aswin Suryanarayanan [Fri, 9 Sep 2016 12:10:37 +0000 (17:40 +0530)]
Bug 6668 -  Security Groups (all implementations) - port_security extension and default DHCP/ICMP drop rules

Removed service binding and default flows from transparent acl service
implementation.

Change-Id: Ic7fb4f2bb4bf4b442e254913dbef25dbcc5726fe
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoThrift interface changes to support EVPN operations over Quagga BGP stack 81/45781/4
Sumanth MS [Mon, 19 Sep 2016 04:36:26 +0000 (10:06 +0530)]
Thrift interface changes to support EVPN operations over Quagga BGP stack

Quagga BGP stack enhancement to support EVPN leads to Thrift interface modifications, which specifically include the following:
Type changes:
a) new AFI parameter - L2VPN
b) new SAFI parameter - EVPN
c) encapsulation types as per RFC 5512
d) layer type - whether a VRF belongs to Layer-1 or Layer-2
e) protocol type - No Overlay config/L3VPN/EVPN/ANY
f) FIB update structure updated with new parameters: l2label, ethtag, esi, macaddress, routermac
API changes:
a) addVrf() includes new layer type parameter
b) pushRoute() includes new protocol type parameter
c) withdrawRoute() includes new protocol type, ethernet tag, esi and macaddress parameter
d) getRoutes() includes protocol type parameter
BGPUpdater Service API changes:
a) onUpdatePushRoute: includes protocol type parameter
b) onUpdateWithdrawRoute: includes nexthop, ethernet tag, esi, macaddressm, l2label, l3label protocol-type parameter

Change-Id: I0b9a397b8ed6b62aaec30ef753726f185d1afd88
Signed-off-by: Sumanth MS <sumanth.ms@ericsson.com>
7 years agoBug 6716:Fix NPE in NeutronvpnNatManager 76/45576/2
Sridhar Gaddam [Wed, 14 Sep 2016 11:43:12 +0000 (17:13 +0530)]
Bug 6716:Fix NPE in NeutronvpnNatManager

Change-Id: If77b4ae30eb8e4608da571153f3dfdf28649d853
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoBug 6589 adding support for hwvtep devices ha 30/45530/5
Akash [Tue, 13 Sep 2016 10:55:51 +0000 (16:25 +0530)]
Bug 6589 adding support for hwvtep devices ha

Added template code to copy the data between ha and child nodes.
When a child node connects copy its operational data to its ha operational
node.
When operational update is received on child node , copy that operational
update to its ha operational node.
When some config update happens on ha node, copy that config update to
child node.

An add/delete logical switch update from child is immediately pushed to
parent ha node.
Duplicate updates from childs is properly filtered out while copying to
the parent ha node.Adding unt Testcase file for l2gw.

Change-Id: Iee182888d25fc45d1cddce5894272335b9650d56
Signed-off-by: Akash <a.k.sahu@ericsson.com>
7 years agobgp logging fixes 81/45381/2
Sam Hague [Wed, 7 Sep 2016 13:22:12 +0000 (09:22 -0400)]
bgp logging fixes

Change-Id: I805ed00d95f2700e30b363f4eaf1067abeab22ab
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoFix WARNING when port is updated with allowed_address_pairs 94/45494/3
Sridhar Gaddam [Mon, 12 Sep 2016 15:22:19 +0000 (20:52 +0530)]
Fix WARNING when port is updated with allowed_address_pairs

When a port is updated with allowed_address_pairs, a WARNING message is
logged in karaf eventhough the necessary ACL flows are programmed on
the port. This patch fixes this issue.

Warning logs seen in karaf:
Acl action UPDATE invoking listener org.opendaylight.netvirt.
aclservice.StatefulIngressAclServiceImpl failed

Change-Id: I5e3b20032ecd32b52d55995bad98253990e2858a
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoFix 6693 29/45529/7
Ravit Peretz [Tue, 13 Sep 2016 10:54:07 +0000 (13:54 +0300)]
Fix 6693
-DHCP Server responds to DHCP requests punted from its table(60) only
-DHCP server should not run at all when the controller-dhcp-enabled flag is false

Change-Id: I5e39ba4c7ee982f98ccb5499e902659147881f06
Signed-off-by: Ravit Peretz <ravit.peretz@hpe.com>
7 years agoBug 6708 35/45635/6
Ravit Peretz [Thu, 15 Sep 2016 15:17:19 +0000 (18:17 +0300)]
Bug 6708
Neighbor NAPT switches group table buckets remain empty
Fix race by triggering NAPT neighbor group table update
upon tunnel interface state addition

Change-Id: If1774c91eb9a42a5da575ec25ca83935fbb178b2
Signed-off-by: Ravit Peretz <ravit.peretz@hpe.com>
7 years agoBug 6727 36/45636/3
Ravit Peretz [Thu, 15 Sep 2016 15:21:18 +0000 (18:21 +0300)]
Bug 6727
ExternalRouterListener ignore multiple routers implementation

Change-Id: I390a666dd61304816f73b7405cc3abbccc45028b
Signed-off-by: Ravit Peretz <ravit.peretz@hpe.com>