十分钟理解OSPF路由协议

news2024/11/25 15:27:43

十分钟理解OSPF路由协议

    • 1.RIP的缺陷
      • 以跳数为度量值
      • 最大跳数为15
      • 更新路由表采用全更新
      • 收敛速度慢
    • 2.RIP与OSPF比较
    • OSPF概述
      • 运行OSPF协议之前
      • 运行OSPF协议之后
    • 3.OSPF协议工作过程
      • 1.发现邻居
      • 2.建立邻接关系
      • 3.传递链路状态信息
      • 4.计算路由
    • 4.OSPF分区域管理

有RIP协议,为什么还需要OSPF?

1.RIP的缺陷

以跳数为度量值

在开始之前我们先回忆一下RIP协议,RIP协议是以跳数作为度量值,这是它的缺陷。如下图:RIP协议会从上面64Kbs到达10.2.0.0,但是很明显下面的带宽1Gbps,下面应该更快,但是因为下面有3跳,上面只有2跳。

在这里插入图片描述

最大跳数为15

在这里插入图片描述

更新路由表采用全更新

在这里插入图片描述

收敛速度慢

2.RIP与OSPF比较

摘要RIPOSPF
协议距离矢量路由协议链路状态路由协议
度量值基于跳数选择最优路径基于链路开销选择最优路径
路由表更新每隔30s向邻居广播自己的整个RIP路由表触发更新或每隔30分钟向邻接路由器发送链路状态信息的摘要,增量更新机制

OSPF概述

  • 工作于IP层之上,IP协议号为89

  • 组播地址224.0.0.5发送协议包

  • 基本思想:每个路由器将其已知的链路状态信息告诉邻居,收敛以后,网络上每个路由器全网的链路状态相同的认识。然后,每台路由器根据了解到的全网链路状态,独立计算路由。

如下图:R1和R2之间运行了OSPF

在这里插入图片描述

运行OSPF协议之前

  1. 对于R1来说,R1知道自己有两个直连接口,分别是:GE/0/1,10.0.0.0/24,开销是1G。GE/0/0,20.0.0.0/24,开销是1G。R1最初也只知道这么多信息。
  2. 对于R2来说也是一样的,R2知道自己有两个直连接口网段分别是:GE/0/1,30.0.0.0/24,开销是1G。GE/0/0,20.0.0.0/24,开销是1G,R2最初也只知道这么多信息。

运行OSPF协议之后

R1和R2会相互交流,交流方式是R1会问R2我知道的链路信息是GE/0/1-10.0.0.0/24和GE/0/0-20.0.0.0/24,你对哪个感兴趣?

R2查看自己的链路信息,20和30段我已经有了,但是我不知道10段,我想知道10段的信息,于是R1就把10段完整的信息发给了R2。这样R2就会学到10段的链路信息。同样的R1对R2说我想知道30段完整的信息,于是R2就把10段的信息发给了R1,这样R1就会学到30段的链路信息。

最终的结果就是:R1就会知道在这个网络中还有一个路由器R2,并且这个网络中有3个网段分别是10,20,30,30段直连在R2上面。同样R2也会知道全网信息。

3.OSPF协议工作过程

1.发现邻居

  • 通过组播发送hello包
  • 所有邻居都可能跟自己交换链路状态信息

在这里插入图片描述

相互发送hello包,hello包中有他们建立邻居所需的必要参数,相互收到hello包确认参数符合之后,那他们会相互认定对方是自己的邻居。并且把自己的邻居信息存到自己的邻居表。那邻居有什么作用呢?正如我们上面所说的第二点所有邻居都可能跟自己交换链路状态信息。那为什么是可能?接着往下看

2.建立邻接关系

  • 只有建立邻接关系的邻居路由器才会交换链路状态信息
  • 不是跟所有邻居都建立邻接关系
  • 在网络中选举DR和BDR,网络内所有路由器只与DR和BDR建立邻接关系
  • 广播型网络中会选DR和B DR,PPP网络中不会选举DR和BDR

为什么要选DR和BDR?

如下左图,5台设备两两交换链路信息,需要交换10次。这种效率太低。

如下右图中我们可以选举一个组长,只需要将所有的链路信息教给组长DR,组长进行汇总然后下发汇总后的路由表即可。一个组长单点故障,我们再选一个副组长BDR,组长挂了副组长来顶替,这样就更可靠。目的是啥?**“只与DR和BDR建立邻接关系”**尽可能的减少邻接关系的数量,说白了就是交换的次数,从而提高了交换链路状态信息的效率。

在这里插入图片描述

第四点:广播型网络中会选DR和B DR,PPP网络中不会选举DR和BDR

我们普通的网络一般都是广播型的网络,如下图:R1和R2之间使用的串口相连,我确定了R1和R2之间的广播域只有两个接口,不会有第三个接口出现,所以这种点对点的网络是不需要DR和BDR 的。

在这里插入图片描述

3.传递链路状态信息

  • 每台设备都有一个LSDB(Link State Database,链路状态数据库

  • LSDB中每一条就是LSA(Link State Advertisement,链路状态公告):描述链路状态信息,例如网络中某台路由器的编号是什么,其直连的网段是什么,开销是多少等

在这里插入图片描述

如何交换链路状态信息?

  • 触发更新每隔30分钟更新一次。触发更新:如果网络发生变化,不需要等到30分钟周期,立刻向邻居发送信息。
  • 增量更新机制,只发邻居需要的LSA
  • 收敛以后,区域内所有路由器具有相同的LSDB。这个LSDB能体现全网的链路状态(该网络中有哪些路由器,各自编号是什么,每台路由器直连的网段是什么,开销是多少)

4.计算路由

如下图:刚开始所有路由器都只知道自己直连的信息,当他们通过交换信息收敛之后,所有路由器上的LSDB都是相同的,所有的路由器都知道全网的信息,相当于上帝视角。

在这里插入图片描述

4.OSPF分区域管理

在这里插入图片描述

为什么要分区域管理?

因为OSPF在收敛的时候,每个路由器的LSDB都是相同的,并且这个LSDB可以体现出全网的状态 。当全网中路由器的数量增多,链路增多,每台设备需要维护的LSDB数量就非常多,会占用设备大量的内存,并且在收敛时占用大量的带宽资源,所以在这种情况下采用了分区域管理。

  • 区域内的路由器只需要学到区域内的路由信息,即同一个区域内路由器才会建立邻居关系,交换LSA。收敛后同一个区域内所有设备具有相同的LSDB,这个LSDB反映了本区域内的链路状态,再计算区域内的路由;

  • 区域边界路由器同时具备所在多个区域的路由信息,不同区域之间,由区域边界路由器ABR直接转发路由

  • 每个区域有一个ID,ID是32位二进制,可以表示为一个十进制数,也可以表示为点分十进制形式。例如:区域0等价于区域0.0.0.0;区域1等价于区域0.0.0.1。

  • 骨干区域——区域0

  • 所有非骨干区域间通信都要通过骨干区域0转发

  • 如果网络中有不同的ospf区域,肯定有个区域是区域0.

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

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

相关文章

Spring学习(三):MVC

一、什么是MVC MVC(Model-View-Controller)是一种软件设计模式,用于组织和管理应用程序的代码结构。它将应用程序分为三个主要部分,即模型(Model)、视图(View)和控制器(…

WPS 换行后缩进、加粗等自定义样式的清除

在使用WPS的Word编辑文字时,经常会出现换行后,自动缩进这种格式,需要清除这种样式,可以按照下图来操作:

无锡矽杰微电子----XC8P9520MCU之项目开发

上篇文章说了开发环境和烧录环境的配置以及安装,那么接下来就需要开发项目了。 Demo文件资料-无锡矽杰微电子有限公司 (xjmcu.com) 这里贴上矽杰微官网的资料下载专区,包括不同芯片的DEMO和上文所说的工具。 既然是项目开发,那么芯片的数据手…

SaaS架构C/S检验科LIS系统源码: 检验申请、标本编号、联机采集

适用于医院检验科实际需要的LIS管理系统, 实现检验业务全流程的计算机管理。从检验申请、标本编号、联机采集、中文报告单的生成与打印、质控图的绘制和数据的检索与备份。通过将所有仪器自身提供的端口与科室LIS系统中的工作站点连接,实现与医院HIS系统的对接。 通过门诊医生和…

无涯教程-JavaScript - MDETERM函数

描述 MDETERM函数返回数组的矩阵行列式。 语法 MDETERM (array)争论 Argument描述Required/OptionalArrayA numeric array with an equal number of rows and columns.Required Notes 数组可以作为单元格范围给出,如A1:C3;作为数组常量,如{1,2,3; 4,5,6; 7,8,9}&#xff1…

工业物联网大数据解决方案:排水设备远程监控和大数据统计系统

一、项目背景 给排水系统,作为城市的基础设施建设,是居民生产生活的必要保障。由于给排水系统通常站点零散分布,运维管理涉及的区域广泛,水位、流量、机泵运行等运行参数的测报,目前采取人工测量的,上令下…

如何评价低代码平台在企业复杂应用场景中的适用性?

随着编程语言的不断迭代、抽象、简化和整合,低代码技术正不断精进,形成更为简单清晰的图形化界面与高级语言结合的开发模式。在数字化转型方案的实施过程中,低代码开发广泛适用于各种应用场景,能够减少繁琐的重复性代码编写工作&a…

Docker安装与卸载

Docker安装与卸载 安装 yum install -y yum-utils \device-mapper-persistent-data \lvm2 --skip-broken更新本地镜像源 打开终端或 SSH 连接到 Rocky Linux 的服务器。 进入 /etc/yum.repos.d/ 目录,该目录包含 Rocky Linux 的 yum 配置文件。 cd /etc/yum.repo…

二维码智慧门牌管理系统:提升城市管理效率与便捷性

文章目录 前言一、二维码智慧门牌管理系统的基本原理二、二维码智慧门牌管理系统的开发解决方案三、二维码智慧门牌管理系统的优势 前言 随着科技的不断发展,城市管理模式也在不断升级与优化。其中,二维码智慧门牌管理系统的出现,为城市管理…

电脑提示找不到msvcr120.dll无法继续执行代码,哪个修复方法更简单

电脑报错“找不到msvcr120.dll无法继续执行代码”。我相信,对于许多使用电脑的朋友来说,这个问题并不陌生。我们在使用电脑的过程中,可能会遇到各种各样的问题,其中就包括了找不到msvcr120.dll这个文件的问题。那么,这…

SF506DS-ASEMI超快恢复二极管SF506DS

编辑:ll SF506DS-ASEMI超快恢复二极管SF506DS 型号:SF506DS 品牌:ASEMI 封装:TO-252 特性:贴片、快恢复二极管 正向电流:5A 反向耐压:600V 恢复时间:35ns 引脚数量&#xf…

ICS TRIPLEX T8403调节器模块产品特点

ICS TRIPLEX T8403 是一款调节器模块,通常用于工业自动化和控制系统中,主要用于监测和控制过程变量以确保系统的稳定性和性能。以下是该产品的一些主要特点: 高精度调节: T8403 调节器模块通常具有高精度的控制功能,可…

网络安全(黑客技术)学习笔记

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高; 二、则是发展相对成熟…

CDH大数据平台集群部署

文章目录 1. 资源准备2. 部署 Mariadb 数据库3. 安装CM服务4. 安装数据节点5. 登录CM系统 1. 资源准备 准备好CDH安装包资源,官方网站下载需要账号,如果没有账号可以去网上到处搜搜。主要涉及到的资源有: cloudera-manager-servercloudera-m…

IEEE模板中没有.bib相关内容怎么添加?

为了加深个人对该问题的记忆,特在此进行记录。 下图是IEEE某期刊提供的期刊模板,该模板来自于IEEE-Template Selector 从图中并没有看到bib文件,而在main.tex中也并没有相关引导,只是提到: 那如何添加呢?…

深度学习——所需知识二

深度学习——所需知识二 文章目录 前言一、微积分1.1. 导数和微分1.2. 偏导数1.3. 梯度1.4. 链式法则 二、自动微分2.1. 简单例子2.2. 非标量变量的反向传播2.3. 分离计算2.4. python控制流的梯度计算 三、概率3.1. 基本概率论3.1.1. 概率论公理3.1.2. 随机变量 3.2. 处理多个随…

关于mysql已有主从环境得主从重配置

恢复主从环境 1:Situation(背景)2:Task(任务)3:Action(行动)主库(备份)1:锁表2:效验是否锁表3:查看主库状态并记录4&#…

工作相关----《配置bond》

进入到/etc/sysconfig/network-scripts,按照要求配置主备关系 vim ifcfg-bond0,编写主要内容如下: /*mode1 表示主备份策略,miimon100 系统每100毫秒监测一次链路连接状态, 如果有一条线路不通就转入另一条线路*/ BOND…

抖音seo矩阵系统源码开发技术

抖音seo矩阵系统源码开发技术要求十分严格。首先,需要熟练掌握Python、Java等编程语言,具有扎实的算法基础。在此基础上,还需要具备深度学习、神经网络等相关技能,能够实现精准推荐和内容分析等功能。 其次,抖音seo矩…

剑指offer(C++)-JZ20:表示数值的字符串(算法-模拟)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 请实现一个函数用来判断字符串str是否表示数值(包括科学计数法的数字,小数和整数&…