...
ASSUMPTIONS
- The capability set in the template will not contain range of values
- Subnet template details will be loaded as Subscriber policy
- NSI Name will be unique in AAI
- Slice profile in NSSI is chosen based on latency (Conductor)
SAMPLE POLICIES:
Code Block |
---|
language | text |
---|
title | Sample VNF Policy |
---|
linenumbers | true |
---|
collapse | true |
---|
|
{
"service": "vnfPolicy",
"policyName": "OSDF_FRANKFURT.vnfPolicy_NSURLLC_Core_URLLC1",: {
"descriptiontype": "vnfPolicyonap.policies.optimization.VnfPolicy",
"templateVersionversion": "OpenSource1.version0.10",
"type_version": "oofFrankfurt1.0.0",
"prioritymetadata": "6",{
"riskTypepolicy-id": "testOSDF_FRANKFURT.vnfPolicy_URLLC_Core_1",
"riskLevelpolicy-version": "3",1
"guard": "False"},
"contentproperties": {
"identityscope": "slice_urllc",[
"policyScope": [OSDF_FRANKFURT",
"URLLC-test_1",
"URLLC-_Core-test_1",
],
"policyTyperesources": "vnfPolicy",[
"resources": ["URLLC-_Core-test_1"],
"applicableResources": "any"],
"vnfPropertiesservices": [{
"inventoryProvider": "aai",URLLC_1"
],
"serviceTypeidentity": "cnvnf_URLLC_Core_1",
"inventoryTypeapplicableResources": "subnetany",
"customerId"vnfProperties": {[
{
"get_paraminventoryProvider": "chosen_customer_idaai",
}"inventoryType": "nssi",
"equipmentRoleregion": "RegionOne",
"attributes": {
"modelVersionId""orchestrationStatus": "1f43c88e-525d-11ea-8d77-2e728ce88125active",
"modelInvarianIdservice-role": "3fa85f64-5717-4562-b3fc-2c963f66afa6",nssi"
"serviceType": "cn",}
}
"orchestrationStatus": ["active"]
}
}
},
{
|
Code Block |
---|
language | text |
---|
title | Sample Threshold Policy(Latency) |
---|
linenumbers | true |
---|
collapse | true |
---|
|
{
"OSDF_FRANKFURT.Threshold_URLLC_Core_1": {
"inventoryProvidertype": "generatoronap.policies.optimization.ThresholdPolicy",
"serviceTypeversion": "cn1.0.0",
"inventoryTypetype_version": "subnet1.0.0",
"customerIdmetadata": {
"get_param"policy-id": "chosen_customer_id"OSDF_FRANKFURT.Threshold_URLLC_Core_1_latency",
"policy-version": 1
},
"properties": {
"equipmentRolescope": "",[
"attributes": {OSDF_FRANKFURT",
"URLLC_1",
"modelVersionId": "1f43c88e-525d-11ea-8d77-2e728ce88125",URLLC_Core_1"
],
"resources": [
"modelInvarianId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"URLLC_Core_1"
],
"serviceTypeservices": "cn",
[
"URLLC_1"
],
"latencyidentity":{"value":"","constraint":"","unit":""} "Threshold_URLLC_Core_1_latency",
"applicableResources": "any",
"thresholdProperty": {
"reliabilityattribute":{ "value":"","constraint":"","unit":""}
latency",
"operator": "lte",
"threshold": 5,
}
}"unit": "ms"
}
]
}
}
} |
Code Block |
---|
language | text |
---|
title | Sample Threshold Policy(Reliability) |
---|
linenumbers | true |
---|
collapse | true |
---|
|
{
"service"OSDF_FRANKFURT.Threshold_URLLC_Core_1": "thresholdPolicy",{
"policyNametype": "OSDF_FRANKFURT.thresholdPolicy_NS_URLLConap.policies.optimization.ThresholdPolicy",
"descriptionversion": "thresholdPolicy1.0.0",
"templateVersiontype_version": "OpenSource1.version0.10",
"versionmetadata": "oofFrankfurt",{
"prioritypolicy-id": "6OSDF_FRANKFURT.Threshold_URLLC_Core_1_reliability",
"riskType": "test",
"riskLevelpolicy-version": "3",1
"guard": "False"},
"contentproperties": {
"identityscope": "urllc_core_cap",[
"policyScope": [
OSDF_FRANKFURT",
"URLLC-test_1",
"URLLC-Core-test","URLLC_Core_1"
],
"policyTyperesources": "thresholdPolicy",[
"resources": ["URLLC-Core-test"URLLC_Core_1"
],
"thresholdPropertiesservices": [{
"attribute":"latency",URLLC_1"
],
"constraintidentity":"lte "Threshold_URLLC_Core_1_reliability",
"applicableResources": "any",
"thresholdthresholdProperty":"5", {
"unitattribute":"ms"
}reliability",
{
"attribute"operator":"reliability",
"constraint":"gte",
"threshold":"99.999",
"unit":""
}
}]
}
} |
Note: Not yet implemented
Code Block |
---|
language | text |
---|
title | Sample Bound Optimization Policy |
---|
linenumbers | true |
---|
collapse | true |
---|
|
{
"service": "boundOptimizationPolicy",
"policyName": "OSDF_FRANKFURT.boundOptimizationPolicy_NS_URLLC",
"description": "boundOptimizationPolicy",
"templateVersion": "OpenSource.version.1",
"version": "oofFrankfurt",
"priority": "6",
"riskType": "test",
"riskLevel": "3",
"guard": "False",
"content": {
"identity": "urllc_across_dem",
"policyScope": [
"URLLC-test",
"URLLC-Core-test",
],
"policyType": "boundOptimizationPolicy",
"resources": ["URLLC-Core-test","URLLC-Ran-test","URLLC-Trans-test"],
"boundOptimizationProperties": [{
"attribute":"latency",
"constraint":"lte",
"threshold":{
"get_param": "latency"
},
"unit":"ms",
"operationOnDemands":"sum"
},
{
"attribute":"expDataRateUL",
"constraint":"gte",
"threshold":{
"get_param": "expDataRateUL"
},
"unit":"Mbps",
"operationOnDemands":"min"
}]
}
} |
...
JSON Viewer |
---|
|
{
"candidateexp_data_idrate": "1ac71fb8-ad43-4e16-9459-c3f372b8236d"0,
"candidateconn_typedensity": "nssi"0,
"inventory_type": "nssi",
"inventory_provider": "aai",
"domain": "cn",
"latency": "5",
"max-number-of-UEs": 0,
"coverage-area-TA-list": coverage_area_ta_list":"[{\"province\":\"??\",\"city\":\"???\",\"county\":\"???\",\"street\":\"?????\"}]",
"ue-mobility-levelactivity_factor": "stationary",
0,
"resource-sharing-levelcs_availability": "0"null,
"exp-data-rate-UL": 100,
"candidate_id":"1a636c4d-5e76-427e-bfd6-241a947224b0",
"exp-data-rate-DL": 100,
area_traffic_cap_dl":null,
"area-traffic-cap-ULlatency": 10020,
"area-traffic-cap-DLservice_area_dimension": 100null,
"activity-factordomain": 0"cn",
"e2e-_latency": 0,
"jitter "area_traffic_cap_ul": 0null,
"survival-timeinventory_provider": 0"aai",
"exp-_data-_rate_ul": 0100,
"payload-sizemax_number_of_ues": 0,
"traffic-density": 0,
"ue_mobility_level":"stationary",
"conn-densitycandidate_type": 0"nssi",
"reliabilitytraffic_density": "99.999"0,
"service-area-dimension "payload_size":0,
"exp_data_rate_dl":100,
"cs-availabilityjitter":""
} |
SO - OOF INTERACTION
SO →OSDF Request
JSON Viewer |
---|
|
{
0,
"serviceProfilesurvival_time":{0,
"latencyresource_sharing_level": 2"0",
"securityinventory_type": "Highnssi",
"reliability": 99.9999null,
"trafficDensitycost": 1.0,
"connDensitynsi_name": 100000"nsi_test_0211",
"expDataRate": 50,
"jitterinstance_name": 1"nssi_test_0211",
"survivalTimeuniqueness": 0"true"
} |
SO - OOF INTERACTION
SO →OSDF Request
JSON Viewer |
---|
|
{
,
"requestInfoserviceProfile": {
"transactionIdlatency":"d290f1ee-6c54-4b01-90e6-d701748f0851" 2,
"requestIdsecurity":"d290f1ee-6c54-4b01-90e6-d701748f0851 "High",
"callbackUrlreliability": "http://0.0.0.0:9000/osdfCallback/",
99.9999,
"sourceIdtrafficDensity": "SO"1,
"timeoutconnDensity":5 100000,
"expDataRate": }50,
"NSTInfojitter":[ 1,
"survivalTime": 0
{},
"serviceInfo":{
"modelInvariantIdserviceInstanceId": "fda3c1e8209fb01e-765360ca-4acd4325-80efb074-f5755c1d3859c5ad4e0499f8",
"serviceName": ""
},
"modelVersionIdrequestInfo": {
"transactionId": "a6906768d290f1ee-1cae6c54-4e784b01-acd190e6-d753ac61f3e8d701748f0851",
"requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"modelNamecallbackUrl":"URLLC_1" "http://0.0.0.0:9000/osdfCallback/",
"sourceId": "SO",
}
]
} |
[unit : (latency - ms) ; (expDataRate - Mbps) ; (survivalTime - ms) ; (jitter - micro sec) ; (connDensity - /km2) ; (trafficDensity - Tbps/km2)]
QUERY POLICY:
JSON Viewer |
---|
|
{
"service": "queryPolicy",
"policyName": "OSDF_FRANKFURT.QueryPolicy_vNS",
"description": "Query policy for network slicing",
"templateVersion": "OpenSource.version.1",
"version": "OpenSource.version.1",
"priority": "3",
"riskType": "test",
"riskLevel": "2",
"guard": "False",
"content": {
"queryProperties": [
{"attribute":"latency", "attribute_location": "latency"},
{"attribute":"reliability", "attribute_location": "reliability"}
],
"policyScope": [
"URLLC_1"
],
"policyType": "request_param_query",
"identity": "NS_Query_Policy",
"resources": [
"URLLC_1"
]
}
} |
ATTRIBUTE POLICY:
This attribute policy is specifying the operator of an attribute in a service profile
JSON Viewer |
---|
|
{
"service": "attributePolicy",
"policyName": "OSDF_FRANKFURT.AttributePolicy_vNS_1",
"description": "Attribute Policy for Network Slicing (NS)",
"templateVersion": "OpenSource.version.1",
"version": "OpenSource.version.1",
"priority": "1",
"riskType": "test",
"riskLevel": "3",
"guard": "False",
"content": {
"identity": "urllc_attribute",
"policyScope": [
"URLLC_1"
],
"policyType": "attribute",
"resources": [
"URLLC_1"
],
"attributeProperties": {
"serviceProfile": {
"latency": {"operator":"lte", "thresholdValue":{"get_param": "latency"}},
"reliability": {"operator":"gte", "thresholdValue":{"get_param": "reliability"}}
}
}
}
} |
This attribute policy is for specifying the capabilities of a subnet template
JSON Viewer |
---|
|
{
"service": "attributePolicy",
"policyName": "OSDF_FRANKFURT.AttributePolicy_vNS_1",
"description": "Attribute Policy for Network Slicing (NS)",
"templateVersion": "OpenSource.version.1",
"version": "OpenSource.version.1",
"priority": "1",
"riskType": "test",
"riskLevel": "3",
"guard": "False",
"content": {
"identity": "urllc_attribute",
"policyScope": [
"URLLC_1","NSST-C2"
],
"policyType": "attribute",
"resources": [
"NSST-C2"
],
"attributeProperties": "timeout": 5
},
"NSTInfoList": [
{
"latencymodelInvariantId": {"operator":"lte", "thresholdValue":"10"}"fda3c1e8-7653-4acd-80ef-f5755c1d3859",
"modelVersionId": "a6906768-1cae-4e78-acd1-d753ac61f3e8",
"reliabilitymodelName": {"operator":"gte", "thresholdValue":"99.999"}
}
}
} |
VNF POLICY:
[unit : (latency - ms) ; (expDataRate - Mbps) ; (survivalTime - ms) ; (jitter - micro sec) ; (connDensity - /km2) ; (trafficDensity - Tbps/km2)]
QUERY POLICY:
Note: Not yet used/implemented(Has to be updated for all three demands)
JSON Viewer |
---|
|
{
"service": "vnfPolicyqueryPolicy",
"policyName": "OSDF_FRANKFURT.vnfPolicyQueryPolicy_URLLCvNS",
"description":"vnfPolicy "Query policy for network slicing",
"templateVersion": "OpenSource.version.1",
"version": "test1OpenSource.version.1",
"priority": "63",
"riskType": "test",
"riskLevel": "32",
"guard": "False",
"content": {
"identityqueryProperties":"urllc_prop", [
{"policyScopeattribute":[
"NSST-C2""latency", "attribute_location": "latency"},
{"attribute":"reliability", "attribute_location": "URLLC_1reliability"}
],
"policyTypepolicyScope":"vnfPolicy",
[
"resources":[
"NSST-C2URLLC_1"
],
"policyType": "request_param_query",
"applicableResourcesidentity": "anyNS_Query_Policy",
"vnfPropertiesresources": [
{
"URLLC_1"
]
}
} |
OSDF → HAS:
JSON Viewer |
---|
|
{
"inventoryProvidername":"aaiurllc_sample",
"files":{
},
"limit":10,
"inventoryTypenum_solution":"subnet5",
"timeout":1200,
"template":{
"customerIdhoming_template_version":"5G2018-02-customer01",
"demands":{
},
"URLLC":[
{
{
"inventoryProvider":"dummy",
"inventoryTypeinventory_provider":"subnetaai",
"latency "inventory_type":{"nssi",
"operatorunique": "ltetrue",
"thresholdValueregion":"10RegionOne",
},
"reliability"filtering_attributes":{
"operator "service-role":"gtenssi",
"thresholdValue "orchestration-status":"99.999active",
} "model-invariant-id":"21d57d4b-52ad-4d3c-a798-248b5bb9124a",
}
]
}
} |
OPTIMIZATION POLICY
...
OSDF → HAS:
JSON Viewer |
---|
|
{
"name": "urllc_sample",
"files": {},
"limit": 10,
"num_solution": 5,
"timeout": 1200,
"template": {
"model-version-id":"bfba363e-e39c-4bd9-a9d5-1371c28f4d22"
}
}
]
},
"constraints":{
"URLLC_latency_Threshold":{
"homing_template_versiontype": "2018-02-01threshold",
"demands": {["URLLC"],
"URLLCproperties": [{
"inventory_providerattribute": "aailatency",
"inventory_typeoperator": "NSSIlte",
"regionthreshold": "RegionOne"30,
"filtering_attributesunit": {"ms"
}
"orchestration-status": "ACTIVE" },
"global-customer-id": "5G-customer","URLLC_reliability_Threshold":{
"type":"threshold",
"modelInvariantId":"fda3c1e8-7653-4acd-80ef-f5755c1d3859",
"modelVersionIddemands":"a6906768-1cae-4e78-acd1-d753ac61f3e8"["URLLC"],
"properties":{
}
}]
"attribute":"reliability",
},
"constraintsoperator": {
"gte",
"service_profile_attr": {
"type": "threshold":99.999,
"demands": ["URLLC"],
"propertiesunit": {
"evaluate":{
"latency": {"lte" : "10 ms"},
"reliability": {"gte" : 99.999}
}
}
}
}
}
}
|
HAS → OSDF:
OSDF → SO: (Sample response)
...