Network Working Group X. Xu Internet-Draft Huawei Intended status: Standards Track April 25, 2014 Expires: October 27, 2014 Signaling Services and Service SIDs Using OSPF draft-xu-ospf-service-sid-adv-00 Abstract The Segment Routing mechanism can be leveraged to realize the service path layer functionality of the Service Function Chaining (i.e, steering traffic through the service function path). This document describes how to advertise services and the corresponding service segment IDs using OSPF. 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 http://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 October 27, 2014. Copyright Notice Copyright (c) 2014 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. Xu Expires October 27, 2014 [Page 1] Internet-Draft April 2014 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2 3. Advertising Services and Service SIDs . . . . . . . . . . . . 2 3.1. Service TLVs . . . . . . . . . . . . . . . . . . . . . . 3 3.2. Service SID Sub-TLVs . . . . . . . . . . . . . . . . . . 3 4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 6. Security Considerations . . . . . . . . . . . . . . . . . . . 4 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 7.1. Normative References . . . . . . . . . . . . . . . . . . 4 7.2. Informative References . . . . . . . . . . . . . . . . . 4 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction [I-D.xu-spring-sfc-use-case] describes a particular use case for SPRING where the Segment Routing (SR) mechanism is leveraged to realize the service path layer functionality of the SFC (i.e, steering traffic through the service function path). To allow the service classifier to encode the segment list represeting a particular service path, the classifier needs to know on which service node(s) a given service is located and what segment ID (SID) is used to indicate that service on a given service node. This document describes how to advertise services and the corresponding service SIDs using OSPF including both OSPFv2 [RFC2328] and OSPFv3 [RFC2740]. 1.1. 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]. 2. Terminology This memo makes use of the terms defined in [RFC4970]. 3. Advertising Services and Service SIDs Service nodes within the network need to advertise each service they are offering by using a TLV within the body of the OSPF Router Information (RI) Opaque LSA [RFC4970]. These TLVs are called as Service TLVs. These Service TLVs are applicable to both OSPFv2 and OSPFv3. The scope of the advertisement depends on the application but it is recommended that it SHOULD be domain-wide. Furthermore, Xu Expires October 27, 2014 [Page 2] Internet-Draft April 2014 they may need to allocate at least one corresponding SID for each service and meanwhile advertise it by using a sub-TLV of the corresponding Service TLV for that service, called Service SID sub- TLV. In the MPLS-SR case, service nodes within the network would allocate a locally significant MPLS label to each service they are offering. In the IPv6-SR case, service nodes within the network would allocate a locally unique link-local IPv6 address to each service they are offering. For a given service, the service node offering that service could advertise the service ID in MPLS label format or the one in IPv6 address format, or both. 3.1. Service TLVs 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=TBD | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Sub-TLVs ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: each service is allocated with a unique type code. Length: variable Value: contains zero or more sub-TLVs. Besides the Service SID sub-TLVs, other sub-TLVs (to be defined in future) which are used to describe some characters of a service could also be contained in this field. 3.2. Service SID Sub-TLVs 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=TBD | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Service SID ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: TBD1 for the service SID in MPLS label format and TBD2 for the service SID in IPv6 address format. Length: variable (3 or 16). Value: if the Length is set to 3, the 20 rightmost bits represent a MPLS label. If the length is set to 16, the value represents an IPv6 address. Xu Expires October 27, 2014 [Page 3] Internet-Draft April 2014 4. Acknowledgements TBD. 5. IANA Considerations TBD. 6. Security Considerations This document does not introduce any new security risk. 7. References 7.1. Normative References [I-D.xu-spring-sfc-use-case] Xu, X., "Service Function Chaining Use Case", draft-xu- spring-sfc-use-case-00 (work in progress), April 2014. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4970] Lindem, A., Shen, N., Vasseur, JP., Aggarwal, R., and S. Shaffer, "Extensions to OSPF for Advertising Optional Router Capabilities", RFC 4970, July 2007. 7.2. Informative References [I-D.filsfils-spring-segment-routing] Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., Litkowski, S., Horneffer, M., Milojevic, I., Shakir, R., Ytti, S., Henderickx, W., Tantsura, J., and E. Crabbe, "Segment Routing Architecture", draft-filsfils-spring- segment-routing-00 (work in progress), April 2014. [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, April 1998. [RFC2740] Coltun, R., Ferguson, D., and J. Moy, "OSPF for IPv6", RFC 2740, December 1999. Author's Address Xiaohu Xu Huawei Email: xuxiaohu@huawei.com Xu Expires October 27, 2014 [Page 4]