为使 OSPF 更高效且可扩展,OSPF 使用多个区域支持分层路由。 OSPF 区域是在 LSDB 中共享相同链路状态信息的一组路由器。

OSPF 可以使用以下两种方式之一实施:

利用多区域 OSPF,OSPF 可以把一个大型自治系统 (AS) 划分为更小的区域,以支持分层路由。 采用分层路由后,各个区域之间仍然能够进行路由(区域间路由),但许多处理器密集型的路由操作(例如重新计算数据库)在区域内进行。

例如,每当路由器收到与区域中拓扑更改有关的最新信息时(包括添加、删除或修改链路),路由器必须重新运行 SPF 算法,创建新的 SPF 树并更新路由表。 SPF 算法会占用很多 CPU 资源,且其耗费的计算时间取决于区域大小。

注意:拓扑更改以距离矢量格式分布到其他区域中的路由器。 换句话说,这些路由器只会更新其路由表,无需重新运行 SPF 算法。

一个区域中有过多路由器会使 LSDB 非常大并增加 CPU 的负载。 因此,将路由器有效分区可以把巨大的数据库分成更小、更易管理的数据库。

多区域 OSPF 的分层拓扑具有以下优势:

图 3 显示了这些优势。

例如,R2 是区域 51 的 ABR。 作为 ABR,它会将区域 51 路由总结到区域 0。 当其中一个总结链路断开时,仅在区域 51 内交换 LSA。 区域 51 中的路由器必须重新运行 SPF 算法来确定最佳路由。 但是,区域 0 和区域 1 中的路由器不接收任何更新;因此,它们不执行 SPF 算法。

本章重点介绍单区域 OSPF。