前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OSPF邻接建立及状态机解析

OSPF邻接建立及状态机解析

作者头像
Ponnie
发布2021-02-24 11:01:30
1K0
发布2021-02-24 11:01:30
举报
文章被收录于专栏:玉龙小栈玉龙小栈

01

OSPF邻接建立过程

假设R2数据库已经同步

1.R1和R2形成邻居关系之后,开始交互DD报文,DD报文为数据库摘要(包含了目录信息等)

2.首先两端交互的DD,称之为FirstDD,通过FirstDD确定主从关系,保证后续的DD消息传递可靠有序;

3.根据主从选举结果,R2为主路由器,此时以R2的序列号为准,从路由器R1使用主路由器序列号2348,发送DD消息,该DD消息中包含LSA栋要信息,当R2收到该DD(2348)报文后, 再对其序列号+1处理,将R2自己的LSA摘要放到DD(2349)报文中发送给R1

4.经过R1,R2相互交换DD消息,此时R1,R2根据DD消息中携带的LSA摘要判断本设备缺少的LSA信息,从而发送LSR,请求缺少的LSA详细信息;

5.当收到对方发送来的LSR消息,此时需要将自己完整的L SA封装在LSU消息中,发送给邻居路由器

6.当收到对方发送来的LSU完整信息后,需要向对方回复LSACK作为对已收到LSU的确认;

主从路由器选举详细参数如下:
DD报文部分字段解释

I:当发送连续多个DD报文时,如果这是第一个DD报文,则置为1,否则置为0。

M (More):当发送连续多个DD报文时,如果这是最后一个DD报文,则置为0。否则置为1,表示后面还有其他的DD报文。

MS (Master/Slave):当两台OSPF路由器交换DD报文时,首先需要确定双方的主从关系,Router ID大的一方会成为Master。当值为1时表示发送方为Master。

DD sequence number:DD报文序列号。主从双方利用序列号来保证DD报文传输的可靠性和完整性。

作用:

为了保证在传输过程中报文传输的可靠性,在Exstart阶段开始选举主从路由器(Master/slave)

选举规则:

优选Router ID大的一端作为Master

实现:

两端相互发送Frist DD(空DD报文不携带LSA摘要),DD中包含本端Seq MTU DD description (I Bit 置1 ,M Bit 置1,MS Bit置1,I=Init M=More MS=master);

两端受到比较之后确定主从关系,作为Master端需要定义一个序列号Seq,每发送一个新的DD报文就将Seq加1;作为Slave端,每次发送DD报文时使用接收到的上一个Master的DD报文中的Seq。

02

邻接关系建立协商参数

DD

协商报文

前置条件:两端路由器已达到邻居关系(2-WAY)

DD合法性检查:接口MTU

检查参数值:默认为0

是否检查:默认不检查,如开启MTU检查则需要两端一致

如何开启:接口下启用(ospf mtu-enable)

检查是否配置OSPF报文过滤

备:如果开启了MTU检查,且两端MTU不一致的时候,OSPF两端的路由器则会卡在Exstart阶段。

03

OSPF状态机-邻接关系

04

完整OSPF状态机

形成邻居关系的过程和相关邻居状态的变换过程:

➢Down:这是邻居的初始状态,表示没有从邻居收到任何信息。在NBMA网络上,此状态下仍然可以向静态配置的邻居发送Hello报文,发送间隔为PollInterval, 通常和Router DeadInterval间隔相同。

➢Attempt: 此状态只在NBMA网络上存在,表示没有收到邻居的任何信息,但是已经周期性的向邻居发送报文,发送间隔为HelloInterval.如果Router DeadInterval间隔内未收到邻居的Hello报文,则转为Down状态。

➢Init: 在此状态下,路由器已经从邻居收到了Hello报文, 但是自己不在所收到的Hello报文的邻居列表中,表示尚未与邻居建立双向通信关系。在此状态下的邻居要被包含在自己所发送的Hello报文的邻居列表中。

➢2-Way Received: 此事件表示路由器发现与邻居的双向通信已经开始(发现自己在邻居发送的Hello报文的邻居列表中)。Init状态 下产生此事件之后,如果需要和邻居建立邻接关系则进入ExStart状态,开始数据库同步过程,如果不能与邻居建立邻接关系则进入2-Way。

➢2-Way:在此状态下,双向通信经建立,但是没有与邻居建立邻接关系。这是建立邻接关系以前的最高级状态。

➢1-Way Reeived: 此事件表示路由器发现自己没有在邻居发送Hello报文的邻居列表中, 遇常是由于对端邻居重启造成的。

➢ExStart: 这是形成邻接关系的第一个步骤,邻居状态变成此状态以后,路由器开始向邻居发送DD报文。主从关系是在此状态下形成的;初始DD序列号是在此状态下决定的。在此状态下发送的DD报文不包含链路状态描述。

➢Exchange: 此状态下路由器相互发送包含链路状态信息摘要的DD报文,描述本地LSDB的内容。➢Loading: 相互发送LS Request报文请求LSA,发送LS Update通告LSA。

➢Full: 两台路由器的LSDB已经同步。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 玉龙网络新知社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 主从路由器选举详细参数如下:
  • DD报文部分字段解释
  • 作用:
  • 选举规则:
  • 实现:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档