netconfcentral logo

ted

HTML

ted@2014-10-27



  module ted {

    yang-version 1;

    namespace
      "urn:TBD:params:xml:ns:yang:network:ted";

    prefix ted;

    import ietf-inet-types {
      prefix inet;
    }

    organization "TBD";

    contact "TBD";

    description
      "Helper module to hold trafic engineering attributes for
     any topology on which trafic engineering is enabled.";

    revision "2014-10-27" {
      description "Initial revision";
      reference
        "RFC 4220: Traffic Engineering Link Management Information
        Base.
         RFC 6825: Traffic Engineering Database Management Information
        Base in Support of MPLS-TE/GMPLS.
         RFC 4802: Generalized Multiprotocol Label Switching (GMPLS)
        Traffic Engineering Management Information Base";

    }


    typedef switching-capabilities {
      type enumeration {
        enum "psc-1" {
          value 1;
          description
            "Packet-Switch Capable-1 (PSC-1)";
        }
        enum "evpl" {
          value 30;
          description
            "Ethernet Virtual Private Line (EVPL)";
        }
        enum "l2sc" {
          value 51;
          description
            "Layer-2 Switch Capable (L2SC)";
        }
        enum "tdm" {
          value 100;
          description
            "Time-Division-Multiplex Capable (TDM)";
        }
        enum "otn-tdm" {
          value 110;
          description "OTN-TDM Capable";
        }
        enum "lsc" {
          value 150;
          description
            "Lambda-Switch Capable (LSC)";
        }
        enum "fsc" {
          value 200;
          description
            "Fiber-Switch Capable (FSC)";
        }
      }
      description
        "Switching Capabilities of an interface.";
      reference
        "RFC 5307: IS-IS Extensions in Support of Generalized
        Multi-Protocol Label Switching (GMPLS).
         RFC 3812: Multiprotocol Label Switching (MPLS) Traffic
        Engineering (TE) Management Information Base (MIB).
         RFC 7074: Revised Definition of the GMPLS Switching Capability
        and Type Fields.
         RFC 7138: Traffic Engineering Extensions to OSPF
        for GMPLS Control of Evolving G.709 Optical Transport
        Networks.
         RFC 7139: GMPLS Signaling Extensions for Control of Evolving
        G.709 Optical Transport Networks.";

    }

    typedef encoding-type {
      type enumeration {
        enum "not-gmpls" {
          value 0;
          description "GMPLS is not in use";
        }
        enum "packet" {
          value 1;
          description "Packet";
        }
        enum "ethernet" {
          value 2;
          description "Ethernet";
        }
        enum "pdh" {
          value 3;
          description "PDH";
        }
        enum "sdh-sonet" {
          value 5;
          description "SDH or SONET";
        }
        enum "digital-wrapper" {
          value 7;
          description "Digital Wrapper";
        }
        enum "lambda" {
          value 8;
          description "Lambda";
        }
        enum "fiber" {
          value 9;
          description "Fiber";
        }
        enum "fiber-channel" {
          value 11;
          description "Fiber Channel";
        }
        enum "oduk" {
          value 12;
          description
            "G.709 OKUk (Digital Path)";
        }
        enum "optical-channel" {
          value 13;
          description
            "G.709 Optical Channel";
        }
      }
      description
        "Encoding type of an interface.";
      reference
        "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
        Signaling Functional Description.
         RFC 4328: Generalized Multi-Protocol Label Switching (GMPLS)
        Signaling Extensions for G.709 Optical Transport Networks
        Control.";

    }

    typedef pcc-capabilities {
      type bits {
        bit
          path-computation-with-gmpls-link-constraints {
          position 0;
          description "Link constraints";
        }
        bit bidirectional-path-computation {
          position 1;
          description "Bidirectional";
        }
        bit diverse-path-computation {
          position 2;
          description "Diverse";
        }
        bit load-balanced-path-computation {
          position 3;
          description "Load balanced";
        }
        bit synchronized-path-computation {
          position 4;
          description "Synchronized";
        }
        bit
          support-for-multiple-objective-functions {
          position 5;
          description
            "Multiple objective functions";
        }
        bit
          support-for-additive-path-constraints {
          position 6;
          description
            "Additive path constraints";
        }
        bit
          support-for-request-prioritization {
          position 7;
          description
            "Request prioritization";
        }
        bit
          support-for-multiple-requests-per-message {
          position 8;
          description
            "Multiple requests per message";
        }
      }
      description
        "Path Computation Capabilities.";
      reference
        "RFC 5088, draft-ietf-pce-disco-protoc-isis-07.txt
        OSPF/ISIS Protocol Extensions for Path Computation Element
        (PCE) Discovery.";

    }

    grouping ted-node-attributes {
      description
        "Identifier to uniquely identify a node in TED";
      reference
        "RFC 5305, RFC 6119: IPv6 Traffic Engineering in IS-IS/OSPF";

      leaf te-router-id-ipv4 {
        type inet:ipv4-address;
        description
          "Globally unique IPv4 Traffic Engineering Router ID.";
      }

      leaf te-router-id-ipv6 {
        type inet:ipv6-address;
        description
          "Globally unique IPv6 Traffic Engineering Router ID";
      }

      list ipv4-local-address {
        key "ipv4-prefix";
        description
          "List of IPv4 Local Address(OSPF). RFC 5786";
        leaf ipv4-prefix {
          type inet:ipv4-prefix;
          description
            "Local IPv4 address for the node";
        }
      }  // list ipv4-local-address

      list ipv6-local-address {
        key "ipv6-prefix";
        description
          "List of IPv6 Local Address.";
        reference
          "RFC 5786: Advertising a Router's Local Addresses
          in OSPF Traffic Engineering (TE) Extensions";

        leaf ipv6-prefix {
          type inet:ipv6-prefix;
          description
            "Local IPv6 address for the node";
        }

        leaf prefix-option {
          type uint8;
          description "IPv6 prefix option.";
        }
      }  // list ipv6-local-address

      leaf pcc-capabilities {
        type pcc-capabilities;
        description
          "OSPF/ISIS PCC capabilities";
      }
    }  // grouping ted-node-attributes

    grouping ted-link-attributes {
      description
        "TED Attributes associated with the link.";
      reference
        "RFC 3630, RFC 3784: IS-IS / OSPF Traffic Engineering (TE)";

      leaf link-index {
        type uint64;
        description
          "The link identifier.  If OSPF is used, this represents an
        ospfLsdbID.  If IS-IS is used, this represents an isisLSPID.
        If a locally configured link is used, this object represents
        an unique value, which is locally defined in a router.";
      }

      leaf information-source {
        type enumeration {
          enum "unknown" {
            value 0;
            description
              "The source is unknown";
          }
          enum "locally-configured" {
            value 1;
            description "Configured TE link";
          }
          enum "ospfv2" {
            value 2;
            description "OSPFv2";
          }
          enum "ospfv3" {
            value 3;
            description "OSPFv3";
          }
          enum "isis" {
            value 4;
            description "ISIS";
          }
          enum "other" {
            value 5;
            description "Other source";
          }
        }
        description
          "Indicates the source of the information about the link";
      }

      leaf credibility-preference {
        type uint16;
        description
          "The preference value to calculate the traffic engineering
        database credibility value used for tie-break selection
        between different information-source values.
        Higher value is more preferable.";
      }

      leaf admin-status {
        type enumeration {
          enum "up" {
            value 1;
            description "Enabled.";
          }
          enum "down" {
            value 2;
            description "Disabled.";
          }
          enum "testing" {
            value 3;
            description "In some test mode.";
          }
        }
        description
          "The desired state of the link.";
      }

      leaf oper-status {
        type enumeration {
          enum "up" {
            value 1;
            description "Operational up";
          }
          enum "down" {
            value 2;
            description "Operational down.";
          }
          enum "testing" {
            value 3;
            description "In some test mode";
          }
          enum "unknown" {
            value 4;
            description
              "Status cannot be determined for some reason.";
          }
        }
        description
          "The current operational state of the link.";
      }

      leaf area-id {
        type binary {
          length "1..13";
        }
        description
          "This object indicates the area identifier of the IGP.
        If OSPF is used to advertise LSA, this represents an
        ospfArea. If IS-IS is used, this represents an area address.
        Otherwise, this is zero.";
      }

      leaf color {
        type uint32;
        description
          "Administrative group or color of the link";
      }

      leaf max-link-bandwidth {
        type decimal64 {
          fraction-digits 2;
        }
        description
          "Maximum bandwidth that can be see on this link in this
        direction. Units in bytes per second";
      }

      leaf max-resv-link-bandwidth {
        type decimal64 {
          fraction-digits 2;
        }
        description
          "Maximum amount of bandwidth that can be reserved in this
         direction in this link. Units in bytes per second";
      }

      list unreserved-bandwidth {
        key "priority";
        max-elements 8;
        description
          "Unreserved bandwidth for 0-7 priority levels. Units in
        bytes per second";
        leaf priority {
          type uint8 {
            range "0..7";
          }
          description "Priority";
        }

        leaf bandwidth {
          type decimal64 {
            fraction-digits 2;
          }
          description
            "Unreserved bandwidth for this level";
        }
      }  // list unreserved-bandwidth

      leaf te-default-metric {
        type uint32;
        description
          "Traffic Engineering Metric";
      }

      leaf link-protection-type {
        type enumeration {
          enum "unprotected" {
            value 0;
            description "unprotected";
          }
          enum "extra-traffic" {
            value 1;
            description "Extra traffic";
          }
          enum "shared" {
            value 2;
            description "Shared";
          }
          enum "1-for-1" {
            value 3;
            description
              "One for one protection";
          }
          enum "1-plus-1" {
            value 4;
            description
              "One plus one protection";
          }
          enum "enhanced" {
            value 5;
            description
              "Enhanced protection";
          }
        }
        description
          "Link Protection Type desired for this link";
      }

      list interface-switching-capabilities {
        key "switching-capability";
        description
          "List of interface capabilities for this interface";
        leaf switching-capability {
          type switching-capabilities;
          description
            "Switching Capability for this interface";
        }

        leaf encoding {
          type encoding-type;
          description
            "Encoding supported by this interface";
        }

        list max-lsp-bandwidth {
          key "priority";
          max-elements 8;
          description
            "Maximum LSP Bandwidth at priorities 0-7";
          leaf priority {
            type uint8 {
              range "0..7";
            }
            description "Priority";
          }

          leaf bandwidth {
            type decimal64 {
              fraction-digits 2;
            }
            description
              "Max LSP Bandwidth for this level";
          }
        }  // list max-lsp-bandwidth

        container packet-switch-capable {
          when
            "../switching-capability = PSC-1  or "
              + "../switching-capability = PSC-2 or "
              + "../switching-capability = PSC-3 or "
              + "../switching-capability = PSC-4" {
            description "Valid only for PSC";
          }
          description
            "Interface has packet-switching capabilities";
          leaf minimum-lsp-bandwidth {
            type decimal64 {
              fraction-digits 2;
            }
            description
              "Minimum LSP Bandwidth. Units in bytes per second";
          }

          leaf interface-mtu {
            type uint16;
            description "Interface MTU";
          }
        }  // container packet-switch-capable

        container time-division-multiplex-capable {
          when
            "../switching-capability = TDM" {
            description "Valid only for TDM";
          }
          description
            "Interface has time-division multiplex capabilities";
          leaf minimum-lsp-bandwidth {
            type decimal64 {
              fraction-digits 2;
            }
            description
              "Minimum LSP Bandwidth. Units in bytes per second";
          }

          leaf indication {
            type enumeration {
              enum "standard" {
                value 0;
                description
                  "Indicates support of standard SONET/SDH";
              }
              enum "arbitrary" {
                value 1;
                description
                  "Indicates support of arbitrary SONET/SDH";
              }
            }
            description
              "Indication whether the interface supports Standard or
             Arbitrary SONET/SDH";
          }
        }  // container time-division-multiplex-capable
      }  // list interface-switching-capabilities

      container srlg {
        description
          "Shared Risk Link Group Attributes";
        uses srlg-attributes;
      }  // container srlg
    }  // grouping ted-link-attributes

    grouping srlg-attributes {
      description
        "Shared Risk Link Group Attributes";
      reference
        "RFC 5307, RFC 4203: ISIS / OSPF Extensions in Support of
        Generalized Multi-Protocol Label Switching (GMPLS)";

      list srlg-values {
        key "srlg-value";
        description
          "List of Shared Risk Link Group this interface belongs to.";
        leaf srlg-value {
          type uint32;
          description
            "Shared Risk Link Group value";
        }
      }  // list srlg-values
    }  // grouping srlg-attributes
  }  // module ted

Summary

  
  
Organization TBD
  
Module ted
Version 2014-10-27
File ted@2014-10-27.yang
  
Prefix ted
Namespace urn:TBD:params:xml:ns:yang:network:ted
  
Cooked /cookedmodules/ted/2014-10-27
YANG /src/ted@2014-10-27.yang
XSD /xsd/ted@2014-10-27.xsd
  
Abstract Helper module to hold trafic engineering attributes for any topology on which trafic engineering is enabled.
  
Contact
TBD

Description

 
Helper module to hold trafic engineering attributes for
any topology on which trafic engineering is enabled.

Typedefs

Typedef Base type Abstract
encoding-type enumeration Encoding type of an interface.
pcc-capabilities bits Path Computation Capabilities.
switching-capabilities enumeration Switching Capabilities of an interface.

Groupings

Grouping Objects Abstract
srlg-attributes srlg-values Shared Risk Link Group Attributes
ted-link-attributes link-index information-source credibility-preference admin-status oper-status area-id color max-link-bandwidth max-resv-link-bandwidth unreserved-bandwidth te-default-metric link-protection-type interface-switching-capabilities srlg TED Attributes associated with the link.
ted-node-attributes te-router-id-ipv4 te-router-id-ipv6 ipv4-local-address ipv6-local-address pcc-capabilities Identifier to uniquely identify a node in TED