HCIA项目实践---OSPF的知识和原理总结

9.5 OSPF

9.5.1 从哪些角度评判一个动态路由协议的好坏?

(1)选路佳(是否会出环)

OSPF 协议采用链路状态算法,通过收集网络拓扑信息来计算最短路径,从根本上避免了路由环路的产生。

(2)收敛(速度)快 [跟计时器有关];

        (A)快速适应拓扑变化

        (B)减少路由震荡(在网络状态频繁变化的情况下,好的协议应能避免路由的频繁抖动,保持路由的相对稳定,以免影响网络的正常运行和数据传输的稳定性。)

(3)占用资源多少;

(4) 其次是安全性。

        (A)防攻击能力

                OSPF 协议提供了基于区间标识符的身份认证机制

      (B)数据保密性

9.5.2 OSPF协议比RIP协议好在什么地方?

(1)OSPF在进行选路时,是以带宽作为评判标准,并且,因为是链路状态型协议,所以,计算出来的路径不会出现环路。从选路的维度来比较,则优于RIP。

(2)因为OSPF的计时器时间短于RIP,则其收敛速度快于RIP;

(3)从单个数据包的角度,OSPF需要传递拓扑信息,所以,其资源占用量远大于RIP,但是,从整体角度看,OSPF并没有像RIP那样高频的周期更新,并且,设计者设计了很多减少资源占用的措施,所以,整体上资源占用略优于RIP。

9.5.3 OSPF的中文名称是什么?

OSPF --- 开放式最短路径优先协议

9.5.4 从版本的角度对OSPF和RIP进行比较:

RIPV1,RIPV2 --- IPV4

RIPNG --- IPV6

OSPFV1(在实验室阶段夭折),OSPFV2(在市场上经常见到这个) --- IPV4

OSPFV3 --- IPV6

9.5.5 对RIPV2和OSPFV2进行比较:
(1)RIPV2和OSPFV2相同点:

说明:RIP和OSPF俩协议:V1都是有类别的路由协议;V2都是无类别的路由协议。

无类别路由协议最本质的原因是:传递路由条目中是否携带子网掩码决定的。携带子网掩码就是无类别,因为是多少子网掩码就带多少。

(A) OSPFV2和RIPV2一样,都是无类别的路由协议。支持VLSM(可变长子网掩码)、CIDR(无类别域间路由,更有效分配IP地址并降低路由表大小)。

(B)OSPFV2和RIPV2一样,都是组播发送信息。(组播没有减少链路资源,可节省硬件设备资源,减小一些算力)

RIPV2的组播地址是224.0.0.9 ;

OSPFV2的组播地址是224.0.0.5和224.0.0.6

(C). OSPFV2和RIPV2一样,都支持等开销负载均衡。

(这种策略都确保每个服务器都能接收到数量大致相同的请求,从而实现负载的均匀分布)

(2)RIPV2和OSPFV2不同点:

A RIPV2只能应用在小型网络环境中(对其影响最大的因素是占用资源);但是OSPFV2可以应用在中大型网络环境中(结构化部署这个特点让OSPF更加适用于大型网络)。

结构化部署:是一种遵循规则流程的系统性技术设施部署方法。涵盖规划、实施与验收优化阶段,包括需求与架构设计、资源准备、硬件软件安装配置、系统集成测试及最终验收交付等环节,旨在提升部署的效率、可靠性与可维护性,保障系统成功上线与稳定运行。

注意:
(收敛速度 也影响协议是应用在中小型企业还是大型企业;

选路不佳也会影响因为选路不佳会让网络延迟比较高但是,最影响的还是占用资源)

结构化部署的优点?
  1. 结构清晰:结构化部署的设计使得整个系统结构清晰明了,便于管理和维护。

  2. 灵活性强:系统能够灵活适应各种不同的需求,方便进行扩展和升级。

  3. 材料统一:采用高品质的标准材料,确保系统的稳定性和可靠性。

  4. 节约成本:通过统一的规划设计和部署,可以有效节约费用,同时提高系统的整体效能。

9.5.6 区域划分

(1)划分区域 的目的:

让区域内部传递拓扑信息,区域之间传递路由信息。

(2)区域边界路由器(英文名ABR设备)

它的特点:同时属于多个区域,一个接口对应一个区域,一个接口属于区域0。

ABR可以连接多个区域,区域之间也可以存在多个ABR设备。

(3)区域划分的要求

(A)区域之间必须存在ABR设备;

 (B) 区域划分必须按照星型拓扑结构划分;(中间一个区域,其他区域连接在中间这个区域)

为了方便区分这些区域,我们可以用区域ID对其进行编号

其他区域 可用区域ID对其进行编号,它由32位二进制构成

可用 点分十进制和十进制两种表示方法进行表示。

其他区域的区域ID从区域1,区域2一直往后面排

中间区域:又被称为骨干区域,中间区域的区域ID必须是区域0

9.5.7在hello包中:什么是RID以及它的特点

        (在计算机网络中,RID通常指的是Router ID,即路由器ID的缩写。在OSPF(开放式最短路径优先)协议中,RID是一个非常重要的概念,用于在OSPF区域内唯一标识一台运行OSPF的路由器。每个运行OSPF的路由器都会有一个唯一的RID,用于在OSPF网络中确定其身份,以便其他路由器可以通过这个标识与之进行通信和路由选择。

(1)RID的特点

(1)全网唯一;

(2)格式统一 (一般使用IP地址的格式来表示),由32位二进制构成。

IP地址作为RID太合适了!!!

(2)配置RID的方法?
(A)手工配置RID

由网络管理员手动配置。

(B)自动生成

首先选择设备的环回接口的IP地址,如果存在多个环回接口,则选择其中数值最大(一位一位的比,单纯数字大)的作为RID。如果没有环回接口,则选择物理接口的IP地址作为RID,如果物理接口存在多个,则选 择数值最大的作为RID。

(比如192.168.3.1和193.168.4.1选后者,一位一位地区比较)

9.5.8 OSPF的数据包
(A)hello包

hello包:周期发现,建立以及保活邻居关系

周期时间又称hello时间 (周期一般是10S左右)

失效时间又称死亡时间 (dead time) -时长为 4倍的hello时间

(B)DBD包 (数据库描述报文 )
  • 传递的都是LSA(链路状态通告)

LSDB (链路状态数据库) --- 用来存储LSA信息的数据库。

数据库描述报文里面携带的是本地数据库中LSA信息的摘要信息 (目录,菜单)。

举个栗子理解:例如去乡厨家宴干饭,老板不可能把每一样菜炒一边端上来,因为会浪费,这时候DBD包就相当于一个菜单让顾客选,我的菜单里有那些LSA(菜品)。

(C)LSR包链路状态请求报文)

基于DBD包请求本地未知的LSA

(顾客选好的菜品)

(D)LSU包链路状态更新报文)

--- 真正携带LSA的数据包

(老板炒菜)

(E)LSACK包 ——(链路状态确认报文

 确认包(端上来的菜)

OSPF**存在周期更新,30min一次,只能说明设计者不自信,因为这个协议数据量比较大,因此害怕仅通过LSACK不能保证可靠性,设置一个兜底机制,同步数据,保证收敛的完成。但是也不能设计的太快,否则占用资源又会变多。

9.5.9 OSPF的状态机

(类似于生活中的理解:A进入交友平台,这时是Down State状态,A在交友平台上发布了求偶启示,一直会盯着屏幕看是否有人回复消息, 这时就是Init State初始化状态,以组播的形式,B看到回复A,这时候就建立Two-Way的关系,成为朋友关系)。

Two-Way --- 标志着邻居关系的建立。

(条件匹配) --- 如果满足匹配要求,则将进入到下一个状态;如果匹配失败,则停留在邻居关系,仅使用hello包进行周期保活即可。(对本句话的理解就是如果对方答应,变为情侣关系,如果拒绝,则维持普通的朋友关系)。

Exstart 状态 ---主从关系选举 --- 通过使用未携带数据的DBD包来比较RID,以RID大的为主,为主可以优先获取LSA的摘要信息。(可以理解为变成情侣之后,谁在家中的地位比较高,谁听谁的。)

使用DBD包进行主从关系选举主要是为了表示已经超越了邻居关系。(可以理解为:情侣之间可以做的事情比普通朋友之间做的事情更加亲密,体现身份的不一样)

上面图片的第一个LSACK是错误的

FULL State ——标志着邻接关系的建立。 --- 邻接状态主要为了和邻居状态进行区分。只有邻接状态可以交换LSA信息。邻居状态仅能使用Hello包进行周期保活。(这个状态指的是情侣之间可以做更加亲密的行为和举动)

9.5.10 对OSPF状态机发生变化的过程的总结

down状态 --- 发送完hello包之后进入到下一个状态

Init(初始化)状态 ---- 收到对方的Hello包中存在本地的RID进入下一个状态

Two-way(双向通信)状态 --- 标志着邻居关系的建立

(条件匹配) --- 匹配成功,则进入到下一个状态。失败则停留在邻居关系,仅使用hello包进行周期保活。

Exstart(预启动)状态 --- 使用未携带数据的DBD包进行主从关系选举,为主的可以优先获取LSA信息

Exchange(准交换)状态 --- 使用携带数据的DBD包交换LSDB的摘要信息。

Loading(加载)状态 --- 使用LSR/LSU/LSACK来交换LSA信息。

FULL(转发)状态 --- 标志着邻接关系的建立。

9.5.11 OSPF的工作过程

(1)启动配置完成后,OSPF会向本地所有运行协议的接口以组播(224.0.0.5)形式发送hello包;hello包中携带本地RID以及已知邻居的RID。之后,将收集到的邻居关系记录在本地的一张表中 --- 邻居表。

(2)邻居表建立完成后,进行条件匹配,匹配失败,则停留在邻居关系,仅使用hello包进行保活;匹配成功,则开始建立邻接关系。首先,使用未携带数据的DBD包进行主从关系选举之后,使用携带数据的DBD包共享数据库的目录。之后,本地使用LSR/LSU/LSACK来获取未知的LSA信息。完成本地数据库的建立,生成数据库表 --- LSDB表。

(3)最后,基于本地的链路状态数据库生成有向图,以及最短路径树,之后,计算出到达未知网段的路由信息。生成的路由添加到路由表中。

(4)收敛完成后,依然使用hello包10S周期保活;30min一次周期更新。

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

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

相关文章

独立C++ asio库介绍

目录 概述环境准备主要特性基本组件和使用流程编译和使用应用场景概述 独立的 asio 库是一个跨平台的 C++ 库,用于网络和底层 I/O 编程。在 C++20 之前,asio 通常作为 Boost 库的一部分存在(即 Boost.Asio)。而现在,asio 已经可以独立使用,无需依赖 Boost 库,它提供了统…

EtherNetIP转ModbusTCP网关,给风电注入“超级赛亚人”能量

EtherNetIP转ModbusTCP网关,给风电注入“超级赛亚人”能量 在工业通信领域,常常需要将不同网络协议的设备和系统连接起来,以实现更高效的数据交互和系统集成。比如,把EtherNet/IP设备及其网络连接到ModbusTCP网络系统&#xff0c…

蓝桥杯备赛 Day14 素数环

信息学奥赛一本通(C版)在线评测系统 【题目描述】 输入正整数nn,把整数11,22,…,nn 组成一个环,使得相邻两个整数之和均为素数。 【输入】 输入正整数nn。 【输出】 输出任意一个满足条件的环。 【输入样例】 6 【输出样例】 …

React VS Vue

React 和 Vue 是目前最流行的两个前端框架,它们在设计理念、生态系统和开发体验上各有特点。以下是对 React 和 Vue 的全方位对比: 1. 核心设计理念 React 库而非框架:React 是一个用于构建 UI 的库,专注于视图层,其…

【ISO 14229-1:2023 UDS诊断全量测试用例清单系列:第十七节】

ISO 14229-1:2023 UDS诊断服务测试用例全解析(InputOutputControl_0x2F服务) 作者:车端域控测试工程师 更新日期:2025年02月14日 关键词:UDS协议、0x2F服务、输入输出控制、ISO 14229-1:2023、ECU测试 一、服务功能概…

关于防火墙运维面试题2

三、防火墙配置与管理类 21. 如何根据企业的网络安全策略,制定一套全面的防火墙规则集?需要考虑哪些关键因素? 以下是根据企业网络安全策略制定全面防火墙规则集的指导,以及需要考虑的关键因素: 一、关键因素 &…

【Linux】详谈 进程控制

目录 一、进程是什么 二、task_struct 三、查看进程 四、创建进程 4.1 fork函数的认识 4.2 2. fork函数的返回值 五、进程终止 5.1. 进程退出的场景 5.2. 进程常见的退出方法 5.2.1 从main返回 5.2.1.1 错误码 5.2.2 exit函数 5.2.3 _exit函数 5.2.4 缓冲区问题补…

Visonpro 检测是否有缺齿

一、效果展示 二、上面是原展开工具CogPolarUnwrapTool; 第二种方法: 用Blob 和 CogCopyRegionTool 三、 用预处理工具 加减常数,让图片变得更亮点 四、圆展开工具 五、模板匹配 六、代码分解 1.创建集合和文子显示工具 CogGraphicCollec…

RabbitMQ介绍以及基本使用

文章目录 一、什么是消息队列? 二、消息队列的作用(优点) 1、解耦 2、流量削峰 3、异步 4、顺序性 三、RabbitMQ基本结构 四、RabbitMQ队列模式 1、简单队列模式 2、工作队列模式 3、发布/订阅模式 4、路由模式 5、主题模式 6、…

服务器租用:虚拟化技术都包含哪些内容?

服务器作为常见的网络设备,有着物理服务器、云服务器和虚拟服务器等多种类型,其中虚拟服务器主要是依靠虚拟化技术将物理服务器划分成多个虚拟机,以此来充分利用服务器资源,那虚拟化技术都包含了哪些内容呢? 硬件虚拟化…

基于JAVA的幼儿园管理系统的设计与实现源码(springboot+vue+mysql)

项目简介 幼儿园管理系统实现了以下功能: 基于JAVA的幼儿园管理系统的设计与实现的主要使用者管理员可以管理系统基本信息;管理轮播图、系统简介、教师管理、课程管理、幼儿活动管理、餐饮管理、留言管理等功能;前台用户注册登录&#xff0…

sql难点

一、 假设你有一个查询&#xff0c;需要根据 id 是否为 null 来动态生成 SQL 条件&#xff1a; xml复制 <select id"getResources" resultType"Resource">SELECT * FROM resources<where><if test"id ! null">and id <!…

《Operating System Concepts》阅读笔记:p13-p16

《Operating System Concepts》学习第 4 天&#xff0c;p13-p16 总结&#xff0c;总计 4 页。 一、技术总结 1.storage 指令只能在 memory 上执行&#xff0c;所以要执行程序&#xff0c;那么就要加载到内存上。 2.primary storage primary storage 包含下面这些分类&…

最新国内 ChatGPT Plus/Pro 获取教程

最后更新版本&#xff1a;20250202 教程介绍&#xff1a; 本文将详细介绍如何快速获取一张虚拟信用卡&#xff0c;并通过该卡来获取ChatGPT Plus和ChatGPT Pro。 # 教程全程约15分钟开通ChatGPT Plus会员帐号前准备工作 一个尚未升级的ChatGPT帐号&#xff01;一张虚拟信用卡…

Python中使用Minio实现图像或视频文件的存储

目录 一、Minio的基本介绍1.Minio是什么2.Minio的优势 二、使用步骤1.启动Minio2.创建桶3.在Python中使用Minio3.1安装并导入minio包3.2创建mino_utils工具类 三、操作演示1.引入minio_utils工具类2.上传视频文件3.获取视频文件 总结 一、Minio的基本介绍 1.Minio是什么 Mini…

[JVM篇]虚拟机性能监控、故障处理工具

虚拟机性能监控、故障处理工具 基础故障处理工具 jps&#xff08;JVM Peocess Status Tool - 虚拟机进程状况工具&#xff09; jstat(JVM Statistics Monitoring Too - 虚拟机统计信息监视工具) jinfo( Configuration info for Java - Java配置信息工具) jmap(Memory Map for…

【数据结构】(9) 优先级队列(堆)

一、优先级队列 优先级队列不同于队列&#xff0c;队列是先进先出&#xff0c;优先级队列是优先级最高的先出。一般有两种操作&#xff1a;返回最高优先级对象&#xff0c;添加一个新对象。 二、堆 2.1、什么是堆 堆也是一种数据结构&#xff0c;是一棵完全二叉树&#xff0c…

快速设置 Docker 网络代理配置

Docker Client - 代理访问远程的 Docker Daemon 在 Client 端设置代理其实就是设置 Linux 系统的代理&#xff0c;从而让系统的命令行可以通过代理连接到外部的网络。一般只需要配置 HTTP_PROXY 与 HTTPS_PROXY 这两个即可。 临时生效&#xff1a; 在命令行中执行下面的命令&…

Vript-Hard——一个基于高分辨率和详细字幕的视频理解算法

一、概述 多模态学习的最新进展促进了对视频理解和生成模型的研究。随之而来的是&#xff0c;对高分辨率视频和详细说明所建立的高质量数据集的需求激增。然而&#xff0c;由于时间因素的影响&#xff0c;视频与文本的配对不像图像那样容易。准备视频和文本配对是一项困难得多…

记录阿里云CDN配置

网站接入CDN全流程&#xff0c;共4步&#xff01;-阿里云开发者社区 1、开通阿里云CDN服务 2、添加加速域名 3、验证域名归属权 4、域名添加CDN生成的CNAME解析 按照官网描述增加。细节点&#xff1a; 1. 域名和泛域名区别 2.开启https,要用nginx的证书&#xff0c;和项…