Skip to content

sdx-controller v3.0.0-alpha

Pre-release
Pre-release

Choose a tag to compare

@YufengXin YufengXin released this 15 Nov 01:37
· 34 commits to main since this release
122f59c

What's Changed

This release note covers the most relevant changes across the other three repos in the SDX Middleware Software system: sdx-LC, PCE, and Datamodel.

Major New Features

1. Conformity to the latest AW-SDX data model specification: Topology Data Model Specification 2.0.0 and Service Provisioning Data Model Specification 1.0

2. L2VPN Provisioning workflow enhancement in reliability, performance, fault tolerance, and resource (vlan and bandwidth) management.

2.1 Formalized the lifetime state machine of L2VPN connections and implemented it in the datamodel library. This included defining the:

2.2 Completed the L2VPN provisioning workflow across the sdx-controller, sdx-lc, and oxp sub-systems with correct API calls and response counting for the connection state transition.

2.3 Enhanced the OXP topology update handling to account for the resource and status change events in ports and links. Implemented failure handling to deal with OXP topology port failure on top of the existing link failure handling in both inter- and intra-OXP cases. The functions are located in the PCE library (https://github.com/atlanticwave-sdx/pce)

2.5 Implemented provisioning function on the same switch.

3. AW-SDX Middleware enhancement in reliability and fault-tolerance

3.1 Thread-safe, synchronization, and communication performance enhancements across the distributed subsystems.

3.2 Crash-safe SDX-controller restart to account for existing connections and resource usage

3.3 Message queue reliability and security enhancements

3.4 MongoDB reliability and security enhancements

4. Implemented a pluggable XOP provisioning system client mechanism in sdx-LC (https://github.com/atlanticwave-sdx/sdx-lc).

https://sdx-docs.readthedocs.io/en/latest/sdx_lc_oxp.html

Now sdx-lc supports both aw-sdx datamodel-compliant and non-compliant OXPs

An example implementation of an OXP client for the DoE SENSE system (https://sense.es.net/sdn-for-end-to-end-networked-science-at-the-exascale-sense) can be found in the repo https://github.com/atlanticwave-sdx/sense-sdx.

**5. End-to-end system emulation testing Jupyter notebooks **
Some examples to use the NSF FABRIC for the test can be found in this repo:

https://github.com/atlanticwave-sdx/sdx-jupyter-notebooks

6. Software engineering and CI/CD
6.1 unitest: tox-based automatic virtual system testing
6.2 Implementation of GitHub Action-based CI/CD workflow, including the PR process.
6.3 Updated Dockerfile and automated image publication to Docker Hub

7. Automated software document publication
https://sdx-docs.readthedocs.io/en/latest/
https://github.com/atlanticwave-sdx/sdx-docs

What's Changed in the code

1. SDX-Controller API endpoint changes: compliant with Topology Data Model Specification 2.0.0, enhanced failure handling.
2. SDX-Controller MongoDB changes: save data as MongoDB compatible raw JSON objects.
3. Message queue changes: enable password authentication
4. sdx-lc changes (see sdx-lc release notes: https://github.com/atlanticwave-sdx/sdx-lc/releases)
5. pce changes (see pce release notes: https://github.com/atlanticwave-sdx/pce/releases)
6. datamodel changes (see data model release notes: https://github.com/atlanticwave-sdx/datamodel/releases)
7. Other improvements and bug fixes

Reference: Closed PRs

New Contributors

Full Changelog: 2.0.0...3.1.0.dev5