OSPF 协议报文直接封装为 IP 报文,协议号为 89。 OSPF 有五种类型的协议报文: 1、Hello 报文:周期性发送,用来发现和维持 OSPF 邻居关系,以及进行 DR(Designated Router,指定路由器)/BDR(Backup Designated Router,备份指定路由器)的选举。 2、DD(Database Description,数据库描述)报文:描述了本地 LSDB(Link State DataBase, 链路状态数据库)中每一条 LSA(Link State Advertisement,链路状态通告)的摘要信息, 用于两台路由器进行数据库同步。 3、 LSR(Link State Request,链路状态请求)报文:向对方请求所需的 LSA。两台路由器互相 交换 DD 报文之后,得知对端的路由器有哪些 LSA 是本地的 LSDB 所缺少的,这时需要发送 LSR 报文向对方请求所需的 LSA。 4、 LSU(Link State Update,链路状态更新)报文:向对方发送其所需要的 LSA。 5、 LSAck(Link State Acknowledgment,链路状态确认)报文:用来对收到的 LSA 进行确认。 OSPF 中对链路状态信息的描述都是封装在 LSA 中发布出去,常用的 LSA 有以下几种类型: 1、 Router LSA(Type-1):由每个路由器产生,描述路由器的链路状态和开销,在其始发的区域 内传播。 2、 Network LSA(Type-2):由 DR 产生,描述本网段所有路由器的链路状态,在其始发的区域 内传播。 3、 Network Summary LSA(Type-3):由 ABR(Area Border Router,区域边界路由器)产生, 描述区域内某个网段的路由,并通告给其他区域。 4、 ASBR Summary LSA(Type-4):由 ABR 产生,描述到 ASBR(Autonomous System Boundary Router,自治系统边界路由器)的路由,通告给相关区域。 5、AS External LSA(Type-5):由 ASBR 产生,描述到 AS(Autonomous System,自治系统) 外部的路由,通告到所有的区域(除了 Stub 区域和 NSSA 区域)。 6、 NSSA External LSA(Type-7):由 NSSA(Not-So-Stubby Area)区域内的 ASBR 产生,描 述到 AS 外部的路由,仅在 NSSA 区域内传播。 7、 Opaque LSA:用于 OSPF 的扩展通用机制,目前有 Type-9、Type-10 和 Type-11 三种。其 中,Type-9 LSA 仅在本地链路范围进行泛洪,用于支持 GR(Graceful Restart,平滑重启) 的 Grace LSA 就是 Type-9 的一种类型;Type-10 LSA 仅在区域范围进行泛洪,用于支持 MPLS TE 的 LSA 就是 Type-10 的一种类型;Type-11 LSA 可以在一个自治系统范围进行泛 洪。 1、区域的边界是路由器,而不是链路。一个路由器可以属于不同的区域,但是一个网段(链路)只能 属于一个区域,或者说每个运行 OSPF 的接口必须指明属于哪一个区域。划分区域后,可以在区域 边界路由器上进行路由聚合,以减少通告到其他区域的 LSA 数量,还可以将网络拓扑变化带来的影 响最小化。 2、骨干区域与虚连接 1) 骨干区域(Backbone Area) OSPF 划分区域之后,并非所有的区域都是平等的关系。其中有一个区域是与众不同的,它的区域 号是 0,通常被称为骨干区域。骨干区域负责区域之间的路由,非骨干区域之间的路由信息必须通 过骨干区域来转发。对此,OSPF 有两个规定: 所有非骨干区域必须与骨干区域保持连通; 骨干区域自身也必须保持连通。 在实际应用中,可能会因为各方面条件的限制,无法满足上面的要求。这时可以通过配置 OSPF 虚 连接予以解决。 2) 虚连接(Virtual Link) 虚连接是指在两台 ABR 之间通过一个非骨干区域而建立的一条逻辑上的连接通道。它的两端必须 是 ABR,而且必须在两端同时配置方可生效。为虚连接两端提供一条非骨干区域内部路由的区域称 为传输区(Transit Area)。 3、Stub区域和Totally Stub区域 Stub 区域是一些特定的区域,该区域的 ABR 会将区域间的路由信息传递到本区域,但不会引入自 治系统外部路由,区域中路由器的路由表规模以及 LSA 数量都会大大减少。为保证到自治系统外的 路由依旧可达,该区域的 ABR 将生成一条缺省路由 Type-3 LSA,发布给本区域中的其他非 ABR 路由器。 为了进一步减少 Stub 区域中路由器的路由表规模以及 LSA 数量,可以将区域配置为 Totally Stub (完全 Stub)区域,该区域的 ABR 不会将区域间的路由信息和自治系统外部路由信息传递到本区 域。为保证到本自治系统的其他区域和自治系统外的路由依旧可达,该区域的 ABR 将生成一条缺 省路由 Type-3 LSA,发布给本区域中的其他非 ABR 路由器。 4. NSSA区域和Totally NSSA区域 NSSA(Not-So-Stubby Area)区域是 Stub 区域的变形,与 Stub 区域的区别在于 NSSA 区域允许 引入自治系统外部路由,由 ASBR 发布 Type-7 LSA 通告给本区域。当 Type-7 LSA 到达 NSSA 的 ABR 时,由 ABR 将 Type-7 LSA 转换成 Type-5 LSA,传播到其他区域。 可以将区域配置为 Totally NSSA(完全 NSSA)区域,该区域的 ABR 不会将区域间的路由信息传 递到本区域。为保证到本自治系统的其他区域的路由依旧可达,该区域的 ABR 将生成一条缺省路 由 Type-3 LSA,发布给本区域中的其他非 ABR 路由器。一、OSPF报文
二、LSA类型
三、OSPF区域