OSPF的五种报文
  1. Hello报文
  2. DD(Database Description)数据库描述报文
  3. LSR(LinkState Request)链路状态请求报文
  4. LSU(LinkState Update)链路状态更新报文
  5. LSAck(LinkState Acknowledgment)链路状态应答报文

一 、OSPF Hello报文
      OSPF协议使用一种称之为Hello的报文来建立和维护相邻邻居路由器之间的临接关系。这个报文很简单,容量也很小,仅用来向邻居路由器证明自己的存在,就像人与人之间打招呼一样。
      Hello报文默认是以10s为周期,以组播方式向224.0.0.5组播组发送一次;但在P2MP和NBMA类型网络中OSPF默认是以60S为周期以单播形式向状态为down发送一个Hello报文(其他类型的hello报文是不会发送给状态为down的路由器的)。


二、OSPF DD报文
      DD报文用来描述本地路由器的链路状态数据库(LSDB),两个OSPF路由器初始化连接时需要交换DD报文,进行数据库同步。
      DD报文交换过程中以询问/应答方式进行,在DD报文交换中,一台为Master(主),一台为Slave(从)。Master路由器向Slave路由器发送它的路由表内容。但是显然,主、从之间的关系会因为每个DD交换的不同而不同,因为双方可能都有对方没有的LSA,网络中所有的路由器会在不同时刻担当不同的角色。


三、OSPF LSR报文
      LSR报文用于请求相邻路由器链路状态数据库的数据。当两台路由器互相交换完DD报文后,知道对端路由器有哪些LSA是本LSDB所没有的以及哪些LSA是失效的,则需要发送一个LSR报文,向对方请求所需的LSA。


四、OSPF LSU报文
      LSU报文是LSR请求报文的应答报文,用来向对端路由器发送所需的LSA内容。LSU是以组播方式将LSA泛洪出去的,并且对没有收到对方的确认应答,即LSAck报文(下面会讲)的LSA进行重传。


五、OSPF LSACK
      LSAck报文是路由器在收到对端发来的LSU报文后以单播或组播形式发出的确认报文,内容是需要确认的LSA头部。


参考:《华为路由器学习指南》 — 王达 主编