当前位置: 首页 > news >正文

OSPF的不规则区域

1.远离骨干非骨干区域

2.不连续骨干

解决方案

tunnel ---点到点GRE

在合法与非ABR间建立隧道,然后将其宣告于OSPF协议中;

缺点:1、周期和触发信息对中间穿越区域造成资源占用(当同一条路由来自不同区域,路由器会先选择区域0的,如果都是非0区域,在比较开销值)

           2、选路不佳

OSPF虚链路

由合法ABR,给同一区域的非法ARB进行授权,之后非法ABR能够进行区域间路由共享;

[r2]ospf 1

[r2-ospf-1]area  1  两台ABR均存在的区域

[r2-ospf-1-area-0.0.0.1]vlink-peer 4.4.4.4  对端ABR的RID;两台ABR均需配置

优点:没有新的数据链路出现,故选路正常; 

缺点:两台ABR之间的周期信息,依然对中间区域造成影响,增加延时

cisco思科--- 取消两台ABR间所有的周期信息,仅存在触发更新-- 不可靠

     华为 --- 保留所有的周期信息,对中间区域资源占用严重

多进程双向重发布(推荐)

多进程 ---  一台路由器上允许的多个ospf进程,每个进程运行独立的接口(一个接口只能宣告于一个进程中);存在独立的邻居,生成独立的数据库,且数据库间不做共享;仅将所有数据库计算所得的路由加载于同一路由表中;

可以将非法ABR上,不同区域宣告与不同的OSPF进程,造成独立的协议;之后使用重发布进行,将该非法ABR转换为ASBR,进行协议间路由条目共享即可;

不存在选路不佳问题,不存在周期资源占用,和不可靠问题;

双向重发布

[r4]ospf 1

[r4-ospf-1]import-route ospf 2

[r4-ospf-1]q

[r4]ospf 2

[r4-ospf-2]import-route ospf  1

OSPF的数据库表

<r1>display  ospf lsdb   查看数据库目录

OSPF的数据库是由大量的LSA组成;LSA-- 链路状态通告

LSDB--链路状态数据库 --  各种LSA构成

每一条LSA携带具体的拓扑或者路由信息;不同环境下将产生不同类别的LSA;

<r1>display  ospf lsdb network 12.1.1.1  查看具体的一条LSA信息

                                       类别名   link-id

无论哪类LSA,均存在以下基本参数

  Type      : Router   类型名,此处为1类

  Ls id     : 1.1.1.1   该条目在目录中的编号(页码号)

  Adv rtr   : 1.1.1.1   通告者 -- 该条LSA的更新源设备的RID

  Ls age    : 1666  老化时间,周期1800s刷新,触发马上刷新;最大老化3609s

  Len       : 48         数据包长度

  seq#      : 80000015   序列号     更新后变化

  chksum    : 0x6f95      校验码号  更新后变化

类型名              传播范围           通告者                 携带信息

1/ Router            单区域         该区域的每台路由器       本地直连拓扑

2/Network            单区域          单网段内的DR         单个MA网络内的拓扑 

3/summary         整个OSPF域          ABR                  域间路由

4/asbr         除ASBR所在区域外        ARB                ASBR位置

    的整个OSPF域(ASBR所在区域使用1类告知位置)  

5/Ase              整个OSPF域          ASBR                域外路由

7/nssa             单个NSSA区域内      ASBR                 域外路由

类别名          LS-ID                       通告者

 Router       通告者RID                  该区域的每台路由器      

Network      DR在该网段接口的ip地址    单网段内的DR

Summary     域间路由的目标网络号   ABR 在经过下一台ABR,修改为新的ABR

Asbr         ASBR的RID            ABR 在经过下一台ABR,修改为新的ABR

Ase          域外路由的目标网络号           ASBR

Nssa        域外路由的目标网络号           ASBR

1类Lsa的类型有四种,分别为p2p、stubnet、transnet、virtual;

Transnet类型:

Link id:表示伪节点的信息

            Data:表示自身连接伪节点的IP

            link type:描述1类Lsa的类型,transnet表示为广播或NBMA类型

            Metric:开销值

P2P类型:

 Link id:表示邻居信息;

         Data:表示自身与邻居相连的接口;

         Link type:描述1类Lsa的类型,p2p表示网络类型为P2P,

         Metric:表示链路的开销值。

stubnet类型:

   Link id:自身直连的路由网络号;

         Data:表示该网络号的掩码;

         Link type:表示为节点信息;

         Metric:表示链路的开销值。

虚链路的配置为:

[区域]vlink-peer  对端的router id

      从而生成一条link type为virtual的一类的lsa。其link id表示虚链路的对端路由的router id,data表示自身去往虚链路的接口。

优化OSPF的LSA   减少LSA的更新量

【1】手工汇总 --- 减少骨干区域的LSA

1) 域间路由汇总  --- 只能在区域间传递3类LSA时,进行手工的路由汇总

在ABR上配置

[r1]ospf 1

[r1-ospf-1]area  2   本地通过该区域的1/2LSA拓扑计算所得路由才能汇总

[r1-ospf-1-area-0.0.0.2]abr-summary 5.5.4.0 255.255.254.0

2) 域外路由汇总--当ASBR将其他协议产生的路由条目重发布进入OSPF域时,可以进行汇总配置

[r4]ospf 1

[r4-ospf-1]asbr-summary 99.1.0.0 255.255.252.0

【2】特殊区域 --- 减少非骨干区域的LSA

不能是骨干区域,不能存在虚链路;

  1. 不能存在ASBR

1」末梢区域 --  该区域拒绝,外部进入的4/5的LSA;由该区域连接骨干的ABR,向内部产生一条3类的缺省路由

[r5]ospf 1

[r5-ospf-1]area  2  该区域内所有路由器均需配置

[r5-ospf-1-area-0.0.0.2]stub

2」完全末梢区域 --- 在末梢区域的基础上,仅一步拒绝3类LSA的进入;仅保留一条3类缺省的进入

先将该区域配置为末梢区域

然后仅在ABR上配置完全末梢即可;

[r1]ospf 1

[r1-ospf-1]area  2

[r1-ospf-1-area-0.0.0.2]stub no-summary

不能是骨干区域,不能存在虚链路;

  1. 存在ASBR

1」NSSA--非完全末梢区域;该区域拒绝4/5的LSA;本地ASBR产生的域外路由,使用7类在本NSSA区域传递,通过ABR进入骨干区域,被转换成5类;由该区域连接骨干的ABR向内部发送一条7类缺省;

其存在的价值,是为了让该区域拒绝其他区域的,ASBR产生的4/5类LSA进入

[r4]ospf 1

[r4-ospf-1]area  1

[r4-ospf-1-area-0.0.0.1]nssa

2」完全NSSA -- 在普通NSSA的基础上,进一步拒绝3的类LSA进入该区域;由该区域连接骨干的ABR向内部发布一条3类缺省

先将区域配置为NSSA,然后仅在连接骨干的ABR上,定义完全即可

[r3]ospf 1

[r3-ospf-1]area  1

[r3-ospf-1-area-0.0.0.1]nssa  no-summary

补充:

1、点到点网络类型   down -->init -- >(前提为可以建立邻接)exstart -->exchange-->若查看邻接的DBD目录后发现不用进行LSA直接进入full  若查看后需要进行查询、应答先进入loading,在查询应答完后再进入full;

2、MA网络类型  down -->init -- >2way-->(前提为可以建立邻接,通过DR/BDR选举后来判断)exstart -->exchange-->若查看邻接的DBD目录后发现不用进行LSA直接进入full  若查看后需要进行查询、应答先进入loading,在查询应答完后再进入full;

3、当hello time较大时,状态机在down和init之间将出现尝试等待状态;

相关文章:

OSPF的不规则区域

1.远离骨干非骨干区域 2.不连续骨干 解决方案 tunnel ---点到点GRE 在合法与非ABR间建立隧道&#xff0c;然后将其宣告于OSPF协议中&#xff1b; 缺点&#xff1a;1、周期和触发信息对中间穿越区域造成资源占用&#xff08;当同一条路由来自不同区域&#xff0c;路由器会先…...

大数据新视界 --大数据大厂之 Ibis:独特架构赋能大数据分析高级抽象层

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…...

总结TypeScript相关知识

目录 引入认识特点安装使用变量声明类型推导 JS 和 TS 共有类型number类型boolean类型string类型Array类型null和undefined类型object类型symbol类型对象类型函数类型 可选和只读type 和 interface索引签名类型断言非空类型断言类型缩小严格赋值检测现象TS 新增类型字面量类型a…...

pdf怎么编辑修改内容?详细介绍6款pdf编辑器功能

■ pdf怎么编辑修改内容&#xff1f; PDF&#xff08;Portable Document Format&#xff09;作为一种广泛使用的文件格式&#xff0c;具有特点包括兼容性强、易于传输、文件安全性高、跨平台性、可读性强、完整性、可搜索性、安全性、可压缩性。 PDF文件本身是不可以直接进行编…...

【Blender Python】4.获取场景对象的几种方式

概述 有时候我们需要获取场景中已经添加或存在的对象。本节就总结在Blender Python中获取场景中对象的一些方法。 通过名称获取 py.data的objects()方法返回一个对象集合&#xff0c;可以使用键名或者下标形式获取具体的对象。 在默认新建的场景中&#xff0c;存在三个对象…...

鸿蒙harmonyos next flutter通信之EventChannel获取ohos系统时间

建立通道 flutter代码&#xff1a; EventChannel eventChannel EventChannel("com.xmg.eventChannel"); ohos代码&#xff1a; //定义eventChannelprivate eventChannel: EventChannel | null null//定义eventSinkprivate eventSink: EventSink | null null//建…...

Python 代码编写规范

本规范旨在为 Python 项目的代码编写提供一致性指南。它遵循 Python 社区的 PEP 8 标准&#xff0c;并结合了通用的编程最佳实践。 1. 编码风格 1.1 缩进 使用 4 个空格 作为缩进&#xff0c;不要使用制表符&#xff08;Tab&#xff09;。 def example():if True:print(&quo…...

k8s中pod的管理

一、资源管理 1.概述 说到k8s中的pod&#xff0c;即荚的意思&#xff0c;就不得不先提到k8s中的资源管理&#xff0c;k8s中可以用以下命令查看我们的资源&#xff1a; kubectl api-resources 比如我们现在需要使用k8s开启一个东西&#xff0c;那么k8s通过apiserver去对比etc…...

JavaScript中引用数据类型的浅拷贝

在JavaScript中&#xff0c;数据类型被分为“基本数据类型”和“引用数据类型”两大类。基本数据类型包括数值型、字符型、逻辑型、未定义型(undefined)、空型(null)和ES6新增的Symbol类型&#xff0c;引用数据类型包括数组、对象和函数。 当我们在程序中执行变量赋值操作的时候…...

自闭症寄宿学校陕西:提供综合发展的教育环境

在陕西这片古老而充满希望的土地上&#xff0c;有一所特殊的学校——星贝育园康复中心&#xff0c;它如同一座灯塔&#xff0c;照亮了无数自闭症儿童及其家庭前行的道路。这所全国规模较大的广泛性发育障碍全托寄宿制儿童康复训练机构&#xff0c;不仅以其专业的康复训练和独特…...

JS模块化工具requirejs详解

文章目录 JS模块化工具requirejs详解一、引言二、RequireJS 简介1、什么是 RequireJS2、RequireJS 的优势 三、RequireJS 的使用1、配置 RequireJS1.1、基础配置 2、定义模块3、加载模块 四、总结 JS模块化工具requirejs详解 一、引言 随着前端技术的快速发展&#xff0c;Jav…...

JavaScript中的异步编程:从回调到Promise

在JavaScript中&#xff0c;异步编程是一项至关重要的技能&#xff0c;它允许我们在不阻塞主线程的情况下执行耗时操作&#xff0c;如网络请求、文件读取或定时任务。随着JavaScript的发展&#xff0c;异步编程的模式也在不断演进&#xff0c;从最初的回调函数&#xff0c;到现…...

windows下DockerDesktop命令行方式指定目录安装

windows下DockerDesktop指定目录安装(重新安装) 因为DcokerDesktop占用内存较大, 并且拉去镜像后占用本地空间较多,所以建议安装时就更改默认安装路径和镜像存储路径 这里,展示了从下载到安装的过程: 首先下载DcokerDesktop;找到Docker Desktop Installer.exe 并重命名为 do…...

排查和解决JVM OOM实战

JVM OOM介绍 Java内存区域布局 下面的分析中都是基于JDK 8开始的。关于JMM不过多介绍每个区域的作用。OOM不单只会发生在堆内存&#xff0c;也可能是因为元空间或直接内存泄漏导致OOM&#xff0c;此时在OOM的详细信息中会有不同体现。 Java OOM的类别 java.lang.OutOfMemory…...

【Swift官方文档】7.Swift集合类型

集合类型 使用数组、集合和字典来组织数据。Swift 提供了三种主要的集合类型&#xff1a;数组、集合和字典&#xff0c;用于存储值的集合。数组是有序的值集合。集合是无序的唯一值集合。字典是无序的键值对集合。 Swift 中的数组、集合和字典始终清晰地指明它们可以存储的值…...

QT调用最新的libusb库

一&#xff1a;下载libusb文件 下载最新的库的下载网站&#xff1a;https://libusb.info/ 下载&#xff1a; 解压后目录如下&#xff1a; 二&#xff1a;库文件添加QT中 根据自己的编译器选择库&#xff1a; ①将头文件中添加libusb.h ②源文件中添加libusb-1.0.lib ③添加…...

白嫖EarMaster Pro 7简体中文破解版下载永久激活

EarMaster Pro 7 简体中文破解版功能介绍 俗话说得好&#xff0c;想要成为音乐家&#xff0c;就必须先拥有音乐家的耳朵&#xff0c;相信很多小伙伴都已经具备了一定的音乐素养&#xff0c;或者是说想要进一步得到提升。那我们就必须练好听耳的能力&#xff0c;并且把这种能力…...

使用JavaScript写一个网页端的四则运算器

目录 style(内联样式表部分) body部分 html script 总的代码 网页演示 style(内联样式表部分) <style>body {font-family: Arial, sans-serif;display: flex;justify-content: center;align-items: center;height: 100vh;background-color: #f0f0f0;}.calculator {…...

Linux find命令详解及实用示例

Linux 系统中的 find 命令是一个功能强大的工具&#xff0c;用于在文件系统中搜索文件并执行相应的操作。无论是系统管理员还是普通用户&#xff0c;掌握 find 命令都能极大地提高工作效率。本文将详细介绍 find 命令的用法&#xff0c;并通过多个示例展示其在实际中的应用。 …...

CSS基础-常见属性(二)

6、CSS三大特性 6.1 层叠性 如果样式发生冲突&#xff0c;则按照优先级进行覆盖。 6.2 继承性 元素自动继承其父元素、祖先元素所设置的某些元素&#xff0c;优先继承较近的元素。 6.3 优先级 6.3.1 简单分级 1、内联样式2、ID选择器3、类选择器/属性选择器4、标签名选择器/…...

Spring Boot 2.4.3 + Java 8 升级为 Java 21 + Spring Boot 3.2.0

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 Spring Boot 2.4.3 + Java 8 升级为 Java 21 + Spring Boot 3.2.0前言更换 Java 21 SD…...

如何利用免费音频剪辑软件制作出精彩音频

现在有许多免费的音频剪辑软件可供选择&#xff0c;它们为广大用户提供了丰富的功能和便捷的操作体验&#xff0c;让音频编辑变得更加轻松和有趣。接下来&#xff0c;让我们一起走进这些免费音频剪辑软件的世界&#xff0c;探索它们的独特魅力和强大功能。 1.福昕音频剪辑 链…...

安宝特分享 | AR技术重塑工业:数字孪生与沉浸式培训的创新应用

在数字化转型的浪潮中&#xff0c;AR&#xff08;增强现实&#xff09;技术与工业的结合正在呈现新的趋势和应用延伸。特别是“数字孪生”概念的崛起&#xff0c;为AR技术在工业中提供了独特而创新的切入点。 本文将探索AR如何与数字孪生、沉浸式体验和实用案例相结合&#xf…...

专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结

目录 搜索 vs 深度优先遍历 vs 深度优先搜索 vs 宽度优先遍历 vs 宽度优先搜索 vs 暴搜 1.深度优先遍历 vs 深度优先搜索(dfs) 2.宽度优先遍历 vs 宽度优先搜索(bfs) 2.关系图暴力枚举一遍所有的情况 3.拓展搜索问题全排列 决策树 1. 计算布尔⼆叉树的值&#xff08;medi…...

基于springboot vue3 在线考试系统设计与实现 源码数据库 文档

博主介绍&#xff1a;专注于Java&#xff08;springboot ssm springcloud等开发框架&#xff09; vue .net php phython node.js uniapp小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设&#xff0c;从业十五余年开发设计教学工作☆☆☆ 精彩专栏推荐订阅☆☆☆☆…...

什么是 HTTP 请求中的 options 请求?

在 Chrome 开发者工具中的 Network 面板看到的 HTTP 方法 OPTIONS&#xff0c;其实是 HTTP 协议的一部分&#xff0c;用于客户端和服务器之间进行“预检”或“协商”。OPTIONS 请求的作用是让客户端能够获取关于服务器支持的 HTTP 方法和其他跨域资源共享 (CORS) 相关的信息&am…...

[图形学]smallpt代码详解(1)

一、简介 本文介绍了著名的99行代码实现全局光照的光线跟踪代码smallpt。 包括对smallpt的功能介绍、编译运行介绍&#xff0c;和对代码的详细解释。希望能够帮助读者更进一步的理解光线跟踪。 二、smallpt介绍 1.smallpt是什么 smallpt(small Path Tracing) 是一个全局光照…...

Vite多环境配置与打包:

环境变量必须以VITE开头 1.VITE_BASE_API&#xff1a; 在开发环境中设置为 /dev-api&#xff0c;这是一个本地 mock 地址&#xff0c;通常用于模拟后端接口。 2.VITE_ENABLE_ERUDA&#xff1a; 设置为 "true"&#xff0c;表示启用调试工具&#xff0c;通常是为了…...

git维护【.gitignore文件】

在工程下添加 .gitignore 文件【git忽略文件】 *.class .idea *.iml *.jar /*/target/...

【Canvas与色彩】十六等分多彩隔断圆环

【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>隔断圆环Draft5十六等分多彩</title><style type"text…...