| rfc9911v1.txt | rfc9911.txt | |||
|---|---|---|---|---|
| skipping to change at line 13 ¶ | skipping to change at line 13 ¶ | |||
| Request for Comments: 9911 Constructor University | Request for Comments: 9911 Constructor University | |||
| Obsoletes: 6991 December 2025 | Obsoletes: 6991 December 2025 | |||
| Category: Standards Track | Category: Standards Track | |||
| ISSN: 2070-1721 | ISSN: 2070-1721 | |||
| Common YANG Data Types | Common YANG Data Types | |||
| Abstract | Abstract | |||
| This document defines a collection of common data types to be used | This document defines a collection of common data types to be used | |||
| with the YANG data modeling language. This version of the document | with the YANG data modeling language. This version includes several | |||
| adds several new type definitions and obsoletes RFC 6991. | new type definitions and obsoletes RFC 6991. | |||
| Status of This Memo | Status of This Memo | |||
| This is an Internet Standards Track document. | This is an Internet Standards Track document. | |||
| This document is a product of the Internet Engineering Task Force | This document is a product of the Internet Engineering Task Force | |||
| (IETF). It represents the consensus of the IETF community. It has | (IETF). It represents the consensus of the IETF community. It has | |||
| received public review and has been approved for publication by the | received public review and has been approved for publication by the | |||
| Internet Engineering Steering Group (IESG). Further information on | Internet Engineering Steering Group (IESG). Further information on | |||
| Internet Standards is available in Section 2 of RFC 7841. | Internet Standards is available in Section 2 of RFC 7841. | |||
| skipping to change at line 88 ¶ | skipping to change at line 88 ¶ | |||
| This document defines a collection of common data types. The | This document defines a collection of common data types. The | |||
| definitions are organized into two YANG modules: | definitions are organized into two YANG modules: | |||
| * The "ietf-yang-types" module defines generally useful data types | * The "ietf-yang-types" module defines generally useful data types | |||
| such as types for counters and gauges, types related to date and | such as types for counters and gauges, types related to date and | |||
| time, and types for common string values (e.g., UUIDs, dotted-quad | time, and types for common string values (e.g., UUIDs, dotted-quad | |||
| notation, and language tags). | notation, and language tags). | |||
| * The "ietf-inet-types" module defines data types relevant for the | * The "ietf-inet-types" module defines data types relevant for the | |||
| Internet protocol suite such as types related to IP address, types | Internet Protocol suite such as types related to IP address, types | |||
| for domain name, host name, URI, and email, and types for values | for domain name, host name, URI, and email, and types for values | |||
| in common protocol fields (e.g., port numbers). | in common protocol fields (e.g., port numbers). | |||
| The initial version of these YANG modules was published as [RFC6021]. | The initial version of these YANG modules was published as [RFC6021]. | |||
| The first revision of [RFC6021], published as [RFC6991], added | The first revision of [RFC6021], published as [RFC6991], added | |||
| several type definitions to the YANG modules. This second revision | several type definitions to the YANG modules. This second revision | |||
| adds further new type definitions and addresses Erratum IDs 4076 | adds further new type definitions and addresses Erratum IDs 4076 | |||
| [Err4076] and 5105 [Err5105]. Furthermore, the yang-identifier | [Err4076] and 5105 [Err5105]. Furthermore, the yang-identifier | |||
| definition has been aligned with YANG 1.1 [RFC7950], and some pattern | definition has been aligned with YANG 1.1 [RFC7950], and some pattern | |||
| statements have been improved. For further details, see the revision | statements have been improved. For further details, see the revision | |||
| skipping to change at line 120 ¶ | skipping to change at line 120 ¶ | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| 2. Overview | 2. Overview | |||
| Tables 1 and 2 list the types defined in the YANG modules "ietf-yang- | Tables 1 and 2 list the types defined in the YANG modules "ietf-yang- | |||
| types" and "ietf-inet-types". For each type, the name of the type, | types" and "ietf-inet-types". For each type, the name of the type, | |||
| the base type it was derived from, and the RFC introducing the type | the base type it was derived from, and the RFC introducing the type | |||
| is listed. | is listed. | |||
| +=======================+===================+============+ | +=======================+===================+===============+ | |||
| | Type | Base Type | Introduced | | | Type | Base Type | Introduced in | | |||
| +=======================+===================+============+ | +=======================+===================+===============+ | |||
| | counter32 | uint32 | RFC 6021 | | | counter32 | uint32 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | zero-based-counter32 | uint32 | RFC 6021 | | | zero-based-counter32 | uint32 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | counter64 | uint64 | RFC 6021 | | | counter64 | uint64 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | zero-based-counter64 | uint64 | RFC 6021 | | | zero-based-counter64 | uint64 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | gauge32 | uint32 | RFC 6021 | | | gauge32 | uint32 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | gauge64 | uint64 | RFC 6021 | | | gauge64 | uint64 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | object-identifier | string | RFC 6021 | | | object-identifier | string | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | object-identifier-128 | object-identifier | RFC 6021 | | | object-identifier-128 | object-identifier | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | date-and-time | string | RFC 6021 | | | date-and-time | string | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | date | string | RFC 9911 | | | date | string | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | date-no-zone | string | RFC 9911 | | | date-no-zone | string | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | time | string | RFC 9911 | | | time | string | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | time-no-zone | string | RFC 9911 | | | time-no-zone | string | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | hours32 | int32 | RFC 9911 | | | hours32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | minutes32 | int32 | RFC 9911 | | | minutes32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | seconds32 | int32 | RFC 9911 | | | seconds32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | centiseconds32 | int32 | RFC 9911 | | | centiseconds32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | milliseconds32 | int32 | RFC 9911 | | | milliseconds32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | microseconds32 | int32 | RFC 9911 | | | microseconds32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | microseconds64 | int64 | RFC 9911 | | | microseconds64 | int64 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | nanoseconds32 | int32 | RFC 9911 | | | nanoseconds32 | int32 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | nanoseconds64 | int64 | RFC 9911 | | | nanoseconds64 | int64 | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | timeticks | int32 | RFC 6021 | | | timeticks | int32 | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | timestamp | timeticks | RFC 6021 | | | timestamp | timeticks | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | phys-address | string | RFC 6021 | | | phys-address | string | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | mac-address | string | RFC 6021 | | | mac-address | string | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | xpath1.0 | string | RFC 6021 | | | xpath1.0 | string | RFC 6021 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | hex-string | string | RFC 6991 | | | hex-string | string | RFC 6991 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | uuid | string | RFC 6991 | | | uuid | string | RFC 6991 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | dotted-quad | string | RFC 6991 | | | dotted-quad | string | RFC 6991 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | language-tag | string | RFC 9911 | | | language-tag | string | RFC 9911 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| | yang-identifier | string | RFC 6991 | | | yang-identifier | string | RFC 6991 | | |||
| +-----------------------+-------------------+------------+ | +-----------------------+-------------------+---------------+ | |||
| Table 1: Types Defined in the "ietf-yang-types" Module | Table 1: Types Defined in the "ietf-yang-types" Module | |||
| +=============================+=================+============+ | +=============================+=================+===============+ | |||
| | Type | Base Type | Introduced | | | Type | Base Type | Introduced in | | |||
| +=============================+=================+============+ | +=============================+=================+===============+ | |||
| | ip-version | enum | RFC 6021 | | | ip-version | enum | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | dscp | uint8 | RFC 6021 | | | dscp | uint8 | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-flow-label | uint32 | RFC 6021 | | | ipv6-flow-label | uint32 | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | port-number | uint16 | RFC 6021 | | | port-number | uint16 | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | protocol-number | uint8 | RFC 9911 | | | protocol-number | uint8 | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | upper-layer-protocol-number | protocol-number | RFC 9911 | | | upper-layer-protocol-number | protocol-number | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | as-number | uint32 | RFC 6021 | | | as-number | uint32 | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ip-address | union | RFC 6021 | | | ip-address | union | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv4-address | string | RFC 6021 | | | ipv4-address | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-address | string | RFC 6021 | | | ipv6-address | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ip-address-no-zone | union | RFC 6991 | | | ip-address-no-zone | union | RFC 6991 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv4-address-no-zone | ipv4-address | RFC 6991 | | | ipv4-address-no-zone | ipv4-address | RFC 6991 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-address-no-zone | ipv6-address | RFC 6991 | | | ipv6-address-no-zone | ipv6-address | RFC 6991 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ip-address-link-local | union | RFC 9911 | | | ip-address-link-local | union | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv4-address-link-local | ipv4-address | RFC 9911 | | | ipv4-address-link-local | ipv4-address | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-address-link-local | ipv6-address | RFC 9911 | | | ipv6-address-link-local | ipv6-address | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ip-prefix | union | RFC 6021 | | | ip-prefix | union | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv4-prefix | string | RFC 6021 | | | ipv4-prefix | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-prefix | string | RFC 6021 | | | ipv6-prefix | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ip-address-and-prefix | union | RFC 9911 | | | ip-address-and-prefix | union | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv4-address-and-prefix | string | RFC 9911 | | | ipv4-address-and-prefix | string | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | ipv6-address-and-prefix | string | RFC 9911 | | | ipv6-address-and-prefix | string | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | domain-name | string | RFC 6021 | | | domain-name | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | host-name | domain-name | RFC 9911 | | | host-name | domain-name | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | host | union | RFC 6021 | | | host | union | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | uri | string | RFC 6021 | | | uri | string | RFC 6021 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| | email-address | string | RFC 9911 | | | email-address | string | RFC 9911 | | |||
| +-----------------------------+-----------------+------------+ | +-----------------------------+-----------------+---------------+ | |||
| Table 2: Types Defined in the "ietf-inet-types" Module | Table 2: Types Defined in the "ietf-inet-types" Module | |||
| Some types have an equivalent Structure of Management Information | Some types have an equivalent Structure of Management Information | |||
| Version 2 (SMIv2) [RFC2578] [RFC2579] data type. A YANG data type is | Version 2 (SMIv2) [RFC2578] [RFC2579] data type. A YANG data type is | |||
| equivalent to an SMIv2 data type if the data types have the same set | equivalent to an SMIv2 data type if the data types have the same set | |||
| of values and the semantics of the values are equivalent. | of values and the semantics of the values are equivalent. | |||
| Table 3 lists the types defined in the "ietf-yang-types" YANG module | Table 3 lists the types defined in the "ietf-yang-types" YANG module | |||
| with their corresponding SMIv2 types, and Table 4 lists the types | with their corresponding SMIv2 types, and Table 4 lists the types | |||
| defined in the "ietf-inet-types" module with their corresponding | defined in the "ietf-inet-types" module with their corresponding | |||
| SMIv2 types. | SMIv2 types. | |||
| skipping to change at line 313 ¶ | skipping to change at line 313 ¶ | |||
| +-----------------+-----------------------------------------------+ | +-----------------+-----------------------------------------------+ | |||
| | as-number | InetAutonomousSystemNumber (INET-ADDRESS-MIB) | | | as-number | InetAutonomousSystemNumber (INET-ADDRESS-MIB) | | |||
| +-----------------+-----------------------------------------------+ | +-----------------+-----------------------------------------------+ | |||
| | uri | Uri (URI-TC-MIB) | | | uri | Uri (URI-TC-MIB) | | |||
| +-----------------+-----------------------------------------------+ | +-----------------+-----------------------------------------------+ | |||
| Table 4: Equivalent SMIv2 Types for the "ietf-inet-types" Module | Table 4: Equivalent SMIv2 Types for the "ietf-inet-types" Module | |||
| 3. Core YANG Types | 3. Core YANG Types | |||
| The "ietf-yang-types" YANG module references [IEEE-802-2001], | The "ietf-yang-types" YANG module references [IEEE-802-2024], | |||
| [ISO-9834-1], [RFC2578], [RFC2579], [RFC2856], [RFC3339], [RFC4122], | [ISO-8601], [ISO-9834-1], [RFC2578], [RFC2579], [RFC2856], [RFC3339], | |||
| [RFC4502], [RFC5131], [RFC5646], [RFC7950], [RFC8294], [RFC9557], | [RFC4502], [RFC5131], [RFC5646], [RFC7950], [RFC9557], [RFC9562], | |||
| [XPATH], and [XSD-TYPES]. | [XPATH], and [XSD-TYPES]. | |||
| <CODE BEGINS> file "ietf-yang-types@2025-12-01.yang" | <CODE BEGINS> file "ietf-yang-types@2025-12-01.yang" | |||
| module ietf-yang-types { | module ietf-yang-types { | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types"; | namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types"; | |||
| prefix yang; | prefix yang; | |||
| organization | organization | |||
| "IETF Network Modeling (NETMOD) Working Group"; | "IETF Network Modeling (NETMOD) Working Group"; | |||
| contact | contact | |||
| "WG Web: <https://datatracker.ietf.org/wg/netmod/> | "WG Web: <https://datatracker.ietf.org/wg/netmod/> | |||
| WG List: <mailto:netmod@ietf.org> | WG List: <mailto:netmod@ietf.org> | |||
| Editor: Juergen Schoenwaelder | Editor: Jürgen Schönwälder | |||
| <mailto:jschoenwaelder@constructor.university>"; | <mailto:jschoenwaelder@constructor.university>"; | |||
| description | description | |||
| "This module contains a collection of generally useful derived | "This module contains a collection of generally useful derived | |||
| YANG data types. | YANG data types. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | 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. | |||
| skipping to change at line 411 ¶ | skipping to change at line 411 ¶ | |||
| "The counter32 type represents a non-negative integer | "The counter32 type represents a non-negative integer | |||
| that monotonically increases until it reaches a | that monotonically increases until it reaches a | |||
| maximum value of 2^32-1 (4294967295 decimal), when it | maximum value of 2^32-1 (4294967295 decimal), when it | |||
| wraps around and starts increasing again from zero. | wraps around and starts increasing again from zero. | |||
| Counters have no defined 'initial' value, and thus, a | Counters have no defined 'initial' value, and thus, a | |||
| single value of a counter has (in general) no information | single value of a counter has (in general) no information | |||
| content. Discontinuities in the monotonically increasing | content. Discontinuities in the monotonically increasing | |||
| value normally occur at re-initialization of the | value normally occur at re-initialization of the | |||
| management system and at other times as specified in the | management system and at other times as specified in the | |||
| description of a schema node using this type. If such | description of a schema node using this type. If | |||
| other times can occur, for example, the instantiation of | discontinuities occur at times other than re-initialization | |||
| a schema node of type counter32 at times other than | (for example, at the instantiation of a schema node of type | |||
| re-initialization, then a corresponding schema node | counter32), then a corresponding schema node should be | |||
| should be defined, with an appropriate type, to indicate | defined, with an appropriate type, to indicate the last | |||
| the last discontinuity. | discontinuity. | |||
| The counter32 type should not be used for configuration | The counter32 type should not be used for configuration | |||
| schema nodes. A default statement SHOULD NOT be used in | schema nodes. A default statement SHOULD NOT be used in | |||
| combination with the type counter32. | combination with the type counter32. | |||
| In the value set and its semantics, this type is equivalent | In the value set and its semantics, this type is equivalent | |||
| to the Counter32 type of the SMIv2."; | to the Counter32 type of the SMIv2."; | |||
| reference | reference | |||
| "RFC 2578: Structure of Management Information Version 2 | "RFC 2578: Structure of Management Information Version 2 | |||
| (SMIv2)"; | (SMIv2)"; | |||
| skipping to change at line 468 ¶ | skipping to change at line 468 ¶ | |||
| "The counter64 type represents a non-negative integer | "The counter64 type represents a non-negative integer | |||
| that monotonically increases until it reaches a | that monotonically increases until it reaches a | |||
| maximum value of 2^64-1 (18446744073709551615 decimal), | maximum value of 2^64-1 (18446744073709551615 decimal), | |||
| when it wraps around and starts increasing again from zero. | when it wraps around and starts increasing again from zero. | |||
| Counters have no defined 'initial' value, and thus, a | Counters have no defined 'initial' value, and thus, a | |||
| single value of a counter has (in general) no information | single value of a counter has (in general) no information | |||
| content. Discontinuities in the monotonically increasing | content. Discontinuities in the monotonically increasing | |||
| value normally occur at re-initialization of the | value normally occur at re-initialization of the | |||
| management system and at other times as specified in the | management system and at other times as specified in the | |||
| description of a schema node using this type. If such | description of a schema node using this type. If | |||
| other times can occur, for example, the instantiation of | discontinuities occur at times other than re-initialization | |||
| a schema node of type counter64 at times other than | (for example, at the instantiation of a schema node of type | |||
| re-initialization, then a corresponding schema node | counter64), then a corresponding schema node should be | |||
| should be defined, with an appropriate type, to indicate | defined, with an appropriate type, to indicate the last | |||
| the last discontinuity. | discontinuity. | |||
| The counter64 type should not be used for configuration | The counter64 type should not be used for configuration | |||
| schema nodes. A default statement SHOULD NOT be used in | schema nodes. A default statement SHOULD NOT be used in | |||
| combination with the type counter64. | combination with the type counter64. | |||
| In the value set and its semantics, this type is equivalent | In the value set and its semantics, this type is equivalent | |||
| to the Counter64 type of the SMIv2."; | to the Counter64 type of the SMIv2."; | |||
| reference | reference | |||
| "RFC 2578: Structure of Management Information Version 2 | "RFC 2578: Structure of Management Information Version 2 | |||
| (SMIv2)"; | (SMIv2)"; | |||
| skipping to change at line 525 ¶ | skipping to change at line 525 ¶ | |||
| description | description | |||
| "The gauge32 type represents a non-negative integer, which | "The gauge32 type represents a non-negative integer, which | |||
| may increase or decrease, but shall never exceed a maximum | may increase or decrease, but shall never exceed a maximum | |||
| value, nor fall below a minimum value. The maximum value | value, nor fall below a minimum value. The maximum value | |||
| cannot be greater than 2^32-1 (4294967295 decimal), and | cannot be greater than 2^32-1 (4294967295 decimal), and | |||
| the minimum value cannot be smaller than 0. The value of | the minimum value cannot be smaller than 0. The value of | |||
| a gauge32 has its maximum value whenever the information | a gauge32 has its maximum value whenever the information | |||
| being modeled is greater than or equal to its maximum | being modeled is greater than or equal to its maximum | |||
| value, and has its minimum value whenever the information | value, and has its minimum value whenever the information | |||
| being modeled is smaller than or equal to its minimum value. | being modeled is smaller than or equal to its minimum value. | |||
| If the information being modeled subsequently decreases | If the information being modeled subsequently decreases below | |||
| below (increases above) the maximum (minimum) value, the | the maximum value, the gauge32 also decreases; likewise, if | |||
| gauge32 also decreases (increases). | the information increases above the minimum value, the | |||
| gauge32 also increases. | ||||
| In the value set and its semantics, this type is equivalent | In the value set and its semantics, this type is equivalent | |||
| to the Gauge32 type of the SMIv2."; | to the Gauge32 type of the SMIv2."; | |||
| reference | reference | |||
| "RFC 2578: Structure of Management Information Version 2 | "RFC 2578: Structure of Management Information Version 2 | |||
| (SMIv2)"; | (SMIv2)"; | |||
| } | } | |||
| typedef gauge64 { | typedef gauge64 { | |||
| type uint64; | type uint64; | |||
| skipping to change at line 596 ¶ | skipping to change at line 597 ¶ | |||
| module designers should realize that there may be | module designers should realize that there may be | |||
| implementations that stick with the SMIv2 limit of 128 | implementations that stick with the SMIv2 limit of 128 | |||
| sub-identifiers. | sub-identifiers. | |||
| This type is a superset of the SMIv2 OBJECT IDENTIFIER type | This type is a superset of the SMIv2 OBJECT IDENTIFIER type | |||
| since it is not restricted to 128 sub-identifiers. Hence, | since it is not restricted to 128 sub-identifiers. Hence, | |||
| this type SHOULD NOT be used to represent the SMIv2 OBJECT | this type SHOULD NOT be used to represent the SMIv2 OBJECT | |||
| IDENTIFIER type; the object-identifier-128 type SHOULD be | IDENTIFIER type; the object-identifier-128 type SHOULD be | |||
| used instead."; | used instead."; | |||
| reference | reference | |||
| "ISO 9834-1: Information technology -- Open Systems | "ISO 9834-1: Information technology -- Procedures for the | |||
| Interconnection -- Procedures for the operation of OSI | operation of object identifier registration authorities - | |||
| Registration Authorities: General procedures and top | Part 1: General procedures and top arcs of the international | |||
| arcs of the International Object Identifier tree"; | object identifier tree"; | |||
| } | } | |||
| typedef object-identifier-128 { | typedef object-identifier-128 { | |||
| type object-identifier { | type object-identifier { | |||
| pattern '[0-9]*(\.[0-9]*){1,127}'; | pattern '[0-9]*(\.[0-9]*){1,127}'; | |||
| } | } | |||
| description | description | |||
| "This type represents object-identifiers restricted to 128 | "This type represents object-identifiers restricted to 128 | |||
| sub-identifiers. | sub-identifiers. | |||
| skipping to change at line 623 ¶ | skipping to change at line 624 ¶ | |||
| "RFC 2578: Structure of Management Information Version 2 | "RFC 2578: Structure of Management Information Version 2 | |||
| (SMIv2)"; | (SMIv2)"; | |||
| } | } | |||
| /*** collection of types related to date and time ***/ | /*** collection of types related to date and time ***/ | |||
| typedef date-and-time { | typedef date-and-time { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])' | '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])' | |||
| + 'T(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?' | + 'T(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)' | |||
| + '(\.[0-9]+)?' | ||||
| + '(Z|[\+\-]((1[0-3]|0[0-9]):([0-5][0-9])|14:00))?'; | + '(Z|[\+\-]((1[0-3]|0[0-9]):([0-5][0-9])|14:00))?'; | |||
| } | } | |||
| description | description | |||
| "The date-and-time type is a profile of the ISO 8601 | "The date-and-time type is a profile of the ISO 8601 | |||
| standard for representation of dates and times using the | standard for representation of dates and times using the | |||
| Gregorian calendar. The profile is defined by the | Gregorian calendar. The profile is defined by the | |||
| date-time production in Section 5.6 of RFC 3339 and the | date-time production in Section 5.6 of RFC 3339 and the | |||
| update defined in Section 2 of RFC 9557. The value of | update defined in Section 2 of RFC 9557. The value of | |||
| 60 for seconds is allowed only in the case of leap seconds. | 60 for seconds is allowed only in the case of leap seconds. | |||
| The date-and-time type is compatible with the dateTime XML | The date-and-time type is compatible with the dateTime XML | |||
| schema dateTime type with the following notable exceptions: | schema dateTime type with the following notable exceptions: | |||
| (a) The date-and-time type does not allow negative years. | (a) The date-and-time type does not allow negative years. | |||
| (b) The time-offset Z indicates that the date-and-time | (b) The time-offset Z indicates that the date-and-time | |||
| value is reported in UTC and that the local time zone | value is reported in UTC and that the local time zone | |||
| reference point is unknown. The time-offset +00:00 | reference point is unknown. The time-offset +00:00 | |||
| indicates that the date-and-time value is reported in | indicates that the date-and-time value is reported in | |||
| UTC and that the local time reference point is UTC | UTC and that the local time zone reference point is UTC | |||
| (see Section 2 of RFC 9557). | (see Section 2 of RFC 9557). | |||
| This type is not equivalent to the DateAndTime textual | This type is not equivalent to the DateAndTime textual | |||
| convention of the SMIv2 since RFC 3339 uses a different | convention of the SMIv2 since RFC 3339 uses a different | |||
| separator between full-date and full-time and provides | separator between full-date and full-time and provides | |||
| higher resolution of time-secfrac. | higher resolution of time-secfrac. | |||
| The canonical format for date-and-time values with a known | The canonical format for date-and-time values with a known | |||
| time zone uses a numeric time zone offset that is calculated | time zone uses a numeric time zone offset that is calculated | |||
| using the device's configured known offset to UTC time. A | using the device's configured known offset to UTC time. A | |||
| change of the device's offset to UTC time will cause | change of the device's offset to UTC time will cause | |||
| date-and-time values to change accordingly. Such changes | date-and-time values to change accordingly. Such changes | |||
| might happen periodically in case a server follows | might happen periodically if a server automatically follows | |||
| automatically daylight saving time (DST) time zone offset | daylight saving time (DST) time zone offset changes. The | |||
| changes. The canonical format for date-and-time values | canonical format for date-and-time values reported in UTC | |||
| reported in UTC with an unknown local time zone offset SHOULD | with an unknown local time zone offset SHOULD use the | |||
| use the time-offset Z and MAY use -00:00 for backwards | time-offset Z and MAY use -00:00 for backwards | |||
| compatibility."; | compatibility."; | |||
| reference | reference | |||
| "RFC 3339: Date and Time on the Internet: Timestamps | "ISO 8601: Data elements and interchange formats -- Information | |||
| interchange -- Representation of dates and times | ||||
| RFC 3339: Date and Time on the Internet: Timestamps | ||||
| RFC 9557: Date and Time on the Internet: Timestamps | RFC 9557: Date and Time on the Internet: Timestamps | |||
| with Additional Information | with Additional Information | |||
| RFC 2579: Textual Conventions for SMIv2 | RFC 2579: Textual Conventions for SMIv2 | |||
| XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | |||
| Part 2: Datatypes"; | Part 2: Datatypes"; | |||
| } | } | |||
| typedef date { | typedef date { | |||
| type string { | type string { | |||
| pattern '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])' | pattern '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])' | |||
| skipping to change at line 690 ¶ | skipping to change at line 694 ¶ | |||
| The date type is compatible with the XML schema date | The date type is compatible with the XML schema date | |||
| type with the following notable exceptions: | type with the following notable exceptions: | |||
| (a) The date type does not allow negative years. | (a) The date type does not allow negative years. | |||
| (b) The time-offset Z indicates that the date value is | (b) The time-offset Z indicates that the date value is | |||
| reported in UTC and that the local time zone reference | reported in UTC and that the local time zone reference | |||
| point is unknown. The time-offset +00:00 indicates that | point is unknown. The time-offset +00:00 indicates that | |||
| the date value is reported in UTC and that the local | the date value is reported in UTC and that the local | |||
| time reference point is UTC (see Section 2 of RFC 9557). | time zone reference point is UTC (see Section 2 of | |||
| RFC 9557). | ||||
| The canonical format for date values with a known time | The canonical format for date values with a known time | |||
| zone uses a numeric time zone offset that is calculated using | zone uses a numeric time zone offset that is calculated using | |||
| the device's configured known offset to UTC time. A change of | the device's configured known offset to UTC time. A change of | |||
| the device's offset to UTC time will cause date values | the device's offset to UTC time will cause date values | |||
| to change accordingly. Such changes might happen periodically | to change accordingly. Such changes might happen periodically | |||
| in case a server follows automatically daylight saving time | if a server automatically follows daylight saving time | |||
| (DST) time zone offset changes. The canonical format for | (DST) time zone offset changes. The canonical format for | |||
| date values reported in UTC with an unknown local time zone | date values reported in UTC with an unknown local time zone | |||
| offset uses the time-offset Z."; | offset uses the time-offset Z."; | |||
| reference | reference | |||
| "RFC 3339: Date and Time on the Internet: Timestamps | "RFC 3339: Date and Time on the Internet: Timestamps | |||
| RFC 9557: Date and Time on the Internet: Timestamps | RFC 9557: Date and Time on the Internet: Timestamps | |||
| with Additional Information | with Additional Information | |||
| XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | |||
| Part 2: Datatypes"; | Part 2: Datatypes"; | |||
| } | } | |||
| skipping to change at line 721 ¶ | skipping to change at line 726 ¶ | |||
| pattern '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])'; | pattern '[0-9]{4}-(1[0-2]|0[1-9])-(0[1-9]|[1-2][0-9]|3[0-1])'; | |||
| } | } | |||
| description | description | |||
| "The date-no-zone type represents a date without the optional | "The date-no-zone type represents a date without the optional | |||
| time zone offset information."; | time zone offset information."; | |||
| } | } | |||
| typedef time { | typedef time { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?' | '(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)' | |||
| + '(\.[0-9]+)?' | ||||
| + '(Z|[\+\-]((1[0-3]|0[0-9]):([0-5][0-9])|14:00))?'; | + '(Z|[\+\-]((1[0-3]|0[0-9]):([0-5][0-9])|14:00))?'; | |||
| } | } | |||
| description | description | |||
| "The time type represents an instance of time of zero duration | "The time type represents an instance of time of zero duration | |||
| that recurs every day. It includes an optional time zone | that recurs every day. It includes an optional time zone | |||
| offset. The value of 60 for seconds is allowed only in the | offset. The value of 60 for seconds is allowed only in the | |||
| case of leap seconds. | case of leap seconds. | |||
| The time type is compatible with the XML schema time | The time type is compatible with the XML schema time | |||
| type with the following notable exception: | type with the following notable exception: | |||
| (a) The time-offset Z indicates that the time value is | (a) The time-offset Z indicates that the time value is | |||
| reported in UTC and that the local time zone reference | reported in UTC and that the local time zone reference | |||
| point is unknown. The time-offset +00:00 indicates that | point is unknown. The time-offset +00:00 indicates that | |||
| the time value is reported in UTC and that the local | the time value is reported in UTC and that the local | |||
| time reference point is UTC (see Section 2 of RFC 9557). | time zone reference point is UTC (see Section 2 of | |||
| RFC 9557). | ||||
| The canonical format for time values with a known time | The canonical format for time values with a known time | |||
| zone uses a numeric time zone offset that is calculated using | zone uses a numeric time zone offset that is calculated using | |||
| the device's configured known offset to UTC time. A change of | the device's configured known offset to UTC time. A change of | |||
| the device's offset to UTC time will cause time values | the device's offset to UTC time will cause time values | |||
| to change accordingly. Such changes might happen periodically | to change accordingly. Such changes might happen periodically | |||
| in case a server follows automatically daylight saving time | if a server automatically follows daylight saving time | |||
| (DST) time zone offset changes. The canonical format for | (DST) time zone offset changes. The canonical format for | |||
| time values reported in UTC with an unknown local time zone | time values reported in UTC with an unknown local time zone | |||
| offset uses the time-offset Z."; | offset uses the time-offset Z."; | |||
| reference | reference | |||
| "RFC 3339: Date and Time on the Internet: Timestamps | "RFC 3339: Date and Time on the Internet: Timestamps | |||
| RFC 9557: Date and Time on the Internet: Timestamps | RFC 9557: Date and Time on the Internet: Timestamps | |||
| with Additional Information | with Additional Information | |||
| XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | XSD-TYPES: XML Schema Definition Language (XSD) 1.1 | |||
| Part 2: Datatypes"; | Part 2: Datatypes"; | |||
| } | } | |||
| typedef time-no-zone { | typedef time-no-zone { | |||
| type time { | type time { | |||
| pattern | pattern | |||
| '(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?'; | '(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)' | |||
| + '(\.[0-9]+)?'; | ||||
| } | } | |||
| description | description | |||
| "The time-no-zone type represents a time without the optional | "The time-no-zone type represents a time without the optional | |||
| time zone offset information."; | time zone offset information."; | |||
| } | } | |||
| typedef hours32 { | typedef hours32 { | |||
| type int32; | type int32; | |||
| units "hours"; | units "hours"; | |||
| description | description | |||
| skipping to change at line 1003 ¶ | skipping to change at line 1011 ¶ | |||
| lowercase characters."; | lowercase characters."; | |||
| } | } | |||
| typedef uuid { | typedef uuid { | |||
| type string { | type string { | |||
| pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-' | pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-' | |||
| + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'; | + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'; | |||
| } | } | |||
| description | description | |||
| "A Universally Unique IDentifier in the string representation | "A Universally Unique IDentifier in the string representation | |||
| defined in RFC 4122. The canonical representation uses | defined in RFC 9562. The canonical representation uses | |||
| lowercase characters. | lowercase characters. | |||
| The following is an example of a UUID in string | The following is an example of a UUID in string | |||
| representation: | representation: | |||
| f81d4fae-7dec-11d0-a765-00a0c91e6bf6. | f81d4fae-7dec-11d0-a765-00a0c91e6bf6. | |||
| "; | "; | |||
| reference | reference | |||
| "RFC 4122: A Universally Unique IDentifier (UUID) URN | "RFC 9562: Universally Unique IDentifiers (UUIDs)"; | |||
| Namespace"; | ||||
| } | } | |||
| typedef dotted-quad { | typedef dotted-quad { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' | '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' | |||
| + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'; | + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'; | |||
| } | } | |||
| description | description | |||
| "An unsigned 32-bit number expressed in the dotted-quad | "An unsigned 32-bit number expressed in the dotted-quad | |||
| skipping to change at line 1063 ¶ | skipping to change at line 1070 ¶ | |||
| pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*'; | pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*'; | |||
| } | } | |||
| description | description | |||
| "A YANG identifier string as defined by the 'identifier' | "A YANG identifier string as defined by the 'identifier' | |||
| rule in Section 14 of RFC 7950. An identifier must | rule in Section 14 of RFC 7950. An identifier must | |||
| start with an alphabetic character or an underscore | start with an alphabetic character or an underscore | |||
| followed by an arbitrary sequence of alphabetic or | followed by an arbitrary sequence of alphabetic or | |||
| numeric characters, underscores, hyphens, or dots. | numeric characters, underscores, hyphens, or dots. | |||
| This definition conforms to YANG 1.1 defined in RFC | This definition conforms to YANG 1.1 defined in RFC | |||
| 7950. An earlier version of this definition excluded | 7950. In RFC 6991, this definition excluded | |||
| all identifiers starting with any possible combination | all identifiers starting with any possible combination | |||
| of the lowercase or uppercase character sequence 'xml', | of the lowercase or uppercase character sequence 'xml', | |||
| as required by YANG 1 defined in RFC 6020. If this type | as required by YANG 1 defined in RFC 6020. If this type | |||
| is used in a YANG 1 context, then this restriction still | is used in a YANG 1 context, then this restriction still | |||
| applies."; | applies."; | |||
| reference | reference | |||
| "RFC 7950: The YANG 1.1 Data Modeling Language | "RFC 7950: The YANG 1.1 Data Modeling Language | |||
| RFC 6020: YANG - A Data Modeling Language for the | RFC 6020: YANG - A Data Modeling Language for the | |||
| Network Configuration Protocol (NETCONF)"; | Network Configuration Protocol (NETCONF)"; | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 4. Internet Protocol Suite Types | 4. Internet Protocol Suite Types | |||
| The "ietf-inet-types" YANG module references [RFC0768], [RFC0791], | The "ietf-inet-types" YANG module references [RFC0768], [RFC0791], | |||
| [RFC0952], [RFC1034], [RFC1123], [RFC1930], [RFC2317], [RFC2474], | [RFC0952], [RFC1034], [RFC1123], [RFC1930], [RFC2317], [RFC2474], | |||
| [RFC2780], [RFC2782], [RFC3289], [RFC3305], [RFC3595], [RFC3927], | [RFC2780], [RFC2782], [RFC3289], [RFC3305], [RFC3595], [RFC3927], | |||
| [RFC3986], [RFC4001], [RFC4007], [RFC4271], [RFC4291], [RFC4340], | [RFC3986], [RFC4001], [RFC4007], [RFC4271], [RFC4291], [RFC4340], | |||
| [RFC4592], [RFC5017], [RFC5322], [RFC5890], [RFC5952], [RFC6793], | [RFC4592], [RFC5017], [RFC5322], [RFC5890], [RFC5952], [RFC6532], | |||
| [RFC8200], [RFC9260], [RFC9293], and [RFC9499]. | [RFC6793], [RFC8200], [RFC9260], [RFC9293], and [RFC9499]. | |||
| <CODE BEGINS> file "ietf-inet-types@2025-12-01.yang" | <CODE BEGINS> file "ietf-inet-types@2025-12-01.yang" | |||
| module ietf-inet-types { | module ietf-inet-types { | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types"; | namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types"; | |||
| prefix inet; | prefix inet; | |||
| organization | organization | |||
| "IETF Network Modeling (NETMOD) Working Group"; | "IETF Network Modeling (NETMOD) Working Group"; | |||
| contact | contact | |||
| "WG Web: <https://datatracker.ietf.org/wg/netmod/> | "WG Web: <https://datatracker.ietf.org/wg/netmod/> | |||
| WG List: <mailto:netmod@ietf.org> | WG List: <mailto:netmod@ietf.org> | |||
| Editor: Juergen Schoenwaelder | Editor: Jürgen Schönwälder | |||
| <mailto:jschoenwaelder@constructor.university>"; | <mailto:jschoenwaelder@constructor.university>"; | |||
| description | description | |||
| "This module contains a collection of generally useful derived | "This module contains a collection of generally useful derived | |||
| YANG data types for Internet addresses and related things. | YANG data types for Internet addresses and related things. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | 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. | |||
| skipping to change at line 1165 ¶ | skipping to change at line 1172 ¶ | |||
| } | } | |||
| /*** collection of types related to protocol fields ***/ | /*** collection of types related to protocol fields ***/ | |||
| typedef ip-version { | typedef ip-version { | |||
| type enumeration { | type enumeration { | |||
| enum unknown { | enum unknown { | |||
| value 0; | value 0; | |||
| description | description | |||
| "An unknown or unspecified version of the Internet | "An unknown or unspecified version of the Internet | |||
| protocol."; | Protocol."; | |||
| } | } | |||
| enum ipv4 { | enum ipv4 { | |||
| value 1; | value 1; | |||
| description | description | |||
| "The IPv4 protocol as defined in RFC 791."; | "The IPv4 protocol as defined in RFC 791."; | |||
| } | } | |||
| enum ipv6 { | enum ipv6 { | |||
| value 2; | value 2; | |||
| description | description | |||
| "The IPv6 protocol as defined in RFC 8200."; | "The IPv6 protocol as defined in RFC 8200."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This value represents the version of the IP protocol. | "This value represents the version of the Internet Protocol. | |||
| In the value set and its semantics, this type is equivalent | In the value set and its semantics, this type is equivalent | |||
| to the InetVersion textual convention of the SMIv2."; | to the InetVersion textual convention of the SMIv2."; | |||
| reference | reference | |||
| "RFC 791: Internet Protocol | "RFC 791: Internet Protocol | |||
| RFC 8200: Internet Protocol, Version 6 (IPv6) Specification | RFC 8200: Internet Protocol, Version 6 (IPv6) Specification | |||
| RFC 4001: Textual Conventions for Internet Network Addresses"; | RFC 4001: Textual Conventions for Internet Network Addresses"; | |||
| } | } | |||
| typedef dscp { | typedef dscp { | |||
| skipping to change at line 1254 ¶ | skipping to change at line 1261 ¶ | |||
| RFC 9293: Transmission Control Protocol (TCP) | RFC 9293: Transmission Control Protocol (TCP) | |||
| RFC 9260: Stream Control Transmission Protocol | RFC 9260: Stream Control Transmission Protocol | |||
| RFC 4340: Datagram Congestion Control Protocol (DCCP) | RFC 4340: Datagram Congestion Control Protocol (DCCP) | |||
| RFC 4001: Textual Conventions for Internet Network Addresses"; | RFC 4001: Textual Conventions for Internet Network Addresses"; | |||
| } | } | |||
| typedef protocol-number { | typedef protocol-number { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "The protocol-number type represents an 8-bit Internet | "The protocol-number type represents an 8-bit Internet | |||
| protocol number, carried in the 'protocol' field of the | Protocol number, carried in the 'protocol' field of the | |||
| IPv4 header or in the 'next header' field of the IPv6 | IPv4 header or in the 'next header' field of the IPv6 | |||
| header. | header. | |||
| Protocol numbers are assigned by IANA. The current list of | Protocol numbers are assigned by IANA. The current list of | |||
| all assignments is available from <https://www.iana.org/>."; | all assignments is available from <https://www.iana.org/>."; | |||
| reference | reference | |||
| "RFC 791: Internet Protocol | "RFC 791: Internet Protocol | |||
| RFC 8200: Internet Protocol, Version 6 (IPv6) Specification"; | RFC 8200: Internet Protocol, Version 6 (IPv6) Specification"; | |||
| } | } | |||
| skipping to change at line 1289 ¶ | skipping to change at line 1296 ¶ | |||
| typedef as-number { | typedef as-number { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "The as-number type represents autonomous system numbers | "The as-number type represents autonomous system numbers | |||
| that identify an Autonomous System (AS). An AS is a set | that identify an Autonomous System (AS). An AS is a set | |||
| of routers under a single technical administration, using | of routers under a single technical administration, using | |||
| an interior gateway protocol and common metrics to route | an interior gateway protocol and common metrics to route | |||
| packets within the AS, and using an exterior gateway | packets within the AS, and using an exterior gateway | |||
| protocol to route packets to other ASes. IANA maintains | protocol to route packets to other ASes. IANA maintains | |||
| the AS number space and has delegated large parts to the | the autonomous system number space and has delegated large | |||
| regional registries. | parts to the regional registries. | |||
| Autonomous system numbers were originally limited to 16 | Autonomous system numbers were originally limited to 16 | |||
| bits. BGP extensions have enlarged the autonomous system | bits. BGP extensions have enlarged the autonomous system | |||
| number space to 32 bits. This type therefore uses an uint32 | number space to 32 bits. This type therefore uses an uint32 | |||
| base type without a range restriction in order to support | base type without a range restriction in order to support | |||
| a larger autonomous system number space. | a larger autonomous system number space. | |||
| In the value set and its semantics, this type is equivalent | In the value set and its semantics, this type is equivalent | |||
| to the InetAutonomousSystemNumber textual convention of | to the InetAutonomousSystemNumber textual convention of | |||
| the SMIv2."; | the SMIv2."; | |||
| skipping to change at line 1603 ¶ | skipping to change at line 1610 ¶ | |||
| reference | reference | |||
| "RFC 5952: A Recommendation for IPv6 Address Text | "RFC 5952: A Recommendation for IPv6 Address Text | |||
| Representation"; | Representation"; | |||
| } | } | |||
| /*** collection of domain name and URI types ***/ | /*** collection of domain name and URI types ***/ | |||
| typedef domain-name { | typedef domain-name { | |||
| type string { | type string { | |||
| length "1..253"; | length "1..253"; | |||
| pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*' | pattern | |||
| + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)' | '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*' | |||
| + '|\.'; | + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)' | |||
| + '|\.'; | ||||
| } | } | |||
| description | description | |||
| "The domain-name type represents a DNS domain name. The | "The domain-name type represents a DNS domain name. The | |||
| name SHOULD be fully qualified whenever possible. This | name SHOULD be fully qualified whenever possible. This | |||
| type does not support wildcards (see RFC 4592) or | type does not support wildcards (see RFC 4592) or | |||
| classless in-addr.arpa delegations (see RFC 2317). | classless in-addr.arpa delegations (see RFC 2317). | |||
| Internet domain names are only loosely specified. Section | Internet domain names are only loosely specified. Section | |||
| 3.5 of RFC 1034 recommends a syntax (modified in Section | 3.5 of RFC 1034 recommends a syntax (modified in Section | |||
| 2.1 of RFC 1123). The pattern above is intended to allow | 2.1 of RFC 1123). The pattern above is intended to allow | |||
| for current practice in domain name use and some possible | for current practice in domain name use and some possible | |||
| future expansion. Note that Internet host names have a | future expansion. Note that Internet host names have a | |||
| stricter syntax (described in RFC 952) than the DNS | stricter syntax (described in RFC 952) than the DNS | |||
| recommendations in RFCs 1034 and 1123. Schema nodes | recommendations in RFCs 1034 and 1123. Schema nodes | |||
| representing host names should use the host-name type | representing host names should use the host-name type | |||
| instead of the domain-type. | instead of the domain-type. | |||
| The encoding of DNS names in the DNS protocol is limited | The encoding of DNS names in the DNS protocol is limited | |||
| to 255 characters. Since the encoding consists of labels | to 255 characters. Since the encoding consists of labels | |||
| prefixed by a length bytes and there is a trailing NULL | prefixed by a length byte and there is a trailing NUL | |||
| byte, only 253 characters can appear in the textual dotted | byte, only 253 characters can appear in the textual dotted | |||
| notation. | notation. | |||
| The description clause of schema nodes using the domain-name | The description clause of schema nodes using the domain-name | |||
| type MUST describe when and how these names are resolved to | type MUST describe when and how these names are resolved to | |||
| IP addresses. Note that the resolution of a domain-name value | IP addresses. Note that the resolution of a domain-name value | |||
| may require to query multiple DNS records (e.g., A for IPv4 | may require to query multiple DNS records (e.g., A for IPv4 | |||
| and AAAA for IPv6). The order of the resolution process and | and AAAA for IPv6). The order of the resolution process and | |||
| which DNS record takes precedence can either be defined | which DNS record takes precedence can either be defined | |||
| explicitly or depend on the configuration of the | explicitly or depend on the configuration of the | |||
| resolver. | resolver. | |||
| Domain-name values use the US-ASCII encoding. Their canonical | Domain-name values use the ASCII encoding. Their canonical | |||
| format uses lowercase US-ASCII characters. Internationalized | format uses lowercase ASCII characters. Internationalized | |||
| domain names MUST be A-labels as per RFC 5890."; | domain names MUST be A-labels as per RFC 5890."; | |||
| reference | reference | |||
| "RFC 952: DoD Internet Host Table Specification | "RFC 952: DoD Internet Host Table Specification | |||
| RFC 1034: Domain Names - Concepts and Facilities | RFC 1034: Domain Names - Concepts and Facilities | |||
| RFC 1123: Requirements for Internet Hosts -- Application | RFC 1123: Requirements for Internet Hosts -- Application | |||
| and Support | and Support | |||
| RFC 2317: Classless IN-ADDR.ARPA delegation | RFC 2317: Classless IN-ADDR.ARPA delegation | |||
| RFC 2782: A DNS RR for specifying the location of services | RFC 2782: A DNS RR for specifying the location of services | |||
| (DNS SRV) | (DNS SRV) | |||
| RFC 4592: The Role of Wildcards in the Domain Name System | RFC 4592: The Role of Wildcards in the Domain Name System | |||
| skipping to change at line 1661 ¶ | skipping to change at line 1669 ¶ | |||
| (IDNA): Definitions and Document Framework | (IDNA): Definitions and Document Framework | |||
| RFC 9499: DNS Terminology"; | RFC 9499: DNS Terminology"; | |||
| } | } | |||
| typedef host-name { | typedef host-name { | |||
| type domain-name { | type domain-name { | |||
| length "2..max"; | length "2..max"; | |||
| pattern '[a-zA-Z0-9\-\.]+'; | pattern '[a-zA-Z0-9\-\.]+'; | |||
| } | } | |||
| description | description | |||
| "The host-name type represents (fully qualified) host names. | "The host-name type represents fully qualified host names. | |||
| Host names must be at least two characters long (see RFC 952), | Host names must be at least two characters long (see RFC 952), | |||
| and they are restricted to labels consisting of letters, | and they are restricted to labels consisting of letters, | |||
| digits, and hyphens separated by dots (see RFCs 1123 and | digits, and hyphens separated by dots (see RFCs 1123 and | |||
| 952)."; | 952)."; | |||
| reference | reference | |||
| "RFC 952: DoD Internet Host Table Specification | "RFC 952: DoD Internet Host Table Specification | |||
| RFC 1123: Requirements for Internet Hosts -- Application | RFC 1123: Requirements for Internet Hosts -- Application | |||
| and Support"; | and Support"; | |||
| } | } | |||
| typedef host { | typedef host { | |||
| type union { | type union { | |||
| type ip-address; | type ip-address; | |||
| type host-name; | type host-name; | |||
| } | } | |||
| description | description | |||
| "The host type represents either an IP address or a (fully | "The host type represents either an IP address or a fully | |||
| qualified) host name."; | qualified host name."; | |||
| } | } | |||
| typedef uri { | typedef uri { | |||
| type string { | type string { | |||
| pattern '[a-z][a-z0-9+.-]*:.*'; | pattern '[a-z][a-z0-9+.-]*:.*'; | |||
| } | } | |||
| description | description | |||
| "The uri type represents a Uniform Resource Identifier | "The uri type represents a Uniform Resource Identifier | |||
| (URI) as defined by the rule 'URI' in RFC 3986. | (URI) as defined by the rule 'URI' in RFC 3986. | |||
| Objects using the uri type MUST be in US-ASCII encoding | Objects using the uri type MUST be in ASCII encoding | |||
| and MUST be normalized as described in Sections 6.2.1, | and MUST be normalized as described in Sections 6.2.1, | |||
| 6.2.2.1, and 6.2.2.2 of RFC 3986. Characters that can be | 6.2.2.1, and 6.2.2.2 of RFC 3986. Characters that can be | |||
| represented without using percent-encoding are represented | represented without using percent-encoding are represented | |||
| as characters (without percent-encoding), and all | as characters (without percent-encoding), and all | |||
| case-insensitive characters are set to lowercase except | case-insensitive characters are set to lowercase except | |||
| for hexadecimal digits within a percent-encoded triplet, | for hexadecimal digits within a percent-encoded triplet, | |||
| which are normalized to uppercase as described in | which are normalized to uppercase as described in | |||
| Section 6.2.2.1 of RFC 3986. | Section 6.2.2.1 of RFC 3986. | |||
| The purpose of this normalization is to help provide | The purpose of this normalization is to help provide | |||
| skipping to change at line 1738 ¶ | skipping to change at line 1746 ¶ | |||
| } | } | |||
| description | description | |||
| "The email-address type represents an internationalized | "The email-address type represents an internationalized | |||
| email address. | email address. | |||
| The email address format is defined by the addr-spec | The email address format is defined by the addr-spec | |||
| ABNF rule in Section 3.4.1 of RFC 5322. This format has | ABNF rule in Section 3.4.1 of RFC 5322. This format has | |||
| been extended by RFC 6532 to support internationalized | been extended by RFC 6532 to support internationalized | |||
| email addresses. Implementations MUST support the | email addresses. Implementations MUST support the | |||
| internationalization extensions of RFC 6532. Support | internationalization extensions of RFC 6532. Support | |||
| of the obsolete obs-local-part, obs-domain, and | for the obsolete obs-local-part, obs-domain, and | |||
| obs-qtext parts of RFC 5322 is not required. | obs-qtext in RFC 5322 is not required. | |||
| The domain part may use both A-labels and U-labels | The domain part may use both A-labels and U-labels | |||
| (see RFC 5890). The canonical format of the domain part | (see RFC 5890). The canonical format of the domain part | |||
| uses lowercase characters and U-labels (RFC 5890) where | uses lowercase characters and U-labels (RFC 5890) where | |||
| applicable."; | applicable."; | |||
| reference | reference | |||
| "RFC 5322: Internet Message Format | "RFC 5322: Internet Message Format | |||
| RFC 5890: Internationalized Domain Names in Applications | RFC 5890: Internationalized Domain Names in Applications | |||
| (IDNA): Definitions and Document Framework | (IDNA): Definitions and Document Framework | |||
| RFC 6531: SMTP Extension for Internationalized Email"; | RFC 6532: Internationalized Email Headers"; | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 5. IANA Considerations | 5. IANA Considerations | |||
| This document reuses the URIs for "ietf-yang-types" and "ietf-inet- | This document reuses the URIs for "ietf-yang-types" and "ietf-inet- | |||
| types" in the "IETF XML Registry" [RFC3688]. | types" in the "IETF XML Registry" [RFC3688]. | |||
| Per this document, IANA has updated the "YANG Module Names" registry | Per this document, IANA has updated the "YANG Module Names" registry | |||
| skipping to change at line 1809 ¶ | skipping to change at line 1817 ¶ | |||
| [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
| Resource Identifier (URI): Generic Syntax", STD 66, | Resource Identifier (URI): Generic Syntax", STD 66, | |||
| RFC 3986, DOI 10.17487/RFC3986, January 2005, | RFC 3986, DOI 10.17487/RFC3986, January 2005, | |||
| <https://www.rfc-editor.org/info/rfc3986>. | <https://www.rfc-editor.org/info/rfc3986>. | |||
| [RFC4007] Deering, S., Haberman, B., Jinmei, T., Nordmark, E., and | [RFC4007] Deering, S., Haberman, B., Jinmei, T., Nordmark, E., and | |||
| B. Zill, "IPv6 Scoped Address Architecture", RFC 4007, | B. Zill, "IPv6 Scoped Address Architecture", RFC 4007, | |||
| DOI 10.17487/RFC4007, March 2005, | DOI 10.17487/RFC4007, March 2005, | |||
| <https://www.rfc-editor.org/info/rfc4007>. | <https://www.rfc-editor.org/info/rfc4007>. | |||
| [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally | ||||
| Unique IDentifier (UUID) URN Namespace", RFC 4122, | ||||
| DOI 10.17487/RFC4122, July 2005, | ||||
| <https://www.rfc-editor.org/info/rfc4122>. | ||||
| [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing | [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing | |||
| Architecture", RFC 4291, DOI 10.17487/RFC4291, February | Architecture", RFC 4291, DOI 10.17487/RFC4291, February | |||
| 2006, <https://www.rfc-editor.org/info/rfc4291>. | 2006, <https://www.rfc-editor.org/info/rfc4291>. | |||
| [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
| the Network Configuration Protocol (NETCONF)", RFC 6020, | the Network Configuration Protocol (NETCONF)", RFC 6020, | |||
| DOI 10.17487/RFC6020, October 2010, | DOI 10.17487/RFC6020, October 2010, | |||
| <https://www.rfc-editor.org/info/rfc6020>. | <https://www.rfc-editor.org/info/rfc6020>. | |||
| [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | |||
| RFC 7950, DOI 10.17487/RFC7950, August 2016, | RFC 7950, DOI 10.17487/RFC7950, August 2016, | |||
| <https://www.rfc-editor.org/info/rfc7950>. | <https://www.rfc-editor.org/info/rfc7950>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, | ||||
| "Common YANG Data Types for the Routing Area", RFC 8294, | ||||
| DOI 10.17487/RFC8294, December 2017, | ||||
| <https://www.rfc-editor.org/info/rfc8294>. | ||||
| [RFC9499] Hoffman, P. and K. Fujiwara, "DNS Terminology", BCP 219, | [RFC9499] Hoffman, P. and K. Fujiwara, "DNS Terminology", BCP 219, | |||
| RFC 9499, DOI 10.17487/RFC9499, March 2024, | RFC 9499, DOI 10.17487/RFC9499, March 2024, | |||
| <https://www.rfc-editor.org/info/rfc9499>. | <https://www.rfc-editor.org/info/rfc9499>. | |||
| [RFC9557] Sharma, U. and C. Bormann, "Date and Time on the Internet: | [RFC9557] Sharma, U. and C. Bormann, "Date and Time on the Internet: | |||
| Timestamps with Additional Information", RFC 9557, | Timestamps with Additional Information", RFC 9557, | |||
| DOI 10.17487/RFC9557, April 2024, | DOI 10.17487/RFC9557, April 2024, | |||
| <https://www.rfc-editor.org/info/rfc9557>. | <https://www.rfc-editor.org/info/rfc9557>. | |||
| [RFC9562] Davis, K., Peabody, B., and P. Leach, "Universally Unique | ||||
| IDentifiers (UUIDs)", RFC 9562, DOI 10.17487/RFC9562, May | ||||
| 2024, <https://www.rfc-editor.org/info/rfc9562>. | ||||
| [XPATH] Clark, J., Ed. and S. DeRose, Ed., "XML Path Language | [XPATH] Clark, J., Ed. and S. DeRose, Ed., "XML Path Language | |||
| (XPath) Version 1.0", W3C Recommendation, 16 November | (XPath) Version 1.0", W3C Recommendation, 16 November | |||
| 1999, <http://www.w3.org/TR/xpath-10>. | 1999, <http://www.w3.org/TR/xpath-10>. | |||
| [XSD-TYPES] | [XSD-TYPES] | |||
| Peterson, D., Ed., Gao, S., Ed., Malhotra, A., Ed., | Peterson, D., Ed., Gao, S., Ed., Malhotra, A., Ed., | |||
| Sperberg-McQueen, C., Ed., and H. S. Thompson, Ed., "W3C | Sperberg-McQueen, C., Ed., and H. S. Thompson, Ed., "W3C | |||
| XML Schema Definition Language (XSD) 1.1 Part 2: | XML Schema Definition Language (XSD) 1.1 Part 2: | |||
| Datatypes", W3C Recommendation, 5 April 2012, | Datatypes", W3C Recommendation, 5 April 2012, | |||
| <https://www.w3.org/TR/xmlschema11-2/>. | <https://www.w3.org/TR/xmlschema11-2/>. | |||
| skipping to change at line 2002 ¶ | skipping to change at line 2004 ¶ | |||
| [RFC6021] Schoenwaelder, J., Ed., "Common YANG Data Types", | [RFC6021] Schoenwaelder, J., Ed., "Common YANG Data Types", | |||
| RFC 6021, DOI 10.17487/RFC6021, October 2010, | RFC 6021, DOI 10.17487/RFC6021, October 2010, | |||
| <https://www.rfc-editor.org/info/rfc6021>. | <https://www.rfc-editor.org/info/rfc6021>. | |||
| [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | |||
| and A. Bierman, Ed., "Network Configuration Protocol | and A. Bierman, Ed., "Network Configuration Protocol | |||
| (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | |||
| <https://www.rfc-editor.org/info/rfc6241>. | <https://www.rfc-editor.org/info/rfc6241>. | |||
| [RFC6532] Yang, A., Steele, S., and N. Freed, "Internationalized | ||||
| Email Headers", RFC 6532, DOI 10.17487/RFC6532, February | ||||
| 2012, <https://www.rfc-editor.org/info/rfc6532>. | ||||
| [RFC6793] Vohra, Q. and E. Chen, "BGP Support for Four-Octet | [RFC6793] Vohra, Q. and E. Chen, "BGP Support for Four-Octet | |||
| Autonomous System (AS) Number Space", RFC 6793, | Autonomous System (AS) Number Space", RFC 6793, | |||
| DOI 10.17487/RFC6793, December 2012, | DOI 10.17487/RFC6793, December 2012, | |||
| <https://www.rfc-editor.org/info/rfc6793>. | <https://www.rfc-editor.org/info/rfc6793>. | |||
| [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | |||
| RFC 6991, DOI 10.17487/RFC6991, July 2013, | RFC 6991, DOI 10.17487/RFC6991, July 2013, | |||
| <https://www.rfc-editor.org/info/rfc6991>. | <https://www.rfc-editor.org/info/rfc6991>. | |||
| [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 | [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 | |||
| skipping to change at line 2024 ¶ | skipping to change at line 2030 ¶ | |||
| <https://www.rfc-editor.org/info/rfc8200>. | <https://www.rfc-editor.org/info/rfc8200>. | |||
| [RFC9260] Stewart, R., Tüxen, M., and K. Nielsen, "Stream Control | [RFC9260] Stewart, R., Tüxen, M., and K. Nielsen, "Stream Control | |||
| Transmission Protocol", RFC 9260, DOI 10.17487/RFC9260, | Transmission Protocol", RFC 9260, DOI 10.17487/RFC9260, | |||
| June 2022, <https://www.rfc-editor.org/info/rfc9260>. | June 2022, <https://www.rfc-editor.org/info/rfc9260>. | |||
| [RFC9293] Eddy, W., Ed., "Transmission Control Protocol (TCP)", | [RFC9293] Eddy, W., Ed., "Transmission Control Protocol (TCP)", | |||
| STD 7, RFC 9293, DOI 10.17487/RFC9293, August 2022, | STD 7, RFC 9293, DOI 10.17487/RFC9293, August 2022, | |||
| <https://www.rfc-editor.org/info/rfc9293>. | <https://www.rfc-editor.org/info/rfc9293>. | |||
| [ISO-8601] ISO/IEC, "Data elements and interchange formats -- | ||||
| Information interchange -- Representation of dates and | ||||
| times", ISO/IEC 8601:2000, December 2008, | ||||
| <https://www.iso.org/standard/26780.html>. | ||||
| [ISO-9834-1] | [ISO-9834-1] | |||
| ISO/IEC, "Information technology -- Open Systems | ISO/IEC, "Information technology - Procedures for the | |||
| Interconnection -- Procedures for the operation of OSI | operation of object identifier registration authorities - | |||
| Registration Authorities: General procedures and top arcs | Part 1: General procedures and top arcs of the | |||
| of the International Object Identifier tree", ISO/ | international object identifier tree", ISO/ | |||
| IEC 9834-1:2008, 2008, | IEC 9834-1:2012, 2012, | |||
| <https://www.iso.org/standard/51424.html>. | <https://www.iso.org/standard/58055.html>. | |||
| [IEEE-802-2001] | [IEEE-802-2024] | |||
| IEEE, "IEEE Standard for Local and Metropolitan Area | IEEE, "IEEE Standard for Local and Metropolitan Area | |||
| Networks: Overview and Architecture", IEEE Std 802-2001, | Networks: Overview and Architecture", IEEE Std 802-2024, | |||
| DOI 10.1109/IEEESTD.2002.93395, February 2002, | DOI 10.1109/IEEESTD.2025.10935844, March 2025, | |||
| <https://doi.org/10.1109/IEEESTD.2002.93395>. | <https://doi.org/10.1109/IEEESTD.2025.10935844>. | |||
| [Err4076] RFC Errata, Erratum ID 4076, RFC 6991, | [Err4076] RFC Errata, Erratum ID 4076, RFC 6991, | |||
| <https://www.rfc-editor.org/errata/eid4076>. | <https://www.rfc-editor.org/errata/eid4076>. | |||
| [Err5105] RFC Errata, Erratum ID 5105, RFC 6991, | [Err5105] RFC Errata, Erratum ID 5105, RFC 6991, | |||
| <https://www.rfc-editor.org/errata/eid5105>. | <https://www.rfc-editor.org/errata/eid5105>. | |||
| Acknowledgments | Acknowledgments | |||
| The following people contributed significantly to the original | The following people contributed significantly to the original | |||
| version of this document, which was published as [RFC6021]: Andy | version of this document, which was published as [RFC6021]: Andy | |||
| Bierman, Martin Björklund, Balazs Lengyel, David Partain, and Phil | Bierman, Martin Björklund, Balazs Lengyel, David Partain, and Phil | |||
| Shafer. | Shafer. | |||
| Helpful comments on various versions of this document were provided | Helpful comments on various draft versions of this document were | |||
| by the following individuals: Andy Bierman, Martin Björklund, Benoît | provided by the following individuals: Andy Bierman, Martin | |||
| Claise, Joel M. Halpern, Ladislav Lhotka, Lars-Johan Liman, and Dan | Björklund, Benoît Claise, Joel M. Halpern, Ladislav Lhotka, Lars- | |||
| Romascanu. | Johan Liman, and Dan Romascanu. | |||
| Author's Address | Author's Address | |||
| Jürgen Schönwälder (editor) | Jürgen Schönwälder (editor) | |||
| Constructor University | Constructor University | |||
| Email: jschoenwaelder@constructor.university | Email: jschoenwaelder@constructor.university | |||
| End of changes. 48 change blocks. | ||||
| 215 lines changed or deleted | 226 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||