Purge Originator Identification TLV for IS-IS
Extracted elements (10)
IS-IS floods purges throughout an area without identifying which IS initiated the purge, making it difficult for network operators to locate the purge origin. Field experience identified implementation deficiencies and pre-ISO-TC1 implementations that improperly generate purges upon receiving corrupted LSPs as the motivating scenarios.
Legacy systems strictly conforming to RFC 5304 or RFC 5310 will discard purges carrying the new POI TLV when authentication is in use, because the additional TLV changes the authenticated content. A coordinated domain-wide upgrade is required before deployment.
If an IS generates a purge, it SHOULD include the POI TLV in the purge with its own system ID.
If an IS receives a purge that does not include the POI TLV, it SHOULD add this TLV with both its own system ID and the system ID of the IS from which it received the purge, thereby recording the upstream source.
Implementations SHOULD include one instance of the Dynamic hostname TLV in a purge if the POI TLV is included.
The POI TLV SHOULD be found in all purges and MUST NOT be found in LSPs with a non-zero Remaining Lifetime.
The Dynamic hostname TLV (type 137, RFC 5301) is extended for use in purges to aid rapid identification of the purge originator. Only the local hostname should be inserted; implementations SHOULD include one instance if the POI TLV is included.
IANA assigned code point 13 to the 'Purge Originator Identification' TLV in the IS-IS 'TLV Codepoints' registry, with applicability flags IIH:n, LSP:y, SNP:n, Purge:y.
Using the POI TLV with authentication (RFC 5304 or RFC 5310) will cause legacy systems in strict conformance with those RFCs to discard purges, potentially compromising routing database consistency. Therefore, all implementations in an authentication domain MUST be upgraded to receive the POI TLV before any IS is permitted to generate a purge containing it.
The Purge Originator Identification (POI) TLV is CODE 13, with a LENGTH field covering the total value, a 1-octet count of system IDs (values 1 or 2 only), the system ID of the IS that inserted the TLV, and an optional system ID of the IS from which the purge was received.