<?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.11 (Ruby 3.2.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ls-idr-bgp-ls-service-metadata-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="Service Metadata in BGP-LS">Distribution of Service Metadata in BGP-LS</title>
    <seriesInfo name="Internet-Draft" value="draft-ls-idr-bgp-ls-service-metadata-03"/>
    <author initials="C." surname="Li" fullname="Cheng Li" role="editor">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author initials="H." surname="Shi" fullname="Hang Shi" role="editor">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>shihang9@huawei.com</email>
      </address>
    </author>
    <author initials="T." surname="He" fullname="Tao He">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>het21@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="R." surname="Pang" fullname="Ran Pang">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>pangran@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="G." surname="Qian" fullname="Guofeng Qian">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>qianguofeng@huawei.com</email>
      </address>
    </author>
    <date year="2024" month="May" day="06"/>
    <area>Routing</area>
    <workgroup>Inter-Domain Routing</workgroup>
    <keyword>Internet Draft</keyword>
    <abstract>
      <?line 74?>

<t>In edge computing, a service may be deployed on multiple instances within one or more sites, called edge service. The edge service is associated with an ANYCAST address in the IP layer, and the route of it with potential service metadata will be distributed to the network. The Edge Service Metadata can be used by ingress routers to make path selections not only based on the routing cost but also the running environment of the edge services.</t>
      <t>The service route with metadata can be collected by a PCE(Path Compute Element) or an analyzer for calculating the best path to the best site/instance. This draft describes a mechanism to collect information of the service routes and related service metadata in BGP-LS.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://VMatrix1900.github.io/draft-service-metadata-in-BGP-LS/draft-ls-idr-bgp-ls-service-metadata.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ls-idr-bgp-ls-service-metadata/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Inter-Domain Routing Working Group mailing list (<eref target="mailto:idr@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/idr/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/idr/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/VMatrix1900/draft-service-metadata-in-BGP-LS"/>.</t>
    </note>
  </front>
  <middle>
    <?line 80?>

<section anchor="intro">
      <name>Introduction</name>
      <t>Many services deploy their service instances in multiple sites to get better response time and resource utilization. These sites are often geographically distributed to serve the user demand. For some services such as VR/AR and intelligent transportation, the QoE will depend on both the network metrics and the compute metrics. For example, if the nearest site is overloaded due to the demand fluctuation, then steering the user traffic to another light-loaded site may improve the QoE.</t>
      <t><xref target="I-D.ietf-idr-5g-edge-service-metadata"/> describes the BGP extension of distributing service route with network and computing-related metrics. The router connected to the site will receive the service routes and service metadata sent from devices inside the edge site, and then generate the corresponding routes and distribute them to ingress routers. However, the route with service metadata on the router connected to the site can be also collected by a central Controller for calculating the best path to the best site.</t>
      <t>This document defines an extension of BGP-LS to carry the service metadata along with the service route. Using the service metadata and the service route, the controller can calculate the best site for the traffic, giving each user the best QoE.</t>
      <section anchor="terminology">
        <name>Terminology</name>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<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 "<bcp14>OPTIONAL</bcp14>" 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.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="bgp-ls-extension-for-service-in-a-site">
      <name>BGP-LS Extension for Service in a Site</name>
      <t>The goal of the BGP-LS extension is to collect information of the service prefix and metadata of the service, such as network metrics and compute metrics. A service is identified by a prefix, and this information is carried by the existing prefix NLRI TLV. Other information including service metadata is carried by attributes TLVs.</t>
      <section anchor="Prefix">
        <name>Prefix NLRI</name>
        <t>A service is identified by a prefix, and the Prefix NLRI defined in the <xref target="RFC7752"/> is used to collect the prefix information of the service. The format of the Prefix NLRI is shown in <xref target="fig-Prefix-NLRI"/> for better understanding.</t>
        <figure anchor="fig-Prefix-NLRI">
          <name>The IPv4/IPv6 Topology Prefix NLRI Format</name>
          <artwork><![CDATA[
      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+
     |  Protocol-ID  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           Identifier                          |
     |                            (64 bits)                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //              Local Node Descriptors (variable)              //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //                Prefix Descriptors (variable)                //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>Specifically, the service prefix is carried by the IP Reachability Information TLV(<xref target="fig-IP-Reachability-TLV"/>) inside the Prefix Descriptor field. The Prefix Length field contains the length of the prefix in bits. The IP Prefix field contains the most significant octets of the prefix.</t>
        <figure anchor="fig-IP-Reachability-TLV">
          <name>IP Reachability Information TLV Format</name>
          <artwork><![CDATA[
      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |             Length            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | Prefix Length | IP Prefix (variable)                         //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
      </section>
      <section anchor="attributes">
        <name>Attributes</name>
        <t>The following three prefix attribute TLVs are used to carry the metadata of a service instance:</t>
        <ol spacing="normal" type="1"><li>
            <t>Metadata Path Attribute TLV carries the computing metric of the service instances such as site preference, capacity index, and load measurement defined in <xref target="I-D.ietf-idr-5g-edge-service-metadata"/>.</t>
          </li>
          <li>
            <t>Prefix SID TLV carries a Prefix SID associated with the edge site.</t>
          </li>
          <li>
            <t>Color Attribute TLV carries the service requirement level information of the service</t>
          </li>
        </ol>
        <section anchor="metadata">
          <name>Metadata Path Attribute TLV</name>
          <t>The Metadata Path Attribute TLV is an optional attribute to carry the Edge Service Metadata defined in the <xref target="I-D.ietf-idr-5g-edge-service-metadata"/>. It contains multiple sub-TLVs, with each sub-TLV containing a specific metric of the Edge Service Metadata. This document defines a new TLV in BGP-LS, which reuses the name and the format of Metadata Path Attribute TLV.</t>
          <figure anchor="fig-Metadata-Path-Attribute">
            <name>Metadata Path Attribute TLV format</name>
            <artwork><![CDATA[
      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |            Length             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     |              Value (multiple Metadata sub-TLVs)               |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <ul spacing="normal">
            <li>
              <t>Type: identify the Metadata Path Attribute, to be assigned by IANA.</t>
            </li>
            <li>
              <t>Length: the total number of octets of the value field.</t>
            </li>
            <li>
              <t>Value: contains multiple sub-TLVs.</t>
            </li>
          </ul>
          <t>There are three types of Edge Service Metadata sub-TLVs defined in <xref target="I-D.ietf-idr-5g-edge-service-metadata"/>:</t>
          <ol spacing="normal" type="1"><li>
              <t>Site Preference Index indicates the preference to choose the site.</t>
            </li>
            <li>
              <t>Capacity Index indicates the capability of a site. One Edge Site can be at full capacity, reduced capacity, or completely out of service.</t>
            </li>
            <li>
              <t>Load Measurement indicates the load level of the site.</t>
            </li>
          </ol>
          <t>To collect this information, this document defines TLVs reusing the name and format of the TLVs defined in <xref target="I-D.ietf-idr-5g-edge-service-metadata"/>.</t>
        </section>
      </section>
      <section anchor="prefix-SID">
        <name>Prefix SID Attribute TLV</name>
        <t>In some cases, there may be multiple sites connected to one Edge(egress) router through different interfaces. Generally, an overlay tunnel will be used between the ingress router and the egress for steering the traffic to the best site correctly. In SR-MPLS networks or SRv6 networks, a prefix SID is needed. For example, some SRv6 Endpoint Behaviors such as End.DX6, End.X can be encoded for each site so that the egress router can steer the traffic to the corresponding site. The Prefix SID TLV defined <xref target="RFC9085"/> can be used to collect this information.</t>
        <t>The Prefix SID TLV is an optional TLV to carry the Prefix SID associated with the edge site. The TLV format is illustrated in <xref target="fig-Prefix-SID"/>.</t>
        <figure anchor="fig-Prefix-SID">
          <name>Prefix-SID TLV format</name>
          <artwork><![CDATA[
      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |            Length             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     |                 Value (Prefix SID sub-TLV)                    |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <ul spacing="normal">
          <li>
            <t>Type: 1158, identify the Prefix SID Attribute.</t>
          </li>
          <li>
            <t>Length: the total number of octets of the value field.</t>
          </li>
          <li>
            <t>Value: contains Prefix SID sub-TLV.</t>
          </li>
        </ul>
        <section anchor="color">
          <name>Color Attribute TLV</name>
          <t>Color is used to indicate the service level. For example, different sites may have different levels of service capability which is taken into account by the controller when calculating the path to the egress router. More details can be added in the future revision.</t>
          <t>The TLV format(shown in <xref target="fig-Color"/>) is similar to the BGP Color Extended Community defined in <xref target="RFC9012"/>.</t>
          <figure anchor="fig-Color">
            <name>Color Attribute TLV format</name>
            <artwork><![CDATA[
      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |            Length             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Flags             |          Color Value          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |          Color Value          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <ul spacing="normal">
            <li>
              <t>Type: identify the Color Attribute, to be assigned by IANA.</t>
            </li>
            <li>
              <t>Length: 6, length of Flags + Color Value.</t>
            </li>
            <li>
              <t>Flags and Color are the same as defined in <xref target="RFC9012"/>. Color Value: 32 bit value of color.</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TBD</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requires IANA to assign the following code points from the registry called "BGP-LS Node Descriptor, Link Descriptor, Prefix Descriptor, and Attribute TLVs":</t>
      <table>
        <thead>
          <tr>
            <th align="left">Value</th>
            <th align="left">Description</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">TBD1</td>
            <td align="left">Metadata Path Attribute Type</td>
            <td align="left">
              <xref target="metadata"/></td>
          </tr>
          <tr>
            <td align="left">TBD2</td>
            <td align="left">Site Preference Sub-Type</td>
            <td align="left">
              <xref target="metadata"/></td>
          </tr>
          <tr>
            <td align="left">TBD3</td>
            <td align="left">Capacity Sub-Type</td>
            <td align="left">
              <xref target="metadata"/></td>
          </tr>
          <tr>
            <td align="left">TBD4</td>
            <td align="left">Load Measurement Sub-Type1: Aggregated-Cost</td>
            <td align="left">
              <xref target="metadata"/></td>
          </tr>
          <tr>
            <td align="left">TBD5</td>
            <td align="left">Load Measurement Sub-Type2: Raw-Measurements</td>
            <td align="left">
              <xref target="metadata"/></td>
          </tr>
          <tr>
            <td align="left">TBD6</td>
            <td align="left">Color Attribute Type</td>
            <td align="left">
              <xref target="color"/></td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="contributors">
      <name>Contributors</name>
      <t>Xiangfeng Ding</t>
      <t>email: dingxiangfeng@huawei.com</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC7752">
        <front>
          <title>North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP</title>
          <author fullname="H. Gredler" initials="H." role="editor" surname="Gredler"/>
          <author fullname="J. Medved" initials="J." surname="Medved"/>
          <author fullname="S. Previdi" initials="S." surname="Previdi"/>
          <author fullname="A. Farrel" initials="A." surname="Farrel"/>
          <author fullname="S. Ray" initials="S." surname="Ray"/>
          <date month="March" year="2016"/>
          <abstract>
            <t>In a number of environments, a component external to a network is called upon to perform computations based on the network topology and current state of the connections within the network, including Traffic Engineering (TE) information. This is information typically distributed by IGP routing protocols within the network.</t>
            <t>This document describes a mechanism by which link-state and TE information can be collected from networks and shared with external components using the BGP routing protocol. This is achieved using a new BGP Network Layer Reachability Information (NLRI) encoding format. The mechanism is applicable to physical and virtual IGP links. The mechanism described is subject to policy control.</t>
            <t>Applications of this technique include Application-Layer Traffic Optimization (ALTO) servers and Path Computation Elements (PCEs).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7752"/>
        <seriesInfo name="DOI" value="10.17487/RFC7752"/>
      </reference>
      <reference anchor="RFC9012">
        <front>
          <title>The BGP Tunnel Encapsulation Attribute</title>
          <author fullname="K. Patel" initials="K." surname="Patel"/>
          <author fullname="G. Van de Velde" initials="G." surname="Van de Velde"/>
          <author fullname="S. Sangli" initials="S." surname="Sangli"/>
          <author fullname="J. Scudder" initials="J." surname="Scudder"/>
          <date month="April" year="2021"/>
          <abstract>
            <t>This document defines a BGP path attribute known as the "Tunnel Encapsulation attribute", which can be used with BGP UPDATEs of various Subsequent Address Family Identifiers (SAFIs) to provide information needed to create tunnels and their corresponding encapsulation headers. It provides encodings for a number of tunnel types, along with procedures for choosing between alternate tunnels and routing packets into tunnels.</t>
            <t>This document obsoletes RFC 5512, which provided an earlier definition of the Tunnel Encapsulation attribute. RFC 5512 was never deployed in production. Since RFC 5566 relies on RFC 5512, it is likewise obsoleted. This document updates RFC 5640 by indicating that the Load-Balancing Block sub-TLV may be included in any Tunnel Encapsulation attribute where load balancing is desired.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9012"/>
        <seriesInfo name="DOI" value="10.17487/RFC9012"/>
      </reference>
      <reference anchor="RFC9085">
        <front>
          <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing</title>
          <author fullname="S. Previdi" initials="S." surname="Previdi"/>
          <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
          <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
          <author fullname="H. Gredler" initials="H." surname="Gredler"/>
          <author fullname="M. Chen" initials="M." surname="Chen"/>
          <date month="August" year="2021"/>
          <abstract>
            <t>Segment Routing (SR) allows for a flexible definition of end-to-end paths by encoding paths as sequences of topological subpaths, called "segments". These segments are advertised by routing protocols, e.g., by the link-state routing protocols (IS-IS, OSPFv2, and OSPFv3) within IGP topologies.</t>
            <t>This document defines extensions to the Border Gateway Protocol - Link State (BGP-LS) address family in order to carry SR information via BGP.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9085"/>
        <seriesInfo name="DOI" value="10.17487/RFC9085"/>
      </reference>
      <reference anchor="RFC9252">
        <front>
          <title>BGP Overlay Services Based on Segment Routing over IPv6 (SRv6)</title>
          <author fullname="G. Dawra" initials="G." role="editor" surname="Dawra"/>
          <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
          <author fullname="R. Raszuk" initials="R." surname="Raszuk"/>
          <author fullname="B. Decraene" initials="B." surname="Decraene"/>
          <author fullname="S. Zhuang" initials="S." surname="Zhuang"/>
          <author fullname="J. Rabadan" initials="J." surname="Rabadan"/>
          <date month="July" year="2022"/>
          <abstract>
            <t>This document defines procedures and messages for SRv6-based BGP services, including Layer 3 Virtual Private Network (L3VPN), Ethernet VPN (EVPN), and Internet services. It builds on "BGP/MPLS IP Virtual Private Networks (VPNs)" (RFC 4364) and "BGP MPLS-Based Ethernet VPN" (RFC 7432).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9252"/>
        <seriesInfo name="DOI" value="10.17487/RFC9252"/>
      </reference>
      <reference anchor="I-D.ietf-idr-5g-edge-service-metadata">
        <front>
          <title>BGP Extension for 5G Edge Service Metadata</title>
          <author fullname="Linda Dunbar" initials="L." surname="Dunbar">
            <organization>Futurewei</organization>
          </author>
          <author fullname="Kausik Majumdar" initials="K." surname="Majumdar">
            <organization>Microsoft Azure</organization>
          </author>
          <author fullname="Cheng Li" initials="C." surname="Li">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Gyan Mishra" initials="G. S." surname="Mishra">
            <organization>Verizon</organization>
          </author>
          <author fullname="Zongpeng Du" initials="Z." surname="Du">
            <organization>China Mobile</organization>
          </author>
          <date day="25" month="April" year="2024"/>
          <abstract>
            <t>   This draft describes a new Metadata Path Attribute and some Sub-TLVs
   for egress routers to advertise the Metadata about the attached edge
   services (ES).  The edge service Metadata can be used by the ingress
   routers in the 5G Local Data Network to make path selections not only
   based on the routing cost but also the running environment of the
   edge services.  The goal is to improve latency and performance for 5G
   edge services.

   The extension enables an edge service at one specific location to be
   more preferred than the others with the same IP address (ANYCAST) to
   receive data flow from a specific source, like a specific User
   Equipment (UE).


            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-idr-5g-edge-service-metadata-18"/>
      </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>
    <?line 260?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Haibo Wang, Lili Wang, Jianwei Mao for their help.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
