Versions Compared

Key

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

...



Table of Contents

Assumptions

  1. Below is the list of solvers used in OOF and its usage. The Route Optimiser package will be used for the MDONS use case as well.
  2. Policy is not going to be involved to list the constraints for now.
  3. Once config policies are defined for MDONS use case , OOF wil fetch these policies to get certain other constraints and apply them while running the algorithm.


Existing Solvers and Usage


SolverUsage
license optimizerVNF license optimization
pci optimizerPci optimization
placement optimizerVNF placement optimization
slice optimiserSlice selection and instantiation optimisation
route optimizer

Perform the route calculations and return the vpn-bindings

for CCVPN use case

Sequence Diagram


Image Added


Request from SDNC

Code Block
titleIDL request
collapsetrue
API: POST /api/oof/mdons/route/v1

BODY:
{
   "requestInfo":{
      "transactionId":"xxx-xxx-xxxx",
      "requestId":"yyy-yyy-yyyy",
      "callbackUrl":"",
      "sourceId":"SDNC",
      "requestType":"create",
      "numSolutions":1,
      "optimizers":[
         "route"
      ],
      "timeout":600
   },
   "routeInfo":{
      "routeRequest":{
         "srcDetails":{
            "interfaceId":"interface-id-1",
            "nodeId":"node-1",
            "controllerId":"Virtuora-TAPI1"
         },
         "dstDetails":{
            "interfaceId":"interface-id-2",
            "nodeId":"node-2",
            "controllerId":"Virtuora-TAPI2"
         },
         "serviceRate":"ODU2"
      }
   }
}

Note: "Callbackurl" field will be empty . Has been added to just follow the request format standard in OOF. When SDNC sends this request the field will be empty.

Response To SDN

Response Example

Code Block
languagetext
titleRoute Selection Response
collapsetrue
{
   "transactionId":"xxx-xxx-xxxx",
   "requestId":"yyy-yyy-yyyy",
   "requestStatus":"completed",
   "statusMessage":"success",
   "solution":{
      "routeInfo":{
         "serviceRoute":[
            {
               "srcInterfaceId":"",
               "destInterfaceId":""
            }
         ],
         "linkList":[
            "link1",
            "link2"
         ]
      }
   }
}

State Diagram

View file
nameOOF_StateDiagram.gliffy
height400


OOF Impacts

  1. A new api should be defined in the osdfapp.py class in the optf-osdf repository for the mdons route selection.
  2. Under the Route Optimizer section a new class has to be added to handle the mdons route selection.
  3. The standard minizinc template which gives the shortest path in a graph datastructure will be used for this use case, same as the ccvpn use case.


Algorithm Details

  1. Identify if the A and Z are from the same domain controller, if yes, linkName is set to null.
  2. If not from the same domain, retrieve all the interdomain links across both the controllers from AAI.
  3. The links will have information such as admin-state and rate. (Note: For now we are considering only these two fields to select the appropriate inter-domain-link).
  4. Based on the bandwidth required and available bandwidth and the status of the links (of the end points, NNIs), the appropriate link is chosen.
  5. The link name along with the names of NNI 1 and NN2  are sent to SDNC and SDNC/DG send the details request for service-creation to the domain controller(s).