1、邻居关系
OSPF设备启动后,会通过OSPF接口向外发送Hello报文,收到Hello报文的OSPF设备会检查报文中所定义的参数,如果双方一致就会形成邻居关系,两端设备互为邻居
2、邻接关系
形成邻居关系后,如果两端设备成功交换DD报文和LSA,才建立邻接关系。
3、状态机
OSPF共有8种状态机,分别是:Down、Attempt、Init、2-way、Exstart、Exchange、Loading、Full。
- Down:邻居会话的初始阶段,表明没有在邻居失效时间间隔内收到来自邻居路由器的Hello数据包。
- Attempt:该状态仅发生在NBMA网络中,表明对端在邻居失效时间间隔(dead interval)超时前仍然没有回复Hello报文。此时路由器依然每发送轮询Hello报文的时间间隔(poll interval)向对端发送Hello报文。
- Init:收到Hello报文后状态为Init。
- 2-way:收到的Hello报文中包含有自己的Router ID,则状态为2-way;如果不需要形成邻接关系则邻居状态机就停留在此状态,否则进入Exstart状态。
- Exstart:开始协商主从关系,并确定DD的序列号,协商主/从关系。建立主/从关系主要是为了保证在后续的DD报文交换中能够有序的发送。
- Exchange:主从关系协商完毕后开始交换DD报文,本端设备将本地的LSDB用DD报文来描述,并发给邻居设备。
- Loading:两端设备发送LSR报文向邻居请求对方的LSA,同步LSDB。
- Full:两端设备的LSDB已同步,此时状态为Full。
4、建立邻接关系
OSPF完成邻接关系的建立有四个步骤:建立邻居关系、协商主/从、交互LSDB信息,同步LSDB。