OSPF在广播网络中的邻接关系-梁立宝_第1页
OSPF在广播网络中的邻接关系-梁立宝_第2页
OSPF在广播网络中的邻接关系-梁立宝_第3页
OSPF在广播网络中的邻接关系-梁立宝_第4页
OSPF在广播网络中的邻接关系-梁立宝_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、OSPF在广播网络中的邻接关系OSPF Adjacent in Multi-Access Broadcasting Network梁立宝LIANG LIBAO摘要:OSPF作为应用最广泛的内部网关路由选择协议,其邻接关系的建立是一个非常重要的部分,本文以以太网为例,讨论OSPF在广播型多路访问网络中邻接关系的详细的建立过程。关键词:开放式最短路径优先;OSPF邻居;OSPF邻接中图分类号:TP393文献标识码:AAbstract:OSPF as the most extensive application of the IGPs,that geting OSPF neighbors to be

2、come fully adjacent is very important.This document to Ethernet as an example, OSPF in the discussion of Multi-Access broadcasting network adjacent to the detailed relationship between the establishment of process.Keywords:OSPF(open shortest path first), OSPF neighbor, OSPF adjacency1 引言随着Internet技术

3、在全球范围的飞速发展,OSPF(Open Shortest Path First)已成为目前Internet广域网和Intranet企业网采用最多、应用最广泛的路由协议之一。OSPF路由协议是由IETF(Internet Engineering Task Force)IGP工作小组提出的,是一种基于SPF算法的路由协议,目前使用的OSPF协议是其第二版,定义于RFC1247和RFC1583。OSPF是一种公开化的标准,多厂家的路由器共同支持。在RFC2328 Version 2 中定义了OSPF的邻接关系(Adjacency),进行路由信息交换的邻居路由器之间建立的一种状态,并不是所有的邻居路

4、由器都可以建立邻接关系的状态。OSPF区域是由不同类型的网络链路组成的,因此,在不同的链路类型的网络中,OSPF采用不同的方式进行邻接关系的建立和维护。其宗旨就是减少网络中由LSA扩散引起的路由更新数据流量。OSPF把网络链路分为以下几种类型:(1)点到点链路(2)广播型多路访问网络(3)非广播多路访问(NBMA)网络(4)点到多点网络(5)虚链路一般情况下,在点到点、点到多点、虚链路类型的网络上的邻居路由器之间总是可以形成邻接关系的。而在广播型网络和NBMA网络上,将需要选取DR(指定路由器)和BDR(备份指定路由器)路由器,DR和BDR路由器江河所有的邻接路由器形成邻接关系,但是在DRot

5、hers(既不是指定路由器也不是备份指定路由器)路由器之间没有邻接关系存在。本文重点分析研究在广播型的网络上OSPF路由器建立邻接关系的过程。2 OSPF协议中建立邻接关系的步骤要成功建立一个邻接关系,通常需要下面4个阶段:(1)邻居路由器发现阶段;(2)双向通信阶段当两台互为邻居的路由器在它们的Hello报文中都互相列出了它们对方的路由器ID时,路由器就认为双向通信完成了;(3)数据库同步阶段路由器之间将进行交换数据库描述(Database Description)、链路状态请求和链路状态更新报文信息,以便确保在邻居路由器的链路状态数据库中包含有相同的数据库信息。执行这一步骤的目的是使其中一

6、台邻居路由器成为“主路由器”(master),而使另一台路由器成为“从路由器”(slave)。“主路由器”将控制数据库描述报文的信息交换;(4)完全邻接阶段。3 广播网络中存在的问题广播型多路访问网络,像以太网、令牌环网和FDDI,在一个网段内存在多个OSPF路由器。对于OSPF协议来说,就存在两个问题:(1)在构建相关路由器之间的邻接关系时,会创建很多不必要的LSA。假设在一个多路访问网络上有n台路由器,那么就会构成n(n-1)/2个邻接关系。每台路由器都通告n-1条LSA信息到与之形成邻接关系的邻居路由器,再加上1个网络LSA,这样计算的最终结果是,这个网络上将产生n*n个LSA通告。(2

7、)在广播型多路访问网络上,网络本身的扩散比较混乱。某一台路由器向与它形成邻接关系的所有邻居发送LSA,同样,这些邻接的邻居路由器又向与它自己建立邻接关系的邻居的邻居发出这个LSA,这样将会在一个网络上创建很多个相同的LSA的副本。因此,为了减少路由更新数据流,更好的管理链路状态同步,减少路由选择错误,在广播网络上选举一个DR和BDR,用以完成以下工作:l 描述这个多路访问网络和该网络上剩下的其他相关路由器l 管理这个多路访问网络的扩散过程DR是一个路由器上的某一个广播型多路访问网络的接口的特性,而不是整个路由器的特性。所以,在广播型多路访问中,网络本身也将DR看作是网络上的一个虚拟路由器,网络

8、上的每一台路由器都和这个被描述为虚拟路由器的DR建立邻接关系。并且规定,只有DR才发送LSA到网络中其他的路由器。DR正常运行时,BDR不执行任何DR功能;BDR接收所有的信息,但转发LSA和同步LSDB的任务由DR完成。仅当DR故障时,BDR自动成为DR,并选举新的BDR。4 OSPF协议邻居状态机OSPF路由器需要邻居路由器在几种邻居状态之间转换后,才能形成邻居之间的完全邻接关系。l 失效状态(down)邻居会话的初始状态,路由器尝试发送Hello分组,向网段中的其他路由器介绍自己,并试图发现其他的OSPF路由器。该Hello分组使用组播地址224.0.0.5(所有SPF路由器),其DR、

9、BDR字段都设置为0.0.0.0。l 初始状态(Init)路由器收到了来自于邻居路由器的Hello报文,但是双向通信仍然没有建立起来。路由器将会在Hello报文的邻居字段中包含这种状态下或更高状态的所有邻居路由器的路由器ID。l 双向通信状态(2-way)路由器在邻居路由器发送过来的Hello报文的邻居字段中看到了自己的路由器ID,一个双向通信的会话已经成功建立了。多路访问网络中,邻居路由器必须在这个状态或更高的状态时才能有资格被选作该网络上的DR或BDR。l 信息交换初始状态(ExStrart)路由器和它的邻居将建立起主/从关系,并确定数据库描述报文的序列号,为数据库描述报文的信息交换作好准

10、备。接口IP地址大的路由器将成为“主”路由器,用来决定发起通信的路由器。l 信息交换状态(Exchange)路由器将向它的邻居路由器发送链路状态请求和数据库描述报文。l 信息加载状态(loading)路由器将会向它的邻居路由器发送链路状态请求报文,用来请求最新的LSA通告。虽然在Exchange状态下已经发现了这些最新的LSA通告,但是本地路由器还没有收到这些LSA通告。l 完全邻接状态(Full)路由器与邻居路由器之间将建立起完全邻接关系,这种邻接关系出现在路由器LSA和网络LSA中。图1 OSPF协议邻居状态机中,从失效状态到达完全邻接状态所经过的转换状态图2 OSPF协议邻居状态机中,从

11、各状态到失效状态所经过的转换状态输入事件描述IE1从邻居路由器那里收到一个有效的Hello报文IE2根据低层的协议,来自于OSPF进程本身的明确指令或者无效计时器的超时等影响使邻居路由器不再可达IE3本地路由器在邻居路由器发送的Hello报文的邻居字段表中开始看到它自己的路由器ID,或者是从邻居路由器收到了数据库描述报文IE4邻居路由器不能建立邻接关系IE5这个输入事件可以由下面两种情况的任何一个触发:1. 邻居状态开始转换到2-way状态;2. 接口状态发生变化IE6不能和这个邻居路由器形成邻接关系IE7已经成功建立主/从关系,并且已经交换数据库描述序列号IE8完成了数据库描述报文的信息交换

12、IE9链路状态请求列表非空,存在要请求的条目IE10链路状态请求列表为空IE11邻接关系将被中断并接着重新开始。这个输入事件可以由下面几种情况的任何一个触发:1. 接收到一个数据库描述序列号不匹配的数据库描述报文;2. 接收到一个所含可选项字段的设置和最后一个数据库描述报文的可选项字段设置不同的数据库描述的报文;3. 接收到一个所含初始状态位(Init位)的设置和最初的报文不同的数据库描述报文4. 接收到一个所含LSA不在本地路由器的链路状态数据库里的链路状态请求报文5 OSPF建立邻接关系所使用的报文类型在一个邻接关系的创建过程中,OSPF协议使用以下4中报文类型:(1)Hello分组(2)

13、数据库描述报文(3)链路状态请求报文(4)链路状态更新报文数据库描述报文仅仅包含始发路由器的LSDB(链路状态数据库)中的每一个LSA(链路状态通告)的头部信息,接收路由器用这些信息判定在它自己的数据库中LSA通告是否是最新的。另外,在数据库描述报文里面有3个标记为用来关系邻接关系的建立过程:(1)I位,或称为初始为(Initial bit),当需要知名所发送的是第一个数据库描述报文时,该位设置为1;(2)M位,或称为后继位(More bit),当需要知名所发送的还不是最后一个数据库描述报文时,该位设置为1;(3)MS位,或称为主/从位(Master/Slave bit),当数据库描述报文始发

14、于一个“主”路由器时,该位设置为1.当两台邻居路由器在ExStart状态开始进行主/从关系协商时,它们都将通过发送一个MS位设置为1的空的数据库描述报文来宣称自己是“主”路由器。这两个数据库描述报文的数据库描述序列号是由发出这两个报文的路由器根据当时应该顺次使用到的序列号来确定的。具有较低的路由器ID的邻居路由器将成为“从”路由器,并且恢复一个MS位设置为0的数据库描述报文这个数据库描述报文的序列号设置为“主”路由器的序列号。同时,这个数据库描述报文也将是第一个携带LSA摘要信息的报文。当主/从关系协商完成后,邻居状态也将转换到Exchange状态了。在Exchange状态,邻居路由器开始同步

15、它们的链路状态数据库,同步链路状态数据库的操作是通过描述它们各自的链路状态数据库的所有条目来实现的。数据库摘要列表由路由器的链路状态数据库中所有的LSA通告的头部组成,而本地路由器将向它的邻居路由器发送包含这些LSA头部列表的数据库描述报文。如果本地路由器发现它的邻居路由器有一条LSA通告不在它自己的链路状态数据当中,或者邻居路由器含有比一直LSA通告更新的拷贝,那么本地路由器将把这条LSA放入它的链路状态请求列表中去。随后,本地路由器将发送一个链路状态请求报文去请求一个关于刚才讨论的这个LSA的完整拷贝。链路状态更新报文将会传送这些被请求的LSA的信息。当本地路由器收到关于这些被请求的LSA

16、之后,它将从自己的链路状态请求列表中删除这些LSA的条目。在更新报文中传送的所有的LSA必须单独的进行确认。因此,路由器将把这些传送的LSA放入它的链路状态重传列表当中。当这些LSA被确认之后,路由器就从他的链路状态重传列表中删除它们。LSA可以通过下面两种方法之一来进行确认:l 显示确认(Explicit Acknowledgment)确认收到包含这个LSA头部的链路状态确认报文;l 隐式确认(Implicit Acknowledgment)确认收到包含这个LSA的相同实例(没有其他更加新的LSA)的更新报文。“主”路由器将控制数据库的同步过程,并确保每次只有一个数据库描述报文是未处理的。当

17、“从”路由器收到一个从“主”路由器发出的数据库描述报文后,“从”路由器将通过发送一个具有相同序列号的数据库描述报文来确认那么报文。如果“主”路由器在RxmtInterval的时间内没有收到一个关于未处理的数据库描述报文的确认的话,那么“主”路由器将会发送该报文的一个新拷贝。“从”路由器发送数据库描述报文仅仅用来吸纳供应他从“主”路由器那里收到的数据库描述报文。如果它所受到的数据库描述报文具有一个新的序列号,那么“从”路由器将发送一个具有相同序列号的数据库描述报文。如果它所收到的数据库描述报文的序列号和在这之前已经确认的数据库描述报文相同,那么这个确认报文就是重发的。当数据库同步过程完成后,将会

18、出现下面两种状态转换的其中一种:l 如果链路状态请求列表中仍有一些LSA条目,那么路由器将把邻居的状态转换到加载(Loading)状态;l 如果链路状态请求列表为空,那么路由器将会把邻居的状态转换到完全邻接(Full)状态。如果“主”路由器已经发送过完整的描述它自己的链路状态数据库所必要的所有数据库描述报文,并且从“从”路由器收到一个M位设置位0的数据库描述报文,那么这时“主”路由器就认为数据库的同步过程完成了。如果“从”路由器收到一个M位设置为0的数据库描述报文的话(也就是说,“从”路由器已经完全描述了它自己的链路状态数据库),那么这时“从”路由器就认为数据库的同步过程完成了。由于“从”路由

19、器必须确认每一个收到的数据库描述报文,因此“从”路由器欧洲那个是最先得知同步过程完成了。6 OSPF以太网应用实例图3 以太网网链路的OSPD网络实例在图3所示的以太网网络环境中,在路由器上使用debug ip ospf adjacencies监视一下广播型多路访问网络中路由器邻接关系建立的动态输出:RouterA# debug ip ospf adjacencyOSPF adjacency events debugging is onOSPF: Rcv DBD from 192.168.30.70 on Ethernet0 seq 0x20E0 opt 0x2 flag ox7 len 32

20、 state INITOSPF: 2 way Communication to 192.168.30.70 on Ethernet0OSPF: Neighbor change Event on interface Ethernet0OSPF: DR/BDR election Event on interface Ethernet0OSPF: Elect BDR 192.168.30.70OSPF: Elect DR 192.168.30.175 DR: 192.168.30.175 (Id) BDR: 192.168.30.70 (Id)OSPF: Send DBD to 192.168.30

21、.70 on Ethernet0 seq 0xB17 opt 0x2 flag 0x7 len 32OSPF: First DBD and we are not SLAVEOSPF: Rcv DBD from 192.168.30.70 on Ethernet0 seq 0xB17 opt 0x2 flag 0x2 len 92 state EXSTARTOSPF: NBR Negotiation Done. We are the MASTEROSPF: Send DBD to 192.168.30.70 on Ethernet0 seq 0xB18 opt 0x2 flag 0x3 len 72OSPF: Database request to 192.1

温馨提示

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

评论

0/150

提交评论