Transport PCE¶
Overview¶
Transport PCE is an OpenDaylight controller feature whose primary function is to control high rate transport services. To that end, it controls the infrastructure of an optical transport network using a non-proprietary South Bound Interface (SBI).
The controlled transport infrastructure includes a WDM (Wave Division Multiplexing) layer and an OTN (optical transport network) layer. The WDM layer is built from ROADMs (reconfigurable optical add-drop multiplexer) with colorless, directionless and contention-less features. The OTN layer is built from transponders, muxponders or switchponders which include OTN switching functionalities.
Transport PCE leverages OpenROADM Multi-Source-Agreement (MSA), which defines interoperability specifications, consisting of both optical interoperability and YANG data models.
The TransportPCE implementation includes:
Feature |
Description |
---|---|
Northbound API |
These APIs are for higher level applications, implemented in the Service Handler bundle. It relies on the service model defined in the MSA. A minimal experimental support of TAPI topology is also proposed but is not installed by default. |
Renderer and OLM |
The renderer and OLM (Optical Line Management) bundles allow configuring OpenROADM devices through a southbound NETCONF/YANG interface (based on the MSA device models). This release supports the OpenROADM devices version 1.2.1 version 2.2.1. |
Topology Management |
This feature is based on the defined MSA network model. |
Path Calculation Engine (PCE) |
PCE here has a different meaning than the BGPCEP project since it is not based on (G)MPLS. This bundle allows to compute path across the topology to create services. Impairment aware path computation can be delegated to a GNPy server (hardcoded server address configuration and limited support at that time) |
Inventory |
This feature is not installed by default. It proposes an experimental support for an external inventory DB currently limited to 1.2.1 OpenROADM devices. |
The internal RPCs between those modules are defined in the Transport Service Path models.
Behavior/Feature Changes¶
Potassium GA release follows an important refactoring work that has improved the maintainability of many code pieces (first implementation of the Catalog, functional tests, verification of the lighty.io build needed after the removal of all blueprint xml files of the projet, etc). From a business point of view, Potassium brings the following new functionalities: - ability to create a 400Gbps service between add/drop ports of a ROADM using the openroadm ‘OC’ service format - migration of OpenROADM network and service yang models from version 10.1 to the latest 13.1 - the start of the developement of a big epic: the Alien Wavelength Use Case. To that end, Potassium covers testing and resolved issues related to the implementation of the ‘temp-service’ within TransportPCE.
Changes planned in Potassium release stream¶
The Netconf device simulator used until now to perform TransportPCE functional tests (honeynode, based on the archived fd.io/honeycomb project) becomes difficult to maintain. It will eventually be replaced by lightynode, optical device emulator developped over the lighty-netconf-simulator proposed by PANTHEONtech (https://github.com/PANTHEONtech/lighty-netconf-simulator/tree/main). With Potassium GA, part of TransportPCE functional tests have migrated towards this new netconf device emulator. However, Potassium release stream will finalyze this TransportPCE functional test migration from honeynode towards lightynode.
New Features¶
No new feature as such in Potassium.
Deprecated Features¶
There are no deprecated or removed features.
Resolved Issues¶
The following table lists the issues resolved in this release.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
---|---|---|---|---|
Swagger broken in stable/potassium and stable/chlorine |
Won’t Do |
Potassium |
||
Use Lightynode simulator for functional tests |
Done |
Calcium, Potassium |
||
Already existing temp-service should not be recreated |
Done |
Potassium |
||
Fix temp-service-delete |
Done |
Potassium |
||
Temp-service-list update |
Done |
Potassium |
||
Bug in freq-map topology update |
Done |
ArgonSR2, Potassium |
||
Add if-cap support for IfOTU4ODU4 in 7.1 portmapping |
Done |
ArgonSR2, Potassium |
||
OLM fails when 7.1 OR model TPDR used for 100G |
Done |
ArgonSR2, Potassium |
||
Enable 400G rate for OC service-format |
Done |
ArgonSR1, Potassium |
||
karaf client fails in karaf-4.3.8 and 4.4.2 |
Done |
Potassium |
||
Use components whenever possible |
Done |
Potassium |
||
Declare SuppressFBWarnings in imports |
Done |
ArgonSR3, Potassium |
||
Update Ligthy baseUrl to RFC8040 |
Done |
ArgonSR1, Chlorine, Potassium |
||
Upgrade network and service models to the latest version (13.1.0) |
Done |
Potassium |
||
Fix Java version check in installMavenCentOS.sh |
Done |
Potassium |
||
Alien Wavelength Use case (RNC code) |
Done |
Potassium |
||
Refactor checkOSNR in pce |
Done |
Argon, Potassium |
||
Functional tests for 100G wavelength services with mixed OpenROADM models |
Done |
Potassium |
||
Functional tests for rendering regenerator interfaces |
Done |
ArgonSR1, Potassium |
||
Addition of regen-profiles in port-mapping |
Done |
Argon, Potassium |
Known Issues¶
The following table lists the known issues that exist in this release.
Type |
Key |
Summary |
Status |
Affected Version(s) |
Fix Version(s) |
---|---|---|---|---|---|
PCE may select the wrong path instead of selecting the one selected by GNPy |
Verified |
Potassium |
Calcium, PotassiumSR1 |
||
PCE picks the wrong client ports |
Verified |
Potassium |
ArgonSR3, Calcium, PotassiumSR1 |
||
Creation of an OC service at 200Gbps fails |
Verified |
Argon, Calcium, Potassium |
ArgonSR3, Calcium, PotassiumSR1 |
||
Renderer rollback does not work |
Verified |
Potassium |
Calcium, Phosphorus |
Resolved Issues in SR1¶
The following table lists the issues resolved in Service Release 1.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
---|---|---|---|---|
Port mapping problem for 7.1 transponders with client ports |
Done |
PotassiumSR1 |
||
PCE may select the wrong path instead of selecting the one selected by GNPy |
Done |
Calcium, PotassiumSR1 |
||
PCE picks the wrong client ports |
Done |
ArgonSR3, Calcium, PotassiumSR1 |
||
Creation of an OC service at 200Gbps fails |
Done |
ArgonSR3, Calcium, PotassiumSR1 |
||
Error compiling odl-transportpce-inventory feature with karaf-4.4.4 |
Done |
ArgonSR3, PotassiumSR1 |
||
Do not return null for registered RPCs |
Done |
Calcium, PotassiumSR1 |
||
Bump the jgrapht upstream dependency to the latest one |
Done |
Calcium, PotassiumSR1 |
||
Optimize functional test execution |
Done |
ArgonSR3, Calcium, PotassiumSR1 |
||
NBI notification support for service-result-rpc |
Done |
PotassiumSR1 |
Known Issues in SR1¶
The following table lists the known issues that exist in Service Release 1.
Resolved Issues in SR2¶
The following table lists the issues resolved in Service Release 2.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
---|---|---|---|---|
Remove code that is never used |
Done |
PotassiumSR2 |
||
Manage K-SR2 release |
Done |
PotassiumSR2 |
||
Add openconfig models in transportpce-models repo |
Done |
Calcium, PotassiumSR2 |
||
Don’t use NotificationListener in TRANSPORTPCE components |
Done |
PotassiumSR2 |
Known Issues in SR2¶
The following table lists the known issues that exist in Service Release 2.