<?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" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.21 (Ruby 2.6.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-radext-reverse-coa-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="Reverse CoA">Reverse CoA in RADIUS/TLS</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-radext-reverse-coa-03"/>
    <author initials="A." surname="DeKok" fullname="Alan DeKok">
      <organization>InkBridge</organization>
      <address>
        <email>alan.dekok@inkbridge.io</email>
      </address>
    </author>
    <author initials="V." surname="Cargatser" fullname="Vadim Cargatser">
      <organization>Cisco</organization>
      <address>
        <email>vcargats@cisco.com</email>
      </address>
    </author>
    <date year="2025" month="May" day="12"/>
    <area>Internet</area>
    <workgroup>RADEXT Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 48?>

<t>This document defines a "reverse change of authorization (CoA)" path for RADIUS packets.  This specification allows a home server to send CoA packets in "reverse" down a RADIUS/TLS connection.  Without this capability, it is impossible for a home server to send CoA packets to a NAS which is behind a firewall or NAT gateway.  The reverse CoA functionality extends the available transport methods for CoA packets, but it does not change anything else about how CoA packets are handled.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-radext-reverse-coa/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        RADEXT Working Group mailing list (<eref target="mailto:radext@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/radext/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/radext/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/freeradius/reverse-coa.git"/>.</t>
    </note>
  </front>
  <middle>
    <?line 52?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref target="RFC5176"/> defines the ability to change a users authorization, or disconnect the user via what are generally called "Change of Authorization" or "CoA" packets.  This term refers to either of the RADIUS packet types CoA-Request or Disconnect-Request.  The initial transport protocol for all RADIUS was the User Datagram Protocol (UDP).</t>
      <t><xref target="RFC6614"/> updated previous specifications to allow packets to be sent over the Transport Layer Security (TLS) protocol.  Section 2.5 of that document explicitly allows all packets (including CoA) to be sent over a TLS connection:</t>
      <t><tt>
Due to the use of one single TCP port for all packet types, it is
required that a RADIUS/TLS server signal which types of packets are
supported on a server to a connecting peer.  See also Section 3.4 for
a discussion of signaling.
</tt></t>
      <t>These specifications assume that a RADIUS client can directly contact a RADIUS server, which is the normal "forward" path for packets between a client and server.  However, it is not always possible for the RADIUS server to send CoA packets to the RADIUS client. If a RADIUS server wishes to act as a CoA client, and send CoA packets to the NAS (CoA server), the "reverse" path can be blocked by a firewall, NAT gateway, etc.  That is, a RADIUS server has to be reachable by a NAS, but there is usually no requirement that the NAS is reachable from a public system.  To the contrary, there is usually a requirement that the NAS is not publicly accessible.</t>
      <t>This scenario is most evident in a roaming / federated environment such as Eduroam or OpenRoaming.  It is in general impossible for a home server to signal the NAS to disconnect a user.  There is no direct reverse path from the home server to the NAS, as the NAS is not publicly addressible.  Even if there was a public reverse path, it would generally be unknowable, as intermediate proxies can (and do) attribute rewriting to hide NAS identies.</t>
      <t>These limitations can result in business losses and security problems, such as the inability to disconnect an online user when their account has been terminated.</t>
      <t>As the reverse path is usally blocked, it means that it is in general possible only to send CoA packets to a NAS when the NAS and RADIUS server share the same private network (private IP space or IPSec).  Even though <xref target="RFC8559"/> defines CoA proxying, that specification does not address the issue of NAS reachability.</t>
      <t>This specification solves that problem.  The solution is to simply allow CoA packets to go in "reverse" down an existing RADIUS/TLS connection.  That is, when a NAS connects to a RADIUS server it normally sends request packets (Access-Request, etc.) and expects to receive response packets (Access-Accept, etc.).  This specification extends RADIUS/TLS by permitting a RADIUS server to re-use an existing TLS connection to send CoA packets to the NAS, and permitting the NAS to send CoA response packets to the RADIUS server over that same connection.</t>
      <t>We note that while this document specifically mentions RADIUS/TLS, it should be possible to use the same mechanisms on RADIUS/DTLS <xref target="RFC7360"/>.  However at the time of writing this specification, no implementations exist for "reverse CoA" over RADIUS/DTLS.  As such, when we refer to "TLS" here, or "RADIUS/TLS", we implicitly include RADIUS/DTLS in that description.</t>
      <t>We also note that while this same mechanism could theoretically be used for RADIUS/UDP and RADIUS/TCP, there is no value in defining "reverse CoA" for those transports.  Therefore for practial purposes, "reverse CoA" means RADIUS/TLS and RADIUS/DTLS.</t>
      <t>There are additional considerations for proxies.  While <xref target="RFC8559"/> describes CoA proxying, there are still issues which need to be addressed for the "reverse CoA" use-case.  This specification describes how those systems can implement "reverse CoA" proxying, including processing packets through both an intermediate proxy network, and at the visited network.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</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"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
<?line -6?>
      </t>
      <ul spacing="normal">
        <li>
          <t>CoA</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Change of Authorization packets.  For brevity, when this document refers to "CoA" packets, it means either or both of CoA-Request and Disconnect-Request packets.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>ACK</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Change of Authorization "positive acknowlegement" packets.  For brevity, when this document refers to "ACK" packets, it means either or both of CoA-ACK and Disconnect-ACK packets.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>NAK</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Change of Authorization "negative acknowlegement" packets.  For brevity, when this document refers to "NAK" packets, it means either or both of CoA-NAK and Disconnect-NAK packets.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>RADIUS/TLS</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the Transport Layer Security protocol <xref target="RFC6614"/></t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>RADIUS/DTLS</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the Datagram Transport Layer Security protocol  <xref target="RFC7360"/></t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>TLS</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Either RADIUS/TLS or RADIUS/DTLS.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>reverse CoA</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>CoA, ACK, or NAK packets sent over a RADIUS/TLS or RADIUS/DTLS connection which was made from a RADIUS client to a RADIUS server.</t>
        </li>
      </ul>
    </section>
    <section anchor="concepts">
      <name>Concepts</name>
      <t>The reverse CoA functionality is based on two additions to RADIUS.  The first addition is a configuration and signalling, to indicate that a RADIUS client is capable of accepting reverse CoA packets.  The second addition is an extension to the "reverse" routing table for CoA packets which was first described in Section 2.1 of <xref target="RFC8559"/>.</t>
    </section>
    <section anchor="capability-configuration-and-signalling">
      <name>Capability Configuration and Signalling</name>
      <t>In order for a RADIUS server to send reverse CoA packets to a client, it must first know that the client is capable of accepting these packets.</t>
      <t>Clients and servers implementing reverse CoA MUST have a configuration flag which indicates that the other party supports the reverse CoA functionality.  That is, the client has a per-server flag enabling (or not) reverse CoA functionality.  The server has a similar per-client flag.</t>
      <t>The flag can be used where the parties are known to each other.  The flag can also be used in conjunction with dynamic discovery (<xref target="RFC7585"/>), so long as the server associates the flag with the client identity and not with any particular IP address.  That is, the flag can be associated with any method of identifying a particular client such as TLS-PSK identity, information in a client certificate, etc.</t>
      <t>For the client, the flag controls whether or not it will accept reverse CoA packets from the server, and whether the client will do dynamic signalling of the reverse CoA functionality.</t>
      <t>The configuration flag allows administators to statically enable this functionality, based on out-of-band discussions with other administators.  This process is best used in an environment where all RADIUS proxies are known (or required) to have a particular set of functionality, as with a roaming consortium.</t>
      <t>This specification does not define a way for clients and servers to negotiate this functionality on a per-connection basis.  The RADIUS protocol has little, if any, provisions for capability negotiations, and this specification is not the place to add that functionality.</t>
      <t>Without notification, however, it is possible for clients and servers to have mismatched configurations.  Where a client is configured to accept reverse CoA packets and the next hop server is not configured to send them, no packets will be sent.  Where a client is configured to not accept reverse CoA packets and the next hop server is configured to send them, the client will silently discard these packets as per <xref section="3" sectionFormat="comma" target="RFC2865"/>.  In both of those situations, reverse CoA packets will not flow, but there will be no other issues with this misconfiguration.</t>
    </section>
    <section anchor="reverse-routing">
      <name>Reverse Routing</name>
      <t>In normal RADIUS proxying. the forward routing table uses the User-Name attribute (via the Network Access Identifiers (NAIs) <xref target="RFC7542"/>) to map realms to next hop servers.  For reverse CoA, <xref section="2.1" sectionFormat="comma" target="RFC8559"/> uses the Operator-Name attribute to map operator identifiers to next hop servers.</t>
      <t>This specification extends the <xref section="2.1" sectionFormat="comma" target="RFC8559"/> reverse routing table to allow the next hop to be found via an open TLS connection, rather than a destination hostname or IP address.  A server which needs to send reverse CoA packets to clients maintains a list of open TLS connections from clients.  It also associates both a reverse CoA capability, and one or more operator identifiers with each connection.</t>
      <t>A server MUST support associating one operator identifier with multiple connections.  A server MUST support associating multiple operator identifiers with one connection.  That is, the "operator identifier to connection" mapping is not one-to-one, or 1:N, or M:1, it is N:M or many-to-many.</t>
      <t>This process occurs for all RADIUS proxies, except for the final one which sends the CoA packet to the client.  That proxy forwards the reverse CoA packet to the client based on the Operator-NAS-Identifier attribute (<xref section="3.4" sectionFormat="comma" target="RFC8559"/>) and/or other NAS identification attributes such as NAS-Identifier, NAS-IP-Address, or NAS-IPv6-Address.  The result is that there is a complete forwarding path from the home network back to the visited network.</t>
      <section anchor="errors-and-fail-over">
        <name>Errors and Fail Over</name>
        <t>When the server receives a reverse CoA packet, but cannot forward it, the server MUST return a NAK packet that contains an Error-Cause Attribute having value 502 ("Request Not Routable").</t>
        <t>As with normal proxying, a particular packet can sometimes have the choice more than one connection which can be used to reach a destination.  In that case, issues of load-balancing, fail-over, etc. are implementation-defined, and are not discussed here.  The server simply chooses one connection, and sends the reverse CoA packet down that connection.</t>
        <t>A server can also use RADIUS/UDP to send the reverse CoA packet; there is no requirement that all CoA packets use a "reversed" TLS connection.</t>
        <t>After sending a packet, the server then waits for a reply, doing retransmission if necessary.  For all issues other than the connection being used, reverse CoA packets are handled as defined in <xref target="RFC5176"/> and in <xref target="RFC8559"/>.  This specification permits reverse CoA packets to be sent on what would otherwise be a client to server TLS connection.  It does not change the basic functionality of proxying CoA packets.</t>
      </section>
      <section anchor="retransmissions">
        <name>Retransmissions</name>
        <t>Retransmissions of reverse CoA packets are handled identically to normal CoA packets.  That is, the reverse CoA functionality extends the available transport methods for CoA packets, it does not change anything else about how CoA packets are handled.</t>
      </section>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>FreeRADIUS supports CoA proxying using Vendor-Specific attributes.</t>
      <t>Cisco supports reverse CoA as of Cisco IOS XE Bengaluru 17.6.1 via Vendor-Specific attributes.  https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9300/software/release/17-6/configuration_guide/sec/b_176_sec_9300_cg/configuring_radsec.pdf</t>
      <t>Aruba documentation states that "Instant supports dynamic CoA (RFC 3576) over RadSec and the RADIUS server uses an existing TLS connection opened by the Instant AP to send the request." https://www.arubanetworks.com/techdocs/Instant_83_WebHelp/Content/Instant_UG/Authentication/ConfiguringRadSec.htm</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>This document does not change or add any privacy considerations over previous RADIUS specifications.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document increases network security by removing the requirement for non-standard "reverse" paths for CoA-Request and Disconnect-Request packets.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests no action from IANA.</t>
      <t>RFC Editor: This section may be removed before publication.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Heikki Vatiainen for testing a preliminary implementation in Radiator, and for verifying interoperability with NAS equipment.</t>
    </section>
    <section anchor="changelog">
      <name>Changelog</name>
      <ul spacing="normal">
        <li>
          <t>00 - taken from draft-dekok-radext-reverse-coa-01</t>
        </li>
        <li>
          <t>01 - Bumped to avoid expiry</t>
        </li>
      </ul>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="BCP14">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <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="RFC2865">
          <front>
            <title>Remote Authentication Dial In User Service (RADIUS)</title>
            <author fullname="C. Rigney" initials="C." surname="Rigney"/>
            <author fullname="S. Willens" initials="S." surname="Willens"/>
            <author fullname="A. Rubens" initials="A." surname="Rubens"/>
            <author fullname="W. Simpson" initials="W." surname="Simpson"/>
            <date month="June" year="2000"/>
            <abstract>
              <t>This document describes a protocol for carrying authentication, authorization, and configuration information between a Network Access Server which desires to authenticate its links and a shared Authentication Server. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2865"/>
          <seriesInfo name="DOI" value="10.17487/RFC2865"/>
        </reference>
        <reference anchor="RFC3539">
          <front>
            <title>Authentication, Authorization and Accounting (AAA) Transport Profile</title>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="J. Wood" initials="J." surname="Wood"/>
            <date month="June" year="2003"/>
            <abstract>
              <t>This document discusses transport issues that arise within protocols for Authentication, Authorization and Accounting (AAA). It also provides recommendations on the use of transport by AAA protocols. This includes usage of standards-track RFCs as well as experimental proposals. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3539"/>
          <seriesInfo name="DOI" value="10.17487/RFC3539"/>
        </reference>
        <reference anchor="RFC7585">
          <front>
            <title>Dynamic Peer Discovery for RADIUS/TLS and RADIUS/DTLS Based on the Network Access Identifier (NAI)</title>
            <author fullname="S. Winter" initials="S." surname="Winter"/>
            <author fullname="M. McCauley" initials="M." surname="McCauley"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This document specifies a means to find authoritative RADIUS servers for a given realm. It is used in conjunction with either RADIUS over Transport Layer Security (RADIUS/TLS) or RADIUS over Datagram Transport Layer Security (RADIUS/DTLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7585"/>
          <seriesInfo name="DOI" value="10.17487/RFC7585"/>
        </reference>
        <reference anchor="RFC8559">
          <front>
            <title>Dynamic Authorization Proxying in the Remote Authentication Dial-In User Service (RADIUS) Protocol</title>
            <author fullname="A. DeKok" initials="A." surname="DeKok"/>
            <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>RFC 5176 defines Change-of-Authorization (CoA) and Disconnect Message (DM) behavior for RADIUS. RFC 5176 also suggests that proxying these messages is possible, but it does not provide guidance as to how that is done. This specification updates RFC 5176 to correct that omission for scenarios where networks use realm-based proxying as defined in RFC 7542. This specification also updates RFC 5580 to allow the Operator-Name attribute in CoA-Request and Disconnect-Request packets.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8559"/>
          <seriesInfo name="DOI" value="10.17487/RFC8559"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <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">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC5176">
          <front>
            <title>Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)</title>
            <author fullname="M. Chiba" initials="M." surname="Chiba"/>
            <author fullname="G. Dommety" initials="G." surname="Dommety"/>
            <author fullname="M. Eklund" initials="M." surname="Eklund"/>
            <author fullname="D. Mitton" initials="D." surname="Mitton"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>This document describes a currently deployed extension to the Remote Authentication Dial In User Service (RADIUS) protocol, allowing dynamic changes to a user session, as implemented by network access server products. This includes support for disconnecting users and changing authorizations applicable to a user session. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5176"/>
          <seriesInfo name="DOI" value="10.17487/RFC5176"/>
        </reference>
        <reference anchor="RFC6614">
          <front>
            <title>Transport Layer Security (TLS) Encryption for RADIUS</title>
            <author fullname="S. Winter" initials="S." surname="Winter"/>
            <author fullname="M. McCauley" initials="M." surname="McCauley"/>
            <author fullname="S. Venaas" initials="S." surname="Venaas"/>
            <author fullname="K. Wierenga" initials="K." surname="Wierenga"/>
            <date month="May" year="2012"/>
            <abstract>
              <t>This document specifies a transport profile for RADIUS using Transport Layer Security (TLS) over TCP as the transport protocol. This enables dynamic trust relationships between RADIUS servers. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6614"/>
          <seriesInfo name="DOI" value="10.17487/RFC6614"/>
        </reference>
        <reference anchor="RFC7360">
          <front>
            <title>Datagram Transport Layer Security (DTLS) as a Transport Layer for RADIUS</title>
            <author fullname="A. DeKok" initials="A." surname="DeKok"/>
            <date month="September" year="2014"/>
            <abstract>
              <t>The RADIUS protocol defined in RFC 2865 has limited support for authentication and encryption of RADIUS packets. The protocol transports data in the clear, although some parts of the packets can have obfuscated content. Packets may be replayed verbatim by an attacker, and client-server authentication is based on fixed shared secrets. This document specifies how the Datagram Transport Layer Security (DTLS) protocol may be used as a fix for these problems. It also describes how implementations of this proposal can coexist with current RADIUS systems.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7360"/>
          <seriesInfo name="DOI" value="10.17487/RFC7360"/>
        </reference>
        <reference anchor="RFC7542">
          <front>
            <title>The Network Access Identifier</title>
            <author fullname="A. DeKok" initials="A." surname="DeKok"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>In order to provide inter-domain authentication services, it is necessary to have a standardized method that domains can use to identify each other's users. This document defines the syntax for the Network Access Identifier (NAI), the user identifier submitted by the client prior to accessing resources. This document is a revised version of RFC 4282. It addresses issues with international character sets and makes a number of other corrections to RFC 4282.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7542"/>
          <seriesInfo name="DOI" value="10.17487/RFC7542"/>
        </reference>
      </references>
    </references>
    <?line 197?>



  </back>
  <!-- ##markdown-source:
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
ZrX2Y6H70vLNIltt5WY7odkk+T/zMasXqDMAAA==

-->

</rfc>
