<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.17 (Ruby 3.1.2) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC7432 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7432.xml">
<!ENTITY I-D.zzhang-rtgwg-router-info SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.zzhang-rtgwg-router-info.xml">
<!ENTITY I-D.zzhang-bess-dynamic-overlay-lb SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.zzhang-bess-dynamic-overlay-lb.xml">
<!ENTITY RFC8214 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8214.xml">
<!ENTITY RFC5880 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5880.xml">
]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-zzhang-bess-evpn-mh-fast-notification-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="EVPN MH Fast Notification">EVPN Fast Notification and Handling for Multihoming</title>

    <author initials="Z." surname="Zhang" fullname="Zhaohui Zhang">
      <organization>HPE</organization>
      <address>
        <email>zhaohui.zhang@hpe.com</email>
      </address>
    </author>
    <author initials="W." surname="Lin" fullname="Wen Lin">
      <organization>HPE</organization>
      <address>
        <email>wen.lin@hpe.com</email>
      </address>
    </author>
    <author initials="C." surname="Lin" fullname="Changwang Lin">
      <organization>New H3C Technologies</organization>
      <address>
        <email>linchangwang.04414@h3c.com</email>
      </address>
    </author>

    <date year="2026" month="March" day="02"/>

    <area>rtg</area>
    <workgroup>bess</workgroup>
    <keyword>evpn mh fast notification</keyword>

    <abstract>


<t>EVPN supports powerful multihoming features, but it depends on the timely
notification and handling of link going down or coming up on multihomed
Ethernet Segments, which may not be guaranteed by the nature of control plane BGP signaling.
When the handling is delayed, traffic duplication or loss may happen.
This document specifies a UDP-based notification that can be originated
and processed (near) instantly, greatly
eliminate the potential traffic duplication or loss.</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>EVPN <xref target="RFC7432"/> supports powerful multihoming features, but it depends on the timely
notification and handling of link going down or coming up on multihomed
Ethernet Segments, which may not be guaranteed by the nature of control plane BGP signaling.
When the handling is delayed, traffic duplication or loss may happen.</t>

<t>PEs attached to a Multi-Homed Ethernet Segment (MHES) elect a Designated Forwarder (DF)
and optionally elect a Backup Designated Forwarder (BDF). All the PEs in an
EVPN instance learn the DF/BDF roles through the Primary/Backup-bit (P/B-bit)
<xref target="RFC8214"/> in the EVPN Layer 2 Attributes Extended Community advertised with the
 EVPN Ethernet AutoDiscovery (type-1) route.</t>

<t>In the EVPN multihoming case, all the PEs on the MHES will receive a copy of the BUM
traffic. In single-active multihoming case, only the DF sends the traffic to its locally attached MHES.
In all-active multihomng case, the forwarding to the MHES depends on the following:</t>

<t><list style="symbols">
  <t>With the MPLS data plane, if the traffic originated from the same MHES on
another PE, it is not forwarded to the MHES at all by any receiving PE.
Otherwise, only the DF forwards BUM traffic to the MHES.</t>
  <t>With the IP data plane (e.g., VXLAN), locally originated BUM traffic is
forwarded to all MHESes regardless of the DF status. Remote BUM traffic is dropped on an MHES if the source PE is also attached to the MHES. Otherwise, only
the DF forwards to the MHES. This behavior is called Local Bias.</t>
</list></t>

<t>If the MHES goes down on a DF, a new DF (typically the pre-elected BDF) needs
to quickly take over and forward traffic on the local ES.</t>

<t>Remote ingress PEs need to quickly know the changes on a remote MHES, too.
In the case of Single-Active, if the DF's link goes down on an MHES, the remote
ingress PEs need to quickly switch to sending unicast to the new DF.
In the case of All-Active, the remote ingress PEs may load balance to all the
peers on the remote MHES, so any down event needs to be quickly notified
to all remote ingress PEs.</t>

<t>In the case of Local Bias, if the MHES goes down on a PE, other PEs on the same
MHES need to quickly update their Local Bias state, so that BUM traffic from
that PE will be forwarded by the DF (which could be the current one or a new
one - the original pre-elected BDF - if that PE was the DF) on the MHES.</t>

<t>Conversely, if the MHES comes up on a PE, other PEs on the same MHES need to
quickly update their Local Bias state so that BUM traffic from that PE is no
longer forwarded to the MHES even by the DF.</t>

<t>If the handling is delayed, traffic duplication/loss will happen. However,
the delay is easy to happen due to the following reasons:</t>

<t><list style="symbols">
  <t>The "slow" control plane (e.g., a routing engine) needs to learn the MHES state change and then
originate or withdraw a corresponding EVPN Ethernet Segment (type-4) route
and EVPN Ethernet Auto Discovery (type-1) per ES route.</t>
  <t>The route is subject to various BGP route propagation control/effects and even
TCP flow control.</t>
  <t>The receiving PE's "slow" control plane needs to get the route, process it,
and then update the forwarding states in the "fast" forwarding plane (e.g., the line cards).</t>
</list></t>

<t>As a result, significant duplication/loss could happen, especially in scaled
scenarios.</t>

<t>While BFD <xref target="RFC5880"/> can be used to quickly detect the link faliures,
one BFD sessoin would be needed for each MHES, with the BFD packets sent all
the time. This document specifies an alternative light-weight solution.</t>

</section>
<section anchor="specification"><name>Specification</name>

<t>To speed up the process, the notification SHOULD be sent in the forwarding plane
via UDP per <xref target="I-D.zzhang-rtgwg-router-info"/> and <xref target="I-D.zzhang-bess-dynamic-overlay-lb"/>, and handled in the forwarding plane on the receiving PEs.</t>

<t>The MHES down notification on a DF in the case of Single-Active or of any role
in the case of All-Active MAY be sent via multicast to all PEs, so that
for unicast traffic destined to the MHES they
can quickly switch to sending to the pre-elected BDF in case of Single-Active,
or load balancing to the rest of the PEs on the MHES in the case of
All-Active. This significantly speeds up the global repair on the ingress PEs,
reducing the importance of egress protection.</t>

<t>If multicast is not available, the above mentioned-notification to all PEs
MAY be sent via unicast, or may be skipped to avoid the burden of individual
notifications.</t>

<t>Additionally, except in the case of down notifications already being sent to
all PEs as mentioned in the previous paragraph:</t>

<t><list style="symbols">
  <t>If Local Bias is used, any MHES up/down event SHOULD be notified via unicast
to known peers on the MHES (so that they can update their Local Bias state,
and if the down event is on the DF the BDF can take over).</t>
  <t>If Local Bias is not used, any MHES down event on a DF SHOULD be notified
via unicast to the BDF on the MHES (so that the BDF can quickly take over).</t>
</list></t>

<t>To compensate for potential loss of the unreliable UDP notifications,
several copies SHOULD be sent quickly in a row.</t>

<t><xref target="I-D.zzhang-bess-dynamic-overlay-lb"/> specifies that MHES PEs can dynamically
signal link loads on the MHES so that remote ingress PEs may load-balance
unicast traffic to different MHES PEs based on the dynamic load information.</t>

<t>Even if the dynamic load-balancing based on dynamic load information is not
used, the same UDP notification specified in
{{!I-D.zzhang-bess-dynamic-overlay-lb" is used for the fast notification
in this document, with the following differences:</t>

<t><list style="symbols">
  <t>The notification is only sent when an MHES comes up or goes down.
The load information is set to 0 and ignored by the receiving PEs.</t>
  <t>In all cases, the notification carries an indication if the originating
PE was a DF on the MHES. The exact encoding is TBD.</t>
</list></t>


</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>To be added.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>To be added.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

</section>


  </middle>

  <back>


    <references title='Normative References'>

&RFC7432;
&I-D.zzhang-rtgwg-router-info;
&I-D.zzhang-bess-dynamic-overlay-lb;


    </references>

    <references title='Informative References'>

&RFC8214;
&RFC5880;


    </references>



  </back>

<!-- ##markdown-source:
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
DIeOc+p1oBzxBbEQ/wUuOCHyLBsAAA==

-->

</rfc>

