<?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.17 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-cheng-sidrops-consistency-forwarding-00" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="consistency forwarding">Definition and Problem Statement of consistency inter-domain routing and forwarding</title>
    <seriesInfo name="Internet-Draft" value="draft-cheng-sidrops-consistency-forwarding-00"/>
    <author initials="W." surname="Cheng" fullname="Weiqiang Cheng">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>chengweiqiang@chinamobile.com</email>
      </address>
    </author>
    <author initials="S." surname="Yue" fullname="Shengnan Yue">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>yueshengnan@chinamobile.com</email>
      </address>
    </author>
    <author initials="M." surname="Liu" fullname="Mingxing Liu">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>liumingxing7@huawei.com</email>
      </address>
    </author>
    <author initials="M." surname="Huang" fullname="Mingqing Huang">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>huangmingqing@huawei.com</email>
      </address>
    </author>
    <date year="2024" month="July" day="05"/>
    <area>Routing</area>
    <workgroup>SIDROPS</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 54?>

<t>This document introduces what the consistency forwarding is and why inconsistency forwarding is prevalent in the Internet, describes the risks of inconsistency forwarding and defines the requiremenets for consistency forwarding.</t>
    </abstract>
  </front>
  <middle>
    <?line 58?>

<section anchor="sec-intro">
      <name>The consistency of inter-domain routing and forwarding</name>
      <t>This document defines consistency forwarding as the forwarding of traffic exactly along the path planned by routing.</t>
      <t>Inconsistency forwarding means that the actual forwarding path is different from the path selected by other routers through routing. Routers route traffic depending on the routing information provided by routing protocols. Many factors, such as policy-based routing or traffic engineering, may result in that the forwarding path may be altered on the data plane by any routers and not conform to the routing path. In other words, the actual forwarding path is not verified by any consistent policies or routing algorithms. Therefore inconsistency forwarding may not match the intent of the network user and the route, leading to low quality, security risks or even unreachability.</t>
      <t>inconsistency forwarding is especially common in inter-domain scenarios. The AS_PATH attribute of BGP UPDATE records the AS number that it has passed through. Ideally, the traffic to the destination address should be forwarded along the AS number recorded in the AS_PATH. For purposes of load balancing, traffic analysis, and so on, the actual forwarding AS path can be affected by multiple entities and usually different from the propagation path of BGP UPDATE. In addition, the AS_PATH attribute is easy to be modified and may not reveal the actual propagation path of BGP UPDATE, which also contributes to inconsistency inter-domain forwarding.</t>
      <t>Inconsistency inter-domain forwarding causes the forwarding path of traffic in the Internet to be a black box for any AS. Worsely, the inter-domain forwarding path is not validated by any consistent policies or routing algorithms, which may incurs many forwarding risks such as traffic black hole, traffic loop, traffic detour and crossing the malicious AS, etc. Operators can only engineer inter-domain traffic based on simple consensus and best practices, burdening network maintenance and making it difficult to prevent these forwarding risks.</t>
      <figure anchor="fig-aspath">
        <name>The complete forwarding AS path</name>
        <artwork><![CDATA[
 +-----+       +-----+       +-----+       +-----+     
 | AS1 |-------| ASx |-------| ASy |-------| AS2 |
 +-----+       +-----+       +-----+       +-----+
         BGP Path    Non-BGP Path   BGP Path
            
]]></artwork>
      </figure>
      <t><xref target="fig-aspath"/> shows a simple case for inconsistency inter-domain forwarding. The comlpete forwarding AS path from AS1 to AS2 consists fo BGP paths and non-BGP paths. The non-BGP path from ASx to ASy, decided by non-BGP protocols, is invisible to AS1 and AS2. Similarly, the BGP path from ASy to AS2 is invisible to ASx and the BGP path from AS1 to ASx is invisible to ASy. If the two BGP paths contains the same AS, a loop occurs between AS1 and AS2. This loop cannot be detected or broken by any AS on the path.</t>
      <t>Consistency forwarding aims to empower BGP to open the forwarding black box in the Internet, enabling the actual forwarding path to be visible to the origin AS. It is unlikely to force all traffic to be forwarded according to the routing decision. However, it is essential to extend BGP to reveal the actual forwarding AS path or the non-BGP fators that affect the forwarding path. In fact, the community has already proposed lots of work along these lines, such as BPG Flowspec <xref target="RFC8955"/>, Add-Path <xref target="RFC7911"/>. The document aims to provide a risk analysis of inconsistency forwarding, summarize the reasons for inconsistency, introduce definition and potential scenarios of consistency forwarding.</t>
    </section>
    <section anchor="sec-risk">
      <name>The risk of inconsistency inter-domain forwarding</name>
      <t>The inconsistency forwarding result in the origin AS, possibly all ASes, not seeing the complete actual AS forwarding path to the destination AS. The reachability of BGP relay on simple consensus, e.g., valley-free principle, and best practices. After more than 50 years of practice, this principle is seems pretty solid. The complete AS path, which is not verified by routing principles and filters of the control plane of any AS, still has many problems.</t>
      <t>Specifically, the inconsistency inter-domain forwarding has the following risks:</t>
      <ul spacing="normal">
        <li>
          <t>Traffic blackhole: there is no corresponding route for the next-hop AS, resulting in a traffic black hole. For example, an AS that violates the valley-free principle redirects traffic that should be forwarded to the provider AS to another unrelated customer AS. Both BGP Flowspec and PBR support redirection of traffic on the data plane, which is invisible to the control plane.</t>
        </li>
        <li>
          <t>Loop: the complete AS path that has not been checked by secure routing principles of any AS may lead to loops, e.g., the AS path before redirection and the AS path after redirection may contain the same AS.</t>
        </li>
        <li>
          <t>Detour: the complete forwarding AS path is composed of multiple AS paths from different protocol, which may lead to unnecessary lengthening of AS path.</t>
        </li>
        <li>
          <t>Malicious AS: the actual forwarding path is not visible to the origin AS, which may cause its traffic to pass through some insecure ASes it does not expect.</t>
        </li>
        <li>
          <t>Non-optimal route: the AS may select the optimal route based on some preferred ASes. However, the actual forwarding AS path may not contain the AS it expectes.</t>
        </li>
      </ul>
    </section>
    <section anchor="sec-reason">
      <name>Reasons for inconsistency inter-domain forwarding</name>
      <t>This document focuses on inconsistency forwarding resulting from control-plane and data-plane disagreement. The inter-domain forwarding that does conform to routing may be caused by traffic redirection, traffic engineering protocols, and ambiguous routing specifications, etc.</t>
      <section anchor="traffic-redirection">
        <name>Traffic Redirection</name>
        <t>Due to load-balancing, anti-DDoS, etc., policy-based routing (PBR) or BGP Flowspec may be configured to redirect traffic on the data plane to a new next-hop AS which is different with the next-hop AS determined by AS_PATH in BGP UPDATE. In addition, ECMP optionally ignores comparing AS_PATH of different routes, resulting in load-sharing of traffic across multiple different next-hop ASes. However, BGP usually only advertises the optimal route outwardly.</t>
        <t>The forwarding AS path of the traffic after the above redirection is determined by the next-hop AS that not in the AS_PATH attribute, which is unknown to the origin AS and the upstream AS. The complete forwarding AS path consists of two parts: the AS path before redirection and the AS path after redirection. This path is not verified by any AS and may violate the valley-free principle or even contain duplicate ASes, causing traffic blackholes or loops.</t>
      </section>
      <section anchor="traffic-engineering-protocols">
        <name>Traffic engineering protocols</name>
        <t>Due to load-balancing, network optimization, etc., operators may utilize other protocols such as MPLS，SR to locally steer traffic to the specified AS path which is different from the AS_PATH in BGP UPDATE.</t>
        <t>The complete forwarding AS path is determined by BGP and TE protocols. It may include multiple segments, for example, the first segment is an AS path determined by BGP that starts with the origin AS, the second segment is a TE path and the last segment is still the AS path determined by BGP that ends with the destination AS.</t>
        <t>The complete forwarding path is actually transparent to the origin AS and is not verified by its filters, which may incur similar risks as redirection.</t>
      </section>
      <section anchor="ambiguous-routing-specifications">
        <name>Ambiguous routing specifications</name>
        <t>Ambiguous routing specifications, such as route aggregation, convergence and redistribution, may also contribute to the inconsistency between inter-domain routing and forwarding.</t>
        <t>To minimize routing tables, route aggregation is widely used in IP networks. BGP route aggregation causes the ordered AS_SEQUENCE to be converted to the unordered AS_SET. AS_SEQUENCE and AS_SET which are different types of AS_PATH. AS_SET does not indicate the forwarding AS path of traffic, which can lead to the inconsistency between inter-domain routing and forwarding.</t>
        <t>Redistributing BGP routes into IGP can result in the loss of AS_PATH. Before advertised to the other AS, the route should be redistributed from IGP into BGP. The other AS that receives the route by BGP considers the destination AS of the route to be the redistribution AS. In fact, the complete AS path that the origin AS wishes to obtain is actually the AS path from it to the destination AS. Fortunately, this reditribution is too dangerous to be practiced.</t>
      </section>
    </section>
    <section anchor="sec-requirement">
      <name>Potential Use case</name>
      <t>The purpose of comformance forwarding is to enhance the ability of routing protocols to keep data-plane and control-plane alignment by ensuring that all forwarding behavior is controlled by the routing protocol or reflected in routing announcements.</t>
      <t>The primary goal of the routing protocol is to provide connectivity. With the emergence of hyperscale networks and diverse applications, routing protocols are given the ability to advertise more routing or forwarding information to reduce the burden on network management and provide better network quality. Existing routing protocols, expecially BGP, already support the advertisemnet of almost all routing and forwarding information.</t>
      <t>There is a lack of frameworks and requirements to gudie BGP to integrate all the information and open the black box of forwarding on the control plane. There are some scenarios where consistency inter-domain forwarding may be required:</t>
      <ul spacing="normal">
        <li>
          <t>Network Visualization</t>
        </li>
      </ul>
      <t>Visualization has been an enduring topic since the birth of the Internet. The forwarding behavior defined by the data plane makes visualization and predictability of the forwarding path even more challenging. Consistency forwarding allows the actual forwarding path of packets to be predicted based on route announcements.</t>
      <t>Current developments in BGP, such as BGP flowspec and extensions for TE, have demonstrated that route announcements can carry forwarding information that directly affects the path of packets on the data plane.</t>
      <ul spacing="normal">
        <li>
          <t>Intent-based routing</t>
        </li>
      </ul>
      <t>Intent-based routing provides flexible, scalable, and reliable end-to-end connectivity for multiple services accross the network domains by carrying multiple supported intent in routing protocols. Intent reflects the demand of application for transmission quality. Intent routing presupposes consistency forwarding. If inter-domain forwarding does not follow the routing, the intent may be not satisfied.</t>
      <ul spacing="normal">
        <li>
          <t>source address validation</t>
        </li>
      </ul>
      <t>Source address validation based on RIB or FIB suffers from unavoidable improper pass or improper filter problems. Accurate source address validation verification relies on the actual forwarding path of the packet. However, inconsistency forwarding makes the high overhead of the discovery of the path unacceptable. Consistency forwarding can reduce the overhead, which contributes to TE and route security.</t>
    </section>
    <section anchor="requirements-for-consistency-inter-domain-forwarding">
      <name>Requirements for consistency inter-domain forwarding</name>
      <t>All use cases require the inter-domain routing protocol, i.e., BGP, to learn deviating paths that are determined by non-BGP factors. Therefore, to get the complete actual forwarding AS path by BGP, there are two requirements:</t>
      <ul spacing="normal">
        <li>
          <t>Obtaining deviation AS paths that results from local non-BGP factors.</t>
        </li>
        <li>
          <t>Advertising the deviation AS path and the steered flow by BGP</t>
        </li>
      </ul>
      <section anchor="requirement-1-obtaining-deviation-as-paths">
        <name>Requirement 1: Obtaining deviation AS paths</name>
        <t>Rotuers need to understand how non-BGP factors affect forwarding AS paths to learn deviating paths, which is vital to network visualization.</t>
        <section anchor="sec-redirectionPath">
          <name>Obtaining redirection deviation AS paths</name>
          <t>A router redirecting traffic to a new next-hop AS generates a deviation AS path. In order to get the direction deviation AS path, the router first acquires the next-hop AS and the destination prefix of the redirection rule. The router then looks up the AS_PATH in Adj_RIBs_In from the next-hop AS by the destination prefix. The AS_PATH is the forwarding AS path after redirection, i.e., the redirection deviation AS path.</t>
        </section>
        <section anchor="obtaining-deviation-as-path-from-other-protocols">
          <name>Obtaining deviation AS path from other protocols</name>
          <t>Some TE protocols that may direct the specific flow into pre-planned AS paths. Their destination prefix of the steered traffic is obtained in a similar way as in <xref target="sec-redirectionPath"/>.</t>
          <t>In the egress router of the TE path, the Adj-RIBs-In is then looked up by the destination prefix to obtain the subsequent AS path. The complete forwarding path, therefore, is stitched together from the TE Path and other AS Paths controlled by BGP.</t>
        </section>
      </section>
      <section anchor="requirement-2-advertising-the-deviation-path">
        <name>Requirement 2: Advertising the deviation path</name>
        <t>Advertising the devation path benefits other ASes not only in terms of network visualization but also in terms of optimal routing.</t>
        <t>The AS that generates the deviation AS path is obliged to advertise it to other ASes. For example, the AS that is configured with the redirection rule advertises the redirection deviation path to the origin AS. The origin AS then combines the AS path to the redirection AS and the redirection deviation AS path to get the complete forwarding AS path which is verified to be optimal or secure using the local AS_PATH filter. The path that passes through malicious ASes will not be selected by the origin AS.</t>
        <t>However, only the flow that matches the redirection rule will go through the deviation path, and the other missed flow is still forwarded along the original path planned by BGP. Therefor, the redirection AS should advertise the deviation path and the flow specification to other ASes.</t>
        <figure anchor="fig-goal">
          <name>Advertising the deviation path</name>
          <artwork><![CDATA[
                                                   +-----+
                                                 / | AS3 | \
                                                /  +-----+  \
                                               /             \
                                              /               \
 +-----+               +-----+            +-----+            +-----+      
 | ASx |---------------| AS1 |------------| AS2 |------------| AS4 |
 +-----+ <-----------  +-----+ <--------  +-----+ <--------  +-----+
      BGP UPDATE:               BGP UPDATE:           BGP UPDATE:
       AS_PATH:[AS1,AS2,AS4]     AS_PATH:[AS2,AS4]     AS_PATH:[AS4]
       D_PATH:[AS1,AS2,AS3,AS4]  D_PATH:[AS2,AS3,AS4]                    
]]></artwork>
        </figure>
        <t><xref target="fig-goal"/> shows an example of advertising the devation path. As shown in the figure, AS4 advertises a BGP UPDATE to ASx along the AS path ([AS1,AS2,AS4]). AS2 is a redirection AS which redirect the packet routing to AS4 to AS3. As a result, the actual forwarding path of packets from AS1 to AS2 is [AS1, AS2, AS3, AS4]. So AS2 should add D_PATH to BGP UPDATE. D_PATH refers to the actual forwarding AS path through which the packet sent to AS4.</t>
        <t>The router generating the deviation AS path needs to advertise the non-BGP factors or the deviation AS path to other routers by the inter-domain routing protocol, i.e., BGP. In other words, consistency inter-domain forwarding requires that BGP announcements contain all possible forwarding behaviors. The routing algorithm integrates all possible forwarding behaviors and paths to select the optimal forwarding path. In short, routing announcements are subject to forwarding, but routing dictates the ultimate forwarding path.</t>
      </section>
    </section>
    <section anchor="benefits">
      <name>Benefits</name>
      <t>Since the birth of the Internet, inter-AS TE has been a very complex and difficult task. One of the major reasons is that inter-domain routing and forwarding are inconsistency The AS_PATH attrtibute in BGP UPDATE only represents the propagation path of the route, which may not correspond to the actual forwarding path.</t>
      <t>The community has designed many complex protocols to plan the forwarding path and guarantee SLA, while routing protocols are usually utilized to get the basic reachability. If inter-domain forwarding conforms to inter-domain routing announcements, TE and routing security will be significantly simplified. Moreover, the ability of the origin AS to plan the forwarding AS path of its own path opens the black box of the Internet. Problems that have plagued the Internet for decades, such as visualization and troubleshooting, may be solved.</t>
    </section>
    <section anchor="sec-manage">
      <name>Management Considerations</name>
      <t>TBD</t>
    </section>
    <section anchor="sec-iana">
      <name>IANA Considerations</name>
      <t>TBD.</t>
    </section>
    <section anchor="sec-security">
      <name>Security Considerations</name>
      <t>This document does not introduce any new security considerations.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>TBD</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="RFC8955" target="https://www.rfc-editor.org/info/rfc8955" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8955.xml">
        <front>
          <title>Dissemination of Flow Specification Rules</title>
          <author fullname="C. Loibl" initials="C." surname="Loibl"/>
          <author fullname="S. Hares" initials="S." surname="Hares"/>
          <author fullname="R. Raszuk" initials="R." surname="Raszuk"/>
          <author fullname="D. McPherson" initials="D." surname="McPherson"/>
          <author fullname="M. Bacher" initials="M." surname="Bacher"/>
          <date month="December" year="2020"/>
          <abstract>
            <t>This document defines a Border Gateway Protocol Network Layer Reachability Information (BGP NLRI) encoding format that can be used to distribute (intra-domain and inter-domain) traffic Flow Specifications for IPv4 unicast and IPv4 BGP/MPLS VPN services. This allows the routing system to propagate information regarding more specific components of the traffic aggregate defined by an IP destination prefix.</t>
            <t>It also specifies BGP Extended Community encoding formats, which can be used to propagate Traffic Filtering Actions along with the Flow Specification NLRI. Those Traffic Filtering Actions encode actions a routing system can take if the packet matches the Flow Specification.</t>
            <t>This document obsoletes both RFC 5575 and RFC 7674.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8955"/>
        <seriesInfo name="DOI" value="10.17487/RFC8955"/>
      </reference>
      <reference anchor="RFC7911" target="https://www.rfc-editor.org/info/rfc7911" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7911.xml">
        <front>
          <title>Advertisement of Multiple Paths in BGP</title>
          <author fullname="D. Walton" initials="D." surname="Walton"/>
          <author fullname="A. Retana" initials="A." surname="Retana"/>
          <author fullname="E. Chen" initials="E." surname="Chen"/>
          <author fullname="J. Scudder" initials="J." surname="Scudder"/>
          <date month="July" year="2016"/>
          <abstract>
            <t>This document defines a BGP extension that allows the advertisement of multiple paths for the same address prefix without the new paths implicitly replacing any previous ones. The essence of the extension is that each path is identified by a Path Identifier in addition to the address prefix.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7911"/>
        <seriesInfo name="DOI" value="10.17487/RFC7911"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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
B9cgBWZmrCcYMdMGxJ39G1Qg5PXVQwAA

-->

</rfc>
