...
c. Core endpoint, FH and MH endpoints are stretch goal
d. Core endpoint cannot be populated in UUI, as the IP address of CNFs are available after slice allocation. (Deviation of #2 in Requirement Description)
Gliffy Diagram | ||||||
---|---|---|---|---|---|---|
|
General Information:
RAN and Core NF's IP addresses are assigned as below:
- If the NFs are deployed as VNFs, VNFM takes care of the IP address assignment
- If the NFs are deployed as CNFs, Kubernetes assigns a unique IP address to the pod. If it is a single container, docker daemon itself acts as a DHCP server and assigns an IP address to the container.
In both the above cases, assigning an IP address is taken care by the cloud provider itself.
In Core Slicing, netbox-ip-assign microservice is used by SDNC to assign IP address to the VF modules and VNFs. But this is not used effectively by CDS and the multicloud. Kubernetes itself assigns the IP address, moreover assigning a static IP is not a best practice in Kubernetes.
Back-haul endpoints Discovery:
...
draw.io Diagram | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
IP Address:
More than one CUCP gateway IP ( where NFs are deployed) can be applicable and can be configured for a slice.
...
The value should be populated in UUI on load of the page.
API Details
- UUI ↔ SO- Screen level changes (Stretch goal)
MOCK SCREENS FOR UUI ENHANCEMENTS:
Jira | ||||||
---|---|---|---|---|---|---|
|
AutoPopulate nodes for multiple selection in UUI as below,
...
Multiple selection of nodes in TN selection page, the selected nodes should be displayed as below,
API exposed by SO:
Get AN &CN EndPoints
...
Method
...
URL
...
UUI and SO interaction
API details are documented in SO_impacts
2. SO ↔ CPS(WIP) (Existing APIs are used)
API Reference:
To Fetch coverage Area to coverage Area TA List Mapping:
To Fetch cells based on coverage area TA list:
To Fetch CUCP details wrt to the cell:
3. SO ↔ SDNC (Existing APIs are used)
API used to fetch Network topology:
https://localhost:8086/restconf/config/network-topology:network-topology
Response from SDNC:
Topology
|
4. SO ↔ AAI
API Used:
To Fetch PNF's:
https://<ip-address>:<port>/aai/v23/network/pnfs
Response from AAI
...
:
JSON Viewer | ||
---|---|---|
| ||
{ "subnetTypespnf": [{ "ANpnf-name": "networkId-providerId-10-clientId-0-topologyId-2-nodeId-10.1.1.3", "pnf-id": "10.1.1.3", "CN" ] } |
Response Example:
JSON Viewer | ||
---|---|---|
| ||
{
"endPoints": {
"AN": {
"ipAddress": ["xx.xx.xx.xx", "xx.xx.xx.xx"],
"logicalInterfaceId": "12",
"nexthopInfo": ""
},
"CN": {
"ipAddress": ["xx.xx.xx.xx", "xx.xx.xx.xx"],
"logicalInterfaceId": "12",
"nexthopInfo": ""
}
}
} |
2. SO ↔ CPS
3. SO ↔ SDNC
...
in-maint": true,
"spare-equipment-indicator": false,
"resource-version": "1642530553170",
"admin-status": "up",
"operational-status": "up",
"relationship-list": {
"relationship": [{
"related-to": "esr-thirdparty-sdnc",
"relationship-label": "org.onap.relationships.inventory.AppliesTo",
"related-link": "/aai/v23/external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/7cfa0c7c-0181-4181-8f3b-1edf20a0f47b",
"relationship-data": [{
"relationship-key": "esr-thirdparty-sdnc.thirdparty-sdnc-id",
"relationship-value": "7cfa0c7c-0181-4181-8f3b-1edf20a0f47b"
}]
}, {
"related-to": "network-resource",
"relationship-label": "tosca.relationships.network.LinksTo",
"related-link": "/aai/v23/network/network-resources/network-resource/providerId-10-clientId-0-topologyId-2",
"relationship-data": [{
"relationship-key": "network-resource.network-id",
"relationship-value": "providerId-10-clientId-0-topologyId-2"
}],
"related-to-property": [{
"property-key": "network-resource.network-id",
"property-value": "providerId-10-clientId-0-topologyId-2"
}]
}]
}
}]
} |
To Fetch p-interface from AAI:
https://<ip-address>:<port>/aai/v23/network/pnfs/pnf/networkId-providerId-10-clientId-0-topologyId-2-nodeId-10.1.1.3/p-interfaces
Response from AAI:
JSON Viewer | ||
---|---|---|
| ||
{
"p-interface": [{
"interface-name": "networkId-providerId-10-clientId-0-topologyId-2-nodeId-10.1.1.3-ltpId-512",
"speed-value": "10000000",
"resource-version": "1642530553011",
"in-maint": true,
"operational-status": "up"
}, {
"interface-name": "networkId-providerId-10-clientId-0-topologyId-2-nodeId-10.1.1.3-ltpId-1000001",
"speed-value": "10000000",
"resource-version": "1642530553011",
"in-maint": true,
"operational-status": "up"
}]
} |
- The interface name of the fetched p-interface will be the nextHopInfo of the endpoints.
AN endpoint - logicInterfaceID:
...