学习笔记——动态路由——OSPF(OSPF状态机、DR\BDR选举)

七、OSPF状态机、DR\BDR选举

1、OSPF的8种状态机

 

   

OSPF在邻居与邻接建立的过程中会经过多个状态机的变化,状态机的出现不仅能让我们了解OSPF建立过程,也能在OSPF出现故障的时候通过状态机的状态来粗略判断问题的所在。

(1)邻居建立状态变化过程

1、Down状态:这是邻居的初始状态表示没有从邻居收到任何信息

启用了OSPF功能的链路默认成为down状态,并开始向外发送Hello报文(基于网络类型的不同发送方式也会不同,广播类型Hello为组播发送)报文发出之后,从Down状态转Init状态。

在NBMA网络上,此状态下仍然可以向静态配置的邻居发送Hello报文,发送间隔为Poll Interval,通常和Router Dead Interval间隔相同。

注意:OSPF的每条链路都会经历状态机,每条OSPF链路的状态机互不影响

启用OSPF的链路从Down状态开始,向外发送Hello报文后转为Init状态。

2、Init状态:在此状态下,路由器已经从邻居收到了Hello报文。

在Init状态下的链路,如果接收到传来的Hello包中含有自己的router-id,则表示对端已经发现了自己,此时链路就能成为2-way状态了。

3、Attempt状态(NBMA)

该状态仅发生在NBMA网络中,表明该链路在发送Hello报文之后,到达了失效时间(dead interval)仍然没有收到对端回复Hello报文。如果Router Dead Interval间隔内未收到邻居的Hello报文,则转为Down状态。

处于该状态下的链路仍然会向对端发送Hello报文。

4、2-way状态:在此状态下,双向通信已经建立,但是没有与邻居建立邻接关系。这是建立邻接关系以前的最高级状态。

其它链路类型在成为2-way之后,发送第一个空DD报文后,进入Exstart状态。(因为在其它网络类型中,DD报文通过单播发送,无法确认谁先发送DD报文,同时为了保障DD的可靠传递,需要进行选举主机设备)

如果链路为P2P类型,则直接进入Exchange状态进行交互DD报文(因为p2p类型链路所有报文交互都是组播,同时p2p是点到点网络,完全不需要担心LSA传递过程中丢失)

在邻居建立过程中,为了提高OSPF网络收敛的速度。在广播网络中建立邻居时,需要同时进行DR与BDR的选举。(2-way建立之前或之后就已经选举出DR与BDR了)

选举DR与BDR主要为了解决同网络中,报文信息相互发送造成网络中流量过大的问题。通过选举DR与BDR实现流量的统一整理与发送,减少网络中的OSPF报文过多,同时提高收敛的速度。

(2)邻接建立状态变化过程

ExStart:这是形成邻接关系的第一个步骤,邻居状态变成此状态以后,路由器开始向邻居发送DD报文,主从关系是在此状态下形成的。初始DD序列号是在此状态下决定的,在此状态下发送的DD报文不包含链路状态描述。

Exchange:此状态下路由器相互发送包含链路状态信息摘要的DD报文描述本地LSDB的内容

Loading:相互发送LS Request报文请求LSA,发送LS Update通告LSA

Full:两台路由器的LSDB已经同步

(3)OSPF的3种稳定状态

什么是稳定的状态?即链路状态会长时间所处的状态机。

在OSPF状态机中,有三个稳定的状态机状态:Down、2-way、Full

Down:启用OSPF功能的链路默认所处状态机 或者 邻居失效后的状态。

2-way:在交互了Hello报文建立邻居之后所处的状态,DR-Other与DR-Other之间所处的状态。

Full:在邻接建立成功之后的状态,也是OSPF的最终状态。

2、DR、BDR

(1)DR、BDR、DR-Other介绍

每一个含有至少两个路由器的广播型网络和NBMA网络都有一个DR和BDR。

DR和BDR可以减少路由器之间的邻接关系的数量,从而减少链路状态信息以及路由信息的交换次数,这样可以节省带宽,降低对路由器处理能力的压力。同时保证网络的稳定性和可靠性。

DR负责收集本地链路信息并分发给其他邻居路由器,BDR备份DR的信息,并在DR故障时自动接替其角色,从而维护网络拓扑信息的更新和分发。

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

1)DR(Designated Router,指定路由器):一个广播性、多接入网络中的指定路由器(DR)。OSPF协议启动后开始选举而来。

DR是某个网段中的概念,是针对路由器的接口而言的。某台路由器在一个接口上可能是DR,在另一个接口上有可能是BDR,或者是DR Other。

DR并不一定就是路由器优先级最高的路由器接口;同理,BDR也并不一定就是路由器优先级次高的路由器接口。

DR特点和作用

1)在每个多播或非广播多点接入(NBMA)网络中,选举一个DR。BMA网络中必须有DR,可以没有BDR。

2)DR负责与其他路由器交换Hello报文和链路状态信息(LSA)。

3)DR汇总其他路由器的链路状态信息,并将其反映在区域内的LSDB中。

4)DR与所有人建立FULL邻接关系。

5)DR能够减少链路状态信息更新的洪泛,提高网络的收敛速度。

6)DR和BDR之间建立邻居关系,DR负责向BDR和其他路由器发送链路状态信息

2)BDR(Backup Designated Router,备份指定路由器):是作为DR的备份存在的路由器。BDR接收并转发来自其他路由器的链路状态信息。是由OSPF启动后选举而来。

BDR特点和作用

1)在每个多播或非广播多点接入(NBMA)网络中,选举一个BDR。

2)BDR的功能与DR类似,但仅在DR不可用时才接替其角色。

3)BDR负责与其他路由器交换Hello报文和链路状态信息(LSA)。

4)BDR仅向其他路由器发送链路状态信息,不向其他BDR发送信息。

5)BDR能够快速接管DR的角色,并确保网络中的DR角色不会出现间断。

6)BDR只向其他路由器发送链路状态信息,不向其他BDR发送信息。

7)DR和BDR之间维护特殊的邻居关系,确保在DR发生故障时BDR可以接替其角色。

8)BDR会与所有人建立FULL的邻接关系

3)非指定/备份指定路由器(Designated Router Other,DR-Other)没有成为DR与BDR设备的其它OSPF设备称为DR-Other设备。

DR-Other特点和作用

1)DR-Other之间只会建立2-WAY邻居关系。

2)DRother之间不会建立全毗邻的OSPF邻接关系,双方停滞在2-way状态。

(2)DR、BDR、DR-Other的关系

    

每条MA/NBMA链路中,都会独立选举DR、BDR。BDR会与所有人建立FULL的邻接关系

BDR是DR备份,DR失效之后,BDR成为DR,同时也将重新选举新的BDR。

DR与BDR没有抢占性,当网络中出现新的更优先的路由器,也不会成为抢占现有网络中的DR身份。

接口优先级为0将不参与选举,如果此时为DR/BDR将立马失效,成为DRother。

区别:

1)DR和BDR选举发生在2-WAY状态。作用:保证一个广播域中减少无用的泛洪的OSPF报文的流量。

2)主从关系选举发生在exstart状态。作用:保证数据库同步时的可靠及有序。

 主题

描述

DR(Designated Router)

被选举为网络中某一段子网的代表,负贵与其他路由器交换链路状态信息并汇总网络拓扑信息。

BDR(Backup Designated Router)

作为DR的备份,接收并转发链路状态信息,当DR不可用时,BDR将接替其角色并成为新的DR。

DR和BDR的选举过程

通过Hello报文交换和优先级比较来选举DR和BDR,优先级高的路由器将成为DR,第二高的则成为BDR。

DR和BDR的特点

DR和BDR之间建立邻居关系,DR负责向BDR和其他路由器发送链路状态信息,BDR只向其他路由器发送链路状态信息。

3、DR和BDR选举

(1)为什么选举DR和BDR

在一个共享的广播网络多台路由器建立OSPF,有可能会产生大量的OSPF邻居。在这些大量的OSPF邻居发送大量的OSPF报文,造成其他路由器接收到大量的OSPF重复报文,浪费带宽资源和设备CPU计算资源。

通过DR和BDR的特点和选举过程,OSPF网络能够减少链路状态信息的洪泛和更新开销,提高网络的性能和可靠性。

选举DR与BDR主要为了解决同网络中,报文信息相互发送造成网络中流量过大的问题。通过选举DR与BDR实现流量的统一整理与发送,减少网络中的OSPF报文过多,同时提高收敛的速度。

        

如上左图:当DR和BDR选举完成之后,R4将路由通告给R1和R2,然而R2作为BDR,此时他知道DR还在(不会去代替DR,去通告其他DRother),所以R2收到路由存放在本地之后不会通告出去,而是由BR通告给R3。此时减少了重复通告,优化设备性能。

(2)DR和BDR选举过程

DR/BDR选举过程的流程图:

在邻居建立过程中,为了提高OSPF网络收敛的速度。

在P2P网络及P2MP网络上,具有邻居关系的路由器之间会进一步建立邻接关系。

在广播网络中建立邻居时,需要同时进行DR与BDR的选举。(2-way建立之前或之后就已经选举出DR与BDR了)DR和BDR的选举过程是通过Hello报文的交换和优先级比较来实现的

在广播型及NBMA网络上,DR-Other路由器之间只能建立邻居关系不能建立邻接关系DR-Other路由器与DR/BDR路由器之间会建立邻接关系,DR与BDR之间也会建立邻接关系。

注意:

1、优选广播域接口优先级大的默认接口优先级为1

2、优先级相同比较router-id大的成为DR,次BDR、其它DRother。

3、在配置OSPF的时候,第一台配置之后的40秒内同一个广播域中如果没有遇到比自己更优先的设备自己将成为DR,往后的其它设备将是这个广播网络中的BDR与DRother。

所以在配置OSPF的时候,先配置实际DR的设备,其它再配置BDR、DRother设备,这样能有效保障初始的正常选举。

4、当然也能通过reset ospf process的方式将的身份有误的OSPF设备进程注销,从而进行重新选举,但在实际环境中谨慎使用。

(3)DR和BDR选举方法

1)自动选举DR和BDR   网段上Router ID最大的路由器将被选举为DR,第二大的将被选为BDR.

2)手动选举DR和BDR   (上右图)

在MA网络中,才会涉及DR和BDR的选举。DR是基于链路的,基于接口的,而不是基于路由器。

1)接口的DR优先级越大越优先,范围为0~255,数值越大,优先级越高默认为1

display ospf interface all    //查看接口优先级

ip ospf priority 2          //修改接口优先级

2)接口的DR如果优先级相同,则需要比较Router-ID,Router-ID越大越优先。

如果没有Router-ID则会以环回接口为Router-ID。

如果没有环回接口则会选择最大IP的物理接口为Router-ID。

3)如果路由器的优先级被人为修改为0,他将不参与DR和BDR的选举。DR没有有抢占性。

4)DR和BDR的选举过程是先选BDR再选DR

在邻居发现完成之后,路由器会根据网段类型进行DR选举。在广播和NBMA网络上,路由器会根据参与选举的每个接口的优先级进行DR选举。

在P2P或P2MP网络中完全不存在DR与BDR的概念,DR与BDR只适用于Broadcast网络或NBMA网络。不同网络类型中的DR与BDR的选举

网络类型

常见链路层协议

是否选举DR

是否和邻居建立邻接关系

Point-to-point

PPP链路;HDLC链路

Broadcast/BMA

以太网链路

DR与BDR、DRother建立邻接关系

DRother之间只建立邻居关

NBMA

帧中继链路

P2MP

需手工指定

4、DR\BDR选举实验

(1)选举过程示例

配置先后顺序不一致,如何保证按照优先级及RID的方式选举DR/BDR

1.最开始,所有设备都认为自己是DRother,[AR1,AR2,AR3,AR4]DRother的集合,此时如果DR及BDR为空,此时选举BDR。

2.此时AR4成为BDR[AR4]BDR的集合,[AR1,AR2,AR3]DRother.此时如果DR为空,从BDR选出一个DR.

3.此时AR4成为DR[AR4]DR的集合,[AR1,AR2,AR3]为DRother的集合,BDR为空。

4.[AR1,AR2,AR3]DRother的集合,此时如果BDR为空,此时选举BDR。

5.[AR3]成为BDR,[AR4]为DR,[AR1/AR2]为DRother,至此选举过程完成。

如果是不同的系统加入,此时DR的集合中选举DR,BDR的集合中选举BDR。=优先级/RID

Area 0.0.0.0 interface 192.168.1.4(GigabitEthernet0/0/0)'s neighbors

区域0                            G0/0/0[192.168.1.4]的邻居信息

Router ID:1.1.1.1           Address:192.168.1.1

[建立邻接关系的设备的RID]      [对端设备的接口Ip地址]

State:Full       Mode:Nbr is Slave Priority:1

[邻接是个从]     [接口的DR优先级][FULL]

DR:192.168.1.4         BDR:192.168.1.3           MTU:0

[DR的接口IP]             [BDR的接口IP]       [当前接口的MTU信息]

Dead timer due in 33 sec    [死亡时间33s]

Retrans timer interval:5    [重传时间5S]

(2)配置DR/BDR优先级(配置Router Priority)

[RTB]interface Ethernet 0/0

[RTB-Ethernet0/0]ospf dr-prlority 100

[RTB-Ethernet0/0]quit


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun    暗号:CSDN】

  • 29
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灵韵设计

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值