| rfc9046.original.xml | rfc9046.xml | |||
|---|---|---|---|---|
| <?xml version='1.0' encoding='utf-8'?> | <?xml version="1.0" encoding="UTF-8"?> | |||
| <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> | ||||
| <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.23 --> | ||||
| <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
| <?rfc strict="yes"?> | ||||
| <?rfc toc="yes"?> | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft | |||
| <?rfc tocdepth="4"?> | -ietf-babel-information-model-14" number="9046" obsoletes="" updates="" submissi | |||
| <?rfc symrefs="yes"?> | onType="IETF" category="info" consensus="true" xml:lang="en" tocInclude="true" t | |||
| <?rfc sortrefs="yes"?> | ocDepth="4" symRefs="true" sortRefs="true" version="3"> | |||
| <?rfc compact="yes"?> | ||||
| <?rfc subcompact="no"?> | ||||
| <rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft | ||||
| -ietf-babel-information-model-14" category="info" obsoletes="" updates="" submis | ||||
| sionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sort | ||||
| Refs="true" version="3"> | ||||
| <!-- xml2rfc v2v3 conversion 3.5.0 --> | <!-- xml2rfc v2v3 conversion 3.5.0 --> | |||
| <front> | <front> | |||
| <title>Babel Information Model</title> | <title>Babel Information Model</title> | |||
| <seriesInfo name="Internet-Draft" value="draft-ietf-babel-information-model- | <seriesInfo name="RFC" value="9046"/> | |||
| 14"/> | <author initials="B." surname="Stark" fullname="Barbara Stark"> | |||
| <author initials="B.H." surname="Stark" fullname="Barbara Stark"> | ||||
| <organization>AT&T</organization> | <organization>AT&T</organization> | |||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street/> | <street/> | |||
| <city>Atlanta, GA</city> | <city></city> | |||
| <region/> | <region>TX</region> | |||
| <code/> | <code/> | |||
| <country>US</country> | <country>United States of America</country> | |||
| </postal> | </postal> | |||
| <phone/> | <phone/> | |||
| <email>barbara.stark@att.com</email> | <email>barbara.stark@att.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author initials="M.J." surname="Jethanandani" fullname="Mahesh Jethanandani | <author initials="M." surname="Jethanandani" fullname="Mahesh Jethanandani"> | |||
| "> | <organization>Kloud Services</organization> | |||
| <organization>VMware</organization> | ||||
| <address> | <address> | |||
| <postal> | <postal> | |||
| <street/> | <street/> | |||
| <city/> | <city/> | |||
| <region>California</region> | <region>CA</region> | |||
| <code/> | <code/> | |||
| <country>US</country> | <country>United States of America</country> | |||
| </postal> | </postal> | |||
| <phone/> | <phone/> | |||
| <email>mjethanandani@gmail.com</email> | <email>mjethanandani@gmail.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <date year="2021"/> | <date year="2021" month="June" /> | |||
| <area>Routing</area> | <area>Routing</area> | |||
| <workgroup>Babel routing protocol</workgroup> | <workgroup>Babel routing protocol</workgroup> | |||
| <keyword>Babel</keyword> | <keyword>Babel</keyword> | |||
| <abstract> | <abstract> | |||
| <t>This Babel Information Model provides structured data elements | <t>The Babel information model provides structured data elements | |||
| for a Babel implementation reporting its current state and may | for a Babel implementation reporting its current state and may | |||
| allow limited configuration of some such data elements. | allow limited configuration of some such data elements. | |||
| This information model can be used as a basis for creating data | This information model can be used as a basis for creating data | |||
| models under various data modeling regimes. This information | models under various data modeling regimes. This information | |||
| model only includes parameters and parameter values useful for | model only includes parameters and parameter values useful for | |||
| managing Babel over IPv6.</t> | managing Babel over IPv6.</t> | |||
| </abstract> | </abstract> | |||
| </front> | </front> | |||
| <middle> | <middle> | |||
| <section anchor="introduction" numbered="true" toc="default"> | <section anchor="introduction" numbered="true" toc="default"> | |||
| <name>Introduction</name> | <name>Introduction</name> | |||
| <t>Babel is a loop-avoiding distance-vector routing protocol defined in | <t>Babel is a loop-avoiding, distance-vector routing protocol defined in | |||
| <xref target="RFC8966" format="default"/>. <xref target="RFC8967" format="defaul t"/> defines a security | <xref target="RFC8966" format="default"/>. <xref target="RFC8967" format="defaul t"/> defines a security | |||
| mechanism that allows Babel packets to be cryptographically | mechanism that allows Babel packets to be cryptographically | |||
| authenticated, and <xref target="RFC8968" format="default"/> defines a security mechanism | authenticated, and <xref target="RFC8968" format="default"/> defines a security mechanism | |||
| that allows Babel packets to be both authenticated and encrypted. | that allows Babel packets to be both authenticated and encrypted. | |||
| This document describes an information model for Babel (including implementation s | This document describes an information model for Babel (including implementation s | |||
| using one or both of these security mechanisms) that can be used to create manag ement | using one or both of these security mechanisms) that can be used to create manag ement | |||
| protocol data models (such as a NETCONF <xref target="RFC6241" format="default"/ > YANG <xref target="RFC7950" format="default"/> data model).</t> | protocol data models (such as a NETCONF <xref target="RFC6241" format="default"/ > YANG <xref target="RFC7950" format="default"/> data model).</t> | |||
| <t>Due to the simplicity of the Babel protocol, most of the information mo del | <t>Due to the simplicity of the Babel protocol, most of the information mo del | |||
| is focused on reporting Babel protocol operational state, and very little of | is focused on reporting the Babel protocol operational state, and very little of | |||
| that is considered mandatory to implement for an implementation claiming | that is considered mandatory to implement for an implementation claiming | |||
| compliance with this information model. Some parameters may be configurable. | compliance with this information model. Some parameters may be configurable. | |||
| However, it is up to the Babel implementation whether to allow any of these | However, it is up to the Babel implementation whether to allow any of these | |||
| to be configured within its implementation. Where the implementation does | to be configured within its implementation. Where the implementation does | |||
| not allow configuration of these parameters, it MAY still choose to expose | not allow configuration of these parameters, it <bcp14>MAY</bcp14> still choose to expose | |||
| them as read-only.</t> | them as read-only.</t> | |||
| <t>The Information Model is presented using a hierarchical structure. This | <t>The information model is presented using a hierarchical structure. This | |||
| does | does | |||
| not preclude a data model based on this Information Model from using a referenti | not preclude a data model based on this information model from using a referenti | |||
| al | al | |||
| or other structure.</t> | or other structure.</t> | |||
| <t>This information model only includes parameters and parameter values | <t>This information model only includes parameters and parameter values | |||
| useful for managing Babel over IPv6. This model has no parameters | useful for managing Babel over IPv6. This model has no parameters | |||
| or values specific to operating Babel over IPv4, even though | or values specific to operating Babel over IPv4, even though | |||
| <xref target="RFC8966" format="default"/> does define a multicast group for | <xref target="RFC8966" format="default"/> does define a multicast group for | |||
| sending and listening to multicast announcements on IPv4. | sending and listening to multicast announcements on IPv4. | |||
| There is less likelihood of breakage due to inconsistent | There is less likelihood of breakage due to inconsistent | |||
| configuration and increased implementation simplicity if | configuration and increased implementation simplicity if | |||
| Babel is operated always and only over IPv6. Running Babel | Babel is operated always and only over IPv6. Running Babel | |||
| over IPv6 requires IPv6 at the link layer and does not need | over IPv6 requires IPv6 at the link layer and does not need | |||
| advertised prefixes, router advertisements or DHCPv6 to be | advertised prefixes, router advertisements, or DHCPv6 to be | |||
| present in the network. Link-local IPv6 is widely supported | present in the network. Link-local IPv6 is widely supported | |||
| among devices where Babel is expected to be used. Note that | among devices where Babel is expected to be used. Note that | |||
| Babel over IPv6 can be used for configuration of both IPv4 | Babel over IPv6 can be used for configuration of both IPv4 | |||
| and IPv6 routes.</t> | and IPv6 routes.</t> | |||
| <section anchor="requirements-language" numbered="true" toc="default"> | <section anchor="requirements-language" numbered="true" toc="default"> | |||
| <name>Requirements Language</name> | <name>Requirements Language</name> | |||
| <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL | <t> | |||
| NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU | |||
| "MAY", and "OPTIONAL" in this document are to be interpreted as | IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | |||
| described in BCP014 <xref target="RFC2119" format="default"/> <xref target="RFC8 | NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14> | |||
| 174" format="default"/> when, and only when, they | RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
| appear in all capitals, as shown here.</t> | "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | |||
| be interpreted as | ||||
| described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| </t> | ||||
| </section> | </section> | |||
| <section anchor="notation" numbered="true" toc="default"> | <section anchor="notation" numbered="true" toc="default"> | |||
| <name>Notation</name> | <name>Notation</name> | |||
| <t>This document uses a programming language-like notation to define the | ||||
| properties | <t>This document uses a programming-language-like notation to define the | |||
| properties | ||||
| of the objects of the information model. An optional property is enclosed | of the objects of the information model. An optional property is enclosed | |||
| by square brackets, [ ], and a list property is indicated by two numbers | by square brackets, [ ], and a list property is indicated by two numbers | |||
| in angle brackets, <m..n>, where m indicates the minimal number | in angle brackets, <m..n>, where m indicates the minimal number | |||
| of list elements, | of list elements, | |||
| and n indicates the maximum number of list elements. The symbol * for n | and n indicates the maximum number of list elements. The symbol "*" for n | |||
| means there are no defined limits on the number of list elements. Each parameter | means there are no defined limits on the number of list elements. Each parameter | |||
| and object includes an indication of "ro" or "rw". "ro" means the parameter | and object includes an indication of "ro" or "rw". "ro" means the parameter | |||
| or object is read-only. "rw" means it is read-write. For an object, read-write | or object is read-only. "rw" means it is read-write. For an object, read-write | |||
| means instances of the object can be created or deleted. | means instances of the object can be created or deleted. | |||
| If an implementation is allowed to choose | If an implementation is allowed to choose | |||
| to implement a "rw" parameter as read-only, this is noted in the parameter | to implement a "rw" parameter as read-only, this is noted in the parameter | |||
| description.</t> | description.</t> | |||
| <t>The object definitions use base types that are defined as follows:</t > | <t>The object definitions use base types that are defined as follows:</t > | |||
| <dl indent="12"> | <dl indent="14"> | |||
| <dt> | <dt> | |||
| binary </dt> | binary: </dt> | |||
| <dd> | <dd> | |||
| <t>A binary string (sequence of octets).</t> | <t>A binary string (sequence of octets).</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| boolean </dt> | boolean: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing a Boolean (true or false) value.</t> | <t>A type representing a Boolean (true or false) value.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| datetime </dt> | datetime: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing a date and time using the Gregorian calendar. The datetime | <t>A type representing a date and time using the Gregorian calendar. The datetime | |||
| format MUST conform to RFC 3339 <xref target="RFC3339" format="default"/> Sectio n 5.6.</t> | format <bcp14>MUST</bcp14> conform to <xref target="RFC3339" sectionFormat="comm a" section="5.6"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| ip-address </dt> | ip-address: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing an IP address. This type supports both IPv4 a nd IPv6 | <t>A type representing an IP address. This type supports both IPv4 a nd IPv6 | |||
| addresses.</t> | addresses.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| operation </dt> | operation: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing a remote procedure call or other action that can be used | <t>A type representing a remote procedure call or other action that can be used | |||
| to manipulate data elements or system behaviors.</t> | to manipulate data elements or system behaviors.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| reference </dt> | reference: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing a reference to another information or data mo del element | <t>A type representing a reference to another information or data mo del element | |||
| or to some other device resource.</t> | or to some other device resource.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| string </dt> | string: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing a human-readable string consisting of a (poss ibly restricted) | <t>A type representing a human-readable string consisting of a (poss ibly restricted) | |||
| subset of Unicode and ISO/IEC 10646 <xref target="ISO.10646" format="default"/> characters.</t> | subset of Unicode and ISO/IEC 10646 <xref target="ISO.10646" format="default"/> characters.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| uint </dt> | uint: </dt> | |||
| <dd> | <dd> | |||
| <t>A type representing an unsigned integer number. This information | <t>A type representing an unsigned integer number. This information | |||
| model does not define a precision.</t> | model does not define a precision.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="overview" numbered="true" toc="default"> | <section anchor="overview" numbered="true" toc="default"> | |||
| <name>Overview</name> | <name>Overview</name> | |||
| <t>The Information Model is hierarchically structured as follows:</t> | <t>The information model is hierarchically structured as follows:</t> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| +-- babel-information | +-- babel-information | |||
| +-- babel-implementation-version | +-- babel-implementation-version | |||
| +-- babel-enable | +-- babel-enable | |||
| +-- router-id | +-- router-id | |||
| +-- self-seqno | +-- self-seqno | |||
| +-- babel-metric-comp-algorithms | +-- babel-metric-comp-algorithms | |||
| +-- babel-security-supported | +-- babel-security-supported | |||
| +-- babel-mac-algorithms | +-- babel-mac-algorithms | |||
| +-- babel-dtls-cert-types | +-- babel-dtls-cert-types | |||
| +-- babel-stats-enable | +-- babel-stats-enable | |||
| skipping to change at line 249 ¶ | skipping to change at line 246 ¶ | |||
| | +-- babel-mac-key-value | | +-- babel-mac-key-value | |||
| | +-- babel-mac-key-algorithm | | +-- babel-mac-key-algorithm | |||
| | +-- babel-mac-key-test | | +-- babel-mac-key-test | |||
| +-- babel-dtls-cert-sets | +-- babel-dtls-cert-sets | |||
| +-- babel-dtls-default-apply | +-- babel-dtls-default-apply | |||
| +-- babel-dtls-certs | +-- babel-dtls-certs | |||
| +-- babel-cert-name | +-- babel-cert-name | |||
| +-- babel-cert-value | +-- babel-cert-value | |||
| +-- babel-cert-type | +-- babel-cert-type | |||
| +-- babel-cert-private-key | +-- babel-cert-private-key | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <t>Most parameters are read-only. Following is a descriptive list of the p | <t>Most parameters are read-only. The following is a descriptive list of t | |||
| arameters that are not required to be read-only:</t> | he parameters that are not required to be read-only:</t> | |||
| <ul spacing="normal"> | <ul spacing="normal"> | |||
| <li>enable/disable Babel</li> | <li>enable/disable Babel</li> | |||
| <li>create/delete Babel MAC Key sets</li> | <li>create/delete Babel Message Authentication Code (MAC) Key sets</li> | |||
| <li>create/delete Babel Certificate sets</li> | <li>create/delete Babel Certificate sets</li> | |||
| <li>enable/disable statistics collection</li> | <li>enable/disable statistics collection</li> | |||
| <li>Constant: UDP port</li> | <li>Constant: UDP port</li> | |||
| <li>Constant: IPv6 multicast group</li> | <li>Constant: IPv6 multicast group</li> | |||
| <li>Interface: enable/disable Babel on this interface</li> | <li>Interface: enable/disable Babel on this interface</li> | |||
| <li>Interface: Metric algorithm</li> | <li>Interface: metric algorithm</li> | |||
| <li>Interface: Split horizon</li> | <li>Interface: split horizon</li> | |||
| <li>Interface: sets of MAC keys</li> | <li>Interface: sets of MAC keys</li> | |||
| <li>Interface: verify received MAC packets</li> | <li>Interface: verify received MAC packets</li> | |||
| <li>Interface: set of certificates for use with DTLS</li> | <li>Interface: set of certificates for use with DTLS</li> | |||
| <li>Interface: use cached info extensions</li> | <li>Interface: use cached info extensions</li> | |||
| <li>Interface: preferred order of certificate types</li> | <li>Interface: preferred order of certificate types</li> | |||
| <li>Interface: enable/disable packet log</li> | <li>Interface: enable/disable packet log</li> | |||
| <li>MAC-keys: create/delete entries</li> | <li>MAC-keys: create/delete entries</li> | |||
| <li>MAC-keys: key used for sent packets</li> | <li>MAC-keys: key used for sent packets</li> | |||
| <li>MAC-keys: key used to verify packets</li> | <li>MAC-keys: key used to verify packets</li> | |||
| <li>DTLS-certs: create/delete entries</li> | <li>DTLS-certs: create/delete entries</li> | |||
| skipping to change at line 285 ¶ | skipping to change at line 282 ¶ | |||
| <li>DTLS private keys</li> | <li>DTLS private keys</li> | |||
| </ul> | </ul> | |||
| <t>Note that this overview is intended simply to be informative and is not normative. | <t>Note that this overview is intended simply to be informative and is not normative. | |||
| If there is any discrepancy between this overview and the detailed information | If there is any discrepancy between this overview and the detailed information | |||
| model definitions in subsequent sections, the error is in this overview.</t> | model definitions in subsequent sections, the error is in this overview.</t> | |||
| </section> | </section> | |||
| <section anchor="the-information-model" numbered="true" toc="default"> | <section anchor="the-information-model" numbered="true" toc="default"> | |||
| <name>The Information Model</name> | <name>The Information Model</name> | |||
| <section anchor="definition-of-babel-information-obj" numbered="true" toc= "default"> | <section anchor="definition-of-babel-information-obj" numbered="true" toc= "default"> | |||
| <name>Definition of babel-information-obj</name> | <name>Definition of babel-information-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| string ro babel-implementation-version; | string ro babel-implementation-version; | |||
| boolean rw babel-enable; | boolean rw babel-enable; | |||
| binary ro babel-self-router-id; | binary ro babel-self-router-id; | |||
| [uint ro babel-self-seqno;] | [uint ro babel-self-seqno;] | |||
| string ro babel-metric-comp-algorithms<1..*>; | string ro babel-metric-comp-algorithms<1..*>; | |||
| string ro babel-security-supported<0..*>; | string ro babel-security-supported<0..*>; | |||
| [string ro babel-mac-algorithms<1..*>;] | [string ro babel-mac-algorithms<1..*>;] | |||
| [string ro babel-dtls-cert-types<1..*>;] | [string ro babel-dtls-cert-types<1..*>;] | |||
| [boolean rw babel-stats-enable;] | [boolean rw babel-stats-enable;] | |||
| [operation babel-stats-reset;] | [operation babel-stats-reset;] | |||
| babel-constants-obj ro babel-constants; | babel-constants-obj ro babel-constants; | |||
| babel-interface-obj ro babel-interfaces<0..*>; | babel-interface-obj ro babel-interfaces<0..*>; | |||
| babel-route-obj ro babel-routes<0..*>; | babel-route-obj ro babel-routes<0..*>; | |||
| [babel-mac-key-set-obj rw babel-mac-key-sets<0..*>;] | [babel-mac-key-set-obj rw babel-mac-key-sets<0..*>;] | |||
| [babel-dtls-cert-set-obj rw babel-dtls-cert-sets<0..*>;] | [babel-dtls-cert-set-obj rw babel-dtls-cert-sets<0..*>;] | |||
| } babel-information-obj; | } babel-information-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-implementation-version: </dt> | babel-implementation-version: </dt> | |||
| <dd> | <dd> | |||
| <t>The name and version of this implementation of the Babel protocol .</t> | <t>The name and version of this implementation of the Babel protocol .</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-enable: </dt> | babel-enable: </dt> | |||
| <dd> | <dd> | |||
| <t>When written, it configures whether the protocol should be enable d | <t>When written, it configures whether the protocol should be enable d | |||
| (true) or disabled (false). | (true) or disabled (false). | |||
| A read from the running or intended datastore indicates the | A read from the running or intended datastore indicates the | |||
| configured administrative value of whether the protocol is enabled | configured administrative value of whether the protocol is enabled | |||
| (true) or not (false). A read from the operational datastore indicates whether | (true) or not (false). A read from the operational datastore indicates whether | |||
| the protocol is actually running (true) or not (i.e., it indicates the | the protocol is actually running (true) or not (i.e., it indicates the | |||
| operational state of the protocol). | operational state of the protocol). | |||
| A data model that does not replicate parameters for running and operational | A data model that does not replicate parameters for running and operational | |||
| datastores can implement this as two separate parameters. | datastores can implement this as two separate parameters. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-self-router-id: </dt> | babel-self-router-id: </dt> | |||
| <dd> | <dd> | |||
| <t>The router-id used by this instance of the Babel protocol | <t>The router-id used by this instance of the Babel protocol | |||
| to identify itself. <xref target="RFC8966" format="default"/> | to identify itself. <xref target="RFC8966" format="default"/> | |||
| describes this as an arbitrary string of 8 octets.</t> | describes this as an arbitrary string of 8 octets.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-self-seqno: </dt> | babel-self-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>The current sequence number included in route updates for routes | <t>The current sequence number included in route updates for routes | |||
| originated by this node. This is a 16-bit unsigned integer.</t> | originated by this node. This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-metric-comp-algorithms: </dt> | babel-metric-comp-algorithms: </dt> | |||
| <dd> | <dd> | |||
| <t>List of supported cost computation algorithms. Possible | <t>List of supported cost computation algorithms. Possible | |||
| values include "2-out-of-3", and "ETX". | values include "2-out-of-3", as described in <xref target="RFC8966" sectionForma | |||
| "2-out-of-3" is described in | t="comma" section="A.2.1"/>, and "ETX", as described in <xref target="RFC8966" s | |||
| <xref target="RFC8966" format="default"/>, section A.2.1. | ectionFormat="comma" section="A.2.2"/>. </t> | |||
| "ETX" is described in | ||||
| <xref target="RFC8966" format="default"/>, section A.2.2.</t> | ||||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-security-supported: </dt> | babel-security-supported: </dt> | |||
| <dd> | <dd> | |||
| <t>List of supported security mechanisms. Possible values include | <t>List of supported security mechanisms. Possible values include | |||
| "MAC" to indicate support of <xref target="RFC8967" format="default"/> and "DTLS " | "MAC" to indicate support of <xref target="RFC8967" format="default"/> and "DTLS " | |||
| to indicate support of <xref target="RFC8968" format="default"/>.</t> | to indicate support of <xref target="RFC8968" format="default"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-algorithms: </dt> | babel-mac-algorithms: </dt> | |||
| <dd> | <dd> | |||
| <t>List of supported MAC computation algorithms. Possible values | <t>List of supported MAC computation algorithms. Possible values | |||
| include "HMAC-SHA256", "BLAKE2s-128" to indicate support for | include "HMAC-SHA256" and "BLAKE2s-128" to indicate support for | |||
| algorithms indicated in <xref target="RFC8967" format="default"/>.</t> | algorithms indicated in <xref target="RFC8967" format="default"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-cert-types: </dt> | babel-dtls-cert-types: </dt> | |||
| <dd> | <dd> | |||
| <t>List of supported certificate types. Possible values include | <t>List of supported certificate types. Possible values include | |||
| "X.509" and "RawPublicKey" to indicate support for types | "X.509" and "RawPublicKey" to indicate support for types | |||
| indicated in <xref target="RFC8968" format="default"/>.</t> | indicated in <xref target="RFC8968" format="default"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| skipping to change at line 406 ¶ | skipping to change at line 399 ¶ | |||
| <dd> | <dd> | |||
| <t>A set of babel-route-obj objects. Contains the routes known to th is | <t>A set of babel-route-obj objects. Contains the routes known to th is | |||
| node.</t> | node.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-sets: </dt> | babel-mac-key-sets: </dt> | |||
| <dd> | <dd> | |||
| <t>A set of babel-mac-key-set-obj objects. If this | <t>A set of babel-mac-key-set-obj objects. If this | |||
| object is implemented, it | object is implemented, it | |||
| provides access to parameters related to the MAC security mechanism. | provides access to parameters related to the MAC security mechanism. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this object as read-only ("ro").</t> | to expose this object as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-cert-sets: </dt> | babel-dtls-cert-sets: </dt> | |||
| <dd> | <dd> | |||
| <t>A set of babel-dtls-cert-set-obj objects. If this | <t>A set of babel-dtls-cert-set-obj objects. If this | |||
| object is implemented, it | object is implemented, it | |||
| provides access to parameters related to the DTLS security mechanism. | provides access to parameters related to the DTLS security mechanism. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this object as read-only ("ro").</t> | to expose this object as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-constants-obj" numbered="true" toc="d efault"> | <section anchor="definition-of-babel-constants-obj" numbered="true" toc="d efault"> | |||
| <name>Definition of babel-constants-obj</name> | <name>Definition of babel-constants-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| uint rw babel-udp-port; | uint rw babel-udp-port; | |||
| [ip-address rw babel-mcast-group;] | [ip-address rw babel-mcast-group;] | |||
| } babel-constants-obj; | } babel-constants-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-udp-port: </dt> | babel-udp-port: </dt> | |||
| <dd> | <dd> | |||
| <t>UDP port for sending and listening for Babel packets. Default | <t>UDP port for sending and listening for Babel packets. Default | |||
| is 6696. An implementation MAY choose | is 6696. An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro"). | to expose this parameter as read-only ("ro"). | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mcast-group: </dt> | babel-mcast-group: </dt> | |||
| <dd> | <dd> | |||
| <t>Multicast group for sending and listening to multicast | <t>Multicast group for sending and listening to multicast | |||
| announcements on IPv6. Default is ff02::1:6. | announcements on IPv6. Default is ff02::1:6. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-interface-obj" numbered="true" toc="d efault"> | <section anchor="definition-of-babel-interface-obj" numbered="true" toc="d efault"> | |||
| <name>Definition of babel-interface-obj</name> | <name>Definition of babel-interface-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| reference ro babel-interface-reference; | reference ro babel-interface-reference; | |||
| [boolean rw babel-interface-enable;] | [boolean rw babel-interface-enable;] | |||
| string rw babel-interface-metric-algorithm; | string rw babel-interface-metric-algorithm; | |||
| [boolean rw babel-interface-split-horizon;] | [boolean rw babel-interface-split-horizon;] | |||
| [uint ro babel-mcast-hello-seqno;] | [uint ro babel-mcast-hello-seqno;] | |||
| [uint ro babel-mcast-hello-interval;] | [uint ro babel-mcast-hello-interval;] | |||
| [uint ro babel-update-interval;] | [uint ro babel-update-interval;] | |||
| [boolean rw babel-mac-enable;] | [boolean rw babel-mac-enable;] | |||
| [reference rw babel-if-mac-key-sets<0..*>;] | [reference rw babel-if-mac-key-sets<0..*>;] | |||
| [boolean rw babel-mac-verify;] | [boolean rw babel-mac-verify;] | |||
| [boolean rw babel-dtls-enable;] | [boolean rw babel-dtls-enable;] | |||
| [reference rw babel-if-dtls-cert-sets<0..*>;] | [reference rw babel-if-dtls-cert-sets<0..*>;] | |||
| [boolean rw babel-dtls-cached-info;] | [boolean rw babel-dtls-cached-info;] | |||
| [string rw babel-dtls-cert-prefer<0..*>;] | [string rw babel-dtls-cert-prefer<0..*>;] | |||
| [boolean rw babel-packet-log-enable;] | [boolean rw babel-packet-log-enable;] | |||
| [reference ro babel-packet-log;] | [reference ro babel-packet-log;] | |||
| [babel-if-stats-obj ro babel-if-stats;] | [babel-if-stats-obj ro babel-if-stats;] | |||
| babel-neighbor-obj ro babel-neighbors<0..*>; | babel-neighbor-obj ro babel-neighbors<0..*>; | |||
| } babel-interface-obj; | } babel-interface-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-interface-reference: </dt> | babel-interface-reference: </dt> | |||
| <dd> | <dd> | |||
| <t>Reference to an interface object that can be used to send and | <t>Reference to an interface object that can be used to send and | |||
| receive IPv6 packets, as defined by | receive IPv6 packets, as defined by | |||
| the data model (e.g., YANG <xref target="RFC7950" format="default"/>, BBF <xref target="TR-181" format="default"/>). | the data model (e.g., YANG <xref target="RFC7950" format="default"/> and Broadba nd Forum (BBF) <xref target="TR-181" format="default"/>). | |||
| Referencing syntax will be specific to the data model. If there is | Referencing syntax will be specific to the data model. If there is | |||
| no set of interface objects available, this should be a string that indicates | no set of interface objects available, this should be a string that indicates | |||
| the interface name used by the underlying operating system.</t> | the interface name used by the underlying operating system.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-interface-enable: </dt> | babel-interface-enable: </dt> | |||
| <dd> | <dd> | |||
| <t>When written, it configures whether the protocol should be enable d | <t>When written, it configures whether the protocol should be enable d | |||
| (true) or disabled (false) on this interface. | (true) or disabled (false) on this interface. | |||
| A read from the running or intended datastore indicates the | A read from the running or intended datastore indicates the | |||
| configured administrative value of whether the protocol is enabled | configured administrative value of whether the protocol is enabled | |||
| (true) or not (false). A read from the operational datastore indicates whether | (true) or not (false). A read from the operational datastore indicates whether | |||
| the protocol is actually running (true) or not (i.e., it indicates the | the protocol is actually running (true) or not (i.e., it indicates the | |||
| operational state of the protocol). | operational state of the protocol). | |||
| A data model that does not replicate parameters for running and operational | A data model that does not replicate parameters for running and operational | |||
| datastores can implement this as two separate parameters. | datastores can implement this as two separate parameters. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-interface-metric-algorithm: </dt> | babel-interface-metric-algorithm: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates the metric computation algorithm used on this interface . | <t>Indicates the metric computation algorithm used on this interface . | |||
| The value MUST be one of those listed in the babel-information-obj | The value <bcp14>MUST</bcp14> be one of those listed in the babel-metric-comp-al | |||
| babel-metric-comp-algorithms parameter. | gorithms parameter. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-interface-split-horizon: </dt> | babel-interface-split-horizon: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether or not the split horizon optimization is used | <t>Indicates whether or not the split-horizon optimization is used | |||
| when calculating metrics on this interface. A value of true | when calculating metrics on this interface. A value of "true" | |||
| indicates split horizon optimization is used. | indicates split-horizon optimization is used. | |||
| Split horizon optimization is described in | Split-horizon optimization is described in | |||
| <xref target="RFC8966" format="default"/>, section 3.7.4. | <xref target="RFC8966" sectionFormat="comma" section="3.7.4"/>. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mcast-hello-seqno: </dt> | babel-mcast-hello-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>The current sequence number in use for multicast | <t>The current sequence number in use for multicast | |||
| Hellos sent on this interface. | Hellos sent on this interface. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| skipping to change at line 543 ¶ | skipping to change at line 536 ¶ | |||
| <dd> | <dd> | |||
| <t>The current interval in use for all updates (multicast | <t>The current interval in use for all updates (multicast | |||
| and unicast) sent on this interface. Units are centiseconds. | and unicast) sent on this interface. Units are centiseconds. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-enable: </dt> | babel-mac-enable: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether the MAC security mechanism is enabled | <t>Indicates whether the MAC security mechanism is enabled | |||
| (true) or disabled (false). | (true) or disabled (false). | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-if-mac-keys-sets: </dt> | babel-if-mac-key-sets: </dt> | |||
| <dd> | <dd> | |||
| <t>List of references to the babel-mac entries that apply to this | <t>List of references to the babel-mac-key-sets entries that apply t o this | |||
| interface. When an interface instance is created, all babel-mac-key-sets | interface. When an interface instance is created, all babel-mac-key-sets | |||
| instances with babel-mac-default-apply "true" will be included | instances with babel-mac-default-apply "true" will be included | |||
| in this list. | in this list. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-verify </dt> | babel-mac-verify:</dt> | |||
| <dd> | <dd> | |||
| <t>A Boolean flag indicating whether MACs in incoming Babel packets | <t>A Boolean flag indicating whether MACs in incoming Babel packets | |||
| are required to be present and are verified. If this parameter is "true", | are required to be present and are verified. If this parameter is "true", | |||
| incoming packets are required to have a valid MAC. | incoming packets are required to have a valid MAC. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-enable: </dt> | babel-dtls-enable: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether the DTLS security mechanism is enabled | <t>Indicates whether the DTLS security mechanism is enabled | |||
| (true) or disabled (false). | (true) or disabled (false). | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-if-dtls-cert-sets: </dt> | babel-if-dtls-cert-sets: </dt> | |||
| <dd> | <dd> | |||
| <t>List of references to the babel-dtls-cert-sets entries that apply to this | <t>List of references to the babel-dtls-cert-sets entries that apply to this | |||
| interface. When an interface instance is created, all babel-dtls-cert-sets | interface. When an interface instance is created, all babel-dtls-cert-sets | |||
| instances with babel-dtls-default-apply "true" will be included | instances with babel-dtls-default-apply "true" will be included | |||
| in this list. | in this list. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-cached-info: </dt> | babel-dtls-cached-info: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether the cached_info extension | <t>Indicates whether the cached_info extension | |||
| (see <xref target="RFC8968" format="default"/> Appendix A) is included in Client Hello | (see <xref target="RFC8968" sectionFormat="comma" section="A"/>) is included in ClientHello | |||
| and ServerHello packets. The extension is included if the value | and ServerHello packets. The extension is included if the value | |||
| is "true". | is "true". | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-cert-prefer: </dt> | babel-dtls-cert-prefer: </dt> | |||
| <dd> | <dd> | |||
| <t>List of supported certificate types, in order of preference. | <t>List of supported certificate types, in order of preference. | |||
| The values MUST be among those | The values <bcp14>MUST</bcp14> be among those | |||
| listed in the babel-dtls-cert-types parameter. | listed in the babel-dtls-cert-types parameter. | |||
| This list is used to populate the server_certificate_type | This list is used to populate the server_certificate_type | |||
| extension (see <xref target="RFC8968" format="default"/> Appendix A) | extension (see <xref target="RFC8968" sectionFormat="comma" section="A"/>) | |||
| in a Client Hello. Values that are present in | in a ClientHello. Values that are present in | |||
| at least one instance in the babel-dtls-certs object of a | at least one instance in the babel-dtls-certs object of a | |||
| referenced babel-dtls instance and that have | referenced babel-dtls instance and that have | |||
| a non-empty babel-cert-private-key will be used to populate | a non-empty babel-cert-private-key will be used to populate | |||
| the client_certificate_type extension in a Client Hello.</t> | the client_certificate_type extension in a ClientHello.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-packet-log-enable: </dt> | babel-packet-log-enable: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether packet logging is enabled | <t>Indicates whether packet logging is enabled | |||
| (true) or disabled (false) on this interface.</t> | (true) or disabled (false) on this interface.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-packet-log: </dt> | babel-packet-log: </dt> | |||
| <dd> | <dd> | |||
| <t>A reference or url link to a file that contains a timestamped log | <t>A reference or URL link to a file that contains a timestamped log | |||
| of packets received and sent on babel-udp-port on this interface. | of packets received and sent on babel-udp-port on this interface. | |||
| The <xref target="libpcap" format="default"/> file format with .pcap file extens ion SHOULD be supported for | The <xref target="libpcap" format="default"/> file format with a .pcap file exte nsion <bcp14>SHOULD</bcp14> be supported for | |||
| packet log files. Logging is | packet log files. Logging is | |||
| enabled / disabled by babel-packet-log-enable. | enabled/disabled by babel-packet-log-enable. | |||
| Implementations will need to carefully manage and limit | Implementations will need to carefully manage and limit | |||
| memory used by packet logs.</t> | memory used by packet logs.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-if-stats: </dt> | babel-if-stats: </dt> | |||
| <dd> | <dd> | |||
| <t>Statistics collection object for this interface.</t> | <t>Statistics collection object for this interface.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-neighbors: </dt> | babel-neighbors: </dt> | |||
| <dd> | <dd> | |||
| <t>A set of babel-neighbor-obj objects.</t> | <t>A set of babel-neighbor-obj objects.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-if-stats-obj" numbered="true" toc="de fault"> | <section anchor="definition-of-babel-if-stats-obj" numbered="true" toc="de fault"> | |||
| <name>Definition of babel-if-stats-obj</name> | <name>Definition of babel-if-stats-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| uint ro babel-sent-mcast-hello; | uint ro babel-sent-mcast-hello; | |||
| uint ro babel-sent-mcast-update; | uint ro babel-sent-mcast-update; | |||
| uint ro babel-sent-ucast-hello; | uint ro babel-sent-ucast-hello; | |||
| uint ro babel-sent-ucast-update; | uint ro babel-sent-ucast-update; | |||
| uint ro babel-sent-IHU; | uint ro babel-sent-IHU; | |||
| uint ro babel-received-packets; | uint ro babel-received-packets; | |||
| } babel-if-stats-obj; | } babel-if-stats-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-sent-mcast-hello: </dt> | babel-sent-mcast-hello: </dt> | |||
| <dd> | <dd> | |||
| <t>A count of the number of multicast Hello packets sent on this int erface.</t> | <t>A count of the number of multicast Hello packets sent on this int erface.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-sent-mcast-update: </dt> | babel-sent-mcast-update: </dt> | |||
| <dd> | <dd> | |||
| <t>A count of the number of multicast update packets sent on this in terface.</t> | <t>A count of the number of multicast update packets sent on this in terface.</t> | |||
| skipping to change at line 672 ¶ | skipping to change at line 666 ¶ | |||
| <t>A count of the number of unicast Hello packets sent on this inter face.</t> | <t>A count of the number of unicast Hello packets sent on this inter face.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-sent-ucast-update: </dt> | babel-sent-ucast-update: </dt> | |||
| <dd> | <dd> | |||
| <t>A count of the number of unicast update packets sent on this inte rface.</t> | <t>A count of the number of unicast update packets sent on this inte rface.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-sent-IHU: </dt> | babel-sent-IHU: </dt> | |||
| <dd> | <dd> | |||
| <t>A count of the number of IHU packets sent on this interface.</t> | <t>A count of the number of "I Heard You" (IHU) packets sent on this interface.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-received-packets: </dt> | babel-received-packets: </dt> | |||
| <dd> | <dd> | |||
| <t>A count of the number of Babel packets received on this interface .</t> | <t>A count of the number of Babel packets received on this interface .</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-neighbor-obj" numbered="true" toc="de fault"> | <section anchor="definition-of-babel-neighbor-obj" numbered="true" toc="de fault"> | |||
| <name>Definition of babel-neighbor-obj</name> | <name>Definition of babel-neighbor-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| ip-address ro babel-neighbor-address; | ip-address ro babel-neighbor-address; | |||
| [binary ro babel-hello-mcast-history;] | [binary ro babel-hello-mcast-history;] | |||
| [binary ro babel-hello-ucast-history;] | [binary ro babel-hello-ucast-history;] | |||
| uint ro babel-txcost; | uint ro babel-txcost; | |||
| uint ro babel-exp-mcast-hello-seqno; | uint ro babel-exp-mcast-hello-seqno; | |||
| uint ro babel-exp-ucast-hello-seqno; | uint ro babel-exp-ucast-hello-seqno; | |||
| [uint ro babel-ucast-hello-seqno;] | [uint ro babel-ucast-hello-seqno;] | |||
| [uint ro babel-ucast-hello-interval;] | [uint ro babel-ucast-hello-interval;] | |||
| [uint ro babel-rxcost;] | [uint ro babel-rxcost;] | |||
| [uint ro babel-cost;] | [uint ro babel-cost;] | |||
| } babel-neighbor-obj; | } babel-neighbor-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-neighbor-address: </dt> | babel-neighbor-address: </dt> | |||
| <dd> | <dd> | |||
| <t>IPv4 or IPv6 address the neighbor sends packets from.</t> | <t>IPv4 or IPv6 address the neighbor sends packets from.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-hello-mcast-history: </dt> | babel-hello-mcast-history: </dt> | |||
| <dd> | <dd> | |||
| <t>The multicast Hello history of whether or not | <t>The multicast Hello history of whether or not | |||
| the multicast Hello packets prior to babel-exp-mcast-hello-seqno | the multicast Hello packets prior to babel-exp-mcast-hello-seqno | |||
| were received. | were received. | |||
| A binary sequence where the most recently received Hello | A binary sequence where the most recently received Hello | |||
| is expressed as a "1" placed in the left-most bit, with prior bits shifted | is expressed as a "1" placed in the leftmost bit, with prior bits shifted | |||
| right (and "0" bits placed between prior Hello bits and most recent Hello | right (and "0" bits placed between prior Hello bits and most recent Hello | |||
| for any not-received Hellos). This value should be displayed using | for any not-received Hellos). This value should be displayed using | |||
| hex digits ([0-9a-fA-F]). See <xref target="RFC8966" format="default"/>, section A.1.</t> | hex digits ([0-9a-fA-F]). See <xref target="RFC8966" sectionFormat="comma" secti on="A.1"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-hello-ucast-history: </dt> | babel-hello-ucast-history: </dt> | |||
| <dd> | <dd> | |||
| <t>The unicast Hello history of whether or not the | <t>The unicast Hello history of whether or not the | |||
| unicast Hello packets prior to babel-exp-ucast-hello-seqno were received. | unicast Hello packets prior to babel-exp-ucast-hello-seqno were received. | |||
| A binary sequence where the most recently received Hello | A binary sequence where the most recently received Hello | |||
| is expressed as a "1" placed in the left-most bit, with prior bits shifted | is expressed as a "1" placed in the leftmost bit, with prior bits shifted | |||
| right (and "0" bits placed between prior Hello bits and most recent Hello | right (and "0" bits placed between prior Hello bits and the most recent Hello | |||
| for any not-received Hellos). This value should be displayed using | for any not-received Hellos). This value should be displayed using | |||
| hex digits ([0-9a-fA-F]). See <xref target="RFC8966" format="default"/>, section A.1.</t> | hex digits ([0-9a-fA-F]). See <xref target="RFC8966" sectionFormat="comma" secti on="A.1"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-txcost: </dt> | babel-txcost: </dt> | |||
| <dd> | <dd> | |||
| <t>Transmission cost value from the last IHU packet received from | <t>Transmission cost value from the last IHU packet received from | |||
| this neighbor, or maximum value to indicate the IHU hold timer | this neighbor, or the maximum value to indicate the IHU hold timer | |||
| for this neighbor has expired. See <xref target="RFC8966" format="default"/>, se | for this neighbor has expired. See <xref target="RFC8966" sectionFormat="comma" | |||
| ction 3.4.2. | section="3.4.2"/>. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-exp-mcast-hello-seqno: </dt> | babel-exp-mcast-hello-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>Expected multicast Hello sequence number of | <t>Expected multicast Hello sequence number of | |||
| next Hello to be received from this neighbor. If multicast Hello packets | next Hello to be received from this neighbor. If multicast Hello packets | |||
| are not expected, or processing of multicast packets is not enabled, this | are not expected or processing of multicast packets is not enabled, this | |||
| MUST be NULL. | <bcp14>MUST</bcp14> be NULL. | |||
| This is a 16-bit unsigned integer; if the data model uses | This is a 16-bit unsigned integer; if the data model uses | |||
| zero (0) to represent NULL values for unsigned integers, | zero (0) to represent NULL values for unsigned integers, | |||
| the data model MAY use a different data type that allows | the data model <bcp14>MAY</bcp14> use a different data type that allows | |||
| differentiation between zero (0) and NULL.</t> | differentiation between zero (0) and NULL.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-exp-ucast-hello-seqno: </dt> | babel-exp-ucast-hello-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>Expected unicast Hello sequence number of next | <t>Expected unicast Hello sequence number of next | |||
| Hello to be received from this neighbor. If unicast Hello packets are not | Hello to be received from this neighbor. If unicast Hello packets are not | |||
| expected, or processing of unicast packets is not enabled, this MUST be | expected or processing of unicast packets is not enabled, this <bcp14>MUST</bcp1 4> be | |||
| NULL. | NULL. | |||
| This is a 16-bit unsigned integer; if the data model uses | This is a 16-bit unsigned integer; if the data model uses | |||
| zero (0) to represent NULL values for unsigned integers, | zero (0) to represent NULL values for unsigned integers, | |||
| the data model MAY use a different data type that allows | the data model <bcp14>MAY</bcp14> use a different data type that allows | |||
| differentiation between zero (0) and NULL.</t> | differentiation between zero (0) and NULL.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-ucast-hello-seqno: </dt> | babel-ucast-hello-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>The current sequence number in use for unicast Hellos | <t>The current sequence number in use for unicast Hellos | |||
| sent to this neighbor. If unicast Hellos are not being sent, | sent to this neighbor. If unicast Hellos are not being sent, | |||
| this MUST be NULL. | this <bcp14>MUST</bcp14> be NULL. | |||
| This is a 16-bit unsigned integer; if the data model uses | This is a 16-bit unsigned integer; if the data model uses | |||
| zero (0) to represent NULL values for unsigned integers, | zero (0) to represent NULL values for unsigned integers, | |||
| the data model MAY use a different data type that allows | the data model <bcp14>MAY</bcp14> use a different data type that allows | |||
| differentiation between zero (0) and NULL.</t> | differentiation between zero (0) and NULL.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-ucast-hello-interval: </dt> | babel-ucast-hello-interval: </dt> | |||
| <dd> | <dd> | |||
| <t>The current interval in use for unicast Hellos | <t>The current interval in use for unicast Hellos | |||
| sent to this neighbor. Units are centiseconds. | sent to this neighbor. Units are centiseconds. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-rxcost: </dt> | babel-rxcost: </dt> | |||
| <dd> | <dd> | |||
| <t>Reception cost calculated for this neighbor. This value is | <t>Reception cost calculated for this neighbor. This value is | |||
| usually derived from the Hello history, which may be combined with other | usually derived from the Hello history, which may be combined with other | |||
| data, such as statistics maintained by the link layer. The rxcost is sent | data, such as statistics maintained by the link layer. The rxcost is sent | |||
| to a neighbor in each IHU. See <xref target="RFC8966" format="default"/>, sectio n 3.4.3. | to a neighbor in each IHU. See <xref target="RFC8966" sectionFormat="comma" sect ion="3.4.3"/>. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-cost: </dt> | babel-cost: </dt> | |||
| <dd> | <dd> | |||
| <t>The link cost, as computed from the values | <t>The link cost, as computed from the values | |||
| maintained in the neighbor table: the statistics kept in the | maintained in the neighbor table: the statistics kept in the | |||
| neighbor table about the reception of Hellos, and the txcost | neighbor table about the reception of Hellos and the txcost | |||
| computed from received IHU packets. | computed from received IHU packets. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-route-obj" numbered="true" toc="defau lt"> | <section anchor="definition-of-babel-route-obj" numbered="true" toc="defau lt"> | |||
| <name>Definition of babel-route-obj</name> | <name>Definition of babel-route-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| ip-address ro babel-route-prefix; | ip-address ro babel-route-prefix; | |||
| uint ro babel-route-prefix-length; | uint ro babel-route-prefix-length; | |||
| binary ro babel-route-router-id; | binary ro babel-route-router-id; | |||
| reference ro babel-route-neighbor; | reference ro babel-route-neighbor; | |||
| uint ro babel-route-received-metric; | uint ro babel-route-received-metric; | |||
| uint ro babel-route-calculated-metric; | uint ro babel-route-calculated-metric; | |||
| uint ro babel-route-seqno; | uint ro babel-route-seqno; | |||
| ip-address ro babel-route-next-hop; | ip-address ro babel-route-next-hop; | |||
| boolean ro babel-route-feasible; | boolean ro babel-route-feasible; | |||
| boolean ro babel-route-selected; | boolean ro babel-route-selected; | |||
| } babel-route-obj; | } babel-route-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-route-prefix: </dt> | babel-route-prefix: </dt> | |||
| <dd> | <dd> | |||
| <t>Prefix (expressed in IP address format) for which this | <t>Prefix (expressed in IP address format) for which this | |||
| route is advertised.</t> | route is advertised.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-prefix-length: </dt> | babel-route-prefix-length: </dt> | |||
| <dd> | <dd> | |||
| skipping to change at line 838 ¶ | skipping to change at line 832 ¶ | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-neighbor: </dt> | babel-route-neighbor: </dt> | |||
| <dd> | <dd> | |||
| <t>Reference to the babel-neighbors entry for the neighbor | <t>Reference to the babel-neighbors entry for the neighbor | |||
| that advertised this route.</t> | that advertised this route.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-received-metric: </dt> | babel-route-received-metric: </dt> | |||
| <dd> | <dd> | |||
| <t>The metric with which this route was advertised | <t>The metric with which this route was advertised | |||
| by the neighbor, or maximum value to indicate the route was | by the neighbor, or the maximum value to indicate the route was | |||
| recently retracted and is temporarily unreachable (see Section 3.5.5 | recently retracted and is temporarily unreachable (see <xref target="RFC8966" se | |||
| of <xref target="RFC8966" format="default"/>). This metric will be | ctionFormat="of" section="3.5.4"/>). This metric will be | |||
| NULL if the route was not received from a neighbor | NULL if the route was not received from a neighbor | |||
| but was generated through other means. At least one of | but was generated through other means. At least one of the following | |||
| babel-route-calculated-metric | <bcp14>MUST</bcp14> be non-NULL: babel-route-calculated-metric | |||
| and babel-route-received-metric MUST be non-NULL. | or babel-route-received-metric. | |||
| Having both be non-NULL is expected for a route that is received and | Having both be non-NULL is expected for a route that is received and | |||
| subsequently advertised. | subsequently advertised. | |||
| This is a 16-bit unsigned integer; if the data model uses | This is a 16-bit unsigned integer; if the data model uses | |||
| zero (0) to represent NULL values for unsigned integers, | zero (0) to represent NULL values for unsigned integers, | |||
| the data model MAY use a different data type that allows | the data model <bcp14>MAY</bcp14> use a different data type that allows | |||
| differentiation between zero (0) and NULL.</t> | differentiation between zero (0) and NULL.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-calculated-metric: </dt> | babel-route-calculated-metric: </dt> | |||
| <dd> | <dd> | |||
| <t>A calculated metric for this route. How the | <t>A calculated metric for this route. How the | |||
| metric is calculated is implementation-specific. Maximum value | metric is calculated is implementation specific. The maximum value | |||
| indicates the route was recently retracted and is temporarily unreachable | indicates the route was recently retracted and is temporarily unreachable | |||
| (see Section 3.5.5 of <xref target="RFC8966" format="default"/>). | (see <xref target="RFC8966" sectionFormat="of" section="3.5.4"/>). | |||
| At least one of babel-route-calculated-metric and | At least one of the following <bcp14>MUST</bcp14> be non-NULL: babel-route-calcu | |||
| babel-route-received-metric MUST be non-NULL. | lated-metric or babel-route-received-metric. | |||
| Having both be non-NULL is expected for a route that is received and | Having both be non-NULL is expected for a route that is received and | |||
| subsequently advertised. | subsequently advertised. | |||
| This is a 16-bit unsigned integer; if the data model uses | This is a 16-bit unsigned integer; if the data model uses | |||
| zero (0) to represent NULL values for unsigned integers, | zero (0) to represent NULL values for unsigned integers, | |||
| the data model MAY use a different data type that allows | the data model <bcp14>MAY</bcp14> use a different data type that allows | |||
| differentiation between zero (0) and NULL.</t> | differentiation between zero (0) and NULL.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-seqno: </dt> | babel-route-seqno: </dt> | |||
| <dd> | <dd> | |||
| <t>The sequence number with which this route was advertised. | <t>The sequence number with which this route was advertised. | |||
| This is a 16-bit unsigned integer.</t> | This is a 16-bit unsigned integer.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-next-hop: </dt> | babel-route-next-hop: </dt> | |||
| <dd> | <dd> | |||
| <t>The next-hop address of this route. This will be empty | <t>The next-hop address of this route. This will be empty | |||
| if this route has no next-hop address.</t> | if this route has no next-hop address.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-feasible: </dt> | babel-route-feasible: </dt> | |||
| <dd> | <dd> | |||
| <t>A Boolean flag indicating whether this route is feasible, | <t>A Boolean flag indicating whether this route is feasible, | |||
| as defined in Section 3.5.1 of <xref target="RFC8966" format="default"/>).</t> | as defined in <xref target="RFC8966" sectionFormat="of" section="3.5.1"/>).</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-route-selected: </dt> | babel-route-selected: </dt> | |||
| <dd> | <dd> | |||
| <t>A Boolean flag indicating whether this route is selected | <t>A Boolean flag indicating whether this route is selected | |||
| (i.e., whether it is currently being used for forwarding and | (i.e., whether it is currently being used for forwarding and | |||
| is being advertised).</t> | is being advertised).</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-mac-key-set-obj" numbered="true" toc= "default"> | <section anchor="definition-of-babel-mac-key-set-obj" numbered="true" toc= "default"> | |||
| <name>Definition of babel-mac-key-set-obj</name> | <name>Definition of babel-mac-key-set-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| boolean rw babel-mac-default-apply; | boolean rw babel-mac-default-apply; | |||
| babel-mac-key-obj rw babel-mac-keys<0..*>; | babel-mac-key-obj rw babel-mac-keys<0..*>; | |||
| } babel-mac-key-set-obj; | } babel-mac-key-set-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-mac-default-apply: </dt> | babel-mac-default-apply: </dt> | |||
| <dd> | <dd> | |||
| <t>A Boolean flag indicating whether this object instance is | <t>A Boolean flag indicating whether this object instance is | |||
| applied to all new babel-interface instances, by default. | applied to all new babel-interfaces instances by default. | |||
| If "true", this instance is applied to | If "true", this instance is applied to | |||
| new babel-interfaces instances at the time they are created, by including | new babel-interfaces instances at the time they are created by including | |||
| it in the babel-if-mac-key-sets list. | it in the babel-if-mac-key-sets list. | |||
| If "false", this instance is not applied to new babel-interfaces | If "false", this instance is not applied to new babel-interfaces | |||
| instances when they are created. | instances when they are created. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-keys: </dt> | babel-mac-keys: </dt> | |||
| <dd> | <dd> | |||
| <t>A set of babel-mac-key-obj objects.</t> | <t>A set of babel-mac-key-obj objects.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-mac-key-obj" numbered="true" toc="def ault"> | <section anchor="definition-of-babel-mac-key-obj" numbered="true" toc="def ault"> | |||
| <name>Definition of babel-mac-key-obj</name> | <name>Definition of babel-mac-key-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| string rw babel-mac-key-name; | string rw babel-mac-key-name; | |||
| boolean rw babel-mac-key-use-send; | boolean rw babel-mac-key-use-send; | |||
| boolean rw babel-mac-key-use-verify; | boolean rw babel-mac-key-use-verify; | |||
| binary -- babel-mac-key-value; | binary -- babel-mac-key-value; | |||
| string rw babel-mac-key-algorithm; | string rw babel-mac-key-algorithm; | |||
| [operation babel-mac-key-test;] | [operation babel-mac-key-test;] | |||
| } babel-mac-key-obj; | } babel-mac-key-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-mac-key-name: </dt> | babel-mac-key-name: </dt> | |||
| <dd> | <dd> | |||
| <t>A unique name for this MAC key that can be used to identify | <t>A unique name for this MAC key that can be used to identify | |||
| the key in this object instance, since the key value is not | the key in this object instance since the key value is not | |||
| allowed to be read. This value MUST NOT be empty and can only be provided when t | allowed to be read. This value <bcp14>MUST NOT</bcp14> be empty and can only be | |||
| his | provided when this | |||
| instance is created (i.e., it is not subsequently writable). | instance is created (i.e., it is not subsequently writable). | |||
| The value MAY be auto-generated if not explicitly supplied when the instance is created.</t> | The value <bcp14>MAY</bcp14> be auto-generated if not explicitly supplied when t he instance is created.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-use-send: </dt> | babel-mac-key-use-send: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether this key value is used to compute a MAC | <t>Indicates whether this key value is used to compute a MAC | |||
| and include that MAC in the sent Babel | and include that MAC in the sent Babel | |||
| packet. A MAC for sent packets is computed using this key if the value | packet. A MAC for sent packets is computed using this key if the value | |||
| is "true". If the value is "false", this key is not used to | is "true". If the value is "false", this key is not used to | |||
| compute a MAC to include in sent Babel packets. | compute a MAC to include in sent Babel packets. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-use-verify: </dt> | babel-mac-key-use-verify: </dt> | |||
| <dd> | <dd> | |||
| <t>Indicates whether this key value is used to verify | <t>Indicates whether this key value is used to verify | |||
| incoming Babel packets. This key is used to verify | incoming Babel packets. This key is used to verify | |||
| incoming packets if the value is "true". If the value | incoming packets if the value is "true". If the value | |||
| is "false", no MAC is computed from this key for | is "false", no MAC is computed from this key for | |||
| comparing with the MAC in an incoming packet. | comparison with the MAC in an incoming packet. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-value: </dt> | babel-mac-key-value: </dt> | |||
| <dd> | <dd> | |||
| <t>The value of the MAC key. An implementation MUST NOT allow | <t>The value of the MAC key. An implementation <bcp14>MUST NOT</bcp1 4> allow | |||
| this parameter to be read. This can be done by always providing | this parameter to be read. This can be done by always providing | |||
| an empty string when read, or through permissions, or other means. | an empty string when read, through permissions, or by other means. | |||
| This value MUST be provided when this | This value <bcp14>MUST</bcp14> be provided when this | |||
| instance is created, and is not subsequently writable. | instance is created and is not subsequently writable. | |||
| This value is of a length suitable for the associated | This value is of a length suitable for the associated | |||
| babel-mac-key-algorithm. | babel-mac-key-algorithm. | |||
| If the algorithm is based on the HMAC construction <xref target="RFC2104" format | If the algorithm is based on the Hashed Message Authentication Code (HMAC) const | |||
| ="default"/>, | ruction <xref target="RFC2104" format="default"/>, | |||
| the length MUST be between 0 and an upper limit that is at least | the length <bcp14>MUST</bcp14> be between 0 and an upper limit that is at least | |||
| the size of the output length (where "HMAC-SHA256" output length | the size of the output length (where the "HMAC-SHA256" output length | |||
| is 32 octets as described in <xref target="RFC4868" format="default"/>). Longer | is 32 octets as described in <xref target="RFC4868" format="default"/>). Longer | |||
| lengths MAY be | lengths <bcp14>MAY</bcp14> be | |||
| supported but are not necessary if the management system has the | supported but are not necessary if the management system has the | |||
| ability to generate a suitably random value (e.g., by randomly | ability to generate a suitably random value (e.g., by randomly | |||
| generating a value or by using a key derivation technique as | generating a value or by using a key derivation technique as | |||
| recommended in <xref target="RFC8967" format="default"/> Security Considerations | recommended in the security considerations in <xref target="RFC8967" sectionForm | |||
| ). If the | at="of" section="7"/>). If the | |||
| algorithm is "BLAKE2s-128", the length MUST be between 0 and 32 | algorithm is "BLAKE2s-128", the length <bcp14>MUST</bcp14> be between 0 and 32 | |||
| bytes inclusive as specified by <xref target="RFC7693" format="default"/>.</t> | bytes inclusive as specified by <xref target="RFC7693" format="default"/>.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-algorithm </dt> | babel-mac-key-algorithm </dt> | |||
| <dd> | <dd> | |||
| <t>The name of the MAC algorithm used with this key. | <t>The name of the MAC algorithm used with this key. | |||
| The value MUST be the same as one of the enumerations | The value <bcp14>MUST</bcp14> be the same as one of the enumerations | |||
| listed in the babel-mac-algorithms parameter. | listed in the babel-mac-algorithms parameter. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-mac-key-test: </dt> | babel-mac-key-test: </dt> | |||
| <dd> | <dd> | |||
| <t>An operation that allows the MAC key and MAC algorithm to | <t>An operation that allows the MAC key and MAC algorithm to | |||
| be tested to see if they produce an expected outcome. Input | be tested to see if they produce an expected outcome. Input | |||
| to this operation are a binary string and a calculated MAC | to this operation is a binary string and a calculated MAC | |||
| (also in the format of a binary string) for the binary string. | (also in the format of a binary string) for the binary string. | |||
| The implementation is | The implementation is | |||
| expected to create a MAC over the binary string using the | expected to create a MAC over the binary string using the | |||
| babel-mac-key-value and the babel-mac-key-algorithm. The | babel-mac-key-value and the babel-mac-key-algorithm. The | |||
| output of this operation is a Boolean indication that the | output of this operation is a Boolean indication that the | |||
| calculated MAC matched the input MAC (true) or | calculated MAC matched the input MAC (true) or | |||
| the MACs did not match (false).</t> | the MACs did not match (false).</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-dtls-cert-set-obj" numbered="true" to c="default"> | <section anchor="definition-of-babel-dtls-cert-set-obj" numbered="true" to c="default"> | |||
| <name>Definition of babel-dtls-cert-set-obj</name> | <name>Definition of babel-dtls-cert-set-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| boolean rw babel-dtls-default-apply; | boolean rw babel-dtls-default-apply; | |||
| babel-dtls-cert-obj rw babel-dtls-certs<0..*>; | babel-dtls-cert-obj rw babel-dtls-certs<0..*>; | |||
| } babel-dtls-cert-set-obj; | } babel-dtls-cert-set-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-dtls-default-apply: </dt> | babel-dtls-default-apply: </dt> | |||
| <dd> | <dd> | |||
| <t>A Boolean flag indicating whether this object instance is | <t>A Boolean flag indicating whether this object instance is | |||
| applied to all new babel-interface instances, by default. | applied to all new babel-interfaces instances by default. | |||
| If "true", this instance is applied to | If "true", this instance is applied to | |||
| new babel-interfaces instances at the time they are created, by including | new babel-interfaces instances at the time they are created by including | |||
| it in the babel-interface-dtls-certs list. | it in the babel-interface-dtls-certs list. | |||
| If "false", this instance is not applied to new babel-interfaces | If "false", this instance is not applied to new babel-interfaces | |||
| instances when they are created. | instances when they are created. | |||
| An implementation MAY choose | An implementation <bcp14>MAY</bcp14> choose | |||
| to expose this parameter as read-only ("ro").</t> | to expose this parameter as read-only ("ro").</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-dtls-certs: </dt> | babel-dtls-certs: </dt> | |||
| <dd> | <dd> | |||
| <t>A set of babel-dtls-cert-obj objects. This contains both certific ates | <t>A set of babel-dtls-cert-obj objects. This contains both certific ates | |||
| for this implementation to present for authentication, and to accept | for this implementation to present for authentication and those to accept | |||
| from others. Certificates with a non-empty babel-cert-private-key can | from others. Certificates with a non-empty babel-cert-private-key can | |||
| be presented by this implementation for authentication.</t> | be presented by this implementation for authentication.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| <section anchor="definition-of-babel-dtls-cert-obj" numbered="true" toc="d efault"> | <section anchor="definition-of-babel-dtls-cert-obj" numbered="true" toc="d efault"> | |||
| <name>Definition of babel-dtls-cert-obj</name> | <name>Definition of babel-dtls-cert-obj</name> | |||
| <artwork align="left" name="" type="" alt=""><![CDATA[ | <sourcecode name="" type=""><![CDATA[ | |||
| object { | object { | |||
| string rw babel-cert-name; | string rw babel-cert-name; | |||
| string rw babel-cert-value; | string rw babel-cert-value; | |||
| string rw babel-cert-type; | string rw babel-cert-type; | |||
| binary -- babel-cert-private-key; | binary -- babel-cert-private-key; | |||
| } babel-dtls-cert-obj; | } babel-dtls-cert-obj; | |||
| ]]></artwork> | ]]></sourcecode> | |||
| <dl> | <dl> | |||
| <dt> | <dt> | |||
| babel-cert-name: </dt> | babel-cert-name: </dt> | |||
| <dd> | <dd> | |||
| <t>A unique name for this certificate that can be used to identify | <t>A unique name for this certificate that can be used to identify | |||
| the certificate in this object instance, since the value is too long | the certificate in this object instance since the value is too long | |||
| to be useful for identification. This value MUST NOT be empty and can | to be useful for identification. This value <bcp14>MUST NOT</bcp14> be empty and | |||
| can | ||||
| only be provided when this instance is created (i.e., it is not | only be provided when this instance is created (i.e., it is not | |||
| subsequently writable). The value MAY be auto-generated if not | subsequently writable). The value <bcp14>MAY</bcp14> be auto-generated if not | |||
| explicitly supplied when the instance is created.</t> | explicitly supplied when the instance is created.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-cert-value: </dt> | babel-cert-value: </dt> | |||
| <dd> | <dd> | |||
| <t>The certificate in PEM format <xref target="RFC7468" format="defa | <t>The certificate in Privacy-Enhanced Mail (PEM) format <xref targe | |||
| ult"/>. | t="RFC7468" format="default"/>. | |||
| This value MUST be provided when this | This value <bcp14>MUST</bcp14> be provided when this | |||
| instance is created, and is not subsequently writable.</t> | instance is created and is not subsequently writable.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-cert-type: </dt> | babel-cert-type: </dt> | |||
| <dd> | <dd> | |||
| <t>The name of the certificate type of this object | <t>The name of the certificate type of this object | |||
| instance. The value MUST be the same as one of the enumerations | instance. The value <bcp14>MUST</bcp14> be the same as one of the enumerations | |||
| listed in the babel-dtls-cert-types parameter. | listed in the babel-dtls-cert-types parameter. | |||
| This value can only be provided when this | This value can only be provided when this | |||
| instance is created, and is not subsequently writable.</t> | instance is created and is not subsequently writable.</t> | |||
| </dd> | </dd> | |||
| <dt> | <dt> | |||
| babel-cert-private-key: </dt> | babel-cert-private-key: </dt> | |||
| <dd> | <dd> | |||
| <t>The value of the private key. If this is non-empty, this | <t>The value of the private key. If this is non-empty, this | |||
| certificate can be used by this implementation | certificate can be used by this implementation | |||
| to provide a certificate during DTLS handshaking. | to provide a certificate during DTLS handshaking. | |||
| An implementation MUST NOT allow | An implementation <bcp14>MUST NOT</bcp14> allow | |||
| this parameter to be read. This can be done by always providing | this parameter to be read. This can be done by always providing | |||
| an empty string when read, or through permissions, or other means. | an empty string when read, through permissions, or by other means. | |||
| This value can only be provided when this | This value can only be provided when this | |||
| instance is created, and is not subsequently writable.</t> | instance is created and is not subsequently writable.</t> | |||
| </dd> | </dd> | |||
| </dl> | </dl> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="extending-the-information-model" numbered="true" toc="defau lt"> | <section anchor="extending-the-information-model" numbered="true" toc="defau lt"> | |||
| <name>Extending the Information Model</name> | <name>Extending the Information Model</name> | |||
| <t>Implementations MAY extend this information model with other parameters | <t>Implementations <bcp14>MAY</bcp14> extend this information model with o | |||
| or | ther parameters or | |||
| objects. For example, an implementation MAY choose to expose Babel route | objects. For example, an implementation <bcp14>MAY</bcp14> choose to expose Babe | |||
| l route | ||||
| filtering rules by adding a route filtering object with parameters appropriate | filtering rules by adding a route filtering object with parameters appropriate | |||
| to how route filtering is done in that implementation. The precise means | to how route filtering is done in that implementation. The precise means | |||
| used to extend the information model would be specific to the data model | used to extend the information model would be specific to the data model | |||
| the implementation uses to expose this information.</t> | the implementation uses to expose this information.</t> | |||
| </section> | </section> | |||
| <section anchor="security-considerations" numbered="true" toc="default"> | <section anchor="security-considerations" numbered="true" toc="default"> | |||
| <name>Security Considerations</name> | <name>Security Considerations</name> | |||
| <t>This document defines a set of information model objects and parameters that | <t>This document defines a set of information model objects and parameters that | |||
| may be exposed to be visible from other devices, and some of which may be | may be exposed and visible from other devices. Some of these information model o | |||
| configured. Securing access to and ensuring the integrity of this data | bjects and parameters may be configured. Securing access to and ensuring the int | |||
| egrity of this data | ||||
| is in scope of and the responsibility of any data model derived from this | is in scope of and the responsibility of any data model derived from this | |||
| information model. Specifically, any YANG <xref target="RFC7950" format="default "/> data model is expected | information model. Specifically, any YANG <xref target="RFC7950" format="default "/> data model is expected | |||
| to define security exposure of the various parameters, and a <xref target="TR-18 1" format="default"/> data model | to define security exposure of the various parameters, and a <xref target="TR-18 1" format="default"/> data model | |||
| will be secured by the mechanisms defined for the management protocol used to | will be secured by the mechanisms defined for the management protocol used to | |||
| transport it.</t> | transport it.</t> | |||
| <t>Misconfiguration (whether unintentional or malicious) can prevent reach ability | <t>Misconfiguration (whether unintentional or malicious) can prevent reach ability | |||
| or cause poor network performance (increased latency, jitter, etc.). | or cause poor network performance (increased latency, jitter, etc.). | |||
| Misconfiguration of security credentials can cause a denial of service condition | Misconfiguration of security credentials can cause a denial-of-service condition | |||
| for the Babel routing protocol. | for the Babel routing protocol. | |||
| The information in this model discloses network topology, which can be used | The information in this model discloses network topology, which can be used | |||
| to mount subsequent attacks on traffic traversing the network.</t> | to mount subsequent attacks on traffic traversing the network.</t> | |||
| <t>This information model defines objects that can allow credentials (for this | <t>This information model defines objects that can allow credentials (for this | |||
| device, for trusted devices, and for trusted certificate authorities) to | device, for trusted devices, and for trusted certificate authorities) to | |||
| be added and deleted. Public keys may be exposed through | be added and deleted. Public keys may be exposed through | |||
| this model. This model requires that private keys and MAC | this model. This model requires that private keys and MAC | |||
| keys never be exposed. Certificates used by <xref target="RFC8968" format="defau lt"/> | keys never be exposed. Certificates used by <xref target="RFC8968" format="defau lt"/> | |||
| implementations use separate parameters to model the public | implementations use separate parameters to model the public | |||
| parts (including the public key) and the private key.</t> | parts (including the public key) and the private key.</t> | |||
| <t>MAC keys are allowed to be as short as zero-length. This is | <t>MAC keys are allowed to be as short as zero length. This is | |||
| useful for testing. Network operators are RECOMMENDED to follow | useful for testing. It is <bcp14>RECOMMENDED</bcp14> that network operators foll | |||
| current best practices for key length and generation of | ow current best practices for key length and generation of | |||
| keys related to the MAC algorithm associated with the key. | keys related to the MAC algorithm associated with the key. | |||
| Short (and zero-length) keys are highly susceptible to brute force attacks | Short (and zero-length) keys are highly susceptible to brute-force attacks | |||
| and therefore SHOULD NOT be used. | and therefore <bcp14>SHOULD NOT</bcp14> be used. | |||
| See the Security Considerations section of <xref target="RFC8967" format="defaul | See the security considerations as described in <xref target="RFC8967" sectionFo | |||
| t"/> | rmat="of" section="7"/> | |||
| for additional considerations related to MAC keys. | for additional considerations related to MAC keys; note that there are some spec | |||
| The fifth paragraph of <xref target="RFC8967" format="default"/> Security Consid | ific key value recommendations in the fifth paragraph. | |||
| erations | ||||
| makes some specific key value recommendations that should be noted. | ||||
| It says that if it is necessary to derive keys from a human-readable | It says that if it is necessary to derive keys from a human-readable | |||
| passphrase, "only the derived keys should be communicated to the routers" | passphrase, "only the derived keys should be communicated to the routers" | |||
| and "the original passphrase itself should be kept on the host used to | and "the original passphrase itself should be kept on the host used to | |||
| perform the key generation" (which would be the management system in the | perform the key generation" (which would be the management system in the | |||
| case of a remote management protocol). It also recommends that keys "should | case of a remote management protocol). It also recommends that keys "should | |||
| have a length of 32 octets (both for HMAC-SHA256 and BLAKE2s), and be | have a length of 32 octets (both for HMAC-SHA256 and BLAKE2s), and be | |||
| chosen randomly".</t> | chosen randomly".</t> | |||
| <t>This information model uses key sets and certification sets to provide | <t>This information model uses key sets and certification sets to provide | |||
| a means of grouping keys and certificates. This makes it easy to use | a means of grouping keys and certificates. This makes it easy to use | |||
| a different set per interface, the same set for one or more interfaces, | a different set per interface, use the same set for one or more interfaces, have | |||
| have a default set in case a new interface is instantiated and to | a default set in case a new interface is instantiated, and | |||
| change keys and certificates as needed.</t> | change keys and certificates as needed.</t> | |||
| </section> | </section> | |||
| <section anchor="iana-considerations" numbered="true" toc="default"> | <section anchor="iana-considerations" numbered="true" toc="default"> | |||
| <name>IANA Considerations</name> | <name>IANA Considerations</name> | |||
| <t>This document has no IANA actions.</t> | <t>This document has no IANA actions.</t> | |||
| </section> | </section> | |||
| <section anchor="Acknowledgements" numbered="true" toc="default"> | ||||
| <name>Acknowledgements</name> | ||||
| <t>Juliusz Chroboczek, Toke Hoeiland-Joergensen, David Schinazi, | ||||
| Antonin Decimo, | ||||
| Acee Lindem, and Carsten Bormann have been very helpful in | ||||
| refining this information model.</t> | ||||
| <t>The language in the Notation section was mostly taken from <xref target | ||||
| ="RFC8193" format="default"/>.</t> | ||||
| </section> | ||||
| </middle> | </middle> | |||
| <back> | <back> | |||
| <references> | <references> | |||
| <name>References</name> | <name>References</name> | |||
| <references> | <references> | |||
| <name>Normative References</name> | <name>Normative References</name> | |||
| <reference anchor="RFC2104" target="https://www.rfc-editor.org/info/rfc2 | ||||
| 104"> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2104. | |||
| <front> | xml"/> | |||
| <title>HMAC: Keyed-Hashing for Message Authentication</title> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119. | |||
| <author initials="H." surname="Krawczyk" fullname="H. Krawczyk"> | xml"/> | |||
| <organization/> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4868. | |||
| </author> | xml"/> | |||
| <author initials="M." surname="Bellare" fullname="M. Bellare"> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3339. | |||
| <organization/> | xml"/> | |||
| </author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7468. | |||
| <author initials="R." surname="Canetti" fullname="R. Canetti"> | xml"/> | |||
| <organization/> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7693. | |||
| </author> | xml"/> | |||
| <date year="1997" month="February"/> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174. | |||
| <abstract> | xml"/> | |||
| <t>This document describes HMAC, a mechanism for message authentic | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8966. | |||
| ation using cryptographic hash functions. HMAC can be used with any iterative cr | xml"/> | |||
| yptographic hash function, e.g., MD5, SHA-1, in combination with a secret shared | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8967. | |||
| key. The cryptographic strength of HMAC depends on the properties of the under | xml"/> | |||
| lying hash function. This memo provides information for the Internet community. | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8968. | |||
| This memo does not specify an Internet standard of any kind</t> | xml"/> | |||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="2104"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC2104"/> | ||||
| </reference> | ||||
| <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2 | ||||
| 119"> | ||||
| <front> | ||||
| <title>Key words for use in RFCs to Indicate Requirement Levels</tit | ||||
| le> | ||||
| <author initials="S." surname="Bradner" fullname="S. Bradner"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="1997" month="March"/> | ||||
| <abstract> | ||||
| <t>In many standards track documents several words are used to sig | ||||
| nify the requirements in the specification. These words are often capitalized. | ||||
| This document defines these words as they should be interpreted in IETF document | ||||
| s. This document specifies an Internet Best Current Practices for the Internet | ||||
| Community, and requests discussion and suggestions for improvements.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="BCP" value="14"/> | ||||
| <seriesInfo name="RFC" value="2119"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC2119"/> | ||||
| </reference> | ||||
| <reference anchor="RFC4868" target="https://www.rfc-editor.org/info/rfc4 | ||||
| 868"> | ||||
| <front> | ||||
| <title>Using HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512 with IPsec | ||||
| </title> | ||||
| <author initials="S." surname="Kelly" fullname="S. Kelly"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="S." surname="Frankel" fullname="S. Frankel"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2007" month="May"/> | ||||
| <abstract> | ||||
| <t>This specification describes the use of Hashed Message Authenti | ||||
| cation Mode (HMAC) in conjunction with the SHA-256, SHA-384, and SHA-512 algorit | ||||
| hms in IPsec. These algorithms may be used as the basis for data origin authent | ||||
| ication and integrity verification mechanisms for the Authentication Header (AH) | ||||
| , Encapsulating Security Payload (ESP), Internet Key Exchange Protocol (IKE), an | ||||
| d IKEv2 protocols, and also as Pseudo-Random Functions (PRFs) for IKE and IKEv2. | ||||
| Truncated output lengths are specified for the authentication-related variants | ||||
| , with the corresponding algorithms designated as HMAC-SHA-256-128, HMAC-SHA-384 | ||||
| -192, and HMAC-SHA-512-256. The PRF variants are not truncated, and are called | ||||
| PRF-HMAC-SHA-256, PRF-HMAC-SHA-384, and PRF-HMAC-SHA-512. [STANDARDS-TRACK]</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="4868"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC4868"/> | ||||
| </reference> | ||||
| <reference anchor="RFC3339" target="https://www.rfc-editor.org/info/rfc3 | ||||
| 339"> | ||||
| <front> | ||||
| <title>Date and Time on the Internet: Timestamps</title> | ||||
| <author initials="G." surname="Klyne" fullname="G. Klyne"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="C." surname="Newman" fullname="C. Newman"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2002" month="July"/> | ||||
| <abstract> | ||||
| <t>This document defines a date and time format for use in Interne | ||||
| t protocols that is a profile of the ISO 8601 standard for representation of dat | ||||
| es and times using the Gregorian calendar.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="3339"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC3339"/> | ||||
| </reference> | ||||
| <reference anchor="RFC7468" target="https://www.rfc-editor.org/info/rfc7 | ||||
| 468"> | ||||
| <front> | ||||
| <title>Textual Encodings of PKIX, PKCS, and CMS Structures</title> | ||||
| <author initials="S." surname="Josefsson" fullname="S. Josefsson"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="S." surname="Leonard" fullname="S. Leonard"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2015" month="April"/> | ||||
| <abstract> | ||||
| <t>This document describes and discusses the textual encodings of | ||||
| the Public-Key Infrastructure X.509 (PKIX), Public-Key Cryptography Standards (P | ||||
| KCS), and Cryptographic Message Syntax (CMS). The textual encodings are well-kn | ||||
| own, are implemented by several applications and libraries, and are widely deplo | ||||
| yed. This document articulates the de facto rules by which existing implementat | ||||
| ions operate and defines them so that future implementations can interoperate.</ | ||||
| t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="7468"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC7468"/> | ||||
| </reference> | ||||
| <reference anchor="RFC7693" target="https://www.rfc-editor.org/info/rfc7 | ||||
| 693"> | ||||
| <front> | ||||
| <title>The BLAKE2 Cryptographic Hash and Message Authentication Code | ||||
| (MAC)</title> | ||||
| <author initials="M-J." surname="Saarinen" fullname="M-J. Saarinen" | ||||
| role="editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="J-P." surname="Aumasson" fullname="J-P. Aumasson"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2015" month="November"/> | ||||
| <abstract> | ||||
| <t>This document describes the cryptographic hash function BLAKE2 | ||||
| and makes the algorithm specification and C source code conveniently available t | ||||
| o the Internet community. BLAKE2 comes in two main flavors: BLAKE2b is optimize | ||||
| d for 64-bit platforms and BLAKE2s for smaller architectures. BLAKE2 can be dir | ||||
| ectly keyed, making it functionally equivalent to a Message Authentication Code | ||||
| (MAC).</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="7693"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC7693"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 174"> | ||||
| <front> | ||||
| <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</ti | ||||
| tle> | ||||
| <author initials="B." surname="Leiba" fullname="B. Leiba"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2017" month="May"/> | ||||
| <abstract> | ||||
| <t>RFC 2119 specifies common key words that may be used in protoco | ||||
| l specifications. This document aims to reduce the ambiguity by clarifying tha | ||||
| t only UPPERCASE usage of the key words have the defined special meanings.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="BCP" value="14"/> | ||||
| <seriesInfo name="RFC" value="8174"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8174"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8966" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 966"> | ||||
| <front> | ||||
| <title>The Babel Routing Protocol</title> | ||||
| <author initials="J." surname="Chroboczek" fullname="J. Chroboczek"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="D." surname="Schinazi" fullname="D. Schinazi"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2021" month="January"/> | ||||
| <abstract> | ||||
| <t>Babel is a loop-avoiding, distance-vector routing protocol that | ||||
| is robust and efficient both in ordinary wired networks and in wireless mesh ne | ||||
| tworks. This document describes the Babel routing protocol and obsoletes RFC 61 | ||||
| 26 and RFC 7557.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8966"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8966"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8967" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 967"> | ||||
| <front> | ||||
| <title>MAC Authentication for the Babel Routing Protocol</title> | ||||
| <author initials="C." surname="Dô" fullname="C. Dô"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="W." surname="Kolodziejak" fullname="W. Kolodziejak | ||||
| "> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="J." surname="Chroboczek" fullname="J. Chroboczek"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2021" month="January"/> | ||||
| <abstract> | ||||
| <t>This document describes a cryptographic authentication mechanis | ||||
| m for the Babel routing protocol that has provisions for replay avoidance. This | ||||
| document obsoletes RFC 7298.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8967"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8967"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8968" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 968"> | ||||
| <front> | ||||
| <title>Babel Routing Protocol over Datagram Transport Layer Security | ||||
| </title> | ||||
| <author initials="A." surname="Décimo" fullname="A. Décimo"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="D." surname="Schinazi" fullname="D. Schinazi"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="J." surname="Chroboczek" fullname="J. Chroboczek"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2021" month="January"/> | ||||
| <abstract> | ||||
| <t>The Babel Routing Protocol does not contain any means to authen | ||||
| ticate neighbours or provide integrity or confidentiality for messages sent betw | ||||
| een them. This document specifies a mechanism to ensure these properties using | ||||
| Datagram Transport Layer Security (DTLS).</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8968"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8968"/> | ||||
| </reference> | ||||
| <reference anchor="ISO.10646"> | <reference anchor="ISO.10646"> | |||
| <front> | <front> | |||
| <title>Information Technology - Universal Multiple-Octet Coded Chara cter Set (UCS)</title> | <title>Information technology - Universal Coded Character Set (UCS)< /title> | |||
| <author> | <author> | |||
| <organization>International Organization for Standardization</orga nization> | <organization>International Organization for Standardization</orga nization> | |||
| </author> | </author> | |||
| <date year="2014"/> | <date year="2014"/> | |||
| </front> | </front> | |||
| <seriesInfo name="ISO Standard" value="10646:2014"/> | <seriesInfo name="ISO Standard" value="10646:2014"/> | |||
| </reference> | </reference> | |||
| <reference anchor="libpcap" target="https://wiki.wireshark.org/Developme | ||||
| nt/LibpcapFileFormat"> | <reference anchor="libpcap" target="https://gitlab.com/wireshark/wiresha | |||
| rk/-/wikis/Development/LibpcapFileFormat"> | ||||
| <front> | <front> | |||
| <title>Libpcap File Format</title> | <title>Libpcap File Format</title> | |||
| <author> | <author> | |||
| <organization>Wireshark</organization> | <organization>GitLab</organization> | |||
| </author> | </author> | |||
| <date year="2015"/> | <date year="2020" month="November"/> | |||
| </front> | </front> | |||
| <refcontent>Wireshark Foundation</refcontent> | ||||
| </reference> | </reference> | |||
| </references> | </references> | |||
| <references> | <references> | |||
| <name>Informative References</name> | <name>Informative References</name> | |||
| <reference anchor="RFC6241" target="https://www.rfc-editor.org/info/rfc6 | ||||
| 241"> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6241. | |||
| <front> | xml"/> | |||
| <title>Network Configuration Protocol (NETCONF)</title> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7950. | |||
| <author initials="R." surname="Enns" fullname="R. Enns" role="editor | xml"/> | |||
| "> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8193. | |||
| <organization/> | xml"/> | |||
| </author> | ||||
| <author initials="M." surname="Bjorklund" fullname="M. Bjorklund" ro | ||||
| le="editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="J." surname="Schoenwaelder" fullname="J. Schoenwae | ||||
| lder" role="editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="A." surname="Bierman" fullname="A. Bierman" role=" | ||||
| editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2011" month="June"/> | ||||
| <abstract> | ||||
| <t>The Network Configuration Protocol (NETCONF) defined in this do | ||||
| cument provides mechanisms to install, manipulate, and delete the configuration | ||||
| of network devices. It uses an Extensible Markup Language (XML)-based data enco | ||||
| ding for the configuration data as well as the protocol messages. The NETCONF p | ||||
| rotocol operations are realized as remote procedure calls (RPCs). This document | ||||
| obsoletes RFC 4741. [STANDARDS-TRACK]</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="6241"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC6241"/> | ||||
| </reference> | ||||
| <reference anchor="RFC7950" target="https://www.rfc-editor.org/info/rfc7 | ||||
| 950"> | ||||
| <front> | ||||
| <title>The YANG 1.1 Data Modeling Language</title> | ||||
| <author initials="M." surname="Bjorklund" fullname="M. Bjorklund" ro | ||||
| le="editor"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2016" month="August"/> | ||||
| <abstract> | ||||
| <t>YANG is a data modeling language used to model configuration da | ||||
| ta, state data, Remote Procedure Calls, and notifications for network management | ||||
| protocols. This document describes the syntax and semantics of version 1.1 of | ||||
| the YANG language. YANG version 1.1 is a maintenance release of the YANG langua | ||||
| ge, addressing ambiguities and defects in the original specification. There are | ||||
| a small number of backward incompatibilities from YANG version 1. This documen | ||||
| t also specifies the YANG mappings to the Network Configuration Protocol (NETCON | ||||
| F).</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="7950"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC7950"/> | ||||
| </reference> | ||||
| <reference anchor="RFC8193" target="https://www.rfc-editor.org/info/rfc8 | ||||
| 193"> | ||||
| <front> | ||||
| <title>Information Model for Large-Scale Measurement Platforms (LMAP | ||||
| s)</title> | ||||
| <author initials="T." surname="Burbridge" fullname="T. Burbridge"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="P." surname="Eardley" fullname="P. Eardley"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="M." surname="Bagnulo" fullname="M. Bagnulo"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="J." surname="Schoenwaelder" fullname="J. Schoenwae | ||||
| lder"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2017" month="August"/> | ||||
| <abstract> | ||||
| <t>This Information Model applies to the Measurement Agent within | ||||
| an LMAP framework. As such, it outlines the information that is configured or p | ||||
| reconfigured on the Measurement Agent or exists in communications with a Control | ||||
| ler or Collector within an LMAP framework. The purpose of such an Information M | ||||
| odel is to provide a protocol- and device-independent view of the Measurement Ag | ||||
| ent that can be implemented via one or more Control and Report Protocols.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="8193"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC8193"/> | ||||
| </reference> | ||||
| <reference anchor="TR-181" target="http://cwmp-data-models.broadband-for um.org/"> | <reference anchor="TR-181" target="http://cwmp-data-models.broadband-for um.org/"> | |||
| <front> | <front> | |||
| <title>Device Data Model</title> | <title>Device Data Model</title> | |||
| <author> | <author> | |||
| <organization>Broadband Forum</organization> | <organization>Broadband Forum</organization> | |||
| </author> | </author> | |||
| <date/> | <date month="November" year="2020"/> | |||
| </front> | </front> | |||
| <refcontent>Issue: 2 Amendment 14</refcontent> | ||||
| </reference> | </reference> | |||
| </references> | </references> | |||
| </references> | </references> | |||
| <section anchor="Acknowledgements" numbered="false" toc="default"> | ||||
| <name>Acknowledgements</name> | ||||
| <t><contact fullname="Juliusz Chroboczek"/>, <contact fullname="Toke Høila | ||||
| nd-Jørgensen"/>, <contact fullname="David Schinazi"/>, | ||||
| <contact fullname="Antonin Décimo"/>, <contact fullname="Roman Danyliw"/>, <cont | ||||
| act fullname="Benjamin Kaduk"/>, <contact fullname="Valery Smyslov"/>, <contact | ||||
| fullname="Alvaro Retana"/>, <contact fullname="Donald Eastlake"/>, <contact full | ||||
| name="Martin Vigoureux"/>, | ||||
| <contact fullname="Acee Lindem"/>, and <contact fullname="Carsten Bormann"/> hav | ||||
| e been very helpful in | ||||
| refining this information model.</t> | ||||
| <t>The language in the <xref target="notation" format="none">"Notation"</x | ||||
| ref> section was mostly taken from <xref target="RFC8193" format="default"/>.</t | ||||
| > | ||||
| </section> | ||||
| </back> | </back> | |||
| <!-- ##markdown-source: | ||||
| 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 | ||||
| UDBrYLZ1yJGz/wOPFC2OCpYAAA== | ||||
| </rfc> | </rfc> | |||
| End of changes. 148 change blocks. | ||||
| 775 lines changed or deleted | 270 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||