最经典的解析LSA数据库(第六课)

news2025/1/21 1:03:31

初步认识OSPF的大致内容(第三课)_IHOPEDREAM的博客-CSDN博客


1 OSPF 工作过程

  1. 建立领居表

  2. 同步数据库   今天来 说一说数据库概念

  3. 计算路由表

2 什么是数据库?

数据库是一个组织化的数据集合,用于存储、管理和检索数据。它是一个可访问的集合,旨在存储与特定主题或目的相关的数据,并提供有效的检索和使用数据的方法。数据库可以用于各种不同的用途,包括企业资源规划、客户关系管理、存储数据、数据分析等等。数据库可以以不同形式出现,如关系型数据库、NoSQL数据库、图数据库等。

3 OSPF 网络风暴

1) 问: PC1 可以ping通PC2    为什么? 
   答: 因为有ospf路由

2)问: 为什么有ospf路由?
   答: 因为运行ospf的路由器会计算ospf路由

3)问:为什么运行ospf的路由器会计算出来OSPF路由?
   答:因为路由器有计算路由的原材料

4)问:什么是计算路由的原材料
   答:拓扑信息  +  网段信息

5)问:什么是拓扑信息: 我是那台路由器,我连着那台路由器,我用那个接口连着那台路由器
   问:什么是网段信息: 接口IP地址网段,接口IP地址的掩码


6)问:拓扑信息和网段信息,你是怎么得到的?
   答:我从邻居哪里学来的

7)问:你是通过什么方法学习的呢?
   答:我和邻居同步数据库 

8)问:那个数据库,什么样的数据库
   答:LSDB : 链路状态数据库

9)问:这个数据库是干啥的?
   答:这个数据库是专门用来存储LSA的 

10)问:LSA是啥:
    答:LSA:链路状态通告 ,说人话:就是拓扑信息+网段

11)问:为什么LSA是链路状态通告的原材料?
       答:因为在计算路由是会用到数据库?
12)问:为什么数据库可以提供计算路表的参考依据?
答:因为在数据库中有各种LSA来描述自己管理范围的LSA ?
说人话 又是描述括普图中的网段信息和括普图信息。

13)问 为什么LSA 能描述数据库中的各种信息?
答:因为在OSPF中LSA分为以下几类?1 类LSA
2 类LSA 3 类LSA 4 类LSA  7 类LSA 

14) 问 什么是1类LSA?1类LSA 是用来描述啥的呀!
答:1 类 LSA 简称是Router,1类LSA产自这条链路的Router-id.
描述的有以下内容:
LSA的名字叫啥?LSA生产自哪里?LSA的年龄?LSA 的长度?
LSA的功能?LSA的序列号?LSA 连接的DR中的IP地址是多少?括普信息+网段信息

15)问 什么是2 类 LSA ?2类LSA 是用来描述啥的?
答:2 类LSA 简称 Network-LSA  2类的名字来自DR接口中的IP地址?
作用:2 类LSA 补全DR所在网段的掩码信息,同时记录了该网段内所有与DR建立邻接关系的OSPF路由器,描述完整的区域内的拓扑信息
什么是DR?
DR是指定路由器 。

16)问 什么是三类LSA?3 类LSA 用来描述啥?
答:3类LSA 简称  Network-summary-LSA
3类LSA的名字取自-区域之间的路由的网段的名字
通告路由器:本区域中的ABR路由器的Router-id
3类LSA在传播的过程中,每经过一个ABR设备, (通告路由器)都会变化一次,变成所有经过的那台ABR的 Router-id
作用:区域内的1、2类LSA计算出来的路由,变成3类LSA在其他区域泛洪(广播),实现区域与区域之间的通信

17)问 什么是4类 LSA ?4类LSA 是用来描述啥的?
答:4 类 LSA 简称  ASBR-summary-LSA
4 类的LSA的名字取自-ASBR的router-id 6
通告的路由器:ABR的router-id
第一个创建4类LSA那台设备是 和ASBR在同一个区域的那台ABR创建的

18)问 什么是5 类 LSA ?5 类LSA 是用来描述啥的?
答:类型:AS-external-LSA
名字:5类LSA的名字取自-引入外部路由的网段的名字
通告的路由器:ASBR的router-id
传递范围:在整个OSPF网络内传播
作用:用于通告外部路由
特点:只有ASBR可以产生5类的LSA
5类的LSA可以传输到OSPF网络中的任何地方,在传输的过程中,LSA没有任何变化
5类的LSA不属于任何一个区域

19)问 什么是7类LSA ?
答:类型:NSSA
名字:LinkState ID : 外部路由的网段
产生的路由器:AdvRouter  :  NSSA区域的ASBR的Router-id  
作用:用于通告NSSA区域的外部路由
因为有上面的各种LSA 组成了一个数据库,为接下来的计算路由做好铺垫。

20)问:你是怎么同步的数据库
    答:我把我的数据库中的LSA复制给邻居:
        邻居把他的数据库中的LSA复制给我
               请问,我们两个的数据库内容是否一致,如果一致,就称为 同步数据库成功

21) 问:为什么两台路由能够同步数据库
     答:因为这两台路由器是邻居
  
22) 问:为什么这两台路由器是邻居呢?
     答:因为这两台路由是直接相连的,并且这两台路由器运行了ospf 

所以:
网络通: 是因为有ospf路由
有路由: 是因为同步数据库了
能同步: 是因为建立邻居了
有邻居: 是因为做ospf了

所以:OSPF工作步骤:

      1) 建立邻居:  邻居表
      2) 同步数据:  数据库
      3) 计算路由:  路由表; 是OSPF协议路由表

4 OSPF 常常用到的表

表1 报文类型

报文类型

报文作用

Hello报文

周期性发送,用来发现和维持OSPF邻居关系。

DD报文(Database Description packet)

描述本地LSDB(Link State Database)的摘要信息,用于两台设备进行数据库同步。

LSR报文(Link State Request packet)

用于向对方请求所需的LSA。

设备只有在OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。

LSU报文(Link State Update packet)

用于向对方发送其所需要的LSA。

LSAck报文(Link State Acknowledgment packet)

用来对收到的LSA进行确认。

表2 LSA类型

LSA类型

LSA作用

Router-LSA(Type1)

每个设备都会产生,描述了设备的链路状态和开销,在所属的区域内传播。

Network-LSA(Type2)

由DR(Designated Router)产生,描述本网段的链路状态,在所属的区域内传播。

Network-summary-LSA(Type3)

由ABR产生,描述区域内某个网段的路由,并通告给发布或接收此LSA的非Totally STUB或NSSA区域。例如:ABR同时属于Area0和Area1,Area0内存在网段10.1.1.0,Area1内存在网段11.1.1.0,ABR为Area0生成到网段11.1.1.0的Type3 LSA;ABR为Area1生成到网段10.1.1.0的Type3 LSA,并通告给发布或接收此LSA的非Totally Stub或NSSA区域。

ASBR-summary-LSA(Type4)

由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。

AS-external-LSA(Type5)

由ASBR产生,描述到AS外部的路由,通告到所有的区域(除了STUB区域和NSSA区域)。

NSSA LSA(Type7)

由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播。

Opaque LSA(Type9/Type10/Type11)

Opaque LSA提供用于OSPF的扩展的通用机制。其中:

  • Type9 LSA仅在接口所在网段范围内传播。用于支持GR的Grace LSA就是Type9 LSA的一种。
  • Type10 LSA在区域内传播。用于支持TE的LSA就是Type10 LSA的一种。
  • Type11 LSA在自治域内传播,目前还没有实际应用的例子。

表4 路由器类型

路由器类型

含义

区域内路由器(Internal Router)

该类设备的所有接口都属于同一个OSPF区域。

区域边界路由器ABR(Area Border Router)

该类设备可以同时属于两个以上的区域,但其中一个必须是骨干区域。

ABR用来连接骨干区域和非骨干区域,它与骨干区域之间既可以是物理连接,也可以是逻辑上的连接。

骨干路由器(Backbone Router)

该类设备至少有一个接口属于骨干区域。

所有的ABR和位于Area0的内部设备都是骨干路由器。

自治系统边界路由器ASBR(AS Boundary Router)

与其他AS交换路由信息的设备称为ASBR。

ASBR并不一定位于AS的边界,它可能是区域内设备,也可能是ABR。只要一台OSPF设备引入了外部路由的信息,它就称为ASBR。

表6 区域类型

区域类型

作用

普通区域

缺省情况下,OSPF区域被定义为普通区域。普通区域包括标准区域和骨干区域。

  • 标准区域是最通用的区域,它传输区域内路由,区域间路由和外部路由。
  • 骨干区域是连接所有其他OSPF区域的中央区域。骨干区域通常用Area 0表示。

STUB区域

不允许发布自治系统外部路由,只允许发布区域内路由和区域间的路由。

在STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。

为了保证到自治系统外的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部的路由都必须通过ABR才能发布。

Totally STUB区域

不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。

在Totally STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。

为了保证到自治系统外和其他区域的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部和其他区域的路由都必须通过ABR才能发布。

NSSA区域

NSSA区域允许引入自治系统外部路由,由ASBR发布Type7 LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。

NSSA区域同时保留自治系统内的STUB区域的特征。

该区域的ABR发布Type7缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。

Totally NSSA区域

Totally NSSA区域允许引入自治系统外部路由,由ASBR发布Type7 LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。

Totally NSSA区域同时保留自治系统内的Totally STUB Area区域的特征。

该区域的ABR发布Type3和Type7缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。

5 OSPF 数据库中的LSA 解析

网络类型

表7 OSPF网络类型

网络类型

含义

广播类型(Broadcast)

当链路层协议是Ethernet、FDDI时,缺省情况下,OSPF认为网络类型是Broadcast。

在该类型的网络中:

  • 通常以组播形式发送Hello报文、LSU报文和LSAck报文。其中,224.0.0.5的组播地址为OSPF设备的预留IP组播地址;224.0.0.6的组播地址为OSPF DR/BDR( Backup Designated Router)的预留IP组播地址。

  • 以单播形式发送DD报文和LSR报文。

NBMA类型(Non-Broadcast Multi-Access)

当链路层协议是帧中继、X.25时,缺省情况下,OSPF认为网络类型是NBMA。

在该类型的网络中,以单播形式发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

点到多点P2MP类型(Point-to-Multipoint)

没有一种链路层协议会被缺省的认为是Point-to-Multipoint类型。点到多点必须是由其他的网络类型强制更改的。常用做法是将非全连通的NBMA改为点到多点的网络。

在该类型的网络中:

  • 以组播形式(224.0.0.5)发送Hello报文。

  • 以单播形式发送其他协议报文(DD报文、LSR报文、LSU报文、LSAck报文)。

点到点P2P类型(point-to-point)

当链路层协议是PPP、HDLC和LAPB时,缺省情况下,OSPF认为网络类型是P2P。

在该类型的网络中,以组播形式(224.0.0.5)发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

0 P2P实验的起源 开始

补充内容

1类LSA:Router-LSA

依据和P2P 对比发现 1 类 LAS 少了 一个 网段信息


2类LSA:Network-LSA===⇒DR


3类LSA:Network-summary-LSA 


4类LSA:  ASBR-summary-LSA


5类LSA:AS-external-LSA


如何传送过程

LSA规划是的特殊区域

表6 区域类型

区域类型

作用

普通区域

缺省情况下,OSPF区域被定义为普通区域。普通区域包括标准区域和骨干区域。

  • 标准区域是最通用的区域,它传输区域内路由,区域间路由和外部路由。
  • 骨干区域是连接所有其他OSPF区域的中央区域。骨干区域通常用Area 0表示。

STUB区域

不允许发布自治系统外部路由,只允许发布区域内路由和区域间的路由。

在STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。

为了保证到自治系统外的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部的路由都必须通过ABR才能发布。

Totally STUB区域

不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。

在Totally STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。

为了保证到自治系统外和其他区域的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部和其他区域的路由都必须通过ABR才能发布。

NSSA区域

NSSA区域允许引入自治系统外部路由,由ASBR发布Type7 LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。

NSSA区域同时保留自治系统内的STUB区域的特征。

该区域的ABR发布Type7缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。

Totally NSSA区域

Totally NSSA区域允许引入自治系统外部路由,由ASBR发布Type7 LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。

Totally NSSA区域同时保留自治系统内的Totally STUB Area区域的特征。

该区域的ABR发布Type3和Type7缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。

stub area  :末梢区域

Totally stub  area    :完全的末梢区域

OSPF 七大状态


7类LSA:NSSA LSA

NSSA :not so  stub  area   : 不那么末梢的区域

Totally  NSSA  :完全的NSSA

OSPF 3LSA类型

LSA类型

LSA作用

Router-LSA(Type1)

设备会为每个运行OSPFv3接口所在的区域产生一个LSA,描述了设备的链路状态和开销,在所属的区域内传播。

Network-LSA(Type2)

由DR产生,描述本链路的链路状态,在所属的区域内传播。

Inter-Area-Prefix-LSA(Type3)

由ABR产生,描述区域内某个网段的路由,并通告给其他相关区域。

Inter-Area-Router-LSA(Type4)

由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。

AS-external-LSA(Type5)

由ASBR产生,描述到AS外部的路由,通告到所有的区域(除了Stub区域和NSSA区域)。

NSSA LSA(Type7)

由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播。

Link-LSA(Type8)

每个设备都会为每个链路产生一个Link-LSA,描述到此Link上的link-local地址、IPv6前缀地址,并提供将会在Network-LSA中设置的链路选项,它仅在此链路内传播。

Intra-Area-Prefix-LSA(Type9)

每个设备及DR都会产生一个或多个此类LSA,在所属的区域内传播。

  • 设备产生的此类LSA,描述与Route-LSA相关联的IPv6前缀地址。
  • DR产生的此类LSA,描述与Network-LSA相关联的IPv6前缀地址。

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

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

相关文章

[SICTF 2023 #Round2] Crypto,PWN,Reverse

似乎很久没写了。 周五到周日,两天的这个比赛,有些东西还真是头回用,值得纪录一下。 Crypto 密码这块这届还是比较简单的,没有复杂的题,但量大分多。 【签到】古典大杂烩 给了一堆emoji的图 🐩&#x…

英国私校的艺术奖学金有哪些?申请要求和申请流程详解!

众所周知,英国私校不仅学术拔尖,在对学生艺术方面的培养也是毫不逊色的。几乎打开每一所英国私校的官网,都可以看到学校罗列的提供的各类课外艺术活动的精彩照片。      每个英国私校除了课后开设的五花八门的兴趣课外,还有各…

【项目 计网12】4.32UDP通信实现 4.33广播 4.34组播 4.35本地套接字通信

文章目录 4.32UDP通信实现udp_client.cudp_server.c 4.33广播bro_server.cbro_client.c 4.34组播multi_server.cmulti_client.c 4.35本地套接字通信ipc_server.cipc_client.c 4.32UDP通信实现 udp_client.c #include <stdio.h> #include <stdlib.h> #include <…

2023-09-10 LeetCode每日一题(课程表 II)

2023-09-10每日一题 一、题目编号 210. 课程表 II二、题目链接 点击跳转到题目位置 三、题目描述 现在你总共有 numCourses 门课需要选&#xff0c;记为 0 到 numCourses - 1。给你一个数组 prerequisites &#xff0c;其中 prerequisites[i] [ai, bi] &#xff0c;表示在…

hive葵花宝典:hive函数大全

文章目录 版权声明函数1 函数分类2 查看函数列表3 数学函数取整函数: round指定精度取整函数: round向下取整函数: floor向上取整函数: ceil取随机数函数: rand幂运算函数: pow绝对值函数: abs 4 字符串函数字符串长度函数&#xff1a;length字符串反转函数&#xff1a;reverse…

表情识别-情感分析-人脸识别(代码+教程)

表情识别 面部情绪识别&#xff08;FER&#xff09;是指根据面部表情识别和分类人类情绪的过程。通过分析面部特征和模式&#xff0c;机器可以对一个人的情绪状态作出有根据的推断。这个面部识别的子领域高度跨学科&#xff0c;涉及计算机视觉、机器学习和心理学等领域的知识。…

解析Spring Boot中的Profile:配置文件与代码的双重掌控

目录 创建一个spring boot 项目spring boot 中的配置体系配置文件与 Profile代码控制与Profile 创建一个spring boot 项目 基于 Spring Boot 创建 Web 应用程序的方法有很多,我们选择在idea中直接进行创建&#xff0c;服务器URL选择Spring Initializer 网站&#xff0c;类型选…

libnetcdf.so.19: cannot open shared object file: No such file or directory

Linux编译程序时出现问题 在linux系统上&#xff0c;编译一个工具包后&#xff0c;在运行该工具包时&#xff0c;出现以下报错&#xff1a; libnetcdf.so.19: cannot open shared object file: No such file or directory仔细分析报错信息可以发现&#xff1a;在运行该工具包…

UG\NX二次开发 判断向量在指定的公差内是否为零,判断是否是零向量 UF_VEC3_is_zero

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,里海BlockUI专栏,C\C++-CSDN博客 简介: UG\NX二次开发 判断向量在指定的公差内是否为零,判断是否是零向量 UF_VEC3_is_zero 效果: 代码: #include "me.hpp"void ufusr(char* param, int* retco…

Pytorch实现基于LSTM的情感分析

文章目录 本文参考导入必要的包介绍torchnet做数据的导入给必要的参数命名加载文本数据数据前处理模型训练验证 本文参考 PyTorch深度学习项目实战100例 https://weibaohang.blog.csdn.net/article/details/127154284?spm1001.2014.3001.5501 这段代码是一个基于PyTorch实现…

LeetCode(力扣)37. 解数独Python

LeetCode37. 解数独 题目链接代码 题目链接 https://leetcode.cn/problems/sudoku-solver/description/ 代码 class Solution:def solveSudoku(self, board: List[List[str]]) -> None:"""Do not return anything, modify board in-place instead."…

使用数据库表快速生成代码

这里使用的EasyCode插件&#xff0c;直接下载即可&#xff0c;这里需要有数据库的技术与使用idea&#xff0c;会使用起来更流畅&#xff01; 使用idea连接数据库 右键选择表 勾选你所需要的添加&#xff0c; 鄙人一般除了debug&#xff0c;其他都会勾选上 点击确定&#xff0c;…

【电源专题】不合理接地引发的典型问题及地环路隔离的方法

在文章:【电源专题】接地的类型 中我们讲到因为历史的原因接地在不同时期的概念是不同的。到了如今大规模的集成电路时代,在单板中接地其实是想要一个参考电位,一个等势点。 但是理想终究是理想,在现实接地中,往往因为接地平面的阻抗不是0,而电源电流过大、信号频率过高…

目标检测笔记(十五): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)

文章目录 一、目标检测介绍二、YOLOX介绍三、源码获取四、环境搭建4.1 环境检测 五、数据集准备六、模型训练七、模型验证八、模型测试 一、目标检测介绍 目标检测&#xff08;Object Detection&#xff09;是计算机视觉领域的一项重要技术&#xff0c;旨在识别图像或视频中的…

Linux权限的概念和管理

Linux权限的概念和管理 1. Linux权限的概念2. Linux权限管理2.1 文件访问者的分类&#xff08;人&#xff09;2.2 文件类型和访问权限&#xff08;事物属性&#xff09;2.2.1 文件类型2.2.2 基本权限 2.3 文件权限值的表示方法2.4文件访问权限的相关设置方法1. chmod&#xff0…

C++的运算符重载介绍

所谓重载,就是赋予新的含义。函数重载(Function Overloading)可以让一个函数名有多种功能,在不同情况下进行不同的操作。运算符重载(Operator Overloading)也是一个道理,同一个运算符可以有不同的功能。 实际上,我们已经在不知不觉中使用了运算符重载。例如,+号可以对…

IDEA控制台取消悬浮全局配置SpringBoot配置https

IDEA控制台取消悬浮 idea 全局配置 SpringBoot(Tomcat) 配置https&#xff0c;同时支持http 利用JDK生成证书 keytool -genkey -alias httpsserver -keyalg RSA -keysize 2048 -keystore server.p12 -validity 3650配置类 Configuration public class TomcatConfig {Value(&quo…

【golang】调度系列之m

调度系列 调度系列之goroutine 上一篇中介绍了goroutine&#xff0c;最本质的一句话就是goroutine是用户态的任务。我们通常说的goroutine运行其实严格来说并不准确&#xff0c;因为任务只能被执行。那么goroutine是被谁执行呢&#xff1f;是被m执行。 在GMP的架构中&#xff…

PC首页资源加载速度由8s降到2s的优化实践

随着需求的不断开发&#xff0c;前端项目不断膨胀&#xff0c;业务提出&#xff1a;你们的首页加载也太慢啦&#xff0c;我都需要7、8秒才能看到内容&#xff0c;于是乎主管就让我联合后端开启优化专项&#xff0c;目标是3s内展示完全首页的内容。 性能指标 开启优化时&#…

G0第28章:Go语言微服务框架

Go-kit Go kit教程04——中间件和日志 本文主要介绍了Go kit 中的中间件&#xff0c;并以日志中间件为例演示了如何设计和实现中间件。 上一篇中&#xff0c;我们对go kit搭建的项目进行了目录结构拆分 中间件 在 go kit 中&#xff0c;它对中间件的定义是一个接收Endpoint…