




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
OSPF:OpenShortestPathFirstOSPF路由协议是由IETF组织开发,作为RIP路由协议的替代协议,解决RIP路由协议的固有问题。是IETF组织推荐使用的IGP协议。OSPF路由协议是一种链路状态协议,使用SPF算法进行最佳路由计算。作为链路状态协议,OSPF协议的主要优点在于路由表的快速收敛,对大型网络的支持以及不易受到错误路由信息的影响。OSPF路由协议其他的的特点如下:使用area的概念,降低协议对CPU和内存的影响,减少路由协议产生的流量,可以构筑分层的网络拓扑结构。完全支持无类别路由处理,消除了有类别路由协议的一些问题,例如不连续子网的问题。支持无类别路由表的检索,支持VLSM,支持Supernetting可以更有效的进行地址管理。支持无大小限制的,任意的metric值。等价负载均衡,可以更有效的利用多路径进行数据传输。使用预留的组播地址,减小对非OSPF设备的影响。支持认证,提供更安全的路由可以对路由进行标记,跟踪外部的路由。OSPF的操作介绍第一步:OSPF路由器从启动了OSPF协议的接口向外发送Hello数据包,如果两台路由器共享公共的数据链路,并且Hello数据包中指定的数据参数协商一致,这两个路由器将建立邻居关系成为邻居(Neighbors)。第二步:建立邻接(Adjacencies)关系。邻接关系是在两个建立了邻居关系的OSPF路由器之间建立的,类似于一条点到点的虚拟链路。两个OSPF路由器必须先建立邻居关系然后才能建立邻接关系。因此在故障排除时可以依次检查相应的数据库列表。OSPF定义了几种网络类型和路由器类型,网络类型和路由器类型也在Hello数据包中传输。邻接关系的建立也需要依据网络类型和路由器类型来建立。第三步:所有的路由器向所有的建立了邻接关系的路由器上发送LSA(Link State Advertisement)数据包。在LSA数据包中,描述了路由器的接口、链路和链路的状态。这些链路可以是到stub网络的链路,可以是到其他OSPF路由器的链路,可以是到位于其他区域的网络的链路,或者是到外部网络的链路。由于网络中存在着多种类型的链路,因此也就存在着多种类型的链路状态信息,因此OSPF也就定义了多种的LSA类型。第四步:每个路由器从邻居路由器接收到后,将会在链路状态数据库中记录下LSA的内容,并且将LSA的一个拷贝发送给他的其他邻居路由器。第五步:通过在一个区域内扩散LSA,所有的路由器将会建立统一的链路状态数据库。第六步:当链路状态数据库建立完成后,每个路由器使用SPF算法计算出一个无环路的图表,这个图表可以用来描述从这个路由器到任意一个已知目的地的最短的路径也就是最小链路开销的路径。这个图表就是SPF树。第七步:每个路由器利用SPF树来建立自己的路由表。在一个区域内,当所有的链路状态信息已经被扩散到所有的路由器上以后,我们就可以说链路状态数据库已经被同步了。同时,路由表也已经建立了。Hello数据包在邻居路由器之间进行交换,提供存活(keepalive)数据包的作用。当一台OSPF路由器出现问题时,他的邻居路由器可以通过Hello数据包的交换情况来获知情况。LSA数据包每30分钟会被重新传递一次。邻居和邻接关系发送LSA数据包之前,OSPF路由器必须能够发现邻居路由器并且与邻居路由器建立邻接关系。邻居路由器信息会被建立在邻居列表中,同时还记录每个邻居路由器位于的链路或接口信息,以及记录其他维护邻居关系所需的必要信息。针对OSPF路由器,我们需要一个标记来唯一的标识一个路由器,这个标记就是RouterID。RouterID就是路由器上的一个IP地址。Cisco路由器通过以下的原则来自行确定路由器的RouterID:路由器选择数值最大的Loopback接口的IP地址作为RouterID。如果路由器上没有配置Loopback接口,路由器就选择配置在物理接口上的数值最大的IP地址作为RouterID。这个接口可以不运行OSPF路由协议。使用与Loopback接口的IP地址具有以下的好处:Loopback接口比物理接口更稳定,当路由器启动后Loopback接口就被启动,只有路由器失败了,Loopback接口才会失败。使用Loopback接口的ip地址作为路由器的RouterID,可以使网络管理员在给OSPF路由器分配一个可预测的或是可确认的RouterID方面,具有更大的自由度。如果CiscoOSPF路由器使用一个物理接口的IP地址作为路由器的RouterID,那么,即使这个物理接口后来失效了或是被删除了,OSPF路由协议仍然会使用这个物理接口的IP地址作为RouterID来使用。因此,Loopback接口的ip地址作为RouterID所带来的稳定性只是一个附属的优点,使用Loopback接口地址的最大好处是可以控制RouterID。OSPF路由器通过在Hello数据包中广播自己的RouterID,来启动邻居关系的建立。Hello协议Hello协议主要是为了实现以下的目的:Hello协议是OSPF路由协议用来发现邻居路由器的手段和方法。Hello数据包重保护了一些参数,两台路由器如果要形成邻居关系,这些参数必须能够协商成功。在具有邻居关系的路由器之间传输Hello数据包,可以起到传递Keepalives信号的作用。通过Hello数据包的交换,可以用来确认邻居之间双向通讯的情况是否正常没有故障。在广播网络和非广播多点访问网络中,利用Hello数据包进行DesignatedRouter和BackupDesignatedRouter的选举操作。OSPF路由器从启动了OSPF协议的接口上周期性的发送Hello数据包,这个时钟周期称为“HelloInterval”。“HelloInterval”是基于接口进行配置的,两个接口的“HelloInterval”参数可以不同。Cisco路由器缺省的HelloInterval值被设置为10秒,可以通过执行ipospfhello-interval命令来修改这个缺省的参数值。如果一个路由器在一段时间内没有从它的一个邻居路由器处接收到Hello数据包,它就会认为这个邻居路由器已经失效。这个时间段称为RouterDeadInterval。Cisco路由器缺省的RouterDeadInterval值被设置为HelloInterval值的四倍,也就是缺省值为40秒。这个值也可以通过执行ipospfdead-interval命令来改变。OSPF路由协议的Hello数据包包含以下信息:生成这个Hello数据包的OSPF路由器的RouterID;生成并发送出这个Hello数据包的OSPF路由器的接口的AreaID、地址掩码、认证类型、认证信息、HelloInterval、RouterDeadInterval;路由器的优先级DR和BDR五个标识重要功能的标志位生成这个Hello数据包的OSPF路由器的所有邻居的RouterID。这个RouterID的列表中只包括从发出这个Hello数据包的路由器接口在RouterDeadInterval时钟到时之前通过Hello数据包中监听到的邻居的RouterID。这一步是邻居路由器建立邻接关系的手段。路由器在接收到从一个邻居路由器发送过来的Hello数据包后,会查看Hello数据包中承载的一部分信息,包括:AreaID、认证的相关信息、网络掩码、HelloInterval、RouterDeadInterval和选项值。并且会将这些信息与配置在接收到这个Hello数据包的接口上的参数进行比较,如果两者不一致,就会将接收到的Hello数据包丢弃,邻接关系也就不会被建立。如果两者一致,那么这个Hello数据包就是有效的。同时,如果发送这个Hello数据包的邻居路由器的RouterID也已经在这个邻居列表中,并且邻居列表中记录的接口和接收这个Hello数据包的接口相同,那么这个接口的RouterDeadInterval时钟就会被重置,如果邻居列表中没有这个邻居路由器的RouterID,就会增加这个邻居路由器的RouterID记录。 无论何时,路由器在发送Hello数据包时都会将传输这个Hello数据包的链路上的所有的邻居路由器的RouterID的信息包含在这个Hello数据包里。如果一个邻居路由器接收到这个Hello数据包后发现自己的RouterID信息也包含在这个Hello数据包中,那么这个路由器就可以确定一条双向通信链路已经被建立了。一旦双向通信被建立,邻接关系也就可以被建立了。当然并不是所有的邻居路由器之间都可以形成邻接关系。邻居路由器之间是否能够形成邻接关系,也要根据连接这两个邻居路由器的网络的类型来确定。网络类型也会影响OSPF数据包的传输方式。NetworkTypesOSPF定义了五种网络类型,分别是:1、点到点网络(Point-to-pointnetworks)2、广播网络(Broadcastnetworks)3、非广播多点访问网络(Non-broadcastMulti-accessnetworksNBMA)4、点到多点网络(Point-to-multipointnetworks)5、虚拟链路(Virtuallinks)点到点网络连接一对路由器。在点到点网络上,有效的OSPF邻居路由器之间总会形成邻接关系。在点到点网络上,OSPF数据包的目的地址始终是224.0.0.5。这个地址称为AllSPFRouters,是一个预留的D类IP地址。广播网络是一个多点访问的网络,在广播网络中可以连接两台以上的设备。并且在这个网络上可以传输广播数据包。一个广播数据包被发送到这个网络后,所有设备都可以接收到。连接到广播网络上的OSPF路由器会推选出一个路由器作为DR和一个路由器作为BDR。由DR和BDR以组播方式发送目的地址为224.0.0.5的Hello数据包到广播网络上,承载这个数据包的帧的目的MAC地址为0100.5E00.0005。广播网络上的其它OSPF路由器会以组播方式发送链路状态更新(LSU:LinkStateUpdate)和链路状态回执(LSA:LinkStateAcknowledgment)数据包,组播数据包的目的IP地址是224.0.0.6,这个地址称为AllDRouter。承载这个组播数据包的帧的目的MAC地址是0100.5E00.0006。非广播多点访问网络可以连接两个以上的路由器,但是不支持广播功能。一个数据包发送出去后,不能够被所有的路由器接收到。因此需要对非广播多点访问网络上的路由器进行额外的配置,以便他们能够发现邻居路由器。连接到NBMA网络上的OSPF路由器也会推举DR和BDR,但是OSPF数据包是以单播数据包的形式发送的。点到多点网络,是一种特殊配置的NBMA网络,可以看做是多个点到点链路组合在一起形成的网络类型。在点到多点网络上,路由器之间不会推举DR和BDR。OSPF数据包是以组播方式传输的。虚拟链路,是一种特殊配置,可以认为是一个未编号的点到点的网络。OSPF数据包在虚拟链路上是以单播方式传输。针对上面这五种网络类型,我们还可以进一步将它们归纳为两种类型:Transit网络和Stub网络。1、Transit网络,连接有两台或两台以上的路由器。通常Transit网络上的数据包仅仅是通过这个网络传输。生成这个数据包的网络和数据包传输的目的网络都位于其它的位置。数据包仅仅是路过。2、Stub网络,要注意区别于StubArea,在Stub网络上只连接了一个路由器。在Stub网络上传输的数据包要不源地址属于这个网络,要不目的地址属于这个网络。在Stub网络上的OSPF路由器会通告主机路由。Loopback接口也被看做是Stub网络,并且作为主机路由来进行通告。DesignatedRoutersandBackupDesignatedRouters在多点访问网络中,OSPF路由协议存在着两个和LSA扩散有关的问题:1、位于多点访问网络中的路由器彼此之间传输的邻接信息会生成许多不必要的LSA。2、多点访问网络中的LSA数据包的扩散显得很混乱。为了避免这些问题的出现,需要推举一个路由器作为DR,完成以下的工作:1、用来描述这个多点访问网络和网络上其它的路由器。2、管理在多点访问网络上的OSPF数据包的扩散操作。采用DR的根本用于是将这个多点访问网络看做是一个伪节点,或者说是一个虚拟的路由器。网络上的每个路由器都与这个DR形成邻接关系。只有DR可以发送LSA数据包到其它的路由器。执行DR工作的实际上是一个路由器的接口,而不是一个完整的路由器。所以,我们可以看到一个路由器在一个多点访问网络中担任DR的角色,而在另一个多点访问网络中只是一台普通的路由器。采用DR这种配置方式存在这一个问题,就是当担任DR角色的路由器失败后,网络中需要重新选举一台路由器担任DR角色。所有的邻接关系需要重新建立,并且所有的路由器需要与新推举DR重新同步链路状态数据库。当执行这些操作的时候,网络是无效的,无法传输数据包。为了防止发生这种事情,在推举DR的同时,另外增加了推举BDR的操作。所有的路由器不仅与DR形成邻接关系,而且也与BDR形成邻接关系。DR和BDR之间也会建立邻接关系。如果DR失败,BDR就会升级为新的DR,由于其它的路由器已经与BDR形成了邻接关系,所以网络的失效时间就会降低到最小限度。DR和BDR的推举操作是由接口状态机触发进行的。为了能够使DR和BDR的推举操作能够顺利进行,必须满足下面的前提条件:1、路由器的每一个多点访问接口都分配了一个RouterPriority,这是一个8bit长度的整数,取值范围是0到255。Cisco路由器缺省的优先级是1。通过执行命令ipospfpriority命令,可以在多点访问接口上修改优先级值。优先级值为0的路由器将不会成为DR或BDR。2、在Hello数据包中包含有一个区域,这个区域中记录了路由器的优先级值和连接接口的IP地址。3、当一个多点访问接口启动后,它将设置DR和BDR为0.0.0.0。同时设置一个时钟:waittimer。这个时钟值等于RouterDeadInterval时钟值。4、已经连接在多点访问网络上的接口将会把DR和BDR的地址记录在接口的数据结构里。DR和BDR的选举过程如下:1、邻居路由器之间在建立了双向的通信之后,路由器会检查从邻居接收到得Hello数据包里面的优先级、DR和BDR区域。列出所有可以参与DR和BDR推举操作的路由器列表。此后,网络上的所有路由器都会宣称自己就是DR和BDR,并将自己的接口地址设置到Hello数据包中的DR区域和BDR区域。路由器在进行DR和BDR的推举计算时,也将把自己包含在内,除非路由器不具备参与DR、BDR推举的资格。2、从所有具备参与DR、BDR推举资格的路由器中建立一个子集,在这个子集中包含所有那些没有宣称自己是DR的路由器。宣称自己是DR的路由器不能被推举成为BDR。3、如果在这个子集中包含有一个或多个邻居路由器将它们自己的IP地址设置在Hello数据包的BDR区域,那么这些邻居路由器中具有最高优先级的路由器将被设置成为BDR。如果优先级都相同,那么具有最高RouterID的路由器将成为BDR。4、如果在这个子集中没有路由器宣称自己是BDR,那么,具有最高优先级的邻居路由器将被推举成为BDR。如果所有的邻居路由器的优先级相同,那么,具有最高RouterID的路由器将被推举成为BDR。5、一个或多个具有参与DR推举的路由器如果将它们的IP地址设置在Hello数据包的DR区域,宣称自己是DR。那么具有最高优先级的邻居路由器将会被推举为DR。如果优先级都相同,具有最高RouterID的邻居路由器会被推举为DR。6、如果没有路由器宣称自己是DR,那么新推举的BDR就会升级为DR。整个过程是先推举BDR,再开始推举DR。7、如果完成计算的路由器是新被推举的DR或BDR,或者如果他不在是DR或BDR,重复第2步到第6步的操作。简单来说,当OSPF路由器在网络中激活后,它将检查它的邻居路由器,看是否能够发现DR和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年社会发展与公共政策硕士课程期末考试题及答案
- 2025年教师资格考试试卷及答案
- 2025年机电一体化技术考试试题及答案
- 2025年动物医学专业基础知识考试试题及答案
- 2025年翻译专业学位考试试卷及答案
- 村级防溺水安全宣传工作会议记录
- 特殊事项报告管理制度
- 特殊工种公司管理制度
- 特殊时期财务管理制度
- 特殊病历护理管理制度
- 矿灯管理工培训课件
- 村医培训死因监测课件
- 玻璃幕墙清洗施工方案
- 管理授权手册7.28
- lcd制造工艺流程
- 2024届北京市石景山区七年级生物第二学期期末学业水平测试模拟试题含解析
- 《数据中心液冷系统技术规程》
- 人教版八年级日语单词表
- 建筑施工安全管理及扬尘治理检查投标方案(技术方案)
- 医院耗材SPD解决方案(技术方案)
- 全国高中青年数学教师优质课大赛一等奖《导数的概念》课件
评论
0/150
提交评论