一张图看懂OSPF邻接关系建立及报文类型

对于很多学习网络的同学来说,可能对于如何在路由器上配置OSPF比较熟悉了,但是OSPF邻接关系是如何建立起来的呢?本文将介绍OSPF邻接关系从初始状态到最后完成建立的全过程,通过学习这一部分,可以深入了解OSPF协议的全过程,对于网络排错也有很大帮助。

一、OSPF建立过程图

OSPF从开始到邻接关系建立,全过程如图所示。(该图说明了在BMA网络【广播网络】下OSPF邻接状态大的建立过程,其他模式与此略有不同)
在这里插入图片描述

二、OSPF邻接关系建立描述

OSPF邻接关系建立,说起来很复杂,但是其实很简单。总得来看,就是发现OSPF邻居,并且互相交换所知的网络信息的过程。
**首先,OSPF要互相发现对方。**该过程是通过发送Hello包实现的,运行OSPF的路由器一旦上线,就会想运行OSPF协议的端口上发送OSPF Hello包。该包含有一个32位的邻居字段,描述了自己所有已知的OSPF邻居。(注意,这里是邻居而不是邻接)换句话说,只要收到了一其他运行OSPF的路由器发送的Hello包,就会把该路由器的Router ID记录到Hello包中。这样,当一个OSPF路由器收到其他人发送的含有自己Router ID的Hello包时,就说明对方已经发现自己了,因此也就可以进行下一步。这时,我们说两个OSPF路由器建立了邻居关系。
其次,OSPF要互换自己所知道的网络的信息。 OSPF作为动态路由协议,之所以可以动态生成路由,就是因为运行OSPF协议的路由器之间互相交换了自己说知道的网络拓扑信息,也因此知道了整个网络的拓扑结构。在OSPF中,描述自己所知道的网络信息的报文时DD报文,因此只需要互相发送DD报文,就可以先告诉对方自己所知道的网络信息。但是要注意,DD报文中没有详细的网络信息。
此外,在DD报文互相交换之前,建立邻居的OSPF路由器之间还要发送一个空的DD报文,以便协商主从。
最后,OSPF路由器要发送详细的网络信息,以便达到网络拓扑结构认识的统一。该过程的实现是依托于LSR、LSU和LSACK报文实现的。LSR报文用于请求对方路由器的某一个网络的信息;LSU用于在收到LSR报文后向对方路由器回送某一个网络的信息;LSACK用于在收到LSU后向对方回复表示自己已经收到该信息。

三、OSPF报文类型总结

综上所述,OSPF一共有5种报文。
1、Hello报文。
用于发现OSPF邻居。
2、DD报文。
DD是Database Description的简写,用于描述LSDB。
3、LSR报文。
LSR是Link state Request的简写,用于向OSPF邻居请求LSU。
4、LSU报文。
LSU是Link State Update的简写,用于向对方发送描述网络的信息。
5、LSACK报文。
LSACK是Link State Ackowladgement的简写,用于回复LSU报文。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/118371333

  • 12
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
OSPF(Open Shortest Path First)是一种链路状态协议,是用于在IP网络中动态计算路由的一种协议。在OSPF协议中,每个路由器必须与其他路由建立邻接关系,才能进行路由信息的交换。 下面是OSPF邻接关系建立过程: 1. 发现邻居:当一个OSPF路由器启动时,它会向网络中发送Hello消息,用于发现其他OSPF路由器并建立邻接关系。这些Hello消息包含了路由器的ID、优先级、Hello间隔等信息。 2. 确认邻居:当一个OSPF路由器收到来自其他路由器的Hello消息时,会检查消息中的参数,确认对方是否符合邻居条件,比如是否在同一网段、是否具有相同的OSPF区域号等。如果符合条件,则会返回一条确认消息。 3. 发送DBD:在确认了邻居关系之后,两个OSPF路由器会交换数据库描述消息(DBD),用于了解彼此的LSDB(链路状态数据库)情况。DBD消息包含了版本号、LSA序列号、LSA类型等信息。 4. 发送LSR和LSU:在交换了DBD消息之后,如果两个OSPF路由器的LSDB有差异,则需要进行同步。此时,一个OSPF路由器会向另一个路由器发送链路状态请求(LSR)消息,请求对方提供缺失的LSA(链路状态记录)。对方收到LSR消息后,会回复链路状态更新(LSU)消息,提供请求的LSA。 5. 最终确认:当两个OSPF路由器完成了LSDB同步之后,它们会向对方发送最终确认(ACK)消息,表示邻接关系已经建立成功。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值