OSPF报文结构

OSPF共有5种类型的协议报文

  1. Hello报文:周期性发送,用来发现维持OSPF邻居关系。
  2. DD报文:描述了本地LSDB的摘要信息,用于两台路由器进行数据库同步。
  3. LSR报文:向对方请求所需的LSA,只有双方成功开始交换DD报文后才会发送。
  4. LSU报文:向对方发送所需的完整LSA或泛洪自己更新的LSA。
  5. LSAck报文:用来对收到的LSA进行确认的报文。

OSPF报文头




OSPF协议的Hello报文 ospf协议报文有哪些_OSPF协议的Hello报文


Version:8位的OSPF版本号,OSPFv2是2,OSPFv3是3。

Type:8位的OPSF报文类型,1:Hello、2:DD、3:LSR、4:LSU、5:LSAck。

Packetlength:16位,OSPF报文总长度包括OSPF头,单位:Byte。

Router ID:32位,发送该报文的路由器标识ID。

AreaID: 32位,发送该报文路由器所属的区域。

Checksum:16位,包含除了认证字段的整个报文校验和。

AuType:64位,0:不含验证信息、1:明文认证、2:MD5认证

OSPF的Hello报文


OSPF协议的Hello报文 ospf协议报文有哪些_OSPF_02


Network Mask:32位,发送Hello报文接口所在网络的掩码。

Hello Interval:16位,发送Hello报文的时间间隔。

Options:8位,含义同OSPF报文头中一致。

Rtr Pri:8位,DR优先级,默认为1,0则表示路由器不能参选。

Router Dead Interval:32位,邻居失效时间,在此时间内未收到邻居的Hello报文则认为邻居失效,并从邻居列表移除该邻居,从路由表撤销指向其的路由。

Designated Router:32位,本网段DR路由器的接口IP。

Backup Designated Router:32位,本网段BDR路由器的接口IP。

Neighbor:32位,邻居列表,用Router ID标识当前路由器已知邻居ID。

OSPF的DD报文


OSPF协议的Hello报文 ospf协议报文有哪些_序列号_03


Interface MTU:16位,此接口最大可发出IP报文的长度,华为默认不填充为0。

Options:含义同OSPF报文头一致。

I位:1位,当连续发送多个DD报文时,是第一个DD报文时为1,否则为0。

M位:1位,当连续发送多个DD报文时,后续没有LSA头要传时,则为0。

M/S位:1位,当两台路由器交换DD报文需选举主从,RouterID大的为主,当值位1则为Master。

DDS equence Number:32位,DD报文序列号,主从交互DD利用序列号保证DD报文传输的可靠性和稳定性。

LSA Headers:本地LSDB的头部信息。

OSPF的LSR报文


OSPF协议的Hello报文 ospf协议报文有哪些_OSPF协议的Hello报文_04


LS type:32位,LSA的类型

Link State ID:32位,根据LSA中的LSA Type和LSA Description在路由域中描述一个LSA。

Advertising Router:32位,产生此LSA的路由器Router ID。

OSPF的LSU报文


OSPF协议的Hello报文 ospf协议报文有哪些_OSPF_05


Number of LSAs:32位,表示此Update中包含的LSA数量。

LSAs:多个完整的LSA内容。

OSPF的LSAck报文


OSPF协议的Hello报文 ospf协议报文有哪些_序列号_06


LSA Headers:LSA头列表,OSPF通过LSA头对完整的LSA做确认,一份LSA可以对多份LSU中的LSA做确认。