Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

OOF impacts are described in OOF_impacts_v1.0.pptx.

...


Table of Contents

Assumptions

  1. The  capability set in the template will not contain range of values

NSI Selection

New Candidate schema  to represent NSSI (RAN,Core,Transport)

JSON Viewer
width600
height700
{
    "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

JSON Viewer
width600
height700
{
   "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",
         "modelName":"URLLC_1"
      }
   ]
}

[unit : (latency - ms) ;  (expDataRate - Mbps) ;  (survivalTime - ms) ;  (jitter - micro sec) ;   (connDensity - /km2) ;  (trafficDensity - Tbps/km2)]

QUERY POLICY:

JSON Viewer
width600
height700
{
  "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
width600
height700
{
  "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
width600
height700
{
  "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": {
      "latency": {"operator":"lte", "thresholdValue":"10"}
      "reliability": {"operator":"gte", "thresholdValue":"99.999"}
      }
   }
}

VNF POLICY:

(Has to be updated for all three demands)

JSON Viewer
width600
height700
{
  "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": [
      "NSST-C2","URLLC_1"
    ],
    "policyType": "vnfPolicy",
    "resources": [
      "NSST-C2"
    ],
    "applicableResources": "any",
    "vnfProperties": [
      {
        "inventoryProvider": "aai"
        "inventoryType": "subnet",
        "customerId": "5G-customer"
      },
      {
        "inventoryProvider": "dummy"
        "inventoryType": "subnet",
        "latency": {"operator":"lte", "thresholdValue":"10"}
        "reliability": {"operator":"gte", "thresholdValue":"99.999"}
      }
    ]
  }
}

OPTIMIZATION POLICY

...

width600
height700
  1. Subnet template details will be loaded as Subscriber policy
  2. NSI Name will be unique in AAI
  3. Slice profile in NSSI is chosen based on latency (Conductor)

OSDF - HAS:

JSON Viewer
width600
height700
{
    "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

...

2. Call from SO to OOF to get suitable NSI

...

Inputs: Service Profile parameters, NST id

...

To address all cases above, HAS is invoked with 3 demands (NSST-RAN, NSST-Core, NSST-Transport).

Solution 1
----------
NSI-10 which has URLLC1_NST

NSI-null with NSSI-R-1, (Core-slice profile), NSSI-T-1

Let us assume that the NSI inventory is as follows:

NSI IdNST IdNSSI RAN IdNSSI Core IdNSSI Transport Id
NSI-1NST_URLLC1NSSI-R-1NSSI-C-2NSSI-T-1
NSI-2NST_URLLC2NSSI-R-6NSSI-C-4NSSI-T-3
NSI-3NST_eMBB2.........
NSI-4NST_URLLC2NSSI-R-1NSSI-C-1NSSI-T-1
...............
NSI-10NST_URLLC3NSSI-R-5NSSI-C2NSSI-T-4


Say, HAS returns the foll. solutions:

Solution 1 = (Solution 2
----------
NSSI-R-1, NSSI-C-newC2, NSSI-T-2 (HAS to OSDF) => New NSI (OOF to SO) with slice profile
T1)

Solution 2 = (NSSI-R-1, NSSI-C2(Core-slice profile), NSSI-T-1 (HAS to OSDF) => Re-use NSI-1 (OOF to SO)3) (assuming NSSI-T-3 has NSST_URLLC_TRAN2 as its template).


OSDF then does the following:

  • For Solution 1, it sees:

NSSI-R1 is part of NSI-1,NSI-4
NSSI-C2 is part of NSI-1, NSI-10
NSSI-T1 is part of NSI-4, NSI-1

There is a common "NSI" which is "NSI-1". So NSI-1 can be reused. It fills the shared NSI solutions part of response to SO with NSI-1.

  • For solution 2, NSSI-R-

...

  • 1,

...

  • NSSI-C-

...

  • new, NSSI-

...

  • T-3 => It fills New NSI solutions part of the response to SO with NSSI ids and slice profile(s).