OSPF - Part 1:关于OSPF的基本内容

概括

本文介绍了OSPF 路由协议。概述了该路由协议及其用途功能,并分析了其在以太网 II 帧中的结构。我们研究了 OSPF 报头中的Type字段,还了解了所支持的不同类型的消息Hello数据库描述(DBD)链路状态请求(LSR)链路状态更新(LSU)链路状态确认(LSAck))。

详细关于OSPF的内容汇总一下分为以下几个模块:

OSPF

1. 简介

开放最短路径优先 (OSPF)是一种流行的动态路由协议,由互联网工程任务组 (IETF) 的**内部网关协议(IGP)** 工作组为互联网协议 (IP) 网络开发。该工作组成立于 1988 年,旨在设计一种基于最短路径优先 (SPF) 算法的 IGP,供互联网使用。与内部网关路由协议 (IGRP)类似,OSPF 的创建是因为在 20 世纪 80 年代中期,路由信息协议 (RIP)越来越无法为大型异构互联网络提供服务。

2. OSPF 数据包结构和分析

OSPF 是一种无类路由协议,这意味着在其更新中,它包括它所知道的每个路由的子网,从而启用可变长度的子网掩码。使用可变长度的子网掩码,可以将 IP 网络划分为许多不同大小的子网。这为网络管理员提供了额外的网络配置灵活性。这些更新在特定地址(224.0.0.5 和 224.0.0.6)进行多播

下图向我们展示了OSPF 数据包的每个字段包含的信息:

彩色块内显示的数字表示字段长度(以字节为单位)。

所有 OSPF 数据包都以24 字节的报头开始,如上所示。

3. OSPF消息类型

Type”字段(1 字节)是OSPFOpen Shortest Path First (开放最短路径优先))数据包的重要组成部分。它指示数据包中包含的OSPF 消息的类型,例如Hello数据库描述(DBD)链路状态请求(LSR)链路状态更新(LSU)链路状态确认消息(LSAck)。类型字段在 OSPF 协议中起着至关重要的作用,它有助于确保路由器之间交换正确类型的消息,从而使它们能够了解网络拓扑并建立到目标网络的最短路径。

了解“类型”字段的意义对于网络管理员排除 OSPF 网络问题和优化网络性能至关重要。

以下是类型字段消息,其中包含有关其目的和作用的更多信息:

  • Hello:建立并维持邻居关系。
  • 数据库描述 [Database Description]:描述拓扑数据库的内容。初始化邻接时会交换这些消息。
  • 链路状态请求[Link-state Request]:向邻居路由器请求拓扑数据库的部分信息。当路由器发现(通过检查数据库描述数据包DBD)其拓扑数据库的部分信息已过期时,就会交换这些消息。
  • 链路状态更新[Link-state Update]:响应链路状态请求数据包。这些消息还用于定期分发链路状态确认 (LSA)。单个链路状态更新数据包中可以包含多个 LSA
  • 链路状态确认[Link-state Acknowledgment]:确认链路状态更新数据包。

4. OSPF 的特性

4.1 开放路由协议

该协议是开放的(非专有的),这意味着其规范属于公共领域。OSPF 规范以征求意见 (RFC) 1247的形式发布。这使得世界各地的供应商能够生产完全支持 OSPF 的产品和设备,而无需支付任何专利许可。这也在使 OSPF 成为广泛接受的小型、中型和大型网络路由协议方面发挥了重要作用。

4.2 DIJKSTRA SPF 算法

第二个主要特征是 OSPF 基于 SPF 算法,该算法有时也称为 Dijkstra 算法,以其创始人的名字命名。

SPF 算法通过构建网络图、根据带宽为链路分配成本以及确定从每个路由器到网络中其他每个路由器的最短路径来计算最短路径。该算法确保所选路径具有最低成本并且路由无环路,从而在整个网络中提供快速高效的通信。

SPF 算法还可以通过快速检测网络拓扑的变化并重新计算最短路径来帮助确保网络稳定性和性能。当发生变化(例如链路故障或网络中添加新链路)时,OSPF 会发出链路状态通告 (LSA) 消息以通知网络中的所有路由器该变化。然后,路由器使用 SPF 算法根据更新的网络拓扑重新计算到目标网络的最短路径。这可确保网络继续高效运行,并且数据沿最优路径路由。

4.3 链路状态路由协议

OSPF 是一种链路状态路由协议,要求向同一层次区域内的所有其他路由器发送链路状态通告 (LSA) 。OSPF LSA中包含有关所连接接口、所用指标和其他变量的信息。随着 OSPF 路由器积累链路状态信息,它们会使用 SPF 算法来计算到达每个节点的最短路径。

作为链路状态路由协议,OSPF 与距离矢量路由协议RIPIGRP形成对比。运行距离矢量算法的路由器会将其路由表的全部或部分以路由更新消息的形式发送给其邻居。

OSPF 的其他功能包括等价路由、多路径路由和基于上层服务类型 (TOS) 请求的路由。基于 TOS 的路由支持那些可以指定特定服务类型的上层协议。例如,应用程序可能指定某些数据是紧急的。如果 OSPF 有高优先级链路可供使用,则可以使用这些链路来传输紧急数据报。

OSPF 支持一个或多个指标。如果仅使用一个指标,则该指标被视为任意指标,不支持 TOS。如果使用多个指标,则可选择通过为三个 IP TOS 位(延迟、吞吐量和可靠性位)创建的八个组合中的每一个使用单独的指标(因此,单独的路由表)来支持 TOS。例如,如果 IP TOS 位指定低延迟、低吞吐量和高可靠性,则 OSPF 根据此 TOS 指定计算到所有目的地的路由。


OSPF - Part 1:关于OSPF的基本内容
https://blog.qzl-coding.top/2024/07/24/OSPF - Part 1:关于OSPF的基本内容/
作者
Long Chiu
发布于
2024年7月24日
许可协议