summaryrefslogtreecommitdiffstats
path: root/refspec/open-o/sdn-nsd
diff options
context:
space:
mode:
Diffstat (limited to 'refspec/open-o/sdn-nsd')
-rw-r--r--refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml181
-rw-r--r--refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml756
-rw-r--r--refspec/open-o/sdn-nsd/enterprise2DC_template.yaml252
-rw-r--r--refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml1226
-rwxr-xr-xrefspec/open-o/sdn-nsd/sdn-nsd-dm-sample.rst15
-rwxr-xr-xrefspec/open-o/sdn-nsd/sdn-nsd-im-sample.rst15
-rw-r--r--refspec/open-o/sdn-nsd/sdno_type_definition.yaml540
7 files changed, 0 insertions, 2985 deletions
diff --git a/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml b/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml
deleted file mode 100644
index a7d5e42..0000000
--- a/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml
+++ /dev/null
@@ -1,181 +0,0 @@
-# Copyright 2017 Huawei Technologies Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-###############################################################################
-##### L3 VPN Underlay Connection ####
-###############################################################################
-tosca_definitions_version: tosca_simple_yaml_1_0
-description: creates underlay vpn connection, l3 vpn template
-imports:
- - Definitions/underlayVPN_type_definition.yaml
-
-###############################################################################
-
-metadata:
- id: vpnUnderlayL3
- template_name: underlayvpn
- version: 0.1
- vendor: sdno
- template_author: Huawei
-
-
-####################################### TOPOLOGY ##############################
-topology_template:
- inputs:
- name:
- type: string
- description: Name of underlayervpn
- description:
- type: string
- description: description of underlayvpn
- serviceType:
- type: string
- description: serviceType of underlayvpn
- default: 'l3vpn'
- topology:
- type: string
- description: topology of underlayvpn
- default: 'full-mesh'
- technology:
- type: string
- description: technology of underlayvpn
- default: 'mpls'
- pe1_ip:
- type: string
- description: mgrip of pe1
- ac1_port:
- type: string
- description: ac1 port
- ac1_svlan:
- type: integer
- description: ac1 svlan
- ac1_ip:
- type: string
- description: ip of ac1, only for layer3 vpn
- ac1_peer_ip:
- type: string
- description: ip of ac1 peer CE tp, only for layer3 vpn
- ac1_route:
- type: string
- description: route configure of ac1, only for layer3 vpn
- pe2_ip:
- type: string
- description: mgrip of pe2
- ac2_port:
- type: string
- description: ac2 port
- ac2_svlan:
- type: integer
- description: ac2 svlan
- ac2_ip:
- type: string
- description: ip of ac2, only for layer3 vpn
- ac2_peer_ip:
- type: string
- description: ip of ac2 peer CE tp, only for layer3 vpn
- ac2_route:
- type: string
- description: route configure of ac2, only for layer3 vpn
-
-
-# *****************************************************************************
-# node templates
-# *****************************************************************************
-
- node_templates:
-
- # Network Nodes, to be retrieved from the resource inventory
- pe1:
- type: sdno.node.Node
- properties:
- ipAddress: {get_input: pe1_ip}
-
- pe2:
- type: sdno.node.Node
- properties:
- ipAddress: {get_input: pe2_ip}
-
-
- # Connectivity Service and Service Endpoints
-
- vpnService:
- type: sdno.node.ConnectivityService.UnderlayVpn
- properties:
- name: {get_input: name}
- requirements:
- - endPoint: ac1
- - endPoint: ac2
- - realizes: vpnConnection
-
- ac1:
- type: sdno.node.ServiceEndPoint.AC
- properties:
- port: {get_input: ac1_port}
- ip: {get_input: ac1_ip}
- svlan: {get_input: ac1_svlan}
- route: {get_input: ac1_route}
- peerIp: {get_input: ac1_peer_ip}
- requirements:
- - node: pe1
-
- ac2:
- type: sdno.node.ServiceEndPoint.AC
- properties:
- port: {get_input: ac2_port}
- ip: {get_input: ac2_ip}
- svlan: {get_input: ac2_svlan}
- route: {get_input: ac2_route}
- peerIp: {get_input: ac2_peer_ip}
- requirements:
- - node: pe2
-
-
- # Connection and Connection Endpoints
-
- vpnConnection:
- type: sdno.node.Connection.UnderlayVpn
- properties:
- name: {get_input: name}
- description: {get_input: description}
- vpnBasicInfo:
- serviceType: {get_input: serviceType}
- topology: {get_input: topology}
- technology: {get_input: technology}
- requirements:
- - endPoint: tp1
- - endPoint: tp2
-
- interfaces:
- standard:
- create:
- #implementation: 'POST /openoapi/sdnol3vpn/v1/l3vpns'
- delete:
- implementation: 'DELETE /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnol3vpn/v1/l3vpns'
- deploy:
- implementation: 'POST /openoapi/sdnol3vpn/v1/l3vpns'
- undeploy:
- implementation: 'DELETE /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
-
-
- tp1:
- type: sdno.node.ConnectionEndPoint.Tp
-
- tp2:
- type: sdno.node.ConnectionEndPoint.Tp
- substitution_mappings:
- node_type: tosca.nodes.sdno.NS.underlayvpn \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml b/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml
deleted file mode 100644
index e0ce37d..0000000
--- a/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml
+++ /dev/null
@@ -1,756 +0,0 @@
-# Copyright 2017 Huawei Technologies Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-description: undelay vpn type definitions
-
-# *****************************************************************************
-# underlay vpn type definitions, used for both L3vpn and l2vpn
-# *****************************************************************************
-
-metadata:
- version: 0.1
- vendor: sdno
- template_author: Huawei
-
-imports:
- - sdno_type_definition.yaml
-
-# *****************************************************************************
-# DSL definitions
-# *****************************************************************************
-dsl_definitions:
-
-# *****************************************************************************
-# data types
-# *****************************************************************************
-data_types:
-
-
- # Base SDNO Type for Specs - used in Underlay VPN only for now, check reuse and move to common if needed. May need to move iot from type to node
- sdno.datatypes.Spec:
- derived_from: tosca.datatypes.Root
- properties:
- uuid:
- type: string
- description: unique id, format maxLength36
- required: true
- default: 'none'
- additionalInfo:
- type: list
- #max size = 1000
- entry_schema:
- type: AdditionalInfoRow
- required: false
-
- # PW Schema Type
-
- PWSchema:
- derived_from: sdno.datatypes.Spec
- properties:
- pwTech:
- type: string
- description: PW Technology
- required: true
- default: 'none'
-
- # Tunnel Schema Type
-
- TunnelSchema:
- derived_from: sdno.datatypes.Spec
- properties:
- tunnelTech:
- type: string
- description: Technology used for the tunnel
- constraints:
- - valid_values: ['NOP','LDP','RSVP-TE','SR-TE','MPLS-TP','TE-ANY','TE','GRE']
- required: true
- default: 'RSVP-TE'
- pwTech:
- type: PWSpec
- description: Technology used for the pseudowire
- required: true
- tunnelLatency:
- type: integer
- description: this is integer, format int32, minimum 0 and maximum 60000000
- required: true
- default: 0
- tunnelSelectMode:
- type: string
- description: Tunnel selection mode
- constraints:
- - valid_values: ['AutoCreate','AutoSelect','ManualSelect','NOP']
- required: true
- default: 'AutoSelect'
- tunnelCreatePolicy:
- type: MplsTESpec
- description: Policy for creating the tunnel
- required: false
- tunnelAutoSelectPolicy:
- type: SelectTunnelPolicy
- description: Policy for selecting the tunnel
- required: false
-
- PWSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- controlWord:
- type: boolean
- description: enable control
- required: true
- default: false
- pwVlanAction:
- type: string
- description: VLAN action on the pseudowire
- constraints:
- - valid_values: ['Raw','tagged']
- required: true
- default: 'Raw'
-
-
- MplsTESpec:
- derived_from: sdno.datatypes.Spec
- properties:
- bestEffort:
- type: string
- description: max length 200
- required: true
- default: 'true'
- shareMode:
- type: string
- description: Tunnel sharing mode
- constraints:
- - valid_values: ['delegate','1:1','N:1']
- required: true
- default: 'N:1'
- coRoute:
- type: boolean
- description: max length 200
- required: true
- default: false
- bfdEnable:
- type: boolean
- description: max length 200
- required: true
- default: true
- pathConstraint:
- type: TunnelPathConstraint
- description:
- required: false
- tunnelProtectPolicy:
- type: ProtectionSchema
- description:
- required: false
-
- TunnelPathConstraint:
- derived_from: sdno.datatypes.Spec
- properties:
- setupPriority:
- type: integer
- description: format int32, min 0 max 7
- required: true
- default: 5
- holdupPriority:
- type: integer
- description: format int32, min 0 max 7
- required: true
- default: 5
-
- ProtectionSchema:
- derived_from: sdno.datatypes.Spec
- properties:
- layerRate:
- type: string
- description: Layer Rate
- constraints:
- - valid_values: ['LR_Ethernet','LR_IP','LR_Vxlan','LR_PW','LR_NOP','LR_MPLS_TE']
- required: true
- default: 'LR_IP'
- protectType:
- type: string
- description: type of protection
- constraints:
- - valid_values: ['nop','1:1','1+1','hot-standby']
- required: true
- default: '1:1'
- protectDetailType:
- type: string
- description: more detailed protection info
- required: false
- reversionMode:
- type: string
- description: Reversion Mode
- constraints:
- - valid_values: ['RM_UNKNOWN','RM_NON_REVERTIVE','RM_REVERTIVE']
- required: true
- default: 'RM_REVERTIVE'
- wtr:
- type: integer
- description: format int32 minimum 0, maximum 2592000
- required: true
- default: 1
-
- SelectTunnelPolicy:
- derived_from: sdno.datatypes.Spec
- properties:
- loadBalanceNum:
- type: integer
- description: format int32, minimum 1 maximum 64
- required: true
- default: 1
- selectTunnels:
- type: list
- entry_schema:
- type: SelectTunnel
- description: Tunnel Selection Policy
- required: true
-
- SelectTunnel:
- derived_from: sdno.datatypes.Spec
- properties:
- priority:
- type: integer
- description: Tunnel priority to be selected, format int32, minimum 1 maximum 3
- required: true
- default: 1
- tunnelTech:
- type: string
- description: tunnel technology to be selected
- constraints:
- - valid_values: ['NOP','LDP','RSVP-TE','SR-TE','MPLS-TP','TE-ANY','TE','GRE']
- required: true
- default: RSVP-TE
-
- # Path Constraints Type
- PathConstraints:
- derived_from: sdno.datatypes.Spec
- properties:
- tunnelConstraints:
- type: list
- entry_schema:
- type: TunnelSpecificPathConstraint
- pwConstraints:
- type: list
- entry_schema:
- type: PWSpecPathConstraint
-
- TunnelSpecificPathConstraint:
- derived_from: sdno.datatypes.Spec
- properties:
- pathConnection:
- type: PathConnection
- tunnelWorkMode:
- type: string
- constraints:
- - valid_values: ['AutoCreate','AutoSelect','ManualSelect','NOP']
- required: true
- tunnelTech:
- type: string
- constraints:
- - valid_values: ['NOP','LDP','RSVP-TE','SR-TE','MPLS-TP','TE-ANY','TE','GRE']
- required: true
- bodMode:
- type: string
- constraints:
- - valid_values: ['realBod','renewBod']
- required: true
- bandwidth:
- type: integer
- description: bandwidth int64, minimum 0 and max 4000000000
- required: true
- latency:
- type: integer
- description: bandwidth int64, minimum 0 and max 60000000
- required: true
- bindingTunnels:
- type: list
- entry_schema:
- type: string
-
- PathConnection:
- derived_from: sdno.datatypes.Spec
- properties:
- aObject:
- type: ObjectIdentifier
- required: true
- zObject:
- type: ObjectIdentifier
- required: true
- direction:
- type: string
- constraints:
- - valid_values: ['CD_UNI','CD_BI']
- required: true
-
-# Object Identifier is currently only used in L3 VPN, should be moved to the common and re-used
- ObjectIdentifier:
- derived_from: tosca.datatypes.Root
- properties:
- uuid:
- type: string
- required: true
- # format: maxLen36
- objectId:
- type: string
- required: true
- # format: maxLen36
- roleLabel:
- type: string
- required: true
- objectType:
- type: string
- constraints:
- - valid_values: ['Nop','SEG-VPN','TP','TPL','BUSINESSTYPE','COMPOSED-VPN', 'RESOURCE-POOL', 'SUBNETWORK', 'TUNNEL-LSP']
- required: true
-
- PWSpecPathConstraint:
- derived_from: sdno.datatypes.Spec
- properties:
- role:
- type: string
- constraints:
- - valid_values: ['master','backup']
- required: true
- tunnelWorkMode:
- type: string
- constraints:
- - valid_values: ['AutoCreate','AutoSelect','ManualSelect','NOP']
- required: true
- tunnelTech:
- type: string
- constraints:
- - valid_values: ['NOP','LDP','RSVP-TE','SR-TE','MPLS-TP','TE-ANY','TE','GRE']
- required: true
-
-
- # VPN TYPES
-
- DiffService:
- derived_from: sdno.datatypes.Spec
- properties:
- diffServMode:
- type: string
- description: mode of diffservice
- constraints:
- - valid_values: ['Uniform','Pipe','ShortPipe']
- required: true
- default: 'Uniform'
- serviceClass:
- type: string
- description: class of service
- constraints:
- - valid_values: ['BE','AF1','AF2','AF3','AF4','EF','CS6','CS7']
- required: true
- default: 'BE'
- serviceColor:
- type: string
- description: Service Color
- constraints:
- - valid_values: ['Green','Yellow','Red']
- required: true
- default: 'Green'
-
- IpVpnSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- labelMode:
- type: string
- description: label mode type
- constraints:
- - valid_values: ['PerInstance','PerRoute']
- required: true
- default: 'PerInstance'
- frrEnable:
- type: boolean
- description: frr enable
- required: true
- default: false
- diffServ:
- type: DiffService
- description: diff service type
- required: true
-
- VpnBasicInfo:
- derived_from: sdno.datatypes.Spec
- properties:
- topology:
- type: string
- description: type of VPN topology
- constraints:
- - valid_values: ['full-mesh','point_to_multipoint','point_to_point','singlePoint','hubspoke','hubspoke_via_hubce','hubspoke_disjoint','ADD_DROP_Z']
- required: true
- default: 'full-mesh'
- serviceType:
- type: string
- description: type of VPN service
- constraints:
- - valid_values: ['l3vpn','l2vpn','other']
- required: true
- default: 'l3vpn'
-
- technology:
- type: string
- description: type of VPN technology
- constraints:
- - valid_values: ['mpls','rosen multivpn','vxlan overlay l3vpn','eth over sdh','vlan']
- required: true
- default: 'mpls'
- ipMtu:
- type: integer
- description: IP MTU, format is int32, minimum 46 and maximum 9600
- required: true
- default: 9600
- ipVpnSpec:
- type: IpVpnSpec
- description: IP VPN Spec
- required: false
-
- # VPN TYPES
-
- TpTypeSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- layerRate:
- type: string
- description: Layer Rate
- constraints:
- - valid_values: ['LR_Ethernet','LR_IP','LR_Vxlan','LR_PW','LR_NOP','LR_MPLS_TE']
- required: true
- default: 'LR_IP'
- ethernetTpSpec:
- required: false
- type: EthernetTpSpec
- ipTpSpec:
- required: false
- type: IpTpSpec
-
-
- EthernetTpSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- accessType:
- type: string
- constraints:
- - valid_values: ['dot1q','qinq','untag','default']
- required: true
- default: 'default'
- vlanAction:
- type: string
- constraints:
- - valid_values: ['nop','untag','pass','pvlan','swap','stacking']
- required: true
- default: 'pass'
- actionValue:
- type: string
- required: true
- default: 'none'
- qinqCvlanList:
- type: string
- required: true
- default: 'none'
- qinqSvalList:
- type: string
- required: true
- default: 'none'
- dot1qVlanList:
- type: string
- required: true
- default: 'none'
-
- IpTpSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- masterIp:
- type: string
- required: true
- default: '0.0.0.0'
-
- CeTp:
- derived_from: sdno.datatypes.Spec
- properties:
- todo:
- type: string
- required: true
- default: 'none'
-
-
- RouteProtocolSpec:
- derived_from: sdno.datatypes.Spec
- properties:
- todo:
- type: string
- required: true
- default: 'none'
-
-
-# *****************************************************************************
-# node types
-# *****************************************************************************
-
-node_types:
-
- # *****************************************************************************
- # Underlay VPN Service Endpoints
- # *****************************************************************************
- sdno.node.ServiceEndPoint.AC:
- description: Attach Circuit
- derived_from: sdno.node.ServiceEndPoint
- properties:
- port:
- type: string
- required: true
- default: '0'
- ip:
- type: string
- required: true
- default: '0.0.0.0'
- svlan:
- type: integer
- required: true
- default: 0
- route:
- type: string
- required: true
- default: 'none'
- peerIp:
- type: string
- required: true
- default: '0.0.0.0'
-
- # *****************************************************************************
- # Underlay VPN Connectivity Service
- # *****************************************************************************
-
- sdno.node.ConnectivityService.UnderlayVpn:
- derived_from: sdno.node.ConnectivityService
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- deploy:
- description: "Deploy VPN"
- implementation:
- # primary:
- dependencies:
- - sdno.node.Connection.UnderlayVpn/deploy
-
- requirements:
- - endPoint:
- node: sdno.node.ServiceEndPoint.AC
- capability: sdno.capability.ServiceEndPoint
- relationship: sdno.relationship.ServiceEndPoint
- occurrences: [2, UNBOUNDED]
- - realizes:
- node: sdno.node.Connection.UnderlayVpn
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
-
- # *****************************************************************************
- # Underlay VPN Connection Endpoints
- # *****************************************************************************
- sdno.node.ConnectionEndPoint.Tp:
- description: Attach Circuit
- derived_from: sdno.node.ConnectionEndPoint
- properties:
- neId:
- type: string
- required: false
- edgePointRole:
- type: string
- description: Role of the edge point
- constraints:
- - valid_values: [ASBR,nop]
- required: false
- hubSpoke:
- type: string
- description: Is the endpoint hub or spoke
- constraints:
- - valid_values: ['hub','spoke','spokeBridge','other']
- required: true
- default: 'spoke'
- type:
- type: string
- description: Type of the TP
- constraints:
- - valid_values: ['PTP','CTP','TRUNK','LoopBack','NetworkVNode','TPPool','nop']
- required: true
- default: 'CTP'
- workingLayer:
- type: string
- description: Working Layer Rate
- constraints:
- - valid_values: ['LR_Ethernet','LR_IP','LR_Vxlan','LR_PW','LR_NOP','LR_MPLS_TE']
- required: true
- default: 'LR_IP'
- typeSpecList:
- type: list
- #max size = 1000
- entry_schema:
- type: TpTypeSpec
- required: false
- peerCpTp:
- type: CeTp
- required: false
- qosProfileId:
- type: string
- required: false
- inboundQosPolicyId:
- type: string
- required: false
- outboundQosPolicyId:
- type: string
- required: false
- inboundQueueProfileId:
- type: string
- required: false
- outboundQueueProfileId:
- type: string
- required: false
- containedMainTP:
- type: string
- required: false
- routeProtocolSpecs:
- type: list
- #max size = 1000
- entry_schema:
- type: RouteProtocolSpec
- required: false
- direction:
- type: string
- constraints:
- - valid_values: ['IN','OUT','BI_DIRECTION']
- required: true
- default: 'BI_DIRECTION'
- tpRole:
- type: string
- constraints:
- - valid_values: ['UNI','NNI']
- required: true
- default: 'UNI'
-
-
-
- # *****************************************************************************
- # VPN Node Types
- # *****************************************************************************
- sdno.node.Connection.UnderlayVpn:
- derived_from: sdno.node.Connection
- properties:
- pwSchema:
- type: PWSchema
- required: false
- tunnelSchema:
- type: TunnelSchema
- required: false
- pathConstraints:
- type: PathConstraints
- required: false
- vpnBasicInfo:
- type: VpnBasicInfo
- required: false
-
- requirements:
- - endPoint:
- node: sdno.node.ConnectionEndPoint.Tp
- capability: sdno.capability.ConnectionEndPoint
- relationship: sdno.relationship.ConnectionEndPoint
- occurrences: [2, UNBOUNDED]
-
-
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnol3vpn/v1/l3vpns'
- delete:
- implementation: 'DELETE /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
- deploy:
- implementation: 'POST /openoapi/sdnol3vpn/v1/l3vpns'
- undeploy:
- implementation: 'DELETE /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
- update:
- #implementation: 'PUT /openoapi/sdnol3vpn/v1/l3vpns/{uuid}'
-
- # *****************************************************************************
- # Underlayvpn Node Types
- # *****************************************************************************
- tosca.nodes.sdno.NS.underlayvpn:
- properties:
- id:
- type: string
- required: false
- template_name:
- type: string
- required: false
- version:
- type: string
- required: false
- vendor:
- type: string
- required: false
- template_author:
- type: string
- required: false
- name:
- type: string
- required: false
- description:
- type: string
- required: false
- serviceType:
- type: string
- required: false
- topology:
- type: string
- required: false
- technology:
- type: string
- required: false
- pe1_ip:
- type: string
- required: false
- ac1_port:
- type: string
- required: false
- ac1_svlan:
- type: integer
- required: false
- ac1_ip:
- type: string
- required: false
- ac1_peer_ip:
- type: string
- required: false
- ac1_route:
- type: string
- required: false
- pe2_ip:
- type: string
- required: false
- ac2_port:
- type: string
- required: false
- ac2_svlan:
- type: integer
- required: false
- ac2_ip:
- type: string
- required: false
- ac2_peer_ip:
- type: string
- required: false
- ac2_route:
- type: string
- required: false \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/enterprise2DC_template.yaml b/refspec/open-o/sdn-nsd/enterprise2DC_template.yaml
deleted file mode 100644
index c5d8714..0000000
--- a/refspec/open-o/sdn-nsd/enterprise2DC_template.yaml
+++ /dev/null
@@ -1,252 +0,0 @@
-# Copyright 2017 Huawei Technologies Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-###############################################################################
-##### overlay_enterprise to dc ####
-###############################################################################
-tosca_definitions_version: tosca_simple_yaml_1_0
-description: creates overlay connection from Enterprise to DC
-imports:
- - Definitions/enterprise2DC_type_definition.yaml
-
-###############################################################################
-
-metadata:
- id: enterprise2Dc
- template_name: enterprise2DC
- version: 0.1
- vendor: sdno
- template_author: Huawei
-
-
-####################################### TOPOLOGY ##############################
-topology_template:
- inputs:
- vpnName:
- type: string
- description: Name of Overlayvpn
- vpnDescription:
- type: string
- description: description of Overlayvpn
- siteName:
- type: string
- description: Name of Site
- siteCidr:
- type: string
- description: enterprise site cidr
- subnetVlan:
- type: integer
- description: Vlan value of Subnet
- siteVni:
- type: integer
- description: VxLAN ID connect site to vCPE
- vpcName:
- type: string
- description: in format of domain/project/router, should keep consistent with NFVO
- vpcSubnetName:
- type: string
- description: name of subnet in VPC, should keep consistent with NFVO
- vpcSubnetCidr:
- type: string
- description: vpc cidr
- vpcVni:
- type: integer
- description: vpc subnet vxlanID, should keep consistent with NFVO
- vpnType:
- type: string
- description: vpn connection type between vCPE and vpc.
- constraints:
- - valid_values: ['IpSec','VxLAN','MPLS_VPN']
- default: IpSec
- dcGwIp:
- type: string
- description: mgrIp of dcGW
- dcFwIp:
- type: string
- description: mgrIp of dc Firewall
- dcLbIp:
- type: string
- description: mgrIp of dc Load Balancer
-
-# *****************************************************************************
-# node templates
-# *****************************************************************************
-
- node_templates:
-
- # Nodes
- thinCpe:
- type: sdno.node.Node
- properties:
- siteName: {get_input: siteName}
- id: '0'
-
- vCpe:
- type: sdno.node.Node
- properties:
- siteName: {get_input: siteName}
- id: '0'
-
- dcFw:
- type: sdno.node.Node
- properties:
- ipAddress: {get_input: dcFwIp}
- id: '0'
-
- dcLb:
- type: sdno.node.Node
- properties:
- ipAddress: {get_input: dcLbIp}
- id: '0'
-
- dcGw:
- type: sdno.node.Node
- properties:
- ipAddress: {get_input: dcGwIp}
- id: '0'
-
- # do we need another node for dc endpoint? original template had vpc as node as well
-
- # Connectivity Service
-
- enterprise2Dc:
- type: sdno.node.ConnectivityService.Enterprise2Dc
- requirements:
- - endPoint: thinCpeServiceEndpoint
- - endPoint: dcServiceEndpoint
- - realizes: siteSubnet
- - realizes: vpn
- - realizes: vpcSubnet
- - realizes: sfc
-
- thinCpeServiceEndpoint:
- type: sdno.node.ServiceEndPoint.ThinCpe
- requirements:
- - node: thinCpe
- dcServiceEndpoint:
- type: sdno.node.ServiceEndPoint.DcEndpoint
- requirements:
- #- node: vpc or something else
- - node: dcGw
-
- # *****************************************************************************
- # VPC Node Templates (VpcSubnet and Vpc)
- # *****************************************************************************
-
- vpcSubnet:
- type: sdno.node.Connection.VpcSubnet
- properties:
- cidr: {get_input: vpcSubnetCidr}
- name: {get_input: vpcSubnetName}
- vni: {get_input: vpcVni}
- requirements:
- - realizes: vpc
-
- vpc:
- type: sdno.node.Connection.Vpc
- properties:
- name: {get_input: vpcName}
-
- # *****************************************************************************
- # Site Node Templates (Subnet, Vlan, Site with thinCPE and cCPE)
- # *****************************************************************************
-
- siteSubnet:
- type: sdno.node.Connection.SiteSubnet
- properties:
- vni: {get_input: siteVni}
- cidrBlock: {get_input: siteCidr}
- name: {concat: ['siteSubnet_' , {get_input: vpcName}]}
- requirements:
- - realizes: vlan
-
- vlan:
- type: sdno.node.Connection.Vlan
- properties:
- vlanId: {get_input: subnetVlan}
- name: {concat: ['vlan_' , {get_input: vpcName}]}
- requirements:
- - realizes: site
-
- thinCpeConnectionEndPoint:
- type: sdno.node.ConnectionEndPoint.ThinCpe
- requirements:
- - realizes: site
- - node: thinCpe
-
- vCpeConnectionEndPoint:
- type: sdno.node.ConnectionEndPoint.VCpe
- requirements:
- - realizes: site
- - node: vCpe
-
- site:
- type: sdno.node.Connection.Site
- properties:
- name: {get_input: siteName}
- siteDescriptor: {get_input: vpnType}
- requirements:
- - endPoint: vCpeConnectionEndPoint
- - endPoint: thinCpeConnectionEndPoint
-
-
- # *****************************************************************************
- # VPN Node Templates (Vpn, VpnConnection with siteGW and vpcGW)
- # Order of requests: vpn, siteGW, vpcGW, vpnConnection
- # *****************************************************************************
-
- vpn:
- type: sdno.node.Connection.Vpn
- properties:
- name: {get_input: vpnName}
- description: {get_input: vpnDescription}
- vpnDescriptor: {get_input: vpnType}
- requirements:
- - realizes: vpnConnection
-
-
- siteGateway:
- type: sdno.node.ConnectionEndPoint.SiteGateway
- properties:
- name: {concat: ['siteGateway_' , {get_input: vpcName}]}
-
- vpcGateway:
- type: sdno.node.ConnectionEndPoint.VpcGateway
- properties:
- name: {concat: ['vpcGateway_' , {get_input: vpcName}]}
-
- vpnConnection:
- type: sdno.node.Connection.VpnConnection
- properties:
- name: {concat: ['vpnConnection_' , {get_input: vpcName}]}
- requirements:
- - endPoint: siteGateway
- - endPoint: vpcGateway
-
-
- # *****************************************************************************
- # SFC Node Template
- # *****************************************************************************
-
- sfc:
- type: sdno.node.Connection.Sfc
- properties:
- servicePathHops:
- - {hopNumber: 1, sfiId: {get_attribute: [dcFw, id] }, sfgId: "", name: 'dcFw'}
- - {hopNumber: 2, sfiId: {get_attribute: [dcLb, id] }, sfgId: "", name: 'dcLb'}
- scfNeId: {get_attribute: [dcGw, id]}
- name: {concat: ['sfc_' , {get_input: vpcName}]}
-
- substitution_mappings:
- node_type: tosca.nodes.sdno.NS.overlayvpn \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml b/refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml
deleted file mode 100644
index 84a8b39..0000000
--- a/refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml
+++ /dev/null
@@ -1,1226 +0,0 @@
-# Copyright 2017 Huawei Technologies Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-tosca_definitions_version: tosca_simple_yaml_1_0
-description: enteprise to DC type definitions
-
-# *****************************************************************************
-# enteprise to DC type definitions
-# *****************************************************************************
-
-metadata:
- version: 0.1
- vendor: sdno
- template_author: Huawei
-
-imports:
- - sdno_type_definition.yaml
-
-# *****************************************************************************
-# DSL definitions
-# *****************************************************************************
-dsl_definitions:
- Vlan: &Vlan
- siteId:
- type: string
- description: site id
- required: false
- vlanId:
- type: integer
- # format: int32
- description: vlan id
- required: false
- ports:
- type: list
- entry_schema:
- type: string
- description: ports list
- required: false
- portNames:
- type: list
- entry_schema:
- type: string
- description: port name list
- required: false
- description:
- type: string
- default: 'Vlan Service'
-
- SiteSubnet: &SiteSubnet
- siteId:
- type: string
- description: site id
- required: false
- cidrBlock:
- type: string
- description: cidr block
- required: false
- cidrBlockSize:
- type: integer
- # format: int32
- description: cidr block size 8~32
- required: false
- gatewayIp:
- type: string
- description: gateway ip
- required: false
- vlanId:
- type: string
- description: vlan id
- required: false
- vni:
- type: string
- description: vni
- required: false
- ports:
- type: list
- entry_schema:
- type: string
- description: ports list
- required: false
- portNames:
- type: list
- entry_schema:
- type: string
- description: port name list
- required: false
- ipv6Address:
- type: string
- description: ipv6 address
- required: false
- prefixLength:
- type: string
- description: length of prifix
- required: false
- dhcp6Enable:
- type: string
- description: whether enable dhcp6
- required: false
- dhcp6Mode:
- type: string
- description: dhcp mode scope ="serverrelay"
- required: false
- enableDhcp:
- type: string
- description: whether enable dhcp
- required: false
- gatewayInterface:
- type: string
- description: >-
- BDIF interface name, when vni is not null and need to read from AC, pass this parameter to lower layer
- required: false
- description:
- type: string
- default: 'SiteSubnet Service'
-
- Gateway: &Gateway
- vpnId:
- type: string
- required: false
- siteId:
- type: string
- required: false
- vpcId:
- type: string
- required: false
- deployPosition:
- type: string
- required: false
- upstreamBandwidth:
- type: string
- required: false
- downstreamBandwidth:
- type: string
- required: false
- vlans:
- type: string
- required: false
- ports:
- type: list
- entry_schema:
- type: string
- description: ports list
- required: false
- portNames:
- type: list
- entry_schema:
- type: string
- description: port name list
- required: false
- regionId:
- type: string
- required: false
- description:
- type: string
- default: 'Vpn Gateway'
-
-# *****************************************************************************
-# data types
-# *****************************************************************************
-data_types:
-
- VlanType:
- derived_from: tosca.datatypes.Root
- properties: *Vlan
-
- SiteSubnetType:
- derived_from: tosca.datatypes.Root
- properties: *SiteSubnet
-
- GatewayType:
- derived_from: tosca.datatypes.Root
- properties: *Gateway
-
- SubnetAttributes:
- derived_from: tosca.datatypes.Root
- properties:
- id:
- type: string
- required: false
- parentId:
- type: string
- required: false
- networkId:
- type: string
- required: false
- subnetId:
- type: string
- required: false
-
- UnderlayResourcesType:
- derived_from: tosca.datatypes.Root
- properties:
- id:
- type: string
- required: false
- parentId:
- type: string
- required: false
- projectId:
- type: string
- required: false
- routerId:
- type: string
- required: false
-
-
- ReliabilityType:
- derived_from: string
- constraints:
- - valid_values: ['singleFixedNetwork',
- 'dualFixedNetwork',
- 'fixedAndWirelessNetwork',
- 'EthernetNetwork',
- 'VDSLNetwork',
- 'GSHDSLNetwork',
- 'EthernetAndLTENetwork',
- 'EthernetAndEthernetNetwork',
- 'EthernetAndVDSLNetwork',
- 'VDSLAndLTENetwork']
-
- NvStringType:
- derived_from: tosca.datatypes.Root
- properties:
- id:
- type: string
- required: false
- name:
- type: string
- description: name
- required: false
- value:
- type: string
- description: value
- required: false
- firstParentUuid:
- type: string
- description: uuid
- required: false
-
- ServicePathHopType:
- derived_from: tosca.datatypes.Root
- properties:
- name:
- type: string
- description: "SFC name"
- default: 'none'
- hopNumber:
- type: integer
- description: Hop Number of the SFC. Starting from 1.
- sfiId:
- type: string
- description: The identity of service function instance
- sfgId:
- type: string
- description: Reserved.The identity of service function group instance
-
- ServiceClassiferType:
- derived_from: tosca.datatypes.Root
- properties:
- interfaceName:
- type: string
- description: The name of interface.
- zone:
- type: string
- description: trust zone or untrust zone
- rules:
- type: list
- entry_schema:
- type: RuleType
-
- RuleType:
- derived_from: tosca.datatypes.Root
- properties:
- protocol:
- type: string
- description: The protocol type of the rule.
- policy:
- type: string
- description: The policy name of the rule
- srcPort:
- type: string
- description: The srcPort name
- destPort:
- type: string
- description: The destPort name.
- srcIp:
- type: string
- description: The src IP address
- srcMask:
- type: string
- description: The src IP mask address
- destIp:
- type: string
- description: The dest IP address
- destMask:
- type: string
- description: The dest IP mask address
-
- RouteEntryInfoType:
- derived_from: tosca.datatypes.Root
- properties:
- siteId:
- type: string
- description: site id.
- subnetId:
- type: string
- description: subnet id
- cidr:
- type: string
- description: cidr
- vpnGatewayId:
- type: string
- description: vpn gateway id.
- internetGatewayId:
- type: string
- description: internet gateway id
- nextHop:
- type: string
- description: next hop
- precendence:
- type: string
- description: precendence
- routeType:
- type: string
- description: static-routing for now
-
- NeMoType:
- derived_from: tosca.datatypes.Root
-# properties: *BaseServiceInfo
- properties:
- version:
- type: string
- description: version.
- logicId:
- type: string
- description: logic id of NE.
- phyNeId:
- type: string
- description: physical id of NE.
- managementDomainId:
- type: list
- entry_schema:
- type: string
- description: management Domain Id.
- controllerId:
- type: list
- entry_schema:
- type: string
- description: Controller Id list.
- siteId:
- type: list
- entry_schema:
- type: string
- description: site Id list
- productName:
- type: string
- description: product name
- isVirtual:
- type: string
- description: whether is a virtual ne
- ipAddress:
- type: string
- description: ip Address
- source:
- type: string
- description: (scope=network_me,os,network_ems,user)
- owner:
- type: string
- description: owner
- serialNumber:
- type: string
- description: serial Number
- manufacturer:
- type: string
- description: manufacturer
- manufactureDate:
- type: string
- description: manufacture Date
- nativeId:
- type: string
- description: native id
- accessIpVersion:
- type: string
- description: (scope=ipv4,ipv6,ipv4/ipv6)
- neRole:
- type: string
- description: ne role
-
-
-
-# *****************************************************************************
-# node types
-# *****************************************************************************
-
-node_types:
-
- # *****************************************************************************
- # Enterprise2Dc Service Endpoints
- # *****************************************************************************
- sdno.node.ServiceEndPoint.ThinCpe:
- derived_from: sdno.node.ServiceEndPoint
-
- # define more specific Dc service endpoint (DC VAS or VNF ?)
- sdno.node.ServiceEndPoint.DcEndpoint:
- derived_from: sdno.node.ServiceEndPoint
-
- # *****************************************************************************
- # Enterprise2DC
- # *****************************************************************************
-
- sdno.node.ConnectivityService.Enterprise2Dc:
- derived_from: sdno.node.ConnectivityService
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- deploy:
- description: "Deploy Enterprise2Dc"
- implementation:
- # primary:
- dependencies:
- - sdno.node.Connection.VpcSubnet/deploy
- - sdno.node.Connection.SiteSubnet/deploy
- - sdno.node.Connection.Vpn/deploy
- - sdno.node.Connection.Sfc/deploy
- undeploy:
- description: "Deploy Enterprise2Dc"
- implementation:
- # primary:
- dependencies:
- - sdno.node.Connection.VpcSubnet/undeploy
- - sdno.node.Connection.SiteSubnet/undeploy
- - sdno.node.Connection.Vpn/undeploy
- - sdno.node.Connection.Sfc/undeploy
-
-# MUST FIND ANOTHER WAY TO RESTRICT THE SPECIFIC NETWORK HIERARCHY FOR THE SERVICE AT THE SERVICE DEFINITION LAYER
-# CURRENTLY ENFORCED IN THE TEMPLATE
-#
-# requirements:
-# - endPoint:
-# node: sdno.node.ServiceEndPoint.ThinCpe
-# capability: sdno.capability.ServiceEndPoint
-# relationship: sdno.relationship.ServiceEndPoint
-# - endPoint:
-# node: sdno.node.ServiceEndPoint.DcEndpoint
-# capability: sdno.capability.ServiceEndPoint
-# relationship: sdno.relationship.ServiceEndPoint
-# - realizes:
-# node: sdno.node.Connection.SiteSubnet
-# capability: sdno.capability.Realizes
-# relationship: sdno.relationship.RealizedBy
-# - realizes:
-# node: sdno.node.Connection.Vpn
-# capability: sdno.capability.Realizes
-# relationship: sdno.relationship.RealizedBy
-# - realizes:
-# node: sdno.node.Connection.VpcSubnet
-# capability: sdno.capability.Realizes
-# relationship: sdno.relationship.RealizedBy
-# - realizes:
-# node: sdno.node.Connection.Sfc
-# capability: sdno.capability.Realizes
-# relationship: sdno.relationship.RealizedBy
-
-
- # *****************************************************************************
- # VPC Node Types (VpcSubnet and Vpc)
- # *****************************************************************************
-
- sdno.node.Connection.VpcSubnet:
- derived_from: sdno.node.Connection
- properties:
- cidr:
- type: string
- description: VPC subnet IP network, should be in format CIDR format.
- required: false
- vni:
- type: integer
- #format: int32
- description: The Vxlan id
- required: false
- vpcId:
- type: string
- description: VPC owns the subnet.
- required: false
- gatewayIp:
- type: string
- description: Gateway Ip addressed used for this subnet. ipv4 supported. VPC service set this property when Subnet is created.
- required: false
- attributes:
- type: SubnetAttributes
- required: false
- description:
- type: string
- default: "VpcSubnet Service"
- requirements:
- - realizes:
- node: sdno.node.Connection.Vpc
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/vpc.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/vpc.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnovpc/v1/subnets'
- delete:
- #implementation: 'DELETE /openoapi/sdnovpc/v1/subnets/{subnetId}'
- get:
- implementation: 'GET /openoapi/sdnovpc/v1/subnets/{subnetId}'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnovpc/v1/subnets'
- dependencies:
- - sdno.node.Connection.Vpc/deploy
- - sdno.node.Connection.VpcSubnet/deploy
- undeploy:
- implementation:
- primary: 'DELETE /openoapi/sdnovpc/v1/subnets/{subnetId}'
- dependencies:
- - sdno.node.Connection.VpcSubnet/undeploy
- - sdno.node.Connection.Vpc/undeploy
- update:
- #implementation: 'PUT /openoapi/sdnovpc/v1/subnet/{subnetId}'
-
-
-
-
- sdno.node.Connection.Vpc:
- derived_from: sdno.node.Connection
- properties:
- externalIp:
- type: string
- description: External IP assigned to the VPC. ipv4 supported. Used by SNAT and IPSec VPN Service. VPC service set this property after VPC is created.
- required: false
- attributes:
- type: UnderlayResourcesType
- required: false
- description:
- type: string
- default: "Vpc Service"
- artifacts:
- swagger:
- file: swagger/vpc.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/vpc.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnovpc/v1/vpcs'
- delete:
- #implementation: 'DELETE /openoapi/sdnovpc/v1/vpcs/{vpcId}'
- get:
- implementation: 'GET /openoapi/sdnovpc/v1/vpcs/{vpcId}'
- deploy:
- implementation: 'POST /openoapi/sdnovpc/v1/vpcs'
- undeploy:
- implementation: 'DELETE /openoapi/sdnovpc/v1/vpcs/{vpcId}'
- update:
- #implementation: 'PUT /openoapi/sdnovpc/v1/vpsc/{vpcId}'
-
- # *****************************************************************************
- # Site Node Types (Subnet, Vlan, Site with thinCPE and cCPE)
- # *****************************************************************************
-
- sdno.node.Connection.SiteSubnet:
- derived_from: sdno.node.Connection
- properties: *SiteSubnet
- requirements:
- - realizes:
- node: sdno.node.Connection.Vlan
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/site.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/site.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnolocalsite/v1/subnets'
- delete:
- #implementation: 'DELETE /openoapi/sdnolocalsite/v1/subnets/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnolocalsite/v1/subnets'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnolocalsite/v1/subnets'
- dependencies:
- - sdno.node.Connection.Vlan/deploy
- - sdno.node.Connection.SiteSubnet/deploy
- undeploy:
- implementation:
- primary: 'DELETE /openoapi/sdnolocalsite/v1/subnets/{uuid}'
- dependencies:
- - sdno.node.Connection.SiteSubnet/undeploy
- - sdno.node.Connection.Vlan/undeploy
- - sdno.node.ConnectionEndPoint.ThinCpe/undeploy
- - sdno.node.ConnectionEndPoint.VCpe/undeploy
- - sdno.node.ConnectionEndPoint.Site/undeploy
- update:
- implementation: 'PUT /openoapi/sdnolocalsite/v1/subnets/{uuid}'
-
- sdno.node.Connection.Vlan:
- derived_from: sdno.node.Connection
- properties: *Vlan
- requirements:
- - realizes:
- node: sdno.node.Connection.Site
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/site.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/site.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnolocalsite/v1/vlans'
- delete:
- #implementation: 'DELETE /openoapi/sdnolocalsite/v1/vlans/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnolocalsite/v1/vlans'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnolocalsite/v1/vlans'
- dependencies:
- - sdno.node.Connection.Site/deploy
- - sdno.node.Connection.Vlan/deploy
- undeploy:
- implementation: 'DELETE /openoapi/sdnolocalsite/v1/vlans/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnolocalsite/v1/vlans/{uuid}'
-
- sdno.node.ConnectionEndPoint.ThinCpe:
- derived_from: sdno.node.ConnectionEndPoint
- properties:
- siteId:
- type: string
- description: site id
- required: false
- esn:
- type: string
- description: esn
- required: false
- oldEsn:
- type: string
- description: old esn
- required: false
- localCpeType:
- type: string
- description: local cpe type
- required: false
- description:
- type: string
- default: 'ThinCpe'
- requirements:
- - realizes:
- node: sdno.node.Connection.Site
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/site.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/site.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- implementation: 'POST /openoapi/sdnolocalsite/v1/local-cpes'
- delete:
- #implementation: 'DELETE /openoapi/sdnolocalsite/v1/local-cpes/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnolocalsite/v1/local-cpes'
- deploy:
- implementation: 'POST /openoapi/sdnolocalsite/v1/local-cpes'
- undeploy:
- implementation: 'DELETE /openoapi/sdnolocalsite/v1/local-cpes/{uuid}'
- update:
- #implementation: 'PUT /openoapi/sdnolocalsite/v1/local-cpes/{uuid}'
-
- sdno.node.ConnectionEndPoint.VCpe:
- derived_from: sdno.node.ConnectionEndPoint
- properties:
- siteId:
- type: string
- description: site id
- required: false
- popId:
- type: string
- description: pop id
- required: false
- esn:
- type: string
- description: esn
- required: false
- mgrIp:
- type: string
- description: mgr ip
- required: false
- mgrMask:
- type: string
- description: mask of mgr ip
- required: false
- mgrGateway:
- type: string
- description: mgr gateway ip
- required: false
- controllerIp:
- type: string
- description: controller ip
- required: false
- controllerMask:
- type: string
- description: controller mask
- required: false
- vendor:
- type: string
- description: vendor
- required: false
- type:
- type: string
- description: type
- required: false
- vnfdVersion:
- type: string
- description: vnfd Version
- required: false
- vnfdId:
- type: string
- description: vnfd id
- required: false
- callbackUrl:
- type: string
- description: callback Url
- required: false
- vnfmId:
- type: string
- description: vnfm id
- required: false
- dcLocation:
- type: string
- description: dc location
- required: false
- rangeId:
- type: string
- description: range id
- required: false
- referenceCount:
- type: integer
- #format: int32
- description: reference count
- required: false
- template:
- type: string
- description: template
- required: false
- description:
- type: string
- default: 'vCpe'
- requirements:
- - realizes:
- node: sdno.node.Connection.Site
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/site.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/site.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnolocalsite/v1/cloud-cpes'
- delete:
- #implementation: 'DELETE /openoapi/sdnolocalsite/v1/cloud-cpes/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnolocalsite/v1/cloud-cpes'
- deploy:
- implementation: 'POST /openoapi/sdnolocalsite/v1/cloud-cpes'
- undeploy:
- implementation: 'DELETE /openoapi/sdnolocalsite/v1/cloud-cpes/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnolocalsite/v1/cloud-cpes/{uuid}'
-
-
- sdno.node.Connection.Site:
- derived_from: sdno.node.Connection
- properties:
- deployCloudCpeByDeafult:
- type: string
- description:
- default: 'true'
- required: false
- popId:
- type: string
- description: pop id
- required: false
- localCpeType:
- type: string
- description: local cpe type
- required: false
- siteDescriptor:
- type: string
- description: site Descriptor
- required: false
- reliability:
- type: ReliabilityType
- description:
- required: false
- isEncrypt:
- type: string
- description: is encrypt
- required: false
- vpnUpstreamBandwidth:
- type: integer
- #format: int64
- description: vpn Upstream Bandwidth default=-2L
- required: false
- vpnDownstreamBandwidth:
- type: integer
- # format: int64
- description: vpn Downstream Bandwidth default=-2L
- required: false
- totalDownstreamBandwidth:
- type: string
- description: total Downstream Bandwidth
- required: false
- totalUpstreamBandwidth:
- type: string
- description: total Upstream Bandwidth
- required: false
- # localCpes:
- # type: list
- # entry_schema:
- # type: NeMoType
- # required: false
- # cloudCpes:
- # type: list
- # entry_schema:
- # type: NeMoType
- # required: false
- # subnets:
- # type: list
- # entry_schema:
- # type: SiteSubnetType
- # required: false
- # #revisit the type
- # vlans:
- # type: list
- # entry_schema:
- # type: VlanType
- # required: false
- #revisit the type
- routes:
- type: list
- entry_schema:
- type: RouteEntryInfoType
- required: false
- internetGateway:
- type: list
- entry_schema:
- type: GatewayType
- required: false
- description:
- type: string
- default: 'Site Service'
-# MUST FIND ANOTHER WAY TO RESTRICT THE SPECIFIC NETWORK HIERARCHY FOR THE SERVICE AT THE SERVICE DEFINITION LAYER
-# CURRENTLY ENFORCED IN THE TEMPLATE
-#
- # requirements:
- # - endPoint:
- # node: sdno.node.ConnectionEndPoint.ThinCpe
- # capability: sdno.capability.ConnectionEndPoint
- # - endPoint:
- # node: sdno.node.ConnectionEndPoint.VCpe
- # capability: sdno.capability.ConnectionEndPoint
- artifacts:
- swagger:
- file: swagger/site.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/site.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnolocalsite/v1/sites'
- delete:
- #implementation: 'DELETE /openoapi/sdnolocalsite/v1/sites/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnolocalsite/v1/sites'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnolocalsite/v1/sites'
- dependencies:
- - sdno.node.Connection.Site/deploy
- - sdno.node.ConnectionEndPoint.ThinCpe/deploy
- - sdno.node.ConnectionEndPoint.VCpe/deploy
- undeploy:
- implementation: 'DELETE /openoapi/sdnolocalsite/v1/sites/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnolocalsite/v1/sites/{uuid}'
-
- # *****************************************************************************
- # VPN Node Types (Vpn, VpnConnection with siteGW and vpcGW)
- # Order of requests: vpn, siteGW, vpcGW, vpnConnection
- # *****************************************************************************
-
- sdno.node.Connection.Vpn:
- derived_from: sdno.node.Connection
- properties:
- vpnDescriptor:
- type: string
- description: vpn template name
- required: false
- requirements:
- - realizes:
- node: sdno.node.Connection.VpnConnection
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- artifacts:
- swagger:
- file: swagger/overlay.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/overlay.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- implementation: 'POST /openoapi/sdnooverlay/v1/vpns'
- delete:
- implementation: 'DELETE /openoapi/sdnooverlay/v1/vpns/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnooverlay/v1/vpns'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnooverlay/v1/vpns/action/deploy'
- dependencies:
- - sdno.node.Connection.Vpn/deploy
- - sdno.node.Connection.VpnConnection/deploy
- undeploy:
- implementation:
- primary: 'DELETE /openoapi/sdnooverlay/v1/vpns/action/undeploy'
- dependencies:
- - sdno.node.Connection.VpnConnection/undeploy
- - sdno.node.ConnectionEndPoint.SiteGateway/undeploy
- - sdno.node.ConnectionEndPoint.VpcGateway/undeploy
- - sdno.node.Connection.Vpn/undeploy
- update:
- implementation: 'PUT /openoapi/sdnooverlay/v1/vpns/{uuid}'
-
- sdno.node.ConnectionEndPoint.SiteGateway:
- derived_from: sdno.node.ConnectionEndPoint
- properties: *Gateway
- artifacts:
- swagger:
- file: swagger/overlay.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/overlay.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnooverlay/v1/vpn-gateways'
- delete:
- #implementation: 'DELETE /openoapi/sdnooverlay/v1/vpn-gateways'
- get:
- implementation: 'GET /openoapi/sdnooverlay/v1/vpn-gateways'
- deploy:
- implementation: 'POST /openoapi/sdnooverlay/v1/vpn-gateways'
- undeploy:
- implementation: 'DELETE /openoapi/sdnooverlay/v1/vpn-gateways/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnooverlay/v1/vpn-gateways/{uuid}'
-
- sdno.node.ConnectionEndPoint.VpcGateway:
- derived_from: sdno.node.ConnectionEndPoint
- properties: *Gateway
- artifacts:
- swagger:
- file: swagger/overlay.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/overlay.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnooverlay/v1/vpn-gateways'
- delete:
- #implementation: 'DELETE /openoapi/sdnooverlay/v1/vpn-gateways'
- get:
- implementation: 'GET /openoapi/sdnooverlay/v1/vpn-gateways'
- deploy:
- implementation: 'POST /openoapi/sdnooverlay/v1/vpn-gateways'
- undeploy:
- implementation: 'DELETE /openoapi/sdnooverlay/v1/vpn-gateways/{uuid}'
- update:
- implementation: 'PUT /openoapi/sdnooverlay/v1/vpn-gateways/{uuid}'
-
- sdno.node.Connection.VpnConnection:
- derived_from: sdno.node.Connection
- properties:
- vpnId:
- type: string
- required: false
- aEndVpnGatewayId:
- type: string
- required: false
- zEndVpnGatewayId:
- type: string
- required: false
- vni:
- type: string
- required: false
- description:
- type: string
- default: 'vpn connection'
-# MUST FIND ANOTHER WAY TO RESTRICT THE SPECIFIC NETWORK HIERARCHY FOR THE SERVICE AT THE SERVICE DEFINITION LAYER
-# CURRENTLY ENFORCED IN THE TEMPLATE
-#
-# requirements:
-# - endPoint:
-# node: sdno.node.ConnectionEndPoint.SiteGateway
-# capability: sdno.capability.ConnectionEndPoint
-# - endPoint:
-# node: sdno.node.ConnectionEndPoint.VpcGateway
-# capability: sdno.capability.ConnectionEndPoint
- artifacts:
- swagger:
- file: swagger/overlay.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/overlay.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- implementation: 'POST /openoapi/sdnooverlay/v1/vpn-connections'
- delete:
- implementation: 'DELETE /openoapi/sdnooverlay/v1/vpn-connections/{uuid}'
- get:
- implementation: 'GET /openoapi/sdnooverlay/v1/vpn-connections'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnooverlay/v1/vpn-connections/action/deploy'
- dependencies:
- - sdno.node.ConnectionEndPoint.SiteGateway/deploy
- - sdno.node.ConnectionEndPoint.VpcGateway/deploy
- - sdno.node.Connection.VpnConnection/deploy
- undeploy:
- implementation: 'POST /openoapi/sdnooverlay/v1/vpn-connections/action/undeploy'
- update:
- implementation: 'PUT /openoapi/sdnooverlay/v1/vpn-connections/{uuid}'
-
- # *****************************************************************************
- # SFC Node Types
- # *****************************************************************************
-
- sdno.node.Connection.Sfc:
- derived_from: sdno.node.Connection
- properties:
- sfcName:
- type: string
- description: The name of service function chain template
- required: false
- sfcId:
- type: string
- description: The id of service function chain template
- required: false
- popId:
- type: string
- description: The id of pop
- required: false
- scfNeId:
- type: string
- description: The id of scf NE
- required: false
- symmetric:
- type: boolean
- description: Whetehr symmetric
- required: false
- transportType:
- type: string
- description: The type of the transport
- required: false
- servicePathHops:
- type: list
- entry_schema:
- type: ServicePathHopType
- description: Hop Number of the SFC
- required: false
- classifiers:
- type: list
- entry_schema:
- type: ServiceClassiferType
- description: The list of sfc
- required: false
- description:
- type: string
- default: 'Service Function Chain Service'
- artifacts:
- swagger:
- file: swagger/sfc.jaml
- type: sdno.artifacts.Implementation.Swagger
- mapper:
- file: mapper/sfc.tsmap
- type: sdno.artifacts.Implementation.ToscaSwaggerMapper
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- #implementation: 'POST /openoapi/sdnoservicechain/v1/paths'
- delete:
- #implementation: 'DELETE /openoapi/sdnoservicechain/v1/paths/{uuid}'
- get:
- #implementation: 'GET /openoapi/sdnoservicechain/v1/paths'
- deploy:
- implementation: 'POST /openoapi/sdnoservicechain/v1/paths'
- undeploy:
- implementation: 'DELETE /openoapi/sdnoservicechain/v1/paths/{uuid}'
- update:
- #implementation: 'PUT /openoapi/sdnoservicechain/v1/paths/{uuid}'
-
- # *****************************************************************************
- # Onderlayvpn Node Types
- # *****************************************************************************
- tosca.nodes.sdno.NS.overlayvpn:
- properties:
- id:
- type: string
- required: false
- template_name:
- type: string
- required: false
- version:
- type: string
- required: false
- vendor:
- type: string
- required: false
- template_author:
- type: string
- required: false
- vpnName:
- type: string
- required: false
- vpnDescription:
- type: string
- required: false
- siteName:
- type: string
- required: false
- siteCidr:
- type: string
- required: false
- subnetVlan:
- type: integer
- required: false
- siteVni:
- type: integer
- required: false
- vpcName:
- type: string
- required: false
- vpcSubnetName:
- type: string
- required: false
- vpcSubnetCidr:
- type: string
- required: false
- vpcVni:
- type: integer
- required: false
- vpnType:
- type: string
- required: false
- dcGwIp:
- type: string
- required: false
- dcFwIp:
- type: string
- required: false
- dcLbIp:
- type: string
- required: false \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/sdn-nsd-dm-sample.rst b/refspec/open-o/sdn-nsd/sdn-nsd-dm-sample.rst
deleted file mode 100755
index 3a8488e..0000000
--- a/refspec/open-o/sdn-nsd/sdn-nsd-dm-sample.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-========================================================================
-Copyright 2017 CMCC Corporation.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-========================================================================= \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/sdn-nsd-im-sample.rst b/refspec/open-o/sdn-nsd/sdn-nsd-im-sample.rst
deleted file mode 100755
index 3a8488e..0000000
--- a/refspec/open-o/sdn-nsd/sdn-nsd-im-sample.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-========================================================================
-Copyright 2017 CMCC Corporation.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-========================================================================= \ No newline at end of file
diff --git a/refspec/open-o/sdn-nsd/sdno_type_definition.yaml b/refspec/open-o/sdn-nsd/sdno_type_definition.yaml
deleted file mode 100644
index 5b63750..0000000
--- a/refspec/open-o/sdn-nsd/sdno_type_definition.yaml
+++ /dev/null
@@ -1,540 +0,0 @@
-# Copyright 2017 Huawei Technologies Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-tosca_definitions_version: tosca_simple_yaml_1_0
-description: sdno basic types
-
-
-metadata:
- version: 0.1
- vendor: sdno
- template_author: Huawei
-
-# *****************************************************************************
-# macros
-# ****************************************************************************
-dsl_definitions:
-
- BaseServiceInfo: &BaseServiceInfo
- adminStatus:
- type: AdministrationStateType
- description: Used to administratively activate or deactivate already deployed service object
- default: 'none'
- operStatus:
- type: OperationalStateType
- description: Used to indicate if the service entity is operational.
- default: 'none'
- syncStatus:
- type: SyncStateType
- description: Used to indicate of the service entity is in sync or out of sync with the network
- default: 'none'
- actionState:
- type: ActionStateType
- description: Stores the result of the last action on the service object.
- default: 'none'
- statusReason:
- type: string
- description: In case of ERROR actionState, it will have the reason for the error.
- Otherwise its empty. It is required to make create process to be asynchronous.
- default: 'none'
- createTime:
- type: string
- description: create time
- default: 'none'
- updateTime:
- type: string
- description: update time
- default: 'none'
- ownerID:
- type: string
- description: ID of the owner of the object, can contain controllerID
- default: 'sdno'
- tenantID:
- type: string
- description: ID of the tenant
- default: 'none'
- location:
- type: string
- description: Location if on single location
- default: 'none'
- additionalInfo:
- type: list
- #max size = 1000
- entry_schema:
- type: AdditionalInfoRow
- required: false
-
-# *****************************************************************************
-# data types
-# *****************************************************************************
-data_types:
-
- ActionType:
- derived_from: string
- description: >-
- Generic API operations for Connectivity Service lifecycle management. The specific REST requests would be mapped to
- these generic ones.
- constraints:
- - valid_values: ['create','deploy','get','update','undeploy','delete']
-
- ActionStateType:
- derived_from: string
- description: State and/or result of the generic API operations. In the case of the exception, additional information may be present in the statusReason property.
- constraints:
- - valid_values: ['none', 'normal', 'creating', 'deleting', 'updating', 'create_exception', 'update_exception','delete_exception','deploying', 'deploy_exception', 'undeploying', 'undeploy_exception', 'checking', 'check_exception']
-
- LifecycleStateType:
- derived_from: string
- description: >-
- Currently supported lifecycle states for connectivity service. Connectivity Service can either be created
- in the inventory or deployed on the network.
- constraints:
- - valid_values: ['none','created','deployed']
-
- AdministrationStateType:
- derived_from: string
- description: >-
- Administrative State that indicates if already deployed connectivity service object or its component is activated or not.
- constraints:
- - valid_values: ['none', 'active', 'inactive', 'partially_inactive']
-
- OperationalStateType:
- derived_from: string
- description: >-
- Operational State that indicates if already deployed and activated connectivity service object or its component is operational or not.
- constraints:
- - valid_values: ['none','up','down', 'partially_down']
-
-
- SyncStateType:
- derived_from: string
- description: >-
- Sync State that indicates if already deployed and activated connectivity service object is in sync or out of sync with the network.
- constraints:
- - valid_values: ['none', 'sync', 'out-sync']
-
- DirectionalityType:
- derived_from: string
- description: Directionality of the connectivity service flow in the endpoint or port.
- constraints:
- - valid_values: ['input','output','bidirectional']
-
- AdditionalInfoRow:
- derived_from: tosca.datatypes.Root
- description: Row in the additional info list
- properties:
- id:
- type: string
- default: 'none'
- name:
- type: string
- default: 'none'
- value:
- type: string
- default: 'none'
- firstParentUuid:
- type: string
- default: 'none'
-
- StateMachineRow:
- derived_from: tosca.datatypes.Root
- description: Row in the state transition table
- properties:
- apiOperation:
- type: ActionType
- currentState:
- type: LifecycleStateType
- transitionWorkflow:
- type: string
- newState:
- type: LifecycleStateType
-
- StateMachineType:
- derived_from: tosca.datatypes.Root
- description: Connectivity Service State Engine
- properties:
- rows:
- type: list
- entry_schema:
- type: StateMachineRow
-
-
-# *****************************************************************************
-# capability types
-# *****************************************************************************
-
-capability_types:
- # ConnectionEndPoint can be derived from tosca.capabilities.Endpoint ?
- sdno.capability.ConnectionEndPoint:
- derived_from: tosca.capabilities.Root
-
- # ServiceEndPoint can be derived from tosca.capabilities.Endpoint ?
- sdno.capability.ServiceEndPoint:
- derived_from: tosca.capabilities.Root
-
- sdno.capability.Realizes:
- derived_from: tosca.capabilities.Root
-
- sdno.capability.Host:
- derived_from: tosca.capabilities.Node
-
- sdno.capability.Bindable:
- derived_from: tosca.capabilities.Node
-
-# *****************************************************************************
-# interface_types
-# *****************************************************************************
-interface_types:
-
- sdno.interfaces.lifecycle.Standard:
- create:
- description: Standard lifecycle create operation.
- update:
- description: Standard lifecycle configure and update operation.
- deploy:
- description: Standard lifecycle deploy operation.
- undeploy:
- description: Standard lifecycle undeploy operation.
- delete:
- description: Standard lifecycle delete operation.
- get:
- description: Standard lifecycle get operation.
-
-
-# *****************************************************************************
-# relationship types
-# *****************************************************************************
-relationship_types:
-
- sdno.relationship.ServiceEndPoint:
- description: >-
- The relationship specifies which ServiceEndPoints are terminating the ConnectivityService.
- The association of the ConnectivityService to ServiceEndPoints is made via the Ports of the ConnectivityService,
- where each Port of the ConnectivityService has a role and directionality in the context of the ConnectivityService.
- derived_from: tosca.relationships.Root
- properties:
- # This is initial simple ConnectivityServicePort model, this may be enhanced later via separate Nodes and/or Types
- connectivityServicePort:
- type: string
- required: false
- role:
- type: string
- required: false
- directionality:
- type: DirectionalityType
- required: false
- valid_target_types: [sdno.capability.ServiceEndPoint]
-
- sdno.relationship.ConnectionEndPoint:
- description: >-
- The relationship specifies which ConnectionEndPonts are terminating the Connection.
- The association of the Connection to ConnectionEndPoints is made via the Ports of the Connection,
- where each Port of the Connection has a role and directionality in the context of the Connection.
- derived_from: tosca.relationships.Root
- properties:
- # This is initial simple ConnectionPort model, this may be enhanced later via separate Nodes and/or Types
- connectionPort:
- type: string
- required: false
- role:
- type: string
- required: false
- directionality:
- type: DirectionalityType
- required: false
- valid_target_types: [sdno.capability.ConnectionEndPoint]
-
- sdno.relationship.RealizedBy:
- description: >-
- The relationship specifies what Connenctions are Connectivity Services or Connections realized from.
- derived_from: tosca.relationships.Root
- valid_target_types: [sdno.capability.Realizes]
-
- sdno.relationship.HostedOn:
- description: >-
- The relationship specifies what Node the Endpoint is hosted on.
- derived_from: tosca.relationships.Root
- valid_target_types: [sdno.capability.Host]
-
- sdno.relationship.BindsTo:
- description: >-
- The relationship represents a network association relationship between NodeEdgePoint and Network Node types
- derived_from: tosca.relationships.DependsOn
- valid_target_types: [sdno.capability.Bindable]
-
-
-# *****************************************************************************
-# artifact types
-# *****************************************************************************
-artifact_types:
- sdno.artifacts.Implementation.Swagger:
- derived_from: tosca.artifacts.Implementation
- description: swagger API document
- mime_type: application/x-jaml
- file_ext: [jaml]
-
- sdno.artifacts.Implementation.ToscaSwaggerMapper:
- derived_from: tosca.artifacts.Implementation
- description: mapping between property of TOSCA node instance and data model used by swagger API
- mime_type: application/x-tsmap
- file_ext: [tsmap]
-
-
-# *****************************************************************************
-# node types
-# *****************************************************************************
-node_types:
-
- sdno.node.Root:
- derived_from: tosca.nodes.Root
- description: The SDNO Node Type all other SDNO base Node Types derive from
- properties:
- id:
- type: string
- required: true
- default: 'none'
- name:
- type: string
- required: true
- default: 'none'
- description:
- type: string
- required: true
- default: 'none'
- version:
- type: string
- required: true
- default: '1.0'
-
- sdno.node.Node:
- derived_from: sdno.node.Root
- description: >-
- It represents a network element which can be managed remotely (through controller or not). Sometimes called managed element.
- properties:
- ipAddress:
- type: string
- default: 0.0.0.0
- logicID:
- type: string
- default: 'none'
- phyNeID:
- type: string
- default: 'none'
- nativeID:
- type: string
- default: 'none'
- controllerID:
- type: string
- default: 'none'
- siteName:
- type: string
- default: 'none'
- capabilities:
- host:
- type: sdno.capability.Host
- binding:
- type: sdno.capability.Bindable
-
- sdno.node.NodeEdgePoint:
- derived_from: sdno.node.Root
- description: >-
- It represents the inward network-facing aspects of the edge-port functions that access the forwarding capabilities provided by the Node.
- properties:
- mgrIP:
- type: string
- default: 0.0.0.0
- requirements:
- - binding:
- node: sdno.node.Node
- capability: sdno.capability.Bindable
- relationship: sdno.relationship.BindsTo
-
- sdno.node.ServiceEndPoint:
- derived_from: sdno.node.Root
- description: >-
- It represents the outward customer-facing aspects of the edge-port functions that access the forwarding capabilities provided by the Node.
- Hence it provides a limited, simplified view of interest to external clients,
- that enable the clients to request connectivity without the need to understand the provider network internals.
- properties: *BaseServiceInfo
- capabilities:
- endPoint:
- type: sdno.capability.ServiceEndPoint
- requirements:
- - node:
- node: sdno.node.Node
- capability: sdno.capability.Host
- relationship: sdno.relationship.HostedOn
- occurrences: [0, UNBOUNDED]
-
- sdno.node.ConnectivityService:
- derived_from: sdno.node.Root
- description: >-
- It represents an “intent-like” request for connectivity between two or more ServiceEndPoints.
- As such, ConnectivityService is a container for connectivity request details and is distinct
- from the Connection that realizes the request
- # properties: *BaseServiceInfo
- properties:
- adminStatus:
- type: AdministrationStateType
- description: Used to administratively activate or deactivate already deployed service object
- default: 'none'
- operStatus:
- type: OperationalStateType
- description: Used to indicate if the service entity is operational.
- default: 'none'
- syncStatus:
- type: SyncStateType
- description: Used to indicate of the service entity is in sync or out of sync with the network
- default: 'none'
- actionState:
- type: ActionStateType
- description: Stores the result of the last action on the service object.
- default: 'none'
- statusReason:
- type: string
- description: In case of ERROR actionState, it will have the reason for the error.
- Otherwise its empty. It is required to make create process to be asynchronous.
- default: 'none'
- createTime:
- type: string
- description: create time
- default: 'none'
- updateTime:
- type: string
- description: update time
- default: 'none'
- ownerID:
- type: string
- description: ID of the owner of the object, can contain controllerID
- default: 'sdno'
- tenantID:
- type: string
- description: ID of the tenant
- default: 'none'
- location:
- type: string
- description: Location if on single location
- default: 'none'
- additionalInfo:
- type: list
- #max size = 1000
- entry_schema:
- type: AdditionalInfoRow
- required: false
- templateId:
- type: string
- default: 'none'
- lifecycleState:
- type: LifecycleStateType
- default: 'none'
- state_machine:
- type: StateMachineType
- default:
- rows:
- - {apiOperation: create, currentState: none, transitionWorkflow: create, newState: created}
- - {apiOperation: create, currentState: created, transitionWorkflow: error, newState: created}
- - {apiOperation: create, currentState: deployed, transitionWorkflow: error, newState: deployed}
- - {apiOperation: deploy, currentState: none, transitionWorkflow: deploy, newState: deployed}
- - {apiOperation: deploy, currentState: created, transitionWorkflow: deployCreated, newState: deployed}
- - {apiOperation: deploy, currentState: deployed, transitionWorkflow: ERR, newState: deployed}
- - {apiOperation: get, currentState: none, transitionWorkflow: ERR, newState: none}
- - {apiOperation: get, currentState: created, transitionWorkflow: get, newState: created}
- - {apiOperation: get, currentState: deployed, transitionWorkflow: get, newState: deployed}
- - {apiOperation: update, currentState: none, transitionWorkflow: ERR, newState: none}
- - {apiOperation: update, currentState: created, transitionWorkflow: updatecreated, newState: created}
- - {apiOperation: update, currentState: deployed, transitionWorkflow: updateDeployed, newState: deployed}
- - {apiOperation: undeploy, currentState: none, transitionWorkflow: ERR, newState: none}
- - {apiOperation: undeploy, currentState: created, transitionWorkflow: ERR, newState: created}
- - {apiOperation: undeploy, currentState: deployed, transitionWorkflow: undeploy, newState: created}
- - {apiOperation: delete, currentState: none, transitionWorkflow: ERR, newState: none}
- - {apiOperation: delete, currentState: created, transitionWorkflow: deleteCreated, newState: none}
- - {apiOperation: delete, currentState: deployed, transitionWorkflow: deleteDeployed, newState: none}
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- create:
- implementation:
- primary: 'POST /openoapi/sdnonslcm/v1/ns'
- delete:
- implementation:
- primary: 'DELETE /openoapi/sdnonslcm/v1/ns/{instanceid}'
- get:
- implementation:
- primary: 'GET /openoapi/sdnonslcm/v1/ns/{instanceid}'
- deploy:
- implementation:
- primary: 'POST /openoapi/sdnonslcm/v1/ns/{instanceid}/instantiate'
- undeploy:
- implementation:
- primary: 'POST /openoapi/sdnonslcm/v1/ns/{instanceid}/terminate'
- update:
- implementation:
- primary: 'PUT /openoapi/sdnonslcm/v1/ns/{instanceid}'
- requirements:
- - endPoint:
- node: sdno.node.ServiceEndPoint
- capability: sdno.capability.ServiceEndPoint
- relationship: sdno.relationship.ServiceEndPoint
- # check aria processing for the min=2
- occurrences: [2, UNBOUNDED]
- - realizes:
- node: sdno.node.Connection
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- occurrences: [1, UNBOUNDED]
-
-
- sdno.node.ConnectionEndPoint:
- derived_from: sdno.node.Root
- properties:
- *BaseServiceInfo
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- description: >-
- It represents the ingress/egress port aspects that access the forwarding function provided
- by the Connection.
- capabilities:
- endPoint:
- type: sdno.capability.ConnectionEndPoint
- requirements:
- - node:
- node: sdno.node.Node
- capability: sdno.capability.Host
- relationship: sdno.relationship.HostedOn
- occurrences: [0, UNBOUNDED]
-
- sdno.node.Connection:
- derived_from: sdno.node.Root
- properties:
- *BaseServiceInfo
- interfaces:
- standard:
- type: sdno.interfaces.lifecycle.Standard
- description: >-
- The Connection represents an enabled potential for forwarding between two or more connectionEndPoints
- capabilities:
- realizes:
- type: sdno.capability.Realizes
- requirements:
- - endPoint:
- node: sdno.node.ConnectionEndPoint
- capability: sdno.capability.ConnectionEndPoint
- relationship: sdno.relationship.ConnectionEndPoint
- # check aria processing for the min=2
- occurrences: [0, UNBOUNDED]
- - realizes:
- node: sdno.node.Connection
- capability: sdno.capability.Realizes
- relationship: sdno.relationship.RealizedBy
- occurrences: [0, UNBOUNDED] \ No newline at end of file