Loading

Network系列:OSPF邻居关系、网络类型、区域(二)

4. OSPF路由器之间的关系

  1. 关于OSPF路由器之间的关系有两个重要的概念,邻居关系和邻接关系。
  2. 考虑一种简单的拓扑,两台路由器直连。在双方互联接口上激活OSPF,路由器开始发送及侦听Hello报文。在通过Hello报文发现彼此后,这两台路由器便形成了邻居关系。
  3. 邻居关系的建立只是一个开始,后续会进行一系列的报文交互,例如前文提到的DD、LSR、LSU和LS ACK等。当两台路由器LSDB同步完成,并开始独立计算路由时,这两台路由器形成了邻接关系。

OSPF邻接关系建立过程

image-20220906144557572

OSPF完成邻接关系的建立有四个步骤,建立邻居关系、协商主/从、交互LSDB信息,同步LSDB。


4.1 建立邻居关系

image-20220906144722406

当一台OSPF路由器收到其他路由器发来的首个Hello报文时会从初始Down状态切换为Init状态。

当OSPF路由器收到的Hello报文中的邻居字段包含自己的Router ID时,从Init切换2-way状态。


4.2 协商主从、交互LSDB信息

image-20220906144901517

邻居状态机从2-way转为Exstart状态后开始主从关系选举:

  1. R1向R2发送的第一个DD报文内容为空,其Seq序列号假设为X。
  2. R2也向R1发出第一个DD报文,其Seq序列号假设为Y。
  3. 选举主从关系的规则是比较Router ID,越大越优。R2的Router ID比R1大,因此R2成为真正的主设备(DR)。主从关系比较结束后,R1的状态从Exstart转变为Exchange。
  4. R1邻居状态变为Exchange后,R1发送一个新的DD报文,包含自己LSDB的描述信息,其序列号采用主设备R2的序列号。R2收到后邻居状态从Exstart转变为Exchange。
  5. R2向R1发送一个新的DD报文,包含自己LSDB的描述信息,序列号为Y+1。
  6. R1作为从路由器需要对主路由R2发送的每个DD报文进行确认,回复报文的序列号与主路由R2一致。
  7. 发送完最后一个DD报文后,R1将邻居状态切换为Loading。

4.3 同步LSDB

image-20220906145203151

  1. 邻居状态转变为Loading后,R1向R2发送LSR报文,请求那些在Exchange状态下通过DD报文发现的,但是在本地LSDB中没有的LSA。
  2. R2收到后向R1回复LSU。在LSU报文中包含被请求的LSA的详细信息。
  3. R1收到LSU报文后,向R2回复LS ACK报文,确认已接收到,确保信息传输的可靠性。
  4. 此过程中R2也会向R1发送LSA请求。当两端LSDB完全一致时,邻居状态变为Full,表示成功建立邻接关系。

4.4 查看邻居表信息

image-20220906145449074

如图所示输入display ospf peer命令之后,各项参数含义如下:

  • OSPF Process 1 with Router ID 1.1.1.1:本地OSPF进程号为1与本端OSPF Router ID为1.1.1.1
  • Router ID:邻居OSPF路由器ID
  • Address:邻居接口地址
  • GR State:使能OSPF GR功能后显示GR的状态(GR为优化功能),默认为Normal
  • State:邻居状态,正常情况下LSDB同步完成之后,稳定停留状态为Full
  • Mode:用于标识本台设备在链路状态信息交互过程中的角色是Master还是Slave
  • Priority:用于标识邻居路由器的优先级(该优先级用于后续DR角色选举)
  • DR:指定路由器
  • BDR:备份指定路由器
  • MTU:邻居接口的MTU值
  • Retrans timer interval:重传LSA的时间间隔,单位为秒
  • Authentication Sequence:认证序列号

5. OSPF网络类型

如下图,OSPF的有四种网络类型,Broadcast、NBMA、P2MP和P2P。

image-20220906160821230

OSPF网络类型是一个非常重要的接口变量,这个变量将影响OSPF在接口上的操作,例如采用什么方式发送OSPF协议报文,以及是否需要选举DR、BDR等。

接口默认的OSPF网络类型取决于接口所使用的数据链路层封装,链路两端的OSPF接口网络类型必须一致,否则双方无法建立邻居关系。


5.1 P2P点对点

image-20220906161045314


5.2 BMA广播式多路访问

image-20220906161133481


5.3 NBMA广播式多路访问

image-20220906161303422


5.4 P2MP点到多点

image-20220906161348925


6. DR与BDR

MA(Multi-Access)多路访问网络有两种类型:

  • 广播型多路访问网络(BMA)
  • 非广播型多路访问网络(NBMA)

以太网(Ethernet)是一种典型的广播型多路访问网络。


image-20220906165102298

  • 在MA网络中,如果每台OSPF路由器都与其他的所有路由器建立OSPF邻接关系,便会导致网络中存在过多的OSPF邻接关系,增加设备负担,也增加了网络中泛洪的OSPF报文数量。
  • 当拓扑出现变更,网络中的LSA泛洪可能会造成带宽的浪费和设备资源的损耗。

为优化MA网络中OSPF邻接关系,OSPF指定了三种OSPF路由器身份:

  • DR(Designated Router,指定路由器)
  • BDR(Backup Designated Router,备用指定路由器)
  • DRother路由器

BDR会监控DR的状态,并在当前DR发生故障时接替其角色。


选举规则

OSPF DR优先级更高的接口成为该MA的DR,如果优先级相等(默认为1),则具有更高的OSPF Router-ID的路由器(的接口)被选举成DR,并且DR具有非抢占性。


7. OSPF区域

7.1 OSPF域

OSPF域(Domain):一系列使用相同策略的连续OSPF网络设备所构成的网络。

OSPF路由器在同一个区域(Area)内网络中泛洪LSA。为了确保每台路由器都拥有对网络拓扑的一致认知,LSDB需要在区域内进行同步。


区域的分配和多区域互联原则

区域的分类:区域可以分为骨干区域与非骨干区域。骨干区域即Area0,除Area0以外其他区域都称为非骨干区域。

多区域互联原则:基于防止区域间环路的考虑,非骨干区域与非骨干区域不能直接相连,所有非骨干区域必须与骨干区域相连。


7.2 单区域

image-20220908145911425

如果OSPF域仅有一个区域,随着网络规模越来越大,OSPF路由器的数量越来越多,这将导致诸多问题:

  1. LSDB越来越庞大,同时导致OSPF路由表规模增加。路由器资源消耗多,设备性能下降,影响数据转发。
  2. 基于庞大的LSDB进行路由计算变得困难。
  3. 当网络拓扑变更时,LSA全域泛洪和全网SPF重计算带来巨大负担。

7.3 多区域

image-20220908145939854

OSPF引入区域(Area)的概念,将一个OSPF域划分成多个区域,可以使OSPF支撑更大规模组网。

  1. OSPF多区域的设计减小了LSA泛洪的范围,有效的把拓扑变化的影响控制在区域内,达到网络优化的目的。
  2. 在区域边界可以做路由汇总,减小了路由表规模。
  3. 多区域提高了网络扩展性,有利于组建大规模的网络。
posted @ 2023-09-18 09:40  YinJayChen  阅读(308)  评论(1编辑  收藏  举报