1、首先明确什么是LSA,LSA是做什么的
LSA----链路状态通告,主要用于维护每台路由器的LSDB数据库,当拓扑更新时,发生改变的路由器会将LSU封装于LSA中发送到全网路由器,路由器在收到该LSA后会将该LSA中携带的序列号与自己LSDB中对应的那条进行对比,如果得到的结果是大于,那么就会更新自己LSDB的LSA,如果小于,则会将自己的这条LSA发送给对方,让对方更新LSDB
2、ospf一共有7种状态机,每个状态机都有数据包的参与,我们需要先分析一下各个状态机中及参与的数据包
down----关闭状态,各个路由器准备发送hello包
int----初始化状态,各个路由器发送hello包之后进入改状态,这个状态邻居是没有建立的
hello----用于邻居的发现、建立和保活
2-way----双向通信状态-邻居建立的标志,在MA网络中,该状态会进行DR/BDR的选举;而在P2P网络中会直接进入下一状态
exstart----预启动状态,通过发送不带头部的DBD包进行主从关系的选举,该DBD报只具有选举主从关系的功能
该DBD包主要是用MS位来选举主从关系的:M=1,S=0为主;M=0,S=1为从
exchange----准交换状态,该状态主从关系已经选举完成,并且通过发送含有头部的DBD来共享数据库信息,这个时候需要LSACK来确认
loading----加载状态,该状态通过LSR/LSU/LSACK来获取未知的LSA信息,也需要LSACK的确认
full----邻接状态建立的标志,这种状态出现在1类和2类LSA中
3、小结
1类LSA为路由器LSA,路由器LSA,OSPF区域内的所有路由器都会有的LSA,可以判断在所有的状态机都有其参与
2类LSA为网络LSA,此类LSA只会在MA/NBMA网络中并且选举到DR之后才会出现,可以判断,该LSA会出现在选举到DR之后的2-way
状态
3类LSA为网络汇总LSA,宣告者是BDR,也就意味着这条LSA会出现在选举到BDR的2-way状态中
4类LSA是ASBR汇总LSA,通告者是ABR,该条LSA会出现在更新数据库信息的状态中即exchange、loading和full状态中
5类LSA是自制系统外部LSA,通告者是ASBR,该条LSA会出现在更新数据库信息的状态中即exchange、loading和full状态中
7类LSA是NSSA外部LSA,通告者是ASBR ,是在非纯末梢区域的5类LSA,该条LSA会出现在更新数据库信息的状态中即exchange、
loading和full状态中