Network Working Group Z. Hu Internet-Draft G. Yan Intended status: Standards Track X. Chen Expires: January 1, 2019 J. Yao Huawei Technologies June 30, 2018 Segment Routing interworking with RSVP-TE draft-hu-spring-segment-routing-rsvp-te-interop-00 Abstract A Segment Routing (SR) node steers a packet through an ordered list of instructions, called segments. A segment can represent any instruction, topological or service-based. Segment Routing (SR) is a protocol designed to forward packets on the network based on the concept of source routing. The Segment Routing architecture can be directly applied to the MPLS data plane with no change in the forwarding plane. It simplifies the MPLS control protocol, simplifies the configuration of the network, and can achieve SDN better. Resource Reservation Protocol - Traffic Engineering (RSVP-TE) has the ability of path planning and resource reservation. In the process of traditional network evolution to Segment Routing, there will inevitably be coexistence of RSVP-TE and Segment Routing. The Document describes how to interact with nodes that support Segment Routing capabilities and nodes that support RSVP-TE capabilities. Requirements Language 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]. 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 Hu, et al. Expires January 1, 2019 [Page 1] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 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 January 1, 2019. Copyright Notice Copyright (c) 2018 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. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. SR to RSVP-TE . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. SR to RSVP-TE . . . . . . . . . . . . . . . . . . . . . . 3 2.2. SR to RSVP-TE Behavior . . . . . . . . . . . . . . . . . 5 3. RSVP-TE to SR . . . . . . . . . . . . . . . . . . . . . . . . 5 3.1. RSVP-TE to SR . . . . . . . . . . . . . . . . . . . . . . 5 3.2. RSVP-TE to SR Behavior . . . . . . . . . . . . . . . . . 8 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 7.1. Normative References . . . . . . . . . . . . . . . . . . 8 7.2. Informative References . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 1. Introduction Segment Routing (SR) described in [I-D.ietf-spring-segment-routing] leverages the source routing paradigm. A Segment Routing (SR) node steers a packet through an ordered list of instructions, called segments. A segment can represent any instruction, topological or service-based. Segment Routing can be directly applied to the MPLS architecture with no change on the forwarding plane [I-D.ietf-spring-segment-routing-mpls]. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. A Hu, et al. Expires January 1, 2019 [Page 2] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 segment can have a semantic local to an SR node or global within an SR domain. [RFC3209] defines the specification of extensions to RSVP for establishing label switched paths (LSPs) in MPLS networks. The signaling protocol model of RSVP uses downstream-on-demand label distribution. The tunnel header node sends the RSVP Path message to the tunnel tail node by Path ERO (Explicit Router Object) messages, all nodes along the tunnel receive RSVP Path messages and reserve resources. The tunnel tail node sends back a RSVP Resv message to allocate labels for the upstream node. Each node of the tunnel completes label assignment and resource reservation through RSVP Path messages and RSVP Resv messages. Segment Routing- Traffic Engineering (SR-TE) is the technology that uses Segment Routing to implement traffic engineering. In the process of traditional network evolution to Segment Routing, there is usually a scenario where SR-TE and RSVP-TE interwork to form a traffic engineering tunnel. This document outlines the mechanisms through which SR interworks with RSVP-TE in cases where a mix of SR- capable and RSVP-capable routers co-exist within the same network and more precisely in the same routing domain. 2. SR to RSVP-TE This section describes how to establish a continuous SR-TE tunnel across an RSVP-TE domain. An implementation can be achieved that the RSVP-TE domain can be used as the middle part of the SR domain, and it can also be used as the tail end part of SR tunnel. 2.1. SR to RSVP-TE This subsection describes the node that supports SR capability as the head node of the tunnel to be established and traverses a domain which does not support SR capability, but supports RSVP-TE capability and how to establish a continuous SR-TE tunnel. Hu, et al. Expires January 1, 2019 [Page 3] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 +----------------------+ | Controller | +----------------------+ / \ / \ BSID {102,203,BSID,607,708}/ \ RSVP-TE Domain / +---\---------------------------------------------+ / | \ | +-----+ 102 +-----+ 203 +-----+ +-----+ +-----+ +-----+ 607 +-----+ 708 +-----+ | PE1 |------| B |------| C |------| D |-----| F |-----| G |-----| H |-----| PE3 | +-----+ +-----+ | +-----+ +-----+ +-----+ +-----+ | +-----+ +-----+ | | +-------------------------------------------------+ Figure 1. SR to RSVP-TE In Figure 1, the controller has the ability to collect network topology and calculate and arrange user's business demands. PE1, B, H and PE3 are network nodes with the capability of Segment Routing. D and F are network nodes with RSVP-TE capabilities. C and G are network devices with both RSVP-TE capability and SR capability. In SR domain, we assume that the Adjacency-sid between PE1 and B is 102, Adjacency-sid between B and C is 203, Adjacency-sid between G and H is 607, Adjacency-sid between H and PE3 is 708. All of these Adjacency-sids and network topologies are reported to the controller via the IGP protocol. Now, the traffic must be encapsulated from a PE1 to PE3 through a continuous MPLS tunnel. Therefore, it is necessary to build SR-TE tunnel cross over the RSVP-TE domain. A RSVP-TE tunnel is firstly built, it can be specifically described : Node C calculates the path (C->D->F->G) to Node G through CSPF algorithm. A RSVP-TE tunnel between C and G is established by sending RSVP Path messages and receiving RSVP Resv messages, and a tunnel Identifier called Binding-sid (BSID) is assigned to the established RSVP-TE tunnel at the node C which is handover between the RSVP-TE domain and the SR domain. Through the BGP_LS, the BSID is reported to the controller. When the controller calculates the end to end path of A->G to build a SR-TE tunnel, the link in the SR Hu, et al. Expires January 1, 2019 [Page 4] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 domain is identified by the Adjacency-sids, and the RSVP-TE tunnel is identified by the BSID. Therefore, the label stack list of SR-TE tunnel can be described with { 102, 203, BSID, 607, 708 } . When the packet is forwarded, the packet reaches the C. Node C swap the BSID with RSVP-TE tunnel label which is assigned to C by D, and then the Traffic is forwarded to G by traditional RSVP-TE label swapping hop by hop in the RSVP-TE tunnel. G receives the packet and pops the RSVP-TE tunnel label. And the packet is continuously forwarded to the destination node PE3 through the Adjacency-sids in the label stack according to the traditional SR-TE tunnel. 2.2. SR to RSVP-TE Behavior It has to be noted that the nodes C and G in boundary MUST support both SR capability and RSVP-TE capability. In scenario of SR-TE tunnel crossing over RSVP-TE Domain, a RSVP-TE tunnel has to be built firstly in RSVP-TE domain, and a Binding-sid (BSID) is generated at the intersection node and reported to the controller. Based on this, the controller can construct the label stack and calculate the end-to-end SR-TE tunnel. 3. RSVP-TE to SR This section describes how to establish a continuous RSVP-TE tunnel across an SR domain. An implementation can be achieved that the SR domain can be used as the middle part of the RSVP-TE domain, and it can also be used as the tail end part of RSVP-TE tunnel. 3.1. RSVP-TE to SR Hu, et al. Expires January 1, 2019 [Page 5] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 +----------+ |Controller| +----------+ / Path ERO / Segment Routing Domain / +-------------------------------------------------+ / | | +-----+ +-----+ | +-----+ +-----+ +-----+ +-----+ | +-----+ +-----+ | PE1 |------| B |------| C |------| D |-----| F |-----| G |-----| H |-----| PE3 | +-----+ +-----+ | +-----+ +-----+ +-----+ +-----+ | +-----+ +-----+ | | +-------------------------------------------------+ Figure 2. RSVP-TE to SR In Figure 2, the controller has the ability to collect network topology and calculate and arrange user's business demands. PE1, B, H and PE3 are network nodes with the capability of RSVP-TE. D and F are network nodes with Segment Routing capabilities. C and G are network devices with both RSVP-TE capability and SR capability. Now, the traffic must be encapsulated from PE1 to PE3 through a continuous tunnel. Therefore, it is necessary to establish an RSVP- TE tunnel cross over the SR domain. There are two methods to get the path information of the tunnel at the header node of the tunnel. One method is to send the Path ERO (Explicit Router Object) messages to PE1 which is the tunnel header node by the controller. The other way is to get the Path ERO messages through the CSPF algorithm by the tunnel header node. After the path calculation is completed, the header node PE1 sends the RSVP Path message hop by hop to the destination node PE3 to request the establishment of the RSVP-TE tunnel. According to the methods of the controller delivers or the header node calculates, PE1 obtains the tunnel path ERO information: PE1->B->C->D->F->G->H->PE3. As shown in Figure 2. The head node PE1 establishes a Traffic Engineering (TE) path by sending the RSVP Path message according to the path ERO information. When the C receives the RSVP Path message, C finds that subsequent devices D and F do not support RSVP-TE capabilities, and the node G Hu, et al. Expires January 1, 2019 [Page 6] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 supports both RSVP-TE and Segment Routing capabilities. The discovery mechanism of Traffic Engineering node capabilities can refer to [RFC5073] , which specifies Open Shortest Path First (OSPF) and Intermediate System-Intermediate System (IS-IS) traffic engineering extensions for the advertisement of control plane and data plane traffic engineering node capabilities. According to the correspondence between Path ERO information and Adjacency-sids or Node-sids of SR domain, node C automatically creates a SR-TE tunnel to node G. The list of label stack identifying the SR-TE tunnel may be the Adjacency-sids, the node- sids, and the combination of Adjacency-sids and node-sids of SR domain. And a Binding-sid (BSID) is assigned to the SR-TE tunnel as a tunnel identifier, which is used to represent the list of label stack of SR-TE tunnel. A BSID is a label that does not conflict which is distributed from Segment Routing Local Block (SRLB). After updating the Path message, C sends the Path message to the G through the SR-TE tunnel. The node G sends the RSVP Path messages to the tail node PE3 of the tunnel according to the traditional RSVP-TE mode. The tail node PE3 allocates labels for the Label Switched Path (LSP) and sends the RSVP Resv message to the upstream node H, and then H sends a Resv message hop by hop to the node G. Node G assigns a label to the upstream node C and sends it to node C through an RSVP Resv message. Node G acquires that its last hop node is C from Record Route Object (RRO) message. RRO information records the path information of RSVP Path messages passing through. Node C uses the BSID assigned from the SRLB as a label, puts BSID into the Resv message, and sends the Resv message to the upstream Node B, and then the Resv message is sent hop by hop to the head node PE1. At this point, the nodes on the entire ERO have been reserved for resources, and a RSVP-TE tunnel crossing over SR domain has been established successfully. When PE1 needs to bring packets into the RSVP-TE tunnel, PE1 node encapsulates the label assigned by the B, B receives the message, swaps the label to BSID, and send it to C . C receives the message and swap the top label BSID with label stack list of SR-TE tunnel , and the label assigned by node G is reassigned at the bottom of the stack. Packets are forwarded to the node G through the SR-TE tunnel. Device G receives the message and forward the message with packets to Hu, et al. Expires January 1, 2019 [Page 7] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 the destination device PE3 according to the traditional RSVP-TE label switching mode. 3.2. RSVP-TE to SR Behavior In the scenario of RSVP-TE crossing over SR domain, the device at the junction between RSVP-TE and SR domain can automatically create a SR- TE tunnel through Path ERO information, Adjacency-sids and Node-sids. This method does not change the way of original tunnel establishment of RSVP-TE, and has universal applicability. 4. IANA Considerations 5. Security Considerations This document does not introduce security issues beyond those discussed in [RFC3209] and [I-D.ietf-spring-segment-routing]. 6. Acknowledgements The authors of this document would like to thank Gang Yan, Peng Wu and Zhenbin Li for their comments and review of this document. 7. References 7.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, . 7.2. Informative References [I-D.ietf-spring-segment-routing] Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", draft-ietf-spring-segment-routing-15 (work in progress), January 2018. [I-D.ietf-spring-segment-routing-mpls] Bashandy, A., Filsfils, C., Previdi, S., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing with MPLS data plane", draft-ietf-spring-segment-routing-mpls-14 (work in progress), June 2018. Hu, et al. Expires January 1, 2019 [Page 8] Internet-Draft Segment Routing interworking with RSVP-TE June 2018 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, . [RFC5073] Vasseur, J., Ed. and J. Le Roux, Ed., "IGP Routing Protocol Extensions for Discovery of Traffic Engineering Node Capabilities", RFC 5073, DOI 10.17487/RFC5073, December 2007, . Authors' Addresses Zhibo Hu Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: huzhibo@huawei.com Gang Yan Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: yangang@huawei.com Xia Chen Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: jescia.chenxia@huawei.com Junda Yao Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: yaojunda@huawei.com Hu, et al. Expires January 1, 2019 [Page 9]