OSPF基本原理(数据包、状态机、邻居建立条件)

一、ospf的工作过程:
   启动宣告配置完成后,路由器开始组播(224.0.0.5)收发hello包,若接收到的hello包中存在本地的router-id,则建立邻居关系,之后基于邻居关系进行条件匹配,匹配失败则维持邻居关系,仅hello包周期保活;匹配成功则开始建立邻接关系,邻居间使用类似hello包的DBD包进行主从关系的选举,router-id大的为主,然受使用真正的DBD包进行数据库目录的共享,之后使用LSR来请求未知的LSA信息,对端使用LSU来携带传递LSA信息,最后需要 LSACK进行接收确认;当本地收集到区域内所有的LSA信息后生成LSDB表,本地基于LSDB启用SPF算法,计算本地到达所有未知网段的最短路径,然后将其加载到路由表中;收敛完成,仅hello包周期保活所有的邻居和邻接关系,每30min周期进行DBD包的收发来进行更新。

二、ospf的5个数据包
hello包:用于发现、建立和周期保活邻居关系
DBD包:数据库描述包,本地数据库的目录
LSR:链路状态请求包,用于向对端请求本地未知的信息
LSU:链路状态更新包,用于答复对端的LSR,携带传递各种LSA
LSACK:链路状态确认包,用于接收确认,保证可靠性

三、ospf的7个状态机
Down:当路由器开始收发hello包,进入下一状态
Init:接收到的hello包中存在本地的router-id,进入下一状态
2way:标志着邻居关系建立
Exstart:使用类似hello包的DBD包进行主从关系选router-id大的为 主,优先进入下一状态
Exchange:使用真正的DBD包进行数据库目录的共享
Loading:使用LSR、LSU、LSACK来获取未知的LSA信息
Full:标志邻接关系建立

四、ospf邻居关系建立的4个条件
1、区域id必须相同
2、hello/dead time必须一致
3、认证必须相同
4、末梢区域标记

你可能感兴趣的:(网络基础知识)