ietf-corpus

rfc-6233

IS-IS Registry Extension for Purges

T. Li, L. Ginsberg
date2011-05 streamIETF areartg wgisis statusPROPOSED STANDARD pages4 canonicalhttps://www.rfc-editor.org/rfc/rfc6233 doi10.17487/RFC6233
IANA maintains the "IS-IS TLV Codepoints" registry. This registry documents which TLVs can appear in different types of IS-IS Protocol Data Units (PDUs), but does not document which TLVs can be found in zero Remaining Lifetime Link State PDUs (LSPs), a.k.a. purges. This document extends the existing registry to record the set of TLVs that are permissible in purges and updates the rules for generating and processing purges in the presence of authentication. This document updates RFC 3563, RFC 5304, and RFC 5310. [STANDARDS-TRACK]

updates

Extracted elements (15)

design-rationale §2

Extending the registry with a Purge column serves as an aid to subsequent documents (which can reference the registry as the definitive list) and to implementers (providing an easily accessible compendium), rather than scattering purge-TLV rules across multiple RFCs.

routing, registry

design-rationale §2

The purge status defined for a given TLV applies to all sub-TLVs defined for that TLV, simplifying the registry by avoiding per-sub-TLV entries.

routing, registry

interoperability-note §3

This document updates RFC 5304 and RFC 5310 by generalizing their authentication acceptance rules: previously, purges were only accepted if they contained only the Authentication TLV; now acceptance is governed by the registry-based Purge column.

routing, security

normative-requirement §2 MUST NOT

All TLVs not listed in the 'IS-IS TLV Codepoints' registry as permissible in purges MUST NOT appear in purges.

routing

normative-requirement §3 MUST NOT

An implementation MUST NOT accept a purge that contains a TLV not listed in the registry unless the purge also contains the Purge Originator Identification (POI) TLV (RFC 6232).

routing, security

normative-requirement §3 MUST NOT

An implementation that implements authentication MUST NOT accept a purge that contains any TLV listed in the registry that is not acceptable in a purge.

routing, security

normative-requirement §3 MUST

If an authentication-implementing IS accepts a purge without the POI TLV and inserts the POI TLV, it MUST also recompute authentication.

routing, security

normative-requirement §3 MAY

If multiple purges are received for the same LSP, the implementation MAY propagate any one of the purges.

routing

normative-requirement §3 MUST NOT

ISs MUST NOT accept LSPs with a non-zero Remaining Lifetime that contain the POI TLV.

routing

normative-requirement §3 MUST

Purges that are accepted MUST be propagated without removal of TLVs.

routing

normative-requirement §3 MUST

When generating a purge, an implementation that implements authentication MUST first remove any TLVs not listed in the registry as acceptable in purges, then MUST add the POI TLV, then MAY add other registry-permitted TLVs, and finally adds authentication.

routing, security

protocol-element §1

A purge is an LSP with a zero Remaining Lifetime used to cause IS-IS routers to discard stored link-state information. Per ISO 10589, purge generation originally retained only the LSP header, discarding all TLVs; subsequent extensions (RFC 5304, RFC 5310) allow certain TLVs to be included.

routing

protocol-element §3

The Purge Originator Identification (POI) TLV (defined in RFC 6232) serves as the key authenticating element in purges and must be added during purge generation by authentication-capable implementations.

routing, security

registry §4

The 'IS-IS TLV Codepoints' registry (originally defined in RFC 3563) is extended with a new 'Purge' column. A 'y' indicates the TLV MAY appear in a purge; an 'n' indicates it MUST NOT. Initially, TLV type 10 (Authentication) and TLV type 137 (Dynamic hostname) are marked 'y'; all others are 'n'.

routing, registry

security-consideration §5

This document introduces no new security issues. The registry extension and authentication rule updates are procedural improvements that clarify existing behavior without expanding the attack surface.

security, routing