...
- Reads the discover network information from AAI.
URL: /aai/v16/network/logical-links
Response:
[{
"link-name": "cross-link-2",
"in-maint": false,
"link-type": "cross-link",
"operational-status": "up",
"relationship-list": {
"relationship": [ {
"related-link": "/aai/v13/network/pnfs/pnf/10.10.10.10/p-interfaces/p-interface/nodeId-10.10.10.10-ltpId-58"
},{
"related-link": "/aai/v13/network/pnfs/pnf/11.11.11.11/p-interfaces/p-interface/nodeId-11.11.11.11-ltpId-159"
} ]
}
}]URL: "/aai/v13/network/pnfs/pnf/10.10.10.10/p-interfaces/p-interface/nodeId-10.10.10.10-ltpId-58
- prepare the discovery information according to the OOF model structure which is compatible for mini zinc framework.
- push the model information to the mini zinc framework.
- get the optimistic route list from the framework.
- respond back to sdnc.
API internal process:
- Parse the request payload, and get the source and destination (node/LtpId) from the request.
- From AAI query all the logical links (preconfigured) by URL /aai/v16/network/logical-links.
- From the response of the API call to AAI, the following information can be obtained.
- Logical link.
- the pnfs this logical link is associated with.
- the LtpId's that are available with the pnf's.
- From the response of step 3, we would be having data as mentioned below (Considering the below example):
[{
"link-name": "cross-link-2",
"in-maint": false,
"link-type": "cross-link",
...
"operational-status": "up",
"relationship-list": {
"relationship": [ {
"related-link": "/aai/v13/network/pnfs/pnf/10.10.10.10/p-interfaces/p-interface/nodeId-10.10.10.10-ltpId-58"
},{
"related-link": "/aai/v13/network/pnfs/pnf/11.11.11.11/p-interfaces/p-interface/nodeId-11.11.11.11-ltpId-159"
} ]
}
},{
"link-name": "cross-link-3",
"in-maint": false,
"link-type": "cross-link",
"operational-status": "up",
"relationship-list": {
"relationship": [ {
"related-link": "/aai/v13/network/pnfs/pnf/11.11.11.11/p-interfaces/p-interface/nodeId-11.11.11.11-ltpId-59"
},{
"related-link": "/aai/v13/network/pnfs/pnf/12.12.12.12/p-interfaces/p-interface/nodeId-12.12.12.12-ltpId-160"
} ]
}
},{
"link-name": "cross-link-1",
"in-maint": false,
"link-type": "cross-link",
"operational-status": "up",
"relationship-list": {
"relationship": [ {
"related-link": "/aai/v13/network/pnfs/pnf/10.10.10.10/p-interfaces/p-interface/nodeId-10.10.10.10-ltpId-72"
},{
"related-link": "/aai/v13/network/pnfs/pnf/12.12.12.12/p-interfaces/p-interface/nodeId-12.12.12.12-ltpId-112"
} ]
}
}]Link Name 1st Node Id 1st LtpId 2nd Node Id 2nd LtpId cross-link-2 10.10.10.10 58 11.11.11.11 159 cross-link-3 11.11.11.11 59 12.12.12.12 160 cross-link-1 10.10.10.10 72 12.12.12.12 112 - Get the source and destination entity from request and find the optimistic route between them. For example, if the request contains "accessNodeId" as 10.10.10.10 in RoutePortInfo object of "srcPort", "accessNodeId" as 12.12.12.12 in RoutePortInfo object of "destPort" and then the link between 10.10.10.10 and 12.12.12.12 should be returned as a response.
Input Output Additional Information srcPort : 10.10.10.10
destPort: 12.12.12.12
Cross-link-1 Since Cross-link-1 is the shortest path
between node 10.10.10.10 and 12.12.12.12
- Response would be send back to the caller.
Interface definition:
Interface Definition | Description |
---|---|
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/oof/v1/route |
...