From 817ec78764ba9c4d0bb554f00690b02495feede0 Mon Sep 17 00:00:00 2001 From: Miroslav Kovac Date: Sun, 15 Oct 2023 18:06:31 +0000 Subject: [PATCH] Cronjob - daily check of IETF modules. --- .../ietf-rib-extension@2023-06-06.yang | 336 ---------------- .../ietf-rib-extension@2023-10-13.yang | 364 ++++++++++++++++++ ...023-09-12.yang => ietf-vn@2023-10-14.yang} | 5 +- 3 files changed, 365 insertions(+), 340 deletions(-) delete mode 100644 experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-06-06.yang create mode 100644 experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-10-13.yang rename experimental/ietf-extracted-YANG-modules/{ietf-vn@2023-09-12.yang => ietf-vn@2023-10-14.yang} (98%) diff --git a/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-06-06.yang b/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-06-06.yang deleted file mode 100644 index d79c39241..000000000 --- a/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-06-06.yang +++ /dev/null @@ -1,336 +0,0 @@ -module ietf-rib-extension { - yang-version "1.1"; - namespace "urn:ietf:params:xml:ns:yang:ietf-rib-extension"; - - prefix rib-ext; - - import ietf-inet-types { - prefix "inet"; - reference "RFC 6991: Common YANG Data Types"; - } - - import ietf-interfaces { - prefix "if"; - reference "RFC 8343: A YANG Data Model for Interface - Management (NMDA Version)"; - } - - import ietf-routing { - prefix "rt"; - reference "RFC 8349: A YANG Data Model for Routing - Management (NMDA Version)"; - } - - import ietf-ipv4-unicast-routing { - prefix "v4ur"; - reference "RFC 8349: A YANG Data Model for Routing - Management (NMDA Version)"; - } - - import ietf-ipv6-unicast-routing { - prefix "v6ur"; - reference "RFC 8349: A YANG Data Model for Routing - Management (NMDA Version)"; - } - - organization - "IETF RTGWG - Routing Working Group"; - - contact - "WG Web: - WG List: - - Author: Acee Lindem - - Author: Yingzhen Qu - "; - - description - "This YANG module extends the RIB defined in the ietf-routing - YANG module with additional route attributes. - - This YANG module conforms to the Network Management - Datastore Architecture (NDMA) as described in RFC 8342. - - Copyright (c) 2023 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; - see the RFC itself for full legal notices."; - - revision 2023-06-06 { - description - "Initial Version"; - reference - "RFC XXXX: A YANG Data Model for RIB Extensions."; - } - - /* Groupings */ - grouping rib-statistics { - description - "Statistics grouping used for RIB augmentation."; - container statistics { - config false; - description - "Container for RIB statistics."; - leaf total-routes { - type uint32; - description - "Total number of routes in the RIB"; - } - leaf total-active-routes { - type uint32; - description - "Total number of active routes in the RIB. An active - route is the route that is preferred over other routes - to the same destination prefix."; - } - leaf total-route-memory { - type uint64; - units "bytes"; - description - "Total memory for all routes in the RIB."; - } - list protocol-statistics { - description - "RIB statistics for routing protocols installing - routes in the RIB."; - leaf protocol { - type identityref { - base rt:routing-protocol; - } - description - "Routing protocol installing routes in the RIB."; - } - leaf routes { - type uint32; - description - "Total number of routes in the RIB for the routing - protocol identified by the 'protocol'."; - } - leaf active-routes { - type uint32; - description - "Total number of active routes in the RIB for the routing - protocol for the routing protocol identified by the - 'protocol'. An active route is preferred over other - routes to the same destination prefix."; - } - leaf route-memory { - type uint64; - units "bytes"; - description - "Total memory for all routes in the RIB for the routing - protocol identified by the 'protocol'."; - } - } - } - } - - grouping attributes { - description - "Common attributes applicable to all routes."; - leaf metric { - type uint32; - description - "The metric is a numeric value indicating the cost - of the route from the perspective of the routing - protocol installing the route. In general, routes with - a lower metric installed by the same routing protocol - are lower cost to reach and are preferable to routes - with a higher metric. However, metrics from different - routing protocols are not comparable."; - } - leaf-list tag { - type uint32; - description - "A tag is a 32-bit opaque value associated with the - route that can be used for policy decisions such as - advertisement and filtering of the route."; - } - leaf application-tag { - type uint32; - description - "The application-specific tag is an additional tag that - can be used by applications that require semantics and/or - policy different from that of the tag. For example, - the tag is usually automatically advertised in OSPF - AS-External Link State Advertisements (LSAs) while this - application-specific tag is not advertised implicitly."; - } - } - grouping repair-path { - description - "Grouping for IP Fast Reroute repair path."; - container repair-path { - description - "IP Fast Reroute next-hop repair path."; - leaf outgoing-interface { - type if:interface-state-ref; - description - "Name of the outgoing interface."; - } - leaf next-hop-address { - type inet:ip-address-no-zone; - description - "IP address of the next hop."; - } - leaf metric { - type uint32; - description - "The metric for the repair path. While the IP Fast - Reroute re-route repair is local and the metric is - not advertised externally, the metric for repair path - is useful for troubleshooting purposes."; - } - reference - "RFC 5714: IP Fast Reroute Framework."; - } - } - - augment "/rt:routing/rt:control-plane-protocols/" - + "rt:control-plane-protocol/rt:static-routes/v4ur:ipv4/" - + "v4ur:route/v4ur:next-hop/v4ur:next-hop-options/" - + "v4ur:simple-next-hop" - { - description - "Augment 'simple-next-hop' case in IPv4 unicast route."; - leaf preference { - type uint32; - default "1"; - description - "The preference is used to select among multiple static - routes. Routes with a lower preference next-hop are - preferred and equal preference routes result in - Equal-Cost-Multi-Path (ECMP) static routes."; - } - leaf tag { - type uint32; - default "0"; - description - "The tag is a 32-bit opaque value associated with the - route that can be used for policy decisions such as - advertisement and filtering of the route."; - } - } - - augment "/rt:routing/rt:control-plane-protocols/" - + "rt:control-plane-protocol/rt:static-routes/v4ur:ipv4/" - + "v4ur:route/v4ur:next-hop/v4ur:next-hop-options/" - + "v4ur:next-hop-list/v4ur:next-hop-list/v4ur:next-hop" - { - description - "Augment static route configuration 'next-hop-list'."; - - leaf preference { - type uint32; - default "1"; - description - "The preference is used to select among multiple static - routes. Routes with a lower preference next-hop are - preferred and equal preference routes result in - Equal-Cost-Multi-Path (ECMP) static routes."; - } - leaf tag { - type uint32; - default "0"; - description - "The tag is a 32-bit opaque value associated with the - route that can be used for policy decisions such as - advertisement and filtering of the route."; - } - } - - augment "/rt:routing/rt:control-plane-protocols/" - + "rt:control-plane-protocol/rt:static-routes/v6ur:ipv6/" - + "v6ur:route/v6ur:next-hop/v6ur:next-hop-options/" - + "v6ur:simple-next-hop" - { - description - "Augment 'simple-next-hop' case in IPv6 unicast route."; - leaf preference { - type uint32; - default "1"; - description - "The preference is used to select among multiple static - routes. Routes with a lower preference next-hop are - preferred and equal preference routes result in - Equal-Cost-Multi-Path (ECMP) static routes."; - } - leaf tag { - type uint32; - default "0"; - description - "The tag is a 32-bit opaque value associated with the - route that can be used for policy decisions such as - advertisement and filtering of the route."; - } - } - - augment "/rt:routing/rt:control-plane-protocols/" - + "rt:control-plane-protocol/rt:static-routes/v6ur:ipv6/" - + "v6ur:route/v6ur:next-hop/v6ur:next-hop-options/" - + "v6ur:next-hop-list/v6ur:next-hop-list/v6ur:next-hop" - { - description - "Augment static route configuration 'next-hop-list'."; - - leaf preference { - type uint32; - default "1"; - description - "The preference is used to select among multiple static - routes. Routes with a lower preference next-hop are - preferred and equal preference routes result in - Equal-Cost-Multi-Path (ECMP) static routes."; - } - leaf tag { - type uint32; - default "0"; - description - "The tag is a 32-bit opaque value associated with the - route that can be used for policy decisions such as - advertisement and filtering of the route."; - } - } - - augment "/rt:routing/rt:ribs/rt:rib" - { - description - "Augment a RIB with statistics."; - uses rib-statistics; - } - - augment "/rt:routing/rt:ribs/rt:rib/" - + "rt:routes/rt:route" - { - description - "Augment a route in RIB with attributes."; - uses attributes; - } - - augment "/rt:routing/rt:ribs/rt:rib/" - + "rt:routes/rt:route/rt:next-hop/rt:next-hop-options/" - + "rt:simple-next-hop" - { - description - "Augment simple-next-hop with repair-path."; - uses repair-path; - } - - augment "/rt:routing/rt:ribs/rt:rib/" - + "rt:routes/rt:route/rt:next-hop/rt:next-hop-options/" - + "rt:next-hop-list/rt:next-hop-list/rt:next-hop" - { - description - "Augment the next-hop with a repair path."; - uses repair-path; - } -} diff --git a/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-10-13.yang b/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-10-13.yang new file mode 100644 index 000000000..a65ddd1da --- /dev/null +++ b/experimental/ietf-extracted-YANG-modules/ietf-rib-extension@2023-10-13.yang @@ -0,0 +1,364 @@ +module ietf-rib-extension { + yang-version "1.1"; + namespace "urn:ietf:params:xml:ns:yang:ietf-rib-extension"; + + prefix rib-ext; + + import ietf-inet-types { + prefix "inet"; + reference "RFC 6991: Common YANG Data Types"; + } + + import ietf-interfaces { + prefix "if"; + reference "RFC 8343: A YANG Data Model for Interface + Management (NMDA Version)"; + } + + import ietf-routing { + prefix "rt"; + reference "RFC 8349: A YANG Data Model for Routing + Management (NMDA Version)"; + } + + import ietf-ipv4-unicast-routing { + prefix "v4ur"; + reference "RFC 8349: A YANG Data Model for Routing + Management (NMDA Version)"; + } + + import ietf-ipv6-unicast-routing { + prefix "v6ur"; + reference "RFC 8349: A YANG Data Model for Routing + Management (NMDA Version)"; + } + + import ietf-ospf { + prefix "ospf"; + reference "RFC 9129: A YANG Data Model for the OSPF Protocol"; + } + + import ietf-isis { + prefix "isis"; + reference "RFC 9130: A YANG Data Model for the IS-IS Protocol"; + } + + organization + "IETF RTGWG - Routing Working Group"; + + contact + "WG Web: + WG List: + + Author: Acee Lindem + + Author: Yingzhen Qu + "; + + description + "This YANG module extends the RIB defined in the ietf-routing + YANG module with additional route attributes. + + This YANG module conforms to the Network Management + Datastore Architecture (NDMA) as described in RFC 8342. + + Copyright (c) 2023 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; + see the RFC itself for full legal notices."; + + revision 2023-10-13 { + description + "Initial Version"; + reference + "RFC XXXX: A YANG Data Model for RIB Extensions."; + } + + /* Groupings */ + grouping rib-statistics { + description + "Statistics grouping used for RIB augmentation."; + container statistics { + config false; + description + "Container for RIB statistics."; + leaf total-routes { + type uint32; + description + "Total number of routes in the RIB"; + } + leaf total-active-routes { + type uint32; + description + "Total number of active routes in the RIB. An active + route is the route that is preferred over other routes + to the same destination prefix."; + } + leaf total-route-memory { + type uint64; + units "bytes"; + description + "Total memory for all routes in the RIB."; + } + list protocol-statistics { + description + "RIB statistics for routing protocols installing + routes in the RIB."; + leaf protocol { + type identityref { + base rt:routing-protocol; + } + description + "Routing protocol installing routes in the RIB."; + } + leaf routes { + type uint32; + description + "Total number of routes in the RIB for the routing + protocol identified by the 'protocol'."; + } + leaf active-routes { + type uint32; + description + "Total number of active routes in the RIB for the routing + protocol for the routing protocol identified by the + 'protocol'. An active route is preferred over other + routes to the same destination prefix."; + } + leaf route-memory { + type uint64; + units "bytes"; + description + "Total memory for all routes in the RIB for the routing + protocol identified by the 'protocol'."; + } + } + } + } + + grouping repair-path { + description + "Grouping for IP Fast Reroute repair path."; + container repair-path { + description + "IP Fast Reroute next-hop repair path."; + leaf outgoing-interface { + type if:interface-state-ref; + description + "Name of the outgoing interface."; + } + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "IP address of the next hop."; + } + leaf metric { + type uint32; + description + "The metric for the repair path. While the IP Fast + Reroute re-route repair is local and the metric is + not advertised externally, the metric for repair path + is useful for troubleshooting purposes."; + } + reference + "RFC 5714: IP Fast Reroute Framework."; + } + } + + augment "/rt:routing/rt:control-plane-protocols/" + + "rt:control-plane-protocol/rt:static-routes/v4ur:ipv4/" + + "v4ur:route/v4ur:next-hop/v4ur:next-hop-options/" + + "v4ur:simple-next-hop" + { + description + "Augment 'simple-next-hop' case in IPv4 unicast route."; + leaf preference { + type uint32; + default "1"; + description + "The preference is used to select among multiple static + routes. Routes with a lower preference next-hop are + preferred and equal preference routes result in + Equal-Cost-Multi-Path (ECMP) static routes."; + } + leaf tag { + type uint32; + default "0"; + description + "The tag is a 32-bit opaque value associated with the + route that can be used for policy decisions such as + advertisement and filtering of the route."; + } + } + + augment "/rt:routing/rt:control-plane-protocols/" + + "rt:control-plane-protocol/rt:static-routes/v4ur:ipv4/" + + "v4ur:route/v4ur:next-hop/v4ur:next-hop-options/" + + "v4ur:next-hop-list/v4ur:next-hop-list/v4ur:next-hop" + { + description + "Augment static route configuration 'next-hop-list'."; + + leaf preference { + type uint32; + default "1"; + description + "The preference is used to select among multiple static + routes. Routes with a lower preference next-hop are + preferred and equal preference routes result in + Equal-Cost-Multi-Path (ECMP) static routes."; + } + leaf tag { + type uint32; + default "0"; + description + "The tag is a 32-bit opaque value associated with the + route that can be used for policy decisions such as + advertisement and filtering of the route."; + } + } + + augment "/rt:routing/rt:control-plane-protocols/" + + "rt:control-plane-protocol/rt:static-routes/v6ur:ipv6/" + + "v6ur:route/v6ur:next-hop/v6ur:next-hop-options/" + + "v6ur:simple-next-hop" + { + description + "Augment 'simple-next-hop' case in IPv6 unicast route."; + leaf preference { + type uint32; + default "1"; + description + "The preference is used to select among multiple static + routes. Routes with a lower preference next-hop are + preferred and equal preference routes result in + Equal-Cost-Multi-Path (ECMP) static routes."; + } + leaf tag { + type uint32; + default "0"; + description + "The tag is a 32-bit opaque value associated with the + route that can be used for policy decisions such as + advertisement and filtering of the route."; + } + } + + augment "/rt:routing/rt:control-plane-protocols/" + + "rt:control-plane-protocol/rt:static-routes/v6ur:ipv6/" + + "v6ur:route/v6ur:next-hop/v6ur:next-hop-options/" + + "v6ur:next-hop-list/v6ur:next-hop-list/v6ur:next-hop" + { + description + "Augment static route configuration 'next-hop-list'."; + + leaf preference { + type uint32; + default "1"; + description + "The preference is used to select among multiple static + routes. Routes with a lower preference next-hop are + preferred and equal preference routes result in + Equal-Cost-Multi-Path (ECMP) static routes."; + } + leaf tag { + type uint32; + default "0"; + description + "The tag is a 32-bit opaque value associated with the + route that can be used for policy decisions such as + advertisement and filtering of the route."; + } + } + + augment "/rt:routing/rt:ribs/rt:rib" + { + description + "Augment a RIB with statistics."; + uses rib-statistics; + } + + augment "/rt:routing/rt:ribs/rt:rib/" + + "rt:routes/rt:route" { + description + "Augment a route in RIB with common attributes."; + leaf metric { + when "not(derived-from(" + + "/rt:routing/rt:ribs/rt:rib/rt:routes/rt:route" + + "/rt:source-protocol, 'ospf:ospf')) " + + "and not(derived-from( " + + "/rt:routing/rt:ribs/rt:rib/rt:routes/rt:route" + + "/rt:source-protocol, 'isis:isis'))" { + description + "This augmentation is only valid for routes whose + source protocol is not OSPF or IS-IS since their YANG + models already include a 'metric' augmentation for + routes."; + } + type uint32; + description + "The metric is a numeric value indicating the cost + of the route from the perspective of the routing + protocol installing the route. In general, routes with + a lower metric installed by the same routing protocol + are lower cost to reach and are preferable to routes + with a higher metric. However, metrics from different + routing protocols are not comparable."; + } + leaf-list tag { + when "not(derived-from(" + + "/rt:routing/rt:ribs/rt:rib/rt:routes/rt:route" + + "/rt:source-protocol, 'ospf:ospf')) " + + "and not(derived-from( " + + "/rt:routing/rt:ribs/rt:rib/rt:routes/rt:route" + + "/rt:source-protocol, 'isis:isis'))" { + description + "This augmentation is only valid for routes whose + source protocol is not OSPF or IS-IS since their YANG + models already include a 'tag' augmentation for + routes."; + } + type uint32; + description + "A tag is a 32-bit opaque value associated with the + route that can be used for policy decisions such as + advertisement and filtering of the route."; + } + leaf application-tag { + type uint32; + description + "The application-specific tag is an additional tag that + can be used by applications that require semantics and/or + policy different from that of the tag. For example, + the tag is usually automatically advertised in OSPF + AS-External Link State Advertisements (LSAs) while this + application-specific tag is not advertised implicitly."; + } + } + + augment "/rt:routing/rt:ribs/rt:rib/" + + "rt:routes/rt:route/rt:next-hop/rt:next-hop-options/" + + "rt:simple-next-hop" + { + description + "Augment simple-next-hop with repair-path."; + uses repair-path; + } + + augment "/rt:routing/rt:ribs/rt:rib/" + + "rt:routes/rt:route/rt:next-hop/rt:next-hop-options/" + + "rt:next-hop-list/rt:next-hop-list/rt:next-hop" + { + description + "Augment the next-hop with a repair path."; + uses repair-path; + } +} diff --git a/experimental/ietf-extracted-YANG-modules/ietf-vn@2023-09-12.yang b/experimental/ietf-extracted-YANG-modules/ietf-vn@2023-10-14.yang similarity index 98% rename from experimental/ietf-extracted-YANG-modules/ietf-vn@2023-09-12.yang rename to experimental/ietf-extracted-YANG-modules/ietf-vn@2023-10-14.yang index 3e741ca53..19224ced3 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-vn@2023-09-12.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-vn@2023-10-14.yang @@ -70,7 +70,7 @@ module ietf-vn { This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; - revision 2023-09-12 { + revision 2023-10-14 { description "initial version."; reference @@ -368,9 +368,6 @@ module ietf-vn { description "A unique VN identifier"; } - /*An optional identifier to the TE Topology Model - where the abstract nodes and links of the Topology - can be found for Type 2 VN Service (VNS)*/ uses te-types:te-topology-identifier; leaf abstract-node { type leafref {