rfc9572xml2.original.xml | rfc9572.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
<!ENTITY RFC2119 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | <!DOCTYPE rfc [ | |||
.2119.xml"> | <!ENTITY nbsp " "> | |||
<!ENTITY RFC7117 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | <!ENTITY zwsp "​"> | |||
.7117.xml"> | <!ENTITY nbhy "‑"> | |||
<!ENTITY RFC7432 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | <!ENTITY wj "⁠"> | |||
.7432.xml"> | ||||
<!ENTITY RFC7524 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.7524.xml"> | ||||
<!ENTITY RFC6513 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.6513.xml"> | ||||
<!ENTITY RFC6514 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.6514.xml"> | ||||
<!ENTITY RFC7988 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.7988.xml"> | ||||
<!ENTITY RFC8174 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.8174.xml"> | ||||
<!ENTITY RFC8279 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.8279.xml"> | ||||
<!ENTITY RFC8584 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.8584.xml"> | ||||
<!ENTITY RFC8534 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.8534.xml"> | ||||
<!ENTITY RFC4875 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.4875.xml"> | ||||
<!ENTITY RFC4684 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.4684.xml"> | ||||
<!ENTITY RFC6388 SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC | ||||
.6388.xml"> | ||||
]> | ]> | |||
<?rfc toc="yes"?> | ||||
<?rfc tocompact="yes"?> | ||||
<?rfc tocdepth="3"?> | ||||
<?rfc tocindent="yes"?> | ||||
<?rfc symrefs="yes"?> | ||||
<?rfc sortrefs="yes"?> | ||||
<?rfc strict="no"?> | ||||
<?rfc rfcedstyle="yes"?> | ||||
<?rfc comments="yes"?> | ||||
<?rfc inline="yes"?> | ||||
<?rfc compact="yes"?> | ||||
<?rfc subcompact="no"?> | ||||
<rfc category="std" updates="7432" docName="draft-ietf-bess-evpn-bum-procedure-u | ||||
pdates-14" ipr="trust200902"> | ||||
<front> | ||||
<title abbrev="evpn-bum-procedure-update">Updates on EVPN BUM Procedures</ti | ||||
tle> | ||||
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" updates="7432" docName="draft-ie | ||||
tf-bess-evpn-bum-procedure-updates-14" number="9572" ipr="trust200902" obsoletes | ||||
="" submissionType="IETF" category="std" consensus="true" xml:lang="en" tocInclu | ||||
de="true" tocDepth="3" symRefs="true" sortRefs="true" version="3"> | ||||
<!-- xml2rfc v2v3 conversion 3.12.0 --> | ||||
<front> | ||||
<title abbrev="EVPN BUM Procedures: Updates">Updates to EVPN Broadcast, Unkn | ||||
own Unicast, or Multicast (BUM) Procedures</title> | ||||
<seriesInfo name="RFC" value="9572"/> | ||||
<author fullname="Zhaohui Zhang" initials="Z." surname="Zhang"> | <author fullname="Zhaohui Zhang" initials="Z." surname="Zhang"> | |||
<organization>Juniper Networks</organization> | <organization>Juniper Networks</organization> | |||
<address> | <address> | |||
<email>zzhang@juniper.net</email> | <email>zzhang@juniper.net</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Wen Lin" initials="W." surname="Lin"> | <author fullname="Wen Lin" initials="W." surname="Lin"> | |||
<organization>Juniper Networks</organization> | <organization>Juniper Networks</organization> | |||
<address> | <address> | |||
<email>wlin@juniper.net</email> | <email>wlin@juniper.net</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Jorge Rabadan" initials="J." surname="Rabadan"> | <author fullname="Jorge Rabadan" initials="J." surname="Rabadan"> | |||
<organization>Nokia</organization> | <organization>Nokia</organization> | |||
<address> | <address> | |||
<email>jorge.rabadan@nokia.com</email> | <email>jorge.rabadan@nokia.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Keyur Patel" initials="K." surname="Patel"> | <author fullname="Keyur Patel" initials="K." surname="Patel"> | |||
<organization>Arrcus</organization> | <organization>Arrcus</organization> | |||
<address> | <address> | |||
<email>keyur@arrcus.com</email> | <email>keyur@arrcus.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Ali Sajassi" initials="A." surname="Sajassi"> | <author fullname="Ali Sajassi" initials="A." surname="Sajassi"> | |||
<organization>Cisco Systems</organization> | <organization>Cisco Systems</organization> | |||
<address> | <address> | |||
<email>sajassi@cisco.com</email> | <email>sajassi@cisco.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date year="2024" month="May" /> | ||||
<date year="2021"/> | <area>rtg</area> | |||
<workgroup>BESS</workgroup> | <workgroup>BESS</workgroup> | |||
<keyword>per-region I-PMSI</keyword> | ||||
<keyword>selective multicast forwarding</keyword> | ||||
<keyword>tunnel segmentation</keyword> | ||||
<keyword>inter-AS segmentation</keyword> | ||||
<keyword>inter-region segmentation</keyword> | ||||
<abstract> | <abstract> | |||
<t>This document specifies updated procedures for handling | <t>This document specifies updated procedures for handling | |||
broadcast, unknown unicast, and multicast (BUM) traffic in | Broadcast, Unknown Unicast, or Multicast (BUM) traffic in | |||
Ethernet VPNs (EVPN), including selective multicast, | Ethernet VPNs (EVPNs), including selective multicast | |||
and provider tunnel segmentation. This document updates RFC 7432. | and segmentation of provider tunnels. This document updates RFC 7432. | |||
</t> | </t> | |||
</abstract> | </abstract> | |||
<note title="Requirements Language"> | ||||
<t> | ||||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL | ||||
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", | ||||
"MAY", and "OPTIONAL" in this document are to be interpreted as | ||||
described in BCP 14 <xref target="RFC2119"/> <xref | ||||
target="RFC8174"/> when, and only when, they appear in all | ||||
capitals, as shown here. | ||||
</t> | ||||
</note> | ||||
</front> | </front> | |||
<middle> | <middle> | |||
<section title="Terminology"> | <section numbered="true" toc="default"> | |||
<t>It is expected that audience is familiar with MVPN [RFC6513] [RFC6514], V | <name>Introduction</name> | |||
PLS Multicast [RFC7117] and EVPN [RFC7432] concepts and | <t><xref target="RFC7117" format="default"/> specifies procedures for mult | |||
terminologies. For convenience, the following terms are briefly | icast in the Virtual Private LAN | |||
Service (VPLS multicast), using both inclusive tunnels and | ||||
selective tunnels with or without inter-AS segmentation, similar to the | ||||
Multicast VPN (MVPN) procedures specified in <xref target="RFC6513" forma | ||||
t="default"/> and <xref target="RFC6514" format="default"/>. | ||||
<xref target="RFC7524" format="default"/> specifies inter-area tunnel seg | ||||
mentation procedures for | ||||
both VPLS multicast and MVPNs. | ||||
</t> | ||||
<t><xref target="RFC7432" format="default"/> specifies BGP MPLS-based Ethe | ||||
rnet VPN (EVPN) procedures, | ||||
including those handling Broadcast, Unknown Unicast, or Multicast | ||||
(BUM) traffic. <xref target="RFC7432"/> refers to <xref target="RFC7117" | ||||
format="default"/> for details but leaves a few feature gaps related to selectiv | ||||
e tunnel and tunnel segmentation (<xref target="motivation"/>). | ||||
</t> | ||||
<t>This document aims to fill in those gaps by covering the use of selecti | ||||
ve | ||||
and segmented tunnels in EVPNs. | ||||
In the same way that <xref target="RFC7432"/> refers to <xref target="RFC | ||||
7117" format="default"/> for details, this document only specifies differences f | ||||
rom relevant procedures provided in <xref target="RFC7117" format="default"/> an | ||||
d <xref target="RFC7524" format="default"/>, rather than repeating the text from | ||||
those documents. | ||||
Note that these differences are applicable to EVPNs only | ||||
and are not updates to <xref target="RFC7117" format="default"/> or <xref | ||||
target="RFC7524" format="default"/>. | ||||
</t> | ||||
<t>MVPN, VPLS, and EVPN technologies all need to discover other Provider E | ||||
dges (PEs) in the | ||||
same L3/L2 VPN and announce the inclusive tunnels. MVPN technology introd | ||||
uced | ||||
the Inclusive P-Multicast Service Interface (I-PMSI) concept and uses I-P | ||||
MSI Auto-Discovery (A-D) routes for that purpose. | ||||
EVPN technology uses Inclusive Multicast Ethernet Tag (IMET) A-D routes, | ||||
but VPLS technology just adds a PMSI Tunnel Attribute (PTA) to an existin | ||||
g | ||||
VPLS A-D route for that purpose. For selective tunnels, they all | ||||
do use the same term: Selective PMSI (S-PMSI) A-D routes. | ||||
</t> | ||||
<t>This document often refers to the I-PMSI concept, which is | ||||
the same for all three technologies. For consistency and convenience, | ||||
an EVPN's IMET A-D route and a VPLS's VPLS A-D route carrying a PTA for B | ||||
UM traffic | ||||
purposes may each be referred to as an I-PMSI A-D route, depending on the | ||||
context. | ||||
</t> | ||||
<section numbered="true" toc="default"> | ||||
<name>Requirements Language</name> | ||||
<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", | ||||
"<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", | ||||
"<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", | ||||
"<bcp14>SHOULD NOT</bcp14>", | ||||
"<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | ||||
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document | ||||
are to be interpreted as described in BCP 14 | ||||
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only | ||||
when, they appear in all capitals, as shown here.</t> | ||||
</section> | ||||
<section numbered="true" toc="default"> | ||||
<name>Terminology</name> | ||||
<t>It is assumed that the reader is familiar with concepts and terminologi | ||||
es related to MVPN technology <xref target="RFC6513" format="default"/> <xref ta | ||||
rget="RFC6514" format="default"/>, VPLS multicast <xref target="RFC7117" format= | ||||
"default"/>, and EVPN technology <xref target="RFC7432" format="default"/>. For | ||||
convenience, the following terms are briefly | ||||
explained. | explained. | |||
<list style="symbols"> | </t> | |||
<t>PMSI [RFC6513]: P-Multicast Service Interface - a conceptual interface | <dl spacing="normal"> | |||
for a PE | <dt>AS:</dt><dd>Autonomous System</dd> | |||
<dt>PMSI <xref target="RFC6513" format="default"/>:</dt><dd>P-Multicast | ||||
Service Interface. A conceptual interface for a PE | ||||
to send customer multicast traffic to all or some PEs in the same | to send customer multicast traffic to all or some PEs in the same | |||
VPN. | VPN.</dd> | |||
</t> | <dt>I-PMSI:</dt><dd>Inclusive PMSI. Enables traffic to be sent to all PE | |||
<t>I-PMSI: Inclusive PMSI - to all PEs in the same VPN. | s in the same VPN.</dd> | |||
</t> | <dt>S-PMSI:</dt><dd>Selective PMSI. Enables traffic to be sent to some o | |||
<t>S-PMSI: Selective PMSI - to some of the PEs in the same VPN. | f the PEs in the same VPN.</dd> | |||
</t> | <dt>I/S-PMSI A-D Route:</dt><dd>Auto-Discovery route used to announce th | |||
<t>I/S-PMSI A-D Route: Auto-Discovery routes used to announce the tunn | e tunnels that instantiate an I/S-PMSI.</dd> | |||
els that instantiate an I/S-PMSI. | <dt>Leaf Auto-Discovery (A-D) Route <xref target="RFC6513" format="defau | |||
</t> | lt"/>:</dt><dd>For explicit leaf-tracking purposes. | |||
<t>Leaf Auto-Discovery (A-D) routes [RFC6513]: For explicit leaf tracking | Triggered by I/S-PMSI A-D routes and targeted at the triggering | |||
purpose. | route's (re-)advertiser. Its Network Layer | |||
Triggered by I/S-PMSI A-D routes and targeted at triggering | Reachability Information (NLRI) embeds the entire NLRI of the triggering PMSI | |||
route's (re-)advertiser. Its NLRI embeds the entire NLRI of the trigge | A-D route.</dd> | |||
ring PMSI A-D route. | <dt>IMET A-D Route <xref target="RFC7432" format="default"/>:</dt><dd>In | |||
</t> | clusive Multicast Ethernet Tag A-D route. | |||
<t>IMET A-D route [RFC7432]: Inclusive Multicast Ethernet Tag A-D route. | The EVPN equivalent of an MVPN Intra-AS I-PMSI A-D route | |||
The EVPN equivalent of MVPN Intra-AS I-PMSI A-D route | used to announce the tunnels that instantiate an I-PMSI.</dd> | |||
used to announce the tunnels that instantiate an I-PMSI. | <dt>SMET A-D Route <xref target="RFC9251" format="default"/>:</dt> | |||
</t> | <dd>Selective Multicast Ethernet Tag A-D route. The EVPN | |||
<t>SMET A-D route <xref target="I-D.ietf-bess-evpn-igmp-mld-proxy"/>: | equivalent of an MVPN Leaf A-D route, but unsolicited and untargeted.< | |||
Selective Multicast Ethernet Tag A-D route. The EVPN | /dd> | |||
equivalent of MVPN Leaf A-D route but unsolicited and untargeted. | <dt>PMSI Tunnel Attribute (PTA):</dt><dd>An optional transitive BGP attr | |||
</t> | ibute | |||
<t>PMSI Tunnel Attribute (PTA): An optional transitive BGP attribute | ||||
that may be attached to PMSI/Leaf A-D routes to provide | that may be attached to PMSI/Leaf A-D routes to provide | |||
information for a PMSI tunnel. | information for a PMSI tunnel.</dd> | |||
</t> | <dt>IBGP:</dt><dd>Internal BGP (BGP connection between internal peers).< | |||
</list> | /dd> | |||
</t> | <dt>EBGP:</dt><dd>External BGP (BGP connection between external peers).< | |||
/dd> | ||||
<dt>RT:</dt><dd>Route Target. Controls route importation and propagation | ||||
.</dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section title="Introduction"> | </section> | |||
<t>[RFC7117] specifies procedures for Multicast in Virtual Private LAN | <section anchor="segmentation" numbered="true" toc="default"> | |||
Service (VPLS Multicast) using both inclusive tunnels and | <name>Tunnel Segmentation</name> | |||
selective tunnels with or without inter-as segmentation, similar to the | <t>MVPN provider tunnels and EVPN/VPLS BUM provider tunnels, which are | |||
Multicast VPN (MVPN) procedures specified in [RFC6513] and [RFC6514]. | ||||
[RFC7524] specifies inter-area tunnel segmentation procedures for | ||||
both VPLS Multicast and MVPN. | ||||
</t> | ||||
<t>[RFC7432] specifies BGP MPLS-Based Ethernet VPN (EVPN) procedures, | ||||
including those handling broadcast, unknown unicast, and multicast | ||||
(BUM) traffic. A lot of details are referred to [RFC7117], yet | ||||
with quite some feature gaps like selective tunnel and tunnel | ||||
segmentation (<xref target="segmentation"/>). | ||||
</t> | ||||
<t>This document aims at filling the gaps - cover the use of selective | ||||
and segmented tunnels in EVPN. It follows the same editorial choice | ||||
as in RFC7432 and only specifies differences from relevant procedures | ||||
in [RFC7117] and [RFC7524], instead of repeating the text. | ||||
Note that these differences are applicable to EVPN only, | ||||
and are not updates to [RFC7117] or [RFC7524]. | ||||
</t> | ||||
<t>MVPN, VPLS and EVPN all have the need to discover other PEs in the | ||||
same L3/L2 VPN and announce the inclusive tunnels. MVPN introduced | ||||
the I-PMSI concept and uses I-PMSI A-D route for that. | ||||
EVPN uses Inclusive Multicast Ethernet Tag Route (IMET) A-D route | ||||
but VPLS just adds an PMSI Tunnel Attribute (PTA) to the existing | ||||
VPLS A-D route for that purpose. For selective tunnels, they all | ||||
do use the same term S-PMSI A-D routes. | ||||
</t> | ||||
<t>Many places of this document involve the I-PMSI concept that is all | ||||
the same for all three technologies. For consistency and convenience, | ||||
EVPN's IMET and VPLS's VPLS A-D route carrying PTA for BUM traffic | ||||
purpose may all be referred to as I-PMSI A-D routes depending on the | ||||
context. | ||||
</t> | ||||
<!--t>MVPN uses terms I-PMSI and S-PMSI A-D Routes. For | ||||
consistency and convenience, this document will use the same I/S-PMSI | ||||
terms for VPLS and EVPN. In particular, EVPN's Inclusive Multicast | ||||
Ethernet Tag Route and VPLS's VPLS A-D route carrying PTA | ||||
(PMSI Tunnel Attribute) for BUM traffic purpose will all be referred | ||||
to as I-PMSI A-D routes. Depending on the context, they may be used | ||||
interchangeably. | ||||
</t--> | ||||
<section title="Tunnel Segmentation" anchor="segmentation"> | ||||
<t>MVPN provider tunnels and EVPN/VPLS BUM provider tunnels, which are | ||||
referred to as MVPN/EVPN/VPLS provider tunnels in this document for | referred to as MVPN/EVPN/VPLS provider tunnels in this document for | |||
simplicity, can be segmented for technical or administrative reasons, | simplicity, can be segmented for technical or administrative reasons, | |||
which are summarized in <xref target="motivation"/> of this document. | which are summarized in <xref target="motivation" format="default"/> of t | |||
[RFC6513] and [RFC6514] cover MVPN inter-as segmentation, | his document. | |||
[RFC7117] covers | <xref target="RFC6513" format="default"/> and <xref target="RFC6514" form | |||
VPLS multicast inter-as segmentation, and [RFC7524] (Seamless MPLS | at="default"/> cover MVPN inter-AS segmentation, | |||
Multicast) covers inter-area segmentation for both MVPN and VPLS. | <xref target="RFC7117" format="default"/> covers | |||
</t> | VPLS multicast inter-AS segmentation, and <xref target="RFC7524" format=" | |||
<t>With tunnel segmentation, different segments of an end-to-end tunnel | default"/> (seamless MPLS | |||
may have different encapsulation overhead. However, the largest overhead | multicast) covers inter-area segmentation for both MVPNs and VPLSs. | |||
</t> | ||||
<t>With tunnel segmentation, different segments of an end-to-end tunnel | ||||
may have different encapsulation overheads. However, the largest overhead | ||||
of the tunnel caused by an encapsulation method on a particular segment | of the tunnel caused by an encapsulation method on a particular segment | |||
is not different from the case of a non-segmented tunnel with that | is not different from the case of a non-segmented tunnel with that | |||
encapsulation method. This is similar to the case of a network | encapsulation method. This is similar to the case of a network | |||
with different link types. | with different link types. | |||
</t> | </t> | |||
<t>There is a difference between MVPN and VPLS multicast inter-as | <t>There is a difference between MVPN and VPLS multicast inter-AS | |||
segmentation (the VPLS approach is briefly discribed in <xref target="int | segmentation (the VPLS approach is briefly described in <xref target="int | |||
eraschanges"/>). For simplicity, EVPN will use the same procedures as | eraschanges" format="default"/>). For simplicity, EVPNs will use the same proced | |||
in MVPN. All ASBRs can re-advertise | ures as those for | |||
MVPNs. All ASBRs can re-advertise | ||||
their choice of the best route. Each can become the root of its | their choice of the best route. Each can become the root of its | |||
intra-AS segment and inject traffic it receives from its upstream, | intra-AS segment and inject traffic it receives from its upstream, | |||
while each downstream PE/ASBR will only pick one of the upstream ASBRs | while each downstream PE/ASBR will only pick one of the upstream ASBRs | |||
as its upstream. This is also the behavior even for VPLS in case of | as its upstream. This is also the behavior even for VPLS in the case of | |||
inter-area segmentation. | inter-area segmentation. | |||
</t> | </t> | |||
<t>For inter-area segmentation, [RFC7524] requires the use of Inter-area | <t>For inter-area segmentation, <xref target="RFC7524" format="default"/ | |||
P2MP Segmented Next-Hop Extended Community (S-NH-EC), and the setting | > requires the use of the Inter-Area | |||
of "Leaf Information Required" L flag in PTA in certain situations. | Point-to-Multipoint (P2MP) Segmented Next-Hop Extended Community (S-NH-EC | |||
In the EVPN case, the requirements around S-NH-EC and the PTA "L" flag | ) and the setting | |||
differ from [RFC7524] to make the segmentation procedures transparent to | of the Leaf Information Required (L) flag in the PTA in certain situation | |||
s. | ||||
In the EVPN case, the requirements around the S-NH-EC and the L flag in t | ||||
he PTA | ||||
differ from <xref target="RFC7524" format="default"/> to make the segment | ||||
ation procedures transparent to | ||||
ingress and egress PEs. | ingress and egress PEs. | |||
</t> | </t> | |||
<t>[RFC7524] assumes that segmentation happens at area borders. | <t><xref target="RFC7524" format="default"/> assumes that segmentation h | |||
appens at area borders. | ||||
However, it could be at "regional" borders, where a region could be a | However, it could be at "regional" borders, where a region could be a | |||
sub-area, or even an entire AS plus its external links | sub-area, or even an entire AS plus its external links | |||
(<xref target = "region"/>). That would | (<xref target="region" format="default"/>); this would | |||
allow for more flexible deployment scenarios (e.g. for single-area | allow for more flexible deployment scenarios (e.g., for single-area | |||
provider networks). This document extends the inter-area segmentation | provider networks). This document extends the inter-area segmentation con | |||
to inter-region segmentation for EVPN. | cept | |||
</t> | to inter-region segmentation for EVPNs. | |||
<section title="Reasons for Tunnel Segmentation" anchor="motivation"> | </t> | |||
<t>Tunnel segmentation may be required and/or desired because of | <section anchor="motivation" numbered="true" toc="default"> | |||
<name>Reasons for Tunnel Segmentation</name> | ||||
<t>Tunnel segmentation may be required and/or desired for | ||||
administrative and/or technical reasons. | administrative and/or technical reasons. | |||
</t> | </t> | |||
<t>For example, an MVPN/VPLS/EVPN network may span multiple providers | <t>For example, an MVPN/VPLS/EVPN may span multiple providers, | |||
and the end-to-end provider | and the end-to-end provider | |||
tunnels have to be segmented at and stitched by the ASBRs. | tunnels have to be segmented at and stitched by the ASBRs. | |||
Different providers may use different tunnel technologies (e.g., | Different providers may use different tunnel technologies (e.g., | |||
provider A uses Ingress Replication [RFC7988], provider B uses RSVP-TE | provider A uses ingress replication <xref target="RFC7988" format="defaul | |||
P2MP [RFC4875] while provider C uses mLDP [RFC6388]). Even if they use | t"/>, provider B uses RSVP-TE | |||
the same tunnel technology like RSVP-TE | P2MP <xref target="RFC4875" format="default"/>, and provider C uses Multi | |||
P2MP, it may be impractical to set up the tunnels across provider | point LDP (mLDP) <xref target="RFC6388" format="default"/>). Even if they use | |||
the same tunnel technology (e.g., RSVP-TE | ||||
P2MP), it may be impractical to set up the tunnels across provider | ||||
boundaries. | boundaries. | |||
</t> | </t> | |||
<t>The same situations may apply between the ASes and/or areas of a | <t>The same situations may apply between the ASes and/or areas of a | |||
single provider. For example, the backbone area may use RSVP-TE | single provider. For example, the backbone area may use RSVP-TE | |||
P2MP tunnels while non-backbone areas may use mLDP tunnels. | P2MP tunnels while non-backbone areas may use mLDP tunnels. | |||
</t> | </t> | |||
<t>Segmentation can also be used to divide an AS/area into smaller regions, | <t>Segmentation can also be used to divide an AS/area into smaller reg | |||
ions, | ||||
so that control plane state and/or forwarding plane state/burden can be | so that control plane state and/or forwarding plane state/burden can be | |||
limited to that of individual regions. For example, instead of Ingress | limited to that of individual regions. For example, instead of | |||
Replicating to 100 PEs in the entire AS, with inter-area segmentation | ingress-replicating to 100 PEs in the entire AS, with inter-area segmenta | |||
[RFC7524] a PE only needs to replicate to local PEs and ABRs. | tion | |||
<xref target="RFC7524" format="default"/>, a PE only needs to replicate t | ||||
o local PEs and Area Border Routers (ABRs). | ||||
The ABRs will further replicate to their downstream PEs and ABRs. | The ABRs will further replicate to their downstream PEs and ABRs. | |||
This not only reduces the forwarding plane burden, but also reduces | This not only reduces the forwarding plane burden, but also reduces | |||
the leaf tracking burden in the control plane. | the leaf-tracking burden in the control plane. | |||
</t> | </t> | |||
<t>Smaller regions also have the benefit that, in case of tunnel | <t>In the case of tunnel aggregation, smaller regions provide the bene | |||
aggregation, it is easier to find congruence among the segments of | fit of | |||
making it easier to find congruence among the segments of | ||||
different constituent (service) tunnels and the resulting aggregation | different constituent (service) tunnels and the resulting aggregation | |||
(base) tunnel in a region. This leads to better bandwidth efficiency, | (base) tunnel in a region. This leads to better bandwidth efficiency, | |||
because the more congruent they are, the fewer leaves of the base | because the more congruent they are, the fewer leaves of the base | |||
tunnel need to discard traffic when a service tunnel's segment | tunnel need to discard traffic when a service tunnel's segment | |||
does not need to receive the traffic (yet it is receiving the traffic | does not need to receive the traffic (yet it is receiving the traffic | |||
due to aggregation). | due to aggregation). | |||
</t> | </t> | |||
<t>Another advantage of the smaller region is smaller BIER [RFC8279] | <t>Another advantage of the smaller region is smaller Bit Index | |||
sub-domains. With BIER, packets carry a BitString, | Explicit Replication (BIER) subdomains <xref target="RFC8279" format="def | |||
in which the bits correspond to edge routers that needs to receive | ault"/>. | |||
traffic. Smaller sub-domains means smaller BitStrings can be used | With BIER, packets carry a BitString, | |||
in which the bits correspond to edge routers that need to receive | ||||
traffic. Smaller subdomains means that smaller BitStrings can be used | ||||
without having to send multiple copies of the same packet. | without having to send multiple copies of the same packet. | |||
</t> | </t> | |||
<!-- | ||||
<t>Finally, EVPN tunnel segmentation can be used for EVPN DCIs, | ||||
as discussed in <xref target="dci"/>. It follows the same concepts | ||||
discussed above. | ||||
</t> | ||||
</section> | ||||
</section> | ||||
</section> | </section> | |||
<section title="Additional Route Types of EVPN NLRI" anchor="routes"> | </section> | |||
<t>[RFC7432] defines the format of EVPN NLRI as the following: | <section anchor="routes" numbered="true" toc="default"> | |||
<figure> | <name>Additional Route Types of EVPN NLRI</name> | |||
<artwork> | <t><xref target="RFC7432" format="default"/> defines the format of EVPN NL | |||
RI as follows: | ||||
</t> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Type (1 octet) | | | Route Type (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Length (1 octet) | | | Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Type specific (variable) | | | Route Type specific (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
</artwork> | ]]></artwork> | |||
</figure> | <t> | |||
So far eight route types have been defined in [RFC7432], | So far, eight route types have been defined in <xref target="RFC7432" fo | |||
<xref target="I-D.ietf-bess-evpn-prefix-advertisement"/>, and | rmat="default"/>, | |||
<xref target="I-D.ietf-bess-evpn-igmp-mld-proxy"/>: | <xref target="RFC9136" format="default"/>, and | |||
<figure> | <xref target="RFC9251" format="default"/>: | |||
<artwork> | </t> | |||
+ 1 - Ethernet Auto-Discovery (A-D) route | <table anchor="tab-0"> | |||
+ 2 - MAC/IP Advertisement route | <name>Pre-existing Route Types</name> | |||
+ 3 - Inclusive Multicast Ethernet Tag route | <thead> | |||
+ 4 - Ethernet Segment route | <tr> | |||
+ 5 - IP Prefix Route | <th>Value</th> | |||
+ 6 - Selective Multicast Ethernet Tag Route | <th>Description</th> | |||
+ 7 - Multicast Join Synch Route | </tr> | |||
+ 8 - Multicast Leave Synch Route | </thead> | |||
</artwork> | <tbody> | |||
</figure> | <tr> | |||
<td>1</td> | ||||
<td>Ethernet Auto-discovery</td> | ||||
</tr> | ||||
<tr> | ||||
<td>2</td> | ||||
<td>MAC/IP Advertisement</td> | ||||
</tr> | ||||
<tr> | ||||
<td>3</td> | ||||
<td>Inclusive Multicast Ethernet Tag</td> | ||||
</tr> | ||||
<tr> | ||||
<td>4</td> | ||||
<td>Ethernet Segment</td> | ||||
</tr> | ||||
<tr> | ||||
<td>5</td> | ||||
<td>IP Prefix</td> | ||||
</tr> | ||||
<tr> | ||||
<td>6</td> | ||||
<td>Selective Multicast Ethernet Tag Route</td> | ||||
</tr> | ||||
<tr> | ||||
<td>7</td> | ||||
<td>Multicast Membership Report Synch Route</td> | ||||
</tr> | ||||
<tr> | ||||
<td>8</td> | ||||
<td>Multicast Leave Synch Route</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t> | ||||
This document defines three additional route types: | This document defines three additional route types: | |||
<figure> | </t> | |||
<artwork> | <table anchor="tab-0a"> | |||
+ 9 - Per-Region I-PMSI A-D route | <name>New Route Types</name> | |||
+ 10 - S-PMSI A-D route | <thead> | |||
+ 11 - Leaf A-D route | <tr> | |||
</artwork> | <th>Value</th> | |||
</figure> | <th>Description</th> | |||
The "Route Type specific" field of the type 9 and type 10 EVPN NLRIs | </tr> | |||
starts with a type 1 RD, whose Administrator sub-field MUST match | </thead> | |||
that of the RD in all current non-Leaf A-D (<xref target="leaf"/>) | <tbody> | |||
EVPN routes from the same advertising router for a given EVI. | <tr> | |||
</t> | <td>9</td> | |||
<section title="Per-Region I-PMSI A-D route" anchor="per-region"> | <td>Per-Region I-PMSI A-D route</td> | |||
<t>The Per-region I-PMSI A-D route has the following format. Its usage is | </tr> | |||
discussed in <xref target="aggregation"/>. | <tr> | |||
<figure> | <td>10</td> | |||
<artwork> | <td>S-PMSI A-D route</td> | |||
</tr> | ||||
<tr> | ||||
<td>11</td> | ||||
<td>Leaf A-D route</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t> | ||||
The "Route Type specific" field of the Type 9 and Type 10 EVPN NLRIs | ||||
starts with a Type 1 RD (Route Distinguisher), whose Administrator sub-f | ||||
ield <bcp14>MUST</bcp14> match | ||||
that of the RD in all current EVPN routes that are not Leaf A-D routes | ||||
(<xref target="leaf" format="default"/>), i.e., non-Leaf A-D routes | ||||
from the same advertising router for a given EVPN instance (EVI). | ||||
</t> | ||||
<section anchor="per-region" numbered="true" toc="default"> | ||||
<name>Per-Region I-PMSI A-D Route</name> | ||||
<t>The per-region I-PMSI A-D route has the following format. Its usage i | ||||
s | ||||
discussed in <xref target="aggregation" format="default"/>. | ||||
</t> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
+-----------------------------------+ | +-----------------------------------+ | |||
| RD (8 octets) | | | RD (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Ethernet Tag ID (4 octets) | | | Ethernet Tag ID (4 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Region ID (8 octets) | | | Region ID (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
</artwork> | ]]></artwork> | |||
</figure> | <t> | |||
The Region ID identifies the region and is encoded just as how an | The Region ID identifies the region and is encoded in the same way that | |||
Extended Community is encoded, as detailed in | an | |||
<xref target="aggregation"/>. | EC is encoded, as detailed in | |||
</t> | <xref target="aggregation" format="default"/>. | |||
</section> | </t> | |||
<section title="S-PMSI A-D route"> | </section> | |||
<t>The S-PMSI A-D route has the following format: | <section numbered="true" toc="default"> | |||
<figure> | <name>S-PMSI A-D Route</name> | |||
<artwork> | <t>The S-PMSI A-D route has the following format: | |||
</t> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
+-----------------------------------+ | +-----------------------------------+ | |||
| RD (8 octets) | | | RD (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Ethernet Tag ID (4 octets) | | | Ethernet Tag ID (4 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Source Length (1 octet) | | | Multicast Source Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Source (Variable) | | | Multicast Source (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Group Length (1 octet) | | | Multicast Group Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Group (Variable) | | | Multicast Group (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr Length (1 octet) | | |Originator's Addr Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr (4 or 16 octets) | | |Originator's Addr (4 or 16 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
</artwork> | ]]></artwork> | |||
</figure> | <t> | |||
Other than the addition of Ethernet Tag ID and Originator's Addr | Other than the addition of the Ethernet Tag ID and Originator's Addr | |||
Length, it is identical | Length fields, it is identical | |||
to the S-PMSI A-D route as defined in [RFC7117]. The procedures | to the S-PMSI A-D route as defined in <xref target="RFC7117" format="def | |||
in [RFC7117] also apply (including wildcard functionality), | ault"/>. The procedures specified | |||
in <xref target="RFC7117" format="default"/> also apply (including wildc | ||||
ard functionality), | ||||
except that the granularity level is per Ethernet Tag. | except that the granularity level is per Ethernet Tag. | |||
</t> | </t> | |||
</section> | </section> | |||
<section title="Leaf A-D route" anchor="leaf"> | <section anchor="leaf" numbered="true" toc="default"> | |||
<t>The Route Type specific field of a Leaf A-D route consists of | <name>Leaf A-D Route</name> | |||
<t>The Route Type specific field of a Leaf A-D route consists of | ||||
the following: | the following: | |||
<figure> | </t> | |||
<artwork> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Key (variable) | | | Route Key (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr Length (1 octet) | | |Originator's Addr Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr (4 or 16 octets) | | |Originator's Addr (4 or 16 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
</artwork> | ]]></artwork> | |||
</figure> | <t> | |||
A Leaf A-D route is originated in response to a PMSI route, | A Leaf A-D route is originated in response to a PMSI route, | |||
which could be an Inclusive Multicast Tag route, a per-region | which could be an IMET A-D route, a per-region | |||
I-PMSI A-D route, an S-PMSI A-D route, or some other types of | I-PMSI A-D route, an S-PMSI A-D route, or some other types of | |||
routes that may be defined in the future that triggers Leaf A-D | routes that may be defined in the future that trigger Leaf A-D | |||
routes. The Route Key is the NLRI of the | routes. The Route Key is the NLRI of the | |||
route for which this Leaf A-D route is generated. | route for which this Leaf A-D route is generated. | |||
</t> | </t> | |||
<t>The general procedures of Leaf A-D route are first specified in | <t>The general procedures for Leaf A-D routes were first specified in | |||
[RFC6514] for MVPN. The principles apply to VPLS and EVPN as well. | <xref target="RFC6514" format="default"/> for MVPNs. The principles there | |||
[RFC7117] has details for VPLS Multicast, and this document points | in apply to VPLSs and EVPNs as well. | |||
out some specifics for EVPN, e.g. in <xref target="inter-as"/>. | <xref target="RFC7117" format="default"/> provides details regarding VPLS | |||
</t> | multicast, and this document points | |||
</section> | out some specifics for EVPNs, e.g., in <xref target="inter-as" format="de | |||
fault"/>. | ||||
</t> | ||||
</section> | ||||
</section> | </section> | |||
<section title="Selective Multicast"> | <section numbered="true" toc="default"> | |||
<t><xref target="I-D.ietf-bess-evpn-igmp-mld-proxy"/> specifies | <name>Selective Multicast</name> | |||
procedures for EVPN selective forwarding of IP multicast using SMET | <t><xref target="RFC9251" format="default"/> specifies | |||
routes. It assumes selective forwarding is always used with IR | procedures for EVPN selective forwarding of IP multicast traffic using SM | |||
ET | ||||
routes. It assumes that selective forwarding is always used with ingress | ||||
replication | ||||
for all flows (though the same signaling can also be used for an | for all flows (though the same signaling can also be used for an | |||
ingress PE to find out the set of egress PEs for selective | ingress PE to learn the set of egress PEs for selective | |||
forwarding with BIER). | forwarding with BIER). | |||
An NVE proxies the IGMP/MLD state that it learns on its | A Network Virtualization Edge (NVE) proxies the IGMP/MLD state ("MLD" | |||
ACs to (C-S,C-G) or (C-*,C-G) SMET routes that advertises to other NVEs, | stands for "Multicast Listener Discovery") that it learns on its | |||
Attachment Circuits (ACs) to (C-S,C-G) or (C-*,C-G) SMET routes that are | ||||
advertised to other NVEs, | ||||
and a receiving NVE converts the SMET routes back to IGMP/MLD messages | and a receiving NVE converts the SMET routes back to IGMP/MLD messages | |||
and sends them out of its ACs. The receiving NVE also uses the SMET | and sends them out of its ACs. The receiving NVE also uses the SMET | |||
routes to identify which NVEs need to receive traffic for a particular | routes to identify which NVEs need to receive traffic for a particular | |||
(C-S,C-G) or (C-*,C-G) to achieve selective forwarding using IR or | (C-S,C-G) or (C-*,C-G) to achieve selective forwarding using ingress repl ication or | |||
BIER. | BIER. | |||
</t> | </t> | |||
<t>With the above procedures, selective forwarding is done for all flows | <t>With the above procedures, selective forwarding is done for all flows, | |||
and the SMET routes are advertised for all flows. | and the SMET routes are advertised for all flows. | |||
It is possible that an operator may not want to track all those | It is possible that an operator may not want to track all those | |||
(C-S, C-G) or (C-*,C-G) state on the NVEs, and the multicast traffic | (C-S, C-G) or (C-*,C-G) states on the NVEs, and the multicast traffic | |||
pattern allows inclusive forwarding for most flows while selective | pattern allows inclusive forwarding for most flows while selective | |||
forwarding is needed only for a few high-rate flows. For that, | forwarding is needed only for a few high-rate flows. For that reason, | |||
or for tunnel types other than IR/BIER, S-PMSI/Leaf A-D procedures | or for tunnel types other than ingress replication or BIER, S-PMSI/Leaf A | |||
defined for Selective Multicast for VPLS in [RFC7117] are used. Other | -D procedures | |||
than that different route types and formats are specified with EVPN SAFI | defined for selective multicast for VPLS in <xref target="RFC7117" format | |||
for S-PMSI A-D and Leaf A-D routes (<xref target="routes"/>), all | ="default"/> are used. Other | |||
procedures in [RFC7117] with respect to Selective Multicast apply to | than the fact that different route types and formats are specified with a | |||
EVPN as well, including wildcard procedures. In a nutshell, a source | n EVPN SAFI | |||
for S-PMSI A-D and Leaf A-D routes (<xref target="routes" format="default | ||||
"/>), all | ||||
procedures specified in <xref target="RFC7117" format="default"/> with re | ||||
spect to selective multicast apply to | ||||
EVPNs as well, including wildcard procedures. In a nutshell, a source | ||||
NVE advertises S-PMSI A-D routes to announce the tunnels used for | NVE advertises S-PMSI A-D routes to announce the tunnels used for | |||
certain flows, and receiving NVEs either join the announced PIM/mLDP | certain flows, and receiving NVEs either join the announced PIM/mLDP | |||
tunnel or respond with Leaf A-D routes if the Leaf Information Required | tunnel or respond with Leaf A-D routes if the L | |||
flag is set in the S-PMSI A-D route's PTA (so that the source NVE can | flag is set in the S-PMSI A-D route's PTA (so that the source NVE can | |||
include them as tunnel leaves). | include them as tunnel leaves). | |||
</t> | </t> | |||
<t>An optimization to the [RFC7117] procedures may be applied. Even if | <t>An optimization to the procedures provided in <xref target="RFC7117" fo | |||
rmat="default"/> may be applied. Even if | ||||
a source NVE sets the L flag to request Leaf A-D routes, an egress | a source NVE sets the L flag to request Leaf A-D routes, an egress | |||
NVE MAY omit the Leaf A-D route if it has already advertised a | NVE <bcp14>MAY</bcp14> omit the Leaf A-D route if it has already advertised a | |||
corresponding SMET route, and the source NVE MUST use that in lieu of | corresponding SMET route, and the source NVE <bcp14>MUST</bcp14> use that in | |||
lieu of | ||||
the Leaf A-D route. | the Leaf A-D route. | |||
</t> | </t> | |||
<t>The optional optimizations specified for MVPN in | <t>The optional optimizations specified for MVPNs in | |||
<xref target="RFC8534"/> are also applicable | <xref target="RFC8534" format="default"/> are also applicable | |||
to EVPN when the S-PMSI/Leaf A-D routes procedures are used for EVPN | to EVPNs when the procedures for S-PMSI/Leaf A-D routes are used for EVPN | |||
selective multicast forwarding. | selective multicast forwarding. | |||
</t> | </t> | |||
</section> | </section> | |||
<section title="Inter-AS Segmentation" anchor="inter-as"> | <section anchor="inter-as" numbered="true" toc="default"> | |||
<section title="Differences from Section 7.2.2 of [RFC7117] When Applied to | <name>Inter-AS Segmentation</name> | |||
EVPN" anchor="interaschanges"> | <section anchor="interaschanges" numbered="true" toc="default"> | |||
<t>The first paragraph of Section 7.2.2.2 of [RFC7117] says: | <name>Differences from Section 7.2.2 of RFC 7117 when Applied to EVPNs</ | |||
<figure> | name> | |||
<artwork> | <t>The first paragraph of <xref target="RFC7117" sectionFormat="of" sect | |||
"... The best route procedures ensure that if multiple | ion="7.2.2.2"/> says: | |||
</t> | ||||
<blockquote> | ||||
... The best route procedures ensure that if multiple | ||||
ASBRs, in an AS, receive the same Inter-AS A-D route from their EBGP | ASBRs, in an AS, receive the same Inter-AS A-D route from their EBGP | |||
neighbors, only one of these ASBRs propagates this route in Internal | neighbors, only one of these ASBRs propagates this route in Internal | |||
BGP (IBGP). This ASBR becomes the root of the intra-AS segment of | BGP (IBGP). This ASBR becomes the root of the intra-AS segment of | |||
the inter-AS tree and ensures that this is the only ASBR that accepts | the inter-AS tree and ensures that this is the only ASBR that accepts | |||
traffic into this AS from the inter-AS tree." | traffic into this AS from the inter-AS tree. | |||
</artwork> | </blockquote> | |||
</figure> | <t> | |||
The above VPLS behavior requires complicated VPLS specific procedures | The above VPLS behavior requires complicated VPLS-specific procedures | |||
for the ASBRs to reach agreement. For EVPN, a different approach | for the ASBRs to reach agreement. For EVPNs, a different approach | |||
is used and the above quoted text is not applicable to EVPN. | is used; the above text from <xref target="RFC7117"/> is not applicable t | |||
</t> | o EVPNs. | |||
<t>With the different approach for EVPN/MVPN, each ASBR will re-advertise | </t> | |||
<t>With the different approach for EVPNs/MVPNs, each ASBR will re-advert | ||||
ise | ||||
its received Inter-AS A-D route to its IBGP peers and becomes the root | its received Inter-AS A-D route to its IBGP peers and becomes the root | |||
of an intra-AS segment of the inter-AS tree. The intra-AS segment | of an intra-AS segment of the inter-AS tree. The intra-AS segment | |||
rooted at one ASBR is disjoint with another intra-AS segment rooted | rooted at one ASBR is disjoint from another intra-AS segment rooted | |||
at another ASBR. This is the same as the procedures for S-PMSI | at another ASBR. This is the same as the procedures for S-PMSI routes | |||
in [RFC7117] itself. | in <xref target="RFC7117" format="default"/> itself. | |||
</t> | </t> | |||
<t>The following bullet in Section 7.2.2.2 of [RFC7117] does not apply | <t>The following bullet in <xref target="RFC7117" sectionFormat="of" sec | |||
to EVPN. | tion="7.2.2.2"/> does not apply | |||
<figure> | to EVPNs. | |||
<artwork> | </t> | |||
+ If the ASBR uses ingress replication to instantiate the intra-AS | <blockquote> | |||
segment of the inter-AS tunnel, the re-advertised route MUST NOT | <ul><li>If the ASBR uses ingress replication to instantiate the intra-AS | |||
carry the PMSI Tunnel attribute. | segment of the inter-AS tunnel, the re-advertised route <bcp14>MUST NOT</ | |||
</artwork> | bcp14> | |||
</figure> | carry the PMSI Tunnel attribute.</li></ul> | |||
</t> | </blockquote> | |||
<t>The following bullet in Section 7.2.2.2 of [RFC7117]: | <t>The following bullet in <xref target="RFC7117" sectionFormat="of" sec | |||
<figure> | tion="7.2.2.2"/>: | |||
<artwork> | </t> | |||
+ If the ASBR uses a P-multicast tree to instantiate the intra-AS | <blockquote><ul><li> | |||
segment of the inter-AS tunnel, the PMSI Tunnel attribute MUST | If the ASBR uses a P-multicast tree to instantiate the intra-AS | |||
segment of the inter-AS tunnel, the PMSI Tunnel attribute <bcp14>MUST</bc | ||||
p14> | ||||
contain the identity of the tree that is used to instantiate the | contain the identity of the tree that is used to instantiate the | |||
segment (note that the ASBR could create the identity of the tree | segment (note that the ASBR could create the identity of the tree | |||
prior to the actual instantiation of the segment). If, in order | prior to the actual instantiation of the segment). If, in order | |||
to instantiate the segment, the ASBR needs to know the leaves of | to instantiate the segment, the ASBR needs to know the leaves of | |||
the tree, then the ASBR obtains this information from the A-D | the tree, then the ASBR obtains this information from the A-D | |||
routes received from other PEs/ASBRs in the ASBR's own AS. | routes received from other PEs/ASBRs in the ASBR's own AS.</li></ul> | |||
</artwork> | </blockquote> | |||
</figure> | <t>is changed to the following when applied to EVPNs: | |||
</t> | </t> | |||
<t>is changed to the following when applied to EVPN: | <blockquote><ul><li> | |||
<figure> | The PTA <bcp14>MUST</bcp14> specify the tunnel for the segment. | |||
<artwork> | ||||
"The PMSI Tunnel attribute MUST specify the tunnel for the segment. | ||||
If and only if, in order to establish the tunnel, the ASBR needs to | If and only if, in order to establish the tunnel, the ASBR needs to | |||
know the leaves of the tree, then the ASBR MUST set the L flag to | know the leaves of the tree, then the ASBR <bcp14>MUST</bcp14> set the L f lag to | |||
1 in the PTA to trigger Leaf A-D routes from egress PEs and | 1 in the PTA to trigger Leaf A-D routes from egress PEs and | |||
downstream ASBRs. It MUST be (auto-)configured with an import RT, | downstream ASBRs. It <bcp14>MUST</bcp14> be (auto-)configured with an impo | |||
which controls acceptance of leaf A-D routes by the ASBR." | rt RT, | |||
</artwork> | which controls acceptance of Leaf A-D routes by the ASBR.</li></ul> | |||
</figure> | </blockquote> | |||
</t> | <t>Accordingly, the following paragraph in <xref target="RFC7117" sectio | |||
<t>Accordingly, the following paragraph in Section 7.2.2.4 of [RFC7117]: | nFormat="of" section="7.2.2.4"/>: | |||
<figure> | </t> | |||
<artwork> | <blockquote> | |||
"If the received Inter-AS A-D route carries the PMSI Tunnel attribute | If the received Inter-AS A-D route carries the PMSI Tunnel attribute | |||
with the Tunnel Identifier set to RSVP-TE P2MP LSP, then the ASBR | with the Tunnel Identifier set to RSVP-TE P2MP LSP, then the ASBR | |||
that originated the route MUST establish an RSVP-TE P2MP LSP with the | that originated the route <bcp14>MUST</bcp14> establish an RSVP-TE P2MP LSP w | |||
local PE/ASBR as a leaf. This LSP MAY have been established before | ith the | |||
the local PE/ASBR receives the route, or it MAY be established after | local PE/ASBR as a leaf. This LSP <bcp14>MAY</bcp14> have been established b | |||
the local PE receives the route." | efore | |||
</artwork> | the local PE/ASBR receives the route, or it <bcp14>MAY</bcp14> be established | |||
</figure> | after | |||
is changed to the following when applied to EVPN: | the local PE receives the route. | |||
</t> | </blockquote> | |||
<t> | <t> | |||
"If the received Inter-AS A-D route has the L flag set in its PTA, | is changed to the following when applied to EVPNs: | |||
then a receiving PE MUST originate a corresponding Leaf A-D route, while | </t> | |||
a receiving ASBR MUST originate a corresponding Leaf A-D route | <blockquote> | |||
if and only if it received and imported one or more corresponding Leaf | If the received Inter-AS A-D route has the L flag set in its PTA, | |||
A-D routes from its downstream IBGP or EBGP peers, or it has non-null | then a receiving PE <bcp14>MUST</bcp14> originate a corresponding Leaf A-D rout | |||
downstream forwarding state for the PIM/mLDP tunnel that instantiates | e. | |||
its downstream intra-AS segment. The targeted ASBR for the Leaf A-D route, | A receiving ASBR <bcp14>MUST</bcp14> originate a corresponding Leaf A-D | |||
which (re-)advertised the Inter-AS A-D route, MUST establish a tunnel | route if and only if one of the following conditions is met: | |||
to the leaves discovered by the Leaf A-D routes." | (1) it received and imported one or more corresponding Leaf A-D | |||
</t> | routes from its downstream IBGP or EBGP peers or (2) it has | |||
</section> | non-null downstream forwarding state for the PIM/mLDP tunnel that | |||
<section title="I-PMSI Leaf Tracking" | instantiates its downstream intra-AS segment. The targeted ASBR for the Leaf A- | |||
anchor="leaf-tracking"> | D | |||
<t>An ingress PE does not set the L flag in its Inclusive Multicast | route, which (re-)advertised the Inter-AS A-D route, <bcp14>MUST</bcp14> establ | |||
Ethernet Tag (IMET) A-D route's PTA, | ish a tunnel to the | |||
even with Ingress Replication or RSVP-TE P2MP tunnels. | leaves discovered by the Leaf A-D routes. | |||
</blockquote> | ||||
</section> | ||||
<section anchor="leaf-tracking" numbered="true" toc="default"> | ||||
<name>I-PMSI Leaf Tracking</name> | ||||
<t>An ingress PE does not set the L flag in its IMET A-D route's PTA, | ||||
even with Ingress Replication tunnels or RSVP-TE P2MP tunnels. | ||||
It does not rely on the Leaf A-D routes to discover leaves in | It does not rely on the Leaf A-D routes to discover leaves in | |||
its AS, and Section 11.2 of [RFC7432] explicitly states that the L | its AS, and <xref target="RFC7432" sectionFormat="of" section="11.2"/> ex | |||
flag must be set to zero. | plicitly states that the L | |||
</t> | flag must be set to 0. | |||
<t>An implementation of [RFC7432] might have used the Originating | </t> | |||
<t>An implementation of <xref target="RFC7432" format="default"/> might | ||||
have used the Originating | ||||
Router's IP Address field of the IMET A-D | Router's IP Address field of the IMET A-D | |||
routes to determine the leaves, or might have used the Next Hop field | routes to determine the leaves or might have used the Next Hop field | |||
instead. Within the same AS, both will lead to the same result. | instead. Within the same AS, both will lead to the same result. | |||
</t> | </t> | |||
<t>With segmentation, an ingress PE MUST determine the leaves | <t>With segmentation, an ingress PE <bcp14>MUST</bcp14> determine the le | |||
aves | ||||
in its AS from the BGP next hops in all its received IMET A-D | in its AS from the BGP next hops in all its received IMET A-D | |||
routes, so it does not have to set the L flag set to request Leaf A-D | routes, so it does not have to set the L flag to request Leaf A-D | |||
routes. PEs within the same AS will all have different next hops | routes. PEs within the same AS will all have different next hops | |||
in their IMET A-D routes (hence will all be considered as leaves), | in their IMET A-D routes (and hence will all be considered as leaves), | |||
and PEs from other ASes will have the next hop in their IMET A-D | and PEs from other ASes will have the next hop in their IMET A-D | |||
routes set to addresses of ASBRs in this local AS, hence only those | routes set to addresses of ASBRs in this local AS; hence, only those | |||
ASBRs will be considered as leaves (as proxies for those PEs in other | ASBRs will be considered as leaves (as proxies for those PEs in other | |||
ASes). Note that in case of Ingress Replication, when an ASBR | ASes). Note that in the case of ingress replication, when an ASBR | |||
re-advertises IMET A-D routes to IBGP peers, it MUST advertise the | re-advertises IMET A-D routes to IBGP peers, it <bcp14>MUST</bcp14> adver | |||
same label for all those for the same Ethernet Tag ID and the same | tise the | |||
same label for all those routes for the same Ethernet Tag ID and the same | ||||
EVI. Otherwise, duplicated copies will be sent by the ingress PE | EVI. Otherwise, duplicated copies will be sent by the ingress PE | |||
and received by egress PEs in other regions. For the same reason, | and received by egress PEs in other regions. For the same reason, | |||
when an ingress PE builds its flooding list, if multiple routes | when an ingress PE builds its flooding list, if multiple routes | |||
have the same (nexthop, label) tuple they MUST only be | have the same (nexthop, label) tuple, they <bcp14>MUST</bcp14> only be | |||
added as a single branch in the flooding list. | added as a single branch in the flooding list. | |||
</t> | </t> | |||
</section> | </section> | |||
<section title="Backward Compatibility" anchor="compatibility"> | <section anchor="compatibility" numbered="true" toc="default"> | |||
<t>The above procedures assume that all PEs are upgraded to support | <name>Backward Compatibility</name> | |||
<t>The above procedures assume that all PEs are upgraded to support | ||||
the segmentation procedures: | the segmentation procedures: | |||
<list style="symbols"> | </t> | |||
<t>An ingress PE uses the Next Hop and not Originating | <ul spacing="normal"> | |||
<li>An ingress PE uses the Next Hop and not the Originating | ||||
Router's IP Address to determine leaves for the I-PMSI tunnel. | Router's IP Address to determine leaves for the I-PMSI tunnel. | |||
</t> | </li> | |||
<t>An egress PE sends Leaf A-D routes in response to I-PMSI routes, | <li>An egress PE sends Leaf A-D routes in response to I-PMSI routes, | |||
if the PTA has the L flag set by the re-advertising ASBR. | if the PTA has the L flag set by the re-advertising ASBR. | |||
</t> | </li> | |||
<t>In case of Ingress Replication, when an ingress PE builds | <li>In the case of ingress replication, when an ingress PE builds | |||
its flooding list, multiple I-PMSI routes may have the same (nexthop, label) | its flooding list, multiple I-PMSI routes may have the same (nexthop, label) | |||
tuple and only a single branch for those will be added in the flooding | tuple, and only a single branch for those routes will be added in the floodin g | |||
list. | list. | |||
</t> | </li> | |||
</list> | </ul> | |||
</t> | <t>If a deployment has legacy PEs that do not support the above, | |||
<t>If a deployment has legacy PEs that does not support the above, | ||||
then a legacy ingress PE would include all PEs (including those | then a legacy ingress PE would include all PEs (including those | |||
in remote ASes) as leaves of the inclusive tunnel and try to send | in remote ASes) as leaves of the inclusive tunnel and try to send | |||
traffic to them directly (no segmentation), which is either undesired | traffic to them directly (no segmentation), which is either undesirable | |||
or not possible; a legacy egress PE would not send Leaf A-D routes | or impossible; a legacy egress PE would not send Leaf A-D routes | |||
so the ASBRs would not know to send external traffic to them. | so the ASBRs would not know to send external traffic to them. | |||
</t> | </t> | |||
<t>If this backward compatibility problem needs to be addressed, the | <t>If this backward-compatibility problem needs to be addressed, the | |||
following procedure MUST be used (see <xref target="aggregation"/> | following procedure <bcp14>MUST</bcp14> be used (see <xref target="aggreg | |||
ation" format="default"/> | ||||
for per-PE/AS/region I-PMSI A-D routes): | for per-PE/AS/region I-PMSI A-D routes): | |||
<list style="symbols"> | </t> | |||
<t>An upgraded PE indicates in its per-PE I-PMSI A-D | <ul spacing="normal"> | |||
<li>An upgraded PE indicates in its per-PE I-PMSI A-D | ||||
route that it supports the new procedures. This is done | route that it supports the new procedures. This is done | |||
by setting a flag bit in the EVPN Multicast Flags Extended | by setting a flag bit in the EVPN Multicast Flags Extended | |||
Community. | Community. | |||
</t> | </li> | |||
<t>All per-PE I-PMSI A-D routes are restricted to the local AS | <li>All per-PE I-PMSI A-D routes are restricted to the local AS | |||
and not propagated to external peers. | and not propagated to external peers. | |||
</t> | </li> | |||
<t>The ASBRs in an AS originate per-region I-PMSI A-D routes | <li>The ASBRs in an AS originate per-region I-PMSI A-D routes | |||
and advertise them to their external peers to specify tunnels | and advertise them to their external peers to specify tunnels | |||
used to carry traffic from the local AS to other ASes. | used to carry traffic from the local AS to other ASes. | |||
Depending on the types of tunnels being used, the L flag | Depending on the types of tunnels being used, the L flag | |||
in the PTA may be set, in which case the downstream ASBRs | in the PTA may be set, in which case the downstream ASBRs | |||
and upgraded PEs will send Leaf A-D routes to pull traffic | and upgraded PEs will send Leaf A-D routes to pull traffic | |||
from their upstream ASBRs. In a particular downstream AS, | from their upstream ASBRs. In a particular downstream AS, | |||
one of the ASBRs is elected, based on the per-region | one of the ASBRs is elected, based on the per-region | |||
I-PMSI A-D routes for a particular source AS, | I-PMSI A-D routes for a particular source AS, | |||
to send traffic from that source AS to legacy PEs in the | to send traffic from that source AS to legacy PEs in the | |||
downstream AS. The traffic arrives at the elected ASBR | downstream AS. | |||
on the tunnel announced in the best per-region I-PMSI A-D | The traffic arrives at the elected ASBR on the tunnel | |||
route for the source AS, that the ASBR has selected of | announced in the best per-region I-PMSI A-D route for the source | |||
all those that it received over EBGP or IBGP sessions. | AS, as selected by the ASBR from all the routes that it received | |||
The election procedure is described in | over EBGP or IBGP sessions. The election procedure is described in | |||
<xref target="election"/>. | <xref target="election" format="default"/>. | |||
</t> | </li> | |||
<t>In an ingress/upstream AS, if and only if an ASBR has active downst | <li>In an ingress/upstream AS, if and only if an ASBR has active downs | |||
ream | tream | |||
receivers (PEs and ASBRs), which are learned either explicitly | receivers (PEs and ASBRs), which are learned either explicitly | |||
via Leaf A-D routes or implicitly via PIM join or mLDP label | via Leaf A-D routes or implicitly via PIM Join or mLDP label | |||
mapping, the ASBR originates a per-PE I-PMSI A-D route (i.e., | mapping, the ASBR originates a per-PE I-PMSI A-D route (i.e., a | |||
regular Inclusive Multicast Ethernet Tag route) into the local | regular IMET route) into the local | |||
AS, and stitches incoming per-PE I-PMSI tunnels into its | AS and stitches incoming per-PE I-PMSI tunnels into its | |||
per-region I-PMSI tunnel. With this, it gets traffic from | per-region I-PMSI tunnel. Via this process, it gets traffic from | |||
local PEs and send to other ASes via the tunnel announced in | local PEs and sends the traffic to other ASes via the tunnel announ | |||
ced in | ||||
its per-region I-PMSI A-D route. | its per-region I-PMSI A-D route. | |||
</t> | </li> | |||
</list> | </ul> | |||
</t> | <t>Note that even if there are no backward-compatibility issues, the use | |||
<t>Note that, even if there is no backward compatibility issue, the use of | of | |||
per-region I-PMSI has the benefit of keeping all per-PE I-PMSI A-D routes | per-region I-PMSI A-D routes provides the benefit of keeping all per-PE I | |||
-PMSI A-D routes | ||||
in their local ASes, greatly reducing the flooding of the routes and | in their local ASes, greatly reducing the flooding of the routes and | |||
their corresponding Leaf A-D routes (when needed), and the number of | their corresponding Leaf A-D routes (when needed) and reducing the number | |||
inter-as tunnels. | of | |||
</t> | inter-AS tunnels. | |||
<section title="Designated ASBR Election" anchor="election"> | </t> | |||
<t>When an ASBR re-advertises a per-region I-PMSI A-D route into an AS | <section anchor="election" numbered="true" toc="default"> | |||
<name>Designated ASBR Election</name> | ||||
<t>When an ASBR re-advertises a per-region I-PMSI A-D route into an AS | ||||
in which a designated ASBR needs to be used to forward traffic | in which a designated ASBR needs to be used to forward traffic | |||
to the legacy PEs in the AS, it MUST include a DF Election EC. | to the legacy PEs in the AS, it <bcp14>MUST</bcp14> include a Designated | |||
The EC and its use is specified in <xref target="RFC8584"/>. | Forwarder (DF) Election EC. | |||
The AC-DF bit in the DF Election EC MUST be cleared. | The EC and its use are specified in <xref target="RFC8584" format="defaul | |||
If it is known that no legacy PEs exist in the AS, the ASBR MUST NOT | t"/>. | |||
include the EC and MUST remove the DF Election EC if one is carried in | The AC-DF bit in the DF Election EC <bcp14>MUST</bcp14> be cleared. | |||
If it is known that no legacy PEs exist in the AS, the ASBR <bcp14>MUST N | ||||
OT</bcp14> | ||||
include the EC and <bcp14>MUST</bcp14> remove the DF Election EC if one i | ||||
s carried in | ||||
the per-region I-PMSI A-D routes that it receives. Note that this is done | the per-region I-PMSI A-D routes that it receives. Note that this is done | |||
for each set of per-region I-PMSI A-D routes with the same NLRI. | for each set of per-region I-PMSI A-D routes with the same NLRI. | |||
</t> | </t> | |||
<t>Based on the procedures in | <t>Based on the procedures specified in | |||
<xref target="RFC8584"/>, an election | <xref target="RFC8584" format="default"/>, an election | |||
algorithm is determined according to the DF Election ECs carried in | algorithm is determined according to the DF Election ECs carried in | |||
the set of per-region I-PMSI routes of the same NLRI re-adverised into th e AS. | the set of per-region I-PMSI routes of the same NLRI re-advertised into t he AS. | |||
The algorithm is then applied to a candidate list, which is the set of | The algorithm is then applied to a candidate list, which is the set of | |||
ASBRs that re-advertised the per-region I-PMSI routes of the same NLRI | ASBRs that re-advertised the per-region I-PMSI routes of the same NLRI | |||
carrying the DF Election EC. | carrying the DF Election EC. | |||
</t> | </t> | |||
</section> | </section> | |||
</section> | </section> | |||
</section> | </section> | |||
<section title="Inter-Region Segmentation" anchor="inter-region"> | <section anchor="inter-region" numbered="true" toc="default"> | |||
<section title="Area/AS vs. Region" anchor="region"> | <name>Inter-Region Segmentation</name> | |||
<t>[RFC7524] is for MVPN/VPLS inter-area segmentation and does not explicitl | <section anchor="region" numbered="true" toc="default"> | |||
y cover | <name>Area/AS vs. Region</name> | |||
EVPN. However, if "area" is replaced by "region" and "ABR" is replaced | <t><xref target="RFC7524" format="default"/> addresses MVPN/VPLS inter-a | |||
by "RBR" (Regional Border Router) then everything still works, and | rea segmentation and does not explicitly cover | |||
can be applied to EVPN as well. | EVPNs. However, if "area" is replaced by "region" and "ABR" is replaced | |||
</t> | by "RBR" (Regional Border Router), then everything still works and | |||
<t>A region can be a sub-area, or can be an entire AS including its | can be applied to EVPNs as well. | |||
external links. Instead of automatic region definition based on | </t> | |||
<t>A region can be a sub-area, or it can be an entire AS, including its | ||||
external links. Instead of automatically defining a region based on | ||||
IGP areas, a region would be defined as a BGP peer group. In fact, | IGP areas, a region would be defined as a BGP peer group. In fact, | |||
even with IGP area based region definition, a BGP peer group | even with a region definition based on an IGP area, a BGP peer group | |||
listing the PEs and ABRs in an area is still needed. | listing the PEs and ABRs in an area is still needed. | |||
</t> | </t> | |||
<t>Consider the following example diagram for inter-as segmentation: | <t>Consider the following example diagram for inter-AS segmentation: | |||
<figure> | </t> | |||
<artwork> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
--------- ------ --------- | --------- ------ --------- | |||
/ \ / \ / \ | / \ / \ / \ | |||
/ \ / \ / \ | / \ / \ / \ | |||
| PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | |||
\ / \ / \ / | \ / \ / \ / | |||
\ / \ / \ / | \ / \ / \ / | |||
--------- ------ --------- | --------- ------ --------- | |||
AS 100 AS 200 AS 300 | AS 100 AS 200 AS 300 | |||
|-----------|--------|---------|--------|------------| | |-----------|--------|---------|--------|------------| | |||
segment1 segment2 segment3 segment4 segment5 | segment1 segment2 segment3 segment4 segment5 | |||
</artwork> | ]]></artwork> | |||
</figure> | <t> | |||
The inter-as segmentation procedures specified so far ([RFC6513] [RFC6514 | The inter-AS segmentation procedures specified so far (<xref target="RFC6 | |||
], | 513" format="default"/>, <xref target="RFC6514" format="default"/>, | |||
[RFC7117], and <xref target="inter-as"/> of this document) require all | <xref target="RFC7117" format="default"/>, and <xref target="inter-as" fo | |||
ASBRs to be involved, and Ingress Replication is used between two ASBRs | rmat="default"/> of this document) require all | |||
ASBRs to be involved, and ingress replication is used between two ASBRs | ||||
in different ASes. | in different ASes. | |||
</t> | </t> | |||
<t> | <t> | |||
In the above diagram, it's possible that ASBR1/4 does not support | In the above diagram, it's possible that ASBR1/4 does not support | |||
segmentation, and the provider tunnels in AS 100/300 can actually | segmentation, and the provider tunnels in AS 100/300 can actually | |||
extend across the external link. In this case, the inter-region | extend across the external link. In this case, the inter-region | |||
segmentation procedures can be used instead - a region is the | segmentation procedures can be used instead -- a region is the | |||
entire (AS100 + ASBR1-ASBR2 link) or (AS300 + ASBR3-ASBR4 link). | entire AS100 plus the ASBR1-ASBR2 link or the entire AS300 plus the | |||
ASBR3-ASBR4 link. | ||||
ASBR2/3 would be the RBRs, and ASBR1/4 will just be a transit core | ASBR2/3 would be the RBRs, and ASBR1/4 will just be a transit core | |||
router with respect to provider tunnels. | router with respect to provider tunnels. | |||
</t> | </t> | |||
<t>As illustrated in the diagram below, ASBR2/3 will establish a multihop | <t>As illustrated in the diagram below, ASBR2/3 will establish a multiho | |||
EBGP session with either a RR or directly with PEs in the neighboring | p | |||
EBGP session, either with a Route Reflector (RR) or directly with PEs in | ||||
the neighboring | ||||
AS. I/S-PMSI A-D routes from ingress PEs will not be processed by | AS. I/S-PMSI A-D routes from ingress PEs will not be processed by | |||
ASBR1/4. When ASBR2 re-advertises the routes into AS 200, it changes | ASBR1/4. When ASBR2 re-advertises the routes into AS 200, it changes | |||
the next hop to its own address and changes PTA to specify the tunnel | the next hop to its own address and changes its PTA to specify the tunnel | |||
type/identification in its own AS. When ASBR3 re-advertises | type/identification in its own AS. When ASBR3 re-advertises | |||
I/S-PMSI A-D routes into the neighboring AS 300, it changes the | I/S-PMSI A-D routes into the neighboring AS 300, it changes the | |||
next hop to its own address and changes PTA to specify the tunnel | next hop to its own address and changes its PTA to specify the tunnel | |||
type/identification in the neighboring region. Now the segment is | type/identification in the neighboring region. Now, the segment is | |||
rooted at ASBR3 and extends across the external link to PEs. | rooted at ASBR3 and extends across the external link to PEs. | |||
<figure> | </t> | |||
<artwork> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
--------- ------ --------- | --------- ------ --------- | |||
/ RR....\.mh-ebpg / \ mh-ebgp/....RR \ | / RR....\.mh-ebpg / \ mh-ebgp/....RR \ | |||
/ : \ `. / \ .' / : \ | / : \ `. / \ .' / : \ | |||
| PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | |||
\ / \ / \ / | \ / \ / \ / | |||
\ / \ / \ / | \ / \ / \ / | |||
--------- ------ --------- | --------- ------ --------- | |||
AS 100 AS 200 AS 300 | AS 100 AS 200 AS 300 | |||
|-------------------|----------|---------------------| | |-------------------|----------|---------------------| | |||
segment 1 segment 2 segment 3 | segment 1 segment 2 segment 3 | |||
</artwork> | ]]></artwork> | |||
</figure> | </section> | |||
</t> | <section anchor="aggregation" numbered="true" toc="default"> | |||
</section> | <name>Per-Region Aggregation</name> | |||
<section title="Per-region Aggregation" anchor="aggregation"> | <t>Notice that every I/S-PMSI route from each PE will be propagated | |||
<t>Notice that every I/S-PMSI route from each PE will be propagated | ||||
throughout all the ASes or regions. They may also trigger corresponding | throughout all the ASes or regions. They may also trigger corresponding | |||
Leaf A-D routes depending on the types of tunnels used in each region. | Leaf A-D routes, depending on the types of tunnels used in each region. | |||
This may become too many - routes and corresponding tunnels. To address | This may result in too many routes and corresponding tunnels. To address | |||
this concern, the I-PMSI routes from all PEs in a AS/region can be | this concern, the I-PMSI routes from all PEs in an AS/region can be | |||
aggregated into a single I-PMSI route originated from the RBRs, | aggregated into a single I-PMSI route originated from the RBRs, | |||
and traffic from all those individual I-PMSI tunnels | and traffic from all those individual I-PMSI tunnels | |||
will be switched into the single I-PMSI tunnel. This is like the | will be switched into the single I-PMSI tunnel. This is like the | |||
MVPN Inter-AS I-PMSI route originated by ASBRs. | MVPN Inter-AS I-PMSI route originated by ASBRs. | |||
</t> | </t> | |||
<t>The MVPN Inter-AS I-PMSI A-D route can be better called as per-AS I-PMSI | <t>The MVPN Inter-AS I-PMSI A-D route can be better called a "per-AS I-P | |||
A-D route, to be compared against the (per-PE) Intra-AS I-PMSI A-D routes | MSI | |||
originated by each PE. In this document we will call it as per-region | A-D route", to be compared against the (per-PE) Intra-AS I-PMSI A-D route | |||
I-PMSI A-D route, in case we want to apply the aggregation at regional | s | |||
originated by each PE. In this document, we will call it a "per-region | ||||
I-PMSI A-D route" in cases where we want to apply aggregation at the regi | ||||
onal | ||||
level. The per-PE I-PMSI routes will not be propagated to other | level. The per-PE I-PMSI routes will not be propagated to other | |||
regions. If multiple RBRs are connected to a region, then each | regions. If multiple RBRs are connected to a region, then each | |||
will advertise such a route, with the same Region ID and Ethernet Tag ID | will advertise such a route, with the same Region ID and Ethernet Tag ID | |||
(<xref target= | (<xref target="per-region" format="default"/>). Similar to the per-PE I-PMSI A-D | |||
"per-region"/>). Similar to the per-PE I-PMSI A-D | routes, RBRs/PEs in a downstream region will each select the best route | |||
routes, RBRs/PEs in a downstream region will each select a best one | from all those re-advertised by the upstream RBRs and hence will only | |||
from all those re-advertised by the upstream RBRs, hence will only | ||||
receive traffic injected by one of them. | receive traffic injected by one of them. | |||
</t> | </t> | |||
<t>MVPN does not aggregate S-PMSI routes from all PEs in an AS like it | <t>MVPNs do not aggregate S-PMSI routes from all PEs in an AS like they | |||
does for I-PMSIs routes, because the number of PEs that will advertise | do for I-PMSI routes, because the number of PEs that will advertise | |||
S-PMSI routes for the same (s,g) or (*,g) is small. This is also the | S-PMSI routes for the same (S,G) or (*,G) is small. This is also the | |||
case for EVPN, i.e., there is no per-region S-PMSI routes. | case for EVPNs, i.e., there are no per-region S-PMSI routes. | |||
</t> | </t> | |||
<t>Notice that per-region I-PMSI routes can also be used to address | <t>Notice that per-region I-PMSI routes can also be used to address | |||
backwards compatibility issue, as discussed in | backward-compatibility issues, as discussed in | |||
<xref target="compatibility"/>. | <xref target="compatibility" format="default"/>. | |||
</t> | </t> | |||
<t>The Region ID in the per-region I-PMSI route's NLRI is encoded like an | <t>The Region ID in the per-region I-PMSI route's NLRI is encoded like a | |||
n | ||||
EC. For example, the | EC. For example, the | |||
Region ID can encode an AS number or area ID in the following EC format: | Region ID can encode an AS number or area ID in the following EC format: | |||
<list style="symbols"> | </t> | |||
<t>For a two-octet AS number, a Transitive Two-Octet AS-Specific | <ul spacing="normal"> | |||
<li>For a two-octet AS number, a Transitive Two-Octet AS-specific | ||||
EC of sub-type 0x09 (Source AS), with the Global Administrator | EC of sub-type 0x09 (Source AS), with the Global Administrator | |||
sub-field set to the AS number and the Local Administrator | sub-field set to the AS number and the Local Administrator | |||
sub-field set to 0. | sub-field set to 0. | |||
</t> | </li> | |||
<t>For a four-octet AS number, a Transitive Four-Octet AS-Specific | <li>For a four-octet AS number, a Transitive Four-Octet AS-specific | |||
EC of sub-type 0x09 (Source AS), with the Global Administrator | EC of sub-type 0x09 (Source AS), with the Global Administrator | |||
sub-field set to the AS number and the Local Administrator | sub-field set to the AS number and the Local Administrator | |||
sub-field set to 0. | sub-field set to 0. | |||
</t> | </li> | |||
<t>For an area ID, a Transitive IPv4-Address-Specific EC of any | <li>For an area ID, a Transitive IPv4-Address-specific EC of any | |||
sub-type, with the Global Administrator | sub-type, with the Global Administrator | |||
sub-field set to the area ID and the Local Administrator | sub-field set to the area ID and the Local Administrator | |||
sub-field set to 0. | sub-field set to 0. | |||
</t> | </li> | |||
</list> | </ul> | |||
Uses of other EC encoding MAY be allowed as long as it uniquely | <t> | |||
identifies the region and the RBRs for the same region uses the | The use of other EC encodings <bcp14>MAY</bcp14> be allowed as long as th | |||
ey uniquely | ||||
identify the region and the RBRs for the same region use the | ||||
same Region ID. | same Region ID. | |||
</t> | </t> | |||
</section> | </section> | |||
<section title="Use of S-NH-EC"> | <section numbered="true" toc="default"> | |||
<t>[RFC7524] specifies the use of S-NH-EC because it does not allow ABRs | <name>Use of S-NH-EC</name> | |||
<t><xref target="RFC7524" format="default"/> specifies the use of the S- | ||||
NH-EC because it does not allow ABRs | ||||
to change the BGP next hop when they re-advertise I/S-PMSI A-D routes | to change the BGP next hop when they re-advertise I/S-PMSI A-D routes | |||
to downstream areas. That is only to be consistent with the MVPN | to downstream areas. That behavior is only to be consistent with the MVPN | |||
Inter-AS I-PMSI A-D routes, whose next hop must not be changed | Inter-AS I-PMSI A-D routes, whose next hop must not be changed | |||
when they're re-advertised by the segmenting ABRs for reasons specific | when they're re-advertised by the segmenting ABRs for reasons specific | |||
to MVPN. For EVPN, | to MVPNs. For EVPNs, | |||
it is perfectly fine to change the next hop when RBRs re-advertise | it is perfectly fine to change the next hop when RBRs re-advertise | |||
the I/S-PMSI A-D routes, instead of relying on S-NH-EC. As a result, | the I/S-PMSI A-D routes, instead of relying on the S-NH-EC. As a result, | |||
this document specifies that RBRs change the BGP next hop when they | this document specifies that RBRs change the BGP next hop when they | |||
re-advertise I/S-PMSI A-D routes and do not use S-NH-EC. | re-advertise I/S-PMSI A-D routes and do not use the S-NH-EC. This provide | |||
The advantage of this is that neither ingress nor egress PEs need to | s | |||
understand/use S-NH-EC, and a consistent procedure (based on BGP next | the advantage that neither ingress PEs nor egress PEs need to | |||
hop) is used for both inter-as and inter-region segmentation. | understand/use the S-NH-EC, and a consistent procedure (based on BGP next | |||
</t> | hops) is used for both inter-AS and inter-region segmentation. | |||
<t> | </t> | |||
<t> | ||||
If a downstream PE/RBR needs to originate Leaf A-D routes, it constructs | If a downstream PE/RBR needs to originate Leaf A-D routes, it constructs | |||
an IP-based Route Target Extended Community by | an IP-based Route Target Extended Community by | |||
placing the IP address carried in the Next Hop of the received | placing the IP address carried in the Next Hop of the received | |||
I/S-PMSI A-D route in the Global Administrator field of the | I/S-PMSI A-D route in the Global Administrator field of the extended | |||
Community, with the Local Administrator field of this Community | community, with the Local Administrator field of this extended community | |||
set to 0 and setting the Extended Communities attribute of the | set to 0, and also setting the Extended Communities attribute of the | |||
Leaf A-D route to that Community. | Leaf A-D route to that extended community. | |||
</t> | </t> | |||
<t>Similar to [RFC7524], the upstream RBR MUST (auto-)configure | <t>Similar to <xref target="RFC7524" format="default"/>, the upstream RB | |||
a RT with the Global Administrator field set to the Next Hop in | R <bcp14>MUST</bcp14> (auto-)configure | |||
an RT with the Global Administrator field set to the Next Hop in | ||||
the re-advertised I/S-PMSI A-D route and with the Local Administrator | the re-advertised I/S-PMSI A-D route and with the Local Administrator | |||
field set to 0. With this, the mechanisms specified in [RFC4684] | field set to 0. Using this technique, the mechanisms specified in <xref t arget="RFC4684" format="default"/> | |||
for constrained BGP route | for constrained BGP route | |||
distribution can be used along with this specification to ensure that | distribution can be used along with this specification to ensure that | |||
only the needed PE/ABR will have to process a said Leaf A-D route. | only the needed PE/ABR will have to process a particular Leaf A-D route. | |||
</t> | </t> | |||
</section> | </section> | |||
<section title="Ingress PE's I-PMSI Leaf Tracking"> | <section numbered="true" toc="default"> | |||
<t>[RFC7524] specifies that when an ingress PE/ASBR (re-)advertises an | <name>Ingress PE's I-PMSI Leaf Tracking</name> | |||
<t><xref target="RFC7524" format="default"/> specifies that when an ingr | ||||
ess PE/ASBR (re-)advertises a | ||||
VPLS I-PMSI A-D route, it sets the L flag to 1 in the route's PTA. | VPLS I-PMSI A-D route, it sets the L flag to 1 in the route's PTA. | |||
Similar to the inter-as case, this is actually not really needed | Similar to the inter-AS case, this is actually not really needed | |||
for EVPN. To be consistent with the inter-as case, the ingress PE | for EVPNs. To be consistent with the inter-AS case, the ingress PE | |||
does not set the L flag in its originated I-PMSI A-D routes, | does not set the L flag in its originated I-PMSI A-D routes, | |||
and determines the leaves based on the BGP next hops in its received | and it determines the leaves based on the BGP next hops in its received | |||
I-PMSI A-D routes, as specified in <xref target="leaf-tracking"/>. | I-PMSI A-D routes, as specified in <xref target="leaf-tracking" format="d | |||
</t> | efault"/>. | |||
<t>The same backward compatibility issue exists, and the same solution | </t> | |||
as in the inter-as case applies, as specified in <xref target= | <t>The same backward-compatibility issue exists, and the same solution | |||
"compatibility"/>. | as that for the inter-AS case applies, as specified in <xref target="comp | |||
</t> | atibility" format="default"/>. | |||
</section> | </t> | |||
</section> | ||||
</section> | </section> | |||
<section title="Multi-homing Support"> | <section numbered="true" toc="default"> | |||
<!-- | <name>Multihoming Support</name> | |||
<t>EVPN support active-active multi-homing. For BUM traffic, only an | <t>To support multihoming with segmentation, Ethernet Segment Identifier | |||
elected DF PE is allowed to send to a multi-homed Ethernet Segment (ES), | (ESI) labels <bcp14>SHOULD</bcp14> be | |||
while a TS may use any of its active-active links to the ES. If the | allocated from a "Domain-wide Common Block" (DCB) | |||
link a TS uses is not attached to the DF PE, the receiving non-DF PE | <xref target="RFC9573" format="default"/> for all | |||
will deliver the traffic to all PEs in the same EVI, including the DF PE | tunnel types, including Ingress Replication tunnels <xref target="RFC7988 | |||
for the sourcing ES. To prevent the DF PE from delivering the received | "/>. | |||
traffic back to the ES, in case of MPLS encapsulation, a BUM packet | ||||
from a non-DF PE carries an ESI | ||||
label, so that when the DF receives the packet it will know from the ESI | ||||
label that the packet is from a non-DF for an ES and will not send the | ||||
packet back to the ES. | ||||
</t> | ||||
<t>To support multi-homing with segmentation, ESI labels SHOULD be | ||||
allocated from "Domain-wide Common Block" (DCB) | ||||
<xref target="I-D.ietf-bess-mvpn-evpn-aggregation-label"/> for all | ||||
tunnel types including Ingress Replication. | ||||
Via means outside the scope of this document, PEs know that ESI labels | Via means outside the scope of this document, PEs know that ESI labels | |||
are from DCB and then existing multi-homing procedures work as is | are from a DCB, and existing multihoming procedures will then work "as is | |||
(whether a multi-homed Ethernet Segment spans across segmentation | " | |||
(whether a multihomed Ethernet Segment spans segmentation | ||||
regions or not). | regions or not). | |||
</t> | ||||
<t>Not using DCB-allocated ESI labels is outside the scope of this | ||||
document.<!-- It would require complicated forwarding | ||||
procedures on segmentation points, and, in case of multi-homing across | ||||
segmentation regions, complicated control plane procedures as well.--> | ||||
</t> | ||||
</section> | ||||
<section anchor="IANA" title="IANA Considerations"> | ||||
<t>IANA has temporarily assigned the following new EVPN route types in | ||||
the EVPN Route Types registry: | ||||
<list style="symbols"> | ||||
<t>9 - Per-Region I-PMSI A-D route</t> | ||||
<t>10 - S-PMSI A-D route</t> | ||||
<t>11 - Leaf A-D route</t> | ||||
</list> | ||||
</t> | </t> | |||
<t>This document requests IANA to assign one flag bit from the | <t>Not using DCB-allocated ESI labels is outside the scope of this | |||
EVPN Multicast Flags Extended Community Flags registry to be created in | document. | |||
[draft-ietf-bess-evpn-igmp-mld-proxy]: | ||||
<list style="symbols"> | ||||
<t>Bit-S - Segmentation Procedure Support | ||||
</t> | ||||
</list> | ||||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="Security" title="Security Considerations"> | <section anchor="IANA" numbered="true" toc="default"> | |||
<t> | <name>IANA Considerations</name> | |||
The Selective Forwarding procedures via S-PMSI/Leaf A-D routes | <t>IANA has assigned the following new EVPN route types in | |||
in this document are based on the same procedures for MVPN [RFC6513] [R | the "EVPN Route Types" registry: | |||
FC6514] | ||||
and VPLS Multicast [RFC7117]. The tunnel segmentation procedures | ||||
in this document are based on the similar procedures for MVPN inter-AS | ||||
[RFC6514] and inter-area [RFC7524] tunnel segmentation, and procedures | ||||
for VPLS Multicast [RFC7117] inter-as tunnel segmentation. | ||||
When applied to EVPN, they do not introduce new security concerns | ||||
besides what have been discussed in [RFC6513], [RFC6514], [RFC7117], | ||||
and [RFC7524]. They also do not introduce new security concerns | ||||
compared to [RFC7432]. | ||||
</t> | </t> | |||
<table anchor="tab-1"> | ||||
<name>New Route Types</name> | ||||
<thead> | ||||
<tr> | ||||
<th>Value</th> | ||||
<th>Description</th> | ||||
<th>Reference</th> | ||||
</tr> | ||||
</thead> | ||||
<tbody> | ||||
<tr> | ||||
<td>9</td> | ||||
<td>Per-Region I-PMSI A-D route</td> | ||||
<td>RFC 9572</td> | ||||
</tr> | ||||
<tr> | ||||
<td>10</td> | ||||
<td>S-PMSI A-D route</td> | ||||
<td>RFC 9572</td> | ||||
</tr> | ||||
<tr> | ||||
<td>11</td> | ||||
<td>Leaf A-D route</td> | ||||
<td>RFC 9572</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t>IANA has assigned one flag bit from the | ||||
"Multicast Flags Extended Community" registry created by | ||||
<xref target="RFC9251"/>: | ||||
</t> | ||||
<table anchor="tab-2"> | ||||
<name>New Multicast Flag</name> | ||||
<thead> | ||||
<tr> | ||||
<th>Bit</th> | ||||
<th>Name</th> | ||||
<th>Reference</th> | ||||
<th>Change Controller</th> | ||||
</tr> | ||||
</thead> | ||||
<tbody> | ||||
<tr> | ||||
<td>8</td> | ||||
<td>Segmentation Support</td> | ||||
<td>RFC 9572</td> | ||||
<td>IETF</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | </section> | |||
<section anchor="Acknowledgements" title="Acknowledgements"> | <section anchor="Security" numbered="true" toc="default"> | |||
<t>The authors thank Eric Rosen, John Drake, and Ron Bonica for their | <name>Security Considerations</name> | |||
comments and suggestions. | <t> | |||
The procedures specified in this document for selective forwarding via | ||||
S-PMSI/Leaf A-D routes | ||||
are based on the same procedures as those used for MVPNs <xref target=" | ||||
RFC6513" format="default"/> <xref target="RFC6514" format="default"/> | ||||
and VPLS multicast <xref target="RFC7117" format="default"/>. The proce | ||||
dures for tunnel segmentation as specified | ||||
in this document are based on similar procedures used for MVPN inter-AS | ||||
tunnel segmentation <xref target="RFC6514" format="default"/> and inter-area tu | ||||
nnel segmentation <xref target="RFC7524" format="default"/>, as well as procedur | ||||
es | ||||
for VPLS multicast inter-AS tunnel segmentation <xref target="RFC7117" | ||||
format="default"/>. | ||||
When applied to EVPNs, they do not introduce new security concerns | ||||
beyond those discussed in <xref target="RFC6513" format="default"/>, <xref t | ||||
arget="RFC6514" format="default"/>, <xref target="RFC7117" format="default"/>, | ||||
and <xref target="RFC7524" format="default"/>. They also do not introduce ne | ||||
w security concerns | ||||
compared to <xref target="RFC7432" format="default"/>. | ||||
</t> | </t> | |||
</section> | </section> | |||
<section title="Contributors"> | </middle> | |||
<t>The following also contributed to this document through their earlier | <back> | |||
work in EVPN selective multicast. | <references> | |||
<figure> | <name>References</name> | |||
<artwork> | <references> | |||
Junlin Zhang | <name>Normative References</name> | |||
Huawei Technologies | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
Huawei Bld., No.156 Beiqing Rd. | 119.xml"/> | |||
Beijing 100095 | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
China | 174.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | ||||
432.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | ||||
117.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | ||||
524.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
584.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
534.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
513.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
514.xml"/> | ||||
Email: jackey.zhang@huawei.com | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9251.xml" /> | |||
Zhenbin Li | <!-- draft-ietf-bess-mvpn-evpn-aggregation-label (RFC 9573) --> | |||
Huawei Technologies | <reference anchor='RFC9573' target="https://www.rfc-editor.org/info/rfc9573"> | |||
Huawei Bld., No.156 Beiqing Rd. | <front> | |||
Beijing 100095 | <title>MVPN/EVPN Tunnel Aggregation with Common Labels</title> | |||
China | <author initials='Z' surname='Zhang' fullname='Zhaohui Zhang'> | |||
<organization /> | ||||
</author> | ||||
<author initials='E' surname='Rosen' fullname='Eric Rosen'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='W' surname='Lin' fullname='Wen Lin'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='Z' surname='Li' fullname='Zhenbin Li'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='IJ' surname='Wijnands' fullname='IJsbrand Wijnands'> | ||||
<organization /> | ||||
</author> | ||||
<date year='2024' month='May' /> | ||||
</front> | ||||
<seriesInfo name="RFC" value="9573"/> | ||||
<seriesInfo name="DOI" value="10.17487/RFC9573"/> | ||||
</reference> | ||||
Email: lizhenbin@huawei.com | </references> | |||
</artwork> | <references> | |||
</figure> | <name>Informative References</name> | |||
</t> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
</section> | 279.xml"/> | |||
</middle> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | |||
875.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | ||||
684.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
388.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | ||||
988.xml"/> | ||||
<back> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
<references title="Normative References"> | 136.xml"/> | |||
&RFC2119; | </references> | |||
&RFC8174; | ||||
&RFC7432; | ||||
&RFC7117; | ||||
&RFC7524; | ||||
&RFC8584; | ||||
&RFC8534; | ||||
&RFC6513; | ||||
&RFC6514; | ||||
<?rfc include='reference.I-D.ietf-bess-evpn-igmp-mld-proxy'?> | ||||
<?rfc include='reference.I-D.ietf-bess-mvpn-evpn-aggregation-label'?> | ||||
</references> | </references> | |||
<references title="Informative References"> | <section anchor="Acknowledgements" numbered="false" toc="default"> | |||
&RFC8279; | <name>Acknowledgements</name> | |||
&RFC4875; | <t>The authors thank <contact fullname="Eric Rosen"/>, <contact fullname=" | |||
&RFC4684; | John Drake"/>, and <contact fullname="Ron Bonica"/> for their | |||
&RFC6388; | comments and suggestions. | |||
&RFC7988; | </t> | |||
<?rfc include='reference.I-D.ietf-bess-evpn-prefix-advertisement'?> | </section> | |||
</references> | <section numbered="false" toc="default"> | |||
<name>Contributors</name> | ||||
<t>The following people also contributed to this document through their ea | ||||
rlier | ||||
work in EVPN selective multicast. | ||||
</t> | ||||
<contact fullname="Junlin Zhang"> | ||||
<organization>Huawei Technologies</organization> | ||||
<address> | ||||
<postal> | ||||
<street>Huawei Bld., No. 156 Beiqing Rd.</street> | ||||
<city>Beijing</city> | ||||
<code>100095</code> | ||||
<country>China</country> | ||||
</postal> | ||||
<email>jackey.zhang@huawei.com</email> | ||||
</address> | ||||
</contact> | ||||
<contact fullname="Zhenbin Li"> | ||||
<organization>Huawei Technologies</organization> | ||||
<address> | ||||
<postal> | ||||
<street>Huawei Bld., No. 156 Beiqing Rd.</street> | ||||
<city>Beijing</city> | ||||
<code>100095</code> | ||||
<country>China</country> | ||||
</postal> | ||||
<email>lizhenbin@huawei.com</email> | ||||
</address> | ||||
</contact> | ||||
</section> | ||||
</back> | </back> | |||
</rfc> | </rfc> | |||
End of changes. 134 change blocks. | ||||
676 lines changed or deleted | 893 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |