draft-ietf-mpls-spring-lsp-ping-06.txt   draft-ietf-mpls-spring-lsp-ping-07.txt 
Network Work group N. Kumar, Ed. Network Work group N. Kumar, Ed.
Internet-Draft C. Pignataro, Ed. Internet-Draft C. Pignataro, Ed.
Intended status: Standards Track Cisco Intended status: Standards Track Cisco
Expires: February 22, 2018 G. Swallow Expires: March 23, 2018 G. Swallow
Individual Southend Technical Center
N. Akiya N. Akiya
Big Switch Networks Big Switch Networks
S. Kini S. Kini
Individual Individual
M. Chen M. Chen
Huawei Huawei
August 21, 2017 September 19, 2017
Label Switched Path (LSP) Ping/Traceroute for Segment Routing Networks Label Switched Path (LSP) Ping/Traceroute for Segment Routing IGP Prefix
with MPLS Data-plane and Adjacency SIDs with MPLS Data-plane
draft-ietf-mpls-spring-lsp-ping-06 draft-ietf-mpls-spring-lsp-ping-07
Abstract Abstract
Segment Routing architecture leverages the source routing and Segment Routing architecture leverages the source routing and
tunneling paradigms and can be directly applied to MPLS data plane. tunneling paradigms and can be directly applied to MPLS data plane.
A node steers a packet through a controlled set of instructions A node steers a packet through a controlled set of instructions
called segments, by prepending the packet with a Segment Routing called segments, by prepending the packet with a Segment Routing
header. header.
The segment assignment and forwarding semantic nature of Segment The segment assignment and forwarding semantic nature of Segment
skipping to change at page 1, line 43 skipping to change at page 1, line 43
plane. plane.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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 https://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 February 22, 2018. This Internet-Draft will expire on March 23, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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 (https://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. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 2. Requirements notation . . . . . . . . . . . . . . . . . . . . 3
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
4. Challenges with Existing mechanism . . . . . . . . . . . . . 4 4. Challenges with Existing mechanism . . . . . . . . . . . . . 4
4.1. Path validation in Segment Routing networks . . . . . . . 4 4.1. Path validation in Segment Routing networks . . . . . . . 4
4.2. Service Label . . . . . . . . . . . . . . . . . . . . . . 5
5. Segment ID sub-TLV . . . . . . . . . . . . . . . . . . . . . 5 5. Segment ID sub-TLV . . . . . . . . . . . . . . . . . . . . . 5
5.1. IPv4 IGP-Prefix Segment ID . . . . . . . . . . . . . . . 6 5.1. IPv4 IGP-Prefix Segment ID . . . . . . . . . . . . . . . 5
5.2. IPv6 IGP-Prefix Segment ID . . . . . . . . . . . . . . . 6 5.2. IPv6 IGP-Prefix Segment ID . . . . . . . . . . . . . . . 6
5.3. IGP-Adjacency Segment ID . . . . . . . . . . . . . . . . 7 5.3. IGP-Adjacency Segment ID . . . . . . . . . . . . . . . . 7
6. Extension to Downstream Detailed Mapping TLV . . . . . . . . 9 6. Extension to Downstream Detailed Mapping TLV . . . . . . . . 8
7. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 9 7. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.1. FECs in Target FEC Stack TLV . . . . . . . . . . . . . . 10 7.1. FECs in Target FEC Stack TLV . . . . . . . . . . . . . . 9
7.2. FEC Stack Change sub-TLV . . . . . . . . . . . . . . . . 10 7.2. FEC Stack Change sub-TLV . . . . . . . . . . . . . . . . 10
7.3. Segment ID POP Operation . . . . . . . . . . . . . . . . 11 7.3. Segment ID POP Operation . . . . . . . . . . . . . . . . 10
7.4. Segment ID Check . . . . . . . . . . . . . . . . . . . . 11 7.4. Segment ID Check . . . . . . . . . . . . . . . . . . . . 10
7.5. TTL Consideration for traceroute . . . . . . . . . . . . 14 7.5. TTL Consideration for traceroute . . . . . . . . . . . . 14
8. Issues with non-forwarding labels . . . . . . . . . . . . . . 15 8. Backward Compatibility with non Segment Routing devices . . . 15
9. Backward Compatibility with non Segment Routing devices . . . 15 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 9.1. New Target FEC Stack Sub-TLVs . . . . . . . . . . . . . . 15
10.1. New Target FEC Stack Sub-TLVs . . . . . . . . . . . . . 15 9.2. Protocol in Label Stack Sub-TLV of Downstream Detailed
10.2. Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping TLV . . . . . . . . . . . . . . . . . . . . . . . 15
Mapping TLV . . . . . . . . . . . . . . . . . . . . . . 16 9.3. Return Code . . . . . . . . . . . . . . . . . . . . . . . 16
10.3. Return Code . . . . . . . . . . . . . . . . . . . . . . 16 10. Security Considerations . . . . . . . . . . . . . . . . . . . 16
11. Security Considerations . . . . . . . . . . . . . . . . . . . 17 11. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 16
12. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 17 12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17
13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 17
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 13.1. Normative References . . . . . . . . . . . . . . . . . . 17
14.1. Normative References . . . . . . . . . . . . . . . . . . 17 13.2. Informative References . . . . . . . . . . . . . . . . . 18
14.2. Informative References . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19
1. Introduction 1. Introduction
[I-D.ietf-spring-segment-routing] introduces and explains Segment [I-D.ietf-spring-segment-routing] introduces and explains Segment
Routing architecture that leverages the source routing and tunneling Routing architecture that leverages the source routing and tunneling
paradigms. A node steers a packet through a controlled set of paradigms. A node steers a packet through a controlled set of
instructions called segments, by prepending the packet with Segment instructions called segments, by prepending the packet with Segment
Routing header. A detailed definition about Segment Routing Routing header. A detailed definition about Segment Routing
architecture is available in [I-D.ietf-spring-segment-routing] architecture is available in [I-D.ietf-spring-segment-routing]
skipping to change at page 3, line 30 skipping to change at page 3, line 28
Segment Routing header is the label stack. Segment Routing header is the label stack.
"Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures" "Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures"
[RFC8029] defines a simple and efficient mechanism to detect data [RFC8029] defines a simple and efficient mechanism to detect data
plane failures in Label Switched Paths (LSP) by specifying plane failures in Label Switched Paths (LSP) by specifying
information to be carried in an MPLS "echo request" and "echo reply" information to be carried in an MPLS "echo request" and "echo reply"
for the purposes of fault detection and isolation. Mechanisms for for the purposes of fault detection and isolation. Mechanisms for
reliably sending the echo reply are defined. The functionality reliably sending the echo reply are defined. The functionality
defined in [RFC8029] is modeled after the ping/traceroute paradigm defined in [RFC8029] is modeled after the ping/traceroute paradigm
(ICMP echo request [RFC0792]) and is typically referred to as LSP (ICMP echo request [RFC0792]) and is typically referred to as LSP
ping and LSP traceroute. [RFC8029] supports hierarchal and stitching ping and LSP traceroute. [RFC8029] supports hierarchical and
LSPs. stitching LSPs.
Unlike LDP or RSVP which are the other well-known MPLS control plane Unlike LDP or RSVP which are the other well-known MPLS control plane
protocols, the basis of segment ID assignment in Segment Routing protocols, the basis of segment ID assignment in Segment Routing
architecture is not hop-by-hop always. Depending on the type of architecture is not always on hop-by-hop basis. Depending on the
segment ID, the assignment can be unique to the node or within the type of segment ID, the assignment can be unique to the node or
domain. within a domain.
This nature of Segment Routing raises additional consideration for This nature of Segment Routing raises additional consideration for
fault detection and isolation in Segment Routing network. This fault detection and isolation in Segment Routing network. This
document illustrates the problem and describe a mechanism to perform document illustrates the problem and describes a mechanism to perform
LSP Ping and Traceroute on Segment Routing network over MPLS data LSP Ping and Traceroute on Segment Routing network over MPLS data
plane. plane.
2. Requirements notation 2. Requirements notation
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Terminology 3. Terminology
skipping to change at page 5, line 21 skipping to change at page 5, line 21
the Adjacency Segment ID 9124 is misprogrammed in R2 to send the the Adjacency Segment ID 9124 is misprogrammed in R2 to send the
packet to R1 or R3, it will still be delivered to R8 but is not via packet to R1 or R3, it will still be delivered to R8 but is not via
the expected path. the expected path.
MPLS traceroute may help with detecting such deviation in above MPLS traceroute may help with detecting such deviation in above
mentioned scenario. However, in a different example, it may not be mentioned scenario. However, in a different example, it may not be
helpful. For example if R3, due to misprogramming, forwards packet helpful. For example if R3, due to misprogramming, forwards packet
with Adjacency Segment ID 9236 via link L1 while it is expected to be with Adjacency Segment ID 9236 via link L1 while it is expected to be
forwarded over Link L2. forwarded over Link L2.
4.2. Service Label
A Segment ID can represent a service based instruction. A Segment
Routing header can have label stack entries where the label
represents a service to be applied along the path. Since these
labels are part of the label stack, they can influence the path taken
by a packet and consequently have implications on MPLS OAM. Service
Label is left for future study.
5. Segment ID sub-TLV 5. Segment ID sub-TLV
The format of the following Segment ID sub-TLVs follows the The format of the following Segment ID sub-TLVs follows the
philosophy of Target FEC Stack TLV carrying FECs corresponding to philosophy of Target FEC Stack TLV carrying FECs corresponding to
each label in the label stack. When operated with the procedures each label in the label stack. When operated with the procedures
defined in [RFC8029], this allows LSP ping/traceroute operations to defined in [RFC8029], this allows LSP ping/traceroute operations to
function when Target FEC Stack TLV contains more FECs than received function when Target FEC Stack TLV contains more FECs than received
label stack at responder nodes. label stack at responder nodes.
Three new sub-TLVs are defined for Target FEC Stack TLVs (Type 1), Three new sub-TLVs are defined for Target FEC Stack TLVs (Type 1),
Reverse-Path Target FEC Stack TLV (Type 16) and Reply Path TLV (Type Reverse-Path Target FEC Stack TLV (Type 16) and Reply Path TLV (Type
21). 21).
sub-Type Value Field sub-Type Value Field
-------- --------------- -------- ---------------
34 IPv4 IGP-Prefix Segment ID 34 IPv4 IGP-Prefix Segment ID
35 IPv6 IGP-Prefix Segment ID 35 IPv6 IGP-Prefix Segment ID
36 IGP-Adjacency Segment ID 36 IGP-Adjacency Segment ID
Service Segments and FRR will be considered in future version.
5.1. IPv4 IGP-Prefix Segment ID 5.1. IPv4 IGP-Prefix Segment ID
The format is as below: The format is as below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Prefix | | IPv4 Prefix |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Prefix Length | Protocol | Reserved | |Prefix Length | Protocol | Reserved |
skipping to change at page 7, line 37 skipping to change at page 7, line 23
Protocol Protocol
Set to 1, if the Responder MUST perform FEC validation using OSPF Set to 1, if the Responder MUST perform FEC validation using OSPF
as IGP protocol. Set to 2, if the Responder MUST perform Egress as IGP protocol. Set to 2, if the Responder MUST perform Egress
FEC validation using ISIS as IGP protocol. Set to 0, if Responder FEC validation using ISIS as IGP protocol. Set to 0, if Responder
can use any IGP protocol for Egress FEC validation. can use any IGP protocol for Egress FEC validation.
5.3. IGP-Adjacency Segment ID 5.3. IGP-Adjacency Segment ID
The format is as below: This Sub-TLV is applicable for any IGP-Adjacency defined in section
3.5 of [I-D.ietf-spring-segment-routing]. The format is as below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Adj. Type | Protocol | Reserved | | Adj. Type | Protocol | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local Interface ID (4 or 16 octets) | | Local Interface ID (4 or 16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remote Interface ID (4 or 16 octets) | | Remote Interface ID (4 or 16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ ~ ~ ~
| Advertising Node Identifier (4 or 6 octets) | | Advertising Node Identifier (4 or 6 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ ~ ~ ~
| Receiving Node Identifier (4 or 6 octets) | | Receiving Node Identifier (4 or 6 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Adj. Type (Adjacency Type) Adj. Type (Adjacency Type)
Set to 1, when the Adjacency Segment is Parallel Adjacency as Set to 1, when the Adjacency Segment is Parallel Adjacency as
defined in Section 3.5.1 of [I-D.ietf-spring-segment-routing]. defined in Section 3.4.1 of [I-D.ietf-spring-segment-routing].
Set to 4, when the Adjacency segment is IPv4 based and is not a Set to 4, when the Adjacency segment is IPv4 based and is not a
parallel adjacency. Set to 6, when the Adjacency segment is IPv6 parallel adjacency. Set to 6, when the Adjacency segment is IPv6
based and is not a parallel adjacency. Set to 0, when the based and is not a parallel adjacency. Set to 0, when the
Adjacency segment is over unnumbered interface. Adjacency segment is over unnumbered interface.
Protocol Protocol
Set to 1, if the Responder MUST perform FEC validation using OSPF Set to 1, if the Responder MUST perform FEC validation using OSPF
as IGP protocol. Set to 2, if the Responder MUST perform Egress as IGP protocol. Set to 2, if the Responder MUST perform Egress
FEC validation using ISIS as IGP protocol. Set to 0, if Responder FEC validation using ISIS as IGP protocol. Set to 0, if Responder
can use any IGP protocol for Egress FEC validation. can use any IGP protocol for Egress FEC validation.
Local Interface ID Local Interface ID
An identifier that is assigned by local LSR for a link on which An identifier that is assigned by local LSR for a link on which
Adjacency Segment ID is bound. This field is set to local link Adjacency Segment ID is bound. This field is set to local link
address (IPv4 or IPv6). Incase of unnumbered, 32 bit link address (IPv4 or IPv6). Incase of unnumbered, 32 bit link
identifier defined in [RFC4203], [RFC5307] is used. If the identifier defined in [RFC4203], [RFC5307] is used. If the
Adjacency Segment ID represents parallel adjacencies Adjacency Segment ID represents parallel adjacencies
(Section 3.5.1 of [I-D.ietf-spring-segment-routing]) this field (Section 3.4.1 of [I-D.ietf-spring-segment-routing]) this field
MUST be set to 4 bytes of zero. MUST be set to 4 bytes of zero.
Remote Interface ID Remote Interface ID
An identifier that is assigned by remote LSR for a link on which An identifier that is assigned by remote LSR for a link on which
Adjacency Segment ID is bound. This field is set to remote Adjacency Segment ID is bound. This field is set to remote
(downstream neighbor) link address (IPv4 or IPv6). In case of (downstream neighbor) link address (IPv4 or IPv6). In case of
unnumbered, 32 bit link identifier defined in [RFC4203], [RFC5307] unnumbered, 32 bit link identifier defined in [RFC4203], [RFC5307]
is used. If the Adjacency Segment ID represents parallel is used. If the Adjacency Segment ID represents parallel
adjacencies (Section 3.5.1 of [I-D.ietf-spring-segment-routing]) adjacencies (Section 3.4.1 of [I-D.ietf-spring-segment-routing])
this field MUST be set to 4 bytes of zero. this field MUST be set to 4 bytes of zero.
Advertising Node Identifier Advertising Node Identifier
Specifies the advertising node identifier. When Protocol is set Specifies the advertising node identifier. When Protocol is set
to 1, then the 32 rightmost bits represent OSPF Router ID and if to 1, then the 32 rightmost bits represent OSPF Router ID and if
protocol is set to 2, this field carries 48 bit ISIS System ID. protocol is set to 2, this field carries 48 bit ISIS System ID.
Receiving Node Identifier Receiving Node Identifier
skipping to change at page 9, line 28 skipping to change at page 8, line 51
1, then the 32 rightmost bits represent OSPF Router ID and if 1, then the 32 rightmost bits represent OSPF Router ID and if
protocol is set to 2, this field carries 48 bit ISIS System ID. protocol is set to 2, this field carries 48 bit ISIS System ID.
6. Extension to Downstream Detailed Mapping TLV 6. Extension to Downstream Detailed Mapping TLV
In an echo reply, the Downstream Mapping TLV [RFC8029] is used to In an echo reply, the Downstream Mapping TLV [RFC8029] is used to
report for each interface over which a FEC could be forwarded. For a report for each interface over which a FEC could be forwarded. For a
FEC, there are multiple protocols that may be used to distribute FEC, there are multiple protocols that may be used to distribute
label mapping. The "Protocol" field of the Downstream Detailed label mapping. The "Protocol" field of the Downstream Detailed
Mapping TLV is used to return the protocol that is used to distribute Mapping TLV is used to return the protocol that is used to distribute
a specific a label. The following protocols are defined in the label carried in "Downstream Label" field. The following
Section 3.4.1.2 of [RFC8029]: protocols are defined in Section 3.4.1.2 of [RFC8029]:
Protocol # Signaling Protocol Protocol # Signaling Protocol
---------- ------------------ ---------- ------------------
0 Unknown 0 Unknown
1 Static 1 Static
2 BGP 2 BGP
3 LDP 3 LDP
4 RSVP-TE 4 RSVP-TE
With segment routing, OSPF or ISIS can be used for label With segment routing, OSPF or ISIS can be used for label
skipping to change at page 10, line 36 skipping to change at page 10, line 9
When a received echo reply contains FEC Stack Change TLV with When a received echo reply contains FEC Stack Change TLV with
one or more of original segment(s) being popped, initiator MAY one or more of original segment(s) being popped, initiator MAY
remove corresponding FEC(s) from Target FEC Stack TLV in the remove corresponding FEC(s) from Target FEC Stack TLV in the
next (TTL+1) traceroute request as defined in Section 4.6 of next (TTL+1) traceroute request as defined in Section 4.6 of
[RFC8029]. [RFC8029].
When a received echo reply does not contain FEC Stack Change When a received echo reply does not contain FEC Stack Change
TLV, initiator MUST NOT attempt to remove FEC(s) from Target TLV, initiator MUST NOT attempt to remove FEC(s) from Target
FEC Stack TLV in the next (TTL+1) traceroute request. FEC Stack TLV in the next (TTL+1) traceroute request.
As defined in [I-D.ietf-ospf-segment-routing-extensions] and
[I-D.ietf-isis-segment-routing-extensions], Prefix SID can be
advertised as absolute value, index or as range. In any of these
cases, Initiator MUST derive the Prefix mapped to the Prefix SID and
use it in IGP-Prefix Segment ID defined in Section 5.1 and 5.2.
7.2. FEC Stack Change sub-TLV 7.2. FEC Stack Change sub-TLV
Section 3.4.1.3 of [RFC8029] defines FEC Stack Change sub-TLV that a Section 3.4.1.3 of [RFC8029] defines FEC Stack Change sub-TLV that a
router must include when the FEC stack changes. router must include when the FEC stack changes.
The network node which advertised the Node Segment ID is responsible The network node which advertised the Node Segment ID is responsible
for generating FEC Stack Change sub-TLV of pop operation for Node for generating FEC Stack Change sub-TLV of pop operation for Node
Segment ID, regardless of if PHP is enabled or not. Segment ID, regardless of whether PHP is enabled or not.
The network node that is immediate downstream of the node which The network node that is immediate downstream of the node which
advertised the Adjacency Segment ID is responsible for generating FEC advertised the Adjacency Segment ID is responsible for generating FEC
Stack Change sub-TLV of &pop& operation for Adjacency Segment ID. Stack Change sub-TLV for "POP" operation for Adjacency Segment ID.
7.3. Segment ID POP Operation 7.3. Segment ID POP Operation
The forwarding semantic of Node Segment ID with PHP flag is The forwarding semantic of Node Segment ID with PHP flag is
equivalent to usage of implicit Null in MPLS protocols. Adjacency equivalent to usage of implicit Null in MPLS protocols. Adjacency
Segment ID is also similar in a sense that it can be thought as next Segment ID is also similar in a sense that it can be thought of as
hop destined locally allocated segment that has PHP enabled. locally allocated segment that has PHP enabled destined for next hop
Procedures described in Section 4.4 of [RFC8029] relies on Stack-D IGP adjacency node. Procedures described in Section 4.4 of [RFC8029]
and Stack-R explicitly having Implicit Null value. It may simplify relies on Stack-D and Stack-R explicitly having Implicit Null value.
implementations to reuse Implicit Null for Node Segment ID PHP and It may simplify implementations to reuse Implicit Null for Node
Adjacency Segment ID cases. Segment ID PHP and Adjacency Segment ID cases.
7.4. Segment ID Check 7.4. Segment ID Check
This section updates the procedure defined in Step 6 of Section 4.4. This section updates the procedure defined in Steps 3 to 5 of
of [RFC8029] Section 4.4.1 of [RFC8029]
If the Label-stack-depth is 0 and Target FEC Stack Sub-TLV at FEC- If the Label-stack-depth is 0 and Target FEC Stack Sub-TLV at FEC-
stack-depth is 34 (IPv4 IGP-Prefix Segment ID), the responder stack-depth is 34 (IPv4 IGP-Prefix Segment ID), the responder
should set Best return code to 10, "Mapping for this FEC is not should set Best return code to 10, "Mapping for this FEC is not
the given label at stack-depth <RSC>" if any below conditions the given label at stack-depth <RSC>" if any below conditions
fail: fail:
/* The responder LSR is to check if it is the egress of the IPv4 /* The responder LSR is to check if it is the egress of the IPv4
IGP-Prefix Segment ID described in the Target FEC Stack Sub-TLV, IGP-Prefix Segment ID described in the Target FEC Stack Sub-TLV,
and if the FEC was advertised with the PHP bit set.*/ and if the FEC was advertised with the PHP bit set.*/
skipping to change at page 11, line 43 skipping to change at page 11, line 16
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 0, Use any locally enabled IGP protocol. Sub-TLV is 0, Use any locally enabled IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 1, Use OSPF as IGP protocol. Sub-TLV is 1, Use OSPF as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 2, Use ISIS as IGP protocol. Sub-TLV is 2, Use ISIS as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is any other value, it MUST be treated as Protocol
value of 0.
} }
* Validate that Node Segment ID is advertised with No-PHP flag { * Validate that Node Segment ID is advertised with No-PHP flag {
+ When Protocol is OSPF, NP-flag defined in Section 5 of + When Protocol is OSPF, NP-flag defined in Section 5 of
[I-D.ietf-ospf-segment-routing-extensions] should be set to [I-D.ietf-ospf-segment-routing-extensions] MUST be set to 0.
0.
+ When Protocol is ISIS, P-Flag defined in Section 2.1 of + When Protocol is ISIS, P-Flag defined in Section 2.1 of
[I-D.ietf-isis-segment-routing-extensions] should be set to [I-D.ietf-isis-segment-routing-extensions] MUST be set to 0.
0.
} }
If the Label-stack-depth is more than 0 and Target FEC Stack Sub- If the Label-stack-depth is more than 0 and Target FEC Stack Sub-
TLV at FEC-stack-depth is 34 (IPv4 IGP-Prefix Segment ID), the TLV at FEC-stack-depth is 34 (IPv4 IGP-Prefix Segment ID), the
responder is to set Best return code to 10 if any below conditions responder is to set Best return code to 10 if any below conditions
fail: fail:
* Validate that Node Segment ID is advertised for IPv4 Prefix by * Validate that Node Segment ID is advertised for IPv4 Prefix by
IGP Protocol{ IGP Protocol{
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 0, Use any locally enabled IGP protocol. Sub-TLV is 0, Use any locally enabled IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 1, Use OSPF as IGP protocol. Sub-TLV is 1, Use OSPF as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 2, Use ISIS as IGP protocol. Sub-TLV is 2, Use ISIS as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is any other value, it MUST be treated as Protocol
value of 0.
} }
If the Label-stack-depth is 0 and Target FEC Sub-TLV at FEC-stack- If the Label-stack-depth is 0 and Target FEC Sub-TLV at FEC-stack-
depth is 35 (IPv6 IGP-Prefix Segment ID), set Best return code to depth is 35 (IPv6 IGP-Prefix Segment ID), set Best return code to
10 if any below conditions fail: 10 if any below conditions fail:
/* The LSR needs to check if its being a tail-end for the LSP and /* The LSR needs to check if its being a tail-end for the LSP and
have the prefix advertised with PHP bit set*/ have the prefix advertised with PHP bit set*/
* Validate that Node Segment ID is advertised for IPv6 Prefix by * Validate that Node Segment ID is advertised for IPv6 Prefix by
skipping to change at page 12, line 49 skipping to change at page 12, line 26
+ When protocol field in received IPv6 IGP-Prefix Segment ID + When protocol field in received IPv6 IGP-Prefix Segment ID
Sub-TLV is 0, Use any locally enabled IGP protocol. Sub-TLV is 0, Use any locally enabled IGP protocol.
+ When protocol field in received IPv6 IGP-Prefix Segment ID + When protocol field in received IPv6 IGP-Prefix Segment ID
Sub-TLV is 1, Use OSPF as IGP protocol. Sub-TLV is 1, Use OSPF as IGP protocol.
+ When protocol field in received IPv6 IGP-Prefix Segment ID + When protocol field in received IPv6 IGP-Prefix Segment ID
Sub-TLV is 2, Use ISIS as IGP protocol. Sub-TLV is 2, Use ISIS as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is any other value, it MUST be treated as Protocol
value of 0.
} }
* Validate that Node Segment ID is advertised of PHP bit. * Validate that Node Segment ID is advertised of PHP bit.
If the Label-stack-depth is more than 0 and Target FEC Sub-TLV at If the Label-stack-depth is more than 0 and Target FEC Sub-TLV at
FEC-stack-depth is 35 (IPv6 IGP-Prefix Segment ID), set Best FEC-stack-depth is 35 (IPv6 IGP-Prefix Segment ID), set Best
return code to 10 if any below conditions fail: return code to 10 if any below conditions fail:
* Validate that Node Segment ID is advertised for IPv4 Prefix by * Validate that Node Segment ID is advertised for IPv4 Prefix by
IGP Protocol{ IGP Protocol{
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 0, Use any locally enabled IGP protocol. Sub-TLV is 0, Use any locally enabled IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 1, Use OSPF as IGP protocol. Sub-TLV is 1, Use OSPF as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID + When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is 2, Use ISIS as IGP protocol. Sub-TLV is 2, Use ISIS as IGP protocol.
+ When protocol field in received IPv4 IGP-Prefix Segment ID
Sub-TLV is any other value, it MUST be treated as Protocol
value of 0.
} }
If the Label-stack-depth is 0 and Target FEC sub-TLV at FEC-stack- If the Label-stack-depth is 0 and Target FEC sub-TLV at FEC-stack-
depth is 36 (Adjacency Segment ID), set Best return code to TBD7 depth is 36 (Adjacency Segment ID), set Best return code to TBD1
(Section 10.3) if any below conditions fail: (Section 10.3) if any below conditions fail:
When the Adj. Type is 1 (Parallel Adjacency): When the Adj. Type is 1 (Parallel Adjacency):
+ Validate that Receiving Node Identifier is local IGP + Validate that Receiving Node Identifier is local IGP
identifier. identifier.
+ Validate that Adjacency Segment ID is advertised by + Validate that Adjacency Segment ID is advertised by
Advertising Node Identifier of Protocol in local IGP Advertising Node Identifier of Protocol in local IGP
database { database {
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 0, Use any locally enabled IGP protocol. ID Sub-TLV is 0, Use any locally enabled IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 1, Use OSPF as IGP protocol. ID Sub-TLV is 1, Use OSPF as IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 2, Use ISIS as IGP protocol. ID Sub-TLV is 2, Use ISIS as IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is any other value, it MUST be treated as
Protocol value of 0.
} }
When the Adj. Type is 4 or 6: When the Adj. Type is 4 or 6 (IGP Adjacency or LAN Adjacency):
+ Validate that Remote Interface ID matches the local + Validate that Remote Interface ID matches the local
identifier of the interface (Interface-I) on which the identifier of the interface (Interface-I) on which the
packet was received. packet was received.
+ Validate that Receiving Node Identifier is local IGP + Validate that Receiving Node Identifier is local IGP
identifier. identifier.
+ Validate that IGP-Adjacency Segment ID is advertised by + Validate that IGP-Adjacency Segment ID is advertised by
Advertising Node Identifier of Protocol in local IGP Advertising Node Identifier of Protocol in local IGP
skipping to change at page 14, line 15 skipping to change at page 14, line 4
+ Validate that Remote Interface ID matches the local + Validate that Remote Interface ID matches the local
identifier of the interface (Interface-I) on which the identifier of the interface (Interface-I) on which the
packet was received. packet was received.
+ Validate that Receiving Node Identifier is local IGP + Validate that Receiving Node Identifier is local IGP
identifier. identifier.
+ Validate that IGP-Adjacency Segment ID is advertised by + Validate that IGP-Adjacency Segment ID is advertised by
Advertising Node Identifier of Protocol in local IGP Advertising Node Identifier of Protocol in local IGP
database { database {
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 0, Use any locally enabled IGP protocol. ID Sub-TLV is 0, Use any locally enabled IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 1, Use OSPF as IGP protocol. ID Sub-TLV is 1, Use OSPF as IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment - When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is 2, Use ISIS as IGP protocol. ID Sub-TLV is 2, Use ISIS as IGP protocol.
- When protocol field in received IPv4 IGP-Prefix Segment
ID Sub-TLV is any other value, it MUST be treated as
Protocol value of 0.
} }
7.5. TTL Consideration for traceroute 7.5. TTL Consideration for traceroute
LSP Traceroute operation can properly traverse every hop of Segment LSP Traceroute operation can properly traverse every hop of Segment
Routing network in Uniform Model described in [RFC3443]. If one or Routing network in Uniform Model described in [RFC3443]. If one or
more LSRs employ Short Pipe Model described in [RFC3443], then LSP more LSRs employ Short Pipe Model described in [RFC3443], then LSP
Traceroute may not be able to properly traverse every hop of Segment Traceroute may not be able to properly traverse every hop of Segment
Routing network due to absence of TTL copy operation when outer label Routing network due to absence of TTL copy operation when outer label
is popped. Short Pipe being the most commonly used model. The is popped. Short Pipe being the most commonly used model. The
skipping to change at page 15, line 9 skipping to change at page 15, line 5
included it should contain only those for the inner stacked tunnels. included it should contain only those for the inner stacked tunnels.
The Return Code/Subcode and FEC Stack Change TLV should be used to The Return Code/Subcode and FEC Stack Change TLV should be used to
diagnose the tunnel as described in [RFC8029]. When the tracing of a diagnose the tunnel as described in [RFC8029]. When the tracing of a
tunnel in the stack is complete, then the next tunnel in the stack tunnel in the stack is complete, then the next tunnel in the stack
should be traced. The end of a tunnel can be detected from the should be traced. The end of a tunnel can be detected from the
"Return Code" when it indicates that the responding LSR is an egress "Return Code" when it indicates that the responding LSR is an egress
for the stack at depth 1. Thus the traceroute procedures in for the stack at depth 1. Thus the traceroute procedures in
[RFC8029] can be recursively applied to traceroute a source routed [RFC8029] can be recursively applied to traceroute a source routed
LSP. LSP.
8. Issues with non-forwarding labels 8. Backward Compatibility with non Segment Routing devices
Source stacking can be optionally used to apply services on the
packet at a LSR along the path, where a label in the stack is used to
trigger service application. A data plane failure detection and
isolation mechanism should provide its functionality without applying
these services. This is mandatory for services that are stateful,
though for stateless services [RFC8029] could be used as-is. It MAY
also provide a mechanism to detect and isolate faults within the
service function itself.
How a node treats Service label is outside the scope of this document
and will be included in this or a different document later.
9. Backward Compatibility with non Segment Routing devices
[I-D.ietf-spring-segment-routing-ldp-interop] describes how Segment [I-D.ietf-spring-segment-routing-ldp-interop] describes how Segment
Routing operates in network where SR-capable and non-SR-capable nodes Routing operates in network where SR-capable and non-SR-capable nodes
coexist. In such networks, there may not be any FEC mapping in the coexist. In such networks, there may not be any FEC mapping in the
responder when the Initiator is SR-capable while the responder is not responder when the Initiator is SR-capable while the responder is not
(or vice-versa). But this is not different from RSVP and LDP interop (or vice-versa). But this is not different from RSVP and LDP interop
scenarios. When LSP Ping is triggered, the responder will set the scenarios. When LSP Ping is triggered, the responder will set the
FEC-return-code to Return 4, "Replying router has no mapping for the FEC-return-code to Return 4, "Replying router has no mapping for the
FEC at stack-depth". FEC at stack-depth".
Similarly when SR-capable node assigns Adj-SID for non-SR-capable Similarly when SR-capable node assigns Adj-SID for non-SR-capable
node, LSP traceroute may fail as the non-SR-capable node is not aware node, LSP traceroute may fail as the non-SR-capable node is not aware
of "IGP Adjacency Segment ID" sub-TLV and may not reply with FEC of "IGP Adjacency Segment ID" sub-TLV and may not reply with FEC
Stack change. This may result in any further downstream nodes to Stack change. This may result in any further downstream nodes to
reply back with Return-code as 4, "Replying router has no mapping for reply back with Return-code as 4, "Replying router has no mapping for
the FEC at stack-depth". the FEC at stack-depth".
10. IANA Considerations 9. IANA Considerations
10.1. New Target FEC Stack Sub-TLVs 9.1. New Target FEC Stack Sub-TLVs
IANA is requested to assign three new Sub-TLVs from "Sub-TLVs for TLV IANA is requested to assign three new Sub-TLVs from "Sub-TLVs for TLV
Types 1, 16 and 21" sub-registry from the "Multi-Protocol Label Types 1, 16 and 21" sub-registry from the "Multi-Protocol Label
Switching (MPLS) Label Switched Paths (LSPs) Ping Parameters" Switching (MPLS) Label Switched Paths (LSPs) Ping Parameters"
[IANA-MPLS-LSP-PING] registry. [IANA-MPLS-LSP-PING] registry.
Sub-Type Sub-TLV Name Reference Sub-Type Sub-TLV Name Reference
-------- ----------------- ------------ -------- ----------------- ------------
34 IPv4 IGP-Prefix Segment ID Section 5.1 of this document 34 IPv4 IGP-Prefix Segment ID Section 5.1 of this document
35 IPv6 IGP-Prefix Segment ID Section 5.2 of this document 35 IPv6 IGP-Prefix Segment ID Section 5.2 of this document
36 IGP-Adjacency Segment ID Section 5.3 of this document 36 IGP-Adjacency Segment ID Section 5.3 of this document
10.2. Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping 9.2. Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping TLV
TLV
IANA is requested to create a new "Protocol" registry under the IANA is requested to create a new "Protocol" registry under the
"Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs) "Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs)
Ping Parameters" registry. Code points in the range of 0-250 will be Ping Parameters" registry. Code points in the range of 0-250 will be
assigned by Standards Action. The range of 251-254 are reserved for assigned by Standards Action. The range of 251-254 are reserved for
experimental use and will not be assigned. The initial entries into experimental use and will not be assigned. The initial entries into
the registry will be. the registry will be.
Value Meaning Reference Value Meaning Reference
---------- ---------------- ------------ ---------- ---------------- ------------
skipping to change at page 16, line 34 skipping to change at page 16, line 18
1 Static Section 3.4.1.2 of RFC8029 1 Static Section 3.4.1.2 of RFC8029
2 BGP Section 3.4.1.2 of RFC8029 2 BGP Section 3.4.1.2 of RFC8029
3 LDP Section 3.4.1.2 of RFC8029 3 LDP Section 3.4.1.2 of RFC8029
4 RSVP-TE Section 3.4.1.2 of RFC8029 4 RSVP-TE Section 3.4.1.2 of RFC8029
5 OSPF Section 6 of this document 5 OSPF Section 6 of this document
6 ISIS Section 6 of this document 6 ISIS Section 6 of this document
7-250 Unassigned 7-250 Unassigned
251-254 Experimental use This document 251-254 Experimental use This document
255 Reserved This document 255 Reserved This document
10.3. Return Code 9.3. Return Code
IANA is requested to assign a new Return Code from the "Multi- IANA is requested to assign a new Return Code from the "Multi-
Protocol Label Switching (MPLS) Label Switched Paths (LSPs) Ping Protocol Label Switching (MPLS) Label Switched Paths (LSPs) Ping
Parameters" in "Return Codes" Sub-registry. Parameters" in "Return Codes" Sub-registry.
Value Meaning Reference Value Meaning Reference
---------- ----------------- ------------ ---------- ----------------- ------------
TBD7 Mapping for this FEC is not associated Section 7.4 of TBD1 Mapping for this FEC is not associated Section 7.4 of
with the incoming interface this document with the incoming interface this document
Note to the RFC Editor (please remove before publication): IANA has Note to the RFC Editor (please remove before publication): IANA has
made early allocation for sub-type 34, 35 and 35. The early made early allocation for sub-type 34, 35 and 35. The early
allocation expires 2017-09-15. allocation expires 2017-09-15.
11. Security Considerations 10. Security Considerations
This document defines additional Sub-TLVs and follows the mechanism This document defines additional Sub-TLVs and follows the mechanism
defined in [RFC8029]. So all the security consideration defined in defined in [RFC8029]. So all the security consideration defined in
[RFC8029] will be applicable for this document and in addition it [RFC8029] will be applicable for this document and in addition it
does not impose any security challenges to be considered. does not impose any security challenges to be considered.
12. Acknowledgement 11. Acknowledgement
The authors would like to thank Stefano Previdi, Les Ginsberg, Balaji The authors would like to thank Stefano Previdi, Les Ginsberg, Balaji
Rajagopalan, Harish Sitaraman, Curtis Villamizar, Pranjal Dutta, Rajagopalan, Harish Sitaraman, Curtis Villamizar, Pranjal Dutta,
Lizhong Jin, Tom Petch, Victor Ji and Mustapha Aissaoui for their Lizhong Jin, Tom Petch, Victor Ji and Mustapha Aissaoui, Tony
review and comments. Przygienda, Alexander Vainshtein for their review and comments.
The authors wold like to thank Loa Andersson for his comments and The authors wold like to thank Loa Andersson for his comments and
recommendation to merge drafts. recommendation to merge drafts.
13. Contributors 12. Contributors
The following are key contributors to this document: The following are key contributors to this document:
Hannes Gredler, RtBrick, Inc. Hannes Gredler, RtBrick, Inc.
Tarek Saad, Cisco Systems, Inc. Tarek Saad, Cisco Systems, Inc.
Siva Sivabalan, Cisco Systems, Inc. Siva Sivabalan, Cisco Systems, Inc.
Balaji Rajagopalan, Juniper Networks Balaji Rajagopalan, Juniper Networks
Faisal Iqbal, Cisco Systems, Inc. Faisal Iqbal, Cisco Systems, Inc.
14. References 13. References
14.1. Normative References 13.1. Normative References
[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. Shakir, "Segment Routing Architecture", draft-ietf- and R. Shakir, "Segment Routing Architecture", draft-ietf-
spring-segment-routing-12 (work in progress), June 2017. spring-segment-routing-12 (work in progress), June 2017.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC3443] Agarwal, P. and B. Akyol, "Time To Live (TTL) Processing [RFC3443] Agarwal, P. and B. Akyol, "Time To Live (TTL) Processing
in Multi-Protocol Label Switching (MPLS) Networks", in Multi-Protocol Label Switching (MPLS) Networks",
RFC 3443, DOI 10.17487/RFC3443, January 2003, RFC 3443, DOI 10.17487/RFC3443, January 2003,
<https://www.rfc-editor.org/info/rfc3443>. <https://www.rfc-editor.org/info/rfc3443>.
[RFC4203] Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in [RFC4203] Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in
Support of Generalized Multi-Protocol Label Switching Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 4203, DOI 10.17487/RFC4203, October 2005, (GMPLS)", RFC 4203, DOI 10.17487/RFC4203, October 2005,
<https://www.rfc-editor.org/info/rfc4203>. <https://www.rfc-editor.org/info/rfc4203>.
[RFC5307] Kompella, K., Ed. and Y. Rekhter, Ed., "IS-IS Extensions [RFC5307] Kompella, K., Ed. and Y. Rekhter, Ed., "IS-IS Extensions
in Support of Generalized Multi-Protocol Label Switching in Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 5307, DOI 10.17487/RFC5307, October 2008, (GMPLS)", RFC 5307, DOI 10.17487/RFC5307, October 2008,
<https://www.rfc-editor.org/info/rfc5307>. <https://www.rfc-editor.org/info/rfc5307>.
[RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N., [RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N.,
Aldrin, S., and M. Chen, "Detecting Multiprotocol Label Aldrin, S., and M. Chen, "Detecting Multiprotocol Label
Switched (MPLS) Data-Plane Failures", RFC 8029, Switched (MPLS) Data-Plane Failures", RFC 8029,
DOI 10.17487/RFC8029, March 2017, <https://www.rfc- DOI 10.17487/RFC8029, March 2017,
editor.org/info/rfc8029>. <https://www.rfc-editor.org/info/rfc8029>.
14.2. Informative References 13.2. Informative References
[I-D.ietf-isis-segment-routing-extensions] [I-D.ietf-isis-segment-routing-extensions]
Previdi, S., Filsfils, C., Bashandy, A., Gredler, H., Previdi, S., Filsfils, C., Bashandy, A., Gredler, H.,
Litkowski, S., Decraene, B., and j. jefftant@gmail.com, Litkowski, S., Decraene, B., and j. jefftant@gmail.com,
"IS-IS Extensions for Segment Routing", draft-ietf-isis- "IS-IS Extensions for Segment Routing", draft-ietf-isis-
segment-routing-extensions-13 (work in progress), June segment-routing-extensions-13 (work in progress), June
2017. 2017.
[I-D.ietf-ospf-segment-routing-extensions] [I-D.ietf-ospf-segment-routing-extensions]
Psenak, P., Previdi, S., Filsfils, C., Gredler, H., Psenak, P., Previdi, S., Filsfils, C., Gredler, H.,
Shakir, R., Henderickx, W., and J. Tantsura, "OSPF Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
Extensions for Segment Routing", draft-ietf-ospf-segment- Extensions for Segment Routing", draft-ietf-ospf-segment-
routing-extensions-18 (work in progress), July 2017. routing-extensions-19 (work in progress), August 2017.
[I-D.ietf-spring-segment-routing-ldp-interop] [I-D.ietf-spring-segment-routing-ldp-interop]
Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., and Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., and
S. Litkowski, "Segment Routing interworking with LDP", S. Litkowski, "Segment Routing interworking with LDP",
draft-ietf-spring-segment-routing-ldp-interop-08 (work in draft-ietf-spring-segment-routing-ldp-interop-08 (work in
progress), June 2017. progress), June 2017.
[I-D.ietf-spring-segment-routing-mpls] [I-D.ietf-spring-segment-routing-mpls]
Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., Filsfils, C., Previdi, S., Bashandy, A., Decraene, B.,
Litkowski, S., and R. Shakir, "Segment Routing with MPLS Litkowski, S., and R. Shakir, "Segment Routing with MPLS
skipping to change at page 19, line 24 skipping to change at page 19, line 4
Authors' Addresses Authors' Addresses
Nagendra Kumar (editor) Nagendra Kumar (editor)
Cisco Systems, Inc. Cisco Systems, Inc.
7200-12 Kit Creek Road 7200-12 Kit Creek Road
Research Triangle Park, NC 27709-4987 Research Triangle Park, NC 27709-4987
US US
Email: naikumar@cisco.com Email: naikumar@cisco.com
Carlos Pignataro (editor) Carlos Pignataro (editor)
Cisco Systems, Inc. Cisco Systems, Inc.
7200-11 Kit Creek Road 7200-11 Kit Creek Road
Research Triangle Park, NC 27709-4987 Research Triangle Park, NC 27709-4987
US US
Email: cpignata@cisco.com Email: cpignata@cisco.com
George Swallow George Swallow
Individual Southend Technical Center
Email: swallow.ietf@gmail.com Email: swallow.ietf@gmail.com
Nobo Akiya Nobo Akiya
Big Switch Networks Big Switch Networks
Email: nobo.akiya.dev@gmail.com Email: nobo.akiya.dev@gmail.com
Sriganesh Kini Sriganesh Kini
Individual Individual
 End of changes. 56 change blocks. 
104 lines changed or deleted 103 lines changed or added

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