您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《深入理解计算机网络》-王达-第九章
《深入理解计算机网络》教学PPT——开启你计算机网络之门的金钥匙图书作者:王达制作第9章路由协议及其工作原理本章将介绍目前常见的几种动态路由协议(包括RIP、OSPF、IS-IS和BGP)的一些基础知识,所采用的路由算法工作原理,主要路由消息及报文格式。其中最重要的是使用这些路由协议的基本网络结构,路由表基本生成原理,以及不同路由消息报文的用途和基本报文格式。2012年12月王达精品课程系列教学PPT29.1RIP路由协议RIP(路由信息协议)是应用较早、使用较普遍的内部网关协议(IGP),适用于小型同类网络的一个自治系统(AS)内的路由信息的传递。RIP协议采用“距离矢量”(也就紧“距离”作为路由变量)路由算法,使用“跳数”,即Hop来衡量到达目标地址的路由距离,且最大跳数值仅为15。RIP协议现在有两个版本,即RIPv1和RIPv2,新版本RIPv2支持纯文本和MD5身份认证、路由汇总、无类别域间路由(CIDR)和可变长度子网掩码(VLSM)。2012年12月王达精品课程系列教学PPT39.1.1RIP路由度量机制1.理解“跳数”RIP协议采用的是“距离矢量”路由算法,是仅以“距离”作为度量标准,也就是路由的“距离”是RIP路由的度量。但要注意的是,这里“距离”是指除源网络所连接的路由器外,到达目的网络的整条路由路径中所经过的路由器数,即跳数((HopCount)。如下图中从PC1所在网络到达PC2所在网络的RIP路由,则跳数就是3。2012年12月王达精品课程系列教学PPT42.度量更新规则RIP路由器采用完整路由表更新方式。总体来说,它遵循以下几个基本原则:•路由表项每经过一次邻居之间的传递,其度量值加1(最大值为15,下同)•收到新路由表项时,在路由表中添加新的路由表项,其度量是在接收的路由表项度量基础上加1,同时在新添加的路由表项中标注其下一跳地址就是发送路由更新的邻居路由器的接口。•收到原有路由表项的路由更新时,先对有更新的路由表项的度量加1,然后与对应的路由表项中原度量进行比较,仅接收度量值更小或相等的更新,忽略度量值比原来的值更大的路由更新。2012年12月王达精品课程系列教学PPT59.1.2RIP路由更新机制RIP协议有两种更新机制:一是定期更新,二是触发更新。“定期更新”是根据设置的更新计时器定期发送RIP路由通告;而“触发更新”则是RIP路由器仅在有路由表项发生变化时发送的RIP路由通告,仅携带本地路由表中有变化的路由信息。无论是定期更新,还是触发更新,RIP路由的更新规则如下:•如果更新的某路由表项在路由表中没有,则直接在路由表中添加该路由表项;•如果路由表中已有相同目的网络的路由表项,且来源端口相同,那么无条件根据最新的路由信息更新其路由表;2012年12月王达精品课程系列教学PPT6•如果路由表中已有相同目的网络的路由表项,但来源端口不同,则要比较它们的度量值,将度量值较小的一个作为自己的路由表项;•如果路由表中已有相同目的网络的路由表项,且度量值相等,保留原来的路由表项。1.RIP路由定期更新机制RIP路由器总是会每隔30秒通过UDP520端口以RIP广播应答方式向邻居路由器发送的一个路由更新包,包中包括了本路由器上的完整的路由表(除了被“水平分割”机制抑制的路由表项),用来向邻居路由器提供路由更新,同时用来向邻居路由器证明自己的存在。RIP路由表中主要包括“目的网络”、“下一跳地址”和“距离”这三部分,如下图所示。2012年12月王达精品课程系列教学PPT72012年12月王达精品课程系列教学PPT82.RIP路由更新机制解析示例下图所示的简单的互连网络为例来讨论图中各个路由器中的路由表是怎样建立的。具体建立流程参见书中介绍。9.1.2RIP路由收敛机制RIP协议使用以下机制来解决拓扑收敛慢这一问题。1.记数到无穷大机制RIP协议仅允许最大跳数值为15,大于15的目的地被认为是不可达的。这个数字在限制了网络大小的同时也防止了一个叫做“记数到无穷大”的问题。有关记数到无穷大机制的具体原理参见书中介绍。2.水平分割法“水平分割”通俗地讲就是,如果一条路由信息是从某个端口学习到的,那么从该端口发出的路由更新中将不再包含该条路由信息,其目的就是为了避免出现路由更新环路。2012年12月王达精品课程系列教学PPT93.毒性逆转水平分割法“毒性逆转水平分割”方法是在更新信息中包括这些回传路径,但会把这些回传路径的跳数设为16(使此路由变为不可达)。4.保持定时器法“保持定时器法”就是当路由器接收到一个不可达的路由更新时,路由器将会把这条路由更新置于无效抑制状态,不再接收对应路由的更新信息,也不向外发送这条路由更新信息,一直持续到接收到一个带有更好度量的对应路由更新分组,或者这个保持计时器到期为止。具体参见书中介绍。2012年12月王达精品课程系列教学PPT109.1.4RIP报文格式RIP使用UDP报文来在邻居路由器间交换路由表,所使用的UDP端口号为520。通常情况下RIPv1报文为广播报文;而RIPv2报文为组播报文,组播地址为224.0.0.9,默认每隔30秒向邻居路由器发送一次路由更新报文。下图所示为RIP路由更新报文格式,注意其中v1版本和v2版本的不同。各字段说明参见书中介绍。2012年12月王达精品课程系列教学PPT119.2OSPF路由协议9.2.1OSPF协议简介OSPF也是一个用于一个AS内部的内部网关协议。它采用链路状态技术,路由器互相发送直接相连的链路信息和它所拥有的到其他路由器的链路信息。每个OSPF路由器维护相同AS拓扑结构的数据库。从这个数据库里,构造出最短路径树来计算出路由表。OSPF协议与RIP协议相比主要区别如下:•采用链路状态路由算法•可划分不同区域•有不同路由器角色•收敛性能更高2012年12月王达精品课程系列教学PPT129.2.2OSPF的AS与Area1.理解ASAS是一组使用相同路由协议交换路由信息的路由器,也称路由域。同一个AS中的所有路由器必须相互连接,运行相同的路由协议,并分配同一个AS号。2.理解Area一个Area就是指OSPF路由域,或者AS的一部分,也就是说在一个AS中可以划分成多个区域。通过使用区域,可将大型网络化分成适合运行SPF(最短路径优先)路由算法的小块。2012年12月王达精品课程系列教学PPT139.2.3OSPF网络路由器类型在OSPF网络中的路由器有如下几种类型:•内部路由器(IR)•区域边界路由器(ABR)•AS边界路由器(ASBR)•骨干路由器(BR)它们所处的位置如右图所示。各种OSPF路由器的作用参见书中介绍。2012年12月王达精品课程系列教学PPT149.2.4DR和BDR为了防止出现大量的LSU包交换流量而影响网络性能,同时使路由器保存的链路状态信息最少,OSPF在这类网络上选举出一个DR(DesignatedRouter,指定路由器)和BDR(BackupDesignatedRouter,备份指定路由器)。1.DR和BDR的主要作用DR就是负责一个区域内部集中管理和维护、和组播下发区域内各路由器发来的链路状态信息。BDR是用于在DR失效后接替其工作,在DR正常工作时,它不担当DR的职责。在同一个OSPF区域中,每个路由器都和DR,BDR相连。DRtBDR都是通过选举产生的。2012年12月王达精品课程系列教学PPT15OSPF网络中一个区域内部,除了DR和BDR外,其它路由器均称之为DROther。下图是一个DR和BDR示例。2.DR和BDR的选举DR是通过接口优先级(InterfacePriority)进行选举,最高优先级的路由器被选为DR,次高者被选为BDR;如果接口优先级相同,就按router-id进行选举,由最大到次大选举DR、BDR。2012年12月王达精品课程系列教学PPT169.2.5OSPFLSA类型OSPF将链路状态通告数据包共分成以下7类:•Type1:路由器LSA(RouterLSA)•Type2:网络LSA(NetworkLSA)•Type3:网络汇总LSA(NetworksummaryLSA)•Type4:ASBR汇总LSA(ASBRsummaryLSA)•Type5:自治系统外部LSA(AutonomoussystemexternalLSA)•Type6:组成员LSA(GroupmembershipLSA)•Type7:NSSA外部LSA(NSSAExternalLSA)各种类型LSA说明参见书中介绍。2012年12月王达精品课程系列教学PPT179.2.6Backbone(骨干)区域在一个大型的OSPF网络中,可以包括多种区域,其中就有三种常见的特殊区域,即就是骨干区域(BackboneArea)、末梢区域(StubArea)和非纯Stub区域(NoStotalStubarea,NSSA),当然还可以包括其它普通区域。一个OSPF互联网络,无论有没有划分区域,总是至少有一个骨干区域。骨干区域有一个ID0.0.0.0,也称之为区域0。另外,骨干区域必须是连续的(也就是中间不会越过其他区域),也要求其余区域必须与骨干区域直接相连(可以是通过“虚拟链路”连接),如下图所示。2012年12月王达精品课程系列教学PPT18骨干区域作为区域间传输通信和分布路由信息的中心,区域间的通信先要被路由到骨干区域,然后再路由到目的区域,最后被路由到目的区域中的主机。在骨干区域中的路由器通告他们区域内的汇总路由到骨干区域中的其他路由器。2012年12月王达精品课程系列教学PPT199.2.7Stub(末梢)区域“StubArea”(末梢区域)是一种比较特殊的区域。在Stub区域的内部路由器仅需要配置一条到达该区域ABR的默认路由(0.0.0.00.0.0.0)来实现与同一AS中不同区域间的路由,这样可使得这些区域中内部路由器的路由表规模以及路由信息传递的数量都会大大减少。成为StubArea的条件如下:•位于AS的边界,只有一个ABR的非骨干区域,骨干区域不能配置成Stub区域。•虚连接不能穿过Stub区域•Stub区域内不能存在ASBR2012年12月王达精品课程系列教学PPT209.2.8TotallyStub区域和NSSA区域1.完全Stub区域为了进一步减少Stub区域中路由器的路由表规模以及路由信息传递的数量,可以将该区域配置为TotallyStub(完全末梢)区域,该区域的ABR不会将区域间的路由信息和外部路由信息传递到本区域。即在阻止Type5LSA包的基础上再阻止其他ABR通告的网络汇总LSA(即Type3类型LSA),不接收区域间路由通告。其ABR仅通过网络汇总LSA通告一个默认路由,使用这个默认路由可到达OSPF自治系统外部其它区域。也就是说,完全Stub区域同时不允许Type3、4或5三类LSA注入,但默认汇总路由除外。2012年12月王达精品课程系列教学PPT212.NSSA区域NSSA可以说是对原来的Stub区域要求有所放宽,取消了原来Stub区域中关于AS外部路由的双向传播的限制(区域外的进不来,区域里的也出不去),改为单向限制(区域外的进不来,区域里的能出去)。下图是一个包含NSSA区域的OSPF网络示例。2012年12月王达精品课程系列教学PPT229.2.9OSPF路由计算基本过程整个OSPF路由计算过程可分为:邻接关系建立→DR/BDR选举→发送LSA→创建路由表→维护路由表这五大基本步骤。具体参见书中介绍。2012年12月王达精品课程系列教学PPT239.2.10OSPF报头格式OSPF报文主要有5种:Hello报文、DD(DatabaseDescription,数据库描述)报文、LSR(LinkStateRequest,链路状态请求)报文、LSU(LinkStateUpdate,链路状态更新)报文和LSAck(LinkStateAcknowledgment,链路状态应答)报文。它们使用相同的OSPF报头格式,如下图所示。2012年12月王达精品课
本文标题:《深入理解计算机网络》-王达-第九章
链接地址:https://www.777doc.com/doc-3801569 .html