OSPF:开放式最短路径优先协议
V1/V2/V3 其中V3为IPV6使用
无类别链路状态路由协议
为什么OSPF要基于LSA进行收敛?
为了选出一个无环的路径
更新量很多→无法适应中大型网络环境
故OSPF协议需要结构化的部署→区域划分 地址规划
触发更新 30min周期更新;组播更新地址224.0.0.5/6
一、OSPF的数据包类型
Hello 发现、建立周期保活邻居关系
DBD 数据库描述
LSR 链路状态请求
LSU 链路状态更新 携带各种LSA
LSack 链路状态确认
LSA 链路状态通告—具体的一条条拓扑或路由信息
LSDB 链路状态数据库—本地所有LSA的集合
二、OSPF状态机
两台直连的OSPF邻居路由器间,双方不同阶段的关系,为不同状态
Down 一旦本地发出hello包,进入下一个状态
Init初始化 r1收到r2的hello包中存在r1的route-id,进入下一状态
2way 双向通讯 邻居关系建立的标志
条件匹配:
- Exstart 预启动
使用没有数据库信息的DBD包进行主从关系的选举,RID数值大为主,优先进入下一状态 - Exchange 准交换
使用携带数据库目录信息的DBD包来进行共享,需要ack确认 - Loading 加载
查看完对端邻居的DBD包后,使用LSR/LSU/LSack来获取未知地LSA信息 - Full 转发
邻接(毗邻)关系建立的标志
三、OSPF的工作过程
路由器上的OSPF协议的启动配置完成后,本地收发hello包;在接收到的hello包中存在本地的RID,建立邻居关系,生成邻居表
邻居关系建立后,基于条件进行抉择
1.条件匹配失败,维持邻居关系,仅hello周期保活即可;
2.条件匹配成功,可以建立邻接关系;
使用DBD包来共享本地的LSDB目录,之后本地基于其他邻接共享过来的DBD,判断本地未知的LSA信息有哪些;
再使用LSR向邻接进行查询,邻接返回LSU包来传递,具体地LSA信息,同时本地须要ACK确认接收;
当本地收到所有的LSA后,本底LSDB数据库建立完成;数据库表