diff --git a/experimental/ietf-extracted-YANG-modules/ietf-alto@2023-02-23.yang b/experimental/ietf-extracted-YANG-modules/ietf-alto@2023-02-23.yang index 75d1a9dff..7a3fb9c17 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-alto@2023-02-23.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-alto@2023-02-23.yang @@ -352,6 +352,7 @@ module ietf-alto { reference "RFC 9439: ALTO Performance Cost Metrics, Section 4.2"; } + identity delay-variation { if-feature "performance-metrics"; base cost-metric; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-amm@2024-07-03.yang b/experimental/ietf-extracted-YANG-modules/ietf-amm@2024-07-03.yang index 74727e3cd..c9109bb66 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-amm@2024-07-03.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-amm@2024-07-03.yang @@ -87,6 +87,7 @@ module ietf-amm { "The literal value default for a parameter or result. The argument is the text form of the ARI"; } + extension init-value { argument value; description @@ -135,6 +136,7 @@ module ietf-amm { The argument to this statement is the object name. An 'init-value' substatement must be present."; } + extension ctrl { argument name; description @@ -183,6 +185,7 @@ module ietf-amm { /* * This section contains extensions for defining semantic type instances. */ + extension type { argument name; description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-coreconf@2024-03-04.yang b/experimental/ietf-extracted-YANG-modules/ietf-coreconf@2024-03-04.yang index 5e64c6460..8961e4358 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-coreconf@2024-03-04.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-coreconf@2024-03-04.yang @@ -89,6 +89,7 @@ module ietf-coreconf { 'pattern' or 'require-instance' constrain is not fulfilled."; } + identity missing-element { base error-tag; description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest-statistics@2024-07-02.yang b/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest-statistics@2024-07-02.yang index d19d17403..424dea1b1 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest-statistics@2024-07-02.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest-statistics@2024-07-02.yang @@ -15,6 +15,7 @@ module ietf-data-collection-manifest-statistics { reference "RFC 8641: Subscriptions to YANG Datastores."; } + organization "IETF OPSAWG (Network Configuration) Working Group"; contact @@ -71,3 +72,4 @@ module ietf-data-collection-manifest-statistics { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest@2024-07-02.yang b/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest@2024-07-02.yang index 3c5a7914e..a3298712a 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest@2024-07-02.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-data-collection-manifest@2024-07-02.yang @@ -85,3 +85,4 @@ module ietf-data-collection-manifest { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-dtnma-agent@2024-07-03.yang b/experimental/ietf-extracted-YANG-modules/ietf-dtnma-agent@2024-07-03.yang index 1c2830069..0226bc006 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-dtnma-agent@2024-07-03.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-dtnma-agent@2024-07-03.yang @@ -174,6 +174,7 @@ module ietf-dtnma-agent { amm:type "/ARITYPE/BOOL"; } } + grouping bool-unary-result { description "Boolean result"; @@ -462,6 +463,7 @@ module ietf-dtnma-agent { } } } + // Objects related to VAR handling amm:edd var-list { amm:enum 11; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-eth-service-oam@2024-03-04.yang b/experimental/ietf-extracted-YANG-modules/ietf-eth-service-oam@2024-03-04.yang index 3dd8755b6..ec06fbe7d 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-eth-service-oam@2024-03-04.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-eth-service-oam@2024-03-04.yang @@ -139,12 +139,12 @@ module ietf-eth-service-oam { type string; description "Name of Maintenance Domain."; - } + } leaf ma-name { type string; description "Name of Maintenance Domain. - An maintenance association(MA) is a part of an MD. + An maintenance association(MA) is a part of an MD. An MD can be divided into one or more MAs. "; } @@ -156,7 +156,7 @@ module ietf-eth-service-oam { leaf meg-id { type string; - description + description "Comply with Y.1731 term, mapping with 802.lag MA name."; } leaf meg-level { @@ -214,11 +214,11 @@ module ietf-eth-service-oam { type leafref { path "/ethtsvc:etht-svc/ethtsvc:etht-svc-instances" + "/ethtsvc:etht-svc-name"; - } + } type leafref { path "/clntsvc:client-svc/clntsvc:client-svc-instances" + "/clntsvc:client-svc-name"; - } + } } mandatory true; @@ -231,22 +231,22 @@ module ietf-eth-service-oam { output { list oam-config-list { key "service-name"; - description "The OAM configuration list. "; + description "The OAM configuration list. "; leaf service-name { type union { type leafref { path "/ethtsvc:etht-svc/ethtsvc:etht-svc-instances" + "/ethtsvc:etht-svc-name"; - } + } type leafref { path "/clntsvc:client-svc/clntsvc:client-svc-instances" + "/clntsvc:client-svc-name"; - } + } } mandatory true; description "The name of service."; } - } + } leaf result { type enumeration { enum success { @@ -267,17 +267,17 @@ module ietf-eth-service-oam { description "Delete OAM configurations. "; input { list service-list { - key "service-name"; + key "service-name"; leaf service-name { type union { type leafref { path "/ethtsvc:etht-svc/ethtsvc:etht-svc-instances" + "/ethtsvc:etht-svc-name"; - } + } type leafref { path "/clntsvc:client-svc/clntsvc:client-svc-instances" + "/clntsvc:client-svc-name"; - } + } } mandatory true; description "The name of service."; @@ -294,15 +294,15 @@ module ietf-eth-service-oam { type leafref { path "/ethtsvc:etht-svc/ethtsvc:etht-svc-instances" + "/ethtsvc:etht-svc-name"; - } + } type leafref { path "/clntsvc:client-svc/clntsvc:client-svc-instances" + "/clntsvc:client-svc-name"; - } + } } mandatory true; description "The name of service."; - } + } leaf result { type enumeration { @@ -330,7 +330,7 @@ module ietf-eth-service-oam { path "/nw:networks/nw:network/nw:node/nw:node-id"; } description - "Node identifier. Must be same in the topology."; + "Node identifier. Must be same in the topology."; } } @@ -352,3 +352,4 @@ module ietf-eth-service-oam { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-eth-te-topology@2023-09-28.yang b/experimental/ietf-extracted-YANG-modules/ietf-eth-te-topology@2023-09-28.yang index aecdff758..706d3e274 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-eth-te-topology@2023-09-28.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-eth-te-topology@2023-09-28.yang @@ -31,7 +31,7 @@ module ietf-eth-te-topology { import ietf-eth-tran-types { prefix "etht-types"; reference - "RFC YYYY: A YANG Data Model for Transport Network Client + "RFC YYYY: A YANG Data Model for Transport Network Client Signals"; } // RFC Ed.: replace YYYY with actual RFC number, update date @@ -101,12 +101,12 @@ module ietf-eth-te-topology { grouping label-range-info { description - "Ethernet technology-specific label range related - information with a presence container indicating that the + "Ethernet technology-specific label range related + information with a presence container indicating that the label range is an Ethernet technology-specific label range. This grouping SHOULD be used together with the - eth-label and eth-label-step groupings to provide Ethernet + eth-label and eth-label-step groupings to provide Ethernet technology-specific label information to the models which use the label-restriction-info grouping defined in the module ietf-te-types."; @@ -121,7 +121,7 @@ module ietf-eth-te-topology { description "Ethernet-specific label range related information."; - uses etht-types:eth-label-restriction; + uses etht-types:eth-label-restriction; } } @@ -174,6 +174,7 @@ module ietf-eth-te-topology { } } } + grouping eth-ltp-attributes { description "Ethernet transport Link Termination Point (LTP) attributes"; @@ -257,7 +258,7 @@ module ietf-eth-te-topology { container supported-classification { description - "Service classification capability supported by the + "Service classification capability supported by the Ethernet Link Termination Point (LTP)."; leaf port-classification { @@ -270,6 +271,7 @@ module ietf-eth-te-topology { description "Service classification capabilities based on the VLAN tag(s) supported by the ETH LTP."; + leaf vlan-tag-classification { type boolean; description @@ -288,11 +290,11 @@ module ietf-eth-te-topology { VLAN tag, supported by the ETH LTP."; leaf second-tag-classification { type boolean; - must ". = 'false' or " + must ". = 'false' or " + "../../vlan-tag-classification = 'true'" { description - "VLAN service classification based on the second - VLAN tag can be supported only when VLAN service + "VLAN service classification based on the second + VLAN tag can be supported only when VLAN service classification"; } description @@ -394,7 +396,7 @@ module ietf-eth-te-topology { container eth-node { presence "The TE node is an Ethernet node."; description - "Presence container used only to indicate that the TE node + "Presence container used only to indicate that the TE node is an Ethernet node."; } } @@ -408,10 +410,10 @@ module ietf-eth-te-topology { container eth-svc { presence - "When present, indicates that the Link supports Ethernet + "When present, indicates that the Link supports Ethernet client signals."; description - "Presence container used only to indicate that the link + "Presence container used only to indicate that the link supports Ethernet client signals."; } } @@ -426,7 +428,7 @@ module ietf-eth-te-topology { container eth-svc { presence - "When present, indicates that the Link Termination Point + "When present, indicates that the Link Termination Point (LTP) supports Ethernet client signals."; description "ETH LTP Service attributes."; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-service@2024-01-11.yang b/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-service@2024-01-11.yang index c6c48d4e5..d1207fd7c 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-service@2024-01-11.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-service@2024-01-11.yang @@ -48,7 +48,7 @@ module ietf-eth-tran-service { import ietf-eth-tran-types { prefix etht-types; reference - "RFCXXXX: A YANG Data Model for Transport Network Client + "RFCXXXX: A YANG Data Model for Transport Network Client Signals"; } // RFC Editor: replace XXXX with the actual RFC number assigned @@ -398,7 +398,7 @@ module ietf-eth-tran-service { } } /* - * Open issue: + * Open issue: * can we constraints it to be used only with mp services? */ leaf src-split-horizon-group { @@ -470,6 +470,7 @@ module ietf-eth-tran-service { receiving rate is below the low threshold"; } } + grouping etht-svc-instance-config { description "Configuraiton parameters for Ethernet services."; @@ -750,7 +751,7 @@ module ietf-eth-tran-service { } } /* - * Open issue: + * Open issue: * can we constraints it to be used only with mp services? */ leaf split-horizon-group { diff --git a/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-types@2024-01-11.yang b/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-types@2024-01-11.yang index 83275a7d7..78c849d7b 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-types@2024-01-11.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-eth-tran-types@2024-01-11.yang @@ -214,7 +214,7 @@ module ietf-eth-tran-types { identity root-primary { base access-role; description - "Designates the primary root UNI of an E-Tree service, and + "Designates the primary root UNI of an E-Tree service, and may also designates the UNI access role of E-LINE and E-LAN service."; } @@ -285,6 +285,7 @@ module ietf-eth-tran-types { For example: 1,10-100,50,500-1000"; } + typedef bandwidth-profile-type { type identityref { base bandwidth-profile-type; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-external-transaction-id@2022-10-20.yang b/experimental/ietf-extracted-YANG-modules/ietf-external-transaction-id@2022-10-20.yang index 5e8d86914..246118c1e 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-external-transaction-id@2022-10-20.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-external-transaction-id@2022-10-20.yang @@ -152,3 +152,4 @@ module ietf-external-transaction-id { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-fgotn-topology@2024-07-07.yang b/experimental/ietf-extracted-YANG-modules/ietf-fgotn-topology@2024-07-07.yang index 343e1359d..dc51650ff 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-fgotn-topology@2024-07-07.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-fgotn-topology@2024-07-07.yang @@ -55,8 +55,8 @@ module ietf-fgotn-topology { "; description - "This module defines a YANG data model for fgOTN-specific - extension based on existing network topology models. The model + "This module defines a YANG data model for fgOTN-specific + extension based on existing network topology models. The model fully conforms to the Network Management Datastore Architecture (NMDA). @@ -95,14 +95,14 @@ module ietf-fgotn-topology { description "It is used to indicate whether the TP can support fgOTN switching capability."; - } + } } - augment "/nw:networks/nw:network/nt:link/tet:te" + - "/tet:te-link-attributes/tet:max-link-bandwidth" + + augment "/nw:networks/nw:network/nt:link/tet:te" + + "/tet:te-link-attributes/tet:max-link-bandwidth" + "/tet:te-bandwidth/otnt:otn-bandwidth/otnt:odulist" { description - "specific augmentation of fgOTN link on maximum link + "specific augmentation of fgOTN link on maximum link bandwidth"; leaf fgotn-bandwidth { type string; @@ -110,13 +110,13 @@ module ietf-fgotn-topology { "It is used to indicate how much of the bandwidth has been allocated for the usage of fgOTN."; } - } + } - augment "/nw:networks/nw:network/nt:link/tet:te" + + augment "/nw:networks/nw:network/nt:link/tet:te" + "/tet:te-link-attributes/tet:unreserved-bandwidth" + "/tet:te-bandwidth/otnt:otn-bandwidth" { description - "specific augmentation of fgOTN link on unreserved link + "specific augmentation of fgOTN link on unreserved link bandwidth"; list fgotnlist { key "odu-type odu-ts-number"; @@ -127,32 +127,32 @@ module ietf-fgotn-topology { type identityref { base l1-types:odu-type; } - description + description "The granularity of server ODUk"; } leaf odu-ts-number { type uint16; - description + description "The index of server ODUk channel"; } leaf fgotn-bandwidth { type string; - description + description "The unsreserved bandwidth of fgOTN in this server ODUk"; } } } - augment "/nw:networks/tet:te/tet:templates/tet:link-template"+ + augment "/nw:networks/tet:te/tet:templates/tet:link-template"+ "/tet:te-link-attributes/tet:label-restrictions" + "/tet:label-restriction/otnt:otn-label-range" { description "specific augmentation of fgOTN label"; list fgts-range { key "odu-type odu-ts-number"; - description + description "This structure is used to describe the availability of fgOTN timeslot in the server ODUk"; leaf odu-type { @@ -165,19 +165,19 @@ module ietf-fgotn-topology { leaf odu-ts-number { type string; - description - "The index of server ODUk channel"; + description + "The index of server ODUk channel"; } leaf fgts-reserved { type string; - description + description "The reserved fgOTN timeslot in this server ODUk"; } leaf fgts-unreserved { type string; - description + description "The unreserved fgOTN timeslot in this server ODUk"; } } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-fgotn-tunnel@2024-07-07.yang b/experimental/ietf-extracted-YANG-modules/ietf-fgotn-tunnel@2024-07-07.yang index 7bd4e5bec..a7b5b9f7d 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-fgotn-tunnel@2024-07-07.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-fgotn-tunnel@2024-07-07.yang @@ -36,8 +36,8 @@ module ietf-fgotn-tunnel { "; description - "This module defines a YANG data model for fgOTN-specific - extension based on existing network topology models. The model + "This module defines a YANG data model for fgOTN-specific + extension based on existing network topology models. The model fully conforms to the Network Management Datastore Architecture (NMDA). @@ -69,11 +69,11 @@ module ietf-fgotn-tunnel { /** augment "/te:te/te:tunnels/te:tunnel/te:primary-paths" + - "/te:primary-path/te:te-bandwidth/te:technology" + + "/te:primary-path/te:te-bandwidth/te:technology" + "/otn-tnl:otn/otn-tnl:otn-bandwidth" { leaf fgoduflex-bandwidth { type string; - description + description "The bandwidth of this fgOTN tunnel"; } } @@ -85,7 +85,7 @@ module ietf-fgotn-tunnel { "augmentation of fgOTN tunnel on bandwidth structure"; leaf fgoduflex-bandwidth { type string; - description + description "Augment TE bandwidth of the fgOTN tunnel"; } } @@ -94,56 +94,56 @@ module ietf-fgotn-tunnel { + "te:primary-paths/te:primary-path/" + "te:explicit-route-objects/" + "te:route-object-include-exclude/te:type/te:label/" - + "te:label-hop/te:te-label/te:technology/otn-tnl:otn" + + + "te:label-hop/te:te-label/te:technology/otn-tnl:otn" + "/otn-tnl:otn-label" { description "augmentation of fgOTN label"; leaf fgts-numbers { type uint16; - description + description "Augment fgOTN timeslot information of this label hop"; } } - augment "/te:te/te:tunnels/te:tunnel/te:primary-paths" + - "/te:primary-path/te:primary-reverse-path" + - "/te:explicit-route-objects" + - "/te:route-object-include-exclude/te:type/te:label" + - "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + + augment "/te:te/te:tunnels/te:tunnel/te:primary-paths" + + "/te:primary-path/te:primary-reverse-path" + + "/te:explicit-route-objects" + + "/te:route-object-include-exclude/te:type/te:label" + + "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + "/otn-tnl:otn-label" { description "augmentation of fgOTN label"; leaf fgts-numbers { type uint16; - description + description "Augment fgOTN timeslot information of this label hop"; } } - augment "/te:te/te:tunnels/te:tunnel/te:secondary-paths" + - "/te:secondary-path/te:explicit-route-objects" + - "/te:route-object-include-exclude/te:type/te:label" + - "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + + augment "/te:te/te:tunnels/te:tunnel/te:secondary-paths" + + "/te:secondary-path/te:explicit-route-objects" + + "/te:route-object-include-exclude/te:type/te:label" + + "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + "/otn-tnl:otn-label" { description "augmentation of fgOTN label"; leaf fgts-numbers { type uint16; - description + description "fgOTN timeslot information of this label hop"; } - } + } - augment "/te:te/te:tunnels/te:tunnel/te:secondary-reverse-paths" + - "/te:secondary-reverse-path/te:explicit-route-objects" + - "/te:route-object-include-exclude/te:type/te:label" + - "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + + augment "/te:te/te:tunnels/te:tunnel/te:secondary-reverse-paths" + + "/te:secondary-reverse-path/te:explicit-route-objects" + + "/te:route-object-include-exclude/te:type/te:label" + + "/te:label-hop/te:te-label/te:technology/otn-tnl:otn" + "/otn-tnl:otn-label" { description "augmentation of fgOTN label"; leaf fgts-numbers { type uint16; - description + description "fgOTN timeslot information of this label hop"; } } @@ -156,7 +156,7 @@ module ietf-fgotn-tunnel { "augmentation of fgOTN label"; leaf fgts-numbers { type uint16; - description + description "fgOTN timeslot information of this label hop"; } } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-flexi-grid-topology@2023-12-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-flexi-grid-topology@2023-12-15.yang index 779361438..0a5c8555f 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-flexi-grid-topology@2023-12-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-flexi-grid-topology@2023-12-15.yang @@ -53,12 +53,12 @@ module ietf-flexi-grid-topology { "; description - "This YANG module defines a topology model for flexi-grid - optical networks. The model augments the technology-agnostic - TE topology model with flexi-grid technology specific + "This YANG module defines a topology model for flexi-grid + optical networks. The model augments the technology-agnostic + TE topology model with flexi-grid technology specific definitions, based on RFC 7698 and RFC 7699. - The model fully conforms to the Network Management Datastore + The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2023 IETF Trust and the persons identified @@ -80,10 +80,10 @@ module ietf-flexi-grid-topology { described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, they appear in all capitals, as shown here."; reference - "RFC 7698: Framework and Requirements for GMPLS-Based Control - of Flexi-Grid Dense Wavelength Division Multiplexing + "RFC 7698: Framework and Requirements for GMPLS-Based Control + of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks; - RFC 7699: Generalized Labels for the Flexi-Grid in Lambda + RFC 7699: Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers."; revision 2023-12-15 { @@ -101,15 +101,15 @@ module ietf-flexi-grid-topology { grouping label-range-info { description - "Flexi-grid-specific label range related information with a - presence container indicating whether the label range is a + "Flexi-grid-specific label range related information with a + presence container indicating whether the label range is a flexi-grid label range."; container flexi-grid-label-range { presence "Indicates the label range is a flexi-grid label range. - This container MUST NOT be present if there are other - presence containers or attributes indicating another type + This container MUST NOT be present if there are other + presence containers or attributes indicating another type of label range."; description "Flexi-grid-specific label range related information."; @@ -293,6 +293,7 @@ module ietf-flexi-grid-topology { "Augment TE label range information for the TE link."; uses label-range-info; } + augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:label-restrictions/tet:label-restriction" { @@ -965,6 +966,7 @@ module ietf-flexi-grid-topology { uses l0-types:flexi-grid-label-start-end; } } + augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" diff --git a/experimental/ietf-extracted-YANG-modules/ietf-ioam-integrity@2024-08-31.yang b/experimental/ietf-extracted-YANG-modules/ietf-ioam-integrity@2024-08-31.yang index ceb960efb..a359cec59 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-ioam-integrity@2024-08-31.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-ioam-integrity@2024-08-31.yang @@ -30,7 +30,7 @@ module ietf-ioam-integrity { NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document are to be interpreted as described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, - they appear in all capitals, as shown here. + they appear in all capitals, as shown here. Copyright (c) 2024 IETF Trust and the persons identified as authors of the code. All rights reserved. @@ -60,17 +60,17 @@ module ietf-ioam-integrity { feature int-incremental-trace { - description + description "This feature indicates that the Integrity Protected Incremental Trace-Option is supported."; - reference + reference "RFC YYYY: Integrity Protection of In Situ Operations, Administration, and Maintenance (IOAM) Data Fields"; } feature int-preallocated-trace { - description + description "This feature indicates that the Integrity Protected Pre-allocated Trace-Option is supported."; reference @@ -80,16 +80,17 @@ module ietf-ioam-integrity { feature int-proof-of-transit { - description + description "This feature indicates that the Integrity Protected Proof of Transit Option is supported."; reference "RFC YYYY: Integrity Protection of In Situ Operations, Administration, and Maintenance (IOAM) Data Fields"; } + feature int-edge-to-edge { - description + description "This feature indicates that the Integrity Protected Edge-to-Edge Option is supported."; reference @@ -152,7 +153,7 @@ module ietf-ioam-integrity { 'ioam:action-encapsulate')"; type method-type; default "method-1"; - description + description "This object indicates the Integrity Protection Method for this profile."; } @@ -174,7 +175,7 @@ module ietf-ioam-integrity { 'ioam:action-encapsulate')"; type method-type; default "method-1"; - description + description "This object indicates the Integrity Protection Method for this profile."; } @@ -216,7 +217,7 @@ module ietf-ioam-integrity { 'ioam:action-encapsulate')"; type method-type; default "method-1"; - description + description "This object indicates the Integrity Protection Method for this profile."; } @@ -231,15 +232,17 @@ module ietf-ioam-integrity { Protected Edge-to-Edge Option."; uses ioam:ioam-e2e-profile; + leaf int-method { when "derived-from-or-self(../node-action, 'ioam:action-encapsulate')"; type method-type; default "method-1"; - description + description "This object indicates the Integrity Protection Method for this profile."; } } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-layer0-types@2024-07-23.yang b/experimental/ietf-extracted-YANG-modules/ietf-layer0-types@2024-07-23.yang index 63f49ac7e..972983102 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-layer0-types@2024-07-23.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-layer0-types@2024-07-23.yang @@ -73,7 +73,7 @@ module ietf-layer0-types { description "Layer 0 grid type"; reference - "RFC 6205: Generalized Labels for Lambda-Switch-Capable + "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC), Label Switching Routers, ITU-T G.694.2 (12/2003): Spectral grids for WDM applications: @@ -97,8 +97,9 @@ module ietf-layer0-types { description "DWDM grid"; reference - "RFC 6205: Generalized Labels for Lambda-Switch-Capable + "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC), Label Switching Routers, + ITU-T G.694.1 (10/2020): Spectral grids for WDM applications: DWDM frequency grid"; } @@ -212,7 +213,7 @@ module ietf-layer0-types { identity flexi-ncfg-type { description - "Flexi-grid Nominal Central Frequency Granularity (NCFG) + "Flexi-grid Nominal Central Frequency Granularity (NCFG) type"; reference "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda @@ -302,7 +303,7 @@ module ietf-layer0-types { identity DP-QAM16 { base modulation; description - "DP-QAM16 (16 symbols Dual Polarization Quadrature Amplitude + "DP-QAM16 (16 symbols Dual Polarization Quadrature Amplitude Modulation)"; } @@ -343,7 +344,7 @@ module ietf-layer0-types { description "Generic Forward Error Correction (G-FEC)."; reference - "ITU-T G.975 v2.0 (10/2000): Forward error correction for + "ITU-T G.975 v2.0 (10/2000): Forward error correction for submarine systems."; } @@ -352,7 +353,7 @@ module ietf-layer0-types { description "Super Forward Error Correction (S-FEC)."; reference - "ITU-T G.975.1 v1.2 (07/2013): Forward error correction for + "ITU-T G.975.1 v1.2 (07/2013): Forward error correction for high bit-rate DWDM submarine systems."; } @@ -367,107 +368,107 @@ module ietf-layer0-types { description "Staircase Forward Error Correction (SC-FEC)."; reference - "Annex A of ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach + "Annex A of ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach interface."; } identity o-fec { base fec-type; description - "Open Forward Error Correction (O-FEC) which reuses the + "Open Forward Error Correction (O-FEC) which reuses the Bose, Chaudhuri and Hocquenghem (BCH) FEC."; reference - "Clause 16.4.4 of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN + "Clause 16.4.4 of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach interfaces; - Annex E of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN + Annex E of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach interfaces."; } identity c-fec { base fec-type; description - "Concatenated FEC (C-FEC) that combines an outer Staircase - Forward Error Correction (SC-FEC) code and an inner + "Concatenated FEC (C-FEC) that combines an outer Staircase + Forward Error Correction (SC-FEC) code and an inner double-extended SD-FEC (128,119) Hamming code. - More details are provided in clause 15/G.709.3 where it is + More details are provided in clause 15/G.709.3 where it is called DSH instead of concatenated FEC."; reference - "Annex A of ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach + "Annex A of ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach interface; - Annex D of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN + Annex D of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach interfaces; - Clause 15 of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN + Clause 15 of ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach interfaces."; } identity line-coding { description - "Base identity to defined the bit rate/line coding of optical + "Base identity to defined the bit rate/line coding of optical tributary signals."; - reference + reference "Section 7.1.2 of ITU-T G.698.2 v3.0 (11/2018)."; - } + } identity line-coding-NRZ-2p5G { base line-coding; description - "The non return to zero (NRZ) bit rate/line coding used by + "The non return to zero (NRZ) bit rate/line coding used by the optical tributary signal class NRZ 2.5G"; - reference + reference "Section 3.2.6 of ITU-T G.959.1 v8.0 (07/2018)."; } identity line-coding-NRZ-OTU1 { base line-coding; description - "The non return to zero (NRZ) bit rate/line coding used by - the Optical channel Transport Unit order 1 (OTU1) optical + "The non return to zero (NRZ) bit rate/line coding used by + the Optical channel Transport Unit order 1 (OTU1) optical tributary signals"; - reference + reference "Section 7.2.1.2 of ITU-T G.959.1 v8.0 (07/2018)."; } identity line-coding-NRZ-10G { description - "The non return to zero (NRZ) bit rate/line coding used by + "The non return to zero (NRZ) bit rate/line coding used by the optical tributary signal class NRZ 10G"; - reference + reference "Section 3.2.7 of ITU-T G.959.1 v8.0 (07/2018)."; } identity line-coding-NRZ-OTU2 { base line-coding; description - "The non return to zero (NRZ) bit rate/line coding used by - the Optical channel Transport Unit order 2 (OTU2) optical + "The non return to zero (NRZ) bit rate/line coding used by + the Optical channel Transport Unit order 2 (OTU2) optical tributary signals"; - reference + reference "Section 7.2.1.2 of ITU-T G.959.1 v8.0 (07/2018)."; } identity line-coding-OTL4.4-SC { base line-coding; description - "The bit rate/line coding used by optical tributary - signals carrying a 100G Optical Transport Unit order 4 - (OTU4) with Staircase Forward Error Correction (SC FEC) + "The bit rate/line coding used by optical tributary + signals carrying a 100G Optical Transport Unit order 4 + (OTU4) with Staircase Forward Error Correction (SC FEC) from a group of four Optical Transport Lanes (OTL)."; - reference + reference "Section 3.2.1 of ITU-T G.698.2 v3.0 (11/2018)."; } identity line-coding-FOIC1.4-SC { base line-coding; description - "The bit rate/line coding used by optical tributary signals - carrying a FlexO Interface of order C1 with 4 lanes - (FOIC1.1) with Staircase Forward Error Correction + "The bit rate/line coding used by optical tributary signals + carrying a FlexO Interface of order C1 with 4 lanes + (FOIC1.1) with Staircase Forward Error Correction (SC FEC)."; - reference + reference "Section 3.2.1 of ITU-T G.698.2 v3.0 (11/2018)."; } @@ -475,7 +476,7 @@ module ietf-layer0-types { description "Wavelength selection base"; reference - "RFC 7689: Signaling Extensions for Wavelength Switched + "RFC 7689: Signaling Extensions for Wavelength Switched Optical Networks"; } @@ -486,7 +487,7 @@ module ietf-layer0-types { and this WA (Wavelength Assignment) method chooses the available wavelength with the lowest index"; reference - "RFC 7689: Signaling Extensions for Wavelength Switched + "RFC 7689: Signaling Extensions for Wavelength Switched Optical Networks"; } @@ -496,7 +497,7 @@ module ietf-layer0-types { "This WA method chooses an available wavelength randomly"; reference - "RFC 7689: Signaling Extensions for Wavelength Switched + "RFC 7689: Signaling Extensions for Wavelength Switched Optical Networks"; } @@ -507,7 +508,7 @@ module ietf-layer0-types { has the largest residual capacity on the most loaded link along the route (in multi-fiber networks)"; reference - "RFC 7689: Signaling Extensions for Wavelength Switched + "RFC 7689: Signaling Extensions for Wavelength Switched Optical Networks"; } @@ -581,7 +582,7 @@ module ietf-layer0-types { identity type-power-mode { description - "power equalization mode used within the + "power equalization mode used within the OMS and its elements"; } @@ -652,7 +653,7 @@ module ietf-layer0-types { where 193100.000 GHz (193.100000 THz) is the ITU-T 'anchor frequency' for transmission over the DWDM grid, and where - NCFG is defined by the flexi-ncfg-type, or by the deprecated + NCFG is defined by the flexi-ncfg-type, or by the deprecated flexi-ch-spc-type."; reference "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda @@ -684,7 +685,7 @@ module ietf-layer0-types { description "Identifies an ITU-T G.698.2 standard application code. - It MUST be a string with a format that follows the + It MUST be a string with a format that follows the nomenclature defined in section 5.3 of ITU-T G.698.2."; reference "ITU-T G.698.2 (11/2018)"; @@ -708,8 +709,8 @@ module ietf-layer0-types { description "Identifies an organization (e.g., vendor) specific mode. - The format of the string has to be defined by the - organization which is responsible for defining the + The format of the string has to be defined by the + organization which is responsible for defining the corresponding optical interface specification."; reference "Section 2.5.2 of RFC YYYY: A YANG Data Model for Optical @@ -735,7 +736,7 @@ module ietf-layer0-types { units "GHz"; description "The DWDM frequency in GHz, e.g., 193112.500000"; - } + } typedef snr { type decimal-2; @@ -764,7 +765,7 @@ module ietf-layer0-types { type enumeration { enum G.652 { description - "G.652 Standard Singlemode Fiber"; + "G.652 Standard Singlemode Fiber"; } enum G.654 { description @@ -822,7 +823,7 @@ module ietf-layer0-types { type empty; } description - "The gain in dB, when it is known or an empty + "The gain in dB, when it is known or an empty value when the power gain/loss is not known."; } @@ -841,7 +842,7 @@ module ietf-layer0-types { type empty; } description - "The power attenuation in dB, when it is known or an empty + "The power attenuation in dB, when it is known or an empty value when the loss is not known."; } @@ -858,7 +859,7 @@ module ietf-layer0-types { type empty; } description - "The power difference in dB, when it is known or an empty + "The power difference in dB, when it is known or an empty value when the difference is not known."; } @@ -893,7 +894,7 @@ module ietf-layer0-types { type empty; } description - "A decimal64 value with five digits, when the value is known + "A decimal64 value with five digits, when the value is known or an empty value when the value is not known."; } @@ -1155,6 +1156,7 @@ module ietf-layer0-types { description "A multiplier of the slot width granularity, indicating the maximum slot width supported by an optical port. + Maximum slot width is calculated by: Maximum slot width (GHz) = max-slot-width-factor * slot-width-granularity @@ -1347,17 +1349,17 @@ module ietf-layer0-types { "The given value 'N' is used to determine the nominal central frequency. - As described in section 3.1 of RFC 8363, the range of - available nominal central frequencies are advertised for - m=1, which means that for an available central frequency n, - the frequency slot from central frequency n-1 to central + As described in section 3.1 of RFC 8363, the range of + available nominal central frequencies are advertised for + m=1, which means that for an available central frequency n, + the frequency slot from central frequency n-1 to central frequency n+1 is available."; } reference "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers, - RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid + RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks"; } @@ -1400,21 +1402,21 @@ module ietf-layer0-types { case multi { container frequency-slots { description - "The top level container for the list of frequency + "The top level container for the list of frequency slots used for flexi-grid super channel."; list frequency-slot { key "flexi-n"; min-elements 2; uses flexi-grid-frequency-slot; description - "List of frequency slots used for flexi-grid super + "List of frequency slots used for flexi-grid super channel."; } } } } reference - "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid + "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks"; } @@ -1434,8 +1436,8 @@ module ietf-layer0-types { "Minimum space between slot widths. Default is 12.500 GHz."; reference - "RFC 8363: GMPLS OSPF-TE Extensions in Support of - Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) + "RFC 8363: GMPLS OSPF-TE Extensions in Support of + Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks"; } leaf min-slot-width-factor { @@ -1543,8 +1545,8 @@ module ietf-layer0-types { - the explicit-mode grouping, when explicit mode templates are not used. - The compatible-modes container shall be augmented with the - proper leafrefs when used: see for example the + The compatible-modes container shall be augmented with the + proper leafrefs when used: see for example the transceiver-capabilities grouping below."; choice mode { mandatory true; @@ -1598,10 +1600,10 @@ module ietf-layer0-types { container supported-modes { presence - "When present, it indicates that the modes supported by a + "When present, it indicates that the modes supported by a transceiver are reported."; description - "The top level container for the list supported + "The top level container for the list supported transceiver's modes."; list supported-mode { key "mode-id"; @@ -1609,7 +1611,7 @@ module ietf-layer0-types { min-elements 1; description "The list of supported transceiver's modes."; leaf mode-id { - type string { + type string { length "1..255"; } description "ID for the supported transceiver's mode."; @@ -1618,7 +1620,7 @@ module ietf-layer0-types { augment "mode/explicit-mode/explicit-mode/" + "compatible-modes" { description - "Augments the compatible modes with the proper + "Augments the compatible modes with the proper leafrefs."; leaf-list supported-application-codes { type leafref { @@ -1629,7 +1631,7 @@ module ietf-layer0-types { + "standard-mode" { description "The pointer is only for application codes - supported by transceiver."; + supported by transceiver."; } description "List of pointers to the application codes @@ -1708,8 +1710,8 @@ module ietf-layer0-types { config false; mandatory true; description - "The OSNR penalty associated with the related optical - impairment at the receiver, when the value is known or an + "The OSNR penalty associated with the related optical + impairment at the receiver, when the value is known or an empty value when the value is not known."; } } @@ -1732,7 +1734,7 @@ module ietf-layer0-types { config false; description "Bit rate/line coding of the optical tributary signal."; - reference + reference "ITU-T G.698.2 section 7.1.2"; } leaf bitrate { @@ -1748,7 +1750,7 @@ module ietf-layer0-types { units "ps"; config false; description - "Maximum Differential group delay of this mode for this + "Maximum Differential group delay of this mode for this lane"; } leaf max-chromatic-dispersion { @@ -1758,7 +1760,7 @@ module ietf-layer0-types { units "ps/nm"; config false; description - "Maximum acceptable accumulated chromatic dispersion (CD) + "Maximum acceptable accumulated chromatic dispersion (CD) on the receiver"; } list cd-penalty { @@ -1820,14 +1822,14 @@ module ietf-layer0-types { config false; mandatory true; description - "Maximum acceptable accumulated accumulated polarization + "Maximum acceptable accumulated accumulated polarization dependent loss (PDL) on the receiver"; } list pdl-penalty { key pdl-value; config false; description - "Optional penalty associated with a given accumulated + "Optional penalty associated with a given accumulated polarization dependent loss (PDL) value. This list of pair PDL and penalty values can be used to @@ -1858,14 +1860,14 @@ module ietf-layer0-types { description "min OSNR measured over 0.1 nm resolution bandwidth: if received OSNR at Rx-power reference point - (rx-ref-channel-power) is lower than MIN-OSNR, an increased + (rx-ref-channel-power) is lower than MIN-OSNR, an increased level of bit-errors post-FEC needs to be expected"; } leaf rx-ref-channel-power { type power-dbm; config false; description - "The channel power used as reference for defining penalties + "The channel power used as reference for defining penalties and min-OSNR"; } list rx-channel-power-penalty { @@ -1900,16 +1902,16 @@ module ietf-layer0-types { units "Bd"; config false; description - "Baud-rate the specific transceiver in + "Baud-rate the specific transceiver in the list can support. Baud-rate is the unit for - symbol rate or modulation rate + symbol rate or modulation rate in symbols per second or - pulses per second. + pulses per second. It is the number of distinct symbol - changes (signal events) made to the + changes (signal events) made to the transmission medium - per second in a digitally + per second in a digitally modulated signal or a line code"; } leaf roll-off { @@ -1918,12 +1920,12 @@ module ietf-layer0-types { range "0..1"; } config false; - description - "the roll-off factor (beta with values from 0 to 1) - identifies how the real signal shape exceed - the baud rate. If=0 it is exactly matching - the baud rate.If=1 the signal exceeds the - 50% of the baud rate at each side."; + description + "the roll-off factor (beta with values from 0 to 1) + identifies how the real signal shape exceed + the baud rate. If=0 it is exactly matching + the baud rate.If=1 the signal exceeds the + 50% of the baud rate at each side."; } leaf min-carrier-spacing { type frequency-ghz; @@ -1962,20 +1964,20 @@ module ietf-layer0-types { } config false; description - "Threshold on the BER, for which FEC + "Threshold on the BER, for which FEC is able to correct errors"; } leaf in-band-osnr { type snr; config false; description - "The OSNR defined within the bandwidth of the transmit - spectral excursion (i.e., between the nominal central - frequency of the channel and the -3.0dB points of the - transmitter spectrum furthest from the nominal central + "The OSNR defined within the bandwidth of the transmit + spectral excursion (i.e., between the nominal central + frequency of the channel and the -3.0dB points of the + transmitter spectrum furthest from the nominal central frequency) measured at reference point Ss. - The in-band OSNR is referenced to an optical bandwidth of + The in-band OSNR is referenced to an optical bandwidth of 0.1nm @ 193.7 THz or 12.5 GHz."; reference "OIF-400ZR-01.0: Implementation Agreement 400ZR"; @@ -1984,13 +1986,13 @@ module ietf-layer0-types { type snr; config false; description - "The ratio of the peak transmitter power to the integrated + "The ratio of the peak transmitter power to the integrated power outside the transmitter spectral excursion. - The spectral resolution of the measurement shall be better + The spectral resolution of the measurement shall be better than the maximum spectral width of the peak. - The out-of-band OSNR is referenced to an optical bandwidth + The out-of-band OSNR is referenced to an optical bandwidth of 0.1nm @ 193.7 THz or 12.5 GHz"; reference "OIF-400ZR-01.0: Implementation Agreement 400ZR"; @@ -1999,8 +2001,8 @@ module ietf-layer0-types { type power-ratio; config false; description - "The transmitter polarization dependent power difference - defined as the power difference between X and Y + "The transmitter polarization dependent power difference + defined as the power difference between X and Y polarizations"; reference "OIF-400ZR-01.0: Implementation Agreement 400ZR"; @@ -2010,7 +2012,7 @@ module ietf-layer0-types { units "ps"; config false; description - "The X-Y skew, included as a fixed value in the receiver + "The X-Y skew, included as a fixed value in the receiver polarization mode dispersion (PMD) tolerance limits."; reference "OIF-400ZR-01.0: Implementation Agreement 400ZR"; @@ -2019,7 +2021,7 @@ module ietf-layer0-types { grouping common-standard-organizational-mode { description - "Common attributes used by standard and organizational + "Common attributes used by standard and organizational transceiver's modes."; leaf-list line-coding-bitrate { @@ -2028,12 +2030,12 @@ module ietf-layer0-types { } config false; description - "The list of the bit rate/line coding of the optical + "The list of the bit rate/line coding of the optical tributary signal supported by the transceiver. - Reporting this list is optional when the standard or + Reporting this list is optional when the standard or organization mode supports only one bit rate/line coding."; - reference + reference "ITU-T G.698.2 section 7.1.2"; } } // grouping common-standard-organizational-mode @@ -2060,7 +2062,7 @@ module ietf-layer0-types { description "This parameter indicates the transmitter frequency fine tuning steps e.g 3.125GHz or 0.001GHz."; - } + } } // grouping transmitter-tuning-range grouping common-all-modes { @@ -2077,7 +2079,7 @@ module ietf-layer0-types { type power-dbm; config false; description "The maximum output power of this interface"; - } + } leaf rx-channel-power-min { type power-dbm; config false; @@ -2119,18 +2121,18 @@ module ietf-layer0-types { description "Bit rate/line coding of the optical tributary signal. - Support of this attribute is optional when the configured + Support of this attribute is optional when the configured mode supports only one bit rate/line coding."; - reference + reference "ITU-T G.698.2 section 7.1.2"; } leaf tx-channel-power { type power-dbm-or-null; description - "The current channel transmit power, when the value is + "The current channel transmit power, when the value is known or an empty value when the value is not known. - The empty value MUST NOT be used when this attribute is + The empty value MUST NOT be used when this attribute is configured."; } } // grouping for configured transceiver attributes out of mode @@ -2144,14 +2146,14 @@ module ietf-layer0-types { type power-dbm-or-null; config false; description - "The current channel received power, when the value is + "The current channel received power, when the value is known or an empty value when the value is not known."; } leaf rx-total-power { type power-dbm-or-null; config false; description - "The current total received power, when the value is known + "The current total received power, when the value is known or an empty value when the value is not known."; } } // grouping for read-only transceiver attributes out of mode @@ -2211,6 +2213,7 @@ module ietf-layer0-types { SNR (GSNR)."; } } + grouping l0-path-properties { description "Common attribute for reporting the Layer 0 computed path diff --git a/experimental/ietf-extracted-YANG-modules/ietf-mpls-te-types@2023-10-13.yang b/experimental/ietf-extracted-YANG-modules/ietf-mpls-te-types@2023-10-13.yang index 6c626a46a..045ec66b8 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-mpls-te-types@2023-10-13.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-mpls-te-types@2023-10-13.yang @@ -31,7 +31,7 @@ module ietf-mpls-te-types { "; description - "This module defines a collection of common YANG data type + "This module defines a collection of common YANG data type and grouping definitions specific to MPLS-TE. Copyright (c) 2023 IETF Trust and the persons @@ -53,8 +53,8 @@ module ietf-mpls-te-types { reference "RFC XXXX: A YANG Data Model for MPLS-TE Topology"; } - // RFC Editor: replace XXXX with the actual RFC number assigned - // to the RFC once this draft + // RFC Editor: replace XXXX with the actual RFC number assigned + // to the RFC once this draft // becomes an RFC, update date information and remove this note. /* diff --git a/experimental/ietf-extracted-YANG-modules/ietf-netconf-private-candidate@2024-09-12.yang b/experimental/ietf-extracted-YANG-modules/ietf-netconf-private-candidate@2024-09-12.yang index 0ada0e93a..2f9ca0eaa 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-netconf-private-candidate@2024-09-12.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-netconf-private-candidate@2024-09-12.yang @@ -37,7 +37,7 @@ module ietf-netconf-private-candidate { Relating to IETF Documents (https://trustee.ietf.org/license-info). - This version of this YANG module is part of + This version of this YANG module is part of draft-ietf-netconf-privcand; see these documents for full legal notices."; @@ -45,9 +45,9 @@ module ietf-netconf-private-candidate { description "Introduce private candidate support"; reference - "draft-ietf-netconf-privcand: + "draft-ietf-netconf-privcand: Netconf Private Candidates"; - } + } feature private-candidate { description @@ -81,6 +81,7 @@ module ietf-netconf-private-candidate { } } } + augment /cmp:compare/cmp:input { leaf reference-point { reference "draft-ietf-netconf-privcand"; @@ -88,9 +89,9 @@ module ietf-netconf-private-candidate { description "When this leaf is provided and the source or destination is the candidate datastore, operating - in private candidate mode, the comparison will - either occur between the last-update point of - the private candidate or the creation-point of + in private candidate mode, the comparison will + either occur between the last-update point of + the private candidate or the creation-point of the private candidate."; default last-update; type enumeration { @@ -101,3 +102,4 @@ module ietf-netconf-private-candidate { } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-nmda-compare@2023-05-01.yang b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-nmda-compare@2023-05-01.yang index eb2312a3c..d816ea18b 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-nmda-compare@2023-05-01.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-nmda-compare@2023-05-01.yang @@ -1,13 +1,13 @@ module ietf-netconf-txid-nmda-compare { yang-version 1.1; - namespace + namespace 'urn:ietf:params:xml:ns:yang:ietf-netconf-txid-nmda-compare'; prefix ietf-netconf-txid-nmda-compare; import ietf-nmda-compare { prefix cmp; reference - "RFC 9144: Comparison of Network Management Datastore + "RFC 9144: Comparison of Network Management Datastore Architecture (NMDA) Datastores"; } @@ -43,6 +43,7 @@ module ietf-netconf-txid-nmda-compare { 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. + 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 @@ -70,7 +71,7 @@ module ietf-netconf-txid-nmda-compare { txid-values."; container most-recent { description "The txid value returned by the server MUST be the - txid value pertaining to the target node in the source or + txid value pertaining to the target node in the source or target datastores that is the most recent."; uses ietf-netconf-txid:txid-value-grouping; } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-yang-push@2022-04-01.yang b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-yang-push@2022-04-01.yang index b8850f475..cb202b892 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-yang-push@2022-04-01.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid-yang-push@2022-04-01.yang @@ -1,6 +1,6 @@ module ietf-netconf-txid-yang-push { yang-version 1.1; - namespace + namespace 'urn:ietf:params:xml:ns:yang:ietf-netconf-txid-yang-push'; prefix ietf-netconf-txid-yp; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid@2023-03-01.yang b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid@2023-03-01.yang index af375b6ee..4b9b237d4 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid@2023-03-01.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-netconf-txid@2023-03-01.yang @@ -1,6 +1,6 @@ module ietf-netconf-txid { yang-version 1.1; - namespace + namespace 'urn:ietf:params:xml:ns:yang:ietf-netconf-txid'; prefix ietf-netconf-txid; @@ -63,7 +63,7 @@ module ietf-netconf-txid { feature last-modified { description "Servers implementing this module MUST support the - etag txid mechanism. Servers MAY also support the + etag txid mechanism. Servers MAY also support the last-modified txid mechanism. Support is shown by announcing this feature."; } @@ -98,22 +98,22 @@ module ietf-netconf-txid { modifier invert-match; } } - description - "Unique Entity-tag txid value representing a specific - transaction. Could be any string that does not contain + description + "Unique Entity-tag txid value representing a specific + transaction. Could be any string that does not contain spaces, double quotes or backslash. The txid values '?', '!' and '=' have special meaning: - '?' This txid value is used by clients and is + '?' This txid value is used by clients and is guaranteed not to match any txid on the server. - '!' This txid value used by servers to indicate + '!' This txid value used by servers to indicate the node in the candidate datastore has changed relative to the running datastore, but not yet received a new txid value on the server. - '=' This txid value used by servers to indicate + '=' This txid value used by servers to indicate that contents has been pruned due to txid match between client and server. "; @@ -124,17 +124,17 @@ module ietf-netconf-txid { type yang:date-and-time; type enumeration { enum ? { - description "Txid value used by clients that is + description "Txid value used by clients that is guaranteed not to match any txid on the server."; } enum ! { - description "Txid value used by servers to indicate + description "Txid value used by servers to indicate the node in the candidate datastore has changed relative to the running datastore, but not yet received a new txid value on the server."; } enum = { - description "Txid value used by servers to indicate + description "Txid value used by servers to indicate that contents has been pruned due to txid match between client and server."; } @@ -150,19 +150,19 @@ module ietf-netconf-txid { type boolean; description "Indicates whether the client requests the server to include - a txid:etag txid attribute when the configuration has + a txid:etag txid attribute when the configuration has changed."; } leaf with-last-modified { if-feature last-modified; type boolean; - description + description "Indicates whether the client requests the server to include - a txid:last-modified attribute when the configuration has + a txid:last-modified attribute when the configuration has changed."; } description - "Grouping for txid mechanisms, to be augmented into + "Grouping for txid mechanisms, to be augmented into rpcs that modify configuration data stores."; } @@ -179,7 +179,7 @@ module ietf-netconf-txid { "Indicates server's txid value for a YANG node."; } description - "Grouping for txid mechanisms, to be augmented into + "Grouping for txid mechanisms, to be augmented into output of rpcs that return txid metadata for configuration data stores."; } @@ -187,21 +187,21 @@ module ietf-netconf-txid { augment /nc:edit-config/nc:input { uses txid-grouping; description - "Injects the txid mechanisms into the + "Injects the txid mechanisms into the edit-config operation"; } augment /nc:commit/nc:input { uses txid-grouping; description - "Injects the txid mechanisms into the + "Injects the txid mechanisms into the commit operation"; } augment /ncds:edit-data/ncds:input { uses txid-grouping; description - "Injects the txid mechanisms into the + "Injects the txid mechanisms into the edit-data operation"; } @@ -223,14 +223,14 @@ module ietf-netconf-txid { leaf mismatch-etag-value { type etag-t; description - "Indicates server's txid value of the etag + "Indicates server's txid value of the etag attribute for one mismatching element."; } leaf mismatch-last-modified-value { if-feature last-modified; type last-modified-t; description - "Indicates server's txid value of the last-modified + "Indicates server's txid value of the last-modified attribute for one mismatching element."; } } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-network-inventory@2024-10-02.yang b/experimental/ietf-extracted-YANG-modules/ietf-network-inventory@2024-10-02.yang index 1bfc3a1c7..319999b4d 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-network-inventory@2024-10-02.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-network-inventory@2024-10-02.yang @@ -187,7 +187,8 @@ module ietf-network-inventory { (e.g., component) types within the scope of the vendor."; } } - /* + + /* * Data Nodes */ @@ -383,7 +384,7 @@ module ietf-network-inventory { "RFC 6933: Entity MIB (Version 4) - entPhysicalUris"; } container chassis-specific-info { - when "derived-from-or-self(../class, + when "derived-from-or-self(../class, 'ianahw:chassis')"; config false; description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-notification-transport-capabilities@2024-10-14.yang b/experimental/ietf-extracted-YANG-modules/ietf-notification-transport-capabilities@2024-10-14.yang index d84734703..3920a7eaf 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-notification-transport-capabilities@2024-10-14.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-notification-transport-capabilities@2024-10-14.yang @@ -76,6 +76,7 @@ module ietf-notification-transport-capabilities { description "Identity for DTLS 1.2 security protocol."; } + identity dtls13 { base security-protocol; description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-optical-impairment-topology@2024-05-21.yang b/experimental/ietf-extracted-YANG-modules/ietf-optical-impairment-topology@2024-05-21.yang index 4bdbe0c71..70496a105 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-optical-impairment-topology@2024-05-21.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-optical-impairment-topology@2024-05-21.yang @@ -19,7 +19,7 @@ module ietf-optical-impairment-topology { import ietf-te-topology { prefix "tet"; reference - "RFC 8795: YANG Data Model for Traffic Engineering (TE) + "RFC 8795: YANG Data Model for Traffic Engineering (TE) Topologies"; } @@ -102,7 +102,7 @@ module ietf-optical-impairment-topology { description "Individual OTSi(G) protection LSP protection type."; reference - "ITU-T G.873.1 v5.2 (02/2022): Optical transport network: + "ITU-T G.873.1 v5.2 (02/2022): Optical transport network: Linear protection"; } @@ -314,7 +314,7 @@ module ietf-optical-impairment-topology { leaf delta-power { type l0-types:power-ratio-or-null; description - " Deviation from the reference carrier power + " Deviation from the reference carrier power defined for the OMS."; } } // media channels list @@ -326,8 +326,8 @@ module ietf-optical-impairment-topology { } // grouping amplifier-params grouping fiber-params { - description - "String identifier of fiber type referencing a + description + "String identifier of fiber type referencing a specification in a separate equipment catalog"; container fiber { description "fiber characteristics"; @@ -376,7 +376,7 @@ module ietf-optical-impairment-topology { grouping roadm-common-path { description - "The optical impairments of a ROADM which are common to all + "The optical impairments of a ROADM which are common to all its paths (express path, add path or drop path)."; leaf roadm-pmd { type union { @@ -387,15 +387,15 @@ module ietf-optical-impairment-topology { type empty; } units "ps"; - description - "Polarization Mode Dispersion (PMD), when known, or an + description + "Polarization Mode Dispersion (PMD), when known, or an empty value when unknown."; } leaf roadm-cd { type l0-types:decimal-5-or-null; units "ps/nm"; description "Chromatic Dispersion (CD)"; - } + } leaf roadm-pdl { type l0-types:power-loss-or-null; description "Polarization Dependent Loss (PDL)"; @@ -404,7 +404,7 @@ module ietf-optical-impairment-topology { type l0-types:decimal-2-or-null; units "dB"; description - "In-band crosstalk, or coherent crosstalk, can occur in + "In-band crosstalk, or coherent crosstalk, can occur in components that can have multiple same wavelength inputs with the inputs either routed to different output ports, or all but one blocked"; @@ -412,8 +412,8 @@ module ietf-optical-impairment-topology { leaf roadm-maxloss { type l0-types:power-loss-or-null; description - "This is the maximum expected path loss from the - ROADM ingress to the ROADM egress + "This is the maximum expected path loss from the + ROADM ingress to the ROADM egress assuming no additional path loss is added"; } } // grouping roadm-common-path @@ -430,69 +430,69 @@ module ietf-optical-impairment-topology { uses roadm-common-path { refine roadm-inband-crosstalk { description - "In-band crosstalk, or coherent crosstalk, + "In-band crosstalk, or coherent crosstalk, can occur in components that can have multiple same - wavelength inputs,with the inputs either + wavelength inputs,with the inputs either routed to different output ports, or all but one blocked. - In the case of add path it is the total + In the case of add path it is the total of the add block + egress WSS crosstalk contributions."; } refine roadm-maxloss { - description - "This is the maximum expected add path loss from - the add/drop port input to the ROADM egress, - assuming no additional add path loss is added. + description + "This is the maximum expected add path loss from + the add/drop port input to the ROADM egress, + assuming no additional add path loss is added. This is used to establish the minimum required - transponder output power required - to hit the ROADM egress target power - levels and preventing + transponder output power required + to hit the ROADM egress target power + levels and preventing to hit the WSS attenuation limits. - If the add path contains an internal amplifier - this loss value should be based + If the add path contains an internal amplifier + this loss value should be based on worst case expected amplifier gain due to ripple or gain uncertainty"; } } leaf roadm-pmax { type l0-types:power-dbm-or-null; - description - "This is the maximum (per carrier) power level + description + "This is the maximum (per carrier) power level permitted at the add block input ports, - that can be handled by the ROADM node. - This may reflect either add amplifier power + that can be handled by the ROADM node. + This may reflect either add amplifier power contraints or WSS adjustment limits. - Higher power transponders would need to have - their launch power reduced + Higher power transponders would need to have + their launch power reduced to this value or lower"; } leaf roadm-osnr { type l0-types:snr-or-null; - description + description "Optical Signal-to-Noise Ratio (OSNR). - If the add path contains the ability to adjust the - carrier power levels into an add path amplifier + If the add path contains the ability to adjust the + carrier power levels into an add path amplifier (if present) to a target value, this reflects the OSNR contribution of the add amplifier assuming this target value is obtained. - The worst case OSNR based on the input power and + The worst case OSNR based on the input power and NF calculation method, and this value, should be used (if both are defined)."; } leaf roadm-noise-figure { type l0-types:decimal-5-or-null; - units "dB"; - description - "Noise Figure. If the add path contains an amplifier, + units "dB"; + description + "Noise Figure. If the add path contains an amplifier, this is the noise figure of that amplifier inferred to the add port. - This permits add path OSNR calculation based + This permits add path OSNR calculation based on the input power levels to the add block - without knowing the ROADM path losses to + without knowing the ROADM path losses to the add amplifier."; } - } // grouping roadm-add-path + } // grouping roadm-add-path grouping roadm-drop-path { description @@ -501,137 +501,137 @@ module ietf-optical-impairment-topology { refine roadm-inband-crosstalk { description "In-band crosstalk, or coherent crosstalk, can occur in - components that can have multiple same wavelength + components that can have multiple same wavelength inputs,with the inputs either routed to different output ports,or all but one blocked. - In the case of drop path it is the total + In the case of drop path it is the total of the ingress to drop e.g. WSS and drop block crosstalk contributions."; } refine roadm-maxloss { - description - "The net loss from the ROADM input,to the output - of the drop block. + description + "The net loss from the ROADM input,to the output + of the drop block. If ROADM ingress to drop path includes an amplifier, - the amplifier gain reduces the net loss. + the amplifier gain reduces the net loss. This is before any additional drop path attenuation - that may be required + that may be required due to drop amplifier power contraints. The max value correspond to worst case expected loss, - including amplifier gain ripple or uncertainty. - It is the maximum output power of the drop + including amplifier gain ripple or uncertainty. + It is the maximum output power of the drop amplifier."; } } leaf roadm-minloss { type l0-types:power-loss-or-null; - description - "The net loss from the ROADM input, to the + description + "The net loss from the ROADM input, to the output of the drop block. - If this ROADM ingress to drop path includes - an amplifier,the amplifier gain reduces the net loss. - This is before any additional drop path attenuation - that may be required due to drop amplifier power + If this ROADM ingress to drop path includes + an amplifier,the amplifier gain reduces the net loss. + This is before any additional drop path attenuation + that may be required due to drop amplifier power contraints. - The min value correspond to best case expected loss, + The min value correspond to best case expected loss, including amplifier gain ripple or uncertainty."; } leaf roadm-typloss { type l0-types:power-loss-or-null; - description - "The net loss from the ROADM input, + description + "The net loss from the ROADM input, to the output of the drop block. - If this ROADM ingress to drop path - includes an amplifier, - the amplifier gain reduces the net loss. - This is before any additional drop path - attenuation + If this ROADM ingress to drop path + includes an amplifier, + the amplifier gain reduces the net loss. + This is before any additional drop path + attenuation that may be required due to drop amplifier power contraints. - The typ value correspond to typical case + The typ value correspond to typical case expected loss."; } leaf roadm-pmin { type l0-types:power-dbm-or-null; - description + description "If the drop path has additional loss that is added, for example, - to hit target power levels into a + to hit target power levels into a drop path amplifier, or simply, to reduce the power of a strong carrier - (due to ripple,for example), - then the use of the ROADM input power levels and + (due to ripple,for example), + then the use of the ROADM input power levels and the above drop losses is not appropriate. This parameter corresponds to the min per - carrier power levels + carrier power levels expected at the output of the drop block. A detail example of the comparison using - these parameters is - detailed in section xxx of the document yyy."; + these parameters is + detailed in section xxx of the document yyy."; } leaf roadm-pmax { type l0-types:power-dbm-or-null; - description - "If the drop path has additional loss that is added, - for example, to hit target power levels into a - drop path amplifier,or simply,to reduce the power - of a strong carrier(due to ripple,for example), - then the use of the ROADM input power levels and the + description + "If the drop path has additional loss that is added, + for example, to hit target power levels into a + drop path amplifier,or simply,to reduce the power + of a strong carrier(due to ripple,for example), + then the use of the ROADM input power levels and the above drop losses is not appropriate. - This parameter corresponds to the best case per - carrier power levels expected at the output of the + This parameter corresponds to the best case per + carrier power levels expected at the output of the drop block. - A detail example of the comparison using - these parameters - is detailed in section xxx of the document yyy"; + A detail example of the comparison using + these parameters + is detailed in section xxx of the document yyy"; } leaf roadm-ptyp { type l0-types:power-dbm-or-null; - description + description "If the drop path has additional loss that is added, - for example, to hit target power levels into a - drop path amplifier,or simply,to reduce the - power of a strong carrier(due to ripple,for example), - then the use of the ROADM input power levels and + for example, to hit target power levels into a + drop path amplifier,or simply,to reduce the + power of a strong carrier(due to ripple,for example), + then the use of the ROADM input power levels and the above drop losses is not appropriate. This parameter corresponds to the typical case - per carrier power levels expected - at the output of the drop block."; + per carrier power levels expected + at the output of the drop block."; } leaf roadm-osnr { - type l0-types:snr-or-null; - description + type l0-types:snr-or-null; + description "Optical Signal-to-Noise Ratio (OSNR). Expected OSNR contribution of the drop path - amplifier(if present) + amplifier(if present) for the case of additional drop path loss - (before this amplifier) + (before this amplifier) in order to hit a target power level (per carrier). - If both, the OSNR based on the ROADM + If both, the OSNR based on the ROADM input power level - (Pcarrier = + (Pcarrier = Pref+10Log(carrier-baudrate/ref-baud) + delta-power) - and the input inferred NF(NF.drop), - and this OSNR value, are defined, + and the input inferred NF(NF.drop), + and this OSNR value, are defined, the minimum value between these two should be used"; } leaf roadm-noise-figure { type l0-types:decimal-5-or-null; - units "dB"; - description - "Drop path Noise Figure. + units "dB"; + description + "Drop path Noise Figure. If the drop path contains an amplifier, this is the noise figure - of that amplifier, inferred to the + of that amplifier, inferred to the ROADM ingress port. - This permits to determine - amplifier OSNR contribution - without having to specify the + This permits to determine + amplifier OSNR contribution + without having to specify the ROADM node's losses to that amplifier. - This applies for the case of no - additional drop path loss, + This applies for the case of no + additional drop path loss, before the amplifier, in order to reduce the power of the carriers to a target value"; } @@ -663,10 +663,10 @@ module ietf-optical-impairment-topology { description "The equalization mode. - When not present it indicates that the information about + When not present it indicates that the information about the equalization mode is not reported. - Reporting this value is needed to support optical + Reporting this value is needed to support optical impairments applications."; } container power-param { @@ -711,14 +711,14 @@ module ietf-optical-impairment-topology { } description "OTSi carrier frequency, equivalent to the - actual configured transmitter frequency, when known, or + actual configured transmitter frequency, when known, or an empty value when unknown."; } leaf-list e2e-mc-path-id { type uint16; description - "The list of the possible end-to-end Media Channel - (e2e-MC) paths associated with the OTSi which have + "The list of the possible end-to-end Media Channel + (e2e-MC) paths associated with the OTSi which have different optical impairments. This list is meaningful in case the OTSi can be associated @@ -735,15 +735,15 @@ module ietf-optical-impairment-topology { description "media channel groups. - This grouping is not intended to be reused outside of this + This grouping is not intended to be reused outside of this module."; container media-channel-groups { presence - "When present, it indicates that the list media channel + "When present, it indicates that the list media channel groups is reported."; description - "The top level container for the list of media channel + "The top level container for the list of media channel groups."; list media-channel-group { key "otsi-group-ref"; @@ -755,7 +755,7 @@ module ietf-optical-impairment-topology { "otsi-group/otsi-group-id"; } description - "Reference to the OTSiG to which the OTSis carried by + "Reference to the OTSiG to which the OTSis carried by this media channel group belong to."; } list media-channel { @@ -779,8 +779,8 @@ module ietf-optical-impairment-topology { list otsi-ref { key "otsi-carrier-ref"; description - "The list of references to the OTSis and their - end-to-end Media Channel (e2e-MC) paths within the + "The list of references to the OTSis and their + end-to-end Media Channel (e2e-MC) paths within the OTSiG carried by this media channel."; leaf otsi-carrier-ref { type leafref { @@ -802,15 +802,15 @@ module ietf-optical-impairment-topology { "/../otsi-carrier-ref]/e2e-mc-path-id"; } description - "References to the end-to-end Media Channel (e2e-MC) - paths of this OTSi which are routed through this + "References to the end-to-end Media Channel (e2e-MC) + paths of this OTSi which are routed through this media channel."; } } leaf delta-power { type l0-types:power-ratio-or-null; description - " Deviation from the reference carrier power defined + " Deviation from the reference carrier power defined for the OMS."; } } // media channels list @@ -822,19 +822,19 @@ module ietf-optical-impairment-topology { description "OMS description"; container OMS-elements { presence - "When present, it indicates that the list of OMS elements + "When present, it indicates that the list of OMS elements is reported."; description "The top level container for the list of OMS elements."; list OMS-element { key "elt-index"; description - "defines the spans and the amplifier blocks of + "defines the spans and the amplifier blocks of the amplified lines"; leaf elt-index { type uint16; description - "ordered list of Index of OMS element + "ordered list of Index of OMS element (whether it's a Fiber, an EDFA or a Concentratedloss)"; } @@ -917,7 +917,7 @@ module ietf-optical-impairment-topology { } } -/* +/* * Data nodes */ @@ -938,17 +938,17 @@ module ietf-optical-impairment-topology { when "./nw:network-types/tet:te-topology" + "/oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology."; } description "Network augmentation for optical impairments data."; container otsis { presence - "When present, it indicates that OTSi information is + "When present, it indicates that OTSi information is reported."; description - "The information about the OTSis configured on the WDM-TE + "The information about the OTSis configured on the WDM-TE link."; list otsi-group { key "otsi-group-id"; @@ -982,7 +982,7 @@ module ietf-optical-impairment-topology { ROADM paths."; leaf roadm-path-impairments-id { - type string; + type string; description "The identifier of the set of optical impairments related to a ROADM path."; @@ -1010,7 +1010,7 @@ module ietf-optical-impairment-topology { uses l0-types:frequency-range; } uses roadm-express-path; - } + } } case roadm-add-path { list roadm-add-path { @@ -1032,9 +1032,9 @@ module ietf-optical-impairment-topology { impairments apply."; uses l0-types:frequency-range; } - uses roadm-add-path; + uses roadm-add-path; } - } + } case roadm-drop-path { list roadm-drop-path { key frequency-range-id; @@ -1055,12 +1055,12 @@ module ietf-optical-impairment-topology { impairments apply."; uses l0-types:frequency-range; } - uses roadm-drop-path; + uses roadm-drop-path; } } } - } // list roadm-path-impairments - } // container roadm-path-impairments + } // list roadm-path-impairments + } // container roadm-path-impairments container explicit-transceiver-modes { description "The top level container for the list of the @@ -1090,7 +1090,7 @@ module ietf-optical-impairment-topology { "Node augmentation for optical impairments data."; container transponders { presence - "If present, it indicates that the list of transponders is + "If present, it indicates that the list of transponders is reported."; description "The top level container for the list of transponders."; @@ -1145,7 +1145,7 @@ module ietf-optical-impairment-topology { } } description - "Describes the supported 3R configuration type."; + "Describes the supported 3R configuration type."; } list transceiver { key "transceiver-id"; @@ -1186,17 +1186,17 @@ module ietf-optical-impairment-topology { "Reference to the configured mode for transceiver compatibility approach. - The empty value is used to report that no mode has + The empty value is used to report that no mode has been configured and there is no default mode. - When not present, the configured-mode is not reported + When not present, the configured-mode is not reported by the server."; } uses l0-types:common-transceiver-param; container outgoing-otsi { when "../../../../../otsis" { description - "It applies only when the OTSi information is + "It applies only when the OTSi information is reported."; } description @@ -1206,7 +1206,7 @@ module ietf-optical-impairment-topology { container incoming-otsi { when "../../../../../otsis" { description - "It applies only when the OTSi information is + "It applies only when the OTSi information is reported."; } description @@ -1235,15 +1235,15 @@ module ietf-optical-impairment-topology { transceiver is used in an Optical Tunnel termination configuration or in a 3R configuration. - If empty, it means that the information about the + If empty, it means that the information about the configured-termination-type is not reported."; } - } // end of list of transceiver + } // end of list of transceiver } // end list of transponder } container regen-groups { presence - "When present, it indicates that the list of 3R groups + "When present, it indicates that the list of 3R groups is reported."; description "The top level container for the list of 3R groups."; @@ -1253,9 +1253,9 @@ module ietf-optical-impairment-topology { description "The list of 3R groups. - Any 3R group represent a group of transponder in which an - a an electrical connectivity is either in place or could - be dynamically provided, to associated transponders used + Any 3R group represent a group of transponder in which an + a an electrical connectivity is either in place or could + be dynamically provided, to associated transponders used for 3R regeneration."; leaf group-id { type uint32; @@ -1285,7 +1285,7 @@ module ietf-optical-impairment-topology { when "../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology."; } description "Optical Link augmentation for impairment data."; @@ -1303,7 +1303,7 @@ module ietf-optical-impairment-topology { when "../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology."; } description @@ -1312,7 +1312,7 @@ module ietf-optical-impairment-topology { list ttp-transceiver { when "../../../transponders" { description - "It applies only when the list of transponders is + "It applies only when the list of transponders is reported."; } key "transponder-ref transceiver-ref"; @@ -1345,7 +1345,7 @@ module ietf-optical-impairment-topology { when "../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology"; } description @@ -1357,7 +1357,7 @@ module ietf-optical-impairment-topology { description "The protection type that this LTP is capable of. - When not present it indicates that the information about + When not present it indicates that the information about the protection type is not reported."; } } @@ -1367,7 +1367,7 @@ module ietf-optical-impairment-topology { when "../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology"; } description @@ -1376,22 +1376,22 @@ module ietf-optical-impairment-topology { leaf inter-layer-sequence-number { type uint32; description - "The inter-layer-sequence-number (ILSN) is used to report - additional connectivity constraints between a client layer - Link Termination Point (LTP), such as a muxponder port, and + "The inter-layer-sequence-number (ILSN) is used to report + additional connectivity constraints between a client layer + Link Termination Point (LTP), such as a muxponder port, and the server layer Tunnel Termination Point (TTP). - A client service cannot be setup between two client layer + A client service cannot be setup between two client layer LTPs which report different values of the ILSN. - This attribute is not reported when there are no additional + This attribute is not reported when there are no additional connectivity constraints. - Therefore, a client service can be setup when at least one - of the two client layer LTPs does not report any ILSN or - both client layer LTPs report the same ILSN value and the - corresponding server layer TTPs have at least one common - server-layer switching capability and at least one common + Therefore, a client service can be setup when at least one + of the two client layer LTPs does not report any ILSN or + both client layer LTPs report the same ILSN value and the + corresponding server layer TTPs have at least one common + server-layer switching capability and at least one common client-layer switching capability."; } } @@ -1401,25 +1401,25 @@ module ietf-optical-impairment-topology { when "../../../nw:network-types/tet:te-topology" + "/oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology"; } description "node attributes augmentantion for optical-impairment ROADM node"; - } // augmentation for optical-impairment ROADM + } // augmentation for optical-impairment ROADM augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices"{ when "../../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology "; - } + } description - "Augment default TE node connectivity matrix information + "Augment default TE node connectivity matrix information source."; leaf roadm-path-impairments { @@ -1444,7 +1444,7 @@ module ietf-optical-impairment-topology { topology "; } description - "Augment TE node connectivity matrix entry information + "Augment TE node connectivity matrix entry information source."; leaf roadm-path-impairments { type leafref { @@ -1455,7 +1455,7 @@ module ietf-optical-impairment-topology { config false; description "Pointer to the list set of ROADM optical impairments"; - } + } } // augmentation connectivity-matrix information-source augment "/nw:networks/nw:network/nw:node/tet:te/" @@ -1463,9 +1463,9 @@ module ietf-optical-impairment-topology { when "../../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for Optical Impairment + "This augment is only valid for Optical Impairment topology "; - } + } description "Augment default TE node connectivity matrix."; leaf roadm-path-impairments { @@ -1476,10 +1476,10 @@ module ietf-optical-impairment-topology { } config false; /*the identifier in the list */ /*"roadm-path-impairments" of ROADM optical impairment*/ - /*is read-only as the rest of attributes*/ - description "pointer to the list set of ROADM optical + /*is read-only as the rest of attributes*/ + description "pointer to the list set of ROADM optical impairments"; - } + } } // augmentation connectivity-matrices augment "/nw:networks/nw:network/nw:node/tet:te/" @@ -1488,7 +1488,7 @@ module ietf-optical-impairment-topology { when "../../../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for + "This augment is only valid for Optical Impairment topology "; } description @@ -1511,11 +1511,11 @@ module ietf-optical-impairment-topology { when "../../../../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for + "This augment is only valid for Optical Impairment topology "; } description - "Augment the attributes for the 'from' LTP for the TE node + "Augment the attributes for the 'from' LTP for the TE node connectivity matrix entry."; list additional-ltp { when "derived-from-or-self(../../../../../../" @@ -1524,27 +1524,27 @@ module ietf-optical-impairment-topology { + "oit:protection-type," + "'oit:otsi-protection')" { description - "This list applies only when the 'to' LTP for this - connectivity matrix entry supports individual OTSi(G) + "This list applies only when the 'to' LTP for this + connectivity matrix entry supports individual OTSi(G) protection."; } key "ltp-ref"; config false; description - "The restricted list of the potential secondary LTPs that - can be selected when the 'from' LTP of this connectivity + "The restricted list of the potential secondary LTPs that + can be selected when the 'from' LTP of this connectivity matrix entry is selected as a working LTP. - If this list is empty, all the other LTPs that can reach - the 'to' LTP of this connectivity matrix entry can be + If this list is empty, all the other LTPs that can reach + the 'to' LTP of this connectivity matrix entry can be selected as secondary LTPs."; leaf ltp-ref { type leafref { path "../../../../../../../nt:termination-point/nt:tp-id"; } description - "The reference to the potential secondary LTP that can be - selected when the 'from' LTP of this connectivity matrix + "The reference to the potential secondary LTP that can be + selected when the 'from' LTP of this connectivity matrix entry is selected as a working LTP"; } leaf roadm-path-impairments { @@ -1554,10 +1554,10 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments-id"; } description - "Pointer to ROADM optical impairments of the ROADM path - between this secondary 'from' LTP and the 'to' LTP of + "Pointer to ROADM optical impairments of the ROADM path + between this secondary 'from' LTP and the 'to' LTP of this connectivity matrix entry."; - } + } } } // augmentation connectivity-matrix from @@ -1567,11 +1567,11 @@ module ietf-optical-impairment-topology { when "../../../../../../nw:network-types/tet:te-topology/" + "oit:optical-impairment-topology" { description - "This augment is only valid for + "This augment is only valid for Optical Impairment topology "; } description - "Augment the attributes for the 'to' LTP for the TE node + "Augment the attributes for the 'to' LTP for the TE node connectivity matrix entry."; list additional-ltp { when "derived-from-or-self(../../../../../../" @@ -1580,27 +1580,27 @@ module ietf-optical-impairment-topology { + "oit:protection-type," + "'oit:otsi-protection')" { description - "This list applies only when the 'from' LTP for this - connectivity matrix entry supports individual OTSi(G) + "This list applies only when the 'from' LTP for this + connectivity matrix entry supports individual OTSi(G) protection."; } key "ltp-ref"; config false; description - "The restricted list of the potential secondary LTPs that - can be selected when the 'to' LTP of this connectivity + "The restricted list of the potential secondary LTPs that + can be selected when the 'to' LTP of this connectivity matrix entry is selected as a working LTP. - If this list is empty, all the other LTPs that can be - reached from the 'from' LTP of this connectivity matrix + If this list is empty, all the other LTPs that can be + reached from the 'from' LTP of this connectivity matrix entry can be selected as secondary LTPs."; leaf ltp-ref { type leafref { path "../../../../../../../nt:termination-point/nt:tp-id"; } description - "The reference to the potential secondary LTP that can be - selected when the 'to' LTP of this connectivity matrix + "The reference to the potential secondary LTP that can be + selected when the 'to' LTP of this connectivity matrix entry is selected as a working LTP"; } leaf roadm-path-impairments { @@ -1610,10 +1610,10 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments-id"; } description - "Pointer to ROADM optical impairments of the ROADM path - between the 'from' LTP of this connectivity matrix entry + "Pointer to ROADM optical impairments of the ROADM path + between the 'from' LTP of this connectivity matrix entry and this secondary LTP."; - } + } } } // augmentation connectivity-matrix to @@ -1644,7 +1644,7 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments-id" ; } config false; - description "pointer to the list set of ROADM + description "pointer to the list set of ROADM optical impairments"; } } // augmentation local-link-connectivities @@ -1678,7 +1678,7 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments-id" ; } config false; - description "pointer to the list set of ROADM optical + description "pointer to the list set of ROADM optical impairments"; } list llc-transceiver { @@ -1724,7 +1724,7 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments/oit:roadm-path-impairment" + "/oit:roadm-path-impairments-id" ; } - description "pointer to the list set of ROADM + description "pointer to the list set of ROADM optical impairments"; } } @@ -1732,25 +1732,25 @@ module ietf-optical-impairment-topology { when "derived-from-or-self(../../../tet:protection-type," + "'oit:otsi-protection')" { description - "This list applies only to TTPs that support individual + "This list applies only to TTPs that support individual OTSi(G) protection."; } key "ltp-ref"; config false; description - "The restricted list of the potential secondary LTPs that - can be selected when the LTP associated with this LLCP + "The restricted list of the potential secondary LTPs that + can be selected when the LTP associated with this LLCP entry is selected as a working LTP. - If this list is empty, all the other LTPs that can be + If this list is empty, all the other LTPs that can be reached by this TTP can be selected as secondary LTPs."; leaf ltp-ref { type leafref { path "../../../../../../nt:termination-point/nt:tp-id"; } description - "The reference to potential secondary LTP that can be - selected when the LTP associated with this LLCP entry is + "The reference to potential secondary LTP that can be + selected when the LTP associated with this LLCP entry is selected as a working LTP"; } leaf add-path-impairments { @@ -1768,9 +1768,10 @@ module ietf-optical-impairment-topology { + "/oit:roadm-path-impairments/oit:roadm-path-impairment" + "/oit:roadm-path-impairments-id" ; } - description "pointer to the list set of ROADM + description "pointer to the list set of ROADM optical impairments"; } } } // augmentation local-link-connectivity } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-otn-path-computation@2022-09-12.yang b/experimental/ietf-extracted-YANG-modules/ietf-otn-path-computation@2022-09-12.yang index 0e7053b65..fc99ef2d1 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-otn-path-computation@2022-09-12.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-otn-path-computation@2022-09-12.yang @@ -6,7 +6,7 @@ module ietf-otn-path-computation { import ietf-te-path-computation { prefix "te-pc"; revision-date "2021-09-06"; - reference + reference "I-D.ietf-teas-yang-path-computation-14: Yang model for requesting Path Computation."; } @@ -21,8 +21,8 @@ module ietf-otn-path-computation { import ietf-layer1-types { prefix "l1-types"; - reference - "I-D.ietf-ccamp-layer1-types: + reference + "I-D.ietf-ccamp-layer1-types: A YANG Data Model for Layer 1 Types. "; } @@ -45,7 +45,7 @@ module ietf-otn-path-computation { "This module defines a model for requesting OTN Path Computation. - The model fully conforms to the Network Management + The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2022 IETF Trust and the persons @@ -67,7 +67,7 @@ module ietf-otn-path-computation { reference "RFC XXXX: A YANG Data Model for requesting Path Computation in an Optical Transport Network (OTN)"; - // RFC Ed.: replace XXXX with actual RFC number, update date + // RFC Ed.: replace XXXX with actual RFC number, update date // information and remove this note } @@ -87,6 +87,7 @@ module ietf-otn-path-computation { uses l1-types:otn-path-bandwidth; } } + augment "/te:tunnels-path-compute/te:input/te:path-compute-info/" + "te-pc:tunnel-attributes/te-pc:te-bandwidth/" + "te-pc:technology" { diff --git a/experimental/ietf-extracted-YANG-modules/ietf-otn-topology@2024-06-21.yang b/experimental/ietf-extracted-YANG-modules/ietf-otn-topology@2024-06-21.yang index 5d4d550c9..90677e79e 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-otn-topology@2024-06-21.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-otn-topology@2024-06-21.yang @@ -27,7 +27,7 @@ module ietf-otn-topology { reference "RFC YYYY: A YANG Data Model for Layer 1 Types"; } - // RFC Editor: replace YYYY with actual RFC number assigned to + // RFC Editor: replace YYYY with actual RFC number assigned to // [I-D.ietf-ccamp-layer1-types] and remove this note organization @@ -79,7 +79,7 @@ module ietf-otn-topology { description "Initial Revision"; reference - "RFC XXXX: A YANG Data Model for Optical Transport Network + "RFC XXXX: A YANG Data Model for Optical Transport Network Topology"; } // RFC Editor: replace XXXX with actual RFC number, update date @@ -91,8 +91,8 @@ module ietf-otn-topology { grouping label-range-info { description - "OTN technology-specific label range related information with - a presence container indicating that the label range is an + "OTN technology-specific label range related information with + a presence container indicating that the label range is an OTN technology-specific label range. This grouping SHOULD be used together with the @@ -105,8 +105,8 @@ module ietf-otn-topology { presence "Indicates the label range is an OTN label range. - This container MUST NOT be present if there are other - presence containers or attributes indicating another type + This container MUST NOT be present if there are other + presence containers or attributes indicating another type of label range."; } } @@ -115,6 +115,7 @@ module ietf-otn-topology { /* * Data nodes */ + augment "/nw:networks/nw:network/nw:network-types/" + "tet:te-topology" { container otn-topology { @@ -212,7 +213,7 @@ module ietf-otn-topology { } container client-svc { presence - "When present, indicates that the Link Termination Point + "When present, indicates that the Link Termination Point (LTP) supports Constant Bit Rate (CBR) client signals."; description "OTN LTP Service attributes."; @@ -883,6 +884,7 @@ module ietf-otn-topology { /* * Augment TE label */ + augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:label-restrictions/tet:label-restriction/" @@ -979,6 +981,7 @@ module ietf-otn-topology { uses l1-types:otn-label-hop; } } + augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:optimizations/tet:algorithm/tet:metric/" @@ -1507,6 +1510,7 @@ module ietf-otn-topology { uses l1-types:otn-label-step; } } + augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" diff --git a/experimental/ietf-extracted-YANG-modules/ietf-otn-tunnel@2023-10-12.yang b/experimental/ietf-extracted-YANG-modules/ietf-otn-tunnel@2023-10-12.yang index 6947757b9..17f982588 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-otn-tunnel@2023-10-12.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-otn-tunnel@2023-10-12.yang @@ -13,8 +13,8 @@ module ietf-otn-tunnel { import ietf-layer1-types { prefix "l1-types"; - reference - "I-D.ietf-ccamp-layer1-types: + reference + "I-D.ietf-ccamp-layer1-types: A YANG Data Model for Layer 1 Types. "; } @@ -42,7 +42,7 @@ module ietf-otn-tunnel { description "This module defines a model for OTN Tunnel Services. - The model fully conforms to the Network Management + The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2023 IETF Trust and the persons @@ -222,6 +222,7 @@ module ietf-otn-tunnel { of the primay path."; uses l1-types:otn-label-range-info; } + augment "/te:te/te:tunnels/te:tunnel/" + "te:primary-paths/te:primary-path/" + "te:path-out-segment/te:label-restrictions/" diff --git a/experimental/ietf-extracted-YANG-modules/ietf-platform-manifest@2024-07-02.yang b/experimental/ietf-extracted-YANG-modules/ietf-platform-manifest@2024-07-02.yang index d7f170c87..011c2c7ea 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-platform-manifest@2024-07-02.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-platform-manifest@2024-07-02.yang @@ -128,3 +128,4 @@ module ietf-platform-manifest { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-resource-pm-types@2024-07-07.yang b/experimental/ietf-extracted-YANG-modules/ietf-resource-pm-types@2024-07-07.yang index 5a1288a7c..f57b4c7e8 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-resource-pm-types@2024-07-07.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-resource-pm-types@2024-07-07.yang @@ -13,6 +13,7 @@ module ietf-resource-pm-types { Editor: Chaode Yu + Editor: Fabio Peruzzini @@ -151,3 +152,4 @@ module ietf-resource-pm-types { retrieving the pm parameters supported"; } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-resource-pm@2024-07-07.yang b/experimental/ietf-extracted-YANG-modules/ietf-resource-pm@2024-07-07.yang index 1ba85e184..e67bcd062 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-resource-pm@2024-07-07.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-resource-pm@2024-07-07.yang @@ -6,6 +6,7 @@ module ietf-resource-pm { import ietf-yang-types { prefix "yang"; } + import ietf-resource-pm-types { prefix "rpm-types"; } @@ -149,6 +150,7 @@ module ietf-resource-pm { grouping monitoring-tasks-grouping { description "grouping of performance monitoring task"; + container monitor-tasks { description "Information of PM tasks"; @@ -673,6 +675,7 @@ module ietf-resource-pm { } } } + grouping indicator-data-instance-grouping { description "grouping for a performance data"; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-service-pm@2024-03-04.yang b/experimental/ietf-extracted-YANG-modules/ietf-service-pm@2024-03-04.yang index 78d59feb0..ba8988bd2 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-service-pm@2024-03-04.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-service-pm@2024-03-04.yang @@ -165,6 +165,7 @@ module ietf-service-pm { description "Current bandwidth usage of the ingress traffic."; } + identity egress-bandwidth { base performance-parameter-type; description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-fgnm-ext@2024-07-08.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-fgnm-ext@2024-07-08.yang index 0c6e177c4..16f6b1da6 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-fgnm-ext@2024-07-08.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-fgnm-ext@2024-07-08.yang @@ -13,11 +13,11 @@ module ietf-te-fgnm-ext { import ietf-te-types-fgnm-ext { prefix "te-types-fgnm-ext"; - } + } import ietf-network { prefix "nw"; - } + } import ietf-network-topology { prefix "nt"; @@ -25,7 +25,7 @@ module ietf-te-fgnm-ext { import ietf-te-topology { prefix "tet"; - } + } organization "IETF CCAMP Working Group"; @@ -35,7 +35,7 @@ module ietf-te-fgnm-ext { Editor: Chaode Yu - Xing Zhao + Xing Zhao Yanxia Tan @@ -57,7 +57,7 @@ module ietf-te-fgnm-ext { augment "/te:te/te:tunnels/te:tunnel" { leaf alias { - description + description "alias of TE tunnel"; type string; } @@ -101,9 +101,9 @@ module ietf-te-fgnm-ext { leaf restoration-priority { description - "when there are multiple services need to be restored, the - higher estoration priority services can occupied the idle - resource in priority, it is used to control the restoration + "when there are multiple services need to be restored, the + higher estoration priority services can occupied the idle + resource in priority, it is used to control the restoration sequence."; type enumeration { enum high; @@ -126,7 +126,7 @@ module ietf-te-fgnm-ext { augment "/te:te/te:tunnels/te:tunnel/te:primary-paths" + "/te:primary-path/te:explicit-route-objects-always" + "/te:route-object-include-exclude/te:type" { - description + description "a TTP hop"; case ttp-hop { uses te-types-fgnm-ext:explicit-ttp-hop; @@ -136,18 +136,18 @@ module ietf-te-fgnm-ext { augment "/te:te/te:tunnels/te:tunnel/te:secondary-paths" + "/te:secondary-path/te:explicit-route-objects-always" + "/te:route-object-include-exclude/te:type" { - description + description "a TTP hop"; case ttp-hop { uses te-types-fgnm-ext:explicit-ttp-hop; } - } + } augment "/te:te/te:tunnels/te:tunnel/te:primary-paths" + "/te:primary-path/te:primary-reverse-path" + "/te:explicit-route-objects-always" + "/te:route-object-include-exclude/te:type" { - description + description "a TTP hop"; case ttp-hop { uses te-types-fgnm-ext:explicit-ttp-hop; @@ -158,12 +158,12 @@ module ietf-te-fgnm-ext { + "/te:secondary-reverse-path" + "/te:explicit-route-objects-always" + "/te:route-object-include-exclude/te:type" { - description + description "a TTP hop"; case ttp-hop { uses te-types-fgnm-ext:explicit-ttp-hop; } - } + } grouping time-state-grouping { leaf create-time { @@ -178,7 +178,7 @@ module ietf-te-fgnm-ext { description "the lastest time when the tunnel was activated"; type yang:date-and-time; - } + } } grouping endpoint-grouping { @@ -197,6 +197,7 @@ module ietf-te-fgnm-ext { } } } + case ttp { choice id-or-name { case id { diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-mpls-topology@2023-10-13.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-mpls-topology@2023-10-13.yang index 1207e01b8..c1a6b98a5 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-mpls-topology@2023-10-13.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-mpls-topology@2023-10-13.yang @@ -27,8 +27,8 @@ module ietf-te-mpls-topology { reference "RFC YYYY: YANG Data Model for Layer 3 TE Topologies"; } - // RFC Editor: replace YYYY with the actual RFC number assigned - // to the RFC once draft-ietf-teas-yang-l3-te-topo + // RFC Editor: replace YYYY with the actual RFC number assigned + // to the RFC once draft-ietf-teas-yang-l3-te-topo // becomes an RFC and remove this note. import ietf-mpls-te-types { @@ -36,8 +36,8 @@ module ietf-te-mpls-topology { reference "RFC XXXX: A YANG Data Model for MPLS-TE Topology"; } - // RFC Editor: replace XXXX with the actual RFC number assigned - // to the RFC once this draft + // RFC Editor: replace XXXX with the actual RFC number assigned + // to the RFC once this draft // becomes an RFC and remove this note. organization @@ -62,11 +62,11 @@ module ietf-te-mpls-topology { "; description - "This module defines a YANG data model for representing, + "This module defines a YANG data model for representing, retrieving, and manipulating MPLS-TE network topologies. - This module defines MPLS-TE technology-specific augmentations - to the generic Packet TE topology module + This module defines MPLS-TE technology-specific augmentations + to the generic Packet TE topology module (ietf-te-topology-packet). Copyright (c) 2022 IETF Trust and the persons @@ -88,8 +88,8 @@ module ietf-te-mpls-topology { reference "RFC XXXX: A YANG Data Model for MPLS-TE Topology"; } - // RFC Editor: replace XXXX with the actual RFC number assigned - // to the RFC once this draft + // RFC Editor: replace XXXX with the actual RFC number assigned + // to the RFC once this draft // becomes an RFC, update date information and remove this note. /* diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-packet-types@2024-10-30.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-packet-types@2024-10-30.yang index 3c24930da..70bead463 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-packet-types@2024-10-30.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-packet-types@2024-10-30.yang @@ -23,6 +23,7 @@ module ietf-te-packet-types { contact "WG Web: WG List: + Editor: Tarek Saad @@ -791,6 +792,7 @@ module ietf-te-packet-types { } } } + grouping te-packet-link-bandwidth { description "Bandwidth attributes for Packet TE links."; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-path-computation@2023-06-27.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-path-computation@2023-06-27.yang index f3bee2d26..dc8ef269f 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-path-computation@2023-06-27.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-path-computation@2023-06-27.yang @@ -16,7 +16,7 @@ module ietf-te-path-computation { import ietf-te-types { prefix te-types; reference - "RFCZZZZ: Updated Common YANG Data Types for Traffic + "RFCZZZZ: Updated Common YANG Data Types for Traffic Engineering"; } @@ -93,6 +93,7 @@ module ietf-te-path-computation { // this note // replace the revision date with the module publication date // the format is (year-month-day) + revision 2023-06-27 { description "Initial revision"; @@ -109,19 +110,19 @@ module ietf-te-path-computation { feature svec { description - "This feature indicates that the server supports synchronized + "This feature indicates that the server supports synchronized path computation requests."; reference - "Section 7.13 of RFC5440: Path Computation Element (PCE) + "Section 7.13 of RFC5440: Path Computation Element (PCE) Communication Protocol (PCEP)."; } feature compute-priority { description - "This feature indicates that the server supports path + "This feature indicates that the server supports path computation request's priority"; reference - "Section 7.4.1 of RFC5440: Path Computation Element (PCE) + "Section 7.4.1 of RFC5440: Path Computation Element (PCE) Communication Protocol (PCEP)."; } @@ -515,18 +516,18 @@ module ietf-te-path-computation { type uint8; default 0; description - "The path computation request's priority (from 1 to 7) - which can be used to constraint the order by which the - path computation server processes the path computation + "The path computation request's priority (from 1 to 7) + which can be used to constraint the order by which the + path computation server processes the path computation requests. - A higher numerical value of the priority field reflects a + A higher numerical value of the priority field reflects a higher priority. - It MUST be set to the default value (i.e., 0) when + It MUST be set to the default value (i.e., 0) when unused."; reference - "Section 7.4.1 of RFC5440: Path Computation Element (PCE) + "Section 7.4.1 of RFC5440: Path Computation Element (PCE) Communication Protocol (PCEP)."; } choice tunnel-attributes { @@ -567,7 +568,7 @@ module ietf-te-path-computation { description "The referenced te-tunnel instance"; } - } // case tunnel-attributes-ref + } // case tunnel-attributes-ref } // choice tunnel-exist leaf path-name { type string; @@ -601,7 +602,7 @@ module ietf-te-path-computation { + "te-pc:request-id"; } description - "A reference to the reverse secondary path + "A reference to the reverse secondary path when co-routed with the secondary path."; } leaf preference { @@ -610,7 +611,7 @@ module ietf-te-path-computation { } default "1"; description - "Specifies a preference for this path. The + "Specifies a preference for this path. The lower the number higher the preference."; } uses protection-restoration-properties; @@ -654,7 +655,7 @@ module ietf-te-path-computation { description "The referenced primary path request"; } - } // case path-request-ref + } // case path-request-ref } // choice primary-path-exist } // list primary-path-ref } // container secondary-path @@ -700,7 +701,7 @@ module ietf-te-path-computation { description "The referenced primary path request"; } - } // case path-request-ref + } // case path-request-ref } // choice primary-path-exist } // container primary-reverse-path } // case primary-reverse-path @@ -715,7 +716,7 @@ module ietf-te-path-computation { } default "1"; description - "Specifies a preference for this path. The + "Specifies a preference for this path. The lower the number higher the preference."; } uses protection-restoration-properties; @@ -761,7 +762,7 @@ module ietf-te-path-computation { "The referenced primary reverse path request"; } - } // case path-request-ref + } // case path-request-ref } // choice primary-reverse-path-exist } // list primary-reverse-path-ref } // container secondary-reverse-path @@ -788,8 +789,8 @@ module ietf-te-path-computation { requested path will be the only path of a tunnel. If the requested path is a transit segment path - (i.e., the source and destination containers are - not present), it could be of any type. Otherwise it + (i.e., the source and destination containers are + not present), it could be of any type. Otherwise it could only be a primary path."; } default primary-path; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-topology-fgnm-ext@2024-07-08.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-topology-fgnm-ext@2024-07-08.yang index 30a0e1b5a..743938966 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-topology-fgnm-ext@2024-07-08.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-topology-fgnm-ext@2024-07-08.yang @@ -23,7 +23,7 @@ module ietf-te-topology-fgnm-ext { Editor: Chaode Yu - Xing Zhao + Xing Zhao Yanxia Tan @@ -44,8 +44,8 @@ module ietf-te-topology-fgnm-ext { } augment "/nw:networks/nw:network/nw:node/tet:te" { - description - "Generic fine-grain network management extensions for + description + "Generic fine-grain network management extensions for te node"; uses node-fgnm-ext-grouping; @@ -53,8 +53,8 @@ module ietf-te-topology-fgnm-ext { augment "/nw:networks/nw:network/nw:node/nt:termination-point/" + "tet:te" { - description - "Generic fine-grain network management extensions for + description + "Generic fine-grain network management extensions for termination point"; uses tp-fgnm-ext-grouping; @@ -62,15 +62,15 @@ module ietf-te-topology-fgnm-ext { augment "/nw:networks/nw:network/nw:node/tet:te" + "/tet:tunnel-termination-point" { - description - "Generic fine-grain network management extensions for + description + "Generic fine-grain network management extensions for te node"; uses ttp-fgnm-ext-grouping; - } + } augment "/nw:networks/nw:network/nt:link/tet:te" { - description + description "Generic fine-grain network management extensions for link"; uses link-fgnm-ext-grouping; @@ -113,7 +113,7 @@ module ietf-te-topology-fgnm-ext { key tp-id; leaf tp-id { type leafref { - path "/nw:networks/nw:network/nw:node" + + path "/nw:networks/nw:network/nw:node" + "/nt:termination-point/nt:tp-id"; } @@ -138,28 +138,29 @@ module ietf-te-topology-fgnm-ext { leaf tp-id { type leafref { - path "/nw:networks/nw:network/nw:node" + + path "/nw:networks/nw:network/nw:node" + "/nt:termination-point/nt:tp-id"; } + description "the identifier of TP queried and returns TTPs"; } list ttp-list { leaf tunnel-tp-id { type leafref { - path "/nw:networks/nw:network/nw:node/tet:te" + + path "/nw:networks/nw:network/nw:node/tet:te" + "/tet:tunnel-termination-point/tet:tunnel-tp-id"; } - description "Identifier of TTP which is existing in the - topology. It is not required to return if it is not + description "Identifier of TTP which is existing in the + topology. It is not required to return if it is not existing in the topology."; } leaf ttp-name { type string; - description "Name of TTP. If the ttp is idle, the default - name should be provided by the server and follow the + description "Name of TTP. If the ttp is idle, the default + name should be provided by the server and follow the naming pattern of TMF814."; } leaf using-status { diff --git a/experimental/ietf-extracted-YANG-modules/ietf-te-types@2024-10-30.yang b/experimental/ietf-extracted-YANG-modules/ietf-te-types@2024-10-30.yang index ee9ad6ce6..5d9ae16f4 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-te-types@2024-10-30.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-te-types@2024-10-30.yang @@ -203,6 +203,7 @@ module ietf-te-types { description "Derived types for TE administrative groups."; } + typedef extended-admin-group { type yang:hex-string; description @@ -677,12 +678,13 @@ module ietf-te-types { } } description - "The type of TE path, indicating whether a path is a primary, - or a reverse primary, or a secondary, or a reverse secondary + "The type of TE path, indicating whether a path is a primary, + or a reverse primary, or a secondary, or a reverse secondary path."; } /* TE features */ + feature p2mp-te { description "Indicates support for Point-to-Multipoint TE (P2MP-TE)."; @@ -1355,6 +1357,7 @@ module ietf-te-types { "TE tunnel action that reoptimizes the placement of the tunnel LSP(s)."; } + identity tunnel-action-switchpath { base tunnel-action-type; description @@ -1451,6 +1454,7 @@ module ietf-te-types { description "State path computation failed."; } + identity lsp-state-setting-up { base lsp-state-type; description @@ -1925,8 +1929,8 @@ module ietf-te-types { identity action-exercise { base protection-external-commands; description - "An action that starts testing whether or not Automatic - Protection Switching (APS) communication is operating + "An action that starts testing whether or not Automatic + Protection Switching (APS) communication is operating correctly. It is of lower priority than any other state or command."; reference @@ -2273,7 +2277,7 @@ module ietf-te-types { microseconds."; reference "RFC 7471: OSPF Traffic Engineering (TE) Metric - Extensions, Section 4.1 + Extensions, Section 4.1 RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions, Section 4.1"; } @@ -2507,6 +2511,7 @@ module ietf-te-types { description "Base identity for SRLG path computation."; } + identity srlg-ignore { base path-computation-srlg-type; description @@ -2539,7 +2544,7 @@ module ietf-te-types { identity path-computation-error-path-not-found { base path-computation-error-reason; description - "Path computation has failed because of an unspecified + "Path computation has failed because of an unspecified reason."; reference "RFC 5440: Path Computation Element (PCE) Communication @@ -2577,7 +2582,7 @@ module ietf-te-types { description "Path computation has failed because PCE is not available. - It corresponds to bit 31 of the Flags field of the + It corresponds to bit 31 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5440: Path Computation Element (PCE) Communication @@ -2600,7 +2605,7 @@ module ietf-te-types { "Path computation has failed because the destination node is unknown in indicated destination domain. - It corresponds to bit 19 of the Flags field of the + It corresponds to bit 19 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 8685: Path Computation Element Communication Protocol @@ -2617,7 +2622,7 @@ module ietf-te-types { "Path computation has failed because there is no available resource in one or more domains. - It corresponds to bit 20 of the Flags field of the + It corresponds to bit 20 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 8685: Path Computation Element Communication Protocol @@ -2634,7 +2639,7 @@ module ietf-te-types { "Path computation has failed because child PCE is not responsive. - It corresponds to bit 21 of the Flags field of the + It corresponds to bit 21 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 8685: Path Computation Element Communication Protocol @@ -2651,7 +2656,7 @@ module ietf-te-types { "Path computation has failed because the destination domain was unknown. - It corresponds to bit 22 of the Flags field of the + It corresponds to bit 22 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 8685: Path Computation Element Communication Protocol @@ -2668,7 +2673,7 @@ module ietf-te-types { "Path computation has failed because of P2MP reachability problem. - It corresponds to bit 24 of the Flags field of the + It corresponds to bit 24 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 8306: Extensions to the Path Computation Element @@ -2686,7 +2691,7 @@ module ietf-te-types { "Path computation has failed because of no Global Concurrent Optimization (GCO) migration path found. - It corresponds to bit 26 of the Flags field of the + It corresponds to bit 26 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5557: Path Computation Element Communication Protocol @@ -2703,7 +2708,7 @@ module ietf-te-types { "Path computation has failed because of no GCO solution found. - It corresponds to bit 25 of the Flags field of the + It corresponds to bit 25 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5557: Path Computation Element Communication Protocol @@ -2720,7 +2725,7 @@ module ietf-te-types { "Path computation has failed because of Path-Key Subobject (PKS) expansion failure. - It corresponds to bit 27 of the Flags field of the + It corresponds to bit 27 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5520: Preserving Topology Confidentiality in @@ -2737,7 +2742,7 @@ module ietf-te-types { "Path computation has failed because PCE BRPC chain unavailable. - It corresponds to bit 28 of the Flags field of the + It corresponds to bit 28 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5441: A Backward-Recursive PCE-Based Computation (BRPC) @@ -2752,10 +2757,10 @@ module ietf-te-types { identity path-computation-error-source-unknown { base path-computation-error-reason; description - "Path computation has failed because source node is + "Path computation has failed because source node is unknown. - It corresponds to bit 29 of the Flags field of the + It corresponds to bit 29 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5440: Path Computation Element (PCE) Communication @@ -2771,7 +2776,7 @@ module ietf-te-types { "Path computation has failed because destination node is unknown. - It corresponds to bit 30 of the Flags field of the + It corresponds to bit 30 of the Flags field of the NO-PATH-VECTOR TLV."; reference "RFC 5440: Path Computation Element (PCE) Communication @@ -2809,7 +2814,7 @@ module ietf-te-types { identity protocol-origin-pcep { base protocol-origin-type; description - "Protocol origin is Path Computation Engine Protocol + "Protocol origin is Path Computation Engine Protocol (PCEP)."; reference "RFC 5440: Path Computation Element (PCE) Communication @@ -2835,7 +2840,7 @@ module ietf-te-types { identity svec-of-minimize-agg-bandwidth-consumption { base svec-objective-function-type; description - "Objective function for minimizing aggregate bandwidth + "Objective function for minimizing aggregate bandwidth consumption (MBC)."; reference "RFC 5541: Encoding of Objective Functions in the Path @@ -2846,7 +2851,7 @@ module ietf-te-types { identity svec-of-minimize-load-most-loaded-link { base svec-objective-function-type; description - "Objective function for minimizing the load on the link that + "Objective function for minimizing the load on the link that is carrying the highest load (MLL)."; reference "RFC 5541: Encoding of Objective Functions in the Path @@ -2857,7 +2862,7 @@ module ietf-te-types { identity svec-of-minimize-cost-path-set { base svec-objective-function-type; description - "Objective function for minimizing the cost on a path set + "Objective function for minimizing the cost on a path set (MCC)."; reference "RFC 5541: Encoding of Objective Functions in the Path @@ -2868,10 +2873,10 @@ module ietf-te-types { identity svec-of-minimize-common-transit-domain { base svec-objective-function-type; description - "Objective function for minimizing the number of common + "Objective function for minimizing the number of common transit domains (MCTD)."; reference - "RFC 8685: Path Computation Element Communication Protocol + "RFC 8685: Path Computation Element Communication Protocol (PCEP) Extensions for the Hierarchical Path Computation Element (H-PCE) Architecture."; } @@ -2879,10 +2884,10 @@ module ietf-te-types { identity svec-of-minimize-shared-link { base svec-objective-function-type; description - "Objective function for minimizing the number of shared + "Objective function for minimizing the number of shared links (MSL)."; reference - "RFC 8685: Path Computation Element Communication Protocol + "RFC 8685: Path Computation Element Communication Protocol (PCEP) Extensions for the Hierarchical Path Computation Element (H-PCE) Architecture."; } @@ -2890,10 +2895,10 @@ module ietf-te-types { identity svec-of-minimize-shared-srlg { base svec-objective-function-type; description - "Objective function for minimizing the number of shared + "Objective function for minimizing the number of shared Shared Risk Link Groups (SRLG) (MSS)."; reference - "RFC 8685: Path Computation Element Communication Protocol + "RFC 8685: Path Computation Element Communication Protocol (PCEP) Extensions for the Hierarchical Path Computation Element (H-PCE) Architecture."; } @@ -2901,7 +2906,7 @@ module ietf-te-types { identity svec-of-minimize-shared-nodes { base svec-objective-function-type; description - "Objective function for minimizing the number of shared + "Objective function for minimizing the number of shared nodes (MSN)."; reference "RFC 8685: Path Computation Element Communication Protocol @@ -3436,7 +3441,7 @@ module ietf-te-types { must "(link-tp-id-uri or link-tp-id) and " + "(node-id-uri or node-id)" { description - "At least one node identifier and at least one Link + "At least one node identifier and at least one Link Termination Point (LTP) identifier MUST be present."; } leaf link-tp-id-uri { @@ -3589,7 +3594,7 @@ module ietf-te-types { must "(link-tp-id-uri or link-tp-id) and " + "(node-id-uri or node-id)" { description - "At least one node identifier and at least one Link + "At least one node identifier and at least one Link Termination Point (LTP) identifier MUST be present."; } leaf link-tp-id-uri { diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-aggregator@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-aggregator@2024-04-15.yang index 97b593b21..b787a299b 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-aggregator@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-aggregator@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-aggregator { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-aggregator"; prefix ietf-tlm-philatelist-aggregator; @@ -29,7 +29,7 @@ module ietf-tlm-philatelist-aggregator { An AGGREGATOR ensures data from one or more SOURCE(s) are combined into a FLOW using a (sequence of) OPERATIONs (OPs) to generate a new data set in the DESTINATION (which could - be a new collection in the same data storage system as the + be a new collection in the same data storage system as the SOURCE). +-------------+ @@ -91,15 +91,15 @@ module ietf-tlm-philatelist-aggregator { "Root container for the Philatelist Aggregator function. "; container aggregations { - description + description "List of aggregation operations that are applied to a set of - input telemetry streams in a TSDB Partition to form an output + input telemetry streams in a TSDB Partition to form an output stream in a different TSDB Partition. "; list aggregation { key id; - description - "Each aggregation takes one or more input streams from a + description + "Each aggregation takes one or more input streams from a TSDB Partition, an operation to apply to them, and points to an output stream an another TSDB Partition. "; @@ -111,101 +111,102 @@ module ietf-tlm-philatelist-aggregator { } list input { key source; - description + description "The list of sources/input streams for the aggregation. "; - leaf source { - type ietf-tlm-philatelist-index:partition-ref-t; - description + leaf source { + type ietf-tlm-philatelist-index:partition-ref-t; + description "The TSDB Partition (bucket, interval, segment, etc.) that the input telemetry data is read from. - "; + "; } } leaf operation { type leafref { path ../../../operations/operation/id; } - description + description "The operation to apply to the input stream(s) in order to compute the output stream. "; } container output { - description + description "The TSDB Partition to send the computed output to. "; - leaf destination { - type ietf-tlm-philatelist-index:partition-ref-t; - description + leaf destination { + type ietf-tlm-philatelist-index:partition-ref-t; + description "The TSDB Partition (bucket, interval, segment, etc.) that the aggregated telemetry data is sent to. - "; + "; } } } } container operations { - description + description "The operations that may be applied during the aggregation. "; list operation { key id; - description + description "Details about which operation to apply and how. "; - leaf id { - type ietf-tlm-philatelist-types:something; - description + leaf id { + type ietf-tlm-philatelist-types:something; + description "The internal id of the operation to apply. - "; + "; } choice op-type { - description + description "A choice of basic operation types. This set of choices may be extended by other modules agumenting the choice. "; - container linear-sum { - description + container linear-sum { + description "This operation produces the sum of the input streams. + Since the data points in the input stream are not likely to be perfectly aligned in time, this linear-sum - operation produces a linear interpolation between each + operation produces a linear interpolation between each point in the time series. This works well when all inputs are continuously - receiving additional data points, and when their + receiving additional data points, and when their frequency is roughly the same. A different summing operation should be chosen if this is not the case, e.g. most-recent-sum. - "; + "; } container linear-average { description "FIXME"; } container linear-max { description "FIXME"; } container linear-min { description "FIXME"; } container rolling-average { description "FIXME"; - leaf timespan { - type ietf-tlm-philatelist-types:something; - description "FIXME"; + leaf timespan { + type ietf-tlm-philatelist-types:something; + description "FIXME"; } } container filter-age { description "FIXME"; - leaf min-age { - type ietf-tlm-philatelist-types:something; - description "FIXME"; + leaf min-age { + type ietf-tlm-philatelist-types:something; + description "FIXME"; } - leaf max-age { - type ietf-tlm-philatelist-types:something; - description "FIXME"; + leaf max-age { + type ietf-tlm-philatelist-types:something; + description "FIXME"; } } container function { description "FIXME"; - leaf name { - type ietf-tlm-philatelist-types:something; - description "FIXME"; + leaf name { + type ietf-tlm-philatelist-types:something; + description "FIXME"; } } } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-assets@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-assets@2024-04-15.yang index dfac7e3d2..abd838651 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-assets@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-assets@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-assets { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-assets"; prefix ietf-tlm-philatelist-assets; @@ -43,6 +43,7 @@ module ietf-tlm-philatelist-assets { 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. + The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document @@ -59,17 +60,17 @@ module ietf-tlm-philatelist-assets { } grouping asset-pointer-g { - description + description "Pointer to an LMO asset. "; leaf pertains-to-asset-class { type leafref { path /ietf-lmo:lmos/ietf-lmo:lmo/ietf-lmo:lmo-class; } - must + must "derived-from-or-self(current(), 'ietf-lmo-assets:asset')"; must "../pertains-to-asset-id"; - description + description "The LMO Asset class of the asset. "; } @@ -79,7 +80,7 @@ module ietf-tlm-philatelist-assets { "[ietf-lmo:lmo-class=current()/../pertains-to-asset-class]" +"/ietf-lmo:inst/ietf-lmo:id"; } - description + description "The LMO Asset id (within the class) of the asset. "; } @@ -88,7 +89,7 @@ module ietf-tlm-philatelist-assets { augment "/ietf-tlm-philatelist-index:tlm-index"+ "/ietf-tlm-philatelist-index:partitions"+ "/ietf-tlm-philatelist-index:partition" { - description + description "By augmenting an asset pointer into the TSDB Partition Index, controller may clarify which LMO Asset the data in the Partition pertains to. diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-collector@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-collector@2024-04-15.yang index 6ba653f76..129c65a6d 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-collector@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-collector@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-collector { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-collector"; prefix ietf-tlm-philatelist-collector; @@ -30,7 +30,7 @@ module ietf-tlm-philatelist-collector { These definitions are for Philatelist Network Controllers. A Network Controller with the Collector role programs one or more - SOURCES (typically Network Elements) to generate a STREAM of + SOURCES (typically Network Elements) to generate a STREAM of telemetry data. A SOURCE may be a Provider, or a proxy mechanism standing in for the Provider. The STREAM is then sent to a specific DESTINATION PARTITION @@ -54,6 +54,7 @@ module ietf-tlm-philatelist-collector { +------------+ +------------+ | | \\ STREAM 3 | | =============================> \___________/ + '+" Copyright (c) 2024 IETF Trust and the persons identified as authors of the code. All rights reserved. @@ -85,46 +86,46 @@ module ietf-tlm-philatelist-collector { } container tlm-collector { - description + description "Root container for the Philatelist Collector function. "; container organizations { - description + description "List of organizations that the collected data pertains to. Data belonging to one organization will not mix with that of another. "; list organization { key name; - description + description "Organization that this collection process pertains to. "; leaf name { type string; - description + description "Collector's name of the organization. "; } container device-groups { - description + description "List of device-groups. "; list device-group { key name; - description + description "A device-group contains a group of similar devices that will have collection performed in the same way. "; leaf name { type string; - description + description "Name of the device-group. "; } leaf-list devices { type string; - description + description "Points to the devices members of this device-group. The exact meaning of these names is implementation specific. @@ -135,53 +136,53 @@ module ietf-tlm-philatelist-collector { } container tlm-streams { - description + description "List of telemetry streams pertainin to this organization. "; list tlm-stream { key id; - description + description "A stream of telemetry data that is collected from a device-group that share a particular dashboard. "; - leaf id { - type ietf-tlm-philatelist-types:something; - description + leaf id { + type ietf-tlm-philatelist-types:something; + description "Identifier of the telemetry stream. - "; + "; } - list sources { + list sources { key "device-group dash-name"; - description + description "List of sources to collect from. Each source points to a device-group and a dashboard name to collect from each device in the device-group. "; - leaf device-group { - type leafref { + leaf device-group { + type leafref { path ../../../../device-groups/device-group/name; } - description + description "The device-group to collect from. - "; + "; } - leaf dash-name { - type leafref { + leaf dash-name { + type leafref { path "../../../../device-groups/device-group/"+ "dashboards/dashboard/id"; } - description - "The name of the dashboard - "; + description + "The name of the dashboard + "; } } - leaf destination { - type ietf-tlm-philatelist-index:partition-ref-t; - description + leaf destination { + type ietf-tlm-philatelist-index:partition-ref-t; + description "The TSDB Partition (bucket, interval, segment, etc.) that the collected telemetry data is sent to. - "; + "; } } } @@ -191,7 +192,7 @@ module ietf-tlm-philatelist-collector { augment "/tlm-collector/organizations/organization/device-groups/"+ "device-group/dash-items/dash-item/label/value-source" { - description + description "Some additional value-sources that the collector enables (that are not available to providers). "; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-dashboard@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-dashboard@2024-04-15.yang index 96e2da86a..00c5e0cc1 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-dashboard@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-dashboard@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-dashboard { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-dashboard"; prefix ietf-tlm-philatelist-dashboard; @@ -22,9 +22,9 @@ module ietf-tlm-philatelist-dashboard { description "This YANG module defines the Telemetry Philatelist Dashboard. - These definitions are used both by Philatelist Network + These definitions are used both by Philatelist Network Controllers, and Philatelist Network Elements. Network Elements - that are unaware of the Philatelist framework may also be + that are unaware of the Philatelist framework may also be covered when a 'proxy mechanism' for the Philatelist information is added. @@ -59,7 +59,7 @@ module ietf-tlm-philatelist-dashboard { identity cm-gnmi { base ietf-tlm-philatelist-types:connection-method; - description + description "Connection method identity for gNMI-based mechanisms. "; } @@ -84,54 +84,54 @@ module ietf-tlm-philatelist-dashboard { identity gnmi-polling { base cm-gnmi; base ietf-tlm-philatelist-types:cm-polled; - description + description "Connection method identity for gNMI-based polling mechanisms. "; } identity restconf-get-polling { base cm-restconf; base ietf-tlm-philatelist-types:cm-polled; - description - "Connection method identity for RESTCONF-based polling + description + "Connection method identity for RESTCONF-based polling mechanisms. "; } - identity netconf-get-polling { + identity netconf-get-polling { base cm-netconf; base ietf-tlm-philatelist-types:cm-polled; - description - "Connection method identity for NETCONF-based polling + description + "Connection method identity for NETCONF-based polling mechanisms. "; } identity restconf-yang-push-subscription { base cm-restconf; - description - "Connection method identity for RESTCONF-based + description + "Connection method identity for RESTCONF-based subscription mechanisms. "; } identity netconf-yang-push-subscription { base cm-netconf; - description - "Connection method identity for NETCONF-based + description + "Connection method identity for NETCONF-based subscription mechanisms. "; } identity redfish-polling { base cm-redfish; - description + description "Connection method identity for Redfish-based polling mechanisms. "; } grouping access-g { - description + description "Grouping describing the basic set of access methods offered by - Philatelist servers, i.e. Network Elements. The set of access - mechanisms may be extended by servers offering additional + Philatelist servers, i.e. Network Elements. The set of access + mechanisms may be extended by servers offering additional mechanisms. This grouping is also used by Network Controllers, - when they need to find a way to interact with the + when they need to find a way to interact with the Network Elements. "; @@ -140,77 +140,77 @@ module ietf-tlm-philatelist-dashboard { base ietf-tlm-philatelist-types:connection-method; } default ietf-tlm-philatelist-types:get-local-file-once; - description + description "Discriminator pointing out which access mechanism is offered. This value controls which detailed configuration nodes will be available. "; } container get-local-file-once { - when "derived-from-or-self(../method, + when "derived-from-or-self(../method, 'ietf-tlm-philatelist-types:get-local-file-once')"; - description + description "The server itself does not offer any access mechanism for this dashboard item. Instead, philatelist controllers will - need to read static values from a local on the controller. - How the file appears in a relevant location on the + need to read static values from a local on the controller. + How the file appears in a relevant location on the controller is outside the scope of this specification. The file format used MUST adhere to RFC9195 (https://datatracker.ietf.org/doc/rfc9195/) "; - leaf filename { - type string; - description + leaf filename { + type string; + description "The name of the file containing the static data for the - dashboard item. If the filename is not specified, the + dashboard item. If the filename is not specified, the controller should look for a file with the same name as the connection name. "; } } container get-static-url-once { - when "derived-from-or-self(../method, + when "derived-from-or-self(../method, 'ietf-tlm-philatelist-types:get-static-url-once')"; - description + description "The server points to a URL the controller can use to download a file with static values for this dashboard item. The URL may or may not be pointing to the server itself, and - could potentially even point to a URL on the controller + could potentially even point to a URL on the controller itself. How the static file contents pointed to by the URL appears on the webserver is outside the scope of this specification. "; - leaf url { - type ietf-tlm-philatelist-types:something; - description - "The URL that the controller should read in order to + leaf url { + type ietf-tlm-philatelist-types:something; + description + "The URL that the controller should read in order to get the static data about the dashboard item. The file format used MUST adhere to RFC9195 (https://datatracker.ietf.org/doc/rfc9195/) - "; + "; } } container gnmi-polling { when "derived-from-or-self(../method, 'gnmi-polling')"; - description + description "The server points to a gNMI interface the controller can poll at regular intervals to read the current sensor value for this dashboard item. "; - leaf encoding { - type ietf-tlm-philatelist-types:something; - description - "The encoding of the data provided by this mechanism, + leaf encoding { + type ietf-tlm-philatelist-types:something; + description + "The encoding of the data provided by this mechanism, such as self-describing-gpb - "; - } - leaf protocol { - type ietf-tlm-philatelist-types:something; - description - "The exact protocol parameters for this gNMI endpoint, + "; + } + leaf protocol { + type ietf-tlm-philatelist-types:something; + description + "The exact protocol parameters for this gNMI endpoint, such as grpc no-tls - "; - } + "; + } } container restconf-get-polling { when "derived-from-or-self(../method, 'restconf-get-polling')"; @@ -223,13 +223,13 @@ module ietf-tlm-philatelist-dashboard { description "FIXME"; } container restconf-yang-push-subscription { - when "derived-from-or-self(../method, + when "derived-from-or-self(../method, 'restconf-yang-push-subscription')"; leaf xxx { type string; description "FIXME"; } description "FIXME"; } container netconf-yang-push-subscription { - when "derived-from-or-self(../method, + when "derived-from-or-self(../method, 'netconf-yang-push-subscription')"; leaf xxx { type string; description "FIXME"; } description "FIXME"; @@ -239,11 +239,11 @@ module ietf-tlm-philatelist-dashboard { leaf xxx { type string; description "FIXME"; } description "FIXME"; } - leaf frequency { - when "derived-from(../method, + leaf frequency { + when "derived-from(../method, 'ietf-tlm-philatelist-types:cm-polled')"; - type ietf-tlm-philatelist-types:sample-frequency; - description + type ietf-tlm-philatelist-types:sample-frequency; + description "The frequency with which the sensor data value collection should happen. E.g. once per 30 minutes, once per 5 minutes, once per 30 seconds or on-change. @@ -252,7 +252,7 @@ module ietf-tlm-philatelist-dashboard { } grouping provider-g { - description + description "Top-level provider grouping. Devices will implement this as a config false container, or as a piece of instance data that a controller can read. Controllers implement this @@ -260,24 +260,24 @@ module ietf-tlm-philatelist-dashboard { the operators. "; container dashboards { - description - "Each device may support one or more dashboards. - Controllers can then choose the most advanced dashboard they + description + "Each device may support one or more dashboards. + Controllers can then choose the most advanced dashboard they are aware of and interested in. A dashboard contains a list of sensors and/or controls that a controller may find useful for some particular use case. "; list dashboard { key id; - description - "List of dashboards supported by a given device or + description + "List of dashboards supported by a given device or controller. "; leaf id { type identityref { base ietf-tlm-philatelist-types:dash-type; } - description + description "Formal dashboard id. The dashboard-items in this dashboard are found in ../items, and what items are available there depends on this dashboard id . @@ -285,7 +285,7 @@ module ietf-tlm-philatelist-dashboard { } list items { key tsdb-path; - description + description "List of dashboard items. Some of the items are sensors which provide data to be read, some may be controls that the controller may use. @@ -294,16 +294,16 @@ module ietf-tlm-philatelist-dashboard { type leafref { path ../../../../dash-items/dash-item/tsdb-path; } - description + description "Path to the sensor or control item on the dashboard. The format of the path is TSDB style, i.e. used MUST conform to the I-D.draft-kll-yang-label-tsdb, e.g. interfaces_interface_statistics_in_unicast_pkts - Each dashboard item may point to multiple sensors, + Each dashboard item may point to multiple sensors, as in the example above, where each interface would have a counter of incoming unicase packets. - Each dashboard item may occur in more than one - dashboard, and is therefore further desribed in + Each dashboard item may occur in more than one + dashboard, and is therefore further desribed in ../../../../dash-items/dash-item "; } @@ -311,21 +311,21 @@ module ietf-tlm-philatelist-dashboard { } } container dash-items { - description + description "Container for all dashboard items. Each item may be part of (referenced by) multiple dashboards. "; list dash-item { key tsdb-path; - description - "Dashboard item, a sensor or control item that is part + description + "Dashboard item, a sensor or control item that is part of a dashboard, i.e. a collection of sensors and controls relevant for a particular use case. Each dashboard item may occur in more than one dashboard. "; leaf tsdb-path { type string; - description + description "Path to the sensor or control item on the dashboard. The format of the path is TSDB style, i.e. used MUST conform to the I-D.draft-kll-yang-label-tsdb, e.g. @@ -335,16 +335,16 @@ module ietf-tlm-philatelist-dashboard { a counter of incoming unicase packets. "; } - leaf item-type { - type identityref { - base ietf-tlm-philatelist-types:dash-item-type; + leaf item-type { + type identityref { + base ietf-tlm-philatelist-types:dash-item-type; } mandatory true; - description + description "The item type describes the type of dashboard item this is, including if it is a sensor or contol, sitting on the inside or outside of the parent component, the - measurement quantity (e.g. temperature) and unit + measurement quantity (e.g. temperature) and unit (e.g. Celsius). See the ietf-tlm-philatelist-types:dash-item-type for a @@ -353,21 +353,21 @@ module ietf-tlm-philatelist-dashboard { "; } container accuracy { - when "derived-from(../item-type, + when "derived-from(../item-type, 'ietf-tlm-philatelist-types:sensor-type')"; - description + description "The accuracy of the dasboard item (sensor). The accuracy described using two parameters. One is the max deviation relative to the sensor reading, the other one is a constant deviation offset. - Example 1: if a sensor might produce values between - 0 and 1000, and the sensor currently reports 555, but + Example 1: if a sensor might produce values between + 0 and 1000, and the sensor currently reports 555, but the actual value is 531, that could be reported as a 5% relative error with offset 0. - Example 2: if a sensor might produce values between - 0 and 1000, and the sensor currently reports 0, but + Example 2: if a sensor might produce values between + 0 and 1000, and the sensor currently reports 0, but the actual value is 2, that could be reported as a 0% relative error with offset 2 (or some slightly highger value, e.g. 5). @@ -377,13 +377,13 @@ module ietf-tlm-philatelist-dashboard { value R so that: (measured-error) = | R - V | - (error-margin) = | R * (max-error-relative) | + (error-margin) = | R * (max-error-relative) | + (max-error-offset) p( (measured-error) < (error-margin) ) >= 0.96 "; leaf max-error-relative { type ietf-tlm-philatelist-types:something; - description + description "The part of the accuracy claim that depends on (varies in proportion to) the reported value. "; @@ -398,9 +398,9 @@ module ietf-tlm-philatelist-dashboard { } list label { key name; - description + description "List of TSDB path labels. A single TSDB path often refer - to a whole collection of readable sensors. Each such + to a whole collection of readable sensors. Each such sensor is distinguished by the values associated with labels in the path. Those labels are listed here. @@ -423,13 +423,13 @@ module ietf-tlm-philatelist-dashboard { I-D.draft-kll-yang-label-tsdb; leaf name { type string; - description + description "The name of the label, in TSDB path notation. E.g. interfaces_interface_name "; } choice value-source { - description + description "The source of the values associated with the labels. Label values may be provided in several ways: + the server may provide values in runtime, in which @@ -444,10 +444,10 @@ module ietf-tlm-philatelist-dashboard { "; leaf-list static-values { type string; - description + description "One or more values configured by the controller or operator designating which instances of this TSDB - path to collect data about. + path to collect data about. Example: if the label name for this label entry is interfaces_interface_name, this could be a configured @@ -458,13 +458,13 @@ module ietf-tlm-philatelist-dashboard { type leafref { path ../../../dash-item/tsdb-path; } - description + description "One or more dashboard items to read label values from. Example: if the label name for this label entry is interfaces_interface_name, this could point to a - dashboard item that collects the names of all + dashboard item that collects the names of all interfaces, or all interfaces relevant for a particular purpose or customer. "; @@ -472,7 +472,7 @@ module ietf-tlm-philatelist-dashboard { } } choice access-path { - description + description "This is the path used by the client (Network Controller) when asking the server (Network Element) for data. The format of the access-path depends on the specific @@ -484,20 +484,20 @@ module ietf-tlm-philatelist-dashboard { "; leaf plain-string { type string; - description + description "The given string is used as is, without substitution of any labels or special characters. "; } leaf string-with-labels { type string; - description + description "The given string contains references of the form $(label_name) - i.e. a dollar-sign, a left-parenthesis, - the name of the label - case sensitive and without + i.e. a dollar-sign, a left-parenthesis, + the name of the label - case sensitive and without whitespace - and finally a right-parenthesis. This expression refers to the labels-value pairs from @@ -523,7 +523,7 @@ module ietf-tlm-philatelist-dashboard { } leaf url-with-labels { type string; - description + description "The given string contains references of the forms {label_name} @@ -566,15 +566,15 @@ module ietf-tlm-philatelist-dashboard { type leafref { path ../../../accesses/access/id; } - description + description "Points to the specific access method to be used with - this dashboard item. + this dashboard item. "; } } } container accesses { - description + description "Holds a list of all the access methods that have been defined for dashboard items on the Network Element. "; @@ -586,7 +586,7 @@ module ietf-tlm-philatelist-dashboard { "; leaf id { type string; - description + description "Name for this access method. "; } @@ -594,19 +594,19 @@ module ietf-tlm-philatelist-dashboard { } } container prefix-mappings { - description + description "Contains the mappings for prefixes used in the access-path to the XML namespace (NETCONF) or module name (RESTCONF). "; list prefix-mapping { key prefix; - description + description "List of access-path prefixes and their mapping to namespace and module name. "; leaf prefix { type string; - description + description "Prefix, as used in the dash-item/access-path. The prefix is case sensitive, and should not contain the ending colon (:). @@ -614,14 +614,14 @@ module ietf-tlm-philatelist-dashboard { } leaf namespace { type string; - description + description "XML namespace corresponding to the prefix name. Used by NETCONF-based access mechanisms. "; } leaf module-name { type string; - description + description "YANG module name corresponding to the prefix name. Used by RESTCONF-based access mechanisms. "; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-index@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-index@2024-04-15.yang index d7e414779..cb43815b7 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-index@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-index@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-index { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-index"; prefix ietf-tlm-philatelist-index; @@ -24,7 +24,7 @@ module ietf-tlm-philatelist-index { These definitions are for Philatelist Network Controllers. A Network Controller with the Collector role programs one or more - SOURCES (typically Network Elements) to generate a STREAM of + SOURCES (typically Network Elements) to generate a STREAM of telemetry data. The STREAM is sent to a specific DESTINATION in a Time Series Database (TSDB). @@ -77,45 +77,45 @@ module ietf-tlm-philatelist-index { } typedef partition-ref-t { - type leafref { - path + type leafref { + path "/ietf-tlm-philatelist-index:tlm-index"+ "/ietf-tlm-philatelist-index:partitions"+ "/ietf-tlm-philatelist-index:partition"+ - "/ietf-tlm-philatelist-index:id"; + "/ietf-tlm-philatelist-index:id"; } - description - "Pointer to a specific TSDB partition + description + "Pointer to a specific TSDB partition (aka. bucket, interval, segment, etc.) "; } grouping tsdb-partition-g { - description + description "Grouping for identifying and connecting to a specific TSDB partition (aka. bucket, interval, segment, etc.) "; - leaf url { - type ietf-tlm-philatelist-types:something; - description + leaf url { + type ietf-tlm-philatelist-types:something; + description "The URL to use to connect to the TSDB. - "; + "; } - leaf organization { - type ietf-tlm-philatelist-types:something; - description + leaf organization { + type ietf-tlm-philatelist-types:something; + description "The organization this partition belongs to. Leaving this unset means the 'default' organization. - "; + "; } leaf partition { - type ietf-tlm-philatelist-types:something; - description + type ietf-tlm-philatelist-types:something; + description "The TSDB partition (aka. bucket, interval, segment, etc.) that the collected data is stored in. - "; + "; } container impl-specific { - description + description "Implementation specific key-valye pairs for establising and maintaining the collection connections. "; @@ -125,38 +125,38 @@ module ietf-tlm-philatelist-index { "List of key-value bindings. The meaning of these key-value pairs is implementation dependent. "; - leaf key { - type string; - description + leaf key { + type string; + description "The key part of the key-value pair. The set of key values that are defined is implementation dependent. - "; + "; } choice value-type { - description + description "The value part of the key-value pair. The value part may have several different formats, and implementations may augment yet other formats into this choice. "; - leaf value { - type string; - description + leaf value { + type string; + description "The value part of the key-value pair as a simple string value. - "; + "; } - leaf-list values { - type string; - ordered-by user; - description + leaf-list values { + type string; + ordered-by user; + description "The value part of the key-value pair as a collection of string values. - "; + "; } - leaf env-var { - type string; - description + leaf env-var { + type string; + description "The value part of the key-value pair. The actual value is provided by an operating system environment variable. The name of that environment variable is @@ -164,7 +164,7 @@ module ietf-tlm-philatelist-index { The set of environment variable names that are defined is implementation dependent. - "; + "; } } } @@ -172,25 +172,25 @@ module ietf-tlm-philatelist-index { } container tlm-index { - description + description "List of TSDB Partitions referenced by this Network Controller. "; container partitions { - description + description "Container for all the TSDB Partition access information. "; list partition { key id; - description + description "TSDB Partition access information for the Partitions that this Network Controller is aware of. "; - leaf id { - type ietf-tlm-philatelist-types:something; - description + leaf id { + type ietf-tlm-philatelist-types:something; + description "The Network Controller's internal identifier for this TSDB Partition. - "; + "; } uses tsdb-partition-g; } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-provider@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-provider@2024-04-15.yang index c4d8a4e58..0b569c83d 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-provider@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-provider@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-provider { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-provider"; prefix ietf-tlm-philatelist-provider; @@ -58,7 +58,7 @@ module ietf-tlm-philatelist-provider { } container tlm-provider { - description + description "Container with telemetry collection dashboards for Network Elements with built-in support for the Philatelist collection framework. diff --git a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-types@2024-04-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-types@2024-04-15.yang index 6d6a9b8f9..38d40dd93 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-types@2024-04-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-tlm-philatelist-types@2024-04-15.yang @@ -1,6 +1,6 @@ module ietf-tlm-philatelist-types { yang-version 1.1; - namespace + namespace "urn:ietf:params:xml:ns:yang:ietf-tlm-philatelist-types"; prefix ietf-tlm-philatelist-types; @@ -16,7 +16,7 @@ module ietf-tlm-philatelist-types { Editor: Marisol Palmero "; description - "This YANG module defines base identities for quantities, + "This YANG module defines base identities for quantities, measurement units, connection methods, sensor and control types for the Telemetry Philatelist framework. @@ -49,67 +49,68 @@ module ietf-tlm-philatelist-types { "RFC XXXX: ..."; } - typedef something { + typedef something { type string; - description + description "FIXME: Used when we haven't decided the type yet "; } typedef xpath { type string; - description + description "FIXME: Proper type needed "; } typedef sample-frequency { - type string; - description + type string; + description "FIXME: Proper type needed "; } // ========== SENSOR-CLASS ============================== identity sensor-class { - description + description "Sensor's relation to the asset it sits on. "; } identity sc-input { base sensor-class; - description + description "Sensor reports input quantity of the asset it sits on. "; } identity sc-output { base sensor-class; - description + description "Sensor reports output quantity of the asset it sits on. "; } identity sc-allocated { base sensor-class; - description + description "Sensor reports (maximum) allocated quantity of the asset it sits on. "; } + // ========== SENSOR-QUANTITY ============================== identity sensor-quantity { - description + description "Sensor's quantity being measured. "; } // ========== SENSOR-UNIT ============================== identity sensor-unit { - description + description "Sensor's unit of reporting. "; } // ========== DASH-TYPE =================================== identity dash-type { - description + description "The base identity for all dashboard types. Dashboards are predefined collections of sensors and/or controls that a Network Element publishes towards a Network @@ -120,7 +121,7 @@ module ietf-tlm-philatelist-types { // ========== DASH-ITEM-TYPE ============================== identity dash-item-type { - description + description "The base identity for an individual item on a dashboard. This is further subdivided into controls and sensors, which are even further subdivided into sensors measuring e.g. @@ -129,7 +130,7 @@ module ietf-tlm-philatelist-types { } identity sensor-type { base dash-item-type; - description + description "Sensor's type, i.e. combination of class, quantity and unit. Sensor class tells whether the sensor measures some quantity on the inside or outside of the component it pertains to. @@ -141,18 +142,19 @@ module ietf-tlm-philatelist-types { E.g. Celsius, Farenheit or Kelvin. Or energy in kWh or J. "; } + // ========== CONNECTION-METHOD ============================== identity connection-method { - description + description "Base identity for all kinds of connection methods. "; } identity get-local-file-once { base connection-method; - description + description "Connection method identity for the case where a file contains - the dashboard information in lieu of the Network Element + the dashboard information in lieu of the Network Element itself. "; } @@ -161,13 +163,13 @@ module ietf-tlm-philatelist-types { description "Connection method identity for the case where a URL contains the dashboard information in lieu of the Network Element - itself. The URL may or may not be hosted on the Network + itself. The URL may or may not be hosted on the Network Element. "; } identity cm-polled { base connection-method; - description + description "Connection method identity for all mechanisms that are based on the client regularly polling the server. "; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service-path-computation@2024-07-07.yang b/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service-path-computation@2024-07-07.yang index 4742f5c09..95d28d4a4 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service-path-computation@2024-07-07.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service-path-computation@2024-07-07.yang @@ -41,8 +41,8 @@ module ietf-trans-client-service-path-computation { Chaode Yu (yuchaode@huawei.com); Sergio Belotti (sergio.belotti@nokia.com); Italo Busi (italo.busi@huawei.com); - Aihua Guo (aihuaguo.ietf@gmail.com); - Dieter Beller (dieter.beller@nokia.com); + Aihua Guo (aihuaguo.ietf@gmail.com); + Dieter Beller (dieter.beller@nokia.com); "; description @@ -74,7 +74,7 @@ module ietf-trans-client-service-path-computation { key path-id; leaf path-id { - type yang:uuid; + type yang:uuid; } leaf creation-time { @@ -91,8 +91,8 @@ module ietf-trans-client-service-path-computation { key index; leaf index { - description - "The tunnels underlay should be ordered by their + description + "The tunnels underlay should be ordered by their supproting relationship. The client layer tunnels should use smaller index."; type uint8; @@ -103,17 +103,17 @@ module ietf-trans-client-service-path-computation { path "/te:te/te:tunnels/te:tunnel/te:name"; } - description + description "the computed result can route with some existing - TE tunnels. The tunnel-name is the identifier of - tunnel. If the tunnel is not created, this + TE tunnels. The tunnel-name is the identifier of + tunnel. If the tunnel is not created, this parameter is not needed to provide."; } uses te-types:te-topology-identifier; list computed-lsp { - key lsp-id; + key lsp-id; leaf lsp-id { type uint8; } @@ -146,6 +146,7 @@ module ietf-trans-client-service-path-computation { } } } + list lsp-route-objects { key index; @@ -160,7 +161,7 @@ module ietf-trans-client-service-path-computation { path "../../../index"; } } - } + } } } } @@ -234,11 +235,11 @@ module ietf-trans-client-service-path-computation { description "when the client requestes to compute multiple paths for a service, this path-number can be used to rank - the path result, based on the path computation - policy. The path-number starts with 0 and 0 - indicates the best option. The better path's + the path result, based on the path computation + policy. The path-number starts with 0 and 0 + indicates the best option. The better path's path-number should be in lower number."; - } + } } uses te-types:te-topology-identifier; @@ -258,15 +259,15 @@ module ietf-trans-client-service-path-computation { list underlay-tunnel { key index; - description + description "The server could support all the layers of tunnels - under the client signal service. If it cannot + under the client signal service. If it cannot support that, it should return its topmost layer tunnel's path infomation"; leaf index { - description - "The tunnels underlay should be ordered by their + description + "The tunnels underlay should be ordered by their supproting relationship. The client layer tunnels should use smaller index."; type uint8; @@ -277,10 +278,10 @@ module ietf-trans-client-service-path-computation { path "/te:te/te:tunnels/te:tunnel/te:name"; } - description + description "the computed result can route with some existing - TE tunnels. The tunnel-name is the identifier of - tunnel. If the tunnel is not created, this + TE tunnels. The tunnel-name is the identifier of + tunnel. If the tunnel is not created, this parameter is not needed to provide."; } @@ -345,7 +346,7 @@ module ietf-trans-client-service-path-computation { } } } - } + } grouping hop-infomation { leaf node-id { @@ -383,6 +384,7 @@ module ietf-trans-client-service-path-computation { case wson { uses l0-types:wson-label-hop; } + case otn { uses l1-types:otn-label-hop; } diff --git a/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service@2024-01-11.yang b/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service@2024-01-11.yang index 4398a689a..60d9ea673 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service@2024-01-11.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-trans-client-service@2024-01-11.yang @@ -38,7 +38,7 @@ module ietf-trans-client-service { import ietf-trans-client-svc-types { prefix clnt-types; reference - "RFCXXXX: A YANG Data Model for Transport Network Client + "RFCXXXX: A YANG Data Model for Transport Network Client Signals"; } // RFC Editor: replace XXXX with the actual RFC number assigned @@ -118,7 +118,7 @@ module ietf-trans-client-service { leaf access-ltp-id { type te-types:te-tp-id; description - "The TE link termination point identifier in TE topology, + "The TE link termination point identifier in TE topology, used together with access-node-id to identify the access Link Termination Point (LTP)."; } @@ -189,6 +189,7 @@ module ietf-trans-client-service { "TE tunnel instance name."; } } + grouping client-svc-instance-config { description "Configuration parameters for client services."; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-udp-client@2024-10-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-udp-client@2024-10-15.yang index 34cc52265..6d773cebd 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-udp-client@2024-10-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-udp-client@2024-10-15.yang @@ -18,6 +18,7 @@ module ietf-udp-client { Pierre Francois "; + description "Defines a generic grouping for UDP-based client applications. diff --git a/experimental/ietf-extracted-YANG-modules/ietf-udp-server@2024-10-15.yang b/experimental/ietf-extracted-YANG-modules/ietf-udp-server@2024-10-15.yang index ff21a11b3..470b89527 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-udp-server@2024-10-15.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-udp-server@2024-10-15.yang @@ -24,6 +24,7 @@ module ietf-udp-server { Copyright (c) 2024 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 diff --git a/experimental/ietf-extracted-YANG-modules/ietf-voucher@2023-01-10.yang b/experimental/ietf-extracted-YANG-modules/ietf-voucher@2023-01-10.yang index 4b9762a2a..1f6a55f4b 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-voucher@2023-01-10.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-voucher@2023-01-10.yang @@ -58,6 +58,7 @@ module ietf-voucher { 'MAY', and 'OPTIONAL' in this document are to be interpreted as described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, they appear in all capitals, as shown here."; + revision 2023-01-10 { description "updated to support new assertion enumerated type"; diff --git a/experimental/ietf-extracted-YANG-modules/ietf-wdm-path-computation@2024-02-29.yang b/experimental/ietf-extracted-YANG-modules/ietf-wdm-path-computation@2024-02-29.yang index 6287d49a4..ae8d12620 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-wdm-path-computation@2024-02-29.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-wdm-path-computation@2024-02-29.yang @@ -6,7 +6,7 @@ module ietf-wdm-path-computation { import ietf-te-path-computation { prefix "tepc"; - reference + reference "I-D.ietf-teas-yang-path-computation-22: Yang model for requesting Path Computation."; } @@ -50,7 +50,7 @@ module ietf-wdm-path-computation { "This module defines a model for requesting WDM Path Computation. - The model fully conforms to the Network Management + The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2022 IETF Trust and the persons @@ -72,7 +72,7 @@ module ietf-wdm-path-computation { reference "RFC XXXX: YANG Data Models for requesting Path Computation in Optical Networks."; - // RFC Ed.: replace XXXX with actual RFC number, update date + // RFC Ed.: replace XXXX with actual RFC number, update date // information and remove this note } @@ -139,6 +139,7 @@ module ietf-wdm-path-computation { uses wdm-tnl:path-transceiver-config; } + //??? augment "/te:tunnels-path-compute/te:input/te:path-compute-info/" + "tepc:path-request/tepc:optimizations/tepc:algorithm/" @@ -187,6 +188,7 @@ module ietf-wdm-path-computation { "The OMS element route hop type"; } } + augment "/te:tunnels-path-compute/te:input/te:path-compute-info/" + "tepc:path-request/tepc:explicit-route-objects/" + "tepc:route-object-include-exclude/tepc:type/" diff --git a/experimental/ietf-extracted-YANG-modules/ietf-wdm-tunnel@2024-07-02.yang b/experimental/ietf-extracted-YANG-modules/ietf-wdm-tunnel@2024-07-02.yang index c0e8a94be..daac6b8a2 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-wdm-tunnel@2024-07-02.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-wdm-tunnel@2024-07-02.yang @@ -47,7 +47,7 @@ module ietf-wdm-tunnel { and managing Wavelength-Division Multiplexing (WDM) switched optical tunnels. - The model fully conforms to the Network Management + The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2021 IETF Trust and the persons @@ -70,7 +70,7 @@ module ietf-wdm-tunnel { reference "RFC XXXX: YANG data model for WDM tunnels"; - // RFC Ed.: replace XXXX with actual RFC number, update date + // RFC Ed.: replace XXXX with actual RFC number, update date // information and remove this note } @@ -93,6 +93,7 @@ module ietf-wdm-tunnel { For instance, if the frequency is restricted to the C-band, the list of operational modes should not include any modes applicable only to the L-band."; + leaf otsi-carrier-frequency { type l0-types:frequency-thz; description @@ -113,10 +114,10 @@ module ietf-wdm-tunnel { base l0-types:line-coding; } description - "The list of the bit rate/line coding of the optical + "The list of the bit rate/line coding of the optical tributary signal that constrains the configuration of the transceiver."; - reference + reference "ITU-T G.698.2 section 7.1.2"; } @@ -150,7 +151,7 @@ module ietf-wdm-tunnel { configurations"; leaf-list operational-modes { - type string { + type string { length "1..255"; } description diff --git a/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed-library@2023-11-05.yang b/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed-library@2023-11-05.yang index 340d1772f..9114e2ac2 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed-library@2023-11-05.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed-library@2023-11-05.yang @@ -40,6 +40,7 @@ module ietf-yang-full-embed-library { 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 @@ -92,3 +93,4 @@ module ietf-yang-full-embed-library { } } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed@2023-11-05.yang b/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed@2023-11-05.yang index 4c7e8d070..16111a7ec 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed@2023-11-05.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-yang-full-embed@2023-11-05.yang @@ -59,3 +59,4 @@ module ietf-yang-full-embed { the sequence is declared"; } } + diff --git a/experimental/ietf-extracted-YANG-modules/ietf-yp-notification@2024-10-18.yang b/experimental/ietf-extracted-YANG-modules/ietf-yp-notification@2024-10-18.yang index e5068eff6..21a10b482 100644 --- a/experimental/ietf-extracted-YANG-modules/ietf-yp-notification@2024-10-18.yang +++ b/experimental/ietf-extracted-YANG-modules/ietf-yp-notification@2024-10-18.yang @@ -47,7 +47,7 @@ module ietf-yp-notification { description "Defines a notification header for Subscribed Notifications [RFC8639] and YANG-Push [RFC8641]. When this notification header - is enabled through configuration, the root container of the + is enabled through configuration, the root container of the notification is encoded as defined in RFCXXX. This module can be used to validate XML encoded notifications @@ -85,11 +85,11 @@ module ietf-yp-notification { type boolean; default false; description - "Enables YANG-Push to use the notification-envelope + "Enables YANG-Push to use the notification-envelope defined in RFC XXXX."; } container metadata { - description + description "Container for configuring optional metadata."; } } @@ -103,11 +103,11 @@ module ietf-yp-notification { type boolean; default false; description - "Supports YANG-Push to use the notification-envelope + "Supports YANG-Push to use the notification-envelope defined in RFC XXXX."; } container metadata { - description + description "Container with the supported optional metadata by the YANG-Push publisher."; leaf hostname-sequence-number { @@ -145,7 +145,7 @@ module ietf-yp-notification { published message."; } anydata notification-contents { - description + description "This contains the values defined by the 'notification' statement unchanged."; } @@ -178,11 +178,11 @@ module ietf-yp-notification { augment "/sysc:system-capabilities/notc:subscription-capabilities" { description "Extension to the subscription-capabilities model to enable - clients to learn whether the publisher supports the + clients to learn whether the publisher supports the notification-envelope"; container notification-metadata { - description + description "Adds the notification metadata capabilities to subscription capabilities."; uses notif-env-capabilities;