Internet-Draft IS-IS Topology YANG July 2023
Dios, et al. Expires 11 January 2024 [Page]
Workgroup:
opsawg
Internet-Draft:
draft-ogondio-opsawg-isis-topology-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
O. G. D. Dios
Telefonica
S. B. Giraldo
Nokia
V. Lopez
Nokia
D. Ceccarelli
Cisco
B. Claise
Huawei

A YANG Data Model for Intermediate System to intermediate System (IS-IS) Topology

Abstract

This document defines a YANG data model for representing an abstracted view of a network topology that contains Intermediate System to Intermediate System (IS-IS). This document augments the 'ietf-network' data model by adding IS-IS concepts and explains how the data model can be used to represent the IS-IS topology.

The YANG data model defined in this document conforms to the Network Management Datastore Architecture (NMDA).

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 https://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 11 January 2024.

Table of Contents

1. Introduction

Network operators perform the capacity planning for their networks and run regular what-if scenarios analysis based on representations of the real network. Those what-if analysis and capacity planning processes require, among other information, a topological view (domains, nodes, links, network interconnection) of the deployed network.

This document defines a YANG data model representing an abstracted view of a network topology containing Intermediate System to Intermediate System (IS-IS). It covers the topology of IP/MPLS networks running IS-IS as Interior Gateway Protocol (IGP) protocol. The proposed YANG mode augments the "A YANG Data Model for Network Topologies" [RFC8345] and"A YANG Data Model for Layer 3 Topologies" [RFC8346] by adding IS-IS concepts. This YANG data model is used to export the IS-IS related topology directly from a network controller to an Operation Support System (OSS) tools.

This document explains the scope and purpose of the IS-IS topology model and how the topology and service models fit together. The YANG data model defined in this document conforms to the Network Management Datastore Architecture [RFC8342].

1.1. Terminology and Notations

This document assumes that the reader is familiar with IS-IS and the contents of [RFC8345]. The document uses terms from those documents.

The terminology for describing YANG data models is found in [RFC7950], [RFC8795] and [RFC8346].

The term Digital Twin, Digital Map, Digital Map Modelling, Digital Map Model, Digital Map Data, and Topology are specified in [I-D.draft-havel-opsawg-digital-map].

1.2. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119], [RFC8174] when, and only when, they appear in all capitals, as shown here.

1.3. Tree Diagram

Authors include a simplified graphical representation of the data model is used in Section 5 of this document. The meaning of the symbols in these diagrams is defined in [RFC8340].

1.4. Prefix in Data Node Names

In this document, names of data nodes and other data model objects are prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown in the following table.

Table 1: Prefixes and corresponding YANG modules
Prefix Yang Module Reference
isisnt ietf-l3-isis-topology RFCXXX
yang ietf-yang-types [RFC6991]

RFC Editor Note: Please replace XXXX with the RFC number assigned to this document. Please remove this note.

2. Use Cases

This information is required in the IP/MPLS planning process to properly assess the required network resources to meet the traffic demands in normal and failure scenarios. Network operators perform the capacity planning for their networks and run regular what-if scenarios analysis based on representations of the real network. Those what-if analysis and capacity planning processes require, among other information, a topological view (domains, nodes, links, network interconnection) of the deployed network.

The standardization of an abstracted view of the IS-IS topology model as NorthBound Interface (NBI) of Software Defined Networking (SDN) controllers allows the inject this information into third party tools covering specialized cases.

The IS-IS topological model should export enough IS-IS information to permit these tools simulating the IP routing. By adding the traffic demand, ideally at the IP flow level, we can simulate the traffic growth and its effect on the routing. That is, simulating how IP-level traffic demands would be forwarded, after ISIS convergence is reached, and from there estimating, using appropriate mathematical models, related KPIs like the occupation in the links or end-to-end latencies.

In summary, the network-wide view of the IS-IS topology enables multiple use cases:

2.1. Relationship with the IS-IS YANG Model

[RFC9130] specifies a YANG data model that can be used to configure and manage the IS-IS protocol on network elements. This data model covers the configuration of an IS-IS routing protocol instance, as well as the retrieval of IS-IS operational states. [RFC9130] is still expected to be used for individual network elements configuration and monitoring. On the other hand, the proposed YANG model in this document covers the abstracted view of the entire network topology containing Intermediate System to Intermediate System (IS-IS). As such, this model is available via the NBI of SDN controllers.

2.2. Relationship with Digital Map

As described in [I-D.draft-havel-opsawg-digital-map], the Digital Map provides the core multi-layer topology model and data for the digital twin and connects them to the other digital twin models and data.

The Digital Map Modelling defines the core topological entities, their role in the network, core properties, and relationships both inside each layer and between the layers.

The Digital Map Model is a basic topological model that is linked to other functional parts of the digital twin and connects them all: configuration, maintenance, assurance (KPIs, status, health, symptoms), Traffic Engineering (TE), different behaviors and actions, simulation, emulation, mathematical abstractions, AI algorithms, etc.

As such the IGP topology of the Digital Map (in this case, IS-IS) is just one of the layers of the Digital Map, for specific user (the network operator in charge of the IGP) for specific IGP use cases as described before.

3. Use of IETF-Topology for Representing an IP/MPLS network domain

IP/MPLS Networks can contain multiple domain IGP domains. We can define an IGP domain as the collection of nodes and links that participate in the same IGP process. The topology information of a domain can be structured according to ietf-network-topology information model [RFC8345]. For example, if BGP-LS is used to collect the information, the nodes and links that are announced with the same combination of AS number / are considered to belong to the same domain.

If a node and/or layer termination point participates in more than one IGP it will be present in multiple IGP domain networks.

The ietf-network instance MUST include the following properties to indicate it is a domain running an IGP instance:

A network-id that uniquely identifies such domain in the network. The "network-types property should include the l3t:l3-unicast-topology, to indicate it is a network in which the nodes are capable of forwarding unicast packet. Also, this draft proposed to ade a new property, isis-topology, to indicate the topology being represented is running an IGP process.

Also, should the topology include information such as bandwidth, delay information or color, it must include tet:te-topology. To include delay and bandwdith performance measurements , MUST include tet-pkt:te-packet under the previous property The supporting-network property can include the network-id of a base layer-3 network. The node property should include the list of nodes as described below. The ietf-network-topology:link MUST be present, with one link per each IP adjacency (one link for each direction of the adjancency).

4. YANG Data Model for IS-IS Topology

The abstract (base) network data model is defined in the "ietf-network" module of [RFC8345]. The ISIS-topology builds on the network data model defined in the "ietf-network" module [RFC8345], augmenting the nodes with IS-IS information, which anchor the links and are contained in nodes).

There is a set of parameters and augmentations that are included at the node level. Each parameter and description are detailed following:

There is a second set of parameters and augmentations are included at the termination point level. Each parameter is listed as follows:

5. IS-IS Topology Tree Diagram

Figure 1 below shows the tree diagram of the YANG data model defined in module ietf-l3-isis-topology.yang (Section 6).

module: ietf-l3-isis-topology
  augment /nw:networks/nw:network/nw:network-types:
    +--rw isis-topology!
  augment /nw:networks/nw:network/nw:node/l3t:l3-node-attributes:
    +--rw isis-timer-attributes
    |  +--rw lsp-lifetime?           string
    |  +--rw lsp-refresh-interval?   string
    +--rw isis-status
       +--rw level?          ietf-isis:level
       +--rw area-address*   ietf-isis:area-address
       +--ro neighbours*     inet:ip-address
  augment .../nt:termination-point/l3t:l3-termination-point-attributes:
    +--rw isis-termination-point-attributes
       +--rw interface-type?   identityref
       +--rw level?            ietf-isis:level
       +--rw metric?           uint64
       +--rw is-passive?       boolean
Figure 1: IS-IS Topology tree diagram

6. YANG Model for IS-IS topology

This module imports types from [RFC8343] and [RFC8345]. Following the YANG model is presented.

<CODE BEGINS> file "ietf-l3-isis-topology@2022-10-24.yang"

module ietf-l3-isis-topology {
  yang-version 1.1;
  namespace
    "urn:ietf:params:xml:ns:yang:ietf-l3-isis-topology";
  prefix "isisnt";

  import ietf-network {
    prefix "nw";
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }

  import ietf-network-topology {
    prefix "nt";
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }

  import ietf-l3-unicast-topology {
    prefix "l3t";
    reference
      "RFC 8346: A YANG Data Model for Layer 3 Topologies";
  }

  import ietf-isis {
    prefix "ietf-isis";
    reference
      "RFC 9130: YANG Data Model for the IS-IS Protocol";
  }

  import ietf-inet-types {
    prefix "inet";
    reference
      "RFC 6991: Common YANG Data Types";
  }

  organization
    "IETF OPSA (Operations and Management Area) Working Group";
  contact
    "WG Web:  <https://datatracker.ietf.org/wg/opsawg/>
    WG List:  <mailto:opsawg@ietf.org>

    Editor:   Oscar Gonzalez de Dios
              <mailto:oscar.gonzalezdedios@telefonica.com>
    Editor:   Samier Barguil
              <mailto:samier.barguilgiraldo.ext@telefonica.com>
    Editor:   Victor Lopez
              <mailto:victor.lopez@nokia.com>";
    Editor:   Benoit Claise
              <mailto:benoit.claise@huwaei.com>";
  description
    "This module defines a model for Layer 3 IS-IS
     topologies.

     Copyright (c) 2022 IETF Trust and the persons identified as
     authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject to
     the license terms contained in, the Revised BSD License set
     forth in Section 4.c of the IETF Trust's Legal Provisions
     Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
     for full legal notices.";

  revision 2022-09-21 {
    description
      "Initial version";
    reference
      "RFC XXXX: A YANG Data Model for Intermediate System to
       Intermediate System (IS-IS) Topology";
  }

  grouping isis-topology-type {
    description "Identifies the topology type to be IS-IS.";
    container isis-topology {
      presence "indicates IS-IS topology";
      description
        "The presence of the container node indicates IS-IS
        topology";
    }
  }

  grouping isis-node-attributes {
    description "isis node scope attributes";
    container isis-timer-attributes {
      description
        "Contains node timer attributes";
      leaf lsp-lifetime {
        type uint16 {
           range "1..65535";
         }
        units "seconds";
        description
          "Lifetime of the router's LSPs in seconds.";
      }
      leaf lsp-refresh-interval {
        type uint16 {
           range "1..65535";
         }
        units "seconds";
        description
          "Refresh interval of the router's LSPs in seconds.";
      }
    }
    container isis-status {
      description
        "Contains the IS-IS status attributes";
      leaf level {
        type ietf-isis:level;
        description
          "Level of an IS-IS node - can be level-1,
          level-2 or level-all.";
      }

      leaf-list area-address {
        type ietf-isis:area-address;
        description
          "List of areas supported by the protocol instance.";
      }

      leaf system-id {
        type ietf-isis:system-id;
        description
          "System-id of the node.";
      }

      leaf-list neighbors {
        type inet:ip-address;
        config false;
        description
          "Topology flags";
      }
    }
  }

  grouping isis-termination-point-attributes {
    description "IS-IS termination point scope attributes";
    container isis-termination-point-attributes {
      description
      "Indicates the termination point from the
      which the IS-IS is configured. A termination
      point can be a physical port, an interface, etc.";

    leaf interface-type {
      type ietf-isis:interface-type;
      description
        "Type of adjacency to be established for the interface. This
        dictates the type of hello messages that are used.";
    }

    leaf level {
      type ietf-isis:level;
      description
        "Level of an IS-IS node - can be level-1,
        level-2 or level-all.";
    }

    leaf metric {
      type uint32 {
         range "0 .. 16777215";
       }
      description
        "This type defines wide style format of IS-IS metric.";
    }

    leaf is-passive{
      type boolean;
      description
        "Indicates whether the interface is in passive mode (IS-IS
        not running but network is advertised).";
      }
    }
  }

  augment "/nw:networks/nw:network/nw:network-types" {
    description
      "Introduces new network type for L3 Unicast topology";
    uses isis-topology-type;
  }

  augment "/nw:networks/nw:network/nw:node/l3t:l3-node-attributes" {
    when "/nw:networks/nw:network/nw:network-types/isisnt:isis-topology" {
      description
        "Augmentation parameters apply only for networks with
        isis topology";
    }
    description
      "isis node-level attributes ";
    uses isis-node-attributes;
  }

  augment "/nw:networks/nw:network/nt:link/l3t:l3-link-attributes" {
    when "/nw:networks/nw:network/nw:network-types/isisnt:isis-topology" {
      description
        "Augmentation parameters apply only for networks with
        IS-IS topology";
    }
    description
      "Augments topology link configuration";
    uses isis-termination-point-attributes;
  }

  augment "/nw:networks/nw:network/nw:node/nt:termination-point"+
  "/l3t:l3-termination-point-attributes" {
    when "/nw:networks/nw:network/nw:network-types/isisnt:isis-topology" {
      description
        "Augmentation parameters apply only for networks with
        IS-IS topology";
    }
    description
      "Augments topology termination point configuration";
    uses isis-termination-point-attributes;
  }
}


<CODE ENDS>
Figure 2: IS-IS Topology YANG module

7. Security Considerations

The YANG module specified in this document defines a schema for data that is designed to be accessed via network management protocols such as NETCONF {!RFC6241}} or RESTCONF [RFC8040]. The lowest NETCONF layer is the secure transport layer, and the mandatory-to-implement secure transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure transport is TLS [RFC8446].

The Network Configuration Access Control Model (NACM) [RFC8341] provides the means to restrict access for particular NETCONF or RESTCONF users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content.

There are a number of data nodes defined in this YANG module that are writable/creatable/deletable (i.e., config true, which is the default). These data nodes may be considered sensitive or vulnerable in some network environments. Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations.

8. IANA Considerations

This document registers the following namespace URIs in the IETF XML registry [RFC3688]:

--------------------------------------------------------------------
URI: urn:ietf:params:xml:ns:yang:ietf-l3-isis-topology
Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace.
--------------------------------------------------------------------

This document registers the following YANG module in the YANG Module Names registry [RFC6020]:

--------------------------------------------------------------------
name:         ietf-l3-isis-topology
namespace:    urn:ietf:params:xml:ns:yang:ietf-l3-isis-topology
maintained by IANA: N
prefix:       ietf-l3-isis-topology
reference:    RFC XXXX
--------------------------------------------------------------------

9. References

9.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC3688]
Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, DOI 10.17487/RFC3688, , <https://www.rfc-editor.org/rfc/rfc3688>.
[RFC6020]
Bjorklund, M., Ed., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, DOI 10.17487/RFC6020, , <https://www.rfc-editor.org/rfc/rfc6020>.
[RFC6242]
Wasserman, M., "Using the NETCONF Protocol over Secure Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, , <https://www.rfc-editor.org/rfc/rfc6242>.
[RFC6991]
Schoenwaelder, J., Ed., "Common YANG Data Types", RFC 6991, DOI 10.17487/RFC6991, , <https://www.rfc-editor.org/rfc/rfc6991>.
[RFC7950]
Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10.17487/RFC7950, , <https://www.rfc-editor.org/rfc/rfc7950>.
[RFC8040]
Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF Protocol", RFC 8040, DOI 10.17487/RFC8040, , <https://www.rfc-editor.org/rfc/rfc8040>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/rfc/rfc8174>.
[RFC8340]
Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", BCP 215, RFC 8340, DOI 10.17487/RFC8340, , <https://www.rfc-editor.org/rfc/rfc8340>.
[RFC8341]
Bierman, A. and M. Bjorklund, "Network Configuration Access Control Model", STD 91, RFC 8341, DOI 10.17487/RFC8341, , <https://www.rfc-editor.org/rfc/rfc8341>.
[RFC8342]
Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., and R. Wilton, "Network Management Datastore Architecture (NMDA)", RFC 8342, DOI 10.17487/RFC8342, , <https://www.rfc-editor.org/rfc/rfc8342>.
[RFC8343]
Bjorklund, M., "A YANG Data Model for Interface Management", RFC 8343, DOI 10.17487/RFC8343, , <https://www.rfc-editor.org/rfc/rfc8343>.
[RFC8345]
Clemm, A., Medved, J., Varga, R., Bahadur, N., Ananthakrishnan, H., and X. Liu, "A YANG Data Model for Network Topologies", RFC 8345, DOI 10.17487/RFC8345, , <https://www.rfc-editor.org/rfc/rfc8345>.
[RFC8346]
Clemm, A., Medved, J., Varga, R., Liu, X., Ananthakrishnan, H., and N. Bahadur, "A YANG Data Model for Layer 3 Topologies", RFC 8346, DOI 10.17487/RFC8346, , <https://www.rfc-editor.org/rfc/rfc8346>.
[RFC8446]
Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, , <https://www.rfc-editor.org/rfc/rfc8446>.
[RFC8795]
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and O. Gonzalez de Dios, "YANG Data Model for Traffic Engineering (TE) Topologies", RFC 8795, DOI 10.17487/RFC8795, , <https://www.rfc-editor.org/rfc/rfc8795>.
[RFC9130]
Litkowski, S., Ed., Yeung, D., Lindem, A., Zhang, J., and L. Lhotka, "YANG Data Model for the IS-IS Protocol", RFC 9130, DOI 10.17487/RFC9130, , <https://www.rfc-editor.org/rfc/rfc9130>.

9.2. Informative References

[I-D.draft-havel-opsawg-digital-map]
Havel, O., Claise, B., de Dios, O. G., Elhassany, A., Graf, T., and M. Boucadair, "Modeling the Digital Map based on RFC 8345: Sharing Experience and Perspectives", Work in Progress, Internet-Draft, draft-havel-opsawg-digital-map-00, , <https://datatracker.ietf.org/doc/html/draft-havel-opsawg-digital-map-00>.

Appendix A. Implementation Status

Note to the RFC-Editor: Please remove this section before publishing.

A.1. Implementation Status in Telefonica Group

The Yang based topology model proposed in this draft is being used today in one of the Telefonica operations to export the Multi-vendor IP/MPLS topology based on multiple IS-IS domains to several Operation Support System tools for visualization, capacity planning and simulation. A commercial controller has implemented the exposure of the information. It is one of the building blocks to expose the network capabilities, together with other models which cover the inventory and service provisioning in a vendor-agnostic fashion.

A.2. Huawei Digital Map PoC Status

As mentioned in [I-D.draft-havel-opsawg-digital-map], a Digital Map PoC with a real lab has been built, based on multi- vendor devices, with [RFC8345] as the base YANG module for the topology building blocks. This PoC successfully modelled IS-IS routing (among other technologies and layers), but it needs to be further aligned with this latest developments in this draft.

A.3. Implementation Status in E-lighthouse Network Solutions

E-lighthouse Network Solutions (https://e-lighthouse.com/) implementation is consuming the IS-IS network topology information exported by a commercial controller, using the Yang model proposed in this draft. It is able to simulate the network behavior under different changes, covering the what-if, failure analysis, dimensioning and other use cases mentioned in this draft.

Acknowledgments

This work is partially supported by the European Commission under Horizon 2020 Secured autonomic traffic management for a Tera of SDN flows (Teraflow) project (grant agreement number 101015857).

Contributors

Olga Havel
Huawei
Pablo Pavon
Universidad Politecnica de Cartegena

Authors' Addresses

Oscar González de Dios
Telefonica
Samier Barguil Giraldo
Nokia
Victor Lopez
Nokia
Daniele Ceccarelli
Cisco
Benoit Claise
Huawei