
开放式最短路径优先(OSPF)路由协议
介绍
开放式最短路径优先(OSPF)是由Internet工程任务组(IETF)的内部网关协议(IGP)工作组为Internet协议(IP)网络开发的路由协议。该工作组成立于1988年,旨在设计基于Internet的最短路径优先(SPF)算法的IGP。类似于内部网关路由协议(IGRP),创建OSPF的原因是,在1980年代中期,路由信息协议(RIP)越来越无法服务于大型异构互联网。
OSPF是一个 无阶级 路由协议,这意味着在其更新中,它包括它知道的每个路由的子网,从而启用了可变长度的子网掩码。使用可变长度的子网掩码,可以将IP网络分为许多不同大小的子网。这为网络管理员提供了额外的网络配置灵活性。这些更新是在特定地址(224.0.0.5和224.0.0.6)处的多播。
有关OSPF的更多信息,请访问我们的 OSPF路由协议部分
下图向我们展示了OSPF数据包的每个字段所包含的信息:
分析 ”类型场
所有OSPF数据包均以24字节标头开头,如右图所示。不过,我想进一步关注一个领域,这就是“类型”字段,长度为1个字节。
如图所示,“类型“字段将OSPF数据包类型标识为以下之一:
- 您好:建立并维护邻居关系。
- 数据库描述:描述拓扑数据库的内容。初始化邻接关系时,将交换这些消息。
- 链接状态请求:从邻居路由器请求拓扑数据库的片段。在路由器发现(通过检查数据库描述数据包)其拓扑数据库的某些部分已过时之后,将交换这些消息。
- 链接状态更新:响应链接状态请求数据包。这些消息还用于定期分发链路状态确认(LSA)。多个LSA可以包含在单个链接状态更新数据包中。
- 链接状态确认:确认链接状态更新数据包。
OSPF具有两个主要特征:
1)协议是开放的(非专有),这意味着其规范是在公共领域中。 OSPF规范发布为“请求注释(RFC)1247”。
2)第二个主要特征是OSPF基于SPF算法,该算法有时被称为Dijkstra算法,以其创造者而得名。
OSPF是一种链路状态路由协议,它要求将链路状态通告(LSA)发送到同一分层区域内的所有其他路由器。 OSPF LSA中包含有关连接的接口,使用的度量标准和其他变量的信息。当OSPF路由器累积链路状态信息时,它们使用SPF算法来计算到达每个节点的最短路径。
OSPF作为一种链路状态路由协议,与RIP和IGRP相对,后者是距离矢量路由协议。运行距离矢量算法的路由器以路由更新消息的形式将其全部或部分路由表发送给其邻居。
OSPF的其他功能包括等价成本,多路径路由以及基于上层服务类型(TOS)请求的路由。基于TOS的路由支持那些可以指定特定服务类型的上层协议。例如,一个应用程序可能会指定某些紧急数据。如果OSPF拥有高优先级链路可供使用,则这些链路可用于传输紧急数据报。
OSPF支持一个或多个指标。如果仅使用一个指标,则认为该指标是任意的,并且不支持TOS。如果使用多个度量标准,则可以选择对三个IP TOS位创建的八种组合(延迟,吞吐量和可靠性)分别使用单独的度量标准(并因此使用单独的路由表)来支持TOS。位)。例如,如果IP TOS位指定了低延迟,低吞吐量和高可靠性,则OSPF将基于此TOS名称计算到所有目的地的路由。