CCAMP Working Group A. Sharma Internet-Draft R. Rao Intended status: Standards Track Infinera Corp Expires: January 7, 2017 X. Zhang Huawei Technologies July 6, 2016 OTN Service YANG Model draft-sharma-ccamp-otn-service-model-00 Abstract This document describes the YANG data model for OTN Services. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 7, 2017. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Sharma, et al. Expires January 7, 2017 [Page 1] Internet-Draft OTN Service YANG Model July 2016 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Model Overview . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. OTN Mux Service . . . . . . . . . . . . . . . . . . . . . 3 2.2. Model Tree . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3. OTN Service YANG Model . . . . . . . . . . . . . . . . . . 4 2.4. Transport Types YANG Model . . . . . . . . . . . . . . . . 9 3. Security Considerations . . . . . . . . . . . . . . . . . . . 18 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 18 6. Normative References . . . . . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18 Sharma, et al. Expires January 7, 2017 [Page 2] Internet-Draft OTN Service YANG Model July 2016 1. Introduction OTN transport networks can carry various types of client services. In many cases, the client service is an OTN service across connected domains in a multi-domain network. These OTN services can either be transported or switched in the OTN network. If an OTN service is switched then additional parameters need to be provided to create a Mux OTN service. This document provides YANG model for creating OTN service. The model augments the TE Tunnel model, which is an abstract model to create TE Tunnels. 2. Model Overview This section provides an overview of the OTN Service Model. 2.1. OTN Mux Service OTN Mux Service <---------------------------------> XXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXX XX XXX XX XXX XX XX XX +---+ X XX +---+ +---+ X XX +---+ XX X |NE1+--------+-----+NE2+-----------+NE3+--------+-X---+NE4| X X +---+ XX ^ X +---+ +---+ XX ^ XX +---+ X XX XX | XX XX | XX XXX XXXXXXXXXX | XXXXXXXXXXXXXXXXXXXXXXXX | XXXXXXXXXX Domain-1 | Domain-2 | Domain-3 + + Same OTN Service attributes: Same OTN Service attributes: 1. Client Signal 1. Client Signal 2. Tributary Port Number 2. Tributary Port Number 3. Tributary Slot Granularity 3. Tributary Slot Granularity 4. Timeslots 4. Timeslots Figure 1: OTN Mux Service in a multi-domain network topology Figure 1 shows a multi-domain OTN network with three domains. In this example, user wants to setup an end-to-end OTN service that passes through Domain-2. In order to create an OTN mux service in Domain-2, user will need to specify the exact details of the client side LO-ODU on NE2 and NE3, so that these service endpoints can be paired with the LO-ODU endpoints on NE1 and NE4, respectively. Sharma, et al. Expires January 7, 2017 [Page 3] Internet-Draft OTN Service YANG Model July 2016 Let's assume that ODU4 is the client side HO-ODU on NE2 and NE3, and the client signal is ODU2. User will need to specify the OTN client signal (ODU2 in this example), the Tributary Port Number (TPN), Tributary Slot Granularities (TSG) and timeslots to be used. As shown in the figure above, these service parameters must be the same between NE1 and NE2, and NE3 and NE4. Once the OTN Mux service is setup in Domain-2, the incoming signal from either NE1 and/or NE4 will be switched inside Domain-2, and delivered to NE at the other end. 2.2. Model Tree module: ietf-otn-service augment /te:te/te:tunnels/te:tunnel/te:config: +--rw payload-treatment? enumeration +--rw src-client-signal? identityref +--rw src-tpn? uint16 +--rw src-tsg? identityref +--rw src-timeslot-count? uint16 +--rw src-timeslots | +--rw values* uint8 +--rw dst-client-signal? identityref +--rw dst-tpn? uint16 +--rw dst-tsg? identityref +--rw dst-timeslot-count? uint16 +--rw dst-timeslots +--rw values* uint8 augment /te:te/te:tunnels/te:tunnel/te:state: +--ro payload-treatment? enumeration +--ro src-client-signal? identityref +--ro src-tpn? uint16 +--ro src-tsg? identityref +--ro src-timeslot-count? uint16 +--ro src-timeslots | +--ro values* uint8 +--ro dst-client-signal? identityref +--ro dst-tpn? uint16 +--ro dst-tsg? identityref +--ro dst-timeslot-count? uint16 +--ro dst-timeslots +--ro values* uint8 2.3. OTN Service YANG Model file "ietf-otn-service@2016-06-24.yang" module ietf-otn-service { Sharma, et al. Expires January 7, 2017 [Page 4] Internet-Draft OTN Service YANG Model July 2016 yang-version 1; namespace "urn:ietf:params:xml:ns:yang:ietf-otn-service"; prefix "otn-svc"; import ietf-te { prefix "te"; } import ietf-transport-types { prefix "tran-types"; } import yang-ext { prefix ext; revision-date 2013-07-09; } organization "IETF CCAMP Working Group"; contact "WG Web: WG List: Editor: Anurag Sharma Editor: Rajan Rao Editor: Xian Zhang "; description "This module defines a model for OTN Services."; revision "2016-06-24" { description "Initial revision"; reference "TBD"; } grouping otn-tunnel-endpoint { description "Parameters for OTN service."; leaf payload-treatment { type enumeration { enum switching; enum transport; } default switching; description "Treatment of the incoming payload. Payload can either be switched, or transported as is."; } leaf src-client-signal { type identityref { Sharma, et al. Expires January 7, 2017 [Page 5] Internet-Draft OTN Service YANG Model July 2016 base tran-types:client-signal; } description "Client signal at the source endpoint of the tunnel."; } leaf src-tpn { type uint16 { range "0..4095"; } description "Tributary Port Number. Applicable in case of mux services."; reference "RFC7139: GMPLS Signaling Extensions for Control of Evolving G.709 Optical Transport Networks."; } leaf src-tsg { type identityref { base tran-types:tributary-slot-granularity; } description "Tributary slot granularity. Applicable in case of mux services."; reference "G.709/Y.1331, February 2012: Interfaces for the Optical Transport Network (OTN)"; } leaf src-timeslot-count { type uint16; description "Number of timeslots used at the source."; } container src-timeslots { description "A list of tributary timeslots used by the client service. Applicable in case of mux services."; leaf-list values { type uint8; description "Tributary timeslot value."; reference "G.709/Y.1331, February 2012: Interfaces for the Sharma, et al. Expires January 7, 2017 [Page 6] Internet-Draft OTN Service YANG Model July 2016 Optical Transport Network (OTN)"; } } leaf dst-client-signal { type identityref { base tran-types:client-signal; } description "Client signal at the destination endpoint of the tunnel."; } leaf dst-tpn { type uint16 { range "0..4095"; } description "Tributary Port Number. Applicable in case of mux services."; reference "RFC7139: GMPLS Signaling Extensions for Control of Evolving G.709 Optical Transport Networks."; } leaf dst-tsg { type identityref { base tran-types:tributary-slot-granularity; } description "Tributary slot granularity. Applicable in case of mux services."; reference "G.709/Y.1331, February 2012: Interfaces for the Optical Transport Network (OTN)"; } leaf dst-timeslot-count { type uint16; description "Number of timeslots used at the destination."; } container dst-timeslots { description "A list of tributary timeslots used by the client service. Applicable in case of mux services."; Sharma, et al. Expires January 7, 2017 [Page 7] Internet-Draft OTN Service YANG Model July 2016 leaf-list values { type uint8; description "Tributary timeslot value."; reference "G.709/Y.1331, February 2012: Interfaces for the Optical Transport Network (OTN)"; } } } /* Note: Comment has been given to authors of TE Tunnel model to add tunnel-types to the model in order to identify the technology type of the service. grouping otn-service-type { description "Identifies the OTN Service type."; container otn-service { presence "Indicates OTN Service."; description "Its presence identifies the OTN Service type."; } } // otn-service-type augment "/te:te/te:tunnels/te:tunnel/te:tunnel-types" { description "Introduce OTN service type for tunnel."; ext:augment-identifier otn-service-type-augment; uses otn-service-type; } */ /* Note: Comment has been given to authors of TE Tunnel model to add list of endpoints under config to support P2MP tunnel. */ augment "/te:te/te:tunnels/te:tunnel/te:config" { description "Augment with additional parameters required for OTN service."; ext:augment-identifier otn-tunnel-endpoint-config-augment; uses otn-tunnel-endpoint; } augment "/te:te/te:tunnels/te:tunnel/te:state" { description Sharma, et al. Expires January 7, 2017 [Page 8] Internet-Draft OTN Service YANG Model July 2016 "Augment with additional parameters required for OTN service."; ext:augment-identifier otn-tunnel-endpoint-state-augment; uses otn-tunnel-endpoint; } /* Note: Comment has been given to authors of TE Tunnel model to add tunnel-lifecycle-event to the model. This notification is reported for all lifecycle changes (create, delete, and update) to the tunnel or lsp. augment "/te:tunnel-lifecycle-event" { description "OTN service event"; uses otn-service-type; uses otn-tunnel-params; list endpoint { key "endpoint-address tp-id"; description "List of Tunnel Endpoints."; uses te:tunnel-endpoint; uses otn-tunnel-params; } } */ } 2.4. Transport Types YANG Model file "ietf-transport-types@2016-06-24.yang" module ietf-transport-types { yang-version 1; namespace "urn:ietf:params:xml:ns:yang:ietf-transport-types"; prefix "tran-types"; organization "IETF CCAMP Working Group"; contact "WG Web: WG List: Editor: Anurag Sharma Sharma, et al. Expires January 7, 2017 [Page 9] Internet-Draft OTN Service YANG Model July 2016 Editor: Rajan Rao Editor: Xian Zhang "; description "This module defines transport types."; revision "2016-06-24" { description "Initial revision"; reference "TBD"; } identity tributary-slot-granularity { description "Tributary slot granularity."; reference "G.709/Y.1331, February 2012: Interfaces for the Optical Transport Network (OTN)"; } identity tsg-1.25G { base tributary-slot-granularity; description "1.25G tributary slot granularity."; } identity tsg-2.5G { base tributary-slot-granularity; description "2.5G tributary slot granularity."; } identity tributary-protocol-type { description "Base identity for protocol framing used by tributary signals."; } identity prot-OTU1 { base tributary-protocol-type; description "OTU1 protocol (2.66G)"; } identity prot-OTU1e { base tributary-protocol-type; Sharma, et al. Expires January 7, 2017 [Page 10] Internet-Draft OTN Service YANG Model July 2016 description "OTU1e protocol (11.04G)"; } identity prot-OTU2 { base tributary-protocol-type; description "OTU2 protocol (10.70G)"; } identity prot-OTU2e { base tributary-protocol-type; description "OTU2e protocol (11.09G) for 10G LAN PHY"; } identity prot-OTU2f { base tributary-protocol-type; description "OTU2f protocol (11.32G) for transporting a 10 fiber channel."; } identity prot-OTU3 { base tributary-protocol-type; description "OTU3 protocol (43.01G)"; } identity prot-OTU3e { base tributary-protocol-type; description "OTU3e protocol (44.57G) for transporting four OTU2e signals."; } identity prot-OTU3e2 { base tributary-protocol-type; description "OTU3e2 protocol (44.58G)."; } identity prot-OTU4 { base tributary-protocol-type; description "OTU4 protocol (112G) for transporting 100GE Sharma, et al. Expires January 7, 2017 [Page 11] Internet-Draft OTN Service YANG Model July 2016 signal."; } identity prot-OTUCn { base tributary-protocol-type; description "OTUCn protocol (beyond 100G) for transporting more than 100G signals."; } identity prot-ODU0 { base tributary-protocol-type; description "ODU0 protocol (1.24G)."; } identity prot-ODU1 { base tributary-protocol-type; description "ODU1 protocol (2.49G)."; } identity prot-ODU1e { base tributary-protocol-type; description "ODU1e protocol (10.35G)."; } identity prot-ODU2 { base tributary-protocol-type; description "ODU2 protocol (10.03G)."; } identity prot-ODU2e { base tributary-protocol-type; description "ODU2e protocol (10.39G)."; } identity prot-ODU3 { base tributary-protocol-type; description "ODU 3 protocol (40.31G)."; } identity prot-ODU3e2 { base tributary-protocol-type; Sharma, et al. Expires January 7, 2017 [Page 12] Internet-Draft OTN Service YANG Model July 2016 description "ODU3e2 protocol (41.78G)."; } identity prot-ODU4 { base tributary-protocol-type; description "ODU4 protocol (104.79G)."; } identity prot-ODUFlex-cbr { base tributary-protocol-type; description "ODU Flex CBR protocol for transporting constant bit rate signal."; } identity prot-ODUFlex-gfp { base tributary-protocol-type; description "ODU Flex GFP protocol for transporting stream of packets using Generic Framing Procedure."; } identity prot-ODUCn { base tributary-protocol-type; description "ODUCn protocol (beyond 100G)."; } identity prot-1GbE { base tributary-protocol-type; description "1G Ethernet protocol"; } identity prot-10GbE-LAN { base tributary-protocol-type; description "10G Ethernet LAN protocol"; } identity prot-40GbE { base tributary-protocol-type; description "40G Ethernet protocol"; } Sharma, et al. Expires January 7, 2017 [Page 13] Internet-Draft OTN Service YANG Model July 2016 identity prot-100GbE { base tributary-protocol-type; description "100G Ethernet protocol"; } identity client-signal { description "Base identity from which specific client signals for the tunnel are derived."; } identity client-signal-1GbE { base client-signal; description "Client signal type of 1GbE"; } identity client-signal-10GbE-LAN { base client-signal; description "Client signal type of 10GbE LAN"; } identity client-signal-10GbE-WAN { base client-signal; description "Client signal type of 10GbE WAN"; } identity client-signal-40GbE { base client-signal; description "Client signal type of 40GbE"; } identity client-signal-100GbE { base client-signal; description "Client signal type of 100GbE"; } identity client-signal-OC3_STM1 { base client-signal; description "Client signal type of OC3 and STM1"; } Sharma, et al. Expires January 7, 2017 [Page 14] Internet-Draft OTN Service YANG Model July 2016 identity client-signal-OC12_STM4 { base client-signal; description "Client signal type of OC12 and STM4"; } identity client-signal-OC48_STM16 { base client-signal; description "Client signal type of OC48 and STM16"; } identity client-signal-OC192_STM64 { base client-signal; description "Client signal type of OC192 and STM64"; } identity client-signal-OC768_STM256 { base client-signal; description "Client signal type of OC768 and STM256"; } identity client-signal-OTU1 { base client-signal; description "Client signal type of OTU1 (2.66G)"; } identity client-signal-OTU2 { base client-signal; description "Client signal type of OTU2 (10.70G)"; } identity client-signal-OTU2e { base client-signal; description "Client signal type of OTU2e (11.09G)"; } identity client-signal-OTU2f { base client-signal; description "Client signal type of OTU2f (11.32G)"; } Sharma, et al. Expires January 7, 2017 [Page 15] Internet-Draft OTN Service YANG Model July 2016 identity client-signal-OTU3 { base client-signal; description "Client signal type of OTU3 (43.01G)"; } identity client-signal-OTU3e { base client-signal; description "Client signal type of OTU3e (44.58G)"; } identity client-signal-OTU4 { base client-signal; description "Client signal type of OTU4 (112G)"; } identity client-signal-OTUCn { base client-signal; description "Client signal type of OTUCn (beyond 100G)"; } identity client-signal-ODU0 { base client-signal; description "Client signal type of ODU0 (1.24G)"; } identity client-signal-ODU1 { base client-signal; description "ODU1 protocol (2.49G)"; } identity client-signal-ODU2 { base client-signal; description "Client signal type of ODU2 (10.03G)"; } identity client-signal-ODU2e { base client-signal; description "Client signal type of ODU2e (10.39G)"; } Sharma, et al. Expires January 7, 2017 [Page 16] Internet-Draft OTN Service YANG Model July 2016 identity client-signal-ODU3 { base client-signal; description "Client signal type of ODU 3 (40.31G)"; } identity client-signal-ODU3e2 { base client-signal; description "Client signal type of ODU3e2 (41.78G)"; } identity client-signal-ODU4 { base client-signal; description "Client signal type of ODU4 (104.79G)"; } identity client-signal-ODUFlex-cbr { base client-signal; description "Client signal type of ODU Flex CBR"; } identity client-signal-ODUFlex-gfp { base client-signal; description "Client signal type of ODU Flex GFP"; } identity client-signal-ODUCn { base client-signal; description "Client signal type of ODUCn (beyond 100G)."; } identity client-signal-FC400 { base client-signal; description "Client signal type of Fibre Channel FC400."; } identity client-signal-FC800 { base client-signal; description "Client signal type of Fibre Channel FC800."; } Sharma, et al. Expires January 7, 2017 [Page 17] Internet-Draft OTN Service YANG Model July 2016 identity client-signal-FICON-4G { base client-signal; description "Client signal type of Fibre Connection 4G."; } identity client-signal-FICON-8G { base client-signal; description "Client signal type of Fibre Connection 8G."; } } 3. Security Considerations TBD 4. IANA Considerations TBD 5. Acknowledgements 6. Normative References [G.709] ITU-T, "Interfaces for the Optical Transport Network (OTN), G.709/Y.1331 Recommendation", February 2012. [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, DOI 10.17487/RFC6020, October 2010, . [RFC7139] Zhang, F., Ed., Zhang, G., Belotti, S., Ceccarelli, D., and K. Pithewan, "GMPLS Signaling Extensions for Control of Evolving G.709 Optical Transport Networks", RFC 7139, DOI 10.17487/RFC7139, March 2014, . Sharma, et al. Expires January 7, 2017 [Page 18] Internet-Draft OTN Service YANG Model July 2016 Authors' Addresses Anurag Sharma Infinera Corp 169 Java Drive Sunnyvale, CA 94089 USA Phone: +1-408-572-5365 Email: AnSharma@infinera.com Rajan Rao Infinera Corp 169 Java Drive Sunnyvale, CA 94089 USA Phone: +1-408-543-7755 Email: rrao@infinera.com Xian Zhang Huawei Technologies F3-5-B R&D Center, Huawei Industrial Base, Bantian, Longgang District Shenzhen, Guangdong 518129 P.R.China Email: zhang.xian@huawei.com Sharma, et al. Expires January 7, 2017 [Page 19]