ospf工作原理

ospf工作原理,第1张

ospf工作原理
每个路由器回周期性的向相邻路由器发送探测报文(Hello报文),检测其是否可达。如果邻站给予应答,说明链路正常;否则说明链路出现故障。

如果一个路由器检测到某条链路状态协议发生变化,该路由器就发送链路状态更新报文,采用泛洪 *** 作对全网更新链路状态。
泛洪指某个路由器收到更新报文后都将这个报文发送给自己的相邻路由器,直到报文送到整个网络\n即使链路状态没有发生变化,每隔 30min 路由器要向网络中的其他路由器广播链路状态信息,以保证链路状态数据库和全网保持一致。

每个路由器收到其他路由器的链路状态信息后,更新链路状态数据库,构建整个网络的拓扑图,利用 Dijkstra 的最短路径算法计算出到达每个网络的最短路径(就是路由表中的内容)。

链路状态法工作过程:

1、了解直连网络。

2、向邻居发送Hello数据包。

3、建立链路状态数据包。

4、将链路状态数据包泛洪给邻居。

5、构建链路状态数据库。

运行链路状态路由协议的路由器,只将它所直连的链路状态与邻居共享,这个邻居是指一个域内(domain),或一个区域内(area)的所有路由器。

扩展资料:

链路状态路由协议,更新的是“拓扑”。每台路由器上都有完全相同的拓扑,他们各自分别进行SPF算法,计算出路由条目。

一条重要链路的变化,不必再发送所有被波及的路由条目,只需发送一条链路通告,告知其它路由器本链路发生故障即可。其它路由器会根据链路状态,改变自已的拓扑数据库,重新计算路由条目。

一、适用范围不同。

RIP适用于中小网络,比较简单。没有系统内外、系统分区,边界等概念,用到不是分类的路由。

OSPF适用于较大规模网络。它把自治系统分成若干个区域,通过系列内外路由的不同处理,区域内和区域间路由的不同处理方法,减少网络数据量大传输。

二、运行有区别。

RIP运行时,首先向外发送请求报文,其他运行RIP的路由器收到请求后,马上把自己的路由表发送过去,在没收到请求时,会将路由删除,并广播自己新的路由表。

OSPF要求每个路由器周期性的发送链路状态信息,使得区域内所有路由器最终都能形成一个跟踪网络链路状态的链路状态数据库。利用链路状态数据库,每一个路由器都可以以自己为“根”,建立一个最短路径优先树,用来描述以自己出发,到达每个目的网络所需的开销。

三、使用情况不同。

OSPF占用的实际链路带宽比RIP少;OSPF使用的CPU时间比RIP少;OSPF适用的内存比RIP大;RIP在网络上达到平衡用的时间比OSPF多。

扩展资料

在IPv4协议上工作时,OSPF可通过内建的安全机制保护链路状态数据库的安全性。在IPv6网络上,本协议使用IPSec提供安全服务。

OSPFv3对OSPFv2进行了如下修改:

1 邻居路由器只使用链路本地地址进行路由信息交换(虚拟链路除外)

2 OSPFv3基于每条单独的链路进行工作

3 链路状态通告与Hello报文中不再包含网际协议前缀(IP Prefix)信息

参考资料:

百度百科-RIP协议

百度百科-OSPF路由协议

OSPF链路状态更新实例

链路状态更新(LSU) 数据包用于OSPF路由更新。一个LSU数据包可能包含11类型的链路状态通告(LSA),术语“链路状态更新(LSU)”和“链路状态通告 (LSA)”之间的差异有时较难分清。下面是我带来的OSPF链路状态更新相关知识,希望对你有帮助!

以下是LAS的11种类型:

OSPF算法

每台 OSPF 路由器都会维持一个链路状态数据库,其中包含来自其它所有路由器的LSA。一旦路由器收到所有LSA并建立其本地链路状态数据库,OSPF就会使用Dijkstra的最短路径优先(SPF) 算法创建一个SPF树。随后,将根据SPF 树,使用通向每个网络的最佳路径填充 IP路由表。

● 管理距离:OSPF的管理距离(AD)是“110”。

● 身份验证:与对其它路由协议一样,OSPF也可进行身份验证配置。对传输的路由信息进行身份验证是好的做法。此做法可确保路由器仅接受配置有相同的口令和身份验证信息的其它路由器所发来的路由信息。

一、OSPF基本配置

Router ospf 命令:

process-id 是一个介于1和65535之间的数字,由网络管理员选定。process-id仅在本地有效,这意味着路由器之间建立相邻关系时无需匹配该值。

配置方法:

R1#conf t

R1(config)#router ospf 1

R1(config-router)#

Network 命令

OSPF 中的network 命令与其它IGP 路由协议中的 network 命令具有相同的功能:

● 路由器上任何符合 network 命令中的网络地址的接口都将启用,可发送和接收 OSPF 数据包。

● 此网络(或子网)将被包括在 OSPF 路由更新中。

Router(config-router)#network network-address wildcard-mask areaarea-id

area area-id 指OSPF 区域。OSPF 区域是共享链路状态信息的一组路由器。相同区域内的所有OSPF路由器的链路状态数据库中必须具有相同的链路状态信息,这通过路由器将各自的链路状态泛洪给该区域内的其它所有路由器来实现。(“ 0”为骨干区域)

二、OSPF路由器ID

确定路由器ID

OSPF 路由器 ID 用于唯一标识OSPF路由域内的每台路由器。Cisco路由器按下列顺序根据下列三个条件确定路由器 ID:

● 使用通过OSPF router-id命令配置的 IP 地址。

● 如果未配置 router-id,则路由器会选择其所有环回接口的最高 IP 地址。

● 如果未配置环回接口,则路由器会选择其所有物理接口的最高活动 IP 地址。

OSPF router-id 命令

Router(config)#router ospf process-id //进入OSPF配置模式

Router(config-router)#router-id ip-address //配置Router-id

修改路由器 ID

使用:Router#clear ip ospf process 命令来重启OSPF进程,然后去修改你想要的Router-id。

重复的路由器 ID

当同一个OSPF路由域内的两台路由器具有相同的路由器ID时,将无法正常路由。如果两台相邻路由器的路由器ID相同,则无法建立相邻关系。当出现重复的OSPF路由器ID时,IOS将显示一条类似下列的消息:

%OSPF-4-DUP_RTRID1:Detected router with duplicate router ID

验证Router-id:使用show ip protocols来验证。

验证OSPF

show ip ospf neighbor 命令可用于验证 OSPF 相邻关系并排除相应的故障。此命令为每个邻居显示下列输出:

● Neighbor ID — 该相邻路由器的路由器 ID。

● Pri — 该接口的 OSPF 优先级。

● State — 该接口的 OSPF 状态。FUL● 状态表明该路由器和其邻居具有相同的OSPF链路状态数据库。

● Dead Time — 路由器在宣告邻居进入 down(不可用)状态之前等待该设备发送 Hello数据包所剩余的时间。此值在该接口收到Hello数据包时重置。

● Address — 该邻居用于与本路由器直连的接口的IP地址。

● Interface — 本路由器用于与该邻居建立相邻关系的接口。

在下列情况下,两台路由器不会建立OSPF相邻关系:

● 子网掩码不匹配,导致该两台路由器分处于不同的网络中。

● OSPF Hello计时器或 Dead 计时器不匹配。

● OSPF 网络类型不匹配。

● 存在信息缺失或不正确的OSPF network命令。

其它功能强大的OSPF故障排除命令包括:

show ip protocols

可用于快速验证关键 OSPF 配置信息,其中包括OSPF进程ID、路由器ID、路由器正在通告的网络、正在向该路由器发送更新的邻居以及默认管理距离

show ip ospf

命令也可用于检查 OSPF 进程 ID 和路由器 ID,此外,还可显示 OSPF 区域信息以及上次计算 SPF 算法的时间。

路由器每次收到有关拓扑的新信息时,必须重新运行 SPF 算法,SPF 算法会占用很多 CPU 资源。以下信息是使用show ip ospf的输出。

Initial SPF schedule delay 5000 msecs

Minimum hold time between two consecutive SPFs 10000 msecs

Maximum wait time between two consecutive SPFs 10000 msecs

状态在 up 和 down 之间来回变化的网络称为链路不稳。链路不稳会导致区域内的OSPF路由器持续重新计算SPF算法,从而无法正确收敛。为尽量减轻此问题,路由器在收到一个LSU后,会等待 5 秒(5000毫秒)才运行SPF算法。这样可以防止路由器持续运行 SPF 算法,还存在一个 10 秒(10000 毫秒)的保留时间。路由器运行完一次 SPF 算法后,会等待 10 秒才再次运行该算法。

show ip ospf interface

此命令用于检验 Hello 间隔和 Dead 间隔的最快方法。Cost就是开销值。

检查路由表

使用show ip route 命令可用于检验路由器是否正在通过 OSPF 发送和接收路由。每条路由开头的 O 表示路由来源为 OSPF。

OSPF度量

OSPF度量称为开销RFC2328中有下列描述:“开销与每个路由器接口的输出端关联。系统管理员可配置此开销。开销越低,该接口越可能被用于转发数据流量。”

Cisco IOS 使用从路由器到目的网络沿途的传出接口的累积带宽作为开销值。

图示为各种接口的默认OSPF开销

参考带宽

参考带宽默认为10的8次幂,即 100,000,000 bps,亦即100 Mbps。这使带宽等于或大于100 Mbps 的接口具有相同的OSPF开销 1。

可使用 OSPF 命令 auto-cost reference-bandwidth 修改参考带宽值。如果需要使用此命令,则建议同时用在所有路由器上,以使OSPF路由度量保持一致。

OSPF累计开销

OSPF路由的开销为从路由器到目的网络的累计开销值。(就是说源地址到目的地址中间经过的所有路径的开销值进行相加)

修改链路的开销

bandwidth 接口命令或 ip ospf cost 接口命令都可用于达到此目的 — 使OSPF在确定最佳路由时使用准确的值。(要该就要两端都要改)

Router(config-if)#bandwidth bandwidth-kbps //修改接口的带宽参数。

Router(config-if)# ip ospf cost “加数字” //命令则直接将链路开销设置为特定值并免除了计算过程。

;

每一个区域只保存本区的链路状态,因此在多区OSPF中每一个区域的链路状态都是不同的。各区根据自己的链路状态计算最短路径,然后汇总到骨干区域,骨干区域路由器经过计算得到无环路由重新发布到各个区域。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13405050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存