学习笔记——动态路由——OSPF(OSPF协议的工作原理)

news2024/10/7 12:23:54

八、OSPF协议的工作原理

1、原理概要

(1)相邻路由器之间周期性发送HELLO报文,以便建立和维护邻居关系

(2)建立邻居关系后,给邻居路由器发送数据库描述报文(DBD),也就是将自己链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器

(3)收到数据库描述报文后,若发现自己缺少其中某些链路状态项目,则会发送链路状态请求报文(LSR)。

(4)对方收到链路状态请求报文后,则会将其所缺少的链路状态项目的详细信息封装在链路状态更新报文(LSU)中发送回去

(5)收到链路状态更新报文后,将这些信息添加到自己的链路状态数据库中,随后发回链路状态确认报文(LSACK)

(1)HELLO协议

1)发现邻居并监测与邻居链路的状态

OSPF路由器定期向所有邻居路由器发送HELLO报文。报文中包含了最近一段时间内发送过HELLO报文的邻居路由器。

发送周期为10秒,40秒未收到来自邻居路由器的 HELLO 报文,则认为该邻居路由器不可达

如果路由器在邻居发送的HELLO报文中发现了自己的标识符,就表明这两个邻居路由器之间建立了双向通信链路。每个路由器都会建立一张邻居表。

HELLO协议在不同类型网络上的工作过程不同:

点到点网络、虚拟链路:路由器向对方发送 HELLO 报文;

点到多点网络:路由器仅向能直接通信的邻居发送 HELLO 报文;

广播网络:每台路由器定期组播发送 HELLO 报文;

NBMA网络:需要配置后 HELLO 协议才能正常工作。

2)DR/BDR 的选举

广播网络或 NBMA 网络上每台路由器都清楚网络的链路状态。

若每台路由器都发送网络的链路状态,会有很多重复发送。OSPF 协议规定:

在广播网络或NBMA网络上选举一个指定路由器(DR)和一个备份指定路由器(BDR);

只有DR能代表该网络发送网络的链路状态;

DR发生故障后,BDR就变成DR。

当路由器连接到广播网络或NBMA网络上的接口启动时:(下左图)

检查该网络上是否已存在DR和BDR:存在就接受;否则,比较自己和其他路由器的优先级:

- 优先级最高的路由器成为DR;优先级次高的路由器成为BDR。优先级:0-255,默认值是1

- 若两个路由器的优先级相同,标识符(ID)更大的胜出。

DR和BDR一旦选定,即使OSPF区域内新增优先级更高的路由器,DR和BDR也不重新选举。(下右图)

(2)链路状态数据库同步

OSPF邻接路由器之间的链路状态数据库同步大体上可分为三步:

双方交换各自的链路状态数据库摘要

向对方请求链路状态并更新自己的数据库

若有链路的状态发生变化,更新自己的数据库,并通知对方

1)交换摘要

OSPF路由器定期与邻接路由器交换链路状态数据库摘要:

数据库摘要用一组数据库描述报文描述;

每个数据库描述报文包含一组链路状态通告(LSA)的首部;

LSA首部有其唯一标识及新旧标记。

2)同步信息

发送和接收数据库描述报文的过程称为“数据库交换过程”,其中:

若路由器发现邻接路由器某些链路的状态更新,或自己没有,就向对方发送链路状态请求报文;

邻接路由器发送链路状态更新报文进行响应。

两个邻接路由器的链路状态数据库达同步后,称它们之间建立了完全邻接关系(fully adjacent)。

3)新情况下的同步

路由器监测其所有链路,若有链路的状态发生改变:

更新自己的链路状态数据库;

向邻接路由器发送链路状态更新报文,通知变化的链路状态。

4)洪泛机制

OSPF协议定义了一种可靠的洪泛(reliable flooding)机制,用于在 OSPF 路由域中快速扩散链路状态的变化。

可靠是指收到链路状态更新报文后要发送确认,收到重复的更新报文无需再次转发,但要发送一次确认。

路由器接收到链路状态更新报文后,逐个检查其中的 LSA:

若LSA的状态更新,或本地不存在,就用LSA更新自己的数据库;

同时,在某些接口上继续发送该LSA,称为“洪泛” 。

注意:路由器并不是直接发送接收的链路状态更新报文,而是发送根据自己的数据库生成的链路状态更新报文。

通过各路由器洪泛法发送封装有自己LSA的LSU报文,各路由器的LSDB最终达到一致。

使用OSPF的各路由器基于LSDB进行最短路径优先SPF计算,构建出各种到达其他各路由器的最短路径,即构建各自的路由表。


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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1873706.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【PHP项目实战训练】——后台-RBAC权限管理原理

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

JVM原理(一):JVM运行时数据区域的分析

1. 程序计数器 程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 作用 在Java虛拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,它是程序控制流的指示…

React Native 开发常见问题及注意事项

本文只是使用时积累的一些经验 开发环境 1、Android Studio 依赖项下载慢 如果发现依赖下载非常慢,动不动十几KB的 参考:加速 Android Studio 依赖项下载 也可以切换数据源 修改 android/build.gradle中的jcenter()和google() repositories {// goo…

UI设计必备的6个网站,赶紧收藏!

6个UI设计必备网站,找素材、找灵感一步到位,赶紧收藏起来吧! 1、菜鸟图库 UI图片素材-UI图片模板免费下载 - 菜鸟图库 菜鸟图库提供了超多免费设计素材,在这里你可以找到平面、UI、电商等设计类素材,还有大量的高清背…

【2024年更新】ZF关注度指数大合集(包含8类数据)

数据简介:共包含8类数据 1. 地方ZF环境关注度指数:2007-2021 2. 地方ZF数字关注度指数:1999-2021 3. 省级ZF数字关注度指数:2001-2024 4. 农业新质生产力ZF关注度指数:2001-2024 5. 新质生产力ZF关注度指数&#…

蚂蚁- 定存

一:收益变动&&收益重算 1.1: 场景组合 1: 澳门元个人活期,日终余额大于0,当日首次、本周本月非首次系统结息,结息后FCDEPCORE_ASYN_CMD_JOB捞起进行收益计算 【depc_account_revenue_detail】收益日 > 【depc_accoun…

JAVA:Word2Vec的使用

1、简介 Word2Vec是 Google 在 2013 年年中开源的一款将词表征为实数值向量的高效工具, 其利用深度学习的思想,可以通过训练,把对文本内容的处理简化为 K 维向量空间中的向量运算,而向量空间上的相似度可以用来表示文本语义上的相似度。 Wo…

计算机网络之体系结构

上节内容:数据通信原理 1.计算机网络体系结构 体系结构: 研究系统中各组成成分及其关系的一门学科。 计算机网络体系结构: 定义和描述一组用于计算机及其通信设施之间互连的标准和规范的集合,遵循这组规范可以很方便地实现计算机设备之间的通信。 相互…

uni-app 自定义支付密码键盘

1.新建最贱 payKeyboard .vue <template><view class"page-total" v-show"isShow"><view class"key-list"><view class"list" v-for"(item,index) in keyList" :class"{special:item.keyCode190…

零知识证明基础:数字签名

1、绪论 数字签名(Digital Signature)&#xff0c;也称电子签名&#xff0c;是指附加在某一电子文档中的一组特定的符号或代码。它利用密码技术对该电子文档进行关信息提取并进行认证形成&#xff0c;用于标识签发者的身份以及签发者对电子文档的认可&#xff0c;并能被接收者…

统信系统实战(2):安装redis

在系统中未发现redis,需要安装。 网上资料上说需要去redis官网下载,但是发现不管是github账号还是自己注册的sso账号,都各种提示有问题。 继续找资料,发现可以直接通过下载链接下载,指令如下: wget http://download.redis.io/releases/redis-6.0.6.tar.gz 成功下载,…

Charles网络抓包工具安装和web抓包(一)

目录 概述 抓包工具对比 安装 下载 web抓包配置 按键说明 前言-与正文无关 ​ 生活远不止眼前的苦劳与奔波&#xff0c;它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界中&#xff0c;我们往往容易陷入工作的漩涡&#xff0c;忘记了停下脚步&#…

国外问卷调查,让你远离酷暑的赚钱新方式

大家好&#xff0c;我是汇舟问卷&#xff0c;一家专注于国外问卷调查领域的互联网企业。随着夏季的到来&#xff0c;高温酷暑无疑给许多人的日常工作带来了极大的不便与挑战。 在这样的季节里&#xff0c;我们都在寻求一种既能实现经济收益又能避免高温炙烤的工作模式。 在此…

GPU设置

GPU降温测试 前提 同一个训练程序&#xff0c;使用8块GPU&#xff0c;GPU使用率基本全程>90%&#xff0c;GPU为1080 Ti 限制最高功率效果 不限制最高功率(默认最高功率250W)&#xff1a;最高温度85&#xff0c;大多时间在75-85之间 将最高功率限制为150W&#xff1a;最高…

优维“统一开放平台”:开放、开发、集成、客制化

基于丰富完善的产品体系&#xff0c;优维重磅推出了统一开放平台。这款由优维自主设计与研发&#xff0c;集数据开发、能力开放、能力集成、客制化为一体的统一开放平台&#xff0c;具备应用市场、应用开发、连接能力、采控平台、API集市、开发者工具等功能模块&#xff0c;可为…

后端加前端Echarts画图示例全流程(折线图,饼图,柱状图)

本文将带领读者通过一个完整的Echarts画图示例项目&#xff0c;演示如何结合后端技术&#xff08;使用Spring Boot框架&#xff09;和前端技术&#xff08;使用Vue.js或React框架&#xff09;来实现数据可视化。我们将实现折线图、饼图和柱状图三种常见的数据展示方式&#xff…

昇思25天学习打卡营第10天|FCN图像语义分割

一、简介&#xff1a; 本篇博客是昇思大模型打卡营应用实践部分的第一次分享&#xff0c;主题是计算机视觉&#xff08;CV&#xff09;领域的FCN图像语义分割&#xff0c;接下来几天还会陆续分享其他CV领域的知识&#xff08;doge&#xff09;。 全卷积网络&#xff08;Fully…

css做旋转星球可举一反三

<!DOCTYPE html> <html lang"en"><head> <meta charset"UTF-8" /> <title>旋转的星球</title> <style type"text/css">.box {/*position: relative;*/position: absolute;width: 139px;height: 139p…

Total Uninstall安装及卸载软件

Total Uninstall 的独特之处在于通过其安装的软件可以完整监控到新增或更改的注册表、文件、服务&#xff0c;可一键卸载。但常规的“360软件管家”无法做到以上内容。 借助该机制可用来无限刷新软件试用许可。 1.Total Uninstall 安装第三方软件 点击图中的“安装”&#xf…

vue2中vuedraggable设置部分元素不可拖拽,不可移动

文章目录 前言1、版本2、vuedraggable页面的具体使用3.核心(1) move官网说明(2) 注意点&#xff1a;(3) onDraggableMove方法 总结 前言 需求&#xff1a;左边是复选框&#xff0c;右边是选中的数据&#xff0c;编辑传入的数据不可拖拽&#xff0c;不可移动&#xff08;其实还…