NSSI Selection
Sequence diagram
Interfaces
NSSI selection Request
Input: Slice profile
NSST details
Fetch Optimization policies
Demand policy for NSSI
Constraint policies for Selection
Optimization policies for NSSI selection.
NSSI selection request - HAS
Demand: NSSI
Constraint: Threshold policy, New policy(for CoverageArea )??
Optimization: Maximize/minimize the service profile parameters
Fetch NSSI for AAI
Input: NSST info
Output: List of NSSIs as candidates
Run Optimization
Consolidated Solution based on the policy
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