Meeting with Jimmy Forsyth

Navigating A&AI


  • INITIAL A&AI - "GetAll" on PNFs.

    GET /aai/v19/network/pnfs?

    GET /aai/v19/network/pnfs/pnf/{pnf-name}

  • GET /aai/v19/network/pnfs?depth=all

    GET /aai/v19/network/pnfs/pnf/{pnf-name}?depth=all (in the descendent list of the PNF)

  • Containment relationship in graph, edge relate PNF to a S/W i/f, other edges, cousin edges parent-child. P-interface, model version, VRF, logical link. lag, service ... way PNF can be connected to other objects iwthin the graph. Look at relationship list from Gets.



pnf: object

PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.

Related Nodes
    • TO complex( pnf LocatedIn complex, MANY2ONE)
    • TO ext-aai-network( pnf BelongsTo ext-aai-network, MANY2MANY)

For CCVPN Usecase(2)

    • TO instance-group( pnf MemberOf instance-group, MANY2MANY)
    • TO network-resource( pnf LinksTo network-resource, MANY2MANY)

For CCVPN Usecase(4)

    • TO zone( pnf LocatedIn zone, MANY2ONE)
    • FROM configuration( configuration AppliesTo pnf, MANY2MANY)
    • FROM esr-thirdparty-sdnc( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
    • FROM generic-vnf( generic-vnf HostedOn pnf, MANY2MANY)
    • FROM lag-interface (CHILD of pnf, lag-interface BindsTo pnf, MANY2ONE)(1)
    • FROM logical-link( logical-link BridgedTo pnf, MANY2MANY)
    • FROM metadatum( metadatum AppliesTo pnf, MANY2MANY)

AAI-2154 For BBS Usecase

    • FROM p-interface (CHILD of pnf, p-interface BindsTo pnf, MANY2ONE)(1)
    • FROM service-instance( service-instance ComposedOf pnf, ONE2MANY)
    • FROM software-version (CHILD of pnf, software-version BelongsTo pnf, MANY2ONE)
    • FROM vrf (CHILD of pnf, vrf BelongsTo pnf, MANY2ONE)

A vrf belongs to a pnf.(1)

  • (1) IF this PNF node is deleted, this FROM node is DELETED also
  • (2) IF this PNF node is deleted, this TO node is DELETED also
  • (4) IF this TO node is deleted, this PNF is DELETED also
  • PNF cannot be deleted if related to NETWORK-RESOURCE,SOFTWARE-VERSION


pnf-name: string unique name of Physical Network Function.

pnf-name2: string name of Physical Network Function.

selflink: string URL to endpoint where AAI can get more details.

pnf-name2-source: string source of name2

pnf-id: string id of pnf

equip-type: string Equipment type. Source of truth should define valid values.

equip-vendor: string Equipment vendor. Source of truth should define valid values.

equip-model: string Equipment model. Source of truth should define valid values.

management-option: string identifier of managed customer

orchestration-status: string Orchestration status of this pnf

ipaddress-v4-oam: string

ipv4-oam-address with new naming convention for IP addresses

sw-version: string sw-version is the version of SW for the hosted application on the PNF.

in-maint: boolean Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.

frame-id: string ID of the physical frame (relay rack) where pnf is installed.

serial-number: string Serial number of the device

ipaddress-v4-loopback-0: string IPV4 Loopback 0 address

ipaddress-v6-loopback-0: string IPV6 Loopback 0 address

ipaddress-v4-aim: string IPV4 AIM address

ipaddress-v6-aim: string IPV6 AIM address

ipaddress-v6-oam: string IPV6 OAM address

inv-status: string CANOPI's inventory status. Only set with values exactly as defined by CANOPI.

resource-version: string Used for optimistic concurrency. Must be empty on create, valid on update and delete.

prov-status: string Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]

nf-role: string Nf Role is the role performed by this instance in the network.

admin-status: string admin Status of this PNF operational-status: string Store the

operational-status for this object. model-customization-id: string Store the model-customization-id for this object.

model-invariant-id: string The ASDC model id for this resource model.

model-version-id: string The ASDC model version for this resource model.

pnf-ipv4-address: string This is the IP address (IPv4) for the PNF itself. This is the IPv4 address that the PNF iself can be accessed at.

pnf-ipv6-address: string This is the IP address (IPv6) for the PNF itself. This is the IPv6 address that the PNF iself can be accessed at.

software-versions: object[]


relationship-list: object[]


p-interfaces: object[]


lag-interfaces: object[]


vrfs: object[]




Audio Only


Action items