Internet DRAFT - draft-wang-bess-tpe-aided-spe-protection
draft-wang-bess-tpe-aided-spe-protection
BESS WG Y. Wang
Internet-Draft ZTE Corporation
Intended status: Standards Track 25 January 2021
Expires: 29 July 2021
TPE-aided SPE-Protection
draft-wang-bess-tpe-aided-spe-protection-00
Abstract
MPLS EVPN SPEs cannot make use of anycast MPLS tunnel (whose egress
LSRs are two of these SPEs) because that the two SPEs will re-assign
different EVPN labels for the same EVPN prefix. It will be
complicated to static-configure EVPN label for each EVPN prefix. At
the same time, the TPEs should advertise specified signalling to do
egress node (TPE) protection. This document specifies a egress node
protection signalling from/among TPE nodes, and TPE (whether it is
egress-protected or not) can help the SPEs to do egress protection on
the basis of that signalling.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 29 July 2021.
Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
Wang Expires 29 July 2021 [Page 1]
Internet-Draft TPE-aided SPE-Protection January 2021
extracted from this document must include Simplified BSD License text
as described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Terminology and Acronyms . . . . . . . . . . . . . . . . 2
2. Detailed Problem and Solution Requirement . . . . . . . . . . 4
2.1. Scenarios and Basic Settings . . . . . . . . . . . . . . 4
2.1.1. Exception Case for Next Hop Validating . . . . . . . 5
3. Control Plane Processing . . . . . . . . . . . . . . . . . . 5
3.1. Downstream-CLS ID Extended Community . . . . . . . . . . 5
3.2. TPE Procedures . . . . . . . . . . . . . . . . . . . . . 6
3.3. SPE Procedures . . . . . . . . . . . . . . . . . . . . . 7
3.3.1. Context-specific Label Swapping . . . . . . . . . . . 8
3.3.2. The Generating of Downstream-CLS ID EC on SPE . . . . 8
4. Protection Procedures . . . . . . . . . . . . . . . . . . . . 8
4.1. TPE Protection Procedures . . . . . . . . . . . . . . . . 8
4.2. SPE Protection Procedures . . . . . . . . . . . . . . . . 9
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.1. Normative References . . . . . . . . . . . . . . . . . . 10
8.2. Informative References . . . . . . . . . . . . . . . . . 11
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction
In section 2.5 and section 4.4 of
[I-D.wang-bess-evpn-egress-protection], a MPLS egress protection
signalling is defined. The section 5.4 of
[I-D.wang-bess-evpn-context-label] uses the same signalling to do
egress protection for SPEs. This draft put the two scenarios
together, and describe all the unified signallings for the MPLS SPEs
and TPEs.
Note that the "egress" in "egress protection" means the egress LSR of
the underlay LSP, not the egress LSR of the overlay LSP. The SPEs
are not the egress LSR of the overlay LSP, but they are the egress
LSR of the underlay LSP. So the anycast tunnel for SPEs is also
egress protection tunnel for SPEs.
1.1. Terminology and Acronyms
This document uses the following acronyms and terms:
Wang Expires 29 July 2021 [Page 2]
Internet-Draft TPE-aided SPE-Protection January 2021
* All-Active Redundancy Mode - When a device is multihomed to a
group of two or more PEs and when all PEs in such redundancy group
can forward traffic to/from the multihomed device or network for a
given VLAN.
* Backup egress router - Given an egress-protected tunnel and its
egress router, this is another router that has connectivity with
all or a subset of the destinations of the egress-protected
services carried by the egress-protected tunnel.
* SPE - Stitching PE, the PEs to do label swapping operation for the
EVPN labels. It is similar to the SPE of MS-PWs.
* TPE - Target PE, the PEs to do EVPN forwarding for the overlay
network.
* BUM - Broadcast, Unknown unicast, and Multicast.
* CE - Customer Edge equipment.
* EELP bypass tunnel - Egress ESI Link Protection bypass tunnel - A
tunnel used to reroute service packets upon an egress ESI link
failure.
* Egress failure - An egress node failure or an egress link failure.
* Egress link failure - A failure of the egress link (e.g., PE-CE
link, attachment circuit) of a service.
* Egress loopback - the loopback interface on the Egress router,
whose IP address is the destination of the Egress-protected
tunnel.
* Egress node failure - A failure of an egress router.
* Egress router - A router at the egress endpoint of a tunnel. It
hosts service instances for all the services carried by the tunnel
and has connectivity with the destinations of the services.
* ESI - Ethernet Segment Identifier - A unique non-reserved
identifier that identifies an Ethernet segment.
* OPE - Originating PE - the original Router of an EVPN route.
* PE - Provider Edge equipment. Note that VTEP/NVE are also called
as PE in this draft.
Wang Expires 29 July 2021 [Page 3]
Internet-Draft TPE-aided SPE-Protection January 2021
* PLR - A router at the point of local repair. In egress node
protection, it is the penultimate hop router on an egress-
protected tunnel. In egress link protection, it is the egress
router of the egress- protected tunnel.
* Protector - A role acted by a router as an alternate of a
protected egress router, to handle service packets in the event of
an egress failure. A protector is physically independent of the
egress router.
* Protector loopback - the loopback interface on the Protector,
whose IP address is the destination of the Egress-protected
tunnel.
* Single-Active Redundancy Mode - When a device or a network is
multihomed to a group of two or more PEs and when only a single PE
in such a redundancy group can forward traffic to/from the
multihomed device or network for a given VLAN.
* DF - Designated Forwarder.
* NDF - non-DF, non Designated-Forwarder.
* NDF-Bias - An exception for filtering bypassed BUM packets. It
says that when an outgoing AC is a NDF on its ES, the bypass-BUM
filter rules will not be applied for that AC.
2. Detailed Problem and Solution Requirement
2.1. Scenarios and Basic Settings
(PE3) (PE1)
____SPE1____ ____TPE2____
/ \ / \
CE1---TPE1---PLR2 PLR1 CE2
\____SPE2____/ \____TPE3____/
(PE2)
Figure 1: TPE-aided SPE-Protection Scenario
The above figure is a combination of
[I-D.wang-bess-evpn-egress-protection]'s Figure 1 and
[I-D.wang-bess-evpn-context-label]'s Figure 6. The TPE1/SPE1/SPE2/
TPE2 above is the TPE1/SPE1/SPE2/TPE2 of
[I-D.wang-bess-evpn-context-label]'s Figure 6, But TPE2 is also the
PE1 of [I-D.wang-bess-evpn-egress-protection]'s Figure 1, and TPE3 is
the PE2, SPE1 is the PE3.
Wang Expires 29 July 2021 [Page 4]
Internet-Draft TPE-aided SPE-Protection January 2021
When TPE2 advertises an EVPN route (say R9), the same R9 will be
advertised to both the two SPEs and TPE3. When TPE3 receives R9,
they will do EVPN egress protection. When SPE1 or SPE2 receives the
same R9, SPE1/SPE2 will advertise R9 to TPE1 with the same nexthop
(the anycast tunnel address of SPE1 and SPE2) following Section 3.3.
Then the requirement here is clear that we want TPE2 use the same
route attributes to advertise R9 to both the SPEs and the TPEs.
In addition, Note that when the BUM tunnel (T1) from PE1 (TPE2) to
PE2 (TPE3) travels through the PLR1, and the PLR1 reroutes these
packets (destined to PE2) back to PE1 when PE2 fails, at that moment,
PE1 should drop these packets because their EVI label are mirrored
EVI labels (in context-specific label space) but their ESI labels are
not absent.
Note that the Leaf labels (along with mirrored EVI labels) should be
distinguished from the ESI labels (along with mirrored EVI labels),
because that the former should not be dropped but the latter can be
dropped. They can be distinguished by installing mirrored Leaf
labels, but the mirrored ESI labels need not be installed.
2.1.1. Exception Case for Next Hop Validating
When TPE3 receives an EVPN route R0 whose nexthop matches the prefix
LOC1, TPE3 may discard the route R0 because its nexthop is considered
to be TPE3's own address. Even though TPE3 don't disccard R0, TPE3
cannot use its nexthop to send an EVPN data packet to TPE2.
Because that a destination IP within prefix LOC1 (in forms of LOC1_P)
will be considered to be sent to TPE3 itself. So we should use IP_N1
and IP_N2 to establish the bypass path between TPE2 and TPE3 instead
of LOC1 and LOC2.
3. Control Plane Processing
3.1. Downstream-CLS ID Extended Community
The downstream-CLS ID Extended Community is a new Transitive Opaque
EC with the following structure (Sub-Type value to be assigned by
IANA):
Wang Expires 29 July 2021 [Page 5]
Internet-Draft TPE-aided SPE-Protection January 2021
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x03 or 0x43 | Sub-Type |M| ID-Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ID-Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: Downstream-CLS ID Extended Community
* ID-Type: A 2-octet field that specifies the type of Label Space
ID. In this section, the ID-Type is 0. The ID-Type 0 indicating
that the ID-Value field is a MPLS label in DCB, and it has global
uniqueness across the EVPN domain.
* ID-Value: A 4-octet field that specifies the value of Label Space
ID. When it is a label (with ID-Type 0), the most significant
20-bit is set to the label value.
* M bit: Multi-homing Flag. If the EVPN route is advertised by a
TPE of a redundancy group, and the nexthop of that route is the
TPE's anycast address, the multi-homing flag should be set to 1.
If the EVPN route is advertised by a SPE of no redundancy group,
and the nexthop of that route is not an anycast address, the
multi-homing flag should be kept unchanged.
If the EVPN route is advertised by a SPE of a redundancy group,
and the nexthop of that route is the redundancy group's anycast
address, the multi-homing flag should be rewritten to 1.
Note that although the downstream-CLS ID EC is highly similar to the
Context Label Space ID Extended Community (see section 3.1 of
[I-D.ietf-bess-mvpn-evpn-aggregation-label]) in their encodings, they
have absolutely different behaviors in data-plane. The CLS-ID EC
should be treated as an incomming label in data-plane, but the
downstream-CLS ID EC should be treated as an outgoing label in data-
plane. So they couldn't share the same code-point in the signalling
procedures.
3.2. TPE Procedures
First of all, We reserve a portion of the label space for assignment
by a central authority. We refer to this reserved portion as the
"Domain-wide Common Block" (DCB) of labels. This is analogous to the
DCB that is described in Section 3.1. The DCB is taken from the same
label space that is used for downstream-assigned labels, but each PE
would know not to allocate local labels from that space. A PE would
Wang Expires 29 July 2021 [Page 6]
Internet-Draft TPE-aided SPE-Protection January 2021
know by provisioning which label from the DCB corresponds to itself,
and each of other labels from the DCB corresponds to each PE of the
domain.
Note that the PEs don't have to know exactly which label corresponds
to a specified PE, They just need know which label is for itself, and
other labels is not for itself.
The MPLS-specific procedures are defined in the following list:
[M1] In "[C3]", when TPE2(PE1) advertise R4/R5/R6, a Downstream-CLS
ID EC will be advertised along with R4/R5/R6. And this EC
carries the label (in DCB) that identifying TPE2(PE1) itself.
[M2] In "[C4]", when TPE3(PE2) receives R4/R5/R6, It install the
mirrored ILM entry in a context-specific labels space (say
CLS23). The CLS23 is identified by the Downstream-CLS ID EC
(say CIL2) of R4/R5/R6. The mirrored ILM entry is called as a
CLS-specific ILM entry (CLS-ILM).
[M3] In "[C5]", when SPE1(PE3) receives R4/R5/R6, It should impose
the context-identifying label (CIL) carried in R4/R5/R6's
Downstream-CLS ID EC onto the label stack following
Section 4.2. That CIL is the outer label of the EVPN label of
R4/R5/R6. In addition, SPE1(PE3) will aplly the procedures of
Section 3.3 too. Although these procedures is not of EVPN
egress TPE protection schema, they share the same signalling
with EVPN protection. This simplifies the signalling
procedures, because there no longer will be a requirement to
advertise different route attributes to different PEs.
3.3. SPE Procedures
Now take above use case for example, the two SPEs are the egress
nodes of an anycast SR-MPLS tunnel. The anycast SR-MPLS tunnel is
used to transport flows from TPE1 to either SPE1 or SPE2 according to
load balancing procedures. So SPE1 and SPE2 have to advertise the
same EVPN label independently for a given EVPN route.
When TPE2 send a MAC/IP advertisement route (say R8) to SPE1 and
SPE2, a "Downstream Context-specific Label Space (CLS) ID Extended
Community" can be included in R8 along with an EVPN label (say EVL4).
Wang Expires 29 July 2021 [Page 7]
Internet-Draft TPE-aided SPE-Protection January 2021
3.3.1. Context-specific Label Swapping
When SPE1 and SPE2 receive R8 from TPE2, they should advertise R8 to
TPE1 independently, and the next-hop of R8 should be changed to the
common anycast node address (say IP_12) of SPE1 and SPE2 before the
advertisement. But SPE1 and SPE2 can simply keep R8's EVPN label
(the EVL4 from TPE2) unchanged.
The contex-VC label (say VCL4) in the "downstream-CLS ID EC" is also
kept unchanged.
Note that although the EVL4 and VCL4 is unchanged, a CLS-specific ILM
whose label operation is "label swapping" should also be installed,
because that the outgoing PSN tunnel information should be resolved.
Note that the two outgoing-labels of the label-swapping have the same
value (EVL4 and VCL4) as the two incomming-labels.
Note that if there is no TPE3, thus TPE2 is in no redundancy group.
The SPEs will receive R8 with M bit = 0, In such case, the SPEs will
not push the VCL4 onto the label stack for TPE2.
3.3.2. The Generating of Downstream-CLS ID EC on SPE
When TPE2 don't advertise the Downstream-CLS ID EC to SPE1 and SPE2,
They have to generate that EC by themselves.
In such case, TPE2 should advertise the OPE TLV for R8. And a
context-VC infrastructure should be established previously. The
context-VC infrastructure should assure that the context-VCs from
TPE2 to any other TPEs/SPEs have the same VCL value.
Then the SPE1 can set the ID-Value of the Downstream-CLS ID EC to the
VCL of the contex VC from TPE2 to itself. The ID-Type of the
Downstream-CLS ID EC is set to 0. So the same Downstream-CLS ID EC
can be generated by the SPEs independently.
It is feasible for such context-VC infrastructure to be implemented
on the basis of Kompella VPLS signalling or BGP SR signaling. But it
will be better for the admin-EVI (as the context-VC infrastructure)
and EVPN VPLS to use the same signalling framework.
4. Protection Procedures
4.1. TPE Protection Procedures
Please see section 5 of [I-D.wang-bess-evpn-egress-protection].
Wang Expires 29 July 2021 [Page 8]
Internet-Draft TPE-aided SPE-Protection January 2021
4.2. SPE Protection Procedures
The label stack on the anycast SR-MPLS tunnel is constructed by TPE1
as the following:
+---------------------------------+
| underlay ethernet header |
+---------------------------------+
| Anycast SR-TL = SR_LSP_to_SPEs |
+---------------------------------+
| Context-VC Label = VCL4 |
+---------------------------------+
| EVPN label = EVL4 |
+---------------------------------+
| overlay ethernet or IP header |
+---------------------------------+
Figure 3: Anycast SPE dataplane
Note that the SR Tunnel Label (TL) in the label stack is the anycast
SR-LSP label from TPE1 to the SPE1 or SPE2. And the VCL4 in the
label stack is mandatory (from the viewpoint of TPE1).
Note that the context-VC is constructed (on SPE1 and SPE2) in per-
platform label space, and VC labels from TPE2 to SPE1 and SPE2 will
be the same value (VCL4). so the label stacks (from the viewpoint of
TPE1) are the same for SPE1 and SPE2. That's why the anycast tunnel
from TPE1 to SPE1 and SPE2 can be used for R8 by TPE1.
When SPE1/SPE2 receives that data packet, then SPE1/SPE2 will perform
CLS-specific ILM lookup for the EVPN label in the "TPE2-specific
label space" which is identified by the context-VC label VCL4. The
label operation will be "swapping", and the new outgoing EVPN label
will be the same value (as EVL4).
5. IANA Considerations
This document introduces a new Transitive Opaque Extended Community
"Downstream CLS ID Extended Community". An IANA request will be
submitted later for the code-point in the BGP Transitive Opaque
Extended Community Sub-Types registry.
6. Security Considerations
This section will be added in future versions.
Wang Expires 29 July 2021 [Page 9]
Internet-Draft TPE-aided SPE-Protection January 2021
7. Acknowledgements
TBD.
8. References
8.1. Normative References
[I-D.heitz-bess-evpn-option-b]
Heitz, J., Sajassi, A., Drake, J., and J. Rabadan, "Multi-
homing and E-Tree in EVPN with Inter-AS Option B", Work in
Progress, Internet-Draft, draft-heitz-bess-evpn-option-
b-01, 13 November 2017, <https://tools.ietf.org/html/
draft-heitz-bess-evpn-option-b-01>.
[I-D.wang-bess-evpn-context-label]
Wang, Y. and B. Song, "Context Label for MPLS EVPN", Work
in Progress, Internet-Draft, draft-wang-bess-evpn-context-
label-04, 20 August 2020, <https://tools.ietf.org/html/
draft-wang-bess-evpn-context-label-04>.
[I-D.wang-bess-evpn-egress-protection]
Wang, Y. and R. Chen, "EVPN Egress Protection", Work in
Progress, Internet-Draft, draft-wang-bess-evpn-egress-
protection-04, 29 October 2020,
<https://tools.ietf.org/html/draft-wang-bess-evpn-egress-
protection-04>.
[I-D.ietf-bess-mvpn-evpn-aggregation-label]
Zhang, Z., Rosen, E., Lin, W., Li, Z., and I. Wijnands,
"MVPN/EVPN Tunnel Aggregation with Common Labels", Work in
Progress, Internet-Draft, draft-ietf-bess-mvpn-evpn-
aggregation-label-05, 11 January 2021,
<https://tools.ietf.org/html/draft-ietf-bess-mvpn-evpn-
aggregation-label-05>.
[RFC8679] Shen, Y., Jeganathan, M., Decraene, B., Gredler, H.,
Michel, C., and H. Chen, "MPLS Egress Protection
Framework", RFC 8679, DOI 10.17487/RFC8679, December 2019,
<https://www.rfc-editor.org/info/rfc8679>.
[RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A.,
Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based
Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February
2015, <https://www.rfc-editor.org/info/rfc7432>.
[C3] "[C3]", 29 October 2020, <https://tools.ietf.org/id/draft-
wang-bess-evpn-egress-protection-04.html#list-1.3>.
Wang Expires 29 July 2021 [Page 10]
Internet-Draft TPE-aided SPE-Protection January 2021
[C4] "[C4]", 29 October 2020, <https://tools.ietf.org/id/draft-
wang-bess-evpn-egress-protection-04.html#list-1.4>.
[C5] "[C5]", 29 October 2020, <https://tools.ietf.org/id/draft-
wang-bess-evpn-egress-protection-04.html#list-1.5>.
8.2. Informative References
[I-D.ietf-bess-evpn-prefix-advertisement]
Rabadan, J., Henderickx, W., Drake, J., Lin, W., and A.
Sajassi, "IP Prefix Advertisement in EVPN", Work in
Progress, Internet-Draft, draft-ietf-bess-evpn-prefix-
advertisement-11, 18 May 2018,
<https://tools.ietf.org/html/draft-ietf-bess-evpn-prefix-
advertisement-11>.
[I-D.ietf-bess-evpn-inter-subnet-forwarding]
Sajassi, A., Salam, S., Thoria, S., Drake, J., and J.
Rabadan, "Integrated Routing and Bridging in EVPN", Work
in Progress, Internet-Draft, draft-ietf-bess-evpn-inter-
subnet-forwarding-08, 5 March 2019,
<https://tools.ietf.org/html/draft-ietf-bess-evpn-inter-
subnet-forwarding-08>.
Author's Address
Yubao Wang
ZTE Corporation
No.68 of Zijinghua Road, Yuhuatai Distinct
Nanjing
China
Email: wang.yubao2@zte.com.cn
Wang Expires 29 July 2021 [Page 11]