<?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.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dekater-scion-dataplane-15" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="SCION DP">SCION Data Plane</title>
    <seriesInfo name="Internet-Draft" value="draft-dekater-scion-dataplane-15"/>
    <author initials="C." surname="de Kater" fullname="Corine de Kater">
      <organization>Independent</organization>
      <address>
        <email>c_de_kater@gmx.ch</email>
      </address>
    </author>
    <author initials="N." surname="Rustignoli" fullname="Nicola Rustignoli">
      <organization>SCION Association</organization>
      <address>
        <email>nic@scion.org</email>
      </address>
    </author>
    <author initials="J. C." surname="Hugly" fullname="Jean-Christophe Hugly">
      <organization>Independent</organization>
      <address>
        <email>jice@vwaty.com</email>
      </address>
    </author>
    <author initials="S." surname="Hitz" fullname="Samuel Hitz">
      <organization>Anapaya Systems</organization>
      <address>
        <email>hitz@anapaya.net</email>
      </address>
    </author>
    <date year="2026" month="June" day="24"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 189?>

<t>This document describes the Data Plane of SCION (Scalability, Control, and Isolation On Next-generation networks), a path-aware, inter-domain network architecture.</t>
      <t>Unlike IP-based forwarding, SCION embeds inter-domain forwarding directives in the packet header, enabling endpoints to construct and select end-to-end paths from segments discovered by the Control Plane. The role of the Data Plane is to combine such segments into end-to-end paths, and to forward data according to the specified path.</t>
      <t>This document describes the SCION packet format, header structure, and extension headers. It also describes the cryptographic mechanisms used for path authorization, processing at routers including a life of a packet example.</t>
      <t>This document contains new approaches to secure path aware networking. It is not an Internet Standard, has not received any formal review of the IETF, nor was the work developed through the rough consensus process. The approaches offered in this work are offered to the community for its consideration in the further evolution of the Internet.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://scionassociation.github.io/scion-dp_I-D/draft-dekater-scion-dataplane.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-dekater-scion-dataplane/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/scionassociation/scion-dp_I-D"/>.</t>
    </note>
  </front>
  <middle>
    <?line 199?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>SCION is a path-aware internetworking routing architecture as described in <xref target="RFC9217"/>. A more detailed introduction, motivation, and problem statement are provided in <xref target="I-D.dekater-scion-controlplane"/>. Readers are encouraged to read the introduction in that document first.</t>
      <t>SCION relies on three main components:</t>
      <t><em>PKI</em> - providing cryptographic material within an unique trust model. It is described in <xref target="I-D.dekater-scion-pki"/>.</t>
      <t><em>Control Plane</em> - performing inter-domain routing by discovering and securely disseminating path information. It is described in <xref target="I-D.dekater-scion-controlplane"/>.</t>
      <t><em>Data Plane</em> - carrying out secure packet forwarding between SCION-enabled ASes over paths selected by endpoints. It is described in this document.</t>
      <section anchor="terms">
        <name>Terminology</name>
        <t><strong>SCION Autonomous System (AS)</strong>: A SCION Autonomous System is a network under a common administrative control. For example, the network of a SCION service provider, company, or university can constitute an AS. While functionally similar to a BGP AS, a SCION AS operates within an Isolation Domain (ISD), utilizes a different address scheme, and serves as a locator in the addressing of end hosts. References to ASes throughout this document refer to SCION ASes.</t>
        <t><strong>Core AS</strong>: Each Isolation Domain (ISD) is administered by a set of distinguished SCION autonomous systems (ASes) called core ASes, which are responsible for initiating the path discovery and path construction process (called "beaconing" in SCION).</t>
        <t><strong>Data Plane</strong>: The data plane (sometimes also referred to as the forwarding plane) is responsible for forwarding data packets that endpoints have injected into the network. After routing information has been disseminated by the control plane, packets are forwarded by the data plane in accordance with such information.</t>
        <t><strong>Egress/Ingress</strong>: Refers to the direction of travel. In SCION, path construction with beaconing happens in one direction, while actual traffic might follow the opposite direction. This document clarifies on a case-by-case basis whether 'egress' or 'ingress' refers to the direction of travel of the SCION packet or to the direction of beaconing.</t>
        <t><strong>Endpoint</strong>: An endpoint is the start or the end of a SCION path, as defined in <xref target="RFC9473"/>.</t>
        <t><strong>Forwarding Key</strong>: A symmetric key that is shared between the control service (control plane) and the routers (data plane) of an AS. It authenticates Hop Fields in the end-to-end SCION path. The forwarding key is an AS-local secret and is not shared with other ASes.</t>
        <t><strong>Forwarding Path</strong>: A complete end-to-end path between two SCION endpoints which is used to transmit packets in the data plane. Endpoints can create one with a combination of up to three path segments (an up segment, a core segment, and a down segment).</t>
        <t><strong>Hop Field (HF)</strong>: As they traverse the network, Path-Segment Construction Beacons (PCBs) accumulate cryptographically protected AS-level path information in the form of Hop Fields. In the data plane, Hop Fields are used for packet forwarding: they contain the incoming and outgoing Interface IDs of the ASes on the forwarding path.</t>
        <t><strong>Info Field (INF)</strong>: Each Path-Segment Construction Beacon (PCB) contains a single Info field, which provides basic information about the PCB. Together with Hop Fields (HFs), these are used to create forwarding paths.</t>
        <t><strong>Interface Identifier (Interface ID)</strong>: A 16-bit identifier that designates a SCION interface at the end of a link connecting two SCION ASes, with each interface belonging to one border router. Hop fields describe the traversal of an AS by a pair of Interface IDs called <tt>ConsIngress</tt> and <tt>ConsEgress</tt> as they refer to the ingress and egress interfaces in the direction of path construction (beaconing). Each Interface ID <bcp14>MUST</bcp14> be unique within each AS. 0 is a reserved value that indicates the lack of an Interface ID and is used as the unspecified Interface ID (see <xref target="onehop"/>).</t>
        <t><strong>Isolation Domain (ISD)</strong>: SCION ASes are organized into logical groups called Isolation Domains or ISDs. Each ISD consists of ASes that span an area with a uniform trust environment (e.g., a common jurisdiction).</t>
        <t><strong>Message Authentication Code (MAC)</strong>: In the rest of this document, "MAC" always refers to "Message Authentication Code" and never to "Medium Access Control". When "Medium Access Control address" is implied, the phrase "Link Layer Address" is used.</t>
        <t><strong>Path Authorization</strong>: A requirement for the data plane is that endpoints can only use paths that were constructed and authorized by ASes in the control plane. The goal of path authorization is to prevent endpoints from crafting Hop Fields (HFs) themselves, modifying HFs in authorized path segments, or combining HFs of different path segments.</t>
        <t><strong>Path Control</strong>: The property of a network architecture that gives endpoints the ability to select how their packets travel through the network. Path control is stronger than path transparency.</t>
        <t><strong>Path Segment</strong>: These are derived from Path-Segment Construction Beacons (PCBs). A path segment can be (1) an up segment (i.e., a path between a non-core AS and a core AS in the same ISD), (2) a down segment (i.e., the same as an up segment, but in the opposite direction), or (3) a core segment (i.e., a path between core ASes). Endpoints use up to three path segments to create a forwarding path.</t>
        <t><strong>Path-Segment Construction Beacon (PCB)</strong>: Core AS control planes generate PCBs to explore paths within their isolation domain (ISD) and between different ISDs. ASes further propagate selected PCBs to their neighboring ASes. These PCBs traverse each AS accumulating information, including Hop Fields (HFs) which can subsequently be used for traffic forwarding.</t>
        <t><strong>Path Transparency</strong>: This is a property of a network architecture that gives endpoints full visibility over the network paths their packets are taking. Path transparency is weaker than path control.</t>
        <t><strong>Peering Link</strong>: A link between two SCION border routers of different ASes that can be used as a shortcut. Peering link information is added to segment information during the intra-ISD beaconing process and used to shorten paths while assembling them from segments. It is possible to construct a path out of only two partial segments whose top-most hops are joined by a peering link. Two peering ASes may be in different ISDs and may each be core or non-core.</t>
        <t><strong>SCION Control Message Protocol (SCMP)</strong>: A signaling protocol analogous to the Internet Control Message Protocol (ICMP), as described in <xref target="I-D.dekater-scion-controlplane"/>.</t>
      </section>
      <section anchor="conventions-and-definitions">
        <name>Conventions and Definitions</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 anchor="overview">
        <name>Overview</name>
        <t>The SCION Data Plane forwards inter-domain packets between SCION ASes. SCION routers are normally deployed at the edge of an AS and peer with neighboring SCION routers. Inter-domain forwarding is based on end-to-end path information contained in the packet header, which consists of a sequence of Hop Fields (HFs). Each Hop Field corresponds to an AS on the path, and it includes an ingress Interface ID as well as an egress Interface ID which unequivocally identifies the ingress and egress interfaces within the AS. The information is authenticated with a Message Authentication Code (MAC) to prevent forgery.</t>
        <t>This concept allows SCION routers to forward packets to a neighbor AS without inspecting the destination address and also without consulting an inter-domain forwarding table, removing the need for specialized hardware. A SCION border router reuses existing intra-domain infrastructure (e.g., IP) to communicate to other SCION routers or SCION endpoints within its AS. The last SCION router at the destination AS uses the destination address to forward the packet to the appropriate local endpoint.</t>
        <section anchor="inter-and-intra-domain-forwarding">
          <name>Inter- and Intra-Domain Forwarding</name>
          <t>As SCION is an inter-domain network architecture, it is not concerned with intra-domain forwarding. This corresponds to the general practice today where BGP and IP are used for inter-domain routing and forwarding respectively, but ASes use an intra-domain protocol of their choice - e.g., OSPF or IS-IS for routing, and IP, MPLS, and various Layer 2 protocols for forwarding. In fact, even if ASes use IP forwarding internally, they typically encapsulate the original IP packet they receive at the edge of their network into another IP packet with the destination address set to the egress border router, in order to avoid full inter-domain forwarding tables on internal routers.</t>
          <t>SCION emphasizes this separation as it is used exclusively for inter-domain forwarding; reusing the intra-domain network fabric to provide connectivity amongst all SCION infrastructure services, border routers, and endpoints. As a consequence, minimal change to the infrastructure is required for ISPs when deploying SCION.</t>
          <t>In practice, in most existing SCION deployments the SCION routers communicate amongst themselves and with endpoints by enclosing the SCION header inside an UDP/IPv6 or UDP/IPv4 packet. The choice of using an UDP/IP as an intra-domain protocol between routers was driven by the need to maximize compatibility with existing networks. This does not exclude that a SCION packet may be enclosed directly on top of a Layer 2 protocol, since the choice of intra-domain protocol is AS-specific.</t>
          <t><xref target="_figure-30"/> shows the SCION header within the protocol stack, in an AS where the SCION deployment uses UDP/IP as an intra-domain protocol. A similar model may be used for inter-domain links, depending on the individual choice of the two interconnected SCION router operators. A full example of the life of a SCION packet is presented in <xref target="life-of-a-packet"/>. A list of currently used upper layer protocols on top of SCION is presented in <xref target="protnum"/>.</t>
          <figure anchor="_figure-30">
            <name>The SCION header within the protocol stack in a typical deployment</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="320" width="392" viewBox="0 0 392 320" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,32 L 8,304" fill="none" stroke="black"/>
                  <path d="M 248,32 L 248,304" fill="none" stroke="black"/>
                  <path d="M 280,208 L 280,304" fill="none" stroke="black"/>
                  <path d="M 8,32 L 248,32" fill="none" stroke="black"/>
                  <path d="M 8,144 L 248,144" fill="none" stroke="black"/>
                  <path d="M 8,208 L 248,208" fill="none" stroke="black"/>
                  <path d="M 264,208 L 280,208" fill="none" stroke="black"/>
                  <path d="M 8,240 L 248,240" fill="none" stroke="black"/>
                  <path d="M 8,272 L 248,272" fill="none" stroke="black"/>
                  <path d="M 8,304 L 248,304" fill="none" stroke="black"/>
                  <path d="M 264,304 L 280,304" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="272,304 260,298.4 260,309.6" fill="black" transform="rotate(180,264,304)"/>
                  <polygon class="arrowhead" points="272,208 260,202.4 260,213.6" fill="black" transform="rotate(180,264,208)"/>
                  <g class="text">
                    <text x="104" y="84">Payload</text>
                    <text x="156" y="84">(L4)</text>
                    <text x="128" y="180">SCION</text>
                    <text x="128" y="228">UDP</text>
                    <text x="340" y="244">Intra-domain</text>
                    <text x="124" y="260">IP</text>
                    <text x="332" y="260">protocol</text>
                    <text x="100" y="292">Link</text>
                    <text x="144" y="292">Layer</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
+-----------------------------+
|                             |
|                             |
|        Payload (L4)         |
|                             |
|                             |
|                             |
+-----------------------------+
|                             |
|            SCION            |
|                             |
+-----------------------------+ <-+
|             UDP             |   |
+-----------------------------+   | Intra-domain
|             IP              |   |  protocol
+-----------------------------+   |
|         Link Layer          |   |
+-----------------------------+ <-+
]]></artwork>
            </artset>
          </figure>
          <t>A complete SCION address is composed of the &lt;ISD, AS, endpoint address&gt; 3-tuple. The ISD-AS part is used for inter-domain routing, whilst the endpoint address part is only used for intra-domain forwarding at the destination AS. This implies that endpoint addresses are only required to be unique within a SCION AS. An endpoint running a SCION stack using a <xref target="RFC1918"/> endpoint address could therefore directly communicate with another SCION endpoint using a <xref target="RFC1918"/> endpoint address in a different SCION AS.</t>
          <t>The data transmission order for SCION is the same as for IPv6 as defined in Introduction of <xref target="RFC8200"/>.</t>
        </section>
        <section anchor="intra-domain-forwarding">
          <name>Intra-Domain Forwarding Process</name>
          <t>SCION routers within the source AS receive outbound traffic from local endpoints. The mechanisms used to configure these endpoints with the router's address and port, particularly when utilizing a UDP/IP underlay, are beyond the scope of this document.</t>
          <t>When transiting an intermediate SCION AS, a packet gets forwarded by at most two SCION routers. The forwarding process consists of the following steps.</t>
          <ol spacing="normal" type="1"><li>
              <t>The AS's SCION ingress router receives a SCION packet from the neighboring AS.</t>
            </li>
            <li>
              <t>The SCION router parses, validates, and authenticates the SCION header.</t>
            </li>
            <li>
              <t>The SCION router maps the egress Interface ID in the current Hop Field of the SCION header to the destination address of the intra-domain protocol (e.g., MPLS or IP) of the egress border router.</t>
            </li>
            <li>
              <t>The packet is forwarded within the AS by SCION-unaware routers and switches based on the header of the intra-domain protocol.</t>
            </li>
            <li>
              <t>Upon receiving the packet, the SCION egress router strips off the header of the intra-domain protocol, again validates and updates the SCION header, and forwards the packet to the neighboring SCION router.</t>
            </li>
          </ol>
          <t>In the destination AS, the SCION ingress router forwards the packet to the packet's destination endpoint indicated by the field <tt>DstHostAddr</tt> of <xref target="address-header">the Address Header</xref>.
The encapsulation and forwarding behavior of SCION packets over a UDP/IP underlay are detailed in <xref target="SCION-UDP"/>.</t>
        </section>
        <section anchor="configuration">
          <name>Configuration</name>
          <t>Border routers require mappings from SCION Interface IDs to underlay addresses and such information <bcp14>MUST</bcp14> be supplied to each router in an out of band fashion (e.g in a configuration file). For each link to a neighbor, these values <bcp14>MUST</bcp14> be configured. A typical implementation will require:</t>
          <ul spacing="normal">
            <li>
              <t>Interface ID.</t>
            </li>
            <li>
              <t>Link type (core, parent, child, peer). Link type depends on mutual agreements between the organizations operating the ASes at each end of each link.</t>
            </li>
            <li>
              <t>Neighbor ISD-AS number.</t>
            </li>
            <li>
              <t>Neighbor interface's underlay address.</t>
            </li>
            <li>
              <t>For intra-domain forwarding: mapping of the AS interface IDs to intra-domain protocol address of the corresponding routers.</t>
            </li>
            <li>
              <t>The algorithm used to compute the <xref target="hf-mac-overview">Hop Field MAC</xref> and forwarding key, which must be the same as that used by the Control Services within the AS.</t>
            </li>
          </ul>
          <t>In order to forward traffic to a service endpoint address (<tt>DT/DS</tt> as per <xref target="_table-3"/>), a border router translates the service number (<xref target="_table-4"/>) into a specific destination address. The method used to accomplish the translation is not defined by this document and is only dependent on the implementation and the choices of each AS's administrator. In current practice this is accomplished by way of a configuration file.</t>
          <t>In addition, routers require coarse time synchronization with control plane instances (see <xref target="clock-inaccuracy"/>).</t>
          <t>The current SCION implementation runs over the UDP/IP protocol, although the use of other lower layers protocols is possible.</t>
        </section>
      </section>
      <section anchor="construction">
        <name>Path Construction (Segment Combinations)</name>
        <t>Paths are discovered by the Control Plane which makes them available to SCION endpoints in the form of path segments. As described in <xref target="I-D.dekater-scion-controlplane"/>, there are three kinds of path segments: up, down, and core.</t>
        <t>In the data plane, a SCION endpoint creates end-to-end paths from the path segments by combining multiple path segments. Depending on the network topology, a SCION forwarding path consists of at least one and up to three segments. Each path segment contains several Hop Fields representing the ASes on the segment as well as one Info Field with basic information about the segment - e.g., a timestamp.</t>
        <t>Segments cannot be combined arbitrarily. To construct a valid forwarding path, the source endpoint <bcp14>MUST</bcp14> obey the following rules:</t>
        <ul spacing="normal">
          <li>
            <t>There <bcp14>MUST</bcp14> be at most one of each type of segment (up, core, and down). Allowing multiple up or down segments would decrease efficiency and the ability of ASes to enforce path policies.</t>
          </li>
          <li>
            <t>If an up segment is present, it <bcp14>MUST</bcp14> be the first segment in the path.</t>
          </li>
          <li>
            <t>If a down segment is present, it <bcp14>MUST</bcp14> be the last segment in the path.</t>
          </li>
          <li>
            <t>If there are two path segments (one up and one down segment) that both announce the same peering link, then a shortcut via this peering link is possible.</t>
          </li>
          <li>
            <t>If there are two path segments (one up and one down segment) that share a common ancestor AS (in the direction of beaconing), then a shortcut via this common ancestor AS is possible. The up-then-down constraint still applies.</t>
          </li>
          <li>
            <t>Additionally, all segments without any peering possibility <bcp14>MUST</bcp14> consist of at least two Hop Fields.</t>
          </li>
        </ul>
        <t>Note that the type of segment is known to the endpoint but it is not explicitly visible in the path header of data packets. Therefore, a SCION router needs to explicitly verify that these rules were followed correctly by performing checks described in <xref target="process-router-ingress"/>.</t>
        <t>Besides enabling the enforcement of path policies, the above rules also protect the economic interest of ASes as they prevent building "valley paths". A valley path contains ASes that do not profit economically from traffic on this route, with the name coming from the fact that such paths go "down" (following parent-child links) before going "up" (following child-parent links).</t>
        <t><xref target="_figure-1"/> and <xref target="_figure-1bis"/> show valid segment combinations with each node representing a SCION AS. It is assumed that the source and destination endpoints are in different ASes (as endpoints from the same AS use an empty forwarding path to communicate with each other).</t>
        <figure anchor="_figure-1">
          <name>Illustration of valid path segment combinations through multiple core ASes.</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="432" width="560" viewBox="0 0 560 432" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,208 L 8,400" fill="none" stroke="black"/>
                <path d="M 16,32 L 16,64" fill="none" stroke="black"/>
                <path d="M 16,96 L 16,128" fill="none" stroke="black"/>
                <path d="M 40,192 L 40,224" fill="none" stroke="black"/>
                <path d="M 40,288 L 40,320" fill="none" stroke="black"/>
                <path d="M 40,384 L 40,416" fill="none" stroke="black"/>
                <path d="M 48,32 L 48,64" fill="none" stroke="black"/>
                <path d="M 48,96 L 48,128" fill="none" stroke="black"/>
                <path d="M 56,224 L 56,288" fill="none" stroke="black"/>
                <path d="M 56,320 L 56,384" fill="none" stroke="black"/>
                <path d="M 72,192 L 72,224" fill="none" stroke="black"/>
                <path d="M 72,288 L 72,320" fill="none" stroke="black"/>
                <path d="M 72,384 L 72,416" fill="none" stroke="black"/>
                <path d="M 120,192 L 120,224" fill="none" stroke="black"/>
                <path d="M 120,288 L 120,320" fill="none" stroke="black"/>
                <path d="M 120,384 L 120,416" fill="none" stroke="black"/>
                <path d="M 136,224 L 136,288" fill="none" stroke="black"/>
                <path d="M 136,320 L 136,384" fill="none" stroke="black"/>
                <path d="M 152,192 L 152,224" fill="none" stroke="black"/>
                <path d="M 152,288 L 152,320" fill="none" stroke="black"/>
                <path d="M 152,384 L 152,416" fill="none" stroke="black"/>
                <path d="M 248,192 L 248,224" fill="none" stroke="black"/>
                <path d="M 248,288 L 248,320" fill="none" stroke="black"/>
                <path d="M 248,384 L 248,416" fill="none" stroke="black"/>
                <path d="M 264,224 L 264,288" fill="none" stroke="black"/>
                <path d="M 264,320 L 264,384" fill="none" stroke="black"/>
                <path d="M 280,192 L 280,224" fill="none" stroke="black"/>
                <path d="M 280,288 L 280,320" fill="none" stroke="black"/>
                <path d="M 280,384 L 280,416" fill="none" stroke="black"/>
                <path d="M 328,192 L 328,224" fill="none" stroke="black"/>
                <path d="M 360,192 L 360,224" fill="none" stroke="black"/>
                <path d="M 408,384 L 408,416" fill="none" stroke="black"/>
                <path d="M 424,192 L 424,224" fill="none" stroke="black"/>
                <path d="M 424,336 L 424,384" fill="none" stroke="black"/>
                <path d="M 440,384 L 440,416" fill="none" stroke="black"/>
                <path d="M 456,192 L 456,224" fill="none" stroke="black"/>
                <path d="M 464,320 L 464,352" fill="none" stroke="black"/>
                <path d="M 496,320 L 496,352" fill="none" stroke="black"/>
                <path d="M 504,192 L 504,224" fill="none" stroke="black"/>
                <path d="M 520,384 L 520,416" fill="none" stroke="black"/>
                <path d="M 536,192 L 536,224" fill="none" stroke="black"/>
                <path d="M 536,336 L 536,384" fill="none" stroke="black"/>
                <path d="M 552,384 L 552,416" fill="none" stroke="black"/>
                <path d="M 16,32 L 48,32" fill="none" stroke="black"/>
                <path d="M 16,64 L 48,64" fill="none" stroke="black"/>
                <path d="M 288,80 L 304,80" fill="none" stroke="black"/>
                <path d="M 16,96 L 48,96" fill="none" stroke="black"/>
                <path d="M 280,112 L 328,112" fill="none" stroke="black"/>
                <path d="M 16,128 L 48,128" fill="none" stroke="black"/>
                <path d="M 56,176 L 136,176" fill="none" stroke="black"/>
                <path d="M 264,176 L 344,176" fill="none" stroke="black"/>
                <path d="M 440,176 L 520,176" fill="none" stroke="black"/>
                <path d="M 40,192 L 72,192" fill="none" stroke="black"/>
                <path d="M 120,192 L 152,192" fill="none" stroke="black"/>
                <path d="M 248,192 L 280,192" fill="none" stroke="black"/>
                <path d="M 328,192 L 360,192" fill="none" stroke="black"/>
                <path d="M 424,192 L 456,192" fill="none" stroke="black"/>
                <path d="M 504,192 L 536,192" fill="none" stroke="black"/>
                <path d="M 72,208 L 120,208" fill="none" stroke="black"/>
                <path d="M 280,208 L 328,208" fill="none" stroke="black"/>
                <path d="M 456,208 L 504,208" fill="none" stroke="black"/>
                <path d="M 40,224 L 72,224" fill="none" stroke="black"/>
                <path d="M 120,224 L 152,224" fill="none" stroke="black"/>
                <path d="M 248,224 L 280,224" fill="none" stroke="black"/>
                <path d="M 328,224 L 360,224" fill="none" stroke="black"/>
                <path d="M 424,224 L 456,224" fill="none" stroke="black"/>
                <path d="M 504,224 L 536,224" fill="none" stroke="black"/>
                <path d="M 40,288 L 72,288" fill="none" stroke="black"/>
                <path d="M 120,288 L 152,288" fill="none" stroke="black"/>
                <path d="M 248,288 L 280,288" fill="none" stroke="black"/>
                <path d="M 424,304 L 536,304" fill="none" stroke="black"/>
                <path d="M 40,320 L 72,320" fill="none" stroke="black"/>
                <path d="M 120,320 L 152,320" fill="none" stroke="black"/>
                <path d="M 248,320 L 280,320" fill="none" stroke="black"/>
                <path d="M 464,320 L 496,320" fill="none" stroke="black"/>
                <path d="M 424,336 L 464,336" fill="none" stroke="black"/>
                <path d="M 496,336 L 536,336" fill="none" stroke="black"/>
                <path d="M 464,352 L 496,352" fill="none" stroke="black"/>
                <path d="M 40,384 L 72,384" fill="none" stroke="black"/>
                <path d="M 120,384 L 152,384" fill="none" stroke="black"/>
                <path d="M 248,384 L 280,384" fill="none" stroke="black"/>
                <path d="M 408,384 L 440,384" fill="none" stroke="black"/>
                <path d="M 520,384 L 552,384" fill="none" stroke="black"/>
                <path d="M 40,416 L 72,416" fill="none" stroke="black"/>
                <path d="M 120,416 L 152,416" fill="none" stroke="black"/>
                <path d="M 248,416 L 280,416" fill="none" stroke="black"/>
                <path d="M 408,416 L 440,416" fill="none" stroke="black"/>
                <path d="M 520,416 L 552,416" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="544,304 532,298.4 532,309.6" fill="black" transform="rotate(0,536,304)"/>
                <polygon class="arrowhead" points="528,176 516,170.4 516,181.6" fill="black" transform="rotate(0,520,176)"/>
                <polygon class="arrowhead" points="352,176 340,170.4 340,181.6" fill="black" transform="rotate(0,344,176)"/>
                <polygon class="arrowhead" points="336,112 324,106.4 324,117.6" fill="black" transform="rotate(0,328,112)"/>
                <polygon class="arrowhead" points="144,176 132,170.4 132,181.6" fill="black" transform="rotate(0,136,176)"/>
                <polygon class="arrowhead" points="16,400 4,394.4 4,405.6" fill="black" transform="rotate(90,8,400)"/>
                <circle cx="24" cy="112" r="6" class="closeddot" fill="black"/>
                <circle cx="48" cy="400" r="6" class="closeddot" fill="black"/>
                <circle cx="128" cy="400" r="6" class="closeddot" fill="black"/>
                <circle cx="256" cy="400" r="6" class="closeddot" fill="black"/>
                <circle cx="336" cy="208" r="6" class="closeddot" fill="black"/>
                <circle cx="416" cy="400" r="6" class="closeddot" fill="black"/>
                <circle cx="432" cy="208" r="6" class="closeddot" fill="black"/>
                <circle cx="512" cy="208" r="6" class="closeddot" fill="black"/>
                <circle cx="528" cy="400" r="6" class="closeddot" fill="black"/>
                <g class="text">
                  <text x="280" y="36">:</text>
                  <text x="32" y="52">C</text>
                  <text x="64" y="52">=</text>
                  <text x="92" y="52">Core</text>
                  <text x="124" y="52">AS</text>
                  <text x="280" y="52">:</text>
                  <text x="304" y="52">-</text>
                  <text x="320" y="52">-</text>
                  <text x="336" y="52">-</text>
                  <text x="352" y="52">-</text>
                  <text x="368" y="52">=</text>
                  <text x="404" y="52">unused</text>
                  <text x="456" y="52">links</text>
                  <text x="280" y="84">p</text>
                  <text x="312" y="84">p</text>
                  <text x="328" y="84">=</text>
                  <text x="368" y="84">peering</text>
                  <text x="420" y="84">link</text>
                  <text x="64" y="116">=</text>
                  <text x="148" y="116">source/destination</text>
                  <text x="236" y="116">AS</text>
                  <text x="344" y="116">=</text>
                  <text x="392" y="116">direction</text>
                  <text x="444" y="116">of</text>
                  <text x="496" y="116">beaconing</text>
                  <text x="92" y="164">Core</text>
                  <text x="300" y="164">Core</text>
                  <text x="476" y="164">Core</text>
                  <text x="56" y="212">C</text>
                  <text x="136" y="212">C</text>
                  <text x="264" y="212">C</text>
                  <text x="352" y="212">C</text>
                  <text x="448" y="212">C</text>
                  <text x="528" y="212">C</text>
                  <text x="92" y="244">1a</text>
                  <text x="300" y="244">1b</text>
                  <text x="476" y="244">1c</text>
                  <text x="476" y="292">Core</text>
                  <text x="480" y="340">C</text>
                  <text x="476" y="388">1d</text>
                  <text x="432" y="404">C</text>
                  <text x="544" y="404">C</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
 +---+                            :
 | C | = Core AS                  :  - - - - = unused links
 +---+
                                  p---p = peering link
 +---+
 |*  | = source/destination AS    ------> = direction of beaconing
 +---+

         Core                      Core                  Core
      ---------->               ---------->           ---------->
    +---+     +---+           +---+     +---+       +---+     +---+
+   + C +-----+ C +           + C +-----+* C|       |* C+-----+* C|
|   +-+-+     +-+-+           +-+-+     +---+       +---+     +---+
|     |   1a    |               |   1b                    1c
|     |         |               |
|     |         |               |
|   +-+-+     +-+-+           +-+-+                      Core
|   |   |     |   |           |   |                 -------------->
|   +-+-+     +-+-+           +-+-+                      +---+
|     |         |               |                   +----+ C +----+
|     |         |               |                   |    +---+    |
|     |         |               |                   |             |
|   +-+-+     +-+-+           +-+-+               +-+-+   1d    +-+-+
v   |*  |     |*  |           |*  |               |* C|         |* C|
    +---+     +---+           +---+               +---+         +---+
]]></artwork>
          </artset>
        </figure>
        <t>Valid path segment combinations:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Communication through core ASes with core segment combination</strong> (Cases 1a, 1b, 1c, 1d in <xref target="_figure-1"/>): The up and down segments of source and destination do not have an AS in common. In this case, a core segment is <bcp14>REQUIRED</bcp14> to connect the source's up segment and the destination's down segment (Case 1a). If either the source or the destination AS is a core AS (Case 1b), or both are core ASes (Cases 1c and 1d), then no up or down segments are <bcp14>REQUIRED</bcp14> to connect the respective ASes to the core segment.</t>
          </li>
        </ul>
        <figure anchor="_figure-1bis">
          <name>Illustration of valid path segment combinations through one or no core ASes.</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="560" width="576" viewBox="0 0 576 560" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,48 L 8,240" fill="none" stroke="black"/>
                <path d="M 8,336 L 8,528" fill="none" stroke="black"/>
                <path d="M 32,320 L 32,352" fill="none" stroke="black"/>
                <path d="M 32,416 L 32,448" fill="none" stroke="black"/>
                <path d="M 32,512 L 32,544" fill="none" stroke="black"/>
                <path d="M 40,128 L 40,160" fill="none" stroke="black"/>
                <path d="M 40,224 L 40,256" fill="none" stroke="black"/>
                <path d="M 48,448 L 48,512" fill="none" stroke="black"/>
                <path d="M 56,48 L 56,128" fill="none" stroke="black"/>
                <path d="M 56,160 L 56,224" fill="none" stroke="black"/>
                <path d="M 64,320 L 64,352" fill="none" stroke="black"/>
                <path d="M 64,416 L 64,448" fill="none" stroke="black"/>
                <path d="M 64,512 L 64,544" fill="none" stroke="black"/>
                <path d="M 72,128 L 72,160" fill="none" stroke="black"/>
                <path d="M 72,224 L 72,256" fill="none" stroke="black"/>
                <path d="M 80,32 L 80,64" fill="none" stroke="black"/>
                <path d="M 112,32 L 112,64" fill="none" stroke="black"/>
                <path d="M 112,320 L 112,352" fill="none" stroke="black"/>
                <path d="M 112,416 L 112,448" fill="none" stroke="black"/>
                <path d="M 112,512 L 112,544" fill="none" stroke="black"/>
                <path d="M 120,128 L 120,160" fill="none" stroke="black"/>
                <path d="M 120,224 L 120,256" fill="none" stroke="black"/>
                <path d="M 128,448 L 128,512" fill="none" stroke="black"/>
                <path d="M 136,48 L 136,128" fill="none" stroke="black"/>
                <path d="M 136,160 L 136,224" fill="none" stroke="black"/>
                <path d="M 144,320 L 144,352" fill="none" stroke="black"/>
                <path d="M 144,416 L 144,448" fill="none" stroke="black"/>
                <path d="M 144,512 L 144,544" fill="none" stroke="black"/>
                <path d="M 152,128 L 152,160" fill="none" stroke="black"/>
                <path d="M 152,224 L 152,256" fill="none" stroke="black"/>
                <path d="M 216,512 L 216,544" fill="none" stroke="black"/>
                <path d="M 232,432 L 232,512" fill="none" stroke="black"/>
                <path d="M 248,32 L 248,64" fill="none" stroke="black"/>
                <path d="M 248,128 L 248,160" fill="none" stroke="black"/>
                <path d="M 248,224 L 248,256" fill="none" stroke="black"/>
                <path d="M 248,320 L 248,352" fill="none" stroke="black"/>
                <path d="M 248,416 L 248,448" fill="none" stroke="black"/>
                <path d="M 248,512 L 248,544" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,128" fill="none" stroke="black"/>
                <path d="M 264,160 L 264,224" fill="none" stroke="black"/>
                <path d="M 280,32 L 280,64" fill="none" stroke="black"/>
                <path d="M 280,128 L 280,160" fill="none" stroke="black"/>
                <path d="M 280,224 L 280,256" fill="none" stroke="black"/>
                <path d="M 280,320 L 280,352" fill="none" stroke="black"/>
                <path d="M 280,416 L 280,448" fill="none" stroke="black"/>
                <path d="M 280,512 L 280,544" fill="none" stroke="black"/>
                <path d="M 296,432 L 296,512" fill="none" stroke="black"/>
                <path d="M 312,512 L 312,544" fill="none" stroke="black"/>
                <path d="M 360,320 L 360,352" fill="none" stroke="black"/>
                <path d="M 360,512 L 360,544" fill="none" stroke="black"/>
                <path d="M 376,432 L 376,512" fill="none" stroke="black"/>
                <path d="M 384,128 L 384,160" fill="none" stroke="black"/>
                <path d="M 384,224 L 384,256" fill="none" stroke="black"/>
                <path d="M 392,320 L 392,352" fill="none" stroke="black"/>
                <path d="M 392,512 L 392,544" fill="none" stroke="black"/>
                <path d="M 400,160 L 400,224" fill="none" stroke="black"/>
                <path d="M 400,416 L 400,448" fill="none" stroke="black"/>
                <path d="M 416,128 L 416,160" fill="none" stroke="black"/>
                <path d="M 416,224 L 416,256" fill="none" stroke="black"/>
                <path d="M 424,32 L 424,64" fill="none" stroke="black"/>
                <path d="M 432,416 L 432,448" fill="none" stroke="black"/>
                <path d="M 440,320 L 440,352" fill="none" stroke="black"/>
                <path d="M 440,512 L 440,544" fill="none" stroke="black"/>
                <path d="M 456,32 L 456,64" fill="none" stroke="black"/>
                <path d="M 456,432 L 456,512" fill="none" stroke="black"/>
                <path d="M 464,128 L 464,160" fill="none" stroke="black"/>
                <path d="M 464,224 L 464,256" fill="none" stroke="black"/>
                <path d="M 472,320 L 472,352" fill="none" stroke="black"/>
                <path d="M 472,512 L 472,544" fill="none" stroke="black"/>
                <path d="M 480,160 L 480,224" fill="none" stroke="black"/>
                <path d="M 496,128 L 496,160" fill="none" stroke="black"/>
                <path d="M 496,224 L 496,256" fill="none" stroke="black"/>
                <path d="M 536,320 L 536,352" fill="none" stroke="black"/>
                <path d="M 536,416 L 536,448" fill="none" stroke="black"/>
                <path d="M 536,512 L 536,544" fill="none" stroke="black"/>
                <path d="M 552,448 L 552,512" fill="none" stroke="black"/>
                <path d="M 568,320 L 568,352" fill="none" stroke="black"/>
                <path d="M 568,416 L 568,448" fill="none" stroke="black"/>
                <path d="M 568,512 L 568,544" fill="none" stroke="black"/>
                <path d="M 80,32 L 112,32" fill="none" stroke="black"/>
                <path d="M 248,32 L 280,32" fill="none" stroke="black"/>
                <path d="M 424,32 L 456,32" fill="none" stroke="black"/>
                <path d="M 56,48 L 80,48" fill="none" stroke="black"/>
                <path d="M 112,48 L 136,48" fill="none" stroke="black"/>
                <path d="M 80,64 L 112,64" fill="none" stroke="black"/>
                <path d="M 248,64 L 280,64" fill="none" stroke="black"/>
                <path d="M 424,64 L 456,64" fill="none" stroke="black"/>
                <path d="M 40,128 L 72,128" fill="none" stroke="black"/>
                <path d="M 120,128 L 152,128" fill="none" stroke="black"/>
                <path d="M 248,128 L 280,128" fill="none" stroke="black"/>
                <path d="M 384,128 L 416,128" fill="none" stroke="black"/>
                <path d="M 464,128 L 496,128" fill="none" stroke="black"/>
                <path d="M 432,144 L 448,144" fill="none" stroke="black"/>
                <path d="M 40,160 L 72,160" fill="none" stroke="black"/>
                <path d="M 120,160 L 152,160" fill="none" stroke="black"/>
                <path d="M 248,160 L 280,160" fill="none" stroke="black"/>
                <path d="M 384,160 L 416,160" fill="none" stroke="black"/>
                <path d="M 464,160 L 496,160" fill="none" stroke="black"/>
                <path d="M 40,224 L 72,224" fill="none" stroke="black"/>
                <path d="M 120,224 L 152,224" fill="none" stroke="black"/>
                <path d="M 248,224 L 280,224" fill="none" stroke="black"/>
                <path d="M 384,224 L 416,224" fill="none" stroke="black"/>
                <path d="M 464,224 L 496,224" fill="none" stroke="black"/>
                <path d="M 40,256 L 72,256" fill="none" stroke="black"/>
                <path d="M 120,256 L 152,256" fill="none" stroke="black"/>
                <path d="M 248,256 L 280,256" fill="none" stroke="black"/>
                <path d="M 384,256 L 416,256" fill="none" stroke="black"/>
                <path d="M 464,256 L 496,256" fill="none" stroke="black"/>
                <path d="M 48,304 L 128,304" fill="none" stroke="black"/>
                <path d="M 376,304 L 456,304" fill="none" stroke="black"/>
                <path d="M 32,320 L 64,320" fill="none" stroke="black"/>
                <path d="M 112,320 L 144,320" fill="none" stroke="black"/>
                <path d="M 248,320 L 280,320" fill="none" stroke="black"/>
                <path d="M 360,320 L 392,320" fill="none" stroke="black"/>
                <path d="M 440,320 L 472,320" fill="none" stroke="black"/>
                <path d="M 536,320 L 568,320" fill="none" stroke="black"/>
                <path d="M 32,352 L 64,352" fill="none" stroke="black"/>
                <path d="M 112,352 L 144,352" fill="none" stroke="black"/>
                <path d="M 248,352 L 280,352" fill="none" stroke="black"/>
                <path d="M 360,352 L 392,352" fill="none" stroke="black"/>
                <path d="M 440,352 L 472,352" fill="none" stroke="black"/>
                <path d="M 536,352 L 568,352" fill="none" stroke="black"/>
                <path d="M 32,416 L 64,416" fill="none" stroke="black"/>
                <path d="M 112,416 L 144,416" fill="none" stroke="black"/>
                <path d="M 248,416 L 280,416" fill="none" stroke="black"/>
                <path d="M 400,416 L 432,416" fill="none" stroke="black"/>
                <path d="M 536,416 L 568,416" fill="none" stroke="black"/>
                <path d="M 80,432 L 96,432" fill="none" stroke="black"/>
                <path d="M 232,432 L 248,432" fill="none" stroke="black"/>
                <path d="M 280,432 L 296,432" fill="none" stroke="black"/>
                <path d="M 376,432 L 400,432" fill="none" stroke="black"/>
                <path d="M 432,432 L 456,432" fill="none" stroke="black"/>
                <path d="M 32,448 L 64,448" fill="none" stroke="black"/>
                <path d="M 112,448 L 144,448" fill="none" stroke="black"/>
                <path d="M 248,448 L 280,448" fill="none" stroke="black"/>
                <path d="M 400,448 L 432,448" fill="none" stroke="black"/>
                <path d="M 536,448 L 568,448" fill="none" stroke="black"/>
                <path d="M 32,512 L 64,512" fill="none" stroke="black"/>
                <path d="M 112,512 L 144,512" fill="none" stroke="black"/>
                <path d="M 216,512 L 248,512" fill="none" stroke="black"/>
                <path d="M 280,512 L 312,512" fill="none" stroke="black"/>
                <path d="M 360,512 L 392,512" fill="none" stroke="black"/>
                <path d="M 440,512 L 472,512" fill="none" stroke="black"/>
                <path d="M 536,512 L 568,512" fill="none" stroke="black"/>
                <path d="M 32,544 L 64,544" fill="none" stroke="black"/>
                <path d="M 112,544 L 144,544" fill="none" stroke="black"/>
                <path d="M 216,544 L 248,544" fill="none" stroke="black"/>
                <path d="M 280,544 L 312,544" fill="none" stroke="black"/>
                <path d="M 360,544 L 392,544" fill="none" stroke="black"/>
                <path d="M 440,544 L 472,544" fill="none" stroke="black"/>
                <path d="M 536,544 L 568,544" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="464,304 452,298.4 452,309.6" fill="black" transform="rotate(0,456,304)"/>
                <polygon class="arrowhead" points="136,304 124,298.4 124,309.6" fill="black" transform="rotate(0,128,304)"/>
                <polygon class="arrowhead" points="16,528 4,522.4 4,533.6" fill="black" transform="rotate(90,8,528)"/>
                <polygon class="arrowhead" points="16,240 4,234.4 4,245.6" fill="black" transform="rotate(90,8,240)"/>
                <circle cx="40" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="48" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="120" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="128" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="224" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="256" cy="48" r="6" class="closeddot" fill="black"/>
                <circle cx="256" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="288" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="368" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="392" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="448" cy="528" r="6" class="closeddot" fill="black"/>
                <circle cx="472" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="544" cy="432" r="6" class="closeddot" fill="black"/>
                <circle cx="544" cy="528" r="6" class="closeddot" fill="black"/>
                <g class="text">
                  <text x="96" y="52">C</text>
                  <text x="272" y="52">C</text>
                  <text x="404" y="52">:-</text>
                  <text x="440" y="52">C</text>
                  <text x="464" y="52">-</text>
                  <text x="480" y="52">:</text>
                  <text x="400" y="68">:</text>
                  <text x="480" y="68">:</text>
                  <text x="400" y="84">:</text>
                  <text x="480" y="84">:</text>
                  <text x="92" y="100">2a</text>
                  <text x="236" y="100">2b</text>
                  <text x="400" y="100">:</text>
                  <text x="444" y="100">3a</text>
                  <text x="480" y="100">:</text>
                  <text x="400" y="116">:</text>
                  <text x="480" y="116">:</text>
                  <text x="424" y="148">p</text>
                  <text x="456" y="148">p</text>
                  <text x="92" y="292">Core</text>
                  <text x="420" y="292">Core</text>
                  <text x="48" y="340">C</text>
                  <text x="80" y="340">-</text>
                  <text x="96" y="340">-</text>
                  <text x="128" y="340">C</text>
                  <text x="264" y="340">C</text>
                  <text x="376" y="340">C</text>
                  <text x="408" y="340">-</text>
                  <text x="424" y="340">-</text>
                  <text x="456" y="340">C</text>
                  <text x="552" y="340">C</text>
                  <text x="48" y="372">:</text>
                  <text x="92" y="372">3b</text>
                  <text x="128" y="372">:</text>
                  <text x="264" y="372">:</text>
                  <text x="300" y="372">4a</text>
                  <text x="376" y="372">:</text>
                  <text x="412" y="372">4b</text>
                  <text x="456" y="372">:</text>
                  <text x="528" y="372">5</text>
                  <text x="552" y="372">:</text>
                  <text x="48" y="388">:</text>
                  <text x="128" y="388">:</text>
                  <text x="264" y="388">:</text>
                  <text x="376" y="388">:</text>
                  <text x="456" y="388">:</text>
                  <text x="552" y="388">:</text>
                  <text x="48" y="404">:</text>
                  <text x="128" y="404">:</text>
                  <text x="264" y="404">:</text>
                  <text x="376" y="404">:</text>
                  <text x="456" y="404">:</text>
                  <text x="552" y="404">:</text>
                  <text x="380" y="420">:-</text>
                  <text x="452" y="420">-:</text>
                  <text x="72" y="436">p</text>
                  <text x="104" y="436">p</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
         +---+                +---+                 +---+
+     +--+ C +--+             +* C|              :- + C +- :
|     |  +---+  |             +-+-+              :  +---+  :
|     |         |               |                :         :
|     |   2a    |           2b  |                :    3a   :
|     |         |               |                :         :
|   +-+-+     +-+-+           +-+-+            +-+-+     +-+-+
|   |   |     |   |           |   |            |   +p---p+   |
|   +-+-+     +-+-+           +-+-+            +-+-+     +-+-+
|     |         |               |                |         |
|     |         |               |                |         |
|     |         |               |                |         |
|   +-+-+     +-+-+           +-+-+            +-+-+     +-+-+
v   |*  |     |*  |           |*  |            |*  |     |*  |
    +---+     +---+           +---+            +---+     +---+

         Core                                     Core
     ---------->                              ---------->
   +---+     +---+            +---+         +---+     +---+       +---+
+  + C + - - + C +            + C +         | C | - - | C |       | C |
|  +-+-+     +-+-+            +-+-+         +-+-+     +-+-+       +-+-+
|    :    3b   :                :   4a        :   4b    :        5  :
|    :         :                :             :         :           :
|    :         :                :             :         :           :
|  +---+     +-+-+            +-+-+           :- +---+ -:         +-+-+
|  |   +p---p+   |          +-+   +-+         +--+   +--+         |*  |
|  +-+-+     +-+-+          | +---+ |         |  +---+  |         +-+-+
|    |         |            |       |         |         |           |
|    |         |            |       |         |         |           |
|    |         |            |       |         |         |           |
|  +-+-+     +-+-+        +-+-+   +-+-+     +-+-+     +-+-+       +-+-+
v  |*  |     |*  |        |*  |   |*  |     |*  |     |*  |       |*  |
   +---+     +---+        +---+   +---+     +---+     +---+       +---+
]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><strong>Communication through a core AS with immediate combination</strong> (Cases 2a, 2b in <xref target="_figure-1bis"/>): The last AS on the up segment (which is necessarily a core AS) is the same as the first AS on the down segment. In this case, a simple combination of up and down segments creates a valid forwarding path. In Case 2b, only one segment is required.</t>
          </li>
          <li>
            <t><strong>Peering shortcut</strong> (Cases 3a and 3b): A peering link exists between the up and down segment, and extraneous path segments to the core are cut off. The up and down segments do not need to originate from the same core AS and the peering link could also be traversing to a different ISD.</t>
          </li>
          <li>
            <t><strong>AS shortcut</strong> (Cases 4a and 4b): The up and down segments intersect at a non-core AS below the ISD core, thus creating a shortcut. In this case, a shorter path is made possible by removing the extraneous part of the path to the core. Note that the up and down segments do not need to originate from the same core AS.</t>
          </li>
          <li>
            <t><strong>On-path</strong> (Case 5): In the case where the source's up segment contains the destination AS or the destination's down segment contains the source AS, a single segment is sufficient to construct a forwarding path. Again, no core AS is on the final path.</t>
          </li>
        </ul>
      </section>
      <section anchor="path-authorization">
        <name>Path Authorization</name>
        <t>The SCION Data Plane provides <em>path authorization</em>. This ensures that data packets always traverse the network using path segments that were explicitly authorized by the respective ASes and prevents endpoints from constructing unauthorized paths or paths containing loops. SCION uses symmetric cryptography in the form of Message Authentication Codes (MACs) to authenticate the information encoded in Hop Fields and such MACs are verified by routers at forwarding. For a detailed specification, see <xref target="path-auth"/>.</t>
      </section>
    </section>
    <section anchor="header">
      <name>SCION Header Specification</name>
      <t>The SCION packet header is aligned to 4 bytes and is composed of a common header, an address header, a path header, and an <bcp14>OPTIONAL</bcp14> extension header, see <xref target="_figure-2"/> below. The 4 byte alignment is to allow header length to be computed based on the <tt>HdrLen</tt> field (see <xref target="common-header"/>).</t>
      <figure anchor="_figure-2">
        <name>High-level SCION header structure, non-byte aligned</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="256" width="472" viewBox="0 0 472 256" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 8,32 L 8,224" fill="none" stroke="black"/>
              <path d="M 464,32 L 464,224" fill="none" stroke="black"/>
              <path d="M 8,32 L 464,32" fill="none" stroke="black"/>
              <path d="M 8,80 L 464,80" fill="none" stroke="black"/>
              <path d="M 8,128 L 464,128" fill="none" stroke="black"/>
              <path d="M 8,176 L 464,176" fill="none" stroke="black"/>
              <path d="M 8,224 L 464,224" fill="none" stroke="black"/>
              <g class="text">
                <text x="204" y="52">Common</text>
                <text x="260" y="52">header</text>
                <text x="208" y="100">Address</text>
                <text x="268" y="100">header</text>
                <text x="204" y="148">Path</text>
                <text x="252" y="148">header</text>
                <text x="168" y="196">Extension</text>
                <text x="236" y="196">header</text>
                <text x="308" y="196">(OPTIONAL)</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![CDATA[
+--------------------------------------------------------+
|                     Common header                      |
|                                                        |
+--------------------------------------------------------+
|                     Address header                     |
|                                                        |
+--------------------------------------------------------+
|                      Path header                       |
|                                                        |
+--------------------------------------------------------+
|               Extension header (OPTIONAL)              |
|                                                        |
+--------------------------------------------------------+

]]></artwork>
        </artset>
      </figure>
      <t>The <em>common header</em> contains important meta information including version number and the lengths of the header and payload. In particular, it contains flags that control the format of subsequent headers such as the address and path headers. For more details, see <xref target="common-header"/>.</t>
      <t>The <em>address header</em> contains the ISD, SCION AS and endpoint addresses of source and destination. The type and length of endpoint addresses are variable and can be set independently using flags in the common header. For more details, see <xref target="address-header"/>.</t>
      <t>The <em>path header</em> contains the full AS-level forwarding path of the packet. A path type field in the common header specifies the path format used in the path header. For more details, see <xref target="path-header"/>.</t>
      <t>The <bcp14>OPTIONAL</bcp14> <em>extension</em> header contains a variable number of hop-by-hop and end-to-end options, similar to extensions in the IPv6 header <xref target="RFC8200"/>. For more details, see <xref target="ext-header"/>.</t>
      <section anchor="common-header">
        <name>Common Header</name>
        <t>The SCION common header has the following packet format:</t>
        <figure anchor="_figure-3">
          <name>The SCION common header packet format</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="192" width="528" viewBox="0 0 528 192" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,160" fill="none" stroke="black"/>
                <path d="M 72,64 L 72,96" fill="none" stroke="black"/>
                <path d="M 136,96 L 136,160" fill="none" stroke="black"/>
                <path d="M 168,128 L 168,160" fill="none" stroke="black"/>
                <path d="M 200,64 L 200,96" fill="none" stroke="black"/>
                <path d="M 200,128 L 200,160" fill="none" stroke="black"/>
                <path d="M 232,128 L 232,160" fill="none" stroke="black"/>
                <path d="M 264,96 L 264,160" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,160" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                <path d="M 8,160 L 520,160" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="40" y="84">Version</text>
                  <text x="132" y="84">TrafficClass</text>
                  <text x="348" y="84">Flow</text>
                  <text x="392" y="84">Label</text>
                  <text x="72" y="116">NextHdr</text>
                  <text x="196" y="116">HdrLen</text>
                  <text x="388" y="116">PayloadLen</text>
                  <text x="76" y="148">PathType</text>
                  <text x="148" y="148">DT</text>
                  <text x="180" y="148">DL</text>
                  <text x="212" y="148">ST</text>
                  <text x="244" y="148">SL</text>
                  <text x="392" y="148">RSV</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| TrafficClass  |                Flow Label             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    NextHdr    |    HdrLen     |          PayloadLen           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    PathType   |DT |DL |ST |SL |              RSV              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><tt>Version</tt>: The version of the SCION common header. Currently, only version "0" is supported.</t>
          </li>
          <li>
            <t><tt>TrafficClass</tt>: The 8-bit long identifier of the packet's class or priority. The value of the traffic class bits in a received packet might differ from the value sent by the packet's source. The current use of the <tt>TrafficClass</tt> field for Differentiated Services and Explicit Congestion Notification is specified in <xref target="RFC2474"/> and <xref target="RFC3168"/>.</t>
          </li>
          <li>
            <t><tt>Flow Label</tt>: This 20-bit field labels sequences of packets to be treated in the network as a single flow. Sources <bcp14>MUST</bcp14> set this field which serves the same purpose as what <xref target="RFC6437"/> describes for IPv6 and is used in the same manner. Note that a Flow Label of zero does not imply that packet reordering is acceptable.</t>
          </li>
          <li>
            <t><tt>NextHdr</tt>: Encodes the type of the first header after the SCION header, which can be either a SCION extension or a Layer 4 protocol such as TCP or UDP. Values of this field respect the Assigned SCION Protocol Numbers (see <xref target="protnum"/>).</t>
          </li>
          <li>
            <t><tt>HdrLen</tt>: Specifies the entire length of the SCION header in bytes - i.e., the sum of the lengths of the common header, the address header, and the path header. The SCION header is aligned to a multiple of 4 bytes. The SCION header length is computed as <tt>HdrLen</tt> * 4 bytes. The 8 bits of the <tt>HdrLen</tt> field limit the SCION header to a maximum of 255 * 4 = 1020 bytes.</t>
          </li>
          <li>
            <t><tt>PayloadLen</tt>: Specifies the length of the payload in bytes. The payload includes (SCION) extension headers and the L4 payload. This field is 16 bits long, supporting a maximum payload size of 65'535 bytes.</t>
          </li>
          <li>
            <t><tt>PathType</tt>: Specifies the type of the SCION path. It is described in <xref target="path-type-field"/>.</t>
          </li>
          <li>
            <t><tt>DT/DL/ST/SL</tt> (Address Type And Length): Define the endpoint address type and length. They are described in <xref target="addr-type-length-field"/>.</t>
          </li>
          <li>
            <t><tt>RSV</tt>: These bits are currently reserved for future use.</t>
          </li>
        </ul>
        <section anchor="path-type-field">
          <name>Path Type Field</name>
          <table anchor="_table-1">
            <name>Currently defined SCION path types</name>
            <thead>
              <tr>
                <th align="left">Value</th>
                <th align="left">Path Type</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">Empty path (<tt>EmptyPath</tt>)</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">SCION (<tt>SCION</tt>)</td>
              </tr>
              <tr>
                <td align="left">2</td>
                <td align="left">One-hop path (<tt>OneHopPath</tt>)</td>
              </tr>
              <tr>
                <td align="left">3</td>
                <td align="left">EPIC path (experimental)</td>
              </tr>
              <tr>
                <td align="left">4</td>
                <td align="left">COLIBRI path (experimental)</td>
              </tr>
            </tbody>
          </table>
          <t>The Path Type field determines the type of the SCION path and it is 8 bits long. The format of one path type is independent of all other path types. This document only specifies the Empty, SCION and OneHopPath path types and the other path types are currently experimental. For more details, see <xref target="path-header"/>.</t>
        </section>
        <section anchor="addr-type-length-field">
          <name>Address Type And Length Fields</name>
          <t>These fields, also abbreviated <tt>DT/DL/ST/SL</tt>, define the endpoint address type and endpoint address length for the source and destination endpoint.</t>
          <t>The possible endpoint address length values are:</t>
          <table anchor="_table-2">
            <name>Address length values. `DL` and `SL` stand for Destination Length and Source Length.</name>
            <thead>
              <tr>
                <th align="left">DL/SL Value</th>
                <th align="left">Address Length</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">4 bytes</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">8 bytes</td>
              </tr>
              <tr>
                <td align="left">2</td>
                <td align="left">12 bytes</td>
              </tr>
              <tr>
                <td align="left">3</td>
                <td align="left">16 bytes</td>
              </tr>
            </tbody>
          </table>
          <t>If an address has a length different from the supported values, the next larger size <bcp14>SHALL</bcp14> be used and the address can be padded with zeros.</t>
          <t>The "type" identifier is only defined in combination with a specific address length. Per address length, several sub-types are possible. The currently assigned combinations of lengths and types are:</t>
          <table anchor="_table-3">
            <name>Allocations of length and type combinations. `DT` and `ST` stand for Destination Type and Source Type respectively.</name>
            <thead>
              <tr>
                <th align="left">Type (DT/ST)</th>
                <th align="left">Length (DL/SL)</th>
                <th align="left">Conventional Use</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">0</td>
                <td align="left">IPv4</td>
              </tr>
              <tr>
                <td align="left">0</td>
                <td align="left">3</td>
                <td align="left">IPv6</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">0</td>
                <td align="left">Service</td>
              </tr>
              <tr>
                <td align="left">other</td>
                <td align="left">other</td>
                <td align="left">Unassigned</td>
              </tr>
            </tbody>
          </table>
          <t>Service addresses are described in <xref target="service-addresses"/>.</t>
        </section>
      </section>
      <section anchor="address-header">
        <name>Address Header</name>
        <t>The SCION address header has the following format:</t>
        <figure anchor="_figure-4">
          <name>The SCION address header packet format</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="288" width="528" viewBox="0 0 528 288" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,256" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                <path d="M 264,128 L 264,160" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,256" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 264,96" fill="none" stroke="black"/>
                <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                <path d="M 8,160 L 264,160" fill="none" stroke="black"/>
                <path d="M 8,192 L 520,192" fill="none" stroke="black"/>
                <path d="M 8,224 L 520,224" fill="none" stroke="black"/>
                <path d="M 8,256 L 520,256" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="132" y="84">DstISD</text>
                  <text x="264" y="116">DstAS</text>
                  <text x="132" y="148">SrcISD</text>
                  <text x="264" y="180">SrcAS</text>
                  <text x="216" y="212">DstHostAddr</text>
                  <text x="272" y="212">(</text>
                  <text x="316" y="212">variable</text>
                  <text x="372" y="212">Len.</text>
                  <text x="400" y="212">)</text>
                  <text x="216" y="244">SrcHostAddr</text>
                  <text x="272" y="244">(</text>
                  <text x="316" y="244">variable</text>
                  <text x="372" y="244">Len.</text>
                  <text x="400" y="244">)</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            DstISD             |                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                             DstAS                             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            SrcISD             |                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                             SrcAS                             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    DstHostAddr ( variable Len. )              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    SrcHostAddr ( variable Len. )              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><tt>DstISD, SrcISD</tt>: The 16-bit ISD identifier of the destination/source.</t>
          </li>
          <li>
            <t><tt>DstAS, SrcAS</tt>: The 48-bit SCION AS identifier of the destination/source.</t>
          </li>
          <li>
            <t><tt>DstHostAddr, SrcHostAddr</tt>: Specifies the variable length endpoint address of the destination/source. The accepted type and length are defined in the <tt>DT/DL/ST/SL</tt> fields of the common header.</t>
          </li>
        </ul>
      </section>
      <section anchor="service-addresses">
        <name>Service Addresses</name>
        <t>A service address designates a set of endpoint addresses rather than a single one. A packet addressed to a service is redirected to any one endpoint address that is known to be part of the set.
If a service address is implied by the <tt>DT/DL</tt> or <tt>ST/SL</tt> field of the common header according to <xref target="_table-3"/>, the corresponding address field has the following format:</t>
        <figure anchor="_figure-20">
          <name>Service address format</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="128" width="528" viewBox="0 0 528 128" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,96" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,96" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="112" y="84">Service</text>
                  <text x="172" y="84">Number</text>
                  <text x="392" y="84">RSV</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         Service Number        |              RSV              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><tt>RSV</tt>: reserved for future use</t>
          </li>
        </ul>
        <t>The currently known service numbers are:</t>
        <table anchor="_table-4">
          <name>Known Service Numbers</name>
          <thead>
            <tr>
              <th align="left">Service Number (hex)</th>
              <th align="left">Short Name</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0001</td>
              <td align="left">DS</td>
              <td align="left">Discovery Service</td>
            </tr>
            <tr>
              <td align="left">0002</td>
              <td align="left">CS</td>
              <td align="left">Control Service</td>
            </tr>
            <tr>
              <td align="left">FFFF</td>
              <td align="left">None</td>
              <td align="left">Reserved invalid value</td>
            </tr>
          </tbody>
        </table>
        <t>For more information on addressing, see <xref target="I-D.dekater-scion-controlplane"/>.</t>
      </section>
      <section anchor="path-header">
        <name>Path Header</name>
        <t>The path header of a SCION packet differs for each SCION path type. The path type is set in the <tt>PathType</tt> field of the SCION common header.</t>
        <t>SCION supports three path types:</t>
        <section anchor="empty">
          <name>Empty Path Type</name>
          <t>The <tt>Empty</tt> path type (<tt>PathType=0</tt>) is used to send traffic within an AS. It has no additional fields - i.e., it consumes 0 bytes on the wire.</t>
          <t>One use case of the <tt>Empty</tt> path type lies in the context of <xref target="scion-bfd">link-failure detection</xref>.</t>
        </section>
        <section anchor="scion-path-type">
          <name>SCION Path Type</name>
          <t>The <tt>SCION</tt> path type (<tt>PathType=1</tt>) is the standard path type. A SCION path has the following layout:</t>
          <figure anchor="_figure-5">
            <name>Layout of a standard SCION path</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="464" width="528" viewBox="0 0 528 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,64 L 8,432" fill="none" stroke="black"/>
                  <path d="M 520,64 L 520,432" fill="none" stroke="black"/>
                  <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                  <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                  <path d="M 8,144 L 520,144" fill="none" stroke="black"/>
                  <path d="M 8,192 L 520,192" fill="none" stroke="black"/>
                  <path d="M 8,240 L 520,240" fill="none" stroke="black"/>
                  <path d="M 8,304 L 520,304" fill="none" stroke="black"/>
                  <path d="M 8,368 L 520,368" fill="none" stroke="black"/>
                  <path d="M 8,432 L 520,432" fill="none" stroke="black"/>
                  <g class="text">
                    <text x="16" y="36">0</text>
                    <text x="176" y="36">1</text>
                    <text x="336" y="36">2</text>
                    <text x="496" y="36">3</text>
                    <text x="16" y="52">0</text>
                    <text x="32" y="52">1</text>
                    <text x="48" y="52">2</text>
                    <text x="64" y="52">3</text>
                    <text x="80" y="52">4</text>
                    <text x="96" y="52">5</text>
                    <text x="112" y="52">6</text>
                    <text x="128" y="52">7</text>
                    <text x="144" y="52">8</text>
                    <text x="160" y="52">9</text>
                    <text x="176" y="52">0</text>
                    <text x="192" y="52">1</text>
                    <text x="208" y="52">2</text>
                    <text x="224" y="52">3</text>
                    <text x="240" y="52">4</text>
                    <text x="256" y="52">5</text>
                    <text x="272" y="52">6</text>
                    <text x="288" y="52">7</text>
                    <text x="304" y="52">8</text>
                    <text x="320" y="52">9</text>
                    <text x="336" y="52">0</text>
                    <text x="352" y="52">1</text>
                    <text x="368" y="52">2</text>
                    <text x="384" y="52">3</text>
                    <text x="400" y="52">4</text>
                    <text x="416" y="52">5</text>
                    <text x="432" y="52">6</text>
                    <text x="448" y="52">7</text>
                    <text x="464" y="52">8</text>
                    <text x="480" y="52">9</text>
                    <text x="496" y="52">0</text>
                    <text x="512" y="52">1</text>
                    <text x="264" y="84">PathMetaHdr</text>
                    <text x="264" y="116">InfoField</text>
                    <text x="264" y="164">...</text>
                    <text x="264" y="212">InfoField</text>
                    <text x="260" y="260">HopField</text>
                    <text x="260" y="324">HopField</text>
                    <text x="264" y="388">...</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          PathMetaHdr                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           InfoField                           |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              ...                              |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           InfoField                           |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           HopField                            |
|                                                               |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           HopField                            |
|                                                               |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              ...                              |
|                                                               |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
            </artset>
          </figure>
          <t>It consists of a path meta header, up to 3 Info Fields and up to 64 Hop Fields.</t>
          <ul spacing="normal">
            <li>
              <t><tt>PathMetaHdr</tt> indicates the currently valid Info Field and Hop Field while the packet is traversing the network along the path, as well as the number of Hop Fields per segment.</t>
            </li>
            <li>
              <t><tt>InfoField</tt> equals the number of path segments that the path contains - there is one Info Field per path segment. Each Info Field contains basic information about the corresponding segment, such as a timestamp indicating the creation time. There are also two flags: one specifies whether the segment is to be traversed in construction direction, the other whether the first or last Hop Field in the segment represents a peering Hop Field.</t>
            </li>
            <li>
              <t><tt>HopField</tt> represents a hop through an AS on the path, with the ingress and egress interface identifiers for this AS. A Message Authentication Code (MAC) authenticates this information to prevent forgery.</t>
            </li>
          </ul>
          <t>The SCION header is created by extracting the required Info Fields and Hop Fields from the corresponding path segments, and this process is illustrated in <xref target="_figure-6"/> below. Note that ASes at the intersection of multiple segments are represented by two Hop Fields. Be aware that these Hop Fields are not equal!</t>
          <t>The Hop Field that represents the last Hop in the first segment (seen in the direction of travel) specifies only the ingress interface. However, in the hop Field that represents the first hop in the second segment (also in the direction of travel), only the egress interface will be defined. Thus, the two Hop Fields for this one AS build a full hop through the AS, specifying both the ingress and egress interface. As such, they bring the two adjacent segments together.</t>
          <figure anchor="_figure-6">
            <name>Path construction example</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="656" width="504" viewBox="0 0 504 656" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,48 L 8,208" fill="none" stroke="black"/>
                  <path d="M 24,64 L 24,192" fill="none" stroke="black"/>
                  <path d="M 72,64 L 72,192" fill="none" stroke="black"/>
                  <path d="M 88,48 L 88,72" fill="none" stroke="black"/>
                  <path d="M 88,184 L 88,208" fill="none" stroke="black"/>
                  <path d="M 112,176 L 112,432" fill="none" stroke="black"/>
                  <path d="M 128,144 L 128,400" fill="none" stroke="black"/>
                  <path d="M 144,112 L 144,368" fill="none" stroke="black"/>
                  <path d="M 160,80 L 160,272" fill="none" stroke="black"/>
                  <path d="M 184,48 L 184,176" fill="none" stroke="black"/>
                  <path d="M 184,208 L 184,264" fill="none" stroke="black"/>
                  <path d="M 184,280 L 184,360" fill="none" stroke="black"/>
                  <path d="M 184,440 L 184,624" fill="none" stroke="black"/>
                  <path d="M 200,64 L 200,160" fill="none" stroke="black"/>
                  <path d="M 200,224 L 200,608" fill="none" stroke="black"/>
                  <path d="M 248,64 L 248,160" fill="none" stroke="black"/>
                  <path d="M 248,224 L 248,608" fill="none" stroke="black"/>
                  <path d="M 264,48 L 264,72" fill="none" stroke="black"/>
                  <path d="M 264,152 L 264,176" fill="none" stroke="black"/>
                  <path d="M 264,208 L 264,296" fill="none" stroke="black"/>
                  <path d="M 264,344 L 264,456" fill="none" stroke="black"/>
                  <path d="M 264,600 L 264,624" fill="none" stroke="black"/>
                  <path d="M 288,80 L 288,104" fill="none" stroke="black"/>
                  <path d="M 288,152 L 288,304" fill="none" stroke="black"/>
                  <path d="M 304,112 L 304,136" fill="none" stroke="black"/>
                  <path d="M 304,152 L 304,328" fill="none" stroke="black"/>
                  <path d="M 304,344 L 304,464" fill="none" stroke="black"/>
                  <path d="M 320,144 L 320,328" fill="none" stroke="black"/>
                  <path d="M 320,344 L 320,496" fill="none" stroke="black"/>
                  <path d="M 344,48 L 344,208" fill="none" stroke="black"/>
                  <path d="M 360,64 L 360,192" fill="none" stroke="black"/>
                  <path d="M 408,64 L 408,192" fill="none" stroke="black"/>
                  <path d="M 424,48 L 424,72" fill="none" stroke="black"/>
                  <path d="M 424,184 L 424,208" fill="none" stroke="black"/>
                  <path d="M 448,80 L 448,104" fill="none" stroke="black"/>
                  <path d="M 448,184 L 448,336" fill="none" stroke="black"/>
                  <path d="M 464,112 L 464,136" fill="none" stroke="black"/>
                  <path d="M 464,184 L 464,528" fill="none" stroke="black"/>
                  <path d="M 480,144 L 480,168" fill="none" stroke="black"/>
                  <path d="M 480,184 L 480,560" fill="none" stroke="black"/>
                  <path d="M 496,176 L 496,592" fill="none" stroke="black"/>
                  <path d="M 8,48 L 88,48" fill="none" stroke="black"/>
                  <path d="M 184,48 L 264,48" fill="none" stroke="black"/>
                  <path d="M 344,48 L 424,48" fill="none" stroke="black"/>
                  <path d="M 24,64 L 72,64" fill="none" stroke="black"/>
                  <path d="M 200,64 L 248,64" fill="none" stroke="black"/>
                  <path d="M 360,64 L 408,64" fill="none" stroke="black"/>
                  <path d="M 80,80 L 160,80" fill="none" stroke="black"/>
                  <path d="M 256,80 L 288,80" fill="none" stroke="black"/>
                  <path d="M 416,80 L 448,80" fill="none" stroke="black"/>
                  <path d="M 24,96 L 72,96" fill="none" stroke="black"/>
                  <path d="M 200,96 L 248,96" fill="none" stroke="black"/>
                  <path d="M 360,96 L 408,96" fill="none" stroke="black"/>
                  <path d="M 80,112 L 144,112" fill="none" stroke="black"/>
                  <path d="M 256,112 L 304,112" fill="none" stroke="black"/>
                  <path d="M 416,112 L 464,112" fill="none" stroke="black"/>
                  <path d="M 24,128 L 72,128" fill="none" stroke="black"/>
                  <path d="M 200,128 L 248,128" fill="none" stroke="black"/>
                  <path d="M 360,128 L 408,128" fill="none" stroke="black"/>
                  <path d="M 80,144 L 128,144" fill="none" stroke="black"/>
                  <path d="M 256,144 L 320,144" fill="none" stroke="black"/>
                  <path d="M 416,144 L 480,144" fill="none" stroke="black"/>
                  <path d="M 24,160 L 72,160" fill="none" stroke="black"/>
                  <path d="M 200,160 L 248,160" fill="none" stroke="black"/>
                  <path d="M 360,160 L 408,160" fill="none" stroke="black"/>
                  <path d="M 80,176 L 112,176" fill="none" stroke="black"/>
                  <path d="M 184,176 L 264,176" fill="none" stroke="black"/>
                  <path d="M 416,176 L 496,176" fill="none" stroke="black"/>
                  <path d="M 24,192 L 72,192" fill="none" stroke="black"/>
                  <path d="M 360,192 L 408,192" fill="none" stroke="black"/>
                  <path d="M 8,208 L 88,208" fill="none" stroke="black"/>
                  <path d="M 184,208 L 264,208" fill="none" stroke="black"/>
                  <path d="M 344,208 L 424,208" fill="none" stroke="black"/>
                  <path d="M 200,224 L 248,224" fill="none" stroke="black"/>
                  <path d="M 200,256 L 248,256" fill="none" stroke="black"/>
                  <path d="M 160,272 L 192,272" fill="none" stroke="black"/>
                  <path d="M 200,288 L 248,288" fill="none" stroke="black"/>
                  <path d="M 256,304 L 288,304" fill="none" stroke="black"/>
                  <path d="M 200,320 L 248,320" fill="none" stroke="black"/>
                  <path d="M 256,336 L 448,336" fill="none" stroke="black"/>
                  <path d="M 200,352 L 248,352" fill="none" stroke="black"/>
                  <path d="M 144,368 L 192,368" fill="none" stroke="black"/>
                  <path d="M 200,384 L 248,384" fill="none" stroke="black"/>
                  <path d="M 128,400 L 192,400" fill="none" stroke="black"/>
                  <path d="M 200,416 L 248,416" fill="none" stroke="black"/>
                  <path d="M 112,432 L 192,432" fill="none" stroke="black"/>
                  <path d="M 200,448 L 248,448" fill="none" stroke="black"/>
                  <path d="M 256,464 L 304,464" fill="none" stroke="black"/>
                  <path d="M 200,480 L 248,480" fill="none" stroke="black"/>
                  <path d="M 256,496 L 320,496" fill="none" stroke="black"/>
                  <path d="M 200,512 L 248,512" fill="none" stroke="black"/>
                  <path d="M 256,528 L 464,528" fill="none" stroke="black"/>
                  <path d="M 200,544 L 248,544" fill="none" stroke="black"/>
                  <path d="M 256,560 L 480,560" fill="none" stroke="black"/>
                  <path d="M 200,576 L 248,576" fill="none" stroke="black"/>
                  <path d="M 256,592 L 496,592" fill="none" stroke="black"/>
                  <path d="M 200,608 L 248,608" fill="none" stroke="black"/>
                  <path d="M 184,624 L 264,624" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="264,592 252,586.4 252,597.6" fill="black" transform="rotate(180,256,592)"/>
                  <polygon class="arrowhead" points="264,560 252,554.4 252,565.6" fill="black" transform="rotate(180,256,560)"/>
                  <polygon class="arrowhead" points="264,528 252,522.4 252,533.6" fill="black" transform="rotate(180,256,528)"/>
                  <polygon class="arrowhead" points="264,496 252,490.4 252,501.6" fill="black" transform="rotate(180,256,496)"/>
                  <polygon class="arrowhead" points="264,464 252,458.4 252,469.6" fill="black" transform="rotate(180,256,464)"/>
                  <polygon class="arrowhead" points="264,336 252,330.4 252,341.6" fill="black" transform="rotate(180,256,336)"/>
                  <polygon class="arrowhead" points="264,304 252,298.4 252,309.6" fill="black" transform="rotate(180,256,304)"/>
                  <polygon class="arrowhead" points="200,432 188,426.4 188,437.6" fill="black" transform="rotate(0,192,432)"/>
                  <polygon class="arrowhead" points="200,400 188,394.4 188,405.6" fill="black" transform="rotate(0,192,400)"/>
                  <polygon class="arrowhead" points="200,368 188,362.4 188,373.6" fill="black" transform="rotate(0,192,368)"/>
                  <polygon class="arrowhead" points="200,272 188,266.4 188,277.6" fill="black" transform="rotate(0,192,272)"/>
                  <g class="text">
                    <text x="52" y="36">Up-Segment</text>
                    <text x="228" y="36">Core-Segment</text>
                    <text x="388" y="36">Down-Segment</text>
                    <text x="48" y="84">INF</text>
                    <text x="224" y="84">INF</text>
                    <text x="384" y="84">INF</text>
                    <text x="88" y="100">|</text>
                    <text x="264" y="100">|</text>
                    <text x="424" y="100">|</text>
                    <text x="44" y="116">HF</text>
                    <text x="220" y="116">HF</text>
                    <text x="380" y="116">HF</text>
                    <text x="88" y="132">|</text>
                    <text x="264" y="132">|</text>
                    <text x="288" y="132">|</text>
                    <text x="424" y="132">|</text>
                    <text x="448" y="132">|</text>
                    <text x="44" y="148">HF</text>
                    <text x="220" y="148">HF</text>
                    <text x="380" y="148">HF</text>
                    <text x="88" y="164">|</text>
                    <text x="424" y="164">|</text>
                    <text x="448" y="164">|</text>
                    <text x="464" y="164">|</text>
                    <text x="44" y="180">HF</text>
                    <text x="380" y="180">HF</text>
                    <text x="220" y="244">Meta</text>
                    <text x="224" y="276">INF</text>
                    <text x="224" y="308">INF</text>
                    <text x="264" y="324">|</text>
                    <text x="224" y="340">INF</text>
                    <text x="220" y="372">HF</text>
                    <text x="184" y="388">|</text>
                    <text x="220" y="404">HF</text>
                    <text x="184" y="420">|</text>
                    <text x="220" y="436">HF</text>
                    <text x="220" y="468">HF</text>
                    <text x="264" y="484">|</text>
                    <text x="84" y="500">Forwarding</text>
                    <text x="148" y="500">Path</text>
                    <text x="220" y="500">HF</text>
                    <text x="264" y="516">|</text>
                    <text x="220" y="532">HF</text>
                    <text x="264" y="548">|</text>
                    <text x="220" y="564">HF</text>
                    <text x="264" y="580">|</text>
                    <text x="220" y="596">HF</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
    Up-Segment           Core-Segment        Down-Segment
   +---------+           +---------+         +---------+
   | +-----+ |           | +-----+ |         | +-----+ |
   | | INF |----------+  | | INF |----+      | | INF |----+
   | +-----+ |        |  | +-----+ |  |      | +-----+ |  |
   | | HF  |--------+ |  | | HF  |------+    | | HF  |------+
   | +-----+ |      | |  | +-----+ |  | |    | +-----+ |  | |
   | | HF  |------+ | |  | | HF  |--------+  | | HF  |--------+
   | +-----+ |    | | |  | +-----+ |  | | |  | +-----+ |  | | |
   | | HF  |----+ | | |  +---------+  | | |  | | HF  |----------+
   | +-----+ |  | | | |               | | |  | +-----+ |  | | | |
   +---------+  | | | |  +---------+  | | |  +---------+  | | | |
                | | | |  | +-----+ |  | | |               | | | |
                | | | |  | |Meta | |  | | |               | | | |
                | | | |  | +-----+ |  | | |               | | | |
                | | | +--->| INF | |  | | |               | | | |
                | | |    | +-----+ |  | | |               | | | |
                | | |    | | INF |<---+ | |               | | | |
                | | |    | +-----+ |    | |               | | | |
                | | |    | | INF |<-----------------------+ | | |
                | | |    | +-----+ |    | |                 | | |
                | | +----->| HF  | |    | |                 | | |
                | |      | +-----+ |    | |                 | | |
                | +------->| HF  | |    | |                 | | |
                |        | +-----+ |    | |                 | | |
                +--------->| HF  | |    | |                 | | |
                         | +-----+ |    | |                 | | |
                         | | HF  |<-----+ |                 | | |
                         | +-----+ |      |                 | | |
        Forwarding Path  | | HF  |<-------+                 | | |
                         | +-----+ |                        | | |
                         | | HF  |<-------------------------+ | |
                         | +-----+ |                          | |
                         | | HF  |<---------------------------+ |
                         | +-----+ |                            |
                         | | HF  |<-----------------------------+
                         | +-----+ |
                         +---------+
]]></artwork>
            </artset>
          </figure>
          <section anchor="PathMetaHdr">
            <name>Path Meta Header Field</name>
            <t>The 4-byte Path Meta Header field (<tt>PathMetaHdr</tt>) defines meta information about the SCION path that is contained in the path header. It has the following format:</t>
            <figure anchor="_figure-7">
              <name>SCION path type - Format of the Path Meta Header field</name>
              <artset>
                <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="128" width="528" viewBox="0 0 528 128" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                    <path d="M 8,64 L 8,96" fill="none" stroke="black"/>
                    <path d="M 40,64 L 40,96" fill="none" stroke="black"/>
                    <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                    <path d="M 232,64 L 232,96" fill="none" stroke="black"/>
                    <path d="M 328,64 L 328,96" fill="none" stroke="black"/>
                    <path d="M 424,64 L 424,96" fill="none" stroke="black"/>
                    <path d="M 520,64 L 520,96" fill="none" stroke="black"/>
                    <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                    <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                    <g class="text">
                      <text x="16" y="36">0</text>
                      <text x="176" y="36">1</text>
                      <text x="336" y="36">2</text>
                      <text x="496" y="36">3</text>
                      <text x="16" y="52">0</text>
                      <text x="32" y="52">1</text>
                      <text x="48" y="52">2</text>
                      <text x="64" y="52">3</text>
                      <text x="80" y="52">4</text>
                      <text x="96" y="52">5</text>
                      <text x="112" y="52">6</text>
                      <text x="128" y="52">7</text>
                      <text x="144" y="52">8</text>
                      <text x="160" y="52">9</text>
                      <text x="176" y="52">0</text>
                      <text x="192" y="52">1</text>
                      <text x="208" y="52">2</text>
                      <text x="224" y="52">3</text>
                      <text x="240" y="52">4</text>
                      <text x="256" y="52">5</text>
                      <text x="272" y="52">6</text>
                      <text x="288" y="52">7</text>
                      <text x="304" y="52">8</text>
                      <text x="320" y="52">9</text>
                      <text x="336" y="52">0</text>
                      <text x="352" y="52">1</text>
                      <text x="368" y="52">2</text>
                      <text x="384" y="52">3</text>
                      <text x="400" y="52">4</text>
                      <text x="416" y="52">5</text>
                      <text x="432" y="52">6</text>
                      <text x="448" y="52">7</text>
                      <text x="464" y="52">8</text>
                      <text x="480" y="52">9</text>
                      <text x="496" y="52">0</text>
                      <text x="512" y="52">1</text>
                      <text x="28" y="84">CI</text>
                      <text x="84" y="84">CurrHF</text>
                      <text x="184" y="84">RSV</text>
                      <text x="280" y="84">Seg0Len</text>
                      <text x="376" y="84">Seg1Len</text>
                      <text x="472" y="84">Seg2Len</text>
                    </g>
                  </svg>
                </artwork>
                <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CI|  CurrHF   |    RSV    |  Seg0Len  |  Seg1Len  |  Seg2Len  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
              </artset>
            </figure>
            <ul spacing="normal">
              <li>
                <t><tt>CurrINF</tt> (shown as <tt>CI</tt> above): Specifies a 2-bits index (0-based) pointing to the current Info Field for the packet on its way through the network. For details, see <xref target="offset-calc"/> below.</t>
              </li>
              <li>
                <t><tt>CurrHF</tt>: Specifies a 6-bits index (0-based) pointing to the current Hop Field for the packet on its way through the network. For details, see <xref target="offset-calc"/> below. Note that the <tt>CurrHF</tt> index <bcp14>MUST</bcp14> point to a Hop Field that is part of the current path segment, as indicated by the <tt>CurrINF</tt> index.</t>
              </li>
            </ul>
            <t>Both indices are used by SCION routers when forwarding data traffic through the network. The SCION routers also increment the indexes if required. For more details, see <xref target="process-router"/>.</t>
            <ul spacing="normal">
              <li>
                <t><tt>Seg{0,1,2}Len</tt>: The number of Hop Fields in a given segment. Seg{i}Len &gt; 0 implies that segment <em>i</em> contains at least one Hop Field, which means that Info Field <em>i</em> exists. (If Seg{i}Len = 0 then segment <em>i</em> is empty, meaning that this path does not include segment <em>i</em>, and therefore there is no Info Field <em>i</em>.) The following rules apply:  </t>
                <ul spacing="normal">
                  <li>
                    <t>The total number of Hop Fields in an end-to-end path <bcp14>MUST</bcp14> be equal to the sum of all <tt>Seg{0,1,2}Len</tt> contained in this end-to-end path.</t>
                  </li>
                  <li>
                    <t>It is an error to have Seg{X}Len &gt; 0 AND Seg{Y}Len == 0, where 2 &gt;= <em>X</em> &gt; <em>Y</em> &gt;= 0. That is, if path segment Y is empty, the following path segment X <bcp14>MUST</bcp14> also be empty.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t><tt>RSV</tt>: Unused and reserved for future use.</t>
              </li>
            </ul>
          </section>
          <section anchor="offset-calc">
            <name>Path Offset Calculations</name>
            <t>Path offset calculations enable SCION border routers to locate the currently active Info Field and Hop Field during packet processing.</t>
            <t>The following rules apply when calculating the path offsets:</t>
            <artwork><![CDATA[
   if Seg2Len > 0: NumINF = 3
   else if Seg1Len > 0: NumINF = 2
   else if Seg0Len > 0: NumINF = 1
   else: invalid
]]></artwork>
            <t>The offsets of the current Info Field and current Hop Field (relative to the end of the address header) are now calculated as:</t>
            <artwork><![CDATA[
   B = byte
   InfoFieldOffset = 4B + 8B * CurrINF
   HopFieldOffset = 4B + 8B.NumINF + 12B * CurrHF
]]></artwork>
            <t>To check that the current Hop Field is in the segment of the current Info Field, the <tt>CurrHF</tt> needs to be compared to the <tt>SegLen</tt> fields of the current and preceding Info Fields.</t>
          </section>
          <section anchor="inffield">
            <name>Info Field</name>
            <t>The 8-byte Info Field (<tt>InfoField</tt>) has the following format:</t>
            <figure anchor="_figure-8">
              <name>SCION path type - Format of the Info Field</name>
              <artset>
                <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="528" viewBox="0 0 528 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                    <path d="M 8,64 L 8,128" fill="none" stroke="black"/>
                    <path d="M 104,64 L 104,96" fill="none" stroke="black"/>
                    <path d="M 120,64 L 120,96" fill="none" stroke="black"/>
                    <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                    <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                    <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
                    <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                    <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                    <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                    <g class="text">
                      <text x="16" y="36">0</text>
                      <text x="176" y="36">1</text>
                      <text x="336" y="36">2</text>
                      <text x="496" y="36">3</text>
                      <text x="16" y="52">0</text>
                      <text x="32" y="52">1</text>
                      <text x="48" y="52">2</text>
                      <text x="64" y="52">3</text>
                      <text x="80" y="52">4</text>
                      <text x="96" y="52">5</text>
                      <text x="112" y="52">6</text>
                      <text x="128" y="52">7</text>
                      <text x="144" y="52">8</text>
                      <text x="160" y="52">9</text>
                      <text x="176" y="52">0</text>
                      <text x="192" y="52">1</text>
                      <text x="208" y="52">2</text>
                      <text x="224" y="52">3</text>
                      <text x="240" y="52">4</text>
                      <text x="256" y="52">5</text>
                      <text x="272" y="52">6</text>
                      <text x="288" y="52">7</text>
                      <text x="304" y="52">8</text>
                      <text x="320" y="52">9</text>
                      <text x="336" y="52">0</text>
                      <text x="352" y="52">1</text>
                      <text x="368" y="52">2</text>
                      <text x="384" y="52">3</text>
                      <text x="400" y="52">4</text>
                      <text x="416" y="52">5</text>
                      <text x="432" y="52">6</text>
                      <text x="448" y="52">7</text>
                      <text x="464" y="52">8</text>
                      <text x="480" y="52">9</text>
                      <text x="496" y="52">0</text>
                      <text x="512" y="52">1</text>
                      <text x="56" y="84">RSV</text>
                      <text x="112" y="84">P</text>
                      <text x="128" y="84">C</text>
                      <text x="200" y="84">RSV</text>
                      <text x="384" y="84">Acc</text>
                      <text x="264" y="116">Timestamp</text>
                    </g>
                  </svg>
                </artwork>
                <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    RSV    |P|C|      RSV      |             Acc               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           Timestamp                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
              </artset>
            </figure>
            <ul spacing="normal">
              <li>
                <t><tt>RSV</tt>: Unused and reserved for future use.</t>
              </li>
              <li>
                <t><tt>P</tt>: Peering flag. If the flag has value "1", the segment represented by this Info Field contains a peering Hop Field, which requires special processing in the data plane. For more details, see <xref target="peerlink"/> and <xref target="packet-verif"/>.</t>
              </li>
              <li>
                <t><tt>C</tt>: Construction direction flag. If the flag has value "1", the Hop Fields in the segment represented by this Info Field are arranged in the direction they have been constructed during beaconing.</t>
              </li>
              <li>
                <t><tt>Acc</tt>: Accumulator. This updatable field/counter is <bcp14>REQUIRED</bcp14> for calculating the MAC in the data plane. For more details, see <xref target="auth-chained-macs"/>.</t>
              </li>
              <li>
                <t><tt>Timestamp</tt>: Timestamp created by the originator of the corresponding beacon. The timestamp is defined as the seconds since Epoch according to <xref target="POSIX.1-2024"/> Section 4.19, encoded as a 32-bit unsigned integer. This timestamp enables the validation of a Hop Field in the segment represented by this Info Field, by verifying the expiration time and MAC set in the Hop Field - the expiration time of a Hop Field is calculated relative to the timestamp. An Info field with a timestamp in the future is invalid, and for the purpose of validation, a timestamp is considered "future" if it is later than the locally available current time plus 337.5 seconds (i.e., the minimum time to live of a hop). This timestamp wraps around every 2^32 seconds (approximately 136 years) with the next wraparound occurring in year 2106. Care should be taken by implementations while computing validity during a wraparound.</t>
              </li>
            </ul>
          </section>
          <section anchor="hopfld">
            <name>Hop Field</name>
            <t>The 12-byte Hop Field (<tt>HopField</tt>) has the following format:</t>
            <figure anchor="_figure-9">
              <name>SCION path type - Format of the Hop Field</name>
              <artset>
                <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="192" width="528" viewBox="0 0 528 192" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                    <path d="M 8,64 L 8,160" fill="none" stroke="black"/>
                    <path d="M 104,64 L 104,96" fill="none" stroke="black"/>
                    <path d="M 120,64 L 120,96" fill="none" stroke="black"/>
                    <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                    <path d="M 264,64 L 264,128" fill="none" stroke="black"/>
                    <path d="M 520,64 L 520,160" fill="none" stroke="black"/>
                    <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                    <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                    <path d="M 8,128 L 264,128" fill="none" stroke="black"/>
                    <path d="M 8,160 L 520,160" fill="none" stroke="black"/>
                    <g class="text">
                      <text x="16" y="36">0</text>
                      <text x="176" y="36">1</text>
                      <text x="336" y="36">2</text>
                      <text x="496" y="36">3</text>
                      <text x="16" y="52">0</text>
                      <text x="32" y="52">1</text>
                      <text x="48" y="52">2</text>
                      <text x="64" y="52">3</text>
                      <text x="80" y="52">4</text>
                      <text x="96" y="52">5</text>
                      <text x="112" y="52">6</text>
                      <text x="128" y="52">7</text>
                      <text x="144" y="52">8</text>
                      <text x="160" y="52">9</text>
                      <text x="176" y="52">0</text>
                      <text x="192" y="52">1</text>
                      <text x="208" y="52">2</text>
                      <text x="224" y="52">3</text>
                      <text x="240" y="52">4</text>
                      <text x="256" y="52">5</text>
                      <text x="272" y="52">6</text>
                      <text x="288" y="52">7</text>
                      <text x="304" y="52">8</text>
                      <text x="320" y="52">9</text>
                      <text x="336" y="52">0</text>
                      <text x="352" y="52">1</text>
                      <text x="368" y="52">2</text>
                      <text x="384" y="52">3</text>
                      <text x="400" y="52">4</text>
                      <text x="416" y="52">5</text>
                      <text x="432" y="52">6</text>
                      <text x="448" y="52">7</text>
                      <text x="464" y="52">8</text>
                      <text x="480" y="52">9</text>
                      <text x="496" y="52">0</text>
                      <text x="512" y="52">1</text>
                      <text x="56" y="84">RSV</text>
                      <text x="112" y="84">I</text>
                      <text x="128" y="84">E</text>
                      <text x="200" y="84">ExpTime</text>
                      <text x="400" y="84">ConsIngress</text>
                      <text x="116" y="116">ConsEgress</text>
                      <text x="264" y="148">MAC</text>
                    </g>
                  </svg>
                </artwork>
                <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    RSV    |I|E|    ExpTime    |           ConsIngress         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ConsEgress             |                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                              MAC                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
              </artset>
            </figure>
            <ul spacing="normal">
              <li>
                <t><tt>RSV</tt>: Unused and reserved for future use.</t>
              </li>
              <li>
                <t><tt>I</tt>: The Ingress Router Alert flag. If this has value "1" and the packet is received on the interface with ID corresponding to the value of <tt>ConsIngress</tt>, the router <bcp14>SHOULD</bcp14> process the L4 payload in the packet.</t>
              </li>
              <li>
                <t><tt>E</tt>: The Egress Router Alert flag. If this has value "1" and the packet is received on the interface with ID corresponding to the value of <tt>ConsEgress</tt>, the router <bcp14>SHOULD</bcp14> process the L4 payload in the packet.</t>
              </li>
              <li>
                <t><tt>ExpTime</tt>: Expiration time of a Hop Field. This field is 1-byte long, and the expiration time specified in this field is relative and expressed in units of 256th of a day. An absolute expiration time in seconds is computed in combination with the <tt>Timestamp</tt> field (from the corresponding Info Field), as follows:  </t>
                <ul spacing="normal">
                  <li>
                    <t><tt>Timestamp</tt> + (1 + <tt>ExpTime</tt>) * (86400/256)</t>
                  </li>
                </ul>
              </li>
              <li>
                <t><tt>ConsIngress</tt>, <tt>ConsEgress</tt>: The 16-bits ingress/egress Interface IDs in construction direction, that is, the direction of beaconing.</t>
              </li>
              <li>
                <t><tt>MAC</tt>: The 6-byte Message Authentication Code to authenticate the Hop Field. For details on how this MAC is calculated, see <xref target="hf-mac-overview"/>.</t>
              </li>
            </ul>
            <t>The Ingress Router (respectively Egress Router) is the router owning the Ingress interface (respectively Egress interface) when the packet is traveling in the <em>construction direction</em> of the path segment (i.e., the direction of beaconing). When the packet is traveling in the opposite direction, the meanings are reversed.</t>
            <t>Router alert flags work similarly to <xref target="RFC2711"/> and allow a sender to address a specific router on the path without knowing its address. Processing the Layer 4 payload in the packet means that the router will treat the payload of the packet as a message to itself and parse it according to the value of the <tt>NextHdr</tt> field. Such messages include Traceroute Requests (see 'SCMP/Traceroute request' in <xref target="I-D.dekater-scion-controlplane"/>).</t>
            <t>Setting multiple router alert flags on a path <bcp14>SHOULD</bcp14> be avoided. This is because the router for which the corresponding Router Alert flag is set to "1" may process the request without further forwarding it along the path. Use cases that require multiple routers/hops on the path to process a packet <bcp14>SHOULD</bcp14> rely on a hop-by-hop extension (see <xref target="ext-header"/>).</t>
          </section>
        </section>
        <section anchor="onehop">
          <name>One-Hop Path Type</name>
          <t>Bootstrapping beaconing between neighboring ASes relies on the <tt>OneHopPath</tt> path type (<tt>PathType=2</tt>). This is necessary as neighbor ASes do not have a forwarding path before beaconing is started.</t>
          <t>A one-hop path has exactly one Info Field and two Hop Fields. Any entity with access to the AS forwarding key can create a valid info and Hop Field as described in <xref target="inffield"/> and <xref target="hopfld"/> respectively. The second Hop Field is created by the ingress SCION border router of the neighboring AS while processing the one-hop path. The appropriate Hop Field can be processed by a border router based on the source and destination address. In this context, the following rules apply:</t>
          <ul spacing="normal">
            <li>
              <t>At the source endpoint AS, <em>CurrHF := 0</em>.</t>
            </li>
            <li>
              <t>At the destination endpoint AS, <em>CurrHF := 1</em>.</t>
            </li>
          </ul>
          <t>Upon receiving a packet containing a one-hop path, the ingress border router of the destination AS fills in the <tt>ConsIngress</tt> field in the second Hop Field of the one-hop path with the ingress interface ID. It sets the <tt>ConsEgress</tt> field to the unspecified value 0, ensuring the path cannot be used beyond the destination AS. Then it calculates and appends the appropriate MAC for the Hop Field.</t>
        </section>
        <section anchor="reverse">
          <name>Path Reversal</name>
          <t>When a destination endpoint receives a SCION packet, it <bcp14>MAY</bcp14> use the path information in the SCION header for sending the reply packets. To reverse a path, the destination endpoint <bcp14>MUST</bcp14> perform the following steps:</t>
          <ol spacing="normal" type="1"><li>
              <t>Reverse the order of the Info Fields;</t>
            </li>
            <li>
              <t>Reverse the order of the Hop Fields;</t>
            </li>
            <li>
              <t>For each Info Field, negate the construction direction flag <tt>C</tt>; do not change the accumulator field <tt>Acc</tt>.</t>
            </li>
            <li>
              <t>In the <tt>PathMetaHdr</tt> field:  </t>
              <ul spacing="normal">
                <li>
                  <t>Set the <tt>CurrINF</tt> and <tt>CurrHF</tt> to "0".</t>
                </li>
                <li>
                  <t>Reverse the order of the non-zero <tt>SegLen</tt> fields.</t>
                </li>
              </ul>
            </li>
          </ol>
          <t>Note that the destination endpoint, upon receiving a first packet, is not aware of the path MTU. When using a reversed path, it should use a mechanism to estimate its MTU (e.g., MTU discovery or estimate MTU from the largest packet received).</t>
        </section>
      </section>
      <section anchor="ext-header">
        <name>Extension Headers</name>
        <t>SCION provides two types of extension headers:</t>
        <ul spacing="normal">
          <li>
            <t>The Hop-by-Hop Options header carries <bcp14>OPTIONAL</bcp14> information that <bcp14>MAY</bcp14> be examined and processed by every SCION router along a packet's delivery path. The Hop-by-Hop Options header is identified by value "200" in the <tt>NextHdr</tt> field of the SCION common header (see <xref target="common-header"/>).</t>
          </li>
          <li>
            <t>The End-to-End Options header carries <bcp14>OPTIONAL</bcp14> information that <bcp14>MAY</bcp14> be examined and processed by the sender and/or the receiving endpoints of the packet. The End-to-End Options header is identified by value "201" in the <tt>NextHdr</tt> field of the SCION common header (see <xref target="common-header"/>).</t>
          </li>
        </ul>
        <t>If both headers are present, the Hop-by-Hop Options header <bcp14>MUST</bcp14> come before the End-to-End Options header.</t>
        <t>The SCION extension headers are defined and used based on and similar to the IPv6 extensions as specified in Section 4 of <xref target="RFC8200"/>. The SCION Hop-by-Hop Options header and End-to-End Options header resemble the IPv6 Hop-by-Hop Options Header (section 4.3 in the RFC) and Destination Options Header (section 4.6) respectively.</t>
        <t>The SCION Hop-by-Hop Options and End-to-End Options headers are aligned to 4 bytes and have the following format:</t>
        <figure anchor="_figure-11">
          <name>Extension headers: Options header</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="528" viewBox="0 0 528 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,128" fill="none" stroke="black"/>
                <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 264,96" fill="none" stroke="black"/>
                <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="72" y="84">NextHdr</text>
                  <text x="204" y="84">ExtLen</text>
                  <text x="392" y="84">Options</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    NextHdr    |     ExtLen    |            Options            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><tt>NextHdr</tt>: Unsigned 8-bit integer. Identifies the type of header immediately following the Hop-by-Hop/End-to-End Options header. Values of this field respect the Assigned SCION Protocol Numbers (see also <xref target="protnum"/>).</t>
          </li>
          <li>
            <t><tt>ExtLen</tt>: 8-bit unsigned integer. The length of the Hop-by-hop or End-to-end options header in 4-octet units, not including the first 4 octets. That is: <tt>ExtLen = uint8(((L + 2) / 4) - 1)</tt>, where <tt>L</tt> is the size of the header in bytes, assuming that <tt>L + 2</tt> is a multiple of 4.</t>
          </li>
          <li>
            <t><tt>Options</tt>: This is a variable-length field. The length of this field <bcp14>MUST</bcp14> be such that the complete length of the Hop-by-Hop/End-to-End Options header is an integer multiple of 4 bytes. This can be achieved by using options of type 0 or 1 (see <xref target="_table-4"/>). The <tt>Options</tt> field contains one or more Type-Length-Value (TLV) encoded options. For details, see <xref target="optfld"/>.</t>
          </li>
        </ul>
        <section anchor="optfld">
          <name>Options Field</name>
          <t>The <tt>Options</tt> field of the Hop-by-Hop Options and the End-to-End Options headers carries a variable number of options that are type-length-value (TLV) encoded. Each TLV-encoded option has the following format:</t>
          <figure anchor="_figure-12">
            <name>Options field: TLV-encoded options</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="528" viewBox="0 0 528 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,64 L 8,128" fill="none" stroke="black"/>
                  <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                  <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                  <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
                  <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                  <path d="M 8,96 L 264,96" fill="none" stroke="black"/>
                  <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                  <g class="text">
                    <text x="16" y="36">0</text>
                    <text x="176" y="36">1</text>
                    <text x="336" y="36">2</text>
                    <text x="496" y="36">3</text>
                    <text x="16" y="52">0</text>
                    <text x="32" y="52">1</text>
                    <text x="48" y="52">2</text>
                    <text x="64" y="52">3</text>
                    <text x="80" y="52">4</text>
                    <text x="96" y="52">5</text>
                    <text x="112" y="52">6</text>
                    <text x="128" y="52">7</text>
                    <text x="144" y="52">8</text>
                    <text x="160" y="52">9</text>
                    <text x="176" y="52">0</text>
                    <text x="192" y="52">1</text>
                    <text x="208" y="52">2</text>
                    <text x="224" y="52">3</text>
                    <text x="240" y="52">4</text>
                    <text x="256" y="52">5</text>
                    <text x="272" y="52">6</text>
                    <text x="288" y="52">7</text>
                    <text x="304" y="52">8</text>
                    <text x="320" y="52">9</text>
                    <text x="336" y="52">0</text>
                    <text x="352" y="52">1</text>
                    <text x="368" y="52">2</text>
                    <text x="384" y="52">3</text>
                    <text x="400" y="52">4</text>
                    <text x="416" y="52">5</text>
                    <text x="432" y="52">6</text>
                    <text x="448" y="52">7</text>
                    <text x="464" y="52">8</text>
                    <text x="480" y="52">9</text>
                    <text x="496" y="52">0</text>
                    <text x="512" y="52">1</text>
                    <text x="72" y="84">OptType</text>
                    <text x="196" y="84">OptDataLen</text>
                    <text x="392" y="84">OptData</text>
                    <text x="256" y="116">.</text>
                    <text x="272" y="116">.</text>
                    <text x="288" y="116">.</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    OptType    |  OptDataLen   |            OptData            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
|                              . . .                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
            </artset>
          </figure>
          <ul spacing="normal">
            <li>
              <t><tt>OptType</tt>: 8-bit identifier of the type of option. The following option types are assigned to the SCION HBH/E2E Options header:</t>
            </li>
          </ul>
          <table anchor="_table-5">
            <name>Option types of SCION Options header</name>
            <thead>
              <tr>
                <th align="left">Decimal</th>
                <th align="left">Option Type</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">Pad1 (see <xref target="pad1"/>)</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">PadN (see <xref target="padn"/>)</td>
              </tr>
              <tr>
                <td align="left">2</td>
                <td align="left">SCION Packet Authenticator Option.<br/> Only used by the End-to-End Options header (experimental).</td>
              </tr>
              <tr>
                <td align="left">253</td>
                <td align="left">Used for experimentation and testing</td>
              </tr>
              <tr>
                <td align="left">254</td>
                <td align="left">Used for experimentation and testing</td>
              </tr>
              <tr>
                <td align="left">255</td>
                <td align="left">Reserved</td>
              </tr>
            </tbody>
          </table>
          <ul spacing="normal">
            <li>
              <t><tt>OptDataLen</tt>: Unsigned 8-bit integer denoting the length of the <tt>OptData</tt> field of this option in bytes.</t>
            </li>
            <li>
              <t><tt>OptData</tt>: Variable-length field. Option-type specific data.</t>
            </li>
          </ul>
          <t>The options within a header <bcp14>MUST</bcp14> be processed strictly in the order they appear in the header. This is to prevent a receiver from scanning through the header looking for a specific option and processing this option prior to all preceding ones.</t>
          <t>Individual options may have specific alignment requirements to ensure that multibyte values within the <tt>OptData</tt> fields have natural boundaries. The alignment requirement of an option is specified using the notation "xn+y". This means that the <tt>OptType</tt> <bcp14>MUST</bcp14> appear at an integer multiple of x bytes from the start of the header, plus y bytes. For example:</t>
          <ul spacing="normal">
            <li>
              <t><tt>2n</tt>: means any 2-bytes offset from the start of the header.</t>
            </li>
            <li>
              <t><tt>4n+2</tt>: means any 4-bytes offset from the start of the header, plus 2 bytes.</t>
            </li>
          </ul>
          <t>There are two padding options to align subsequent options and to pad out the containing header to a multiple of 4 bytes in length. For details, see below. All SCION implementations <bcp14>MUST</bcp14> recognize these padding options.</t>
          <section anchor="pad1">
            <name>Pad1 Option</name>
            <t>Alignment requirement: none.</t>
            <figure anchor="_figure-13">
              <name>TLV-encoded options - Pad1 option</name>
              <artset>
                <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="128" width="520" viewBox="0 0 520 128" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                    <path d="M 8,64 L 8,96" fill="none" stroke="black"/>
                    <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                    <path d="M 8,64 L 136,64" fill="none" stroke="black"/>
                    <path d="M 8,96 L 136,96" fill="none" stroke="black"/>
                    <g class="text">
                      <text x="16" y="36">0</text>
                      <text x="176" y="36">1</text>
                      <text x="336" y="36">2</text>
                      <text x="496" y="36">3</text>
                      <text x="16" y="52">0</text>
                      <text x="32" y="52">1</text>
                      <text x="48" y="52">2</text>
                      <text x="64" y="52">3</text>
                      <text x="80" y="52">4</text>
                      <text x="96" y="52">5</text>
                      <text x="112" y="52">6</text>
                      <text x="128" y="52">7</text>
                      <text x="144" y="52">8</text>
                      <text x="160" y="52">9</text>
                      <text x="176" y="52">0</text>
                      <text x="192" y="52">1</text>
                      <text x="208" y="52">2</text>
                      <text x="224" y="52">3</text>
                      <text x="240" y="52">4</text>
                      <text x="256" y="52">5</text>
                      <text x="272" y="52">6</text>
                      <text x="288" y="52">7</text>
                      <text x="304" y="52">8</text>
                      <text x="320" y="52">9</text>
                      <text x="336" y="52">0</text>
                      <text x="352" y="52">1</text>
                      <text x="368" y="52">2</text>
                      <text x="384" y="52">3</text>
                      <text x="400" y="52">4</text>
                      <text x="416" y="52">5</text>
                      <text x="432" y="52">6</text>
                      <text x="448" y="52">7</text>
                      <text x="464" y="52">8</text>
                      <text x="480" y="52">9</text>
                      <text x="496" y="52">0</text>
                      <text x="512" y="52">1</text>
                      <text x="72" y="84">0</text>
                    </g>
                  </svg>
                </artwork>
                <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+
|       0       |
+-+-+-+-+-+-+-+-+

]]></artwork>
              </artset>
            </figure>
            <t><strong>Note:</strong> The format of the Pad1 option is a special case - it does not have length and value fields.</t>
            <t>The Pad1 option inserts 1 byte of padding into the <tt>Options</tt> field of an extension header. If more than one byte of padding is required, the PadN option <bcp14>MUST</bcp14> be used.</t>
          </section>
          <section anchor="padn">
            <name>PadN Option</name>
            <t>Alignment requirement: none.</t>
            <figure anchor="_figure-14">
              <name>TLV-encoded options - PadN option</name>
              <artset>
                <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="528" viewBox="0 0 528 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                    <path d="M 8,64 L 8,128" fill="none" stroke="black"/>
                    <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                    <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                    <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
                    <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                    <path d="M 8,96 L 264,96" fill="none" stroke="black"/>
                    <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                    <g class="text">
                      <text x="16" y="36">0</text>
                      <text x="176" y="36">1</text>
                      <text x="336" y="36">2</text>
                      <text x="496" y="36">3</text>
                      <text x="16" y="52">0</text>
                      <text x="32" y="52">1</text>
                      <text x="48" y="52">2</text>
                      <text x="64" y="52">3</text>
                      <text x="80" y="52">4</text>
                      <text x="96" y="52">5</text>
                      <text x="112" y="52">6</text>
                      <text x="128" y="52">7</text>
                      <text x="144" y="52">8</text>
                      <text x="160" y="52">9</text>
                      <text x="176" y="52">0</text>
                      <text x="192" y="52">1</text>
                      <text x="208" y="52">2</text>
                      <text x="224" y="52">3</text>
                      <text x="240" y="52">4</text>
                      <text x="256" y="52">5</text>
                      <text x="272" y="52">6</text>
                      <text x="288" y="52">7</text>
                      <text x="304" y="52">8</text>
                      <text x="320" y="52">9</text>
                      <text x="336" y="52">0</text>
                      <text x="352" y="52">1</text>
                      <text x="368" y="52">2</text>
                      <text x="384" y="52">3</text>
                      <text x="400" y="52">4</text>
                      <text x="416" y="52">5</text>
                      <text x="432" y="52">6</text>
                      <text x="448" y="52">7</text>
                      <text x="464" y="52">8</text>
                      <text x="480" y="52">9</text>
                      <text x="496" y="52">0</text>
                      <text x="512" y="52">1</text>
                      <text x="72" y="84">1</text>
                      <text x="196" y="84">OptDataLen</text>
                      <text x="392" y="84">OptData</text>
                      <text x="256" y="116">.</text>
                      <text x="272" y="116">.</text>
                      <text x="288" y="116">.</text>
                    </g>
                  </svg>
                </artwork>
                <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       1       |  OptDataLen   |            OptData            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                              . . .                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
              </artset>
            </figure>
            <t>The PadN option inserts two or more bytes of padding into the <tt>Options</tt> field of an extension header. For N bytes of padding, the <tt>OptDataLen</tt> field contains the value N-2, and the <tt>OptData</tt> consists of N-2 zero-valued bytes.</t>
          </section>
        </section>
      </section>
      <section anchor="pseudo">
        <name>Pseudo Header for Upper-Layer Checksum</name>
        <t>The SCION Data Plane does not provide payload integrity protection, as further clarified in <xref target="payload-integrity"/>.
Should any transport or other upper-layer protocols compute a checksum of the SCION header, then they <bcp14>SHOULD</bcp14> use the following pseudo header:</t>
        <figure anchor="_figure-15">
          <name>Layout of the pseudo header for the upper-layer checksum</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="624" viewBox="0 0 624 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,320" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                <path d="M 264,128 L 264,160" fill="none" stroke="black"/>
                <path d="M 392,288 L 392,320" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,320" fill="none" stroke="black"/>
                <path d="M 552,64 L 552,256" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 536,64 L 552,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 264,96" fill="none" stroke="black"/>
                <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                <path d="M 8,160 L 264,160" fill="none" stroke="black"/>
                <path d="M 8,192 L 520,192" fill="none" stroke="black"/>
                <path d="M 8,224 L 520,224" fill="none" stroke="black"/>
                <path d="M 8,256 L 520,256" fill="none" stroke="black"/>
                <path d="M 536,256 L 552,256" fill="none" stroke="black"/>
                <path d="M 8,288 L 520,288" fill="none" stroke="black"/>
                <path d="M 8,320 L 520,320" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="544,256 532,250.4 532,261.6" fill="black" transform="rotate(180,536,256)"/>
                <polygon class="arrowhead" points="544,64 532,58.4 532,69.6" fill="black" transform="rotate(180,536,64)"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="132" y="84">DstISD</text>
                  <text x="264" y="116">DstAS</text>
                  <text x="132" y="148">SrcISD</text>
                  <text x="584" y="148">SCION</text>
                  <text x="592" y="164">address</text>
                  <text x="264" y="180">SrcAS</text>
                  <text x="588" y="180">header</text>
                  <text x="216" y="212">DstHostAddr</text>
                  <text x="272" y="212">(</text>
                  <text x="316" y="212">variable</text>
                  <text x="372" y="212">Len.</text>
                  <text x="400" y="212">)</text>
                  <text x="216" y="244">SrcHostAddr</text>
                  <text x="272" y="244">(</text>
                  <text x="316" y="244">variable</text>
                  <text x="372" y="244">Len.</text>
                  <text x="400" y="244">)</text>
                  <text x="216" y="276">Upper-Layer</text>
                  <text x="292" y="276">Packet</text>
                  <text x="348" y="276">Length</text>
                  <text x="204" y="308">zero</text>
                  <text x="428" y="308">Next</text>
                  <text x="476" y="308">Header</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+
|            DstISD             |                               |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +   |
|                             DstAS                             |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |
|            SrcISD             |                               |   | SCION
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +   | address
|                             SrcAS                             |   | header
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |
|                    DstHostAddr ( variable Len. )              |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |
|                    SrcHostAddr ( variable Len. )              |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+
|                    Upper-Layer Packet Length                  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      zero                     |  Next Header  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t><tt>DstISD</tt>, <tt>SrcISD</tt>, <tt>DstAS</tt>, <tt>SrcAS</tt>, <tt>DstHostAddr</tt>, <tt>SrcHostAddr</tt>: These values are taken from the SCION address header.</t>
          </li>
          <li>
            <t><tt>Upper-Layer Packet Length</tt>: The length of the upper-layer header and data. Some upper-layer protocols define headers that carry the length information explicitly (e.g., UDP) and this information is used as the upper-layer packet length in the pseudo header for these protocols. The remaining protocols, which do not carry the length information directly, use the value from the <tt>PayloadLen</tt> field in the SCION common header, minus the sum of the extension header lengths.</t>
          </li>
          <li>
            <t><tt>Next Header</tt>: The protocol identifier associated with the upper-layer protocol (e.g., 17 for UDP - see also <xref target="protnum"/>). This field can differ from the <tt>NextHdr</tt> field in the SCION common header, if extensions are present.</t>
          </li>
        </ul>
        <t>This pseudo-header is used in current implementations of UDP on top of SCION. However, as checksums across layers are not recommended their use is discouraged in future revisions.</t>
      </section>
    </section>
    <section anchor="life-of-a-packet">
      <name>Life of a SCION Data Packet</name>
      <t>This section describes the life of a SCION packet: how it is created at its source endpoint, passes through a number of SCION routers, and finally reaches its destination endpoint.</t>
      <section anchor="example-topology">
        <name>Example Topology</name>
        <figure anchor="_figure-16">
          <name>Topology used in examples below.</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="448" width="528" viewBox="0 0 528 448" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,256 L 8,432" fill="none" stroke="black"/>
                <path d="M 56,320 L 56,352" fill="none" stroke="black"/>
                <path d="M 96,240 L 96,272" fill="none" stroke="black"/>
                <path d="M 112,160 L 112,240" fill="none" stroke="black"/>
                <path d="M 112,272 L 112,320" fill="none" stroke="black"/>
                <path d="M 128,240 L 128,272" fill="none" stroke="black"/>
                <path d="M 136,144 L 136,176" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,144" fill="none" stroke="black"/>
                <path d="M 152,176 L 152,208" fill="none" stroke="black"/>
                <path d="M 160,320 L 160,352" fill="none" stroke="black"/>
                <path d="M 168,144 L 168,176" fill="none" stroke="black"/>
                <path d="M 216,256 L 216,432" fill="none" stroke="black"/>
                <path d="M 256,128 L 256,160" fill="none" stroke="black"/>
                <path d="M 296,256 L 296,432" fill="none" stroke="black"/>
                <path d="M 344,112 L 344,144" fill="none" stroke="black"/>
                <path d="M 352,320 L 352,352" fill="none" stroke="black"/>
                <path d="M 360,32 L 360,112" fill="none" stroke="black"/>
                <path d="M 360,144 L 360,208" fill="none" stroke="black"/>
                <path d="M 376,112 L 376,144" fill="none" stroke="black"/>
                <path d="M 384,240 L 384,272" fill="none" stroke="black"/>
                <path d="M 400,128 L 400,240" fill="none" stroke="black"/>
                <path d="M 400,272 L 400,320" fill="none" stroke="black"/>
                <path d="M 416,240 L 416,272" fill="none" stroke="black"/>
                <path d="M 456,320 L 456,352" fill="none" stroke="black"/>
                <path d="M 504,256 L 504,432" fill="none" stroke="black"/>
                <path d="M 152,32 L 360,32" fill="none" stroke="black"/>
                <path d="M 344,112 L 376,112" fill="none" stroke="black"/>
                <path d="M 256,128 L 344,128" fill="none" stroke="black"/>
                <path d="M 376,128 L 400,128" fill="none" stroke="black"/>
                <path d="M 136,144 L 168,144" fill="none" stroke="black"/>
                <path d="M 344,144 L 376,144" fill="none" stroke="black"/>
                <path d="M 112,160 L 136,160" fill="none" stroke="black"/>
                <path d="M 168,160 L 256,160" fill="none" stroke="black"/>
                <path d="M 136,176 L 168,176" fill="none" stroke="black"/>
                <path d="M 152,208 L 360,208" fill="none" stroke="black"/>
                <path d="M 96,240 L 128,240" fill="none" stroke="black"/>
                <path d="M 384,240 L 416,240" fill="none" stroke="black"/>
                <path d="M 8,256 L 96,256" fill="none" stroke="black"/>
                <path d="M 128,256 L 216,256" fill="none" stroke="black"/>
                <path d="M 296,256 L 384,256" fill="none" stroke="black"/>
                <path d="M 416,256 L 504,256" fill="none" stroke="black"/>
                <path d="M 96,272 L 128,272" fill="none" stroke="black"/>
                <path d="M 384,272 L 416,272" fill="none" stroke="black"/>
                <path d="M 56,320 L 160,320" fill="none" stroke="black"/>
                <path d="M 352,320 L 456,320" fill="none" stroke="black"/>
                <path d="M 56,352 L 160,352" fill="none" stroke="black"/>
                <path d="M 352,352 L 456,352" fill="none" stroke="black"/>
                <path d="M 8,432 L 216,432" fill="none" stroke="black"/>
                <path d="M 296,432 L 504,432" fill="none" stroke="black"/>
                <circle cx="112" cy="224" r="6" class="opendot" fill="white" stroke="black"/>
                <circle cx="400" cy="224" r="6" class="opendot" fill="white" stroke="black"/>
                <g class="text">
                  <text x="204" y="68">Core</text>
                  <text x="236" y="68">AS</text>
                  <text x="284" y="68">ff00:0:1</text>
                  <text x="420" y="84">(1-ff00:0:1,</text>
                  <text x="428" y="100">198.51.100.17)</text>
                  <text x="284" y="116">198.51.100.4</text>
                  <text x="400" y="116">i1b</text>
                  <text x="356" y="132">R3</text>
                  <text x="112" y="148">i1a</text>
                  <text x="148" y="164">R2</text>
                  <text x="228" y="180">198.51.100.1</text>
                  <text x="460" y="212">(1-ff00:0:3,</text>
                  <text x="468" y="228">198.51.100.18)</text>
                  <text x="72" y="244">i2a</text>
                  <text x="440" y="244">i3a</text>
                  <text x="108" y="260">R1</text>
                  <text x="396" y="260">R4</text>
                  <text x="164" y="292">203.0.113.17</text>
                  <text x="444" y="292">192.0.2.34</text>
                  <text x="100" y="340">Endpoint</text>
                  <text x="144" y="340">A</text>
                  <text x="396" y="340">Endpoint</text>
                  <text x="440" y="340">B</text>
                  <text x="108" y="372">1-ff00:0:2,203.0.113.6</text>
                  <text x="396" y="372">1-ff00:0:3,192.0.2.7</text>
                  <text x="76" y="404">AS</text>
                  <text x="124" y="404">ff00:0:2</text>
                  <text x="364" y="404">AS</text>
                  <text x="412" y="404">ff00:0:3</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
                  +-------------------------+
                  |                         |
                  |    Core AS ff00:0:1     |
                  |                         | (1-ff00:0:1,
                  |                         | 198.51.100.17)
                  |          198.51.100.4 +-+-+ i1b
                  |            +----------+R3 +--+
            i1a +-+-+          |          +-+-+  |
             +--+R2 +----------+            |    |
             |  +-+-+ 198.51.100.1          |    |
             |    |                         |    |
             |    +-------------------------+    | (1-ff00:0:3,
             o                                   o 198.51.100.18)
       i2a +-+-+                               +-+-+ i3a
+----------+R1 +----------+         +----------+R4 +----------+
|          +-+-+          |         |          +-+-+          |
|            |203.0.113.17|         |            |192.0.2.34  |
|            |            |         |            |            |
|     +------+-----+      |         |      +-----+------+     |
|     | Endpoint A |      |         |      | Endpoint B |     |
|     +------------+      |         |      +------------+     |
| 1-ff00:0:2,203.0.113.6  |         |  1-ff00:0:3,192.0.2.7   |
|                         |         |                         |
|       AS ff00:0:2       |         |       AS ff00:0:3       |
|                         |         |                         |
+-------------------------+         +-------------------------+
]]></artwork>
          </artset>
        </figure>
        <ul spacing="normal">
          <li>
            <t>R1, R2, R3, R4 are SCION routers, deployed at the edge of their AS. Their interface IDs are represented close to their interfaces (e.g.,, i2a for R1).</t>
          </li>
          <li>
            <t>AS ff00:0:1 is a core AS, ASes ff00:0:2 and ff00:0:3 are non-core. All ASes are part of ISD 1.</t>
          </li>
          <li>
            <t>Endpoint A is the source endpoint and it is in AS ff00:0:2.</t>
          </li>
          <li>
            <t>Endpoint B the destination endpoint and it is in AS ff00:0:3.</t>
          </li>
          <li>
            <t>both endpoints run a native SCION network stack. They communicate with their AS router on an UDP/IP underlay on destination UDP port 50000. This and other UDP/IP underlay ports used in this section are purely illustrative. They are not assigned, and cannot be assigned from the Dynamic Ports range.</t>
          </li>
          <li>
            <t>the example packet carries a UDP/SCION payload with destination port 443. This payload is omitted for brevity.</t>
          </li>
        </ul>
        <t>Since this example consists of only one ISD and one core AS, the end-to-end path only includes an up-path and down-path segment. The forwarding logic is uniform across intra- and inter-ISD scenarios. A scenario with more core ASes and/or ISDs would use an additional core path segment or a peering link.</t>
      </section>
      <section anchor="source-endpoint-path-lookup-and-segment-combination">
        <name>Source Endpoint: Path Lookup and Segment Combination</name>
        <t>To create an end-to-end SCION forwarding path, Endpoint A first queries its own AS ff00:0:2 control service for up segments to the core AS in its ISD. The AS ff00:0:2 control service returns up segments from AS ff00:0:2 to the ISD core AS ff00:0:1. Endpoint A also queries its AS ff00:0:2 control service for a down segment from its ISD core AS ff00:0:1 to AS ff00:0:3, in which Endpoint B is located. The AS ff00:0:2 control service will return down segments from the ISD core down to AS ff00:0:3. The path segments consist of Hop Fields that carry the ingress and egress interfaces of each AS (e.g., i2a, i1a, ...), as described in detail in <xref target="header"/> - (x,y) represents one Hop Field.</t>
        <t>For more details on the lookup of path segments, see 'Path Lookup' in <xref target="I-D.dekater-scion-controlplane"/>.</t>
        <t>Based on its own selection criteria, Endpoint A selects the up segment (0,i2a)(i1a,0) and the down segment (0,i1b)(i3a,0) from the path segments returned by its own AS ff00:0:2 control service.</t>
        <t>To obtain an end-to-end forwarding path from the source AS to the destination AS, Endpoint A combines the two path segments into the resulting SCION forwarding path, which contains the two Info Fields <em>IF1</em> and <em>IF2</em> and the Hop Fields (0,i2a), (i1a,0), (0,i1b), and (i3a,0).</t>
        <t><strong>Note:</strong> As this brief sample path does not contain a core segment, the end-to-end path only consists of two path segments.</t>
        <t>Endpoint A now adds this end-to-end forwarding path to the header of the packet that it wants to send to Endpoint B, and starts transferring the packet.</t>
      </section>
      <section anchor="intermediate-routers-forwarding-and-header-snapshots">
        <name>Intermediate Routers: Forwarding and Header Snapshots</name>
        <t>This section shows simplified snapshots of the packet header at each hop of the example topology. These snapshots are depicted in tables and they show the most relevant information of the header, including the SCION path and underlay IP encapsulation for local communication.</t>
        <t>The current Info Field (with metadata on the current path segment) in the SCION header is depicted as <em>italic</em> in the tables. The current Hop Field, representing the current AS, is shown <strong>bold</strong>. The snapshot tables also include references to IP/UDP addresses. In this context, words "ingress" and "egress" refer to the direction of travel the SCION packet.</t>
        <ul spacing="normal">
          <li>
            <t><em>Step 1 -</em> <strong>A-&gt;R1</strong>: <br/> The SCION Endpoint A in AS ff00:0:2 creates a new SCION packet destined for destination Endpoint B in AS ff00:0:3. Endpoint A sends the packet (for the chosen forwarding path) to the next SCION router as provided by its control service, which is in this case router R1. Endpoint A encapsulates the SCION packet into an underlay UDP/IPv4 header for the local delivery to router R1, utilizing AS ff00:0:2's internal routing protocol. The current Info Field is <em>IF1</em>. Upon receiving the packet, router R1 will forward the packet on the egress interface that Endpoint A has included into the first Hop Field of the SCION header.</t>
          </li>
        </ul>
        <table>
          <name>Example: snapshot header - step 1 - A-&gt;R1</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Value</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">SCION addr.</td>
              <td align="left">SRC = 1-ff00:0:2,203.0.113.6 <br/> DST = 1-ff00:0:3,192.0.2.7</td>
              <td align="left">Endpoint A <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">SCION path</td>
              <td align="left">- <em>IF1</em> <strong>(0,i2a)</strong> (i1a,0) <br/> - IF2 (0,i1b) (i3a,0)</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">UDP port</td>
              <td align="left">SRC = 52475  <br/> DST = 50000</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">IP</td>
              <td align="left">SRC = 203.0.113.6 <br/> DST = 203.0.113.17</td>
              <td align="left">Endpoint A <br/>  Router R1</td>
            </tr>
            <tr>
              <td align="left">Link layer</td>
              <td align="left">SRC=A <br/> DST=R1</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
        <ul spacing="normal">
          <li>
            <t><em>Step 2 -</em> <strong>R1-&gt;R2</strong>: <br/> Router R1 inspects the SCION header and considers the relevant Info Field of the specified SCION path, which is the Info Field indicated by the current Info Field pointer. In this case, it is the first Info Field <em>IF1</em>. The current Hop Field is the first Hop Field (0,i2a), which instructs router R1 to forward the packet on its interface i2a. After reading the current Hop Field, router R1 moves the pointer forward by one position to the second Hop Field (i1a,0).  </t>
            <t>
The link shown here is an example of not using a UDP/IP underlay. Although most implementations use such an encapsulation, SCION only requires link-layer connectivity. What is used for one given inter-AS link is a function of the available implementations at each end, the available infrastructure, and the joint preference of the two ASes administrators.</t>
          </li>
        </ul>
        <table>
          <name>Example: snapshot header - step 2 - R1 -&gt; R2</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Value</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">SCION addr.</td>
              <td align="left">SRC = 1-ff00:0:2,203.0.113.6 <br/> DST = 1-ff00:0:3,192.0.2.7</td>
              <td align="left">Endpoint A <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">SCION path</td>
              <td align="left">- <em>IF1</em> (0,i2a) <strong>(i1a,0)</strong>  <br/>  - IF2 (0,i1b) (i3a,0)</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">Link layer</td>
              <td align="left">SRC=R1 <br/> DST=R2</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
        <ul spacing="normal">
          <li>
            <t><em>Step 3 -</em> <strong>R2-&gt;R3</strong>: <br/> When receiving the packet, router R2 of Core AS ff00:0:1 checks whether the packet has been received through the ingress interface i1a as specified by the current Hop Field, otherwise R2 drops the packet. The router notices that it has consumed the last Hop Field of the current path segment and then moves the pointer from the current Info Field to the next Info Field <em>IF2</em>. The corresponding current Hop Field is (0,i1b), which contains egress interface i1b. The router maps the i1b interface ID to egress router R3, and encapsulates the SCION packet inside an intra-AS underlay IP packet with the address of router R3 as the underlay destination.</t>
          </li>
        </ul>
        <table>
          <name>Example: snapshot header - step 3 -  R2 -&gt; R3</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Value</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">SCION addr.</td>
              <td align="left">SRC = 1-ff00:0:2,203.0.113.6 <br/> DST = 1-ff00:0:3,192.0.2.7</td>
              <td align="left">Endpoint A <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">SCION path</td>
              <td align="left">- IF1 (0,i2a) (i1a,0) <br/>   - <em>IF2</em> <strong>(0,i1b)</strong> (i3a,0)</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">UDP port</td>
              <td align="left">SRC = 51000 <br/> DST = 51002</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">IP</td>
              <td align="left">SRC = 198.51.100.1 <br/> DST = 198.51.100.4</td>
              <td align="left">Router R2 <br/> Router R3</td>
            </tr>
            <tr>
              <td align="left">Link layer</td>
              <td align="left">SRC=R2 <br/> DST=R3</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
        <ul spacing="normal">
          <li>
            <t><em>Step 4 -</em> <strong>R3-&gt;R4</strong>: <br/> router R3 inspects the current Hop Field in the SCION header, uses interface i1b to forward the packet to its neighbor SCION router R4 of AS ff00:0:3, and moves the current hop-field pointer forward. It adds an IP header to reach router R4.</t>
          </li>
        </ul>
        <table>
          <name>Example: snapshot header - step 4 - R3 -&gt; R4</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Value</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">SCION addr.</td>
              <td align="left">SRC = 1-ff00:0:2,203.0.113.6 <br/> DST = 1-ff00:0:3,192.0.2.7</td>
              <td align="left">Endpoint A <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">SCION path</td>
              <td align="left">- IF1 (0,i2a) (i1a,0) <br/>   - <em>IF2</em> (0,i1b) <strong>(i3a,0)</strong></td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">UDP port</td>
              <td align="left">SRC = 51022 <br/> DST = 51044 <br/></td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">IP</td>
              <td align="left">SRC = 198.51.100.17 <br/> DST = 198.51.100.18</td>
              <td align="left">Router R3 <br/> Router R4</td>
            </tr>
            <tr>
              <td align="left">Link layer</td>
              <td align="left">SRC=R3 <br/> DST=R4</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
        <ul spacing="normal">
          <li>
            <t><em>Step 5 -</em> <strong>R4-&gt;B</strong>: <br/> SCION router R4 first checks whether the packet has been received through the ingress interface i3a as specified by the current Hop Field. Router R4 will then also realize, based on the fields <tt>CurrHF</tt> and <tt>SegLen</tt> in the SCION header, that the packet has reached the last hop in its SCION path. Therefore, instead of stepping up the pointers to the next Info Field or Hop Field, router R4 inspects the SCION destination address and extracts the endpoint address 192.0.2.7. It creates a fresh underlay UDP/IP header with this address as destination with itself as source. The choice of destination port depends on the underlay, which is described in <xref target="SCION-UDP"/>. The intra-domain forwarding can now deliver the packet to its destination at Endpoint B.</t>
          </li>
        </ul>
        <table>
          <name>Example: snapshot header - step 5 - R4 -&gt; B</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Value</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">SCION addr.</td>
              <td align="left">SRC = 1-ff00:0:2,203.0.113.6  <br/> DST = 1-ff00:0:3,192.0.2.7</td>
              <td align="left">Endpoint A <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">SCION path</td>
              <td align="left">- IF1 (0,i2a) (i1a,0) <br/>  - <em>IF2</em> (0,i1b) <strong>(i3a,0)</strong> <br/></td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">UDP port</td>
              <td align="left">SRC = 50000  <br/> DST = 443 <br/></td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left">IP</td>
              <td align="left">SRC = 192.0.2.34 <br/> DST = 192.0.2.7</td>
              <td align="left">Router R4 <br/> Endpoint B</td>
            </tr>
            <tr>
              <td align="left">Link layer</td>
              <td align="left">SRC=R4 <br/> DST=B</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="destination-endpoint">
        <name>Destination Endpoint</name>
        <t>When destination Endpoint B wants to respond to source Endpoint A, it can just swap the source and destination addresses in the SCION header, reverse the SCION path, and set the pointers to the Info Fields and Hop Fields at the beginning of the reversed path (see also <xref target="reverse"/>).</t>
      </section>
    </section>
    <section anchor="path-auth">
      <name>Path Authorization</name>
      <t>Path authorization guarantees that data packets always traverse the network along path segments authorized by all on-path ASes in the control plane. In contrast to the IP-based Internet where forwarding decisions are made by routers based on locally stored information, SCION routers base their forwarding decisions purely on the forwarding information carried in the packet header and set by endpoints.</t>
      <t>SCION uses cryptographic mechanisms to efficiently provide path authorization. The mechanisms are based on <em>symmetric</em> cryptography in the form of Message Authentication Codes (MACs) in the data plane to secure forwarding information encoded in Hop Fields. This section first explains how Hop Field MACs are computed, then how they are validated as they traverse the network.</t>
      <section anchor="auth-chained-macs">
        <name>Authorizing Segments through Chained MACs</name>
        <t>When authorizing SCION PCBs and path segments in the control plane and forwarding information in the data plane, an AS authenticates not only its own hop information but also an aggregation of all upstream hops. This section describes how this works.</t>
        <section anchor="hf-mac-overview">
          <name>Hop Field MAC Overview</name>
          <t>The MAC in the Hop Fields of a SCION path has two purposes:</t>
          <ul spacing="normal">
            <li>
              <t>Preventing malicious endpoints from adding, removing or reordering hops within a path segment created during beaconing by the control plane. In particular, preventing path splicing, i.e., the combination of parts of different valid path segments into a new and unauthorized path segment.</t>
            </li>
            <li>
              <t>Authentication of the information contained in the Hop Field itself, in particular the <tt>ExpTime</tt>, <tt>ConsIngress</tt>, and <tt>ConsEgress</tt>.</t>
            </li>
          </ul>
          <t>To fulfil these purposes, the MAC for the Hop Field of AS<sub>i</sub> includes both the components of the current Hop Field HF<sub>i</sub> and an aggregation of the path segment identifier and all preceding Hop Fields/entries in the path segment. The aggregation is a 16-bit XOR-sum of the path segment identifier and the Hop Field MACs.</t>
          <t>When originating a PCB in the control plane, a core AS chooses a random 16-bit value as segment identifier <tt>SegID</tt> for the path segment and includes it in the PCB's <tt>Segment Info</tt> component. In the control plane, each AS<sub>i</sub> on the path segment computes the MAC for the current HF<sub>i</sub>, based on the value of <tt>SegID</tt> and the MACs of the preceding hop entries. Here, the full XOR-sum is computed explicitly.</t>
          <t>For high-speed packet processing in the data plane, computing even cheap operations such as the XOR-sum over a variable number of inputs is complicated, in particular for hardware router implementations. To avoid this overhead for the MAC chaining in path authorization in the data plane, the XOR-sum is tracked incrementally for each of the path segments in a path as a separate, updatable Accumulator Field <tt>Acc</tt>. Routers update <tt>Acc</tt> by adding/subtracting only a single 16-bit value each.</t>
          <t>When combining path segments to create a path to the destination endpoint, the source endpoint <bcp14>MUST</bcp14> also initialize the value of accumulator field <tt>Acc</tt> for each path segment. The <tt>Acc</tt> field <bcp14>MUST</bcp14> contain the correct XOR-sum of the path segment identifier and preceding Hop Field MACs expected by the first router that is traversed.</t>
          <t>The aggregated 16-bit path segment identifier and preceding MACs prevent splicing of different path segments unless there is a collision of the <tt>Acc</tt> value among compatible path segments in an AS. See <xref target="path-splicing"/> for more details.</t>
          <section anchor="hf-mac-calc">
            <name>Hop Field MAC - Calculation</name>
            <t>The Hop Field MAC is generally calculated at a current AS<sub>i</sub> as follows:</t>
            <ul spacing="normal">
              <li>
                <t>Consider a path segment with "n" hops, containing ASes AS<sub>0</sub>, ... , AS<sub>n-1</sub>, with forwarding keys K0, ... , K(n-1) in this order.</t>
              </li>
              <li>
                <t>AS<sub>0</sub> is the core AS that created the PCB representing the path segment and that added a random initial 16-bit segment identifier <tt>SegID</tt> to the <tt>Segment Info</tt> field of the PCB.</t>
              </li>
            </ul>
            <t>MAC<sub>i</sub> = <br/> C<sub>ki</sub> (<tt>SegID</tt> XOR MAC<sub>0</sub> [:2] ... XOR MAC<sub>i-1</sub> [:2], Timestamp, ExpTime<sub>i</sub>, ConsIngress<sub>i</sub>, ConsEgress<sub>i</sub>)</t>
            <t>where</t>
            <ul spacing="normal">
              <li>
                <t>ki = The forwarding key k of the current AS<sub>i</sub></t>
              </li>
              <li>
                <t>C<sub>ki</sub> (...) = Cryptographic checksum C over (...) computed with forwarding key ki</t>
              </li>
              <li>
                <t><tt>SegID</tt> = The random initial 16-bit segment identifier set by the core AS when creating the corresponding PCB</t>
              </li>
              <li>
                <t>XOR = The bitwise "exclusive or" operation</t>
              </li>
              <li>
                <t>MAC<sub>i</sub> [:2] = The Hop Field MAC for AS<sub>i</sub>, truncated to 2 bytes</t>
              </li>
              <li>
                <t>Timestamp = The timestamp set by the core AS when creating the corresponding PCB</t>
              </li>
              <li>
                <t>ExpTime<sub>i</sub>, ConsIngress<sub>i</sub>, ConsEgress<sub>i</sub> = The content of the Hop Field HF<sub>i</sub></t>
              </li>
            </ul>
            <t>Thus, the current MAC is based on the XOR-sum of the truncated MACs of all preceding Hop Fields in the path segment as well as the path segment's <tt>SegID</tt> - i.e., the current MAC is <em>chained</em> to all preceding MACs. In order to effectively prevent path-splicing, the cryptographic checksum function used <bcp14>MUST</bcp14> ensure that the truncation of the MACs is non-degenerate and uniformly distributed (see <xref target="mac-requirements"/>).</t>
          </section>
          <section anchor="def-acc">
            <name>Accumulator Acc - Definition</name>
            <t>The Accumulator Acc<sub>i</sub> is an updatable counter introduced in the data plane to avoid the overhead caused by MAC-chaining for path authorization. This is achieved by incrementally tracking the XOR-sum of the previous MACs as a separate, updatable accumulator field <tt>Acc</tt> which is part of the path segment's Info Field <tt>InfoField</tt> in the packet header (see also <xref target="inffield"/>). Routers update this field by adding/subtracting only a single 16-bit value each.</t>
            <t><xref target="hf-mac-calc"/> provides a general formula to compute MAC<sub>i</sub>, but at each SCION router the expression <tt>SegID XOR MAC_0 [:2] ... XOR MAC_i-1 [:2]</tt> is replaced by Acc<sub>i</sub>. This results in the following alternative procedure for the computation of MAC<sub>i</sub> at SCION routers:</t>
            <t>MAC<sub>i</sub> = C<sub>ki</sub> (Acc<sub>i</sub>, Timestamp, ExpTime<sub>i</sub>, ConsIngress<sub>i</sub>, ConsEgress<sub>i</sub>)</t>
            <t>During forwarding, SCION routers at each AS<sub>i</sub> update the Acc field in the packet header so that it contains the correct input value of Acc for the next AS in the path segment to be able to calculate the MAC over its Hop Field. Note that the correct input value of the <tt>Acc</tt> field depends on the direction of travel.</t>
            <t>The value of Acc<sub>i+1</sub> is calculated based on the following definition, where i denotes the i-th hop field in the direction of beaconing:</t>
            <t>Acc<sub>i+1</sub> = Acc<sub>i</sub> XOR MAC<sub>i</sub> [:2]</t>
            <ul spacing="normal">
              <li>
                <t>XOR = The bitwise "exclusive or" operation</t>
              </li>
              <li>
                <t>MAC<sub>i</sub> [:2] = The Hop Field MAC for the current AS<sub>i</sub>, truncated to 2 bytes</t>
              </li>
            </ul>
            <t>For the initial Hop Field of a segment (i=0), the accumulator Acc<sub>0</sub> is initialized to the randomized SegID generated by the core AS during beaconing.</t>
          </section>
          <section anchor="hop-field-mac-algorithm">
            <name>Hop Field MAC Algorithm</name>
            <t>The algorithm used to compute the Hop Field MAC is an AS-specific choice, although the Control Services and border routers within an AS <bcp14>MUST</bcp14> be configured to use the same algorithm (see <eref target="configuration"/>). Implementations <bcp14>MUST</bcp14> also support the Default Hop Field MAC algorithm as described below.</t>
            <section anchor="default-hop-field-mac-algorithm">
              <name>Default Hop Field MAC Algorithm</name>
              <t>The default MAC algorithm is AES-CMAC (<xref target="RFC4493"/>) truncated to 48-bits, computed over the Info Field and the first 6 bytes of the Hop Field with flags and reserved fields zeroed out. The input is padded to 16 bytes. The <em>first</em> 6 bytes of the AES-CMAC output are used as resulting Hop Field MAC.</t>
              <t><xref target="_figure-18"/> below shows the layout of the input data to calculate the Hop Field MAC.</t>
              <figure anchor="_figure-18">
                <name>Input data to calculate the Hop Field MAC for the default hop-field MAC algorithm</name>
                <artset>
                  <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="224" width="608" viewBox="0 0 608 224" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                      <path d="M 8,64 L 8,192" fill="none" stroke="black"/>
                      <path d="M 136,128 L 136,160" fill="none" stroke="black"/>
                      <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                      <path d="M 264,128 L 264,192" fill="none" stroke="black"/>
                      <path d="M 520,64 L 520,192" fill="none" stroke="black"/>
                      <path d="M 552,64 L 552,192" fill="none" stroke="black"/>
                      <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                      <path d="M 536,64 L 552,64" fill="none" stroke="black"/>
                      <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                      <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
                      <path d="M 536,128 L 552,128" fill="none" stroke="black"/>
                      <path d="M 8,160 L 520,160" fill="none" stroke="black"/>
                      <path d="M 8,192 L 520,192" fill="none" stroke="black"/>
                      <path d="M 536,192 L 552,192" fill="none" stroke="black"/>
                      <polygon class="arrowhead" points="544,192 532,186.4 532,197.6" fill="black" transform="rotate(180,536,192)"/>
                      <polygon class="arrowhead" points="544,128 532,122.4 532,133.6" fill="black" transform="rotate(180,536,128)"/>
                      <polygon class="arrowhead" points="544,64 532,58.4 532,69.6" fill="black" transform="rotate(180,536,64)"/>
                      <g class="text">
                        <text x="16" y="36">0</text>
                        <text x="176" y="36">1</text>
                        <text x="336" y="36">2</text>
                        <text x="496" y="36">3</text>
                        <text x="16" y="52">0</text>
                        <text x="32" y="52">1</text>
                        <text x="48" y="52">2</text>
                        <text x="64" y="52">3</text>
                        <text x="80" y="52">4</text>
                        <text x="96" y="52">5</text>
                        <text x="112" y="52">6</text>
                        <text x="128" y="52">7</text>
                        <text x="144" y="52">8</text>
                        <text x="160" y="52">9</text>
                        <text x="176" y="52">0</text>
                        <text x="192" y="52">1</text>
                        <text x="208" y="52">2</text>
                        <text x="224" y="52">3</text>
                        <text x="240" y="52">4</text>
                        <text x="256" y="52">5</text>
                        <text x="272" y="52">6</text>
                        <text x="288" y="52">7</text>
                        <text x="304" y="52">8</text>
                        <text x="320" y="52">9</text>
                        <text x="336" y="52">0</text>
                        <text x="352" y="52">1</text>
                        <text x="368" y="52">2</text>
                        <text x="384" y="52">3</text>
                        <text x="400" y="52">4</text>
                        <text x="416" y="52">5</text>
                        <text x="432" y="52">6</text>
                        <text x="448" y="52">7</text>
                        <text x="464" y="52">8</text>
                        <text x="480" y="52">9</text>
                        <text x="496" y="52">0</text>
                        <text x="512" y="52">1</text>
                        <text x="136" y="84">0</text>
                        <text x="368" y="84">Acc</text>
                        <text x="580" y="84">Info</text>
                        <text x="584" y="100">Field</text>
                        <text x="264" y="116">Timestamp</text>
                        <text x="72" y="148">0</text>
                        <text x="200" y="148">ExpTime</text>
                        <text x="392" y="148">ConsIngress</text>
                        <text x="576" y="148">Hop</text>
                        <text x="584" y="164">Field</text>
                        <text x="132" y="180">ConsEgress</text>
                        <text x="392" y="180">0</text>
                      </g>
                    </svg>
                  </artwork>
                  <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+
|               0               |           Acc                 |   | Info
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   | Field
|                           Timestamp                           |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+
|       0       |    ExpTime    |          ConsIngress          |   | Hop
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   | Field
|          ConsEgress           |               0               |   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+

]]></artwork>
                </artset>
              </figure>
            </section>
            <section anchor="mac-requirements">
              <name>Alternative Hop Field MAC Algorithms</name>
              <t>For alternative MAC algorithms, the following requirements <bcp14>MUST</bcp14> all be met:</t>
              <ul spacing="normal">
                <li>
                  <t>The Hop Field MAC field is computed as a function of the secret forwarding key, the <tt>Acc</tt> and <tt>Timestamp</tt> fields of the Info Field, and the <tt>ExpTime</tt>, <tt>ConsIngress</tt> and <tt>ConsEgress</tt> fields of the Hop Field. The term "function" is used in the mathematical sense that for for any values of these inputs there is exactly one result.</t>
                </li>
                <li>
                  <t>The algorithm returns an unforgeable 48-bit value. Unforgeable specifically means "existentially unforgeable under a chosen message attack" (<xref target="CRYPTOBOOK"/>). Informally, this means an attacker without access to the secret key has no computationally efficient means to create a valid MAC for some attacker chosen input values, even if it has access to an "oracle" providing a valid MAC for any other input values.</t>
                </li>
                <li>
                  <t>The truncation of the result value to the first 16 bits of the result value:
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t>is not degenerate - i.e., any small change in any input value <bcp14>SHOULD</bcp14> have an "avalanche effect" on these bits, and;</t>
                    </li>
                    <li>
                      <t>is uniformly distributed when considering all possible input values.</t>
                    </li>
                  </ul>
                </li>
              </ul>
              <t>This additional requirement is naturally satisfied for MAC algorithms based on typical block ciphers or hash algorithms. It ensures that the MAC chaining via the <tt>Acc</tt> field is not degenerate.</t>
            </section>
          </section>
        </section>
        <section anchor="peerlink">
          <name>Peering Link MAC Computation</name>
          <t>The Hop Field MAC computation described in <xref target="hf-mac-calc"/> does not apply to a peering Hop Field - i.e., to a Hop Field that allows transiting from a child interface/link to a peering interface/link.</t>
          <t>The reason for this is that the MACs of the Hop Fields "after" the peering Hop Field (in beaconing direction) are not chained to the MAC of the peering Hop Field but to the MAC of the main Hop Field in the corresponding AS entry. To make this work, the MAC of the peering Hop Field is also chained to the MAC of the main Hop Field. This allows for the validation of the chained MAC for both the peering Hop Field and the following Hop Fields by using the same <tt>Acc</tt> field value.</t>
          <t>The peering Hop Field is defined as follows:</t>
          <t>Hop Field<sup>Peer</sup><sub>i</sub> = (ExpTime<sup>Peer</sup><sub>i</sub>, ConsIngress<sup>Peer</sup><sub>i</sub>, ConsEgress<sup>Peer</sup><sub>i</sub>, MAC<sup>Peer</sup><sub>i</sub>)</t>
          <t>See <xref target="I-D.dekater-scion-controlplane"/> for more information.</t>
          <t>This results in the calculation of the MAC for the peering Hop Field<sup>Peer</sup><sub>i</sub> as follows:</t>
          <t>MAC<sup>Peer</sup><sub>i</sub> = <br/> C<sup>Peer</sup><sub>ki</sub> (<tt>SegID</tt> XOR MAC<sub>0</sub> [:2] ... XOR MAC<sub>i</sub> [:2], Timestamp, ExpTime<sup>Peer</sup><sub>i</sub>, ConsIngress<sup>Peer</sup><sub>i</sub>, ConsEgress<sup>Peer</sup><sub>i</sub>)</t>
          <t><strong>Note:</strong> The XOR-sum of the MACs in the formula of the peering Hop Field <strong>also includes</strong> the MAC of the main Hop Field (whereas for the calculation of the MAC for the main Hop Field itself only the XOR-sum of the <em>previous</em> MACs is used).</t>
        </section>
      </section>
      <section anchor="packet-verif">
        <name>Path Initialization and Packet Processing</name>
        <t>As described in <xref target="header"/>, the path header of the data plane packets only contains a sequence of Info Fields and Hop Fields without any additional data from the corresponding PCBs. The SCION path also does not contain any AS numbers - except for the source and destination ASes - and there is no field explicitly defining the type of each segment (up, core, or down). This chapter describes the required steps for the source endpoint and SCION routers to respectively craft and forward a data packet.</t>
        <section anchor="initialization-at-source-endpoint">
          <name>Initialization at Source Endpoint</name>
          <t>The source endpoint <bcp14>MUST</bcp14> perform the following steps to correctly initialize a path:</t>
          <ol spacing="normal" type="1"><li>
              <t>Combine the preferred end-to-end path from the path segments obtained during path lookup.</t>
            </li>
            <li>
              <t>Extract the Info Fields and Hop Fields from the different path segments that together build the end-to-end path to the destination endpoint. Then insert the relevant information from the Info Fields and Hop Fields into the corresponding <tt>InfoFields</tt> and <tt>Hopfields</tt> in the data packet header.</t>
            </li>
            <li>
              <t>Each 8-byte <tt>InfoField</tt> in the packet header contains the updatable <tt>Acc</tt> field as well as a Peering flag <tt>P</tt> and a Construction Direction flag <tt>C</tt> (see also <xref target="inffield"/>). As a next step in the path initialization process, the source <bcp14>MUST</bcp14> correctly set the flags and the <tt>Acc</tt> field of all <tt>InfoFields</tt> included in the path, according to the following rules:
              </t>
              <ul spacing="normal">
                <li>
                  <t>The Construction Direction flag <tt>C</tt> <bcp14>MUST</bcp14> be set to "1" whenever the corresponding segment is traversed in construction direction, i.e.,, for down-path segments and potentially for core segments. It <bcp14>MUST</bcp14> be set to "0" for up-path segments and "reversed" core segments.</t>
                </li>
                <li>
                  <t>The Peering flag <tt>P</tt> <bcp14>MUST</bcp14> be set to "1" for up-segments and down-segments if the path contains a peering Hop Field.</t>
                </li>
              </ul>
              <t>
The following <tt>InfoField</tt> settings are possible, based on the following cases:  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Case 1</strong> <br/> The path segment is traversed in construction direction and includes no peering Hop Field. It starts at the <em>i</em>-th AS of the full segment discovered in beaconing. In this case:      </t>
                  <ul spacing="normal">
                    <li>
                      <t>The Peering flag <tt>P</tt> = "0"</t>
                    </li>
                    <li>
                      <t>The Construction Direction flag <tt>C</tt> = "1"</t>
                    </li>
                    <li>
                      <t>The value of the <tt>Acc</tt> = Acc<sub>i</sub>. For more details, see <xref target="def-acc"/>.</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>Case 2</strong> <br/> The path segment is traversed in construction direction and includes a peering Hop Field (which is the first Hop Field of the segment). It starts at the <em>i</em>-th AS of the full segment discovered in beaconing. In this case:      </t>
                  <ul spacing="normal">
                    <li>
                      <t>The Peering flag <tt>P</tt> = "1"</t>
                    </li>
                    <li>
                      <t>The Construction Direction flag <tt>C</tt> = "1"</t>
                    </li>
                    <li>
                      <t>The value of the <tt>Acc</tt> = Acc<sub>i+1</sub>. For more details, see <xref target="def-acc"/>.</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>Case 3</strong> <br/> The path segment is traversed against construction direction. The full segment has "n" hops. In this case:      </t>
                  <ul spacing="normal">
                    <li>
                      <t>The Peering flag <tt>P</tt> = "0" or "1" (depending on whether the last Hop Field in the up-segment is a peering Hop Field)</t>
                    </li>
                    <li>
                      <t>The Construction Direction flag <tt>C</tt> = "0"</t>
                    </li>
                    <li>
                      <t>The value of the <tt>Acc</tt> = Acc<sub>n-1</sub>. This is because seen from the direction of beaconing, the source endpoint is the last AS in the path segment. For more details, see <xref target="hf-mac-calc"/> and <xref target="def-acc"/>.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>Besides setting the flags and the <tt>Acc</tt> field, the source endpoint <bcp14>MUST</bcp14> also set the pointers in the <tt>CurrInf</tt> and <tt>CurrHF</tt> fields of the Path Meta Header <tt>PathMetaHdr</tt> (see <xref target="PathMetaHdr"/>). As the source endpoint builds the starting point of the forwarding, both pointers <bcp14>MUST</bcp14> be set to "0".</t>
            </li>
          </ol>
        </section>
        <section anchor="process-router">
          <name>Processing at Routers</name>
          <t>During forwarding, each SCION router verifies the path contained in the packet header. Each SCION router also <bcp14>MUST</bcp14> correctly verify or set the value of the Accumulator in the <tt>Acc</tt> field for the next AS to be able to verify its Hop Field. The exact operations differ based on the location of the AS on the path.</t>
          <t>The processing of SCION packets for ASes where a peering link is crossed between path segments is a special case. A path containing a peering link contains exactly two path segments, one against construction direction (up) and one in construction direction (down). On the path segment against construction direction (up), the peering Hop Field is the last hop of the segment. In construction direction (down), the peering Hop Field is the first hop of the segment.</t>
          <t>The following sections describe the tasks to be performed by the ingress and egress border routers of each on-path AS. Each operation is described from the perspective of AS<sub>i</sub>, where i belongs to [0 ... n-1], and n == the number of ASes in the path segment (counted from the first AS in the beaconing direction).</t>
          <section anchor="process-router-ingress">
            <name>Steps at Ingress Border Router</name>
            <t>A SCION ingress border router <bcp14>MUST</bcp14> perform the following steps when it receives a SCION packet:</t>
            <ol spacing="normal" type="1"><li>
                <t>Check that the interface through which the packet was received is equal to the ingress interface in the current Hop Field. If not, the router <bcp14>MUST</bcp14> drop the packet.</t>
              </li>
              <li>
                <t>If there is a segment switch at the current router, check that the ingress and egress interface links are either:  </t>
                <ul spacing="normal">
                  <li>
                    <t>Both core</t>
                  </li>
                  <li>
                    <t>Parent-child or vice-versa</t>
                  </li>
                  <li>
                    <t>Peering-child or vice-versa</t>
                  </li>
                </ul>
                <t>
Link types above are defined in 'Path and Links' in <xref target="I-D.dekater-scion-controlplane"/>. This check prevents valley use of peering links or hair-pin segments.</t>
              </li>
              <li>
                <t>Check if the current Hop Field is expired or originated in the future - i.e., the current Info Field <bcp14>MUST NOT</bcp14> have a timestamp in the future, as defined in <xref target="inffield"/>. If either is true, the router <bcp14>MUST</bcp14> drop the packet.</t>
              </li>
              <li>
                <t>If the packet traverses the path segment <strong>against construction direction</strong> (Construction Direction flag <tt>C</tt> = "0") perform this step:  </t>
                <ul spacing="normal">
                  <li>
                    <t><strong>Case 1</strong> <br/> The path segment includes <strong>no peering Hop Field</strong> (Peering flag <tt>P</tt> = "0"). In this case, the ingress border router <bcp14>MUST</bcp14> take the following step(s):      </t>
                    <ul spacing="normal">
                      <li>
                        <t>Compute the value of the Accumulator Acc as follows:          </t>
                        <t>
Acc = Acc<sub>i+1</sub> XOR MAC<sub>i</sub> <br/>
  where <br/>
  Acc<sub>i+1</sub> = the current value of the field <tt>Acc</tt> in the current Info Field <br/>
  MAC<sub>i</sub> = the value of MAC<sub>i</sub> in the current Hop Field representing AS<sub>i</sub>          </t>
                        <t><strong>Note:</strong> In the case described here, the packet travels against direction of beaconing, i.e., the packet comes from AS<sub>i+1</sub> and will enter AS<sub>i</sub>. This means that the <tt>Acc</tt> field of this incoming packet represents the value of Acc<sub>i+1</sub>, but to compute the MAC<sub>i</sub> for the current AS<sub>i</sub>, we need the value of Acc<sub>i</sub> (see <xref target="def-acc"/>). As the border router knows that the formula for Acc<sub>i+1</sub> = Acc<sub>i</sub> XOR MAC<sub>i</sub> [:2] (see also <xref target="def-acc"/>), and because the values of Acc<sub>i+1</sub> and MAC<sub>i</sub> are known, the router will be able to recover the value Acc<sub>i</sub> based on the aforementioned formula for Acc.</t>
                      </li>
                      <li>
                        <t>Replace the current value of the field <tt>Acc</tt> in the current Info Field with the newly calculated value of Acc.</t>
                      </li>
                      <li>
                        <t>Compute the MAC<sup>Verify</sup><sub>i</sub> over the Hop Field of the current AS<sub>i</sub>. For this, use the formula in <xref target="hf-mac-calc"/> but replace <tt>SegID XOR MAC_0[:2] ... XOR MAC_i-1 [:2]</tt> in the formula with the value of Acc as just set in the <tt>Acc</tt> field in the current Info Field.</t>
                      </li>
                      <li>
                        <t>If the MAC<sub>i</sub> in the current Hop Field does not match the just calculated MAC<sup>Verify</sup><sub>i</sub>, drop the packet.</t>
                      </li>
                      <li>
                        <t>If the current Hop Field is the last Hop Field in the path segment as determined by the value of the current <tt>SegLen</tt> and other metadata in the path meta header, increment both <tt>CurrInf</tt> and <tt>CurrHF</tt> in the path meta header. Proceed with step 5.</t>
                      </li>
                    </ul>
                  </li>
                  <li>
                    <t><strong>Case 2</strong> <br/> The path segment includes a <strong>peering Hop Field</strong> (<tt>P</tt> = "1"), but the current hop is <strong>not</strong> the peering hop (i.e., the current hop is <strong>neither</strong> the last hop of the first segment <strong>nor</strong> the first hop of the second segment). In this case, the ingress border router needs to perform the steps previously described for the path segment without peering Hop Field, but the border router <bcp14>MUST NOT</bcp14> increment <tt>CurrInf</tt> and <bcp14>MUST NOT</bcp14> increment <tt>CurrHF</tt> in the path meta header. Proceed with step 5.</t>
                  </li>
                  <li>
                    <t><strong>Case 3</strong> <br/> The path segment includes a <strong>peering Hop Field</strong> (<tt>P</tt> = "1"), and the current Hop Field <em>is</em> the peering Hop Field (i.e., the current hop is <strong>either</strong> the last hop of the first segment <strong>or</strong> the first hop of the second segment). In this case, the ingress border router <bcp14>MUST</bcp14> take the following step(s):      </t>
                    <ul spacing="normal">
                      <li>
                        <t>Compute MAC<sup>Peer</sup><sub>i</sub>. For this, use the formula in <xref target="peerlink"/>, but replace <tt>SegID XOR MAC_0[:2] ... XOR MAC_i [:2]</tt> in the formula with the value of Acc as set in the <tt>Acc</tt> field in the current Info Field (this is the value of Acc as it comes with the packet).</t>
                      </li>
                      <li>
                        <t>If the MAC<sub>i</sub> in the current Hop Field does not match the just calculated MAC<sup>Peer</sup><sub>i</sub>, drop the packet.</t>
                      </li>
                      <li>
                        <t>Increment both <tt>CurrInf</tt> and <tt>CurrHF</tt> in the path meta header. Proceed with step 5.</t>
                      </li>
                    </ul>
                  </li>
                </ul>
              </li>
              <li>
                <t>Forward the packet to the egress border router (based on the egress Interface ID in the current Hop Field) or to the destination endpoint, if this is the destination AS (see <xref target="intra-domain-forwarding"/>).</t>
              </li>
            </ol>
          </section>
          <section anchor="steps-at-egress-border-router">
            <name>Steps at Egress Border Router</name>
            <t>A SCION egress border router <bcp14>MUST</bcp14> perform the following steps when it receives a SCION packet:</t>
            <ol spacing="normal" type="1"><li>
                <t>If the packet path indicates an origin outside of the local AS, verify that the packet underlay source address matches a known border router in the local AS.</t>
              </li>
              <li>
                <t>Check the settings of the Construction Direction flag <tt>C</tt> and the Peering flag <tt>P</tt> in the currently valid Info Field. The following cases are possible:  </t>
                <ul spacing="normal">
                  <li>
                    <t><strong>Case 1</strong> <br/> The packet traverses the path segment in <strong>construction direction</strong> (<tt>C</tt> = "1"). The path segment either includes <strong>no peering Hop Field</strong> (<tt>P</tt> = "0") or the path segment does include a <strong>peering Hop Field</strong> (<tt>P</tt> = "1"), but the current hop is not the peering hop (i.e., the current hop is <strong>neither</strong> the last hop of the first segment <strong>nor</strong> the first hop of the second segment). In this case, the egress border router <bcp14>MUST</bcp14> take the following step(s):      </t>
                    <ul spacing="normal">
                      <li>
                        <t>Compute MAC<sup>Verify</sup><sub>i</sub> over the Hop Field of the current AS<sub>i</sub>. For this, use the formula in <xref target="hf-mac-calc"/>, but replace <tt>SegID XOR MAC_0[:2] ... XOR MAC_i-1 [:2]</tt> in the formula with the value of Acc as set in the <tt>Acc</tt> field in the current Info Field.</t>
                      </li>
                      <li>
                        <t>If the just calculated MAC<sup>Verify</sup><sub>i</sub> does not match the MAC<sub>i</sub> in the Hop Field of the current AS<sub>i</sub>, drop the packet.</t>
                      </li>
                      <li>
                        <t>Compute the value of Acc<sub>i+1</sub>. For this, use the formula in <xref target="def-acc"/>. Replace Acc<sub>i</sub> in the formula with the current value of Acc as set in the <tt>Acc</tt> field of the current Info Field.</t>
                      </li>
                      <li>
                        <t>Replace the value of the <tt>Acc</tt> field in the current Info Field with the just calculated value of Acc<sub>i+1</sub>.</t>
                      </li>
                    </ul>
                  </li>
                  <li>
                    <t><strong>Case 2</strong> <br/> The packet traverses the path segment in <strong>construction direction</strong> (<tt>C</tt> = "1") where the path segment includes a <strong>peering Hop Field</strong> (<tt>P</tt> = "1") and the current Hop Field <em>is</em> the peering Hop Field (i.e., the current hop is <strong>either</strong> the last hop of the first segment <strong>or</strong> the first hop of the second segment). In this case, the egress border router <bcp14>MUST</bcp14> take the following steps:      </t>
                    <ul spacing="normal">
                      <li>
                        <t>Compute MAC<sup>Peer</sup><sub>i</sub>. For this, use the formula in <xref target="peerlink"/>, but replace <tt>SegID XOR MAC_0 [:2] ... XOR MAC_i [:2]</tt> with the value in the <tt>Acc</tt> field of the current Info Field.</t>
                      </li>
                      <li>
                        <t>If the MAC<sub>i</sub> in the Hop Field of the current AS<sub>i</sub> does not match the just calculated MAC<sup>Peer</sup><sub>i</sub>, drop the packet.</t>
                      </li>
                    </ul>
                  </li>
                  <li>
                    <t><strong>Case 3</strong> <br/> The packet traverses the path segment <strong>against construction direction</strong> (<tt>C</tt> = "0" and <tt>P</tt> = "0" or "1"). In this case, proceed with Step 3.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t>Increment <tt>CurrHF</tt> in the path meta header.</t>
              </li>
              <li>
                <t>Forward the packet to the neighbor AS.</t>
              </li>
            </ol>
          </section>
          <section anchor="clock-inaccuracy">
            <name>Effects of Clock Inaccuracy</name>
            <t>Coarse time synchronization between core AS control services and SCION routers is required because path segments are generated by core AS control services and subsequently validated by routers in the data plane. Specifically, routers rely on the timestamp in the Info Field and the expiration time of Hop Fields to verify Hop Field validity, see <xref target="process-router-ingress"/>.</t>
            <t>Clock offsets between the originating control service and the validating router impact this process:</t>
            <ul spacing="normal">
              <li>
                <t>A fast clock at origination or a slow clock at validation will yield a lengthened expiration time for hops, and possibly an origination time in the future.</t>
              </li>
              <li>
                <t>A slow clock at origination or a fast clock at validation will yield a shortened expiration time for hops, and possibly an expiration time in the past.</t>
              </li>
            </ul>
            <t>Given the minimum Hop Field expiration of 337.5 seconds (see <xref target="hopfld"/>), offsets between a router and core ASes in the order of minutes are tolerable.</t>
            <t>Operators should ensure that control plane instances and routers maintain coarse time synchronization, though the specific methods used to achieve this are outside the scope of this document.</t>
            <t>For details on clock inaccuracies relative to beaconing, and for related security considerations, see <xref target="I-D.dekater-scion-controlplane"/>.</t>
          </section>
        </section>
      </section>
    </section>
    <section anchor="deployment-considerations">
      <name>Deployment Considerations</name>
      <section anchor="mtu">
        <name>MTU</name>
        <t>SCION requires its underlay protocol to provide a minimum MTU of 1232 bytes. This number results from 1280, the minimum IPv6 MTU as of <xref target="RFC8200"/>), minus 48, assuming UDP/IPv6 as underlay. Higher layer protocols such as SCMP rely only on such minimum MTU.</t>
        <t>The MTU of a SCION path is defined as the minimum of the MTUs of the intra-AS and inter-AS links traversed by that path. The control plane disseminates such values and makes them available to the source endpoint (see 'Path MTU in <xref target="I-D.dekater-scion-controlplane"/>).</t>
        <t>The MTU of each link may be discovered or administratively configured (current practice is for it to be configured). It must be less than or equal to the MTU of the link's underlay encapsulation or native link-layer in either direction.</t>
        <t>SCION assumes that the MTUs of a path segment remains correct for the life time of that segment. This is generally a safe assumption because:</t>
        <ul spacing="normal">
          <li>
            <t>Intra-AS network MTUs are a result of the network configuration of each AS and therefore predictable.</t>
          </li>
          <li>
            <t>Inter-AS links MTU are normally under the joint control of the administrators of the two ASes involved and therefore equally predictable.</t>
          </li>
        </ul>
        <t>Should the inter-AS link MTU be unpredictable (e.g., because the inter-AS link is deployed as an overlay), then the link's MTU <bcp14>MUST</bcp14> be configured statically to a conservative value. For a UDP/IP underlay, 1232 is a safe value.</t>
      </section>
      <section anchor="fragmentation">
        <name>Packet Fragmentation</name>
        <t>The SCION network layer does not support packet fragmentation; not even at the source endpoint. Upper layer protocols and applications <bcp14>MUST</bcp14> comply with the MTU of the paths that they use.</t>
        <t>SCION is agnostic to datagram fragmentation by the underlay network layer (e.g., used for intra-AS communication). Implementations <bcp14>SHOULD</bcp14> allow MTU discovery mechanisms such as <xref target="RFC4821"/> to be enabled in the underlay and avoid fragmentation. For inter-AS links, using a different configuration is the joint decision of the administrators of the two ASes involved. For intra-AS interfaces using a different configuration is the choice of that AS's administrator alone.</t>
      </section>
      <section anchor="sig">
        <name>SCION IP Gateway</name>
        <t>The SCION IP Gateway (SIG) enables IP packets to be tunneled over SCION to support communication between hosts that do not run a SCION implementation. A SIG acts as a router from the perspective of IP, whilst acting as SCION endpoint from the perspective of the SCION network. It is typically deployed inside the same AS internal network as its non-SCION hosts, or at the edge of an enterprise network. Tunneling IP traffic over SCION requires a pair of SIGs: at the ingress and egress points of the SCION network.</t>
        <t>IP tunneling over SCION is an application from the perspective of the Data Plane and is outside the scope of this document.</t>
        <t>More information about the reference open source SCION IP Gateway implementation can be found at <xref target="SIG"/>.</t>
      </section>
    </section>
    <section anchor="handling-link-failures">
      <name>Handling Link Failures</name>
      <section anchor="scion-bfd">
        <name>Link Failure Detection - BFD</name>
        <t>To detect link failures quickly and reliably, SCION uses the Bidirectional Forwarding Detection (BFD) protocol (<xref target="RFC5880"/>) on links between SCION routers. If a router does not receive a BFD message from its peer at some regular interval, it considers the link to be down (in both directions) until messages are received again.</t>
        <t>A SCION BFD message consists of a SCION packet with a <tt>NextHdr</tt> value of <tt>203</tt> (<tt>BFD/SCION</tt>) and a path type of either <tt>00</tt> (<tt>Empty</tt> - used on intra-AS links) or <tt>2</tt> (<tt>OneHopPath</tt> - used on inter-AS links). The BFD header itself is a BFD Control Header as described in <xref target="RFC5880"/>. More information on one-hop and empty paths is available in <xref target="onehop"/> and <xref target="empty"/>.</t>
        <t>A SCION router <bcp14>SHOULD</bcp14> accept BFD connections from its peers and <bcp14>SHOULD</bcp14> attempt to establish BFD connections to its peers. While a link is considered to be down, a SCION router should drop packets destined to that link. In that case, it <bcp14>SHOULD</bcp14> send a <xref target="link-down-notification">notification</xref> to the originator.</t>
      </section>
      <section anchor="link-down-notification">
        <name>Link Failure Notification - SCMP</name>
        <t>In SCION, an intermediate router cannot change the path followed by a packet, only the source endpoint can chose a different path. Therefore, to enable fast recovery, a router <bcp14>SHOULD</bcp14> signal forwarding failures to the source, via a SCMP notification (see 'SCMP/Error messages' in <xref target="I-D.dekater-scion-controlplane"/>). This allows the source endpoint to quickly switch to a different path, and the source end-point <bcp14>SHOULD</bcp14> give lower preference to the broken path. Current implementations use a negative cache with entries retained for 10s.</t>
        <t>Sending an SCMP error notification is <bcp14>OPTIONAL</bcp14>. Endpoints should therefore implement additional mechanisms to validate or detect link down signals. To reduce exposure to denial-of-service attacks, SCION routers <bcp14>SHOULD</bcp14> employ rate limiting when sending recommended SCMP notifications (especially identical ones). Rate limit policies are up to each AS's administrator.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section describes the possible security risks and attacks that the SCION Data Plane may be prone to, and how these attacks may be mitigated. It first discusses security risks that pertain to path authorization, followed by a section on other forwarding related security considerations.</t>
      <section anchor="path-authorization-1">
        <name>Path Authorization</name>
        <t>A central property of the SCION path-aware data plane is path authorization. Path authorization guarantees that data packets always traverse the network along path segments authorized in the control plane by all on-path ASes. This section discusses how an adversary may attempt to violate the path authorization property, as well as SCION's prevention mechanisms. Either an attacker can attempt to create unauthorized Hop Fields, or they can attempt to create illegitimate paths assembled from authentic individual Hop Fields.</t>
        <t>The main protection mechanism is the Hop Field MAC (see <xref target="auth-chained-macs"/>) that authenticates the Hop Field content comprised of ingress/egress interface identifiers, creation and expiration timestamp and the preceding Hop Field MACs in the path segment. Each Hop Field MAC is computed using the secret forwarding key of the respective AS, which is shared across the SCION routers and control plane services within each AS.</t>
        <section anchor="forwarding-key-compromise">
          <name>Forwarding key compromise</name>
          <t>For the current default MAC algorithm - AES-CMAC truncated to 48 bits - key recovery attacks from (any number of) known plaintext/MAC combinations is computationally infeasible as far as publicly known. In addition, the MAC algorithm can be freely chosen by each AS, enabling algorithmic agility for MAC computations. Should a MAC algorithm be discovered to be weak or insecure, each AS can quickly switch to a secure algorithm without the need for coordination with other ASes.</t>
          <t>A more realistic risk to the secrecy of the forwarding key is exfiltration from a compromised router or control plane service. An AS can optionally rotate its forwarding key at regular intervals to limit the exposure after a temporary device compromise. However, such a key rotation scheme cannot mitigate the impact of an undiscovered compromise of a device.
Key rotation is outside of the scope of this document and may leverage an out-of-band mechanism.</t>
          <t>When an AS's forwarding key is compromised, an attacker can forge Hop Field MACs and undermine path authorization. As path segments are checked for validity and policy compliance during the path discovery phase and during forwarding, routers only validate the MAC and basic validity of the current the Hop Field. Consequently, creating fraudulent Hop Fields with valid MACs allows an attacker to bypass most path segment validity checks and to create path segments that violate the AS's local policy and/or general path segment validity requirements. In particular, an attacker could create paths that include loops (limited by the maximum number of Hop Fields of a path).</t>
          <t>Unless an attacker has access to the forwarding keys of all ASes on the illegitimate path it wants to fabricate, it will need to splice fragments of two legitimate path segments with an illegitimate Hop Field. For this, it needs to create a Hop Field with a MAC that fits into the MAC chain expected by the second path segment fragment. The only input that the attacker can vary relatively freely is the 8-bit <tt>ExpTime</tt>, but the resulting MAC needs to match a specific 16 bit <tt>Acc</tt> value. While there is a low probability of this working for a specific attempt (1/256), the attack will succeed eventually if the attacker can keep retrying over a longer time period or with many different path segment fragments.</t>
          <t>While a forwarding key compromise and the resulting loss of path authorization is a serious degradation of SCION's routing security properties, this does not affect access control or data security for the hosts in the affected AS. Unauthorized paths are available to the attacker, but the routing of packets from legitimate senders is not affected. Such compromise can be mitigated with a forwarding key rotation.</t>
        </section>
        <section anchor="forging-hop-field-mac">
          <name>Forging Hop Field MAC</name>
          <t>Another method to break path authorization is to directly forge a Hop Field in an online attack, using the router as an oracle to determine the validity of the Hop Field MAC. The adversary needs to send one packet per guess for verification and for 6-byte MAC, an adversary would need an expected 2<sup>47</sup> (~140 trillion) tries to successfully forge the MAC of a single Hop Field.</t>
          <t>As the router only checks MACs during the encoded validity period of the Hop Field, which is limited by the packet header format to at most 24 hours, these tries need to occur in a limited time period. This results in a seemingly infeasible number of ~1.6e9 guesses per second.</t>
          <t>In the unlikely case that an online brute-force attack succeeds, the obtained Hop Field can be used until its inevitable expiration after the just mentioned 24 hour limit.</t>
        </section>
        <section anchor="path-splicing">
          <name>Path Splicing</name>
          <t>In a path splicing attack, an adversary source endpoint takes valid Hop Fields of multiple path segments and splices them together to obtain a new unauthorized path.</t>
          <t>Candidate path segments for splicing must have at least one AS interface in common as a connection point, and the same origination timestamp as this is directly protected by the Hop Field MAC. This can occur by chance or if the two candidate path segments were originated as the same segment that diverged and converged back.</t>
          <t>The Hop Field MAC protects the 16-bit aggregation of path segment identifier and preceding MACs, see <xref target="auth-chained-macs"/>. This MAC chaining prevents splicing even in the case that the AS interface and segment timestamp match.</t>
          <t>As the segment identifier and aggregation of preceding MACs is only 16-bits wide, a chance collision among compatible path segments can occur rarely. Successful path splicing would allow an attacker to briefly use a path that violates an ASes path policy - e.g., making a special transit link available to a customer AS that is not billed accordingly, or violate general path segment validity requirements.</t>
          <t>In particular, a spliced path segment could traverse one or multiple links twice. However, creating a loop traversing a link an arbitrary number of times would involve multiple path splices and therefore multiple random collisions happening simultaneously, which is exceedingly unlikely. A wider security margin against path splicing could be obtained by increasing the width of the segment identifier / <tt>Acc</tt> field, e.g., by extending it into the 8-bit reserved field next to it in the Info Field.</t>
        </section>
      </section>
      <section anchor="on-path-attacks">
        <name>On-Path Attacks</name>
        <t>When an adversary sits on the path between the source and destination endpoint, it is able to intercept the data packets that are being forwarded and would allow the adversary to hijack traffic onto a path that is different from the intended one selected by the source endpoint. Possible on-path attacks in the data plane are modifications of the SCION path header and SCION address header, or by simply dropping packets. This kind of attack generally cannot be prevented, although an endpoint can use SCION's path awareness to immediately select an alternate path if available.</t>
        <section anchor="modification-of-the-path-header">
          <name>Modification of the Path Header</name>
          <t>An on-path adversary could modify the SCION path header and replace the remaining part of path segments to the destination with different segments. Such replaced segments must include authorized segments as otherwise the packet would be simply dropped on its way to the destination.</t>
          <t>The already traversed portion of the current segment and past segments can also be modified by the adversary (e.g., by deleting and adding valid and invalid Hop Fields). On reply packets from the destination, the adversary can transparently revert the changes to the path header again. For example, if an adversary M is an intermediate AS on the path of a packet from A to B, then M can replace the packet’s past path (leading up to, but not including M) where the new path may not be a valid end-to-end path. However, when B reverses the path and sends a reply packet, that packet would go via M which can then transparently change the invalid path back to the valid path to A. In addition, the endpoint address header can also be modified.</t>
          <t>Modifications of the SCION path and address header can be discovered by the destination endpoint by a data integrity protection system. Such a data integrity protection system, loosely analogous to the IPsec Authentication Header, exists for SCION but is out of scope for this document. This is described as the SCION Packet Authentication Option (SPAO) in <xref target="CHUAT22"/>.</t>
          <t>Moreover, packet integrity protection is not enough if there are two colluding adversaries on the path who can forward the packet between them using a different path than selected by the source endpoint. The first on-path attacker remodels the packet header arbitrarily, and the second on-path attacker changes the path back to the original source-selected path, such that the integrity check by the destination endpoint succeeds. However, such an attack is of little value. An on-path adversary may inspect/copy/disrupt its traffic without diverting it away from the sender-chosen path. For this reason proof-of-transit, which would be required to detect such an attack, has marginal benefit in the context of SCION and it is not in scope for this document.</t>
        </section>
        <section anchor="payload-integrity">
          <name>Payload Integrity and Encryption</name>
          <t>The SCION Data Plane does not natively provide payload integrity or encryption. An on-path attacker can inspect or alter the packet payload. Existing higher layer protocols can mitigate such attacks independently of the network layer. For that reason, payload integrity is not in scope for this specification. An experimental extension, SPAO, exists to authenticate addresses, provide payload integrity protection, and replay protection. This is still experimental and it not used in the production network.</t>
        </section>
      </section>
      <section anchor="off-path-attacks">
        <name>Off-Path Attacks</name>
        <t>SCION's path awareness limits the abilities of an off-path adversary to influence forwarding in the data plane. Once a packet is en-route it will follow its determined path regardless of the actions of the adversary. An adversary can attempt to disrupt the connectivity of the path by flooding a link with excessive traffic (see <xref target="dos"/> below), but after detecting congestion, the endpoint can switch to another non-congested path for subsequent packets.</t>
      </section>
      <section anchor="dos">
        <name>Volumetric Denial of Service Attacks</name>
        <t>An adversary can attempt to disrupt the connectivity of a network path by flooding a link with excessive traffic. In this case, the endpoint can switch to another non-congested path for subsequent packets.</t>
        <t>SCION provides protection against certain reflection-based DoS attacks. Here, the adversary sends requests to a server with the source address set to the address of the victim, and the server will send a reply that is typically larger than the request to the victim. This can be prevented in SCION as long as the attacker and the victim are located in different ASes as the reply packets are simply returned along reversed path to the actual sender regardless of the source address information. Thus, the reply packets will be forwarded to the attacker's AS where they will be discarded because the destination AS does not match. The SPAO experimental extension can further help mitigate such attacks through endpoint address authentication and replay protection.</t>
        <t>However, the path choice of the endpoint may possibly be exploited by an attacker to create intermittent congestion with a relatively low send rate. The attacker can exploit the latency differences of the available paths, sending at precisely timed intervals to cause short, synchronized bursts of packets near the victim.</t>
        <t>SCION does not protect against two other types of DoS attacks, namely transport protocol attacks and application layer attacks. Such attacks are out of SCION's scope although additional information contained in the SCION header enables more targeted filtering - e.g., by ISD, AS or path length.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
      <t>The ISD and SCION AS number are SCION-specific numbers. They are allocated by the SCION Association (see <xref target="ISD-AS-assignments"/>).</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.dekater-scion-pki">
          <front>
            <title>SCION Control Plane PKI</title>
            <author fullname="Corine de Kater" initials="C." surname="de Kater">
              <organization>Independent</organization>
            </author>
            <author fullname="Nicola Rustignoli" initials="N." surname="Rustignoli">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Samuel Hitz" initials="S." surname="Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <date day="23" month="June" year="2026"/>
            <abstract>
              <t>   This document presents the trust concept and design of the SCION
   _Control Plane Public Key Infrastructure (CP-PKI)_. SCION
   (Scalability, Control, and Isolation On Next-generation networks) is
   a path-aware, inter-domain network architecture that relies on the
   CP-PKI to handle cryptographic material, authenticate control plane
   messages used to securely disseminate path information.

   This specification introduces its localized trust model, anchored in
   Isolation Domains (ISDs).  It defines the distinct certificate types,
   and specifies the structure, format and lifecycle of the Trust Root
   Configuration (TRC).  Furthermore, it provides practical guidelines
   for deploying and maintaining the CP-PKI infrastructure.

   This document contains new approaches to secure path aware
   networking.  It is not an Internet Standard, has not received any
   formal review of the IETF, nor was the work developed through the
   rough consensus process.  The approaches offered in this work are
   offered to the community for its consideration in the further
   evolution of the Internet.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekater-scion-pki-15"/>
        </reference>
        <reference anchor="I-D.dekater-scion-controlplane">
          <front>
            <title>SCION Control Plane</title>
            <author fullname="Corine de Kater" initials="C." surname="de Kater">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Nicola Rustignoli" initials="N." surname="Rustignoli">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Samuel Hitz" initials="S." surname="Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <date day="30" month="April" year="2026"/>
            <abstract>
              <t>   This document describes the Control Plane of the path-aware, inter-
   domain network architecture SCION (Scalability, Control, and
   Isolation On Next-generation networks).  A fundamental characteristic
   of SCION is that it gives path control to SCION-capable endpoints
   that can choose between multiple path options, thereby enabling the
   optimization of network paths.  The SCION Control Plane is
   responsible for discovering these paths and making them available to
   the endpoints.

   The SCION Control Plane creates and securely disseminates path
   segments between SCION Autonomous Systems (AS) which can then be
   combined into forwarding paths to transmit packets in the data plane.
   This document describes mechanisms of path exploration through
   beaconing and path registration.  In addition, it describes how
   Endpoints construct end-to-end paths by combining path segments
   obtained through a path lookup process.

   This document contains new approaches to secure path aware
   networking.  It is not an Internet Standard, has not received any
   formal review of the IETF, nor was the work developed through the
   rough consensus process.  The approaches in this work are offered to
   the community for its consideration in the further evolution of the
   Internet.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekater-scion-controlplane-18"/>
        </reference>
        <reference anchor="POSIX.1-2024" target="https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/V1_chap04.html">
          <front>
            <title>Standard for Information Technology--Portable Operating System Interface (POSIX™) Base Specifications, Issue 8</title>
            <author>
              <organization/>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="RFC8200">
          <front>
            <title>Internet Protocol, Version 6 (IPv6) Specification</title>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="86"/>
          <seriesInfo name="RFC" value="8200"/>
          <seriesInfo name="DOI" value="10.17487/RFC8200"/>
        </reference>
        <reference anchor="RFC2474">
          <front>
            <title>Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers</title>
            <author fullname="K. Nichols" initials="K." surname="Nichols"/>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines the IP header field, called the DS (for differentiated services) field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2474"/>
          <seriesInfo name="DOI" value="10.17487/RFC2474"/>
        </reference>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan"/>
            <author fullname="S. Floyd" initials="S." surname="Floyd"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="September" year="2001"/>
            <abstract>
              <t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3168"/>
          <seriesInfo name="DOI" value="10.17487/RFC3168"/>
        </reference>
        <reference anchor="RFC4493">
          <front>
            <title>The AES-CMAC Algorithm</title>
            <author fullname="JH. Song" initials="JH." surname="Song"/>
            <author fullname="R. Poovendran" initials="R." surname="Poovendran"/>
            <author fullname="J. Lee" initials="J." surname="Lee"/>
            <author fullname="T. Iwata" initials="T." surname="Iwata"/>
            <date month="June" year="2006"/>
            <abstract>
              <t>The National Institute of Standards and Technology (NIST) has recently specified the Cipher-based Message Authentication Code (CMAC), which is equivalent to the One-Key CBC MAC1 (OMAC1) submitted by Iwata and Kurosawa. This memo specifies an authentication algorithm based on CMAC with the 128-bit Advanced Encryption Standard (AES). This new authentication algorithm is named AES-CMAC. The purpose of this document is to make the AES-CMAC algorithm conveniently available to the Internet Community. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4493"/>
          <seriesInfo name="DOI" value="10.17487/RFC4493"/>
        </reference>
        <reference anchor="RFC5880">
          <front>
            <title>Bidirectional Forwarding Detection (BFD)</title>
            <author fullname="D. Katz" initials="D." surname="Katz"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>This document describes a protocol intended to detect faults in the bidirectional path between two forwarding engines, including interfaces, data link(s), and to the extent possible the forwarding engines themselves, with potentially very low latency. It operates independently of media, data protocols, and routing protocols. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5880"/>
          <seriesInfo name="DOI" value="10.17487/RFC5880"/>
        </reference>
        <reference anchor="RFC6437">
          <front>
            <title>IPv6 Flow Label Specification</title>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="S. Jiang" initials="S." surname="Jiang"/>
            <author fullname="J. Rajahalme" initials="J." surname="Rajahalme"/>
            <date month="November" year="2011"/>
            <abstract>
              <t>This document specifies the IPv6 Flow Label field and the minimum requirements for IPv6 nodes labeling flows, IPv6 nodes forwarding labeled packets, and flow state establishment methods. Even when mentioned as examples of possible uses of the flow labeling, more detailed requirements for specific use cases are out of the scope for this document.</t>
              <t>The usage of the Flow Label field enables efficient IPv6 flow classification based only on IPv6 main header fields in fixed positions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6437"/>
          <seriesInfo name="DOI" value="10.17487/RFC6437"/>
        </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="CHUAT22" target="https://doi.org/10.1007/978-3-031-05288-0">
          <front>
            <title>The Complete Guide to SCION</title>
            <author initials="L." surname="Chuat" fullname="Laurent Chuat">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="M." surname="Legner" fullname="Markus Legner">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="D." surname="Basin" fullname="David Basin">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="D." surname="Hausheer" fullname="David Hausheer">
              <organization>Otto von Guericke University Magdeburg</organization>
            </author>
            <author initials="S." surname="Hitz" fullname="Samuel Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <author initials="P." surname="Mueller" fullname="Peter Mueller">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="A." surname="Perrig" fullname="Adrian Perrig">
              <organization>ETH Zuerich</organization>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="ISBN" value="978-3-031-05287-3"/>
        </reference>
        <reference anchor="ISD-AS-assignments" target="http://scion.org/registry/">
          <front>
            <title>SCION Registry</title>
            <author>
              <organization/>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="RFC1918">
          <front>
            <title>Address Allocation for Private Internets</title>
            <author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
            <author fullname="B. Moskowitz" initials="B." surname="Moskowitz"/>
            <author fullname="D. Karrenberg" initials="D." surname="Karrenberg"/>
            <author fullname="G. J. de Groot" initials="G. J." surname="de Groot"/>
            <author fullname="E. Lear" initials="E." surname="Lear"/>
            <date month="February" year="1996"/>
            <abstract>
              <t>This document describes address allocation for private internets. 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="5"/>
          <seriesInfo name="RFC" value="1918"/>
          <seriesInfo name="DOI" value="10.17487/RFC1918"/>
        </reference>
        <reference anchor="RFC2711">
          <front>
            <title>IPv6 Router Alert Option</title>
            <author fullname="C. Partridge" initials="C." surname="Partridge"/>
            <author fullname="A. Jackson" initials="A." surname="Jackson"/>
            <date month="October" year="1999"/>
            <abstract>
              <t>This memo describes a new IPv6 Hop-by-Hop Option type that alerts transit routers to more closely examine the contents of an IP datagram. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2711"/>
          <seriesInfo name="DOI" value="10.17487/RFC2711"/>
        </reference>
        <reference anchor="RFC4821">
          <front>
            <title>Packetization Layer Path MTU Discovery</title>
            <author fullname="M. Mathis" initials="M." surname="Mathis"/>
            <author fullname="J. Heffner" initials="J." surname="Heffner"/>
            <date month="March" year="2007"/>
            <abstract>
              <t>This document describes a robust method for Path MTU Discovery (PMTUD) that relies on TCP or some other Packetization Layer to probe an Internet path with progressively larger packets. This method is described as an extension to RFC 1191 and RFC 1981, which specify ICMP-based Path MTU Discovery for IP versions 4 and 6, respectively. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4821"/>
          <seriesInfo name="DOI" value="10.17487/RFC4821"/>
        </reference>
        <reference anchor="RFC9217">
          <front>
            <title>Current Open Questions in Path-Aware Networking</title>
            <author fullname="B. Trammell" initials="B." surname="Trammell"/>
            <date month="March" year="2022"/>
            <abstract>
              <t>In contrast to the present Internet architecture, a path-aware internetworking architecture has two important properties: it exposes the properties of available Internet paths to endpoints, and it provides for endpoints and applications to use these properties to select paths through the Internet for their traffic. While this property of "path awareness" already exists in many Internet-connected networks within single domains and via administrative interfaces to the network layer, a fully path-aware internetwork expands these concepts across layers and across the Internet.</t>
              <t>This document poses questions in path-aware networking, open as of 2021, that must be answered in the design, development, and deployment of path-aware internetworks. It was originally written to frame discussions in the Path Aware Networking Research Group (PANRG), and has been published to snapshot current thinking in this space.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9217"/>
          <seriesInfo name="DOI" value="10.17487/RFC9217"/>
        </reference>
        <reference anchor="RFC9473">
          <front>
            <title>A Vocabulary of Path Properties</title>
            <author fullname="R. Enghardt" initials="R." surname="Enghardt"/>
            <author fullname="C. Krähenbühl" initials="C." surname="Krähenbühl"/>
            <date month="September" year="2023"/>
            <abstract>
              <t>Path properties express information about paths across a network and the services provided via such paths. In a path-aware network, path properties may be fully or partially available to entities such as endpoints. This document defines and categorizes path properties. Furthermore, the document identifies several path properties that might be useful to endpoints or other entities, e.g., for selecting between paths or for invoking some of the provided services. This document is a product of the Path Aware Networking Research Group (PANRG).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9473"/>
          <seriesInfo name="DOI" value="10.17487/RFC9473"/>
        </reference>
        <reference anchor="CRYPTOBOOK" target="https://toc.cryptobook.us/">
          <front>
            <title>A Graduate Course in Applied Cryptography</title>
            <author initials="D." surname="Boneh" fullname="Dan Boneh">
              <organization/>
            </author>
            <author initials="V." surname="Shoup" fullname="Victor Shoup">
              <organization/>
            </author>
            <date year="2023"/>
          </front>
        </reference>
        <reference anchor="PEREIRA2025">
          <front>
            <title>Protocols to Code: Formal Verification of a Secure Next-Generation Internet Router</title>
            <author initials="J." surname="Pereira" fullname="João Pereira">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="T." surname="Klenze" fullname="Tobias Klenze">
              <organization>Independent</organization>
            </author>
            <author initials="S." surname="Giampietro" fullname="Sofia Giampietro">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="M." surname="Limbeck" fullname="Markus Limbeck">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="" surname="Dionysios Spiliopoulos" fullname="D. Spiliopoulos">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="F." surname="Wolf" fullname="Felix Wolf">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="M." surname="Eilers" fullname="Marco Eilers">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="C." surname="Sprenger" fullname="Christoph Sprenger">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="D." surname="Basin" fullname="David Basin">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="P." surname="Müller" fullname="Peter Müller">
              <organization>ETH Zürich</organization>
            </author>
            <author initials="A." surname="Perrig" fullname="Adrian Perrig">
              <organization>ETH Zürich</organization>
            </author>
            <date year="2025"/>
          </front>
        </reference>
        <reference anchor="SIG" target="https://docs.scion.org/en/latest/sig.html">
          <front>
            <title>SCION IP Gateway Documentation</title>
            <author initials="" surname="Anapaya">
              <organization>Anapaya Systems</organization>
            </author>
            <author initials="" surname="ETH">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="" surname="SCION">
              <organization>SCION Association</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="SCION-UDP" target="https://docs.scion.org/en/latest/protocols/underlay.html">
          <front>
            <title>SCION IP/UDP underlay</title>
            <author initials="" surname="Anapaya">
              <organization>Anapaya Systems</organization>
            </author>
            <author initials="" surname="ETH">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="" surname="SCION">
              <organization>SCION Association</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1517?>

<section anchor="protnum">
      <name>Assigned SCION Protocol Numbers</name>
      <t>This appendix lists the assigned SCION protocol numbers.</t>
      <section numbered="false" anchor="considerations">
        <name>Considerations</name>
        <t>SCION attempts to take the IANA's assigned Internet protocol numbers into consideration. Widely employed protocols have the same protocol number as the one assigned by IANA. SCION specific protocol numbers start at 200.</t>
        <t>The protocol numbers are used in the SCION header to identify the upper layer protocol.</t>
      </section>
      <section numbered="false" anchor="protnum-table">
        <name>Assignment</name>
        <table>
          <name>The assigned SCION protocol numbers</name>
          <thead>
            <tr>
              <th align="left">Decimal</th>
              <th align="left">Keyword</th>
              <th align="left">Protocol</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0-5</td>
              <td align="left"> </td>
              <td align="left">Unassigned</td>
            </tr>
            <tr>
              <td align="left">6</td>
              <td align="left">TCP/SCION</td>
              <td align="left">Transmission Control Protocol over SCION</td>
            </tr>
            <tr>
              <td align="left">7-16</td>
              <td align="left"> </td>
              <td align="left">Unassigned</td>
            </tr>
            <tr>
              <td align="left">17</td>
              <td align="left">UDP/SCION</td>
              <td align="left">User Datagram Protocol over SCION</td>
            </tr>
            <tr>
              <td align="left">18-199</td>
              <td align="left"> </td>
              <td align="left">Unassigned</td>
            </tr>
            <tr>
              <td align="left">200</td>
              <td align="left">HBH</td>
              <td align="left">SCION Hop-by-Hop Options</td>
            </tr>
            <tr>
              <td align="left">201</td>
              <td align="left">E2E</td>
              <td align="left">SCION End-to-End Options</td>
            </tr>
            <tr>
              <td align="left">202</td>
              <td align="left">SCMP</td>
              <td align="left">SCION Control Message Protocol</td>
            </tr>
            <tr>
              <td align="left">203</td>
              <td align="left">BFD/SCION</td>
              <td align="left">BFD over SCION</td>
            </tr>
            <tr>
              <td align="left">204-252</td>
              <td align="left"> </td>
              <td align="left">Unassigned</td>
            </tr>
            <tr>
              <td align="left">253</td>
              <td align="left"> </td>
              <td align="left">Use for experimentation and testing</td>
            </tr>
            <tr>
              <td align="left">254</td>
              <td align="left"> </td>
              <td align="left">Use for experimentation and testing</td>
            </tr>
            <tr>
              <td align="left">255</td>
              <td align="left"> </td>
              <td align="left">Reserved</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section numbered="false" anchor="change-log">
      <name>Change Log</name>
      <t>Changes made to drafts since ISE submission. This section is to be removed before publication.</t>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-15">
        <name>draft-dekater-scion-dataplane-15</name>
        <ul spacing="normal">
          <li>
            <t>Remove SCIONLab appendix, make appendix numbered</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-14">
        <name>draft-dekater-scion-dataplane-14</name>
        <ul spacing="normal">
          <li>
            <t>Life of a packet: clarify that private ports are not registered</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-13">
        <name>draft-dekater-scion-dataplane-13</name>
        <ul spacing="normal">
          <li>
            <t>Life of a packet: use private ports in examples</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-12">
        <name>draft-dekater-scion-dataplane-12</name>
        <ul spacing="normal">
          <li>
            <t>1.3.2.  Intra-Domain Forwarding Process: clarify relation to UDP/IP underlay, add informative reference. CLarify use of underlay ports in 3.  Life of a SCION Data Packet</t>
          </li>
          <li>
            <t>Accumulator field: clarify that it is initialized to SegID</t>
          </li>
          <li>
            <t>Processing at Egress Border Router: mention check that packet comes from neighbor router</t>
          </li>
          <li>
            <t>Security considerations: clarify that forwarding key rotation may use OOB mechanisms, mention SPAO in Volumetric DoS section</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-11">
        <name>draft-dekater-scion-dataplane-11</name>
        <ul spacing="normal">
          <li>
            <t>Reduce use of passive tense and clarify subject</t>
          </li>
          <li>
            <t>Abstract, Introduction: reworded and shortened, with reference to longer -controlplane introduction</t>
          </li>
          <li>
            <t>Tables 1-4: move them to dedicated subsections to increase readability</t>
          </li>
          <li>
            <t>Figures 2, 3: move text to after figures</t>
          </li>
          <li>
            <t>Life of a SCION Data Packet: restructure section and clarify role of example topology</t>
          </li>
          <li>
            <t>Effects of Clock Inaccuracy: reword, clarify tolerable offset, remove duplicated part about beacon propagation and point to -controlplane</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-10">
        <name>draft-dekater-scion-dataplane-10</name>
        <ul spacing="normal">
          <li>
            <t>Add normative reference to POSIX time and clarify timestamp behavior at wraparound</t>
          </li>
          <li>
            <t>Clarify distinction between SCION ASes and BGP ASes through the text</t>
          </li>
          <li>
            <t>Figure 1: split into two smaller figures to fit in a single page</t>
          </li>
          <li>
            <t>Figure 9 (Path construction example): shorten and remove superfluous AS chain</t>
          </li>
          <li>
            <t>Configuration: clarify text on intra vs inter-domain interface id mappings</t>
          </li>
          <li>
            <t>Remove unused informative reference to I-D.dekater-panrg-scion-overview, to RFC5280, and to Anapaya's ISD assignments, since they are taken over by SCION Association in 2026</t>
          </li>
          <li>
            <t>Overall review and wording polish</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-09">
        <name>draft-dekater-scion-dataplane-09</name>
        <ul spacing="normal">
          <li>
            <t>Intro: remove duplicated motivation and component description and add a reference to the same text in -controlplane</t>
          </li>
          <li>
            <t>Clarify coarse time synchronization requirement between routers and control services and add reference to -controlplane security considerations</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-08">
        <name>draft-dekater-scion-dataplane-08</name>
        <ul spacing="normal">
          <li>
            <t>Small clarifications and nits (e.g, replace RFC2460 reference with more recent RFC8200)</t>
          </li>
          <li>
            <t>Life of a SCION Data Packet: improve clarity in text and tables</t>
          </li>
          <li>
            <t>Remove use of decimal notation in tables 3 and 4</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-07">
        <name>draft-dekater-scion-dataplane-07</name>
        <ul spacing="normal">
          <li>
            <t>Clarify MTU of reversed paths and MAC algorithm</t>
          </li>
          <li>
            <t>Fix and reduce nested indentations in "Steps at Ingress Border Router"</t>
          </li>
          <li>
            <t>Reference formal verification work and acknowledge reviewers</t>
          </li>
          <li>
            <t>Nits, improve figure 2</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-06">
        <name>draft-dekater-scion-dataplane-06</name>
        <ul spacing="normal">
          <li>
            <t>Figures: redraw and add aasvg version when possible</t>
          </li>
          <li>
            <t>Clarify 0 as "unspecified" Interface ID</t>
          </li>
          <li>
            <t>Use ASes within the documentation range in examples</t>
          </li>
          <li>
            <t>Remove one-hop path type figure</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-05">
        <name>draft-dekater-scion-dataplane-05</name>
        <ul spacing="normal">
          <li>
            <t>Abstract: mention goal and that document is not an Internet Standard</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-04">
        <name>draft-dekater-scion-dataplane-04</name>
        <ul spacing="normal">
          <li>
            <t>Moved SCMP specification to draft-dekater-scion-controlplane</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-03">
        <name>draft-dekater-scion-dataplane-03</name>
        <t>Major changes:</t>
        <ul spacing="normal">
          <li>
            <t>Introduction: clarified document goal and added Figure showing SCION Header within the stack</t>
          </li>
          <li>
            <t>Added section with SCMP specification</t>
          </li>
          <li>
            <t>Added section on Handling Link Failures and BFD</t>
          </li>
          <li>
            <t>Added sections on MTU and fragmentation</t>
          </li>
          <li>
            <t>Clarified router checks in Processing at Routers</t>
          </li>
          <li>
            <t>Security Considerations: add section on Payload Modifications</t>
          </li>
        </ul>
        <t>Minor changes:</t>
        <ul spacing="normal">
          <li>
            <t>Added short section mentioning SCION IP Gateway</t>
          </li>
          <li>
            <t>Clarified the router alert flags and relationship to the ConsIngress/Egress fields.</t>
          </li>
          <li>
            <t>Clarifications in the SCION Header Specification section (router alert flags, service addresses, one-hop paths, text clarifications, validity of peering links)</t>
          </li>
          <li>
            <t>Added mention of why proof of transit is not needed.</t>
          </li>
          <li>
            <t>Rename flow ID to Flow Label and document by reference to <xref target="RFC6437"/>.</t>
          </li>
          <li>
            <t>Added reference to SCIONLab as a testbed for implementors</t>
          </li>
          <li>
            <t>Added J. C. Hugly as author.</t>
          </li>
          <li>
            <t>Introduced this change log</t>
          </li>
          <li>
            <t>Clarify addressing and avoid confusing claim of communication between two endpoints with the same IP (section 1.3.1)</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-dataplane-02">
        <name>draft-dekater-scion-dataplane-02</name>
        <t>Major changes:</t>
        <ul spacing="normal">
          <li>
            <t>Added overview of SCION components to Introduction section.</t>
          </li>
          <li>
            <t>Introduced AES-CMAC as default MAC algorithm and elaborated on MAC chaining and path splicing.</t>
          </li>
          <li>
            <t>Added section to describe Effects of Clock Inaccuracy / time synchronization requirements</t>
          </li>
          <li>
            <t>Added section to describe required router Configuration</t>
          </li>
          <li>
            <t>Added service field table.</t>
          </li>
        </ul>
        <t>Minor changes:</t>
        <ul spacing="normal">
          <li>
            <t>Removed forward references.</t>
          </li>
          <li>
            <t>General edits to make terminology consistent, remove duplication and rationalize text.</t>
          </li>
          <li>
            <t>Added and capitalized RFC2119 compliant terminology.</t>
          </li>
          <li>
            <t>Clarified implications of AS forwarding key compromise and path splicing in security considerations</t>
          </li>
          <li>
            <t>Clarified the computation of ExtLen.</t>
          </li>
        </ul>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Many thanks go to Harald Alvestrand (Google), Joel Halpern (Ericsson), Michael McBride (Futurewei), Ron Bonica (Juniper), Brian Trammel (Google) for reviewing this document. We also thank Matthias Frei (SCION Association), Juan A. Garcia Prado (ETH Zurich) and Kevin Meynell (SCION Association), Adrian Perrig (ETH Zurich) for providing inputs to this document. We also thank the Information Security Group at ETH Zurich for their inputs based on their formal verification work of the SCION open source router implementation <xref target="PEREIRA2025"/>. Finally, we are indebted to the SCION development teams of Anapaya, ETH Zurich, and SCION Association for their practical knowledge and for the documentation about the SCION Data Plane, as well as to the authors of <xref target="CHUAT22"/> - the book is an important source of input and inspiration for this draft.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+y923rb6JUoeK+nwJYvSpRJSpRkl0uJa7cs2WV1fNBYcjqZ
7J4IJEESMQmwAVAyY7mv5kHmm3mNfTX7TeZJZh3/E0BK8qE6nbSSqpJI4D+s
f/3rfOh0OhtVWk2Tw2jz/Pj07ZvoJK7i6GwaZ8nmRtzvF8mV/epsc2MQV8k4
L5aHUZqN8o1y0Z+lZZnmWbWcJ/jhMJkn8K+s2tgY5oMsnsGnwyIeVZ1h8gFe
LjrlAB7vDGGeOU7T6T3agDn2Nx5EcZHEMNvpu4sXm/DndV58GBf5Yg6fncXV
JDq6hieiN0mF36TZOHr3y+bGh2QJfw4Po9MMRs+SqnOC021cJdkiOYRhotvH
gId4/ZvvkjKJi8Ek+gVfom9mcTqFb+ZxVoz/KS2qUTcvxvQNPgjfTKpqXh7u
7FxfX3fThL/fwbc6+EB6lexcJ/0den9ncwPWk1aTRR9eJEjEZZkP0riCX3cE
NPM/n3ZO8MkpAKysnCnCN7o8VjfNvXd31kK8O6lm082NjXhRTfLicGMj6kQR
HF15GB13o2ES/Q7fgunhhw/wOC/SLAm+gl0i0O2B06cJg2vw52HyZ5r9n8az
j93BxJ3lTTd6tyirdJzl09Sd5006yKdx7UuaiXHwyO7dmy9LB/9E20Tgu3P9
cxc39XIxni7dmf45ibPO8aRIyyqfTxL3gbX7+ks6SP7p6jqult1BPnMnOodZ
0uqv7iTn8WyRTJ2PaeijLJ7Hyzg6X5ZVMiu94Sfw6D/F/EAXcHljI8uLGWz3
ClA5iuBou/6hzj+kzV8M4EoW+ZQOHJ84e3t++odur7O3u3dwuGHXePr8+XP6
05CBKs6GcTGMRnkBYBjx/HkWXSSDCZxJPl52Omd5UcX9aRK9nScFfA33iLfD
t3AUD5Joi6b8//7P/7sVPYvLJDqfJ4N0lA5otLIdnZblIomebNLsgJwwOS6O
FxMX4wQQX/F+vuiX3RwOhO4yXbA8mwJO4hc7P/34008/9fDfO32YaZiMyp3f
9/48mMTz3QPCdhj03YvjJ3u7u4f8697Bjwfy637v8RP59eDgp3359dGTJ/rs
44P9Hw83UgUFH8Xxy/dHF3t7hx7sLgCTjvPZfJpUSfTLIoULU+WMucE29xq3
OcxT2ltvt9vb3f0RNvaks9/Z3e91dh/tPXnS2aW3yqRIkxLXw7PD8Z8/e3MY
+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
yS7+Cw7faoS/j7v5twCHUKZ+pNLaK2Ju0nRMeaNlh2Ssr4LmZMQnKSJV3fRc
xW7fqSqnNYTx88cHfuUpcRALi7kMOl9bIZ1FTadSHQ5pa4hyq0gbj0Ms3kk3
ckNVKIpIAwnabjE8esxEGDppCljl06T0w5INEbyMkn9bxNPw1YbsDxO5YMIa
O/gZt64JqvDN1Tlnctikubh5wgyyrlafr8SaPDENH3FK9ynYFVacGIVSHjwh
JbrIZEFuOSwfRjGth5zuZiwm15OkMjUbbK5P5WZ/qffEqWtpyv60HeekOxZH
1OQFpw3aU0/9soamulPp9Os0T3M4i9C7S/9hdFCbRMd6yzxTFWtdOzvH+lSK
hzHlRmhHd+hYF5ZRJ8+wPdQVDe3qsS8Dic/CfkOYimY71Jm2CuHFdPDcuNl8
1AnaZrM7jeoJcol6XKwmoiZ+YZLHNlvFBmRpAWQGqeTtSQihidfxanCY0xJz
j1/ALnoGmHkdFzahDhQRN8uIOkFWfFf/GwPOYhG946ADRdooomkmlFdrEWOl
Mv3KK1rF3bpbzp3grrMO7hiE6cIE1+gFbOtQk7Vrkrgyu6gSy7rZwmdbdDnX
rKptF1NDXiqV3Tc2SbzzC3Gu+sC2qI13H7MrsUYd5u1h+Ll7kSjq7LwtsKAO
XFSQ5baLRKVkkUhJr7e+aSOMK4mHf4Fnssohr/mYSEVYbOX93HTVtj9YtiH8
+CS/zvQzTdoWC43zZtOnzmf44o0p6+UXDKl/6nzGL95Ep29eRI7J6GHw6UN9
0f1sxaQ3wac3DQsx8758Edl55XHv04dR/cnmmW8aZr6pz9w490N9u7aihs8a
Zr9ZMXvjZ7X5H+qz3infrFhT0wpu9GlfXlu5qpsapt2sW0PTk7XKfDdr5mt8
ct0INyiTWQB8wQhftQZ8+WfB9S8bIfrqNUTOffutxdGvWEP01Wto+nn41WuI
1ozAr/4sd+BLRoi+cg2K/F++hmCoe6/BXr8vXUNtO/deg/c1reG37kBfsYbo
1hHcRlEoDIZraCpedt81NG/07nBYeTO+ag3RV6/BcPmvWEP01WtYW8k1EEea
f1xhJzAhPFYTwpkWuTfKnfSZROPBAxPpTKxFnDUa8OyYAcSOf8AZsrU3JEXd
Mxy0RHIt6+mxViF2nTrieG5oyO5kF4h/5B/D23t8CgiIQdKIS4yM4tO9QRfw
eJcy4vj3nvP7Hv/+HSxTPxpnr++Ni6i/jURUV5NVKCLOYNwSsM9LUNsm6I7E
xI7j00uu0d1yIz7iaK8jGWHD5GO0tduhGgmtiIIWJFbAsUu5FhmNKRb7U859
0LGziasPiRGKg6pr8dT5aFQmVWcQTwct0Zp1Ay9fXPorfXy/lVp19zstNCho
o4uWBVIWGId+UKRIoH2nfrUc0zjGsTuQoa7WysseLs2DBdtzasI+5Bw67Zmu
bdls80Is+unkSGsDRm7/0wQIa20xZUlY3x4UXAme9VpYBfo5R7b007oAeq/u
fIvtoXClPu22e+29z5wDdLHKKkl5i2Nq4mwMhfhyii9GPwNh8Hpuqp1gO3US
x70mJGZs02kpiTN520F1HICLUnWjrdORM+dTmBPtWN5cWEmH0xNwONblY8kH
pBO2qXics+S+bdK+pDmnMZlmebCkbktSLbyOINRKYXmIFR65LVWVV/F0NTyz
sFWMaZRBxiO9VpLIhtkawXmFHCWtNZ/p0lqk4jzMVxQ5pYdRDV4c7A/m/I7e
nNAnf2ToAnjbUsFpL/r5abT9h214bPuP2/jHLqIo3aU2op9XA+6PziH4zMx7
7A+8Wa3XRS90nYCa95kJp1+bziRc/i1RiegYqIS0ysMYNYd2SK+iiD+KBu6D
1HBBb5zfMx6BRcHYSeAkiLl20kovwXBROMn2cvmwpBDLG42ow5TCLM1xHciy
S5YE/h0Fp3RkGCIc3yFGvKDi9hRZfBQl0zKRR3r1R/aCR3brj/T0kUMNvuGZ
afWympCGBsCo84OtIsGNXSVOew8dxI/vbIkh9dqAg9Iknf0/g0WizIa/Gx+J
oMHT6OBZ9DB68izajoRq42NqkQ+f6squH0a9PX3l5Qvdb86tPCy/qe8rLUP/
wErItH2WZfqOSLWkWJoR00NwMjbZswZtqdg1SIipOJZ2vRjOcWCn3ZGT/YRJ
7ijvOo9sOZ6m1j+QKOqInmc3Wt3aBBj6etLRYBBs4ns7iy+M22z1z/cQh5/c
VRy2GOTFQ96FfKM/Fh7VQpXo5utKnyX6g5CQI/42e5vtZv+b02ewyWfZ4JxT
gUOEJqlqgKX9DJE2ng3T722tZAUzYGQZ95HkZEWk+h2qL8cZu8ew0eNGR+Td
9u2LDveABHlSiyLOxlbvtHOT04OEgT66mYw2nRgGZlqj0DbgAsBG4N+LGdLk
vJB8UWraS0yUiMzOIF9kFXsJTUl7PP6Qt70+Or4frNF32RlMSOjBJp4lg9dc
E5RhzZVxHJTk7JWilnlhw7Rd1yNvVaozWXe1bXoea1tN9IWVGKY+SKLn8xx9
3H6I99nb89M/dHudvd09LI9xLuA+6PZ+apvyhOQX3yc1MFpkkhaGrqlxonC1
y2AZRTMFqGGyeNziO3ipG3GjjZ9xkytbUnSeFtYdTwiNZ+QEoNrJOo2vhCsq
XQ4e8n/b0C86ynhpI9sc0I8a4PvB9IMYLoHBtIVmWUnqemh5YqnTGPvnSWEl
Q2pVuckDbqIgxAnVuFDJRCDvbM6drGy3SuW/tNv5dFFG+/s/dh8ZtNiyNSiw
SykWLqBHUZKkdvUjjgJo1c74usBm5XFBzewTirfe+z/29+zIICUW+ccUyG8C
S+rtP46WSVyULaeXFoa64jgySo6dRgshafhwtNfbfdwFQRk7R0yoZi4GTMQf
EiztELQeLSXYhQtVUNU3hCo2fBPyEDuTqdxhD//TA9jnyAgdvT2WOhyB8NKG
SfyjSh2nN8/p7+cf50i66DNnwcg1TsWF/V2kDpzguT9+uIYvlDpuGeHWMDmk
PF+7hntLPj/dVfIxWPwlgs+pGFv0ZN9xG8KjaVJUrkSQlr404FSm0dgzU01K
Gyk7gRaw9tOTgM0J6TWVqi4dDLtkuiVNEc9fvn3/6sSE3uA3tn6LNWJTlT/c
1HPZ1PO/jT09/xZb4kuJJZjW8rlaNRumdFzMRvcXskqvnFblvW8YJVdan0vq
Gzy3yKQe0N6jx1ygJwbZaUkMNO6X+RTbnoczpZlhIm7doabaAqR5WnlKPSAr
wrWsNNEiqylT7lKMYO44D6OtHvzLQLQFivbWk8cHu7s7sJMWm889THQP0c3l
LDWkZ0fCeU69jvJrQ/7EaFULW/LFXCA8MuNjPsd1QXVN1agdvHCM2ojNEyoP
D4dAoq8rHFkhN+xPLzajgFZsuQn8/p0zaSeC9fl1phLeaRga1jyO+brFRin/
enKQl6MobTdDfNurSW+Cx6yAtKLhbTf6lztMms9B1kurJAzqFNOvRvNxJCjA
UOAWG3qEHZWLD1q7E8PVcqlq92NPu4ByceuYMpuktJbWmLVFOBTMjltPG+Zi
xh+tGaML+c0uVkRTTZMokFZdayJDrmHcOVIKoqMKefIsv+qVKWQNYya4C0uH
RSTTkVTHxWLyIPJ6motHRIkSaA06pgPd6HxBtnoasjRW9IsCUIVWFr3Dgn4Y
s01V3n44P359tuN8XfDXP9ytbXuLGn1Xldcau6ifI7peGe5C4LEb91UOQr5S
5hS7WgzihVTQlzGQM7M1oE7aauxLM/EATsi1ZvHS4yOyM3Pyo0WBHgTX84Pg
9kLCu1QNZUCtJyQOk4wS4WbLHRCkSw/BKEyXZ9dmAbr5IqHuIKxmaOVaW5Nt
q6HIrOa9YQktJF5u5lueJTDAZ/R35RUG3s7nnmXAtAvJknQ86eekGFDcLSwk
tSl8bkGu5oS5vcuWPS7tyYIVaczQPK7XSbBWflia/9r14blVMdf83DhC95Mt
E4aSSPIxpgbOQWg8se0g+vcoW1JBQtCAWEUd8PnnEoLqLuZDsqTyP2yGMI1d
MF4gcBbEDTXo1GBrrUqsS7X8wi3EpSQ619e6feOHRsE2ODn0rvvHJ6rf3CdV
Luyk7ADqpPOC+vPYBWjZI36blxEH03pNAVbUxzIk07RK4XTO0LfkO+A60ZHX
VNnUAsAY4W2JOzh8Gu1ud+2zTWW5whd68MLGe6AQIqGyCiy3z+l+EXuAansn
0Aj7oAHKCKi7sfR5YpFfQbt28DKch+K1lILUkZco8IScOWaq595MgtqLzEqr
zCF229y1xPNTwbnjzdRqWP1kmdebcVKmwgVy+NR64qRkHBxhgmJqFaAWiktq
5XHyLGxFw3fE6OMpECzh+UCxSIyIm49WdIwyyM+mLOTXR3+MlFVwMx6vBj59
7qVD4NJQRLAZEOjPs43ncxVEhE+1V6Mcxy9wI/kAy8sqmaNs3evKdhMxbA4t
JjmOoN9s7K150JK132zss5ya+Kk/bSAJY+P6XG29RvP2b5QoDyZoa+bzs3Zi
QSYyIHc3DrraKMjPyKKHSHcA5eE8ccI7KO6Cqlyp5wy58O5ml59duUnsfUA1
eANnGmCOH0TSdBSYYBZcdU6MMJjCsQScD+KKuq8v3osMy2X5YyOHyukDjon1
jTq0g0SFcEvLGVWQh6WgjY+ERhgq2kq6Y5CY8dehKcWA56UP4jdGQ6PidKVT
Yph1aSkkb1tdvJTarJ8cQeCz1gwwTYuQA3K1NyzdEhZ2JWJ7wdiEkgYi1Vsu
im9q68dFgVKAqb/vJRsh/PG2YQzAx3jGdnbybDqcg22hbkSMyFFKe7E9VILW
1WLpsKbVa0IJQ1OoaAYxRuztYpHwrEn0XVNoYU0LGwbOc47KeI7FMr85cJgP
ZNJmY0dopEVa28wp6MuwfmWrQdT7tiDCmjuUrGNqBWNxQvZbGOfXinMkWgkj
Jir0Vev25OWxNdQoduokURZp6XYuovZRtssDkVqsG+i0e4iDCunG7YOA8Ro/
2GWs3hsVZV95PAifWV8SUWkhDSO9NLBX/9O+Hh0shiVLt07g6vceB2KnC8mG
ideuvZT0zsYeVyTT/8P4AMIuEUidpRmEZxtXAN7P9r3eeH67/f3Wn+9hf++Z
IsphU6byMEAkqu7j1cl/r25UrtZmnKmnSsn8qspK6rTBKIhsFu18yrOzmqp8
o4L4FApXr4rPGAF7e7LSURxWa39ptX7gBs9r7WqcuvkHnXxQJRVbldtOZKRC
gAUeoGD4WGni/g51YdHTaAFLebK1tfUqehjttaKd6KAFIlmvdakBhJevLk0d
HCndjr8H1fvRflwuZiZo85LGozeD0voEFzkE7S2Rur17Olp8WU3zPoTMGWm8
JaWp2/iuHJ2g1QqorsUFibOUs1nVECA1ZYFB3k6TK+avLCnqEeGkiKW7eIQ9
xhAtHXeAhjHalYGCbMjEvUjTXQqiQNNKh2vydrhU9NbFq9+3TByCTLkq/npe
jajuvBiIZH3q4OWvtRpSsJwa5DwGsZZXl0Y0amzJpGDiphsFX2kt831V36SU
NYCPOv62/7F8zgBjreV/Q39hm1JmOCG/oQam96P1t3KL28qi0P/WjvAd+I2p
Oq4IyFpoA66U4ukVKBqaXK8FqgyG39PC/Ipggnm2FLcpCi2CpchVz17uPN97
HlwMrvsOUuYsnsKh8ZdrOjSsPQ+bZrU2neuWH7fGNnaMGPacFi/wV6vWtWH1
isylooHeeANl9xpIb+KNKeZG6rDjwgNyx+Dr/rZf/By9zaiNntWqVpN5vw1E
l+d7pM0l3pfi9HeeYmsmUj2St8frFv7o4FsN9EgGMoUU7//jFlt85F8Vaxdg
CNelM74sQmRWymfAdEDwUInD57r6vsdSsCLEXG1xtv2LPnoIElmjIMALpPp9
1nmHgYeizyhX0cqFnprpmbNLbGSMPgP1RZLRqaJuLvM5xllpnQ3TPIiFFKe6
imkEJk2/SjSeMhRsTpA2DcrzD8KbXMejQMGxCfD7FkDUnky69Drh4iAfoA3s
NBumV+kQs0107+jWIiXMthgw/X7FO2XavHPXambCJOuQs1x6VAgQGw6x5AlA
6VxgW4I+Bo/FyOvFo9A0HwU6ZObYXU17Yesu5XI/Nj9mD5ebAvXAgWrIt2Sg
8HGhGNEsuH0U7dT2haic/DEtRUWBgEuV8ciYytmoZCG73EPs54VggWIOhCs1
G2Xd0ITZB9nDPW+Ag7sPIGvb04uCmC4lltC2h50pXMGTUAUOwG21mrtSG70S
2cJPxunhdZ+qS754I7RLRU3SlMS+o6m2sQ0DEemsAH3zcYYqREV1d4K124wg
4EBCoj4RB8La1E1YdYgG4qT7ty3qGbHJ8NiGZ2pije22WJdjQD0jGPGfSKi3
t9Ecfri9HfQQwiN2HmU1SwPmqQhrB23ZJq2OLrbTsIJFcWNzvwiHy4AvAS3p
cWdxKmfGRwo3MTfXNdApMJMtsA1QaNmMLYBIJkD9qY1YmjzJtu7rjS5EKfyC
Q0UUjd54aJT9p0ajL9MYnEX/+hrD7YUU/0M0hoNbr9Yb52pdBKimOI/EV1V0
JeZfjv5IUd/Uxml77NfpHOh1c+ZL+qazZ0MVLcd2azDCI9S9iDXsoeEoVBS7
TBbD3CTFY7NI4KxFh4ObjjGFDjNZ4SLRg143GMKcMwz5sZREHFBOUBSwZmy0
Ss0pNd4LQw4lzmYwBRlCTe+sMdCbHfNmq7txzk43ZKFVAcwU62LjKXAhwAWt
eEor1haYJlwSCN9Ad9HQhZJALRk1EoejHmQnBZaBZDS5vyd6Ef32WzS4udud
vWWUh9Ht1oY7NLq521rusNZgLV/S8CYyiuy3gY5G1nx9Gxz6hzH6ewBLf+7T
FSf6TgfnQOXXXkvtcumPS2XFxCH91+pH9f2SVSnGounnhp1cyhe+D0NuKCtM
jm6X2proIZfIK0FXTxJTLIw9lx5CbWkGJB/xLw4qyudOU58L0kxsn0bJrTIa
WlM3I9LxVh6khKL7dhF3F47DmIwZ0Tl6xJuZmTSzVCM7acVoaV+6thc3CCGR
vuDTpYahvD85a9nCrF5klHSCEJO6twLekZlg9QGViV0uGwRAyBYV03yhSbwa
dLRuBxyshP3glSGLVqJH4vZB9uPrGiIZ2pjVtxBvlhUFQolMuyWaRt5yA+Qw
TYNtx3Ycl2U+4A6kJmSv6RD1HHo/sph1cgZC5woPopuWgj6nsMl8GMGxbt/p
yAt2sFEapNhhhRU6zo51hWnDdE2ZDJV6gB2unooOz40d0SlWC4ikVxS7oxc5
drVEYNhCu2gTmM0w/oUk17SgU8asXYyUWhSxJD5LAhY2eS3VWBC9SkeJ26KF
BVFG1U8PpvBtJx914g5j72fZp4ZF2E7xhHnBWPzOIWV8cGqphuSiBxUE6iA4
tQ1vlBwILtWhHX+XVw1Icl7TjDJTC4zaQ/NKVa5qLUthX2SNii7yeT7Nx0uK
+qKPOpV89Dkoauv/rPYQNBV7Wy1VNFV9o6exXC7Fvo52dw93D3vrn17BbLZ6
HX2/fc9Xez896T7qdXu7u93ej631LzvPHkTMoNNe/7YJHRA+fLePf/qgS3tx
pJJH/X35JoAIDvJuzxu6Nn/wyo2O5e741lfWA2/FK2uQhp+x57UfnFezOOH/
5N4WnphDS/dqgGz8kZPbjze8o+k1g9N75sD7c6N+Th4cgt9qz/hi1c3e7n4X
NtTbB0xsfB/+6P20B8/sdfcP6u83/7HmGXlftvTQ3Xjt/YfOM/KQvn+DLjMJ
nK+X+zQfmIeeyWfB/J07zN8J5zeItNe24HscvO9gm8Lvx6gGP+9nBfz8Z8z7
ln5Z92P4vn1mv/b+l85/y0Wjn3UUPJSoTZVNwy+UlwvXKMVkT8bj6F2vHb3b
g3/24Z8D4s0Bxxom82m+ZOZH8tJwrIFAaaEJAWnh5SbU6/EPpljdgU1j7sOl
yERtuvooFb3rtbqwMJefkO16wFymzYlE5qyIoeqhsGiBuWhFwj4J7iJQ2IaR
qL/3cAIH4TXEKcg5waGZ/6eZix/e289W5wOseH8f36e4WRvgWyzQaZlx5jAf
gLYiKSsQRwjIS5LrFhlnq6qkSYfgJDKCrAii2c7pWbTA0GIQuiKWeMwCUXIj
89mjXfgRSRMXy7a08G3uQKdYVLlyFAF2QVlrprcD7EBWq4KeBkmw9GMTTUzw
hBFqT5ZZPEsH0RlNSbVvEFgsprMYpCk7JsYIl6tyGxscCTLuhmmzBwf7slVj
mAQ5dpZWlbjq+yhhUi27c6oPw2X5ZFrXmEoNEijlDHCJ4JYlFj1psUF5QHpD
Ui4pzmwxp4Z0rPlhZwG/k4u4cjQfDa4x9m8pMdiPkktEoAbUKeIO4xleqA4u
qBwkWVykOea8mT8YJmSxloVy1C4GncNLmE9rUhoyt88fPe0lAZMfW2szYfUk
6TTLl0fvxSHn9rzK8w+LOXcwl/ePbd4612iTJDuvqCIfaJAf2HbvLIc3/tsi
ITSgzPpr75ZGkpBqmnbiGcNanJYQ4gdl6TXlGqcADYb/uqGKBFSSrPSGIyR2
X9JY8/MTM4dStK67E1L+3I3ctomYUMYcCE0sS6/NhKtwSA91EWEF3KFgWDyH
SiUOb986pS/z/r1lOG52s46h9Ot1aZ/tkWlelLsVFNoMDBzrmoFwhguGCcJM
omMDO2mjXN7Gnl1c4sDL1GQntnoctHZhJ9r62F623K4qXs3TrtOU1KkNQFok
o3rY2Im95D84t+GOGdRYplZTGBS9y2QqlBc2Ai+msXcn+Gs14di0/d02QKO1
hdDYbRlPkYdE+EyvD8/s0zPmLP2T4nPnOKs7XLkuXfC8jw6r4IKHqb82DoLp
CIwq98dPP/T2yyUwNDScQiLc1RpXHBwlRjXAXCvoCt8Iz7WGw7lNkLZPX/S2
CXbw2962gaKDsQLndiSQbitUmfEJbLuuz/5I2jj14fKPolJZnFvvVlalEpCp
dLySz7isqgYUmN0BIJbpBGIvi1hzPAJI2xrXpiPxRQU55zoWqsq9ZHOHwjAA
KMSlZPfdKCmc/FOu2kJ8hEqCSFS/ZPKXh25rAUrA5nWcZ/G8nORVGZh3sIQ3
VnnDwsbkVyz1wWDpan+tmHpM2JblihtqYumKediOxElH83Qg9VgqLvMmeLGk
RdBQs7xEY9c0uYrRkua2Mvajffz4faeKEeU0qTgGolmSDWAVUgWXWAIVO3PE
QwyN9FpYewVDWRgA8kWl+4R+NdXTbjWmzFJhPdk4kNU/p1U8TQd/1mcZEEzo
axVX25a0mj5y8gxebjxEqr++vd3Pp8PtbUmTF6gbIEtRbSphUSSATACShJDv
9GwH5VvTob4hAR3EakD5TeEoXMVoM5E/aDRDe+oNsryzEbztRNvnVTKPelFn
G1Z+1Pn5XW97+zCi4FTrLHc1joBukgyE0myWXAdNp4n8iYjq0kKXf/vqhc8S
NCdbxttSb8pgAhpZFt70lm6d6tH5iZuluvYN/Q/ovRJSrapL6RKlqdnxzpd7
LBYLBff2TcQbJWXFe1ZLrg5CrxCjvkkihbfMdO1oUaXT9K9SF0HB/YOIDijf
4rOuf8JHW+fSpMICulFQRcDCtm1nZjFJYOuCXy5brbUaEVEHOJPY1GgZWkbG
Qm+taIB7O7sYZR45/VpvOMtppQnitp/mzvXWgOF3sP+qcPRb30dzi3XDddGx
/u4Ya143m5Do/p2cX7hPePYjz+xFTzu3KrKzzaWdTUfEgO1t4fXAwlWsotc7
EQgHyvaV499uBhJIWs2cnua9Pdo7+PFR5O6F1PY7nNttswEncZ7m2VaAz7Vr
rpotBKXW4YHbgLO9AlWRXUAy29MjM8PTd03xMl+3v0+HNh2R43ktGxES0qG6
DEi2I6LZHPjOtHyPafm7HnyxZ4i53VJKZTWqss4eycghhUq1wJAwf4eeyNW1
wdAW0xwySuqUQ4TC1hYNhIrOgOIqHRLcFkOUJSJuXwSma4382n/Jqf+psq4s
VUpMlA4JBJrVTAC5EJzpiLoXd6OjUUWp0fEwlApcycEMPcuvhGfIbs1MfbbM
UH2xlHuiEpjDcitya7tYsoJ89IidLHpo84jYmEzxsFAU15IQgYUMLY1YOWo8
YVkvdJaiVYX76Wa+6NaWQyex3VS1xqVolEOeZZS5jXap6F+kC8pCk0twp9za
g80/wONoH2QvHS2ygStl2jq44fpU/AVRoR0+mo2KmI92USQ2yvAvdNHnRvQy
6VPXudiWhlhClwyCeVH+F1P6FZiSXElkTozcwJyEEq9hS7eziTrhhhtoKXdT
VOOac1s/292J9h4WjwHKDTR5z6Xb+0K394Bu7xu6TRVd1stse4jDNVc2BzF4
jaZVd4xLrr1uSp662T/1ik3oI/bqTAQk3CF0ZIe/ToFswKqGBRaQc/Rkjqzh
VWP21UBL0KW8KOQ9ixkHVYTNsNf0TtK7nTVRV1NDtM5vXH3BZyp7ylS86nyN
LMYYSgJLTL1/dq/vAWAWC3DgC88FRVlO/Lae8D7Tr9v0DmTcklJUxEhTXdVb
njJhPhoOBoA105goKn3PUdu+NSVcSwi/MR1c+/o3poJriWATDQQSaCigJ5JH
TCD3VGoHNCOp3dLAW1oqrhDLeyiEu1I5fHA7Lbx1riah3Av3cCHnBrM0zfXO
0DZPet2PVlL2PYey7zeM+YX7ujtdB/od4YKRsO+7hP1ACPs+EPYDQ9jtpfME
8gYiUzdkUVhhQFxWSK1cgtUWs/QMI++oTJDnZUE6Y8morgaLeo5cIV2nolp+
ZIgFugMYYBPyKEbMTvTNBalfWZL6lUWpJrX06+mIylEoaO2roHX7LVhHSvb2
AlJycKCzrj2726a7jZr8uIKc9J40TmcJiEdPDnS6BoKy7xCUJiL15bu7O005
QFlxn0jKgUtSHglJOej8/MxQlPBqs+b7DeXA/TvKgV0Hvlw0mmpioukbqMI0
/SvoY14lVknRNoUWqeqiVk9spH8mtdrZC0elOtIjekXEOW4vCwlh3G6xTdp/
wjWsEd5UZHgxdyXIcpWYCLS0QcM/aDKvNFSXlSL7IKfpozb4Rp4w1IBorDW0
j+DbSWhdVrwR8S4t7UR+iC49oEW5NSBYpN1JnrJCXAtBGSZcIlXOSyd37D21
YsK09Q4G7vPoLJQOc4yrd233GCKO3jyxgzfwLg98jq352X/xFC/s8Dvo56t5
yjqWIvT/C3kK24idzRwc7N/OUr6Uo5iIVo+dWD68cjpL4mqQXMVR7CRPn61d
7r13d3eO8gg5ygFylGfctNyrxqi7kDLGK7x2xl8uyjG5zv0oquiozZWWs+gv
CyDF5XU8d6MkVhTdTspmcl84xXZdczM556Vob0iw3RgIr/Z5qQGh/WSccvkT
sS54FXODEnnyXYvLknGQGBb2yYv0r7FJ2K8mHezMoa1fY++B8SIuAHSJmj24
/xwXbIaJruOltJzQrWokJVee9WNEdGgpdA5cNpdgPDJjChjVzyld7k4z/gS5
o6koys21OX4hQxMB2ZHd7tHA8G0GzgyOBKfUdrWGk2vfsrLKi2Toxgu0PdmE
X5EI0MZpJDJTpQOnm4ETg8CBlGHrCseVgYiBlXw1VrWrhYZJeRoUy3mVj4t4
DizMFkPmIjPYJzvlrrs2KTw8T+ZrzpsIHQON7XI5myVYs2fbncuU76FwSMC7
NX1eymjr9dFxaWIZbL9CDlYZLIqV0NEaAfCq20zAizZhARGz7chkhWEfVu3E
mWlH2rpHss0lOISDZKXjncm/WzbirwTI6G2hcCYTyygi5zE3WORpP9WbLprK
6u4gXGTr+Fkp/UX8GKr6BdDGfU0Aq8EYqQvqxm6nHQ5s4qBYiSJjIdOO019U
TDQwHHUMMvTYtk2ES7qYl9hCZYbvhedhk7tMyx4EX6mFEL3Did5Krx5seed3
75FCB06nS4f2eeli0o2Cgq24jyGX1z7jelHUAwVDZNJ8UTpB32RV1XIPRTLL
yTadox+MqlJRaR40/pqqVp69VpPSwn6fRqGoES2MgU+xZj+WFrJr41EpWRRX
Ypv8uC2mKK6x4AgqzkXENXBjjIawO45k4cAlh8Z6Yc7YwcG/rsJAPPrkd0p3
W1Ww/E0hrXZn9IzpVdUOW1NxJXrbK4FDFEeL6SglBas0rSil2VRj+wK29/y2
XPR/Tn+7g/+x0d0U2S/QA7aeOPW761aply+8QaiPQg3hqyAO00s95U5HToEw
i6Q78BQHFWe1MaRglzMROQ25T1f0h7fvOk6K7LrJfbgg3ekKjdGurewzBfrS
SEzaNrUDVScEPNZXg6HhcshyOOsX9az6GlDBPT25tI1EQ5eGOZjUdEKFtfxQ
0pszdWZc2uMyLQ6CdUqAsXdgeR2ySunLGvqY4/cOPVDibSc82ZgCmUi6Hog5
bWoQxMfcjV4mqI0TW1wATugpuo3jbFK4hDJP0vGkA7o2Xc6g5X0TNbcdRZF+
oF0ERNJ8nhTiTGZHN2/eoBFqpI3VYNMMBjOt7aYc3BDeaITfBHgNNWsQE0Hg
w6ZGHdQ3igk+zogyjIE9ngMxQtlWXQ5p2qy7CW5kBhAilOLyUSSojbT/RsNt
obsndJt6epUJbAw22XY6LztdmeUacbcNDX/lRxP+lMRU4hmIPWT54LKA2OoW
OxuPp4l/b3BteieZoqc1MbiyeRhewG9zcw1HA/Gbn0hcZlqlZJ/yEXpFUxEL
vzp9kgdsyWcNhq7UrTi4F7FqoJJ8r7BM58CJq2GZTnBNmg8aoWwoobVKPeE1
Afjd5qYZtZak8l2fr/qns8im0qtMIlNg79MpSfmm2iZBSgjlDPUcvFBwcP1p
E0ZyJ59zKk1N6pYu4/NnOg83waHeHRgvUyc61pbgpLSJ8IRNgURw8p+HZY+T
DMgEXhmnsTSWb3RCgH126Lal7FC/25TUEh/QZIzbzDZJWGq7hQ1Jh5NBd5Xc
drvdqK2fZp2efk7D+F3Ayuh3u/rC77bg2ZYJbCUJjUQYb3iNl1KWxlksIqkJ
76mHQDf44WMyYSKAlBnKvVJcW8MLtQKZz+C8yt6wDDhXOBgP4E/ZtMIfftBP
t3RcuGmRvqL7/R9/Otz7VwKR+22qYOXv27a3e1vbJfs80JHS6l88r33e2tgg
/RrR4kMK677wNVzs4PYhFLt87EKECvaJmUIw1rGn05rSYcfMx/gpw1AbsAZW
hLVDBGi8tjufoajbLg5RH0/CIRMc50VUwFnCfAh+ngtGpuCRzeQjiD4ltS4v
Ni2ThofDg+dTfBrV7+2IWvf5Z1IVi4zDEAHTpDwpNswx/dB5INsf/Ys39S1w
RVZD4f9ZvQl0II4h7VqI7K+II/TLk9MCrmNBonLaKqm8SRpHSnedwAtxWftO
JFVEpY6rm/lr2xYtf7teMZhkcpRppdQxGWZM21jlQx4XkCma74EJLKQ4RGLL
bjlhBxoOfyKoUNetrDNMmBNUiSiIlNQKaxliwGDap3slfROQp7jFi7mzKPEj
V2yC3wE6J1giKRWGNExGHRA5hBkFD/uqm6Tkqjw2yBfknEdfSz5cDKzu6ZuO
VN5MrLhJfUpJioANd4zAiZeo2fIlDTCcbhK+cEkip96QUNLBhGU0KbCRaZV4
uUruMk6nuVN5OMA8x1N3ib/Tr5dRo7HQN/SaLpitmhzr9PH4UmHWabaMskTL
dj2LVcwg0yBsm2RbKQQZkL02m5kk/NVz/JIvkbt3IzrxDVQW9+fdKOR6fwaO
Rx9ecrlaQJIBn2eAbXLonJJoiIEtNBlPKTOFCgGQJjYU86SxKSwqc7NCMh77
KTsoNtVZfMj1ggV+D159wiYqyyZDU7aeQSAAGoShC+xXuvKRr8wjjYH00jhV
SSBF0+oiNJrAlFzSnABeo8uAO1iogNp15VZsNSolSQRow3S89n57whULsDI7
bypwDTcknonS4W6BYfWwZ+mYI1j7oQEGv4aGRmqTn5Sr+IvBIu1UnAjpAbu5
3TegV30VT2v01RMMXYFj4/uKLatlvxUiDBlE2ADJYppn8IudPuhPMbsXn4wb
+IqjClhd2ATKsiRInzBRUWY4DEWk0LArBuxQEzuajoGlVJOZaKX6J/Nnh/rV
THXC+Y7OO6ZlAEcvtJEMTUwQy7EYws45zY/9BF43XGujJmO/FuWGdXNdGlqH
FvEr45m7TG0Uog/TYSPbOG2qJE8MplzMyeGNowHTj4GUBjuzw3uJ/1z6hsH4
YMWrATyH8pA/KkDu6Pl55xg/3aIOgQcHP+2DdOJj1gG1yyjbVl/INToj7Fdt
rA6PbTFo/8RY1aC26fhGoa1BJO4HK3kmVN9fQ0WQ4hB/J0USltN7bHtZJdGf
ab4/hxOafcFIOAJa3bQ4pM2k92AGEP30SSsQPfn8meEsedg45tQr78krI2Gq
RlXDcf++Cy1HUW1T7vfIppqCGG4Ie75NoVyG9tpqwlaxW/3zPcrl7jpjqygS
gMiRRUIQASZ9LwhZQWfFwbmr/x4QqpX9eqKRK6d3vVuGRSqBs9HJHqnj+BZS
uBzRdAXJRKdzTWVjvuoKtt4EZa0lvNusRoj+FNnJLKnctsXuXjSRxNDZuCkH
rkxAt6oCc03bEcbIPWjQ3XS9qXXodurtr3A11jyNwViOwEi2kqSYRZu63k23
Bis+PQOhNEGPKOa6l6Bui4SJZ0glgbKlVi7m8ctEfSvGapx8jKnxEWYNMh3X
LseWrWlhI0q8h4HHCcm+zMZ4hm703vlGBQdSVrnLDchvoMejQYs+dMdZcLNj
rT0wk6CNuMIaZ5vISI/f/fHs4u2zt29/R60ST9kTPJ3SKZmWQOgjpXckVhN5
C0hiZCTP3ZNGaxy65rPcVZ1oXSY6RdsMOS4QdmvrJSmxKLOZT9buyPOAwOQL
S0eagmXXAivdzEGvnSaboqOyO9SfAY+Pi6+5w+rx1K0pfHyiC3i1AZDDp9bj
7D54SEU2O9r73LHCqF0Jl1EitLUXPAl0S093kQ4J1C4GNxfDx3E2QHWZrEqb
onKUJNBzxdvf2JmbjT1sDBTzPmvBU8zhLVNOQnVhwqVenBJlbq8p3Bs3p8II
KoBZSSHWCGOf5jjq0XJOt6o/zQcfokE6n6A4Sy7HcuK8QfHDbOhyelJ5fsWr
NK4pdjVoaxjKmZRQowhHHObY0e0/PcAKa5jM2+hMcc0AtZBhzy5iygjF8/l0
yS2etHibHdMYFvFr+zF7IcgBw1V7UhL9OG4Ftp1OhzawfYdSj70J/O9EgYU7
VkrVmkpbqznQrBNIoCgxpodvsnpeW/wWtpIzwS9GU22Z+oNiGtWLQqLtaMVg
aBCqP0fR1rVcIt9gDWoPOuKX5IqexR/EzoWhR+3b502lqM3qtfpr0KqNfDjK
yiWQzKEUAxsQxkUONTqlvgSjhRhG7ByBaXNrFDgXyZkx8Pk27s10Z3c9euYJ
0JrnP+N9QMV5/nNgr9qyRqhVT4U2qfXPPb/9MTY0rPq+tbHBrtPbarhZX6oT
0qQkLDABDhx3qjWa27iWEKzrgOaBef1eXJ9f7ZmvcgHewQH4K51nK2yTFhjS
2TlhA0rRarzypm5vu9Wnyu3tW4jFFlnZYntJbznokNZwkgmZxBt8ANvqBNg2
LhaUG1va2wmNmadqhLItSKVS/pkN9cGwa/yscwUbHmG/tIZsFCmT2LaGUr8i
nOMf0YBsLUnHJlm0oWFnQk6QWRNbbqS6bOnyeprAZqOHHkMxbLil0/Cs6rX0
YFSg15l0ce+AbDxI5pU5gxXh9RRO0FFCyVI1SJZMA512G2xjFWKpHYXJvm0s
iIt5m+x8bZQ0sBKjdnwAgj2vqLOq26JA+99R9kEZrtOrOOwb1iW9wLj7BgXw
UjeAF6uJ2gB6FU5ClKnC+q5M6xuDgObA8zEq2+clvHCyRhbc1cMNFOKIDiBW
va4UiE3UxYWVAjFwLSh1uKJCJRebtFGx9C2X5uxu7HWB9pCXKVDnauhnRl8V
ksMiSz7mdMD+Ip0y8wyXuSaOinBVu8rJKTcUCbRlVVcv1xQI82+EddmpPgrv
jORvz6Xp+lK6G/vSdP0J9Sq93fPneVys49GVEBwHd2xEX7RlRpdnvLaYaDmV
msFtnxiPAz91fLnGwXjEpfM+Vpyd43pyUh+TJbjRi2GTyDJFS82EsZbWUKYX
774HXqdYm5m8jYpgzoYG1dKslWMxxTBxUowu2Mi+dvdqUy85pW+zt0lqU6L2
ZP/oTWSJE7aGSxu4sxhZWYK+21xkMKxHLXkBudXp8TG3GikrR+EKdzel5nLD
aJuaJLQZDGQBUsOSBgjI+N7QtH4b7eb4tR02VOPrVAlKwoj0iFzEh0lR+ZFi
8qKahgm45k2suYWyF21me/sYM3V6mtN3EXoZ73ZIfjQz8J36HvAUpMqqaFTb
6XaHkpmURVNksE5MnXZgXp7WOpq82mG8jZWn8hQP2n3iNkR+iifnvtDgFK05
EblPphuWyIWVkRJIpAcX87Lw3vum8G5Sm7e8Om0rijNqKdX/qMPpfc/DUa/v
FxzP/t2OJx7jja1WnJGUynfBhvY3DQa9PyKjOIaEZYsd8hyN4qX9BxWVhNxb
IsQBujVkad3zFHbvfgomhtUGFPUTikTCM8hcYabJi98cz52WdrfNwRHrztyz
QeE9ChDhoBs9S0oK2BHCup7l3hZzXste1f71WAsBqLia46Uygm+KJyXpNWxB
60pf4if4AfVXU//0A+dTETqaFkWyoHyFt52kUPpGL7kTBUPmGLPoOgM1xkKr
qAHt0HiqTw9EnOmwuP+5MdKmHtxEKl6alDXOuCIPVMRBvxowgj2QnGjcJV4h
PQ8Pb90YPD0fR6oK43H82BsZO4i1wbtBfg03BUVa5XmsmfobOBo30lyL0mq6
slA2ndtUj+U42KSUoBm/BQb3iAOhgEIMqmu8dUHQfdh+HbtzuKBnt4A3qK2C
Jp6bWjX3Njlz1pNI1DVbpk3Jam63JVro26bw1NtnaK82bBo64tRXNzTk9JYF
3TIuM92GgflEHf2TR7VGDVbO4/JDKZgmequNw0nrLSeCoBdV623OuFwVg41+
UQ+rtMLbopTXcwltYBaGUaDMCQv8H3/aJRMbEPt/Ze9jFj19yhfGpFO5Oeve
AW5xTKuzAgacpexNFnSNtD0n3T3GRAIGwzMGgxRvCMlQRwCHRiS5RQpKD363
mwvIL5RWWlqnDFs0sr0AA5OtD8Gtqc1J0SylOVTtmiJZpFoPekb/bQG3UjS0
tF6xxy+Q74rbVBeWUdTdE9ZsdCYky8PpyBqNbChZeZ1WmDBXeVPwWG2OuXa3
troHCpEM1k6SFCcSaacDh0VUpkjk77MY5+iw+waoGoZ0odWvjPUBvmyNT9Aj
5LJCuxbM18/REUgywEgZCHc7wVXik+VdG56oAQz3LGHpJXKQaUJNzCgF2aGP
4qRLi848zRwFEs0XjBPpqrRb8obPyaCGZXQlUdVyP2k52hRv74Rt0VG/eXsh
zlAn38EbRnrPGOh4xgvCCz4wlnsXyR3QCeWnU78JhwjM9fwBNFivJd9YDfFO
AmnLuauYbw9X1CDZ7TquKlLb202qKy6iWSJvhZWs3ZvQQE8qdr2FxGSrbKn8
Tws+doIiV0opGH/l+VLceB78skEVanSCIEy8l5nC1z5uCqd1sc9bqRvMH9Ao
B0trc9Qjwj0YhF+von5+FluQW+VNaH0vmliNqGK54sSkLbvIPC2N2LFKb7G3
U7vC5bPEdOIKAInkiMqoJZTc4S9YaI9Egii9DWx+0jUbJmHLMk3pdIrywFg7
ybb6lt1w3BDYt4UtX6N4LJmE9anUWRdq3lZZ8e/Lh4zjM2W76voauTkyXxLX
HVhqzTJYblHd1OyhbA5nx2drCQ5waXDVmUck6VgdXQE7S6tZlKEULt3TDWKs
YodECjCMg0VcMHRdqvGOEzu+9k6a8sFZcu2nw7qH2l1BrtSh+3tSiRpcumbz
Kws/h9j/QqIxbKd1hUJTUAkisqS41DJj1iXG+B5WAwQvKwPILZe6SqomJXEl
TF1gnY4aL9dKSmb8g7O4EkmR1uCcy20wb9eZdG09K5srNJuUwgTBYYJBgmlm
FRQP83R0U/HRdvQ0rZ7ckfFDt/WURFCRRWKF2WTF6102T2gyLBdI6waSwRpr
rDWxbm83CgbGktkSIupslwoHsVRRiS9ex8CvtuoSnH2D5S55K9RQWUGyQlSW
65MNOid1l3AsvXcUWJCWk3bnKkGs+qhfn9zJRn9sKnKirvIa6CywGsQklFvt
qfsHvuqBr8WBNSbfe+GAGgjrF2o7LX0ccMPEVmPCvRDhO+DBlwiu68N67kDS
NcJQLtXdCfo9yfl9KXm0ZeMC66OlKuWZ+Zjetn4lBrAqEGkd+f8exPVRV5si
epIz2zCarFXRlif0yCOnbsuEVfBpoZa8tiJMqtJxWXsIW7KqQOpWr+1YG3Wr
bml63mBosuakxv19G2uSr1ZLCMFQytbFWtUKc6OoT4TcfG5Chx0MxU4dVlY2
hYY1tEjqChPC0VJIrA22lGbe6GRHUnNXYl3SsojblHglmzU92z/36VKi0x3h
KnCMk3vb84Sv93XfZqJIseHjauuEcUy26u2DjfHkdvuCNSlETXyUiIA2lfwa
WQQJyd+qHLL65tzOfuq85z9KA7kvx7q3CvKF2ofhPPdVH5o40ArudUeIruJI
KyxfKzz6a0/E+HONWlyrrLEC3DXVeT3Yg402gN3Vy1fm2N9BHw/PbQ181gab
fDOCJ4bChgHuLjD/Z5aX702vytXU6ntLyg1FQYTsBHTmi1B8vUx7R6rwXSTd
dWE938I5YRwQLDAHoTo1tJm78jL3hGOn0OndtVl0sKwWr00bIBTJRHJ9Ttlv
JIsdUybZaYa1IYp4sIw+PRjgR53UfPR5Y+M4j6nAM+Y0l8tsMCnyTKNUNYbA
FEb1+yyXDYHelFAiQeJqYQ3CLmEsr9bE2tHhrDlU38iD+pqZMayJ1I3OnWzQ
tnnQrUJe85E1lEEg1xwDgqADIHVinW0siMV5Wl9aLW0AUrNHGvUMPp18NCox
rEMhjfO6BWsDmJi1aYYVBvCaSqQcUJ6WGkACJGg7OopGSBjp5FGjMaOjGwOT
YEsskWC+dlK3yJy9ZJBE0yQbVxjnO6zBheqiUslDjs8lSXxplRTnUc8h2aXV
+dPXVucvftXqykleVPdcXPikuYMl0pJfqJ8pfoANRGeLmXPMzpuAE/v7P3Yf
CQ8prY4Jk44wKrxdO+PYxC5Rh15CfhsvwRwGxoV5qXwv3pcqn8J9Af0GVvaW
YjryglrUL3A5TtUzv0A6ErQ406uk9wC1Xko/Gay++sj1TN0VU5UFSNMkH5am
oovUC2Okw3WqOkpvDfJ5YvxVw3ywkICYF9RBniL18Dry4RqahPFgcFM5QZ8i
YoyfTdJF+GtMQsGa+XDdTMouB17x7buDox87P5wAE82XRI2PvVEob+n1xfsI
SwlUi8/absD0x02pIqqo09q3nYyo0mMgNqiDwwAgenv7e7bwCWpoHDGjGXjk
MOztPdlte4h3enb1mIaIiaxTlZcne7u7nz8DciGWlNHBE/TulwvyCEqH+sf4
vO0N/BJ4BczFPUx0ubZO8vnx6zOlkEwm6RtnBxLKJHvxqs77mZXu2jWx7OK9
MQ+YfpYc1+w0DHbjbftiuzBNngLUHqZlmcwoXEI2IT48ankHMhmtY+b0ENaM
/CBOki4sR4rg1u4UItLyYUGxVxQqNwNU6CduyDQSMduDWJKfbDmiLdMClYrO
DSgsB3E81aJf9mEO3Z6hmASfSyleorJ+5JCsimRiWNQPDpp6bZ/xRSmE4fR6
BgCIKcNGNyvuE4p5aedyrkElXBBvKGBQi46pv2CajhLDS2kQp8wym+1scV6g
6vEo4TnnIo6QPEFs7VSxSLuq0FJiComUagMCA33Aq+tkjk3wsNIuYujwGKaD
SojtNlsmLYbSPaSEbq4HIbUkSIAlfFI0ldn9BtSmTKf2p06zq3yK4V/+Iug8
uSqms5hzpvdyiZxG27ioPpa1cJ6PtpLuGBQn181da889JOonZUoyMpcAFrSk
OYiDQThDQzWtsuJaIJrSj4QYJBVGKinTQUVXwl7lbSaGHIOGx6yp25wtSlLu
iyIem7JbQIVH7t9Sj4DxUo+YMdjoFlqeS6Rm7/3f0BNUL0NwOSAM3ej9fN5A
MClHbM414m05MCobv7QKlnMH8WbYK0MhZOZC4f7HWV4CEBGAKMOOi3jmL1Xd
rOYW+9uVczbd2A19hTXNFpmss6GOmZTQoNx9WrCSraXbBkcZBBcXe7LX+/xZ
KFOSIZ7Z1ANdHkGIapJ622BM8Al+2/SytwmO/j0VSz7fLe0pdM/LZWZmuJhY
xfKus9teenSMR+c/BJ3lqaeToi8fLSD7L8BArmPUu8p07CGs8+XW+ekvLYFl
aVs7azRwtciyZKoF2/jtylae887YSJgTwCjtSpUToheLzLBsv2cBBoDDEiJq
XUhpkSKdrgoSPj2jRoHTEmvdcFcN7chomOqqd6vwyhJLQyhz9RPyMgtJkg7Y
dDWx0IOeHOZfm1ZaLIZhNV9pMYY7p2RmudXJcMxV/zMOuJoXWNvRzH5B4MVN
AOThLLEYjwtqI+0hh0tJLgdglYfR6lBY6arTuNuNDZzGzOlMxCUQHcKyFoYn
qOyemSZIWAf+LpL366AEBIbNLjTnly4AYvkcMEiIYQ1bfdyhjnB9VLIWGZXQ
//QJoCOS9UtY2dRUlnkBYhiWrKEb4n4CEnglHqJO9OzFCd4WErn6o+Fn6ooz
pAeYZ41kmAiOZfBhupQKhFNs6LHUaq4LNfE8S40MA0jzwpbbsnNuwZQtK75z
DcVHT56gdE1t0Ijr68XybB3kpDPXxXAdcevBN7gbrS1Fp4m4ikY8BBVVcyqS
MbUWIcQGFtiWwrGkh5SGAQstwEQELjOD/luztbIFtLdKpzoXi0EmsJwMW13r
tHRXRVOVVdBHyraWj6PLN8nHivKPbEeYvd39y2jrEgbaoVcuW5I5zanmWmiA
pcjL3V18+DnIcEssHb4Q568hxwRhcoVd7uGTb7MEVG0UyIPHHb4hDjjciuR+
S30KEijwY60VKqlUcVBFwjnmblS7FvT/pIMmYrrYuHbh4ziBUSnELgvPwqM2
wYyebzkgFxRRhjugIg+4SoB/pgkhHoaIaU1eqCockkqmlyjcpeWk9rq0V6WX
u9G/AIFGFDRZQYJTrLcLLrXNmcsCxaBAllVlQ+xD11JAMd9DsXWiwYFsnYC1
stYyIUz4E9wEssDh4gAkpGBQRrT7RUtVFjX75EW3TiDeOG8ARpCm+mnFiEAx
TuWaUsc3QpsZCMVYX0x2CURLyjFhbTFjd2X7vTRglO23bcGTUG9E0kc12Dzx
odaTGM+MeDtbsiQkdNm2hEMBl44zrhauRMrQOk9zbVN5r5jB4G5dNFn8fOd5
UWBOpNCDOyY+tPxiTk2bhpUo4ZWMERL7/f3bwCj7eoffl72OSecEYBdSWYMY
j2yzX+QfJG+tGx2Lehz0WSIPCZZaGLOqMcBe0UyyEmk2ViSSSYgycW+X+kVK
Jm2cMfQSgpIHQ9j+27MLwJ6jV11TZMRY2qyCZtbjVoXx206qsTpic5dhYUTF
+bS5XxRcysWAzM05G/KQ5WVpPO3ko44x/FLdvzIsWC4ABfIAQlNEVfSm6Yzr
o1GcSSl7RsSbwYKxNEQNdUpQIiQpEOuhUBcQDPUAwoak9p0ZFoQbLC4jLAZ7
a+eqRociMckA52qhC21rKzol0mXUenvGvAci2wdRvBgK1gDB0HDEIbHAAEOn
5giMi9LlsjRg1McQUtQ5ieRQdgyiFrSg5rXBAtgelRTc+Slv6KTQDoiIbhD/
T8zQud23GDG7tm6S15cWmcoAcTzG3hqY3weverImt62lJmVOHSSqv1zv/PAr
9rVt6rrX1Ow2bKNpjgNPEWXkIaWAoZaKyqbljVdpbkrMNvRVU2i13SIwBLIf
TBssfM7eYqAALMO4dT4H/IdOKrU6ve6S1kvUlgif5YrX0uk0GQMOzvAPFjBi
tGuSXs31DbUzJYV/XaXDhVsPvhRDJBXrQiFWgGb2oBqsX7fROClqjVlbLT50
v02qP4J2sEGbB2pT5OsVRWinlg9oewph+XFqtCM1LQIHDLvjlHWsbJHWWAGA
kl1rNeVNEV6nZGBT5V2nSqnqWRhCZ6pqlJMYBaeYUqudm2a6RmTDAK2NC1PK
0QuN5PBCVxHB2QmO+QwgaSv/q1m4uep7xxZHD8q8c9XVDo2rsoYheoRQW1h0
zKTqtiTej5oGVyDq70hdT224WlpA2pq1ICsnMRNpTEuLSb6eL0AwHcC3NCJJ
iMobbeFJuwdVHYuETOJczRYbPDOo2iw2cRFWeQcuQTxOp0gstZKqszK4rmIg
jYOpfIs8y7/XSfwhIqsQd142fTVpYU1CjnRotsNqwDvTQJE0BjkVWlIfJSAp
U36ibEi8qVAFXAMQ4vFWI2vxigUPDDoGSErJoqN0WhWOfSB2sEc9fFFeNKNj
NzrKdIf53JwmkA2iRVxdwJ0yrmoaKok2LAuIj5yFFiqNismnQOHyAqnzMCHB
xa6vCzf0GssttcWoyFiaiy2hBBFulqh0rpyZrSzs22YzziJzDtOOziosT9rd
+J07smMe0YifRguJ+I6W0RRXSRWhKcIW5bA+fadkVftYUpuJH2pwkysjx9Ku
8Q+qRF3rzk09qIacW9PIrI/KhlAKylMW5NP4A/F1w3VcSkNT9AJrLTpDPq29
dz7BmBmqWlUv3GGqDGROCIa90Rn1eAFUNrMHoT8e9+iSKKgRHW3bem1UxIvh
YurFhUl0vSlSbXQTF6B4n5fzGIOY8zLofWmWxF3DmLsY7ttQSs+VIehkOeZZ
YAmv7wCYtbNT81Ru2fhau2sPE4hYOWuRNWjs7zTHpttbdNlsstUs/kieVVtt
IWwHjkOh9eE9t+t0p/SLgteJjOkYR/ZziZWpCSmo7l/H0q91FPcLEhPICkBR
GZwamnNP0cR4Adgmeg3kIxjOHAHbnDJ/Rgd1bIQcTGWSlky59KBFCbMBrk+f
Vk51QlMsu9ZvVSIBvYPV5bPJibvFUyVwo4R4d/sKaZ8GMGCNOmZwIodxAftL
U63/0kZv254muD6zOw6Qi20QBpdWhzEwbO9SvWxs8KlsZQd06gAF6sd95phK
7FBUlxvujqqy6VZvZ+/RY+0qRBvjQwWSTeFsJCezd1LqGnjb/5Akc9S9i6Ux
cONasjHeVPT8ggye5uQXp0OaoTjSXN3SIg6RWzZojVbJTkZytHCcoriG1Rrq
yoAUvyiob90QhNbY1qtWnQDpnpRsYQ1NNIiUe7IT49Cq5hR1p1fLuIALVp7M
AOoHZ/9Mqmm/I8ZBrNryPuxSLz7tMIpBYe6gj6yW9iu1glBCcG4S2gIkRs8u
GnXfc2THDihFNjPasd6nAPjKYK1YO64J7CDyZCb7c5Kz+FWg8NV8Kmj8SKWO
E7NJ915zZye4g8giGQZtR7rXuCrJkMF2B2xNkYzVyITOOWzK7/RDl9yqmOYa
kl0zNwWFEY1BU8bTJsZLlawGVrfBDx9z2VIYte3rrddE+IlKxg4N2qNw14Mf
Odg12vr33sH/39rVLLdxHOG7nmJLl1AVACIpSrJY5QMlUaZs0WSJcpxKyocF
sSTXBnZR2CUpxHIqr5HXy5Ok++ufmdldkHRiXiQS2NmZnp6e/v16m/R7Onzi
KoVbC7E/sBmjzRmNTKpB/mu/whhSUsvuTT8EFrLciLhVI8WgqM7rWRFSGf28
dogVmUedCyrFZBWnOjToVi7o3T3i/+uVYJ+yCwHrsjuj5iww7LOPG4mNftdC
Pl2cB3SZmiXhdvznzuRF8Ur2qmiwbyLlJ3AVS+R6Xv4CKyS3hiaBy6YrohkX
ibkTzkShorc61G9kIcv5QexCQjNy/5ByKrkZkekrinNrCdCh/l/pJGTQIwZ3
zZm16mas7LhnNhZkqTj2JTslCQf2/LpImBI9K1UnFixLl73m3UjNxfWueVaO
Qcx7OBV0a4YVSD0jCnL2hh4XLTIdFV1ObOJIdBJIm5akGHvP+fzFAXyBEVss
mIzSjtziIZkWBLonmiPI3XRU9Tg0mdUMuuRRV0pg6p6QQJp3pezKScxXULHZ
ogxZCOcb1nnLt3QE96NJc5ikt3yE7410CDrfM3Mx6G9T2tHJUEMOnbcMpw1L
rT283m4P7w0fspj7biIlQdJ2xLGSfAulHU0EtuIqU7KLeSi+iPYFik+QXRum
3F1d2t2+VKtFSMEK5oxxkGy3Qvv6e3rVh60m05YkBa5MFcKd8ybCXZJqumYK
SbqL+VqDFxIsjYwObYJYqJWnNsc4k/yeRf6L5KoYep92QpGgQqIgcCP7pq0X
cDuoTSFX/pQ161mAg2YLDMBaYvX8DsMGsiaxbFQedLRnMXLcX8wnmCNTJlU0
7fMW3gl3D7hRmMMIssf1L1gvUXZFWwpPQxD24B7dAs3+6UowFVppvp1/R/uj
O2M0JIGWywL83ZT8tbwqAIcQXYCM2l8IOf0u4bQa5rZV0P4WOetHjiaUso3Q
aRpdJ9aDOXf1hsZjf9LFpvPwNIUq1fy/Nc2v1ShQ2QYrSEyRtHujgF4ilNwv
jND0ppNqLGEJ8SoGT0h0vaD1U+SojcsbNjQ1iIq4BbtWmRliAgFzfjgJRshN
vWLQwMhnodIyPodtotPRoFflz3yRe8JPJf2C/ESWTWSTeCIOTwUBtBo+tXlq
OnbTB08tjmXBDXPD9gpWsIZFPYvicb2IjulToeLGSrcNO6XGPdSUSETkEP4y
wENZUIVEiMDGiyITkm3V6zYtTIrDbWXNV/MqjXuzAPPICZbG4aZK3QrlQgPu
ALGfwzCqvO+euRAugsxS5eY4okCCiSs5HGxJBFr6bsrBAfXWd9BsFVVmSnqy
UEdajnc8QX2IARhAgSUC3jxMJ++z7UNAefEi7qAABQWqEccwWg1HavOtyYF4
IzUFhi+wfD0wvYm13CVpMVtHWfScIxhR0zxyjuYDX0eokpSLDoBZU+PIwOGB
5lsuWma0vyKp+S5GC3VVIyW7v6tSCrAr02udmqmdFY06b+R54cJb5ooNAOB+
rXtHJofvW7L1SH6C46j4nHPQHiARibQ61uS7JFckBeY1x5rmETOuG7/ttSZK
H2N+MYvJV//zr383QmAMskVaLCiEwLmY7nzqhE+gtMSFtqw9S0Ug5/zK6bSO
fZ3+HtHdiaj/60z7GkSljqJlcY1SnmzASAPbMf9d1sgyOdY7DtRHRniyBVEG
je20SHvI1jpY25n1IDkYCAuFrjGJQBtkReQw3i0nlRG7I6UxIOXooftHIvcK
U9UWl+b5sdBqs27aYqEH//4vjliDaQpkKubz+pL9TUqa96ekGiC6r5FWfupI
pTmaV4pFJIubShNlbV8sAQxvXuc5nl5HEbLd8jhkqan1nZeeSH3F1tnpwckT
ZLW9Ofrh4NPu7k+aNFqDtZRFBlerCmZR4cIoDWQWxWtsCZFCJSxu564sUhXh
9qq22Ei33DXSHhYDKdt2bVf338ksJSXLI72UUYRFTMZoj30fhmmaJWt9blGK
q7g3jgsj132i06A231xnNvYJS94UwmIJgrDQWbBo72Jac0n0YmxmgYB3Lkh5
btu5l2YMXqgsbUhBZafUU+Ky9VM6N6tr0r/4/jGNyWKfMFBbVS1zvp1cmou3
cayRXZFS5sC37ovEQPUFh9fUmDGl2m9BryVuPQ84XdcIMQ1Rrbl7JmkhF0F5
RarC5zbAqONWcnOI8Xo3HCTzt6zndT5DEZBsBQ9wSGr5eqlVKUv5yth3K0n0
jzKT3FlcWWjACgV1iGjD+bryl6T7FDvbdZsya2sc864Oyq2mONLM+C/DFYA8
kEdbhbiuqEr3CZH2nXIqDGM7ikAx7+hoYDEbie1Ne32V7Atdlcjzm4vZ0uCe
YMHkMpF19Sg9xaQ9e+U3UzSIqlHQB+M/B9FJ1GJ41ngqyja8jLgdMj09U6SA
kOHPJtLFRcdG2qAtw7cnskLiNKWgkLK7gcbonExYQxdz6VsX+eIHKuBP+Cuu
sbCNWkkNugfpJFMNhzpCdMQb2aGymiF4aIU258l161PCpqVaWpTkZIJDTyJc
czeR513EI4kMuiJnkXEveZyf0QOBi4BV5gQ82bp5Akz6W0XCEB+qyAetmr9k
KdlTMXiCUU6HRiYqSYXlR4wE8EQ69IBbUdjdv9RzkhHtiqb0FnmaEC+ap6k7
ToKBZvkbbJb/iT65H7TfR6VB8JI/bvmqaMkxa2IFwPEzNEFyVVzM5aOxAL69
rc9MstAt5VjLkdcAyilL/MKOOTJXtLl24jxQBa8JYBj2J+Ut2oy2XMTXtQ6E
Fj3IURcl2Oz9UIE0p8sEslS0XpuRa7QYOfIBx0Yzn0WrlUXY09Qvl9uO4IBh
oCChKYg8G7QaOAJza7sY20v8iFqH0iedlTy8y5qZub6tZ/daurUDuqZ3tjsk
jTvE0hqvNcqRTsGQjoPLpROXJFFHFpTbMmt/gpVweSIuTO0A9aXoMNpMk66A
DfeD6I3XK3DzVTFfbrjPrBFDz+LIU3V4+H7gRsGqWrnwigsDo3PGKpRDTUwR
7pnXFiPrOIUtExTGJ2lnWoSo8ssir1FCAUttcDC6eEu8MlYK9GWYEXt1q/MQ
YD8vggx3jzHCzCPPFGdbcMWFlvwydqjO0uQv7ejEiBujCDaCF3e90loi45Oq
yFfxoTEB4hus9HXpwbaCSCXp60BjRXJjRLrTAtOCHYraXqvcsk3u1OequuOC
5yxmCIWsiIP+oqIEz1fI7o8LhHp9irT6UOwFK+ZEql/L0gQtT0pW0ZjC4+Ca
fX/2dgRfw0oYSmBW4GnN3h98fzCcOO8Ja6z7VrV8U+9o9QXRwJGv0JvMYsn4
29hTP7T9LFhpLekGcxNJ09indtA09XkZFZv8+iu9ZnxwNs4bLmiAC0nQER6N
x2NYPljJAT4ubDantmffa+NbdG5paR6/6QLhc5+Vn7O5aHxXwAGIx/B9t9nj
au5Q69d9+bSYff34gti3eOwwHnoNizFuEF5Mxz814VWo/a+Ktvc28aInGfuT
7Ef6P/Gm1GKwEHYVG1FMj/B1BjMhjxZK9mZmDZrMRFfre9WbCHp78Znd3d4O
7aPS76BWo9nArKxUSghBq8wHqt6FuAe+yWHDxohn/zZM6UdfSEE6Lxd0eLLs
S/ZdsSaFZiZwtF8CF9z38+XRl3H4+fM4+en8etcPjZNtj5/bqJ2XcOqNUf/e
+WQvogc/vTmVOkj9lWXTomxwM1kZoi82KvnlcV6Od178EfPZeRk9+DaZzw+k
+sAOBbLA0ETicb4a77x69f/Ph7jRHzx6fRSPI+88qpfj6XrMnmHxPjUbxtnx
Bw93D/vjHIojlP65Z5zd6MHj0944tlHHWhk7wJ0yzjN/0Otf/dcBom6kz954
9/lu9n/T+XmYT3ecRkztSGdy7aYtxCUQjbP3B42z8Xx9tEjjfT9fSJqQ4tHO
i68ff7pf8kPSkOgXZ/SH+nJYGL1Rv9win0lSGHcgbzhZikGnzw7Z3tFT26lA
Kg2LgV2EN9BcBSkGBQ8hA06GHKcllmyUwyYf7zwfnhijhvK4srwP+dRvPwT9
i3AZ2sOPHvK2vU1v+8AgPFE8Yz87J4vHwaKXq/IGUbp6pbaGFLVf0k0sL7//
3c8e/m7gAyavRFouQjXNQ961u+ldO5Nnk91JpkhBbwH2HZfeaC/LsHzRsWvU
9vXgakgRDBrgTYSXMMnefJDntTdYwASz5TybZNHKY8cgiEBzjZs9IRDf2RRx
WYZG9bC3APtJD6dNOYcQy/ctrSzu5NbvVeR4kpInSEOfDRcndma3IS0UZhAT
5eTkdVRVN/LJwKQj+sQOFVL29dw9iMt3Np8pFNVav7ZcnSRkMErqgS2ATv3P
9D7egylXrp6TUcMcY469fdpp1lo0q8CBBkdimSXVy5rmnJRVA+fABqO3fBLT
YGe8R5tSi1q4EO+2oLsr5GVU1S9JICgammk2Nw30DhBMTbY7yp7ZUJq8Ie4w
wWhqklPX4z1ensCdXqP7eeg47aeingucg5xJGn9Zz+tLnsIdWKNGtlHgFIMw
VDzEkYrTbHYtxhrcFqzLApNEYP+Qcp1fhgvHy9ATIj+EU7Y3ccoBneyqf675
JacnZ+//KvmnMUlCjtq0INW+FLSZ21VO82ckFBr0jX51Bt/7eYLOYyaZZiG9
/uZUfjH3BLIHaSt9k7OdfSQKWfIO2cgNg4+FTUYhhoQ9PP+X6FaEIV5lW/BI
J/C2uqdP9o2v1fWBfWmuuYnB/Jojllw0xml+vLIYICkSBAizKKxHdqMVoNpj
ISkHJbGA1JQm3HzXlZonA/KVlxYjFyzzanWp28vq1k1Z3AJmgQE9gJ2oRT4H
Fe3HOid7DrZwsFBHeum3Zu6y/SfgZ2x39W1dWgDpjy9ovic3yJdhRxu9VvOM
RPJxul5z9QBO3H61iRMhd/YHzsWibvmG9KNZL5ZkLaI8lKO8S/+Eb6k860Eq
wOzEDtFS0pMTWPUONNA49c/ZeKj6NYHu5ckkU0kF44bC94dQ8KtNFDzjY6E8
6TkCaFLLcQ5OWxl5mgbxy+7ei+1oilKQUit4Di1VgTaf3CdDS66cYBgKfjFH
vCqhNjgRAj/idbmRZmoYV16kWOlXs2d4bu8hhHi5iRC2qYpDlziGhSJJiSzk
xGc9/bg4K4kGlIj+WSVwlT2+uwfvY6zT6InTPE+LIwQpgLnjnOuE58DnkuNE
M6THvy/5hBpFRb5luw9RBrZfbKKG3pV8tGiI23BU8ubmMkNqKU+NM1wMfSKi
4TZ7aB5fV+qEKWaPk3Y19E02kaQpt5R7w6WtPjo9QDBOYtXWGcKQhgJ4kiz6
ISveaFKYMhM0v8ta45gKC6ceRKsFqoKz66ylr5E+95AJDFsZ2Tg7hqUEUzsJ
87rpNd4MRfOQF28wMY7zn2vPwdh3oerKnIqGYhYo4IQhjqC/631JFyKw/NVb
Ib6yaHsb9iCL9iAgHsFb319073uc6DMIjyYawbu33SeQKwPs0aoDq+iMWoYC
cK3toammtoEc0iZW7N90FHs+FtEsLQEiyboiMpdVh8w6W1Yj/HllvUDGACSX
zLqNSrfmnNTHHYEag3aTd16VS7vNeMoqfZ6qtXOhYBg+6nkQWcHjqbt4lvCj
TXarP4NRgF0PKQbxceXYGMv59MIZJSVmSavoJ04pO5b0jdurtSTCIDSjWf16
LrksitPeWFpw7IOjwLfcI4to8Y7/+yGfFsK+ztCMjR9fu8A6e7H37CUD89n7
k28Ez0ODEv6mtS5/jnNUg23k2W/J5p1kR9ec754bxsskOmvYU/TQhtgjcyES
p0pLTxoFUijDbkpmF9GyBG70MLQlK7+F4zKFuDDThthry7aTrf+dJw+RJBsc
CH1JIos3nTPkFLk6BjU8ljfGXB3aOHiHNOQeAPgAPMqcLCFpksBnP660yb1G
WcsHJj0JA4tSUgDv7Anx9F6Fr7lzbE/Q0uOTmAfRk3KOpMjA8Iz7UuSjetgs
CdC5FGf7Gy1PIUu51dpoDtwgdwU2qeEZFlXfvPTArsKYlP8QlTiQDopsvixb
dbGwgriz88oRFNr4VZNEgvExiXNSyV66u1A5Lf5A3/hhbbgrJyPAE37R4ef2
QwH3Y3bgCpXs2gauruC04aqby5ppeJQTSYkn5zfsCOC5bX1T12RAPhll39Yk
W47yORmCJCAPV+U5WUUVfXBc0q7RZ8fnr1ecb7X1Dh0dbouSPvxIU3td88nN
tr6lE0xP01/pi6RkfFrliwU9aO9QPH8+UFLlkiSz/qjdmzHh7Dhv6XM6M+9W
RZlt9ew0nvA1l1BN6JZZ0R/p9stnNU3801H2N6Lu+ZVgNH5H76MTVawrRoEa
HOhghumeFqtVeZmOwDOWBBjZOtoOTem9Y+5WSWMBZL9/v6Fzs4Tfzl9hZeLl
ykaPOyaWq816dZINHeO4hh4hMXrr308PPx6+/3hAxu3znyak+VTSMOVW8nZZ
95+2IbdDQ/dkSszrpRTrFflC+F1s7VG0ilEcfo6M6bA4hbynlQRLwGqn+xp0
gKrtZlYmgF6Wh4I7CXPzXGbSSvmjaV3/Yhn/jFXT8slWOgHIirEdpHqh8Srd
kCDKl8nk0X8B/JilOtLwAQA=

-->

</rfc>
