当前位置: 首页 > article >正文

OSPF 邻居状态机

1. Down

没有收到对端的hello报文

2. Attempt(MA网络)

老化时间内未收到邻居hello报文

3. Init

收到了邻居的hello报文,但报文中没有本地 RID

4. 2Way

收到的邻居hello报文,且其中包含了本地 RID

---> 邻居关系建立完成,MA网络此时会进行DR/BDR选举,以减少网络中建立邻接关系的数量。选举完毕后DR other于DR/BDR进行下一阶段开始建立邻接关系.

5. ExStart - 选主从

通过空的DD报文选举主从(RID大的设备为主),保证在后续的DD报文交换中能够有序的发送。

DD报文中不包含LSA摘要, 只有三个标志位I,M,MS

 initial - 第一个DD报文

 more  - 后面还有DD报文; 0 表示没有DD报文了。

 master/slave - 表示该报文为主,0表示为从

此时报文的MTU值会影响状态机的建立,主大从小,两边都卡在exstart状态;主小从大,主看从卡在exstart,丛看主卡在exchange。

* “从”路由器,回复一个MS 位设置为0的DD描述数据包——这个数据库描述数据包的序列号设置为“主”路由器的序列号。同时,这个数据库描述数据包也将是第一个携带LSA 摘要信息的数据包。

6. Exchange - 交互DD

本端设备将本地的LSDB用DD报文来描述,并发给邻居设备。

1) 主路由器控制LSDB列表的同步过程, 并确保每次只有一个DD是未处理的。主路由器定义一个序列号Seq,每发送一个新的DD报文将Seq加1..

2) 从路由器每次发送DD报文时使用接收到的DD报文中的 Seq 响应主路由器。

3) 主从路由器都发送M标志位为0的DD(路由器已经完全描述了它自己的LSDB),表示LSDB列表同步完成。

7. Loading - 同步LSDB (交互LSR,LSU,LSAck)

1) 本地路由器将本地没有的/比本地更新的LSA放入LSR列表, 以请求完整的LSA。

2) 对端用 LSU报文来回应LSR

3) 本地路由器收到LSU后,从LSR列表中删除相应LSA条目并发送LSAck报文确认。

* LSU中的LSA必须单独确认,因此路由器会将这些传送的LSA放到每个邻居的链路状态重传列表中,每隔RxmtInterval 的时间重传一次. 直到该LSA得到确认,或邻接关系中断, 路由器就会将其从重传列表删除。

*事实上,当邻居状态还依旧是Exchange 状态时路由器就可以发送链路状态请求数据包了。

8. Full - LSDB同步完全

LSR列表为空,路由器将会把邻居的状态转换到Full状态


http://www.kler.cn/a/598712.html

相关文章:

  • Linux离线安装Docker教程
  • 景联文科技:以高质量数据标注推动人工智能领域创新与发展
  • 《Waf 火绒终端防护绕过实战:系统程序副本+Certutil木马下载技术详解》
  • 相同Vlan间的通信
  • 计算机网络-2 物理层
  • PyTorch系列教程:使用预训练语言模型增强文本分类
  • Modern C++面试题及参考答案
  • 【PyTorch][chapter-38][MOE-load balancing】[3]
  • 2025最新正版Autodesk 3ds Max 2022安装教程:从下载到中文环境配置全流程解析
  • 重塑宠物服务生态:AI如何赋能宠物生活馆?
  • 如何让低于1B参数的小型语言模型实现 100% 的准确率
  • Redis Cluster核心机制:数据分片、故障转移与常用运维命令详解
  • 算法与数据结构(数组与链表)
  • 【模拟面试】计算机考研复试集训(第十天)
  • 【day2】数据结构刷题 栈
  • 浙江大学DeepSeek公开课第二季第二期将于下周一直播!
  • 优选算法训练篇07--力扣LCR179.查找总价格为目标值的两个商品
  • 批量将 PPT 文档中的指定页面提取成新的 PPT 文档
  • docker的anythingllm和open-webui压缩包分享(国内镜像拉取,百度云压缩包分享)
  • 新手村:逻辑回归-01.什么是逻辑回归-初识速学