企业培训_静态的与动态的内部路由协议培训_第1页
企业培训_静态的与动态的内部路由协议培训_第2页
企业培训_静态的与动态的内部路由协议培训_第3页
企业培训_静态的与动态的内部路由协议培训_第4页
企业培训_静态的与动态的内部路由协议培训_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录目录 1.路由协议路由协议3 1.1.静态的与动态的内部路由3 1.2.选路信息协议(RIP).5 1.2.1.慢收敛问题的解决.7 1.2.2.RIP报文格式8 1.2.3.RIP编址约定9 1.2.4.RIP报文的发送10 1.3.OSPF10 1.3.1.概述.10 1.3.2.数据包格式.10 1.3.3.OSPF基本算法11 1.3.4.OSPF路由协议的基本特征12 1.3.5.区域及域间路由.13 1.3.6.OSPF协议路由器及链路状态数据包分类16 1.3.7.OSPF协议工作过程18 1.3.8.OSPF路由协议验证21 1.3.9.小结.21 1.4.HELLO 协议 .22 1.5.将 RIP,HELLO 和 EGP 组合起来.23 1.6.边界网关协议第 4 版(BGP4)24 1.7.EGP27 1.7.1.给体系结构模型增加复杂性.27 1.7.2.一个其本思想:额外跳.28 1.7.3.自治系统的概念.30 1.7.4.外部网关协议(EGP).31 1.7.5.EGP报文首部32 1.7.6.EGP邻站获取报文33 1.7.7.EGP邻站可达性报文34 1.7.8.EGP轮询请求报文34 1.7.9.EGP选路更新报文35 1.7.10.从接收者的角度来度量.37 1.7.11.EGP的主要限制38 2.CISCO 路由器产品介绍路由器产品介绍 .40 2.1.CISCO 2500 40 2.2.CISCO 4500-M .40 2.3.CISCO 7200 41 2.4.CISCO 7513/7507.43 3.路由器的基本配置路由器的基本配置43 参数设置 43 网络号43 IP 类设置.44 菜单设置44 欢迎文本44 异步线的设置44 总结45 附录一 路由器常用命令45 4.基本维护基本维护52 两种状态52 帮助52 命令简写52 跟踪错误53 进入设置状态53 存储退出53 删除设置53 一些常用命令53 修改地址53 修改 enable secrect password.55 附录二 常见网络故障分析及排除.55 1 路由器常用测试命令55 2 路由器传输故障排除方法55 3网络常见问题.57 1. 路由协议路由协议 1.1. 静态的与动态的内部路由 在一个自治系统内的两个路由器彼此互为内部路由器。例如,因为核心构成了一个 自治系统,两个 Internet 核心路由器互为内部路由器。在大学校园里的两个路由器也互为 内部路由器,因为在校园里的所有机器都属于同一个自治系统。 自治系统中的路由器如何获得关于本系统内部的网络的信息呢?在小型的、缓慢变 化着的互连网络中,管理者可以使用手工方式进行路由的建立与修改。管理者保留一张关 于网络的表格,并在有新的网络加入到该自治系统或从该自治系统删除一个网络时,更新 该表格。例如图 1.1 中显示的小公司的互连网络。为这样的互连网络选路耗费就微不足道, 因为任何两点之间仅有一条路由。管理者可用人工的方式来配置所有的主机和路由器的路 由。互连网络更改状态(如新增一个网络)时,管理者重新配置所有机器上的路由。 图 1.1 在一个网点中包括了 5 个以太网和 4 个路由器 的小型互连网络。在这个互连网络中任意两台主 机之间仅有一个路由 人工的系统明显存在缺点,它不能适应网络的迅速增长或迅速变化。在大型的、迅 速变化的环境中,如 Internet 网,人对情况变化的反应速度太慢,来不及处理问题;必 须使用自动机制。采用自动机制还有利于提高可靠性,并对某些路由可变的小型互连网络 中的故障采取反应措施。为了验证这一点,我们假设在图 1.1 中增加一个路由器,使之变 为图 1.2 所示的结构。 网络 5 网络 4 网络 1 网络 2 网络 3 R2 R1 R3R4 图 1.2 增加了路由器 R5 后使得网络 2 和 3 之间多了一条 备用路径当原有路由出故障时,选路软件能够迅速切换 到备用路由 对于拥有多个物理路径的互连网络体系结构,管理者通常选择其中一条作为基本路 径。如果该基本路径上的路由器出故障,就必须改动路由使得通信流量通过备用路由器来 传输。人工改变路由的方式耗时长而且容易带来错误。因此,即便是小型互连网中,也应 使用处动机制来迅速而可靠地改变路由。 为了自动地保存准确的网络可达信息,内部路由器之间要进行通信,即路由器与可 到达的另一个路由器要交换网络可到达性数据或网络选路信息。把整个自治系统的可到达 信息汇集起来之后,系统中某个路由器就使用 EGP 把它们通告给另一个自治系统。 内部路由器通信与外部路由器通信的不同之处就是:EGP 提供了为外部路由器通信广 泛使用的标准,而内部路由器通信却没有一个单独的标准。造成这种情况的原因之一,就 是自治系统的拓扑结构和具体技术的多样性。另一个原因是结构简单与功能强大之间的折 衷,即易于安装和配置的协议往往不能提供强大的功能。因此,流行的适用于内部路由器 通信的协议有很多种,但多数自治系统只选择其中一个在内部的来传播选路信息。 由于没有单独的标准,我们使用内部网关协议 IGP(Interior Gateway Protocol)作 为统称来描述所有的用于内部路由器之间交换的网络可达信息及选路信息的算法。例如 Butterfly 核心路由器构成了一个特定的自治系统,它使用 SPREAD 作为其内部网关协议 IGP。有些自治系统使用 EGP 来作 IGP,不过这对那些由具有广播功能的局域网组成的小型 自治系统没有多少意义。 图 1.3 是自治系统使用某种 IGP 在内部路由器之间传播可到达信息的示意图。 在这个图中,IGP1 和 IGP2 分别表示自治系统 1 和 2 所使用的内部网关协议。从图中 可以得到这个重要的概念: 网络 5 网络 4 网络 1 网络 2 网络 3 R2R5 R1 R3R4 图 1.3 两个自治系统各自在其内部使用不同的 IGP, 但是其外部路由器使用 EGP 与另一个系统通信 的示意图 一个单个的路由器可以同时使用两种选路协议,一个用于到 自治系统之外的通信,另一个用于自治系统内部的通信。 具体地说,运行 EGP 通告可达性的路由器,通常还需要运行一种 IGP,以便获得其自 治系统内部的信息。 1.2. 选路信息协议(RIP) 使用最广泛的一种 IGP 是选路信息协议 RIP(Routing Information Protocol) ,RIP 的另一个名字是 routed(路由守护神) ,来自一个实现它的程序。这个程序最初由加利福 尼亚大学伯克利分校设计,用于给他们在局域网上的机器提供一致的选路和可达信息。它 依靠物理网络的广播功能来迅速交换选路信息。它并不是被设计来用于大型广域网的(尽 管现在的确这么用) 。 在旋乐(Xerox)公司的 Palo Alto 研究中心 PARC 早期所作的关于网络互连的研究 的基础上,routed 实现了起源于 Xerox NS RIP 的一个新协议,它更为通用化,能够适应 多种网络。 尽管在其前辈上做了一些小改动,RIP 作为 IGP 流行起来并非技术上有过人之处,而 是由于伯克利分校把路由守护神软件附加在流行的 4BSD UNIX 系统上一起分发,从而使得 许多 TCP/IP 网点根本没考虑其技术上的优劣就采用 routed 并开始使用 RIP。一旦安装并 使用了这个软件,它就成为本地选路的基础,研究人员也开始在大型网络上使用它。 关于 RIP 的最令人吃惊的事可能就是它在还没有正式标准之前就已经广泛流行了。 大多数的实现都脱胎于伯克利分校的程序,但是由于编程人员对未形成文档的微妙细节理 解不同而造成了它们之间互操作性限制。协议出现新版本后,出现了更多的问题。在 1988 年 6 月形成了一个 RFC 标准,这才使软件商解决了互操作性问题。 RIP 协议的基础就是基于本地网的矢量距离选路算法的直接而简单的实现。它把参加 通信的机器分为主机的(active)和被动的(passive 或 silent) 。主动路由器向其他路由 器通告其路由,而被动路由器接收通告并在此基础上更新其路由,它们自己并不通告路由。 EGP IGP1 R1 IGP1 IGP2 R2 IGP2 只有路由器能以主动方式使用 RIP,而主机只能使用被动方式。 以主动方式运行 RIP 的路由器每隔 30 秒广播一次报文,该报文包含了路由器当前的 选路数据库中的信息。每个报文由序偶构成,每个序偶由一个 IP 网络地址和一个代表到达 该网络的距离的整数构成。RIP 使用跳数度量(hop count metric)来衡量到达目的站的 距离。在 RIP 度量标准中,路由器到它直接相连的网络的跳数被定义为 1,到通过另一个 路由器可达的网络的距离为 2 跳,其余依此类推。因此从给定源站到目的站的一条路径的 跳数(number of hops 或 hop count)对应于数据报沿该路传输时所经过的路由器数。显 然,使用跳数作为衡量最短路径并不一定会得到最佳结果。例如,一条经过三个以太网的 跳数为 3 的路径,可能比经过两条低速串行线的跳数为 2 的路径要快得多。为了补偿传输 技术上的差距,许多 RIP 软件在通告低速网络路由时人为地增加了跳数。 运行 RIP 的主动机器和被动机器都要监听所有的广播报文,并根据前面所说的矢量 距离算法来更新其选路表。例如图 1.2 中的互连网络中,路由器 R1 在网络 2 上广播的选路 信息报文中包含了序偶(1,1) ,即它能够以费用值 1 到达网络 1。路由器 R2 和 R5 收到这 个广播报文之后,建立一个通过 R1 到达网络 1 的路由(费用为 2) 。然后,路由器 R2 和 R5 在网络 3 上广播它们的 RIP 报文时就会包含序偶(1,2) 。最终,所有的路由器和主机都会 建立到网络 1 的路由。 RIP 规定了少量的规则来改进其性能和可靠性。例如,当路由器收到另一个路由器传 来的路由时,它将保留该路由直到收到更好的路由。在我们所举的例子中,如果路由器 R2 和 R5 都以费用 2 来广播到网络 1 的路由,那么 R3 的 R4 就会将路由设置为经过先广播的那 个路由器到达网络 1。即: 为了防止路由在两个或多个费用相等的路径之间振荡不定,RIP 规定在 得到费用更小的路由之前保留原有路由不变。 如果第一个广播路由的路由器出故障(如崩溃)会有什么后果?RIP 规定所有收听者 必须对通过 RIP 获得的路由设置定时器。当路由器在选路表中安置新路由时,它也为之设 定了定时器。当该路由器又收到关于该路由的另一个广播报文后,定时器也要重新设置。 如果经过 180 秒后还没有下一次通告该路由,它就变为无效路由。 RIP 必须处理下层算法的三类错误。第一,由于算法不能明确地检测出选路的回路, RIP 要么假定参与者是可信赖的,要么采取一定的预防措施。第二,RIP 必须对可能的距离 使用一个较小的最大值来防止出现不稳定的现象(RIP 使用的值是 16) 。因而对于那些实际 跳数值在 16 左右的互连网络,管理者要么把它划分为若干部分,要么采用其他的协议。第 三,选路更新报文在网络之间的传输速度很慢,RIP 所使用的矢量距离算法会产生慢收敛 (slow convergence)或无限计数(count to infinity)问题从而引发不一致性。选择一 个小的无限大值(16) ,可以限制慢收敛问题,但不能彻底解决客观存在。 选路表的不一致问题并非仅在 RIP 中出现。它是出现在任何矢量距离协议中的一个 根本性的问题,在此协议中,更新报文仅仅包含由目的网络及到达该网络的距离构成的序 偶。为了理解这个问题我们考虑图 1.4 中路由集合。图中描述了在图 1.2 中到达网络 1 的 路由。 图 1.4 慢收敛问题。(a)中的三个路由器各有到网络 1 的路由。 (b)中,到网络 1 的路由已经消失了,但是 R2 对它的路由 通告引起了选路的环路 正如图 1.4(a)所显示的那样,R1 直接与网络 1 相连,所以在它的选路表中有一条 到该网络的距离为 1 的路由;在周期性的路由广播中包括了这个路由。R2 从 R1 处得知了 这个路由,并在自己的选路表中建立了相应的路由产工将之以距离值 2 广播出去。最后 R3 从 R2 处得知该路由并以距离值 3 广播。 现在假设 R1 到网络 1 的连接失效了。那么 R1 立即更新它的选路表把该路由的距离 置为 16(无穷大) 。在下一次广播时,R1 应该通告这一信息。但是,除非协议包含了额外 的机制预防此类情况,可能有其他的路由器在 R1 广播之前就广播了其路由。可能假设一个 特殊的情况,即 R2 正好在 R1 与网络 1 连接失效后通告其路由。因此,R1 就会收到 R2 的 报文,并对此使用通常的矢量距离算法:它注意到 R2 有到达网络 1 的费用更低的路由,计 算出现在到达网络 1 需要 3 跳(R2 通告的到网络 1 费用是 2 跳,再加上到 R2 的 1 跳) 。然 后在选路表中装入新的通过 R2 到达网络 1 的路由。图 1.4 描述了这个结果。这样的话,R1 和 R2 中的任一个收到去网络 1 的数据报之后,就会把该报文在两者之间来回传输直到寿命 计时器超时溢出。 这两个路由器随后广播的 RIP 不能迅速解决这个问题。在下一轮交换选路信息的过 程中,R1 通告它的选路表中的各个项目。而 R2 得知 R1 到网络 1 的距离是 3 之后,计算出 该路由新长度 4。到第三轮的时候,R1 收到从 R2 传来的路由距离增加的信息,把自己的选 路表中该路由的距离增到 5。如此循环往复,直至距离值到达 RIP 的极限。 1.2.1.1.2.1. 慢收敛问题的解决慢收敛问题的解决 对图 1.4 的例子,可以使用分割范围更新(split horizon update)技术来解决慢 收敛问题。在使用分割范围技术时,路由器记录下收到各路由的接口,而当这路由器通告 路由时,就不会把该路由再通过那个接口送回去。在该例中,路由器 R2 不会把它到网络 1 的距离为 2 的路由再通告给 R1,因此一旦 R1 与网络 1 的连接失效,它就不会再通告该路 由。经过几轮选路更新之后,所有的机器都会知道网络 1 是不可达的。但是分割范围更新 技术不能解决所有的拓扑结构中的问题 。 网络1 网络1 R3R2R1 (b) R1R2R3 (a) 考虑慢收敛问题的另一个方法是使用信息流的概念。如果路由器通告了到某网络的 短路由,所有接收路由器迅速地作出安装该路由的反应。当路由器停止通告某路由,协议 在判断该路由不可达之前,要依据超时机制来工作。当超时出现时,路由器寻找替代路由 并开始传播此信息。不幸的是,路由器并不知道这个替代路由是否要依赖于刚刚消失的路 由。因此,通常不应迅速地传播否定的信息。有一条警句或谓一语破的: 好消息传播得快,坏消息传播得慢。 解决慢收敛问题的另一个技术使用了抑制(hold down)法。抑制法迫使参与协议工 作的路由器,在收到关于某网络不可达的信息后的一段固定时间内,忽略任何关于该网络 的路由信息。这段抑制时间的典型长度是 60 秒。该技术的思路是等待足够的时间以便确信 所有的机器都收到坏消息,并且不会错误地接受内容过时的报文。需要指出的是,所有参 与 RIP 的机器都要遵循抑制策略,否则仍然会发生选路回路现象。抑制技术的缺点是:如 果出现了选路回路,那么在抑制期间内这些选路回路仍然会维持下去。更严重的是,在抑 制期间所有不正确的路由也保留下来了,即使是有替代路由的存在。 解决慢收敛问题的最后一种技术就是毒性逆转(poison reverse) 。当一条连接消失 后,路由器在若干个更新周期内都有保留该路由,但是在广播路由时则规定该路由的费用 为无限长。为提高毒性逆转法的效率,它应该与触发更新(triggered updates)技术结合。 触发更新技术使得新信息,路由器减少了因为想信好消息而容易出错的时间。 不幸的是,虽然触发更新技术、毒性逆转技术、抑制技术和分割范围技术能够解决 一些问题,但它们又带来了一些新的问题。例如,在许多路由器共享一个公共网络的结构 中采用触发更新技术的情况下,一个广播就能改变这些路由器的选路表,引发一轮新的广 播。如果第二轮广播改变了路由表,它又会引起更多的广播。这就产生了广播雪崩。 使用广播技术(这有可能产生选路回路)和使用抑制技术防止慢收敛问题,可使得 RIP 在广域网上的工作效率极低。广播要耗费大量宝贵的带宽。即便不出现广播雪崩现象, 所有机器周期性地进行广播也意味着网络流量随着路由器数目的增加而增加。而可能出现 的选路回路在线路容量有限的情况下可能就是致命的问题。当兜圈子的分组使得线路的容 量饱和后,路由器要交换一些选路报文来打破这种回路,就变得很困难甚至是不可能的。 同样,在广域网中,抑制期间可能太长,使得高层协议使用的定时器超时从而中断连接。 尽管有这些熟知的问题,但还是有许多的组织在广域网上使用 RIP 作为 IGP。 1.2.2.1.2.2. RIPRIP报文格式报文格式 RIP 报文大致可分为两类:选路信息报文和对信息的请求报文。它们都使用同样的格 式,由固定的首部和后面可选的网络和距离序偶列表组成。图 1.5 给出的报文的格式:在 这个图中,命令(COMMAND)字段按照下表的规定对应了各种操作: 08 1624 31 命令(1-5)版本(1)必为零 网 1 的协议族必为零 网 1 的 IP 地址 必为零 必为零 至网 1 的距离 网 2 的协议族必为零 网 2 的 IP 地址 必为零 必为零 至网 2 的距离 图 1.5 RIP 报文的格式。在 32 比特的首部之后,报文包含了一 系列的序偶,每个序偶由一个网络 IP 地址和一个到达该网络 的整数距离值构成 命令命令含含 义义 1请求部分的或全部的选路信息 2响应,包含发送方选路表内的网络距离序偶 3启动跟踪模式(已过时) 4关闭跟踪模式(已过时) 5保留由 Sun Microsystem 公司内部使用 路由器或主机通过发送请求命令向另一个路由器请求(request)选路信息。路由器 使用响应(response)命令回答。但是在大多数情况下,路由器不经请求就周期性发送响 应报文。版本(VERSION)字段包含了协议的版本号(目前的值是 1) ,接收方检测该字段 以便对报文作出正确的解释。 1.2.3.1.2.3. RIPRIP编址约定编址约定 RIP 的普遍适用性也体现在它传送网络地址的方式上。它的地址格式不局限于供 TCP/IP 用户使用,还能适应其他网络协议族的规定。图 1.5 中显示出 RIP 通告中的每个网 络地址可以长达 14 个八位组。当然,IP 地址仅需 4 个八位组,RIP 定义余下的八位组必须 为零。网络 i 族(FAMILY OF NET i)字段指出了解释它后面出现的网络地址时应遵循的协 议族。RIP 对各类地址族的赋值遵循了 4BSD UNIX 操作系统的规定(IP 地址类型的赋值是 2) 。 除了正常的 IP 地址之外,RIP 规定地址 0.0.0.0 作为默认路由。RIP 对通告的每个 路由,包括默认路由,都附加了距离度量标准。因此可以让两个路由器以不同的度量标准 来通告默认路由(如到互连网络的其余部分的路由) ,选择其中的一条作为基本路径,另一 条作为备用。 在 RIP 报文每个项目的最后一个字段是到网络 i 的距离(DISTANCE TO NET i)字段, 其内容是到达指定网络的整数型距离值。距离值是以跳数作为度量单位的,但是它的取值 范围限制在 1 到 16,16 代表无限远(也就是说该路由不存在) 。 1.2.4.1.2.4. RIPRIP报文的发送报文的发送 RIP 报文中并没包含显式的长度字段。相反,RIP 假设底层投递系统能够告诉接收方 收到的报文长度。特别是,在 TCP/IP 系统中,RIP 报文依赖于 UDP 来告诉接收方报文的长 度。RIP 工作在 UDP 上的端口是 520,虽然 RIP 可以以不同的 UDP 端口来发送请求报文,但 是在接收端的 UDP 端口通常都是 520,同时这也是 RIP 产生广播报文的源端口。 使用 RIP 作为内部路由器协议限制选路的度量必须基于跳数。但跳数通常仅仅提供 对网络响应能力和容量的粗略估量,而并不能产生最佳路由。此外,基于最小跳数来计算 路由会有严重的缺点,即它会使选路相对固定不变,因为路由不能对网络负荷的变化作出 反应。 1.3. OSPF 随着 Internet 技术在全球范围的飞速发展,OSPF 已成为目前 Internet 广域网和 Intranet 企业网采用最多、应用最广泛的路由协议之一。OSPF(Open Shortest Path First)路由协议 是由 IETF(Internet Engineering Task Force)IGP 工作小组提出的,是一种基于 SPF 算法的 路由协议,目前使用的 OSPF 协议是其第二版,定义于 RFC1247 和 RFC1583。 1.3.1.1.3.1. 概述概述 OSPF 路由协议是一种典型的链路状态(Link-state)的路由协议,一般用于同一个路 由域内。在这里,路由域是指一个自治系统(Autonomous System) ,即 AS,它是指一组通 过统一的路由政策或路由协议互相交换路由信息的网络。在这个 AS 中,所有的 OSPF 路 由器都维护一个相同的描述这个 AS 结构的数据库,该数据库中存放的是路由域中相应链 路的状态信息,OSPF 路由器正是通过这个数据库计算出其 OSPF 路由表的。 作为一种链路状态的路由协议,OSPF 将链路状态广播数据包 LSA(Link State Advertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运 行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。 1.3.2.1.3.2. 数据包格式数据包格式 在 OSPF 路由协议的数据包中,其数据包头长为 24 个字节,包含如下 8 个字段: * Version number-定义所采用的 OSPF 路由协议的版本。 * Type-定义 OSPF 数据包类型。OSPF 数据包共有五种: * Hello-用于建立和维护相邻的两个 OSPF 路由器的关系,该数据包是周期性地发送的。 * Database Description-用于描述整个数据库,该数据包仅在 OSPF 初始化时发送。 * Link state request-用于向相邻的 OSPF 路由器请求部分或全部的数据,这种数据包是 在当路由器发现其数据已经过期时才发送的。 * Link state update-这是对 link state 请求数据包的响应,即通常所说的 LSA 数据包。 * Link state acknowledgment-是对 LSA 数据包的响应。 * Packet length-定义整个数据包的长度。 * Router ID-用于描述数据包的源地址,以 IP 地址来表示。 * Area ID-用于区分 OSPF 数据包属于的区域号,所有的 OSPF 数据包都属于一个特定 的 OSPF 区域。 * Checksum-校验位,用于标记数据包在传递时有无误码。 * Authentication type-定义 OSPF 验证类型。 * Authentication-包含 OSPF 验证信息,长为 8 个字节。 1.3.3.1.3.3. OSPFOSPF基本算法基本算法 SPF 算法及最短路径树算法及最短路径树 SPF 算法是 OSPF 路由协议的基础。SPF 算法有时也被称为 Dijkstra 算法,这是因为最 短路径优先算法 SPF 是 Dijkstra 发明的。SPF 算法将每一个路由器作为根(ROOT)来计算 其到每一个目的地路由器的距离,每一个路由器根据一个统一的数据库会计算出路由域的 拓扑结构图,该结构图类似于一棵树,在 SPF 算法中,被称为最短路径树。在 OSPF 路由 协议中,最短路径树的树干长度,即 OSPF 路由器至每一个目的地路由器的距离,称为 OSPF 的 Cost,其算法为: Cost = 100106/链路带宽 在这里,链路带宽以 bps 来表示。也就是说,OSPF 的 Cost 与链路的带宽成反比,带 宽越高,Cost 越小,表示 OSPF 到目的地的距离越近。举例来说,FDDI 或快速以太网的 Cost 为 1,2M 串行链路的 Cost 为 48,10M 以太网的 Cost 为 10 等。 链路状态算法链路状态算法 作为一种典型的链路状态的路由协议,OSPF 还得遵循链路状态路由协议的统一算法。 链路状态的算法非常简单,在这里将链路状态算法概括为以下四个步骤: 1、 当路由器初始化或当网络结构发生变化(例如增减路由器,链路状态发生变化等) 时,路由器会产生链路状态广播数据包 LSA(Link-State Advertisement) ,该数据 包里包含路由器上所有相连链路,也即为所有端口的状态信息。 2、 所有路由器会通过一种被称为刷新(Flooding)的方法来交换链路状态数据。 Flooding 是指路由器将其 LSA 数据包传送给所有与其相邻的 OSPF 路由器,相邻 路由器根据其接收到的链路状态信息更新自己的数据库,并将该链路状态信息转 送给与其相邻的路由器,直至稳定的一个过程。 3、 当网络重新稳定下来,也可以说 OSPF 路由协议收敛下来时,所有的路由器会根 据其各自的链路状态信息数据库计算出各自的路由表。该路由表中包含路由器到每一个可 到达目的地的 Cost 以及到达该目的地所要转发的下一个路由器(next-hop) 。 4、 第 4 个步骤实际上是指 OSPF 路由协议的一个特性。当网络状态比较稳定时,网 络中传递的链路状态信息是比较少的,或者可以说,当网络稳定时,网络中是比较安静的。 这也正是链路状态路由协议区别与距离矢量路由协议的一大特点。 1.3.4.1.3.4. OSPFOSPF路由协议的基本特征路由协议的基本特征 前文已经说明了 OSPF 路由协议是一种链路状态的路由协议,为了更好地说明 OSPF 路由 协议的基本特征,我们将 OSPF 路由协议与距离矢量路由协议之一的 RIP(Routing Information Protocol)作一比较,归纳为如下几点: * RIP 路由协议中用于表示目的网络远近的唯一参数为跳(HOP) ,也即到达目的网络 所要经过的路由器个数。在 RIP 路由协议中,该参数被限制为最大 15,也就是说 RIP 路由 信息最多能传递至第 16 个路由器;对于 OSPF 路由协议,路由表中表示目的网络的参数为 Cost,该参数为一虚拟值,与网络中链路的带宽等相关,也就是说 OSPF 路由信息不受物 理跳数的限制。并且,OSPF 路由协议还支持 TOS(Type of Service)路由,因此,OSPF 比较适合应用于大型网络中。 * RIP 路由协议不支持变长子网屏蔽码(VLSM) ,这被认为是 RIP 路由协议不适用于 大型网络的又一重要原因。采用变长子网屏蔽码可以在最大限度上节约 IP 地址。OSPF 路 由协议对 VLSM 有良好的支持性。 * RIP 路由协议路由收敛较慢。RIP 路由协议周期性地将整个路由表作为路由信息广播 至网络中,该广播周期为 30 秒。在一个较为大型的网络中,RIP 协议会产生很大的广播信 息,占用较多的网络带宽资源;并且由于 RIP 协议 30 秒的广播周期,影响了 RIP 路由协 议的收敛,甚至出现不收敛的现象。而 OSPF 是一种链路状态的路由协议,当网络比较稳 定时,网络中的路由信息是比较少的,并且其广播也不是周期性的,因此 OSPF 路由协议 即使是在大型网络中也能够较快地收敛。 * 在 RIP 协议中,网络是一个平面的概念,并无区域及边界等的定义。随着无级路由 CIDR 概念的出现,RIP 协议就明显落伍了。在 OSPF 路由协议中,一个网络,或者说是一 个路由域可以划分为很多个区域 area,每一个区域通过 OSPF 边界路由器相连,区域间可 以通过路由总结(Summary)来减少路由信息,减小路由表,提高路由器的运算速度。一 个典型的 OSPF 网络结构可以参见附图二 附图 2:OSPF 典型结构 * OSPF 路由协议支持路由验证,只有互相通过路由验证的路由器之间才能交换路由信 息。并且 OSPF 可以对不同的区域定义不同的验证方式,提高网络的安全性。 * OSPF 路由协议对负载分担的支持性能较好。OSPF 路由协议支持多条 Cost 相同的链 路上的负载分担,目前一些厂家的路由器支持 6 条链路的负载分担。 1.3.5.1.3.5. 区域及域间路由区域及域间路由 前文已经提到过,在 OSPF 路由协议的定义中,可以将一个路由域或者一个自治系统 AS 划分为几个区域。在 OSPF 中,由按照一定的 OSPF 路由法则组合在一起的一组网络或路 由器的集合称为区域(AREA) 。 在 OSPF 路由协议中,每一个区域中的路由器都按照该区域中定义的链路状态算法来 计算网络拓扑结构,这意味着每一个区域都有着该区域独立的网络拓扑数据库及网络拓扑 图。对于每一个区域,其网络拓扑结构在区域外是不可见的,同样,在每一个区域中的路 由器对其域外的其余网络结构也不了解。这意味着 OSPF 路由域中的网络链路状态数据广 播被区域的边界挡住了,这样做有利于减少网络中链路状态数据包在全网范围内的广播, 也是 OSPF 将其路由域或一个 AS 划分成很多个区域的重要原因。 随着区域概念的引入,意味着不再是在同一个 AS 内的所有路由器都有一个相同的链 路状态数据库,而是路由器具有与其相连的每一个区域的链路状态信息,即该区域的结构 数据库,当一个路由器与多个区域相连时,我们称之为区域边界路由器。一个区域边界路 由器有自身相连的所有区域的网络结构数据。在同一个区域中的两个路由器有着对该区域 相同的结构数据库。 我们可以根据 IP 数据包的目的地地址及源地址将 OSPF 路由域中的路由分成两类,当 目的地与源地址处于同一个区域中时,称为区域内路由,当目的地与源地址处于不同的区 域甚至处于不同的 AS 时,我们称之为域间路由。 OSPF 的骨干区域及虚拟链路(Virtual-link) 在 OSPF 路由协议中存在一个骨干区域(Backbone) ,该区域包括属于这个区域的网络 及相应的路由器,骨干区域必须是连续的,同时也要求其余区域必须与骨干区域直接相连。 骨干区域一般为区域 0,其主要工作是在其余区域间传递路由信息。所有的区域,包括骨 干区域之间的网络结构情况是互不可见的,当一个区域的路由信息对外广播时,其路由信 息是先传递至区域 0(骨干区域),再由区域 0 将该路由信息向其余区域作广播。骨干区域与 其余区域的关系可以以附图三来说明。 附图 3:骨干区域及域间路由 在实际网络中,可能会存在 backbone 不连续的或者某一个区域与骨干区域物理不相连 的情况,在这两种情况下,系统管理员可以通过设置虚拟链路的方法来解决。 虚拟链路是设置在两个路由器之间,这两个路由器都有一个端口与同一个非骨干区域 相连。虚拟链路被认为是属于骨干区域的,在 OSPF 路由协议看来,虚拟链路两端的两个 路由器被一个点对点的链路连在一起。在 OSPF 路由协议中,通过虚拟链路的路由信息是 作为域内路由来看待的。下面我们分两种情况来说明虚拟链路在 OSPF 路由协议中的作用。 1.当一个区域与 area0 没有物理链路相连时 前文已经提到,一个骨干区域 Area 0 必须位于所有区域的中心,其余所有区域必须与 骨干区域直接相连。但是,也存在一个区域无法与骨干区域建立物理链路的可能性,在这 种情况下,我们可以采用虚拟链路。虚拟链路使该区域与骨干区域间建立一个逻辑联接点, 该虚拟链路必须建立在两个区域边界路由器之间,并且其中一个区域边界路由器必须属于 骨干区域。这种虚拟链路可以以下图来说明。 附图 4:虚拟链路(1) 在上图所示的例子中,区域 1 与区域 0 并无物理相连链路,我们可以在路由器 A 及路 由器 B 之间建立虚拟链路,这样,将区域 2 作为一个穿透网络(Transit-network) ,路由器 B 作为接入点,区域 1 就与区域 0 建立了逻辑联接。 2.当骨干区域不连续时 OSPF 路由协议要求骨干区域 area0 必须是连续的,但是,骨干区域也会出现不连续的 情况,例如,当我们想把两个 OSPF 路由域混合到一起,并且想要使用一个骨干区域时, 或者当某些路由器出现故障引起骨干区域不连续的情况,在这些情况下,我们可以采用虚 拟链路将两个不连续的区域 0 连接到一起。这时,虚拟链路的两端必须是两个区域 0 的边 界路由器,并且这两个路由器必须都有处于同一个区域的端口,以下图为例:附图 5:虚 拟链路(2) 在上图的例子中,穿过区域 1 的虚拟链路将两个分为两半的骨干区域连接到一起,路 由器 A 与 B 之间的路由信息作为 OSPF 域内路由来处理。 另外,当一个非骨干区域的区域分裂成两半时,不能采用虚拟链路的方法来解决。当 出现这种情况时,分裂出的其中一个区域将被其余的区域作为域间路由来处理。 残域(Stub area) 在 OSPF 路由协议的链路状态数据库中,可以包括 AS 外部链路状态信息,这些信息 会通过 flooding 传递到 AS 内的所有 OSPF 路由器上。但是,在 OSPF 路由协议中存在这样 一种区域,我们把它称为残域(stub area) ,AS 外部信息不允许广播进/出这个区域。对于 残域来说,访问 AS 外部的数据只能根据默认路由(default-route)来寻址。这样做有利于 减小残域内部路由器上的链路状态数据库的大小及存储器的使用,提高路由器计算路由表 的速度。 当一个 OSPF 的区域只存在一个区域出口点时,我们可以将该区域配置成一个残域, 在这时,该区域的边界路由器会对域内广播默认路由信息。需要注意的是,一个残域中的 所有路由器都必须知道自身属于该残域,否则残域的设置没有作用。另外,针对残域还有 两点需要注意:一是残域中不允许存在虚拟链路;二是残域中不允许存在 AS 边界路由器。 1.3.6.1.3.6. OSPFOSPF协议路由器及链路状态数据包分类协议路由器及链路状态数据包分类 OSPF 路由器分类路由器分类 当一个 AS 划分成几个 OSPF 区域时,根据一个路由器在相应的区域之内的作用,可 以将 OSPF 路由器作如下分类: 内部路由器:当一个 OSPF 路由器上所有直联的链路都处于同一个区域时,我们称这 种路由器为内部路由器。内部路由器上仅仅运行其所属区域的 OSPF 运算法则。 区域边界路由器:当一个路由器与多个区域相连时,我们称之为区域边界路由器。区 域边界路由器运行与其相连的所有区域定义的 OSPF 运算法则,具有相连的每一个区域的 网络结构数据,并且了解如何将该区域的链路状态信息广播至骨干区域,再由骨干区域转 发至其余区域。 AS 边界路由器:AS 边界路由器是与 AS 外部的路由器互相交换路由信息的 OSPF 路 由器,该路由器在 AS 内部广播其所得到的 AS 外部路由信息;这样 AS 内部的所有路由器 都知道至 AS 边界路由器的路由信息。AS 边界路由器的定义是与前面几种路由器的定义相 独立的,一个 AS 边界路由器可以是一个区域内部路由器或是一个区域边界路由器。 指定路由器DR:在一个广播性的、多接入的网络(例如 Ethernet、TokenRing 及 FDDI 环境)中,存在一个指定路由器(Designated Router) ,指定路由器主要在 OSPF 协议 中完成如下工作: * 指定路由器产生用于描述所处的网段的链路数据包network link,该数据包里包含 在该网段上所有的路由器,包括指定路由器本身的状态信息。 * 指定路由器与所有与其处于同一网段上的 OSPF 路由器建立相邻关系。由于 OSPF 路由器之间通过建立相邻关系及以后的 flooding 来进行链路状态数据库是同步的,因此, 我们可以说指定路由器处于一个网段的中心地位。 需要说明的是,指定路由器 DR 的定义与前面所定义的几种路由器是不同的。DR 的选 择是通过 OSPF 的 Hello 数据包来完成的,在 OSPF 路由协议初始化的过程中,会通过 Hello 数据包在一个广播性网段上选出一个 ID 最大的路由器作为指定路由器 DR,并且选 出 ID 次大的路由器作为备份指定路由器 BDR,BDR 在 DR 发生故障后能自动替代 DR 的 所有工作。当一个网段上的 DR 和 BDR 选择产生后,该网段上的其余所有路由器都只与 DR 及 BDR 建立相邻关系。在这里,一个路由器的 ID 是指向该路由器的标识,一般是指 该路由器的环回端口或是该路由器上的最小的 IP 地址。DR 和 BDR 在一个广播性网络中 的作用可用下图来说明。 附图 6 :DR 及 BDR 选择 OSPF 链路状态广播数据包种类链路状态广播数据包种类 随着 OSPF 路由器种类概念的引入,OSPF 路由协议又对其链路状态广播数据包 (LSA)作出了分类。OSPF 将链路状态广播数据包共分成 5 类,分别为: 类型 1:又被称为路由器链路信息数据包(Router Link) ,所有的 OSPF 路由器都会产 生这种数据包,用于描述路由器上联接到某一个区域的链路或是某一端口的状态信息。路 由器链路信息数据包只会在某一个特定的区域内广播,而不会广播至其它的区域。 在类型 1 的链路数据包中,OSPF 路由器通过对数据包中某些特定数据位的设定,告 诉其余的路由器自身是一个区域边界路由器或是一个 AS 边界路由器。并且,类型 1 的链 路状态数据包在描述其所联接的链路时,会根据各链路所联接的网络类型对各链路打上链 路标识,Link ID。表一列出了常见的链路类型及链路标识。 链路 类型 具体描述链路标识 1用于描述点对点的网络相邻路由器的路由器标 识 2用于描述至一个广播性网络的链路DR 的端口地址 3用于描述至非穿透网络,即 stub 网络的链 路 stub 网络的网络号码 4用于描述虚拟链路相邻路由器的路由器标 识 表格 1: 链路类型及链路标识 类型 2:又被称为网络链路信息数据包(Network Link) 。网络链路信息数据包是由指 定路由器产生的,在一个广播性的、多点接入的网络,例如以太网、令牌环网及 FDDI 网 络环境中,这种链路状态数据包用来描述该网段上所联接的所有路由器的状态信息。 指定路由器 DR 只有在与至少一个路由器建立相邻关系后才会产生网络链路信息数据 包,在该数据包中含有对所有已经与 DR 建立相邻关系的路由器的描述,包括 DR 路由器 本身。类型 2 的链路信息只会在包含 DR 所处的广播性网络的区域中广播,不会广播至其 余的 OSPF 路由区域。 类型 3 和类型 4:类型 3 和类型 4 的链路状态广播在 OSPF 路由协议中又称为总结链 路信息数据包(Summary Link) ,该链路状态广播是由区域边界路由器或 AS 边界路由器产 生的。Summary Link 描述的是到某一个区域外部的路由信息,这一个目的地地址必须是同 一个 AS 中。Summary Link 也只会在某一个特定的区域内广播。类型 3 与类型 4 两种总结 性链路信息的区别在于,类型 3 是由区域边界路由器产生的,用于描述到同一个 AS 中不 同区域之间的链路状态;而类型 4 是由 AS 边界路由器产生的,用于描述不同 AS 的链路 状态信息 。 值得一提的是,只有类型 3 的 Summary Link 才能广播进一个残域,因为在一个残域中 不允许存在 AS 边界路由器。残域的区域边界路由器产生一条默认的 Summary Link 对域内 广播,从而在其余路由器上产生一条默认路由信息。采用 Summary Link 可以减小残域中路 由器的链路状态数据库的大小,进而减少对路由器资源的利用,提高路由器的运算速度。 类型 5:类型 5 的链路状态广播称为 AS 外部链路状态信息数据包。类型 5 的链路数据 包是由 AS 边界路由器产生的,用于描述到 AS 外的目的地的路由信息,该数据包会在 AS 中除残域以外的所有区域中广播。一般来说,这种链路状态信息描述的是到 AS 外部某一 特定网络的路由信息,在这种情况下,类型 5 的链路状态数据包的链路标识采用的是目的 地网络的 IP 地址;在某些情况下,AS 边界路由器可以对 AS 内部广播默认路由信息,在 这时,类型 5 的链路广播数据包的链路标识采用的是默认网络号码 0.0.0.0。 1.3.7.1.3.7. OSPFOSPF协议工作过程协议工作过程 OSPF 路由协议针对每一个区域分别运行一套独立的计算法则,对于 ABR 来说,由于一 个区域边界路由器同时与几个区域相联,因此一个区域边界路由器上会同时运行几套 OSPF 计算方法,每一个方法针对一个 OSPF 区域。下面对 OSPF 协议运算的全过程作一概 括性的描述。 区域内部路由区域内部路由 当一个 OSPF 路由器初始化时,首先初始化路由器自身的协议数据库,然后等待低层 次协议(数据链路层)提示端口是否处于工作状态。 如果低层协议得知一个端口处于工作状态时,OSPF 会通过其 Hello 协议数据包与其余 的 OSPF 路由器建立交互关系。一个 OSPF 路由器向其相邻路由器发送 Hello 数据包,如果 接收到某一路由器返回的 Hello 数据包,则在这两个 OSPF 路由器之间建立起 OSPF 交互关 系,这个过程在 OSPF 中被称为 adjacency。在广播性网络或是在点对点的网络环境中, OSPF 协议通过 Hello 数据包自动地发现其相邻路由器,在这时,OSPF 路由器将 Hello 数 据包发送至一特殊的多点广播地址,该多点广播地址为 ALLSPFRouters。在一些非广播性 的网络环境中,我们需要经过某些设置来发现 OSPF 相邻路由器。在多接入的环境中,例 如以太网的环境,Hello 协议数据包还可以用于选择该网络中的指定路由器 DR。 一个 OSPF 路由器会与其新发现的相邻路由器建立 OSPF 的 adjacency,并且在一对 OSPF 路由器之间作链路状态数据库的同步。在多接入的网络环增中,非 DR 的 OSPF 路由 器只会与指定路由器 DR 建立 adjacency,并且作数据库的同步。OSPF 协议数据包的接收 及发送正是在一对 OSPF 的 adjacency 间进行的。 OSPF 路由器周期性地产生与其相联的所有链路的状态信息,有时这些信息也被称为 链路状态广播 LSA(Link State Advertisement) 。当路由器相联接的链路状态发生改变时, 路由器也会产

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论