TAPI v2.1.3 Reference Implementation Agreement
TR-547
Version 1.0
June 2020
ONF Document Type: Technical Recommendation
THIS SPECIFICATION IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE.
Any marks and brands contained herein are the property of their respective owners.
Open Networking Foundation 1000 El Camino Real, Suite 100, Menlo Park, CA 94025 www.opennetworking.org
©2018 Open Networking Foundation. All rights reserved.
Open Networking Foundation, the ONF symbol, and OpenFlow are registered trademarks of the Open Networking Foundation, in the United States and/or in other countries. All other brands, products, or service names are or may be trademarks or service marks of, and are used to identify, products or services of their respective owners.
Table of Contents
Disclaimer
Document History
1 Introduction
1.1 General introduction to the model
1.2 Introduction to this document
2 RESTCONF/YANG Protocol considerations
2.1 Root tree discovery
2.2 YANG model's discovery
2.3 Operation API (RPC) vs Data API (REST)
2.4 Query filtering
2.5 Data encoding
2.5.1 Namespaces
2.6 Notifications
2.6.1 SSE vs WebSocket
3 ONF Transport – API (TAPI) considerations
3.1 TAPI SDK version and documentation
3.2 TAPI Information model
3.2.1 Context
3.2.2 Node and Topology Aspects of Forwarding Domain
3.2.2.1 Topology
3.2.2.2 Node
3.2.2.3 Link
3.2.3 Node Edge Point v/s Service End Point v/s Connection End Point
3.2.3.1 Node-Edge-Point (NEP)
3.2.3.2 Service-Interface-Point (SIP)
3.2.3.3 Connection-End-Point (CEP)
3.2.4 Service, Connection and Route
3.2.4.1 Connectivity-Service (CS)
3.2.4.2 Connection
3.2.4.3 Route
3.2.4.4 Path
3.3 TAPI Data API
3.4 TAPI Notifications
4 Topology abstraction model
4.1 Model guidelines
4.2 Inventory considerations
4.3 Network scenarios
4.3.1 Scenario 1: ROADM network equipped with OTN matrices
4.3.1.1 Model representation (Transitional Link approach)
4.3.2 Scenario 2: Point-to-point DWDM link + Mesh DWDM network
4.3.2.1 Model representation
5 Connectivity service model
5.1 Model guidelines
5.1.1 Multi-layer connectivity service provisioning and connection generation
5.1.2 Resiliency mechanism at connectivity service
5.1.3 Topology and service constrains for connectivity services
6 Use cases Low Level designs (LLDs)
6.1 Topology and services discovery
6.1.1 Use Case 0a: Context & Service Interface Points discovery (pooling mode)
6.1.1.1 Required parameters
6.1.2 Use Case 0b: Topology discovery (synchronous mode)
6.1.2.1 Required parameters
6.1.2.2 Expected results
6.1.3 Use case 0c: Connectivity Service discovery (synchronous mode)
6.1.3.1 Required parameters
6.2 Unconstrained E2E Service Provisioning
6.2.1 Use case 1a: Unconstrained DSR Service Provisioning single wavelength (<100G).
6.2.1.1 Required parameters
6.2.1.2 Expected results
6.2.2 Use Case 1b: Unconstrained DSR Service Provisioning multi wavelength (beyond 100G).
6.2.2.1 Expected results
6.2.3 Use case 1c: Unconstrained ODU Service Provisioning
6.2.4 Use case 1d: Unconstrained PHOTONIC_MEDIA/OTSi Service Provisioning
6.2.4.1 Expected results
6.2.5 Use case 1e: Unconstrained PHOTONIC_MEDIA/OTSiA Service Provisioning
6.2.5.1 Expected results
6.2.6 Use case 1f: Unconstrained PHOTONIC_LAYER_QUALIFER_MC Service Provisioning
6.2.6.1 Expected results
6.3 Constrained Provisioning
6.3.1 Use case 3a: Include/exclude a node or group of nodes.
6.3.1.1 Required parameters
6.3.2 Use case 3b: Include/exclude a link or group of links.
6.3.2.1 Required parameters
6.3.3 Use case 3c: Include/exclude the route used by other service.
6.3.3.1 Required parameters
6.4 Inventory
6.4.1 Use case 4a: Introduction of references to external inventory model.
6.4.2 Use case 4b: Complete Inventory model for NBI Interface.
6.4.2.1 Required parameters
6.4.2.2 Relative location of component with TAPI 2.1.3 using holder location
6.5 Resiliency
6.5.1 Use case 5a: 1+1 OLP OMS/OTS Protection with Diverse Service Provisioning
6.5.1.1 Expected result
6.5.2 Use case 5b: 1+1 OLP Line Protection with Diverse Service Provisioning
6.5.2.1 Expected results
6.5.2.2 Required parameters
6.5.3 Use case 5c: 1+1 protection with Diverse Service Provisioning (eSNCP)
6.5.3.1 Expected result
6.5.3.2 Required parameters
6.5.4 Use case 6a: Dynamic restoration policy for unconstrained and constrained connectivity services.
6.5.4.1 Required parameters
6.5.5 Use case 6b: Pre-Computed restoration policy for unconstrained and constrained connectivity services.
6.5.5.1 Required parameters
6.5.6 Use case 7a: Dynamic restoration and 1+1 protection of DSR/ODU unconstrained service provisioning.
6.5.6.1 Required parameters
6.5.7 Use case 7b: Pre-Computed restoration policy and 1+1 protection of DSR/ODU unconstrained service provisioning.
6.5.7.1 Required parameters
6.5.8 Use case 8: Permanent protection 1+1 for use cases
6.5.8.1 Required parameters
6.6 Maintenance
6.6.1 Use Case 10: Service deletion (applicable to all previous use cases)
6.7 Planning
6.7.1 Use case 12a: Pre-calculation of the optimum path (applicable to all previous use cases)
6.7.1.1 Required parameters
6.7.2 Use case 12b: Simultaneous pre-calculation of two disjoint paths
6.8 Notifications and alarms.
6.8.1 Use case 13a: Subscription to notification service.
6.8.2 Use case 14a: Notification of new topology element (topology, link, node, node-edge-point) inserted/removed in/from the network
6.8.3 Use case 14b: Notification of new connectivity-service element inserted/removed in/from the network.
6.8.4 Use case 14c: Notification of new path-computation element inserted/removed in/from the network
6.8.5 Use case 15a: Notification of status change on existing topology element (topology, link, node, node-edge-point) in the network.
6.8.6 Use case 15b: Notification of status change on existing connectivity-service element in the network.
6.8.7 Use case 15c: Notification of status change on the switching conditions of an existing connection element in the network.
7 References
8 Definitions
8.1 Terms defined elsewhere
8.2 Terms defined in this TR
8.3 Abbreviations and acronyms
9 Individuals engaged
9.1 Editors
9.2 Contributors
List of Figures
Figure 2-1 Example SDN architecture for WDM/OTN network
Figure 3-1 Transport API Functional Architecture
Figure 3-2 TAPI Mapping from ITU-T.
Figure 4-1 Media-channel entities relationship.
Figure 4-2 NS-1: OTN/WDM Network scenario
Figure 4-3 NS-1. T0: TAPI Topology Flat Abstraction model, transitional link approach.
Figure 4-4 NS-1. T0: TAPI Topology Flat Abstraction model, transitional link approach (Device view).
Figure 4-5 NS-1.T0: TAPI Topology Flat Abstraction model multi-layer node approach.
Figure 4-6 NS-1.T0: TAPI Topology Flat Abstraction model multi-layer node approach (Device view).
Figure 4-7 NS-2: OTN/WDM Network scenario 2.
Figure 4-8 NS-2. T0: TAPI Topology Flat Abstraction Transitional Link model.
Figure 4-9 NS-2. T0: TAPI Topology Flat Abstraction Transitional Link model (Device view).
Figure 4-10 NS-2. T0: TAPI Topology Flat Abstraction Multi-Layer Node model.
Figure 4-11 NS-2. T0: TAPI Topology Flat Abstraction Multi-Layer Node model (Device view).
Figure 6-1 UC-0a: Context and Service Interface Point - LLD Workflow.
Figure 6-2 UC-0b: Topology discovery - LLD Workflow.
Figure 6-3 TAPI topology representation at "day 0" following Transitional Link modelling approach.
Figure 6-4 TAPI topology representation at "day 0" following Multi-layer Node modelling approach.
Figure 6-5 UC-0c: Connectivity Service - LLD Workflow.
Figure 6-6 UC-1: Unconstrained end-to-end service provisioning.
Figure 6-7 TAPI Logical Termination Point Template – Basic Arrangements.
Figure 6-8 UNI Modelling simplifications
Figure 6-9 Connectivity Service 10GE client signal over ODU2 (DSR-ODU Fixed Mapping) over ODU4 over single OTSi – Transitional Link modelling
Figure 6-10 Connectivity Service 10GE client signal over ODU2 (DSR-ODU Fixed Mapping) over ODU4 over single OTSi – Multi-layer node modelling.
Figure 6-11 Connectivity Service 1GE client signal over ODU0 over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation)
Figure 6-12 Connectivity Service 1GE client signal over ODU0 over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation) with intermediate ODU0 switching
Figure 6-13 Connectivity Service 10GE client signal over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation) with intermediate transponder regeneration.
Figure 6-14 200GE over ODUc2 connectivity-service over two OTSi/OTSiMC over a single physical (PHOTONIC-MEDIA_OMS) port (Transitional Link).
Figure 6-15 200GE over ODUc2 connectivity-service over two OTSi/OTSiMC over a single physical (PHOTONIC-MEDIA_OMS) port (Multi-Layer Node).
Figure 6-16 OTSi single lambda connectivity-service - Transitional link model.
Figure 6-17 OTSi single lambda connectivity-service - Multi-layer node approach.
Figure 6-18 OTSiA multi-wavelength connectivity-service (transitional link model abstraction).
Figure 6-19 OTSiA multi-wavelength connectivity-service (multi-layer node model abstraction).
Figure 6-20 Media-channel entities relationship.
Figure 6-21 Full Bidirectional - UNI and OMS bidirectional scenario.
Figure 6-22 Mixed Scenario - UNI bidirectional and OMS unidirectional.
Figure 6-23 Full Unidirectional - UNI and OMS unidirectional scenario.
Figure 6-24 UC-4b Hierarchical arrangement of equipment objects with TAPI 2.1.3.
Figure 6-25 UC-4b Network Element Subracks container-holder location examples.
Figure 6-26 UC-5c OMS OLP protection schemas.
Figure 6-27 UC-5a OLP protection TAPI representation.
Figure 6-28 UC-5b Line OLP protection schema.
Figure 6-29 UC-5b: Resiliency workflow.
Figure 6-30 UC-5b OLP TAPI Connectivity-Service low-level description.
Figure 6-31 UC-5b OLP TAPI Connectivity-Service low-level description. Unidirectional OLS modelling.
Figure 6-32 UC-5c eSNCP protection schema.
Figure 6-33 UC5c: eSNCP protection schema for HO-ODUk Top Connection.
Figure 6-34 UC-6a: Resiliency workflow.
Figure 6-35 UC-10: Service Deletion workflow.
Figure 6-36 UC-12a: Pre-calculation of the optimum path workflow.
Figure 6-37 UC-12b: Simultaneous pre-calculation of two disjoint paths
Figure 6-38 UC-13a: Subscription to notification stream service
List of Tables
Table 1: RESTCONF Query filters
Table 2: TAPI YANG models summary.
Table 3: Minimum subset required of TAPI RESTCONF Data API
Table 4: Inventory-id fields format.
Table 5: Inventory-id fields combination allowance.
Table 7: Context object definition
Table 8: Service Interface Point (SIP) object definition
Table 9: Topology object definition
Table 10: Node object definition
Table 11: Node-edge-point object definition
Table 12: Node-rule-group object definition
Table 13: Rule object definition
Table 14: Link object definition
Table 15: Connectivity-service object definition
Table 16: Connectivity-service-end-point object definition
Table 17: Connection object definition
Table 18: Connection-end-point object definition
Table 19: ODU-Connection-end-point-spec object definition
Table 20: otsi-connection-end-point-spec object definition
Table 21: OTSI-Assembly-connection-end-point-spec object definition
Table 22 media-channel-connection-end-point-spec object definition
Table 23 ots-media-channel-connection-end-point-spec object definition
Table 23: Route object definition
Table 24: otsia-connectivity-service-end-point-spec object definition
Table 25: mca-connectivity-service-end-point-spec object definition
Table 26: Connectivity-service node topology-constrains object definitions.
Table 27: Connectivity-service link topology-constrains object definitions.
Table 28: Connectivity-service diversity-exclusion and coroute-inclusion object definitions.
Table 29: Main parameters for equipment model required.
Table 30: Equipment object's attributes required for UC4b.
Table 31: Common-holder-properties object's attributes required for UC4b.
Table 32: Common-equipment-properties object's attributes required for UC4b.
Table 33: Common-actual-properties object's attributes required for UC4b.
Table 34: Device object attributes required for UC4b.
Table 35: Connectivity-service attributes for 1+1 UC5b.
Table 36: Connectivity-service-End-Points attributes for UC5b.
Table 37: Connection attributes for UC5b.
Table 38: Switch-control attributes for UC5b.
Table 39: Switch attributes for UC5b.
Table 40: Connectivity-service attributes for UC5c.
Table 41: Connectivity-service attributes for UC6a.
Table 42: Connectivity-service attributes for UC6a.
Table 43: Connectivity-service attributes for UC7a.
Table 44: Connectivity-service attributes for UC7b.
Table 45: Connectivity-service attributes for UC8.
Table 46: Path-computation-context attributes.
Table 47: Path-comp-serv object's attributes.
Table 48: Path-service endpoint object's attributes.
Table 49: Topology constraint object's attributes.
Table 50: Routing constraint object's attributes.
Table 51: Objective function object's attributes.
Table 52: Optimization-constraint object's attributes.
Version |
Date |
Description of Change |
---|---|---|
0.1 |
August 06, 2019 |
Initial version of the Reference Implementation document of TAPI v2.1.2 |
0.2 |
December 03, 2019 |
General upgrade with new use cases. |
0.5 |
February 18, 2020 |
First general TAPI group review. |
0.7 |
April 08, 2020 |
Model consolidation into v2.1.3. |
0.8 |
April 15, 2020 |
Refinement of the UC4b |
0.9 |
April 21, 2020 |
Full review until section 4.3 |
0.10 |
May 26, 2020 |
Full review, with pending comments for tracking discussion into following versions. |
0.11 |
May 26, 2020 |
Fully reviewed document with latest contributions into Transitional Link modelling, UNI interfaces simplification description and protection scheme refinements into UCs 5a, 5b and 5c. |
1.0 |
June 23, 2020 |
TR Official version. |
This ONF Technical Recommendation (TR) focuses on the definition of a Reference Implementation guide for a TRANSPORT-API (TAPI) based RESTCONF implementation focus on the v2.1.3 version of the TAPI information models (pruned/refactored from the ONF Core Information Model 1.4) and available in the public ONF GitHub repository at:
https://github.com/OpenNetworkingFoundation/TAPI/releases/tag/v2.1.3
T he purpose of this document is to describe a set of guidelines and recommendations for a standard use of the TAPI models in combination with RESTCONF protocol for the implementation of the interface between network systems in charge of the control/management of networks based on WDM/OTN technologies. At the time management is automated it simply becomes control as explained by [ONF Core Model].
The target architectures, for which this reference interface is proposed, it is conceptually described in Figure 2-1. As depicted in the architecture, this reference NBI will be the single interface between Operations Support System (OSS), Orchestrator, (super) Controller, etc Any system with a repository that maintains alignment with a view of the underlying system as presented by the controller.. The scope of the architecture covers multiple domains within the same network, and it might consist of one or more layers of controllers, where each layer controller will export a certain level of abstraction through its TAPI context (e.g., a hierarchical controller may consume several domain SDN-C TAPI contexts to conform a multi-domain network and exposed it as an aggregated TAPI context). In this document we will refer the lower layer of controllers as SDN domain controller or SDN-C, and, to any hierarchical controller performing the same management/control capabilities or use cases over multiple network domains as Software-Defined Transport Network (SDTN) controller.
Thus, this specification is intended for the interface between an SDN-C and Orchestrator, (super) Controller or client layer systems (such OSS) where the SDN-C provides its network management through a TAPI context and maintains a synchronized view in a database.
Moreover, the client layer which will consume the TAPI context systems may have distinct roles (e.g., physical inventory) and that they may be composed of different components or applications. E.g., an OSS system composed by different pieces dedicated to different applications (such inventory, assurance or planning).
This document aims to define the base requirements for any TAPI Server entity (e.g., a SDN-C) which is intended to expose the management/control
The term management/control shall express that the scope is much wider than just configuring. The proposed common interface shall account for:
This specification is supported by standards, protocol specifications, IETF RFCs, ITU-T recommendations and the ONF Transport API (TAPI) documentation. The appropriate references to this supplementary material are included where appropriate along the document to support the statements which conforms this specification. However, this document does not intend to re-define the protocols or information models composing the specification but to complement, clarify or extends in those cases where a corner case or different interpretations have been found along the mentioned standards.
Figure 2-1 Example SDN architecture for WDM/OTN network
RESTCONF [RFC 8040] is proposed as the transport protocol for all the defined management operations in the SDN architecture NBIs.
RESTCONF is a HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG 1.0 [RFC 6020] using the data store concepts defined in the Network Configuration Protocol (NETCONF) [RFC 6241].
The RESTCONF specification consists of the following resources:
The RESTCONF API {+restconf} root resource can be discovered by getting the "/.well-known/host-meta" resource ([RFC 6415]) and using the <Link> element containing the "restconf" attribute.
The client will send the following query:
GET /.well-known/host-meta HTTP/1.1
Host: example.com
Accept: application/xrd+xml
The server might respond as follows:
HTTP/1.1 200 OK
Content-Type: application/xrd+xml
Content-Length: nnn
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'>
<Link rel='restconf' href='/restconf'/>
</XRD>
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="36e9105f-a721-44ac-b570-ec747826d3d0"><ac:parameter ac:name="">_Ref1737226</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="389fc887-369a-4036-9e5f-4e693d897428"><ac:parameter ac:name="">_Toc14454012</ac:parameter></ac:structured-macro>RESTCONF utilizes the YANG library [RFC 7895] and [RFC 8525] to allow a client to discover the YANG module conformance information for the server, in case the client wants to use it.
The mandatory {+restconf}/yang-library-version resource is used to clearly identify the version of the YANG library used by the server.
The server MUST implement the "ietf-yang-library" module, which MUST identify all the YANG modules used by the server, within the "modules-state/module" and "yang-library/module-set/module" list resource. The modules set resource is located at (both implementations are accepted so far):
According to [RFC 7895]: {+restconf}/data/ietf-yang-library:modules-state
According to [RFC 8525]: {+restconf}/data/ietf-yang-library:yang-library
Currently there are two allowed APIs resources defined in RESTCONF. Although both are compatible and valid, given the low penetration in the industry of the RPC-based API implementation, it is not currently included in this specification.
Thus, the current specification takes the support of the RESTCONF 'data' API as mandatory; while the 'operations' API, based on the TAPI defined RPCs, is considered optional.
According to RESTCONF specification, each operation allows zero or more query parameters to be present in the request URI. Specifically, query operations' parameters are described in Section 4.8 of [RFC 8040]. Thus, the following query parameters MUST be supported by any interface compliant with this specification:
Table 1: RESTCONF Query filters
Name |
Methods |
Description |
content |
GET, |
Select config and/or non-config data resources |
depth |
GET, |
Request limited subtree depth in the reply content |
fields |
GET, |
Request a subset of the target resource contents |
filter |
GET, |
Boolean notification filter for event stream resources |
start-time |
GET, |
Replay buffer start time for event stream resources |
stop-time |
GET, |
Replay buffer stop time for event stream resources |
The specific use of these query parameters will be detailed in the different Use Cases Low Level Design (LLDs) included in section 7.
The "depth", "fields", "filter", "replay" and "with-defaults" query parameter URIs SHALL be listed in the "capability" leaf-list as part of the container definition in the "ietf-restconf-monitoring" module, defined in Section 9.3 of [RFC 8040], to advertise the server capability of supporting these query parameters. This resource shall be located at:
JSON encoding formats MUST be supported according to with Section 3.2 of [RFC 8040].
The solution adhering to this specification MUST support media type "application/yang-data+json" as defined in [RFC 7951]. This MUST be advertised in the HTTP Header fields "Accept" or "Content-Type" of the corresponding HTTP Request/Response messages.
According to Section 1.1.5 of [RFC 8040], "The JSON representation is defined in "JSON Encoding of Data Modeled with YANG" [RFC7951] and supported with the "application/yang-data+json" media type".
Thus, any implementation according to this specification MUST be compliant with the rules and definitions included in [RFC 7951], specifically those related to namespaces qualification included in Section 4 of [RFC 7951]
.
Example:
GET /restconf/data/tapi-common:context HTTP/1.1 Host: example.com Accept: application/yang-data+json
{
"tapi-common:context": { # Root tree object is qualified by the module name.
"tapi-connectivity:connectivity-context": { # Any augmentation introduces a new qualification of the module name where the augmentation was defined.
"connectivity-service": [
{
"uuid": "0b530f9f-0fc3-4d27-b6c3-5c821214db1f"
}
]
}
}
The solution adhering to this specification must support all YANG-defined event notifications included in the information models included in section 4.2 of this document.
The solution implementing the RESTCONF server must expose its supported notification streams by populating the "restconf-state/streams" container definition in the "ietf-restconf-monitoring" module defined in Section 9.3 of [RFC 8040]. The streams resource can be found at:
The RESTCONF server MUST support, at least, the NETCONF event stream with JSON encoding format, as defined in Section 3.2.3 of [RFC5277] and Section 6.2 of [RFC 8040].
The RESTCONF server MUST support the RESTCONF Notifications subscription mechanism is defined in Section 6.3 of [RFC 8040].
The solution must support the "filter" Query Parameter, as defined in Section 4.8.4 of [RFC 8040], to indicate the target subset of the possible events being advertised by the RESTCONF server stream.
The RESTCONF standard defines the Server Sent Events (SSE) [W3C.REC-xml-20081126] as the standard protocol for RESTCONF stream notification service; however, traditionally (such in in previous OIF TAPI interoperability activities) the WebSocket [RFC 6455] protocol implementations have been availed by ONF and thus it is widely implemented.
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="13aa5f37-efb1-42d5-b445-05417e0740c7"><ac:parameter ac:name="">_Ref3469787</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="47bb6468-b837-4f81-99ab-c4a233ef91c2"><ac:parameter ac:name="">_Toc14454017</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="aa80e2a9-11cf-47f7-9622-107166ed5f53"><ac:parameter ac:name="">_Toc16163717</ac:parameter></ac:structured-macro>
<span style="color: #141313">The</span> ONF Transport API (T-API/TAPI) <span style="color: #141313">project is constantly evolving and new releases of the information models are periodically updated. All TAPI release notes can be found at:</span>
[ https://github.com/OpenNetworkingFoundation/TAPI/releases|%20https:/github.com/OpenNetworkingFoundation/TAPI/releases]
<span style="color: #141313">Current document is focus on TAPI v2.1.3 release.</span>
DISCLAIMER: The PHOTONIC_LAYER_QUALIFIER_MC and PHOTONIC_LAYER_QUALIFIER_OTSiMC layer-protocol-qualifier values have been newly introduced in TAPI v2.1.3. They are equivalent to previous PHOTONIC_LAYER_QUALIFER_SMC and PHOTONIC_LAYER_QUALIFER_NMC of v2.1.2 respectively. Please find more detailed information in [TAPI-TOP-MODEL-REQ-20].
The Transport API abstracts a common set of control plane functions such as Network Topology, Connectivity Requests, Path Computation, OAM and Network Virtualization to a set of Service interfaces. It also includes support for the following technology-specific interface profiles for Carrier Ethernet (L2), Optical Transport Network (OTN) framework (L1-ODU) and Photonic Media (L0-WDM).
Figure 3-1 Transport API Functional Architecture
The entire list of YANG models composing the TAPI information model can be found in Table 2.
Table 2: TAPI YANG models summary.
Model |
Version |
Revision (dd/mm/yyyy) |
---|---|---|
tapi-common.yang |
2.1.3 |
23/04/2020 |
tapi-connectivity.yang |
2.1.3 |
16/06/2020 |
tapi-eth.yang |
2.1.3 |
23/04/2020 |
tapi-dsr.yang |
2.1.3 |
23/04/2020 |
tapi-streaming.yang |
2.1.3 |
16/06/2020 |
tapi-notification.yang |
2.1.3 |
16/06/2020 |
tapi-oam.yang |
2.1.3 |
23/04/2020 |
tapi-odu.yang |
2.1.3 |
23/04/2020 |
tapi-photonic-media.yang |
2.1.3 |
16/06/2020 |
tapi-path-computation.yang |
2.1.3 |
23/04/2020 |
tapi-topology.yang |
2.1.3 |
23/04/2020 |
tapi-virtual-network.yang This model is not being use in the present version of this reference implementation agreement. |
2.1.3 |
16/06/2020 |
Finally, TAPI models are pruned/refactored from the ONF Core Information Model (Core IM) 1.4 [ONF TR-512], thus some of the Core IM model concepts are key to understand the TAPI semantics and meanings. In this section, we introduce some associations to ONF Core IM concepts, for more a full explanation of these concepts please refer to [ONF TR-512] document.
In the rest of this section it is included a brief overview of the main TAPI concepts which will be used along the rest of the document.
T-API is based on a context relationship between a server and client. A Context is an abstraction that allows for logical isolation and grouping of network resource abstractions for specific purposes/applications and/or information exchange with its users/clients over an interface.
It is understood that the APIs are executed within a shared Context between the API provider and its client application. A shared Context models everything that exists in an API provider to support a given API client.
The TAPI server tapi-common:context includes the following information:
ODU Layer: Models the ODU layer as per [ITU-T G.709]
PHOTONIC_MEDIA Layer: Models the OCH, OTSi, OTSiA, OTSiG, OMS, OTS and Media channels as per [ITU-T G.872].
The Forwarding-Domain described in the ONF Core IM, represents the opportunity to enable forwarding between its edge-points. The Forwarding-Domain can hold zero or more instances of Forwarding Constructs (or Connections) and provides the context for requesting and instructing the formation, adjustment and removal of Connections.
The Forwarding-Domain supports a recursive aggregation relationship such that the internal construction of a Forwarding-Domain can be exposed as multiple lower level Forwarding-Domains and associated Links (partitioning).
For the purposes of API requirements, the Forwarding-Domain has been refactored as two separate entities: Topology and Node.
The T-API Topology is an abstract representation of the topological-aspects of a particular set of Network Resources. It is described in terms of the underlying topological network of Nodes and Links that enable the forwarding capabilities of that particular set of Network Resources.
The T-API Node is an abstract representation of the forwarding-capabilities of a particular set of Network Resources. It is described in terms of the aggregation of set of ports (Node-Edge-Point) belonging to those Network Resources and the potential to enable forwarding of information between those edge ports.
The T-API Link is an abstract representation of the effective adjacency between two or more associated Nodes in a Topology. It is terminated by Node-Edge-Points of the associated Nodes.
The TAPI Logical-Termination-Point (LTP) – is realized by three different constructs: Node-Edge-Point (NEP), Connection-End-Point (CEP) and Connectivity Service-End-Point (CSEP); they are by design, intended to be a generic, flexible modeling constructs, that can model:
So as such, the inherent flexibility, while preserving the underlying pattern, could lead to different model arrangements for same functional configuration.
The Logical-Termination-Point (LTP) described in the ONF Core IM, represents encapsulation of the addressing, mapping, termination, adaptation and OAM functions of one or more transport layers (including circuit and packet forms). Where the client – server relationship is fixed 1:1 and immutable, the different layers can be encapsulated in a single LTP instance. Where there is a n:1 relationship between client and server, the layers are split over separate instances of LTP.
Functions that can be associated/disassociated to/from a Connection, such as OAM, protection switching, and performance monitoring are referenced as secondary entities through the associated LTP instance.
Following an illustrative mapping between ITU-T G.800/805 and TAPI constructs is described.
Figure 3-2 TAPI Mapping from ITU-T.
The Node-Edge-Point represents the inward network-facing aspects of the edge-port functions that access the forwarding capabilities provided by the Node. Hence it provides an encapsulation of addressing, mapping, termination, adaptation and OAM functions of one or more transport layers (including circuit and packet forms) performed at the entry and exit points of the Node. The Node-Edge-Points have a specific role and directionality with respect to a specific Link.
The TAPI Service-Interface-Point 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 (e.g. shared addressing, capacity, resource availability, etc.), that enable the clients to request connectivity without the need to understand the provider network internals. Service-Interface-Point have a mapping relationship (one-to-one, one-to-many, many-to-many) to Node-Edge-Points.
The Connection-End-Point represents the ingress/egress port aspects that access the forwarding function provided by the Connection. The Connection-End-Points have a client-server relationship with the Node-Edge-Points. The Connection-End-Points have a specific role and directionality with respect to a specific Connection.
The T-API Connectivity-Service represents an "intent-like" request for connectivity, between two or more Service-Interface-Points exposed by the Context. As such, Connectivity-Service is a container for connectivity request details and is distinct from the Connection that realizes the request. The requestor of the Connectivity-Service is expected to be able to express their intent using just an "external" Node view of Forwarding-Domain and the advertised Service-Interface-Points and not require knowledge of the "internal" Topology details of the Forwarding-Domain.
The T-API Connection represents an enabled (provisioned) potential for forwarding (including all circuit and packet forms) between two or more Node-Edge-Points (another realization of LTP described in the ONF Core IM) from the Node aspect of the Forwarding-Domain. A Connection is typically described utilizing the "internal" Topology view of Forwarding-Domain. The T-API Connection is terminated by Connection-End-Points which are clients of the associated Node-Edge-Points. As such, the Connection is a container for provisioned connectivity that tracks the state of the allocated resources and is distinct from the Connectivity-Service request.
In this specification we distinguish two different types of connections:
The TAPI Route represents the route of a Top Connection through the Topology representation. It is described as a list of Connection End-Points (CEPs) cross-connected by the underlying Lower-Connections referenced in the lower-connection list of the Top Connection The TAPI Connection Route is described in terms of Cross-Connections rather than Link-Connections (Top Connections). Conceptually a Connection Route is concatenation of Link Connections (resources associated with a Link) and Cross-Connections (resources within the Nodes in the underlying Topology)..
The following route states are foreseen:
Note that lower-connections are used to reflect partitioning and route to reflect signal flow.
The TAPI Path is used to represent the output of path computation APIs and is described by an ordered list of TE Links, either as strict hops (Node-Edge-Points) or as loose hops (Nodes).
As it was described in Section 3.2 he TAPI information models can be divided into: Data API and Operations API. In this first specification, only the Data API be supported, and the Operations API is considered as optional and its support will be considered as a plus, because it can give for flexibility to the TAPI Client applications in order to implement the use cases proposed in this document.
Therefore, the list of Data API entries inferred from the TAPI YANG information models, following a RESTCONF API implementation according to the guidelines included in section3, contains a huge list of entries which MAY not be needed to implement the use cases proposed, and thus not all entries are considered mandatory in this version of the NBI requirements. This API entries support different REST operations namely, CREATE, RETRIEVE, UPDATE and DELETE (i.e., CRUD). For further clarification of its implementation according to the RESTCONF standard please see Section 4, RFC 8040.
Thus, for the first version of this specification, it is proposed a minimal set of objects which shall support full CRUD support according to the TAPI YANG model's specification (e.g., configurable objects should support all operations while non configurable objects shall support only the RETRIEVE operation). Please note that although the list of API entries is reduced here, the whole model MUST be supported, e.g., all child resources of the proposed list of objects need to be configurable.
The complete mandatory operation set of TAPI objects required here can be found in Table 3.
Table 3: Minimum subset required of TAPI RESTCONF Data API
API Entry |
RESTCONF Operations allowed |
/tapi-common:context/ |
GET, PUT, PATCH POST, DELETE operations are not intended for the context root object. |
/tapi-common:context/service-interface-point/ |
GET |
/tapi-common:context/service-interface-point={uuid}/ |
GET, PUT, DELETE, PATCH |
/tapi-common:context/tapi-topology:topology-context/nw-topology-service/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/node={uuid}/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/link={uuid}/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/node={uuid}/owned-node-edge-point={uuid}/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/node={uuid}/owned-node-edge-point={uuid}/tapi-connectivity:cep-list/ |
GET |
/tapi-common:context/tapi-topology:topology-context/topology={uuid}/node={uuid}/owned-node-edge-point={uuid}/tapi-connectivity:cep-list/connection-end-point={uuid}/ |
GET |
/tapi-common:context/tapi-connectivity:connectivity-context/ |
GET, POST, PUT, DELETE, PATCH |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/ |
GET |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service={uuid}/ |
GET, PUT, DELETE, PATCH |
/tapi-common:context/tapi-connectivity:connectivity-context/connection={uuid}/ |
GET |
/tapi-common:context/tapi-path-computation:path-computation-context/ |
GET, POST, PUT, DELETE, PATCH |
/tapi-common:context/tapi-path-computation:path-computation-context/path-comp-service/ |
GET |
/tapi-common:context/tapi-path-computation:path-computation-context/path-comp-service={uuid}/ |
GET, PUT, DELETE, PATCH |
/tapi-common:context/tapi-path-computation:path-computation-context/path={uuid}/ |
GET |
/tapi-common:context/tapi-common:context/tapi-notification:notification-context/ |
GET |
/tapi-common:context/tapi-common:context/tapi-notification:notification-context/notif-subscription/ |
GET |
/tapi-common:context/tapi-common:context/tapi-notification:notification-context/notif-subscription={uuid}/ |
GET, PUT, DELETE, PATCH |
Please note that the TAPI implementation based on the RESTCONF standard defines a much wider set of API entries, thus consider the previous list as a reduction of the implementation scope.
The current TAPI information model includes a specific model, the tapi-notification@2018-12-10.yang, which defines the TAPI notifications format but also a custom TAPI notification subscription procedure to enable a TAPI clients to subscribe to receive these notifications in the form of asynchronous events.
This TAPI Notification mechanism MUST be compatible with the standard RESTCONF notification subscription mechanism already described in Section 3.6.
In this chapter a reference topology abstraction model is described. Due to the need of composing a unified view of the network resources along different TAPI implementations, some guidelines are required in order to constrain the possibilities or interpretations of the current proposed models.
The topology model should provide the explicit multi-layer topology representation of the L2-L0 network including OTS, OMS, MC, OTSIMC, OTSi/OTSiA, ODU, DSR layers.
Please note that OTU layer is intentionally simplified in TAPI model. ODU and OTSiA/OTSi representation is considered enough to cover all our defined use cases.
Based on ONF TAPI 2.1.3 models, a topology abstraction view is described for vendor agnostic integration across management/control systems in the frame of the proposed architecture in Section 2. The TAPI Topology Flat Abstraction model collapses all layers in a single multi-layer topology. The nomenclature T0 – Multi-layer topology and T#0 is used interchangeably to reference this topology in the remaining document.
To properly describe the topology abstraction model proposed, the following global guidelines are presented:
module: tapi-topology
augment /tapi-common:context:
+--rw topology-context
+--ro nw-topology-service
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="15d11ffd-c21b-49cf-a171-33acf671f173"><ac:plain-text-body><![CDATA[ |
+--ro topology* [topology-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro uuid? uuid |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="37f76117-12b1-48de-b4e3-c1f2de491519"><ac:plain-text-body><![CDATA[ |
+--ro name* [value-name]]]></ac:plain-text-body></ac:structured-macro> |
|
+--ro value-name string |
|
+--ro value? string
|
augment /tapi-common:context:
+--ro topology* [uuid]
+--ro node* [uuid]
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="c8afcae2-46b5-4749-8d6b-0f50d428b186"><ac:plain-text-body><![CDATA[ |
+--ro owned-node-edge-point* [uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="3d1630d0-7527-4efc-a203-950f77132dc9"><ac:plain-text-body><![CDATA[ |
|
+--ro mapped-service-interface-point* [service-interface-point-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro service-interface-point-uuid -> /tapi-common:context/service-interface-point/uuid
|
In case these constrains exists in the network and a service is requested between NEPs which are not potentially connected, the TAPI Server MUST reject any Connectivity Service request no matter this restriction was exposed or not.
module: tapi-topology
augment /tapi-common:context:
+--rw topology-context
+--ro topology* [uuid]
+--ro node* [uuid]
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="77a9fe19-5dac-4073-a321-0ac2ad809e61"><ac:plain-text-body><![CDATA[ |
+--ro node-rule-group* [uuid]]]></ac:plain-text-body></ac:structured-macro> |
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="70d2deb6-a63a-4e6b-ad67-a0112dfafcc4"><ac:plain-text-body><![CDATA[ |
|
+--ro rule* [local-id]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro rule-type? rule-type |
||
|
|
+--ro forwarding-rule? forwarding-rule |
|
|
|
+--ro override-priority? uint64 |
|
|
|
+--ro local-id string |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="a13e3ea5-eb2c-4c3e-974d-8c3d699889b7"><ac:plain-text-body><![CDATA[ |
|
|
+--ro name* [value-name]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro value-name string |
|
|
|
+--ro value? string |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="13a8a3b0-4180-4f69-9923-d592ec81ece6"><ac:plain-text-body><![CDATA[ |
|
+--ro node-edge-point* [topology-uuid node-uuid node-edge-point-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
|
|
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
|
|
|
+--ro node-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
|
|
|
+--ro node-edge-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid
|
module: tapi-topology
augment /tapi-common:context:
+--ro topology* [uuid]
+--ro link* [uuid]
+--ro transitioned-layer-protocol-name* string
|
augment /tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point: |
+--ro topology-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid |
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid |
In case of the multi-layer nodes collapses the OTSi/OTSiA layer together with DSR and ODU layers into the same tapi-topology:node representation the NEPs CAN be qualified as:
Moreover, in case of the multi-layer node implementation, the following requirements' set, related to the OTSI PHOTONIC_MEDIA layer, MUST apply to the multi-layer node construct too.
Please note, the TAPI Client MUST deal with both ODU-OTSI transition modelling approaches.
OTSi/Photonic Media layers:
supported-cep-layer-protocol-qualifier= [PHOTONIC_LAYER_QUALIFIER_OTSi/OTSiA], [PHOTONIC_LAYER_QUALIFIER_UNSPECIFIED]
Photonic-Media forwarding domains represents the Photonic Media (Open Line System (OLS)) network
supported-cep-layer-protocol-qualifier = [
PHOTONIC_LAYER_QUALIFIER_UNSPECIFIED,
PHOTONIC_LAYER_QUALIFIER_MC,
PHOTONIC_LAYER_QUALIFIER_OTSiMC].
The MC layer MUST be represented by client NEPs/CEPs on top of the PHOTONIC_MEDIA_UNSPECIFIED (representing OTS/OMS layers) NEPs/CEPs at the OLS side of the links between Transponder Line Ports and ROADM Add/Drop ports.
The OTSiMC layer MAY be optionally represented by client NEPs/CEPs on top of the PHOTONIC_LAYER_QUALIFER_MC CEPs. The representation of this layer does only provide monitoring information but not switching (which only happens at MC layer), thus its inclusion depends on the HW monitoring capabilities of the optical HW components of the network.
Figure 4-1 Media-channel entities relationship.
Hardware identifiers currently stored in legacy OSS inventory systems MUST be correlated with T-API UUID identifiers. This information will be provided by the SDN optical domain controller suppliers as a pre-requisite for the use cases described in section 0 of the present document.
For every inventory element represented as a logical element in TAPI by the SDN Domain controller, an INVENTORY_ID tapi-common:name property shall be included into the logical element construct.
The INVENTORY_ID tag SHALL be included for the following TAPI objects:
The proposal for a common definition of the INVENTORY_ID tag, follows 2 main principles and it is based on [TMF-814] naming standards:
The generic format is the concatenation of n tuple elements "/<field>=<index>"
The supported fields for tuple elements are:
Table 4: Inventory-id fields format.
<field> |
meaning |
ne |
Network Element |
r |
Rack |
sh |
Shelf |
s_sh |
Sub-shelf |
sl |
Slot |
s_sl |
Sub-slot |
p |
Port |
The supported sequence for the tuple is the following and covers a variety of supported scenarios that may not all be applicable.
[ ] means that may not be present
[ …] means that multiple values can be specified (marked as
green x in the matrix)<span style="color: #141313"> </span>
/ne=<nw-ne-name>[/r=<r_index>][/sh=<sh_index>[/s_sh=<s_sh_index> …]][[/sl=<sl_index>[/s_sl=<s_sl_index> …]][/p=<p_index> …]]
Meaning for the port the following possible combinations depicted in the following matrix.
Each column represents which tuples can be after the element listed in the first column.
Table 5: Inventory-id fields combination allowance.
|
/r= |
/sh= |
/s_sh= |
/sl= |
/s_sl= |
/p= |
/ne=<nw-ne-name> |
X |
x |
- |
x |
- |
x |
/r=<r_index> |
- |
x |
- |
x |
- |
- |
/sh=<sh_index> |
- |
- |
x |
x |
- |
- |
/s_sh=<s_sh_index> |
- |
- |
- |
x |
- |
- |
/sl=<sl_index> |
- |
- |
- |
- |
x |
x |
/s_sl=<s_sl_index> |
- |
- |
- |
- |
x |
x |
/p=<p_index> |
- |
- |
- |
- |
- |
- |
<span style="color: #141313"> </span>
<span style="color: #141313">Some examples of INVENTORY_ID for the node-edge-points potentially mapped to the ports described in the examples shown in Figure 6-25 in Section 6.4.2.2:</span>
Example 1:
"name": [{"value_name": "INVENTORY_ID", "value":
"/ne=MadridNorte/r=1/sh=1/sl=1/s_sl=0"}]
Example 2:
"name": [{"value_name": "INVENTORY_ID", "value": "/ne=MadridNorte/r=1/sh=2/sl=2/s_sl=1/p=3"}]
Example 3:
"name": [{"value_name": "INVENTORY_ID", "value": "/ne=MadridNorte/r=1/sh=3/sl=7/s_sl=2/p=2"}]
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="905caeac-257e-48f8-b39f-ba4b37fd22c7"><ac:parameter ac:name="">_Toc14454029</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="8acd456a-7cd3-4942-a957-c384963327ec"><ac:parameter ac:name="">_Toc16163739</ac:parameter></ac:structured-macro>
Now we introduce two network scenarios, as the base examples to clearly explain the model assumptions explained before.
This first scenario represents a three-ROADM network equipped with OTN matrices to perform grooming of Ethernet 1G and 10G client signals into 100G line-side interfaces transmitting OTSi colored optical wavelengths.
Figure 4-2 NS-1: OTN/WDM Network scenario
Please note, in the following representations, the OMS and OTS layers are present purely for information purposes. The specification has stated that these two layers are collapsed from the switching representation perspective. They are represented using PHOTONIC_LAYER_QUALIFIER_UNSPECIFIED layer-protocol-qualifier construct. Please find more details in [TAPI-TOP-MODEL-REQ-22].
Figure 4-3 NS-1. T0: TAPI Topology Flat Abstraction model, transitional link approach.
Figure 4-4 NS-1. T0: TAPI Topology Flat Abstraction model, transitional link approach (Device view).
Figure 4-5 NS-1.T0: TAPI Topology Flat Abstraction model multi-layer node approach.
Figure 4-6 NS-1.T0: TAPI Topology Flat Abstraction model multi-layer node approach (Device view).
The second scenario consists of two separated networks: one network is a point-to-point DWDM link separated by 2 In-Line-Amplifiers (ILAs) and terminated in Fixed OADM structures consisting on Mux/Demux; and the second is a similar three-ROADM network this time equipped with Transponder/Muxponder cards, the two transponders present in the network are connected to a Line Side Optical Line Protection (OLP) structures to provide optical 1+1 protection resilient schema.
Figure 4-7 NS-2: OTN/WDM Network scenario 2.
Figure 4-8 NS-2. T0: TAPI Topology Flat Abstraction Transitional Link model.
Figure 4-9 NS-2. T0: TAPI Topology Flat Abstraction Transitional Link model (Device view).
Figure 4-10 NS-2. T0: TAPI Topology Flat Abstraction Multi-Layer Node model.
Figure 4-11 NS-2. T0: TAPI Topology Flat Abstraction Multi-Layer Node model (Device view).
In this chapter the complete connectivity service model will be described. The intention is to clarify some gaps which might not be clear just be reading the current description included in TAPI YANG models which need to be enhanced in order to provide a uniform understanding on the use of the TAPI information models. Thus, in this section a set of reference design guidelines are stated in order to constrain the possibilities or interpretations of the current proposed models.
The topology absence model is excluded. TAPI model covers connectivity-service without connections but in this reference implementation agreement this option is not covered.
The following guidelines MUST be met by all implementations following the current specification.
ODU Layer: Models the ODU layer as per described in [ITU-T G.709].
PHOTONIC_MEDIA Layer: Models the OTSi,/ OTSiA, and Media Channels (OTSIMC, MC) as per described in [ITU-T G.872].
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--rw connectivity-service* [uuid]
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="24bb95a3-f378-4125-aed6-a34738df6aae"><ac:plain-text-body><![CDATA[ |
+--ro connection* [connection-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
+--ro connection-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid
|
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--ro connection* [uuid]
+--ro route* [local-id]
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="1b355646-0c1f-46cb-a298-332970a37906"><ac:plain-text-body><![CDATA[ |
+--ro connection-end-point* [topology-uuid node-uuid node-edge-point-uuid connection-end-point-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
|
+--ro node-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
|
+--ro node-edge-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid |
|
+--ro connection-end-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/uuid |
+--ro local-id string |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="db1e7f1d-fa32-4cee-a229-c3ed539d4675"><ac:plain-text-body><![CDATA[ |
+--ro name* [value-name]]]></ac:plain-text-body></ac:structured-macro> |
+--ro value-name string |
|
+--ro value? string
|
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--ro connection* [uuid]
+--ro lower-connection* [connection-uuid]
+--ro connection-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid
|
augment /tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point:
+--ro cep-list
+--ro connection-end-point* [uuid]
+--ro parent-node-edge-point
+--ro topology-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid
|
augment /tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point:
+--ro cep-list
+--ro connection-end-point* [uuid]
+--ro client-node-edge-point* [topology-uuid node-uuid node-edge-point-uuid]
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid
Multi-layer connectivity service provisioning and connection generation<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="dc80943e-dabc-479b-8053-c5267d357aef"><ac:plain-text-body><![CDATA[In the proposed model, the TAPI server MUST include a reference to each layer Top Connection within the Connectivity Service's Connection list as stated in [TAPI-CONN-MODEL-REQ-3].]]></ac:plain-text-body></ac:structured-macro>
|
augment /tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point:
+--ro cep-list
+--ro connection-end-point* [uuid]
+--ro parent-node-edge-point
+--ro topology-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid? -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid |
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro node-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/uuid |
+--ro node-edge-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/uuid
|
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--ro connection* [uuid]
+--ro supported-client-link* [topology-uuid link-uuid]
+--ro topology-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/uuid |
+--ro link-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/link/uuid
|
At the ODU layer the CS triggers the creation of:
At the PHOTONIC_LAYER_QUALIFER_OTSI layer the CS triggers the creation of:
If the multi-layer node modelling approach defined in [TAPI-TOP-MODEL-REQ-11] is followed (OTSI<>ODU layer transition is represented by the NEPs <> CEPs stack relationship instead of transitional links) and related HO-ODUk NEPs are not present in the multi-layer node, then these NEPs MUST be generated to allow the HO-ODUk Top Connection to be realized.
If the multi-layer node modelling approach defined in [TAPI-TOP-MODEL-REQ-11] is followed (OTSI<>ODU layer transition is represented by the NEPs <> CEPs stack relationship instead of transitional links) OTSi XC Connections may not be generated, nor referenced by the lower-connection list. In this case, the Top Connection's route MUST consists of the CEPs referenced at tapi-connectivity:connection/connection-end-point list.
At the Photonic Media Layer, the CS triggers the creation of one or more PHOTONIC_LAYER_QUALIFER_MC and optionally a PHOTONIC_LAYER_QUALIFER_OTSIMC Top Connections at the Media-Channel layer.
OTSiMC layer representation, including Top Connections, XCs and CEPs, is only required to represent monitoring capabilities at the filters but not switching (switching is just happening at the lower MC layer). Thus, the representation of the OTSiMC CEPs is optional and it depends upon the monitoring capabilities of the photonic_media layer filters at the OTSiMC level (signal positioning within the actual spectrum filtered MC).
OTSiMC CEPs are present for two purposes, forwarding and monitoring. In the photonic model is never relevant for forwarding (strict fate sharing with MC), but only for monitoring.
Following a complete generic example of a DSR connectivity-service is presented, to clearly identify the connection association hierarchy described by the previous set of requirements.
{"context":{
"connectivity-context":{
"connectivity-service":[
{"uuid":"CS_UUID",
"end-point":[
{"local_id":"LOCAL_ID_A","service-interface-point":{"service-interface-point-uuid":"SIP_UUID_A"}},
{"local_id":"LOCAL_ID_B","service-interface-point":{"service-interface-point-uuid":"SIP_UUID_B"}}],
"connection":[
{"connection_uuid":"DSR_TOP_1"},
{"connection-uuid":"ODUj_TOP_1"},
…
{"connection-uuid":"ODUj+N_TOP_N"},
{"connection-uuid":"HO-ODUk_TOP_1"},
{"connection-uuid":"OTSi_TOP_1"},
{"connection-uuid":"OTSIMC_TOP_1"},
{"connection-uuid":"MC_TOP_1"}
]}
],
"connection":[
{"uuid": "DSR_TOP_1",
"lower-connection":[
{"connection-uuid":"DSR_XC_1"},
{"connection-uuid":"DSR_XC_2"}
]},
{"uuid": "ODUj_TOP_1",
"lower-connection":[
{"connection-uuid":"ODUj_XC_1"},
{"connection-uuid":"ODUj_XC_2"},
]},
… (repeated for N ODUj layer rates)
{"uuid": "ODUj_TOP_N",
"lower-connection":[
{"connection-uuid":"ODUj_XC_1"},
{"connection-uuid":"ODUj_XC_2"},
]},
{"uuid": "HO-ODUk_TOP_1",
"lower-connection":[
{"connection-uuid":"HO-ODUk_XC_1"},
{"connection-uuid":"HO-ODUk_XC_2"}
]},
{"uuid": "OTSi_TOP_1",
"lower-connection":[
{"connection-uuid":"OTSi_XC_1"},
{"connection-uuid":"OTSi_XC_2"}
]},
{"uuid": "OTSiMC_TOP_1",
"lower-connection":[
{"connection-uuid":"OTSiMC_XC_1"},
{"connection-uuid":"OTSiMC_XC_2"},
…
{"connection-uuid":"OTSiMC_XC_N"}
]} ,
{"uuid": "MC_TOP_1",
"lower-connection":[
{"connection-uuid":"MC_XC_1"},
{"connection-uuid":"MC_XC_2"},
…
{"connection-uuid":"MC_XC_N"}
]}
]}
}
}
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--rw connectivity-service* [uuid]
+--rw resilience-type |
|
|
+--rw restoration-policy? restoration-policy |
|
+--rw protection-type? protection-type
|
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--rw connection* [uuid]
+--ro switch-control* [uuid]
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="d5ae4522-a09f-4f27-a273-1f46f1fb82c1"><ac:plain-text-body><![CDATA[ |
+--ro sub-switch-control* [connection-uuid switch-control-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro connection-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid |
|
|
+--ro switch-control-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/switch-control/uuid |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="6a8cc9be-df6f-45c3-9871-a78b328fb634"><ac:plain-text-body><![CDATA[ |
+--ro switch* [local-id]]]></ac:plain-text-body></ac:structured-macro> |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="2442d947-ff1f-4102-a285-a397ffc838a1"><ac:plain-text-body><![CDATA[ |
|
+--ro selected-connection-end-point* [topology-uuid node-uuid node-edge-point-uuid connection-end-point-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro connection-end-point-uuid -> /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/uuid |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="49d61910-ebae-434b-9c04-18ee9fc6445b"><ac:plain-text-body><![CDATA[ |
|
+--ro selected-route* [connection-uuid route-local-id]]]></ac:plain-text-body></ac:structured-macro> |
|
|
+--ro connection-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid |
|
|
+--ro route-local-id -> /tapi-common:context/tapi-connectivity:connectivity-context/connection/route/local-id |
|
+--ro selection-control? selection-control |
|
|
+--ro selection-reason? selection-reason |
|
|
+--ro switch-direction? tapi-common:port-direction |
|
|
+--ro local-id string |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="6aae3d49-623b-4a7a-b480-b12ca728e0bb"><ac:plain-text-body><![CDATA[ |
|
+--ro name* [value-name]]]></ac:plain-text-body></ac:structured-macro> |
+--ro uuid uuid |
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="28e1d933-44f5-4324-b910-e805da9c8ba8"><ac:plain-text-body><![CDATA[ |
+--ro name* [value-name]]]></ac:plain-text-body></ac:structured-macro> |
|
+--ro resilience-type |
||
|
+--ro restoration-policy? restoration-policy |
|
|
+--ro protection-type? protection-type |
|
+--ro restoration-coordinate-type? coordinate-type |
||
+--ro restore-priority? uint64 |
||
+--ro reversion-mode? reversion-mode |
||
+--ro wait-to-revert-time? uint64 |
||
+--ro hold-off-time? uint64 |
||
+--ro is-lock-out? boolean |
||
+--ro is-frozen? boolean |
||
+--ro is-coordinated-switching-both-ends? boolean |
||
+--ro max-switch-times? uint64 |
||
+--ro preferred-restoration-layer* tapi-common:layer-protocol-name Topology and service constrains for connectivity services
|
module: tapi-connectivity
augment /tapi-common:context:
+--rw connectivity-context
+--rw connectivity-service* [uuid]
+--rw coroute-inclusion |
|
|
+--rw connectivity-service-uuid? -> /tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/uuid |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="3af06d44-9784-4e5b-b7e8-185c23f2b1b0"><ac:plain-text-body><![CDATA[ |
+--rw diversity-exclusion* [connectivity-service-uuid]]]></ac:plain-text-body></ac:structured-macro> |
|
+--rw connectivity-service-uuid -> /tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/uuid |
+--rw diversity-policy? diversity-policy |
|
+--rw include-topology* tapi-common:uuid |
|
+--rw avoid-topology* tapi-common:uuid |
|
+--rw include-path* tapi-common:uuid |
|
+--rw exclude-path* tapi-common:uuid |
|
+--rw include-link* tapi-common:uuid |
|
+--rw exclude-link* tapi-common:uuid |
|
+--rw include-node* tapi-common:uuid |
|
+--rw exclude-node* tapi-common:uuid Use cases Low Level designs (LLDs)Topology and services discoveryThis use case consists on retrieving all information available from TAPI servers (SDN-C) including service-interface-points and topology. Is intended to be performed by any NBI client controller, module or application which intends to discover the logical representation of the network done by the SDN-C.
|
In this version at least the pooling mechanism is foreseen to be fully supported by any provider SDN-C compliant with this specification.
The use case is divided in two
Number |
UC0a |
Name |
Context & Service Interface Points discovery (pooling mode) |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The TAPI Context and Service Interface Points are the relevant network service information required before any connectivity-service creation operation. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Discovery |
Description & Workflow |
This use case consists on retrieving context and service-interface-point information (Figure 6-1). If the first operation (1) is correctly supported by the NBI server, it MUST retrieve the context filtered subtree up to three levels down into the hierarchy (2). The response operation MUST contain the attributes included in Table 7 which are marked as Mandatory (M) in the Support (Sup) column. |
Following the required parameters for each object which is retrieved in this use case.
Table 7: Context object definition
Context |
/tapi-common:context |
|
|
|
|
|
---|---|---|---|---|---|---|
Attribute |
|
Allowed Values/Format |
Mod |
Sup |
Notes |
|
uuid |
|
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RO |
M |
|
|
name |
|
List of {value-name, value}
|
RO |
M |
|
|
service-interface-point |
|
List of {service-interface-point} |
RO |
M |
|
|
notification-context |
|
|
RO |
O |
|
|
topology-context |
|
|
RO |
M |
|
|
connectivity-context |
|
|
RO |
M |
|
Table 8: Service Interface Point (SIP) object definition
Service-interface-point |
/tapi-common:context/service-interface-point |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
|
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
|
name |
List of {value-name, value}
|
RW |
M |
|
|
layer-protocol-name |
["DSR", "ETH", "ODU", "PHOTONIC_MEDIA"] |
RO |
M |
|
|
supported-layer-protocol-qualifier |
List of ["DIGITAL_SIGNAL_TYPE", "ODU_TYPE", "PHOTONIC_LAYER_QUALIFIER"] |
RO |
M |
|
|
administrative-state |
["UNLOCKED", "LOCKED"] |
RW |
M |
|
|
operational-state |
["ENABLED", "DISABLED"] |
RO |
M |
|
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
RO |
M |
|
|
total-potential-capacity |
"total-size": {value, unit}
|
RO |
M |
|
|
available-capacity |
"total-size": {value, unit}
|
RO |
M |
|
|
tapi-photonic-media:otsi-service-interface-point-spec/ otsi-capability |
|
RO |
M |
|
|
tapi-photonic-media:otsi-service-interface-point-spec/ power-management-capability |
|
RW |
M |
|
|
tapi-photonic-media: media-channel-service-interface-point-spec/mc-pool |
|
RO |
M |
|
|
tapi-photonic-media: media-channel-service-interface-point-spec/power-management-capability |
|
RW |
M |
|
Number |
UC0b |
Name |
Topology discovery (synchronous mode) |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The TAPI Topology is the relevant network logical representation information required for inventory, traffic-engineering or provisioning purposes. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Discovery |
Description & Workflow |
The topology discover use case consists on the workflow and operations depicted in Figure 6-2. The first operation (1) retrieves the list of Topology references (UUID) included in the tapi-topology:topology-context/nw-topology-service/ (2). For each Topology reference found, operation (3) is repeated to obtain a Topology object instance filtered subtree up to three levels (4). |
Following we include the required parameters for each object which is retrieved in the previously described RESTCONF operations.
Table 9: Topology object definition
Topology |
|
/tapi-common:context/tapi-topology:topology-context/topology |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
|
link |
List of {link} |
|
RO |
M |
|
node |
List of {node} |
|
RO |
M |
|
Table 10: Node object definition
Node |
|
/tapi-common:context/tapi-topology:topology-context/topology/node |
|
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
|
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
|
name |
List of {value-name: value}
|
|
RO |
M |
|
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
|
|
administrative-state |
["UNLOCKED", "LOCKED"] |
|
RO |
M |
|
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
M |
|
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
M |
|
|
total-potential-capacity |
"total-size": {value: unit}
|
|
RO |
O |
|
|
available-capacity |
"total-size": {value: unit}
|
|
RO |
O |
|
|
cost-characteristic |
List of {cost-name: cost-value}
|
|
RO |
O |
|
|
latency-characteristic |
List of { traffic-property-name: fixed-latency-characteristic }
|
|
RO |
O |
|
|
encapsulated-topology |
{"topology-ref"} |
|
RO |
O |
|
|
aggregated-node-edge-point |
List of {"node-edge-point-ref"} |
|
RO |
O |
|
|
owned-node-edge-point |
List of {node-edge-point} |
|
RO |
M |
|
|
node-rule-group |
List of {node-rule-group} |
|
RO |
O |
|
|
Table 11: Node-edge-point object definition
Node-edge-point |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
layer-protocol-name |
["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
|
supported-cep-layer-protocol-qualifier |
List of ["DIGITAL_SIGNAL_TYPE", "ODU_TYPE", "PHOTONIC_LAYER_QUALIFIER"] |
|
RO |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
|
RO |
M |
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
M |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
M |
|
termination-state |
["LP_CAN_NEVER_TERMINATE", "LT_NOT_TERMINATED", "TERMINATED_SERVER_TO_CLIENT_FLOW", "TERMINATED_CLIENT_TO_SERVER_FLOW", "TERMINATED_BIDIRECTIONAL", "LT_PERMENANTLY_TERMINATED", "TERMINATION_STATE_UNKNOWN"] |
|
RO |
O |
|
termination-direction |
["BIDIRECTIONAL", "SINK", "SOURCE"] |
|
RO |
M |
|
link-port-direction |
["BIDIRECTIONAL", |
|
RO |
M |
|
link-port-role |
["SYMMETRIC"] |
|
RO |
O |
|
total-potential-capacity |
"total-size": {value: unit}
|
|
RO |
M |
|
available-capacity |
"total-size": {value: unit}
|
|
RO |
M |
|
aggregated-node-edge-point |
List of {node-edge-point-ref} |
|
RO |
O |
|
mapped-service-interface-point |
List of {"/tapi-common:context/service-interface-point/uuid"} |
|
RO |
O |
|
cep-list |
List of {connection-end-point} |
|
RO |
M |
|
tapi-photonic-media: media-channel-node-edge-point-spec |
"mc-pool": {supportable/available/occupied-spectrum}
|
|
RO |
O |
|
tapi-odu:odu-node-edge-point-spec |
"odu-pool":{client capacity, max-client-instances, max-client-size} |
|
RO |
O |
|
Table 12: Node-rule-group object definition
Node-rule-group |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/node-rule-group |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
node-edge-point |
List of {node-edge-point-ref} |
|
RO |
M |
|
rule |
List of {rule} |
|
RO |
M |
|
Table 13: Rule object definition
Rule |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/node-rule-group/rule |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
local-id |
"[0-9a-zA-Z_]{32}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
rule-type |
["FORWARDING"] |
|
RO |
M |
|
forwarding-rule |
["MAY_FORWARD_ACROSS_GROUP", "MUST_FORWARD_ACROSS_GROUP", "CANNOT_FORWARD_ACROSS_GROUP", "NO_STATEMENT_ON_FORWARDING"] |
|
RO |
M |
|
Table 14: Link object definition
Link |
|
/tapi-common:context/tapi-topology:topology-context/topology/link |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
|
RO |
M |
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
M |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
M |
|
direction |
["BIDIRECTIONAL"] |
|
RO |
M |
|
total-potential-capacity |
"total-size": {value: unit}
|
|
RO |
M |
|
available-capacity |
"total-size": {value: unit}
|
|
RO |
M |
|
transitioned-layer-protocol-name |
List of {layer-protocol-name} |
|
RO |
M |
|
cost-characteristic |
List of {cost-name: cost-value}
|
|
RO |
O |
|
latency-characteristic |
List of { traffic-property-name: fixed-latency-characteristic }
|
|
RO |
O |
|
Risk-characteristic |
List of {risk-characteristic-name: risk-identifier-list}
|
|
RO |
O |
|
node-edge-point |
List of {"node-edge-point-ref"} |
|
RO |
M |
|
In this section we introduce the detail TAPI-Topology modelling expected at "Day 0" (i.e., after the commissioning stage of the network devices into the SDN-C, but before any service is configured).
The detailed description of the assumptions assumed by the Reference Implementation to compose the Topology at Day '0' based on a Transitional-Link model, are described in [TAPI-TOP-MODEL-REQ-9].
Figure 6-3 TAPI topology representation at "day 0" following Transitional Link modelling approach.
Figure 6-4 TAPI topology representation at "day 0" following Multi-layer Node modelling approach.
Number |
UC 0C |
Name |
Connectivity Service discovery (synchronous mode) |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The TAPI Connectivity Service is a relevant network service information required for the operation. |
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Planning |
Description & Workflow |
The Use Case 0c: Connectivity Service discovery consists on the retrieve of a connectivity-service at the DSR/ODU/PHOTONIC_MEDIA layers and the retrieval of the generated connections information. The complete workflow is shown in Figure 6-5. |
For the details about the required parameters for each object retrieved in the previously described RESTCONF call operation, please refer to the UC1a Required Parameters Section 6.2.1.1
Please note that this use case can divided in five sub use cases depending on the layer on which it is applied:
UC1c is left to be considered in future version of this specification.
The workflow definition and required parameters described in these sections applies to all the different sub-use cases but the results in terms of the number of connections generated are different depending on the layer to which the unconstrained connectivity-service has been requested.
The main different between the different sub-use cases described here, is the selection of the Connectivity-Service-End-Points, i.e., the layer of their associated SIPs. Depending on this selection the connections generated in the network are up to a networking layer or another. E.g., for the provisioning of a PHOTONIC_MEDIA/OTSi Connectivity-Service, the TAPI Server will only generates connection up to the PHOTONIC_MEDIA/OTSi network layer.
Number |
UC1a |
Name |
Unconstrained DSR Service Provisioning single wavelength (<100G). |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The UC1 describes the provisioning of a tapi-connectivity:connectivity-service instance between service-interface-points exposed by the TAPI-Server at the DSR networking layer. This service can include intermediate regeneration if necessary. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
The Use Case 1: Connectivity Service provisioning consists on the creation of a connectivity-service between Service-Interface-Points at the DSR/ODU/PHOTONIC_MEDIA layers and the retrieval of the generated connections information. The complete workflow is shown in Figure 6-6. |
Table 15: Connectivity-service object definition
Connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
---|---|---|---|---|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
name |
List of {value-name: value}
|
RW |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
RW |
O |
|
operational-state |
["ENABLED", "DISABLED"] |
RO |
M |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
RO |
M |
|
requested-capacity |
"total-size": {value: ,unit:}
|
RW |
M |
|
service-type |
["POINT_TO_POINT_CONNECTIVITY"] |
RW |
O |
|
service-layer |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
RW |
M |
|
preferred-transport-layer |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
RW |
O |
|
connection |
List of {connection-ref - /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid} |
RO |
M |
|
end-point |
List of {connectivity-service-end-point} |
RW |
M |
|
Table 16: Connectivity-service-end-point object definition
Connectivity-service-end-point |
|
/tapi-common:context/tapi-connectivity:connectivity-service/end-point |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
local-id |
"[0-9a-zA-Z_]{32}" |
|
RW |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RW |
M |
|
supported-layer-protocol-qualifier |
List of ["DIGITAL_SIGNAL_TYPE", "ODU_TYPE", "PHOTONIC_LAYER_QUALIFIER"] |
|
RW |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
|
RW |
O |
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
O |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
O |
|
direction |
["BIDIRECTIONAL", "INPUT", "OUTPUT"] |
|
RW |
O |
|
role |
["SYMMETRIC", "TRUNK"] |
|
RW |
O |
|
capacity |
"total-size": {value: unit}
|
|
RW |
O |
|
service-interface-point |
"/tapi-common:context/service-interface-point/uuid" |
|
RW |
M |
|
connection-end-point |
List { connection-end-point} |
|
RO |
M |
|
Table 17: Connection object definition
connection |
|
/tapi-common:context/tapi-connectivity:connection |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name, value}
|
|
RO |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
M |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
M |
|
direction |
["BIDIRECTIONAL"] |
|
RO |
M |
|
lower-connection |
List of {connectivity-ref - /tapi-common:context/tapi-connectivity:connectivity-context/connection/uuid} |
|
RO |
M |
|
connection-end-point |
List of {"connection-end-point-ref - /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/uuid "} |
|
RO |
M |
|
route |
List of { route } |
|
RO |
M |
|
switch-control |
List of { switch-control } |
|
RO |
M |
|
supported-client-link |
List of {link-ref - topology-uuid + link-uuid |
|
RO |
O |
|
Table 18: Connection-end-point object definition
Connection-end-point |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
|
RO |
M |
Provided by tapi-server |
supported-layer-protocol-qualifier |
List of ["DIGITAL_SIGNAL_TYPE", "ODU_TYPE", "PHOTONIC_LAYER_QUALIFIER"] |
|
RO |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
|
RO |
M |
|
operational-state |
["ENABLED", "DISABLED"] |
|
RO |
M |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
|
RO |
M |
|
termination-state |
["LP_CAN_NEVER_TERMINATE", "LT_NOT_TERMINATED", "TERMINATED_SERVER_TO_CLIENT_FLOW", "TERMINATED_CLIENT_TO_SERVER_FLOW", "TERMINATED_BIDIRECTIONAL", "LT_PERMENANTLY_TERMINATED", "TERMINATION_STATE_UNKNOWN"] |
|
RO |
M |
|
termination-direction |
["BIDIRECTIONAL", "SINK", "SOURCE"] |
|
RO |
M |
|
connection-port-direction |
["BIDIRECTIONAL","INPUT","OUTPUT"] |
|
RO |
M |
|
connection-port-role |
["SYMMETRIC"] |
|
RO |
M |
|
aggregated-connection-end-point |
List of {node-edge-point-ref} |
|
RO |
O |
|
parent-node-edge-point |
List of {node-edge-point-ref} |
|
RO |
M |
|
client-node-edge-point |
List of {node-edge-point-ref} |
|
RO |
M |
|
tapi-odu:odu-connection-end-point-spec |
{odu-connection-end-point-spec} |
|
RO |
O |
|
tapi-photonic-media:otsi-connection-end-point-spec |
{ otsi-connection-end-point-spec } |
|
RO |
O |
|
tapi-photonic-media:media-channel-connection-end-point-spec |
{media-channel-connection-end-point-spec} |
|
RO |
O |
|
tapi-photonic-media:ots-media-channel-connection-end-point-spec |
{ots-media-channel-connection-end-point-spec} |
|
|
|
|
Table 19: ODU-Connection-end-point-spec object definition
odu-connection-end-point-spec |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/tapi-odu:odu-connection-end-point-spec |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
odu-common |
{ odu-type, odu-rate, odu-rate-tolerance }
|
|
RO |
M |
|
odu-term-and-adapter |
{ opu-tributary-slot-list, auto-payload-type, configured-client-type, configured-mapping-type, accepted-payload-type, named-payload-type, hex-payload-type}
|
|
RO |
M |
|
odu-ctp |
{tributary-slot-list, tributary-port-number, accepted-msi}
|
|
RO |
M |
|
odu-protection |
{aps-enable, aps-level}
|
|
RO |
O |
|
Table 20: otsi-connection-end-point-spec object definition
otsi-connection-end-point-spec |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/tapi-photonic-media:otsi-connection-end-point-spec |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
otsi-termination |
{selected-central-frequency, selected-application-identifier, selected-modulation, selected-spectrum, transmitted-power, received-power, laser-properties} |
|
RO |
M |
|
selected-central-frequency |
{ central-frequency, frequency-constraint: {adjustment-granularity, grid-type} }
|
|
RO |
M |
|
selected-application-identifier |
{ application-identifier-type, application-code}
|
|
RO |
M |
|
selected -modulation |
["RZ", "NRZ", "BPSK", "DPSK", "QPSK", "8QAM", "16QAM"] |
|
RO |
M |
|
selected-spectrum |
{lower-frequency, upper-frequency, frequency-constraint: {adjustment-granularity, grid-type} }
|
|
RO |
M |
|
transmited-power |
{total-power, power-spectral-density}
|
|
RO |
M |
|
received-power |
{total-power, power-spectral-density}
|
|
RO |
M |
|
laser-properties |
{laser-status, laser-application-type, laser-bias-current, laser-temperature}
|
|
RO |
M |
|
Table 21: OTSI-Assembly-connection-end-point-spec object definition
otsi-assembly-connection-end-point-spec |
|
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/tapi-photonic-media:otsi-assembly-connection-end-point-spec |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
otsi-adapter |
"number-of-otsi": [0-9]{9} |
|
RO |
O |
|
Table 22 media-channel-connection-end-point-spec object definition
media-channel-connection-end-point-spec |
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/tapi-photonic-media:media-channel-connection-end-point-spec |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
media-channel |
{occupied-spectrum, measured-power-ingress, measured-power-egress} |
R0 |
M |
Mandatory only for PHOTONIC_LAYER_QUALIFIER_MC layer-protocol-qualified CEPs |
occupied-spectrum |
{lower-frequency, upper-frequency, frequency-constraint}
|
RO |
M |
|
measured-power-ingress |
{total-power, power-spectral-density}
|
RO |
M |
|
measured-power-egress |
{total-power, power-spectral-density}
|
RO |
M |
|
Table 23 ots-media-channel-connection-end-point-spec object definition
ots-media-channel-connection-end-point-spec |
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/tapi-photonic-media:ots-media-channel-connection-end-point-spec |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
ots-media-channel |
{occupied-spectrum, measured-power-ingress, measured-power-egress} |
R0 |
M |
Mandatory only for LAYER_PROTOCOL_QUALIFIER_UNSPECIFIED layer-protocol-qualified CEPs corresponding to OMS-OTS abstraction in the photonic_media layer |
occupied-spectrum |
{lower-frequency, upper-frequency, frequency-constraint}
|
RO |
M |
|
measured-power-ingress |
{total-power, power-spectral-density}
|
RO |
M |
|
measured-power-egress |
{total-power, power-spectral-density}
|
RO |
M |
|
Table 23: Route object definition
route |
|
/tapi-common:context/tapi-connectivity:connection/route |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
local-id |
"[0-9a-zA-Z_]{32}" |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
connection-end-point |
List of {"connection-end-point-ref - /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/uuid "} |
|
RO |
M |
|
Table 24: otsia-connectivity-service-end-point-spec object definition
otsia-connectivity-service-end-point-spec |
|
/tapi-common:context/tapi-connectivity:connectivity-service/end-point/otsia-connectivity-service-end-point-spec |
|
|
|
|
|
|
Attribute |
|
Allowed Values/Format |
Mod |
|
Sup |
|
Notes |
|
otsi-config |
|
List of {otsi-config [local-id]}
|
RW |
|
M |
|
|
|
number-of-otsi |
|
[0-9]{9} |
RW |
|
M |
|
|
|
central-frequency |
|
|
|
RW |
|
M |
|
|
spectrum |
{lower-frequency, upper-frequency, frequency-constraint}
|
|
|
RW |
|
M |
|
|
application-identifier |
|
{application-identifier-type, application-code}
|
RW |
|
M |
|
|
|
modulation |
|
["RZ", "NRZ", "BPSK", "DPSK", "QPSK", "8QAM", "16QAM"] |
RW |
|
M |
|
|
|
transmit-power |
|
{total-power, power-spectral-density}
|
RW |
|
M |
|
|
|
laser-control |
|
[FORCED-ON, FORCED-OFF, AUTOMATIC-LASER-SHUTDOWN, UNDEFINED] |
RW |
|
O |
|
|
|
total-power-warn-threshold-upper |
|
[0-9].[0-9]{7} |
RW |
|
M |
|
|
|
total-power-warn-threshold-lower |
|
[0-9].[0-9]{7} |
RW |
|
M |
|
|
|
local-id |
|
"[0-9a-zA-Z_]{32}" |
RW |
|
M |
|
|
|
name |
|
List of {value-name: value}
|
RW |
|
M |
|
|
|
Table 25: mca-connectivity-service-end-point-spec object definition
mca-connectivity-service-end-point-spec |
|
/tapi-common:context/tapi-connectivity:connectivity-service/end-point/mca-connectivity-service-end-point-spec |
|
|
|
|
|
|
Attribute |
|
Allowed Values/Format |
Mod |
|
Sup |
|
Notes |
|
number-of-mc |
|
[0-9]{9} |
RW |
|
M |
|
|
|
capacity |
|
{value: unit}
|
RW |
|
M |
|
|
|
mc-config |
|
List of {otsi-config [local-id]}
|
RW |
|
M |
|
|
|
spectrum |
{lower-frequency, upper-frequency, frequency-constraint}
|
|
|
RW |
|
M |
|
|
power-management-config-pac |
|
{intended-maximum-output-power, intended-minimum-output-power, expected-maximum-input-power, expected-minimum-input-power}
|
RW |
|
M |
|
|
|
local-id |
|
"[0-9a-zA-Z_]{32}" |
RW |
|
M |
|
Provided by tapi-client |
|
name |
|
List of {value-name: value}
|
RW |
|
M |
|
Provided by tapi-server |
|
In the following subsections we include detail examples of the expected results after the successful provisioning of connectivity-services. Please note that all examples follow the rules detailed in section 5.1.1
To show some detailed TAPI connectivity examples, first a simple legend of icons and basic arrangement is included in Figure 6-7.
Figure 6-7 TAPI Logical Termination Point Template – Basic Arrangements.
The following diagrams illustrate a possible sequence of generation of the required TAPI topology and connectivity objects and its relationships according to the rules described in section 5.1.1. However, the internal TAPI server workflow MAY vary and, if notification or streaming services are available, the sequence of asynchronous notifications received by the TAPI client MAY be different.
Thus, the objective of this and the subsequent examples detailing the use cases is to illustrate the object composition and most importantly to define the expected result after a connectivity-service provisioning.
Please note, that in the following examples (all included examples in Section 6), a modelling simplification (represented by blue square) of the client interface (UNI) has been introduced. For the current version of the RIA, the modelling of the UNI client facing side interfaces is not yet covered in detail, so the actual implementation decisions are left to the vendor according to each individual HW capabilities. Thus, please consider the following examples as a guideline of representation the connectivity modelling of the network facing side (e.g., the representation of how the multiplexing of DSR signals over ODU over OTSi shall be modelled). In the following figure we include the general assumed UNI simplifications represented in the examples included in this version of the RIA.
The following figure represents different assumptions done in the UNI representation.
Figure 6-8 UNI Modelling simplifications
Please note, that the following versions of the RIA will address the UNI representation in detail so the previous simplifications may not be longer valid.
Figure 6-9 Connectivity Service 10GE client signal over ODU2 (DSR-ODU Fixed Mapping) over ODU4 over single OTSi – Transitional Link modelling
Figure 6-10 Connectivity Service 10GE client signal over ODU2 (DSR-ODU Fixed Mapping) over ODU4 over single OTSi – Multi-layer node modelling.
For simplification OTSi and Photonic Media layers have been omitted from this example, as it is the exact same case depicted in the previous example.
Figure 6-11 Connectivity Service 1GE client signal over ODU0 over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation)
Figure 6-12 Connectivity Service 1GE client signal over ODU0 over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation) with intermediate ODU0 switching
In this example introduces the intermediate regeneration (3R) of the optical channel (OTSi) into account from the modelling perspective. Please consider the following:
The TAPI Server MAY or MAY NOT expose SIPs for the regeneration board OTSi/OTSiA:
Assuming the option a), the expected connectivity model result in terms of hierarchy of connections within the CS's connection list, SHALL include a single HO-ODUk supported by N-segments of OTSi/OTSiA connections represented as ODU links between every regeneration stage (in this example a single regeneration results into 2 OTSI/OTSiA segments).
Figure 6-13 Connectivity Service 10GE client signal over ODU2 over ODU4 (Fixed DSR-ODU mapping, flexible ODU allocation) with intermediate transponder regeneration.
Number |
UC1b |
Name |
Unconstrained DSR Service Provisioning multi wavelength (beyond 100G). |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The UC1 describes the provisioning of a tapi-connectivity:connectivity-service instance between service-interface-points exposed by the TAPI-Server at the DSR networking layer. This service can include intermediate regeneration if necessary. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
This UC is implemented following the same workflow described in "Description & Workflow" of UC1a described in section 6.2.1 |
The connection generation follows the rules detailed in section 5.1.1. In this use case it is expected that originally, the ODU and PHOTONIC_MEDIA layers are connected through a transitional link or collapsed in a multi-layer node.
This use case triggers the generation of an ODUcN Top Connection which is realize by N number of OTSi Top Connections required to transport the service. N Top OTSi Connctions are thus, generated over the same parent NEP (which only includes PHOTONIC_LAYER_QUALIFIER_OTSi within its supported-layer-qualifier list).
The ODUcN CEPs must include the FEC attributes specified in ODU-Connection-end-point-spec object definition in Table 18. Please note that these attributes have been duplicated at the ODU layer from the ones defined at the OTSI-Assembly-connection-end-point-spec object definition in Table 21, its use at the OTSiA layer is not anymore recommended.
Additionally, the model may include an OTSiA/OTSiG MEP for monitoring purposes, however the monitoring capabilities of the model will be described in next releases of this specification.
Please see the detail graphical description according to the Transitional-link and Multi-Layer models in Figure 6-14 and Figure 6-15 respectively.
Figure 6-14 200GE over ODUc2 connectivity-service over two OTSi/OTSiMC over a single physical (PHOTONIC-MEDIA_OMS) port (Transitional Link).
Figure 6-15 200GE over ODUc2 connectivity-service over two OTSi/OTSiMC over a single physical (PHOTONIC-MEDIA_OMS) port (Multi-Layer Node).
[TO BE DEFINED]
Number |
UC1d |
Name |
Unconstrained PHOTONIC_MEDIA/OTSi Service Provisioning |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The UC1 describes the provisioning of a tapi-connectivity:connectivity-service instance between service-interface-points exposed by the TAPI-Server at the PHOTONIC_MEDIA networking layer. |
Layers involved |
PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
This UC is implemented following the same workflow described in "Description & Workflow" of UC1a described in section 6.2.1 |
This use case requires the relevant Service Interface Points (SIPs) attached to the corresponding OTSI NEPs are available and exposed by the TAPI server.
The connection generation MUST follows the rules detailed in section 5.1.1.
In this use case it is expected that originally, the ODU and PHOTONIC_MEDIA layers are connected through a transitional link. Please see the detail graphical description in Figure 6-16:
Figure 6-16 OTSi single lambda connectivity-service - Transitional link model.
In this use case it is expected that originally, the ODU and PHOTONIC_MEDIA layers integrated in a Multi-layer Node. Please see the detail graphical description in Figure 6-17:
Figure 6-17 OTSi single lambda connectivity-service - Multi-layer node approach.
Number |
UC1e |
Name |
Unconstrained PHOTONIC_MEDIA/OTSi Service Provisioning |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The UC1 describes the provisioning of a tapi-connectivity:connectivity-service instance between service-interface-points exposed by the TAPI-Server at the PHOTONIC_MEDIA networking layer. |
Layers involved |
PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
This UC is implemented following the same workflow described in "Description & Workflow" of UC1a described in section 6.2.1 |
This use case requires the relevant Service Interface Points (SIPs) attached to the corresponding OTSIA NEPs are available and exposed by the TAPI server.
The connection generation follows the rules detailed in section 5.1.1. In this use case it is expected that originally, the ODU and PHOTONIC_MEDIA layers are connected through a transitional link.
This case requires the generation of N number of OTSi Top Connections required to transport the service. N Top OTSi Connections are thus, generated over the same parent NEP (which only includes PHOTONIC_LAYER_QUALIFIER_OTSi within its supported-layer-qualifier list).
Additionally, the model may include an OTSiA/OTSiG MEP for monitoring purposes, however the monitoring capabilities of the model will be described in next releases of this specification.
Please see the detail graphical description in Figure 6-18 and Figure 6-19.
Figure 6-18 OTSiA multi-wavelength connectivity-service (transitional link model abstraction).
Figure 6-19 OTSiA multi-wavelength connectivity-service (multi-layer node model abstraction).
Number |
UC1f |
Name |
Use case 1f: Unconstrained PHOTONIC_LAYER_QUALIFER_MC Service Provisioning |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
The UC1 describes the provisioning of a tapi-connectivity:connectivity-service instance between service-interface-points exposed by the TAPI-Server at the PHOTONIC_LAYER_QUALIFER_MC networking layer. This service can not include intermediate regeneration.
|
Layers involved |
PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
This UC is implemented following the same workflow described in "Description & Workflow" of UC1a described in section 6.2.1 |
This use case accepts different variations according to the model directionality chosen to represent the PHOTONIC_MEDIA layer. The currently agreed solutions are three:
This choice corresponds to a solution exposed by the TAPI server where the relation between the Add/Drop directions of UNI interfaces is known by the TAPI server and the unidirectionality of the rest of the PHOTONIC_MEDIA layer is abstracted as a full-bidirectional topology.
In this approach the MC UNI interfaces are represented as bidirectional SIPs associated to Add/Drop PHOTONIC_MEDIA NEPs.
In this model, it is expected the lower layer NEPs (PHOTONIC_MEDIA), representing the Optical Terminals (OTs - Transponders/Muxponders) line interfaces and the ROADMs Add/Drop interfaces, are connected through a PHOTONIC_MEDIA layer with PHOTONIC_MEDIA_UNSPECIFIED layer-protocol-qualifier tapi-topology:link with a 1:1 relationship. The NEPs/CEPs and links at the bottom layer represents the OTS and OMS ITU-T switching layers, which SHALL be augmented by the necessary OAM monitoring capabilities of these layers.
MC Connectivity-Services are bidirectional too with a single bidirectional Top Connection representing the end-to-end route across the PHOTONIC_MEDIA layer.
Moreover, the MC Top Connection includes within the tapi-connectivity:lower-connection attribute the reference to the Cross-Connections (XCs) between the bidirectional PHOTONIC_LAYER_QUALIFIER_MC CEPs mounted over the bidirectional MC NEPs.
Figure 6-21 Full Bidirectional - UNI and OMS bidirectional scenario.
The second alternative corresponds to a mixed solution exposed by the TAPI server where the relation between the Add/Drop directions of UNI interfaces is known by the TAPI server and thus, the MC UNI interfaces are represented as bidirectional SIPs associated to the Add/Drop PHOTONIC_MEDIA NEPs.
However, the PHOTONIC_MEDIA layer is abstracted as a unidirectional link topology.
In this model, it is expected that originally, the NEPs of PHOTONIC_MEDIA (supporting OTSi layer-protocol-qualifier CEPs) and PHOTONIC_MEDIA (supporting MC layer-protocol-qualifier CEPs) are connected through a link with a 1:1 relationship at the PHOTONIC_MEDIA_UNSPECIFIED layer.
MC Connectivity-services are bidirectional with two references to the bidirectional Add/Drop SIPs. Once successfully provisioned, the Connectivity-Service MUST reference a single bidirectional Top Connection representing the end-to-end route across the PHOTONIC_MEDIA layer.
The MC Top Connections includes, within the tapi-connectivity:lower-connection attribute, the references to the two point-to-multipoint Cross-Connections (XCs) connecting the bidirectional Add/Drop UNI interfaces to the ROADM degree unidirectional interfaces. Then the route traverses the remaining unidirectional PHOTONIC_MEDIA nodes till the far end. All XCs in the two directions MUST be included into the MC Top Connection lower-level connection list.
Figure 6-22 Mixed Scenario - UNI bidirectional and OMS unidirectional.
This model approach is only applicable in case of a realization of an Open Line System (OLS) in a disaggregated network. In this scenario, the OTs are not managed/controlled by the TAPI server and therefore, the relationship between OT's Line and OLS Add/Drop ports is also unknow by the TAPI server.
In case of aggregated domains, where both the OTs and OLS are managed by the same TAPI Server, the relationship between Add/Drop ports is known by the TAPI Server before the service provisioning and thus the UNI interfaces MUST be represented as bidirectional entities as described in Model 1 or 2.
Thus, this model corresponds to a solution exposed by the TAPI server where the relation between the Add/Drop directions of UNI interfaces is unknown by the TAPI server. In this case, the TAPI server does not know the relationship between Add and Drop ROADM's interfaces until the TAPI Client correlates them through the creation of a bidirectional Connectivity-Service.
In this modelling approach the MC UNI interfaces are represented as unidirectional SIPs associated to unidirectional Add/Drop OMS NEPs.
In this model, it is expected that once the TAPI Client correlates the PHOTONIC_MEDIA NEPs of OT's Line ports (supporting OTSI layer-protocol-qualifier CEPs) and Open Line System (OLS) Add/Drop PHOTONIC_MEDIA NEPs (supporting MC layer-protocol-qualifier CEPs), it exposes the connectivity through a 1:2 asymmetric tapi-topology:link relationship at the PHOTONIC_MEDIA layer.
MC Connectivity-services are bidirectional with four references to the unidirectional Add/Drop SIPs at each CSEP. Once successfully provisioned, the Connectivity-Service MUST reference two unidirectional Top Connection representing the two directions end-to-end route across the PHOTONIC_MEDIA layer.
Moreover, the MC Top Connection includes the reference to the lower-level Cross-Connections (XCs) between the UNIDIRECTIONAL PHOTONIC_LAYER_QUALIFIER_MC CEPs mounted over the unidirectional MC supporting NEPs.
Figure 6-23 Full Unidirectional - UNI and OMS unidirectional scenario.
Number |
UC3a |
Name |
Constrained provisioning: Include/exclude a node or group of nodes |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case consists on the requests of a connectivity service between two Connectivity Service End Points associated to Service Interface points at different layers (DSR, ODU or OTSi). This service is subject to the inclusion/exclusion of the nodes selected by the TAPI client. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
The connectivity-service object sent by the TAPI Client to the Server to request the creation of the service MUST include the include-node or exclude-node attributes (node-uuid) |
Table 24 complements the information included in the Use Case 1a definition, with the Connectivity-Service attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables is required for this use case too.
Table 26: Connectivity-service node topology-constrains object definitions.
connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
include-node |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
exclude-node |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
Number |
UC3b |
Name |
Constrained provisioning: Include/exclude a link or group of links |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case consists on the requests of a connectivity service between two Connectivity Service End Points associated to Service Interface points at different layers (DSR, ODU or OTSi). This service is subject to the inclusion/exclusion of the links selected by the tapi client. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
The connectivity-service object sent by the TAPI Client to the Server to request the creation of the service MUST include the include-link or exclude-link attributes (link-uuid) |
Table 27 complements the information included in the Use Case 1a definition, with the Connectivity-Service attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables is required for this use case too.
Table 27: Connectivity-service link topology-constrains object definitions.
connectivity-service |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
include-link |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RW |
M |
|
exclude-link |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RW |
M |
|
Number |
UC3c |
Name |
Constrained provisioning: Include/exclude the path used by other service. |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case consists on the requests of a connectivity service between two Connectivity Service End Points associated to Service Interface points at different layers (DSR, ODU or OTSi). This service is subject to the inclusion/exclusion of the path associated to one or more already provisioned services. This service can include intermediate regeneration if necessary. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Provisioning |
Description & Workflow |
The connectivity-service object sent by the TAPI Client to the Server to request the creation of the service MUST include the coroute-inclusion or diversity-exclusion attributes set. |
Table 28 complements the information included in the Use Case 1a definition in Table 15, with the Connectivity-Service attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables is required for this use case too.
Table 28: Connectivity-service diversity-exclusion and coroute-inclusion object definitions.
connectivity-service |
|
|
|
|
coroute-inclusion |
{connectivity-service-uuid: connectivity-service-ref - /tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/uuid } |
RW |
M |
|
coroute-exclusion |
{connectivity-service-uuid: connectivity-service-ref - /tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/uuid } |
RW |
M |
|
Number |
UC4a |
Name |
Introduction of references to external inventory model. |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
Hardware identifiers currently stored in Telefonica OSS inventory systems must be correlated with SDN-C NBI logical endpoint's identifiers. This information MUST be provided by the SDN-C suppliers.
|
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Inventory |
Description & Workflow |
|
Number |
UC4b |
Name |
Complete Inventory model for NBI Interface. |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
There should be no differences between the inventory data that the SDN controller can send to the OSS through the NBI and the inventory data that the OSS could get by developing a direct interface to the network equipment. In case of any differences between both (via NMS/EMS or direct integration), the manufacturer must argue the reason for the difference and indicate the initiatives to close the gaps, associating them to the SDN controller roadmaps. |
Layers involved |
DSR/ODU/PHOTONIC_MEDIA |
Type |
Inventory |
Description & Workflow |
The workflow consists of the retrieval of the inventory information required by the user (TAPI client) using different filters.
|
|
|
Al these parameters must be included in the structure of the equipment (cards, chasis, pluggables).
The basic structure of the equipment does not include the rack position as a mandatory field within the NBI. This Rack position should be added to the database of OSSs once the information is provided by the installers or from an external database.
The main parameters required are included in Table 29.
Table 29: Main parameters for equipment model required.
Conceptual parameter |
TAPI xPath reference |
Part number |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/common-actual-properties/asset-instance-identifier |
Serial number |
/tapi-common:context/tapi-equipment:device/equipment/actual-equipment/common-actual-properties/serial-number |
Name |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/name |
Description |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/ common-equipment-properties/equipment-type-description |
Component Version |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/ common-equipment-properties/equipment-type-version |
Type |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/category |
Relative position of the component into the network element |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/contained-holder/actual-holder/common-holder-properties/holder-location |
Operational state |
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/operational-state |
Admin state |
/tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point administrative-state |
Removable |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/contained-holder/actual-holder/common-holder-properties/is-guided |
Manufacturer |
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/ common-equipment-properties/manufacturer-name |
Operator_ID_type |
/tapi-common:context/tapi-equipment:physical-context/equipment/contained-holder/actual-holder/common-holder-properties/asset-type-identifier |
The following parameters must be included for each item and they must be present in the following path: /tapi-common:context/tapi-equipment:physical-context
Table 30: Equipment object's attributes required for UC4b.
equipment |
|
/tapi-common:context/tapi-equipment:physical-context/device/equipment |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
contained-holder |
List of { occupying-fru, expected-holder, actual-holder, uuid , name}
|
|
RO |
M |
|
category |
[RACK, SUBRACK, |
|
RO |
M |
|
equipment-location |
String |
|
RO |
M |
|
geographical-location |
String |
|
RO |
M |
|
is-expected-actual-mismatch |
Boolean |
|
RO |
M |
|
expected-equipment |
List of {expected-non-field-replaceable-module, holder, common-equipment-properties} |
|
RO |
M |
|
actual-equipment |
{actual-non-field-replaceable-module, common-actual-properties, common-equipment-properties} |
|
RO |
M |
|
name |
List of {value-name: value}
|
|
RO |
M |
|
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
Table 31: Common-holder-properties object's attributes required for UC4b.
common-holder-properties |
|
/tapi-common:context/tapi-equipment:physical-context/device/equipment/contained-holder/actual-holder/common-holder-properties |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
holder-category |
[HOLDER_CATEGORY_SLOT] |
|
RO |
M |
|
is-guided |
Boolean |
|
RO |
M |
|
holder-location |
String |
|
RO |
M |
|
Table 32: Common-equipment-properties object's attributes required for UC4b.
common-equipment-properties |
|
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/common-equipment-properties |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
asset-type-identifier |
String |
|
RO |
O |
|
equipment-type-description |
String |
|
RO |
M |
|
equipment-type-identifier |
String |
|
RO |
M |
|
equipment-type-name |
String |
|
RO |
M |
|
equipment-type-version |
String |
|
RO |
M |
|
manufacturer-identifier |
String |
|
RO |
M |
|
manufacturer-name |
String |
|
RO |
M |
|
Table 33: Common-actual-properties object's attributes required for UC4b.
common-actual-properties |
|
/tapi-common:context/tapi-equipment:physical-context/device/equipment/actual-equipment/common-actual-properties |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
asset-instance-identifier |
String |
|
RO |
M |
|
is-powered |
Boolean |
|
RO |
M |
|
Manufacture-date |
Date-and-time |
|
RO |
M |
|
Serial-number |
String |
|
RO |
M |
|
Temperature |
Decimal64 |
|
RO |
M |
|
There are some fields that are not included in the device (/tapi-common:context/tapi-equipment:physical-context/tapi-equipment:device) and must be reported to obtain a complete report of the device. Those fields will be included in the /tapi-common:context/tapi-equipment:physical-context/tapi-equipment:device/tapi-equipment:name with their respective "value-name".
Important note: in case the connector-identification and/or pin-identification is not present for a given access-port the key of the connector-pin attribute MUST be the concatenation of empty strings for the missing values and equipment-uuid (according to RESTCONF RFC8040 Sec 3.5.3). Each key leaf value except the last one is followed by a comma character. E.g., for a given access-port's connector-pin entry , the resource URI should be:
…/tapi-equipment:access-port={uuid}/connector-pin=",,{equipment-uuid}"
Table 34: Device object attributes required for UC4b.
device |
|
/tapi-common:context/tapi-equipment:physical-context/device |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
Name |
List of {value-name: value} "value": " [0-9a-zA-Z_]{64}" |
|
RO |
M |
Provided by tapi-server o tapi-client during NE creation |
NE_ID |
name": [{"value-name": "NE_ID", "value": {Name_Gateway_Device}" }] |
|
RO |
M |
|
GATEWAY |
"name": [{"value-name": "GATEWAY", "value": {Name_Gateway_Device}" }] |
|
RO |
M |
|
NE Type |
"name": [{"value-name": " NE_TYPE", "value": {Name_NE_type}" }] |
|
RO |
M |
Provided by tapi-server |
IP |
"name": [{"value_name": "IP", "value": {IP_Device}" }] |
|
RO |
M |
|
Mask |
"name": [{"value_name": "MASK", "value": {Mask_Device}" }] |
|
RO |
M |
|
creation_time |
"name": [{"value_name": " CREATION_TIME", "value": { Creation_time _Device}" }] |
|
RO |
M |
|
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
|
RO |
M |
|
access-port |
List of {uuid, connector-pin, name}
|
|
RO |
M |
|
The following picture shows the relative position of each "equipment" (chassis, slot, sublot, port) in a graphical representation.
The relation between TAPI naming and the picture is the following:
Figure 6-24 UC-4b Hierarchical arrangement of equipment objects with TAPI 2.1.3.
The TAPI Server MUST use the tapi-equipment:contained-holder/actual-holder/common-holder-properties/holder-location to represent the relative position of the contained-holders within the SUBRACK equipment. The format of the holder-location string MUST be: "SlotPosition"-"SubSlotPosition" For convention, if there is not sub-slot within a slot, the sub-slot value must be 0.
There are some considerations needed to be taken to define a rule convention for filling this attribute. Three different scenarios are considered:
Then, according to the previous definition, the container-location string represents the relative location of the container holder within an equipment.
The following examples shows all the different possibilities and how to model them.
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="34cf385e-1c6c-4124-a0b4-4548b02512b5"><ac:parameter ac:name="">_Ref37847556</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="6e9828a3-2113-4b9e-a102-643a01eea967"><ac:parameter ac:name="">_Toc43830833</ac:parameter></ac:structured-macro><span style="color: #141313"><strong>Figure 6-25</strong></span> <span style="color: #141313"><strong>UC-4b Network Element Subracks container-holder location examples.</strong></span>
To complete the picture, the examples illustrated in Figure 6-25 are developed in TAPI model, including the holder-location value and the mapping to the INVENTORY_ID format presented in UC4a. Please note that the INVENTORY_ID will represent the absolute location of each equipment component, so it is derived from the position of the equipment within the tree.
Example Subrack1
Linecard holder-location in Subrack1
tapi-equipment:equipment[category=SUBRACK]/contained-holder/actual-holder/
"holder-location": "1-0"
tapi-equipment:equipment[category=SUBRACK]/contained-holder/
"name": "/ne=MadridNorte/r=1/sh=1/sl=1/s_sl=0"}]
Port2 holder-location in Linecard
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/actual-holder/
"holder-location": "2-0"
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/
"name": "/ne=MadridNorte/r=1/sh=1/sl=1/s_sl=0/p=2"}]
Example Subrack2
Linecard holder-location in Subrack2
tapi-equipment:equipment[category=SUBRACK]/contained-holder/actual-holder/
"holder-location": "2-1"
tapi-equipment:equipment[category=SUBRACK]/contained-holder/
"name": "/ne=MadridNorte/r=1/sh=2/sl=2/s_sl=1"}]
Port holder-location in Linecard
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/actual-holder/
"holder-location": "3-0"
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/
"name": [{"value_name": "INVENTORY_ID",
"value": "/ne=MadridNorte/r=1/sh=2/sl=2/s_sl=1/p=3"}]
Example Subrack3
Extra HW SUBRACK holder-location in Subrack3
tapi-equipment:equipment[category=SUBRACK]/contained-holder/actual-holder/
"holder-location": "7-0"
tapi-equipment:equipment[category=SUBRACK]/contained-holder/
"name": [{"value_name": "INVENTORY_ID",
"value": "/ne=MadridNorte/r=1/sh=3/sl=7/s_sl=0"}]
Linecard holder-location in Subrack3
tapi-equipment:equipment[category=SUBRACK]/contained-holder/actual-holder/
"holder-location": "7-2"
tapi-equipment:equipment[category=SUBRACK]/contained-holder/
"name": [{"value_name": "INVENTORY_ID",
"value": /ne=MadridNorte/r=1/sh=3/sl=7/s_sl=2"}]
Port holder-location in Linecard
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/actual-holder/
"holder-location":"2-0"
tapi-equipment:equipment[category=CIRCUIT_PACK]/contained-holder/
"name":[{"value_name": "INVENTORY_ID",
"value": "/ne=MadridNorte/r=1/sh=3/sl=7/s_sl=2/p=2"}]
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="2fa6f2f0-d635-4f3a-a028-e9f2e3457fb8"><ac:parameter ac:name="">_Toc14454051</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="f9f2fd19-5a57-4528-b394-9836c1f627b4"><ac:parameter ac:name="">_Ref16005008</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="ed9ab294-78d6-44b6-b557-51cf47903904"><ac:parameter ac:name="">_Toc16163773</ac:parameter></ac:structured-macro> <span style="color: #141313">Some examples of INVENTORY_ID for the node-edge-points potentially mapped to the ports described in the previous examples:</span>
Example 1:
"name": [{"value_name": "INVENTORY_ID", "value":
"/ne=MadridNorte/r=1/sh=1/sl=1/s_sl=0"}]
Example 2:
"name": [{"value_name": "INVENTORY_ID", "value": "/ne=MadridNorte/r=1/sh=2/sl=2/s_sl=1/p=3"}]
Example 3:
"name": [{"value_name": "INVENTORY_ID", "value": "/ne=MadridNorte/r=1/sh=3/sl=7/s_sl=2/p=2"}]
Number |
UC5a |
Name |
1+1 OLP Protection with Diverse Service Provisioning |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the use of OLPs elements for protection services at OMS/OTS layers.
|
Layers involved |
PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
This type of OLP protection (OMS/OTS OLP) is realized by the tapi-server. Thus, there is not a client-to-server message exchange to be reported in this section. |
The expected representation of the OMS OLP protection schema is represented over the TAPI topology scenario included in Section 4.3.
Figure 6-27 UC-5a OLP protection TAPI representation.
Note: Transponder representation in the Z side has been omitted due to the symmetry of the scenario.
Note 2: The Top-Connection switch control is under discussion thus the selected-route attribute shall be considered optional when implementing OLP protection UCs. In contrast, the switch-control at the XC level MUST be present, representing/reflecting the actual switch state.
Number |
UC5b |
Name |
1+1 OLP Protection with Diverse Service Provisioning |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the use of OLPs elements for 1+1 and 1:1 protection service at different layers OTSi/OTSiA. This use case does not allow intermediate regeneration in any of the MC trails, this capability is left for future use case specification. |
Layers involved |
PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
This type of OLP protection (Line Side OLP) requires the reservation of two disjoint routes along the PHOTONIC_MEDIA layer for the provisioning of connections to support the 1+1 or 1:1 Connectivity Services.
|
As described in UC1f (Section 6.2.6) the OLS PHOTONIC_MEDIA layer may be modelled unidirectionally or bidirectionally. In UC1f three possible models were presented:
For this use case, the mixed approach is not allowed. The other two models are described in the following subsections.
The expected result after the creation of the OLP protected PHOTONIC_LAYER_QUALIFER_OTSI connectivity service is represented over the TAPI topology scenario included in Figure 6-30.
Please note, OTSiMC layer is intentionally left out from the diagram for simplicity but it MAY be included on top of every MC CEP described in the example.
Figure 6-30 UC-5b OLP TAPI Connectivity-Service low-level description.
Once the CS is created, the TAPI Server is responsible of implementing the Switch control among the connections generated to support the different protection schemas (1+1, 1:1), which MUST provide automatic switch control between the working and protection connections in less than 50ms.
The requested PHOTONIC_LAYER_QUALIFER_OTSI CS triggers the creation of:
In case the service is 1:1 PROTECTION:
In case the service is 1+1 PROTECTION:
For both cases:
In this case the connectivity model is split in the two directions (Add/Drop). Each direction includes a MC Top Connections which MUST be included within the related CS connection list.
The CS request in this case MUST include four CSEPs referencing the Add/Drop interfaces SIPs at aEnd and zEnd points.
The actual guidelines for the switch control described for the bidirectional model applies to each unidirectional Top Connection. To all extend, the two unidirectional Top Connections MUST expose the management of its switch-control the same one as it was described in the bidirectional model. Thus, the switch control at each direction is independent and but the bidirectional connectivity-service operational-state is impacted by the status of both.
Figure 6-31 UC-5b OLP TAPI Connectivity-Service low-level description. Unidirectional OLS modelling.
Table 35, Table 36, Table 37, Table 38 and Table 39 complements the information included in the Use Case 1a definition, with the Connectivity-Service, Connectivity-Service-End-Points, Connections and Switch-control, attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables is required for this use case too.
Table 35: Connectivity-service attributes for 1+1 UC5b.
connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
resilience-type |
{"protection-type": [ONE_FOR_ONE_PROTECTION, ONE_PLUS_ONE_PROTECTION]} |
RW |
M |
|
preferred-restoration-layer |
[PHOTONIC_MEDIA] |
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
RW |
M |
|
restore-priority |
"[0-9]+" |
RW |
O |
|
hold-off-time |
"[0-9]{4}" |
RW |
O |
|
wait-to-revert-time |
"[0-9]{4}" |
RW |
O |
|
max-switch-times |
"[0-9]{2}" |
RW |
O |
|
is-coordinated-switching-both-ends |
[true, false] |
RW |
O |
|
is-lock-out |
[true, false] |
RW |
O |
|
is-frozen |
[true, false] |
RW |
O |
|
Table 36: Connectivity-service-End-Points attributes for UC5b.
connectivity-service-end-point |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service/end-point |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
protection-role |
["WORK", "PROTECT", "PROTECTED"] |
|
RW |
M |
|
Table 37: Connection attributes for UC5b.
connection |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connection |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
switch-control |
List of { switch-control } |
|
RO |
M |
|
Table 38: Switch-control attributes for UC5b.
switch-control |
/tapi-common:context/tapi-connectivity:connectivity-context/connection/switch-control |
|
|
|
|
---|---|---|---|---|---|
Attribute |
|
Allowed Values/Format |
Mod |
Sup |
Notes |
uuid |
|
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RO |
M |
|
name |
|
List of {value-name: value}
|
RO |
M |
|
resilience-type |
|
{"protection-type": [ONE_PLUS_ONE_PROTECTION", "ONE_FOR_ONE_PROTECTION"]} |
RO |
O |
|
reversion-mode |
|
["REVERTIVE", "NON-REVERTIVE"] |
RO |
O |
|
restore-priority |
|
"[0-9]+" |
RO |
O |
|
hold-off-time |
|
"[0-9]{4}" |
RO |
O |
|
wait-to-revert-time |
|
"[0-9]{4}" |
RO |
O |
|
max-switch-times |
|
"[0-9]{2}" |
RO |
O |
|
is-coordinated-switching-both-ends |
|
[true, false] |
RO |
O |
|
is-lock-out |
|
[true, false] |
RO |
O |
|
is-frozen |
|
[true, false] |
RO |
O |
|
preferred-restoration-layer |
|
List of ["PHOTONIC_MEDIA"] |
RO |
M |
|
sub-switch-control |
|
List of {"/config/context/connection/{uuid}/switch-control/{switch_control_uuid}/"} |
RO |
M |
|
switch |
|
List of { switch } |
RO |
M |
|
Table 39: Switch attributes for UC5b.
switch |
/tapi-common:context/tapi-connectivity:connectivity-context/connection/switch-control/switch |
|
|
|
|
Attribute |
|
Allowed Values/Format |
Mod |
Sup |
Notes |
local-id |
|
"[0-9a-zA-Z_]{32}" |
RO |
M |
|
name |
|
List of {value-name: value}
|
RO |
M |
|
switch-direction |
|
["BIDIRECTIONAL", "INPUT", "OUTPUT"] |
RO |
M |
|
selection-control |
|
["LOCK_OUT", "NORMAL", "MANUAL", "FORCED"] |
RO |
M |
|
selection-reason |
|
["LOCKOUT", "NORMAL", "MANUAL", "FORCED", "WAIT_TO_REVERT", "SIGNAL_DEGRADE", "SIGNAL_FAIL"] |
RO |
M |
|
selected-connection-end-point |
|
List of {"connection-end-point-ref - /tapi-common:context/tapi-topology:topology-context/topology/node/owned-node-edge-point/tapi-connectivity:cep-list/connection-end-point/uuid "} |
RO |
M |
|
selected-route |
|
List of {"/tapi-common:context/tapi-connectivity:connectivity-context/connection/{uuid}/route/{local_id}/ "} |
RO |
O |
|
Number |
UC5c |
Name |
1+1 protection with Diverse Service Provisioning (eSNCP) |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of 1+1 protected services implemented through the electrical subnetwork connection protection (eSNCP) schema (Figure 6-32) also known as ODUk SNCP. |
Layers involved |
ODU |
Type |
Resilience |
Description & Workflow |
The connectivity-service is requested between two DSR/ODU connectivity service endpoints and requires the reservation of two disjoint routes at the ODU layer between transponder's line interfaces. |
The expected result after the creation of the eSNCP ODU Connectivity Service is represented over the TAPI topology scenario included in Figure 6-33.
Figure 6-33 UC5c: eSNCP protection schema for HO-ODUk Top Connection.
Once the CS is created, the TAPI Server is responsible of implementing the Switch control among the connections generated to support the ODU eSNCP protection schema, which MUST provide automatic switch control between the working and protection connections in less than 50ms. Please refer to the graphical illustration of this use case included Figure 6-33, which includes the Connection generated after the CS is created.
The requested ODU CS triggers the creation of:
Additionally, the service might generate the PHOTONIC_MEDIA Layer connections if ODU layer does not has enough resources:
Table 40 complements the information included in the Use Case 1a and Use Case 5b definitions, with the Connectivity-Service attributes required implementing this use case, this implies all attributes and objects included in Section 6.2.1.1 and 6.5.2.2 tables are required for this use case too.
Table 40: Connectivity-service attributes for UC5c.
connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
---|---|---|---|---|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
resilience-type |
{"protection-type": ONE_PLUS_ONE_PROTECTION]} |
RW |
M |
|
preferred-restoration-layer |
[ODU] |
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
RW |
M |
|
restore-priority |
"[0-9]+" |
RW |
O |
|
hold-off-time |
"[0-9]{4}" |
RW |
O |
|
wait-to-revert-time |
"[0-9]{4}" |
RW |
O |
|
max-switch-times |
"[0-9]{2}" |
RW |
O |
|
is-coordinated-switching-both-ends |
[true, false] |
RW |
O |
|
is-lock-out |
[true, false] |
RW |
O |
|
is-frozen |
[true, false] |
RW |
O |
|
Number |
UC6a |
Name |
Dynamic restoration policy for DSR/ODU/OTSI unconstrained connectivity services |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of connectivity-services with restoration capabilities. |
Layers involved |
ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The connectivity service is requested between two DSR/ODU/OTSI CSEPs. The TAPI Client SHOULD select two valid SIPs, to be referenced by the CSEPs, which reference two DSR/LO-ODUj/OTSI NEPs which are intended to be connected by the dynamic-restorable service. |
Table 41 complements the information included in the Use Case 1a and Use Case 5b definitions, with the Connectivity-Service attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables are required for this use case too.
Table 41: Connectivity-service attributes for UC6a.
connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
resilience-type |
{" protection-type": [DYNAMIC_RESTORATION]} |
RW |
M |
|
preferred-restoration-layer |
[ODU, PHOTONIC_MEDIA] |
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
RW |
M |
|
restore-priority |
"[0-9]+" |
RW |
O |
|
Number |
UC 6b |
Name |
Pre-Computed restoration policy for unconstrained and constrained connectivity services. |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of connectivity-services with restoration capabilities and the effective restoration process when a failure occurs in the nominal path. |
Layers involved |
ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The initial path computation procedure is the same defined in UC12b. In particular, the two disjoined paths between the service-interface-points included in the Connectivity-Service request are previously computed by the SDN-C.
|
Table 41 complements the information included in the Use Case 1a and Use Case 5b definitions, with the Connectivity-Service attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 tables are required for this use case too.
Table 42: Connectivity-service attributes for UC6a.
connectivity-service |
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
resilience-type |
{" protection-type": [DYNAMIC_RESTORATION]} |
RW |
M |
|
preferred-restoration-layer |
[ODU, PHOTONIC_MEDIA] |
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
RW |
M |
|
restore-priority |
"[0-9]+" |
RW |
O |
|
Number |
UC7a |
Name |
Restoration and protection 1+1 |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of connectivity-services with restoration capabilities and 1+1 protection capabilities.
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The connectivity service is requested between two DSR/ODU CSEPs. The TAPI Client SHOULD select two valid SIPs, to be referenced by the CSEPs, which reference two DSR/LO-ODUj NEPs which are intended to be connected by the dynamic-restorable service.
|
Table 43 complements the information included in the Use Case 1 and Use Case 5b definitions, with the Connectivity-Service, Connectivity-Service-End-Points, Connections and Switch-control, attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 and 6.5.2.2 tables are required for this use case too.
Table 43: Connectivity-service attributes for UC7a.
connectivity-service |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
resilience-type |
{"protection-type": [ |
|
RW |
M |
|
preferred-restoration-layer |
[ODU, PHOTONIC_MEDIA] |
|
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
|
RW |
M |
|
restore-priority |
"[0-9]+" |
|
RW |
O |
|
hold-off-time |
"[0-9]{4}" |
|
RW |
O |
|
wait-to-revert-time |
"[0-9]{4}" |
|
RW |
O |
|
max-switch-times |
"[0-9]{2}" |
|
RW |
O |
|
is-coordinated-switching-both-ends |
[true, false] |
|
RW |
O |
|
is-lock-out |
[true, false] |
|
RW |
O |
|
is-frozen |
[true, false] |
|
RW |
O |
|
Number |
UC7b |
Name |
Pre-Computed restoration policy and 1+1 protection of DSR/ODU unconstrained service provisioning. |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of connectivity-services with restoration capabilities and 1+1 protection capabilities and the demonstration of the effective protection and restoration process when a failure occurs in the nominal path.
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The initial path computation procedure is identical to the one included in UC12b.
|
Table 44 complements the information included in the Use Case 1a and Use Case 5b definitions, with the Connectivity-Service, Connectivity-Service-End-Points, Connections and Switch-control, attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 and 6.5.2.2 tables are required for this use case too.
Table 44: Connectivity-service attributes for UC7b.
connectivity-service |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
resilience-type |
{"protection-type": [ |
|
RW |
M |
|
preferred-restoration-layer |
[ODU, PHOTONIC_MEDIA] |
|
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
|
RW |
M |
|
restore-priority |
"[0-9]+" |
|
RW |
O |
|
hold-off-time |
"[0-9]{4}" |
|
RW |
O |
|
wait-to-revert-time |
"[0-9]{4}" |
|
RW |
O |
|
max-switch-times |
"[0-9]{2}" |
|
RW |
O |
|
is-coordinated-switching-both-ends |
[true, false] |
|
RW |
O |
|
is-lock-out |
[true, false] |
|
RW |
O |
|
is-frozen |
[true, false] |
|
RW |
O |
|
Number |
UC8 |
Name |
Permanent protection 1+1 for use cases |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the provisioning of connectivity-services with permanent 1+1 protection capabilities and the demonstration of the effective protection and restoration process when a failure occurs in the nominal or backup paths.
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The UC's service provisioning procedure of this UC follows the same workflow defined in the "Procedure" section of UC5c.
|
The following table complements the information included in the Use Case 1a and Use Case 5b definitions, with the Connectivity-Service, Connectivity-Service-End-Points, Connections and Switch-control, attributes required to implement this use case, this implies all attributes and objects included in Section 6.2.1.1 and 6.5.2.2 tables are required for this use case too.
Table 45: Connectivity-service attributes for UC8.
connectivity-service |
|
/tapi-common:context/tapi-connectivity:connectivity-context/connectivity-service |
|
|
|
Attribute |
Allowed Values/Format |
|
Mod |
Sup |
Notes |
resilience-type |
{"protection-type": [ |
|
RW |
M |
|
preferred-restoration-layer |
[ODU, PHOTONIC_MEDIA] |
|
RW |
M |
|
reversion-mode |
["REVERTIVE", "NON-REVERTIVE"] |
|
RW |
M |
|
restore-priority |
"[0-9]+" |
|
RW |
O |
|
hold-off-time |
"[0-9]{4}" |
|
RW |
O |
|
wait-to-revert-time |
"[0-9]{4}" |
|
RW |
O |
|
max-switch-times |
"[0-9]{2}" |
|
RW |
O |
|
is-coordinated-switching-both-ends |
[true, false] |
|
RW |
O |
|
is-lock-out |
[true, false] |
|
RW |
O |
|
is-frozen |
[true, false] |
|
RW |
O |
|
Number |
UC10 |
Name |
Service deletion (applicable to all previous use cases) |
Technologies involved |
Optical |
Process/Areas Involved |
Planning and Operations |
Brief description |
This use case covers the deletion of a target connectivity-service and all the related connections created by this service (i.e., all connections included as part of the CS connection list). |
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Resilience |
Description & Workflow |
The TAPI client MUST specify the tapi-connectivity:connectivity-service/uuid attribute in the RESTCONF DELETE request to identify the service to be removed. |
Number |
UC12a |
|
Name |
Pre-calculation of the optimum path (applicable to all previous use cases) |
|
Technologies involved |
Optical |
|
Process/Areas Involved |
Planning and Operations |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0bc768e9-c4ab-44a7-bb98-518f9fb1fbfb"><ac:plain-text-body><![CDATA[ |
Brief description |
[Disclaimer]: This use case is not completely discussed, nor agreed by the TAPI team. This use case remains documented for future discussion and the content of it may vary in future versions. Thus, the use of the documentation for this use case should be considered only for Proof of Concept purposes. |
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
|
Type |
Planning |
|
Description & Workflow |
|
Table 46: Path-computation-context attributes.
path-computation-context |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
path-comp-service |
List of {path-comp-service} |
RW |
M |
|
path |
List of {path} |
RO |
M |
|
Table 47: Path-comp-serv object's attributes.
path-comp-serv |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
end-point |
List of {path-service-end-point} |
RW |
M |
|
routing-constraint |
{ routing-constraint } |
RW |
M |
|
topology-constraint |
{ topology-constraint } |
RW |
M |
|
objective-function |
{objective-function} |
RW |
M |
|
optimization-constraint |
{optimization-constraint} |
|
|
|
uuid |
"[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
name |
List of {value-name: value}
|
RW |
M |
|
Table 48: Path-service endpoint object's attributes.
path-service-end-point |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
local-id |
"[0-9a-zA-Z_]{32}" |
RW |
M |
|
layer-protocol-name |
List of ["DSR", "ODU", "PHOTONIC_MEDIA"] |
RW |
M |
|
layer-protocol-qualifier |
List of ["DIGITAL_SIGNAL_TYPE", "ODU_TYPE", "PHOTONIC_LAYER_QUALIFIER"] |
RW |
M |
|
administrative-state |
["UNLOCKED", "LOCKED"] |
RW |
O |
|
operational-state |
["ENABLED", "DISABLED"] |
RO |
O |
|
lifecycle-state |
["PLANNED", "POTENTIAL_AVAILABLE", "POTENTIAL_BUSY", "INSTALLED", "PENDING_REMOVAL"] |
RO |
O |
|
direction |
["BIDIRECTIONAL", "INPUT", "OUTPUT"] |
RW |
O |
|
role |
["SYMMETRIC", "TRUNK"] |
RW |
O |
|
capacity |
"total-size": {value: unit}
|
RW |
O |
|
service-interface-point |
"/tapi-common:context/service-interface-point/uuid" |
RW |
M |
|
Table 49: Topology constraint object's attributes.
topology-constraint |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
include-topology |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
O |
|
avoid-topology |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
O |
|
include-path |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
exclude-path |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
include-node |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
exclude-node |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
include-link |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
exclude-link |
LeafList of { "[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}" |
RW |
M |
|
preferred-transport-layer |
[ODU, PHOTONIC_MEDIA] |
RW |
M |
|
Table 50: Routing constraint object's attributes.
routing-constraint |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
cost-characteristic |
{ cost-name, cost-value, cost-algorithm}
|
RW |
M |
|
latency-characteristic |
{ traffic-property-name, fixed-latency-characteristic, queing-latency-characteristic, jitter-characteristic, wander-characteristic }
|
RW |
M |
|
risk-diversity-characteristic |
{ risk-characteristic-name, risk-identifier-list}
|
RW |
M |
|
diversity-policy |
{SRLG, SRNG, SNG,NODE, LINK} |
RW |
M |
|
route-objective-function |
["MIN_WORK_ROUTE_HOP", "MIN_WORK_ROUTE_COST", "MIN_WORK_ROUTE_LATENCY", "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP", "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST", "MIN_SUM_OF_WORK_A ND_PROTECTION_ROUTE_LATENCY", "LOAD_BALANCE_MAX_UNUSED_CAPACITY" |
RW |
M |
|
route-direction |
["BIDIRECTIONAL", "INPUT", "OUTPUT"] |
RW |
M |
|
is-exclusive |
Boolean |
RW |
M |
|
Table 51: Objective function object's attributes.
objective-function |
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
bandwidth-optimization |
{"MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
concurrent-paths |
{"MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
cost-optimization |
{"MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
link-utilization |
{"MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
resource-sharing |
{"MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
local-id |
"[0-9a-zA-Z_]{32}" |
RW |
M |
|
name |
List of {value-name: value}
|
RW |
O |
|
Table 52: Optimization-constraint object's attributes.
optimization-constraint |
|
|
|
|
|
Attribute |
Allowed Values/Format |
Mod |
Sup |
Notes |
|
traffic-interruption |
{ "MINIMIZE", "MAXIMIZE", "ALLOW", "DISALLOW", "DONT_CARE"] |
RW |
M |
|
|
local-id |
"[0-9a-zA-Z_]{32}" |
RW |
M |
|
|
name |
List of {value-name: value}
|
RW |
O |
|
]]></ac:plain-text-body></ac:structured-macro> |
Number |
UC12b |
|
Name |
Simultaneous pre-calculation of two disjoint paths |
|
Technologies involved |
Optical |
|
Process/Areas Involved |
Planning and Operations |
|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="d7811740-6c02-4979-804b-290cef32c528"><ac:plain-text-body><![CDATA[ |
Brief description |
[Disclaimer]: This use case is not completely discussed, nor agreed by the TAPI team. This use case remains documented for future discussion and the content of it may vary in future versions. Thus, the use of the documentation for this use case should be considered only for Proof of Concept purposes. |
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
|
Type |
Planning |
|
Description & Workflow |
The simulateneous calculation is not yet ready in the standard NBI at the moment, thus a secuential approach will be followed. |
Number |
UC 13a |
Name |
Subscription to notification service. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The SDN-C MUST offer a notification subscription service which allows several client applications to subscribe to asynchronous notifications about the changes occurred in the network. |
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 14a |
Name |
Notification of new topology element (topology, link, node, node-edge-point) inserted/removed in/from the network |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The SDN-C Notification system MUST emit events exposing the creation/deletion of Topology object-types such topology, link, node and node-edge-points.
|
+--ro value-name string |
|
+--ro value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 14b |
Name |
Notification of new connectivity-service element inserted/removed in/from the network. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The SDN-C Notification system MUST emit events exposing the creation/deletion of Connectivity object-types such connectivity-services, connections, connection-end-points and service-interface-points.
|
+--ro value-name string |
|
+--ro value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 14c |
Name |
Notification of new path-computation element inserted/removed in/from the network. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The Notification system MUST emit events exposing the creation/deletion of Path-Computation object-types such path-comp-service, or paths.
|
+--ro value-name string |
|
+--ro value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 15a |
Name |
Notification of status change on existing topology element (topology, link, node, node-edge-point) in the network. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The Notification system MUST emit events exposing the attribute changes of Topology object-types such topology, link, node and node-edge-points.
|
+--ro value-name string |
|
+--ro value? string |
|
+--ro value-name string |
|
+--ro old-value? string |
|
+--ro new-value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 15b |
Name |
Notification of status change on existing connectivity-service element in the network. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The Notification system MUST emit events exposing the attribute changes of Connectivity object-types such connectivity-services, connections and connection-end-points and service-interface-points. |
+--ro value-name string |
|
+--ro value? string |
|
+--ro value-name string |
|
+--ro old-value? string |
|
+--ro new-value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
Number |
UC 15c |
Name |
Notification of status change on the switching conditions of an existing connection element in the network. |
Technologies involved |
All |
Process/Areas Involved |
Planning and Operations |
Brief description |
The Notification system MUST emit events exposing the attribute changes of Connection sub-object-types such ROUTE, SWITCH and NODE-RULE-GROUPS. |
+--ro value-name string |
|
+--ro value? string |
|
+--ro value-name string |
|
+--ro old-value? string |
|
+--ro new-value? string |
|
Layers involved |
DSR, ODU, PHOTONIC_MEDIA |
Type |
Notifications and Alarms |
Description & Workflow |
|
<span style="color: #141313"><ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="ec427077-2ca9-4d48-8d25-feb709fd08bc"><ac:plain-text-body><![CDATA[[ONF Core Model]
[https://www.opennetworking.org/wp-content/uploads/2018/12/TR-Forwarding Construct [ONF TR-512] Forwarding Domain [ONF TR-512] Logical Termination Point [ONF TR-512]
The ForwardingConstruct (FC) represents enabled constrained potential for forwarding between two or more FcPorts (representing the association of the FC to LTPs) at a particular specific Layer Protocol.
The ForwardingDomain (FD) class models the topological component that represents a forwarding capability that provides the opportunity to enable forwarding (of specific transport characteristic information at one or more protocol layers) between points. The FD object provides the context for and constrains the formation, adjustment and removal of FCs and hence offers the potential to enable forwarding.
The LogicalTerminationPoint (LTP) class encapsulates the termination and adaptation functions of one or more transport layers represented by instances of LayerProtocol. The encapsulated transport layers have a simple fixed 1:1 client-server relationship defined by association end ordering. The structure of LTP supports all transport protocols including analogue, circuit and packet forms.
Connection
A Connection represents an enabled (provisioned) potential for forwarding (incl. all circuit/packet forms) between two or more Node Edge Points of a Node. The bounding Node of a Connection may be explicit or be conceptually implicit.
Connection is a container for provisioned connectivity that tracks the state of the allocated resources and is distinct from the Connectivity Service request.
Connection End Point
The Connection End Point encapsulates information related to a Connection at the ingress/egress points of every Node that the Connection traverses in a Topology. Thus they represent the ingress/egress port functions (including termination, encapsulation, processing, mapping, etc) of the Connection.
Connectivity Service
A Connectivity Service represents an "intent-like" request for connectivity between two or more Service Interface Points. Connectivity Service is a container for connectivity request details and is distinct from Connection that realizes the request.
Connectivity Service End Point
The Connectivity Service End Point encapsulates information related to a Connectivity Service at the ingress/egress points of that Connectivity Service.
Context
The Context provides a scope of control, naming and information exchange between particular instances of controllers.
Link
A Link is an abstract representation of the effective adjacency between two or more Nodes (specifically Node Edge Points) in a Topology.
Node
The Node is an abstract representation of the forwarding capabilities of a particular set of Network Resources. It is described in terms of the aggregation of set of ports (Node Edge Point) belonging to those Network Resources and the potential to enable forwarding of information between those edge ports.
Node Edge Point
The Node Edge Point represents the ingress-egress edge-port functions that access the forwarding capabilities provided by the Node. Hence it provides an encapsulation of addressing, mapping, termination, adaptation and OAM functions of one or more transport layers (including circuit and packet forms) performed at the entry and exit points of the Node.
Path
The Path is described by an ordered list of Links.
Route
The Route of a Connection is modeled as a collection of Connection End Points.
Service Interface Point
A Service Interface Point represents the network-interface-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 (e.g. shared addressing, capacity, resource availability, etc.), that enable the clients to request connectivity without the need to understand the provider network internals.
Topology
The Topology is an abstract representation of the topological aspects of a particular set of Network Resources. It is described in terms of the underlying topological network of Nodes and Links that enable the forwarding capabilities of that particular set of Network Resources.
Transitional Link
Link that is formed by abstracting one or more LTPs (in a stack) to focus on the flow and deemphasize the protocol transformation. This abstraction is relevant when considering multi-layer routing.
CEPConnection End Point
CRUDCreate, Read/Retrieve, Update, Delete
CSConnectivity Service
CSEPConnectivity Service End Point
DSRDigital Signal Rate
EMSElement Management System
FCFibre Channel
FCForwarding Construct
FDForwarding Domain
ILAInLine Amplifier
INNIInternal Network-to-Network Interface
JSONJavaScript Object Notation
LTPLogical Termination Point
MCMedia Channel
MCAMedia Channel Assembly
MEGMaintenance Entity Group
MEPMaintenance Entity Group End Point
NBI Northbound Interface
NEPNode Edge Point
NMSNetwork Management System
OADMOptical Add-Drop Multiplexer
OAMOperations, Administration, and Maintenance
OCHOptical Channel
ODUOptical Data Unit
OLPOptical Line Protection
OLSOptical Line System
OMSOptical Multiplex Section
OSSOperations Support Systems
OTNOptical Transport Network
OTSOptical Transmission Section
OTSiOptical Tributary Signal
OTSiAOptical Tributary Signal Assembly
OTSiGOptical Tributary Signal Group
OTSiMCOptical Tributary Signal Media Channel
OTSiMCAOptical Tributary Signal Media Channel Assembly
ROADMReconfigurable Optical Add-Drop Multiplexer
SDKSoftware Development Kit
SDNSoftware Defined Networking
STM Synchronous Transport Module
SIPService Interface Point
TAPI or T-APITransport API Information Model
UMLUnified Modeling Language
UNIUser-Network Interface
URI Uniform Resource Identifier
UUID Universally Unique Identifier
WDMWavelength Division Multiplexing
XCCross-Connection
Arturo Mayoral López de LermaTelefónica
Nigel DavisCiena
Andrea MazziniNokia
Pedro AmaralInfinera
Karthik SethuramanNEC
Malcolm BettsZTE
Jonathan SadlerInfinera
Kam LamFiberHome
Jia QianZTE
End of Document