Hi Alvaro,
Thanks for your review. Please have a look at attached draft w/ most of the
comments addressed.
Please see comments inline Sami:
Thanks,
Sami
From: "Alvaro Retana (aretana)" <[email protected]<mailto:[email protected]>>
Date: Wednesday, January 25, 2017 at 8:39 PM
To:
"[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Cc: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>, Jeffrey Zhang
<[email protected]<mailto:[email protected]>>,
"[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>>
Subject: AD Review of draft-ietf-bess-evpn-vpws-07
Resent-From: <[email protected]<mailto:[email protected]>>
Resent-To: <[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>, Sami Boutros
<[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>,
<[email protected]<mailto:[email protected]>>
Resent-Date: Wednesday, January 25, 2017 at 8:39 PM
Dear authors:
Hi!
I just finished reading this document. Please take a look at my comments below
– I think they should be easy to resolve. I will start the IETF Last Call when
the comments have been addressed and a new revision has been published.
Thanks!
Alvaro.
Major:
M1. There are 8 authors listed on the front page. Following the guidelines in
the RFC Style Guide [RFC7322], we want the list to be at most 5. Please work
among yourselves to reduce the number of authors. Alternatively, you can just
list an Editor or two.
M2. From the Introduction: “Unlike EVPN where Ethernet Tag ID in EVPN routes
are set to zero…in EVPN-VPWS, Ethernet tag ID in the Ethernet A-D route MUST be
set to a valid value in all the service interface types.” Zero is a valid
value for the Ethernet Tag ID.
Sami: I will change the text from “a valid value” —> “non zero value”.
Section 3. (BGP Extensions) says that “the Ethernet Tag ID 32-bit field is set
to the 24-bit VPWS service instance identifier”, but I couldn’t find a place
where the document told me what a valid value is. IOW, how can the “MUST” be
enforced if there’s no clear indication of what is valid? OTOH, any
specification wants the fields to contain valid values, obviously! What
happens if the value is not valid? BTW, all this is to say that without a
proper explanation (which probably doesn’t belong in the Introduction), the
whole paragraph is superfluous.
Sami: A valid value will be non-zero 24-bit, I will change the text to
"non-zero 24-bit VPWS service instance identifier"
M3. The Introduction says that “For EVPL service, the Ethernet frames
transported over an MPLS/IP network SHOULD remain tagged with the originating
VID and any VID translation is performed at the disposition PE.”, later the
same (or at least something similar) is mentioned in Section 2.1. (VLAN-Based
Service Interface): “the Ethernet frames transported over an MPLS/IP network
SHOULD remain tagged with the originating VID, and a VID translation MUST be
supported in the data path and MUST be performed on the disposition PE.”
Please keep the normative language in one place – I am not fond of normative
language in the Introduction; note that even though the result should be the
same, the text is different (the “MUSTs” are used in 2.1).
Sami: Will change the introduction to say MUST be
M3.1. [minor] It is not clear in the text that EVPL service corresponds to
VLAN-based service. Please clarify that. In fact, some of the flow of the
document feel disjoint because slightly different terminology is used and no
hint of how it all ties together is presented; mapping EPL/EVPL to the Service
Interfaces, which are only mentioned in Section 2 (and very briefly in the
Introduction – see M2).
Sami: In the introduction we have this text "[MEF] defines Ethernet Virtual
Private Line (EVPL) service as p2p service between a pair of ACs (designated by
VLANs) and Ethernet Private Line (EPL) service …” So, isn’t that sufficient?
M4. Section 1.2 is titled Requirements. However, the list seems to include a
combination of statements of fact (“EPL service access circuit maps to the
whole Ethernet port”: this is pretty much the definition of EPL),
solution-sounding lines (“Each VLAN individually (or <S-VLAN,C-VLAN>
combination) will be considered to be an endpoint for an EVPL service”: not
only does it sound like what the solution will do, but it is also the
definition of EVPL), and statements that talk to the configuration and not what
the technical solution described later can do (“A given PE could have thousands
of EVPLs configured. It must be possible to configure multiple EVPL services
within the same EVI.”: is there an actual scalability requirement?). I
would have expected actual requirements (for example: “EPL service access
circuits MUST map to the whole Ethernet port”; normative language is not
required) that I can then check against the solution – but it all sounds like a
rehash of what was explained before. ☹
Sami: Please have a look at the attached draft to see if you are OK with the
section now, we can consider removing the section too.
M5. Section 3. (BGP Extensions) says that “This document proposes the use of
the per EVI Ethernet A-D route to signal VPWS services. The Ethernet Segment
Identifier field is set to the customer ES and the Ethernet Tag ID 32-bit field
is set to the 24-bit VPWS service instance identifier.” First of all [this is
minor/a nit], if this document intends to be in the Standards Track then it is
past the “proposing” phase, it is *specifying*. As a specification, it is
rather weak in some places; for example, RFC7432 says (as an example) that the
“Ethernet Tag ID in all EVPN routes MUST be set to 0”: that is a strong
statement of what is expected. On the other hand, this document is modifying
the behavior, but no Normative language is used. [In general I don’t advocate
for the use of Normative language everywhere, but in cases like this where the
behavior is being changed from the base spec when using this extension, it
seems necessary.]
M5.1. Section 3: “Ethernet Tag ID 32-bit field is set to the 24-bit VPWS
service instance identifier” How should this be aligned into the larger field?
Sami: Changed the text to "This document specifies the use of the per EVI
Ethernet A-D route to signal VPWS services. The Ethernet Segment Identifier
field is set to the customer ES and the Ethernet Tag ID 32-bit field MUST be
set to the 24-bit VPWS service instance identifier value."
M6. Section 3.1 (EVPN Layer 2 attributes extended community).
M6.1. For the P flag – “SHOULD be set to 1 for multihoming all-active
scenarios”: in a multihoming all-active scenario, when would this flag not be
set? IOW, why is the “SHOULD” not a “MUST”. A couple of paragraphs later:
“…the PEs in the ES that are active and ready to forward traffic to/from the CE
will set the P bit to 1”. In the all-active scenario, is there a case where a
PE would not be “active and ready”? What does that mean? Clarifying may
justify the “SHOULD”.
Sami: changed the text to "MUST be set to 1 for multihoming all-active
scenarios by all active PE(s)."
M6.2. How should the other flags in the Control Flags field be assigned?
Please define a new registry and include the details in the IANA Considerations
section.
Sami: We are already describing how the other control flags be assigned in the
doc, we have 2 other Flags B and C, not sure why do we need a new registry?
M6.3. What should a remote PE do if it receives both the P and B flags set (or
both unset)? I know that in a single-active scenario they should not be on at
the same time…but what should the receiver do?
Sami: Added "In multihoming scenarios, both B and P flags MUST not be both set
or both unset by a sender PE, and a receiving PE that receives an update with
both B and P flags set or unset MUST not forward any traffic to the sender PE.”
Need to review this with other authors too.
M6.4. What happens if the B flag is set in the all-active scenario? I know
there was some discussion about this on the list – the document needs to
explicitly talk about it.
Sami: Added text "B flag SHOULD not be set in the multihoming all-active
scenario and MUST be ignored by receiving PE(s)."
M6.5. What units is the MTU in? How is it encoded?
Sami: Added "L2 MTU (Maximum Transmission Unit) is a 2-octet value indicating
the MTU in octets”
M6.6. “non-zero MTU SHOULD be checked against local MTU” When is it ok not to
check? I’m wondering why this “SHOULD” is not a “MUST”, specially because the
result of that check is a “MUST NOT”.
Sami: Changed to MUST.
M6.7. “As per [RFC6790]…the control word (C bit set) SHOULD NOT be used…”
Where in RFC6790 does it say that? I searched for “control word”, but found
nothing? Also, this “SHOULD NOT” is in conflict with the definition of the C
flag: “If set to 1, a Control word [RFC4448] MUST be present…”
Sami: changed text to "If a network uses entropy labels per [RFC6790] then the
C Bit MUST not be set to 1 and control word MUST NOT be used when sending
EVPN-encapsulated packets over a P2P LSP.”
Minor:
P1. Please add a reference for VPWS.
Sami: You mean PWE3 reference?
P2. The [MEF] reference didn’t work for me; on all tries the connection timed
out. Is it possible to find a more stable reference?
Sami: No clue here!
P3. There are several acronyms that won’t be familiar to the average reader and
that need to be expanded on first use: ES, AD (A-D), EVI, VID, VNI, EP-LAN,
EVP-LAN. I know that some of these are expanded in the Terminology Section, but
in some cases that comes later in the text.
Sami: Done for what happen before terminology.
P4. The EVPN-VPWS term is introduced for the first time in the text at the
bottom of page 3. I take it that it refers to the solution presented in this
document. Please include a sentence at the top of the introduction to clarify
– note that this tag could be useful in other places as well.
Sami: Please look at doc.
P5. “Ethernet tag field” (and not “Ethernet Tag ID”, which I’m assuming is the
same thing) is used in several parts of the text. Please be consistent.
Sami: Done.
P6. “VxLAN encap” is mentioned in the Introduction, and potential things about
handling it…but there are no references and no additional mention anywhere else
in the document.
P7. “mass withdraw” is mentioned in the Introduction (“…can be used for
flow-based load-balancing and mass withdraw functions”), in Section 4 (“…can
be used for mass withdraw”), and finally Section 6.2 (the last section in the
draft!) has a reference… Please move it earlier in the document.
Sami: Done.
P8. S-VLAN, C-VLAN: expand and put a reference for them.
Sami: Done added to terminology.
P9. There is no Reference to any of the Extended Communities RFCs: 4360, 7153,
etc…
Sami: Done.
P10. Please add Figure numbers/names.
Sami: Done.
P11. Section 3.1 (EVPN Layer 2 attributes extended community) defines 3 control
*flags*, but they are referred to later in the text as “bits”. Please be
consistent.
Sami: Please have a look.
P12. Section 4 (Operation): s/with Next Hop attribute set/with the NEXT_HOP
attribute set Also, include an Informative reference to RFC4271.
Sami: Done.
P13. Section 6 (Failure Scenarios): “…the PE must withdraw all the associated
Ethernet AD routes…” Should that be a “MUST”?
Sami: Done.
P14. A reference to “[ietf-evpn-overlay]” appears in the Security
Considerations, but there’s no Reference later on.
Nits:
N1. “Both services are supported by using…I.e., for both EPL and EVPL
services…” The second part of that explanation is a lot clearer, you might
want to simplify by just leaving that part in.
Sami: I don’t get this.
N2. The introduction reads like a rushed summary of the solution, which results
in potentially confusing text. Suggestion: focus the Introduction on setting
the stage/background – if you want to provide a summary of the solution (good
idea!), then do it after the requirements.
Sami: I prefer to leave it as is.
N3. s/Ethernet Segment on a PE refer to/Ethernet Segment on a PE refers to
Sami: Done
N4. s/multi home…single home/multi homed…single homed
Sami: Done
N5. The text in Section 9 is misaligned.
Sami: Done.
INTERNET-DRAFT Sami Boutros
Intended Status: Standard Track VMware
Ali Sajassi
Samer Salam
Cisco Systems
John Drake
Juniper Networks
J. Rabadan
Nokia
Expires: August 7, 2017 February 3, 2017
VPWS support in EVPN
draft-ietf-bess-evpn-vpws-08.txt
Abstract
This document describes how EVPN can be used to support Virtual
Private Wire Service (VPWS) in MPLS/IP networks. EVPN enables the
following characteristics for VPWS: single-active as well as all-
active multi-homing with flow-based load-balancing, eliminates the
need for traditional way of PW signaling, and provides fast
protection convergence upon node or link failure.
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
Copyright and License Notice
Boutros Expires August 7, 2017 [Page 1]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
Copyright (c) 2017 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
(http://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 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 . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Service interface . . . . . . . . . . . . . . . . . . . . . . . 6
2.1 VLAN-Based Service Interface . . . . . . . . . . . . . . . . 6
2.2 VLAN Bundle Service Interface . . . . . . . . . . . . . . . 6
2.2.1 Port-Based Service Interface . . . . . . . . . . . . . . 7
2.3 VLAN-Aware Bundle Service Interface . . . . . . . . . . . . 7
3. BGP Extensions . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1 EVPN Layer 2 attributes extended community . . . . . . . . . 7
4 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 EVPN Comparison to PW Signaling . . . . . . . . . . . . . . . . 11
6 Failure Scenarios . . . . . . . . . . . . . . . . . . . . . . . 11
6.1 Single-Homed CEs . . . . . . . . . . . . . . . . . . . . . . 11
6.2 Multi-Homed CEs . . . . . . . . . . . . . . . . . . . . . . 11
7 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 12
8 Security Considerations . . . . . . . . . . . . . . . . . . . . 12
9 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 12
10 References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
10.1 Normative References . . . . . . . . . . . . . . . . . . . 12
10.2 Informative References . . . . . . . . . . . . . . . . . . 13
Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 13
Boutros Expires August 7, 2017 [Page 2]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
1 Introduction
This document describes how EVPN can be used to support Virtual
Private Wire Service (VPWS) in MPLS/IP networks. The use of EVPN
mechanisms for VPWS (EVPN-VPWS) brings the benefits of EVPN to p2p
services. These benefits include single-active redundancy as well as
all-active redundancy with flow-based load-balancing. Furthermore,
the use of EVPN for VPWS eliminates the need for traditional way of
PW signaling for p2p Ethernet services, as described in section 4.
[RFC7432] has the ability to forward customer traffic to/from a given
customer Attachment Circuit (AC), without any MAC lookup. This
capability is ideal in providing p2p services (aka VPWS services).
[MEF] defines Ethernet Virtual Private Line (EVPL) service as p2p
service between a pair of ACs (designated by VLANs) and Ethernet
Private Line (EPL) service, in which all traffic flows are between a
single pair of ports, that in EVPN terminology would mean a single
pair of Ethernet Segments ES(es). EVPL can be considered as a VPWS
with only two ACs. In delivering an EVPL service, the traffic
forwarding capability of EVPN based on the exchange of a pair of
Ethernet Auto-discovery (A-D) routes is used; whereas, for more
general VPWS, traffic forwarding capability of EVPN based on the
exchange of a group of Ethernet AD routes (one Ethernet AD route per
AC/ES) is used. In a VPWS service, the traffic from an originating
Ethernet Segment can be forwarded only to a single destination
Ethernet Segment; hence, no MAC lookup is needed and the MPLS label
associated with the per EVPN instance (EVI) Ethernet A-D route can be
used in forwarding user traffic to the destination AC.
Both services are supported by using the per EVI Ethernet A-D route
which contains an Ethernet Segment Identifier, in which the customer
ES is encoded, and an Ethernet Tag, in which the VPWS service
instance identifier is encoded. I.e., for both EPL and EVPL
services, a specific VPWS service instance is identified by a pair of
per EVI Ethernet A-D routes which together identify the VPWS service
instance endpoints and the VPWS service instance. In the control
plane the VPWS service instance is identified using the VPWS service
instance identifiers advertised by each PE and in the data plane the
value of the MPLS label advertised by one PE is used by the other PE
to send traffic for that VPWS service instance. As with the Ethernet
Tag in standard EVPN, the VPWS service instance identifier has
uniqueness within an EVPN instance.
Unlike EVPN where Ethernet Tag ID in EVPN routes are set to zero for
Port-based, vlan-based, and vlan-bundle interface mode and it is set
to non-zero Ethernet tag ID for vlan-aware bundle mode, in EVPN-VPWS,
for all the four interface modes, Ethernet tag ID in the Ethernet A-D
route MUST be set to a non-zero value in all the service interface
Boutros Expires August 7, 2017 [Page 3]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
types.
In terms of route advertisement and MPLS label lookup behavior, EVPN-
VPWS resembles the vlan-aware bundle mode of [RFC7432] such that when
a PE advertises per EVI Ethernet A-D route, the VPWS service instance
serves as a 24-bit normalized Ethernet tag ID. The value of the MPLS
label in this route represents both the EVI and the VPWS service
instance, so that upon receiving an MPLS encapsulated packet, the
disposition PE can identify the egress AC from the lookup of the MPLS
label alone and perform any required tag translation. For EVPL
service, the Ethernet frames transported over an MPLS/IP network
SHOULD remain tagged with the originating Vlan-ID (VID) and any VID
translation MUST be performed at the disposition PE. For EPL service,
the Ethernet frames are transported as is and the tags are not
altered.
The MPLS label value in the Ethernet A-D route can be set to the
VXLAN Network Identifier (VNI) for VxLAN encap, and this VNI may have
a global scope or local scope per PE and may also be made equal to
the VPWS service instance identifier set in the Ethernet A-D route.
The Ethernet Segment identifier encoded in the Ethernet A-D per EVI
route is not used to identify the service, however it can be used for
flow-based load-balancing and mass withdraw functions as per
[RFC7432] baseline.
As with standard EVPN, the Ethernet A-D per ES route is used for fast
convergence upon link or node failure and the Ethernet Segment route
is used for auto-discovery of the PEs attached to a given multi-homed
CE and to synchronize state between them.
1.1 Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
MAC: Media Access Control
MPLS: Multi Protocol Label Switching.
OAM: Operations, Administration and Maintenance.
PE: Provide Edge Node.
CE: Customer Edge device e.g., host or router or switch.
Boutros Expires August 7, 2017 [Page 4]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
EVPL: Ethernet Virtual Private Line.
EPL: Ethernet Private Line.
EP-LAN: Ethernet Private LAN.
EVP-LAN: Ethernet Virtual Private LAN.
S-VLAN: Service VLAN identifier.
C-VLAN: Customer VLAN identifier.
VPWS: Virtual Private Wire Service.
EVI: EVPN Instance.
ES: Ethernet Segment on a PE refers to the link attached to it, this
link can be part of a set of links attached to different PEs in multi
homed cases, or could be a single link in single homed cases.
ESI: Ethernet Segment Identifier.
Single-Active Mode: When a device or a network is multi-homed to two
or more PEs and when only a single PE in such redundancy group can
forward traffic to/from the multi-homed device or network for a given
VLAN, then such multi-homing or redundancy is referred to as "Single-
Active".
All-Active: When a device is multi-homed to two or more PEs and when
all PEs in such redundancy group can forward traffic to/from the
multi-homed device for a given VLAN, then such multi-homing or
redundancy is referred to as "All-Active".
1.2 Requirements
1. EPL service access circuit MUST map to the whole Ethernet port.
2. EVPL service access circuit MUST map to an individual VLAN or
double tagged <S-VLAN,C-VLAN> combination on a given trunk port,
without any direct dependency on any other VLANs on the same trunk.
Other VLANs on the same trunk MAY also be used for EVPL services, but
MAY also be associated with other services.
3. If multiple VLANs on the same trunk are associated with EVPL
services, the respective remote endpoints of these EVPLs MAY be
dispersed across any number of PEs, i.e. different VLANs MAY lead to
different destinations.
Boutros Expires August 7, 2017 [Page 5]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
4. The VLAN tag on the access trunk MUST only have PE-local
significance. The VLAN tag on the remote end could be different, and
could also be double tagged when the other side is single tagged.
5. Also, multiple EVPL service VLANs on the same trunk MAY belong to
the same EVPN instance (EVI), or they MAY belong to different EVIs.
This should be purely an administrative choice of the network
operator.
6. A given PE MAY have thousands of EVPLs configured. It MUST be
possible to configure multiple EVPL services within the same EVI.
7. Local access circuits configured to belong to a given EVPN
instance MAY also belong to different physical access trunks.
8. EP-LAN and EVP-LAN MAY be possible on the same system and also
ESIs can be shared between EVPL and EVP-LANs.
2 Service interface
2.1 VLAN-Based Service Interface
With this service interface, a VPWS instance identifier corresponds
to only a single VLAN on a specific interface. Therefore, there is a
one-to-one mapping between a VID on this interface and the VPWS
service instance identifier. The PE provides the cross-connect
functionality between MPLS LSP identified by the VPWS service
instance identifier and a specific <port,VLAN>. If the VLAN is
represented by different VIDs on different PEs. (e.g., a different
VID per Ethernet segment per PE), then each PE needs to perform VID
translation for frames destined to its Ethernet segment. In such
scenarios, the Ethernet frames transported over an MPLS/IP network
SHOULD remain tagged with the originating VID, and a VID translation
MUST be supported in the data path and MUST be performed on the
disposition PE.
2.2 VLAN Bundle Service Interface
With this service interface, a VPWS service instance identifier
corresponds to multiple VLANs on a specific interface. The PE
provides the cross-connect functionality between MPLS label
identified by the VPWS service instance identifier and a group of
VLANs on a specific interface. For this service interface, each VLAN
is presented by a single VID which means no VLAN translation is
allowed. The receiving PE, can direct the traffic based on EVPN label
alone to a specific port. The transmitting PE can cross connect
traffic from a group of VLANs on a specific port to the MPLS label.
The MPLS-encapsulated frames MUST remain tagged with the originating
Boutros Expires August 7, 2017 [Page 6]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
VID.
2.2.1 Port-Based Service Interface
This service interface is a special case of the VLAN bundle service
interface, where all of the VLANs on the port are mapped to the same
VPWS service instance identifier. The procedures are identical to
those described in Section 2.2.
2.3 VLAN-Aware Bundle Service Interface
Contrary to EVPN, in EVPN-VPWS this service interface maps to VLAN-
based service interface (defined in section 2.1) and thus this
service interface is not used in EVPN-VPWS. In other words, if one
tries to define data-plane and control plane behavior for this
service interface, he would realize that it is the same as that of
VLAN-based service.
3. BGP Extensions
This document specifies the use of the per EVI Ethernet A-D route to
signal VPWS services. The Ethernet Segment Identifier field is set to
the customer ES and the Ethernet Tag ID 32-bit field MUST be set to
the 24-bit VPWS service instance identifier value. For both EPL and
EVPL services, for a given VPWS service instance the pair of PEs
instantiating that VPWS service instance will each advertise a per
EVI Ethernet A-D route with its VPWS service instance identifier and
will each be configured with the other PE's VPWS service instance
identifier. When each PE has received the other PE's per EVI Ethernet
A-D route the VPWS service instance is instantiated. It should be
noted that the same VPWS service instance identifier may be
configured on both PEs.
The Route-Target (RT) extended community with which the per EVI
Ethernet A-D route is tagged identifies the EVPN instance in which
the VPWS service instance is configured. It is the operator's choice
as to how many and which VPWS service instances are configured in a
given EVPN instance. However, a given EVPN instance MUST NOT be
configured with both VPWS service instances and standard EVPN multi-
point services.
3.1 EVPN Layer 2 attributes extended community
This draft proposes a new extended community, defined below, to be
included with the per EVI Ethernet A-D route. This attribute is
mandatory if multihoming is enabled.
Boutros Expires August 7, 2017 [Page 7]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
+------------------------------------+
| Type(0x06)/Sub-type(0x04)(2 octet)|
+------------------------------------+
| Control Flags (2 octets) |
+------------------------------------+
| L2 MTU (2 octets) |
+------------------------------------+
| Reserved (2 octets) |
+------------------------------------+
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MBZ |C|P|B| (MBZ = MUST Be Zero)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The following bits in the Control Flags are defined; the remaining
bits MUST be set to zero when sending and MUST be ignored when
receiving this community.
Name Meaning
P If set to 1 in multihoming single-active scenarios, it
indicates that the advertising PE is the Primary PE.
MUST be set to 1 for multihoming all-active scenarios by
all active PE(s).
B If set to 1 in multihoming single-active scenarios, it
indicates that the advertising PE is the Backup PE.
C If set to 1, a Control word [RFC4448] MUST be present
when sending EVPN packets to this PE.
L2 MTU (Maximum Transmission Unit) is a 2-octet value indicating the
MTU in octets.
A received L2 MTU=0 means no MTU checking against local MTU is
needed. A received non-zero MTU MUST be checked against local MTU and
if there is a mismatch, the local PE MUST NOT add the remote PE as
the EVPN destination for the corresponding VPWS service instance.
The usage of the Per ES Ethernet A-D route is unchanged from its
usage in [RFC7432], i.e. the "Single-Active" bit in the flags of the
ESI Label extended community will indicate if single-active or all-
active redundancy is used for this ES.
Boutros Expires August 7, 2017 [Page 8]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
In multihoming scenarios, both B and P bits in control flags MUST not
be both set or both unset by a sender PE, and a receiving PE that
receives an update with both B and P bits set or unset MUST not
forward any traffic to the sender PE.
In a multihoming all-active scenario, there is no DF election, and
all the PEs in the ES that are active and ready to forward traffic
to/from the CE will set the P bit to 1. A remote PE will do per-flow
load balancing to the PEs that send P=1 for the same Ethernet Tag and
ESI. B bit in control flags SHOULD not be set in the multihoming all-
active scenario and MUST be ignored by receiving PE(s) if set.
In multihoming single-active scenario, the DF election will determine
who the primary and the backup PEs are, and only those PEs will set
the P bit and B bit respectively. A remote PE will forward the
traffic to the primary PE and switch over to the backup PE as soon as
it receives an Ethernet A-D route withdrawal from the primary PE in
the Ethernet Segment.
In multihoming single-active scenario, during transient situations, a
remote PE receiving P=1 from more than one PE will select the last
advertising PE as the primary PE when forwarding traffic. A remote PE
receiving B=1 from more than one PE will select only one backup PE. A
remote PE MUST receive P=1 from at least one PE before forwarding
traffic.
If a network uses entropy labels per [RFC6790] then the C Bit MUST
not be set to 1 and control word MUST NOT be used when sending EVPN-
encapsulated packets over a P2P LSP.
4 Operation
The following figure shows an example of a P2P service deployed with
EVPN.
Ethernet Ethernet
Native |<--------- EVPN Instance ----------->| Native
Service | | Service
(AC) | |<-PSN1->| |<-PSN2->| | (AC)
| V V V V V V |
| +-----+ +-----+ +-----+ +-----+ |
+----+ | | PE1 |======|ASBR1|==|ASBR2|===| PE3 | | +----+
| |-------+-----+ +-----+ +-----+ +-----+-------| |
| CE1| | | |CE2 |
| |-------+-----+ +-----+ +-----+ +-----+-------| |
+----+ | | PE2 |======|ASBR3|==|ASBR4|===| PE4 | | +----+
^ +-----+ +-----+ +-----+ +-----+ ^
| Provider Edge 1 ^ Provider Edge 2 |
Boutros Expires August 7, 2017 [Page 9]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
| | |
| | |
| EVPN Inter-provider point |
| |
|<---------------- Emulated Service -------------------->|
Figure 1: EVPN-VPWS Deployement Model
iBGP sessions are established between PE1, PE2, ASBR1 and ASBR3,
possibly via a BGP route-reflector. Similarly, iBGP sessions are
established between PE3, PE4, ASBR2 and ASBR4. eBGP sessions are
established among ASBR1, ASBR2, ASBR3, and ASBR4.
All PEs and ASBRs are enabled for the EVPN SAFI and exchange per EVI
Ethernet A-D routes, one route per VPWS service instance. For inter-
AS option B, the ASBRs re-advertise these routes with NEXT_HOP
attribute set to their IP addresses as per [RFC4271]. The link
between the CE and the PE is either a C-tagged or S-tagged interface,
as described in [802.1Q], that can carry a single VLAN tag or two
nested VLAN tags and it is configured as a trunk with multiple VLANs,
one per VPWS service instance. It should be noted that the VLAN ID
used by the customer at either end of a VPWS service instance to
identify that service instance may be different and EVPN doesn't
perform that translation between the two values. Rather, the MPLS
label will identify the VPWS service instance and if translation is
needed, it should be done by the Ethernet interface for each service.
For single-homed CE, in an advertised per EVI Ethernet A-D route the
ESI field is set to 0 and the Ethernet Tag ID is set to the VPWS
service instance identifier that identifies the EVPL or EPL service.
For a multi-homed CE, in an advertised per EVI Ethernet A-D route the
ESI field is set to the CE's ESI and the Ethernet Tag ID is set to
the VPWS service instance identifier, which MUST have the same value
on all PEs attached to that ES. This allows an ingress PE to perform
flow-based load-balancing of traffic flows to all of the PEs attached
to that ES. In all cases traffic follows the transport paths, which
may be asymmetric.
The VPWS service instance identifier encoded in the Ethernet Tag ID
in an advertised per EVI Ethernet A-D route MUST either be unique
across all ASs, or an ASBR needs to perform a translation when the
per EVI Ethernet A-D route is re-advertised by the ASBR from one AS
to the other AS.
Per ES Ethernet A-D route can be used for mass withdraw to withdraw
all per EVI Ethernet A-D routes associated with the multi-home site
on a given PE.
Boutros Expires August 7, 2017 [Page 10]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
5 EVPN Comparison to PW Signaling
In EVPN, service endpoint discovery and label signaling are done
concurrently using BGP. Whereas, with VPWS based on [RFC4448], label
signaling is done via LDP and service endpoint discovery is either
through manual provisioning or through BGP.
In existing implementation of VPWS using pseudowires(PWs), redundancy
is limited to single-active mode, while with EVPN implementation of
VPWS both single-active and all-active redundancy modes can be
supported.
In existing implementation with PWs, backup PWs are not used to carry
traffic, while with EVPN, traffic can be load-balanced among
different PEs multi-homed to a single CE.
Upon link or node failure, EVPN can trigger failover with the
withdrawal of a single BGP route per EVPL service or multiple EVPL
services, whereas with VPWS PW redundancy, the failover sequence
requires exchange of two control plane messages: one message to
deactivate the group of primary PWs and a second message to activate
the group of backup PWs associated with the access link.
Finally, EVPN may employ data plane egress link protection mechanisms
not available in VPWS. This can be done by the primary PE (on local
AC down) using the label advertised in the per EVI Ethernet A-D route
by the backup PE to encapsulate the traffic and direct it to backup
PE.
6 Failure Scenarios
On a link or port failure between the CE and the PE for both single
and multi-homed CEs, unlike [RFC7432] the PE MUST withdraw all the
associated Ethernet A-D routes for the VPWS service instances on the
failed port or link.
6.1 Single-Homed CEs
Unlike [RFC7432], EVPN-VPWS uses Ethernet A-D route advertisements
for single-homed Ethernet Segments. Therefore, upon a link/port
failure of this single-homed Ethernet Segment, the PE MUST withdraw
the associated per EVI Ethernet A-D routes.
6.2 Multi-Homed CEs
For a faster convergence in multi-homed scenarios with either Single-
Active Redundancy or All-active redundancy, mass withdraw technique
is used. A PE previously advertising a per ES Ethernet A-D route, can
Boutros Expires August 7, 2017 [Page 11]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
withdraw this route signaling to the remote PEs to switch all the
VPWS service instances associated with this multi-homed ES to the
backup PE
7 Acknowledgements
The authors would like to acknowledge Jeffrey Zhang, Wen Lin, Nitin
Singh, Senthil Sathappan and Vinod Prabhu for their feedback and
contributions to this document.
8 Security Considerations
The mechanisms in this document use EVPN control plane as defined in
[RFC7432]. Security considerations described in [RFC7432] are equally
applicable.
This document uses MPLS and IP-based tunnel technologies to support
data plane transport. Security considerations described in [RFC7432]
and in [ietf-evpn-overlay] are equally applicable.
9 IANA Considerations
IANA has allocated the following EVPN Extended Community sub-type:
SUB-TYPE VALUE NAME Reference
0x04 EVPN Layer 2 attributes [RFCXXXX]
10 References
10.1 Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March
1997, <http://www.rfc-editor.org/info/rfc2119>.
[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, <http://www.rfc-
editor.org/info/rfc7432>.
[RFC4448] Martini, L., Rosen, E., El-Aawar, N., and G. Heron,
"Encapsulation Methods for Transport of Ethernet over MPLS Networks",
RFC 4448, April 2006.
[RFC6790] Kompella, K., Drake, J., Amante, S., Henderickx, W., and L.
Yong, "The Use of Entropy Labels in MPLS Forwarding", November 2012.
[RFC7153] Rosen, E. and Y. Rekhter, "IANA Registries for BGP Extended
Communities", RFC 7153, March 2014, <http://www.rfc-
editor.org/info/rfc7153>.
Boutros Expires August 7, 2017 [Page 12]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border
Gateway Protocol 4 (BGP-4)", RFC 4271, January 2006, <http://www.rfc-
editor.org/info/rfc4271>.
10.2 Informative References
[MEF] Metro Ethernet Forum, "Ethernet Services Definitions - Phase
2", Technical Specification MEF 6.1, April 2008,
<http://metroethernetforum.org/Assets/Technical_Specifications/PDF/
MEF6-1.pdf>.
[ietf-evpn-overlay] Sajassi-Drake et al., "A Network Virtualization
Overlay Solution using EVPN", draft-ietf-bess-evpn-overlay-07.txt,
work in progress, December, 2016
Contributors
In addition to the authors listed on the front page, the following
co-authors have also contributed to this document:
Daniel Voyer Bell Canada
Authors' Addresses
Sami Boutros
VMware, Inc.
Email: [email protected]
Ali Sajassi
Cisco
Email: [email protected]
Samer Salam
Cisco
Email: [email protected]
John Drake
Juniper Networks
Email: [email protected]
Jeff Tantsura
Individual
Email: [email protected]
Dirk Steinberg
Boutros Expires August 7, 2017 [Page 13]
INTERNET DRAFT VPWS support in EVPN February 3, 2017
Steinberg Consulting
Email: [email protected]
Patrice Brissette
Cisco
Email: [email protected]
Thomas Beckhaus
Deutsche Telecom
Email: [email protected]
Jorge Rabadan
Nokia
Email: [email protected]
Ryan Bickhart
Juniper Networks
Email: [email protected]
Boutros Expires August 7, 2017 [Page 14]
_______________________________________________
BESS mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/bess