雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2561|回复: 3

【摘自cisco网站】OSPF 如何工作以及如何用于设计和构建大型复杂网络(一)

[复制链接]
发表于 2011-10-19 19:26:59 | 显示全部楼层 |阅读模式
本文介绍 OSPF 如何工作以及如何用于设计和构建大型复杂网络。 背景信息 开发 OSPF 协议是因为 Internet 社区中需要为 TCP/IP 协议族引入具备强大功能的非专有内部网关协议 (IGP)。 关于创建 Internet 通用互操作 IGP 的讨论从 1988 年就开始了,但直到 1991 年才正式成形。 当时,OSPF 工作组请求为了 Internet 草案标准的发展而考虑 OSPF。
OSPF 协议基于链路状态技术,不同于传统 Internet 路由协议(如 RIP)中使用的基于 Bellman-Ford 矢量的算法。 OSPF 引入了一些新概念,如路由更新身份验证、可变长度子网掩码 (VLSM)、路由汇总等。
以下章节将讨论 OSPF 术语、算法以及该协议在当今的大型复杂网络设计方面的利弊。
OSPF 与 RIP 随着当今网络的快速成长和扩展,RIP 的局限性显得尤为突出。 RIP 的以下一些限制在大型网络中可能会导致出现问题:
  • RIP 的跃点限制为 15 个。 跨幅超过 15 个跃点(15 个路由器)的 RIP 网络是无法实现的。
  • RIP 不能处理可变长子网掩码 (VLSM)。 考虑到 IP 地址短缺和 VLSM 在有效分配 IP 地址方面的灵活性,这被认为是一个重大缺陷。
  • 完整路由表的定期广播消耗大量带宽。 这是大型网络中的一个主要问题,特别是在低速链路和广域网网云中。
  • RIP 的收敛速度慢于 OSPF。 在大型网络中,收敛大约需要几分钟的时间。 RIP 路由器会经历一段抑制和垃圾回收时期,并缓慢地使最近未接收的信息超时。 这在大型环境中并不合适,并且可能导致路由不一致。
  • RIP 没有网络延迟和链路成本的概念。 路由决策基于跃点计数。 与目标之间的跃点计数最少的路径始终是首选路径,即使较长的路径具有更佳的聚合链路带宽和较少的延迟也是如此。
  • RIP 网络是平面网络。 没有区域或边界的概念。 随着无类路由的引入以及聚合和汇总的智能使用,RIP 网络似乎已经落伍。

名为 RIP2 的新版 RIP 中引入了一些增强功能。 RIP2 解决了 VLSM、身份验证和多播路由更新的问题。 RIP2 并没有对 RIP(现在称为 RIP 1)实现重大改进,因为它仍然具有跃点计数和收敛缓慢方面的限制,而这两方面对当今的大型网络非常重要。
另一方面,OSPF 解决了以前存在的大多数问题:
  • 使用 OSPF 时,没有跃点计数限制。
  • VLSM 的智能使用在 IP 地址分配方面非常有用。
  • OSPF 使用 IP 多播发送链路状态更新。 这可确保对不监听 OSPF 数据包的路由器进行很少的处理。 并且,仅在路由更改时才发送更新,而不是定期发送。 这可保证更好地使用带宽。
  • 与 RIP 相比,OSPF 可更好地进行收敛。 这是因为路由更改是即时传播而不是定期传播的。
  • OSPF 允许更好地进行负载平衡。
  • OSPF 允许对网络进行逻辑定义,从而可将路由器划分到各个区域中。 这可限制整个网络中链路状态更新的急剧增长。 这也为汇聚路由和减少不必要的子网信息传播提供了一个机制。
  • OSPF 允许使用不同的口令身份验证方法进行路由身份验证。
  • OSPF 允许对注入自治系统的外部路由进行传输和标记。 这可跟踪由外部协议(如 BGP)注入的外部路由。

当然,这会导致 OSPF 网络的配置和故障排除更加复杂。 习惯了简单 RIP 的管理员若要跟上 OSPF 网络的发展,就面临着必须了解大量新信息这一挑战。 此外,这在内存分配和 CPU 使用率方面也引入更多开销。 某些运行 RIP 的路由器可能必须升级才能处理 OSPF 引入的开销。
链路状态是什么意思? OSPF 是一种链路状态协议。 我们可以将链路视为路由器的接口。 链路状态是对接口及接口与相邻路由器的关系的描述。 例如,接口的说明将包括接口的 IP 地址、掩码、所连接的网络的类型、连接到该网络的路由器等。 所有这些链路状态的集合形成链路状态数据库。
最短路径优先算法 OSPF使用一种短的路径第一种算法为了构件和计算最短路径到所有已知目的地。最短路径计算与使用Dijkstra算法。 算法本身相当复杂。 这是高级,查看算法的多种步骤简化的方法:
  • 在初始化或由于在路由信息上的所有变化,路由器生成链路状态广播。 此广告代表所有连接状态的集在该路由器的。
  • 所有路由器通过泛滥交换连接状态。 接收链路状态更新的每个路由器都应在其链路状态数据库中存储一个副本,然后将更新传播到其他路由器。
  • 在每个路由器数据库完成后,路由器计算最短路径树对所有目的地。 路由器使用Dijkstra算法为了计算最短路径树。 目的地、到达那些目的地的相关的开销和下一跳形成IP路由表。
  • 如果 OSPF 网络中未发生任何更改(例如要添加或删除的链路或网络的成本),OSPF 应十分稳定。 发生的所有更改通过链路状态包和Dijkstra算法被传达重新计算为了查找最短路径。

该算法将每个路由器置于一个树的根部,并基于到达每个目标所需的累积成本计算与该目标之间的最短路径。 每个路由器都有其自己的拓扑视图,即使所有路由器都使用同一个链路状态数据库生成最短路径树。 以下各部分指示生成最短路径树所涉及的各个方面。
OSPF 成本 OSPF 中接口的成本(也称为度量)是在特定接口上发送数据包所需开销的指示。 接口的成本与接口的带宽成反比。 带宽越高,成本就越低。 跨 56K 串行线路比跨 10M 以太网线路需要更多开销(更高成本)和延时。 用于计算成本的公式如下:
  • 成本 = 10000 0000/带宽(以 bps 为单位)

例如,跨 10M 以太网线路的成本为 10 EXP8/10 EXP7 = 10,跨 T1 线路的成本为 10 EXP8/1544000 = 64。
默认情况下,接口的成本基于带宽进行计算; 使用 ip ospf cost <value> 接口子配置模式命令可以强制设置接口成本。
最短路径树 假设我们具有下面的网络图,其中指示了接口成本。 若要生成 RTA 的最短路径树,我们必须将 RTA 作为树的根并计算每个目标的最小成本。

以上是以 RTA 为视角的网络视图。 请注意成本计算中的箭头方向。 例如,当计算到网络 192.213.11.0 的成本时,不涉及从 RTB 接口到网络 128.213.0.0 的成本。 RTA 可以通过 RTB 到达 192.213.11.0,成本为 15 (10+5)。 RTA 也可以通过 RTC 以 20 (10+10) 的成本或通过 RTB 以 20 (10+5+5) 的成本到达 222.211.10.0。 如果到同一个目标存在成本相等的路径,则 Cisco 的 OSPF 实现将会最多跟踪到同一目标的六个下一跃点。
在路由器生成最短路径树之后,将开始相应地生成路由表。 到达直接连接网络的度量(成本)为 0,到达其他网络的成本在树中进行计算。
区域与边界路由器 如前面所述,OSPF 使用泛洪在路由器之间交互链路状态更新。 路由信息的所有更改都泛洪给网络中的所有路由器。 引入区域是为了给链路状态更新的急剧增长设置边界。 路由器上的泛洪和 Dijkstra 算法计算限制为针对区域内的更改。 区域之内的所有路由器都有确切的链路状态数据库。 属于多个区域的路由器以及将这些区域连接到骨干网区域的路由器称为区域边界路由器 (ABR)。 因此,ABR 必须维护描述骨干网区域和所连接的其他区域的信息。

区域特定于接口。 所有接口都在同一个区域之内的路由器称为内部路由器 (IR)。 接口在多个区域内的路由器称为区域边界路由器 (ABR)。 在 OSPF 和其他路由协议(IGRP、EIGRP、IS-IS、RIP、BGP、Static)或其他 OSPF 路由进程实例之间用作网关(重分配)的路由器称为自治系统边界路由器 (ASBR)。 所有路由器都可以是 ABR 或 ASBR。
链路状态数据包 存在不同类型的链路状态数据包,通常可在 OSPF 数据库(附录 A)中看到这些数据包。 下图显示了不同的类型:

如上所示,路由器链路是属于特定区域的路由器上接口的状态指示。 每个路由器都将为其所有接口生成路由器链路。 汇总链路由 ABR 生成; 这便是网络可达性信息在区域之间的散发方式。 通常,所有信息都会注入骨干网(区域 0),骨干网又将这些信息传递给其他区域。 ABR 也要负责传播 ASBR 可达性。 这便是路由器了解如何到达其他 AS 中的外部路由的方式。
网络链路由分段上的指定路由器 (DR) 生成(DR 将在稍后讨论)。 此信息表示连接到特定多路访问分段(如以太网、令牌环和 FDDI(也称为 NBMA))的所有路由器。
外部链路表示 AS 外的网络。 这些网络通过重分配注入 OSPF。 ASBR 负责将这些路由注入自治系统。


该贴已经同步到 victor_huang的微博
发表于 2011-10-19 21:27:16 | 显示全部楼层
沙发,貌似是贺Q兄弟?
发表于 2011-10-19 23:19:08 | 显示全部楼层
学习学习 顶一下
发表于 2011-10-25 20:45:11 | 显示全部楼层
表示看不太懂
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-5-3 04:04 , Processed in 0.076109 second(s), 18 queries , Gzip On.

快速回复 返回顶部 返回列表