OSPF状态机:
状态机解释:
- down状态:关闭状态,没有任何报文交互
- Attempt:已发送Hello报文,但未收到Hello报文
- Init状态:收到Hello报文,但是Hello报文里面不包含自己路由器标识router-id
- 2-way状态:邻居关系建立成功,收到的Hello报文里面包含自己的router-id
- Exstart状态:发送空的DD报文。选举主从关系
- Exchange状态:交互真实的DD报文
- Loading状态:交互LSR\LSU\LSAck报文
- Full状态:建立邻接关系,所有链路状态同步完成。
状态机从down到2-way,说明是路由器之间已经完成邻居关系的建立
往下泛洪LSA,形成统一的LSDB。因为OSPF是基于IP不安全。为保证LSDB的安全在交互报文时会进行选举主从设备,交互真是的DD报文。
过程
- 初始交互时,两台路由器都认为自己是主设备,互相发送空的DD报文。R1向R2发送空的DD报文,序列号随机生成(这里假设是a)seq=a,R2也会向R1发送空的DD报文,序列号随机生成(假设为b)。
- R1和R2通过空的DD报文选举出主设备和从设备,假设R1为主设备,R2为从设备。从设备向主设备发送真实的DD报文,序列号为主交换机的序列号。主设备收到后向从设备发送真是的DD报文,序列号是从设备的序列号+1。
- 从设备收到之后,会再次向主设备发送空的DD报文表示确认收到,序列号是主交换机的序列号。