<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" ipr="trust200902"
	docName="draft-ietf-manet-dlep-da-credit-extension-19"
	obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.19.4 -->
  <front>
    <title abbrev="DLEP DA Credit Extension">DLEP DiffServ Aware Credit Window Extension</title>
    <seriesInfo name="Internet-Draft"
		value="draft-ietf-manet-dlep-da-credit-extension-19"/>
    <author initials="B." surname="Cheng" fullname="Bow-Nan Cheng">
      <organization>MIT Lincoln Laboratory</organization>
      <address>
        <postal>
          <street>Massachusetts Institute of Technology</street>
          <street>244 Wood Street</street>
          <city>Lexington</city>
          <region>MA</region>
          <code>02421-6426</code>
        </postal>
        <email>bcheng@ll.mit.edu</email>
      </address>
    </author>
    <author initials="D." surname="Wiggins" fullname="David Wiggins">
      <organization/>
      <address>
        <email>david@none.org</email>
      </address>
    </author>
    <author initials="L." surname="Berger" fullname="Lou Berger">
      <organization>LabN Consulting, L.L.C.</organization>
      <address>
        <email>lberger@labn.net</email>
      </address>
    </author>
   <author fullname="Donald E. Eastlake 3rd" initials="D."
           surname="Eastlake" role="editor">
     <organization>Independent</organization>
     <address>
       <postal>
         <street>2386 Panoramic Circle</street>
         <city>Apopka</city>
         <region>Florida</region>
         <code>32703</code>
         <country>USA</country>
       </postal>        
       <phone>+1-508-333-2270</phone>
       <email>d3e3e3@gmail.com</email>
     </address>
   </author>
    <date/>
    <area>Routing</area>
    <workgroup>MANET</workgroup>
    <abstract>
      <t>
  This document defines an extension to the Dynamic Link Exchange Protocol (DLEP) that enables a
  DiffServ aware credit-window scheme for destination-specific and
  shared flow control.
</t>
    </abstract>
  </front>
  <middle>
    <section anchor="sec-1" numbered="true" toc="default">
      <name>Introduction</name>
      <t>
  The Dynamic Link Exchange Protocol (DLEP) is defined in <xref target="RFC8175" format="default"/>.  This protocol provides the exchange of link
  related control information between DLEP peers.  DLEP peers are
  comprised of a modem and a router.  DLEP defines a base set of
  mechanisms as well as support for possible extensions.  This
  document defines one such extension.
</t>
      <t>
  The DLEP specification does not include any flow control
  capability.  There are various flow control techniques theoretically possible
  with DLEP.
  This document defines a DLEP extension which provides a DiffServ-based
  flow control mechanism for traffic sent from a router to a modem. Flow
  control is provided using one or more logical "Credit Windows", each of
  which will typically be supported by an associated virtual or physical
  queue.  A router will use traffic flow classification
  information provided by the modem to identify which traffic is
  associated with each credit window.
  Credit windows may be shared or dedicated on a per flow basis.
  See <xref target="I-D.ietf-manet-dlep-ether-credit-extension" format="default"/> for
  an Ethernet-based version of credit window flow control.
  As specified in Section 2.3.1 of <xref target="I-D.ietf-manet-dlep-traffic-classification"/>,
  when both DiffServ and Ethernet traffic classification are specified
  for a flow, the Ethertype information takes precedence.
</t>
      <t>
  This document uses the traffic classification and credit window
  control mechanisms defined in <xref target="I-D.ietf-manet-dlep-traffic-classification" format="default"/> and <xref target="I-D.ietf-manet-dlep-credit-flow-control" format="default"/> to provide credit
  window based flow control based on DLEP destinations and DiffServ
  <xref target="RFC2475" format="default"/> DSCPs (differentiated services codepoints).
  The defined mechanism allows for credit windows to be shared across
  traffic sent to multiple DLEP destinations and DSCPs, or used
  exclusively for traffic sent to a particular destination and/or DSCP.
  The extension also supports the "wildcard" matching of any DSCP.
</t>
      <t>
  The extension defined in this document is referred to as "DiffServ
  Aware Credit Window" or, more simply, the "DA Credit" extension. The
  reader should be familiar with both the traffic classification and
  credit window control mechanisms defined in <xref target="I-D.ietf-manet-dlep-traffic-classification" format="default"/> and <xref target="I-D.ietf-manet-dlep-credit-flow-control" format="default"/>.
</t>
      <t>
  This document defines a new DLEP Extension Type Value in <xref target="sec-ext-type" format="default"/> which is used to indicate support for the
  extension.
</t>
      <section anchor="sec-1.1" numbered="true" toc="default">
        <name>Key Words</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
   BCP 14 <xref target="RFC2119" format="default"/> <xref target="RFC8174" format="default"/> when, and
   only when, they appear in all capitals, as shown here.
</t>
      </section>
    </section>
    <section anchor="sec-ext-type" numbered="true" toc="default">
      <name>Extension Usage and Identification</name>
      <t>
   The extension defined in this document is composed of the mechanisms
   and processing defined in <xref target="I-D.ietf-manet-dlep-traffic-classification"/>
   and <xref target="I-D.ietf-manet-dlep-credit-flow-control"/>.  To indicate that the
   DiffServ Aware Credit Window Extension is to be used, an
   implementation MUST include the DiffServ Aware Credit Window Type
   Value in the Extensions Supported Data Item (see Section 13.6 of
   <xref target="RFC8175"/>).  The Extensions
   Supported Data Item is sent and processed according to <xref
   target="RFC8175"/>.  Any implementation that indicates use of the
   DiffServ Aware Credit Window Extension MUST support all Messages,
   Data Items, the DiffServ Traffic Classification Sub-Data Item, and all
   related processing defined in <xref target="I-D.ietf-manet-dlep-traffic-classification"/>
   and <xref target="I-D.ietf-manet-dlep-credit-flow-control"/>.
</t>
      <t>
  The DiffServ Aware Credit Window Extension Type Value is TBA1, see
  <xref target="sec-iana"/>.
</t>
    </section>
    <section anchor="sec-mgmnt" numbered="true" toc="default">
      <name>Management Considerations</name>
      <t>
    This section provides several network management guidelines
    to implementations supporting the DiffServ Aware Credit Window
    Extension.
      </t>
      <t>
    If this extension is supported,
    that support MUST be declare using the Extensions Supported Data Item
    (see Section 13.6 of <xref target="RFC8175"/>). DiffServ Aware
    Credit Window Extension Data Items MUST NOT be emitted by a DLEP
    participant unless such support was specified in the initialization
	message received from its peer.
    The use of the extension defined in this document SHOULD be
    configurable on both modems and routers.
      </t>
      <t>
    Modems SHOULD support the configuration of DSCP to credit
    window (queue) mapping.
      </t>
      <t>
    Modems MAY support the configuration of the number of credit
    windows (queues) to advertise to a router.
      </t>
      <t>
    Routers may have limits on the number of queues that they can support
    and limits on supported credit window combinations. Per destination
    queues might not be supported at all.
    When modem-provided credit window information
    exceeds the capabilities of a router, the router SHOULD use a subset of
    the provided credit windows.  Alternatively, a router MAY reset the
    session and indicate that the extension is not supported.
    In either case, the mismatch of
    capabilities SHOULD be reported to the user via normal network
    management mechanisms such as user interface messages or error logging.
      </t>
      <t>
    In all cases, if credit windows are in use, traffic for which credits are not
    available MUST NOT be sent to the modem by the router.
      </t>
    </section>
    <section anchor="sec-sec" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
    This document defines a DLEP extension that uses DLEP
    mechanisms and the credit window control and flow mechanisms defined
    in <xref target="I-D.ietf-manet-dlep-traffic-classification" format="default"/> and
    <xref target="I-D.ietf-manet-dlep-credit-flow-control" format="default"/>.
    The defined extension is exposed to vulnerabilities similar to existing
    DLEP messages and discussed in the Security Considerations section
    of <xref target="RFC8175"/> such as an injected message resizing a credit window
    to a value that results in a denial of service.
    Wildcards for matching PCP and VID fields are provided which may be
    convenient to match a number of packet flows but could inadvertently
    match unexpected flows or new flows that appear after the wildcard
    matching has been set up. It is therefore RECOMMENDED that wildcards
    not be used unless needed.
    The security mechanisms documented in <xref target="RFC8175"
    format="default"/> can be applied equally to the mechanism defined in this document.
      </t>
    </section>
	  
    <section anchor="sec-iana" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>
  IANA is requested to assign one code point in the "Extension Type Values"
  registry in the "Dynamic Link Exchange Protocol (DLEP) Parameters"
  registry group as follows:
      </t>
        <t keepWithNext="true"/>
        <table anchor="table_et" align="center">
          <name>Requested Extension Type Value</name>
          <thead>
            <tr>
              <th align="left">Code</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBA1</td>
              <td align="left">DiffServ Aware Credit Window</td>
            </tr>
          </tbody>
        </table>
        <t keepWithPrevious="true"/>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8175.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-manet-dlep-credit-flow-control.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-manet-dlep-traffic-classification.xml"/>
      </references>
      <references>
        <name>Informative References</name>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2475.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-manet-dlep-ether-credit-extension.xml"/>
      </references>
    </references>
    <section numbered="true" toc="default">
      <name>Acknowledgments</name>
      <t>
     The Sub-Data item format was inspired by Rick Taylor's "Data Item
     Containers".  He also proposed the separation of credit windows from
     traffic classification at IETF98. Many useful comments were
     received from contributors to the MANET working group, notably
     Ronald in't Velt.
      </t>
      <t>
     We had the honor of working too briefly with David Wiggins on this
     and related DLEP work. His contribution to the IETF and publication
     of the first and definitive open source DLEP implementation have
     been critical to the acceptance of DLEP. We mourn his passing on
     November 23, 2023.  We wish to recognize his guidance, leadership
     and professional excellence.  We were fortunate to benefit from his
     leadership and friendship. He shall be missed.
      </t>
    </section>
  </back>
</rfc>
<!-- Local Variables: -->
<!-- fill-column:72 -->
<!-- End: -->
