首页 CCNA笔记 网络综合布线 Linux操作与应用 专业术语 网络安全 系统调试 歪门邪道 软件下载 我思我想 骷髅搜索
OSPF的相关概念及设置
现在的位置:主页 >> CCNA笔记 >> OSPF的相关概念及设置
 收藏本站

OSPF 根据各条链路的带宽或速度来衡量链路的开销。特定目的网络的开销度量标准是所有链路在该路径中的总开销。

如果网络中有多条路径,则总开销最小的路径被列为首选路径并保存在路由表中。

 

OSPF 链路开销的计算公式为:

开销 = 100,000,000 / 以 bps 表示的链路带宽

公式中的带宽值取所配置的接口带宽。接口的带宽可通过 show interfaces 命令来确定。

对于速度为 100 Mbps 或更高的链路,例如快速以太网和千兆网络,使用上述公式会带来一个问题。上面的公式无视这两种链路之间的速度差异,两种链路算出的开销值均为 1,因此尽管两者之间差距悬殊,却享受同等的优先级。要解决这个问题,请使用 ip ospf cost 命令手动配置接口的开销值。

快速以太网及更快的网络 10^8/100,000,000 bps = 1

以太网 10^8/10,000,000 bps = 10

E1 10^8/2,048,000 bps = 48

T1 10^8/1,544,000 bps = 64

128 kbps 10^8/128,000 bps = 781

64 kbps 10^8/64,000 bps = 1562

56 kbps 10^8/56,000 bps = 1785

直连的开销为0

 

某个区域内的 OSPF 路由器会向其邻居通告它们的链路状态信息。路由器使用名为链路状态通告 (LSA) 的消息通告此状态信息。

一旦收到描述区域内所有链路状态的 LSA,OSPF 路由器便会使用 SPF 算法(也称为 Dijkstra 算法)生成拓扑树(即网络结构图)。每台运行该算法的路由器都会将自己列为其 SPF 树的根。SPF 树从根开始确定通往每个目的地址的最短路径以及每条路径的总开销。

OSPF 链路状态或拓扑数据库会存储 SPF 树信息。路由器会在路由表中为每个网络设定最短路径。

 

当所有路由器运行以下功能后,网络便达到收敛状态:

接收网络上每台目的设备的信息

利用 SPF 算法处理此信息

更新各自的路由表

 

在 OSPF 网络中,在网络发生变动时将会发送链路状态更新信息。但路由器如何知道相邻路由器何时出现故障呢?OSPF 路由器会建立和维护与其它相连 OSPF 路由器的邻居(或邻接)关系。邻接是高级邻居关系,邻接的路由器之间可以交换路由信息。路由器在邻居之间启动邻接关系时,将会开始交换链路状态更新信息。在链路状态数据库中同步视图后,路由器即达到 FULL(完全)邻接状态。

在与其邻居达到完全邻接之前,路由器会经历几种状态变化。

Init(初始化状态):路由器收到其邻居发来的初始 hello 数据包。在收到邻居发来的 Hello 数据包之后,路由器会将发送方的路由器 ID 列入自己的 hello 数据包作为确认。

2-Way(双向状态):既然两台路由器已经互发 hello 数据包,自然也就建立了双向通信。当接收 hello 数据包的路由器在其邻居发来的 hello 数据包中发现自己的路由器 ID 时便会进入双向状态。该状态下,路由器决定是否与此邻居完全邻接。

Exstart(预启动状态):这两台路由器会确立主从关系并为邻接关系选择最初的序列号。这两台路由器中路由器 ID 较高的路由器成为主路由器并启动交换过程。

Exchange(交换状态):OSPF 路由器交换数据库描述符 (DBD) 数据包,该数据包仅包含链路状态通告 (LSA) 的报头。DBD 描述整个链路状态数据库的内容。每个 DBD 数据包都有一个序列号,该序列号只能按主路由器递增。

Loading(加载状态):根据 DBD 提供的信息,路由器会发送链路状态请求数据包以请求更详细的信息。邻居在链路状态更新数据包中提供请求的链路状态信息。

Full(完全邻接):所有路由器和网络 LSA 均已完成交换,路由器数据库已完全同步。

 

OSPF 路由器使用 Hello 协议开始建立和维护邻接关系。hello 协议通过组播地址 224.0.0.5 向直接连接的 OSPF 路由器发送很小的 hello 数据包。这些数据包在以太网和广播链路上每 10 秒发送一次,在非广播链路上则是每 30 秒发送一次。hello 数据包中还包含路由器设置信息。这些设置包括 hello 间隔、断路间隔和网络类型,还可能包括身份验证类型和身份验证数据(若已配置)。任何两台路由器要组成邻接关系,其所有设置都必须一致。路由器会将找到的邻居邻接关系记录到 OSPF 邻接数据库中。

DR:在至少连接有两台路由器的OSPF网络中,由OSPF Hello协议指定的路由器。指定路由器会生成LSA。它能够减少所需的邻接数,进而减少路由协议流量以及拓扑数据库的大小。

BDR:备用指定路由器,被表示为在指定路由器失效时取代其地位的路由器。

DROther:OSPF网络上除DR和BDR以外的任何路由器。

DR 和 BDR 的作用是减少发送的更新数量,减少不必要的流量以及减少所有路由器的处理开销。通过要求所有路由器仅从 DR 接收更新即可实现上述目的。在广播网段上只有一个 DR 和 BDR。所有其它路由器都必须连接到 DR 和 BDR。当某条链路出现故障时,包含该链路信息的路由器会使用组播地址 224.0.0.6 将此信息发送给 DR。DR 负责通过组播地址 224.0.0.5 将此变化发布到其它所有 OSPF 路由器上。除了减少通过网络发送的更新数量以外,此过程还可确保所有路由器从统一的源设备同时接收相同的信息。

BDR 确保不会出现单点故障。与 DR 类似,BDR 会监听 224.0.0.6 并接收发送到 DR 的所有更新。如果 DR 出现故障,则 BDR 会立即接管 DR 并选择新的 BDR。任何未被选为 DR 或 BDR 的路由器均叫做 DROther。

友情链接: