Resource Type | Common Model (JSON) | SDC Model | AAI Model (OXM v13 or greater) | SDN-C Model (Generic Resource API) | SDN-C Model (VNF-API) | Network Discovery API | Openstack API |
---|---|---|---|---|---|---|---|
Service | service | Service Template | service-instance | GENERIC-RESOURCE-API:servicesservice.service-data.service-topology | N/A | N/A | N/A |
uuid |
n/a | service-instance-id | service-topology-identifier.service-instance-id | ||||
name |
n/a | service-instance-name | service-topology-identifier.service-instance-name | ||||
modelVersionID | UUID | model-version-id | n/a | ||||
modelInvariantUUID | invariantUUID | model-invariant-id | onap-model-information.model-invariant-uuid | ||||
VNF | vnfList[*] | Service.VFList | service-instance.relationship("generic-vnf")[*].generic-vnf | service.vnfs.vnf[*].vnf-data.vnf-topology | vnfs.vnf-list[*].service-data.vnf-topology-information.vnf-topology-identifier | N/A | |
uuid |
n/a | vnf-id | onap-model-information.model-uuid | n/a | |||
name |
n/a | vnf-name | vnf-topology-identifier-structure.vnf-name | generic-vnf-name | |||
type | type | vnf-type | vnf-topology-identifier-structure.vnf-type | generic-vnf-type | |||
modelVersionID |
UUID | model-version-id | n/a | n/a | |||
modelInvariantUUID | invariantUUID | model-invariant-id | onap-model-information.model-invariant-uuid | n/a | |||
attributeList[name=nfNamingCode] | n/a | nf-naming-code | n/a | n/a | |||
attributeList[name=nfType] | n/a | nf-type | n/a | n/a | |||
attributeList[name=nfRole] | n/a | nf-role | n/a | n/a | |||
attributeList[name=nfFunction] | n/a | nf-function | n/a | n/a | |||
VF-MODULE | vnfList[*].vfModuleList[*] | VFModuleList | service-instance.relationship("generic-vnf")[*].vf-module[*] | service.vnfs.vnf[*].vnf-data.vf-modules.vf-module[*].vf-module-data.vf-module-topology | N/A | N/A | |
uuid |
n/a | vf-module-id | onap-model-information.model-uuid | ||||
name | n/a | vf-module-name | vf-module-topology-identifier.vf-module-name | ||||
modelVersionID |
vfModuleModelUUID | model-version-id | n/a | ||||
modelInvariantUUID | vfModuleModelInvariantUUID | model-invariant-id | onap-model-information.model-invariant-uuid | ||||
modelCustomizationUUID |
vfModuleCustomizationUUID | model-customization-id | n/a | ||||
minInstances | min_vf_module_instances | N/A | n/a | ||||
maxInstances | max_vf_module_instances | N/A | n/a | ||||
VM | vnfList[*].vfModuleList[*].vmList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver")[*].vserver | service.vnfs.vnf[*].vnf-data.vf-modules.vf-module[*].vf-module-topology.vf-module-assignments.vms.vm | N/A | vserver | server |
uuid | vserver-id | n/a | id | id | |||
name | vserver-name | vm-names.vm-name[0] | name | name | |||
attributeList[name=lockedBoolean] | in-maint | n/a | attributeList [name=inMaintenance] | locked | |||
attributeList[name=hostName] | relationship("pserver").relationship-data("pserver.hostname") | n/a | attributeList name=hostname] | OS-EXT-SRV-ATTR:hostname | |||
attributeList[name=imageId] | relationship("image").relationship-data("image.image-id") | n/a | attributeList [name=imageId] | image | |||
NETWORK(service) | networkList[*] | N/A | service-instance.relationship("l3-network")[*].l3-network | service.service-data.networks.network[*].network-data.network-topology | N/A | l3-network | network |
uuid | network-id | network-topology-identifier-structure.network-id | id | id | |||
name | network-name | network-topology-identifier-structure.network-name | name | name | |||
modelVersionID | model-version-id | n/a | n/a | n/a | |||
modelInvariantUUID | model-invariant-id | onap-model-information.model-invariant-uuid | n/a | n/a | |||
attributeList[name=networkRole] | network-role | network-topology-identifier-structure.network-role | n/a | n/a | |||
attributeList[name=networkType] | network-type | n/a | n/a | n/a | |||
attributeList[name=sharedNetworkBoolean] | is-shared-network | n/a | attributeList [name=sharedNetwork] | shared | |||
attributeList[name=networkType] | network-type | network-topology-identifier-structure.network-type | n/a | n/a | |||
attributeList[name=networkTechnology] | network-technology | network-topology-identifier-structure.network-technology | n/a | n/a | |||
attributeList[name=physicalNetworkName] | physical-network-name | n/a | n/a | n/a | |||
NETWORK(vf-module) | vnfList[*].vfModuleList[*].networkList[*] | N/A | service-instance.relationship("generic-vnf")[*].vf-module[*].relationship("l3-network")[*].l3-network | service.service-data.vnfs.vnf[*].vnf-data.vf-modules.vf-module[*].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm-networks[*].related-networks[*] | vnfs.vnf-list[*].vnf-topology-information.vnf-resource-assignments.vnf-networks.vnf-network[*] | l3-network | network |
uuid | network-id | network-id | network-id | id | id | ||
name | network-name | n/a | network-name | name | name | ||
modelVersionID | model-version-id | n/a | n/a | n/a | n/a | ||
modelInvariantUUID | model-invariant-id | n/a | n/a | n/a | n/a | ||
attributeList[name=networkRole] | network-role | network-role | network-role | n.a | n/a | ||
attributeList[name=sharedNetworkBoolean] | is-shared-network | n/a | n/a | attributeList [name=sharedNetwork] | shared | ||
attributeList[name=networkType] | network-type | n/a | n/a | n/a | n/a | ||
attributeList[name=networkTechnology] | network-technology | n/a | n/a | n/a | n/a | ||
attributeList[name=physicalNetworkName] | physical-network-name | n/a | n/a | n/a | n/a | ||
NETWORK(VNF) | vnfList[*].networkList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("l3-network")[*].l3-network | service.service-data.vnfs.vnf[*].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks[*] | vnfs.vnf-list[*].service-data.vnf-topology-information.vnf-assignments.vnf-networks[*] | l3-network | network |
uuid | network-id | network-id | network-id | id | id | ||
name | network-name | network-name | network-name | name | name | ||
modelVersionID | model-version-id | n/a | n/a | n/a | n/a | ||
modelInvariantUUID | model-invariant-id | n/a | n/a | n/a | n/a | ||
attributeList[name=networkRole] | network-role | network-role | network-role | n/a | n/a | ||
attributeList[name=sharedNetworkBoolean] | is-shared-network | n/a | n/a | attributeList [name=sharedNetwork] | shared | ||
attributeList[name=networkTechnology] | network-technology | n/a | n/a | n/a | n/a | ||
attributeList[name=physicalNetworkName] | physical-network-name | n/a | n/a | n/a | n/a | ||
VNFC | vnfList[*].vnfcList[*] | vfcNodeTemplate | service-instance.relationship("generic-vnf")[*].relationship("vnfc")[*].vnfc | N/A | vnfs.vnf-list[*].service-data.vnf-topology-information.vnf-assignments.vnf-vms[*].vm-names[*] | N/A | |
uuid |
n/a | model-version-id | n/a | ||||
name |
n/a | vnfc-name | vm-name | ||||
modelVersionID |
UUID | model-version-id | n/a | ||||
modelInvariantUUID | invariantUUID | model-invariant-id | n/a | ||||
attributeList[name=nfcNamingCode] | n/a | nfc-naming-code | n/a | ||||
PNF | pnfList[*] | N/A | service-instance.relationship("pnf")[*].pnf | port-mirror-configuration.configuration-data.configuration-operation-information.port-mirror-configuration-request-input.dest[source]-port | N/A | N/A | N/A |
uuid | pnf-id | n/a | |||||
name | pnf-name | pnf-name | |||||
modelVersionID | model-version-id | n/a | |||||
modelInvariantUUID | model-invariant-id | n/a | |||||
attributeList[name=nfRole] | nf-role | n/a | |||||
attributeList[name=nfType] | n/a | pnf-type | |||||
attributeList[name=name2] | pnf-name2 | n/a | |||||
attributeList[name=name2Source] | pnf-name2-source | n/a | |||||
attributeList[name=equipType] | equip-type | n/a | |||||
attributeList[name=equipVendor] | equip-vendor | n/a | |||||
attributeList[name=equipModel] | equip-model | n/a | |||||
attributeList[name=swVersion] | sw-version | n/a | |||||
attributeList[name=frameId] | frame-id | n/a | |||||
attributeList[name=serialNumber] | serial-number | n/a | |||||
attributeList[name=managementOptions] | management-option | n/a | |||||
P-Interface | pnfList[*].pInterfaceList[*] | N/A | service-instance.relationship("pnf")[*].p-interface[*] | N/A | N/A | port | port |
uuid | equipment-identifier | id | id | ||||
name | interface-name | name | name | ||||
attributeList[name=interfaceRole] | interface-role | n/a | n/a | ||||
attributeList[name=interfaceType] | interface-type | n/a | n/a | ||||
attributeList[name=speedValue] | speed-value | n/a | n/a | ||||
attributeList[name=speedUnits] | speed-units | n/a | n/a | ||||
attributeList[name=portDescription] | port-description | attributeList [name=description] | description | ||||
attributeList[name=macAddress] | n/a | attributeList [name=macAddress] | mac_address | ||||
attributeList[name=equipmentID] | equipment-identifier | n/a | n/a | ||||
attributeList[name=lockedBoolean] | in-maint | attributeList [name=adminStateUp] value mapped as: true → false false → true | admin_state_up | ||||
pserver | vnfList[*].vfModuleList[*].vmList[*].pServer | N/A | service-instance.relationship("generic-vnf")[*].relationship("pserver")[*].pserver | N/A | N/A | N/A | |
uuid | pserver-id | ||||||
name | hostname | ||||||
attributeList[name=equipType] | equip-type | ||||||
attributeList[name=equipVendor] | equip-vendor | ||||||
attributeList[name=equipModel] | equip-model | ||||||
attributeList[name=fqdn] | fqdn | ||||||
attributeList[name=serialNumber] | serial-number | ||||||
attributeList[name=topology] | internet-topology | ||||||
attributeList[name=lockedBoolean] | in-maint | ||||||
attributeList[name=purpose] | purpose | ||||||
attributeList[name=name2] | pserver-name2 | ||||||
attributeList[name=ptniiEquipName] | ptnii-equip-name | ||||||
l-interface | |||||||
(VM) | vnfList[*].vfModuleList*.vm[*].lInterfaceList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver")[*].vserver.l-interface[*] | N/A | N/A | N/A | |
(p-server) | vnfList[*].vfModuleList[*].vmList[*].pServer.pInterfaceList[*].lInterfaceList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver")[*].vserver.relationship("pserver")[*].pserver.p-interface[*].l-interface[*] | N/A | N/A | N/A | |
(PNF) | pnfList[*].pInterfaceList[*].lInterfaceList[*] | N/A | service-instance.relationship("pnf")[*].p-interfaces.p-interface[*].l-interface[*] | N/A | N/A | N/A | |
(VNF) | vnfList[*].lInterfaceList[*] | N/A | service-instance.relationship("generic-vnf")[*].l-interface[*] | N/A | N/A | N/A | |
uuid | interface-id | ||||||
name | interface-name | ||||||
attributeList[name=interfaceRole] | interface-role | ||||||
attributeList[name=isPortMirrored] | is-port-mirrored | ||||||
attributeList[name=provStatus] | prov-status | ||||||
attributeList[name=macAddress] | macaddr | ||||||
attributeList[name=lockedBoolean] | in-maint | ||||||
logical-link | |||||||
(service) | logicalLinkList[*] | N/A | service-instance.relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(VNF/l-interface) | vnfList[*].lInterfaceList[*].logicalLlinkList[*] | N/A | service-instance.relationship("generic-vnf")[*].l-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(VNF/vf-module/vm/l-interface) | vnfList[*].vfModuleList[*].vmList[*].lInterfaceList[*].logicalLlinkList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver").l-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(VNF/vf-module/vm/pserver/p-interface) | vnfList[*].vfModuleList[*].vmList[*].pserver.pInterfaceList[*].logicalLlinkList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver").pserver..p-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(VNF/vf-module/vm/pserver/p-interface/l-interface) | vnfList[*].vfModuleList[*].vmList[*].pserver.pInterfaceList[*].lInterfaceList[*].logicalLlinkList[*] | N/A | service-instance.relationship("generic-vnf")[*].relationship("vserver").pserver..p-interface[*].l-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(PNF/p-interface) | pnfList[*].pInterfaceList[*].logicalLinkList[*] | N/A | service-instance.relationship("pnf")[*].p-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
(PNF/p-interface/l-interface) | pnfList[*].pInterfaceList[*].lInterfaceList[*].logicalLlinkList[*] | N/A | service-instance.relationship("pnf")[*].p-interface[*].l-interface[*].relationship("logical-link")[*].logical-link | N/A | N/A | N/A | |
uuid | link-id | ||||||
name | link-name | ||||||
modelVersionID | model-version id | ||||||
modelInvariantUUID | model-invariant id | ||||||
attributeList[name=lockedBoolean] | in-maint | ||||||
attributeList[name=linkType] | link-type | ||||||
attributeList[name=routingProtocol] | routing-protocol | ||||||
attributeList[name=speedValue] | speed-value | ||||||
attributeList[name=speedUnits] | speed-units | ||||||
attributeList[name=ipVersion] | ip-version | ||||||
attributeList[name=provStatus] | prov-status | ||||||
attributeList[name=linkRole] | link-role | ||||||
attributeList[name=name2] | link-name2 | ||||||
attributeList[name=circuitId] | circuit-id | ||||||
attributeList[name=purpose] | purpose |
- Mapping PNF info form SDN-C Context Builder supports the following scenarios:
- 0 PNF associated with source port; PNF associated with dest port exists
- 0 PNF associated with dest port; PNF associated with sorce port exists
- Both source and dest port associated PNF are not present (NULL)
- Both source and dest port associated PNF are present
- Validation logic of PNF-DATA between SDN-C data source and A&AI data source pending to further enhancement to the model in respect to PNF uuid