·版本号—分配OSPF头的第一个字节用于标识版本号。当前的版本是2,但是可能会遇到更老的路由器还在运行RFC 11 3 1版本1.RFC 1247、1 5 8 3、2 1 7 8和2 3 2 8都对OSPF版本2的向后兼容作了规范。因此无需进一步的标识。
·类型—第二个字节指出5种OSPF报文类型中哪一种附加在头结构后面。5种类型( H E L L O、数据库描述、链路-状态请求、链路-状态更新和链路-状态应答)用数字标识。
·报文长度—OSPF头中下面两个字节用于通知接收节点报文的总长度。报文总长度包括数据和头
·路由器I D—区中的每个路由器被分配一个惟一的、4字节的标识号。OSPF路由器在发送任何OSPF消息给其他路由器之前,用自己的I D号填充该域。
·区ID—头中用4字节标识区号。
· 校验和—每个OSPF头包括一个2字节的校验和域,用于检查在传输过程中对报文造成的破坏。发送方对每个消息运行数学计算,然后把结果存储在这个域中。接收方对接收到的报文运行相同的算法并把结果与存储在校验和域中的结果进行比较。如果报文无损到达,两个结果应一样;不相同,说明OSPF报文在传输过程中被破坏。接收方会简单地把受损报文丢弃。
·认证类型—OSPF能通过认证OSPF信息的发送者来防止会导致假路由信息这样的攻击。两字节的认证类型域标识信息中使用的各种认证形式。
·认证—头中剩下的9个字节携带的是认证数据,接收方利用此信息来确定信息的发送者。OSPF允许网络管理员使用各种级别的认证:从无认证,到简单认证,到最强大的M D认证,基本结构中包含OSPF节点所需的用于决定报文是否应接收并作进一步处理,还是应丢弃的所有信息。在传输过程中受损的(校验和指出这一点)及没有通过认证的报文会被丢弃。
OSPF使用5种不同的报文类型。每种类型用于支持不同的,专门的网络功能。这5种类型是:
·HELLO报文(类型1 )。
·数据库描述报文(类型2 )。
·链路-状态请求报文(类型3 )。
·链路-状态更新报文(类型4 )。
·链路-状态应答报文(类型5 )。
这5种报文类型有时用编号指明,而不是用名字。所以, OSPF类型5报文实际上是指链路-状态应答报文。所有这些报文类型使用OSPF头。
注意 5种基本的OSPF数据结构用5个纯粹的数表示,对这些结构和大小的详细讨论超出了本章的范围。相反,这一章仅限于讨论这些数据类型的目的和使用。