众所周知,在 OSPF 配置期间,我们使用该区域。每个区域都有不同的编号,而只有一个区域(区域 0)可以在所有其他附属区域之间建立通信。
我很困惑,因为我们在所有区域都使用相同的配置技术,但如果我们可以直接连接所有 PC,我不知道为什么要使用区域。
众所周知,在 OSPF 配置期间,我们使用该区域。每个区域都有不同的编号,而只有一个区域(区域 0)可以在所有其他附属区域之间建立通信。
我很困惑,因为我们在所有区域都使用相同的配置技术,但如果我们可以直接连接所有 PC,我不知道为什么要使用区域。
OSPF 区域内的所有路由器都保存一个链路状态数据库(请注意,这与主路由表完全分开),它们知道该区域内的所有其他路由器及其链路。区域内的每个路由器都构建了该区域的拓扑树,以自身为根,以最短路径到达所有其他链路/路由器。这最后一部分很重要。
当一个区域变大时,每个路由器必须维护的链路状态数据库(树或拓扑)也会变大。这意味着路由器处理链路状态(拓扑)更改的工作量会越来越大,因为现在链路状态数据库中有大量条目。随着树的树枝/树叶变得越来越多,树变得更大并且更难以“跟上”。需要记住的另一件事是,随着区域(网络)变大,链路状态变化的可能性更大,因此链路状态数据库重新计算的可能性也更大。虽然其中的细节有点“超出了本答案的范围”,但 OSPF 链路状态更新过程也与此处相关。
最终,随着单个区域变得越来越大,SPF 重新计算本身将需要更长的时间才能完成,并且由于各种原因,您更有可能发生这些 SPF 重新计算 - 这个故事的寓意是您的路由器的 CPU 会很伤心。
OSPF 区域的“优势”在于,它们提供了一种方法,可以通过减少链路状态数据库中的条目和推送链路状态数据库维护的责任,来减轻对路由器的需求,如果它们不在单个区域中的话到各自区域的区域边界路由器。它提供了一种保持树大小易于管理的方法。
设计/实施多区域 OSPF 必须进行彻底的思考和规划 - 在许多情况下,多区域 OSPF 中的不良设计可能会影响某些人。
使用区域不一定会提高“通信速度”,但它可以为您的 OSPF 网络中的路由器带来显着的性能优势(如果做得好),尤其是当您的网络非常大时,因为它们的 CPU 不必工作一样难。
如果您要特别询问区域在 OSPF 中的作用,有很多资源可以提供丰富的信息。这些只是一些选择:
但是,这是对“OSPF 区域的优势是什么?”的一个很好的回答,引自 Cisco 设计技术说明,什么是 OSPF 区域:
OSPF 网络可以划分为多个子域,称为区域。区域是具有相同区域标识的 OSPF 网络、路由器和链路的逻辑集合。区域内的路由器必须维护其所属区域的拓扑数据库。路由器没有关于其区域外的网络拓扑的详细信息,从而减少了其数据库的大小。
简而言之,OSPF 区域允许您对网络拓扑进行分段,以实现更大的可扩展性并保持更高级别的控制。
编辑: 回应您的评论“OSPF 区域如何提高通信速度?”:
就其本身而言,使用 OSPF 区域不会提高通信速度。它消除了通信/可扩展性的障碍。
可以这样想(这不是一个完美的类比,并且过度简化了问题,但它应该有助于给出总体思路):
如果一家公司每天接听数百个电话,并且必须将所有电话都发送给一个秘书,那么打入公司的电话就会很慢。但是,如果有一位中央秘书知道许多秘书都在公司的不同部分接听电话,则可以更快地处理电话。
当任何一个设备的路由表变得太大/无法管理时,就会出现类似的问题。将它们拆分为更易于管理的区域有助于加快到达目的地的交通速度。
OSPF 配置中“区域”的优点是:
我偶然发现了第二个区域的另一种用途。如果您的区域 0 发布了一条默认路由,并且不希望将这条默认路由注入到您的 OSPF 设备中,该设备有自己的互联网网关,并且该设备无法进行入站路由过滤,则需要设置一个新区域不使用默认信息的来源。
否则,当 OSPF 出现在所述设备上时,它将通过 OSPF 学习默认路由,这将覆盖它自己的默认路由。
在这个例子中,我的“设备”是一个 VPN 网关 (steelconnect),它有自己的 WAN 接口,用于连接到互联网,并通过 OSPF 从我的第 3 层交换机的 LAN 接口上学习我的内部路由。
发生的情况是设备启动并连接互联网,然后一旦 OSPF 完成加载,它就会断开互联网,因为其学习的 OSPF 路由通过 LAN 接口和关联的防火墙为其提供默认路由,而该路由不会为其 VPN 终端工作。
在第二个 OSPF 进程中使用第二个 OSPF 区域允许您在不分发默认路由的情况下运行该实例。