ospf协议_详解OSPF协议

  • Post author:
  • Post category:其他





今天来给大家讲讲




OSPF协议








OSPF是一种基于SPF算法的链路状态路由协议。

223042aed98f3fae8c750df490c03a61.png

e815d5865d114689b07d44001f15a395.png

上图是在一个OSPF区域里面添入一台新的路由器的时候,OSPF协议的工作过程,如果你能非常详细的叙述出这张图的话,基本上OSPF协议的工作过程你就掌握了。

首先大家要清楚,一台运行了OSPF协议的路由器,最终都会存储三张表:邻居表、拓扑表、路由表。下面以这三张表的产生过程为线索,来分析在这个过程中,路由器发生了那些变化,从而说明OSPF协议的工作过程。


(一)邻居表的建立

一台新加入OSPF区域的路由器首先要跟邻居路由器建立邻接关系,过程如下:

223042aed98f3fae8c750df490c03a61.png

4599b7c701eed4940b0e8cd2da412ffc.png
223042aed98f3fae8c750df490c03a61.png

90f0db36e248b955da1112581b870f2e.png

新路由器发出第一个hello分组以后等待应答,等待的时间间隔为hello分组的四倍等待期间的状态称为路由器的初始状态,等待期间,新路由器从另外一台路由器那里收到hello分组,并获知DE和BDR,如果没有,则开始选择。网络上的其他路由器收到新路由器发的hello0分组以后将该路由器的router Tn加入到拓扑数据库中,并发一回应hello分组,其中包含自己的router ID所有邻居组成的列表。

223042aed98f3fae8c750df490c03a61.png

8e27460db6c05ad25cc5f51f20e97989.png

新路由器看到自己的ID出现在其他路由器应答的邻居列表中建立了邻接关系,新路由器将其状态改为双向。

通过上面3步,新加入的路由器和其邻居路由器已经建立了邻接关系。


(二)拓扑表的建立

在建立拓扑表的时候,新加入的路由器要经历预启动状态、交换状态、加载状态、完全邻接状态。下面就将此过程,以图的形式展示给大家:
223042aed98f3fae8c750df490c03a61.png

0854ebac8320b526cf20ef5a7749abba.png

0854ebac8320b526cf20ef5a7749abba.png

91415453e698529de25800b137dd43d1.png

223042aed98f3fae8c750df490c03a61.png

(2)交换状态:两台路由器都发送DBD,DR发送一系列的DBD,其中包括含了存储在其database中的网络。DBD中没有包含详细的必要信息,只是为了从其他邻居路由器接收到DBD消息报文之后,与自己的数据库进行比较。

223042aed98f3fae8c750df490c03a61.png

2d9e83ad897b55dc8ed515166a255c89.png

(3)加载状态:新路由器需要更详细的信息,将使用LSR(链路状态请求包)进行特定某LSA的详细信息的请求,而被请求端则会响应,并且会发送LSU(链路状态更新包),此包包含了信息的LSA信息。

223042aed98f3fae8c750df490c03a61.png

b49491d54658c8859b7557c64e3425fe.png

经过以上四步,此OSPF区域的所有路由器的数据拓扑图都达到了同步。


(三)  然后每个路由器按照产生的全区域数据拓扑图,在运行SPF算法,产生到达目标网络的路由条目


经过以上三大步,OSPF协议的运行过程基本结束。


在上面的过程当中有几个很重要的问题需要注意:

1》此协议的管理距离是110、OSPF路由进程ID的范围必须在1-65535之间,而且只具有本地含义,不同路由器的路由进程ID可以不同、区域ID在0至4294967295,当区域值取0时本区域称为主干区域;

2》确定router ID遵循如下顺序:

用router ID 命令指定的路由器ID的优先级最高

如果没有指定,那么选IP地址最大的环回接口的IP地址为route ID

如果没有换回接口,就选择UP端口中IP值最大的为router ID

但还是建议使用命令指定,这样可控性比较好;


3》DR选举的原则

首要因素是时间,最先启动的路由器被选举成为DR

如果同时启动,或者重新选举,则看接口优先级(0-255),优先级最高的被选举成DR,在默认情况下,多路访问网络的接口优先级为1,点到点网络的接口优先级为0,修改接口优先级的命令是“ip ospf priority”,如果接口的优先级被设置为0,那么该接口不参与DR选举。

如果前两者相同,最后看路由器ID,路由器ID最高的被选举成DR。

DR选举时非抢占的,除非人为地重新选举。重新选举DR的方法有两种,一是路由器重新启动;二是执行“clear ip ospf process”命令。

aa425b14760c26d84fdefa25f3207658.gif


为了方便广大网络爱好学习者一起学(聚)习(众)交(搞)流(基),特开设华为干货

交流群,



里面已经上传大量学习资料,欢迎广大网络工程师进群学习!


扫我入群?


5747c5081b1648b45bb3d627789e889f.png

我知道爱学习的你“在看”
097ccbc9cb7a2c62aababdaf45dcab97.gif



版权声明:本文为weixin_39613540原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。