面试官口中的OSPF工作原理

OSPF是一种广泛使用的动态路由协议,基于SPF算法。它通过Hello包建立邻居关系,通过DBD、LSR、LSU和LSACK包同步LSDB。状态机包括DOWN、INIT、2-WAY、EXSTART、EXCHANGE、LOADING和FULL七个阶段,完成邻接关系建立。OSPF的过程涉及邻居发现、拓扑同步和最短路径树生成。
摘要由CSDN通过智能技术生成

OSPF算法是目前路由器使用的最广泛的动态路由协议之一,其重要性可想而知。

OSPF(OPEN SHORTEST PATH FIRST)全称是开放式最短路径优先协议,是一种无类别链路状态型动态路由协议,使用的是特殊的SPF算法,下面我们来谈谈其工作原理

五种数据包

hello包;路由器在宣告本地直连拓扑之后,会向周围发送hello包,收到包含自己routerid的hello包时,标志着彼此邻居关系的建立,在BMA网络中hello包的周期一般是10s

DBD包;邻居关系建立完成后,路由器会互相向对方发送DBD包,DBD包可以理解成一种数据库的目录,可以大致查阅对方链路状态数据库LSDB的内容,并且与自己对照

LSR包;链路状态请求包,路由器在收到对方发来的目录,对照自己的数据库,然后将自己没有但是对方有的LSA以LSR包的形式发送给对方,请求对方回复

LSU包;链路状态更新包,在收到对方的请求后,将缺少的LSA以LSU的形式发送给对方,用来填补缺少的部分

LSACK包;在收到对方的LSU包之后,给对方回应一个LSACK包,表示确认收到

七种状态机

OSPF在建立关系的过程中,有七种不同的状态,被称为状态机

DOWN:在发送hello包之前的关系

INIT:在向对方发送一个hello包之后,状态变为init

2-WAY:在收到包含自己router-id的hello包后,状态机显示为2way,标志着邻居关系的建立

EXSTART:预启动状态,在进入下一步状态之前的准备阶段,路由器开始向邻居发送不包含链路状态的DBD包

EXCHANGE:此状态路由器会互相交换包含链路状态信息的DBD报文,来描述本地LSDB的内容

LOADING:此时,路由器向对方发送LSR,相互请求对方给自己没有的LSA

FULL:标志着邻接关系建立

工作过程

1、互相发送hello包,建立、维护、更新邻居关系

2、互相发送和接受LSA,直到LSDB同步,建立邻接关系

3、基于收到的拓扑,以自己为中心生成结构图,然后根据SPF算法生成最短路径树

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值