Network Working Group X. Xu
Internet-Draft Huawei
Intended status: Standards Track May 29, 2014
Expires: November 30, 2014
Advertising Service Functions Using IS-IS
draft-xu-isis-service-function-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 service functions and the corresponding
segment IDs using IS-IS.
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 November 30, 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 November 30, 2014 [Page 1]
Internet-Draft Advertising Service Functions Using IS-IS May 2014
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Advertising Service Functions and Corresponding SIDs . . . . 2
3.1. Service Function Sub-TLV . . . . . . . . . . . . . . . . 3
3.2. Service Function SID Sub-TLV . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . . . . . . . . . . . 5
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 Service Function
Chaining (SFC), i.e, steering traffic through the service function
path. To allow the service classifier to encode the segment list
represeting a particular service function path, the classifier needs
to know on which service node(s) a given service function is located
and what segment ID (SID) is used to indicate that service function
on a given service node. This document describes how to advertise
service functions and their corresponding SIDs using IS-IS.
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 [RFC4971].
3. Advertising Service Functions and Corresponding SIDs
Service nodes within the network need to advertise each service
function they are offering by using a new sub-TLV of the IS-IS Router
CAPABILITY TLV [RFC4971]. This new sub-TLV is called as Service
Function sub-TLV. The Service Function sub-TLV could appear multiple
times wihin a given IS-IS Router CAPABILITY TLV when more than one
service function needs to be advertised by a given service node. The
scope of the advertisement depends on the application but it is
Xu Expires November 30, 2014 [Page 2]
Internet-Draft Advertising Service Functions Using IS-IS May 2014
recommended that it SHOULD be domain-wide. Furthermore, service
nodes need to allocate a corresponding SID to each service function
they are offering and advertise it by using a sub-TLV of the above
Service Function sub-TLV, called Service Function SID sub-TLV. In
the MPLS-SR case, service nodes within the network would allocate a
locally significant MPLS label to each service function 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 function they are offering. For a given service function,
the service node offering that service function could advertise the
corresponding SID in the MPLS label format or in the IPv6 address
format, or both.
3.1. Service Function Sub-TLV
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 Function Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Sub-TLVs ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: TBD.
Length: variable.
Service Function Identifier: A unique identifier that represents a
service function within an SFC-enabled domain.
Sub-TLVs: contains zero or more sub-TLVs related to service
functions. Besides the Service Function SID sub-TLVs as defined
in Section 3.2, other sub-TLVs (to be defined in future) which are
used to describe some characters of a given service function could
also be added.
3.2. Service Function SID Sub-TLV
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 Function SID ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Xu Expires November 30, 2014 [Page 3]
Internet-Draft Advertising Service Functions Using IS-IS May 2014
Type: TBD.
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.
4. Acknowledgements
TBD.
5. IANA Considerations
This memo includes a request to IANA to allocate one sub-TLV type
codes within the IS-IS Router Capability TLV for the Service Function
sub-TLV, and one sub-TLV type code within the Service Function sub-
TLV for the Service Function SID sub-TLV.
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.
[RFC4971] Vasseur, JP., Shen, N., and R. Aggarwal, "Intermediate
System to Intermediate System (IS-IS) Extensions for
Advertising Router Information", RFC 4971, 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-02 (work in progress), May 2014.
Xu Expires November 30, 2014 [Page 4]
Internet-Draft Advertising Service Functions Using IS-IS May 2014
Author's Address
Xiaohu Xu
Huawei
Email: xuxiaohu@huawei.com
Xu Expires November 30, 2014 [Page 5]