From c0b1245e899df3621fa7183b537156f0ba296cd9 Mon Sep 17 00:00:00 2001 From: Hesam Rahimi Date: Sun, 6 Feb 2022 10:05:53 -0500 Subject: - Support for the Transport Slicing use-case to work with the updated YANG models and ACTN PNC simulator. - Mark service-instance as "Activated" and "Deactivated" accordingly when a slice is getting activated or deactivated. Issue-ID: SDNC-1665 Signed-off-by: Hesam Rahimi Change-Id: I185272d8b9e9c38729e2d687a854b3be9eac3cfd Former-commit-id: 6cefcb5942c1e6b3328d510aee77357623751c2b --- .../src/main/json/ts-otn-tunnel-domainG.json | 83 +++++++++++++++------- .../src/main/json/ts-otn-tunnel-dst-domain.json | 65 ++++++++++------- .../src/main/json/ts-otn-tunnel-src-domain.json | 55 ++++++++------ 3 files changed, 131 insertions(+), 72 deletions(-) (limited to 'platform-logic/restapi-templates') diff --git a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-domainG.json b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-domainG.json index 465b9545..7cd0d528 100644 --- a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-domainG.json +++ b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-domainG.json @@ -3,36 +3,65 @@ "tunnels": { "tunnel": [ { - "source": ${src-node-id}, - "destination": ${dst-node-id}, - "ietf-otn-tunnel:src-tpn": ${src-tpn-id}, - "src-ttp-id": ${src-ttp-id}, - "ietf-otn-tunnel:dst-tpn": ${dst-tpn-id}, - "dst-ttp-id": ${dst-ttp-id}, - "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp", - "ietf-otn-tunnel:gfp-n": ${gfp-n} - }, - "ietf-otn-tunnel:dst-tributary-slot-count": 1, - "ietf-optical-slice:slice-id": ${slice-instance-id}, - "encoding": "ietf-te-types:lsp-encoding-oduk", "name": ${otn-tunnel-name-domainG}, - "restoration": { - "enable": "false", - "hold-off-time": "0", - "restoration-reversion-disable": "true", - "restoration-type": "ietf-te-types:lsp-restoration-restore-any", - "wait-to-revert": "0" - }, - "switching-type": "ietf-te-types:switching-otn", - "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} - }, - "provisioning-state": "ietf-te-types:tunnel-state-up" + "source": ${src-node-id}, + "destination": ${dst-node-id}, + "src-tunnel-tp-id": ${src-ttp-id}, + "dst-tunnel-tp-id": ${dst-ttp-id}, + "te-bandwidth": { + "ietf-otn-tunnel:otn": { + "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex", + "ietf-otn-tunnel:gfp-n": ${gfp-n} + } + }, + "encoding": "ietf-te-types:lsp-encoding-oduk", + "switching-type": "ietf-te-types:switching-otn", + "protection": { + "enable": "true", + "hold-off-time": "0", + "protection-reversion-disable": "true", + "protection-type": "ietf-te-types:lsp-protection-unprotected", + "wait-to-revert": "0" + }, + "admin-state": "ietf-te-types:tunnel-admin-state-up", + "primary-paths":{ + "primary-path" :[ + { + "name":"primary", + "path-in-segment":{ + "label-restrictions":{ + "label-restriction":[ + { + "index" :1, + "label-start":{ + "te-label":{ + "ietf-otn-tunnel:otn-tpn": ${src-tpn-id} + } + } + } + ] + } + }, + "path-out-segment":{ + "label-restrictions":{ + "label-restriction":[ + { + "index" :1, + "label-start":{ + "te-label":{ + "ietf-otn-tunnel:otn-tpn": ${dst-tpn-id} + } + } + } + ] + } + } + } + ] } + } ] } } } + diff --git a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-dst-domain.json b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-dst-domain.json index 40b1888e..29d19e04 100644 --- a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-dst-domain.json +++ b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-dst-domain.json @@ -3,33 +3,48 @@ "tunnels": { "tunnel": [ { - "source": ${src-node-id}, - "destination": ${dst-node-id}, - "ietf-otn-tunnel:src-tpn": ${src-tpn-id}, - "src-ttp-id": ${src-ttp-id}, - "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp", - "ietf-otn-tunnel:gfp-n": ${gfp-n} - }, - "ietf-otn-tunnel:dst-tributary-slot-count": 1, - "ietf-optical-slice:slice-id": ${slice-instance-id}, - "encoding": "ietf-te-types:lsp-encoding-oduk", "name": ${otn-tunnel-name-dst-domain}, - "restoration": { - "enable": "false", - "hold-off-time": "0", - "restoration-reversion-disable": "true", - "restoration-type": "ietf-te-types:lsp-restoration-restore-any", - "wait-to-revert": "0" - }, - "switching-type": "ietf-te-types:switching-otn", - "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} - }, - "provisioning-state": "ietf-te-types:tunnel-state-up" + "source": ${src-node-id}, + "destination": ${dst-node-id}, + "src-tunnel-tp-id": ${src-ttp-id}, + "te-bandwidth": { + "ietf-otn-tunnel:otn": { + "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex", + "ietf-otn-tunnel:gfp-n": ${gfp-n} + } + }, + "encoding": "ietf-te-types:lsp-encoding-oduk", + "switching-type": "ietf-te-types:switching-otn", + "protection": { + "enable": "true", + "hold-off-time": "0", + "protection-reversion-disable": "true", + "protection-type": "ietf-te-types:lsp-protection-unprotected", + "wait-to-revert": "0" + }, + "admin-state": "ietf-te-types:tunnel-admin-state-up", + "primary-paths":{ + "primary-path" :[ + { + "name":"primary", + "path-in-segment":{ + "label-restrictions":{ + "label-restriction":[ + { + "index" :1, + "label-start":{ + "te-label":{ + "ietf-otn-tunnel:otn-tpn": ${src-tpn-id} + } + } + } + ] + } + } + } + ] } + } ] } } diff --git a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-src-domain.json b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-src-domain.json index cbfde9f4..85fc53dd 100644 --- a/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-src-domain.json +++ b/platform-logic/restapi-templates/src/main/json/ts-otn-tunnel-src-domain.json @@ -3,33 +3,48 @@ "tunnels": { "tunnel": [ { - "source": ${src-node-id}, + "name": ${otn-tunnel-name-src-domain}, + "source": ${src-node-id}, "destination": ${dst-node-id}, - "ietf-otn-tunnel:dst-tpn": ${dst-tpn-id}, - "dst-ttp-id": ${dst-ttp-id}, + "dst-tunnel-tp-id": ${dst-ttp-id}, "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp", - "ietf-otn-tunnel:gfp-n": ${gfp-n} - }, - "ietf-otn-tunnel:dst-tributary-slot-count": 1, - "ietf-optical-slice:slice-id": ${slice-instance-id}, + "ietf-otn-tunnel:otn": { + "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex", + "ietf-otn-tunnel:gfp-n": ${gfp-n} + } + }, "encoding": "ietf-te-types:lsp-encoding-oduk", - "name": ${otn-tunnel-name-src-domain}, - "restoration": { - "enable": "false", + "switching-type": "ietf-te-types:switching-otn", + "protection": { + "enable": "true", "hold-off-time": "0", - "restoration-reversion-disable": "true", - "restoration-type": "ietf-te-types:lsp-restoration-restore-any", + "protection-reversion-disable": "true", + "protection-type": "ietf-te-types:lsp-protection-unprotected", "wait-to-revert": "0" }, - "switching-type": "ietf-te-types:switching-otn", - "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} - }, - "provisioning-state": "ietf-te-types:tunnel-state-up" + "admin-state": "ietf-te-types:tunnel-admin-state-up", + "primary-paths":{ + "primary-path" :[ + { + "name":"primary", + "path-out-segment":{ + "label-restrictions":{ + "label-restriction":[ + { + "index" :1, + "label-start":{ + "te-label":{ + "ietf-otn-tunnel:otn-tpn": ${dst-tpn-id} + } + } + } + ] + } + } + } + ] } + } ] } } -- cgit 1.2.3-korg