diff options
author | huangsam <huangshs@163.com> | 2017-11-13 19:11:44 +0800 |
---|---|---|
committer | huangsam <huangshs@163.com> | 2017-11-13 19:11:44 +0800 |
commit | d650571280c041e0602dd93ff407dd16092a320e (patch) | |
tree | 8767d86a2421a0234941ab840dc197d2f13e7fe4 /docs/refspec/open-o/sdn-nsd | |
parent | 49d2cac0a82887b73f167aba3ff32dea09019534 (diff) |
Convert .md to .rst, and delete .yaml file.
Change-Id: I7102b79d4669167683635d320798898f064e8f61
Issue-ID: MODELING-36
Signed-off-by: huangsam <huangshs@163.com>
Diffstat (limited to 'docs/refspec/open-o/sdn-nsd')
5 files changed, 0 insertions, 2955 deletions
diff --git a/docs/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml b/docs/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_template.yaml deleted file mode 100644 index a7d5e42..0000000 --- a/docs/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/docs/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml b/docs/refspec/open-o/sdn-nsd/VoLTE_underlayVPN_type_definition.yaml deleted file mode 100644 index e0ce37d..0000000 --- a/docs/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/docs/refspec/open-o/sdn-nsd/enterprise2DC_template.yaml b/docs/refspec/open-o/sdn-nsd/enterprise2DC_template.yaml deleted file mode 100644 index c5d8714..0000000 --- a/docs/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/docs/refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml b/docs/refspec/open-o/sdn-nsd/enterprise2DC_type_definition.yaml deleted file mode 100644 index 84a8b39..0000000 --- a/docs/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/docs/refspec/open-o/sdn-nsd/sdno_type_definition.yaml b/docs/refspec/open-o/sdn-nsd/sdno_type_definition.yaml deleted file mode 100644 index 5b63750..0000000 --- a/docs/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 |