跳到主要内容

1. 简介 (Introduction)

链路状态 Interior Gateway Protocols (IGPs, 内部网关协议), 例如 Intermediate System to Intermediate System (IS-IS) [ISO10589]、Open Shortest Path First version 2 (OSPFv2) [RFC2328] 和 Open Shortest Path First version 3 (OSPFv3) [RFC5340], 主要用于在同一 Autonomous System (AS, 自治系统) 内的路由器之间分发路由信息, 并计算各节点通告的 IPv4 或 IPv6 前缀可达性. 每个节点会通告本地邻接、直连前缀、能力等状态. 区域内所有路由器的这些状态共同形成 Link State Database (LSDB, 链路状态数据库), 用来描述区域拓扑, 并保存前缀、路由器能力等附加状态信息.

运行链路状态路由协议的网络规模增长时, 状态数量也会增加, 从而带来可扩展性和收敛挑战. 将网络组织为 level/area 和 IGP domain 有助于把链路状态信息限制在一定边界内. 但是, 与前缀可达性相关的状态常常需要跨多区域/层级和/或多域 IGP 网络传播. IGP summarization 是一种网络工程技术, 用于把多个较小且连续的 IP 网络合并为一个更大的 summary route. 汇总等技术被用来缓解在本地区域/域之外通告前缀状态带来的扩展性挑战. 然而, 这也会抑制单个前缀状态, 而这些状态对于触发 IGP 之外的快速收敛机制很有用, 例如 Border Gateway Protocol (BGP) Prefix-Independent Convergence (PIC) [BGP-PIC].

类似地, 当路由器需要退出服务进行维护时, 通常会先从该节点排空流量再将其关闭. 在 IS-IS 中, 这通常通过设置 OVERLOAD bit 并对该节点通告的所有前缀使用 high metric 实现. OSPFv2 中可使用 router-LSA [RFC6987] 中所有非 stub 链路的 MaxLinkMetric cost, 或使用 H-bit [RFC8770]; OSPFv3 [RFC5340] 中可使用 R-bit.

当这些节点的前缀被 Area Border Router (ABR) 或 Autonomous System Boundary Router (ASBR) 汇总时, 区域或域外的节点并不知道这些被汇总前缀已经变得不可达. 本文档提出协议扩展, 以向后兼容方式携带这类前缀的信息.

本文档不定义如何通告一个不可用于路由的前缀. IS-IS 的相关机制已在 [RFC5305] 和 [RFC5308] 中定义, OSPFv2 已在 [RFC2328] 中定义, OSPFv3 已在 [RFC5340] 中定义.

本文档定义一种方法, 用于指示前缀为何以会将其排除在路由计算之外的 metric 被通告. 这样做是为了把该场景与其他可能使用这类 metric 通告的情况区分开.

IGP 通常只通告前缀的可达性. 对于先前作为可达前缀通告的前缀, 撤回先前的前缀通告即可使其变为不可达. 但是, 本节前面提到的一些用例要求对某个前缀发出不可达信号, 即使该前缀先前并未被显式通告为可达, 因为它被 summary prefix 的可达性覆盖.

本文档在 IS-IS、OSPFv2 和 OSPFv3 中定义两个新 flag. 这些 flag 支持通告 prefix unreachability (前缀不可达性), 并同时给出通告不可达性的原因. 这里描述的功能称为 Unreachable Prefix Announcement (UPA, 不可达前缀通告).

本文档还定义 UPA 如何跨 IS-IS level 和 OSPF area 传播. 本文档中的术语 "OSPF" 同时涵盖 OSPFv2 和 OSPFv3 协议.

1.1. 需求语言 (Requirements Language)

本文档中的关键词 "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" 和 "OPTIONAL", 当且仅当它们按这里所示以全大写形式出现时, 应按 BCP 14 [RFC2119] [RFC8174] 的说明解释.