BESS WG | Zheng. Zhang |
Internet-Draft | Shaofu. Peng |
Intended status: Standards Track | Greg. Mirsky |
Expires: July 6, 2020 | ZTE Corporation |
January 3, 2020 |
SRv6 and MPLS interworking for VPN service
draft-pzm-bess-spring-interdomain-vpn-01
This document describes a method to achieve an inter-domain connection for a VPN (Virtual Private Network) service.
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 July 6, 2020.
Copyright (c) 2020 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 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.
[I-D.agrawal-spring-srv6-mpls-interworking] describes SRv6 and MPLS/SR-MPLS interworking and co-existence procedures. The document leverages the function defined in [I-D.ietf-spring-srv6-network-programming] to give guidance to the forwarding in routers.
[RFC4364] describes a method by which a Service Provider may use an IP backbone to provide IP Virtual Private Networks (VPNs) for its customers. When SRv6 and SR-MPLS are co-existed in the backbone, controller or a control plane, for example, using BGP, should be used to instantiate the VPN service as described in [I-D.agrawal-spring-srv6-mpls-interworking].
In case of option B inter-domain interconnection [RFC4364], only ASBR needs to do the stitching work between two ASes. Thus PEs in SRv6 and SR-MPLS domains do not have to support both SRv6 and SR-MPLS functions. This document discusses the use of BGP for achieving VPN service through option B defined in [RFC4364] across a backbone that includes SRv6 and SR-MPLS domains.
[I-D.ietf-bess-srv6-services] defines the new TLVs for the BGP Prefix-SID Attribute that can be used to signaling of SRv6 SID for L3 and L2 services. In this document, we use L3 case as the example, the procedures for L2 are the same as in L3 scenario.
+-------------+ +-------------+ | AS1 | | AS2 | | | | | CE1+----+PE1 ASBR1+---+ASBR2 PE2+----+CE2 | | | | | SRV6 | | SR-MPLS | +-------------+ +-------------+ Figure 1
For example, CE1 and CE2 are connected through a backbone that includes AS1 and AS2. AS1 supports SRv6 only, and AS2 supports SR-MPLS only. ASBR1 supports both SRv6 and SR-MPLS capabilities, but ASBR2 supports SR-MPLS capability only.
For a prefix advertised by CE1 to PE1, PE1 assigns SID with End.DT4 (or End.DT6) defined in [I-D.ietf-spring-srv6-network-programming] section 4 (e.g., End.DT4 is used while the prefix is IPv4 prefix, End.DT6 is used while the prefix is IPv6 prefix), and advertises it to ASBR1. Because ASBR2 supports SR-MPLS function only, the SRv6 SID advertised by ASBR1 cannot be executed by ASBR2 because ASBR2 cannot recognize it.
ASBR1 uses specific execution function that is different from the function used in a single SRv6 domain or a single SR-MPLS domain. In this situation, ASBR1 assigns an MPLS label for the prefix received from PE1 and advertises it to ASBR2. The MPLS label has local significance that indicates this packet is associated with an SRv6 SID list which leads the packet from ASBR1 to PE1. The advertisement is the same as the format in [I-D.ietf-idr-bgp-prefix-sid].
When a data flow packet which has the destination to CE1 is received by ASBR1, ASBR1 recognizes the MPLS label, removes the label and adds an SRH to the packet, then forwards it to PE1.
In the same example, PE2 advertises a prefix received from CE2 with assigned SID to ASBR2 according to [I-D.ietf-idr-bgp-prefix-sid], ASBR2 assigns SID for this prefix and advertises it to ASBR1. When ASBR1 advertises this prefix to PE1, ASBR1 should assign an SRv6 SID for it. The SID indicates the new execution function (e.g., END.RM, it indicates that MPLS should replace the SRH) for exchanging the packet header from SRH to MPLS list. The new function format is like the defination in [I-D.ietf-spring-srv6-network-programming] section 4.
When a data flow packet, which has the destination to CE2, is received by ASBR1, ASBR1 recognizes the SRv6 SID, removes the SRH and adds a or a list of MPLS label in the packet, and forwards it to PE2.
IANA is requested to allocate a new code points for the new SRv6 Endpoint Behaviors defined in this document.
Type | Description | Reference |
---|---|---|
TBD1 | END.RM | This Document |
This document introduces no new security consideration beyond those already specified in [RFC4364], [I-D.ietf-idr-bgp-prefix-sid], [I-D.ietf-spring-srv6-network-programming], [I-D.ietf-bess-srv6-services] and [I-D.agrawal-spring-srv6-mpls-interworking].
[I-D.ietf-bess-srv6-services] | Dawra, G., Filsfils, C., Raszuk, R., Decraene, B., Zhuang, S. and J. Rabadan, "SRv6 BGP based Overlay services", Internet-Draft draft-ietf-bess-srv6-services-01, November 2019. |
[I-D.ietf-idr-bgp-prefix-sid] | Previdi, S., Filsfils, C., Lindem, A., Sreekantiah, A. and H. Gredler, "Segment Routing Prefix SID extensions for BGP", Internet-Draft draft-ietf-idr-bgp-prefix-sid-27, June 2018. |
[I-D.ietf-spring-srv6-network-programming] | Filsfils, C., Camarillo, P., Leddy, J., Voyer, D., Matsushima, S. and Z. Li, "SRv6 Network Programming", Internet-Draft draft-ietf-spring-srv6-network-programming-07, December 2019. |
[RFC4364] | Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, February 2006. |
[I-D.agrawal-spring-srv6-mpls-interworking] | Agrawal, S., Ali, Z., Filsfils, C., Voyer, D. and Z. Li, "SRv6 and MPLS interworking", Internet-Draft draft-agrawal-spring-srv6-mpls-interworking-01, July 2019. |