Internet DRAFT - draft-li-isis-spp-extensions
draft-li-isis-spp-extensions
Network Working Group Z. Li
Internet-Draft N. Wu
Intended status: Standards Track Huawei
Expires: September 22, 2016 March 21, 2016
IS-IS Extensions for Segment Path Programming
draft-li-isis-spp-extensions-00
Abstract
Segment Routing (SR) facilitates the steering of unicast traffic
through leveraging the source routing paradigm. As introduced in
Segment Path Programming (SPP), the concept of segment could be used
in a more generalized manner that may be beyond reachability. This
document describes the necessary IS-IS extensions for those cases.
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 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 September 22, 2016.
Copyright Notice
Copyright (c) 2016 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
Li & Wu Expires September 22, 2016 [Page 1]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
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. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Protocol Extensions . . . . . . . . . . . . . . . . . . . . . 3
3.1. Generalized SRGB . . . . . . . . . . . . . . . . . . . . 3
3.1.1. SRGB Universe Sub-TLV . . . . . . . . . . . . . . . . 4
3.2. Segment for Node Identification . . . . . . . . . . . . . 5
3.3. Segment for Interface Identification . . . . . . . . . . 6
3.4. Segment for Tunnel Identification . . . . . . . . . . . . 7
4. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 8
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
6. Security Considerations . . . . . . . . . . . . . . . . . . . 8
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.1. Normative References . . . . . . . . . . . . . . . . . . 9
8.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
Segment Routing (SR), introduced in [I-D.ietf-spring-segment-routing]
facilitates the steering of unicast traffic through leveraging the
source routing paradigm. As introduced in Segment Path Programming
(SPP) [I-D.li-spring-segment-path-programming], the concept of
segment could be used in a more generalized manner that may be beyond
reachability. This document describes the necessary IS-IS extensions
for those cases.
2. Terminology
o SID: Segment Identifier
o SR: Segment Routing
o SRGB: Segment Routing Global Block
o GSID: Generalized Segment Identifier
o GSRGB: Generalized Segment Routing Global Block
Li & Wu Expires September 22, 2016 [Page 2]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
o SPP: Segment Path Programming
3. Protocol Extensions
3.1. Generalized SRGB
As stated in [I-D.li-spring-segment-path-programming], a generalized
segment is just an indicator for specific procedure which may serve
certain application. And this segment could be used in the control
plane and doesn't have to be mapped to a MPLS label in the forwarding
plane.
It would be reasonable that this generalized segments come from an
orthogonal SRGB since their definition and usages are completely
different from the traditional ones. To do so, instead of slicing a
unified SRGB into application specific pieces, multiple "SRGB
universes" are defined for different applications.
The SR Capabilities Sub-TLV defined in
[I-D.ietf-isis-segment-routing-extensions] has following format:
Li & Wu Expires September 22, 2016 [Page 3]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
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 | Length | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Range |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID/Label Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// ... ... //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Range |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID/Label Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB Universe Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where:
Type: TBD, suggested value 22
Length: variable.
Flags: 1 octet of flags. The following are defined:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|I|V|H|G| |
+-+-+-+-+-+-+-+-+
Where:
G-Flag: Generalized SRGB flag. If set, then this SRGB is used
in generalized manner beyond reachability.
By default, this bit is UNSET.
3.1.1. SRGB Universe Sub-TLV
A SRGB Universe Sub-TLV may be attached to a SR Capabilities Sub-TLV
to indicate the corresponding SRGB expressed is used as a generalized
SRGB which serves for the application specified by SRGB Identifier.
It is possible that multiple instances of the SRGB Universe Sub-TLV
are attached to the same SR Capabilities Sub-TLV, which means the
same but orthogonal ranges will be used for different applications.
The SRGB Universe sub-TLV has following format:
Li & Wu Expires September 22, 2016 [Page 4]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
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 | Length | SRGB Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where:
Type: TBD
Length: variale
SRGB Identifier: 2 octets field. The following are defined:
+------------+---------------------------------------+
| Identifier | SRGB Universe |
+------------+---------------------------------------+
| 0 | Reserved |
| 1 | Suggested for Node Identification |
| 2 | Suggested for Interface Identification|
| 3 | Suggested for Tunnel Identification |
| 4-32767 | Reserved for assignments by IANA |
|32768-65535 | Reserved for proprietary features |
+------------+---------------------------------------+
3.2. Segment for Node Identification
As described in [I-D.li-spring-segment-path-programming], a node SID
can be enhanced to map an specified application in the control plane
to a forwarding entry in the forwarding plane. Whether to map the
SID to a MPLS label can be determined by the local policy of the
node. Protocol extensions should be introduced to specify if the
Segment maps to the MPLS label when advertising SRGBs or all kinds of
Segments.
The Prefix-SID sub-TLV has the following format:
Li & Wu Expires September 22, 2016 [Page 5]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
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 | Length | Flags | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID/Index/Label (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB Universe Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
Type: TBD, suggested value 3
Length: variable.
Flags: 1 octet field of following flags:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|R|N|P|E|V|L|G| |
+-+-+-+-+-+-+-+-+
Where:
G-Flag: Generalized Segment Flag. When set, this corresponding
SID is used as a generalized one and SHOULD NOT be mapped onto
a MPLS label. The application that this GSID is bind to SHOULD
be specified by a SRGB Universe sub-TLV following the Prefix-SID
sub-TLV.
3.3. Segment for Interface Identification
In those applications which need a specified interface or a set of
interfaces, a GSID can be used to represent the mapping relationship.
A new SID called Interface-SID Sub-TLV is introduced in this document
to represent certain interface of a segment routing node. The
Interface-SID Sub-TLV may be used in the Binding TLV
[I-D.ietf-isis-segment-routing-extensions] and followed by a SRGB
Universe Sub-TLV to indicate the mapping relationship with an
application.
The Interface-SID Sub-TLV has the following format:
Li & Wu Expires September 22, 2016 [Page 6]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
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 | Length |V|L|G| Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| System-ID (6 octets) |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Interface ID (32 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID/Label Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB Universe Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where:
Type: TBD
Length: variable.
Flags: 1 octet field of following flags:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|V|L|G| |
+-+-+-+-+-+-+-+-+
Where:
V-Flag: Value flag. If set, then the Prefix-SID carries a
value (instead of an index). By default the flag is UNSET.
L-Flag: Local flag. If set, then the value/index carried by
the Prefix-SID has local significance. By default the flag is
UNSET.
G-Flag: Generalized Segment Flag. When set, this corresponding
SID is used as a generalized one and SHOULD NOT be mapped onto
a MPLS label. The application that this GSID is bind to SHOULD
be specified by a SRGB Universe sub-TLV following the
Interface-SID Sub-TLV.
Interface ID: The identifier assigned to the interface by the router
specified by the system-ID.
3.4. Segment for Tunnel Identification
Similarly, a GSID may be binded to a tunnel like the way stated in
[isis-tunnel-segment], but it can serve for a different application
instead of reachability.
Li & Wu Expires September 22, 2016 [Page 7]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tunnel-SID Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID/Label Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB Universe Sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Flags: 1 octet field of following flags:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|V|L|G| |
+-+-+-+-+-+-+-+-+
Add the Generalized Flag in the Flags field with the same sematics
as above.
4. Procedures
The SRGB Universe sub-TLV defined in this document MUST be carried
when application specified scenarios concerned. The missing of this
sub-TLV SHOULD be regarded as an error and logged. Multiple
instances of this sub-TLV MAY co-exist only when several different
applications involved. A GSID SHOULD be invalid unless it is
properly contained in the corresponding "Universe".
5. IANA Considerations
+-----------+----------------------------+----------+
| TLV Code | Description | Length |
+-----------+----------------------------+----------+
| TBD | SRGB Universe Sub-TLV | 2 |
| TBD | Interface-SID Sub-TLV | variable |
+-----------+----------------------------+----------+
+-----------+---------------------------------------+
| SRGB ID | Description
+-----------+---------------------------------------+
| 1 | SRGB for Node Identification |
| 2 | SRGB for Interface Identification |
| 3 | SRGB for Tunnel Identification |
+-----------+---------------------------------------+
6. Security Considerations
TBD.
Li & Wu Expires September 22, 2016 [Page 8]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
7. Acknowledgments
TBD.
8. References
8.1. Normative References
[I-D.ietf-isis-segment-routing-extensions]
Previdi, S., Filsfils, C., Bashandy, A., Gredler, H.,
Litkowski, S., Decraene, B., and J. Tantsura, "IS-IS
Extensions for Segment Routing", draft-ietf-isis-segment-
routing-extensions-06 (work in progress), December 2015.
[I-D.ietf-spring-segment-routing]
Filsfils, C., Previdi, S., Decraene, B., Litkowski, S.,
and R. Shakir, "Segment Routing Architecture", draft-ietf-
spring-segment-routing-07 (work in progress), December
2015.
[I-D.li-spring-segment-path-programming]
Li, Z. and I. Milojevic, "Segment Path Programming (SPP)",
draft-li-spring-segment-path-programming-00 (work in
progress), October 2015.
[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>.
8.2. Informative References
[I-D.ietf-isis-te-metric-extensions]
Previdi, S., Giacalone, S., Ward, D., Drake, J., and W.
Wu, "IS-IS Traffic Engineering (TE) Metric Extensions",
draft-ietf-isis-te-metric-extensions-11 (work in
progress), February 2016.
[I-D.li-spring-tunnel-segment]
Li, Z. and N. Wu, "Tunnel Segment in Segment Routing",
draft-li-spring-tunnel-segment-01 (work in progress),
March 2016.
Authors' Addresses
Li & Wu Expires September 22, 2016 [Page 9]
Internet-DraftIS-IS Extensions for Segment Path Programming March 2016
Zhenbin Li
Huawei
Huawei Bld., No.156 Beiqing Rd.
Beijing 100095
China
Email: lizhenbin@huawei.com
Nan Wu
Huawei
Huawei Bld., No.156 Beiqing Rd.
Beijing 100095
China
Email: eric.wu@huawei.com
Li & Wu Expires September 22, 2016 [Page 10]