< draft-ietf-isis-segment-routing-extensions-06.txt   draft-ietf-isis-segment-routing-extensions-07.txt >
IS-IS for IP Internets S. Previdi, Ed. IS-IS for IP Internets S. Previdi, Ed.
Internet-Draft C. Filsfils Internet-Draft C. Filsfils
Intended status: Standards Track A. Bashandy Intended status: Standards Track A. Bashandy
Expires: June 16, 2016 Cisco Systems, Inc. Expires: December 15, 2016 Cisco Systems, Inc.
H. Gredler H. Gredler
Individual Individual
S. Litkowski S. Litkowski
B. Decraene B. Decraene
Orange Orange
J. Tantsura J. Tantsura
Ericsson Ericsson
December 14, 2015 June 13, 2016
IS-IS Extensions for Segment Routing IS-IS Extensions for Segment Routing
draft-ietf-isis-segment-routing-extensions-06 draft-ietf-isis-segment-routing-extensions-07
Abstract Abstract
Segment Routing (SR) allows for a flexible definition of end-to-end Segment Routing (SR) allows for a flexible definition of end-to-end
paths within IGP topologies by encoding paths as sequences of paths within IGP topologies by encoding paths as sequences of
topological sub-paths, called "segments". These segments are topological sub-paths, called "segments". These segments are
advertised by the link-state routing protocols (IS-IS and OSPF). advertised by the link-state routing protocols (IS-IS and OSPF).
This draft describes the necessary IS-IS extensions that need to be This draft describes the necessary IS-IS extensions that need to be
introduced for Segment Routing. introduced for Segment Routing.
skipping to change at page 2, line 4 skipping to change at page 2, line 4
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on June 16, 2016. This Internet-Draft will expire on December 15, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Segment Routing Identifiers . . . . . . . . . . . . . . . . . 4 2. Segment Routing Identifiers . . . . . . . . . . . . . . . . . 3
2.1. Prefix Segment Identifier (Prefix-SID Sub-TLV) . . . . . 4 2.1. Prefix Segment Identifier (Prefix-SID Sub-TLV) . . . . . 4
2.1.1. Flags . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.1. Flags . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2. Prefix-SID Propagation . . . . . . . . . . . . . . . 8 2.1.2. Prefix-SID Propagation . . . . . . . . . . . . . . . 8
2.2. Adjacency Segment Identifier . . . . . . . . . . . . . . 9 2.2. Adjacency Segment Identifier . . . . . . . . . . . . . . 9
2.2.1. Adjacency Segment Identifier (Adj-SID) Sub-TLV . . . 9 2.2.1. Adjacency Segment Identifier (Adj-SID) Sub-TLV . . . 9
2.2.2. Adjacency Segment Identifiers in LANs . . . . . . . . 11 2.2.2. Adjacency Segment Identifiers in LANs . . . . . . . . 11
2.3. SID/Label Sub-TLV . . . . . . . . . . . . . . . . . . . . 13 2.3. SID/Label Sub-TLV . . . . . . . . . . . . . . . . . . . . 13
2.4. SID/Label Binding TLV . . . . . . . . . . . . . . . . . . 14 2.4. SID/Label Binding TLV . . . . . . . . . . . . . . . . . . 14
2.4.1. Flags . . . . . . . . . . . . . . . . . . . . . . . . 15 2.4.1. Flags . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.2. Weight . . . . . . . . . . . . . . . . . . . . . . . 16 2.4.2. Weight . . . . . . . . . . . . . . . . . . . . . . . 16
skipping to change at page 3, line 46 skipping to change at page 3, line 46
For example, when used in MPLS networks, SR paths do not require any For example, when used in MPLS networks, SR paths do not require any
LDP or RSVP-TE signaling. Still, SR can interoperate in the presence LDP or RSVP-TE signaling. Still, SR can interoperate in the presence
of LSPs established with RSVP or LDP. of LSPs established with RSVP or LDP.
This draft describes the necessary IS-IS extensions that need to be This draft describes the necessary IS-IS extensions that need to be
introduced for Segment Routing. introduced for Segment Routing.
Segment Routing architecture is described in Segment Routing architecture is described in
[I-D.ietf-spring-segment-routing]. [I-D.ietf-spring-segment-routing].
Segment Routing use cases are described in Segment Routing use cases are described in [RFC7855].
[I-D.filsfils-spring-segment-routing-use-cases].
2. Segment Routing Identifiers 2. Segment Routing Identifiers
Segment Routing architecture ([I-D.ietf-spring-segment-routing]) Segment Routing architecture ([I-D.ietf-spring-segment-routing])
defines different types of Segment Identifiers (SID). This document defines different types of Segment Identifiers (SID). This document
defines the IS-IS encodings for the IGP-Prefix-SID, the IGP- defines the IS-IS encodings for the IGP-Prefix-SID, the IGP-
Adjacency-SID, the IGP-LAN-Adjacency-SID and the Binding-SID. Adjacency-SID, the IGP-LAN-Adjacency-SID and the Binding-SID.
2.1. Prefix Segment Identifier (Prefix-SID Sub-TLV) 2.1. Prefix Segment Identifier (Prefix-SID Sub-TLV)
skipping to change at page 9, line 30 skipping to change at page 9, line 30
TLV-222 [RFC5120] TLV-222 [RFC5120]
TLV-23 [RFC5311] TLV-23 [RFC5311]
TLV-223 [RFC5311] TLV-223 [RFC5311]
TLV-141 [RFC5316] TLV-141 [RFC5316]
Multiple Adj-SID sub-TLVs MAY be associated with a single IS- Multiple Adj-SID sub-TLVs MAY be associated with a single IS-
neighbor. Examples where more than one Adj-SID may be used per IS- neighbor.
neighbor are described in
[I-D.filsfils-spring-segment-routing-use-cases].
2.2.1. Adjacency Segment Identifier (Adj-SID) Sub-TLV 2.2.1. Adjacency Segment Identifier (Adj-SID) Sub-TLV
The following format is defined for the Adj-SID sub-TLV: The following format is defined for the Adj-SID sub-TLV:
0 1 2 3 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 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 | Weight | | Type | Length | Flags | Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 11, line 17 skipping to change at page 11, line 17
eligible for protection (IP or MPLS). eligible for protection (IP or MPLS).
An SR capable router MAY allocate more than one Adj-SID to an An SR capable router MAY allocate more than one Adj-SID to an
adjacency. adjacency.
An SR capable router MAY allocate the same Adj-SID to different An SR capable router MAY allocate the same Adj-SID to different
adjacencies. adjacencies.
Examples of use of the Adj-SID sub-TLV are described in Examples of use of the Adj-SID sub-TLV are described in
[I-D.ietf-spring-segment-routing]. and [I-D.ietf-spring-segment-routing]. and
[I-D.previdi-6man-segment-routing-header]. [I-D.ietf-6man-segment-routing-header].
The F-flag is used in order for the router to advertise the The F-flag is used in order for the router to advertise the
outgoing encapsulation of the adjacency the Adj-SID is attached outgoing encapsulation of the adjacency the Adj-SID is attached
to. Use cases of the use of the F-flag are described in to.
[I-D.filsfils-spring-segment-routing-use-cases].
2.2.2. Adjacency Segment Identifiers in LANs 2.2.2. Adjacency Segment Identifiers in LANs
In LAN subnetworks, the Designated Intermediate System (DIS) is In LAN subnetworks, the Designated Intermediate System (DIS) is
elected and originates the Pseudonode-LSP (PN-LSP) including all elected and originates the Pseudonode-LSP (PN-LSP) including all
neighbors of the DIS. neighbors of the DIS.
When Segment Routing is used, each router in the LAN MAY advertise When Segment Routing is used, each router in the LAN MAY advertise
the Adj-SID of each of its neighbors. Since, on LANs, each router the Adj-SID of each of its neighbors. Since, on LANs, each router
only advertises one adjacency to the DIS (and doesn't advertise any only advertises one adjacency to the DIS (and doesn't advertise any
skipping to change at page 13, line 30 skipping to change at page 13, line 30
Each router within the level, by receiving the DIS PN LSP as well as Each router within the level, by receiving the DIS PN LSP as well as
the non-PN LSP of each router in the LAN, is capable of the non-PN LSP of each router in the LAN, is capable of
reconstructing the LAN topology as well as the set of Adj-SID each reconstructing the LAN topology as well as the set of Adj-SID each
router uses for each of its neighbors. router uses for each of its neighbors.
A label is encoded in 3 octets (in the 20 rightmost bits). A label is encoded in 3 octets (in the 20 rightmost bits).
An index is encoded in 4 octets. An index is encoded in 4 octets.
An ipv6 address SID is encoded in 16 octets (IPv6 Adj-SID is defined An ipv6 address SID is encoded in 16 octets (IPv6 Adj-SID is defined
in [I-D.previdi-6man-segment-routing-header]). in [I-D.ietf-6man-segment-routing-header]).
2.3. SID/Label Sub-TLV 2.3. SID/Label Sub-TLV
The SID/Label sub-TLV is present in the following sub-TLVs defined in The SID/Label sub-TLV is present in the following sub-TLVs defined in
this document: this document:
Binding TLV Section 2.4. Binding TLV Section 2.4.
SR Capability sub-TLV Section 3.1. SR Capability sub-TLV Section 3.1.
skipping to change at page 26, line 52 skipping to change at page 26, line 52
where: where:
I-Flag: MPLS IPv4 flag. If set, then the router is capable of I-Flag: MPLS IPv4 flag. If set, then the router is capable of
processing SR MPLS encapsulated IPv4 packets on all interfaces. processing SR MPLS encapsulated IPv4 packets on all interfaces.
V-Flag: MPLS IPv6 flag. If set, then the router is capable of V-Flag: MPLS IPv6 flag. If set, then the router is capable of
processing SR MPLS encapsulated IPv6 packets on all interfaces. processing SR MPLS encapsulated IPv6 packets on all interfaces.
H-Flag: SR-IPv6 flag. If set, then the router is capable of H-Flag: SR-IPv6 flag. If set, then the router is capable of
processing the IPv6 Segment Routing Header on all interfaces as processing the IPv6 Segment Routing Header on all interfaces as
defined in [I-D.previdi-6man-segment-routing-header]. defined in [I-D.ietf-6man-segment-routing-header].
One or more SRGB Descriptor entries, each of which have the One or more SRGB Descriptor entries, each of which have the
following format: following format:
Range: 3 octets. Range: 3 octets.
SID/Label sub-TLV (as defined in Section 2.3). SID/Label sub-TLV (as defined in Section 2.3).
SID/Label sub-TLV contains the first value of the SRGB while the SID/Label sub-TLV contains the first value of the SRGB while the
range contains the number of SRGB elements. The range value MUST be range contains the number of SRGB elements. The range value MUST be
skipping to change at page 27, line 43 skipping to change at page 27, line 43
preferable to add a new range rather than extending the previously preferable to add a new range rather than extending the previously
advertised range. advertised range.
The originating router MUST ensure the order is same after a graceful The originating router MUST ensure the order is same after a graceful
restart (using checkpointing, non-volatile storage or any other restart (using checkpointing, non-volatile storage or any other
mechanism) in order to guarantee the same order before and after GR. mechanism) in order to guarantee the same order before and after GR.
The originating router MUST NOT advertise overlapping ranges. The originating router MUST NOT advertise overlapping ranges.
When a router receives multiple overlapping ranges, it MUST conform When a router receives multiple overlapping ranges, it MUST conform
to the procedures defined in to the procedures defined in [I-D.ietf-spring-conflict-resolution].
[I-D.ginsberg-spring-conflict-resolution].
Here follows an example of advertisement of multiple ranges: Here follows an example of advertisement of multiple ranges:
The originating router advertises following ranges: The originating router advertises following ranges:
SR-Cap: range: 100, SID value: 100 SR-Cap: range: 100, SID value: 100
SR-Cap: range: 100, SID value: 1000 SR-Cap: range: 100, SID value: 1000
SR-Cap: range: 100, SID value: 500 SR-Cap: range: 100, SID value: 500
The receiving routers concatenate the ranges in the received The receiving routers concatenate the ranges in the received
order and build the SRGB as follows: order and build the SRGB as follows:
skipping to change at page 35, line 38 skipping to change at page 35, line 38
Steven Luong Steven Luong
Cisco Systems Inc. Cisco Systems Inc.
US US
Email: sluong@cisco.com Email: sluong@cisco.com
10. References 10. References
10.1. Normative References 10.1. Normative References
[I-D.ginsberg-spring-conflict-resolution]
Ginsberg, L., Psenak, P., and S. Previdi, "Segment Routing
Conflict Resolution", draft-ginsberg-spring-conflict-
resolution-00 (work in progress), October 2015.
[I-D.ietf-isis-prefix-attributes] [I-D.ietf-isis-prefix-attributes]
Ginsberg, L., Decraene, B., Filsfils, C., Litkowski, S., Ginsberg, L., Decraene, B., Previdi, S., Xu, X., and U.
Previdi, S., Xu, X., and U. Chunduri, "IS-IS Prefix Chunduri, "IS-IS Prefix Attributes for Extended IP and
Attributes for Extended IP and IPv6 Reachability", draft- IPv6 Reachability", draft-ietf-isis-prefix-attributes-04
ietf-isis-prefix-attributes-02 (work in progress), (work in progress), January 2016.
December 2015.
[I-D.ietf-spring-conflict-resolution]
Ginsberg, L., Psenak, P., Previdi, S., and M. Pilka,
"Segment Routing Conflict Resolution", draft-ietf-spring-
conflict-resolution-00 (work in progress), May 2016.
[I-D.ietf-spring-segment-routing] [I-D.ietf-spring-segment-routing]
Filsfils, C., Previdi, S., Decraene, B., Litkowski, S., Filsfils, C., Previdi, S., Decraene, B., Litkowski, S.,
and r. rjs@rob.sh, "Segment Routing Architecture", draft- and R. Shakir, "Segment Routing Architecture", draft-ietf-
ietf-spring-segment-routing-06 (work in progress), October spring-segment-routing-08 (work in progress), May 2016.
2015.
[ISO10589] [ISO10589]
International Organization for Standardization, International Organization for Standardization,
"Intermediate system to Intermediate system intra-domain "Intermediate system to Intermediate system intra-domain
routeing information exchange protocol for use in routeing information exchange protocol for use in
conjunction with the protocol for providing the conjunction with the protocol for providing the
connectionless-mode Network Service (ISO 8473)", ISO/ connectionless-mode Network Service (ISO 8473)", ISO/
IEC 10589:2002, Second Edition, Nov 2002. IEC 10589:2002, Second Edition, Nov 2002.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
skipping to change at page 37, line 5 skipping to change at page 37, line 5
[RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308,
DOI 10.17487/RFC5308, October 2008, DOI 10.17487/RFC5308, October 2008,
<http://www.rfc-editor.org/info/rfc5308>. <http://www.rfc-editor.org/info/rfc5308>.
[RFC6119] Harrison, J., Berger, J., and M. Bartlett, "IPv6 Traffic [RFC6119] Harrison, J., Berger, J., and M. Bartlett, "IPv6 Traffic
Engineering in IS-IS", RFC 6119, DOI 10.17487/RFC6119, Engineering in IS-IS", RFC 6119, DOI 10.17487/RFC6119,
February 2011, <http://www.rfc-editor.org/info/rfc6119>. February 2011, <http://www.rfc-editor.org/info/rfc6119>.
10.2. Informative References 10.2. Informative References
[I-D.filsfils-spring-segment-routing-use-cases] [I-D.ietf-6man-segment-routing-header]
Filsfils, C., Francois, P., Previdi, S., Decraene, B.,
Litkowski, S., Horneffer, M., Milojevic, I., Shakir, R.,
Ytti, S., Henderickx, W., Tantsura, J., Kini, S., and E.
Crabbe, "Segment Routing Use Cases", draft-filsfils-
spring-segment-routing-use-cases-01 (work in progress),
October 2014.
[I-D.ietf-spring-resiliency-use-cases]
Francois, P., Filsfils, C., Decraene, B., and r.
rjs@rob.sh, "Use-cases for Resiliency in SPRING", draft-
ietf-spring-resiliency-use-cases-02 (work in progress),
December 2015.
[I-D.previdi-6man-segment-routing-header]
Previdi, S., Filsfils, C., Field, B., Leung, I., Linkova, Previdi, S., Filsfils, C., Field, B., Leung, I., Linkova,
J., Kosugi, T., Vyncke, E., and D. Lebrun, "IPv6 Segment J., Kosugi, T., Vyncke, E., and D. Lebrun, "IPv6 Segment
Routing Header (SRH)", draft-previdi-6man-segment-routing- Routing Header (SRH)", draft-ietf-6man-segment-routing-
header-08 (work in progress), October 2015. header-01 (work in progress), March 2016.
[I-D.ietf-spring-resiliency-use-cases]
Francois, P., Filsfils, C., Decraene, B., and R. Shakir,
"Use-cases for Resiliency in SPRING", draft-ietf-spring-
resiliency-use-cases-03 (work in progress), April 2016.
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<http://www.rfc-editor.org/info/rfc3209>. <http://www.rfc-editor.org/info/rfc3209>.
[RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links
in Resource ReSerVation Protocol - Traffic Engineering in Resource ReSerVation Protocol - Traffic Engineering
(RSVP-TE)", RFC 3477, DOI 10.17487/RFC3477, January 2003, (RSVP-TE)", RFC 3477, DOI 10.17487/RFC3477, January 2003,
<http://www.rfc-editor.org/info/rfc3477>. <http://www.rfc-editor.org/info/rfc3477>.
skipping to change at page 37, line 45 skipping to change at page 37, line 36
[RFC5311] McPherson, D., Ed., Ginsberg, L., Previdi, S., and M. [RFC5311] McPherson, D., Ed., Ginsberg, L., Previdi, S., and M.
Shand, "Simplified Extension of Link State PDU (LSP) Space Shand, "Simplified Extension of Link State PDU (LSP) Space
for IS-IS", RFC 5311, DOI 10.17487/RFC5311, February 2009, for IS-IS", RFC 5311, DOI 10.17487/RFC5311, February 2009,
<http://www.rfc-editor.org/info/rfc5311>. <http://www.rfc-editor.org/info/rfc5311>.
[RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in [RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in
Support of Inter-Autonomous System (AS) MPLS and GMPLS Support of Inter-Autonomous System (AS) MPLS and GMPLS
Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316, Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316,
December 2008, <http://www.rfc-editor.org/info/rfc5316>. December 2008, <http://www.rfc-editor.org/info/rfc5316>.
[RFC7855] Previdi, S., Ed., Filsfils, C., Ed., Decraene, B.,
Litkowski, S., Horneffer, M., and R. Shakir, "Source
Packet Routing in Networking (SPRING) Problem Statement
and Requirements", RFC 7855, DOI 10.17487/RFC7855, May
2016, <http://www.rfc-editor.org/info/rfc7855>.
Authors' Addresses Authors' Addresses
Stefano Previdi (editor) Stefano Previdi (editor)
Cisco Systems, Inc. Cisco Systems, Inc.
Via Del Serafico, 200 Via Del Serafico, 200
Rome 00142 Rome 00142
Italy Italy
Email: sprevidi@cisco.com Email: sprevidi@cisco.com
Clarence Filsfils Clarence Filsfils
Cisco Systems, Inc. Cisco Systems, Inc.
Brussels Brussels
BE BE
Email: cfilsfil@cisco.com Email: cfilsfil@cisco.com
Ahmed Bashandy Ahmed Bashandy
Cisco Systems, Inc. Cisco Systems, Inc.
170, West Tasman Drive 170, West Tasman Drive
 End of changes. 21 change blocks. 
49 lines changed or deleted 39 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/