IS-IS Working Group J. Tantsura
Internet-Draft Individual
Intended status: Standards Track U. Chunduri
Expires: September 29, 2017 Huawei Technologies
S. Aldrin
Google, Inc
L. Ginsberg
Cisco Systems
March 28, 2017

Signaling MSD (Maximum SID Depth) using IS-IS


This document proposes a way to signal Maximum SID Depth (MSD) supported by a node at node and/or link granularity by an IS-IS Router. In a Segment Routing (SR) enabled network a centralized controller that programs SR tunnels needs to know the MSD supported by the head-end at node and/or link granularity to push the SID stack of an appropriate depth. MSD is relevant to the head-end of a SR tunnel or Binding-SID anchor node where Binding-SID expansions might result in creation of a new SID stack.

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

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 29, 2017.

Copyright Notice

Copyright (c) 2017 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 ( 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.

Table of Contents

1. Introduction

When Segment Routing tunnels are computed by a centralized controller, it is critical that the controller learns the MSD "Maximum SID Depth" of the node or link SR tunnel exits over, so the SID stack depth of a path computed doesn't exceed the number of SIDs the node is capable of imposing. This document describes how to use IS-IS to signal the MSD of a node or link to a centralized controller.

PCEP SR extensions draft [I-D.ietf-pce-segment-routing] signals MSD in SR PCE Capability TLV and METRIC Object. However, if PCEP is not supported/configured on the head-end of a SR tunnel or a Binding-SID anchor node and controller does not participate in IGP routing, it has no way to learn the MSD of nodes and links which has been configured. BGP-LS [RFC7752] defines a way to expose topology and associated attributes and capabilities of the nodes in that topology to a centralized controller. MSD signaling by BGP-LS has been defined in [I-D.tantsura-idr-bgp-ls-segment-routing-msd]. Typically, BGP-LS is configured on a small number of nodes, that do not necessarily act as head-ends. In order, for BGP-LS to signal MSD for the all nodes and links in the network MSD is relevant, MSD capabilites SHOULD be distributed to every IS-IS router in the network.

[I-D.ietf-isis-mpls-elc] defines Readable Label Depth Capability (RLDC) that is used by a head-end to insert Entropy Label (EL) at appropriate depth, so it could be read by transit nodes. MSD in contrary signals ability to push SID's stack of a particular depth.

MSD of type 1 (IANA Registry), called Base MSD, is used to signal the total number of SIDs a node is capable of imposing, to be used by a path computation element/controller. In case, there are additional labels (e.g. service) that are to be pushed to the stack - this would be signaled with an another MSD type (TBD), MSD SHOULD be adjusted to reflect that. In the future, new MSD types could be defined to signal additional capabilities: entropy labels, labels that can be pushed thru recirculation, or another dataplane e.g IPv6.

1.1. Conventions used in this document

1.1.1. Terminology

BGP-LS: Distribution of Link-State and TE Information using Border Gateway Protocol

IS-IS: Intermediate System to Intermediate System

MSD: Maximum SID Depth

PCC: Path Computation Client

PCE: Path Computation Element

PCEP: Path Computation Element Protocol

SID: Segment Identifier

SR: Segment Routing

1.2. 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 [RFC7981].

3. Node MSD Advertisement

A new sub-TLV within the body of IS-IS Router Capability TLV [RFC7981], Node MSD sub-TLV is defined to carry the provisioned MSD of the router originating the Router Capability TLV. Node MSD is the lowest MSD supported by the node of any interface and can be provisioned in IS-IS instance.

       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      |   Sub-Type and Value          |   


Figure 1: Node MSD Sub-TLV

The Type (1 byte) of this sub-TLV is 23 (Suggested value - to be assigned by IANA).

Length is variable (minimum of 2, multiple of 2 octets) and represents the total length of value field.

Value field consists of a 1 octet sub-type (IANA Registry) and 1 octet value.

Sub-Type 1 (IANA Section), MSD and the Value field contains maximum MSD of the router originating the Router Capability TLV. Node Maximum MSD is a number in the range of 0-254. 0 represents lack of the ability to push MSD of any depth; any other value represents that of the node. This value SHOULD represent the lowest value supported by node.

Other Sub-types other than defined above are reserved for future extensions. This sub-TLV is optional. The scope of the advertisement is specific to the deployment.

4. LINK MSD Advertisement

A new sub-TLV - Link MSD sub-TLV is defined for TLVs 22, 23, 141, 222, and 223 to carry the provisioned MSD of the interface associated with the link.