tdjam Feature for Tosca-Driven Control Loops

Tosca-Driven Java Model (tdjam) is a new feature that allows for implementation of control loops exclusively using the Java framework including the new actor model.

JIRA:  POLICY-2409: Create tdjam (TOSCA Driven Java Model) for control loopsClosed

High-Level Presentation:  https://wiki.onap.org/download/attachments/84648019/ONAP%20ATT%20Policy%20Drools%20Guilin%20Contribution.pptx?api=v2

Deep-Dive Presentation:  https://lf-onap.atlassian.net/wiki/download/attachments/16426095/TdjamDeepDive.pptx?api=v2

Deep-Dive Recording:  https://wiki.onap.org/download/attachments/84648019/ONAP%20Policy%20Guilin%20tdjam%20Deep%20Dive-20200519%201403-1.mp4?api=v2 (Recording password: 22vMTmdZ)

Overview

In order to streamline control loop operation, we are contributing a feature to allow for a pure Java based control loop implementation using the same TOSCA client created specification.  This will achieve many benefits including:

  • Remove reliance on Drools for TOSCA defined loops

  • Improve performance and scalability

  • Improve maintainability

  • Avoid limitations of Drools including single-threaded nature and memory constraints

  • Next generation of m1 and m2 predecessor models, building on our experience with those models

  • Fully integrated with the new ONAP actor framework

  • Transparent infrastructure change, no client impact

Design

Some design considerations include:

  • Reducing/removing the use of frankfurt.drl for tdjam

  • Refactoring/generalizing controller code to support Drools and non-Drools controllers

Next Steps

  • Create Java layer to eliminate Drools entirely

  • Develop tdjam layer on top of actor model

  • Finalize deployment implementation

  • Test extensively with server pool and tosca flow

  • Test extensively with guards and CLC

  • Update ONAP use cases to use new converged approach