HCIP的学习(11)

OSPF的LSA详解

LSA头部信息

[r2]display ospf lsdb router 1.1.1.1----查看OSPF某一条LSA的详细信息,类型以及LS ID参数。

在这里插入图片描述

  • 链路状态老化时间
    • 指一条LSA的老化时间,即存在了多长时间。
    • 当一条LSA被始发路由器产生时,该参数值被设定为0之后,随着该LSA在网络中被洪泛,老化时间逐渐累加
    • 当一条LSA的老化时间为3600S时,则判断该条LSA失效,将被删除。(不是始发路由器的唯一删除方法)
    • LSA的老化时间一般应该小于1800S,因为OSPF存在周期链路刷新机制。周期链路刷新机制是只有始发路由器可以执行的,而沿途其余设备执行的是触发更新机制。
    • 在OSPF网络中,只有始发路由器可以修改或删除LSA信息
    • OSPF存在周期链路刷新机制(某一个信息到时间只刷新一个,并且只有始发路由器可以通告),rip是周期更新机制(到时间全部一起更新,包括本地和收到的)
    • 组步调计时器(思科启用):有LSA到1800s,等待240s,到时间后,老化时间在1800s-2040s的统一发送
  • 可选项:与之前Hello包内相同
  • 链路状态类型
    • 指的是本条LSA的类型属性。
  • 链路状态ID
    • 根据链路状态类型的不同,该参数的含义不同。
  • 通告路由器
    • 产生该条LSA的路由器的Router-ID。
  • 校验和
    • 除了验证LSA的完整性,还会参与到LSA的新旧关系对比。
  • 链路状态序列号
    • 代表有序性,每发送一条LSA,则序号加1。也是用于判断LSA新旧关系的一种。
    • 初始序列号:0x80000001 (数字8代表负数,7代表正数)
    • 截止序列号:0x7FFFFFFF (负 -->0x00000000 -->正)
    • 序列号由负数开始增长,其中数值越大越优。
    • OSPF序列号刷新方式
      • 当一条LSA序列号为0x7FFFFFFF时,始发路由器会将其老化时间设定为3600S,其他设备收到该LSA后,因为序列号最大,会无条件接受,此时又因为老化时间参数,会删除该条LSA。
      • 而此时始发路由器会重新发送序列号为0x80000001的全新LSA信息,实现序列号的刷新机制。

判断LSA的新旧关系

  • 拥有更高序列号的LSA被认为更新。
  • 如果序列号相同,则拥有较大校验和的LSA被认为更新。
  • 如果序列号与校验和均相同,则对比老化时间。
    • 如果某条LSA的老化时间为3600S,则无条件选择该条LSA。
    • 如果没有LSA老化时间为3600S,则对比两条LSA的老化时间差值,如果差值大于15min,则认为老化时间较小的为更新。如果差值小于15min,则两条LSA被认为相同。
链路类型LS ID通告者传播范围携带信息
Type-1(Router)通告者的RID区域内所有运行OSPF协议的路由器的RID设备所在的单区域本地接口直连拓扑信息
Type-2(Network)DR接口的IP地址每一个MA网络中DR所在的路由器的RID单区域对单个MA网络拓扑的补充信息
Type-3(summary)域间路由信息的网络地址ABR设备,在通过下一个ABR设备时会被修改为新的ABR设备的RIDABR设备相邻的单区域域间路由信息
Type-5(ase)域外路由信息的网络地址ASBR整个OSPF网络域外路由信息
Type-4(asbr)ASBR的RID与ASBR同区域的ABR设备,在通过下一个ABR设备时会被修改为新的ABR设备的RID除去ASBR所在区域的所有单区域ASBR的位置信息
Type-7(nssa)域外路由信息的网络地址ASBR,离开NSSA区域后会被转换为5类LSANSSA区域域外路由信息

Type-1(Router)

在这里插入图片描述

​ Tpye名称为Router即为一类LSA信息。一类LSA信息是所有设备都会发送的LSA,且每一个设备单区域只会发送一条LSA

路由器会为每个区域单独产生一条一类LSA,用以描述连接在该区域的接口参数信息

在这里插入图片描述

第一行是总数结构,之后是一组一组的

  • 标记位
    • V----代表发送该LSA的路由器是Vlink的一段端点。
    • E----代表发送该LSA的路由器是ASBR
    • B----代表发送该LSA的路由器是边界路由器。(不是特指ABR,ABR是必须连接骨干,边界路由器是连接多个区域即可)
  • 链路数量
    • 特指该LSA中Link的数量。
    • 每一个link均包含链路ID、链路数据、链路类型、度量值。路由器使用一条Link或者多条link来共同描述一个接口信息。
  • 链路类型---->链路ID与链路数据随着链路类型的改变而改变。(表单须背
    • 在这里插入图片描述

用于根据LSA信息画出具体拓扑图,然后根据拓扑图计算具体路由

Type-2(Network)

在这里插入图片描述

对于接入MA网络的OSPF设备而言,仅依靠一类LSA是无法正常补全网络拓扑结构,其中缺少两个信息,分别是该MA网络的掩码信息以及有多少个节点连接在这个MA网络。---->使用二类LSA进行补充。

二类LSA必须由DR设备产生

OSPF中,拓扑信息全部由一类以及二类LSA进行完善,且每个LSA仅在各自产生区域传递

Type-3(summary)

在这里插入图片描述

三类LSA的通告者都是该区域的ABR设备,且每一条路由信息使用一条独立的LSA进行描述

三类LSA中携带“网络地址”“网络掩码”“开销值”三个参数

三类LSA中的开销值等于该LSA通告者到达目的地的开销值。本地路由表中的路由项开销值等于三类LSA中的开销值加上通过一二类LSA计算出到达ABR设备的开销值之和。

当接收者收到一条三类LSA后,首先会根据本地的一二类LSA进行验算,验算是否可以到达这条三类LSA的通告者,如果可以正常到达,则接收该LSA并生成相应路由信息;否则丢弃该LSA信息

三类LSA在跨区域传递时,需要进行通告者的转换,实际上是重新编写了一条全新的LSA内容

Type-5(ase)

在这里插入图片描述

五类LSA主要传递域外路由信息,该LSA被ASBR产生,并且传播到整个OSPF网络(除了一些特殊区域)

在这里插入图片描述

  • 开销值

    • 五类LSA中的开销值并不等于ASBR到达目标网段的开销。原因在于外部路由的开销值算法与OSPF内部的开销值算法不同,该数值对于OSPF而言,没有意义。---->故,五类LSA在引入到OSPF网络时,会使用一个常数来标识LSA中的开销,该常数值一般称为种子度量值
    • 种子度量值默认为1,该参数可以在重发布过程中进行修改。(只能在始发路由器改)
    • [r4-ospf-1]import-route rip 1 cost 10 ----将种子度量值修改为10

  • E位---->度量值类型

    • Type-1

      • 如果E标记位为0。
      • 所有设备到达域外目标网段的开销值====本地到达发出这条LSA的ASBR的开销+种子度量值
    • Type-2

      • E标记位为1。默认值
      • 域内所有到达目标网段的开销值====种子度量值
    • 在重发布时可以进行修改

    • [r4-ospf-1]import-route rip 1 type 1 ----修改开销值类型

  • FA—转发地址

    • 可以把转发地址就理解为重定向信息

    • 当FA==0.0.0.0时,则到达该外部网段的流量会被发往引入该外部路由的ASBR。

    • 当FA不等于0.0.0.0时,则到达该外部网段的流量会被发往FA字段。

    • 在这里插入图片描述

    • 当同时满足如下四个条件时,FA字段可以被ASBR设置为其他参数数值。

      • 引入外部路由的ASBR在其连接外部网络的接口上激活了OSPF协议。
      • 该接口没有被配置为静默接口(ospf不接不发,RIP只接不发)。
      • 该接口的网络类型为Broadcast或NBMA
      • 该接口的IP地址属于OSPF协议配置的network命令范围内。
    • 外部路由标记(Tag,应用在路由策略技术上)

      • 该参数用于给OSPF域外路由信息打上标签,从而对路由信息进行分组。根据组别使用路由策略对不同组播进行不同操作。

      • 在华为路由器上,缺省时,所有路由信息标记为1

      • 在重发布时可以进行修改

        • [r4-ospf-1]import-route rip 1 tag 84512313

Type-4(asbr)

所有传递路由信息的LSA都需要进行验算过程,寻找该LSA的通告者。而5类LSA是全区域传递,对于不与ASBR处于相同区域的设备而言,无法通过1类和2类LSA完成验算过程,需要引入额外的LSA信息----Type-4 LSA

四类LSA仅在描述如何到达ASBR。---->实际上是一条到达ASBR的路由信息

四类LSA与三类LSA较为相似,但是不同,因为四类LSA通告的不是目标网段,而是ASBR的RID

在这里插入图片描述

Tos 0 metric(度量值):1 代表4类LSA的通告者到达ASBR的开销值(R3到R4)

路由撤销

  • 1类LSA撤销
    • 通过更新的方式进行撤销,即发送一条全新LSA,序列号+1,校验和不变,老化时间=0(新的LSA里面就不包含不需要的Link)
  • 2类LSA撤销
    • MA网络中还存在两个以上节点,此时DR发送序列号+1,老化时间=0的LSA进行更新。
    • MA网络中没有任何节点存活,此时DR发送序列号不变,老化时间=3600S的LSA清除全网信息。(发送给整个区域中没断的其他路由器)
  • 3类LSA撤销
    • 序列号不变,校验和不变,老化时间=3600S进行路由撤销(要比3次,下面原因)。
    • 因为三类LSA的数量在网络中占据大量信息,而如果采用序列号增加,则代表始发路由器重新构造了一条LSA信息,该方式会极大的消耗设备资源。而对原本LSA信息进行修改的方式,可以减少始发路由器的资源消耗。
  • 5/7类LSA撤销
    • 序列号不变,校验和不变,老化时间=3600S进行路由撤销。
  • 1、2类LSA撤销是更新,因为一个LSA包含很多信息,3/5/7类LSA撤销是老化时间为3600s,因为一个LSA只有一条路由信息

http://www.ppmy.cn/devtools/34350.html

相关文章

在 PHP使用正则表达式替换从 abc 到 xyz 的字符串

以下例子是删除从abc到xyz字符串 $fileContents 123abcdefghijkl4567mnopqrstuvwxyz890;$pattern "/abc(.*?)xyz/"; // 匹配从 acb 到 xyzecho preg_replace($pattern, , $fileContents);共14个元字符,要匹配原始字符,必须要转义 $ ---&g…

three.js 中 meshbasic.glsl 文件中的片源着色器的主函数解析

1. three.js 中 meshbasic.glsl 文件中的片源着色器的主函数解析 他的具体代码如下 void main() {#include <uv_vertex>#include <color_vertex>#include <morphcolor_vertex>#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )#include <beginno…

【微服务】配置管理

Nacos配置管理 配置管理配置共享配置热更新 配置管理 将微服务集群中常用&#xff0c;经常变化的配置都写到一个独立的配置文件微服务中进行统一管理 配置共享 在Nacos的界面当中进行配置管理&#xff0c;在配置列表中添加配置 比如各个服务中的jdbc的连接配置&#xff1a; …

Spring Cloud架构进化实操:Eureka、Apollo、OpenFeign、Ribbon、Zuul组件

文章目录 前言一、引出二、服务注册与发现2.1 创建Eureka注册中心2.1.1 引入pom依赖2.1.2 配置yaml2.1.3 启动服务21.4 测试访问 2.2 创建服务提供者2.2.1 配置yaml2.2.2 启动服务2.2.3 测试访问 2.3 创建服务消费者2.3.1 服务提供者接口2.3.2 服务消费者调用接口 三、负载均衡…

SpringBoot3.1.5对应新版本SpringCloud开发(1)-Eureka注册中心

服务的提供者和消费者 | | 服务之间可以通过Spring提供的RestTemplate来进行http请求去请求另一个Springboot的项目&#xff0c;这就叫做服务间的远程调用。 | | | 当一个服务通过远程调用去调用另一个服务时&#xff0c;被调用的服务就叫做服务的提供者&#xff0c;调用服务…

Vue从入门到精通-13-Vue-router路由

什么是路由 后端路由 对于普通的网站&#xff0c;所有的超链接都是URL地址&#xff0c;所有的URL地址都对应服务器上对应的资源。 当前端输入url请求资源时&#xff0c;服务器会监听到是什么url地址&#xff0c;那后端会返回什么样的资源呢&#xff1f;后端这个处理的过程就…

【通信中间件】Fdbus HelloWorld实例

Fdbus实例教程 Fdbus简介 Fdbus 全称 Fast Distributed Bus&#xff08;高速分布式总线&#xff09;&#xff0c;提供IPCRPC功能。适用于多种OS&#xff1a; LinuxQNXAnroidOSWindow Fdbus本质是Socket&#xff0c;IPC基于Unix domain socket&#xff0c;RPC基于TCP。使用G…

【Spring】JdbcTemplate

JdbcTemplate 是 Spring 提供的一个 JDBC 模板类&#xff0c;是对 JDBC 的封装&#xff0c;简化 JDBC 代码 也可以让 Spring 集成其它的 ORM 框架&#xff0c;例如&#xff1a;MyBatis、Hibernate 等 使用 JdbcTemplate 完成增删改查 一、环境准备 数据库&#xff1a; 准备…

GPU通用计算介绍

谈到 GPU &#xff08;Graphics Processing Unit&#xff0c;图形显示卡&#xff09;大多数人想到的是游戏、图形渲染等这些词汇&#xff0c;图形处理确实是 GPU 的一大应用场景。然而人们也早已关注到它在通用计算上的巨大潜力&#xff0c;并提出了 GPGPU (General-purpose co…

(论文阅读-优化器)A Cost Model for SPARK SQL

目录 Abstract 1 Introduction 2 Related Work 3 Background and Spark Basics 4 Cost Model Basic Bricks 4.1 Cluster Abastraction and Cost Model Parameters 4.2 Read 4.3 Write 4.4 Shuffle Read 4.5 Broadcast 5 Modeling GPSJ Queries 5.1 Statistics and S…

如何为 Nestjs 编写单元测试和 E2E 测试

前言 最近在给一个 nestjs 项目写单元测试&#xff08;Unit Testing&#xff09;和 e2e 测试&#xff08;End-to-End Testing&#xff0c;端到端测试&#xff0c;简称 e2e 测试&#xff09;&#xff0c;这是我第一次给后端项目写测试&#xff0c;发现和之前给前端项目写测试还…

运维各种中间件的手动安装(非常详细)

压缩文件夹 tar -zcvf newFolder.tar.gz oldFolder 把oldFolder文件夹压缩成newFolder.tar.gz解压文件夹 tar -zxvf 压缩文件名.tar.gzlinux安装jdk &#xff08;参考 https://blog.csdn.net/qq_42269466/article/details/124079963 &#xff09; 1、创建目录存放jdk包 mkd…

容器下的 Go 应用程序优化

1. 内存对齐 结构体内字段&#xff0c;从大到小排列 减少内存占用 1&#xff09;安装 fieldalignment 工具 go install golang.org/x/tools/go/analysis/passes/fieldalignment/cmd/fieldalignmentlatest 2&#xff09;分析并修复内存对齐 fieldalignment -fix ./.../Us…

EPAI手绘建模APP颜色、贴图、材质、样式

⑦ 颜色选择页面 1) 颜色环选色。 图 65 颜色选择器-颜色环 2) RGB选色。 图 66 颜色选择器-RGB 3) HSL选色。 图 67 颜色选择器-HSL 4) 国风颜色库选色。 图 68 颜色选择器-国风 5) CSS颜色库选色。 图 69 颜色选择器-CSS 6) 历史颜色&#xff1a;保存最近使用的多个颜色&…

Faststone Capture:一触即发的效率革命【AI写作】

首先&#xff0c;这篇文章是基于笔尖AI写作进行文章创作的&#xff0c;喜欢的宝子&#xff0c;也可以去体验下&#xff0c;解放双手&#xff0c;上班直接摸鱼~ 按照惯例&#xff0c;先介绍下这款笔尖AI写作&#xff0c;宝子也可以直接下滑跳过看正文~ 笔尖Ai写作&#xff1a;…

亚马逊AWS免费优质证书分享-无服务器开发(有答案)

亚马逊云AWS又出了一张程序员⌨️专属免费证书了&#xff01;这次证书是关于目前云上开发最&#x1f525;的Serverless无服务器开发&#xff0c;Serverless服务说白了就是一台服务器&#xff0c;大家可以部署写好的代码&#xff0c;但是服务器是由AWS帮忙维护的&#xff0c;减轻…

如何开发一个Spring boot工程

引言 很多网站的后端都是基于Spring boot - mybatis进行开发的。 本文以此技术栈进行一个功能模块的开发 以最常见的注册功能为例 全部用最新的版本进行开发 工具 操作系统&#xff1a;Windows 10Java开发包&#xff1a;JDK 21项目管理工具&#xff1a;Maven 3.6.3项目开发…

车载电子电器架构 —— 如何理解和使用Update bit

车载电子电器架构 —— 如何理解和使用Update bit 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不…

【MySQL】4.MySQL的InnoDB引擎深度解析:事务、索引、MVCC、锁机制与性能优化等

InnoDB&#xff0c;作为MySQL数据库系统中的默认存储引擎&#xff0c;以其卓越的事务处理能力和对ACID属性的全面支持&#xff0c;成为了众多开发者和数据库管理员的首选。然而&#xff0c;要充分利用InnoDB的强大功能&#xff0c;就需要深入理解其内部机制&#xff0c;包括事务…

第2章 MySQL的调控按钮-启动选项和系统变量

原文链接&#xff1a; https://relph1119.github.io/mysql-learning-notes/#/mysql/02-MySQL%E7%9A%84%E8%B0%83%E6%8E%A7%E6%8C%89%E9%92%AE-%E5%90%AF%E5%8A%A8%E9%80%89%E9%A1%B9%E5%92%8C%E7%B3%BB%E7%BB%9F%E5%8F%98%E9%87%8F 我们可以发现在日常生活中大多数软件都有自…