netvirt.git
7 years agoBug 8595 - DNAT traffic from DC gateway to FIP fails 72/58272/2
cgowdru [Mon, 5 Jun 2017 17:18:03 +0000 (22:48 +0530)]
Bug 8595 - DNAT traffic from DC gateway to FIP fails

Description :

In PDNAT_TABLE, we have a FIP mac match for performing FIP to internal IP
translation. But in L3_LFIB_TABLE, the destination mac has not been
updated and as a result, the reverse traffic for FIP were dropped.

Changes done to update packet with destination FIP mac as a result,
PDNAT_TABLE has specifc match and FIP to internal IP translation been done
properly.

Change-Id: I3fec733c7a8c049808a09828b8090daed12c83fc
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoBug 8585: Exception with invalid QoS Alert params 76/58276/1
Arun Sharma [Mon, 5 Jun 2017 17:33:25 +0000 (23:03 +0530)]
Bug 8585: Exception with invalid QoS Alert params

Root cause - When invalid config parameter is set through karaf shell,
in-memory configuration is updated before data validation. Invalid configuration
later gets rejected but this makes configuration inconsistent. Any subsequent, configuration
is rejected until problematic parameter is set to valid value.

Fix - Update the QoS Alert configuration parameters only after validation.
Same as done for configuration through REST.

Change-Id: Ia46664850f3c7abe0ce74f76cf7e35bdbd79c7c6
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoFix checkstyle problems not detected by the current version 96/58196/3
David Suarez [Sat, 3 Jun 2017 12:55:02 +0000 (14:55 +0200)]
Fix checkstyle problems not detected by the current version

This change is required for overall move to new Checkstyle version, see
https://git.opendaylight.org/gerrit/#/q/topic:bumpCheckstyle

Change-Id: I8f9c20211a2936cf964f2cf51f8e41ffa180bb07
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7451 - guarding NPE 67/58167/5
Periyasamy Palanisamy [Fri, 2 Jun 2017 05:48:53 +0000 (11:18 +0530)]
Bug 7451 - guarding NPE

added few null checks to avoid nullpointerexceptions

Change-Id: I8b077f1d87d79bfe3804d8daabdf391a5358f301
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoBug 8581: DNAT failure with openstack/ocata 76/58176/3
cgowdru [Fri, 2 Jun 2017 13:12:08 +0000 (18:42 +0530)]
Bug 8581: DNAT failure with openstack/ocata

Problem Statement:
===================
DNAT traffic is getting failed because of missing DNAT flows in switch
(DPN). This issue was observed in openstack stable/ocata only.

Solution:
==========
Due to invalid check in NeutronPortListener.update(), certain FIP DS entry
where not populated and as a result, required DNAT flows where not installed.
Changes done to create required FIB DS entries properly.

Change-Id: Ia11a7e1d28288d762d26c3897d1612401d4ee8fa
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoelanName is null 24/58224/2
Janki Chhatbar [Mon, 5 Jun 2017 07:06:54 +0000 (12:36 +0530)]
elanName is null

Check for elanName. If null, return.

Change-Id: I72c931477c6d8ae464a654095383f8537ef6748e
Signed-off-by: Janki Chhatbar <jchhatba@redhat.com>
7 years agoBug 8586: Alarm raised due to stale stats polling 42/58242/2
Arun Sharma [Mon, 5 Jun 2017 11:38:08 +0000 (17:08 +0530)]
Bug 8586: Alarm raised due to stale stats polling

Root cause - When port stats polling is enabled, first poll returns
old data (Rx bytes and Dropped bytes) when QoS alert was not enabled.
Alert may get logged if stale stats has dropped % > threshold value

Fix - Alert should not be logged based on first poll data. Use first poll data
to set the baseline counts and raise alert on subsequent polls based on the delta
of counts between the polls.

Change-Id: Ic12f3d41e7c0277109acc51ab548e1a7d0b4d13b
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoReplace LOGGER by LOG 81/57981/3
David Suarez [Mon, 29 May 2017 13:40:59 +0000 (15:40 +0200)]
Replace LOGGER by LOG

Replace LOGGER by LOG to follow the
OpenDaylight recommendations [1].

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

Change-Id: I038b8fc9a16b7443fcdefcad1bc12283151ba503
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoClean up Optional uses 82/57782/9
Stephen Kitt [Wed, 24 May 2017 15:19:39 +0000 (17:19 +0200)]
Clean up Optional uses

This patch reverts Optional and related streaming uses where they
result in more convoluted code than necessary (or, in the case of
Optional, where Optional instances are created only for conditions).

Change-Id: I8d0b2c456ff0a477e440fb029b8495476aabed27
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoReplace logger and log by LOG 40/58040/5
David Suarez [Wed, 31 May 2017 11:30:29 +0000 (13:30 +0200)]
Replace logger and log by LOG

Replace logger and log by LOG to follow the
OpenDaylight recommendations [1].

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

Change-Id: Ia4f5a1c1692133efa0e49873ba954a360572989b
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 8589: Fix regression in Ipv6PktHandler 85/58185/3
Sridhar Gaddam [Fri, 2 Jun 2017 17:44:31 +0000 (23:14 +0530)]
Bug 8589: Fix regression in Ipv6PktHandler

Following this change [1], Ipv6PktHandler is not getting
invoked for RS/NS meant for router interfaces. This patch
fixes this issue.

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

Change-Id: I5b98b742623df2552205f8bbb24d70ae17ba1325
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoUse named constants in ElanUtils 82/57982/2
Stephen Kitt [Mon, 29 May 2017 13:59:40 +0000 (15:59 +0200)]
Use named constants in ElanUtils

... instead of commented true or false.

Change-Id: I7f0738f11666f9433ae0942b2be538514d08311b
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoUse direct comparisons instead of Objects.isNull 83/57783/3
Stephen Kitt [Wed, 24 May 2017 16:01:08 +0000 (18:01 +0200)]
Use direct comparisons instead of Objects.isNull

There is no reason to ever use Objects.isNull() directly, it’s
equivalent to “== null”. Its documentation explains its purpose: “This
method exists to be used as a Predicate, filter(Objects::isNull)”.

Change-Id: I86123fec65c09a1d26906935cad6df79750fa2d8
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoBug 7451 - VPN service cleanup of Table 17 02/57902/3
Vivekanandan Narasimhan [Fri, 26 May 2017 13:49:26 +0000 (19:19 +0530)]
Bug 7451 - VPN service cleanup of Table 17

Whenever a VM is deleted (or) a VPN where a VM
resides in is removed, the dispatcher-table
entries for that VMs VPN Interface were not
getting removed.

The fix here makes sure that dispatcher Table
(Table 17) gets cleaned up by VPN Service.

The related ELAN patch to clean up dispatcher
table for ELAN service entries is here;
https://git.opendaylight.org/gerrit/#/c/57767

Change-Id: I6460b8a12a37236275e72606bc58c4b59db440cb
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoSNAT performance improvement for Controller-Based SNAT 43/57743/5
cgowdru [Wed, 24 May 2017 07:19:24 +0000 (12:49 +0530)]
SNAT performance improvement for Controller-Based SNAT

Description :
Following changes were done to address SNAT performance improvement
in following area.

1) Seperate Queue for first SNAT packet, retry packet and Flow removed
event on Idle Timeout.
2) Multithreading: using 25 threads for processing first SNAT packets, 25
thread for processing retry packets and 1 thread for processing Flow
Removed event.
3) Updated checkIpPortMap API to have direct query based on routerid,protocol,
internalip+port criteria thus preventing unnecessary looping.
4) Moved the code of getting externalMac Address and external address to
get executed only for first packet, thus preventing the retry packet from
executing it which is unnecessary.

Change-Id: Ib34aa8726295381d0e4ffd1f3cec74292d422c4f
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoBug 8417 - [l3vpn_ecmp] Deleting MPLS GRE Tunnel port doesn't delete the 56/58156/2
epgoraj [Thu, 18 May 2017 11:06:06 +0000 (16:36 +0530)]
Bug 8417 - [l3vpn_ecmp] Deleting MPLS GRE Tunnel port doesn't delete the

bucket entry in the group

Change-Id: Ic7287a9611bf27453713e47f6dde11373fea3172
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoRevert "Revert "Minor Checkstyle fix Custom Import Order error"" 55/58155/3
Sam Hague [Fri, 2 Jun 2017 00:04:05 +0000 (00:04 +0000)]
Revert "Revert "Minor Checkstyle fix Custom Import Order error""

This reverts commit 0cb7bc37f4a94363ddb994c07fa43611d57edddd.

Change-Id: I1155651e318112ef3b8b2c0a8b8a3304399f98a7
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7451 - Leftovers in dispatcher table when unbind and ietf-state delete 67/57767/9
epgoraj [Wed, 24 May 2017 12:19:54 +0000 (17:49 +0530)]
Bug 7451 - Leftovers in dispatcher table when unbind and ietf-state delete

           occurs simultaneously

Change-Id: Id3c44e94da203ddda9dbc3e6fb8b6885523c7fa3
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 8498 - ICMP traffic from DHCP NS not blocked when ICMP rule to allow 29/57329/2
Aswin Suryanarayanan [Thu, 18 May 2017 06:27:43 +0000 (11:57 +0530)]
Bug 8498 - ICMP traffic from DHCP NS not blocked when ICMP rule to allow
VM-VM traffic is added in learn mode.

The  wrong filter table to be used for learn ingress/egress service is
fixed.

Change-Id: I15e8841314c24b10556128bac354ebab1d80a698
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoAdd JUnits for InterVpnLinkLocator 82/56682/5
Miguel Perez [Fri, 24 Feb 2017 16:26:20 +0000 (17:26 +0100)]
Add JUnits for InterVpnLinkLocator

 + Only 2 so far:
    -  testFindInterVpnLinksSameGroup
    -  testSelectSuitableDpns_moreDpnsThanIvpnLinks

 + It adds an L3vpnCatalog that contains several VPN test data
   to play with

 + Idem with InterVpnLinkTestCatalog

Change-Id: I1c6866ec5fe2570a469dd9ea9e5a6591d11dffa4
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoFix a few non-null collections 83/57983/2
Stephen Kitt [Mon, 29 May 2017 13:58:39 +0000 (15:58 +0200)]
Fix a few non-null collections

In general, methods returning collections should never return null.
This patch fixes L2GatewayConnectionUtils and propagates the non-null
results.

Change-Id: If249aec9b8494de736c362f0ea04139151670d68
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoBug 8376: Fix DHCP for external tunnels 44/56544/4
Victor Pickard [Thu, 4 May 2017 16:55:06 +0000 (12:55 -0400)]
Bug 8376: Fix DHCP for external tunnels

DHCP for external tunnels does not work with neutron
DHCP server.

ODL is installing rules to punt DHCP packets received
on external tunnels to controller, even when ODL
DHCP is disabled. But, since ODL DHCP is disabled,
no DHCP response is sent by ODL. And, with these
rules installed, neutron dhcp server never sees the
DHCP packet. As a result, VM will not get IP
address.

Do not start listeners that are responsible for
installing DHCP rules to punt DHCP packets to
ODL controller when ODL DHCP is disabled.

Change-Id: Ib0e243a9bca5866e50a5d1cb4c70cd4441dd01e6
Signed-off-by: Victor Pickard <vpickard@redhat.com>
7 years agoBUG:8341 IAE seen in CSIT logs when port/vlan name is not matching UUID 52/57252/3
epgoraj [Mon, 15 May 2017 16:57:46 +0000 (22:27 +0530)]
BUG:8341   IAE seen in CSIT logs when port/vlan name is not matching UUID

Change-Id: If90482540cc5cc7c28d16397f84a39f3774eab7b
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agobug 7599 hwvtep ucast mac add performance improv 10/56710/4
Akash [Tue, 9 May 2017 10:31:51 +0000 (16:01 +0530)]
bug 7599  hwvtep ucast mac add performance improv

Changes for performance improvement.
Added new Cmd TunnelIpCommand and also changed function getKey to return
actual key Identifier in place of String value.

Change-Id: I0fd84c87db6feefcba4c119fe0c05193751ab8cb
Signed-off-by: Akash <a.k.sahu@ericsson.com>
7 years agoelanmanager-impl <dependency> interfacemanager-impl <scope>test 88/58088/2
Michael Vorburger [Thu, 1 Jun 2017 00:32:21 +0000 (02:32 +0200)]
elanmanager-impl <dependency> interfacemanager-impl <scope>test

It is wrong to directly depend on interfacemanager-impl from
elanmanager-impl.  This may only be done with <scope>test, for component
tests.

Remove the sole usage of a util from ITM - genius has the same util.

Change-Id: I0dda82184d547cefa5a447361111438ed3fe40c1
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoUse named constants for PolicyAceFlowWrapper 84/57984/2
Stephen Kitt [Mon, 29 May 2017 13:56:40 +0000 (15:56 +0200)]
Use named constants for PolicyAceFlowWrapper

Instead of commenting each use of true or false, use constants.

Change-Id: Ibf8b19b67dc54e99e6caffe8056a0e04b62601c2
Signed-off-by: Stephen Kitt <skitt@redhat.com>
7 years agoAdjust tunnel state listeners for logical tunnel 55/53955/15
Olga Schukin [Mon, 27 Mar 2017 14:12:33 +0000 (17:12 +0300)]
Adjust tunnel state listeners for logical tunnel

If the logical tunnel exists between the source and destination DPNs it will
be set as the lport-tag of register6 in the remote nexthop actions.

Spec: https://git.opendaylight.org/gerrit/50779/

Change-Id: I98ff89efd047e056529e4bbdf06493e548c561d1
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBUG:8232 updating BGPVPN with the List of RDs 26/55726/24
epgoraj [Thu, 20 Apr 2017 11:59:50 +0000 (17:29 +0530)]
BUG:8232 updating BGPVPN with the List of RDs

       *Problem: When a new Extra-route is added and if there are not enough RDs
        for the VPN then the new extra-routes are not handled.
        These unprocessed extra-routes will be handled during vpninstance update
        (ie when new RDs are added(Update) to the existing VPN)

Change-Id: Ic380b6aaabdd0d44484c2ec1a33de7cde9c01366
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoFix Unused log and private final 61/56961/7
mcauffiez [Fri, 12 May 2017 15:18:33 +0000 (11:18 -0400)]
Fix Unused log and private final

Delete unused log and their imports.
Change initailized private final var to
private static final in order to use less memory.

Change-Id: Ieecaf3cf75ac67b55e2bfd87c1c78eb1bbd77782
Signed-off-by: mcauffiez <mcauffiez@inocybe.com>
7 years agoEVPN RT2 : Silent host changes 14/57414/3
Yugandhar Reddy Kaku [Fri, 19 May 2017 10:43:33 +0000 (16:13 +0530)]
EVPN RT2 : Silent host changes

When the flow created on packet received from silent host expires,
prefix is removed from macEntry container and prefix is withdrawn,
There is no necessity to withdraw prefix from here, it will be
duplication.

Change-Id: Iab970736a182efaddf4dfc44a5a11377ca22b111
Signed-off-by: Yugandhar Reddy Kaku <yugandhar.reddy.kaku@ericsson.com>
7 years agoBug 8508 : Id-manager exception during releasing id for router 32/57332/4
cgowdru [Thu, 18 May 2017 07:06:14 +0000 (12:36 +0530)]
Bug 8508 : Id-manager exception during releasing id for router

Description : Even though opendaylight-semantics is disabled,
the following EVPN NAT use-cases require VNI to be allocated from
OpenDaylight VNI Pool:

a. All traffic on external network will be using a VNI allocated for the
external-VPN aka Internet VPN.

b. Similarly all traffic from Non-NAPT switch to NAPTSwitch will be using
the VNI allocated for the router from the OpenDaylight VNI Pool.
For VNI-L3-L3 Fowarding feature also, a VNI must be allocated for every
router from the OpenDaylight VNI Pool as that VNI will be used for
Non-NAPT to NAPTSwitch traffic.

This fix makes that allocation as only release alone was done earlier.

Changes done to allocate a vni for router(when router-gatway-set done)
and been released during ext-router entry is deleted. In CSIT(having
non-EVPN use-case) were executed, an attempt to release the non-allocated
id was done during when ext-router entry is deleted resulting in exception.
Change done to make sure an id is allocated when router-gateway-set is done to
prevent such occurance of exception.

Change-Id: Ic1e696d6b4c8d0c56eac8b16ed0731d072b5b135
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoBug 8539: IPv6 L3 Forwarding broken. 19/57719/3
Vivekanandan Narasimhan [Tue, 23 May 2017 17:02:45 +0000 (22:32 +0530)]
Bug 8539: IPv6 L3 Forwarding broken.

The merge of the following review;
https://git.opendaylight.org/gerrit/57145
broke L3 Forwarding for IPv6 addressed ports.

The fix here addresses the breakage by making
sure that L3_GW_MAC_TABLE entries are filled
correctly for both IPv4 and IPv6 router-interface
ports, before embarking on writing PING
Responder flows for IPv4 based router-interfaces.

Change-Id: Ieb190edda470264006609c62e4af9fc0d94d4a2c
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 8485 : EVPN was also coming as Layer_3 VRF 28/57328/4
Vyshakh Krishnan CH [Tue, 30 May 2017 09:37:23 +0000 (15:07 +0530)]
Bug 8485 : EVPN was also coming as Layer_3 VRF

Problem:
Even after configuring EVPN Layer 2 VRFs in quagga its coming as EVPN Layer 3 VRFs.

Solution:
Changes to modify the layer type was missing in VPN engine

Change-Id: I8f45b06c02f3920512f16563d77b13b8ba076a9d
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agoBug 8358 - Local next hop group not deleted after VM migration 16/56516/21
gobinath [Thu, 4 May 2017 11:51:03 +0000 (17:21 +0530)]
Bug 8358 -  Local next hop group not deleted after VM migration

Issue:

When a VM is migrated from one DPN to another, the FIB flows are not
programmed for the VM in the DPN to which it is migrated.

Analysis and Fix:

The l3nexthop container is used to check whether the local next hop group
is already present for a prefix. If it exits, no new group is created and just
the reference count is increased. When this prefix is removed, this
reference is decreased & the group is removed when the reference count is
0. It was observed that for the first VM creation, the reference count is
2(it should be 1) because of redundant calls to createlocalnexthop. A
check has been added to prevent this.

Also some other minor fixes have been done related to ECMP

1. The addition/deletion of extra route also changes the above mentioned
flow reference count. This caused problems while just updating the
extraroutes(the flow reference count keeps increasing and so the local
next hop group would never be deleted). Now, the addition/deletion of
extra routes doesnt change the flow reference count in the l3nexthop DS.

2. When there is no change in routepath of the extraroute(updated extra
route also present in the same DPN), there is no change in odl-fib DS and
so handling has been added to implicitly call the refresvrfEntry which
would update the FIB flows.

Change-Id: I4d7b435aed73268383b36e1c635c499c71e54c60
Signed-off-by: gobinath <gobinath@ericsson.com>
7 years agoBug 8412 - NPE while adding and removing elanmacentry 02/56902/12
Janki [Fri, 12 May 2017 06:19:21 +0000 (11:49 +0530)]
Bug 8412 - NPE while adding and removing elanmacentry

1. While advertising RT2 route prefix is Optional, hence added a safer
null check. if prefix is not present, still go ahead and advertise RT2
route
2. During withdraw if prefix is not present, return with error log.
3. Remove the elanName null check as its never null.

Change-Id: I3009bb9d19f3413d448031ff47771a986ef10746
Signed-off-by: Janki <jchhatba@redhat.com>
7 years agoBUG 8537: Get destination from interface remote ip 16/57716/3
Jaime Caamaño Ruiz [Wed, 17 May 2017 20:20:41 +0000 (22:20 +0200)]
BUG 8537: Get destination from interface remote ip

Genius will not set the tunnel destination IP address until the very
last action. Classifier egress cannot expect to have this IP address
available on it's own pipeline.

Solve this by setting the IP address on REG0 on the egress service
binding actions. This will be the remote IP of the bound interface in
case of tunnel or the local IP otherwise.

To avoid overuse of registries, a REG is no longer used to set the
SFF IP address on table 101. This IP will be set directly on the path
specific flows of table 223 if needed. Previously this REG was being
used to know if the SFF was remote by comparing with the local IP in
these flows but that is not needed as it can be known at configuration
time.

Change-Id: If7a474391ed2d643cc3b3f34743d60c5f418b2e5
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoReplace toUpperCase().equals by equalsIgnoreCase() 13/57713/2
David Suarez [Tue, 23 May 2017 16:05:15 +0000 (18:05 +0200)]
Replace toUpperCase().equals by equalsIgnoreCase()

Change-Id: I54ac6903362c15c6caab05810861de852d2619a5
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoBUG-3874: BGP Manager / fib-show shell cmd triggers an exception on 01/58101/2
Philippe Guibert [Thu, 1 Jun 2017 09:12:44 +0000 (10:12 +0100)]
BUG-3874: BGP Manager / fib-show shell cmd triggers an exception on
usage

When using fib-show, instead of displaying null label, the string <not
set> is displayed.

Change-Id: I563bb3ff435cba94ba1e918ea09cbf7be6ae7f91
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agocleanup differences between master and carbon 82/58082/1
Sam Hague [Wed, 31 May 2017 22:47:15 +0000 (15:47 -0700)]
cleanup differences between master and carbon

Change-Id: I792ff3d5193438800b2e8001d1edb309ad0c7909
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7939 : SubnetRoute functionality for bgpvpn broken. 61/57361/2
HANAMANTAGOUD V Kandagal [Thu, 18 May 2017 14:37:27 +0000 (20:07 +0530)]
Bug 7939 : SubnetRoute functionality for bgpvpn broken.

IPs behind Neutron Interfaces are not discoverable for router-associated-to-bgpvpn use-cases.

With this fix we are disallowing creation of subnetRoutes for internal
subnets off neutron routers. More specifically, for just neutron routers,
subnetRoutes won't be published. However, if such subnets are part of a
router that is within a bgpvpn, the subnetroutes feature will continue to
work.

For the PNF review that requires subnetRoutes to be available, the fix
here needs to be further tweaked to make PNF discovery on internal subnets
of a VLAN-network to work.

PNF Review referredin commit message here is:
https://git.opendaylight.org/gerrit/53984

Change-Id: I507aae2e3d1cbb72457f32b48e598ef0f6cda703
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
7 years agoBug 8471 - Traffic between a VM without FIP and a VM with FIP is not 46/57346/5
Aswin Suryanarayanan [Thu, 18 May 2017 11:19:51 +0000 (16:49 +0530)]
Bug 8471 - Traffic between a VM without FIP and a VM with FIP is not
working

1)Hairpinning changes are done for conntrack based SNAT, now it matches
on external subnet id that external n/w id.
2) The packets are submitted back to table 21 from 47.
3)L3_GW_MAC_TABLE (Table 19)  replace the external n/w id with external
subnet id for the packet address to router external interface
4)L3_FIB_TABLE (Table21) flow now matched external subnet id  instead of
n/w is along with external ip address.

Change-Id: Ib4de831a58638ed9d4aed9c78450e3d7bebf6222
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoBug8484: Non-NAPT Group action is drop for router associated with BGP-VPN 63/57263/4
karthikeyan [Wed, 17 May 2017 11:28:14 +0000 (16:58 +0530)]
Bug8484: Non-NAPT Group action is drop for router associated with BGP-VPN

Problem Description:
======================
Non-NAPT to NAPT VM Traffic is getting dropped at Non-NAPT Group level
when router is being associated with private BGP-VPN.

Solution:
===========
When ever Vxlan tunnel got "down" followed by "up" event between Non-NAPT to
Napt Switch happened, Non-Napt group got re-created through tunnel
interface state listener. In this use case is not been properly having the
code logic for if the router with private bgp-vpn configured.

Added the proper code for creating tunnel bucket information for Non-NAPT
groups got re-created during tunnel state changed.

Change-Id: I509eeda9041d5e1b170e45554b3d9f661e6091fd
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
7 years agoBug 8451: afi parameter is not the good one used in pushRoute and withdrawRoute 45/57245/3
Noel de Prandières [Wed, 17 May 2017 08:35:16 +0000 (10:35 +0200)]
Bug 8451: afi parameter is not the good one used in pushRoute and withdrawRoute

The afi parameter used as parameter is calculated based on the prefix nature,
that is to say either IPv4 or IPv6.

Change-Id: I6d34488e43d4dc589ce842fcd1675d24033c9f28
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
7 years agoBUG-8388: On egress, filter out SF bound packets 10/56610/4
Jaime Caamaño Ruiz [Fri, 5 May 2017 15:58:55 +0000 (17:58 +0200)]
BUG-8388: On egress, filter out SF bound packets

Classifier should not handle packets that are already classified and
bound towards the SFF. For this, we set C1 to 0xFFFFFF on the ACL flow.
Then on beginning of egress pipeline, if C1 does not have that value
we assumed that's a packet bound for the SF and already classified so
it is resubmitteed to dispatcher. Otherwise, C1 is reset to 0 and
handling continues.

Change-Id: I1427a9bbec7fb0c8e36c241b727d39de450bc1ed
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoBug 7939,8082: Table 19 flow nightmares 45/57145/13
Vivekanandan Narasimhan [Tue, 16 May 2017 12:34:30 +0000 (18:04 +0530)]
Bug 7939,8082: Table 19 flow nightmares

Table 19 flows rules aren't getting recycled appropriately
whenever VMs are moved into a routed subnet and then again
backed off.

The fix here attempts to make sure that Table 19 flow rules
are handled consistently when a subnet moves in/out of a router
and also when a router moves in/out of a bgpvpn.

Change-Id: Ief94b1b856a69c631052f11644db6a0b091f2aa7
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Signed-off-by: Jamo Luhrsen <jluhrsen@redhat.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 8475 - Non-external vlan provider networks do not work 58/56758/8
Ravindra Thakur [Fri, 24 Mar 2017 09:48:25 +0000 (15:18 +0530)]
Bug 8475 - Non-external vlan provider networks do not work

Spec link:
http://docs.opendaylight.org/en/latest/submodules/netvirt/docs/specs/vlan-provider-enhancement.html

Change-Id: Iad7479835a7bd97a4f827c8365601d2a20efe477
Signed-off-by: Ravindra Thakur <ravindra.nath.thakur@ericsson.com>
7 years agoBug 8473: Reboot fixes for ECMP with extra-routes 16/55216/12
eceghkl [Wed, 19 Apr 2017 12:06:34 +0000 (17:36 +0530)]
Bug 8473: Reboot fixes for ECMP with extra-routes

* It includes changes in the extraroute-rds-map container. Nexthop is
  added as key which is used to retrieve the allocated rd for an extra
  route. This is useful during reboot to know which rd is allocated for
  an extra route and this change avoids re-allocation of rds during reboot.

* Some minor fixes for reboot is also added in this review.

Change-Id: I31e8d153be947810a66ed3e2ccc686eee876bea8
Signed-off-by: eceghkl <manu.b@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 8474: Enable openstack-vni-enforcement on data plane 70/55870/8
Vivekanandan Narasimhan [Mon, 24 Apr 2017 07:45:28 +0000 (13:15 +0530)]
Bug 8474: Enable openstack-vni-enforcement on data plane

Change-Id: I5f87df4b45e35a3b857f616437b6ede4c0b5f029
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 8474: Local FIB entries for VxLAN VPN interfaces not programmed 69/57269/6
Abhinav Gupta [Wed, 17 May 2017 11:57:07 +0000 (17:27 +0530)]
Bug 8474: Local FIB entries for VxLAN VPN interfaces not programmed

Local FIB entries for VxLAN networks on router-based VPNs are not getting
programmed when VNI flag is turned to true, as makeConnectedRoute() wasn't
being called.
This commit fixes the same for create and delete cycles.

Change-Id: Ib81ac9aa1270921c11fc35cfb3352afdd5aff577
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 8451 : Problem with EVPN RT5 exchange between ODL and QBGP 59/57059/3
Vyshakh Krishnan CH [Mon, 15 May 2017 12:43:19 +0000 (18:13 +0530)]
Bug 8451 : Problem with EVPN RT5 exchange between ODL and QBGP

Problem:
ODL was always advertising encap type as MPLS and protocol type as ANY
irrespective of L3VPN or EVPN RT5

Fix:
Added the missing code to handle the encap type and protocol type

Change-Id: Ia4e27b62c33977ae5f5ce155695851f97bc47788
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agoBug8471 : L3_GW_MAC_TABLE entry for FIP not removed. 81/57281/1
cgowdru [Wed, 17 May 2017 13:01:06 +0000 (18:31 +0530)]
Bug8471 : L3_GW_MAC_TABLE entry for FIP not removed.

Description : L3_GW_MAC_TABLE entries for Floating-ips where not removed
after FIP disassociation. The flow-key generated during removal was
different then during creation of this flow.

Change-Id: I6dc9d7dbb365d9e1a815241b01139658ebb59d12
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoBug 8025: Use RPC with barrier when sending SNAT packet out 49/54349/8
Alon Kochba [Wed, 5 Apr 2017 11:00:05 +0000 (14:00 +0300)]
Bug 8025: Use RPC with barrier when sending SNAT packet out

When configuring SNAT flows and then sending a packet-out to those
flows, use RPCs with barriers before the packet-out to ensure the
flows are configured once the packet-out is sent.

Change-Id: I330df570857317e50bf5dc404e9691a0053f3f54
Signed-off-by: Alon Kochba <alonko@hpe.com>
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoRevert "Minor Checkstyle fix Custom Import Order error" 95/56895/1
Sam Hague [Fri, 12 May 2017 01:09:40 +0000 (01:09 +0000)]
Revert "Minor Checkstyle fix Custom Import Order error"

This reverts commit 0a8beba6d46a3de860c7af9d9b2767903cae6fa6.

Change-Id: I8a59a9494c27bbff289a863dc70b5202b7185dd1
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoMinor Checkstyle fix Custom Import Order error 46/55746/5
Michael Vorburger [Thu, 20 Apr 2017 16:20:20 +0000 (18:20 +0200)]
Minor Checkstyle fix Custom Import Order error

This shows up as red in Eclipse, but the CLI mvn build missed this.
This is due to a more recent version of Checkstyle.

required for overall move to new Checkstyle version, see
https://git.opendaylight.org/gerrit/#/q/topic:bumpCheckstyle

also includes minor removal of (1) extra parenthesis, (2) generic <>
clean-up and (3) missing @Override from automatic clean-up which happens
on auto-save (technically unrelated to Checkstyle).

Conflicts:
vpnservice/qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosAlertManager.java

Change-Id: Ic650ffe9ac42cfbc7cad4c1c31c7553faf5fe603
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
Signed-off-by: David Suarez <david.suarez.fuentes@ericsson.com>
7 years agoBUG-3874: BGP Manager / fib-show shell cmd triggers an exception on usage 28/56528/5
Philippe Guibert [Wed, 19 Apr 2017 10:22:52 +0000 (11:22 +0100)]
BUG-3874: BGP Manager / fib-show shell cmd triggers an exception on usage

When using fib-show, an exception was triggered when parsing FibEntries
from a VRF context. A sanity check is done in order to prevent accessing
null entries.

Change-Id: If296e3b4770518f53c789130565db8960ca63ef6
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoEVPN RT2 Installing flows for RT2 received in prior 68/56668/4
Riyazahmed D Talikoti [Mon, 8 May 2017 10:18:16 +0000 (15:48 +0530)]
EVPN RT2 Installing flows for RT2 received in prior

1. When EVPN is created, vpn instance will be created and bgpmanager will
register with quagga bgp. hence BGPmanager will start receiving RT2 routes
from peer. Bgpmanager will write into macvrfentry(odl-fib.yang).
macvrfentrylistener is listening to macvrfentry and which installs dmac
flow for the received RT2 route only if EVPN is attached to network.

2. Now if EVPN is created and NOT attached to network. BgpManager will
still receive RT2 routes from peer, which will be written into
macvrfentry, but since evpn is not attached to network yet, hence DMAC
flows are not installed. Once Evpn is attached to network we need to go
through all the macvrfentry with the matching RD and install dmac flows.

3. when EVPN is detached from network, we go through all the macvrfentry
for that RD and uninstall DMAC flows.

4. async read is done so that even if it fails to read first time it tries
multiple times till either read is success or failure.

Change-Id: If4cb1b0fb924e7defa4e8c119dcf249b3f9b24f6
Signed-off-by: Riyazahmed D Talikoti <riyazahmed.d.talikoti@ericsson.com>
7 years agoEVPN RT2 : Listener for evpn to network associatn 52/55952/4
Vyshakh Krishnan CH [Tue, 25 Apr 2017 05:33:17 +0000 (11:03 +0530)]
EVPN RT2 : Listener for evpn to network associatn

When EVPN is created, even if no network is associated to it, BGP routes
will come from quagga which will be stored in FIB as MacVRF.
Now when the network association happens, all these routes should be
examined and corresponding elan DS has to be updated.

Change-Id: I53b75890005c67469cab512a3bf5824b6265f06d
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agobgpmanager VPNv6 shell command update as well as OAM changes 55/56655/5
Philippe Guibert [Tue, 11 Apr 2017 16:10:50 +0000 (17:10 +0100)]
bgpmanager VPNv6 shell command update as well as OAM changes

bgp-network command is modified so as to support the ability to
configure prefixes with afi parameter, to be 1 ( IPv4) or 2 ( IPv6).
Moreover, this extension permits retrieving the number of prefixes VPNv6 stored
on quagga, like it has been done for VPNv4

Change-Id: I90a043d5d2a77789b0a5fe376994b201830ad5fa
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoEVPN RT2 : Receive RT2 BGPManager changes 48/55848/14
Vyshakh Krishnan CH [Tue, 9 May 2017 05:36:09 +0000 (11:06 +0530)]
EVPN RT2 : Receive RT2 BGPManager changes

On receiving RT2, bgpmanager has to updated the macVrfEntry in fib.yang.
Also when the RT2 is from a new TEP, same has to be updated in elan
external tep DS.
A sample cli is added to simulate the RT2 from QBGP as well.

Change-Id: If193af109a3a08d08d6c6f32e715c71f045e5af8
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agobug 7599 hwvtep ucast mac add performance improv 57/54257/7
Akash Kumar Sahu [Mon, 3 Apr 2017 11:27:17 +0000 (16:57 +0530)]
bug 7599  hwvtep ucast mac add performance improv

Adding batching to improve performance

Change-Id: I2844f7418a8f088064baafe4804a9c1a6b3a8f73
Signed-off-by: Akash Kumar Sahu <a.k.sahu@ericsson.com>
7 years agoBug 8014 l2gw connection broken 99/56599/2
Riyazahmed D Talikoti [Fri, 5 May 2017 12:50:08 +0000 (18:20 +0530)]
Bug 8014 l2gw connection broken

listener registration is broken in previous async datachange listener
refactoring change.

Adding the remote ucast macs immediately instead of waiting for mcast
to appear in operational datastore.

creating logical switch in config datastore , irrespective of if it is
found in operational datastore or not.

Change-Id: I7916ec4d457e189d28bf48eb3c11836dd6c311f6
Signed-off-by: Riyazahmed D Talikoti <riyazahmed.d.talikoti@ericsson.com>
7 years agoEVPN RT2 DMAC flow install 00/55900/15
Riyazahmed D Talikoti [Mon, 24 Apr 2017 12:11:00 +0000 (17:41 +0530)]
EVPN RT2 DMAC flow install

1. When EVPN RT2 route is recieved from peer, BGPManager will write into
macvrfentery to which MAcVrfEntryListener is listening to.
and based on add or delete DMC flow entry is added/deleted.

2. ElanEvpnUtils contains utility methods which access elan related info

3. EvpnFlowUtils contains utility methods which helps
in installing flows in DMAC.

Change-Id: I6c6f1b407d4d209985be964011323019b6965a20
Signed-off-by: Riyazahmed D Talikoti <riyazahmed.d.talikoti@ericsson.com>
7 years agoThrift changes to support IPv6 calls over Quagga BGP stack 54/56654/3
Philippe Guibert [Tue, 11 Apr 2017 14:43:04 +0000 (15:43 +0100)]
Thrift changes to support IPv6 calls over Quagga BGP stack

Quagga BGP stack enhancement to support IPv6 leads to Thrift interface
modifications, which specifically include the following Type changes:
a) new AFI parameter - IPv6
b) pushRoute() includes new AFI parameter
c) withdrawRoute() includes new AFI parameter
d) getRoutes() includes new AFI parameter
e) onUpdatePushRoute() includes new AFI parameter
f) onUpdateWithdrawRoute() includes new AFI parameter
Thrift interface changes to include information on afi type.

Change-Id: Id4aea3809e58910c57e588fa6018119911b57834
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoBUG-8387: Set tunnel id to 0 on egress towards SFF 09/56609/3
Jaime Caamaño Ruiz [Fri, 5 May 2017 15:30:32 +0000 (17:30 +0200)]
BUG-8387: Set tunnel id to 0 on egress towards SFF

When classifier is forwarding packets to the first SFF through a
tunnel, set the tunnel key to 0 as that what the SFF expects.

Change-Id: I02830f46cfe1507463aaabc562ee522646f778d3
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoFix ivpnlink bgp route leaking 66/56666/2
Miguel Perez [Mon, 8 May 2017 10:03:24 +0000 (12:03 +0200)]
Fix ivpnlink bgp route leaking

 + After splitting the InterVpnLink refactor commit into 3 smaller
   ones, this line was missed.

Change-Id: Ic31fde68e18a0cb86948301c7e549fab42561168
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoBug 8370 - Fib flows are not deleted after extra route deletion 13/56513/3
gobinath [Thu, 4 May 2017 09:59:24 +0000 (15:29 +0530)]
Bug 8370 - Fib flows are not deleted after extra route deletion

Issue:

When the extra routes associated with a router are updated, the FIB flows
corresponding to the old extra routes are not deleted.

Analysis:

While there exists handling to update the loadblancing group corresponding
to the extra route, the handling to remove the FIB flows for the extra
route when the extra route is completely removed is missing.

Fix:

Changes have been added to the deletelocalfibentry to remove the FIB flows
of the removed extra route.

Change-Id: I77b5b9d46173b1c2613c28a495bc6a85bff52d9a
Signed-off-by: gobinath <gobinath@ericsson.com>
7 years agoBug 8340 - Rules with IP prefix not getting programmed when there 94/56394/5
Aswin Suryanarayanan [Tue, 2 May 2017 14:49:33 +0000 (20:19 +0530)]
Bug 8340 - Rules with IP prefix not getting programmed when there
are multiple SG associated with a port

1)Remote filter table programming during port update is fixed.
2)Ingress and Egress filter  table no is fixed in the  respective
classes.
3)AclInterface Map logic is updated to prevent duplicate entries.
4)Test added to cover interface with intially one acl and later two.

Change-Id: If5af5ced20ed81ec27201bd4ec0def91715ebda9
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoRefactor InterVpnLink. Part THREE 80/54280/14
Miguel Perez [Mon, 3 Apr 2017 16:30:48 +0000 (18:30 +0200)]
Refactor InterVpnLink. Part THREE

 + This one implements the final purpose of this refactoring:
   taking the route leaking out of the fibmanager to a higher level,
   in this case it's the BgpManager who now takes care of the route
   leaking in case of BGP routes and the VpnManager for static and
   connected routes.

Change-Id: Ie73a7061a26cfa3b95fad633533d44fff87ad6fb
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBUG-8331: BGP Manager labels values are passedin correct order to QBGP 29/56229/4
Philippe Guibert [Fri, 28 Apr 2017 08:25:01 +0000 (09:25 +0100)]
BUG-8331: BGP Manager labels values are passedin correct order to QBGP

L3 Label Parameter is swapped with L2 Label when calling QBGP

Change-Id: Ib5d3260a696078e6b3d1de9cd0b84eaf0ebfef7d
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoBUG 8375 - Malformed NSH packets get dropped 31/56531/1
Brady Johnson [Thu, 4 May 2017 14:30:26 +0000 (16:30 +0200)]
BUG 8375 - Malformed NSH packets get dropped

- The NSH NextProtocol (NP) field must be set to 3 for ethernet
- Since the field isnt set, its set to 0 by default, which causes
  the packets to get dropped by the SFF OVS.

Change-Id: I4d13b86ff563b76a992c5c88791015053f5688e8
Signed-off-by: Brady Johnson <brady.allen.johnson@ericsson.com>
7 years agoBUG:8345 & Bug:8347 92/56492/2
epgoraj [Wed, 3 May 2017 09:29:11 +0000 (14:59 +0530)]
BUG:8345 & Bug:8347

   * The code-review contains below Fixes
   BUG:8347 -> NPE at org.opendaylight.netvirt.elan.internal.ElanSmacFlowEventListener.onFlowRemoved
   BUG:8345 -> OptimisticLockFailedException for elanDpnInterface
   Operational Datastore while deleting elan-instance and elan-interfaces

Change-Id: Id930e511f1f0814e17ca1f8cbbda43e9fd3d7e6f
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoRevert "Thrift changes to support IPv6 calls over Quagga BGP stack" 47/56447/1
harikrishna [Wed, 3 May 2017 10:15:47 +0000 (15:45 +0530)]
Revert "Thrift changes to support IPv6 calls over Quagga BGP stack"

This reverts commit cae4adebcf7f6f79736859cd2dbb04599b435091.

Change-Id: I09f01ec493bf4dc1023f5fe22f7d8aa9768d0e53
Signed-off-by: harikrishna <hari.i.krishna@ericsson.com>
7 years agoRevert "Thrift interface changes to support BGP VPNv6" 46/56446/1
harikrishna [Wed, 3 May 2017 10:09:49 +0000 (15:39 +0530)]
Revert "Thrift interface changes to support BGP VPNv6"

This reverts commit 21f5d03ca7cc0e0dfd53c3868196b6e93ec9ae19.

Change-Id: I1df917f4385ace0691b6fbf3cec408fd496e8180
Signed-off-by: harikrishna <hari.i.krishna@ericsson.com>
7 years agoRevert "bgpmanager VPNv6 shell command update" 44/56444/1
harikrishna [Wed, 3 May 2017 10:00:03 +0000 (15:30 +0530)]
Revert "bgpmanager VPNv6 shell command update"

This reverts commit be855643f1ceadc9077882b81eb35533e5717148.

Change-Id: I9516ee1258f2fd3395a677a7b70ba0e5ad83e884
Signed-off-by: harikrishna <hari.i.krishna@ericsson.com>
7 years agoRevert "bgpmanager: IPv6 information is collected vty shell" 39/56439/2
harikrishna [Wed, 3 May 2017 08:46:53 +0000 (14:16 +0530)]
Revert "bgpmanager: IPv6 information is collected vty shell"

This reverts commit b918dc13b79a565fb6d16194690c7d6c7eacb1e7.

Change-Id: I4a8ffda31d769ada55481ad708cd619c7c3a3a3b
Signed-off-by: harikrishna <hari.i.krishna@ericsson.com>
7 years agoRollback - ADDED INFO logs for tempest issue DEBUG 43/56343/2
cgowdru [Tue, 2 May 2017 05:29:26 +0000 (10:59 +0530)]
Rollback - ADDED INFO logs for tempest issue DEBUG

Change-Id: Ic695dd7bd011313e3f615c1c2f70bd7b7d212771
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoBug 7939: Interface management on cluster reboot 66/56366/5
Vivekanandan Narasimhan [Tue, 2 May 2017 10:40:04 +0000 (16:10 +0530)]
Bug 7939: Interface management on cluster reboot

Interface state changes are missed on a cluster
reboot resulting in some flows and DS not being
properly re-written.

Change-Id: Ie91cc1226f4d6494e4ce0e82f4dd0d6e00840396
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoBug 8349 - Creation of BGPVPN with the same RD is not restricted 58/56358/2
eupakir [Tue, 2 May 2017 09:51:59 +0000 (15:21 +0530)]
Bug 8349 - Creation of BGPVPN with the same RD is not restricted

ODL does not support handling of multiple bgpvpns with the same RD. Hence,
a bgpvpn create request with an already used RD should be denied.

Change-Id: I60d4cc00e73ca8089a15f5b6f4298d74ab7c7b0c
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
7 years agospec for Neutron Port Allocation For DHCP Service 98/52298/8
Periyasamy Palanisamy [Mon, 27 Feb 2017 11:37:55 +0000 (17:07 +0530)]
spec for Neutron Port Allocation For DHCP Service

Use 43 as table id for ARP_CHECK_TABLE.

Change-Id: I32bc417f883dc621c35461b9f98be797caa0722c
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Achuth Maniyedath <achuth.m@altencalsoftlabs.com>
7 years agobgpmanager: IPv6 information is collected using vty shell 94/54794/8
Philippe Guibert [Tue, 11 Apr 2017 16:13:11 +0000 (17:13 +0100)]
bgpmanager: IPv6 information is collected using vty shell

This extension permits retrieving the number of prefixes VPNv6 stored on
quagga, like it has been done for VPNv4.

Change-Id: I413c5b2ed1dc6d004f09a582f8510bccf1f1986a
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Hari Krishna <hari.i.krishna@ericsson.com>
7 years agoBUG 8340: Handle case when aceList is also empty 84/56284/2
Jamo Luhrsen [Fri, 28 Apr 2017 18:53:19 +0000 (11:53 -0700)]
BUG 8340: Handle case when aceList is also empty

Change-Id: If76c63ec6c5dd00811f593ac8d6058341b8e1cf1
Signed-off-by: Jamo Luhrsen <jluhrsen@redhat.com>
7 years agoNetvirt: Qos Alert patch7 - last 44/56244/5
Arun Sharma [Thu, 27 Apr 2017 18:47:08 +0000 (00:17 +0530)]
Netvirt: Qos Alert patch7 - last

*** patch #7 - Added EntityOwnershipListener  ***

Only qosalert entity owner or master only should poll for port stats.
Once a master is elected, it shall continue polling until a new master is elected.

Spec Review Link:
https://git.opendaylight.org/gerrit/50689

Change-Id: I67ad2b3a016204b8e19e2971a0329b52aa8bd4fb
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoUT - Adding Netvirt classifier GeniusProvider tests 13/54613/5
Brady Johnson [Mon, 10 Apr 2017 10:12:58 +0000 (12:12 +0200)]
UT - Adding Netvirt classifier GeniusProvider tests

- added GeniusProviderTest.java
- added TestInterfaceManager.java to stub the Genius InterfaceMgr
- added TestOdlInterfaceRpcService.java to stub the Genius RPC calls
- added GeniusProviderTestParams.java with common test params for above 3 files
- changes to GeniusProvider for errors that the UT flushed out

Change-Id: I60e85811959319bf6e163641506aa2f26d9975d5
Signed-off-by: Brady Johnson <brady.allen.johnson@ericsson.com>
7 years agoNetvirt: Qos Alert patch6 20/56120/10
Arun Sharma [Wed, 26 Apr 2017 19:09:07 +0000 (00:39 +0530)]
Netvirt: Qos Alert patch6

*** patch #6 - Added log4j configuraton support ***

1. Added a new log4j appender with default logging properties in qosalert.cfg
2. Added listener method update in QosAlertGenerator class to handle any chage in qosalert.cfg

Spec Review Link:
https://git.opendaylight.org/gerrit/50689

Change-Id: I2008a0a2dd22661e0f45251f0aac1088270d3d96
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoEVPN RT2 advertise and withdraw prefix changes 93/55893/10
Yugandhar Reddy Kaku [Mon, 24 Apr 2017 11:30:26 +0000 (17:00 +0530)]
EVPN RT2 advertise and withdraw prefix changes

1) Added elan external tep listener.
When elan external tep is added update the elan remote broadcast
group for all elan dpns.

2) when an elan interface is added , advertise its prefix
when elan interface is deleted, delete its prefix.

3) Advertise prefix when we receive packet in message from silent
host.

4) Withdraw prefix when the smac flow entry of silent host expires

Change-Id: I870174f9fa0741a6508f2edec20dae7489b67d26
Signed-off-by: Yugandhar Reddy Kaku <yugandhar.reddy.kaku@ericsson.com>
7 years agoSet feature capability for port status update 56/55856/5
Josh [Sun, 23 Apr 2017 08:37:09 +0000 (11:37 +0300)]
Set feature capability for port status update

See: https://bugs.opendaylight.org/show_bug.cgi?id=7718
DEPENDS ON: https://git.opendaylight.org/gerrit/#/c/55854/

Change-Id: Ia83d31c348176947e31e11d383f770ac97390145
Signed-off-by: Josh <jhershbe@redhat.com>
7 years agobgpmanager VPNv6 shell command update 93/54793/7
Philippe Guibert [Tue, 11 Apr 2017 16:10:50 +0000 (17:10 +0100)]
bgpmanager VPNv6 shell command update

bgp-network command is modified so as to support the ability to
configure prefixes with afi parameter, to be 1 ( IPv4) or 2 ( IPv6).

Change-Id: Ie0a5faf7160a049e930d2eb8f89af9d87693ddcd
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Hari Krishna <hari.i.krishna@ericsson.com>
7 years agoBUG 8296 - Erroneous Egress Classifier flows 89/55989/4
Brady Johnson [Tue, 25 Apr 2017 12:47:06 +0000 (14:47 +0200)]
BUG 8296 - Erroneous Egress Classifier flows

- Egress classifier filter flow now just matches on NSH
  MD Type as set in the Ingress classifier ACL flow
- OpenflowRenderer.renderPath() is now passed the nodeIP
  instead of the destination SFF IP
- Patch Set 2 : fixed minor merge issue
- Patch Set 3 : fixes found by ClassifierEntryTest UT

Change-Id: Ide70b7222b08b2b363acc36126dc08e8a9add556
Signed-off-by: Brady Johnson <brady.allen.johnson@ericsson.com>
7 years agoFactor out executor from ClassifierService & UT 84/54784/17
Jaime Caamaño Ruiz [Tue, 11 Apr 2017 14:40:15 +0000 (16:40 +0200)]
Factor out executor from ClassifierService & UT

Depends on [1]

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

Change-Id: I4cf5bffcd33e2f4190a699a9982f75ca2d3ad8fd
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoThrift interface changes to support BGP VPNv6 92/54792/17
Philippe Guibert [Tue, 11 Apr 2017 16:07:38 +0000 (17:07 +0100)]
Thrift interface changes to support BGP VPNv6

Thrift interface changes to include information on afi type.

Change-Id: Ie82e9a086621a551f19a0faaf9107d630277ae43
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Hari Krishna <hari.i.krishna@ericsson.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
7 years agoThrift changes to support IPv6 calls over Quagga BGP stack 91/54791/7
Philippe Guibert [Tue, 11 Apr 2017 14:43:04 +0000 (15:43 +0100)]
Thrift changes to support IPv6 calls over Quagga BGP stack

Quagga BGP stack enhancement to support IPv6 leads to Thrift interface
modifications, which specifically include the following Type changes:
a) new AFI parameter - IPv6
b) pushRoute() includes new AFI parameter
c) withdrawRoute() includes new AFI parameter
d) getRoutes() includes new AFI parameter
e) onUpdatePushRoute() includes new AFI parameter
f) onUpdateWithdrawRoute() includes new AFI parameter

Change-Id: Ibd4842624d55fd07ae88b0d2ca8094a641f8749d
Signed-off-by: Noel De Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Hari Krishna <hari.i.krishna@ericsson.com>
7 years agoBug 7866 adding retries for remote dmac programming during tunnel up event 54/55954/2
Periyasamy Palanisamy [Tue, 25 Apr 2017 05:55:42 +0000 (11:25 +0530)]
Bug 7866 adding retries for remote dmac programming during tunnel up event

* currently there is no retries in case of OptimisticLockFailedException
while programming remote dmac during tunnel up event. This leads to remote
dmac is programmed with drop action which leads to packet drop. Now added
retries for jc job.
* Also adding retries in case remote BC group fails (during tunnel up event) due to datastore exceptions.

Change-Id: I2bc024fc7133170c321c4a5071d6b58e00a2666b
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoEVPN RT2 NeutonVpn changes 22/53422/37
Riyazahmed D Talikoti [Thu, 16 Mar 2017 18:43:35 +0000 (00:13 +0530)]
EVPN RT2 NeutonVpn changes

1. EVPN RT2 RPC for create, delete, and get EVPN
creation and deletion of EVPN via REST is handled by NeutronEvpnManager.
When create EVPN RPC is received, NeutronEvpnManager will check if
vpninstance already exist with same name if not then it will create
vpninstance of type L2 for EVPN. similarly vpninstance will be deleted for
delete event.

2. Changes for attach/detach network to EVPN
NeutronEvpnManager will add/remove/update evpn name in Elan augmentation so that
EvpnElanInstanceManager will advertised and withdraw routes accordingly.

3. Few previous comments mandatory false from yang removal fix

4. Added ElanHelper file to move commonly used utility methods to avoid
cyclic dependency

Change-Id: I259734fad1ca0e19f38093b4e22a326fb6969459
Signed-off-by: Riyazahmed D Talikoti <riyazahmed.d.talikoti@ericsson.com>
7 years agoBug 8244 In Conntrack SNAT implementation G/w is not reachable when no 95/55195/7
Aswin Suryanarayanan [Wed, 19 Apr 2017 08:58:09 +0000 (14:28 +0530)]
Bug 8244  In Conntrack SNAT implementation G/w is not reachable when no
port in the router subnet is present in the node

1)Added a the pseudo port to vpn-dpn list.
2)Moved the router cache util to a separate class.

Change-Id: I6f5834ab3af1c3478274191bd7eafebc162dc25e
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agostale entry in flow rules, after deleting port associated to qos policy with dscp 99/54599/9
Naveen Kumar Verma [Mon, 10 Apr 2017 13:30:22 +0000 (19:00 +0530)]
stale entry in flow rules, after deleting port associated to qos policy with dscp

When we are delete the VM which has an associated qos policy with it,
the stale entry of DSCP marking use to persist for the table number 90.

The reason for this was that when QosNeutronPortChangeListner is called
rpc called to fetch DPN id use to fail. By moving the code to
QosInterfaceStateChangeLister we can use Interface to find out DPN id.

Change-Id: I485d84806eae2bcc8341518f8186973efb171658
Signed-off-by: Naveen Kumar Verma <naveen.kumar.verma@ericsson.com>
7 years agoBug 8310 - SNAT flows not added when the first subnet is added to the 52/56052/3
Aswin Suryanarayanan [Wed, 26 Apr 2017 10:11:22 +0000 (15:41 +0530)]
Bug 8310 - SNAT flows not added when the first subnet is added to the
external n/w after router g/w set

1)Check for the presence of external IP during add.
2)Update now considers whether a subnet is added after router g/w set.

Change-Id: Ibb6f2a5cf031db18a624e68391415e6574242434
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoClassifierUpdate unit tests 28/55228/7
Jaime Caamaño Ruiz [Wed, 19 Apr 2017 13:55:02 +0000 (15:55 +0200)]
ClassifierUpdate unit tests

Change-Id: I4baa75c75c590e35a44da8b61e86eb27e625f79c
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
7 years agoFix remote acl bugs 99/54399/9
Slava Radune [Thu, 20 Apr 2017 10:48:32 +0000 (13:48 +0300)]
Fix remote acl bugs

1. Merging metadatas of lPort and aclId.
2. Handling reg6Match for ingress
3. Fixing dupplicate AclInterfaces in AclDataUtil
4. Adding all ips to remote acl filter table, not only those with remote acl rules
5. Fixing the flows instalation logic for the case of port in more than one SG.
6. Fixing handling of SG that uses itself as remote SG.

Change-Id: I64b0e294317e0ac1a3444192a92f8058f2604f1d
Signed-off-by: Slava Radune <slava.radune@hpe.com>
7 years agoNetvirt: Qos Alert patch5 66/54566/15
Arun Sharma [Sun, 9 Apr 2017 14:28:05 +0000 (19:58 +0530)]
Netvirt: Qos Alert patch5

*** patch #5 - Port direct statistics polling  ***

Added support of  retrieval of port statistics data using OpenflowPlugin
direct-statistics RPC and log the alert message if packet drop ratio is
greater than the configured threshold value.

Spec Review Link:
https://git.opendaylight.org/gerrit/50689

Change-Id: I0a708ccd7eeb10c3d71fd8c08d5a2efeacdd3e25
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoBUG 8284 - Unmatched packets get dropped by Classifier 97/55897/2
Brady Johnson [Mon, 24 Apr 2017 11:58:22 +0000 (13:58 +0200)]
BUG 8284 - Unmatched packets get dropped by Classifier

- Packets that enter the Netvirt classifier that dont get
  matched are dropped.
- These packets should instead be resubmit back to the
  Ingress Dispatcher table.
- The solution is to add a lower priority MatchAny flow
  to the INGRESS_SFC_CLASSIFIER_ACL_TABLE table that
  resubmits back to the Ingress Dispatcher.
- Adding UT for the newly created flow.

Change-Id: I2d8b598a1146aa72a2c64c9b12835a7612e16c11
Signed-off-by: Brady Johnson <brady.allen.johnson@ericsson.com>