2. UPA 的生成 (Generation of the UPA)
对于由 ABR 或 ASBR 发起的 summary prefix 所汇总的前缀, ABR 或 ASBR 可以在以下情况下为该前缀生成 UPA:
-
先前可达的前缀变为不可达.
-
任何计划维护场景:
-
发起该前缀的节点在 IS-IS 中通告 overload state, 或在 OSPFv2 [RFC8770] 中通告 H-bit, 或在 OSPFv3 [RFC5340] 中通告 R-bit; 或
-
从 ABR 或 ASBR 到达该前缀的 metric 超过配置阈值.
-
ABR 或 ASBR 上 UPA 的生成和传播是可选的, 并且应当由配置开关控制. 该功能应当默认禁用.
实现可以把 UPA 生成和传播限制为特定前缀, 例如 host prefixes、Segment Routing over IPv6 (SRv6) locators 或类似对象. 这类过滤是可选的, 并且应当通过配置控制.
UPA 的意图是为目的地从可达到不可达的转换提供 event-driven signal (事件驱动信号). 它并非用于通告持久状态.
当导致 UPA 生成的原因不再存在时, ABR 或 ASBR 必须撤回先前通告的 UPA, 例如前缀可达性已恢复, 或其 metric 已变化到低于配置阈值.
即使原因仍然存在, UPA advertisements 也应当在一段时间后撤回. 该时间应足以让 UPA 在全网泛洪并被接收节点处理, 同时限制 UPA 在网络中的存在时间. UPA 在网络中保留的时间还应反映该 UPA 通告所面向的具体用例. 如果不撤回 UPA, 会导致陈旧信息保留在区域内所有路由器的 link state databases 中.
实现应当提供配置选项, 用于在发起 UPA 的 ABR 或 ASBR 上指定 UPA lifetime.
由于 IS-IS 中的 UPA advertisements 会在现有 Link State PDUs (LSPs) 中通告, 且 IS-IS 的泛洪单位是 LSP, 因此推荐在可能时把 UPA 放在专用于这类通告的 LSP 中. 这样可以在通告和撤回 UPA 时, 尽量减少需要更新的 LSP 数量.
在 OSPFv2 和 OSPFv3 中, 每个 inter-area 和 external prefix 都在自己的 LSA 中通告, 因此上述考虑不适用于 OSPFv2 和 OSPFv3.
还推荐实现限制任一时刻可发起的 UPA advertisements 数量, 以限制网络中任一时间点存在的 UPA 数量. UPA 实现应当提供配置选项, 用于限制这类 UPA 的数量.