CCAMP Working Group H. Zheng Internet-Draft A. Guo Intended status: Standards Track I. Busi Expires: April 22, 2018 Huawei Technologies Y. Xu CAICT Y. Zhao China Mobile October 19, 2017 A YANG Data Model for Client-layer Topology draft-zheng-ccamp-client-topo-yang-00 Abstract A transport network is a server-layer network to provide connectivity services to its client. In this draft the topology of client is described. 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 https://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 April 22, 2018. Copyright Notice Copyright (c) 2017 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 (https://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 Zheng, et al. Expires April 22, 2018 [Page 1] Internet-Draft ETH Topology OTN YANG Model October 2017 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. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology and Notations . . . . . . . . . . . . . . . . . . 3 3. YANG Model for Topology of Client Layer . . . . . . . . . . . 3 3.1. YANG Tree for Ethernet Topology . . . . . . . . . . . . . 3 3.2. YANG Tree for topology Model of other Client Layer . . . 4 4. YANG Code for Topology Client Layer . . . . . . . . . . . . . 4 4.1. The ETH Topology YANG Code . . . . . . . . . . . . . . . 4 4.2. Other OTN client signal YANG Code . . . . . . . . . . . . 10 5. Considerations and Open Issue . . . . . . . . . . . . . . . . 10 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 7. Manageability Considerations . . . . . . . . . . . . . . . . 10 8. Security Considerations . . . . . . . . . . . . . . . . . . . 10 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 11 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 11.1. Normative References . . . . . . . . . . . . . . . . . . 11 11.2. Informative References . . . . . . . . . . . . . . . . . 12 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 1. Introduction A transport network is a server-layer network designed to provide connectivity services for a client-layer network to carry the client traffic transparently across the server-layer network resources. The topology model in Traffic-Engineered network has been defined in both generic way and technology-specific way. The generic model, which is the base TE YANG model, can be found at [I-D.ietf-teas-yang-te-topo]. Technology-specific models, such as OTN/WSON topology model, have also been defined in [I-D.ietf-ccamp-otn-topo-yang] and [I-D.ietf-ccamp-wson-yang] respectively. Corresponding topology on client-layer is also required, to have a complete topology view from the perspective of network controllers. This document defines a data model of all client-layer Topology, using YANG language defined in [RFC7950]. The model is augmenting the generic TE topology model, and can be used by applications exposing to a network controller via a REST interface. Furthermore, it can be used by an application for topology description in client- layer network. Zheng, et al. Expires April 22, 2018 [Page 2] Internet-Draft ETH Topology OTN YANG Model October 2017 2. Terminology and Notations A simplified graphical representation of the data model is used in this document. The meaning of the symbols in the YANG data tree presented later in this document is defined in [I-D.ietf-netmod-yang-tree-diagrams]. They are provided below for reference. o Brackets "[" and "]" enclose list keys. o Abbreviations before data node names: "rw" means configuration (read-write) and "ro" state data (read-only). o Symbols after data node names: "?" means an optional node, "!" means a presence container, and "*" denotes a list and leaf-list. o Parentheses enclose choice and case nodes, and case nodes are also marked with a colon (":"). o Ellipsis ("...") stands for contents of subtrees that are not shown. 3. YANG Model for Topology of Client Layer 3.1. YANG Tree for Ethernet Topology module: ietf-eth-te-topology augment /nd:networks/nd:network/nd:network-types/tet:te-topology: +--rw eth-tran-topology! augment /nd:networks/nd:network: +--rw name? string augment /nd:networks/nd:network/nd:node: +--rw name? string +--rw node-mac-address? yang:mac-address augment /nd:networks/nd:network/lnk:link/tet:te/tet:config: +--rw max-bandwidth? uint64 +--rw available-bandwidth? uint64 +--rw available-vlan-range? etht-types:vid-range-type augment /nd:networks/nd:network/lnk:link/tet:te/tet:state: +--ro max-bandwidth? uint64 +--ro available-bandwidth? uint64 +--ro available-vlan-range? etht-types:vid-range-type augment /nd:networks/nd:network/nd:node/lnk:termination-point: +--rw config | +--rw ltp-mac-address? yang:mac-address | +--rw port-vlan-id? etht-types:vlanid Zheng, et al. Expires April 22, 2018 [Page 3] Internet-Draft ETH Topology OTN YANG Model October 2017 | +--rw access-link-bandwidth-profiles | +--rw bandwidth-profile-name? string | +--rw bandwidth-profile-type? etht-types:bandwidth-profile-type | +--rw CIR? uint64 | +--rw CBS? uint64 | +--rw EIR? uint64 | +--rw EBS? uint64 | +--rw color-aware? boolean | +--rw coupling-flag? boolean +--ro state +--ro ltp-mac-address? yang:mac-address +--ro port-vlan-id? etht-types:vlanid +--ro access-link-bandwidth-profiles +--ro bandwidth-profile-name? string +--ro bandwidth-profile-type? etht-types:bandwidth-profile-type +--ro CIR? uint64 +--ro CBS? uint64 +--ro EIR? uint64 +--ro EBS? uint64 +--ro color-aware? boolean +--ro coupling-flag? boolean augment /nd:networks/nd:network/nd:node/lnk:termination-point/tet:te/tet:config: +--rw client-facing? empty +--rw maximum-frame-size? uint16 augment /nd:networks/nd:network/nd:node/lnk:termination-point/tet:te/tet:state: +--ro client-facing? empty +--ro maximum-frame-size? uint16 3.2. YANG Tree for topology Model of other Client Layer This section will be completed later. 4. YANG Code for Topology Client Layer 4.1. The ETH Topology YANG Code file "ietf-eth-te-topology@2017-09-12.yang" module ietf-eth-te-topology { /* TODO: FIXME */ yang-version 1.1; Zheng, et al. Expires April 22, 2018 [Page 4] Internet-Draft ETH Topology OTN YANG Model October 2017 namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-topology"; prefix "ethtetopo"; import ietf-network { prefix "nd"; } import ietf-network-topology { prefix "lnk"; } import ietf-te-topology { prefix "tet"; } import ietf-yang-types { prefix "yang"; } import ietf-eth-tran-types { prefix "etht-types"; } organization "Internet Engineering Task Force (IETF) CCAMP WG"; contact " WG List: ID-draft editor: Haomian Zheng (zhenghaomian@huawei.com); Italo Busi (italo.busi@huawei.com); Aihua Guo (aihuaguo@huawei.com); Yunbin Xu (xuyunbin@ritt.cn); Yang Zhao (zhaoyangyjy@chinamobile.com); "; description "This module defines a YANG data model for describing layer-2 Ethernet transport topologies."; revision 2017-09-12 { description "Updated version: Moved eth-ltp-svc-attributes grouping to ietf-eth-tran-svc module. "; Zheng, et al. Expires April 22, 2018 [Page 5] Internet-Draft ETH Topology OTN YANG Model October 2017 } revision 2017-08-10 { description "Initial version"; } /* Groupings */ grouping eth-tran-topology-type { description "Identifies the Ethernet Transport topology type"; container eth-tran-topology { presence "indicates a topology type of Ethernet Transport Network."; description "Eth transport topology type"; } } grouping eth-topology-attributes { description "Ethernet transport topology attributes"; leaf name { type string; description "the topology name"; } } grouping eth-node-attributes { description "Ethernet transport node attributes"; leaf name { type string; description "a name for this node."; } leaf node-mac-address { type yang:mac-address; description "the MAC address of the node."; } } grouping eth-link-te-attributes { description "Ethernet TE link attributes"; leaf max-bandwidth { Zheng, et al. Expires April 22, 2018 [Page 6] Internet-Draft ETH Topology OTN YANG Model October 2017 type uint64{ range "0..10000000000"; } units "Kbps"; description "Maximum bandwith value expressed in kilobits per second"; } leaf available-bandwidth { type uint64{ range "0..10000000000"; } units "Kbps"; description "Available bandwith value expressed in kilobits per second"; } leaf available-vlan-range { type etht-types:vid-range-type; description "The range of the VLAN values that are available."; } } grouping eth-ltp-attributes { description "Ethernet transport link termination point attributes"; leaf ltp-mac-address { type yang:mac-address; description "the MAC address of the LTP."; } leaf port-vlan-id { type etht-types:vlanid; description "the port VLAN ID of the LTP."; } } grouping eth-ltp-te-attributes { description "Ethernet transport link termination point TE attributes"; /* Do we need the client-facing attribute? Cannot we use the svc container presence instead? */ leaf client-facing { type empty; description "if present, it means this tp is a client-facing ltp."; } leaf maximum-frame-size { Zheng, et al. Expires April 22, 2018 [Page 7] Internet-Draft ETH Topology OTN YANG Model October 2017 type uint16 { range "64 .. 65535"; } description "Maximum frame size"; } } /* Data nodes */ augment "/nd:networks/nd:network/nd:network-types/tet:te-topology" { description "Augment network types to include ETH transport newtork"; uses eth-tran-topology-type; } augment "/nd:networks/nd:network" { when "nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network"; } description "Augment ETH transport network topology attributes"; uses eth-topology-attributes; } augment "/nd:networks/nd:network/nd:node" { when "../nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network"; } description "Augment ETH transport node attributes"; uses eth-node-attributes; } augment "/nd:networks/nd:network/lnk:link/tet:te/tet:config" { when "../../../nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network."; } description "Augment ETH transport link config attributes"; uses eth-link-te-attributes; } augment "/nd:networks/nd:network/lnk:link/tet:te/tet:state" { when "../../../nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network."; Zheng, et al. Expires April 22, 2018 [Page 8] Internet-Draft ETH Topology OTN YANG Model October 2017 } description "Augment ETH transport link state attributes"; uses eth-link-te-attributes; } augment "/nd:networks/nd:network/nd:node/lnk:termination-point" { when "../../nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network"; } description "Augment ETH LTP attributes"; container config { description "ETH LTP configuration data."; uses eth-ltp-attributes; container access-link-bandwidth-profiles { uses etht-types:etht-bandwidth-profiles; description "Bandwidth profiles for access link."; } } container state { config false; description "ETH LTP operational state data."; uses eth-ltp-attributes; container access-link-bandwidth-profiles { uses etht-types:etht-bandwidth-profiles; description "Bandwidth profiles for access link."; } } } augment "/nd:networks/nd:network/nd:node/" +"lnk:termination-point/tet:te/tet:config" { when "../../nd:network-types/tet:te-topology/eth-tran-topology" { description "Augment only for ETH transport network"; } description "Augment ETH transport LTP TE config attributes"; uses eth-ltp-te-attributes; } augment "/nd:networks/nd:network/nd:node/" +"lnk:termination-point/tet:te/tet:state" { when "../../nd:network-types/tet:te-topology/eth-tran-topology" { Zheng, et al. Expires April 22, 2018 [Page 9] Internet-Draft ETH Topology OTN YANG Model October 2017 description "Augment only for ETH transport network"; } description "Augment ETH transport LTP TE state attributes"; uses eth-ltp-te-attributes; } } 4.2. Other OTN client signal YANG Code TBD. 5. Considerations and Open Issue Editor Notes: This section is used to note temporary discussion/ conclusion that to be fixed in the future version, and will be removed before publication. 6. IANA Considerations TBD. 7. Manageability Considerations TBD. 8. Security Considerations The data following the model defined in this document is exchanged via, for example, the interface between an orchestrator and a transport network controller. The security concerns mentioned in [I-D.ietf-teas-yang-te-topo] for using ietf-te-topology.yang model also applies to this document. The YANG module defined in this document can be accessed via the RESTCONF protocol defined in [RFC8040], or maybe via the NETCONF protocol [RFC6241]. There are a number of data nodes defined in the YANG module which are writable/creatable/deletable (i.e., config true, which is the default). These data nodes may be considered sensitive or vulnerable in some network environments. Write operations (e.g., POST) to these data nodes without proper protection can have a negative effect on network operations. Zheng, et al. Expires April 22, 2018 [Page 10] Internet-Draft ETH Topology OTN YANG Model October 2017 Editors note: to list specific subtrees and data nodes and their sensitivity/vulnerability. 9. Acknowledgements We would like to thank Igor Bryskin and Daniel King for their comments and discussions. 10. Contributors Yanlei Zheng China Unicom Email: zhengyl@dimpt.com Zhe Liu Huawei Technologies, Email: liuzhe123@huawei.com Zheyu Fan Huawei Technologies, Email: fanzheyu@huawei.com Sergio Belotti Nokia, Email: sergio.belotti@nokia.com Yingxi Yao Shanghai Bell, yingxi.yao@nokia-sbell.com 11. References 11.1. Normative References [I-D.ietf-ccamp-otn-topo-yang] zhenghaomian@huawei.com, z., Fan, Z., Sharma, A., Liu, X., Belotti, S., Xu, Y., Wang, L., and O. Dios, "A YANG Data Model for Optical Transport Network Topology", draft-ietf- ccamp-otn-topo-yang-01 (work in progress), September 2017. [I-D.ietf-ccamp-otn-tunnel-model] zhenghaomian@huawei.com, z., Fan, Z., Sharma, A., Rao, R., Belotti, S., Lopezalvarez, V., and Y. Li, "OTN Tunnel YANG Model", draft-ietf-ccamp-otn-tunnel-model-00 (work in progress), July 2017. Zheng, et al. Expires April 22, 2018 [Page 11] Internet-Draft ETH Topology OTN YANG Model October 2017 [I-D.ietf-teas-yang-te-topo] Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and O. Dios, "YANG Data Model for TE Topologies", draft-ietf- teas-yang-te-topo-12 (work in progress), July 2017. [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., and A. Bierman, Ed., "Network Configuration Protocol (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, . [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, . [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10.17487/RFC7950, August 2016, . [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, . 11.2. Informative References [I-D.ietf-ccamp-wson-yang] Lee, Y., Dhody, D., Zhang, X., Guo, A., Lopezalvarez, V., King, D., Yoon, B., and R. Vilata, "A Yang Data Model for WSON Optical Networks", draft-ietf-ccamp-wson-yang-08 (work in progress), October 2017. [I-D.ietf-netmod-yang-tree-diagrams] Bjorklund, M. and L. Berger, "YANG Tree Diagrams", draft- ietf-netmod-yang-tree-diagrams-01 (work in progress), June 2017. [I-D.zhang-teas-transport-service-model] Zhang, X. and J. Ryoo, "A Service YANG Model for Connection-oriented Transport Networks", draft-zhang-teas- transport-service-model-01 (work in progress), October 2016. [RFC7062] Zhang, F., Ed., Li, D., Li, H., Belotti, S., and D. Ceccarelli, "Framework for GMPLS and PCE Control of G.709 Optical Transport Networks", RFC 7062, DOI 10.17487/RFC7062, November 2013, . Zheng, et al. Expires April 22, 2018 [Page 12] Internet-Draft ETH Topology OTN YANG Model October 2017 Authors' Addresses Haomian Zheng Huawei Technologies F3 R&D Center, Huawei Industrial Base, Bantian, Longgang District Shenzhen, Guangdong 518129 P.R.China Email: zhenghaomian@huawei.com Aihua Guo Huawei Technologies Email: aihuaguo@huawei.com Italo Busi Huawei Technologies Email: Italo.Busi@huawei.com Yunbin Xu CAICT Email: xuyunbin@ritt.cn Yang Zhao China Mobile Email: zhaoyangyjy@chinamobile.com Zheng, et al. Expires April 22, 2018 [Page 13]