二、OSPF协议基础

基于SPF算法(Dijkstra算法)的链路状态路由协议OSPF(Open Shortest Path First,开放式最短路径优先)

目录

1.RIP在大型网络中部署所面临的问题

2.Router ID

3.OSPF的报文

4.OSPF邻居建立过程

5.OSPF报文的确认机制:

6.DD报文中的MTU

7.DR与BDR的作用

9.邻接和邻居关系

10.几种常见的广域网和局域网

11.网络类型

12.ospf链路网络类型

13.OSPF 度量方式

14.OSPF静默接口

15.LSDB同步原则

16.LSA的种类

17.LSA头部 

18.LSDB同步原则


1.RIP在大型网络中部署所面临的问题

2.Router ID

用于在自治系统中唯一标识一台运行OSPF的路由器,每台运行OSPF的路由器都有一个Router ID。

优先级:

1.手动配置router id

2.最大的环回接口IP地址

3.最大的物理接口IP地址

:①实际上:1.手动配置router-id 2.全局router-id(设备第一个配置了IP且为UP的接口ip地址)

        ②更改router id之后必须重启ospf进程使其生效

dis ospf id                        //查看路由器全局router id

>reset ospf process          //重启ospf进程

3.OSPF的报文

五种:hello,DD,LSR,LSU,LSACK。

①hello报文:用于发现,建立,维护邻居关系。两部分:ospf通用头部+hello报文

ospf通用头部:

hello报文:

②DD报文:链路状态信息摘要报文

③LSR报文:用于向邻居请求自身缺少的LSA

④LSU报文:用于发送完整的LSA信息

当路由器收到LSR报文时,会根据报文中的LSA三要素在自身LSDB中查找相关的LSA,并将其封装在LSU报文中回复。

⑤LSACK报文:用于确认收到的LSA,使用LSA头部信息做确认回复。

4.OSPF邻居建立过程

 

5.OSPF报文的确认机制:

①hello报文,10s发一次,40s没收到则老化

②DD报文,使用seq来做隐式确认

③LSR报文,使用LSU报文作为确认回复

④LSU报文,使用LSACK报文作为确认回复

6.DD报文中的MTU

1、DD报文中的第一个字段就是发出该报文接口的MTU值,正常来说,OSPF邻居建立是需要要求两端接口的MTU值保持一致,否则无法建立。

但是华为默认不检查MTU值。因此一般会显示为0(接口缺省MTU为1500)(思科是默认检查MTU值的)

2、可以人为使用命令开启MTU检测

[AR1-GigabitEthernet0/0/0]ospf mtu-enable    //在接口开启OSPF的MTU检测

[AR1-GigabitEthernet0/0/0]mtu 1600

注:

   ①当接口开启MTU检测后,DD报文中MTU值将正常显示

   ②两端接口只有一端开启MTU检测,其不生效,也不会影响邻居建立

   ③必须两端同时开启MTU检测后才会生效

mtu影响的是DD报文阶段

①如果slave路由器接口的MTU>master路由器的MTU,那么从路由器将卡在exchange,主路由器将卡在exstart

②如果slave路由器接口的MTU<master路由器的MTU,那么从路由器将卡在exstart,主路由器将卡在exstart

7.DR与BDR的作用

8.DR与BDR选举规则

9.邻接和邻居关系

邻居(2-way):不需传递路由

邻接(Full):需要传递路由

注:DR和任何角色都要建立邻接关系,BDR和任何角色都要建立邻接关系,Drother和 Drother之间只需建立2way即可。

10.几种常见的广域网和局域网

广域网:

①X.25网络

②帧中继网络(FR)(前身是X.25)

③ATM(异步传输模式)网络

④SONET(同步光纤网络)网络

局域网:

①以太网(Ethernet)

②令牌环网(Token Ring

 

11.网络类型

根据数据链路层使用的协议来进行划分的网络类型

①MA网络——多点接入网络,分为两种【介质使用同轴电缆、网线、光纤】

        1)BMA——广播型多点接入网络(broadcast)

                以太网协议

        2)NBMA——非广播型多点接入网络

                帧中继、ATM

②P2P网络——点到点网络【介质使用串口线】

        PPP(点到点协议)——常用

        HDLC(高级链路控制协议)

③P2MP网络——点到多点网络

没有任何一种链路层协议被认为是P2MP,不是一种默认的网络类型,一般是人为手动配置的(多用于DSVPN技术)

12.ospf链路网络类型

①broadcast广播

当链路层协议为以太网时,OSPF网络类型会默认为广播型

1)hello时间10s,dead时间40s

2)需要选举DR、BDR 、Drother

3)组播更新地址:224.0.0.5和224.0.0.6

        所有设备使用单播形式交互DD报文以及LSR报文

        所有设备固定使用224.0.0.5交互hello报文

4)LSU和LSACK比较特别:

        a. 当drother发送LSU报文时通过224.0.0.6组播地址发送给DR和BDR;然后DR通过224.0.0.5发送给其他drother和BDR;

            drother收到更新后通过224.0.0.6回复ACK;BDR收到更新后通过224.0.0.5回复ACK。

        b.当DR发送LSU报文时通过224.0.0.5组播地址发送给BDR和drother;

          drother收到更新后通过224.0.0.6回复ACK;BDR收到更新后通过224.0.0.5回复ACK。

c.当BDR发送LSU报文时通过224.0.0.5组播地址发送给DR和drother;

  DR收到更新后通过224.0.0.5回复ACK;drother收到更新后通过224.0.0.6回复ACK。

 总结:DR和BDR收包和发包都在224.0.0.5,DRother在224.0.0.5上收包,在224.0.0.6上发包

②点到点

当链路层协议为PPP/HDLC时,OSPF网络类型会默认为点到点

应用场景:加快ospf网络收敛速度

1)hello时间10s,dead时间40s。

2)不需要选举DR BDR Drother

3)直接建立邻接关系

4)所有报文通过224.0.0.5更新

int g0/0/0

ospf network-type p2p //更改ospf链路类型

 

③非广播多路访问NBMA(了解即可)

当链路层协议为帧中继FR/ATM时,OSPF网络类型会默认为NBMA

如果使用NBMA网络类型组网,那么需要在OSPF进程中,使用peer x.x.x.x命令来指定对端邻居。

1)hello时间 30s,dead时间120s

2)需要选举DR BDR DRother

3)DR和任何角色都要建立邻接关系,BDR和任何角色都要建立邻接关系,Drother和Drother之间建立2-WAY即可

4)所有报文通过单播形式更新

④点到多点(了解即可)

没有任何一种链路层协议被认为是P2MP,P2MP一般是人为手动配置的(多用于DSVPN技术)

1)hello 30s,dead 120S

2)不需要选举DR BDR Drother

3)直接建立邻接关系

4)hello报文是通过224.0.0.5组播更新,其他4种报文通过单播更新。

:两端网络类型要保持一致才能传递路由,虽然邻居可以建立,状态为full,LSA也能发送,但算法算不出来

13.OSPF 度量方式

①带宽参考值/实际接口带宽(参考值100M)

        当计算出的cost 大于0且小于2时,    cost=1

                               大于等于2且小于3时,cost=2

                               以此类推

②修改接口cost的方法:

        1)直接通过命令手动修改   [AR1-GigabitEthernet0/0/0]ospf cost 100

        2)修改带宽参考值         [AR1-ospf-1]bandwidth-reference 10000

计算一条路由条目的cost值:数据传递方向路由器出接口cost累加

14.OSPF静默接口

当路由器的接口被配置为静默接口后,该接口可以生成LSA,但是不再收发和处理OSPF报文

①黑名单模式配置:

ospf 1

silent-interface GigabitEthernet 0/0/0

②白名单模式配置:

ospf 1

silent-interface all

undo silent-interface GigabitEthernet 0/0/0

15.LSDB同步原则

OSPF支持的更新方式:

触发更新: 路由新增或消失

周期更新: 因为每一条LSA都有一个老化时间,当老花时间达到3600s时,将删除LSA。

        所以每条LSA会在1800s做一次周期更新。

:一条LSA周期更新只在始发路由器进行更新,再发布给其他路由器

16.LSA的种类

17.LSA头部 

18.LSDB同步原则

注:DD摘要的动作:①查看自己没有的LSA并请求 ②对比同一条LSA的新旧

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

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

相关文章

SAP的生成式AI

这是一篇openSAP中关于SAP生成式AI课程的笔记,原地址https://open.sap.com/courses/genai1/ 文章目录 Unit 1: Approaches to artificial intelligence概念三种范式监督学习非监督学习强化学习Unit 2: Introduction to generative AI生成式AI基础模型关系基础模型有哪些能力呢…

怎么通过isinstance(Obj,Class)验证?【isinstance】

最近有这样一个项目&#xff0c;这个项目可以用一个成熟的项目的构造树&#xff0c;读取树&#xff0c;再检索的过程&#xff0c;现在有新的需求&#xff0c;另一个逻辑构造同样节点结构的树&#xff0c;pickle序列化保存&#xff0c;再使用原来项目的读取、检索函数&#xff0…

一年期免费SSL证书申请方法

免费SSL证书的申请已经成为当今互联网安全实践中的重要环节&#xff0c;它不仅有助于保护网站数据传输的隐私性和完整性&#xff0c;还能提升用户信任度&#xff0c;因为现代浏览器会明确标识出未使用HTTPS&#xff08;即未部署SSL证书&#xff09;的网站为“不安全”。以下是一…

互联网安全面临的全新挑战

前言 当前移动互联网安全形势严峻&#xff0c;移动智能终端漏洞居高不下、修复缓慢&#xff0c;移动互联网恶意程序持续增长&#xff0c;同时影响个人和企业安全。与此同时&#xff0c;根据政策形势移动互联网安全监管重心从事前向事中事后转移&#xff0c;需加强网络安全态势感…

玩转必应bing国内广告投放,正确的攻略方式!

搜索引擎广告作为精准触达潜在客户的重要渠道&#xff0c;一直是众多企业营销策略中的关键一环&#xff0c;在国内市场&#xff0c;虽然百度占据主导地位&#xff0c;但必应Bing凭借其独特的用户群体、高质量的搜索体验以及与微软生态的紧密集成&#xff0c;为广告主提供了不可…

相关运算及实现

本文介绍相关运算及实现。 相关运算在相关检测及数字锁相放大中经常用到&#xff0c;其与卷积运算又有一定的联系&#xff0c;本文简要介绍其基本运算及与卷积运算的联系&#xff0c;并给出实现。 1.定义 这里以长度为N的离散时间序列x(n),y(n)为例&#xff0c;相关运算定义如…

nvm管理多个node版本,快速来回切换node版本

前言 文章基于 windows环境 使用nvm安装多版本nodejs。 最近公司有的项目比较老需要降低node版本才能运行&#xff0c;由于来回进行卸载不同版本的node比较麻烦&#xff1b;所以需要使用node工程多版本管理&#xff0c;后面自己就简单捯饬了一下nvm来管理node&#xff0c;顺便…

VTK----VTK数据结构详解2(计算机篇)

在VTK中&#xff0c;属性数据和点都用数据数组&#xff08;data arrays&#xff09;表示。某些属性数据&#xff08;例如法线、张量&#xff09;需要具有与其定义一致的元组&#xff08;在计算机编程中&#xff0c;元组&#xff08;tuple&#xff09;用来表示存储多种数据类型的…

vue下载文件时显示进度条

1.单个下载&#xff08;开始是导出按钮 下载显示进度条&#xff09; html <el-button click.stop"exportReport(scope.row, scope.index)" v-if"!scope.row.schedule" icon"el-icon-download"size"small" type"text"styl…

cocos-lua资源管理

本文介绍cocos-lua项目的资源管理和工作流&#xff0c;适用人群包括初学者和有经验开发者&#xff0c;故读者可根据自己的需要有选择性的查阅自己需要的内容 一.简单案例解析 下文通过介绍一个简单demo&#xff0c;介绍合图和资源目录结构 1.1 运行效果 1.2 ccs结构 1.3 目录…

【Python-Spark(大规模数据)】

Python-Spark&#xff08;大规模数据&#xff09; ■ Spark■ PySparl编程模型■ 基础准备■ 数据输入■ RDD的map成员方法的使用■ RDD的flatMap成员方法的使用■ RDD的reduceByKey成员方法的使用■ 单词计数统计■ RDD的filter成员方法的使用■ RDD的distinct成员方法的使用■…

LANGUAGE-DRIVEN SEMANTIC SEGMENTATION

环境不易满足&#xff0c;不建议复现

详解js中的console对象

对于前端开发而言&#xff0c;console对象大家肯定都很熟悉&#xff0c;最常用的 console.log() 是开发调试必用的 但是对于console对象的其他方法&#xff0c;相对而言使用的就比较少了。下面详细介绍一下&#xff1a; 谷歌浏览器输出console对象&#xff1a; 值得一提的是不…

JAVA MQTT 发布主题请求,订阅主题接收,订阅主题回复,发布主题再接收回复,三步走

先看效果 一、准备工作 1.官网下载emqx压缩包放到自己的盘符下&#xff0c;不要带中文路径 下载 EMQX 2.在路径的bin中&#xff0c;cmd&#xff0c;启动emqx服务 emqx start 3.访问服务&#xff0c;能打开就证明启动成功&#xff0c;登录的话官网默认的密码账号&#xff08;…

【C#】Stopwatch计时器

使用Stopwatch检查C#中代码块的执行时间&#xff0c;比如歌曲&#xff0c;图片的下载时间问题 首先&#xff0c;我们可看到Stopwatch 类内部的函数。 根据需求&#xff0c;我们具体可使用到 Start() 开始计时&#xff0c;Stop() 停止计时等 //创建 Stopwatch 实例 Stopwatch …

STM32单片机C语言模块化编程实战:LED控制详解与示例

一、开发环境 硬件&#xff1a;正点原子探索者 V3 STM32F407 开发板 单片机&#xff1a;STM32F407ZGT6 Keil版本&#xff1a;5.32 STM32CubeMX版本&#xff1a;6.9.2 STM32Cube MCU Packges版本&#xff1a;STM32F4 V1.27.1 之前介绍了很多关于点灯的方法&#xff0c;比如…

ARM DMIPS算力说明

ARM DMIPS算力说明 ARM算力参考官网地址 https://en.wikipedia.org/wiki/List_of_ARM_processors Product familyARM architectureProcessorFeatureCache (I / D), MMUTypical MIPS MHzReferenceARM1ARMv1ARM1First implementationNoneARM2ARMv2ARM2ARMv2 added the MUL (mu…

【SSM进阶学习系列丨整合篇】Spring+SpringMVC+MyBatis 框架配置详解

文章目录 一、环境准备1.1、创建数据库和表1.2、导入框架依赖的jar包1.3、修改Maven的编译版本1.4、完善Maven目录1.5、编写项目需要的包1.6、编写实体、Mapper、Service 二、配置MyBatis环境2.1、配置mybatis的主配置文件2.2、编写映射文件2.3、测试环境是否正确 三、配置Spri…

el-table 三角形提示

<template><div><el-table :data"tableData" style"width: 100%"><el-table-column prop"ddd" label"日期2" width"150" /><el-table-column prop"ddd" label"日期2" width…

[C++][算法基础]分组背包问题(动态规划)

有 &#x1d441; 组物品和一个容量是 &#x1d449; 的背包。 每组物品有若干个&#xff0c;同一组内的物品最多只能选一个。 每件物品的体积是 &#xff0c;价值是 &#xff0c;其中 &#x1d456; 是组号&#xff0c;&#x1d457; 是组内编号。 求解将哪些物品装入背包&a…