NSSI Selection

Sequence diagram

Interfaces

  1. NSSI selection Request

    1. Input: Slice profile

    2. NSST details

  2. Fetch Optimization policies

    1. Demand policy for NSSI

    2. Constraint policies for Selection

    3. Optimization policies for NSSI selection.

  3. NSSI selection request - HAS

    1. Demand: NSSI

    2. Constraint: Threshold policy, New policy(for CoverageArea )??

    3. Optimization: Maximize/minimize the service profile parameters

  4. Fetch NSSI for AAI

    1. Input: NSST info

    2. Output: List of NSSIs as candidates

  5. Run Optimization

  6. Consolidated Solution based on the policy

    1. Solution List. Solution object can have NSSI

Note

For the non-shared scenario, No solution will be returned.

Demand

Candidates:

  • NSSI (AAI Inventory)

Demand Examples:

List of Constraints

  • Threshold Constraint (Matching NSSI)

NSI Selection Policies

1) Demand Policy (VNF Policy)

  • Demand name (NSST)

  • For NSI 

    • inventory provider (AAI)

    • Inventory type (nssi)

    • filtering attributes

    • Uniqueness

Sample Vnf Policy
{ "tosca_definitions_version":"tosca_simple_yaml_1_1_0", "topology_template":{ "policies":[ { "OSDF_FRANKFURT.vnfPolicy_URLLC_Core_1":{ "type":"onap.policies.optimization.resource.VnfPolicy", "version":"1.0.0", "type_version":"1.0.0", "metadata":{ "policy-id":"OSDF_FRANKFURT.vnfPolicy_URLLC_Core_1", "policy-version":1 }, "name":"OSDF_FRANKFURT.vnfPolicy_URLLC_Core_1", "properties":{ "scope":[ "OSDF_FRANKFURT", "URLLC_1", "URLLC_Core_1" ], "resources":[ ], "services":[ "URLLC_1" ], "identity":"vnf_URLLC_Core_1", "geography":[ ], "vnfProperties":[ { "inventoryProvider":"aai", "inventoryType":"nssi", "unique": "true", "filtering_attributes":{ "service-role":"nssi", "service-function":"shared", "model-invariant-id":"21d57d4b-52ad-4d3c-a798-248b5bb9124a", "model-version-id":"bfba363e-e39c-4bd9-a9d5-1371c28f4d22" } } ] } } } ] } }

2) Threshold Policy

  • Demand name (NSST)

  • List of Constraints

Sample Threshold Policy
{ "tosca_definitions_version":"tosca_simple_yaml_1_1_0", "topology_template":{ "policies":[ { "OSDF_FRANKFURT.Threshold_URLLC_Core_1":{ "type":"onap.policies.optimization.resource.ThresholdPolicy", "version":"1.0.0", "type_version":"1.0.0", "metadata":{ "policy-id":"OSDF_FRANKFURT.Threshold_URLLC_Core_1", "policy-version":1 }, "properties":{ "scope":[ "OSDF_FRANKFURT", "URLLC_Core_1" ], "resources":[], "services":["URLLC_Core_1"], "geography":[], "identity":"Threshold_URLLC_Core_1", "applicableResources":[ "any" ], "thresholdProperties":[ { "attribute":"latency", "operator":"lte", "threshold":{ "get_param": "latency" }, "unit":"ms" } ] } } } ] } }

3) Query policy

  • Existing (All slice profile parameters)

Sample Query Policy
{ "tosca_definitions_version":"tosca_simple_yaml_1_1_0", "topology_template":{ "policies":[ { "OSDF_FRANKFURT.queryPolicy_URLLC_1":{ "type":"onap.policies.optimization.service.QueryPolicy", "version":"1.0.0", "type_version":"1.0.0", "metadata":{ "policy-id":"OSDF_FRANKFURT.queryPolicy_URLLC_1", "policy-version":1 }, "properties":{ "scope":[ "OSDF_FRANKFURT" ], "services":[ "URLLC_Core_1" ], "geography":[], "identity":"queryPolicy_URLLC_1", "queryProperties":[ { "attribute":"latency", "attribute_location":"sliceProfile.latency" } ] } } } ] }, "name":"ToscaServiceTemplateSimple", "version":"1.0.0" }

4) Optimization policy

  • minimize latency

  • maximize throughput

HAS Candidates

NSSI candidate

HAS Candidate sample

Consumed APIs (AAI)

GET NSSI info from AAI

NSSI query to AAI



Sample HAS template