From 51946551fe9016b38ba03747a3376febf7124b8e Mon Sep 17 00:00:00 2001 From: Hesam Rahimi Date: Fri, 28 Oct 2022 18:13:38 -0400 Subject: Support for integration of E-Line based Cloud Leased Line service with hardware domain controller. Issue-ID: SDNC-1732 Signed-off-by: Hesam Rahimi Change-Id: Iaa49d272769b47148bcb05a5c8e35db49e85dfb7 Former-commit-id: ac7a2377e8fea65230d3403b9dd8413daf65c70a --- .../src/main/json/p2p-ethernet-service-modify.json | 25 ++++++++ .../src/main/json/p2p-ethernet-service-orig.json | 54 ++++++++++++++++ .../json/p2p-ethernet-service-same-domain.json | 74 ++++++++++++++++++++++ .../src/main/json/p2p-ethernet-service-vlan.json | 56 ++++++++++++++++ .../src/main/json/p2p-ethernet-service.json | 18 +++--- .../src/main/json/p2p-otn-tunnel-domainG.json | 16 ++--- .../src/main/json/p2p-otn-tunnel-dst-domain.json | 51 +++++++++++---- .../src/main/json/p2p-otn-tunnel-src-domain.json | 45 +++++++++---- 8 files changed, 297 insertions(+), 42 deletions(-) create mode 100644 platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-modify.json create mode 100644 platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-orig.json create mode 100644 platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-same-domain.json create mode 100644 platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-vlan.json (limited to 'platform-logic/restapi-templates/src/main') diff --git a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-modify.json b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-modify.json new file mode 100644 index 00000000..1da2613e --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-modify.json @@ -0,0 +1,25 @@ +{ + "ietf-eth-tran-service:etht-svc-instances": [ + { + "etht-svc-name": ${eth-service-name}, + "etht-svc-end-points": [ + { + "etht-svc-end-point-name": "0", + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": "0" + } + }, + { + "etht-svc-end-point-name": "1", + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": "0" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-orig.json b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-orig.json new file mode 100644 index 00000000..6475b10e --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-orig.json @@ -0,0 +1,54 @@ +{ + "ietf-eth-tran-service:etht-svc-instances": [ + { + "etht-svc-name": ${eth-service-name}, + "etht-svc-title": "actn-eoo-00044", + "etht-svc-type": "ietf-eth-tran-types:p2p-svc", + "te-topology-identifier": { + "provider-id": ${provider-id}, + "client-id": ${client-id}, + "topology-id": ${topology-id} + }, + "underlay": { + "otn-tunnels": [ + { + "name": ${otn-tunnel-name}, + "encoding": "ietf-te-types:lsp-encoding-oduk", + "switching-type": "ietf-te-types:switching-otn" + } + ] + }, + "resilience": { + "protection": { + "enable": true, + "protection-reversion-disable": true, + "protection-type": "ietf-te-types:lsp-protection-unprotected", + "wait-to-revert": 0 + } + }, + "admin-status": "ietf-te-types:tunnel-admin-state-up", + "etht-svc-end-points": [ + { + "etht-svc-end-point-name": ${ethernet-end-point-name}, + "etht-svc-access-points": [ + { + "access-point-id": ${index-number}, + "access-node-id": ${eth-node-id}, + "access-ltp-id": ${eth-node-tp-id} + } + ], + "service-classification-type": "ietf-eth-tran-types:vlan-classification", + "outer-tag": { + "tag-type": "ietf-eth-tran-types:classify-c-vlan", + "vlan-value": ${cvlan} + }, + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": ${EIR} + } + } + ] + } + ] +} \ No newline at end of file diff --git a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-same-domain.json b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-same-domain.json new file mode 100644 index 00000000..6413ebef --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-same-domain.json @@ -0,0 +1,74 @@ +{ + "ietf-eth-tran-service:etht-svc-instances": [ + { + "etht-svc-name": ${eth-service-name}, + "etht-svc-title": ${eth-service-name}, + "etht-svc-type": "ietf-eth-tran-types:p2p-svc", + "te-topology-identifier": { + "provider-id": 5555, + "client-id": 6666, + "topology-id": "33" + }, + "underlay": { + "otn-tunnels": [ + { + "name": ${otn-tunnel-name}, + "encoding": "ietf-te-types:lsp-encoding-oduk", + "switching-type": "ietf-te-types:switching-otn" + } + ] + }, + "resilience": { + "protection": { + "enable": "true", + "protection-reversion-disable": "true", + "protection-type": "ietf-te-types:lsp-protection-unprotected", + "wait-to-revert": 0 + } + }, + "admin-status": "ietf-te-types:tunnel-admin-state-up", + "etht-svc-end-points": [ + { + "etht-svc-end-point-name": "0", + "etht-svc-access-points": [ + { + "access-point-id": "0", + "access-node-id": ${eth-src-node-id}, + "access-ltp-id": ${eth-src-ltp-id} + } + ], + "service-classification-type": "ietf-eth-tran-types:vlan-classification", + "outer-tag": { + "tag-type": "ietf-eth-tran-types:classify-c-vlan", + "vlan-value": ${cvlan} + }, + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": "0" + } + }, + { + "etht-svc-end-point-name": "1", + "etht-svc-access-points": [ + { + "access-point-id": "0", + "access-node-id": ${eth-dst-node-id}, + "access-ltp-id": ${eth-dst-ltp-id} + } + ], + "service-classification-type": "ietf-eth-tran-types:vlan-classification", + "outer-tag": { + "tag-type": "ietf-eth-tran-types:classify-c-vlan", + "vlan-value": ${cvlan} + }, + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": "0" + } + } + ] + } + ] +} diff --git a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-vlan.json b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-vlan.json new file mode 100644 index 00000000..a32aed81 --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service-vlan.json @@ -0,0 +1,56 @@ +{ + "ietf-eth-tran-service:etht-svc-instances": [ + { + "etht-svc-name": ${eth-service-name}, + "etht-svc-title": ${eth-service-name}, + "etht-svc-type": "ietf-eth-tran-types:p2p-svc", + "te-topology-identifier": { + "provider-id": 5555, + "client-id": 6666, + "topology-id": "33" + }, + "underlay": { + "cvlan": ${vlan-translation}, + "otn-tunnels": [ + { + "name": ${otn-tunnel-name}, + "encoding": "ietf-te-types:lsp-encoding-oduk", + "switching-type": "ietf-te-types:switching-otn" + } + ] + }, + "resilience": { + "protection": { + "enable": "true", + "protection-reversion-disable": "true", + "protection-type": "ietf-te-types:lsp-protection-unprotected", + "wait-to-revert": 0 + } + }, + "admin-status": "ietf-te-types:tunnel-admin-state-up", + "etht-svc-end-points": [ + { + "etht-svc-end-point-name": "0", + "etht-svc-access-points": [ + { + "access-point-id": "0", + "access-node-id": ${eth-node-id}, + "access-ltp-id": ${eth-node-tp-id} + } + ], + "service-classification-type": "ietf-eth-tran-types:vlan-classification", + "vlan-action": "ietf-eth-tran-types:swap", + "outer-tag": { + "tag-type": "ietf-eth-tran-types:classify-c-vlan", + "vlan-value": ${cvlan} + }, + "ingress-egress-bandwidth-profile": { + "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", + "CIR": ${CIR}, + "EIR": "0" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service.json b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service.json index 6475b10e..f588f32a 100644 --- a/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service.json +++ b/platform-logic/restapi-templates/src/main/json/p2p-ethernet-service.json @@ -2,12 +2,12 @@ "ietf-eth-tran-service:etht-svc-instances": [ { "etht-svc-name": ${eth-service-name}, - "etht-svc-title": "actn-eoo-00044", + "etht-svc-title": ${eth-service-name}, "etht-svc-type": "ietf-eth-tran-types:p2p-svc", "te-topology-identifier": { - "provider-id": ${provider-id}, - "client-id": ${client-id}, - "topology-id": ${topology-id} + "provider-id": 5555, + "client-id": 6666, + "topology-id": "33" }, "underlay": { "otn-tunnels": [ @@ -20,8 +20,8 @@ }, "resilience": { "protection": { - "enable": true, - "protection-reversion-disable": true, + "enable": "true", + "protection-reversion-disable": "true", "protection-type": "ietf-te-types:lsp-protection-unprotected", "wait-to-revert": 0 } @@ -29,10 +29,10 @@ "admin-status": "ietf-te-types:tunnel-admin-state-up", "etht-svc-end-points": [ { - "etht-svc-end-point-name": ${ethernet-end-point-name}, + "etht-svc-end-point-name": "0", "etht-svc-access-points": [ { - "access-point-id": ${index-number}, + "access-point-id": "0", "access-node-id": ${eth-node-id}, "access-ltp-id": ${eth-node-tp-id} } @@ -45,7 +45,7 @@ "ingress-egress-bandwidth-profile": { "bandwidth-profile-type": "ietf-eth-tran-types:mef-10-bwp", "CIR": ${CIR}, - "EIR": ${EIR} + "EIR": "0" } } ] diff --git a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-domainG.json b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-domainG.json index 74e6d898..aa60c4a7 100644 --- a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-domainG.json +++ b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-domainG.json @@ -4,7 +4,7 @@ "source": ${src-node-id}, "destination": ${dst-node-id}, "encoding": "ietf-te-types:lsp-encoding-oduk", - "name": ${otn-tunnel-name-src-domain}, + "name": ${otn-tunnel-name-domainG}, "restoration": { "enable": "false", "restoration-reversion-disable": "true", @@ -12,14 +12,14 @@ "wait-to-revert": 0 }, "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODU0" + "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp" }, "switching-type": "ietf-te-types:switching-otn", "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} - }, + "client-id": 6666, + "provider-id": 5555, + "topology-id": "11" + }, "p2p-primary-paths": { "p2p-primary-path": [ { @@ -35,8 +35,8 @@ } ] }, - "ietf-otn-tunnel:dst-tributary-slot-count": ${gfp-n}, - "ietf-otn-tunnel:src-tributary-slot-count": ${gfp-n}, + "ietf-otn-tunnel:dst-tributary-slot-count": 8, + "ietf-otn-tunnel:src-tributary-slot-count": 8, "provisioning-state": "ietf-te-types:tunnel-admin-state-down" } ] diff --git a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-dst-domain.json b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-dst-domain.json index 74e6d898..135c9ba0 100644 --- a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-dst-domain.json +++ b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-dst-domain.json @@ -1,43 +1,66 @@ { "ietf-te:tunnel": [ { - "source": ${src-node-id}, - "destination": ${dst-node-id}, + "source": ${dst-node-id}, + "destination": "0.0.0.0", "encoding": "ietf-te-types:lsp-encoding-oduk", - "name": ${otn-tunnel-name-src-domain}, + "name": ${otn-tunnel-name-dst-domain}, "restoration": { "enable": "false", "restoration-reversion-disable": "true", "restoration-type": "ietf-te-types:lsp-restoration-restore-any", - "wait-to-revert": 0 + "wait-to-revert": 600 }, "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODU0" + "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp" }, "switching-type": "ietf-te-types:switching-otn", "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} - }, + "client-id": 6666, + "provider-id": 5555, + "topology-id": "11" + }, "p2p-primary-paths": { "p2p-primary-path": [ { "name": "primary-path", + "path-scope": "ietf-te-types:path-scope-segment", + "explicit-route-objects": { + "route-object-include-exclude": [ + { + "index": "0", + "explicit-route-usage": "ietf-te-types:route-include-ero", + "unnumbered-hop": { + "hop-type": "LOOSE", + "node-id": ${src-node-id}, + "link-tp-id": ${src-ttp-id}, + "ietf-otn-tunnel:otu-port-type": "ietf-otn-types:port-otu2" + } + }, + { + "index": "1", + "explicit-route-usage": "ietf-te-types:route-include-ero", + "label-hop": { + "te-label": { + "ietf-otn-tunnel:tpn": ${src-tpn-id} + } + } + } + ] + }, "optimizations": { "optimization-metric": [ { - "metric-type": "ietf-te-types:path-metric-te", - "weight": "1" + "metric-type": "ietf-te-types:path-metric-distance" } ] } } ] }, - "ietf-otn-tunnel:dst-tributary-slot-count": ${gfp-n}, - "ietf-otn-tunnel:src-tributary-slot-count": ${gfp-n}, + "ietf-otn-tunnel:dst-tributary-slot-count": 2, + "ietf-otn-tunnel:src-tributary-slot-count": 2, "provisioning-state": "ietf-te-types:tunnel-admin-state-down" } ] -} \ No newline at end of file +} diff --git a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-src-domain.json b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-src-domain.json index e9d7cba8..e237d9a6 100644 --- a/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-src-domain.json +++ b/platform-logic/restapi-templates/src/main/json/p2p-otn-tunnel-src-domain.json @@ -2,42 +2,65 @@ "ietf-te:tunnel": [ { "source": ${src-node-id}, - "destination": ${dst-node-id}, + "destination": "0.0.0.0", "encoding": "ietf-te-types:lsp-encoding-oduk", "name": ${otn-tunnel-name-src-domain}, "restoration": { "enable": "false", "restoration-reversion-disable": "true", "restoration-type": "ietf-te-types:lsp-restoration-restore-any", - "wait-to-revert": 0 + "wait-to-revert": 600 }, "te-bandwidth": { - "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODU0" + "ietf-otn-tunnel:odu-type": "ietf-otn-types:prot-ODUFlex-gfp" }, "switching-type": "ietf-te-types:switching-otn", "te-topology-identifier": { - "client-id": ${client-id}, - "provider-id": ${provider-id}, - "topology-id": ${topology-id} + "client-id": 6666, + "provider-id": 5555, + "topology-id": "11" }, "p2p-primary-paths": { "p2p-primary-path": [ { "name": "primary-path", + "path-scope": "ietf-te-types:path-scope-segment", + "explicit-route-objects": { + "route-object-include-exclude": [ + { + "index": "0", + "explicit-route-usage": "ietf-te-types:route-include-ero", + "unnumbered-hop": { + "hop-type": "LOOSE", + "node-id": ${dst-node-id}, + "link-tp-id": ${dst-ttp-id}, + "ietf-otn-tunnel:otu-port-type": "ietf-otn-types:port-otu2" + } + }, + { + "index": "1", + "explicit-route-usage": "ietf-te-types:route-include-ero", + "label-hop": { + "te-label": { + "ietf-otn-tunnel:tpn": ${dst-tpn-id} + } + } + } + ] + }, "optimizations": { "optimization-metric": [ { - "metric-type": "ietf-te-types:path-metric-te", - "weight": "1" + "metric-type": "ietf-te-types:path-metric-distance" } ] } } ] }, - "ietf-otn-tunnel:dst-tributary-slot-count": ${gfp-n}, - "ietf-otn-tunnel:src-tributary-slot-count": ${gfp-n}, + "ietf-otn-tunnel:dst-tributary-slot-count": 2, + "ietf-otn-tunnel:src-tributary-slot-count": 2, "provisioning-state": "ietf-te-types:tunnel-admin-state-down" } ] -} \ No newline at end of file +} -- cgit 1.2.3-korg