netvirt.git
7 years agoChanges for supporting "opendaylight-vni-ranges" pool 71/52171/12
cgowdru [Wed, 22 Feb 2017 12:17:34 +0000 (17:47 +0530)]
Changes for supporting "opendaylight-vni-ranges" pool

Description:

1) Re-defined VPN_POOL range to 100000-130000
2) Adding Util API's for creating and deleting VNI Pool.
3) NeutronVpn APIs exposed to retreive 'opendaylight-vni-ranges' and
'enforce-openstack-semantics'

Change-Id: I61d518aa694416aca7b47b266c0f2c56edf350cf
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agofix for mac movement issue 02/50602/15
Periyasamy Palanisamy [Wed, 18 Jan 2017 07:31:34 +0000 (13:01 +0530)]
fix for mac movement issue

* updating only elan-interface-forwarding-entries when mac is learned
from vlan provider port which is already learned on VM port.
* updating MACs in elan ds and dpn when MAC is actually moved from VM port
to another VM port.
* handling MAC learning from VLAN provider port if it is a newly learned
mac

Change-Id: I4ff9d79463f0f238c5a8b345438514b93ed4bb17
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoExport ACL flow programming logic 34/52934/3
Tali [Tue, 7 Mar 2017 10:34:50 +0000 (12:34 +0200)]
Export ACL flow programming logic

Change-Id: Ia7ef604bb8a763eeb520c8459e23b9979d126160
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoEthernet VPN (EVPN_RT5) Enhancement to Non-NAPT to NAPT 63/52163/20
karthikeyan [Wed, 22 Feb 2017 10:33:45 +0000 (16:03 +0530)]
Ethernet VPN (EVPN_RT5) Enhancement to Non-NAPT to NAPT

This review (1st Review) is part of EVPN_RT5 support in NAT feature.

Changes are made in the NAT code for accomplishing the below

Intra DC Communication:
=========================
For Non-NAPT to NAPT Traffic, Tunnel id will be setting with
Router lPortTag which will be carved out per router if it is part of
L3VpnOverVxlan else tunnel-id will be setting with existing router-id.

Change-Id: Idc5e8b1956311541ae7bae255d023c5f3543f9a3
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoNetvirt: Neutron Qos DSCP Marking support 72/52372/11
Poovizhi P [Tue, 28 Feb 2017 13:47:03 +0000 (19:17 +0530)]
Netvirt: Neutron Qos DSCP Marking support

Adds Neutron QoS DSCP support to Neutronvpn.
A new table 90 created for QOS DSCP in Genius.

Supports:
- add, update, remove of qos dscp marking rule assigned to Neutron
port/network

Description:
- When a DSCP rule is created in the Qos Policy which is bound to the
  port, OF rule(table 90) to set tos filed in the IP with the DSCP vaule
  is configured. Qos service is bound to the table 17.

- During the removal of policy from port, unbinding qos service, and
  removal of flow is donw

  Testing procedure:
  1. Create neutron network,subnet and instance.
  2. Create neutron qos policy and DSCP rules.
  3. Associate policy to the port/network
  4. Update the DSCP rule.
  5. Disassociate the policy from port/netwok

  Result:
  - corresponding ovsdb port tos attributes are configured
  appropriately.
  - traffic flows with the DSCP value configured in the port.

Change-Id: I06d0d89c7144dcc27f01320c8ed63bfe6afebf27
Signed-off-by: Poovizhi P <poovizhi.p@ericsson.com>
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoYang changes for DHCP Server dynamic allocation 07/52507/9
David Goldberg [Wed, 1 Mar 2017 15:36:33 +0000 (17:36 +0200)]
Yang changes for DHCP Server dynamic allocation

This change includes the yang changes needed to implement spec [1]

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

Change-Id: Ia331db0d5f2bf4e7fbe318debab4aa4a83ee1d56
Signed-off-by: David Goldberg <gdavid@hpe.com>
7 years agoBug 7876 : After router association to L3vpn, one of the VM ip is not 76/52476/16
ehvkand [Wed, 1 Mar 2017 07:29:14 +0000 (12:59 +0530)]
Bug 7876 : After router association to L3vpn, one of the VM ip is not
removed from router interface to BGPVPN

When a VPN associated to router is deleted and a same VPN is associated
back to same router , there is race condition , where interface is not
found in VpnInterfaceOp and remove event is being ignored. Hence interface
remains in router VPN.

It is also seen that , one of interface from same subnet is swapped and
others are not. Its due to race condition that exist in NeutronVpnManager
where create and update can race with each other. Currently create uses
DJC , where as update doesn't .

Change-Id: I354c3ce93f965580c735f1153a043e2514d68af7
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
7 years agoModel for nat service config parameter. 41/52641/4
Aswin Suryanarayanan [Thu, 2 Mar 2017 12:05:09 +0000 (17:35 +0530)]
Model for nat service config parameter.

The "nat-mode" will be used to switch between controller based and
conntrack based nat.

Change-Id: Ia616c2b1567a0d9e751fe9853274bc3c2a9e8365
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoAdd tcp-md5-signature-option to ebgp's neighbors 37/52637/3
Jose-Santos Pulido Garcia [Thu, 2 Mar 2017 11:32:41 +0000 (12:32 +0100)]
Add tcp-md5-signature-option to ebgp's neighbors

An optional leaf has been added to ``neighbors`` list in ebgp module in
order to configure QBGP with the shared secret required by TCP MD5
Signature Option [RFC2385].

See spec qbgp-tcp-md5-signature-option [0]

[0] https://git.opendaylight.org/gerrit/#/c/52218 Ibdb0675c0045754e575b73deba2dfebde4b56bc5

Change-Id: I8f712840bd5b0b6d1647b972375c5e3080f1eadc
Signed-off-by: Jose-Santos Pulido Garcia <jose.santos.pulido.garcia@ericsson.com>
7 years agoBug 7885 - CSIT Sporadic failures - 75/52875/2
Aswin Suryanarayanan [Mon, 6 Mar 2017 11:43:44 +0000 (17:13 +0530)]
Bug 7885 - CSIT Sporadic failures -
tempest.scenario.test_port_security_macspoofing_port

On port-security update  bind/ubind service is now called.

Change-Id: I46cfae8b13a3f67647bfc501b3e55faf8c827a37
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoBug 7878: provider interface MACs are installed on remote DPNs 84/52484/6
Koby Aizer [Wed, 1 Mar 2017 10:02:16 +0000 (12:02 +0200)]
Bug 7878: provider interface MACs are installed on remote DPNs

MACs learnt on provider interfaces must not be installed on remote
DPNs.

This change includes 2 fixes:

1. handleInternalTunnelState event initiated installation on remote
DMAC flows for all elans in the remote DPN, without verifying that
this elan is not Flat/Vlan.

2. Protection on setupRemoteDmacFlow to make sure no other code flows
will install remote DMAC flows on MACs learnt on provider interfaces.

Change-Id: I5ae288ed525dc1ae2f5be1bec5215f2e8f01f8c5
Signed-off-by: Koby Aizer <koby.aizer@hpe.com>
7 years agoNetvirt: Yang changes for vlan provider enhancement feature 18/52618/6
Ravindra Thakur [Thu, 2 Mar 2017 08:25:01 +0000 (13:55 +0530)]
Netvirt: Yang changes for vlan provider enhancement feature

Modified the elan:elan-instances container with attribute to indicate
whether the network has an external router attached to it.

Spec review link for the enhancement:
https://git.opendaylight.org/gerrit/#/c/52201/

Change-Id: I0f6fe5779a052804dc9549f97d958038fdb383bb
Signed-off-by: Ravindra Thakur <ravindra.nath.thakur@ericsson.com>
7 years agoBug 7881 - Traffic drops when not matching UL SC starting 89/52489/6
Marcos López Samaniego [Tue, 28 Feb 2017 16:23:51 +0000 (17:23 +0100)]
Bug 7881 - Traffic drops when not matching UL SC starting
in a VPNPseudoPort

When programming the L3VPN to SCF pipeline, a new flow is needed in
table 17

Change-Id: I31cf7817eb38b47e5c665c4f0362d0baa9554af4
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
7 years agoSpec for NetVirt QoS alert 89/50689/20
Arun Sharma [Thu, 19 Jan 2017 20:28:17 +0000 (01:58 +0530)]
Spec for NetVirt QoS alert

This spec file describes the changes to be made
in the Carbon release to support QoS Alert.

Change-Id: I6306a9f0f7a28ad524b39fb2b84a01ace71b5f14
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoNetvirt:Yang changes for-Neutron Qos Alert support 33/50533/10
Arun Sharma [Tue, 17 Jan 2017 09:13:13 +0000 (14:43 +0530)]
Netvirt:Yang changes for-Neutron Qos Alert support

***** Commiting only yang as first patch ****
Spec Review Link:
https://git.opendaylight.org/gerrit/50689

Adds support to monitor the drop counts and log alert message when
Qos rate limit rule if applied.

Supports:
- Configuration to start or stop monitoring the port statistics
- Configuration of rx drop count threshold value in %
- Configuration of location and name of log file
- Configuration of polling interval

Description:
- As a result of Qos rate limit rule, ingress packets may get dropped
  by the switch.
- If monitoring is enabled, port statistics are queried after polling interval
  and alert message is logged in a log file if packet drop % is more
  than configured threshold value.
- Threshold value is specified in % of drop counts
- All configurations are applied at controller level.
- Default or initial configuration available in netvirt-qosalert-config.xml
    * qos-alert-enabled - false
    * qos-drop-packet-threshold - 5%
    * qos-alert-log-file - qosalert/qos-alert.log
    * qos-alert-poll-interval - 2 minutes

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

Testing procedure:
1. Create neutron network,subnet and instance.
2. Create neutron qos policy.
3. Associate policy to the port/network
4. Send traffic more than the limit specified in policy.
5. Configure the threshold value and enable port statistics monitoring
6. Check for alert log messages in the file if packet drop % cross the
   threshold value.

Result:
- Port statistics polling is started when qos-alert-enabled is set to true
- Alerts messages are logged when packet drop % cross the threshold value

Change-Id: I5b2675a2c036835d4ac2e5bd585c3da8e9b268e8
Signed-off-by: Arun Sharma <arun.e.sharma@ericsson.com>
7 years agoBGP Manager changes to support ECMP. 74/52274/5
Kency Kurian [Thu, 23 Feb 2017 14:45:57 +0000 (20:15 +0530)]
BGP Manager changes to support ECMP.

This review ensures that when 2 DC-GW advertises routes for the same
destination prefix, the vrfEntry DS are populated correctly with both the
route paths.

The stale fib entry flat map now includes nextHop also in its key, to
align with the new vrfEntry model.

Change-Id: I26526561a74228925030f0086109dbe182b876c9
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoYang changes for federation plugin 01/52401/7
Tali [Wed, 22 Feb 2017 16:31:19 +0000 (18:31 +0200)]
Yang changes for federation plugin

Change-Id: Ic852e5343d843b7c7536c2e450f40e5cb75542bb
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoBug 7787 - missing flows in T21 53/51853/10
Olga Schukin [Mon, 27 Feb 2017 14:19:22 +0000 (16:19 +0200)]
Bug 7787 - missing flows in T21

when VPN interface up before tunnel info is available in operational DS,
it causes missing flows in T21

Fix: always handle the add event inside TunnelInterfaceStateListener -
 even for a tunnel which state is Down

Change-Id: I41c3efbeeb5740788f58ced57a698a73ef70b466
Signed-off-by: Olga Schukin <olga.schukin@hpe.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoyang change to make remove deprecated leaf-elements 06/52706/6
cgowdru [Fri, 3 Mar 2017 01:57:25 +0000 (07:27 +0530)]
yang change to make remove deprecated leaf-elements

Description : It's been observed that in the review
https://git.opendaylight.org/gerrit/#/c/49093/, the whole
neutronvpn-config container been made as deprecated instead
of required leaf element.

1) Changes done to remove 'use-transport-zone' and 'use-of-tunnels'
config from neutronvpn-config(as no usage found in neutronvpn).
2) Removed the default values for these config defined in
netvirt-neutronvpn-config.xml
3) Defined default value for VNI Spec specific configs.
4) Re-defined the neutronvpnConfig and passing its reference to
neutronvpnManager in neutronvpn.xml(as it will be  refered
accessing VNI Spec specific configs)

Change-Id: Ied09b7080814ae9a014e827c464e5d07b23de4c7
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoUse the right service name when binding service 57/52857/3
Faseela K [Mon, 6 Mar 2017 06:20:26 +0000 (11:50 +0530)]
Use the right service name when binding service

Making ELAN and ACL bind services with the right service name

Change-Id: I022a0ff4aaff4772870413890ce8a9665af5a309
Signed-off-by: Faseela K <faseela.k@ericsson.com>
7 years agoYang changes for IPv6 Neighbor Discovery Support 61/52661/4
Sridhar Gaddam [Thu, 2 Mar 2017 14:42:46 +0000 (20:12 +0530)]
Yang changes for IPv6 Neighbor Discovery Support

This patchset includes the yang changes required to implement
IPv6 North-South support for FLAT/VLAN provider network spec [1].

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

Change-Id: I34a4034b2482d91243b15a21cba83c353a3b516c
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoYang changes to support tunnel updates in ECMP 14/52614/3
Kency Kurian [Thu, 2 Mar 2017 07:35:36 +0000 (13:05 +0530)]
Yang changes to support tunnel updates in ECMP

New YANG model to update load balancing next hop group buckets according
to VxLAN/GRE tunnel status.

Subsequent review will make use of these containers.

Change-Id: If75300674fbfe1ae27b6c6a43302caa5917b9daf
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBUG:7896 OptimisticLockFailedException 73/52473/9
epgoraj [Wed, 1 Mar 2017 06:54:03 +0000 (12:24 +0530)]
BUG:7896 OptimisticLockFailedException

Change-Id: I977feeb0226613b1a93cfb8092d4afa88926979e
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoBug 7875: NPE due to subnetmap create DjC trailing update 25/52625/6
Abhinav Gupta [Thu, 2 Mar 2017 10:01:37 +0000 (15:31 +0530)]
Bug 7875: NPE due to subnetmap create DjC trailing update

Removed troubling DjC.
Also have made sure that such errors are caught at NeutronVPN
level itself by separating out subnetmap create and update.
Update will not create subnetmap node with partial info, instead will
return if subnetmap node is absent.

Change-Id: I252d0164f123052d7090968325e214289b29daab
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agocorrecting the spec for providing ECMP over BGP VPN 73/51673/20
eswanit [Fri, 10 Feb 2017 08:48:11 +0000 (14:18 +0530)]
correcting the spec for providing ECMP over BGP VPN

RST generated doc had some warnings. Warnings are fixed and some
foramtting issues are resolved.

Change-Id: I22cef70c9af3165c16f2cd960639da12297297f4
Signed-off-by: eswanit <swati.udhavrao.niture@ericsson.com>
7 years agoBug 7714: VPN Operational Interfaces not getting removed at all. 55/52655/5
Vivekanandan Narasimhan [Thu, 2 Mar 2017 13:33:40 +0000 (19:03 +0530)]
Bug 7714: VPN Operational Interfaces not getting removed at all.

This can be a potential problem for temporary CSIT failures
that happens on VPNService suite.

The VPNInterface is not getting removed at all permanently from
VpnInterface Op DS. When VM interface has secondary adj like extra route
or invisible ip , the order in which cleanupvpninterface worker DJC is
called not guaranteed.

The regression was caused by review:

https://git.opendaylight.org/gerrit/#/c/51224/
VPNInterfaces not deleted from Oper DS

Change-Id: I1b2a1d139030f707cec93eb5a5e6a690e010e336
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
7 years agoFixing checkstyle error in FibManager 20/52720/1
Kency Kurian [Fri, 3 Mar 2017 06:43:32 +0000 (12:13 +0530)]
Fixing checkstyle error in FibManager

Change-Id: I6ab2a88236661f1866f9873167f0cf3e9168f304
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBug 7387 : Netvirt: qos policy applied on the network, not applied on 09/49409/11
A Vamsikrishna [Thu, 15 Dec 2016 08:56:18 +0000 (14:26 +0530)]
Bug 7387 : Netvirt: qos policy applied on the network, not applied on
newly created ports of same network

Use case:

1.Network is created and updated with QoS policy.
2.Port is created on the same network.
3.Now this port is intended to have the QoS policy as the network has.

RCA:

The scenario of  application of network qos policy to the newly created
port  was missing

Code fix:

1.Created a new class called QosInterfaceStateChangeListener.java which
listens on the interface state oper events
2.Handled the scenario of  application of network qos policy to the newly
created port in the add( ) of QosInterfaceStateChangeListener.java

Application of network qos policy to the newly created port condition was
missing. Fixed it by adding the same in NeutronPortChangeListener.java

Change-Id: I3211a698e9a27cfefe090fbbf2ab120f8626de76
Signed-off-by: A Vamsikrishna <a.vamsikrishna@ericsson.com>
7 years agoBug 7856: Reverse SNAT flows order to minimize race possibility 80/52380/3
Alon Kochba [Tue, 28 Feb 2017 15:52:43 +0000 (17:52 +0200)]
Bug 7856: Reverse SNAT flows order to minimize race possibility

Change-Id: I145905151348d2fa2670756f24e17c16d6239885
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoBug 7418 Run local group creation as async task with key equal to subsequent tasks. 68/51968/5
Konsta Pozdeev [Thu, 16 Feb 2017 11:46:11 +0000 (13:46 +0200)]
Bug 7418 Run local group creation as async task with key equal to subsequent tasks.

Change-Id: I515b3b874b50f8e53a931e1a3ee3a2e30f877f8e
Signed-off-by: Konsta Pozdeev <konsta.pozdeev@hpe.com>
7 years agoSpec for Remote ACLs Indirection Table 62/51462/20
Alon Kochba [Mon, 6 Feb 2017 12:00:09 +0000 (14:00 +0200)]
Spec for Remote ACLs Indirection Table

Change-Id: I8ea8fbbc2ce67f637dba40fe52b0361f67e4f6ab
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoAdded netvirt countrs 64/50164/22
Guy Regev [Tue, 10 Jan 2017 10:02:31 +0000 (12:02 +0200)]
Added netvirt countrs

Change-Id: I809989d5dab91b54489fa16e244ce9cd888c7141
Signed-off-by: Guy Regev <guy.regev@hpe.com>
7 years agoFix NPE from VpnDpnToTransportZoneListener 23/52523/2
Tali [Wed, 1 Mar 2017 16:58:29 +0000 (18:58 +0200)]
Fix NPE from VpnDpnToTransportZoneListener

Change-Id: If4badb0de9733694d9397220e239a1fa9a4cd918
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoBug 7445: Improve the performance on bulk create. 25/51625/4
karthikeyen.p [Wed, 8 Feb 2017 04:30:16 +0000 (10:00 +0530)]
Bug 7445: Improve the performance on bulk create.

    * Reduced read calls when SG associated with the VMs.
    * We have used cache mechanism to store neutron port information
      that was read from DS.

Change-Id: I3b243ddf3656e48392593c6fc1086713d1fd1af3
Signed-off-by: karthikeyen.p <karthikeyen.p@hcl.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoFix for GwMac flow deletion during interface delete 91/52291/2
eceghkl [Mon, 27 Feb 2017 11:07:37 +0000 (16:37 +0530)]
Fix for GwMac flow deletion during interface delete

* Without the fix, the mac address used for deleting the flow
  was obtained after quering interface state again. This
  returned null resulting in gwmac table not getting deleted.
* With the fix, interface state is not queried again. Interface
     state passed during interface state deletion notification is
  used to obtain mac address.

Change-Id: I1c091dc8edb722ab58fdf05f6cba1729a583209e
Signed-off-by: eceghkl <manu.b@ericsson.com>
7 years agovni-based-l2-l3-nat spec updated with openstack-semantics config 35/52335/3
Abhinav Gupta [Tue, 28 Feb 2017 07:11:12 +0000 (12:41 +0530)]
vni-based-l2-l3-nat spec updated with openstack-semantics config

A few formatting changes done alongwith introducing the config.

Change-Id: I4f39a5a7371aa0e6a15c0f176252e8ff9dc83b5a
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoYang changes for vni-l2-l3-nat 01/52301/5
Abhinav Gupta [Mon, 27 Feb 2017 11:54:17 +0000 (17:24 +0530)]
Yang changes for vni-l2-l3-nat

Changes are as per approved in the spec at:
https://git.opendaylight.org/gerrit/#/c/52241

Change-Id: I937202aa8388c5f23f8a85e84463c5d52f359535
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoBug 7281: Support auto-TZ for non-neutron northbounds. 93/49093/31
Yakir Dorani [Mon, 5 Dec 2016 15:32:28 +0000 (17:32 +0200)]
Bug 7281: Support auto-TZ for non-neutron northbounds.

Support non-neutron networks for creation of TZ.
Listen to Elan and Vpn changes instead of NeutronPorts.
This will be used for unimgr.

Change-Id: I24ae67888352b9a5f941f74abf4db019e3cf439e
Signed-off-by: Yakir Dorani <yakir.dorani@hpe.com>
7 years agoBug 7831 : BgpRouter receives unnecessary events 87/52287/8
eupakir [Mon, 27 Feb 2017 10:44:11 +0000 (16:14 +0530)]
Bug 7831 : BgpRouter receives unnecessary events

Suppressed unwanted advertisement of routes, that were being advertised due to a
breakage in the VPN Engine.
When BGP Client is not configured, route/vrf advertisement used to fail
and throw lot of exception. If BGP Client is not connected, the
process of dispatching routes/vrf to DC-GW via BGP Client should not happen
at all.

Change-Id: I25b6abe7a67efb4621745933f869f7034eb9cd51
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
7 years agoExternal Routers yang changes - external ips will contain also subnetId 47/51947/10
yair [Thu, 16 Feb 2017 11:05:25 +0000 (13:05 +0200)]
External Routers yang changes - external ips will contain also subnetId

This is part of the hairpinning tasks.
This include only changes in the yang model for external routers.
Changes the external-ips to be a list of ip and subnet.

Change-Id: I368d46b62d1b37aebcae5a99e02df15940e8a5e1
Signed-off-by: yair <yair.zinger@hpe.com>
7 years agocorrected the population of BGP Total Prefixes counter 97/52297/6
eamakol [Mon, 27 Feb 2017 11:27:24 +0000 (16:57 +0530)]
corrected the population of BGP Total Prefixes counter

Change-Id: I679b9a4b50ce2204188d0bbe7a5d4c48aafd3aee
Signed-off-by: eamakol <amaranadh.kolla@ericsson.com>
7 years agoAclServiceTestBase use assertFlowsInAnyOrder from genius 67/50467/3
Michael Vorburger [Sat, 14 Jan 2017 03:16:02 +0000 (04:16 +0100)]
AclServiceTestBase use assertFlowsInAnyOrder from genius

Change-Id: I62850b47bd47ba569c385ee138f129d053e57ff7
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoDisable split horizon for Trunk subports 85/52285/2
Vishal Thapar [Mon, 27 Feb 2017 10:21:14 +0000 (15:51 +0530)]
Disable split horizon for Trunk subports

Pkts going from one subport to another on same VM will have the same
in/out ports. Default OVS splithorizon will not allow this behavior and
needs to be disabled for all subports on a trunk.

Change-Id: Id459fc0231e39f6a78b508daac3065fbb1b4cf28
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoBug 7861: No ping response from FIP on 1st router when adding 2nd FIP 22/52322/3
karthikeyan [Mon, 27 Feb 2017 16:07:03 +0000 (21:37 +0530)]
Bug 7861: No ping response from FIP on 1st router when adding 2nd FIP

Problem Description:
====================
Table Miss Entry for SNAT/DNAT in FIB Table (table=21->26 flow) is
overriting when multiple router is present instead of creating new entry
for each VPN Instance.

Each router is associated with unique external network and each external
network is associated with unique internet BGP VPN Instance.

Example topology:
router-1/external-network-1/bgp-vpn-1
router-2/external-network-2/bgp-vpn-2

Both router-1 and router-2 are presented on single compute node. In this
scenario router-2 ping traffic only is working as expected. Since table 21
doesn't have the table miss entry for router-1 with bgp-vpn-1 instance.

Solution:
=========

In ExternalNetworkListener while creating table miss entry for SNAT/DNAT
in table 21, added "vpn-id" attribute also in creating flow reference as
same as implemented in the class
SNATDefaultRouteProgrammer.buildDefNATFlowEntity(). After this code change
in table 21 miss entry for SNAT/DNAT is created for each bgp-vpn instance.

Change-Id: Iac909e628f1a4134526e6df0b640149c8d45cd20
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
7 years agovni-l2-l3-nat spec update with yang models to supply VNI to VPNEngine 41/52241/9
Abhinav Gupta [Fri, 24 Feb 2017 10:19:02 +0000 (15:49 +0530)]
vni-l2-l3-nat spec update with yang models to supply VNI to VPNEngine

Change-Id: I90c4ffe16a9523dca7ec9322cebd4f2a552235b0
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
7 years agoQos implemented as separate service. All qos related codes from neutronvpn 98/51898/20
Poovizhi P [Wed, 15 Feb 2017 10:23:54 +0000 (15:53 +0530)]
Qos implemented as separate service. All qos related codes from neutronvpn
are segregated and a separate qosservice module is formed.

Change-Id: Ie9fc4755f5270eeb3f654bf5d0676ae302c9f3e4
Signed-off-by: Poovizhi P <poovizhi.p@ericsson.com>
7 years agoBUG 7727 : Local and Connected routes do not get imported 37/51337/7
eupakir [Sat, 25 Feb 2017 14:08:38 +0000 (19:38 +0530)]
BUG 7727 : Local and Connected routes do not get imported

Route Origin for Subnet Routes and Local VM routes were changed from
STATIC to CONNECTED and LOCAL, respectively. Hence, the import/export RT
functionality for VPNs was broken.

Change-Id: I04d8326fcb0bddf77934a63c1eb459f23564323b
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
7 years agoBUG:7824 ModifiedNodeDoesNotExistException 80/52280/3
epgoraj [Mon, 27 Feb 2017 07:35:15 +0000 (13:05 +0530)]
BUG:7824 ModifiedNodeDoesNotExistException

Change-Id: I32b64af56b5b7c5ed8d2af9ed3ca5b47b68a153f
Signed-off-by: epgoraj <p.govinda.rajulu@ericsson.com>
7 years agoUpdated the conntrack based SNAT spec 67/51967/8
Aswin Suryanarayanan [Thu, 16 Feb 2017 14:40:51 +0000 (20:10 +0530)]
Updated the conntrack based SNAT spec

1)Added a new HA logic when conntrack mode is selected.
2)Added info about the config parameter to switch NAT mode
3)Added info about a new CLI for displaying the NAPT switch selected for
each router.

Change-Id: Idd8388276adf8e4bb7974aaa869d04b3a91e09de
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
7 years agoAdded to VrfEntry a new attribute of parentVpnRdName 11/52111/11
yair [Tue, 21 Feb 2017 13:24:42 +0000 (15:24 +0200)]
Added to VrfEntry a new attribute of parentVpnRdName

This is part of the Hairpinning tasks also use in l3vpnOverVxlnEvpn tasks.
For floating IPs the route distinguisher will be subnetId
and the DPN information only exists for external network VPNs.
So, if will have information in the parentVpnName it will use it
to get the DPNs.

Change-Id: Ibf92c5a95e427c137c961a70c96acc1b6400b593
Signed-off-by: yair <yair.zinger@hpe.com>
7 years agoCleanup errors for networks of unsupported type 72/52072/6
Alon Kochba [Mon, 20 Feb 2017 13:21:20 +0000 (15:21 +0200)]
Cleanup errors for networks of unsupported type

Reword and lower debug level of network configurations
for networks without a provider extension or with an
unsupported type.

Change-Id: I3b58a79b2fb72fe2c56328f79e0962e366a299ff
Signed-off-by: Alon Kochba <alonko@hpe.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7824 - ModifiedNodeDoesNotExistException 97/52197/3
Periyasamy Palanisamy [Thu, 23 Feb 2017 06:53:47 +0000 (12:23 +0530)]
Bug 7824 - ModifiedNodeDoesNotExistException

* added potential fix to guard against above exception
while handling elan interface remove/interface state remove
handling

Change-Id: Iad5145eafd9398718171880825f1684189405398
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoBug 7725: AAP with prefix 0.0.0.0/0 not supported in ACL 46/51346/8
Somashekar Byrappa [Thu, 2 Feb 2017 14:21:30 +0000 (19:51 +0530)]
Bug 7725:  AAP with prefix 0.0.0.0/0 not supported in ACL

+ Added a check. In case of 0.0.0.0/0 prefix, program flow with just "ip"
match skipping the ip-prefix (0.0.0.0/0).
+ This method is called to configure flows both in table 40 and 251.

+ Handled below issue:
  - Create VM1 & VM2 with AAP 0.0.0.0/0 and default SG.
  - Create VM3 with default SG without AAP.
  - Delete VM2. Observe that +new+trk flow configured for VM2's 0.0.0.0/0 AAP
    prefix gets deleted (related to remote SG) in 252 table even though VM1 still
    exists.
    Flow: cookie=0x6900000, duration=4737.343s, table=252, n_packets=0,
    n_bytes=0,
    priority=61010,ct_state=+new+trk,ip,metadata=0x10000000000/0x1fffff0000000000
    actions=ct(commit,zone=5000),resubmit(,220)

+ Earlier flow priority was generated/used based on SG rule UUID. The
  above case was not handled with this approach.  So, with this fix now
  every ct_state=+new+trk flow will have a unique flow priority within table.
  Flow priorities are generated based on flow ID.

+ For every switch, two ID pools (one each for ingress and egress) are
  maintained which increases the availability of flow priorities.

Change-Id: I646312e1324267913cbb2865a1a8164b23b40372
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoBug 7815: Using DJC for VpnManager Interface-state Listeners 94/51994/11
ehvkand [Fri, 17 Feb 2017 09:43:22 +0000 (15:13 +0530)]
Bug 7815: Using DJC for VpnManager Interface-state Listeners

With mdsalutil is having a THREAD_POOL_SIZE=1, all the add(), update(),
and remove() methods handling the application logic were on the same
thread. This in turn was delaying all the interface-state listeners.

Changes are done to make use of DataJobCordinator so that all the
VpnManager application logic get executed by a seperate thread so
that the main thread is freed-up for other listener execution.

Change-Id: I926e0742fdc7955450c9423ce5026f9177ce21bb
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
7 years agoBug 7852 : FIB not updated with DC-GW routes 66/52266/4
Vyshakh Krishnan CH [Sat, 25 Feb 2017 07:31:22 +0000 (13:01 +0530)]
Bug 7852 : FIB not updated with DC-GW routes

Problem :
FIB not updated with DC-GW routes and DC-GW not updated with VM routes.

Analysis and Fix:
Recent commit has broken the way RT is handled in NeutronVPN.
Fixing the same.

Change-Id: I3678b491bdc743b24e3c4abcb9744accc640031b
Signed-off-by: Vyshakh Krishnan CH <vyshakh.krishnan.c.h@ericsson.com>
7 years agoBug 7842: ACL: Arp flows missing in ACL tables for overlapping MAC address 06/52206/3
Shashidhar Raja [Thu, 23 Feb 2017 10:48:01 +0000 (16:18 +0530)]
Bug 7842: ACL: Arp flows missing in ACL tables for overlapping MAC address

Updated to use lport tag with flowname for Egress ACL ARP flows

Change-Id: I9e733b70cb968c16f57253a975b9aa6d74c1d085
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
7 years agoBug 7839: ACL: ACL flows are not deleted from source host during VM 75/52175/5
Shashidhar Raja [Wed, 22 Feb 2017 13:29:52 +0000 (18:59 +0530)]
Bug 7839: ACL: ACL flows are not deleted from source host during VM
migration

    - In the current code, ACL flows are being added in Interface state
      listener and deleted from Interface config listener. As during
      migration, only interface state listener gets triggered, Config
      Interface and Interface state listeners are re-formatted slightly as
      explained below to fix this issue and also to support delete VM
      without any problems.
      Details of changes are as below:
      (a) bind/unbind moved to Config interface listener
      (b) All other ACL flows programming (add/delete) now being done from
      Interface state listener

    - Also, bind/unbind service code is updated to use
      DataStoreJobCoordinator to avoid ConflictingModificationExceptions

Change-Id: I4cf0c0d58eecbceafbed740f0201e128c196f555
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
7 years agoreleasing dcn thread once tunnel interface state dcn delivered 81/51781/10
Periyasamy Palanisamy [Mon, 13 Feb 2017 10:39:38 +0000 (16:09 +0530)]
releasing dcn thread once tunnel interface state dcn delivered

* This change is about releasing dataTreeChangeHandlerExecutor's thread
immediately after DCN is delivered to service module. This allows to
improve DataTreeChangeListener notification time when there are multiple
listerners listening to same data tree path.
* For ELAN, DJC is used to run tunnel interface state DCN related tasks in async
way using ElanUtils#getElanInterfaceJobKey

Change-Id: If3128e623ac3eae81fbec17320bf54d425b7f6f5
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoCreating default FIB router flows for external subnets. 05/51305/20
yair [Wed, 1 Feb 2017 15:25:27 +0000 (17:25 +0200)]
Creating default FIB router flows for external subnets.

This is part of the Hairpinning tasks.
It will install on the FIB table (21) default flow for every external subnet.
The flow match is based on the VPN ID for the external subnet.

Change-Id: I870696a3cbe186bb43a6997b6c8c6a577b2c008d
Signed-off-by: yair <yair.zinger@hpe.com>
7 years agoBug 7843 - Missing buckets in ELAN BC group installation during OVS restart 11/52211/2
Tali [Thu, 23 Feb 2017 13:35:25 +0000 (15:35 +0200)]
Bug 7843 - Missing buckets in ELAN BC group installation during OVS restart

L2 pipeline can contain malformed flows/groups if OVS restart occurs in parallel
due to oper DS temp delete during restart
Possible solution would be to check for config DS inventory node instead of oper DS
so flows would be restored with correct content after the OVS is up again

Change-Id: I5aee6c2af85bca1beb98dab52bfa9181975192b1
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoSupport for multiple route paths 10/49010/29
Kency Kurian [Wed, 8 Feb 2017 06:03:02 +0000 (11:33 +0530)]
Support for multiple route paths

- Modified odl-fib.yang to support multiple route-paths for the same
  destination prefix.
- Added a FibHelper which provides util methods to construct VrfEntry.

Change-Id: I7bcd3b77ac452476b4190286c1f3e8815a1b8819
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBug 7773: Objects should be compared with "equals()". 95/51995/2
Hideyuki Tai [Thu, 26 Jan 2017 01:56:17 +0000 (01:56 +0000)]
Bug 7773: Objects should be compared with "equals()".

Additional changes:
 * Removed unnecessary repetitive calls.

Change-Id: I607ce073ee9ec4289c80dccd96a4b5222e4d9772
Signed-off-by: Hideyuki Tai <Hideyuki.Tai@necam.com>
Signed-off-by: arthi.b <arthi.b@hcl.com>
7 years agoUse OFtunnels when configuring automatic tunnels 08/48708/4
Vishal Thapar [Fri, 25 Nov 2016 16:36:22 +0000 (22:06 +0530)]
Use OFtunnels when configuring automatic tunnels

Refer: https://git.opendaylight.org/gerrit/48694

Change-Id: I12b38946d779e267729ae6e6d1713529a86060cb
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoCheckstyle: fix new ParenPad violations 60/52160/2
Lorand Jakab [Wed, 22 Feb 2017 10:23:23 +0000 (12:23 +0200)]
Checkstyle: fix new ParenPad violations

Enforcing no space(s) after a left parenthesis and before a right
parenthesis is a proposed change [0] which can only be merged when all
violations are fixed in projects enforcing checkstyle. This patch fixes
new violations since [1] was merged.

[0] https://git.opendaylight.org/gerrit/#/c/51316/
[1] https://git.opendaylight.org/gerrit/#/c/51704/

Change-Id: Id1bcbad79a5db7ffd8ce1eafae020f2895034c68
Signed-off-by: Lorand Jakab <lojakab@cisco.com>
7 years agoBug 7786 Delete and re add of access port handling 95/51795/5
Akash [Mon, 13 Feb 2017 15:39:44 +0000 (21:09 +0530)]
Bug 7786 Delete and re add of access port handling

After deleting access port in l2gw device and upon readding , vlan
bindings were missing .
Fix is to resync upon such case from config topology.

Change-Id: I993616f6ea90312af2ae5830e444c1918f8b48bb
Signed-off-by: Akash <a.k.sahu@ericsson.com>
7 years agoBug 7772 - Service Chaining is not being applied to VMs in the L3VPN 80/51680/7
Miguel Perez [Mon, 16 Jan 2017 17:30:16 +0000 (18:30 +0100)]
Bug 7772 - Service Chaining is not being applied to VMs in the L3VPN

 + Problem: Ping from outside DC-GW to a VM located inside DC-GW
   works well in the Uplink, that is, packets going from outside
   DC-GW towards the VM are hijacked by SCF Pipeline and delivered
   to VM. However, when VM responds (Downlink), the packets are sent
   to DC-GW right away via L3VPN pipeline. Service Chaining is not
   applied for the return path.

 + Solution: try to divert to SCF Pipeline the packets that come from
   the VM too, not only the packets coming from the external Tunnel
   port.

 + How: by adding a listener on VpnInterface on CONFIG DS.
   When a VpnInterface is added, the listener checks if its VPN is
   involved in a ServiceChain or not. If so, the interface is bound
   to SCF too.

 + This commit is requiered in stable/boron SR3. The Gerrit change URL:
   https://git.opendaylight.org/gerrit/51681

Change-Id: Id1051bc8ec180589583a76524c0b2d456ba7b85a
Signed-off-by: Marcos López Samaniego <marcos.lopez.samaniego@ericsson.com>
7 years agoAdd ability to punt LLDP packets to controller 21/50521/9
Yakir Dorani [Mon, 16 Jan 2017 18:19:05 +0000 (20:19 +0200)]
Add ability to punt LLDP packets to controller

Change-Id: Ib6bdd0377e055def3ab7c18f45ef2bf0905b9eb3
Signed-off-by: Yakir Dorani <yakir.dorani@hpe.com>
7 years agoCleanup ivpnLink unused code + small modifications 81/49881/9
Miguel Perez [Fri, 30 Dec 2016 18:59:06 +0000 (19:59 +0100)]
Cleanup ivpnLink unused code + small modifications

 + This is the 1st change to cleanup/refactor InterVpnLink code

 + 3 new utility methods in InterVpnLinkDataComposite
 + add.getName() replaced by IvpnLinkName in InterVpnLinkListener

Change-Id: Icf7e29d9f77f53cc3d06620f60e8fab7efd464da
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoAdding debug statements to track caching of Operational Vpn Instances 18/52118/3
eupakir [Tue, 21 Feb 2017 15:35:21 +0000 (21:05 +0530)]
Adding debug statements to track caching of Operational Vpn Instances

Change-Id: I0bb17dec5714e8f68085bf1b70e2b2fa1f2f16ae
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
7 years agoAdd Trunks support 76/50676/14
Vishal Thapar [Mon, 16 Jan 2017 15:55:29 +0000 (21:25 +0530)]
Add Trunks support

This adds hooks to bring Neutron Trunk configuration into netvirt.
Genius/IFM already has required parameters to support this.

Change-Id: Ic087c0b9a7d1c27d880533331164ae3af0a1fabb
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
7 years agoFixed NodeConnectedHandlerTest with AbstractConcurrentDataBrokerTest 90/51490/4
Michael Vorburger [Mon, 6 Feb 2017 23:56:15 +0000 (00:56 +0100)]
Fixed NodeConnectedHandlerTest with AbstractConcurrentDataBrokerTest

use new AbstractConcurrentDataBrokerTest instead of @deprecated
AbstractDataBrokerTest, and manage the impacts this had in
NodeConnectedHandlerTest (which was a bit of a mess; e.g. we typically
shouldn't mix a Mockito mocked transaction with a real one... and we
need to wait for DataBroker submit() to process via a get() before
asserting something)

Bug: 7538
Change-Id: I15ed9908b03d56bd84c4f637fc83fc62328f6f11
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
7 years agoBug 7780 : NAT RPC's for getting SNAT/DNAT translation information. 71/51771/13
cgowdru [Mon, 13 Feb 2017 08:07:38 +0000 (13:37 +0530)]
Bug 7780 : NAT RPC's for getting SNAT/DNAT translation information.

Description : With the Current DS structure, it's is bit difficult to
identify information about what is the current DNAT/SNAT configuration
done fo the given router-uuid/vpn-uuid.

It would be good if we have a RPC's which can provide a information as
below.

input- router-uuid/vpn-uuid

SNAT output - router-name, internal-ip/port, external-ip/port,protocol
DNAT output - router-name,internal-ip,floating-ip

Change-Id: I00b6576d2a752b53e94ad28c611a06794c65456c
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoFix several NPEs showing up in CSIT 65/51765/5
Alon Kochba [Sun, 12 Feb 2017 16:29:05 +0000 (18:29 +0200)]
Fix several NPEs showing up in CSIT

1. ElanUtils - an ELAN instance can have no segments
2. TEPChangeListener - TEP could be missing in interfaces-state
3. VpnInterfaceManager - gateway IP/MAC could be missing when creating
ARP responder flows.
4. BgpConfigurationManager - NextHop in list could be null
5. TransportZoneNoticationUtil - not all interfaces have a neutron port

Change-Id: Ibbf6e5834cd01389e29e36736073927cdd3dbb1a
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoAdding missing <name> to poms 23/52023/3
Jamo Luhrsen [Sat, 18 Feb 2017 02:05:17 +0000 (18:05 -0800)]
Adding missing <name> to poms

looking at the output of a build, it seems we missed a few of these. I think this
might catch the rest of them.

Change-Id: I6311c42f71f1a63bf61a4215a8325b5929c04ce0
Signed-off-by: Jamo Luhrsen <jluhrsen@redhat.com>
7 years agoBug 7392: L2 Forwarding Table=110 Flows Missing 53/51653/2
hari.pr [Fri, 3 Feb 2017 18:07:56 +0000 (23:37 +0530)]
Bug 7392: L2 Forwarding Table=110 Flows Missing

 * Problem:  While creation of very first subnet or Vm in CSIT environment,
              respective 110 flow is missing in openstack nodes.
 * Solution: Installed missing table#110 flows as part of Vxlan interface request.

Change-Id: Ie7eb35b50aaaafa79fd8ed0f0893ab37156f431e
Signed-off-by: hari.pr <hari.pr@hcl.com>
(cherry picked from commit afdb2934eeea67006631cd313c6581772ed4230d)

7 years agoFix priority in IntervpnLink flows installed in LFIB 06/51906/3
Miguel Perez [Wed, 15 Feb 2017 14:08:55 +0000 (15:08 +0100)]
Fix priority in IntervpnLink flows installed in LFIB

 + InterVpnLink flows installed in LFIB must have higher priority than
   regular ones (which is typically 1 or 10)

Change-Id: Ifb6a6e8d91f83b65ffda356cd16ad878a1ae11ee
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoSpec template cleanup 15/52015/2
Sam Hague [Fri, 17 Feb 2017 21:35:11 +0000 (16:35 -0500)]
Spec template cleanup

Change-Id: I330e46f82deea26bd24a73ca2d08a337b0d7fc12
Signed-off-by: Sam Hague <shague@redhat.com>
7 years agoEVPN spec changes to address few extra use-cases for NAT 77/51377/8
karthikeyan [Fri, 3 Feb 2017 06:54:21 +0000 (12:24 +0530)]
EVPN spec changes to address few extra use-cases for NAT

Updated NAT Section for following Use Cases to Support EVPN_RT5
1) DNAT to DNAT Traffic (Intra DC)
2) SNAT to DNAT Traffic (Intra DC)
3) Non-NAPT to NAPT Forward and Reverse Traffic

Change-Id: I6d88f4e2f6df465475f806429b35bf9480366701
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
7 years agoBug: 7483 Implement IPv6 component tests in ACLService 44/50044/12
Janki [Thu, 2 Feb 2017 14:53:48 +0000 (20:23 +0530)]
Bug: 7483 Implement IPv6 component tests in ACLService

This is based on and inspired by the similar IPv4 tests

Change-Id: I2a5416992d178c8bfd99c5822005462f0536e44f
Signed-off-by: Janki <jchhatba@redhat.com>
7 years agoFix potential NPEs in ELAN tunnel handling 55/51955/5
Alon Kochba [Wed, 15 Feb 2017 19:16:03 +0000 (21:16 +0200)]
Fix potential NPEs in ELAN tunnel handling

We encountered null ElanInfos in CSIT after deletion
of all the interfaces via REST in BFD Monitoring suite,
this should not prevent other elanDpns from processing.

Change-Id: I465b62cb5133e6aea5326eb4219fc82a70eab70e
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoadding lport tag for temporary mac learning 94/51894/5
Periyasamy Palanisamy [Wed, 15 Feb 2017 09:48:15 +0000 (15:18 +0530)]
adding lport tag for temporary mac learning

* loading lport tag into NxmNxReg1 while binding elan service
to the interface.
* adding NxmNxReg1 match for table 49 using relearn action

Change-Id: I2914c08157bf33fdb033b7656f1692b6be3ea690
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
7 years agoImprove log messages. 16/51916/2
Hideyuki Tai [Wed, 25 Jan 2017 21:43:00 +0000 (21:43 +0000)]
Improve log messages.

* Correct wrong messages.
* Change the log level of some messages into the appropriate level.

Change-Id: I3e238611ebc9c9fc42aa800caa2a44621880c9aa
Signed-off-by: Hideyuki Tai <Hideyuki.Tai@necam.com>
7 years agoBUG 7717 Fix OOM when defining large number of networks 56/51356/3
Vinh Nguyen [Wed, 1 Feb 2017 01:06:50 +0000 (17:06 -0800)]
BUG 7717 Fix OOM when defining large number of networks

Use NodeId instead of Node as key for the cache
ProviderNetworkManagerImpl::nodeToProviderMapping
The size bridge Node object is huge when there are
large number of network/subnets on the bridge.

Change-Id: I6956318477dfa524ce20680d12bba3c7818540ec
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
7 years agoUpdate netvirt guide - correct DB DROP procedure 04/51904/2
Alon Kochba [Wed, 15 Feb 2017 13:28:30 +0000 (15:28 +0200)]
Update netvirt guide - correct DB DROP procedure

Change-Id: I99d19c118d05ade5a9c77f6a98f75abb1b8c7ddc
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoBug 7790 - Attempting to install RNH on local DPN for FIB with custom instructions 46/51846/11
Tali [Thu, 16 Feb 2017 13:27:24 +0000 (15:27 +0200)]
Bug 7790 - Attempting to install RNH on local DPN for FIB with custom instructions

On VxLAN network there is no severe side affect other than trashing the log
For VLAN/flat networks this is a major issue since VrfEntryListener is not able to
find any local DPN hence all FIB entries are considered RNH and the actual local
FIB entry created using FibRpcService.createFibEntry() will be overridden by the
faulty RNH on the local DPN.

Change-Id: If703d71a6d92c1fb5bff2d0c5fec28f3519649c9
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoECMP: L3VPN Yang changes and extra route rd selection. 67/48967/23
eceghkl [Mon, 5 Dec 2016 07:17:34 +0000 (12:47 +0530)]
ECMP: L3VPN Yang changes and extra route rd selection.

* This change contains selection of rd for an extra route from
  the list of configred rds. A new rd is allocated for an extra
  route if the new extra route is behind a different CSS.
* The selected rd for an extra route is advertised to quagga
* Vpn-to-extraroute container is modifed to include vrf-id
* New yang container is added for storing rds used for an
  extra-route

Change-Id: I4d427d8308d047a9667cd4247e53742df473b53a
Signed-off-by: eceghkl <manu.b@ericsson.com>
7 years agoFix BFD regression 17/51917/5
Tali [Wed, 15 Feb 2017 16:26:15 +0000 (18:26 +0200)]
Fix BFD regression

When tunnel and elan-interface goes up in parallel, there is a race in writing
DMAC flows. The result could be DMAC flow with drop action for the affected interface

Change-Id: I080e222025d59f0b482cd6c07563c168646afc76
Signed-off-by: Tali <tali.ben-meir@hpe.com>
7 years agoUse Objects equals instead of == where necessary 80/51480/6
Alon Kochba [Mon, 6 Feb 2017 19:24:16 +0000 (21:24 +0200)]
Use Objects equals instead of == where necessary

This might actually fix bugs and change behavior,
there were places where Java objects were compared
using == instead of equals(), this patch corrects
those cases.

Change-Id: I6996e168966fb660d62cca3e4c81635a6c1f6b06
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoBug 7775: Using DJC for NAT Interface-state Listeners 83/51783/12
cgowdru [Mon, 13 Feb 2017 12:34:47 +0000 (18:04 +0530)]
Bug 7775: Using DJC for NAT Interface-state Listeners

Description : With mdsalutil is having a THREAD_POOL_SIZE=1, all the
add(), update(), and remove() methods handling the application logic were
on the same thread. This in turn was delaying all the interface-state
listeners.

Changes are done to make use of DataJobCordinator so that all the NAT
application logic get executed by a seperate thread so that the main
thread is freed-up for other listener execution.

Change-Id: I0c7f3f70715b01a2dcb54d251a36a2f9ff21357e
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoSpec for VNI based L2 switching, L3 forwarding and NATing 40/48640/30
Abhinav Gupta [Wed, 23 Nov 2016 13:27:24 +0000 (18:57 +0530)]
Spec for VNI based L2 switching, L3 forwarding and NATing

1. Added specification document for VNI based L2 switching, L3
forwarding and NATing
2. Linked spec to specs/index

This spec is a first step in the direction of enforcing datapath
semantics that uses tenant supplied VNI values on VXLAN Type networks
created by tenants in Openstack Neutron.

Earlier the datapath semantics for VXLAN traffic from tenants were
realized by using either LportTags (or) MPLS Labels being carried as
VNI values, even though the networks created by the tenant were of
type VXLAN.

Please note that implementation of Spec DOES NOT COMPLETELY remove
usage of LPortTags (or) ElanTags (or) MPLS Labels.

It retains the use of MPLSLabels for realizing an L3 BGPVPN
(regardless of type of networks put into such BGPVPN that may include
networks of type VXLAN) both on the wire and within the OVS Datapaths.

It also retains the use of LPortTags within the OVS Datapath of a
hypervisor, for streaming traffic to the right virtual endpoint on that
hypervisor (note: not on the wire).

It retains the use of ELANTags within the OVS Datapath to handle
local/remote L2 broadcasts (note: not on the wire)

On the cloud data network wire, all the VXLAN traffic for basic L2
Switching within a VXLAN network and L3 Forwarding across VXLAN-type
networks using Routers will use tenant supplied VNI values for such
VXLAN networks.

Complete removal of use of LPortTags and MPLS Labels for VXLAN-type
networks has large scale design/pipeline implications and thus need to
be attempted as future initiatives via respective specs.

Change-Id: I708243b75fb83ce94064b7214af2709ee82914f4
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
7 years agoCreating vpn-instance for external subnets for flat/vlan. 36/50136/22
yair [Mon, 9 Jan 2017 15:47:04 +0000 (17:47 +0200)]
Creating vpn-instance for external subnets for flat/vlan.

This is the first task for the Hairpinning issue.
Added new model to odl-nat for external-subnets.
For each subnet of flat/vlan external network will create vpn-instance.

Change-Id: Ie3cb34f0746c9a06d0b2fda009fb69da3522c8e6
Signed-off-by: yair <yair.zinger@hpe.com>
7 years agoBUG 7729: Remove redundant tunnel drop flow in table 110 52/51652/2
Vinh Nguyen [Sat, 4 Feb 2017 01:30:47 +0000 (17:30 -0800)]
BUG 7729: Remove redundant tunnel drop flow in table 110

- Remove methods: L2ForwardingService::programLocalTableMiss
  and L2ForwardingService::programTunnelMiss. Both methods
  generate the same tunnel drop flows in table 110.
  The drop flows for individual tunnels are not needed
  since there is a default drop flow in the same table.

- Remove the method L2ForwardingService::programVlanFloodOut
  which is not used.

Change-Id: I0fb826094b6c03e58fb89c95600e7b84bc2c774f
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
(cherry picked from commit a3a91c1c01d294a8e36662284c4cc82a2749c2e1)

7 years agoSpec to support IPv6 North-South support for Flat/VLAN Provider Network 09/49909/5
Sridhar Gaddam [Sun, 1 Jan 2017 17:01:40 +0000 (22:31 +0530)]
Spec to support IPv6 North-South support for Flat/VLAN Provider Network

Change-Id: Idd84aad01afa7d599e69ca3663f1d49a865a27b6
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
7 years agoFix regression in auto tunnels - listen on Interface 77/51777/5
Alon Kochba [Mon, 13 Feb 2017 09:55:01 +0000 (11:55 +0200)]
Fix regression in auto tunnels - listen on Interface

This patch https://git.opendaylight.org/gerrit/49908
introduced a behavior change in how parentRefs are used.
Refactor the auto-tunnel behavior to listen on Interface
from config instead of Interface State, to take into
account any change in parentRefs and in any order.

Change-Id: Iee459634fab97eba5f76dbe7ae70caa00a48f3b4
Signed-off-by: Alon Kochba <alonko@hpe.com>
7 years agoCheckstyle: fix new ParenPad violations 04/51704/1
Lorand Jakab [Fri, 10 Feb 2017 23:39:51 +0000 (01:39 +0200)]
Checkstyle: fix new ParenPad violations

Enforcing no space(s) after a left parenthesis and before a right
parenthesis is a proposed change [0] which can only be merged when all
violations are fixed in projects enforcing checkstyle. This patch fixes
new violations since [1] was merged.

[0] https://git.opendaylight.org/gerrit/#/c/51316/
[1] https://git.opendaylight.org/gerrit/#/c/51414/

Change-Id: Id68cac28db2911f552fd9951a027bbcfd99faf76
Signed-off-by: Lorand Jakab <lojakab@cisco.com>
7 years agoEnhancement to support list of rds for l3vpn 07/51507/8
eceghkl [Tue, 7 Feb 2017 10:05:57 +0000 (15:35 +0530)]
Enhancement to support list of rds for l3vpn

* This review contains enhancement to support list of rds while
    creating l3vpn instances.
* Primary rd is obtained from the list of rds which will be used
  as route distinguisher for primary adjacencies.

Change-Id: Ib8d0dd41712c734b5868c5dc87ee0e54e547ff34
Signed-off-by: eceghkl <manu.b@ericsson.com>
7 years agoFixing checkstyle changes in BgpManager. 19/51619/2
Kency Kurian [Thu, 9 Feb 2017 12:02:00 +0000 (17:32 +0530)]
Fixing checkstyle changes in BgpManager.

After the checkstyle fixes, if stale path is not passed NPE is thrown.
Fixed that by adding a variable which defaults to 0 if stale path is not
provided.

Change-Id: Ia84ec51913dcb2465b9fa408b1a37be08ea33b3c
Signed-off-by: Kency Kurian <kency.kurian@ericsson.com>
7 years agoBUG7748: Subnet-op-data empty after cluster reboot 74/51474/7
Suraj Ranjan [Mon, 6 Feb 2017 16:06:37 +0000 (21:36 +0530)]
BUG7748: Subnet-op-data empty after cluster reboot

SubnetAddToVpn notification is fired from add() of SubnetMapListener
also instead of firing from update() only.The reason for doing this is
after reboot this event comes in subnetmap add().

Change-Id: I766e3836cbe8b0eafbf5fbb52791ca96eb6ccfa9
Signed-off-by: Suraj Ranjan <suraj.ranjan@ericsson.com>
7 years agoBug 7680: Fix Nexthop when advertising to DCGW 73/51573/3
Miguel Perez [Wed, 8 Feb 2017 17:24:13 +0000 (18:24 +0100)]
Bug 7680: Fix Nexthop when advertising to DCGW

 + for static routes whose nexthop is a VM, the leaked route to the other
   VPN was being advertised to DCGW with the DPN where VM is located as
   the nexthop of the route. However, the nexthop must be the DPN where
   the InterVpnLink has been placed.

Change-Id: I1097e9c992c66053f499807fd411334a7113b509
Signed-off-by: Miguel Perez <francisco.miguel.perez@ericsson.com>
7 years agoFixed Netvirt Build Breakage 66/51566/1
eupakir [Wed, 8 Feb 2017 16:16:31 +0000 (21:46 +0530)]
Fixed Netvirt Build Breakage

Change-Id: I7b9523a849b61071acb1c712d50e4fa2f8d6180e
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>