OSPF协议
OSPF协议
ospf(Open Shortest Path First,OSPF)开放式最短路径优先协议
ospf五种包
1.hello包,用于邻居的发现,关系建立和周期保活,每台设备必须拥有唯router-id
2.DBD数据库描述,用于携带本地数据库的目录
3.LSR链路状态请求,再查看对端邻居的DBD后,基于本地未知的LSA查询,向对端发出请求。
4.LSU链路状态更新,用于携带各种LSA信息
5.LSack链路状态确认,用于确认接受对端信息
LSA链路状态通告,具体的路由或者拓扑信息
七种状态机
1.Down: 一旦本地发出hello包进入下一个状态机
2.init初始化:一旦收到hello包,存在本地的RID
3.2way 双向通讯:邻居关系建立标志
条件匹配:在点到点直接进入下一个状态机,MA(多路访问)中选举DR/BDR,所有非DR/BDR不能进入下一个状态机
4.Exstart预启动:使用不携带数据库目录信息的DBD包进行主从关系的选举,RID大的为主,优先进入下一个状态机
5.Exchange准交换:使用携带目录信息的DBD 包进行进行交换,需要ACK确认
6.Loading加载:在看完对端DBD后,使用LSR信息查询本地未知的LSA信息,对端使用LSU来进行LSA的回复,本地还需要使用ACK来确认接收到的LSU包
7.Full 邻接关系建立的标志
ospf的工作过程
启动配置完成后,本地组播224.0.0.5发送hello包,hello包将携带本地RID值及本地已知所有的RID,若接收来自对端的hello包中存在本端的RID,那么将视为双方认识,邻居关系建立,生成邻居表
邻居关系建立,条件匹配,匹配失败将停留于邻居关系,仅hello包,周期保活即可,若条件匹配成功,可以建立邻接关系,先使用不携带数据库信息的 DBD包进行主从关系的选举,RID大为主,优先共享数据库目录,之后本地存在基于对端的 DBD来查找未知的LSA信息,之后使用LSR/LSU/LSack来获取未知的LSA信息最终生成数据库表(LSDB-数据链路状态数据库)之后本地启用SFP算法,基于本地的LSDB成成有向图,在计算出最短路径树,在基于树形结构,算出本地为起点到达所有未知网段的最短路径加载本地的路由表,收敛完成后,hello包周期保活,每30min邻接关系在进行DBD对比,若一致继续保活,不一致重新收敛。

浙公网安备 33010602011771号