From bd2e35e140d70af0fcb2bace7b6410740f08131d Mon Sep 17 00:00:00 2001 From: italobusi Date: Fri, 3 Jul 2020 19:00:45 +0200 Subject: [PATCH] Updated based on 2020-07-03 TEAS Call Models updated based on feedbacks received during the 2020-07-03 TEAS Call --- ietf-mpls-te-types.yang | 29 ++---- ietf-mpls-te.tree | 75 ++++++++++----- ietf-te-mpls.tree | 197 ---------------------------------------- ietf-te-mpls.yang | 13 +-- 4 files changed, 64 insertions(+), 250 deletions(-) delete mode 100644 ietf-te-mpls.tree diff --git a/ietf-mpls-te-types.yang b/ietf-mpls-te-types.yang index 9b294e0..5918e15 100644 --- a/ietf-mpls-te-types.yang +++ b/ietf-mpls-te-types.yang @@ -38,7 +38,7 @@ module ietf-mpls-te-types { This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; - revision 2020-06-26 { + revision 2020-07-03 { description "Initial Version"; reference @@ -83,8 +83,6 @@ module ietf-mpls-te-types { */ typedef load-balancing-type { - description - "The type of load balancing used on bundled links."; type enumeration { enum per-flow { description @@ -104,6 +102,8 @@ module ietf-mpls-te-types { forwarded on the same component link."; } } + description + "The type of load balancing used on bundled links."; } // typedef load-balancing-type /* @@ -182,27 +182,12 @@ module ietf-mpls-te-types { grouping te-mpls-label-hop { description - "MPLS-TE Label. "; + "MPLS-TE Label Hop."; - choice mpls-hop-type { + leaf mpls-label { + type rt-types:mpls-label; description - "Whether the label-hop is a normal MPLS-TE - label-hop or a PHP hop"; - - case php { - leaf mpls-php { - type empty; - description - "MPLS-TE PHP Label Hop."; - } - } - case label-hop { - leaf mpls-label { - type rt-types:mpls-label-general-use; - description - "MPLS-TE Label Hop."; - } - } + "MPLS Label."; } } // grouping te-mpls-label-hop } \ No newline at end of file diff --git a/ietf-mpls-te.tree b/ietf-mpls-te.tree index 93d09f5..0b2c16e 100644 --- a/ietf-mpls-te.tree +++ b/ietf-mpls-te.tree @@ -68,27 +68,30 @@ module: ietf-te-mpls | +--rw load-share? uint32 | +--rw policy-class? uint8 +--rw bandwidth-mpls - +--rw specification-type? - | te-packet-types:te-bandwidth-requested-type - +--rw set-bandwidth? te-packet-types:bandwidth-kbps - +--rw class-type? te-types:te-ds-class - +--ro state - | +--ro signaled-bandwidth? te-packet-types:bandwidth-kbps - +--rw auto-bandwidth - +--rw enabled? boolean - +--rw min-bw? te-packet-types:bandwidth-kbps - +--rw max-bw? te-packet-types:bandwidth-kbps - +--rw adjust-interval? uint32 - +--rw adjust-threshold? rt-types:percentage - +--rw overflow - | +--rw enabled? boolean - | +--rw overflow-threshold? rt-types:percentage - | +--rw trigger-event-count? uint16 - +--rw underflow - +--rw enabled? boolean - +--rw underflow-threshold? rt-types:percentage - +--rw trigger-event-count? uint16 - augment /te:te/te:tunnels/te:tunnel/te:primary-paths/te:primary-path: + | +--rw specification-type? + | | te-packet-types:te-bandwidth-requested-type + | +--rw set-bandwidth? te-packet-types:bandwidth-kbps + | +--rw class-type? te-types:te-ds-class + | +--ro state + | | +--ro signaled-bandwidth? te-packet-types:bandwidth-kbps + | +--rw auto-bandwidth + | +--rw enabled? boolean + | +--rw min-bw? te-packet-types:bandwidth-kbps + | +--rw max-bw? te-packet-types:bandwidth-kbps + | +--rw adjust-interval? uint32 + | +--rw adjust-threshold? rt-types:percentage + | +--rw overflow + | | +--rw enabled? boolean + | | +--rw overflow-threshold? rt-types:percentage + | | +--rw trigger-event-count? uint16 + | +--rw underflow + | +--rw enabled? boolean + | +--rw underflow-threshold? rt-types:percentage + | +--rw trigger-event-count? uint16 + +--rw load-balancing-type? mte-types:load-balancing-type + +--rw uhp-required? empty + augment /te:te/te:tunnels/te:tunnel/te:primary-paths + /te:primary-path: +--rw static-lsp-name? mpls-static:static-lsp-ref augment /te:te/te:tunnels/te:tunnel/te:secondary-paths /te:secondary-path: @@ -102,8 +105,8 @@ module: ietf-te-mpls +--rw class-type? te-types:te-ds-class +--ro state +--ro signaled-bandwidth? te-packet-types:bandwidth-kbps - augment /te:te/te:tunnels/te:tunnel/te:primary-paths/te:primary-path - /te:lsps/te:lsp: + augment /te:te/te:tunnels/te:tunnel/te:primary-paths + /te:primary-path/te:lsps/te:lsp: +--ro performance-metrics-one-way | +--ro one-way-delay? uint32 | +--ro one-way-delay-normality? @@ -148,3 +151,29 @@ module: ietf-te-mpls +--ro two-way-packet-loss? decimal64 +--ro two-way-packet-loss-normality? te-types:performance-metrics-normality + augment /te:te/te:tunnels/te:tunnel/te:primary-paths + /te:primary-path/te:computed-paths-properties + /te:computed-path-properties/te:path-properties + /te:path-route-objects/te:path-route-object/te:type + /te:label/te:label-hop/te:te-label/te:technology: + +--:(mpls) + +--ro mpls-label? rt-types:mpls-label + augment /te:te/te:tunnels/te:tunnel/te:primary-paths + /te:primary-path/te:lsps/te:lsp/te:path-properties + /te:path-route-objects/te:path-route-object/te:type + /te:label/te:label-hop/te:te-label/te:technology: + +--:(mpls) + +--ro mpls-label? rt-types:mpls-label + augment /te:te/te:tunnels/te:tunnel/te:secondary-paths + /te:secondary-path/te:computed-paths-properties + /te:computed-path-properties/te:path-properties + /te:path-route-objects/te:path-route-object/te:type + /te:label/te:label-hop/te:te-label/te:technology: + +--:(mpls) + +--ro mpls-label? rt-types:mpls-label + augment /te:te/te:tunnels/te:tunnel/te:secondary-paths + /te:secondary-path/te:lsps/te:lsp/te:path-properties + /te:path-route-objects/te:path-route-object/te:type + /te:label/te:label-hop/te:te-label/te:technology: + +--:(mpls) + +--ro mpls-label? rt-types:mpls-label diff --git a/ietf-te-mpls.tree b/ietf-te-mpls.tree deleted file mode 100644 index 41d84b7..0000000 --- a/ietf-te-mpls.tree +++ /dev/null @@ -1,197 +0,0 @@ - -module: ietf-te-mpls - augment /te:te/te-dev:performance-thresholds: - +--rw throttle - +--rw one-way-delay-offset? uint32 - +--rw measure-interval? uint32 - +--rw advertisement-interval? uint32 - +--rw suppression-interval? uint32 - +--rw threshold-out - | +--rw one-way-delay? uint32 - | +--rw one-way-residual-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw one-way-available-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw one-way-utilized-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw two-way-delay? uint32 - | +--rw one-way-min-delay? uint32 - | +--rw one-way-max-delay? uint32 - | +--rw one-way-delay-variation? uint32 - | +--rw one-way-packet-loss? decimal64 - | +--rw two-way-min-delay? uint32 - | +--rw two-way-max-delay? uint32 - | +--rw two-way-delay-variation? uint32 - | +--rw two-way-packet-loss? decimal64 - +--rw threshold-in - | +--rw one-way-delay? uint32 - | +--rw one-way-residual-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw one-way-available-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw one-way-utilized-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--rw two-way-delay? uint32 - | +--rw one-way-min-delay? uint32 - | +--rw one-way-max-delay? uint32 - | +--rw one-way-delay-variation? uint32 - | +--rw one-way-packet-loss? decimal64 - | +--rw two-way-min-delay? uint32 - | +--rw two-way-max-delay? uint32 - | +--rw two-way-delay-variation? uint32 - | +--rw two-way-packet-loss? decimal64 - +--rw threshold-accelerated-advertisement - +--rw one-way-delay? uint32 - +--rw one-way-residual-bandwidth? - | rt-types:bandwidth-ieee-float32 - +--rw one-way-available-bandwidth? - | rt-types:bandwidth-ieee-float32 - +--rw one-way-utilized-bandwidth? - | rt-types:bandwidth-ieee-float32 - +--rw two-way-delay? uint32 - +--rw one-way-min-delay? uint32 - +--rw one-way-max-delay? uint32 - +--rw one-way-delay-variation? uint32 - +--rw one-way-packet-loss? decimal64 - +--rw two-way-min-delay? uint32 - +--rw two-way-max-delay? uint32 - +--rw two-way-delay-variation? uint32 - +--rw two-way-packet-loss? decimal64 - augment /te:te/te:tunnels/te:tunnel: - +--rw tunnel-igp-shortcut - | +--rw shortcut-eligible? boolean - | +--rw metric-type? identityref - | +--rw metric? int32 - | +--rw routing-afs* inet:ip-version - +--rw forwarding - | +--rw binding-label? rt-types:mpls-label - | +--rw load-share? uint32 - | +--rw policy-class? uint8 - +--rw bandwidth-mpls - +--rw specification-type? - | te-packet-types:te-bandwidth-requested-type - +--rw set-bandwidth? te-packet-types:bandwidth-kbps - +--rw class-type? te-types:te-ds-class - +--ro state - | +--ro signaled-bandwidth? te-packet-types:bandwidth-kbps - +--rw auto-bandwidth - +--rw enabled? boolean - +--rw min-bw? te-packet-types:bandwidth-kbps - +--rw max-bw? te-packet-types:bandwidth-kbps - +--rw adjust-interval? uint32 - +--rw adjust-threshold? rt-types:percentage - +--rw overflow - | +--rw enabled? boolean - | +--rw overflow-threshold? rt-types:percentage - | +--rw trigger-event-count? uint16 - +--rw underflow - +--rw enabled? boolean - +--rw underflow-threshold? rt-types:percentage - +--rw trigger-event-count? uint16 - augment /te:te/te:tunnels/te:tunnel/te:primary-paths - /te:primary-path: - +--rw load-balancing-type? mte-types:load-balancing-type - +--rw uhp-required? empty - augment /te:te/te:tunnels/te:tunnel/te:primary-paths - /te:primary-path: - +--rw static-lsp-name? mpls-static:static-lsp-ref - augment /te:te/te:tunnels/te:tunnel/te:secondary-paths - /te:secondary-path: - +--rw static-lsp-name? mpls-static:static-lsp-ref - augment /te:te/te:globals/te:named-path-constraints - /te:named-path-constraint: - +--rw bandwidth - +--rw specification-type? - | te-packet-types:te-bandwidth-requested-type - +--rw set-bandwidth? te-packet-types:bandwidth-kbps - +--rw class-type? te-types:te-ds-class - +--ro state - +--ro signaled-bandwidth? te-packet-types:bandwidth-kbps - augment /te:te/te:tunnels/te:tunnel/te:primary-paths - /te:primary-path/te:lsps/te:lsp: - +--ro performance-metrics-one-way - | +--ro one-way-delay? uint32 - | +--ro one-way-delay-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-residual-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--ro one-way-residual-bandwidth-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-available-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--ro one-way-available-bandwidth-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-utilized-bandwidth? - | | rt-types:bandwidth-ieee-float32 - | +--ro one-way-utilized-bandwidth-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-min-delay? uint32 - | +--ro one-way-min-delay-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-max-delay? uint32 - | +--ro one-way-max-delay-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-delay-variation? uint32 - | +--ro one-way-delay-variation-normality? - | | te-types:performance-metrics-normality - | +--ro one-way-packet-loss? decimal64 - | +--ro one-way-packet-loss-normality? - | te-types:performance-metrics-normality - +--ro performance-metrics-two-way - +--ro two-way-delay? uint32 - +--ro two-way-delay-normality? - | te-types:performance-metrics-normality - +--ro two-way-min-delay? uint32 - +--ro two-way-min-delay-normality? - | te-types:performance-metrics-normality - +--ro two-way-max-delay? uint32 - +--ro two-way-max-delay-normality? - | te-types:performance-metrics-normality - +--ro two-way-delay-variation? uint32 - +--ro two-way-delay-variation-normality? - | te-types:performance-metrics-normality - +--ro two-way-packet-loss? decimal64 - +--ro two-way-packet-loss-normality? - te-types:performance-metrics-normality - augment /te:te/te:tunnels/te:tunnel/te:primary-paths - /te:primary-path/te:computed-paths-properties - /te:computed-path-properties/te:path-properties - /te:path-route-objects/te:path-route-object/te:type - /te:label/te:label-hop/te:te-label/te:technology: - +--:(mpls) - +--ro (mpls-hop-type)? - +--:(php) - | +--ro mpls-php? empty - +--:(label-hop) - +--ro mpls-label? rt-types:mpls-label-general-use - augment /te:te/te:tunnels/te:tunnel/te:primary-paths - /te:primary-path/te:lsps/te:lsp/te:path-properties - /te:path-route-objects/te:path-route-object/te:type - /te:label/te:label-hop/te:te-label/te:technology: - +--:(mpls) - +--ro (mpls-hop-type)? - +--:(php) - | +--ro mpls-php? empty - +--:(label-hop) - +--ro mpls-label? rt-types:mpls-label-general-use - augment /te:te/te:tunnels/te:tunnel/te:secondary-paths - /te:secondary-path/te:computed-paths-properties - /te:computed-path-properties/te:path-properties - /te:path-route-objects/te:path-route-object/te:type - /te:label/te:label-hop/te:te-label/te:technology: - +--:(mpls) - +--ro (mpls-hop-type)? - +--:(php) - | +--ro mpls-php? empty - +--:(label-hop) - +--ro mpls-label? rt-types:mpls-label-general-use - augment /te:te/te:tunnels/te:tunnel/te:secondary-paths - /te:secondary-path/te:lsps/te:lsp/te:path-properties - /te:path-route-objects/te:path-route-object/te:type - /te:label/te:label-hop/te:te-label/te:technology: - +--:(mpls) - +--ro (mpls-hop-type)? - +--:(php) - | +--ro mpls-php? empty - +--:(label-hop) - +--ro mpls-label? rt-types:mpls-label-general-use diff --git a/ietf-te-mpls.yang b/ietf-te-mpls.yang index 8b622b8..607d049 100644 --- a/ietf-te-mpls.yang +++ b/ietf-te-mpls.yang @@ -99,7 +99,7 @@ module ietf-te-mpls { // RFC Ed.: update the date below with the date of RFC publication // and remove this note. - revision "2020-06-26" { + revision "2020-07-03" { description "Latest update to MPLS TE YANG module."; reference "RFCXXXX: A YANG Data Model for MPLS-TE Tunnels and LSP(s)"; @@ -411,9 +411,9 @@ module ietf-te-mpls { } } - grouping te-mpls-path-constraints { + grouping te-mpls-tunnel-attributes { description - "Path constraints for MPLS-TE LSP attributes"; + "MPLS-TE Tunnel attributes."; leaf load-balancing-type { type mte-types:load-balancing-type; @@ -451,14 +451,11 @@ module ietf-te-mpls { uses tunnel-igp-shortcuts; uses tunnel-forwarding-adjacency; uses tunnel-bandwidth_top; + uses te-mpls-tunnel-attributes; } /* MPLS TE path augmentations */ - augment "/te:te/te:tunnels/te:tunnel/" + - "te:primary-paths/te:primary-path" { - description "Augment primary path constraints."; - uses te-mpls-path-constraints; - } + /* MPLS TE LSPs augmentations */ augment "/te:te/te:tunnels/te:tunnel/" +