返回顶部
首页 > 资讯 > 精选 >如何理解DR和BDR
  • 694
分享到

如何理解DR和BDR

2023-06-03 19:06:41 694人浏览 八月长安
摘要

如何理解DR和BDR,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。       为减小多路访问网络中OSPF流量,OSPF会选择一个指定

如何理解DR和BDR,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

       为减小多路访问网络中OSPF流量,OSPF会选择一个指定路由器(DR)和一个备份指定路由器(BDR)。当多路访问网络发生变化时,DR负责更新其他所有OSPF路由器。BDR会监控DR 的状态,并在当前DR发生故障时接替其角色。DR和BDR是由同一网段中所有的路由器根据路由器优先级、Router ID通过HELLO报文选举出来的,只有优先级大于0的路由器才具有选取资格。进行DR/BDR选举时每台路由器将自己选出的DR写入Hello报文中,发给网段上的每台运行OSPF协议的路由器。当处于同一网段的两台路由器同时宣布自己是DR时,路由器优先级高者胜出。如果优先级相等,则Router ID大者胜出。

DR的选举

       1.记录当前网络中的DR和BDR值,以便之后作比较用。

       2.按照如下方式计算BDR。只有那些在列表中的没有宣称自己为DR的路由器才能参加BDR选举。若多于一台路由器宣称自己为BDR(例如,当前在它们的Hello包中它们将自己列为BDR,但不是DR),则拥有最高路由器优先级的路由器被选举成为BDR。如果路由器的优先级相等,则拥有最高Router ID的路由器将当选;如果没有路由器宣称自己为BDR,则选举拥有最高路由器优先级的邻居路由器为BDR(同样不考虑那些宣称自己为DR的路由器),同样使用Router ID来打破平局。

       3.按照如下方法为此网络计算新的DR。若一或多个路由器宣称自己为DR(也就是说,当前在它们的Hello包中将它们自己列为DR),则拥有最高路由器优先级的路由器被宣告为DR。如果出现平局,拥有最高Router ID者胜出;如果没有路由器宣告自己为DR,则新选择出来的BDR成为DR。

       4.如果路由器X现在被选为新的DR或者BDR,或者它不再成为DR或者BDR,重复步骤2和3,然后跳到步骤5。例如,如果路由器X现在是DR,当重复第2步时路由器X将不能再参加BDR的选举。此外,这也会保证没有任何路由器会同时宣告自己为BDR和DR。

       5.作为选举的结果,路由器本身可能现在成为了DR或者BDR。路由器的接口状态将被依此而设置。如果路由器现在成为了BDR,则端口的新状态为“备份”。否则,接口的新状态成为DR Other。

       6.如果所连接的网络是NBMA网络而路由器本身正好被选举为DR或者BDR,它必须开始发送hello包给那些无权成为DR的邻居。这是通过调用每个拥有路由器优先级0的邻居消息“Start”来实现的。

       7.如果以上计算导致了DR或者BDR身份的改变,与此端口关联的邻接关系需要进行改变。某些邻接关系需要建立,而其他一些将被打破。为了实现此动作,为所有状态至少为“2-Way”的邻居调用消息“AdjOK?”。这将会导致它们重新检查邻接状态。

看完上述内容,你们掌握如何理解DR和BDR的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: 如何理解DR和BDR

本文链接: https://lsjlt.com/news/235395.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何理解DR和BDR
    如何理解DR和BDR,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。       为减小多路访问网络中OSPF流量,OSPF会选择一个指定...
    99+
    2023-06-03
  • 如何理解nodejs和npm
    这篇文章主要介绍“如何理解nodejs和npm”,在日常操作中,相信很多人在如何理解nodejs和npm问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何理解nodejs和n...
    99+
    2024-04-02
  • 如何理解iptables和firewalld
    这期内容当中小编将会给大家带来有关如何理解iptables和firewalld,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于...
    99+
    2023-06-05
  • 如何理解haslaylout和bfc解析
    这篇文章主要讲解了“如何理解haslaylout和bfc解析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解haslaylout和bfc解析”吧!一、haslaylout 和 bfc ...
    99+
    2023-06-08
  • 如何理解html、css和JavaScript
    这篇“如何理解html、css和JavaScript”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看...
    99+
    2024-04-02
  • 如何理解final、finally和finalize
    本篇内容主要讲解“如何理解final、finally和finalize”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解final、finally和finalize”吧!1. final、f...
    99+
    2023-06-16
  • JSF和MVC该如何理解
    这篇文章将为大家详细讲解有关JSF和MVC该如何理解,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。JSF是一种标准的 J2EE 表示层的技术,其主旨是为了使 Java 开发人员能够快速的开发...
    99+
    2023-06-17
  • 如何理解ABAP和Java的destination和JNDI
    如何理解ABAP和Java的destination和JNDI,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Netweaver里使用事务码SM59创建Destination:...
    99+
    2023-06-04
  • 如何理解和应用MySQL MVCC 原理
    如何理解和应用MySQL MVCC 原理引言:MySQL是一种常用的关系型数据库管理系统,它采用了MVCC(Multi-Version Concurrency Control)原理来保证数据的一致性和并发性。MVCC是一种事务并发控制方法,...
    99+
    2023-10-22
  • 如何理解lpad和rpad函数
    这篇文章将为大家详细讲解有关如何理解lpad和rpad函数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 一、Lpad函数lpa...
    99+
    2024-04-02
  • 如何理解MySQL中binlog和innodb_flush_log_at_trx_commit
    如何理解MySQL中binlog和innodb_flush_log_at_trx_commit ,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希...
    99+
    2024-04-02
  • 如何理解TCP中keepalive和time_wait
    这篇文章给大家介绍如何理解TCP中keepalive和time_wait,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。TCP是一个有状态通讯协议,所谓的有状态是指通信过程中通信的双方各自维护连接的状态。一、TCP ke...
    99+
    2023-06-05
  • 如何理解OGG的initial load和
    这篇文章将为大家详细讲解有关如何理解OGG的initial load和,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Initial load可分为几种:除去第一种方法,其余均需要initia...
    99+
    2023-06-06
  • 如何理解ADD和DROP分区
    如何理解ADD和DROP分区,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。add和drop分区语法:ALTER TABLE t_pe_r  &n...
    99+
    2023-06-06
  • 如何理解Java注解和注解解析器
    这篇文章主要讲解了“如何理解Java注解和注解解析器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解Java注解和注解解析器”吧!什么是元数据(met...
    99+
    2024-04-02
  • 如何理解Oracle逻辑读和物理读
    本篇文章为大家展示了如何理解Oracle逻辑读和物理读,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.物理读(physical read)物理读即是把数据从磁盘读...
    99+
    2024-04-02
  • 如何理解TCP协议、算法和原理
    如何理解TCP协议、算法和原理,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。首先,我们需要知道,我们程序的数据首先会打到TCP的Segment中,然后TCP的S...
    99+
    2023-06-03
  • 如何理解MYSQL-GroupCommit 和 2pc提交
    这篇文章将为大家详细讲解有关如何理解MYSQL-GroupCommit 和 2pc提交,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 组提交(gr...
    99+
    2024-04-02
  • 如何理解MYSQL中的type:index 和 Extra:Using
    今天就跟大家聊聊有关如何理解MYSQL中的type:index 和 Extra:Using,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。考虑下面执行...
    99+
    2024-04-02
  • Spring(一):IOC如何推导和理解
    目录IOC的推导1.1、模拟一个正常查询信息的业务流程:1.2、多个种类的查询1.3、优化查询方式1.4、IOC本质IOC的推导 1.1、模拟一个正常查询信息的业务流程: ①mapp...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作