OSPF路由协议技术讲解课件.ppt

上传人(卖家):晟晟文业 文档编号:4066555 上传时间:2022-11-08 格式:PPT 页数:94 大小:2.21MB
下载 相关 举报
OSPF路由协议技术讲解课件.ppt_第1页
第1页 / 共94页
OSPF路由协议技术讲解课件.ppt_第2页
第2页 / 共94页
OSPF路由协议技术讲解课件.ppt_第3页
第3页 / 共94页
OSPF路由协议技术讲解课件.ppt_第4页
第4页 / 共94页
OSPF路由协议技术讲解课件.ppt_第5页
第5页 / 共94页
点击查看更多>>
资源描述

1、第 6 章 OSPF路由协议技术http:/教学内容教学内容教学目标教学目标1 1、掌握掌握OSPFOSPF的工作原理的工作原理2 2、掌握单区域掌握单区域OSPFOSPF的配置方法的配置方法重点难点重点难点1 1、什么是链路状态路由协议什么是链路状态路由协议2 2、AreaArea的概念的概念3 3、DRDR的选举的选举4 4、OSPFOSPF的各种数据包类型的各种数据包类型技能目标技能目标应应知知1 1、链路状态的概念链路状态的概念2 2、OSPFOSPF的近邻关系的近邻关系3 3、DRDR选举的过程选举的过程4 4、OSPFOSPF的各种数据包类型的各种数据包类型应应会会1 1、单区域单

2、区域OSPFOSPF的基本配置的基本配置2 2、OSPFOSPF的的DRDR选举控制选举控制3 3、OSPFOSPF的调试的调试OSPF OSPFOSPF是一种典型的链路状态路由协议。采用是一种典型的链路状态路由协议。采用OSPFOSPF的路由器彼此的路由器彼此交换并保存整个网络的链路信息,从而掌握全网的拓扑结构,交换并保存整个网络的链路信息,从而掌握全网的拓扑结构,独立计算路由。独立计算路由。目前广为使用的是目前广为使用的是OSPFOSPF第二版,最新标准为第二版,最新标准为RFC2328RFC2328。OSPFOSPF作为一种内部网关协议(作为一种内部网关协议(Interior Gatew

3、ay ProtocolInterior Gateway Protocol,IGPIGP),用于在同一个自治域(),用于在同一个自治域(ASAS)中的路由器之间发布路由)中的路由器之间发布路由信息。不同于距离矢量协议信息。不同于距离矢量协议(RIP)(RIP),OSPFOSPF具有支持大型网络、具有支持大型网络、路由收敛快、占用网络资源少等优点,在目前应用的路由协议路由收敛快、占用网络资源少等优点,在目前应用的路由协议中占有相当重要的地位。中占有相当重要的地位。链路状态协议(链路状态协议(Link-State ProtocolsLink-State Protocols)OSPF路由器收集其所在网

4、络区域上各路由器的连接状态信息,即链路状态信息(Link-State),生成链路状态数据包LSA传送给同一区域内的所有所有路由器。路由器掌握了该区域上所有路由器的链路状态信息,也就等于了解了整个网络的拓扑状况。而距离矢量路由协议是将全部或部分路由表传递给自己的邻居路由器。OSPF特点特点 OSPFOSPF无路由自环问题。无路由自环问题。OSPFOSPF支持变长子网掩码支持变长子网掩码VLSMVLSM。OSPFOSPF支持区域划分、适应大规模网络。支持区域划分、适应大规模网络。OSPFOSPF路由变化时收敛速度快,可适应大规模网络。路由变化时收敛速度快,可适应大规模网络。OSPFOSPF发送发送

5、周期性周期性更新(链路状态刷新),更新(链路状态刷新),3030分钟。当拓扑改分钟。当拓扑改变时触发更新变时触发更新 OSPFOSPF被直接封装于被直接封装于IPIP协议之上(使用协议号协议之上(使用协议号8989),它靠自身),它靠自身的传输机制保证可靠性。的传输机制保证可靠性。OSPFOSPF数据包的数据包的TTLTTL值被设为值被设为1 1,即,即OSPFOSPF数据包只能被传送到一数据包只能被传送到一跳范围之内的邻居路由器。跳范围之内的邻居路由器。OSPFOSPF以组播地址发送协议报文(对所有以组播地址发送协议报文(对所有DR/BDRDR/BDR路由器的组播路由器的组播地址:地址:22

6、4.0.0.6224.0.0.6;对所有的;对所有的SPFSPF路由器的组播地址:路由器的组播地址:224.0.0.5224.0.0.5)OSPFOSPF支持等值路径负载分担(支持等值路径负载分担(CiscoCisco定义最大定义最大6 6条)。条)。OSPFOSPF支持验证,防止对路由器、路由协议的攻击行为支持验证,防止对路由器、路由协议的攻击行为分层设计(分层设计(Hierarchical Design Hierarchical Design)1.1.大的大的OSPFOSPF网络采用分层设计,所有区域到主干区域。网络采用分层设计,所有区域到主干区域。nOSPFOSPF把一个大型网络分割成多

7、个小型网络的能力被称为分层路由,把一个大型网络分割成多个小型网络的能力被称为分层路由,这些被分割出来的小型网络就称为这些被分割出来的小型网络就称为“区域区域”(Area)(Area)。由于区域内。由于区域内部路由器仅与同区域的路由器交换部路由器仅与同区域的路由器交换LSALSA信息,这样信息,这样LSALSA报文数量及报文数量及链路状态信息库表项都会极大减少,链路状态信息库表项都会极大减少,SPFSPF计算速度因此得到提高。计算速度因此得到提高。多区域的多区域的OSPFOSPF必须存在一个主干区域,主干区域负责收集非主干必须存在一个主干区域,主干区域负责收集非主干区域发出的汇总路由信息,并将这

8、些信息返还给到各区域。区域发出的汇总路由信息,并将这些信息返还给到各区域。OSPFOSPF区域不能随意划分,应该合理地选择区域边界,使不同区域区域不能随意划分,应该合理地选择区域边界,使不同区域之间的通信量最小。但在实际应用中区域的划分往往并不是根据之间的通信量最小。但在实际应用中区域的划分往往并不是根据通信模式而是根据地理或政治因素来完成的。通信模式而是根据地理或政治因素来完成的。2.2.分层设计好处:分层设计好处:(1 1)减少路由更新)减少路由更新(2 2)加速收敛)加速收敛(3 3)限制不稳定到一个区域)限制不稳定到一个区域(4 4)提高网络性能)提高网络性能OSPF分层路由分层路由(

9、TheSolution:OSPFHierarchicalRouting)OSPFOSPF把一个大型网络分割成多个小型网络的能力被称为分层路由,这些被分把一个大型网络分割成多个小型网络的能力被称为分层路由,这些被分割出来的小型网络就称为割出来的小型网络就称为“区域区域”(Area)(Area)。多区域的。多区域的OSPFOSPF必须存在一个主干区域必须存在一个主干区域(Area0)(Area0),主干区域负责收集非主干区域发出的汇总路由信息,并将这些信息返,主干区域负责收集非主干区域发出的汇总路由信息,并将这些信息返还给到各区域。还给到各区域。主干区域:起到了让其他非骨干区域能够知道别的区域的网

10、络情况的作主干区域:起到了让其他非骨干区域能够知道别的区域的网络情况的作用。也就是说,所有非骨干区域的路由信息都要流经主干区域。用。也就是说,所有非骨干区域的路由信息都要流经主干区域。OSPF自治域自治域OSPF术语术语 1 1路由器路由器IDRouter IDIDRouter IDOSPFOSPF协议使用一个被称为协议使用一个被称为Router IDRouter ID的的3232位无符号整数来唯一标识一台位无符号整数来唯一标识一台路由器。基于这个目的,每一台运行路由器。基于这个目的,每一台运行OSPFOSPF的路由器都需要一个的路由器都需要一个Router Router IDID。这个。这个

11、Router IDRouter ID一般需要手工配置,一般将其配置为该路由器的某一般需要手工配置,一般将其配置为该路由器的某个接口的个接口的IPIP地址。由于地址。由于IPIP地址是唯一的,所以这样就很容易保证地址是唯一的,所以这样就很容易保证Router IDRouter ID的唯一性。在没有手工配置的唯一性。在没有手工配置Router IDRouter ID的情况下,一些厂家的情况下,一些厂家的路由器(包括的路由器(包括QuidwayQuidway系列)支持自动从当前所有接口的系列)支持自动从当前所有接口的IPIP地址自动地址自动选举一个选举一个IPIP地址作为地址作为Router IDR

12、outer ID。2 2邻居(邻居(NeighborsNeighbors)同一个网段上的路由器可以成为邻居。邻居是通过同一个网段上的路由器可以成为邻居。邻居是通过HelloHello报文来选择的,报文来选择的,Hello Hello 报文使用报文使用IPIP多播方式在每个端口定期发送。路由器一旦在其相多播方式在每个端口定期发送。路由器一旦在其相邻路由器的邻路由器的Hello Hello 报文中发现他们自己,则他们就成为邻居关系了,报文中发现他们自己,则他们就成为邻居关系了,在这种方式中,需要通信的双方确认。邻居的协商只在主地址在这种方式中,需要通信的双方确认。邻居的协商只在主地址(Primar

13、y addressPrimary address)间协商。间协商。OSPF术语术语 两个路由器之间如果他们不满足下列条件,则他们就不能成两个路由器之间如果他们不满足下列条件,则他们就不能成为邻居:为邻居:p1 1、Area-idArea-id:两个路由器必须有共同的网段上,它们的端口必须属于:两个路由器必须有共同的网段上,它们的端口必须属于该网段上的同一个区,当然这些端口必须属于同一个子网。该网段上的同一个区,当然这些端口必须属于同一个子网。p2 2 验证(验证(Authentication OSPFAuthentication OSPF)允许给每一个区域配置一个密码来进)允许给每一个区域配置

14、一个密码来进行互相验证。路由器必须交换相同的密码,才能成为邻居。行互相验证。路由器必须交换相同的密码,才能成为邻居。p3 3、Hello IntervalHello Interval和和Dead IntervalDead Interval:OSPFOSPF协议在每个网段上交换协议在每个网段上交换Hello Hello 报文,这是报文,这是KeepliveKeeplive的一种形式,路由器用它来确认该网段上的一种形式,路由器用它来确认该网段上存在哪些路由器,并且选定一个指定路由器存在哪些路由器,并且选定一个指定路由器DRDR(Designated RouterDesignated Router)

15、。)。Hello IntervalHello Interval定义了路由器上定义了路由器上OSPFOSPF端口上发送端口上发送Hello Hello 报文时间间隔报文时间间隔长度(秒为单位)。长度(秒为单位)。Dead IntervalDead Interval是指邻居路由器宣布其状态为是指邻居路由器宣布其状态为DOWNDOWN之前,没有收到其之前,没有收到其HelloHello报文的时间。报文的时间。OSPFOSPF协议需要两个邻居路由器的这些时间间隔相同,如果这些时间间隔不协议需要两个邻居路由器的这些时间间隔相同,如果这些时间间隔不同,这些路由器就不能成为邻居路由器。可在路由器的端口模式下

16、设置这同,这些路由器就不能成为邻居路由器。可在路由器的端口模式下设置这些定时器:些定时器:ip ospf hello-interval ip ospf hello-interval ip ospf dead-interval ip ospf dead-interval p4 Stub4 Stub区标记:两个路由器为了成为邻居还可以在区标记:两个路由器为了成为邻居还可以在HelloHello报文中通过协报文中通过协商商StubStub区的标记来达到。区的标记来达到。StubStub区的定义会影响邻居选择的过程。区的定义会影响邻居选择的过程。OSPF术语术语 3 3邻接(邻接(AdjacencyA

17、djacency)邻居关系形成后路由器之间就会进行邻接关系的形成。成为邻接关系的邻居关系形成后路由器之间就会进行邻接关系的形成。成为邻接关系的路由器之间,不仅仅是进行简单的路由器之间,不仅仅是进行简单的HelloHello报文的交换,而是进行数据库的报文的交换,而是进行数据库的交换交换/为了减少特定网段上的交换信息。为了减少特定网段上的交换信息。OSPFOSPF协议在每一个多址可达的网协议在每一个多址可达的网段上选择一个路由器作为指定路由器(段上选择一个路由器作为指定路由器(DR Designated RouterDR Designated Router),),选选择另外一个路由器作为备份的指

18、定路由器择另外一个路由器作为备份的指定路由器BDR BDR(Backup Designated Backup Designated RouterRouter),),BDRBDR作为作为DRDR的备份。这种设计的考虑是让的备份。这种设计的考虑是让DRDR或或BDRBDR成为信息交成为信息交换的中心,而不是让每个路由器与该网段上其它路由器两两做更新信息换的中心,而不是让每个路由器与该网段上其它路由器两两做更新信息的交换。路由器首先与的交换。路由器首先与 DRDR、BDRBDR交换更新信息,然后交换更新信息,然后DR DR、BDRBDR将这些更将这些更新信息转发给该网段上的其他路由器。这样信息交换的

19、复杂度就会从新信息转发给该网段上的其他路由器。这样信息交换的复杂度就会从O O(n n*n n)降到)降到O O(n n),其中),其中n n是多址可达网段上的路由器的数量。如下图,是多址可达网段上的路由器的数量。如下图,显示了显示了DRDR和和BDRBDR的关系。的关系。OSPF术语术语 4 4指定路由器(指定路由器(Designative RouterDesignative Router,DRDR)DRDR的主要功能就是在一个的主要功能就是在一个LANLAN内的所有路由器拥有相同的数据库内的所有路由器拥有相同的数据库,而且把完整的数而且把完整的数据库信息发送给新加入的路由器。据库信息发送给

20、新加入的路由器。5 5备份指定路由器备份指定路由器BDRBDR(Backup Designative RouterBackup Designative Router,BDRBDR)6.LSA6.LSA链路状态公告链路状态公告(Link-State Advertisement)(Link-State Advertisement)类型类型1 1:路由器:路由器LSALSA,描述路由器领域的连接的链路状态和费用;,描述路由器领域的连接的链路状态和费用;只在一个地区只在一个地区内传播内传播类型类型2 2:网络:网络LSALSA,哪个适合有两个或更多附上的路由器以起源指定的路由器给连,哪个适合有两个或更

21、多附上的路由器以起源指定的路由器给连接的每个广播或者接的每个广播或者NBMA NBMA 连接;连接;全部列举附在连接上的路由器全部列举附在连接上的路由器类型类型3 3:网络摘要:网络摘要LSALSA,具体来讲就是将自己,具体来讲就是将自己AreaArea内的链路告诉内的链路告诉Area 0Area 0,也将其,也将其他他AreaArea(包括(包括Area 0Area 0)的信息传到自己的)的信息传到自己的AreaArea。其通告的链路是所有链路中。其通告的链路是所有链路中CostCost最小的,在路由表中以最小的,在路由表中以“O IA”O IA”表示。如果表示。如果LSA3LSA3通告的是

22、一条缺省路由,通告的是一条缺省路由,那么链路状态那么链路状态IDID和网络掩码字段中都将设为和网络掩码字段中都将设为0.0.0.00.0.0.0。类型类型4 4:ASBR ASBR 摘要摘要LSALSA,描述通向目的地,描述通向目的地OSPFOSPF路由器的路径路由器的路径(一时当边界路由器一时当边界路由器)在这个领域以外,在这个领域以外,类型类型5 5:作为外部:作为外部LSALSA,描述通向在以外的前缀的作为路径,描述通向在以外的前缀的作为路径类型类型6 6:组播:组播LSALSA,思科路由器不支持思科路由器不支持MOSPFMOSPF类型类型7 7:NSSANSSA外部外部LSALSA,由

23、由ASBRASBR产生产生,几乎和几乎和5 5类相同类相同.OSPF术语术语 7 7链路状态数据库链路状态数据库LSDB LSDB 也叫拓扑数据库,把也叫拓扑数据库,把LSALSA作为一连串记录保存下来。作为一连串记录保存下来。LSALSA包括两类通用信息:包括两类通用信息:路由器链路信息使用路由器路由器链路信息使用路由器IDID、邻居、邻居IDID和代价通告路由器的邻居路由器,和代价通告路由器的邻居路由器,这里的代价是发送这里的代价是发送LSALSA路由器到其邻居的代价;路由器到其邻居的代价;末梢网络信息使用路由器末梢网络信息使用路由器IDID、网络、网络IDID和代价通告路由器直接连接的末

24、梢网和代价通告路由器直接连接的末梢网络络(没有邻居的网络没有邻居的网络);8 8邻居表、拓扑表、路由表邻居表、拓扑表、路由表OSPF术语(术语(OSPFTerminology)9 9内部内部路由器路由器(IRIR):所有端口在同一区域的路由器,):所有端口在同一区域的路由器,维护一个链路状态数据库。维护一个链路状态数据库。10.10.自治系统边界自治系统边界路由器路由器(ASBRASBR):至少拥有一个连接外):至少拥有一个连接外部自治域网络(如非部自治域网络(如非OSPFOSPF的网络)端口的路由器,负责将的网络)端口的路由器,负责将非非OSPFOSPF网络信息传入网络信息传入OSPFOSP

25、F网络。网络。11.11.区域边界区域边界路由器路由器(ABRABR):具有连接多区域端口的路由):具有连接多区域端口的路由器,一般作为一个区域的出口。器,一般作为一个区域的出口。ABRABR为每一个所连接的区为每一个所连接的区域建立链路状态数据库,负责将所连接区域的路由摘要信域建立链路状态数据库,负责将所连接区域的路由摘要信息发送到主干区域,而主干区域上的息发送到主干区域,而主干区域上的ABRABR则负责将这些信则负责将这些信息发送到各个区域。息发送到各个区域。12.12.主干路由器:具有连接主干区域端口的路由器主干路由器:具有连接主干区域端口的路由器 OSPFOSPF数据包类型(数据包类型

26、(OSPF Packet TypesOSPF Packet Types)OSPFOSPF数据包类型数据包类型1 1、HelloHello包包 HelloHello数据包是编号为数据包是编号为1 1的的OSPFOSPF数据包。运行数据包。运行OSPFOSPF协议的路由器每隔协议的路由器每隔一定的时间发送一次一定的时间发送一次HelloHello数据包,用以发现、保持邻居(数据包,用以发现、保持邻居(NeighborsNeighbors)关系并可以选举关系并可以选举DR/BDRDR/BDR。2 2、数据库描述包、数据库描述包 链路状态数据库描述数据包(链路状态数据库描述数据包(DataBaseDa

27、taBase Description Description,DBDDBD)是编)是编号为号为2 2的的OSPFOSPF数据包。该数据包在链路状态数据库交换期间产生。它数据包。该数据包在链路状态数据库交换期间产生。它的主要作用有三个:的主要作用有三个:选举交换链路状态数据库过程中的主选举交换链路状态数据库过程中的主/从关系。从关系。确定交换链路状态数据库过程中的初始序列号。确定交换链路状态数据库过程中的初始序列号。交换所有的交换所有的LSALSA数据包头部。数据包头部。OSPFOSPF数据包类型数据包类型3 3、链路状态请求包、链路状态请求包 链路状态请求数据包(链路状态请求数据包(LSA-R

28、EQLSA-REQ)是编号为)是编号为3 3的的OSPFOSPF数据包。该数据数据包。该数据包用于请求在包用于请求在DBDDBD交换过程发现的本路由器中没有的或已过时的交换过程发现的本路由器中没有的或已过时的LSALSA包细包细节。节。4 4、链路状态更新包、链路状态更新包 链路状态更新数据包(链路状态更新数据包(LSA-UpdateLSA-Update)是编号为)是编号为4 4的的OSPFOSPF数据包。该数数据包。该数据包用于将多个据包用于将多个LSALSA泛洪,也用于对接收到的链路状态更新进行应答。泛洪,也用于对接收到的链路状态更新进行应答。如果一个泛洪如果一个泛洪LSALSA没有被确认

29、,它将每隔一段时间(缺省是没有被确认,它将每隔一段时间(缺省是5 5秒)重传一秒)重传一次。次。5 5、链路状态确认包、链路状态确认包 链路状态确认数据包(链路状态确认数据包(LSA-AcknowledgementLSA-Acknowledgement)是编号为)是编号为5 5的的OSPFOSPF数数据包。该数据包用于对接收到的据包。该数据包用于对接收到的LSALSA进行确认。该数据包会以组播的形进行确认。该数据包会以组播的形式发送。如果发送确认的路由器的状态是式发送。如果发送确认的路由器的状态是DRDR或者或者BDRBDR,确认数据包将被,确认数据包将被发送到发送到OSPFOSPF路由器组播

30、地址:路由器组播地址:224.0.0.5224.0.0.5。如果发送确认的路由器的状。如果发送确认的路由器的状态不是态不是DRDR或者或者BDRBDR,确认将被发送到,确认将被发送到OSPFOSPF路由器组播地址:路由器组播地址:224.0.0.6224.0.0.6。OSPFOSPF数据包头格式数据包头格式版本,版本,2 2OSPF 5OSPF 5种分组之种分组之一一分组长分组长路由器标识路由器标识区域标识区域标识 校验和校验和鉴别类鉴别类型型0 0或或1 1鉴别鉴别类型为类型为1 1时是口时是口令令数据数据OSPF操作(操作(OSPFOperation)1.1.建立邻接关系建立邻接关系2.2

31、.必要的进行必要的进行DRDR选举选举3.3.发现路由发现路由4.4.选择相应的路由选择相应的路由5.5.维护路由信息维护路由信息邻居关系(邻居关系(NeighborshipNeighborship)*标记在邻居路由器上必须匹配标记在邻居路由器上必须匹配OSPFOSPF的邻居状态机的邻居状态机DownDown:邻居状态机的初始状态,是指在过去的邻居状态机的初始状态,是指在过去的Dead-IntervalDead-Interval时间内没有时间内没有收到对方的收到对方的HelloHello报文。报文。AttemptAttempt:只适用于:只适用于NBMANBMA类型的接口,处于本状态时,定期向

32、那些手工配类型的接口,处于本状态时,定期向那些手工配置的邻居发送置的邻居发送HELLOHELLO报文。报文。InitInit:本状态表示已经收到了邻居的本状态表示已经收到了邻居的HELLOHELLO报文,但是该报文中列出的邻报文,但是该报文中列出的邻居中没有包含我的居中没有包含我的Router IDRouter ID(对方并没有收到我发的(对方并没有收到我发的HELLOHELLO报文)。报文)。2-Way2-Way:本状态表示双方互相收到了对端发送的本状态表示双方互相收到了对端发送的HELLOHELLO报文,建立了邻居关报文,建立了邻居关系。在广播和系。在广播和NBMANBMA类型的网络中,两

33、个接口状态是类型的网络中,两个接口状态是DROtherDROther的路由器之间将的路由器之间将停留在此状态。其他情况状态机将继续转入高级状态。停留在此状态。其他情况状态机将继续转入高级状态。ExStartExStart:在此状态下,路由器和它的邻居之间通过互相交换在此状态下,路由器和它的邻居之间通过互相交换DDDD报文(该报文(该报文并不包含实际的内容,只包含一些标志位)来决定发送时的主报文并不包含实际的内容,只包含一些标志位)来决定发送时的主/从关系。从关系。建立主建立主/从关系主要是为了保证在后续的从关系主要是为了保证在后续的DDDD报文交换中能够有序的发送。报文交换中能够有序的发送。E

34、xchangeExchange:路由器将本地的路由器将本地的LSDBLSDB用用DDDD报文来描述,并发给邻居。报文来描述,并发给邻居。LoadingLoading:路由器发送路由器发送LSRLSR报文向邻居请求对方的报文向邻居请求对方的DDDD报文。报文。FullFull:在此状态下,邻居路由器的在此状态下,邻居路由器的LSDBLSDB中所有的中所有的LSALSA本路由器全都有了。本路由器全都有了。即,本路由器和邻居建立了邻接(即,本路由器和邻居建立了邻接(adjacencyadjacency)状态。)状态。建立双向通信建立双向通信(Establishing Bidirectional Co

35、mmunicationEstablishing Bidirectional Communication)DownDown:邻居状态机的初始状态,是指在过去的邻居状态机的初始状态,是指在过去的Dead-IntervalDead-Interval时间内没有收时间内没有收到对方的到对方的HelloHello报文。报文。建立双向通信建立双向通信(Establishing Bidirectional CommunicationEstablishing Bidirectional Communication)以固定的时间间隔(以固定的时间间隔(1010秒)向邻居秒)向邻居发送发送HelloHello分组,

36、进入分组,进入InitInit状态状态InitInit:本状态表示已经收到了邻居的本状态表示已经收到了邻居的HELLOHELLO报文,但是该报文中列出的邻居报文,但是该报文中列出的邻居中没有包含我的中没有包含我的Router IDRouter ID(对方并没有收到我发的(对方并没有收到我发的HELLOHELLO报文)。报文)。建立双向通信建立双向通信(Establishing Bidirectional CommunicationEstablishing Bidirectional Communication)建立双向通信建立双向通信(Establishing Bidirectional Co

37、mmunicationEstablishing Bidirectional Communication)在在hellohello分组中含有发送者已知的分组中含有发送者已知的OSPFOSPF邻居列表,当看到自己出现在另一邻邻居列表,当看到自己出现在另一邻居路由器的居路由器的hellohello分组时,进入分组时,进入two-two-wayway状态状态2-Way2-Way:本状态表示双方互相收到了对端发送的本状态表示双方互相收到了对端发送的HELLOHELLO报文,建立了邻居关系。报文,建立了邻居关系。在广播和在广播和NBMANBMA类型的网络中,两个接口状态是类型的网络中,两个接口状态是DRO

38、therDROther的路由器之间将停留的路由器之间将停留在此状态。其他情况状态机将继续转入高级状态。在此状态。其他情况状态机将继续转入高级状态。查找网络路由查找网络路由(Discovering the Network RoutesDiscovering the Network Routes)有最高有最高OSPFOSPF路由器路由器IDID的路由器胜出作为指定路由器的路由器胜出作为指定路由器DRDR,进入进入ExstartExstart状态状态ExchangeExchange:路由器将本地的路由器将本地的LSDBLSDB用用DDDD报文来描述,并发给邻居。报文来描述,并发给邻居。查找网络路由查

39、找网络路由(Discovering the Network RoutesDiscovering the Network Routes)相互交换链路状态数据库汇总后,进入相互交换链路状态数据库汇总后,进入ExchangeExchange状态,比较链状态,比较链路状态数据库中的,找出自己不存在的链路状态信息路状态数据库中的,找出自己不存在的链路状态信息增加链路状态条目增加链路状态条目(Adding the Link-State EntriesAdding the Link-State Entries)双方给出收到链路状态数据库汇总的确认双方给出收到链路状态数据库汇总的确认增加链路状态条目增加链路状

40、态条目(Adding the Link-State EntriesAdding the Link-State Entries)回复一个确认回复一个确认需要某一条目的完整信息,以增加此网络的链路状态信息需要某一条目的完整信息,以增加此网络的链路状态信息LoadingLoading:路由器发送路由器发送LSRLSR报文向邻居请求对方的报文向邻居请求对方的DDDD报文。报文。FullFull:在此状态下,邻居路由器的在此状态下,邻居路由器的LSDBLSDB中所有的中所有的LSALSA本路由器全都有了。即,本路由器全都有了。即,本路由器和邻居建立了邻接(本路由器和邻居建立了邻接(adjacencyad

41、jacency)状态。)状态。各状态之间的关系各状态之间的关系路由器的状态变迁过程路由器的状态变迁过程1.RT11.RT1的一个连接到广播类型网络的接口上激活了的一个连接到广播类型网络的接口上激活了OSPFOSPF协议,并发送了一个协议,并发送了一个HELLOHELLO报文(使用组播地址报文(使用组播地址224.0.0.5224.0.0.5)。由于此时)。由于此时RT1RT1在该网段中还未发现在该网段中还未发现任何邻居,所以任何邻居,所以HELLOHELLO报文中的报文中的NeighborNeighbor字段为空。字段为空。2.RT22.RT2收到收到RT1RT1发送的发送的HELLOHELL

42、O报文后,为报文后,为RT1RT1创建一个邻居的数据结构。创建一个邻居的数据结构。RT2RT2发送发送一个一个HELLOHELLO报文回应报文回应RT1RT1,并且在报文中的,并且在报文中的NeighborNeighbor字段中填入字段中填入RT1RT1的的Router Router idid,表示已收到,表示已收到RT1RT1的的HELLOHELLO报文,并且将报文,并且将RT1RT1的邻居状态机置为的邻居状态机置为InitInit。3.RT13.RT1收到收到RT2RT2回应的回应的HELLOHELLO报文后,为报文后,为RT2RT2创建一个邻居的数据结构,并将邻居创建一个邻居的数据结构,

43、并将邻居状态机置为状态机置为ExstartExstart状态。下一步双方开始发送各自的链路状态数据库。状态。下一步双方开始发送各自的链路状态数据库。为了提高发送的效率,双方需先了解一下对端数据库中那些为了提高发送的效率,双方需先了解一下对端数据库中那些LSALSA是自己所是自己所需要的(如果某一条需要的(如果某一条LSALSA自己已经有了,就不再需要请求了)。方法是先发自己已经有了,就不再需要请求了)。方法是先发送送DDDD报文,报文,DDDD报文中包含了对本地数据库中报文中包含了对本地数据库中LSALSA的摘要描述(每一条摘要可的摘要描述(每一条摘要可以惟一标识一条以惟一标识一条LSALSA

44、,但所占的空间要少得多)。由于,但所占的空间要少得多)。由于OSPFOSPF直接用直接用IPIP报文来报文来封装自己的协议报文,所以在传输的过程中必须考虑到报文传输的可靠性。封装自己的协议报文,所以在传输的过程中必须考虑到报文传输的可靠性。为了做到这一点,在为了做到这一点,在DDDD报文的发送过程中需要确定双方的主从关系。作为报文的发送过程中需要确定双方的主从关系。作为MasterMaster的一方定义一个序列号的一方定义一个序列号seqseq,每发送一个新的,每发送一个新的DDDD报文将报文将seqseq 加一。作加一。作为为SlaveSlave的一方,每次发送的一方,每次发送DDDD报文时

45、使用接收到的上一个报文时使用接收到的上一个MasterMaster的的DDDD报文中报文中的的seqseq。实际上这种序列号机制是一种隐含的确认方法。如果再加上每个报。实际上这种序列号机制是一种隐含的确认方法。如果再加上每个报文都有超时重传,就可以保证这种传输是可靠的。文都有超时重传,就可以保证这种传输是可靠的。RT1 RT1首先发送一个首先发送一个DDDD报文,宣称自己是报文,宣称自己是MasterMaster(MS=1MS=1),并规定序列号为),并规定序列号为x x。I=1I=1表示这是第一个表示这是第一个DDDD报文,报文中并不包含报文,报文中并不包含LSALSA的摘要,只是为了协商的

46、摘要,只是为了协商主从关系。主从关系。M=1M=1说明这不是最后一个报文。说明这不是最后一个报文。路由器的状态变迁过程路由器的状态变迁过程4.RT24.RT2在收到在收到RT1RT1的的DDDD报文后,将报文后,将RT1RT1的邻居状态机改为的邻居状态机改为ExstartExstart,并且回应了一,并且回应了一个个DDDD报文(该报文中同样不包含报文(该报文中同样不包含LSALSA的摘要信息)。由于的摘要信息)。由于RT2RT2的的Router IDRouter ID较较大,所以在报文中大,所以在报文中RT2RT2认为自己是认为自己是MasterMaster,并且重新规定了序列号为,并且重新

47、规定了序列号为y y。5.RT15.RT1收到报文后,同意了收到报文后,同意了RT2RT2为为MasterMaster,并将,并将RT2RT2的邻居状态机改为的邻居状态机改为ExchangeExchange。RT1RT1使用使用RT2RT2的序列号的序列号y y来发送新的来发送新的DDDD报文,该报文开始正式地传送报文,该报文开始正式地传送LSALSA的摘要。的摘要。在报文中在报文中RT1RT1将将MS=0MS=0,说明自己是,说明自己是SlaveSlave。6.RT26.RT2收到报文后,将收到报文后,将RT1RT1的邻居状态机改为的邻居状态机改为ExchangeExchange,并发送新的

48、,并发送新的DDDD报文来描报文来描述自己的述自己的LSALSA摘要,需要注意的是:此时摘要,需要注意的是:此时RT2RT2已将报文的序列号改为已将报文的序列号改为y+1y+1了。了。7.7.上述过程持续进行,上述过程持续进行,RT1RT1通过重复通过重复RT2RT2的序列号来确认已收到的序列号来确认已收到RT2RT2的报文。的报文。RT2RT2通过将序列号通过将序列号+1+1来确认已收到来确认已收到RT1RT1的报文。当的报文。当RT2RT2发送最后一个发送最后一个DDDD报文时,将报文时,将报文中的报文中的M=0M=0,表示这是最后一个,表示这是最后一个DDDD报文了。报文了。8.RT18

49、.RT1收到最后一个收到最后一个DDDD报文后,发现报文后,发现RT2RT2的数据库中有许多的数据库中有许多LSALSA是自己没有的,是自己没有的,将邻居状态机改为将邻居状态机改为LoadingLoading状态。此时状态。此时RT2RT2也收到了也收到了RT1RT1的最后一个的最后一个DDDD报文,报文,但但RT1RT1的的LSALSA,RT2RT2都已经有了,不需要再请求,所以直接将都已经有了,不需要再请求,所以直接将RT1RT1的邻居状态机的邻居状态机改为改为FullFull状态。状态。9.RT19.RT1发送发送LS RequestLS Request报文向报文向RT2RT2请求所需要

50、的请求所需要的LSALSA。RT2RT2用用LS UpdateLS Update报文来回报文来回应应RT1RT1的请求。的请求。RT1RT1收到之后,需要发送收到之后,需要发送LS LS AckAck报文来确认。上述过程持续到报文来确认。上述过程持续到RT1RT1中的中的LSALSA与与RT2RT2的的LSALSA完全同步为止。此时完全同步为止。此时RT1RT1将将RT2RT2的邻居状态机改为的邻居状态机改为FullFull状态。状态。路由器的状态变迁过程路由器的状态变迁过程以上过程是两台路由器由相互没有发现对方的存在到建立邻接关系的以上过程是两台路由器由相互没有发现对方的存在到建立邻接关系的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(OSPF路由协议技术讲解课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|