OOF API updates are available in Network Slicing API Specifications. The updated swagger is available at https://gerrit.onap.org/r/#/c/optf/osdf/+/100477.
OOF impacts are described in OOF_impacts_v1.0.pptx.
ASSUMPTIONS
New Candidate schema to represent NSSI (RAN,Core,Transport)
{
"candidate_id": "1ac71fb8-ad43-4e16-9459-c3f372b8236d",
"candidate_type": "nssi",
"inventory_type": "nssi",
"inventory_provider": "aai",
"domain": "cn",
"latency": "5",
"max-number-of-UEs": 0,
"coverage-area-TA-list": "[{\"province\":\"??\",\"city\":\"???\",\"county\":\"???\",\"street\":\"?????\"}]",
"ue-mobility-level": "stationary",
"resource-sharing-level": "0",
"exp-data-rate-UL": 100,
"exp-data-rate-DL": 100,
"area-traffic-cap-UL": 100,
"area-traffic-cap-DL": 100,
"activity-factor": 0,
"e2e-latency": 0,
"jitter": 0,
"survival-time": 0,
"exp-data-rate": 0,
"payload-size": 0,
"traffic-density": 0,
"conn-density": 0,
"reliability": "99.999",
"service-area-dimension": "",
"cs-availability":""
}
SO - OOF INTERACTION
{
"serviceProfile":{
"latency": 2,
"security": "High",
"reliability": 99.9999,
"trafficDensity": 1,
"connDensity": 100000,
"expDataRate": 50,
"jitter": 1,
"survivalTime": 0
},
"requestInfo":{
"transactionId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl": "http://0.0.0.0:9000/osdfCallback/",
"sourceId": "SO",
"timeout":5
},
"NSTInfo":[
{
"modelInvariantId":"fda3c1e8-7653-4acd-80ef-f5755c1d3859",
"modelVersionId":"a6906768-1cae-4e78-acd1-d753ac61f3e8"
}
]
}
[
unit : (latency - ms) ; (expDataRate - Mbps) ; (survivalTime - ms) ; (jitter - micro sec) ; (connDensity - /km2) ; (trafficDensity - Tbps/km2)]
ATTRIBUTE POLICY:
{
"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"
],
"policyType":"attribute",
"resources":[
"URLLC"
],
"attributeProperties":{
"serviceProfile":{
"latency":{
"lte":"10 ms"
},
"reliability":{
"gte":"99.999"
}
}
}
}
}
VNF POLICY:
{
"service":"vnfPolicy",
"policyName":"OSDF_FRANKFURT.vnfPolicy_URLLC",
"description":"vnfPolicy",
"templateVersion":"OpenSource.version.1",
"version":"test1",
"priority":"6",
"riskType":"test",
"riskLevel":"3",
"guard":"False",
"content":{
"identity":"urllc_prop",
"policyScope":[
"URLLC"
],
"policyType":"vnfPolicy",
"resources":[
"URLLC"
],
"applicableResources":"any",
"vnfProperties":[
{
"inventoryProvider":"aai",
"inventoryType":"service",
"customerId":"5G-customer",
"orchestrationStatus":"ACTIVE",
"equipmentRole":""
}
]
}
}
OPTIMIZATION POLICY
OSDF - HAS:
{
"name": "urllc_sample",
"files": {},
"limit": 10,
"num_solution": 5,
"timeout": 1200,
"template": {
"homing_template_version": "2018-02-01",
"demands": {
"URLLC": [{
"inventory_provider": "aai",
"inventory_type": "service",
"region": "RegionOne",
"attributes": {
"orchestration-status": "ACTIVE",
"global-customer-id": "5G-customer",
"modelInvariantId":"fda3c1e8-7653-4acd-80ef-f5755c1d3859",
"modelVersionId":"a6906768-1cae-4e78-acd1-d753ac61f3e8"
}
}]
},
"constraints": {
"service_profile_attr": {
"type": "attribute",
"demands": ["URLLC"],
"properties": {
"evaluate":{
"latency": {"lte" : "10 ms"},
"reliability": {"gte" : 99.999}
}
}
}
}
}
}
Illustrations
1. Call from SO to OOF to Get suitable NST
Assume Service Profile contains throughput =7, BW = 10, latency = 22.
Assume that the following NSTs are present in the inventory (at present maintained locally within OOF)
NST id | Performance Attributes |
---|
NST1 | throughput, BW, latency |
NST2 | reliability, user density |
NST3 | throughput, BW, latency |
NST4 | terminal density, survivability |
Based on above inventory, and attributes in service profile (not attribute values), (NST1, NST3) are shortlisted.
Attribute Policy contains the value ranges (capability set of each NST). For e.g.:
NST id | Performance Attributes |
---|
NST1 | throughput (2..10), BW (5..10), latency (20..50) |
NST2 | reliability (99.99..99.999), user density (10..10000) |
NST3 | throughput (11..15), BW (10..25), latency (15..30) |
NST4 | terminal density (100..5000), survivability (100..200) |
OOF selects NST3 by comparing the attribute value ranges with attribute values in service profile (it has only NST1 and NST3 to choose from).
2. Call from SO to OOF to get suitable NSI