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&#