<?xml version='1.0' ?> encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
  <!ENTITY RFC2119 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"> nbsp    "&#160;">
  <!ENTITY RFC2863 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2863.xml"> zwsp   "&#8203;">
  <!ENTITY RFC5309 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.5309.xml"> nbhy   "&#8209;">
  <!ENTITY RFC7224 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7224.xml">
<!ENTITY RFC8174 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC8343 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8343.xml">
<!ENTITY RFC8561 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8561.xml">
<!ENTITY RFC6991 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.6991.xml"> wj     "&#8288;">
]>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-liu-lsr-p2poverlan-12"
     number="9296" ipr="trust200902" category="info"> category="info" obsoletes="" updates=""  submissionType="independent" xml:lang="en" tocInclude="true" symRefs="true" version="3" sortRefs="true">

  <front>
    <title abbrev='IfStackTable abbrev="IfStackTable for P2poverLAN interface'>Interface Stack Table Definition and Example interface">ifStackTable for the Point-to-Point (P2P) Interface over LAN</title> a LAN Type: Definition and Examples</title>
    <seriesInfo name="RFC" value="9296"/>
    <author initials="D." surname="Liu" fullname="Daiying Liu">
      <organization>Ericsson</organization>
      <address>
        <postal>
          <street>No.5 Lize East street</street> Street</street>
          <code>100102</code>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>harold.liu@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Halpern" fullname="Joel Halpern">
      <organization>Ericsson</organization>
      <address>
        <email>joel.halpern@ericsson.com</email>
      </address>
    </author>
    <author initials="C." surname="Zhang" fullname="Congjie Zhang">
      <organization>Ericsson</organization>
      <address>
        <email>congjie.zhang@ericsson.com</email>
      </address>
    </author>
    <date year="2022" month="May" day="24"/>
		<area>General</area>
		<keyword>RFC</keyword>
		<keyword>Internet-Draft</keyword>
		<keyword>XML</keyword>
		<keyword>Extensible Markup Language</keyword> month="August"/>

    <abstract>
      <t>RFC 5309 defines the Point-to-Point (P2P) circuit type, one of the two circuit types used in the link state link-state routing protocols, and
				 highlights that it is important to identify the correct circuit type when forming adjacencies, flooding
         link state
         link-state database packets, and monitoring the link state.
      </t>
      <t>
         This document provides advice about the ifStack for the P2P interface over a LAN ifType Type
         to facilitate operational control, maintenance maintenance, and statistics.
      </t>
    </abstract>
  </front>
  <middle>
    <section title="Introduction"> numbered="true" toc="default">
      <name>Introduction</name>
      <t><xref target="RFC5309"/> target="RFC5309" format="default"/> defines the P2P Point-to-Point (P2P) circuit type and highlights that it is important to identify the correct circuit type when forming adjacencies, flooding link state link-state database packets, and monitoring the link state.
      </t>
      <t>
      	 To simplify configuration and operational control, it is helpful
      	 to represent the fact that an interface is to be considered
      	 a P2P interface over a LAN type explicitly in the interface stack. This
      	 enables, for example, routing protocols to automatically inherit
      	 the correct operating mode from the interface stack without further configuration (No (i.e., there is no need to explicitly configure the P2P interface in routing protocols).
      </t>
      <t>It is helpful to map the P2P interface over a LAN type in the interface management stack table. If no entry specifies the P2P interface lower layer, layer of the P2P interface, then management tools lose the ability to
      	 retrieve and measure properties specific to lower layers.
      </t>
      <t>The

<t>In standard network management protocols that make use of
  ifStackTables, the P2P interface over a LAN type is intended to be used
  solely as a means to signal in standard network management protocols
      	 that make use of ifStackTables that the upper layer upper-layer interface of link-data layer is a P2P interface, and thus interface. Thus, the upper and lower layers of P2P over a LAN type
      	 will be are
  expected to apply appropriate semantics: semantics.  In general, the higher layer of a P2P over a LAN type higher layer SHOULD always <bcp14>SHOULD</bcp14> be "ipForward" (Value 142, (value 142 in
   <xref target="Assignment"/>), target="Assignment" format="default"/>), and the lower layer of P2P over a LAN type lower layer SHOULD <bcp14>SHOULD</bcp14> be any appropriate link data link-data layer of "ipForward".
      </t>
      <t>The assignment of 303, 303 as the value for the p2pOverLan ifType was made by Expert Review (see <xref target="Assignment"/>.
      	 So the target="Assignment" format="default"/> and <xref target="RFC8126" format="default"/>).
The purpose of this document is to request IANA to add this document serve as a reference to for ifType 303, as well as
      	 suggest 303 by suggesting how to use the ifStackTable for the P2P interface over a LAN type, type is to be used and provide providing examples.
      </t>
      <t>It should be noted that this document reflects the operating model used on some routers. Other routers that use different models may not represent a P2P as a separate interface.
      </t>
    </section>
    <section title="Requirements Language">
      <t>The numbered="true" toc="default">
      <name>Requirements Language</name>
        <t>
    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
         "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
    NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "OPTIONAL" "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP&nbsp;14 <xref target="RFC2119"/> <xref target="RFC8174"/>. target="RFC8174"/>
    when, and only when, they appear in all capitals, as shown here.
        </t>
    </section>
    <section anchor="sec3" title="Interface numbered="true" toc="default">
      <name>Interface Stack Table for P2P Interface Type"> Type</name>
      <section anchor="sec3_1" title="P2P Interface numbered="true" toc="default">
        <name>P2P Interface: higher-layer-if and lower-layer-if"> lower-layer-if</name>

	<t>If a device implements the IF-MIB <xref target="RFC2863"/>, target="RFC2863" format="default"/>, then each entry in the "/interfaces/interface" list (in "Interface Management YANG") (see "A YANG Data Model for Interface Management" <xref target="RFC8343" format="default"/>) in the operational state is typically
mapped to one ifEntry as required in <xref target="RFC8343"/>. Therefore target="RFC8343" format="default"/>. Therefore, the P2P interface over a LAN type should also be fully mapped to one ifEntry by defining the "ifStackTable" ("higher-layer-if" and "lower-layer-if", defined in <xref target="RFC8343"/>). target="RFC8343" format="default"/>).
        </t>
        <t>In ifStackTable the ifStackTable, the higher layer of the P2P interface over a LAN type higher layer SHALL <bcp14>SHALL</bcp14> be network layer "ipForward" to enable IP routing, and the lower layer of the P2P interface over a LAN type lower layer SHOULD <bcp14>SHOULD</bcp14> be any link data link-data layer that can be bound to "ipForward" "ipForward", including "ethernetCsmacd", "ieee8023adLag", "l2vlan", and so on (defined in IANA). the iana-if-type YANG module <xref target="IANA-ifTYPE" format="default"/>).
        </t>
        <t>The P2P interface over the LAN type ifStackTable can be defined along the lines of the following example
      		(In example, which complies with <xref target="RFC8343" format="default"/> and <xref target="RFC6991" format="default"/>.
      		In the example, "lower-layer-if" takes "ethernetCsmacd" but "ethernetCsmacd", but, in fact, "lower-layer-if" can be any other available link data link-data layer. See <xref target="sec7"/> target="sec7" format="default"/> for more examples)
      		which complies with <xref target="RFC8343"/> <xref target="RFC6991"/>: examples.
        </t>
        <figure align="center" anchor="xml_happy_1">
          <artwork align="center"><![CDATA[
            <CODE BEGINS>
          <sourcecode name="" type="" markers="true"><![CDATA[

            <interface>
              <name>isis_int</name>
              <type>ianaift:ipForward</type>
            </interface>

            <interface>
              <name>eth1</name>
              <type>ianaift:ethernetCsmacd</type>
            </interface>

            <interface>
              <name>p2p</name>
              <type>ianaift:p2pOverLan</type>
              <higher-layer-if>isis_int</higher-layer-if>
              <lower-layer-if>eth1</lower-layer-if>
              <enabled>false</enabled>
              <admin-status>down</admin-status>
              <oper-status>down</oper-status>
              <statistics>
                <discontinuity-time>
                  2021-04-01T03:00:00+00:00
                </discontinuity-time>
                <!-- counters now shown here -->
              </statistics>
            </interface>

            <CODE ENDS>
              ]]></artwork>

            ]]></sourcecode>
        </figure>
      </section>
      <section anchor="sec3_2" title="P2P numbered="true" toc="default">
        <name>P2P Interface Statistics"> Statistics</name>
        <t>Because multiple IP interfaces can be bound to one physical port,
      		 the statistics on the physical port SHOULD <bcp14>SHOULD</bcp14> be a complete set which that includes statistics of all upper layer upper-layer interfaces.
      		 Therefore, each p2p P2P interface collects and displays traffic that has been sent to it via
      		 higher layers or received from it via lower layers.
        </t>
      </section>

      <section anchor="sec3_3" title="P2P numbered="true" toc="default">
        <name>P2P Interface Administrative State"> State</name>
        <t>The P2P interface can be shutdown shut down independently of the underlying interface.
        </t>
        <t>If the P2P interface is administratively up,
      		 then the "oper-status", defined "oper-status" (defined in <xref target="RFC8343"/>, target="RFC8343" format="default"/>) of that interface SHALL <bcp14>SHALL</bcp14> fully reflect the state of the underlying interface;
      		 if the P2P interface is administratively down,
      		 then the "oper-status" of that interface SHALL <bcp14>SHALL</bcp14> be down. Examples can be found in <xref target="sec7"/>. target="sec7" format="default"/>.
        </t>
      </section>
    </section>
    <section title="Security Considerations"> numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>The writeable writable attribute "admin-status" of the p2povervlan ifType is inherited from <xref target="RFC8343"/>. target="RFC8343" format="default"/>.
      	 Other objects associated with the p2povervlan ifType are read-only.
      	 With this in mind, the considerations discussed Section 7 of [RFC8343] in <xref target="RFC8343" sectionFormat="of" section="7"/> otherwise apply to the p2povervlan ifType.
      </t>
    </section>
    <section title="IANA Considerations"> numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>In the Interface "Interface Types (ifType)" registry, IANA has assigned a value of 303
    		 for is assigned
      to p2pOverLan <xref target="Assignment"/> with a reference of <xref target="RFC5309"/>.
    		 IANA target="Assignment" format="default"/>. As this document explains how the p2pOverLan (303) ifType is requested to amend be used, IANA has amended the reference for that code point p2pOverLan (303) to be point to this document (instead of <xref target="RFC5309" format="default"/>) and to make
made a similar amendment in the YANG iana-if-type module <xref target="IANA-ifTYPE" format="default"/> (originally specified in <xref target="RFC7224"/>) which currently points to <xref target="RFC8561"/>,
    		 as this document explains how the ifType is to be used. target="RFC7224" format="default"/>).
      </t>
    </section>
    <section anchor="sec8" title="Acknowledgements">
      <t>The authors would like to thank Rob Wilton for his reviews and valuable comments and suggestions.</t>
    </section>
  </middle>
  <back>
		<references title="Normative references">
      &RFC2119;
      &RFC2863;
      &RFC5309;
      &RFC7224;
      &RFC8174;
      &RFC8343;
      &RFC8561;
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2863.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5309.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7224.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8343.xml"/>
       <!-- <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8561.xml"/>-->
      </references>

		<references title="Informative References">
      <references>
        <name>Informative References</name>

        <reference anchor="Assignment" target="https://www.iana.org/assignments/smi-numbers/smi-numbers.xhtml#smi-numbers-5"> target="https://www.iana.org/assignments/smi-numbers">
          <front>
            <title>Interface Types (ifType)</title><author/><date/></front> (ifType)</title>
            <author><organization>IANA</organization></author>
          </front>
        </reference>

        <reference anchor="IANA-ifTYPE" target=" https://www.iana.org/assignments/yang-parameters">
          <front>
            <title>YANG Module Names</title>
            <author><organization>IANA</organization></author>
          </front>
        </reference>
      &RFC6991;

        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6991.xml"/>
	<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml"/>
      </references>
    </references>
    <section anchor="sec7" title="Examples">
    	<t>In numbered="true" toc="default">
      <name>Examples</name>

      <t>If the case of underlying interface is a VLAN sub-interface, the ifStackTable should be defined as:
      </t>
      <figure align="center" anchor="xml_happy_2">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
            <name>isis_int</name>
            <type>ianaift:ipForward</type>
          </interface>

          <interface>
            <name>eth1_valn1</name>
            <type>ianaift:l2vlan</type>
          </interface>

          <interface>
            <name>p2p</name>
            <type>ianaift:p2pOverLan</type>
            <higher-layer-if>isis_int</higher-layer-if>
            <lower-layer-if>eth1_valn1</lower-layer-if>
            <enabled>false</enabled>
            <admin-status>down</admin-status>
            <oper-status>down</oper-status>
            <statistics>
              <discontinuity-time>
                2021-04-01T03:00:00+00:00
              </discontinuity-time>
              <!-- counters now shown here -->
            </statistics>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>

    	<t>In
      <t>If the case of underlying interface is LAG, Link Aggregation Group (LAG), the ifStackTable should be defined as:
      </t>
      <figure align="center" anchor="xml_happy_3">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
            <name>isis_int</name>
            <type>ianaift:ipForward</type>
          </interface>

          <interface>
            <name>eth1_lag1</name>
            <type>ianaift:ieee8023adLag</type>
          </interface>

          <interface>
            <name>p2p</name>
            <type>ianaift:p2pOverLan</type>
            <higher-layer-if>isis_int</higher-layer-if>
            <lower-layer-if>eth1_lag1</lower-layer-if>
            <enabled>false</enabled>
            <admin-status>down</admin-status>
            <oper-status>down</oper-status>
            <statistics>
              <discontinuity-time>
                2021-04-01T03:00:00+00:00
              </discontinuity-time>
              <!-- counters now shown here -->
            </statistics>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>

    	<t>In
      <t>If the case of P2P interface and underlying interface are both administratively up, up and the underlying interface operational status is up:
      </t>
      <figure align="center" anchor="xml_happy_4">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
             <name>p2p</name>
             <type>ianaift:p2pOverLan</type>
             <higher-layer-if>isis_int</higher-layer-if>
             <lower-layer-if>eth1</lower-layer-if>
             <admin-status>up</admin-status>
             <oper-status>up</oper-status>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>

    	<t>In
      <t>If the case of P2P interface and underlying interface are administratively up, up but the underlying interface operational status is down:
      </t>
      <figure align="center" anchor="xml_happy_5">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
             <name>p2p</name>
             <type>ianaift:p2pOverLan</type>
             <higher-layer-if>isis_int</higher-layer-if>
             <lower-layer-if>eth1</lower-layer-if>
             <admin-status>up</admin-status>
             <oper-status>down</oper-status>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>

    	<t>In
      <t>If the case of P2P interface is administratively down:
      </t>
      <figure align="center" anchor="xml_happy_6">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
             <name>p2p</name>
             <type>ianaift:p2pOverLan</type>
             <higher-layer-if>isis_int</higher-layer-if>
             <lower-layer-if>eth1</lower-layer-if>
             <admin-status>down</admin-status>
             <oper-status>down</oper-status>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>

    	<t>In
      <t>If the case of P2P interface is administratively up but the underlying interface is administratively down:
      </t>
      <figure align="center" anchor="xml_happy_7">
        <artwork align="center"><![CDATA[
          <CODE BEGINS>
        <sourcecode name="" type="" markers="true"><![CDATA[

          <interface>
             <name>p2p</name>
             <type>ianaift:p2pOverLan</type>
             <higher-layer-if>isis_int</higher-layer-if>
             <lower-layer-if>eth1</lower-layer-if>
             <admin-status>up</admin-status>
             <oper-status>down</oper-status>
          </interface>

          <CODE ENDS>
            ]]></artwork>

          ]]></sourcecode>
      </figure>
</section>

    <section anchor="sec8" numbered="false" toc="default">
      <name>Acknowledgements</name>
      <t>The authors would like to thank <contact fullname="Rob Wilton"/> for his reviews and valuable comments and suggestions.</t>
    </section>
  </back>
</rfc>