预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

路由协议的实现算法 刷钻代码http://www.hackhw.com/ 伴随着网络规模的不断扩大,路由器在沟通子网连接和实 现信息交换方面的重要作用逐渐被人们所认知。本文将以 Cisco路由器为例简要阐述路由器之间交换路由信息的两种 主要算法:距离向量法(DistanceVectorRouting)和链 路状态算法(Link-StateRouting)。 一、路由协议(RoutingProtocol) 路由协议是路由器之间实现路由信息共享的一种机制,它 允许路由器之间相互交换和维护各自的路由表。当一台路由 器的路由表由于某种原因发生变化时,它需要及时地将这一 变化通知与之相连接的其他路由器,以保证数据的正确传 递。路由协议不承担网络上终端用户之间的数据传输任务。 Cisco路由器中用于TCP/IP的路由协议包括RIP(路由信息 协议,RoutingInformationProtocol)、IGRP(内部网关 路由协议,InteriorGatewayRoutingProtocol)、OSPF (OpenShortestPathFirst)、NLSP(Netware链路服务 协议,NetwareLinkServicesProtocol)和EIGRP(增强 IGRP)。 二、静态路由和动态路由的概念 1、静态路由 静态路由是指由网络管理员手工配置的路由信息。当网络 的拓扑结构或链路的状态发生变化时,网络管理员需要手工 去修改路由表中相关的静态路由信息。静态路由信息在缺省 情况下是私有的,即它不会传递给其他的路由器。当然,你 也可以通过对路由器进行设置使之成为共享的。静态路由一 般适用于比较简单的网络环境,因为在这样的环境中,网络 管理员易于清楚地了解网络的拓扑结构,便于设置正确的路 由信息。下面是两个适合使用静态路由的实例。 在左图中,假设Network1之外的其他网络需要访问 Network1时必须经过路由器A和路由器B,则可以在路由器 A中设置一条指向路由器B的静态路由信息,这样做的好处 在于可以减少路由器A和路由器B之间WAN链路上的数据传 输量,因为使用静态路由后,路由器A和B之间没有必要进 行路由信息的交换。 在一个支持DDR(dial-on-demandrouting)的网络中, 拨号链路只在需要时才拨通,因此不能为动态路由信息表提 供路由信息的变更情况。这种情况下,也适合使用静态路由。 使用静态路由的另一个好处在于其安全保密性。使用动态 路由时,需要路由器之间频繁地交换各自的路由表,而通过 对路由表的分析可以揭示网络的拓扑结构和网络地址等信 息,因此,出于安全方面的考虑也可以采用静态路由。 在大型和复杂的网络环境中,往往不宜采用静态路由,一 方面因为网络管理员难以全面地了解整个网络的拓扑结构; 另一方面,当网络的拓扑结构和链路状态发生变化时,需要 大范围地调整路由器中的静态路由信息,这一工作的难度和 复杂程度是可想而知的。 2、动态路由 动态路由使路由器能够自动地建立起自己的路由表,并且 能够根据情况的变化适时地进行调整。 动态路由机制的运做依赖路由器的两个基本功能: 对路由表的维护 路由器之间适时的路由信息交换 前面提到,路由器之间的路由信息交换是基于路由协议实 现的。通过左图可以直观地看到路由信息交换的过程。交换 路由信息的最终目的在于通过路由表找到一条数据交换的 “最佳”路径。每一种路由算法都有其衡量“最佳”的一套 原则。大多数算法使用一个量化的参数来衡量路径的优劣, 一般说来,参数值越小,路径越好。该参数可以通过路径的 某一特性进行计算,也可以在综合多个特性的基础上进行计 算,几个比较常用的特征是: 路径所包含的路由器结点数(hopcount) 网络传输费用(cost) 带宽(bandwidth) 延迟(delay) 负载(load) 可靠性(reliability) 最大传输单元MTU(maximumtransmissionunit) 三、路由协议的实现算法 本文主要介绍两种基本的路由算法,即距离向量法 (DistanceVectorRouting)和链路状态算法(Link-State Routing)。路由协议和路由算法只针对动态路由。 (一)、距离向量法(DistanceVectorRouting) 在距离向量法中,相邻路由器之间周期性地相互交换各自 的路由表备份。当网络拓扑结构发生变化时,路由器之间也 将及时地相互通知有关变更信息。 在图3中,每一个路由器从与之直接相邻的路由器那儿获 得对方的路由表。例如,路由器B从路由器A和C那里获得 路由信息后,根据其所得到的信息对自己的路由表进行加 工,然后将加工后的路由表再传送给路由器A和C。路由器 通过这种方法不断地积