OSPFv2 LSA类型

news2024/11/26 8:21:01

OSPFv2需要了解的6种LSA,分别是:1类LSA、2类LSA、3类LSA、4类LSA、5类LSA、7类LSA。

我们先了解一下LSA的组成,LSA由LSA头部和LSA内容组成,其中LSA头部是每一类LSA都相同的,有Type(LSA的类型)、Ls ID(Link state ID,链路状态ID,用于描述该LSA的名字)、Adv rtr(advertise router,通告者路由器,用于描述该LSA的产生者)是LSA的三要素用于唯一表示一条LSA;Ls age(该LSA的老化时间,最大为3600)、seq(序列号,通过这个也可以比较新旧)、checksum(用于校验LSA的完整性)是用于比较LSA的新旧。

下面介绍LSA的内容
Router-LSA :1类LSA ,用于描述每台路由器在所在区域的链路状态信息,每台路由器都会产生,并且在本区域内泛洪。在1类LSA中有使用四种链路类型,来描述不同直连链路的信息,每种链路类型由link id、data、metric进行描述。
1、P2P:用于描述一个P2P/P2MP链路上的邻居,描述的是网络的拓扑信息。
在这里插入图片描述
2、transnet:用于描述一个NBMA/BMA网络的邻居关系,描述的是拓扑信息。
在这里插入图片描述
3、Stubnet:用于描述叶子路由信息,没有邻居(即描述自身直连的网络号),描述直连的路由信息。
在这里插入图片描述
4、V-link:用于描述虚链路连接的邻居,描述的是网络的拓扑信息。
在这里插入图片描述
1类LSA中不光只存在四种链路类型,还有重要的Options(选项)、Flags(标志)等参数信息。
Options参数有:
在这里插入图片描述
DN bit:主要是在MPLS VPN网络中用于防止环路
O bit:表明是否支持9、10、11类LSA
DC bit:是否支持按需链路,即OSPF不发送hello报文,但是邻居不老化
L bit:表明是否支持8类LSA
N bit:表示是否为NSSA区域,即是否支持7类LSA
MC bit:表示是否支持组播数据包的转发能力
E bit:表示是否支持外部路由,即5类LSA
MT bit:表示是否支持多拓扑OSPF

Flags参数有:
V bit:表示是否存在虚链路的邻
E bit:表示本路由器是不是ASBR
B bit:表示本路由器是不是ABR

Network-LSA : 2类LSA ,用于描述NBMA/BMA网络的链路状态信息,只有在MA网络才会产生,由MA的DR产生,在本区域泛洪。 描述路由信息和拓扑信息。在2类LSA中,携带的link state ID和Netmast用于表示广播域的路由信息,Attached Router,用于表示本网段一共有多少路由器,用于表示所连接的设备,即拓扑信息。
在这里插入图片描述

Network-summary-LSA :3类LSA ,用于描述区域间路由信息,由区域间ABR产生,并在本区域泛洪,ABR可以将该LSA继续泛洪到其他区域,但是需要修改ADV和Metric等参数,在跨区域传递时,需要逐个区域修改ADV为ABR的RID,而且该LSA在跨区域传递需要累积路由的开销作为3类LSA的开销。
下面就是3类LSA的显示,只通过Link State ID和Netmask描述了其他区域的路由信息。
在这里插入图片描述
什么是ABR呢?
路由器类型ABR:区域间路由器 ,一般指骨干区域和非骨干区域之间的路由器,用于实现区域间的路由的传递。
ABR 定义 :
1、连接多个区域 且 至少有一个活动的接口属于区域0的路由器。如果区域0中没有活动接口,那么ABR依然会在非骨干区域中通告1类LSA时,option 字段的ABR置位,但是不转换3类LSA进入区域。
2、存在vlink的路由器。
ABR 行为 :
1、ABR 将直连区域的区域内路由转化成其他区域的3类LSA。
在这里插入图片描述
如上图所示,AR2为区域0、区域1、区域2的ABR,根据上述定义的ABR的行为将直连区域内的路由转化为其他区域的3类LSA。所以AR2将区域1内的1类、2类转化为3类直接通告进区域0和区域2。

ASBR-summary-LSA :4类LSA ,用于描述ASBR的信息,辅助5类LSA完成外部路由的计算,由ABR产生,在产生区域泛洪,由于该LSA和3类LSA是类似的,都是描述区域间的信息(3:路由 4:ASBR),所以在传递时,传递规则是一样的,ADV会逐个区域改变,metric会逐个区域累积,在进行空引入时,会在其他区域产生4类LSA,但没有5类LSA。

下面是4类LSA,通过Link State ID和Netmask来表示ASBR是谁。值得一说的是4类LSA描述的是路由信息,即告诉其他路由器怎么去往ASBR。
在这里插入图片描述
AS-external-LSA : 5类LSA ,用于描述OSPF外部路由信息,由ASBR产生并在OSPF域内泛洪,且在OSPF域内泛洪时ADV Router 是不会被更改的,所以需要4类来进行描述。

下面就是5类LSA,在5类LSA中还携带了特殊的字段信息,External Type、Forwarding Address。
请添加图片描述
ASBR 的定义 :

1、只要执行了引入动作,路由器就会认为自己是ASBR。
空引入后,不会产生5类LSA,但是会产生4类LSA。且与ASBR不在同一个区域的路由器,只要有4类LSA,就会计算去往ASBR的路由。(直接OSPF视图下引入静态,但是不存在静态路由)
2、NSSA区域执行7转5的ABR, 也是ASBR
External Type ,它是外部路由的开销类型 ,OSPF在引入外部路由是都会标注该外部路由开销的类型。

同ASBR在一个区域内 的路由器外部路由计算:

1、Type 1:(FA地址为0.0.0.0)
开销=自身到ASBR的开销+引入时路由的开销
下一跳=自身到ASBR的下一跳

2、Type 2:(FA地址为0.0.0.0)
开销=引入时路由的开销 (但是并不代表 域内不路由器不去找ASBR时,走最优路径)
下一跳=自身到ASBR的下一跳

和ASBR不在同一个区域 的路由器外部路由计算:

1、Type 1:(FA地址为0.0.0.0)
开销=通过4类LSA计算到ASBR的开销+引入时路由的开销
下一跳=自身到ASBR的下一跳

2、Type 2:(FA地址为0.0.0.0)
开销=引入时路由的开销 (但是并不代表 域内路由器去找ABR时,不走最优路径)
下一跳=自身到ASBR的下一跳

外部路由选路机制:(当不同区域引入相同的外部路由时)

Type 1:就是管理员希望按路由意义的最短路径访问外部网络。
选择开销和值小的最优
如果相同,则负载分担

Type 2:就是管理员希望按管理意义上最短路由访问外部网络。
引入时开销小的优先,不考虑AS内部开销
引入时开销相同,选择到ASBR开销小的
引入时开销相同,到ASBR的开销也相同,则负载分担

Forwarding Address ,转发地址

作用:用于优化路径,如果携带转发地址,则优先查找转发地址访问外部路由而不会查找路由表下一跳地址。

携带转发地址的条件:要求ASBR访问外部路由的出接口满足以下三个要求

该接口通告进OSPF
该接口的网络类型必须为BMA或NBMA
该接口不能时silent-interface
满足以上三个条件,ASBR在产生五类LSA时会携带转发地址为ASBR到达外部路由的下一跳。
Forwarding Address ,转发地址

作用:用于优化路径,如果携带转发地址,则优先查找转发地址访问外部路由而不会查找路由表下一跳地址。

携带转发地址的条件:要求ASBR访问外部路由的出接口满足以下三个要求

该接口通告进OSPF
该接口的网络类型必须为BMA或NBMA
该接口不能时silent-interface
满足以上三个条件,ASBR在产生五类LSA时会携带转发地址为ASBR到达外部路由的下一跳。
请添加图片描述
如上图所示,AR1、AR2、AR3在同一个广播域中,AR1和AR2建立了OSPF邻居,AR2和AR3建立了RIP邻居,且AR3存在一条32位的主机路由。AR2将RIP引入OSPF,就会转发地址置位,置位的转发地址是AR3的G0/0/0接口的地址。根据上述转发地址的作用,AR1可以直接根据转发地址寻找3.3.3.3,下一跳为AR3。如果没有转发地址的存在,那么AR1去访问3.3.3.3会先寻找到AR2,由AR2在去往3.3.3.3,下一跳为AR3。这就是转发地址的作用。

NSSA AS-External-LSA :7类LSA ,和5类LSA作用相同,但是7类LSA只在特殊区域NSSA中才会出现,如果该LSA泛洪到其他区域时会由NSSA区域的ABR进行7转5的操作,即将7类LSA转换为5类LSA。

7类LSA和5类LSA的内容相同,都是用于描述外部路由信息的,但是7类LSA的转发地址和5类LSA略有不同。

Forwarding Address:对于7类LSA而言如果和5类LSA产生转发地址的场景一致,即当被引入路由的出解耦使能在同一个NSSA区域内,而且该出接口为广播类型,则FA的取值为被引入路由的下一跳地址。

如果场景不一致的话:
1、如果该NSSA区域内存在Loopback接口,则转发地址的值选取Loopback接口地址
2、如果没有Loopback接口,则转发地址的值选取该NSSA区域内第一个IP的接口地址
3、 如果不符合上述两个条件,则转发地址的值为0。

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

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

相关文章

iMazing 2 .17.16最新官方中文版免费下载安装激活

iMazing 2 .17.16最新版是一款帮助用户管理IOS手机的应用程序,iMazing2最新版能力远超iTunes提供的终极的iOS设备管理器。IMazing与你的iOS设备(iPhone、 iPad或iPod)相连,使用起来非常的方便。作为苹果指定的iOS设备同步工具。 mazing什么意思 iMazing…

软件推荐:MobaXterm

介绍 MobaXterm 是远程计算的终极工具箱,它提供了几乎所有重要的远程网络工具,SSH、RDP、FTP、VNC,只要你能想到的,都可以在MobaXterm中找到。除了海量协议外,MobaXterm 还支持安装额外的插件来扩展其功能。 软件官网…

深度学习核心技术与实践之自然语言处理篇

非书中全部内容,只是写了些自认为有收获的部分。 自然语言处理简介 NLP的难点 (1)语言有很多复杂的情况,比如歧义、省略、指代、重复、更正、倒序、反语等 (2)歧义至少有如下几种: …

Linux学习第49天:Linux块设备驱动实验(一):Linux三大驱动之一

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 本章学习Linux三大驱动之一的块设备驱动,主要应用场景为存储设备。 本章的思维导图如下: 一、什么是块设备 块设备---存储设备 以块为单位…

经典目标检测YOLO系列(一)复现YOLOV1(3)正样本的匹配及损失函数的实现

经典目标检测YOLO系列(一)复现YOLOV1(3)正样本的匹配及损失函数的实现 之前,我们依据《YOLO目标检测》(ISBN:9787115627094)一书,提出了新的YOLOV1架构,并解决前向推理过程中的两个问题,继续按照此书进行YOLOV1的复现。 经典目标…

数据结构OJ实验8-赫夫曼树编码及应用

A. DS二叉树--赫夫曼树的构建与编码 题目描述 给定n个权值,根据这些权值构造huffman树,并进行huffman编码 大家参考课本算法6.12为主,注意数组访问是从位置1开始 要求:赫夫曼的构建中,默认左孩子权值不大于右孩子权…

webRTC实时通信demo

参考文档: https://www.jianshu.com/p/f439ce5cc0be https://www.w3cschool.cn/socket demo流程示意图(用户A向用户B推送视频): #mermaid-svg-0KZaDQ5DBl28zjmZ {font-family:"trebuchet ms",verdana,arial,sans-seri…

JavaWeb——前端之HTMLCSS

学习视频链接:https://www.bilibili.com/video/BV1m84y1w7Tb/?spm_id_from333.999.0.0 一、Web开发 1. 概述 能通过浏览器访问的网站 2. Web网站的开发模式——主流是前后端分离 二、前端Web开发 1. 初识 前端编写的代码通过浏览器进行解析和渲染得到我们看到…

elasticsearch+Kibana

什么是es(elasticsearch) Elasticsearch是一个开源的分布式搜索和分析引擎,它构建在Apache Lucene搜索引擎库之上。它提供了一个分布式多用户能力的实时搜索和分析引擎,能够处理大规模的数据。Elasticsearch被广泛用于构建全文搜索、日志分析、实时应用…

灸哥问答:软件架构在软件研发中的作用

软件架构在软件开发中扮演着至关重要的角色。我们在软件研发的过程中,类比于建造一座公寓楼,而软件架构就像是盖楼之前的设计图纸,如果没有设计图纸就直接盖楼,可想而知带来的后果是什么。我对软件架构的作用表现总结如下&#xf…

iOS问题记录 - iOS 17通过NSUserDefaults设置UserAgent无效(续)

文章目录 前言开发环境问题描述问题分析1. 准备源码2. 定位源码3. 对比源码4. 分析总结 解决方案补充内容1. UserAgent的组成2. UserAgent的设置优先级 最后 前言 在上篇文章中对该问题做了一些判断和猜测,并给出了解决方案。不过,美中不足的是没有进一…

十四:爬虫-Redis基础

1、背景 随着互联网大数据时代的来临,传统的关系型数据库已经不能满足中大型网站日益增长的访问量和数据量。这个时候就需要一种能够快速存取数据的组件来缓解数据库服务I/O的压力,来解决系统性能上的瓶颈。 2、redis是什么 Redis 全称 Remote Dictio…

C/C++面向对象(OOP)编程-回调函数详解(回调函数、C/C++异步回调、函数指针)

本文主要介绍回调函数的使用,包括函数指针、异步回调编程、主要通过详细的例子来指导在异步编程和事件编程中如何使用回调函数来实现。 🎬个人简介:一个全栈工程师的升级之路! 📋个人专栏:C/C精进之路 &…

【Spring实战】16 Profile

文章目录 1. 定义2. 使用2.1 定义 Profile2.2 激活 Profile 3. 演示3.1 properties文件3.2 打印日志3.3 启动服务&验证3.4 修改 active3.5 重启服务&验证 4. 应用场景4.1 数据库配置4.2 日志配置 5. 代码详细总结 Spring 框架提供了一种强大的机制,允许在不…

图像分割实战-系列教程9:U2NET显著性检测实战1

🍁🍁🍁图像分割实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 U2NET显著性检测实战1 1、任务概述

第7课 利用FFmpeg将摄像头画面与麦克风数据合成后推送到rtmp服务器

上节课我们已经拿到了摄像头数据和麦克风数据,这节课我们来看一下如何将二者合并起来推送到rtmp服务器。推送音视频合成流到rtmp服务器地址的流程如下: 1.创建输出流 //初始化输出流上下文 avformat_alloc_output_context2(&outFormatCtx, NULL, &…

Java EE Servlet之Cookie 和 Session

文章目录 1. Cookie 和 Session1.1 Cookie1.2 理解会话机制 (Session)1.2.1 核心方法 2. 用户登录2.1 准备工作2.2 登录页面2.3 写一个 Servlet 处理上述登录请求2.4 实现登录后的主页 3. 总结 1. Cookie 和 Session 1.1 Cookie cookie 是 http 请求 header 中的一个属性 浏…

AI 工具探索(二)

我参加了 奇想星球 与 Datawhale 举办的 【AI办公 X 财务】第一期,现在这是第二次打卡,也即自由探索,我选择 Modelscope 的 Agent 探索,并用gpts创作助理对比! 最近想学学小红书的运营方法,选择了 小红书I…

【微服务】1.虚拟机配置

创建虚拟机选经典,其他配置同其他讲解文档 特殊注意 如果要自己设置IP地址,修改/etc/sysconfig/network-scripts/ 编辑ifcfg-ens33需改ip地址 #开机加载网络配置启动网络服务 ONBOOT"yes" #分配ip的协议 none static :不自动分配&#xff0c…

axios的使用及说明

目录 1.说明 2.直接使用 3.封装使用 4.注意 1.说明 官网:Axios 实例 | Axios中文文档 | Axios中文网 Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使…