OSPF路由协议是一种典型的链路状态(Link-state)的路由...

上传人:hy****d 文档编号:243009805 上传时间:2024-09-13 格式:PPT 页数:58 大小:175.50KB
返回 下载 相关 举报
OSPF路由协议是一种典型的链路状态(Link-state)的路由..._第1页
第1页 / 共58页
OSPF路由协议是一种典型的链路状态(Link-state)的路由..._第2页
第2页 / 共58页
OSPF路由协议是一种典型的链路状态(Link-state)的路由..._第3页
第3页 / 共58页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第5节 OSPF协议,1,一、概述,OSPF路由协议是一种典型的链路状态(Link-state)的路由协议,一般用于同一个路由域内。在这里,路由域是指一个自治系统(Autonomous System),即AS,它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同的描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算出其OSPF路由表的。,2,作为一种链路状态的路由协议,OSPF将链路状态广播数据包LSA(Link State Advertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。,3,二、OSPF协议的特点,可以适应大规模网络,路由变化收敛快,无路由自环,支持可变长子网掩码VLSM,支持等值路由,支持区域划分,提供路由分级管理,支持验证,支持以组播地址发送协议报文,4,三、OSPF通过链路状态描述网络拓扑,作为一种典型的链路状态的路由协议,OSPF还得遵循链路状态路由协议的统一算法。链路状态的算法非常简单,在这里将链路状态算法概括为以下四个步骤:,1、首先当路由器初始化或当网络结构发生变化(例如增减路由器,链路状态发生变化等)时,路由器会产生链路状态广播数据包LSA(Link-State Advertisement),该数据包里包含路由器上所有相连链路,也即为所有端口的状态信息。,5,2、然后所有路由器会通过一种被称为刷新(Flooding)的方法来交换链路状态数据。Flooding是指路由器将其LSA数据包传送给所有与其相邻的OSPF路由器,相邻路由器根据其接收到的链路状态信息更新自己的数据库,并将该链路状态信息转送给与其相邻的路由器,直至稳定的一个过程。,6,3、然后当网络重新稳定下来,也可以说OSPF路由协议收敛下来时,所有的路由器会根据其各自的链路状态信息数据库计算出各自的路由表。该路由表中包含路由器到每一个可到达目的地的Cost以及到达该目的地所要转发的下一个路由器(next-hop)。,7,4、第4个步骤实际上是指OSPF路由协议的一个特性。当网络状态比较稳定时,网络中传递的链路状态信息是比较少的,或者可以说,当网络稳定时,网络中是比较安静的。这也正是链路状态路由协议区别与距离矢量路由协议的一大特点。,8,对以太网的链路状态描述,1对0的链路状态描述,link id :10.0.0.0 /*网段*/,data :255.0.0.0 /*掩码*/,type :StubNet (3) /*类型*/,metric :50 /*花费*/,9,对PPP的链路状态描述,1对1的链路状态描述,对本接口网段地址的描述,link id :20.0.0.0 /*网段*/,data :255.0.0.0 /*掩码*/,type :StubNet (3) /*类型*/,metric :5 /*花费*/,10,对路由器RTB的描述,link id :2.2.2.2 /*RTB的router id*/,data :20.0.0.2 /*RTB的接口地址*/,type :Router (1) /*类型*/,metric :5/*花费*/,11,对Frame-relay的链路状态描述,1对多的链路状态描述(多点之间无连接),对本接口地址的描述,link id :40.0.0.1 /*网段*/,data :255.255.255.255/*掩码*/,type :StubNet (3) /*类型*/,metric :5 /*花费*/,12,对路由器RTF的描述,link id :3.3.3.3 /*RTF的router id*/,data :40.0.0.1/*与RTF相连的接口地址*/,type :Router (1) /*类型*/,metric :5 /*花费*/,对路由器RTE的描述,link id :4.4.4.4 /*RTE的router id*/,data :40.0.0.1/*与RTE相连的接口地址*/,type :Router (1) /*类型*/,metric :5 /*花费*/,13,对X.25的链路状态描述,1对多(全连通)的链路状态描述,对每个路由器的描述,link id :30.0.0.3 /*网段中DR的接口地址*/,data :30.0.0.1 /*本接口的地址*/,type :TransNet (2) /*类型*/,metric :50 /*花费*/,14,/*DR(6.6.6.6)生成的LSA*/,Netmask :255.255.255.0,Attached:30.0.0.1 Router,Attached:30.0.0.2 Router,Attached:30.0.0.3Router,15,加上LSA的头(head)结构,Type:Router/*LSA的类型*/,Is id:1.1.1.1 /*LSA的标识*/,adv rtr :1.1.1.1 /*生成该LSA的路由器*/,Is age:4 /*本条LSA的老化时间*/,len:108 /*LSA的长度*/,seq#:80000001 /*LSA的序列号*/,cksum:0x3543 /*LSA的校验和*/,Link coute:7 /*本LSA中包含的连接个数*/,16,四、运行SPF算法计算路由,SPF算法将每一个路由器作为根(ROOT)来计算其到每一个目的地路由器的距离,每一个路由器根据一个统一的数据库会计算出路由域的拓扑结构图,该结构图类似于一棵树,在SPF算法中,被称为最短路径树。在OSPF路由协议中,最短路径树的树干长度,即OSPF路由器至每一个目的地路由器的距离,称为OSPF的Cost。由此生成每一个路由器的OSPF路由表。,17,18,19,两台路由器建立邻居关系,20,OSPF的五种协议报文,1、HELLO报文,发现及维持邻居关系,选举,DR、BDR。,2、DD报文,描述本地LSDB的情况。,3、LSR报文,向对端请求本端没有或对端更,新的LSA。,4、LSU报文,向对方更新LSA。,5、LSAck报文,收到LSU之后进行确认。,21,OSPF的邻居状态,将OSPF相邻路由器从发送Hello数据包,建立数据库同步至建立完全的OSPF交互关系的过程分成几个不同的状态。,1、Down,这是OSPF建立交互关系的初始化状态,表示在一定时间之内没有接收到从某一相邻路由器发送来的信息。在非广播性的网络环境内,OSPF路由器还可能对处于Down状态的路由器发送Hello数据包。,22,2、Attempt,该状态仅在例如帧中继、X.25或ATM环境中有效,表示在一定时间内没有接收到某一相邻路由器的信息。但是OSPF路由器仍必须通过以一个较低的频率向该相邻路由器发送Hello数据包来保持联系。,23,3、Init,在该状态时,OSPF路由器已经接收到相邻路由器发送来的Hello数据包,但自身的IP地址并没有出现在该Hello数据包内,也就是说,双方的双向通信还没有建立起来。,24,4、2-Way,这个状态可以说是建立交互方式真正的开始步骤。在这个状态,路由器看到自身已经处于相邻路由器的Hello数据包内,双向通信已经建立。指定路由器及备份指定路由器的选择正是在这个状态完成的。在这个状态,OSPF路由器还可以根据其中的一个路由器是否指定路由器或是根据链路是否点对点或,虚拟链路来决定是否建立交互关系。,25,5、Exstart,这个状态是建立交互状态的第一个步骤。在这个状态,路由器要决定用于数据交换的初始的数据库描述数据包的序列号,以保证路由器得到的永远是最新的链路状态信息。同时,在这个状态路由器还必须决定路由器之间的主备关系,处于主控地位的路由器会向处于备份地位的路由器请求链路状态信息。,26,6、Exchange,在这个状态,路由器向相邻的OSPF路由器发送数据库描述数据包来交换链路状态信息,每一个数据包都有一个数据包序列号。在这个状态,路由器还有可能向相邻路由器发送链路状态请求数据包来请求其相应数据。,27,7、Loading,在loading状态,OSPF路由器会就其发现的相邻路由器的新的链路状态数据及自身的已经过期的数据向相邻路由器提出请求,并等待相邻路由器的回答。,28,8、Full,这是两个OSPF路由器建立交互关系的最后一个状态,在这时,建立起交互关系的路由器之间已经完成了数据库同步的工作,它们的链路状态数据库已经一致。,29,30,DR(Designated Router)指定路由器,五、DR与BDR,31,DR的选举过程,登记选民,本网段的OSPF路由器,本村内的18岁以上公民,登记候选人,本网段内的priority0的OSPF路由器,本村内30岁以上公民,在本村居住3年以上,32,竞选演说,所有priority0的OSPF路由器都认为自己是DR,所有的候选人都认为自己应该当村长,投票,选priority值最大的,若值相等,选Router ID最大,选年纪最大,若年龄相等,按姓氏笔画排序,33,DR选举中的指导思想,选举制,DR是各路由器选出来的,而非人工指定的,终身制,DR一旦当选,除非路由器故障,否则不会 更换。,世袭制,选出DR的同时,也选出BDR。DR故障后,由BDR接替成为新DR。,34,由于DR的出现给协议带来的变化,为了减少在一个网段内带宽的占用,提出了,DR。这样就将同一网段内LSDB同步的次数由,O(N),2,减少为O(N)。,35,六、划分区域,OSPF在大型网络中可能遇到的问题:,LSDB非常庞大,占用大量的存储空间。,计算最小生成树耗时增加,CPU负担很重。,网络拓扑结构经常变化,网络经常处于“动荡”之中。,36,解决办法划分区域,在OSPF路由协议的定义中,可以将一个路由域或者一个自治系统AS划分为几个区域。在OSPF中,由按照一定的OSPF路由法则组合在一起的一组网络或路由器的集合称为区域(AREA)。,37,在OSPF路由协议中,每一个区域中的路由器都按照该区域中定义的链路状态算法来计算网络拓扑结构,这意味着每一个区域都有着该区域独立的网络拓扑数据库及网络拓扑图。对于每一个区域,其网络拓扑结构在区域外是不可见的,同样,在每一个区域中的路由器对其域外的其余网络结构也不了解。这意味着OSPF路由域中的网络链路状态数据广播被区域的边界挡住了,这样做有利于减少网络中链路状态数据包在全网范围内的广播,也是OSPF将其路由域或一个AS划分成很多个区域的重要原因。,38,随着区域概念的引入,意味着不再是在同一个AS内的所有路由器都有一个相同的链路状态数据库,而是路由器具有与其相连的每一个区域的链路状态信息,即该区域的结构数据库。当一个路由器与多个区域相连时,称之为区域边界路由器(ABR)。一个区域边界路由器有自身相连的所有区域的网络结构数据。在同一个区域中的两个路由器有着对该区域相同的结构数据库。,39,区域间的路由计算,ABR 区域边界路由器,40,七、骨干区域,41,在OSPF路由协议中存在一个骨干区域(Backbone),该区域包括属于这个区域的网络及相应的路由器。同时也要求其余区域必须与骨干区域直接相连,即所有的ABR都属于骨干区域。骨干区域一般为区域0,骨干区域必须是连续的。,42,骨干区域主要工作是在其余区域间传递路由信息。所有的区域,包括骨干区域之间的网络结构情况是互不可见的,当一个区域的路由信息对外广播时,其路由信息是先传递至区域0(骨干区域),再由区域0将该路由信息向其余区域作广播。,43,八、虚连接(Virtual Link),在实际网络中,可能会存在backbone不连续的或者某一个区域与骨干区域物理不相连的情况,在这两种情况下,系统管理员可以通过设置虚拟链路的方法来解决。,44,45,虚拟链路是设置在两个路由器之间,这两个路由器都有一个端口与同一个非骨干区域相连。虚拟链路被认为是属于骨干区域的,在OSPF路由协议看来,虚拟链路两端的两个路由器被一个点对点的链路连在一起。在OSPF路由协议中,通过虚拟链路的路由信息是作为域内路由来看待的。,46,九、与自治系统外部通信,47,十、OSPF路由器的分类,当一个AS划分成几个OSPF区域时,根据一个路由器在相应的区域之内的作用,可以将OSPF路由器作如下分类:,1、内部路由器IAR,当一个OSPF路由器上所有直连的链路都处于同一个区域时,称这种路由器为内部路由器。内部路由器上仅仅运行其所属区域的OSPF运算法则。,48,2、区域边界路由器ABR,当一个路由器与多个区域相连时,称之为区域边界路由器。区域边界路由器运行与其相连的所有区域定义的OSPF运算法则,具有相连的每一个区域的网络结构数据,并且了解如何将该区域的链路状态信息广播至骨干区域,再由骨干区域转发至其余区域。,49,3、AS边界路由器ASBR,AS边界路由器是与AS外部的路由器互相交换路由信息的OSPF路由器。该路由器在AS内部广播其所得到的AS外部路由信息,这样AS内部的所有路由器都知道至AS边界路由器的路由信息。,50,十一、OSPF的LSA的分类,RouterLSA 由每个路由器产生,描述了路由器的链路状态和花费,传递到整个区域。,NetworkLSA 由DR产生,描述了本网段的链路状态,传递到整个区域。,NetSummaryLSA 由ABR生成,描述了区域内某一网段的路由,传递到相关区域。,51,ASBRSummaryLSA 由ABR产生,描述了到ASBR的路由,传递到相关区域。,ASExternalLSA 由ASBR产生,描述了到AS外部的路由,传递到整个AS。,52,十二、OSPF为什么是LOOPFREE,每一条LSA都标记了生成者的(用生成该LSA的路由器的Router ID标记),其他路由器只负责传输。这样不会在产生的过程重发生对该信息的改变或错误理解。,路由计算的算法是SPF算法。计算的结果是一棵树,路由是树上的叶子节点。从根节点到叶子节点是单向不可回复的路径。,53,十三、OSPF与RIP的比较,1、RIP路由协议中用于表示目的网络远近的唯一参数为跳(HOP),也即到达目的网络所要经过的路由器个数。在RIP路由协议中,该参数被限制为最大15,也就是说RIP路由信息最多能传递至第16个路由器。,对于OSPF路由协议,路由表中表示目的网络的参数为Cost,该参数为一虚拟值,与网络中链路的带宽等相关,也就是说OSPF路由信息不受物理跳数的限制。因此,OSPF比较适合应用于大型网络中。,54,2、RIP路由协议不支持变长子网屏蔽码(VLSM),这被认为是RIP路由协议不适用于大型网络的又一重要原因。采用变长子网屏蔽码可以在最大限度上节约IP地址。OSPF路由协议对VLSM有良好的支持性。,55,3、RIP路由协议路由收敛较慢。RIP路由协议周期性地将整个路由表作为路由信息广播至网络中,该广播周期为30秒。在一个较为大型的网络中,RIP协议会产生很大的广播信息,占用较多的网络带宽资源;并且由于RIP协议30秒的广播周期,影响了RIP路由协议的收敛,甚至出现不收敛的现象。,而OSPF是一种链路状态的路由协议,当网络比较稳定时,网络中的路由信息是比较少的,并且其广播也不是周期性的,因此OSPF路由协议即使是在大型网络中也能够较快地收敛。,56,4、在RIP协议中,网络是一个平面的概念,并无区域及边界等的定义。RIP协议明显落伍了。,在OSPF路由协议中,一个网络,或者说是一个路由域可以划分为很多个区域area,每一个区域通过OSPF边界路由器相连,区域间可以通过路由总结(Summary)来减少路由信息,减小路由表,提高路由器的运算速度。,57,5、OSPF路由协议支持路由验证,只有互相通过路由验证的路由器之间才能交换路由信息。并且OSPF可以对不同的区域定义不同的验证方式,提高网络的安全性。,6、OSPF路由协议对负载分担的支持性能较好。OSPF路由协议支持多条Cost相同的链路上的负载分担,目前一些厂家的路由器支持6条链路的负载分担。,58,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!