DR和BDR

MA网络中的问题

在OSPF章节中最后一块就是关于DR和BDR的选举和作用,我们在之前已经说过了,在OSPF中会有一个MA网络,可能是NBMA,或者是BMA,也就是广播多路访问网络,对于MA网络中会存在一些问题,我们来看看存在的问题。

  • N ×(N - 1)/ 2 个邻接关系,管理复杂。
  • 重复的LSA泛洪,造成资源浪费。

MA网络中一般来说是两个路由器,或者是两个三层交换机都可以。

假如这里有两个三层交换机, 在这里是做了一个直连,所以一台链路上就只有两台设备,相当于是一个点对点的连接。

但是有的时候可能中间会接入一个二层的交换机,然后下方还有路由器,这个时候4台设备都连接在一个二层的交换机上,它们处于同一个网络中,此时这四台三层设备都可以互相去建立邻居关系。

建立邻居关系的话有可能我们还可以去互相传播路由信息,此时就会有N ×(N - 1)/ 2 个邻接关系,它的管理会变得非常的复杂。

我们可以看到图中,就相当于这个逻辑拓扑了,我的RTA要和RTC、RTD、RTB建立邻居关系和邻接关系,这个时候就要去传播我们相应的Hello报文和相应的LSA的报文,这里就是传播LSU报文,当然还要去传播DD报文、LSR报文等。这个时候就会造成重复的泛洪,以及资源的浪费

DR与BDR的作用

我们如何去节省这个资源呢?

  • 减少邻接关系。
  • 降低OSPF协议流量。

我们在这里可以选举出一个DR,这个DR就相当于一个组长。

我的其他路由器,相对于RTB、RTC和RTD来说,加入他们都是非DR,而RTA作为一个DR。

那么此时这三个路由器就跟我们的RTA去建立邻接关系,需要什么消息从RTA这里拿,我有什么路由消息也会统一去通报给RTA,RTA作为一个收集者去收集网段中的路由信息然后再统一分发给各个路由器

这样就能减少邻接关系,也能降低OSPF的协议流量。

这里有一个思考题就是关于DR的单点故障怎么解决?

因为我们发现DR是一个很重要的设备,所以我们不会只单单去选举出一个DR,我们还会有一个BDR。

这里就是作为一个DR的备份,如果DR Down了之后,BDR就会补上DR的工作来保证我们数据是可持续性传输的。

DR与BDR选举

DR和BDR是怎么选举的?

选举规则:DR/BDR的选举是基于接口的。

  • 接口的DR优先级越大越优先。
  • 接口的DR优先级相等时,Router ID越大越优先。

首先,它的选举规则是基于接口的,与其说它是基于接口的,不如说它是基于网段的

假如说我在RTB上再来一个RTE,此时我在这里要选举多少个DR?

我在这里是要选举两个的,每个网段都需要有一个DR。

对于10.1.1.0网段,也要选举出一个DR,另外对于RTE和RTB这个网段,我们肯定还有一个网段。

假如是一个以太网,或者是一个帧中继的网络,总之,只要是MA网络的话,我们就要去选举一个DR,如果是PPP网络,就不用去选举一个DR了。

因为PPP网络和P2MP网络都是不用去选举DR的。

按照我们这种情况,假如说现在都是以太网的话,我们是要去选举出两个DR的,所以就说明DR的选举是基于接口的。

接口的DR优先级越大越优先,当接口的优先级相等的时候,我们会去选举Router-id越大者越优先

这个是前提规则,但是我们来看一下实际的情况,我们可以看到对于4台设备,RTA【DR】它的优先级是100,RTC【BDR】的优先级是95,RTB优先级是0,RTD的优先级是200,结果我们发现这个时候RTA作为DR,RTD作为一个DRother,这里是为什么呢?

我们先来看一下关于优先级是0的一个注解,如果优先级是0的话,在这里是不参与选举的,这个时候优先级为0不参与选举,那么一定就是一个Dother。

另外一点我们可以看到,Router Priority最大的不一定是DR/BDR,为什么会这样呢?

我们前面讲到Router id的时候有提到一个原则:

即稳定大于一切。对于DR的选举也是一样的,即稳定大于一切。

假设我们去配置的时候我们首先配置的是RTA,此时RTA在这个网络中RTBRTCRTD都没有配置OSPF

现在在10网段中我的RTA只有一台路由器,此时RTA配置OSPF开始进行选举,RTA认为这个网段只有我自己,那么我就是老大,我就是DR,它会选举自己成为DR。

然后配置RTB,RTB不参与选举我们就会跳过,接着配置RTC和RTD,那么配置RTD的时候,优先级是200。

我此时的RTD能不能去抢占DR的位置呢?

在这里是不可以的,因为我们的RTA已经成为了DR,我们可以看到RTB和RTC去学习路由的时候,都是和RTA去学习的,我的邻接关系都已经建立好了。

如果说RTD开始去抢占我原有DR的位置,那么这个时候邻接关系又会改变,我从RTC和RTB的话需要去和RTD建立邻接关系,这个时候RTA就有可能是一个DRother的角色了。

这个时候我们的网络相应的路由就会改变,网络可能会出现震荡。

为了保证OSPF网络的稳定性的话。一旦RTA这个路由器成为了DR,我们其他的路由器这个时候去加入的时候,不论优先级是多少,我们都不会去抢占原有DR的地位。

这个就是稳定大于一切的原则。

假如我们现在就是要让RTD成为DR,我认为RTD的设备性能会更好一点,这里也是有办法的

  • 我们可以在这4台路由器上面同时去重启OSPF进程【reset ospf process】。
  • 或者将路由器重启也可以。

这个时候我们让它们重新去选举,那么RTD就可以成为DR了。

注意

我们建议需要哪一个路由器称为DR,那么就优先配置该路由器。

eg:我想让RTD优先成为DR,那么就最先配置RTD即可。

邻居与邻接关系

这个就是DR和BDR的选举,对于设备来说,现在我们刚选举出DR和BDR之后,我们可以看到:

网络类型

是否和邻居建立邻接关系

P2P

Broadcast

NBMA

DR与BDR、DRother建立邻接关系

BDR与DR、DRother建立邻接关系

DRother之间只建立邻居关系

P2MP

针对DR和BDR,我们先看到在Broadcast网络中:

  • DR和BDR以及DRother之间是建立了一个邻接关系的。
  • 同样的,BDR和其他的路由器也是建立了邻接关系的。

它们都是full状态,而DRother之间只是建立了一个邻居关系。

  • 所以DRother之间只有2-way状态

即我们去查看邻居状态的时候【display ospf peer】的时候,我们就会发现我的邻居关系为什么会卡在2-way,这里并不一定是我配置错误,因为DRother之间卡在了邻居状态是比较正常的,我们不用去理会

对于点对点和点到多点,它们都是可以直接去建立邻接关系,去学习我们相应的路由的。不会去选举DR和BDR。

注意:

我们之前有提到过224.0.0.5和224.0.0.6这两个组播报文:

  • 对于224.0.0.6只有DR和BDR才会去接收224.0.0.6的报文信息。
  • 224.0.0.5是OSPF的所有路由器都能够去接收.5的报文信息。
  • 224.0.0.6是只有DR和BDR才能够去接收的。我们的DRohter向外发送路由消息的时候,DROther的目的地址肯定是224.0.0.6。

这里只能被DR和BDR接收到。

  • 如果DR向外发送报文,去和DRohter、BDR也好,去共享我们的目的信息的时候,我的目的地址是224.0.0.5。

我是发送给我的广播多路访问网络区域中的这个网段的所有路由器的,所以我的组播地址是224.0.0.5。

这个就是它的两个组播地址的作用,224.0.0.5是作为所有的OSPF的路由器,224.0.0.6是只有DR和BDR才能够去接收的。

1.1.8 DR和BDR相关推荐

  1. ospfdr选举规则_ospf DR和BDR选举注意的问题

    ospf DR 和 BDR 选举注意的问题 在同一个进程的 ospf 中, DR (指定路由器)和 BDR (备份路由器)的选举首先依据接 口优先级(默认是 1 , 0 不参与选举) ,优先级大的为 ...

  2. OSPF——DR及BDR详解

    目录 一.DR简介: 二.BDR简介: 三.OSPF邻居关系规律及缺点: (1). 邻居关系数量变化规律: (2).邻居关系过多缺点: 四.为什么选举DR和BDR: 五.解决方法:引入DR.BDR 解 ...

  3. DR、BDR、SBR、ASBR等名词的解释和原理

    DR是指定路由器的意思是为了解决LSA在一个area里浪费很大的带宽而设计的 BDR是备份指定路由器,就是DR的一个备用.DR和BDR只在广播网和NBMA网络中有,而P2P和P2MP中是没有的. AB ...

  4. ospfdr选举规则_OSPF中DR和BDR的选举原则和注意事项

    DR和BDR的选举原则: 1.广播网络或NBMA 类型的网络需要选举指定路由器DR(Designated Router)和备份指定路由器BDR(Backup Designated Router): 2 ...

  5. OSPF——DR和BDR讲解

    目录 一.DR/BDR简介: 二.OSPF邻居关系存在规律及缺点: (1) 邻居关系数量变化规律: (2)邻居关系过多缺点: 三.为什么选举DR和BDR: 四. 解决方法:引入DR.BDR 解决过程: ...

  6. ospfdr选举规则_OSPF:DR、BDR选举算法

    1.初始化 路由器开启选举算法时,DR.BDR被初始化为0.0.0.0--表明当前网络中无DR.BDR 2.收集信息 通过邻居发送的Hello消息,获取选举DR.BDR所需的信息 3.创建List 此 ...

  7. RID、DR、BDR以及广播多路访问、非广播多路访问实验

    路由器ID(RID):是用来标识此路由器的IP地址.选举方法,1.以环回接口中最高IP地址来当RID:2.如果没有配置环回地址,以所有激活的物理接口中最高的IP地址为RID. 广播多路访问:广播网络允 ...

  8. OSPF的DR和BDR

    原理概述 原因 在OSPF的广播和NBMA类型网络中,如果有台路由器,若任意两台路由器之间都要建立邻接关系,则需要建立n*(n-1)/2个邻接关系,即当路由器很多时,则需要建立和维护的邻接关系就很多, ...

  9. DR、BDR 和 Master、Slave

    之前第一次学的时候一直搞不懂有了,还觉得多此一举,现在第二次再学一遍终于搞明白了,自己做了个表格记录下,方便以后学习 选举阶段 选举方法 目的 DR.BDR 建立邻居关系之后,且处于BMA网络中 比较 ...

最新文章

  1. 为什么Scrum模式适合软件开发?
  2. SpringBoot 文件上传、下载、设置大小
  3. 怎么调试EXC_BAD_ACCESS错误
  4. codeforces 几道题目
  5. Linux中一些 不是很常用的配置修改
  6. 精心梳理二十二道常见SSM面试题(带答案)
  7. SpringBatch 实列学习《一》
  8. 018-双因素理论|如何管理80后,90后
  9. angular路由守卫
  10. 计算机毕业设计Java优乐帮育儿系统(系统+程序+mysql数据库+Lw文档)
  11. android 省略号控件动起来,动画效果省略号
  12. 【华为OD机试真题 JAVA】竖直四子棋
  13. vue+Element-ui table按照字母排序
  14. 每日加瓦,终成栋房5-正则表达式
  15. Python读写文件(txt, csv等)小结
  16. 网易云音乐评论内容逆向分析
  17. 【Github】使用github
  18. mysql desc hcy.t1_mysql主从同步出错故障处理总结[数据库技术]
  19. JS回调函数——简单易懂有实例
  20. c语言 结构体指针做函数参数

热门文章

  1. 我国构建物联网基础安全标准体系的时间表确定
  2. PWM 调光的线性降压 LED 恒流驱动器 OC7130B
  3. PLC脆弱性评估及相应解决方案
  4. 最小的k个数 java_【Java】 剑指offer(40) 最小的k个数
  5. IT十年人生过客-十六-再见雍和宫
  6. java找不到文件_Java常见问题之javac Hello.java找不到文件的解决方法
  7. 网易企业邮箱搬家步骤
  8. 服务器网口修改为百兆,服务器千兆网口能否设置为百兆
  9. 快速上手MATLAB
  10. “{:02d}”.format(i)什么意思