Internet Engineering Task Force Hansance Han Internet Draft Ericsson Intended status: Standards Track Kevin Huang M Ericsson Daisy Feng Ericsson Expires: June 2018 September 27, 2017 Yang Data Model for PPPoE Protocol draft-han-netmod-intf-ext-pppoe-yang-01.txt Abstract This document defines a YANG data model that can be used to configure and manage PPPoE. 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), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on March 27, 2009. 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 (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents Hansance&Kevin&Daisy Expires June 27, 2018 [Page 1] Internet-Draft PPPoE Yang Data Model September 2017 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. Table of Contents 1. Introduction...................................................2 1.1. Terminology...............................................2 1.2. Tree Diagrams.............................................3 2. Design of Data Model...........................................3 2.1. Overview..................................................3 3. PPPoE YANG Module..............................................4 4. Security Considerations........................................8 5. IANA Considerations............................................8 6. Normative References...........................................8 7. Appendix A. Change Log........................................8 1. Introduction This document defines a YANG [RFC6020] data model for the management of PPPoE protocol. This data model includes configuration data and state data (status information and counters for the collection of statistics). 1.1. Terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119]. The following terms are used within this document: The following terms are defined in [RFC6241] and are not redefined here: o client o configuration data o server o state data Hansance&Kevin&Daisy Expires June 27, 2018 [Page 2] Internet-Draft PPPoE Yang Data Model September 2017 The following terms are defined in [RFC6020] and are not redefined here: o augment o data model o data node o presence container 1.2. Tree Diagrams A simplified graphical representation of the data model is used in this document. The meaning of the symbols in these diagrams is as follows: o Brackets "[" and "]" enclose list keys. o Abbreviations before data node names: "rw" means configuration (read-write), and "ro" means 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. 2. Design of Data Model The goal of this document is to define a data model that provides a common user interface to the PPPoE protocol. There is very information that is designated as "mandatory", providing freedom for vendors to adapt this data model to their respective product implementations. 2.1. Overview The PPPoE YANG module defined in this document has all the common building blocks for the PPPoE protocol. module: ietf-if-ex-pppoe augment /if:interfaces/if:interface: +--rw pppoe! +--rw pppoe-mode-type? enumeration +--rw pppoe-server! {pppoe-server}? Hansance&Kevin&Daisy Expires June 27, 2018 [Page 3] Internet-Draft PPPoE Yang Data Model September 2017 | +--rw enabled? boolean | +--rw remote-ip-pool! {remote-ip-pool}? | | +--rw (address-pool) | | +--:(ip-pool) | | | +--rw ip-pool? inet:ip-prefix | | +--:(ip-pool-name) | | +--rw ip-pool-name? string | +--rw authentication! {pppoe-authentication}? | +--rw (authentication-mode) | +--:(pap) | | +--rw pap? empty | +--:(chap) | +--rw chap? empty +--rw pppoe-client! {pppoe-client}? +--rw enabled? boolean 3. PPPoE YANG Module file "intf-if-ext-pppoe@2017-09-19.yang" module ietf-if-ex-pppoe { namespace "urn:ietf:params:xml:ns:yang:ietf-if-ext-pppoe"; prefix "pppoe"; import ietf-interfaces { prefix if; } import ietf-inet-types { prefix "inet"; } organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; contact "Editor: Hansance Han "; description "This module contains a collection of YANG definitions for managing PPPoE network interfaces."; revision 2017-09-19 { description "Initial revision."; reference Hansance&Kevin&Daisy Expires June 27, 2018 [Page 4] Internet-Draft PPPoE Yang Data Model September 2017 "RFC 7223: A YANG Data Model for Interface Management"; } feature pppoe { description "Indicates that the interface supports configuration of pppoe."; } feature pppoe-server { description "Indicates that the PPPoE supports server mode."; } feature pppoe-client { description "Indicates that the PPPoE support client mode."; } feature remote-ip-pool { description "Indicates that the PPPoE server support IPv4 and IPv6 address pool."; } feature pppoe-authentication { description "Indicates that the interface supports configuration of pppoe authentication."; } augment "/if:interfaces/if:interface" { when "if:type = 'ppp'"; description "PPPoE link protocol is extension under interface."; container pppoe { presence ""; description "A pppoe interface must specify the PPPoE parameters."; leaf pppoe-mode-type { type enumeration { enum server { description "To configure device to operate in the PPPoE server mode."; } Hansance&Kevin&Daisy Expires June 27, 2018 [Page 5] Internet-Draft PPPoE Yang Data Model September 2017 enum client { description "To configure device to operate in the PPPoE client mode."; } } default server; description "The desired mode type for this PPPoE connection mode."; } container pppoe-server { if-feature pppoe-server; presence ""; description "The PPPoE server configuration subtree."; leaf enabled { type boolean; default "false"; description "This leaf contains the configured, desired state of the PPPoE."; } container remote-ip-pool { if-feature remote-ip-pool; presence ""; description "The PPPoE server support IPv4 and IPv6 address pool for remote client device"; choice address-pool { mandatory true; description "The address-pool for IPv4/IPv6 adress and IP pool name."; case ip-pool { leaf ip-pool { type inet:ip-prefix; description "An IPv4/IPv6 prefix used for PPPoE remote IPv4/IPv6 pool purposes."; } } case ip-pool-name { leaf ip-pool-name { type string { Hansance&Kevin&Daisy Expires June 27, 2018 [Page 6] Internet-Draft PPPoE Yang Data Model September 2017 length "1..64"; } description "Name of the IP pool"; } } } } container authentication { if-feature pppoe-authentication; presence ""; description "The authentication configuration subtree."; choice authentication-mode { mandatory true; description "The authentication sub-mode pap and chap."; case pap { leaf pap { type empty; description "Authentication pap for PPPoE."; } } case chap { leaf chap { type empty; description "Authentication pap for PPPoE."; } } } } } container pppoe-client { if-feature pppoe-client; presence ""; description "The PPPoE server configuration subtree."; leaf enabled { type boolean; default "false"; description "This leaf contains the configured, desired state of the PPPoE."; } } Hansance&Kevin&Daisy Expires June 27, 2018 [Page 7] Internet-Draft PPPoE Yang Data Model September 2017 // other PPPoE specific params... } } } 4. Security Considerations The data model defined does not create any security implications. 5. IANA Considerations This draft does not request any IANA action. 6. Normative References [RFC7224] M. Bjorklund, "IANA Interface Type YANG model", RFC 7224 May 2014, . [RFC1661] Simpson, W., "The Point-to-Point Protocol(PPP)", STD 51, RFC 1661, July 1999, . [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, DOI 10.17487/RFC6020, October 2010, . [RFC6021] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC 6021, DOI 10.17487/RFC6021, October 2010, . 7. Appendix A. Change Log A.1. Changes from 00 to 01 Hansance&Kevin&Daisy Expires June 27, 2018 [Page 8] Internet-Draft PPPoE Yang Data Model September 2017 o Changed namespace with "ietf-if-ext-pppoe". Authors' Addresses Hansance Han Ericsson (China) Communications Company Ltd. Ericsson Tower, No. 5 Lize East Street, Chaoyang District Beijing 100102, P.R. China Email: hansance.han@ericsson.com Kevin Huang M Ericsson (China) Communications Company Ltd. Ericsson Tower, No. 5 Lize East Street, Chaoyang District Beijing 100102, P.R. China Email: kevin.m.huang@ericsson.com Daisy Feng Ericsson (China) Communications Company Ltd. Ericsson Tower, No. 5 Lize East Street, Chaoyang District Beijing 100102, P.R. China Email: Daisy.feng@ericsson.com Hansance&Kevin&Daisy Expires June 27, 2018 [Page 9]