跳到主要内容

3. 在 IS-IS 中支持 UPA (Supporting UPA in IS-IS)

[RFC5305] 定义了使用 4 octets metric information 通告 IPv4 prefixes 的编码, 且 [RFC5305] 第 4 节规定:

如果某个前缀以大于 MAX_PATH_METRIC (0xFE000000, 见第 3.0 段) 的 metric 通告, 则该前缀在正常 SPF 计算期间不得被考虑. 这允许为了构建正常 IP 路由表之外的目的而通告前缀.

类似地, [RFC5308] 定义了使用 4 octets metric information 通告 IPv6 prefixes 的编码, 且 [RFC5308] 第 2 节说明:

如果某个前缀以大于 MAX_V6_PATH_METRIC (0xFE000000) 的 metric 通告, 则该前缀在正常 Shortest Path First (SPF) 计算期间不得被考虑. 这允许为了构建正常 IPv6 路由表之外的目的而通告前缀.

该功能可用于以一种表示可达性已丧失的方式通告 IPv4 或 IPv6 前缀, 且不要求网络中的所有节点都升级为支持该功能.

3.1. 在 IS-IS 中通告 UPA

网络中不支持 UPA 的现有节点不会在路由计算期间使用 UPA, 但会继续在区域内泛洪这些 UPA. 这使得此类通告可以泛洪, 而无需升级网络中的所有节点来支持本规范.

负责把 UPA advertisements 传播到其他区域或域的 ABR 或 ASBR, 也预期能够识别 UPA advertisements.

按照第 3 节引用的定义, 任何 metric value 大于 0xFE000000 的 prefix advertisement 都可用于正常路由计算之外的目的. 在 IS-IS 中通告 UPA 时, 必须使用这样的 metric.

[RFC7370] 引入了 "IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability" registry, 该注册表列出用于通告不同类型 prefix reachability 的 TLV. IS-IS 中的 UPA 支持该注册表标识的所有这类 TLV 中通告的前缀, 例如:

  • SRv6 Locator [RFC9352]
  • Extended IP reachability [RFC5305]
  • Multi-Topology (MT) IP Reach [RFC5120]
  • IPv6 IP Reach [RFC5308]
  • MT IPv6 IP Reach [RFC5120]
  • IPv4 Algorithm Prefix Reachability TLV [RFC9502]
  • IPv6 Algorithm Prefix Reachability TLV [RFC9502]

3.2. 在 IS-IS 中信令 UPA

在 IS-IS 中, 一个前缀可能因为多种原因以高于 0xFE000000 的 metric 通告. 虽然 IS-IS 规定了这类 metric 的处理方式, 但仍需要显式信令来区分 UPA 与其他 high-metric advertisements.

本文档在 IPv4/IPv6 Extended Reachability Attribute Flags [RFC7794] 中定义两个新 bit:

U-Flag: Unreachable Prefix Flag (bit 5). 设置时, 表示该前缀不可达.

UP-Flag: Unreachable Planned Prefix Flag (bit 6). 设置时, 表示该前缀由于 planned event (例如计划维护) 而不可达.

发起节点禁止在未设置 U-flag 的情况下设置 UP-flag.

如果通告中未设置 U-flag, 接收节点必须忽略 UP-flag.

带 U-flag 通告的前缀必须把 metric 设为大于 0xFE000000 的值. 如果前缀 metric 小于或等于 0xFE000000, 则必须忽略这两个 flag.

3.3. 在 IS-IS 中传播 UPA

负责在 level 之间传播 UPA advertisements 的 IS-IS L1/L2 routers 需要识别此类通告. 如果不能识别, UPA 将无法到达远端区域中的路由器.

IS-IS 允许 IP prefixes 在 level 1 和 level 2 之间双向传播. 只有当源 level 中前缀可达时才会传播, 即前缀只会从其可达的 level 传播. 对 UPA 禁止应用这种可达性要求, 因为 UPA 传播的是不可达性.

IS-IS L1/L2 routers 可以选择把收到的 UPA 通告到其他区域, 包括向上和/或向下传播. 传播 UPA 时, 必须保留原始 metric value. 重新通告 UPA 时, 禁止考虑到达收到的 UPA 发起者的 cost.