bgpcep.git
7 years agoBug 5061: Support remote port number configuration 82/44082/1
Milos Fabian [Wed, 27 Jul 2016 16:00:13 +0000 (18:00 +0200)]
Bug 5061: Support remote port number configuration

Augment OpenConfig Neighbor transport configuraton to
support remote port configuration (default 179).

Change-Id: I0ab2f34aa5faa522d343a168e7c164696b31177f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 75396514e3d8c9088c76f0d3aaa5a537424f83a0)

7 years agoBug 5061 - introduce peer restarting 69/44069/2
Milos Fabian [Tue, 26 Jul 2016 14:04:52 +0000 (16:04 +0200)]
Bug 5061 - introduce peer restarting

When RIB configuration is modified all related
peer are supposed to be restart with modified RIB.
Introduce such function for BgpPeer/App, preserve
current Neighbor configuration internally.

Change-Id: I608a564a956f255bdb89603e736dd78cd60fef62
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 19a3a5142a0f34d1eba29250c9787e69f3d2cbbf)

7 years agoBug 6370 - unable to start BMP feature 58/44058/2
Milos Fabian [Wed, 10 Aug 2016 13:31:09 +0000 (15:31 +0200)]
Bug 6370 - unable to start BMP feature

Add missing dependency features, which are required
to start BMP successfully.

Change-Id: Id89d21ea9e4d72f59959eee5fcd224644047acc6
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit eda848636f70d8d0c07cd70a5d9e70064c551595)

7 years agoBug 6365 - Bad handling of unknown AFI/SAFI in Open Message 46/44046/1
Milos Fabian [Tue, 9 Aug 2016 11:37:31 +0000 (13:37 +0200)]
Bug 6365 - Bad handling of unknown AFI/SAFI in Open Message

Skip unsupported AFI/SAFI when parsing Open Message, instead of throwing
exception, which resulted in dopped connection.

Change-Id: Ib3a47ca9722ecf0f0d6eacd84b7fab168c5860a1
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit ba17fbc05002d6980ab41476696b134d46871ac3)

7 years agoBug 5061: Integrate ApplicationPeerModule with blueprint 08/44008/2
Milos Fabian [Thu, 21 Jul 2016 10:56:10 +0000 (12:56 +0200)]
Bug 5061: Integrate ApplicationPeerModule with blueprint

Instead of instance creation in ApplicationPeerModule,
write BGP OpenConfig configuration into the config DS and BGP deployer takes care of instance creation.
Add mapping function ApplicationPeerModule -> OpenConfig Neighbor to BGPOpenConfigMappingService.

Change-Id: I393ddf7d1f6efad78abb4f64188fcdd49bc3f6b9
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit e449830aba426de955bd2da5a487b9149486be3a)

7 years agoBug 6331 - BMP does not show routes 14/44014/1
Milos Fabian [Mon, 8 Aug 2016 12:07:25 +0000 (14:07 +0200)]
Bug 6331 - BMP does not show routes

Wapped BGP messages are not serialized, because the
BGP codecs activator is not initiated.
Make sure the activator is started before BMP activator
is initiated.

Change-Id: I29d7893342d89d53470da07a2986e8bb9ed700c1
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 3dae73b0df2a6d08ba2f10483afc438972300937)

7 years agoBug 5061: Introduce BGP Application Peer deployer 83/43983/1
Milos Fabian [Thu, 21 Jul 2016 10:37:33 +0000 (12:37 +0200)]
Bug 5061: Introduce BGP Application Peer deployer

Enhance BGP deployer service to handle Application Peer
instance creation. Like BGP Peer, Application Peer
configuration is represented as OpenConfig's Neighbor,
however the Application peer is distinguished by specific
peer group.

Change-Id: I078f76a3815c4bd10171b9c97a545479bfd7eca0
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit bfe85df5277c15670ef57694778d7f9245782820)

7 years agoBUG-6411: Fix RibImpl global comparison 52/43952/2
Claudio D. Gasparini [Mon, 15 Aug 2016 08:40:39 +0000 (10:40 +0200)]
BUG-6411: Fix RibImpl global comparison

Fix RibImpl global comparison by compare Ipv4
by comparing value instead of both obj

Change-Id: I922219085662baa7f99f77d1e4797c5d84f640b1
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit b9c848cd7bc1270ed64c36006d27c22a04e4ec54)

7 years agoBUG-6111 Fix the AbstractTopologyBuilder to reset PingPongTransactionChain 28/43928/2
Kevin Wang [Fri, 22 Jul 2016 00:42:26 +0000 (17:42 -0700)]
BUG-6111 Fix the AbstractTopologyBuilder to reset PingPongTransactionChain

When an exception was thrown when applying route change
in OnDataTreeChanged(), the transaction chain should be reset
so that the following new transactions can be create

Change-Id: Ie88f3cb0570cfdaf5dc3436cea8447b121c553e1
Signed-off-by: Kevin Wang <kevixw@gmail.com>
(cherry picked from commit 88b320be8c08b36c074a6a11e12dd5102228ad27)

7 years agoBUG-5685: Register BGP Rib to Cluster Singleton Service Provider 27/43927/1
Claudio D. Gasparini [Wed, 10 Aug 2016 12:48:32 +0000 (14:48 +0200)]
BUG-5685: Register BGP Rib to Cluster Singleton Service Provider

Register BGP Rib to Cluster Singleton Service Provider
When running on clustering, it was need it to have different
configuration per instance to avoid conflicts.
Now all instance can have same configuration, since cluster
service provider take cares of make active the one
is running on Leader Cluster. If Leader goes down,
 the instance from the new Leader will become active.

Change-Id: Id93897fd8b5460dc6d445bd7fa1c5faa8729a8b5
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 633e172d65022130580315dccd2845b46c2d7762)

7 years agoBug 6337: Add ByteBuf->String utility 59/43859/1
Milos Fabian [Tue, 9 Aug 2016 09:44:36 +0000 (11:44 +0200)]
Bug 6337: Add ByteBuf->String utility

New utility function convers input ByteBuf to byte array,
encode it with Base64 and convert to string.
The function can be useful when converting NLRI-based
route key to string representation.

Change-Id: I2adbb98da0d0841a2c4eafed841c457e05367c2e
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit cef0f088696ca9053f0a6b9b41db2818bd138d4a)

7 years agoBug 5061: Integrate BGPPeerModule with blueprint 09/43709/1
Milos Fabian [Thu, 21 Jul 2016 09:02:11 +0000 (11:02 +0200)]
Bug 5061: Integrate BGPPeerModule with blueprint

Instead of creating a new BGPPeer instance via CSS module,
transform peer configuration to OpenConfig Neighbor DTO
and write to config DS. BGP deployer will take care of the instance creation.
Add more mapping utility funtions to OpenConfig mapping service.
Also we want to register peer instance as a runtime MX bean to collect statistics,
hence register Peer as a OSGi service and retreive it when module's createInstance
is invoked to register bean there.

Change-Id: Ic5b1ed556f3af000a96cde94aaa669fed2b64f74
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit 912da09d223db30bc7db7e10b92f474ed82b87ea)

7 years agoBug 5061: Bgp Peer deployer 79/43679/1
Milos Fabian [Wed, 20 Jul 2016 14:20:39 +0000 (16:20 +0200)]
Bug 5061: Bgp Peer deployer

Extends BGP deployer to be capable to
instantiate BGPPeer instances based on
current OpenConfig Neighbor configurations.

Change-Id: If27e4551b7fc6db4c3c5dcf07028e5563d61e0dd
Signed-off-by: Milos Fabian <milfabia@cisco.com>
(cherry picked from commit ed7e0631a243ea218090215280be9b1829c1dfa5)

7 years agoBUG-6317 Do not withdraw route when best path has changed 65/43665/2
Claudio D. Gasparini [Mon, 8 Aug 2016 06:17:52 +0000 (08:17 +0200)]
BUG-6317 Do not withdraw route when best path has changed

Route should be withdrawn only if there is not other
best path which can be announced intead.

Change-Id: Ibc2ae0bf2d05a90e06eae34a12f8e6b98f64fb7c
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 94f7f6bee9c8467cdd240aac4702c3e49f5306e1)

7 years agoConvert yangtools binding APIs to mdsal bindings 89/43589/3
Robert Varga [Wed, 8 Jun 2016 16:44:01 +0000 (18:44 +0200)]
Convert yangtools binding APIs to mdsal bindings

This reflects the package move needed after the split-off.

Change-Id: Ia412d9023ebc3f1563bb074a4ff2c429428373f6
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 1b408f00e13a2af6d41cc413d8c714b0de72620d)

7 years agoBUG-6378: Fix PeerExportGroup 21/43621/1
Claudio D. Gasparini [Wed, 10 Aug 2016 08:53:51 +0000 (10:53 +0200)]
BUG-6378: Fix PeerExportGroup

PeerExportGroup contains all peers.
Fix By contain only peers correspending to same
PeerExportGroup Role

Change-Id: If3f795add270d598b74a62ee8e9597441bcea858
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit cfd681578182da51e732a2c0bf90ffd09507e687)

7 years agoBug-5878: PCErr not generated by configuring 32-pcep.xml file to not advertise statef... 02/43602/1
Ajay [Tue, 2 Aug 2016 01:06:13 +0000 (01:06 +0000)]
Bug-5878: PCErr not generated by configuring 32-pcep.xml file to not advertise stateful capability
- throw exception and abort PCEP Topology Provider instantiation if stateful capability is not configured but stateful plugin is

Change-Id: Ie066cc4661f07877e133ce666819b242aa783c85
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 8d3f35e52ff92ff2848290a5dc271a8cb106c06f)

7 years agoBUG-6237: Topology freezes or slows down due to java.util.concurrent.TimeoutException 90/43590/2
Claudio D. Gasparini [Thu, 4 Aug 2016 10:49:01 +0000 (12:49 +0200)]
BUG-6237: Topology freezes or slows down due to java.util.concurrent.TimeoutException

High consupmtion of memory is observed caused by high LoadingCache
per OffsetMap instance.
Fix by use
-singleton empty constructor for LoadCache.
-use null instead of optional

Change-Id: Ia6edc0fc732ac286af4f3ef83d02add572fb5bf1
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
(cherry picked from commit 42e4512e5e9e3d125636332c1b3e0d8cb5f1e3e0)

7 years agoBug-6342: Link-state topology takes long time to get updated 84/43584/2
Ajay [Mon, 8 Aug 2016 18:25:42 +0000 (18:25 +0000)]
Bug-6342: Link-state topology takes long time to get updated
- When large number of prefixes are present for node, repeated re-writing of node causes slowness
- Avoid writing the entire node again when prefix or termination-point information for that node changes
- Just write the modified information in such cases

Change-Id: Id38b6b37f3171677798aaccd6f37376f355dbc66
Signed-off-by: Ajay <ajayl.bro@gmail.com>
(cherry picked from commit 581925f39fcceb4a2927bacef40f25f1f0eae36c)

7 years agoBUG-5619 Enable maven parallel build for bgpcep I 83/43583/1
Kevin Wang [Tue, 2 Aug 2016 23:08:37 +0000 (16:08 -0700)]
BUG-5619 Enable maven parallel build for bgpcep I

- This patch mainly change the unit test to use random
  IP address and port whenever initializing a client or
  server for testing

Change-Id: I101706aded57f435c80285728f4212cfe0b5669b
Signed-off-by: Kevin Wang <kevixw@gmail.com>
(cherry picked from commit 83c5547e5e0b16b587bf1fc5daeedffdf77e6726)

7 years agoUpdate .gitreview for stable/boron 51/43351/1
Thanh Ha [Mon, 8 Aug 2016 21:39:28 +0000 (17:39 -0400)]
Update .gitreview for stable/boron

Change-Id: I832ca21352c19d2bcfa2e0029d3c6feccc39d843
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
7 years agoBUG-6330: Fix race condition when reinstalling App Peer 23/43223/1
Claudio D. Gasparini [Fri, 5 Aug 2016 10:12:21 +0000 (12:12 +0200)]
BUG-6330: Fix race condition when reinstalling App Peer

Race condition produced fater reinstall Application Peer
with some existant routes.
Fix by register EffectiveRibIn listener after creation of
AdjribIn.

Change-Id: I39bf41e938cc6994f4e70bb4a912e6f9ce061e20
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBug 5061: Integrate RIBImplModule with blueprint 95/41895/12
Milos Fabian [Fri, 15 Jul 2016 08:15:37 +0000 (10:15 +0200)]
Bug 5061: Integrate RIBImplModule with blueprint

Instead of instance creation in RIBImplModule, write
BGP OpenConfig configuration into the config DS and
BGP deployer takes care of instance creation.
Add mapping function RIBImplModule -> OpenConfig BGP to
BGPOpenConfigMappingService.

Change-Id: I34533ca6e4593244948cd109c95f105d4c171bdb
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoUpdate Python code and tox 93/42493/6
Vratko Polak [Tue, 26 Jul 2016 07:29:04 +0000 (09:29 +0200)]
Update Python code and tox

+ Fix "E731 do not assign a lambda expression, use a def".
+ Do not prescribe explicit pep8 version anymore.
+ Prevent flake8 from examining contents of .tox directory

Change-Id: I78d061892f125683edfaf21ac330e7785d496ec7
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
7 years agoBug 6278: Switch to use odlparent's karaf-parent 24/42724/2
Ryan Goulding [Thu, 28 Jul 2016 16:02:13 +0000 (12:02 -0400)]
Bug 6278: Switch to use odlparent's karaf-parent

Change-Id: Ib2ce61091a2401b681fc8593e335a3d34cbeec73
Signed-off-by: Ryan Goulding <ryandgoulding@gmail.com>
7 years agoFix Remove AdjRibOut Listener 31/43031/2
Claudio [Wed, 3 Aug 2016 10:17:47 +0000 (12:17 +0200)]
Fix Remove AdjRibOut Listener

When removving AdjRibOur from Map container,
is done by removing the obj and not by key.
Fix by remove obj from map using corresponding key.

Change-Id: I916f4cfb82f6b168559bbe4d7d91a55ed6d2e660
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBug 5061: Introduce BGP deployer 63/42063/10
Milos Fabian [Tue, 19 Jul 2016 12:55:09 +0000 (14:55 +0200)]
Bug 5061: Introduce BGP deployer

The goal is to migrate RIBImpl configuration from
CSS to BP. The RIBs instances creation needs to be dynamic
and simple - application's compoments wiring should be hidden
from user facing configuration.

The BGP OpenConfig API is an entry point for user's BGP
configuration. The deployer listens to the changes
in a configuration subtree and based on it deploys (starts/restarts/stops) RIB instances.
Instances are registred as OSGi services, where each service is identified by service property.
The service can be used for internal (BGPPeer, ApplicationPeer) and external wiring (topology provider).

Change-Id: I68752ead5b7468c0aada603f52b18e574d4e2cb0
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoRemove Parameterized input for PCCDispatcherImplTest 78/42978/1
Claudio [Tue, 2 Aug 2016 14:11:26 +0000 (16:11 +0200)]
Remove Parameterized input for PCCDispatcherImplTest

Remove Parameterized input for PCCDispatcherImplTest,
Whis is making the test to be runned 10o times.

Change-Id: Ifbe4bd85f096e28e343b1c0577e4a603575a5dc2
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBUG-6069: Fix IAE when POSTing an openconfig neighbor 99/42299/7
Claudio [Fri, 22 Jul 2016 10:31:16 +0000 (12:31 +0200)]
BUG-6069: Fix IAE when POSTing an openconfig neighbor

Try to insert a neighbor will cause an IAE, thrown by
ensureParentsByMerge method. Which force us to write the whole
three since its not able to create mandatory leaf.
As a workaround and for keep functionallity, we set "presence"
statement to config container.

Change-Id: I40ab0b5245bc975db0d56178f879f82e5c5af0dd
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoConvert PCEPDispatcher wiring to blueprint 54/41854/4
Tom Pantelis [Wed, 13 Jul 2016 00:41:41 +0000 (20:41 -0400)]
Convert PCEPDispatcher wiring to blueprint

The wiring was added to the pcep-impl.xml file.

Moved the max-unknown-messages and tls config to a new
pcep-dispatcher-config container in the pcep-app-config.yang. This
changed the package for the generated Tls class.

The md5 factpry wiring was ommitted b/c it is being removed in a another patch
anyway. The PCEPTopologyProviderModule did some fancy checking to see if md5 was
enabled. This checking was removed to avoid compilation error.

The PCEPDispatcherImplModule was deprecated but still remains for now
to provide the PCEPDispatcher instance created via blueprint to the
config system so it can be injected into other users. Once the other user(s)
are converted to blueprint then the config yang, Module classes can be removed.

The SimplePCEPExtensionProviderContextModule and yang were removed as
all users are now converted to blueprint. Same with
PCEPSessionProposalFactoryImplModule.

Change-Id: I8c5a12cedbafbe54f492d01f6d0a3c608f49508a
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoRemove trailing spaces in pcep-ietf-stateful.xml 91/42791/2
Tom Pantelis [Fri, 29 Jul 2016 15:11:08 +0000 (11:11 -0400)]
Remove trailing spaces in pcep-ietf-stateful.xml

Change-Id: I1e113bbce1bbec23c1c995cae2742cb141c2ff5c
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-6120: Revert Ignore test change 46/40946/16
Claudio [Wed, 13 Jul 2016 13:03:17 +0000 (15:03 +0200)]
BUG-6120: Revert Ignore test change

Revert ignore test change introded by bug-6120.
Improve some test, removing thread.sleep were possible.

Change-Id: I084a015db8d4b6be2b210f8c5d6298aaddc9c69a
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoRevert "BUG-5742: Race condition when creating Application Peer on clustering" 77/42877/2
Milos Fabian [Mon, 1 Aug 2016 06:38:39 +0000 (06:38 +0000)]
Revert "BUG-5742: Race condition when creating Application Peer on clustering"

This reverts commit 8e8148277cb1006a8ed0e7d25b443de049805238.

Change-Id: Ie1805c3eb1d84ea1f9759c60692348fda0afe19f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoConvert PCEP session capabilities to blueprint 53/41853/5
Tom Pantelis [Fri, 8 Jul 2016 12:05:27 +0000 (08:05 -0400)]
Convert PCEP session capabilities to blueprint

Added blueprint XML file, pcep-impl.xml, to the impl bundle that utilizes
the blueprint extension, "specific-reference-list" , to obtain the
specific list of PCEPCapability OSGi service instances.
The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.pcep.PCEPCapability
resources in the provider bundles which the "specific-reference-list"
extension scans so it knows which services to look for. Once all expected
services are obtained, the PCEPCapability instance List bean is created and
injected into the BasePCEPSessionProposalFactory. Also added a yang app
config module and container to retrieve the dead-timer and
keep-alive-timer settings for the BasePCEPSessionProposalFactory.

The 2 PCEPCapability implementations, one in segment-routing and the
other in ietf-stateful07, are now created via new blueprint XML files and
the corresponding config yang and associated Module class were removed.

The PCEPSessionProposalFactoryImplModule was deprecated but still
remains for now to provide the PCEPSessionProposalFactory instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang, Module classes can be removed.

Change-Id: I6e9aca62d3199abe844b9edc848f6bc3ee5a91fb
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBug-5536: When using clustering with replication, linkstate topology of non-leaders... 16/39816/5
Ajay [Fri, 3 Jun 2016 03:05:35 +0000 (03:05 +0000)]
Bug-5536: When using clustering with replication, linkstate topology of non-leaders is not available via restconf
- replaced instances of DataTreeChangeListener with ClusteredDataTreeChangeListener

Change-Id: Iccec8d32ba97dba2bf51165076c7b2d0747cd8b3
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug-6242: PCRpt received with bandwidth reoptimization object leads to loop causing OOM 34/42434/2
Ajay [Mon, 25 Jul 2016 04:37:50 +0000 (04:37 +0000)]
Bug-6242: PCRpt received with bandwidth reoptimization object leads to loop causing OOM
- added bandwidth reoptimization object to the list of possible objects in PCRpt message
- gracefully handle condition where unexpected object is present in received message
- updated unit-tests

Change-Id: Idfd2cf28b6b6385f67e6e81ea41a1904653c5ab5
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBug 5610: PCRpt message with vendor specific object throws exception 84/42584/3
Omair [Tue, 26 Jul 2016 16:10:12 +0000 (09:10 -0700)]
Bug 5610: PCRpt message with vendor specific object throws exception

Make sure Vendor Information Object registry is always
available. Extend Object registry to provide Vendor
Information registry services.

Fix already present in Beryllium. This ports the fix to master branch.

Change-Id: I8a47b54324bdbdefea6193628c947318f6ed65bb
Signed-off-by: Omair <of8826@att.com>
7 years agoUTIL Code Clean Up 63/42263/3
Claudio [Thu, 21 Jul 2016 21:12:23 +0000 (23:12 +0200)]
UTIL Code Clean Up

Fix sonar complains, naming convention, declare final
method/classes, etc..

Change-Id: Ice7cc8b054fa7200842da970d2d1c3eae2eac8e4
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoRSVP Code Clean Up 62/42262/3
Claudio [Thu, 21 Jul 2016 21:10:39 +0000 (23:10 +0200)]
RSVP Code Clean Up

Fix sonar complains, naming convention, declare final
method/classes, etc..

Change-Id: I90dadca882618108340d1b2d661357890871e042
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoBug 5061: Introduce BGP OpenConfig mapping service 62/42062/6
Milos Fabian [Tue, 19 Jul 2016 12:50:26 +0000 (14:50 +0200)]
Bug 5061: Introduce BGP OpenConfig mapping service

This mapping service is useful when mapping from
BGP OpenConfig confiuration to internal BGP structures
and vice versa.

Change-Id: Id29eb81f75f4f7f82760d0970214c01e8501afdb
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoKeep internal API contract between RIB and BGPPeer/ApplicationPeer 61/42061/6
Milos Fabian [Tue, 19 Jul 2016 10:47:16 +0000 (12:47 +0200)]
Keep internal API contract between RIB and BGPPeer/ApplicationPeer

Peers need ImportPolicyPeerTracker, where RIB is a sharing point.
Keep API contract between ribs and peers, make the ImportPolicyPeerTracker
getter part of the RIB interface, so there is no need to cast to specific
RIBImpl implementation to get ImportPolicyPeerTracker instance.

Change-Id: I1bfd75d7ad8ec7c59910ef3c488b5d4afd5afe5d
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG-5742: Race condition when creating Application Peer on clustering 86/42386/1
Claudio [Thu, 21 Jul 2016 13:14:13 +0000 (15:14 +0200)]
BUG-5742: Race condition when creating Application Peer on clustering

Race condition when creating Application Peer on
a 3 node clustering enviroment.
Fix by use a uninque transaction chain on App Peer.

Change-Id: If6d3fbcb3c4e1e29b24d4921d8f8a64e35f58bb9
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoLog exception which has caused the abort 92/42292/1
Robert Varga [Fri, 22 Jul 2016 08:49:43 +0000 (10:49 +0200)]
Log exception which has caused the abort

Change-Id: I7dbca7b394da06b3e94d8b8e8fc005aed4b6d701
Signed-off-by: Robert Varga <rovarga@cisco.com>
7 years agoFix test failures due to BindingToNormalizedNodeCodecFactory changes 65/40765/6
Tom Pantelis [Wed, 22 Jun 2016 22:20:12 +0000 (18:20 -0400)]
Fix test failures due to BindingToNormalizedNodeCodecFactory changes

Changes were made to BindingToNormalizedNodeCodecFactory by
https://git.opendaylight.org/gerrit/#/c/40743/  that require changes to
a few unit tests to make them work.

Change-Id: Ibf03ad20a95c1c9776643ea4347f4d5a4c83b615
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML wiring for the BmpDispatcher 71/41671/5
Tom Pantelis [Thu, 7 Jul 2016 01:20:27 +0000 (21:20 -0400)]
Add blueprint XML wiring for the BmpDispatcher

Added blueprint wiring for the BGPDispatcher. The BmpDispatcherImplModule
was deprecated but still remains for now to provide the BmpDispatcher
instance created via blueprint to the config system so it can be
injected into other users. Once the other user(s) are converted to
blueprint then the config yang and Module classes can be removed.

There was one complication. The BmpActivator protcol extension is in the
bmp-impl bundle and the service is consumed by the bmp-spi bundle.
The BmpExtensionConsumerContext is provided by the bmp-spi bundle and is
consumed by the bmp-impl bundle. This causes a circular service
dependency which causes a deadlock with blueprint. To avoid this I moved
the BmpActivator and related message and tlv classes (which are only used by
BmpActivator) to a new bundle, bmp-parser-ext. This bundle now provides
the BmpActivator extension provider to the bmp-spi bundle thereby
breaking the circular dependency.

Change-Id: Idbee9a7c2632d1e26c76314213389f83ff8ae5c1
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoMove IPv4/6 Unicast extension to bgp-inet 42/41842/9
Milos Fabian [Thu, 14 Jul 2016 14:38:04 +0000 (16:38 +0200)]
Move IPv4/6 Unicast extension to bgp-inet

Separates IPv4/6 Unicast multiprotocol extension
from core implementation modules (rib-impl, parser-impl).

Motivation:
Moving code wiring to blueprint caused that rib-spi's
RIBExtensionProviderActivator service is waiting for
all RIB extensions activators and rib-impl contains
such extension too.
On the other hand, rib-impl's RIBImpl depends on
rib-spi's RIBExtensionConsumerContext
service.
In a result cyclic dependency is created - neither blueprint
container is resolved.

Change-Id: Ie2eae4458382a67dd446b2260c70f7a542384b1f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBGP statistics CLI 79/36979/51
Icaro Camelo [Wed, 30 Mar 2016 22:41:54 +0000 (18:41 -0400)]
BGP statistics CLI
 - Visualize data from all BGP JMX objects

Change-Id: Ie1f7d2acead057f2123b4c98f37468bebe0a32f9
Signed-off-by: Icaro Camelo <icamelo@inocybe.com>
7 years agoConvert PCEP extensions to blueprint 12/41512/7
Tom Pantelis [Thu, 7 Jul 2016 09:10:22 +0000 (05:10 -0400)]
Convert PCEP extensions to blueprint

Added blueprint XML file, pcep-spi.xml, to the spi bundle that utilizes
the blueprint extension, "specific-reference-list" , to obtain the
specific list of PCEPExtensionProviderActivator OSGi service instances.
The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.pcep.spi.PCEPExtensionProviderActivator
resources in the provider bundles which the "specific-reference-list"
extension scan so it knows which services to look for. Once all expected
services are obtained, the PCEPExtensionProviderActivator instance List
bean is created and injected into the SimplePCEPExtensionProviderContextActivator
bean instance which calls start on each.

All 6 PCEPExtensionProviderActivator implementations, base-parser,
auto-bandwidth, segment-routing, and 3 in ietf-stateful07, now created via
new blueprint XML files and the corresponding config yang and associated Module
class were removed.

The SimplePCEPExtensionProviderContextModule was deprecated but still
remains for now to provide the PCEPExtensionProviderContext instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang, Module classes can be removed.

Change-Id: I71193376f762975f775d1a5a6cee0f7702b525b2
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoUse Java StandardCharsets 79/41979/3
Robert Varga [Mon, 18 Jul 2016 14:32:37 +0000 (16:32 +0200)]
Use Java StandardCharsets

Guava's Charsets are not needed with our Java version.

Change-Id: Ibe12548f2068d6fa5b381e56b66a565837810fd8
Signed-off-by: Robert Varga <rovarga@cisco.com>
7 years agoFix BGP-FS's BGPActivator bean arguments 27/42027/2
Milos Fabian [Tue, 19 Jul 2016 07:30:21 +0000 (09:30 +0200)]
Fix BGP-FS's BGPActivator bean arguments

Flowspec's BGPActivator constructor signature
has changed recently, reflect the change in
the blueprint container.

Change-Id: I2a3e477b2ec36b4f51dfbf4f53905ab58540f7a5
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoFixed enum BA->BI mapping 66/41966/2
Milos Fabian [Mon, 18 Jul 2016 11:20:53 +0000 (13:20 +0200)]
Fixed enum BA->BI mapping

Make sure the enumeration type value is
mapped as expected.

Change-Id: I3094070e0a00db160ac6ee7119ba4d4e89b2e852
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG-4692: remove TCPMD5 dependencies 17/41917/5
Robert Varga [Mon, 18 Jul 2016 11:11:26 +0000 (13:11 +0200)]
BUG-4692: remove TCPMD5 dependencies

Remove tcpmd5 library dependencies from bgpcep's parent pom
and features xmls and poms. This is a last step of migration
from ODL's tcpmd5.

Change-Id: I7a43a6954e54618a3cddbc912ed84bbc26d404ce
Signed-off-by: Milos Fabian <milfabia@cisco.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
7 years agoBug 5566: BGP listener TCP MD5 support is not working 35/41935/1
Milos Fabian [Tue, 22 Mar 2016 10:42:45 +0000 (11:42 +0100)]
Bug 5566:  BGP listener TCP MD5 support is not working

The BGP server have to be aware of all configured peers
MD5 keys.
Update (add/remove) server's keys whenever a peer is
configured/disconfigured by listening to the PeerRegistry
changes.

Change-Id: Ie9cab438a6d4358a08465e1bd9d7df28d923187f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoMove pcep base parser Activator to its own bundle 07/41507/5
Tom Pantelis [Thu, 7 Jul 2016 05:30:20 +0000 (01:30 -0400)]
Move pcep base parser Activator to its own bundle

The pcep base parser Activator was moved (and renamed to
BaseParserExtensionActivator) from the impl bundle to a new bundle,
pcep-base-parser, to avoid circular OSGi service dependencies between the
impl and spi bundles when the PCEPDispatcherImpl wiring is cobverted to
blueprint. In addition all the related message et al classes were also
moved to pcep-base-parser.

Change-Id: I9f79bc111743c21e64c6c9444d926c347d392a08
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoEnable restart of CSS modules on blueprint container restart 31/40731/6
Tom Pantelis [Wed, 22 Jun 2016 13:58:08 +0000 (09:58 -0400)]
Enable restart of CSS modules on blueprint container restart

For the CSS modules whose services are now created via blueprint, if
the corresponding blueprint container is restarted, eg due to config
change, we want to also restart the CSS module. To accomplish this, we
need to associate the blueprint service with the corresponding module
by adding well-known service properties that identify the CSS module's
namespace, module type name, and module instance name. Thus when the
BlueprintContainerRestartServiceImpl encounters the service properties
it will restart the specified CSS module..

Change-Id: Ia1acad4d44e3dff1f3f34bc1f56b33f16862ba62
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoClean up code based on sonar exam 66/41866/6
Kevin Wang [Thu, 14 Jul 2016 23:19:45 +0000 (16:19 -0700)]
Clean up code based on sonar exam

Change-Id: Icbcfbdd66ce9fbe50598ff5fd50d12c667ada344
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-4692: Migrate TCP-MD5 support in BMP package to netty's native-epoll 49/39849/8
Om Prakash [Sat, 18 Jun 2016 03:23:55 +0000 (23:23 -0400)]
BUG-4692: Migrate TCP-MD5 support in BMP package to netty's native-epoll

The reason for migration is that TCP-MD5 are part of the netty library so There is no need to inject any md5 config modules in BMP package.
This change will include to extended concepts package change , upgrade Netty 4.0.33.Final -> 4.0.36.Final and remove the code of md5 package to use e-poll for this change.

Change-Id: Ib499736868f32642ed6741be10288943615a13a2
Signed-off-by: Om Prakash <op317q@att.com>
7 years agoBug-6084: get restart time from open message error 30/41730/2
Ajay [Tue, 12 Jul 2016 17:55:09 +0000 (17:55 +0000)]
Bug-6084: get restart time from open message error
- fix size of left-shift while calculating graceful restart capability restart time

Change-Id: I3a286b6e6a4550846e22d3ecc1adf2d7a5fc6c6f
Signed-off-by: Ajay <ajayl.bro@gmail.com>
7 years agoBUG-5876 Enhance BGP Speaker and Peer Stats II 96/40396/15
Kevin Wang [Fri, 27 May 2016 23:30:20 +0000 (16:30 -0700)]
BUG-5876 Enhance BGP Speaker and Peer Stats II

- Refactor BGPPeer to seperate stats code
- Implement route counter

Change-Id: Ia9aa6d7f06b96efa0dcf00fb319f0473e6c2775e
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-4692: Migrate TCP-MD5 support in pcep package to netty's native-epoll 70/39270/20
Om Prakash [Sat, 18 Jun 2016 03:34:29 +0000 (23:34 -0400)]
BUG-4692: Migrate TCP-MD5 support in pcep package to netty's native-epoll

The reason for migration is that TCP-MD5 are part of the netty library so There is no need to inject any md5 config modules in pcep package.
This change will include to extended concepts package change , upgrade Netty 4.0.33.Final -> 4.0.36.Final and remove the code of md5 package to use e-poll for this change.

Change-Id: Ic10dd732ce570d6b9eb2d99bb2bd721a067f86b2
Signed-off-by: Om Prakash <op317q@att.com>
7 years agoAdd blueprint XML wiring for the BGPPeerRegistry 26/40526/8
Tom Pantelis [Sat, 18 Jun 2016 19:52:35 +0000 (15:52 -0400)]
Add blueprint XML wiring for the BGPPeerRegistry

Added blueprint wiring for the StrictBGPPeerRegistry. The
StrictBgpPeerRegistryModule was deprecated but still remains for now
to provide the instance created via blueprint to the config system so it can be
injected into other users. Once the other user(s) are converted to blueprint then
the config yang and Module classes can be removed.

Change-Id: Ieaec3d6e29b457192d3a3acdc5b9e72559403805
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoChange BGP to use bgp-id type and as-number type 00/41800/3
Kevin Wang [Thu, 14 Jul 2016 02:37:12 +0000 (19:37 -0700)]
Change BGP to use bgp-id type and as-number type

- Remove util converting inet-10 version to inet-13 yang
- Change BGP yang to use bgp-id and as-number wherever these two types are used

Change-Id: I7550de5c15fdcba26113d1b151d920d0b212b2be
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoRemove RSVP extension SPI config yang 13/40513/6
Tom Pantelis [Sat, 18 Jun 2016 14:36:25 +0000 (10:36 -0400)]
Remove RSVP extension SPI config yang

All RSVP extension providers and consumers have been converted to
blueprint so the config yang, Module classes and 27-rvsp.xml were
removed.

Change-Id: I945643bda306d1c8894d0e6788467c2f774489a5
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoRemove BGP extensions SPI yang 12/40512/8
Tom Pantelis [Sat, 18 Jun 2016 13:37:53 +0000 (09:37 -0400)]
Remove BGP extensions SPI yang

The BGP extensions SPI impl and all extension provider activators have
been converted to blueprint so the odl-bgp-parser-spi-cfg.yang and all
provider config yang and generated Module classes were removed.

Change-Id: Id9a7f8887cca23349573c4dfcce681c681cfab94
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoConvert bmp extenstions to blueprint 11/40511/7
Tom Pantelis [Thu, 16 Jun 2016 15:47:18 +0000 (11:47 -0400)]
Convert bmp extenstions to blueprint

Added blueprint XML file, bmp-spi.xml, to the spi bundle that Utilizes
the new blueprint extension, "specific-reference-list" (added by
https://git.opendaylight.org/gerrit/#/c/40267/), to obtain the
specific list of BmpExtensionProviderActivator OSGi service instances.
The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.bmp.spi.registry.BmpExtensionProviderActivator
resources in the provider bundles which the "specific-reference-list"
extension scan so it knows which services to look for. Once all expected
services are obtained, the BmpExtensionProviderActivator instance List
bean is created and injected into the SimpleBmpExtensionProviderContextActivator
bean instance which calls start on each.

The only BmpExtensionProviderActivator instance wired in 32-bmp.xml is
the BmpActivator in bmp-impl. This instance is now created via the
blueprint XML, bgp-bmp.xml, and the config yang and associated Module
class were removed.

The SimpleBmpExtensionProviderContextModule was deprecated but still
remains for now to provide the BmpExtensionProviderContext instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang, Module classes can be removed.

Change-Id: I96205d078d9a7ec5fa58eae7c0f66a88227f7bc5
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML wiring for the BGPDispatcher 12/40412/8
Tom Pantelis [Wed, 15 Jun 2016 16:32:30 +0000 (12:32 -0400)]
Add blueprint XML wiring for the BGPDispatcher

Added blueprint wiring for the BGPDispatcher. The BGPDispatcherImplModule was
deprecated but still remains for now to provide the RIBExtensionProviderContext
instance created via blueprint to the config system so it can be injected
into other users. Once the other user(s) are converted to blueprint then
the config yang and Module classes can be removed.

Change-Id: Ie1f268a4ee593efeda677e10009b4a351acda17c
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBug 6120: Fix intermittent failures in BmpMonitorImplTest 05/41805/1
Tom Pantelis [Thu, 14 Jul 2016 04:54:08 +0000 (00:54 -0400)]
Bug 6120: Fix intermittent failures in BmpMonitorImplTest

There are many places where the tests perform an action, sleep 500 ms,
and read the data store to verify expected data was written as a result
of the action. However sometimes on jenkins 500 ms isn't enough.

https://git.opendaylight.org/gerrit/#/c/41764/ made changes to properly
wait for ChannelFutures to complete via a listener but I don't think that will
fix all the internittent failures since the prior code also waited for
the futures to complete. Also the hardcoded 500 ms sleeps prior to reading the
data store are still in place and it's still possible for a data store write to
not complete prior to reading it. So I eliminated the sleeps and changed it to
read and verify in a loop for up to 10 sec. After a read, if a verify assertion
fails, it sleeps a bit and reads again. This also speeds up the tests as, most of
the time, the data is written in much less than 500 ms.

After these changes the BmpMonitorImplTest ran 100 times successfully.

Change-Id: I4ab16fb063b03088cc3d1ec7623ec6f4e97242b8
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-6120: Fix occasionally failure of test 64/41764/2
Claudio [Wed, 13 Jul 2016 13:01:03 +0000 (15:01 +0200)]
BUG-6120: Fix occasionally failure of test

Fix BmpMonitorImplTest test

Change-Id: I8a8bb0c112d2765034cf8b87ffa0ae54b27b4642
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoUpgrade ietf-{inet,yang}-types to 2013-07-15 62/40862/7
Milos Fabian [Tue, 12 Jul 2016 19:40:20 +0000 (14:40 -0500)]
Upgrade ietf-{inet,yang}-types to 2013-07-15

Change-Id: I8ee8729c729bd17140616092c637e406c7b738a4
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG 5031: 08/37708/12
Omair [Mon, 18 Apr 2016 03:44:05 +0000 (20:44 -0700)]
BUG 5031:
Bring order into the BGP-LS encoders/decoders by introducing simple codecs
and their registers for BGP-LS's NLRI TLV types, to make it more extensible.

-Introduction Nlri registry
-Introduction of BindingSubTlvs registry
...

Change-Id: I76207fd1781d0e1f5bb88118bee26bc962199200
Signed-off-by: Omair <of8826@att.com>
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG-4692: Migrate TCP-MD5 support in bgp package to netty's native-epoll 68/39268/25
Om Prakash [Sat, 18 Jun 2016 02:35:18 +0000 (22:35 -0400)]
BUG-4692: Migrate TCP-MD5 support in bgp package to netty's native-epoll

The reason for migration is that TCP-MD5 are part of the netty library so There is no need to inject any md5 config modules in bgp package.
This change will include to extended concepts package change , upgrade Netty 4.0.33.Final -> 4.0.36.Final and remove the code of md5 package to use e-poll for this change.

Change-Id: Id6d4b7ed5062ec31fedf05f6494290e1e30e3028
Signed-off-by: Om Prakash <op317q@att.com>
7 years agoAdd missing yang module's imports 49/41649/3
Milos Fabian [Mon, 11 Jul 2016 11:55:50 +0000 (12:55 +0100)]
Add missing yang module's imports

Two missing import statments added in
bgp-evpn yang data module.

Change-Id: I83c6f2f15e6f43cc421f082ac83df86b24e41d01
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoAdd blueprint XML for bgp-rib-spi 11/40411/5
Tom Pantelis [Wed, 15 Jun 2016 12:48:05 +0000 (08:48 -0400)]
Add blueprint XML for bgp-rib-spi

Added blueprint XML file, bgp-rib-spi.xml, to the rib-spi bundle that
Utilizes the new blueprint extension, "specific-reference-list" (added by
https://git.opendaylight.org/gerrit/#/c/40267/), to obtain the
specific list of RIBExtensionProviderActivator OSGi service instances.
The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.bgp.rib.spi.RIBExtensionProviderActivator
resources in the provider bundles which the "specific-reference-list"
extension scans so it knows which services to look for. Once all
expected services are obtained, the RIBExtensionProviderActivator
instance List bean is created and injected into the
SimpleRIBExtensionProviderContextActivator bean instance which calls start on each.

The SimpleRIBExtensionProviderContextModule was deprecated but still
remains for now to provide the RIBExtensionProviderContext instance
created via blueprint to the config system so it can be injected
into other users. Once the other user(s) are converted to blueprint then
the config yang and Module classes can be removed.

Change-Id: I2e3698ad08f021191c9c66ee4e27d55d7bd5e24a
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML for bgp-parser-spi 10/40410/4
Tom Pantelis [Wed, 15 Jun 2016 10:28:03 +0000 (06:28 -0400)]
Add blueprint XML for bgp-parser-spi

Added blueprint XML file, bgp-parser-spi.xml, to the spi bundle that Utilizes
the new blueprint extension, "specific-reference-list" (added by
https://git.opendaylight.org/gerrit/#/c/40267/), to obtain the
specific list of RSVPExtensionProviderActivator OSGi service
instances. The specific expected services are announced via
META-INF/services/org.opendaylight.protocol.bgp.parser.spi.BGPExtensionProviderActivator
resources in the provider bundles which the "specific-reference-list"
extension scans so it knows which services to look for. Once all
expectedservices are obtained, the RSVPExtensionProviderActivator instance
List bean is created and injected into the SimpleRSVPExtensionProviderContextActivator
bean instance which calls start on each.

The SimpleBGPExtensionProviderContextModule was deprecated but still
remains for now to provide the BGPExtensionProviderContext instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang and Module classes can be removed.

Change-Id: Id41d410b449699ac3d82b3d0352ea84eb66f22ca
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML for bgp-evpn 09/40409/8
Tom Pantelis [Wed, 15 Jun 2016 02:00:03 +0000 (22:00 -0400)]
Add blueprint XML for bgp-evpn

Change-Id: Ic7eb3f43fc31a615cf5767762c31d0f191778fe5
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoRemove usages of GlobalBundleScanningSchemaServiceImpl in tests 54/41354/1
Tom Pantelis [Thu, 16 Jun 2016 03:43:35 +0000 (23:43 -0400)]
Remove usages of GlobalBundleScanningSchemaServiceImpl in tests

The GlobalBundleScanningSchemaServiceImpl class has been moved to a new
bundle so some tests fail to compile. Instead of relying on the
GlobalBundleScanningSchemaServiceImpl, I modified the tests to use a
mock SchemaService.

A couple tests have been failing frequently on jenkins, seems due to the
recent jenkins infr changes. They're orthogonal to this patch but are
preventing jenkins +1. One is the PCCDispatcherImplTest which I set to
ignore for now. The other is
BGPDispatcherImplTest#testCreateReconnectingClient:

org.opendaylight.protocol.bgp.rib.impl.BGPDispatcherImplTest
testCreateReconnectingClient(org.opendaylight.protocol.bgp.rib.impl.BGPDispatcherImplTest)
Time elapsed: 5.236 sec  <<< ERROR!
java.lang.NullPointerException: null
at
org.opendaylight.protocol.bgp.rib.impl.SimpleSessionListener.getState(SimpleSessionListener.java:81)
at
org.opendaylight.protocol.bgp.rib.impl.BGPDispatcherImplTest.testCreateReconnectingClient(BGPDispatcherImplTest.java:122)

I added a CountDownLatch to SimpleSessionListener to detect and wait for
onSessionUp. This also allows to remove hardcoded 3 sec sleep. However
the test still fails with a 10 sec wait for onSessionUp so the test was
disabled for now.

I also configured the SLF4j simple logger so we can get logging output
for debugging test failures.

Change-Id: Ieee327508c816ff97ba4f683d92f4330aa4eda61
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-6108: Fix IAE on Openconfig 34/41134/2
Claudio [Wed, 29 Jun 2016 20:21:49 +0000 (22:21 +0200)]
BUG-6108: Fix IAE on Openconfig

IAE is thrown when reconfigurin Application Peer via restconf.
Fix by close old Application Peer.

Change-Id: I1774be6c567af464ff61b5df62ed8e63e5491c8f
Signed-off-by: Claudio <cgaspari@cisco.com>
7 years agoadd check for null IP address when serializing MAC/IP advertisment route 19/41119/1
Giles Heron [Thu, 30 Jun 2016 08:03:21 +0000 (18:03 +1000)]
add check for null IP address when serializing MAC/IP advertisment route

Change-Id: I4562587fd32a6d6576d7f2f59f180068d1d86282
Signed-off-by: Giles Heron <giheron@cisco.com>
7 years agoAdd blueprint XML for bgp-l3vpn 29/40329/6
Tom Pantelis [Tue, 14 Jun 2016 22:13:17 +0000 (18:13 -0400)]
Add blueprint XML for bgp-l3vpn

Change-Id: I21a39a7510c76b15e9b0160d634f16d7a0e0143d
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML for bgp-labeled-unicast 28/40328/6
Tom Pantelis [Tue, 14 Jun 2016 21:57:47 +0000 (17:57 -0400)]
Add blueprint XML for bgp-labeled-unicast

Change-Id: I96f286cea1d2464dbe9aaf6009d8152ae26f6049
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoAdd blueprint XML for bgp-flowspec 27/40327/6
Tom Pantelis [Tue, 14 Jun 2016 21:45:22 +0000 (17:45 -0400)]
Add blueprint XML for bgp-flowspec

Change-Id: I0963553e5d090377883b3269b75c9916aff4c8fd
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-6020: Implement Ribsupport for extensions 34/40734/3
Claudio D. Gasparini [Thu, 9 Jun 2016 18:36:00 +0000 (20:36 +0200)]
BUG-6020: Implement Ribsupport for extensions

+Linkstate
+Evpn
+L3VPN
+BGP-LU
+BGP-FS

Change-Id: I966ef06d5e48286e0de03edc74a749c69f4f27b5
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6038: Fix race condition when Open message... 81/40581/5
Claudio D. Gasparini [Sat, 18 Jun 2016 21:24:53 +0000 (23:24 +0200)]
BUG-6038: Fix race condition when Open message...

Fix race condition when Open message was sent by the peer before startNegotiation
Fix by start Negotiation and then handle Open message

Change-Id: If5aa3cb024eb5cdbf8995d27445735318cb17759
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoAdd blueprint XML for bgp-linkstate 26/40326/4
Tom Pantelis [Tue, 14 Jun 2016 21:24:44 +0000 (17:24 -0400)]
Add blueprint XML for bgp-linkstate

Change-Id: Ie0e6476f4457cbf146e17cbbab6759a163fad9d9
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoConvert rsvp bundles to blueprint 74/40274/5
Tom Pantelis [Tue, 14 Jun 2016 00:07:53 +0000 (20:07 -0400)]
Convert rsvp bundles to blueprint

Added blueprint XML file, rsvp-spi.xml, to the spi bundle that Utilizes the
new blueprint extension, "specific-reference-list" (added by
https://git.opendaylight.org/gerrit/#/c/40267/), to obtain the
specific list of RSVPExtensionProviderActivator OSGi service instances. The
specific expected services are announced via
META-INF/services/org.opendaylight.protocol.rsvp.parser.spi.RSVPExtensionProviderActivator
resources in the provider bundles which the "specific-reference-list"
extension scan so it knows which services to look for. Once all expected
services are obtained, the RSVPExtensionProviderActivator instance List bean
is created and injected into the SimpleRSVPExtensionProviderContextActivator
bean instance which calls start on each.

The only RSVPExtensionProviderActivator instance wired in 27-rsvp.xml is
the RSVPActivator in rsvp-impl. This instance is now created via the
blueprint XML, rsvp-impl.xml, and the config yang and associated Module class
was removed. rsvp-impl also now correctly provides its
META-INF/services/org.opendaylight.protocol.rsvp.parser.spi.RSVPExtensionProviderActivator
resource.

The SimpleRSVPExtensionProviderContextModule was deprecated but still
remains for now to provide the RSVPExtensionProviderContext instance
created via blueprint to the config system so it can be injected into
other users. Once the other user(s) are converted to blueprint then the
config yang, Module classes, and 27-rsvp.xml can be removed.

Change-Id: I5f031322e8a7d947c1ad7e74963cf9f986b992b1
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>
7 years agoBUG-865: remove references to URLSchemaContextResolver 01/40701/2
Robert Varga [Wed, 22 Jun 2016 12:49:43 +0000 (14:49 +0200)]
BUG-865: remove references to URLSchemaContextResolver

YangTextSchemaContextResolver is the replacement, use that.

Change-Id: Ie8967f9ddba3352815f084926441eeb1e0530aac
Signed-off-by: Robert Varga <rovarga@cisco.com>
7 years agoRemove usage of RpcBrokerImplModule from the config test 42/40542/1
Milos Fabian [Mon, 20 Jun 2016 11:37:38 +0000 (13:37 +0200)]
Remove usage of RpcBrokerImplModule from the config test

The RpcBrokerImplModule was removed in https://git.opendaylight.org/gerrit/#/c/38281

Change-Id: Icf06be63df91896e7c4c4cae4bbbebf5d424ecb8
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoremoved precondition checks for v4/v6 next-hops for v4/v6 routes 09/40109/4
Giles Heron [Tue, 24 May 2016 12:03:52 +0000 (13:03 +0100)]
removed precondition checks for v4/v6 next-hops for v4/v6 routes

Change-Id: Iddc5d26b3cff48582fb3d0d11c7fe1e0e0888b27
Signed-off-by: Giles Heron <giheron@cisco.com>
(cherry picked from commit 95768ea4354c69ff7ad5a7888cfc6d64de43ec32)

7 years agoBUG-5024: Fix BGP LS EPE model 34/40434/3
Claudio D. Gasparini [Thu, 16 Jun 2016 10:46:59 +0000 (12:46 +0200)]
BUG-5024: Fix BGP LS EPE model

Fix flags model for Peer-Node-SID, Peer-Adj-SID, Peer-Set-SID based on draft
ref. https://tools.ietf.org/html/draft-ietf-idr-bgpls-segment-routing-epe-05.

Change-Id: Iccb36e8631dc821106aec5a4307213f51366443b
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoUpdate BMP to conform RFC 7854 93/40293/3
Milos Fabian [Tue, 14 Jun 2016 10:27:18 +0000 (12:27 +0200)]
Update BMP to conform RFC 7854

*Added new Peer-Type - "Local Instance Peer"
*Deprecate current distinguisher representation
and replace it with bgp project wide definition of RD
*Update references in Yang Data Model

Change-Id: I5deef00e942b12ce1e8b3504d6de278aa1f70c41
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoOpenConfig BGP ODL extensions - new revision 24/40424/2
Milos Fabian [Thu, 16 Jun 2016 07:14:42 +0000 (09:14 +0200)]
OpenConfig BGP ODL extensions - new revision

Introduces new revision of ODL extension for
OpenConfig BGP:
-renamed AFI/SAFI identities to follow naming convention of
buil-in types.
-added augmentations to support add-path in BGP and Neighbor
AFI/SAFI configuration

Change-Id: I5c074d4e1d671c5982d331d6dffa99f92e64444b
Signed-off-by: Milos Fabian <milfabia@cisco.com>
7 years agoBUG-5024: Update BGP LS to conform RFC 7752 II 87/40287/3
Claudio D. Gasparini [Tue, 14 Jun 2016 08:55:08 +0000 (10:55 +0200)]
BUG-5024: Update BGP LS to conform RFC 7752 II

-Implementation of new IPv6 Prefix SID
-apply changes required for new protocol-id ospfV3

Change-Id: Ia55508ec657269e8d2cc981486857a5d3c223103
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-5024: Update BGP LS to conform RFC 7752 89/40289/6
Claudio D. Gasparini [Mon, 13 Jun 2016 14:42:29 +0000 (16:42 +0200)]
BUG-5024: Update BGP LS to conform RFC 7752

changes introduced
+ Update Igp flag
+ Code point reassignment for RSVP-Te and SR
+ new protcol-id OSPFv3 defined

Change-Id: I34e32564133598e4db95bb976380f250d6816092
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-5876 Enhance BGP Speaker and Peer Stats I 08/39808/14
Kevin Wang [Fri, 27 May 2016 23:30:20 +0000 (16:30 -0700)]
BUG-5876 Enhance BGP Speaker and Peer Stats I

- Refactor existing yang model
- Expose total size (number of routes) for Adj-RIB-In and Effective-RIB-In,
  Adj-RIB-Out and a size per AFI/SAFI table for each RIB.

Change-Id: I707914f3ab0786c0ad8ba71a5476b3b7e322b0cd
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-5024: Update BGP LS extension for SR latest draft 86/40286/2
Claudio D. Gasparini [Tue, 14 Jun 2016 07:34:40 +0000 (09:34 +0200)]
BUG-5024: Update BGP LS extension for SR latest draft

Update module bgp-segment-routing based on latest draft
https://tools.ietf.org/html/draft-gredler-idr-bgp-ls-segment-routing-ext-02

Change-Id: Ibfc6bb2f8ac53e230d263e0a21b2dc8d828b3882
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6047: Check lenght of array containing Arbitrary DTO 14/40214/2
Claudio D. Gasparini [Mon, 13 Jun 2016 08:02:25 +0000 (10:02 +0200)]
BUG-6047: Check lenght of array containing Arbitrary DTO

Expectected lenght is 9, improve log by adding a precondition to
show more clear message when its incorrect.

Change-Id: I8bc0b0fa1d677a20784c48b6e8fb549392e97529
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-5785 Support for dissemination of L3VPN flow spec III 84/38384/22
Kevin Wang [Mon, 2 May 2016 23:48:25 +0000 (23:48 +0000)]
BUG-5785 Support for dissemination of L3VPN flow spec III

- Add RIB Support
- Integration

Change-Id: Iecc0908ac55cf64414a472fe1dcc5e78034090c0
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-6020: Implement RibSupport tests for extensions 46/40146/5
Claudio D. Gasparini [Thu, 9 Jun 2016 18:35:00 +0000 (20:35 +0200)]
BUG-6020: Implement RibSupport tests for extensions

After create AbstractRibSupportTest tool implement RibSupportTest for
+ Ipv4
+ Ipv6

Change-Id: I41965a35cb60237f219c88e607b35c61f4b95ab7
Signed-off-by: Claudio D. Gasparini <cgaspari@cisco.com>
7 years agoBUG-6054 fix typo in bgp config xml file 17/40217/1
Kevin Wang [Mon, 13 Jun 2016 08:27:23 +0000 (01:27 -0700)]
BUG-6054 fix typo in bgp config xml file

- Fix 31-bgp.xml

Change-Id: I0cd95e2193120fc410ec116b2355d600236996be
Signed-off-by: Kevin Wang <kevixw@gmail.com>
7 years agoBUG-5785 Support for dissemination of L3VPN flow spec II 75/39875/8
Kevin Wang [Mon, 6 Jun 2016 08:49:42 +0000 (01:49 -0700)]
BUG-5785 Support for dissemination of L3VPN flow spec II

- New NLRI parser for flowspec L3vpn

Change-Id: I6fe6985a46a2b1c2d9dc91dea6bd10282c0dc351
Signed-off-by: Kevin Wang <kevixw@gmail.com>