--- 1/draft-ietf-teas-yang-te-types-07.txt 2019-04-08 18:13:11.245372930 -0700 +++ 2/draft-ietf-teas-yang-te-types-08.txt 2019-04-08 18:13:11.377376416 -0700 @@ -5,21 +5,21 @@ Expires: October 10, 2019 Cisco Systems Inc X. Liu Volta Networks V. Beeram Juniper Networks I. Bryskin Huawei Technologies April 08, 2019 Traffic Engineering Common YANG Types - draft-ietf-teas-yang-te-types-07 + draft-ietf-teas-yang-te-types-08 Abstract This document defines a collection of common data types and groupings in YANG data modeling language. These derived common types and groupings are intended to be imported by modules that model Traffic Engineering (TE) configuration and state capabilities. Status of This Memo @@ -54,31 +54,31 @@ described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 1.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 3 2. Acronyms and Abbreviations . . . . . . . . . . . . . . . . . 3 3. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.1. TE Types Module Contents . . . . . . . . . . . . . . . . 4 - 3.2. Packet TE Types Module Contents . . . . . . . . . . . . . 7 + 3.2. Packet TE Types Module Contents . . . . . . . . . . . . . 8 4. TE Types YANG Module . . . . . . . . . . . . . . . . . . . . 8 5. Packet TE Types YANG Module . . . . . . . . . . . . . . . . . 69 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 78 7. Security Considerations . . . . . . . . . . . . . . . . . . . 78 - 8. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 78 + 8. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 79 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 79 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 79 10.1. Normative References . . . . . . . . . . . . . . . . . . 79 10.2. Informative References . . . . . . . . . . . . . . . . . 80 - Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 86 + Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 87 1. Introduction YANG [RFC6020] and [RFC7950] is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols such as NETCONF [RFC6241]. The YANG language supports a small set of built-in data types and provides mechanisms to derive other types from the built-in types. @@ -130,20 +130,31 @@ MPLS: Multiprotocol Label Switching RSVP: Resource Reservation Protocol TE: Traffic Engineering DS-TE: Differentiated Services Traffic Engineering SRLG: Shared Link Risk Group + NBMA: Non-Broadcast Multiple-access Network + + APS: Automatic Protection Switching + SD: Signal Degrade + + SF: Signal Fail + + WTR: Wait to Restore + + PM: Performance Metrics + 3. Overview This document defines two YANG modules for common TE types: ietf-te- types for TE generic types and ietf-te-packet-types for packet specific types. Other technology specific TE types are outside the scope of this document. 3.1. TE Types Module Contents The ietf-te-types module contains common TE types that are @@ -362,29 +373,28 @@ A YANG grouping for the augmentation of packet specific metrics to the generic performance metrics grouping parameters. 4. TE Types YANG Module The ietf-te-types module imports from the following modules: o ietf-yang-types and ietf-inet-types defined in [RFC6991] o ietf-routing-types defined in [RFC8294] - In addition to the references cross-referenced in Section 3.1, this model also references the following RFCs in defining the types and YANG grouping of the YANG module: [RFC3272], [RFC4202], [RFC4328], [RFC4657], [RFC5817], [RFC6004], [RFC6511], [RFC6205], [RFC7139], [RFC7308], [RFC7551], [RFC7571], [RFC7579], [RFC4090], [RFC4561] and [RFC7951]. - file "ietf-te-types@2019-04-08.yang" + file "ietf-te-types@2019-04-09.yang" module ietf-te-types { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-te-types"; /* Replace with IANA when assigned */ prefix "te-types"; import ietf-inet-types { prefix inet; reference "RFC6991: Common YANG Data Types"; @@ -451,21 +461,21 @@ (https://trustee.ietf.org/license-info). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; // RFC Ed.: replace XXXX with actual RFC number and remove this // note. // RFC Ed.: update the date below with the date of RFC publication // and remove this note. - revision "2019-04-08" { + revision "2019-04-09" { description "Latest revision of TE types"; reference "RFC XXXX: A YANG Data Model for Common Traffic Engineering Types"; } /** * Typedefs */ typedef admin-group { @@ -516,29 +526,28 @@ } enum "normal" { value 1; description "Normal."; } enum "abnormal" { value 2; description "Abnormal. The anomalous bit is set."; - } } description "Indicates whether a performance metric is normal, abnormal, or unknown."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; } typedef srlg { type uint32; description "SRLG type"; reference "RFC4203 and RFC5307"; } @@ -1546,59 +1552,60 @@ "Base identity of protection states for reporting purposes."; } identity normal { base lsp-protection-state; description "Normal state."; } identity signal-fail-of-protection { base lsp-protection-state; description - "There is a SF condition on the protection transport - entity which has higher priority than the FS command."; + "There is a signal fail condition on the protection + transport entity which has higher priority than the + forced switch command."; reference "RFC4427"; } identity lockout-of-protection { base lsp-protection-state; description "A Loss of Protection (LoP) command is active."; reference "RFC4427"; } identity forced-switch { base lsp-protection-state; description - "A forced switch (FS) command is active."; + "A forced switch command is active."; reference "RFC4427"; } identity signal-fail { base lsp-protection-state; description - "There is a SF condition on either the working + "There is a signal fail condition on either the working or the protection path."; reference "RFC4427"; } identity signal-degrade { base lsp-protection-state; description - "There is an SD condition on either the working or the - protection path."; + "There is an signal degrade condition on either the working + or the protection path."; reference "RFC4427"; } identity manual-switch { base lsp-protection-state; description - "A manual switch (MS) command is active."; + "A manual switch command is active."; reference "RFC4427"; } identity wait-to-restore { base lsp-protection-state; description "A wait time to restore (WTR) is running."; reference "RFC4427"; } @@ -2210,30 +2214,29 @@ "When the datastore contains several topologies, the topology-id distinguishes between them. If omitted, the default empty string topology-id is assumed"; } } } /** * TE performance metric groupings **/ - grouping performance-metrics-one-way-delay-loss { description - "Performance metric information in real time that can + "Performance Metric (PM) information in real time that can be applicable to links or connections. PM defined in this grouping is applicable to generic TE performance metrics as well as packet TE performance metrics."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; leaf one-way-delay { type uint32 { range 0..16777215; } description "One-way delay or latency in micro seconds."; } leaf one-way-delay-normality { @@ -2243,44 +2246,46 @@ } grouping performance-metrics-two-way-delay-loss { description "Performance metric information in real time that can be applicable to links or connections. PM defined in this grouping is applicable to generic TE performance metrics as well as packet TE performance metrics."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; leaf two-way-delay { type uint32 { range 0..16777215; + } description "Two-way delay or latency in micro seconds."; } leaf two-way-delay-normality { type te-types:performance-metrics-normality; description "Two-way delay normality."; } } + grouping performance-metrics-one-way-bandwidth { description "Performance metric information in real time that can be applicable to links. PM defined in this grouping is applicable to generic TE performance metrics as well as packet TE performance metrics."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; leaf one-way-residual-bandwidth { type rt-types:bandwidth-ieee-float32; default '0x0p0'; description "Residual bandwidth that subtracts tunnel reservations from Maximum Bandwidth (or link capacity) @@ -2386,37 +2391,36 @@ } grouping performance-metrics-attributes { description "A container containing performance metric attributes."; container performance-metrics-one-way { description "One-way link performance information in real time."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; uses performance-metrics-one-way-delay-loss; uses performance-metrics-one-way-bandwidth; } container performance-metrics-two-way { description "Two-way link performance information in real time."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; - uses performance-metrics-two-way-delay-loss; } } grouping performance-metrics-throttle-container { description "A container controlling performance metric throttle."; container throttle { must "suppression-interval >= measure-interval" { error-message @@ -2423,21 +2427,21 @@ "suppression-interval cannot be less then measure-interval."; description "Constraint on suppression-interval and measure-interval."; } description "Link performance information in real time."; reference "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. - RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions. + RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. RFC7823: Performance-Based Path Selection for Explicitly Routed Label Switched Paths (LSPs) Using TE Metric Extensions"; leaf one-way-delay-offset { type uint32 { range 0..16777215; } default 0; description "Offset value to be added to the measured delay value."; @@ -3293,21 +3300,21 @@ Figure 1: TE basic types YANG module 5. Packet TE Types YANG Module The ietf-te-packet-types module imports from the following modules: o ietf-te-types defined in this document. - file "ietf-te-packet-types@2019-04-08.yang" + file "ietf-te-packet-types@2019-04-09.yang" module ietf-te-packet-types { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-te-packet-types"; /* Replace with IANA when assigned */ prefix "te-packet-types"; /* Import TE generic types */ import ietf-te-types { prefix te-types; @@ -3366,21 +3373,21 @@ (https://trustee.ietf.org/license-info). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; // RFC Ed.: replace XXXX with actual RFC number and remove this // note. // RFC Ed.: update the date below with the date of RFC publication // and remove this note. - revision "2019-04-08" { + revision "2019-04-09" { description "Latest revision of TE MPLS types"; reference "RFC XXXX: A YANG Data Model for Common Traffic Engineering Types"; } /** * Typedefs */ typedef te-bandwidth-requested-type {