OSPF邻居建立

1、OSPF简述
OSPF(Open Shortest Path First,开放最短路径优先)是IETF
(Internet Engineering Task Force,互联网工程任务组)组织开发的一个基于链路状态的内部网关协议。目前针对IPv4协议使用的是OSPF Version 2。
OSPF协议报文直接封装为IP报文,协议号为89。

OSPF有五种类型的协议报文:
·Hello报文:周期性发送,用来发现和维持OSPF邻居关系,以及进行DR(Designated Router,指定路由器)/BDR(Backup Designated Router,备份指定路由器)的选举。
·DD(Database Description,数据库描述)报文:描述了本地LSDB(Link State DataBase,链路状态数据库)中每一条LSA(Link State Advertisement,链路状态通告)的摘要信息,用于两台路由器进行数据库同步。
·LSR(Link State Request,链路状态请求)报文:向对方请求所需的LSA。两台路由器互相交换DD报文之后,得知对端的路由器有哪些LSA是本地的LSDB所缺少的,这时需要发送LSR报文向对方请求所需的LSA。
·LSU(Link State Update,链路状态更新)报文:向对方发送其所需要的LSA。
·LSAck(Link State Acknowledgment,链路状态确认)报文:用来对收到的LSA进行确认

2、OSPF建邻居过程
举例:一个2台设备建立广播网邻居,如下图所示
图一:发现邻居,选举DR过程
OSPF邻居建立
图二:DD报文交换摘要信息协商Master/Slave过程
OSPF邻居建立
备注:
协商Master/Slave的目的是后续谁决定DD报文***以避免出现混乱,Router id较大的被选为Master,协商过程使用的DD报文摘要信息不包括任何LSA头部,该报文包括3个重要的位:I,M,MS,I(init位)都是置为0,M表示More,如果M=1说明后续还有DD报文待发送,MS=1,DD始发路由器认为自己是Matser,在DD报文交互后选举出Master后,Slave发送的DD报文MS置为0。
图三:DD报文交互详细LSA信息过程
OSPF邻居建立
备注:当OSPF广播网里所有待请求的LSA都收到回复后,邻居状态达到FULL