| rfc9885v2.txt | rfc9885.txt | |||
|---|---|---|---|---|
| skipping to change at line 114 ¶ | skipping to change at line 114 ¶ | |||
| defining new attributes, further adding to the scaling pressures. | defining new attributes, further adding to the scaling pressures. | |||
| The original TLV definition limits each TLV to a maximum of 255 | The original TLV definition limits each TLV to a maximum of 255 | |||
| octets of payload, which is becoming increasingly problematic. | octets of payload, which is becoming increasingly problematic. | |||
| Some TLV definitions have addressed this by explicitly stating that a | Some TLV definitions have addressed this by explicitly stating that a | |||
| TLV may appear multiple times inside of a Link State PDU (LSP). | TLV may appear multiple times inside of a Link State PDU (LSP). | |||
| However, this has not been done for many currently defined TLVs, | However, this has not been done for many currently defined TLVs, | |||
| leaving the situation somewhat ambiguous. | leaving the situation somewhat ambiguous. | |||
| For example, [RFC5305] defines the Extended IS reachability TLV (22) | For example, [RFC5305] defines the Extended IS reachability TLV (22) | |||
| and [RFC5120] defines the MT Intermediate Systems TLV (222). These | and [RFC5120] defines the MT-ISN TLV (222). These documents do not | |||
| documents do not specify sending multiple TLVs for the same object | specify sending multiple TLVs for the same object and no other | |||
| and no other mechanism for expanding the information carrying | mechanism for expanding the information carrying capacity of the TLV | |||
| capacity of the TLV has been specified. | has been specified. | |||
| The intent of this document is to clarify and codify the situation by | The intent of this document is to clarify and codify the situation by | |||
| explicitly making multiple occurrences of a TLV the standard | explicitly making multiple occurrences of a TLV the standard | |||
| mechanism for scaling TLV contents. Any future document that | mechanism for scaling TLV contents. Any future document that | |||
| proposes a different mechanism for scaling TLV contents for a given | proposes a different mechanism for scaling TLV contents for a given | |||
| codepoint must explain why multiple occurrences of a TLV is not | codepoint must explain why multiple occurrences of a TLV is not | |||
| appropriate. | appropriate. | |||
| This document does not alter the encoding of any TLV where multiple | This document does not alter the encoding of any TLV where multiple | |||
| occurrences of a TLV are already defined. Some examples of this are: | occurrences of a TLV are already defined. Some examples of this are: | |||
| skipping to change at line 139 ¶ | skipping to change at line 139 ¶ | |||
| * Router CAPABILITY TLV (Type 242) [RFC7981] | * Router CAPABILITY TLV (Type 242) [RFC7981] | |||
| * Application-Specific SRLG (Type 238) [RFC9479] | * Application-Specific SRLG (Type 238) [RFC9479] | |||
| * Instance Identifier (Type 7) [RFC8202] | * Instance Identifier (Type 7) [RFC8202] | |||
| * Application-Specific Link Attributes (sub-TLV Type 16) [RFC9479] | * Application-Specific Link Attributes (sub-TLV Type 16) [RFC9479] | |||
| [RFC7356] has defined a 16-bit Length field for TLVs in flooding | [RFC7356] has defined a 16-bit Length field for TLVs in flooding | |||
| scoped Protocol Data Units (PDUs), in which case the problem | scoped Protocol Data Units (PDUs), in which case the problem | |||
| addressed by this document would not exist. However, introduction of | addressed by this document would likely not be encountered. However, | |||
| these new PDU types is not backwards compatible. Therefore, there is | introduction of these new PDU types is not backwards compatible. | |||
| a need to address how to expand the information advertised in | Therefore, there is a need to address how to expand the information | |||
| existing PDUs that use 8-bit length TLVs. | advertised in existing PDUs that use TLVs with 8-bit Length fields. | |||
| The mechanism described in this document has not been documented for | The mechanism described in this document has not been documented for | |||
| all TLVs previously. This document provides the necessary protocol | all TLVs previously. This document provides the necessary protocol | |||
| definition and discusses potential interoperability issues and | definition and discusses potential interoperability issues and | |||
| deployment challenges. | deployment challenges. | |||
| This document specifies a means for extending TLVs where no extension | This document specifies a means for extending TLVs where no extension | |||
| mechanism has been previously explicitly specified, and defines this | mechanism has been previously explicitly specified, and defines this | |||
| mechanism as the default extension mechanism for future TLVs. The | mechanism as the default extension mechanism for future TLVs. The | |||
| mechanism described in this document is applicable to top level TLVs | mechanism described in this document is applicable to top level TLVs | |||
| skipping to change at line 379 ¶ | skipping to change at line 379 ¶ | |||
| Type: 30 (1 octet) | Type: 30 (1 octet) | |||
| Length: 0 (1 octet) | Length: 0 (1 octet) | |||
| Routers that support MP-TLV for codepoints for which existing | Routers that support MP-TLV for codepoints for which existing | |||
| specifications do not explicitly define such support, but for which | specifications do not explicitly define such support, but for which | |||
| MP-TLV is applicable, SHOULD include this sub-TLV in a Router | MP-TLV is applicable, SHOULD include this sub-TLV in a Router | |||
| CAPABILITY TLV. | CAPABILITY TLV. | |||
| Scope of the associated Router CAPABILITY TLV is per level (S-bit | Scope of the associated Router CAPABILITY TLV is per level (S-bit | |||
| clear). | clear) [RFC7981]. | |||
| This advertisement is for informational purposes only. IS-IS | This advertisement is for informational purposes only. IS-IS | |||
| protocol implementations MUST NOT alter what is sent or how what is | protocol implementations MUST NOT alter what is sent or how what is | |||
| received is processed based on these advertisements. | received is processed based on these advertisements. | |||
| The sub-TLV intentionally does not provide a syntax to specify MP-TLV | The sub-TLV intentionally does not provide a syntax to specify MP-TLV | |||
| support on a per-codepoint basis. It is presumed that if such | support on a per-codepoint basis. It is presumed that if such | |||
| support is provided that it applies to all relevant codepoints. It | support is provided that it applies to all relevant codepoints. It | |||
| is understood that in reality, a given implementation might limit MP- | is understood that in reality, a given implementation might limit MP- | |||
| TLV support to particular codepoints based on the needs of the | TLV support to particular codepoints based on the needs of the | |||
| skipping to change at line 475 ¶ | skipping to change at line 475 ¶ | |||
| existing TLV, as long as there is space in the TLV, information | existing TLV, as long as there is space in the TLV, information | |||
| SHOULD NOT be split into multiple TLVs. If there is no space in the | SHOULD NOT be split into multiple TLVs. If there is no space in the | |||
| current LSP to fit the now larger TLV, the TLV SHOULD be moved to a | current LSP to fit the now larger TLV, the TLV SHOULD be moved to a | |||
| new LSP. | new LSP. | |||
| 9. IANA Considerations | 9. IANA Considerations | |||
| 9.1. MP-TLV Support Sub-TLV | 9.1. MP-TLV Support Sub-TLV | |||
| IANA has registered the following code point from the "IS-IS Sub-TLVs | IANA has registered the following code point from the "IS-IS Sub-TLVs | |||
| for IS-IS Router CAPABILITY TLV" registry: | for IS-IS Router CAPABILITY TLV" registry (see | |||
| <https://www.iana.org/assignments/isis-tlv-codepoints>): | ||||
| Type: 30 | Type: 30 | |||
| Description: MP-TLV Support for TLVs with Implicit Support | Description: MP-TLV Support for TLVs with Implicit Support | |||
| MP-TLV Applicability: N | MP-TLV Applicability: N | |||
| Reference: Section 7 of RFC 9885 | Reference: Section 7 of RFC 9885 | |||
| 9.2. Extension to IS-IS Top-Level TLV Registries | 9.2. Extension to IS-IS Top-Level TLV Registries | |||
| IANA has extended a number of registries under the "IS-IS TLV | IANA has extended a number of registries under the "IS-IS TLV | |||
| Codepoints" registry group (<https://www.iana.org/assignments/isis- | Codepoints" registry group (<https://www.iana.org/assignments/isis- | |||
| skipping to change at line 500 ¶ | skipping to change at line 501 ¶ | |||
| The following subsections provide the initial contents of the new | The following subsections provide the initial contents of the new | |||
| column for a number of existing registries. The initial values for | column for a number of existing registries. The initial values for | |||
| MP-TLV applicability defined in the following subsections are based | MP-TLV applicability defined in the following subsections are based | |||
| on the rule that MP-TLV is applicable to any codepoint that supports | on the rule that MP-TLV is applicable to any codepoint that supports | |||
| sub-TLVs, without regard to whether the sub-TLVs that are currently | sub-TLVs, without regard to whether the sub-TLVs that are currently | |||
| defined are sufficient to require MP-TLVs to be sent. | defined are sufficient to require MP-TLVs to be sent. | |||
| 9.2.1. MP-TLV for IS-IS Top-Level TLV Codepoints | 9.2.1. MP-TLV for IS-IS Top-Level TLV Codepoints | |||
| IANA has added the MP column to the "IS-IS Top-Level TLV Codepoints" | ||||
| registry (<https://www.iana.org/assignments/isis-tlv-codepoints>) and | ||||
| populated it as shown in Table 1. | ||||
| +===========+====================================+====+ | +===========+====================================+====+ | |||
| | Value | Name | MP | | | Value | Name | MP | | |||
| +===========+====================================+====+ | +===========+====================================+====+ | |||
| | 0 | Reserved | | | | 0 | Reserved | | | |||
| +-----------+------------------------------------+----+ | +-----------+------------------------------------+----+ | |||
| | 1 | Area Addresses | N | | | 1 | Area Addresses | N | | |||
| +-----------+------------------------------------+----+ | +-----------+------------------------------------+----+ | |||
| | 2 | IIS Neighbors | N | | | 2 | IIS Neighbors | N | | |||
| +-----------+------------------------------------+----+ | +-----------+------------------------------------+----+ | |||
| | 3 | ES Neighbors | N | | | 3 | ES Neighbors | N | | |||
| End of changes. 5 change blocks. | ||||
| 10 lines changed or deleted | 15 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||