【网络协议】开放式最短路径优先协议OSPF详解(三)

前言

在第一部分和第二部分,我们了解了OSPF操作背后的概念。在第三部分,我们将讨论多区域OSPF。我们将了解它与单区域OSPF的不同,并探讨其操作背后的各种概念。

【网络协议】开放式最短路径优先协议OSPF详解(一)

【网络协议】开放式最短路径优先协议OSPF详解(二)

文章目录

LSA问题

当我们讨论OSPF的概念以及OSPF相对于其他路由协议(如RIP)的优势时,我们看到在OSPF中,路由器维护了一个"地图",该地图展示了它们域中的所有网络。这是相较于距离向量路由协议的一个主要优势,然而,这也可能成为一个大问题。

SPF算法负责维护OSPF中的路由信息,最佳路由是根据链路状态数据库中的路由计算得出的,该数据库在域中的所有路由器上是相同的。这意味着,如果网络拓扑发生变化,SPF算法必须在域中的所有路由器上运行。

上面的图示说明了当OSPF更新被发送到区域内所有路由器时会发生什么。

在一个有三四个路由器的网络中,这可能不是一个大问题,但你能想象SPF算法对一个有数百个路由器的网络会产生怎样的影响吗?

多区域OSPF

多区域OSPF是解决这些问题的方案。在这种实现中,路由器将链路状态数据库限制在各自的区域内,这意味着每个区域将有一个链路状态数据库。反过来,SPF计算也仅限于某个区域,从而减轻了路由器资源的负担。

多区域OSPF是将LSA更新本地化到路由器的一种方式。在上述场景中,区域0中的路由器将拥有同步的链路状态数据库,区域1中的路由器也将有自己的链路状态数据库,区域2中的路由器也是如此。

网络中的通信将通过使用汇总LSA来更新其他区域。这意味着区域1中的路由器将发送一个汇总LSA到区域0,然后区域0将把这个汇总路由发送到区域2。区域2中的路由器也是如此。

术语

在多区域OSPF域中,有几个术语用来描述路由器。下面的拓扑图展示了一个多区域OSPF路由域。

ABR -- 在上面的网络中,分隔两个区域的路由器称为ABR(区域边界路由器)。在这个场景中,R1和R4是ABR。R1分隔了区域0和区域1,而R4分隔了区域2和区域0。ABR也可以描述为具有不同区域接口的路由器。

注意:

在OSPF中,我们只能在ABR和ASBR中进行网络汇总。

区域0中的路由器 位于骨干区域。所有区域必须连接到区域0,才能实现通信。

ASBR -- 也称自治系统边界路由器,是连接到不同自治系统的路由器。在上面的场景中,R2是ASBR,因为它的一个接口连接到互联网。

注意: 在多区域OSPF中,ABR必须至少有一个接口连接到区域0。

LSA类型

路由器的链路状态数据库由链路状态通告(LSA)组成。OSPF中有几种类型的LSA,具体如下所示:

  • 类型1 LSA -- 路由器LSA
  • 类型2 LSA -- 网络LSA
  • 类型3 LSA -- ABR汇总路由
  • 类型4 LSA -- 汇总LSA ASBR位置
  • 类型5 LSA -- ASBR汇总路由

配置多区域OSPF

在下面显示的拓扑中,我们有六个路由器,分布在三个区域中。我们的任务是配置多区域OSPF,并确保PC之间的完全连接。

在这个实验中,当主机之间实现端到端的连通性时,配置就算成功。

使用的IP地址规划如下所示。

步骤 1: 配置网络声明,指示每个网络的区域

注意: 配置OSPF网络的一个好方法是使用每个接口的具体IP地址,并采用全"零"的通配符掩码。

该网络的网络声明如下所示。

步骤 2: 在配置完网络声明后,我们可以在R2上配置静态默认路由并进行重新分发。

通过此配置,我们应该能够看到所有路由。我们可以检查R3和R6的路由表,查看它们之间的差异。

正如我们从两台路由器上看到的那样,所有路由都出现在它们的路由表中,这些输出中的区域间路由被标记为OIA------用红色突出显示,这些是来自其他区域的路由。标记为O*E2的路由是外部路由。然而,如果我们检查它们的链路状态数据库,我们将注意到其中的差异。

从上面的输出中可以看到,尽管R3在其路由表中有所有路由,但它的链路状态数据库仅包含区域0中的路由。它接收的所有其他路由都标记为类型4或5。R6的OSPF数据库也是如此,它仅包含来自区域2中路由器的LSA信息。所有其他信息在ABR处被抑制。

相关推荐
iOS技术狂热者1 小时前
Flutter 音视频播放器与弹幕系统开发实践
websocket·网络协议·tcp/ip·http·网络安全·https·udp
W说编程1 小时前
《UNIX网络编程卷1:套接字联网API》第5章 TCP客户服务器程序示例
c语言·网络·网络协议·tcp/ip·unix·tcp
网络抓包与爬虫3 小时前
flutter WEB端启动优化(加载速度,加载动画)
websocket·网络协议·tcp/ip·http·网络安全·https·udp
网络抓包与爬虫3 小时前
从头开发一个Flutter插件(二)高德地图定位插件
websocket·网络协议·tcp/ip·http·网络安全·https·udp
色的归属感4 小时前
一款功能强大的手机使用情况监控工具
websocket·网络协议·tcp/ip·http·网络安全·https·udp
iOS技术狂热者4 小时前
【Android开发基础】手机传感器信息的获取
websocket·网络协议·tcp/ip·http·网络安全·https·udp
swift开发pk OC开发11 小时前
如何轻松查看安卓手机内存,让手机更流畅
websocket·网络协议·tcp/ip·http·网络安全·https·udp
itachi-uchiha12 小时前
关于UDP端口扫描概述
网络·网络协议·udp
swift开发pk OC开发13 小时前
flutter框架中文文档,android智能手机编程答案
websocket·网络协议·tcp/ip·http·网络安全·https·udp
小白学大数据16 小时前
异步读取HTTP响应体的Rust实现
网络协议·http·rust