泛洪扩散(Flooding)
泛洪扩散过程就是将变化或新的LSA发送到整个网络中去,以确保每一个节点的数据库都可以更新,最终保持所有节点LSDB的统一性
泛洪扩散用到的数据包类型:
LSU 链路状态更新数据包 Type-4
LSAck 链路状态确认数据包 Type-5
在点到点网络中,路由器通过组播方式发送LSU到组播地址ALLSPFRouters:224.0.0.5
点到多点/虚链路网络中,路由器通过单播方式发送LSU到邻居的接口
在广播型网络中,DRothers只能和DR/BDR建立邻接关系,因此LSU将以组播方式发送到组播地址ALLDRouters(224.0.0.6)。DR路由器也将以组播方式发送LSU到ALLSPFRouters地址224.0.0.5。BDR虽然收到并记录了来自DRothers的LSA,但其不会重复进行泛红扩散这些LSA
在NMBA网络中,与广播网络不同的地方是,LSA以单播方式从DRothers发送给DR/BDR,DR也已单播方式发送LSA的拷贝给其所有建立邻接关系的邻居路由器
泛洪扩散的可靠性保证:
1.确认
每一个单独传送的LSA必须被确认
2.序列号
OSPF协议使用线性的序列号空间,当一台路由器发送一条LSA通告时,它将设置这个LSA序列号为InitialSequenceNumber(0x80000001)。每当路由器产生该LSA的一个新实例,该路由器就会将其序列号增加1。若当前LSA序号为最大值MaxSequenceNumber(0x7fffffff)并且又必须创建这个LSA的一个新实例,路由器就会开始从所有的数据库中清除老的LSA。这一操作通过设置现有的LSA的age为最大生存时间,并且重新泛