sfc.git
8 years agoFix issues related to checkstyle enforcement for module 05/53005/2
David [Wed, 8 Mar 2017 13:56:43 +0000 (14:56 +0100)]
Fix issues related to checkstyle enforcement for module
sfc-rsp-manager

- Copyright sections
- Line lengths
- Enforcement in pom.xml

Change-Id: Ibcf04bcb2cedec58d8f4a6c7f375e2375366e2b6
Signed-off-by: David <[email protected]>
8 years agoRemove sfc-network-topology-utils 03/53003/2
Juan Vidal [Tue, 7 Mar 2017 17:42:01 +0000 (17:42 +0000)]
Remove sfc-network-topology-utils

This submodule does not contain anything, its contents was removed some time
ago. It can be safely removed from repository.

Change-Id: I7dca0dd1cee3c66aa808c6b7d95f0fac13ae7965
Signed-off-by: Juan Vidal <[email protected]>
8 years agoFix issues related to checkstyle enforcement for module 00/52900/4
David [Mon, 6 Mar 2017 17:17:14 +0000 (18:17 +0100)]
Fix issues related to checkstyle enforcement for module
sfc-scf-openflow

- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Enforcement in pom.xml

Change-Id: Ib7e676a8c262154b3937273e2aa21be04f3c2719
Signed-off-by: David <[email protected]>
8 years agoUpdate sfc104 demo to support nsh proxy and vpp classifier 14/52914/3
Yi Yang [Tue, 7 Mar 2017 10:17:53 +0000 (18:17 +0800)]
Update sfc104 demo to support nsh proxy and vpp classifier

- Use ovs 2.6.1 + DPDK 16.07
- Enable vpp classifier for vpp demo
- Add an option "--nshproxy" for ./run_demo.sh
- Enable nsh proxy support for ovs, ovs_dpdk and vpp demos

You can run nsh proxy demo with option --nshproxy.

  $ ./run_demo.sh --nshproxy ovs | ovs_dpdk | vpp

Change-Id: I2d9982f6d9f77b0ec4f669940195e19bab48a5ab
Signed-off-by: Yi Yang <[email protected]>
8 years agoFix issues related to checkstyle enforcement for module 47/52847/3
David [Mon, 6 Mar 2017 00:57:55 +0000 (01:57 +0100)]
Fix issues related to checkstyle enforcement for module
sfc-vnfm-spi

- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Enforcement in pom.xml

Change-Id: Ic7f05a4d785aecd348b27a9aae1667051f9a4bd5
Signed-off-by: David <[email protected]>
8 years agoOne Chain Service Functions 72/52872/2
Brady Johnson [Tue, 21 Feb 2017 07:57:58 +0000 (08:57 +0100)]
One Chain Service Functions

- If the SF flag one-chain-only is TRUE, then the Service
  Function can only be used in one Service Chain.
- This feature will be used mainly by VXLAN non-NSH,
  once implemented
- Once the VXLAN, non-NSH feature is implemented, if a
  chain is created whose SFs have one-chain-only set TRUE,
  then reclassification wont be neccessary at SF ingress.
- Fixes for code review comments.

Change-Id: Ia6b5584a9c1297ed5f678a3dd875fd57ab3c9044
Signed-off-by: Brady Johnson <[email protected]>
8 years agoBUG-6859 - Binding generator v1 refactoring 11/52911/2
Martin Ciglan [Tue, 7 Mar 2017 01:02:04 +0000 (02:02 +0100)]
BUG-6859 - Binding generator v1 refactoring

Fix compilation failure after binding generator move.

Change-Id: Idd71975642e173e0779f281cb64e7aceb27efa73
Signed-off-by: Martin Ciglan <[email protected]>
8 years agoFix issues related to checkstyle compliance 74/52874/3
David [Mon, 6 Mar 2017 11:40:29 +0000 (12:40 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-sb-rest:
- Copyright sections
- Order imports
- Line lengths
- Formatting
- Rename variables
- Remove unused variables
- Declaration of constants: name, modifiers
- Exception catching
- Move declaration of variables closer to their use
- Checkstyle enforcement in pom.xml

Change-Id: I360d712bc5aec65ceabcc31907971785b7a4c264
Signed-off-by: David <[email protected]>
8 years agoFix issues related to checkstyle enforcement for module 46/52846/2
David [Mon, 6 Mar 2017 00:48:56 +0000 (01:48 +0100)]
Fix issues related to checkstyle enforcement for module
sfc-vpp-utils

- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Enforcement in pom.xml

Change-Id: Iac36a44c0e0b8a77158b3fb77770d3190f69ff46
Signed-off-by: David <[email protected]>
8 years agoFix issues related to checkstyle compliance 43/52843/2
David [Sat, 4 Mar 2017 09:27:13 +0000 (10:27 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-pot:
- Copyright sections
- Line lengths
- Order imports
- Formatting
- Declaration of constants: name, modifiers
- Rename variables
- Move declaration of variables closer to their use
- Enforcement in pom.xml

Change-Id: If573fa52860c0bd6380723d5b3c56f8a5dd69d46
Signed-off-by: David <[email protected]>
8 years agosfc-test-consumer - Checkstyle enforcement 85/52785/2
Faseela K [Fri, 3 Mar 2017 20:25:11 +0000 (01:55 +0530)]
sfc-test-consumer - Checkstyle enforcement

Fix issues related to checkstyle compliance in module
sfc-test-consumer:
- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Exception catching
- Remove unused variables
- Enforcement in pom.xml

Change-Id: I6c82ded6654b044486934b46a19bc04ed7e8992e
Signed-off-by: Faseela K <[email protected]>
8 years agoMerge "Fix issues related to checkstyle enforcement for module pot-netconf-renderer"
Yi Yang [Mon, 6 Mar 2017 01:21:41 +0000 (01:21 +0000)]
Merge "Fix issues related to checkstyle enforcement for module pot-netconf-renderer"

8 years agoFix issues related to checkstyle compliance 44/52844/1
David [Sun, 5 Mar 2017 23:58:53 +0000 (00:58 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-sb-rest:
- Copyright sections
- Order imports
- Line lengths
- Formatting
- Rename variables
- Remove unused variables
- New class AclExporter to avoid having 2 classes in the same file
- New class RspExporter to avoid having 2 classes in the same file
- New class SfExporter to avoid having 2 classes in the same file
- New class SfgExporter to avoid having 2 classes in the same file
- New class SfstateExporter to avoid having 2 classes in the same file
- New class SfstExporter to avoid having 2 classes in the same file
- Remove duplicate constants
- Move declaration of variables closer to their use
- Declaration of constants: name, modifiers

Change-Id: I2299575852d42105f84a35823a9f02c33442b80e
Signed-off-by: David <[email protected]>
8 years agoFix issues related to checkstyle enforcement for module 45/52845/1
David [Sun, 5 Mar 2017 14:30:01 +0000 (15:30 +0100)]
Fix issues related to checkstyle enforcement for module
pot-netconf-renderer

- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Exception catching
- Remove unused variables
- Enforcement in pom.xml

Change-Id: I8316f367ec90a7f6ef0d15f0507d1f5a04020c75
Signed-off-by: David <[email protected]>
8 years agosfc-vpp-renderer - enforce checkstyle 17/52617/3
Faseela K [Thu, 2 Mar 2017 08:02:16 +0000 (13:32 +0530)]
sfc-vpp-renderer - enforce checkstyle

Change-Id: I39c179bc22651087f3dd526adbbecece293d84c7
Signed-off-by: Faseela K <[email protected]>
8 years agoFix package names to comply with naming conventions 60/52760/2
David [Fri, 3 Mar 2017 12:42:40 +0000 (13:42 +0100)]
Fix package names to comply with naming conventions

New arrangement of packages to comply with naming conventions.

Change-Id: Ice01dd527902439ebd44ae051ad0e36ccd383727
Signed-off-by: David <[email protected]>
8 years agoAdd missing <name> fields for pom.xml files 12/52712/8
Anil Belur [Fri, 3 Mar 2017 04:20:15 +0000 (14:20 +1000)]
Add missing <name> fields for pom.xml files

This is used by autorelease scripts to automatically parse which project
is failing a build and report to the mailing list automatically. We need
names in the format:

    ODL :: <groupId> :: <artifactId>

This patch formats in the same format as found in the startup archetypes
patch found here: https://git.opendaylight.org/gerrit/52522

Change-Id: Ib62021d93035eff6ada8584e12e68ce4dba3d651
Signed-off-by: Anil Belur <[email protected]>
8 years agoFix a minor checkstyle violation in sfc-provider module 36/52736/1
David [Fri, 3 Mar 2017 09:18:52 +0000 (10:18 +0100)]
Fix a minor checkstyle violation in sfc-provider module

Fix a minor checkstyle violation in sfc-provider module.

Change-Id: I3d2d6c6a950445ac75db89a5f1baa1ad86dd7476
Signed-off-by: David <[email protected]>
8 years agoGet rid of double brace initializers 20/52220/3
Miguel Duarte [Thu, 23 Feb 2017 15:05:45 +0000 (16:05 +0100)]
Get rid of double brace initializers

Double brace initialization is evil. In fact, it is considered a java
anti-pattern, since code becomes harder to read, and for each instance
instantiated through this, an anonymous class is created, whose
constructor code is the contents of the double brace.

Simply put, we're better off without it.

Change-Id: I162ca93b2afa7115a41ccc8b7e1f15b475ad0e6f
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoFix issues related to checkstyle compliance 30/52430/2
David [Tue, 28 Feb 2017 23:01:33 +0000 (00:01 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-ovs:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Exception catching
- Default clause for switch
- Remove unused variables
- Enforcement in pom.xml

Change-Id: I666aae1a9bfb1d661f785cd1b33e4a880bec1265
Signed-off-by: David <[email protected]>
8 years agoAdd NSH proxy support in openflow renderer 00/52500/5
Yi Yang [Thu, 2 Mar 2017 02:08:28 +0000 (10:08 +0800)]
Add NSH proxy support in openflow renderer

You can set proxy data plane locator for one SF
to enable NSH proxy for this SF.

        "sf-data-plane-locator": [
            {
                "name": "firewall-1-dpl",
                "port": 4789,
                "ip": SF2_IP,
                "transport": "service-locator:vxlan",
                "service-function-forwarder": "SFF2",
                "service-function-proxy:proxy-data-plane-locator": {
                    "port": 4790,
                    "ip": SF2_PROXY_IP,
                    "transport": "service-locator:vxlan-gpe"
                }
            }
        ]

Then openflow renderer will send VxLAN-gpe + NSH packet
to NSH proxy instead of ths SF, vxlan_tool.py is
changed to support NSH proxy and NSH-unaware SF. NSH proxy
will map VxLAN-gpe + NSH to VxLAN and send VxLAN packet to
NSH-unaware SF. Every session's NSH header is saved in
NSH proxy in order that it can be sent back to SFF intactly.

You can run vxlan_tool.py as NSH proxy by the below command

$ sudo python ./vxlan_tool.py --do=nsh_proxy -i eth1 -v on

Change-Id: I0a34cf5b68709c960218dfdf723a03f532d61305
Signed-off-by: Yi Yang <[email protected]>
8 years agoFixes for the SFC103 demo 95/52495/3
Brady Johnson [Wed, 1 Mar 2017 11:58:30 +0000 (12:58 +0100)]
Fixes for the SFC103 demo

- the recent Eth+NSH patch introduced a bug that broke the demo
- changing the Vagrantfile to use Ubuntu trusty, since wiley is not available
- Patch Set 3 : removing unecessary LOG

Change-Id: Ibcd2ea2f219bdc57d4d23257b7c58988dcf1e97a
Signed-off-by: Brady Johnson <[email protected]>
8 years agoChange from odl-genius to odl-genius-api dependences 01/50801/3
Diego Granados [Mon, 23 Jan 2017 11:43:38 +0000 (12:43 +0100)]
Change from odl-genius to odl-genius-api dependences

Both SFC openflow renderer & SFC classifier dependence on
feature "odl-genius" (added during logical SFF development)
is breaking SFC for classic (i.e. not cloud-based) deployments.
This is because depending on the odl-genius features has
the consequence of instructing the feature to start the
Genius-based application coexistance (e.g. to take ownership of table 0),
which is wrong for non-cloud scenarios.
This feature dependence has been changed to odl-genius-api, which
allows code dependences to be resolved without starting
Genius-based application coexistence.

Change-Id: I1eb0921e3c6358f3a142b950e6c09cdf91928916
Signed-off-by: Diego Granados <[email protected]>
8 years agoBUG 7182: remove M2E lifecycle mapping 34/52434/1
David [Tue, 28 Feb 2017 23:49:35 +0000 (00:49 +0100)]
BUG 7182: remove M2E lifecycle mapping

This is handled by odlparent.

Change-Id: Iaa87e5148c77b037e40e5c26ffbf6b1c7f2fa85a
Signed-off-by: David <[email protected]>
8 years agoChange package name to comply with Java checkstyle 82/52282/3
David [Mon, 27 Feb 2017 09:34:48 +0000 (10:34 +0100)]
Change package name to comply with Java checkstyle

Change the name of package sfc_ovs to ovs to comply with
Java checkstyle.

Change-Id: I1def343d28e8624e8b9dc0a585c2dff452748574
Signed-off-by: David <[email protected]>
8 years agoAdding Eth+NSH Transport 13/42313/11
Brady Johnson [Fri, 22 Jul 2016 12:39:36 +0000 (14:39 +0200)]
Adding Eth+NSH Transport

- Implementation for Vxgpe+NSH from classifier-SFF and SFF-SFF, but
  Eth+NSH from SFF-SF.
- The SFFs should have 2 DPLs, one for Vxgpe+NSH and another for Eth+NSH.
- Added SfcRspProcessorNshEth
- Added Unit tests in SfcOfFlowProgrammerTest and SfcOfRspProcessorTest
- Fixes for Code Review comments
- Fixed checkstyle violations
- Fixes for Unit Tests

Change-Id: Iecd0cf7dd9af3395202e809ceda1f2f728228232
Signed-off-by: Brady Johnson <[email protected]>
8 years agoAdd NSH proxy support for VPP renderder 44/52244/2
Yi Yang [Fri, 24 Feb 2017 12:00:21 +0000 (20:00 +0800)]
Add NSH proxy support for VPP renderder

vpp 17.01 and nsh_sfc 17.01 can act as a NSH proxy,
this commit enables VPP renderer to support NSH-unaware
Service Function, in that case, users need to specify
proxy data plane locator for this SF as below:

     "sf-data-plane-locator": [
         {
             "name": "firewall-1-dpl",
             "port": 4789,
             "ip": SF2_DP_IP,
             "transport": "service-locator:vxlan",
             "service-function-forwarder": "SFF2",
             "service-function-proxy:proxy-data-plane-locator": {
                  "port": 4790,
                  "ip": SF2_PROXY_DP_IP,
                  "transport": "service-locator:vxlan-gpe"
             }
         }
     ]

SFF will send VxLAN-gpe+NSH packet to NSH proxy specified by
proxy data plane locator, NSH proxy will send VxLAN+Ethernet
to SF, NSH proxy maintains VxLAN-gpe+NSH to VxLAN+Ethernet
mapping table in order that SFF will get correct VxLAN-gpe+NSH
packets from NSH proxy.

Change-Id: If3ecc82afd6b38142b143e43f541a270f4caa470
Signed-off-by: Yi Yang <[email protected]>
8 years agoFix issues related to checkstyle compliance 75/52275/1
David [Sun, 26 Feb 2017 18:16:11 +0000 (19:16 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-openflow-utils:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Exception catching
- Enforcement in pom.xml

Change-Id: I0679a193d3efdca9a9fc1b01dd49c3fdd8459941
Signed-off-by: David <[email protected]>
8 years agoChange package name to comply with Java checkstyle 40/52240/1
David [Fri, 24 Feb 2017 09:49:59 +0000 (10:49 +0100)]
Change package name to comply with Java checkstyle

Change the name of package transactional_writer to writer to comply with
Java checkstyle.

Change-Id: Iad481e329815db75783c46e8eae5392ec6bacce6
Signed-off-by: David <[email protected]>
8 years agoDocker environment + SFC e2e traffic tests 45/49745/24
eceabpe [Mon, 13 Feb 2017 15:47:25 +0000 (16:47 +0100)]
Docker environment + SFC e2e traffic tests

-Add some updates to 'dovs' utility (that simulates neutron networks)
-Add tools to test end to end traffic for Service Function Chaining
with NSH in Logical-SFF configurations
-Add a Simple Service Function HTTP Header Enrichment (with its own tests)
-Add brief documentation (README.asciidoc files)
-Add Test cases see below

Example demo for testing the Logical SFF end-to-end SFC traffic
-Start the Controller (e.g. that run on 172.28.128.3)
-Start the 'dovs' environment:
cd sfc-test/sfc-docker/
vagrant destroy -f && vagrant up && vagrant ssh
> cd /vagrant/sf_hhe/logical_sff

A. SFs in a DIFFERENT subnets
-1 Test traffic in two Service Function Chains
> sudo ./test_case_01_traffic_different_subnet.sh -o 172.28.128.3
-2 Test traffic in one Service Function Chain
 + Test traffic after moving one VM to other compute node
> sudo ./test_case_02_move_vm_different_subnet.sh -o 172.28.128.3

B. SFs in the SAME subnet
-3 Test traffic in two Service Function Chains
> sudo ./test_case_03_traffic_same_subnet.sh -o 172.28.128.3
-4 Test traffic in one Service Function Chain
 + Test traffic after moving one VM to other compute node
> sudo ./test_case_04_move_vm_same_subnet.sh -o 172.28.128.3

- Clean the network topology in 'dovs'
> sudo dovs clean --odl 172.28.128.3

Executing tests from A and B requires restart ODL Controller and dovs

-There are many logs that will be stored in ./logs
(e.g. To see TCP packages in client of first Chain for test case 01
 > tcpdump -qns 0 -A -r ./logs/client1_tcpdump.pcap tcp )

- Check SFC configuration
> ./GetSfcConfig.py -v -ip 172.28.128.3

Change-Id: Idf02270444eb52597a4921563374e6876b5959cf
Signed-off-by: eceabpe <[email protected]>
8 years agoFix issues related to checkstyle compliance 93/52193/1
David [Wed, 22 Feb 2017 23:46:22 +0000 (00:46 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-ios-xe-renderer:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use

Change-Id: I553c598839513c6c651527561e669df39e0e2779
Signed-off-by: David <[email protected]>
8 years agoClean up and fix RSP and service classifier remove issues 91/52091/2
Yi Yang [Tue, 21 Feb 2017 02:51:11 +0000 (10:51 +0800)]
Clean up and fix RSP and service classifier remove issues

When a RSP is removed, the corresponding vpp configuration
should be removed and cleaned up, vpp classifier configuration
also should be removed correctly after a service classifier
is removed.

This patch makes sure the related VxlanGpe ports, nsh entries,
nsh maps, vpp classify tables and vpp classify sessions are
removed and cleaned up after RSP or service classifier is
removed.

Change-Id: I9c10d8ce8275f90d5196f2974572307011269db1
Signed-off-by: Yi Yang <[email protected]>
8 years agoRemove overall checkstyle activation in SFC 32/52132/2
David [Tue, 21 Feb 2017 23:11:57 +0000 (00:11 +0100)]
Remove overall checkstyle activation in SFC

The overall checkstyle activation is not defined locally
in the specific projects as SFC anymore, but in the odlparent's POM.

This patch remove the local files stored in the
sfc-parent directory referenced by some modules like
the sfc-network-topology-utils.

The actual enforcement will be done on a per-module
basis, as in the following:

https://git.opendaylight.org/gerrit/#/c/51040/2/sfc-netconf/pom.xml

Change-Id: I9f742b83240f2055f352e71c64984f04b92563e1
Signed-off-by: David <[email protected]>
8 years agoFix issues related to checkstyle compliance 20/52120/1
David [Tue, 21 Feb 2017 16:02:07 +0000 (17:02 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use

Change-Id: I8972b29436b8710777c2680347a1f52aaded1c8e
Signed-off-by: David <[email protected]>
8 years agoFix issues related to checkstyle compliance 61/52061/2
David [Mon, 20 Feb 2017 08:14:20 +0000 (09:14 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use

Change-Id: I53b97f7709885629496f5f261bb017353a232ce2
Signed-off-by: David <[email protected]>
8 years agoMerge "Fix issues related to checkstyle compliance"
Yi Yang [Mon, 20 Feb 2017 00:51:17 +0000 (00:51 +0000)]
Merge "Fix issues related to checkstyle compliance"

8 years agoFix issues related to checkstyle compliance 11/52011/1
David [Fri, 17 Feb 2017 18:18:54 +0000 (19:18 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use

Change-Id: If486916d2236a3f463e5a17fc94d68a253d13c49
Signed-off-by: David <[email protected]>
8 years agoAdd VPP classifier 42/51542/3
Yi Yang [Fri, 17 Feb 2017 04:06:07 +0000 (12:06 +0800)]
Add VPP classifier

From vpp, honeycomb, hc2vpp and nsh_sfc 17.01 on,
vpp can act as sfc classifier as ovs-dpdk did before,
this patch adds a new classifier sfc-scf-vpp, it can
translate IETF ACLs into vpp classify tables and
sessions. With this commit, sfc can achieve NSH-based
service function chaining only based on vpp instead ovs,
this makes people have another choice to do service
function chaining.

By the way, NSH implementation has been part of vpp
releases, so we needn't any extra patch for NSH.

Change-Id: I8fe1bc5144140a0c378b87bef884ca49ba9223a8
Signed-off-by: Yi Yang <[email protected]>
8 years agoFix issues related to checkstyle compliance 95/51895/1
David [Wed, 15 Feb 2017 09:47:11 +0000 (10:47 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use

Change-Id: I732f5f0141923756894919982dfc3938249717a5
Signed-off-by: David <[email protected]>
8 years agoMerge "Fix issues related to checkstyle compliance"
Brady Johnson [Fri, 10 Feb 2017 11:30:18 +0000 (11:30 +0000)]
Merge "Fix issues related to checkstyle compliance"

8 years agoMerge "Fix issues related to checkstyle compliance"
Brady Johnson [Fri, 10 Feb 2017 11:30:09 +0000 (11:30 +0000)]
Merge "Fix issues related to checkstyle compliance"

8 years agoMerge "Delete SFF VXGPE port upon SFF deletion"
Yi Yang [Fri, 10 Feb 2017 10:58:54 +0000 (10:58 +0000)]
Merge "Delete SFF VXGPE port upon SFF deletion"

8 years agoFix issues related to checkstyle compliance 54/51654/2
David Suarez [Thu, 9 Feb 2017 20:46:49 +0000 (21:46 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Group overloaded methods
- Remove redundant modifiers: public in interface methods, final, etc.
- Move variable declarations to be closer to their usage

Change-Id: Ic997732b525d3397532650282a13d1d742c50d3b
Signed-off-by: David Suarez <[email protected]>
Change-Id: Ibae8e1e15156d51c37ff9b152eb8081f89545d21
Signed-off-by: David Suarez <[email protected]>
8 years agoFix issues related to checkstyle compliance 33/51633/3
David Suarez [Thu, 9 Feb 2017 14:43:29 +0000 (15:43 +0100)]
Fix issues related to checkstyle compliance

Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Group overloaded methods
- Remove redundant modifiers: public in interface methods, final, etc.
- Move variable declarations to be closer to their usage

Change-Id: Ic997732b525d3397532650282a13d1d742c50d3b
Signed-off-by: David Suarez <[email protected]>
8 years agoChange package name to comply with checkstyle 56/51656/1
David Suarez [Thu, 9 Feb 2017 22:44:15 +0000 (23:44 +0100)]
Change package name to comply with checkstyle

Change package name to comply with checkstyle rules and other minor
changes to follow its rules.

Change-Id: Id82b4513f49dd9f09b3b1be74c323d6b29ac0e60
Signed-off-by: David Suarez <[email protected]>
8 years agoDelete SFF VXGPE port upon SFF deletion 99/50499/5
Brady Johnson [Fri, 13 Jan 2017 11:19:50 +0000 (12:19 +0100)]
Delete SFF VXGPE port upon SFF deletion

- Added sfc_ovs/provider/listener unit tests

Change-Id: I82ddda7319957fea390aeef2ddace367e3d30be1
Signed-off-by: Brady Johnson <[email protected]>
8 years agodocker environment to test sfc 91/49691/26
Jaime Caamaño Ruiz [Wed, 21 Dec 2016 11:11:48 +0000 (12:11 +0100)]
docker environment to test sfc

This directory provides:

- An utility, 'dovs', to setup neutron networks where compute nodes
  are containerized openvswitch instances and VMs are isolated network
  namespaces connected to such instances.
- A vagrant driven virtual environment prepared to run dovs

The plan is to further add utilities to test SFC on top of this
environment, and will also be used for CSIT SFC.

Change-Id: Ife8357d50b7df43400504d9bd602ff9afd1b88a7
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
8 years agoMerge "Bug 3712: SFP validation of SF types at creation time"
Brady Johnson [Tue, 7 Feb 2017 08:24:14 +0000 (08:24 +0000)]
Merge "Bug 3712: SFP validation of SF types at creation time"

8 years agoMinor changes in sfc-genius module to comply with checkstyle 92/51492/1
David Suarez [Mon, 6 Feb 2017 23:44:30 +0000 (00:44 +0100)]
Minor changes in sfc-genius module to comply with checkstyle

Minor changes in sfc-genius module to comply with checkstyle.

Change-Id: I549b89f7717181906c925dad3b2baff6ca2720f2
Signed-off-by: David Suarez <[email protected]>
8 years agoBug 3712: SFP validation of SF types at creation time 59/50559/10
Diego Granados [Mon, 16 Jan 2017 10:58:39 +0000 (11:58 +0100)]
Bug 3712: SFP validation of SF types at creation time

This commit makes use of DOMDataTreeCommitCohorts (callbacks
that can be registered in order to participate in commit
validation) in order to make sure that newly-added datastore
SFPs are consistent with previously defined SFCs and SFs.
Specifically, it is checked that the types for the SFs the
SFP references are consistent with the SF types that the
SFC specifies.

Since the datastore commit transaction is kept open during
validation, this validation must be as fast as possible.
Controller guidelines about not opening new datastore
reads in order to validate a DS write have been followed
to the maximum extent; for this reason, a datastore cache
has been deployed to cover both SFs and SFCs. On systems
with less than 500 SFs & SFCs deployed, caches will provide
total coverage (i.e. validation will never need to access
datastore)

Testing: manually tested (complex interactions between
controller-mdsal-scf are too hard to simulate). Proper CSIT
tests will be delivered to the sfc suites in the integration
project.

Change-Id: I5886d0be9191043aa8227c242a1498e518b31a38
Signed-off-by: Diego Granados <[email protected]>
8 years agoUpdate vpp YANG models to 17.01 release 70/51070/2
Yi Yang [Thu, 26 Jan 2017 13:28:46 +0000 (21:28 +0800)]
Update vpp YANG models to 17.01 release

Change-Id: I77f7e6e3e4508d49ff57dc0d36f9998546386bc2
Signed-off-by: Yi Yang <[email protected]>
8 years agoRename sfc-ios-xe-renderers packages to comply with checkstyle 15/51315/2
David Suarez [Wed, 1 Feb 2017 22:40:12 +0000 (23:40 +0100)]
Rename sfc-ios-xe-renderers packages to comply with checkstyle

Rename sfc-ios-xe-renderers packages to comply with checkstyle.

Change-Id: Ida04fae3ddba129564e76aedb989e8415f6153ab
Signed-off-by: David Suarez <[email protected]>
8 years agoBug 7554: Update GUI after deprecating nsh-aware in SF and other changes in model 52/50552/2
eabasan [Tue, 17 Jan 2017 14:48:51 +0000 (15:48 +0100)]
Bug 7554: Update GUI after deprecating nsh-aware in SF and other changes in model

After the following commits, GUI should be updated:
1) https://git.opendaylight.org/gerrit/#/c/49687/
   Removing deprecated SF fields (nsh-aware)
2) https://git.opendaylight.org/gerrit/#/c/49546/
   Deprecating the SFC and RSP symmetric flags

Change-Id: I994d70878ff5d6f71aca54b338076df9bf2d3a05
Signed-off-by: eabasan <[email protected]>
8 years agoSFC Proof of Transit SB changes. 36/49636/14
Srihari [Tue, 20 Dec 2016 09:44:44 +0000 (15:14 +0530)]
SFC Proof of Transit SB changes.

1. Add changes to handle RPC trigger to generate PoT configuration.
2. Add timer wheel and configuration refresh related timer code.
3. Add core SFC PoT configuration generation APIs
4. Utilities for listening to node arrivals and sending via NETCONF
5. Add unit tests.
6. Design guide and documentation: https://github.com/CiscoDevNet/iOAM

Change-Id: Ibfcf98509c91d8e9d0c20c741e08813c0ab19ef8
Signed-off-by: Srihari <[email protected]>
8 years agoUse operational for DPN term. service actions 67/50667/5
Jaime Caamaño Ruiz [Mon, 16 Jan 2017 18:01:05 +0000 (19:01 +0100)]
Use operational for DPN term. service actions

Remove in-memory handling of DPNs for terminating service actions.
Replace with listener for changes on the existing DPN to RSP map
already available on operationa data store
(service-function-forwarder-logical.yang, dpnid-rsps grouping).

In detail:

- Main module interface has been moved and renamed, from
  impl/handlers/ISfcGeniusInterfaceServiceHandler to
  impl/SfcGeniusServiceManager. This is because the module
  is no longer centered on interface events as it now responds
  to DPN related events.
- SfcGeniusServiceManager has two new methods, bindToNode and
  unbindFromNode, to create and remove the SFC terminating service
  action on the nodes.
- SfcGeniusServiceManager no longer has an interfaceStateDown method
  which only purpose was to remove the SFC terminating service action
  on VM migration. Note that now this is delayed up until the VM
  migration completes: interfaceStateUp on a new Node triggers
  the re-rendering of the appropiate RSPs which updates the map
  of DPN to RSP, which in turn triggers the removal and creation
  of the SFC service terminating action on the appropiate nodes.
- A new listener, SfcGeniusSffDpnStateListener, that in response
  to changes on the DPN to RSP map, will trigger SFC service
  binding or unbinding towards the DPN.

Change-Id: I2cfe36fadedba619ed959ba6e3c6533787a88be4
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
8 years agoAct on sonar reported issues / technical debt 61/51261/5
Miguel Duarte [Mon, 30 Jan 2017 14:14:39 +0000 (15:14 +0100)]
Act on sonar reported issues / technical debt

Stop using the 'order' local variable in the SfcOfFlowProgrammerImpl
methods; since we're only appending the action to the action list, I
think it is more explicit / less error-prone to indicate the 'order' as
the current-list size (always append to the end of the list)

The configureNshNscTransportEgressFlow in the SfcOfFlowProgrammerImpl
class had a bug; the next protocol was not deing correctly defined as
NSH - as a result, that action list only featured a single action, which
is to set the output port. Now it has an action setting the next
protocol to NSH, and another setting the output protocol.

Tests are updated accordingly.

Used a StringBuilder instead of a StringBuffer in the SfcOfRspProcessor
because the StringBuffer is thread safe, which, in this scenario only
leads to throttled performance.

Removed the TUN_GPE_NP_NSH constant from yet another class.

Change-Id: Ie66ba64f4ec015e97856da5289c19f10efdf3566
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoEnforce checkstyle in sfc-sfclisp module 64/51264/1
David Suarez [Tue, 31 Jan 2017 17:04:22 +0000 (18:04 +0100)]
Enforce checkstyle in sfc-sfclisp module

Checkstyle enforcement for sfc-sfclisp module:
- Remove commented blocks
- Formatting
- Lines length
- Re-factor switch
- Replace catching of generic exceptions
- Move overloaded methods
- Fix Javadocs
- Protected constructor for utility classes
- Order imports
- Change attributes names

Change-Id: I234ee2489051132dcd3e6a5ae8ff904b94cb89d8
Signed-off-by: David Suarez <[email protected]>
8 years agoEnforce checkstyle in sfc-genius module 92/51092/4
David Suarez [Thu, 26 Jan 2017 21:55:37 +0000 (22:55 +0100)]
Enforce checkstyle in sfc-genius module

Checkstyle enforcement for sfc-genius module
- Formatting
- Fix Javadocs
- Order imports
- Change attributes names
- Replace catching of generic exceptions
- Lines length
- Enforce rule in POM

Change-Id: I35df8a29ee0813ed43c92391115350fa174d71a7
Signed-off-by: David Suarez <[email protected]>
8 years agoLSFF Fix: add NSH as NP at SFF->SFF egress 80/51080/4
Diego Granados [Thu, 26 Jan 2017 17:39:47 +0000 (18:39 +0100)]
LSFF Fix: add NSH as NP at SFF->SFF egress

Also test changes

Change-Id: Iddde0e57654aa045b6c8a33108fdb75463157408
Signed-off-by: Diego Granados <[email protected]>
8 years agoEnforce checkstyle in sfc-netconf module 40/51040/2
David Suarez [Wed, 25 Jan 2017 22:42:02 +0000 (23:42 +0100)]
Enforce checkstyle in sfc-netconf module

Checkstyle enforcement for sfc-netconf module
- Protected constructor for utility classes
- Formatting
- Fix Javadocs
- Order imports
- Change attributes names
- Replace catching of generic exceptions
- Remove commented blocks

Change-Id: I84669eb8c62429ab3b6b3377da19f0e4cf95bcfa
Signed-off-by: David Suarez <[email protected]>
8 years agoReplace mockito-all by mockito-core (see Bug 7662) 54/50854/2
Michael Vorburger [Mon, 23 Jan 2017 18:53:22 +0000 (19:53 +0100)]
Replace mockito-all by mockito-core (see Bug 7662)

Change-Id: I884d88f940955788bf7d5f0194183e198c9fad0e
Signed-off-by: Michael Vorburger <[email protected]>
8 years agoSplit sfc-vpp-utils bundle from sfc-vpp-renderer for sfc-scf-vpp 00/50500/7
Yi Yang [Thu, 26 Jan 2017 11:39:21 +0000 (19:39 +0800)]
Split sfc-vpp-utils bundle from sfc-vpp-renderer for sfc-scf-vpp

sfc-scf-vpp (SFC VPP classifier) needs to use common APIs from
sfc-vpp-renderer, so split them as a single bundle sfc-vpp-utils
for sharing between sfc-vpp-renderer and sfc-scf-vpp (the following
commit will implement it).

Change-Id: I87e94e484cde388a8d62cee71d48e1ff0201cb11
Signed-off-by: Yi Yang <[email protected]>
8 years agoMerge "Rename package sfc_lisp to sfclisp to comply with checkstyle."
Yi Yang [Wed, 25 Jan 2017 00:48:21 +0000 (00:48 +0000)]
Merge "Rename package sfc_lisp to sfclisp to comply with checkstyle."

8 years agoRename packages to comply with checkstyle 73/50973/1
David Suarez [Tue, 24 Jan 2017 20:58:37 +0000 (21:58 +0100)]
Rename packages to comply with checkstyle

Rename packages to comply with checkstyle:
- org.opendaylight.sfc.sfc_netconf.provider to
  org.opendaylight.sfc.netconf.provider

- org.opendaylight.sfc.sfc_netconf.provider.api to
  org.opendaylight.sfc.netconf.provider.api.test

Change-Id: I6d5991e820bcebbafbd75e33587b303097f56eda
Signed-off-by: David Suarez <[email protected]>
8 years agoRename package sfc_lisp to sfclisp to comply with checkstyle. 99/50799/1
David Suarez [Sat, 21 Jan 2017 20:54:40 +0000 (21:54 +0100)]
Rename package sfc_lisp to sfclisp to comply with checkstyle.

Change package name to comply with checkstyle

Change-Id: I67b9d1d0430a55683eb6fa0647e0ad685dbeab2c
Signed-off-by: David Suarez <[email protected]>
8 years agoEnforce checkstyle in sfc-model module 53/50553/2
David Suarez [Tue, 17 Jan 2017 14:52:17 +0000 (15:52 +0100)]
Enforce checkstyle in sfc-model module

Checkstyle enforcement for sfc-model module.

Change-Id: I682caf74141441b04a4b34ae66de50b96cf1e8a0
Signed-off-by: David Suarez <[email protected]>
8 years agoBUG-7555. Crash on RSP rendering when using a Logical SFF 11/50511/4
Diego Granados [Mon, 16 Jan 2017 16:17:22 +0000 (17:17 +0100)]
BUG-7555. Crash on RSP rendering when using a Logical SFF

The bug was triggered because of the code uncorrectly comparing two
different DpnIdType objects using the == comparator. Even though
both objects refer to the same dpnid, the objects are not the same,
thus triggering the error path (asking genius for a tunnel interface
between two different compute nodes but passing the same dpnid for
both tunnel ends). Incorrect component tests corrected; an additional
test for the condition will also be included in CSIT

Change-Id: I98158145fc2e8b5ae72989d0d1ef3c7bcdaf7bd1
Signed-off-by: Diego Granados <[email protected]>
8 years agoMerge "Model changes for VXLAN transport/encap"
Yi Yang [Fri, 13 Jan 2017 00:33:35 +0000 (00:33 +0000)]
Merge "Model changes for VXLAN transport/encap"

8 years agoMerge "Clean the usage of boolean expressions"
Brady Johnson [Thu, 12 Jan 2017 11:31:37 +0000 (11:31 +0000)]
Merge "Clean the usage of boolean expressions"

8 years agoClean the usage of boolean expressions 95/50295/2
David Suarez [Wed, 11 Jan 2017 13:56:20 +0000 (14:56 +0100)]
Clean the usage of boolean expressions

Clean the usage of boolean expressions and other minor improvements for
readability.

Change-Id: Ieda16a49c71da3bdc61fc3f2722ab39aba4f6c25
Signed-off-by: David Suarez <[email protected]>
8 years agoModel changes for VXLAN transport/encap 41/50341/1
Brady Johnson [Thu, 12 Jan 2017 09:52:19 +0000 (10:52 +0100)]
Model changes for VXLAN transport/encap

- Added VXLAN transport
- Added single chain SF parameter

Change-Id: Ie2ed5eeffe80ad70bf60062301c12b7a560d0f2f
Signed-off-by: Brady Johnson <[email protected]>
8 years agoMake code more explicit and less redundant 81/49981/4
Miguel Duarte [Tue, 3 Jan 2017 10:36:25 +0000 (11:36 +0100)]
Make code more explicit and less redundant

  - Make better use of java types
  - Remove duplicated code
  - Remove compiler warnings

Change-Id: I133728bbfd97994fe3d7a335eddf4f9a4d461094
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoMerge "GUI - Add default redirect on app start"
Brady Johnson [Wed, 11 Jan 2017 14:04:14 +0000 (14:04 +0000)]
Merge "GUI - Add default redirect on app start"

8 years agoGUI - Add default redirect on app start 18/50218/3
Daniel Malachovsky [Tue, 10 Jan 2017 18:54:39 +0000 (19:54 +0100)]
GUI - Add default redirect on app start

Due Dlux split we removed Topology app from odl-dlux-core feature.
There were also default redirect to that app, so it was landing page, when
DLUX was started.
This patch adds default route to GUI in this project.

More info:
https://wiki.opendaylight.org/view/Weather#Rename_some_odl-dlux-.2A_features_to_odl-dluxapps-.2A

Change-Id: I025ffe3403392458207af0fea52b57af75bb22b0
Signed-off-by: Daniel Malachovsky <[email protected]>
8 years agoReplace Arrays.asList by Collections.singletonList. 75/50275/2
David Suarez [Wed, 11 Jan 2017 08:31:36 +0000 (09:31 +0100)]
Replace Arrays.asList by Collections.singletonList.

It is a minor performance improvement.

Change-Id: Ibdb6f42918551465e304735fde357aff2b36c9d8
Signed-off-by: David Suarez <[email protected]>
8 years agoMove sfc-scf-openflow into sfc-classifiers 72/50272/2
Yi Yang [Wed, 11 Jan 2017 07:38:04 +0000 (15:38 +0800)]
Move sfc-scf-openflow into sfc-classifiers

We want to add VPP classifier for sfc, so do this change to adapt to multiple sfc classifiers.

Change-Id: I43c9f5a2a423bb802be533a23161c42828696b6c
Signed-off-by: Yi Yang <[email protected]>
8 years agosfc104 demo: fix two issues led by proxy environment variable and recent sfc YANG... 65/50265/2
Yi Yang [Wed, 11 Jan 2017 05:45:48 +0000 (13:45 +0800)]
sfc104 demo: fix two issues led by proxy environment variable and recent sfc YANG model changes

Change-Id: Iab4e2515c56ef122bc114c3f9a343df954bdaefe
Signed-off-by: Yi Yang <[email protected]>
8 years agoMerge "Remove explicit type boxing."
Brady Johnson [Wed, 11 Jan 2017 11:58:49 +0000 (11:58 +0000)]
Merge "Remove explicit type boxing."

8 years agoRemove explicit type boxing. 11/50211/2
David Suarez [Tue, 10 Jan 2017 16:13:26 +0000 (17:13 +0100)]
Remove explicit type boxing.

Autoboxing is applied improving readability.

Change-Id: Ia3388c0e18d1d0b46a1e4bff7f680723b9d3e88e
Signed-off-by: David Suarez <[email protected]>
8 years agoAdd private constructor. 94/50194/2
David Suarez [Tue, 10 Jan 2017 13:53:20 +0000 (14:53 +0100)]
Add private constructor.

Add private constructor to utility class to avoid instantiation.

Change-Id: I194258e406cb3a1d691b7a26c0dcbc63f6de5b2f
Signed-off-by: David Suarez <[email protected]>
8 years agoRefactor the Classifier Processor classes. 11/49711/4
Miguel Duarte [Wed, 21 Dec 2016 15:15:55 +0000 (16:15 +0100)]
Refactor the Classifier Processor classes.

By making the flow generator classes return FlowDetails instead of
FlowBuilders, both the OpenflowClassifierProcessor and the
ClassifierRspsUpdateListener classes are simpler, since they are no
longer responsible of building the FlowDetails object.

The dpdk flow generation was also taken to the classes
implementing the ClassifierInterface (BareClassifier &
LogicallyAttachedClassifier), thus making the processAce simpler.

This enables the processAce and processAcl methods on those classes to
become simpler, thus reducing their cyclomatic complexity - overall
indicator of complexity.

Change-Id: I93af5fc075c19854e417452f62d3afb711c47c51
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoRemove technical debt from the project 10/49710/4
Miguel Duarte [Mon, 19 Dec 2016 10:21:52 +0000 (11:21 +0100)]
Remove technical debt from the project

Break package cycles between scfofrenderer,
scfofrenderer.logicalclassifier, and scfofrenderer.rspupdatelistener
packages.

This was found by analyzing the sonarcube results, and means that these
3 modules are tightly coupled. By restructuring the packages, the
circular dependencies are fixed.

Modified the OpenflowClassifierProcessor, attempting to make it simpler.
In a latter commit, its methods will be split, thus simplifying it quite
a lot.

Change-Id: I00b29c163edb6bdc72ee6c9d2fae7691211049c4
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoModified JSON files in resources to adapt them to deprecated fields in Service Functions 18/50118/3
eabasan [Mon, 9 Jan 2017 08:08:17 +0000 (09:08 +0100)]
Modified JSON files in resources to adapt them to deprecated fields in Service Functions
Added one configuration example using bidirectional field in SF type

Change-Id: I10d872873f6a1f56855788f159b5ac31ac8cf797
Signed-off-by: eabasan <[email protected]>
8 years agoMerge "Removing deprecated SF fields"
Yi Yang [Thu, 22 Dec 2016 00:12:38 +0000 (00:12 +0000)]
Merge "Removing deprecated SF fields"

8 years agoRemoving deprecated SF fields 87/49687/1
Brady Johnson [Thu, 10 Nov 2016 10:29:28 +0000 (11:29 +0100)]
Removing deprecated SF fields

- The SF fields nsh-aware and request-reclassification were
  deprecated in Beryllium. The fields were added to the
  SF-type, so use those instead.

Change-Id: I81d4b3fddd23fb68bed556f73b44c5e9fde7eff6
Signed-off-by: Brady Johnson <[email protected]>
8 years agoClassifier reacts to first SF location updates 44/49444/5
Miguel Duarte [Wed, 30 Nov 2016 11:42:39 +0000 (12:42 +0100)]
Classifier reacts to first SF location updates

Whenever the first SF in an RSP migrates to another compute node, the
classifier rules are updated accordingly - whether sending the packet
through a different tunnel connected to the new compute node, or, in
scenarios when the SF moved to the compute node where the classifier is
installed, by jumping directly to the SFC transport ingress table.

The helper methods on the OpenflowClassifierProcessor were moved into a
new class - ClassifierHandler.

The ClassifierRspUpdateDataGetter was finished, providing 2 methods:
  - filter all ACLs whose ACEs impact the supplied RSP
  - filter all ScfClassifier objects that implement those ACLs

The ClassifierRspsUpdateListener was added logic on how to identify the
movement of the first SF in any RSP, and also triggers the classifier
flows update through the ClassifierRspUpdateProcessor.

The ClassifierRspUpdateProcessor follows the same principle of the
OpenflowClassifierProcessor - build all the flows to be installed. A new
class was created to separate the concerns (classifier updates have the
RSP as its single argument, whereas classifier add/delete have the ACL
and the ScfClassifier objects as arguments).

Everything else are tests (+- 600 lines)

Change-Id: I487d98d282b28aefd79d0658fcc50e20897beffa
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoMerge "Deprecating the SFC and RSP symmetric flags"
Yi Yang [Wed, 21 Dec 2016 08:34:09 +0000 (08:34 +0000)]
Merge "Deprecating the SFC and RSP symmetric flags"

8 years agoHandle RSP updates on the classifier APIs 59/49359/4
Miguel Duarte [Wed, 14 Dec 2016 10:11:27 +0000 (11:11 +0100)]
Handle RSP updates on the classifier APIs

The APIs leveraged by the classifier were changed enabling it to update
its flows when the first SF in an RSP migrates to another compute node.

New classes (to be implemented in the next commit):
  - ClassifierRspUpdateDataGetter
This class queries MD-SAL for all ACLs whose ACEs target the supplied
RSPs, and also queries MD-SAL for all Classifiers enforcing the filtered
ACLs.

  - ClassifierRspsUpdateListener
Identifies relevant RSP updates (RSPs whose 1st SF neutron port changed
data-plane IDs), and processes that RSP update - deleting the old
impacted flows, and creating new ones.

API changes:
  - OpenflowClassifierProcessor
The OpenflowClassifierProcessor now *has* a BareClassifier, and a
LogicallyAttachedClassifier object, injected through the constructor.

Which classifier(Bare vs LogicallyAttached) is used for each processed
request depends on the type of SFF to which it is connected to.

  - SfcNshHeader
The SfcNshHeader class now encapsulates an RSP object, which can be set
through a different constructor. Using this allows us to save DS reads
on RSP updates, since we are notified with the new object.

  - SfcScfOfProcessor
The SfcScfOfProcessor class got simpler, and now does not have to
encapsulate and inject the transaction object into the OpenflowWriter
and OpenflowClassifierProcessor.

  - SfcScfOfRenderer
The SfcScfOfRenderer class now also features an update handler for RSPs.
Also, it injects the required dependencies into the
OpenflowClassifierProcessor and OpenflowWriter objects, while making
them share the same transaction objects.

  - SfcOfFlowWriterInterface
The SfcOfFlowWriterInterface and its subclass now encapsulate an
EventBus, and expose a transactional API. Clients that want to share the
same transaction object as the OpenflowWriter register themselves, and
are notified whenever the OpenflowWriter commits a transaction.

Also, the FlowDetails class manipulated by the SfcOfFlowWriterInterface
now encapsulates the used RSP path ID, making it easier / more efficient
for the SfcOfFlowWriterInterface clients to delete a set of related
flows.

Log messages are tuned throughout the classifier code, along with the
used log levels.

Change-Id: I0d61f090bdfec2e58aa0e811988ea9cca32be66c
Signed-off-by: Miguel Duarte <[email protected]>
8 years agoDeprecating the SFC and RSP symmetric flags 46/49546/4
Brady Johnson [Fri, 11 Nov 2016 09:26:07 +0000 (10:26 +0100)]
Deprecating the SFC and RSP symmetric flags

- Chain symmetry is now a function of the SF-type bidirectionality flag
- The SFP symmetry flag, if present, will override the SF-type
  bidirectionality flag
- Minor cleanup of the SfcProviderRpcTest test

Change-Id: I1bbc3a368a28ad69169b640cc729ec69dd17180e
Signed-off-by: Brady Johnson <[email protected]>
8 years agoMerge "Add blueprint for sfc-genius module"
Brady Johnson [Wed, 14 Dec 2016 09:58:22 +0000 (09:58 +0000)]
Merge "Add blueprint for sfc-genius module"

8 years agoAdd unit test for logical SFF RSP Processor with SFs in different compute nodes 44/48244/6
eabasan [Fri, 11 Nov 2016 06:52:10 +0000 (07:52 +0100)]
Add unit test for logical SFF RSP Processor with SFs in different compute nodes

Change-Id: Ia74690c081ac514f5c765a207ab9cdb0abcf6ae7
Signed-off-by: eabasan <[email protected]>
8 years agoAdd blueprint for sfc-genius module 08/49308/3
Jaime Caamaño Ruiz [Tue, 13 Dec 2016 16:10:55 +0000 (17:10 +0100)]
Add blueprint for sfc-genius module

Change-Id: Id311dbaca587419fb99217ffba128eb06eba76d4
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
8 years agoBUG 7350: NullPointerException when creating RSP without any topology node connected 88/49288/1
Diego Granados [Tue, 13 Dec 2016 10:08:49 +0000 (11:08 +0100)]
BUG 7350: NullPointerException when creating RSP without any topology node connected

The bug is triggered when looking for a dpdk port during RSP
rendering. An unchecked-for-null iteration is performed in
the topology nodes list. Now the list of nodes is checked
for null before iterating

Change-Id: I8ba5e7532bb34ac1d941ad1761cc1e6601d7020f
Signed-off-by: Diego Granados <[email protected]>
8 years agoBUG 7204 : Typo in method names of sfc-vnfm-tacker 69/48469/3
venkatamahesh [Fri, 18 Nov 2016 10:30:19 +0000 (16:00 +0530)]
BUG 7204 : Typo in method names of sfc-vnfm-tacker

There is a typo in method names of sfc-vnfm-tacker
In this patch it is changed accordingly

Change-Id: I5f2b66979ce9944cb753d68a124b91024cc8c30c
Signed-off-by: venkatamahesh kotha <[email protected]>
8 years agoBUG 4221 When deleting a RSP remove symmetric path if necessary 79/48879/5
eceabpe [Thu, 1 Dec 2016 15:24:19 +0000 (16:24 +0100)]
BUG 4221 When deleting a RSP remove symmetric path if necessary

Solution and Unit Test for:
Bug 4221 - When deleting a RSP need to remove symmetric path if it exists

Change-Id: I0466a357eb39b5229ee2f7769285f7184f421bbc
Signed-off-by: eceabpe <[email protected]>
8 years agoUpdates to SFC Proof of Transit feature. 66/48766/7
Srihari Raghavan [Tue, 29 Nov 2016 09:17:46 +0000 (14:47 +0530)]
Updates to SFC Proof of Transit feature.

1. Add RPC trigger to enable SFC Proof of Transit feature.
2. Add changes to handle RPC trigger to enable the feature.
3. Augmentation updates to RSP.
4. Add unit tests to verify the changes.
5. Design guide and documentation: https://github.com/ciscoDevNet/iOAM

Change-Id: I195c9b83fb16a5789eab704b862dc918a110344b
Signed-off-by: Srihari Raghavan <[email protected]>
8 years agoRemove sfc-provider-impl capability from sfc-test-consumer-initial.xml 47/49247/1
Vratko Polak [Mon, 12 Dec 2016 15:02:52 +0000 (16:02 +0100)]
Remove sfc-provider-impl capability from sfc-test-consumer-initial.xml

sfc-provider-impl has been migrated to Blueprint,
so the capability will never appear.

Change-Id: Id14ea9529e8928815fd8f933298bc3f34acfae9f
Signed-off-by: Vratko Polak <[email protected]>
8 years agoRemove sfc-bootstrap module 20/49120/3
David Suarez [Wed, 7 Dec 2016 23:47:58 +0000 (00:47 +0100)]
Remove sfc-bootstrap module

Since SFC is already using Blueprint as dependency injection framework,
the sfc-bootstrap module is not needed anymore.

Change-Id: I2e16c4fe6994c54c8b640d3a18c46a9374136b50
Signed-off-by: David Suarez <[email protected]>
8 years agoBUG 7269: System Info tab,no data displayed 68/49168/2
Alberto Quintana Heras [Fri, 9 Dec 2016 07:24:39 +0000 (08:24 +0100)]
BUG 7269: System Info tab,no data displayed

Added parameter to call SfcRestangularSvc.getCurrentInstance().oneUrl
When enter to System Info tab, debugging javascript, an error
is displayed in the console.

Change-Id: Ic86186e0fd89cfbee01cab8db7a3b8864ef1a6cb
Signed-off-by: Alberto Quintana Heras <[email protected]>
8 years agoMerge "Fix clearly badly broken Blueprint wiring"
Brady Johnson [Fri, 9 Dec 2016 08:51:30 +0000 (08:51 +0000)]
Merge "Fix clearly badly broken Blueprint wiring"