[Cloud Networking] OSPF

2024-06-29  本文已影响0人  虎鲸1225

开放式最短路径优先(Open Shortest Path First)是一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码和汇总、层次区域划分等优点。

1. OSPF Area

为了适应大型网络,OSPF在AS内划分了多个Area,每个OSPF路由器值维护所在区域的完整链路状态信息。划分区域时,会创建一个称为Area 0的中心区域,其他区域始终与Area 0相连。

路由器分类 说明
区域内路由器IR 所连接的网络属于同一个区域,IR只运行一个OSPF协议实例。
主干路由器BBR 主干区域中的路由器
区域之间的路由器 ABR(汇聚IP) 连接到多个AS,且必须连到主干区域,为每个链接Area分别运行一个OSPF协议实例
AS边界路由器 ASBR 与其他AS交换路由信息
image.png

虚拟链路

下图中 R3 和 R4 在主干区域,但是需要通过Area3才能实现联通。这时,可以在主干区域的R3、R4之间配置一条 virtual link,使得主干区域连续,实际上这条链路是通过N1中的物理连接来进行通信

image.png

2. Route ID / DR / BDR

Router ID 路由器ID,32位无符号整数,默认用loopback接口中最大的IP作为 Router ID。

Name Info
DR Designated Router, 选举Router ID最大的路由为DR
只有DR能代表该网络发送网络的链路状态
BDR Backup Designated Router,选举Router ID第二大的路由为 BDR
DR发生故障的时候,BDR变成DR
DROTHER Not DR nor BDR
image.png
R1> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address       Interface
192.168.123.2   1   FULL/BDR      00:00:32    192.168.123.2 FastEthernet0/0
192.168.123.3   1   FULL/DR       00:00:31    192.168.123.3 FastEthernet0/0

R3> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address         Interface
192.168.123.1   1   FULL/DROTHER  00:00:36    192.168.123.1 FastEthernet0/0
192.168.123.2   1   FULL/BDR      00:00:39    192.168.123.2 FastEthernet0/0

R2> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address         Interface
192.168.123.1   1   FULL/DROTHER  00:00:31    192.168.123.1 FastEthernet0/0
192.168.123.3   1   FULL/DR       00:00:32    192.168.123.3 FastEthernet0/0

3. LSA / OSPF 邻居表 / LSDB / OSPF路由表

LSA (Link State Advertisement)链路状态通告,用于描述链路状态信息,路由器接口的状态信息,例如接口开销、连接的对象。

借用其他文章中的图 (好像简书不让放链接审核问题。。)


image.png

如上,OSPF在传递链路状态信息之前,需要建立 OSPF邻居关系 ,通过hello包文件里,OSPF邻居表显示了OSPF路由器之间的邻居状态,使用 display ospf peer 查看:

image.png
R1 > display ospf peer
    OSPF Process 1 with Router ID 10.0.1.1
            Neighbors
Area 0.0.0.0 interface 10.0.12.1(G1/0/0)'s neighbors
Router ID:10.0.12.1 Address: 10.0.12.2 GR State: Normal
  State: Rull Mode:Nbr is Master Priority:1
  DR: 10.0.12.1 BDR:10.0.12.2 MTU:0
  ...

LSDB(Link State DataBase, 链路状态数据库),用于描述AS内部的拓扑结构。

每个路由器负责发现、维护与邻居的关系,并将已知的邻居和链路费用 LSA报文 描述,通过可靠的泛洪与 AS 内的其他路由器周期性交互,每个 AS 内的路由器收到所有 LSA 并放入自己的 LSDB

每台路由器基于 LSDB,使用 SPF(Shortest Path First,最短路径优先) 算法进行计算,每台路由器都计算出一棵以自己为根、无环的、拥有最短路径的树,这样路由器就已经知道了到达所有网段的优选路径。

边界路由器可以通过距离矢量算法互相传递路由,从而实现整个网络的互联。

每隔一段时间或链路状态发生变化时,重新生成LSA,路由器通过泛洪将LSA通告出去,实现路由实时更新。

上一篇下一篇

猜你喜欢

热点阅读