Versions Compared

Key

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

...

Section


Column

References


Column

Attention to

...


Diagrams

Section


Column

Figure 1: Figure 1 - SOTN-Connectivity diagramImage RemovedFigure 1 - CCVPN model based on Beijiing releaseImage Added

Figure 3: Figure 3 - Site-Service diagramImage Removed: Figure 3 - Site-Service diagramImage Added

Figure 5: Figure 5 - Cross-Domain ONAP diagramImage Added

Figure 7: Figure 7 - Intra-Domain p-interface linkImage Added

Figure 9: Figure 9 - Cross-Domain p-interface link primary 3rd partyImage Added


Column

Figure 2: Figure 2 - CCVPN model based on Beijiing releaseImage RemovedFigure 2 - SOTN Connectivity diagramImage Added

Figure 4: Figure 4 - Topology diagramImage Added

Figure 6: Figure 6 - Cross-domain link diagramImage Added

Figure 8: Figure 8 - Cross-Domain p-interface link peerImage Added

Figure 10: Figure 10 - SDWAN vpn diagramImage Added



Proposal

Reference IdCCVPN Use Case ReferenceAAI Schema ReferenceAAI Proposed Schema
Notes
AAI-1353-1

SOTN Infra

Closed Loop

aai_schema_v13.xsd

  • "
service-instance
  • network"
  • "
service-instances
  • business"
add properties to existing object

Update existing "network" and "business" entry points to graph for new proposed elements:

Code Block
languagexml
titleMockup Schema
<xs:element
(OXM)
collapsetrue
<java-type name="
service-instance
Network">
<xs:complexType> <xs:sequence> <xs:
 <xml-root-element name="network"/>
 <java-attributes>
  <xml-element name="
customer-requests
connectivities"
   type="
xs:string"
inventory.aai.onap.org.v14.Connectivities"/>
  
</xs:sequence> </xs:complexType> </xs:element>
<xml-element name="lan-port-configs"
   type="inventory.aai.onap.org.v14.LanPortConfigs"/>
  <xml-element name="network-resources"
   type="inventory.aai.onap.org.v14.NetworkResources"/>
  <xml-element name="site-resources"
   type="inventory.aai.onap.org.v14.SiteResources"/>
  <xml-element name="sdwan-vpns"
   type="inventory.aai.onap.org.v14.SdwanVpns"/>
  <xml-element name="devices"
   type="inventory.aai.onap.org.v14.Devices"/>
  <xml-element name="wan-port-configs"
   type="inventory.aai.onap.org.v14.WanPortConfigs"/>
  <xml-element name="ext-aai-networks"
   type="inventory.aai.onap.org.v14.ExtAaiNetworks"/>
 </java-attributes>
</java-type>

<java-type name="Business">
 <xml-root-element name="business"/>
 <java-attributes>
  <xml-element name="sp-partners"
   type="inventory.aai.onap.org.v14.SpPartners"/>
 </java-attributes>
</java-type>


AAI-1353-2

SOTN Infra

Closed Loop

Site Service Instance

Notes:

See Figure 2

Code Block
languagejs
titleMockup API
URL: https://<AAI host>:<AAI port>/aai/v14/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
Method: PUT
Request Body:
{
    service-instance-id: "{service-instance-id}",
    service-instance-name: "instance name",
    service-type: "some type",
    service-role: "some role",
    resource-version: "some version",
    model-invariant-id: "model id",
    model-version-id: "model version",
    customer-requests: "request parameters"
}
See Figure 1

above.

Use existing class of objects.

Closed loop scenario:

  • SO will create “service-instance” object in AAI
  • SO will store “customer-request” string on service-instance object in AAI
  • When Closed Loop call recreates the “service-instance”, it will query “service-instance” information first, to get the “customer-request”
AAI-1353-2

aai_schema_v13.xsd

  • "
network
  • service-instance"
  • "
business
  • service-instances"
Update existing entry points to graph for new proposed elements

add properties to existing "service-instance" object:

Code Block
languagexml
titleMockup Schema
<xs:element
(OXM)
collapsetrue
<java-type name="
network
ServiceInstance">
 
<xs:complexType> <xs:sequence> <xs:element ref="tns:connectivities" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="business"> <xs:complexType> <xs:sequence> <xs:element ref="tns:sp-partners" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> AAI-1353-3SOTN Connectivity

aai_schema_v13.xsd

  • "service-instances"
  • "vpn-bindings"

new element "connectivity", with 10-12 properties and 1-2 relationships and new element "connectivities":

Code Block
languagexml
titleMockup Schema
<xs:element name="connectivity">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="bandwidth-profile-name" type="xs:string">
    <xs:element name="bandwidth-profile-type" type="xs:string">
    <xs:element name="CIR" type="xs:string">
    <xs:element name="EIR" type="xs:string">
    <xs:element name="CBS" type="xs:string">
    <xs:element name="EBS" type="xs:string">
    <xs:element name="color-aware" type="xs:string">
    <xs:element name="coupling-flag" type="xs:string">
    <xs:element name="etht-svc-name" type="xs:string">
    <xs:element name="access-provider-id" type="xs:string">
    <xs:element name="access-client-id" type="xs:string">
    <xs:element name="access-topology-id" type="xs:string">
    <xs:element name="access-node-id" type="xs:string">
    <xs:element name="access-ltp-id" type="xs:string">
    <xs:element ref="tns:cvlan-tag-entry" minOccurs="0" maxOccurs="1"/>
    <xs:element ref="tns:service-instance" minOccurs="0" maxOccurs="1"/>
    <xs:element ref="tns:vpn-bindings" minOccurs="1" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>


<xs:element name="connectivities">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:connectivity" minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
Code Block
languagejs
titleMockup API
URL: https://<AAI host>:<AAI port>/aai/v14/network/connectivities/connectivity/{ethSvcName}
Method: PUT
Request Body:
{
    "bandwidth-profile-name": "a name",
    "bandwidth-profile-type": "a type",
    "CIR": "cir value",
    "EIR": "eir value",
    "CBS": "cbs value",
    "EBS": "ebs value",
    "color-aware": "color value",
    "coupling-flag": "flag value",
    "etht-svc-name": "{ethSvcName}",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "cvlan-tag-entry": {
        "cvlan-tag" : "cvlanTag"
    },
    "service-instance": {
        "service-instance-id" : "instance id"
    },
    "vpn-bindings": {
        "vpn-binding" : [
            {
                "vpn-id": "vpn id 1"
            },
            {
                "vpn-id": "vpn id 2"
            }
        ]
    }
}

See Figure 1 above.

Proposal for specific new class of "connectivity" objects.

AAI-1353-4VPN

aai_schema_v13.xsd

  • "vpn-binding"
  • "vpn-bindings"

add properties to existing object:

Code Block
languagexml
titleMockup Schema
<xs:element name="vpn-binding">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="access-provider-id" type="xs:string">
    <xs:element name="access-client-id" type="xs:string">
    <xs:element name="access-topology-id" type="xs:string">
    <xs:element name="src-access-node-id" type="xs:string">
    <xs:element name="src-access-ltp-id" type="xs:string">
    <xs:element name="dst-access-node-id" type="xs:string">
    <xs:element name="dst-access-ltp-id" type="xs:string">
   </xs:sequence>
 </xs:complexType>
</xs:element>

Code Block
languagejs
titleMockup API
URL: https://<AAI host>:<AAI port>/aai/v13/network/vpn-bindings/vpn-binding/vpnId
Method: PUT
Request Body:
{
    "vpn-id": "vpnId",
    "vpn-name": "vpn name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "src-access-node-id": "src node id",
    "src-access-ltp-id": "src ltp id",
    "dst-access-node-id": "dst node id",
    "dst-access-ltp-id": "dst ltp id"
}

See Figure 1 above.

Update existing class of objects.

AAI-1353-5SP Partner

aai_schema_v13.xsd

  • "service-instances"

new element "sp-partner" and new element "sp-partners":

Code Block
languagexml
titleMockup Schema
<xs:element name="sp-partner">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="id" type="xs:string">
    <xs:element name="url" type="xs:string">
    <xs:element ref="tns:service-instance" minOccurs="0" maxOccurs="1"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="sp-partners">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:sp-partner" minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
Code Block
languagejs
titleMockup API
URL: https://<AAI host>:<AAI port>/aai/v14/business/sp-partners/sp-partner/partnerId
Method: PUT
Request Body:
{
    "id": "partnerId",
    "url": "partner url",
    "service-instance": {
        "service-instance-id" : "instance id"
    }
}

See Figure 1 above.

Proposal for specific new class of "sp-partner" objects.

<xml-root-element name="service-instance"/>
 <java-attributes>
  <xml-element name="input-parameters" type="java.lang.String"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /customers/customer/{global-customer-id}
 /service-subscriptions/service-subscription/{service-type}
 /service-instances/service-instance/{service-instance-id}
Method: PUT
Request Body:
{
    service-instance-id: "{service-instance-id}",
    service-instance-name: "instance name",
    service-type: "some type",
    service-role: "some role",
    resource-version: "some version",
    model-invariant-id: "model id",
    model-version-id: "model version",
    input-parameters: "request parameters"
}


AAI-1353-3

SOTN Connectivity

Notes:

See Figure 2 above.

Proposal for specific new class of "connectivity" objects.

aai_schema_v13.xsd

  • "service-instance"
  • "vpn-bindings"

new element "connectivity" and new element "connectivities":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Connectivity">
 <xml-root-element name="connectivity"/>
 <java-attributes>
  <xml-element name="connectivity-id" type="java.lang.String"/>
  <xml-element name="bandwidth-profile-name" type="java.lang.String"/>
  <xml-element name="vpn-type" type="java.lang.String"/>
  <xml-element name="cir" type="java.lang.String"/>
  <xml-element name="eir" type="java.lang.String"/>
  <xml-element name="cbs" type="java.lang.String"/>
  <xml-element name="ebs" type="java.lang.String"/>
  <xml-element name="color-aware" type="java.lang.String"/>
  <xml-element name="coupling-flag" type="java.lang.String"/>
  <xml-element name="etht-svc-name" type="java.lang.String"/>
  <xml-element name="access-provider-id" type="java.lang.String"/>
  <xml-element name="access-client-id" type="java.lang.String"/>
  <xml-element name="access-topology-id" type="java.lang.String"/>
  <xml-element name="access-node-id" type="java.lang.String"/>
  <xml-element name="access-ltp-id" type="java.lang.String"/>
  <xml-element name="connectivity-selflink" type="java.lang.String"/>
  <xml-element name="cvlan" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="Connectivities">
 <xml-root-element name="connectivities"/>
 <java-attributes>
  <xml-element name="connectivity" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.Connectivity"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /connectivities/connectivity/{connectivityId}
Method: PUT
Request Body:
{
    "connectivity-id": "{connectivityId}",
    "bandwidth-profile-name": "a name",
    "vpn-type": "a type",
    "cir": "cir value",
    "eir": "eir value",
    "cbs": "cbs value",
    "ebs": "ebs value",
    "color-aware": "color value",
    "coupling-flag": "flag value",
    "etht-svc-name": "some name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "connectivity-selflink": "some link",
    "cvlan": "some tag",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            },
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-4

VPN

Notes:

See Figure 2 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "vpn-binding"
  • "vpn-bindings"

add properties to existing "vpn-binding" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="VpnBinding">
 <xml-root-element name="vpn-binding"/>
 <java-attributes>
  <xml-element name="access-provider-id" type="java.lang.String"/>
  <xml-element name="access-client-id" type="java.lang.String"/>
  <xml-element name="access-topology-id" type="java.lang.String"/>
  <xml-element name="access-node-id" type="java.lang.String"/>
  <xml-element name="access-ltp-id" type="java.lang.String"/>
  <xml-element name="src-access-node-id" type="java.lang.String"/>
  <xml-element name="src-access-ltp-id" type="java.lang.String"/>
  <xml-element name="dst-access-node-id" type="java.lang.String"/>
  <xml-element name="dst-access-ltp-id" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /vpn-bindings/vpn-binding/vpnId
Method: PUT
Request Body:
{
    "vpn-id": "vpnId",
    "vpn-name": "vpn name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "src-access-node-id": "src node id",
    "src-access-ltp-id": "src ltp id",
    "dst-access-node-id": "dst node id",
    "dst-access-ltp-id": "dst ltp id",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant"
}


AAI-1353-5

SP Partner

Notes:

See Figure 2 above.

Proposal for specific new class of "sp-partner" objects.


aai_schema_v13.xsd

  • "service-instances"

new element "sp-partner" and new element "sp-partners":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SpPartner">
 <xml-root-element name="sp-partner"/>
 <java-attributes>
  <xml-element name="sp-partner-id" type="java.lang.String"/>
  <xml-element name="url" type="java.lang.String"/>
  <xml-element name="callsource" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SpPartners">
 <xml-root-element name="sp-partners"/>
 <java-attributes>
  <xml-element name="sp-partner"
   type="inventory.aai.onap.org.v14.SpPartner"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /sp-partners/sp-partner/partnerId
Method: PUT
Request Body:
{
    "sp-partner-id": "partnerId",
    "url": "partner url",
    "callsource": "some source",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-6

SOTN Attachment

Notes:

See Figure 3 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "allotted-resource"
  • "allotted-resources"

add properties to existing "allotted-resource" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="AllottedResource">
 <xml-root-element name="allotted-resource"/>
 <java-attributes>
  <xml-element name="allotted-resource-name" type="java.lang.String"/>
  <xml-element name="access-provider-id" type="java.lang.String"/>
  <xml-element name="access-client-id" type="java.lang.String"/>
  <xml-element name="access-topology-id" type="java.lang.String"/>
  <xml-element name="access-node-id" type="java.lang.String"/>
  <xml-element name="access-ltp-id" type="java.lang.String"/>
  <xml-element name="cvlan" type="java.lang.String"/>
  <xml-element name="vpn-name" type="java.lang.String"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /customers/customer/{global-customer-id}
 /service-subscriptions/service-subscription/{service-type}
 /service-instances/service-instance/{service-instance-id}
 /allotted-resources/allotted-resource/{id}
Method: PUT
Request Body:
{
    "allotted-resource-name": "some name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "cvlan": "some tag",
    "vpn-name": "some name"
}


AAI-1353-7

LAN port config

Notes:

See Figure 3 above.

Proposal for specific new class of "lan-port-config" objects.


aai_schema_v13.xsd

  • "service-instances"

new element "lan-port-config" and new element "lan-port-configs":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="LanPortConfig">
 <xml-root-element name="lan-port-config"/>
 <java-attributes>
  <xml-element name="lan-port-config-id" type="java.lang.String"/>
  <xml-element name="lan-port-config-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="device-id" type="java.lang.String"/>
  <xml-element name="port-id" type="java.lang.String"/>
  <xml-element name="ip-address" type="java.lang.String"/>
  <xml-element name="vlan-tag" type="java.lang.String"/>
  <xml-element name="input-bandwidth" type="java.lang.String"/>
  <xml-element name="output-bandwidth" type="java.lang.String"/>
  <xml-element name="dhcp-services" 
   type="inventory.aai.onap.org.v14.DhcpServices"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="LanPortConfigs">
 <xml-root-element name="lan-port-configs"/>
 <java-attributes>
  <xml-element name="lan-port-config" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.LanPortConfigs"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /lan-port-configs/lan-port-config/id
Method: PUT
Request Body:
{
    "lan-port-config-id": "id",
    "lan-port-config-name": "some name",
    "description": "some description",
    "device-id": "some device",
    "port-id": "some port",
    "ip-address": "some address",
    "vlan-tag": "some tag",
    "input-bandwidth": "some input",
    "output-bandwidth": "some output",
    "dhcp-services": {
        "dhcp-service": [
            {
                "service-enable": "some enable",
                "dhcp-service-type": "some service",
                "lease-time": "some time",
                "domain-name": "some domain",
                "dns": "some dns",
                "ntp-primary": "some ntp",
                "ntp-secondary": "some secondary",
                "nbns": "some nbns",
                "server-ip-address": "some server"
            }
        ]
    },
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-7bdhcp-service

new element "dhcp-service" and new element "dhcp-services", as sub-component of "lan-port-config":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="DhcpService">
 <xml-root-element name="dhcp-service"/>
 <java-attributes>
  <xml-element name="service-enable" type="java.lang.String"/>
  <xml-element name="dhcp-service-type" type="java.lang.String"/>
  <xml-element name="lease-time" type="java.lang.String"/>
  <xml-element name="domain-name" type="java.lang.String"/>
  <xml-element name="dns" type="java.lang.String"/>
  <xml-element name="ntp-primary" type="java.lang.String"/>
  <xml-element name="ntp-secondary" type="java.lang.String"/>
  <xml-element name="nbns" type="java.lang.String"/>
  <xml-element name="server-ip-address" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="DhcpServices">
 <xml-root-element name="dhcp-services"/>
 <java-attributes>
  <xml-element name="dhcp-service" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.DhcpService"/>
 </java-attributes>
</java-type>


AAI-1353-8

site-resource

Notes:

See Figure 3 above.


new element "site-resource" and new element "site-resources":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SiteResource">
 <xml-root-element name="site-resource"/>
 <java-attributes>
  <xml-element name="site-resource-id" type="java.lang.String"/>
  <xml-element name="site-resource-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="type" type="java.lang.String"/>
  <xml-element name="role" type="java.lang.String"/>
  <xml-element name="generated-site-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SiteResources">
 <xml-root-element name="site-resources"/>
 <java-attributes>
  <xml-element name="site-resource" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.SiteResource"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /site-resources/site-resource/{id}
Method: PUT
Request Body:
{
    "site-resource-id": "{id}",
    "site-resource-name": "some name",
    "description": "some description",
    "type": "some type",
    "role": "some role",
    "generated-site-id": "some id",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            },
            {
                "related-to": "complex",
                "related-link": "url of complex",
                "relationship-data": [
                    "relationship-key": "complex.physical-location-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-9

physical location

Notes:

See Figure 3 above.

aai_schema_v13.xsd

  • "complex"

use existing element "complex" to represent "physical location".


AAI-1353-10

topo-network

Notes:

See Figure 4 above.

Proposal for specific new class of "network-resource" objects.


aai_schema_v13.xsd

  • "pnfs"
  • "p-interfaces"
  • "vpn-bindings"

new element "network-resource" and new element "network-resources":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="networkResource">
 <xml-root-element name="network-resource"/>
 <java-attributes>
  <xml-element name="network-id" type="java.lang.String"/>
  <xml-element name="provider-id" type="java.lang.String"/>
  <xml-element name="client-id" type="java.lang.String"/>
  <xml-element name="te-topo-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="pnfs"
   type="inventory.aai.onap.org.v14.Pnfs"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="networkResources">
 <xml-root-element name="network-resources"/>
 <java-attributes>
  <xml-element name="network-resource" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.NetworkResource"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /network-resources/network-resource/{networkId}
Method: PUT
Request Body:
{
    "network-id": "{networkId}",
    "provider-id": "some provider",
    "client-id": "some client",
    "te-topo-id": "some topo",
    "selflink": "some URL",
    "pnfs": {
        "pnf" : [
            {
                "pnf-name": "name 1"
            },
            {
                "pnf-name": "name 2"
            }
        ]
    },
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-11

termination-point

Notes:

See Figure 4 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "p-interface"
  • "vpn-bindings"

add properties to existing "p-interface" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="PInterface">
 <xml-root-element name="p-interface"/>
 <java-attributes>
  <xml-element name="network-ref" type="java.lang.String"/>
  <xml-element name="transparent" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /pnfs/pnf/{pnfName}
 /p-interfaces/p-interface/{tp-id}
Method: PUT
Request Body:
{
    "interface-name": "{tp-id}",
    "network-ref": "some network",
    "transparent": "some value",
    "operational-status": "some oper",
    "speed-value": "eth bandwidth",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-12

cross-domain link

Notes:

See Figures 5, 6, 7, 8 and 9 above.

Record information in AAI that crosses between ONAP Domain 1 and ONAP Domain 2


new proposed elements "external-aai-list" and "external-aai":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ExtAaiNetworks">
  <xml-root-element name="ext-aai-networks" />
    <java-attributes>
      <xml-element name="ext-aai-network"
       type="inventory.aai.onap.org.v14.ExtAaiNetwork" />
    </java-attributes>
</java-type>

<java-type name="ExtAaiNetwork">
  <xml-root-element name="ext-aai-network" />
  <java-attributes>
    <xml-element name="aai-id" type="java.lang.String"
      required="true" xml-key="true">
    <xml-element name="schema-version" type="java.lang.String">
    <xml-element name="esr-system-info"
      type="inventory.aai.onap.org.v14.EsrSystemInfo" />
    <xml-element name="logical-links"
      type="inventory.aai.onap.org.v14.LogicalLinks" />
    <xml-element name="vpn-bindings"
      type="inventory.aai.onap.org.v14.VpnBindings" />
    <xml-element name="pnfs"
      type="inventory.aai.onap.org.v14.Pnfs" />

    <xml-element name="connectivities"
      type="inventory.aai.onap.org.v14.Connectivities" />
    <xml-element name="lan-port-configs"
      type="inventory.aai.onap.org.v14.LanPortConfigs" />
    <xml-element name="network-resources"
      type="inventory.aai.onap.org.v14.NetworkResources" />
    <xml-element name="site-resources"
      type="inventory.aai.onap.org.v14.SiteResources" />
    <xml-element name="sdwan-vpns"
     type="inventory.aai.onap.org.v14.SdwanVpns"/>
    <xml-element name="devices"
     type="inventory.aai.onap.org.v14.Devices"/>
    <xml-element name="wan-port-configs"
      type="inventory.aai.onap.org.v14.WanPortConfigs" />
  </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /ext-aai-networks/ext-aai-network/{aaiId}
 /p-interfaces/p-interface/{tp-id}
Method: PUT
Request Body:
{
    "aai-id-name": "{aaiId}",
    "schema-version": "some version",
    "esr-system-info": {
        "esr-system-info-id": "some id",
        "system-name": "some name"
    }
}


AAI-1353-13

SDWAN VPN

Notes:

See Figure 10 above.

Proposal for specific new class of "sdwan-vpn" objects.

aai_schema_v13.xsd

  • "service-instance"

new element "sdwan-vpn" and new element "sdwan-vpns":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SdwanVpn">
 <xml-root-element name="sdwan-vpn"/>
 <java-attributes>
  <xml-element name="sdwan-vpn-id" type="java.lang.String"/>
  <xml-element name="sdwan-vpn-name" type="java.lang.String"/>
  <xml-element name="vxlan-id" type="java.lang.String"/>
  <xml-element name="topology" type="java.lang.String"/>
  <xml-element name="tenant-id" type="java.lang.String"/>
  <xml-element name="vpn-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SdwanVpns">
 <xml-root-element name="sdwan-vpns"/>
 <java-attributes>
  <xml-element name="sdwan-vpn" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.SdwanVpn"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /sdwan-vpns/sdwan-vpn/{id}
Method: PUT
Request Body:
{
    "sdwan-vpn-id": "{id}",
    "sdwan-vpn-name": "a name",
    "vxlan-id": "an id",
    "topology": "topology value",
    "tenant-id": "tenant value",
    "vpn-id": "vpn value",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-14

SDWAN Device

Notes:

Proposal for specific new class of "device" objects.



new element "device" and new element "devices":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Device">
 <xml-root-element name="device"/>
 <java-attributes>
  <xml-element name="device-id" type="java.lang.String"/>
  <xml-element name="esn" type="java.lang.String"/>
  <xml-element name="device-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="vendor" type="java.lang.String"/>
  <xml-element name="class" type="java.lang.String"/>
  <xml-element name="type" type="java.lang.String"/>
  <xml-element name="version" type="java.lang.String"/>
  <xml-element name="system-ip" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="Devices">
 <xml-root-element name="devices"/>
 <java-attributes>
  <xml-element name="device" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.Device"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /devices/device/{id}
Method: PUT
Request Body:
{
    "device-id": "{id}",
    "esn": "an esn",
    "device-name": "a name",
    "description": "a description",
    "vendor": "vendor value",
    "class": "a class",
    "type": "a type",
    "version": "version value",
    "system-ip": "ip value",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-15

SDWAN Port

Notes:

Proposal for specific new class of "wan-port-config" objects.


new element "wan-port-config" and new element "wan-port-configs":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="WanPortConfig">
 <xml-root-element name="wan-port-config"/>
 <java-attributes>
  <xml-element name="wan-port-config-id" type="java.lang.String"/>
  <xml-element name="wan-port-config-name" type="java.lang.String"/>
  <xml-element name="device-id" type="java.lang.String"/>
  <xml-element name="vlan-id" type="java.lang.String"/>
  <xml-element name="ip-address" type="java.lang.String"/>
  <xml-element name="provider-ip-address" type="java.lang.String"/>
  <xml-element name="input-bandwidth" type="java.lang.String"/>
  <xml-element name="output-bandwidth" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="port-type" type="java.lang.String"/>
  <xml-element name="port-number" type="java.lang.String"/>
  <xml-element name="transport-network-name" type="java.lang.String"/>
  <xml-element name="device-port-id" type="java.lang.String"/>
  <xml-element name="wan-port-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="WanPortConfigs">
 <xml-root-element name="wan-port-configs"/>
 <java-attributes>
  <xml-element name="wan-port-config" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.WanPortConfig"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /wan-port-configs/wan-port-config/{id}
Method: PUT
Request Body:
{
    "wan-port-config-id": "{id}",
    "wan-port-config-name": "a name",
    "device-id": "id value",
    "vlan-id": "vlan value",
    "ip-address": "ip value",
    "provider-ip-address": "provider ip value",
    "input-bandwidth": "bandwidth value",
    "output-bandwidth": "bandwidth value",
    "description": "a description",
    "port-type": "type value",
    "port-number": "number value",
    "transport-network-name": "name value",
    "device-port-id": "id value",
    "wan-port-id": "id value",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-16pnf

aai_schema_v13.xsd

  • "pnf"

add properties to existing "pnf" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Pnf">
 <xml-root-element name="pnf"/>
 <java-attributes>
  <xml-element name="admin-status" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /pnfs/pnf/{pnfName}
Method: PUT
Request Body:
{
    "interface-name": "{tp-id}",
    "admin-status": "some admin",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
}
AAI-1353-6SOTN Attachment

aai_schema_v13.xsd

  • "allotted-resource"
  • "allotted-resources"

add properties to existing object:

Code Block
languagexml
titleMockup Schema
<xs:element name="allotted-resource">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="access-provider-id" type="xs:string">
    <xs:element name="access-client-id" type="xs:string">
    <xs:element name="access-topology-id" type="xs:string">
    <xs:element name="access-node-id" type="xs:string">
    <xs:element name="access-ltp-id" type="xs:string">
    <xs:element ref="tns:cvlan-tag-entry" minOccurs="0" maxOccurs="1"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

See Figure 3 above.

Update existing class of objects.

AAI-1353-95Site-ServicetbcAAI-1353-96SDWAN-servicetbcAAI-1353-97Topologytbc