<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.6.1 (Ruby 2.7.0) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-ogondio-opsawg-ospf-topology-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="OSPF Topology YANG">A YANG Data Model for Open Source Path First (OSPF) Topology</title>

    <author initials="O. G. de" surname="Dios" fullname="Oscar González de Dios">
      <organization>Telefonica</organization>
      <address>
        <email>oscar.gonzalezdedios@telefonica.com</email>
      </address>
    </author>
    <author initials="S. B." surname="Giraldo" fullname="Samier Barguil Giraldo">
      <organization>Telefonica</organization>
      <address>
        <email>samier.barguilgiraldo.ext@telefonica.com</email>
      </address>
    </author>
    <author initials="V." surname="Lopez" fullname="Victor Lopez">
      <organization>Nokia</organization>
      <address>
        <email>victor.lopez@nokia.com</email>
      </address>
    </author>

    <date year="2022" month="March" day="07"/>

    
    <workgroup>OPSAWG Working Group</workgroup>
    

    <abstract>


<t>This document defines a YANG data model for representing an abstract view of the provider network topology that contains Open Source Path First (OSPF)  information. This document augments the 'ietf-network' data model by adding OSPF concepts.</t>

<t>The YANG data model defined in this document conforms to the Network Management Datastore Architecture (NMDA).</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>Topology collection is a critical use case for the network operators because the network topology is an abstract representation of the physical nodes, links and network interconnections. Network  planning processes requires that the network resources are placed to meet the traffic demands requirements not just in terms of bandwidth or delay, but also for failure scenarios. Network operators does the network planning process as an offline process, which obtains the information not directly from the network, but from inventory or template information. The main reason for this process was that there was a lack of a dynamic and programmatic interfaces that can allow the planning tools to obtain such information.</t>

<t>Thanks to the definition of the ietf-network model in <xref target="RFC8345"/> this situation changed, because network operators can use an API with dynamic topological information. On top of the work in <xref target="RFC8345"/>, <xref target="RFC8346"/> and <xref target="RFC8944"/> extends the generic network and network topology data models with topology attributes that are specific to Layer 3 and Layer 2. However, there is not any model that exposes Open Source Path First (OSPF) information. This information is required in the IP/MPLS planning process to properly assess the required network resources to meet the traffic demands in normal and failure scenarios.</t>

<t>The main objective of this model is to represent most relevant OSPF topology attributes.</t>

<t>This document defines a YANG data model for representing, managing and controlling the OSPF topology. The data model augments ietf-network module <xref target="RFC8345"/> by adding the OSPF information.</t>

<t>This document explains the scope and purpose of the OSPF topology model and how the topology and service models fit together.</t>

<t>The YANG data model defined in this document conforms to the Network Management Datastore Architecture <xref target="RFC8342"/>.</t>

<section anchor="terminology-and-notations"><name>Terminology and Notations</name>

<t>This document assumes that the reader is familiar with the contents of <xref target="RFC8345"/>. The document uses terms from those documents.</t>

<t>The terminology for describing YANG data models is found in <xref target="RFC7950"/>, <xref target="RFC8795"/> and <xref target="RFC8346"/>.</t>

</section>
<section anchor="requirements-language"><name>Requirements Language</name>

<t>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  <xref target="RFC2119"/>, <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="tree-diagram"><name>Tree Diagram</name>

<t>Authors include a simplified graphical representation of the data model is used in <xref target="ietf-l3-ospf-topology-tree"/> of this document.
The meaning of the symbols in these diagrams is defined in <xref target="RFC8340"/>.</t>

</section>
<section anchor="prefix-in-data-node-names"><name>Prefix in Data Node Names</name>

<t>In this document, names of data nodes and other data model objects are prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown in the following table.</t>

<texttable title="Prefixes and corresponding YANG modules" anchor="tab-prefixes">
      <ttcol align='left'>Prefix</ttcol>
      <ttcol align='left'>Yang Module</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>ospfnt</c>
      <c>ietf-l3-ospf-topology</c>
      <c>RFCXXX</c>
      <c>yang</c>
      <c>ietf-yang-types</c>
      <c><xref target="RFC6991"/></c>
</texttable>

<t>RFC Editor Note:
Please replace XXXX with the RFC number assigned to this document.
Please remove this note.</t>

</section>
</section>
<section anchor="yang-data-model-for-ospf-topology"><name>YANG Data Model for OSPF Topology</name>

<t>The abstract (base) network data model is defined in the "ietf-network" module of <xref target="RFC8345"/>. The OSPF-topology builds on the network data model defined in the "ietf-network" module <xref target="RFC8345"/>, augmenting the nodes with OSPF information, which anchor the links and are contained in nodes).</t>

<t>There is a set of parameters and augmentations that are included at the node level. Each parameter and description are detailed following:</t>

<t><list style="symbols">
  <t>Network-types: Its presence identifies the OSPF topology type. Thus, the network type MUST be ospf-topology.</t>
  <t>OSPF timer attributes: Identifies the node timer attributes configured in the network element. They are wait timer, rapid delay, slow delay and the timer type (linear or exponential back-off).</t>
  <t>OSPF status: contains the neighbours information.</t>
</list></t>

<t>There is a second set of parameters and augmentations are included at the link and termination point level. Each parameter is listed as follows:</t>

<t><list style="symbols">
  <t>Interface-type</t>
  <t>Area ID</t>
  <t>Metric</t>
  <t>Passive mode</t>
</list></t>

</section>
<section anchor="ietf-l3-ospf-topology-tree"><name>OSPF Topology Tree Diagram</name>

<t><xref target="fig-ietf-l3-ospf-topology-tree"/> below shows the tree diagram of the YANG data model defined in module ietf-l3-ospf-topology.yang (<xref target="ietf-l3-ospf-topology-yang"/>).</t>

<figure title="OSPF Topology tree diagram" anchor="fig-ietf-l3-ospf-topology-tree"><artwork><![CDATA[
module: ietf-l3-ospf-topology
  augment /nw:networks/nw:network/nw:network-types:
    +--rw ospfv2-topology!
  augment /nw:networks/nw:network/nw:node/
    l3t:l3-node-attributes:
    +--rw ospf-timer-attributes
       +--rw wait-timer?    uint32
       +--rw rapid-delay?   uint32
       +--rw slow-delay?    uint32
       +--rw timer-type?    enumeration
  augment /nw:networks/nw:network/nt:link/
    l3t:l3-link-attributes:
    +--rw ospfv2-termination-point-attributes
       +--rw interface-type?   identityref
       +--rw area-id?          area-id-type
       +--rw metric?           uint64
       +--rw is-passive?       boolean
  augment /nw:networks/nw:network/nw:node/nt:termination-point/
    l3t:l3-termination-point-attributes:
    +--rw ospfv2-termination-point-attributes
       +--rw interface-type?   identityref
       +--rw area-id?          area-id-type
       +--rw metric?           uint64
       +--rw is-passive?       boolean
]]></artwork></figure>

</section>
<section anchor="ietf-l3-ospf-topology-yang"><name>YANG Model for OSPF topology</name>

<t>Following the YANG model is presented.</t>

<figure title="OSPF Topology YANG module" anchor="fig-ietf-ospf-topolopy-yang"><artwork><![CDATA[
<CODE BEGINS> file "ietf-l3-ospf-topology@2022-03-07.yang"
module ietf-l3-ospf-topology {
  yang-version 1.1;
  namespace
    "urn:ietf:params:xml:ns:yang:ietf-l3-ospf-topology";
  prefix "ospfnt";
  import ietf-yang-types {
          prefix "yang";
      }
  import ietf-network {
    prefix "nw";
  }
  import ietf-network-topology {
    prefix "nt";
  }
  import ietf-l3-unicast-topology {
    prefix "l3t";
  }

  organization
    "IETF OPSA (Operations and Management Area) Working Group";
  contact
    "WG Web:  <https://datatracker.ietf.org/wg/opsawg/>
    WG List:  <mailto:opsawg@ietf.org>
    
    Editor:   Oscar Gonzalez de Dios
              <mailto:oscar.gonzalezdedios@telefonica.com>
    Editor:   Samier Barguil
              <mailto:samier.barguilgiraldo.ext@telefonica.com>
    Editor:   Victor Lopez
              <mailto:victor.lopez@nokia.com>";
  description
    "This module defines a model for Layer 3 OSPF
     topologies.

     Copyright (c) 2022 IETF Trust and the persons identified as
     authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject to
     the license terms contained in, the Revised BSD License set
     forth in Section 4.c of the IETF Trust's Legal Provisions
     Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
     for full legal notices.";

  revision 2022-03-07 {
    description
      "Initial version";
    reference
      "RFC XXXX: A YANG Data Model for Open Source Path First
       (OSPF) Topology"; }
  
  typedef area-id-type {
    type yang:dotted-quad;
    description
      "An identifier for the OSPFv2 area.";
    reference
         "RFC 2328: OSPF Version 2";
  }

  identity inf-type {
    description
      "Identity for the OSPF interface type.";
    reference
         "RFC 2328: OSPF Version 2";
  }

  identity nbma {
    base inf-type;
    description
      "Identity for the NBMA interface.";
    reference
         "RFC 2328: OSPF Version 2";
  }

  identity p2mp {
    base inf-type;
    description
      "Identity for the p2mp interface.";
    reference
         "RFC 2328: OSPF Version 2";
  }
  identity p2mp-over-lan {
    base inf-type;
    description
      "Identity for the p2mp-over-lan interface.";
    reference
         "RFC 2328: OSPF Version 2";
  }

  identity p2p {
    base inf-type;
    description
      "Identity for the p2p interface.";
    reference
         "RFC 2328: OSPF Version 2";
  }

  grouping ospfv2-topology-type {
    description "Identifies the topology type to be OSPF v2.";
    container ospfv2-topology {
      presence "indicates OSPF v2 topology";
      description
        "The presence of the container node indicates OSPF v2
        topology";
    }
  }

  grouping ospfv2-node-attributes {
    description "OSPF v2 node scope attributes";
    container ospf-timer-attributes {
      description
        "Contains OSPFv2 node timer attributes";
      leaf wait-timer {      
        type uint32;
        units msec;        
        description
          "The amount of time to wait without detecting SPF
          trigger events before going back to the rapid delay.";  
        reference
         "RFC 8541: SPF Impact on IGP Micro-loops";
      }
      leaf rapid-delay {
        type uint32;
        units msec;        
        description
          "The amount of time to wait before running SPF after
          the initial SPF trigger event.";        
        reference
         "RFC 8541: SPF Impact on IGP Micro-loops";
      }
      leaf slow-delay {
        type uint32;
        units msec;
        description
          "The amount of time to wait before running an SPF.";
        reference
         "RFC 8541: SPF Impact on IGP Micro-loops";
      }
      leaf timer-type {
        type enumeration {
          enum LINEAR_BACKOFF {
            description
              "The link state routing protocol uses linear 
               back-off.";
          }
          enum EXPONENTIAL_BACKOFF {
            description
              "The link state routing protocol uses exponential
               back-off."; 
          } 
        } 
        description
          "The timer mode that is utilised by the SPF algorithm.";
        reference
         "RFC 8541: SPF Impact on IGP Micro-loops";
      }
    }
  }

  grouping ospfv2-termination-point-attributes {
    description "OSPF termination point scope attributes";
    container ospfv2-termination-point-attributes {
      description 
        "Indicates the termination point from the
              which the OSPF is configured. A termination
              point can be a physical port, an interface, etc.";
      leaf interface-type {
        type identityref {
          base inf-type ;
        }
        description
          "OSPF interface type.";
        reference
          "RFC 2328: OSPF Version 2";
      }
      leaf area-id {
        type area-id-type;
        description
          "An identifier for the OSPFv2 area.";
        reference
          "RFC 2328: OSPF Version 2";
      }
      leaf metric {
        type uint64;
        description
          "OSFP Protocol metric";
        reference
          "RFC 2328: OSPF Version 2";
      }
      leaf is-passive{
        type boolean;
        description
          "Interface passive mode";
        reference
          "RFC 2328: OSPF Version 2";
      }
    }
  }

  augment "/nw:networks/nw:network/nw:network-types" {
    description
      "Introduces new network type for L3 Unicast topology";
    uses ospfv2-topology-type;
  }
  
  augment "/nw:networks/nw:network/nw:node/"
    +"l3t:l3-node-attributes" {
    when 
    "/nw:networks/nw:network/nw:network-types/"
      +"ospfnt:ospfv2-topology" {
      description
        "Augmentation parameters apply only for networks with
        OSPF topology";
    }
    description
        "OSPF node-level attributes ";
    uses ospfv2-node-attributes;
  }

  augment "/nw:networks/nw:network/"
      + "nt:link/l3t:l3-link-attributes" {
    when "/nw:networks/nw:network/nw:network-types/"
      +"ospfnt:ospfv2-topology" {
      description
        "Augmentation parameters apply only for networks with
        OSFP topology";
    }
    description "Augments topology link configuration";
    uses ospfv2-termination-point-attributes;
  }

  augment "/nw:networks/nw:network/nw:node/"
      +"nt:termination-point/l3t:l3-termination-point-attributes" {
    when "/nw:networks/nw:network/nw:network-types/"
      +"ospfnt:ospfv2-topology" {
      description
        "Augmentation parameters apply only for networks with
        OSFP topology";
    }
    description "Augments topology termination point configuration";
    uses ospfv2-termination-point-attributes;
  }
}
<CODE ENDS>
]]></artwork></figure>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The YANG module specified in this document defines a schema for data that is designed to be accessed via network management protocols such as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>.  The lowest NETCONF layer is the secure transport layer, and the mandatory-to-implement secure transport is Secure Shell (SSH) <xref target="RFC6242"/>. The lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure transport is TLS <xref target="RFC5246"/>.</t>

<t>The NETCONF access control model <xref target="RFC6536"/> provides the means to restrict access for particular NETCONF or RESTCONF users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content.</t>

<t>There are a number of data nodes defined in this YANG module that 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., edit-config) to these data nodes without proper protection can have a negative effect on network operations.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document registers the following namespace URIs in the IETF XML registry <xref target="RFC3688"/>:</t>

<figure><artwork><![CDATA[
--------------------------------------------------------------------
URI: urn:ietf:params:xml:ns:yang:ietf-l3-ospf-topology
Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace.
--------------------------------------------------------------------
]]></artwork></figure>

<t>This document registers the following YANG module in the YANG Module Names registry <xref target="RFC6020"/>:</t>

<figure><artwork><![CDATA[
--------------------------------------------------------------------
name:         ietf-l3-ospf-topology
namespace:    urn:ietf:params:xml:ns:yang:ietf-l3-ospf-topology
maintained by IANA: N
prefix:       ietf-l3-ospf-topology
reference:    RFC XXXX
--------------------------------------------------------------------
]]></artwork></figure>

</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t>This section will be used to track the status of the implementations of the model. It is aimed at being removed if the document becomes RFC.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference anchor='RFC8345' target='https://www.rfc-editor.org/info/rfc8345'>
<front>
<title>A YANG Data Model for Network Topologies</title>
<author fullname='A. Clemm' initials='A.' surname='Clemm'><organization/></author>
<author fullname='J. Medved' initials='J.' surname='Medved'><organization/></author>
<author fullname='R. Varga' initials='R.' surname='Varga'><organization/></author>
<author fullname='N. Bahadur' initials='N.' surname='Bahadur'><organization/></author>
<author fullname='H. Ananthakrishnan' initials='H.' surname='Ananthakrishnan'><organization/></author>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories.  The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t></abstract>
</front>
<seriesInfo name='RFC' value='8345'/>
<seriesInfo name='DOI' value='10.17487/RFC8345'/>
</reference>



<reference anchor='RFC8346' target='https://www.rfc-editor.org/info/rfc8346'>
<front>
<title>A YANG Data Model for Layer 3 Topologies</title>
<author fullname='A. Clemm' initials='A.' surname='Clemm'><organization/></author>
<author fullname='J. Medved' initials='J.' surname='Medved'><organization/></author>
<author fullname='R. Varga' initials='R.' surname='Varga'><organization/></author>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<author fullname='H. Ananthakrishnan' initials='H.' surname='Ananthakrishnan'><organization/></author>
<author fullname='N. Bahadur' initials='N.' surname='Bahadur'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>This document defines a YANG data model for Layer 3 network topologies.</t></abstract>
</front>
<seriesInfo name='RFC' value='8346'/>
<seriesInfo name='DOI' value='10.17487/RFC8346'/>
</reference>



<reference anchor='RFC8944' target='https://www.rfc-editor.org/info/rfc8944'>
<front>
<title>A YANG Data Model for Layer 2 Network Topologies</title>
<author fullname='J. Dong' initials='J.' surname='Dong'><organization/></author>
<author fullname='X. Wei' initials='X.' surname='Wei'><organization/></author>
<author fullname='Q. Wu' initials='Q.' surname='Wu'><organization/></author>
<author fullname='M. Boucadair' initials='M.' surname='Boucadair'><organization/></author>
<author fullname='A. Liu' initials='A.' surname='Liu'><organization/></author>
<date month='November' year='2020'/>
<abstract><t>This document defines a YANG data model for Layer 2 network topologies. In particular, this data model augments the generic network and network topology data models with topology attributes that are specific to Layer 2.</t></abstract>
</front>
<seriesInfo name='RFC' value='8944'/>
<seriesInfo name='DOI' value='10.17487/RFC8944'/>
</reference>



<reference anchor='RFC8342' target='https://www.rfc-editor.org/info/rfc8342'>
<front>
<title>Network Management Datastore Architecture (NMDA)</title>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<author fullname='J. Schoenwaelder' initials='J.' surname='Schoenwaelder'><organization/></author>
<author fullname='P. Shafer' initials='P.' surname='Shafer'><organization/></author>
<author fullname='K. Watsen' initials='K.' surname='Watsen'><organization/></author>
<author fullname='R. Wilton' initials='R.' surname='Wilton'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model.  This document updates RFC 7950.</t></abstract>
</front>
<seriesInfo name='RFC' value='8342'/>
<seriesInfo name='DOI' value='10.17487/RFC8342'/>
</reference>



<reference anchor='RFC7950' target='https://www.rfc-editor.org/info/rfc7950'>
<front>
<title>The YANG 1.1 Data Modeling Language</title>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<date month='August' year='2016'/>
<abstract><t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols.  This document describes the syntax and semantics of version 1.1 of the YANG language.  YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification.  There are a small number of backward incompatibilities from YANG version 1.  This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t></abstract>
</front>
<seriesInfo name='RFC' value='7950'/>
<seriesInfo name='DOI' value='10.17487/RFC7950'/>
</reference>



<reference anchor='RFC8795' target='https://www.rfc-editor.org/info/rfc8795'>
<front>
<title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<author fullname='I. Bryskin' initials='I.' surname='Bryskin'><organization/></author>
<author fullname='V. Beeram' initials='V.' surname='Beeram'><organization/></author>
<author fullname='T. Saad' initials='T.' surname='Saad'><organization/></author>
<author fullname='H. Shah' initials='H.' surname='Shah'><organization/></author>
<author fullname='O. Gonzalez de Dios' initials='O.' surname='Gonzalez de Dios'><organization/></author>
<date month='August' year='2020'/>
<abstract><t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t></abstract>
</front>
<seriesInfo name='RFC' value='8795'/>
<seriesInfo name='DOI' value='10.17487/RFC8795'/>
</reference>



<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<date month='May' year='2017'/>
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>



<reference anchor='RFC8340' target='https://www.rfc-editor.org/info/rfc8340'>
<front>
<title>YANG Tree Diagrams</title>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<author fullname='L. Berger' initials='L.' role='editor' surname='Berger'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>This document captures the current syntax used in YANG module tree diagrams.  The purpose of this document is to provide a single location for this definition.  This syntax may be updated from time to time based on the evolution of the YANG language.</t></abstract>
</front>
<seriesInfo name='BCP' value='215'/>
<seriesInfo name='RFC' value='8340'/>
<seriesInfo name='DOI' value='10.17487/RFC8340'/>
</reference>



<reference anchor='RFC6991' target='https://www.rfc-editor.org/info/rfc6991'>
<front>
<title>Common YANG Data Types</title>
<author fullname='J. Schoenwaelder' initials='J.' role='editor' surname='Schoenwaelder'><organization/></author>
<date month='July' year='2013'/>
<abstract><t>This document introduces a collection of common data types to be used with the YANG data modeling language.  This document obsoletes RFC 6021.</t></abstract>
</front>
<seriesInfo name='RFC' value='6991'/>
<seriesInfo name='DOI' value='10.17487/RFC6991'/>
</reference>



<reference anchor='RFC8343' target='https://www.rfc-editor.org/info/rfc8343'>
<front>
<title>A YANG Data Model for Interface Management</title>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>This document defines a YANG data model for the management of network interfaces.  It is expected that interface-type-specific data models augment the generic interfaces data model defined in this document. The data model includes definitions for configuration and system state (status information and counters for the collection of statistics).</t><t>The YANG data model in this document conforms to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t><t>This document obsoletes RFC 7223.</t></abstract>
</front>
<seriesInfo name='RFC' value='8343'/>
<seriesInfo name='DOI' value='10.17487/RFC8343'/>
</reference>



<reference anchor='RFC6241' target='https://www.rfc-editor.org/info/rfc6241'>
<front>
<title>Network Configuration Protocol (NETCONF)</title>
<author fullname='R. Enns' initials='R.' role='editor' surname='Enns'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<author fullname='J. Schoenwaelder' initials='J.' role='editor' surname='Schoenwaelder'><organization/></author>
<author fullname='A. Bierman' initials='A.' role='editor' surname='Bierman'><organization/></author>
<date month='June' year='2011'/>
<abstract><t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices.  It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages.  The NETCONF protocol operations are realized as remote procedure calls (RPCs).  This document obsoletes RFC 4741.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6241'/>
<seriesInfo name='DOI' value='10.17487/RFC6241'/>
</reference>



<reference anchor='RFC8040' target='https://www.rfc-editor.org/info/rfc8040'>
<front>
<title>RESTCONF Protocol</title>
<author fullname='A. Bierman' initials='A.' surname='Bierman'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<author fullname='K. Watsen' initials='K.' surname='Watsen'><organization/></author>
<date month='January' year='2017'/>
<abstract><t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t></abstract>
</front>
<seriesInfo name='RFC' value='8040'/>
<seriesInfo name='DOI' value='10.17487/RFC8040'/>
</reference>



<reference anchor='RFC6242' target='https://www.rfc-editor.org/info/rfc6242'>
<front>
<title>Using the NETCONF Protocol over Secure Shell (SSH)</title>
<author fullname='M. Wasserman' initials='M.' surname='Wasserman'><organization/></author>
<date month='June' year='2011'/>
<abstract><t>This document describes a method for invoking and running the Network Configuration Protocol (NETCONF) within a Secure Shell (SSH) session as an SSH subsystem.  This document obsoletes RFC 4742.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6242'/>
<seriesInfo name='DOI' value='10.17487/RFC6242'/>
</reference>



<reference anchor='RFC5246' target='https://www.rfc-editor.org/info/rfc5246'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
<author fullname='T. Dierks' initials='T.' surname='Dierks'><organization/></author>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<date month='August' year='2008'/>
<abstract><t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol.  The TLS protocol provides communications security over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5246'/>
<seriesInfo name='DOI' value='10.17487/RFC5246'/>
</reference>



<reference anchor='RFC6536' target='https://www.rfc-editor.org/info/rfc6536'>
<front>
<title>Network Configuration Protocol (NETCONF) Access Control Model</title>
<author fullname='A. Bierman' initials='A.' surname='Bierman'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<date month='March' year='2012'/>
<abstract><t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability.  There is a need for standard mechanisms to restrict NETCONF protocol access for particular users to a pre-configured subset of all available NETCONF protocol operations and content.  This document defines such an access control model.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6536'/>
<seriesInfo name='DOI' value='10.17487/RFC6536'/>
</reference>



<reference anchor='RFC3688' target='https://www.rfc-editor.org/info/rfc3688'>
<front>
<title>The IETF XML Registry</title>
<author fullname='M. Mealling' initials='M.' surname='Mealling'><organization/></author>
<date month='January' year='2004'/>
<abstract><t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t></abstract>
</front>
<seriesInfo name='BCP' value='81'/>
<seriesInfo name='RFC' value='3688'/>
<seriesInfo name='DOI' value='10.17487/RFC3688'/>
</reference>



<reference anchor='RFC6020' target='https://www.rfc-editor.org/info/rfc6020'>
<front>
<title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<date month='October' year='2010'/>
<abstract><t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6020'/>
<seriesInfo name='DOI' value='10.17487/RFC6020'/>
</reference>




    </references>



<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors of this document would like to thank XXX.</t>

<t>This document was prepared using kramdown.</t>

</section>


  </back>

<!-- ##markdown-source:
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
e1Z+PgAA

-->

</rfc>

